From 4943e7b851cd29291b5e8f2f9d0e084b4deeffc0 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Fri, 27 Dec 2024 20:31:15 +0100 Subject: [PATCH 01/25] fix(deps): update dependency trpc-to-openapi to ^2.1.1 (#1788) * fix(deps): update dependency trpc-to-openapi to ^2.1.1 * fix(deps): missing dependency lodash.clonedeep in api package --------- Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> Co-authored-by: Meier Lukas --- packages/api/package.json | 3 ++- pnpm-lock.yaml | 37 ++++++++++++++----------------------- 2 files changed, 16 insertions(+), 24 deletions(-) diff --git a/packages/api/package.json b/packages/api/package.json index 372c84e24..1593a6df6 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -41,10 +41,11 @@ "@trpc/react-query": "next", "@trpc/server": "next", "dockerode": "^4.0.2", + "lodash.clonedeep": "^4.5.0", "next": "^14.2.22", "react": "^19.0.0", "superjson": "2.2.2", - "trpc-to-openapi": "^2.1.0" + "trpc-to-openapi": "^2.1.1" }, "devDependencies": { "@homarr/eslint-config": "workspace:^0.2.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 28a444b55..4740d3397 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -551,6 +551,9 @@ importers: dockerode: specifier: ^4.0.2 version: 4.0.2 + lodash.clonedeep: + specifier: ^4.5.0 + version: 4.5.0 next: specifier: ^14.2.22 version: 14.2.22(@babel/core@7.26.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(sass@1.83.0) @@ -561,8 +564,8 @@ importers: specifier: 2.2.2 version: 2.2.2 trpc-to-openapi: - specifier: ^2.1.0 - version: 2.1.0(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(zod-openapi@2.19.0(zod@3.24.1))(zod@3.24.1) + specifier: ^2.1.1 + version: 2.1.1(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(zod-openapi@2.19.0(zod@3.24.1))(zod@3.24.1) devDependencies: '@homarr/eslint-config': specifier: workspace:^0.2.0 @@ -7365,8 +7368,8 @@ packages: resolution: {integrity: sha512-dtyTFKx2xVcO0W8JKaluXIHC9l/MLjHeflBaWjiWNMCHp/TBs9dEjQDbj/VFlHR4omFOKjjmqm1pW1aCAhmPBg==} engines: {node: '>=12.20.0'} - openapi3-ts@4.3.3: - resolution: {integrity: sha512-LKkzBGJcZ6wdvkKGMoSvpK+0cbN5Xc3XuYkJskO+vjEQWJgs1kgtyUk0pjf8KwPuysv323Er62F5P17XQl96Qg==} + openapi3-ts@4.4.0: + resolution: {integrity: sha512-9asTNB9IkKEzWMcHmVZE7Ts3kC9G7AFHfs8i7caD8HbI76gEjdkId4z/AkP83xdZsH7PLAnnbl47qZkXuxpArw==} optionator@0.9.4: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} @@ -8287,10 +8290,6 @@ packages: resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} engines: {node: '>= 0.4'} - side-channel@1.0.6: - resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} - engines: {node: '>= 0.4'} - side-channel@1.1.0: resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} engines: {node: '>= 0.4'} @@ -8792,8 +8791,8 @@ packages: resolution: {integrity: sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==} engines: {node: '>= 14.0.0'} - trpc-to-openapi@2.1.0: - resolution: {integrity: sha512-LODbI2a9LQamLpEz9hsqeMJBxpNT8KqfyICJhTVe8JBPZM8DvUkoICPlsdHf1KJVteoem/LlbwkD7loKYPWP1Q==} + trpc-to-openapi@2.1.1: + resolution: {integrity: sha512-61VvDOSLHk7+vZnjswvD4yPThvCo+4ymZ2NbOqYQPbkbr5qRyyfVPdBV5YaJCUcCsIzxxgjq46DELxKYXlM6uA==} peerDependencies: '@trpc/server': ^11.0.0-rc.648 zod: ^3.23.8 @@ -14419,7 +14418,7 @@ snapshots: dependencies: es-errors: 1.3.0 hasown: 2.0.2 - side-channel: 1.0.6 + side-channel: 1.1.0 internal-slot@1.1.0: dependencies: @@ -15481,7 +15480,7 @@ snapshots: dependencies: apg-lite: 1.0.4 - openapi3-ts@4.3.3: + openapi3-ts@4.4.0: dependencies: yaml: 2.5.1 @@ -15963,7 +15962,7 @@ snapshots: qs@6.13.1: dependencies: - side-channel: 1.0.6 + side-channel: 1.1.0 querystringify@2.2.0: {} @@ -16589,13 +16588,6 @@ snapshots: object-inspect: 1.13.3 side-channel-map: 1.0.1 - side-channel@1.0.6: - dependencies: - call-bind: 1.0.7 - es-errors: 1.3.0 - get-intrinsic: 1.2.4 - object-inspect: 1.13.2 - side-channel@1.1.0: dependencies: es-errors: 1.3.0 @@ -17233,13 +17225,12 @@ snapshots: triple-beam@1.4.1: {} - trpc-to-openapi@2.1.0(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(zod-openapi@2.19.0(zod@3.24.1))(zod@3.24.1): + trpc-to-openapi@2.1.1(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(zod-openapi@2.19.0(zod@3.24.1))(zod@3.24.1): dependencies: '@trpc/server': 11.0.0-rc.666(typescript@5.7.2) co-body: 6.2.0 h3: 1.13.0 - lodash.clonedeep: 4.5.0 - openapi3-ts: 4.3.3 + openapi3-ts: 4.4.0 zod: 3.24.1 zod-openapi: 2.19.0(zod@3.24.1) optionalDependencies: From c91aae53acf27eab96a9150281f98a2156e9e2af Mon Sep 17 00:00:00 2001 From: Yossi Hillali Date: Fri, 27 Dec 2024 21:32:04 +0200 Subject: [PATCH 02/25] fix(health-monitoring): add months to uptime, fix status update (#1792) --- packages/translation/src/lang/en.json | 2 +- packages/widgets/src/health-monitoring/component.tsx | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/translation/src/lang/en.json b/packages/translation/src/lang/en.json index 516d0d5a5..734919e96 100644 --- a/packages/translation/src/lang/en.json +++ b/packages/translation/src/lang/en.json @@ -1381,7 +1381,7 @@ "memory": "Memory: {memory}GiB", "memoryAvailable": "Available: {memoryAvailable}GiB ({percent}%)", "version": "Version: {version}", - "uptime": "Uptime: {days} Days, {hours} Hours, {minutes} Minutes", + "uptime": "Uptime: {months} Months, {days} Days, {hours} Hours, {minutes} Minutes", "loadAverage": "Load average:", "minute": "1 minute", "minutes": "{count} minutes", diff --git a/packages/widgets/src/health-monitoring/component.tsx b/packages/widgets/src/health-monitoring/component.tsx index b150ca91f..d4a597f4f 100644 --- a/packages/widgets/src/health-monitoring/component.tsx +++ b/packages/widgets/src/health-monitoring/component.tsx @@ -66,7 +66,7 @@ export default function HealthMonitoringWidget({ options, integrationIds }: Widg } const newData = prevData.map((item) => item.integrationId === data.integrationId - ? { ...item, healthInfo: data.healthInfo, timestamp: data.timestamp } + ? { ...item, healthInfo: data.healthInfo, updatedAt: data.timestamp } : item, ); return newData; @@ -272,11 +272,12 @@ export default function HealthMonitoringWidget({ options, integrationIds }: Widg export const formatUptime = (uptimeInSeconds: number, t: TranslationFunction) => { const uptimeDuration = dayjs.duration(uptimeInSeconds, "seconds"); + const months = uptimeDuration.months(); const days = uptimeDuration.days(); const hours = uptimeDuration.hours(); const minutes = uptimeDuration.minutes(); - return t("widget.healthMonitoring.popover.uptime", { days, hours, minutes }); + return t("widget.healthMonitoring.popover.uptime", { months, days, hours, minutes }); }; export const progressColor = (percentage: number) => { From fcab6a347d0864ba0954fd1e113792e9c001b594 Mon Sep 17 00:00:00 2001 From: "homarr-crowdin[bot]" <190541745+homarr-crowdin[bot]@users.noreply.github.com> Date: Fri, 27 Dec 2024 19:43:44 +0000 Subject: [PATCH 03/25] chore(lang): updated translations from crowdin Co-authored-by: Crowdin Homarr <190541745+homarr-crowdin[bot]@users.noreply.github.com> --- packages/translation/src/lang/nl.json | 464 +++++++++++++------------- packages/translation/src/lang/tr.json | 148 ++++---- 2 files changed, 306 insertions(+), 306 deletions(-) diff --git a/packages/translation/src/lang/nl.json b/packages/translation/src/lang/nl.json index 2c5b20d10..89aa38b26 100644 --- a/packages/translation/src/lang/nl.json +++ b/packages/translation/src/lang/nl.json @@ -7,7 +7,7 @@ "description": "Selecteer om te beginnen hoe je je Homarr instantie wilt instellen.", "action": { "scratch": "Vanaf nul beginnen", - "importOldmarr": "Importeren uit Homarr voor 1.0" + "importOldmarr": "Importeren uit Homarr vóór 1.0" } }, "import": { @@ -15,7 +15,7 @@ "subtitle": "Je kunt gegevens importeren uit een bestaande Homarr instantie.", "dropzone": { "title": "Sleep het ZIP-bestand hierheen of klik om te bladeren", - "description": "De geüploade zip wordt verwerkt en je kunt selecteren wat je wilt importeren" + "description": "De geüploade ZIP wordt verwerkt en je kunt selecteren wat je wilt importeren" }, "fileInfo": { "action": { @@ -30,7 +30,7 @@ "title": "{count} borden gevonden", "description": "Kies alle borden met hun grootte die je wilt importeren", "action": { - "selectAll": "Selecteer alles", + "selectAll": "Alles selecteren", "unselectAll": "Alles deselecteren" } }, @@ -41,18 +41,18 @@ "import": "Import bevestigen en doorgaan" }, "entities": { - "apps": "", + "apps": "Apps", "boards": "Borden", "integrations": "Integraties", "credentialUsers": "Inloggegevens gebruikers" } }, "tokenModal": { - "title": "Voer importeertoken in", + "title": "Importeertoken invoeren", "field": { "token": { "label": "Penning", - "description": "Voer het getoonde importtoken van je vorige Homarr instantie in" + "description": "Voer het getoonde importeertoken van je vorige Homarr instantie in" } }, "notification": { @@ -136,8 +136,8 @@ "length": "Bevat ten minste 8 tekens", "lowercase": "Inclusief kleine letter", "uppercase": "Inclusief hoofdletter", - "number": "Inclusief aantal", - "special": "Inclusief speciaal symbool" + "number": "Inclusief getal", + "special": "Inclusief speciaal teken" } }, "passwordConfirm": { @@ -147,7 +147,7 @@ "label": "Vorig wachtwoord" }, "homeBoard": { - "label": "Home bord" + "label": "Home-bord" }, "pingIconsEnabled": { "label": "Gebruik iconen voor pings" @@ -242,7 +242,7 @@ }, "toLarge": { "title": "Afbeelding is te groot", - "message": "Max. afbeeldingsgrootte is {size}" + "message": "Maximale afbeeldingsgrootte is {size}" } } }, @@ -262,7 +262,7 @@ "editProfile": { "notification": { "success": { - "message": "Profiel is bijgewerkt" + "message": "Profiel succesvol bijgewerkt" }, "error": { "message": "Kan profiel niet bijwerken" @@ -275,11 +275,11 @@ "confirm": "Weet je zeker dat je de gebruiker {username} met zijn voorkeuren wilt verwijderen?" }, "select": { - "label": "Selecteer gebruiker", + "label": "Gebruiker selecteren", "notFound": "Geen gebruiker gevonden" }, "transfer": { - "label": "Selecteer nieuwe eigenaar" + "label": "Nieuwe eigenaar selecteren" } } }, @@ -302,7 +302,7 @@ } }, "app": { - "title": "", + "title": "Apps", "item": { "create": { "label": "Apps aanmaken", @@ -310,11 +310,11 @@ }, "use-all": { "label": "Alle apps gebruiken", - "description": "Leden toestaan om apps aan hun borden toe te voegen" + "description": "Laat leden apps aan hun borden toevoegen" }, "modify-all": { - "label": "Alle apps wijzigen", - "description": "Leden toestaan om alle apps aan te passen" + "label": "Alle apps aanpassen", + "description": "Laat leden alle apps aanpassen" }, "full-all": { "label": "Volledige app-toegang", @@ -331,15 +331,15 @@ }, "view-all": { "label": "Alle borden bekijken", - "description": "Leden toestaan alle borden te bekijken" + "description": "Laat leden alle borden bekijken" }, "modify-all": { - "label": "Alle borden wijzigen", - "description": "Leden toestaan alle borden te wijzigen (bevat geen toegangscontrole en gevarenzone)" + "label": "Alle borden aanpassen", + "description": "Laat leden alle borden wijzigen (exclusief toegangscontrole en gevarenzone)" }, "full-all": { "label": "Toegang aan bord", - "description": "Leden alle borden laten bekijken, wijzigen en verwijderen (inclusief toegangscontrole en gevarenzone)" + "description": "Laat leden alle borden bekijken, wijzigen en verwijderen (inclusief toegangscontrole en gevarenzone)" } } }, @@ -348,19 +348,19 @@ "item": { "create": { "label": "Integraties aanmaken", - "description": "Leden toestaan om integraties aan te maken" + "description": "Laat leden integraties aanmaken" }, "use-all": { "label": "Alle integraties gebruiken", - "description": "Leden kunnen integraties toevoegen aan hun borden" + "description": "Geeft leden de mogelijkheid om integraties toe te voegen aan hun borden" }, "interact-all": { "label": "Interactie met elke integratie", - "description": "Leden toestaan om te communiceren met elke integratie" + "description": "Laat leden communiceren met elke integratie" }, "full-all": { "label": "Volledige integratietoegang", - "description": "Geef leden de mogelijkheid om elke integratie te beheren, te gebruiken en ermee te interageren" + "description": "Laat leden elke integratie te beheren, gebruiken en ermee werken" } } }, @@ -369,7 +369,7 @@ "item": { "upload": { "label": "Media uploaden", - "description": "Leden toestaan om media te uploaden" + "description": "Laat leden media uploaden" }, "view-all": { "label": "Alle media bekijken", @@ -386,7 +386,7 @@ "item": { "view-logs": { "label": "Logs bekijken", - "description": "Leden toestaan om logs te bekijken" + "description": "Laat leden logs bekijken" } } }, @@ -399,7 +399,7 @@ }, "modify-all": { "label": "Alle zoekmachines aanpassen", - "description": "Leden toestaan om alle zoekmachines aan te passen" + "description": "Laat leden alle zoekmachines aanpassen" }, "full-all": { "label": "Volledige zoekmachinetoegang", @@ -449,14 +449,14 @@ }, "delete": { "label": "Groep verwijderen", - "description": "Als je eenmaal een groep hebt verwijderd, is er geen weg meer terug. Wees er zeker van.", + "description": "Als je eenmaal een groep hebt verwijderd, kun je niet meer terug. Wees er zeker van.", "confirm": "Weet je zeker dat je de groep {name} wilt verwijderen?", "notification": { "success": { "message": "Groep {name} succesvol verwijderd" }, "error": { - "message": "Kan groep niet verwijderen {name}" + "message": "Kan groep {name} niet verwijderen" } } }, @@ -478,7 +478,7 @@ "message": "De groep {name} is succesvol opgeslagen" }, "error": { - "message": "Kan groep niet opslaan {name}" + "message": "Kan groep {name} niet opslaan" } } }, @@ -491,7 +491,7 @@ "app": { "page": { "list": { - "title": "", + "title": "Apps", "noResults": { "title": "Er zijn nog geen apps", "action": "Je eerste app aanmaken" @@ -551,7 +551,7 @@ }, "action": { "select": { - "label": "Selecteer app", + "label": "App selecteren", "notFound": "Geen app gevonden" } } @@ -622,7 +622,7 @@ "create": "Verbinding testen en aanmaken", "edit": "Verbinding testen en opslaan" }, - "alertNotice": "De knop Opslaan wordt ingeschakeld zodra er een succesvolle verbinding tot stand is gebracht", + "alertNotice": "De opslaan knop wordt ingeschakeld zodra er een succesvolle verbinding tot stand is gebracht", "notification": { "success": { "title": "Verbinding geslaagd", @@ -645,8 +645,8 @@ "message": "De verbinding kon niet tot stand worden gebracht" }, "badRequest": { - "title": "", - "message": "Het verzoek was misvormd" + "title": "Bad request", + "message": "De aanvraag was onjuist" }, "unauthorized": { "title": "Niet-geautoriseerd", @@ -658,10 +658,10 @@ }, "notFound": { "title": "Niet gevonden", - "message": "Waarschijnlijk verkeerde URL of verkeerd pad" + "message": "Waarschijnlijk verkeerde URL of pad" }, "internalServerError": { - "title": "Interne server error", + "title": "Interne serverfout", "message": "Er is een fout opgetreden bij de server" }, "serviceUnavailable": { @@ -722,7 +722,7 @@ } }, "permission": { - "use": "Selecteer integraties in items", + "use": "Integraties selecteren in items", "interact": "Interactie met integraties", "full": "Volledige integratietoegang" } @@ -761,12 +761,12 @@ } }, "copy": { - "label": "Kopieer URL" + "label": "URL kopiëren" } } }, "common": { - "beta": "", + "beta": "Beta", "error": "Fout", "action": { "add": "Toevoegen", @@ -787,14 +787,14 @@ "previous": "Vorige", "next": "Volgende", "checkoutDocs": "De documentatie bekijken", - "checkLogs": "Controleer logboeken voor meer details", - "tryAgain": "Probeer het opnieuw", + "checkLogs": "Controleer logs voor meer details", + "tryAgain": "Probeer opnieuw", "loading": "Laden" }, "here": "hier", "iconPicker": { - "label": "Icoon URL", - "header": "Typ naam of objecten om te filteren op pictogrammen... Homarr doorzoekt {countIcons} pictogrammen voor je." + "label": "Icoon-URL", + "header": "Typ naam of objecten om te filteren op iconen… Homarr doorzoekt {countIcons} iconen voor je." }, "colorScheme": { "options": { @@ -828,7 +828,7 @@ } }, "multiSelect": { - "placeholder": "Kies een of meer waarden" + "placeholder": "Kies één of meer waarden" }, "multiText": { "placeholder": "Meer waarden toevoegen", @@ -865,12 +865,12 @@ "required": "Dit veld is verplicht", "string": { "startsWith": "Dit veld moet beginnen met {startsWith}", - "endsWith": "Dit veld moet eindigen op {endsWith}", + "endsWith": "Dit veld moet eindigen met {endsWith}", "includes": "Dit veld moet {includes} bevatten.", "invalidEmail": "Dit veld moet een geldig e-mailadres zijn" }, "tooSmall": { - "string": "Dit veld moet minstens {minimum} tekens lang zijn", + "string": "Dit veld moet minimaal {minimum} tekens lang zijn", "number": "Dit veld moet groter of gelijk zijn aan {minimum}" }, "tooBig": { @@ -881,10 +881,10 @@ "passwordsDoNotMatch": "Wachtwoorden komen niet overeen", "passwordRequirements": "Wachtwoord voldoet niet aan de eisen", "boardAlreadyExists": "Er bestaat al een bord met deze naam", - "invalidFileType": "Ongeldig bestandstype, verwacht {expected}", + "invalidFileType": "Ongeldig bestandstype, verwachtte {expected}", "fileTooLarge": "Bestand is te groot, maximale grootte is {maxSize}", "invalidConfiguration": "Ongeldige configuratie", - "groupNameTaken": "Groepsnaam al bezet" + "groupNameTaken": "Groepsnaam al in gebruik" } } } @@ -893,10 +893,10 @@ "dynamic": { "action": { "create": "Nieuwe dynamische sectie", - "remove": "Dynamisch gedeelte verwijderen" + "remove": "Dynamische sectie verwijderen" }, "remove": { - "title": "Dynamisch gedeelte verwijderen", + "title": "Dynamische sectie verwijderen", "message": "Weet je zeker dat je deze dynamische sectie wilt verwijderen? Items worden verplaatst naar dezelfde locatie in de bovenliggende sectie." } }, @@ -941,7 +941,7 @@ "import": "Item importeren", "edit": "Item bewerken", "moveResize": "Item verplaatsen / formaat wijzigen", - "duplicate": "Duplicaat item", + "duplicate": "Item dupliceren", "remove": "Item verwijderen" }, "menu": { @@ -963,10 +963,10 @@ "label": "Hoogte" }, "xOffset": { - "label": "" + "label": "X offset" }, "yOffset": { - "label": "" + "label": "Y offset" } } }, @@ -992,20 +992,20 @@ }, "widget": { "app": { - "name": "", - "description": "Sluit een app in op het bord.", + "name": "App", + "description": "Een app insluiten op het bord.", "option": { "appId": { "label": "App kiezen" }, "openInNewTab": { - "label": "Open in nieuw tabblad" + "label": "In nieuw tabblad openen" }, "showTitle": { - "label": "Toon app naam" + "label": "App naam weergeven" }, "showDescriptionTooltip": { - "label": "Toon beschrijving tooltip" + "label": "Beschrijving tooltip weergeven" }, "pingEnabled": { "label": "Eenvoudige ping inschakelen" @@ -1020,13 +1020,13 @@ }, "bookmarks": { "name": "Bladwijzers", - "description": "Meerdere app-links weergeven", + "description": "Toont meerdere app-links", "option": { "title": { "label": "Titel" }, "layout": { - "label": "Indeling", + "label": "Lay-out", "option": { "row": { "label": "Horizontaal" @@ -1046,11 +1046,11 @@ } }, "dnsHoleSummary": { - "name": "DNS-hole samenvatting", - "description": "Geeft de samenvatting van je DNS-gat weer", + "name": "DNS-hole overzicht", + "description": "Toont het overzicht van je DNS-hole", "option": { "layout": { - "label": "Indeling", + "label": "Lay-out", "option": { "row": { "label": "Horizontaal" @@ -1068,14 +1068,14 @@ } }, "error": { - "internalServerError": "DNS-gatenoverzicht niet opgehaald", + "internalServerError": "DNS-hole overzicht ophalen mislukt", "integrationsDisconnected": "Geen gegevens beschikbaar, alle integraties verbroken" }, "data": { "adsBlockedToday": "Vandaag geblokkeerd", "adsBlockedTodayPercentage": "Vandaag geblokkeerd", - "dnsQueriesToday": "Queries vandaag", - "domainsBeingBlocked": "Domeinen op de blokkadelijst" + "dnsQueriesToday": "Aanvragen vandaag", + "domainsBeingBlocked": "Domeinen op blokkadelijst" } }, "dnsHoleControls": { @@ -1083,7 +1083,7 @@ "description": "Bedien PiHole of AdGuard vanaf je dashboard", "option": { "layout": { - "label": "Indeling", + "label": "Lay-out", "option": { "row": { "label": "Horizontaal" @@ -1101,7 +1101,7 @@ } }, "error": { - "internalServerError": "Besturen DNS hole mislukt" + "internalServerError": "DNS-hole besturen mislukt" }, "controls": { "enableAll": "Alles inschakelen", @@ -1114,7 +1114,7 @@ "disconnected": "Verbinding verbroken", "hours": "Uren", "minutes": "Minuten", - "unlimited": "Laat leeg tot onbeperkt" + "unlimited": "Laat leeg voor onbeperkt" } }, "clock": { @@ -1123,13 +1123,13 @@ "option": { "customTitleToggle": { "label": "Aangepaste titel-/plaatsweergave", - "description": "Pronk met een aangepaste titel of de naam van de stad/het land bovenop de klok." + "description": "Aangepaste titel of de naam van de stad/het land boven de klok weergeven." }, "customTitle": { "label": "Titel" }, "is24HourFormat": { - "label": "24-uurs formaat", + "label": "24-uursnotatie", "description": "Gebruik de 24-uursnotatie in plaats van de 12-uursnotatie" }, "showSeconds": { @@ -1143,10 +1143,10 @@ "description": "Kies de tijdzone volgens de IANA-standaard" }, "showDate": { - "label": "Toon de datum" + "label": "De datum weergeven" }, "dateFormat": { - "label": "Datum formaat", + "label": "Datumnotatie", "description": "Hoe de datum eruit moet zien" } } @@ -1156,7 +1156,7 @@ "description": "Een eenvoudige notitie widget die markdown ondersteunt", "option": { "showToolbar": { - "label": "Toon de werkbalk om je te helpen markdown te schrijven" + "label": "De werkbalk weergeven om je te helpen markdown te schrijven" }, "allowReadOnlyCheck": { "label": "Controle in alleen-lezen modus toestaan" @@ -1170,28 +1170,28 @@ "italic": "Schuingedrukt", "strikethrough": "Doorgestreept", "underline": "Onderstreept", - "colorText": "Kleur tekst", + "colorText": "Tekstkleur", "colorHighlight": "Gekleurde tekst markeren", - "code": "", + "code": "Code", "clear": "Opmaak wissen", "heading": "Koptekst {level}", "align": "Tekst uitlijnen: {position}", "blockquote": "Blokquote", "horizontalLine": "Horizontale lijn", "bulletList": "Opsommingslijst", - "orderedList": "Geordende lijst", + "orderedList": "Gerangschikte lijst", "checkList": "Controlelijst", - "increaseIndent": "Inspringen vergroten", + "increaseIndent": "Inspringing vergroten", "decreaseIndent": "Inspringen verminderen", - "link": "", + "link": "Link", "unlink": "Link verwijderen", "image": "Afbeelding insluiten", "addTable": "Tabel toevoegen", "deleteTable": "Tabel verwijderen", - "colorCell": "Kleur cel", - "mergeCell": "Cellen samenvoegen togglen", - "addColumnLeft": "Kolom toevoegen vóór", - "addColumnRight": "Kolom toevoegen ná", + "colorCell": "Celkleur", + "mergeCell": "Cellen samenvoegen schakelen", + "addColumnLeft": "Kolom ervoor toevoegen", + "addColumnRight": "Kolom erna toevoegen", "deleteColumn": "Kolom verwijderen", "addRowTop": "Rij toevoegen vóór", "addRowBelow": "Rij toevoegen ná", @@ -1213,8 +1213,8 @@ } }, "iframe": { - "name": "", - "description": "Insluiten van alle inhoud van het internet. Sommige websites kunnen de toegang beperken.", + "name": "iFrame", + "description": "Elke inhoud van het internet insluiten. Sommige websites kunnen de toegang beperken.", "option": { "embedUrl": { "label": "URL insluiten" @@ -1251,16 +1251,16 @@ }, "smartHome-entityState": { "name": "Entiteitsstatus", - "description": "De status van een entiteit weergeven en optioneel omschakelen", + "description": "Status van een entiteit weergeven en optioneel omschakelen", "option": { "entityId": { - "label": "Entiteit-ID" + "label": "Entiteits-ID" }, "displayName": { "label": "Weergavenaam" }, "entityUnit": { - "label": "Entiteit-eenheid" + "label": "Entiteitseenheid" }, "clickable": { "label": "Klikbaar" @@ -1279,7 +1279,7 @@ } }, "spotlightAction": { - "run": "Uitvoeren {name}" + "run": "{name} uitvoeren" } }, "calendar": { @@ -1287,7 +1287,7 @@ "description": "Gebeurtenissen van je integraties weergeven in een kalenderweergave binnen een bepaalde relatieve tijdsperiode", "option": { "releaseType": { - "label": "Radarr vrijgavetype", + "label": "Radarr uitgavetype", "options": { "inCinemas": "In bioscopen", "digitalRelease": "Digitale uitgave", @@ -1310,7 +1310,7 @@ "label": "Temperatuur in fahrenheit" }, "location": { - "label": "Weerslocatie" + "label": "Weerlocatie" }, "showCity": { "label": "Stad weergeven" @@ -1323,12 +1323,12 @@ "description": "Als de widget niet breed genoeg is, worden er minder dagen getoond" }, "dateFormat": { - "label": "Datum formaat", + "label": "Datumnotatie", "description": "Hoe de datum eruit moet zien" } }, "kind": { - "clear": "Helder", + "clear": "Wissen", "mainlyClear": "Overwegend helder", "fog": "Mist", "drizzle": "Motregen", @@ -1345,14 +1345,14 @@ } }, "indexerManager": { - "name": "Indexeer beheerder status", + "name": "Indexeringsbeheerder status", "description": "Status van je indexers", "option": { "openIndexerSiteInNewTab": { "label": "Indexersite in nieuw tabblad openen" } }, - "title": "Indexeer beheerder", + "title": "Indexeringsbeheerder", "testAll": "Alles testen", "error": { "internalServerError": "Indexersstatus ophalen mislukt" @@ -1377,7 +1377,7 @@ }, "popover": { "information": "Informatie", - "processor": "", + "processor": "Processor: {cpuModelName}", "memory": "Geheugen: {memory}GiB", "memoryAvailable": "Beschikbaar: {memoryAvailable}GiB ({percent}%)", "version": "Versie: {version}", @@ -1410,7 +1410,7 @@ "population": "Populatie" }, "action": { - "select": "Selecteer {city}, {countryCode}" + "select": "{city}, {countryCode} selecteren" }, "population": { "fallback": "Onbekend" @@ -1419,11 +1419,11 @@ }, "integration": { "noData": "Geen integratie gevonden", - "description": "Klik op om een nieuwe integratie aan te maken" + "description": "Klik om een nieuwe integratie aan te maken" }, "app": { "noData": "Geen app gevonden", - "description": "Klik op om een nieuwe app aan te maken" + "description": "Klik om een nieuwe app aan te maken" }, "error": { "noIntegration": "Geen integratie geselecteerd", @@ -1433,20 +1433,20 @@ }, "video": { "name": "Video stream", - "description": "Een videostream of video van een camera of een website insluiten", + "description": "Een videostream of video van een camera of website insluiten", "option": { "feedUrl": { - "label": "" + "label": "Feed-URL" }, "hasAutoPlay": { "label": "Automatisch afspelen", - "description": "Autoplay werkt alleen als het gedempt is vanwege browserbeperkingen" + "description": "Automatisch afspelen werkt alleen als het gedempt is vanwege browserbeperkingen" }, "isMuted": { "label": "Gedempt" }, "hasControls": { - "label": "Toon besturingen" + "label": "Besturingen weergeven" } }, "error": { @@ -1456,12 +1456,12 @@ }, "mediaServer": { "name": "Huidige mediaserver streams", - "description": "Toon de huidige streams op je mediaservers", + "description": "De huidige streams op je mediaservers weergeven", "option": {} }, "downloads": { "name": "Client downloaden", - "description": "Hiermee kun je je Downloads van zowel Torrent- als Usenet-clients bekijken en beheren.", + "description": "Geeft je de mogelijkheid om downloads van torrent- en usenet-clients te bekijken en beheren.", "option": { "columns": { "label": "Kolommen om te laten zien" @@ -1476,13 +1476,13 @@ "label": "Sorteren omkeren" }, "showCompletedUsenet": { - "label": "Toon usenet items gemarkeerd als voltooid" + "label": "Usenet-items weergeven die zijn gemarkeerd als voltooid" }, "showCompletedTorrent": { - "label": "Toon torrentvermeldingen die zijn gemarkeerd als voltooid" + "label": "Torrentvermeldingen weergeven die zijn gemarkeerd als voltooid" }, "activeTorrentThreshold": { - "label": "Verberg voltooide torrent onder deze drempel (in kiB/s)" + "label": "Voltooide torrent verbergen onder deze drempel (in kiB/s)" }, "categoryFilter": { "label": "Categorieën/labels om te filteren" @@ -1491,11 +1491,11 @@ "label": "Filteren als witte lijst" }, "applyFilterToRatio": { - "label": "Gebruik filter om Ratio te berekenen" + "label": "Gebruik filter om ratio te berekenen" } }, "errors": { - "noColumns": "Kolommen selecteren in Items", + "noColumns": "Kolommen selecteren in items", "noCommunications": "Kan geen gegevens laden van integratie" }, "items": { @@ -1515,7 +1515,7 @@ "detailsTitle": "Downloadsnelheid" }, "index": { - "columnTitle": "", + "columnTitle": "#", "detailsTitle": "Huidige index binnen client" }, "id": { @@ -1529,11 +1529,11 @@ }, "progress": { "columnTitle": "Voortgang", - "detailsTitle": "Download-vooruitgang" + "detailsTitle": "Downloadvoortgang" }, "ratio": { "columnTitle": "Verhouding", - "detailsTitle": "Torrentratio (ontvangen/verzonden)" + "detailsTitle": "Torrent ratio (ontvangen/verzonden)" }, "received": { "columnTitle": "Totaal down", @@ -1552,11 +1552,11 @@ "detailsTitle": "Taakstatus" }, "time": { - "columnTitle": "Voltooiingstijd", + "columnTitle": "Eindtijd", "detailsTitle": "Tijd sinds/tot voltooiing" }, "type": { - "columnTitle": "", + "columnTitle": "Type", "detailsTitle": "Client type downloaden" }, "upSpeed": { @@ -1565,16 +1565,16 @@ } }, "states": { - "downloading": "Bezig met downloaden", + "downloading": "Downloaden", "queued": "In wachtrij", "paused": "Gepauzeerd", "completed": "Voltooid", "failed": "Mislukt", "processing": "Verwerken", - "leeching": "", + "leeching": "Leeching", "stalled": "Stilgevallen", "unknown": "Onbekend", - "seeding": "" + "seeding": "Seeding" }, "actions": { "clients": { @@ -1600,16 +1600,16 @@ "globalRatio": "Globale verhouding" }, "mediaRequests-requestList": { - "name": "Mediaverzoeken-lijst", - "description": "Bekijk een lijst met alle mediaverzoeken van je Overseerr of Jellyseerr instantie", + "name": "Media-aanvragen lijst", + "description": "Bekijk een lijst met alle media-aanvragen van je Overseerr of Jellyseerr instantie", "option": { "linksTargetNewTab": { "label": "Links in nieuw tabblad openen" } }, "pending": { - "approve": "Verzoek goedkeuren", - "approving": "Bezig met verzoek goedkeuren…", + "approve": "Aanvraag goedkeuren", + "approving": "Aanvraag goedkeuren…", "decline": "Aanvraag weigeren" }, "availability": { @@ -1619,32 +1619,32 @@ "partiallyAvailable": "Gedeeltelijk", "available": "Beschikbaar" }, - "toBeDetermined": "" + "toBeDetermined": "TBD" }, "mediaRequests-requestStats": { - "name": "Mediaverzoeken statistieken", - "description": "Statistieken over je mediaverzoeken", + "name": "Media-aanvragen statistieken", + "description": "Statistieken over je media-aanvragen", "option": {}, "titles": { "stats": { - "main": "Media statistieken", + "main": "Mediastatistieken", "approved": "Reeds goedgekeurd", "pending": "In afwachting van goedkeuring", "processing": "Wordt verwerkt", "declined": "Reeds geweigerd", - "available": "Al beschikbaar", - "tv": "TV verzoeken", - "movie": "Film verzoeken", + "available": "Reeds beschikbaar", + "tv": "TV aanvragen", + "movie": "Film aanvragen", "total": "Totaal" }, "users": { "main": "Grootste gebruikers", - "requests": "Verzoeken" + "requests": "Aanvragen" } } }, "mediaTranscoding": { - "name": "Media transcodering", + "name": "Mediatranscodering", "description": "Statistieken, huidige wachtrij en worker-status van je media transcodering", "option": { "defaultView": { @@ -1655,7 +1655,7 @@ } }, "tab": { - "workers": "", + "workers": "Workers", "queue": "Wachtrij", "statistics": "Statistieken" }, @@ -1665,27 +1665,27 @@ "queued": "In wachtrij", "status": { "healthy": "Gezond", - "unhealthy": "Ongezond" + "unhealthy": "Niet-gezond" } }, "panel": { "statistics": { "empty": "Leeg", - "transcodes": "", - "transcodesCount": "", + "transcodes": "Transcodes", + "transcodesCount": "Transcodes: {value}", "healthChecksCount": "Gezondheidscontroles: {value}", "filesCount": "Bestanden: {value}", "savedSpace": "Bespaarde ruimte: {value}", "healthChecks": "Gezondheidscontroles", - "videoCodecs": "", - "videoContainers": "", + "videoCodecs": "Codecs", + "videoContainers": "Containers", "videoResolutions": "Resoluties" }, "workers": { "empty": "Leeg", "table": { "file": "Bestand", - "eta": "", + "eta": "ETA", "progress": "Voortgang", "transcode": "Transcoderen", "healthCheck": "Gezondheidscontrole" @@ -1704,13 +1704,13 @@ }, "rssFeed": { "name": "RSS-feeds", - "description": "Een of meer algemene RSS-, ATOM- of JSON-feeds bewaken en weergeven", + "description": "Eén of meer algemene RSS-, ATOM- of JSON-feeds monitoren en weergeven", "option": { "feedUrls": { "label": "Feed URL's" }, "enableRtl": { - "label": "Inschakelen RTL" + "label": "RTL inschakelen" }, "textLinesClamp": { "label": "Beschrijving regel-clamp" @@ -1740,16 +1740,16 @@ }, "error": { "title": "Kan wijzigingen niet toepassen", - "message": "Het bord kon niet worden gered" + "message": "Het bord kon niet worden opgeslagen" } }, "confirmLeave": { "title": "Niet-opgeslagen wijzigingen", - "message": "Je hebt niet-opgeslagen veranderingen, weet je zeker dat je weg wilt?" + "message": "Je hebt niet-opgeslagen wijzigingen, weet je zeker dat je weg wilt?" } }, "oldImport": { - "label": "Importeren uit Homarr voor 1.0.0", + "label": "Importeren uit Homarr vóór 1.0.0", "notification": { "success": { "title": "Succesvol geimporteerd", @@ -1757,16 +1757,16 @@ }, "error": { "title": "Importeren mislukt", - "message": "Het bord kon niet worden geïmporteerd, controleer de logboeken voor meer informatie" + "message": "Het bord kon niet worden geïmporteerd, controleer de logs voor meer informatie" } }, "form": { "file": { - "label": "Selecteer JSON-bestand", + "label": "JSON-bestand selecteren", "invalidError": "Ongeldig configuratiebestand" }, "apps": { - "label": "", + "label": "Apps", "avoidDuplicates": { "label": "Duplicaten vermijden", "description": "Negeert apps waar al een app met dezelfde href bestaat" @@ -1780,11 +1780,11 @@ "label": "Bord naam" }, "screenSize": { - "label": "Schermformaat", - "description": "In versies voor 1.0 bestonden drie verschillende modi, zodat je het aantal kolommen voor elke schermgrootte kon kiezen.", + "label": "Schermgrootte", + "description": "In versies vóór 1.0 bestonden drie verschillende modi, zodat je het aantal kolommen voor elke schermgrootte kon kiezen.", "option": { "sm": "Klein", - "md": "Middel", + "md": "Gemiddeld", "lg": "Groot" } }, @@ -1797,7 +1797,7 @@ "description": "De zijbalk wordt onder de laatste sectie weergegeven" }, "removeItems": { - "label": "Items toevoegen of verwijderen", + "label": "Items verwijderen", "description": "Items in de zijbalk worden verwijderd" } } @@ -1813,10 +1813,10 @@ "label": "Meta titel" }, "logoImageUrl": { - "label": "Logo afbeelding URL" + "label": "Logo afbeeldings-URL" }, "faviconImageUrl": { - "label": "Favicon afbeelding URL" + "label": "Favicon afbeeldings-URL" }, "backgroundImageUrl": { "label": "Achtergrondafbeelding URL" @@ -1830,7 +1830,7 @@ }, "scroll": { "label": "Scrollen", - "description": "De achtergrond scrolt met je muis." + "description": "Achtergrond scrolt met je muis." } } }, @@ -1839,19 +1839,19 @@ "option": { "repeat": { "label": "Herhalen", - "description": "Herhalen - De afbeelding wordt zoveel herhaald als nodig is om het hele achtergrondafbeelding gebied te bedekken." + "description": "De afbeelding wordt zoveel herhaald als nodig is om het hele achtergrondafbeelding gebied te bedekken." }, "no-repeat": { "label": "Niet herhalen", - "description": "De afbeelding wordt niet herhaald en mag niet de hele ruimte vullen." + "description": "De afbeelding wordt niet herhaald en vult mogelijk niet de hele ruimte." }, "repeat-x": { - "label": "Herhaal X", - "description": "Hetzelfde als 'Herhaal', maar alleen op de horizontale as." + "label": "X herhalen", + "description": "Hetzelfde als ‘herhaal', maar alleen op de horizontale as." }, "repeat-y": { - "label": "Herhaal Y", - "description": "Hetzelfde als 'Herhaal', maar alleen op de verticale as." + "label": "Y herhalen", + "description": "Hetzelfde als ‘herhaal', maar alleen op de verticale as." } } }, @@ -1864,7 +1864,7 @@ }, "contain": { "label": "Insluiten", - "description": "Bevatten - Schaalt de afbeelding zo groot mogelijk binnen de container zonder de afbeelding bij te snijden of uit te rekken." + "description": "Schaalt de afbeelding zo groot mogelijk binnen de container zonder de afbeelding bij te snijden of uit te rekken." } } }, @@ -1882,7 +1882,7 @@ "description": "Pas je dashboard verder aan met behulp van CSS, alleen aanbevolen voor ervaren gebruikers", "customClassesAlert": { "title": "Aangepaste classes", - "description": "Je kunt aangepaste klassen toevoegen aan je borditems in de geavanceerde opties van elk item en ze gebruiken in de aangepaste CSS hierboven." + "description": "Je kunt aangepaste classes toevoegen aan je borditems in de geavanceerde opties van elk item en ze gebruiken in de aangepaste CSS hierboven." } }, "columnCount": { @@ -1907,7 +1907,7 @@ "unrecognizedLink": "De opgegeven link wordt niet herkend en geeft geen voorbeeld, maar werkt misschien nog wel." }, "layout": { - "title": "Indeling" + "title": "Lay-out" }, "background": { "title": "Achtergrond" @@ -1953,22 +1953,22 @@ }, "button": { "public": "Privé maken", - "private": "Maak openbaar" + "private": "Openbaar maken" }, "confirm": { "public": { - "title": "Bestuur privé maken", + "title": "Bord privé maken", "description": "Weet je zeker dat je dit bord privé wilt maken? Dit verbergt het bord voor het publiek. Links voor gastgebruikers worden verbroken." }, "private": { - "title": "Bestuur openbaar maken", + "title": "Bord openbaar maken", "description": "Weet je zeker dat je dit bord openbaar wilt maken? Dit maakt het bord toegankelijk voor iedereen." } } }, "delete": { "label": "Dit bord verwijderen", - "description": "Als je een bord hebt verwijderd, kun je niet meer terug. Wees er zeker van.", + "description": "Als je eenmaal een bord hebt verwijderd, kun je niet meer terug. Wees er zeker van.", "button": "Dit bord verwijderen", "confirm": { "title": "Bord verwijderen", @@ -1987,7 +1987,7 @@ "notice": "Om deze pagina te laten verdwijnen, maak je een bord aan en stel je het in als home-bord" }, "notFound": { - "title": "Raad van bestuur niet gevonden", + "title": "Bord niet gevonden", "description": "Het opgegeven bord is niet gevonden of je hebt er geen toegang toe.", "link": "Alle borden bekijken", "notice": "Controleer de link of neem contact op met een beheerder als je denkt dat deze toegankelijk moet zijn" @@ -2021,13 +2021,13 @@ }, "notFound": { "title": "Niet gevonden", - "text": "Kon de gevraagde bron niet vinden" + "text": "Kon de aangevraagde bron niet vinden" }, "navbar": { "items": { - "home": "", + "home": "Home", "boards": "Borden", - "apps": "", + "apps": "Apps", "integrations": "Integraties", "searchEngies": "Zoekmachines", "medias": "Media", @@ -2042,19 +2042,19 @@ "tools": { "label": "Gereedschappen", "items": { - "docker": "", - "logs": "", - "api": "", + "docker": "Docker", + "logs": "Logs", + "api": "API", "tasks": "Taken" } }, "settings": "Instellingen", "help": { - "label": "", + "label": "Help", "items": { "documentation": "Documentatie", "submitIssue": "Een probleem melden", - "discord": "", + "discord": "Community Discord", "sourceCode": "Broncode" } }, @@ -2068,7 +2068,7 @@ "user": "Gebruikers", "invite": "Uitnodigingen", "integration": "Integraties", - "app": "", + "app": "Apps", "group": "Groepen" }, "statisticLabel": { @@ -2093,7 +2093,7 @@ "setHomeBoard": { "label": "Instellen als je home-bord", "badge": { - "label": "", + "label": "Home", "tooltip": "Dit bord wordt weergegeven als je home-bord" } }, @@ -2130,7 +2130,7 @@ "title": "Algemeen", "item": { "language": "Taal & regio", - "board": "Home bord", + "board": "Home-bord", "firstDayOfWeek": "Eerste dag van de week", "accessibility": "Toegankelijkheid" } @@ -2187,7 +2187,7 @@ "description": "Na de vervaldatum is een uitnodiging niet langer geldig en kan de ontvanger van de uitnodiging geen account meer aanmaken." }, "copy": { - "title": "Kopieer de uitnodiging", + "title": "Uitnodiging kopiëren", "description": "Je uitnodiging is gegenereerd. Na het sluiten van dit venster kun je deze link niet meer kopiëren. Als je deze persoon niet langer wilt uitnodigen, kun je deze uitnodiging op elk moment verwijderen.", "link": "Uitnodigingslink", "button": "Kopiëren en sluiten" @@ -2199,7 +2199,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Maker" @@ -2220,7 +2220,7 @@ "title": "Algemeen", "owner": "Eigenaar", "ownerOfGroup": "Eigenaar van deze groep", - "ownerOfGroupDeleted": "De eigenaar van deze groep is verwijderd. Er is momenteel geen eigenaar." + "ownerOfGroupDeleted": "De eigenaar van deze groep is verwijderd. Het heeft momenteel geen eigenaar." }, "members": { "title": "Leden", @@ -2230,7 +2230,7 @@ "permissions": { "title": "Machtigingen", "form": { - "unsavedChanges": "Er zijn wijzigingen die niet opgeslagen zijn!" + "unsavedChanges": "Er zijn niet-opgeslagen wijzigingen!" } } } @@ -2247,9 +2247,9 @@ }, "section": { "analytics": { - "title": "", + "title": "Analytics", "general": { - "title": "Anonieme analyses versturen", + "title": "Anonieme analyses sturen", "text": "Homarr verstuurt geanonimiseerde analyses met behulp van de open source software Umami. Het verzamelt nooit persoonlijke informatie en is daarom volledig GDPR & CCPA compliant. We moedigen je aan om analytics in te schakelen omdat het ons open source team helpt bij het identificeren van problemen en het prioriteren van onze backlog." }, "widgetData": { @@ -2267,17 +2267,17 @@ }, "crawlingAndIndexing": { "title": "Crawlen en indexeren", - "warning": "Het in- of uitschakelen van instellingen hier heeft grote invloed op hoe zoekmachines je pagina zullen indexeren en crawlen. Elke instelling is een verzoek en het is aan de crawler om deze instellingen toe te passen. Het kan meerdere dagen of weken duren voordat elke wijziging is toegepast. Sommige instellingen kunnen zoekmachinespecifiek zijn.", + "warning": "Het in- of uitschakelen van instellingen hier heeft grote invloed op hoe zoekmachines je pagina zullen indexeren en crawlen. Elke instelling is een aanvraag en het is aan de crawler om deze instellingen toe te passen. Het kan meerdere dagen of weken duren voordat elke wijziging is toegepast. Sommige instellingen kunnen zoekmachinespecifiek zijn.", "noIndex": { - "title": "Index kaart icoon", + "title": "Geen index", "text": "De website niet indexeren in zoekmachines en niet weergeven in zoekresultaten" }, "noFollow": { "title": "Niet volgen", - "text": "Volg geen links tijdens het indexeren. Als je dit uitschakelt, zullen crawlers proberen alle links op Homarr te volgen." + "text": "Geen enkele links volgen tijdens het indexeren. Als je dit uitschakelt, zullen crawlers proberen alle links op Homarr te volgen." }, "noTranslate": { - "title": "Niet vertalen", + "title": "Geen vertaling", "text": "Als de taal van de site waarschijnlijk niet de taal is die de gebruiker wil lezen, zal Google een vertaallink tonen in de zoekresultaten" }, "noSiteLinksSearchBox": { @@ -2293,7 +2293,7 @@ } }, "appearance": { - "title": "Opmaak", + "title": "Weergave", "defaultColorScheme": { "label": "Standaard kleurenschema", "options": { @@ -2323,58 +2323,58 @@ "label": "Icoon updater" }, "analytics": { - "label": "" + "label": "Analytics" }, "smartHomeEntityState": { "label": "Smart home entiteitstatus" }, "ping": { - "label": "" + "label": "Pings" }, "mediaServer": { - "label": "Media server" + "label": "Mediaserver" }, "mediaOrganizer": { "label": "Media organisatoren" }, "downloads": { - "label": "" + "label": "Downloads" }, "mediaRequestStats": { - "label": "Mediaverzoek statistieken" + "label": "Media-aanvraag statistieken" }, "mediaRequestList": { - "label": "Mediaverzoeken-lijst" + "label": "Media-aanvraag lijst" }, "rssFeeds": { "label": "RSS-feeds" }, "indexerManager": { - "label": "Indexeer beheerder" + "label": "Indexeringsbeheerder" }, "healthMonitoring": { "label": "Gezondheidsmonitoring" }, "dnsHole": { - "label": "DNS-gatgegevens" + "label": "DNS-hole gegevens" }, "sessionCleanup": { "label": "Sessie opruimen" }, "updateChecker": { - "label": "" + "label": "Update checker" }, "mediaTranscoding": { - "label": "Media transcodering" + "label": "Mediatranscodering" } } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { - "title": "API token aangemaakt", - "description": "API token is aangemaakt. Wees voorzichtig, dit token is versleuteld in de database en zal nooit meer aan jou worden overgedragen. Als je dit token verliest, kun je dit specifieke token niet meer opvragen.", + "title": "API-token aangemaakt", + "description": "API-token is aangemaakt. Wees voorzichtig, dit token is versleuteld in de database en zal nooit meer aan jou worden overgedragen. Als je dit token verliest, kun je dit specifieke token niet meer opvragen.", "button": "Kopiëren en sluiten" } }, @@ -2386,11 +2386,11 @@ "label": "Authenticatie", "title": "API-sleutels", "button": { - "createApiToken": "API token aanmaken" + "createApiToken": "API-token aanmaken" }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "Aangemaakt door" } } @@ -2419,7 +2419,7 @@ } }, "docker": { - "title": "", + "title": "Containers", "table": { "updated": "Bijgewerkt {when}", "search": "Zoek {count} containers", @@ -2435,9 +2435,9 @@ "created": "Aangemaakt", "running": "Actief", "paused": "Gepauzeerd", - "restarting": "Bezig met herstarten", + "restarting": "Herstarten", "exited": "Verlaten", - "removing": "Bezig met verwijderen", + "removing": "Verwijderen", "dead": "Dood" } }, @@ -2450,11 +2450,11 @@ }, "action": { "start": { - "label": "", + "label": "Start", "notification": { "success": { "title": "Containers gestart", - "message": "De containers zijn succesvol gestart" + "message": "De containers werden succesvol gestart" }, "error": { "title": "Containers niet gestart", @@ -2467,7 +2467,7 @@ "notification": { "success": { "title": "Containers gestopt", - "message": "De containers zijn succesvol gestopt" + "message": "De containers werden succesvol gestopt" }, "error": { "title": "Containers niet gestopt", @@ -2476,15 +2476,15 @@ } }, "restart": { - "label": "Herstart", + "label": "Herstarten", "notification": { "success": { "title": "Containers herstart", - "message": "De containers zijn succesvol herstart" + "message": "De containers werden succesvol herstart" }, "error": { "title": "Containers niet opnieuw opgestart", - "message": "De containers konden niet opnieuw worden opgestart" + "message": "De containers konden niet worden herstart" } } }, @@ -2493,7 +2493,7 @@ "notification": { "success": { "title": "Containers verwijderd", - "message": "De containers werden met succes verwijderd" + "message": "De containers werden succesvol verwijderd" }, "error": { "title": "Containers niet verwijderd", @@ -2576,7 +2576,7 @@ "label": "Media" }, "apps": { - "label": "", + "label": "Apps", "new": { "label": "Nieuw" }, @@ -2602,10 +2602,10 @@ "tools": { "label": "Gereedschappen", "docker": { - "label": "" + "label": "Docker" }, "logs": { - "label": "" + "label": "Logs" } }, "settings": { @@ -2627,7 +2627,7 @@ "help": "Zoeken naar apps, integraties of borden", "group": { "app": { - "title": "", + "title": "Apps", "children": { "action": { "open": { @@ -2737,24 +2737,24 @@ }, "option": { "google": { - "name": "", + "name": "Google", "description": "Zoeken op het web met Google" }, "bing": { - "name": "", + "name": "Bing", "description": "Zoeken op het web met Bing" }, "duckduckgo": { - "name": "", + "name": "DuckDuckGo", "description": "Zoeken op het web met DuckDuckGo" }, "torrent": { "name": "Verouderde torrents weergeven", - "description": "Torrents zoeken op torrentdownloads.pro" + "description": "Zoeken naar torrents op torrentdownloads.pro" }, "youTube": { - "name": "", - "description": "Video's zoeken op YouTube" + "name": "YouTube", + "description": "Zoeken naar video's op YouTube" } } } @@ -2766,7 +2766,7 @@ "title": "Modi" }, "help": { - "title": "", + "title": "Help", "option": { "documentation": { "label": "Documentatie" @@ -2775,7 +2775,7 @@ "label": "Een probleem melden" }, "discord": { - "label": "" + "label": "Community Discord" } } } @@ -2825,7 +2825,7 @@ "label": "Docker beheren" }, "manageApi": { - "label": "" + "label": "Swagger API" }, "manageLog": { "label": "Logs bekijken" @@ -2840,7 +2840,7 @@ "label": "Over" }, "homeBoard": { - "label": "Home bord" + "label": "Home-bord" }, "preferences": { "label": "Jouw voorkeuren" @@ -2857,7 +2857,7 @@ "children": { "action": { "detail": { - "label": "Gebruikersgegevens tonen" + "label": "Gebruikersgegevens weergeven" } }, "detail": { @@ -2870,7 +2870,7 @@ "children": { "action": { "detail": { - "label": "Details van groep weergeven" + "label": "Groepdetails weergeven" }, "manageMember": { "label": "Leden beheren" diff --git a/packages/translation/src/lang/tr.json b/packages/translation/src/lang/tr.json index fdc47b8ee..8f30f49aa 100644 --- a/packages/translation/src/lang/tr.json +++ b/packages/translation/src/lang/tr.json @@ -147,7 +147,7 @@ "label": "Eski Şifre" }, "homeBoard": { - "label": "Varsayılan Panel" + "label": "Öntanımlı Panel" }, "pingIconsEnabled": { "label": "Pingler İçin Simgeler Kullanın" @@ -203,10 +203,10 @@ "changeHomeBoard": { "notification": { "success": { - "message": "Varsayılan panel başarıyla değiştirildi" + "message": "Öntanımlı panel başarıyla değiştirildi" }, "error": { - "message": "Varsayılan panel değiştirilemiyor" + "message": "Öntanımlı panel değiştirilemiyor" } } }, @@ -498,7 +498,7 @@ } }, "create": { - "title": "Yeni uygulama", + "title": "Yeni Uygulama", "notification": { "success": { "title": "Oluşturma başarılı", @@ -566,7 +566,7 @@ } }, "create": { - "title": "Yeni {name} entegrasyonu", + "title": "Yeni {name} Entegrasyonu", "notification": { "success": { "title": "Oluşturma başarılı", @@ -615,7 +615,7 @@ } }, "action": { - "create": "Yeni entegrasyon" + "create": "Yeni Entegrasyon" }, "testConnection": { "action": { @@ -709,7 +709,7 @@ "kind": { "username": { "label": "Kullanıcı adı", - "newLabel": "Yeni kullanıcı adı" + "newLabel": "Yeni Kullanıcı Adı" }, "apiKey": { "label": "API Anahtarı", @@ -717,7 +717,7 @@ }, "password": { "label": "Şifre", - "newLabel": "Yeni parola" + "newLabel": "Yeni Parola" } } }, @@ -842,18 +842,18 @@ }, "userAvatar": { "menu": { - "switchToDarkMode": "Koyu moda geç", - "switchToLightMode": "Aydınlık moda geç", + "switchToDarkMode": "Koyu Temaya Geç", + "switchToLightMode": "Aydınlık Temaya Geç", "management": "Yönetim", "preferences": "Tercihleriniz", "logout": "Oturumu kapat", "login": "Giriş", - "homeBoard": "Varsayılan Panel", + "homeBoard": "Öntanımlı Panel", "loggedOut": "Oturum kapatıldı", "updateAvailable": "{countUpdates} güncelleme mevcut: {tag}" } }, - "dangerZone": "Tehlikeli bölge", + "dangerZone": "Tehlikeli Bölge", "noResults": "Sonuç bulunamadı", "preview": { "show": "Ara Renkleri Göster", @@ -892,7 +892,7 @@ "section": { "dynamic": { "action": { - "create": "Yeni dinamik bölüm", + "create": "Yeni Dinamik Bölüm", "remove": "Dinamik bölümü kaldır" }, "remove": { @@ -907,16 +907,16 @@ } }, "action": { - "create": "Yeni kategori", - "edit": "Kategoriyi yeniden adlandır", + "create": "Yeni Kategori", + "edit": "Kategoriyi Yeniden Adlandır", "remove": "Kategoriyi kaldır", "moveUp": "Yukarı taşı", "moveDown": "Aşağı taşı", - "createAbove": "Yukarı yeni kategori", - "createBelow": "Aşağı yeni kategori" + "createAbove": "Yukarı Yeni Kategori", + "createBelow": "Aşağı Yeni Kategori" }, "create": { - "title": "Yeni kategori", + "title": "Yeni Kategori", "submit": "Kategori ekle" }, "remove": { @@ -924,12 +924,12 @@ "message": "{name} kategorisini kaldırmak istediğinizden emin misiniz?" }, "edit": { - "title": "Kategoriyi yeniden adlandır", - "submit": "Kategoriyi yeniden adlandır" + "title": "Kategoriyi Yeniden Adlandır", + "submit": "Kategoriyi Yeniden Adlandır" }, "menu": { "label": { - "create": "Yeni kategori", + "create": "Yeni Kategori", "changePosition": "Pozisyonu değiştir" } } @@ -937,10 +937,10 @@ }, "item": { "action": { - "create": "Yeni öğe", + "create": "Yeni Öğe", "import": "Öğeleri İçe Aktar", "edit": "Öğeyi Düzenle", - "moveResize": "Öğeyi taşı / yeniden boyutlandır", + "moveResize": "Öğeyi Taşı / Yeniden Boyutlandır", "duplicate": "Öğeyi Çoğalt", "remove": "Öğeyi kaldır" }, @@ -954,7 +954,7 @@ "addToBoard": "Panele Ekle" }, "moveResize": { - "title": "Öğeyi taşı / yeniden boyutlandır", + "title": "Öğeyi Taşı / Yeniden Boyutlandır", "field": { "width": { "label": "Genişlik" @@ -999,7 +999,7 @@ "label": "Uygulama seç" }, "openInNewTab": { - "label": "Yeni sekmede aç" + "label": "Yeni Sekmede Aç" }, "showTitle": { "label": "Uygulama adını göster" @@ -1019,7 +1019,7 @@ } }, "bookmarks": { - "name": "Yer imleri", + "name": "Yer İmleri", "description": "Birden fazla uygulama bağlantısını görüntüler", "option": { "title": { @@ -1040,7 +1040,7 @@ } }, "items": { - "label": "Yer imleri", + "label": "Yer İmleri", "add": "Yer imi ekle" } } @@ -1079,7 +1079,7 @@ } }, "dnsHoleControls": { - "name": "DNS çözümleyici kontrolleri", + "name": "DNS Çözümleyici Kontrolleri", "description": "Kontrol panelinizden PiHole veya AdGuard'ı kontrol edin", "option": { "layout": { @@ -1118,7 +1118,7 @@ } }, "clock": { - "name": "Tarih ve saat", + "name": "Tarih ve Saat", "description": "Geçerli tarih ve saati görüntüler.", "option": { "customTitleToggle": { @@ -1152,7 +1152,7 @@ } }, "notebook": { - "name": "Not defteri", + "name": "Not Defteri", "description": "Markdown'ı destekleyen basit bir not defteri bileşeni", "option": { "showToolbar": { @@ -1345,11 +1345,11 @@ } }, "indexerManager": { - "name": "Dizin oluşturucu yöneticisi statüsü", + "name": "Dizinleyici Yönetim Durumu", "description": "Dizinleyicilerinizin durumu", "option": { "openIndexerSiteInNewTab": { - "label": "Dizinleyici sitesini yeni sekmede aç" + "label": "Dizinleyici Sitesini Yeni Sekmede Aç" } }, "title": "Dizin oluşturucu yöneticisi", @@ -1455,7 +1455,7 @@ } }, "mediaServer": { - "name": "Güncel medya sunucusu akışları", + "name": "Güncel Medya Sunucusu Akışları", "description": "Medya sunucularınızdaki mevcut akışları gösterin", "option": {} }, @@ -1470,7 +1470,7 @@ "label": "Öğelerin sıralanmasını etkinleştir" }, "defaultSort": { - "label": "Varsayılan olarak sıralama için kullanılan sütun" + "label": "Öntanımlı olarak sıralama için kullanılan sütun" }, "descendingDefaultSort": { "label": "Ters sıralama" @@ -1644,11 +1644,11 @@ } }, "mediaTranscoding": { - "name": "Medya kod dönüştürme", + "name": "Medya Kod Dönüştürme", "description": "Medya kod dönüştürmenizin istatistikleri, geçerli kuyruğu ve çalışan durumu", "option": { "defaultView": { - "label": "Varsayılan görünüm" + "label": "Öntanımlı Görünüm" }, "queuePageSize": { "label": "Kuyruk Sayfa Boyutu" @@ -1703,8 +1703,8 @@ } }, "rssFeed": { - "name": "RSS beslemeleri", - "description": "Bir veya daha fazla genel RSS, ATOM veya JSON beslemesini izleyin ve görüntüleyin", + "name": "RSS Beslemeleri", + "description": "Bir veya daha fazla RSS, ATOM veya JSON beslemesini takip edin ve görüntüleyin", "option": { "feedUrls": { "label": "Besleme URL'leri" @@ -1919,7 +1919,7 @@ "title": "Özel Css" }, "access": { - "title": "Erişim kontrolü", + "title": "Erişim Kontrolü", "permission": { "item": { "view": { @@ -1935,14 +1935,14 @@ } }, "dangerZone": { - "title": "Tehlikeli bölge", + "title": "Tehlikeli Bölge", "action": { "rename": { - "label": "Panelin adını değiştir", + "label": "Panelin ismini değiştir", "description": "İsmin değiştirilmesi bu panele olan tüm bağlantıların kopmasına neden olacaktır.", "button": "İsmi değiştir", "modal": { - "title": "Panelin adını değiştir" + "title": "Panelin ismini değiştir" } }, "visibility": { @@ -1993,7 +1993,7 @@ "notice": "Bağlantıyı kontrol edin veya erişilebilir olması gerektiğini düşünüyorsanız bir yöneticiyle iletişime geçin" }, "homeBoard": { - "title": "Varsayılan Panel Yapılandırılmadı", + "title": "Öntanımlı Panel Yapılandırılmadı", "admin": { "description": "Sunucu için henüz bir ana sayfa paneli belirlemediniz.", "link": "Sunucu geneli için ana panel yapılandırın", @@ -2001,13 +2001,13 @@ }, "user": { "description": "Henüz bir ev paneli belirlemediniz.", - "link": "Varsayılan Paneli Yapılandır", - "notice": "Bu Sayfanın Kaybolmasını Sağlamak İçin Tercihlerden Varsayılan Panel Atayın" + "link": "Öntanımlı Paneli Yapılandır", + "notice": "Bu Sayfanın Kaybolmasını Sağlamak İçin Tercihlerden Öntanımlı Panel Atayın" }, "anonymous": { - "description": "Sunucu Yöneticiniz Henüz Bir Varsayılan Panel Atamadı.", + "description": "Sunucu Yöneticiniz Henüz Bir Öntanımlı Panel Atamadı.", "link": "Herkese açık panelleri görüntüle", - "notice": "Bu Sayfanın Kaybolmasını Sağlamak İçin Sunucu Yöneticisinden Varsayılan Panel Atamasını isteyin" + "notice": "Bu Sayfanın Kaybolmasını Sağlamak İçin Sunucu Yöneticisinden Öntanımlı Panel Atamasını İsteyin" } } } @@ -2082,7 +2082,7 @@ "title": "Panelleriniz", "action": { "new": { - "label": "Yeni panel" + "label": "Yeni Panel" }, "open": { "label": "Panel'i aç" @@ -2091,10 +2091,10 @@ "label": "Ayarlar" }, "setHomeBoard": { - "label": "Varsayılan Panel Olarak Ata", + "label": "Öntanımlı Panel Olarak Ata", "badge": { "label": "Ana Sayfa", - "tooltip": "Bu panel sizin varsayılan paneliniz olarak görüntülenecektir" + "tooltip": "Bu panel sizin öntanımlı paneliniz olarak görüntülenecektir" } }, "delete": { @@ -2130,7 +2130,7 @@ "title": "Genel", "item": { "language": "Dil & Bölge", - "board": "Varsayılan Panel", + "board": "Öntanımlı Panel", "firstDayOfWeek": "Haftanın ilk günü", "accessibility": "Erişilebilirlik" } @@ -2151,7 +2151,7 @@ }, "create": { "metaTitle": "Kullanıcı ekle", - "title": "Yeni kullanıcı oluştur", + "title": "Yeni Kullanıcı Oluştur", "step": { "personalInformation": { "label": "Kişisel bilgiler" @@ -2183,7 +2183,7 @@ "title": "Kullanıcı Davetlerini Yönet", "action": { "new": { - "title": "Yeni davet", + "title": "Yeni Davet", "description": "Süre sona erdikten sonra davet artık geçerli olmayacak ve daveti alan kişi bir hesap oluşturamayacaktır." }, "copy": { @@ -2281,21 +2281,21 @@ "text": "Kullanıcının site üzerinde okumak isteyeceği dilin olmaması durumunda Google, arama sonuçlarında bir çeviri bağlantısı gösterecektir" }, "noSiteLinksSearchBox": { - "title": "Site arama alanını gösterme", + "title": "Site Arama Alanını Gösterme", "text": "Google, aranan bağlantıların yanı sıra diğer doğrudan bağlantılardan oluşan bir arama kutusu oluşturur. Bu seçenek etkinleştirildiğinde Google'dan bu alanı devre dışı bırakması istenecektir." } }, "board": { "title": "Paneller", "homeBoard": { - "label": "Genel Varsayılan Panel", - "description": "Seçim için yalnızca herkese açık paneller kullanılabilir" + "label": "Genel Öntanımlı Panel", + "description": "Seçim yalnızca herkese açık paneller için kullanılabilir" } }, "appearance": { "title": "Görünüş", "defaultColorScheme": { - "label": "Varsayılan renk şeması", + "label": "Öntanımlı Renk Düzeni", "options": { "light": "Aydınlık", "dark": "Koyu" @@ -2305,7 +2305,7 @@ "culture": { "title": "Kültür", "defaultLocale": { - "label": "Varsayılan dil" + "label": "Öntanımlı Dil" } } } @@ -2347,7 +2347,7 @@ "label": "Medya Talep Listesi" }, "rssFeeds": { - "label": "RSS beslemeleri" + "label": "RSS Beslemeleri" }, "indexerManager": { "label": "Dizinleyici Yöneticisi" @@ -2365,7 +2365,7 @@ "label": "Güncelleme denetleyicisi" }, "mediaTranscoding": { - "label": "Medya kod dönüştürme" + "label": "Medya Kod Dönüştürme" } } }, @@ -2400,7 +2400,7 @@ }, "about": { "version": "Sürüm {version}", - "text": "Homarr, gönüllüler tarafından sürdürülen topluluk odaklı bir açık kaynak projesidir. Bu kişiler sayesinde Homarr, 2021'den beri büyüyen bir projedir. Ekibimiz, boş zamanlarında Homarr üzerinde birçok farklı ülkeden tamamen uzaktan, hiçbir ücret almadan çalışmaktadır.", + "text": "Homarr, gönüllüler tarafından sürdürülen topluluk odaklı bir açık kaynak projesidir. Bu kişiler sayesinde Homarr, 2021'den bugüne büyüyerek ilerleyen bir projedir. Ekibimiz, boş zamanlarında Homarr üzerinde birçok farklı ülkeden tamamen uzaktan, hiçbir ücret almadan çalışmaktadır.", "accordion": { "contributors": { "title": "Katkıda Bulunanlar", @@ -2408,7 +2408,7 @@ }, "translators": { "title": "Çevirmenler", - "subtitle": "{count} dilde birçok kişi çevirilere katkıda bulunuyor" + "subtitle": "{count} kişi Homarr'ın bir çok dile çevrilmesine katkı sağlıyor" }, "libraries": { "title": "Kütüphaneler", @@ -2435,7 +2435,7 @@ "created": "Oluşturuldu", "running": "Çalışıyor", "paused": "Duraklatıldı", - "restarting": "Yeniden başlatılıyor", + "restarting": "Yeniden Başlatılıyor", "exited": "Çıkıldı", "removing": "Kaldırılıyor", "dead": "Ölü" @@ -2650,7 +2650,7 @@ "label": "Panel'i aç" }, "homeBoard": { - "label": "Varsayılan Panel Olarak Ata" + "label": "Öntanımlı Panel Olarak Ata" }, "settings": { "label": "Ayarları aç" @@ -2676,8 +2676,8 @@ "title": "Genel komutlar", "option": { "colorScheme": { - "light": "Aydınlık moda geç", - "dark": "Koyu moda geç" + "light": "Aydınlık Temaya Geç", + "dark": "Koyu Temaya Geç" }, "language": { "label": "Dili değiştir", @@ -2688,16 +2688,16 @@ } }, "newBoard": { - "label": "Yeni bir panel oluştur" + "label": "Yeni Panel Oluştur" }, "importBoard": { "label": "Bir paneli içe aktar" }, "newApp": { - "label": "Yeni bir uygulama oluştur" + "label": "Yeni Uygulama Oluştur" }, "newIntegration": { - "label": "Yeni bir entegrasyon oluşturun", + "label": "Yeni Entegrasyon Oluştur", "children": { "detail": { "title": "Oluşturmak istediğiniz entegrasyon türünü seçin" @@ -2705,13 +2705,13 @@ } }, "newUser": { - "label": "Yeni bir kullanıcı oluştur" + "label": "Yeni Kullanıcı Oluştur" }, "newInvite": { - "label": "Yeni bir davet oluştur" + "label": "Yeni Davet Oluştur" }, "newGroup": { - "label": "Yeni bir grup oluştur" + "label": "Yeni Grup Oluştur" } } } @@ -2840,7 +2840,7 @@ "label": "Hakkında" }, "homeBoard": { - "label": "Varsayılan Panel" + "label": "Öntanımlı Panel" }, "preferences": { "label": "Tercihleriniz" @@ -2913,7 +2913,7 @@ "interactive": "Etkileşimli, entegrasyon kullanır" }, "create": { - "title": "Yeni arama motoru", + "title": "Yeni Arama Motoru", "notification": { "success": { "title": "Arama motoru oluşturuldu", From 76abfca11b7ec45071dd2e64852e27ceed4cebe0 Mon Sep 17 00:00:00 2001 From: Thomas Camlong Date: Sat, 28 Dec 2024 04:47:14 +0900 Subject: [PATCH 04/25] chore(lang): updated translations from crowdin (#1786) * New translations en.json (Hebrew) * New translations en.json (Dutch) * New translations en.json (Hebrew) * New translations en.json (Hebrew) * New translations en.json (Romanian) * New translations en.json (French) * New translations en.json (Spanish) * New translations en.json (Czech) * New translations en.json (Danish) * New translations en.json (German) * New translations en.json (Greek) * New translations en.json (Hungarian) * New translations en.json (Italian) * New translations en.json (Japanese) * New translations en.json (Korean) * New translations en.json (Lithuanian) * New translations en.json (Dutch) * New translations en.json (Norwegian) * New translations en.json (Polish) * New translations en.json (Russian) * New translations en.json (Slovak) * New translations en.json (Slovenian) * New translations en.json (Swedish) * New translations en.json (Turkish) * New translations en.json (Ukrainian) * New translations en.json (Chinese Simplified) * New translations en.json (Vietnamese) * New translations en.json (Portuguese, Brazilian) * New translations en.json (Croatian) * New translations en.json (Latvian) * New translations en.json (Cree) --------- Co-authored-by: Meier Lukas --- packages/translation/src/lang/cn.json | 302 ++--- packages/translation/src/lang/cr.json | 2 +- packages/translation/src/lang/cs.json | 32 +- packages/translation/src/lang/da.json | 86 +- packages/translation/src/lang/de.json | 396 +++---- packages/translation/src/lang/el.json | 18 +- packages/translation/src/lang/es.json | 48 +- packages/translation/src/lang/fr.json | 404 +++---- packages/translation/src/lang/he.json | 458 ++++---- packages/translation/src/lang/hr.json | 10 +- packages/translation/src/lang/hu.json | 16 +- packages/translation/src/lang/it.json | 410 +++---- packages/translation/src/lang/ja.json | 20 +- packages/translation/src/lang/ko.json | 16 +- packages/translation/src/lang/lt.json | 14 +- packages/translation/src/lang/lv.json | 22 +- packages/translation/src/lang/nl.json | 98 +- packages/translation/src/lang/no.json | 28 +- packages/translation/src/lang/pl.json | 24 +- packages/translation/src/lang/pt.json | 44 +- packages/translation/src/lang/ro.json | 44 +- packages/translation/src/lang/ru.json | 1476 ++++++++++++------------- packages/translation/src/lang/sk.json | 2 +- packages/translation/src/lang/sl.json | 16 +- packages/translation/src/lang/sv.json | 40 +- packages/translation/src/lang/tr.json | 302 ++--- packages/translation/src/lang/uk.json | 8 +- packages/translation/src/lang/vi.json | 10 +- 28 files changed, 2173 insertions(+), 2173 deletions(-) diff --git a/packages/translation/src/lang/cn.json b/packages/translation/src/lang/cn.json index 3ce2bbafc..b5642c978 100644 --- a/packages/translation/src/lang/cn.json +++ b/packages/translation/src/lang/cn.json @@ -51,7 +51,7 @@ "title": "输入导入密钥", "field": { "token": { - "label": "令牌", + "label": "Token", "description": "输入您之前的 homarr 实例中显示的导入秘钥" } }, @@ -125,7 +125,7 @@ "field": { "email": { "label": "邮箱", - "verified": "已验证" + "verified": "" }, "username": { "label": "用户名" @@ -133,46 +133,46 @@ "password": { "label": "密码", "requirement": { - "length": "包含至少8个字符", + "length": "", "lowercase": "包括小写字母", "uppercase": "包含大写字母", "number": "包含数字", - "special": "包含特殊符号" + "special": "" } }, "passwordConfirm": { "label": "确认密码" }, "previousPassword": { - "label": "先前的密码" + "label": "" }, "homeBoard": { - "label": "首页" + "label": "" }, "pingIconsEnabled": { - "label": "用于ping的图标" + "label": "" } }, "error": { - "usernameTaken": "用户名称已被占用" + "usernameTaken": "" }, "action": { "login": { "label": "登录", - "labelWith": "使用 {provider} 登录", + "labelWith": "", "notification": { "success": { - "title": "登录成功", - "message": "您已登录" + "title": "", + "message": "" }, "error": { - "title": "登录失败", - "message": "您登录失败" + "title": "", + "message": "" } }, "forgotPassword": { - "label": "忘记密码?", - "description": "管理员可以使用以下命令重置您的密码:" + "label": "", + "description": "" } }, "register": { @@ -180,11 +180,11 @@ "notification": { "success": { "title": "账号已创建", - "message": "请登录以继续" + "message": "" }, "error": { - "title": "创建账户失败", - "message": "无法创建您的帐户" + "title": "", + "message": "" } } }, @@ -262,16 +262,16 @@ "editProfile": { "notification": { "success": { - "message": "资料更新成功" + "message": "" }, "error": { - "message": "资料更新失败" + "message": "" } } }, "delete": { - "label": "永久删除用户", - "description": "删除此用户及其偏好设置。这将不会删除任何看板。用户将不会收到通知。", + "label": "", + "description": "", "confirm": "您确定要删除用户 {username} 及其偏好设置吗?" }, "select": { @@ -279,24 +279,24 @@ "notFound": "找不到用户" }, "transfer": { - "label": "选择新的所有者" + "label": "" } } }, "group": { - "title": "组", - "name": "组", - "search": "查找组", + "title": "", + "name": "", + "search": "", "field": { "name": "名称", - "members": "成员列表" + "members": "" }, "permission": { "admin": { "title": "管理员", "item": { "admin": { - "label": "管理员", + "label": "", "description": "拥有此权限的成员可完全访问所有功能和设置" } } @@ -305,20 +305,20 @@ "title": "应用", "item": { "create": { - "label": "创建应用", - "description": "允许成员创建应用" + "label": "", + "description": "" }, "use-all": { - "label": "使用全部应用", - "description": "允许成员将任何应用添加到他们的看板" + "label": "", + "description": "" }, "modify-all": { - "label": "修改全部应用", - "description": "允许成员修改全部应用" + "label": "", + "description": "" }, "full-all": { - "label": "完整应用访问权限", - "description": "允许成员管理、使用和删除全部应用" + "label": "", + "description": "" } } }, @@ -327,19 +327,19 @@ "item": { "create": { "label": "创建面板", - "description": "允许成员创建看板" + "description": "" }, "view-all": { - "label": "查看全部面板", - "description": "允许成员查看全部看板" + "label": "查看所有面板", + "description": "" }, "modify-all": { - "label": "修改全部看板", - "description": "允许成员修改全部看板 (不包括访问控制和危险区)" + "label": "", + "description": "" }, "full-all": { - "label": "完整的看板访问权限", - "description": "允许成员查看、修改和删除全部看板 (包括访问控制和危险区)" + "label": "", + "description": "" } } }, @@ -347,144 +347,144 @@ "title": "组件", "item": { "create": { - "label": "创建组件", - "description": "允许成员创建组件" + "label": "", + "description": "" }, "use-all": { - "label": "使用全部组件", - "description": "允许成员将任何组件添加到他们的看板" + "label": "", + "description": "" }, "interact-all": { - "label": "与任何组件互动", - "description": "允许成员与任何组件互动" + "label": "", + "description": "" }, "full-all": { - "label": "完全的组件访问权限", - "description": "允许成员管理、使用并与任何组件交互" + "label": "", + "description": "" } } }, "media": { - "title": "媒体", + "title": "", "item": { "upload": { - "label": "上传媒体", - "description": "允许成员上传媒体" + "label": "", + "description": "" }, "view-all": { - "label": "查看全部媒体", - "description": "允许成员查看全部媒体" + "label": "", + "description": "" }, "full-all": { - "label": "完全的媒体访问权限", - "description": "允许成员管理和删除任何媒体" + "label": "", + "description": "" } } }, "other": { - "title": "其它", + "title": "", "item": { "view-logs": { - "label": "查看日志", - "description": "允许成员查看日志" + "label": "", + "description": "" } } }, "search-engine": { - "title": "搜索引擎", + "title": "", "item": { "create": { - "label": "创建搜索引擎", - "description": "允许成员创建搜索引擎" + "label": "", + "description": "" }, "modify-all": { - "label": "修改全部搜索引擎", - "description": "允许成员修改全部搜索引擎" + "label": "", + "description": "" }, "full-all": { - "label": "完整的搜索引擎访问权限", - "description": "允许成员管理和删除任何搜索引擎" + "label": "", + "description": "" } } } }, "memberNotice": { - "mixed": "部分成员来自外部提供者,无法在此处管理", - "external": "所有成员都来自外部提供者,无法在此处管理" + "mixed": "", + "external": "" }, "reservedNotice": { - "message": "此用户组保留供系统使用并限制部分操作 " + "message": "" }, "action": { "create": { - "label": "新建用户组", + "label": "", "notification": { "success": { - "message": "用户组已成功创建" + "message": "" }, "error": { - "message": "无法创建用户组" + "message": "" } } }, "transfer": { - "label": "转移所有权", - "description": "将此用户组的所有权转移给另一个用户。", - "confirm": "确定将用户组 {name} 的所有权转移给 {username} 吗?", + "label": "", + "description": "", + "confirm": "", "notification": { "success": { - "message": "成功将用户组 {group} 的所有权转移给 {user}" + "message": "" }, "error": { - "message": "无法转移所有权" + "message": "" } } }, "addMember": { - "label": "添加成员" + "label": "" }, "removeMember": { - "label": "删除成员", - "confirm": "确定将 {user} 从此用户组移除吗?" + "label": "", + "confirm": "" }, "delete": { - "label": "删除用户组", - "description": "用户组一旦删除就无法恢复. 请谨慎操作.", - "confirm": "确认删除用户组 {name} 吗?", + "label": "", + "description": "", + "confirm": "", "notification": { "success": { - "message": "成功删除用户组 {name}" + "message": "" }, "error": { - "message": "无法删除用户组 {name}" + "message": "" } } }, "changePermissions": { "notification": { "success": { - "title": "权限已保存", - "message": "权限保存成功" + "title": "", + "message": "" }, "error": { - "title": "权限未保存", - "message": "权限尚未保存" + "title": "", + "message": "" } } }, "update": { "notification": { "success": { - "message": "用户组 {name} 保存成功" + "message": "" }, "error": { - "message": "无法保存用户组 {name}" + "message": "" } } }, "select": { - "label": "选择用户组", - "notFound": "未找到用户组" + "label": "", + "notFound": "" } } }, @@ -493,47 +493,47 @@ "list": { "title": "应用", "noResults": { - "title": "尚无应用", - "action": "创建您的第一个应用" + "title": "", + "action": "" } }, "create": { - "title": "新建应用", + "title": "", "notification": { "success": { - "title": "创建成功", - "message": "应用已成功创建" + "title": "", + "message": "" }, "error": { - "title": "创建失败", - "message": "无法创建此应用" + "title": "", + "message": "" } } }, "edit": { - "title": "编辑应用", + "title": "", "notification": { "success": { - "title": "更改应用成功", - "message": "应用保存成功" + "title": "", + "message": "" }, "error": { - "title": "无法应用更改", - "message": "无法保存此应用" + "title": "", + "message": "" } } }, "delete": { - "title": "删除应用", - "message": "确认删除应用 {name} 吗?", + "title": "", + "message": "", "notification": { "success": { - "title": "成功删除", - "message": "应用已成功删除" + "title": "", + "message": "" }, "error": { - "title": "删除失败", - "message": "无法删除应用" + "title": "", + "message": "" } } } @@ -543,16 +543,16 @@ "label": "名称" }, "description": { - "label": "描述" + "label": "" }, "url": { - "label": "Url" + "label": "" } }, "action": { "select": { - "label": "选择应用", - "notFound": "未找到应用" + "label": "", + "notFound": "" } } }, @@ -560,48 +560,48 @@ "page": { "list": { "title": "组件", - "search": "搜索组件", + "search": "", "noResults": { - "title": "尚无组件" + "title": "" } }, "create": { - "title": "新的组件 {name}", + "title": "", "notification": { "success": { - "title": "创建成功", - "message": "组件已成功创建" + "title": "", + "message": "" }, "error": { - "title": "创建失败", - "message": "无法创建组件" + "title": "", + "message": "" } } }, "edit": { - "title": "编辑组件 {name}", + "title": "", "notification": { "success": { - "title": "更改应用成功", - "message": "组件已成功保存" + "title": "", + "message": "" }, "error": { - "title": "无法应用更改", - "message": "无法保存此组件" + "title": "", + "message": "" } } }, "delete": { - "title": "删除组件", - "message": "确认删除组件 {name} 吗?", + "title": "", + "message": "", "notification": { "success": { - "title": "成功删除", - "message": "组件已成功删除" + "title": "", + "message": "" }, "error": { - "title": "删除失败", - "message": "无法删除组件" + "title": "", + "message": "" } } } @@ -611,21 +611,21 @@ "label": "名称" }, "url": { - "label": "Url" + "label": "" } }, "action": { - "create": "新建组件" + "create": "" }, "testConnection": { "action": { - "create": "测试连接并创建", - "edit": "测试连接并保存" + "create": "", + "edit": "" }, - "alertNotice": "成功建立连接后保存按钮将启用", + "alertNotice": "", "notification": { "success": { - "title": "连接成功", + "title": "", "message": "" }, "invalidUrl": { @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "", + "name": "iFrame", "description": "嵌入互联网上的任何内容。某些网站可能限制访问。", "option": { "embedUrl": { @@ -1989,7 +1989,7 @@ "notFound": { "title": "", "description": "", - "link": "查看全部面板", + "link": "查看所有面板", "notice": "" }, "homeBoard": { @@ -2042,9 +2042,9 @@ "tools": { "label": "工具", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2199,7 +2199,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "创建者" @@ -2208,7 +2208,7 @@ "label": "过期时间" }, "token": { - "label": "" + "label": "Token" } } } @@ -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": "" @@ -2749,7 +2749,7 @@ "description": "" }, "torrent": { - "name": "", + "name": "Torrents", "description": "" }, "youTube": { diff --git a/packages/translation/src/lang/cr.json b/packages/translation/src/lang/cr.json index e2c405b33..94b6f98d4 100644 --- a/packages/translation/src/lang/cr.json +++ b/packages/translation/src/lang/cr.json @@ -1381,7 +1381,7 @@ "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", + "uptime": "crwdns7008:0{months}crwdnd7008:0{days}crwdnd7008:0{hours}crwdnd7008:0{minutes}crwdne7008:0", "loadAverage": "crwdns5742:0crwdne5742:0", "minute": "crwdns5744:0crwdne5744:0", "minutes": "crwdns5746:0{count}crwdne5746:0", diff --git a/packages/translation/src/lang/cs.json b/packages/translation/src/lang/cs.json index 02ec270d7..4578d31fc 100644 --- a/packages/translation/src/lang/cs.json +++ b/packages/translation/src/lang/cs.json @@ -27,7 +27,7 @@ "description": "Konfigurovat chování importu" }, "boardSelection": { - "title": "Nalezeno {count} ploch", + "title": "", "description": "Vyberte všechny plochy s velikostmi, které chcete importovat", "action": { "selectAll": "Vybrat vše", @@ -38,17 +38,17 @@ "title": "Přehled importu", "description": "", "action": { - "import": "Potvrdit import a pokračovat" + "import": "" }, "entities": { "apps": "Aplikace", "boards": "Plochy", - "integrations": "Integrace", + "integrations": "", "credentialUsers": "" } }, "tokenModal": { - "title": "Zadejte token pro import", + "title": "", "field": { "token": { "label": "Token", @@ -57,14 +57,14 @@ }, "notification": { "error": { - "title": "Neplatný token", - "message": "Token, který jste zadali je neplatný" + "title": "", + "message": "" } } } }, "user": { - "title": "Správce", + "title": "", "subtitle": "", "notification": { "success": { @@ -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" @@ -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" } } } @@ -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 4b402617e..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": "" } }, @@ -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,7 +1026,7 @@ "label": "" }, "layout": { - "label": "", + "label": "Layout", "option": { "row": { "label": "Horisontal" @@ -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", @@ -1685,7 +1685,7 @@ "empty": "Tom", "table": { "file": "Fil", - "eta": "", + "eta": "ETA", "progress": "Fremskridt", "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" } } } @@ -2286,7 +2286,7 @@ } }, "board": { - "title": "", + "title": "Boards", "homeBoard": { "label": "", "description": "" @@ -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 32d1f57d4..43767c414 100644 --- a/packages/translation/src/lang/de.json +++ b/packages/translation/src/lang/de.json @@ -3,19 +3,19 @@ "step": { "start": { "title": "Willkommen bei Homarr", - "subtitle": "Lass uns mit der Einrichtung deiner Homarr-Instanz beginnen.", - "description": "Um loszulegen, wähle bitte wie du deine Homarr Instanz einrichten möchtest.", + "subtitle": "Beginnen wir mit der Einrichtung Ihrer Homarr-Instanz.", + "description": "Um zu beginnen, wählen Sie bitte aus, wie Sie Ihre Homarr-Instanz einrichten möchten.", "action": { "scratch": "Von vorne beginnen", - "importOldmarr": "Import von Homarr vor 1.0" + "importOldmarr": "Import von Homarr vor Version 1.0" } }, "import": { - "title": "Daten importieren", - "subtitle": "Sie können Daten aus einer bestehenden Homarr-Instanz importieren.", + "title": "Importieren von Daten", + "subtitle": "Sie können Daten aus einer vorhandenen Homarr-Instanz importieren.", "dropzone": { "title": "Ziehen Sie die Zip-Datei hierher oder klicken Sie zum Durchsuchen", - "description": "Die hochgeladene Zip-Datei wird bearbeitet und Sie können wählen, was Sie importieren möchten" + "description": "Die hochgeladene Zip-Datei wird verarbeitet und Sie können auswählen, was Sie importieren möchten" }, "fileInfo": { "action": { @@ -23,8 +23,8 @@ } }, "importSettings": { - "title": "Importeinstellungen", - "description": "Importverhalten konfigurieren" + "title": "Einstellungen importieren", + "description": "Konfigurieren des Importverhaltens" }, "boardSelection": { "title": "{count} Boards gefunden", @@ -36,12 +36,12 @@ }, "summary": { "title": "Zusammenfassung des Imports", - "description": "In der folgenden Zusammenfassung sehen Sie, was importiert wird", + "description": "In der folgenden Übersicht können Sie sehen, was importiert wird", "action": { "import": "Import bestätigen und fortfahren" }, "entities": { - "apps": "Applikationen", + "apps": "Apps", "boards": "Boards", "integrations": "Integrationen", "credentialUsers": "Benutzer mit Zugangsdaten" @@ -51,28 +51,28 @@ "title": "Importschlüssel eingeben", "field": { "token": { - "label": "Schlüssel", - "description": "Gib den angezeigten Importschlüssel von der vorherigen Homarr-Instanz ein" + "label": "Token", + "description": "Gib den angezeigten Importschlüssel von der vorherigen Homarr Instanz ein" } }, "notification": { "error": { - "title": "Ungültiger Schlüssel", + "title": "Token ungültig", "message": "Der eingegebene Schlüssel ist ungültig" } } } }, "user": { - "title": "Administrator", - "subtitle": "Geben Sie die Zugangsdaten für Ihren Administrator-Benutzer an.", + "title": "Admin Benutzer", + "subtitle": "Geben Sie die Anmeldeinformationen für Ihren Administratorbenutzer an.", "notification": { "success": { "title": "Benutzer erstellt", "message": "Der Benutzer wurde erfolgreich erstellt" }, "error": { - "title": "Erstellung des Benutzers fehlgeschlagen" + "title": "Benutzer anlegen fehlgeschlagen" } } }, @@ -82,13 +82,13 @@ "form": { "name": { "label": "Gruppenname", - "description": "Name muss mit der Admin-Gruppe des externen Anbieters übereinstimmen" + "description": "Name muss mit der Admin-Gruppe der externen Anmeldeoption übereinstimmen" } } }, "settings": { "title": "Einstellungen", - "subtitle": "Server-Einstellungen konfigurieren." + "subtitle": "Server Einstellungen konfigurieren." }, "finish": { "title": "Einrichtung abschließen", @@ -96,9 +96,9 @@ "description": "Du hast die Einrichtung erfolgreich abgeschlossen. Du kannst jetzt mit der Nutzung von Homarr beginnen. Wähle deine nächste Aktion:", "action": { "goToBoard": "Gehe zu {name} Board", - "createBoard": "Erstelle dein erstes Board", - "inviteUser": "Andere Benutzer einladen", - "docs": "Lese die Dokumentation" + "createBoard": "Erstellen Sie Ihr erstes Board", + "inviteUser": "Weitere Personen einladen", + "docs": "Lesen Sie die Dokumentation" } } }, @@ -109,11 +109,11 @@ "name": "Benutzer", "page": { "login": { - "title": "Melde dich bei deinem Konto an", + "title": "Melden Sie sich in Ihrem Konto an", "subtitle": "Willkommen zurück! Bitte gib deine Zugangsdaten ein" }, "invite": { - "title": "Homarr beitreten", + "title": "Trete Homarr bei", "subtitle": "Willkommen bei Homarr! Bitte erstelle dein Konto", "description": "Du wurdest von {username} eingeladen" }, @@ -147,7 +147,7 @@ "label": "Vorheriges Passwort" }, "homeBoard": { - "label": "Home Board" + "label": "Home board" }, "pingIconsEnabled": { "label": "Symbole für Pings verwenden" @@ -216,7 +216,7 @@ "message": "Erster Wochentag erfolgreich geändert" }, "error": { - "message": "Konnte den ersten Wochentag nicht ändern" + "message": "Der erste Wochentag konnte nicht geändert werden" } } }, @@ -226,7 +226,7 @@ "message": "Ping Icons erfolgreich umgeschaltet" }, "error": { - "message": "Konnte Ping-Icons nicht umschalten" + "message": "Ping Icons konnten nicht umgeschaltet werden" } } }, @@ -242,19 +242,19 @@ }, "toLarge": { "title": "Bild ist zu groß", - "message": "Maximale Bildgröße ist {size}" + "message": "Die maximale Bildgröße beträgt {size}" } } }, "removeImage": { "label": "Bild entfernen", - "confirm": "Wollen Sie wirklich dieses Bild entfernen?", + "confirm": "Sind Sie sicher, dass Sie dieses Bild entfernen möchten?", "notification": { "success": { "message": "Bild erfolgreich entfernt" }, "error": { - "message": "Bild kann nicht entfernt werden" + "message": "Bild konnte nicht entfernt werden" } } } @@ -271,7 +271,7 @@ }, "delete": { "label": "Benutzer dauerhaft löschen", - "description": "Löscht diesen Benutzer einschließlich seiner Einstellungen. Wird keine Boards löschen. Benutzer wird nicht benachrichtigt.", + "description": "Löscht diesen Benutzer einschließlich seiner Einstellungen. Es werden keine Boards gelöscht. Der Benutzer wird nicht benachrichtigt.", "confirm": "Sind Sie sicher, dass Sie den Benutzer {username} mit seinen Einstellungen löschen möchten?" }, "select": { @@ -284,9 +284,9 @@ } }, "group": { - "title": "Benutzergruppen", - "name": "Benutzergruppe", - "search": "Finde eine Benutzergruppe", + "title": "Gruppen", + "name": "Gruppe", + "search": "Finde eine Gruppe", "field": { "name": "Name", "members": "Mitglieder" @@ -305,16 +305,16 @@ "title": "Apps", "item": { "create": { - "label": "Apps erstellen", - "description": "Mitgliedern das Erstellen von Apps erlauben" + "label": "Anwendung erstellen", + "description": "Mitgliedern erlauben, Apps zu erstellen" }, "use-all": { "label": "Alle Apps verwenden", - "description": "Mitgliedern erlauben, Apps zu ihren Boards hinzuzufügen" + "description": "Erlauben Sie Mitgliedern, beliebige Apps zu ihren Boards hinzuzufügen" }, "modify-all": { "label": "Alle Apps ändern", - "description": "Mitgliedern das Erstellen von Apps erlauben" + "description": "Mitgliedern erlauben Apps zu ändern" }, "full-all": { "label": "Voller App Zugriff", @@ -335,11 +335,11 @@ }, "modify-all": { "label": "Alle Boards ändern", - "description": "Erlaube Mitgliedern alle Boards zu ändern (beinhaltet keine Zugangskontrolle und Gefahrenbereich)" + "description": "Erlaube Mitgliedern alle Boards zu ändern (beinhaltet nicht die Zugangskontrolle und den Gefahrenbereich)" }, "full-all": { "label": "Voller Board Zugriff", - "description": "Erlaube Mitgliedern alle Boards (einschließlich Zugriffskontrolle und Gefahrenbereich) anzuzeigen, zu ändern und zu löschen" + "description": "Erlaube Mitgliedern alle Boards (einschließlich der Zugriffskontrolle und des Gefahrenbereich) anzuzeigen, zu ändern und zu löschen" } } }, @@ -347,20 +347,20 @@ "title": "Integrationen", "item": { "create": { - "label": "Integrationen erstellen", - "description": "Mitgliedern erlauben, Integrationen zu erstellen" + "label": "Integration anlegen", + "description": "Mitgliedern die Erstellung von Integrationen erlauben" }, "use-all": { "label": "Alle Integrationen nutzen", - "description": "Erlaubt Mitgliedern Integrationen zu ihren Boards hinzuzufügen" + "description": "Ermöglicht Mitgliedern, beliebige Integrationen zu ihren Boards hinzuzufügen" }, "interact-all": { - "label": "Mit jeder Integration interagieren", - "description": "Mitgliedern erlauben, mit jeder Integration zu interagieren" + "label": "Interaktion mit allen Integrationen", + "description": "Ermöglichen Sie Mitgliedern die Interaktion mit jeder Integration" }, "full-all": { "label": "Voller Zugriff auf Integrationen", - "description": "Erlaube Mitgliedern jede Integration zu verwalten, zu nutzen und zu interagieren" + "description": "Erlaubt Mitgliedern jegliche Integration zu verwalten, nutzen und interagieren" } } }, @@ -368,16 +368,16 @@ "title": "Medien", "item": { "upload": { - "label": "Medien Hochladen", - "description": "Erlaube Mitgliedern Medien hochzuladen" + "label": "Medien hochladen", + "description": "Erlaubt Mitgliedern Medien hochzuladen" }, "view-all": { "label": "Alle Medien anzeigen", "description": "Erlaubt Mitgliedern alle Medien anzusehen" }, "full-all": { - "label": "Vollständiger Medienzugriff", - "description": "Mitgliedern das Verwalten und Löschen von Medien erlauben" + "label": "Voller Zugriff auf alle Medien", + "description": "Erlaubt Mitglieder die Verwaltung und das Entfernen jeglicher Medien" } } }, @@ -399,10 +399,10 @@ }, "modify-all": { "label": "Alle Suchmaschinen ändern", - "description": "Mitgliedern erlauben alle Suchmaschinen zu ändern" + "description": "Erlaubt es den Mitgliedern die Suchmaschinen zu ändern" }, "full-all": { - "label": "Voller Zugriff auf Suchmaschinen", + "label": "Vollständiger Suchmaschinenzugriff", "description": "Mitgliedern das Verwalten und Löschen von Suchmaschinen erlauben" } } @@ -413,7 +413,7 @@ "external": "Alle Mitglieder haben externe Anmeldeoptionen genutzt und können von hier aus nicht verwaltet werden" }, "reservedNotice": { - "message": "Diese Gruppe ist für die Systemnutzung reserviert und beschränkt einige Aktionen. " + "message": "Diese Gruppe ist für die Systemnutzung reserviert und schränkt einige Aktionen ein. " }, "action": { "create": { @@ -428,7 +428,7 @@ } }, "transfer": { - "label": "Eigentum übertragen", + "label": "Übertrage Eigentum", "description": "Übertrage den Eigentümer dieser Gruppe an einen anderen Benutzer.", "confirm": "Bist du sicher, dass du das Eigentum für die Gruppe {name} an {username} übertragen möchtest?", "notification": { @@ -436,20 +436,20 @@ "message": "Gruppe {group} erfolgreich an {user} übertragen" }, "error": { - "message": "Übertragung des Eigentums nicht möglich" + "message": "Eigentumsübertragung nicht möglich" } } }, "addMember": { - "label": "Mitglied hinzufügen" + "label": "Benutzer hinzufügen" }, "removeMember": { - "label": "Mitglied entfernen", + "label": "Benutzer entfernen", "confirm": "Bist du sicher, dass du {user} aus dieser Gruppe entfernen möchtest?" }, "delete": { "label": "Gruppe löschen", - "description": "Sobald Sie einen Arbeitsbereich löschen, gibt es keinen Weg sie wiederherzustellen. Bitte seien Sie sich dessen bewusst.", + "description": "Sobald Sie eine Gruppe gelöscht haben, gibt es kein Zurück mehr. Bitte seien Sie sich dessen bewusst.", "confirm": "Sind Sie sicher, dass Sie die Gruppe {name} löschen möchten?", "notification": { "success": { @@ -463,7 +463,7 @@ "changePermissions": { "notification": { "success": { - "title": "Berechtigungen gespeichert", + "title": "Die Berechtigungen wurden gespeichert", "message": "Berechtigungen wurden erfolgreich gespeichert" }, "error": { @@ -493,7 +493,7 @@ "list": { "title": "Apps", "noResults": { - "title": "Noch keine Apps vorhanden", + "title": "Es gibt noch keine Apps", "action": "Erstelle deine erste App" } }, @@ -506,7 +506,7 @@ }, "error": { "title": "Erstellung fehlgeschlagen", - "message": "Die App konnte nicht angelegt werden" + "message": "Die App konnte nicht erstellt werden" } } }, @@ -528,12 +528,12 @@ "message": "Sind Sie sicher, dass Sie die App {name} löschen möchten?", "notification": { "success": { - "title": "Löschen erfolgreich", + "title": "Erfolgreich gellöscht", "message": "Die App wurde erfolgreich gelöscht" }, "error": { "title": "Löschen fehlgeschlagen", - "message": "App konnte nicht gelöscht werden" + "message": "Die App konnte nicht gelöscht werden" } } } @@ -562,7 +562,7 @@ "title": "Integrationen", "search": "Integrationen durchsuchen", "noResults": { - "title": "Es gibt noch keine Integrationen" + "title": "Es wurden noch keine Integrationen erstellt" } }, "create": { @@ -579,7 +579,7 @@ } }, "edit": { - "title": "{name} Integration bearbeiten", + "title": "Neue {name} Integration", "notification": { "success": { "title": "Änderungen erfolgreich angewendet", @@ -596,8 +596,8 @@ "message": "Sind Sie sicher, dass Sie die Integration {name} löschen möchten?", "notification": { "success": { - "title": "Löschen erfolgreich", - "message": "Die Integration wurde erfolgreich erstellt" + "title": "Erfolgreich gellöscht", + "message": "Die Integration wurde erfolgreich gelöscht" }, "error": { "title": "Löschen fehlgeschlagen", @@ -630,26 +630,26 @@ }, "invalidUrl": { "title": "Ungültige URL", - "message": "Die Adresse ist ungültig" + "message": "Die URL ist ungültig" }, "secretNotDefined": { - "title": "Fehlende Anmeldedaten", - "message": "Nicht alle Zugangsdaten wurden angegeben" + "title": "Fehlende Anmeldeinformationen", + "message": "Es wurden nicht alle Zugangsdaten angegeben" }, "invalidCredentials": { "title": "Ungültige Zugangsdaten", "message": "Die Zugangsdaten sind ungültig" }, "commonError": { - "title": "Verbindungsaufbau fehlgeschlagen", + "title": "Verbindung fehlgeschlagen", "message": "Die Verbindung konnte nicht hergestellt werden" }, "badRequest": { - "title": "Fehlerhafte Anfrage", + "title": "Ungültige Anfrage", "message": "Die Anfrage war fehlerhaft" }, "unauthorized": { - "title": "Nicht autorisiert", + "title": "Unberechtigt", "message": "Wahrscheinlich falsche Anmeldeinformationen" }, "forbidden": { @@ -658,7 +658,7 @@ }, "notFound": { "title": "Nicht gefunden", - "message": "Wahrscheinlich falsche URL oder Pfad" + "message": "Wahrscheinlich falsche URL oder falscher Pfad" }, "internalServerError": { "title": "Interner Serverfehler", @@ -673,38 +673,38 @@ "message": "Die Verbindung wurde abgebrochen" }, "domainNotFound": { - "title": "Domain nicht gefunden", + "title": "Die Domain konnte nicht gefunden werden", "message": "Die Domain konnte nicht gefunden werden" }, "connectionRefused": { - "title": "Verbindung verweigert", + "title": "Verbindung abgelehnt", "message": "Die Verbindung wurde abgelehnt" }, "invalidJson": { "title": "Ungültiges JSON", - "message": "Die Antwort war ungültig JSON" + "message": "Die Antwort war kein gültiges JSON" }, "wrongPath": { - "title": "Falscher Pfad", - "message": "Der Pfad ist vermutlich nicht korrekt" + "title": "Ungültiger Pfad", + "message": "Der Pfad ist wahrscheinlich nicht korrekt" } } }, "secrets": { - "title": "Secrets", - "lastUpdated": "Zuletzt aktualisiert am {date}", + "title": "Geheimnisse", + "lastUpdated": "Zuletzt aktualisiert {date}", "notSet": { - "label": "Kein Wert festgelegt", - "tooltip": "Das erforderliche Secret wurde noch nicht festgelegt" + "label": "Kein Wert angegeben", + "tooltip": "Dieses erforderliche Geheimnis wurde noch nicht festgelegt" }, - "secureNotice": "Das Secret kann nicht nach der Erstellung abgerufen werden", + "secureNotice": "Dieses Geheimnis kann nach der Erstellung nicht mehr abgerufen werden", "reset": { - "title": "Secret zurücksetzen", + "title": "Geheimnis zurücksetzen", "message": "Bist du sicher, dass du dieses Secret zurücksetzen möchtest?" }, "noSecretsRequired": { - "segmentTitle": "Keine Secrets", - "text": "Kein Secret für diese Integration erforderlich" + "segmentTitle": "Keine Geheimnisse", + "text": "Für diese Integration sind keine Geheimnisse erforderlich" }, "kind": { "username": { @@ -713,7 +713,7 @@ }, "apiKey": { "label": "API Schlüssel", - "newLabel": "neuer API Schlüssel" + "newLabel": "Neuer API Schlüssel" }, "password": { "label": "Passwort", @@ -729,7 +729,7 @@ }, "media": { "plural": "Medien", - "search": "Medien suchen", + "search": "Medium finden", "field": { "name": "Name", "size": "Größe", @@ -737,7 +737,7 @@ }, "action": { "upload": { - "label": "Medien Hochladen", + "label": "Medium hochladen", "file": "Datei auswählen", "notification": { "success": { @@ -750,18 +750,18 @@ }, "delete": { "label": "Medium löschen", - "description": "Sind Sie sicher, dass Sie die Medien löschen möchten?", + "description": "Möchten Sie das Medium wirklich löschen?", "notification": { "success": { "message": "Das Medium wurde erfolgreich gelöscht" }, "error": { - "message": "Die Medien konnten nicht gelöscht werden" + "message": "Das Medium konnte nicht gelöscht werden" } } }, "copy": { - "label": "URL in Zwischenablage kopieren" + "label": "URL kopieren" } } }, @@ -774,7 +774,7 @@ "backToOverview": "Zurück zur Übersicht", "create": "Erstellen", "edit": "Bearbeiten", - "import": "Import", + "import": "Importieren", "insert": "Einfügen", "remove": "Entfernen", "save": "Speichern", @@ -786,15 +786,15 @@ "continue": "Fortfahren", "previous": "Zurück", "next": "Weiter", - "checkoutDocs": "Die Dokumentation ansehen", - "checkLogs": "Logs für weitere Details prüfen", + "checkoutDocs": "Sieh dir die Dokumentation an", + "checkLogs": "Überprüfen Sie die Logs für weitere Details", "tryAgain": "Erneut versuchen", - "loading": "Wird geladen" + "loading": "Wird geladen..." }, - "here": "Hier", + "here": "hier", "iconPicker": { "label": "Icon URL", - "header": "Geben Sie Namen oder Objekte ein, um nach Symbolen zu filtern... Homarr sucht nach {countIcons} Icons für Sie." + "header": "Geben Sie den Namen oder das Objekte ein, um nach Symbolen zu filtern ... Homarr durchsucht für Sie {countIcons} Symbole." }, "colorScheme": { "options": { @@ -815,7 +815,7 @@ "error": "Erstellung fehlgeschlagen" }, "delete": { - "success": "Löschen erfolgreich", + "success": "Erfolgreich gellöscht", "error": "Löschen fehlgeschlagen" }, "update": { @@ -828,7 +828,7 @@ } }, "multiSelect": { - "placeholder": "Wählen Sie einen oder mehrere Werte" + "placeholder": "Wählen Sie einen oder mehrere Werte aus" }, "multiText": { "placeholder": "Weitere Werte hinzufügen", @@ -850,14 +850,14 @@ "login": "Anmelden", "homeBoard": "Ihr Home Board", "loggedOut": "Abgemeldet", - "updateAvailable": "{countUpdates} Updates verfügbar: {tag}" + "updateAvailable": "{countUpdates} Aktualisierungen verfügbar: {tag}" } }, - "dangerZone": "Gefahrenbereich", + "dangerZone": "Gefahrenzone", "noResults": "Die Suche ergab keine Treffer", "preview": { - "show": "Vorschau ansehen", - "hide": "Vorschau ausblenden" + "show": "Vorschau anzeigen", + "hide": "Vorschau verbergen" }, "zod": { "errors": { @@ -881,8 +881,8 @@ "passwordsDoNotMatch": "Passwörter stimmen nicht überein", "passwordRequirements": "Passwort erfüllt nicht alle Anforderungen", "boardAlreadyExists": "Ein Board mit diesem Namen existiert bereits", - "invalidFileType": "Ungültiger Dateityp, erwartete {expected}", - "fileTooLarge": "Datei ist zu groß, maximale Größe ist {maxSize}", + "invalidFileType": "Ungültiger Dateityp, erwarte {expected}", + "fileTooLarge": "Die Datei ist zu groß. Die maximale Größe beträgt {maxSize}", "invalidConfiguration": "Ungültige Konfiguration", "groupNameTaken": "Gruppenname bereits vergeben" } @@ -903,7 +903,7 @@ "category": { "field": { "name": { - "label": "" + "label": "Name" } }, "action": { @@ -992,7 +992,7 @@ }, "widget": { "app": { - "name": "", + "name": "App", "description": "Bettet eine App in das Board ein.", "option": { "appId": { @@ -1029,7 +1029,7 @@ "label": "Ansicht", "option": { "row": { - "label": "" + "label": "Horizontal" }, "column": { "label": "Vertikal" @@ -1047,7 +1047,7 @@ }, "dnsHoleSummary": { "name": "", - "description": "Zeigt die Zusammenfassung deines DNS Holes an", + "description": "", "option": { "layout": { "label": "Ansicht", @@ -1059,27 +1059,27 @@ "label": "Vertikal" }, "grid": { - "label": "Raster" + "label": "" } } }, "usePiHoleColors": { - "label": "Pi Hole Farben verwenden" + "label": "" } }, "error": { - "internalServerError": "Fehler beim Abrufen der DNS Hole Zusammenfassung", - "integrationsDisconnected": "Keine Daten verfügbar, alle Integrationen getrennt" + "internalServerError": "", + "integrationsDisconnected": "" }, "data": { "adsBlockedToday": "Heute blockiert", "adsBlockedTodayPercentage": "Heute blockiert", - "dnsQueriesToday": "Abfragen heute", - "domainsBeingBlocked": "Domänen auf der Sperrliste" + "dnsQueriesToday": "Heutige Anfragen", + "domainsBeingBlocked": "" } }, "dnsHoleControls": { - "name": "DNS Hole Steuerung", + "name": "", "description": "Steuern Sie PiHole oder AdGuard von Ihrem Dashboard aus", "option": { "layout": { @@ -1092,26 +1092,26 @@ "label": "Vertikal" }, "grid": { - "label": "Raster" + "label": "" } } }, "showToggleAllButtons": { - "label": "Alle Schaltflächen anzeigen" + "label": "" } }, "error": { - "internalServerError": "Fehler bei der Kontrolle des DNS Holes" + "internalServerError": "" }, "controls": { - "enableAll": "Alle aktivieren", - "disableAll": "Alle deaktivieren", - "setTimer": "Timer setzen", - "set": "Übernehmen", + "enableAll": "", + "disableAll": "", + "setTimer": "", + "set": "Speichern", "enabled": "Aktiviert", "disabled": "Deaktiviert", - "processing": "Wird verarbeitet", - "disconnected": "Verbindung getrennt", + "processing": "", + "disconnected": "", "hours": "Stunden", "minutes": "Minuten", "unlimited": "Freilassen für unbegrenzt" @@ -1122,8 +1122,8 @@ "description": "Zeigt das aktuelle Datum und die Uhrzeit an.", "option": { "customTitleToggle": { - "label": "Eigene Titel/Stadt Anzeige", - "description": "Zeige einen benutzerdefinierten Titel oder den Namen der Stadt oder des Landes oben auf der Uhr." + "label": "Benutzerdefinierte Titel-/Stadtanzeige", + "description": "Zeigen Sie einen individuellen Titel oder den Namen der Stadt/des Landes oben auf der Uhr." }, "customTitle": { "label": "Titel" @@ -1140,7 +1140,7 @@ }, "timezone": { "label": "Zeitzone", - "description": "Wählen Sie die Zeitzone nach dem IANA-Standard" + "description": "Wählen Sie die Zeitzone gemäß dem IANA-Standard" }, "showDate": { "label": "Datum anzeigen" @@ -1183,7 +1183,7 @@ "checkList": "Checkliste", "increaseIndent": "Einzug vergrößern", "decreaseIndent": "Einzug verkleinern", - "link": "Verknüpfung", + "link": "Link", "unlink": "Link entfernen", "image": "Bild einbetten", "addTable": "Tabelle hinzufügen", @@ -1251,7 +1251,7 @@ }, "smartHome-entityState": { "name": "Zustand der Entität", - "description": "Zeigt den Status einer Entität an und schaltet ihn optional ein", + "description": "Den Status einer Entität anzeigen und optional umschalten", "option": { "entityId": { "label": "Eintrag-ID" @@ -1269,7 +1269,7 @@ }, "smartHome-executeAutomation": { "name": "Automatisierung ausführen", - "description": "Automatisierung mit einem Klick auslösen", + "description": "Lösen Sie eine Automatisierung mit einem Klick aus", "option": { "displayName": { "label": "Anzeigename" @@ -1298,7 +1298,7 @@ "label": "Start von" }, "filterFutureMonths": { - "label": "Endet am" + "label": "Endet um" } } }, @@ -1345,14 +1345,14 @@ } }, "indexerManager": { - "name": "Status des Index Managers", + "name": "Status des Indexer-Managers", "description": "Status des Indexer", "option": { "openIndexerSiteInNewTab": { "label": "Indexer Seite in neuem Tab öffnen" } }, - "title": "Index Manager", + "title": "Indexer-Manager", "testAll": "Alle testen", "error": { "internalServerError": "Fehler beim Abrufen des Indexer Status" @@ -1380,8 +1380,8 @@ "processor": "Prozessor: {cpuModelName}", "memory": "Speicher: {memory}GiB", "memoryAvailable": "Verfügbar: {memoryAvailable} GiB ({percent}%)", - "version": "", - "uptime": "Betriebszeit: {days} Tage, {hours} Stunden, {minutes} Minuten", + "version": "Version: {version}", + "uptime": "", "loadAverage": "Durchschnittliche Last:", "minute": "1 Minute", "minutes": "{count} Minuten", @@ -1401,7 +1401,7 @@ "longitude": "", "disabledTooltip": "", "unknownLocation": "", - "search": "Suche", + "search": "Suchen", "table": { "header": { "city": "", @@ -1436,7 +1436,7 @@ "description": "Einbetten eines Videostreams oder eines Videos von einer Kamera oder einer Website", "option": { "feedUrl": { - "label": "Feed URL" + "label": "Feed-URL" }, "hasAutoPlay": { "label": "Automatische Wiedergabe", @@ -1511,18 +1511,18 @@ "detailsTitle": "" }, "downSpeed": { - "columnTitle": "", + "columnTitle": "Down", "detailsTitle": "Download Geschwindigkeit" }, "index": { - "columnTitle": "#", - "detailsTitle": "Aktueller Index im Client" + "columnTitle": "", + "detailsTitle": "" }, "id": { "columnTitle": "" }, "integration": { - "columnTitle": "" + "columnTitle": "Integration" }, "name": { "columnTitle": "" @@ -1560,12 +1560,12 @@ "detailsTitle": "" }, "upSpeed": { - "columnTitle": "", + "columnTitle": "Up", "detailsTitle": "" } }, "states": { - "downloading": "Wird heruntergeladen", + "downloading": "Herunterladen", "queued": "In der Warteschlange", "paused": "Pausiert", "completed": "Abgeschlossen", @@ -1627,18 +1627,18 @@ "option": {}, "titles": { "stats": { - "main": "Medien Statistiken", + "main": "Medien-Statistiken", "approved": "Bereits genehmigt", "pending": "Ausstehende Freigaben", "processing": "", "declined": "", "available": "", - "tv": "TV Anfragen", - "movie": "Film Anfragen", + "tv": "TV-Anfragen", + "movie": "Film-Anfragen", "total": "Gesamt" }, "users": { - "main": "Top Nutzer", + "main": "Top-Nutzer", "requests": "" } } @@ -1655,11 +1655,11 @@ } }, "tab": { - "workers": "", + "workers": "Workers", "queue": "Warteschlange", "statistics": "Statistiken" }, - "currentIndex": "{start}-{end} von {total}", + "currentIndex": "", "healthCheck": { "title": "", "queued": "In der Warteschlange", @@ -1677,7 +1677,7 @@ "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "", + "videoCodecs": "Codecs", "videoContainers": "Container", "videoResolutions": "Auflösungen" }, @@ -1766,7 +1766,7 @@ "invalidError": "" }, "apps": { - "label": "", + "label": "Apps", "avoidDuplicates": { "label": "", "description": "" @@ -1889,10 +1889,10 @@ "label": "" }, "name": { - "label": "" + "label": "Name" }, "isPublic": { - "label": "Öffentlich", + "label": "Öffentlich sichtbar", "description": "" } }, @@ -1935,7 +1935,7 @@ } }, "dangerZone": { - "title": "Gefahrenbereich", + "title": "Gefahrenzone", "action": { "rename": { "label": "", @@ -2026,8 +2026,8 @@ "navbar": { "items": { "home": "Startseite", - "boards": "", - "apps": "", + "boards": "Boards", + "apps": "Apps", "integrations": "Integrationen", "searchEngies": "Suchmaschinen", "medias": "Medien", @@ -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": "Integrationen", - "app": "", + "app": "Apps", "group": "Gruppen" }, "statisticLabel": { - "boards": "", + "boards": "Boards", "resources": "", "authentication": "", "authorization": "" @@ -2113,7 +2113,7 @@ "createBoard": { "field": { "name": { - "label": "" + "label": "Name" } } } @@ -2130,7 +2130,7 @@ "title": "Allgemein", "item": { "language": "", - "board": "", + "board": "Home board", "firstDayOfWeek": "Erster Tag der Woche", "accessibility": "Barrierefreiheit" } @@ -2139,7 +2139,7 @@ "title": "Sicherheit" }, "board": { - "title": "" + "title": "Boards" } }, "list": { @@ -2184,7 +2184,7 @@ "action": { "new": { "title": "", - "description": "Nach Ablauf der Frist ist die Einladung nicht mehr gültig und der Empfänger der Einladung kann kein Konto mehr erstellen." + "description": "Nach Ablauf der Frist ist eine Einladung nicht mehr gültig und der Empfänger der Einladung kann kein Konto erstellen." }, "copy": { "title": "", @@ -2199,7 +2199,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Ersteller" @@ -2208,7 +2208,7 @@ "label": "Ablaufdatum" }, "token": { - "label": "" + "label": "Token" } } } @@ -2266,27 +2266,27 @@ } }, "crawlingAndIndexing": { - "title": "Suche und Indexiere", - "warning": "Das Aktivieren oder Deaktivieren von Einstellungen hier wird schwerwiegende Auswirkungen haben, wie Suchmaschinen Ihre Seite suchen und indizieren. Jede Einstellung startet eine Anforderung und es ist die Aufgabe des Crawlers, diese Einstellungen zu übernehmen. Änderungen können mehrere Tage oder Wochen dauern. Einige Einstellungen können Suchmaschinenspezifisch sein.", + "title": "", + "warning": "", "noIndex": { - "title": "Kein Index", - "text": "Die Webseite nicht in Suchmaschinen indizieren und in keinem Suchergebnis anzeigen" + "title": "", + "text": "" }, "noFollow": { - "title": "Keine Folgen", - "text": "Folgen Sie keine Links während der Indexierung. Deaktivieren kann dazu führen, dass Crawler versuchen, allen Links auf Homarr zu folgen." + "title": "", + "text": "" }, "noTranslate": { - "title": "Nicht Übersetzen", - "text": "Wenn die Sprache der Seite wahrscheinlich nicht zu lesen ist wird der Benutzer höchstwahrscheinlich wollen das Google einen Übersetzungslink in den Suchergebnissen zeigt" + "title": "", + "text": "" }, "noSiteLinksSearchBox": { - "title": "Kein Suchfeld für Seitenlinks", - "text": "Google baut ein Suchfeld mit den gecrawlten Links zusammen mit anderen direkten Links auf. Durch das Aktivieren dieser Option wird Google aufgefordert, dieses Feld zu deaktivieren." + "title": "", + "text": "" } }, "board": { - "title": "", + "title": "Boards", "homeBoard": { "label": "", "description": "" @@ -2315,7 +2315,7 @@ "title": "", "status": { "idle": "", - "running": "Wird ausgeführt", + "running": "Aktiv", "error": "Fehler" }, "job": { @@ -2350,7 +2350,7 @@ "label": "" }, "indexerManager": { - "label": "Index Manager" + "label": "" }, "healthMonitoring": { "label": "" @@ -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": "Integrationen", @@ -2576,7 +2576,7 @@ "label": "Medien" }, "apps": { - "label": "", + "label": "Apps", "new": { "label": "" }, @@ -2591,7 +2591,7 @@ }, "general": "Allgemein", "security": "Sicherheit", - "board": "", + "board": "Boards", "groups": { "label": "Gruppen" }, @@ -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" } } } @@ -2840,7 +2840,7 @@ "label": "Über" }, "homeBoard": { - "label": "" + "label": "Home board" }, "preferences": { "label": "Ihre Einstellungen" @@ -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 f8a385f15..a9e0c270f 100644 --- a/packages/translation/src/lang/el.json +++ b/packages/translation/src/lang/el.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "", + "label": "Token", "description": "" } }, @@ -124,7 +124,7 @@ }, "field": { "email": { - "label": "", + "label": "E-Mail", "verified": "" }, "username": { @@ -1678,7 +1678,7 @@ "savedSpace": "", "healthChecks": "", "videoCodecs": "Κωδικοποιητές", - "videoContainers": "", + "videoContainers": "Containers", "videoResolutions": "Αναλύσεις" }, "workers": { @@ -2042,9 +2042,9 @@ "tools": { "label": "Εργαλεία", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2208,7 +2208,7 @@ "label": "Ημερομηνία λήξης" }, "token": { - "label": "" + "label": "Token" } } } @@ -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 92f5ddfc0..f9c3afb22 100644 --- a/packages/translation/src/lang/es.json +++ b/packages/translation/src/lang/es.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "", + "label": "Token", "description": "" } }, @@ -767,7 +767,7 @@ }, "common": { "beta": "", - "error": "", + "error": "Error", "action": { "add": "Añadir", "apply": "Aplicar", @@ -1029,10 +1029,10 @@ "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": "" @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "", + "name": "iFrame", "description": "Incrusta cualquier contenido de Internet. Algunos sitios web pueden restringir el acceso.", "option": { "embedUrl": { @@ -1532,7 +1532,7 @@ "detailsTitle": "" }, "ratio": { - "columnTitle": "", + "columnTitle": "Ratio", "detailsTitle": "" }, "received": { @@ -1635,7 +1635,7 @@ "available": "", "tv": "Solicitudes de TV", "movie": "Solicitudes de películas", - "total": "" + "total": "Total" }, "users": { "main": "Mejores usuarios", @@ -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,7 +2217,7 @@ "back": "", "setting": { "general": { - "title": "", + "title": "General", "owner": "Propietario", "ownerOfGroup": "", "ownerOfGroupDeleted": "" @@ -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": "" } } @@ -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 6ab07d8ed..1cc4ce51a 100644 --- a/packages/translation/src/lang/fr.json +++ b/packages/translation/src/lang/fr.json @@ -2,130 +2,130 @@ "init": { "step": { "start": { - "title": "Bienvenue dans Homarr", - "subtitle": "Commençons par configurer votre instance Homarr.", - "description": "Pour commencer, veuillez selectionner comment vous souhaitez configurer votre instance Homarr.", + "title": "", + "subtitle": "", + "description": "", "action": { - "scratch": "Partir de zéro", - "importOldmarr": "Importer à partir d'Homarr avant la 1.0" + "scratch": "", + "importOldmarr": "" } }, "import": { - "title": "Importer des données", - "subtitle": "Vous pouvez importer des données depuis une instance Homarr existante.", + "title": "", + "subtitle": "", "dropzone": { - "title": "Déposez le fichier zip ici ou cliquez pour naviguer", - "description": "Le zip téléchargé sera traité et vous pourrez sélectionner ce que vous voulez importer" + "title": "", + "description": "" }, "fileInfo": { "action": { - "change": "Changer le fichier" + "change": "" } }, "importSettings": { - "title": "Importer des paramètres", - "description": "Configurer le comportement d'importation" + "title": "", + "description": "" }, "boardSelection": { - "title": "{count} tableaux trouvés", - "description": "Choisissez tous les tableaux avec la taille que vous souhaitez importer", + "title": "", + "description": "", "action": { - "selectAll": "Tout sélectionner", - "unselectAll": "Tout désélectionner" + "selectAll": "", + "unselectAll": "" } }, "summary": { - "title": "Résumé de l'importation", - "description": "Dans le résumé ci-dessous vous pouvez voir ce qui va être importé", + "title": "", + "description": "", "action": { - "import": "Confirmer l'importation et continuer" + "import": "" }, "entities": { "apps": "Applications", "boards": "Tableaux de bord", - "integrations": "Intégrations", + "integrations": "", "credentialUsers": "" } }, "tokenModal": { - "title": "Saisir le jeton d'importation", + "title": "", "field": { "token": { "label": "Jeton", - "description": "Entrez le jeton d'importation de votre instance précédente" + "description": "" } }, "notification": { "error": { - "title": "Jeton non valide", - "message": "Le jeton que vous avez saisi est invalide" + "title": "", + "message": "" } } } }, "user": { - "title": "Administrateur", - "subtitle": "Spécifiez les informations d'identification pour votre compte d'administrateur.", + "title": "", + "subtitle": "", "notification": { "success": { - "title": "Utilisateur créé", - "message": "L’utilisateur a été créé avec succès" + "title": "", + "message": "" }, "error": { - "title": "La création de l'utilisateur a échoué" + "title": "" } } }, "group": { - "title": "Groupe externe", + "title": "", "subtitle": "", "form": { "name": { - "label": "Nom du groupe", + "label": "", "description": "" } } }, "settings": { "title": "Paramètres", - "subtitle": "Configurer les paramètres du serveur." + "subtitle": "" }, "finish": { - "title": "Terminer la configuration", - "subtitle": "Vous êtes prêt !", - "description": "Vous avez terminé avec succès le processus d'installation. Vous pouvez maintenant commencer à utiliser Homarr. Sélectionnez votre prochaine action :", + "title": "", + "subtitle": "", + "description": "", "action": { "goToBoard": "", "createBoard": "", - "inviteUser": "Inviter d'autres utilisateurs", - "docs": "Lire la documentation" + "inviteUser": "", + "docs": "" } } }, - "backToStart": "Retour au début" + "backToStart": "" }, "user": { "title": "Utilisateurs", "name": "Utilisateur", "page": { "login": { - "title": "Connectez-vous à votre compte", - "subtitle": "Bon retour parmi nous ! Veuillez entrer vos identifiants" + "title": "", + "subtitle": "" }, "invite": { - "title": "Rejoindre Homarr", - "subtitle": "Bienvenue sur Homarr! Veuillez créer votre compte", - "description": "Vous avez été invité par {username}" + "title": "", + "subtitle": "", + "description": "" }, "init": { - "title": "Nouvelle installation Homarr", - "subtitle": "Veuillez créer l'utilisateur administrateur initial" + "title": "", + "subtitle": "" } }, "field": { "email": { "label": "Courriel", - "verified": "Vérifié" + "verified": "" }, "username": { "label": "Nom d'utilisateur" @@ -133,18 +133,18 @@ "password": { "label": "Mot de passe", "requirement": { - "length": "Contient au moins 8 caractères", + "length": "", "lowercase": "Inclut une lettre minuscule", "uppercase": "Inclut une lettre majuscule", "number": "Inclut un nombre", - "special": "Contient un symbole spécial" + "special": "" } }, "passwordConfirm": { "label": "Confirmation du mot de passe" }, "previousPassword": { - "label": "Ancien mot de passe" + "label": "" }, "homeBoard": { "label": "" @@ -154,25 +154,25 @@ } }, "error": { - "usernameTaken": "Nom d'utilisateur déjà utilisé" + "usernameTaken": "" }, "action": { "login": { "label": "Connexion", - "labelWith": "Se connecter avec {provider}", + "labelWith": "", "notification": { "success": { - "title": "Connexion réussie", - "message": "Vous êtes maintenant connecté" + "title": "", + "message": "" }, "error": { - "title": "Échec de la connexion", + "title": "", "message": "" } }, "forgotPassword": { - "label": "Mot de passe oublié?", - "description": "Un administrateur peut utiliser la commande suivante pour réinitialiser votre mot de passe :" + "label": "", + "description": "" } }, "register": { @@ -184,19 +184,19 @@ }, "error": { "title": "", - "message": "Votre compte n'a pas pu être créé" + "message": "" } } }, "create": "Créer un utilisateur", "changePassword": { - "label": "Changer le mot de passe", + "label": "", "notification": { "success": { - "message": "Mot de passe modifié avec succès" + "message": "" }, "error": { - "message": "Modification du mot de passe impossible" + "message": "" } } }, @@ -232,29 +232,29 @@ }, "manageAvatar": { "changeImage": { - "label": "Modifier l’image", + "label": "", "notification": { "success": { - "message": "L'image a été modifiée avec succès" + "message": "" }, "error": { - "message": "Impossible de modifier l'image" + "message": "" }, "toLarge": { - "title": "L'image est trop volumineuse", - "message": "La taille maximale de l'image est {size}" + "title": "", + "message": "" } } }, "removeImage": { - "label": "Retirer l'image", - "confirm": "Êtes-vous sûr de vouloir retirer cette image ?", + "label": "", + "confirm": "", "notification": { "success": { - "message": "Image retirée avec succès" + "message": "" }, "error": { - "message": "Impossible de retirer l'image" + "message": "" } } } @@ -262,42 +262,42 @@ "editProfile": { "notification": { "success": { - "message": "Profil mis à jour avec succès" + "message": "" }, "error": { - "message": "Impossible de mettre à jour le profil" + "message": "" } } }, "delete": { - "label": "Supprimer définitivement l'utilisateur", - "description": "Supprime cet utilisateur ainsi que ses préférences. Ne supprimera aucun tableau. L'utilisateur ne sera pas averti.", - "confirm": "Êtes-vous sûr de vouloir supprimer l'utilisateur {username} ainsi que ses préférences ?" + "label": "", + "description": "", + "confirm": "" }, "select": { - "label": "Sélectionner l'utilisateur", - "notFound": "Aucun utilisateur trouvé" + "label": "", + "notFound": "" }, "transfer": { - "label": "Choisir un nouveau propriétaire" + "label": "" } } }, "group": { - "title": "Groupes", - "name": "Groupe", - "search": "Trouver un groupe", + "title": "", + "name": "", + "search": "", "field": { "name": "Nom", - "members": "Membres" + "members": "" }, "permission": { "admin": { "title": "Admin", "item": { "admin": { - "label": "Administrateur", - "description": "Les membres avec cette permission ont un accès complet à toutes les fonctionnalités et paramètres" + "label": "", + "description": "" } } }, @@ -305,15 +305,15 @@ "title": "Applications", "item": { "create": { - "label": "Créer une app", - "description": "Autoriser les membres à créer des apps" + "label": "", + "description": "" }, "use-all": { - "label": "Utiliser toutes les apps", + "label": "", "description": "" }, "modify-all": { - "label": "Modifier toutes les apps", + "label": "", "description": "" }, "full-all": { @@ -344,11 +344,11 @@ } }, "integration": { - "title": "Intégrations", + "title": "", "item": { "create": { - "label": "Créer des intégrations", - "description": "Autoriser les membres à créer des intégrations" + "label": "", + "description": "" }, "use-all": { "label": "", @@ -365,37 +365,37 @@ } }, "media": { - "title": "Médias", + "title": "", "item": { "upload": { - "label": "Téléverser des médias", - "description": "Autoriser les membres à téléverser des médias" + "label": "", + "description": "" }, "view-all": { - "label": "Voir tous les médias", - "description": "Autoriser les membres à voir tous les médias" + "label": "", + "description": "" }, "full-all": { - "label": "Accès complet aux médias", - "description": "Autoriser les membres à gérer et supprimer les médias" + "label": "", + "description": "" } } }, "other": { - "title": "Autre", + "title": "", "item": { "view-logs": { - "label": "Voir les logs", - "description": "Autoriser les membres à voir les logs" + "label": "", + "description": "" } } }, "search-engine": { - "title": "Moteurs de recherche", + "title": "", "item": { "create": { - "label": "Créer des moteurs de recherche", - "description": "Autoriser les membres à créer des moteurs de recherche" + "label": "", + "description": "" }, "modify-all": { "label": "", @@ -413,62 +413,62 @@ "external": "" }, "reservedNotice": { - "message": "Ce groupe est réservé pour l'utilisation du système et restreint certaines actions. " + "message": "" }, "action": { "create": { - "label": "Nouveau groupe", + "label": "", "notification": { "success": { - "message": "Le groupe a été créé avec succès" + "message": "" }, "error": { - "message": "Le groupe n'a pas pu être créé" + "message": "" } } }, "transfer": { - "label": "Changer le propriétaire", - "description": "Transférer la propriété de ce groupe à un autre utilisateur.", - "confirm": "Êtes-vous sûr de vouloir transférer la propriété du groupe {name} à {username}?", + "label": "", + "description": "", + "confirm": "", "notification": { "success": { - "message": "Le groupe {group} a été transféré avec succès à {user}" + "message": "" }, "error": { - "message": "Impossible de transférer la propriété" + "message": "" } } }, "addMember": { - "label": "Ajouter un membre" + "label": "" }, "removeMember": { - "label": "Retirer un membre", - "confirm": "Êtes-vous sûr de vouloir retirer {user} de ce groupe ?" + "label": "", + "confirm": "" }, "delete": { - "label": "Supprimer le groupe", - "description": "Une fois que vous supprimez un groupe, il n'y a pas de retour en arrière possible. Soyez certain.", - "confirm": "Êtes-vous sûr de vouloir supprimer le groupe {name}?", + "label": "", + "description": "", + "confirm": "", "notification": { "success": { - "message": "Groupe {name} supprimé avec succès" + "message": "" }, "error": { - "message": "Impossible de supprimer le groupe {name}" + "message": "" } } }, "changePermissions": { "notification": { "success": { - "title": "Permissions sauvegardées", - "message": "Les permissions ont été sauvegardées avec succès" + "title": "", + "message": "" }, "error": { - "title": "Permissions non sauvegardées", - "message": "Les permissions n'ont pas été sauvegardées" + "title": "", + "message": "" } } }, @@ -483,8 +483,8 @@ } }, "select": { - "label": "Sélectionner un groupe", - "notFound": "Aucun groupe trouvé" + "label": "", + "notFound": "" } } }, @@ -493,16 +493,16 @@ "list": { "title": "Applications", "noResults": { - "title": "Il n'y a pas encore d'apps", - "action": "Créer votre première app" + "title": "", + "action": "" } }, "create": { - "title": "Nouvelle app", + "title": "", "notification": { "success": { - "title": "Créé avec succès", - "message": "L'application a bien été créée" + "title": "", + "message": "" }, "error": { "title": "", @@ -518,17 +518,17 @@ "message": "" }, "error": { - "title": "Impossible d'appliquer les changements", + "title": "", "message": "" } } }, "delete": { - "title": "Supprimer l'app", - "message": "Êtes-vous sûr de vouloir supprimer l'app {name}?", + "title": "", + "message": "", "notification": { "success": { - "title": "Suppression effectuée avec succès", + "title": "", "message": "" }, "error": { @@ -543,23 +543,23 @@ "label": "Nom" }, "description": { - "label": "Description" + "label": "" }, "url": { - "label": "Url" + "label": "" } }, "action": { "select": { - "label": "Sélectionner l'app", - "notFound": "Aucune app trouvée" + "label": "", + "notFound": "" } } }, "integration": { "page": { "list": { - "title": "Intégrations", + "title": "", "search": "", "noResults": { "title": "" @@ -569,7 +569,7 @@ "title": "", "notification": { "success": { - "title": "Créé avec succès", + "title": "", "message": "" }, "error": { @@ -611,37 +611,37 @@ "label": "Nom" }, "url": { - "label": "Url" + "label": "" } }, "action": { - "create": "Nouvelle intégration" + "create": "" }, "testConnection": { "action": { - "create": "Tester la connexion et créer", - "edit": "Tester la connexion et enregistrer" + "create": "", + "edit": "" }, - "alertNotice": "Le bouton Enregistrer est activé une fois qu'une connexion est établie avec succès", + "alertNotice": "", "notification": { "success": { - "title": "Connexion réussie", - "message": "La connexion a été établie avec succès" + "title": "", + "message": "" }, "invalidUrl": { "title": "URL invalide", - "message": "L'URL est invalide." + "message": "" }, "secretNotDefined": { - "title": "Identifiants manquants", - "message": "Les informations d'identification n'ont pas toutes été fournies" + "title": "", + "message": "" }, "invalidCredentials": { - "title": "Informations d'identification incorrectes.", - "message": "Les informations d'identification ne sont pas valides" + "title": "", + "message": "" }, "commonError": { - "title": "Échec de la connexion", + "title": "", "message": "" }, "badRequest": { @@ -709,11 +709,11 @@ "kind": { "username": { "label": "Nom d'utilisateur", - "newLabel": "Nouveau nom d'utilisateur" + "newLabel": "" }, "apiKey": { - "label": "Clé API", - "newLabel": "Nouvelle clé API" + "label": "", + "newLabel": "" }, "password": { "label": "Mot de passe", @@ -761,12 +761,12 @@ } }, "copy": { - "label": "Copier l'URL" + "label": "" } } }, "common": { - "beta": "Bêta", + "beta": "", "error": "Erreur", "action": { "add": "Ajouter", @@ -774,7 +774,7 @@ "backToOverview": "", "create": "Créer", "edit": "Modifier", - "import": "Importer", + "import": "", "insert": "Insérer", "remove": "Supprimer", "save": "Sauvegarder", @@ -783,29 +783,29 @@ "delete": "Supprimer", "discard": "", "confirm": "Confirmer", - "continue": "Continuer", + "continue": "", "previous": "Précédent", "next": "Suivant", - "checkoutDocs": "Voir la documentation", - "checkLogs": "Vérifiez les logs pour plus de détails", + "checkoutDocs": "", + "checkLogs": "", "tryAgain": "Réessayer", - "loading": "Chargement" + "loading": "" }, - "here": "ici", + "here": "", "iconPicker": { "label": "", "header": "" }, "colorScheme": { "options": { - "light": "Clair", - "dark": "Sombre" + "light": "", + "dark": "" } }, "information": { - "min": "Min", - "max": "Max", - "days": "Jours", + "min": "", + "max": "", + "days": "", "hours": "Heures", "minutes": "Minutes" }, @@ -832,7 +832,7 @@ }, "multiText": { "placeholder": "", - "addLabel": "Ajouter {value}" + "addLabel": "" }, "select": { "placeholder": "", @@ -842,11 +842,11 @@ }, "userAvatar": { "menu": { - "switchToDarkMode": "Activer le mode sombre", - "switchToLightMode": "Activer le mode clair", - "management": "Administration", + "switchToDarkMode": "", + "switchToLightMode": "", + "management": "", "preferences": "Vos préférences", - "logout": "Se déconnecter", + "logout": "", "login": "Connexion", "homeBoard": "", "loggedOut": "", @@ -992,7 +992,7 @@ }, "widget": { "app": { - "name": "App", + "name": "", "description": "", "option": { "appId": { @@ -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", @@ -1677,7 +1677,7 @@ "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "", + "videoCodecs": "Codecs", "videoContainers": "Conteneurs", "videoResolutions": "Résolutions" }, @@ -1685,7 +1685,7 @@ "empty": "Vide", "table": { "file": "Fichier", - "eta": "", + "eta": "ETA", "progress": "Progrès", "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,7 +2199,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Créateur" @@ -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": "" @@ -2676,8 +2676,8 @@ "title": "", "option": { "colorScheme": { - "light": "Activer le mode clair", - "dark": "Activer le mode sombre" + "light": "", + "dark": "" }, "language": { "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 ef2c269ca..47693255d 100644 --- a/packages/translation/src/lang/he.json +++ b/packages/translation/src/lang/he.json @@ -92,7 +92,7 @@ }, "finish": { "title": "סיים את ההגדרה", - "subtitle": "", + "subtitle": "המערכת מוכנה לפעולה!", "description": "השלמת בהצלחה את תהליך ההגדרה. כעת תוכל להתחיל להשתמש ב-Homarr. בחר את הפעולה הבאה שלך:", "action": { "goToBoard": "עבור ללוח {name}", @@ -449,7 +449,7 @@ }, "delete": { "label": "מחק קבוצה", - "description": "", + "description": "ברגע שתמחק/י קבוצה, לא ניתן יהיה לחזור אחורה. אנא ודא/י זאת בוודאות.", "confirm": "האם אתה בטוח שברצונך למחוק את הקבוצה {name}?", "notification": { "success": { @@ -634,86 +634,86 @@ }, "secretNotDefined": { "title": "חסרים פרטי התחברות", - "message": "" + "message": "לא סופקו כל פרטי ההתחברות" }, "invalidCredentials": { - "title": "", - "message": "" + "title": "פרטי התחברות שגויים", + "message": "פרטי ההתחברות אינם חוקיים" }, "commonError": { - "title": "", - "message": "" + "title": "החיבור נכשל", + "message": "לא ניתן היה ליצור את החיבור" }, "badRequest": { - "title": "", - "message": "" + "title": "בקשה שגויה", + "message": "הבקשה הייתה שגויה" }, "unauthorized": { - "title": "", - "message": "" + "title": "לא מורשה", + "message": "כנראה פרטי התחברות שגויים" }, "forbidden": { - "title": "", - "message": "" + "title": "אסור", + "message": "כנראה חסרות הרשאות" }, "notFound": { - "title": "", - "message": "" + "title": "לא נמצא", + "message": "כנראה כתובת אתר או נתיב שגויים" }, "internalServerError": { - "title": "", - "message": "" + "title": "שגיאת שרת פנימית", + "message": "השרת נתקל בשגיאה" }, "serviceUnavailable": { - "title": "", - "message": "" + "title": "השירות אינו זמין", + "message": "השרת אינו זמין כרגע" }, "connectionAborted": { - "title": "", - "message": "" + "title": "החיבור הופסק", + "message": "החיבור בוטל" }, "domainNotFound": { - "title": "", - "message": "" + "title": "הדומיין לא נמצא", + "message": "לא ניתן למצוא את הדומיין" }, "connectionRefused": { - "title": "", - "message": "" + "title": "החיבור נדחה", + "message": "החיבור נדחה" }, "invalidJson": { - "title": "", - "message": "" + "title": "JSON לא חוקי", + "message": "התגובה לא הייתה JSON חוקי" }, "wrongPath": { - "title": "", - "message": "" + "title": "נתיב שגוי", + "message": "כנראה שהנתיב שגוי" } } }, "secrets": { - "title": "", - "lastUpdated": "", + "title": "נתוני גישה", + "lastUpdated": "עדכון אחרון {date}", "notSet": { - "label": "", - "tooltip": "" + "label": "לא הוגדר ערך", + "tooltip": "נתון הגישה הנדרש עדיין לא נקבע" }, - "secureNotice": "", + "secureNotice": "לא ניתן לאחזר את נתון הגישה לאחר היצירה", "reset": { - "title": "", - "message": "" + "title": "איפוס נתון גישה", + "message": "האם את/ה בטוח/ה שברצונך למחוק את נתון הגישה הזה?" }, "noSecretsRequired": { - "segmentTitle": "", - "text": "" + "segmentTitle": "אין נתוני גישה", + "text": "לא נדרשים נתוני גישה לאינטגרציה זו" }, "kind": { "username": { "label": "שם משתמש", - "newLabel": "" + "newLabel": "שם משתמש חדש" }, "apiKey": { - "label": "", - "newLabel": "" + "label": "מפתח API", + "newLabel": "מפתח API חדש" }, "password": { "label": "סיסמה", @@ -722,14 +722,14 @@ } }, "permission": { - "use": "", - "interact": "", + "use": "בחר אינטגרציות בפריטים", + "interact": "אינטראקציה עם אינטגרציות", "full": "גישת אינטגרציה מלאה" } }, "media": { "plural": "מדיה", - "search": "", + "search": "מצא מדיה", "field": { "name": "שם", "size": "גודל", @@ -737,75 +737,75 @@ }, "action": { "upload": { - "label": "", - "file": "", + "label": "העלה מדיה", + "file": "בחר קובץ", "notification": { "success": { - "message": "" + "message": "המדיה הועלתה בהצלחה" }, "error": { - "message": "" + "message": "לא ניתן היה להעלות את המדיה" } } }, "delete": { - "label": "", - "description": "", + "label": "מחק מדיה", + "description": "האם אתה בטוח שברצונך למחוק את המדיה ?", "notification": { "success": { - "message": "" + "message": "המדיה נמחקה בהצלחה" }, "error": { - "message": "" + "message": "לא ניתן למחוק את המדיה" } } }, "copy": { - "label": "" + "label": "העתק קישור" } } }, "common": { - "beta": "", + "beta": "בטא", "error": "שגיאה", "action": { "add": "הוסף", "apply": "החל", - "backToOverview": "", + "backToOverview": "חזרה לסקירה כללית", "create": "צור", "edit": "עריכה", - "import": "", + "import": "ייבוא", "insert": "הוספה", "remove": "הסר", "save": "שמור", "saveChanges": "שמור שינויים", "cancel": "בטל", "delete": "מחיקה", - "discard": "", + "discard": "ביטול", "confirm": "לאשר", - "continue": "", + "continue": "המשך", "previous": "הקודם", "next": "הבא", - "checkoutDocs": "", - "checkLogs": "", + "checkoutDocs": "בדוק את התיעוד", + "checkLogs": "בדוק לוגים לפרטים נוספים", "tryAgain": "נא לנסות שוב", - "loading": "" + "loading": "טוען" }, - "here": "", + "here": "כאן", "iconPicker": { - "label": "", - "header": "" + "label": "קישור של הסמל", + "header": "הקלד שם או אובייקטים לסינון עבור אייקונים... Homarr יחפש עבורך סמלים של {countIcons} ." }, "colorScheme": { "options": { - "light": "", - "dark": "" + "light": "בהיר", + "dark": "כהה" } }, "information": { - "min": "", - "max": "", - "days": "", + "min": "מינימום", + "max": "מקסימום", + "days": "ימים", "hours": "שעות", "minutes": "דקות" }, @@ -823,41 +823,41 @@ "error": "לא ניתן להחיל שינויים" }, "transfer": { - "success": "", - "error": "" + "success": "הועבר בהצלחה", + "error": "ההעברה נכשלה" } }, "multiSelect": { - "placeholder": "" + "placeholder": "בחר ערך אחד או יותר" }, "multiText": { - "placeholder": "", - "addLabel": "" + "placeholder": "הוסף עוד ערכים", + "addLabel": "הוסף {value}" }, "select": { - "placeholder": "", + "placeholder": "בחר ערך", "badge": { - "recommended": "" + "recommended": "מומלץ" } }, "userAvatar": { "menu": { - "switchToDarkMode": "", - "switchToLightMode": "", - "management": "", + "switchToDarkMode": "עבור למצב כהה", + "switchToLightMode": "עבור למצב בהיר", + "management": "ניהול", "preferences": "העדפות שלך", - "logout": "", + "logout": "התנתק/י", "login": "התחבר/י", - "homeBoard": "", - "loggedOut": "", - "updateAvailable": "" + "homeBoard": "לוח הבית שלך", + "loggedOut": "נותקת מהמערכת", + "updateAvailable": "{countUpdates} עדכונים זמינים: {tag}" } }, "dangerZone": "אזור מסוכן", "noResults": "לא נמצאו תוצאות", "preview": { - "show": "", - "hide": "" + "show": "הצג תצוגה מקדימה", + "hide": "הסתר תצוגה המקדימה" }, "zod": { "errors": { @@ -867,7 +867,7 @@ "startsWith": "שדה זה חייב להתחיל עם {startsWith}", "endsWith": "שדה זה חייב להסתיים עם {endsWith}", "includes": "שדה זה חייב להכיל {includes}", - "invalidEmail": "" + "invalidEmail": "שדה זה חייב להיות דוא\"ל חוקי" }, "tooSmall": { "string": "שדה זה חייב להיות באורך של {minimum} תווים לפחות", @@ -878,13 +878,13 @@ "number": "שדה זה חייב להיות קטן או שווה ל {maximum}" }, "custom": { - "passwordsDoNotMatch": "", - "passwordRequirements": "", - "boardAlreadyExists": "", - "invalidFileType": "", - "fileTooLarge": "", - "invalidConfiguration": "", - "groupNameTaken": "" + "passwordsDoNotMatch": "סיסמאות לא תואמות", + "passwordRequirements": "הסיסמה אינה עומדת בדרישות", + "boardAlreadyExists": "לוח בשם זה כבר קיים", + "invalidFileType": "סוג קובץ לא חוקי, צפוי {expected}", + "fileTooLarge": "הקובץ גדול מדי, הגודל המרבי הוא {maxSize}", + "invalidConfiguration": "תצורה לא חוקית", + "groupNameTaken": "שם הקבוצה כבר תפוס" } } } @@ -892,12 +892,12 @@ "section": { "dynamic": { "action": { - "create": "", - "remove": "" + "create": "מדור דינמי חדש", + "remove": "הסר קטע דינמי" }, "remove": { - "title": "", - "message": "" + "title": "הסר קטע דינמי", + "message": "האם אתה בטוח שברצונך להסיר את הקטע הדינמי הזה? פריטים יועברו לאותו מיקום במדור האב." } }, "category": { @@ -907,29 +907,29 @@ } }, "action": { - "create": "", - "edit": "", - "remove": "", + "create": "קטגוריה חדשה", + "edit": "שנה את שם הקטגוריה", + "remove": "הסר קטגוריה", "moveUp": "הזזה למעלה", "moveDown": "הזזה למטה", - "createAbove": "", - "createBelow": "" + "createAbove": "קטגוריה חדשה למעלה", + "createBelow": "קטגוריה חדשה למטה" }, "create": { - "title": "", - "submit": "" + "title": "קטגוריה חדשה", + "submit": "הוסף קטגוריה" }, "remove": { - "title": "", - "message": "" + "title": "הסר קטגוריה", + "message": "האם אתה בטוח שברצונך להסיר את הקטגוריה {name}?" }, "edit": { - "title": "", - "submit": "" + "title": "שנה את שם הקטגוריה", + "submit": "שנה את שם הקטגוריה" }, "menu": { "label": { - "create": "", + "create": "קטגוריה חדשה", "changePosition": "שנה מיקום" } } @@ -937,12 +937,12 @@ }, "item": { "action": { - "create": "", - "import": "", - "edit": "", - "moveResize": "", - "duplicate": "", - "remove": "" + "create": "פריט חדש", + "import": "ייבוא פריט", + "edit": "ערוך פריט", + "moveResize": "הזז/שנה גודל פריט", + "duplicate": "שכפול פריט", + "remove": "הסרת פריט" }, "menu": { "label": { @@ -950,11 +950,11 @@ } }, "create": { - "title": "", - "addToBoard": "" + "title": "בחירת פריט להוספה", + "addToBoard": "הוספה ללוח" }, "moveResize": { - "title": "", + "title": "הזז/שנה גודל פריט", "field": { "width": { "label": "רוחב" @@ -963,67 +963,67 @@ "label": "גובה" }, "xOffset": { - "label": "" + "label": "היסט X" }, "yOffset": { - "label": "" + "label": "היסט Y" } } }, "edit": { - "title": "", + "title": "ערוך פריט", "advancedOptions": { - "label": "", - "title": "" + "label": "אפשרויות מתקדמות", + "title": "אפשרויות פריט מתקדמות" }, "field": { "integrations": { "label": "אינטגרציות" }, "customCssClasses": { - "label": "" + "label": "מחלקות עיצוב מותאמות אישית" } } }, "remove": { - "title": "", - "message": "" + "title": "הסרת פריט", + "message": "האם אתה בטוח שברצונך להסיר פריט זה?" } }, "widget": { "app": { - "name": "", - "description": "", + "name": "אפליקציה", + "description": "הטמעת אפליקציה בלוח.", "option": { "appId": { - "label": "" + "label": "בחר אפליקציה" }, "openInNewTab": { "label": "פתיחה בכרטיסיה חדשה" }, "showTitle": { - "label": "" + "label": "הצג את שם האפליקציה" }, "showDescriptionTooltip": { - "label": "" + "label": "הצג תיאור" }, "pingEnabled": { - "label": "" + "label": "אפשר פינג פשוט" } }, "error": { "notFound": { - "label": "", - "tooltip": "" + "label": "אין אפליקציה", + "tooltip": "לא נבחרה אפליקציה חוקית" } } }, "bookmarks": { - "name": "", - "description": "", + "name": "סימניות", + "description": "מציג קישורי אפליקציות מרובים", "option": { "title": { - "label": "" + "label": "כותרת" }, "layout": { "label": "פריסה", @@ -1035,19 +1035,19 @@ "label": "אנכי" }, "grid": { - "label": "" + "label": "רשת" } } }, "items": { - "label": "", - "add": "" + "label": "סימניות", + "add": "הוסף סימניה" } } }, "dnsHoleSummary": { - "name": "", - "description": "", + "name": "סיכום חור אבטחה DNS", + "description": "מציג את הסיכום חור אבטחת DNS שלך", "option": { "layout": { "label": "פריסה", @@ -1059,27 +1059,27 @@ "label": "אנכי" }, "grid": { - "label": "" + "label": "רשת" } } }, "usePiHoleColors": { - "label": "" + "label": "השתמש בצבעי Pi-Hole" } }, "error": { - "internalServerError": "", - "integrationsDisconnected": "" + "internalServerError": "אחזור סיכום החור אבטחת DNS נכשל", + "integrationsDisconnected": "אין נתונים זמינים, כל האינטגרציות מנותקות" }, "data": { "adsBlockedToday": "נחסמו היום", "adsBlockedTodayPercentage": "נחסמו היום", "dnsQueriesToday": "שאילתות היום", - "domainsBeingBlocked": "" + "domainsBeingBlocked": "דומיינים ברשימת החסימה" } }, "dnsHoleControls": { - "name": "", + "name": "בקרות חור אבטחת DNS", "description": "שלוט ב-PiHole או ב-AdGuard מלוח המחוונים שלך", "option": { "layout": { @@ -1092,68 +1092,68 @@ "label": "אנכי" }, "grid": { - "label": "" + "label": "רשת" } } }, "showToggleAllButtons": { - "label": "" + "label": "הצג את כל הלחצנים" } }, "error": { - "internalServerError": "" + "internalServerError": "השליטה בחור אבטחת DNS נכשלה" }, "controls": { - "enableAll": "", - "disableAll": "", - "setTimer": "", + "enableAll": "אפשר הכל", + "disableAll": "השבת הכל", + "setTimer": "הגדר טיימר", "set": "הגדר", "enabled": "מאופשר", "disabled": "מושבת", - "processing": "", - "disconnected": "", + "processing": "מעבד", + "disconnected": "מנותק", "hours": "שעות", "minutes": "דקות", - "unlimited": "" + "unlimited": "השאר ריק עבור ללא הגבלה" } }, "clock": { - "name": "", + "name": "תאריך ושעה", "description": "מציג את התאריך והשעה הנוכחיים.", "option": { "customTitleToggle": { - "label": "", - "description": "" + "label": "תצוגת כותרת/עיר מותאמת אישית", + "description": "הצג כותרת מותאמת אישית או שם העיר/המדינה על גבי השעון." }, "customTitle": { - "label": "" + "label": "כותרת" }, "is24HourFormat": { - "label": "", - "description": "" + "label": "פורמט 24 שעות", + "description": "השתמש בפורמט של 24 שעות במקום בפורמט של 12 שעות" }, "showSeconds": { - "label": "" + "label": "הצג שניות" }, "useCustomTimezone": { - "label": "" + "label": "השתמש באזור זמן קבוע" }, "timezone": { "label": "אזור זמן", - "description": "" + "description": "בחר את אזור הזמן בהתאם לתקן IANA" }, "showDate": { - "label": "" + "label": "הצג את התאריך" }, "dateFormat": { - "label": "", - "description": "" + "label": "פורמט תאריך", + "description": "איך צריך להיראות התאריך" } } }, "notebook": { "name": "פנקס רשימות", - "description": "", + "description": "ווידג'ט פשוט של מחברת התומך ב-markdown", "option": { "showToolbar": { "label": "הצג את סרגל הכלים לסיוע כתיבת סימון" @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "", + "name": "iFrame", "description": "הטמע כל תוכן מהאינטרנט. חלק מהאתרים עשויים להגביל את הגישה.", "option": { "embedUrl": { @@ -1245,31 +1245,31 @@ } }, "error": { - "noUrl": "", + "noUrl": "לא סופק קישור של iFrame", "noBrowerSupport": "הדפדפן שלך אינו תומך ב-iframes. נא עדכן את הדפדפן שלך." } }, "smartHome-entityState": { - "name": "", - "description": "", + "name": "מצב ישות", + "description": "הצג את המצב של ישות והחלף אותו באופן אופציונלי", "option": { "entityId": { "label": "מזהה ישות" }, "displayName": { - "label": "" + "label": "שם תצוגה" }, "entityUnit": { - "label": "" + "label": "יחידת ישות" }, "clickable": { - "label": "" + "label": "ניתן ללחיצה" } } }, "smartHome-executeAutomation": { - "name": "", - "description": "", + "name": "הפעל אוטומציה", + "description": "הפעל אוטומציה בלחיצה אחת", "option": { "displayName": { "label": "הצג שם" @@ -1279,26 +1279,26 @@ } }, "spotlightAction": { - "run": "" + "run": "הפעל {name}" } }, "calendar": { "name": "לוח שנה", - "description": "", + "description": "הצג אירועים מהאינטגרציות שלך בתצוגת לוח שנה בתוך פרק זמן יחסי מסוים", "option": { "releaseType": { "label": "סוג שחרור של Radarr", "options": { - "inCinemas": "", - "digitalRelease": "", - "physicalRelease": "" + "inCinemas": "בבתי קולנוע", + "digitalRelease": "שחרור דיגיטלי", + "physicalRelease": "שחרור פיזי" } }, "filterPastMonths": { - "label": "" + "label": "התחל מ" }, "filterFutureMonths": { - "label": "" + "label": "סיים ב" } } }, @@ -1307,24 +1307,24 @@ "description": "מציג את מידע מזג האוויר הנוכחי של מיקום מוגדר.", "option": { "isFormatFahrenheit": { - "label": "" + "label": "טמפרטורה בפרנהייט" }, "location": { "label": "מיקום מזג האוויר" }, "showCity": { - "label": "" + "label": "הצג עיר" }, "hasForecast": { - "label": "" + "label": "הצג תחזית" }, "forecastDayCount": { - "label": "", - "description": "" + "label": "כמות ימי התחזית", + "description": "כאשר הווידג'ט אינו רחב מספיק, פחות ימים מוצגים" }, "dateFormat": { - "label": "", - "description": "" + "label": "פורמט תאריך", + "description": "איך צריך להיראות התאריך" } }, "kind": { @@ -1346,16 +1346,16 @@ }, "indexerManager": { "name": "סטטוס מנהל אינדקס", - "description": "", + "description": "מצב האינדקסים שלך", "option": { "openIndexerSiteInNewTab": { - "label": "" + "label": "פתח את אתר האינדקס בכרטיסייה חדשה" } }, "title": "מנהל אינדקס", "testAll": "בדוק הכל", "error": { - "internalServerError": "" + "internalServerError": "נכשל באחזור סטטוס האינדקסים" } }, "healthMonitoring": { @@ -1376,41 +1376,41 @@ } }, "popover": { - "information": "", - "processor": "", - "memory": "", - "memoryAvailable": "", - "version": "", + "information": "מידע", + "processor": "מעבד: {cpuModelName}", + "memory": "זיכרון: {memory}GiB", + "memoryAvailable": "זמין: {memoryAvailable}GiB ({percent}%)", + "version": "גרסה: {version}", "uptime": "", - "loadAverage": "", - "minute": "", - "minutes": "", - "used": "", + "loadAverage": "ממוצע עומס:", + "minute": "דקה אחת", + "minutes": "{count} דקות", + "used": "בשימוש", "available": "זמין", - "lastSeen": "" + "lastSeen": "עדכון סטטוס אחרון: {lastSeen}" }, "memory": {}, "error": { - "internalServerError": "" + "internalServerError": "נכשל בעדכון סטטוס בריאות המערכת" } }, "common": { "location": { - "query": "", - "latitude": "", - "longitude": "", - "disabledTooltip": "", - "unknownLocation": "", + "query": "עיר / מיקוד", + "latitude": "קו רוחב", + "longitude": "קו אורך", + "disabledTooltip": "אנא הזן עיר או מיקוד", + "unknownLocation": "מיקום לא ידוע", "search": "חיפוש", "table": { "header": { - "city": "", - "country": "", - "coordinates": "", - "population": "" + "city": "עיר", + "country": "מדינה", + "coordinates": "קואורדינטות", + "population": "אוכלוסיה" }, "action": { - "select": "" + "select": "בחר {city}, {countryCode}" }, "population": { "fallback": "לא ידוע" @@ -1418,16 +1418,16 @@ } }, "integration": { - "noData": "", - "description": "" + "noData": "לא נמצא אינטגרציה", + "description": "לחץ על כדי ליצור אינטגרציה חדשה" }, "app": { "noData": "לא נמצאה אפליקציה", - "description": "" + "description": "לחץ על כדי ליצור אפליקציה חדשה" }, "error": { - "noIntegration": "", - "noData": "" + "noIntegration": "לא נבחרה אינטגרציה", + "noData": "אין נתוני אינטגרציה זמינים" }, "option": {} }, @@ -1570,7 +1570,7 @@ "paused": "מושהה", "completed": "הושלם", "failed": "", - "processing": "", + "processing": "מעבד", "leeching": "", "stalled": "", "unknown": "לא ידוע", @@ -1615,7 +1615,7 @@ "availability": { "unknown": "לא ידוע", "pending": "", - "processing": "", + "processing": "מעבד", "partiallyAvailable": "חלקי", "available": "זמין" }, @@ -2013,7 +2013,7 @@ } }, "management": { - "metaTitle": "", + "metaTitle": "ניהול", "title": { "morning": "", "afternoon": "", @@ -2297,8 +2297,8 @@ "defaultColorScheme": { "label": "", "options": { - "light": "", - "dark": "" + "light": "בהיר", + "dark": "כהה" } } }, @@ -2676,8 +2676,8 @@ "title": "", "option": { "colorScheme": { - "light": "", - "dark": "" + "light": "עבור למצב בהיר", + "dark": "עבור למצב כהה" }, "language": { "label": "", diff --git a/packages/translation/src/lang/hr.json b/packages/translation/src/lang/hr.json index d70a830d2..8f74dda7b 100644 --- a/packages/translation/src/lang/hr.json +++ b/packages/translation/src/lang/hr.json @@ -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": { @@ -1685,7 +1685,7 @@ "empty": "Isprazni", "table": { "file": "", - "eta": "", + "eta": "ETA", "progress": "Napredak", "transcode": "", "healthCheck": "" @@ -2042,7 +2042,7 @@ "tools": { "label": "Alati", "items": { - "docker": "", + "docker": "Docker", "logs": "", "api": "", "tasks": "" @@ -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 f1a22dd50..e1a231fa9 100644 --- a/packages/translation/src/lang/hu.json +++ b/packages/translation/src/lang/hu.json @@ -51,7 +51,7 @@ "title": "Import token megadása", "field": { "token": { - "label": "", + "label": "Token", "description": "Írja be a megjelenített import tokent az előző homarr példányból" } }, @@ -546,7 +546,7 @@ "label": "Leírás" }, "url": { - "label": "" + "label": "Url" } }, "action": { @@ -611,7 +611,7 @@ "label": "Név" }, "url": { - "label": "" + "label": "Url" } }, "action": { @@ -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" } } } @@ -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 a15ee98c9..9afaa5083 100644 --- a/packages/translation/src/lang/it.json +++ b/packages/translation/src/lang/it.json @@ -3,8 +3,8 @@ "step": { "start": { "title": "Ti diamo il benvenuto su Homarr", - "subtitle": "Iniziamo con la creazione della tua istanza di Homarr.", - "description": "Per iniziare, seleziona come vuoi configurare la tua istanza di Homarr.", + "subtitle": "Cominciamo a configurare la tua istanza Homarr.", + "description": "Per iniziare, seleziona come desideri configurare la tua istanza Homarr.", "action": { "scratch": "Inizia da zero", "importOldmarr": "Importa da Homarr prima della 1.0" @@ -14,8 +14,8 @@ "title": "Importa dati", "subtitle": "Puoi importare dati da un'istanza Homarr esistente.", "dropzone": { - "title": "Trascina il file zip qui o fai clic per sfogliare", - "description": "Lo zip caricato sarà elaborato e sarai in grado di selezionare quello che vuoi importare" + "title": "Trascina qui il file zip o clicca per sfogliare", + "description": "Il file zip caricato verrà elaborato e potrai selezionare cosa vuoi importare" }, "fileInfo": { "action": { @@ -24,27 +24,27 @@ }, "importSettings": { "title": "Importa impostazioni", - "description": "Configura le azioni d'importazione" + "description": "Configura il comportamento d'importazione" }, "boardSelection": { - "title": "Trovate {count} board", - "description": "Scegli tutte le board con la dimensione che vuoi importare", + "title": "Trovate {count} schede", + "description": "Seleziona tutte le schede con le dimensioni che desideri importare", "action": { "selectAll": "Seleziona tutto", "unselectAll": "Deseleziona tutto" } }, "summary": { - "title": "Riepilogo", + "title": "Importa riepilogo", "description": "Nel riepilogo sottostante puoi vedere cosa verrà importato", "action": { "import": "Conferma importazione e continua" }, "entities": { "apps": "Applicazioni", - "boards": "Board", + "boards": "Boards", "integrations": "Integrazioni", - "credentialUsers": "Credential users" + "credentialUsers": "Utenti credenziali" } }, "tokenModal": { @@ -58,18 +58,18 @@ "notification": { "error": { "title": "Token non valido", - "message": "Token inserito non valido" + "message": "Il token inserito non è valido" } } } }, "user": { "title": "Amministratore", - "subtitle": "Specifica le credenziali per l'amministratore.", + "subtitle": "Specifica le credenziali per l'utente amministratore.", "notification": { "success": { "title": "Utente creato", - "message": "L'utente è stato creato correttamente" + "message": "Utente creato con successo" }, "error": { "title": "Creazione dell'utente non riuscita" @@ -78,7 +78,7 @@ }, "group": { "title": "Gruppo esterno", - "subtitle": "Specifica il gruppo da utilizzare per gli utenti esterni.", + "subtitle": "Specifica il gruppo che dovrebbe essere utilizzato per gli utenti esterni.", "form": { "name": { "label": "Nome gruppo", @@ -93,39 +93,39 @@ "finish": { "title": "Termina configurazione", "subtitle": "È tutto pronto per iniziare!", - "description": "Hai completato con successo la configurazione. Ora puoi iniziare a usare Homarr. Seleziona la prossima azione:", + "description": "Hai completato con successo il processo di installazione. Ora puoi iniziare a usare Homarr. Seleziona la tua prossima azione:", "action": { - "goToBoard": "Vai alla board: {name}", - "createBoard": "Crea la tua prima board", - "inviteUser": "Invita altri utenti", - "docs": "Leggi la documentazione" + "goToBoard": "", + "createBoard": "", + "inviteUser": "", + "docs": "" } } }, - "backToStart": "Torna all'inizio" + "backToStart": "" }, "user": { "title": "Utenti", "name": "Utente", "page": { "login": { - "title": "Accedi al tuo account", - "subtitle": "Felice di rivederti! Inserisci le tue credenziali" + "title": "", + "subtitle": "" }, "invite": { - "title": "Unisciti ad Homarr", - "subtitle": "Ti diamo il benvenuto su Homarr! Crea il tuo account", - "description": "Hai ricevuto un invito da {username}" + "title": "", + "subtitle": "", + "description": "" }, "init": { - "title": "Nuova installazione di Homarr", - "subtitle": "Crea l'utenza amministrativa iniziale" + "title": "", + "subtitle": "" } }, "field": { "email": { "label": "E-mail", - "verified": "Verificato" + "verified": "" }, "username": { "label": "Nome utente" @@ -133,46 +133,46 @@ "password": { "label": "Password", "requirement": { - "length": "Include almeno 8 caratteri", + "length": "", "lowercase": "Include lettera minuscola", "uppercase": "Include lettera maiuscola", "number": "Include numero", - "special": "Include un simbolo speciale" + "special": "" } }, "passwordConfirm": { "label": "Conferma password" }, "previousPassword": { - "label": "Password precedente" + "label": "" }, "homeBoard": { - "label": "Home board" + "label": "" }, "pingIconsEnabled": { - "label": "Usa le icone per i ping" + "label": "" } }, "error": { - "usernameTaken": "Nome utente già in uso" + "usernameTaken": "" }, "action": { "login": { "label": "Accedi", - "labelWith": "Accedi con {provider}", + "labelWith": "", "notification": { "success": { - "title": "Accesso completato", - "message": "Hai effettuato l'accesso" + "title": "", + "message": "" }, "error": { - "title": "Login fallito", - "message": "Accesso non riuscito" + "title": "", + "message": "" } }, "forgotPassword": { - "label": "Password dimenticata?", - "description": "Un amministratore può utilizzare il seguente comando per reimpostare la password:" + "label": "", + "description": "" } }, "register": { @@ -180,81 +180,81 @@ "notification": { "success": { "title": "Account creato", - "message": "Accedi per continuare" + "message": "" }, "error": { - "title": "Creazione dell’account non riuscita", - "message": "Il tuo account non può essere creato" + "title": "", + "message": "" } } }, "create": "Crea utente", "changePassword": { - "label": "Cambia password", + "label": "", "notification": { "success": { - "message": "Password modificata" + "message": "" }, "error": { - "message": "Impossibile cambiare la password" + "message": "" } } }, "changeHomeBoard": { "notification": { "success": { - "message": "Home board modificata con successo" + "message": "" }, "error": { - "message": "Impossibile cambiare la home board" + "message": "" } } }, "changeFirstDayOfWeek": { "notification": { "success": { - "message": "Primo giorno della settimana cambiato" + "message": "" }, "error": { - "message": "Impossibile modificare il primo giorno della settimana" + "message": "" } } }, "changePingIconsEnabled": { "notification": { "success": { - "message": "Icone ping modificate con successo" + "message": "" }, "error": { - "message": "Impossibile attivare o disattivare le icone di ping" + "message": "" } } }, "manageAvatar": { "changeImage": { - "label": "Cambia immagine", + "label": "", "notification": { "success": { - "message": "Immagine cambiata con successo" + "message": "" }, "error": { - "message": "Impossibile cambiare immagine" + "message": "" }, "toLarge": { - "title": "Immagine troppo grande", - "message": "La dimensione massima dell'immagine è {size}" + "title": "", + "message": "" } } }, "removeImage": { - "label": "Rimuovi immagine", - "confirm": "Vuoi davvero rimuovere l'immagine?", + "label": "", + "confirm": "", "notification": { "success": { - "message": "Immagine rimossa" + "message": "" }, "error": { - "message": "Impossibile rimuovere immagine" + "message": "" } } } @@ -262,16 +262,16 @@ "editProfile": { "notification": { "success": { - "message": "Profilo aggiornato" + "message": "" }, "error": { - "message": "Impossibile aggiornare il profilo" + "message": "" } } }, "delete": { - "label": "Elimina utente definitivamente", - "description": "Elimina questo utente, comprese le sue preferenze. Non eliminerà nessuna board. L'utente non verrà avvisato.", + "label": "", + "description": "Elimina questo utente, comprese le sue preferenze. Non eliminerà nessuna scheda. L'utente non verrà avvisato.", "confirm": "Hai la certezza di voler eliminare l'utente {username} con le sue preferenze?" }, "select": { @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "Amministratore", + "title": "Admin", "item": { "admin": { "label": "Amministratore", @@ -305,12 +305,12 @@ "title": "Applicazioni", "item": { "create": { - "label": "Creare app", + "label": "Crea applicazioni", "description": "Consenti ai membri di creare app" }, "use-all": { - "label": "Utilizzare tutte le app", - "description": "Consenti ai membri di aggiungere qualsiasi app alle loro board" + "label": "Utilizzare tutte le applicazioni", + "description": "Consenti ai membri di aggiungere qualsiasi app alle loro schede" }, "modify-all": { "label": "Modificare tutte le app", @@ -323,14 +323,14 @@ } }, "board": { - "title": "Board", + "title": "Boards", "item": { "create": { - "label": "Creare board", - "description": "Consenti ai membri di creare board" + "label": "Creare schede", + "description": "Consenti ai membri di creare schede" }, "view-all": { - "label": "Visualizzare tutte le board", + "label": "Visualizzare tutte le schede", "description": "Consenti ai membri di visualizzare tutte le schede" }, "modify-all": { @@ -402,89 +402,89 @@ "description": "Consenti ai membri di modificare tutti i motori di ricerca" }, "full-all": { - "label": "Accesso completo al motore di ricerca", - "description": "Consenti ai membri di gestire ed eliminare qualsiasi motore di ricerca" + "label": "", + "description": "" } } } }, "memberNotice": { - "mixed": "Alcuni membri provengono da fornitori esterni e non possono essere gestiti qui", - "external": "Tutti i membri provengono da fornitori esterni e non possono essere gestiti qui" + "mixed": "", + "external": "" }, "reservedNotice": { - "message": "Questo gruppo è riservato all'uso del sistema e limita alcune azioni. " + "message": "" }, "action": { "create": { - "label": "Nuovo gruppo", + "label": "", "notification": { "success": { - "message": "Gruppo creato" + "message": "" }, "error": { - "message": "Impossibile creare il gruppo" + "message": "" } } }, "transfer": { - "label": "Trasferisci ownership", - "description": "Trasferisci l'ownership di questo gruppo a un altro utente.", - "confirm": "Hai la certezza di voler trasferire l'ownership del gruppo {name} a {username}?", + "label": "", + "description": "", + "confirm": "", "notification": { "success": { - "message": "Gruppo {group} trasferito a {user}" + "message": "" }, "error": { - "message": "Impossibile trasferire l'ownership" + "message": "" } } }, "addMember": { - "label": "Aggiungi membro" + "label": "" }, "removeMember": { - "label": "Rimuovi membro", - "confirm": "Hai la certezza di voler rimuovere {user} da questo gruppo?" + "label": "", + "confirm": "" }, "delete": { - "label": "Elimina gruppo", - "description": "Una volta eliminato un gruppo, non si può tornare indietro. Si prega di essere certi.", - "confirm": "Hai la certezza di voler eliminare il gruppo {name}?", + "label": "", + "description": "", + "confirm": "", "notification": { "success": { - "message": "Gruppo {name} eliminato" + "message": "" }, "error": { - "message": "Impossibile eliminare il gruppo {name}" + "message": "" } } }, "changePermissions": { "notification": { "success": { - "title": "Permessi salvati", - "message": "I permessi sono stati salvati" + "title": "", + "message": "" }, "error": { - "title": "Permessi non salvati", - "message": "I permessi non sono stati salvati" + "title": "", + "message": "" } } }, "update": { "notification": { "success": { - "message": "Il gruppo {name} è stato salvato" + "message": "" }, "error": { - "message": "Impossibile salvare il gruppo {name}" + "message": "" } } }, "select": { - "label": "Seleziona gruppo", - "notFound": "Nessun gruppo trovato" + "label": "", + "notFound": "" } } }, @@ -493,47 +493,47 @@ "list": { "title": "Applicazioni", "noResults": { - "title": "Non ci sono ancora app", - "action": "Crea la tua prima app" + "title": "", + "action": "" } }, "create": { - "title": "Nuova app", + "title": "", "notification": { "success": { - "title": "Creazione riuscita", - "message": "App creata" + "title": "", + "message": "" }, "error": { - "title": "Creazione fallita", - "message": "Impossibile creare l'app" + "title": "", + "message": "" } } }, "edit": { - "title": "Modifica app", + "title": "", "notification": { "success": { - "title": "Modifiche applicate", - "message": "App salvata" + "title": "", + "message": "" }, "error": { - "title": "Impossibile applicare le modifiche", - "message": "Impossibile salvare l'app" + "title": "", + "message": "" } } }, "delete": { - "title": "Elimina app", - "message": "Hai la certezza di voler eliminare l'app {name}?", + "title": "", + "message": "", "notification": { "success": { - "title": "Eliminato", - "message": "App eliminata" + "title": "", + "message": "" }, "error": { - "title": "Eliminazione non riuscita", - "message": "Impossibile eliminare l'app" + "title": "", + "message": "" } } } @@ -543,15 +543,15 @@ "label": "Nome" }, "description": { - "label": "Descrizione" + "label": "" }, "url": { - "label": "Url" + "label": "" } }, "action": { "select": { - "label": "Seleziona App", + "label": "", "notFound": "Nessuna app trovata" } } @@ -569,11 +569,11 @@ "title": "Nuova integrazione di {name}", "notification": { "success": { - "title": "Creazione riuscita", + "title": "", "message": "L'integrazione è stata creata con successo" }, "error": { - "title": "Creazione fallita", + "title": "", "message": "Non è stato possibile creare l'integrazione" } } @@ -582,11 +582,11 @@ "title": "Modifica integrazione {name}", "notification": { "success": { - "title": "Modifiche applicate", + "title": "", "message": "L'integrazione è stata salvata correttamente" }, "error": { - "title": "Impossibile applicare le modifiche", + "title": "", "message": "Non è stato possibile salvare l'integrazione" } } @@ -596,11 +596,11 @@ "message": "Hai la certezza di voler eliminare l'integrazione {name}?", "notification": { "success": { - "title": "Eliminato", + "title": "", "message": "L'integrazione è stata eliminata correttamente" }, "error": { - "title": "Eliminazione non riuscita", + "title": "", "message": "Impossibile eliminare l'integrazione" } } @@ -611,7 +611,7 @@ "label": "Nome" }, "url": { - "label": "Url" + "label": "" } }, "action": { @@ -694,8 +694,8 @@ "title": "Secrets", "lastUpdated": "Ultimo aggiornamento {date}", "notSet": { - "label": "Nessun valore impostato", - "tooltip": "Il secret richiesto non è stato ancora impostato" + "label": "", + "tooltip": "" }, "secureNotice": "", "reset": { @@ -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": "", @@ -861,12 +861,12 @@ }, "zod": { "errors": { - "default": "Campo non valido", - "required": "Campo obbligatorio", + "default": "Questo campo non è valido", + "required": "Questo campo è obbligatorio", "string": { "startsWith": "Questo campo deve iniziare con {startsWith}", "endsWith": "Questo campo deve terminare con {endsWith}", - "includes": "Questo campo deve contenere {includes}", + "includes": "Questo campo deve includere {includes}", "invalidEmail": "" }, "tooSmall": { @@ -1026,7 +1026,7 @@ "label": "" }, "layout": { - "label": "", + "label": "Layout", "option": { "row": { "label": "Orizzontale" @@ -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" @@ -1168,9 +1168,9 @@ "controls": { "bold": "Grassetto", "italic": "Corsivo", - "strikethrough": "Barrato", + "strikethrough": "Testo barrato", "underline": "Sottolineato", - "colorText": "Colore testo", + "colorText": "Testo a colori", "colorHighlight": "Testo evidenziato colorato", "code": "Codice", "clear": "Rimuovi formattazione", @@ -1180,15 +1180,15 @@ "horizontalLine": "Linea orizzontale", "bulletList": "Elenco puntato", "orderedList": "Elenco ordinato", - "checkList": "Checklist", + "checkList": "Elenco di controllo", "increaseIndent": "Aumenta indentatura", "decreaseIndent": "Diminuisci indentatura", - "link": "", + "link": "Link", "unlink": "Elimina link", "image": "Incorpora immagine", "addTable": "Aggiungi tabella", "deleteTable": "Elimina tabella", - "colorCell": "Colora Cella", + "colorCell": "Colore cella", "mergeCell": "Attiva/disattiva unione celle", "addColumnLeft": "Aggiungi colonna prima", "addColumnRight": "Aggiungi colonna dopo", @@ -1199,7 +1199,7 @@ }, "align": { "left": "Sinistra", - "center": "Centro", + "center": "Centra", "right": "Destra" }, "popover": { @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "", + "name": "iFrame", "description": "Incorpora qualsiasi contenuto da Internet. Alcuni siti web possono limitare l'accesso.", "option": { "embedUrl": { @@ -1272,7 +1272,7 @@ "description": "", "option": { "displayName": { - "label": "Nome visualizzato" + "label": "Visualizza nome" }, "automationId": { "label": "ID automazione" @@ -1304,7 +1304,7 @@ }, "weather": { "name": "Meteo", - "description": "Mostra le attuali informazioni meteo di un luogo.", + "description": "Mostra le informazioni meteo attuali di una località.", "option": { "isFormatFahrenheit": { "label": "" @@ -1336,7 +1336,7 @@ "rain": "Pioggia", "freezingRain": "Pioggia gelata", "snowFall": "Neve", - "snowGrains": "Grandine", + "snowGrains": "Neve tonda", "rainShowers": "Rovesci", "snowShowers": "Forti nevicate", "thunderstorm": "Temporale", @@ -1345,21 +1345,21 @@ } }, "indexerManager": { - "name": "Stato dell'index manager", + "name": "Stato del gestore dell'indicizzatore", "description": "", "option": { "openIndexerSiteInNewTab": { "label": "" } }, - "title": "Index manager", - "testAll": "Prova tutto", + "title": "Gestore dell'indicizzatore", + "testAll": "Prova Tutto", "error": { "internalServerError": "" } }, "healthMonitoring": { - "name": "Monitoraggio Salute di Sistema", + "name": "Monitoraggio dello stato del sistema", "description": "Visualizza informazioni sulla salute e stato dei tuoi sistemi.", "option": { "fahrenheit": { @@ -1432,8 +1432,8 @@ "option": {} }, "video": { - "name": "Stream Video", - "description": "Incorpora uno stream video o un video da una videocamera o da un sito web", + "name": "Flusso Video", + "description": "Incorpora un flusso video o un video da una videocamera o da un sito web", "option": { "feedUrl": { "label": "URL del feed" @@ -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": "" } }, @@ -1601,7 +1601,7 @@ }, "mediaRequests-requestList": { "name": "", - "description": "Visualizza un elenco di tutte le richieste media dalla tua istanza Overseerr o Jellyseerr", + "description": "Vedi un elenco di tutte le richieste multimediali dalla tua istanza Overseerr o Jellyseerr", "option": { "linksTargetNewTab": { "label": "Apri i link in nuova scheda" @@ -1623,11 +1623,11 @@ }, "mediaRequests-requestStats": { "name": "", - "description": "Statistiche sulle richieste dei media", + "description": "Statistiche sulle richieste multimediali", "option": {}, "titles": { "stats": { - "main": "Statistiche Media", + "main": "Statistiche Multimediali", "approved": "Già approvato", "pending": "Approvazioni In Attesa", "processing": "", @@ -1638,7 +1638,7 @@ "total": "Totale" }, "users": { - "main": "Top Utenti", + "main": "Utenti Top", "requests": "" } } @@ -1655,7 +1655,7 @@ } }, "tab": { - "workers": "Workers", + "workers": "Worker", "queue": "Coda", "statistics": "Statistiche" }, @@ -1664,39 +1664,39 @@ "title": "", "queued": "In coda", "status": { - "healthy": "Normale funzionamento", - "unhealthy": "Compromesso" + "healthy": "Sano", + "unhealthy": "Non integro" } }, "panel": { "statistics": { "empty": "Vuoto", - "transcodes": "", + "transcodes": "Transcodes", "transcodesCount": "", "healthChecksCount": "", "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "", - "videoContainers": "", + "videoCodecs": "Codecs", + "videoContainers": "Containers", "videoResolutions": "Risoluzioni" }, "workers": { "empty": "Vuoto", "table": { - "file": "", - "eta": "", + "file": "File", + "eta": "ETA", "progress": "Avanzamento", - "transcode": "", + "transcode": "Transcode", "healthCheck": "" } }, "queue": { "empty": "Vuoto", "table": { - "file": "", + "file": "File", "size": "Dimensione", - "transcode": "", + "transcode": "Transcode", "healthCheck": "" } } @@ -1822,7 +1822,7 @@ "label": "" }, "backgroundImageAttachment": { - "label": "Immagine di background", + "label": "Allegato immagine di sfondo", "option": { "fixed": { "label": "", @@ -1856,7 +1856,7 @@ } }, "backgroundImageSize": { - "label": "Dimensioni dell'immagine di background", + "label": "Dimensioni dell'immagine di sfondo", "option": { "cover": { "label": "", @@ -1907,10 +1907,10 @@ "unrecognizedLink": "" }, "layout": { - "title": "" + "title": "Layout" }, "background": { - "title": "Background" + "title": "Sfondo" }, "color": { "title": "" @@ -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": "Integrazioni", "searchEngies": "Motori di ricerca", @@ -2042,9 +2042,9 @@ "tools": { "label": "Strumenti", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2054,7 +2054,7 @@ "items": { "documentation": "Documentazione", "submitIssue": "", - "discord": "Community Discord", + "discord": "Discord della community", "sourceCode": "" } }, @@ -2064,7 +2064,7 @@ "page": { "home": { "statistic": { - "board": "", + "board": "Boards", "user": "Utenti", "invite": "Inviti", "integration": "Integrazioni", @@ -2072,7 +2072,7 @@ "group": "Gruppi" }, "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": { @@ -2184,7 +2184,7 @@ "action": { "new": { "title": "", - "description": "Una volta scaduto, un invito non sarà più valido e il destinatario non potrà creare un account." + "description": "Dopo la scadenza, un invito non sarà più valido e il destinatario dell'invito non potrà creare un account." }, "copy": { "title": "", @@ -2194,12 +2194,12 @@ }, "delete": { "title": "Elimina invito", - "description": "Hai la certezza di voler eliminare questo invito? Gli utenti con questo link non potranno più creare un account utilizzandolo." + "description": "Siete sicuri di voler eliminare questo invito? Gli utenti con questo link non potranno più creare un account utilizzando tale link." } }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Creatore" @@ -2208,7 +2208,7 @@ "label": "Data di scadenza" }, "token": { - "label": "" + "label": "Token" } } } @@ -2286,7 +2286,7 @@ } }, "board": { - "title": "", + "title": "Boards", "homeBoard": { "label": "", "description": "" @@ -2332,7 +2332,7 @@ "label": "" }, "mediaServer": { - "label": "Media Server" + "label": "Server multimediale" }, "mediaOrganizer": { "label": "" @@ -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": "", @@ -2435,7 +2435,7 @@ "created": "Creato", "running": "In esecuzione", "paused": "In pausa", - "restarting": "Riavvio in corso", + "restarting": "Riavvio", "exited": "", "removing": "Rimozione in corso", "dead": "" @@ -2552,7 +2552,7 @@ "manage": { "label": "Gestisci", "boards": { - "label": "" + "label": "Boards" }, "integrations": { "label": "Integrazioni", @@ -2591,7 +2591,7 @@ }, "general": "Generale", "security": "Sicurezza", - "board": "", + "board": "Boards", "groups": { "label": "Gruppi" }, @@ -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": { @@ -2775,7 +2775,7 @@ "label": "" }, "discord": { - "label": "Community Discord" + "label": "Discord della community" } } } diff --git a/packages/translation/src/lang/ja.json b/packages/translation/src/lang/ja.json index 87d73077f..6d52f5b76 100644 --- a/packages/translation/src/lang/ja.json +++ b/packages/translation/src/lang/ja.json @@ -1685,7 +1685,7 @@ "empty": "空", "table": { "file": "ファイル", - "eta": "", + "eta": "ETA", "progress": "進捗状況", "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": "クリエイター" @@ -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 657a35c9c..aafeac7bd 100644 --- a/packages/translation/src/lang/ko.json +++ b/packages/translation/src/lang/ko.json @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "", + "name": "iFrame", "description": "인터넷에서 콘텐츠를 퍼옵니다. 일부 웹사이트는 액세스를 제한할 수 있습니다.", "option": { "embedUrl": { @@ -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": "크리에이터" @@ -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 2d947019a..610fb1440 100644 --- a/packages/translation/src/lang/lt.json +++ b/packages/translation/src/lang/lt.json @@ -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" @@ -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 6cf025fdc..c78ab5df2 100644 --- a/packages/translation/src/lang/lv.json +++ b/packages/translation/src/lang/lv.json @@ -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": { @@ -1685,8 +1685,8 @@ "empty": "Tukšs", "table": { "file": "", - "eta": "", - "progress": "", + "eta": "ETA", + "progress": "Progress", "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" @@ -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 89aa38b26..70db00346 100644 --- a/packages/translation/src/lang/nl.json +++ b/packages/translation/src/lang/nl.json @@ -136,7 +136,7 @@ "length": "Bevat ten minste 8 tekens", "lowercase": "Inclusief kleine letter", "uppercase": "Inclusief hoofdletter", - "number": "Inclusief getal", + "number": "Inclusief aantal", "special": "Inclusief speciaal teken" } }, @@ -773,7 +773,7 @@ "apply": "Toepassen", "backToOverview": "Terug naar overzicht", "create": "Aanmaken", - "edit": "Bewerken", + "edit": "Wijzigen", "import": "Importeren", "insert": "Invoegen", "remove": "Verwijderen", @@ -788,7 +788,7 @@ "next": "Volgende", "checkoutDocs": "De documentatie bekijken", "checkLogs": "Controleer logs voor meer details", - "tryAgain": "Probeer opnieuw", + "tryAgain": "Probeer het opnieuw", "loading": "Laden" }, "here": "hier", @@ -803,8 +803,8 @@ } }, "information": { - "min": "Min.", - "max": "Max.", + "min": "Min", + "max": "Max", "days": "Dagen", "hours": "Uren", "minutes": "Minuten" @@ -999,7 +999,7 @@ "label": "App kiezen" }, "openInNewTab": { - "label": "In nieuw tabblad openen" + "label": "Open in nieuw tabblad" }, "showTitle": { "label": "App naam weergeven" @@ -1026,7 +1026,7 @@ "label": "Titel" }, "layout": { - "label": "Lay-out", + "label": "Indeling", "option": { "row": { "label": "Horizontaal" @@ -1050,7 +1050,7 @@ "description": "Toont het overzicht van je DNS-hole", "option": { "layout": { - "label": "Lay-out", + "label": "Indeling", "option": { "row": { "label": "Horizontaal" @@ -1074,7 +1074,7 @@ "data": { "adsBlockedToday": "Vandaag geblokkeerd", "adsBlockedTodayPercentage": "Vandaag geblokkeerd", - "dnsQueriesToday": "Aanvragen vandaag", + "dnsQueriesToday": "Queries vandaag", "domainsBeingBlocked": "Domeinen op blokkadelijst" } }, @@ -1083,7 +1083,7 @@ "description": "Bedien PiHole of AdGuard vanaf je dashboard", "option": { "layout": { - "label": "Lay-out", + "label": "Indeling", "option": { "row": { "label": "Horizontaal" @@ -1156,7 +1156,7 @@ "description": "Een eenvoudige notitie widget die markdown ondersteunt", "option": { "showToolbar": { - "label": "De werkbalk weergeven om je te helpen markdown te schrijven" + "label": "Toon de werkbalk om je te helpen markdown te schrijven" }, "allowReadOnlyCheck": { "label": "Controle in alleen-lezen modus toestaan" @@ -1170,7 +1170,7 @@ "italic": "Schuingedrukt", "strikethrough": "Doorgestreept", "underline": "Onderstreept", - "colorText": "Tekstkleur", + "colorText": "Kleur tekst", "colorHighlight": "Gekleurde tekst markeren", "code": "Code", "clear": "Opmaak wissen", @@ -1179,19 +1179,19 @@ "blockquote": "Blokquote", "horizontalLine": "Horizontale lijn", "bulletList": "Opsommingslijst", - "orderedList": "Gerangschikte lijst", + "orderedList": "Geordende lijst", "checkList": "Controlelijst", - "increaseIndent": "Inspringing vergroten", + "increaseIndent": "Inspringen vergroten", "decreaseIndent": "Inspringen verminderen", "link": "Link", "unlink": "Link verwijderen", "image": "Afbeelding insluiten", "addTable": "Tabel toevoegen", "deleteTable": "Tabel verwijderen", - "colorCell": "Celkleur", - "mergeCell": "Cellen samenvoegen schakelen", - "addColumnLeft": "Kolom ervoor toevoegen", - "addColumnRight": "Kolom erna toevoegen", + "colorCell": "Kleur cel", + "mergeCell": "Cellen samenvoegen togglen", + "addColumnLeft": "Kolom toevoegen vóór", + "addColumnRight": "Kolom toevoegen ná", "deleteColumn": "Kolom verwijderen", "addRowTop": "Rij toevoegen vóór", "addRowBelow": "Rij toevoegen ná", @@ -1214,7 +1214,7 @@ }, "iframe": { "name": "iFrame", - "description": "Elke inhoud van het internet insluiten. Sommige websites kunnen de toegang beperken.", + "description": "Insluiten van alle inhoud van het internet. Sommige websites kunnen de toegang beperken.", "option": { "embedUrl": { "label": "URL insluiten" @@ -1254,7 +1254,7 @@ "description": "Status van een entiteit weergeven en optioneel omschakelen", "option": { "entityId": { - "label": "Entiteits-ID" + "label": "Entiteit-ID" }, "displayName": { "label": "Weergavenaam" @@ -1287,7 +1287,7 @@ "description": "Gebeurtenissen van je integraties weergeven in een kalenderweergave binnen een bepaalde relatieve tijdsperiode", "option": { "releaseType": { - "label": "Radarr uitgavetype", + "label": "Radarr release type", "options": { "inCinemas": "In bioscopen", "digitalRelease": "Digitale uitgave", @@ -1310,7 +1310,7 @@ "label": "Temperatuur in fahrenheit" }, "location": { - "label": "Weerlocatie" + "label": "Weerslocatie" }, "showCity": { "label": "Stad weergeven" @@ -1328,7 +1328,7 @@ } }, "kind": { - "clear": "Wissen", + "clear": "Helder", "mainlyClear": "Overwegend helder", "fog": "Mist", "drizzle": "Motregen", @@ -1345,14 +1345,14 @@ } }, "indexerManager": { - "name": "Indexeringsbeheerder status", + "name": "Indexeer beheerder status", "description": "Status van je indexers", "option": { "openIndexerSiteInNewTab": { "label": "Indexersite in nieuw tabblad openen" } }, - "title": "Indexeringsbeheerder", + "title": "Indexeer beheerder", "testAll": "Alles testen", "error": { "internalServerError": "Indexersstatus ophalen mislukt" @@ -1381,7 +1381,7 @@ "memory": "Geheugen: {memory}GiB", "memoryAvailable": "Beschikbaar: {memoryAvailable}GiB ({percent}%)", "version": "Versie: {version}", - "uptime": "Uptime: {days} Dagen, {hours} Uren, {minutes} Minuten", + "uptime": "", "loadAverage": "Gemiddelde belasting:", "minute": "1 minuut", "minutes": "{count} minuten", @@ -1433,10 +1433,10 @@ }, "video": { "name": "Video stream", - "description": "Een videostream of video van een camera of website insluiten", + "description": "Een videostream of video van een camera of een website insluiten", "option": { "feedUrl": { - "label": "Feed-URL" + "label": "Feed URL" }, "hasAutoPlay": { "label": "Automatisch afspelen", @@ -1511,7 +1511,7 @@ "detailsTitle": "Categorieën (of extra informatie)" }, "downSpeed": { - "columnTitle": "Omlaag", + "columnTitle": "Down", "detailsTitle": "Downloadsnelheid" }, "index": { @@ -1560,12 +1560,12 @@ "detailsTitle": "Client type downloaden" }, "upSpeed": { - "columnTitle": "Omhoog", + "columnTitle": "Up", "detailsTitle": "Uploadsnelheid" } }, "states": { - "downloading": "Downloaden", + "downloading": "Bezig met downloaden", "queued": "In wachtrij", "paused": "Gepauzeerd", "completed": "Voltooid", @@ -1601,7 +1601,7 @@ }, "mediaRequests-requestList": { "name": "Media-aanvragen lijst", - "description": "Bekijk een lijst met alle media-aanvragen van je Overseerr of Jellyseerr instantie", + "description": "Bekijk een lijst met alle mediaverzoeken van je Overseerr of Jellyseerr instantie", "option": { "linksTargetNewTab": { "label": "Links in nieuw tabblad openen" @@ -1623,18 +1623,18 @@ }, "mediaRequests-requestStats": { "name": "Media-aanvragen statistieken", - "description": "Statistieken over je media-aanvragen", + "description": "Statistieken over je mediaverzoeken", "option": {}, "titles": { "stats": { - "main": "Mediastatistieken", + "main": "Media statistieken", "approved": "Reeds goedgekeurd", "pending": "In afwachting van goedkeuring", "processing": "Wordt verwerkt", "declined": "Reeds geweigerd", "available": "Reeds beschikbaar", - "tv": "TV aanvragen", - "movie": "Film aanvragen", + "tv": "TV verzoeken", + "movie": "Film verzoeken", "total": "Totaal" }, "users": { @@ -1665,7 +1665,7 @@ "queued": "In wachtrij", "status": { "healthy": "Gezond", - "unhealthy": "Niet-gezond" + "unhealthy": "Ongezond" } }, "panel": { @@ -1784,7 +1784,7 @@ "description": "In versies vóór 1.0 bestonden drie verschillende modi, zodat je het aantal kolommen voor elke schermgrootte kon kiezen.", "option": { "sm": "Klein", - "md": "Gemiddeld", + "md": "Middel", "lg": "Groot" } }, @@ -1907,7 +1907,7 @@ "unrecognizedLink": "De opgegeven link wordt niet herkend en geeft geen voorbeeld, maar werkt misschien nog wel." }, "layout": { - "title": "Lay-out" + "title": "Indeling" }, "background": { "title": "Achtergrond" @@ -2293,7 +2293,7 @@ } }, "appearance": { - "title": "Weergave", + "title": "Opmaak", "defaultColorScheme": { "label": "Standaard kleurenschema", "options": { @@ -2332,7 +2332,7 @@ "label": "Pings" }, "mediaServer": { - "label": "Mediaserver" + "label": "Media server" }, "mediaOrganizer": { "label": "Media organisatoren" @@ -2435,9 +2435,9 @@ "created": "Aangemaakt", "running": "Actief", "paused": "Gepauzeerd", - "restarting": "Herstarten", + "restarting": "Bezig met herstarten", "exited": "Verlaten", - "removing": "Verwijderen", + "removing": "Bezig met verwijderen", "dead": "Dood" } }, @@ -2463,7 +2463,7 @@ } }, "stop": { - "label": "Stoppen", + "label": "Stop", "notification": { "success": { "title": "Containers gestopt", @@ -2476,7 +2476,7 @@ } }, "restart": { - "label": "Herstarten", + "label": "Herstart", "notification": { "success": { "title": "Containers herstart", @@ -2557,7 +2557,7 @@ "integrations": { "label": "Integraties", "edit": { - "label": "Bewerken" + "label": "Wijzigen" }, "new": { "label": "Nieuw" @@ -2569,7 +2569,7 @@ "label": "Nieuw" }, "edit": { - "label": "Bewerken" + "label": "Wijzigen" } }, "medias": { @@ -2581,7 +2581,7 @@ "label": "Nieuw" }, "edit": { - "label": "Bewerken" + "label": "Wijzigen" } }, "users": { @@ -2749,7 +2749,7 @@ "description": "Zoeken op het web met DuckDuckGo" }, "torrent": { - "name": "Verouderde torrents weergeven", + "name": "Torrents", "description": "Zoeken naar torrents op torrentdownloads.pro" }, "youTube": { diff --git a/packages/translation/src/lang/no.json b/packages/translation/src/lang/no.json index c9fde5e3e..411758aae 100644 --- a/packages/translation/src/lang/no.json +++ b/packages/translation/src/lang/no.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "", + "label": "Token", "description": "" } }, @@ -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", @@ -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" } } } @@ -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 e2f83a84e..c2a97a1d1 100644 --- a/packages/translation/src/lang/pl.json +++ b/packages/translation/src/lang/pl.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "", + "label": "Token", "description": "" } }, @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "", + "title": "Admin", "item": { "admin": { "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": { @@ -1254,7 +1254,7 @@ "description": "", "option": { "entityId": { - "label": "ID encji" + "label": "ID obiektu" }, "displayName": { "label": "" @@ -1685,7 +1685,7 @@ "empty": "Puste", "table": { "file": "", - "eta": "", + "eta": "ETA", "progress": "Postęp", "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" } } } @@ -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 3186e11e2..54b3a9fd2 100644 --- a/packages/translation/src/lang/pt.json +++ b/packages/translation/src/lang/pt.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "", + "label": "Token", "description": "" } }, @@ -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", @@ -1677,7 +1677,7 @@ "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "", + "videoCodecs": "Codecs", "videoContainers": "", "videoResolutions": "" }, @@ -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" } } } @@ -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 2da2ae314..cee8e2520 100644 --- a/packages/translation/src/lang/ro.json +++ b/packages/translation/src/lang/ro.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "", + "label": "Token", "description": "" } }, @@ -733,7 +733,7 @@ "field": { "name": "Nume", "size": "Mărime", - "creator": "" + "creator": "Creator" }, "action": { "upload": { @@ -1032,7 +1032,7 @@ "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", @@ -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,7 +2217,7 @@ "back": "", "setting": { "general": { - "title": "", + "title": "General", "owner": "Proprietar", "ownerOfGroup": "", "ownerOfGroupDeleted": "" @@ -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 8c70eafae..712631bc3 100644 --- a/packages/translation/src/lang/ru.json +++ b/packages/translation/src/lang/ru.json @@ -14,7 +14,7 @@ "title": "Импорт данных", "subtitle": "Вы можете импортировать данные из существующего экземпляра Homarr.", "dropzone": { - "title": "Перетащите ZIP-файл сюда или нажмите для его выбора", + "title": "Перетащите ZIP-файл сюда или нажмите для выбора", "description": "Загруженный ZIP-файл будет обработан, и вы сможете выбрать, что хотите импортировать" }, "fileInfo": { @@ -44,7 +44,7 @@ "apps": "Приложения", "boards": "Панели", "integrations": "Интеграции", - "credentialUsers": "Учетные данные пользователя" + "credentialUsers": "Пользователи учетных данных" } }, "tokenModal": { @@ -276,7 +276,7 @@ }, "select": { "label": "Выбрать пользователя", - "notFound": "Пользователь не найден" + "notFound": "Пользователи не найдены" }, "transfer": { "label": "Выбрать нового владельца" @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "Администрирование", + "title": "Администратор", "item": { "admin": { "label": "Администратор", @@ -372,12 +372,12 @@ "description": "Разрешить участникам загружать медиафайлы" }, "view-all": { - "label": "Полный доступ к медиафайлам", - "description": "Разрешить участникам управлять и удалять любые медиафайлы" + "label": "Просмотр всех медиафайлов", + "description": "Разрешить участникам просматривать все медиафайлы" }, "full-all": { "label": "Полный доступ к медиафайлам", - "description": "Разрешить участникам управлять и удалять любыми медиафайлами" + "description": "Разрешить участникам управлять и удалять любые медиафайлы" } } }, @@ -385,8 +385,8 @@ "title": "Прочее", "item": { "view-logs": { - "label": "Просмотр логов", - "description": "Разрешить участникам просматривать логи" + "label": "Просмотр журналов", + "description": "Разрешить участникам просматривать журналы" } } }, @@ -409,8 +409,8 @@ } }, "memberNotice": { - "mixed": "Некоторыми участниками управляет внешняя система аутентификации, их нельзя настроить здесь", - "external": "Всеми участниками управляют внешние системы аутентификации, их нельзя настроить здесь" + "mixed": "Некоторые участники используют внешние системы аутентификации и не могут управляться здесь", + "external": "Все участники используют внешние системы аутентификации и не могут управляться здесь" }, "reservedNotice": { "message": "Эта группа зарезервирована для системных нужд и имеет ограничения на некоторые действия. " @@ -560,48 +560,48 @@ "page": { "list": { "title": "Интеграции", - "search": "Поиск интеграций", + "search": "", "noResults": { - "title": "Интеграции пока отсутствуют" + "title": "" } }, "create": { - "title": "Новая интеграция {name}", + "title": "", "notification": { "success": { - "title": "Интеграция создана", - "message": "Интеграция успешно создана" + "title": "Приложение создано", + "message": "" }, "error": { "title": "Не удалось создать", - "message": "Не удалось создать интеграцию" + "message": "" } } }, "edit": { - "title": "Редактирование интеграции {name}", + "title": "", "notification": { "success": { "title": "Изменения сохранены", - "message": "Интеграция успешно сохранена" + "message": "" }, "error": { "title": "Не удалось сохранить", - "message": "Не удалось сохранить интеграцию" + "message": "" } } }, "delete": { - "title": "Удаление интеграции", - "message": "Вы уверены, что хотите удалить интеграцию {name}?", + "title": "", + "message": "", "notification": { "success": { - "title": "Интеграция удалена", - "message": "Интеграция успешно удалена" + "title": "Приложение удалено", + "message": "" }, "error": { "title": "Не удалось удалить", - "message": "Не удалось удалить интеграцию" + "message": "" } } } @@ -615,105 +615,105 @@ } }, "action": { - "create": "Новая интеграция" + "create": "" }, "testConnection": { "action": { - "create": "Проверить подключение и создать", - "edit": "Проверить подключение и сохранить" + "create": "", + "edit": "" }, - "alertNotice": "Кнопка сохранения станет доступна после успешного подключения", + "alertNotice": "", "notification": { "success": { - "title": "Подключение установлено", - "message": "Подключение успешно установлено" + "title": "", + "message": "" }, "invalidUrl": { - "title": "Недействительный URL-адрес", - "message": "Указан недействительный URL-адрес" + "title": "Недействительный URL", + "message": "" }, "secretNotDefined": { - "title": "Отсутствуют учётные данные", - "message": "Не все учётные данные были предоставлены" + "title": "", + "message": "" }, "invalidCredentials": { - "title": "Неверные учётные данные", - "message": "Предоставлены неверные учётные данные" + "title": "", + "message": "" }, "commonError": { - "title": "Ошибка подключения", - "message": "Не удалось установить подключение" + "title": "", + "message": "" }, "badRequest": { - "title": "Неверный запрос", - "message": "Запрос сформирован некорректно" + "title": "", + "message": "" }, "unauthorized": { - "title": "Нет доступа", - "message": "Возможно, указаны неверные учётные данные" + "title": "", + "message": "" }, "forbidden": { - "title": "Доступ запрещён", - "message": "Возможно, недостаточно прав доступа" + "title": "", + "message": "" }, "notFound": { - "title": "Не найдено", - "message": "Возможно, указан неверный URL-адрес или путь" + "title": "", + "message": "" }, "internalServerError": { - "title": "Внутренняя ошибка сервера", - "message": "На сервере произошла ошибка" + "title": "", + "message": "" }, "serviceUnavailable": { - "title": "Сервис недоступен", - "message": "Сервер временно недоступен" + "title": "", + "message": "" }, "connectionAborted": { - "title": "Подключение прервано", - "message": "Подключение было прервано" + "title": "", + "message": "" }, "domainNotFound": { - "title": "Домен не найден", - "message": "Не удалось найти указанный домен" + "title": "", + "message": "" }, "connectionRefused": { - "title": "В подключении отказано", - "message": "В подключении было отказано" + "title": "", + "message": "" }, "invalidJson": { - "title": "Некорректный JSON", - "message": "Ответ сервера содержит некорректный JSON" + "title": "", + "message": "" }, "wrongPath": { - "title": "Неверный путь", - "message": "Возможно, указан неверный путь" + "title": "", + "message": "" } } }, "secrets": { - "title": "Данные авторизации", - "lastUpdated": "Последнее обновление: {date}", + "title": "", + "lastUpdated": "", "notSet": { - "label": "Значение не указано", - "tooltip": "Обязательное значение ещё не установлено" + "label": "", + "tooltip": "" }, - "secureNotice": "Эти данные нельзя будет просмотреть после создания", + "secureNotice": "", "reset": { - "title": "Сбросить данные авторизации", - "message": "Вы уверены, что хотите сбросить эти данные авторизации?" + "title": "", + "message": "" }, "noSecretsRequired": { - "segmentTitle": "Авторизация не требуется", - "text": "Для этой интеграции не требуются данные авторизации" + "segmentTitle": "", + "text": "" }, "kind": { "username": { "label": "Имя пользователя", - "newLabel": "Новое имя пользователя" + "newLabel": "" }, "apiKey": { - "label": "API-ключ", - "newLabel": "Новый API-ключ" + "label": "", + "newLabel": "" }, "password": { "label": "Пароль", @@ -722,14 +722,14 @@ } }, "permission": { - "use": "Подключение сторонних сервисов", - "interact": "Взаимодействие с подключенными сервисами", - "full": "Полное управление интеграциями" + "use": "", + "interact": "", + "full": "Полный доступ к интеграциям" } }, "media": { "plural": "Медиафайлы", - "search": "Поиск медиафайлов", + "search": "", "field": { "name": "Название", "size": "Размер", @@ -737,154 +737,154 @@ }, "action": { "upload": { - "label": "Загрузить медиафайл", - "file": "Выбрать файл", + "label": "", + "file": "", "notification": { "success": { - "message": "Медиафайл успешно загружен" + "message": "" }, "error": { - "message": "Не удалось загрузить медиафайл" + "message": "" } } }, "delete": { - "label": "Удалить медиафайл", - "description": "Вы уверены, что хотите удалить медиафайл ?", + "label": "", + "description": "", "notification": { "success": { - "message": "Медиафайл успешно удалён" + "message": "" }, "error": { - "message": "Не удалось удалить медиафайл" + "message": "" } } }, "copy": { - "label": "Копировать URL" + "label": "" } } }, "common": { - "beta": "Бета", + "beta": "", "error": "Ошибка", "action": { "add": "Добавить", "apply": "Применить", - "backToOverview": "Вернуться к обзору", + "backToOverview": "", "create": "Создать", "edit": "Редактировать", - "import": "Импортировать", + "import": "", "insert": "Вставить", "remove": "Удалить", "save": "Сохранить", "saveChanges": "Сохранить изменения", "cancel": "Отмена", "delete": "Удалить", - "discard": "Отменить", + "discard": "", "confirm": "Подтвердить", - "continue": "Продолжить", + "continue": "", "previous": "Назад", "next": "Далее", - "checkoutDocs": "Посмотреть документацию", - "checkLogs": "Проверить логи для подробностей", - "tryAgain": "Попробовать снова", - "loading": "Загрузка" + "checkoutDocs": "", + "checkLogs": "", + "tryAgain": "Повторить", + "loading": "" }, - "here": "здесь", + "here": "", "iconPicker": { - "label": "URL иконки", - "header": "Введите название или объекты для фильтрации иконок... Homarr найдёт для вас среди {countIcons} иконок." + "label": "", + "header": "" }, "colorScheme": { "options": { - "light": "Светлая", - "dark": "Тёмная" + "light": "", + "dark": "" } }, "information": { - "min": "Мин.", - "max": "Макс.", - "days": "Дней", - "hours": "Часов", - "minutes": "Минут" + "min": "", + "max": "", + "days": "", + "hours": "Часы", + "minutes": "Минуты" }, "notification": { "create": { - "success": "Создание успешно завершено", + "success": "Приложение создано", "error": "Не удалось создать" }, "delete": { - "success": "Удаление успешно завершено", + "success": "Приложение удалено", "error": "Не удалось удалить" }, "update": { - "success": "Изменения успешно применены", - "error": "Не удалось применить изменения" + "success": "Изменения сохранены", + "error": "Не удалось сохранить" }, "transfer": { - "success": "Передача успешно завершена", - "error": "Не удалось выполнить передачу" + "success": "", + "error": "" } }, "multiSelect": { - "placeholder": "Выберите одно или несколько значений" + "placeholder": "" }, "multiText": { - "placeholder": "Добавить ещё значения", - "addLabel": "Добавить {value}" + "placeholder": "", + "addLabel": "" }, "select": { - "placeholder": "Выберите значение", + "placeholder": "", "badge": { - "recommended": "Рекомендуется" + "recommended": "" } }, "userAvatar": { "menu": { - "switchToDarkMode": "Переключить на тёмную тему", - "switchToLightMode": "Переключить на светлую тему", - "management": "Управление", - "preferences": "Настройки", - "logout": "Выйти", + "switchToDarkMode": "", + "switchToLightMode": "", + "management": "", + "preferences": "Ваши настройки", + "logout": "", "login": "Вход", - "homeBoard": "Ваша домашняя панель", - "loggedOut": "Выход выполнен", - "updateAvailable": "Доступно {countUpdates} обновлений: {tag}" + "homeBoard": "", + "loggedOut": "", + "updateAvailable": "" } }, "dangerZone": "Опасная зона", - "noResults": "Ничего не найдено", + "noResults": "Результаты не найдены", "preview": { - "show": "Показать предпросмотр", - "hide": "Скрыть предпросмотр" + "show": "", + "hide": "" }, "zod": { "errors": { - "default": "Поле заполнено неверно", - "required": "Это поле обязательно для заполнения", + "default": "Недопустимое значение поля", + "required": "Это поле обязательно", "string": { - "startsWith": "Поле должно начинаться с {startsWith}", - "endsWith": "Поле должно заканчиваться на {endsWith}", - "includes": "Поле должно содержать {includes}", - "invalidEmail": "Поле должно содержать корректный email" + "startsWith": "Значение данного поля должно начинаться с {startsWith}", + "endsWith": "Значение данного поля должно заканчиваться на {endsWith}", + "includes": "Значение данного поля должно включать {includes}", + "invalidEmail": "" }, "tooSmall": { - "string": "Поле должно содержать не менее {minimum} символов", - "number": "Значение должно быть больше или равно {minimum}" + "string": "Данное поле должно содержать не менее {minimum} символов", + "number": "Значение данного поля должно быть больше или равно {minimum}" }, "tooBig": { - "string": "Поле должно содержать не более {maximum} символов", - "number": "Значение должно быть меньше или равно {maximum}" + "string": "Данное поле должно содержать не более {maximum} символов", + "number": "Значение этого поля должно быть меньше или равно {maximum}" }, "custom": { - "passwordsDoNotMatch": "Пароли не совпадают", - "passwordRequirements": "Пароль не соответствует требованиям", - "boardAlreadyExists": "Панель с таким именем уже существует", - "invalidFileType": "Неверный тип файла, ожидается {expected}", - "fileTooLarge": "Файл слишком большой, максимальный размер {maxSize}", - "invalidConfiguration": "Неверная конфигурация", - "groupNameTaken": "Имя группы уже занято" + "passwordsDoNotMatch": "", + "passwordRequirements": "", + "boardAlreadyExists": "", + "invalidFileType": "", + "fileTooLarge": "", + "invalidConfiguration": "", + "groupNameTaken": "" } } } @@ -892,12 +892,12 @@ "section": { "dynamic": { "action": { - "create": "Новый динамический элемент", - "remove": "Удалить динамический элемент" + "create": "", + "remove": "" }, "remove": { - "title": "Удалить динамический элемент", - "message": "Вы уверены, что хотите удалить этот динамический элемент? Содержимое будет перемещено в то же место в родительском элементе." + "title": "", + "message": "" } }, "category": { @@ -907,42 +907,42 @@ } }, "action": { - "create": "Новая категория", - "edit": "Переименовать категорию", - "remove": "Удалить категорию", + "create": "", + "edit": "", + "remove": "", "moveUp": "Переместить вверх", "moveDown": "Переместить вниз", - "createAbove": "Создать категорию выше", - "createBelow": "Создать категорию ниже" + "createAbove": "", + "createBelow": "" }, "create": { - "title": "Новая категория", - "submit": "Добавить категорию" + "title": "", + "submit": "" }, "remove": { - "title": "Удалить категорию", - "message": "Вы уверены, что хотите удалить категорию {name}?" + "title": "", + "message": "" }, "edit": { - "title": "Переименовать категорию", - "submit": "Переименовать категорию" + "title": "", + "submit": "" }, "menu": { "label": { - "create": "Новая категория", - "changePosition": "Изменить позицию" + "create": "", + "changePosition": "Изменить положение" } } } }, "item": { "action": { - "create": "Новый элемент", - "import": "Импортировать элемент", - "edit": "Редактировать элемент", - "moveResize": "Переместить / изменить размер", - "duplicate": "Дублировать элемент", - "remove": "Удалить элемент" + "create": "", + "import": "", + "edit": "", + "moveResize": "", + "duplicate": "", + "remove": "" }, "menu": { "label": { @@ -950,11 +950,11 @@ } }, "create": { - "title": "Выберите тип элемента", - "addToBoard": "Добавить на панель" + "title": "", + "addToBoard": "" }, "moveResize": { - "title": "Переместить / изменить размер элемента", + "title": "", "field": { "width": { "label": "Ширина" @@ -963,70 +963,70 @@ "label": "Высота" }, "xOffset": { - "label": "Смещение по X" + "label": "" }, "yOffset": { - "label": "Смещение по Y" + "label": "" } } }, "edit": { - "title": "Редактировать элемент", + "title": "", "advancedOptions": { - "label": "Расширенные настройки", - "title": "Расширенные настройки элемента" + "label": "", + "title": "" }, "field": { "integrations": { "label": "Интеграции" }, "customCssClasses": { - "label": "Пользовательские CSS классы" + "label": "" } } }, "remove": { - "title": "Удалить элемент", - "message": "Вы уверены, что хотите удалить этот элемент?" + "title": "", + "message": "" } }, "widget": { "app": { - "name": "Приложение", - "description": "Встраивает приложение в панель.", + "name": "", + "description": "", "option": { "appId": { - "label": "Выберите приложение" + "label": "" }, "openInNewTab": { "label": "Открывать в новой вкладке" }, "showTitle": { - "label": "Показывать название приложения" + "label": "" }, "showDescriptionTooltip": { - "label": "Показывать всплывающую подсказку с описанием" + "label": "" }, "pingEnabled": { - "label": "Включить простую проверку доступности" + "label": "" } }, "error": { "notFound": { - "label": "Нет приложения", - "tooltip": "Не выбрано корректное приложение" + "label": "", + "tooltip": "" } } }, "bookmarks": { - "name": "Закладки", - "description": "Отображает несколько ссылок на приложение", + "name": "", + "description": "", "option": { "title": { - "label": "Заголовок" + "label": "" }, "layout": { - "label": "Расположение", + "label": "Макет", "option": { "row": { "label": "Горизонтально" @@ -1035,22 +1035,22 @@ "label": "Вертикально" }, "grid": { - "label": "Сетка" + "label": "" } } }, "items": { - "label": "Закладки", - "add": "Добавить закладку" + "label": "", + "add": "" } } }, "dnsHoleSummary": { - "name": "Сводка DNS-фильтра", - "description": "Отображает сводную информацию о вашем DNS-фильтре", + "name": "", + "description": "", "option": { "layout": { - "label": "Расположение", + "label": "Макет", "option": { "row": { "label": "Горизонтально" @@ -1059,31 +1059,31 @@ "label": "Вертикально" }, "grid": { - "label": "Сетка" + "label": "" } } }, "usePiHoleColors": { - "label": "Использовать цвета Pi-hole" + "label": "" } }, "error": { - "internalServerError": "Не удалось получить сводку DNS-фильтра", - "integrationsDisconnected": "Нет данных, все интеграции отключены" + "internalServerError": "", + "integrationsDisconnected": "" }, "data": { "adsBlockedToday": "заблокировано сегодня", "adsBlockedTodayPercentage": "заблокировано сегодня", - "dnsQueriesToday": "DNS-запросов сегодня", - "domainsBeingBlocked": "Доменов в списке блокировки" + "dnsQueriesToday": "запросов сегодня", + "domainsBeingBlocked": "" } }, "dnsHoleControls": { - "name": "Управление DNS-фильтром", - "description": "Управляйте PiHole или AdGuard прямо с вашей панели", + "name": "", + "description": "Управляйте PiHole или AdGuard с панели управления", "option": { "layout": { - "label": "Расположение", + "label": "Макет", "option": { "row": { "label": "Горизонтально" @@ -1092,81 +1092,81 @@ "label": "Вертикально" }, "grid": { - "label": "Сетка" + "label": "" } } }, "showToggleAllButtons": { - "label": "Показывать кнопки управления защитой" + "label": "" } }, "error": { - "internalServerError": "Не удалось управлять DNS-фильтром" + "internalServerError": "" }, "controls": { - "enableAll": "Включить защиту", - "disableAll": "Отключить защиту", - "setTimer": "Установить таймер", + "enableAll": "", + "disableAll": "", + "setTimer": "", "set": "Установить", "enabled": "Включено", "disabled": "Отключено", - "processing": "Обработка", - "disconnected": "Отключено", + "processing": "", + "disconnected": "", "hours": "Часы", "minutes": "Минуты", - "unlimited": "Оставить пустым для неограниченного времени" + "unlimited": "" } }, "clock": { - "name": "Дата и время", + "name": "", "description": "Отображает текущую дату и время.", "option": { "customTitleToggle": { - "label": "Настроить отображение заголовка/города", - "description": "Показывать настраиваемый заголовок или название города/страны над часами." + "label": "", + "description": "" }, "customTitle": { - "label": "Заголовок" + "label": "" }, "is24HourFormat": { - "label": "24-часовой формат", - "description": "Использовать 24-часовой формат вместо 12-часового" + "label": "", + "description": "" }, "showSeconds": { - "label": "Показывать секунды" + "label": "" }, "useCustomTimezone": { - "label": "Использовать другой часовой пояс" + "label": "" }, "timezone": { "label": "Часовой пояс", - "description": "Выберите часовой пояс согласно стандарту IANA" + "description": "" }, "showDate": { - "label": "Показывать дату" + "label": "" }, "dateFormat": { - "label": "Формат даты", - "description": "Как должна выглядеть дата" + "label": "", + "description": "" } } }, "notebook": { - "name": "Заметки", - "description": "Простой виджет заметок с поддержкой markdown", + "name": "Блокнот", + "description": "", "option": { "showToolbar": { - "label": "Показывать панель инструментов для редактирования markdown" + "label": "Показывать панель инструментов для работы с Markdown" }, "allowReadOnlyCheck": { - "label": "Разрешить отмечать пункты в режиме чтения" + "label": "Разрешить отметки в режиме только для чтения" }, "content": { - "label": "Содержимое заметок" + "label": "Содержимое блокнота" } }, "controls": { - "bold": "Жирный", + "bold": "Полужирный", "italic": "Курсив", "strikethrough": "Зачёркнутый", "underline": "Подчёркнутый", @@ -1175,16 +1175,16 @@ "code": "Код", "clear": "Очистить форматирование", "heading": "Заголовок {level}", - "align": "Выравнивание текста: {position}", + "align": "Выровнять текст: {position}", "blockquote": "Цитата", "horizontalLine": "Горизонтальная линия", "bulletList": "Маркированный список", "orderedList": "Нумерованный список", - "checkList": "Список с чекбоксами", + "checkList": "Список с галочками", "increaseIndent": "Увеличить отступ", "decreaseIndent": "Уменьшить отступ", "link": "Ссылка", - "unlink": "Удалить ссылку", + "unlink": "Убрать ссылку", "image": "Вставить изображение", "addTable": "Добавить таблицу", "deleteTable": "Удалить таблицу", @@ -1198,13 +1198,13 @@ "deleteRow": "Удалить строку" }, "align": { - "left": "По левому краю", + "left": "Слева", "center": "По центру", - "right": "По правому краю" + "right": "Справа" }, "popover": { "clearColor": "Очистить цвет", - "source": "Источник", + "source": "Исходный код", "widthPlaceholder": "Значение в % или пикселях", "columns": "Столбцы", "rows": "Строки", @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "Встраиваемый фрейм", "description": "Встраивает любой контент из интернета. Некоторые сайты могут ограничивать доступ.", "option": { "embedUrl": { @@ -1245,31 +1245,31 @@ } }, "error": { - "noUrl": "URL для iFrame не указан", - "noBrowerSupport": "Ваш браузер не поддерживает iframes. Пожалуйста, обновите браузер." + "noUrl": "", + "noBrowerSupport": "Ваш браузер не поддерживает встраиваемые фреймы. Пожалуйста, обновите браузер." } }, "smartHome-entityState": { - "name": "Состояние объекта", - "description": "Отображает состояние объекта и позволяет управлять им при необходимости", + "name": "", + "description": "", "option": { "entityId": { "label": "ID объекта" }, "displayName": { - "label": "Отображаемое имя" + "label": "" }, "entityUnit": { - "label": "Единица измерения" + "label": "" }, "clickable": { - "label": "Кликабельный" + "label": "" } } }, "smartHome-executeAutomation": { - "name": "Запуск автоматизации", - "description": "Запускает автоматизацию одним нажатием", + "name": "", + "description": "", "option": { "displayName": { "label": "Отображаемое имя" @@ -1279,26 +1279,26 @@ } }, "spotlightAction": { - "run": "Запустить {name}" + "run": "" } }, "calendar": { "name": "Календарь", - "description": "Отображает события из ваших интеграций в календаре в определённом временном периоде", + "description": "", "option": { "releaseType": { "label": "Тип релиза Radarr", "options": { - "inCinemas": "В кинотеатрах", - "digitalRelease": "Цифровой релиз", - "physicalRelease": "Физический релиз" + "inCinemas": "", + "digitalRelease": "", + "physicalRelease": "" } }, "filterPastMonths": { - "label": "Начиная с" + "label": "" }, "filterFutureMonths": { - "label": "Заканчивая" + "label": "" } } }, @@ -1307,24 +1307,24 @@ "description": "Отображает текущую информацию о погоде для указанного местоположения.", "option": { "isFormatFahrenheit": { - "label": "Температура в градусах Фаренгейта" + "label": "" }, "location": { "label": "Местоположение" }, "showCity": { - "label": "Показывать город" + "label": "" }, "hasForecast": { - "label": "Показывать прогноз" + "label": "" }, "forecastDayCount": { - "label": "Количество дней прогноза", - "description": "Если виджет недостаточно широкий, будет показано меньше дней" + "label": "", + "description": "" }, "dateFormat": { - "label": "Формат даты", - "description": "Как должна отображаться дата" + "label": "", + "description": "" } }, "kind": { @@ -1332,9 +1332,9 @@ "mainlyClear": "Преимущественно ясно", "fog": "Туман", "drizzle": "Морось", - "freezingDrizzle": "Изморозь", + "freezingDrizzle": "Ледяная морось", "rain": "Дождь", - "freezingRain": "Моросящий дождь", + "freezingRain": "Ледяной дождь", "snowFall": "Снегопад", "snowGrains": "Снежная крупа", "rainShowers": "Ливень", @@ -1345,28 +1345,28 @@ } }, "indexerManager": { - "name": "Состояние индексаторов", - "description": "Статус ваших индексаторов", + "name": "Состояние менеджера индексации", + "description": "", "option": { "openIndexerSiteInNewTab": { - "label": "Открывать сайт индексатора в новой вкладке" + "label": "" } }, - "title": "Индексаторы", + "title": "Менеджер индексации", "testAll": "Проверить все", "error": { - "internalServerError": "Не удалось получить статус индексаторов" + "internalServerError": "" } }, "healthMonitoring": { "name": "Мониторинг состояния системы", - "description": "Отображает информацию о состоянии и работоспособности вашей системы (систем).", + "description": "Отображает информацию о состоянии и работоспособности ваших систем.", "option": { "fahrenheit": { "label": "Температура CPU в градусах Фаренгейта" }, "cpu": { - "label": "Показывать информацию о процессоре" + "label": "Показывать информацию о CPU" }, "memory": { "label": "Показать информацию о памяти" @@ -1376,41 +1376,41 @@ } }, "popover": { - "information": "Информация", - "processor": "Процессор: {cpuModelName}", - "memory": "Память: {memory}GiB", - "memoryAvailable": "Доступно: {memoryAvailable}GiB ({percent}%)", - "version": "Версия: {version}", - "uptime": "Время работы: {days} дн., {hours} ч., {minutes} мин.", - "loadAverage": "Средняя нагрузка:", - "minute": "1 минута", - "minutes": "{count} минут", - "used": "Использовано", + "information": "", + "processor": "", + "memory": "", + "memoryAvailable": "", + "version": "", + "uptime": "", + "loadAverage": "", + "minute": "", + "minutes": "", + "used": "", "available": "Доступно", - "lastSeen": "Последнее обновление: {lastSeen}" + "lastSeen": "" }, "memory": {}, "error": { - "internalServerError": "Не удалось получить данные о состоянии системы" + "internalServerError": "" } }, "common": { "location": { - "query": "Город / Почтовый индекс", - "latitude": "Широта", - "longitude": "Долгота", - "disabledTooltip": "Пожалуйста, введите город или почтовый индекс", - "unknownLocation": "Неизвестное местоположение", + "query": "", + "latitude": "", + "longitude": "", + "disabledTooltip": "", + "unknownLocation": "", "search": "Поиск", "table": { "header": { - "city": "Город", - "country": "Страна", - "coordinates": "Координаты", - "population": "Население" + "city": "", + "country": "", + "coordinates": "", + "population": "" }, "action": { - "select": "Выбрать {city}, {countryCode}" + "select": "" }, "population": { "fallback": "Неизвестно" @@ -1418,211 +1418,211 @@ } }, "integration": { - "noData": "Интеграции не найдены", - "description": "Нажмите , чтобы создать новую интеграцию" + "noData": "", + "description": "" }, "app": { "noData": "Приложения не найдены", - "description": "Нажмите , чтобы создать новое приложение" + "description": "" }, "error": { - "noIntegration": "Интеграция не выбрана", - "noData": "Данные интеграции недоступны" + "noIntegration": "", + "noData": "" }, "option": {} }, "video": { - "name": "Видеотрансляция", - "description": "Встраивает видео с камеры или трансляцию с веб-сайта", + "name": "Видеопоток", + "description": "Встраивание видеопотока или видео с камеры или веб-сайта", "option": { "feedUrl": { - "label": "URL трансляции" + "label": "URL потока" }, "hasAutoPlay": { "label": "Автовоспроизведение", - "description": "Автовоспроизведение работает только при отключенном звуке из-за ограничений браузера" + "description": "" }, "isMuted": { - "label": "Без звука" + "label": "" }, "hasControls": { - "label": "Показывать элементы управления" + "label": "" } }, "error": { - "noUrl": "URL видео не указан", - "forYoutubeUseIframe": "Для видео с YouTube используйте виджет iframe" + "noUrl": "", + "forYoutubeUseIframe": "" } }, "mediaServer": { - "name": "Активные просмотры", - "description": "Отображает текущие сеансы воспроизведения на медиасерверах", + "name": "", + "description": "", "option": {} }, "downloads": { - "name": "Загрузки", - "description": "Позволяет просматривать и управлять загрузками как из торрент-клиентов, так и из Usenet-клиентов.", + "name": "", + "description": "", "option": { "columns": { - "label": "Отображаемые столбцы" + "label": "" }, "enableRowSorting": { - "label": "Включить сортировку элементов" + "label": "" }, "defaultSort": { - "label": "Столбец для сортировки по умолчанию" + "label": "" }, "descendingDefaultSort": { - "label": "Обратная сортировка" + "label": "" }, "showCompletedUsenet": { - "label": "Показывать завершённые задачи Usenet" + "label": "" }, "showCompletedTorrent": { - "label": "Показывать завершённые торренты" + "label": "" }, "activeTorrentThreshold": { - "label": "Скрывать завершённые торренты ниже этого порога (в КиБ/с)" + "label": "" }, "categoryFilter": { - "label": "Фильтр по категориям/меткам" + "label": "" }, "filterIsWhitelist": { - "label": "Использовать фильтр как белый список" + "label": "" }, "applyFilterToRatio": { - "label": "Использовать фильтр при расчёте рейтинга" + "label": "" } }, "errors": { - "noColumns": "Выберите столбцы в настройках элементов", - "noCommunications": "Не удалось загрузить данные из интеграции" + "noColumns": "", + "noCommunications": "" }, "items": { "actions": { - "columnTitle": "Управление" + "columnTitle": "" }, "added": { - "columnTitle": "Добавлено", + "columnTitle": "", "detailsTitle": "Дата добавления" }, "category": { - "columnTitle": "Дополнительно", - "detailsTitle": "Категории (или дополнительная информация)" + "columnTitle": "", + "detailsTitle": "" }, "downSpeed": { "columnTitle": "Загрузка", "detailsTitle": "Скорость загрузки" }, "index": { - "columnTitle": "#", - "detailsTitle": "Текущий индекс в клиенте" + "columnTitle": "", + "detailsTitle": "" }, "id": { - "columnTitle": "Id" + "columnTitle": "" }, "integration": { "columnTitle": "Интеграция" }, "name": { - "columnTitle": "Название задачи" + "columnTitle": "" }, "progress": { "columnTitle": "Прогресс", - "detailsTitle": "Прогресс загрузки" + "detailsTitle": "" }, "ratio": { "columnTitle": "Рейтинг", - "detailsTitle": "Рейтинг торрента (получено/отдано)" + "detailsTitle": "" }, "received": { - "columnTitle": "Всего загружено", - "detailsTitle": "Всего загружено" + "columnTitle": "", + "detailsTitle": "" }, "sent": { - "columnTitle": "Всего отдано", - "detailsTitle": "Всего отдано" + "columnTitle": "", + "detailsTitle": "" }, "size": { - "columnTitle": "Размер файла", - "detailsTitle": "Общий размер выбранного/файлов" + "columnTitle": "", + "detailsTitle": "" }, "state": { "columnTitle": "Состояние", - "detailsTitle": "Состояние задачи" + "detailsTitle": "" }, "time": { - "columnTitle": "Время завершения", - "detailsTitle": "Время с/до завершения" + "columnTitle": "", + "detailsTitle": "" }, "type": { - "columnTitle": "Тип", - "detailsTitle": "Тип клиента загрузки" + "columnTitle": "", + "detailsTitle": "" }, "upSpeed": { "columnTitle": "Отдача", - "detailsTitle": "Скорость отдачи" + "detailsTitle": "" } }, "states": { "downloading": "Загрузка", - "queued": "В очереди", + "queued": "Очередь", "paused": "Приостановлено", "completed": "Завершено", - "failed": "Ошибка", - "processing": "Обработка", - "leeching": "Скачивание", - "stalled": "Простаивает", + "failed": "", + "processing": "", + "leeching": "", + "stalled": "", "unknown": "Неизвестно", - "seeding": "Раздача" + "seeding": "" }, "actions": { "clients": { - "modalTitle": "Клиенты", - "pause": "Приостановить все клиенты/задачи", - "resume": "Возобновить все клиенты/задачи" + "modalTitle": "", + "pause": "", + "resume": "" }, "client": { - "pause": "Приостановить клиент", - "resume": "Возобновить клиент" + "pause": "", + "resume": "" }, "item": { - "pause": "Приостановить задачу", - "resume": "Возобновить задачу", + "pause": "", + "resume": "", "delete": { - "title": "Удалить задачу", - "modalTitle": "Вы уверены, что хотите удалить эту задачу?", - "entry": "Удалить запись", - "entryAndFiles": "Удалить запись и файл(ы)" + "title": "", + "modalTitle": "", + "entry": "", + "entryAndFiles": "" } } }, - "globalRatio": "Общий рейтинг" + "globalRatio": "" }, "mediaRequests-requestList": { - "name": "Запросы медиаконтента", - "description": "Список всех запросов на добавление медиаконтента из вашего экземпляра Overseerr или Jellyseerr", + "name": "", + "description": "Просмотр списка всех запросов медиаконтента из вашего экземпляра Overseerr или Jellyseerr", "option": { "linksTargetNewTab": { "label": "Открывать ссылки в новой вкладке" } }, "pending": { - "approve": "Одобрить запрос", - "approving": "Одобрение запроса...", - "decline": "Отклонить запрос" + "approve": "", + "approving": "", + "decline": "" }, "availability": { "unknown": "Неизвестно", - "pending": "В ожидании", - "processing": "Обработка", - "partiallyAvailable": "Частично доступно", + "pending": "", + "processing": "", + "partiallyAvailable": "Частично", "available": "Доступно" }, - "toBeDetermined": "Будет определено позже" + "toBeDetermined": "" }, "mediaRequests-requestStats": { - "name": "Статистика запросов медиаконтента", + "name": "", "description": "Статистика по запросам медиаконтента", "option": {}, "titles": { @@ -1630,28 +1630,28 @@ "main": "Статистика медиаконтента", "approved": "Уже одобрено", "pending": "Ожидает одобрения", - "processing": "Обрабатывается", - "declined": "Уже отклонено", - "available": "Уже доступно", + "processing": "", + "declined": "", + "available": "", "tv": "Запросы сериалов", "movie": "Запросы фильмов", "total": "Всего" }, "users": { "main": "Топ пользователей", - "requests": "Запросы" + "requests": "" } } }, "mediaTranscoding": { - "name": "Перекодирование медиа", - "description": "Статистика, текущая очередь и состояние обработчиков перекодирования медиафайлов", + "name": "", + "description": "", "option": { "defaultView": { "label": "Вид по умолчанию" }, "queuePageSize": { - "label": "Размер страницы очереди" + "label": "" } }, "tab": { @@ -1659,24 +1659,24 @@ "queue": "Очередь", "statistics": "Статистика" }, - "currentIndex": "{start}-{end} из {total}", + "currentIndex": "", "healthCheck": { - "title": "Проверка работоспособности", - "queued": "В очереди", + "title": "", + "queued": "Очередь", "status": { "healthy": "Исправно", - "unhealthy": "Неисправно" + "unhealthy": "Неисправен" } }, "panel": { "statistics": { "empty": "Пусто", - "transcodes": "Перекодировано", - "transcodesCount": "Перекодировано: {value}", - "healthChecksCount": "Проверок: {value}", - "filesCount": "Файлов: {value}", - "savedSpace": "Сэкономлено места: {value}", - "healthChecks": "Проверки работоспособности", + "transcodes": "Перекодирования", + "transcodesCount": "", + "healthChecksCount": "", + "filesCount": "", + "savedSpace": "", + "healthChecks": "", "videoCodecs": "Кодеки", "videoContainers": "Контейнеры", "videoResolutions": "Разрешения" @@ -1688,7 +1688,7 @@ "eta": "Осталось", "progress": "Прогресс", "transcode": "Перекодирование", - "healthCheck": "Проверка" + "healthCheck": "" } }, "queue": { @@ -1697,37 +1697,37 @@ "file": "Файл", "size": "Размер", "transcode": "Перекодирование", - "healthCheck": "Проверка" + "healthCheck": "" } } } }, "rssFeed": { - "name": "RSS-ленты", - "description": "Отслеживание и отображение одной или нескольких RSS, ATOM или JSON-лент", + "name": "", + "description": "", "option": { "feedUrls": { - "label": "URL-адреса лент" + "label": "" }, "enableRtl": { - "label": "Включить режим RTL" + "label": "" }, "textLinesClamp": { - "label": "Ограничение строк описания" + "label": "" }, "maximumAmountPosts": { - "label": "Максимальное количество записей" + "label": "" } } } }, "widgetPreview": { "toggle": { - "enabled": "Режим редактирования включён", - "disabled": "Режим редактирования отключён" + "enabled": "", + "disabled": "" }, "dimensions": { - "title": "Изменить размеры" + "title": "" } }, "board": { @@ -1735,53 +1735,53 @@ "edit": { "notification": { "success": { - "title": "Изменения применены", - "message": "Панель успешно сохранена" + "title": "Изменения сохранены", + "message": "" }, "error": { - "title": "Не удалось применить изменения", - "message": "Не удалось сохранить панель" + "title": "Не удалось сохранить", + "message": "" } }, "confirmLeave": { - "title": "Несохранённые изменения", - "message": "У вас есть несохранённые изменения. Вы уверены, что хотите выйти?" + "title": "", + "message": "" } }, "oldImport": { - "label": "Импорт из версии Homarr до 1.0.0", + "label": "", "notification": { "success": { - "title": "Импорт успешно выполнен", - "message": "Панель успешно импортирована" + "title": "", + "message": "" }, "error": { - "title": "Импорт не удался", - "message": "Не удалось импортировать панель, проверьте логи для дополнительной информации" + "title": "", + "message": "" } }, "form": { "file": { - "label": "Выберите JSON-файл", - "invalidError": "Недействительный файл конфигурации" + "label": "", + "invalidError": "" }, "apps": { "label": "Приложения", "avoidDuplicates": { - "label": "Избегать дубликатов", - "description": "Игнорирует приложения, для которых уже существует приложение с тем же URL-адресом" + "label": "", + "description": "" }, "onlyImportApps": { - "label": "Импортировать только приложения", - "description": "Добавляет только приложения, панель нужно будет создать заново вручную" + "label": "", + "description": "" } }, "name": { - "label": "Название панели" + "label": "" }, "screenSize": { - "label": "Размер экрана", - "description": "В версиях до 1.0 существовало три разных режима, поэтому вы могли выбрать количество столбцов для каждого размера экрана.", + "label": "", + "description": "", "option": { "sm": "Маленький", "md": "Средний", @@ -1789,16 +1789,16 @@ } }, "sidebarBehavior": { - "label": "Поведение боковых панелей", - "description": "Боковые панели были удалены в версии 1.0, вы можете выбрать, что должно произойти с элементами внутри них.", + "label": "", + "description": "", "option": { "lastSection": { - "label": "Последний раздел", - "description": "Боковая панель будет отображаться под последним разделом" + "label": "", + "description": "" }, "removeItems": { - "label": "Удалить элементы", - "description": "Элементы, содержащиеся в боковой панели, будут удалены" + "label": "", + "description": "" } } } @@ -1807,64 +1807,64 @@ }, "field": { "pageTitle": { - "label": "Заголовок страницы" + "label": "" }, "metaTitle": { - "label": "Мета-заголовок" + "label": "" }, "logoImageUrl": { - "label": "URL изображения логотипа" + "label": "" }, "faviconImageUrl": { - "label": "URL изображения favicon" + "label": "" }, "backgroundImageUrl": { - "label": "URL фонового изображения" + "label": "" }, "backgroundImageAttachment": { - "label": "Поведение фонового изображения", + "label": "Закрепление фонового изображения", "option": { "fixed": { - "label": "Фиксированное", - "description": "Фон остаётся на одном месте при прокрутке." + "label": "", + "description": "" }, "scroll": { - "label": "Прокручиваемое", - "description": "Фон прокручивается вместе со страницей." + "label": "", + "description": "" } } }, "backgroundImageRepeat": { - "label": "Повторение фонового изображения", + "label": "", "option": { "repeat": { - "label": "Повторять", - "description": "Изображение повторяется столько раз, сколько необходимо для заполнения всей области фона." + "label": "", + "description": "" }, "no-repeat": { - "label": "Не повторять", - "description": "Изображение не повторяется и может не заполнить всё пространство." + "label": "", + "description": "" }, "repeat-x": { - "label": "Повторять по горизонтали", - "description": "То же, что и 'Повторять', но только по горизонтальной оси." + "label": "", + "description": "" }, "repeat-y": { - "label": "Повторять по вертикали", - "description": "То же, что и 'Повторять', но только по вертикальной оси." + "label": "", + "description": "" } } }, "backgroundImageSize": { - "label": "Размер фонового изображения", + "label": "Повторение фонового изображения", "option": { "cover": { - "label": "Заполнение", - "description": "Масштабирует изображение с сохранением пропорций так, чтобы оно целиком заполнило область, обрезая излишки." + "label": "", + "description": "" }, "contain": { - "label": "Уместить", - "description": "Масштабирует изображение с сохранением пропорций так, чтобы оно полностью поместилось в область без обрезки." + "label": "", + "description": "" } } }, @@ -1875,61 +1875,61 @@ "label": "Дополнительный цвет" }, "opacity": { - "label": "Прозрачность" + "label": "" }, "customCss": { - "label": "Пользовательский CSS для этой панели", - "description": "Дополнительная настройка вашей панели с помощью CSS, рекомендуется только опытным пользователям", + "label": "", + "description": "Дополнительная настройка панели управления с помощью CSS (рекомендуется только опытным пользователям)", "customClassesAlert": { - "title": "Пользовательские классы", - "description": "Вы можете добавлять пользовательские классы к элементам панели в расширенных настройках каждого элемента и использовать их в пользовательском CSS выше." + "title": "", + "description": "" } }, "columnCount": { - "label": "Количество столбцов" + "label": "" }, "name": { "label": "Название" }, "isPublic": { - "label": "Публичная", - "description": "Публичные панели доступны всем, даже без учётной записи." + "label": "Публичный", + "description": "" } }, "content": { - "metaTitle": "Панель {boardName}" + "metaTitle": "" }, "setting": { - "title": "Настройки панели {boardName}", + "title": "", "section": { "general": { - "title": "Общие", - "unrecognizedLink": "Указанная ссылка не распознана и не будет показана в предпросмотре, но может всё ещё работать." + "title": "Основное", + "unrecognizedLink": "" }, "layout": { - "title": "Компоновка" + "title": "Макет" }, "background": { "title": "Фон" }, "color": { - "title": "Цвета" + "title": "" }, "customCss": { - "title": "Пользовательский CSS" + "title": "" }, "access": { - "title": "Управление доступом", + "title": "", "permission": { "item": { "view": { "label": "Просмотр панели" }, "modify": { - "label": "Изменение панели" + "label": "" }, "full": { - "label": "Полный доступ" + "label": "" } } } @@ -1938,41 +1938,41 @@ "title": "Опасная зона", "action": { "rename": { - "label": "Переименовать панель", - "description": "Изменение названия нарушит все существующие ссылки на эту панель.", - "button": "Изменить название", + "label": "", + "description": "", + "button": "", "modal": { - "title": "Переименовать панель" + "title": "" } }, "visibility": { - "label": "Изменить видимость панели", + "label": "", "description": { - "public": "Эта панель сейчас публичная.", - "private": "Эта панель сейчас приватная." + "public": "", + "private": "" }, "button": { - "public": "Сделать приватной", - "private": "Сделать публичной" + "public": "", + "private": "" }, "confirm": { "public": { - "title": "Сделать панель приватной", - "description": "Вы уверены, что хотите сделать эту панель приватной? Панель будет скрыта от публичного доступа. Ссылки для гостевых пользователей перестанут работать." + "title": "", + "description": "" }, "private": { - "title": "Сделать панель публичной", - "description": "Вы уверены, что хотите сделать эту панель публичной? Панель станет доступной для всех." + "title": "", + "description": "" } } }, "delete": { - "label": "Удалить эту панель", - "description": "После удаления панели восстановление будет невозможно. Пожалуйста, будьте уверены в своём решении.", - "button": "Удалить эту панель", + "label": "", + "description": "", + "button": "", "confirm": { - "title": "Удалить панель", - "description": "Вы уверены, что хотите удалить эту панель? Действие навсегда удалит панель и всё её содержимое." + "title": "Удаление панели", + "description": "" } } } @@ -1982,46 +1982,46 @@ "error": { "noBoard": { "title": "Добро пожаловать в Homarr", - "description": "Современная панель управления для удобного доступа к вашим приложениям и сервисам.", + "description": "", "link": "Создать первую панель", - "notice": "Чтобы убрать эту страницу, создайте панель и установите её как домашнюю" + "notice": "" }, "notFound": { - "title": "Панель не найдена", - "description": "Указанная панель не найдена или у вас нет к ней доступа.", + "title": "", + "description": "", "link": "Просмотр всех панелей", - "notice": "Проверьте ссылку или обратитесь к администратору, если считаете, что она должна быть доступна" + "notice": "" }, "homeBoard": { - "title": "Нет домашней панели", + "title": "", "admin": { - "description": "Домашняя панель для сервера ещё не установлена.", - "link": "Настроить общесерверную домашнюю панель", - "notice": "Чтобы убрать эту страницу для всех пользователей, установите домашнюю панель для сервера" + "description": "", + "link": "", + "notice": "" }, "user": { - "description": "Вы ещё не установили домашнюю панель.", - "link": "Настроить вашу домашнюю панель", - "notice": "Чтобы убрать эту страницу, укажите домашнюю панель в настройках" + "description": "", + "link": "", + "notice": "" }, "anonymous": { - "description": "Администратор сервера ещё не установил домашнюю панель.", - "link": "Просмотр публичных панелей", - "notice": "Чтобы убрать эту страницу, попросите администратора сервера установить домашнюю панель" + "description": "", + "link": "", + "notice": "" } } } }, "management": { - "metaTitle": "Управление", + "metaTitle": "", "title": { - "morning": "Доброе утро, {username}", - "afternoon": "Добрый день, {username}", - "evening": "Добрый вечер, {username}" + "morning": "", + "afternoon": "", + "evening": "" }, "notFound": { - "title": "Не найдено", - "text": "Запрошенный ресурс не найден" + "title": "", + "text": "" }, "navbar": { "items": { @@ -2043,9 +2043,9 @@ "label": "Инструменты", "items": { "docker": "Docker", - "logs": "Логи", + "logs": "", "api": "API", - "tasks": "Задачи" + "tasks": "" } }, "settings": "Настройки", @@ -2053,9 +2053,9 @@ "label": "Справка", "items": { "documentation": "Документация", - "submitIssue": "Сообщить о проблеме", + "submitIssue": "", "discord": "Сообщество Discord", - "sourceCode": "Исходный код" + "sourceCode": "" } }, "about": "О программе" @@ -2073,41 +2073,41 @@ }, "statisticLabel": { "boards": "Панели", - "resources": "Ресурсы", - "authentication": "Аутентификация", - "authorization": "Авторизация" + "resources": "", + "authentication": "", + "authorization": "" } }, "board": { "title": "Ваши панели", "action": { "new": { - "label": "Новая панель" + "label": "" }, "open": { - "label": "Открыть панель" + "label": "" }, "settings": { "label": "Настройки" }, "setHomeBoard": { - "label": "Сделать домашней панелью", + "label": "", "badge": { "label": "Главная", - "tooltip": "Эта панель будет показываться как ваша домашняя панель" + "tooltip": "" } }, "delete": { "label": "Удалить навсегда", "confirm": { "title": "Удаление панели", - "description": "Вы уверены, что хотите удалить панель {name}?" + "description": "" } } }, "visibility": { - "public": "Эта панель публичная", - "private": "Эта панель приватная" + "public": "", + "private": "" }, "modal": { "createBoard": { @@ -2120,16 +2120,16 @@ } }, "media": { - "includeFromAllUsers": "Включая медиафайлы от всех пользователей" + "includeFromAllUsers": "" }, "user": { - "back": "Вернуться к пользователям", - "fieldsDisabledExternalProvider": "Некоторые поля отключены, так как ими управляет внешняя система аутентификации.", + "back": "", + "fieldsDisabledExternalProvider": "", "setting": { "general": { - "title": "Общие", + "title": "Основное", "item": { - "language": "Язык и регион", + "language": "", "board": "Домашняя панель", "firstDayOfWeek": "Первый день недели", "accessibility": "Специальные возможности" @@ -2147,25 +2147,25 @@ "title": "Пользователи" }, "edit": { - "metaTitle": "Редактирование пользователя {username}" + "metaTitle": "" }, "create": { "metaTitle": "Создание пользователя", - "title": "Создать нового пользователя", + "title": "", "step": { "personalInformation": { - "label": "Личные данные" + "label": "" }, "security": { "label": "Безопасность" }, "groups": { "label": "Группы", - "title": "Выберите все группы, в которые должен входить пользователь", - "description": "Группа {everyoneGroup} назначается всем пользователям и не может быть удалена." + "title": "", + "description": "" }, "review": { - "label": "Проверка" + "label": "" }, "completed": { "title": "Пользователь создан" @@ -2175,22 +2175,22 @@ } }, "action": { - "createAnother": "Создать ещё одного пользователя", - "back": "Вернуться к списку пользователей" + "createAnother": "", + "back": "" } }, "invite": { "title": "Управление приглашениями", "action": { "new": { - "title": "Новое приглашение", + "title": "", "description": "После истечения срока действия приглашение станет недействительным, и получатель не сможет создать учётную запись." }, "copy": { - "title": "Копировать приглашение", - "description": "Приглашение сгенерировано. После закрытия этого окна вы больше не сможете скопировать эту ссылку. Если вы передумали приглашать пользователя, вы можете удалить это приглашение в любое время.", - "link": "Ссылка для приглашения", - "button": "Копировать и закрыть" + "title": "", + "description": "", + "link": "Ссылка приглашения", + "button": "" }, "delete": { "title": "Удалить приглашение", @@ -2205,7 +2205,7 @@ "label": "Создатель" }, "expirationDate": { - "label": "Срок действия" + "label": "Дата истечения срока" }, "token": { "label": "Токен" @@ -2214,23 +2214,23 @@ } }, "group": { - "back": "Вернуться к группам", + "back": "", "setting": { "general": { - "title": "Общие", + "title": "Основное", "owner": "Владелец", - "ownerOfGroup": "Владелец этой группы", - "ownerOfGroupDeleted": "Владелец этой группы был удалён. В данный момент у группы нет владельца." + "ownerOfGroup": "", + "ownerOfGroupDeleted": "" }, "members": { "title": "Участники", - "search": "Найти участника", - "notFound": "Участники не найдены" + "search": "", + "notFound": "" }, "permissions": { - "title": "Разрешения", + "title": "", "form": { - "unsavedChanges": "У вас есть несохранённые изменения!" + "unsavedChanges": "" } } } @@ -2239,133 +2239,133 @@ "title": "Настройки", "notification": { "success": { - "message": "Настройки успешно сохранены" + "message": "" }, "error": { - "message": "Не удалось сохранить настройки" + "message": "" } }, "section": { "analytics": { - "title": "Аналитика", + "title": "", "general": { - "title": "Отправлять анонимную аналитику", - "text": "Homarr использует открытое программное обеспечение Umami для сбора обезличенных данных об использовании. Сбор данных никогда не включает личную информацию и полностью соответствует GDPR и CCPA. Мы рекомендуем включить аналитику, так как это помогает нашей команде выявлять проблемы и определять приоритеты в разработке." + "title": "", + "text": "" }, "widgetData": { - "title": "Данные о виджетах", - "text": "Отправлять информацию о настроенных виджетах (и их количестве). Не включает URL-адреса, названия или другие данные." + "title": "", + "text": "" }, "integrationData": { - "title": "Данные об интеграциях", - "text": "Отправлять информацию о настроенных интеграциях (и их количестве). Не включает URL-адреса, названия или другие данные." + "title": "", + "text": "" }, "usersData": { - "title": "Данные о пользователях", - "text": "Отправлять количество пользователей и информацию об использовании единого входа" + "title": "", + "text": "" } }, "crawlingAndIndexing": { - "title": "Сканирование и индексация", - "warning": "Включение или отключение любых настроек здесь существенно повлияет на то, как поисковые системы будут индексировать и сканировать вашу страницу. Все настройки носят рекомендательный характер, и поисковые системы могут учитывать их по своему усмотрению. Изменения могут вступить в силу через несколько дней или недель. Некоторые настройки могут быть специфичны для конкретных поисковых систем.", + "title": "", + "warning": "", "noIndex": { - "title": "Не индексировать", - "text": "Не индексировать сайт в поисковых системах и не показывать его в результатах поиска" + "title": "", + "text": "" }, "noFollow": { - "title": "Не следовать по ссылкам", - "text": "Не переходить по ссылкам при индексации. Отключение приведёт к тому, что поисковые роботы будут пытаться перейти по всем ссылкам в Homarr." + "title": "", + "text": "" }, "noTranslate": { - "title": "Не предлагать перевод", - "text": "Когда язык сайта отличается от предпочитаемого пользователем, Google будет показывать ссылку на перевод в результатах поиска" + "title": "", + "text": "" }, "noSiteLinksSearchBox": { - "title": "Не показывать поле поиска по сайту", - "text": "Google создаст поле поиска с найденными ссылками вместе с другими прямыми ссылками. Включение этой опции попросит Google отключить это поле." + "title": "", + "text": "" } }, "board": { "title": "Панели", "homeBoard": { - "label": "Общая домашняя панель", - "description": "Для выбора доступны только публичные панели" + "label": "", + "description": "" } }, "appearance": { "title": "Внешний вид", "defaultColorScheme": { - "label": "Цветовая схема по умолчанию", + "label": "", "options": { - "light": "Светлая", - "dark": "Тёмная" + "light": "", + "dark": "" } } }, "culture": { - "title": "Локализация", + "title": "", "defaultLocale": { - "label": "Язык по умолчанию" + "label": "" } } } }, "tool": { "tasks": { - "title": "Задачи", + "title": "", "status": { - "idle": "Ожидание", - "running": "Выполняется", + "idle": "", + "running": "Работает", "error": "Ошибка" }, "job": { "iconsUpdater": { - "label": "Обновление иконок" + "label": "" }, "analytics": { - "label": "Аналитика" + "label": "" }, "smartHomeEntityState": { - "label": "Состояние объектов умного дома" + "label": "" }, "ping": { - "label": "Проверка доступности" + "label": "" }, "mediaServer": { "label": "Медиасервер" }, "mediaOrganizer": { - "label": "Организация медиафайлов" + "label": "" }, "downloads": { - "label": "Загрузки" + "label": "" }, "mediaRequestStats": { - "label": "Статистика запросов медиаконтента" + "label": "" }, "mediaRequestList": { - "label": "Список запросов медиаконтента" + "label": "" }, "rssFeeds": { - "label": "RSS-ленты" + "label": "" }, "indexerManager": { - "label": "Управление индексаторами" + "label": "" }, "healthMonitoring": { - "label": "Мониторинг состояния" + "label": "" }, "dnsHole": { - "label": "Данные DNS-фильтра" + "label": "" }, "sessionCleanup": { - "label": "Очистка сессий" + "label": "" }, "updateChecker": { - "label": "Проверка обновлений" + "label": "" }, "mediaTranscoding": { - "label": "Перекодирование медиафайлов" + "label": "" } } }, @@ -2373,9 +2373,9 @@ "title": "API", "modal": { "createApiToken": { - "title": "API-токен создан", - "description": "API-токен создан. Этот токен зашифрован в базе данных и будет показан только один раз. После закрытия окна его нельзя будет восстановить.", - "button": "Копировать и закрыть" + "title": "", + "description": "", + "button": "" } }, "tab": { @@ -2383,15 +2383,15 @@ "label": "Документация" }, "apiKey": { - "label": "Аутентификация", - "title": "API-ключи", + "label": "", + "title": "", "button": { - "createApiToken": "Создать API-токен" + "createApiToken": "" }, "table": { "header": { "id": "ID", - "createdBy": "Создан пользователем" + "createdBy": "" } } } @@ -2399,20 +2399,20 @@ } }, "about": { - "version": "Версия {version}", - "text": "Homarr — это проект с открытым исходным кодом, поддерживаемый сообществом и развиваемый добровольцами. Благодаря этим людям Homarr остаётся растущим проектом с 2021 года. Наша команда работает над Homarr полностью удалённо из разных стран в своё свободное время без какой-либо компенсации.", + "version": "", + "text": "", "accordion": { "contributors": { - "title": "Участники проекта", - "subtitle": "{count} поддерживают код и Homarr" + "title": "", + "subtitle": "" }, "translators": { - "title": "Переводчики", - "subtitle": "{count} помогают с переводами на разные языки" + "title": "", + "subtitle": "" }, "libraries": { - "title": "Библиотеки", - "subtitle": "{count} используются в коде Homarr" + "title": "", + "subtitle": "" } } } @@ -2421,9 +2421,9 @@ "docker": { "title": "Контейнеры", "table": { - "updated": "Обновлено {when}", - "search": "Поиск среди {count} контейнеров", - "selected": "Выбрано {selectCount} из {totalCount} контейнеров" + "updated": "", + "search": "", + "selected": "" }, "field": { "name": { @@ -2434,11 +2434,11 @@ "option": { "created": "Создан", "running": "Работает", - "paused": "Приостановлен", - "restarting": "Перезапускается", - "exited": "Остановлен", - "removing": "Удаляется", - "dead": "Нерабочий" + "paused": "Приостановлено", + "restarting": "Перезапуск", + "exited": "", + "removing": "Удаление", + "dead": "" } }, "containerImage": { @@ -2453,12 +2453,12 @@ "label": "Запустить", "notification": { "success": { - "title": "Контейнеры запущены", - "message": "Контейнеры успешно запущены" + "title": "", + "message": "" }, "error": { - "title": "Не удалось запустить контейнеры", - "message": "Не удалось запустить контейнеры" + "title": "", + "message": "" } } }, @@ -2466,12 +2466,12 @@ "label": "Остановить", "notification": { "success": { - "title": "Контейнеры остановлены", - "message": "Контейнеры успешно остановлены" + "title": "", + "message": "" }, "error": { - "title": "Не удалось остановить контейнеры", - "message": "Не удалось остановить контейнеры" + "title": "", + "message": "" } } }, @@ -2479,12 +2479,12 @@ "label": "Перезапустить", "notification": { "success": { - "title": "Контейнеры перезапущены", - "message": "Контейнеры успешно перезапущены" + "title": "", + "message": "" }, "error": { - "title": "Не удалось перезапустить контейнеры", - "message": "Не удалось перезапустить контейнеры" + "title": "", + "message": "" } } }, @@ -2492,45 +2492,45 @@ "label": "Удалить", "notification": { "success": { - "title": "Контейнеры удалены", - "message": "Контейнеры успешно удалены" + "title": "", + "message": "" }, "error": { - "title": "Не удалось удалить контейнеры", - "message": "Не удалось удалить контейнеры" + "title": "", + "message": "" } } }, "refresh": { - "label": "Обновить", + "label": "", "notification": { "success": { - "title": "Контейнеры обновлены", - "message": "Отображаются актуальные данные" + "title": "", + "message": "" }, "error": { - "title": "Не удалось обновить контейнеры", - "message": "Произошла ошибка при обновлении данных о контейнерах" + "title": "", + "message": "" } } } }, "error": { - "internalServerError": "Произошла ошибка при обновлении данных о контейнерах" + "internalServerError": "" } }, "permission": { - "title": "Права доступа", + "title": "", "userSelect": { - "title": "Добавить права для пользователя" + "title": "" }, "groupSelect": { - "title": "Добавить права для группы" + "title": "" }, "tab": { "user": "Пользователи", "group": "Группы", - "inherited": "Унаследованные группы" + "inherited": "" }, "field": { "user": { @@ -2540,12 +2540,12 @@ "label": "Группа" }, "permission": { - "label": "Права доступа" + "label": "" } }, "action": { - "saveUser": "Сохранить права пользователя", - "saveGroup": "Сохранить права группы" + "saveUser": "", + "saveGroup": "" } }, "navigationStructure": { @@ -2560,13 +2560,13 @@ "label": "Редактировать" }, "new": { - "label": "Новая" + "label": "" } }, "search-engines": { "label": "Поисковые системы", "new": { - "label": "Новая" + "label": "" }, "edit": { "label": "Редактировать" @@ -2578,7 +2578,7 @@ "apps": { "label": "Приложения", "new": { - "label": "Новое" + "label": "" }, "edit": { "label": "Редактировать" @@ -2589,7 +2589,7 @@ "create": { "label": "Создать" }, - "general": "Общие", + "general": "Основное", "security": "Безопасность", "board": "Панели", "groups": { @@ -2605,7 +2605,7 @@ "label": "Docker" }, "logs": { - "label": "Логи" + "label": "" } }, "settings": { @@ -2617,28 +2617,28 @@ } }, "search": { - "placeholder": "Найдётся все", - "nothingFound": "Ничего не найдено", + "placeholder": "", + "nothingFound": "", "error": { - "fetch": "Произошла ошибка при получении данных" + "fetch": "" }, "mode": { "appIntegrationBoard": { - "help": "Поиск приложений, интеграций или панелей", + "help": "", "group": { "app": { "title": "Приложения", "children": { "action": { "open": { - "label": "Открыть URL приложения" + "label": "" }, "edit": { - "label": "Редактировать приложение" + "label": "Редактирование приложения" } }, "detail": { - "title": "Выберите действие для приложения" + "title": "" } } }, @@ -2647,17 +2647,17 @@ "children": { "action": { "open": { - "label": "Открыть панель" + "label": "" }, "homeBoard": { - "label": "Сделать домашней панелью" + "label": "" }, "settings": { - "label": "Открыть настройки" + "label": "" } }, "detail": { - "title": "Выберите действие для панели" + "title": "" } } }, @@ -2667,94 +2667,94 @@ } }, "command": { - "help": "Активировать режим команд", + "help": "", "group": { "localCommand": { - "title": "Локальные команды" + "title": "" }, "globalCommand": { - "title": "Глобальные команды", + "title": "", "option": { "colorScheme": { - "light": "Переключить на светлую тему", - "dark": "Переключить на тёмную тему" + "light": "", + "dark": "" }, "language": { - "label": "Изменить язык", + "label": "", "children": { "detail": { - "title": "Выберите предпочитаемый язык" + "title": "" } } }, "newBoard": { - "label": "Создать новую панель" + "label": "" }, "importBoard": { - "label": "Импортировать панель" + "label": "" }, "newApp": { - "label": "Создать новое приложение" + "label": "" }, "newIntegration": { - "label": "Создать новую интеграцию", + "label": "", "children": { "detail": { - "title": "Выберите тип интеграции для создания" + "title": "" } } }, "newUser": { - "label": "Создать нового пользователя" + "label": "" }, "newInvite": { - "label": "Создать новое приглашение" + "label": "" }, "newGroup": { - "label": "Создать новую группу" + "label": "" } } } } }, "external": { - "help": "Использовать внешнюю поисковую систему", + "help": "", "group": { "searchEngine": { "title": "Поисковые системы", "children": { "action": { "search": { - "label": "Искать через {name}" + "label": "" } }, "detail": { - "title": "Выберите действие для поисковой системы" + "title": "" }, "searchResults": { - "title": "Выберите результат поиска для действий" + "title": "" } }, "option": { "google": { - "name": "Google", - "description": "Поиск в интернете через Google" + "name": "", + "description": "" }, "bing": { - "name": "Bing", - "description": "Поиск в интернете через Bing" + "name": "", + "description": "" }, "duckduckgo": { - "name": "DuckDuckGo", - "description": "Поиск в интернете через DuckDuckGo" + "name": "", + "description": "" }, "torrent": { "name": "Торренты", - "description": "Поиск торрентов на torrentdownloads.pro" + "description": "" }, "youTube": { - "name": "YouTube", - "description": "Поиск видео на YouTube" + "name": "", + "description": "" } } } @@ -2763,7 +2763,7 @@ "help": { "group": { "mode": { - "title": "Режимы" + "title": "" }, "help": { "title": "Справка", @@ -2772,7 +2772,7 @@ "label": "Документация" }, "submitIssue": { - "label": "Сообщить о проблеме" + "label": "" }, "discord": { "label": "Сообщество Discord" @@ -2784,57 +2784,57 @@ "home": { "group": { "local": { - "title": "Локальные результаты" + "title": "" } } }, "page": { - "help": "Поиск по страницам", + "help": "", "group": { "page": { - "title": "Страницы", + "title": "", "option": { "manageHome": { - "label": "Управление главной страницей" + "label": "" }, "manageBoard": { - "label": "Управление панелями" + "label": "" }, "manageApp": { - "label": "Управление приложениями" + "label": "" }, "manageIntegration": { - "label": "Управление интеграциями" + "label": "" }, "manageSearchEngine": { - "label": "Управление поисковыми системами" + "label": "" }, "manageMedia": { - "label": "Управление медиафайлами" + "label": "" }, "manageUser": { "label": "Управление пользователями" }, "manageInvite": { - "label": "Управление приглашениями" + "label": "" }, "manageGroup": { - "label": "Управление группами" + "label": "" }, "manageDocker": { - "label": "Управление Docker" + "label": "" }, "manageApi": { - "label": "Swagger API" + "label": "" }, "manageLog": { - "label": "Просмотр логов" + "label": "Просмотр журналов" }, "manageTask": { - "label": "Управление задачами" + "label": "" }, "manageSettings": { - "label": "Глобальные настройки" + "label": "" }, "about": { "label": "О программе" @@ -2850,18 +2850,18 @@ } }, "userGroup": { - "help": "Поиск пользователей или групп", + "help": "", "group": { "user": { "title": "Пользователи", "children": { "action": { "detail": { - "label": "Показать сведения о пользователе" + "label": "" } }, "detail": { - "title": "Выберите действие для пользователя" + "title": "" } } }, @@ -2870,17 +2870,17 @@ "children": { "action": { "detail": { - "label": "Показать сведения о группе" + "label": "" }, "manageMember": { - "label": "Управление участниками" + "label": "" }, "managePermission": { - "label": "Управление разрешениями" + "label": "" } }, "detail": { - "title": "Выберите действие для группы" + "title": "" } } } @@ -2888,16 +2888,16 @@ } }, "engine": { - "search": "Найти поисковую систему", + "search": "", "field": { "name": { "label": "Название" }, "short": { - "label": "Краткое название" + "label": "" }, "urlTemplate": { - "label": "Шаблон URL поиска" + "label": "" }, "description": { "label": "Описание" @@ -2907,53 +2907,53 @@ "list": { "title": "Поисковые системы", "noResults": { - "title": "Поисковые системы пока отсутствуют", - "action": "Создать первую поисковую систему" + "title": "", + "action": "" }, - "interactive": "Интерактивная, использует интеграцию" + "interactive": "" }, "create": { - "title": "Новая поисковая система", + "title": "", "notification": { "success": { - "title": "Поисковая система создана", - "message": "Поисковая система успешно создана" + "title": "", + "message": "" }, "error": { - "title": "Не удалось создать", - "message": "Не удалось создать поисковую систему" + "title": "", + "message": "" } } }, "edit": { - "title": "Редактирование поисковой системы", + "title": "", "notification": { "success": { "title": "Изменения сохранены", - "message": "Поисковая система успешно сохранена" + "message": "" }, "error": { "title": "Не удалось сохранить", - "message": "Не удалось сохранить поисковую систему" + "message": "" } }, - "configControl": "Настройка", + "configControl": "", "searchEngineType": { - "generic": "Обычная", - "fromIntegration": "Из интеграции" + "generic": "", + "fromIntegration": "" } }, "delete": { - "title": "Удаление поисковой системы", - "message": "Вы уверены, что хотите удалить поисковую систему '{name}'?", + "title": "", + "message": "", "notification": { "success": { - "title": "Поисковая система удалена", - "message": "Поисковая система успешно удалена" + "title": "", + "message": "" }, "error": { - "title": "Не удалось удалить", - "message": "Не удалось удалить поисковую систему" + "title": "", + "message": "" } } } diff --git a/packages/translation/src/lang/sk.json b/packages/translation/src/lang/sk.json index a3052d75e..c58d9e6e2 100644 --- a/packages/translation/src/lang/sk.json +++ b/packages/translation/src/lang/sk.json @@ -1381,7 +1381,7 @@ "memory": "Pamäť: {memory}GiB", "memoryAvailable": "K dispozícii: {memoryAvailable}GiB ({percent}%)", "version": "Verzia: {version}", - "uptime": "Doba prevádzky: {days} dní, {hours} hodín, {minutes} minút", + "uptime": "", "loadAverage": "Priemerné zaťaženie:", "minute": "1 minúta", "minutes": "{count} minút", diff --git a/packages/translation/src/lang/sl.json b/packages/translation/src/lang/sl.json index 6b13bf358..0eb9cbe13 100644 --- a/packages/translation/src/lang/sl.json +++ b/packages/translation/src/lang/sl.json @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "", + "title": "Admin", "item": { "admin": { "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": { @@ -1685,7 +1685,7 @@ "empty": "Prazno", "table": { "file": "", - "eta": "", + "eta": "ETA", "progress": "Napredek", "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" @@ -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 b3760d305..26b80deb7 100644 --- a/packages/translation/src/lang/sv.json +++ b/packages/translation/src/lang/sv.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "", + "label": "Token", "description": "" } }, @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "", + "title": "Admin", "item": { "admin": { "label": "", @@ -1026,7 +1026,7 @@ "label": "" }, "layout": { - "label": "", + "label": "Layout", "option": { "row": { "label": "Horisontal" @@ -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": "" @@ -1677,8 +1677,8 @@ "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "", - "videoContainers": "", + "videoCodecs": "Codecs", + "videoContainers": "Containers", "videoResolutions": "Upplösningar" }, "workers": { @@ -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" } } } @@ -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 8f30f49aa..da58c90f6 100644 --- a/packages/translation/src/lang/tr.json +++ b/packages/translation/src/lang/tr.json @@ -6,59 +6,59 @@ "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": "Sıfırdan Başla", - "importOldmarr": "Homarr 1.0'dan Önceki Yedeğinizi İçe Aktarın" + "scratch": "Sıfırdan başlayın", + "importOldmarr": "Homarr 1.0'dan önceki yedeğinizi içe aktarın" } }, "import": { - "title": "Verileri İçe Aktar", - "subtitle": "Mevcut Homarr Örneğinden Alınan Verileri İçe Aktarabilirsiniz.", + "title": "Verileri içe aktar", + "subtitle": "Mevcut bir Homarr örneğinden alınan verileri içe aktarabilirsiniz.", "dropzone": { "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": "Dosyayı Değiştir" + "change": "Dosyayı değiştir" } }, "importSettings": { - "title": "İçe Aktarma Ayarları", - "description": "İçe Aktarma İşlevlerini Yapılandırın" + "title": "İçe aktarma ayarları", + "description": "İçe aktarma işlevlerini yapılandırın" }, "boardSelection": { - "title": "{count} Panel Bulundu", - "description": "İçe Aktarılacak Tüm Panellerin Boyutlarını Seçin", + "title": "{count} panel bulundu", + "description": "İçe aktarılacak tüm panellerin boyutlarını seçin", "action": { - "selectAll": "Tümünü Seç", - "unselectAll": "Tüm Seçimi Kaldır" + "selectAll": "Tümünü seç", + "unselectAll": "Tüm seçimi kaldır" } }, "summary": { - "title": "İçe Aktarma Özeti", - "description": "Aşağıdaki Özeti Kontrol Ederek İçe Aktarılacak İşlevleri Görebilirsiniz", + "title": "İçe aktarma özeti", + "description": "Aşağıdaki özeti kontrol ederek içe aktarılacak işlevleri görebilirsiniz", "action": { - "import": "İçe Aktarmayı Onayla ve Devam Et" + "import": "İçe aktarmayı onayla ve devam et" }, "entities": { "apps": "Uygulamalar", "boards": "Paneller", "integrations": "Entegrasyonlar", - "credentialUsers": "Kullanıcı Kimlik Bilgileri" + "credentialUsers": "Kullanıcı kimlik Bilgileri" } }, "tokenModal": { - "title": "İçe Aktarma Token'ını Girin", + "title": "İçe aktarma token'ını girin", "field": { "token": { "label": "Erişim Anahtarı", - "description": "Önceki Homarr Örneğinizden Aldığınız İçe Aktarma Token'ını girin" + "description": "Önceki homarr örneğinizden aldığınız içe aktarma Token'ını girin" } }, "notification": { "error": { - "title": "Geçersiz Token", - "message": "Girdiğiniz Token Geçersiz" + "title": "Geçersiz token", + "message": "Girdiğiniz token geçersiz" } } } @@ -92,24 +92,24 @@ }, "finish": { "title": "Kurulumu Bitir", - "subtitle": "Başlamaya Hazırsınız!", + "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": "{name} Paneline Git", - "createBoard": "İlk Panelinizi Oluşturun", - "inviteUser": "Yeni Kullanıcı Davet Et", - "docs": "Dökümanları Oku" + "goToBoard": "{name} paneline git", + "createBoard": "İlk panelinizi oluşturun", + "inviteUser": "Yeni kullanıcı davet et", + "docs": "Dökümanları okuyun" } } }, - "backToStart": "Başlangıca Geri Dön" + "backToStart": "Başlangıca geri dön" }, "user": { "title": "Kullanıcılar", "name": "Kullanıcı", "page": { "login": { - "title": "Hesabınıza Giriş Yapın", + "title": "Hesabınıza giriş yapın", "subtitle": "Tekrar hoş geldiniz! Lütfen kimlik bilgilerinizi girin" }, "invite": { @@ -118,7 +118,7 @@ "description": "{username} tarafından davet edildiniz" }, "init": { - "title": "Yeni Homarr Kurulumu", + "title": "Yeni Homarr kurulumu", "subtitle": "Lütfen yönetici kullanıcısını oluşturun" } }, @@ -141,20 +141,20 @@ } }, "passwordConfirm": { - "label": "Şifreyi Onayla" + "label": "Şifreyi onayla" }, "previousPassword": { "label": "Eski Şifre" }, "homeBoard": { - "label": "Öntanımlı Panel" + "label": "Varsayılan panel" }, "pingIconsEnabled": { - "label": "Pingler İçin Simgeler Kullanın" + "label": "Pingler için simgeler kullanın" } }, "error": { - "usernameTaken": "Kullanıcı Adı Önceden Alındı" + "usernameTaken": "Kullanıcı adı önceden alındı" }, "action": { "login": { @@ -203,10 +203,10 @@ "changeHomeBoard": { "notification": { "success": { - "message": "Öntanımlı panel başarıyla değiştirildi" + "message": "Varsayılan panel başarıyla değiştirildi" }, "error": { - "message": "Öntanımlı panel değiştirilemiyor" + "message": "Varsayılan panel değiştirilemiyor" } } }, @@ -391,7 +391,7 @@ } }, "search-engine": { - "title": "Arama Motorları", + "title": "Arama motorları", "item": { "create": { "label": "Arama motorları oluşturun", @@ -498,7 +498,7 @@ } }, "create": { - "title": "Yeni Uygulama", + "title": "Yeni uygulama", "notification": { "success": { "title": "Oluşturma başarılı", @@ -566,7 +566,7 @@ } }, "create": { - "title": "Yeni {name} Entegrasyonu", + "title": "Yeni {name} entegrasyonu", "notification": { "success": { "title": "Oluşturma başarılı", @@ -615,7 +615,7 @@ } }, "action": { - "create": "Yeni Entegrasyon" + "create": "Yeni entegrasyon" }, "testConnection": { "action": { @@ -703,13 +703,13 @@ "message": "Gizli anahtarı sıfırlamak istediğinizden emin misiniz?" }, "noSecretsRequired": { - "segmentTitle": "Hiçbir Gizli Anahtar Bulunamadı", + "segmentTitle": "Hiçbir Gizli anahtar yok", "text": "Bu entegrasyon için gizli anahtar gerekmiyor" }, "kind": { "username": { "label": "Kullanıcı adı", - "newLabel": "Yeni Kullanıcı Adı" + "newLabel": "Yeni kullanıcı adı" }, "apiKey": { "label": "API Anahtarı", @@ -717,7 +717,7 @@ }, "password": { "label": "Şifre", - "newLabel": "Yeni Parola" + "newLabel": "Yeni parola" } } }, @@ -766,7 +766,7 @@ } }, "common": { - "beta": "Test", + "beta": "Beta", "error": "Hata", "action": { "add": "Ekle", @@ -803,8 +803,8 @@ } }, "information": { - "min": "En Düşük", - "max": "En Yüksek", + "min": "Asgari", + "max": "Azami", "days": "Gün", "hours": "Saat", "minutes": "Dakika" @@ -842,22 +842,22 @@ }, "userAvatar": { "menu": { - "switchToDarkMode": "Koyu Temaya Geç", - "switchToLightMode": "Aydınlık Temaya Geç", + "switchToDarkMode": "Koyu moda geç", + "switchToLightMode": "Aydınlık moda geç", "management": "Yönetim", "preferences": "Tercihleriniz", "logout": "Oturumu kapat", "login": "Giriş", - "homeBoard": "Öntanımlı Panel", + "homeBoard": "Varsayılan Panel", "loggedOut": "Oturum kapatıldı", "updateAvailable": "{countUpdates} güncelleme mevcut: {tag}" } }, - "dangerZone": "Tehlikeli Bölge", + "dangerZone": "Tehlikeli bölge", "noResults": "Sonuç bulunamadı", "preview": { - "show": "Ara Renkleri Göster", - "hide": "Ara Renkleri Gizle" + "show": "Önizlemeyi göster", + "hide": "Önizlemeyi Gizle" }, "zod": { "errors": { @@ -866,16 +866,16 @@ "string": { "startsWith": "Bu alan {startsWith} ile başlamalıdır", "endsWith": "Bu alan {endsWith} ile bitmelidir", - "includes": "Bu alan {includes} içermelidir", + "includes": "Bu alan {includes} adresini içermelidir", "invalidEmail": "Bu alanda geçerli bir e-posta olmalıdır" }, "tooSmall": { "string": "Bu alan en az {minimum} karakter uzunluğunda olmalıdır", - "number": "Bu alan {minimum} değerinden uzun veya eşit olmalıdır" + "number": "Bu alan {minimum} adresinden uzun veya eşit olmalıdır" }, "tooBig": { "string": "Bu alan en fazla {maximum} karakter uzunluğunda olmalıdır", - "number": "Bu alan {maximum} değerinden kısa veya eşit olmalıdır" + "number": "Bu alan {maximum} adresinden kısa veya eşit olmalıdır" }, "custom": { "passwordsDoNotMatch": "Parolalar uyuşmuyor", @@ -892,7 +892,7 @@ "section": { "dynamic": { "action": { - "create": "Yeni Dinamik Bölüm", + "create": "Yeni dinamik bölüm", "remove": "Dinamik bölümü kaldır" }, "remove": { @@ -907,16 +907,16 @@ } }, "action": { - "create": "Yeni Kategori", - "edit": "Kategoriyi Yeniden Adlandır", + "create": "Yeni kategori", + "edit": "Kategoriyi yeniden adlandır", "remove": "Kategoriyi kaldır", "moveUp": "Yukarı taşı", "moveDown": "Aşağı taşı", - "createAbove": "Yukarı Yeni Kategori", - "createBelow": "Aşağı Yeni Kategori" + "createAbove": "Yukarı yeni kategori", + "createBelow": "Aşağı yeni kategori" }, "create": { - "title": "Yeni Kategori", + "title": "Yeni kategori", "submit": "Kategori ekle" }, "remove": { @@ -924,12 +924,12 @@ "message": "{name} kategorisini kaldırmak istediğinizden emin misiniz?" }, "edit": { - "title": "Kategoriyi Yeniden Adlandır", - "submit": "Kategoriyi Yeniden Adlandır" + "title": "Kategoriyi yeniden adlandır", + "submit": "Kategoriyi yeniden adlandır" }, "menu": { "label": { - "create": "Yeni Kategori", + "create": "Yeni kategori", "changePosition": "Pozisyonu değiştir" } } @@ -937,10 +937,10 @@ }, "item": { "action": { - "create": "Yeni Öğe", + "create": "Yeni öğe", "import": "Öğeleri İçe Aktar", "edit": "Öğeyi Düzenle", - "moveResize": "Öğeyi Taşı / Yeniden Boyutlandır", + "moveResize": "Öğeyi taşı / yeniden boyutlandır", "duplicate": "Öğeyi Çoğalt", "remove": "Öğeyi kaldır" }, @@ -954,7 +954,7 @@ "addToBoard": "Panele Ekle" }, "moveResize": { - "title": "Öğeyi Taşı / Yeniden Boyutlandır", + "title": "Öğeyi taşı / yeniden boyutlandır", "field": { "width": { "label": "Genişlik" @@ -999,7 +999,7 @@ "label": "Uygulama seç" }, "openInNewTab": { - "label": "Yeni Sekmede Aç" + "label": "Yeni sekmede aç" }, "showTitle": { "label": "Uygulama adını göster" @@ -1013,13 +1013,13 @@ }, "error": { "notFound": { - "label": "Uygulama Eklenmedi", + "label": "Uygulama yok", "tooltip": "Geçerli bir uygulama seçmediniz" } } }, "bookmarks": { - "name": "Yer İmleri", + "name": "Yer imleri", "description": "Birden fazla uygulama bağlantısını görüntüler", "option": { "title": { @@ -1040,7 +1040,7 @@ } }, "items": { - "label": "Yer İmleri", + "label": "Yer imleri", "add": "Yer imi ekle" } } @@ -1069,7 +1069,7 @@ }, "error": { "internalServerError": "DNS Çözümleyici Özeti alınamadı", - "integrationsDisconnected": "Veri Bulunamadı, Tüm Entegrasyonların Bağlantısı Kesildi" + "integrationsDisconnected": "Veri yok, tüm entegrasyonların bağlantısı kesildi" }, "data": { "adsBlockedToday": "Bugün engellenenler", @@ -1079,7 +1079,7 @@ } }, "dnsHoleControls": { - "name": "DNS Çözümleyici Kontrolleri", + "name": "DNS çözümleyici kontrolleri", "description": "Kontrol panelinizden PiHole veya AdGuard'ı kontrol edin", "option": { "layout": { @@ -1110,7 +1110,7 @@ "set": "Ayarla", "enabled": "Etkin", "disabled": "Pasif", - "processing": "İşlemde", + "processing": "İşleniyor", "disconnected": "Bağlantısı kesildi", "hours": "Saat", "minutes": "Dakika", @@ -1118,7 +1118,7 @@ } }, "clock": { - "name": "Tarih ve Saat", + "name": "Tarih ve saat", "description": "Geçerli tarih ve saati görüntüler.", "option": { "customTitleToggle": { @@ -1152,7 +1152,7 @@ } }, "notebook": { - "name": "Not Defteri", + "name": "Not defteri", "description": "Markdown'ı destekleyen basit bir not defteri bileşeni", "option": { "showToolbar": { @@ -1268,7 +1268,7 @@ } }, "smartHome-executeAutomation": { - "name": "Otomasyon Yürüt", + "name": "Otomasyonu Yürüt", "description": "Tek tıklamayla otomasyonu tetikleyin", "option": { "displayName": { @@ -1295,10 +1295,10 @@ } }, "filterPastMonths": { - "label": "Başlangıç" + "label": "Başla" }, "filterFutureMonths": { - "label": "Bitiş" + "label": "Bitir" } } }, @@ -1345,11 +1345,11 @@ } }, "indexerManager": { - "name": "Dizinleyici Yönetim Durumu", + "name": "Dizin oluşturucu yöneticisi statüsü", "description": "Dizinleyicilerinizin durumu", "option": { "openIndexerSiteInNewTab": { - "label": "Dizinleyici Sitesini Yeni Sekmede Aç" + "label": "Dizinleyici sitesini yeni sekmede aç" } }, "title": "Dizin oluşturucu yöneticisi", @@ -1379,14 +1379,14 @@ "information": "Bilgi", "processor": "İşlemci: {cpuModelName}", "memory": "Bellek: {memory}GiB", - "memoryAvailable": "Kullanılabilir: {memoryAvailable} GiB ({percent}%)", + "memoryAvailable": "Mevcut: {memoryAvailable}GiB ({percent}%)", "version": "Sürüm: {version}", - "uptime": "Çalışma Süresi: {days} Gün, {hours} Saat, {minutes} Dakika", + "uptime": "", "loadAverage": "Ortalama yük:", "minute": "1 dakika", "minutes": "{count} dakika", "used": "Kullanılan", - "available": "Kullanılabilir", + "available": "Mevcut", "lastSeen": "Son durum güncellemesi: {lastSeen}" }, "memory": {}, @@ -1455,7 +1455,7 @@ } }, "mediaServer": { - "name": "Güncel Medya Sunucusu Akışları", + "name": "Güncel medya sunucusu akışları", "description": "Medya sunucularınızdaki mevcut akışları gösterin", "option": {} }, @@ -1470,7 +1470,7 @@ "label": "Öğelerin sıralanmasını etkinleştir" }, "defaultSort": { - "label": "Öntanımlı olarak sıralama için kullanılan sütun" + "label": "Varsayılan olarak sıralama için kullanılan sütun" }, "descendingDefaultSort": { "label": "Ters sıralama" @@ -1503,7 +1503,7 @@ "columnTitle": "Kontroller" }, "added": { - "columnTitle": "Ekleme", + "columnTitle": "Eklendi", "detailsTitle": "Ekleme Tarihi" }, "category": { @@ -1532,7 +1532,7 @@ "detailsTitle": "İndirme İlerlemesi" }, "ratio": { - "columnTitle": "Oran", + "columnTitle": "Ratio", "detailsTitle": "Torrent oranı (alınan/gönderilen)" }, "received": { @@ -1570,7 +1570,7 @@ "paused": "Duraklatıldı", "completed": "Tamamlanan", "failed": "Başarısız", - "processing": "İşlemde", + "processing": "İşleniyor", "leeching": "Leechleme", "stalled": "Durduruldu", "unknown": "Bilinmeyen", @@ -1615,7 +1615,7 @@ "availability": { "unknown": "Bilinmeyen", "pending": "Bekleyen", - "processing": "İşlemde", + "processing": "İşleniyor", "partiallyAvailable": "Kısmi", "available": "Mevcut" }, @@ -1631,8 +1631,8 @@ "approved": "Onaylanan", "pending": "Onay bekleyen", "processing": "İşleniyor", - "declined": "Reddedilen", - "available": "Mevcut", + "declined": "Zaten reddedildi", + "available": "Zaten Mevcut", "tv": "Dizi talepleri", "movie": "Film talepleri", "total": "Toplam" @@ -1644,14 +1644,14 @@ } }, "mediaTranscoding": { - "name": "Medya Kod Dönüştürme", + "name": "Medya kod dönüştürme", "description": "Medya kod dönüştürmenizin istatistikleri, geçerli kuyruğu ve çalışan durumu", "option": { "defaultView": { - "label": "Öntanımlı Görünüm" + "label": "Varsayılan görünüm" }, "queuePageSize": { - "label": "Kuyruk Sayfa Boyutu" + "label": "Sıra sayfa boyutu" } }, "tab": { @@ -1703,8 +1703,8 @@ } }, "rssFeed": { - "name": "RSS Beslemeleri", - "description": "Bir veya daha fazla RSS, ATOM veya JSON beslemesini takip edin ve görüntüleyin", + "name": "RSS beslemeleri", + "description": "Bir veya daha fazla genel RSS, ATOM veya JSON beslemesini izleyin ve görüntüleyin", "option": { "feedUrls": { "label": "Besleme URL'leri" @@ -1713,10 +1713,10 @@ "label": "RTL'yi etkinleştir" }, "textLinesClamp": { - "label": "Açıklamalarda satır sınırı" + "label": "Açıklamalar satır sınırı" }, "maximumAmountPosts": { - "label": "Gönderi sayısı sınırı" + "label": "Gönderi değer sınırı" } } } @@ -1842,7 +1842,7 @@ "description": "Görsel, tüm arka plan alanını kaplayacak kadar tekrarlanır." }, "no-repeat": { - "label": "Tekrarlama Yok", + "label": "Tekrarlama yok", "description": "Görsel tekrarlanmaz ve tüm alanı doldurmayabilir." }, "repeat-x": { @@ -1919,7 +1919,7 @@ "title": "Özel Css" }, "access": { - "title": "Erişim Kontrolü", + "title": "Erişim kontrolü", "permission": { "item": { "view": { @@ -1935,14 +1935,14 @@ } }, "dangerZone": { - "title": "Tehlikeli Bölge", + "title": "Tehlikeli bölge", "action": { "rename": { - "label": "Panelin ismini değiştir", + "label": "Panelin adını değiştir", "description": "İsmin değiştirilmesi bu panele olan tüm bağlantıların kopmasına neden olacaktır.", "button": "İsmi değiştir", "modal": { - "title": "Panelin ismini değiştir" + "title": "Panelin adını değiştir" } }, "visibility": { @@ -1993,7 +1993,7 @@ "notice": "Bağlantıyı kontrol edin veya erişilebilir olması gerektiğini düşünüyorsanız bir yöneticiyle iletişime geçin" }, "homeBoard": { - "title": "Öntanımlı Panel Yapılandırılmadı", + "title": "Ana panel yok", "admin": { "description": "Sunucu için henüz bir ana sayfa paneli belirlemediniz.", "link": "Sunucu geneli için ana panel yapılandırın", @@ -2001,13 +2001,13 @@ }, "user": { "description": "Henüz bir ev paneli belirlemediniz.", - "link": "Öntanımlı Paneli Yapılandır", - "notice": "Bu Sayfanın Kaybolmasını Sağlamak İçin Tercihlerden Öntanımlı Panel Atayın" + "link": "Varsayılan paneli yapılandır", + "notice": "Bu sayfanın kaybolmasını sağlamak için tercihlerden varsayılan panel seçin" }, "anonymous": { - "description": "Sunucu Yöneticiniz Henüz Bir Öntanımlı Panel Atamadı.", + "description": "Sunucu yöneticiniz henüz bir varsayılan panel belirlemedi.", "link": "Herkese açık panelleri görüntüle", - "notice": "Bu Sayfanın Kaybolmasını Sağlamak İçin Sunucu Yöneticisinden Öntanımlı Panel Atamasını İsteyin" + "notice": "Bu sayfanın kaybolmasını sağlamak için sunucu yöneticisinden varsayılan panel ayarlamasını isteyin" } } } @@ -2025,11 +2025,11 @@ }, "navbar": { "items": { - "home": "Ana Sayfa", + "home": "Ana sayfa", "boards": "Paneller", "apps": "Uygulamalar", "integrations": "Entegrasyonlar", - "searchEngies": "Arama Motorları", + "searchEngies": "Arama motorları", "medias": "Medyalar", "users": { "label": "Kullanıcılar", @@ -2082,7 +2082,7 @@ "title": "Panelleriniz", "action": { "new": { - "label": "Yeni Panel" + "label": "Yeni panel" }, "open": { "label": "Panel'i aç" @@ -2091,10 +2091,10 @@ "label": "Ayarlar" }, "setHomeBoard": { - "label": "Öntanımlı Panel Olarak Ata", + "label": "Varsayılan panel olarak ayarlayın", "badge": { - "label": "Ana Sayfa", - "tooltip": "Bu panel sizin öntanımlı paneliniz olarak görüntülenecektir" + "label": "Ana sayfa", + "tooltip": "Bu panel sizin varsayılan paneliniz olarak görüntülenecektir" } }, "delete": { @@ -2130,7 +2130,7 @@ "title": "Genel", "item": { "language": "Dil & Bölge", - "board": "Öntanımlı Panel", + "board": "Varsayılan panel", "firstDayOfWeek": "Haftanın ilk günü", "accessibility": "Erişilebilirlik" } @@ -2151,7 +2151,7 @@ }, "create": { "metaTitle": "Kullanıcı ekle", - "title": "Yeni Kullanıcı Oluştur", + "title": "Yeni kullanıcı oluştur", "step": { "personalInformation": { "label": "Kişisel bilgiler" @@ -2180,10 +2180,10 @@ } }, "invite": { - "title": "Kullanıcı Davetlerini Yönet", + "title": "Kullanıcı davetlerini yönet", "action": { "new": { - "title": "Yeni Davet", + "title": "Yeni davet", "description": "Süre sona erdikten sonra davet artık geçerli olmayacak ve daveti alan kişi bir hesap oluşturamayacaktır." }, "copy": { @@ -2266,36 +2266,36 @@ } }, "crawlingAndIndexing": { - "title": "Arama ve İndeksleme", - "warning": "Buradaki ayarların etkinleştirilmesi veya devre dışı bırakılması, arama motorlarının sayfanızı arama ve indekleme şeklini ciddi şekilde etkileyecektir. Her ayar bir istek başlatır ve bu ayarları almak tarayıcının görevidir. Değişiklikler birkaç gün veya hafta sürebilir. Bazı ayarlar arama motoruna özel olabilir.", + "title": "Tarama ve Dizinleme", + "warning": "Burada herhangi bir ayarı etkinleştirmek veya devre dışı bırakmak, arama motorlarının sayfanızı nasıl dizine ekleyeceğini ve tarayacağını ciddi şekilde etkileyecektir. Herhangi bir ayar bir istektir ve bu ayarları uygulamak tarayıcıya bağlıdır. Herhangi bir değişikliğin uygulanması birkaç gün veya hafta sürebilir. Bazı ayarlar arama motoruna özgü olabilir.", "noIndex": { - "title": "İndeksleme Yapma", - "text": "Web sitesini arama motorlarında indekslemeyin veya herhangi bir arama sonucunda görüntülemeyin" + "title": "İndeks yok", + "text": "Web sitesini arama motorlarında indekslemeyin ve hiçbir arama sonucunda göstermeyin" }, "noFollow": { - "title": "Bağlantıları Takip Etme", - "text": "İndeksleme sırasında bağlantıları takip etmeyin. Bunu devre dışı bırakmak, tarayıcıların Homarr'daki tüm bağlantıları izlemeye çalışmasına neden olur." + "title": "Takip yok", + "text": "Dizinleme sırasında hiçbir bağlantıyı takip etmeyin. Bunu devre dışı bırakmak, tarayıcıların Homarr'daki tüm bağlantıları takip etmeye çalışmasına yol açacaktır." }, "noTranslate": { - "title": "Çeviri Yapma", - "text": "Kullanıcının site üzerinde okumak isteyeceği dilin olmaması durumunda Google, arama sonuçlarında bir çeviri bağlantısı gösterecektir" + "title": "Çeviri yok", + "text": "Site dilinin kullanıcının okumak isteyeceği bir dil olmaması durumunda Google, arama sonuçlarında bir çeviri bağlantısı gösterecektir" }, "noSiteLinksSearchBox": { - "title": "Site Arama Alanını Gösterme", - "text": "Google, aranan bağlantıların yanı sıra diğer doğrudan bağlantılardan oluşan bir arama kutusu oluşturur. Bu seçenek etkinleştirildiğinde Google'dan bu alanı devre dışı bırakması istenecektir." + "title": "Site bağlantıları arama kutusu yok", + "text": "Google, taranan bağlantıların yanı sıra diğer doğrudan bağlantılarla bir arama kutusu oluşturacaktır. Bunu etkinleştirmek Google'dan bu kutuyu devre dışı bırakmasını isteyecektir." } }, "board": { "title": "Paneller", "homeBoard": { - "label": "Genel Öntanımlı Panel", - "description": "Seçim yalnızca herkese açık paneller için kullanılabilir" + "label": "Küresel ana sayfa paneli", + "description": "Seçim için yalnızca herkese açık paneller kullanılabilir" } }, "appearance": { "title": "Görünüş", "defaultColorScheme": { - "label": "Öntanımlı Renk Düzeni", + "label": "Varsayılan renk şeması", "options": { "light": "Aydınlık", "dark": "Koyu" @@ -2305,7 +2305,7 @@ "culture": { "title": "Kültür", "defaultLocale": { - "label": "Öntanımlı Dil" + "label": "Varsayılan dil" } } } @@ -2347,7 +2347,7 @@ "label": "Medya Talep Listesi" }, "rssFeeds": { - "label": "RSS Beslemeleri" + "label": "RSS beslemeleri" }, "indexerManager": { "label": "Dizinleyici Yöneticisi" @@ -2365,7 +2365,7 @@ "label": "Güncelleme denetleyicisi" }, "mediaTranscoding": { - "label": "Medya Kod Dönüştürme" + "label": "Medya kod dönüştürme" } } }, @@ -2400,7 +2400,7 @@ }, "about": { "version": "Sürüm {version}", - "text": "Homarr, gönüllüler tarafından sürdürülen topluluk odaklı bir açık kaynak projesidir. Bu kişiler sayesinde Homarr, 2021'den bugüne büyüyerek ilerleyen bir projedir. Ekibimiz, boş zamanlarında Homarr üzerinde birçok farklı ülkeden tamamen uzaktan, hiçbir ücret almadan çalışmaktadır.", + "text": "Homarr, gönüllüler tarafından sürdürülen topluluk odaklı bir açık kaynak projesidir. Bu kişiler sayesinde Homarr, 2021'den beri büyüyen bir projedir. Ekibimiz, boş zamanlarında Homarr üzerinde birçok farklı ülkeden tamamen uzaktan, hiçbir ücret almadan çalışmaktadır.", "accordion": { "contributors": { "title": "Katkıda Bulunanlar", @@ -2408,7 +2408,7 @@ }, "translators": { "title": "Çevirmenler", - "subtitle": "{count} kişi Homarr'ın bir çok dile çevrilmesine katkı sağlıyor" + "subtitle": "{count} dilde birçok kişi çevirilere katkıda bulunuyor" }, "libraries": { "title": "Kütüphaneler", @@ -2435,7 +2435,7 @@ "created": "Oluşturuldu", "running": "Çalışıyor", "paused": "Duraklatıldı", - "restarting": "Yeniden Başlatılıyor", + "restarting": "Yeniden başlatılıyor", "exited": "Çıkıldı", "removing": "Kaldırılıyor", "dead": "Ölü" @@ -2650,7 +2650,7 @@ "label": "Panel'i aç" }, "homeBoard": { - "label": "Öntanımlı Panel Olarak Ata" + "label": "Varsayılan panel olarak ayarla" }, "settings": { "label": "Ayarları aç" @@ -2676,8 +2676,8 @@ "title": "Genel komutlar", "option": { "colorScheme": { - "light": "Aydınlık Temaya Geç", - "dark": "Koyu Temaya Geç" + "light": "Aydınlık moda geç", + "dark": "Koyu moda geç" }, "language": { "label": "Dili değiştir", @@ -2688,16 +2688,16 @@ } }, "newBoard": { - "label": "Yeni Panel Oluştur" + "label": "Yeni bir panel oluştur" }, "importBoard": { "label": "Bir paneli içe aktar" }, "newApp": { - "label": "Yeni Uygulama Oluştur" + "label": "Yeni bir uygulama oluştur" }, "newIntegration": { - "label": "Yeni Entegrasyon Oluştur", + "label": "Yeni bir entegrasyon oluşturun", "children": { "detail": { "title": "Oluşturmak istediğiniz entegrasyon türünü seçin" @@ -2705,13 +2705,13 @@ } }, "newUser": { - "label": "Yeni Kullanıcı Oluştur" + "label": "Yeni bir kullanıcı oluştur" }, "newInvite": { - "label": "Yeni Davet Oluştur" + "label": "Yeni bir davet oluştur" }, "newGroup": { - "label": "Yeni Grup Oluştur" + "label": "Yeni bir grup oluştur" } } } @@ -2795,7 +2795,7 @@ "title": "Sayfalar", "option": { "manageHome": { - "label": "Ana Sayfayı Yönet" + "label": "Ana sayfayı yönet" }, "manageBoard": { "label": "Panelleri yönet" @@ -2825,7 +2825,7 @@ "label": "Docker'ı yönet" }, "manageApi": { - "label": "Swagger API'si" + "label": "Swagger API" }, "manageLog": { "label": "Günlükleri görüntüle" @@ -2840,7 +2840,7 @@ "label": "Hakkında" }, "homeBoard": { - "label": "Öntanımlı Panel" + "label": "Varsayılan panel" }, "preferences": { "label": "Tercihleriniz" @@ -2894,7 +2894,7 @@ "label": "İsim" }, "short": { - "label": "Kısa Yol" + "label": "Kısa" }, "urlTemplate": { "label": "URL arama şablonu" @@ -2905,15 +2905,15 @@ }, "page": { "list": { - "title": "Arama Motorları", + "title": "Arama motorları", "noResults": { - "title": "Henüz bir arama motoru yapılandırılmadı", + "title": "Henüz bir arama motoru yok", "action": "İlk arama motorunuzu oluşturun" }, "interactive": "Etkileşimli, entegrasyon kullanır" }, "create": { - "title": "Yeni Arama Motoru", + "title": "Yeni arama motoru", "notification": { "success": { "title": "Arama motoru oluşturuldu", diff --git a/packages/translation/src/lang/uk.json b/packages/translation/src/lang/uk.json index c67e20b69..4537e6ad9 100644 --- a/packages/translation/src/lang/uk.json +++ b/packages/translation/src/lang/uk.json @@ -2042,9 +2042,9 @@ "tools": { "label": "Інструменти", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -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 10f89aa67..615fa847b 100644 --- a/packages/translation/src/lang/vi.json +++ b/packages/translation/src/lang/vi.json @@ -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": { @@ -2042,9 +2042,9 @@ "tools": { "label": "Công cụ", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -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": "" From 50746eb3e46c49f25d60f4420068186cc009844f Mon Sep 17 00:00:00 2001 From: "homarr-crowdin[bot]" <190541745+homarr-crowdin[bot]@users.noreply.github.com> Date: Sat, 28 Dec 2024 09:06:24 +0000 Subject: [PATCH 05/25] chore(lang): updated translations from crowdin Co-authored-by: Crowdin Homarr <190541745+homarr-crowdin[bot]@users.noreply.github.com> --- packages/translation/src/lang/cn.json | 302 ++--- packages/translation/src/lang/cs.json | 32 +- packages/translation/src/lang/da.json | 86 +- packages/translation/src/lang/de.json | 396 +++---- packages/translation/src/lang/el.json | 18 +- packages/translation/src/lang/es.json | 48 +- packages/translation/src/lang/fr.json | 404 +++---- packages/translation/src/lang/he.json | 2 +- packages/translation/src/lang/hr.json | 10 +- packages/translation/src/lang/hu.json | 16 +- packages/translation/src/lang/it.json | 410 +++---- packages/translation/src/lang/ja.json | 20 +- packages/translation/src/lang/ko.json | 16 +- packages/translation/src/lang/lt.json | 14 +- packages/translation/src/lang/lv.json | 22 +- packages/translation/src/lang/nl.json | 98 +- packages/translation/src/lang/no.json | 28 +- packages/translation/src/lang/pl.json | 22 +- packages/translation/src/lang/pt.json | 44 +- packages/translation/src/lang/ro.json | 44 +- packages/translation/src/lang/ru.json | 1476 ++++++++++++------------- packages/translation/src/lang/sk.json | 2 +- packages/translation/src/lang/sl.json | 16 +- packages/translation/src/lang/sv.json | 40 +- packages/translation/src/lang/tr.json | 302 ++--- packages/translation/src/lang/uk.json | 8 +- packages/translation/src/lang/vi.json | 10 +- 27 files changed, 1943 insertions(+), 1943 deletions(-) diff --git a/packages/translation/src/lang/cn.json b/packages/translation/src/lang/cn.json index b5642c978..3ce2bbafc 100644 --- a/packages/translation/src/lang/cn.json +++ b/packages/translation/src/lang/cn.json @@ -51,7 +51,7 @@ "title": "输入导入密钥", "field": { "token": { - "label": "Token", + "label": "令牌", "description": "输入您之前的 homarr 实例中显示的导入秘钥" } }, @@ -125,7 +125,7 @@ "field": { "email": { "label": "邮箱", - "verified": "" + "verified": "已验证" }, "username": { "label": "用户名" @@ -133,46 +133,46 @@ "password": { "label": "密码", "requirement": { - "length": "", + "length": "包含至少8个字符", "lowercase": "包括小写字母", "uppercase": "包含大写字母", "number": "包含数字", - "special": "" + "special": "包含特殊符号" } }, "passwordConfirm": { "label": "确认密码" }, "previousPassword": { - "label": "" + "label": "先前的密码" }, "homeBoard": { - "label": "" + "label": "首页" }, "pingIconsEnabled": { - "label": "" + "label": "用于ping的图标" } }, "error": { - "usernameTaken": "" + "usernameTaken": "用户名称已被占用" }, "action": { "login": { "label": "登录", - "labelWith": "", + "labelWith": "使用 {provider} 登录", "notification": { "success": { - "title": "", - "message": "" + "title": "登录成功", + "message": "您已登录" }, "error": { - "title": "", - "message": "" + "title": "登录失败", + "message": "您登录失败" } }, "forgotPassword": { - "label": "", - "description": "" + "label": "忘记密码?", + "description": "管理员可以使用以下命令重置您的密码:" } }, "register": { @@ -180,11 +180,11 @@ "notification": { "success": { "title": "账号已创建", - "message": "" + "message": "请登录以继续" }, "error": { - "title": "", - "message": "" + "title": "创建账户失败", + "message": "无法创建您的帐户" } } }, @@ -262,16 +262,16 @@ "editProfile": { "notification": { "success": { - "message": "" + "message": "资料更新成功" }, "error": { - "message": "" + "message": "资料更新失败" } } }, "delete": { - "label": "", - "description": "", + "label": "永久删除用户", + "description": "删除此用户及其偏好设置。这将不会删除任何看板。用户将不会收到通知。", "confirm": "您确定要删除用户 {username} 及其偏好设置吗?" }, "select": { @@ -279,24 +279,24 @@ "notFound": "找不到用户" }, "transfer": { - "label": "" + "label": "选择新的所有者" } } }, "group": { - "title": "", - "name": "", - "search": "", + "title": "组", + "name": "组", + "search": "查找组", "field": { "name": "名称", - "members": "" + "members": "成员列表" }, "permission": { "admin": { "title": "管理员", "item": { "admin": { - "label": "", + "label": "管理员", "description": "拥有此权限的成员可完全访问所有功能和设置" } } @@ -305,20 +305,20 @@ "title": "应用", "item": { "create": { - "label": "", - "description": "" + "label": "创建应用", + "description": "允许成员创建应用" }, "use-all": { - "label": "", - "description": "" + "label": "使用全部应用", + "description": "允许成员将任何应用添加到他们的看板" }, "modify-all": { - "label": "", - "description": "" + "label": "修改全部应用", + "description": "允许成员修改全部应用" }, "full-all": { - "label": "", - "description": "" + "label": "完整应用访问权限", + "description": "允许成员管理、使用和删除全部应用" } } }, @@ -327,19 +327,19 @@ "item": { "create": { "label": "创建面板", - "description": "" + "description": "允许成员创建看板" }, "view-all": { - "label": "查看所有面板", - "description": "" + "label": "查看全部面板", + "description": "允许成员查看全部看板" }, "modify-all": { - "label": "", - "description": "" + "label": "修改全部看板", + "description": "允许成员修改全部看板 (不包括访问控制和危险区)" }, "full-all": { - "label": "", - "description": "" + "label": "完整的看板访问权限", + "description": "允许成员查看、修改和删除全部看板 (包括访问控制和危险区)" } } }, @@ -347,144 +347,144 @@ "title": "组件", "item": { "create": { - "label": "", - "description": "" + "label": "创建组件", + "description": "允许成员创建组件" }, "use-all": { - "label": "", - "description": "" + "label": "使用全部组件", + "description": "允许成员将任何组件添加到他们的看板" }, "interact-all": { - "label": "", - "description": "" + "label": "与任何组件互动", + "description": "允许成员与任何组件互动" }, "full-all": { - "label": "", - "description": "" + "label": "完全的组件访问权限", + "description": "允许成员管理、使用并与任何组件交互" } } }, "media": { - "title": "", + "title": "媒体", "item": { "upload": { - "label": "", - "description": "" + "label": "上传媒体", + "description": "允许成员上传媒体" }, "view-all": { - "label": "", - "description": "" + "label": "查看全部媒体", + "description": "允许成员查看全部媒体" }, "full-all": { - "label": "", - "description": "" + "label": "完全的媒体访问权限", + "description": "允许成员管理和删除任何媒体" } } }, "other": { - "title": "", + "title": "其它", "item": { "view-logs": { - "label": "", - "description": "" + "label": "查看日志", + "description": "允许成员查看日志" } } }, "search-engine": { - "title": "", + "title": "搜索引擎", "item": { "create": { - "label": "", - "description": "" + "label": "创建搜索引擎", + "description": "允许成员创建搜索引擎" }, "modify-all": { - "label": "", - "description": "" + "label": "修改全部搜索引擎", + "description": "允许成员修改全部搜索引擎" }, "full-all": { - "label": "", - "description": "" + "label": "完整的搜索引擎访问权限", + "description": "允许成员管理和删除任何搜索引擎" } } } }, "memberNotice": { - "mixed": "", - "external": "" + "mixed": "部分成员来自外部提供者,无法在此处管理", + "external": "所有成员都来自外部提供者,无法在此处管理" }, "reservedNotice": { - "message": "" + "message": "此用户组保留供系统使用并限制部分操作 " }, "action": { "create": { - "label": "", + "label": "新建用户组", "notification": { "success": { - "message": "" + "message": "用户组已成功创建" }, "error": { - "message": "" + "message": "无法创建用户组" } } }, "transfer": { - "label": "", - "description": "", - "confirm": "", + "label": "转移所有权", + "description": "将此用户组的所有权转移给另一个用户。", + "confirm": "确定将用户组 {name} 的所有权转移给 {username} 吗?", "notification": { "success": { - "message": "" + "message": "成功将用户组 {group} 的所有权转移给 {user}" }, "error": { - "message": "" + "message": "无法转移所有权" } } }, "addMember": { - "label": "" + "label": "添加成员" }, "removeMember": { - "label": "", - "confirm": "" + "label": "删除成员", + "confirm": "确定将 {user} 从此用户组移除吗?" }, "delete": { - "label": "", - "description": "", - "confirm": "", + "label": "删除用户组", + "description": "用户组一旦删除就无法恢复. 请谨慎操作.", + "confirm": "确认删除用户组 {name} 吗?", "notification": { "success": { - "message": "" + "message": "成功删除用户组 {name}" }, "error": { - "message": "" + "message": "无法删除用户组 {name}" } } }, "changePermissions": { "notification": { "success": { - "title": "", - "message": "" + "title": "权限已保存", + "message": "权限保存成功" }, "error": { - "title": "", - "message": "" + "title": "权限未保存", + "message": "权限尚未保存" } } }, "update": { "notification": { "success": { - "message": "" + "message": "用户组 {name} 保存成功" }, "error": { - "message": "" + "message": "无法保存用户组 {name}" } } }, "select": { - "label": "", - "notFound": "" + "label": "选择用户组", + "notFound": "未找到用户组" } } }, @@ -493,47 +493,47 @@ "list": { "title": "应用", "noResults": { - "title": "", - "action": "" + "title": "尚无应用", + "action": "创建您的第一个应用" } }, "create": { - "title": "", + "title": "新建应用", "notification": { "success": { - "title": "", - "message": "" + "title": "创建成功", + "message": "应用已成功创建" }, "error": { - "title": "", - "message": "" + "title": "创建失败", + "message": "无法创建此应用" } } }, "edit": { - "title": "", + "title": "编辑应用", "notification": { "success": { - "title": "", - "message": "" + "title": "更改应用成功", + "message": "应用保存成功" }, "error": { - "title": "", - "message": "" + "title": "无法应用更改", + "message": "无法保存此应用" } } }, "delete": { - "title": "", - "message": "", + "title": "删除应用", + "message": "确认删除应用 {name} 吗?", "notification": { "success": { - "title": "", - "message": "" + "title": "成功删除", + "message": "应用已成功删除" }, "error": { - "title": "", - "message": "" + "title": "删除失败", + "message": "无法删除应用" } } } @@ -543,16 +543,16 @@ "label": "名称" }, "description": { - "label": "" + "label": "描述" }, "url": { - "label": "" + "label": "Url" } }, "action": { "select": { - "label": "", - "notFound": "" + "label": "选择应用", + "notFound": "未找到应用" } } }, @@ -560,48 +560,48 @@ "page": { "list": { "title": "组件", - "search": "", + "search": "搜索组件", "noResults": { - "title": "" + "title": "尚无组件" } }, "create": { - "title": "", + "title": "新的组件 {name}", "notification": { "success": { - "title": "", - "message": "" + "title": "创建成功", + "message": "组件已成功创建" }, "error": { - "title": "", - "message": "" + "title": "创建失败", + "message": "无法创建组件" } } }, "edit": { - "title": "", + "title": "编辑组件 {name}", "notification": { "success": { - "title": "", - "message": "" + "title": "更改应用成功", + "message": "组件已成功保存" }, "error": { - "title": "", - "message": "" + "title": "无法应用更改", + "message": "无法保存此组件" } } }, "delete": { - "title": "", - "message": "", + "title": "删除组件", + "message": "确认删除组件 {name} 吗?", "notification": { "success": { - "title": "", - "message": "" + "title": "成功删除", + "message": "组件已成功删除" }, "error": { - "title": "", - "message": "" + "title": "删除失败", + "message": "无法删除组件" } } } @@ -611,21 +611,21 @@ "label": "名称" }, "url": { - "label": "" + "label": "Url" } }, "action": { - "create": "" + "create": "新建组件" }, "testConnection": { "action": { - "create": "", - "edit": "" + "create": "测试连接并创建", + "edit": "测试连接并保存" }, - "alertNotice": "", + "alertNotice": "成功建立连接后保存按钮将启用", "notification": { "success": { - "title": "", + "title": "连接成功", "message": "" }, "invalidUrl": { @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "嵌入互联网上的任何内容。某些网站可能限制访问。", "option": { "embedUrl": { @@ -1989,7 +1989,7 @@ "notFound": { "title": "", "description": "", - "link": "查看所有面板", + "link": "查看全部面板", "notice": "" }, "homeBoard": { @@ -2042,9 +2042,9 @@ "tools": { "label": "工具", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2199,7 +2199,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "创建者" @@ -2208,7 +2208,7 @@ "label": "过期时间" }, "token": { - "label": "Token" + "label": "" } } } @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2602,7 +2602,7 @@ "tools": { "label": "工具", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" @@ -2749,7 +2749,7 @@ "description": "" }, "torrent": { - "name": "Torrents", + "name": "", "description": "" }, "youTube": { diff --git a/packages/translation/src/lang/cs.json b/packages/translation/src/lang/cs.json index 4578d31fc..02ec270d7 100644 --- a/packages/translation/src/lang/cs.json +++ b/packages/translation/src/lang/cs.json @@ -27,7 +27,7 @@ "description": "Konfigurovat chování importu" }, "boardSelection": { - "title": "", + "title": "Nalezeno {count} ploch", "description": "Vyberte všechny plochy s velikostmi, které chcete importovat", "action": { "selectAll": "Vybrat vše", @@ -38,17 +38,17 @@ "title": "Přehled importu", "description": "", "action": { - "import": "" + "import": "Potvrdit import a pokračovat" }, "entities": { "apps": "Aplikace", "boards": "Plochy", - "integrations": "", + "integrations": "Integrace", "credentialUsers": "" } }, "tokenModal": { - "title": "", + "title": "Zadejte token pro import", "field": { "token": { "label": "Token", @@ -57,14 +57,14 @@ }, "notification": { "error": { - "title": "", - "message": "" + "title": "Neplatný token", + "message": "Token, který jste zadali je neplatný" } } } }, "user": { - "title": "", + "title": "Správce", "subtitle": "", "notification": { "success": { @@ -1213,11 +1213,11 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "Vložte jakýkoli obsah z internetu. Některé webové stránky mohou omezit přístup.", "option": { "embedUrl": { - "label": "Embed URL" + "label": "" }, "allowFullScreen": { "label": "Povolit celou obrazovku" @@ -2042,9 +2042,9 @@ "tools": { "label": "Nástroje", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2199,7 +2199,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Vytvořil/a" @@ -2208,7 +2208,7 @@ "label": "Datum konce platnosti" }, "token": { - "label": "Token" + "label": "" } } } @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2602,7 +2602,7 @@ "tools": { "label": "Nástroje", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/da.json b/packages/translation/src/lang/da.json index a9f1e3519..4b402617e 100644 --- a/packages/translation/src/lang/da.json +++ b/packages/translation/src/lang/da.json @@ -41,8 +41,8 @@ "import": "" }, "entities": { - "apps": "Apps", - "boards": "Boards", + "apps": "", + "boards": "", "integrations": "", "credentialUsers": "" } @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "Token", + "label": "", "description": "" } }, @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "Admin", + "title": "", "item": { "admin": { "label": "", @@ -302,7 +302,7 @@ } }, "app": { - "title": "Apps", + "title": "", "item": { "create": { "label": "", @@ -323,7 +323,7 @@ } }, "board": { - "title": "Boards", + "title": "", "item": { "create": { "label": "", @@ -491,7 +491,7 @@ "app": { "page": { "list": { - "title": "Apps", + "title": "", "noResults": { "title": "", "action": "" @@ -1026,7 +1026,7 @@ "label": "" }, "layout": { - "label": "Layout", + "label": "", "option": { "row": { "label": "Horisontal" @@ -1050,7 +1050,7 @@ "description": "", "option": { "layout": { - "label": "Layout", + "label": "", "option": { "row": { "label": "Horisontal" @@ -1083,7 +1083,7 @@ "description": "Kontroller PiHole eller AdGuard fra dit dashboard", "option": { "layout": { - "label": "Layout", + "label": "", "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": "Video Stream", + "name": "", "description": "Indlejr en video stream eller video fra et kamera eller et website", "option": { "feedUrl": { - "label": "Feed URL" + "label": "" }, "hasAutoPlay": { "label": "Auto-afspilning", @@ -1511,7 +1511,7 @@ "detailsTitle": "" }, "downSpeed": { - "columnTitle": "Down", + "columnTitle": "", "detailsTitle": "Download hastighed" }, "index": { @@ -1522,7 +1522,7 @@ "columnTitle": "" }, "integration": { - "columnTitle": "Integration" + "columnTitle": "" }, "name": { "columnTitle": "" @@ -1560,7 +1560,7 @@ "detailsTitle": "" }, "upSpeed": { - "columnTitle": "Up", + "columnTitle": "", "detailsTitle": "" } }, @@ -1635,7 +1635,7 @@ "available": "", "tv": "TV-anmodninger", "movie": "Film anmodninger", - "total": "Total" + "total": "" }, "users": { "main": "Topbrugere", @@ -1685,7 +1685,7 @@ "empty": "Tom", "table": { "file": "Fil", - "eta": "ETA", + "eta": "", "progress": "Fremskridt", "transcode": "Transkod", "healthCheck": "" @@ -1766,7 +1766,7 @@ "invalidError": "" }, "apps": { - "label": "Apps", + "label": "", "avoidDuplicates": { "label": "", "description": "" @@ -1907,7 +1907,7 @@ "unrecognizedLink": "" }, "layout": { - "title": "Layout" + "title": "" }, "background": { "title": "Baggrund" @@ -2026,8 +2026,8 @@ "navbar": { "items": { "home": "Hjem", - "boards": "Boards", - "apps": "Apps", + "boards": "", + "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": "Boards", + "board": "", "user": "Brugere", "invite": "Invitationer", "integration": "", - "app": "Apps", + "app": "", "group": "" }, "statisticLabel": { - "boards": "Boards", + "boards": "", "resources": "", "authentication": "", "authorization": "" @@ -2139,7 +2139,7 @@ "title": "Sikkerhed" }, "board": { - "title": "Boards" + "title": "" } }, "list": { @@ -2199,7 +2199,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Skaber" @@ -2208,7 +2208,7 @@ "label": "Udløbsdato" }, "token": { - "label": "Token" + "label": "" } } } @@ -2286,7 +2286,7 @@ } }, "board": { - "title": "Boards", + "title": "", "homeBoard": { "label": "", "description": "" @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2442,7 +2442,7 @@ } }, "containerImage": { - "label": "Image" + "label": "" }, "ports": { "label": "Porte" @@ -2450,7 +2450,7 @@ }, "action": { "start": { - "label": "Start", + "label": "", "notification": { "success": { "title": "", @@ -2463,7 +2463,7 @@ } }, "stop": { - "label": "Stop", + "label": "", "notification": { "success": { "title": "", @@ -2552,7 +2552,7 @@ "manage": { "label": "Administrer", "boards": { - "label": "Boards" + "label": "" }, "integrations": { "label": "", @@ -2576,7 +2576,7 @@ "label": "" }, "apps": { - "label": "Apps", + "label": "", "new": { "label": "" }, @@ -2591,7 +2591,7 @@ }, "general": "Generelt", "security": "Sikkerhed", - "board": "Boards", + "board": "", "groups": { "label": "" }, @@ -2602,7 +2602,7 @@ "tools": { "label": "Værktøjer", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" @@ -2627,7 +2627,7 @@ "help": "", "group": { "app": { - "title": "Apps", + "title": "", "children": { "action": { "open": { @@ -2643,7 +2643,7 @@ } }, "board": { - "title": "Boards", + "title": "", "children": { "action": { "open": { @@ -2749,7 +2749,7 @@ "description": "" }, "torrent": { - "name": "Torrents", + "name": "", "description": "" }, "youTube": { diff --git a/packages/translation/src/lang/de.json b/packages/translation/src/lang/de.json index 43767c414..32d1f57d4 100644 --- a/packages/translation/src/lang/de.json +++ b/packages/translation/src/lang/de.json @@ -3,19 +3,19 @@ "step": { "start": { "title": "Willkommen bei Homarr", - "subtitle": "Beginnen wir mit der Einrichtung Ihrer Homarr-Instanz.", - "description": "Um zu beginnen, wählen Sie bitte aus, wie Sie Ihre Homarr-Instanz einrichten möchten.", + "subtitle": "Lass uns mit der Einrichtung deiner Homarr-Instanz beginnen.", + "description": "Um loszulegen, wähle bitte wie du deine Homarr Instanz einrichten möchtest.", "action": { "scratch": "Von vorne beginnen", - "importOldmarr": "Import von Homarr vor Version 1.0" + "importOldmarr": "Import von Homarr vor 1.0" } }, "import": { - "title": "Importieren von Daten", - "subtitle": "Sie können Daten aus einer vorhandenen Homarr-Instanz importieren.", + "title": "Daten importieren", + "subtitle": "Sie können Daten aus einer bestehenden Homarr-Instanz importieren.", "dropzone": { "title": "Ziehen Sie die Zip-Datei hierher oder klicken Sie zum Durchsuchen", - "description": "Die hochgeladene Zip-Datei wird verarbeitet und Sie können auswählen, was Sie importieren möchten" + "description": "Die hochgeladene Zip-Datei wird bearbeitet und Sie können wählen, was Sie importieren möchten" }, "fileInfo": { "action": { @@ -23,8 +23,8 @@ } }, "importSettings": { - "title": "Einstellungen importieren", - "description": "Konfigurieren des Importverhaltens" + "title": "Importeinstellungen", + "description": "Importverhalten konfigurieren" }, "boardSelection": { "title": "{count} Boards gefunden", @@ -36,12 +36,12 @@ }, "summary": { "title": "Zusammenfassung des Imports", - "description": "In der folgenden Übersicht können Sie sehen, was importiert wird", + "description": "In der folgenden Zusammenfassung sehen Sie, was importiert wird", "action": { "import": "Import bestätigen und fortfahren" }, "entities": { - "apps": "Apps", + "apps": "Applikationen", "boards": "Boards", "integrations": "Integrationen", "credentialUsers": "Benutzer mit Zugangsdaten" @@ -51,28 +51,28 @@ "title": "Importschlüssel eingeben", "field": { "token": { - "label": "Token", - "description": "Gib den angezeigten Importschlüssel von der vorherigen Homarr Instanz ein" + "label": "Schlüssel", + "description": "Gib den angezeigten Importschlüssel von der vorherigen Homarr-Instanz ein" } }, "notification": { "error": { - "title": "Token ungültig", + "title": "Ungültiger Schlüssel", "message": "Der eingegebene Schlüssel ist ungültig" } } } }, "user": { - "title": "Admin Benutzer", - "subtitle": "Geben Sie die Anmeldeinformationen für Ihren Administratorbenutzer an.", + "title": "Administrator", + "subtitle": "Geben Sie die Zugangsdaten für Ihren Administrator-Benutzer an.", "notification": { "success": { "title": "Benutzer erstellt", "message": "Der Benutzer wurde erfolgreich erstellt" }, "error": { - "title": "Benutzer anlegen fehlgeschlagen" + "title": "Erstellung des Benutzers fehlgeschlagen" } } }, @@ -82,13 +82,13 @@ "form": { "name": { "label": "Gruppenname", - "description": "Name muss mit der Admin-Gruppe der externen Anmeldeoption übereinstimmen" + "description": "Name muss mit der Admin-Gruppe des externen Anbieters übereinstimmen" } } }, "settings": { "title": "Einstellungen", - "subtitle": "Server Einstellungen konfigurieren." + "subtitle": "Server-Einstellungen konfigurieren." }, "finish": { "title": "Einrichtung abschließen", @@ -96,9 +96,9 @@ "description": "Du hast die Einrichtung erfolgreich abgeschlossen. Du kannst jetzt mit der Nutzung von Homarr beginnen. Wähle deine nächste Aktion:", "action": { "goToBoard": "Gehe zu {name} Board", - "createBoard": "Erstellen Sie Ihr erstes Board", - "inviteUser": "Weitere Personen einladen", - "docs": "Lesen Sie die Dokumentation" + "createBoard": "Erstelle dein erstes Board", + "inviteUser": "Andere Benutzer einladen", + "docs": "Lese die Dokumentation" } } }, @@ -109,11 +109,11 @@ "name": "Benutzer", "page": { "login": { - "title": "Melden Sie sich in Ihrem Konto an", + "title": "Melde dich bei deinem Konto an", "subtitle": "Willkommen zurück! Bitte gib deine Zugangsdaten ein" }, "invite": { - "title": "Trete Homarr bei", + "title": "Homarr beitreten", "subtitle": "Willkommen bei Homarr! Bitte erstelle dein Konto", "description": "Du wurdest von {username} eingeladen" }, @@ -147,7 +147,7 @@ "label": "Vorheriges Passwort" }, "homeBoard": { - "label": "Home board" + "label": "Home Board" }, "pingIconsEnabled": { "label": "Symbole für Pings verwenden" @@ -216,7 +216,7 @@ "message": "Erster Wochentag erfolgreich geändert" }, "error": { - "message": "Der erste Wochentag konnte nicht geändert werden" + "message": "Konnte den ersten Wochentag nicht ändern" } } }, @@ -226,7 +226,7 @@ "message": "Ping Icons erfolgreich umgeschaltet" }, "error": { - "message": "Ping Icons konnten nicht umgeschaltet werden" + "message": "Konnte Ping-Icons nicht umschalten" } } }, @@ -242,19 +242,19 @@ }, "toLarge": { "title": "Bild ist zu groß", - "message": "Die maximale Bildgröße beträgt {size}" + "message": "Maximale Bildgröße ist {size}" } } }, "removeImage": { "label": "Bild entfernen", - "confirm": "Sind Sie sicher, dass Sie dieses Bild entfernen möchten?", + "confirm": "Wollen Sie wirklich dieses Bild entfernen?", "notification": { "success": { "message": "Bild erfolgreich entfernt" }, "error": { - "message": "Bild konnte nicht entfernt werden" + "message": "Bild kann nicht entfernt werden" } } } @@ -271,7 +271,7 @@ }, "delete": { "label": "Benutzer dauerhaft löschen", - "description": "Löscht diesen Benutzer einschließlich seiner Einstellungen. Es werden keine Boards gelöscht. Der Benutzer wird nicht benachrichtigt.", + "description": "Löscht diesen Benutzer einschließlich seiner Einstellungen. Wird keine Boards löschen. Benutzer wird nicht benachrichtigt.", "confirm": "Sind Sie sicher, dass Sie den Benutzer {username} mit seinen Einstellungen löschen möchten?" }, "select": { @@ -284,9 +284,9 @@ } }, "group": { - "title": "Gruppen", - "name": "Gruppe", - "search": "Finde eine Gruppe", + "title": "Benutzergruppen", + "name": "Benutzergruppe", + "search": "Finde eine Benutzergruppe", "field": { "name": "Name", "members": "Mitglieder" @@ -305,16 +305,16 @@ "title": "Apps", "item": { "create": { - "label": "Anwendung erstellen", - "description": "Mitgliedern erlauben, Apps zu erstellen" + "label": "Apps erstellen", + "description": "Mitgliedern das Erstellen von Apps erlauben" }, "use-all": { "label": "Alle Apps verwenden", - "description": "Erlauben Sie Mitgliedern, beliebige Apps zu ihren Boards hinzuzufügen" + "description": "Mitgliedern erlauben, Apps zu ihren Boards hinzuzufügen" }, "modify-all": { "label": "Alle Apps ändern", - "description": "Mitgliedern erlauben Apps zu ändern" + "description": "Mitgliedern das Erstellen von Apps erlauben" }, "full-all": { "label": "Voller App Zugriff", @@ -335,11 +335,11 @@ }, "modify-all": { "label": "Alle Boards ändern", - "description": "Erlaube Mitgliedern alle Boards zu ändern (beinhaltet nicht die Zugangskontrolle und den Gefahrenbereich)" + "description": "Erlaube Mitgliedern alle Boards zu ändern (beinhaltet keine Zugangskontrolle und Gefahrenbereich)" }, "full-all": { "label": "Voller Board Zugriff", - "description": "Erlaube Mitgliedern alle Boards (einschließlich der Zugriffskontrolle und des Gefahrenbereich) anzuzeigen, zu ändern und zu löschen" + "description": "Erlaube Mitgliedern alle Boards (einschließlich Zugriffskontrolle und Gefahrenbereich) anzuzeigen, zu ändern und zu löschen" } } }, @@ -347,20 +347,20 @@ "title": "Integrationen", "item": { "create": { - "label": "Integration anlegen", - "description": "Mitgliedern die Erstellung von Integrationen erlauben" + "label": "Integrationen erstellen", + "description": "Mitgliedern erlauben, Integrationen zu erstellen" }, "use-all": { "label": "Alle Integrationen nutzen", - "description": "Ermöglicht Mitgliedern, beliebige Integrationen zu ihren Boards hinzuzufügen" + "description": "Erlaubt Mitgliedern Integrationen zu ihren Boards hinzuzufügen" }, "interact-all": { - "label": "Interaktion mit allen Integrationen", - "description": "Ermöglichen Sie Mitgliedern die Interaktion mit jeder Integration" + "label": "Mit jeder Integration interagieren", + "description": "Mitgliedern erlauben, mit jeder Integration zu interagieren" }, "full-all": { "label": "Voller Zugriff auf Integrationen", - "description": "Erlaubt Mitgliedern jegliche Integration zu verwalten, nutzen und interagieren" + "description": "Erlaube Mitgliedern jede Integration zu verwalten, zu nutzen und zu interagieren" } } }, @@ -368,16 +368,16 @@ "title": "Medien", "item": { "upload": { - "label": "Medien hochladen", - "description": "Erlaubt Mitgliedern Medien hochzuladen" + "label": "Medien Hochladen", + "description": "Erlaube Mitgliedern Medien hochzuladen" }, "view-all": { "label": "Alle Medien anzeigen", "description": "Erlaubt Mitgliedern alle Medien anzusehen" }, "full-all": { - "label": "Voller Zugriff auf alle Medien", - "description": "Erlaubt Mitglieder die Verwaltung und das Entfernen jeglicher Medien" + "label": "Vollständiger Medienzugriff", + "description": "Mitgliedern das Verwalten und Löschen von Medien erlauben" } } }, @@ -399,10 +399,10 @@ }, "modify-all": { "label": "Alle Suchmaschinen ändern", - "description": "Erlaubt es den Mitgliedern die Suchmaschinen zu ändern" + "description": "Mitgliedern erlauben alle Suchmaschinen zu ändern" }, "full-all": { - "label": "Vollständiger Suchmaschinenzugriff", + "label": "Voller Zugriff auf Suchmaschinen", "description": "Mitgliedern das Verwalten und Löschen von Suchmaschinen erlauben" } } @@ -413,7 +413,7 @@ "external": "Alle Mitglieder haben externe Anmeldeoptionen genutzt und können von hier aus nicht verwaltet werden" }, "reservedNotice": { - "message": "Diese Gruppe ist für die Systemnutzung reserviert und schränkt einige Aktionen ein. " + "message": "Diese Gruppe ist für die Systemnutzung reserviert und beschränkt einige Aktionen. " }, "action": { "create": { @@ -428,7 +428,7 @@ } }, "transfer": { - "label": "Übertrage Eigentum", + "label": "Eigentum übertragen", "description": "Übertrage den Eigentümer dieser Gruppe an einen anderen Benutzer.", "confirm": "Bist du sicher, dass du das Eigentum für die Gruppe {name} an {username} übertragen möchtest?", "notification": { @@ -436,20 +436,20 @@ "message": "Gruppe {group} erfolgreich an {user} übertragen" }, "error": { - "message": "Eigentumsübertragung nicht möglich" + "message": "Übertragung des Eigentums nicht möglich" } } }, "addMember": { - "label": "Benutzer hinzufügen" + "label": "Mitglied hinzufügen" }, "removeMember": { - "label": "Benutzer entfernen", + "label": "Mitglied entfernen", "confirm": "Bist du sicher, dass du {user} aus dieser Gruppe entfernen möchtest?" }, "delete": { "label": "Gruppe löschen", - "description": "Sobald Sie eine Gruppe gelöscht haben, gibt es kein Zurück mehr. Bitte seien Sie sich dessen bewusst.", + "description": "Sobald Sie einen Arbeitsbereich löschen, gibt es keinen Weg sie wiederherzustellen. Bitte seien Sie sich dessen bewusst.", "confirm": "Sind Sie sicher, dass Sie die Gruppe {name} löschen möchten?", "notification": { "success": { @@ -463,7 +463,7 @@ "changePermissions": { "notification": { "success": { - "title": "Die Berechtigungen wurden gespeichert", + "title": "Berechtigungen gespeichert", "message": "Berechtigungen wurden erfolgreich gespeichert" }, "error": { @@ -493,7 +493,7 @@ "list": { "title": "Apps", "noResults": { - "title": "Es gibt noch keine Apps", + "title": "Noch keine Apps vorhanden", "action": "Erstelle deine erste App" } }, @@ -506,7 +506,7 @@ }, "error": { "title": "Erstellung fehlgeschlagen", - "message": "Die App konnte nicht erstellt werden" + "message": "Die App konnte nicht angelegt werden" } } }, @@ -528,12 +528,12 @@ "message": "Sind Sie sicher, dass Sie die App {name} löschen möchten?", "notification": { "success": { - "title": "Erfolgreich gellöscht", + "title": "Löschen erfolgreich", "message": "Die App wurde erfolgreich gelöscht" }, "error": { "title": "Löschen fehlgeschlagen", - "message": "Die App konnte nicht gelöscht werden" + "message": "App konnte nicht gelöscht werden" } } } @@ -562,7 +562,7 @@ "title": "Integrationen", "search": "Integrationen durchsuchen", "noResults": { - "title": "Es wurden noch keine Integrationen erstellt" + "title": "Es gibt noch keine Integrationen" } }, "create": { @@ -579,7 +579,7 @@ } }, "edit": { - "title": "Neue {name} Integration", + "title": "{name} Integration bearbeiten", "notification": { "success": { "title": "Änderungen erfolgreich angewendet", @@ -596,8 +596,8 @@ "message": "Sind Sie sicher, dass Sie die Integration {name} löschen möchten?", "notification": { "success": { - "title": "Erfolgreich gellöscht", - "message": "Die Integration wurde erfolgreich gelöscht" + "title": "Löschen erfolgreich", + "message": "Die Integration wurde erfolgreich erstellt" }, "error": { "title": "Löschen fehlgeschlagen", @@ -630,26 +630,26 @@ }, "invalidUrl": { "title": "Ungültige URL", - "message": "Die URL ist ungültig" + "message": "Die Adresse ist ungültig" }, "secretNotDefined": { - "title": "Fehlende Anmeldeinformationen", - "message": "Es wurden nicht alle Zugangsdaten angegeben" + "title": "Fehlende Anmeldedaten", + "message": "Nicht alle Zugangsdaten wurden angegeben" }, "invalidCredentials": { "title": "Ungültige Zugangsdaten", "message": "Die Zugangsdaten sind ungültig" }, "commonError": { - "title": "Verbindung fehlgeschlagen", + "title": "Verbindungsaufbau fehlgeschlagen", "message": "Die Verbindung konnte nicht hergestellt werden" }, "badRequest": { - "title": "Ungültige Anfrage", + "title": "Fehlerhafte Anfrage", "message": "Die Anfrage war fehlerhaft" }, "unauthorized": { - "title": "Unberechtigt", + "title": "Nicht autorisiert", "message": "Wahrscheinlich falsche Anmeldeinformationen" }, "forbidden": { @@ -658,7 +658,7 @@ }, "notFound": { "title": "Nicht gefunden", - "message": "Wahrscheinlich falsche URL oder falscher Pfad" + "message": "Wahrscheinlich falsche URL oder Pfad" }, "internalServerError": { "title": "Interner Serverfehler", @@ -673,38 +673,38 @@ "message": "Die Verbindung wurde abgebrochen" }, "domainNotFound": { - "title": "Die Domain konnte nicht gefunden werden", + "title": "Domain nicht gefunden", "message": "Die Domain konnte nicht gefunden werden" }, "connectionRefused": { - "title": "Verbindung abgelehnt", + "title": "Verbindung verweigert", "message": "Die Verbindung wurde abgelehnt" }, "invalidJson": { "title": "Ungültiges JSON", - "message": "Die Antwort war kein gültiges JSON" + "message": "Die Antwort war ungültig JSON" }, "wrongPath": { - "title": "Ungültiger Pfad", - "message": "Der Pfad ist wahrscheinlich nicht korrekt" + "title": "Falscher Pfad", + "message": "Der Pfad ist vermutlich nicht korrekt" } } }, "secrets": { - "title": "Geheimnisse", - "lastUpdated": "Zuletzt aktualisiert {date}", + "title": "Secrets", + "lastUpdated": "Zuletzt aktualisiert am {date}", "notSet": { - "label": "Kein Wert angegeben", - "tooltip": "Dieses erforderliche Geheimnis wurde noch nicht festgelegt" + "label": "Kein Wert festgelegt", + "tooltip": "Das erforderliche Secret wurde noch nicht festgelegt" }, - "secureNotice": "Dieses Geheimnis kann nach der Erstellung nicht mehr abgerufen werden", + "secureNotice": "Das Secret kann nicht nach der Erstellung abgerufen werden", "reset": { - "title": "Geheimnis zurücksetzen", + "title": "Secret zurücksetzen", "message": "Bist du sicher, dass du dieses Secret zurücksetzen möchtest?" }, "noSecretsRequired": { - "segmentTitle": "Keine Geheimnisse", - "text": "Für diese Integration sind keine Geheimnisse erforderlich" + "segmentTitle": "Keine Secrets", + "text": "Kein Secret für diese Integration erforderlich" }, "kind": { "username": { @@ -713,7 +713,7 @@ }, "apiKey": { "label": "API Schlüssel", - "newLabel": "Neuer API Schlüssel" + "newLabel": "neuer API Schlüssel" }, "password": { "label": "Passwort", @@ -729,7 +729,7 @@ }, "media": { "plural": "Medien", - "search": "Medium finden", + "search": "Medien suchen", "field": { "name": "Name", "size": "Größe", @@ -737,7 +737,7 @@ }, "action": { "upload": { - "label": "Medium hochladen", + "label": "Medien Hochladen", "file": "Datei auswählen", "notification": { "success": { @@ -750,18 +750,18 @@ }, "delete": { "label": "Medium löschen", - "description": "Möchten Sie das Medium wirklich löschen?", + "description": "Sind Sie sicher, dass Sie die Medien löschen möchten?", "notification": { "success": { "message": "Das Medium wurde erfolgreich gelöscht" }, "error": { - "message": "Das Medium konnte nicht gelöscht werden" + "message": "Die Medien konnten nicht gelöscht werden" } } }, "copy": { - "label": "URL kopieren" + "label": "URL in Zwischenablage kopieren" } } }, @@ -774,7 +774,7 @@ "backToOverview": "Zurück zur Übersicht", "create": "Erstellen", "edit": "Bearbeiten", - "import": "Importieren", + "import": "Import", "insert": "Einfügen", "remove": "Entfernen", "save": "Speichern", @@ -786,15 +786,15 @@ "continue": "Fortfahren", "previous": "Zurück", "next": "Weiter", - "checkoutDocs": "Sieh dir die Dokumentation an", - "checkLogs": "Überprüfen Sie die Logs für weitere Details", + "checkoutDocs": "Die Dokumentation ansehen", + "checkLogs": "Logs für weitere Details prüfen", "tryAgain": "Erneut versuchen", - "loading": "Wird geladen..." + "loading": "Wird geladen" }, - "here": "hier", + "here": "Hier", "iconPicker": { "label": "Icon URL", - "header": "Geben Sie den Namen oder das Objekte ein, um nach Symbolen zu filtern ... Homarr durchsucht für Sie {countIcons} Symbole." + "header": "Geben Sie Namen oder Objekte ein, um nach Symbolen zu filtern... Homarr sucht nach {countIcons} Icons für Sie." }, "colorScheme": { "options": { @@ -815,7 +815,7 @@ "error": "Erstellung fehlgeschlagen" }, "delete": { - "success": "Erfolgreich gellöscht", + "success": "Löschen erfolgreich", "error": "Löschen fehlgeschlagen" }, "update": { @@ -828,7 +828,7 @@ } }, "multiSelect": { - "placeholder": "Wählen Sie einen oder mehrere Werte aus" + "placeholder": "Wählen Sie einen oder mehrere Werte" }, "multiText": { "placeholder": "Weitere Werte hinzufügen", @@ -850,14 +850,14 @@ "login": "Anmelden", "homeBoard": "Ihr Home Board", "loggedOut": "Abgemeldet", - "updateAvailable": "{countUpdates} Aktualisierungen verfügbar: {tag}" + "updateAvailable": "{countUpdates} Updates verfügbar: {tag}" } }, - "dangerZone": "Gefahrenzone", + "dangerZone": "Gefahrenbereich", "noResults": "Die Suche ergab keine Treffer", "preview": { - "show": "Vorschau anzeigen", - "hide": "Vorschau verbergen" + "show": "Vorschau ansehen", + "hide": "Vorschau ausblenden" }, "zod": { "errors": { @@ -881,8 +881,8 @@ "passwordsDoNotMatch": "Passwörter stimmen nicht überein", "passwordRequirements": "Passwort erfüllt nicht alle Anforderungen", "boardAlreadyExists": "Ein Board mit diesem Namen existiert bereits", - "invalidFileType": "Ungültiger Dateityp, erwarte {expected}", - "fileTooLarge": "Die Datei ist zu groß. Die maximale Größe beträgt {maxSize}", + "invalidFileType": "Ungültiger Dateityp, erwartete {expected}", + "fileTooLarge": "Datei ist zu groß, maximale Größe ist {maxSize}", "invalidConfiguration": "Ungültige Konfiguration", "groupNameTaken": "Gruppenname bereits vergeben" } @@ -903,7 +903,7 @@ "category": { "field": { "name": { - "label": "Name" + "label": "" } }, "action": { @@ -992,7 +992,7 @@ }, "widget": { "app": { - "name": "App", + "name": "", "description": "Bettet eine App in das Board ein.", "option": { "appId": { @@ -1029,7 +1029,7 @@ "label": "Ansicht", "option": { "row": { - "label": "Horizontal" + "label": "" }, "column": { "label": "Vertikal" @@ -1047,7 +1047,7 @@ }, "dnsHoleSummary": { "name": "", - "description": "", + "description": "Zeigt die Zusammenfassung deines DNS Holes an", "option": { "layout": { "label": "Ansicht", @@ -1059,27 +1059,27 @@ "label": "Vertikal" }, "grid": { - "label": "" + "label": "Raster" } } }, "usePiHoleColors": { - "label": "" + "label": "Pi Hole Farben verwenden" } }, "error": { - "internalServerError": "", - "integrationsDisconnected": "" + "internalServerError": "Fehler beim Abrufen der DNS Hole Zusammenfassung", + "integrationsDisconnected": "Keine Daten verfügbar, alle Integrationen getrennt" }, "data": { "adsBlockedToday": "Heute blockiert", "adsBlockedTodayPercentage": "Heute blockiert", - "dnsQueriesToday": "Heutige Anfragen", - "domainsBeingBlocked": "" + "dnsQueriesToday": "Abfragen heute", + "domainsBeingBlocked": "Domänen auf der Sperrliste" } }, "dnsHoleControls": { - "name": "", + "name": "DNS Hole Steuerung", "description": "Steuern Sie PiHole oder AdGuard von Ihrem Dashboard aus", "option": { "layout": { @@ -1092,26 +1092,26 @@ "label": "Vertikal" }, "grid": { - "label": "" + "label": "Raster" } } }, "showToggleAllButtons": { - "label": "" + "label": "Alle Schaltflächen anzeigen" } }, "error": { - "internalServerError": "" + "internalServerError": "Fehler bei der Kontrolle des DNS Holes" }, "controls": { - "enableAll": "", - "disableAll": "", - "setTimer": "", - "set": "Speichern", + "enableAll": "Alle aktivieren", + "disableAll": "Alle deaktivieren", + "setTimer": "Timer setzen", + "set": "Übernehmen", "enabled": "Aktiviert", "disabled": "Deaktiviert", - "processing": "", - "disconnected": "", + "processing": "Wird verarbeitet", + "disconnected": "Verbindung getrennt", "hours": "Stunden", "minutes": "Minuten", "unlimited": "Freilassen für unbegrenzt" @@ -1122,8 +1122,8 @@ "description": "Zeigt das aktuelle Datum und die Uhrzeit an.", "option": { "customTitleToggle": { - "label": "Benutzerdefinierte Titel-/Stadtanzeige", - "description": "Zeigen Sie einen individuellen Titel oder den Namen der Stadt/des Landes oben auf der Uhr." + "label": "Eigene Titel/Stadt Anzeige", + "description": "Zeige einen benutzerdefinierten Titel oder den Namen der Stadt oder des Landes oben auf der Uhr." }, "customTitle": { "label": "Titel" @@ -1140,7 +1140,7 @@ }, "timezone": { "label": "Zeitzone", - "description": "Wählen Sie die Zeitzone gemäß dem IANA-Standard" + "description": "Wählen Sie die Zeitzone nach dem IANA-Standard" }, "showDate": { "label": "Datum anzeigen" @@ -1183,7 +1183,7 @@ "checkList": "Checkliste", "increaseIndent": "Einzug vergrößern", "decreaseIndent": "Einzug verkleinern", - "link": "Link", + "link": "Verknüpfung", "unlink": "Link entfernen", "image": "Bild einbetten", "addTable": "Tabelle hinzufügen", @@ -1251,7 +1251,7 @@ }, "smartHome-entityState": { "name": "Zustand der Entität", - "description": "Den Status einer Entität anzeigen und optional umschalten", + "description": "Zeigt den Status einer Entität an und schaltet ihn optional ein", "option": { "entityId": { "label": "Eintrag-ID" @@ -1269,7 +1269,7 @@ }, "smartHome-executeAutomation": { "name": "Automatisierung ausführen", - "description": "Lösen Sie eine Automatisierung mit einem Klick aus", + "description": "Automatisierung mit einem Klick auslösen", "option": { "displayName": { "label": "Anzeigename" @@ -1298,7 +1298,7 @@ "label": "Start von" }, "filterFutureMonths": { - "label": "Endet um" + "label": "Endet am" } } }, @@ -1345,14 +1345,14 @@ } }, "indexerManager": { - "name": "Status des Indexer-Managers", + "name": "Status des Index Managers", "description": "Status des Indexer", "option": { "openIndexerSiteInNewTab": { "label": "Indexer Seite in neuem Tab öffnen" } }, - "title": "Indexer-Manager", + "title": "Index Manager", "testAll": "Alle testen", "error": { "internalServerError": "Fehler beim Abrufen des Indexer Status" @@ -1380,8 +1380,8 @@ "processor": "Prozessor: {cpuModelName}", "memory": "Speicher: {memory}GiB", "memoryAvailable": "Verfügbar: {memoryAvailable} GiB ({percent}%)", - "version": "Version: {version}", - "uptime": "", + "version": "", + "uptime": "Betriebszeit: {days} Tage, {hours} Stunden, {minutes} Minuten", "loadAverage": "Durchschnittliche Last:", "minute": "1 Minute", "minutes": "{count} Minuten", @@ -1401,7 +1401,7 @@ "longitude": "", "disabledTooltip": "", "unknownLocation": "", - "search": "Suchen", + "search": "Suche", "table": { "header": { "city": "", @@ -1436,7 +1436,7 @@ "description": "Einbetten eines Videostreams oder eines Videos von einer Kamera oder einer Website", "option": { "feedUrl": { - "label": "Feed-URL" + "label": "Feed URL" }, "hasAutoPlay": { "label": "Automatische Wiedergabe", @@ -1511,18 +1511,18 @@ "detailsTitle": "" }, "downSpeed": { - "columnTitle": "Down", + "columnTitle": "", "detailsTitle": "Download Geschwindigkeit" }, "index": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "#", + "detailsTitle": "Aktueller Index im Client" }, "id": { "columnTitle": "" }, "integration": { - "columnTitle": "Integration" + "columnTitle": "" }, "name": { "columnTitle": "" @@ -1560,12 +1560,12 @@ "detailsTitle": "" }, "upSpeed": { - "columnTitle": "Up", + "columnTitle": "", "detailsTitle": "" } }, "states": { - "downloading": "Herunterladen", + "downloading": "Wird heruntergeladen", "queued": "In der Warteschlange", "paused": "Pausiert", "completed": "Abgeschlossen", @@ -1627,18 +1627,18 @@ "option": {}, "titles": { "stats": { - "main": "Medien-Statistiken", + "main": "Medien Statistiken", "approved": "Bereits genehmigt", "pending": "Ausstehende Freigaben", "processing": "", "declined": "", "available": "", - "tv": "TV-Anfragen", - "movie": "Film-Anfragen", + "tv": "TV Anfragen", + "movie": "Film Anfragen", "total": "Gesamt" }, "users": { - "main": "Top-Nutzer", + "main": "Top Nutzer", "requests": "" } } @@ -1655,11 +1655,11 @@ } }, "tab": { - "workers": "Workers", + "workers": "", "queue": "Warteschlange", "statistics": "Statistiken" }, - "currentIndex": "", + "currentIndex": "{start}-{end} von {total}", "healthCheck": { "title": "", "queued": "In der Warteschlange", @@ -1677,7 +1677,7 @@ "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "Codecs", + "videoCodecs": "", "videoContainers": "Container", "videoResolutions": "Auflösungen" }, @@ -1766,7 +1766,7 @@ "invalidError": "" }, "apps": { - "label": "Apps", + "label": "", "avoidDuplicates": { "label": "", "description": "" @@ -1889,10 +1889,10 @@ "label": "" }, "name": { - "label": "Name" + "label": "" }, "isPublic": { - "label": "Öffentlich sichtbar", + "label": "Öffentlich", "description": "" } }, @@ -1935,7 +1935,7 @@ } }, "dangerZone": { - "title": "Gefahrenzone", + "title": "Gefahrenbereich", "action": { "rename": { "label": "", @@ -2026,8 +2026,8 @@ "navbar": { "items": { "home": "Startseite", - "boards": "Boards", - "apps": "Apps", + "boards": "", + "apps": "", "integrations": "Integrationen", "searchEngies": "Suchmaschinen", "medias": "Medien", @@ -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": "Community Discord", + "discord": "", "sourceCode": "" } }, @@ -2064,15 +2064,15 @@ "page": { "home": { "statistic": { - "board": "Boards", + "board": "", "user": "Benutzer", "invite": "Einladungen", "integration": "Integrationen", - "app": "Apps", + "app": "", "group": "Gruppen" }, "statisticLabel": { - "boards": "Boards", + "boards": "", "resources": "", "authentication": "", "authorization": "" @@ -2113,7 +2113,7 @@ "createBoard": { "field": { "name": { - "label": "Name" + "label": "" } } } @@ -2130,7 +2130,7 @@ "title": "Allgemein", "item": { "language": "", - "board": "Home board", + "board": "", "firstDayOfWeek": "Erster Tag der Woche", "accessibility": "Barrierefreiheit" } @@ -2139,7 +2139,7 @@ "title": "Sicherheit" }, "board": { - "title": "Boards" + "title": "" } }, "list": { @@ -2184,7 +2184,7 @@ "action": { "new": { "title": "", - "description": "Nach Ablauf der Frist ist eine Einladung nicht mehr gültig und der Empfänger der Einladung kann kein Konto erstellen." + "description": "Nach Ablauf der Frist ist die Einladung nicht mehr gültig und der Empfänger der Einladung kann kein Konto mehr erstellen." }, "copy": { "title": "", @@ -2199,7 +2199,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Ersteller" @@ -2208,7 +2208,7 @@ "label": "Ablaufdatum" }, "token": { - "label": "Token" + "label": "" } } } @@ -2266,27 +2266,27 @@ } }, "crawlingAndIndexing": { - "title": "", - "warning": "", + "title": "Suche und Indexiere", + "warning": "Das Aktivieren oder Deaktivieren von Einstellungen hier wird schwerwiegende Auswirkungen haben, wie Suchmaschinen Ihre Seite suchen und indizieren. Jede Einstellung startet eine Anforderung und es ist die Aufgabe des Crawlers, diese Einstellungen zu übernehmen. Änderungen können mehrere Tage oder Wochen dauern. Einige Einstellungen können Suchmaschinenspezifisch sein.", "noIndex": { - "title": "", - "text": "" + "title": "Kein Index", + "text": "Die Webseite nicht in Suchmaschinen indizieren und in keinem Suchergebnis anzeigen" }, "noFollow": { - "title": "", - "text": "" + "title": "Keine Folgen", + "text": "Folgen Sie keine Links während der Indexierung. Deaktivieren kann dazu führen, dass Crawler versuchen, allen Links auf Homarr zu folgen." }, "noTranslate": { - "title": "", - "text": "" + "title": "Nicht Übersetzen", + "text": "Wenn die Sprache der Seite wahrscheinlich nicht zu lesen ist wird der Benutzer höchstwahrscheinlich wollen das Google einen Übersetzungslink in den Suchergebnissen zeigt" }, "noSiteLinksSearchBox": { - "title": "", - "text": "" + "title": "Kein Suchfeld für Seitenlinks", + "text": "Google baut ein Suchfeld mit den gecrawlten Links zusammen mit anderen direkten Links auf. Durch das Aktivieren dieser Option wird Google aufgefordert, dieses Feld zu deaktivieren." } }, "board": { - "title": "Boards", + "title": "", "homeBoard": { "label": "", "description": "" @@ -2315,7 +2315,7 @@ "title": "", "status": { "idle": "", - "running": "Aktiv", + "running": "Wird ausgeführt", "error": "Fehler" }, "job": { @@ -2350,7 +2350,7 @@ "label": "" }, "indexerManager": { - "label": "" + "label": "Index Manager" }, "healthMonitoring": { "label": "" @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2427,7 +2427,7 @@ }, "field": { "name": { - "label": "Name" + "label": "" }, "state": { "label": "Staat", @@ -2442,10 +2442,10 @@ } }, "containerImage": { - "label": "Image" + "label": "" }, "ports": { - "label": "Ports" + "label": "" } }, "action": { @@ -2552,7 +2552,7 @@ "manage": { "label": "Verwalten", "boards": { - "label": "Boards" + "label": "" }, "integrations": { "label": "Integrationen", @@ -2576,7 +2576,7 @@ "label": "Medien" }, "apps": { - "label": "Apps", + "label": "", "new": { "label": "" }, @@ -2591,7 +2591,7 @@ }, "general": "Allgemein", "security": "Sicherheit", - "board": "Boards", + "board": "", "groups": { "label": "Gruppen" }, @@ -2602,7 +2602,7 @@ "tools": { "label": "Werkzeuge", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" @@ -2627,7 +2627,7 @@ "help": "", "group": { "app": { - "title": "Apps", + "title": "", "children": { "action": { "open": { @@ -2643,7 +2643,7 @@ } }, "board": { - "title": "Boards", + "title": "", "children": { "action": { "open": { @@ -2749,7 +2749,7 @@ "description": "" }, "torrent": { - "name": "Torrents", + "name": "", "description": "" }, "youTube": { @@ -2775,7 +2775,7 @@ "label": "" }, "discord": { - "label": "Community Discord" + "label": "" } } } @@ -2840,7 +2840,7 @@ "label": "Über" }, "homeBoard": { - "label": "Home board" + "label": "" }, "preferences": { "label": "Ihre Einstellungen" @@ -2891,7 +2891,7 @@ "search": "", "field": { "name": { - "label": "Name" + "label": "" }, "short": { "label": "" diff --git a/packages/translation/src/lang/el.json b/packages/translation/src/lang/el.json index a9e0c270f..f8a385f15 100644 --- a/packages/translation/src/lang/el.json +++ b/packages/translation/src/lang/el.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "Token", + "label": "", "description": "" } }, @@ -124,7 +124,7 @@ }, "field": { "email": { - "label": "E-Mail", + "label": "", "verified": "" }, "username": { @@ -1678,7 +1678,7 @@ "savedSpace": "", "healthChecks": "", "videoCodecs": "Κωδικοποιητές", - "videoContainers": "Containers", + "videoContainers": "", "videoResolutions": "Αναλύσεις" }, "workers": { @@ -2042,9 +2042,9 @@ "tools": { "label": "Εργαλεία", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2208,7 +2208,7 @@ "label": "Ημερομηνία λήξης" }, "token": { - "label": "Token" + "label": "" } } } @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2419,7 +2419,7 @@ } }, "docker": { - "title": "Containers", + "title": "", "table": { "updated": "", "search": "", @@ -2602,7 +2602,7 @@ "tools": { "label": "Εργαλεία", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/es.json b/packages/translation/src/lang/es.json index f9c3afb22..92f5ddfc0 100644 --- a/packages/translation/src/lang/es.json +++ b/packages/translation/src/lang/es.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "Token", + "label": "", "description": "" } }, @@ -767,7 +767,7 @@ }, "common": { "beta": "", - "error": "Error", + "error": "", "action": { "add": "Añadir", "apply": "Aplicar", @@ -1029,10 +1029,10 @@ "label": "Diseño", "option": { "row": { - "label": "Horizontal" + "label": "" }, "column": { - "label": "Vertical" + "label": "" }, "grid": { "label": "" @@ -1053,10 +1053,10 @@ "label": "Diseño", "option": { "row": { - "label": "Horizontal" + "label": "" }, "column": { - "label": "Vertical" + "label": "" }, "grid": { "label": "" @@ -1086,10 +1086,10 @@ "label": "Diseño", "option": { "row": { - "label": "Horizontal" + "label": "" }, "column": { - "label": "Vertical" + "label": "" }, "grid": { "label": "" @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "Incrusta cualquier contenido de Internet. Algunos sitios web pueden restringir el acceso.", "option": { "embedUrl": { @@ -1532,7 +1532,7 @@ "detailsTitle": "" }, "ratio": { - "columnTitle": "Ratio", + "columnTitle": "", "detailsTitle": "" }, "received": { @@ -1635,7 +1635,7 @@ "available": "", "tv": "Solicitudes de TV", "movie": "Solicitudes de películas", - "total": "Total" + "total": "" }, "users": { "main": "Mejores usuarios", @@ -1903,7 +1903,7 @@ "title": "", "section": { "general": { - "title": "General", + "title": "", "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": "General", + "title": "", "item": { "language": "", "board": "", @@ -2199,7 +2199,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Creador" @@ -2208,7 +2208,7 @@ "label": "Fecha de caducidad" }, "token": { - "label": "Token" + "label": "" } } } @@ -2217,7 +2217,7 @@ "back": "", "setting": { "general": { - "title": "General", + "title": "", "owner": "Propietario", "ownerOfGroup": "", "ownerOfGroupDeleted": "" @@ -2316,7 +2316,7 @@ "status": { "idle": "", "running": "En ejecución", - "error": "Error" + "error": "" }, "job": { "iconsUpdater": { @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2589,7 +2589,7 @@ "create": { "label": "Crear" }, - "general": "General", + "general": "", "security": "Seguridad", "board": "Tableros", "groups": { @@ -2602,7 +2602,7 @@ "tools": { "label": "Herramientas", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" @@ -2749,7 +2749,7 @@ "description": "" }, "torrent": { - "name": "Torrents", + "name": "", "description": "" }, "youTube": { diff --git a/packages/translation/src/lang/fr.json b/packages/translation/src/lang/fr.json index 1cc4ce51a..6ab07d8ed 100644 --- a/packages/translation/src/lang/fr.json +++ b/packages/translation/src/lang/fr.json @@ -2,130 +2,130 @@ "init": { "step": { "start": { - "title": "", - "subtitle": "", - "description": "", + "title": "Bienvenue dans Homarr", + "subtitle": "Commençons par configurer votre instance Homarr.", + "description": "Pour commencer, veuillez selectionner comment vous souhaitez configurer votre instance Homarr.", "action": { - "scratch": "", - "importOldmarr": "" + "scratch": "Partir de zéro", + "importOldmarr": "Importer à partir d'Homarr avant la 1.0" } }, "import": { - "title": "", - "subtitle": "", + "title": "Importer des données", + "subtitle": "Vous pouvez importer des données depuis une instance Homarr existante.", "dropzone": { - "title": "", - "description": "" + "title": "Déposez le fichier zip ici ou cliquez pour naviguer", + "description": "Le zip téléchargé sera traité et vous pourrez sélectionner ce que vous voulez importer" }, "fileInfo": { "action": { - "change": "" + "change": "Changer le fichier" } }, "importSettings": { - "title": "", - "description": "" + "title": "Importer des paramètres", + "description": "Configurer le comportement d'importation" }, "boardSelection": { - "title": "", - "description": "", + "title": "{count} tableaux trouvés", + "description": "Choisissez tous les tableaux avec la taille que vous souhaitez importer", "action": { - "selectAll": "", - "unselectAll": "" + "selectAll": "Tout sélectionner", + "unselectAll": "Tout désélectionner" } }, "summary": { - "title": "", - "description": "", + "title": "Résumé de l'importation", + "description": "Dans le résumé ci-dessous vous pouvez voir ce qui va être importé", "action": { - "import": "" + "import": "Confirmer l'importation et continuer" }, "entities": { "apps": "Applications", "boards": "Tableaux de bord", - "integrations": "", + "integrations": "Intégrations", "credentialUsers": "" } }, "tokenModal": { - "title": "", + "title": "Saisir le jeton d'importation", "field": { "token": { "label": "Jeton", - "description": "" + "description": "Entrez le jeton d'importation de votre instance précédente" } }, "notification": { "error": { - "title": "", - "message": "" + "title": "Jeton non valide", + "message": "Le jeton que vous avez saisi est invalide" } } } }, "user": { - "title": "", - "subtitle": "", + "title": "Administrateur", + "subtitle": "Spécifiez les informations d'identification pour votre compte d'administrateur.", "notification": { "success": { - "title": "", - "message": "" + "title": "Utilisateur créé", + "message": "L’utilisateur a été créé avec succès" }, "error": { - "title": "" + "title": "La création de l'utilisateur a échoué" } } }, "group": { - "title": "", + "title": "Groupe externe", "subtitle": "", "form": { "name": { - "label": "", + "label": "Nom du groupe", "description": "" } } }, "settings": { "title": "Paramètres", - "subtitle": "" + "subtitle": "Configurer les paramètres du serveur." }, "finish": { - "title": "", - "subtitle": "", - "description": "", + "title": "Terminer la configuration", + "subtitle": "Vous êtes prêt !", + "description": "Vous avez terminé avec succès le processus d'installation. Vous pouvez maintenant commencer à utiliser Homarr. Sélectionnez votre prochaine action :", "action": { "goToBoard": "", "createBoard": "", - "inviteUser": "", - "docs": "" + "inviteUser": "Inviter d'autres utilisateurs", + "docs": "Lire la documentation" } } }, - "backToStart": "" + "backToStart": "Retour au début" }, "user": { "title": "Utilisateurs", "name": "Utilisateur", "page": { "login": { - "title": "", - "subtitle": "" + "title": "Connectez-vous à votre compte", + "subtitle": "Bon retour parmi nous ! Veuillez entrer vos identifiants" }, "invite": { - "title": "", - "subtitle": "", - "description": "" + "title": "Rejoindre Homarr", + "subtitle": "Bienvenue sur Homarr! Veuillez créer votre compte", + "description": "Vous avez été invité par {username}" }, "init": { - "title": "", - "subtitle": "" + "title": "Nouvelle installation Homarr", + "subtitle": "Veuillez créer l'utilisateur administrateur initial" } }, "field": { "email": { "label": "Courriel", - "verified": "" + "verified": "Vérifié" }, "username": { "label": "Nom d'utilisateur" @@ -133,18 +133,18 @@ "password": { "label": "Mot de passe", "requirement": { - "length": "", + "length": "Contient au moins 8 caractères", "lowercase": "Inclut une lettre minuscule", "uppercase": "Inclut une lettre majuscule", "number": "Inclut un nombre", - "special": "" + "special": "Contient un symbole spécial" } }, "passwordConfirm": { "label": "Confirmation du mot de passe" }, "previousPassword": { - "label": "" + "label": "Ancien mot de passe" }, "homeBoard": { "label": "" @@ -154,25 +154,25 @@ } }, "error": { - "usernameTaken": "" + "usernameTaken": "Nom d'utilisateur déjà utilisé" }, "action": { "login": { "label": "Connexion", - "labelWith": "", + "labelWith": "Se connecter avec {provider}", "notification": { "success": { - "title": "", - "message": "" + "title": "Connexion réussie", + "message": "Vous êtes maintenant connecté" }, "error": { - "title": "", + "title": "Échec de la connexion", "message": "" } }, "forgotPassword": { - "label": "", - "description": "" + "label": "Mot de passe oublié?", + "description": "Un administrateur peut utiliser la commande suivante pour réinitialiser votre mot de passe :" } }, "register": { @@ -184,19 +184,19 @@ }, "error": { "title": "", - "message": "" + "message": "Votre compte n'a pas pu être créé" } } }, "create": "Créer un utilisateur", "changePassword": { - "label": "", + "label": "Changer le mot de passe", "notification": { "success": { - "message": "" + "message": "Mot de passe modifié avec succès" }, "error": { - "message": "" + "message": "Modification du mot de passe impossible" } } }, @@ -232,29 +232,29 @@ }, "manageAvatar": { "changeImage": { - "label": "", + "label": "Modifier l’image", "notification": { "success": { - "message": "" + "message": "L'image a été modifiée avec succès" }, "error": { - "message": "" + "message": "Impossible de modifier l'image" }, "toLarge": { - "title": "", - "message": "" + "title": "L'image est trop volumineuse", + "message": "La taille maximale de l'image est {size}" } } }, "removeImage": { - "label": "", - "confirm": "", + "label": "Retirer l'image", + "confirm": "Êtes-vous sûr de vouloir retirer cette image ?", "notification": { "success": { - "message": "" + "message": "Image retirée avec succès" }, "error": { - "message": "" + "message": "Impossible de retirer l'image" } } } @@ -262,42 +262,42 @@ "editProfile": { "notification": { "success": { - "message": "" + "message": "Profil mis à jour avec succès" }, "error": { - "message": "" + "message": "Impossible de mettre à jour le profil" } } }, "delete": { - "label": "", - "description": "", - "confirm": "" + "label": "Supprimer définitivement l'utilisateur", + "description": "Supprime cet utilisateur ainsi que ses préférences. Ne supprimera aucun tableau. L'utilisateur ne sera pas averti.", + "confirm": "Êtes-vous sûr de vouloir supprimer l'utilisateur {username} ainsi que ses préférences ?" }, "select": { - "label": "", - "notFound": "" + "label": "Sélectionner l'utilisateur", + "notFound": "Aucun utilisateur trouvé" }, "transfer": { - "label": "" + "label": "Choisir un nouveau propriétaire" } } }, "group": { - "title": "", - "name": "", - "search": "", + "title": "Groupes", + "name": "Groupe", + "search": "Trouver un groupe", "field": { "name": "Nom", - "members": "" + "members": "Membres" }, "permission": { "admin": { "title": "Admin", "item": { "admin": { - "label": "", - "description": "" + "label": "Administrateur", + "description": "Les membres avec cette permission ont un accès complet à toutes les fonctionnalités et paramètres" } } }, @@ -305,15 +305,15 @@ "title": "Applications", "item": { "create": { - "label": "", - "description": "" + "label": "Créer une app", + "description": "Autoriser les membres à créer des apps" }, "use-all": { - "label": "", + "label": "Utiliser toutes les apps", "description": "" }, "modify-all": { - "label": "", + "label": "Modifier toutes les apps", "description": "" }, "full-all": { @@ -344,11 +344,11 @@ } }, "integration": { - "title": "", + "title": "Intégrations", "item": { "create": { - "label": "", - "description": "" + "label": "Créer des intégrations", + "description": "Autoriser les membres à créer des intégrations" }, "use-all": { "label": "", @@ -365,37 +365,37 @@ } }, "media": { - "title": "", + "title": "Médias", "item": { "upload": { - "label": "", - "description": "" + "label": "Téléverser des médias", + "description": "Autoriser les membres à téléverser des médias" }, "view-all": { - "label": "", - "description": "" + "label": "Voir tous les médias", + "description": "Autoriser les membres à voir tous les médias" }, "full-all": { - "label": "", - "description": "" + "label": "Accès complet aux médias", + "description": "Autoriser les membres à gérer et supprimer les médias" } } }, "other": { - "title": "", + "title": "Autre", "item": { "view-logs": { - "label": "", - "description": "" + "label": "Voir les logs", + "description": "Autoriser les membres à voir les logs" } } }, "search-engine": { - "title": "", + "title": "Moteurs de recherche", "item": { "create": { - "label": "", - "description": "" + "label": "Créer des moteurs de recherche", + "description": "Autoriser les membres à créer des moteurs de recherche" }, "modify-all": { "label": "", @@ -413,62 +413,62 @@ "external": "" }, "reservedNotice": { - "message": "" + "message": "Ce groupe est réservé pour l'utilisation du système et restreint certaines actions. " }, "action": { "create": { - "label": "", + "label": "Nouveau groupe", "notification": { "success": { - "message": "" + "message": "Le groupe a été créé avec succès" }, "error": { - "message": "" + "message": "Le groupe n'a pas pu être créé" } } }, "transfer": { - "label": "", - "description": "", - "confirm": "", + "label": "Changer le propriétaire", + "description": "Transférer la propriété de ce groupe à un autre utilisateur.", + "confirm": "Êtes-vous sûr de vouloir transférer la propriété du groupe {name} à {username}?", "notification": { "success": { - "message": "" + "message": "Le groupe {group} a été transféré avec succès à {user}" }, "error": { - "message": "" + "message": "Impossible de transférer la propriété" } } }, "addMember": { - "label": "" + "label": "Ajouter un membre" }, "removeMember": { - "label": "", - "confirm": "" + "label": "Retirer un membre", + "confirm": "Êtes-vous sûr de vouloir retirer {user} de ce groupe ?" }, "delete": { - "label": "", - "description": "", - "confirm": "", + "label": "Supprimer le groupe", + "description": "Une fois que vous supprimez un groupe, il n'y a pas de retour en arrière possible. Soyez certain.", + "confirm": "Êtes-vous sûr de vouloir supprimer le groupe {name}?", "notification": { "success": { - "message": "" + "message": "Groupe {name} supprimé avec succès" }, "error": { - "message": "" + "message": "Impossible de supprimer le groupe {name}" } } }, "changePermissions": { "notification": { "success": { - "title": "", - "message": "" + "title": "Permissions sauvegardées", + "message": "Les permissions ont été sauvegardées avec succès" }, "error": { - "title": "", - "message": "" + "title": "Permissions non sauvegardées", + "message": "Les permissions n'ont pas été sauvegardées" } } }, @@ -483,8 +483,8 @@ } }, "select": { - "label": "", - "notFound": "" + "label": "Sélectionner un groupe", + "notFound": "Aucun groupe trouvé" } } }, @@ -493,16 +493,16 @@ "list": { "title": "Applications", "noResults": { - "title": "", - "action": "" + "title": "Il n'y a pas encore d'apps", + "action": "Créer votre première app" } }, "create": { - "title": "", + "title": "Nouvelle app", "notification": { "success": { - "title": "", - "message": "" + "title": "Créé avec succès", + "message": "L'application a bien été créée" }, "error": { "title": "", @@ -518,17 +518,17 @@ "message": "" }, "error": { - "title": "", + "title": "Impossible d'appliquer les changements", "message": "" } } }, "delete": { - "title": "", - "message": "", + "title": "Supprimer l'app", + "message": "Êtes-vous sûr de vouloir supprimer l'app {name}?", "notification": { "success": { - "title": "", + "title": "Suppression effectuée avec succès", "message": "" }, "error": { @@ -543,23 +543,23 @@ "label": "Nom" }, "description": { - "label": "" + "label": "Description" }, "url": { - "label": "" + "label": "Url" } }, "action": { "select": { - "label": "", - "notFound": "" + "label": "Sélectionner l'app", + "notFound": "Aucune app trouvée" } } }, "integration": { "page": { "list": { - "title": "", + "title": "Intégrations", "search": "", "noResults": { "title": "" @@ -569,7 +569,7 @@ "title": "", "notification": { "success": { - "title": "", + "title": "Créé avec succès", "message": "" }, "error": { @@ -611,37 +611,37 @@ "label": "Nom" }, "url": { - "label": "" + "label": "Url" } }, "action": { - "create": "" + "create": "Nouvelle intégration" }, "testConnection": { "action": { - "create": "", - "edit": "" + "create": "Tester la connexion et créer", + "edit": "Tester la connexion et enregistrer" }, - "alertNotice": "", + "alertNotice": "Le bouton Enregistrer est activé une fois qu'une connexion est établie avec succès", "notification": { "success": { - "title": "", - "message": "" + "title": "Connexion réussie", + "message": "La connexion a été établie avec succès" }, "invalidUrl": { "title": "URL invalide", - "message": "" + "message": "L'URL est invalide." }, "secretNotDefined": { - "title": "", - "message": "" + "title": "Identifiants manquants", + "message": "Les informations d'identification n'ont pas toutes été fournies" }, "invalidCredentials": { - "title": "", - "message": "" + "title": "Informations d'identification incorrectes.", + "message": "Les informations d'identification ne sont pas valides" }, "commonError": { - "title": "", + "title": "Échec de la connexion", "message": "" }, "badRequest": { @@ -709,11 +709,11 @@ "kind": { "username": { "label": "Nom d'utilisateur", - "newLabel": "" + "newLabel": "Nouveau nom d'utilisateur" }, "apiKey": { - "label": "", - "newLabel": "" + "label": "Clé API", + "newLabel": "Nouvelle clé API" }, "password": { "label": "Mot de passe", @@ -761,12 +761,12 @@ } }, "copy": { - "label": "" + "label": "Copier l'URL" } } }, "common": { - "beta": "", + "beta": "Bêta", "error": "Erreur", "action": { "add": "Ajouter", @@ -774,7 +774,7 @@ "backToOverview": "", "create": "Créer", "edit": "Modifier", - "import": "", + "import": "Importer", "insert": "Insérer", "remove": "Supprimer", "save": "Sauvegarder", @@ -783,29 +783,29 @@ "delete": "Supprimer", "discard": "", "confirm": "Confirmer", - "continue": "", + "continue": "Continuer", "previous": "Précédent", "next": "Suivant", - "checkoutDocs": "", - "checkLogs": "", + "checkoutDocs": "Voir la documentation", + "checkLogs": "Vérifiez les logs pour plus de détails", "tryAgain": "Réessayer", - "loading": "" + "loading": "Chargement" }, - "here": "", + "here": "ici", "iconPicker": { "label": "", "header": "" }, "colorScheme": { "options": { - "light": "", - "dark": "" + "light": "Clair", + "dark": "Sombre" } }, "information": { - "min": "", - "max": "", - "days": "", + "min": "Min", + "max": "Max", + "days": "Jours", "hours": "Heures", "minutes": "Minutes" }, @@ -832,7 +832,7 @@ }, "multiText": { "placeholder": "", - "addLabel": "" + "addLabel": "Ajouter {value}" }, "select": { "placeholder": "", @@ -842,11 +842,11 @@ }, "userAvatar": { "menu": { - "switchToDarkMode": "", - "switchToLightMode": "", - "management": "", + "switchToDarkMode": "Activer le mode sombre", + "switchToLightMode": "Activer le mode clair", + "management": "Administration", "preferences": "Vos préférences", - "logout": "", + "logout": "Se déconnecter", "login": "Connexion", "homeBoard": "", "loggedOut": "", @@ -992,7 +992,7 @@ }, "widget": { "app": { - "name": "", + "name": "App", "description": "", "option": { "appId": { @@ -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": "iFrame", + "name": "", "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": "Ratio", + "columnTitle": "", "detailsTitle": "" }, "received": { @@ -1635,7 +1635,7 @@ "available": "", "tv": "Demandes de séries TV", "movie": "Demandes de films", - "total": "Total" + "total": "" }, "users": { "main": "Principaux utilisateurs", @@ -1677,7 +1677,7 @@ "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "Codecs", + "videoCodecs": "", "videoContainers": "Conteneurs", "videoResolutions": "Résolutions" }, @@ -1685,7 +1685,7 @@ "empty": "Vide", "table": { "file": "Fichier", - "eta": "ETA", + "eta": "", "progress": "Progrès", "transcode": "Transcodeur", "healthCheck": "" @@ -1892,7 +1892,7 @@ "label": "Nom" }, "isPublic": { - "label": "Public", + "label": "", "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,7 +2199,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Créateur" @@ -2315,7 +2315,7 @@ "title": "", "status": { "idle": "", - "running": "Running", + "running": "", "error": "Erreur" }, "job": { @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2380,7 +2380,7 @@ }, "tab": { "documentation": { - "label": "Documentation" + "label": "" }, "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": "Image" + "label": "" }, "ports": { - "label": "Ports" + "label": "" } }, "action": { @@ -2463,7 +2463,7 @@ } }, "stop": { - "label": "Stop", + "label": "", "notification": { "success": { "title": "", @@ -2602,7 +2602,7 @@ "tools": { "label": "Outils", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" @@ -2676,8 +2676,8 @@ "title": "", "option": { "colorScheme": { - "light": "", - "dark": "" + "light": "Activer le mode clair", + "dark": "Activer le mode sombre" }, "language": { "label": "", @@ -2749,7 +2749,7 @@ "description": "" }, "torrent": { - "name": "Torrents", + "name": "", "description": "" }, "youTube": { @@ -2769,7 +2769,7 @@ "title": "Aide", "option": { "documentation": { - "label": "Documentation" + "label": "" }, "submitIssue": { "label": "" diff --git a/packages/translation/src/lang/he.json b/packages/translation/src/lang/he.json index 47693255d..68720bb2a 100644 --- a/packages/translation/src/lang/he.json +++ b/packages/translation/src/lang/he.json @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "הטמע כל תוכן מהאינטרנט. חלק מהאתרים עשויים להגביל את הגישה.", "option": { "embedUrl": { diff --git a/packages/translation/src/lang/hr.json b/packages/translation/src/lang/hr.json index 8f74dda7b..d70a830d2 100644 --- a/packages/translation/src/lang/hr.json +++ b/packages/translation/src/lang/hr.json @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "Ugradite bilo koji sadržaj s interneta. Neke web stranice mogu ograničiti pristup.", "option": { "embedUrl": { @@ -1432,7 +1432,7 @@ "option": {} }, "video": { - "name": "Video Stream", + "name": "", "description": "Ugradi video stream ili video sa kamere i/ili web stranice", "option": { "feedUrl": { @@ -1685,7 +1685,7 @@ "empty": "Isprazni", "table": { "file": "", - "eta": "ETA", + "eta": "", "progress": "Napredak", "transcode": "", "healthCheck": "" @@ -2042,7 +2042,7 @@ "tools": { "label": "Alati", "items": { - "docker": "Docker", + "docker": "", "logs": "", "api": "", "tasks": "" @@ -2602,7 +2602,7 @@ "tools": { "label": "Alati", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/hu.json b/packages/translation/src/lang/hu.json index e1a231fa9..f1a22dd50 100644 --- a/packages/translation/src/lang/hu.json +++ b/packages/translation/src/lang/hu.json @@ -51,7 +51,7 @@ "title": "Import token megadása", "field": { "token": { - "label": "Token", + "label": "", "description": "Írja be a megjelenített import tokent az előző homarr példányból" } }, @@ -546,7 +546,7 @@ "label": "Leírás" }, "url": { - "label": "Url" + "label": "" } }, "action": { @@ -611,7 +611,7 @@ "label": "Név" }, "url": { - "label": "Url" + "label": "" } }, "action": { @@ -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": "Token" + "label": "" } } } @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2602,7 +2602,7 @@ "tools": { "label": "Eszközök", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/it.json b/packages/translation/src/lang/it.json index 9afaa5083..a15ee98c9 100644 --- a/packages/translation/src/lang/it.json +++ b/packages/translation/src/lang/it.json @@ -3,8 +3,8 @@ "step": { "start": { "title": "Ti diamo il benvenuto su Homarr", - "subtitle": "Cominciamo a configurare la tua istanza Homarr.", - "description": "Per iniziare, seleziona come desideri configurare la tua istanza Homarr.", + "subtitle": "Iniziamo con la creazione della tua istanza di Homarr.", + "description": "Per iniziare, seleziona come vuoi configurare la tua istanza di Homarr.", "action": { "scratch": "Inizia da zero", "importOldmarr": "Importa da Homarr prima della 1.0" @@ -14,8 +14,8 @@ "title": "Importa dati", "subtitle": "Puoi importare dati da un'istanza Homarr esistente.", "dropzone": { - "title": "Trascina qui il file zip o clicca per sfogliare", - "description": "Il file zip caricato verrà elaborato e potrai selezionare cosa vuoi importare" + "title": "Trascina il file zip qui o fai clic per sfogliare", + "description": "Lo zip caricato sarà elaborato e sarai in grado di selezionare quello che vuoi importare" }, "fileInfo": { "action": { @@ -24,27 +24,27 @@ }, "importSettings": { "title": "Importa impostazioni", - "description": "Configura il comportamento d'importazione" + "description": "Configura le azioni d'importazione" }, "boardSelection": { - "title": "Trovate {count} schede", - "description": "Seleziona tutte le schede con le dimensioni che desideri importare", + "title": "Trovate {count} board", + "description": "Scegli tutte le board con la dimensione che vuoi importare", "action": { "selectAll": "Seleziona tutto", "unselectAll": "Deseleziona tutto" } }, "summary": { - "title": "Importa riepilogo", + "title": "Riepilogo", "description": "Nel riepilogo sottostante puoi vedere cosa verrà importato", "action": { "import": "Conferma importazione e continua" }, "entities": { "apps": "Applicazioni", - "boards": "Boards", + "boards": "Board", "integrations": "Integrazioni", - "credentialUsers": "Utenti credenziali" + "credentialUsers": "Credential users" } }, "tokenModal": { @@ -58,18 +58,18 @@ "notification": { "error": { "title": "Token non valido", - "message": "Il token inserito non è valido" + "message": "Token inserito non valido" } } } }, "user": { "title": "Amministratore", - "subtitle": "Specifica le credenziali per l'utente amministratore.", + "subtitle": "Specifica le credenziali per l'amministratore.", "notification": { "success": { "title": "Utente creato", - "message": "Utente creato con successo" + "message": "L'utente è stato creato correttamente" }, "error": { "title": "Creazione dell'utente non riuscita" @@ -78,7 +78,7 @@ }, "group": { "title": "Gruppo esterno", - "subtitle": "Specifica il gruppo che dovrebbe essere utilizzato per gli utenti esterni.", + "subtitle": "Specifica il gruppo da utilizzare per gli utenti esterni.", "form": { "name": { "label": "Nome gruppo", @@ -93,39 +93,39 @@ "finish": { "title": "Termina configurazione", "subtitle": "È tutto pronto per iniziare!", - "description": "Hai completato con successo il processo di installazione. Ora puoi iniziare a usare Homarr. Seleziona la tua prossima azione:", + "description": "Hai completato con successo la configurazione. Ora puoi iniziare a usare Homarr. Seleziona la prossima azione:", "action": { - "goToBoard": "", - "createBoard": "", - "inviteUser": "", - "docs": "" + "goToBoard": "Vai alla board: {name}", + "createBoard": "Crea la tua prima board", + "inviteUser": "Invita altri utenti", + "docs": "Leggi la documentazione" } } }, - "backToStart": "" + "backToStart": "Torna all'inizio" }, "user": { "title": "Utenti", "name": "Utente", "page": { "login": { - "title": "", - "subtitle": "" + "title": "Accedi al tuo account", + "subtitle": "Felice di rivederti! Inserisci le tue credenziali" }, "invite": { - "title": "", - "subtitle": "", - "description": "" + "title": "Unisciti ad Homarr", + "subtitle": "Ti diamo il benvenuto su Homarr! Crea il tuo account", + "description": "Hai ricevuto un invito da {username}" }, "init": { - "title": "", - "subtitle": "" + "title": "Nuova installazione di Homarr", + "subtitle": "Crea l'utenza amministrativa iniziale" } }, "field": { "email": { "label": "E-mail", - "verified": "" + "verified": "Verificato" }, "username": { "label": "Nome utente" @@ -133,46 +133,46 @@ "password": { "label": "Password", "requirement": { - "length": "", + "length": "Include almeno 8 caratteri", "lowercase": "Include lettera minuscola", "uppercase": "Include lettera maiuscola", "number": "Include numero", - "special": "" + "special": "Include un simbolo speciale" } }, "passwordConfirm": { "label": "Conferma password" }, "previousPassword": { - "label": "" + "label": "Password precedente" }, "homeBoard": { - "label": "" + "label": "Home board" }, "pingIconsEnabled": { - "label": "" + "label": "Usa le icone per i ping" } }, "error": { - "usernameTaken": "" + "usernameTaken": "Nome utente già in uso" }, "action": { "login": { "label": "Accedi", - "labelWith": "", + "labelWith": "Accedi con {provider}", "notification": { "success": { - "title": "", - "message": "" + "title": "Accesso completato", + "message": "Hai effettuato l'accesso" }, "error": { - "title": "", - "message": "" + "title": "Login fallito", + "message": "Accesso non riuscito" } }, "forgotPassword": { - "label": "", - "description": "" + "label": "Password dimenticata?", + "description": "Un amministratore può utilizzare il seguente comando per reimpostare la password:" } }, "register": { @@ -180,81 +180,81 @@ "notification": { "success": { "title": "Account creato", - "message": "" + "message": "Accedi per continuare" }, "error": { - "title": "", - "message": "" + "title": "Creazione dell’account non riuscita", + "message": "Il tuo account non può essere creato" } } }, "create": "Crea utente", "changePassword": { - "label": "", + "label": "Cambia password", "notification": { "success": { - "message": "" + "message": "Password modificata" }, "error": { - "message": "" + "message": "Impossibile cambiare la password" } } }, "changeHomeBoard": { "notification": { "success": { - "message": "" + "message": "Home board modificata con successo" }, "error": { - "message": "" + "message": "Impossibile cambiare la home board" } } }, "changeFirstDayOfWeek": { "notification": { "success": { - "message": "" + "message": "Primo giorno della settimana cambiato" }, "error": { - "message": "" + "message": "Impossibile modificare il primo giorno della settimana" } } }, "changePingIconsEnabled": { "notification": { "success": { - "message": "" + "message": "Icone ping modificate con successo" }, "error": { - "message": "" + "message": "Impossibile attivare o disattivare le icone di ping" } } }, "manageAvatar": { "changeImage": { - "label": "", + "label": "Cambia immagine", "notification": { "success": { - "message": "" + "message": "Immagine cambiata con successo" }, "error": { - "message": "" + "message": "Impossibile cambiare immagine" }, "toLarge": { - "title": "", - "message": "" + "title": "Immagine troppo grande", + "message": "La dimensione massima dell'immagine è {size}" } } }, "removeImage": { - "label": "", - "confirm": "", + "label": "Rimuovi immagine", + "confirm": "Vuoi davvero rimuovere l'immagine?", "notification": { "success": { - "message": "" + "message": "Immagine rimossa" }, "error": { - "message": "" + "message": "Impossibile rimuovere immagine" } } } @@ -262,16 +262,16 @@ "editProfile": { "notification": { "success": { - "message": "" + "message": "Profilo aggiornato" }, "error": { - "message": "" + "message": "Impossibile aggiornare il profilo" } } }, "delete": { - "label": "", - "description": "Elimina questo utente, comprese le sue preferenze. Non eliminerà nessuna scheda. L'utente non verrà avvisato.", + "label": "Elimina utente definitivamente", + "description": "Elimina questo utente, comprese le sue preferenze. Non eliminerà nessuna board. L'utente non verrà avvisato.", "confirm": "Hai la certezza di voler eliminare l'utente {username} con le sue preferenze?" }, "select": { @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "Admin", + "title": "Amministratore", "item": { "admin": { "label": "Amministratore", @@ -305,12 +305,12 @@ "title": "Applicazioni", "item": { "create": { - "label": "Crea applicazioni", + "label": "Creare app", "description": "Consenti ai membri di creare app" }, "use-all": { - "label": "Utilizzare tutte le applicazioni", - "description": "Consenti ai membri di aggiungere qualsiasi app alle loro schede" + "label": "Utilizzare tutte le app", + "description": "Consenti ai membri di aggiungere qualsiasi app alle loro board" }, "modify-all": { "label": "Modificare tutte le app", @@ -323,14 +323,14 @@ } }, "board": { - "title": "Boards", + "title": "Board", "item": { "create": { - "label": "Creare schede", - "description": "Consenti ai membri di creare schede" + "label": "Creare board", + "description": "Consenti ai membri di creare board" }, "view-all": { - "label": "Visualizzare tutte le schede", + "label": "Visualizzare tutte le board", "description": "Consenti ai membri di visualizzare tutte le schede" }, "modify-all": { @@ -402,89 +402,89 @@ "description": "Consenti ai membri di modificare tutti i motori di ricerca" }, "full-all": { - "label": "", - "description": "" + "label": "Accesso completo al motore di ricerca", + "description": "Consenti ai membri di gestire ed eliminare qualsiasi motore di ricerca" } } } }, "memberNotice": { - "mixed": "", - "external": "" + "mixed": "Alcuni membri provengono da fornitori esterni e non possono essere gestiti qui", + "external": "Tutti i membri provengono da fornitori esterni e non possono essere gestiti qui" }, "reservedNotice": { - "message": "" + "message": "Questo gruppo è riservato all'uso del sistema e limita alcune azioni. " }, "action": { "create": { - "label": "", + "label": "Nuovo gruppo", "notification": { "success": { - "message": "" + "message": "Gruppo creato" }, "error": { - "message": "" + "message": "Impossibile creare il gruppo" } } }, "transfer": { - "label": "", - "description": "", - "confirm": "", + "label": "Trasferisci ownership", + "description": "Trasferisci l'ownership di questo gruppo a un altro utente.", + "confirm": "Hai la certezza di voler trasferire l'ownership del gruppo {name} a {username}?", "notification": { "success": { - "message": "" + "message": "Gruppo {group} trasferito a {user}" }, "error": { - "message": "" + "message": "Impossibile trasferire l'ownership" } } }, "addMember": { - "label": "" + "label": "Aggiungi membro" }, "removeMember": { - "label": "", - "confirm": "" + "label": "Rimuovi membro", + "confirm": "Hai la certezza di voler rimuovere {user} da questo gruppo?" }, "delete": { - "label": "", - "description": "", - "confirm": "", + "label": "Elimina gruppo", + "description": "Una volta eliminato un gruppo, non si può tornare indietro. Si prega di essere certi.", + "confirm": "Hai la certezza di voler eliminare il gruppo {name}?", "notification": { "success": { - "message": "" + "message": "Gruppo {name} eliminato" }, "error": { - "message": "" + "message": "Impossibile eliminare il gruppo {name}" } } }, "changePermissions": { "notification": { "success": { - "title": "", - "message": "" + "title": "Permessi salvati", + "message": "I permessi sono stati salvati" }, "error": { - "title": "", - "message": "" + "title": "Permessi non salvati", + "message": "I permessi non sono stati salvati" } } }, "update": { "notification": { "success": { - "message": "" + "message": "Il gruppo {name} è stato salvato" }, "error": { - "message": "" + "message": "Impossibile salvare il gruppo {name}" } } }, "select": { - "label": "", - "notFound": "" + "label": "Seleziona gruppo", + "notFound": "Nessun gruppo trovato" } } }, @@ -493,47 +493,47 @@ "list": { "title": "Applicazioni", "noResults": { - "title": "", - "action": "" + "title": "Non ci sono ancora app", + "action": "Crea la tua prima app" } }, "create": { - "title": "", + "title": "Nuova app", "notification": { "success": { - "title": "", - "message": "" + "title": "Creazione riuscita", + "message": "App creata" }, "error": { - "title": "", - "message": "" + "title": "Creazione fallita", + "message": "Impossibile creare l'app" } } }, "edit": { - "title": "", + "title": "Modifica app", "notification": { "success": { - "title": "", - "message": "" + "title": "Modifiche applicate", + "message": "App salvata" }, "error": { - "title": "", - "message": "" + "title": "Impossibile applicare le modifiche", + "message": "Impossibile salvare l'app" } } }, "delete": { - "title": "", - "message": "", + "title": "Elimina app", + "message": "Hai la certezza di voler eliminare l'app {name}?", "notification": { "success": { - "title": "", - "message": "" + "title": "Eliminato", + "message": "App eliminata" }, "error": { - "title": "", - "message": "" + "title": "Eliminazione non riuscita", + "message": "Impossibile eliminare l'app" } } } @@ -543,15 +543,15 @@ "label": "Nome" }, "description": { - "label": "" + "label": "Descrizione" }, "url": { - "label": "" + "label": "Url" } }, "action": { "select": { - "label": "", + "label": "Seleziona App", "notFound": "Nessuna app trovata" } } @@ -569,11 +569,11 @@ "title": "Nuova integrazione di {name}", "notification": { "success": { - "title": "", + "title": "Creazione riuscita", "message": "L'integrazione è stata creata con successo" }, "error": { - "title": "", + "title": "Creazione fallita", "message": "Non è stato possibile creare l'integrazione" } } @@ -582,11 +582,11 @@ "title": "Modifica integrazione {name}", "notification": { "success": { - "title": "", + "title": "Modifiche applicate", "message": "L'integrazione è stata salvata correttamente" }, "error": { - "title": "", + "title": "Impossibile applicare le modifiche", "message": "Non è stato possibile salvare l'integrazione" } } @@ -596,11 +596,11 @@ "message": "Hai la certezza di voler eliminare l'integrazione {name}?", "notification": { "success": { - "title": "", + "title": "Eliminato", "message": "L'integrazione è stata eliminata correttamente" }, "error": { - "title": "", + "title": "Eliminazione non riuscita", "message": "Impossibile eliminare l'integrazione" } } @@ -611,7 +611,7 @@ "label": "Nome" }, "url": { - "label": "" + "label": "Url" } }, "action": { @@ -694,8 +694,8 @@ "title": "Secrets", "lastUpdated": "Ultimo aggiornamento {date}", "notSet": { - "label": "", - "tooltip": "" + "label": "Nessun valore impostato", + "tooltip": "Il secret richiesto non è stato ancora impostato" }, "secureNotice": "", "reset": { @@ -716,7 +716,7 @@ "newLabel": "" }, "password": { - "label": "Password", + "label": "", "newLabel": "Nuova password" } } @@ -853,7 +853,7 @@ "updateAvailable": "" } }, - "dangerZone": "Danger zone", + "dangerZone": "", "noResults": "Nessun risultato trovato", "preview": { "show": "", @@ -861,12 +861,12 @@ }, "zod": { "errors": { - "default": "Questo campo non è valido", - "required": "Questo campo è obbligatorio", + "default": "Campo non valido", + "required": "Campo obbligatorio", "string": { "startsWith": "Questo campo deve iniziare con {startsWith}", "endsWith": "Questo campo deve terminare con {endsWith}", - "includes": "Questo campo deve includere {includes}", + "includes": "Questo campo deve contenere {includes}", "invalidEmail": "" }, "tooSmall": { @@ -1026,7 +1026,7 @@ "label": "" }, "layout": { - "label": "Layout", + "label": "", "option": { "row": { "label": "Orizzontale" @@ -1050,7 +1050,7 @@ "description": "", "option": { "layout": { - "label": "Layout", + "label": "", "option": { "row": { "label": "Orizzontale" @@ -1083,7 +1083,7 @@ "description": "Controlla PiHole o AdGuard dalla tua dashboard", "option": { "layout": { - "label": "Layout", + "label": "", "option": { "row": { "label": "Orizzontale" @@ -1168,9 +1168,9 @@ "controls": { "bold": "Grassetto", "italic": "Corsivo", - "strikethrough": "Testo barrato", + "strikethrough": "Barrato", "underline": "Sottolineato", - "colorText": "Testo a colori", + "colorText": "Colore testo", "colorHighlight": "Testo evidenziato colorato", "code": "Codice", "clear": "Rimuovi formattazione", @@ -1180,15 +1180,15 @@ "horizontalLine": "Linea orizzontale", "bulletList": "Elenco puntato", "orderedList": "Elenco ordinato", - "checkList": "Elenco di controllo", + "checkList": "Checklist", "increaseIndent": "Aumenta indentatura", "decreaseIndent": "Diminuisci indentatura", - "link": "Link", + "link": "", "unlink": "Elimina link", "image": "Incorpora immagine", "addTable": "Aggiungi tabella", "deleteTable": "Elimina tabella", - "colorCell": "Colore cella", + "colorCell": "Colora Cella", "mergeCell": "Attiva/disattiva unione celle", "addColumnLeft": "Aggiungi colonna prima", "addColumnRight": "Aggiungi colonna dopo", @@ -1199,7 +1199,7 @@ }, "align": { "left": "Sinistra", - "center": "Centra", + "center": "Centro", "right": "Destra" }, "popover": { @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "Incorpora qualsiasi contenuto da Internet. Alcuni siti web possono limitare l'accesso.", "option": { "embedUrl": { @@ -1272,7 +1272,7 @@ "description": "", "option": { "displayName": { - "label": "Visualizza nome" + "label": "Nome visualizzato" }, "automationId": { "label": "ID automazione" @@ -1304,7 +1304,7 @@ }, "weather": { "name": "Meteo", - "description": "Mostra le informazioni meteo attuali di una località.", + "description": "Mostra le attuali informazioni meteo di un luogo.", "option": { "isFormatFahrenheit": { "label": "" @@ -1336,7 +1336,7 @@ "rain": "Pioggia", "freezingRain": "Pioggia gelata", "snowFall": "Neve", - "snowGrains": "Neve tonda", + "snowGrains": "Grandine", "rainShowers": "Rovesci", "snowShowers": "Forti nevicate", "thunderstorm": "Temporale", @@ -1345,21 +1345,21 @@ } }, "indexerManager": { - "name": "Stato del gestore dell'indicizzatore", + "name": "Stato dell'index manager", "description": "", "option": { "openIndexerSiteInNewTab": { "label": "" } }, - "title": "Gestore dell'indicizzatore", - "testAll": "Prova Tutto", + "title": "Index manager", + "testAll": "Prova tutto", "error": { "internalServerError": "" } }, "healthMonitoring": { - "name": "Monitoraggio dello stato del sistema", + "name": "Monitoraggio Salute di Sistema", "description": "Visualizza informazioni sulla salute e stato dei tuoi sistemi.", "option": { "fahrenheit": { @@ -1432,8 +1432,8 @@ "option": {} }, "video": { - "name": "Flusso Video", - "description": "Incorpora un flusso video o un video da una videocamera o da un sito web", + "name": "Stream Video", + "description": "Incorpora uno stream video o un video da una videocamera o da un sito web", "option": { "feedUrl": { "label": "URL del feed" @@ -1511,7 +1511,7 @@ "detailsTitle": "" }, "downSpeed": { - "columnTitle": "Down", + "columnTitle": "", "detailsTitle": "Velocità Di Download" }, "index": { @@ -1532,7 +1532,7 @@ "detailsTitle": "" }, "ratio": { - "columnTitle": "Ratio", + "columnTitle": "", "detailsTitle": "" }, "received": { @@ -1560,7 +1560,7 @@ "detailsTitle": "" }, "upSpeed": { - "columnTitle": "Up", + "columnTitle": "", "detailsTitle": "" } }, @@ -1601,7 +1601,7 @@ }, "mediaRequests-requestList": { "name": "", - "description": "Vedi un elenco di tutte le richieste multimediali dalla tua istanza Overseerr o Jellyseerr", + "description": "Visualizza un elenco di tutte le richieste media dalla tua istanza Overseerr o Jellyseerr", "option": { "linksTargetNewTab": { "label": "Apri i link in nuova scheda" @@ -1623,11 +1623,11 @@ }, "mediaRequests-requestStats": { "name": "", - "description": "Statistiche sulle richieste multimediali", + "description": "Statistiche sulle richieste dei media", "option": {}, "titles": { "stats": { - "main": "Statistiche Multimediali", + "main": "Statistiche Media", "approved": "Già approvato", "pending": "Approvazioni In Attesa", "processing": "", @@ -1638,7 +1638,7 @@ "total": "Totale" }, "users": { - "main": "Utenti Top", + "main": "Top Utenti", "requests": "" } } @@ -1655,7 +1655,7 @@ } }, "tab": { - "workers": "Worker", + "workers": "Workers", "queue": "Coda", "statistics": "Statistiche" }, @@ -1664,39 +1664,39 @@ "title": "", "queued": "In coda", "status": { - "healthy": "Sano", - "unhealthy": "Non integro" + "healthy": "Normale funzionamento", + "unhealthy": "Compromesso" } }, "panel": { "statistics": { "empty": "Vuoto", - "transcodes": "Transcodes", + "transcodes": "", "transcodesCount": "", "healthChecksCount": "", "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "Codecs", - "videoContainers": "Containers", + "videoCodecs": "", + "videoContainers": "", "videoResolutions": "Risoluzioni" }, "workers": { "empty": "Vuoto", "table": { - "file": "File", - "eta": "ETA", + "file": "", + "eta": "", "progress": "Avanzamento", - "transcode": "Transcode", + "transcode": "", "healthCheck": "" } }, "queue": { "empty": "Vuoto", "table": { - "file": "File", + "file": "", "size": "Dimensione", - "transcode": "Transcode", + "transcode": "", "healthCheck": "" } } @@ -1822,7 +1822,7 @@ "label": "" }, "backgroundImageAttachment": { - "label": "Allegato immagine di sfondo", + "label": "Immagine di background", "option": { "fixed": { "label": "", @@ -1856,7 +1856,7 @@ } }, "backgroundImageSize": { - "label": "Dimensioni dell'immagine di sfondo", + "label": "Dimensioni dell'immagine di background", "option": { "cover": { "label": "", @@ -1907,10 +1907,10 @@ "unrecognizedLink": "" }, "layout": { - "title": "Layout" + "title": "" }, "background": { - "title": "Sfondo" + "title": "Background" }, "color": { "title": "" @@ -1935,7 +1935,7 @@ } }, "dangerZone": { - "title": "Danger zone", + "title": "", "action": { "rename": { "label": "", @@ -2025,8 +2025,8 @@ }, "navbar": { "items": { - "home": "Home", - "boards": "Boards", + "home": "", + "boards": "", "apps": "Applicazioni", "integrations": "Integrazioni", "searchEngies": "Motori di ricerca", @@ -2042,9 +2042,9 @@ "tools": { "label": "Strumenti", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2054,7 +2054,7 @@ "items": { "documentation": "Documentazione", "submitIssue": "", - "discord": "Discord della community", + "discord": "Community Discord", "sourceCode": "" } }, @@ -2064,7 +2064,7 @@ "page": { "home": { "statistic": { - "board": "Boards", + "board": "", "user": "Utenti", "invite": "Inviti", "integration": "Integrazioni", @@ -2072,7 +2072,7 @@ "group": "Gruppi" }, "statisticLabel": { - "boards": "Boards", + "boards": "", "resources": "", "authentication": "", "authorization": "" @@ -2093,7 +2093,7 @@ "setHomeBoard": { "label": "", "badge": { - "label": "Home", + "label": "", "tooltip": "" } }, @@ -2139,7 +2139,7 @@ "title": "Sicurezza" }, "board": { - "title": "Boards" + "title": "" } }, "list": { @@ -2184,7 +2184,7 @@ "action": { "new": { "title": "", - "description": "Dopo la scadenza, un invito non sarà più valido e il destinatario dell'invito non potrà creare un account." + "description": "Una volta scaduto, un invito non sarà più valido e il destinatario non potrà creare un account." }, "copy": { "title": "", @@ -2194,12 +2194,12 @@ }, "delete": { "title": "Elimina invito", - "description": "Siete sicuri di voler eliminare questo invito? Gli utenti con questo link non potranno più creare un account utilizzando tale link." + "description": "Hai la certezza di voler eliminare questo invito? Gli utenti con questo link non potranno più creare un account utilizzandolo." } }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Creatore" @@ -2208,7 +2208,7 @@ "label": "Data di scadenza" }, "token": { - "label": "Token" + "label": "" } } } @@ -2286,7 +2286,7 @@ } }, "board": { - "title": "Boards", + "title": "", "homeBoard": { "label": "", "description": "" @@ -2332,7 +2332,7 @@ "label": "" }, "mediaServer": { - "label": "Server multimediale" + "label": "Media Server" }, "mediaOrganizer": { "label": "" @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2419,7 +2419,7 @@ } }, "docker": { - "title": "Containers", + "title": "", "table": { "updated": "", "search": "", @@ -2435,7 +2435,7 @@ "created": "Creato", "running": "In esecuzione", "paused": "In pausa", - "restarting": "Riavvio", + "restarting": "Riavvio in corso", "exited": "", "removing": "Rimozione in corso", "dead": "" @@ -2552,7 +2552,7 @@ "manage": { "label": "Gestisci", "boards": { - "label": "Boards" + "label": "" }, "integrations": { "label": "Integrazioni", @@ -2591,7 +2591,7 @@ }, "general": "Generale", "security": "Sicurezza", - "board": "Boards", + "board": "", "groups": { "label": "Gruppi" }, @@ -2602,7 +2602,7 @@ "tools": { "label": "Strumenti", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" @@ -2643,7 +2643,7 @@ } }, "board": { - "title": "Boards", + "title": "", "children": { "action": { "open": { @@ -2749,7 +2749,7 @@ "description": "" }, "torrent": { - "name": "Torrents", + "name": "", "description": "" }, "youTube": { @@ -2775,7 +2775,7 @@ "label": "" }, "discord": { - "label": "Discord della community" + "label": "Community Discord" } } } diff --git a/packages/translation/src/lang/ja.json b/packages/translation/src/lang/ja.json index 6d52f5b76..87d73077f 100644 --- a/packages/translation/src/lang/ja.json +++ b/packages/translation/src/lang/ja.json @@ -1685,7 +1685,7 @@ "empty": "空", "table": { "file": "ファイル", - "eta": "ETA", + "eta": "", "progress": "進捗状況", "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": "ID" + "label": "" }, "creator": { "label": "クリエイター" @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2602,7 +2602,7 @@ "tools": { "label": "ツール", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" @@ -2612,7 +2612,7 @@ "label": "設定" }, "about": { - "label": "About" + "label": "" } } }, @@ -2837,7 +2837,7 @@ "label": "" }, "about": { - "label": "About" + "label": "" }, "homeBoard": { "label": "" diff --git a/packages/translation/src/lang/ko.json b/packages/translation/src/lang/ko.json index aafeac7bd..657a35c9c 100644 --- a/packages/translation/src/lang/ko.json +++ b/packages/translation/src/lang/ko.json @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "인터넷에서 콘텐츠를 퍼옵니다. 일부 웹사이트는 액세스를 제한할 수 있습니다.", "option": { "embedUrl": { @@ -1783,9 +1783,9 @@ "label": "", "description": "", "option": { - "sm": "Small", - "md": "Medium", - "lg": "Large" + "sm": "", + "md": "", + "lg": "" } }, "sidebarBehavior": { @@ -2042,7 +2042,7 @@ "tools": { "label": "도구", "items": { - "docker": "Docker", + "docker": "", "logs": "", "api": "", "tasks": "" @@ -2199,7 +2199,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "크리에이터" @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2602,7 +2602,7 @@ "tools": { "label": "도구", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/lt.json b/packages/translation/src/lang/lt.json index 610fb1440..2d947019a 100644 --- a/packages/translation/src/lang/lt.json +++ b/packages/translation/src/lang/lt.json @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "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": "ID" + "label": "" }, "creator": { "label": "Kūrėjas" @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2602,7 +2602,7 @@ "tools": { "label": "Įrankiai", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/lv.json b/packages/translation/src/lang/lv.json index c78ab5df2..6cf025fdc 100644 --- a/packages/translation/src/lang/lv.json +++ b/packages/translation/src/lang/lv.json @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "Iegult jebkuru saturu no interneta. Dažas vietnes var ierobežot piekļuvi.", "option": { "embedUrl": { @@ -1528,7 +1528,7 @@ "columnTitle": "" }, "progress": { - "columnTitle": "Progress", + "columnTitle": "", "detailsTitle": "" }, "ratio": { @@ -1685,8 +1685,8 @@ "empty": "Tukšs", "table": { "file": "", - "eta": "ETA", - "progress": "Progress", + "eta": "", + "progress": "", "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": "ID" + "label": "" }, "creator": { "label": "Izveidotājs" @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2445,7 +2445,7 @@ "label": "Attēls" }, "ports": { - "label": "Ports" + "label": "" } }, "action": { @@ -2602,7 +2602,7 @@ "tools": { "label": "Rīki", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/nl.json b/packages/translation/src/lang/nl.json index 70db00346..89aa38b26 100644 --- a/packages/translation/src/lang/nl.json +++ b/packages/translation/src/lang/nl.json @@ -136,7 +136,7 @@ "length": "Bevat ten minste 8 tekens", "lowercase": "Inclusief kleine letter", "uppercase": "Inclusief hoofdletter", - "number": "Inclusief aantal", + "number": "Inclusief getal", "special": "Inclusief speciaal teken" } }, @@ -773,7 +773,7 @@ "apply": "Toepassen", "backToOverview": "Terug naar overzicht", "create": "Aanmaken", - "edit": "Wijzigen", + "edit": "Bewerken", "import": "Importeren", "insert": "Invoegen", "remove": "Verwijderen", @@ -788,7 +788,7 @@ "next": "Volgende", "checkoutDocs": "De documentatie bekijken", "checkLogs": "Controleer logs voor meer details", - "tryAgain": "Probeer het opnieuw", + "tryAgain": "Probeer opnieuw", "loading": "Laden" }, "here": "hier", @@ -803,8 +803,8 @@ } }, "information": { - "min": "Min", - "max": "Max", + "min": "Min.", + "max": "Max.", "days": "Dagen", "hours": "Uren", "minutes": "Minuten" @@ -999,7 +999,7 @@ "label": "App kiezen" }, "openInNewTab": { - "label": "Open in nieuw tabblad" + "label": "In nieuw tabblad openen" }, "showTitle": { "label": "App naam weergeven" @@ -1026,7 +1026,7 @@ "label": "Titel" }, "layout": { - "label": "Indeling", + "label": "Lay-out", "option": { "row": { "label": "Horizontaal" @@ -1050,7 +1050,7 @@ "description": "Toont het overzicht van je DNS-hole", "option": { "layout": { - "label": "Indeling", + "label": "Lay-out", "option": { "row": { "label": "Horizontaal" @@ -1074,7 +1074,7 @@ "data": { "adsBlockedToday": "Vandaag geblokkeerd", "adsBlockedTodayPercentage": "Vandaag geblokkeerd", - "dnsQueriesToday": "Queries vandaag", + "dnsQueriesToday": "Aanvragen vandaag", "domainsBeingBlocked": "Domeinen op blokkadelijst" } }, @@ -1083,7 +1083,7 @@ "description": "Bedien PiHole of AdGuard vanaf je dashboard", "option": { "layout": { - "label": "Indeling", + "label": "Lay-out", "option": { "row": { "label": "Horizontaal" @@ -1156,7 +1156,7 @@ "description": "Een eenvoudige notitie widget die markdown ondersteunt", "option": { "showToolbar": { - "label": "Toon de werkbalk om je te helpen markdown te schrijven" + "label": "De werkbalk weergeven om je te helpen markdown te schrijven" }, "allowReadOnlyCheck": { "label": "Controle in alleen-lezen modus toestaan" @@ -1170,7 +1170,7 @@ "italic": "Schuingedrukt", "strikethrough": "Doorgestreept", "underline": "Onderstreept", - "colorText": "Kleur tekst", + "colorText": "Tekstkleur", "colorHighlight": "Gekleurde tekst markeren", "code": "Code", "clear": "Opmaak wissen", @@ -1179,19 +1179,19 @@ "blockquote": "Blokquote", "horizontalLine": "Horizontale lijn", "bulletList": "Opsommingslijst", - "orderedList": "Geordende lijst", + "orderedList": "Gerangschikte lijst", "checkList": "Controlelijst", - "increaseIndent": "Inspringen vergroten", + "increaseIndent": "Inspringing vergroten", "decreaseIndent": "Inspringen verminderen", "link": "Link", "unlink": "Link verwijderen", "image": "Afbeelding insluiten", "addTable": "Tabel toevoegen", "deleteTable": "Tabel verwijderen", - "colorCell": "Kleur cel", - "mergeCell": "Cellen samenvoegen togglen", - "addColumnLeft": "Kolom toevoegen vóór", - "addColumnRight": "Kolom toevoegen ná", + "colorCell": "Celkleur", + "mergeCell": "Cellen samenvoegen schakelen", + "addColumnLeft": "Kolom ervoor toevoegen", + "addColumnRight": "Kolom erna toevoegen", "deleteColumn": "Kolom verwijderen", "addRowTop": "Rij toevoegen vóór", "addRowBelow": "Rij toevoegen ná", @@ -1214,7 +1214,7 @@ }, "iframe": { "name": "iFrame", - "description": "Insluiten van alle inhoud van het internet. Sommige websites kunnen de toegang beperken.", + "description": "Elke inhoud van het internet insluiten. Sommige websites kunnen de toegang beperken.", "option": { "embedUrl": { "label": "URL insluiten" @@ -1254,7 +1254,7 @@ "description": "Status van een entiteit weergeven en optioneel omschakelen", "option": { "entityId": { - "label": "Entiteit-ID" + "label": "Entiteits-ID" }, "displayName": { "label": "Weergavenaam" @@ -1287,7 +1287,7 @@ "description": "Gebeurtenissen van je integraties weergeven in een kalenderweergave binnen een bepaalde relatieve tijdsperiode", "option": { "releaseType": { - "label": "Radarr release type", + "label": "Radarr uitgavetype", "options": { "inCinemas": "In bioscopen", "digitalRelease": "Digitale uitgave", @@ -1310,7 +1310,7 @@ "label": "Temperatuur in fahrenheit" }, "location": { - "label": "Weerslocatie" + "label": "Weerlocatie" }, "showCity": { "label": "Stad weergeven" @@ -1328,7 +1328,7 @@ } }, "kind": { - "clear": "Helder", + "clear": "Wissen", "mainlyClear": "Overwegend helder", "fog": "Mist", "drizzle": "Motregen", @@ -1345,14 +1345,14 @@ } }, "indexerManager": { - "name": "Indexeer beheerder status", + "name": "Indexeringsbeheerder status", "description": "Status van je indexers", "option": { "openIndexerSiteInNewTab": { "label": "Indexersite in nieuw tabblad openen" } }, - "title": "Indexeer beheerder", + "title": "Indexeringsbeheerder", "testAll": "Alles testen", "error": { "internalServerError": "Indexersstatus ophalen mislukt" @@ -1381,7 +1381,7 @@ "memory": "Geheugen: {memory}GiB", "memoryAvailable": "Beschikbaar: {memoryAvailable}GiB ({percent}%)", "version": "Versie: {version}", - "uptime": "", + "uptime": "Uptime: {days} Dagen, {hours} Uren, {minutes} Minuten", "loadAverage": "Gemiddelde belasting:", "minute": "1 minuut", "minutes": "{count} minuten", @@ -1433,10 +1433,10 @@ }, "video": { "name": "Video stream", - "description": "Een videostream of video van een camera of een website insluiten", + "description": "Een videostream of video van een camera of website insluiten", "option": { "feedUrl": { - "label": "Feed URL" + "label": "Feed-URL" }, "hasAutoPlay": { "label": "Automatisch afspelen", @@ -1511,7 +1511,7 @@ "detailsTitle": "Categorieën (of extra informatie)" }, "downSpeed": { - "columnTitle": "Down", + "columnTitle": "Omlaag", "detailsTitle": "Downloadsnelheid" }, "index": { @@ -1560,12 +1560,12 @@ "detailsTitle": "Client type downloaden" }, "upSpeed": { - "columnTitle": "Up", + "columnTitle": "Omhoog", "detailsTitle": "Uploadsnelheid" } }, "states": { - "downloading": "Bezig met downloaden", + "downloading": "Downloaden", "queued": "In wachtrij", "paused": "Gepauzeerd", "completed": "Voltooid", @@ -1601,7 +1601,7 @@ }, "mediaRequests-requestList": { "name": "Media-aanvragen lijst", - "description": "Bekijk een lijst met alle mediaverzoeken van je Overseerr of Jellyseerr instantie", + "description": "Bekijk een lijst met alle media-aanvragen van je Overseerr of Jellyseerr instantie", "option": { "linksTargetNewTab": { "label": "Links in nieuw tabblad openen" @@ -1623,18 +1623,18 @@ }, "mediaRequests-requestStats": { "name": "Media-aanvragen statistieken", - "description": "Statistieken over je mediaverzoeken", + "description": "Statistieken over je media-aanvragen", "option": {}, "titles": { "stats": { - "main": "Media statistieken", + "main": "Mediastatistieken", "approved": "Reeds goedgekeurd", "pending": "In afwachting van goedkeuring", "processing": "Wordt verwerkt", "declined": "Reeds geweigerd", "available": "Reeds beschikbaar", - "tv": "TV verzoeken", - "movie": "Film verzoeken", + "tv": "TV aanvragen", + "movie": "Film aanvragen", "total": "Totaal" }, "users": { @@ -1665,7 +1665,7 @@ "queued": "In wachtrij", "status": { "healthy": "Gezond", - "unhealthy": "Ongezond" + "unhealthy": "Niet-gezond" } }, "panel": { @@ -1784,7 +1784,7 @@ "description": "In versies vóór 1.0 bestonden drie verschillende modi, zodat je het aantal kolommen voor elke schermgrootte kon kiezen.", "option": { "sm": "Klein", - "md": "Middel", + "md": "Gemiddeld", "lg": "Groot" } }, @@ -1907,7 +1907,7 @@ "unrecognizedLink": "De opgegeven link wordt niet herkend en geeft geen voorbeeld, maar werkt misschien nog wel." }, "layout": { - "title": "Indeling" + "title": "Lay-out" }, "background": { "title": "Achtergrond" @@ -2293,7 +2293,7 @@ } }, "appearance": { - "title": "Opmaak", + "title": "Weergave", "defaultColorScheme": { "label": "Standaard kleurenschema", "options": { @@ -2332,7 +2332,7 @@ "label": "Pings" }, "mediaServer": { - "label": "Media server" + "label": "Mediaserver" }, "mediaOrganizer": { "label": "Media organisatoren" @@ -2435,9 +2435,9 @@ "created": "Aangemaakt", "running": "Actief", "paused": "Gepauzeerd", - "restarting": "Bezig met herstarten", + "restarting": "Herstarten", "exited": "Verlaten", - "removing": "Bezig met verwijderen", + "removing": "Verwijderen", "dead": "Dood" } }, @@ -2463,7 +2463,7 @@ } }, "stop": { - "label": "Stop", + "label": "Stoppen", "notification": { "success": { "title": "Containers gestopt", @@ -2476,7 +2476,7 @@ } }, "restart": { - "label": "Herstart", + "label": "Herstarten", "notification": { "success": { "title": "Containers herstart", @@ -2557,7 +2557,7 @@ "integrations": { "label": "Integraties", "edit": { - "label": "Wijzigen" + "label": "Bewerken" }, "new": { "label": "Nieuw" @@ -2569,7 +2569,7 @@ "label": "Nieuw" }, "edit": { - "label": "Wijzigen" + "label": "Bewerken" } }, "medias": { @@ -2581,7 +2581,7 @@ "label": "Nieuw" }, "edit": { - "label": "Wijzigen" + "label": "Bewerken" } }, "users": { @@ -2749,7 +2749,7 @@ "description": "Zoeken op het web met DuckDuckGo" }, "torrent": { - "name": "Torrents", + "name": "Verouderde torrents weergeven", "description": "Zoeken naar torrents op torrentdownloads.pro" }, "youTube": { diff --git a/packages/translation/src/lang/no.json b/packages/translation/src/lang/no.json index 411758aae..c9fde5e3e 100644 --- a/packages/translation/src/lang/no.json +++ b/packages/translation/src/lang/no.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "Token", + "label": "", "description": "" } }, @@ -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": "iFrame", + "name": "", "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": "Feed URL" + "label": "" }, "hasAutoPlay": { "label": "Autospill", @@ -1784,7 +1784,7 @@ "description": "", "option": { "sm": "Liten", - "md": "Medium", + "md": "", "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": "ID" + "label": "" }, "creator": { "label": "Skaper" @@ -2208,7 +2208,7 @@ "label": "Utløpsdato" }, "token": { - "label": "Token" + "label": "" } } } @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2442,7 +2442,7 @@ } }, "containerImage": { - "label": "Image" + "label": "" }, "ports": { "label": "Porter" @@ -2450,7 +2450,7 @@ }, "action": { "start": { - "label": "Start", + "label": "", "notification": { "success": { "title": "", @@ -2602,7 +2602,7 @@ "tools": { "label": "Verktøy", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/pl.json b/packages/translation/src/lang/pl.json index c2a97a1d1..d4f63985f 100644 --- a/packages/translation/src/lang/pl.json +++ b/packages/translation/src/lang/pl.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "Token", + "label": "", "description": "" } }, @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "Admin", + "title": "", "item": { "admin": { "label": "", @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "Osadzaj dowolne treści z internetu. Niektóre strony internetowe mogą ograniczać dostęp.", "option": { "embedUrl": { @@ -1685,7 +1685,7 @@ "empty": "Puste", "table": { "file": "", - "eta": "ETA", + "eta": "", "progress": "Postęp", "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": "ID" + "label": "" }, "creator": { "label": "Twórca" @@ -2208,7 +2208,7 @@ "label": "Wygasa" }, "token": { - "label": "Token" + "label": "" } } } @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2602,7 +2602,7 @@ "tools": { "label": "Narzędzia", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/pt.json b/packages/translation/src/lang/pt.json index 54b3a9fd2..3186e11e2 100644 --- a/packages/translation/src/lang/pt.json +++ b/packages/translation/src/lang/pt.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "Token", + "label": "", "description": "" } }, @@ -1026,13 +1026,13 @@ "label": "" }, "layout": { - "label": "Layout", + "label": "", "option": { "row": { - "label": "Horizontal" + "label": "" }, "column": { - "label": "Vertical" + "label": "" }, "grid": { "label": "" @@ -1050,13 +1050,13 @@ "description": "", "option": { "layout": { - "label": "Layout", + "label": "", "option": { "row": { - "label": "Horizontal" + "label": "" }, "column": { - "label": "Vertical" + "label": "" }, "grid": { "label": "" @@ -1083,13 +1083,13 @@ "description": "Controle o PiHole ou o AdGuard em seu painel de controle", "option": { "layout": { - "label": "Layout", + "label": "", "option": { "row": { - "label": "Horizontal" + "label": "" }, "column": { - "label": "Vertical" + "label": "" }, "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": "iFrame", + "name": "", "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", @@ -1677,7 +1677,7 @@ "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "Codecs", + "videoCodecs": "", "videoContainers": "", "videoResolutions": "" }, @@ -1907,7 +1907,7 @@ "unrecognizedLink": "" }, "layout": { - "title": "Layout" + "title": "" }, "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": "ID" + "label": "" }, "creator": { "label": "Criador" @@ -2208,7 +2208,7 @@ "label": "Data de expiração" }, "token": { - "label": "Token" + "label": "" } } } @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2602,7 +2602,7 @@ "tools": { "label": "Ferramentas", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/ro.json b/packages/translation/src/lang/ro.json index cee8e2520..2da2ae314 100644 --- a/packages/translation/src/lang/ro.json +++ b/packages/translation/src/lang/ro.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "Token", + "label": "", "description": "" } }, @@ -733,7 +733,7 @@ "field": { "name": "Nume", "size": "Mărime", - "creator": "Creator" + "creator": "" }, "action": { "upload": { @@ -1032,7 +1032,7 @@ "label": "Orizontal" }, "column": { - "label": "Vertical" + "label": "" }, "grid": { "label": "" @@ -1056,7 +1056,7 @@ "label": "Orizontal" }, "column": { - "label": "Vertical" + "label": "" }, "grid": { "label": "" @@ -1089,7 +1089,7 @@ "label": "Orizontal" }, "column": { - "label": "Vertical" + "label": "" }, "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": "iFrame", + "name": "", "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": "Calendar", + "name": "", "description": "", "option": { "releaseType": { @@ -1635,7 +1635,7 @@ "available": "", "tv": "Cereri seriale TV", "movie": "Cereri filme", - "total": "Total" + "total": "" }, "users": { "main": "Top utilizatori", @@ -1892,7 +1892,7 @@ "label": "Nume" }, "isPublic": { - "label": "Public", + "label": "", "description": "" } }, @@ -1903,7 +1903,7 @@ "title": "", "section": { "general": { - "title": "General", + "title": "", "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": "General", + "title": "", "item": { "language": "", "board": "", @@ -2199,16 +2199,16 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { - "label": "Creator" + "label": "" }, "expirationDate": { "label": "Data expirării" }, "token": { - "label": "Token" + "label": "" } } } @@ -2217,7 +2217,7 @@ "back": "", "setting": { "general": { - "title": "General", + "title": "", "owner": "Proprietar", "ownerOfGroup": "", "ownerOfGroupDeleted": "" @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "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": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/ru.json b/packages/translation/src/lang/ru.json index 712631bc3..a0b43d8f8 100644 --- a/packages/translation/src/lang/ru.json +++ b/packages/translation/src/lang/ru.json @@ -14,7 +14,7 @@ "title": "Импорт данных", "subtitle": "Вы можете импортировать данные из существующего экземпляра Homarr.", "dropzone": { - "title": "Перетащите ZIP-файл сюда или нажмите для выбора", + "title": "Перетащите ZIP-файл сюда или нажмите для его выбора", "description": "Загруженный ZIP-файл будет обработан, и вы сможете выбрать, что хотите импортировать" }, "fileInfo": { @@ -44,7 +44,7 @@ "apps": "Приложения", "boards": "Панели", "integrations": "Интеграции", - "credentialUsers": "Пользователи учетных данных" + "credentialUsers": "Учетные данные пользователя" } }, "tokenModal": { @@ -276,7 +276,7 @@ }, "select": { "label": "Выбрать пользователя", - "notFound": "Пользователи не найдены" + "notFound": "Пользователь не найден" }, "transfer": { "label": "Выбрать нового владельца" @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "Администратор", + "title": "Администрирование", "item": { "admin": { "label": "Администратор", @@ -372,12 +372,12 @@ "description": "Разрешить участникам загружать медиафайлы" }, "view-all": { - "label": "Просмотр всех медиафайлов", - "description": "Разрешить участникам просматривать все медиафайлы" + "label": "Полный доступ к медиафайлам", + "description": "Разрешить участникам управлять и удалять любые медиафайлы" }, "full-all": { "label": "Полный доступ к медиафайлам", - "description": "Разрешить участникам управлять и удалять любые медиафайлы" + "description": "Разрешить участникам управлять и удалять любыми медиафайлами" } } }, @@ -385,8 +385,8 @@ "title": "Прочее", "item": { "view-logs": { - "label": "Просмотр журналов", - "description": "Разрешить участникам просматривать журналы" + "label": "Просмотр логов", + "description": "Разрешить участникам просматривать логи" } } }, @@ -409,8 +409,8 @@ } }, "memberNotice": { - "mixed": "Некоторые участники используют внешние системы аутентификации и не могут управляться здесь", - "external": "Все участники используют внешние системы аутентификации и не могут управляться здесь" + "mixed": "Некоторыми участниками управляет внешняя система аутентификации, их нельзя настроить здесь", + "external": "Всеми участниками управляют внешние системы аутентификации, их нельзя настроить здесь" }, "reservedNotice": { "message": "Эта группа зарезервирована для системных нужд и имеет ограничения на некоторые действия. " @@ -560,48 +560,48 @@ "page": { "list": { "title": "Интеграции", - "search": "", + "search": "Поиск интеграций", "noResults": { - "title": "" + "title": "Интеграции пока отсутствуют" } }, "create": { - "title": "", + "title": "Новая интеграция {name}", "notification": { "success": { - "title": "Приложение создано", - "message": "" + "title": "Интеграция создана", + "message": "Интеграция успешно создана" }, "error": { "title": "Не удалось создать", - "message": "" + "message": "Не удалось создать интеграцию" } } }, "edit": { - "title": "", + "title": "Редактирование интеграции {name}", "notification": { "success": { "title": "Изменения сохранены", - "message": "" + "message": "Интеграция успешно сохранена" }, "error": { "title": "Не удалось сохранить", - "message": "" + "message": "Не удалось сохранить интеграцию" } } }, "delete": { - "title": "", - "message": "", + "title": "Удаление интеграции", + "message": "Вы уверены, что хотите удалить интеграцию {name}?", "notification": { "success": { - "title": "Приложение удалено", - "message": "" + "title": "Интеграция удалена", + "message": "Интеграция успешно удалена" }, "error": { "title": "Не удалось удалить", - "message": "" + "message": "Не удалось удалить интеграцию" } } } @@ -615,105 +615,105 @@ } }, "action": { - "create": "" + "create": "Новая интеграция" }, "testConnection": { "action": { - "create": "", - "edit": "" + "create": "Проверить подключение и создать", + "edit": "Проверить подключение и сохранить" }, - "alertNotice": "", + "alertNotice": "Кнопка сохранения станет доступна после успешного подключения", "notification": { "success": { - "title": "", - "message": "" + "title": "Подключение установлено", + "message": "Подключение успешно установлено" }, "invalidUrl": { - "title": "Недействительный URL", - "message": "" + "title": "Недействительный URL-адрес", + "message": "Указан недействительный URL-адрес" }, "secretNotDefined": { - "title": "", - "message": "" + "title": "Отсутствуют учётные данные", + "message": "Не все учётные данные были предоставлены" }, "invalidCredentials": { - "title": "", - "message": "" + "title": "Неверные учётные данные", + "message": "Предоставлены неверные учётные данные" }, "commonError": { - "title": "", - "message": "" + "title": "Ошибка подключения", + "message": "Не удалось установить подключение" }, "badRequest": { - "title": "", - "message": "" + "title": "Неверный запрос", + "message": "Запрос сформирован некорректно" }, "unauthorized": { - "title": "", - "message": "" + "title": "Нет доступа", + "message": "Возможно, указаны неверные учётные данные" }, "forbidden": { - "title": "", - "message": "" + "title": "Доступ запрещён", + "message": "Возможно, недостаточно прав доступа" }, "notFound": { - "title": "", - "message": "" + "title": "Не найдено", + "message": "Возможно, указан неверный URL-адрес или путь" }, "internalServerError": { - "title": "", - "message": "" + "title": "Внутренняя ошибка сервера", + "message": "На сервере произошла ошибка" }, "serviceUnavailable": { - "title": "", - "message": "" + "title": "Сервис недоступен", + "message": "Сервер временно недоступен" }, "connectionAborted": { - "title": "", - "message": "" + "title": "Подключение прервано", + "message": "Подключение было прервано" }, "domainNotFound": { - "title": "", - "message": "" + "title": "Домен не найден", + "message": "Не удалось найти указанный домен" }, "connectionRefused": { - "title": "", - "message": "" + "title": "В подключении отказано", + "message": "В подключении было отказано" }, "invalidJson": { - "title": "", - "message": "" + "title": "Некорректный JSON", + "message": "Ответ сервера содержит некорректный JSON" }, "wrongPath": { - "title": "", - "message": "" + "title": "Неверный путь", + "message": "Возможно, указан неверный путь" } } }, "secrets": { - "title": "", - "lastUpdated": "", + "title": "Данные авторизации", + "lastUpdated": "Последнее обновление: {date}", "notSet": { - "label": "", - "tooltip": "" + "label": "Значение не указано", + "tooltip": "Обязательное значение ещё не установлено" }, - "secureNotice": "", + "secureNotice": "Эти данные нельзя будет просмотреть после создания", "reset": { - "title": "", - "message": "" + "title": "Сбросить данные авторизации", + "message": "Вы уверены, что хотите сбросить эти данные авторизации?" }, "noSecretsRequired": { - "segmentTitle": "", - "text": "" + "segmentTitle": "Авторизация не требуется", + "text": "Для этой интеграции не требуются данные авторизации" }, "kind": { "username": { "label": "Имя пользователя", - "newLabel": "" + "newLabel": "Новое имя пользователя" }, "apiKey": { - "label": "", - "newLabel": "" + "label": "API-ключ", + "newLabel": "Новый API-ключ" }, "password": { "label": "Пароль", @@ -722,14 +722,14 @@ } }, "permission": { - "use": "", - "interact": "", - "full": "Полный доступ к интеграциям" + "use": "Подключение сторонних сервисов", + "interact": "Взаимодействие с подключенными сервисами", + "full": "Полное управление интеграциями" } }, "media": { "plural": "Медиафайлы", - "search": "", + "search": "Поиск медиафайлов", "field": { "name": "Название", "size": "Размер", @@ -737,154 +737,154 @@ }, "action": { "upload": { - "label": "", - "file": "", + "label": "Загрузить медиафайл", + "file": "Выбрать файл", "notification": { "success": { - "message": "" + "message": "Медиафайл успешно загружен" }, "error": { - "message": "" + "message": "Не удалось загрузить медиафайл" } } }, "delete": { - "label": "", - "description": "", + "label": "Удалить медиафайл", + "description": "Вы уверены, что хотите удалить медиафайл ?", "notification": { "success": { - "message": "" + "message": "Медиафайл успешно удалён" }, "error": { - "message": "" + "message": "Не удалось удалить медиафайл" } } }, "copy": { - "label": "" + "label": "Копировать URL" } } }, "common": { - "beta": "", + "beta": "Бета", "error": "Ошибка", "action": { "add": "Добавить", "apply": "Применить", - "backToOverview": "", + "backToOverview": "Вернуться к обзору", "create": "Создать", "edit": "Редактировать", - "import": "", + "import": "Импортировать", "insert": "Вставить", "remove": "Удалить", "save": "Сохранить", "saveChanges": "Сохранить изменения", "cancel": "Отмена", "delete": "Удалить", - "discard": "", + "discard": "Отменить", "confirm": "Подтвердить", - "continue": "", + "continue": "Продолжить", "previous": "Назад", "next": "Далее", - "checkoutDocs": "", - "checkLogs": "", - "tryAgain": "Повторить", - "loading": "" + "checkoutDocs": "Посмотреть документацию", + "checkLogs": "Проверить логи для подробностей", + "tryAgain": "Попробовать снова", + "loading": "Загрузка" }, - "here": "", + "here": "здесь", "iconPicker": { - "label": "", - "header": "" + "label": "URL иконки", + "header": "Введите название или объекты для фильтрации иконок... Homarr найдёт для вас среди {countIcons} иконок." }, "colorScheme": { "options": { - "light": "", - "dark": "" + "light": "Светлая", + "dark": "Тёмная" } }, "information": { - "min": "", - "max": "", - "days": "", - "hours": "Часы", - "minutes": "Минуты" + "min": "Мин.", + "max": "Макс.", + "days": "Дней", + "hours": "Часов", + "minutes": "Минут" }, "notification": { "create": { - "success": "Приложение создано", + "success": "Создание успешно завершено", "error": "Не удалось создать" }, "delete": { - "success": "Приложение удалено", + "success": "Удаление успешно завершено", "error": "Не удалось удалить" }, "update": { - "success": "Изменения сохранены", - "error": "Не удалось сохранить" + "success": "Изменения успешно применены", + "error": "Не удалось применить изменения" }, "transfer": { - "success": "", - "error": "" + "success": "Передача успешно завершена", + "error": "Не удалось выполнить передачу" } }, "multiSelect": { - "placeholder": "" + "placeholder": "Выберите одно или несколько значений" }, "multiText": { - "placeholder": "", - "addLabel": "" + "placeholder": "Добавить ещё значения", + "addLabel": "Добавить {value}" }, "select": { - "placeholder": "", + "placeholder": "Выберите значение", "badge": { - "recommended": "" + "recommended": "Рекомендуется" } }, "userAvatar": { "menu": { - "switchToDarkMode": "", - "switchToLightMode": "", - "management": "", - "preferences": "Ваши настройки", - "logout": "", + "switchToDarkMode": "Переключить на тёмную тему", + "switchToLightMode": "Переключить на светлую тему", + "management": "Управление", + "preferences": "Настройки", + "logout": "Выйти", "login": "Вход", - "homeBoard": "", - "loggedOut": "", - "updateAvailable": "" + "homeBoard": "Ваша домашняя панель", + "loggedOut": "Выход выполнен", + "updateAvailable": "Доступно {countUpdates} обновлений: {tag}" } }, "dangerZone": "Опасная зона", - "noResults": "Результаты не найдены", + "noResults": "Ничего не найдено", "preview": { - "show": "", - "hide": "" + "show": "Показать предпросмотр", + "hide": "Скрыть предпросмотр" }, "zod": { "errors": { - "default": "Недопустимое значение поля", - "required": "Это поле обязательно", + "default": "Поле заполнено неверно", + "required": "Это поле обязательно для заполнения", "string": { - "startsWith": "Значение данного поля должно начинаться с {startsWith}", - "endsWith": "Значение данного поля должно заканчиваться на {endsWith}", - "includes": "Значение данного поля должно включать {includes}", - "invalidEmail": "" + "startsWith": "Поле должно начинаться с {startsWith}", + "endsWith": "Поле должно заканчиваться на {endsWith}", + "includes": "Поле должно содержать {includes}", + "invalidEmail": "Поле должно содержать корректный email" }, "tooSmall": { - "string": "Данное поле должно содержать не менее {minimum} символов", - "number": "Значение данного поля должно быть больше или равно {minimum}" + "string": "Поле должно содержать не менее {minimum} символов", + "number": "Значение должно быть больше или равно {minimum}" }, "tooBig": { - "string": "Данное поле должно содержать не более {maximum} символов", - "number": "Значение этого поля должно быть меньше или равно {maximum}" + "string": "Поле должно содержать не более {maximum} символов", + "number": "Значение должно быть меньше или равно {maximum}" }, "custom": { - "passwordsDoNotMatch": "", - "passwordRequirements": "", - "boardAlreadyExists": "", - "invalidFileType": "", - "fileTooLarge": "", - "invalidConfiguration": "", - "groupNameTaken": "" + "passwordsDoNotMatch": "Пароли не совпадают", + "passwordRequirements": "Пароль не соответствует требованиям", + "boardAlreadyExists": "Панель с таким именем уже существует", + "invalidFileType": "Неверный тип файла, ожидается {expected}", + "fileTooLarge": "Файл слишком большой, максимальный размер {maxSize}", + "invalidConfiguration": "Неверная конфигурация", + "groupNameTaken": "Имя группы уже занято" } } } @@ -892,12 +892,12 @@ "section": { "dynamic": { "action": { - "create": "", - "remove": "" + "create": "Новый динамический элемент", + "remove": "Удалить динамический элемент" }, "remove": { - "title": "", - "message": "" + "title": "Удалить динамический элемент", + "message": "Вы уверены, что хотите удалить этот динамический элемент? Содержимое будет перемещено в то же место в родительском элементе." } }, "category": { @@ -907,42 +907,42 @@ } }, "action": { - "create": "", - "edit": "", - "remove": "", + "create": "Новая категория", + "edit": "Переименовать категорию", + "remove": "Удалить категорию", "moveUp": "Переместить вверх", "moveDown": "Переместить вниз", - "createAbove": "", - "createBelow": "" + "createAbove": "Создать категорию выше", + "createBelow": "Создать категорию ниже" }, "create": { - "title": "", - "submit": "" + "title": "Новая категория", + "submit": "Добавить категорию" }, "remove": { - "title": "", - "message": "" + "title": "Удалить категорию", + "message": "Вы уверены, что хотите удалить категорию {name}?" }, "edit": { - "title": "", - "submit": "" + "title": "Переименовать категорию", + "submit": "Переименовать категорию" }, "menu": { "label": { - "create": "", - "changePosition": "Изменить положение" + "create": "Новая категория", + "changePosition": "Изменить позицию" } } } }, "item": { "action": { - "create": "", - "import": "", - "edit": "", - "moveResize": "", - "duplicate": "", - "remove": "" + "create": "Новый элемент", + "import": "Импортировать элемент", + "edit": "Редактировать элемент", + "moveResize": "Переместить / изменить размер", + "duplicate": "Дублировать элемент", + "remove": "Удалить элемент" }, "menu": { "label": { @@ -950,11 +950,11 @@ } }, "create": { - "title": "", - "addToBoard": "" + "title": "Выберите тип элемента", + "addToBoard": "Добавить на панель" }, "moveResize": { - "title": "", + "title": "Переместить / изменить размер элемента", "field": { "width": { "label": "Ширина" @@ -963,70 +963,70 @@ "label": "Высота" }, "xOffset": { - "label": "" + "label": "Смещение по X" }, "yOffset": { - "label": "" + "label": "Смещение по Y" } } }, "edit": { - "title": "", + "title": "Редактировать элемент", "advancedOptions": { - "label": "", - "title": "" + "label": "Расширенные настройки", + "title": "Расширенные настройки элемента" }, "field": { "integrations": { "label": "Интеграции" }, "customCssClasses": { - "label": "" + "label": "Пользовательские CSS классы" } } }, "remove": { - "title": "", - "message": "" + "title": "Удалить элемент", + "message": "Вы уверены, что хотите удалить этот элемент?" } }, "widget": { "app": { - "name": "", - "description": "", + "name": "Приложение", + "description": "Встраивает приложение в панель.", "option": { "appId": { - "label": "" + "label": "Выберите приложение" }, "openInNewTab": { "label": "Открывать в новой вкладке" }, "showTitle": { - "label": "" + "label": "Показывать название приложения" }, "showDescriptionTooltip": { - "label": "" + "label": "Показывать всплывающую подсказку с описанием" }, "pingEnabled": { - "label": "" + "label": "Включить простую проверку доступности" } }, "error": { "notFound": { - "label": "", - "tooltip": "" + "label": "Нет приложения", + "tooltip": "Не выбрано корректное приложение" } } }, "bookmarks": { - "name": "", - "description": "", + "name": "Закладки", + "description": "Отображает несколько ссылок на приложение", "option": { "title": { - "label": "" + "label": "Заголовок" }, "layout": { - "label": "Макет", + "label": "Расположение", "option": { "row": { "label": "Горизонтально" @@ -1035,22 +1035,22 @@ "label": "Вертикально" }, "grid": { - "label": "" + "label": "Сетка" } } }, "items": { - "label": "", - "add": "" + "label": "Закладки", + "add": "Добавить закладку" } } }, "dnsHoleSummary": { - "name": "", - "description": "", + "name": "Сводка DNS-фильтра", + "description": "Отображает сводную информацию о вашем DNS-фильтре", "option": { "layout": { - "label": "Макет", + "label": "Расположение", "option": { "row": { "label": "Горизонтально" @@ -1059,31 +1059,31 @@ "label": "Вертикально" }, "grid": { - "label": "" + "label": "Сетка" } } }, "usePiHoleColors": { - "label": "" + "label": "Использовать цвета Pi-hole" } }, "error": { - "internalServerError": "", - "integrationsDisconnected": "" + "internalServerError": "Не удалось получить сводку DNS-фильтра", + "integrationsDisconnected": "Нет данных, все интеграции отключены" }, "data": { "adsBlockedToday": "заблокировано сегодня", "adsBlockedTodayPercentage": "заблокировано сегодня", - "dnsQueriesToday": "запросов сегодня", - "domainsBeingBlocked": "" + "dnsQueriesToday": "DNS-запросов сегодня", + "domainsBeingBlocked": "Доменов в списке блокировки" } }, "dnsHoleControls": { - "name": "", - "description": "Управляйте PiHole или AdGuard с панели управления", + "name": "Управление DNS-фильтром", + "description": "Управляйте PiHole или AdGuard прямо с вашей панели", "option": { "layout": { - "label": "Макет", + "label": "Расположение", "option": { "row": { "label": "Горизонтально" @@ -1092,81 +1092,81 @@ "label": "Вертикально" }, "grid": { - "label": "" + "label": "Сетка" } } }, "showToggleAllButtons": { - "label": "" + "label": "Показывать кнопки управления защитой" } }, "error": { - "internalServerError": "" + "internalServerError": "Не удалось управлять DNS-фильтром" }, "controls": { - "enableAll": "", - "disableAll": "", - "setTimer": "", + "enableAll": "Включить защиту", + "disableAll": "Отключить защиту", + "setTimer": "Установить таймер", "set": "Установить", "enabled": "Включено", "disabled": "Отключено", - "processing": "", - "disconnected": "", + "processing": "Обработка", + "disconnected": "Отключено", "hours": "Часы", "minutes": "Минуты", - "unlimited": "" + "unlimited": "Оставить пустым для неограниченного времени" } }, "clock": { - "name": "", + "name": "Дата и время", "description": "Отображает текущую дату и время.", "option": { "customTitleToggle": { - "label": "", - "description": "" + "label": "Настроить отображение заголовка/города", + "description": "Показывать настраиваемый заголовок или название города/страны над часами." }, "customTitle": { - "label": "" + "label": "Заголовок" }, "is24HourFormat": { - "label": "", - "description": "" + "label": "24-часовой формат", + "description": "Использовать 24-часовой формат вместо 12-часового" }, "showSeconds": { - "label": "" + "label": "Показывать секунды" }, "useCustomTimezone": { - "label": "" + "label": "Использовать другой часовой пояс" }, "timezone": { "label": "Часовой пояс", - "description": "" + "description": "Выберите часовой пояс согласно стандарту IANA" }, "showDate": { - "label": "" + "label": "Показывать дату" }, "dateFormat": { - "label": "", - "description": "" + "label": "Формат даты", + "description": "Как должна выглядеть дата" } } }, "notebook": { - "name": "Блокнот", - "description": "", + "name": "Заметки", + "description": "Простой виджет заметок с поддержкой markdown", "option": { "showToolbar": { - "label": "Показывать панель инструментов для работы с Markdown" + "label": "Показывать панель инструментов для редактирования markdown" }, "allowReadOnlyCheck": { - "label": "Разрешить отметки в режиме только для чтения" + "label": "Разрешить отмечать пункты в режиме чтения" }, "content": { - "label": "Содержимое блокнота" + "label": "Содержимое заметок" } }, "controls": { - "bold": "Полужирный", + "bold": "Жирный", "italic": "Курсив", "strikethrough": "Зачёркнутый", "underline": "Подчёркнутый", @@ -1175,16 +1175,16 @@ "code": "Код", "clear": "Очистить форматирование", "heading": "Заголовок {level}", - "align": "Выровнять текст: {position}", + "align": "Выравнивание текста: {position}", "blockquote": "Цитата", "horizontalLine": "Горизонтальная линия", "bulletList": "Маркированный список", "orderedList": "Нумерованный список", - "checkList": "Список с галочками", + "checkList": "Список с чекбоксами", "increaseIndent": "Увеличить отступ", "decreaseIndent": "Уменьшить отступ", "link": "Ссылка", - "unlink": "Убрать ссылку", + "unlink": "Удалить ссылку", "image": "Вставить изображение", "addTable": "Добавить таблицу", "deleteTable": "Удалить таблицу", @@ -1198,13 +1198,13 @@ "deleteRow": "Удалить строку" }, "align": { - "left": "Слева", + "left": "По левому краю", "center": "По центру", - "right": "Справа" + "right": "По правому краю" }, "popover": { "clearColor": "Очистить цвет", - "source": "Исходный код", + "source": "Источник", "widthPlaceholder": "Значение в % или пикселях", "columns": "Столбцы", "rows": "Строки", @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "Встраиваемый фрейм", + "name": "iFrame", "description": "Встраивает любой контент из интернета. Некоторые сайты могут ограничивать доступ.", "option": { "embedUrl": { @@ -1245,31 +1245,31 @@ } }, "error": { - "noUrl": "", - "noBrowerSupport": "Ваш браузер не поддерживает встраиваемые фреймы. Пожалуйста, обновите браузер." + "noUrl": "URL для iFrame не указан", + "noBrowerSupport": "Ваш браузер не поддерживает iframes. Пожалуйста, обновите браузер." } }, "smartHome-entityState": { - "name": "", - "description": "", + "name": "Состояние объекта", + "description": "Отображает состояние объекта и позволяет управлять им при необходимости", "option": { "entityId": { "label": "ID объекта" }, "displayName": { - "label": "" + "label": "Отображаемое имя" }, "entityUnit": { - "label": "" + "label": "Единица измерения" }, "clickable": { - "label": "" + "label": "Кликабельный" } } }, "smartHome-executeAutomation": { - "name": "", - "description": "", + "name": "Запуск автоматизации", + "description": "Запускает автоматизацию одним нажатием", "option": { "displayName": { "label": "Отображаемое имя" @@ -1279,26 +1279,26 @@ } }, "spotlightAction": { - "run": "" + "run": "Запустить {name}" } }, "calendar": { "name": "Календарь", - "description": "", + "description": "Отображает события из ваших интеграций в календаре в определённом временном периоде", "option": { "releaseType": { "label": "Тип релиза Radarr", "options": { - "inCinemas": "", - "digitalRelease": "", - "physicalRelease": "" + "inCinemas": "В кинотеатрах", + "digitalRelease": "Цифровой релиз", + "physicalRelease": "Физический релиз" } }, "filterPastMonths": { - "label": "" + "label": "Начиная с" }, "filterFutureMonths": { - "label": "" + "label": "Заканчивая" } } }, @@ -1307,24 +1307,24 @@ "description": "Отображает текущую информацию о погоде для указанного местоположения.", "option": { "isFormatFahrenheit": { - "label": "" + "label": "Температура в градусах Фаренгейта" }, "location": { "label": "Местоположение" }, "showCity": { - "label": "" + "label": "Показывать город" }, "hasForecast": { - "label": "" + "label": "Показывать прогноз" }, "forecastDayCount": { - "label": "", - "description": "" + "label": "Количество дней прогноза", + "description": "Если виджет недостаточно широкий, будет показано меньше дней" }, "dateFormat": { - "label": "", - "description": "" + "label": "Формат даты", + "description": "Как должна отображаться дата" } }, "kind": { @@ -1332,9 +1332,9 @@ "mainlyClear": "Преимущественно ясно", "fog": "Туман", "drizzle": "Морось", - "freezingDrizzle": "Ледяная морось", + "freezingDrizzle": "Изморозь", "rain": "Дождь", - "freezingRain": "Ледяной дождь", + "freezingRain": "Моросящий дождь", "snowFall": "Снегопад", "snowGrains": "Снежная крупа", "rainShowers": "Ливень", @@ -1345,28 +1345,28 @@ } }, "indexerManager": { - "name": "Состояние менеджера индексации", - "description": "", + "name": "Состояние индексаторов", + "description": "Статус ваших индексаторов", "option": { "openIndexerSiteInNewTab": { - "label": "" + "label": "Открывать сайт индексатора в новой вкладке" } }, - "title": "Менеджер индексации", + "title": "Индексаторы", "testAll": "Проверить все", "error": { - "internalServerError": "" + "internalServerError": "Не удалось получить статус индексаторов" } }, "healthMonitoring": { "name": "Мониторинг состояния системы", - "description": "Отображает информацию о состоянии и работоспособности ваших систем.", + "description": "Отображает информацию о состоянии и работоспособности вашей системы (систем).", "option": { "fahrenheit": { "label": "Температура CPU в градусах Фаренгейта" }, "cpu": { - "label": "Показывать информацию о CPU" + "label": "Показывать информацию о процессоре" }, "memory": { "label": "Показать информацию о памяти" @@ -1376,41 +1376,41 @@ } }, "popover": { - "information": "", - "processor": "", - "memory": "", - "memoryAvailable": "", - "version": "", - "uptime": "", - "loadAverage": "", - "minute": "", - "minutes": "", - "used": "", + "information": "Информация", + "processor": "Процессор: {cpuModelName}", + "memory": "Память: {memory}GiB", + "memoryAvailable": "Доступно: {memoryAvailable}GiB ({percent}%)", + "version": "Версия: {version}", + "uptime": "Время работы: {months} мес., {days} дн., {hours} ч., {minutes} мин.", + "loadAverage": "Средняя нагрузка:", + "minute": "1 минута", + "minutes": "{count} минут", + "used": "Использовано", "available": "Доступно", - "lastSeen": "" + "lastSeen": "Последнее обновление: {lastSeen}" }, "memory": {}, "error": { - "internalServerError": "" + "internalServerError": "Не удалось получить данные о состоянии системы" } }, "common": { "location": { - "query": "", - "latitude": "", - "longitude": "", - "disabledTooltip": "", - "unknownLocation": "", + "query": "Город / Почтовый индекс", + "latitude": "Широта", + "longitude": "Долгота", + "disabledTooltip": "Пожалуйста, введите город или почтовый индекс", + "unknownLocation": "Неизвестное местоположение", "search": "Поиск", "table": { "header": { - "city": "", - "country": "", - "coordinates": "", - "population": "" + "city": "Город", + "country": "Страна", + "coordinates": "Координаты", + "population": "Население" }, "action": { - "select": "" + "select": "Выбрать {city}, {countryCode}" }, "population": { "fallback": "Неизвестно" @@ -1418,211 +1418,211 @@ } }, "integration": { - "noData": "", - "description": "" + "noData": "Интеграции не найдены", + "description": "Нажмите , чтобы создать новую интеграцию" }, "app": { "noData": "Приложения не найдены", - "description": "" + "description": "Нажмите , чтобы создать новое приложение" }, "error": { - "noIntegration": "", - "noData": "" + "noIntegration": "Интеграция не выбрана", + "noData": "Данные интеграции недоступны" }, "option": {} }, "video": { - "name": "Видеопоток", - "description": "Встраивание видеопотока или видео с камеры или веб-сайта", + "name": "Видеотрансляция", + "description": "Встраивает видео с камеры или трансляцию с веб-сайта", "option": { "feedUrl": { - "label": "URL потока" + "label": "URL трансляции" }, "hasAutoPlay": { "label": "Автовоспроизведение", - "description": "" + "description": "Автовоспроизведение работает только при отключенном звуке из-за ограничений браузера" }, "isMuted": { - "label": "" + "label": "Без звука" }, "hasControls": { - "label": "" + "label": "Показывать элементы управления" } }, "error": { - "noUrl": "", - "forYoutubeUseIframe": "" + "noUrl": "URL видео не указан", + "forYoutubeUseIframe": "Для видео с YouTube используйте виджет iframe" } }, "mediaServer": { - "name": "", - "description": "", + "name": "Активные просмотры", + "description": "Отображает текущие сеансы воспроизведения на медиасерверах", "option": {} }, "downloads": { - "name": "", - "description": "", + "name": "Загрузки", + "description": "Позволяет просматривать и управлять загрузками как из торрент-клиентов, так и из Usenet-клиентов.", "option": { "columns": { - "label": "" + "label": "Отображаемые столбцы" }, "enableRowSorting": { - "label": "" + "label": "Включить сортировку элементов" }, "defaultSort": { - "label": "" + "label": "Столбец для сортировки по умолчанию" }, "descendingDefaultSort": { - "label": "" + "label": "Обратная сортировка" }, "showCompletedUsenet": { - "label": "" + "label": "Показывать завершённые задачи Usenet" }, "showCompletedTorrent": { - "label": "" + "label": "Показывать завершённые торренты" }, "activeTorrentThreshold": { - "label": "" + "label": "Скрывать завершённые торренты ниже этого порога (в КиБ/с)" }, "categoryFilter": { - "label": "" + "label": "Фильтр по категориям/меткам" }, "filterIsWhitelist": { - "label": "" + "label": "Использовать фильтр как белый список" }, "applyFilterToRatio": { - "label": "" + "label": "Использовать фильтр при расчёте рейтинга" } }, "errors": { - "noColumns": "", - "noCommunications": "" + "noColumns": "Выберите столбцы в настройках элементов", + "noCommunications": "Не удалось загрузить данные из интеграции" }, "items": { "actions": { - "columnTitle": "" + "columnTitle": "Управление" }, "added": { - "columnTitle": "", + "columnTitle": "Добавлено", "detailsTitle": "Дата добавления" }, "category": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "Дополнительно", + "detailsTitle": "Категории (или дополнительная информация)" }, "downSpeed": { "columnTitle": "Загрузка", "detailsTitle": "Скорость загрузки" }, "index": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "#", + "detailsTitle": "Текущий индекс в клиенте" }, "id": { - "columnTitle": "" + "columnTitle": "Id" }, "integration": { "columnTitle": "Интеграция" }, "name": { - "columnTitle": "" + "columnTitle": "Название задачи" }, "progress": { "columnTitle": "Прогресс", - "detailsTitle": "" + "detailsTitle": "Прогресс загрузки" }, "ratio": { "columnTitle": "Рейтинг", - "detailsTitle": "" + "detailsTitle": "Рейтинг торрента (получено/отдано)" }, "received": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "Всего загружено", + "detailsTitle": "Всего загружено" }, "sent": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "Всего отдано", + "detailsTitle": "Всего отдано" }, "size": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "Размер файла", + "detailsTitle": "Общий размер выбранного/файлов" }, "state": { "columnTitle": "Состояние", - "detailsTitle": "" + "detailsTitle": "Состояние задачи" }, "time": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "Время завершения", + "detailsTitle": "Время с/до завершения" }, "type": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "Тип", + "detailsTitle": "Тип клиента загрузки" }, "upSpeed": { "columnTitle": "Отдача", - "detailsTitle": "" + "detailsTitle": "Скорость отдачи" } }, "states": { "downloading": "Загрузка", - "queued": "Очередь", + "queued": "В очереди", "paused": "Приостановлено", "completed": "Завершено", - "failed": "", - "processing": "", - "leeching": "", - "stalled": "", + "failed": "Ошибка", + "processing": "Обработка", + "leeching": "Скачивание", + "stalled": "Простаивает", "unknown": "Неизвестно", - "seeding": "" + "seeding": "Раздача" }, "actions": { "clients": { - "modalTitle": "", - "pause": "", - "resume": "" + "modalTitle": "Клиенты", + "pause": "Приостановить все клиенты/задачи", + "resume": "Возобновить все клиенты/задачи" }, "client": { - "pause": "", - "resume": "" + "pause": "Приостановить клиент", + "resume": "Возобновить клиент" }, "item": { - "pause": "", - "resume": "", + "pause": "Приостановить задачу", + "resume": "Возобновить задачу", "delete": { - "title": "", - "modalTitle": "", - "entry": "", - "entryAndFiles": "" + "title": "Удалить задачу", + "modalTitle": "Вы уверены, что хотите удалить эту задачу?", + "entry": "Удалить запись", + "entryAndFiles": "Удалить запись и файл(ы)" } } }, - "globalRatio": "" + "globalRatio": "Общий рейтинг" }, "mediaRequests-requestList": { - "name": "", - "description": "Просмотр списка всех запросов медиаконтента из вашего экземпляра Overseerr или Jellyseerr", + "name": "Запросы медиаконтента", + "description": "Список всех запросов на добавление медиаконтента из вашего экземпляра Overseerr или Jellyseerr", "option": { "linksTargetNewTab": { "label": "Открывать ссылки в новой вкладке" } }, "pending": { - "approve": "", - "approving": "", - "decline": "" + "approve": "Одобрить запрос", + "approving": "Одобрение запроса...", + "decline": "Отклонить запрос" }, "availability": { "unknown": "Неизвестно", - "pending": "", - "processing": "", - "partiallyAvailable": "Частично", + "pending": "В ожидании", + "processing": "Обработка", + "partiallyAvailable": "Частично доступно", "available": "Доступно" }, - "toBeDetermined": "" + "toBeDetermined": "Будет определено позже" }, "mediaRequests-requestStats": { - "name": "", + "name": "Статистика запросов медиаконтента", "description": "Статистика по запросам медиаконтента", "option": {}, "titles": { @@ -1630,28 +1630,28 @@ "main": "Статистика медиаконтента", "approved": "Уже одобрено", "pending": "Ожидает одобрения", - "processing": "", - "declined": "", - "available": "", + "processing": "Обрабатывается", + "declined": "Уже отклонено", + "available": "Уже доступно", "tv": "Запросы сериалов", "movie": "Запросы фильмов", "total": "Всего" }, "users": { "main": "Топ пользователей", - "requests": "" + "requests": "Запросы" } } }, "mediaTranscoding": { - "name": "", - "description": "", + "name": "Перекодирование медиа", + "description": "Статистика, текущая очередь и состояние обработчиков перекодирования медиафайлов", "option": { "defaultView": { "label": "Вид по умолчанию" }, "queuePageSize": { - "label": "" + "label": "Размер страницы очереди" } }, "tab": { @@ -1659,24 +1659,24 @@ "queue": "Очередь", "statistics": "Статистика" }, - "currentIndex": "", + "currentIndex": "{start}-{end} из {total}", "healthCheck": { - "title": "", - "queued": "Очередь", + "title": "Проверка работоспособности", + "queued": "В очереди", "status": { "healthy": "Исправно", - "unhealthy": "Неисправен" + "unhealthy": "Неисправно" } }, "panel": { "statistics": { "empty": "Пусто", - "transcodes": "Перекодирования", - "transcodesCount": "", - "healthChecksCount": "", - "filesCount": "", - "savedSpace": "", - "healthChecks": "", + "transcodes": "Перекодировано", + "transcodesCount": "Перекодировано: {value}", + "healthChecksCount": "Проверок: {value}", + "filesCount": "Файлов: {value}", + "savedSpace": "Сэкономлено места: {value}", + "healthChecks": "Проверки работоспособности", "videoCodecs": "Кодеки", "videoContainers": "Контейнеры", "videoResolutions": "Разрешения" @@ -1688,7 +1688,7 @@ "eta": "Осталось", "progress": "Прогресс", "transcode": "Перекодирование", - "healthCheck": "" + "healthCheck": "Проверка" } }, "queue": { @@ -1697,37 +1697,37 @@ "file": "Файл", "size": "Размер", "transcode": "Перекодирование", - "healthCheck": "" + "healthCheck": "Проверка" } } } }, "rssFeed": { - "name": "", - "description": "", + "name": "RSS-ленты", + "description": "Отслеживание и отображение одной или нескольких RSS, ATOM или JSON-лент", "option": { "feedUrls": { - "label": "" + "label": "URL-адреса лент" }, "enableRtl": { - "label": "" + "label": "Включить режим RTL" }, "textLinesClamp": { - "label": "" + "label": "Ограничение строк описания" }, "maximumAmountPosts": { - "label": "" + "label": "Максимальное количество записей" } } } }, "widgetPreview": { "toggle": { - "enabled": "", - "disabled": "" + "enabled": "Режим редактирования включён", + "disabled": "Режим редактирования отключён" }, "dimensions": { - "title": "" + "title": "Изменить размеры" } }, "board": { @@ -1735,53 +1735,53 @@ "edit": { "notification": { "success": { - "title": "Изменения сохранены", - "message": "" + "title": "Изменения применены", + "message": "Панель успешно сохранена" }, "error": { - "title": "Не удалось сохранить", - "message": "" + "title": "Не удалось применить изменения", + "message": "Не удалось сохранить панель" } }, "confirmLeave": { - "title": "", - "message": "" + "title": "Несохранённые изменения", + "message": "У вас есть несохранённые изменения. Вы уверены, что хотите выйти?" } }, "oldImport": { - "label": "", + "label": "Импорт из версии Homarr до 1.0.0", "notification": { "success": { - "title": "", - "message": "" + "title": "Импорт успешно выполнен", + "message": "Панель успешно импортирована" }, "error": { - "title": "", - "message": "" + "title": "Импорт не удался", + "message": "Не удалось импортировать панель, проверьте логи для дополнительной информации" } }, "form": { "file": { - "label": "", - "invalidError": "" + "label": "Выберите JSON-файл", + "invalidError": "Недействительный файл конфигурации" }, "apps": { "label": "Приложения", "avoidDuplicates": { - "label": "", - "description": "" + "label": "Избегать дубликатов", + "description": "Игнорирует приложения, для которых уже существует приложение с тем же URL-адресом" }, "onlyImportApps": { - "label": "", - "description": "" + "label": "Импортировать только приложения", + "description": "Добавляет только приложения, панель нужно будет создать заново вручную" } }, "name": { - "label": "" + "label": "Название панели" }, "screenSize": { - "label": "", - "description": "", + "label": "Размер экрана", + "description": "В версиях до 1.0 существовало три разных режима, поэтому вы могли выбрать количество столбцов для каждого размера экрана.", "option": { "sm": "Маленький", "md": "Средний", @@ -1789,16 +1789,16 @@ } }, "sidebarBehavior": { - "label": "", - "description": "", + "label": "Поведение боковых панелей", + "description": "Боковые панели были удалены в версии 1.0, вы можете выбрать, что должно произойти с элементами внутри них.", "option": { "lastSection": { - "label": "", - "description": "" + "label": "Последний раздел", + "description": "Боковая панель будет отображаться под последним разделом" }, "removeItems": { - "label": "", - "description": "" + "label": "Удалить элементы", + "description": "Элементы, содержащиеся в боковой панели, будут удалены" } } } @@ -1807,64 +1807,64 @@ }, "field": { "pageTitle": { - "label": "" + "label": "Заголовок страницы" }, "metaTitle": { - "label": "" + "label": "Мета-заголовок" }, "logoImageUrl": { - "label": "" + "label": "URL изображения логотипа" }, "faviconImageUrl": { - "label": "" + "label": "URL изображения favicon" }, "backgroundImageUrl": { - "label": "" + "label": "URL фонового изображения" }, "backgroundImageAttachment": { - "label": "Закрепление фонового изображения", + "label": "Поведение фонового изображения", "option": { "fixed": { - "label": "", - "description": "" + "label": "Фиксированное", + "description": "Фон остаётся на одном месте при прокрутке." }, "scroll": { - "label": "", - "description": "" + "label": "Прокручиваемое", + "description": "Фон прокручивается вместе со страницей." } } }, "backgroundImageRepeat": { - "label": "", + "label": "Повторение фонового изображения", "option": { "repeat": { - "label": "", - "description": "" + "label": "Повторять", + "description": "Изображение повторяется столько раз, сколько необходимо для заполнения всей области фона." }, "no-repeat": { - "label": "", - "description": "" + "label": "Не повторять", + "description": "Изображение не повторяется и может не заполнить всё пространство." }, "repeat-x": { - "label": "", - "description": "" + "label": "Повторять по горизонтали", + "description": "То же, что и 'Повторять', но только по горизонтальной оси." }, "repeat-y": { - "label": "", - "description": "" + "label": "Повторять по вертикали", + "description": "То же, что и 'Повторять', но только по вертикальной оси." } } }, "backgroundImageSize": { - "label": "Повторение фонового изображения", + "label": "Размер фонового изображения", "option": { "cover": { - "label": "", - "description": "" + "label": "Заполнение", + "description": "Масштабирует изображение с сохранением пропорций так, чтобы оно целиком заполнило область, обрезая излишки." }, "contain": { - "label": "", - "description": "" + "label": "Уместить", + "description": "Масштабирует изображение с сохранением пропорций так, чтобы оно полностью поместилось в область без обрезки." } } }, @@ -1875,61 +1875,61 @@ "label": "Дополнительный цвет" }, "opacity": { - "label": "" + "label": "Прозрачность" }, "customCss": { - "label": "", - "description": "Дополнительная настройка панели управления с помощью CSS (рекомендуется только опытным пользователям)", + "label": "Пользовательский CSS для этой панели", + "description": "Дополнительная настройка вашей панели с помощью CSS, рекомендуется только опытным пользователям", "customClassesAlert": { - "title": "", - "description": "" + "title": "Пользовательские классы", + "description": "Вы можете добавлять пользовательские классы к элементам панели в расширенных настройках каждого элемента и использовать их в пользовательском CSS выше." } }, "columnCount": { - "label": "" + "label": "Количество столбцов" }, "name": { "label": "Название" }, "isPublic": { - "label": "Публичный", - "description": "" + "label": "Публичная", + "description": "Публичные панели доступны всем, даже без учётной записи." } }, "content": { - "metaTitle": "" + "metaTitle": "Панель {boardName}" }, "setting": { - "title": "", + "title": "Настройки панели {boardName}", "section": { "general": { - "title": "Основное", - "unrecognizedLink": "" + "title": "Общие", + "unrecognizedLink": "Указанная ссылка не распознана и не будет показана в предпросмотре, но может всё ещё работать." }, "layout": { - "title": "Макет" + "title": "Компоновка" }, "background": { "title": "Фон" }, "color": { - "title": "" + "title": "Цвета" }, "customCss": { - "title": "" + "title": "Пользовательский CSS" }, "access": { - "title": "", + "title": "Управление доступом", "permission": { "item": { "view": { "label": "Просмотр панели" }, "modify": { - "label": "" + "label": "Изменение панели" }, "full": { - "label": "" + "label": "Полный доступ" } } } @@ -1938,41 +1938,41 @@ "title": "Опасная зона", "action": { "rename": { - "label": "", - "description": "", - "button": "", + "label": "Переименовать панель", + "description": "Изменение названия нарушит все существующие ссылки на эту панель.", + "button": "Изменить название", "modal": { - "title": "" + "title": "Переименовать панель" } }, "visibility": { - "label": "", + "label": "Изменить видимость панели", "description": { - "public": "", - "private": "" + "public": "Эта панель сейчас публичная.", + "private": "Эта панель сейчас приватная." }, "button": { - "public": "", - "private": "" + "public": "Сделать приватной", + "private": "Сделать публичной" }, "confirm": { "public": { - "title": "", - "description": "" + "title": "Сделать панель приватной", + "description": "Вы уверены, что хотите сделать эту панель приватной? Панель будет скрыта от публичного доступа. Ссылки для гостевых пользователей перестанут работать." }, "private": { - "title": "", - "description": "" + "title": "Сделать панель публичной", + "description": "Вы уверены, что хотите сделать эту панель публичной? Панель станет доступной для всех." } } }, "delete": { - "label": "", - "description": "", - "button": "", + "label": "Удалить эту панель", + "description": "После удаления панели восстановление будет невозможно. Пожалуйста, будьте уверены в своём решении.", + "button": "Удалить эту панель", "confirm": { - "title": "Удаление панели", - "description": "" + "title": "Удалить панель", + "description": "Вы уверены, что хотите удалить эту панель? Действие навсегда удалит панель и всё её содержимое." } } } @@ -1982,46 +1982,46 @@ "error": { "noBoard": { "title": "Добро пожаловать в Homarr", - "description": "", + "description": "Современная панель управления для удобного доступа к вашим приложениям и сервисам.", "link": "Создать первую панель", - "notice": "" + "notice": "Чтобы убрать эту страницу, создайте панель и установите её как домашнюю" }, "notFound": { - "title": "", - "description": "", + "title": "Панель не найдена", + "description": "Указанная панель не найдена или у вас нет к ней доступа.", "link": "Просмотр всех панелей", - "notice": "" + "notice": "Проверьте ссылку или обратитесь к администратору, если считаете, что она должна быть доступна" }, "homeBoard": { - "title": "", + "title": "Нет домашней панели", "admin": { - "description": "", - "link": "", - "notice": "" + "description": "Домашняя панель для сервера ещё не установлена.", + "link": "Настроить общесерверную домашнюю панель", + "notice": "Чтобы убрать эту страницу для всех пользователей, установите домашнюю панель для сервера" }, "user": { - "description": "", - "link": "", - "notice": "" + "description": "Вы ещё не установили домашнюю панель.", + "link": "Настроить вашу домашнюю панель", + "notice": "Чтобы убрать эту страницу, укажите домашнюю панель в настройках" }, "anonymous": { - "description": "", - "link": "", - "notice": "" + "description": "Администратор сервера ещё не установил домашнюю панель.", + "link": "Просмотр публичных панелей", + "notice": "Чтобы убрать эту страницу, попросите администратора сервера установить домашнюю панель" } } } }, "management": { - "metaTitle": "", + "metaTitle": "Управление", "title": { - "morning": "", - "afternoon": "", - "evening": "" + "morning": "Доброе утро, {username}", + "afternoon": "Добрый день, {username}", + "evening": "Добрый вечер, {username}" }, "notFound": { - "title": "", - "text": "" + "title": "Не найдено", + "text": "Запрошенный ресурс не найден" }, "navbar": { "items": { @@ -2043,9 +2043,9 @@ "label": "Инструменты", "items": { "docker": "Docker", - "logs": "", + "logs": "Логи", "api": "API", - "tasks": "" + "tasks": "Задачи" } }, "settings": "Настройки", @@ -2053,9 +2053,9 @@ "label": "Справка", "items": { "documentation": "Документация", - "submitIssue": "", + "submitIssue": "Сообщить о проблеме", "discord": "Сообщество Discord", - "sourceCode": "" + "sourceCode": "Исходный код" } }, "about": "О программе" @@ -2073,41 +2073,41 @@ }, "statisticLabel": { "boards": "Панели", - "resources": "", - "authentication": "", - "authorization": "" + "resources": "Ресурсы", + "authentication": "Аутентификация", + "authorization": "Авторизация" } }, "board": { "title": "Ваши панели", "action": { "new": { - "label": "" + "label": "Новая панель" }, "open": { - "label": "" + "label": "Открыть панель" }, "settings": { "label": "Настройки" }, "setHomeBoard": { - "label": "", + "label": "Сделать домашней панелью", "badge": { "label": "Главная", - "tooltip": "" + "tooltip": "Эта панель будет показываться как ваша домашняя панель" } }, "delete": { "label": "Удалить навсегда", "confirm": { "title": "Удаление панели", - "description": "" + "description": "Вы уверены, что хотите удалить панель {name}?" } } }, "visibility": { - "public": "", - "private": "" + "public": "Эта панель публичная", + "private": "Эта панель приватная" }, "modal": { "createBoard": { @@ -2120,16 +2120,16 @@ } }, "media": { - "includeFromAllUsers": "" + "includeFromAllUsers": "Включая медиафайлы от всех пользователей" }, "user": { - "back": "", - "fieldsDisabledExternalProvider": "", + "back": "Вернуться к пользователям", + "fieldsDisabledExternalProvider": "Некоторые поля отключены, так как ими управляет внешняя система аутентификации.", "setting": { "general": { - "title": "Основное", + "title": "Общие", "item": { - "language": "", + "language": "Язык и регион", "board": "Домашняя панель", "firstDayOfWeek": "Первый день недели", "accessibility": "Специальные возможности" @@ -2147,25 +2147,25 @@ "title": "Пользователи" }, "edit": { - "metaTitle": "" + "metaTitle": "Редактирование пользователя {username}" }, "create": { "metaTitle": "Создание пользователя", - "title": "", + "title": "Создать нового пользователя", "step": { "personalInformation": { - "label": "" + "label": "Личные данные" }, "security": { "label": "Безопасность" }, "groups": { "label": "Группы", - "title": "", - "description": "" + "title": "Выберите все группы, в которые должен входить пользователь", + "description": "Группа {everyoneGroup} назначается всем пользователям и не может быть удалена." }, "review": { - "label": "" + "label": "Проверка" }, "completed": { "title": "Пользователь создан" @@ -2175,22 +2175,22 @@ } }, "action": { - "createAnother": "", - "back": "" + "createAnother": "Создать ещё одного пользователя", + "back": "Вернуться к списку пользователей" } }, "invite": { "title": "Управление приглашениями", "action": { "new": { - "title": "", + "title": "Новое приглашение", "description": "После истечения срока действия приглашение станет недействительным, и получатель не сможет создать учётную запись." }, "copy": { - "title": "", - "description": "", - "link": "Ссылка приглашения", - "button": "" + "title": "Копировать приглашение", + "description": "Приглашение сгенерировано. После закрытия этого окна вы больше не сможете скопировать эту ссылку. Если вы передумали приглашать пользователя, вы можете удалить это приглашение в любое время.", + "link": "Ссылка для приглашения", + "button": "Копировать и закрыть" }, "delete": { "title": "Удалить приглашение", @@ -2205,7 +2205,7 @@ "label": "Создатель" }, "expirationDate": { - "label": "Дата истечения срока" + "label": "Срок действия" }, "token": { "label": "Токен" @@ -2214,23 +2214,23 @@ } }, "group": { - "back": "", + "back": "Вернуться к группам", "setting": { "general": { - "title": "Основное", + "title": "Общие", "owner": "Владелец", - "ownerOfGroup": "", - "ownerOfGroupDeleted": "" + "ownerOfGroup": "Владелец этой группы", + "ownerOfGroupDeleted": "Владелец этой группы был удалён. В данный момент у группы нет владельца." }, "members": { "title": "Участники", - "search": "", - "notFound": "" + "search": "Найти участника", + "notFound": "Участники не найдены" }, "permissions": { - "title": "", + "title": "Разрешения", "form": { - "unsavedChanges": "" + "unsavedChanges": "У вас есть несохранённые изменения!" } } } @@ -2239,133 +2239,133 @@ "title": "Настройки", "notification": { "success": { - "message": "" + "message": "Настройки успешно сохранены" }, "error": { - "message": "" + "message": "Не удалось сохранить настройки" } }, "section": { "analytics": { - "title": "", + "title": "Аналитика", "general": { - "title": "", - "text": "" + "title": "Отправлять анонимную аналитику", + "text": "Homarr использует открытое программное обеспечение Umami для сбора обезличенных данных об использовании. Сбор данных никогда не включает личную информацию и полностью соответствует GDPR и CCPA. Мы рекомендуем включить аналитику, так как это помогает нашей команде выявлять проблемы и определять приоритеты в разработке." }, "widgetData": { - "title": "", - "text": "" + "title": "Данные о виджетах", + "text": "Отправлять информацию о настроенных виджетах (и их количестве). Не включает URL-адреса, названия или другие данные." }, "integrationData": { - "title": "", - "text": "" + "title": "Данные об интеграциях", + "text": "Отправлять информацию о настроенных интеграциях (и их количестве). Не включает URL-адреса, названия или другие данные." }, "usersData": { - "title": "", - "text": "" + "title": "Данные о пользователях", + "text": "Отправлять количество пользователей и информацию об использовании единого входа" } }, "crawlingAndIndexing": { - "title": "", - "warning": "", + "title": "Сканирование и индексация", + "warning": "Включение или отключение любых настроек здесь существенно повлияет на то, как поисковые системы будут индексировать и сканировать вашу страницу. Все настройки носят рекомендательный характер, и поисковые системы могут учитывать их по своему усмотрению. Изменения могут вступить в силу через несколько дней или недель. Некоторые настройки могут быть специфичны для конкретных поисковых систем.", "noIndex": { - "title": "", - "text": "" + "title": "Не индексировать", + "text": "Не индексировать сайт в поисковых системах и не показывать его в результатах поиска" }, "noFollow": { - "title": "", - "text": "" + "title": "Не следовать по ссылкам", + "text": "Не переходить по ссылкам при индексации. Отключение приведёт к тому, что поисковые роботы будут пытаться перейти по всем ссылкам в Homarr." }, "noTranslate": { - "title": "", - "text": "" + "title": "Не предлагать перевод", + "text": "Когда язык сайта отличается от предпочитаемого пользователем, Google будет показывать ссылку на перевод в результатах поиска" }, "noSiteLinksSearchBox": { - "title": "", - "text": "" + "title": "Не показывать поле поиска по сайту", + "text": "Google создаст поле поиска с найденными ссылками вместе с другими прямыми ссылками. Включение этой опции попросит Google отключить это поле." } }, "board": { "title": "Панели", "homeBoard": { - "label": "", - "description": "" + "label": "Общая домашняя панель", + "description": "Для выбора доступны только публичные панели" } }, "appearance": { "title": "Внешний вид", "defaultColorScheme": { - "label": "", + "label": "Цветовая схема по умолчанию", "options": { - "light": "", - "dark": "" + "light": "Светлая", + "dark": "Тёмная" } } }, "culture": { - "title": "", + "title": "Локализация", "defaultLocale": { - "label": "" + "label": "Язык по умолчанию" } } } }, "tool": { "tasks": { - "title": "", + "title": "Задачи", "status": { - "idle": "", - "running": "Работает", + "idle": "Ожидание", + "running": "Выполняется", "error": "Ошибка" }, "job": { "iconsUpdater": { - "label": "" + "label": "Обновление иконок" }, "analytics": { - "label": "" + "label": "Аналитика" }, "smartHomeEntityState": { - "label": "" + "label": "Состояние объектов умного дома" }, "ping": { - "label": "" + "label": "Проверка доступности" }, "mediaServer": { "label": "Медиасервер" }, "mediaOrganizer": { - "label": "" + "label": "Организация медиафайлов" }, "downloads": { - "label": "" + "label": "Загрузки" }, "mediaRequestStats": { - "label": "" + "label": "Статистика запросов медиаконтента" }, "mediaRequestList": { - "label": "" + "label": "Список запросов медиаконтента" }, "rssFeeds": { - "label": "" + "label": "RSS-ленты" }, "indexerManager": { - "label": "" + "label": "Управление индексаторами" }, "healthMonitoring": { - "label": "" + "label": "Мониторинг состояния" }, "dnsHole": { - "label": "" + "label": "Данные DNS-фильтра" }, "sessionCleanup": { - "label": "" + "label": "Очистка сессий" }, "updateChecker": { - "label": "" + "label": "Проверка обновлений" }, "mediaTranscoding": { - "label": "" + "label": "Перекодирование медиафайлов" } } }, @@ -2373,9 +2373,9 @@ "title": "API", "modal": { "createApiToken": { - "title": "", - "description": "", - "button": "" + "title": "API-токен создан", + "description": "API-токен создан. Этот токен зашифрован в базе данных и будет показан только один раз. После закрытия окна его нельзя будет восстановить.", + "button": "Копировать и закрыть" } }, "tab": { @@ -2383,15 +2383,15 @@ "label": "Документация" }, "apiKey": { - "label": "", - "title": "", + "label": "Аутентификация", + "title": "API-ключи", "button": { - "createApiToken": "" + "createApiToken": "Создать API-токен" }, "table": { "header": { "id": "ID", - "createdBy": "" + "createdBy": "Создан пользователем" } } } @@ -2399,20 +2399,20 @@ } }, "about": { - "version": "", - "text": "", + "version": "Версия {version}", + "text": "Homarr — это проект с открытым исходным кодом, поддерживаемый сообществом и развиваемый добровольцами. Благодаря этим людям Homarr остаётся растущим проектом с 2021 года. Наша команда работает над Homarr полностью удалённо из разных стран в своё свободное время без какой-либо компенсации.", "accordion": { "contributors": { - "title": "", - "subtitle": "" + "title": "Участники проекта", + "subtitle": "{count} поддерживают код и Homarr" }, "translators": { - "title": "", - "subtitle": "" + "title": "Переводчики", + "subtitle": "{count} помогают с переводами на разные языки" }, "libraries": { - "title": "", - "subtitle": "" + "title": "Библиотеки", + "subtitle": "{count} используются в коде Homarr" } } } @@ -2421,9 +2421,9 @@ "docker": { "title": "Контейнеры", "table": { - "updated": "", - "search": "", - "selected": "" + "updated": "Обновлено {when}", + "search": "Поиск среди {count} контейнеров", + "selected": "Выбрано {selectCount} из {totalCount} контейнеров" }, "field": { "name": { @@ -2434,11 +2434,11 @@ "option": { "created": "Создан", "running": "Работает", - "paused": "Приостановлено", - "restarting": "Перезапуск", - "exited": "", - "removing": "Удаление", - "dead": "" + "paused": "Приостановлен", + "restarting": "Перезапускается", + "exited": "Остановлен", + "removing": "Удаляется", + "dead": "Нерабочий" } }, "containerImage": { @@ -2453,12 +2453,12 @@ "label": "Запустить", "notification": { "success": { - "title": "", - "message": "" + "title": "Контейнеры запущены", + "message": "Контейнеры успешно запущены" }, "error": { - "title": "", - "message": "" + "title": "Не удалось запустить контейнеры", + "message": "Не удалось запустить контейнеры" } } }, @@ -2466,12 +2466,12 @@ "label": "Остановить", "notification": { "success": { - "title": "", - "message": "" + "title": "Контейнеры остановлены", + "message": "Контейнеры успешно остановлены" }, "error": { - "title": "", - "message": "" + "title": "Не удалось остановить контейнеры", + "message": "Не удалось остановить контейнеры" } } }, @@ -2479,12 +2479,12 @@ "label": "Перезапустить", "notification": { "success": { - "title": "", - "message": "" + "title": "Контейнеры перезапущены", + "message": "Контейнеры успешно перезапущены" }, "error": { - "title": "", - "message": "" + "title": "Не удалось перезапустить контейнеры", + "message": "Не удалось перезапустить контейнеры" } } }, @@ -2492,45 +2492,45 @@ "label": "Удалить", "notification": { "success": { - "title": "", - "message": "" + "title": "Контейнеры удалены", + "message": "Контейнеры успешно удалены" }, "error": { - "title": "", - "message": "" + "title": "Не удалось удалить контейнеры", + "message": "Не удалось удалить контейнеры" } } }, "refresh": { - "label": "", + "label": "Обновить", "notification": { "success": { - "title": "", - "message": "" + "title": "Контейнеры обновлены", + "message": "Отображаются актуальные данные" }, "error": { - "title": "", - "message": "" + "title": "Не удалось обновить контейнеры", + "message": "Произошла ошибка при обновлении данных о контейнерах" } } } }, "error": { - "internalServerError": "" + "internalServerError": "Произошла ошибка при обновлении данных о контейнерах" } }, "permission": { - "title": "", + "title": "Права доступа", "userSelect": { - "title": "" + "title": "Добавить права для пользователя" }, "groupSelect": { - "title": "" + "title": "Добавить права для группы" }, "tab": { "user": "Пользователи", "group": "Группы", - "inherited": "" + "inherited": "Унаследованные группы" }, "field": { "user": { @@ -2540,12 +2540,12 @@ "label": "Группа" }, "permission": { - "label": "" + "label": "Права доступа" } }, "action": { - "saveUser": "", - "saveGroup": "" + "saveUser": "Сохранить права пользователя", + "saveGroup": "Сохранить права группы" } }, "navigationStructure": { @@ -2560,13 +2560,13 @@ "label": "Редактировать" }, "new": { - "label": "" + "label": "Новая" } }, "search-engines": { "label": "Поисковые системы", "new": { - "label": "" + "label": "Новая" }, "edit": { "label": "Редактировать" @@ -2578,7 +2578,7 @@ "apps": { "label": "Приложения", "new": { - "label": "" + "label": "Новое" }, "edit": { "label": "Редактировать" @@ -2589,7 +2589,7 @@ "create": { "label": "Создать" }, - "general": "Основное", + "general": "Общие", "security": "Безопасность", "board": "Панели", "groups": { @@ -2605,7 +2605,7 @@ "label": "Docker" }, "logs": { - "label": "" + "label": "Логи" } }, "settings": { @@ -2617,28 +2617,28 @@ } }, "search": { - "placeholder": "", - "nothingFound": "", + "placeholder": "Найдётся все", + "nothingFound": "Ничего не найдено", "error": { - "fetch": "" + "fetch": "Произошла ошибка при получении данных" }, "mode": { "appIntegrationBoard": { - "help": "", + "help": "Поиск приложений, интеграций или панелей", "group": { "app": { "title": "Приложения", "children": { "action": { "open": { - "label": "" + "label": "Открыть URL приложения" }, "edit": { - "label": "Редактирование приложения" + "label": "Редактировать приложение" } }, "detail": { - "title": "" + "title": "Выберите действие для приложения" } } }, @@ -2647,17 +2647,17 @@ "children": { "action": { "open": { - "label": "" + "label": "Открыть панель" }, "homeBoard": { - "label": "" + "label": "Сделать домашней панелью" }, "settings": { - "label": "" + "label": "Открыть настройки" } }, "detail": { - "title": "" + "title": "Выберите действие для панели" } } }, @@ -2667,94 +2667,94 @@ } }, "command": { - "help": "", + "help": "Активировать режим команд", "group": { "localCommand": { - "title": "" + "title": "Локальные команды" }, "globalCommand": { - "title": "", + "title": "Глобальные команды", "option": { "colorScheme": { - "light": "", - "dark": "" + "light": "Переключить на светлую тему", + "dark": "Переключить на тёмную тему" }, "language": { - "label": "", + "label": "Изменить язык", "children": { "detail": { - "title": "" + "title": "Выберите предпочитаемый язык" } } }, "newBoard": { - "label": "" + "label": "Создать новую панель" }, "importBoard": { - "label": "" + "label": "Импортировать панель" }, "newApp": { - "label": "" + "label": "Создать новое приложение" }, "newIntegration": { - "label": "", + "label": "Создать новую интеграцию", "children": { "detail": { - "title": "" + "title": "Выберите тип интеграции для создания" } } }, "newUser": { - "label": "" + "label": "Создать нового пользователя" }, "newInvite": { - "label": "" + "label": "Создать новое приглашение" }, "newGroup": { - "label": "" + "label": "Создать новую группу" } } } } }, "external": { - "help": "", + "help": "Использовать внешнюю поисковую систему", "group": { "searchEngine": { "title": "Поисковые системы", "children": { "action": { "search": { - "label": "" + "label": "Искать через {name}" } }, "detail": { - "title": "" + "title": "Выберите действие для поисковой системы" }, "searchResults": { - "title": "" + "title": "Выберите результат поиска для действий" } }, "option": { "google": { - "name": "", - "description": "" + "name": "Google", + "description": "Поиск в интернете через Google" }, "bing": { - "name": "", - "description": "" + "name": "Bing", + "description": "Поиск в интернете через Bing" }, "duckduckgo": { - "name": "", - "description": "" + "name": "DuckDuckGo", + "description": "Поиск в интернете через DuckDuckGo" }, "torrent": { "name": "Торренты", - "description": "" + "description": "Поиск торрентов на torrentdownloads.pro" }, "youTube": { - "name": "", - "description": "" + "name": "YouTube", + "description": "Поиск видео на YouTube" } } } @@ -2763,7 +2763,7 @@ "help": { "group": { "mode": { - "title": "" + "title": "Режимы" }, "help": { "title": "Справка", @@ -2772,7 +2772,7 @@ "label": "Документация" }, "submitIssue": { - "label": "" + "label": "Сообщить о проблеме" }, "discord": { "label": "Сообщество Discord" @@ -2784,57 +2784,57 @@ "home": { "group": { "local": { - "title": "" + "title": "Локальные результаты" } } }, "page": { - "help": "", + "help": "Поиск по страницам", "group": { "page": { - "title": "", + "title": "Страницы", "option": { "manageHome": { - "label": "" + "label": "Управление главной страницей" }, "manageBoard": { - "label": "" + "label": "Управление панелями" }, "manageApp": { - "label": "" + "label": "Управление приложениями" }, "manageIntegration": { - "label": "" + "label": "Управление интеграциями" }, "manageSearchEngine": { - "label": "" + "label": "Управление поисковыми системами" }, "manageMedia": { - "label": "" + "label": "Управление медиафайлами" }, "manageUser": { "label": "Управление пользователями" }, "manageInvite": { - "label": "" + "label": "Управление приглашениями" }, "manageGroup": { - "label": "" + "label": "Управление группами" }, "manageDocker": { - "label": "" + "label": "Управление Docker" }, "manageApi": { - "label": "" + "label": "Swagger API" }, "manageLog": { - "label": "Просмотр журналов" + "label": "Просмотр логов" }, "manageTask": { - "label": "" + "label": "Управление задачами" }, "manageSettings": { - "label": "" + "label": "Глобальные настройки" }, "about": { "label": "О программе" @@ -2850,18 +2850,18 @@ } }, "userGroup": { - "help": "", + "help": "Поиск пользователей или групп", "group": { "user": { "title": "Пользователи", "children": { "action": { "detail": { - "label": "" + "label": "Показать сведения о пользователе" } }, "detail": { - "title": "" + "title": "Выберите действие для пользователя" } } }, @@ -2870,17 +2870,17 @@ "children": { "action": { "detail": { - "label": "" + "label": "Показать сведения о группе" }, "manageMember": { - "label": "" + "label": "Управление участниками" }, "managePermission": { - "label": "" + "label": "Управление разрешениями" } }, "detail": { - "title": "" + "title": "Выберите действие для группы" } } } @@ -2888,16 +2888,16 @@ } }, "engine": { - "search": "", + "search": "Найти поисковую систему", "field": { "name": { "label": "Название" }, "short": { - "label": "" + "label": "Краткое название" }, "urlTemplate": { - "label": "" + "label": "Шаблон URL поиска" }, "description": { "label": "Описание" @@ -2907,53 +2907,53 @@ "list": { "title": "Поисковые системы", "noResults": { - "title": "", - "action": "" + "title": "Поисковые системы пока отсутствуют", + "action": "Создать первую поисковую систему" }, - "interactive": "" + "interactive": "Интерактивная, использует интеграцию" }, "create": { - "title": "", + "title": "Новая поисковая система", "notification": { "success": { - "title": "", - "message": "" + "title": "Поисковая система создана", + "message": "Поисковая система успешно создана" }, "error": { - "title": "", - "message": "" + "title": "Не удалось создать", + "message": "Не удалось создать поисковую систему" } } }, "edit": { - "title": "", + "title": "Редактирование поисковой системы", "notification": { "success": { "title": "Изменения сохранены", - "message": "" + "message": "Поисковая система успешно сохранена" }, "error": { "title": "Не удалось сохранить", - "message": "" + "message": "Не удалось сохранить поисковую систему" } }, - "configControl": "", + "configControl": "Настройка", "searchEngineType": { - "generic": "", - "fromIntegration": "" + "generic": "Обычная", + "fromIntegration": "Из интеграции" } }, "delete": { - "title": "", - "message": "", + "title": "Удаление поисковой системы", + "message": "Вы уверены, что хотите удалить поисковую систему '{name}'?", "notification": { "success": { - "title": "", - "message": "" + "title": "Поисковая система удалена", + "message": "Поисковая система успешно удалена" }, "error": { - "title": "", - "message": "" + "title": "Не удалось удалить", + "message": "Не удалось удалить поисковую систему" } } } diff --git a/packages/translation/src/lang/sk.json b/packages/translation/src/lang/sk.json index c58d9e6e2..a3052d75e 100644 --- a/packages/translation/src/lang/sk.json +++ b/packages/translation/src/lang/sk.json @@ -1381,7 +1381,7 @@ "memory": "Pamäť: {memory}GiB", "memoryAvailable": "K dispozícii: {memoryAvailable}GiB ({percent}%)", "version": "Verzia: {version}", - "uptime": "", + "uptime": "Doba prevádzky: {days} dní, {hours} hodín, {minutes} minút", "loadAverage": "Priemerné zaťaženie:", "minute": "1 minúta", "minutes": "{count} minút", diff --git a/packages/translation/src/lang/sl.json b/packages/translation/src/lang/sl.json index 0eb9cbe13..6b13bf358 100644 --- a/packages/translation/src/lang/sl.json +++ b/packages/translation/src/lang/sl.json @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "Admin", + "title": "", "item": { "admin": { "label": "", @@ -1199,7 +1199,7 @@ }, "align": { "left": "Leva stran", - "center": "Center", + "center": "", "right": "Desno" }, "popover": { @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "Vstavite katero koli vsebino iz interneta. Nekatera spletna mesta lahko omejijo dostop.", "option": { "embedUrl": { @@ -1685,7 +1685,7 @@ "empty": "Prazno", "table": { "file": "", - "eta": "ETA", + "eta": "", "progress": "Napredek", "transcode": "", "healthCheck": "" @@ -2042,7 +2042,7 @@ "tools": { "label": "Orodja", "items": { - "docker": "Docker", + "docker": "", "logs": "", "api": "", "tasks": "" @@ -2199,7 +2199,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Ustvarjalec" @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2602,7 +2602,7 @@ "tools": { "label": "Orodja", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/sv.json b/packages/translation/src/lang/sv.json index 26b80deb7..b3760d305 100644 --- a/packages/translation/src/lang/sv.json +++ b/packages/translation/src/lang/sv.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "Token", + "label": "", "description": "" } }, @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "Admin", + "title": "", "item": { "admin": { "label": "", @@ -1026,7 +1026,7 @@ "label": "" }, "layout": { - "label": "Layout", + "label": "", "option": { "row": { "label": "Horisontal" @@ -1050,7 +1050,7 @@ "description": "", "option": { "layout": { - "label": "Layout", + "label": "", "option": { "row": { "label": "Horisontal" @@ -1083,7 +1083,7 @@ "description": "Styr PiHole eller AdGuard från din instrumentpanel", "option": { "layout": { - "label": "Layout", + "label": "", "option": { "row": { "label": "Horisontal" @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "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": "Integration" + "columnTitle": "" }, "name": { "columnTitle": "" @@ -1677,8 +1677,8 @@ "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "Codecs", - "videoContainers": "Containers", + "videoCodecs": "", + "videoContainers": "", "videoResolutions": "Upplösningar" }, "workers": { @@ -1907,7 +1907,7 @@ "unrecognizedLink": "" }, "layout": { - "title": "Layout" + "title": "" }, "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": "ID" + "label": "" }, "creator": { "label": "Skapare" @@ -2208,7 +2208,7 @@ "label": "Utgångsdatum" }, "token": { - "label": "Token" + "label": "" } } } @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2419,7 +2419,7 @@ } }, "docker": { - "title": "Containers", + "title": "", "table": { "updated": "", "search": "", @@ -2442,7 +2442,7 @@ } }, "containerImage": { - "label": "Image" + "label": "" }, "ports": { "label": "Portar" @@ -2602,7 +2602,7 @@ "tools": { "label": "Verktyg", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" @@ -2749,7 +2749,7 @@ "description": "" }, "torrent": { - "name": "Torrents", + "name": "", "description": "" }, "youTube": { diff --git a/packages/translation/src/lang/tr.json b/packages/translation/src/lang/tr.json index da58c90f6..8f30f49aa 100644 --- a/packages/translation/src/lang/tr.json +++ b/packages/translation/src/lang/tr.json @@ -6,59 +6,59 @@ "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": "Sıfırdan başlayın", - "importOldmarr": "Homarr 1.0'dan önceki yedeğinizi içe aktarın" + "scratch": "Sıfırdan Başla", + "importOldmarr": "Homarr 1.0'dan Önceki Yedeğinizi İçe Aktarın" } }, "import": { - "title": "Verileri içe aktar", - "subtitle": "Mevcut bir Homarr örneğinden alınan verileri içe aktarabilirsiniz.", + "title": "Verileri İçe Aktar", + "subtitle": "Mevcut Homarr Örneğinden Alınan Verileri İçe Aktarabilirsiniz.", "dropzone": { "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": "Dosyayı değiştir" + "change": "Dosyayı Değiştir" } }, "importSettings": { - "title": "İçe aktarma ayarları", - "description": "İçe aktarma işlevlerini yapılandırın" + "title": "İçe Aktarma Ayarları", + "description": "İçe Aktarma İşlevlerini Yapılandırın" }, "boardSelection": { - "title": "{count} panel bulundu", - "description": "İçe aktarılacak tüm panellerin boyutlarını seçin", + "title": "{count} Panel Bulundu", + "description": "İçe Aktarılacak Tüm Panellerin Boyutlarını Seçin", "action": { - "selectAll": "Tümünü seç", - "unselectAll": "Tüm seçimi kaldır" + "selectAll": "Tümünü Seç", + "unselectAll": "Tüm Seçimi Kaldır" } }, "summary": { - "title": "İçe aktarma özeti", - "description": "Aşağıdaki özeti kontrol ederek içe aktarılacak işlevleri görebilirsiniz", + "title": "İçe Aktarma Özeti", + "description": "Aşağıdaki Özeti Kontrol Ederek İçe Aktarılacak İşlevleri Görebilirsiniz", "action": { - "import": "İçe aktarmayı onayla ve devam et" + "import": "İçe Aktarmayı Onayla ve Devam Et" }, "entities": { "apps": "Uygulamalar", "boards": "Paneller", "integrations": "Entegrasyonlar", - "credentialUsers": "Kullanıcı kimlik Bilgileri" + "credentialUsers": "Kullanıcı Kimlik Bilgileri" } }, "tokenModal": { - "title": "İçe aktarma token'ını girin", + "title": "İçe Aktarma Token'ını Girin", "field": { "token": { "label": "Erişim Anahtarı", - "description": "Önceki homarr örneğinizden aldığınız içe aktarma Token'ını girin" + "description": "Önceki Homarr Örneğinizden Aldığınız İçe Aktarma Token'ını girin" } }, "notification": { "error": { - "title": "Geçersiz token", - "message": "Girdiğiniz token geçersiz" + "title": "Geçersiz Token", + "message": "Girdiğiniz Token Geçersiz" } } } @@ -92,24 +92,24 @@ }, "finish": { "title": "Kurulumu Bitir", - "subtitle": "Başlamaya hazırsınız!", + "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": "{name} paneline git", - "createBoard": "İlk panelinizi oluşturun", - "inviteUser": "Yeni kullanıcı davet et", - "docs": "Dökümanları okuyun" + "goToBoard": "{name} Paneline Git", + "createBoard": "İlk Panelinizi Oluşturun", + "inviteUser": "Yeni Kullanıcı Davet Et", + "docs": "Dökümanları Oku" } } }, - "backToStart": "Başlangıca geri dön" + "backToStart": "Başlangıca Geri Dön" }, "user": { "title": "Kullanıcılar", "name": "Kullanıcı", "page": { "login": { - "title": "Hesabınıza giriş yapın", + "title": "Hesabınıza Giriş Yapın", "subtitle": "Tekrar hoş geldiniz! Lütfen kimlik bilgilerinizi girin" }, "invite": { @@ -118,7 +118,7 @@ "description": "{username} tarafından davet edildiniz" }, "init": { - "title": "Yeni Homarr kurulumu", + "title": "Yeni Homarr Kurulumu", "subtitle": "Lütfen yönetici kullanıcısını oluşturun" } }, @@ -141,20 +141,20 @@ } }, "passwordConfirm": { - "label": "Şifreyi onayla" + "label": "Şifreyi Onayla" }, "previousPassword": { "label": "Eski Şifre" }, "homeBoard": { - "label": "Varsayılan panel" + "label": "Öntanımlı Panel" }, "pingIconsEnabled": { - "label": "Pingler için simgeler kullanın" + "label": "Pingler İçin Simgeler Kullanın" } }, "error": { - "usernameTaken": "Kullanıcı adı önceden alındı" + "usernameTaken": "Kullanıcı Adı Önceden Alındı" }, "action": { "login": { @@ -203,10 +203,10 @@ "changeHomeBoard": { "notification": { "success": { - "message": "Varsayılan panel başarıyla değiştirildi" + "message": "Öntanımlı panel başarıyla değiştirildi" }, "error": { - "message": "Varsayılan panel değiştirilemiyor" + "message": "Öntanımlı panel değiştirilemiyor" } } }, @@ -391,7 +391,7 @@ } }, "search-engine": { - "title": "Arama motorları", + "title": "Arama Motorları", "item": { "create": { "label": "Arama motorları oluşturun", @@ -498,7 +498,7 @@ } }, "create": { - "title": "Yeni uygulama", + "title": "Yeni Uygulama", "notification": { "success": { "title": "Oluşturma başarılı", @@ -566,7 +566,7 @@ } }, "create": { - "title": "Yeni {name} entegrasyonu", + "title": "Yeni {name} Entegrasyonu", "notification": { "success": { "title": "Oluşturma başarılı", @@ -615,7 +615,7 @@ } }, "action": { - "create": "Yeni entegrasyon" + "create": "Yeni Entegrasyon" }, "testConnection": { "action": { @@ -703,13 +703,13 @@ "message": "Gizli anahtarı sıfırlamak istediğinizden emin misiniz?" }, "noSecretsRequired": { - "segmentTitle": "Hiçbir Gizli anahtar yok", + "segmentTitle": "Hiçbir Gizli Anahtar Bulunamadı", "text": "Bu entegrasyon için gizli anahtar gerekmiyor" }, "kind": { "username": { "label": "Kullanıcı adı", - "newLabel": "Yeni kullanıcı adı" + "newLabel": "Yeni Kullanıcı Adı" }, "apiKey": { "label": "API Anahtarı", @@ -717,7 +717,7 @@ }, "password": { "label": "Şifre", - "newLabel": "Yeni parola" + "newLabel": "Yeni Parola" } } }, @@ -766,7 +766,7 @@ } }, "common": { - "beta": "Beta", + "beta": "Test", "error": "Hata", "action": { "add": "Ekle", @@ -803,8 +803,8 @@ } }, "information": { - "min": "Asgari", - "max": "Azami", + "min": "En Düşük", + "max": "En Yüksek", "days": "Gün", "hours": "Saat", "minutes": "Dakika" @@ -842,22 +842,22 @@ }, "userAvatar": { "menu": { - "switchToDarkMode": "Koyu moda geç", - "switchToLightMode": "Aydınlık moda geç", + "switchToDarkMode": "Koyu Temaya Geç", + "switchToLightMode": "Aydınlık Temaya Geç", "management": "Yönetim", "preferences": "Tercihleriniz", "logout": "Oturumu kapat", "login": "Giriş", - "homeBoard": "Varsayılan Panel", + "homeBoard": "Öntanımlı Panel", "loggedOut": "Oturum kapatıldı", "updateAvailable": "{countUpdates} güncelleme mevcut: {tag}" } }, - "dangerZone": "Tehlikeli bölge", + "dangerZone": "Tehlikeli Bölge", "noResults": "Sonuç bulunamadı", "preview": { - "show": "Önizlemeyi göster", - "hide": "Önizlemeyi Gizle" + "show": "Ara Renkleri Göster", + "hide": "Ara Renkleri Gizle" }, "zod": { "errors": { @@ -866,16 +866,16 @@ "string": { "startsWith": "Bu alan {startsWith} ile başlamalıdır", "endsWith": "Bu alan {endsWith} ile bitmelidir", - "includes": "Bu alan {includes} adresini içermelidir", + "includes": "Bu alan {includes} içermelidir", "invalidEmail": "Bu alanda geçerli bir e-posta olmalıdır" }, "tooSmall": { "string": "Bu alan en az {minimum} karakter uzunluğunda olmalıdır", - "number": "Bu alan {minimum} adresinden uzun veya eşit olmalıdır" + "number": "Bu alan {minimum} değerinden uzun veya eşit olmalıdır" }, "tooBig": { "string": "Bu alan en fazla {maximum} karakter uzunluğunda olmalıdır", - "number": "Bu alan {maximum} adresinden kısa veya eşit olmalıdır" + "number": "Bu alan {maximum} değerinden kısa veya eşit olmalıdır" }, "custom": { "passwordsDoNotMatch": "Parolalar uyuşmuyor", @@ -892,7 +892,7 @@ "section": { "dynamic": { "action": { - "create": "Yeni dinamik bölüm", + "create": "Yeni Dinamik Bölüm", "remove": "Dinamik bölümü kaldır" }, "remove": { @@ -907,16 +907,16 @@ } }, "action": { - "create": "Yeni kategori", - "edit": "Kategoriyi yeniden adlandır", + "create": "Yeni Kategori", + "edit": "Kategoriyi Yeniden Adlandır", "remove": "Kategoriyi kaldır", "moveUp": "Yukarı taşı", "moveDown": "Aşağı taşı", - "createAbove": "Yukarı yeni kategori", - "createBelow": "Aşağı yeni kategori" + "createAbove": "Yukarı Yeni Kategori", + "createBelow": "Aşağı Yeni Kategori" }, "create": { - "title": "Yeni kategori", + "title": "Yeni Kategori", "submit": "Kategori ekle" }, "remove": { @@ -924,12 +924,12 @@ "message": "{name} kategorisini kaldırmak istediğinizden emin misiniz?" }, "edit": { - "title": "Kategoriyi yeniden adlandır", - "submit": "Kategoriyi yeniden adlandır" + "title": "Kategoriyi Yeniden Adlandır", + "submit": "Kategoriyi Yeniden Adlandır" }, "menu": { "label": { - "create": "Yeni kategori", + "create": "Yeni Kategori", "changePosition": "Pozisyonu değiştir" } } @@ -937,10 +937,10 @@ }, "item": { "action": { - "create": "Yeni öğe", + "create": "Yeni Öğe", "import": "Öğeleri İçe Aktar", "edit": "Öğeyi Düzenle", - "moveResize": "Öğeyi taşı / yeniden boyutlandır", + "moveResize": "Öğeyi Taşı / Yeniden Boyutlandır", "duplicate": "Öğeyi Çoğalt", "remove": "Öğeyi kaldır" }, @@ -954,7 +954,7 @@ "addToBoard": "Panele Ekle" }, "moveResize": { - "title": "Öğeyi taşı / yeniden boyutlandır", + "title": "Öğeyi Taşı / Yeniden Boyutlandır", "field": { "width": { "label": "Genişlik" @@ -999,7 +999,7 @@ "label": "Uygulama seç" }, "openInNewTab": { - "label": "Yeni sekmede aç" + "label": "Yeni Sekmede Aç" }, "showTitle": { "label": "Uygulama adını göster" @@ -1013,13 +1013,13 @@ }, "error": { "notFound": { - "label": "Uygulama yok", + "label": "Uygulama Eklenmedi", "tooltip": "Geçerli bir uygulama seçmediniz" } } }, "bookmarks": { - "name": "Yer imleri", + "name": "Yer İmleri", "description": "Birden fazla uygulama bağlantısını görüntüler", "option": { "title": { @@ -1040,7 +1040,7 @@ } }, "items": { - "label": "Yer imleri", + "label": "Yer İmleri", "add": "Yer imi ekle" } } @@ -1069,7 +1069,7 @@ }, "error": { "internalServerError": "DNS Çözümleyici Özeti alınamadı", - "integrationsDisconnected": "Veri yok, tüm entegrasyonların bağlantısı kesildi" + "integrationsDisconnected": "Veri Bulunamadı, Tüm Entegrasyonların Bağlantısı Kesildi" }, "data": { "adsBlockedToday": "Bugün engellenenler", @@ -1079,7 +1079,7 @@ } }, "dnsHoleControls": { - "name": "DNS çözümleyici kontrolleri", + "name": "DNS Çözümleyici Kontrolleri", "description": "Kontrol panelinizden PiHole veya AdGuard'ı kontrol edin", "option": { "layout": { @@ -1110,7 +1110,7 @@ "set": "Ayarla", "enabled": "Etkin", "disabled": "Pasif", - "processing": "İşleniyor", + "processing": "İşlemde", "disconnected": "Bağlantısı kesildi", "hours": "Saat", "minutes": "Dakika", @@ -1118,7 +1118,7 @@ } }, "clock": { - "name": "Tarih ve saat", + "name": "Tarih ve Saat", "description": "Geçerli tarih ve saati görüntüler.", "option": { "customTitleToggle": { @@ -1152,7 +1152,7 @@ } }, "notebook": { - "name": "Not defteri", + "name": "Not Defteri", "description": "Markdown'ı destekleyen basit bir not defteri bileşeni", "option": { "showToolbar": { @@ -1268,7 +1268,7 @@ } }, "smartHome-executeAutomation": { - "name": "Otomasyonu Yürüt", + "name": "Otomasyon Yürüt", "description": "Tek tıklamayla otomasyonu tetikleyin", "option": { "displayName": { @@ -1295,10 +1295,10 @@ } }, "filterPastMonths": { - "label": "Başla" + "label": "Başlangıç" }, "filterFutureMonths": { - "label": "Bitir" + "label": "Bitiş" } } }, @@ -1345,11 +1345,11 @@ } }, "indexerManager": { - "name": "Dizin oluşturucu yöneticisi statüsü", + "name": "Dizinleyici Yönetim Durumu", "description": "Dizinleyicilerinizin durumu", "option": { "openIndexerSiteInNewTab": { - "label": "Dizinleyici sitesini yeni sekmede aç" + "label": "Dizinleyici Sitesini Yeni Sekmede Aç" } }, "title": "Dizin oluşturucu yöneticisi", @@ -1379,14 +1379,14 @@ "information": "Bilgi", "processor": "İşlemci: {cpuModelName}", "memory": "Bellek: {memory}GiB", - "memoryAvailable": "Mevcut: {memoryAvailable}GiB ({percent}%)", + "memoryAvailable": "Kullanılabilir: {memoryAvailable} GiB ({percent}%)", "version": "Sürüm: {version}", - "uptime": "", + "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", + "available": "Kullanılabilir", "lastSeen": "Son durum güncellemesi: {lastSeen}" }, "memory": {}, @@ -1455,7 +1455,7 @@ } }, "mediaServer": { - "name": "Güncel medya sunucusu akışları", + "name": "Güncel Medya Sunucusu Akışları", "description": "Medya sunucularınızdaki mevcut akışları gösterin", "option": {} }, @@ -1470,7 +1470,7 @@ "label": "Öğelerin sıralanmasını etkinleştir" }, "defaultSort": { - "label": "Varsayılan olarak sıralama için kullanılan sütun" + "label": "Öntanımlı olarak sıralama için kullanılan sütun" }, "descendingDefaultSort": { "label": "Ters sıralama" @@ -1503,7 +1503,7 @@ "columnTitle": "Kontroller" }, "added": { - "columnTitle": "Eklendi", + "columnTitle": "Ekleme", "detailsTitle": "Ekleme Tarihi" }, "category": { @@ -1532,7 +1532,7 @@ "detailsTitle": "İndirme İlerlemesi" }, "ratio": { - "columnTitle": "Ratio", + "columnTitle": "Oran", "detailsTitle": "Torrent oranı (alınan/gönderilen)" }, "received": { @@ -1570,7 +1570,7 @@ "paused": "Duraklatıldı", "completed": "Tamamlanan", "failed": "Başarısız", - "processing": "İşleniyor", + "processing": "İşlemde", "leeching": "Leechleme", "stalled": "Durduruldu", "unknown": "Bilinmeyen", @@ -1615,7 +1615,7 @@ "availability": { "unknown": "Bilinmeyen", "pending": "Bekleyen", - "processing": "İşleniyor", + "processing": "İşlemde", "partiallyAvailable": "Kısmi", "available": "Mevcut" }, @@ -1631,8 +1631,8 @@ "approved": "Onaylanan", "pending": "Onay bekleyen", "processing": "İşleniyor", - "declined": "Zaten reddedildi", - "available": "Zaten Mevcut", + "declined": "Reddedilen", + "available": "Mevcut", "tv": "Dizi talepleri", "movie": "Film talepleri", "total": "Toplam" @@ -1644,14 +1644,14 @@ } }, "mediaTranscoding": { - "name": "Medya kod dönüştürme", + "name": "Medya Kod Dönüştürme", "description": "Medya kod dönüştürmenizin istatistikleri, geçerli kuyruğu ve çalışan durumu", "option": { "defaultView": { - "label": "Varsayılan görünüm" + "label": "Öntanımlı Görünüm" }, "queuePageSize": { - "label": "Sıra sayfa boyutu" + "label": "Kuyruk Sayfa Boyutu" } }, "tab": { @@ -1703,8 +1703,8 @@ } }, "rssFeed": { - "name": "RSS beslemeleri", - "description": "Bir veya daha fazla genel RSS, ATOM veya JSON beslemesini izleyin ve görüntüleyin", + "name": "RSS Beslemeleri", + "description": "Bir veya daha fazla RSS, ATOM veya JSON beslemesini takip edin ve görüntüleyin", "option": { "feedUrls": { "label": "Besleme URL'leri" @@ -1713,10 +1713,10 @@ "label": "RTL'yi etkinleştir" }, "textLinesClamp": { - "label": "Açıklamalar satır sınırı" + "label": "Açıklamalarda satır sınırı" }, "maximumAmountPosts": { - "label": "Gönderi değer sınırı" + "label": "Gönderi sayısı sınırı" } } } @@ -1842,7 +1842,7 @@ "description": "Görsel, tüm arka plan alanını kaplayacak kadar tekrarlanır." }, "no-repeat": { - "label": "Tekrarlama yok", + "label": "Tekrarlama Yok", "description": "Görsel tekrarlanmaz ve tüm alanı doldurmayabilir." }, "repeat-x": { @@ -1919,7 +1919,7 @@ "title": "Özel Css" }, "access": { - "title": "Erişim kontrolü", + "title": "Erişim Kontrolü", "permission": { "item": { "view": { @@ -1935,14 +1935,14 @@ } }, "dangerZone": { - "title": "Tehlikeli bölge", + "title": "Tehlikeli Bölge", "action": { "rename": { - "label": "Panelin adını değiştir", + "label": "Panelin ismini değiştir", "description": "İsmin değiştirilmesi bu panele olan tüm bağlantıların kopmasına neden olacaktır.", "button": "İsmi değiştir", "modal": { - "title": "Panelin adını değiştir" + "title": "Panelin ismini değiştir" } }, "visibility": { @@ -1993,7 +1993,7 @@ "notice": "Bağlantıyı kontrol edin veya erişilebilir olması gerektiğini düşünüyorsanız bir yöneticiyle iletişime geçin" }, "homeBoard": { - "title": "Ana panel yok", + "title": "Öntanımlı Panel Yapılandırılmadı", "admin": { "description": "Sunucu için henüz bir ana sayfa paneli belirlemediniz.", "link": "Sunucu geneli için ana panel yapılandırın", @@ -2001,13 +2001,13 @@ }, "user": { "description": "Henüz bir ev paneli belirlemediniz.", - "link": "Varsayılan paneli yapılandır", - "notice": "Bu sayfanın kaybolmasını sağlamak için tercihlerden varsayılan panel seçin" + "link": "Öntanımlı Paneli Yapılandır", + "notice": "Bu Sayfanın Kaybolmasını Sağlamak İçin Tercihlerden Öntanımlı Panel Atayın" }, "anonymous": { - "description": "Sunucu yöneticiniz henüz bir varsayılan panel belirlemedi.", + "description": "Sunucu Yöneticiniz Henüz Bir Öntanımlı Panel Atamadı.", "link": "Herkese açık panelleri görüntüle", - "notice": "Bu sayfanın kaybolmasını sağlamak için sunucu yöneticisinden varsayılan panel ayarlamasını isteyin" + "notice": "Bu Sayfanın Kaybolmasını Sağlamak İçin Sunucu Yöneticisinden Öntanımlı Panel Atamasını İsteyin" } } } @@ -2025,11 +2025,11 @@ }, "navbar": { "items": { - "home": "Ana sayfa", + "home": "Ana Sayfa", "boards": "Paneller", "apps": "Uygulamalar", "integrations": "Entegrasyonlar", - "searchEngies": "Arama motorları", + "searchEngies": "Arama Motorları", "medias": "Medyalar", "users": { "label": "Kullanıcılar", @@ -2082,7 +2082,7 @@ "title": "Panelleriniz", "action": { "new": { - "label": "Yeni panel" + "label": "Yeni Panel" }, "open": { "label": "Panel'i aç" @@ -2091,10 +2091,10 @@ "label": "Ayarlar" }, "setHomeBoard": { - "label": "Varsayılan panel olarak ayarlayın", + "label": "Öntanımlı Panel Olarak Ata", "badge": { - "label": "Ana sayfa", - "tooltip": "Bu panel sizin varsayılan paneliniz olarak görüntülenecektir" + "label": "Ana Sayfa", + "tooltip": "Bu panel sizin öntanımlı paneliniz olarak görüntülenecektir" } }, "delete": { @@ -2130,7 +2130,7 @@ "title": "Genel", "item": { "language": "Dil & Bölge", - "board": "Varsayılan panel", + "board": "Öntanımlı Panel", "firstDayOfWeek": "Haftanın ilk günü", "accessibility": "Erişilebilirlik" } @@ -2151,7 +2151,7 @@ }, "create": { "metaTitle": "Kullanıcı ekle", - "title": "Yeni kullanıcı oluştur", + "title": "Yeni Kullanıcı Oluştur", "step": { "personalInformation": { "label": "Kişisel bilgiler" @@ -2180,10 +2180,10 @@ } }, "invite": { - "title": "Kullanıcı davetlerini yönet", + "title": "Kullanıcı Davetlerini Yönet", "action": { "new": { - "title": "Yeni davet", + "title": "Yeni Davet", "description": "Süre sona erdikten sonra davet artık geçerli olmayacak ve daveti alan kişi bir hesap oluşturamayacaktır." }, "copy": { @@ -2266,36 +2266,36 @@ } }, "crawlingAndIndexing": { - "title": "Tarama ve Dizinleme", - "warning": "Burada herhangi bir ayarı etkinleştirmek veya devre dışı bırakmak, arama motorlarının sayfanızı nasıl dizine ekleyeceğini ve tarayacağını ciddi şekilde etkileyecektir. Herhangi bir ayar bir istektir ve bu ayarları uygulamak tarayıcıya bağlıdır. Herhangi bir değişikliğin uygulanması birkaç gün veya hafta sürebilir. Bazı ayarlar arama motoruna özgü olabilir.", + "title": "Arama ve İndeksleme", + "warning": "Buradaki ayarların etkinleştirilmesi veya devre dışı bırakılması, arama motorlarının sayfanızı arama ve indekleme şeklini ciddi şekilde etkileyecektir. Her ayar bir istek başlatır ve bu ayarları almak tarayıcının görevidir. Değişiklikler birkaç gün veya hafta sürebilir. Bazı ayarlar arama motoruna özel olabilir.", "noIndex": { - "title": "İndeks yok", - "text": "Web sitesini arama motorlarında indekslemeyin ve hiçbir arama sonucunda göstermeyin" + "title": "İndeksleme Yapma", + "text": "Web sitesini arama motorlarında indekslemeyin veya herhangi bir arama sonucunda görüntülemeyin" }, "noFollow": { - "title": "Takip yok", - "text": "Dizinleme sırasında hiçbir bağlantıyı takip etmeyin. Bunu devre dışı bırakmak, tarayıcıların Homarr'daki tüm bağlantıları takip etmeye çalışmasına yol açacaktır." + "title": "Bağlantıları Takip Etme", + "text": "İndeksleme sırasında bağlantıları takip etmeyin. Bunu devre dışı bırakmak, tarayıcıların Homarr'daki tüm bağlantıları izlemeye çalışmasına neden olur." }, "noTranslate": { - "title": "Çeviri yok", - "text": "Site dilinin kullanıcının okumak isteyeceği bir dil olmaması durumunda Google, arama sonuçlarında bir çeviri bağlantısı gösterecektir" + "title": "Çeviri Yapma", + "text": "Kullanıcının site üzerinde okumak isteyeceği dilin olmaması durumunda Google, arama sonuçlarında bir çeviri bağlantısı gösterecektir" }, "noSiteLinksSearchBox": { - "title": "Site bağlantıları arama kutusu yok", - "text": "Google, taranan bağlantıların yanı sıra diğer doğrudan bağlantılarla bir arama kutusu oluşturacaktır. Bunu etkinleştirmek Google'dan bu kutuyu devre dışı bırakmasını isteyecektir." + "title": "Site Arama Alanını Gösterme", + "text": "Google, aranan bağlantıların yanı sıra diğer doğrudan bağlantılardan oluşan bir arama kutusu oluşturur. Bu seçenek etkinleştirildiğinde Google'dan bu alanı devre dışı bırakması istenecektir." } }, "board": { "title": "Paneller", "homeBoard": { - "label": "Küresel ana sayfa paneli", - "description": "Seçim için yalnızca herkese açık paneller kullanılabilir" + "label": "Genel Öntanımlı Panel", + "description": "Seçim yalnızca herkese açık paneller için kullanılabilir" } }, "appearance": { "title": "Görünüş", "defaultColorScheme": { - "label": "Varsayılan renk şeması", + "label": "Öntanımlı Renk Düzeni", "options": { "light": "Aydınlık", "dark": "Koyu" @@ -2305,7 +2305,7 @@ "culture": { "title": "Kültür", "defaultLocale": { - "label": "Varsayılan dil" + "label": "Öntanımlı Dil" } } } @@ -2347,7 +2347,7 @@ "label": "Medya Talep Listesi" }, "rssFeeds": { - "label": "RSS beslemeleri" + "label": "RSS Beslemeleri" }, "indexerManager": { "label": "Dizinleyici Yöneticisi" @@ -2365,7 +2365,7 @@ "label": "Güncelleme denetleyicisi" }, "mediaTranscoding": { - "label": "Medya kod dönüştürme" + "label": "Medya Kod Dönüştürme" } } }, @@ -2400,7 +2400,7 @@ }, "about": { "version": "Sürüm {version}", - "text": "Homarr, gönüllüler tarafından sürdürülen topluluk odaklı bir açık kaynak projesidir. Bu kişiler sayesinde Homarr, 2021'den beri büyüyen bir projedir. Ekibimiz, boş zamanlarında Homarr üzerinde birçok farklı ülkeden tamamen uzaktan, hiçbir ücret almadan çalışmaktadır.", + "text": "Homarr, gönüllüler tarafından sürdürülen topluluk odaklı bir açık kaynak projesidir. Bu kişiler sayesinde Homarr, 2021'den bugüne büyüyerek ilerleyen bir projedir. Ekibimiz, boş zamanlarında Homarr üzerinde birçok farklı ülkeden tamamen uzaktan, hiçbir ücret almadan çalışmaktadır.", "accordion": { "contributors": { "title": "Katkıda Bulunanlar", @@ -2408,7 +2408,7 @@ }, "translators": { "title": "Çevirmenler", - "subtitle": "{count} dilde birçok kişi çevirilere katkıda bulunuyor" + "subtitle": "{count} kişi Homarr'ın bir çok dile çevrilmesine katkı sağlıyor" }, "libraries": { "title": "Kütüphaneler", @@ -2435,7 +2435,7 @@ "created": "Oluşturuldu", "running": "Çalışıyor", "paused": "Duraklatıldı", - "restarting": "Yeniden başlatılıyor", + "restarting": "Yeniden Başlatılıyor", "exited": "Çıkıldı", "removing": "Kaldırılıyor", "dead": "Ölü" @@ -2650,7 +2650,7 @@ "label": "Panel'i aç" }, "homeBoard": { - "label": "Varsayılan panel olarak ayarla" + "label": "Öntanımlı Panel Olarak Ata" }, "settings": { "label": "Ayarları aç" @@ -2676,8 +2676,8 @@ "title": "Genel komutlar", "option": { "colorScheme": { - "light": "Aydınlık moda geç", - "dark": "Koyu moda geç" + "light": "Aydınlık Temaya Geç", + "dark": "Koyu Temaya Geç" }, "language": { "label": "Dili değiştir", @@ -2688,16 +2688,16 @@ } }, "newBoard": { - "label": "Yeni bir panel oluştur" + "label": "Yeni Panel Oluştur" }, "importBoard": { "label": "Bir paneli içe aktar" }, "newApp": { - "label": "Yeni bir uygulama oluştur" + "label": "Yeni Uygulama Oluştur" }, "newIntegration": { - "label": "Yeni bir entegrasyon oluşturun", + "label": "Yeni Entegrasyon Oluştur", "children": { "detail": { "title": "Oluşturmak istediğiniz entegrasyon türünü seçin" @@ -2705,13 +2705,13 @@ } }, "newUser": { - "label": "Yeni bir kullanıcı oluştur" + "label": "Yeni Kullanıcı Oluştur" }, "newInvite": { - "label": "Yeni bir davet oluştur" + "label": "Yeni Davet Oluştur" }, "newGroup": { - "label": "Yeni bir grup oluştur" + "label": "Yeni Grup Oluştur" } } } @@ -2795,7 +2795,7 @@ "title": "Sayfalar", "option": { "manageHome": { - "label": "Ana sayfayı yönet" + "label": "Ana Sayfayı Yönet" }, "manageBoard": { "label": "Panelleri yönet" @@ -2825,7 +2825,7 @@ "label": "Docker'ı yönet" }, "manageApi": { - "label": "Swagger API" + "label": "Swagger API'si" }, "manageLog": { "label": "Günlükleri görüntüle" @@ -2840,7 +2840,7 @@ "label": "Hakkında" }, "homeBoard": { - "label": "Varsayılan panel" + "label": "Öntanımlı Panel" }, "preferences": { "label": "Tercihleriniz" @@ -2894,7 +2894,7 @@ "label": "İsim" }, "short": { - "label": "Kısa" + "label": "Kısa Yol" }, "urlTemplate": { "label": "URL arama şablonu" @@ -2905,15 +2905,15 @@ }, "page": { "list": { - "title": "Arama motorları", + "title": "Arama Motorları", "noResults": { - "title": "Henüz bir arama motoru yok", + "title": "Henüz bir arama motoru yapılandırılmadı", "action": "İlk arama motorunuzu oluşturun" }, "interactive": "Etkileşimli, entegrasyon kullanır" }, "create": { - "title": "Yeni arama motoru", + "title": "Yeni Arama Motoru", "notification": { "success": { "title": "Arama motoru oluşturuldu", diff --git a/packages/translation/src/lang/uk.json b/packages/translation/src/lang/uk.json index 4537e6ad9..c67e20b69 100644 --- a/packages/translation/src/lang/uk.json +++ b/packages/translation/src/lang/uk.json @@ -2042,9 +2042,9 @@ "tools": { "label": "Інструменти", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2602,7 +2602,7 @@ "tools": { "label": "Інструменти", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/vi.json b/packages/translation/src/lang/vi.json index 615fa847b..10f89aa67 100644 --- a/packages/translation/src/lang/vi.json +++ b/packages/translation/src/lang/vi.json @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "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": { @@ -2042,9 +2042,9 @@ "tools": { "label": "Công cụ", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2602,7 +2602,7 @@ "tools": { "label": "Công cụ", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" From abf7942fb79bd6d79af9b332e6f69f65d9db5d63 Mon Sep 17 00:00:00 2001 From: "homarr-crowdin[bot]" <190541745+homarr-crowdin[bot]@users.noreply.github.com> Date: Sat, 28 Dec 2024 09:14:42 +0000 Subject: [PATCH 06/25] chore(lang): updated translations from crowdin Co-authored-by: Crowdin Homarr <190541745+homarr-crowdin[bot]@users.noreply.github.com> --- packages/translation/src/lang/tr.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/translation/src/lang/tr.json b/packages/translation/src/lang/tr.json index 8f30f49aa..52835c9d3 100644 --- a/packages/translation/src/lang/tr.json +++ b/packages/translation/src/lang/tr.json @@ -2258,7 +2258,7 @@ }, "integrationData": { "title": "Entegrasyon verileri", - "text": "Entegrasyon (ve sayıları) yapılandırma verilerini gönder. URL'leri, adları veya başka herhangi bir veriyi içermez." + "text": "Entegrasyon (ve sayıları) yapılandırma verilerini gönder. URL'leri, alan adlarını veya başka herhangi bir veriyi içermez." }, "usersData": { "title": "Kullanıcı verileri", @@ -2288,7 +2288,7 @@ "board": { "title": "Paneller", "homeBoard": { - "label": "Genel Öntanımlı Panel", + "label": "Genel Ana Sayfa Paneli", "description": "Seçim yalnızca herkese açık paneller için kullanılabilir" } }, @@ -2408,7 +2408,7 @@ }, "translators": { "title": "Çevirmenler", - "subtitle": "{count} kişi Homarr'ın bir çok dile çevrilmesine katkı sağlıyor" + "subtitle": "Birçok kişi Homarr'ın {count} dile çevrilmesine katkı sağlıyor" }, "libraries": { "title": "Kütüphaneler", From c8228b920ca43f83e555d2a5a1d3f3299df0f1f7 Mon Sep 17 00:00:00 2001 From: Thomas Camlong Date: Sat, 28 Dec 2024 18:25:14 +0900 Subject: [PATCH 07/25] chore(lang): updated translations from crowdin (#1797) * New translations en.json (Hebrew) * New translations en.json (Turkish) * New translations en.json (Turkish) --------- Co-authored-by: Meier Lukas --- packages/translation/src/lang/he.json | 80 +++++++++++++-------------- packages/translation/src/lang/tr.json | 2 +- 2 files changed, 41 insertions(+), 41 deletions(-) diff --git a/packages/translation/src/lang/he.json b/packages/translation/src/lang/he.json index 68720bb2a..3335c3c4c 100644 --- a/packages/translation/src/lang/he.json +++ b/packages/translation/src/lang/he.json @@ -1443,83 +1443,83 @@ "description": "" }, "isMuted": { - "label": "" + "label": "מושתק" }, "hasControls": { - "label": "" + "label": "הצג פקדים" } }, "error": { - "noUrl": "", - "forYoutubeUseIframe": "" + "noUrl": "לא סופק קישור של סרטון", + "forYoutubeUseIframe": "עבור סרטוני YouTube השתמש באפשרות iframe" } }, "mediaServer": { - "name": "", - "description": "", + "name": "זרמי שרת מדיה נוכחיים", + "description": "הצג את הזרמים הנוכחיים בשרתי המדיה שלך", "option": {} }, "downloads": { - "name": "", - "description": "", + "name": "הורדת לקוח", + "description": "מאפשר לך להציג ולנהל את ההורדות שלך הן מלקוחות Torrent והן מלקוחות Usenet.", "option": { "columns": { - "label": "" + "label": "עמודות להצגה" }, "enableRowSorting": { - "label": "" + "label": "אפשר מיון פריטים" }, "defaultSort": { - "label": "" + "label": "עמודה המשמשת למיון כברירת מחדל" }, "descendingDefaultSort": { - "label": "" + "label": "מיון הפוך" }, "showCompletedUsenet": { - "label": "" + "label": "הצג ערכי usenet שסומנו כהשלמה" }, "showCompletedTorrent": { - "label": "" + "label": "הצג ערכי טורנט שסומנו כהשלמה" }, "activeTorrentThreshold": { - "label": "" + "label": "הסתר טורנט שהושלם מתחת לסף הזה (בקיB/s)" }, "categoryFilter": { - "label": "" + "label": "קטגוריות/תוויות לסינון" }, "filterIsWhitelist": { - "label": "" + "label": "סנן כרשימת היתרים" }, "applyFilterToRatio": { - "label": "" + "label": "השתמש במסנן כדי לחשב יחס" } }, "errors": { - "noColumns": "", - "noCommunications": "" + "noColumns": "בחר עמודות בפריטים", + "noCommunications": "לא ניתן לטעון נתונים מהאינטגרציה" }, "items": { "actions": { - "columnTitle": "" + "columnTitle": "פקדים" }, "added": { - "columnTitle": "", + "columnTitle": "נוסף", "detailsTitle": "נוסף בתאריך" }, "category": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "תוספות", + "detailsTitle": "קטגוריות (או מידע נוסף)" }, "downSpeed": { "columnTitle": "הורדה", "detailsTitle": "מהירות הורדה" }, "index": { - "columnTitle": "", + "columnTitle": "#", "detailsTitle": "" }, "id": { - "columnTitle": "" + "columnTitle": "מזהה" }, "integration": { "columnTitle": "אינטגרציה" @@ -1529,39 +1529,39 @@ }, "progress": { "columnTitle": "התקדמות", - "detailsTitle": "" + "detailsTitle": "התקדמות ההורדה" }, "ratio": { "columnTitle": "יחס", - "detailsTitle": "" + "detailsTitle": "יחס טורנט (התקבל/נשלח)" }, "received": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "סך הכל הורדה", + "detailsTitle": "הורדה כוללת" }, "sent": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "סך הכל העלאה", + "detailsTitle": "העלאה כוללת" }, "size": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "גודל קובץ", + "detailsTitle": "גודל כולל של בחירה/קבצים" }, "state": { "columnTitle": "מצב", "detailsTitle": "" }, "time": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "זמן סיום", + "detailsTitle": "זמן מאז/עד סיום" }, "type": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "סוּג", + "detailsTitle": "סוג לקוח הורדה" }, "upSpeed": { "columnTitle": "העלאה", - "detailsTitle": "" + "detailsTitle": "קצב העלאה" } }, "states": { @@ -1569,7 +1569,7 @@ "queued": "בתור", "paused": "מושהה", "completed": "הושלם", - "failed": "", + "failed": "נכשל", "processing": "מעבד", "leeching": "", "stalled": "", diff --git a/packages/translation/src/lang/tr.json b/packages/translation/src/lang/tr.json index 52835c9d3..73704b096 100644 --- a/packages/translation/src/lang/tr.json +++ b/packages/translation/src/lang/tr.json @@ -2254,7 +2254,7 @@ }, "widgetData": { "title": "Widget verileri", - "text": "Widget (ve sayıları) yapılandırma verilerini gönder. URL'leri, adları veya başka herhangi bir veriyi içermez." + "text": "Widget (ve sayıları) yapılandırma verilerini gönder. URL'leri, alan adlarını veya başka herhangi bir veriyi içermez." }, "integrationData": { "title": "Entegrasyon verileri", From 5b04b93f230ae1da4d1b2f4be527baadc29053df Mon Sep 17 00:00:00 2001 From: "homarr-crowdin[bot]" <190541745+homarr-crowdin[bot]@users.noreply.github.com> Date: Sat, 28 Dec 2024 18:49:22 +0100 Subject: [PATCH 08/25] chore(lang): updated translations from crowdin (#1802) Co-authored-by: Crowdin Homarr <190541745+homarr-crowdin[bot]@users.noreply.github.com> --- packages/translation/src/lang/he.json | 2 +- packages/translation/src/lang/tr.json | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/translation/src/lang/he.json b/packages/translation/src/lang/he.json index 3335c3c4c..169601a43 100644 --- a/packages/translation/src/lang/he.json +++ b/packages/translation/src/lang/he.json @@ -1515,7 +1515,7 @@ "detailsTitle": "מהירות הורדה" }, "index": { - "columnTitle": "#", + "columnTitle": "", "detailsTitle": "" }, "id": { diff --git a/packages/translation/src/lang/tr.json b/packages/translation/src/lang/tr.json index 73704b096..051192f88 100644 --- a/packages/translation/src/lang/tr.json +++ b/packages/translation/src/lang/tr.json @@ -1345,17 +1345,17 @@ } }, "indexerManager": { - "name": "Dizinleyici Yönetim Durumu", - "description": "Dizinleyicilerinizin durumu", + "name": "İndeksleyici Yönetim Durumu", + "description": "İndeksleyicilerinizin durumu", "option": { "openIndexerSiteInNewTab": { - "label": "Dizinleyici Sitesini Yeni Sekmede Aç" + "label": "İndeksleyici Sitesini Yeni Sekmede Aç" } }, "title": "Dizin oluşturucu yöneticisi", "testAll": "Tümünü test et", "error": { - "internalServerError": "Dizinleyicilerin durumu alınamadı" + "internalServerError": "İndeksleyicilerin durumu alınamadı" } }, "healthMonitoring": { @@ -2350,7 +2350,7 @@ "label": "RSS Beslemeleri" }, "indexerManager": { - "label": "Dizinleyici Yöneticisi" + "label": "İndeksleyici Yöneticisi" }, "healthMonitoring": { "label": "Sağlık İzleme" From 8f0945f51a9c4db03a029916f6814e2439d7c81c Mon Sep 17 00:00:00 2001 From: Thomas Camlong Date: Sun, 29 Dec 2024 02:50:25 +0900 Subject: [PATCH 09/25] chore(lang): updated translations from crowdin (#1800) * New translations en.json (German) * New translations en.json (Hebrew) * New translations en.json (Hebrew) * New translations en.json (Turkish) * New translations en.json (Chinese Simplified) --------- Co-authored-by: Meier Lukas --- packages/translation/src/lang/cn.json | 286 +++++++++---------- packages/translation/src/lang/de.json | 396 +++++++++++++------------- packages/translation/src/lang/he.json | 226 +++++++-------- packages/translation/src/lang/tr.json | 256 ++++++++--------- 4 files changed, 582 insertions(+), 582 deletions(-) diff --git a/packages/translation/src/lang/cn.json b/packages/translation/src/lang/cn.json index 3ce2bbafc..4b58ada9b 100644 --- a/packages/translation/src/lang/cn.json +++ b/packages/translation/src/lang/cn.json @@ -51,7 +51,7 @@ "title": "输入导入密钥", "field": { "token": { - "label": "令牌", + "label": "Token", "description": "输入您之前的 homarr 实例中显示的导入秘钥" } }, @@ -125,7 +125,7 @@ "field": { "email": { "label": "邮箱", - "verified": "已验证" + "verified": "" }, "username": { "label": "用户名" @@ -133,7 +133,7 @@ "password": { "label": "密码", "requirement": { - "length": "包含至少8个字符", + "length": "至少包含 8 个字符", "lowercase": "包括小写字母", "uppercase": "包含大写字母", "number": "包含数字", @@ -144,17 +144,17 @@ "label": "确认密码" }, "previousPassword": { - "label": "先前的密码" + "label": "以前的密码" }, "homeBoard": { - "label": "首页" + "label": "主面板" }, "pingIconsEnabled": { - "label": "用于ping的图标" + "label": "为ping使用图标" } }, "error": { - "usernameTaken": "用户名称已被占用" + "usernameTaken": "用户名已存在" }, "action": { "login": { @@ -167,12 +167,12 @@ }, "error": { "title": "登录失败", - "message": "您登录失败" + "message": "您的登录失败" } }, "forgotPassword": { - "label": "忘记密码?", - "description": "管理员可以使用以下命令重置您的密码:" + "label": "忘记了你的密码?", + "description": "管理员可以使用以下命令重置密码:" } }, "register": { @@ -180,11 +180,11 @@ "notification": { "success": { "title": "账号已创建", - "message": "请登录以继续" + "message": "请登录后继续" }, "error": { - "title": "创建账户失败", - "message": "无法创建您的帐户" + "title": "账户创建失败", + "message": "无法创建您的账户" } } }, @@ -271,7 +271,7 @@ }, "delete": { "label": "永久删除用户", - "description": "删除此用户及其偏好设置。这将不会删除任何看板。用户将不会收到通知。", + "description": "删除此用户(包括其偏好设置)。这不会删除任何面板。用户不会收到通知。", "confirm": "您确定要删除用户 {username} 及其偏好设置吗?" }, "select": { @@ -279,17 +279,17 @@ "notFound": "找不到用户" }, "transfer": { - "label": "选择新的所有者" + "label": "" } } }, "group": { - "title": "组", - "name": "组", - "search": "查找组", + "title": "群组", + "name": "群组", + "search": "查找群组", "field": { "name": "名称", - "members": "成员列表" + "members": "成员" }, "permission": { "admin": { @@ -310,15 +310,15 @@ }, "use-all": { "label": "使用全部应用", - "description": "允许成员将任何应用添加到他们的看板" + "description": "允许成员将任何应用添加到他们的面板" }, "modify-all": { - "label": "修改全部应用", + "label": "修改所有应用", "description": "允许成员修改全部应用" }, "full-all": { "label": "完整应用访问权限", - "description": "允许成员管理、使用和删除全部应用" + "description": "允许成员管理、使用和删除任意应用" } } }, @@ -327,19 +327,19 @@ "item": { "create": { "label": "创建面板", - "description": "允许成员创建看板" + "description": "允许成员创建面板" }, "view-all": { - "label": "查看全部面板", - "description": "允许成员查看全部看板" + "label": "查看所有面板", + "description": "允许成员查看全部面板" }, "modify-all": { - "label": "修改全部看板", - "description": "允许成员修改全部看板 (不包括访问控制和危险区)" + "label": "修改全部面板", + "description": "允许成员修改全部面板 (不包括访问控制和危险区域)" }, "full-all": { - "label": "完整的看板访问权限", - "description": "允许成员查看、修改和删除全部看板 (包括访问控制和危险区)" + "label": "完整的面板访问权限", + "description": "允许成员查看、修改和删除全部面板 (包括访问控制和危险区域)" } } }, @@ -352,15 +352,15 @@ }, "use-all": { "label": "使用全部组件", - "description": "允许成员将任何组件添加到他们的看板" + "description": "允许成员将任何组件添加到他们的面板" }, "interact-all": { - "label": "与任何组件互动", - "description": "允许成员与任何组件互动" + "label": "与任意组件进行交互", + "description": "允许成员与任意组件进行交互" }, "full-all": { - "label": "完全的组件访问权限", - "description": "允许成员管理、使用并与任何组件交互" + "label": "完整的组件访问权限", + "description": "允许成员管理、使用并与任意组件交互" } } }, @@ -368,123 +368,123 @@ "title": "媒体", "item": { "upload": { - "label": "上传媒体", - "description": "允许成员上传媒体" + "label": "", + "description": "" }, "view-all": { - "label": "查看全部媒体", - "description": "允许成员查看全部媒体" + "label": "", + "description": "" }, "full-all": { - "label": "完全的媒体访问权限", - "description": "允许成员管理和删除任何媒体" + "label": "", + "description": "" } } }, "other": { - "title": "其它", + "title": "", "item": { "view-logs": { - "label": "查看日志", - "description": "允许成员查看日志" + "label": "", + "description": "" } } }, "search-engine": { - "title": "搜索引擎", + "title": "", "item": { "create": { - "label": "创建搜索引擎", - "description": "允许成员创建搜索引擎" + "label": "", + "description": "" }, "modify-all": { - "label": "修改全部搜索引擎", - "description": "允许成员修改全部搜索引擎" + "label": "", + "description": "" }, "full-all": { - "label": "完整的搜索引擎访问权限", - "description": "允许成员管理和删除任何搜索引擎" + "label": "", + "description": "" } } } }, "memberNotice": { - "mixed": "部分成员来自外部提供者,无法在此处管理", - "external": "所有成员都来自外部提供者,无法在此处管理" + "mixed": "", + "external": "" }, "reservedNotice": { - "message": "此用户组保留供系统使用并限制部分操作 " + "message": "" }, "action": { "create": { - "label": "新建用户组", + "label": "", "notification": { "success": { - "message": "用户组已成功创建" + "message": "" }, "error": { - "message": "无法创建用户组" + "message": "" } } }, "transfer": { - "label": "转移所有权", - "description": "将此用户组的所有权转移给另一个用户。", - "confirm": "确定将用户组 {name} 的所有权转移给 {username} 吗?", + "label": "", + "description": "", + "confirm": "", "notification": { "success": { - "message": "成功将用户组 {group} 的所有权转移给 {user}" + "message": "" }, "error": { - "message": "无法转移所有权" + "message": "" } } }, "addMember": { - "label": "添加成员" + "label": "" }, "removeMember": { - "label": "删除成员", - "confirm": "确定将 {user} 从此用户组移除吗?" + "label": "", + "confirm": "" }, "delete": { - "label": "删除用户组", - "description": "用户组一旦删除就无法恢复. 请谨慎操作.", - "confirm": "确认删除用户组 {name} 吗?", + "label": "", + "description": "", + "confirm": "", "notification": { "success": { - "message": "成功删除用户组 {name}" + "message": "" }, "error": { - "message": "无法删除用户组 {name}" + "message": "" } } }, "changePermissions": { "notification": { "success": { - "title": "权限已保存", - "message": "权限保存成功" + "title": "", + "message": "" }, "error": { - "title": "权限未保存", - "message": "权限尚未保存" + "title": "", + "message": "" } } }, "update": { "notification": { "success": { - "message": "用户组 {name} 保存成功" + "message": "" }, "error": { - "message": "无法保存用户组 {name}" + "message": "" } } }, "select": { - "label": "选择用户组", - "notFound": "未找到用户组" + "label": "", + "notFound": "" } } }, @@ -493,20 +493,20 @@ "list": { "title": "应用", "noResults": { - "title": "尚无应用", - "action": "创建您的第一个应用" + "title": "", + "action": "" } }, "create": { - "title": "新建应用", + "title": "", "notification": { "success": { - "title": "创建成功", - "message": "应用已成功创建" + "title": "", + "message": "" }, "error": { "title": "创建失败", - "message": "无法创建此应用" + "message": "无法创建应用" } } }, @@ -519,7 +519,7 @@ }, "error": { "title": "无法应用更改", - "message": "无法保存此应用" + "message": "应用无法保存" } } }, @@ -528,7 +528,7 @@ "message": "确认删除应用 {name} 吗?", "notification": { "success": { - "title": "成功删除", + "title": "删除成功", "message": "应用已成功删除" }, "error": { @@ -546,13 +546,13 @@ "label": "描述" }, "url": { - "label": "Url" + "label": "" } }, "action": { "select": { - "label": "选择应用", - "notFound": "未找到应用" + "label": "", + "notFound": "" } } }, @@ -560,48 +560,48 @@ "page": { "list": { "title": "组件", - "search": "搜索组件", + "search": "", "noResults": { - "title": "尚无组件" + "title": "" } }, "create": { - "title": "新的组件 {name}", + "title": "", "notification": { "success": { - "title": "创建成功", - "message": "组件已成功创建" + "title": "", + "message": "" }, "error": { "title": "创建失败", - "message": "无法创建组件" + "message": "" } } }, "edit": { - "title": "编辑组件 {name}", + "title": "", "notification": { "success": { "title": "更改应用成功", - "message": "组件已成功保存" + "message": "" }, "error": { "title": "无法应用更改", - "message": "无法保存此组件" + "message": "" } } }, "delete": { - "title": "删除组件", - "message": "确认删除组件 {name} 吗?", + "title": "", + "message": "", "notification": { "success": { - "title": "成功删除", - "message": "组件已成功删除" + "title": "删除成功", + "message": "" }, "error": { "title": "删除失败", - "message": "无法删除组件" + "message": "" } } } @@ -611,21 +611,21 @@ "label": "名称" }, "url": { - "label": "Url" + "label": "" } }, "action": { - "create": "新建组件" + "create": "" }, "testConnection": { "action": { - "create": "测试连接并创建", - "edit": "测试连接并保存" + "create": "", + "edit": "" }, - "alertNotice": "成功建立连接后保存按钮将启用", + "alertNotice": "", "notification": { "success": { - "title": "连接成功", + "title": "", "message": "" }, "invalidUrl": { @@ -724,11 +724,11 @@ "permission": { "use": "", "interact": "", - "full": "" + "full": "完整的组件访问权限" } }, "media": { - "plural": "", + "plural": "媒体", "search": "", "field": { "name": "名称", @@ -812,15 +812,15 @@ "notification": { "create": { "success": "", - "error": "" + "error": "创建失败" }, "delete": { - "success": "", - "error": "" + "success": "删除成功", + "error": "删除失败" }, "update": { - "success": "", - "error": "" + "success": "更改应用成功", + "error": "无法应用更改" }, "transfer": { "success": "", @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "", + "name": "iFrame", "description": "嵌入互联网上的任何内容。某些网站可能限制访问。", "option": { "embedUrl": { @@ -1735,11 +1735,11 @@ "edit": { "notification": { "success": { - "title": "", + "title": "更改应用成功", "message": "" }, "error": { - "title": "", + "title": "无法应用更改", "message": "" } }, @@ -1989,7 +1989,7 @@ "notFound": { "title": "", "description": "", - "link": "查看全部面板", + "link": "查看所有面板", "notice": "" }, "homeBoard": { @@ -2030,21 +2030,21 @@ "apps": "应用", "integrations": "组件", "searchEngies": "", - "medias": "", + "medias": "媒体", "users": { "label": "用户", "items": { "manage": "管理中心", "invites": "邀请", - "groups": "" + "groups": "群组" } }, "tools": { "label": "工具", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2069,7 +2069,7 @@ "invite": "邀请", "integration": "组件", "app": "应用", - "group": "" + "group": "群组" }, "statisticLabel": { "boards": "面板", @@ -2130,7 +2130,7 @@ "title": "通用", "item": { "language": "", - "board": "", + "board": "主面板", "firstDayOfWeek": "一周的第一天", "accessibility": "无障碍服务" } @@ -2160,7 +2160,7 @@ "label": "安全" }, "groups": { - "label": "", + "label": "群组", "title": "", "description": "" }, @@ -2199,7 +2199,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "创建者" @@ -2208,7 +2208,7 @@ "label": "过期时间" }, "token": { - "label": "" + "label": "Token" } } } @@ -2223,7 +2223,7 @@ "ownerOfGroupDeleted": "" }, "members": { - "title": "", + "title": "成员", "search": "", "notFound": "" }, @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "" } } @@ -2529,7 +2529,7 @@ }, "tab": { "user": "用户", - "group": "", + "group": "群组", "inherited": "" }, "field": { @@ -2537,7 +2537,7 @@ "label": "用户" }, "group": { - "label": "" + "label": "群组" }, "permission": { "label": "" @@ -2573,7 +2573,7 @@ } }, "medias": { - "label": "" + "label": "媒体" }, "apps": { "label": "应用", @@ -2593,7 +2593,7 @@ "security": "安全", "board": "面板", "groups": { - "label": "" + "label": "群组" }, "invites": { "label": "邀请" @@ -2602,7 +2602,7 @@ "tools": { "label": "工具", "docker": { - "label": "" + "label": "Docker" }, "logs": { "label": "" @@ -2634,7 +2634,7 @@ "label": "" }, "edit": { - "label": "" + "label": "编辑应用" } }, "detail": { @@ -2749,7 +2749,7 @@ "description": "" }, "torrent": { - "name": "", + "name": "Torrents", "description": "" }, "youTube": { @@ -2840,7 +2840,7 @@ "label": "关于" }, "homeBoard": { - "label": "" + "label": "主面板" }, "preferences": { "label": "您的首选项" @@ -2866,7 +2866,7 @@ } }, "group": { - "title": "", + "title": "群组", "children": { "action": { "detail": { @@ -2900,7 +2900,7 @@ "label": "" }, "description": { - "label": "" + "label": "描述" } }, "page": { @@ -2929,11 +2929,11 @@ "title": "", "notification": { "success": { - "title": "", + "title": "更改应用成功", "message": "" }, "error": { - "title": "", + "title": "无法应用更改", "message": "" } }, diff --git a/packages/translation/src/lang/de.json b/packages/translation/src/lang/de.json index 32d1f57d4..ce6d2a3b9 100644 --- a/packages/translation/src/lang/de.json +++ b/packages/translation/src/lang/de.json @@ -3,19 +3,19 @@ "step": { "start": { "title": "Willkommen bei Homarr", - "subtitle": "Lass uns mit der Einrichtung deiner Homarr-Instanz beginnen.", - "description": "Um loszulegen, wähle bitte wie du deine Homarr Instanz einrichten möchtest.", + "subtitle": "Beginnen wir mit der Einrichtung Ihrer Homarr-Instanz.", + "description": "Um zu beginnen, wählen Sie bitte aus, wie Sie Ihre Homarr-Instanz einrichten möchten.", "action": { "scratch": "Von vorne beginnen", - "importOldmarr": "Import von Homarr vor 1.0" + "importOldmarr": "Import von Homarr vor Version 1.0" } }, "import": { - "title": "Daten importieren", - "subtitle": "Sie können Daten aus einer bestehenden Homarr-Instanz importieren.", + "title": "Importieren von Daten", + "subtitle": "Sie können Daten aus einer vorhandenen Homarr-Instanz importieren.", "dropzone": { "title": "Ziehen Sie die Zip-Datei hierher oder klicken Sie zum Durchsuchen", - "description": "Die hochgeladene Zip-Datei wird bearbeitet und Sie können wählen, was Sie importieren möchten" + "description": "Die hochgeladene Zip-Datei wird verarbeitet und Sie können auswählen, was Sie importieren möchten" }, "fileInfo": { "action": { @@ -23,8 +23,8 @@ } }, "importSettings": { - "title": "Importeinstellungen", - "description": "Importverhalten konfigurieren" + "title": "Einstellungen importieren", + "description": "Konfigurieren des Importverhaltens" }, "boardSelection": { "title": "{count} Boards gefunden", @@ -36,12 +36,12 @@ }, "summary": { "title": "Zusammenfassung des Imports", - "description": "In der folgenden Zusammenfassung sehen Sie, was importiert wird", + "description": "In der folgenden Übersicht können Sie sehen, was importiert wird", "action": { "import": "Import bestätigen und fortfahren" }, "entities": { - "apps": "Applikationen", + "apps": "Apps", "boards": "Boards", "integrations": "Integrationen", "credentialUsers": "Benutzer mit Zugangsdaten" @@ -51,28 +51,28 @@ "title": "Importschlüssel eingeben", "field": { "token": { - "label": "Schlüssel", - "description": "Gib den angezeigten Importschlüssel von der vorherigen Homarr-Instanz ein" + "label": "Token", + "description": "Gib den angezeigten Importschlüssel von der vorherigen Homarr Instanz ein" } }, "notification": { "error": { - "title": "Ungültiger Schlüssel", + "title": "Token ungültig", "message": "Der eingegebene Schlüssel ist ungültig" } } } }, "user": { - "title": "Administrator", - "subtitle": "Geben Sie die Zugangsdaten für Ihren Administrator-Benutzer an.", + "title": "Admin Benutzer", + "subtitle": "Geben Sie die Anmeldeinformationen für Ihren Administratorbenutzer an.", "notification": { "success": { "title": "Benutzer erstellt", "message": "Der Benutzer wurde erfolgreich erstellt" }, "error": { - "title": "Erstellung des Benutzers fehlgeschlagen" + "title": "Benutzer anlegen fehlgeschlagen" } } }, @@ -82,13 +82,13 @@ "form": { "name": { "label": "Gruppenname", - "description": "Name muss mit der Admin-Gruppe des externen Anbieters übereinstimmen" + "description": "Name muss mit der Admin-Gruppe der externen Anmeldeoption übereinstimmen" } } }, "settings": { "title": "Einstellungen", - "subtitle": "Server-Einstellungen konfigurieren." + "subtitle": "Server Einstellungen konfigurieren." }, "finish": { "title": "Einrichtung abschließen", @@ -96,9 +96,9 @@ "description": "Du hast die Einrichtung erfolgreich abgeschlossen. Du kannst jetzt mit der Nutzung von Homarr beginnen. Wähle deine nächste Aktion:", "action": { "goToBoard": "Gehe zu {name} Board", - "createBoard": "Erstelle dein erstes Board", - "inviteUser": "Andere Benutzer einladen", - "docs": "Lese die Dokumentation" + "createBoard": "Erstellen Sie Ihr erstes Board", + "inviteUser": "Weitere Personen einladen", + "docs": "Lesen Sie die Dokumentation" } } }, @@ -109,11 +109,11 @@ "name": "Benutzer", "page": { "login": { - "title": "Melde dich bei deinem Konto an", + "title": "Melden Sie sich in Ihrem Konto an", "subtitle": "Willkommen zurück! Bitte gib deine Zugangsdaten ein" }, "invite": { - "title": "Homarr beitreten", + "title": "Trete Homarr bei", "subtitle": "Willkommen bei Homarr! Bitte erstelle dein Konto", "description": "Du wurdest von {username} eingeladen" }, @@ -147,7 +147,7 @@ "label": "Vorheriges Passwort" }, "homeBoard": { - "label": "Home Board" + "label": "Home board" }, "pingIconsEnabled": { "label": "Symbole für Pings verwenden" @@ -216,7 +216,7 @@ "message": "Erster Wochentag erfolgreich geändert" }, "error": { - "message": "Konnte den ersten Wochentag nicht ändern" + "message": "Der erste Wochentag konnte nicht geändert werden" } } }, @@ -226,7 +226,7 @@ "message": "Ping Icons erfolgreich umgeschaltet" }, "error": { - "message": "Konnte Ping-Icons nicht umschalten" + "message": "Ping Icons konnten nicht umgeschaltet werden" } } }, @@ -242,19 +242,19 @@ }, "toLarge": { "title": "Bild ist zu groß", - "message": "Maximale Bildgröße ist {size}" + "message": "Die maximale Bildgröße beträgt {size}" } } }, "removeImage": { "label": "Bild entfernen", - "confirm": "Wollen Sie wirklich dieses Bild entfernen?", + "confirm": "Sind Sie sicher, dass Sie dieses Bild entfernen möchten?", "notification": { "success": { "message": "Bild erfolgreich entfernt" }, "error": { - "message": "Bild kann nicht entfernt werden" + "message": "Bild konnte nicht entfernt werden" } } } @@ -271,7 +271,7 @@ }, "delete": { "label": "Benutzer dauerhaft löschen", - "description": "Löscht diesen Benutzer einschließlich seiner Einstellungen. Wird keine Boards löschen. Benutzer wird nicht benachrichtigt.", + "description": "Löscht diesen Benutzer einschließlich seiner Einstellungen. Es werden keine Boards gelöscht. Der Benutzer wird nicht benachrichtigt.", "confirm": "Sind Sie sicher, dass Sie den Benutzer {username} mit seinen Einstellungen löschen möchten?" }, "select": { @@ -284,9 +284,9 @@ } }, "group": { - "title": "Benutzergruppen", - "name": "Benutzergruppe", - "search": "Finde eine Benutzergruppe", + "title": "Gruppen", + "name": "Gruppe", + "search": "Finde eine Gruppe", "field": { "name": "Name", "members": "Mitglieder" @@ -305,16 +305,16 @@ "title": "Apps", "item": { "create": { - "label": "Apps erstellen", - "description": "Mitgliedern das Erstellen von Apps erlauben" + "label": "Anwendung erstellen", + "description": "Mitgliedern erlauben, Apps zu erstellen" }, "use-all": { "label": "Alle Apps verwenden", - "description": "Mitgliedern erlauben, Apps zu ihren Boards hinzuzufügen" + "description": "Erlauben Sie Mitgliedern, beliebige Apps zu ihren Boards hinzuzufügen" }, "modify-all": { "label": "Alle Apps ändern", - "description": "Mitgliedern das Erstellen von Apps erlauben" + "description": "Mitgliedern erlauben Apps zu ändern" }, "full-all": { "label": "Voller App Zugriff", @@ -335,11 +335,11 @@ }, "modify-all": { "label": "Alle Boards ändern", - "description": "Erlaube Mitgliedern alle Boards zu ändern (beinhaltet keine Zugangskontrolle und Gefahrenbereich)" + "description": "Erlaube Mitgliedern alle Boards zu ändern (beinhaltet nicht die Zugangskontrolle und den Gefahrenbereich)" }, "full-all": { "label": "Voller Board Zugriff", - "description": "Erlaube Mitgliedern alle Boards (einschließlich Zugriffskontrolle und Gefahrenbereich) anzuzeigen, zu ändern und zu löschen" + "description": "Erlaube Mitgliedern alle Boards (einschließlich der Zugriffskontrolle und des Gefahrenbereich) anzuzeigen, zu ändern und zu löschen" } } }, @@ -347,20 +347,20 @@ "title": "Integrationen", "item": { "create": { - "label": "Integrationen erstellen", - "description": "Mitgliedern erlauben, Integrationen zu erstellen" + "label": "Integration anlegen", + "description": "Mitgliedern die Erstellung von Integrationen erlauben" }, "use-all": { "label": "Alle Integrationen nutzen", - "description": "Erlaubt Mitgliedern Integrationen zu ihren Boards hinzuzufügen" + "description": "Ermöglicht Mitgliedern, beliebige Integrationen zu ihren Boards hinzuzufügen" }, "interact-all": { - "label": "Mit jeder Integration interagieren", - "description": "Mitgliedern erlauben, mit jeder Integration zu interagieren" + "label": "Interaktion mit allen Integrationen", + "description": "Ermöglichen Sie Mitgliedern die Interaktion mit jeder Integration" }, "full-all": { "label": "Voller Zugriff auf Integrationen", - "description": "Erlaube Mitgliedern jede Integration zu verwalten, zu nutzen und zu interagieren" + "description": "Erlaubt Mitgliedern jegliche Integration zu verwalten, nutzen und interagieren" } } }, @@ -368,16 +368,16 @@ "title": "Medien", "item": { "upload": { - "label": "Medien Hochladen", - "description": "Erlaube Mitgliedern Medien hochzuladen" + "label": "Medien hochladen", + "description": "Erlaubt Mitgliedern Medien hochzuladen" }, "view-all": { "label": "Alle Medien anzeigen", "description": "Erlaubt Mitgliedern alle Medien anzusehen" }, "full-all": { - "label": "Vollständiger Medienzugriff", - "description": "Mitgliedern das Verwalten und Löschen von Medien erlauben" + "label": "Voller Zugriff auf alle Medien", + "description": "Erlaubt Mitglieder die Verwaltung und das Entfernen jeglicher Medien" } } }, @@ -399,10 +399,10 @@ }, "modify-all": { "label": "Alle Suchmaschinen ändern", - "description": "Mitgliedern erlauben alle Suchmaschinen zu ändern" + "description": "Erlaubt es den Mitgliedern die Suchmaschinen zu ändern" }, "full-all": { - "label": "Voller Zugriff auf Suchmaschinen", + "label": "Vollständiger Suchmaschinenzugriff", "description": "Mitgliedern das Verwalten und Löschen von Suchmaschinen erlauben" } } @@ -413,7 +413,7 @@ "external": "Alle Mitglieder haben externe Anmeldeoptionen genutzt und können von hier aus nicht verwaltet werden" }, "reservedNotice": { - "message": "Diese Gruppe ist für die Systemnutzung reserviert und beschränkt einige Aktionen. " + "message": "Diese Gruppe ist für die Systemnutzung reserviert und schränkt einige Aktionen ein. " }, "action": { "create": { @@ -428,7 +428,7 @@ } }, "transfer": { - "label": "Eigentum übertragen", + "label": "Übertrage Eigentum", "description": "Übertrage den Eigentümer dieser Gruppe an einen anderen Benutzer.", "confirm": "Bist du sicher, dass du das Eigentum für die Gruppe {name} an {username} übertragen möchtest?", "notification": { @@ -436,20 +436,20 @@ "message": "Gruppe {group} erfolgreich an {user} übertragen" }, "error": { - "message": "Übertragung des Eigentums nicht möglich" + "message": "Eigentumsübertragung nicht möglich" } } }, "addMember": { - "label": "Mitglied hinzufügen" + "label": "Benutzer hinzufügen" }, "removeMember": { - "label": "Mitglied entfernen", + "label": "Benutzer entfernen", "confirm": "Bist du sicher, dass du {user} aus dieser Gruppe entfernen möchtest?" }, "delete": { "label": "Gruppe löschen", - "description": "Sobald Sie einen Arbeitsbereich löschen, gibt es keinen Weg sie wiederherzustellen. Bitte seien Sie sich dessen bewusst.", + "description": "Sobald Sie eine Gruppe gelöscht haben, gibt es kein Zurück mehr. Bitte seien Sie sich dessen bewusst.", "confirm": "Sind Sie sicher, dass Sie die Gruppe {name} löschen möchten?", "notification": { "success": { @@ -463,7 +463,7 @@ "changePermissions": { "notification": { "success": { - "title": "Berechtigungen gespeichert", + "title": "Die Berechtigungen wurden gespeichert", "message": "Berechtigungen wurden erfolgreich gespeichert" }, "error": { @@ -493,7 +493,7 @@ "list": { "title": "Apps", "noResults": { - "title": "Noch keine Apps vorhanden", + "title": "Es gibt noch keine Apps", "action": "Erstelle deine erste App" } }, @@ -506,7 +506,7 @@ }, "error": { "title": "Erstellung fehlgeschlagen", - "message": "Die App konnte nicht angelegt werden" + "message": "Die App konnte nicht erstellt werden" } } }, @@ -528,12 +528,12 @@ "message": "Sind Sie sicher, dass Sie die App {name} löschen möchten?", "notification": { "success": { - "title": "Löschen erfolgreich", + "title": "Erfolgreich gellöscht", "message": "Die App wurde erfolgreich gelöscht" }, "error": { "title": "Löschen fehlgeschlagen", - "message": "App konnte nicht gelöscht werden" + "message": "Die App konnte nicht gelöscht werden" } } } @@ -562,7 +562,7 @@ "title": "Integrationen", "search": "Integrationen durchsuchen", "noResults": { - "title": "Es gibt noch keine Integrationen" + "title": "Es wurden noch keine Integrationen erstellt" } }, "create": { @@ -579,7 +579,7 @@ } }, "edit": { - "title": "{name} Integration bearbeiten", + "title": "Neue {name} Integration", "notification": { "success": { "title": "Änderungen erfolgreich angewendet", @@ -596,8 +596,8 @@ "message": "Sind Sie sicher, dass Sie die Integration {name} löschen möchten?", "notification": { "success": { - "title": "Löschen erfolgreich", - "message": "Die Integration wurde erfolgreich erstellt" + "title": "Erfolgreich gellöscht", + "message": "Die Integration wurde erfolgreich gelöscht" }, "error": { "title": "Löschen fehlgeschlagen", @@ -630,26 +630,26 @@ }, "invalidUrl": { "title": "Ungültige URL", - "message": "Die Adresse ist ungültig" + "message": "Die URL ist ungültig" }, "secretNotDefined": { - "title": "Fehlende Anmeldedaten", - "message": "Nicht alle Zugangsdaten wurden angegeben" + "title": "Fehlende Anmeldeinformationen", + "message": "Es wurden nicht alle Zugangsdaten angegeben" }, "invalidCredentials": { "title": "Ungültige Zugangsdaten", "message": "Die Zugangsdaten sind ungültig" }, "commonError": { - "title": "Verbindungsaufbau fehlgeschlagen", + "title": "Verbindung fehlgeschlagen", "message": "Die Verbindung konnte nicht hergestellt werden" }, "badRequest": { - "title": "Fehlerhafte Anfrage", + "title": "Ungültige Anfrage", "message": "Die Anfrage war fehlerhaft" }, "unauthorized": { - "title": "Nicht autorisiert", + "title": "Unberechtigt", "message": "Wahrscheinlich falsche Anmeldeinformationen" }, "forbidden": { @@ -658,7 +658,7 @@ }, "notFound": { "title": "Nicht gefunden", - "message": "Wahrscheinlich falsche URL oder Pfad" + "message": "Wahrscheinlich falsche URL oder falscher Pfad" }, "internalServerError": { "title": "Interner Serverfehler", @@ -673,38 +673,38 @@ "message": "Die Verbindung wurde abgebrochen" }, "domainNotFound": { - "title": "Domain nicht gefunden", + "title": "Die Domain konnte nicht gefunden werden", "message": "Die Domain konnte nicht gefunden werden" }, "connectionRefused": { - "title": "Verbindung verweigert", + "title": "Verbindung abgelehnt", "message": "Die Verbindung wurde abgelehnt" }, "invalidJson": { "title": "Ungültiges JSON", - "message": "Die Antwort war ungültig JSON" + "message": "Die Antwort war kein gültiges JSON" }, "wrongPath": { - "title": "Falscher Pfad", - "message": "Der Pfad ist vermutlich nicht korrekt" + "title": "Ungültiger Pfad", + "message": "Der Pfad ist wahrscheinlich nicht korrekt" } } }, "secrets": { - "title": "Secrets", - "lastUpdated": "Zuletzt aktualisiert am {date}", + "title": "Geheimnisse", + "lastUpdated": "Zuletzt aktualisiert {date}", "notSet": { - "label": "Kein Wert festgelegt", - "tooltip": "Das erforderliche Secret wurde noch nicht festgelegt" + "label": "Kein Wert angegeben", + "tooltip": "Dieses erforderliche Geheimnis wurde noch nicht festgelegt" }, - "secureNotice": "Das Secret kann nicht nach der Erstellung abgerufen werden", + "secureNotice": "Dieses Geheimnis kann nach der Erstellung nicht mehr abgerufen werden", "reset": { - "title": "Secret zurücksetzen", + "title": "Geheimnis zurücksetzen", "message": "Bist du sicher, dass du dieses Secret zurücksetzen möchtest?" }, "noSecretsRequired": { - "segmentTitle": "Keine Secrets", - "text": "Kein Secret für diese Integration erforderlich" + "segmentTitle": "Keine Geheimnisse", + "text": "Für diese Integration sind keine Geheimnisse erforderlich" }, "kind": { "username": { @@ -713,7 +713,7 @@ }, "apiKey": { "label": "API Schlüssel", - "newLabel": "neuer API Schlüssel" + "newLabel": "Neuer API Schlüssel" }, "password": { "label": "Passwort", @@ -729,7 +729,7 @@ }, "media": { "plural": "Medien", - "search": "Medien suchen", + "search": "Medium finden", "field": { "name": "Name", "size": "Größe", @@ -737,7 +737,7 @@ }, "action": { "upload": { - "label": "Medien Hochladen", + "label": "Medium hochladen", "file": "Datei auswählen", "notification": { "success": { @@ -750,18 +750,18 @@ }, "delete": { "label": "Medium löschen", - "description": "Sind Sie sicher, dass Sie die Medien löschen möchten?", + "description": "Möchten Sie das Medium wirklich löschen?", "notification": { "success": { "message": "Das Medium wurde erfolgreich gelöscht" }, "error": { - "message": "Die Medien konnten nicht gelöscht werden" + "message": "Das Medium konnte nicht gelöscht werden" } } }, "copy": { - "label": "URL in Zwischenablage kopieren" + "label": "URL kopieren" } } }, @@ -774,7 +774,7 @@ "backToOverview": "Zurück zur Übersicht", "create": "Erstellen", "edit": "Bearbeiten", - "import": "Import", + "import": "Importieren", "insert": "Einfügen", "remove": "Entfernen", "save": "Speichern", @@ -786,15 +786,15 @@ "continue": "Fortfahren", "previous": "Zurück", "next": "Weiter", - "checkoutDocs": "Die Dokumentation ansehen", - "checkLogs": "Logs für weitere Details prüfen", + "checkoutDocs": "Sieh dir die Dokumentation an", + "checkLogs": "Überprüfen Sie die Logs für weitere Details", "tryAgain": "Erneut versuchen", - "loading": "Wird geladen" + "loading": "Wird geladen..." }, - "here": "Hier", + "here": "hier", "iconPicker": { "label": "Icon URL", - "header": "Geben Sie Namen oder Objekte ein, um nach Symbolen zu filtern... Homarr sucht nach {countIcons} Icons für Sie." + "header": "Geben Sie den Namen oder das Objekte ein, um nach Symbolen zu filtern ... Homarr durchsucht für Sie {countIcons} Symbole." }, "colorScheme": { "options": { @@ -815,7 +815,7 @@ "error": "Erstellung fehlgeschlagen" }, "delete": { - "success": "Löschen erfolgreich", + "success": "Erfolgreich gellöscht", "error": "Löschen fehlgeschlagen" }, "update": { @@ -828,7 +828,7 @@ } }, "multiSelect": { - "placeholder": "Wählen Sie einen oder mehrere Werte" + "placeholder": "Wählen Sie einen oder mehrere Werte aus" }, "multiText": { "placeholder": "Weitere Werte hinzufügen", @@ -850,14 +850,14 @@ "login": "Anmelden", "homeBoard": "Ihr Home Board", "loggedOut": "Abgemeldet", - "updateAvailable": "{countUpdates} Updates verfügbar: {tag}" + "updateAvailable": "{countUpdates} Aktualisierungen verfügbar: {tag}" } }, - "dangerZone": "Gefahrenbereich", + "dangerZone": "Gefahrenzone", "noResults": "Die Suche ergab keine Treffer", "preview": { - "show": "Vorschau ansehen", - "hide": "Vorschau ausblenden" + "show": "Vorschau anzeigen", + "hide": "Vorschau verbergen" }, "zod": { "errors": { @@ -881,8 +881,8 @@ "passwordsDoNotMatch": "Passwörter stimmen nicht überein", "passwordRequirements": "Passwort erfüllt nicht alle Anforderungen", "boardAlreadyExists": "Ein Board mit diesem Namen existiert bereits", - "invalidFileType": "Ungültiger Dateityp, erwartete {expected}", - "fileTooLarge": "Datei ist zu groß, maximale Größe ist {maxSize}", + "invalidFileType": "Ungültiger Dateityp, erwarte {expected}", + "fileTooLarge": "Die Datei ist zu groß. Die maximale Größe beträgt {maxSize}", "invalidConfiguration": "Ungültige Konfiguration", "groupNameTaken": "Gruppenname bereits vergeben" } @@ -903,7 +903,7 @@ "category": { "field": { "name": { - "label": "" + "label": "Name" } }, "action": { @@ -992,7 +992,7 @@ }, "widget": { "app": { - "name": "", + "name": "App", "description": "Bettet eine App in das Board ein.", "option": { "appId": { @@ -1029,7 +1029,7 @@ "label": "Ansicht", "option": { "row": { - "label": "" + "label": "Horizontal" }, "column": { "label": "Vertikal" @@ -1047,7 +1047,7 @@ }, "dnsHoleSummary": { "name": "", - "description": "Zeigt die Zusammenfassung deines DNS Holes an", + "description": "", "option": { "layout": { "label": "Ansicht", @@ -1059,27 +1059,27 @@ "label": "Vertikal" }, "grid": { - "label": "Raster" + "label": "" } } }, "usePiHoleColors": { - "label": "Pi Hole Farben verwenden" + "label": "" } }, "error": { - "internalServerError": "Fehler beim Abrufen der DNS Hole Zusammenfassung", - "integrationsDisconnected": "Keine Daten verfügbar, alle Integrationen getrennt" + "internalServerError": "", + "integrationsDisconnected": "" }, "data": { "adsBlockedToday": "Heute blockiert", "adsBlockedTodayPercentage": "Heute blockiert", - "dnsQueriesToday": "Abfragen heute", - "domainsBeingBlocked": "Domänen auf der Sperrliste" + "dnsQueriesToday": "Heutige Anfragen", + "domainsBeingBlocked": "" } }, "dnsHoleControls": { - "name": "DNS Hole Steuerung", + "name": "", "description": "Steuern Sie PiHole oder AdGuard von Ihrem Dashboard aus", "option": { "layout": { @@ -1092,26 +1092,26 @@ "label": "Vertikal" }, "grid": { - "label": "Raster" + "label": "" } } }, "showToggleAllButtons": { - "label": "Alle Schaltflächen anzeigen" + "label": "" } }, "error": { - "internalServerError": "Fehler bei der Kontrolle des DNS Holes" + "internalServerError": "" }, "controls": { - "enableAll": "Alle aktivieren", - "disableAll": "Alle deaktivieren", - "setTimer": "Timer setzen", - "set": "Übernehmen", + "enableAll": "", + "disableAll": "", + "setTimer": "", + "set": "Speichern", "enabled": "Aktiviert", "disabled": "Deaktiviert", - "processing": "Wird verarbeitet", - "disconnected": "Verbindung getrennt", + "processing": "", + "disconnected": "", "hours": "Stunden", "minutes": "Minuten", "unlimited": "Freilassen für unbegrenzt" @@ -1122,8 +1122,8 @@ "description": "Zeigt das aktuelle Datum und die Uhrzeit an.", "option": { "customTitleToggle": { - "label": "Eigene Titel/Stadt Anzeige", - "description": "Zeige einen benutzerdefinierten Titel oder den Namen der Stadt oder des Landes oben auf der Uhr." + "label": "Benutzerdefinierte Titel-/Stadtanzeige", + "description": "Zeigen Sie einen individuellen Titel oder den Namen der Stadt/des Landes oben auf der Uhr." }, "customTitle": { "label": "Titel" @@ -1140,7 +1140,7 @@ }, "timezone": { "label": "Zeitzone", - "description": "Wählen Sie die Zeitzone nach dem IANA-Standard" + "description": "Wählen Sie die Zeitzone gemäß dem IANA-Standard" }, "showDate": { "label": "Datum anzeigen" @@ -1183,7 +1183,7 @@ "checkList": "Checkliste", "increaseIndent": "Einzug vergrößern", "decreaseIndent": "Einzug verkleinern", - "link": "Verknüpfung", + "link": "Link", "unlink": "Link entfernen", "image": "Bild einbetten", "addTable": "Tabelle hinzufügen", @@ -1251,7 +1251,7 @@ }, "smartHome-entityState": { "name": "Zustand der Entität", - "description": "Zeigt den Status einer Entität an und schaltet ihn optional ein", + "description": "Den Status einer Entität anzeigen und optional umschalten", "option": { "entityId": { "label": "Eintrag-ID" @@ -1269,7 +1269,7 @@ }, "smartHome-executeAutomation": { "name": "Automatisierung ausführen", - "description": "Automatisierung mit einem Klick auslösen", + "description": "Lösen Sie eine Automatisierung mit einem Klick aus", "option": { "displayName": { "label": "Anzeigename" @@ -1298,7 +1298,7 @@ "label": "Start von" }, "filterFutureMonths": { - "label": "Endet am" + "label": "Endet um" } } }, @@ -1345,14 +1345,14 @@ } }, "indexerManager": { - "name": "Status des Index Managers", + "name": "Status des Indexer-Managers", "description": "Status des Indexer", "option": { "openIndexerSiteInNewTab": { "label": "Indexer Seite in neuem Tab öffnen" } }, - "title": "Index Manager", + "title": "Indexer-Manager", "testAll": "Alle testen", "error": { "internalServerError": "Fehler beim Abrufen des Indexer Status" @@ -1380,8 +1380,8 @@ "processor": "Prozessor: {cpuModelName}", "memory": "Speicher: {memory}GiB", "memoryAvailable": "Verfügbar: {memoryAvailable} GiB ({percent}%)", - "version": "", - "uptime": "Betriebszeit: {days} Tage, {hours} Stunden, {minutes} Minuten", + "version": "Version: {version}", + "uptime": "Laufzeit: {months} Monate, {days} Tage, {hours} Stunden, {minutes} Minuten", "loadAverage": "Durchschnittliche Last:", "minute": "1 Minute", "minutes": "{count} Minuten", @@ -1401,7 +1401,7 @@ "longitude": "", "disabledTooltip": "", "unknownLocation": "", - "search": "Suche", + "search": "Suchen", "table": { "header": { "city": "", @@ -1436,7 +1436,7 @@ "description": "Einbetten eines Videostreams oder eines Videos von einer Kamera oder einer Website", "option": { "feedUrl": { - "label": "Feed URL" + "label": "Feed-URL" }, "hasAutoPlay": { "label": "Automatische Wiedergabe", @@ -1511,18 +1511,18 @@ "detailsTitle": "" }, "downSpeed": { - "columnTitle": "", + "columnTitle": "Down", "detailsTitle": "Download Geschwindigkeit" }, "index": { - "columnTitle": "#", - "detailsTitle": "Aktueller Index im Client" + "columnTitle": "", + "detailsTitle": "" }, "id": { "columnTitle": "" }, "integration": { - "columnTitle": "" + "columnTitle": "Integration" }, "name": { "columnTitle": "" @@ -1560,12 +1560,12 @@ "detailsTitle": "" }, "upSpeed": { - "columnTitle": "", + "columnTitle": "Up", "detailsTitle": "" } }, "states": { - "downloading": "Wird heruntergeladen", + "downloading": "Herunterladen", "queued": "In der Warteschlange", "paused": "Pausiert", "completed": "Abgeschlossen", @@ -1627,18 +1627,18 @@ "option": {}, "titles": { "stats": { - "main": "Medien Statistiken", + "main": "Medien-Statistiken", "approved": "Bereits genehmigt", "pending": "Ausstehende Freigaben", "processing": "", "declined": "", "available": "", - "tv": "TV Anfragen", - "movie": "Film Anfragen", + "tv": "TV-Anfragen", + "movie": "Film-Anfragen", "total": "Gesamt" }, "users": { - "main": "Top Nutzer", + "main": "Top-Nutzer", "requests": "" } } @@ -1655,11 +1655,11 @@ } }, "tab": { - "workers": "", + "workers": "Workers", "queue": "Warteschlange", "statistics": "Statistiken" }, - "currentIndex": "{start}-{end} von {total}", + "currentIndex": "", "healthCheck": { "title": "", "queued": "In der Warteschlange", @@ -1677,7 +1677,7 @@ "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "", + "videoCodecs": "Codecs", "videoContainers": "Container", "videoResolutions": "Auflösungen" }, @@ -1766,7 +1766,7 @@ "invalidError": "" }, "apps": { - "label": "", + "label": "Apps", "avoidDuplicates": { "label": "", "description": "" @@ -1889,10 +1889,10 @@ "label": "" }, "name": { - "label": "" + "label": "Name" }, "isPublic": { - "label": "Öffentlich", + "label": "Öffentlich sichtbar", "description": "" } }, @@ -1935,7 +1935,7 @@ } }, "dangerZone": { - "title": "Gefahrenbereich", + "title": "Gefahrenzone", "action": { "rename": { "label": "", @@ -2026,8 +2026,8 @@ "navbar": { "items": { "home": "Startseite", - "boards": "", - "apps": "", + "boards": "Boards", + "apps": "Apps", "integrations": "Integrationen", "searchEngies": "Suchmaschinen", "medias": "Medien", @@ -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": "Integrationen", - "app": "", + "app": "Apps", "group": "Gruppen" }, "statisticLabel": { - "boards": "", + "boards": "Boards", "resources": "", "authentication": "", "authorization": "" @@ -2113,7 +2113,7 @@ "createBoard": { "field": { "name": { - "label": "" + "label": "Name" } } } @@ -2130,7 +2130,7 @@ "title": "Allgemein", "item": { "language": "", - "board": "", + "board": "Home board", "firstDayOfWeek": "Erster Tag der Woche", "accessibility": "Barrierefreiheit" } @@ -2139,7 +2139,7 @@ "title": "Sicherheit" }, "board": { - "title": "" + "title": "Boards" } }, "list": { @@ -2184,7 +2184,7 @@ "action": { "new": { "title": "", - "description": "Nach Ablauf der Frist ist die Einladung nicht mehr gültig und der Empfänger der Einladung kann kein Konto mehr erstellen." + "description": "Nach Ablauf der Frist ist eine Einladung nicht mehr gültig und der Empfänger der Einladung kann kein Konto erstellen." }, "copy": { "title": "", @@ -2199,7 +2199,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Ersteller" @@ -2208,7 +2208,7 @@ "label": "Ablaufdatum" }, "token": { - "label": "" + "label": "Token" } } } @@ -2266,27 +2266,27 @@ } }, "crawlingAndIndexing": { - "title": "Suche und Indexiere", - "warning": "Das Aktivieren oder Deaktivieren von Einstellungen hier wird schwerwiegende Auswirkungen haben, wie Suchmaschinen Ihre Seite suchen und indizieren. Jede Einstellung startet eine Anforderung und es ist die Aufgabe des Crawlers, diese Einstellungen zu übernehmen. Änderungen können mehrere Tage oder Wochen dauern. Einige Einstellungen können Suchmaschinenspezifisch sein.", + "title": "", + "warning": "", "noIndex": { - "title": "Kein Index", - "text": "Die Webseite nicht in Suchmaschinen indizieren und in keinem Suchergebnis anzeigen" + "title": "", + "text": "" }, "noFollow": { - "title": "Keine Folgen", - "text": "Folgen Sie keine Links während der Indexierung. Deaktivieren kann dazu führen, dass Crawler versuchen, allen Links auf Homarr zu folgen." + "title": "", + "text": "" }, "noTranslate": { - "title": "Nicht Übersetzen", - "text": "Wenn die Sprache der Seite wahrscheinlich nicht zu lesen ist wird der Benutzer höchstwahrscheinlich wollen das Google einen Übersetzungslink in den Suchergebnissen zeigt" + "title": "", + "text": "" }, "noSiteLinksSearchBox": { - "title": "Kein Suchfeld für Seitenlinks", - "text": "Google baut ein Suchfeld mit den gecrawlten Links zusammen mit anderen direkten Links auf. Durch das Aktivieren dieser Option wird Google aufgefordert, dieses Feld zu deaktivieren." + "title": "", + "text": "" } }, "board": { - "title": "", + "title": "Boards", "homeBoard": { "label": "", "description": "" @@ -2315,7 +2315,7 @@ "title": "", "status": { "idle": "", - "running": "Wird ausgeführt", + "running": "Aktiv", "error": "Fehler" }, "job": { @@ -2350,7 +2350,7 @@ "label": "" }, "indexerManager": { - "label": "Index Manager" + "label": "" }, "healthMonitoring": { "label": "" @@ -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": "Integrationen", @@ -2576,7 +2576,7 @@ "label": "Medien" }, "apps": { - "label": "", + "label": "Apps", "new": { "label": "" }, @@ -2591,7 +2591,7 @@ }, "general": "Allgemein", "security": "Sicherheit", - "board": "", + "board": "Boards", "groups": { "label": "Gruppen" }, @@ -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" } } } @@ -2840,7 +2840,7 @@ "label": "Über" }, "homeBoard": { - "label": "" + "label": "Home board" }, "preferences": { "label": "Ihre Einstellungen" @@ -2891,7 +2891,7 @@ "search": "", "field": { "name": { - "label": "" + "label": "Name" }, "short": { "label": "" diff --git a/packages/translation/src/lang/he.json b/packages/translation/src/lang/he.json index 169601a43..23c4ed947 100644 --- a/packages/translation/src/lang/he.json +++ b/packages/translation/src/lang/he.json @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "", + "name": "iFrame", "description": "הטמע כל תוכן מהאינטרנט. חלק מהאתרים עשויים להגביל את הגישה.", "option": { "embedUrl": { @@ -1381,7 +1381,7 @@ "memory": "זיכרון: {memory}GiB", "memoryAvailable": "זמין: {memoryAvailable}GiB ({percent}%)", "version": "גרסה: {version}", - "uptime": "", + "uptime": "זמן פעילות: {months} חודשים, {days} ימים, {hours} שעות, {minutes} דקות", "loadAverage": "ממוצע עומס:", "minute": "דקה אחת", "minutes": "{count} דקות", @@ -1440,7 +1440,7 @@ }, "hasAutoPlay": { "label": "הפעלה אוטומטית", - "description": "" + "description": "הפעלה אוטומטית פועלת רק כשהיא מושתקת בגלל הגבלות הדפדפן" }, "isMuted": { "label": "מושתק" @@ -1515,8 +1515,8 @@ "detailsTitle": "מהירות הורדה" }, "index": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "#", + "detailsTitle": "מדד נוכחי בתוך הלקוח" }, "id": { "columnTitle": "מזהה" @@ -1574,33 +1574,33 @@ "leeching": "", "stalled": "", "unknown": "לא ידוע", - "seeding": "" + "seeding": "זריעה" }, "actions": { "clients": { - "modalTitle": "", - "pause": "", - "resume": "" + "modalTitle": "רשימת לקוחות הורדה", + "pause": "השהה את כל הלקוחות/פריטים", + "resume": "המשך כל הלקוחות/פריטים" }, "client": { - "pause": "", - "resume": "" + "pause": "השהה לקוח", + "resume": "המשך לקוח" }, "item": { - "pause": "", - "resume": "", + "pause": "השהה פריט", + "resume": "המשך פריט", "delete": { - "title": "", + "title": "מחק פריט", "modalTitle": "", "entry": "", "entryAndFiles": "" } } }, - "globalRatio": "" + "globalRatio": "יחס גלובלי" }, "mediaRequests-requestList": { - "name": "", + "name": "רשימת בקשות מדיה", "description": "ראה רשימה של כל בקשות המדיה ממופע Overseerr או Jellyseerr שלך", "option": { "linksTargetNewTab": { @@ -1608,21 +1608,21 @@ } }, "pending": { - "approve": "", - "approving": "", - "decline": "" + "approve": "אשר בקשה", + "approving": "מאשר את הבקשה...", + "decline": "דחה בקשה" }, "availability": { "unknown": "לא ידוע", - "pending": "", + "pending": "בהמתנה", "processing": "מעבד", "partiallyAvailable": "חלקי", "available": "זמין" }, - "toBeDetermined": "" + "toBeDetermined": "ייקבע בהמשך" }, "mediaRequests-requestStats": { - "name": "", + "name": "מצב בקשות מדיה", "description": "סטטיסטיקה לגבי בקשות המדיה", "option": {}, "titles": { @@ -1630,28 +1630,28 @@ "main": "סטטיסטיקות מדיה", "approved": "כבר אושר", "pending": "ממתין לאישור", - "processing": "", - "declined": "", - "available": "", + "processing": "בעיבוד", + "declined": "נדחה כבר", + "available": "כבר זמין", "tv": "בקשות סדרות", "movie": "בקשות סרטים", "total": "סך הכל" }, "users": { "main": "משתמשים מובילים", - "requests": "" + "requests": "בקשות" } } }, "mediaTranscoding": { - "name": "", - "description": "", + "name": "המרת קידוד מדיה", + "description": "סטטיסטיקה, תור נוכחי וסטטוס עיבוד של המרת המדיה שלך", "option": { "defaultView": { "label": "תצוגת ברירת מחדל" }, "queuePageSize": { - "label": "" + "label": "גודל העמוד בתור" } }, "tab": { @@ -1659,9 +1659,9 @@ "queue": "תור", "statistics": "סטָטִיסטִיקָה" }, - "currentIndex": "", + "currentIndex": "{start}-{end} מתוך {total}", "healthCheck": { - "title": "", + "title": "בדיקת תקינות", "queued": "בתור", "status": { "healthy": "בָּרִיא", @@ -1672,11 +1672,11 @@ "statistics": { "empty": "ריק", "transcodes": "קידודים", - "transcodesCount": "", - "healthChecksCount": "", - "filesCount": "", - "savedSpace": "", - "healthChecks": "", + "transcodesCount": "קידודים: {value}", + "healthChecksCount": "בדיקות בריאות: {value}", + "filesCount": "קבצים: {value}", + "savedSpace": "שטח שמור: {value}", + "healthChecks": "בדיקות בריאות", "videoCodecs": "קודקים", "videoContainers": "מיכלים", "videoResolutions": "רזולוציות" @@ -1688,7 +1688,7 @@ "eta": "זמן סיום משוער", "progress": "התקדמות", "transcode": "קידוד", - "healthCheck": "" + "healthCheck": "בדיקת תקינות" } }, "queue": { @@ -1697,37 +1697,37 @@ "file": "קוֹבֶץ", "size": "גודל", "transcode": "קידוד", - "healthCheck": "" + "healthCheck": "בדיקת תקינות" } } } }, "rssFeed": { - "name": "", - "description": "", + "name": "הזנות RSS", + "description": "מעקב והצג עדכוני RSS, ATOM או JSON גנרי אחד או יותר", "option": { "feedUrls": { - "label": "" + "label": "כתובות אתרים של הזנה" }, "enableRtl": { - "label": "" + "label": "אפשר RTL" }, "textLinesClamp": { - "label": "" + "label": "חיתוך שורות טקסט" }, "maximumAmountPosts": { - "label": "" + "label": "הגבלת כמות הודעות" } } } }, "widgetPreview": { "toggle": { - "enabled": "", - "disabled": "" + "enabled": "מצב עריכה מופעל", + "disabled": "מצב עריכה מושבת" }, "dimensions": { - "title": "" + "title": "שנה מידות" } }, "board": { @@ -1736,52 +1736,52 @@ "notification": { "success": { "title": "השינויים הוחלו בהצלחה", - "message": "" + "message": "הלוח נשמר בהצלחה" }, "error": { "title": "לא ניתן להחיל שינויים", - "message": "" + "message": "לא ניתן היה לשמור את הלוח" } }, "confirmLeave": { - "title": "", - "message": "" + "title": "שינויים שלא נשמרו", + "message": "יש לך שינויים שלא נשמרו, האם אתה בטוח שברצונך לעזוב?" } }, "oldImport": { - "label": "", + "label": "יבוא מ- homarr לפני 1.0.0", "notification": { "success": { - "title": "", - "message": "" + "title": "הייבוא הצליח", + "message": "הלוח יובא בהצלחה" }, "error": { - "title": "", - "message": "" + "title": "הייבוא נכשל", + "message": "לא ניתן לייבא את הלוח, בדוק את לוגים לפרטים נוספים" } }, "form": { "file": { - "label": "", - "invalidError": "" + "label": "בחר קובץ JSON", + "invalidError": "קובץ תצורה לא חוקי" }, "apps": { "label": "אפליקציות", "avoidDuplicates": { - "label": "", - "description": "" + "label": "הימנע מכפילויות", + "description": "מתעלם מאפליקציות שבהן כבר קיימת אפליקציה עם אותה כתובת רשת" }, "onlyImportApps": { - "label": "", - "description": "" + "label": "ייבוא רק אפליקציות", + "description": "רק מוסיף את האפליקציות, יש ליצור מחדש את הלוח באופן ידני" } }, "name": { - "label": "" + "label": "שם הלוח" }, "screenSize": { - "label": "", - "description": "", + "label": "גודל מסך", + "description": "בגרסאות שלפני 1.0 היו קיימים שלושה מצבים שונים, כך שניתן היה לבחור את כמות העמודות עבור כל גודל מסך.", "option": { "sm": "קטן", "md": "בינוני", @@ -1789,16 +1789,16 @@ } }, "sidebarBehavior": { - "label": "", - "description": "", + "label": "התנהגות סרגל הצד", + "description": "סרגלי צד הוסרו ב- 1.0, אתה יכול לבחור מה צריך לקרות עם הפריטים שבתוכם.", "option": { "lastSection": { "label": "", - "description": "" + "description": "סרגל צד יוצג מתחת לקטע האחרון" }, "removeItems": { - "label": "", - "description": "" + "label": "הסרת פריטים", + "description": "פריטים הכלולים בסרגל הצד יוסרו" } } } @@ -1807,51 +1807,51 @@ }, "field": { "pageTitle": { - "label": "" + "label": "כותרת העמוד" }, "metaTitle": { - "label": "" + "label": "כותרת מטא" }, "logoImageUrl": { - "label": "" + "label": "כתובת אתר של תמונת לוגו" }, "faviconImageUrl": { - "label": "" + "label": "כתובת אתר של תמונת Favicon" }, "backgroundImageUrl": { - "label": "" + "label": "כתובת אתר של תמונת רקע" }, "backgroundImageAttachment": { "label": "צירוף תמונת רקע", "option": { "fixed": { - "label": "", - "description": "" + "label": "קבוע", + "description": "הרקע נשאר באותו מיקום." }, "scroll": { - "label": "", - "description": "" + "label": "גלילה", + "description": "גלילה ברקע עם העכבר." } } }, "backgroundImageRepeat": { - "label": "", + "label": "חזרה על תמונת רקע", "option": { "repeat": { - "label": "", - "description": "" + "label": "חזור", + "description": "התמונה חוזרת על עצמה ככל הנדרש כדי לכסות את כל אזור ציור תמונת הרקע." }, "no-repeat": { - "label": "", - "description": "" + "label": "ללא חזרה", + "description": "התמונה אינה חוזרת על עצמה וייתכן שלא תמלא את כל החלל." }, "repeat-x": { - "label": "", - "description": "" + "label": "חזור על ציר X", + "description": "זהה ל'חזרה' אבל רק על הציר האופקי." }, "repeat-y": { - "label": "", - "description": "" + "label": "חזור על ציר Y", + "description": "זהה ל'חזרה' אבל רק על הציר האנכי." } } }, @@ -1859,12 +1859,12 @@ "label": "גודל תמונת רקע", "option": { "cover": { - "label": "", - "description": "" + "label": "כיסוי", + "description": "קנה קנה מידה קטן ככל האפשר של התמונה כדי לכסות את כל החלון על ידי חיתוך שטח מוגזם." }, "contain": { - "label": "", - "description": "" + "label": "מכיל", + "description": "קנה מידה גדול ככל האפשר של התמונה בתוך המיכל שלה מבלי לחתוך או למתוח את התמונה." } } }, @@ -1875,36 +1875,36 @@ "label": "צבע משני" }, "opacity": { - "label": "" + "label": "אטימות" }, "customCss": { - "label": "", + "label": "עיצוב מותאם אישית עבור הלוח הזה", "description": "יתר על כן, התאם את לוח המחוונים שלך באמצעות CSS, מומלץ רק למשתמשים מנוסים", "customClassesAlert": { - "title": "", - "description": "" + "title": "מחלקות מתאמות אישית", + "description": "אתה יכול להוסיף מחלקות מותאמות אישית לפריטי הלוח שלך באפשרויות המתקדמות של כל פריט ולהשתמש בהן בעיצוב המותאם אישית למעלה." } }, "columnCount": { - "label": "" + "label": "ספירת עמודות" }, "name": { "label": "שם" }, "isPublic": { "label": "ציבורי", - "description": "" + "description": "לוחות ציבוריים נגישים לכולם, גם ללא חשבון." } }, "content": { - "metaTitle": "" + "metaTitle": "לוח {boardName}" }, "setting": { - "title": "", + "title": "הגדרות עבור לוח {boardName}", "section": { "general": { "title": "כללי", - "unrecognizedLink": "" + "unrecognizedLink": "הקישור שסופק אינו מזוהה ולא יוצג בתצוגה מקדימה, ייתכן שהוא עדיין יעבוד." }, "layout": { "title": "פריסה" @@ -1913,23 +1913,23 @@ "title": "רקע" }, "color": { - "title": "" + "title": "צבעים" }, "customCss": { - "title": "" + "title": "עיצוב מותאם אישית" }, "access": { - "title": "", + "title": "בקרת גישה", "permission": { "item": { "view": { "label": "צפייה בלוח" }, "modify": { - "label": "" + "label": "שנה לוח" }, "full": { - "label": "" + "label": "גישה מלאה" } } } @@ -1938,15 +1938,15 @@ "title": "אזור מסוכן", "action": { "rename": { - "label": "", - "description": "", - "button": "", + "label": "שנה את שם הלוח", + "description": "שינוי השם ישבור כל קישור ללוח זה.", + "button": "שנה שם", "modal": { - "title": "" + "title": "שנה את שם הלוח" } }, "visibility": { - "label": "", + "label": "שנה את נראות הלוח", "description": { "public": "", "private": "" @@ -2347,7 +2347,7 @@ "label": "" }, "rssFeeds": { - "label": "" + "label": "הזנות RSS" }, "indexerManager": { "label": "" @@ -2365,7 +2365,7 @@ "label": "" }, "mediaTranscoding": { - "label": "" + "label": "המרת קידוד מדיה" } } }, diff --git a/packages/translation/src/lang/tr.json b/packages/translation/src/lang/tr.json index 051192f88..570500964 100644 --- a/packages/translation/src/lang/tr.json +++ b/packages/translation/src/lang/tr.json @@ -6,59 +6,59 @@ "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": "Sıfırdan Başla", - "importOldmarr": "Homarr 1.0'dan Önceki Yedeğinizi İçe Aktarın" + "scratch": "Sıfırdan başlayın", + "importOldmarr": "Homarr 1.0'dan önceki yedeğinizi içe aktarın" } }, "import": { - "title": "Verileri İçe Aktar", - "subtitle": "Mevcut Homarr Örneğinden Alınan Verileri İçe Aktarabilirsiniz.", + "title": "Verileri içe aktar", + "subtitle": "Mevcut bir Homarr örneğinden alınan verileri içe aktarabilirsiniz.", "dropzone": { "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": "Dosyayı Değiştir" + "change": "Dosyayı değiştir" } }, "importSettings": { - "title": "İçe Aktarma Ayarları", - "description": "İçe Aktarma İşlevlerini Yapılandırın" + "title": "İçe aktarma ayarları", + "description": "İçe aktarma işlevlerini yapılandırın" }, "boardSelection": { - "title": "{count} Panel Bulundu", - "description": "İçe Aktarılacak Tüm Panellerin Boyutlarını Seçin", + "title": "{count} panel bulundu", + "description": "İçe aktarılacak tüm panellerin boyutlarını seçin", "action": { - "selectAll": "Tümünü Seç", - "unselectAll": "Tüm Seçimi Kaldır" + "selectAll": "Tümünü seç", + "unselectAll": "Tüm seçimi kaldır" } }, "summary": { - "title": "İçe Aktarma Özeti", - "description": "Aşağıdaki Özeti Kontrol Ederek İçe Aktarılacak İşlevleri Görebilirsiniz", + "title": "İçe aktarma özeti", + "description": "Aşağıdaki özeti kontrol ederek içe aktarılacak işlevleri görebilirsiniz", "action": { - "import": "İçe Aktarmayı Onayla ve Devam Et" + "import": "İçe aktarmayı onayla ve devam et" }, "entities": { "apps": "Uygulamalar", "boards": "Paneller", "integrations": "Entegrasyonlar", - "credentialUsers": "Kullanıcı Kimlik Bilgileri" + "credentialUsers": "Kullanıcı kimlik Bilgileri" } }, "tokenModal": { - "title": "İçe Aktarma Token'ını Girin", + "title": "İçe aktarma token'ını girin", "field": { "token": { "label": "Erişim Anahtarı", - "description": "Önceki Homarr Örneğinizden Aldığınız İçe Aktarma Token'ını girin" + "description": "Önceki homarr örneğinizden aldığınız içe aktarma Token'ını girin" } }, "notification": { "error": { - "title": "Geçersiz Token", - "message": "Girdiğiniz Token Geçersiz" + "title": "Geçersiz token", + "message": "Girdiğiniz token geçersiz" } } } @@ -92,24 +92,24 @@ }, "finish": { "title": "Kurulumu Bitir", - "subtitle": "Başlamaya Hazırsınız!", + "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": "{name} Paneline Git", - "createBoard": "İlk Panelinizi Oluşturun", - "inviteUser": "Yeni Kullanıcı Davet Et", - "docs": "Dökümanları Oku" + "goToBoard": "{name} paneline git", + "createBoard": "İlk panelinizi oluşturun", + "inviteUser": "Yeni kullanıcı davet et", + "docs": "Dökümanları okuyun" } } }, - "backToStart": "Başlangıca Geri Dön" + "backToStart": "Başlangıca geri dön" }, "user": { "title": "Kullanıcılar", "name": "Kullanıcı", "page": { "login": { - "title": "Hesabınıza Giriş Yapın", + "title": "Hesabınıza giriş yapın", "subtitle": "Tekrar hoş geldiniz! Lütfen kimlik bilgilerinizi girin" }, "invite": { @@ -118,7 +118,7 @@ "description": "{username} tarafından davet edildiniz" }, "init": { - "title": "Yeni Homarr Kurulumu", + "title": "Yeni Homarr kurulumu", "subtitle": "Lütfen yönetici kullanıcısını oluşturun" } }, @@ -141,20 +141,20 @@ } }, "passwordConfirm": { - "label": "Şifreyi Onayla" + "label": "Şifreyi onayla" }, "previousPassword": { "label": "Eski Şifre" }, "homeBoard": { - "label": "Öntanımlı Panel" + "label": "Öntanımlı panel" }, "pingIconsEnabled": { - "label": "Pingler İçin Simgeler Kullanın" + "label": "Pingler için simgeler kullanın" } }, "error": { - "usernameTaken": "Kullanıcı Adı Önceden Alındı" + "usernameTaken": "Kullanıcı adı önceden alındı" }, "action": { "login": { @@ -391,7 +391,7 @@ } }, "search-engine": { - "title": "Arama Motorları", + "title": "Arama motorları", "item": { "create": { "label": "Arama motorları oluşturun", @@ -498,7 +498,7 @@ } }, "create": { - "title": "Yeni Uygulama", + "title": "Yeni uygulama", "notification": { "success": { "title": "Oluşturma başarılı", @@ -566,7 +566,7 @@ } }, "create": { - "title": "Yeni {name} Entegrasyonu", + "title": "Yeni {name} entegrasyonu", "notification": { "success": { "title": "Oluşturma başarılı", @@ -615,7 +615,7 @@ } }, "action": { - "create": "Yeni Entegrasyon" + "create": "Yeni entegrasyon" }, "testConnection": { "action": { @@ -703,13 +703,13 @@ "message": "Gizli anahtarı sıfırlamak istediğinizden emin misiniz?" }, "noSecretsRequired": { - "segmentTitle": "Hiçbir Gizli Anahtar Bulunamadı", + "segmentTitle": "Hiçbir Gizli anahtar yok", "text": "Bu entegrasyon için gizli anahtar gerekmiyor" }, "kind": { "username": { "label": "Kullanıcı adı", - "newLabel": "Yeni Kullanıcı Adı" + "newLabel": "Yeni kullanıcı adı" }, "apiKey": { "label": "API Anahtarı", @@ -717,7 +717,7 @@ }, "password": { "label": "Şifre", - "newLabel": "Yeni Parola" + "newLabel": "Yeni parola" } } }, @@ -766,7 +766,7 @@ } }, "common": { - "beta": "Test", + "beta": "Beta", "error": "Hata", "action": { "add": "Ekle", @@ -803,8 +803,8 @@ } }, "information": { - "min": "En Düşük", - "max": "En Yüksek", + "min": "Asgari", + "max": "Azami", "days": "Gün", "hours": "Saat", "minutes": "Dakika" @@ -842,8 +842,8 @@ }, "userAvatar": { "menu": { - "switchToDarkMode": "Koyu Temaya Geç", - "switchToLightMode": "Aydınlık Temaya Geç", + "switchToDarkMode": "Koyu moda geç", + "switchToLightMode": "Aydınlık moda geç", "management": "Yönetim", "preferences": "Tercihleriniz", "logout": "Oturumu kapat", @@ -853,11 +853,11 @@ "updateAvailable": "{countUpdates} güncelleme mevcut: {tag}" } }, - "dangerZone": "Tehlikeli Bölge", + "dangerZone": "Tehlikeli bölge", "noResults": "Sonuç bulunamadı", "preview": { - "show": "Ara Renkleri Göster", - "hide": "Ara Renkleri Gizle" + "show": "Önizlemeyi göster", + "hide": "Önizlemeyi Gizle" }, "zod": { "errors": { @@ -866,16 +866,16 @@ "string": { "startsWith": "Bu alan {startsWith} ile başlamalıdır", "endsWith": "Bu alan {endsWith} ile bitmelidir", - "includes": "Bu alan {includes} içermelidir", + "includes": "Bu alan {includes} adresini içermelidir", "invalidEmail": "Bu alanda geçerli bir e-posta olmalıdır" }, "tooSmall": { "string": "Bu alan en az {minimum} karakter uzunluğunda olmalıdır", - "number": "Bu alan {minimum} değerinden uzun veya eşit olmalıdır" + "number": "Bu alan {minimum} adresinden uzun veya eşit olmalıdır" }, "tooBig": { "string": "Bu alan en fazla {maximum} karakter uzunluğunda olmalıdır", - "number": "Bu alan {maximum} değerinden kısa veya eşit olmalıdır" + "number": "Bu alan {maximum} adresinden kısa veya eşit olmalıdır" }, "custom": { "passwordsDoNotMatch": "Parolalar uyuşmuyor", @@ -892,7 +892,7 @@ "section": { "dynamic": { "action": { - "create": "Yeni Dinamik Bölüm", + "create": "Yeni dinamik bölüm", "remove": "Dinamik bölümü kaldır" }, "remove": { @@ -907,16 +907,16 @@ } }, "action": { - "create": "Yeni Kategori", - "edit": "Kategoriyi Yeniden Adlandır", + "create": "Yeni kategori", + "edit": "Kategoriyi yeniden adlandır", "remove": "Kategoriyi kaldır", "moveUp": "Yukarı taşı", "moveDown": "Aşağı taşı", - "createAbove": "Yukarı Yeni Kategori", - "createBelow": "Aşağı Yeni Kategori" + "createAbove": "Yukarı yeni kategori", + "createBelow": "Aşağı yeni kategori" }, "create": { - "title": "Yeni Kategori", + "title": "Yeni kategori", "submit": "Kategori ekle" }, "remove": { @@ -924,12 +924,12 @@ "message": "{name} kategorisini kaldırmak istediğinizden emin misiniz?" }, "edit": { - "title": "Kategoriyi Yeniden Adlandır", - "submit": "Kategoriyi Yeniden Adlandır" + "title": "Kategoriyi yeniden adlandır", + "submit": "Kategoriyi yeniden adlandır" }, "menu": { "label": { - "create": "Yeni Kategori", + "create": "Yeni kategori", "changePosition": "Pozisyonu değiştir" } } @@ -937,10 +937,10 @@ }, "item": { "action": { - "create": "Yeni Öğe", + "create": "Yeni öğe", "import": "Öğeleri İçe Aktar", "edit": "Öğeyi Düzenle", - "moveResize": "Öğeyi Taşı / Yeniden Boyutlandır", + "moveResize": "Öğeyi taşı / yeniden boyutlandır", "duplicate": "Öğeyi Çoğalt", "remove": "Öğeyi kaldır" }, @@ -954,7 +954,7 @@ "addToBoard": "Panele Ekle" }, "moveResize": { - "title": "Öğeyi Taşı / Yeniden Boyutlandır", + "title": "Öğeyi taşı / yeniden boyutlandır", "field": { "width": { "label": "Genişlik" @@ -999,7 +999,7 @@ "label": "Uygulama seç" }, "openInNewTab": { - "label": "Yeni Sekmede Aç" + "label": "Yeni sekmede aç" }, "showTitle": { "label": "Uygulama adını göster" @@ -1013,13 +1013,13 @@ }, "error": { "notFound": { - "label": "Uygulama Eklenmedi", + "label": "Uygulama yok", "tooltip": "Geçerli bir uygulama seçmediniz" } } }, "bookmarks": { - "name": "Yer İmleri", + "name": "Yer imleri", "description": "Birden fazla uygulama bağlantısını görüntüler", "option": { "title": { @@ -1040,7 +1040,7 @@ } }, "items": { - "label": "Yer İmleri", + "label": "Yer imleri", "add": "Yer imi ekle" } } @@ -1069,7 +1069,7 @@ }, "error": { "internalServerError": "DNS Çözümleyici Özeti alınamadı", - "integrationsDisconnected": "Veri Bulunamadı, Tüm Entegrasyonların Bağlantısı Kesildi" + "integrationsDisconnected": "Veri yok, tüm entegrasyonların bağlantısı kesildi" }, "data": { "adsBlockedToday": "Bugün engellenenler", @@ -1079,7 +1079,7 @@ } }, "dnsHoleControls": { - "name": "DNS Çözümleyici Kontrolleri", + "name": "DNS çözümleyici kontrolleri", "description": "Kontrol panelinizden PiHole veya AdGuard'ı kontrol edin", "option": { "layout": { @@ -1110,7 +1110,7 @@ "set": "Ayarla", "enabled": "Etkin", "disabled": "Pasif", - "processing": "İşlemde", + "processing": "İşleniyor", "disconnected": "Bağlantısı kesildi", "hours": "Saat", "minutes": "Dakika", @@ -1118,7 +1118,7 @@ } }, "clock": { - "name": "Tarih ve Saat", + "name": "Tarih ve saat", "description": "Geçerli tarih ve saati görüntüler.", "option": { "customTitleToggle": { @@ -1152,7 +1152,7 @@ } }, "notebook": { - "name": "Not Defteri", + "name": "Not defteri", "description": "Markdown'ı destekleyen basit bir not defteri bileşeni", "option": { "showToolbar": { @@ -1268,7 +1268,7 @@ } }, "smartHome-executeAutomation": { - "name": "Otomasyon Yürüt", + "name": "Otomasyonu Yürüt", "description": "Tek tıklamayla otomasyonu tetikleyin", "option": { "displayName": { @@ -1295,10 +1295,10 @@ } }, "filterPastMonths": { - "label": "Başlangıç" + "label": "Başla" }, "filterFutureMonths": { - "label": "Bitiş" + "label": "Bitir" } } }, @@ -1379,14 +1379,14 @@ "information": "Bilgi", "processor": "İşlemci: {cpuModelName}", "memory": "Bellek: {memory}GiB", - "memoryAvailable": "Kullanılabilir: {memoryAvailable} GiB ({percent}%)", + "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": "Kullanılabilir", + "available": "Mevcut", "lastSeen": "Son durum güncellemesi: {lastSeen}" }, "memory": {}, @@ -1455,7 +1455,7 @@ } }, "mediaServer": { - "name": "Güncel Medya Sunucusu Akışları", + "name": "Güncel medya sunucusu akışları", "description": "Medya sunucularınızdaki mevcut akışları gösterin", "option": {} }, @@ -1470,7 +1470,7 @@ "label": "Öğelerin sıralanmasını etkinleştir" }, "defaultSort": { - "label": "Öntanımlı olarak sıralama için kullanılan sütun" + "label": "Varsayılan olarak sıralama için kullanılan sütun" }, "descendingDefaultSort": { "label": "Ters sıralama" @@ -1503,7 +1503,7 @@ "columnTitle": "Kontroller" }, "added": { - "columnTitle": "Ekleme", + "columnTitle": "Eklendi", "detailsTitle": "Ekleme Tarihi" }, "category": { @@ -1532,7 +1532,7 @@ "detailsTitle": "İndirme İlerlemesi" }, "ratio": { - "columnTitle": "Oran", + "columnTitle": "Ratio", "detailsTitle": "Torrent oranı (alınan/gönderilen)" }, "received": { @@ -1570,7 +1570,7 @@ "paused": "Duraklatıldı", "completed": "Tamamlanan", "failed": "Başarısız", - "processing": "İşlemde", + "processing": "İşleniyor", "leeching": "Leechleme", "stalled": "Durduruldu", "unknown": "Bilinmeyen", @@ -1615,7 +1615,7 @@ "availability": { "unknown": "Bilinmeyen", "pending": "Bekleyen", - "processing": "İşlemde", + "processing": "İşleniyor", "partiallyAvailable": "Kısmi", "available": "Mevcut" }, @@ -1631,8 +1631,8 @@ "approved": "Onaylanan", "pending": "Onay bekleyen", "processing": "İşleniyor", - "declined": "Reddedilen", - "available": "Mevcut", + "declined": "Zaten reddedildi", + "available": "Zaten Mevcut", "tv": "Dizi talepleri", "movie": "Film talepleri", "total": "Toplam" @@ -1644,14 +1644,14 @@ } }, "mediaTranscoding": { - "name": "Medya Kod Dönüştürme", + "name": "Medya kod dönüştürme", "description": "Medya kod dönüştürmenizin istatistikleri, geçerli kuyruğu ve çalışan durumu", "option": { "defaultView": { - "label": "Öntanımlı Görünüm" + "label": "Öntanımlı görünüm" }, "queuePageSize": { - "label": "Kuyruk Sayfa Boyutu" + "label": "Sıra sayfa boyutu" } }, "tab": { @@ -1703,7 +1703,7 @@ } }, "rssFeed": { - "name": "RSS Beslemeleri", + "name": "RSS beslemeleri", "description": "Bir veya daha fazla RSS, ATOM veya JSON beslemesini takip edin ve görüntüleyin", "option": { "feedUrls": { @@ -1713,10 +1713,10 @@ "label": "RTL'yi etkinleştir" }, "textLinesClamp": { - "label": "Açıklamalarda satır sınırı" + "label": "Açıklamalar satır sınırı" }, "maximumAmountPosts": { - "label": "Gönderi sayısı sınırı" + "label": "Gönderi değer sınırı" } } } @@ -1842,7 +1842,7 @@ "description": "Görsel, tüm arka plan alanını kaplayacak kadar tekrarlanır." }, "no-repeat": { - "label": "Tekrarlama Yok", + "label": "Tekrarlama yok", "description": "Görsel tekrarlanmaz ve tüm alanı doldurmayabilir." }, "repeat-x": { @@ -1919,7 +1919,7 @@ "title": "Özel Css" }, "access": { - "title": "Erişim Kontrolü", + "title": "Erişim kontrolü", "permission": { "item": { "view": { @@ -1935,14 +1935,14 @@ } }, "dangerZone": { - "title": "Tehlikeli Bölge", + "title": "Tehlikeli bölge", "action": { "rename": { - "label": "Panelin ismini değiştir", + "label": "Panelin adını değiştir", "description": "İsmin değiştirilmesi bu panele olan tüm bağlantıların kopmasına neden olacaktır.", "button": "İsmi değiştir", "modal": { - "title": "Panelin ismini değiştir" + "title": "Panelin adını değiştir" } }, "visibility": { @@ -1993,7 +1993,7 @@ "notice": "Bağlantıyı kontrol edin veya erişilebilir olması gerektiğini düşünüyorsanız bir yöneticiyle iletişime geçin" }, "homeBoard": { - "title": "Öntanımlı Panel Yapılandırılmadı", + "title": "Ana panel yok", "admin": { "description": "Sunucu için henüz bir ana sayfa paneli belirlemediniz.", "link": "Sunucu geneli için ana panel yapılandırın", @@ -2001,13 +2001,13 @@ }, "user": { "description": "Henüz bir ev paneli belirlemediniz.", - "link": "Öntanımlı Paneli Yapılandır", - "notice": "Bu Sayfanın Kaybolmasını Sağlamak İçin Tercihlerden Öntanımlı Panel Atayın" + "link": "Öntanımlı paneli yapılandır", + "notice": "Bu sayfanın kaybolmasını sağlamak için tercihlerden öntanımlı panel seçin" }, "anonymous": { - "description": "Sunucu Yöneticiniz Henüz Bir Öntanımlı Panel Atamadı.", + "description": "Sunucu yöneticiniz henüz bir öntanımlı panel belirlemedi.", "link": "Herkese açık panelleri görüntüle", - "notice": "Bu Sayfanın Kaybolmasını Sağlamak İçin Sunucu Yöneticisinden Öntanımlı Panel Atamasını İsteyin" + "notice": "Bu sayfanın kaybolmasını sağlamak için sunucu yöneticisinden öntanımlı panel ayarlamasını isteyin" } } } @@ -2025,11 +2025,11 @@ }, "navbar": { "items": { - "home": "Ana Sayfa", + "home": "Ana sayfa", "boards": "Paneller", "apps": "Uygulamalar", "integrations": "Entegrasyonlar", - "searchEngies": "Arama Motorları", + "searchEngies": "Arama motorları", "medias": "Medyalar", "users": { "label": "Kullanıcılar", @@ -2082,7 +2082,7 @@ "title": "Panelleriniz", "action": { "new": { - "label": "Yeni Panel" + "label": "Yeni panel" }, "open": { "label": "Panel'i aç" @@ -2091,9 +2091,9 @@ "label": "Ayarlar" }, "setHomeBoard": { - "label": "Öntanımlı Panel Olarak Ata", + "label": "Öntanımlı panel olarak ayarlayın", "badge": { - "label": "Ana Sayfa", + "label": "Ana sayfa", "tooltip": "Bu panel sizin öntanımlı paneliniz olarak görüntülenecektir" } }, @@ -2130,7 +2130,7 @@ "title": "Genel", "item": { "language": "Dil & Bölge", - "board": "Öntanımlı Panel", + "board": "Öntanımlı panel", "firstDayOfWeek": "Haftanın ilk günü", "accessibility": "Erişilebilirlik" } @@ -2151,7 +2151,7 @@ }, "create": { "metaTitle": "Kullanıcı ekle", - "title": "Yeni Kullanıcı Oluştur", + "title": "Yeni kullanıcı oluştur", "step": { "personalInformation": { "label": "Kişisel bilgiler" @@ -2180,10 +2180,10 @@ } }, "invite": { - "title": "Kullanıcı Davetlerini Yönet", + "title": "Kullanıcı davetlerini yönet", "action": { "new": { - "title": "Yeni Davet", + "title": "Yeni davet", "description": "Süre sona erdikten sonra davet artık geçerli olmayacak ve daveti alan kişi bir hesap oluşturamayacaktır." }, "copy": { @@ -2347,7 +2347,7 @@ "label": "Medya Talep Listesi" }, "rssFeeds": { - "label": "RSS Beslemeleri" + "label": "RSS beslemeleri" }, "indexerManager": { "label": "İndeksleyici Yöneticisi" @@ -2365,7 +2365,7 @@ "label": "Güncelleme denetleyicisi" }, "mediaTranscoding": { - "label": "Medya Kod Dönüştürme" + "label": "Medya kod dönüştürme" } } }, @@ -2400,7 +2400,7 @@ }, "about": { "version": "Sürüm {version}", - "text": "Homarr, gönüllüler tarafından sürdürülen topluluk odaklı bir açık kaynak projesidir. Bu kişiler sayesinde Homarr, 2021'den bugüne büyüyerek ilerleyen bir projedir. Ekibimiz, boş zamanlarında Homarr üzerinde birçok farklı ülkeden tamamen uzaktan, hiçbir ücret almadan çalışmaktadır.", + "text": "Homarr, gönüllüler tarafından sürdürülen topluluk odaklı bir açık kaynak projesidir. Bu kişiler sayesinde Homarr, 2021'den beri büyüyen bir projedir. Ekibimiz, boş zamanlarında Homarr üzerinde birçok farklı ülkeden tamamen uzaktan, hiçbir ücret almadan çalışmaktadır.", "accordion": { "contributors": { "title": "Katkıda Bulunanlar", @@ -2435,7 +2435,7 @@ "created": "Oluşturuldu", "running": "Çalışıyor", "paused": "Duraklatıldı", - "restarting": "Yeniden Başlatılıyor", + "restarting": "Yeniden başlatılıyor", "exited": "Çıkıldı", "removing": "Kaldırılıyor", "dead": "Ölü" @@ -2650,7 +2650,7 @@ "label": "Panel'i aç" }, "homeBoard": { - "label": "Öntanımlı Panel Olarak Ata" + "label": "Öntanımlı panel olarak ata" }, "settings": { "label": "Ayarları aç" @@ -2676,8 +2676,8 @@ "title": "Genel komutlar", "option": { "colorScheme": { - "light": "Aydınlık Temaya Geç", - "dark": "Koyu Temaya Geç" + "light": "Aydınlık moda geç", + "dark": "Koyu moda geç" }, "language": { "label": "Dili değiştir", @@ -2688,16 +2688,16 @@ } }, "newBoard": { - "label": "Yeni Panel Oluştur" + "label": "Yeni bir panel oluştur" }, "importBoard": { "label": "Bir paneli içe aktar" }, "newApp": { - "label": "Yeni Uygulama Oluştur" + "label": "Yeni bir uygulama oluştur" }, "newIntegration": { - "label": "Yeni Entegrasyon Oluştur", + "label": "Yeni bir entegrasyon oluşturun", "children": { "detail": { "title": "Oluşturmak istediğiniz entegrasyon türünü seçin" @@ -2705,13 +2705,13 @@ } }, "newUser": { - "label": "Yeni Kullanıcı Oluştur" + "label": "Yeni bir kullanıcı oluştur" }, "newInvite": { - "label": "Yeni Davet Oluştur" + "label": "Yeni bir davet oluştur" }, "newGroup": { - "label": "Yeni Grup Oluştur" + "label": "Yeni bir grup oluştur" } } } @@ -2795,7 +2795,7 @@ "title": "Sayfalar", "option": { "manageHome": { - "label": "Ana Sayfayı Yönet" + "label": "Ana sayfayı yönet" }, "manageBoard": { "label": "Panelleri yönet" @@ -2825,7 +2825,7 @@ "label": "Docker'ı yönet" }, "manageApi": { - "label": "Swagger API'si" + "label": "Swagger API" }, "manageLog": { "label": "Günlükleri görüntüle" @@ -2840,7 +2840,7 @@ "label": "Hakkında" }, "homeBoard": { - "label": "Öntanımlı Panel" + "label": "Öntanımlı panel" }, "preferences": { "label": "Tercihleriniz" @@ -2894,7 +2894,7 @@ "label": "İsim" }, "short": { - "label": "Kısa Yol" + "label": "Kısa" }, "urlTemplate": { "label": "URL arama şablonu" @@ -2905,15 +2905,15 @@ }, "page": { "list": { - "title": "Arama Motorları", + "title": "Arama motorları", "noResults": { - "title": "Henüz bir arama motoru yapılandırılmadı", + "title": "Henüz bir arama motoru yok", "action": "İlk arama motorunuzu oluşturun" }, "interactive": "Etkileşimli, entegrasyon kullanır" }, "create": { - "title": "Yeni Arama Motoru", + "title": "Yeni arama motoru", "notification": { "success": { "title": "Arama motoru oluşturuldu", From 6d90209e002815eb995d39ee08b9ae8337a2db8f Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Sun, 29 Dec 2024 08:26:48 +0000 Subject: [PATCH 10/25] chore(deps): update pnpm to v9.15.2 (#1804) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 599750f05..7d727a8c4 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,7 @@ "vite-tsconfig-paths": "^5.1.4", "vitest": "^2.1.8" }, - "packageManager": "pnpm@9.15.1", + "packageManager": "pnpm@9.15.2", "engines": { "node": ">=22.12.0" }, From b52a8a7935c4c4361010dd49979d0ce123aca97f Mon Sep 17 00:00:00 2001 From: "homarr-crowdin[bot]" <190541745+homarr-crowdin[bot]@users.noreply.github.com> Date: Sun, 29 Dec 2024 08:27:17 +0000 Subject: [PATCH 11/25] chore(lang): updated translations from crowdin Co-authored-by: Crowdin Homarr <190541745+homarr-crowdin[bot]@users.noreply.github.com> --- packages/translation/src/lang/cn.json | 350 +++++++++++------------ packages/translation/src/lang/de.json | 394 +++++++++++++------------- packages/translation/src/lang/he.json | 4 +- packages/translation/src/lang/tr.json | 272 +++++++++--------- 4 files changed, 510 insertions(+), 510 deletions(-) diff --git a/packages/translation/src/lang/cn.json b/packages/translation/src/lang/cn.json index 4b58ada9b..e4902b6f3 100644 --- a/packages/translation/src/lang/cn.json +++ b/packages/translation/src/lang/cn.json @@ -44,14 +44,14 @@ "apps": "应用", "boards": "面板", "integrations": "组件", - "credentialUsers": "凭证用户" + "credentialUsers": "用户凭证" } }, "tokenModal": { "title": "输入导入密钥", "field": { "token": { - "label": "Token", + "label": "秘钥", "description": "输入您之前的 homarr 实例中显示的导入秘钥" } }, @@ -110,7 +110,7 @@ "page": { "login": { "title": "登录你的账户", - "subtitle": "欢迎回来!请输入您的凭据" + "subtitle": "欢迎回来!请输入您的凭证" }, "invite": { "title": "加入 Homarr", @@ -118,14 +118,14 @@ "description": "您受到了 {username} 的邀请。" }, "init": { - "title": "新建Homarr 安装", + "title": "新建 Homarr 安装", "subtitle": "请创建初始管理员用户" } }, "field": { "email": { "label": "邮箱", - "verified": "" + "verified": "已验证" }, "username": { "label": "用户名" @@ -134,7 +134,7 @@ "label": "密码", "requirement": { "length": "至少包含 8 个字符", - "lowercase": "包括小写字母", + "lowercase": "包含小写字母", "uppercase": "包含大写字母", "number": "包含数字", "special": "包含特殊符号" @@ -150,7 +150,7 @@ "label": "主面板" }, "pingIconsEnabled": { - "label": "为ping使用图标" + "label": "为 ping 使用图标" } }, "error": { @@ -167,7 +167,7 @@ }, "error": { "title": "登录失败", - "message": "您的登录失败" + "message": "您的登录失败了" } }, "forgotPassword": { @@ -203,7 +203,7 @@ "changeHomeBoard": { "notification": { "success": { - "message": "主页面修改成功" + "message": "主面板修改成功" }, "error": { "message": "无法修改主面板" @@ -279,7 +279,7 @@ "notFound": "找不到用户" }, "transfer": { - "label": "" + "label": "选择新的所有者" } } }, @@ -330,7 +330,7 @@ "description": "允许成员创建面板" }, "view-all": { - "label": "查看所有面板", + "label": "查看全部面板", "description": "允许成员查看全部面板" }, "modify-all": { @@ -368,123 +368,123 @@ "title": "媒体", "item": { "upload": { - "label": "", - "description": "" + "label": "上传媒体", + "description": "允许成员上传媒体" }, "view-all": { - "label": "", - "description": "" + "label": "查看全部媒体", + "description": "允许成员查看全部媒体" }, "full-all": { - "label": "", - "description": "" + "label": "完全的媒体访问权限", + "description": "允许成员管理和删除任何媒体" } } }, "other": { - "title": "", + "title": "其它", "item": { "view-logs": { - "label": "", - "description": "" + "label": "查看日志", + "description": "允许成员查看日志" } } }, "search-engine": { - "title": "", + "title": "搜索引擎", "item": { "create": { - "label": "", - "description": "" + "label": "创建搜索引擎", + "description": "允许成员创建搜索引擎" }, "modify-all": { - "label": "", - "description": "" + "label": "修改全部搜索引擎", + "description": "允许成员修改全部搜索引擎" }, "full-all": { - "label": "", - "description": "" + "label": "完整的搜索引擎访问权限", + "description": "允许成员管理和删除任何搜索引擎" } } } }, "memberNotice": { - "mixed": "", - "external": "" + "mixed": "部分成员来自外部提供者,无法在此处管理", + "external": "所有成员都来自外部提供者,无法在此处管理" }, "reservedNotice": { - "message": "" + "message": "此用户组保留供系统使用并限制部分操作 " }, "action": { "create": { - "label": "", + "label": "新建用户组", "notification": { "success": { - "message": "" + "message": "用户组已成功创建" }, "error": { - "message": "" + "message": "无法创建用户组" } } }, "transfer": { - "label": "", - "description": "", - "confirm": "", + "label": "转移所有权", + "description": "将此用户组的所有权转移给另一个用户。", + "confirm": "确定将用户组 {name} 的所有权转移给 {username} 吗?", "notification": { "success": { - "message": "" + "message": "成功将用户组 {group} 的所有权转移给 {user}" }, "error": { - "message": "" + "message": "无法转移所有权" } } }, "addMember": { - "label": "" + "label": "添加成员" }, "removeMember": { - "label": "", - "confirm": "" + "label": "删除成员", + "confirm": "确定将 {user} 从此用户组移除吗?" }, "delete": { - "label": "", - "description": "", - "confirm": "", + "label": "删除用户组", + "description": "用户组一旦删除就无法恢复. 请谨慎操作.", + "confirm": "确认删除用户组 {name} 吗?", "notification": { "success": { - "message": "" + "message": "成功删除用户组 {name}" }, "error": { - "message": "" + "message": "无法删除用户组 {name}" } } }, "changePermissions": { "notification": { "success": { - "title": "", - "message": "" + "title": "权限已保存", + "message": "权限保存成功" }, "error": { - "title": "", - "message": "" + "title": "权限未保存", + "message": "权限尚未保存" } } }, "update": { "notification": { "success": { - "message": "" + "message": "用户组 {name} 保存成功" }, "error": { - "message": "" + "message": "无法保存用户组 {name}" } } }, "select": { - "label": "", - "notFound": "" + "label": "选择用户组", + "notFound": "未找到用户组" } } }, @@ -493,16 +493,16 @@ "list": { "title": "应用", "noResults": { - "title": "", - "action": "" + "title": "尚无应用", + "action": "创建您的第一个应用" } }, "create": { - "title": "", + "title": "新建应用", "notification": { "success": { - "title": "", - "message": "" + "title": "创建成功", + "message": "应用已成功创建" }, "error": { "title": "创建失败", @@ -514,7 +514,7 @@ "title": "编辑应用", "notification": { "success": { - "title": "更改应用成功", + "title": "成功应用更改", "message": "应用保存成功" }, "error": { @@ -546,13 +546,13 @@ "label": "描述" }, "url": { - "label": "" + "label": "Url" } }, "action": { "select": { - "label": "", - "notFound": "" + "label": "选择应用", + "notFound": "未找到应用" } } }, @@ -560,48 +560,48 @@ "page": { "list": { "title": "组件", - "search": "", + "search": "搜索组件", "noResults": { - "title": "" + "title": "尚无组件" } }, "create": { - "title": "", + "title": "新的组件 {name}", "notification": { "success": { - "title": "", - "message": "" + "title": "创建成功", + "message": "组件已成功创建" }, "error": { "title": "创建失败", - "message": "" + "message": "无法创建组件" } } }, "edit": { - "title": "", + "title": "编辑组件 {name}", "notification": { "success": { - "title": "更改应用成功", - "message": "" + "title": "成功应用更改", + "message": "组件已成功保存" }, "error": { "title": "无法应用更改", - "message": "" + "message": "无法保存此组件" } } }, "delete": { - "title": "", - "message": "", + "title": "删除组件", + "message": "确认删除组件 {name} 吗?", "notification": { "success": { "title": "删除成功", - "message": "" + "message": "组件已成功删除" }, "error": { "title": "删除失败", - "message": "" + "message": "无法删除组件" } } } @@ -611,21 +611,21 @@ "label": "名称" }, "url": { - "label": "" + "label": "Url" } }, "action": { - "create": "" + "create": "新建组件" }, "testConnection": { "action": { - "create": "", - "edit": "" + "create": "测试连接并创建", + "edit": "测试连接并保存" }, - "alertNotice": "", + "alertNotice": "成功建立连接后保存按钮将启用", "notification": { "success": { - "title": "", + "title": "连接成功", "message": "" }, "invalidUrl": { @@ -783,7 +783,7 @@ "delete": "删除", "discard": "", "confirm": "确认", - "continue": "", + "continue": "继续", "previous": "上一步", "next": "下一步", "checkoutDocs": "", @@ -798,8 +798,8 @@ }, "colorScheme": { "options": { - "light": "", - "dark": "" + "light": "日间", + "dark": "暗黑" } }, "information": { @@ -819,7 +819,7 @@ "error": "删除失败" }, "update": { - "success": "更改应用成功", + "success": "成功应用更改", "error": "无法应用更改" }, "transfer": { @@ -842,13 +842,13 @@ }, "userAvatar": { "menu": { - "switchToDarkMode": "", - "switchToLightMode": "", - "management": "", - "preferences": "您的首选项", - "logout": "", + "switchToDarkMode": "切换到暗黑模式", + "switchToLightMode": "切换到日间模式", + "management": "管理中心", + "preferences": "偏好设置", + "logout": "退出登录", "login": "登录", - "homeBoard": "", + "homeBoard": "您的首页", "loggedOut": "", "updateAvailable": "" } @@ -870,7 +870,7 @@ "invalidEmail": "" }, "tooSmall": { - "string": "该字段的长度必须至少为 {minimum} 个字符", + "string": "该字段长度必须至少为 {minimum} 个字符", "number": "该字段必须大于或等于 {minimum}" }, "tooBig": { @@ -878,8 +878,8 @@ "number": "该字段必须小于或等于 {maximum}" }, "custom": { - "passwordsDoNotMatch": "", - "passwordRequirements": "", + "passwordsDoNotMatch": "两次输入的密码不一致", + "passwordRequirements": "密码不符合要求", "boardAlreadyExists": "", "invalidFileType": "", "fileTooLarge": "", @@ -1171,7 +1171,7 @@ "strikethrough": "删除线", "underline": "下划线", "colorText": "文字颜色", - "colorHighlight": "彩色高亮文本", + "colorHighlight": "彩色高亮文字", "code": "代码", "clear": "清除格式", "heading": "标题 {level}", @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "嵌入互联网上的任何内容。某些网站可能限制访问。", "option": { "embedUrl": { @@ -1279,7 +1279,7 @@ } }, "spotlightAction": { - "run": "" + "run": "运行 {name}" } }, "calendar": { @@ -1735,7 +1735,7 @@ "edit": { "notification": { "success": { - "title": "更改应用成功", + "title": "成功应用更改", "message": "" }, "error": { @@ -1772,16 +1772,16 @@ "description": "" }, "onlyImportApps": { - "label": "", - "description": "" + "label": "仅导入应用", + "description": "只添加应用,面板需要手动重新创建" } }, "name": { "label": "" }, "screenSize": { - "label": "", - "description": "", + "label": "屏幕大小", + "description": "在1.0之前的版本中,有三种不同的模式,所以你可以根据屏幕大小选择列的数量。", "option": { "sm": "小号", "md": "中号", @@ -1789,16 +1789,16 @@ } }, "sidebarBehavior": { - "label": "", - "description": "", + "label": "侧边栏行为", + "description": "侧边栏在1.0中被删除了,您可以选择其中的项目应该发生什么。", "option": { "lastSection": { - "label": "", - "description": "" + "label": "最后部分", + "description": "侧边栏将显示在最后一部分的下方" }, "removeItems": { - "label": "", - "description": "" + "label": "删除项目", + "description": "侧边栏中包含的项目将被删除" } } } @@ -1900,7 +1900,7 @@ "metaTitle": "" }, "setting": { - "title": "", + "title": "{boardName} 面板设置", "section": { "general": { "title": "通用", @@ -1984,30 +1984,30 @@ "title": "欢迎使用 Homarr", "description": "", "link": "创建您的第一个面板", - "notice": "" + "notice": "要使这个页面消失,请创建一个面板并将其设置为主面板" }, "notFound": { "title": "", "description": "", - "link": "查看所有面板", + "link": "查看全部面板", "notice": "" }, "homeBoard": { - "title": "", + "title": "没有主面板", "admin": { - "description": "", - "link": "", - "notice": "" + "description": "您还没有为服务器设置主面板。", + "link": "配置服务器主面板", + "notice": "要使此页面消失,请为服务器设置主面板" }, "user": { - "description": "", - "link": "", - "notice": "" + "description": "您尚未设置主面板。", + "link": "配置您的首页", + "notice": "要使此页面消失,请在您的偏好设置中指定主面板" }, "anonymous": { - "description": "", - "link": "", - "notice": "" + "description": "服务器管理员尚未设置主面板。", + "link": "查看公共面板", + "notice": "要使这个页面消失,请服务器管理员为服务器设置一个主面板" } } } @@ -2034,7 +2034,7 @@ "users": { "label": "用户", "items": { - "manage": "管理中心", + "manage": "管理", "invites": "邀请", "groups": "群组" } @@ -2042,9 +2042,9 @@ "tools": { "label": "工具", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2091,10 +2091,10 @@ "label": "设置" }, "setHomeBoard": { - "label": "", + "label": "设置为您的首页", "badge": { "label": "首页", - "tooltip": "" + "tooltip": "此面板将显示为您的主面板" } }, "delete": { @@ -2129,7 +2129,7 @@ "general": { "title": "通用", "item": { - "language": "", + "language": "语言与地区", "board": "主面板", "firstDayOfWeek": "一周的第一天", "accessibility": "无障碍服务" @@ -2199,7 +2199,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "创建者" @@ -2208,7 +2208,7 @@ "label": "过期时间" }, "token": { - "label": "Token" + "label": "" } } } @@ -2239,73 +2239,73 @@ "title": "设置", "notification": { "success": { - "message": "" + "message": "设置保存成功" }, "error": { - "message": "" + "message": "无法保存设置" } }, "section": { "analytics": { - "title": "", + "title": "分析", "general": { - "title": "", - "text": "" + "title": "发送匿名分析", + "text": "Homarr 将使用开源软件 Umami 发送匿名分析。它从不收集任何个人信息,因此完全符合 GDPR 和 CCPA 要求。我们鼓励您启用分析,因为它可以帮助我们的开源团队识别问题并确定待办事项的优先级。" }, "widgetData": { - "title": "", - "text": "" + "title": "组件数据", + "text": "发送您已配置的组件(及其数量)。不包括URL、名称或任何其他数据。" }, "integrationData": { - "title": "", - "text": "" + "title": "集成数据", + "text": "发送您已配置的集成(及其数量)。不包括URL、名称或任何其他数据。" }, "usersData": { - "title": "", - "text": "" + "title": "用户数据", + "text": "发送用户数量以及您是否激活了SSO" } }, "crawlingAndIndexing": { - "title": "", - "warning": "", + "title": "爬取和索引", + "warning": "启用或禁用这里的任何设置将严重影响搜索引擎如何索引和抓取你的页面。任何设置都是一个请求,是否应用这些设置取决于爬虫。任何修改可能需要数天或数周才能申请。一些设置可能是搜索引擎特定的。", "noIndex": { - "title": "", - "text": "" + "title": "不要索引", + "text": "不要在搜索引擎上索引网站,也不要在任何搜索结果中显示。" }, "noFollow": { - "title": "", - "text": "" + "title": "不要追踪", + "text": "索引时不要追踪任何链接。禁用此功能将导致爬虫程序试图跟踪Homarr上的所有链接。" }, "noTranslate": { - "title": "", - "text": "" + "title": "不要翻译", + "text": "当站点语言可能不是用户想要阅读的语言时,谷歌将在搜索结果中显示一个翻译链接" }, "noSiteLinksSearchBox": { - "title": "", - "text": "" + "title": "没有站点链接搜索框", + "text": "谷歌将与爬取的链接以及其他直接链接构建一个搜索框。启用此功能将要求谷歌禁用该框。" } }, "board": { "title": "面板", "homeBoard": { - "label": "", - "description": "" + "label": "全局主面板", + "description": "只有公共面板可供选择" } }, "appearance": { "title": "外观", "defaultColorScheme": { - "label": "", + "label": "默认配色方案", "options": { - "light": "", - "dark": "" + "light": "日间", + "dark": "暗黑" } } }, "culture": { - "title": "", + "title": "区域", "defaultLocale": { - "label": "" + "label": "默认语言" } } } @@ -2323,7 +2323,7 @@ "label": "" }, "analytics": { - "label": "" + "label": "分析" }, "smartHomeEntityState": { "label": "" @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2408,7 +2408,7 @@ }, "translators": { "title": "", - "subtitle": "" + "subtitle": "{count}翻译了许多语言" }, "libraries": { "title": "", @@ -2564,7 +2564,7 @@ } }, "search-engines": { - "label": "", + "label": "搜索引擎", "new": { "label": "" }, @@ -2602,7 +2602,7 @@ "tools": { "label": "工具", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" @@ -2650,10 +2650,10 @@ "label": "" }, "homeBoard": { - "label": "" + "label": "设置为主面板" }, "settings": { - "label": "" + "label": "打开设置" } }, "detail": { @@ -2676,14 +2676,14 @@ "title": "", "option": { "colorScheme": { - "light": "", - "dark": "" + "light": "切换到日间模式", + "dark": "切换到暗黑模式" }, "language": { - "label": "", + "label": "更改语言", "children": { "detail": { - "title": "" + "title": "选择你的首选语言" } } }, @@ -2749,7 +2749,7 @@ "description": "" }, "torrent": { - "name": "Torrents", + "name": "", "description": "" }, "youTube": { @@ -2834,7 +2834,7 @@ "label": "" }, "manageSettings": { - "label": "" + "label": "全局设置" }, "about": { "label": "关于" @@ -2843,7 +2843,7 @@ "label": "主面板" }, "preferences": { - "label": "您的首选项" + "label": "偏好设置" } } } @@ -2929,7 +2929,7 @@ "title": "", "notification": { "success": { - "title": "更改应用成功", + "title": "成功应用更改", "message": "" }, "error": { diff --git a/packages/translation/src/lang/de.json b/packages/translation/src/lang/de.json index ce6d2a3b9..a837d9d05 100644 --- a/packages/translation/src/lang/de.json +++ b/packages/translation/src/lang/de.json @@ -3,19 +3,19 @@ "step": { "start": { "title": "Willkommen bei Homarr", - "subtitle": "Beginnen wir mit der Einrichtung Ihrer Homarr-Instanz.", - "description": "Um zu beginnen, wählen Sie bitte aus, wie Sie Ihre Homarr-Instanz einrichten möchten.", + "subtitle": "Lass uns mit der Einrichtung deiner Homarr-Instanz beginnen.", + "description": "Um loszulegen, wähle bitte wie du deine Homarr Instanz einrichten möchtest.", "action": { "scratch": "Von vorne beginnen", - "importOldmarr": "Import von Homarr vor Version 1.0" + "importOldmarr": "Import von Homarr vor 1.0" } }, "import": { - "title": "Importieren von Daten", - "subtitle": "Sie können Daten aus einer vorhandenen Homarr-Instanz importieren.", + "title": "Daten importieren", + "subtitle": "Sie können Daten aus einer bestehenden Homarr-Instanz importieren.", "dropzone": { "title": "Ziehen Sie die Zip-Datei hierher oder klicken Sie zum Durchsuchen", - "description": "Die hochgeladene Zip-Datei wird verarbeitet und Sie können auswählen, was Sie importieren möchten" + "description": "Die hochgeladene Zip-Datei wird bearbeitet und Sie können wählen, was Sie importieren möchten" }, "fileInfo": { "action": { @@ -23,8 +23,8 @@ } }, "importSettings": { - "title": "Einstellungen importieren", - "description": "Konfigurieren des Importverhaltens" + "title": "Importeinstellungen", + "description": "Importverhalten konfigurieren" }, "boardSelection": { "title": "{count} Boards gefunden", @@ -36,12 +36,12 @@ }, "summary": { "title": "Zusammenfassung des Imports", - "description": "In der folgenden Übersicht können Sie sehen, was importiert wird", + "description": "In der folgenden Zusammenfassung sehen Sie, was importiert wird", "action": { "import": "Import bestätigen und fortfahren" }, "entities": { - "apps": "Apps", + "apps": "Applikationen", "boards": "Boards", "integrations": "Integrationen", "credentialUsers": "Benutzer mit Zugangsdaten" @@ -51,28 +51,28 @@ "title": "Importschlüssel eingeben", "field": { "token": { - "label": "Token", - "description": "Gib den angezeigten Importschlüssel von der vorherigen Homarr Instanz ein" + "label": "Schlüssel", + "description": "Gib den angezeigten Importschlüssel von der vorherigen Homarr-Instanz ein" } }, "notification": { "error": { - "title": "Token ungültig", + "title": "Ungültiger Schlüssel", "message": "Der eingegebene Schlüssel ist ungültig" } } } }, "user": { - "title": "Admin Benutzer", - "subtitle": "Geben Sie die Anmeldeinformationen für Ihren Administratorbenutzer an.", + "title": "Administrator", + "subtitle": "Geben Sie die Zugangsdaten für Ihren Administrator-Benutzer an.", "notification": { "success": { "title": "Benutzer erstellt", "message": "Der Benutzer wurde erfolgreich erstellt" }, "error": { - "title": "Benutzer anlegen fehlgeschlagen" + "title": "Erstellung des Benutzers fehlgeschlagen" } } }, @@ -82,13 +82,13 @@ "form": { "name": { "label": "Gruppenname", - "description": "Name muss mit der Admin-Gruppe der externen Anmeldeoption übereinstimmen" + "description": "Name muss mit der Admin-Gruppe des externen Anbieters übereinstimmen" } } }, "settings": { "title": "Einstellungen", - "subtitle": "Server Einstellungen konfigurieren." + "subtitle": "Server-Einstellungen konfigurieren." }, "finish": { "title": "Einrichtung abschließen", @@ -96,9 +96,9 @@ "description": "Du hast die Einrichtung erfolgreich abgeschlossen. Du kannst jetzt mit der Nutzung von Homarr beginnen. Wähle deine nächste Aktion:", "action": { "goToBoard": "Gehe zu {name} Board", - "createBoard": "Erstellen Sie Ihr erstes Board", - "inviteUser": "Weitere Personen einladen", - "docs": "Lesen Sie die Dokumentation" + "createBoard": "Erstelle dein erstes Board", + "inviteUser": "Andere Benutzer einladen", + "docs": "Lese die Dokumentation" } } }, @@ -109,11 +109,11 @@ "name": "Benutzer", "page": { "login": { - "title": "Melden Sie sich in Ihrem Konto an", + "title": "Melde dich bei deinem Konto an", "subtitle": "Willkommen zurück! Bitte gib deine Zugangsdaten ein" }, "invite": { - "title": "Trete Homarr bei", + "title": "Homarr beitreten", "subtitle": "Willkommen bei Homarr! Bitte erstelle dein Konto", "description": "Du wurdest von {username} eingeladen" }, @@ -147,7 +147,7 @@ "label": "Vorheriges Passwort" }, "homeBoard": { - "label": "Home board" + "label": "Home Board" }, "pingIconsEnabled": { "label": "Symbole für Pings verwenden" @@ -216,7 +216,7 @@ "message": "Erster Wochentag erfolgreich geändert" }, "error": { - "message": "Der erste Wochentag konnte nicht geändert werden" + "message": "Konnte den ersten Wochentag nicht ändern" } } }, @@ -226,7 +226,7 @@ "message": "Ping Icons erfolgreich umgeschaltet" }, "error": { - "message": "Ping Icons konnten nicht umgeschaltet werden" + "message": "Konnte Ping-Icons nicht umschalten" } } }, @@ -242,19 +242,19 @@ }, "toLarge": { "title": "Bild ist zu groß", - "message": "Die maximale Bildgröße beträgt {size}" + "message": "Maximale Bildgröße ist {size}" } } }, "removeImage": { "label": "Bild entfernen", - "confirm": "Sind Sie sicher, dass Sie dieses Bild entfernen möchten?", + "confirm": "Wollen Sie wirklich dieses Bild entfernen?", "notification": { "success": { "message": "Bild erfolgreich entfernt" }, "error": { - "message": "Bild konnte nicht entfernt werden" + "message": "Bild kann nicht entfernt werden" } } } @@ -271,7 +271,7 @@ }, "delete": { "label": "Benutzer dauerhaft löschen", - "description": "Löscht diesen Benutzer einschließlich seiner Einstellungen. Es werden keine Boards gelöscht. Der Benutzer wird nicht benachrichtigt.", + "description": "Löscht diesen Benutzer einschließlich seiner Einstellungen. Wird keine Boards löschen. Benutzer wird nicht benachrichtigt.", "confirm": "Sind Sie sicher, dass Sie den Benutzer {username} mit seinen Einstellungen löschen möchten?" }, "select": { @@ -284,9 +284,9 @@ } }, "group": { - "title": "Gruppen", - "name": "Gruppe", - "search": "Finde eine Gruppe", + "title": "Benutzergruppen", + "name": "Benutzergruppe", + "search": "Finde eine Benutzergruppe", "field": { "name": "Name", "members": "Mitglieder" @@ -305,16 +305,16 @@ "title": "Apps", "item": { "create": { - "label": "Anwendung erstellen", - "description": "Mitgliedern erlauben, Apps zu erstellen" + "label": "Apps erstellen", + "description": "Mitgliedern das Erstellen von Apps erlauben" }, "use-all": { "label": "Alle Apps verwenden", - "description": "Erlauben Sie Mitgliedern, beliebige Apps zu ihren Boards hinzuzufügen" + "description": "Mitgliedern erlauben, Apps zu ihren Boards hinzuzufügen" }, "modify-all": { "label": "Alle Apps ändern", - "description": "Mitgliedern erlauben Apps zu ändern" + "description": "Mitgliedern das Erstellen von Apps erlauben" }, "full-all": { "label": "Voller App Zugriff", @@ -335,11 +335,11 @@ }, "modify-all": { "label": "Alle Boards ändern", - "description": "Erlaube Mitgliedern alle Boards zu ändern (beinhaltet nicht die Zugangskontrolle und den Gefahrenbereich)" + "description": "Erlaube Mitgliedern alle Boards zu ändern (beinhaltet keine Zugangskontrolle und Gefahrenbereich)" }, "full-all": { "label": "Voller Board Zugriff", - "description": "Erlaube Mitgliedern alle Boards (einschließlich der Zugriffskontrolle und des Gefahrenbereich) anzuzeigen, zu ändern und zu löschen" + "description": "Erlaube Mitgliedern alle Boards (einschließlich Zugriffskontrolle und Gefahrenbereich) anzuzeigen, zu ändern und zu löschen" } } }, @@ -347,20 +347,20 @@ "title": "Integrationen", "item": { "create": { - "label": "Integration anlegen", - "description": "Mitgliedern die Erstellung von Integrationen erlauben" + "label": "Integrationen erstellen", + "description": "Mitgliedern erlauben, Integrationen zu erstellen" }, "use-all": { "label": "Alle Integrationen nutzen", - "description": "Ermöglicht Mitgliedern, beliebige Integrationen zu ihren Boards hinzuzufügen" + "description": "Erlaubt Mitgliedern Integrationen zu ihren Boards hinzuzufügen" }, "interact-all": { - "label": "Interaktion mit allen Integrationen", - "description": "Ermöglichen Sie Mitgliedern die Interaktion mit jeder Integration" + "label": "Mit jeder Integration interagieren", + "description": "Mitgliedern erlauben, mit jeder Integration zu interagieren" }, "full-all": { "label": "Voller Zugriff auf Integrationen", - "description": "Erlaubt Mitgliedern jegliche Integration zu verwalten, nutzen und interagieren" + "description": "Erlaube Mitgliedern jede Integration zu verwalten, zu nutzen und zu interagieren" } } }, @@ -368,16 +368,16 @@ "title": "Medien", "item": { "upload": { - "label": "Medien hochladen", - "description": "Erlaubt Mitgliedern Medien hochzuladen" + "label": "Medien Hochladen", + "description": "Erlaube Mitgliedern Medien hochzuladen" }, "view-all": { "label": "Alle Medien anzeigen", "description": "Erlaubt Mitgliedern alle Medien anzusehen" }, "full-all": { - "label": "Voller Zugriff auf alle Medien", - "description": "Erlaubt Mitglieder die Verwaltung und das Entfernen jeglicher Medien" + "label": "Vollständiger Medienzugriff", + "description": "Mitgliedern das Verwalten und Löschen von Medien erlauben" } } }, @@ -399,10 +399,10 @@ }, "modify-all": { "label": "Alle Suchmaschinen ändern", - "description": "Erlaubt es den Mitgliedern die Suchmaschinen zu ändern" + "description": "Mitgliedern erlauben alle Suchmaschinen zu ändern" }, "full-all": { - "label": "Vollständiger Suchmaschinenzugriff", + "label": "Voller Zugriff auf Suchmaschinen", "description": "Mitgliedern das Verwalten und Löschen von Suchmaschinen erlauben" } } @@ -413,7 +413,7 @@ "external": "Alle Mitglieder haben externe Anmeldeoptionen genutzt und können von hier aus nicht verwaltet werden" }, "reservedNotice": { - "message": "Diese Gruppe ist für die Systemnutzung reserviert und schränkt einige Aktionen ein. " + "message": "Diese Gruppe ist für die Systemnutzung reserviert und beschränkt einige Aktionen. " }, "action": { "create": { @@ -428,7 +428,7 @@ } }, "transfer": { - "label": "Übertrage Eigentum", + "label": "Eigentum übertragen", "description": "Übertrage den Eigentümer dieser Gruppe an einen anderen Benutzer.", "confirm": "Bist du sicher, dass du das Eigentum für die Gruppe {name} an {username} übertragen möchtest?", "notification": { @@ -436,20 +436,20 @@ "message": "Gruppe {group} erfolgreich an {user} übertragen" }, "error": { - "message": "Eigentumsübertragung nicht möglich" + "message": "Übertragung des Eigentums nicht möglich" } } }, "addMember": { - "label": "Benutzer hinzufügen" + "label": "Mitglied hinzufügen" }, "removeMember": { - "label": "Benutzer entfernen", + "label": "Mitglied entfernen", "confirm": "Bist du sicher, dass du {user} aus dieser Gruppe entfernen möchtest?" }, "delete": { "label": "Gruppe löschen", - "description": "Sobald Sie eine Gruppe gelöscht haben, gibt es kein Zurück mehr. Bitte seien Sie sich dessen bewusst.", + "description": "Sobald Sie einen Arbeitsbereich löschen, gibt es keinen Weg sie wiederherzustellen. Bitte seien Sie sich dessen bewusst.", "confirm": "Sind Sie sicher, dass Sie die Gruppe {name} löschen möchten?", "notification": { "success": { @@ -463,7 +463,7 @@ "changePermissions": { "notification": { "success": { - "title": "Die Berechtigungen wurden gespeichert", + "title": "Berechtigungen gespeichert", "message": "Berechtigungen wurden erfolgreich gespeichert" }, "error": { @@ -493,7 +493,7 @@ "list": { "title": "Apps", "noResults": { - "title": "Es gibt noch keine Apps", + "title": "Noch keine Apps vorhanden", "action": "Erstelle deine erste App" } }, @@ -506,7 +506,7 @@ }, "error": { "title": "Erstellung fehlgeschlagen", - "message": "Die App konnte nicht erstellt werden" + "message": "Die App konnte nicht angelegt werden" } } }, @@ -528,12 +528,12 @@ "message": "Sind Sie sicher, dass Sie die App {name} löschen möchten?", "notification": { "success": { - "title": "Erfolgreich gellöscht", + "title": "Löschen erfolgreich", "message": "Die App wurde erfolgreich gelöscht" }, "error": { "title": "Löschen fehlgeschlagen", - "message": "Die App konnte nicht gelöscht werden" + "message": "App konnte nicht gelöscht werden" } } } @@ -562,7 +562,7 @@ "title": "Integrationen", "search": "Integrationen durchsuchen", "noResults": { - "title": "Es wurden noch keine Integrationen erstellt" + "title": "Es gibt noch keine Integrationen" } }, "create": { @@ -579,7 +579,7 @@ } }, "edit": { - "title": "Neue {name} Integration", + "title": "{name} Integration bearbeiten", "notification": { "success": { "title": "Änderungen erfolgreich angewendet", @@ -596,8 +596,8 @@ "message": "Sind Sie sicher, dass Sie die Integration {name} löschen möchten?", "notification": { "success": { - "title": "Erfolgreich gellöscht", - "message": "Die Integration wurde erfolgreich gelöscht" + "title": "Löschen erfolgreich", + "message": "Die Integration wurde erfolgreich erstellt" }, "error": { "title": "Löschen fehlgeschlagen", @@ -630,26 +630,26 @@ }, "invalidUrl": { "title": "Ungültige URL", - "message": "Die URL ist ungültig" + "message": "Die Adresse ist ungültig" }, "secretNotDefined": { - "title": "Fehlende Anmeldeinformationen", - "message": "Es wurden nicht alle Zugangsdaten angegeben" + "title": "Fehlende Anmeldedaten", + "message": "Nicht alle Zugangsdaten wurden angegeben" }, "invalidCredentials": { "title": "Ungültige Zugangsdaten", "message": "Die Zugangsdaten sind ungültig" }, "commonError": { - "title": "Verbindung fehlgeschlagen", + "title": "Verbindungsaufbau fehlgeschlagen", "message": "Die Verbindung konnte nicht hergestellt werden" }, "badRequest": { - "title": "Ungültige Anfrage", + "title": "Fehlerhafte Anfrage", "message": "Die Anfrage war fehlerhaft" }, "unauthorized": { - "title": "Unberechtigt", + "title": "Nicht autorisiert", "message": "Wahrscheinlich falsche Anmeldeinformationen" }, "forbidden": { @@ -658,7 +658,7 @@ }, "notFound": { "title": "Nicht gefunden", - "message": "Wahrscheinlich falsche URL oder falscher Pfad" + "message": "Wahrscheinlich falsche URL oder Pfad" }, "internalServerError": { "title": "Interner Serverfehler", @@ -673,38 +673,38 @@ "message": "Die Verbindung wurde abgebrochen" }, "domainNotFound": { - "title": "Die Domain konnte nicht gefunden werden", + "title": "Domain nicht gefunden", "message": "Die Domain konnte nicht gefunden werden" }, "connectionRefused": { - "title": "Verbindung abgelehnt", + "title": "Verbindung verweigert", "message": "Die Verbindung wurde abgelehnt" }, "invalidJson": { "title": "Ungültiges JSON", - "message": "Die Antwort war kein gültiges JSON" + "message": "Die Antwort war ungültig JSON" }, "wrongPath": { - "title": "Ungültiger Pfad", - "message": "Der Pfad ist wahrscheinlich nicht korrekt" + "title": "Falscher Pfad", + "message": "Der Pfad ist vermutlich nicht korrekt" } } }, "secrets": { - "title": "Geheimnisse", - "lastUpdated": "Zuletzt aktualisiert {date}", + "title": "Secrets", + "lastUpdated": "Zuletzt aktualisiert am {date}", "notSet": { - "label": "Kein Wert angegeben", - "tooltip": "Dieses erforderliche Geheimnis wurde noch nicht festgelegt" + "label": "Kein Wert festgelegt", + "tooltip": "Das erforderliche Secret wurde noch nicht festgelegt" }, - "secureNotice": "Dieses Geheimnis kann nach der Erstellung nicht mehr abgerufen werden", + "secureNotice": "Das Secret kann nicht nach der Erstellung abgerufen werden", "reset": { - "title": "Geheimnis zurücksetzen", + "title": "Secret zurücksetzen", "message": "Bist du sicher, dass du dieses Secret zurücksetzen möchtest?" }, "noSecretsRequired": { - "segmentTitle": "Keine Geheimnisse", - "text": "Für diese Integration sind keine Geheimnisse erforderlich" + "segmentTitle": "Keine Secrets", + "text": "Kein Secret für diese Integration erforderlich" }, "kind": { "username": { @@ -713,7 +713,7 @@ }, "apiKey": { "label": "API Schlüssel", - "newLabel": "Neuer API Schlüssel" + "newLabel": "neuer API Schlüssel" }, "password": { "label": "Passwort", @@ -729,7 +729,7 @@ }, "media": { "plural": "Medien", - "search": "Medium finden", + "search": "Medien suchen", "field": { "name": "Name", "size": "Größe", @@ -737,7 +737,7 @@ }, "action": { "upload": { - "label": "Medium hochladen", + "label": "Medien Hochladen", "file": "Datei auswählen", "notification": { "success": { @@ -750,18 +750,18 @@ }, "delete": { "label": "Medium löschen", - "description": "Möchten Sie das Medium wirklich löschen?", + "description": "Sind Sie sicher, dass Sie die Medien löschen möchten?", "notification": { "success": { "message": "Das Medium wurde erfolgreich gelöscht" }, "error": { - "message": "Das Medium konnte nicht gelöscht werden" + "message": "Die Medien konnten nicht gelöscht werden" } } }, "copy": { - "label": "URL kopieren" + "label": "URL in Zwischenablage kopieren" } } }, @@ -774,7 +774,7 @@ "backToOverview": "Zurück zur Übersicht", "create": "Erstellen", "edit": "Bearbeiten", - "import": "Importieren", + "import": "Import", "insert": "Einfügen", "remove": "Entfernen", "save": "Speichern", @@ -786,15 +786,15 @@ "continue": "Fortfahren", "previous": "Zurück", "next": "Weiter", - "checkoutDocs": "Sieh dir die Dokumentation an", - "checkLogs": "Überprüfen Sie die Logs für weitere Details", + "checkoutDocs": "Die Dokumentation ansehen", + "checkLogs": "Logs für weitere Details prüfen", "tryAgain": "Erneut versuchen", - "loading": "Wird geladen..." + "loading": "Wird geladen" }, - "here": "hier", + "here": "Hier", "iconPicker": { "label": "Icon URL", - "header": "Geben Sie den Namen oder das Objekte ein, um nach Symbolen zu filtern ... Homarr durchsucht für Sie {countIcons} Symbole." + "header": "Geben Sie Namen oder Objekte ein, um nach Symbolen zu filtern... Homarr sucht nach {countIcons} Icons für Sie." }, "colorScheme": { "options": { @@ -815,7 +815,7 @@ "error": "Erstellung fehlgeschlagen" }, "delete": { - "success": "Erfolgreich gellöscht", + "success": "Löschen erfolgreich", "error": "Löschen fehlgeschlagen" }, "update": { @@ -828,7 +828,7 @@ } }, "multiSelect": { - "placeholder": "Wählen Sie einen oder mehrere Werte aus" + "placeholder": "Wählen Sie einen oder mehrere Werte" }, "multiText": { "placeholder": "Weitere Werte hinzufügen", @@ -850,14 +850,14 @@ "login": "Anmelden", "homeBoard": "Ihr Home Board", "loggedOut": "Abgemeldet", - "updateAvailable": "{countUpdates} Aktualisierungen verfügbar: {tag}" + "updateAvailable": "{countUpdates} Updates verfügbar: {tag}" } }, - "dangerZone": "Gefahrenzone", + "dangerZone": "Gefahrenbereich", "noResults": "Die Suche ergab keine Treffer", "preview": { - "show": "Vorschau anzeigen", - "hide": "Vorschau verbergen" + "show": "Vorschau ansehen", + "hide": "Vorschau ausblenden" }, "zod": { "errors": { @@ -881,8 +881,8 @@ "passwordsDoNotMatch": "Passwörter stimmen nicht überein", "passwordRequirements": "Passwort erfüllt nicht alle Anforderungen", "boardAlreadyExists": "Ein Board mit diesem Namen existiert bereits", - "invalidFileType": "Ungültiger Dateityp, erwarte {expected}", - "fileTooLarge": "Die Datei ist zu groß. Die maximale Größe beträgt {maxSize}", + "invalidFileType": "Ungültiger Dateityp, erwartete {expected}", + "fileTooLarge": "Datei ist zu groß, maximale Größe ist {maxSize}", "invalidConfiguration": "Ungültige Konfiguration", "groupNameTaken": "Gruppenname bereits vergeben" } @@ -903,7 +903,7 @@ "category": { "field": { "name": { - "label": "Name" + "label": "" } }, "action": { @@ -992,7 +992,7 @@ }, "widget": { "app": { - "name": "App", + "name": "", "description": "Bettet eine App in das Board ein.", "option": { "appId": { @@ -1029,7 +1029,7 @@ "label": "Ansicht", "option": { "row": { - "label": "Horizontal" + "label": "" }, "column": { "label": "Vertikal" @@ -1047,7 +1047,7 @@ }, "dnsHoleSummary": { "name": "", - "description": "", + "description": "Zeigt die Zusammenfassung deines DNS Holes an", "option": { "layout": { "label": "Ansicht", @@ -1059,27 +1059,27 @@ "label": "Vertikal" }, "grid": { - "label": "" + "label": "Raster" } } }, "usePiHoleColors": { - "label": "" + "label": "Pi Hole Farben verwenden" } }, "error": { - "internalServerError": "", - "integrationsDisconnected": "" + "internalServerError": "Fehler beim Abrufen der DNS Hole Zusammenfassung", + "integrationsDisconnected": "Keine Daten verfügbar, alle Integrationen getrennt" }, "data": { "adsBlockedToday": "Heute blockiert", "adsBlockedTodayPercentage": "Heute blockiert", - "dnsQueriesToday": "Heutige Anfragen", - "domainsBeingBlocked": "" + "dnsQueriesToday": "Abfragen heute", + "domainsBeingBlocked": "Domänen auf der Sperrliste" } }, "dnsHoleControls": { - "name": "", + "name": "DNS Hole Steuerung", "description": "Steuern Sie PiHole oder AdGuard von Ihrem Dashboard aus", "option": { "layout": { @@ -1092,26 +1092,26 @@ "label": "Vertikal" }, "grid": { - "label": "" + "label": "Raster" } } }, "showToggleAllButtons": { - "label": "" + "label": "Alle Schaltflächen anzeigen" } }, "error": { - "internalServerError": "" + "internalServerError": "Fehler bei der Kontrolle des DNS Holes" }, "controls": { - "enableAll": "", - "disableAll": "", - "setTimer": "", - "set": "Speichern", + "enableAll": "Alle aktivieren", + "disableAll": "Alle deaktivieren", + "setTimer": "Timer setzen", + "set": "Übernehmen", "enabled": "Aktiviert", "disabled": "Deaktiviert", - "processing": "", - "disconnected": "", + "processing": "Wird verarbeitet", + "disconnected": "Verbindung getrennt", "hours": "Stunden", "minutes": "Minuten", "unlimited": "Freilassen für unbegrenzt" @@ -1122,8 +1122,8 @@ "description": "Zeigt das aktuelle Datum und die Uhrzeit an.", "option": { "customTitleToggle": { - "label": "Benutzerdefinierte Titel-/Stadtanzeige", - "description": "Zeigen Sie einen individuellen Titel oder den Namen der Stadt/des Landes oben auf der Uhr." + "label": "Eigene Titel/Stadt Anzeige", + "description": "Zeige einen benutzerdefinierten Titel oder den Namen der Stadt oder des Landes oben auf der Uhr." }, "customTitle": { "label": "Titel" @@ -1140,7 +1140,7 @@ }, "timezone": { "label": "Zeitzone", - "description": "Wählen Sie die Zeitzone gemäß dem IANA-Standard" + "description": "Wählen Sie die Zeitzone nach dem IANA-Standard" }, "showDate": { "label": "Datum anzeigen" @@ -1183,7 +1183,7 @@ "checkList": "Checkliste", "increaseIndent": "Einzug vergrößern", "decreaseIndent": "Einzug verkleinern", - "link": "Link", + "link": "Verknüpfung", "unlink": "Link entfernen", "image": "Bild einbetten", "addTable": "Tabelle hinzufügen", @@ -1251,7 +1251,7 @@ }, "smartHome-entityState": { "name": "Zustand der Entität", - "description": "Den Status einer Entität anzeigen und optional umschalten", + "description": "Zeigt den Status einer Entität an und schaltet ihn optional ein", "option": { "entityId": { "label": "Eintrag-ID" @@ -1269,7 +1269,7 @@ }, "smartHome-executeAutomation": { "name": "Automatisierung ausführen", - "description": "Lösen Sie eine Automatisierung mit einem Klick aus", + "description": "Automatisierung mit einem Klick auslösen", "option": { "displayName": { "label": "Anzeigename" @@ -1298,7 +1298,7 @@ "label": "Start von" }, "filterFutureMonths": { - "label": "Endet um" + "label": "Endet am" } } }, @@ -1345,14 +1345,14 @@ } }, "indexerManager": { - "name": "Status des Indexer-Managers", + "name": "Status des Index Managers", "description": "Status des Indexer", "option": { "openIndexerSiteInNewTab": { "label": "Indexer Seite in neuem Tab öffnen" } }, - "title": "Indexer-Manager", + "title": "Index Manager", "testAll": "Alle testen", "error": { "internalServerError": "Fehler beim Abrufen des Indexer Status" @@ -1380,7 +1380,7 @@ "processor": "Prozessor: {cpuModelName}", "memory": "Speicher: {memory}GiB", "memoryAvailable": "Verfügbar: {memoryAvailable} GiB ({percent}%)", - "version": "Version: {version}", + "version": "", "uptime": "Laufzeit: {months} Monate, {days} Tage, {hours} Stunden, {minutes} Minuten", "loadAverage": "Durchschnittliche Last:", "minute": "1 Minute", @@ -1401,7 +1401,7 @@ "longitude": "", "disabledTooltip": "", "unknownLocation": "", - "search": "Suchen", + "search": "Suche", "table": { "header": { "city": "", @@ -1436,7 +1436,7 @@ "description": "Einbetten eines Videostreams oder eines Videos von einer Kamera oder einer Website", "option": { "feedUrl": { - "label": "Feed-URL" + "label": "Feed URL" }, "hasAutoPlay": { "label": "Automatische Wiedergabe", @@ -1511,18 +1511,18 @@ "detailsTitle": "" }, "downSpeed": { - "columnTitle": "Down", + "columnTitle": "", "detailsTitle": "Download Geschwindigkeit" }, "index": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "#", + "detailsTitle": "Aktueller Index im Client" }, "id": { "columnTitle": "" }, "integration": { - "columnTitle": "Integration" + "columnTitle": "" }, "name": { "columnTitle": "" @@ -1560,12 +1560,12 @@ "detailsTitle": "" }, "upSpeed": { - "columnTitle": "Up", + "columnTitle": "", "detailsTitle": "" } }, "states": { - "downloading": "Herunterladen", + "downloading": "Wird heruntergeladen", "queued": "In der Warteschlange", "paused": "Pausiert", "completed": "Abgeschlossen", @@ -1627,18 +1627,18 @@ "option": {}, "titles": { "stats": { - "main": "Medien-Statistiken", + "main": "Medien Statistiken", "approved": "Bereits genehmigt", "pending": "Ausstehende Freigaben", "processing": "", "declined": "", "available": "", - "tv": "TV-Anfragen", - "movie": "Film-Anfragen", + "tv": "TV Anfragen", + "movie": "Film Anfragen", "total": "Gesamt" }, "users": { - "main": "Top-Nutzer", + "main": "Top Nutzer", "requests": "" } } @@ -1655,11 +1655,11 @@ } }, "tab": { - "workers": "Workers", + "workers": "", "queue": "Warteschlange", "statistics": "Statistiken" }, - "currentIndex": "", + "currentIndex": "{start}-{end} von {total}", "healthCheck": { "title": "", "queued": "In der Warteschlange", @@ -1677,7 +1677,7 @@ "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "Codecs", + "videoCodecs": "", "videoContainers": "Container", "videoResolutions": "Auflösungen" }, @@ -1766,7 +1766,7 @@ "invalidError": "" }, "apps": { - "label": "Apps", + "label": "", "avoidDuplicates": { "label": "", "description": "" @@ -1889,10 +1889,10 @@ "label": "" }, "name": { - "label": "Name" + "label": "" }, "isPublic": { - "label": "Öffentlich sichtbar", + "label": "Öffentlich", "description": "" } }, @@ -1935,7 +1935,7 @@ } }, "dangerZone": { - "title": "Gefahrenzone", + "title": "Gefahrenbereich", "action": { "rename": { "label": "", @@ -2026,8 +2026,8 @@ "navbar": { "items": { "home": "Startseite", - "boards": "Boards", - "apps": "Apps", + "boards": "", + "apps": "", "integrations": "Integrationen", "searchEngies": "Suchmaschinen", "medias": "Medien", @@ -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": "Community Discord", + "discord": "", "sourceCode": "" } }, @@ -2064,15 +2064,15 @@ "page": { "home": { "statistic": { - "board": "Boards", + "board": "", "user": "Benutzer", "invite": "Einladungen", "integration": "Integrationen", - "app": "Apps", + "app": "", "group": "Gruppen" }, "statisticLabel": { - "boards": "Boards", + "boards": "", "resources": "", "authentication": "", "authorization": "" @@ -2113,7 +2113,7 @@ "createBoard": { "field": { "name": { - "label": "Name" + "label": "" } } } @@ -2130,7 +2130,7 @@ "title": "Allgemein", "item": { "language": "", - "board": "Home board", + "board": "", "firstDayOfWeek": "Erster Tag der Woche", "accessibility": "Barrierefreiheit" } @@ -2139,7 +2139,7 @@ "title": "Sicherheit" }, "board": { - "title": "Boards" + "title": "" } }, "list": { @@ -2184,7 +2184,7 @@ "action": { "new": { "title": "", - "description": "Nach Ablauf der Frist ist eine Einladung nicht mehr gültig und der Empfänger der Einladung kann kein Konto erstellen." + "description": "Nach Ablauf der Frist ist die Einladung nicht mehr gültig und der Empfänger der Einladung kann kein Konto mehr erstellen." }, "copy": { "title": "", @@ -2199,7 +2199,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Ersteller" @@ -2208,7 +2208,7 @@ "label": "Ablaufdatum" }, "token": { - "label": "Token" + "label": "" } } } @@ -2266,27 +2266,27 @@ } }, "crawlingAndIndexing": { - "title": "", - "warning": "", + "title": "Suche und Indexiere", + "warning": "Das Aktivieren oder Deaktivieren von Einstellungen hier wird schwerwiegende Auswirkungen haben, wie Suchmaschinen Ihre Seite suchen und indizieren. Jede Einstellung startet eine Anforderung und es ist die Aufgabe des Crawlers, diese Einstellungen zu übernehmen. Änderungen können mehrere Tage oder Wochen dauern. Einige Einstellungen können Suchmaschinenspezifisch sein.", "noIndex": { - "title": "", - "text": "" + "title": "Kein Index", + "text": "Die Webseite nicht in Suchmaschinen indizieren und in keinem Suchergebnis anzeigen" }, "noFollow": { - "title": "", - "text": "" + "title": "Keine Folgen", + "text": "Folgen Sie keine Links während der Indexierung. Deaktivieren kann dazu führen, dass Crawler versuchen, allen Links auf Homarr zu folgen." }, "noTranslate": { - "title": "", - "text": "" + "title": "Nicht Übersetzen", + "text": "Wenn die Sprache der Seite wahrscheinlich nicht zu lesen ist wird der Benutzer höchstwahrscheinlich wollen das Google einen Übersetzungslink in den Suchergebnissen zeigt" }, "noSiteLinksSearchBox": { - "title": "", - "text": "" + "title": "Kein Suchfeld für Seitenlinks", + "text": "Google baut ein Suchfeld mit den gecrawlten Links zusammen mit anderen direkten Links auf. Durch das Aktivieren dieser Option wird Google aufgefordert, dieses Feld zu deaktivieren." } }, "board": { - "title": "Boards", + "title": "", "homeBoard": { "label": "", "description": "" @@ -2315,7 +2315,7 @@ "title": "", "status": { "idle": "", - "running": "Aktiv", + "running": "Wird ausgeführt", "error": "Fehler" }, "job": { @@ -2350,7 +2350,7 @@ "label": "" }, "indexerManager": { - "label": "" + "label": "Index Manager" }, "healthMonitoring": { "label": "" @@ -2370,7 +2370,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2390,7 +2390,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2427,7 +2427,7 @@ }, "field": { "name": { - "label": "Name" + "label": "" }, "state": { "label": "Staat", @@ -2442,10 +2442,10 @@ } }, "containerImage": { - "label": "Image" + "label": "" }, "ports": { - "label": "Ports" + "label": "" } }, "action": { @@ -2552,7 +2552,7 @@ "manage": { "label": "Verwalten", "boards": { - "label": "Boards" + "label": "" }, "integrations": { "label": "Integrationen", @@ -2576,7 +2576,7 @@ "label": "Medien" }, "apps": { - "label": "Apps", + "label": "", "new": { "label": "" }, @@ -2591,7 +2591,7 @@ }, "general": "Allgemein", "security": "Sicherheit", - "board": "Boards", + "board": "", "groups": { "label": "Gruppen" }, @@ -2602,7 +2602,7 @@ "tools": { "label": "Werkzeuge", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" @@ -2627,7 +2627,7 @@ "help": "", "group": { "app": { - "title": "Apps", + "title": "", "children": { "action": { "open": { @@ -2643,7 +2643,7 @@ } }, "board": { - "title": "Boards", + "title": "", "children": { "action": { "open": { @@ -2749,7 +2749,7 @@ "description": "" }, "torrent": { - "name": "Torrents", + "name": "", "description": "" }, "youTube": { @@ -2775,7 +2775,7 @@ "label": "" }, "discord": { - "label": "Community Discord" + "label": "" } } } @@ -2840,7 +2840,7 @@ "label": "Über" }, "homeBoard": { - "label": "Home board" + "label": "" }, "preferences": { "label": "Ihre Einstellungen" @@ -2891,7 +2891,7 @@ "search": "", "field": { "name": { - "label": "Name" + "label": "" }, "short": { "label": "" diff --git a/packages/translation/src/lang/he.json b/packages/translation/src/lang/he.json index 23c4ed947..3b6df5fd9 100644 --- a/packages/translation/src/lang/he.json +++ b/packages/translation/src/lang/he.json @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "הטמע כל תוכן מהאינטרנט. חלק מהאתרים עשויים להגביל את הגישה.", "option": { "embedUrl": { @@ -1515,7 +1515,7 @@ "detailsTitle": "מהירות הורדה" }, "index": { - "columnTitle": "#", + "columnTitle": "", "detailsTitle": "מדד נוכחי בתוך הלקוח" }, "id": { diff --git a/packages/translation/src/lang/tr.json b/packages/translation/src/lang/tr.json index 570500964..45e560300 100644 --- a/packages/translation/src/lang/tr.json +++ b/packages/translation/src/lang/tr.json @@ -6,59 +6,59 @@ "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": "Sıfırdan başlayın", - "importOldmarr": "Homarr 1.0'dan önceki yedeğinizi içe aktarın" + "scratch": "Sıfırdan Başla", + "importOldmarr": "Homarr 1.0'dan Önceki Yedeğinizi İçe Aktarın" } }, "import": { - "title": "Verileri içe aktar", - "subtitle": "Mevcut bir Homarr örneğinden alınan verileri içe aktarabilirsiniz.", + "title": "Verileri İçe Aktar", + "subtitle": "Mevcut Homarr Örneğinden Alınan Verileri İçe Aktarabilirsiniz.", "dropzone": { "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": "Dosyayı değiştir" + "change": "Dosyayı Değiştir" } }, "importSettings": { - "title": "İçe aktarma ayarları", - "description": "İçe aktarma işlevlerini yapılandırın" + "title": "İçe Aktarma Ayarları", + "description": "İçe Aktarma İşlevlerini Yapılandırın" }, "boardSelection": { - "title": "{count} panel bulundu", - "description": "İçe aktarılacak tüm panellerin boyutlarını seçin", + "title": "{count} Panel Bulundu", + "description": "İçe Aktarılacak Tüm Panellerin Boyutlarını Seçin", "action": { - "selectAll": "Tümünü seç", - "unselectAll": "Tüm seçimi kaldır" + "selectAll": "Tümünü Seç", + "unselectAll": "Tüm Seçimi Kaldır" } }, "summary": { - "title": "İçe aktarma özeti", - "description": "Aşağıdaki özeti kontrol ederek içe aktarılacak işlevleri görebilirsiniz", + "title": "İçe Aktarma Özeti", + "description": "Aşağıdaki Özeti Kontrol Ederek İçe Aktarılacak İşlevleri Görebilirsiniz", "action": { - "import": "İçe aktarmayı onayla ve devam et" + "import": "İçe Aktarmayı Onayla ve Devam Et" }, "entities": { "apps": "Uygulamalar", "boards": "Paneller", "integrations": "Entegrasyonlar", - "credentialUsers": "Kullanıcı kimlik Bilgileri" + "credentialUsers": "Kullanıcı Kimlik Bilgileri" } }, "tokenModal": { - "title": "İçe aktarma token'ını girin", + "title": "İçe Aktarma Token'ını Girin", "field": { "token": { "label": "Erişim Anahtarı", - "description": "Önceki homarr örneğinizden aldığınız içe aktarma Token'ını girin" + "description": "Önceki Homarr Örneğinizden Aldığınız İçe Aktarma Token'ını girin" } }, "notification": { "error": { - "title": "Geçersiz token", - "message": "Girdiğiniz token geçersiz" + "title": "Geçersiz Token", + "message": "Girdiğiniz Token Geçersiz" } } } @@ -92,24 +92,24 @@ }, "finish": { "title": "Kurulumu Bitir", - "subtitle": "Başlamaya hazırsınız!", + "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": "{name} paneline git", - "createBoard": "İlk panelinizi oluşturun", - "inviteUser": "Yeni kullanıcı davet et", - "docs": "Dökümanları okuyun" + "goToBoard": "{name} Paneline Git", + "createBoard": "İlk Panelinizi Oluşturun", + "inviteUser": "Yeni Kullanıcı Davet Et", + "docs": "Dökümanları Oku" } } }, - "backToStart": "Başlangıca geri dön" + "backToStart": "Başlangıca Geri Dön" }, "user": { "title": "Kullanıcılar", "name": "Kullanıcı", "page": { "login": { - "title": "Hesabınıza giriş yapın", + "title": "Hesabınıza Giriş Yapın", "subtitle": "Tekrar hoş geldiniz! Lütfen kimlik bilgilerinizi girin" }, "invite": { @@ -118,7 +118,7 @@ "description": "{username} tarafından davet edildiniz" }, "init": { - "title": "Yeni Homarr kurulumu", + "title": "Yeni Homarr Kurulumu", "subtitle": "Lütfen yönetici kullanıcısını oluşturun" } }, @@ -141,7 +141,7 @@ } }, "passwordConfirm": { - "label": "Şifreyi onayla" + "label": "Şifreyi Onayla" }, "previousPassword": { "label": "Eski Şifre" @@ -150,11 +150,11 @@ "label": "Öntanımlı panel" }, "pingIconsEnabled": { - "label": "Pingler için simgeler kullanın" + "label": "Pingler İçin Simgeler Kullanın" } }, "error": { - "usernameTaken": "Kullanıcı adı önceden alındı" + "usernameTaken": "Kullanıcı Adı Önceden Alındı" }, "action": { "login": { @@ -391,7 +391,7 @@ } }, "search-engine": { - "title": "Arama motorları", + "title": "Arama Motorları", "item": { "create": { "label": "Arama motorları oluşturun", @@ -498,7 +498,7 @@ } }, "create": { - "title": "Yeni uygulama", + "title": "Yeni Uygulama", "notification": { "success": { "title": "Oluşturma başarılı", @@ -566,7 +566,7 @@ } }, "create": { - "title": "Yeni {name} entegrasyonu", + "title": "Yeni {name} Entegrasyonu", "notification": { "success": { "title": "Oluşturma başarılı", @@ -615,7 +615,7 @@ } }, "action": { - "create": "Yeni entegrasyon" + "create": "Yeni Entegrasyon" }, "testConnection": { "action": { @@ -703,13 +703,13 @@ "message": "Gizli anahtarı sıfırlamak istediğinizden emin misiniz?" }, "noSecretsRequired": { - "segmentTitle": "Hiçbir Gizli anahtar yok", + "segmentTitle": "Gizli Anahtar Yok", "text": "Bu entegrasyon için gizli anahtar gerekmiyor" }, "kind": { "username": { "label": "Kullanıcı adı", - "newLabel": "Yeni kullanıcı adı" + "newLabel": "Yeni Kullanıcı Adı" }, "apiKey": { "label": "API Anahtarı", @@ -717,7 +717,7 @@ }, "password": { "label": "Şifre", - "newLabel": "Yeni parola" + "newLabel": "Yeni Şifre" } } }, @@ -766,7 +766,7 @@ } }, "common": { - "beta": "Beta", + "beta": "Test", "error": "Hata", "action": { "add": "Ekle", @@ -803,8 +803,8 @@ } }, "information": { - "min": "Asgari", - "max": "Azami", + "min": "En Düşük", + "max": "En Yüksek", "days": "Gün", "hours": "Saat", "minutes": "Dakika" @@ -842,8 +842,8 @@ }, "userAvatar": { "menu": { - "switchToDarkMode": "Koyu moda geç", - "switchToLightMode": "Aydınlık moda geç", + "switchToDarkMode": "Koyu Temaya Geç", + "switchToLightMode": "Aydınlık Temaya Geç", "management": "Yönetim", "preferences": "Tercihleriniz", "logout": "Oturumu kapat", @@ -853,11 +853,11 @@ "updateAvailable": "{countUpdates} güncelleme mevcut: {tag}" } }, - "dangerZone": "Tehlikeli bölge", + "dangerZone": "Tehlikeli Bölge", "noResults": "Sonuç bulunamadı", "preview": { - "show": "Önizlemeyi göster", - "hide": "Önizlemeyi Gizle" + "show": "Ara Renkleri Göster", + "hide": "Ara Renkleri Gizle" }, "zod": { "errors": { @@ -866,16 +866,16 @@ "string": { "startsWith": "Bu alan {startsWith} ile başlamalıdır", "endsWith": "Bu alan {endsWith} ile bitmelidir", - "includes": "Bu alan {includes} adresini içermelidir", + "includes": "Bu alan {includes} içermelidir", "invalidEmail": "Bu alanda geçerli bir e-posta olmalıdır" }, "tooSmall": { "string": "Bu alan en az {minimum} karakter uzunluğunda olmalıdır", - "number": "Bu alan {minimum} adresinden uzun veya eşit olmalıdır" + "number": "Bu alan {minimum} değerinden uzun veya eşit olmalıdır" }, "tooBig": { "string": "Bu alan en fazla {maximum} karakter uzunluğunda olmalıdır", - "number": "Bu alan {maximum} adresinden kısa veya eşit olmalıdır" + "number": "Bu alan {maximum} değerinden kısa veya eşit olmalıdır" }, "custom": { "passwordsDoNotMatch": "Parolalar uyuşmuyor", @@ -892,7 +892,7 @@ "section": { "dynamic": { "action": { - "create": "Yeni dinamik bölüm", + "create": "Yeni Dinamik Bölüm", "remove": "Dinamik bölümü kaldır" }, "remove": { @@ -907,16 +907,16 @@ } }, "action": { - "create": "Yeni kategori", - "edit": "Kategoriyi yeniden adlandır", + "create": "Yeni Kategori", + "edit": "Kategoriyi Yeniden Adlandır", "remove": "Kategoriyi kaldır", "moveUp": "Yukarı taşı", "moveDown": "Aşağı taşı", - "createAbove": "Yukarı yeni kategori", - "createBelow": "Aşağı yeni kategori" + "createAbove": "Yukarı Yeni Kategori", + "createBelow": "Aşağı Yeni Kategori" }, "create": { - "title": "Yeni kategori", + "title": "Yeni Kategori", "submit": "Kategori ekle" }, "remove": { @@ -924,12 +924,12 @@ "message": "{name} kategorisini kaldırmak istediğinizden emin misiniz?" }, "edit": { - "title": "Kategoriyi yeniden adlandır", - "submit": "Kategoriyi yeniden adlandır" + "title": "Kategoriyi Yeniden Adlandır", + "submit": "Kategoriyi Yeniden Adlandır" }, "menu": { "label": { - "create": "Yeni kategori", + "create": "Yeni Kategori", "changePosition": "Pozisyonu değiştir" } } @@ -937,10 +937,10 @@ }, "item": { "action": { - "create": "Yeni öğe", + "create": "Yeni Öğe", "import": "Öğeleri İçe Aktar", "edit": "Öğeyi Düzenle", - "moveResize": "Öğeyi taşı / yeniden boyutlandır", + "moveResize": "Öğeyi Taşı / Yeniden Boyutlandır", "duplicate": "Öğeyi Çoğalt", "remove": "Öğeyi kaldır" }, @@ -954,7 +954,7 @@ "addToBoard": "Panele Ekle" }, "moveResize": { - "title": "Öğeyi taşı / yeniden boyutlandır", + "title": "Öğeyi Taşı / Yeniden Boyutlandır", "field": { "width": { "label": "Genişlik" @@ -981,7 +981,7 @@ "label": "Entegrasyonlar" }, "customCssClasses": { - "label": "Özel css sınıfları" + "label": "Özel CSS Alanı" } } }, @@ -999,7 +999,7 @@ "label": "Uygulama seç" }, "openInNewTab": { - "label": "Yeni sekmede aç" + "label": "Yeni Sekmede Aç" }, "showTitle": { "label": "Uygulama adını göster" @@ -1013,13 +1013,13 @@ }, "error": { "notFound": { - "label": "Uygulama yok", + "label": "Uygulama Eklenmedi", "tooltip": "Geçerli bir uygulama seçmediniz" } } }, "bookmarks": { - "name": "Yer imleri", + "name": "Yer İmleri", "description": "Birden fazla uygulama bağlantısını görüntüler", "option": { "title": { @@ -1040,7 +1040,7 @@ } }, "items": { - "label": "Yer imleri", + "label": "Yer İmleri", "add": "Yer imi ekle" } } @@ -1069,7 +1069,7 @@ }, "error": { "internalServerError": "DNS Çözümleyici Özeti alınamadı", - "integrationsDisconnected": "Veri yok, tüm entegrasyonların bağlantısı kesildi" + "integrationsDisconnected": "Veri Bulunamadı, Tüm Entegrasyonların Bağlantısı Kesildi" }, "data": { "adsBlockedToday": "Bugün engellenenler", @@ -1079,7 +1079,7 @@ } }, "dnsHoleControls": { - "name": "DNS çözümleyici kontrolleri", + "name": "DNS Çözümleyici Kontrolleri", "description": "Kontrol panelinizden PiHole veya AdGuard'ı kontrol edin", "option": { "layout": { @@ -1110,7 +1110,7 @@ "set": "Ayarla", "enabled": "Etkin", "disabled": "Pasif", - "processing": "İşleniyor", + "processing": "İşlemde", "disconnected": "Bağlantısı kesildi", "hours": "Saat", "minutes": "Dakika", @@ -1118,7 +1118,7 @@ } }, "clock": { - "name": "Tarih ve saat", + "name": "Tarih ve Saat", "description": "Geçerli tarih ve saati görüntüler.", "option": { "customTitleToggle": { @@ -1152,7 +1152,7 @@ } }, "notebook": { - "name": "Not defteri", + "name": "Not Defteri", "description": "Markdown'ı destekleyen basit bir not defteri bileşeni", "option": { "showToolbar": { @@ -1268,7 +1268,7 @@ } }, "smartHome-executeAutomation": { - "name": "Otomasyonu Yürüt", + "name": "Otomasyon Yürüt", "description": "Tek tıklamayla otomasyonu tetikleyin", "option": { "displayName": { @@ -1295,10 +1295,10 @@ } }, "filterPastMonths": { - "label": "Başla" + "label": "Başlangıç" }, "filterFutureMonths": { - "label": "Bitir" + "label": "Bitiş" } } }, @@ -1352,7 +1352,7 @@ "label": "İndeksleyici Sitesini Yeni Sekmede Aç" } }, - "title": "Dizin oluşturucu yöneticisi", + "title": "İndeksleyici Yöneticisi", "testAll": "Tümünü test et", "error": { "internalServerError": "İndeksleyicilerin durumu alınamadı" @@ -1379,14 +1379,14 @@ "information": "Bilgi", "processor": "İşlemci: {cpuModelName}", "memory": "Bellek: {memory}GiB", - "memoryAvailable": "Mevcut: {memoryAvailable}GiB ({percent}%)", + "memoryAvailable": "Kullanılabilir: {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", + "available": "Kullanılabilir", "lastSeen": "Son durum güncellemesi: {lastSeen}" }, "memory": {}, @@ -1455,7 +1455,7 @@ } }, "mediaServer": { - "name": "Güncel medya sunucusu akışları", + "name": "Güncel Medya Sunucusu Akışları", "description": "Medya sunucularınızdaki mevcut akışları gösterin", "option": {} }, @@ -1470,7 +1470,7 @@ "label": "Öğelerin sıralanmasını etkinleştir" }, "defaultSort": { - "label": "Varsayılan olarak sıralama için kullanılan sütun" + "label": "Öntanımlı olarak sıralama için kullanılan sütun" }, "descendingDefaultSort": { "label": "Ters sıralama" @@ -1503,7 +1503,7 @@ "columnTitle": "Kontroller" }, "added": { - "columnTitle": "Eklendi", + "columnTitle": "Ekleme", "detailsTitle": "Ekleme Tarihi" }, "category": { @@ -1532,7 +1532,7 @@ "detailsTitle": "İndirme İlerlemesi" }, "ratio": { - "columnTitle": "Ratio", + "columnTitle": "Oran", "detailsTitle": "Torrent oranı (alınan/gönderilen)" }, "received": { @@ -1570,7 +1570,7 @@ "paused": "Duraklatıldı", "completed": "Tamamlanan", "failed": "Başarısız", - "processing": "İşleniyor", + "processing": "İşlemde", "leeching": "Leechleme", "stalled": "Durduruldu", "unknown": "Bilinmeyen", @@ -1615,7 +1615,7 @@ "availability": { "unknown": "Bilinmeyen", "pending": "Bekleyen", - "processing": "İşleniyor", + "processing": "İşlemde", "partiallyAvailable": "Kısmi", "available": "Mevcut" }, @@ -1631,8 +1631,8 @@ "approved": "Onaylanan", "pending": "Onay bekleyen", "processing": "İşleniyor", - "declined": "Zaten reddedildi", - "available": "Zaten Mevcut", + "declined": "Reddedilen", + "available": "Mevcut", "tv": "Dizi talepleri", "movie": "Film talepleri", "total": "Toplam" @@ -1644,14 +1644,14 @@ } }, "mediaTranscoding": { - "name": "Medya kod dönüştürme", + "name": "Medya Kod Dönüştürme", "description": "Medya kod dönüştürmenizin istatistikleri, geçerli kuyruğu ve çalışan durumu", "option": { "defaultView": { "label": "Öntanımlı görünüm" }, "queuePageSize": { - "label": "Sıra sayfa boyutu" + "label": "Kuyruk Sayfa Boyutu" } }, "tab": { @@ -1703,7 +1703,7 @@ } }, "rssFeed": { - "name": "RSS beslemeleri", + "name": "RSS Beslemeleri", "description": "Bir veya daha fazla RSS, ATOM veya JSON beslemesini takip edin ve görüntüleyin", "option": { "feedUrls": { @@ -1713,10 +1713,10 @@ "label": "RTL'yi etkinleştir" }, "textLinesClamp": { - "label": "Açıklamalar satır sınırı" + "label": "Açıklamalarda satır sınırı" }, "maximumAmountPosts": { - "label": "Gönderi değer sınırı" + "label": "Gönderi sayısı sınırı" } } } @@ -1807,22 +1807,22 @@ }, "field": { "pageTitle": { - "label": "Sayfa başlığı" + "label": "Sayfa Başlığı" }, "metaTitle": { - "label": "Meta başlığı" + "label": "Meta Başlığı" }, "logoImageUrl": { - "label": "Logo görsel URL'si" + "label": "Logo Görseli URL'si" }, "faviconImageUrl": { - "label": "Favicon görsel URL'si" + "label": "Favicon Görseli URL'si" }, "backgroundImageUrl": { - "label": "Arkaplan görsel URL'si" + "label": "Arkaplan Resmi URL'si" }, "backgroundImageAttachment": { - "label": "Arkaplan görsel yerleştirme", + "label": "Arka Plan Yerleşimi", "option": { "fixed": { "label": "Sabit", @@ -1830,19 +1830,19 @@ }, "scroll": { "label": "Kaydır", - "description": "Arkaplan farenizle birlikte kayar." + "description": "Arkaplan Farenizle Birlikte Kayar." } } }, "backgroundImageRepeat": { - "label": "Arkaplan görüntüsünü Tekrarla", + "label": "Arkaplan Resmini Tekrarla", "option": { "repeat": { "label": "Tekrarla", "description": "Görsel, tüm arka plan alanını kaplayacak kadar tekrarlanır." }, "no-repeat": { - "label": "Tekrarlama yok", + "label": "Tekrarlama Yok", "description": "Görsel tekrarlanmaz ve tüm alanı doldurmayabilir." }, "repeat-x": { @@ -1856,7 +1856,7 @@ } }, "backgroundImageSize": { - "label": "Arkaplan görsel boyutu", + "label": "Arkaplan Resim Boyutu", "option": { "cover": { "label": "Kapak", @@ -1879,14 +1879,14 @@ }, "customCss": { "label": "Bu panel için özel css", - "description": "Kontrol panelinizi yalnızca deneyimli kullanıcılar için önerilen CSS kullanarak özelleştirin", + "description": "CSS kullanarak panelizi özelleştirin, sadece tecrübeli kullanıcılar için tavsiye edilir", "customClassesAlert": { "title": "Özel sınıflar", - "description": "Her öğenin gelişmiş seçeneklerinde panel örneklerinize özel sınıflar ekleyebilir ve bunları yukarıdaki özel CSS'de kullanabilirsiniz." + "description": "Düzenlenen her aracın gelişmiş seçenekler sekmesinde bulunan alanı kullanarak panel öğelerinizi CSS ile özelleştirebilir ve ya yukarıdaki özel CSS alanını kullanabilirsiniz." } }, "columnCount": { - "label": "Sütun sayısı" + "label": "Sütun Sayısı" }, "name": { "label": "İsim" @@ -1910,7 +1910,7 @@ "title": "Düzen" }, "background": { - "title": "Arkaplan" + "title": "Arkaplan Resim URL'si" }, "color": { "title": "Renkler" @@ -1919,7 +1919,7 @@ "title": "Özel Css" }, "access": { - "title": "Erişim kontrolü", + "title": "Erişim Kontrolü", "permission": { "item": { "view": { @@ -1935,14 +1935,14 @@ } }, "dangerZone": { - "title": "Tehlikeli bölge", + "title": "Tehlikeli Bölge", "action": { "rename": { - "label": "Panelin adını değiştir", + "label": "Panelin ismini değiştir", "description": "İsmin değiştirilmesi bu panele olan tüm bağlantıların kopmasına neden olacaktır.", "button": "İsmi değiştir", "modal": { - "title": "Panelin adını değiştir" + "title": "Panelin ismini değiştir" } }, "visibility": { @@ -1993,7 +1993,7 @@ "notice": "Bağlantıyı kontrol edin veya erişilebilir olması gerektiğini düşünüyorsanız bir yöneticiyle iletişime geçin" }, "homeBoard": { - "title": "Ana panel yok", + "title": "Öntanımlı Panel Yapılandırılmadı", "admin": { "description": "Sunucu için henüz bir ana sayfa paneli belirlemediniz.", "link": "Sunucu geneli için ana panel yapılandırın", @@ -2025,11 +2025,11 @@ }, "navbar": { "items": { - "home": "Ana sayfa", + "home": "Ana Sayfa", "boards": "Paneller", "apps": "Uygulamalar", "integrations": "Entegrasyonlar", - "searchEngies": "Arama motorları", + "searchEngies": "Arama Motorları", "medias": "Medyalar", "users": { "label": "Kullanıcılar", @@ -2082,7 +2082,7 @@ "title": "Panelleriniz", "action": { "new": { - "label": "Yeni panel" + "label": "Yeni Panel" }, "open": { "label": "Panel'i aç" @@ -2093,7 +2093,7 @@ "setHomeBoard": { "label": "Öntanımlı panel olarak ayarlayın", "badge": { - "label": "Ana sayfa", + "label": "Ana Sayfa", "tooltip": "Bu panel sizin öntanımlı paneliniz olarak görüntülenecektir" } }, @@ -2151,7 +2151,7 @@ }, "create": { "metaTitle": "Kullanıcı ekle", - "title": "Yeni kullanıcı oluştur", + "title": "Yeni Kullanıcı Oluştur", "step": { "personalInformation": { "label": "Kişisel bilgiler" @@ -2180,10 +2180,10 @@ } }, "invite": { - "title": "Kullanıcı davetlerini yönet", + "title": "Kullanıcı Davetlerini Yönet", "action": { "new": { - "title": "Yeni davet", + "title": "Yeni Davet", "description": "Süre sona erdikten sonra davet artık geçerli olmayacak ve daveti alan kişi bir hesap oluşturamayacaktır." }, "copy": { @@ -2254,7 +2254,7 @@ }, "widgetData": { "title": "Widget verileri", - "text": "Widget (ve sayıları) yapılandırma verilerini gönder. URL'leri, alan adlarını veya başka herhangi bir veriyi içermez." + "text": "Araç (ve sayılarını) yapılandırma verilerini gönder. URL'leri, alan adlarını veya başka herhangi bir veriyi içermez." }, "integrationData": { "title": "Entegrasyon verileri", @@ -2347,7 +2347,7 @@ "label": "Medya Talep Listesi" }, "rssFeeds": { - "label": "RSS beslemeleri" + "label": "RSS Beslemeleri" }, "indexerManager": { "label": "İndeksleyici Yöneticisi" @@ -2365,7 +2365,7 @@ "label": "Güncelleme denetleyicisi" }, "mediaTranscoding": { - "label": "Medya kod dönüştürme" + "label": "Medya Kod Dönüştürme" } } }, @@ -2400,7 +2400,7 @@ }, "about": { "version": "Sürüm {version}", - "text": "Homarr, gönüllüler tarafından sürdürülen topluluk odaklı bir açık kaynak projesidir. Bu kişiler sayesinde Homarr, 2021'den beri büyüyen bir projedir. Ekibimiz, boş zamanlarında Homarr üzerinde birçok farklı ülkeden tamamen uzaktan, hiçbir ücret almadan çalışmaktadır.", + "text": "Homarr, gönüllüler tarafından sürdürülen topluluk odaklı bir açık kaynak projesidir. Bu kişiler sayesinde Homarr, 2021'den bugüne büyüyerek ilerleyen bir projedir. Ekibimiz, boş zamanlarında Homarr üzerinde birçok farklı ülkeden tamamen uzaktan, hiçbir ücret almadan çalışmaktadır.", "accordion": { "contributors": { "title": "Katkıda Bulunanlar", @@ -2435,7 +2435,7 @@ "created": "Oluşturuldu", "running": "Çalışıyor", "paused": "Duraklatıldı", - "restarting": "Yeniden başlatılıyor", + "restarting": "Yeniden Başlatılıyor", "exited": "Çıkıldı", "removing": "Kaldırılıyor", "dead": "Ölü" @@ -2564,7 +2564,7 @@ } }, "search-engines": { - "label": "Arama motorları", + "label": "Arama Motorları", "new": { "label": "Yeni" }, @@ -2676,8 +2676,8 @@ "title": "Genel komutlar", "option": { "colorScheme": { - "light": "Aydınlık moda geç", - "dark": "Koyu moda geç" + "light": "Aydınlık Temaya Geç", + "dark": "Koyu Temaya Geç" }, "language": { "label": "Dili değiştir", @@ -2688,16 +2688,16 @@ } }, "newBoard": { - "label": "Yeni bir panel oluştur" + "label": "Yeni Panel Oluştur" }, "importBoard": { "label": "Bir paneli içe aktar" }, "newApp": { - "label": "Yeni bir uygulama oluştur" + "label": "Yeni Uygulama Oluştur" }, "newIntegration": { - "label": "Yeni bir entegrasyon oluşturun", + "label": "Yeni Entegrasyon Oluştur", "children": { "detail": { "title": "Oluşturmak istediğiniz entegrasyon türünü seçin" @@ -2705,13 +2705,13 @@ } }, "newUser": { - "label": "Yeni bir kullanıcı oluştur" + "label": "Yeni Kullanıcı Oluştur" }, "newInvite": { - "label": "Yeni bir davet oluştur" + "label": "Yeni Davet Oluştur" }, "newGroup": { - "label": "Yeni bir grup oluştur" + "label": "Yeni Grup Oluştur" } } } @@ -2721,7 +2721,7 @@ "help": "Harici bir arama motoru kullanın", "group": { "searchEngine": { - "title": "Arama motorları", + "title": "Arama Motorları", "children": { "action": { "search": { @@ -2795,7 +2795,7 @@ "title": "Sayfalar", "option": { "manageHome": { - "label": "Ana sayfayı yönet" + "label": "Ana Sayfayı Yönet" }, "manageBoard": { "label": "Panelleri yönet" @@ -2825,7 +2825,7 @@ "label": "Docker'ı yönet" }, "manageApi": { - "label": "Swagger API" + "label": "Swagger API'si" }, "manageLog": { "label": "Günlükleri görüntüle" @@ -2894,7 +2894,7 @@ "label": "İsim" }, "short": { - "label": "Kısa" + "label": "Kısa Yol" }, "urlTemplate": { "label": "URL arama şablonu" @@ -2905,15 +2905,15 @@ }, "page": { "list": { - "title": "Arama motorları", + "title": "Arama Motorları", "noResults": { - "title": "Henüz bir arama motoru yok", + "title": "Henüz bir arama motoru yapılandırılmadı", "action": "İlk arama motorunuzu oluşturun" }, "interactive": "Etkileşimli, entegrasyon kullanır" }, "create": { - "title": "Yeni arama motoru", + "title": "Yeni Arama Motoru", "notification": { "success": { "title": "Arama motoru oluşturuldu", From 75aefcb0d5210a53e8a00b675dbbce847aa8add4 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Sun, 29 Dec 2024 16:16:34 +0000 Subject: [PATCH 12/25] fix(deps): update dependency octokit to ^4.0.3 (#1806) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- packages/request-handler/package.json | 2 +- pnpm-lock.yaml | 86 +++++++++++++-------------- 2 files changed, 44 insertions(+), 44 deletions(-) diff --git a/packages/request-handler/package.json b/packages/request-handler/package.json index d94d07aa8..e50417232 100644 --- a/packages/request-handler/package.json +++ b/packages/request-handler/package.json @@ -29,7 +29,7 @@ "@homarr/log": "workspace:^0.1.0", "@homarr/redis": "workspace:^0.1.0", "dayjs": "^1.11.13", - "octokit": "^4.0.2", + "octokit": "^4.0.3", "pretty-print-error": "^1.1.2", "superjson": "2.2.2" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4740d3397..bea32e49b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -186,16 +186,16 @@ importers: version: 5.62.11(@tanstack/react-query@5.62.11(react@19.0.0))(next@14.2.22(@babel/core@7.26.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(sass@1.83.0))(react@19.0.0) '@trpc/client': specifier: next - version: 11.0.0-rc.666(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(typescript@5.7.2) + version: 11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2) '@trpc/next': specifier: next - version: 11.0.0-rc.666(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.666(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(typescript@5.7.2))(@trpc/react-query@11.0.0-rc.666(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.666(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2))(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(next@14.2.22(@babel/core@7.26.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(sass@1.83.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2) + version: 11.0.0-rc.678(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2))(@trpc/react-query@11.0.0-rc.678(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2))(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(next@14.2.22(@babel/core@7.26.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(sass@1.83.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2) '@trpc/react-query': specifier: next - version: 11.0.0-rc.666(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.666(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2) + version: 11.0.0-rc.678(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2) '@trpc/server': specifier: next - version: 11.0.0-rc.666(typescript@5.7.2) + version: 11.0.0-rc.678(typescript@5.7.2) '@xterm/addon-canvas': specifier: ^0.7.0 version: 0.7.0(@xterm/xterm@5.5.0) @@ -541,13 +541,13 @@ importers: version: link:../validation '@trpc/client': specifier: next - version: 11.0.0-rc.666(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(typescript@5.7.2) + version: 11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2) '@trpc/react-query': specifier: next - version: 11.0.0-rc.666(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.666(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2) + version: 11.0.0-rc.678(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2) '@trpc/server': specifier: next - version: 11.0.0-rc.666(typescript@5.7.2) + version: 11.0.0-rc.678(typescript@5.7.2) dockerode: specifier: ^4.0.2 version: 4.0.2 @@ -565,7 +565,7 @@ importers: version: 2.2.2 trpc-to-openapi: specifier: ^2.1.1 - version: 2.1.1(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(zod-openapi@2.19.0(zod@3.24.1))(zod@3.24.1) + version: 2.1.1(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(zod-openapi@2.19.0(zod@3.24.1))(zod@3.24.1) devDependencies: '@homarr/eslint-config': specifier: workspace:^0.2.0 @@ -1434,8 +1434,8 @@ importers: specifier: ^1.11.13 version: 1.11.13 octokit: - specifier: ^4.0.2 - version: 4.0.2 + specifier: ^4.0.3 + version: 4.0.3 pretty-print-error: specifier: ^1.1.2 version: 1.1.2(patch_hash=4arrfgbz7em6s4gqywse7esg4u) @@ -3895,43 +3895,43 @@ packages: '@tootallnate/quickjs-emscripten@0.23.0': resolution: {integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==} - '@trpc/client@11.0.0-rc.666': - resolution: {integrity: sha512-BP3H0bktY03m7haVT5QoPR4sn30DNJcvFHsA3Msj3uPRY8JLVE03MR4rVG6T7VbcglORKpyMlRxjpUgdRmJErA==} + '@trpc/client@11.0.0-rc.678': + resolution: {integrity: sha512-Y3UawZReKGRDy0AnGlNRhqm8m0Rdp7BAvS4PylsO77Wx5Q775O6mruZGuW02IlFIFqmJCUM2/ykt1h8GaSndbw==} peerDependencies: - '@trpc/server': 11.0.0-rc.666+99556c074 - typescript: '>=5.6.2' + '@trpc/server': 11.0.0-rc.678+29a2f0d18 + typescript: '>=5.7.2' - '@trpc/next@11.0.0-rc.666': - resolution: {integrity: sha512-EiNMEY0nValoxMSvC+j68evlQqU/NoLrZXskvHnheoyaDLP8TxhTA2xUr+P4tkWPkjsRzh/Y5lxlyAb2PTA7aw==} + '@trpc/next@11.0.0-rc.678': + resolution: {integrity: sha512-AudGQ3QlDFq/LAPAUpX5gm5+TsjXpYAtwpxAkrqqtAKAP4jFEkZtc3pZjtlg1Xs7nkHei3oR8w1qbc9u6pU9og==} peerDependencies: '@tanstack/react-query': ^5.59.15 - '@trpc/client': 11.0.0-rc.666+99556c074 - '@trpc/react-query': 11.0.0-rc.666+99556c074 - '@trpc/server': 11.0.0-rc.666+99556c074 + '@trpc/client': 11.0.0-rc.678+29a2f0d18 + '@trpc/react-query': 11.0.0-rc.678+29a2f0d18 + '@trpc/server': 11.0.0-rc.678+29a2f0d18 next: '*' react: '>=16.8.0' react-dom: '>=16.8.0' - typescript: '>=5.6.2' + typescript: '>=5.7.2' peerDependenciesMeta: '@tanstack/react-query': optional: true '@trpc/react-query': optional: true - '@trpc/react-query@11.0.0-rc.666': - resolution: {integrity: sha512-BH0vU7g5w4IrN7xmWSKvLucZ9ZnpRwsDWCSJ0R09xdYwR7geHkna3PBbd8vQVFBSw7MpWEy6LGXVSCHSbUicLg==} + '@trpc/react-query@11.0.0-rc.678': + resolution: {integrity: sha512-M9LXF5gXyyjq097Jsnu4lncMvIdCOb723ks977IZUFNQ2IOV12/1jz9GQR2NCBQSqZcg+nxiPMDYhfdlMRPiWg==} peerDependencies: '@tanstack/react-query': ^5.62.8 - '@trpc/client': 11.0.0-rc.666+99556c074 - '@trpc/server': 11.0.0-rc.666+99556c074 + '@trpc/client': 11.0.0-rc.678+29a2f0d18 + '@trpc/server': 11.0.0-rc.678+29a2f0d18 react: '>=18.2.0' react-dom: '>=18.2.0' - typescript: '>=5.6.2' + typescript: '>=5.7.2' - '@trpc/server@11.0.0-rc.666': - resolution: {integrity: sha512-k+jKrdH/owDRRXPR7oPKCQRTu0dOEnqdGh56863ym95sFY8qXE7BhOR8S4WqyZw1CiPZGjRkdFN0q/GsJhKsIA==} + '@trpc/server@11.0.0-rc.678': + resolution: {integrity: sha512-q5OEUV4aBfHPoV6uQAlNdkxmq6IizLtnblVs91jAXey3Mxquool05nYxnk8xH4n159e0IOSXEJsQfSZtOYlA5Q==} peerDependencies: - typescript: '>=5.6.2' + typescript: '>=5.7.2' '@tsconfig/node10@1.0.11': resolution: {integrity: sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==} @@ -7336,8 +7336,8 @@ packages: resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==} engines: {node: '>= 0.4'} - octokit@4.0.2: - resolution: {integrity: sha512-wbqF4uc1YbcldtiBFfkSnquHtECEIpYD78YUXI6ri1Im5OO2NLo6ZVpRdbJpdnpZ05zMrVPssNiEo6JQtea+Qg==} + octokit@4.0.3: + resolution: {integrity: sha512-kfqH80Yuuux4fLbZ4SvObjCvVu89U0eCh5+fulh6tr/hJkDYS1inXDGnNJDOp312GANMEhWWMLYmjQR8MvSSMQ==} engines: {node: '>= 18'} ofetch@1.4.1: @@ -11583,33 +11583,33 @@ snapshots: '@tootallnate/quickjs-emscripten@0.23.0': {} - '@trpc/client@11.0.0-rc.666(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(typescript@5.7.2)': + '@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2)': dependencies: - '@trpc/server': 11.0.0-rc.666(typescript@5.7.2) + '@trpc/server': 11.0.0-rc.678(typescript@5.7.2) typescript: 5.7.2 - '@trpc/next@11.0.0-rc.666(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.666(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(typescript@5.7.2))(@trpc/react-query@11.0.0-rc.666(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.666(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2))(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(next@14.2.22(@babel/core@7.26.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(sass@1.83.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2)': + '@trpc/next@11.0.0-rc.678(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2))(@trpc/react-query@11.0.0-rc.678(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2))(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(next@14.2.22(@babel/core@7.26.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(sass@1.83.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2)': dependencies: - '@trpc/client': 11.0.0-rc.666(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(typescript@5.7.2) - '@trpc/server': 11.0.0-rc.666(typescript@5.7.2) + '@trpc/client': 11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2) + '@trpc/server': 11.0.0-rc.678(typescript@5.7.2) next: 14.2.22(@babel/core@7.26.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(sass@1.83.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) typescript: 5.7.2 optionalDependencies: '@tanstack/react-query': 5.62.11(react@19.0.0) - '@trpc/react-query': 11.0.0-rc.666(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.666(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2) + '@trpc/react-query': 11.0.0-rc.678(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2) - '@trpc/react-query@11.0.0-rc.666(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.666(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2)': + '@trpc/react-query@11.0.0-rc.678(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2)': dependencies: '@tanstack/react-query': 5.62.11(react@19.0.0) - '@trpc/client': 11.0.0-rc.666(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(typescript@5.7.2) - '@trpc/server': 11.0.0-rc.666(typescript@5.7.2) + '@trpc/client': 11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2) + '@trpc/server': 11.0.0-rc.678(typescript@5.7.2) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) typescript: 5.7.2 - '@trpc/server@11.0.0-rc.666(typescript@5.7.2)': + '@trpc/server@11.0.0-rc.678(typescript@5.7.2)': dependencies: typescript: 5.7.2 @@ -15435,7 +15435,7 @@ snapshots: define-properties: 1.2.1 es-object-atoms: 1.0.0 - octokit@4.0.2: + octokit@4.0.3: dependencies: '@octokit/app': 15.1.1 '@octokit/core': 6.1.2 @@ -17225,9 +17225,9 @@ snapshots: triple-beam@1.4.1: {} - trpc-to-openapi@2.1.1(@trpc/server@11.0.0-rc.666(typescript@5.7.2))(zod-openapi@2.19.0(zod@3.24.1))(zod@3.24.1): + trpc-to-openapi@2.1.1(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(zod-openapi@2.19.0(zod@3.24.1))(zod@3.24.1): dependencies: - '@trpc/server': 11.0.0-rc.666(typescript@5.7.2) + '@trpc/server': 11.0.0-rc.678(typescript@5.7.2) co-body: 6.2.0 h3: 1.13.0 openapi3-ts: 4.4.0 From 23c7d0bbf01215b680f346e7eef8072d8b9db09e Mon Sep 17 00:00:00 2001 From: Yossi Hillali Date: Sun, 29 Dec 2024 19:24:38 +0200 Subject: [PATCH 13/25] fix(media-server): redesign widget (#1775) * fix: redisign media server widget * fix: reviewed changes * fix: reviewed chenges * fix: add icon title * fix: text resize --- .../api/src/router/widgets/media-server.ts | 1 + packages/translation/src/lang/en.json | 7 +- .../widgets/src/media-server/component.tsx | 181 +++++++++++++++--- 3 files changed, 166 insertions(+), 23 deletions(-) diff --git a/packages/api/src/router/widgets/media-server.ts b/packages/api/src/router/widgets/media-server.ts index c567c21a2..8d3fe4537 100644 --- a/packages/api/src/router/widgets/media-server.ts +++ b/packages/api/src/router/widgets/media-server.ts @@ -21,6 +21,7 @@ export const mediaServerRouter = createTRPCRouter({ const { data } = await innerHandler.getCachedOrUpdatedDataAsync({ forceUpdate: false }); return { integrationId: integration.id, + integrationKind: integration.kind, sessions: data, }; }), diff --git a/packages/translation/src/lang/en.json b/packages/translation/src/lang/en.json index 734919e96..7cc99348b 100644 --- a/packages/translation/src/lang/en.json +++ b/packages/translation/src/lang/en.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "Current media server streams", "description": "Show the current streams on your media servers", - "option": {} + "option": {}, + "items": { + "user": "User", + "name": "Name", + "id": "Id" + } }, "downloads": { "name": "Download Client", diff --git a/packages/widgets/src/media-server/component.tsx b/packages/widgets/src/media-server/component.tsx index b68b7f09c..6c56a98bc 100644 --- a/packages/widgets/src/media-server/component.tsx +++ b/packages/widgets/src/media-server/component.tsx @@ -1,12 +1,17 @@ "use client"; import { useMemo } from "react"; -import { Avatar, Box, Group, Text } from "@mantine/core"; +import type { MantineStyleProp } from "@mantine/core"; +import { Avatar, Box, Flex, Group, Stack, Text, Title } from "@mantine/core"; +import { IconDeviceAudioTape, IconDeviceTv, IconMovie, IconVideo } from "@tabler/icons-react"; import type { MRT_ColumnDef } from "mantine-react-table"; import { MantineReactTable } from "mantine-react-table"; import { clientApi } from "@homarr/api/client"; +import { getIconUrl, integrationDefs } from "@homarr/definitions"; import type { StreamSession } from "@homarr/integrations"; +import { createModal, useModalAction } from "@homarr/modals"; +import { useScopedI18n } from "@homarr/translation/client"; import { useTranslatedMantineReactTable } from "@homarr/ui/hooks"; import type { WidgetComponentProps } from "../definition"; @@ -29,26 +34,54 @@ export default function MediaServerWidget({ integrationIds, isEditMode }: Widget { accessorKey: "sessionName", header: "Name", + mantineTableHeadCellProps: { + style: { + fontSize: "7cqmin", + padding: "2cqmin", + width: "30%", + }, + }, + Cell: ({ row }) => ( + + {row.original.sessionName} + + ), }, { accessorKey: "user.username", header: "User", + mantineTableHeadCellProps: { + style: { + fontSize: "7cqmin", + padding: "2cqmin", + width: "25%", + }, + }, Cell: ({ row }) => ( - - - {row.original.user.username} + + + {row.original.user.username} ), }, { accessorKey: "currentlyPlaying", // currentlyPlaying.name can be undefined which results in a warning. This is why we use currentlyPlaying instead of currentlyPlaying.name header: "Currently playing", + mantineTableHeadCellProps: { + style: { + fontSize: "7cqmin", + padding: "2cqmin", + width: "45%", + }, + }, Cell: ({ row }) => { if (row.original.currentlyPlaying) { return ( -
- {row.original.currentlyPlaying.name} -
+ + + {row.original.currentlyPlaying.name} + + ); } @@ -83,49 +116,153 @@ export default function MediaServerWidget({ integrationIds, isEditMode }: Widget // Only render the flat list of sessions when the currentStreams change // Otherwise it will always create a new array reference and cause the table to re-render - const flatSessions = useMemo(() => currentStreams.flatMap((pair) => pair.sessions), [currentStreams]); + const flatSessions = useMemo( + () => + currentStreams.flatMap((pair) => + pair.sessions.map((session) => ({ + ...session, + integrationKind: pair.integrationKind, + integrationName: integrationDefs[pair.integrationKind].name, + integrationIcon: getIconUrl(pair.integrationKind), + })), + ), + [currentStreams], + ); + const baseStyle: MantineStyleProp = { + "--total-width": "calc(100cqw / var(--total-width))", + "--ratio-width": "calc(100cqw / var(--total-width))", + "--space-size": "calc(var(--ratio-width) * 0.1)", //Standard gap and spacing value + "--text-fz": "calc(var(--ratio-width) * 0.45)", //General Font Size + "--icon-size": "calc(var(--ratio-width) * 2 / 3)", //Normal icon size + "--mrt-base-background-color": "transparent", + }; + const { openModal } = useModalAction(itemInfoModal); const table = useTranslatedMantineReactTable({ columns, data: flatSessions, - enableRowSelection: false, + enablePagination: false, + enableTopToolbar: false, + enableBottomToolbar: false, + enableSorting: false, + enableColumnActions: false, + enableStickyHeader: false, enableColumnOrdering: false, + enableRowSelection: false, enableFullScreenToggle: false, enableGlobalFilter: false, enableDensityToggle: false, enableFilters: false, - enablePagination: true, - enableSorting: true, enableHiding: false, - enableTopToolbar: false, - enableColumnActions: false, - enableStickyHeader: true, initialState: { density: "xs", }, mantinePaperProps: { - display: "flex", - h: "100%", + flex: 1, withBorder: false, - style: { - flexDirection: "column", - }, + shadow: undefined, }, mantineTableProps: { + className: "media-server-widget-table", style: { tableLayout: "fixed", }, }, mantineTableContainerProps: { style: { - flexGrow: 5, + height: "100%", }, }, + mantineTableBodyCellProps: ({ row }) => ({ + onClick: () => { + openModal({ + item: row.original, + title: + row.original.currentlyPlaying?.type === "movie" ? ( + + ) : row.original.currentlyPlaying?.type === "tv" ? ( + + ) : row.original.currentlyPlaying?.type === "video" ? ( + + ) : ( + + ), + }); + }, + }), + }); + + const uniqueIntegrations = Array.from(new Set(flatSessions.map((session) => session.integrationKind))).map((kind) => { + const session = flatSessions.find((session) => session.integrationKind === kind); + return { + integrationKind: kind, + integrationIcon: session?.integrationIcon, + integrationName: session?.integrationName, + }; }); return ( - + - + + {uniqueIntegrations.map((integration) => ( + + + + {integration.integrationName} + + + ))} + + ); } + +const itemInfoModal = createModal<{ item: StreamSession; title: React.ReactNode }>(({ innerProps }) => { + const t = useScopedI18n("widget.mediaServer.items"); + + return ( + + + {innerProps.title} + {innerProps.item.currentlyPlaying?.name} + + {innerProps.item.currentlyPlaying?.episodeName} + {innerProps.item.currentlyPlaying?.seasonName && ( + <> + {" - "} + {innerProps.item.currentlyPlaying.seasonName} + + )} + + + + + + + ); +}).withOptions({ + defaultTitle() { + return ""; + }, + size: "auto", + centered: true, +}); + +const NormalizedLine = ({ itemKey, value }: { itemKey: string; value: string }) => { + return ( + + {itemKey}: + {value} + + ); +}; From e8d29420e0a0d335977a2b56ec4b0ce634e03b00 Mon Sep 17 00:00:00 2001 From: "homarr-crowdin[bot]" <190541745+homarr-crowdin[bot]@users.noreply.github.com> Date: Mon, 30 Dec 2024 16:28:16 +0000 Subject: [PATCH 14/25] chore(lang): updated translations from crowdin Co-authored-by: Crowdin Homarr <190541745+homarr-crowdin[bot]@users.noreply.github.com> --- packages/translation/src/lang/cn.json | 291 ++++++++-------- packages/translation/src/lang/cs.json | 471 +++++++++++++------------- packages/translation/src/lang/da.json | 7 +- packages/translation/src/lang/de.json | 7 +- packages/translation/src/lang/el.json | 7 +- packages/translation/src/lang/es.json | 7 +- packages/translation/src/lang/et.json | 7 +- packages/translation/src/lang/fr.json | 7 +- packages/translation/src/lang/he.json | 7 +- packages/translation/src/lang/hr.json | 7 +- packages/translation/src/lang/hu.json | 7 +- packages/translation/src/lang/it.json | 7 +- packages/translation/src/lang/ja.json | 13 +- packages/translation/src/lang/ko.json | 7 +- packages/translation/src/lang/lt.json | 7 +- packages/translation/src/lang/lv.json | 7 +- packages/translation/src/lang/nl.json | 7 +- packages/translation/src/lang/no.json | 7 +- packages/translation/src/lang/pl.json | 7 +- packages/translation/src/lang/pt.json | 7 +- packages/translation/src/lang/ro.json | 7 +- packages/translation/src/lang/ru.json | 7 +- packages/translation/src/lang/sk.json | 13 +- packages/translation/src/lang/sl.json | 7 +- packages/translation/src/lang/sv.json | 7 +- packages/translation/src/lang/tr.json | 15 +- packages/translation/src/lang/uk.json | 7 +- packages/translation/src/lang/vi.json | 7 +- packages/translation/src/lang/zh.json | 7 +- 29 files changed, 558 insertions(+), 413 deletions(-) diff --git a/packages/translation/src/lang/cn.json b/packages/translation/src/lang/cn.json index e4902b6f3..453fa6021 100644 --- a/packages/translation/src/lang/cn.json +++ b/packages/translation/src/lang/cn.json @@ -344,18 +344,18 @@ } }, "integration": { - "title": "组件", + "title": "集成", "item": { "create": { - "label": "创建组件", - "description": "允许成员创建组件" + "label": "创建集成", + "description": "允许成员创建集成" }, "use-all": { - "label": "使用全部组件", + "label": "使用全部集成", "description": "允许成员将任何组件添加到他们的面板" }, "interact-all": { - "label": "与任意组件进行交互", + "label": "与任意集成进行互动", "description": "允许成员与任意组件进行交互" }, "full-all": { @@ -559,7 +559,7 @@ "integration": { "page": { "list": { - "title": "组件", + "title": "集成", "search": "搜索组件", "noResults": { "title": "尚无组件" @@ -630,34 +630,34 @@ }, "invalidUrl": { "title": "无效链接", - "message": "" + "message": "URL 无效" }, "secretNotDefined": { - "title": "", - "message": "" + "title": "缺少凭证", + "message": "并非所有凭证都已提供" }, "invalidCredentials": { - "title": "", + "title": "凭证无效", "message": "" }, "commonError": { - "title": "", - "message": "" + "title": "连接失败", + "message": "无法建立连接" }, "badRequest": { - "title": "", - "message": "" + "title": "错误请求", + "message": "请求格式不正确" }, "unauthorized": { - "title": "", + "title": "未授权", "message": "" }, "forbidden": { "title": "", - "message": "" + "message": "可能缺少权限" }, "notFound": { - "title": "", + "title": "未找到", "message": "" }, "internalServerError": { @@ -681,12 +681,12 @@ "message": "" }, "invalidJson": { - "title": "", - "message": "" + "title": "无效的 JSON", + "message": "无效的JSON响应" }, "wrongPath": { - "title": "", - "message": "" + "title": "路径错误", + "message": "该路径可能不正确" } } }, @@ -694,8 +694,8 @@ "title": "", "lastUpdated": "", "notSet": { - "label": "", - "tooltip": "" + "label": "未设置值", + "tooltip": "尚未设置此必填的密钥" }, "secureNotice": "", "reset": { @@ -703,17 +703,17 @@ "message": "" }, "noSecretsRequired": { - "segmentTitle": "", - "text": "" + "segmentTitle": "没有密钥", + "text": "此集成不需要密钥" }, "kind": { "username": { "label": "用户名", - "newLabel": "" + "newLabel": "新用户名" }, "apiKey": { - "label": "", - "newLabel": "" + "label": "API 密钥", + "newLabel": "新 API 密钥" }, "password": { "label": "密码", @@ -729,7 +729,7 @@ }, "media": { "plural": "媒体", - "search": "", + "search": "查找媒体", "field": { "name": "名称", "size": "大小", @@ -737,8 +737,8 @@ }, "action": { "upload": { - "label": "", - "file": "", + "label": "上传媒体", + "file": "选择文件", "notification": { "success": { "message": "" @@ -749,32 +749,32 @@ } }, "delete": { - "label": "", - "description": "", + "label": "删除媒体", + "description": "您确定要删除媒体 ?", "notification": { "success": { - "message": "" + "message": "媒体已成功删除" }, "error": { - "message": "" + "message": "无法删除该媒体" } } }, "copy": { - "label": "" + "label": "复制 URL" } } }, "common": { - "beta": "", + "beta": "测试版", "error": "错误", "action": { "add": "添加", "apply": "应用", - "backToOverview": "", + "backToOverview": "返回概览", "create": "创建", "edit": "编辑", - "import": "", + "import": "导入", "insert": "插入", "remove": "删除", "save": "保存", @@ -787,13 +787,13 @@ "previous": "上一步", "next": "下一步", "checkoutDocs": "", - "checkLogs": "", - "tryAgain": "请再试一次", - "loading": "" + "checkLogs": "检查日志获取更多详情", + "tryAgain": "重试", + "loading": "正在加载" }, - "here": "", + "here": "这里", "iconPicker": { - "label": "", + "label": "图标 URL", "header": "" }, "colorScheme": { @@ -803,15 +803,15 @@ } }, "information": { - "min": "", - "max": "", - "days": "", + "min": "最小", + "max": "最大", + "days": "天", "hours": "时", "minutes": "分" }, "notification": { "create": { - "success": "", + "success": "创建成功", "error": "创建失败" }, "delete": { @@ -828,14 +828,14 @@ } }, "multiSelect": { - "placeholder": "" + "placeholder": "选择一个或多个值" }, "multiText": { - "placeholder": "", + "placeholder": "添加更多值", "addLabel": "" }, "select": { - "placeholder": "", + "placeholder": "选择值", "badge": { "recommended": "" } @@ -856,8 +856,8 @@ "dangerZone": "危险", "noResults": "未找到结果", "preview": { - "show": "", - "hide": "" + "show": "显示预览", + "hide": "隐藏预览" }, "zod": { "errors": { @@ -907,9 +907,9 @@ } }, "action": { - "create": "", - "edit": "", - "remove": "", + "create": "新建分类", + "edit": "重命名分类", + "remove": "删除分类", "moveUp": "上移", "moveDown": "下移", "createAbove": "", @@ -937,12 +937,12 @@ }, "item": { "action": { - "create": "", - "import": "", - "edit": "", + "create": "新建项目", + "import": "导入项目", + "edit": "编辑项目", "moveResize": "", "duplicate": "", - "remove": "" + "remove": "删除项目" }, "menu": { "label": { @@ -951,7 +951,7 @@ }, "create": { "title": "", - "addToBoard": "" + "addToBoard": "添加到面板" }, "moveResize": { "title": "", @@ -963,17 +963,17 @@ "label": "高度" }, "xOffset": { - "label": "" + "label": "X 偏移" }, "yOffset": { - "label": "" + "label": "Y 偏移" } } }, "edit": { - "title": "", + "title": "编辑项目", "advancedOptions": { - "label": "", + "label": "高级选项", "title": "" }, "field": { @@ -986,44 +986,44 @@ } }, "remove": { - "title": "", - "message": "" + "title": "删除项目", + "message": "你确定要删除这个项目吗?" } }, "widget": { "app": { - "name": "", + "name": "应用", "description": "", "option": { "appId": { - "label": "" + "label": "选择应用" }, "openInNewTab": { "label": "在新标签页中打开" }, "showTitle": { - "label": "" + "label": "显示应用名称" }, "showDescriptionTooltip": { - "label": "" + "label": "显示描述提示" }, "pingEnabled": { - "label": "" + "label": "启用简单的 ping" } }, "error": { "notFound": { - "label": "", + "label": "没有应用", "tooltip": "" } } }, "bookmarks": { - "name": "", - "description": "", + "name": "书签", + "description": "显示多个应用链接", "option": { "title": { - "label": "" + "label": "标题" }, "layout": { "label": "显示布局", @@ -1064,22 +1064,22 @@ } }, "usePiHoleColors": { - "label": "" + "label": "使用 Pi-Hole 颜色" } }, "error": { - "internalServerError": "", - "integrationsDisconnected": "" + "internalServerError": "获取 DNS Hole 摘要失败", + "integrationsDisconnected": "没有可用的数据,所有集成已断开" }, "data": { "adsBlockedToday": "今日屏蔽", "adsBlockedTodayPercentage": "今日屏蔽", "dnsQueriesToday": "今日查询", - "domainsBeingBlocked": "" + "domainsBeingBlocked": "黑名单上的域" } }, "dnsHoleControls": { - "name": "", + "name": "DNS Hole 控制", "description": "从您的面板控制 PiHole 或 AdGuard", "option": { "layout": { @@ -1097,15 +1097,15 @@ } }, "showToggleAllButtons": { - "label": "" + "label": "显示全部按钮" } }, "error": { - "internalServerError": "" + "internalServerError": "无法控制 DNS Hole" }, "controls": { - "enableAll": "", - "disableAll": "", + "enableAll": "全部启用", + "disableAll": "全部禁用", "setTimer": "", "set": "设置", "enabled": "已启用", @@ -1313,18 +1313,18 @@ "label": "天气位置" }, "showCity": { - "label": "" + "label": "显示城市" }, "hasForecast": { "label": "" }, "forecastDayCount": { "label": "", - "description": "" + "description": "当小部件不够宽时,显示的天数减少" }, "dateFormat": { - "label": "", - "description": "" + "label": "日期格式", + "description": "日期应该是什么样的" } }, "kind": { @@ -1346,7 +1346,7 @@ }, "indexerManager": { "name": "索引器管理状态", - "description": "", + "description": "索引器状态", "option": { "openIndexerSiteInNewTab": { "label": "" @@ -1396,16 +1396,16 @@ }, "common": { "location": { - "query": "", + "query": "城市/邮编", "latitude": "", "longitude": "", - "disabledTooltip": "", + "disabledTooltip": "请输入城市或邮编", "unknownLocation": "", "search": "搜索", "table": { "header": { - "city": "", - "country": "", + "city": "城市", + "country": "国家", "coordinates": "", "population": "" }, @@ -1450,17 +1450,22 @@ } }, "error": { - "noUrl": "", - "forYoutubeUseIframe": "" + "noUrl": "没有提供视频 URL", + "forYoutubeUseIframe": "YouTube 视频使用 iframe 选项" } }, "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { - "name": "", + "name": "下载客户端", "description": "", "option": { "columns": { @@ -1544,7 +1549,7 @@ "detailsTitle": "" }, "size": { - "columnTitle": "", + "columnTitle": "文件大小", "detailsTitle": "" }, "state": { @@ -1556,12 +1561,12 @@ "detailsTitle": "" }, "type": { - "columnTitle": "", + "columnTitle": "类型", "detailsTitle": "" }, "upSpeed": { "columnTitle": "上传", - "detailsTitle": "" + "detailsTitle": "上传速度" } }, "states": { @@ -1622,7 +1627,7 @@ "toBeDetermined": "" }, "mediaRequests-requestStats": { - "name": "", + "name": "媒体请求状态", "description": "您的媒体请求统计", "option": {}, "titles": { @@ -1644,8 +1649,8 @@ } }, "mediaTranscoding": { - "name": "", - "description": "", + "name": "媒体转码", + "description": "您的媒体转码的统计、当前队列和工作状态", "option": { "defaultView": { "label": "默认视图" @@ -1710,7 +1715,7 @@ "label": "" }, "enableRtl": { - "label": "" + "label": "启用 RTL" }, "textLinesClamp": { "label": "" @@ -1723,8 +1728,8 @@ }, "widgetPreview": { "toggle": { - "enabled": "", - "disabled": "" + "enabled": "启用编辑模式", + "disabled": "禁用编辑模式" }, "dimensions": { "title": "" @@ -1757,7 +1762,7 @@ }, "error": { "title": "", - "message": "" + "message": "无法导入面板,请检查日志以获取更多详情" } }, "form": { @@ -1807,7 +1812,7 @@ }, "field": { "pageTitle": { - "label": "" + "label": "页面标题" }, "metaTitle": { "label": "" @@ -2043,9 +2048,9 @@ "label": "工具", "items": { "docker": "", - "logs": "", - "api": "", - "tasks": "" + "logs": "日志", + "api": "API", + "tasks": "任务" } }, "settings": "设置", @@ -2312,70 +2317,70 @@ }, "tool": { "tasks": { - "title": "", + "title": "任务", "status": { - "idle": "", + "idle": "空闲", "running": "运行中", "error": "错误" }, "job": { "iconsUpdater": { - "label": "" + "label": "图标更新" }, "analytics": { "label": "分析" }, "smartHomeEntityState": { - "label": "" + "label": "智能家居实体状态" }, "ping": { - "label": "" + "label": "Pings" }, "mediaServer": { "label": "媒体服务" }, "mediaOrganizer": { - "label": "" + "label": "媒体组织者" }, "downloads": { - "label": "" + "label": "正在下载" }, "mediaRequestStats": { - "label": "" + "label": "媒体请求统计" }, "mediaRequestList": { - "label": "" + "label": "媒体请求列表" }, "rssFeeds": { - "label": "" + "label": "RSS订阅" }, "indexerManager": { - "label": "" + "label": "索引器管理" }, "healthMonitoring": { - "label": "" + "label": "健康监测" }, "dnsHole": { - "label": "" + "label": "DNS Hole 数据" }, "sessionCleanup": { - "label": "" + "label": "会话清理" }, "updateChecker": { - "label": "" + "label": "更新检查" }, "mediaTranscoding": { - "label": "" + "label": "媒体转码" } } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { - "title": "", - "description": "", - "button": "" + "title": "API 令牌已创建", + "description": "已创建API令牌。小心,这个令牌在数据库中是加密的,永远不会再传输给您。如果您丢失了这个令牌,您将无法再检索这个特定的令牌。", + "button": "复制并关闭" } }, "tab": { @@ -2383,15 +2388,15 @@ "label": "文档" }, "apiKey": { - "label": "", - "title": "", + "label": "认证", + "title": "API 密钥", "button": { - "createApiToken": "" + "createApiToken": "创建 API 令牌" }, "table": { "header": { - "id": "", - "createdBy": "" + "id": "ID", + "createdBy": "创建者" } } } @@ -2516,7 +2521,7 @@ } }, "error": { - "internalServerError": "" + "internalServerError": "获取 Docker 容器失败" } }, "permission": { @@ -2605,7 +2610,7 @@ "label": "" }, "logs": { - "label": "" + "label": "日志" } }, "settings": { @@ -2617,7 +2622,7 @@ } }, "search": { - "placeholder": "", + "placeholder": "搜索任意内容", "nothingFound": "", "error": { "fetch": "" @@ -2825,13 +2830,13 @@ "label": "" }, "manageApi": { - "label": "" + "label": "Swagger API" }, "manageLog": { - "label": "" + "label": "查看日志" }, "manageTask": { - "label": "" + "label": "管理任务" }, "manageSettings": { "label": "全局设置" diff --git a/packages/translation/src/lang/cs.json b/packages/translation/src/lang/cs.json index 02ec270d7..03757122d 100644 --- a/packages/translation/src/lang/cs.json +++ b/packages/translation/src/lang/cs.json @@ -68,20 +68,20 @@ "subtitle": "", "notification": { "success": { - "title": "", - "message": "" + "title": "Uživatel byl vytvořen", + "message": "Uživatel byl úspěšně vytvořen" }, "error": { - "title": "" + "title": "Vytvoření uživatele se nezdařilo" } } }, "group": { - "title": "", + "title": "Externí skupina", "subtitle": "", "form": { "name": { - "label": "", + "label": "Název skupiny", "description": "" } } @@ -91,35 +91,35 @@ "subtitle": "" }, "finish": { - "title": "", - "subtitle": "", - "description": "", + "title": "Dokončit nastavení", + "subtitle": "Jste připraveni začít!", + "description": "Úspěšně jste dokončili proces nastavení. Nyní můžete začít používat Homarr. Vyberte další akci:", "action": { - "goToBoard": "", - "createBoard": "", - "inviteUser": "", - "docs": "" + "goToBoard": "Přejít na plochu {name}", + "createBoard": "Vytvořte svou první plochu", + "inviteUser": "Pozvat ostatní uživatele", + "docs": "Přečtěte si dokumentaci" } } }, - "backToStart": "" + "backToStart": "Zpět na začátek" }, "user": { "title": "Uživatelé", "name": "Uživatel", "page": { "login": { - "title": "", - "subtitle": "" + "title": "Přihlaste se ke svému účtu", + "subtitle": "Vítejte zpět! Zadejte prosím Vaše přihlašovací údaje" }, "invite": { "title": "", - "subtitle": "", - "description": "" + "subtitle": "Vítejte v Homarru! Vytvořte si prosím svůj účet", + "description": "Byli jste pozváni {username}" }, "init": { - "title": "", - "subtitle": "" + "title": "Nová instalace Homarru", + "subtitle": "Vytvořte prosím původního administrátora" } }, "field": { @@ -133,45 +133,45 @@ "password": { "label": "Heslo", "requirement": { - "length": "", + "length": "Obsahuje alespoň 8 znaků", "lowercase": "Obsahuje malé písmeno", "uppercase": "Obsahuje velké písmeno", "number": "Obsahuje číslo", - "special": "" + "special": "Obsahuje speciální symbol" } }, "passwordConfirm": { "label": "Potvrďte heslo" }, "previousPassword": { - "label": "" + "label": "Původní heslo" }, "homeBoard": { - "label": "" + "label": "Domovská plocha" }, "pingIconsEnabled": { - "label": "" + "label": "Používat ikony pro pingy" } }, "error": { - "usernameTaken": "" + "usernameTaken": "Uživatelské jméno je již používáno" }, "action": { "login": { "label": "Přihlásit se", - "labelWith": "", + "labelWith": "Přihlaste se pomocí {provider}", "notification": { "success": { - "title": "", - "message": "" + "title": "Přihlášení bylo úspěšné", + "message": "Nyní jste přihlášeni" }, "error": { - "title": "", - "message": "" + "title": "Příhlášení selhalo", + "message": "Vaše přihlášení se nezdařilo" } }, "forgotPassword": { - "label": "", + "label": "Zapomněli jste Vaše heslo?", "description": "" } }, @@ -180,40 +180,40 @@ "notification": { "success": { "title": "Účet byl vytvořen", - "message": "" + "message": "Chcete-li pokračovat, přihlaste se" }, "error": { - "title": "", - "message": "" + "title": "Vytvoření účtu se nezdařilo", + "message": "Váš účet se nepodařilo vytvořit" } } }, "create": "Vytvořit uživatele", "changePassword": { - "label": "", + "label": "Změnit heslo", "notification": { "success": { - "message": "" + "message": "Heslo bylo úspěšně změněno" }, "error": { - "message": "" + "message": "Nepodařilo se změnit heso" } } }, "changeHomeBoard": { "notification": { "success": { - "message": "" + "message": "Domovská plocha byla úspěšně změněna" }, "error": { - "message": "" + "message": "Nepodařilo se změnit domovskou plochu" } } }, "changeFirstDayOfWeek": { "notification": { "success": { - "message": "" + "message": "První den v týdnu byl úspěšně změněn" }, "error": { "message": "" @@ -247,14 +247,14 @@ } }, "removeImage": { - "label": "", - "confirm": "", + "label": "Odebrat obrázek", + "confirm": "Opravdu chcete odstranit tento obrázek?", "notification": { "success": { - "message": "" + "message": "Obrázek byl úspěšně odstraněn" }, "error": { - "message": "" + "message": "Obrázek nelze odstranit" } } } @@ -262,42 +262,42 @@ "editProfile": { "notification": { "success": { - "message": "" + "message": "Profil byl úspěšně aktualizován" }, "error": { - "message": "" + "message": "Profil nelze aktualizovat" } } }, "delete": { - "label": "", - "description": "", - "confirm": "" + "label": "Trvale smazat uživatele", + "description": "Smaže tohoto uživatele včetně jeho nastavení. Neodstraní žádné plochy. Uživatel nebude upozorněn.", + "confirm": "Jste si jisti, že chcete odstranit uživatele {username} včetně jejich nastavení?" }, "select": { - "label": "", - "notFound": "" + "label": "Vybrat uživatele", + "notFound": "Nebyl nalezen žádný uživatel" }, "transfer": { - "label": "" + "label": "Vyberte nového vlastníka" } } }, "group": { - "title": "", - "name": "", - "search": "", + "title": "Skupiny", + "name": "Skupina", + "search": "Najít skupinu", "field": { "name": "Název", - "members": "" + "members": "Členové" }, "permission": { "admin": { "title": "Administrátor", "item": { "admin": { - "label": "", - "description": "" + "label": "Administrátor", + "description": "Uživatelé s tímto oprávněním mají plný přístup ke všem funkcím a nastavením" } } }, @@ -305,20 +305,20 @@ "title": "Aplikace", "item": { "create": { - "label": "", - "description": "" + "label": "Vytvořit aplikace", + "description": "Povolit členům vytvářet aplikace" }, "use-all": { - "label": "", - "description": "" + "label": "Používat všechny aplikace", + "description": "Umožňuje členům přidávat do jejich ploch jakékoli aplikace" }, "modify-all": { - "label": "", - "description": "" + "label": "Upravit všechny aplikace", + "description": "Umožňuje členům upravovat všechny aplikace" }, "full-all": { - "label": "", - "description": "" + "label": "Úplný přístup k aplikacím", + "description": "Umožňuje členům spravovat, používat a mazat jakoukoli aplikaci" } } }, @@ -326,16 +326,16 @@ "title": "Plochy", "item": { "create": { - "label": "", - "description": "" + "label": "Tvorba ploch", + "description": "Umožňuje členům vytvářet plochy" }, "view-all": { - "label": "", - "description": "" + "label": "Zobrazit všechny plochy", + "description": "Umožňuje členům zobrazit všechny plochy" }, "modify-all": { - "label": "", - "description": "" + "label": "Upravit všechny plochy", + "description": "Umožňuje členům upravovat všechny plochy (nezahrnuje kontrolu přístupu a nebezpečnou zónu)" }, "full-all": { "label": "", @@ -344,83 +344,83 @@ } }, "integration": { - "title": "", + "title": "Integrace", "item": { "create": { - "label": "", - "description": "" + "label": "Vytvořit integrace", + "description": "Povolit členům vytvářet integrace" }, "use-all": { - "label": "", - "description": "" + "label": "Použít všechny integrace", + "description": "Umožňuje členům přidávat do jejich ploch jakékoli integrace" }, "interact-all": { - "label": "", - "description": "" + "label": "Interakce s jakoukoli integrací", + "description": "Umožnit členům interagovat s jakoukoli integrací" }, "full-all": { - "label": "", - "description": "" + "label": "Plný přístup k integraci", + "description": "Umožňuje členům spravovat, používat a interagovat s jakoukoli integrací" } } }, "media": { - "title": "", + "title": "Média", "item": { "upload": { - "label": "", - "description": "" + "label": "Nahrávat média", + "description": "Povolit členům nahrávat média" }, "view-all": { - "label": "", - "description": "" + "label": "Zobrazit všechna média", + "description": "Umožňuje členům nahrávat média" }, "full-all": { - "label": "", + "label": "Úplný přístup k médiím", "description": "" } } }, "other": { - "title": "", + "title": "Ostatní", "item": { "view-logs": { - "label": "", - "description": "" + "label": "Zobrazit logy", + "description": "Umožňuje členům prohlížet logy" } } }, "search-engine": { - "title": "", + "title": "Vyhledávače", "item": { "create": { - "label": "", - "description": "" + "label": "Vytvořit vyhledávače", + "description": "Umožňuje členům vytvářet vyhledávače" }, "modify-all": { "label": "", - "description": "" + "description": "Umožňuje členům upravovat všechny vyhledávače" }, "full-all": { - "label": "", - "description": "" + "label": "Úplný přístup k vyhledávačům", + "description": "Umožňuje členům spravovat a mazat jakýkoliv vyhledávač" } } } }, "memberNotice": { - "mixed": "", - "external": "" + "mixed": "Někteří členové jsou od externích poskytovatelů a nelze je spravovat zde", + "external": "Všichni členové jsou od externích poskytovatelů a nelze je spravovat zde" }, "reservedNotice": { - "message": "" + "message": "Tato skupina je vyhrazena pro používání systému a omezuje některé akce. " }, "action": { "create": { - "label": "", + "label": "Nová skupina", "notification": { "success": { - "message": "" + "message": "Skupina byla úspěšně vytvořena" }, "error": { "message": "" @@ -506,34 +506,34 @@ }, "error": { "title": "", - "message": "" + "message": "Aplikaci nelze vytvořit" } } }, "edit": { - "title": "", + "title": "Upravit aplikaci", "notification": { "success": { - "title": "", - "message": "" + "title": "Změny úspěšně aplikovány", + "message": "Aplikace byla úspěšně uložena" }, "error": { - "title": "", - "message": "" + "title": "Nepodařilo se uložit změny", + "message": "Aplikaci se nepodařilo uložit" } } }, "delete": { - "title": "", - "message": "", + "title": "Vymazat aplikaci", + "message": "Jste si jisti, že chcete vymazat aplikaci {name}?", "notification": { "success": { - "title": "", - "message": "" + "title": "Úspěšně odstraněno", + "message": "Aplikace byla úspěšně odstraněna" }, "error": { - "title": "", - "message": "" + "title": "Smazání se nezdařilo", + "message": "Nelze odstranit aplikaci" } } } @@ -543,15 +543,15 @@ "label": "Název" }, "description": { - "label": "" + "label": "Popis" }, "url": { - "label": "" + "label": "Url" } }, "action": { "select": { - "label": "", + "label": "Vybrat aplikaci", "notFound": "" } } @@ -559,49 +559,49 @@ "integration": { "page": { "list": { - "title": "", - "search": "", + "title": "Integrace", + "search": "Prohledat integrace", "noResults": { - "title": "" + "title": "Zatím nejsou žádné integrace" } }, "create": { - "title": "", + "title": "Nová integrace {name}", "notification": { "success": { - "title": "", - "message": "" + "title": "Vytvoření bylo úspěšné", + "message": "Integrace byla úspěšně vytvořena" }, "error": { - "title": "", - "message": "" + "title": "Vytvoření se nezdařilo", + "message": "Integraci se nepodařilo vytvořit" } } }, "edit": { - "title": "", + "title": "Upravit integraci {name}", "notification": { "success": { - "title": "", - "message": "" + "title": "Změny byly úspěšně aplikovány", + "message": "Integrace byla úspěšně uložena" }, "error": { - "title": "", - "message": "" + "title": "Nepodařilo se uložit změny", + "message": "Integraci se nepodařilo uložit" } } }, "delete": { - "title": "", - "message": "", + "title": "Smazat integraci", + "message": "Jste si jisti, že chcete vymazat integraci {name}?", "notification": { "success": { - "title": "", - "message": "" + "title": "Odstránění bylo úspěšné", + "message": "Integrace byla úspěšně smazána" }, "error": { - "title": "", - "message": "" + "title": "Smazání se nezdařilo", + "message": "Nepodařilo se odstranit integraci" } } } @@ -611,41 +611,41 @@ "label": "Název" }, "url": { - "label": "" + "label": "Url" } }, "action": { - "create": "" + "create": "Nová integrace" }, "testConnection": { "action": { - "create": "", - "edit": "" + "create": "Otestovat připojení a vytvořit", + "edit": "Otestovat připojení a uložit" }, "alertNotice": "", "notification": { "success": { - "title": "", + "title": "Spojení bylo úspěšné", "message": "" }, "invalidUrl": { "title": "Neplatná URL adresa", - "message": "" + "message": "URL adresa je neplatná" }, "secretNotDefined": { - "title": "", - "message": "" + "title": "Chybějící přihlašovací údaje", + "message": "Nebyly poskytnuty všechny přihlašovací údaje" }, "invalidCredentials": { - "title": "", - "message": "" + "title": "Neplatné přihlašovací údaje", + "message": "Přihlašovací údaje jsou neplatné" }, "commonError": { - "title": "", - "message": "" + "title": "Spojení selhalo", + "message": "Spojení nelze navázat" }, "badRequest": { - "title": "", + "title": "Chybný požadavek", "message": "" }, "unauthorized": { @@ -766,89 +766,89 @@ } }, "common": { - "beta": "", + "beta": "Beta", "error": "Chyba", "action": { "add": "Přidat", "apply": "Použít", - "backToOverview": "", + "backToOverview": "Zpět na přehled", "create": "Vytvořit", "edit": "Upravit", - "import": "", + "import": "Importovat", "insert": "Vložit", "remove": "Odstranit", "save": "Uložit", "saveChanges": "Uložit změny", "cancel": "Zrušit", "delete": "Odstranit", - "discard": "", + "discard": "Zahodit", "confirm": "Potvrdit", - "continue": "", + "continue": "Pokračovat", "previous": "Zpět", "next": "Další", - "checkoutDocs": "", - "checkLogs": "", + "checkoutDocs": "Přečtěte si dokumentaci", + "checkLogs": "Pro více podrobností zkontrolujte logy", "tryAgain": "Zkusit znovu", - "loading": "" + "loading": "Načítání" }, - "here": "", + "here": "zde", "iconPicker": { - "label": "", + "label": "URL ikony", "header": "" }, "colorScheme": { "options": { - "light": "", - "dark": "" + "light": "Světlý", + "dark": "Tmavý" } }, "information": { - "min": "", - "max": "", - "days": "", + "min": "Min", + "max": "Max", + "days": "Dnů", "hours": "Hodin", "minutes": "Minut" }, "notification": { "create": { - "success": "", - "error": "" + "success": "Vytvoření bylo úspěšné", + "error": "Vytvoření se nezdařilo" }, "delete": { - "success": "", - "error": "" + "success": "Odstranění bylo úspěšné", + "error": "Odstranění se nezdařilo" }, "update": { - "success": "", - "error": "" + "success": "Změny byly úspěšně aplikovány", + "error": "Nepodařilo se uložit změny" }, "transfer": { - "success": "", - "error": "" + "success": "Přenos úspěšný", + "error": "Přenos se nezdařil" } }, "multiSelect": { "placeholder": "" }, "multiText": { - "placeholder": "", - "addLabel": "" + "placeholder": "Přidat více hodnot", + "addLabel": "Přidat {value}" }, "select": { - "placeholder": "", + "placeholder": "Vybrat hodnotu", "badge": { - "recommended": "" + "recommended": "Doporučeno" } }, "userAvatar": { "menu": { - "switchToDarkMode": "", - "switchToLightMode": "", - "management": "", + "switchToDarkMode": "Přepnout do tmavého režimu", + "switchToLightMode": "Přepnout do světlého režimu", + "management": "Správa", "preferences": "Vaše předvolby", - "logout": "", + "logout": "Odhlásit se", "login": "Přihlásit se", - "homeBoard": "", + "homeBoard": "Vaše domácí plocha", "loggedOut": "", "updateAvailable": "" } @@ -856,8 +856,8 @@ "dangerZone": "Nebezpečná zóna", "noResults": "Nebyly nalezeny žádné výsledky", "preview": { - "show": "", - "hide": "" + "show": "Zobrazit náhled", + "hide": "Skrýt náhled" }, "zod": { "errors": { @@ -867,7 +867,7 @@ "startsWith": "Toto pole musí začínat {startsWith}", "endsWith": "Toto pole musí končit {endsWith}", "includes": "Toto pole musí obsahovat {includes}", - "invalidEmail": "" + "invalidEmail": "Toto pole musí být platný e-mail" }, "tooSmall": { "string": "Toto pole musí obsahovat alespoň {minimum} znaků", @@ -878,13 +878,13 @@ "number": "Toto pole musí být menší nebo rovno {maximum}" }, "custom": { - "passwordsDoNotMatch": "", - "passwordRequirements": "", - "boardAlreadyExists": "", - "invalidFileType": "", - "fileTooLarge": "", - "invalidConfiguration": "", - "groupNameTaken": "" + "passwordsDoNotMatch": "Hesla se neshodují", + "passwordRequirements": "Heslo nesplňuje požadavky", + "boardAlreadyExists": "Plocha s tímto názvem již existuje", + "invalidFileType": "Neplatný typ souboru, očekáván {expected}", + "fileTooLarge": "Soubor je příliš velký, maximální velikost je {maxSize}", + "invalidConfiguration": "Neplatná konfigurace", + "groupNameTaken": "Název skupiny je již používán" } } } @@ -892,11 +892,11 @@ "section": { "dynamic": { "action": { - "create": "", - "remove": "" + "create": "Nová dynamická sekce", + "remove": "Odstranit dynamickou sekci" }, "remove": { - "title": "", + "title": "Odstranit dynamickou sekci", "message": "" } }, @@ -1047,7 +1047,7 @@ }, "dnsHoleSummary": { "name": "", - "description": "", + "description": "Zobrazí shrnutí vaší DNS Hole", "option": { "layout": { "label": "Rozložení", @@ -1059,16 +1059,16 @@ "label": "Vertikální" }, "grid": { - "label": "" + "label": "Mřížka" } } }, "usePiHoleColors": { - "label": "" + "label": "Používat barvy Pi-Hole" } }, "error": { - "internalServerError": "", + "internalServerError": "Nepodařilo se načíst souhrn DNS Hole", "integrationsDisconnected": "" }, "data": { @@ -1092,7 +1092,7 @@ "label": "Vertikální" }, "grid": { - "label": "" + "label": "Mřížka" } } }, @@ -1104,21 +1104,21 @@ "internalServerError": "" }, "controls": { - "enableAll": "", - "disableAll": "", - "setTimer": "", + "enableAll": "Povolit vše", + "disableAll": "Zakázat vše", + "setTimer": "Nastavit časovač", "set": "Nastavit", "enabled": "Zapnuto", "disabled": "Vypnuto", - "processing": "", + "processing": "Zpracovávání", "disconnected": "", "hours": "Hodin", "minutes": "Minut", - "unlimited": "" + "unlimited": "Ponechte prázdné pro neomezené" } }, "clock": { - "name": "", + "name": "Datum a čas", "description": "Zobrazuje aktuální datum a čas.", "option": { "customTitleToggle": { @@ -1126,17 +1126,17 @@ "description": "" }, "customTitle": { - "label": "" + "label": "Název" }, "is24HourFormat": { - "label": "", - "description": "" + "label": "24hodinový formát", + "description": "Použít 24hodinový formát místo 12hodinového formátu" }, "showSeconds": { - "label": "" + "label": "Zobrazit vteřiny" }, "useCustomTimezone": { - "label": "" + "label": "Použít pevné časové pásmo" }, "timezone": { "label": "Časové pásmo", @@ -1146,7 +1146,7 @@ "label": "" }, "dateFormat": { - "label": "", + "label": "Formát data", "description": "" } } @@ -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" @@ -1245,12 +1245,12 @@ } }, "error": { - "noUrl": "", + "noUrl": "Nebyla zadána URL adresa iFrame", "noBrowerSupport": "Váš prohlížeč nepodporuje iFrame. Aktualizujte, prosím, svůj prohlížeč." } }, "smartHome-entityState": { - "name": "", + "name": "Stav entity", "description": "", "option": { "entityId": { @@ -1316,7 +1316,7 @@ "label": "" }, "hasForecast": { - "label": "" + "label": "Zobrazit předpověď" }, "forecastDayCount": { "label": "", @@ -1400,14 +1400,14 @@ "latitude": "", "longitude": "", "disabledTooltip": "", - "unknownLocation": "", + "unknownLocation": "Neznámá poloha", "search": "Vyhledat", "table": { "header": { - "city": "", - "country": "", - "coordinates": "", - "population": "" + "city": "Město", + "country": "Státy", + "coordinates": "Souřadnice", + "population": "Populace" }, "action": { "select": "" @@ -1418,16 +1418,16 @@ } }, "integration": { - "noData": "", - "description": "" + "noData": "Nebyla nalezena žádná integrace", + "description": "Klikněte na pro vytvoření nové integrace" }, "app": { "noData": "", - "description": "" + "description": "Klikněte na pro vytvoření nové aplikace" }, "error": { - "noIntegration": "", - "noData": "" + "noIntegration": "Nebyla vybrána žádná integrace", + "noData": "Nejsou k dispozici žádná data o integraci" }, "option": {} }, @@ -1440,7 +1440,7 @@ }, "hasAutoPlay": { "label": "Automatické přehrávání", - "description": "" + "description": "Automatické přehrávání funguje pouze když je ztlumeno kvůli omezením prohlížeče" }, "isMuted": { "label": "" @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "Uživatel", + "name": "Jméno", + "id": "Id" + } }, "downloads": { "name": "", @@ -1515,11 +1520,11 @@ "detailsTitle": "Rychlost stahování" }, "index": { - "columnTitle": "", + "columnTitle": "#", "detailsTitle": "" }, "id": { - "columnTitle": "" + "columnTitle": "Id" }, "integration": { "columnTitle": "Integrace" @@ -1536,12 +1541,12 @@ "detailsTitle": "" }, "received": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "Celkem staženo", + "detailsTitle": "Celkem staženo" }, "sent": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "Celkem nahráno", + "detailsTitle": "Celkem nahráno" }, "size": { "columnTitle": "", diff --git a/packages/translation/src/lang/da.json b/packages/translation/src/lang/da.json index 4b402617e..03b0b25bd 100644 --- a/packages/translation/src/lang/da.json +++ b/packages/translation/src/lang/da.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/de.json b/packages/translation/src/lang/de.json index a837d9d05..3cb3449f6 100644 --- a/packages/translation/src/lang/de.json +++ b/packages/translation/src/lang/de.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/el.json b/packages/translation/src/lang/el.json index f8a385f15..5f0727cb0 100644 --- a/packages/translation/src/lang/el.json +++ b/packages/translation/src/lang/el.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/es.json b/packages/translation/src/lang/es.json index 92f5ddfc0..239d12d6d 100644 --- a/packages/translation/src/lang/es.json +++ b/packages/translation/src/lang/es.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/et.json b/packages/translation/src/lang/et.json index 1e6479a95..4f72a2dba 100644 --- a/packages/translation/src/lang/et.json +++ b/packages/translation/src/lang/et.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/fr.json b/packages/translation/src/lang/fr.json index 6ab07d8ed..61d7b9767 100644 --- a/packages/translation/src/lang/fr.json +++ b/packages/translation/src/lang/fr.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/he.json b/packages/translation/src/lang/he.json index 3b6df5fd9..9583a92bf 100644 --- a/packages/translation/src/lang/he.json +++ b/packages/translation/src/lang/he.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "זרמי שרת מדיה נוכחיים", "description": "הצג את הזרמים הנוכחיים בשרתי המדיה שלך", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "הורדת לקוח", diff --git a/packages/translation/src/lang/hr.json b/packages/translation/src/lang/hr.json index d70a830d2..1f1e7fafb 100644 --- a/packages/translation/src/lang/hr.json +++ b/packages/translation/src/lang/hr.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/hu.json b/packages/translation/src/lang/hu.json index f1a22dd50..93e9b2e78 100644 --- a/packages/translation/src/lang/hu.json +++ b/packages/translation/src/lang/hu.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/it.json b/packages/translation/src/lang/it.json index a15ee98c9..f287d2f73 100644 --- a/packages/translation/src/lang/it.json +++ b/packages/translation/src/lang/it.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/ja.json b/packages/translation/src/lang/ja.json index 87d73077f..74c44a010 100644 --- a/packages/translation/src/lang/ja.json +++ b/packages/translation/src/lang/ja.json @@ -2,16 +2,16 @@ "init": { "step": { "start": { - "title": "", + "title": "Homarrへようこそ", "subtitle": "", "description": "", "action": { - "scratch": "", + "scratch": "ゼロからスタート", "importOldmarr": "" } }, "import": { - "title": "", + "title": "データのインポート", "subtitle": "", "dropzone": { "title": "", @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/ko.json b/packages/translation/src/lang/ko.json index 657a35c9c..2696d9acc 100644 --- a/packages/translation/src/lang/ko.json +++ b/packages/translation/src/lang/ko.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/lt.json b/packages/translation/src/lang/lt.json index 2d947019a..3465f1815 100644 --- a/packages/translation/src/lang/lt.json +++ b/packages/translation/src/lang/lt.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/lv.json b/packages/translation/src/lang/lv.json index 6cf025fdc..b2e568ba5 100644 --- a/packages/translation/src/lang/lv.json +++ b/packages/translation/src/lang/lv.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/nl.json b/packages/translation/src/lang/nl.json index 89aa38b26..41bb61bb5 100644 --- a/packages/translation/src/lang/nl.json +++ b/packages/translation/src/lang/nl.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "Huidige mediaserver streams", "description": "De huidige streams op je mediaservers weergeven", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "Client downloaden", diff --git a/packages/translation/src/lang/no.json b/packages/translation/src/lang/no.json index c9fde5e3e..58ab1bcb5 100644 --- a/packages/translation/src/lang/no.json +++ b/packages/translation/src/lang/no.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/pl.json b/packages/translation/src/lang/pl.json index d4f63985f..f59cee154 100644 --- a/packages/translation/src/lang/pl.json +++ b/packages/translation/src/lang/pl.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/pt.json b/packages/translation/src/lang/pt.json index 3186e11e2..314552f75 100644 --- a/packages/translation/src/lang/pt.json +++ b/packages/translation/src/lang/pt.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/ro.json b/packages/translation/src/lang/ro.json index 2da2ae314..c9d12cd85 100644 --- a/packages/translation/src/lang/ro.json +++ b/packages/translation/src/lang/ro.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/ru.json b/packages/translation/src/lang/ru.json index a0b43d8f8..160e884a1 100644 --- a/packages/translation/src/lang/ru.json +++ b/packages/translation/src/lang/ru.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "Активные просмотры", "description": "Отображает текущие сеансы воспроизведения на медиасерверах", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "Загрузки", diff --git a/packages/translation/src/lang/sk.json b/packages/translation/src/lang/sk.json index a3052d75e..bbd0b1a71 100644 --- a/packages/translation/src/lang/sk.json +++ b/packages/translation/src/lang/sk.json @@ -2,9 +2,9 @@ "init": { "step": { "start": { - "title": "Vitajte na stránke Homarr", - "subtitle": "Začnime s nastavením inštancie Homarr.", - "description": "Ak chcete začať, vyberte, ako chcete nastaviť inštanciu Homarr.", + "title": "Vitajte na Homár", + "subtitle": "Začnime s nastavením inštancie Homár.", + "description": "Ak chcete začať, vyberte, ako chcete nastaviť inštanciu Homár.", "action": { "scratch": "Začať odznova", "importOldmarr": "Import z Homarru pred 1.0" @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "Aktuálne streamy mediálneho servera", "description": "Zobrazte aktuálne streamy na vašich mediálnych serveroch", - "option": {} + "option": {}, + "items": { + "user": "Používateľ", + "name": "Názov", + "id": "Id" + } }, "downloads": { "name": "Download klient", diff --git a/packages/translation/src/lang/sl.json b/packages/translation/src/lang/sl.json index 6b13bf358..c0da63e30 100644 --- a/packages/translation/src/lang/sl.json +++ b/packages/translation/src/lang/sl.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/sv.json b/packages/translation/src/lang/sv.json index b3760d305..5263131b8 100644 --- a/packages/translation/src/lang/sv.json +++ b/packages/translation/src/lang/sv.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/tr.json b/packages/translation/src/lang/tr.json index 45e560300..7cb8e2f1a 100644 --- a/packages/translation/src/lang/tr.json +++ b/packages/translation/src/lang/tr.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "Güncel Medya Sunucusu Akışları", "description": "Medya sunucularınızdaki mevcut akışları gösterin", - "option": {} + "option": {}, + "items": { + "user": "Kullanıcı", + "name": "İsim", + "id": "Kimlik" + } }, "downloads": { "name": "İndirme İstemcisi", @@ -1910,7 +1915,7 @@ "title": "Düzen" }, "background": { - "title": "Arkaplan Resim URL'si" + "title": "Arkaplan" }, "color": { "title": "Renkler" @@ -2320,7 +2325,7 @@ }, "job": { "iconsUpdater": { - "label": "Simge Güncelleyici" + "label": "Simge Güncelleme" }, "analytics": { "label": "Analiz" @@ -2617,7 +2622,7 @@ } }, "search": { - "placeholder": "Ara", + "placeholder": "Ara (\"!\" İle Başlamalı)", "nothingFound": "Hiçbir şey bulunamadı", "error": { "fetch": "Veriler alınırken bir hata oluştu" @@ -2729,7 +2734,7 @@ } }, "detail": { - "title": "Arama motoru için bir eylem seçin" + "title": "Arama yapmak istediğiniz terimleri girin" }, "searchResults": { "title": "Eylemler için bir arama sonucu seçin" diff --git a/packages/translation/src/lang/uk.json b/packages/translation/src/lang/uk.json index c67e20b69..91219a9d7 100644 --- a/packages/translation/src/lang/uk.json +++ b/packages/translation/src/lang/uk.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/vi.json b/packages/translation/src/lang/vi.json index 10f89aa67..a1a55468f 100644 --- a/packages/translation/src/lang/vi.json +++ b/packages/translation/src/lang/vi.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/zh.json b/packages/translation/src/lang/zh.json index 4f82cee8b..cc660f4cd 100644 --- a/packages/translation/src/lang/zh.json +++ b/packages/translation/src/lang/zh.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "", + "name": "", + "id": "" + } }, "downloads": { "name": "", From 5cb726f793678f0c2b4de3556548c1fe5b329336 Mon Sep 17 00:00:00 2001 From: Meier Lukas Date: Mon, 30 Dec 2024 17:38:27 +0100 Subject: [PATCH 15/25] ci(docker): always push image (#1812) --- .github/workflows/deployment-docker-image.yml | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/.github/workflows/deployment-docker-image.yml b/.github/workflows/deployment-docker-image.yml index b2860a9df..74772e8ef 100644 --- a/.github/workflows/deployment-docker-image.yml +++ b/.github/workflows/deployment-docker-image.yml @@ -13,11 +13,6 @@ on: required: false default: true description: Send notifications - push-image: - type: boolean - required: false - default: true - description: Push Docker Image permissions: contents: write @@ -112,7 +107,6 @@ jobs: NEXT_VERSION: ${{ needs.release.outputs.version }} DEPLOY_LATEST: ${{ github.ref_name == 'main' }} DEPLOY_BETA: ${{ github.ref_name == 'beta' }} - PUSH_IMAGE: ${{ github.event_name != 'workflow_dispatch' || github.events.inputs.push-image == true }} steps: - uses: actions/checkout@v4 with: @@ -143,13 +137,13 @@ jobs: ${{ env.DEPLOY_LATEST == 'true' && 'type=raw,value=latest' || null }} ${{ env.DEPLOY_BETA == 'true' && 'type=raw,value=beta' || null }} type=raw,value=${{ env.NEXT_VERSION }} - - name: Build and maybe push + - name: Build and push id: buildPushAction uses: docker/build-push-action@v6 with: platforms: linux/amd64,linux/arm64 context: . - push: ${{ env.PUSH_IMAGE }} + push: true tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} network: host @@ -160,4 +154,4 @@ jobs: DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} uses: Ilshidur/action-discord@master with: - args: "Deployment of image has completed for branch ${{ github.ref_name }}. Image ID is '${{ steps.buildPushAction.outputs.imageid }}'. ${{ env.PUSH_IMAGE == 'true' && '' || 'This was a dry run' }}" + args: "Deployment of image has completed for branch ${{ github.ref_name }}. Image ID is '${{ steps.buildPushAction.outputs.imageid }}'." From eacda4c397cb384a35e9eec0305f9b26f2a22a4a Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Mon, 30 Dec 2024 16:54:00 +0000 Subject: [PATCH 16/25] fix(deps): update tiptap monorepo to v2.11.0 (#1813) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- packages/widgets/package.json | 30 +- pnpm-lock.yaml | 508 +++++++++++++++++----------------- 2 files changed, 269 insertions(+), 269 deletions(-) diff --git a/packages/widgets/package.json b/packages/widgets/package.json index 5dbc64085..a6bc44136 100644 --- a/packages/widgets/package.json +++ b/packages/widgets/package.json @@ -44,21 +44,21 @@ "@mantine/core": "^7.15.2", "@mantine/hooks": "^7.15.2", "@tabler/icons-react": "^3.26.0", - "@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", + "@tiptap/extension-color": "2.11.0", + "@tiptap/extension-highlight": "2.11.0", + "@tiptap/extension-image": "2.11.0", + "@tiptap/extension-link": "^2.11.0", + "@tiptap/extension-table": "2.11.0", + "@tiptap/extension-table-cell": "2.11.0", + "@tiptap/extension-table-header": "2.11.0", + "@tiptap/extension-table-row": "2.11.0", + "@tiptap/extension-task-item": "2.11.0", + "@tiptap/extension-task-list": "2.11.0", + "@tiptap/extension-text-align": "2.11.0", + "@tiptap/extension-text-style": "2.11.0", + "@tiptap/extension-underline": "2.11.0", + "@tiptap/react": "^2.11.0", + "@tiptap/starter-kit": "^2.11.0", "clsx": "^2.1.1", "dayjs": "^1.11.13", "mantine-react-table": "2.0.0-beta.7", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index bea32e49b..c8df6099d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -165,7 +165,7 @@ importers: version: 7.15.2(@mantine/core@7.15.2(@mantine/hooks@7.15.2(react@19.0.0))(@types/react@19.0.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.15.2(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@mantine/tiptap': specifier: ^7.15.2 - version: 7.15.2(@mantine/core@7.15.2(@mantine/hooks@7.15.2(react@19.0.0))(@types/react@19.0.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.15.2(react@19.0.0))(@tiptap/extension-link@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4))(@tiptap/react@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + version: 7.15.2(@mantine/core@7.15.2(@mantine/hooks@7.15.2(react@19.0.0))(@types/react@19.0.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.15.2(react@19.0.0))(@tiptap/extension-link@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0))(@tiptap/react@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@million/lint': specifier: 1.0.14 version: 1.0.14(rollup@4.21.3)(webpack-sources@3.2.3) @@ -186,16 +186,16 @@ importers: version: 5.62.11(@tanstack/react-query@5.62.11(react@19.0.0))(next@14.2.22(@babel/core@7.26.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(sass@1.83.0))(react@19.0.0) '@trpc/client': specifier: next - version: 11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2) + version: 11.0.0-rc.682(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(typescript@5.7.2) '@trpc/next': specifier: next - version: 11.0.0-rc.678(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2))(@trpc/react-query@11.0.0-rc.678(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2))(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(next@14.2.22(@babel/core@7.26.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(sass@1.83.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2) + version: 11.0.0-rc.682(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.682(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(typescript@5.7.2))(@trpc/react-query@11.0.0-rc.682(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.682(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2))(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(next@14.2.22(@babel/core@7.26.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(sass@1.83.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2) '@trpc/react-query': specifier: next - version: 11.0.0-rc.678(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2) + version: 11.0.0-rc.682(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.682(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2) '@trpc/server': specifier: next - version: 11.0.0-rc.678(typescript@5.7.2) + version: 11.0.0-rc.682(typescript@5.7.2) '@xterm/addon-canvas': specifier: ^0.7.0 version: 0.7.0(@xterm/xterm@5.5.0) @@ -541,13 +541,13 @@ importers: version: link:../validation '@trpc/client': specifier: next - version: 11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2) + version: 11.0.0-rc.682(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(typescript@5.7.2) '@trpc/react-query': specifier: next - version: 11.0.0-rc.678(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2) + version: 11.0.0-rc.682(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.682(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2) '@trpc/server': specifier: next - version: 11.0.0-rc.678(typescript@5.7.2) + version: 11.0.0-rc.682(typescript@5.7.2) dockerode: specifier: ^4.0.2 version: 4.0.2 @@ -565,7 +565,7 @@ importers: version: 2.2.2 trpc-to-openapi: specifier: ^2.1.1 - version: 2.1.1(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(zod-openapi@2.19.0(zod@3.24.1))(zod@3.24.1) + version: 2.1.1(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(zod-openapi@2.19.0(zod@3.24.1))(zod@3.24.1) devDependencies: '@homarr/eslint-config': specifier: workspace:^0.2.0 @@ -1749,50 +1749,50 @@ importers: specifier: ^3.26.0 version: 3.26.0(react@19.0.0) '@tiptap/extension-color': - specifier: 2.10.4 - version: 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/extension-text-style@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))) + specifier: 2.11.0 + version: 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/extension-text-style@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))) '@tiptap/extension-highlight': - specifier: 2.10.4 - version: 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) + specifier: 2.11.0 + version: 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) '@tiptap/extension-image': - specifier: 2.10.4 - version: 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) + specifier: 2.11.0 + version: 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) '@tiptap/extension-link': - specifier: ^2.10.4 - version: 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4) + specifier: ^2.11.0 + version: 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0) '@tiptap/extension-table': - specifier: 2.10.4 - version: 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4) + specifier: 2.11.0 + version: 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0) '@tiptap/extension-table-cell': - specifier: 2.10.4 - version: 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) + specifier: 2.11.0 + version: 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) '@tiptap/extension-table-header': - specifier: 2.10.4 - version: 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) + specifier: 2.11.0 + version: 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) '@tiptap/extension-table-row': - specifier: 2.10.4 - version: 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) + specifier: 2.11.0 + version: 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) '@tiptap/extension-task-item': - specifier: 2.10.4 - version: 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4) + specifier: 2.11.0 + version: 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0) '@tiptap/extension-task-list': - specifier: 2.10.4 - version: 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) + specifier: 2.11.0 + version: 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) '@tiptap/extension-text-align': - specifier: 2.10.4 - version: 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) + specifier: 2.11.0 + version: 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) '@tiptap/extension-text-style': - specifier: 2.10.4 - version: 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) + specifier: 2.11.0 + version: 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) '@tiptap/extension-underline': - specifier: 2.10.4 - version: 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) + specifier: 2.11.0 + version: 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) '@tiptap/react': - specifier: ^2.10.4 - version: 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + specifier: ^2.11.0 + version: 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@tiptap/starter-kit': - specifier: ^2.10.4 - version: 2.10.4 + specifier: ^2.11.0 + version: 2.11.0 clsx: specifier: ^2.1.1 version: 2.1.1 @@ -3697,217 +3697,217 @@ packages: '@testcontainers/mysql@10.16.0': resolution: {integrity: sha512-GyxWqKfpY13lUrTEBmkKrAXyN7RZ//ntMdY/5Eyo/SukDM9LNGu3j5aNuDTGlYr4AEMJuzJ8CHxqUDAFGnCB/w==} - '@tiptap/core@2.10.4': - resolution: {integrity: sha512-fExFRTRgb6MSpg2VvR5qO2dPTQAZWuUoU4UsBCurIVcPWcyVv4FG1YzgMyoLDKy44rebFtwUGJbfU9NzX7Q/bA==} + '@tiptap/core@2.11.0': + resolution: {integrity: sha512-0S3AWx6E2QqwdQqb6z0/q6zq2u9lA9oL3BLyAaITGSC9zt8OwjloS2k1zN6wLa9hp2rO0c0vDnWsTPeFaEaMdw==} peerDependencies: '@tiptap/pm': ^2.7.0 - '@tiptap/extension-blockquote@2.10.4': - resolution: {integrity: sha512-4JSwAM3B92YWvGzu/Vd5rovPrCGwLSaSLD5rxcLyfxLSrTDQd3n7lp78pzVgGhunVECzaGF5A0ByWWpEyS0a3w==} + '@tiptap/extension-blockquote@2.11.0': + resolution: {integrity: sha512-DBjWbgmbAAR879WAsk0+5xxgqpOTweWNnY7kEqWv3EJtLUvECXN63smiv3o4fREwwbEJqgihBu5/YugRC5z1dg==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-bold@2.10.4': - resolution: {integrity: sha512-SdO4oFQKaERCGfwOc1CLYQRtThENam2KWfWmvpsymknokt5qYzU57ft0SE1HQV9vVYEzZ9HrWIgv2xrgu0g9kg==} + '@tiptap/extension-bold@2.11.0': + resolution: {integrity: sha512-3x9BQZHYD5xFA0pCEneEMHZyIoxYo4NKcbhR4CLxGad1Xd+5g109nr1+eZ1JgvnChkeVf1eD6SaQE2A28lxR5g==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-bubble-menu@2.10.4': - resolution: {integrity: sha512-GVtZwJaQyLBptMsmDtYl5GEobd1Uu7C9sc9Z+PdXwMuxmFfg+j07bCKCj5JJj/tjgXCSLVxWdTlDHxNrgzQHjw==} + '@tiptap/extension-bubble-menu@2.11.0': + resolution: {integrity: sha512-21KyB7+QSQjw72Oxzs3Duw9WErAUrigFZCyoCZNjp24wP7mFVsy1jAcnRiAi8pBVwlwHBZ29IW1PeavqCSFFVA==} peerDependencies: '@tiptap/core': ^2.7.0 '@tiptap/pm': ^2.7.0 - '@tiptap/extension-bullet-list@2.10.4': - resolution: {integrity: sha512-JVwDPgOBYRU2ivaadOh4IaQYXQEiSw6sB36KT/bwqJF2GnEvLiMwptdRMn9Uuh6xYR3imjIZtV6uZAoneZdd6g==} + '@tiptap/extension-bullet-list@2.11.0': + resolution: {integrity: sha512-UALypJvO+cPSk/nC1HhkX/ImS9FxbKe2Pr0iDofakvZU1U1msumLVn2M/iq+ax1Mm9thodpvJv0hGDtFRwm7lQ==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-code-block@2.10.4': - resolution: {integrity: sha512-qS4jnbJqghNMT2+B+GQ807ATgqkL9OQ//NlL+ZwVSe+DPDduNA9B6IB9SrWENDfOnzekpi7kcEcm+RenELARRQ==} + '@tiptap/extension-code-block@2.11.0': + resolution: {integrity: sha512-8of3qTOLjpveHBrrk8KVliSUVd6R2i2TNrBj0f/21HcFVAy0fP++02p6vI6UPOhwM3+p3CprGdSM48DFCu1rqw==} peerDependencies: '@tiptap/core': ^2.7.0 '@tiptap/pm': ^2.7.0 - '@tiptap/extension-code@2.10.4': - resolution: {integrity: sha512-Vj/N0nbSQiV1o7X7pRySK9Fu72Dd266gm27TSlsts6IwJu5MklFvz7ezJUWoLjt2wmCV8/U/USmk/39ic9qjvg==} + '@tiptap/extension-code@2.11.0': + resolution: {integrity: sha512-2roNZxcny1bGjyZ8x6VmGTuKbwfJyTZ1hiqPc/CRTQ1u42yOhbjF4ziA5kfyUoQlzygZrWH9LR5IMYGzPQ1N3w==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-color@2.10.4': - resolution: {integrity: sha512-LgYECcWnTfonqzTUJQN+ujNlWQahGg4G6typRR44opNxwGTlmXHjc6h/JwgLiYxSMZke3EDP/17BSQDH9MMrIA==} + '@tiptap/extension-color@2.11.0': + resolution: {integrity: sha512-9dO6zr7Zzz7vvJAct+IGHvYpV6pHcNyifLjmXNdJdKY118lnoeQfu1dsxiPGl9KXCv5bHgn4dUg3CsrnAlb9OQ==} peerDependencies: '@tiptap/core': ^2.7.0 '@tiptap/extension-text-style': ^2.7.0 - '@tiptap/extension-document@2.10.4': - resolution: {integrity: sha512-1Pqrl6Rr9bVEHJ3zO2dM7UUA0Qn/r70JQ9YLlestjW1sbMaMuY3Ifvu2uSyUE7SAGV3gvxwNVQCrv8f0VlVEaA==} + '@tiptap/extension-document@2.11.0': + resolution: {integrity: sha512-9YI0AT3mxyUZD7NHECHyV1uAjQ8KwxOS5ACwvrK1MU8TqY084LmodYNTXPKwpqbr51yvt3qZq1R7UIVu4/22Cg==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-dropcursor@2.10.4': - resolution: {integrity: sha512-0XEM/yNLaMc/sZlYOau7XpHyYiHT9LwXUe7kmze/L8eowIa/iLvmRbcnUd3rtlZ7x7wooE6UO9c7OtlREg4ZBw==} + '@tiptap/extension-dropcursor@2.11.0': + resolution: {integrity: sha512-p7tUtlz7KzBa+06+7W2LJ8AEiHG5chdnUIapojZ7SqQCrFRVw70R+orpkzkoictxNNHsun0A9FCUy4rz8L0+nQ==} peerDependencies: '@tiptap/core': ^2.7.0 '@tiptap/pm': ^2.7.0 - '@tiptap/extension-floating-menu@2.10.4': - resolution: {integrity: sha512-K2MDiu6CwQ7+Jr6g1Lh3Tuxm1L6SefSHMpQO0UW3aRGwgEV5pjlrztnBFX4K9b7MNuQ4dJGCUK9u8Cv7Xss0qg==} + '@tiptap/extension-floating-menu@2.11.0': + resolution: {integrity: sha512-dexhhUJm0x9OolbeVCa7RpxuALU3bJZC7dFpu/rPG3ZetXKhVw8hTrqUQD5w1DjXpczBzScnLgLrvnjxbG66pw==} peerDependencies: '@tiptap/core': ^2.7.0 '@tiptap/pm': ^2.7.0 - '@tiptap/extension-gapcursor@2.10.4': - resolution: {integrity: sha512-KbJfoaqTZePpkWAN+klpK5j0UVtELxN7H5B0J556/UCB/rnq+OsdEFHPks2Ss9TidqWzRUqcxUE50UZ7b8h7Ug==} + '@tiptap/extension-gapcursor@2.11.0': + resolution: {integrity: sha512-1TVOthPkUYwTQnQwP0BzuIHVz09epOiXJQ3GqgNZsmTehwcMzz2vGCpx1JXhZ5DoMaREHNLCdraXb1n2FdhDNA==} peerDependencies: '@tiptap/core': ^2.7.0 '@tiptap/pm': ^2.7.0 - '@tiptap/extension-hard-break@2.10.4': - resolution: {integrity: sha512-nW9wubW1A/CO2Ssn9wNMP08tR9Oarg9VUGzJ5qNuz38DDNyntE1SyDS+XStkeMq5nKqJ3YKhukyAJH/PiRq4Mg==} + '@tiptap/extension-hard-break@2.11.0': + resolution: {integrity: sha512-7pMgPNk2FnPT0LcWaWNNxOLK3LQnRSYFgrdBGMXec3sy+y3Lit3hM+EZhbZcHpTIQTbWWs+eskh1waRMIt0ZaQ==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-heading@2.10.4': - resolution: {integrity: sha512-7D0h0MIvE97Gx3Qwuo2xnPDK07WfCnyh4tpOPBOus4e1g6sgxVkwDwhbkYWiwvIrf4BUVJflnke/DEDCVp6/Eg==} + '@tiptap/extension-heading@2.11.0': + resolution: {integrity: sha512-vrYvxibsY7/Sd2wYQDZ8AfIORfFi/UHZAWI7JmaMtDkILuMLYQ+jXb7p4K2FFW/1nN7C8QqgLLFI5AfjZUusgw==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-highlight@2.10.4': - resolution: {integrity: sha512-0E/eK+eKx7I7UotELKPFsL/jiWFVtAkyXvcs1+OzcCr8ao2M6t5hGKh0McBG4WUQdxttnIwfQemGzIHU25pDog==} + '@tiptap/extension-highlight@2.11.0': + resolution: {integrity: sha512-+szogL1ux8HMOuIn+TyB5PNhS0mdy4so5ejT2KAMtdZioPNS3Awj1FypimrXJV1kDjaN6LHRkF+w8/bV0qX4hA==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-history@2.10.4': - resolution: {integrity: sha512-fg6BNxbpMMtgKaiNI/GLcCzkxIQMwSYBhO9LA0CxLvmsWGU+My4r9W3DK6HwNoRJ9+6OleDPSLo1P73fbSTtEA==} + '@tiptap/extension-history@2.11.0': + resolution: {integrity: sha512-eEUEDoOtS17AHVEPbGfZ+x2L5A87SiIsppWYTkpfIH/8EnVQmzu+3i1tcT9cWvHC31d9JTG7TDptVuuHr30TJw==} peerDependencies: '@tiptap/core': ^2.7.0 '@tiptap/pm': ^2.7.0 - '@tiptap/extension-horizontal-rule@2.10.4': - resolution: {integrity: sha512-s9ycm/BOGoW3L0Epnj541vdngHbFbMM488HoODd1CmVSw1C+wBWFgsukgqKjlyE3VGfZXuSb1ur9zinW0RiLJQ==} + '@tiptap/extension-horizontal-rule@2.11.0': + resolution: {integrity: sha512-ZbkILwmcccmwQB2VTA/dzHRMB+xoJQ8UJdafcUiaAUlQfvDgl898+AYMa2GRTZkLPvzCKjXMC9hybSyy54Lz3Q==} peerDependencies: '@tiptap/core': ^2.7.0 '@tiptap/pm': ^2.7.0 - '@tiptap/extension-image@2.10.4': - resolution: {integrity: sha512-fPdAqP4M1zwz5jyrQNIEL4OvvGeJso45svaaBLV342yRLOpbVIgAp/RsuWSGDQTUWoGhdkHdIrbH2bUGNEbMBg==} + '@tiptap/extension-image@2.11.0': + resolution: {integrity: sha512-R+JkK5ocX35ag1c42aAw6rcb9QlLUBB0ju8A7b+8qZXN5yWKE0yO/oixYFmnZN7WSnBYtzuCVDX8cvRG+BPbgA==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-italic@2.10.4': - resolution: {integrity: sha512-8MIQ+wsbyxNCZDCFTVTOXrS2AvFyOhtlBNgVU2+6r6xnJV4AcfEA3qclysqrjOlL117ped/nzDeoB0AeX0CI+Q==} + '@tiptap/extension-italic@2.11.0': + resolution: {integrity: sha512-T+jjS0gOsvNzQXVTSArmUp/kt2R9OikPQaV1DI60bfjO0rknOgtG0tbwZmfbugzwc07RbpxOYFy3vBxMLDsksA==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-link@2.10.4': - resolution: {integrity: sha512-9lbtMUPc9IYCRMKV/B4k/no9J5OQQl/jJn9W2ce3NjJZSrOjuZs0CjJZgCESIaj6911s7nEJUvxKKmsbD3UC3Q==} + '@tiptap/extension-link@2.11.0': + resolution: {integrity: sha512-hvJSj0Ul4h8uxivtFtqaSy08s9G3smaW0He0ybYJ7rcJIsZ1zSrxQLGvIr/J8/yUq8VoVNspNR5cGUoyQaaw4A==} peerDependencies: '@tiptap/core': ^2.7.0 '@tiptap/pm': ^2.7.0 - '@tiptap/extension-list-item@2.10.4': - resolution: {integrity: sha512-8K3WUD5fPyw2poQKnJGGm7zlfeIbpld92+SRF4M9wkp95EzvgexTlodvxlrL3i8zKXcQQVyExWA8kCcGPFb9bA==} + '@tiptap/extension-list-item@2.11.0': + resolution: {integrity: sha512-Jikcg0fccpM13a3hAFLtguMcpVg4eMWI8NnC0aUULD9rFhvWZQYQYQuoK3fO6vQrAQpNhsV4oa0dfSq1btu9kg==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-ordered-list@2.10.4': - resolution: {integrity: sha512-NaeEu+qFG2O0emc8WlwOM7DKNKOaqHWuNkuKrrmQzslgL+UQSEGlGMo6NEJ5sLLckPBDpIa0MuRm30407JE+cg==} + '@tiptap/extension-ordered-list@2.11.0': + resolution: {integrity: sha512-i6pNsDHA2QvBAebwjAuvhHKwz+bZVJ929PCIJaN8mxg0ldiAmFbAsf+rwIIFHWogMp+5xEX2RBzux20usNVZ9w==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-paragraph@2.10.4': - resolution: {integrity: sha512-SRNVhT8OXqjpZtcyuOtofbtOpXXFrQrjqqCc/yXebda//2SfUTOvB16Lss77vQOWi6xr7TF1mZuowJgSTkcczw==} + '@tiptap/extension-paragraph@2.11.0': + resolution: {integrity: sha512-xLNC05An3SQq0bVHJtOTLa8As5r6NxDZFpK0NZqO2hTq/fAIRL/9VPeZ8E0tziXULwIvIPp+L0Taw3TvaUkRUg==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-strike@2.10.4': - resolution: {integrity: sha512-OibipsomFpOJWTPVX/z4Z53HgwDA93lE/loHGa+ONJfML1dO6Zd6UTwzaVO1/g8WOwRgwkYu/6JnhxLKRlP8Lg==} + '@tiptap/extension-strike@2.11.0': + resolution: {integrity: sha512-71i2IZT58kY2ohlhyO+ucyAioNNCkNkuPkrVERc9lXhmcCKOff5y6ekDHQHO2jNjnejkVE5ibyDO3Z7RUXjh1A==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-table-cell@2.10.4': - resolution: {integrity: sha512-vYwRYt3xPaAU4hxoz3OMGPQzcAxaxEVri6VSRMWg4BN3x4DwWevBTAk59Ho9nkJpaRuXO6c5pIxcwWCZM0Aw0w==} + '@tiptap/extension-table-cell@2.11.0': + resolution: {integrity: sha512-05lXXaGPWzVi/mVYRzsiLbaZ1VVU42buCkoTZrduvJsGEu6K+Cut2fqo7I29CJmJ0P/hDSyMEJDKqdKSP9xalA==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-table-header@2.10.4': - resolution: {integrity: sha512-NVi/KMBh9IAzpukjptCsH+gibZB3VxgCc+wuFk41QqI5ABnTPKWflnQ0wRo7IC6wC/tUi4YBahh20dL/wBJn3w==} + '@tiptap/extension-table-header@2.11.0': + resolution: {integrity: sha512-pOKz1E7VT9v37psA0lFJ0mcj2DAa/KNqNqO3TGOUnNOYaN+/6w01i6tA7rAinULsxaFTZx5x1BGLMqonc6n0fw==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-table-row@2.10.4': - resolution: {integrity: sha512-kpQQSZQNYHhencIk+lzs+zWtgg6nUXHIVQKZUg5dVT0VP2JNO7wPM6d8HgnscvxOkJNRVF/Q5dYe0Cb4tROIKg==} + '@tiptap/extension-table-row@2.11.0': + resolution: {integrity: sha512-j+o5Lr1JynSWcd/NN+4mNELvcVwj6CxcNT3J37oc5uy0a6CBhHlmp1d9eEbEnk95tMEsibunVV73wRqE150nEw==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-table@2.10.4': - resolution: {integrity: sha512-ak1RT8n0WQFNnVsZ9e6QFLWlRQP0IjT+Yp/PTsx5fSmqkiiwQKGs1ILCJWlBB3H0hV7N69aaOtK3h/35lmqoEg==} + '@tiptap/extension-table@2.11.0': + resolution: {integrity: sha512-RH9pw2L2eilFjQxEGaWdk7929rm4NLxCs/aXuFVY+zL3ZHzHovsMDM5SZiyk4pTnVpE2Bj8+NcDZ8r/zMcvYIA==} peerDependencies: '@tiptap/core': ^2.7.0 '@tiptap/pm': ^2.7.0 - '@tiptap/extension-task-item@2.10.4': - resolution: {integrity: sha512-ucKGXdHdHCBanIJTB/nhmQ3iIL6BcSVKr7mN5BGEu6sSLYROflX7lmnMPVIRcTKJz+FGJeR6AqPFVagZAXVkGQ==} + '@tiptap/extension-task-item@2.11.0': + resolution: {integrity: sha512-qu6VuRc8qF80Bwr82CItFcrKtC67LJkwpxESLEIi42zWZ5sXF/3DJEPPS/4Kk+nAc9UCBoEMFAULibPq7rRl/w==} peerDependencies: '@tiptap/core': ^2.7.0 '@tiptap/pm': ^2.7.0 - '@tiptap/extension-task-list@2.10.4': - resolution: {integrity: sha512-21bFlHlvGr5hsXUEug9p+BWPLqdziFS/4mGG6nUnrSDI1e4eEC86WZczsG+If6FEpjcCS9Eb2RHgqaA4VoJEqg==} + '@tiptap/extension-task-list@2.11.0': + resolution: {integrity: sha512-+dZRjeXLXxyliFt3J7uQADxfOwi6ntyepVM+ri1rnmIaqVZUHJbUFodOc0LivI+Z5iZZ10u3TId8gehqWJHD+w==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-text-align@2.10.4': - resolution: {integrity: sha512-rt2Hz3N081QAgkKKSMpyDZTKorBmXKpeHkYIw+ArVuvBYhi8x5wVyZgZ2SIMW9A5G4rx1M0czn7xNi+/P3NopQ==} + '@tiptap/extension-text-align@2.11.0': + resolution: {integrity: sha512-VRXBqO17po6ddqhoWLBa2aCX/tqHdzdKPLfjnBy1fF8hjQKbidzjMWhb4CMm31ApvJjKK/DTkM3EnyYS/XDhng==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-text-style@2.10.4': - resolution: {integrity: sha512-ibq7avkcwHyUSG53Hf+P31rrwsKVbbiqbWZM4kXC7M2X3iUwFrtvaa+SWzyWQfE1jl2cCrD1+rfSkj/alcOKGg==} + '@tiptap/extension-text-style@2.11.0': + resolution: {integrity: sha512-vuA16wMZ6J3fboL7FObwV2f5uN9Vg0WYmqU7971vxzJyaRj9VE1eeH8Kh5fq4RgwDzc13MZGvZZV4HcE1R8o8A==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-text@2.10.4': - resolution: {integrity: sha512-wPdVxCHrIS9S+8n08lgyyqRZPj9FBbyLlFt74/lV5yBC3LOorq1VKdjrTskmaj4jud7ImXoKDyBddAYTHdJ1xw==} + '@tiptap/extension-text@2.11.0': + resolution: {integrity: sha512-LcyrP+7ZEVx3YaKzjMAeujq+4xRt4mZ3ITGph2CQ4vOKFaMI8bzSR909q18t7Qyyvek0a9VydEU1NHSaq4G5jw==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/extension-underline@2.10.4': - resolution: {integrity: sha512-KhlCndQFMe/Gsz+3qkVn9z1utDy8y1igvdePijMjA5B8PTu0hPs2Q1d6szfLTBdtoFNkCokknxzXhSY0OFJEyQ==} + '@tiptap/extension-underline@2.11.0': + resolution: {integrity: sha512-DE1piq441y1+9Aj1pvvuq1dcc5B2HZ2d1SPtO4DTMjCxrhok12biTkMxxq0q1dzA5/BouLlUW6WTPpinhmrUWA==} peerDependencies: '@tiptap/core': ^2.7.0 - '@tiptap/pm@2.10.4': - resolution: {integrity: sha512-pZ4NEkRtYoDLe0spARvXZ1N3hNv/5u6vfPdPtEbmNpoOSjSNqDC1kVM+qJY0iaCYpxbxcv7cxn3kBumcFLQpJQ==} + '@tiptap/pm@2.11.0': + resolution: {integrity: sha512-4RU6bpODkMY+ZshzdRFcuUc5jWlMW82LWXR6UOsHK/X/Mav41ZFS0Cyf+hQM6gxxTB09YFIICmGpEpULb+/CuA==} - '@tiptap/react@2.10.4': - resolution: {integrity: sha512-JTeqDB+xgjo46QC9ILRXe2TcSfxKVRwhZ3vDvYoemN7giRk5a/WsCF1VQIT1fax+tCl6kfv3U1f4Mkx0DkbPkA==} + '@tiptap/react@2.11.0': + resolution: {integrity: sha512-AALzHbqNq/gerJpkbXmN2OXFmHAs2bQENH7rXbnH70bpxVdIfQVtvjK4dIb+cQQvAuTWZvhsISnTrFY2BesT3Q==} peerDependencies: '@tiptap/core': ^2.7.0 '@tiptap/pm': ^2.7.0 react: ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^17.0.0 || ^18.0.0 || ^19.0.0 - '@tiptap/starter-kit@2.10.4': - resolution: {integrity: sha512-tu/WCs9Mkr5Nt8c3/uC4VvAbQlVX0OY7ygcqdzHGUeG9zP3twdW7o5xM3kyDKR2++sbVzqu5Ll5qNU+1JZvPGQ==} + '@tiptap/starter-kit@2.11.0': + resolution: {integrity: sha512-lrYmkeaAFiuUjN5nGnCowdjponrsR7eRmeTf/15/5oZsNrMN7t/fvPb014AqhG/anNasa0ism4CKZns3D+4pKQ==} '@tootallnate/quickjs-emscripten@0.23.0': resolution: {integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==} - '@trpc/client@11.0.0-rc.678': - resolution: {integrity: sha512-Y3UawZReKGRDy0AnGlNRhqm8m0Rdp7BAvS4PylsO77Wx5Q775O6mruZGuW02IlFIFqmJCUM2/ykt1h8GaSndbw==} + '@trpc/client@11.0.0-rc.682': + resolution: {integrity: sha512-zfM6t4tkbQPm/FHK85jcJjJle7FJTj9U8t/ieDzIe3X6DNo66sg6KqQpjkeTJcaj5u2hga1lmv3rc4uob/7D0g==} peerDependencies: - '@trpc/server': 11.0.0-rc.678+29a2f0d18 + '@trpc/server': 11.0.0-rc.682+8650a22e8 typescript: '>=5.7.2' - '@trpc/next@11.0.0-rc.678': - resolution: {integrity: sha512-AudGQ3QlDFq/LAPAUpX5gm5+TsjXpYAtwpxAkrqqtAKAP4jFEkZtc3pZjtlg1Xs7nkHei3oR8w1qbc9u6pU9og==} + '@trpc/next@11.0.0-rc.682': + resolution: {integrity: sha512-3LhlwyZiVEMTBKfpxSbD00Ea/uuW9vfTmlFpKRbuU22BBkcW/QNtfcHWL5QtyDHnr8/SIvReTJQ+BfDnqNUSLA==} peerDependencies: '@tanstack/react-query': ^5.59.15 - '@trpc/client': 11.0.0-rc.678+29a2f0d18 - '@trpc/react-query': 11.0.0-rc.678+29a2f0d18 - '@trpc/server': 11.0.0-rc.678+29a2f0d18 + '@trpc/client': 11.0.0-rc.682+8650a22e8 + '@trpc/react-query': 11.0.0-rc.682+8650a22e8 + '@trpc/server': 11.0.0-rc.682+8650a22e8 next: '*' react: '>=16.8.0' react-dom: '>=16.8.0' @@ -3918,18 +3918,18 @@ packages: '@trpc/react-query': optional: true - '@trpc/react-query@11.0.0-rc.678': - resolution: {integrity: sha512-M9LXF5gXyyjq097Jsnu4lncMvIdCOb723ks977IZUFNQ2IOV12/1jz9GQR2NCBQSqZcg+nxiPMDYhfdlMRPiWg==} + '@trpc/react-query@11.0.0-rc.682': + resolution: {integrity: sha512-Ghuk7e7jGRvxOD32X/ImGZTqERZ3R03vaPVzfmdWnBeTyOeqBr0Tb8ylTVyCclqBHpTrRhdM3pWlaXR4M/LKDg==} peerDependencies: '@tanstack/react-query': ^5.62.8 - '@trpc/client': 11.0.0-rc.678+29a2f0d18 - '@trpc/server': 11.0.0-rc.678+29a2f0d18 + '@trpc/client': 11.0.0-rc.682+8650a22e8 + '@trpc/server': 11.0.0-rc.682+8650a22e8 react: '>=18.2.0' react-dom: '>=18.2.0' typescript: '>=5.7.2' - '@trpc/server@11.0.0-rc.678': - resolution: {integrity: sha512-q5OEUV4aBfHPoV6uQAlNdkxmq6IizLtnblVs91jAXey3Mxquool05nYxnk8xH4n159e0IOSXEJsQfSZtOYlA5Q==} + '@trpc/server@11.0.0-rc.682': + resolution: {integrity: sha512-y8FhLW/UJ8SOyHByvSQW7WvCnbvYioOYhviWD+sRvqkB9f0O8/sEBPJt1mBadWaO/0tygOghkeNC9o1wAsJ8cg==} peerDependencies: typescript: '>=5.7.2' @@ -6718,8 +6718,8 @@ packages: linkify-it@5.0.0: resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} - linkifyjs@4.1.3: - resolution: {integrity: sha512-auMesunaJ8yfkHvK4gfg1K0SaKX/6Wn9g2Aac/NwX+l5VdmFZzo/hdPGxEOETj+ryRa4/fiOPjeeKURSAJx1sg==} + linkifyjs@4.2.0: + resolution: {integrity: sha512-pCj3PrQyATaoTYKHrgWRF3SJwsm61udVh+vuls/Rl6SptiDhgE7ziUIudAedRY9QEfynmM7/RmLEfPUyw1HPCw==} load-json-file@4.0.0: resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==} @@ -10438,12 +10438,12 @@ snapshots: dependencies: react: 19.0.0 - '@mantine/tiptap@7.15.2(@mantine/core@7.15.2(@mantine/hooks@7.15.2(react@19.0.0))(@types/react@19.0.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.15.2(react@19.0.0))(@tiptap/extension-link@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4))(@tiptap/react@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@mantine/tiptap@7.15.2(@mantine/core@7.15.2(@mantine/hooks@7.15.2(react@19.0.0))(@types/react@19.0.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.15.2(react@19.0.0))(@tiptap/extension-link@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0))(@tiptap/react@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@mantine/core': 7.15.2(@mantine/hooks@7.15.2(react@19.0.0))(@types/react@19.0.2)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@mantine/hooks': 7.15.2(react@19.0.0) - '@tiptap/extension-link': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4) - '@tiptap/react': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@tiptap/extension-link': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0) + '@tiptap/react': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) @@ -11374,157 +11374,157 @@ snapshots: transitivePeerDependencies: - supports-color - '@tiptap/core@2.10.4(@tiptap/pm@2.10.4)': + '@tiptap/core@2.11.0(@tiptap/pm@2.11.0)': dependencies: - '@tiptap/pm': 2.10.4 + '@tiptap/pm': 2.11.0 - '@tiptap/extension-blockquote@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-blockquote@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-bold@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-bold@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-bubble-menu@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4)': + '@tiptap/extension-bubble-menu@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0)': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) - '@tiptap/pm': 2.10.4 + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) + '@tiptap/pm': 2.11.0 tippy.js: 6.3.7 - '@tiptap/extension-bullet-list@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-bullet-list@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-code-block@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4)': + '@tiptap/extension-code-block@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0)': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) - '@tiptap/pm': 2.10.4 + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) + '@tiptap/pm': 2.11.0 - '@tiptap/extension-code@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-code@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-color@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/extension-text-style@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)))': + '@tiptap/extension-color@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/extension-text-style@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) - '@tiptap/extension-text-style': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) + '@tiptap/extension-text-style': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) - '@tiptap/extension-document@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-document@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-dropcursor@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4)': + '@tiptap/extension-dropcursor@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0)': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) - '@tiptap/pm': 2.10.4 + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) + '@tiptap/pm': 2.11.0 - '@tiptap/extension-floating-menu@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4)': + '@tiptap/extension-floating-menu@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0)': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) - '@tiptap/pm': 2.10.4 + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) + '@tiptap/pm': 2.11.0 tippy.js: 6.3.7 - '@tiptap/extension-gapcursor@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4)': + '@tiptap/extension-gapcursor@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0)': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) - '@tiptap/pm': 2.10.4 + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) + '@tiptap/pm': 2.11.0 - '@tiptap/extension-hard-break@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-hard-break@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-heading@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-heading@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-highlight@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-highlight@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-history@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4)': + '@tiptap/extension-history@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0)': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) - '@tiptap/pm': 2.10.4 + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) + '@tiptap/pm': 2.11.0 - '@tiptap/extension-horizontal-rule@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4)': + '@tiptap/extension-horizontal-rule@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0)': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) - '@tiptap/pm': 2.10.4 + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) + '@tiptap/pm': 2.11.0 - '@tiptap/extension-image@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-image@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-italic@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-italic@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-link@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4)': + '@tiptap/extension-link@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0)': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) - '@tiptap/pm': 2.10.4 - linkifyjs: 4.1.3 + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) + '@tiptap/pm': 2.11.0 + linkifyjs: 4.2.0 - '@tiptap/extension-list-item@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-list-item@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-ordered-list@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-ordered-list@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-paragraph@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-paragraph@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-strike@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-strike@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-table-cell@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-table-cell@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-table-header@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-table-header@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-table-row@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-table-row@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-table@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4)': + '@tiptap/extension-table@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0)': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) - '@tiptap/pm': 2.10.4 + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) + '@tiptap/pm': 2.11.0 - '@tiptap/extension-task-item@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4)': + '@tiptap/extension-task-item@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0)': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) - '@tiptap/pm': 2.10.4 + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) + '@tiptap/pm': 2.11.0 - '@tiptap/extension-task-list@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-task-list@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-text-align@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-text-align@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-text-style@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-text-style@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-text@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-text@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/extension-underline@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))': + '@tiptap/extension-underline@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) - '@tiptap/pm@2.10.4': + '@tiptap/pm@2.11.0': dependencies: prosemirror-changeset: 2.2.1 prosemirror-collab: 1.3.1 @@ -11545,71 +11545,71 @@ snapshots: prosemirror-transform: 1.10.2 prosemirror-view: 1.37.0 - '@tiptap/react@2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@tiptap/react@2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) - '@tiptap/extension-bubble-menu': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4) - '@tiptap/extension-floating-menu': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4) - '@tiptap/pm': 2.10.4 + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) + '@tiptap/extension-bubble-menu': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0) + '@tiptap/extension-floating-menu': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0) + '@tiptap/pm': 2.11.0 '@types/use-sync-external-store': 0.0.6 fast-deep-equal: 3.1.3 react: 19.0.0 react-dom: 19.0.0(react@19.0.0) use-sync-external-store: 1.2.2(react@19.0.0) - '@tiptap/starter-kit@2.10.4': - dependencies: - '@tiptap/core': 2.10.4(@tiptap/pm@2.10.4) - '@tiptap/extension-blockquote': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) - '@tiptap/extension-bold': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) - '@tiptap/extension-bullet-list': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) - '@tiptap/extension-code': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) - '@tiptap/extension-code-block': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4) - '@tiptap/extension-document': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) - '@tiptap/extension-dropcursor': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4) - '@tiptap/extension-gapcursor': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4) - '@tiptap/extension-hard-break': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) - '@tiptap/extension-heading': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) - '@tiptap/extension-history': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4) - '@tiptap/extension-horizontal-rule': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4))(@tiptap/pm@2.10.4) - '@tiptap/extension-italic': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) - '@tiptap/extension-list-item': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) - '@tiptap/extension-ordered-list': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) - '@tiptap/extension-paragraph': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) - '@tiptap/extension-strike': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) - '@tiptap/extension-text': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) - '@tiptap/extension-text-style': 2.10.4(@tiptap/core@2.10.4(@tiptap/pm@2.10.4)) - '@tiptap/pm': 2.10.4 + '@tiptap/starter-kit@2.11.0': + dependencies: + '@tiptap/core': 2.11.0(@tiptap/pm@2.11.0) + '@tiptap/extension-blockquote': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) + '@tiptap/extension-bold': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) + '@tiptap/extension-bullet-list': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) + '@tiptap/extension-code': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) + '@tiptap/extension-code-block': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0) + '@tiptap/extension-document': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) + '@tiptap/extension-dropcursor': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0) + '@tiptap/extension-gapcursor': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0) + '@tiptap/extension-hard-break': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) + '@tiptap/extension-heading': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) + '@tiptap/extension-history': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0) + '@tiptap/extension-horizontal-rule': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0))(@tiptap/pm@2.11.0) + '@tiptap/extension-italic': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) + '@tiptap/extension-list-item': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) + '@tiptap/extension-ordered-list': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) + '@tiptap/extension-paragraph': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) + '@tiptap/extension-strike': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) + '@tiptap/extension-text': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) + '@tiptap/extension-text-style': 2.11.0(@tiptap/core@2.11.0(@tiptap/pm@2.11.0)) + '@tiptap/pm': 2.11.0 '@tootallnate/quickjs-emscripten@0.23.0': {} - '@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2)': + '@trpc/client@11.0.0-rc.682(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(typescript@5.7.2)': dependencies: - '@trpc/server': 11.0.0-rc.678(typescript@5.7.2) + '@trpc/server': 11.0.0-rc.682(typescript@5.7.2) typescript: 5.7.2 - '@trpc/next@11.0.0-rc.678(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2))(@trpc/react-query@11.0.0-rc.678(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2))(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(next@14.2.22(@babel/core@7.26.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(sass@1.83.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2)': + '@trpc/next@11.0.0-rc.682(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.682(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(typescript@5.7.2))(@trpc/react-query@11.0.0-rc.682(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.682(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2))(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(next@14.2.22(@babel/core@7.26.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(sass@1.83.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2)': dependencies: - '@trpc/client': 11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2) - '@trpc/server': 11.0.0-rc.678(typescript@5.7.2) + '@trpc/client': 11.0.0-rc.682(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(typescript@5.7.2) + '@trpc/server': 11.0.0-rc.682(typescript@5.7.2) next: 14.2.22(@babel/core@7.26.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(sass@1.83.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) typescript: 5.7.2 optionalDependencies: '@tanstack/react-query': 5.62.11(react@19.0.0) - '@trpc/react-query': 11.0.0-rc.678(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2) + '@trpc/react-query': 11.0.0-rc.682(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.682(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2) - '@trpc/react-query@11.0.0-rc.678(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2)': + '@trpc/react-query@11.0.0-rc.682(@tanstack/react-query@5.62.11(react@19.0.0))(@trpc/client@11.0.0-rc.682(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(typescript@5.7.2))(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.7.2)': dependencies: '@tanstack/react-query': 5.62.11(react@19.0.0) - '@trpc/client': 11.0.0-rc.678(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(typescript@5.7.2) - '@trpc/server': 11.0.0-rc.678(typescript@5.7.2) + '@trpc/client': 11.0.0-rc.682(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(typescript@5.7.2) + '@trpc/server': 11.0.0-rc.682(typescript@5.7.2) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) typescript: 5.7.2 - '@trpc/server@11.0.0-rc.678(typescript@5.7.2)': + '@trpc/server@11.0.0-rc.682(typescript@5.7.2)': dependencies: typescript: 5.7.2 @@ -14897,7 +14897,7 @@ snapshots: dependencies: uc.micro: 2.1.0 - linkifyjs@4.1.3: {} + linkifyjs@4.2.0: {} load-json-file@4.0.0: dependencies: @@ -17225,9 +17225,9 @@ snapshots: triple-beam@1.4.1: {} - trpc-to-openapi@2.1.1(@trpc/server@11.0.0-rc.678(typescript@5.7.2))(zod-openapi@2.19.0(zod@3.24.1))(zod@3.24.1): + trpc-to-openapi@2.1.1(@trpc/server@11.0.0-rc.682(typescript@5.7.2))(zod-openapi@2.19.0(zod@3.24.1))(zod@3.24.1): dependencies: - '@trpc/server': 11.0.0-rc.678(typescript@5.7.2) + '@trpc/server': 11.0.0-rc.682(typescript@5.7.2) co-body: 6.2.0 h3: 1.13.0 openapi3-ts: 4.4.0 From 598f0047eb13d6d0d6b68c9032a7a6648f4b6aa3 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Mon, 30 Dec 2024 17:33:38 +0000 Subject: [PATCH 17/25] fix(deps): update dependency typescript-eslint to ^8.19.0 (#1814) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 114 ++++++++++++++++++------------------ tooling/eslint/package.json | 2 +- 2 files changed, 58 insertions(+), 58 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c8df6099d..a1236e21b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1844,7 +1844,7 @@ importers: version: 2.3.3(eslint@9.17.0) eslint-plugin-import: specifier: ^2.31.0 - version: 2.31.0(@typescript-eslint/parser@8.18.2(eslint@9.17.0)(typescript@5.7.2))(eslint@9.17.0) + version: 2.31.0(@typescript-eslint/parser@8.19.0(eslint@9.17.0)(typescript@5.7.2))(eslint@9.17.0) eslint-plugin-jsx-a11y: specifier: ^6.10.2 version: 6.10.2(eslint@9.17.0) @@ -1855,8 +1855,8 @@ importers: specifier: ^5.1.0 version: 5.1.0(eslint@9.17.0) typescript-eslint: - specifier: ^8.18.2 - version: 8.18.2(eslint@9.17.0)(typescript@5.7.2) + specifier: ^8.19.0 + version: 8.19.0(eslint@9.17.0)(typescript@5.7.2) devDependencies: '@homarr/prettier-config': specifier: workspace:^0.1.0 @@ -4150,51 +4150,51 @@ packages: '@types/xml2js@0.4.14': resolution: {integrity: sha512-4YnrRemBShWRO2QjvUin8ESA41rH+9nQGLUGZV/1IDhi3SL9OhdpNC/MrulTWuptXKwhx/aDxE7toV0f/ypIXQ==} - '@typescript-eslint/eslint-plugin@8.18.2': - resolution: {integrity: sha512-adig4SzPLjeQ0Tm+jvsozSGiCliI2ajeURDGHjZ2llnA+A67HihCQ+a3amtPhUakd1GlwHxSRvzOZktbEvhPPg==} + '@typescript-eslint/eslint-plugin@8.19.0': + resolution: {integrity: sha512-NggSaEZCdSrFddbctrVjkVZvFC6KGfKfNK0CU7mNK/iKHGKbzT4Wmgm08dKpcZECBu9f5FypndoMyRHkdqfT1Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/parser@8.18.2': - resolution: {integrity: sha512-y7tcq4StgxQD4mDr9+Jb26dZ+HTZ/SkfqpXSiqeUXZHxOUyjWDKsmwKhJ0/tApR08DgOhrFAoAhyB80/p3ViuA==} + '@typescript-eslint/parser@8.19.0': + resolution: {integrity: sha512-6M8taKyOETY1TKHp0x8ndycipTVgmp4xtg5QpEZzXxDhNvvHOJi5rLRkLr8SK3jTgD5l4fTlvBiRdfsuWydxBw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/scope-manager@8.18.2': - resolution: {integrity: sha512-YJFSfbd0CJjy14r/EvWapYgV4R5CHzptssoag2M7y3Ra7XNta6GPAJPPP5KGB9j14viYXyrzRO5GkX7CRfo8/g==} + '@typescript-eslint/scope-manager@8.19.0': + resolution: {integrity: sha512-hkoJiKQS3GQ13TSMEiuNmSCvhz7ujyqD1x3ShbaETATHrck+9RaDdUbt+osXaUuns9OFwrDTTrjtwsU8gJyyRA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@8.18.2': - resolution: {integrity: sha512-AB/Wr1Lz31bzHfGm/jgbFR0VB0SML/hd2P1yxzKDM48YmP7vbyJNHRExUE/wZsQj2wUCvbWH8poNHFuxLqCTnA==} + '@typescript-eslint/type-utils@8.19.0': + resolution: {integrity: sha512-TZs0I0OSbd5Aza4qAMpp1cdCYVnER94IziudE3JU328YUHgWu9gwiwhag+fuLeJ2LkWLXI+F/182TbG+JaBdTg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/types@8.18.2': - resolution: {integrity: sha512-Z/zblEPp8cIvmEn6+tPDIHUbRu/0z5lqZ+NvolL5SvXWT5rQy7+Nch83M0++XzO0XrWRFWECgOAyE8bsJTl1GQ==} + '@typescript-eslint/types@8.19.0': + resolution: {integrity: sha512-8XQ4Ss7G9WX8oaYvD4OOLCjIQYgRQxO+qCiR2V2s2GxI9AUpo7riNwo6jDhKtTcaJjT8PY54j2Yb33kWtSJsmA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.18.2': - resolution: {integrity: sha512-WXAVt595HjpmlfH4crSdM/1bcsqh+1weFRWIa9XMTx/XHZ9TCKMcr725tLYqWOgzKdeDrqVHxFotrvWcEsk2Tg==} + '@typescript-eslint/typescript-estree@8.19.0': + resolution: {integrity: sha512-WW9PpDaLIFW9LCbucMSdYUuGeFUz1OkWYS/5fwZwTA+l2RwlWFdJvReQqMUMBw4yJWJOfqd7An9uwut2Oj8sLw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/utils@8.18.2': - resolution: {integrity: sha512-Cr4A0H7DtVIPkauj4sTSXVl+VBWewE9/o40KcF3TV9aqDEOWoXF3/+oRXNby3DYzZeCATvbdksYsGZzplwnK/Q==} + '@typescript-eslint/utils@8.19.0': + resolution: {integrity: sha512-PTBG+0oEMPH9jCZlfg07LCB2nYI0I317yyvXGfxnvGvw4SHIOuRnQ3kadyyXY6tGdChusIHIbM5zfIbp4M6tCg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/visitor-keys@8.18.2': - resolution: {integrity: sha512-zORcwn4C3trOWiCqFQP1x6G3xTRyZ1LYydnj51cRnJ6hxBlr/cKPckk+PKPUw/fXmvfKTcw7bwY3w9izgx5jZw==} + '@typescript-eslint/visitor-keys@8.19.0': + resolution: {integrity: sha512-mCFtBbFBJDCNCWUl5y6sZSCHXw1DEFEk3c/M3nRK2a4XUB8StGFtmcEMizdjKuBzB6e/smJAAWYug3VrdLMr1w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@umami/node@0.4.0': @@ -8962,8 +8962,8 @@ packages: types-ramda@0.30.1: resolution: {integrity: sha512-1HTsf5/QVRmLzcGfldPFvkVsAdi1db1BBKzi7iW3KBUlOICg/nKnFS+jGqDJS3YD8VsWbAh7JiHeBvbsw8RPxA==} - typescript-eslint@8.18.2: - resolution: {integrity: sha512-KuXezG6jHkvC3MvizeXgupZzaG5wjhU3yE8E7e6viOvAvD9xAWYp8/vy0WULTGe9DYDWcQu7aW03YIV3mSitrQ==} + typescript-eslint@8.19.0: + resolution: {integrity: sha512-Ni8sUkVWYK4KAcTtPjQ/UTiRk6jcsuDhPpxULapUDi8A/l8TSBk+t1GtJA1RsCzIJg0q6+J7bf35AwQigENWRQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -11883,14 +11883,14 @@ snapshots: dependencies: '@types/node': 22.10.2 - '@typescript-eslint/eslint-plugin@8.18.2(@typescript-eslint/parser@8.18.2(eslint@9.17.0)(typescript@5.7.2))(eslint@9.17.0)(typescript@5.7.2)': + '@typescript-eslint/eslint-plugin@8.19.0(@typescript-eslint/parser@8.19.0(eslint@9.17.0)(typescript@5.7.2))(eslint@9.17.0)(typescript@5.7.2)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.18.2(eslint@9.17.0)(typescript@5.7.2) - '@typescript-eslint/scope-manager': 8.18.2 - '@typescript-eslint/type-utils': 8.18.2(eslint@9.17.0)(typescript@5.7.2) - '@typescript-eslint/utils': 8.18.2(eslint@9.17.0)(typescript@5.7.2) - '@typescript-eslint/visitor-keys': 8.18.2 + '@typescript-eslint/parser': 8.19.0(eslint@9.17.0)(typescript@5.7.2) + '@typescript-eslint/scope-manager': 8.19.0 + '@typescript-eslint/type-utils': 8.19.0(eslint@9.17.0)(typescript@5.7.2) + '@typescript-eslint/utils': 8.19.0(eslint@9.17.0)(typescript@5.7.2) + '@typescript-eslint/visitor-keys': 8.19.0 eslint: 9.17.0 graphemer: 1.4.0 ignore: 5.3.2 @@ -11900,27 +11900,27 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.18.2(eslint@9.17.0)(typescript@5.7.2)': + '@typescript-eslint/parser@8.19.0(eslint@9.17.0)(typescript@5.7.2)': dependencies: - '@typescript-eslint/scope-manager': 8.18.2 - '@typescript-eslint/types': 8.18.2 - '@typescript-eslint/typescript-estree': 8.18.2(typescript@5.7.2) - '@typescript-eslint/visitor-keys': 8.18.2 + '@typescript-eslint/scope-manager': 8.19.0 + '@typescript-eslint/types': 8.19.0 + '@typescript-eslint/typescript-estree': 8.19.0(typescript@5.7.2) + '@typescript-eslint/visitor-keys': 8.19.0 debug: 4.4.0 eslint: 9.17.0 typescript: 5.7.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@8.18.2': + '@typescript-eslint/scope-manager@8.19.0': dependencies: - '@typescript-eslint/types': 8.18.2 - '@typescript-eslint/visitor-keys': 8.18.2 + '@typescript-eslint/types': 8.19.0 + '@typescript-eslint/visitor-keys': 8.19.0 - '@typescript-eslint/type-utils@8.18.2(eslint@9.17.0)(typescript@5.7.2)': + '@typescript-eslint/type-utils@8.19.0(eslint@9.17.0)(typescript@5.7.2)': dependencies: - '@typescript-eslint/typescript-estree': 8.18.2(typescript@5.7.2) - '@typescript-eslint/utils': 8.18.2(eslint@9.17.0)(typescript@5.7.2) + '@typescript-eslint/typescript-estree': 8.19.0(typescript@5.7.2) + '@typescript-eslint/utils': 8.19.0(eslint@9.17.0)(typescript@5.7.2) debug: 4.4.0 eslint: 9.17.0 ts-api-utils: 1.3.0(typescript@5.7.2) @@ -11928,12 +11928,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/types@8.18.2': {} + '@typescript-eslint/types@8.19.0': {} - '@typescript-eslint/typescript-estree@8.18.2(typescript@5.7.2)': + '@typescript-eslint/typescript-estree@8.19.0(typescript@5.7.2)': dependencies: - '@typescript-eslint/types': 8.18.2 - '@typescript-eslint/visitor-keys': 8.18.2 + '@typescript-eslint/types': 8.19.0 + '@typescript-eslint/visitor-keys': 8.19.0 debug: 4.4.0 fast-glob: 3.3.2 is-glob: 4.0.3 @@ -11944,20 +11944,20 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.18.2(eslint@9.17.0)(typescript@5.7.2)': + '@typescript-eslint/utils@8.19.0(eslint@9.17.0)(typescript@5.7.2)': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@9.17.0) - '@typescript-eslint/scope-manager': 8.18.2 - '@typescript-eslint/types': 8.18.2 - '@typescript-eslint/typescript-estree': 8.18.2(typescript@5.7.2) + '@typescript-eslint/scope-manager': 8.19.0 + '@typescript-eslint/types': 8.19.0 + '@typescript-eslint/typescript-estree': 8.19.0(typescript@5.7.2) eslint: 9.17.0 typescript: 5.7.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/visitor-keys@8.18.2': + '@typescript-eslint/visitor-keys@8.19.0': dependencies: - '@typescript-eslint/types': 8.18.2 + '@typescript-eslint/types': 8.19.0 eslint-visitor-keys: 4.2.0 '@umami/node@0.4.0': {} @@ -13607,17 +13607,17 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@8.18.2(eslint@9.17.0)(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint@9.17.0): + eslint-module-utils@2.12.0(@typescript-eslint/parser@8.19.0(eslint@9.17.0)(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint@9.17.0): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 8.18.2(eslint@9.17.0)(typescript@5.7.2) + '@typescript-eslint/parser': 8.19.0(eslint@9.17.0)(typescript@5.7.2) eslint: 9.17.0 eslint-import-resolver-node: 0.3.9 transitivePeerDependencies: - supports-color - eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.18.2(eslint@9.17.0)(typescript@5.7.2))(eslint@9.17.0): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.19.0(eslint@9.17.0)(typescript@5.7.2))(eslint@9.17.0): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 @@ -13628,7 +13628,7 @@ snapshots: doctrine: 2.1.0 eslint: 9.17.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.18.2(eslint@9.17.0)(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint@9.17.0) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.19.0(eslint@9.17.0)(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint@9.17.0) hasown: 2.0.2 is-core-module: 2.15.1 is-glob: 4.0.3 @@ -13640,7 +13640,7 @@ snapshots: string.prototype.trimend: 1.0.8 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 8.18.2(eslint@9.17.0)(typescript@5.7.2) + '@typescript-eslint/parser': 8.19.0(eslint@9.17.0)(typescript@5.7.2) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack @@ -17413,11 +17413,11 @@ snapshots: dependencies: ts-toolbelt: 9.6.0 - typescript-eslint@8.18.2(eslint@9.17.0)(typescript@5.7.2): + typescript-eslint@8.19.0(eslint@9.17.0)(typescript@5.7.2): dependencies: - '@typescript-eslint/eslint-plugin': 8.18.2(@typescript-eslint/parser@8.18.2(eslint@9.17.0)(typescript@5.7.2))(eslint@9.17.0)(typescript@5.7.2) - '@typescript-eslint/parser': 8.18.2(eslint@9.17.0)(typescript@5.7.2) - '@typescript-eslint/utils': 8.18.2(eslint@9.17.0)(typescript@5.7.2) + '@typescript-eslint/eslint-plugin': 8.19.0(@typescript-eslint/parser@8.19.0(eslint@9.17.0)(typescript@5.7.2))(eslint@9.17.0)(typescript@5.7.2) + '@typescript-eslint/parser': 8.19.0(eslint@9.17.0)(typescript@5.7.2) + '@typescript-eslint/utils': 8.19.0(eslint@9.17.0)(typescript@5.7.2) eslint: 9.17.0 typescript: 5.7.2 transitivePeerDependencies: diff --git a/tooling/eslint/package.json b/tooling/eslint/package.json index a293736b3..cc04a35c2 100644 --- a/tooling/eslint/package.json +++ b/tooling/eslint/package.json @@ -24,7 +24,7 @@ "eslint-plugin-jsx-a11y": "^6.10.2", "eslint-plugin-react": "^7.37.3", "eslint-plugin-react-hooks": "^5.1.0", - "typescript-eslint": "^8.18.2" + "typescript-eslint": "^8.19.0" }, "devDependencies": { "@homarr/prettier-config": "workspace:^0.1.0", From 63786eed06074299467feed6e12615812ff576af Mon Sep 17 00:00:00 2001 From: Thomas Camlong Date: Tue, 31 Dec 2024 05:44:23 +0900 Subject: [PATCH 18/25] chore(lang): updated translations from crowdin (#1803) * New translations en.json (Chinese Simplified) * New translations en.json (Turkish) * New translations en.json (Turkish) * New translations en.json (Turkish) * New translations en.json (Romanian) * New translations en.json (French) * New translations en.json (Spanish) * New translations en.json (Czech) * New translations en.json (Danish) * New translations en.json (German) * New translations en.json (Greek) * New translations en.json (Hebrew) * New translations en.json (Hungarian) * New translations en.json (Italian) * New translations en.json (Japanese) * New translations en.json (Korean) * New translations en.json (Lithuanian) * New translations en.json (Dutch) * New translations en.json (Norwegian) * New translations en.json (Polish) * New translations en.json (Russian) * New translations en.json (Slovak) * New translations en.json (Slovenian) * New translations en.json (Swedish) * New translations en.json (Turkish) * New translations en.json (Ukrainian) * New translations en.json (Chinese Simplified) * New translations en.json (Chinese Traditional) * New translations en.json (Vietnamese) * New translations en.json (Portuguese, Brazilian) * New translations en.json (Croatian) * New translations en.json (Estonian) * New translations en.json (Latvian) * New translations en.json (Cree) * New translations en.json (Hebrew) * New translations en.json (Hebrew) --------- Co-authored-by: Meier Lukas --- packages/translation/src/lang/cn.json | 28 +- packages/translation/src/lang/cr.json | 7 +- packages/translation/src/lang/cs.json | 30 +- packages/translation/src/lang/da.json | 90 +- packages/translation/src/lang/de.json | 4 +- packages/translation/src/lang/el.json | 22 +- packages/translation/src/lang/es.json | 52 +- packages/translation/src/lang/fr.json | 408 +++---- packages/translation/src/lang/he.json | 104 +- packages/translation/src/lang/hr.json | 14 +- packages/translation/src/lang/hu.json | 20 +- packages/translation/src/lang/it.json | 414 +++---- packages/translation/src/lang/ja.json | 24 +- packages/translation/src/lang/ko.json | 20 +- packages/translation/src/lang/lt.json | 18 +- packages/translation/src/lang/lv.json | 26 +- packages/translation/src/lang/nl.json | 104 +- packages/translation/src/lang/no.json | 32 +- packages/translation/src/lang/pl.json | 26 +- packages/translation/src/lang/pt.json | 48 +- packages/translation/src/lang/ro.json | 48 +- packages/translation/src/lang/ru.json | 1476 ++++++++++++------------- packages/translation/src/lang/sk.json | 2 +- packages/translation/src/lang/sl.json | 20 +- packages/translation/src/lang/sv.json | 44 +- packages/translation/src/lang/tr.json | 12 +- packages/translation/src/lang/tw.json | 7 +- packages/translation/src/lang/uk.json | 12 +- packages/translation/src/lang/vi.json | 14 +- 29 files changed, 1568 insertions(+), 1558 deletions(-) diff --git a/packages/translation/src/lang/cn.json b/packages/translation/src/lang/cn.json index 453fa6021..2674d0e8a 100644 --- a/packages/translation/src/lang/cn.json +++ b/packages/translation/src/lang/cn.json @@ -546,7 +546,7 @@ "label": "描述" }, "url": { - "label": "Url" + "label": "网址" } }, "action": { @@ -569,7 +569,7 @@ "title": "新的组件 {name}", "notification": { "success": { - "title": "创建成功", + "title": "", "message": "组件已成功创建" }, "error": { @@ -582,7 +582,7 @@ "title": "编辑组件 {name}", "notification": { "success": { - "title": "成功应用更改", + "title": "更改应用成功", "message": "组件已成功保存" }, "error": { @@ -611,7 +611,7 @@ "label": "名称" }, "url": { - "label": "Url" + "label": "网址" } }, "action": { @@ -622,11 +622,11 @@ "create": "测试连接并创建", "edit": "测试连接并保存" }, - "alertNotice": "成功建立连接后保存按钮将启用", + "alertNotice": "成功建立连接后,“保存”按钮将启用", "notification": { "success": { "title": "连接成功", - "message": "" + "message": "连接已成功建立" }, "invalidUrl": { "title": "无效链接", @@ -634,11 +634,11 @@ }, "secretNotDefined": { "title": "缺少凭证", - "message": "并非所有凭证都已提供" + "message": "未提供所有凭证" }, "invalidCredentials": { "title": "凭证无效", - "message": "" + "message": "凭证无效" }, "commonError": { "title": "连接失败", @@ -650,15 +650,15 @@ }, "unauthorized": { "title": "未授权", - "message": "" + "message": "可能是凭证错误" }, "forbidden": { - "title": "", + "title": "禁止访问", "message": "可能缺少权限" }, "notFound": { "title": "未找到", - "message": "" + "message": "可能是错误的 URL 或路径" }, "internalServerError": { "title": "", @@ -1422,7 +1422,7 @@ "description": "" }, "app": { - "noData": "", + "noData": "未找到应用", "description": "" }, "error": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "用户", + "name": "名称", "id": "" } }, diff --git a/packages/translation/src/lang/cr.json b/packages/translation/src/lang/cr.json index 94b6f98d4..562a7f558 100644 --- a/packages/translation/src/lang/cr.json +++ b/packages/translation/src/lang/cr.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "crwdns5810:0crwdne5810:0", "description": "crwdns5812:0crwdne5812:0", - "option": {} + "option": {}, + "items": { + "user": "crwdns7010:0crwdne7010:0", + "name": "crwdns7012:0crwdne7012:0", + "id": "crwdns7014:0crwdne7014:0" + } }, "downloads": { "name": "crwdns5814:0crwdne5814:0", diff --git a/packages/translation/src/lang/cs.json b/packages/translation/src/lang/cs.json index 03757122d..84893d402 100644 --- a/packages/translation/src/lang/cs.json +++ b/packages/translation/src/lang/cs.json @@ -27,7 +27,7 @@ "description": "Konfigurovat chování importu" }, "boardSelection": { - "title": "Nalezeno {count} ploch", + "title": "", "description": "Vyberte všechny plochy s velikostmi, které chcete importovat", "action": { "selectAll": "Vybrat vše", @@ -38,17 +38,17 @@ "title": "Přehled importu", "description": "", "action": { - "import": "Potvrdit import a pokračovat" + "import": "" }, "entities": { "apps": "Aplikace", "boards": "Plochy", - "integrations": "Integrace", + "integrations": "", "credentialUsers": "" } }, "tokenModal": { - "title": "Zadejte token pro import", + "title": "", "field": { "token": { "label": "Token", @@ -57,14 +57,14 @@ }, "notification": { "error": { - "title": "Neplatný token", - "message": "Token, který jste zadali je neplatný" + "title": "", + "message": "" } } } }, "user": { - "title": "Správce", + "title": "", "subtitle": "", "notification": { "success": { @@ -1460,7 +1460,7 @@ "option": {}, "items": { "user": "Uživatel", - "name": "Jméno", + "name": "Název", "id": "Id" } }, @@ -2047,9 +2047,9 @@ "tools": { "label": "Nástroje", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Vytvořil/a" @@ -2213,7 +2213,7 @@ "label": "Datum konce platnosti" }, "token": { - "label": "" + "label": "Token" } } } @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "" } } @@ -2607,7 +2607,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 03b0b25bd..35a4fa844 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": "" } }, @@ -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,7 +1026,7 @@ "label": "" }, "layout": { - "label": "", + "label": "Layout", "option": { "row": { "label": "Horisontal" @@ -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", @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Bruger", + "name": "Navn", "id": "" } }, @@ -1516,7 +1516,7 @@ "detailsTitle": "" }, "downSpeed": { - "columnTitle": "", + "columnTitle": "Down", "detailsTitle": "Download hastighed" }, "index": { @@ -1527,7 +1527,7 @@ "columnTitle": "" }, "integration": { - "columnTitle": "" + "columnTitle": "Integration" }, "name": { "columnTitle": "" @@ -1565,7 +1565,7 @@ "detailsTitle": "" }, "upSpeed": { - "columnTitle": "", + "columnTitle": "Up", "detailsTitle": "" } }, @@ -1640,7 +1640,7 @@ "available": "", "tv": "TV-anmodninger", "movie": "Film anmodninger", - "total": "" + "total": "Total" }, "users": { "main": "Topbrugere", @@ -1690,7 +1690,7 @@ "empty": "Tom", "table": { "file": "Fil", - "eta": "", + "eta": "ETA", "progress": "Fremskridt", "transcode": "Transkod", "healthCheck": "" @@ -1771,7 +1771,7 @@ "invalidError": "" }, "apps": { - "label": "", + "label": "Apps", "avoidDuplicates": { "label": "", "description": "" @@ -1912,7 +1912,7 @@ "unrecognizedLink": "" }, "layout": { - "title": "" + "title": "Layout" }, "background": { "title": "Baggrund" @@ -2031,8 +2031,8 @@ "navbar": { "items": { "home": "Hjem", - "boards": "", - "apps": "", + "boards": "Boards", + "apps": "Apps", "integrations": "", "searchEngies": "", "medias": "", @@ -2047,9 +2047,9 @@ "tools": { "label": "Værktøjer", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2069,15 +2069,15 @@ "page": { "home": { "statistic": { - "board": "", + "board": "Boards", "user": "Brugere", "invite": "Invitationer", "integration": "", - "app": "", + "app": "Apps", "group": "" }, "statisticLabel": { - "boards": "", + "boards": "Boards", "resources": "", "authentication": "", "authorization": "" @@ -2144,7 +2144,7 @@ "title": "Sikkerhed" }, "board": { - "title": "" + "title": "Boards" } }, "list": { @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Skaber" @@ -2213,7 +2213,7 @@ "label": "Udløbsdato" }, "token": { - "label": "" + "label": "Token" } } } @@ -2291,7 +2291,7 @@ } }, "board": { - "title": "", + "title": "Boards", "homeBoard": { "label": "", "description": "" @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "" } } @@ -2447,7 +2447,7 @@ } }, "containerImage": { - "label": "" + "label": "Image" }, "ports": { "label": "Porte" @@ -2455,7 +2455,7 @@ }, "action": { "start": { - "label": "", + "label": "Start", "notification": { "success": { "title": "", @@ -2468,7 +2468,7 @@ } }, "stop": { - "label": "", + "label": "Stop", "notification": { "success": { "title": "", @@ -2557,7 +2557,7 @@ "manage": { "label": "Administrer", "boards": { - "label": "" + "label": "Boards" }, "integrations": { "label": "", @@ -2581,7 +2581,7 @@ "label": "" }, "apps": { - "label": "", + "label": "Apps", "new": { "label": "" }, @@ -2596,7 +2596,7 @@ }, "general": "Generelt", "security": "Sikkerhed", - "board": "", + "board": "Boards", "groups": { "label": "" }, @@ -2607,7 +2607,7 @@ "tools": { "label": "Værktøjer", "docker": { - "label": "" + "label": "Docker" }, "logs": { "label": "" @@ -2632,7 +2632,7 @@ "help": "", "group": { "app": { - "title": "", + "title": "Apps", "children": { "action": { "open": { @@ -2648,7 +2648,7 @@ } }, "board": { - "title": "", + "title": "Boards", "children": { "action": { "open": { @@ -2754,7 +2754,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 3cb3449f6..8f472497e 100644 --- a/packages/translation/src/lang/de.json +++ b/packages/translation/src/lang/de.json @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Benutzer", + "name": "Name", "id": "" } }, diff --git a/packages/translation/src/lang/el.json b/packages/translation/src/lang/el.json index 5f0727cb0..bb9059b88 100644 --- a/packages/translation/src/lang/el.json +++ b/packages/translation/src/lang/el.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "", + "label": "Token", "description": "" } }, @@ -124,7 +124,7 @@ }, "field": { "email": { - "label": "", + "label": "E-Mail", "verified": "" }, "username": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Χρήστης", + "name": "Όνομα", "id": "" } }, @@ -1683,7 +1683,7 @@ "savedSpace": "", "healthChecks": "", "videoCodecs": "Κωδικοποιητές", - "videoContainers": "", + "videoContainers": "Containers", "videoResolutions": "Αναλύσεις" }, "workers": { @@ -2047,9 +2047,9 @@ "tools": { "label": "Εργαλεία", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2213,7 +2213,7 @@ "label": "Ημερομηνία λήξης" }, "token": { - "label": "" + "label": "Token" } } } @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2424,7 +2424,7 @@ } }, "docker": { - "title": "", + "title": "Containers", "table": { "updated": "", "search": "", @@ -2607,7 +2607,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 239d12d6d..9112fbff2 100644 --- a/packages/translation/src/lang/es.json +++ b/packages/translation/src/lang/es.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "", + "label": "Token", "description": "" } }, @@ -767,7 +767,7 @@ }, "common": { "beta": "", - "error": "", + "error": "Error", "action": { "add": "Añadir", "apply": "Aplicar", @@ -1029,10 +1029,10 @@ "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": "" @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "", + "name": "iFrame", "description": "Incrusta cualquier contenido de Internet. Algunos sitios web pueden restringir el acceso.", "option": { "embedUrl": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Usuario", + "name": "Nombre", "id": "" } }, @@ -1537,7 +1537,7 @@ "detailsTitle": "" }, "ratio": { - "columnTitle": "", + "columnTitle": "Ratio", "detailsTitle": "" }, "received": { @@ -1640,7 +1640,7 @@ "available": "", "tv": "Solicitudes de TV", "movie": "Solicitudes de películas", - "total": "" + "total": "Total" }, "users": { "main": "Mejores usuarios", @@ -1908,7 +1908,7 @@ "title": "", "section": { "general": { - "title": "", + "title": "General", "unrecognizedLink": "" }, "layout": { @@ -2047,9 +2047,9 @@ "tools": { "label": "Herramientas", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2132,7 +2132,7 @@ "fieldsDisabledExternalProvider": "", "setting": { "general": { - "title": "", + "title": "General", "item": { "language": "", "board": "", @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Creador" @@ -2213,7 +2213,7 @@ "label": "Fecha de caducidad" }, "token": { - "label": "" + "label": "Token" } } } @@ -2222,7 +2222,7 @@ "back": "", "setting": { "general": { - "title": "", + "title": "General", "owner": "Propietario", "ownerOfGroup": "", "ownerOfGroupDeleted": "" @@ -2321,7 +2321,7 @@ "status": { "idle": "", "running": "En ejecución", - "error": "" + "error": "Error" }, "job": { "iconsUpdater": { @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "" } } @@ -2594,7 +2594,7 @@ "create": { "label": "Crear" }, - "general": "", + "general": "General", "security": "Seguridad", "board": "Tableros", "groups": { @@ -2607,7 +2607,7 @@ "tools": { "label": "Herramientas", "docker": { - "label": "" + "label": "Docker" }, "logs": { "label": "" @@ -2754,7 +2754,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 61d7b9767..58903da7d 100644 --- a/packages/translation/src/lang/fr.json +++ b/packages/translation/src/lang/fr.json @@ -2,130 +2,130 @@ "init": { "step": { "start": { - "title": "Bienvenue dans Homarr", - "subtitle": "Commençons par configurer votre instance Homarr.", - "description": "Pour commencer, veuillez selectionner comment vous souhaitez configurer votre instance Homarr.", + "title": "", + "subtitle": "", + "description": "", "action": { - "scratch": "Partir de zéro", - "importOldmarr": "Importer à partir d'Homarr avant la 1.0" + "scratch": "", + "importOldmarr": "" } }, "import": { - "title": "Importer des données", - "subtitle": "Vous pouvez importer des données depuis une instance Homarr existante.", + "title": "", + "subtitle": "", "dropzone": { - "title": "Déposez le fichier zip ici ou cliquez pour naviguer", - "description": "Le zip téléchargé sera traité et vous pourrez sélectionner ce que vous voulez importer" + "title": "", + "description": "" }, "fileInfo": { "action": { - "change": "Changer le fichier" + "change": "" } }, "importSettings": { - "title": "Importer des paramètres", - "description": "Configurer le comportement d'importation" + "title": "", + "description": "" }, "boardSelection": { - "title": "{count} tableaux trouvés", - "description": "Choisissez tous les tableaux avec la taille que vous souhaitez importer", + "title": "", + "description": "", "action": { - "selectAll": "Tout sélectionner", - "unselectAll": "Tout désélectionner" + "selectAll": "", + "unselectAll": "" } }, "summary": { - "title": "Résumé de l'importation", - "description": "Dans le résumé ci-dessous vous pouvez voir ce qui va être importé", + "title": "", + "description": "", "action": { - "import": "Confirmer l'importation et continuer" + "import": "" }, "entities": { "apps": "Applications", "boards": "Tableaux de bord", - "integrations": "Intégrations", + "integrations": "", "credentialUsers": "" } }, "tokenModal": { - "title": "Saisir le jeton d'importation", + "title": "", "field": { "token": { "label": "Jeton", - "description": "Entrez le jeton d'importation de votre instance précédente" + "description": "" } }, "notification": { "error": { - "title": "Jeton non valide", - "message": "Le jeton que vous avez saisi est invalide" + "title": "", + "message": "" } } } }, "user": { - "title": "Administrateur", - "subtitle": "Spécifiez les informations d'identification pour votre compte d'administrateur.", + "title": "", + "subtitle": "", "notification": { "success": { - "title": "Utilisateur créé", - "message": "L’utilisateur a été créé avec succès" + "title": "", + "message": "" }, "error": { - "title": "La création de l'utilisateur a échoué" + "title": "" } } }, "group": { - "title": "Groupe externe", + "title": "", "subtitle": "", "form": { "name": { - "label": "Nom du groupe", + "label": "", "description": "" } } }, "settings": { "title": "Paramètres", - "subtitle": "Configurer les paramètres du serveur." + "subtitle": "" }, "finish": { - "title": "Terminer la configuration", - "subtitle": "Vous êtes prêt !", - "description": "Vous avez terminé avec succès le processus d'installation. Vous pouvez maintenant commencer à utiliser Homarr. Sélectionnez votre prochaine action :", + "title": "", + "subtitle": "", + "description": "", "action": { "goToBoard": "", "createBoard": "", - "inviteUser": "Inviter d'autres utilisateurs", - "docs": "Lire la documentation" + "inviteUser": "", + "docs": "" } } }, - "backToStart": "Retour au début" + "backToStart": "" }, "user": { "title": "Utilisateurs", "name": "Utilisateur", "page": { "login": { - "title": "Connectez-vous à votre compte", - "subtitle": "Bon retour parmi nous ! Veuillez entrer vos identifiants" + "title": "", + "subtitle": "" }, "invite": { - "title": "Rejoindre Homarr", - "subtitle": "Bienvenue sur Homarr! Veuillez créer votre compte", - "description": "Vous avez été invité par {username}" + "title": "", + "subtitle": "", + "description": "" }, "init": { - "title": "Nouvelle installation Homarr", - "subtitle": "Veuillez créer l'utilisateur administrateur initial" + "title": "", + "subtitle": "" } }, "field": { "email": { "label": "Courriel", - "verified": "Vérifié" + "verified": "" }, "username": { "label": "Nom d'utilisateur" @@ -133,18 +133,18 @@ "password": { "label": "Mot de passe", "requirement": { - "length": "Contient au moins 8 caractères", + "length": "", "lowercase": "Inclut une lettre minuscule", "uppercase": "Inclut une lettre majuscule", "number": "Inclut un nombre", - "special": "Contient un symbole spécial" + "special": "" } }, "passwordConfirm": { "label": "Confirmation du mot de passe" }, "previousPassword": { - "label": "Ancien mot de passe" + "label": "" }, "homeBoard": { "label": "" @@ -154,25 +154,25 @@ } }, "error": { - "usernameTaken": "Nom d'utilisateur déjà utilisé" + "usernameTaken": "" }, "action": { "login": { "label": "Connexion", - "labelWith": "Se connecter avec {provider}", + "labelWith": "", "notification": { "success": { - "title": "Connexion réussie", - "message": "Vous êtes maintenant connecté" + "title": "", + "message": "" }, "error": { - "title": "Échec de la connexion", + "title": "", "message": "" } }, "forgotPassword": { - "label": "Mot de passe oublié?", - "description": "Un administrateur peut utiliser la commande suivante pour réinitialiser votre mot de passe :" + "label": "", + "description": "" } }, "register": { @@ -184,19 +184,19 @@ }, "error": { "title": "", - "message": "Votre compte n'a pas pu être créé" + "message": "" } } }, "create": "Créer un utilisateur", "changePassword": { - "label": "Changer le mot de passe", + "label": "", "notification": { "success": { - "message": "Mot de passe modifié avec succès" + "message": "" }, "error": { - "message": "Modification du mot de passe impossible" + "message": "" } } }, @@ -232,29 +232,29 @@ }, "manageAvatar": { "changeImage": { - "label": "Modifier l’image", + "label": "", "notification": { "success": { - "message": "L'image a été modifiée avec succès" + "message": "" }, "error": { - "message": "Impossible de modifier l'image" + "message": "" }, "toLarge": { - "title": "L'image est trop volumineuse", - "message": "La taille maximale de l'image est {size}" + "title": "", + "message": "" } } }, "removeImage": { - "label": "Retirer l'image", - "confirm": "Êtes-vous sûr de vouloir retirer cette image ?", + "label": "", + "confirm": "", "notification": { "success": { - "message": "Image retirée avec succès" + "message": "" }, "error": { - "message": "Impossible de retirer l'image" + "message": "" } } } @@ -262,42 +262,42 @@ "editProfile": { "notification": { "success": { - "message": "Profil mis à jour avec succès" + "message": "" }, "error": { - "message": "Impossible de mettre à jour le profil" + "message": "" } } }, "delete": { - "label": "Supprimer définitivement l'utilisateur", - "description": "Supprime cet utilisateur ainsi que ses préférences. Ne supprimera aucun tableau. L'utilisateur ne sera pas averti.", - "confirm": "Êtes-vous sûr de vouloir supprimer l'utilisateur {username} ainsi que ses préférences ?" + "label": "", + "description": "", + "confirm": "" }, "select": { - "label": "Sélectionner l'utilisateur", - "notFound": "Aucun utilisateur trouvé" + "label": "", + "notFound": "" }, "transfer": { - "label": "Choisir un nouveau propriétaire" + "label": "" } } }, "group": { - "title": "Groupes", - "name": "Groupe", - "search": "Trouver un groupe", + "title": "", + "name": "", + "search": "", "field": { "name": "Nom", - "members": "Membres" + "members": "" }, "permission": { "admin": { "title": "Admin", "item": { "admin": { - "label": "Administrateur", - "description": "Les membres avec cette permission ont un accès complet à toutes les fonctionnalités et paramètres" + "label": "", + "description": "" } } }, @@ -305,15 +305,15 @@ "title": "Applications", "item": { "create": { - "label": "Créer une app", - "description": "Autoriser les membres à créer des apps" + "label": "", + "description": "" }, "use-all": { - "label": "Utiliser toutes les apps", + "label": "", "description": "" }, "modify-all": { - "label": "Modifier toutes les apps", + "label": "", "description": "" }, "full-all": { @@ -344,11 +344,11 @@ } }, "integration": { - "title": "Intégrations", + "title": "", "item": { "create": { - "label": "Créer des intégrations", - "description": "Autoriser les membres à créer des intégrations" + "label": "", + "description": "" }, "use-all": { "label": "", @@ -365,37 +365,37 @@ } }, "media": { - "title": "Médias", + "title": "", "item": { "upload": { - "label": "Téléverser des médias", - "description": "Autoriser les membres à téléverser des médias" + "label": "", + "description": "" }, "view-all": { - "label": "Voir tous les médias", - "description": "Autoriser les membres à voir tous les médias" + "label": "", + "description": "" }, "full-all": { - "label": "Accès complet aux médias", - "description": "Autoriser les membres à gérer et supprimer les médias" + "label": "", + "description": "" } } }, "other": { - "title": "Autre", + "title": "", "item": { "view-logs": { - "label": "Voir les logs", - "description": "Autoriser les membres à voir les logs" + "label": "", + "description": "" } } }, "search-engine": { - "title": "Moteurs de recherche", + "title": "", "item": { "create": { - "label": "Créer des moteurs de recherche", - "description": "Autoriser les membres à créer des moteurs de recherche" + "label": "", + "description": "" }, "modify-all": { "label": "", @@ -413,62 +413,62 @@ "external": "" }, "reservedNotice": { - "message": "Ce groupe est réservé pour l'utilisation du système et restreint certaines actions. " + "message": "" }, "action": { "create": { - "label": "Nouveau groupe", + "label": "", "notification": { "success": { - "message": "Le groupe a été créé avec succès" + "message": "" }, "error": { - "message": "Le groupe n'a pas pu être créé" + "message": "" } } }, "transfer": { - "label": "Changer le propriétaire", - "description": "Transférer la propriété de ce groupe à un autre utilisateur.", - "confirm": "Êtes-vous sûr de vouloir transférer la propriété du groupe {name} à {username}?", + "label": "", + "description": "", + "confirm": "", "notification": { "success": { - "message": "Le groupe {group} a été transféré avec succès à {user}" + "message": "" }, "error": { - "message": "Impossible de transférer la propriété" + "message": "" } } }, "addMember": { - "label": "Ajouter un membre" + "label": "" }, "removeMember": { - "label": "Retirer un membre", - "confirm": "Êtes-vous sûr de vouloir retirer {user} de ce groupe ?" + "label": "", + "confirm": "" }, "delete": { - "label": "Supprimer le groupe", - "description": "Une fois que vous supprimez un groupe, il n'y a pas de retour en arrière possible. Soyez certain.", - "confirm": "Êtes-vous sûr de vouloir supprimer le groupe {name}?", + "label": "", + "description": "", + "confirm": "", "notification": { "success": { - "message": "Groupe {name} supprimé avec succès" + "message": "" }, "error": { - "message": "Impossible de supprimer le groupe {name}" + "message": "" } } }, "changePermissions": { "notification": { "success": { - "title": "Permissions sauvegardées", - "message": "Les permissions ont été sauvegardées avec succès" + "title": "", + "message": "" }, "error": { - "title": "Permissions non sauvegardées", - "message": "Les permissions n'ont pas été sauvegardées" + "title": "", + "message": "" } } }, @@ -483,8 +483,8 @@ } }, "select": { - "label": "Sélectionner un groupe", - "notFound": "Aucun groupe trouvé" + "label": "", + "notFound": "" } } }, @@ -493,16 +493,16 @@ "list": { "title": "Applications", "noResults": { - "title": "Il n'y a pas encore d'apps", - "action": "Créer votre première app" + "title": "", + "action": "" } }, "create": { - "title": "Nouvelle app", + "title": "", "notification": { "success": { - "title": "Créé avec succès", - "message": "L'application a bien été créée" + "title": "", + "message": "" }, "error": { "title": "", @@ -518,17 +518,17 @@ "message": "" }, "error": { - "title": "Impossible d'appliquer les changements", + "title": "", "message": "" } } }, "delete": { - "title": "Supprimer l'app", - "message": "Êtes-vous sûr de vouloir supprimer l'app {name}?", + "title": "", + "message": "", "notification": { "success": { - "title": "Suppression effectuée avec succès", + "title": "", "message": "" }, "error": { @@ -543,23 +543,23 @@ "label": "Nom" }, "description": { - "label": "Description" + "label": "" }, "url": { - "label": "Url" + "label": "" } }, "action": { "select": { - "label": "Sélectionner l'app", - "notFound": "Aucune app trouvée" + "label": "", + "notFound": "" } } }, "integration": { "page": { "list": { - "title": "Intégrations", + "title": "", "search": "", "noResults": { "title": "" @@ -569,7 +569,7 @@ "title": "", "notification": { "success": { - "title": "Créé avec succès", + "title": "", "message": "" }, "error": { @@ -611,37 +611,37 @@ "label": "Nom" }, "url": { - "label": "Url" + "label": "" } }, "action": { - "create": "Nouvelle intégration" + "create": "" }, "testConnection": { "action": { - "create": "Tester la connexion et créer", - "edit": "Tester la connexion et enregistrer" + "create": "", + "edit": "" }, - "alertNotice": "Le bouton Enregistrer est activé une fois qu'une connexion est établie avec succès", + "alertNotice": "", "notification": { "success": { - "title": "Connexion réussie", - "message": "La connexion a été établie avec succès" + "title": "", + "message": "" }, "invalidUrl": { "title": "URL invalide", - "message": "L'URL est invalide." + "message": "" }, "secretNotDefined": { - "title": "Identifiants manquants", - "message": "Les informations d'identification n'ont pas toutes été fournies" + "title": "", + "message": "" }, "invalidCredentials": { - "title": "Informations d'identification incorrectes.", - "message": "Les informations d'identification ne sont pas valides" + "title": "", + "message": "" }, "commonError": { - "title": "Échec de la connexion", + "title": "", "message": "" }, "badRequest": { @@ -709,11 +709,11 @@ "kind": { "username": { "label": "Nom d'utilisateur", - "newLabel": "Nouveau nom d'utilisateur" + "newLabel": "" }, "apiKey": { - "label": "Clé API", - "newLabel": "Nouvelle clé API" + "label": "", + "newLabel": "" }, "password": { "label": "Mot de passe", @@ -761,12 +761,12 @@ } }, "copy": { - "label": "Copier l'URL" + "label": "" } } }, "common": { - "beta": "Bêta", + "beta": "", "error": "Erreur", "action": { "add": "Ajouter", @@ -774,7 +774,7 @@ "backToOverview": "", "create": "Créer", "edit": "Modifier", - "import": "Importer", + "import": "", "insert": "Insérer", "remove": "Supprimer", "save": "Sauvegarder", @@ -783,29 +783,29 @@ "delete": "Supprimer", "discard": "", "confirm": "Confirmer", - "continue": "Continuer", + "continue": "", "previous": "Précédent", "next": "Suivant", - "checkoutDocs": "Voir la documentation", - "checkLogs": "Vérifiez les logs pour plus de détails", + "checkoutDocs": "", + "checkLogs": "", "tryAgain": "Réessayer", - "loading": "Chargement" + "loading": "" }, - "here": "ici", + "here": "", "iconPicker": { "label": "", "header": "" }, "colorScheme": { "options": { - "light": "Clair", - "dark": "Sombre" + "light": "", + "dark": "" } }, "information": { - "min": "Min", - "max": "Max", - "days": "Jours", + "min": "", + "max": "", + "days": "", "hours": "Heures", "minutes": "Minutes" }, @@ -832,7 +832,7 @@ }, "multiText": { "placeholder": "", - "addLabel": "Ajouter {value}" + "addLabel": "" }, "select": { "placeholder": "", @@ -842,11 +842,11 @@ }, "userAvatar": { "menu": { - "switchToDarkMode": "Activer le mode sombre", - "switchToLightMode": "Activer le mode clair", - "management": "Administration", + "switchToDarkMode": "", + "switchToLightMode": "", + "management": "", "preferences": "Vos préférences", - "logout": "Se déconnecter", + "logout": "", "login": "Connexion", "homeBoard": "", "loggedOut": "", @@ -992,7 +992,7 @@ }, "widget": { "app": { - "name": "App", + "name": "", "description": "", "option": { "appId": { @@ -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": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Utilisateur", + "name": "Nom", "id": "" } }, @@ -1537,7 +1537,7 @@ "detailsTitle": "" }, "ratio": { - "columnTitle": "", + "columnTitle": "Ratio", "detailsTitle": "" }, "received": { @@ -1640,7 +1640,7 @@ "available": "", "tv": "Demandes de séries TV", "movie": "Demandes de films", - "total": "" + "total": "Total" }, "users": { "main": "Principaux utilisateurs", @@ -1682,7 +1682,7 @@ "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "", + "videoCodecs": "Codecs", "videoContainers": "Conteneurs", "videoResolutions": "Résolutions" }, @@ -1690,7 +1690,7 @@ "empty": "Vide", "table": { "file": "Fichier", - "eta": "", + "eta": "ETA", "progress": "Progrès", "transcode": "Transcodeur", "healthCheck": "" @@ -1897,7 +1897,7 @@ "label": "Nom" }, "isPublic": { - "label": "", + "label": "Public", "description": "" } }, @@ -2047,9 +2047,9 @@ "tools": { "label": "Outils", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2057,7 +2057,7 @@ "help": { "label": "Aide", "items": { - "documentation": "", + "documentation": "Documentation", "submitIssue": "", "discord": "Communauté Discord", "sourceCode": "" @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Créateur" @@ -2320,7 +2320,7 @@ "title": "", "status": { "idle": "", - "running": "", + "running": "Running", "error": "Erreur" }, "job": { @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2385,7 +2385,7 @@ }, "tab": { "documentation": { - "label": "" + "label": "Documentation" }, "apiKey": { "label": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "" } } @@ -2438,7 +2438,7 @@ "label": "État", "option": { "created": "Créé", - "running": "", + "running": "Running", "paused": "En pause", "restarting": "Redémarrage en cours", "exited": "", @@ -2447,10 +2447,10 @@ } }, "containerImage": { - "label": "" + "label": "Image" }, "ports": { - "label": "" + "label": "Ports" } }, "action": { @@ -2468,7 +2468,7 @@ } }, "stop": { - "label": "", + "label": "Stop", "notification": { "success": { "title": "", @@ -2607,7 +2607,7 @@ "tools": { "label": "Outils", "docker": { - "label": "" + "label": "Docker" }, "logs": { "label": "" @@ -2681,8 +2681,8 @@ "title": "", "option": { "colorScheme": { - "light": "Activer le mode clair", - "dark": "Activer le mode sombre" + "light": "", + "dark": "" }, "language": { "label": "", @@ -2754,7 +2754,7 @@ "description": "" }, "torrent": { - "name": "", + "name": "Torrents", "description": "" }, "youTube": { @@ -2774,7 +2774,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 9583a92bf..8bae43de8 100644 --- a/packages/translation/src/lang/he.json +++ b/packages/translation/src/lang/he.json @@ -1459,9 +1459,9 @@ "description": "הצג את הזרמים הנוכחיים בשרתי המדיה שלך", "option": {}, "items": { - "user": "", - "name": "", - "id": "" + "user": "משתמש", + "name": "שם", + "id": "מזהה" } }, "downloads": { @@ -1530,7 +1530,7 @@ "columnTitle": "אינטגרציה" }, "name": { - "columnTitle": "" + "columnTitle": "שם המשימה" }, "progress": { "columnTitle": "התקדמות", @@ -1554,7 +1554,7 @@ }, "state": { "columnTitle": "מצב", - "detailsTitle": "" + "detailsTitle": "מצב משימה" }, "time": { "columnTitle": "זמן סיום", @@ -1597,7 +1597,7 @@ "delete": { "title": "מחק פריט", "modalTitle": "", - "entry": "", + "entry": "מחק רשומה", "entryAndFiles": "" } } @@ -2025,8 +2025,8 @@ "evening": "" }, "notFound": { - "title": "", - "text": "" + "title": "לא נמצא", + "text": "לא ניתן היה למצוא את המשאב המבוקש" }, "navbar": { "items": { @@ -2048,9 +2048,9 @@ "label": "כלים", "items": { "docker": "דוקר", - "logs": "", + "logs": "קובצי לוג", "api": "ממשק API", - "tasks": "" + "tasks": "משימות" } }, "settings": "הגדרות", @@ -2058,9 +2058,9 @@ "label": "עזרה", "items": { "documentation": "תיעוד", - "submitIssue": "", + "submitIssue": "שלח בעיה", "discord": "קהילת דיסקורד", - "sourceCode": "" + "sourceCode": "קוד מקור" } }, "about": "אודות" @@ -2078,41 +2078,41 @@ }, "statisticLabel": { "boards": "לוחות", - "resources": "", - "authentication": "", - "authorization": "" + "resources": "מקורות", + "authentication": "אימות", + "authorization": "הרשאה" } }, "board": { "title": "הלוחות שלך", "action": { "new": { - "label": "" + "label": "לוח חדש" }, "open": { - "label": "" + "label": "פתח לוח" }, "settings": { "label": "הגדרות" }, "setHomeBoard": { - "label": "", + "label": "הגדר כלוח הבית שלך", "badge": { "label": "מסך הבית", - "tooltip": "" + "tooltip": "לוח זה יוצג כלוח הבית שלך" } }, "delete": { "label": "מחיקה לצמיתות", "confirm": { "title": "מחיקת לוח", - "description": "" + "description": "האם אתה בטוח שברצונך למחוק את הלוח {name} ?" } } }, "visibility": { - "public": "", - "private": "" + "public": "לוח זה הוא ציבורי", + "private": "לוח זה הוא פרטי" }, "modal": { "createBoard": { @@ -2125,16 +2125,16 @@ } }, "media": { - "includeFromAllUsers": "" + "includeFromAllUsers": "כלול מדיה מכל המשתמשים" }, "user": { - "back": "", - "fieldsDisabledExternalProvider": "", + "back": "חזרה למשתמשים", + "fieldsDisabledExternalProvider": "שדות מסוימים מושבתים מכיוון שהם מנוהלים על ידי ספק אימות חיצוני.", "setting": { "general": { "title": "כללי", "item": { - "language": "", + "language": "שפה ואזור", "board": "לוח בית", "firstDayOfWeek": "היום הראשון בשבוע", "accessibility": "נגישות" @@ -2152,21 +2152,21 @@ "title": "משתמשים" }, "edit": { - "metaTitle": "" + "metaTitle": "ערוך משתמש {username}" }, "create": { "metaTitle": "צור משתמש", - "title": "", + "title": "צור משתמש חדש", "step": { "personalInformation": { - "label": "" + "label": "מידע אישי" }, "security": { "label": "אבטחה" }, "groups": { "label": "קבוצות", - "title": "", + "title": "בחר את כל הקבוצות שהמשתמש צריך להיות חבר בהן", "description": "" }, "review": { @@ -2244,41 +2244,41 @@ "title": "הגדרות", "notification": { "success": { - "message": "" + "message": "ההגדרות נשמרו בהצלחה" }, "error": { - "message": "" + "message": "שמירת ההגדרות נכשלה" } }, "section": { "analytics": { - "title": "", + "title": "ניתוח", "general": { - "title": "", - "text": "" + "title": "שלח ניתוח אנונימי", + "text": "Homarr ישלח ניתוחים אנונימיים באמצעות התוכנה בקוד פתוח Umami. הוא לעולם אינו אוסף מידע אישי ולכן תואם לחלוטין לדרישות ה-GDPR וה-CCPA. אנו מעודדים אותך להפעיל ניתוחים, כיוון שזה מסייע לצוות הקוד הפתוח שלנו לזהות בעיות ולהעניק עדיפות למשימות שברשימת העדיפויות שלנו." }, "widgetData": { - "title": "", - "text": "" + "title": "נתוני ווידג'ט", + "text": "שלח אילו ווידג'טים (וכמותם) הוגדרו. אינו כולל כתובות URL, שמות או כל מידע נוסף אחר." }, "integrationData": { - "title": "", - "text": "" + "title": "נתוני אינטגרציה", + "text": "שלח אילו אינטגרציות (וכמותן) הגדרת. אינו כולל כתובות URL, שמות או כל מידע אחר." }, "usersData": { - "title": "", - "text": "" + "title": "נתוני משתמשים", + "text": "שלח את כמות המשתמשים והאם הפעלת SSO" } }, "crawlingAndIndexing": { - "title": "", - "warning": "", + "title": "סריקה והוספה לאינדקס", + "warning": "הפעלה או השבתה של הגדרות כלשהן כאן תשפיע קשות על האופן שבו מנועי החיפוש יכנסו לאינדקס ויסרקו את הדף שלך. כל הגדרה היא בקשה ותלוית הסורק להחיל את ההגדרות הללו. היישום של כל שינוי עשוי להימשך עד מספר ימים או שבועות. הגדרות מסוימות עשויות להיות ספציפיות למנועי חיפוש.", "noIndex": { - "title": "", - "text": "" + "title": "אין אינדקס", + "text": "אל תוסיף את האתר לאינדקס במנועי חיפוש ואל תציג אותו בתוצאות חיפוש" }, "noFollow": { - "title": "", + "title": "אין מעקב", "text": "" }, "noTranslate": { @@ -2317,7 +2317,7 @@ }, "tool": { "tasks": { - "title": "", + "title": "משימות", "status": { "idle": "", "running": "פועל", @@ -2328,7 +2328,7 @@ "label": "" }, "analytics": { - "label": "" + "label": "ניתוח" }, "smartHomeEntityState": { "label": "" @@ -2388,7 +2388,7 @@ "label": "תיעוד" }, "apiKey": { - "label": "", + "label": "אימות", "title": "", "button": { "createApiToken": "" @@ -2610,7 +2610,7 @@ "label": "דוקר" }, "logs": { - "label": "" + "label": "קובצי לוג" } }, "settings": { @@ -2652,7 +2652,7 @@ "children": { "action": { "open": { - "label": "" + "label": "פתח לוח" }, "homeBoard": { "label": "" @@ -2777,7 +2777,7 @@ "label": "תיעוד" }, "submitIssue": { - "label": "" + "label": "שלח בעיה" }, "discord": { "label": "קהילת דיסקורד" diff --git a/packages/translation/src/lang/hr.json b/packages/translation/src/lang/hr.json index 1f1e7fafb..f20bae406 100644 --- a/packages/translation/src/lang/hr.json +++ b/packages/translation/src/lang/hr.json @@ -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": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Korisnik", + "name": "Naziv", "id": "" } }, @@ -1690,7 +1690,7 @@ "empty": "Isprazni", "table": { "file": "", - "eta": "", + "eta": "ETA", "progress": "Napredak", "transcode": "", "healthCheck": "" @@ -2047,7 +2047,7 @@ "tools": { "label": "Alati", "items": { - "docker": "", + "docker": "Docker", "logs": "", "api": "", "tasks": "" @@ -2607,7 +2607,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 93e9b2e78..669c0c241 100644 --- a/packages/translation/src/lang/hu.json +++ b/packages/translation/src/lang/hu.json @@ -51,7 +51,7 @@ "title": "Import token megadása", "field": { "token": { - "label": "", + "label": "Token", "description": "Írja be a megjelenített import tokent az előző homarr példányból" } }, @@ -546,7 +546,7 @@ "label": "Leírás" }, "url": { - "label": "" + "label": "Url" } }, "action": { @@ -611,7 +611,7 @@ "label": "Név" }, "url": { - "label": "" + "label": "Url" } }, "action": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Felhasználó", + "name": "Név", "id": "" } }, @@ -2047,9 +2047,9 @@ "tools": { "label": "Eszközök", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2213,7 +2213,7 @@ "label": "Lejárati idő" }, "token": { - "label": "" + "label": "Token" } } } @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2607,7 +2607,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 f287d2f73..c30a3a8e7 100644 --- a/packages/translation/src/lang/it.json +++ b/packages/translation/src/lang/it.json @@ -3,8 +3,8 @@ "step": { "start": { "title": "Ti diamo il benvenuto su Homarr", - "subtitle": "Iniziamo con la creazione della tua istanza di Homarr.", - "description": "Per iniziare, seleziona come vuoi configurare la tua istanza di Homarr.", + "subtitle": "Cominciamo a configurare la tua istanza Homarr.", + "description": "Per iniziare, seleziona come desideri configurare la tua istanza Homarr.", "action": { "scratch": "Inizia da zero", "importOldmarr": "Importa da Homarr prima della 1.0" @@ -14,8 +14,8 @@ "title": "Importa dati", "subtitle": "Puoi importare dati da un'istanza Homarr esistente.", "dropzone": { - "title": "Trascina il file zip qui o fai clic per sfogliare", - "description": "Lo zip caricato sarà elaborato e sarai in grado di selezionare quello che vuoi importare" + "title": "Trascina qui il file zip o clicca per sfogliare", + "description": "Il file zip caricato verrà elaborato e potrai selezionare cosa vuoi importare" }, "fileInfo": { "action": { @@ -24,27 +24,27 @@ }, "importSettings": { "title": "Importa impostazioni", - "description": "Configura le azioni d'importazione" + "description": "Configura il comportamento d'importazione" }, "boardSelection": { - "title": "Trovate {count} board", - "description": "Scegli tutte le board con la dimensione che vuoi importare", + "title": "Trovate {count} schede", + "description": "Seleziona tutte le schede con le dimensioni che desideri importare", "action": { "selectAll": "Seleziona tutto", "unselectAll": "Deseleziona tutto" } }, "summary": { - "title": "Riepilogo", + "title": "Importa riepilogo", "description": "Nel riepilogo sottostante puoi vedere cosa verrà importato", "action": { "import": "Conferma importazione e continua" }, "entities": { "apps": "Applicazioni", - "boards": "Board", + "boards": "Boards", "integrations": "Integrazioni", - "credentialUsers": "Credential users" + "credentialUsers": "Utenti credenziali" } }, "tokenModal": { @@ -58,18 +58,18 @@ "notification": { "error": { "title": "Token non valido", - "message": "Token inserito non valido" + "message": "Il token inserito non è valido" } } } }, "user": { "title": "Amministratore", - "subtitle": "Specifica le credenziali per l'amministratore.", + "subtitle": "Specifica le credenziali per l'utente amministratore.", "notification": { "success": { "title": "Utente creato", - "message": "L'utente è stato creato correttamente" + "message": "Utente creato con successo" }, "error": { "title": "Creazione dell'utente non riuscita" @@ -78,7 +78,7 @@ }, "group": { "title": "Gruppo esterno", - "subtitle": "Specifica il gruppo da utilizzare per gli utenti esterni.", + "subtitle": "Specifica il gruppo che dovrebbe essere utilizzato per gli utenti esterni.", "form": { "name": { "label": "Nome gruppo", @@ -93,39 +93,39 @@ "finish": { "title": "Termina configurazione", "subtitle": "È tutto pronto per iniziare!", - "description": "Hai completato con successo la configurazione. Ora puoi iniziare a usare Homarr. Seleziona la prossima azione:", + "description": "Hai completato con successo il processo di installazione. Ora puoi iniziare a usare Homarr. Seleziona la tua prossima azione:", "action": { - "goToBoard": "Vai alla board: {name}", - "createBoard": "Crea la tua prima board", - "inviteUser": "Invita altri utenti", - "docs": "Leggi la documentazione" + "goToBoard": "", + "createBoard": "", + "inviteUser": "", + "docs": "" } } }, - "backToStart": "Torna all'inizio" + "backToStart": "" }, "user": { "title": "Utenti", "name": "Utente", "page": { "login": { - "title": "Accedi al tuo account", - "subtitle": "Felice di rivederti! Inserisci le tue credenziali" + "title": "", + "subtitle": "" }, "invite": { - "title": "Unisciti ad Homarr", - "subtitle": "Ti diamo il benvenuto su Homarr! Crea il tuo account", - "description": "Hai ricevuto un invito da {username}" + "title": "", + "subtitle": "", + "description": "" }, "init": { - "title": "Nuova installazione di Homarr", - "subtitle": "Crea l'utenza amministrativa iniziale" + "title": "", + "subtitle": "" } }, "field": { "email": { "label": "E-mail", - "verified": "Verificato" + "verified": "" }, "username": { "label": "Nome utente" @@ -133,46 +133,46 @@ "password": { "label": "Password", "requirement": { - "length": "Include almeno 8 caratteri", + "length": "", "lowercase": "Include lettera minuscola", "uppercase": "Include lettera maiuscola", "number": "Include numero", - "special": "Include un simbolo speciale" + "special": "" } }, "passwordConfirm": { "label": "Conferma password" }, "previousPassword": { - "label": "Password precedente" + "label": "" }, "homeBoard": { - "label": "Home board" + "label": "" }, "pingIconsEnabled": { - "label": "Usa le icone per i ping" + "label": "" } }, "error": { - "usernameTaken": "Nome utente già in uso" + "usernameTaken": "" }, "action": { "login": { "label": "Accedi", - "labelWith": "Accedi con {provider}", + "labelWith": "", "notification": { "success": { - "title": "Accesso completato", - "message": "Hai effettuato l'accesso" + "title": "", + "message": "" }, "error": { - "title": "Login fallito", - "message": "Accesso non riuscito" + "title": "", + "message": "" } }, "forgotPassword": { - "label": "Password dimenticata?", - "description": "Un amministratore può utilizzare il seguente comando per reimpostare la password:" + "label": "", + "description": "" } }, "register": { @@ -180,81 +180,81 @@ "notification": { "success": { "title": "Account creato", - "message": "Accedi per continuare" + "message": "" }, "error": { - "title": "Creazione dell’account non riuscita", - "message": "Il tuo account non può essere creato" + "title": "", + "message": "" } } }, "create": "Crea utente", "changePassword": { - "label": "Cambia password", + "label": "", "notification": { "success": { - "message": "Password modificata" + "message": "" }, "error": { - "message": "Impossibile cambiare la password" + "message": "" } } }, "changeHomeBoard": { "notification": { "success": { - "message": "Home board modificata con successo" + "message": "" }, "error": { - "message": "Impossibile cambiare la home board" + "message": "" } } }, "changeFirstDayOfWeek": { "notification": { "success": { - "message": "Primo giorno della settimana cambiato" + "message": "" }, "error": { - "message": "Impossibile modificare il primo giorno della settimana" + "message": "" } } }, "changePingIconsEnabled": { "notification": { "success": { - "message": "Icone ping modificate con successo" + "message": "" }, "error": { - "message": "Impossibile attivare o disattivare le icone di ping" + "message": "" } } }, "manageAvatar": { "changeImage": { - "label": "Cambia immagine", + "label": "", "notification": { "success": { - "message": "Immagine cambiata con successo" + "message": "" }, "error": { - "message": "Impossibile cambiare immagine" + "message": "" }, "toLarge": { - "title": "Immagine troppo grande", - "message": "La dimensione massima dell'immagine è {size}" + "title": "", + "message": "" } } }, "removeImage": { - "label": "Rimuovi immagine", - "confirm": "Vuoi davvero rimuovere l'immagine?", + "label": "", + "confirm": "", "notification": { "success": { - "message": "Immagine rimossa" + "message": "" }, "error": { - "message": "Impossibile rimuovere immagine" + "message": "" } } } @@ -262,16 +262,16 @@ "editProfile": { "notification": { "success": { - "message": "Profilo aggiornato" + "message": "" }, "error": { - "message": "Impossibile aggiornare il profilo" + "message": "" } } }, "delete": { - "label": "Elimina utente definitivamente", - "description": "Elimina questo utente, comprese le sue preferenze. Non eliminerà nessuna board. L'utente non verrà avvisato.", + "label": "", + "description": "Elimina questo utente, comprese le sue preferenze. Non eliminerà nessuna scheda. L'utente non verrà avvisato.", "confirm": "Hai la certezza di voler eliminare l'utente {username} con le sue preferenze?" }, "select": { @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "Amministratore", + "title": "Admin", "item": { "admin": { "label": "Amministratore", @@ -305,12 +305,12 @@ "title": "Applicazioni", "item": { "create": { - "label": "Creare app", + "label": "Crea applicazioni", "description": "Consenti ai membri di creare app" }, "use-all": { - "label": "Utilizzare tutte le app", - "description": "Consenti ai membri di aggiungere qualsiasi app alle loro board" + "label": "Utilizzare tutte le applicazioni", + "description": "Consenti ai membri di aggiungere qualsiasi app alle loro schede" }, "modify-all": { "label": "Modificare tutte le app", @@ -323,14 +323,14 @@ } }, "board": { - "title": "Board", + "title": "Boards", "item": { "create": { - "label": "Creare board", - "description": "Consenti ai membri di creare board" + "label": "Creare schede", + "description": "Consenti ai membri di creare schede" }, "view-all": { - "label": "Visualizzare tutte le board", + "label": "Visualizzare tutte le schede", "description": "Consenti ai membri di visualizzare tutte le schede" }, "modify-all": { @@ -402,89 +402,89 @@ "description": "Consenti ai membri di modificare tutti i motori di ricerca" }, "full-all": { - "label": "Accesso completo al motore di ricerca", - "description": "Consenti ai membri di gestire ed eliminare qualsiasi motore di ricerca" + "label": "", + "description": "" } } } }, "memberNotice": { - "mixed": "Alcuni membri provengono da fornitori esterni e non possono essere gestiti qui", - "external": "Tutti i membri provengono da fornitori esterni e non possono essere gestiti qui" + "mixed": "", + "external": "" }, "reservedNotice": { - "message": "Questo gruppo è riservato all'uso del sistema e limita alcune azioni. " + "message": "" }, "action": { "create": { - "label": "Nuovo gruppo", + "label": "", "notification": { "success": { - "message": "Gruppo creato" + "message": "" }, "error": { - "message": "Impossibile creare il gruppo" + "message": "" } } }, "transfer": { - "label": "Trasferisci ownership", - "description": "Trasferisci l'ownership di questo gruppo a un altro utente.", - "confirm": "Hai la certezza di voler trasferire l'ownership del gruppo {name} a {username}?", + "label": "", + "description": "", + "confirm": "", "notification": { "success": { - "message": "Gruppo {group} trasferito a {user}" + "message": "" }, "error": { - "message": "Impossibile trasferire l'ownership" + "message": "" } } }, "addMember": { - "label": "Aggiungi membro" + "label": "" }, "removeMember": { - "label": "Rimuovi membro", - "confirm": "Hai la certezza di voler rimuovere {user} da questo gruppo?" + "label": "", + "confirm": "" }, "delete": { - "label": "Elimina gruppo", - "description": "Una volta eliminato un gruppo, non si può tornare indietro. Si prega di essere certi.", - "confirm": "Hai la certezza di voler eliminare il gruppo {name}?", + "label": "", + "description": "", + "confirm": "", "notification": { "success": { - "message": "Gruppo {name} eliminato" + "message": "" }, "error": { - "message": "Impossibile eliminare il gruppo {name}" + "message": "" } } }, "changePermissions": { "notification": { "success": { - "title": "Permessi salvati", - "message": "I permessi sono stati salvati" + "title": "", + "message": "" }, "error": { - "title": "Permessi non salvati", - "message": "I permessi non sono stati salvati" + "title": "", + "message": "" } } }, "update": { "notification": { "success": { - "message": "Il gruppo {name} è stato salvato" + "message": "" }, "error": { - "message": "Impossibile salvare il gruppo {name}" + "message": "" } } }, "select": { - "label": "Seleziona gruppo", - "notFound": "Nessun gruppo trovato" + "label": "", + "notFound": "" } } }, @@ -493,47 +493,47 @@ "list": { "title": "Applicazioni", "noResults": { - "title": "Non ci sono ancora app", - "action": "Crea la tua prima app" + "title": "", + "action": "" } }, "create": { - "title": "Nuova app", + "title": "", "notification": { "success": { - "title": "Creazione riuscita", - "message": "App creata" + "title": "", + "message": "" }, "error": { - "title": "Creazione fallita", - "message": "Impossibile creare l'app" + "title": "", + "message": "" } } }, "edit": { - "title": "Modifica app", + "title": "", "notification": { "success": { - "title": "Modifiche applicate", - "message": "App salvata" + "title": "", + "message": "" }, "error": { - "title": "Impossibile applicare le modifiche", - "message": "Impossibile salvare l'app" + "title": "", + "message": "" } } }, "delete": { - "title": "Elimina app", - "message": "Hai la certezza di voler eliminare l'app {name}?", + "title": "", + "message": "", "notification": { "success": { - "title": "Eliminato", - "message": "App eliminata" + "title": "", + "message": "" }, "error": { - "title": "Eliminazione non riuscita", - "message": "Impossibile eliminare l'app" + "title": "", + "message": "" } } } @@ -543,15 +543,15 @@ "label": "Nome" }, "description": { - "label": "Descrizione" + "label": "" }, "url": { - "label": "Url" + "label": "" } }, "action": { "select": { - "label": "Seleziona App", + "label": "", "notFound": "Nessuna app trovata" } } @@ -569,11 +569,11 @@ "title": "Nuova integrazione di {name}", "notification": { "success": { - "title": "Creazione riuscita", + "title": "", "message": "L'integrazione è stata creata con successo" }, "error": { - "title": "Creazione fallita", + "title": "", "message": "Non è stato possibile creare l'integrazione" } } @@ -582,11 +582,11 @@ "title": "Modifica integrazione {name}", "notification": { "success": { - "title": "Modifiche applicate", + "title": "", "message": "L'integrazione è stata salvata correttamente" }, "error": { - "title": "Impossibile applicare le modifiche", + "title": "", "message": "Non è stato possibile salvare l'integrazione" } } @@ -596,11 +596,11 @@ "message": "Hai la certezza di voler eliminare l'integrazione {name}?", "notification": { "success": { - "title": "Eliminato", + "title": "", "message": "L'integrazione è stata eliminata correttamente" }, "error": { - "title": "Eliminazione non riuscita", + "title": "", "message": "Impossibile eliminare l'integrazione" } } @@ -611,7 +611,7 @@ "label": "Nome" }, "url": { - "label": "Url" + "label": "" } }, "action": { @@ -694,8 +694,8 @@ "title": "Secrets", "lastUpdated": "Ultimo aggiornamento {date}", "notSet": { - "label": "Nessun valore impostato", - "tooltip": "Il secret richiesto non è stato ancora impostato" + "label": "", + "tooltip": "" }, "secureNotice": "", "reset": { @@ -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": "", @@ -861,12 +861,12 @@ }, "zod": { "errors": { - "default": "Campo non valido", - "required": "Campo obbligatorio", + "default": "Questo campo non è valido", + "required": "Questo campo è obbligatorio", "string": { "startsWith": "Questo campo deve iniziare con {startsWith}", "endsWith": "Questo campo deve terminare con {endsWith}", - "includes": "Questo campo deve contenere {includes}", + "includes": "Questo campo deve includere {includes}", "invalidEmail": "" }, "tooSmall": { @@ -1026,7 +1026,7 @@ "label": "" }, "layout": { - "label": "", + "label": "Layout", "option": { "row": { "label": "Orizzontale" @@ -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" @@ -1168,9 +1168,9 @@ "controls": { "bold": "Grassetto", "italic": "Corsivo", - "strikethrough": "Barrato", + "strikethrough": "Testo barrato", "underline": "Sottolineato", - "colorText": "Colore testo", + "colorText": "Testo a colori", "colorHighlight": "Testo evidenziato colorato", "code": "Codice", "clear": "Rimuovi formattazione", @@ -1180,15 +1180,15 @@ "horizontalLine": "Linea orizzontale", "bulletList": "Elenco puntato", "orderedList": "Elenco ordinato", - "checkList": "Checklist", + "checkList": "Elenco di controllo", "increaseIndent": "Aumenta indentatura", "decreaseIndent": "Diminuisci indentatura", - "link": "", + "link": "Link", "unlink": "Elimina link", "image": "Incorpora immagine", "addTable": "Aggiungi tabella", "deleteTable": "Elimina tabella", - "colorCell": "Colora Cella", + "colorCell": "Colore cella", "mergeCell": "Attiva/disattiva unione celle", "addColumnLeft": "Aggiungi colonna prima", "addColumnRight": "Aggiungi colonna dopo", @@ -1199,7 +1199,7 @@ }, "align": { "left": "Sinistra", - "center": "Centro", + "center": "Centra", "right": "Destra" }, "popover": { @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "", + "name": "iFrame", "description": "Incorpora qualsiasi contenuto da Internet. Alcuni siti web possono limitare l'accesso.", "option": { "embedUrl": { @@ -1272,7 +1272,7 @@ "description": "", "option": { "displayName": { - "label": "Nome visualizzato" + "label": "Visualizza nome" }, "automationId": { "label": "ID automazione" @@ -1304,7 +1304,7 @@ }, "weather": { "name": "Meteo", - "description": "Mostra le attuali informazioni meteo di un luogo.", + "description": "Mostra le informazioni meteo attuali di una località.", "option": { "isFormatFahrenheit": { "label": "" @@ -1336,7 +1336,7 @@ "rain": "Pioggia", "freezingRain": "Pioggia gelata", "snowFall": "Neve", - "snowGrains": "Grandine", + "snowGrains": "Neve tonda", "rainShowers": "Rovesci", "snowShowers": "Forti nevicate", "thunderstorm": "Temporale", @@ -1345,21 +1345,21 @@ } }, "indexerManager": { - "name": "Stato dell'index manager", + "name": "Stato del gestore dell'indicizzatore", "description": "", "option": { "openIndexerSiteInNewTab": { "label": "" } }, - "title": "Index manager", - "testAll": "Prova tutto", + "title": "Gestore dell'indicizzatore", + "testAll": "Prova Tutto", "error": { "internalServerError": "" } }, "healthMonitoring": { - "name": "Monitoraggio Salute di Sistema", + "name": "Monitoraggio dello stato del sistema", "description": "Visualizza informazioni sulla salute e stato dei tuoi sistemi.", "option": { "fahrenheit": { @@ -1432,8 +1432,8 @@ "option": {} }, "video": { - "name": "Stream Video", - "description": "Incorpora uno stream video o un video da una videocamera o da un sito web", + "name": "Flusso Video", + "description": "Incorpora un flusso video o un video da una videocamera o da un sito web", "option": { "feedUrl": { "label": "URL del feed" @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Utente", + "name": "Nome", "id": "" } }, @@ -1516,7 +1516,7 @@ "detailsTitle": "" }, "downSpeed": { - "columnTitle": "", + "columnTitle": "Down", "detailsTitle": "Velocità Di Download" }, "index": { @@ -1537,7 +1537,7 @@ "detailsTitle": "" }, "ratio": { - "columnTitle": "", + "columnTitle": "Ratio", "detailsTitle": "" }, "received": { @@ -1565,7 +1565,7 @@ "detailsTitle": "" }, "upSpeed": { - "columnTitle": "", + "columnTitle": "Up", "detailsTitle": "" } }, @@ -1606,7 +1606,7 @@ }, "mediaRequests-requestList": { "name": "", - "description": "Visualizza un elenco di tutte le richieste media dalla tua istanza Overseerr o Jellyseerr", + "description": "Vedi un elenco di tutte le richieste multimediali dalla tua istanza Overseerr o Jellyseerr", "option": { "linksTargetNewTab": { "label": "Apri i link in nuova scheda" @@ -1628,11 +1628,11 @@ }, "mediaRequests-requestStats": { "name": "", - "description": "Statistiche sulle richieste dei media", + "description": "Statistiche sulle richieste multimediali", "option": {}, "titles": { "stats": { - "main": "Statistiche Media", + "main": "Statistiche Multimediali", "approved": "Già approvato", "pending": "Approvazioni In Attesa", "processing": "", @@ -1643,7 +1643,7 @@ "total": "Totale" }, "users": { - "main": "Top Utenti", + "main": "Utenti Top", "requests": "" } } @@ -1660,7 +1660,7 @@ } }, "tab": { - "workers": "Workers", + "workers": "Worker", "queue": "Coda", "statistics": "Statistiche" }, @@ -1669,39 +1669,39 @@ "title": "", "queued": "In coda", "status": { - "healthy": "Normale funzionamento", - "unhealthy": "Compromesso" + "healthy": "Sano", + "unhealthy": "Non integro" } }, "panel": { "statistics": { "empty": "Vuoto", - "transcodes": "", + "transcodes": "Transcodes", "transcodesCount": "", "healthChecksCount": "", "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "", - "videoContainers": "", + "videoCodecs": "Codecs", + "videoContainers": "Containers", "videoResolutions": "Risoluzioni" }, "workers": { "empty": "Vuoto", "table": { - "file": "", - "eta": "", + "file": "File", + "eta": "ETA", "progress": "Avanzamento", - "transcode": "", + "transcode": "Transcode", "healthCheck": "" } }, "queue": { "empty": "Vuoto", "table": { - "file": "", + "file": "File", "size": "Dimensione", - "transcode": "", + "transcode": "Transcode", "healthCheck": "" } } @@ -1827,7 +1827,7 @@ "label": "" }, "backgroundImageAttachment": { - "label": "Immagine di background", + "label": "Allegato immagine di sfondo", "option": { "fixed": { "label": "", @@ -1861,7 +1861,7 @@ } }, "backgroundImageSize": { - "label": "Dimensioni dell'immagine di background", + "label": "Dimensioni dell'immagine di sfondo", "option": { "cover": { "label": "", @@ -1912,10 +1912,10 @@ "unrecognizedLink": "" }, "layout": { - "title": "" + "title": "Layout" }, "background": { - "title": "Background" + "title": "Sfondo" }, "color": { "title": "" @@ -1940,7 +1940,7 @@ } }, "dangerZone": { - "title": "", + "title": "Danger zone", "action": { "rename": { "label": "", @@ -2030,8 +2030,8 @@ }, "navbar": { "items": { - "home": "", - "boards": "", + "home": "Home", + "boards": "Boards", "apps": "Applicazioni", "integrations": "Integrazioni", "searchEngies": "Motori di ricerca", @@ -2047,9 +2047,9 @@ "tools": { "label": "Strumenti", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2059,7 +2059,7 @@ "items": { "documentation": "Documentazione", "submitIssue": "", - "discord": "Community Discord", + "discord": "Discord della community", "sourceCode": "" } }, @@ -2069,7 +2069,7 @@ "page": { "home": { "statistic": { - "board": "", + "board": "Boards", "user": "Utenti", "invite": "Inviti", "integration": "Integrazioni", @@ -2077,7 +2077,7 @@ "group": "Gruppi" }, "statisticLabel": { - "boards": "", + "boards": "Boards", "resources": "", "authentication": "", "authorization": "" @@ -2098,7 +2098,7 @@ "setHomeBoard": { "label": "", "badge": { - "label": "", + "label": "Home", "tooltip": "" } }, @@ -2144,7 +2144,7 @@ "title": "Sicurezza" }, "board": { - "title": "" + "title": "Boards" } }, "list": { @@ -2189,7 +2189,7 @@ "action": { "new": { "title": "", - "description": "Una volta scaduto, un invito non sarà più valido e il destinatario non potrà creare un account." + "description": "Dopo la scadenza, un invito non sarà più valido e il destinatario dell'invito non potrà creare un account." }, "copy": { "title": "", @@ -2199,12 +2199,12 @@ }, "delete": { "title": "Elimina invito", - "description": "Hai la certezza di voler eliminare questo invito? Gli utenti con questo link non potranno più creare un account utilizzandolo." + "description": "Siete sicuri di voler eliminare questo invito? Gli utenti con questo link non potranno più creare un account utilizzando tale link." } }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Creatore" @@ -2213,7 +2213,7 @@ "label": "Data di scadenza" }, "token": { - "label": "" + "label": "Token" } } } @@ -2291,7 +2291,7 @@ } }, "board": { - "title": "", + "title": "Boards", "homeBoard": { "label": "", "description": "" @@ -2337,7 +2337,7 @@ "label": "" }, "mediaServer": { - "label": "Media Server" + "label": "Server multimediale" }, "mediaOrganizer": { "label": "" @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "" } } @@ -2424,7 +2424,7 @@ } }, "docker": { - "title": "", + "title": "Containers", "table": { "updated": "", "search": "", @@ -2440,7 +2440,7 @@ "created": "Creato", "running": "In esecuzione", "paused": "In pausa", - "restarting": "Riavvio in corso", + "restarting": "Riavvio", "exited": "", "removing": "Rimozione in corso", "dead": "" @@ -2557,7 +2557,7 @@ "manage": { "label": "Gestisci", "boards": { - "label": "" + "label": "Boards" }, "integrations": { "label": "Integrazioni", @@ -2596,7 +2596,7 @@ }, "general": "Generale", "security": "Sicurezza", - "board": "", + "board": "Boards", "groups": { "label": "Gruppi" }, @@ -2607,7 +2607,7 @@ "tools": { "label": "Strumenti", "docker": { - "label": "" + "label": "Docker" }, "logs": { "label": "" @@ -2648,7 +2648,7 @@ } }, "board": { - "title": "", + "title": "Boards", "children": { "action": { "open": { @@ -2754,7 +2754,7 @@ "description": "" }, "torrent": { - "name": "", + "name": "Torrents", "description": "" }, "youTube": { @@ -2780,7 +2780,7 @@ "label": "" }, "discord": { - "label": "Community Discord" + "label": "Discord della community" } } } diff --git a/packages/translation/src/lang/ja.json b/packages/translation/src/lang/ja.json index 74c44a010..bc2751ab2 100644 --- a/packages/translation/src/lang/ja.json +++ b/packages/translation/src/lang/ja.json @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "ユーザー", + "name": "名称", "id": "" } }, @@ -1690,7 +1690,7 @@ "empty": "空", "table": { "file": "ファイル", - "eta": "", + "eta": "ETA", "progress": "進捗状況", "transcode": "トランスコード", "healthCheck": "" @@ -2047,9 +2047,9 @@ "tools": { "label": "ツール", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2063,7 +2063,7 @@ "sourceCode": "" } }, - "about": "" + "about": "About" } }, "page": { @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "クリエイター" @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "" } } @@ -2607,7 +2607,7 @@ "tools": { "label": "ツール", "docker": { - "label": "" + "label": "Docker" }, "logs": { "label": "" @@ -2617,7 +2617,7 @@ "label": "設定" }, "about": { - "label": "" + "label": "About" } } }, @@ -2842,7 +2842,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 2696d9acc..0d693e760 100644 --- a/packages/translation/src/lang/ko.json +++ b/packages/translation/src/lang/ko.json @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "", + "name": "iFrame", "description": "인터넷에서 콘텐츠를 퍼옵니다. 일부 웹사이트는 액세스를 제한할 수 있습니다.", "option": { "embedUrl": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "사용자", + "name": "이름", "id": "" } }, @@ -1788,9 +1788,9 @@ "label": "", "description": "", "option": { - "sm": "", - "md": "", - "lg": "" + "sm": "Small", + "md": "Medium", + "lg": "Large" } }, "sidebarBehavior": { @@ -2047,7 +2047,7 @@ "tools": { "label": "도구", "items": { - "docker": "", + "docker": "Docker", "logs": "", "api": "", "tasks": "" @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "크리에이터" @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "" } } @@ -2607,7 +2607,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 3465f1815..c24657e9c 100644 --- a/packages/translation/src/lang/lt.json +++ b/packages/translation/src/lang/lt.json @@ -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": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Vartotojas", + "name": "Pavadinimas", "id": "" } }, @@ -2047,9 +2047,9 @@ "tools": { "label": "Įrankiai", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Kūrėjas" @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "" } } @@ -2607,7 +2607,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 b2e568ba5..c8278d041 100644 --- a/packages/translation/src/lang/lv.json +++ b/packages/translation/src/lang/lv.json @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "", + "name": "iFrame", "description": "Iegult jebkuru saturu no interneta. Dažas vietnes var ierobežot piekļuvi.", "option": { "embedUrl": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Lietotājs", + "name": "Nosaukums", "id": "" } }, @@ -1533,7 +1533,7 @@ "columnTitle": "" }, "progress": { - "columnTitle": "", + "columnTitle": "Progress", "detailsTitle": "" }, "ratio": { @@ -1690,8 +1690,8 @@ "empty": "Tukšs", "table": { "file": "", - "eta": "", - "progress": "", + "eta": "ETA", + "progress": "Progress", "transcode": "", "healthCheck": "" } @@ -2047,9 +2047,9 @@ "tools": { "label": "Rīki", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Izveidotājs" @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "" } } @@ -2450,7 +2450,7 @@ "label": "Attēls" }, "ports": { - "label": "" + "label": "Ports" } }, "action": { @@ -2607,7 +2607,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 41bb61bb5..853a99864 100644 --- a/packages/translation/src/lang/nl.json +++ b/packages/translation/src/lang/nl.json @@ -136,7 +136,7 @@ "length": "Bevat ten minste 8 tekens", "lowercase": "Inclusief kleine letter", "uppercase": "Inclusief hoofdletter", - "number": "Inclusief getal", + "number": "Inclusief aantal", "special": "Inclusief speciaal teken" } }, @@ -773,7 +773,7 @@ "apply": "Toepassen", "backToOverview": "Terug naar overzicht", "create": "Aanmaken", - "edit": "Bewerken", + "edit": "Wijzigen", "import": "Importeren", "insert": "Invoegen", "remove": "Verwijderen", @@ -788,7 +788,7 @@ "next": "Volgende", "checkoutDocs": "De documentatie bekijken", "checkLogs": "Controleer logs voor meer details", - "tryAgain": "Probeer opnieuw", + "tryAgain": "Probeer het opnieuw", "loading": "Laden" }, "here": "hier", @@ -803,8 +803,8 @@ } }, "information": { - "min": "Min.", - "max": "Max.", + "min": "Min", + "max": "Max", "days": "Dagen", "hours": "Uren", "minutes": "Minuten" @@ -999,7 +999,7 @@ "label": "App kiezen" }, "openInNewTab": { - "label": "In nieuw tabblad openen" + "label": "Open in nieuw tabblad" }, "showTitle": { "label": "App naam weergeven" @@ -1026,7 +1026,7 @@ "label": "Titel" }, "layout": { - "label": "Lay-out", + "label": "Indeling", "option": { "row": { "label": "Horizontaal" @@ -1050,7 +1050,7 @@ "description": "Toont het overzicht van je DNS-hole", "option": { "layout": { - "label": "Lay-out", + "label": "Indeling", "option": { "row": { "label": "Horizontaal" @@ -1074,7 +1074,7 @@ "data": { "adsBlockedToday": "Vandaag geblokkeerd", "adsBlockedTodayPercentage": "Vandaag geblokkeerd", - "dnsQueriesToday": "Aanvragen vandaag", + "dnsQueriesToday": "Queries vandaag", "domainsBeingBlocked": "Domeinen op blokkadelijst" } }, @@ -1083,7 +1083,7 @@ "description": "Bedien PiHole of AdGuard vanaf je dashboard", "option": { "layout": { - "label": "Lay-out", + "label": "Indeling", "option": { "row": { "label": "Horizontaal" @@ -1156,7 +1156,7 @@ "description": "Een eenvoudige notitie widget die markdown ondersteunt", "option": { "showToolbar": { - "label": "De werkbalk weergeven om je te helpen markdown te schrijven" + "label": "Toon de werkbalk om je te helpen markdown te schrijven" }, "allowReadOnlyCheck": { "label": "Controle in alleen-lezen modus toestaan" @@ -1170,7 +1170,7 @@ "italic": "Schuingedrukt", "strikethrough": "Doorgestreept", "underline": "Onderstreept", - "colorText": "Tekstkleur", + "colorText": "Kleur tekst", "colorHighlight": "Gekleurde tekst markeren", "code": "Code", "clear": "Opmaak wissen", @@ -1179,19 +1179,19 @@ "blockquote": "Blokquote", "horizontalLine": "Horizontale lijn", "bulletList": "Opsommingslijst", - "orderedList": "Gerangschikte lijst", + "orderedList": "Geordende lijst", "checkList": "Controlelijst", - "increaseIndent": "Inspringing vergroten", + "increaseIndent": "Inspringen vergroten", "decreaseIndent": "Inspringen verminderen", "link": "Link", "unlink": "Link verwijderen", "image": "Afbeelding insluiten", "addTable": "Tabel toevoegen", "deleteTable": "Tabel verwijderen", - "colorCell": "Celkleur", - "mergeCell": "Cellen samenvoegen schakelen", - "addColumnLeft": "Kolom ervoor toevoegen", - "addColumnRight": "Kolom erna toevoegen", + "colorCell": "Kleur cel", + "mergeCell": "Cellen samenvoegen togglen", + "addColumnLeft": "Kolom toevoegen vóór", + "addColumnRight": "Kolom toevoegen ná", "deleteColumn": "Kolom verwijderen", "addRowTop": "Rij toevoegen vóór", "addRowBelow": "Rij toevoegen ná", @@ -1214,7 +1214,7 @@ }, "iframe": { "name": "iFrame", - "description": "Elke inhoud van het internet insluiten. Sommige websites kunnen de toegang beperken.", + "description": "Insluiten van alle inhoud van het internet. Sommige websites kunnen de toegang beperken.", "option": { "embedUrl": { "label": "URL insluiten" @@ -1254,7 +1254,7 @@ "description": "Status van een entiteit weergeven en optioneel omschakelen", "option": { "entityId": { - "label": "Entiteits-ID" + "label": "Entiteit-ID" }, "displayName": { "label": "Weergavenaam" @@ -1287,7 +1287,7 @@ "description": "Gebeurtenissen van je integraties weergeven in een kalenderweergave binnen een bepaalde relatieve tijdsperiode", "option": { "releaseType": { - "label": "Radarr uitgavetype", + "label": "Radarr release type", "options": { "inCinemas": "In bioscopen", "digitalRelease": "Digitale uitgave", @@ -1310,7 +1310,7 @@ "label": "Temperatuur in fahrenheit" }, "location": { - "label": "Weerlocatie" + "label": "Weerslocatie" }, "showCity": { "label": "Stad weergeven" @@ -1328,7 +1328,7 @@ } }, "kind": { - "clear": "Wissen", + "clear": "Helder", "mainlyClear": "Overwegend helder", "fog": "Mist", "drizzle": "Motregen", @@ -1345,14 +1345,14 @@ } }, "indexerManager": { - "name": "Indexeringsbeheerder status", + "name": "Indexeer beheerder status", "description": "Status van je indexers", "option": { "openIndexerSiteInNewTab": { "label": "Indexersite in nieuw tabblad openen" } }, - "title": "Indexeringsbeheerder", + "title": "Indexeer beheerder", "testAll": "Alles testen", "error": { "internalServerError": "Indexersstatus ophalen mislukt" @@ -1381,7 +1381,7 @@ "memory": "Geheugen: {memory}GiB", "memoryAvailable": "Beschikbaar: {memoryAvailable}GiB ({percent}%)", "version": "Versie: {version}", - "uptime": "Uptime: {days} Dagen, {hours} Uren, {minutes} Minuten", + "uptime": "", "loadAverage": "Gemiddelde belasting:", "minute": "1 minuut", "minutes": "{count} minuten", @@ -1433,10 +1433,10 @@ }, "video": { "name": "Video stream", - "description": "Een videostream of video van een camera of website insluiten", + "description": "Een videostream of video van een camera of een website insluiten", "option": { "feedUrl": { - "label": "Feed-URL" + "label": "Feed URL" }, "hasAutoPlay": { "label": "Automatisch afspelen", @@ -1459,9 +1459,9 @@ "description": "De huidige streams op je mediaservers weergeven", "option": {}, "items": { - "user": "", - "name": "", - "id": "" + "user": "Gebruiker", + "name": "Naam", + "id": "ID" } }, "downloads": { @@ -1516,7 +1516,7 @@ "detailsTitle": "Categorieën (of extra informatie)" }, "downSpeed": { - "columnTitle": "Omlaag", + "columnTitle": "Down", "detailsTitle": "Downloadsnelheid" }, "index": { @@ -1565,12 +1565,12 @@ "detailsTitle": "Client type downloaden" }, "upSpeed": { - "columnTitle": "Omhoog", + "columnTitle": "Up", "detailsTitle": "Uploadsnelheid" } }, "states": { - "downloading": "Downloaden", + "downloading": "Bezig met downloaden", "queued": "In wachtrij", "paused": "Gepauzeerd", "completed": "Voltooid", @@ -1606,7 +1606,7 @@ }, "mediaRequests-requestList": { "name": "Media-aanvragen lijst", - "description": "Bekijk een lijst met alle media-aanvragen van je Overseerr of Jellyseerr instantie", + "description": "Bekijk een lijst met alle mediaverzoeken van je Overseerr of Jellyseerr instantie", "option": { "linksTargetNewTab": { "label": "Links in nieuw tabblad openen" @@ -1628,18 +1628,18 @@ }, "mediaRequests-requestStats": { "name": "Media-aanvragen statistieken", - "description": "Statistieken over je media-aanvragen", + "description": "Statistieken over je mediaverzoeken", "option": {}, "titles": { "stats": { - "main": "Mediastatistieken", + "main": "Media statistieken", "approved": "Reeds goedgekeurd", "pending": "In afwachting van goedkeuring", "processing": "Wordt verwerkt", "declined": "Reeds geweigerd", "available": "Reeds beschikbaar", - "tv": "TV aanvragen", - "movie": "Film aanvragen", + "tv": "TV verzoeken", + "movie": "Film verzoeken", "total": "Totaal" }, "users": { @@ -1670,7 +1670,7 @@ "queued": "In wachtrij", "status": { "healthy": "Gezond", - "unhealthy": "Niet-gezond" + "unhealthy": "Ongezond" } }, "panel": { @@ -1789,7 +1789,7 @@ "description": "In versies vóór 1.0 bestonden drie verschillende modi, zodat je het aantal kolommen voor elke schermgrootte kon kiezen.", "option": { "sm": "Klein", - "md": "Gemiddeld", + "md": "Middel", "lg": "Groot" } }, @@ -1912,7 +1912,7 @@ "unrecognizedLink": "De opgegeven link wordt niet herkend en geeft geen voorbeeld, maar werkt misschien nog wel." }, "layout": { - "title": "Lay-out" + "title": "Indeling" }, "background": { "title": "Achtergrond" @@ -2298,7 +2298,7 @@ } }, "appearance": { - "title": "Weergave", + "title": "Opmaak", "defaultColorScheme": { "label": "Standaard kleurenschema", "options": { @@ -2337,7 +2337,7 @@ "label": "Pings" }, "mediaServer": { - "label": "Mediaserver" + "label": "Media server" }, "mediaOrganizer": { "label": "Media organisatoren" @@ -2440,9 +2440,9 @@ "created": "Aangemaakt", "running": "Actief", "paused": "Gepauzeerd", - "restarting": "Herstarten", + "restarting": "Bezig met herstarten", "exited": "Verlaten", - "removing": "Verwijderen", + "removing": "Bezig met verwijderen", "dead": "Dood" } }, @@ -2468,7 +2468,7 @@ } }, "stop": { - "label": "Stoppen", + "label": "Stop", "notification": { "success": { "title": "Containers gestopt", @@ -2481,7 +2481,7 @@ } }, "restart": { - "label": "Herstarten", + "label": "Herstart", "notification": { "success": { "title": "Containers herstart", @@ -2562,7 +2562,7 @@ "integrations": { "label": "Integraties", "edit": { - "label": "Bewerken" + "label": "Wijzigen" }, "new": { "label": "Nieuw" @@ -2574,7 +2574,7 @@ "label": "Nieuw" }, "edit": { - "label": "Bewerken" + "label": "Wijzigen" } }, "medias": { @@ -2586,7 +2586,7 @@ "label": "Nieuw" }, "edit": { - "label": "Bewerken" + "label": "Wijzigen" } }, "users": { @@ -2754,7 +2754,7 @@ "description": "Zoeken op het web met DuckDuckGo" }, "torrent": { - "name": "Verouderde torrents weergeven", + "name": "Torrents", "description": "Zoeken naar torrents op torrentdownloads.pro" }, "youTube": { diff --git a/packages/translation/src/lang/no.json b/packages/translation/src/lang/no.json index 58ab1bcb5..1ee5bcbfd 100644 --- a/packages/translation/src/lang/no.json +++ b/packages/translation/src/lang/no.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "", + "label": "Token", "description": "" } }, @@ -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", @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Bruker", + "name": "Navn", "id": "" } }, @@ -1789,7 +1789,7 @@ "description": "", "option": { "sm": "Liten", - "md": "", + "md": "Medium", "lg": "Stor" } }, @@ -2047,9 +2047,9 @@ "tools": { "label": "Verktøy", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Skaper" @@ -2213,7 +2213,7 @@ "label": "Utløpsdato" }, "token": { - "label": "" + "label": "Token" } } } @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "" } } @@ -2447,7 +2447,7 @@ } }, "containerImage": { - "label": "" + "label": "Image" }, "ports": { "label": "Porter" @@ -2455,7 +2455,7 @@ }, "action": { "start": { - "label": "", + "label": "Start", "notification": { "success": { "title": "", @@ -2607,7 +2607,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 f59cee154..13f116851 100644 --- a/packages/translation/src/lang/pl.json +++ b/packages/translation/src/lang/pl.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "", + "label": "Token", "description": "" } }, @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "", + "title": "Admin", "item": { "admin": { "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": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Użytkownik", + "name": "Nazwa", "id": "" } }, @@ -1690,7 +1690,7 @@ "empty": "Puste", "table": { "file": "", - "eta": "", + "eta": "ETA", "progress": "Postęp", "transcode": "", "healthCheck": "" @@ -2047,9 +2047,9 @@ "tools": { "label": "Narzędzia", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Twórca" @@ -2213,7 +2213,7 @@ "label": "Wygasa" }, "token": { - "label": "" + "label": "Token" } } } @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "" } } @@ -2607,7 +2607,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 314552f75..252a352fd 100644 --- a/packages/translation/src/lang/pt.json +++ b/packages/translation/src/lang/pt.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "", + "label": "Token", "description": "" } }, @@ -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": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Usuário", + "name": "Nome", "id": "" } }, @@ -1640,7 +1640,7 @@ "available": "", "tv": "Solicitações de TV", "movie": "Solicitações de filmes", - "total": "" + "total": "Total" }, "users": { "main": "Principais usuários", @@ -1682,7 +1682,7 @@ "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "", + "videoCodecs": "Codecs", "videoContainers": "", "videoResolutions": "" }, @@ -1912,7 +1912,7 @@ "unrecognizedLink": "" }, "layout": { - "title": "" + "title": "Layout" }, "background": { "title": "Antecedentes" @@ -2047,9 +2047,9 @@ "tools": { "label": "Ferramentas", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Criador" @@ -2213,7 +2213,7 @@ "label": "Data de expiração" }, "token": { - "label": "" + "label": "Token" } } } @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "" } } @@ -2607,7 +2607,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 c9d12cd85..d1bb5d5df 100644 --- a/packages/translation/src/lang/ro.json +++ b/packages/translation/src/lang/ro.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "", + "label": "Token", "description": "" } }, @@ -733,7 +733,7 @@ "field": { "name": "Nume", "size": "Mărime", - "creator": "" + "creator": "Creator" }, "action": { "upload": { @@ -1032,7 +1032,7 @@ "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": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Utilizator", + "name": "Nume", "id": "" } }, @@ -1640,7 +1640,7 @@ "available": "", "tv": "Cereri seriale TV", "movie": "Cereri filme", - "total": "" + "total": "Total" }, "users": { "main": "Top utilizatori", @@ -1897,7 +1897,7 @@ "label": "Nume" }, "isPublic": { - "label": "", + "label": "Public", "description": "" } }, @@ -1908,7 +1908,7 @@ "title": "", "section": { "general": { - "title": "", + "title": "General", "unrecognizedLink": "" }, "layout": { @@ -2047,9 +2047,9 @@ "tools": { "label": "Unelte", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2132,7 +2132,7 @@ "fieldsDisabledExternalProvider": "", "setting": { "general": { - "title": "", + "title": "General", "item": { "language": "", "board": "", @@ -2204,16 +2204,16 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { - "label": "" + "label": "Creator" }, "expirationDate": { "label": "Data expirării" }, "token": { - "label": "" + "label": "Token" } } } @@ -2222,7 +2222,7 @@ "back": "", "setting": { "general": { - "title": "", + "title": "General", "owner": "Proprietar", "ownerOfGroup": "", "ownerOfGroupDeleted": "" @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "" } } @@ -2594,7 +2594,7 @@ "create": { "label": "Creează" }, - "general": "", + "general": "General", "security": "Securitate", "board": "Planșe", "groups": { @@ -2607,7 +2607,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 160e884a1..d91ea0afb 100644 --- a/packages/translation/src/lang/ru.json +++ b/packages/translation/src/lang/ru.json @@ -14,7 +14,7 @@ "title": "Импорт данных", "subtitle": "Вы можете импортировать данные из существующего экземпляра Homarr.", "dropzone": { - "title": "Перетащите ZIP-файл сюда или нажмите для его выбора", + "title": "Перетащите ZIP-файл сюда или нажмите для выбора", "description": "Загруженный ZIP-файл будет обработан, и вы сможете выбрать, что хотите импортировать" }, "fileInfo": { @@ -44,7 +44,7 @@ "apps": "Приложения", "boards": "Панели", "integrations": "Интеграции", - "credentialUsers": "Учетные данные пользователя" + "credentialUsers": "Пользователи учетных данных" } }, "tokenModal": { @@ -276,7 +276,7 @@ }, "select": { "label": "Выбрать пользователя", - "notFound": "Пользователь не найден" + "notFound": "Пользователи не найдены" }, "transfer": { "label": "Выбрать нового владельца" @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "Администрирование", + "title": "Администратор", "item": { "admin": { "label": "Администратор", @@ -372,12 +372,12 @@ "description": "Разрешить участникам загружать медиафайлы" }, "view-all": { - "label": "Полный доступ к медиафайлам", - "description": "Разрешить участникам управлять и удалять любые медиафайлы" + "label": "Просмотр всех медиафайлов", + "description": "Разрешить участникам просматривать все медиафайлы" }, "full-all": { "label": "Полный доступ к медиафайлам", - "description": "Разрешить участникам управлять и удалять любыми медиафайлами" + "description": "Разрешить участникам управлять и удалять любые медиафайлы" } } }, @@ -385,8 +385,8 @@ "title": "Прочее", "item": { "view-logs": { - "label": "Просмотр логов", - "description": "Разрешить участникам просматривать логи" + "label": "Просмотр журналов", + "description": "Разрешить участникам просматривать журналы" } } }, @@ -409,8 +409,8 @@ } }, "memberNotice": { - "mixed": "Некоторыми участниками управляет внешняя система аутентификации, их нельзя настроить здесь", - "external": "Всеми участниками управляют внешние системы аутентификации, их нельзя настроить здесь" + "mixed": "Некоторые участники используют внешние системы аутентификации и не могут управляться здесь", + "external": "Все участники используют внешние системы аутентификации и не могут управляться здесь" }, "reservedNotice": { "message": "Эта группа зарезервирована для системных нужд и имеет ограничения на некоторые действия. " @@ -560,48 +560,48 @@ "page": { "list": { "title": "Интеграции", - "search": "Поиск интеграций", + "search": "", "noResults": { - "title": "Интеграции пока отсутствуют" + "title": "" } }, "create": { - "title": "Новая интеграция {name}", + "title": "", "notification": { "success": { - "title": "Интеграция создана", - "message": "Интеграция успешно создана" + "title": "Приложение создано", + "message": "" }, "error": { "title": "Не удалось создать", - "message": "Не удалось создать интеграцию" + "message": "" } } }, "edit": { - "title": "Редактирование интеграции {name}", + "title": "", "notification": { "success": { "title": "Изменения сохранены", - "message": "Интеграция успешно сохранена" + "message": "" }, "error": { "title": "Не удалось сохранить", - "message": "Не удалось сохранить интеграцию" + "message": "" } } }, "delete": { - "title": "Удаление интеграции", - "message": "Вы уверены, что хотите удалить интеграцию {name}?", + "title": "", + "message": "", "notification": { "success": { - "title": "Интеграция удалена", - "message": "Интеграция успешно удалена" + "title": "Приложение удалено", + "message": "" }, "error": { "title": "Не удалось удалить", - "message": "Не удалось удалить интеграцию" + "message": "" } } } @@ -615,105 +615,105 @@ } }, "action": { - "create": "Новая интеграция" + "create": "" }, "testConnection": { "action": { - "create": "Проверить подключение и создать", - "edit": "Проверить подключение и сохранить" + "create": "", + "edit": "" }, - "alertNotice": "Кнопка сохранения станет доступна после успешного подключения", + "alertNotice": "", "notification": { "success": { - "title": "Подключение установлено", - "message": "Подключение успешно установлено" + "title": "", + "message": "" }, "invalidUrl": { - "title": "Недействительный URL-адрес", - "message": "Указан недействительный URL-адрес" + "title": "Недействительный URL", + "message": "" }, "secretNotDefined": { - "title": "Отсутствуют учётные данные", - "message": "Не все учётные данные были предоставлены" + "title": "", + "message": "" }, "invalidCredentials": { - "title": "Неверные учётные данные", - "message": "Предоставлены неверные учётные данные" + "title": "", + "message": "" }, "commonError": { - "title": "Ошибка подключения", - "message": "Не удалось установить подключение" + "title": "", + "message": "" }, "badRequest": { - "title": "Неверный запрос", - "message": "Запрос сформирован некорректно" + "title": "", + "message": "" }, "unauthorized": { - "title": "Нет доступа", - "message": "Возможно, указаны неверные учётные данные" + "title": "", + "message": "" }, "forbidden": { - "title": "Доступ запрещён", - "message": "Возможно, недостаточно прав доступа" + "title": "", + "message": "" }, "notFound": { - "title": "Не найдено", - "message": "Возможно, указан неверный URL-адрес или путь" + "title": "", + "message": "" }, "internalServerError": { - "title": "Внутренняя ошибка сервера", - "message": "На сервере произошла ошибка" + "title": "", + "message": "" }, "serviceUnavailable": { - "title": "Сервис недоступен", - "message": "Сервер временно недоступен" + "title": "", + "message": "" }, "connectionAborted": { - "title": "Подключение прервано", - "message": "Подключение было прервано" + "title": "", + "message": "" }, "domainNotFound": { - "title": "Домен не найден", - "message": "Не удалось найти указанный домен" + "title": "", + "message": "" }, "connectionRefused": { - "title": "В подключении отказано", - "message": "В подключении было отказано" + "title": "", + "message": "" }, "invalidJson": { - "title": "Некорректный JSON", - "message": "Ответ сервера содержит некорректный JSON" + "title": "", + "message": "" }, "wrongPath": { - "title": "Неверный путь", - "message": "Возможно, указан неверный путь" + "title": "", + "message": "" } } }, "secrets": { - "title": "Данные авторизации", - "lastUpdated": "Последнее обновление: {date}", + "title": "", + "lastUpdated": "", "notSet": { - "label": "Значение не указано", - "tooltip": "Обязательное значение ещё не установлено" + "label": "", + "tooltip": "" }, - "secureNotice": "Эти данные нельзя будет просмотреть после создания", + "secureNotice": "", "reset": { - "title": "Сбросить данные авторизации", - "message": "Вы уверены, что хотите сбросить эти данные авторизации?" + "title": "", + "message": "" }, "noSecretsRequired": { - "segmentTitle": "Авторизация не требуется", - "text": "Для этой интеграции не требуются данные авторизации" + "segmentTitle": "", + "text": "" }, "kind": { "username": { "label": "Имя пользователя", - "newLabel": "Новое имя пользователя" + "newLabel": "" }, "apiKey": { - "label": "API-ключ", - "newLabel": "Новый API-ключ" + "label": "", + "newLabel": "" }, "password": { "label": "Пароль", @@ -722,14 +722,14 @@ } }, "permission": { - "use": "Подключение сторонних сервисов", - "interact": "Взаимодействие с подключенными сервисами", - "full": "Полное управление интеграциями" + "use": "", + "interact": "", + "full": "Полный доступ к интеграциям" } }, "media": { "plural": "Медиафайлы", - "search": "Поиск медиафайлов", + "search": "", "field": { "name": "Название", "size": "Размер", @@ -737,154 +737,154 @@ }, "action": { "upload": { - "label": "Загрузить медиафайл", - "file": "Выбрать файл", + "label": "", + "file": "", "notification": { "success": { - "message": "Медиафайл успешно загружен" + "message": "" }, "error": { - "message": "Не удалось загрузить медиафайл" + "message": "" } } }, "delete": { - "label": "Удалить медиафайл", - "description": "Вы уверены, что хотите удалить медиафайл ?", + "label": "", + "description": "", "notification": { "success": { - "message": "Медиафайл успешно удалён" + "message": "" }, "error": { - "message": "Не удалось удалить медиафайл" + "message": "" } } }, "copy": { - "label": "Копировать URL" + "label": "" } } }, "common": { - "beta": "Бета", + "beta": "", "error": "Ошибка", "action": { "add": "Добавить", "apply": "Применить", - "backToOverview": "Вернуться к обзору", + "backToOverview": "", "create": "Создать", "edit": "Редактировать", - "import": "Импортировать", + "import": "", "insert": "Вставить", "remove": "Удалить", "save": "Сохранить", "saveChanges": "Сохранить изменения", "cancel": "Отмена", "delete": "Удалить", - "discard": "Отменить", + "discard": "", "confirm": "Подтвердить", - "continue": "Продолжить", + "continue": "", "previous": "Назад", "next": "Далее", - "checkoutDocs": "Посмотреть документацию", - "checkLogs": "Проверить логи для подробностей", - "tryAgain": "Попробовать снова", - "loading": "Загрузка" + "checkoutDocs": "", + "checkLogs": "", + "tryAgain": "Повторить", + "loading": "" }, - "here": "здесь", + "here": "", "iconPicker": { - "label": "URL иконки", - "header": "Введите название или объекты для фильтрации иконок... Homarr найдёт для вас среди {countIcons} иконок." + "label": "", + "header": "" }, "colorScheme": { "options": { - "light": "Светлая", - "dark": "Тёмная" + "light": "", + "dark": "" } }, "information": { - "min": "Мин.", - "max": "Макс.", - "days": "Дней", - "hours": "Часов", - "minutes": "Минут" + "min": "", + "max": "", + "days": "", + "hours": "Часы", + "minutes": "Минуты" }, "notification": { "create": { - "success": "Создание успешно завершено", + "success": "Приложение создано", "error": "Не удалось создать" }, "delete": { - "success": "Удаление успешно завершено", + "success": "Приложение удалено", "error": "Не удалось удалить" }, "update": { - "success": "Изменения успешно применены", - "error": "Не удалось применить изменения" + "success": "Изменения сохранены", + "error": "Не удалось сохранить" }, "transfer": { - "success": "Передача успешно завершена", - "error": "Не удалось выполнить передачу" + "success": "", + "error": "" } }, "multiSelect": { - "placeholder": "Выберите одно или несколько значений" + "placeholder": "" }, "multiText": { - "placeholder": "Добавить ещё значения", - "addLabel": "Добавить {value}" + "placeholder": "", + "addLabel": "" }, "select": { - "placeholder": "Выберите значение", + "placeholder": "", "badge": { - "recommended": "Рекомендуется" + "recommended": "" } }, "userAvatar": { "menu": { - "switchToDarkMode": "Переключить на тёмную тему", - "switchToLightMode": "Переключить на светлую тему", - "management": "Управление", - "preferences": "Настройки", - "logout": "Выйти", + "switchToDarkMode": "", + "switchToLightMode": "", + "management": "", + "preferences": "Ваши настройки", + "logout": "", "login": "Вход", - "homeBoard": "Ваша домашняя панель", - "loggedOut": "Выход выполнен", - "updateAvailable": "Доступно {countUpdates} обновлений: {tag}" + "homeBoard": "", + "loggedOut": "", + "updateAvailable": "" } }, "dangerZone": "Опасная зона", - "noResults": "Ничего не найдено", + "noResults": "Результаты не найдены", "preview": { - "show": "Показать предпросмотр", - "hide": "Скрыть предпросмотр" + "show": "", + "hide": "" }, "zod": { "errors": { - "default": "Поле заполнено неверно", - "required": "Это поле обязательно для заполнения", + "default": "Недопустимое значение поля", + "required": "Это поле обязательно", "string": { - "startsWith": "Поле должно начинаться с {startsWith}", - "endsWith": "Поле должно заканчиваться на {endsWith}", - "includes": "Поле должно содержать {includes}", - "invalidEmail": "Поле должно содержать корректный email" + "startsWith": "Значение данного поля должно начинаться с {startsWith}", + "endsWith": "Значение данного поля должно заканчиваться на {endsWith}", + "includes": "Значение данного поля должно включать {includes}", + "invalidEmail": "" }, "tooSmall": { - "string": "Поле должно содержать не менее {minimum} символов", - "number": "Значение должно быть больше или равно {minimum}" + "string": "Данное поле должно содержать не менее {minimum} символов", + "number": "Значение данного поля должно быть больше или равно {minimum}" }, "tooBig": { - "string": "Поле должно содержать не более {maximum} символов", - "number": "Значение должно быть меньше или равно {maximum}" + "string": "Данное поле должно содержать не более {maximum} символов", + "number": "Значение этого поля должно быть меньше или равно {maximum}" }, "custom": { - "passwordsDoNotMatch": "Пароли не совпадают", - "passwordRequirements": "Пароль не соответствует требованиям", - "boardAlreadyExists": "Панель с таким именем уже существует", - "invalidFileType": "Неверный тип файла, ожидается {expected}", - "fileTooLarge": "Файл слишком большой, максимальный размер {maxSize}", - "invalidConfiguration": "Неверная конфигурация", - "groupNameTaken": "Имя группы уже занято" + "passwordsDoNotMatch": "", + "passwordRequirements": "", + "boardAlreadyExists": "", + "invalidFileType": "", + "fileTooLarge": "", + "invalidConfiguration": "", + "groupNameTaken": "" } } } @@ -892,12 +892,12 @@ "section": { "dynamic": { "action": { - "create": "Новый динамический элемент", - "remove": "Удалить динамический элемент" + "create": "", + "remove": "" }, "remove": { - "title": "Удалить динамический элемент", - "message": "Вы уверены, что хотите удалить этот динамический элемент? Содержимое будет перемещено в то же место в родительском элементе." + "title": "", + "message": "" } }, "category": { @@ -907,42 +907,42 @@ } }, "action": { - "create": "Новая категория", - "edit": "Переименовать категорию", - "remove": "Удалить категорию", + "create": "", + "edit": "", + "remove": "", "moveUp": "Переместить вверх", "moveDown": "Переместить вниз", - "createAbove": "Создать категорию выше", - "createBelow": "Создать категорию ниже" + "createAbove": "", + "createBelow": "" }, "create": { - "title": "Новая категория", - "submit": "Добавить категорию" + "title": "", + "submit": "" }, "remove": { - "title": "Удалить категорию", - "message": "Вы уверены, что хотите удалить категорию {name}?" + "title": "", + "message": "" }, "edit": { - "title": "Переименовать категорию", - "submit": "Переименовать категорию" + "title": "", + "submit": "" }, "menu": { "label": { - "create": "Новая категория", - "changePosition": "Изменить позицию" + "create": "", + "changePosition": "Изменить положение" } } } }, "item": { "action": { - "create": "Новый элемент", - "import": "Импортировать элемент", - "edit": "Редактировать элемент", - "moveResize": "Переместить / изменить размер", - "duplicate": "Дублировать элемент", - "remove": "Удалить элемент" + "create": "", + "import": "", + "edit": "", + "moveResize": "", + "duplicate": "", + "remove": "" }, "menu": { "label": { @@ -950,11 +950,11 @@ } }, "create": { - "title": "Выберите тип элемента", - "addToBoard": "Добавить на панель" + "title": "", + "addToBoard": "" }, "moveResize": { - "title": "Переместить / изменить размер элемента", + "title": "", "field": { "width": { "label": "Ширина" @@ -963,70 +963,70 @@ "label": "Высота" }, "xOffset": { - "label": "Смещение по X" + "label": "" }, "yOffset": { - "label": "Смещение по Y" + "label": "" } } }, "edit": { - "title": "Редактировать элемент", + "title": "", "advancedOptions": { - "label": "Расширенные настройки", - "title": "Расширенные настройки элемента" + "label": "", + "title": "" }, "field": { "integrations": { "label": "Интеграции" }, "customCssClasses": { - "label": "Пользовательские CSS классы" + "label": "" } } }, "remove": { - "title": "Удалить элемент", - "message": "Вы уверены, что хотите удалить этот элемент?" + "title": "", + "message": "" } }, "widget": { "app": { - "name": "Приложение", - "description": "Встраивает приложение в панель.", + "name": "", + "description": "", "option": { "appId": { - "label": "Выберите приложение" + "label": "" }, "openInNewTab": { "label": "Открывать в новой вкладке" }, "showTitle": { - "label": "Показывать название приложения" + "label": "" }, "showDescriptionTooltip": { - "label": "Показывать всплывающую подсказку с описанием" + "label": "" }, "pingEnabled": { - "label": "Включить простую проверку доступности" + "label": "" } }, "error": { "notFound": { - "label": "Нет приложения", - "tooltip": "Не выбрано корректное приложение" + "label": "", + "tooltip": "" } } }, "bookmarks": { - "name": "Закладки", - "description": "Отображает несколько ссылок на приложение", + "name": "", + "description": "", "option": { "title": { - "label": "Заголовок" + "label": "" }, "layout": { - "label": "Расположение", + "label": "Макет", "option": { "row": { "label": "Горизонтально" @@ -1035,22 +1035,22 @@ "label": "Вертикально" }, "grid": { - "label": "Сетка" + "label": "" } } }, "items": { - "label": "Закладки", - "add": "Добавить закладку" + "label": "", + "add": "" } } }, "dnsHoleSummary": { - "name": "Сводка DNS-фильтра", - "description": "Отображает сводную информацию о вашем DNS-фильтре", + "name": "", + "description": "", "option": { "layout": { - "label": "Расположение", + "label": "Макет", "option": { "row": { "label": "Горизонтально" @@ -1059,31 +1059,31 @@ "label": "Вертикально" }, "grid": { - "label": "Сетка" + "label": "" } } }, "usePiHoleColors": { - "label": "Использовать цвета Pi-hole" + "label": "" } }, "error": { - "internalServerError": "Не удалось получить сводку DNS-фильтра", - "integrationsDisconnected": "Нет данных, все интеграции отключены" + "internalServerError": "", + "integrationsDisconnected": "" }, "data": { "adsBlockedToday": "заблокировано сегодня", "adsBlockedTodayPercentage": "заблокировано сегодня", - "dnsQueriesToday": "DNS-запросов сегодня", - "domainsBeingBlocked": "Доменов в списке блокировки" + "dnsQueriesToday": "запросов сегодня", + "domainsBeingBlocked": "" } }, "dnsHoleControls": { - "name": "Управление DNS-фильтром", - "description": "Управляйте PiHole или AdGuard прямо с вашей панели", + "name": "", + "description": "Управляйте PiHole или AdGuard с панели управления", "option": { "layout": { - "label": "Расположение", + "label": "Макет", "option": { "row": { "label": "Горизонтально" @@ -1092,81 +1092,81 @@ "label": "Вертикально" }, "grid": { - "label": "Сетка" + "label": "" } } }, "showToggleAllButtons": { - "label": "Показывать кнопки управления защитой" + "label": "" } }, "error": { - "internalServerError": "Не удалось управлять DNS-фильтром" + "internalServerError": "" }, "controls": { - "enableAll": "Включить защиту", - "disableAll": "Отключить защиту", - "setTimer": "Установить таймер", + "enableAll": "", + "disableAll": "", + "setTimer": "", "set": "Установить", "enabled": "Включено", "disabled": "Отключено", - "processing": "Обработка", - "disconnected": "Отключено", + "processing": "", + "disconnected": "", "hours": "Часы", "minutes": "Минуты", - "unlimited": "Оставить пустым для неограниченного времени" + "unlimited": "" } }, "clock": { - "name": "Дата и время", + "name": "", "description": "Отображает текущую дату и время.", "option": { "customTitleToggle": { - "label": "Настроить отображение заголовка/города", - "description": "Показывать настраиваемый заголовок или название города/страны над часами." + "label": "", + "description": "" }, "customTitle": { - "label": "Заголовок" + "label": "" }, "is24HourFormat": { - "label": "24-часовой формат", - "description": "Использовать 24-часовой формат вместо 12-часового" + "label": "", + "description": "" }, "showSeconds": { - "label": "Показывать секунды" + "label": "" }, "useCustomTimezone": { - "label": "Использовать другой часовой пояс" + "label": "" }, "timezone": { "label": "Часовой пояс", - "description": "Выберите часовой пояс согласно стандарту IANA" + "description": "" }, "showDate": { - "label": "Показывать дату" + "label": "" }, "dateFormat": { - "label": "Формат даты", - "description": "Как должна выглядеть дата" + "label": "", + "description": "" } } }, "notebook": { - "name": "Заметки", - "description": "Простой виджет заметок с поддержкой markdown", + "name": "Блокнот", + "description": "", "option": { "showToolbar": { - "label": "Показывать панель инструментов для редактирования markdown" + "label": "Показывать панель инструментов для работы с Markdown" }, "allowReadOnlyCheck": { - "label": "Разрешить отмечать пункты в режиме чтения" + "label": "Разрешить отметки в режиме только для чтения" }, "content": { - "label": "Содержимое заметок" + "label": "Содержимое блокнота" } }, "controls": { - "bold": "Жирный", + "bold": "Полужирный", "italic": "Курсив", "strikethrough": "Зачёркнутый", "underline": "Подчёркнутый", @@ -1175,16 +1175,16 @@ "code": "Код", "clear": "Очистить форматирование", "heading": "Заголовок {level}", - "align": "Выравнивание текста: {position}", + "align": "Выровнять текст: {position}", "blockquote": "Цитата", "horizontalLine": "Горизонтальная линия", "bulletList": "Маркированный список", "orderedList": "Нумерованный список", - "checkList": "Список с чекбоксами", + "checkList": "Список с галочками", "increaseIndent": "Увеличить отступ", "decreaseIndent": "Уменьшить отступ", "link": "Ссылка", - "unlink": "Удалить ссылку", + "unlink": "Убрать ссылку", "image": "Вставить изображение", "addTable": "Добавить таблицу", "deleteTable": "Удалить таблицу", @@ -1198,13 +1198,13 @@ "deleteRow": "Удалить строку" }, "align": { - "left": "По левому краю", + "left": "Слева", "center": "По центру", - "right": "По правому краю" + "right": "Справа" }, "popover": { "clearColor": "Очистить цвет", - "source": "Источник", + "source": "Исходный код", "widthPlaceholder": "Значение в % или пикселях", "columns": "Столбцы", "rows": "Строки", @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "Встраиваемый фрейм", "description": "Встраивает любой контент из интернета. Некоторые сайты могут ограничивать доступ.", "option": { "embedUrl": { @@ -1245,31 +1245,31 @@ } }, "error": { - "noUrl": "URL для iFrame не указан", - "noBrowerSupport": "Ваш браузер не поддерживает iframes. Пожалуйста, обновите браузер." + "noUrl": "", + "noBrowerSupport": "Ваш браузер не поддерживает встраиваемые фреймы. Пожалуйста, обновите браузер." } }, "smartHome-entityState": { - "name": "Состояние объекта", - "description": "Отображает состояние объекта и позволяет управлять им при необходимости", + "name": "", + "description": "", "option": { "entityId": { "label": "ID объекта" }, "displayName": { - "label": "Отображаемое имя" + "label": "" }, "entityUnit": { - "label": "Единица измерения" + "label": "" }, "clickable": { - "label": "Кликабельный" + "label": "" } } }, "smartHome-executeAutomation": { - "name": "Запуск автоматизации", - "description": "Запускает автоматизацию одним нажатием", + "name": "", + "description": "", "option": { "displayName": { "label": "Отображаемое имя" @@ -1279,26 +1279,26 @@ } }, "spotlightAction": { - "run": "Запустить {name}" + "run": "" } }, "calendar": { "name": "Календарь", - "description": "Отображает события из ваших интеграций в календаре в определённом временном периоде", + "description": "", "option": { "releaseType": { "label": "Тип релиза Radarr", "options": { - "inCinemas": "В кинотеатрах", - "digitalRelease": "Цифровой релиз", - "physicalRelease": "Физический релиз" + "inCinemas": "", + "digitalRelease": "", + "physicalRelease": "" } }, "filterPastMonths": { - "label": "Начиная с" + "label": "" }, "filterFutureMonths": { - "label": "Заканчивая" + "label": "" } } }, @@ -1307,24 +1307,24 @@ "description": "Отображает текущую информацию о погоде для указанного местоположения.", "option": { "isFormatFahrenheit": { - "label": "Температура в градусах Фаренгейта" + "label": "" }, "location": { "label": "Местоположение" }, "showCity": { - "label": "Показывать город" + "label": "" }, "hasForecast": { - "label": "Показывать прогноз" + "label": "" }, "forecastDayCount": { - "label": "Количество дней прогноза", - "description": "Если виджет недостаточно широкий, будет показано меньше дней" + "label": "", + "description": "" }, "dateFormat": { - "label": "Формат даты", - "description": "Как должна отображаться дата" + "label": "", + "description": "" } }, "kind": { @@ -1332,9 +1332,9 @@ "mainlyClear": "Преимущественно ясно", "fog": "Туман", "drizzle": "Морось", - "freezingDrizzle": "Изморозь", + "freezingDrizzle": "Ледяная морось", "rain": "Дождь", - "freezingRain": "Моросящий дождь", + "freezingRain": "Ледяной дождь", "snowFall": "Снегопад", "snowGrains": "Снежная крупа", "rainShowers": "Ливень", @@ -1345,28 +1345,28 @@ } }, "indexerManager": { - "name": "Состояние индексаторов", - "description": "Статус ваших индексаторов", + "name": "Состояние менеджера индексации", + "description": "", "option": { "openIndexerSiteInNewTab": { - "label": "Открывать сайт индексатора в новой вкладке" + "label": "" } }, - "title": "Индексаторы", + "title": "Менеджер индексации", "testAll": "Проверить все", "error": { - "internalServerError": "Не удалось получить статус индексаторов" + "internalServerError": "" } }, "healthMonitoring": { "name": "Мониторинг состояния системы", - "description": "Отображает информацию о состоянии и работоспособности вашей системы (систем).", + "description": "Отображает информацию о состоянии и работоспособности ваших систем.", "option": { "fahrenheit": { "label": "Температура CPU в градусах Фаренгейта" }, "cpu": { - "label": "Показывать информацию о процессоре" + "label": "Показывать информацию о CPU" }, "memory": { "label": "Показать информацию о памяти" @@ -1376,41 +1376,41 @@ } }, "popover": { - "information": "Информация", - "processor": "Процессор: {cpuModelName}", - "memory": "Память: {memory}GiB", - "memoryAvailable": "Доступно: {memoryAvailable}GiB ({percent}%)", - "version": "Версия: {version}", - "uptime": "Время работы: {months} мес., {days} дн., {hours} ч., {minutes} мин.", - "loadAverage": "Средняя нагрузка:", - "minute": "1 минута", - "minutes": "{count} минут", - "used": "Использовано", + "information": "", + "processor": "", + "memory": "", + "memoryAvailable": "", + "version": "", + "uptime": "", + "loadAverage": "", + "minute": "", + "minutes": "", + "used": "", "available": "Доступно", - "lastSeen": "Последнее обновление: {lastSeen}" + "lastSeen": "" }, "memory": {}, "error": { - "internalServerError": "Не удалось получить данные о состоянии системы" + "internalServerError": "" } }, "common": { "location": { - "query": "Город / Почтовый индекс", - "latitude": "Широта", - "longitude": "Долгота", - "disabledTooltip": "Пожалуйста, введите город или почтовый индекс", - "unknownLocation": "Неизвестное местоположение", + "query": "", + "latitude": "", + "longitude": "", + "disabledTooltip": "", + "unknownLocation": "", "search": "Поиск", "table": { "header": { - "city": "Город", - "country": "Страна", - "coordinates": "Координаты", - "population": "Население" + "city": "", + "country": "", + "coordinates": "", + "population": "" }, "action": { - "select": "Выбрать {city}, {countryCode}" + "select": "" }, "population": { "fallback": "Неизвестно" @@ -1418,40 +1418,40 @@ } }, "integration": { - "noData": "Интеграции не найдены", - "description": "Нажмите , чтобы создать новую интеграцию" + "noData": "", + "description": "" }, "app": { "noData": "Приложения не найдены", - "description": "Нажмите , чтобы создать новое приложение" + "description": "" }, "error": { - "noIntegration": "Интеграция не выбрана", - "noData": "Данные интеграции недоступны" + "noIntegration": "", + "noData": "" }, "option": {} }, "video": { - "name": "Видеотрансляция", - "description": "Встраивает видео с камеры или трансляцию с веб-сайта", + "name": "Видеопоток", + "description": "Встраивание видеопотока или видео с камеры или веб-сайта", "option": { "feedUrl": { - "label": "URL трансляции" + "label": "URL потока" }, "hasAutoPlay": { "label": "Автовоспроизведение", - "description": "Автовоспроизведение работает только при отключенном звуке из-за ограничений браузера" + "description": "" }, "isMuted": { - "label": "Без звука" + "label": "" }, "hasControls": { - "label": "Показывать элементы управления" + "label": "" } }, "error": { - "noUrl": "URL видео не указан", - "forYoutubeUseIframe": "Для видео с YouTube используйте виджет iframe" + "noUrl": "", + "forYoutubeUseIframe": "" } }, "mediaServer": { @@ -1459,175 +1459,175 @@ "description": "Отображает текущие сеансы воспроизведения на медиасерверах", "option": {}, "items": { - "user": "", - "name": "", + "user": "Пользователь", + "name": "Название", "id": "" } }, "downloads": { - "name": "Загрузки", - "description": "Позволяет просматривать и управлять загрузками как из торрент-клиентов, так и из Usenet-клиентов.", + "name": "", + "description": "", "option": { "columns": { - "label": "Отображаемые столбцы" + "label": "" }, "enableRowSorting": { - "label": "Включить сортировку элементов" + "label": "" }, "defaultSort": { - "label": "Столбец для сортировки по умолчанию" + "label": "" }, "descendingDefaultSort": { - "label": "Обратная сортировка" + "label": "" }, "showCompletedUsenet": { - "label": "Показывать завершённые задачи Usenet" + "label": "" }, "showCompletedTorrent": { - "label": "Показывать завершённые торренты" + "label": "" }, "activeTorrentThreshold": { - "label": "Скрывать завершённые торренты ниже этого порога (в КиБ/с)" + "label": "" }, "categoryFilter": { - "label": "Фильтр по категориям/меткам" + "label": "" }, "filterIsWhitelist": { - "label": "Использовать фильтр как белый список" + "label": "" }, "applyFilterToRatio": { - "label": "Использовать фильтр при расчёте рейтинга" + "label": "" } }, "errors": { - "noColumns": "Выберите столбцы в настройках элементов", - "noCommunications": "Не удалось загрузить данные из интеграции" + "noColumns": "", + "noCommunications": "" }, "items": { "actions": { - "columnTitle": "Управление" + "columnTitle": "" }, "added": { - "columnTitle": "Добавлено", + "columnTitle": "", "detailsTitle": "Дата добавления" }, "category": { - "columnTitle": "Дополнительно", - "detailsTitle": "Категории (или дополнительная информация)" + "columnTitle": "", + "detailsTitle": "" }, "downSpeed": { "columnTitle": "Загрузка", "detailsTitle": "Скорость загрузки" }, "index": { - "columnTitle": "#", - "detailsTitle": "Текущий индекс в клиенте" + "columnTitle": "", + "detailsTitle": "" }, "id": { - "columnTitle": "Id" + "columnTitle": "" }, "integration": { "columnTitle": "Интеграция" }, "name": { - "columnTitle": "Название задачи" + "columnTitle": "" }, "progress": { "columnTitle": "Прогресс", - "detailsTitle": "Прогресс загрузки" + "detailsTitle": "" }, "ratio": { "columnTitle": "Рейтинг", - "detailsTitle": "Рейтинг торрента (получено/отдано)" + "detailsTitle": "" }, "received": { - "columnTitle": "Всего загружено", - "detailsTitle": "Всего загружено" + "columnTitle": "", + "detailsTitle": "" }, "sent": { - "columnTitle": "Всего отдано", - "detailsTitle": "Всего отдано" + "columnTitle": "", + "detailsTitle": "" }, "size": { - "columnTitle": "Размер файла", - "detailsTitle": "Общий размер выбранного/файлов" + "columnTitle": "", + "detailsTitle": "" }, "state": { "columnTitle": "Состояние", - "detailsTitle": "Состояние задачи" + "detailsTitle": "" }, "time": { - "columnTitle": "Время завершения", - "detailsTitle": "Время с/до завершения" + "columnTitle": "", + "detailsTitle": "" }, "type": { - "columnTitle": "Тип", - "detailsTitle": "Тип клиента загрузки" + "columnTitle": "", + "detailsTitle": "" }, "upSpeed": { "columnTitle": "Отдача", - "detailsTitle": "Скорость отдачи" + "detailsTitle": "" } }, "states": { "downloading": "Загрузка", - "queued": "В очереди", + "queued": "Очередь", "paused": "Приостановлено", "completed": "Завершено", - "failed": "Ошибка", - "processing": "Обработка", - "leeching": "Скачивание", - "stalled": "Простаивает", + "failed": "", + "processing": "", + "leeching": "", + "stalled": "", "unknown": "Неизвестно", - "seeding": "Раздача" + "seeding": "" }, "actions": { "clients": { - "modalTitle": "Клиенты", - "pause": "Приостановить все клиенты/задачи", - "resume": "Возобновить все клиенты/задачи" + "modalTitle": "", + "pause": "", + "resume": "" }, "client": { - "pause": "Приостановить клиент", - "resume": "Возобновить клиент" + "pause": "", + "resume": "" }, "item": { - "pause": "Приостановить задачу", - "resume": "Возобновить задачу", + "pause": "", + "resume": "", "delete": { - "title": "Удалить задачу", - "modalTitle": "Вы уверены, что хотите удалить эту задачу?", - "entry": "Удалить запись", - "entryAndFiles": "Удалить запись и файл(ы)" + "title": "", + "modalTitle": "", + "entry": "", + "entryAndFiles": "" } } }, - "globalRatio": "Общий рейтинг" + "globalRatio": "" }, "mediaRequests-requestList": { - "name": "Запросы медиаконтента", - "description": "Список всех запросов на добавление медиаконтента из вашего экземпляра Overseerr или Jellyseerr", + "name": "", + "description": "Просмотр списка всех запросов медиаконтента из вашего экземпляра Overseerr или Jellyseerr", "option": { "linksTargetNewTab": { "label": "Открывать ссылки в новой вкладке" } }, "pending": { - "approve": "Одобрить запрос", - "approving": "Одобрение запроса...", - "decline": "Отклонить запрос" + "approve": "", + "approving": "", + "decline": "" }, "availability": { "unknown": "Неизвестно", - "pending": "В ожидании", - "processing": "Обработка", - "partiallyAvailable": "Частично доступно", + "pending": "", + "processing": "", + "partiallyAvailable": "Частично", "available": "Доступно" }, - "toBeDetermined": "Будет определено позже" + "toBeDetermined": "" }, "mediaRequests-requestStats": { - "name": "Статистика запросов медиаконтента", + "name": "", "description": "Статистика по запросам медиаконтента", "option": {}, "titles": { @@ -1635,28 +1635,28 @@ "main": "Статистика медиаконтента", "approved": "Уже одобрено", "pending": "Ожидает одобрения", - "processing": "Обрабатывается", - "declined": "Уже отклонено", - "available": "Уже доступно", + "processing": "", + "declined": "", + "available": "", "tv": "Запросы сериалов", "movie": "Запросы фильмов", "total": "Всего" }, "users": { "main": "Топ пользователей", - "requests": "Запросы" + "requests": "" } } }, "mediaTranscoding": { - "name": "Перекодирование медиа", - "description": "Статистика, текущая очередь и состояние обработчиков перекодирования медиафайлов", + "name": "", + "description": "", "option": { "defaultView": { "label": "Вид по умолчанию" }, "queuePageSize": { - "label": "Размер страницы очереди" + "label": "" } }, "tab": { @@ -1664,24 +1664,24 @@ "queue": "Очередь", "statistics": "Статистика" }, - "currentIndex": "{start}-{end} из {total}", + "currentIndex": "", "healthCheck": { - "title": "Проверка работоспособности", - "queued": "В очереди", + "title": "", + "queued": "Очередь", "status": { "healthy": "Исправно", - "unhealthy": "Неисправно" + "unhealthy": "Неисправен" } }, "panel": { "statistics": { "empty": "Пусто", - "transcodes": "Перекодировано", - "transcodesCount": "Перекодировано: {value}", - "healthChecksCount": "Проверок: {value}", - "filesCount": "Файлов: {value}", - "savedSpace": "Сэкономлено места: {value}", - "healthChecks": "Проверки работоспособности", + "transcodes": "Перекодирования", + "transcodesCount": "", + "healthChecksCount": "", + "filesCount": "", + "savedSpace": "", + "healthChecks": "", "videoCodecs": "Кодеки", "videoContainers": "Контейнеры", "videoResolutions": "Разрешения" @@ -1693,7 +1693,7 @@ "eta": "Осталось", "progress": "Прогресс", "transcode": "Перекодирование", - "healthCheck": "Проверка" + "healthCheck": "" } }, "queue": { @@ -1702,37 +1702,37 @@ "file": "Файл", "size": "Размер", "transcode": "Перекодирование", - "healthCheck": "Проверка" + "healthCheck": "" } } } }, "rssFeed": { - "name": "RSS-ленты", - "description": "Отслеживание и отображение одной или нескольких RSS, ATOM или JSON-лент", + "name": "", + "description": "", "option": { "feedUrls": { - "label": "URL-адреса лент" + "label": "" }, "enableRtl": { - "label": "Включить режим RTL" + "label": "" }, "textLinesClamp": { - "label": "Ограничение строк описания" + "label": "" }, "maximumAmountPosts": { - "label": "Максимальное количество записей" + "label": "" } } } }, "widgetPreview": { "toggle": { - "enabled": "Режим редактирования включён", - "disabled": "Режим редактирования отключён" + "enabled": "", + "disabled": "" }, "dimensions": { - "title": "Изменить размеры" + "title": "" } }, "board": { @@ -1740,53 +1740,53 @@ "edit": { "notification": { "success": { - "title": "Изменения применены", - "message": "Панель успешно сохранена" + "title": "Изменения сохранены", + "message": "" }, "error": { - "title": "Не удалось применить изменения", - "message": "Не удалось сохранить панель" + "title": "Не удалось сохранить", + "message": "" } }, "confirmLeave": { - "title": "Несохранённые изменения", - "message": "У вас есть несохранённые изменения. Вы уверены, что хотите выйти?" + "title": "", + "message": "" } }, "oldImport": { - "label": "Импорт из версии Homarr до 1.0.0", + "label": "", "notification": { "success": { - "title": "Импорт успешно выполнен", - "message": "Панель успешно импортирована" + "title": "", + "message": "" }, "error": { - "title": "Импорт не удался", - "message": "Не удалось импортировать панель, проверьте логи для дополнительной информации" + "title": "", + "message": "" } }, "form": { "file": { - "label": "Выберите JSON-файл", - "invalidError": "Недействительный файл конфигурации" + "label": "", + "invalidError": "" }, "apps": { "label": "Приложения", "avoidDuplicates": { - "label": "Избегать дубликатов", - "description": "Игнорирует приложения, для которых уже существует приложение с тем же URL-адресом" + "label": "", + "description": "" }, "onlyImportApps": { - "label": "Импортировать только приложения", - "description": "Добавляет только приложения, панель нужно будет создать заново вручную" + "label": "", + "description": "" } }, "name": { - "label": "Название панели" + "label": "" }, "screenSize": { - "label": "Размер экрана", - "description": "В версиях до 1.0 существовало три разных режима, поэтому вы могли выбрать количество столбцов для каждого размера экрана.", + "label": "", + "description": "", "option": { "sm": "Маленький", "md": "Средний", @@ -1794,16 +1794,16 @@ } }, "sidebarBehavior": { - "label": "Поведение боковых панелей", - "description": "Боковые панели были удалены в версии 1.0, вы можете выбрать, что должно произойти с элементами внутри них.", + "label": "", + "description": "", "option": { "lastSection": { - "label": "Последний раздел", - "description": "Боковая панель будет отображаться под последним разделом" + "label": "", + "description": "" }, "removeItems": { - "label": "Удалить элементы", - "description": "Элементы, содержащиеся в боковой панели, будут удалены" + "label": "", + "description": "" } } } @@ -1812,64 +1812,64 @@ }, "field": { "pageTitle": { - "label": "Заголовок страницы" + "label": "" }, "metaTitle": { - "label": "Мета-заголовок" + "label": "" }, "logoImageUrl": { - "label": "URL изображения логотипа" + "label": "" }, "faviconImageUrl": { - "label": "URL изображения favicon" + "label": "" }, "backgroundImageUrl": { - "label": "URL фонового изображения" + "label": "" }, "backgroundImageAttachment": { - "label": "Поведение фонового изображения", + "label": "Закрепление фонового изображения", "option": { "fixed": { - "label": "Фиксированное", - "description": "Фон остаётся на одном месте при прокрутке." + "label": "", + "description": "" }, "scroll": { - "label": "Прокручиваемое", - "description": "Фон прокручивается вместе со страницей." + "label": "", + "description": "" } } }, "backgroundImageRepeat": { - "label": "Повторение фонового изображения", + "label": "", "option": { "repeat": { - "label": "Повторять", - "description": "Изображение повторяется столько раз, сколько необходимо для заполнения всей области фона." + "label": "", + "description": "" }, "no-repeat": { - "label": "Не повторять", - "description": "Изображение не повторяется и может не заполнить всё пространство." + "label": "", + "description": "" }, "repeat-x": { - "label": "Повторять по горизонтали", - "description": "То же, что и 'Повторять', но только по горизонтальной оси." + "label": "", + "description": "" }, "repeat-y": { - "label": "Повторять по вертикали", - "description": "То же, что и 'Повторять', но только по вертикальной оси." + "label": "", + "description": "" } } }, "backgroundImageSize": { - "label": "Размер фонового изображения", + "label": "Повторение фонового изображения", "option": { "cover": { - "label": "Заполнение", - "description": "Масштабирует изображение с сохранением пропорций так, чтобы оно целиком заполнило область, обрезая излишки." + "label": "", + "description": "" }, "contain": { - "label": "Уместить", - "description": "Масштабирует изображение с сохранением пропорций так, чтобы оно полностью поместилось в область без обрезки." + "label": "", + "description": "" } } }, @@ -1880,61 +1880,61 @@ "label": "Дополнительный цвет" }, "opacity": { - "label": "Прозрачность" + "label": "" }, "customCss": { - "label": "Пользовательский CSS для этой панели", - "description": "Дополнительная настройка вашей панели с помощью CSS, рекомендуется только опытным пользователям", + "label": "", + "description": "Дополнительная настройка панели управления с помощью CSS (рекомендуется только опытным пользователям)", "customClassesAlert": { - "title": "Пользовательские классы", - "description": "Вы можете добавлять пользовательские классы к элементам панели в расширенных настройках каждого элемента и использовать их в пользовательском CSS выше." + "title": "", + "description": "" } }, "columnCount": { - "label": "Количество столбцов" + "label": "" }, "name": { "label": "Название" }, "isPublic": { - "label": "Публичная", - "description": "Публичные панели доступны всем, даже без учётной записи." + "label": "Публичный", + "description": "" } }, "content": { - "metaTitle": "Панель {boardName}" + "metaTitle": "" }, "setting": { - "title": "Настройки панели {boardName}", + "title": "", "section": { "general": { - "title": "Общие", - "unrecognizedLink": "Указанная ссылка не распознана и не будет показана в предпросмотре, но может всё ещё работать." + "title": "Основное", + "unrecognizedLink": "" }, "layout": { - "title": "Компоновка" + "title": "Макет" }, "background": { "title": "Фон" }, "color": { - "title": "Цвета" + "title": "" }, "customCss": { - "title": "Пользовательский CSS" + "title": "" }, "access": { - "title": "Управление доступом", + "title": "", "permission": { "item": { "view": { "label": "Просмотр панели" }, "modify": { - "label": "Изменение панели" + "label": "" }, "full": { - "label": "Полный доступ" + "label": "" } } } @@ -1943,41 +1943,41 @@ "title": "Опасная зона", "action": { "rename": { - "label": "Переименовать панель", - "description": "Изменение названия нарушит все существующие ссылки на эту панель.", - "button": "Изменить название", + "label": "", + "description": "", + "button": "", "modal": { - "title": "Переименовать панель" + "title": "" } }, "visibility": { - "label": "Изменить видимость панели", + "label": "", "description": { - "public": "Эта панель сейчас публичная.", - "private": "Эта панель сейчас приватная." + "public": "", + "private": "" }, "button": { - "public": "Сделать приватной", - "private": "Сделать публичной" + "public": "", + "private": "" }, "confirm": { "public": { - "title": "Сделать панель приватной", - "description": "Вы уверены, что хотите сделать эту панель приватной? Панель будет скрыта от публичного доступа. Ссылки для гостевых пользователей перестанут работать." + "title": "", + "description": "" }, "private": { - "title": "Сделать панель публичной", - "description": "Вы уверены, что хотите сделать эту панель публичной? Панель станет доступной для всех." + "title": "", + "description": "" } } }, "delete": { - "label": "Удалить эту панель", - "description": "После удаления панели восстановление будет невозможно. Пожалуйста, будьте уверены в своём решении.", - "button": "Удалить эту панель", + "label": "", + "description": "", + "button": "", "confirm": { - "title": "Удалить панель", - "description": "Вы уверены, что хотите удалить эту панель? Действие навсегда удалит панель и всё её содержимое." + "title": "Удаление панели", + "description": "" } } } @@ -1987,46 +1987,46 @@ "error": { "noBoard": { "title": "Добро пожаловать в Homarr", - "description": "Современная панель управления для удобного доступа к вашим приложениям и сервисам.", + "description": "", "link": "Создать первую панель", - "notice": "Чтобы убрать эту страницу, создайте панель и установите её как домашнюю" + "notice": "" }, "notFound": { - "title": "Панель не найдена", - "description": "Указанная панель не найдена или у вас нет к ней доступа.", + "title": "", + "description": "", "link": "Просмотр всех панелей", - "notice": "Проверьте ссылку или обратитесь к администратору, если считаете, что она должна быть доступна" + "notice": "" }, "homeBoard": { - "title": "Нет домашней панели", + "title": "", "admin": { - "description": "Домашняя панель для сервера ещё не установлена.", - "link": "Настроить общесерверную домашнюю панель", - "notice": "Чтобы убрать эту страницу для всех пользователей, установите домашнюю панель для сервера" + "description": "", + "link": "", + "notice": "" }, "user": { - "description": "Вы ещё не установили домашнюю панель.", - "link": "Настроить вашу домашнюю панель", - "notice": "Чтобы убрать эту страницу, укажите домашнюю панель в настройках" + "description": "", + "link": "", + "notice": "" }, "anonymous": { - "description": "Администратор сервера ещё не установил домашнюю панель.", - "link": "Просмотр публичных панелей", - "notice": "Чтобы убрать эту страницу, попросите администратора сервера установить домашнюю панель" + "description": "", + "link": "", + "notice": "" } } } }, "management": { - "metaTitle": "Управление", + "metaTitle": "", "title": { - "morning": "Доброе утро, {username}", - "afternoon": "Добрый день, {username}", - "evening": "Добрый вечер, {username}" + "morning": "", + "afternoon": "", + "evening": "" }, "notFound": { - "title": "Не найдено", - "text": "Запрошенный ресурс не найден" + "title": "", + "text": "" }, "navbar": { "items": { @@ -2048,9 +2048,9 @@ "label": "Инструменты", "items": { "docker": "Docker", - "logs": "Логи", + "logs": "", "api": "API", - "tasks": "Задачи" + "tasks": "" } }, "settings": "Настройки", @@ -2058,9 +2058,9 @@ "label": "Справка", "items": { "documentation": "Документация", - "submitIssue": "Сообщить о проблеме", + "submitIssue": "", "discord": "Сообщество Discord", - "sourceCode": "Исходный код" + "sourceCode": "" } }, "about": "О программе" @@ -2078,41 +2078,41 @@ }, "statisticLabel": { "boards": "Панели", - "resources": "Ресурсы", - "authentication": "Аутентификация", - "authorization": "Авторизация" + "resources": "", + "authentication": "", + "authorization": "" } }, "board": { "title": "Ваши панели", "action": { "new": { - "label": "Новая панель" + "label": "" }, "open": { - "label": "Открыть панель" + "label": "" }, "settings": { "label": "Настройки" }, "setHomeBoard": { - "label": "Сделать домашней панелью", + "label": "", "badge": { "label": "Главная", - "tooltip": "Эта панель будет показываться как ваша домашняя панель" + "tooltip": "" } }, "delete": { "label": "Удалить навсегда", "confirm": { "title": "Удаление панели", - "description": "Вы уверены, что хотите удалить панель {name}?" + "description": "" } } }, "visibility": { - "public": "Эта панель публичная", - "private": "Эта панель приватная" + "public": "", + "private": "" }, "modal": { "createBoard": { @@ -2125,16 +2125,16 @@ } }, "media": { - "includeFromAllUsers": "Включая медиафайлы от всех пользователей" + "includeFromAllUsers": "" }, "user": { - "back": "Вернуться к пользователям", - "fieldsDisabledExternalProvider": "Некоторые поля отключены, так как ими управляет внешняя система аутентификации.", + "back": "", + "fieldsDisabledExternalProvider": "", "setting": { "general": { - "title": "Общие", + "title": "Основное", "item": { - "language": "Язык и регион", + "language": "", "board": "Домашняя панель", "firstDayOfWeek": "Первый день недели", "accessibility": "Специальные возможности" @@ -2152,25 +2152,25 @@ "title": "Пользователи" }, "edit": { - "metaTitle": "Редактирование пользователя {username}" + "metaTitle": "" }, "create": { "metaTitle": "Создание пользователя", - "title": "Создать нового пользователя", + "title": "", "step": { "personalInformation": { - "label": "Личные данные" + "label": "" }, "security": { "label": "Безопасность" }, "groups": { "label": "Группы", - "title": "Выберите все группы, в которые должен входить пользователь", - "description": "Группа {everyoneGroup} назначается всем пользователям и не может быть удалена." + "title": "", + "description": "" }, "review": { - "label": "Проверка" + "label": "" }, "completed": { "title": "Пользователь создан" @@ -2180,22 +2180,22 @@ } }, "action": { - "createAnother": "Создать ещё одного пользователя", - "back": "Вернуться к списку пользователей" + "createAnother": "", + "back": "" } }, "invite": { "title": "Управление приглашениями", "action": { "new": { - "title": "Новое приглашение", + "title": "", "description": "После истечения срока действия приглашение станет недействительным, и получатель не сможет создать учётную запись." }, "copy": { - "title": "Копировать приглашение", - "description": "Приглашение сгенерировано. После закрытия этого окна вы больше не сможете скопировать эту ссылку. Если вы передумали приглашать пользователя, вы можете удалить это приглашение в любое время.", - "link": "Ссылка для приглашения", - "button": "Копировать и закрыть" + "title": "", + "description": "", + "link": "Ссылка приглашения", + "button": "" }, "delete": { "title": "Удалить приглашение", @@ -2210,7 +2210,7 @@ "label": "Создатель" }, "expirationDate": { - "label": "Срок действия" + "label": "Дата истечения срока" }, "token": { "label": "Токен" @@ -2219,23 +2219,23 @@ } }, "group": { - "back": "Вернуться к группам", + "back": "", "setting": { "general": { - "title": "Общие", + "title": "Основное", "owner": "Владелец", - "ownerOfGroup": "Владелец этой группы", - "ownerOfGroupDeleted": "Владелец этой группы был удалён. В данный момент у группы нет владельца." + "ownerOfGroup": "", + "ownerOfGroupDeleted": "" }, "members": { "title": "Участники", - "search": "Найти участника", - "notFound": "Участники не найдены" + "search": "", + "notFound": "" }, "permissions": { - "title": "Разрешения", + "title": "", "form": { - "unsavedChanges": "У вас есть несохранённые изменения!" + "unsavedChanges": "" } } } @@ -2244,133 +2244,133 @@ "title": "Настройки", "notification": { "success": { - "message": "Настройки успешно сохранены" + "message": "" }, "error": { - "message": "Не удалось сохранить настройки" + "message": "" } }, "section": { "analytics": { - "title": "Аналитика", + "title": "", "general": { - "title": "Отправлять анонимную аналитику", - "text": "Homarr использует открытое программное обеспечение Umami для сбора обезличенных данных об использовании. Сбор данных никогда не включает личную информацию и полностью соответствует GDPR и CCPA. Мы рекомендуем включить аналитику, так как это помогает нашей команде выявлять проблемы и определять приоритеты в разработке." + "title": "", + "text": "" }, "widgetData": { - "title": "Данные о виджетах", - "text": "Отправлять информацию о настроенных виджетах (и их количестве). Не включает URL-адреса, названия или другие данные." + "title": "", + "text": "" }, "integrationData": { - "title": "Данные об интеграциях", - "text": "Отправлять информацию о настроенных интеграциях (и их количестве). Не включает URL-адреса, названия или другие данные." + "title": "", + "text": "" }, "usersData": { - "title": "Данные о пользователях", - "text": "Отправлять количество пользователей и информацию об использовании единого входа" + "title": "", + "text": "" } }, "crawlingAndIndexing": { - "title": "Сканирование и индексация", - "warning": "Включение или отключение любых настроек здесь существенно повлияет на то, как поисковые системы будут индексировать и сканировать вашу страницу. Все настройки носят рекомендательный характер, и поисковые системы могут учитывать их по своему усмотрению. Изменения могут вступить в силу через несколько дней или недель. Некоторые настройки могут быть специфичны для конкретных поисковых систем.", + "title": "", + "warning": "", "noIndex": { - "title": "Не индексировать", - "text": "Не индексировать сайт в поисковых системах и не показывать его в результатах поиска" + "title": "", + "text": "" }, "noFollow": { - "title": "Не следовать по ссылкам", - "text": "Не переходить по ссылкам при индексации. Отключение приведёт к тому, что поисковые роботы будут пытаться перейти по всем ссылкам в Homarr." + "title": "", + "text": "" }, "noTranslate": { - "title": "Не предлагать перевод", - "text": "Когда язык сайта отличается от предпочитаемого пользователем, Google будет показывать ссылку на перевод в результатах поиска" + "title": "", + "text": "" }, "noSiteLinksSearchBox": { - "title": "Не показывать поле поиска по сайту", - "text": "Google создаст поле поиска с найденными ссылками вместе с другими прямыми ссылками. Включение этой опции попросит Google отключить это поле." + "title": "", + "text": "" } }, "board": { "title": "Панели", "homeBoard": { - "label": "Общая домашняя панель", - "description": "Для выбора доступны только публичные панели" + "label": "", + "description": "" } }, "appearance": { "title": "Внешний вид", "defaultColorScheme": { - "label": "Цветовая схема по умолчанию", + "label": "", "options": { - "light": "Светлая", - "dark": "Тёмная" + "light": "", + "dark": "" } } }, "culture": { - "title": "Локализация", + "title": "", "defaultLocale": { - "label": "Язык по умолчанию" + "label": "" } } } }, "tool": { "tasks": { - "title": "Задачи", + "title": "", "status": { - "idle": "Ожидание", - "running": "Выполняется", + "idle": "", + "running": "Работает", "error": "Ошибка" }, "job": { "iconsUpdater": { - "label": "Обновление иконок" + "label": "" }, "analytics": { - "label": "Аналитика" + "label": "" }, "smartHomeEntityState": { - "label": "Состояние объектов умного дома" + "label": "" }, "ping": { - "label": "Проверка доступности" + "label": "" }, "mediaServer": { "label": "Медиасервер" }, "mediaOrganizer": { - "label": "Организация медиафайлов" + "label": "" }, "downloads": { - "label": "Загрузки" + "label": "" }, "mediaRequestStats": { - "label": "Статистика запросов медиаконтента" + "label": "" }, "mediaRequestList": { - "label": "Список запросов медиаконтента" + "label": "" }, "rssFeeds": { - "label": "RSS-ленты" + "label": "" }, "indexerManager": { - "label": "Управление индексаторами" + "label": "" }, "healthMonitoring": { - "label": "Мониторинг состояния" + "label": "" }, "dnsHole": { - "label": "Данные DNS-фильтра" + "label": "" }, "sessionCleanup": { - "label": "Очистка сессий" + "label": "" }, "updateChecker": { - "label": "Проверка обновлений" + "label": "" }, "mediaTranscoding": { - "label": "Перекодирование медиафайлов" + "label": "" } } }, @@ -2378,9 +2378,9 @@ "title": "API", "modal": { "createApiToken": { - "title": "API-токен создан", - "description": "API-токен создан. Этот токен зашифрован в базе данных и будет показан только один раз. После закрытия окна его нельзя будет восстановить.", - "button": "Копировать и закрыть" + "title": "", + "description": "", + "button": "" } }, "tab": { @@ -2388,15 +2388,15 @@ "label": "Документация" }, "apiKey": { - "label": "Аутентификация", - "title": "API-ключи", + "label": "", + "title": "", "button": { - "createApiToken": "Создать API-токен" + "createApiToken": "" }, "table": { "header": { "id": "ID", - "createdBy": "Создан пользователем" + "createdBy": "" } } } @@ -2404,20 +2404,20 @@ } }, "about": { - "version": "Версия {version}", - "text": "Homarr — это проект с открытым исходным кодом, поддерживаемый сообществом и развиваемый добровольцами. Благодаря этим людям Homarr остаётся растущим проектом с 2021 года. Наша команда работает над Homarr полностью удалённо из разных стран в своё свободное время без какой-либо компенсации.", + "version": "", + "text": "", "accordion": { "contributors": { - "title": "Участники проекта", - "subtitle": "{count} поддерживают код и Homarr" + "title": "", + "subtitle": "" }, "translators": { - "title": "Переводчики", - "subtitle": "{count} помогают с переводами на разные языки" + "title": "", + "subtitle": "" }, "libraries": { - "title": "Библиотеки", - "subtitle": "{count} используются в коде Homarr" + "title": "", + "subtitle": "" } } } @@ -2426,9 +2426,9 @@ "docker": { "title": "Контейнеры", "table": { - "updated": "Обновлено {when}", - "search": "Поиск среди {count} контейнеров", - "selected": "Выбрано {selectCount} из {totalCount} контейнеров" + "updated": "", + "search": "", + "selected": "" }, "field": { "name": { @@ -2439,11 +2439,11 @@ "option": { "created": "Создан", "running": "Работает", - "paused": "Приостановлен", - "restarting": "Перезапускается", - "exited": "Остановлен", - "removing": "Удаляется", - "dead": "Нерабочий" + "paused": "Приостановлено", + "restarting": "Перезапуск", + "exited": "", + "removing": "Удаление", + "dead": "" } }, "containerImage": { @@ -2458,12 +2458,12 @@ "label": "Запустить", "notification": { "success": { - "title": "Контейнеры запущены", - "message": "Контейнеры успешно запущены" + "title": "", + "message": "" }, "error": { - "title": "Не удалось запустить контейнеры", - "message": "Не удалось запустить контейнеры" + "title": "", + "message": "" } } }, @@ -2471,12 +2471,12 @@ "label": "Остановить", "notification": { "success": { - "title": "Контейнеры остановлены", - "message": "Контейнеры успешно остановлены" + "title": "", + "message": "" }, "error": { - "title": "Не удалось остановить контейнеры", - "message": "Не удалось остановить контейнеры" + "title": "", + "message": "" } } }, @@ -2484,12 +2484,12 @@ "label": "Перезапустить", "notification": { "success": { - "title": "Контейнеры перезапущены", - "message": "Контейнеры успешно перезапущены" + "title": "", + "message": "" }, "error": { - "title": "Не удалось перезапустить контейнеры", - "message": "Не удалось перезапустить контейнеры" + "title": "", + "message": "" } } }, @@ -2497,45 +2497,45 @@ "label": "Удалить", "notification": { "success": { - "title": "Контейнеры удалены", - "message": "Контейнеры успешно удалены" + "title": "", + "message": "" }, "error": { - "title": "Не удалось удалить контейнеры", - "message": "Не удалось удалить контейнеры" + "title": "", + "message": "" } } }, "refresh": { - "label": "Обновить", + "label": "", "notification": { "success": { - "title": "Контейнеры обновлены", - "message": "Отображаются актуальные данные" + "title": "", + "message": "" }, "error": { - "title": "Не удалось обновить контейнеры", - "message": "Произошла ошибка при обновлении данных о контейнерах" + "title": "", + "message": "" } } } }, "error": { - "internalServerError": "Произошла ошибка при обновлении данных о контейнерах" + "internalServerError": "" } }, "permission": { - "title": "Права доступа", + "title": "", "userSelect": { - "title": "Добавить права для пользователя" + "title": "" }, "groupSelect": { - "title": "Добавить права для группы" + "title": "" }, "tab": { "user": "Пользователи", "group": "Группы", - "inherited": "Унаследованные группы" + "inherited": "" }, "field": { "user": { @@ -2545,12 +2545,12 @@ "label": "Группа" }, "permission": { - "label": "Права доступа" + "label": "" } }, "action": { - "saveUser": "Сохранить права пользователя", - "saveGroup": "Сохранить права группы" + "saveUser": "", + "saveGroup": "" } }, "navigationStructure": { @@ -2565,13 +2565,13 @@ "label": "Редактировать" }, "new": { - "label": "Новая" + "label": "" } }, "search-engines": { "label": "Поисковые системы", "new": { - "label": "Новая" + "label": "" }, "edit": { "label": "Редактировать" @@ -2583,7 +2583,7 @@ "apps": { "label": "Приложения", "new": { - "label": "Новое" + "label": "" }, "edit": { "label": "Редактировать" @@ -2594,7 +2594,7 @@ "create": { "label": "Создать" }, - "general": "Общие", + "general": "Основное", "security": "Безопасность", "board": "Панели", "groups": { @@ -2610,7 +2610,7 @@ "label": "Docker" }, "logs": { - "label": "Логи" + "label": "" } }, "settings": { @@ -2622,28 +2622,28 @@ } }, "search": { - "placeholder": "Найдётся все", - "nothingFound": "Ничего не найдено", + "placeholder": "", + "nothingFound": "", "error": { - "fetch": "Произошла ошибка при получении данных" + "fetch": "" }, "mode": { "appIntegrationBoard": { - "help": "Поиск приложений, интеграций или панелей", + "help": "", "group": { "app": { "title": "Приложения", "children": { "action": { "open": { - "label": "Открыть URL приложения" + "label": "" }, "edit": { - "label": "Редактировать приложение" + "label": "Редактирование приложения" } }, "detail": { - "title": "Выберите действие для приложения" + "title": "" } } }, @@ -2652,17 +2652,17 @@ "children": { "action": { "open": { - "label": "Открыть панель" + "label": "" }, "homeBoard": { - "label": "Сделать домашней панелью" + "label": "" }, "settings": { - "label": "Открыть настройки" + "label": "" } }, "detail": { - "title": "Выберите действие для панели" + "title": "" } } }, @@ -2672,94 +2672,94 @@ } }, "command": { - "help": "Активировать режим команд", + "help": "", "group": { "localCommand": { - "title": "Локальные команды" + "title": "" }, "globalCommand": { - "title": "Глобальные команды", + "title": "", "option": { "colorScheme": { - "light": "Переключить на светлую тему", - "dark": "Переключить на тёмную тему" + "light": "", + "dark": "" }, "language": { - "label": "Изменить язык", + "label": "", "children": { "detail": { - "title": "Выберите предпочитаемый язык" + "title": "" } } }, "newBoard": { - "label": "Создать новую панель" + "label": "" }, "importBoard": { - "label": "Импортировать панель" + "label": "" }, "newApp": { - "label": "Создать новое приложение" + "label": "" }, "newIntegration": { - "label": "Создать новую интеграцию", + "label": "", "children": { "detail": { - "title": "Выберите тип интеграции для создания" + "title": "" } } }, "newUser": { - "label": "Создать нового пользователя" + "label": "" }, "newInvite": { - "label": "Создать новое приглашение" + "label": "" }, "newGroup": { - "label": "Создать новую группу" + "label": "" } } } } }, "external": { - "help": "Использовать внешнюю поисковую систему", + "help": "", "group": { "searchEngine": { "title": "Поисковые системы", "children": { "action": { "search": { - "label": "Искать через {name}" + "label": "" } }, "detail": { - "title": "Выберите действие для поисковой системы" + "title": "" }, "searchResults": { - "title": "Выберите результат поиска для действий" + "title": "" } }, "option": { "google": { - "name": "Google", - "description": "Поиск в интернете через Google" + "name": "", + "description": "" }, "bing": { - "name": "Bing", - "description": "Поиск в интернете через Bing" + "name": "", + "description": "" }, "duckduckgo": { - "name": "DuckDuckGo", - "description": "Поиск в интернете через DuckDuckGo" + "name": "", + "description": "" }, "torrent": { "name": "Торренты", - "description": "Поиск торрентов на torrentdownloads.pro" + "description": "" }, "youTube": { - "name": "YouTube", - "description": "Поиск видео на YouTube" + "name": "", + "description": "" } } } @@ -2768,7 +2768,7 @@ "help": { "group": { "mode": { - "title": "Режимы" + "title": "" }, "help": { "title": "Справка", @@ -2777,7 +2777,7 @@ "label": "Документация" }, "submitIssue": { - "label": "Сообщить о проблеме" + "label": "" }, "discord": { "label": "Сообщество Discord" @@ -2789,57 +2789,57 @@ "home": { "group": { "local": { - "title": "Локальные результаты" + "title": "" } } }, "page": { - "help": "Поиск по страницам", + "help": "", "group": { "page": { - "title": "Страницы", + "title": "", "option": { "manageHome": { - "label": "Управление главной страницей" + "label": "" }, "manageBoard": { - "label": "Управление панелями" + "label": "" }, "manageApp": { - "label": "Управление приложениями" + "label": "" }, "manageIntegration": { - "label": "Управление интеграциями" + "label": "" }, "manageSearchEngine": { - "label": "Управление поисковыми системами" + "label": "" }, "manageMedia": { - "label": "Управление медиафайлами" + "label": "" }, "manageUser": { "label": "Управление пользователями" }, "manageInvite": { - "label": "Управление приглашениями" + "label": "" }, "manageGroup": { - "label": "Управление группами" + "label": "" }, "manageDocker": { - "label": "Управление Docker" + "label": "" }, "manageApi": { - "label": "Swagger API" + "label": "" }, "manageLog": { - "label": "Просмотр логов" + "label": "Просмотр журналов" }, "manageTask": { - "label": "Управление задачами" + "label": "" }, "manageSettings": { - "label": "Глобальные настройки" + "label": "" }, "about": { "label": "О программе" @@ -2855,18 +2855,18 @@ } }, "userGroup": { - "help": "Поиск пользователей или групп", + "help": "", "group": { "user": { "title": "Пользователи", "children": { "action": { "detail": { - "label": "Показать сведения о пользователе" + "label": "" } }, "detail": { - "title": "Выберите действие для пользователя" + "title": "" } } }, @@ -2875,17 +2875,17 @@ "children": { "action": { "detail": { - "label": "Показать сведения о группе" + "label": "" }, "manageMember": { - "label": "Управление участниками" + "label": "" }, "managePermission": { - "label": "Управление разрешениями" + "label": "" } }, "detail": { - "title": "Выберите действие для группы" + "title": "" } } } @@ -2893,16 +2893,16 @@ } }, "engine": { - "search": "Найти поисковую систему", + "search": "", "field": { "name": { "label": "Название" }, "short": { - "label": "Краткое название" + "label": "" }, "urlTemplate": { - "label": "Шаблон URL поиска" + "label": "" }, "description": { "label": "Описание" @@ -2912,53 +2912,53 @@ "list": { "title": "Поисковые системы", "noResults": { - "title": "Поисковые системы пока отсутствуют", - "action": "Создать первую поисковую систему" + "title": "", + "action": "" }, - "interactive": "Интерактивная, использует интеграцию" + "interactive": "" }, "create": { - "title": "Новая поисковая система", + "title": "", "notification": { "success": { - "title": "Поисковая система создана", - "message": "Поисковая система успешно создана" + "title": "", + "message": "" }, "error": { - "title": "Не удалось создать", - "message": "Не удалось создать поисковую систему" + "title": "", + "message": "" } } }, "edit": { - "title": "Редактирование поисковой системы", + "title": "", "notification": { "success": { "title": "Изменения сохранены", - "message": "Поисковая система успешно сохранена" + "message": "" }, "error": { "title": "Не удалось сохранить", - "message": "Не удалось сохранить поисковую систему" + "message": "" } }, - "configControl": "Настройка", + "configControl": "", "searchEngineType": { - "generic": "Обычная", - "fromIntegration": "Из интеграции" + "generic": "", + "fromIntegration": "" } }, "delete": { - "title": "Удаление поисковой системы", - "message": "Вы уверены, что хотите удалить поисковую систему '{name}'?", + "title": "", + "message": "", "notification": { "success": { - "title": "Поисковая система удалена", - "message": "Поисковая система успешно удалена" + "title": "", + "message": "" }, "error": { - "title": "Не удалось удалить", - "message": "Не удалось удалить поисковую систему" + "title": "", + "message": "" } } } diff --git a/packages/translation/src/lang/sk.json b/packages/translation/src/lang/sk.json index bbd0b1a71..b54d659ed 100644 --- a/packages/translation/src/lang/sk.json +++ b/packages/translation/src/lang/sk.json @@ -1381,7 +1381,7 @@ "memory": "Pamäť: {memory}GiB", "memoryAvailable": "K dispozícii: {memoryAvailable}GiB ({percent}%)", "version": "Verzia: {version}", - "uptime": "Doba prevádzky: {days} dní, {hours} hodín, {minutes} minút", + "uptime": "", "loadAverage": "Priemerné zaťaženie:", "minute": "1 minúta", "minutes": "{count} minút", diff --git a/packages/translation/src/lang/sl.json b/packages/translation/src/lang/sl.json index c0da63e30..ee50076c1 100644 --- a/packages/translation/src/lang/sl.json +++ b/packages/translation/src/lang/sl.json @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "", + "title": "Admin", "item": { "admin": { "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": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Uporabnik", + "name": "Ime", "id": "" } }, @@ -1690,7 +1690,7 @@ "empty": "Prazno", "table": { "file": "", - "eta": "", + "eta": "ETA", "progress": "Napredek", "transcode": "", "healthCheck": "" @@ -2047,7 +2047,7 @@ "tools": { "label": "Orodja", "items": { - "docker": "", + "docker": "Docker", "logs": "", "api": "", "tasks": "" @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Ustvarjalec" @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "" } } @@ -2607,7 +2607,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 5263131b8..5d5b9076c 100644 --- a/packages/translation/src/lang/sv.json +++ b/packages/translation/src/lang/sv.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "", + "label": "Token", "description": "" } }, @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "", + "title": "Admin", "item": { "admin": { "label": "", @@ -1026,7 +1026,7 @@ "label": "" }, "layout": { - "label": "", + "label": "Layout", "option": { "row": { "label": "Horisontal" @@ -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": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Användare", + "name": "Namn", "id": "" } }, @@ -1527,7 +1527,7 @@ "columnTitle": "" }, "integration": { - "columnTitle": "" + "columnTitle": "Integration" }, "name": { "columnTitle": "" @@ -1682,8 +1682,8 @@ "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "", - "videoContainers": "", + "videoCodecs": "Codecs", + "videoContainers": "Containers", "videoResolutions": "Upplösningar" }, "workers": { @@ -1912,7 +1912,7 @@ "unrecognizedLink": "" }, "layout": { - "title": "" + "title": "Layout" }, "background": { "title": "Bakgrund" @@ -2047,9 +2047,9 @@ "tools": { "label": "Verktyg", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "" + "label": "ID" }, "creator": { "label": "Skapare" @@ -2213,7 +2213,7 @@ "label": "Utgångsdatum" }, "token": { - "label": "" + "label": "Token" } } } @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "", + "id": "ID", "createdBy": "" } } @@ -2424,7 +2424,7 @@ } }, "docker": { - "title": "", + "title": "Containers", "table": { "updated": "", "search": "", @@ -2447,7 +2447,7 @@ } }, "containerImage": { - "label": "" + "label": "Image" }, "ports": { "label": "Portar" @@ -2607,7 +2607,7 @@ "tools": { "label": "Verktyg", "docker": { - "label": "" + "label": "Docker" }, "logs": { "label": "" @@ -2754,7 +2754,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 7cb8e2f1a..c6129e99d 100644 --- a/packages/translation/src/lang/tr.json +++ b/packages/translation/src/lang/tr.json @@ -235,7 +235,7 @@ "label": "Görseli değiştir", "notification": { "success": { - "message": "Görsel başarıyla değiştirildi" + "message": "Resim başarıyla değiştirildi" }, "error": { "message": "Görsel değiştirilemiyor" @@ -1185,7 +1185,7 @@ "decreaseIndent": "Girintiyi Azalt", "link": "Bağlantı", "unlink": "Bağlantıyı kaldır", - "image": "Görsel Göm", + "image": "Resim Yerleştir", "addTable": "Tablo ekle", "deleteTable": "Tablo Sil", "colorCell": "Renk Hücresi", @@ -1320,7 +1320,7 @@ }, "forecastDayCount": { "label": "Tahmin edilen gün sayısı", - "description": "Widget yeterince geniş olmadığında daha az gün gösterilir" + "description": "Araç yeterince geniş olmadığında daha az gün gösterilir" }, "dateFormat": { "label": "Tarih Biçimi", @@ -1345,7 +1345,7 @@ } }, "indexerManager": { - "name": "İndeksleyici Yönetim Durumu", + "name": "Dizin oluşturucu yöneticisi statüsü", "description": "İndeksleyicilerinizin durumu", "option": { "openIndexerSiteInNewTab": { @@ -1844,7 +1844,7 @@ "option": { "repeat": { "label": "Tekrarla", - "description": "Görsel, tüm arka plan alanını kaplayacak kadar tekrarlanır." + "description": "Resim, tüm arka plan kapsama alanını kaplayacak kadar tekrarlanır." }, "no-repeat": { "label": "Tekrarlama Yok", @@ -2737,7 +2737,7 @@ "title": "Arama yapmak istediğiniz terimleri girin" }, "searchResults": { - "title": "Eylemler için bir arama sonucu seçin" + "title": "Etkileşime geçmek için bir sonuç seçin" } }, "option": { diff --git a/packages/translation/src/lang/tw.json b/packages/translation/src/lang/tw.json index e622b7f60..ce5e146a4 100644 --- a/packages/translation/src/lang/tw.json +++ b/packages/translation/src/lang/tw.json @@ -1457,7 +1457,12 @@ "mediaServer": { "name": "", "description": "", - "option": {} + "option": {}, + "items": { + "user": "使用者", + "name": "名稱", + "id": "" + } }, "downloads": { "name": "", diff --git a/packages/translation/src/lang/uk.json b/packages/translation/src/lang/uk.json index 91219a9d7..3758e47c9 100644 --- a/packages/translation/src/lang/uk.json +++ b/packages/translation/src/lang/uk.json @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Користувач", + "name": "Ім’я", "id": "" } }, @@ -2047,9 +2047,9 @@ "tools": { "label": "Інструменти", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2607,7 +2607,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 a1a55468f..47f071cd6 100644 --- a/packages/translation/src/lang/vi.json +++ b/packages/translation/src/lang/vi.json @@ -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": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "", - "name": "", + "user": "Người dùng", + "name": "Tên", "id": "" } }, @@ -2047,9 +2047,9 @@ "tools": { "label": "Công cụ", "items": { - "docker": "", + "docker": "Docker", "logs": "", - "api": "", + "api": "API", "tasks": "" } }, @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "", + "title": "API", "modal": { "createApiToken": { "title": "", @@ -2607,7 +2607,7 @@ "tools": { "label": "Công cụ", "docker": { - "label": "" + "label": "Docker" }, "logs": { "label": "" From b8a155dd08d8761d1ef65cd9c4e10561ca5b7cf4 Mon Sep 17 00:00:00 2001 From: "homarr-crowdin[bot]" <190541745+homarr-crowdin[bot]@users.noreply.github.com> Date: Tue, 31 Dec 2024 00:43:59 +0000 Subject: [PATCH 19/25] chore(lang): updated translations from crowdin Co-authored-by: Crowdin Homarr <190541745+homarr-crowdin[bot]@users.noreply.github.com> --- packages/translation/src/lang/cn.json | 28 +- packages/translation/src/lang/cs.json | 30 +- packages/translation/src/lang/da.json | 90 +- packages/translation/src/lang/de.json | 4 +- packages/translation/src/lang/el.json | 22 +- packages/translation/src/lang/es.json | 52 +- packages/translation/src/lang/fr.json | 408 +++---- packages/translation/src/lang/he.json | 104 +- packages/translation/src/lang/hr.json | 14 +- packages/translation/src/lang/hu.json | 20 +- packages/translation/src/lang/it.json | 414 +++---- packages/translation/src/lang/ja.json | 24 +- packages/translation/src/lang/ko.json | 20 +- packages/translation/src/lang/lt.json | 18 +- packages/translation/src/lang/lv.json | 26 +- packages/translation/src/lang/nl.json | 104 +- packages/translation/src/lang/no.json | 32 +- packages/translation/src/lang/pl.json | 26 +- packages/translation/src/lang/pt.json | 48 +- packages/translation/src/lang/ro.json | 48 +- packages/translation/src/lang/ru.json | 1476 ++++++++++++------------- packages/translation/src/lang/sk.json | 2 +- packages/translation/src/lang/sl.json | 20 +- packages/translation/src/lang/sv.json | 44 +- packages/translation/src/lang/tr.json | 12 +- packages/translation/src/lang/uk.json | 12 +- packages/translation/src/lang/vi.json | 14 +- 27 files changed, 1556 insertions(+), 1556 deletions(-) diff --git a/packages/translation/src/lang/cn.json b/packages/translation/src/lang/cn.json index 2674d0e8a..453fa6021 100644 --- a/packages/translation/src/lang/cn.json +++ b/packages/translation/src/lang/cn.json @@ -546,7 +546,7 @@ "label": "描述" }, "url": { - "label": "网址" + "label": "Url" } }, "action": { @@ -569,7 +569,7 @@ "title": "新的组件 {name}", "notification": { "success": { - "title": "", + "title": "创建成功", "message": "组件已成功创建" }, "error": { @@ -582,7 +582,7 @@ "title": "编辑组件 {name}", "notification": { "success": { - "title": "更改应用成功", + "title": "成功应用更改", "message": "组件已成功保存" }, "error": { @@ -611,7 +611,7 @@ "label": "名称" }, "url": { - "label": "网址" + "label": "Url" } }, "action": { @@ -622,11 +622,11 @@ "create": "测试连接并创建", "edit": "测试连接并保存" }, - "alertNotice": "成功建立连接后,“保存”按钮将启用", + "alertNotice": "成功建立连接后保存按钮将启用", "notification": { "success": { "title": "连接成功", - "message": "连接已成功建立" + "message": "" }, "invalidUrl": { "title": "无效链接", @@ -634,11 +634,11 @@ }, "secretNotDefined": { "title": "缺少凭证", - "message": "未提供所有凭证" + "message": "并非所有凭证都已提供" }, "invalidCredentials": { "title": "凭证无效", - "message": "凭证无效" + "message": "" }, "commonError": { "title": "连接失败", @@ -650,15 +650,15 @@ }, "unauthorized": { "title": "未授权", - "message": "可能是凭证错误" + "message": "" }, "forbidden": { - "title": "禁止访问", + "title": "", "message": "可能缺少权限" }, "notFound": { "title": "未找到", - "message": "可能是错误的 URL 或路径" + "message": "" }, "internalServerError": { "title": "", @@ -1422,7 +1422,7 @@ "description": "" }, "app": { - "noData": "未找到应用", + "noData": "", "description": "" }, "error": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "用户", - "name": "名称", + "user": "", + "name": "", "id": "" } }, diff --git a/packages/translation/src/lang/cs.json b/packages/translation/src/lang/cs.json index 84893d402..03757122d 100644 --- a/packages/translation/src/lang/cs.json +++ b/packages/translation/src/lang/cs.json @@ -27,7 +27,7 @@ "description": "Konfigurovat chování importu" }, "boardSelection": { - "title": "", + "title": "Nalezeno {count} ploch", "description": "Vyberte všechny plochy s velikostmi, které chcete importovat", "action": { "selectAll": "Vybrat vše", @@ -38,17 +38,17 @@ "title": "Přehled importu", "description": "", "action": { - "import": "" + "import": "Potvrdit import a pokračovat" }, "entities": { "apps": "Aplikace", "boards": "Plochy", - "integrations": "", + "integrations": "Integrace", "credentialUsers": "" } }, "tokenModal": { - "title": "", + "title": "Zadejte token pro import", "field": { "token": { "label": "Token", @@ -57,14 +57,14 @@ }, "notification": { "error": { - "title": "", - "message": "" + "title": "Neplatný token", + "message": "Token, který jste zadali je neplatný" } } } }, "user": { - "title": "", + "title": "Správce", "subtitle": "", "notification": { "success": { @@ -1460,7 +1460,7 @@ "option": {}, "items": { "user": "Uživatel", - "name": "Název", + "name": "Jméno", "id": "Id" } }, @@ -2047,9 +2047,9 @@ "tools": { "label": "Nástroje", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Vytvořil/a" @@ -2213,7 +2213,7 @@ "label": "Datum konce platnosti" }, "token": { - "label": "Token" + "label": "" } } } @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2607,7 +2607,7 @@ "tools": { "label": "Nástroje", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/da.json b/packages/translation/src/lang/da.json index 35a4fa844..03b0b25bd 100644 --- a/packages/translation/src/lang/da.json +++ b/packages/translation/src/lang/da.json @@ -41,8 +41,8 @@ "import": "" }, "entities": { - "apps": "Apps", - "boards": "Boards", + "apps": "", + "boards": "", "integrations": "", "credentialUsers": "" } @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "Token", + "label": "", "description": "" } }, @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "Admin", + "title": "", "item": { "admin": { "label": "", @@ -302,7 +302,7 @@ } }, "app": { - "title": "Apps", + "title": "", "item": { "create": { "label": "", @@ -323,7 +323,7 @@ } }, "board": { - "title": "Boards", + "title": "", "item": { "create": { "label": "", @@ -491,7 +491,7 @@ "app": { "page": { "list": { - "title": "Apps", + "title": "", "noResults": { "title": "", "action": "" @@ -1026,7 +1026,7 @@ "label": "" }, "layout": { - "label": "Layout", + "label": "", "option": { "row": { "label": "Horisontal" @@ -1050,7 +1050,7 @@ "description": "", "option": { "layout": { - "label": "Layout", + "label": "", "option": { "row": { "label": "Horisontal" @@ -1083,7 +1083,7 @@ "description": "Kontroller PiHole eller AdGuard fra dit dashboard", "option": { "layout": { - "label": "Layout", + "label": "", "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": "Video Stream", + "name": "", "description": "Indlejr en video stream eller video fra et kamera eller et website", "option": { "feedUrl": { - "label": "Feed URL" + "label": "" }, "hasAutoPlay": { "label": "Auto-afspilning", @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Bruger", - "name": "Navn", + "user": "", + "name": "", "id": "" } }, @@ -1516,7 +1516,7 @@ "detailsTitle": "" }, "downSpeed": { - "columnTitle": "Down", + "columnTitle": "", "detailsTitle": "Download hastighed" }, "index": { @@ -1527,7 +1527,7 @@ "columnTitle": "" }, "integration": { - "columnTitle": "Integration" + "columnTitle": "" }, "name": { "columnTitle": "" @@ -1565,7 +1565,7 @@ "detailsTitle": "" }, "upSpeed": { - "columnTitle": "Up", + "columnTitle": "", "detailsTitle": "" } }, @@ -1640,7 +1640,7 @@ "available": "", "tv": "TV-anmodninger", "movie": "Film anmodninger", - "total": "Total" + "total": "" }, "users": { "main": "Topbrugere", @@ -1690,7 +1690,7 @@ "empty": "Tom", "table": { "file": "Fil", - "eta": "ETA", + "eta": "", "progress": "Fremskridt", "transcode": "Transkod", "healthCheck": "" @@ -1771,7 +1771,7 @@ "invalidError": "" }, "apps": { - "label": "Apps", + "label": "", "avoidDuplicates": { "label": "", "description": "" @@ -1912,7 +1912,7 @@ "unrecognizedLink": "" }, "layout": { - "title": "Layout" + "title": "" }, "background": { "title": "Baggrund" @@ -2031,8 +2031,8 @@ "navbar": { "items": { "home": "Hjem", - "boards": "Boards", - "apps": "Apps", + "boards": "", + "apps": "", "integrations": "", "searchEngies": "", "medias": "", @@ -2047,9 +2047,9 @@ "tools": { "label": "Værktøjer", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2069,15 +2069,15 @@ "page": { "home": { "statistic": { - "board": "Boards", + "board": "", "user": "Brugere", "invite": "Invitationer", "integration": "", - "app": "Apps", + "app": "", "group": "" }, "statisticLabel": { - "boards": "Boards", + "boards": "", "resources": "", "authentication": "", "authorization": "" @@ -2144,7 +2144,7 @@ "title": "Sikkerhed" }, "board": { - "title": "Boards" + "title": "" } }, "list": { @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Skaber" @@ -2213,7 +2213,7 @@ "label": "Udløbsdato" }, "token": { - "label": "Token" + "label": "" } } } @@ -2291,7 +2291,7 @@ } }, "board": { - "title": "Boards", + "title": "", "homeBoard": { "label": "", "description": "" @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2447,7 +2447,7 @@ } }, "containerImage": { - "label": "Image" + "label": "" }, "ports": { "label": "Porte" @@ -2455,7 +2455,7 @@ }, "action": { "start": { - "label": "Start", + "label": "", "notification": { "success": { "title": "", @@ -2468,7 +2468,7 @@ } }, "stop": { - "label": "Stop", + "label": "", "notification": { "success": { "title": "", @@ -2557,7 +2557,7 @@ "manage": { "label": "Administrer", "boards": { - "label": "Boards" + "label": "" }, "integrations": { "label": "", @@ -2581,7 +2581,7 @@ "label": "" }, "apps": { - "label": "Apps", + "label": "", "new": { "label": "" }, @@ -2596,7 +2596,7 @@ }, "general": "Generelt", "security": "Sikkerhed", - "board": "Boards", + "board": "", "groups": { "label": "" }, @@ -2607,7 +2607,7 @@ "tools": { "label": "Værktøjer", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" @@ -2632,7 +2632,7 @@ "help": "", "group": { "app": { - "title": "Apps", + "title": "", "children": { "action": { "open": { @@ -2648,7 +2648,7 @@ } }, "board": { - "title": "Boards", + "title": "", "children": { "action": { "open": { @@ -2754,7 +2754,7 @@ "description": "" }, "torrent": { - "name": "Torrents", + "name": "", "description": "" }, "youTube": { diff --git a/packages/translation/src/lang/de.json b/packages/translation/src/lang/de.json index 8f472497e..3cb3449f6 100644 --- a/packages/translation/src/lang/de.json +++ b/packages/translation/src/lang/de.json @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Benutzer", - "name": "Name", + "user": "", + "name": "", "id": "" } }, diff --git a/packages/translation/src/lang/el.json b/packages/translation/src/lang/el.json index bb9059b88..5f0727cb0 100644 --- a/packages/translation/src/lang/el.json +++ b/packages/translation/src/lang/el.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "Token", + "label": "", "description": "" } }, @@ -124,7 +124,7 @@ }, "field": { "email": { - "label": "E-Mail", + "label": "", "verified": "" }, "username": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Χρήστης", - "name": "Όνομα", + "user": "", + "name": "", "id": "" } }, @@ -1683,7 +1683,7 @@ "savedSpace": "", "healthChecks": "", "videoCodecs": "Κωδικοποιητές", - "videoContainers": "Containers", + "videoContainers": "", "videoResolutions": "Αναλύσεις" }, "workers": { @@ -2047,9 +2047,9 @@ "tools": { "label": "Εργαλεία", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2213,7 +2213,7 @@ "label": "Ημερομηνία λήξης" }, "token": { - "label": "Token" + "label": "" } } } @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2424,7 +2424,7 @@ } }, "docker": { - "title": "Containers", + "title": "", "table": { "updated": "", "search": "", @@ -2607,7 +2607,7 @@ "tools": { "label": "Εργαλεία", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/es.json b/packages/translation/src/lang/es.json index 9112fbff2..239d12d6d 100644 --- a/packages/translation/src/lang/es.json +++ b/packages/translation/src/lang/es.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "Token", + "label": "", "description": "" } }, @@ -767,7 +767,7 @@ }, "common": { "beta": "", - "error": "Error", + "error": "", "action": { "add": "Añadir", "apply": "Aplicar", @@ -1029,10 +1029,10 @@ "label": "Diseño", "option": { "row": { - "label": "Horizontal" + "label": "" }, "column": { - "label": "Vertical" + "label": "" }, "grid": { "label": "" @@ -1053,10 +1053,10 @@ "label": "Diseño", "option": { "row": { - "label": "Horizontal" + "label": "" }, "column": { - "label": "Vertical" + "label": "" }, "grid": { "label": "" @@ -1086,10 +1086,10 @@ "label": "Diseño", "option": { "row": { - "label": "Horizontal" + "label": "" }, "column": { - "label": "Vertical" + "label": "" }, "grid": { "label": "" @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "Incrusta cualquier contenido de Internet. Algunos sitios web pueden restringir el acceso.", "option": { "embedUrl": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Usuario", - "name": "Nombre", + "user": "", + "name": "", "id": "" } }, @@ -1537,7 +1537,7 @@ "detailsTitle": "" }, "ratio": { - "columnTitle": "Ratio", + "columnTitle": "", "detailsTitle": "" }, "received": { @@ -1640,7 +1640,7 @@ "available": "", "tv": "Solicitudes de TV", "movie": "Solicitudes de películas", - "total": "Total" + "total": "" }, "users": { "main": "Mejores usuarios", @@ -1908,7 +1908,7 @@ "title": "", "section": { "general": { - "title": "General", + "title": "", "unrecognizedLink": "" }, "layout": { @@ -2047,9 +2047,9 @@ "tools": { "label": "Herramientas", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2132,7 +2132,7 @@ "fieldsDisabledExternalProvider": "", "setting": { "general": { - "title": "General", + "title": "", "item": { "language": "", "board": "", @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Creador" @@ -2213,7 +2213,7 @@ "label": "Fecha de caducidad" }, "token": { - "label": "Token" + "label": "" } } } @@ -2222,7 +2222,7 @@ "back": "", "setting": { "general": { - "title": "General", + "title": "", "owner": "Propietario", "ownerOfGroup": "", "ownerOfGroupDeleted": "" @@ -2321,7 +2321,7 @@ "status": { "idle": "", "running": "En ejecución", - "error": "Error" + "error": "" }, "job": { "iconsUpdater": { @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2594,7 +2594,7 @@ "create": { "label": "Crear" }, - "general": "General", + "general": "", "security": "Seguridad", "board": "Tableros", "groups": { @@ -2607,7 +2607,7 @@ "tools": { "label": "Herramientas", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" @@ -2754,7 +2754,7 @@ "description": "" }, "torrent": { - "name": "Torrents", + "name": "", "description": "" }, "youTube": { diff --git a/packages/translation/src/lang/fr.json b/packages/translation/src/lang/fr.json index 58903da7d..61d7b9767 100644 --- a/packages/translation/src/lang/fr.json +++ b/packages/translation/src/lang/fr.json @@ -2,130 +2,130 @@ "init": { "step": { "start": { - "title": "", - "subtitle": "", - "description": "", + "title": "Bienvenue dans Homarr", + "subtitle": "Commençons par configurer votre instance Homarr.", + "description": "Pour commencer, veuillez selectionner comment vous souhaitez configurer votre instance Homarr.", "action": { - "scratch": "", - "importOldmarr": "" + "scratch": "Partir de zéro", + "importOldmarr": "Importer à partir d'Homarr avant la 1.0" } }, "import": { - "title": "", - "subtitle": "", + "title": "Importer des données", + "subtitle": "Vous pouvez importer des données depuis une instance Homarr existante.", "dropzone": { - "title": "", - "description": "" + "title": "Déposez le fichier zip ici ou cliquez pour naviguer", + "description": "Le zip téléchargé sera traité et vous pourrez sélectionner ce que vous voulez importer" }, "fileInfo": { "action": { - "change": "" + "change": "Changer le fichier" } }, "importSettings": { - "title": "", - "description": "" + "title": "Importer des paramètres", + "description": "Configurer le comportement d'importation" }, "boardSelection": { - "title": "", - "description": "", + "title": "{count} tableaux trouvés", + "description": "Choisissez tous les tableaux avec la taille que vous souhaitez importer", "action": { - "selectAll": "", - "unselectAll": "" + "selectAll": "Tout sélectionner", + "unselectAll": "Tout désélectionner" } }, "summary": { - "title": "", - "description": "", + "title": "Résumé de l'importation", + "description": "Dans le résumé ci-dessous vous pouvez voir ce qui va être importé", "action": { - "import": "" + "import": "Confirmer l'importation et continuer" }, "entities": { "apps": "Applications", "boards": "Tableaux de bord", - "integrations": "", + "integrations": "Intégrations", "credentialUsers": "" } }, "tokenModal": { - "title": "", + "title": "Saisir le jeton d'importation", "field": { "token": { "label": "Jeton", - "description": "" + "description": "Entrez le jeton d'importation de votre instance précédente" } }, "notification": { "error": { - "title": "", - "message": "" + "title": "Jeton non valide", + "message": "Le jeton que vous avez saisi est invalide" } } } }, "user": { - "title": "", - "subtitle": "", + "title": "Administrateur", + "subtitle": "Spécifiez les informations d'identification pour votre compte d'administrateur.", "notification": { "success": { - "title": "", - "message": "" + "title": "Utilisateur créé", + "message": "L’utilisateur a été créé avec succès" }, "error": { - "title": "" + "title": "La création de l'utilisateur a échoué" } } }, "group": { - "title": "", + "title": "Groupe externe", "subtitle": "", "form": { "name": { - "label": "", + "label": "Nom du groupe", "description": "" } } }, "settings": { "title": "Paramètres", - "subtitle": "" + "subtitle": "Configurer les paramètres du serveur." }, "finish": { - "title": "", - "subtitle": "", - "description": "", + "title": "Terminer la configuration", + "subtitle": "Vous êtes prêt !", + "description": "Vous avez terminé avec succès le processus d'installation. Vous pouvez maintenant commencer à utiliser Homarr. Sélectionnez votre prochaine action :", "action": { "goToBoard": "", "createBoard": "", - "inviteUser": "", - "docs": "" + "inviteUser": "Inviter d'autres utilisateurs", + "docs": "Lire la documentation" } } }, - "backToStart": "" + "backToStart": "Retour au début" }, "user": { "title": "Utilisateurs", "name": "Utilisateur", "page": { "login": { - "title": "", - "subtitle": "" + "title": "Connectez-vous à votre compte", + "subtitle": "Bon retour parmi nous ! Veuillez entrer vos identifiants" }, "invite": { - "title": "", - "subtitle": "", - "description": "" + "title": "Rejoindre Homarr", + "subtitle": "Bienvenue sur Homarr! Veuillez créer votre compte", + "description": "Vous avez été invité par {username}" }, "init": { - "title": "", - "subtitle": "" + "title": "Nouvelle installation Homarr", + "subtitle": "Veuillez créer l'utilisateur administrateur initial" } }, "field": { "email": { "label": "Courriel", - "verified": "" + "verified": "Vérifié" }, "username": { "label": "Nom d'utilisateur" @@ -133,18 +133,18 @@ "password": { "label": "Mot de passe", "requirement": { - "length": "", + "length": "Contient au moins 8 caractères", "lowercase": "Inclut une lettre minuscule", "uppercase": "Inclut une lettre majuscule", "number": "Inclut un nombre", - "special": "" + "special": "Contient un symbole spécial" } }, "passwordConfirm": { "label": "Confirmation du mot de passe" }, "previousPassword": { - "label": "" + "label": "Ancien mot de passe" }, "homeBoard": { "label": "" @@ -154,25 +154,25 @@ } }, "error": { - "usernameTaken": "" + "usernameTaken": "Nom d'utilisateur déjà utilisé" }, "action": { "login": { "label": "Connexion", - "labelWith": "", + "labelWith": "Se connecter avec {provider}", "notification": { "success": { - "title": "", - "message": "" + "title": "Connexion réussie", + "message": "Vous êtes maintenant connecté" }, "error": { - "title": "", + "title": "Échec de la connexion", "message": "" } }, "forgotPassword": { - "label": "", - "description": "" + "label": "Mot de passe oublié?", + "description": "Un administrateur peut utiliser la commande suivante pour réinitialiser votre mot de passe :" } }, "register": { @@ -184,19 +184,19 @@ }, "error": { "title": "", - "message": "" + "message": "Votre compte n'a pas pu être créé" } } }, "create": "Créer un utilisateur", "changePassword": { - "label": "", + "label": "Changer le mot de passe", "notification": { "success": { - "message": "" + "message": "Mot de passe modifié avec succès" }, "error": { - "message": "" + "message": "Modification du mot de passe impossible" } } }, @@ -232,29 +232,29 @@ }, "manageAvatar": { "changeImage": { - "label": "", + "label": "Modifier l’image", "notification": { "success": { - "message": "" + "message": "L'image a été modifiée avec succès" }, "error": { - "message": "" + "message": "Impossible de modifier l'image" }, "toLarge": { - "title": "", - "message": "" + "title": "L'image est trop volumineuse", + "message": "La taille maximale de l'image est {size}" } } }, "removeImage": { - "label": "", - "confirm": "", + "label": "Retirer l'image", + "confirm": "Êtes-vous sûr de vouloir retirer cette image ?", "notification": { "success": { - "message": "" + "message": "Image retirée avec succès" }, "error": { - "message": "" + "message": "Impossible de retirer l'image" } } } @@ -262,42 +262,42 @@ "editProfile": { "notification": { "success": { - "message": "" + "message": "Profil mis à jour avec succès" }, "error": { - "message": "" + "message": "Impossible de mettre à jour le profil" } } }, "delete": { - "label": "", - "description": "", - "confirm": "" + "label": "Supprimer définitivement l'utilisateur", + "description": "Supprime cet utilisateur ainsi que ses préférences. Ne supprimera aucun tableau. L'utilisateur ne sera pas averti.", + "confirm": "Êtes-vous sûr de vouloir supprimer l'utilisateur {username} ainsi que ses préférences ?" }, "select": { - "label": "", - "notFound": "" + "label": "Sélectionner l'utilisateur", + "notFound": "Aucun utilisateur trouvé" }, "transfer": { - "label": "" + "label": "Choisir un nouveau propriétaire" } } }, "group": { - "title": "", - "name": "", - "search": "", + "title": "Groupes", + "name": "Groupe", + "search": "Trouver un groupe", "field": { "name": "Nom", - "members": "" + "members": "Membres" }, "permission": { "admin": { "title": "Admin", "item": { "admin": { - "label": "", - "description": "" + "label": "Administrateur", + "description": "Les membres avec cette permission ont un accès complet à toutes les fonctionnalités et paramètres" } } }, @@ -305,15 +305,15 @@ "title": "Applications", "item": { "create": { - "label": "", - "description": "" + "label": "Créer une app", + "description": "Autoriser les membres à créer des apps" }, "use-all": { - "label": "", + "label": "Utiliser toutes les apps", "description": "" }, "modify-all": { - "label": "", + "label": "Modifier toutes les apps", "description": "" }, "full-all": { @@ -344,11 +344,11 @@ } }, "integration": { - "title": "", + "title": "Intégrations", "item": { "create": { - "label": "", - "description": "" + "label": "Créer des intégrations", + "description": "Autoriser les membres à créer des intégrations" }, "use-all": { "label": "", @@ -365,37 +365,37 @@ } }, "media": { - "title": "", + "title": "Médias", "item": { "upload": { - "label": "", - "description": "" + "label": "Téléverser des médias", + "description": "Autoriser les membres à téléverser des médias" }, "view-all": { - "label": "", - "description": "" + "label": "Voir tous les médias", + "description": "Autoriser les membres à voir tous les médias" }, "full-all": { - "label": "", - "description": "" + "label": "Accès complet aux médias", + "description": "Autoriser les membres à gérer et supprimer les médias" } } }, "other": { - "title": "", + "title": "Autre", "item": { "view-logs": { - "label": "", - "description": "" + "label": "Voir les logs", + "description": "Autoriser les membres à voir les logs" } } }, "search-engine": { - "title": "", + "title": "Moteurs de recherche", "item": { "create": { - "label": "", - "description": "" + "label": "Créer des moteurs de recherche", + "description": "Autoriser les membres à créer des moteurs de recherche" }, "modify-all": { "label": "", @@ -413,62 +413,62 @@ "external": "" }, "reservedNotice": { - "message": "" + "message": "Ce groupe est réservé pour l'utilisation du système et restreint certaines actions. " }, "action": { "create": { - "label": "", + "label": "Nouveau groupe", "notification": { "success": { - "message": "" + "message": "Le groupe a été créé avec succès" }, "error": { - "message": "" + "message": "Le groupe n'a pas pu être créé" } } }, "transfer": { - "label": "", - "description": "", - "confirm": "", + "label": "Changer le propriétaire", + "description": "Transférer la propriété de ce groupe à un autre utilisateur.", + "confirm": "Êtes-vous sûr de vouloir transférer la propriété du groupe {name} à {username}?", "notification": { "success": { - "message": "" + "message": "Le groupe {group} a été transféré avec succès à {user}" }, "error": { - "message": "" + "message": "Impossible de transférer la propriété" } } }, "addMember": { - "label": "" + "label": "Ajouter un membre" }, "removeMember": { - "label": "", - "confirm": "" + "label": "Retirer un membre", + "confirm": "Êtes-vous sûr de vouloir retirer {user} de ce groupe ?" }, "delete": { - "label": "", - "description": "", - "confirm": "", + "label": "Supprimer le groupe", + "description": "Une fois que vous supprimez un groupe, il n'y a pas de retour en arrière possible. Soyez certain.", + "confirm": "Êtes-vous sûr de vouloir supprimer le groupe {name}?", "notification": { "success": { - "message": "" + "message": "Groupe {name} supprimé avec succès" }, "error": { - "message": "" + "message": "Impossible de supprimer le groupe {name}" } } }, "changePermissions": { "notification": { "success": { - "title": "", - "message": "" + "title": "Permissions sauvegardées", + "message": "Les permissions ont été sauvegardées avec succès" }, "error": { - "title": "", - "message": "" + "title": "Permissions non sauvegardées", + "message": "Les permissions n'ont pas été sauvegardées" } } }, @@ -483,8 +483,8 @@ } }, "select": { - "label": "", - "notFound": "" + "label": "Sélectionner un groupe", + "notFound": "Aucun groupe trouvé" } } }, @@ -493,16 +493,16 @@ "list": { "title": "Applications", "noResults": { - "title": "", - "action": "" + "title": "Il n'y a pas encore d'apps", + "action": "Créer votre première app" } }, "create": { - "title": "", + "title": "Nouvelle app", "notification": { "success": { - "title": "", - "message": "" + "title": "Créé avec succès", + "message": "L'application a bien été créée" }, "error": { "title": "", @@ -518,17 +518,17 @@ "message": "" }, "error": { - "title": "", + "title": "Impossible d'appliquer les changements", "message": "" } } }, "delete": { - "title": "", - "message": "", + "title": "Supprimer l'app", + "message": "Êtes-vous sûr de vouloir supprimer l'app {name}?", "notification": { "success": { - "title": "", + "title": "Suppression effectuée avec succès", "message": "" }, "error": { @@ -543,23 +543,23 @@ "label": "Nom" }, "description": { - "label": "" + "label": "Description" }, "url": { - "label": "" + "label": "Url" } }, "action": { "select": { - "label": "", - "notFound": "" + "label": "Sélectionner l'app", + "notFound": "Aucune app trouvée" } } }, "integration": { "page": { "list": { - "title": "", + "title": "Intégrations", "search": "", "noResults": { "title": "" @@ -569,7 +569,7 @@ "title": "", "notification": { "success": { - "title": "", + "title": "Créé avec succès", "message": "" }, "error": { @@ -611,37 +611,37 @@ "label": "Nom" }, "url": { - "label": "" + "label": "Url" } }, "action": { - "create": "" + "create": "Nouvelle intégration" }, "testConnection": { "action": { - "create": "", - "edit": "" + "create": "Tester la connexion et créer", + "edit": "Tester la connexion et enregistrer" }, - "alertNotice": "", + "alertNotice": "Le bouton Enregistrer est activé une fois qu'une connexion est établie avec succès", "notification": { "success": { - "title": "", - "message": "" + "title": "Connexion réussie", + "message": "La connexion a été établie avec succès" }, "invalidUrl": { "title": "URL invalide", - "message": "" + "message": "L'URL est invalide." }, "secretNotDefined": { - "title": "", - "message": "" + "title": "Identifiants manquants", + "message": "Les informations d'identification n'ont pas toutes été fournies" }, "invalidCredentials": { - "title": "", - "message": "" + "title": "Informations d'identification incorrectes.", + "message": "Les informations d'identification ne sont pas valides" }, "commonError": { - "title": "", + "title": "Échec de la connexion", "message": "" }, "badRequest": { @@ -709,11 +709,11 @@ "kind": { "username": { "label": "Nom d'utilisateur", - "newLabel": "" + "newLabel": "Nouveau nom d'utilisateur" }, "apiKey": { - "label": "", - "newLabel": "" + "label": "Clé API", + "newLabel": "Nouvelle clé API" }, "password": { "label": "Mot de passe", @@ -761,12 +761,12 @@ } }, "copy": { - "label": "" + "label": "Copier l'URL" } } }, "common": { - "beta": "", + "beta": "Bêta", "error": "Erreur", "action": { "add": "Ajouter", @@ -774,7 +774,7 @@ "backToOverview": "", "create": "Créer", "edit": "Modifier", - "import": "", + "import": "Importer", "insert": "Insérer", "remove": "Supprimer", "save": "Sauvegarder", @@ -783,29 +783,29 @@ "delete": "Supprimer", "discard": "", "confirm": "Confirmer", - "continue": "", + "continue": "Continuer", "previous": "Précédent", "next": "Suivant", - "checkoutDocs": "", - "checkLogs": "", + "checkoutDocs": "Voir la documentation", + "checkLogs": "Vérifiez les logs pour plus de détails", "tryAgain": "Réessayer", - "loading": "" + "loading": "Chargement" }, - "here": "", + "here": "ici", "iconPicker": { "label": "", "header": "" }, "colorScheme": { "options": { - "light": "", - "dark": "" + "light": "Clair", + "dark": "Sombre" } }, "information": { - "min": "", - "max": "", - "days": "", + "min": "Min", + "max": "Max", + "days": "Jours", "hours": "Heures", "minutes": "Minutes" }, @@ -832,7 +832,7 @@ }, "multiText": { "placeholder": "", - "addLabel": "" + "addLabel": "Ajouter {value}" }, "select": { "placeholder": "", @@ -842,11 +842,11 @@ }, "userAvatar": { "menu": { - "switchToDarkMode": "", - "switchToLightMode": "", - "management": "", + "switchToDarkMode": "Activer le mode sombre", + "switchToLightMode": "Activer le mode clair", + "management": "Administration", "preferences": "Vos préférences", - "logout": "", + "logout": "Se déconnecter", "login": "Connexion", "homeBoard": "", "loggedOut": "", @@ -992,7 +992,7 @@ }, "widget": { "app": { - "name": "", + "name": "App", "description": "", "option": { "appId": { @@ -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": "iFrame", + "name": "", "description": "Intégrer n'importe quel contenu à partir d'Internet. Certains sites Web peuvent restreindre l'accès.", "option": { "embedUrl": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Utilisateur", - "name": "Nom", + "user": "", + "name": "", "id": "" } }, @@ -1537,7 +1537,7 @@ "detailsTitle": "" }, "ratio": { - "columnTitle": "Ratio", + "columnTitle": "", "detailsTitle": "" }, "received": { @@ -1640,7 +1640,7 @@ "available": "", "tv": "Demandes de séries TV", "movie": "Demandes de films", - "total": "Total" + "total": "" }, "users": { "main": "Principaux utilisateurs", @@ -1682,7 +1682,7 @@ "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "Codecs", + "videoCodecs": "", "videoContainers": "Conteneurs", "videoResolutions": "Résolutions" }, @@ -1690,7 +1690,7 @@ "empty": "Vide", "table": { "file": "Fichier", - "eta": "ETA", + "eta": "", "progress": "Progrès", "transcode": "Transcodeur", "healthCheck": "" @@ -1897,7 +1897,7 @@ "label": "Nom" }, "isPublic": { - "label": "Public", + "label": "", "description": "" } }, @@ -2047,9 +2047,9 @@ "tools": { "label": "Outils", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2057,7 +2057,7 @@ "help": { "label": "Aide", "items": { - "documentation": "Documentation", + "documentation": "", "submitIssue": "", "discord": "Communauté Discord", "sourceCode": "" @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Créateur" @@ -2320,7 +2320,7 @@ "title": "", "status": { "idle": "", - "running": "Running", + "running": "", "error": "Erreur" }, "job": { @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2385,7 +2385,7 @@ }, "tab": { "documentation": { - "label": "Documentation" + "label": "" }, "apiKey": { "label": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2438,7 +2438,7 @@ "label": "État", "option": { "created": "Créé", - "running": "Running", + "running": "", "paused": "En pause", "restarting": "Redémarrage en cours", "exited": "", @@ -2447,10 +2447,10 @@ } }, "containerImage": { - "label": "Image" + "label": "" }, "ports": { - "label": "Ports" + "label": "" } }, "action": { @@ -2468,7 +2468,7 @@ } }, "stop": { - "label": "Stop", + "label": "", "notification": { "success": { "title": "", @@ -2607,7 +2607,7 @@ "tools": { "label": "Outils", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" @@ -2681,8 +2681,8 @@ "title": "", "option": { "colorScheme": { - "light": "", - "dark": "" + "light": "Activer le mode clair", + "dark": "Activer le mode sombre" }, "language": { "label": "", @@ -2754,7 +2754,7 @@ "description": "" }, "torrent": { - "name": "Torrents", + "name": "", "description": "" }, "youTube": { @@ -2774,7 +2774,7 @@ "title": "Aide", "option": { "documentation": { - "label": "Documentation" + "label": "" }, "submitIssue": { "label": "" diff --git a/packages/translation/src/lang/he.json b/packages/translation/src/lang/he.json index 8bae43de8..9583a92bf 100644 --- a/packages/translation/src/lang/he.json +++ b/packages/translation/src/lang/he.json @@ -1459,9 +1459,9 @@ "description": "הצג את הזרמים הנוכחיים בשרתי המדיה שלך", "option": {}, "items": { - "user": "משתמש", - "name": "שם", - "id": "מזהה" + "user": "", + "name": "", + "id": "" } }, "downloads": { @@ -1530,7 +1530,7 @@ "columnTitle": "אינטגרציה" }, "name": { - "columnTitle": "שם המשימה" + "columnTitle": "" }, "progress": { "columnTitle": "התקדמות", @@ -1554,7 +1554,7 @@ }, "state": { "columnTitle": "מצב", - "detailsTitle": "מצב משימה" + "detailsTitle": "" }, "time": { "columnTitle": "זמן סיום", @@ -1597,7 +1597,7 @@ "delete": { "title": "מחק פריט", "modalTitle": "", - "entry": "מחק רשומה", + "entry": "", "entryAndFiles": "" } } @@ -2025,8 +2025,8 @@ "evening": "" }, "notFound": { - "title": "לא נמצא", - "text": "לא ניתן היה למצוא את המשאב המבוקש" + "title": "", + "text": "" }, "navbar": { "items": { @@ -2048,9 +2048,9 @@ "label": "כלים", "items": { "docker": "דוקר", - "logs": "קובצי לוג", + "logs": "", "api": "ממשק API", - "tasks": "משימות" + "tasks": "" } }, "settings": "הגדרות", @@ -2058,9 +2058,9 @@ "label": "עזרה", "items": { "documentation": "תיעוד", - "submitIssue": "שלח בעיה", + "submitIssue": "", "discord": "קהילת דיסקורד", - "sourceCode": "קוד מקור" + "sourceCode": "" } }, "about": "אודות" @@ -2078,41 +2078,41 @@ }, "statisticLabel": { "boards": "לוחות", - "resources": "מקורות", - "authentication": "אימות", - "authorization": "הרשאה" + "resources": "", + "authentication": "", + "authorization": "" } }, "board": { "title": "הלוחות שלך", "action": { "new": { - "label": "לוח חדש" + "label": "" }, "open": { - "label": "פתח לוח" + "label": "" }, "settings": { "label": "הגדרות" }, "setHomeBoard": { - "label": "הגדר כלוח הבית שלך", + "label": "", "badge": { "label": "מסך הבית", - "tooltip": "לוח זה יוצג כלוח הבית שלך" + "tooltip": "" } }, "delete": { "label": "מחיקה לצמיתות", "confirm": { "title": "מחיקת לוח", - "description": "האם אתה בטוח שברצונך למחוק את הלוח {name} ?" + "description": "" } } }, "visibility": { - "public": "לוח זה הוא ציבורי", - "private": "לוח זה הוא פרטי" + "public": "", + "private": "" }, "modal": { "createBoard": { @@ -2125,16 +2125,16 @@ } }, "media": { - "includeFromAllUsers": "כלול מדיה מכל המשתמשים" + "includeFromAllUsers": "" }, "user": { - "back": "חזרה למשתמשים", - "fieldsDisabledExternalProvider": "שדות מסוימים מושבתים מכיוון שהם מנוהלים על ידי ספק אימות חיצוני.", + "back": "", + "fieldsDisabledExternalProvider": "", "setting": { "general": { "title": "כללי", "item": { - "language": "שפה ואזור", + "language": "", "board": "לוח בית", "firstDayOfWeek": "היום הראשון בשבוע", "accessibility": "נגישות" @@ -2152,21 +2152,21 @@ "title": "משתמשים" }, "edit": { - "metaTitle": "ערוך משתמש {username}" + "metaTitle": "" }, "create": { "metaTitle": "צור משתמש", - "title": "צור משתמש חדש", + "title": "", "step": { "personalInformation": { - "label": "מידע אישי" + "label": "" }, "security": { "label": "אבטחה" }, "groups": { "label": "קבוצות", - "title": "בחר את כל הקבוצות שהמשתמש צריך להיות חבר בהן", + "title": "", "description": "" }, "review": { @@ -2244,41 +2244,41 @@ "title": "הגדרות", "notification": { "success": { - "message": "ההגדרות נשמרו בהצלחה" + "message": "" }, "error": { - "message": "שמירת ההגדרות נכשלה" + "message": "" } }, "section": { "analytics": { - "title": "ניתוח", + "title": "", "general": { - "title": "שלח ניתוח אנונימי", - "text": "Homarr ישלח ניתוחים אנונימיים באמצעות התוכנה בקוד פתוח Umami. הוא לעולם אינו אוסף מידע אישי ולכן תואם לחלוטין לדרישות ה-GDPR וה-CCPA. אנו מעודדים אותך להפעיל ניתוחים, כיוון שזה מסייע לצוות הקוד הפתוח שלנו לזהות בעיות ולהעניק עדיפות למשימות שברשימת העדיפויות שלנו." + "title": "", + "text": "" }, "widgetData": { - "title": "נתוני ווידג'ט", - "text": "שלח אילו ווידג'טים (וכמותם) הוגדרו. אינו כולל כתובות URL, שמות או כל מידע נוסף אחר." + "title": "", + "text": "" }, "integrationData": { - "title": "נתוני אינטגרציה", - "text": "שלח אילו אינטגרציות (וכמותן) הגדרת. אינו כולל כתובות URL, שמות או כל מידע אחר." + "title": "", + "text": "" }, "usersData": { - "title": "נתוני משתמשים", - "text": "שלח את כמות המשתמשים והאם הפעלת SSO" + "title": "", + "text": "" } }, "crawlingAndIndexing": { - "title": "סריקה והוספה לאינדקס", - "warning": "הפעלה או השבתה של הגדרות כלשהן כאן תשפיע קשות על האופן שבו מנועי החיפוש יכנסו לאינדקס ויסרקו את הדף שלך. כל הגדרה היא בקשה ותלוית הסורק להחיל את ההגדרות הללו. היישום של כל שינוי עשוי להימשך עד מספר ימים או שבועות. הגדרות מסוימות עשויות להיות ספציפיות למנועי חיפוש.", + "title": "", + "warning": "", "noIndex": { - "title": "אין אינדקס", - "text": "אל תוסיף את האתר לאינדקס במנועי חיפוש ואל תציג אותו בתוצאות חיפוש" + "title": "", + "text": "" }, "noFollow": { - "title": "אין מעקב", + "title": "", "text": "" }, "noTranslate": { @@ -2317,7 +2317,7 @@ }, "tool": { "tasks": { - "title": "משימות", + "title": "", "status": { "idle": "", "running": "פועל", @@ -2328,7 +2328,7 @@ "label": "" }, "analytics": { - "label": "ניתוח" + "label": "" }, "smartHomeEntityState": { "label": "" @@ -2388,7 +2388,7 @@ "label": "תיעוד" }, "apiKey": { - "label": "אימות", + "label": "", "title": "", "button": { "createApiToken": "" @@ -2610,7 +2610,7 @@ "label": "דוקר" }, "logs": { - "label": "קובצי לוג" + "label": "" } }, "settings": { @@ -2652,7 +2652,7 @@ "children": { "action": { "open": { - "label": "פתח לוח" + "label": "" }, "homeBoard": { "label": "" @@ -2777,7 +2777,7 @@ "label": "תיעוד" }, "submitIssue": { - "label": "שלח בעיה" + "label": "" }, "discord": { "label": "קהילת דיסקורד" diff --git a/packages/translation/src/lang/hr.json b/packages/translation/src/lang/hr.json index f20bae406..1f1e7fafb 100644 --- a/packages/translation/src/lang/hr.json +++ b/packages/translation/src/lang/hr.json @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "Ugradite bilo koji sadržaj s interneta. Neke web stranice mogu ograničiti pristup.", "option": { "embedUrl": { @@ -1432,7 +1432,7 @@ "option": {} }, "video": { - "name": "Video Stream", + "name": "", "description": "Ugradi video stream ili video sa kamere i/ili web stranice", "option": { "feedUrl": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Korisnik", - "name": "Naziv", + "user": "", + "name": "", "id": "" } }, @@ -1690,7 +1690,7 @@ "empty": "Isprazni", "table": { "file": "", - "eta": "ETA", + "eta": "", "progress": "Napredak", "transcode": "", "healthCheck": "" @@ -2047,7 +2047,7 @@ "tools": { "label": "Alati", "items": { - "docker": "Docker", + "docker": "", "logs": "", "api": "", "tasks": "" @@ -2607,7 +2607,7 @@ "tools": { "label": "Alati", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/hu.json b/packages/translation/src/lang/hu.json index 669c0c241..93e9b2e78 100644 --- a/packages/translation/src/lang/hu.json +++ b/packages/translation/src/lang/hu.json @@ -51,7 +51,7 @@ "title": "Import token megadása", "field": { "token": { - "label": "Token", + "label": "", "description": "Írja be a megjelenített import tokent az előző homarr példányból" } }, @@ -546,7 +546,7 @@ "label": "Leírás" }, "url": { - "label": "Url" + "label": "" } }, "action": { @@ -611,7 +611,7 @@ "label": "Név" }, "url": { - "label": "Url" + "label": "" } }, "action": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Felhasználó", - "name": "Név", + "user": "", + "name": "", "id": "" } }, @@ -2047,9 +2047,9 @@ "tools": { "label": "Eszközök", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2213,7 +2213,7 @@ "label": "Lejárati idő" }, "token": { - "label": "Token" + "label": "" } } } @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2607,7 +2607,7 @@ "tools": { "label": "Eszközök", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/it.json b/packages/translation/src/lang/it.json index c30a3a8e7..f287d2f73 100644 --- a/packages/translation/src/lang/it.json +++ b/packages/translation/src/lang/it.json @@ -3,8 +3,8 @@ "step": { "start": { "title": "Ti diamo il benvenuto su Homarr", - "subtitle": "Cominciamo a configurare la tua istanza Homarr.", - "description": "Per iniziare, seleziona come desideri configurare la tua istanza Homarr.", + "subtitle": "Iniziamo con la creazione della tua istanza di Homarr.", + "description": "Per iniziare, seleziona come vuoi configurare la tua istanza di Homarr.", "action": { "scratch": "Inizia da zero", "importOldmarr": "Importa da Homarr prima della 1.0" @@ -14,8 +14,8 @@ "title": "Importa dati", "subtitle": "Puoi importare dati da un'istanza Homarr esistente.", "dropzone": { - "title": "Trascina qui il file zip o clicca per sfogliare", - "description": "Il file zip caricato verrà elaborato e potrai selezionare cosa vuoi importare" + "title": "Trascina il file zip qui o fai clic per sfogliare", + "description": "Lo zip caricato sarà elaborato e sarai in grado di selezionare quello che vuoi importare" }, "fileInfo": { "action": { @@ -24,27 +24,27 @@ }, "importSettings": { "title": "Importa impostazioni", - "description": "Configura il comportamento d'importazione" + "description": "Configura le azioni d'importazione" }, "boardSelection": { - "title": "Trovate {count} schede", - "description": "Seleziona tutte le schede con le dimensioni che desideri importare", + "title": "Trovate {count} board", + "description": "Scegli tutte le board con la dimensione che vuoi importare", "action": { "selectAll": "Seleziona tutto", "unselectAll": "Deseleziona tutto" } }, "summary": { - "title": "Importa riepilogo", + "title": "Riepilogo", "description": "Nel riepilogo sottostante puoi vedere cosa verrà importato", "action": { "import": "Conferma importazione e continua" }, "entities": { "apps": "Applicazioni", - "boards": "Boards", + "boards": "Board", "integrations": "Integrazioni", - "credentialUsers": "Utenti credenziali" + "credentialUsers": "Credential users" } }, "tokenModal": { @@ -58,18 +58,18 @@ "notification": { "error": { "title": "Token non valido", - "message": "Il token inserito non è valido" + "message": "Token inserito non valido" } } } }, "user": { "title": "Amministratore", - "subtitle": "Specifica le credenziali per l'utente amministratore.", + "subtitle": "Specifica le credenziali per l'amministratore.", "notification": { "success": { "title": "Utente creato", - "message": "Utente creato con successo" + "message": "L'utente è stato creato correttamente" }, "error": { "title": "Creazione dell'utente non riuscita" @@ -78,7 +78,7 @@ }, "group": { "title": "Gruppo esterno", - "subtitle": "Specifica il gruppo che dovrebbe essere utilizzato per gli utenti esterni.", + "subtitle": "Specifica il gruppo da utilizzare per gli utenti esterni.", "form": { "name": { "label": "Nome gruppo", @@ -93,39 +93,39 @@ "finish": { "title": "Termina configurazione", "subtitle": "È tutto pronto per iniziare!", - "description": "Hai completato con successo il processo di installazione. Ora puoi iniziare a usare Homarr. Seleziona la tua prossima azione:", + "description": "Hai completato con successo la configurazione. Ora puoi iniziare a usare Homarr. Seleziona la prossima azione:", "action": { - "goToBoard": "", - "createBoard": "", - "inviteUser": "", - "docs": "" + "goToBoard": "Vai alla board: {name}", + "createBoard": "Crea la tua prima board", + "inviteUser": "Invita altri utenti", + "docs": "Leggi la documentazione" } } }, - "backToStart": "" + "backToStart": "Torna all'inizio" }, "user": { "title": "Utenti", "name": "Utente", "page": { "login": { - "title": "", - "subtitle": "" + "title": "Accedi al tuo account", + "subtitle": "Felice di rivederti! Inserisci le tue credenziali" }, "invite": { - "title": "", - "subtitle": "", - "description": "" + "title": "Unisciti ad Homarr", + "subtitle": "Ti diamo il benvenuto su Homarr! Crea il tuo account", + "description": "Hai ricevuto un invito da {username}" }, "init": { - "title": "", - "subtitle": "" + "title": "Nuova installazione di Homarr", + "subtitle": "Crea l'utenza amministrativa iniziale" } }, "field": { "email": { "label": "E-mail", - "verified": "" + "verified": "Verificato" }, "username": { "label": "Nome utente" @@ -133,46 +133,46 @@ "password": { "label": "Password", "requirement": { - "length": "", + "length": "Include almeno 8 caratteri", "lowercase": "Include lettera minuscola", "uppercase": "Include lettera maiuscola", "number": "Include numero", - "special": "" + "special": "Include un simbolo speciale" } }, "passwordConfirm": { "label": "Conferma password" }, "previousPassword": { - "label": "" + "label": "Password precedente" }, "homeBoard": { - "label": "" + "label": "Home board" }, "pingIconsEnabled": { - "label": "" + "label": "Usa le icone per i ping" } }, "error": { - "usernameTaken": "" + "usernameTaken": "Nome utente già in uso" }, "action": { "login": { "label": "Accedi", - "labelWith": "", + "labelWith": "Accedi con {provider}", "notification": { "success": { - "title": "", - "message": "" + "title": "Accesso completato", + "message": "Hai effettuato l'accesso" }, "error": { - "title": "", - "message": "" + "title": "Login fallito", + "message": "Accesso non riuscito" } }, "forgotPassword": { - "label": "", - "description": "" + "label": "Password dimenticata?", + "description": "Un amministratore può utilizzare il seguente comando per reimpostare la password:" } }, "register": { @@ -180,81 +180,81 @@ "notification": { "success": { "title": "Account creato", - "message": "" + "message": "Accedi per continuare" }, "error": { - "title": "", - "message": "" + "title": "Creazione dell’account non riuscita", + "message": "Il tuo account non può essere creato" } } }, "create": "Crea utente", "changePassword": { - "label": "", + "label": "Cambia password", "notification": { "success": { - "message": "" + "message": "Password modificata" }, "error": { - "message": "" + "message": "Impossibile cambiare la password" } } }, "changeHomeBoard": { "notification": { "success": { - "message": "" + "message": "Home board modificata con successo" }, "error": { - "message": "" + "message": "Impossibile cambiare la home board" } } }, "changeFirstDayOfWeek": { "notification": { "success": { - "message": "" + "message": "Primo giorno della settimana cambiato" }, "error": { - "message": "" + "message": "Impossibile modificare il primo giorno della settimana" } } }, "changePingIconsEnabled": { "notification": { "success": { - "message": "" + "message": "Icone ping modificate con successo" }, "error": { - "message": "" + "message": "Impossibile attivare o disattivare le icone di ping" } } }, "manageAvatar": { "changeImage": { - "label": "", + "label": "Cambia immagine", "notification": { "success": { - "message": "" + "message": "Immagine cambiata con successo" }, "error": { - "message": "" + "message": "Impossibile cambiare immagine" }, "toLarge": { - "title": "", - "message": "" + "title": "Immagine troppo grande", + "message": "La dimensione massima dell'immagine è {size}" } } }, "removeImage": { - "label": "", - "confirm": "", + "label": "Rimuovi immagine", + "confirm": "Vuoi davvero rimuovere l'immagine?", "notification": { "success": { - "message": "" + "message": "Immagine rimossa" }, "error": { - "message": "" + "message": "Impossibile rimuovere immagine" } } } @@ -262,16 +262,16 @@ "editProfile": { "notification": { "success": { - "message": "" + "message": "Profilo aggiornato" }, "error": { - "message": "" + "message": "Impossibile aggiornare il profilo" } } }, "delete": { - "label": "", - "description": "Elimina questo utente, comprese le sue preferenze. Non eliminerà nessuna scheda. L'utente non verrà avvisato.", + "label": "Elimina utente definitivamente", + "description": "Elimina questo utente, comprese le sue preferenze. Non eliminerà nessuna board. L'utente non verrà avvisato.", "confirm": "Hai la certezza di voler eliminare l'utente {username} con le sue preferenze?" }, "select": { @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "Admin", + "title": "Amministratore", "item": { "admin": { "label": "Amministratore", @@ -305,12 +305,12 @@ "title": "Applicazioni", "item": { "create": { - "label": "Crea applicazioni", + "label": "Creare app", "description": "Consenti ai membri di creare app" }, "use-all": { - "label": "Utilizzare tutte le applicazioni", - "description": "Consenti ai membri di aggiungere qualsiasi app alle loro schede" + "label": "Utilizzare tutte le app", + "description": "Consenti ai membri di aggiungere qualsiasi app alle loro board" }, "modify-all": { "label": "Modificare tutte le app", @@ -323,14 +323,14 @@ } }, "board": { - "title": "Boards", + "title": "Board", "item": { "create": { - "label": "Creare schede", - "description": "Consenti ai membri di creare schede" + "label": "Creare board", + "description": "Consenti ai membri di creare board" }, "view-all": { - "label": "Visualizzare tutte le schede", + "label": "Visualizzare tutte le board", "description": "Consenti ai membri di visualizzare tutte le schede" }, "modify-all": { @@ -402,89 +402,89 @@ "description": "Consenti ai membri di modificare tutti i motori di ricerca" }, "full-all": { - "label": "", - "description": "" + "label": "Accesso completo al motore di ricerca", + "description": "Consenti ai membri di gestire ed eliminare qualsiasi motore di ricerca" } } } }, "memberNotice": { - "mixed": "", - "external": "" + "mixed": "Alcuni membri provengono da fornitori esterni e non possono essere gestiti qui", + "external": "Tutti i membri provengono da fornitori esterni e non possono essere gestiti qui" }, "reservedNotice": { - "message": "" + "message": "Questo gruppo è riservato all'uso del sistema e limita alcune azioni. " }, "action": { "create": { - "label": "", + "label": "Nuovo gruppo", "notification": { "success": { - "message": "" + "message": "Gruppo creato" }, "error": { - "message": "" + "message": "Impossibile creare il gruppo" } } }, "transfer": { - "label": "", - "description": "", - "confirm": "", + "label": "Trasferisci ownership", + "description": "Trasferisci l'ownership di questo gruppo a un altro utente.", + "confirm": "Hai la certezza di voler trasferire l'ownership del gruppo {name} a {username}?", "notification": { "success": { - "message": "" + "message": "Gruppo {group} trasferito a {user}" }, "error": { - "message": "" + "message": "Impossibile trasferire l'ownership" } } }, "addMember": { - "label": "" + "label": "Aggiungi membro" }, "removeMember": { - "label": "", - "confirm": "" + "label": "Rimuovi membro", + "confirm": "Hai la certezza di voler rimuovere {user} da questo gruppo?" }, "delete": { - "label": "", - "description": "", - "confirm": "", + "label": "Elimina gruppo", + "description": "Una volta eliminato un gruppo, non si può tornare indietro. Si prega di essere certi.", + "confirm": "Hai la certezza di voler eliminare il gruppo {name}?", "notification": { "success": { - "message": "" + "message": "Gruppo {name} eliminato" }, "error": { - "message": "" + "message": "Impossibile eliminare il gruppo {name}" } } }, "changePermissions": { "notification": { "success": { - "title": "", - "message": "" + "title": "Permessi salvati", + "message": "I permessi sono stati salvati" }, "error": { - "title": "", - "message": "" + "title": "Permessi non salvati", + "message": "I permessi non sono stati salvati" } } }, "update": { "notification": { "success": { - "message": "" + "message": "Il gruppo {name} è stato salvato" }, "error": { - "message": "" + "message": "Impossibile salvare il gruppo {name}" } } }, "select": { - "label": "", - "notFound": "" + "label": "Seleziona gruppo", + "notFound": "Nessun gruppo trovato" } } }, @@ -493,47 +493,47 @@ "list": { "title": "Applicazioni", "noResults": { - "title": "", - "action": "" + "title": "Non ci sono ancora app", + "action": "Crea la tua prima app" } }, "create": { - "title": "", + "title": "Nuova app", "notification": { "success": { - "title": "", - "message": "" + "title": "Creazione riuscita", + "message": "App creata" }, "error": { - "title": "", - "message": "" + "title": "Creazione fallita", + "message": "Impossibile creare l'app" } } }, "edit": { - "title": "", + "title": "Modifica app", "notification": { "success": { - "title": "", - "message": "" + "title": "Modifiche applicate", + "message": "App salvata" }, "error": { - "title": "", - "message": "" + "title": "Impossibile applicare le modifiche", + "message": "Impossibile salvare l'app" } } }, "delete": { - "title": "", - "message": "", + "title": "Elimina app", + "message": "Hai la certezza di voler eliminare l'app {name}?", "notification": { "success": { - "title": "", - "message": "" + "title": "Eliminato", + "message": "App eliminata" }, "error": { - "title": "", - "message": "" + "title": "Eliminazione non riuscita", + "message": "Impossibile eliminare l'app" } } } @@ -543,15 +543,15 @@ "label": "Nome" }, "description": { - "label": "" + "label": "Descrizione" }, "url": { - "label": "" + "label": "Url" } }, "action": { "select": { - "label": "", + "label": "Seleziona App", "notFound": "Nessuna app trovata" } } @@ -569,11 +569,11 @@ "title": "Nuova integrazione di {name}", "notification": { "success": { - "title": "", + "title": "Creazione riuscita", "message": "L'integrazione è stata creata con successo" }, "error": { - "title": "", + "title": "Creazione fallita", "message": "Non è stato possibile creare l'integrazione" } } @@ -582,11 +582,11 @@ "title": "Modifica integrazione {name}", "notification": { "success": { - "title": "", + "title": "Modifiche applicate", "message": "L'integrazione è stata salvata correttamente" }, "error": { - "title": "", + "title": "Impossibile applicare le modifiche", "message": "Non è stato possibile salvare l'integrazione" } } @@ -596,11 +596,11 @@ "message": "Hai la certezza di voler eliminare l'integrazione {name}?", "notification": { "success": { - "title": "", + "title": "Eliminato", "message": "L'integrazione è stata eliminata correttamente" }, "error": { - "title": "", + "title": "Eliminazione non riuscita", "message": "Impossibile eliminare l'integrazione" } } @@ -611,7 +611,7 @@ "label": "Nome" }, "url": { - "label": "" + "label": "Url" } }, "action": { @@ -694,8 +694,8 @@ "title": "Secrets", "lastUpdated": "Ultimo aggiornamento {date}", "notSet": { - "label": "", - "tooltip": "" + "label": "Nessun valore impostato", + "tooltip": "Il secret richiesto non è stato ancora impostato" }, "secureNotice": "", "reset": { @@ -716,7 +716,7 @@ "newLabel": "" }, "password": { - "label": "Password", + "label": "", "newLabel": "Nuova password" } } @@ -853,7 +853,7 @@ "updateAvailable": "" } }, - "dangerZone": "Danger zone", + "dangerZone": "", "noResults": "Nessun risultato trovato", "preview": { "show": "", @@ -861,12 +861,12 @@ }, "zod": { "errors": { - "default": "Questo campo non è valido", - "required": "Questo campo è obbligatorio", + "default": "Campo non valido", + "required": "Campo obbligatorio", "string": { "startsWith": "Questo campo deve iniziare con {startsWith}", "endsWith": "Questo campo deve terminare con {endsWith}", - "includes": "Questo campo deve includere {includes}", + "includes": "Questo campo deve contenere {includes}", "invalidEmail": "" }, "tooSmall": { @@ -1026,7 +1026,7 @@ "label": "" }, "layout": { - "label": "Layout", + "label": "", "option": { "row": { "label": "Orizzontale" @@ -1050,7 +1050,7 @@ "description": "", "option": { "layout": { - "label": "Layout", + "label": "", "option": { "row": { "label": "Orizzontale" @@ -1083,7 +1083,7 @@ "description": "Controlla PiHole o AdGuard dalla tua dashboard", "option": { "layout": { - "label": "Layout", + "label": "", "option": { "row": { "label": "Orizzontale" @@ -1168,9 +1168,9 @@ "controls": { "bold": "Grassetto", "italic": "Corsivo", - "strikethrough": "Testo barrato", + "strikethrough": "Barrato", "underline": "Sottolineato", - "colorText": "Testo a colori", + "colorText": "Colore testo", "colorHighlight": "Testo evidenziato colorato", "code": "Codice", "clear": "Rimuovi formattazione", @@ -1180,15 +1180,15 @@ "horizontalLine": "Linea orizzontale", "bulletList": "Elenco puntato", "orderedList": "Elenco ordinato", - "checkList": "Elenco di controllo", + "checkList": "Checklist", "increaseIndent": "Aumenta indentatura", "decreaseIndent": "Diminuisci indentatura", - "link": "Link", + "link": "", "unlink": "Elimina link", "image": "Incorpora immagine", "addTable": "Aggiungi tabella", "deleteTable": "Elimina tabella", - "colorCell": "Colore cella", + "colorCell": "Colora Cella", "mergeCell": "Attiva/disattiva unione celle", "addColumnLeft": "Aggiungi colonna prima", "addColumnRight": "Aggiungi colonna dopo", @@ -1199,7 +1199,7 @@ }, "align": { "left": "Sinistra", - "center": "Centra", + "center": "Centro", "right": "Destra" }, "popover": { @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "Incorpora qualsiasi contenuto da Internet. Alcuni siti web possono limitare l'accesso.", "option": { "embedUrl": { @@ -1272,7 +1272,7 @@ "description": "", "option": { "displayName": { - "label": "Visualizza nome" + "label": "Nome visualizzato" }, "automationId": { "label": "ID automazione" @@ -1304,7 +1304,7 @@ }, "weather": { "name": "Meteo", - "description": "Mostra le informazioni meteo attuali di una località.", + "description": "Mostra le attuali informazioni meteo di un luogo.", "option": { "isFormatFahrenheit": { "label": "" @@ -1336,7 +1336,7 @@ "rain": "Pioggia", "freezingRain": "Pioggia gelata", "snowFall": "Neve", - "snowGrains": "Neve tonda", + "snowGrains": "Grandine", "rainShowers": "Rovesci", "snowShowers": "Forti nevicate", "thunderstorm": "Temporale", @@ -1345,21 +1345,21 @@ } }, "indexerManager": { - "name": "Stato del gestore dell'indicizzatore", + "name": "Stato dell'index manager", "description": "", "option": { "openIndexerSiteInNewTab": { "label": "" } }, - "title": "Gestore dell'indicizzatore", - "testAll": "Prova Tutto", + "title": "Index manager", + "testAll": "Prova tutto", "error": { "internalServerError": "" } }, "healthMonitoring": { - "name": "Monitoraggio dello stato del sistema", + "name": "Monitoraggio Salute di Sistema", "description": "Visualizza informazioni sulla salute e stato dei tuoi sistemi.", "option": { "fahrenheit": { @@ -1432,8 +1432,8 @@ "option": {} }, "video": { - "name": "Flusso Video", - "description": "Incorpora un flusso video o un video da una videocamera o da un sito web", + "name": "Stream Video", + "description": "Incorpora uno stream video o un video da una videocamera o da un sito web", "option": { "feedUrl": { "label": "URL del feed" @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Utente", - "name": "Nome", + "user": "", + "name": "", "id": "" } }, @@ -1516,7 +1516,7 @@ "detailsTitle": "" }, "downSpeed": { - "columnTitle": "Down", + "columnTitle": "", "detailsTitle": "Velocità Di Download" }, "index": { @@ -1537,7 +1537,7 @@ "detailsTitle": "" }, "ratio": { - "columnTitle": "Ratio", + "columnTitle": "", "detailsTitle": "" }, "received": { @@ -1565,7 +1565,7 @@ "detailsTitle": "" }, "upSpeed": { - "columnTitle": "Up", + "columnTitle": "", "detailsTitle": "" } }, @@ -1606,7 +1606,7 @@ }, "mediaRequests-requestList": { "name": "", - "description": "Vedi un elenco di tutte le richieste multimediali dalla tua istanza Overseerr o Jellyseerr", + "description": "Visualizza un elenco di tutte le richieste media dalla tua istanza Overseerr o Jellyseerr", "option": { "linksTargetNewTab": { "label": "Apri i link in nuova scheda" @@ -1628,11 +1628,11 @@ }, "mediaRequests-requestStats": { "name": "", - "description": "Statistiche sulle richieste multimediali", + "description": "Statistiche sulle richieste dei media", "option": {}, "titles": { "stats": { - "main": "Statistiche Multimediali", + "main": "Statistiche Media", "approved": "Già approvato", "pending": "Approvazioni In Attesa", "processing": "", @@ -1643,7 +1643,7 @@ "total": "Totale" }, "users": { - "main": "Utenti Top", + "main": "Top Utenti", "requests": "" } } @@ -1660,7 +1660,7 @@ } }, "tab": { - "workers": "Worker", + "workers": "Workers", "queue": "Coda", "statistics": "Statistiche" }, @@ -1669,39 +1669,39 @@ "title": "", "queued": "In coda", "status": { - "healthy": "Sano", - "unhealthy": "Non integro" + "healthy": "Normale funzionamento", + "unhealthy": "Compromesso" } }, "panel": { "statistics": { "empty": "Vuoto", - "transcodes": "Transcodes", + "transcodes": "", "transcodesCount": "", "healthChecksCount": "", "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "Codecs", - "videoContainers": "Containers", + "videoCodecs": "", + "videoContainers": "", "videoResolutions": "Risoluzioni" }, "workers": { "empty": "Vuoto", "table": { - "file": "File", - "eta": "ETA", + "file": "", + "eta": "", "progress": "Avanzamento", - "transcode": "Transcode", + "transcode": "", "healthCheck": "" } }, "queue": { "empty": "Vuoto", "table": { - "file": "File", + "file": "", "size": "Dimensione", - "transcode": "Transcode", + "transcode": "", "healthCheck": "" } } @@ -1827,7 +1827,7 @@ "label": "" }, "backgroundImageAttachment": { - "label": "Allegato immagine di sfondo", + "label": "Immagine di background", "option": { "fixed": { "label": "", @@ -1861,7 +1861,7 @@ } }, "backgroundImageSize": { - "label": "Dimensioni dell'immagine di sfondo", + "label": "Dimensioni dell'immagine di background", "option": { "cover": { "label": "", @@ -1912,10 +1912,10 @@ "unrecognizedLink": "" }, "layout": { - "title": "Layout" + "title": "" }, "background": { - "title": "Sfondo" + "title": "Background" }, "color": { "title": "" @@ -1940,7 +1940,7 @@ } }, "dangerZone": { - "title": "Danger zone", + "title": "", "action": { "rename": { "label": "", @@ -2030,8 +2030,8 @@ }, "navbar": { "items": { - "home": "Home", - "boards": "Boards", + "home": "", + "boards": "", "apps": "Applicazioni", "integrations": "Integrazioni", "searchEngies": "Motori di ricerca", @@ -2047,9 +2047,9 @@ "tools": { "label": "Strumenti", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2059,7 +2059,7 @@ "items": { "documentation": "Documentazione", "submitIssue": "", - "discord": "Discord della community", + "discord": "Community Discord", "sourceCode": "" } }, @@ -2069,7 +2069,7 @@ "page": { "home": { "statistic": { - "board": "Boards", + "board": "", "user": "Utenti", "invite": "Inviti", "integration": "Integrazioni", @@ -2077,7 +2077,7 @@ "group": "Gruppi" }, "statisticLabel": { - "boards": "Boards", + "boards": "", "resources": "", "authentication": "", "authorization": "" @@ -2098,7 +2098,7 @@ "setHomeBoard": { "label": "", "badge": { - "label": "Home", + "label": "", "tooltip": "" } }, @@ -2144,7 +2144,7 @@ "title": "Sicurezza" }, "board": { - "title": "Boards" + "title": "" } }, "list": { @@ -2189,7 +2189,7 @@ "action": { "new": { "title": "", - "description": "Dopo la scadenza, un invito non sarà più valido e il destinatario dell'invito non potrà creare un account." + "description": "Una volta scaduto, un invito non sarà più valido e il destinatario non potrà creare un account." }, "copy": { "title": "", @@ -2199,12 +2199,12 @@ }, "delete": { "title": "Elimina invito", - "description": "Siete sicuri di voler eliminare questo invito? Gli utenti con questo link non potranno più creare un account utilizzando tale link." + "description": "Hai la certezza di voler eliminare questo invito? Gli utenti con questo link non potranno più creare un account utilizzandolo." } }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Creatore" @@ -2213,7 +2213,7 @@ "label": "Data di scadenza" }, "token": { - "label": "Token" + "label": "" } } } @@ -2291,7 +2291,7 @@ } }, "board": { - "title": "Boards", + "title": "", "homeBoard": { "label": "", "description": "" @@ -2337,7 +2337,7 @@ "label": "" }, "mediaServer": { - "label": "Server multimediale" + "label": "Media Server" }, "mediaOrganizer": { "label": "" @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2424,7 +2424,7 @@ } }, "docker": { - "title": "Containers", + "title": "", "table": { "updated": "", "search": "", @@ -2440,7 +2440,7 @@ "created": "Creato", "running": "In esecuzione", "paused": "In pausa", - "restarting": "Riavvio", + "restarting": "Riavvio in corso", "exited": "", "removing": "Rimozione in corso", "dead": "" @@ -2557,7 +2557,7 @@ "manage": { "label": "Gestisci", "boards": { - "label": "Boards" + "label": "" }, "integrations": { "label": "Integrazioni", @@ -2596,7 +2596,7 @@ }, "general": "Generale", "security": "Sicurezza", - "board": "Boards", + "board": "", "groups": { "label": "Gruppi" }, @@ -2607,7 +2607,7 @@ "tools": { "label": "Strumenti", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" @@ -2648,7 +2648,7 @@ } }, "board": { - "title": "Boards", + "title": "", "children": { "action": { "open": { @@ -2754,7 +2754,7 @@ "description": "" }, "torrent": { - "name": "Torrents", + "name": "", "description": "" }, "youTube": { @@ -2780,7 +2780,7 @@ "label": "" }, "discord": { - "label": "Discord della community" + "label": "Community Discord" } } } diff --git a/packages/translation/src/lang/ja.json b/packages/translation/src/lang/ja.json index bc2751ab2..74c44a010 100644 --- a/packages/translation/src/lang/ja.json +++ b/packages/translation/src/lang/ja.json @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "ユーザー", - "name": "名称", + "user": "", + "name": "", "id": "" } }, @@ -1690,7 +1690,7 @@ "empty": "空", "table": { "file": "ファイル", - "eta": "ETA", + "eta": "", "progress": "進捗状況", "transcode": "トランスコード", "healthCheck": "" @@ -2047,9 +2047,9 @@ "tools": { "label": "ツール", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2063,7 +2063,7 @@ "sourceCode": "" } }, - "about": "About" + "about": "" } }, "page": { @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "クリエイター" @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2607,7 +2607,7 @@ "tools": { "label": "ツール", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" @@ -2617,7 +2617,7 @@ "label": "設定" }, "about": { - "label": "About" + "label": "" } } }, @@ -2842,7 +2842,7 @@ "label": "" }, "about": { - "label": "About" + "label": "" }, "homeBoard": { "label": "" diff --git a/packages/translation/src/lang/ko.json b/packages/translation/src/lang/ko.json index 0d693e760..2696d9acc 100644 --- a/packages/translation/src/lang/ko.json +++ b/packages/translation/src/lang/ko.json @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "인터넷에서 콘텐츠를 퍼옵니다. 일부 웹사이트는 액세스를 제한할 수 있습니다.", "option": { "embedUrl": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "사용자", - "name": "이름", + "user": "", + "name": "", "id": "" } }, @@ -1788,9 +1788,9 @@ "label": "", "description": "", "option": { - "sm": "Small", - "md": "Medium", - "lg": "Large" + "sm": "", + "md": "", + "lg": "" } }, "sidebarBehavior": { @@ -2047,7 +2047,7 @@ "tools": { "label": "도구", "items": { - "docker": "Docker", + "docker": "", "logs": "", "api": "", "tasks": "" @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "크리에이터" @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2607,7 +2607,7 @@ "tools": { "label": "도구", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/lt.json b/packages/translation/src/lang/lt.json index c24657e9c..3465f1815 100644 --- a/packages/translation/src/lang/lt.json +++ b/packages/translation/src/lang/lt.json @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "Įterpkite bet kokį turinį iš interneto. Kai kuriose svetainėse prieiga gali būti ribojama.", "option": { "embedUrl": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Vartotojas", - "name": "Pavadinimas", + "user": "", + "name": "", "id": "" } }, @@ -2047,9 +2047,9 @@ "tools": { "label": "Įrankiai", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Kūrėjas" @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2607,7 +2607,7 @@ "tools": { "label": "Įrankiai", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/lv.json b/packages/translation/src/lang/lv.json index c8278d041..b2e568ba5 100644 --- a/packages/translation/src/lang/lv.json +++ b/packages/translation/src/lang/lv.json @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "Iegult jebkuru saturu no interneta. Dažas vietnes var ierobežot piekļuvi.", "option": { "embedUrl": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Lietotājs", - "name": "Nosaukums", + "user": "", + "name": "", "id": "" } }, @@ -1533,7 +1533,7 @@ "columnTitle": "" }, "progress": { - "columnTitle": "Progress", + "columnTitle": "", "detailsTitle": "" }, "ratio": { @@ -1690,8 +1690,8 @@ "empty": "Tukšs", "table": { "file": "", - "eta": "ETA", - "progress": "Progress", + "eta": "", + "progress": "", "transcode": "", "healthCheck": "" } @@ -2047,9 +2047,9 @@ "tools": { "label": "Rīki", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Izveidotājs" @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2450,7 +2450,7 @@ "label": "Attēls" }, "ports": { - "label": "Ports" + "label": "" } }, "action": { @@ -2607,7 +2607,7 @@ "tools": { "label": "Rīki", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/nl.json b/packages/translation/src/lang/nl.json index 853a99864..41bb61bb5 100644 --- a/packages/translation/src/lang/nl.json +++ b/packages/translation/src/lang/nl.json @@ -136,7 +136,7 @@ "length": "Bevat ten minste 8 tekens", "lowercase": "Inclusief kleine letter", "uppercase": "Inclusief hoofdletter", - "number": "Inclusief aantal", + "number": "Inclusief getal", "special": "Inclusief speciaal teken" } }, @@ -773,7 +773,7 @@ "apply": "Toepassen", "backToOverview": "Terug naar overzicht", "create": "Aanmaken", - "edit": "Wijzigen", + "edit": "Bewerken", "import": "Importeren", "insert": "Invoegen", "remove": "Verwijderen", @@ -788,7 +788,7 @@ "next": "Volgende", "checkoutDocs": "De documentatie bekijken", "checkLogs": "Controleer logs voor meer details", - "tryAgain": "Probeer het opnieuw", + "tryAgain": "Probeer opnieuw", "loading": "Laden" }, "here": "hier", @@ -803,8 +803,8 @@ } }, "information": { - "min": "Min", - "max": "Max", + "min": "Min.", + "max": "Max.", "days": "Dagen", "hours": "Uren", "minutes": "Minuten" @@ -999,7 +999,7 @@ "label": "App kiezen" }, "openInNewTab": { - "label": "Open in nieuw tabblad" + "label": "In nieuw tabblad openen" }, "showTitle": { "label": "App naam weergeven" @@ -1026,7 +1026,7 @@ "label": "Titel" }, "layout": { - "label": "Indeling", + "label": "Lay-out", "option": { "row": { "label": "Horizontaal" @@ -1050,7 +1050,7 @@ "description": "Toont het overzicht van je DNS-hole", "option": { "layout": { - "label": "Indeling", + "label": "Lay-out", "option": { "row": { "label": "Horizontaal" @@ -1074,7 +1074,7 @@ "data": { "adsBlockedToday": "Vandaag geblokkeerd", "adsBlockedTodayPercentage": "Vandaag geblokkeerd", - "dnsQueriesToday": "Queries vandaag", + "dnsQueriesToday": "Aanvragen vandaag", "domainsBeingBlocked": "Domeinen op blokkadelijst" } }, @@ -1083,7 +1083,7 @@ "description": "Bedien PiHole of AdGuard vanaf je dashboard", "option": { "layout": { - "label": "Indeling", + "label": "Lay-out", "option": { "row": { "label": "Horizontaal" @@ -1156,7 +1156,7 @@ "description": "Een eenvoudige notitie widget die markdown ondersteunt", "option": { "showToolbar": { - "label": "Toon de werkbalk om je te helpen markdown te schrijven" + "label": "De werkbalk weergeven om je te helpen markdown te schrijven" }, "allowReadOnlyCheck": { "label": "Controle in alleen-lezen modus toestaan" @@ -1170,7 +1170,7 @@ "italic": "Schuingedrukt", "strikethrough": "Doorgestreept", "underline": "Onderstreept", - "colorText": "Kleur tekst", + "colorText": "Tekstkleur", "colorHighlight": "Gekleurde tekst markeren", "code": "Code", "clear": "Opmaak wissen", @@ -1179,19 +1179,19 @@ "blockquote": "Blokquote", "horizontalLine": "Horizontale lijn", "bulletList": "Opsommingslijst", - "orderedList": "Geordende lijst", + "orderedList": "Gerangschikte lijst", "checkList": "Controlelijst", - "increaseIndent": "Inspringen vergroten", + "increaseIndent": "Inspringing vergroten", "decreaseIndent": "Inspringen verminderen", "link": "Link", "unlink": "Link verwijderen", "image": "Afbeelding insluiten", "addTable": "Tabel toevoegen", "deleteTable": "Tabel verwijderen", - "colorCell": "Kleur cel", - "mergeCell": "Cellen samenvoegen togglen", - "addColumnLeft": "Kolom toevoegen vóór", - "addColumnRight": "Kolom toevoegen ná", + "colorCell": "Celkleur", + "mergeCell": "Cellen samenvoegen schakelen", + "addColumnLeft": "Kolom ervoor toevoegen", + "addColumnRight": "Kolom erna toevoegen", "deleteColumn": "Kolom verwijderen", "addRowTop": "Rij toevoegen vóór", "addRowBelow": "Rij toevoegen ná", @@ -1214,7 +1214,7 @@ }, "iframe": { "name": "iFrame", - "description": "Insluiten van alle inhoud van het internet. Sommige websites kunnen de toegang beperken.", + "description": "Elke inhoud van het internet insluiten. Sommige websites kunnen de toegang beperken.", "option": { "embedUrl": { "label": "URL insluiten" @@ -1254,7 +1254,7 @@ "description": "Status van een entiteit weergeven en optioneel omschakelen", "option": { "entityId": { - "label": "Entiteit-ID" + "label": "Entiteits-ID" }, "displayName": { "label": "Weergavenaam" @@ -1287,7 +1287,7 @@ "description": "Gebeurtenissen van je integraties weergeven in een kalenderweergave binnen een bepaalde relatieve tijdsperiode", "option": { "releaseType": { - "label": "Radarr release type", + "label": "Radarr uitgavetype", "options": { "inCinemas": "In bioscopen", "digitalRelease": "Digitale uitgave", @@ -1310,7 +1310,7 @@ "label": "Temperatuur in fahrenheit" }, "location": { - "label": "Weerslocatie" + "label": "Weerlocatie" }, "showCity": { "label": "Stad weergeven" @@ -1328,7 +1328,7 @@ } }, "kind": { - "clear": "Helder", + "clear": "Wissen", "mainlyClear": "Overwegend helder", "fog": "Mist", "drizzle": "Motregen", @@ -1345,14 +1345,14 @@ } }, "indexerManager": { - "name": "Indexeer beheerder status", + "name": "Indexeringsbeheerder status", "description": "Status van je indexers", "option": { "openIndexerSiteInNewTab": { "label": "Indexersite in nieuw tabblad openen" } }, - "title": "Indexeer beheerder", + "title": "Indexeringsbeheerder", "testAll": "Alles testen", "error": { "internalServerError": "Indexersstatus ophalen mislukt" @@ -1381,7 +1381,7 @@ "memory": "Geheugen: {memory}GiB", "memoryAvailable": "Beschikbaar: {memoryAvailable}GiB ({percent}%)", "version": "Versie: {version}", - "uptime": "", + "uptime": "Uptime: {days} Dagen, {hours} Uren, {minutes} Minuten", "loadAverage": "Gemiddelde belasting:", "minute": "1 minuut", "minutes": "{count} minuten", @@ -1433,10 +1433,10 @@ }, "video": { "name": "Video stream", - "description": "Een videostream of video van een camera of een website insluiten", + "description": "Een videostream of video van een camera of website insluiten", "option": { "feedUrl": { - "label": "Feed URL" + "label": "Feed-URL" }, "hasAutoPlay": { "label": "Automatisch afspelen", @@ -1459,9 +1459,9 @@ "description": "De huidige streams op je mediaservers weergeven", "option": {}, "items": { - "user": "Gebruiker", - "name": "Naam", - "id": "ID" + "user": "", + "name": "", + "id": "" } }, "downloads": { @@ -1516,7 +1516,7 @@ "detailsTitle": "Categorieën (of extra informatie)" }, "downSpeed": { - "columnTitle": "Down", + "columnTitle": "Omlaag", "detailsTitle": "Downloadsnelheid" }, "index": { @@ -1565,12 +1565,12 @@ "detailsTitle": "Client type downloaden" }, "upSpeed": { - "columnTitle": "Up", + "columnTitle": "Omhoog", "detailsTitle": "Uploadsnelheid" } }, "states": { - "downloading": "Bezig met downloaden", + "downloading": "Downloaden", "queued": "In wachtrij", "paused": "Gepauzeerd", "completed": "Voltooid", @@ -1606,7 +1606,7 @@ }, "mediaRequests-requestList": { "name": "Media-aanvragen lijst", - "description": "Bekijk een lijst met alle mediaverzoeken van je Overseerr of Jellyseerr instantie", + "description": "Bekijk een lijst met alle media-aanvragen van je Overseerr of Jellyseerr instantie", "option": { "linksTargetNewTab": { "label": "Links in nieuw tabblad openen" @@ -1628,18 +1628,18 @@ }, "mediaRequests-requestStats": { "name": "Media-aanvragen statistieken", - "description": "Statistieken over je mediaverzoeken", + "description": "Statistieken over je media-aanvragen", "option": {}, "titles": { "stats": { - "main": "Media statistieken", + "main": "Mediastatistieken", "approved": "Reeds goedgekeurd", "pending": "In afwachting van goedkeuring", "processing": "Wordt verwerkt", "declined": "Reeds geweigerd", "available": "Reeds beschikbaar", - "tv": "TV verzoeken", - "movie": "Film verzoeken", + "tv": "TV aanvragen", + "movie": "Film aanvragen", "total": "Totaal" }, "users": { @@ -1670,7 +1670,7 @@ "queued": "In wachtrij", "status": { "healthy": "Gezond", - "unhealthy": "Ongezond" + "unhealthy": "Niet-gezond" } }, "panel": { @@ -1789,7 +1789,7 @@ "description": "In versies vóór 1.0 bestonden drie verschillende modi, zodat je het aantal kolommen voor elke schermgrootte kon kiezen.", "option": { "sm": "Klein", - "md": "Middel", + "md": "Gemiddeld", "lg": "Groot" } }, @@ -1912,7 +1912,7 @@ "unrecognizedLink": "De opgegeven link wordt niet herkend en geeft geen voorbeeld, maar werkt misschien nog wel." }, "layout": { - "title": "Indeling" + "title": "Lay-out" }, "background": { "title": "Achtergrond" @@ -2298,7 +2298,7 @@ } }, "appearance": { - "title": "Opmaak", + "title": "Weergave", "defaultColorScheme": { "label": "Standaard kleurenschema", "options": { @@ -2337,7 +2337,7 @@ "label": "Pings" }, "mediaServer": { - "label": "Media server" + "label": "Mediaserver" }, "mediaOrganizer": { "label": "Media organisatoren" @@ -2440,9 +2440,9 @@ "created": "Aangemaakt", "running": "Actief", "paused": "Gepauzeerd", - "restarting": "Bezig met herstarten", + "restarting": "Herstarten", "exited": "Verlaten", - "removing": "Bezig met verwijderen", + "removing": "Verwijderen", "dead": "Dood" } }, @@ -2468,7 +2468,7 @@ } }, "stop": { - "label": "Stop", + "label": "Stoppen", "notification": { "success": { "title": "Containers gestopt", @@ -2481,7 +2481,7 @@ } }, "restart": { - "label": "Herstart", + "label": "Herstarten", "notification": { "success": { "title": "Containers herstart", @@ -2562,7 +2562,7 @@ "integrations": { "label": "Integraties", "edit": { - "label": "Wijzigen" + "label": "Bewerken" }, "new": { "label": "Nieuw" @@ -2574,7 +2574,7 @@ "label": "Nieuw" }, "edit": { - "label": "Wijzigen" + "label": "Bewerken" } }, "medias": { @@ -2586,7 +2586,7 @@ "label": "Nieuw" }, "edit": { - "label": "Wijzigen" + "label": "Bewerken" } }, "users": { @@ -2754,7 +2754,7 @@ "description": "Zoeken op het web met DuckDuckGo" }, "torrent": { - "name": "Torrents", + "name": "Verouderde torrents weergeven", "description": "Zoeken naar torrents op torrentdownloads.pro" }, "youTube": { diff --git a/packages/translation/src/lang/no.json b/packages/translation/src/lang/no.json index 1ee5bcbfd..58ab1bcb5 100644 --- a/packages/translation/src/lang/no.json +++ b/packages/translation/src/lang/no.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "Token", + "label": "", "description": "" } }, @@ -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": "iFrame", + "name": "", "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": "Feed URL" + "label": "" }, "hasAutoPlay": { "label": "Autospill", @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Bruker", - "name": "Navn", + "user": "", + "name": "", "id": "" } }, @@ -1789,7 +1789,7 @@ "description": "", "option": { "sm": "Liten", - "md": "Medium", + "md": "", "lg": "Stor" } }, @@ -2047,9 +2047,9 @@ "tools": { "label": "Verktøy", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Skaper" @@ -2213,7 +2213,7 @@ "label": "Utløpsdato" }, "token": { - "label": "Token" + "label": "" } } } @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2447,7 +2447,7 @@ } }, "containerImage": { - "label": "Image" + "label": "" }, "ports": { "label": "Porter" @@ -2455,7 +2455,7 @@ }, "action": { "start": { - "label": "Start", + "label": "", "notification": { "success": { "title": "", @@ -2607,7 +2607,7 @@ "tools": { "label": "Verktøy", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/pl.json b/packages/translation/src/lang/pl.json index 13f116851..f59cee154 100644 --- a/packages/translation/src/lang/pl.json +++ b/packages/translation/src/lang/pl.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "Token", + "label": "", "description": "" } }, @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "Admin", + "title": "", "item": { "admin": { "label": "", @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "Osadzaj dowolne treści z internetu. Niektóre strony internetowe mogą ograniczać dostęp.", "option": { "embedUrl": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Użytkownik", - "name": "Nazwa", + "user": "", + "name": "", "id": "" } }, @@ -1690,7 +1690,7 @@ "empty": "Puste", "table": { "file": "", - "eta": "ETA", + "eta": "", "progress": "Postęp", "transcode": "", "healthCheck": "" @@ -2047,9 +2047,9 @@ "tools": { "label": "Narzędzia", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Twórca" @@ -2213,7 +2213,7 @@ "label": "Wygasa" }, "token": { - "label": "Token" + "label": "" } } } @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2607,7 +2607,7 @@ "tools": { "label": "Narzędzia", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/pt.json b/packages/translation/src/lang/pt.json index 252a352fd..314552f75 100644 --- a/packages/translation/src/lang/pt.json +++ b/packages/translation/src/lang/pt.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "Token", + "label": "", "description": "" } }, @@ -1026,13 +1026,13 @@ "label": "" }, "layout": { - "label": "Layout", + "label": "", "option": { "row": { - "label": "Horizontal" + "label": "" }, "column": { - "label": "Vertical" + "label": "" }, "grid": { "label": "" @@ -1050,13 +1050,13 @@ "description": "", "option": { "layout": { - "label": "Layout", + "label": "", "option": { "row": { - "label": "Horizontal" + "label": "" }, "column": { - "label": "Vertical" + "label": "" }, "grid": { "label": "" @@ -1083,13 +1083,13 @@ "description": "Controle o PiHole ou o AdGuard em seu painel de controle", "option": { "layout": { - "label": "Layout", + "label": "", "option": { "row": { - "label": "Horizontal" + "label": "" }, "column": { - "label": "Vertical" + "label": "" }, "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": "iFrame", + "name": "", "description": "Incorporar qualquer conteúdo da internet. Alguns sites podem restringir o acesso.", "option": { "embedUrl": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Usuário", - "name": "Nome", + "user": "", + "name": "", "id": "" } }, @@ -1640,7 +1640,7 @@ "available": "", "tv": "Solicitações de TV", "movie": "Solicitações de filmes", - "total": "Total" + "total": "" }, "users": { "main": "Principais usuários", @@ -1682,7 +1682,7 @@ "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "Codecs", + "videoCodecs": "", "videoContainers": "", "videoResolutions": "" }, @@ -1912,7 +1912,7 @@ "unrecognizedLink": "" }, "layout": { - "title": "Layout" + "title": "" }, "background": { "title": "Antecedentes" @@ -2047,9 +2047,9 @@ "tools": { "label": "Ferramentas", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Criador" @@ -2213,7 +2213,7 @@ "label": "Data de expiração" }, "token": { - "label": "Token" + "label": "" } } } @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2607,7 +2607,7 @@ "tools": { "label": "Ferramentas", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/ro.json b/packages/translation/src/lang/ro.json index d1bb5d5df..c9d12cd85 100644 --- a/packages/translation/src/lang/ro.json +++ b/packages/translation/src/lang/ro.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "Token", + "label": "", "description": "" } }, @@ -733,7 +733,7 @@ "field": { "name": "Nume", "size": "Mărime", - "creator": "Creator" + "creator": "" }, "action": { "upload": { @@ -1032,7 +1032,7 @@ "label": "Orizontal" }, "column": { - "label": "Vertical" + "label": "" }, "grid": { "label": "" @@ -1056,7 +1056,7 @@ "label": "Orizontal" }, "column": { - "label": "Vertical" + "label": "" }, "grid": { "label": "" @@ -1089,7 +1089,7 @@ "label": "Orizontal" }, "column": { - "label": "Vertical" + "label": "" }, "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": "iFrame", + "name": "", "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": "Calendar", + "name": "", "description": "", "option": { "releaseType": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Utilizator", - "name": "Nume", + "user": "", + "name": "", "id": "" } }, @@ -1640,7 +1640,7 @@ "available": "", "tv": "Cereri seriale TV", "movie": "Cereri filme", - "total": "Total" + "total": "" }, "users": { "main": "Top utilizatori", @@ -1897,7 +1897,7 @@ "label": "Nume" }, "isPublic": { - "label": "Public", + "label": "", "description": "" } }, @@ -1908,7 +1908,7 @@ "title": "", "section": { "general": { - "title": "General", + "title": "", "unrecognizedLink": "" }, "layout": { @@ -2047,9 +2047,9 @@ "tools": { "label": "Unelte", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2132,7 +2132,7 @@ "fieldsDisabledExternalProvider": "", "setting": { "general": { - "title": "General", + "title": "", "item": { "language": "", "board": "", @@ -2204,16 +2204,16 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { - "label": "Creator" + "label": "" }, "expirationDate": { "label": "Data expirării" }, "token": { - "label": "Token" + "label": "" } } } @@ -2222,7 +2222,7 @@ "back": "", "setting": { "general": { - "title": "General", + "title": "", "owner": "Proprietar", "ownerOfGroup": "", "ownerOfGroupDeleted": "" @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2594,7 +2594,7 @@ "create": { "label": "Creează" }, - "general": "General", + "general": "", "security": "Securitate", "board": "Planșe", "groups": { @@ -2607,7 +2607,7 @@ "tools": { "label": "Unelte", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/ru.json b/packages/translation/src/lang/ru.json index d91ea0afb..160e884a1 100644 --- a/packages/translation/src/lang/ru.json +++ b/packages/translation/src/lang/ru.json @@ -14,7 +14,7 @@ "title": "Импорт данных", "subtitle": "Вы можете импортировать данные из существующего экземпляра Homarr.", "dropzone": { - "title": "Перетащите ZIP-файл сюда или нажмите для выбора", + "title": "Перетащите ZIP-файл сюда или нажмите для его выбора", "description": "Загруженный ZIP-файл будет обработан, и вы сможете выбрать, что хотите импортировать" }, "fileInfo": { @@ -44,7 +44,7 @@ "apps": "Приложения", "boards": "Панели", "integrations": "Интеграции", - "credentialUsers": "Пользователи учетных данных" + "credentialUsers": "Учетные данные пользователя" } }, "tokenModal": { @@ -276,7 +276,7 @@ }, "select": { "label": "Выбрать пользователя", - "notFound": "Пользователи не найдены" + "notFound": "Пользователь не найден" }, "transfer": { "label": "Выбрать нового владельца" @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "Администратор", + "title": "Администрирование", "item": { "admin": { "label": "Администратор", @@ -372,12 +372,12 @@ "description": "Разрешить участникам загружать медиафайлы" }, "view-all": { - "label": "Просмотр всех медиафайлов", - "description": "Разрешить участникам просматривать все медиафайлы" + "label": "Полный доступ к медиафайлам", + "description": "Разрешить участникам управлять и удалять любые медиафайлы" }, "full-all": { "label": "Полный доступ к медиафайлам", - "description": "Разрешить участникам управлять и удалять любые медиафайлы" + "description": "Разрешить участникам управлять и удалять любыми медиафайлами" } } }, @@ -385,8 +385,8 @@ "title": "Прочее", "item": { "view-logs": { - "label": "Просмотр журналов", - "description": "Разрешить участникам просматривать журналы" + "label": "Просмотр логов", + "description": "Разрешить участникам просматривать логи" } } }, @@ -409,8 +409,8 @@ } }, "memberNotice": { - "mixed": "Некоторые участники используют внешние системы аутентификации и не могут управляться здесь", - "external": "Все участники используют внешние системы аутентификации и не могут управляться здесь" + "mixed": "Некоторыми участниками управляет внешняя система аутентификации, их нельзя настроить здесь", + "external": "Всеми участниками управляют внешние системы аутентификации, их нельзя настроить здесь" }, "reservedNotice": { "message": "Эта группа зарезервирована для системных нужд и имеет ограничения на некоторые действия. " @@ -560,48 +560,48 @@ "page": { "list": { "title": "Интеграции", - "search": "", + "search": "Поиск интеграций", "noResults": { - "title": "" + "title": "Интеграции пока отсутствуют" } }, "create": { - "title": "", + "title": "Новая интеграция {name}", "notification": { "success": { - "title": "Приложение создано", - "message": "" + "title": "Интеграция создана", + "message": "Интеграция успешно создана" }, "error": { "title": "Не удалось создать", - "message": "" + "message": "Не удалось создать интеграцию" } } }, "edit": { - "title": "", + "title": "Редактирование интеграции {name}", "notification": { "success": { "title": "Изменения сохранены", - "message": "" + "message": "Интеграция успешно сохранена" }, "error": { "title": "Не удалось сохранить", - "message": "" + "message": "Не удалось сохранить интеграцию" } } }, "delete": { - "title": "", - "message": "", + "title": "Удаление интеграции", + "message": "Вы уверены, что хотите удалить интеграцию {name}?", "notification": { "success": { - "title": "Приложение удалено", - "message": "" + "title": "Интеграция удалена", + "message": "Интеграция успешно удалена" }, "error": { "title": "Не удалось удалить", - "message": "" + "message": "Не удалось удалить интеграцию" } } } @@ -615,105 +615,105 @@ } }, "action": { - "create": "" + "create": "Новая интеграция" }, "testConnection": { "action": { - "create": "", - "edit": "" + "create": "Проверить подключение и создать", + "edit": "Проверить подключение и сохранить" }, - "alertNotice": "", + "alertNotice": "Кнопка сохранения станет доступна после успешного подключения", "notification": { "success": { - "title": "", - "message": "" + "title": "Подключение установлено", + "message": "Подключение успешно установлено" }, "invalidUrl": { - "title": "Недействительный URL", - "message": "" + "title": "Недействительный URL-адрес", + "message": "Указан недействительный URL-адрес" }, "secretNotDefined": { - "title": "", - "message": "" + "title": "Отсутствуют учётные данные", + "message": "Не все учётные данные были предоставлены" }, "invalidCredentials": { - "title": "", - "message": "" + "title": "Неверные учётные данные", + "message": "Предоставлены неверные учётные данные" }, "commonError": { - "title": "", - "message": "" + "title": "Ошибка подключения", + "message": "Не удалось установить подключение" }, "badRequest": { - "title": "", - "message": "" + "title": "Неверный запрос", + "message": "Запрос сформирован некорректно" }, "unauthorized": { - "title": "", - "message": "" + "title": "Нет доступа", + "message": "Возможно, указаны неверные учётные данные" }, "forbidden": { - "title": "", - "message": "" + "title": "Доступ запрещён", + "message": "Возможно, недостаточно прав доступа" }, "notFound": { - "title": "", - "message": "" + "title": "Не найдено", + "message": "Возможно, указан неверный URL-адрес или путь" }, "internalServerError": { - "title": "", - "message": "" + "title": "Внутренняя ошибка сервера", + "message": "На сервере произошла ошибка" }, "serviceUnavailable": { - "title": "", - "message": "" + "title": "Сервис недоступен", + "message": "Сервер временно недоступен" }, "connectionAborted": { - "title": "", - "message": "" + "title": "Подключение прервано", + "message": "Подключение было прервано" }, "domainNotFound": { - "title": "", - "message": "" + "title": "Домен не найден", + "message": "Не удалось найти указанный домен" }, "connectionRefused": { - "title": "", - "message": "" + "title": "В подключении отказано", + "message": "В подключении было отказано" }, "invalidJson": { - "title": "", - "message": "" + "title": "Некорректный JSON", + "message": "Ответ сервера содержит некорректный JSON" }, "wrongPath": { - "title": "", - "message": "" + "title": "Неверный путь", + "message": "Возможно, указан неверный путь" } } }, "secrets": { - "title": "", - "lastUpdated": "", + "title": "Данные авторизации", + "lastUpdated": "Последнее обновление: {date}", "notSet": { - "label": "", - "tooltip": "" + "label": "Значение не указано", + "tooltip": "Обязательное значение ещё не установлено" }, - "secureNotice": "", + "secureNotice": "Эти данные нельзя будет просмотреть после создания", "reset": { - "title": "", - "message": "" + "title": "Сбросить данные авторизации", + "message": "Вы уверены, что хотите сбросить эти данные авторизации?" }, "noSecretsRequired": { - "segmentTitle": "", - "text": "" + "segmentTitle": "Авторизация не требуется", + "text": "Для этой интеграции не требуются данные авторизации" }, "kind": { "username": { "label": "Имя пользователя", - "newLabel": "" + "newLabel": "Новое имя пользователя" }, "apiKey": { - "label": "", - "newLabel": "" + "label": "API-ключ", + "newLabel": "Новый API-ключ" }, "password": { "label": "Пароль", @@ -722,14 +722,14 @@ } }, "permission": { - "use": "", - "interact": "", - "full": "Полный доступ к интеграциям" + "use": "Подключение сторонних сервисов", + "interact": "Взаимодействие с подключенными сервисами", + "full": "Полное управление интеграциями" } }, "media": { "plural": "Медиафайлы", - "search": "", + "search": "Поиск медиафайлов", "field": { "name": "Название", "size": "Размер", @@ -737,154 +737,154 @@ }, "action": { "upload": { - "label": "", - "file": "", + "label": "Загрузить медиафайл", + "file": "Выбрать файл", "notification": { "success": { - "message": "" + "message": "Медиафайл успешно загружен" }, "error": { - "message": "" + "message": "Не удалось загрузить медиафайл" } } }, "delete": { - "label": "", - "description": "", + "label": "Удалить медиафайл", + "description": "Вы уверены, что хотите удалить медиафайл ?", "notification": { "success": { - "message": "" + "message": "Медиафайл успешно удалён" }, "error": { - "message": "" + "message": "Не удалось удалить медиафайл" } } }, "copy": { - "label": "" + "label": "Копировать URL" } } }, "common": { - "beta": "", + "beta": "Бета", "error": "Ошибка", "action": { "add": "Добавить", "apply": "Применить", - "backToOverview": "", + "backToOverview": "Вернуться к обзору", "create": "Создать", "edit": "Редактировать", - "import": "", + "import": "Импортировать", "insert": "Вставить", "remove": "Удалить", "save": "Сохранить", "saveChanges": "Сохранить изменения", "cancel": "Отмена", "delete": "Удалить", - "discard": "", + "discard": "Отменить", "confirm": "Подтвердить", - "continue": "", + "continue": "Продолжить", "previous": "Назад", "next": "Далее", - "checkoutDocs": "", - "checkLogs": "", - "tryAgain": "Повторить", - "loading": "" + "checkoutDocs": "Посмотреть документацию", + "checkLogs": "Проверить логи для подробностей", + "tryAgain": "Попробовать снова", + "loading": "Загрузка" }, - "here": "", + "here": "здесь", "iconPicker": { - "label": "", - "header": "" + "label": "URL иконки", + "header": "Введите название или объекты для фильтрации иконок... Homarr найдёт для вас среди {countIcons} иконок." }, "colorScheme": { "options": { - "light": "", - "dark": "" + "light": "Светлая", + "dark": "Тёмная" } }, "information": { - "min": "", - "max": "", - "days": "", - "hours": "Часы", - "minutes": "Минуты" + "min": "Мин.", + "max": "Макс.", + "days": "Дней", + "hours": "Часов", + "minutes": "Минут" }, "notification": { "create": { - "success": "Приложение создано", + "success": "Создание успешно завершено", "error": "Не удалось создать" }, "delete": { - "success": "Приложение удалено", + "success": "Удаление успешно завершено", "error": "Не удалось удалить" }, "update": { - "success": "Изменения сохранены", - "error": "Не удалось сохранить" + "success": "Изменения успешно применены", + "error": "Не удалось применить изменения" }, "transfer": { - "success": "", - "error": "" + "success": "Передача успешно завершена", + "error": "Не удалось выполнить передачу" } }, "multiSelect": { - "placeholder": "" + "placeholder": "Выберите одно или несколько значений" }, "multiText": { - "placeholder": "", - "addLabel": "" + "placeholder": "Добавить ещё значения", + "addLabel": "Добавить {value}" }, "select": { - "placeholder": "", + "placeholder": "Выберите значение", "badge": { - "recommended": "" + "recommended": "Рекомендуется" } }, "userAvatar": { "menu": { - "switchToDarkMode": "", - "switchToLightMode": "", - "management": "", - "preferences": "Ваши настройки", - "logout": "", + "switchToDarkMode": "Переключить на тёмную тему", + "switchToLightMode": "Переключить на светлую тему", + "management": "Управление", + "preferences": "Настройки", + "logout": "Выйти", "login": "Вход", - "homeBoard": "", - "loggedOut": "", - "updateAvailable": "" + "homeBoard": "Ваша домашняя панель", + "loggedOut": "Выход выполнен", + "updateAvailable": "Доступно {countUpdates} обновлений: {tag}" } }, "dangerZone": "Опасная зона", - "noResults": "Результаты не найдены", + "noResults": "Ничего не найдено", "preview": { - "show": "", - "hide": "" + "show": "Показать предпросмотр", + "hide": "Скрыть предпросмотр" }, "zod": { "errors": { - "default": "Недопустимое значение поля", - "required": "Это поле обязательно", + "default": "Поле заполнено неверно", + "required": "Это поле обязательно для заполнения", "string": { - "startsWith": "Значение данного поля должно начинаться с {startsWith}", - "endsWith": "Значение данного поля должно заканчиваться на {endsWith}", - "includes": "Значение данного поля должно включать {includes}", - "invalidEmail": "" + "startsWith": "Поле должно начинаться с {startsWith}", + "endsWith": "Поле должно заканчиваться на {endsWith}", + "includes": "Поле должно содержать {includes}", + "invalidEmail": "Поле должно содержать корректный email" }, "tooSmall": { - "string": "Данное поле должно содержать не менее {minimum} символов", - "number": "Значение данного поля должно быть больше или равно {minimum}" + "string": "Поле должно содержать не менее {minimum} символов", + "number": "Значение должно быть больше или равно {minimum}" }, "tooBig": { - "string": "Данное поле должно содержать не более {maximum} символов", - "number": "Значение этого поля должно быть меньше или равно {maximum}" + "string": "Поле должно содержать не более {maximum} символов", + "number": "Значение должно быть меньше или равно {maximum}" }, "custom": { - "passwordsDoNotMatch": "", - "passwordRequirements": "", - "boardAlreadyExists": "", - "invalidFileType": "", - "fileTooLarge": "", - "invalidConfiguration": "", - "groupNameTaken": "" + "passwordsDoNotMatch": "Пароли не совпадают", + "passwordRequirements": "Пароль не соответствует требованиям", + "boardAlreadyExists": "Панель с таким именем уже существует", + "invalidFileType": "Неверный тип файла, ожидается {expected}", + "fileTooLarge": "Файл слишком большой, максимальный размер {maxSize}", + "invalidConfiguration": "Неверная конфигурация", + "groupNameTaken": "Имя группы уже занято" } } } @@ -892,12 +892,12 @@ "section": { "dynamic": { "action": { - "create": "", - "remove": "" + "create": "Новый динамический элемент", + "remove": "Удалить динамический элемент" }, "remove": { - "title": "", - "message": "" + "title": "Удалить динамический элемент", + "message": "Вы уверены, что хотите удалить этот динамический элемент? Содержимое будет перемещено в то же место в родительском элементе." } }, "category": { @@ -907,42 +907,42 @@ } }, "action": { - "create": "", - "edit": "", - "remove": "", + "create": "Новая категория", + "edit": "Переименовать категорию", + "remove": "Удалить категорию", "moveUp": "Переместить вверх", "moveDown": "Переместить вниз", - "createAbove": "", - "createBelow": "" + "createAbove": "Создать категорию выше", + "createBelow": "Создать категорию ниже" }, "create": { - "title": "", - "submit": "" + "title": "Новая категория", + "submit": "Добавить категорию" }, "remove": { - "title": "", - "message": "" + "title": "Удалить категорию", + "message": "Вы уверены, что хотите удалить категорию {name}?" }, "edit": { - "title": "", - "submit": "" + "title": "Переименовать категорию", + "submit": "Переименовать категорию" }, "menu": { "label": { - "create": "", - "changePosition": "Изменить положение" + "create": "Новая категория", + "changePosition": "Изменить позицию" } } } }, "item": { "action": { - "create": "", - "import": "", - "edit": "", - "moveResize": "", - "duplicate": "", - "remove": "" + "create": "Новый элемент", + "import": "Импортировать элемент", + "edit": "Редактировать элемент", + "moveResize": "Переместить / изменить размер", + "duplicate": "Дублировать элемент", + "remove": "Удалить элемент" }, "menu": { "label": { @@ -950,11 +950,11 @@ } }, "create": { - "title": "", - "addToBoard": "" + "title": "Выберите тип элемента", + "addToBoard": "Добавить на панель" }, "moveResize": { - "title": "", + "title": "Переместить / изменить размер элемента", "field": { "width": { "label": "Ширина" @@ -963,70 +963,70 @@ "label": "Высота" }, "xOffset": { - "label": "" + "label": "Смещение по X" }, "yOffset": { - "label": "" + "label": "Смещение по Y" } } }, "edit": { - "title": "", + "title": "Редактировать элемент", "advancedOptions": { - "label": "", - "title": "" + "label": "Расширенные настройки", + "title": "Расширенные настройки элемента" }, "field": { "integrations": { "label": "Интеграции" }, "customCssClasses": { - "label": "" + "label": "Пользовательские CSS классы" } } }, "remove": { - "title": "", - "message": "" + "title": "Удалить элемент", + "message": "Вы уверены, что хотите удалить этот элемент?" } }, "widget": { "app": { - "name": "", - "description": "", + "name": "Приложение", + "description": "Встраивает приложение в панель.", "option": { "appId": { - "label": "" + "label": "Выберите приложение" }, "openInNewTab": { "label": "Открывать в новой вкладке" }, "showTitle": { - "label": "" + "label": "Показывать название приложения" }, "showDescriptionTooltip": { - "label": "" + "label": "Показывать всплывающую подсказку с описанием" }, "pingEnabled": { - "label": "" + "label": "Включить простую проверку доступности" } }, "error": { "notFound": { - "label": "", - "tooltip": "" + "label": "Нет приложения", + "tooltip": "Не выбрано корректное приложение" } } }, "bookmarks": { - "name": "", - "description": "", + "name": "Закладки", + "description": "Отображает несколько ссылок на приложение", "option": { "title": { - "label": "" + "label": "Заголовок" }, "layout": { - "label": "Макет", + "label": "Расположение", "option": { "row": { "label": "Горизонтально" @@ -1035,22 +1035,22 @@ "label": "Вертикально" }, "grid": { - "label": "" + "label": "Сетка" } } }, "items": { - "label": "", - "add": "" + "label": "Закладки", + "add": "Добавить закладку" } } }, "dnsHoleSummary": { - "name": "", - "description": "", + "name": "Сводка DNS-фильтра", + "description": "Отображает сводную информацию о вашем DNS-фильтре", "option": { "layout": { - "label": "Макет", + "label": "Расположение", "option": { "row": { "label": "Горизонтально" @@ -1059,31 +1059,31 @@ "label": "Вертикально" }, "grid": { - "label": "" + "label": "Сетка" } } }, "usePiHoleColors": { - "label": "" + "label": "Использовать цвета Pi-hole" } }, "error": { - "internalServerError": "", - "integrationsDisconnected": "" + "internalServerError": "Не удалось получить сводку DNS-фильтра", + "integrationsDisconnected": "Нет данных, все интеграции отключены" }, "data": { "adsBlockedToday": "заблокировано сегодня", "adsBlockedTodayPercentage": "заблокировано сегодня", - "dnsQueriesToday": "запросов сегодня", - "domainsBeingBlocked": "" + "dnsQueriesToday": "DNS-запросов сегодня", + "domainsBeingBlocked": "Доменов в списке блокировки" } }, "dnsHoleControls": { - "name": "", - "description": "Управляйте PiHole или AdGuard с панели управления", + "name": "Управление DNS-фильтром", + "description": "Управляйте PiHole или AdGuard прямо с вашей панели", "option": { "layout": { - "label": "Макет", + "label": "Расположение", "option": { "row": { "label": "Горизонтально" @@ -1092,81 +1092,81 @@ "label": "Вертикально" }, "grid": { - "label": "" + "label": "Сетка" } } }, "showToggleAllButtons": { - "label": "" + "label": "Показывать кнопки управления защитой" } }, "error": { - "internalServerError": "" + "internalServerError": "Не удалось управлять DNS-фильтром" }, "controls": { - "enableAll": "", - "disableAll": "", - "setTimer": "", + "enableAll": "Включить защиту", + "disableAll": "Отключить защиту", + "setTimer": "Установить таймер", "set": "Установить", "enabled": "Включено", "disabled": "Отключено", - "processing": "", - "disconnected": "", + "processing": "Обработка", + "disconnected": "Отключено", "hours": "Часы", "minutes": "Минуты", - "unlimited": "" + "unlimited": "Оставить пустым для неограниченного времени" } }, "clock": { - "name": "", + "name": "Дата и время", "description": "Отображает текущую дату и время.", "option": { "customTitleToggle": { - "label": "", - "description": "" + "label": "Настроить отображение заголовка/города", + "description": "Показывать настраиваемый заголовок или название города/страны над часами." }, "customTitle": { - "label": "" + "label": "Заголовок" }, "is24HourFormat": { - "label": "", - "description": "" + "label": "24-часовой формат", + "description": "Использовать 24-часовой формат вместо 12-часового" }, "showSeconds": { - "label": "" + "label": "Показывать секунды" }, "useCustomTimezone": { - "label": "" + "label": "Использовать другой часовой пояс" }, "timezone": { "label": "Часовой пояс", - "description": "" + "description": "Выберите часовой пояс согласно стандарту IANA" }, "showDate": { - "label": "" + "label": "Показывать дату" }, "dateFormat": { - "label": "", - "description": "" + "label": "Формат даты", + "description": "Как должна выглядеть дата" } } }, "notebook": { - "name": "Блокнот", - "description": "", + "name": "Заметки", + "description": "Простой виджет заметок с поддержкой markdown", "option": { "showToolbar": { - "label": "Показывать панель инструментов для работы с Markdown" + "label": "Показывать панель инструментов для редактирования markdown" }, "allowReadOnlyCheck": { - "label": "Разрешить отметки в режиме только для чтения" + "label": "Разрешить отмечать пункты в режиме чтения" }, "content": { - "label": "Содержимое блокнота" + "label": "Содержимое заметок" } }, "controls": { - "bold": "Полужирный", + "bold": "Жирный", "italic": "Курсив", "strikethrough": "Зачёркнутый", "underline": "Подчёркнутый", @@ -1175,16 +1175,16 @@ "code": "Код", "clear": "Очистить форматирование", "heading": "Заголовок {level}", - "align": "Выровнять текст: {position}", + "align": "Выравнивание текста: {position}", "blockquote": "Цитата", "horizontalLine": "Горизонтальная линия", "bulletList": "Маркированный список", "orderedList": "Нумерованный список", - "checkList": "Список с галочками", + "checkList": "Список с чекбоксами", "increaseIndent": "Увеличить отступ", "decreaseIndent": "Уменьшить отступ", "link": "Ссылка", - "unlink": "Убрать ссылку", + "unlink": "Удалить ссылку", "image": "Вставить изображение", "addTable": "Добавить таблицу", "deleteTable": "Удалить таблицу", @@ -1198,13 +1198,13 @@ "deleteRow": "Удалить строку" }, "align": { - "left": "Слева", + "left": "По левому краю", "center": "По центру", - "right": "Справа" + "right": "По правому краю" }, "popover": { "clearColor": "Очистить цвет", - "source": "Исходный код", + "source": "Источник", "widthPlaceholder": "Значение в % или пикселях", "columns": "Столбцы", "rows": "Строки", @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "Встраиваемый фрейм", + "name": "iFrame", "description": "Встраивает любой контент из интернета. Некоторые сайты могут ограничивать доступ.", "option": { "embedUrl": { @@ -1245,31 +1245,31 @@ } }, "error": { - "noUrl": "", - "noBrowerSupport": "Ваш браузер не поддерживает встраиваемые фреймы. Пожалуйста, обновите браузер." + "noUrl": "URL для iFrame не указан", + "noBrowerSupport": "Ваш браузер не поддерживает iframes. Пожалуйста, обновите браузер." } }, "smartHome-entityState": { - "name": "", - "description": "", + "name": "Состояние объекта", + "description": "Отображает состояние объекта и позволяет управлять им при необходимости", "option": { "entityId": { "label": "ID объекта" }, "displayName": { - "label": "" + "label": "Отображаемое имя" }, "entityUnit": { - "label": "" + "label": "Единица измерения" }, "clickable": { - "label": "" + "label": "Кликабельный" } } }, "smartHome-executeAutomation": { - "name": "", - "description": "", + "name": "Запуск автоматизации", + "description": "Запускает автоматизацию одним нажатием", "option": { "displayName": { "label": "Отображаемое имя" @@ -1279,26 +1279,26 @@ } }, "spotlightAction": { - "run": "" + "run": "Запустить {name}" } }, "calendar": { "name": "Календарь", - "description": "", + "description": "Отображает события из ваших интеграций в календаре в определённом временном периоде", "option": { "releaseType": { "label": "Тип релиза Radarr", "options": { - "inCinemas": "", - "digitalRelease": "", - "physicalRelease": "" + "inCinemas": "В кинотеатрах", + "digitalRelease": "Цифровой релиз", + "physicalRelease": "Физический релиз" } }, "filterPastMonths": { - "label": "" + "label": "Начиная с" }, "filterFutureMonths": { - "label": "" + "label": "Заканчивая" } } }, @@ -1307,24 +1307,24 @@ "description": "Отображает текущую информацию о погоде для указанного местоположения.", "option": { "isFormatFahrenheit": { - "label": "" + "label": "Температура в градусах Фаренгейта" }, "location": { "label": "Местоположение" }, "showCity": { - "label": "" + "label": "Показывать город" }, "hasForecast": { - "label": "" + "label": "Показывать прогноз" }, "forecastDayCount": { - "label": "", - "description": "" + "label": "Количество дней прогноза", + "description": "Если виджет недостаточно широкий, будет показано меньше дней" }, "dateFormat": { - "label": "", - "description": "" + "label": "Формат даты", + "description": "Как должна отображаться дата" } }, "kind": { @@ -1332,9 +1332,9 @@ "mainlyClear": "Преимущественно ясно", "fog": "Туман", "drizzle": "Морось", - "freezingDrizzle": "Ледяная морось", + "freezingDrizzle": "Изморозь", "rain": "Дождь", - "freezingRain": "Ледяной дождь", + "freezingRain": "Моросящий дождь", "snowFall": "Снегопад", "snowGrains": "Снежная крупа", "rainShowers": "Ливень", @@ -1345,28 +1345,28 @@ } }, "indexerManager": { - "name": "Состояние менеджера индексации", - "description": "", + "name": "Состояние индексаторов", + "description": "Статус ваших индексаторов", "option": { "openIndexerSiteInNewTab": { - "label": "" + "label": "Открывать сайт индексатора в новой вкладке" } }, - "title": "Менеджер индексации", + "title": "Индексаторы", "testAll": "Проверить все", "error": { - "internalServerError": "" + "internalServerError": "Не удалось получить статус индексаторов" } }, "healthMonitoring": { "name": "Мониторинг состояния системы", - "description": "Отображает информацию о состоянии и работоспособности ваших систем.", + "description": "Отображает информацию о состоянии и работоспособности вашей системы (систем).", "option": { "fahrenheit": { "label": "Температура CPU в градусах Фаренгейта" }, "cpu": { - "label": "Показывать информацию о CPU" + "label": "Показывать информацию о процессоре" }, "memory": { "label": "Показать информацию о памяти" @@ -1376,41 +1376,41 @@ } }, "popover": { - "information": "", - "processor": "", - "memory": "", - "memoryAvailable": "", - "version": "", - "uptime": "", - "loadAverage": "", - "minute": "", - "minutes": "", - "used": "", + "information": "Информация", + "processor": "Процессор: {cpuModelName}", + "memory": "Память: {memory}GiB", + "memoryAvailable": "Доступно: {memoryAvailable}GiB ({percent}%)", + "version": "Версия: {version}", + "uptime": "Время работы: {months} мес., {days} дн., {hours} ч., {minutes} мин.", + "loadAverage": "Средняя нагрузка:", + "minute": "1 минута", + "minutes": "{count} минут", + "used": "Использовано", "available": "Доступно", - "lastSeen": "" + "lastSeen": "Последнее обновление: {lastSeen}" }, "memory": {}, "error": { - "internalServerError": "" + "internalServerError": "Не удалось получить данные о состоянии системы" } }, "common": { "location": { - "query": "", - "latitude": "", - "longitude": "", - "disabledTooltip": "", - "unknownLocation": "", + "query": "Город / Почтовый индекс", + "latitude": "Широта", + "longitude": "Долгота", + "disabledTooltip": "Пожалуйста, введите город или почтовый индекс", + "unknownLocation": "Неизвестное местоположение", "search": "Поиск", "table": { "header": { - "city": "", - "country": "", - "coordinates": "", - "population": "" + "city": "Город", + "country": "Страна", + "coordinates": "Координаты", + "population": "Население" }, "action": { - "select": "" + "select": "Выбрать {city}, {countryCode}" }, "population": { "fallback": "Неизвестно" @@ -1418,40 +1418,40 @@ } }, "integration": { - "noData": "", - "description": "" + "noData": "Интеграции не найдены", + "description": "Нажмите , чтобы создать новую интеграцию" }, "app": { "noData": "Приложения не найдены", - "description": "" + "description": "Нажмите , чтобы создать новое приложение" }, "error": { - "noIntegration": "", - "noData": "" + "noIntegration": "Интеграция не выбрана", + "noData": "Данные интеграции недоступны" }, "option": {} }, "video": { - "name": "Видеопоток", - "description": "Встраивание видеопотока или видео с камеры или веб-сайта", + "name": "Видеотрансляция", + "description": "Встраивает видео с камеры или трансляцию с веб-сайта", "option": { "feedUrl": { - "label": "URL потока" + "label": "URL трансляции" }, "hasAutoPlay": { "label": "Автовоспроизведение", - "description": "" + "description": "Автовоспроизведение работает только при отключенном звуке из-за ограничений браузера" }, "isMuted": { - "label": "" + "label": "Без звука" }, "hasControls": { - "label": "" + "label": "Показывать элементы управления" } }, "error": { - "noUrl": "", - "forYoutubeUseIframe": "" + "noUrl": "URL видео не указан", + "forYoutubeUseIframe": "Для видео с YouTube используйте виджет iframe" } }, "mediaServer": { @@ -1459,175 +1459,175 @@ "description": "Отображает текущие сеансы воспроизведения на медиасерверах", "option": {}, "items": { - "user": "Пользователь", - "name": "Название", + "user": "", + "name": "", "id": "" } }, "downloads": { - "name": "", - "description": "", + "name": "Загрузки", + "description": "Позволяет просматривать и управлять загрузками как из торрент-клиентов, так и из Usenet-клиентов.", "option": { "columns": { - "label": "" + "label": "Отображаемые столбцы" }, "enableRowSorting": { - "label": "" + "label": "Включить сортировку элементов" }, "defaultSort": { - "label": "" + "label": "Столбец для сортировки по умолчанию" }, "descendingDefaultSort": { - "label": "" + "label": "Обратная сортировка" }, "showCompletedUsenet": { - "label": "" + "label": "Показывать завершённые задачи Usenet" }, "showCompletedTorrent": { - "label": "" + "label": "Показывать завершённые торренты" }, "activeTorrentThreshold": { - "label": "" + "label": "Скрывать завершённые торренты ниже этого порога (в КиБ/с)" }, "categoryFilter": { - "label": "" + "label": "Фильтр по категориям/меткам" }, "filterIsWhitelist": { - "label": "" + "label": "Использовать фильтр как белый список" }, "applyFilterToRatio": { - "label": "" + "label": "Использовать фильтр при расчёте рейтинга" } }, "errors": { - "noColumns": "", - "noCommunications": "" + "noColumns": "Выберите столбцы в настройках элементов", + "noCommunications": "Не удалось загрузить данные из интеграции" }, "items": { "actions": { - "columnTitle": "" + "columnTitle": "Управление" }, "added": { - "columnTitle": "", + "columnTitle": "Добавлено", "detailsTitle": "Дата добавления" }, "category": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "Дополнительно", + "detailsTitle": "Категории (или дополнительная информация)" }, "downSpeed": { "columnTitle": "Загрузка", "detailsTitle": "Скорость загрузки" }, "index": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "#", + "detailsTitle": "Текущий индекс в клиенте" }, "id": { - "columnTitle": "" + "columnTitle": "Id" }, "integration": { "columnTitle": "Интеграция" }, "name": { - "columnTitle": "" + "columnTitle": "Название задачи" }, "progress": { "columnTitle": "Прогресс", - "detailsTitle": "" + "detailsTitle": "Прогресс загрузки" }, "ratio": { "columnTitle": "Рейтинг", - "detailsTitle": "" + "detailsTitle": "Рейтинг торрента (получено/отдано)" }, "received": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "Всего загружено", + "detailsTitle": "Всего загружено" }, "sent": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "Всего отдано", + "detailsTitle": "Всего отдано" }, "size": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "Размер файла", + "detailsTitle": "Общий размер выбранного/файлов" }, "state": { "columnTitle": "Состояние", - "detailsTitle": "" + "detailsTitle": "Состояние задачи" }, "time": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "Время завершения", + "detailsTitle": "Время с/до завершения" }, "type": { - "columnTitle": "", - "detailsTitle": "" + "columnTitle": "Тип", + "detailsTitle": "Тип клиента загрузки" }, "upSpeed": { "columnTitle": "Отдача", - "detailsTitle": "" + "detailsTitle": "Скорость отдачи" } }, "states": { "downloading": "Загрузка", - "queued": "Очередь", + "queued": "В очереди", "paused": "Приостановлено", "completed": "Завершено", - "failed": "", - "processing": "", - "leeching": "", - "stalled": "", + "failed": "Ошибка", + "processing": "Обработка", + "leeching": "Скачивание", + "stalled": "Простаивает", "unknown": "Неизвестно", - "seeding": "" + "seeding": "Раздача" }, "actions": { "clients": { - "modalTitle": "", - "pause": "", - "resume": "" + "modalTitle": "Клиенты", + "pause": "Приостановить все клиенты/задачи", + "resume": "Возобновить все клиенты/задачи" }, "client": { - "pause": "", - "resume": "" + "pause": "Приостановить клиент", + "resume": "Возобновить клиент" }, "item": { - "pause": "", - "resume": "", + "pause": "Приостановить задачу", + "resume": "Возобновить задачу", "delete": { - "title": "", - "modalTitle": "", - "entry": "", - "entryAndFiles": "" + "title": "Удалить задачу", + "modalTitle": "Вы уверены, что хотите удалить эту задачу?", + "entry": "Удалить запись", + "entryAndFiles": "Удалить запись и файл(ы)" } } }, - "globalRatio": "" + "globalRatio": "Общий рейтинг" }, "mediaRequests-requestList": { - "name": "", - "description": "Просмотр списка всех запросов медиаконтента из вашего экземпляра Overseerr или Jellyseerr", + "name": "Запросы медиаконтента", + "description": "Список всех запросов на добавление медиаконтента из вашего экземпляра Overseerr или Jellyseerr", "option": { "linksTargetNewTab": { "label": "Открывать ссылки в новой вкладке" } }, "pending": { - "approve": "", - "approving": "", - "decline": "" + "approve": "Одобрить запрос", + "approving": "Одобрение запроса...", + "decline": "Отклонить запрос" }, "availability": { "unknown": "Неизвестно", - "pending": "", - "processing": "", - "partiallyAvailable": "Частично", + "pending": "В ожидании", + "processing": "Обработка", + "partiallyAvailable": "Частично доступно", "available": "Доступно" }, - "toBeDetermined": "" + "toBeDetermined": "Будет определено позже" }, "mediaRequests-requestStats": { - "name": "", + "name": "Статистика запросов медиаконтента", "description": "Статистика по запросам медиаконтента", "option": {}, "titles": { @@ -1635,28 +1635,28 @@ "main": "Статистика медиаконтента", "approved": "Уже одобрено", "pending": "Ожидает одобрения", - "processing": "", - "declined": "", - "available": "", + "processing": "Обрабатывается", + "declined": "Уже отклонено", + "available": "Уже доступно", "tv": "Запросы сериалов", "movie": "Запросы фильмов", "total": "Всего" }, "users": { "main": "Топ пользователей", - "requests": "" + "requests": "Запросы" } } }, "mediaTranscoding": { - "name": "", - "description": "", + "name": "Перекодирование медиа", + "description": "Статистика, текущая очередь и состояние обработчиков перекодирования медиафайлов", "option": { "defaultView": { "label": "Вид по умолчанию" }, "queuePageSize": { - "label": "" + "label": "Размер страницы очереди" } }, "tab": { @@ -1664,24 +1664,24 @@ "queue": "Очередь", "statistics": "Статистика" }, - "currentIndex": "", + "currentIndex": "{start}-{end} из {total}", "healthCheck": { - "title": "", - "queued": "Очередь", + "title": "Проверка работоспособности", + "queued": "В очереди", "status": { "healthy": "Исправно", - "unhealthy": "Неисправен" + "unhealthy": "Неисправно" } }, "panel": { "statistics": { "empty": "Пусто", - "transcodes": "Перекодирования", - "transcodesCount": "", - "healthChecksCount": "", - "filesCount": "", - "savedSpace": "", - "healthChecks": "", + "transcodes": "Перекодировано", + "transcodesCount": "Перекодировано: {value}", + "healthChecksCount": "Проверок: {value}", + "filesCount": "Файлов: {value}", + "savedSpace": "Сэкономлено места: {value}", + "healthChecks": "Проверки работоспособности", "videoCodecs": "Кодеки", "videoContainers": "Контейнеры", "videoResolutions": "Разрешения" @@ -1693,7 +1693,7 @@ "eta": "Осталось", "progress": "Прогресс", "transcode": "Перекодирование", - "healthCheck": "" + "healthCheck": "Проверка" } }, "queue": { @@ -1702,37 +1702,37 @@ "file": "Файл", "size": "Размер", "transcode": "Перекодирование", - "healthCheck": "" + "healthCheck": "Проверка" } } } }, "rssFeed": { - "name": "", - "description": "", + "name": "RSS-ленты", + "description": "Отслеживание и отображение одной или нескольких RSS, ATOM или JSON-лент", "option": { "feedUrls": { - "label": "" + "label": "URL-адреса лент" }, "enableRtl": { - "label": "" + "label": "Включить режим RTL" }, "textLinesClamp": { - "label": "" + "label": "Ограничение строк описания" }, "maximumAmountPosts": { - "label": "" + "label": "Максимальное количество записей" } } } }, "widgetPreview": { "toggle": { - "enabled": "", - "disabled": "" + "enabled": "Режим редактирования включён", + "disabled": "Режим редактирования отключён" }, "dimensions": { - "title": "" + "title": "Изменить размеры" } }, "board": { @@ -1740,53 +1740,53 @@ "edit": { "notification": { "success": { - "title": "Изменения сохранены", - "message": "" + "title": "Изменения применены", + "message": "Панель успешно сохранена" }, "error": { - "title": "Не удалось сохранить", - "message": "" + "title": "Не удалось применить изменения", + "message": "Не удалось сохранить панель" } }, "confirmLeave": { - "title": "", - "message": "" + "title": "Несохранённые изменения", + "message": "У вас есть несохранённые изменения. Вы уверены, что хотите выйти?" } }, "oldImport": { - "label": "", + "label": "Импорт из версии Homarr до 1.0.0", "notification": { "success": { - "title": "", - "message": "" + "title": "Импорт успешно выполнен", + "message": "Панель успешно импортирована" }, "error": { - "title": "", - "message": "" + "title": "Импорт не удался", + "message": "Не удалось импортировать панель, проверьте логи для дополнительной информации" } }, "form": { "file": { - "label": "", - "invalidError": "" + "label": "Выберите JSON-файл", + "invalidError": "Недействительный файл конфигурации" }, "apps": { "label": "Приложения", "avoidDuplicates": { - "label": "", - "description": "" + "label": "Избегать дубликатов", + "description": "Игнорирует приложения, для которых уже существует приложение с тем же URL-адресом" }, "onlyImportApps": { - "label": "", - "description": "" + "label": "Импортировать только приложения", + "description": "Добавляет только приложения, панель нужно будет создать заново вручную" } }, "name": { - "label": "" + "label": "Название панели" }, "screenSize": { - "label": "", - "description": "", + "label": "Размер экрана", + "description": "В версиях до 1.0 существовало три разных режима, поэтому вы могли выбрать количество столбцов для каждого размера экрана.", "option": { "sm": "Маленький", "md": "Средний", @@ -1794,16 +1794,16 @@ } }, "sidebarBehavior": { - "label": "", - "description": "", + "label": "Поведение боковых панелей", + "description": "Боковые панели были удалены в версии 1.0, вы можете выбрать, что должно произойти с элементами внутри них.", "option": { "lastSection": { - "label": "", - "description": "" + "label": "Последний раздел", + "description": "Боковая панель будет отображаться под последним разделом" }, "removeItems": { - "label": "", - "description": "" + "label": "Удалить элементы", + "description": "Элементы, содержащиеся в боковой панели, будут удалены" } } } @@ -1812,64 +1812,64 @@ }, "field": { "pageTitle": { - "label": "" + "label": "Заголовок страницы" }, "metaTitle": { - "label": "" + "label": "Мета-заголовок" }, "logoImageUrl": { - "label": "" + "label": "URL изображения логотипа" }, "faviconImageUrl": { - "label": "" + "label": "URL изображения favicon" }, "backgroundImageUrl": { - "label": "" + "label": "URL фонового изображения" }, "backgroundImageAttachment": { - "label": "Закрепление фонового изображения", + "label": "Поведение фонового изображения", "option": { "fixed": { - "label": "", - "description": "" + "label": "Фиксированное", + "description": "Фон остаётся на одном месте при прокрутке." }, "scroll": { - "label": "", - "description": "" + "label": "Прокручиваемое", + "description": "Фон прокручивается вместе со страницей." } } }, "backgroundImageRepeat": { - "label": "", + "label": "Повторение фонового изображения", "option": { "repeat": { - "label": "", - "description": "" + "label": "Повторять", + "description": "Изображение повторяется столько раз, сколько необходимо для заполнения всей области фона." }, "no-repeat": { - "label": "", - "description": "" + "label": "Не повторять", + "description": "Изображение не повторяется и может не заполнить всё пространство." }, "repeat-x": { - "label": "", - "description": "" + "label": "Повторять по горизонтали", + "description": "То же, что и 'Повторять', но только по горизонтальной оси." }, "repeat-y": { - "label": "", - "description": "" + "label": "Повторять по вертикали", + "description": "То же, что и 'Повторять', но только по вертикальной оси." } } }, "backgroundImageSize": { - "label": "Повторение фонового изображения", + "label": "Размер фонового изображения", "option": { "cover": { - "label": "", - "description": "" + "label": "Заполнение", + "description": "Масштабирует изображение с сохранением пропорций так, чтобы оно целиком заполнило область, обрезая излишки." }, "contain": { - "label": "", - "description": "" + "label": "Уместить", + "description": "Масштабирует изображение с сохранением пропорций так, чтобы оно полностью поместилось в область без обрезки." } } }, @@ -1880,61 +1880,61 @@ "label": "Дополнительный цвет" }, "opacity": { - "label": "" + "label": "Прозрачность" }, "customCss": { - "label": "", - "description": "Дополнительная настройка панели управления с помощью CSS (рекомендуется только опытным пользователям)", + "label": "Пользовательский CSS для этой панели", + "description": "Дополнительная настройка вашей панели с помощью CSS, рекомендуется только опытным пользователям", "customClassesAlert": { - "title": "", - "description": "" + "title": "Пользовательские классы", + "description": "Вы можете добавлять пользовательские классы к элементам панели в расширенных настройках каждого элемента и использовать их в пользовательском CSS выше." } }, "columnCount": { - "label": "" + "label": "Количество столбцов" }, "name": { "label": "Название" }, "isPublic": { - "label": "Публичный", - "description": "" + "label": "Публичная", + "description": "Публичные панели доступны всем, даже без учётной записи." } }, "content": { - "metaTitle": "" + "metaTitle": "Панель {boardName}" }, "setting": { - "title": "", + "title": "Настройки панели {boardName}", "section": { "general": { - "title": "Основное", - "unrecognizedLink": "" + "title": "Общие", + "unrecognizedLink": "Указанная ссылка не распознана и не будет показана в предпросмотре, но может всё ещё работать." }, "layout": { - "title": "Макет" + "title": "Компоновка" }, "background": { "title": "Фон" }, "color": { - "title": "" + "title": "Цвета" }, "customCss": { - "title": "" + "title": "Пользовательский CSS" }, "access": { - "title": "", + "title": "Управление доступом", "permission": { "item": { "view": { "label": "Просмотр панели" }, "modify": { - "label": "" + "label": "Изменение панели" }, "full": { - "label": "" + "label": "Полный доступ" } } } @@ -1943,41 +1943,41 @@ "title": "Опасная зона", "action": { "rename": { - "label": "", - "description": "", - "button": "", + "label": "Переименовать панель", + "description": "Изменение названия нарушит все существующие ссылки на эту панель.", + "button": "Изменить название", "modal": { - "title": "" + "title": "Переименовать панель" } }, "visibility": { - "label": "", + "label": "Изменить видимость панели", "description": { - "public": "", - "private": "" + "public": "Эта панель сейчас публичная.", + "private": "Эта панель сейчас приватная." }, "button": { - "public": "", - "private": "" + "public": "Сделать приватной", + "private": "Сделать публичной" }, "confirm": { "public": { - "title": "", - "description": "" + "title": "Сделать панель приватной", + "description": "Вы уверены, что хотите сделать эту панель приватной? Панель будет скрыта от публичного доступа. Ссылки для гостевых пользователей перестанут работать." }, "private": { - "title": "", - "description": "" + "title": "Сделать панель публичной", + "description": "Вы уверены, что хотите сделать эту панель публичной? Панель станет доступной для всех." } } }, "delete": { - "label": "", - "description": "", - "button": "", + "label": "Удалить эту панель", + "description": "После удаления панели восстановление будет невозможно. Пожалуйста, будьте уверены в своём решении.", + "button": "Удалить эту панель", "confirm": { - "title": "Удаление панели", - "description": "" + "title": "Удалить панель", + "description": "Вы уверены, что хотите удалить эту панель? Действие навсегда удалит панель и всё её содержимое." } } } @@ -1987,46 +1987,46 @@ "error": { "noBoard": { "title": "Добро пожаловать в Homarr", - "description": "", + "description": "Современная панель управления для удобного доступа к вашим приложениям и сервисам.", "link": "Создать первую панель", - "notice": "" + "notice": "Чтобы убрать эту страницу, создайте панель и установите её как домашнюю" }, "notFound": { - "title": "", - "description": "", + "title": "Панель не найдена", + "description": "Указанная панель не найдена или у вас нет к ней доступа.", "link": "Просмотр всех панелей", - "notice": "" + "notice": "Проверьте ссылку или обратитесь к администратору, если считаете, что она должна быть доступна" }, "homeBoard": { - "title": "", + "title": "Нет домашней панели", "admin": { - "description": "", - "link": "", - "notice": "" + "description": "Домашняя панель для сервера ещё не установлена.", + "link": "Настроить общесерверную домашнюю панель", + "notice": "Чтобы убрать эту страницу для всех пользователей, установите домашнюю панель для сервера" }, "user": { - "description": "", - "link": "", - "notice": "" + "description": "Вы ещё не установили домашнюю панель.", + "link": "Настроить вашу домашнюю панель", + "notice": "Чтобы убрать эту страницу, укажите домашнюю панель в настройках" }, "anonymous": { - "description": "", - "link": "", - "notice": "" + "description": "Администратор сервера ещё не установил домашнюю панель.", + "link": "Просмотр публичных панелей", + "notice": "Чтобы убрать эту страницу, попросите администратора сервера установить домашнюю панель" } } } }, "management": { - "metaTitle": "", + "metaTitle": "Управление", "title": { - "morning": "", - "afternoon": "", - "evening": "" + "morning": "Доброе утро, {username}", + "afternoon": "Добрый день, {username}", + "evening": "Добрый вечер, {username}" }, "notFound": { - "title": "", - "text": "" + "title": "Не найдено", + "text": "Запрошенный ресурс не найден" }, "navbar": { "items": { @@ -2048,9 +2048,9 @@ "label": "Инструменты", "items": { "docker": "Docker", - "logs": "", + "logs": "Логи", "api": "API", - "tasks": "" + "tasks": "Задачи" } }, "settings": "Настройки", @@ -2058,9 +2058,9 @@ "label": "Справка", "items": { "documentation": "Документация", - "submitIssue": "", + "submitIssue": "Сообщить о проблеме", "discord": "Сообщество Discord", - "sourceCode": "" + "sourceCode": "Исходный код" } }, "about": "О программе" @@ -2078,41 +2078,41 @@ }, "statisticLabel": { "boards": "Панели", - "resources": "", - "authentication": "", - "authorization": "" + "resources": "Ресурсы", + "authentication": "Аутентификация", + "authorization": "Авторизация" } }, "board": { "title": "Ваши панели", "action": { "new": { - "label": "" + "label": "Новая панель" }, "open": { - "label": "" + "label": "Открыть панель" }, "settings": { "label": "Настройки" }, "setHomeBoard": { - "label": "", + "label": "Сделать домашней панелью", "badge": { "label": "Главная", - "tooltip": "" + "tooltip": "Эта панель будет показываться как ваша домашняя панель" } }, "delete": { "label": "Удалить навсегда", "confirm": { "title": "Удаление панели", - "description": "" + "description": "Вы уверены, что хотите удалить панель {name}?" } } }, "visibility": { - "public": "", - "private": "" + "public": "Эта панель публичная", + "private": "Эта панель приватная" }, "modal": { "createBoard": { @@ -2125,16 +2125,16 @@ } }, "media": { - "includeFromAllUsers": "" + "includeFromAllUsers": "Включая медиафайлы от всех пользователей" }, "user": { - "back": "", - "fieldsDisabledExternalProvider": "", + "back": "Вернуться к пользователям", + "fieldsDisabledExternalProvider": "Некоторые поля отключены, так как ими управляет внешняя система аутентификации.", "setting": { "general": { - "title": "Основное", + "title": "Общие", "item": { - "language": "", + "language": "Язык и регион", "board": "Домашняя панель", "firstDayOfWeek": "Первый день недели", "accessibility": "Специальные возможности" @@ -2152,25 +2152,25 @@ "title": "Пользователи" }, "edit": { - "metaTitle": "" + "metaTitle": "Редактирование пользователя {username}" }, "create": { "metaTitle": "Создание пользователя", - "title": "", + "title": "Создать нового пользователя", "step": { "personalInformation": { - "label": "" + "label": "Личные данные" }, "security": { "label": "Безопасность" }, "groups": { "label": "Группы", - "title": "", - "description": "" + "title": "Выберите все группы, в которые должен входить пользователь", + "description": "Группа {everyoneGroup} назначается всем пользователям и не может быть удалена." }, "review": { - "label": "" + "label": "Проверка" }, "completed": { "title": "Пользователь создан" @@ -2180,22 +2180,22 @@ } }, "action": { - "createAnother": "", - "back": "" + "createAnother": "Создать ещё одного пользователя", + "back": "Вернуться к списку пользователей" } }, "invite": { "title": "Управление приглашениями", "action": { "new": { - "title": "", + "title": "Новое приглашение", "description": "После истечения срока действия приглашение станет недействительным, и получатель не сможет создать учётную запись." }, "copy": { - "title": "", - "description": "", - "link": "Ссылка приглашения", - "button": "" + "title": "Копировать приглашение", + "description": "Приглашение сгенерировано. После закрытия этого окна вы больше не сможете скопировать эту ссылку. Если вы передумали приглашать пользователя, вы можете удалить это приглашение в любое время.", + "link": "Ссылка для приглашения", + "button": "Копировать и закрыть" }, "delete": { "title": "Удалить приглашение", @@ -2210,7 +2210,7 @@ "label": "Создатель" }, "expirationDate": { - "label": "Дата истечения срока" + "label": "Срок действия" }, "token": { "label": "Токен" @@ -2219,23 +2219,23 @@ } }, "group": { - "back": "", + "back": "Вернуться к группам", "setting": { "general": { - "title": "Основное", + "title": "Общие", "owner": "Владелец", - "ownerOfGroup": "", - "ownerOfGroupDeleted": "" + "ownerOfGroup": "Владелец этой группы", + "ownerOfGroupDeleted": "Владелец этой группы был удалён. В данный момент у группы нет владельца." }, "members": { "title": "Участники", - "search": "", - "notFound": "" + "search": "Найти участника", + "notFound": "Участники не найдены" }, "permissions": { - "title": "", + "title": "Разрешения", "form": { - "unsavedChanges": "" + "unsavedChanges": "У вас есть несохранённые изменения!" } } } @@ -2244,133 +2244,133 @@ "title": "Настройки", "notification": { "success": { - "message": "" + "message": "Настройки успешно сохранены" }, "error": { - "message": "" + "message": "Не удалось сохранить настройки" } }, "section": { "analytics": { - "title": "", + "title": "Аналитика", "general": { - "title": "", - "text": "" + "title": "Отправлять анонимную аналитику", + "text": "Homarr использует открытое программное обеспечение Umami для сбора обезличенных данных об использовании. Сбор данных никогда не включает личную информацию и полностью соответствует GDPR и CCPA. Мы рекомендуем включить аналитику, так как это помогает нашей команде выявлять проблемы и определять приоритеты в разработке." }, "widgetData": { - "title": "", - "text": "" + "title": "Данные о виджетах", + "text": "Отправлять информацию о настроенных виджетах (и их количестве). Не включает URL-адреса, названия или другие данные." }, "integrationData": { - "title": "", - "text": "" + "title": "Данные об интеграциях", + "text": "Отправлять информацию о настроенных интеграциях (и их количестве). Не включает URL-адреса, названия или другие данные." }, "usersData": { - "title": "", - "text": "" + "title": "Данные о пользователях", + "text": "Отправлять количество пользователей и информацию об использовании единого входа" } }, "crawlingAndIndexing": { - "title": "", - "warning": "", + "title": "Сканирование и индексация", + "warning": "Включение или отключение любых настроек здесь существенно повлияет на то, как поисковые системы будут индексировать и сканировать вашу страницу. Все настройки носят рекомендательный характер, и поисковые системы могут учитывать их по своему усмотрению. Изменения могут вступить в силу через несколько дней или недель. Некоторые настройки могут быть специфичны для конкретных поисковых систем.", "noIndex": { - "title": "", - "text": "" + "title": "Не индексировать", + "text": "Не индексировать сайт в поисковых системах и не показывать его в результатах поиска" }, "noFollow": { - "title": "", - "text": "" + "title": "Не следовать по ссылкам", + "text": "Не переходить по ссылкам при индексации. Отключение приведёт к тому, что поисковые роботы будут пытаться перейти по всем ссылкам в Homarr." }, "noTranslate": { - "title": "", - "text": "" + "title": "Не предлагать перевод", + "text": "Когда язык сайта отличается от предпочитаемого пользователем, Google будет показывать ссылку на перевод в результатах поиска" }, "noSiteLinksSearchBox": { - "title": "", - "text": "" + "title": "Не показывать поле поиска по сайту", + "text": "Google создаст поле поиска с найденными ссылками вместе с другими прямыми ссылками. Включение этой опции попросит Google отключить это поле." } }, "board": { "title": "Панели", "homeBoard": { - "label": "", - "description": "" + "label": "Общая домашняя панель", + "description": "Для выбора доступны только публичные панели" } }, "appearance": { "title": "Внешний вид", "defaultColorScheme": { - "label": "", + "label": "Цветовая схема по умолчанию", "options": { - "light": "", - "dark": "" + "light": "Светлая", + "dark": "Тёмная" } } }, "culture": { - "title": "", + "title": "Локализация", "defaultLocale": { - "label": "" + "label": "Язык по умолчанию" } } } }, "tool": { "tasks": { - "title": "", + "title": "Задачи", "status": { - "idle": "", - "running": "Работает", + "idle": "Ожидание", + "running": "Выполняется", "error": "Ошибка" }, "job": { "iconsUpdater": { - "label": "" + "label": "Обновление иконок" }, "analytics": { - "label": "" + "label": "Аналитика" }, "smartHomeEntityState": { - "label": "" + "label": "Состояние объектов умного дома" }, "ping": { - "label": "" + "label": "Проверка доступности" }, "mediaServer": { "label": "Медиасервер" }, "mediaOrganizer": { - "label": "" + "label": "Организация медиафайлов" }, "downloads": { - "label": "" + "label": "Загрузки" }, "mediaRequestStats": { - "label": "" + "label": "Статистика запросов медиаконтента" }, "mediaRequestList": { - "label": "" + "label": "Список запросов медиаконтента" }, "rssFeeds": { - "label": "" + "label": "RSS-ленты" }, "indexerManager": { - "label": "" + "label": "Управление индексаторами" }, "healthMonitoring": { - "label": "" + "label": "Мониторинг состояния" }, "dnsHole": { - "label": "" + "label": "Данные DNS-фильтра" }, "sessionCleanup": { - "label": "" + "label": "Очистка сессий" }, "updateChecker": { - "label": "" + "label": "Проверка обновлений" }, "mediaTranscoding": { - "label": "" + "label": "Перекодирование медиафайлов" } } }, @@ -2378,9 +2378,9 @@ "title": "API", "modal": { "createApiToken": { - "title": "", - "description": "", - "button": "" + "title": "API-токен создан", + "description": "API-токен создан. Этот токен зашифрован в базе данных и будет показан только один раз. После закрытия окна его нельзя будет восстановить.", + "button": "Копировать и закрыть" } }, "tab": { @@ -2388,15 +2388,15 @@ "label": "Документация" }, "apiKey": { - "label": "", - "title": "", + "label": "Аутентификация", + "title": "API-ключи", "button": { - "createApiToken": "" + "createApiToken": "Создать API-токен" }, "table": { "header": { "id": "ID", - "createdBy": "" + "createdBy": "Создан пользователем" } } } @@ -2404,20 +2404,20 @@ } }, "about": { - "version": "", - "text": "", + "version": "Версия {version}", + "text": "Homarr — это проект с открытым исходным кодом, поддерживаемый сообществом и развиваемый добровольцами. Благодаря этим людям Homarr остаётся растущим проектом с 2021 года. Наша команда работает над Homarr полностью удалённо из разных стран в своё свободное время без какой-либо компенсации.", "accordion": { "contributors": { - "title": "", - "subtitle": "" + "title": "Участники проекта", + "subtitle": "{count} поддерживают код и Homarr" }, "translators": { - "title": "", - "subtitle": "" + "title": "Переводчики", + "subtitle": "{count} помогают с переводами на разные языки" }, "libraries": { - "title": "", - "subtitle": "" + "title": "Библиотеки", + "subtitle": "{count} используются в коде Homarr" } } } @@ -2426,9 +2426,9 @@ "docker": { "title": "Контейнеры", "table": { - "updated": "", - "search": "", - "selected": "" + "updated": "Обновлено {when}", + "search": "Поиск среди {count} контейнеров", + "selected": "Выбрано {selectCount} из {totalCount} контейнеров" }, "field": { "name": { @@ -2439,11 +2439,11 @@ "option": { "created": "Создан", "running": "Работает", - "paused": "Приостановлено", - "restarting": "Перезапуск", - "exited": "", - "removing": "Удаление", - "dead": "" + "paused": "Приостановлен", + "restarting": "Перезапускается", + "exited": "Остановлен", + "removing": "Удаляется", + "dead": "Нерабочий" } }, "containerImage": { @@ -2458,12 +2458,12 @@ "label": "Запустить", "notification": { "success": { - "title": "", - "message": "" + "title": "Контейнеры запущены", + "message": "Контейнеры успешно запущены" }, "error": { - "title": "", - "message": "" + "title": "Не удалось запустить контейнеры", + "message": "Не удалось запустить контейнеры" } } }, @@ -2471,12 +2471,12 @@ "label": "Остановить", "notification": { "success": { - "title": "", - "message": "" + "title": "Контейнеры остановлены", + "message": "Контейнеры успешно остановлены" }, "error": { - "title": "", - "message": "" + "title": "Не удалось остановить контейнеры", + "message": "Не удалось остановить контейнеры" } } }, @@ -2484,12 +2484,12 @@ "label": "Перезапустить", "notification": { "success": { - "title": "", - "message": "" + "title": "Контейнеры перезапущены", + "message": "Контейнеры успешно перезапущены" }, "error": { - "title": "", - "message": "" + "title": "Не удалось перезапустить контейнеры", + "message": "Не удалось перезапустить контейнеры" } } }, @@ -2497,45 +2497,45 @@ "label": "Удалить", "notification": { "success": { - "title": "", - "message": "" + "title": "Контейнеры удалены", + "message": "Контейнеры успешно удалены" }, "error": { - "title": "", - "message": "" + "title": "Не удалось удалить контейнеры", + "message": "Не удалось удалить контейнеры" } } }, "refresh": { - "label": "", + "label": "Обновить", "notification": { "success": { - "title": "", - "message": "" + "title": "Контейнеры обновлены", + "message": "Отображаются актуальные данные" }, "error": { - "title": "", - "message": "" + "title": "Не удалось обновить контейнеры", + "message": "Произошла ошибка при обновлении данных о контейнерах" } } } }, "error": { - "internalServerError": "" + "internalServerError": "Произошла ошибка при обновлении данных о контейнерах" } }, "permission": { - "title": "", + "title": "Права доступа", "userSelect": { - "title": "" + "title": "Добавить права для пользователя" }, "groupSelect": { - "title": "" + "title": "Добавить права для группы" }, "tab": { "user": "Пользователи", "group": "Группы", - "inherited": "" + "inherited": "Унаследованные группы" }, "field": { "user": { @@ -2545,12 +2545,12 @@ "label": "Группа" }, "permission": { - "label": "" + "label": "Права доступа" } }, "action": { - "saveUser": "", - "saveGroup": "" + "saveUser": "Сохранить права пользователя", + "saveGroup": "Сохранить права группы" } }, "navigationStructure": { @@ -2565,13 +2565,13 @@ "label": "Редактировать" }, "new": { - "label": "" + "label": "Новая" } }, "search-engines": { "label": "Поисковые системы", "new": { - "label": "" + "label": "Новая" }, "edit": { "label": "Редактировать" @@ -2583,7 +2583,7 @@ "apps": { "label": "Приложения", "new": { - "label": "" + "label": "Новое" }, "edit": { "label": "Редактировать" @@ -2594,7 +2594,7 @@ "create": { "label": "Создать" }, - "general": "Основное", + "general": "Общие", "security": "Безопасность", "board": "Панели", "groups": { @@ -2610,7 +2610,7 @@ "label": "Docker" }, "logs": { - "label": "" + "label": "Логи" } }, "settings": { @@ -2622,28 +2622,28 @@ } }, "search": { - "placeholder": "", - "nothingFound": "", + "placeholder": "Найдётся все", + "nothingFound": "Ничего не найдено", "error": { - "fetch": "" + "fetch": "Произошла ошибка при получении данных" }, "mode": { "appIntegrationBoard": { - "help": "", + "help": "Поиск приложений, интеграций или панелей", "group": { "app": { "title": "Приложения", "children": { "action": { "open": { - "label": "" + "label": "Открыть URL приложения" }, "edit": { - "label": "Редактирование приложения" + "label": "Редактировать приложение" } }, "detail": { - "title": "" + "title": "Выберите действие для приложения" } } }, @@ -2652,17 +2652,17 @@ "children": { "action": { "open": { - "label": "" + "label": "Открыть панель" }, "homeBoard": { - "label": "" + "label": "Сделать домашней панелью" }, "settings": { - "label": "" + "label": "Открыть настройки" } }, "detail": { - "title": "" + "title": "Выберите действие для панели" } } }, @@ -2672,94 +2672,94 @@ } }, "command": { - "help": "", + "help": "Активировать режим команд", "group": { "localCommand": { - "title": "" + "title": "Локальные команды" }, "globalCommand": { - "title": "", + "title": "Глобальные команды", "option": { "colorScheme": { - "light": "", - "dark": "" + "light": "Переключить на светлую тему", + "dark": "Переключить на тёмную тему" }, "language": { - "label": "", + "label": "Изменить язык", "children": { "detail": { - "title": "" + "title": "Выберите предпочитаемый язык" } } }, "newBoard": { - "label": "" + "label": "Создать новую панель" }, "importBoard": { - "label": "" + "label": "Импортировать панель" }, "newApp": { - "label": "" + "label": "Создать новое приложение" }, "newIntegration": { - "label": "", + "label": "Создать новую интеграцию", "children": { "detail": { - "title": "" + "title": "Выберите тип интеграции для создания" } } }, "newUser": { - "label": "" + "label": "Создать нового пользователя" }, "newInvite": { - "label": "" + "label": "Создать новое приглашение" }, "newGroup": { - "label": "" + "label": "Создать новую группу" } } } } }, "external": { - "help": "", + "help": "Использовать внешнюю поисковую систему", "group": { "searchEngine": { "title": "Поисковые системы", "children": { "action": { "search": { - "label": "" + "label": "Искать через {name}" } }, "detail": { - "title": "" + "title": "Выберите действие для поисковой системы" }, "searchResults": { - "title": "" + "title": "Выберите результат поиска для действий" } }, "option": { "google": { - "name": "", - "description": "" + "name": "Google", + "description": "Поиск в интернете через Google" }, "bing": { - "name": "", - "description": "" + "name": "Bing", + "description": "Поиск в интернете через Bing" }, "duckduckgo": { - "name": "", - "description": "" + "name": "DuckDuckGo", + "description": "Поиск в интернете через DuckDuckGo" }, "torrent": { "name": "Торренты", - "description": "" + "description": "Поиск торрентов на torrentdownloads.pro" }, "youTube": { - "name": "", - "description": "" + "name": "YouTube", + "description": "Поиск видео на YouTube" } } } @@ -2768,7 +2768,7 @@ "help": { "group": { "mode": { - "title": "" + "title": "Режимы" }, "help": { "title": "Справка", @@ -2777,7 +2777,7 @@ "label": "Документация" }, "submitIssue": { - "label": "" + "label": "Сообщить о проблеме" }, "discord": { "label": "Сообщество Discord" @@ -2789,57 +2789,57 @@ "home": { "group": { "local": { - "title": "" + "title": "Локальные результаты" } } }, "page": { - "help": "", + "help": "Поиск по страницам", "group": { "page": { - "title": "", + "title": "Страницы", "option": { "manageHome": { - "label": "" + "label": "Управление главной страницей" }, "manageBoard": { - "label": "" + "label": "Управление панелями" }, "manageApp": { - "label": "" + "label": "Управление приложениями" }, "manageIntegration": { - "label": "" + "label": "Управление интеграциями" }, "manageSearchEngine": { - "label": "" + "label": "Управление поисковыми системами" }, "manageMedia": { - "label": "" + "label": "Управление медиафайлами" }, "manageUser": { "label": "Управление пользователями" }, "manageInvite": { - "label": "" + "label": "Управление приглашениями" }, "manageGroup": { - "label": "" + "label": "Управление группами" }, "manageDocker": { - "label": "" + "label": "Управление Docker" }, "manageApi": { - "label": "" + "label": "Swagger API" }, "manageLog": { - "label": "Просмотр журналов" + "label": "Просмотр логов" }, "manageTask": { - "label": "" + "label": "Управление задачами" }, "manageSettings": { - "label": "" + "label": "Глобальные настройки" }, "about": { "label": "О программе" @@ -2855,18 +2855,18 @@ } }, "userGroup": { - "help": "", + "help": "Поиск пользователей или групп", "group": { "user": { "title": "Пользователи", "children": { "action": { "detail": { - "label": "" + "label": "Показать сведения о пользователе" } }, "detail": { - "title": "" + "title": "Выберите действие для пользователя" } } }, @@ -2875,17 +2875,17 @@ "children": { "action": { "detail": { - "label": "" + "label": "Показать сведения о группе" }, "manageMember": { - "label": "" + "label": "Управление участниками" }, "managePermission": { - "label": "" + "label": "Управление разрешениями" } }, "detail": { - "title": "" + "title": "Выберите действие для группы" } } } @@ -2893,16 +2893,16 @@ } }, "engine": { - "search": "", + "search": "Найти поисковую систему", "field": { "name": { "label": "Название" }, "short": { - "label": "" + "label": "Краткое название" }, "urlTemplate": { - "label": "" + "label": "Шаблон URL поиска" }, "description": { "label": "Описание" @@ -2912,53 +2912,53 @@ "list": { "title": "Поисковые системы", "noResults": { - "title": "", - "action": "" + "title": "Поисковые системы пока отсутствуют", + "action": "Создать первую поисковую систему" }, - "interactive": "" + "interactive": "Интерактивная, использует интеграцию" }, "create": { - "title": "", + "title": "Новая поисковая система", "notification": { "success": { - "title": "", - "message": "" + "title": "Поисковая система создана", + "message": "Поисковая система успешно создана" }, "error": { - "title": "", - "message": "" + "title": "Не удалось создать", + "message": "Не удалось создать поисковую систему" } } }, "edit": { - "title": "", + "title": "Редактирование поисковой системы", "notification": { "success": { "title": "Изменения сохранены", - "message": "" + "message": "Поисковая система успешно сохранена" }, "error": { "title": "Не удалось сохранить", - "message": "" + "message": "Не удалось сохранить поисковую систему" } }, - "configControl": "", + "configControl": "Настройка", "searchEngineType": { - "generic": "", - "fromIntegration": "" + "generic": "Обычная", + "fromIntegration": "Из интеграции" } }, "delete": { - "title": "", - "message": "", + "title": "Удаление поисковой системы", + "message": "Вы уверены, что хотите удалить поисковую систему '{name}'?", "notification": { "success": { - "title": "", - "message": "" + "title": "Поисковая система удалена", + "message": "Поисковая система успешно удалена" }, "error": { - "title": "", - "message": "" + "title": "Не удалось удалить", + "message": "Не удалось удалить поисковую систему" } } } diff --git a/packages/translation/src/lang/sk.json b/packages/translation/src/lang/sk.json index b54d659ed..bbd0b1a71 100644 --- a/packages/translation/src/lang/sk.json +++ b/packages/translation/src/lang/sk.json @@ -1381,7 +1381,7 @@ "memory": "Pamäť: {memory}GiB", "memoryAvailable": "K dispozícii: {memoryAvailable}GiB ({percent}%)", "version": "Verzia: {version}", - "uptime": "", + "uptime": "Doba prevádzky: {days} dní, {hours} hodín, {minutes} minút", "loadAverage": "Priemerné zaťaženie:", "minute": "1 minúta", "minutes": "{count} minút", diff --git a/packages/translation/src/lang/sl.json b/packages/translation/src/lang/sl.json index ee50076c1..c0da63e30 100644 --- a/packages/translation/src/lang/sl.json +++ b/packages/translation/src/lang/sl.json @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "Admin", + "title": "", "item": { "admin": { "label": "", @@ -1199,7 +1199,7 @@ }, "align": { "left": "Leva stran", - "center": "Center", + "center": "", "right": "Desno" }, "popover": { @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "Vstavite katero koli vsebino iz interneta. Nekatera spletna mesta lahko omejijo dostop.", "option": { "embedUrl": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Uporabnik", - "name": "Ime", + "user": "", + "name": "", "id": "" } }, @@ -1690,7 +1690,7 @@ "empty": "Prazno", "table": { "file": "", - "eta": "ETA", + "eta": "", "progress": "Napredek", "transcode": "", "healthCheck": "" @@ -2047,7 +2047,7 @@ "tools": { "label": "Orodja", "items": { - "docker": "Docker", + "docker": "", "logs": "", "api": "", "tasks": "" @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Ustvarjalec" @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2607,7 +2607,7 @@ "tools": { "label": "Orodja", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/sv.json b/packages/translation/src/lang/sv.json index 5d5b9076c..5263131b8 100644 --- a/packages/translation/src/lang/sv.json +++ b/packages/translation/src/lang/sv.json @@ -51,7 +51,7 @@ "title": "", "field": { "token": { - "label": "Token", + "label": "", "description": "" } }, @@ -293,7 +293,7 @@ }, "permission": { "admin": { - "title": "Admin", + "title": "", "item": { "admin": { "label": "", @@ -1026,7 +1026,7 @@ "label": "" }, "layout": { - "label": "Layout", + "label": "", "option": { "row": { "label": "Horisontal" @@ -1050,7 +1050,7 @@ "description": "", "option": { "layout": { - "label": "Layout", + "label": "", "option": { "row": { "label": "Horisontal" @@ -1083,7 +1083,7 @@ "description": "Styr PiHole eller AdGuard från din instrumentpanel", "option": { "layout": { - "label": "Layout", + "label": "", "option": { "row": { "label": "Horisontal" @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "description": "Bädda in valfritt innehåll från internet. Vissa webbplatser kan begränsa åtkomsten.", "option": { "embedUrl": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Användare", - "name": "Namn", + "user": "", + "name": "", "id": "" } }, @@ -1527,7 +1527,7 @@ "columnTitle": "" }, "integration": { - "columnTitle": "Integration" + "columnTitle": "" }, "name": { "columnTitle": "" @@ -1682,8 +1682,8 @@ "filesCount": "", "savedSpace": "", "healthChecks": "", - "videoCodecs": "Codecs", - "videoContainers": "Containers", + "videoCodecs": "", + "videoContainers": "", "videoResolutions": "Upplösningar" }, "workers": { @@ -1912,7 +1912,7 @@ "unrecognizedLink": "" }, "layout": { - "title": "Layout" + "title": "" }, "background": { "title": "Bakgrund" @@ -2047,9 +2047,9 @@ "tools": { "label": "Verktyg", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2204,7 +2204,7 @@ }, "field": { "id": { - "label": "ID" + "label": "" }, "creator": { "label": "Skapare" @@ -2213,7 +2213,7 @@ "label": "Utgångsdatum" }, "token": { - "label": "Token" + "label": "" } } } @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2395,7 +2395,7 @@ }, "table": { "header": { - "id": "ID", + "id": "", "createdBy": "" } } @@ -2424,7 +2424,7 @@ } }, "docker": { - "title": "Containers", + "title": "", "table": { "updated": "", "search": "", @@ -2447,7 +2447,7 @@ } }, "containerImage": { - "label": "Image" + "label": "" }, "ports": { "label": "Portar" @@ -2607,7 +2607,7 @@ "tools": { "label": "Verktyg", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" @@ -2754,7 +2754,7 @@ "description": "" }, "torrent": { - "name": "Torrents", + "name": "", "description": "" }, "youTube": { diff --git a/packages/translation/src/lang/tr.json b/packages/translation/src/lang/tr.json index c6129e99d..7cb8e2f1a 100644 --- a/packages/translation/src/lang/tr.json +++ b/packages/translation/src/lang/tr.json @@ -235,7 +235,7 @@ "label": "Görseli değiştir", "notification": { "success": { - "message": "Resim başarıyla değiştirildi" + "message": "Görsel başarıyla değiştirildi" }, "error": { "message": "Görsel değiştirilemiyor" @@ -1185,7 +1185,7 @@ "decreaseIndent": "Girintiyi Azalt", "link": "Bağlantı", "unlink": "Bağlantıyı kaldır", - "image": "Resim Yerleştir", + "image": "Görsel Göm", "addTable": "Tablo ekle", "deleteTable": "Tablo Sil", "colorCell": "Renk Hücresi", @@ -1320,7 +1320,7 @@ }, "forecastDayCount": { "label": "Tahmin edilen gün sayısı", - "description": "Araç yeterince geniş olmadığında daha az gün gösterilir" + "description": "Widget yeterince geniş olmadığında daha az gün gösterilir" }, "dateFormat": { "label": "Tarih Biçimi", @@ -1345,7 +1345,7 @@ } }, "indexerManager": { - "name": "Dizin oluşturucu yöneticisi statüsü", + "name": "İndeksleyici Yönetim Durumu", "description": "İndeksleyicilerinizin durumu", "option": { "openIndexerSiteInNewTab": { @@ -1844,7 +1844,7 @@ "option": { "repeat": { "label": "Tekrarla", - "description": "Resim, tüm arka plan kapsama alanını kaplayacak kadar tekrarlanır." + "description": "Görsel, tüm arka plan alanını kaplayacak kadar tekrarlanır." }, "no-repeat": { "label": "Tekrarlama Yok", @@ -2737,7 +2737,7 @@ "title": "Arama yapmak istediğiniz terimleri girin" }, "searchResults": { - "title": "Etkileşime geçmek için bir sonuç seçin" + "title": "Eylemler için bir arama sonucu seçin" } }, "option": { diff --git a/packages/translation/src/lang/uk.json b/packages/translation/src/lang/uk.json index 3758e47c9..91219a9d7 100644 --- a/packages/translation/src/lang/uk.json +++ b/packages/translation/src/lang/uk.json @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Користувач", - "name": "Ім’я", + "user": "", + "name": "", "id": "" } }, @@ -2047,9 +2047,9 @@ "tools": { "label": "Інструменти", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2607,7 +2607,7 @@ "tools": { "label": "Інструменти", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" diff --git a/packages/translation/src/lang/vi.json b/packages/translation/src/lang/vi.json index 47f071cd6..a1a55468f 100644 --- a/packages/translation/src/lang/vi.json +++ b/packages/translation/src/lang/vi.json @@ -1213,7 +1213,7 @@ } }, "iframe": { - "name": "iFrame", + "name": "", "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": { @@ -1459,8 +1459,8 @@ "description": "", "option": {}, "items": { - "user": "Người dùng", - "name": "Tên", + "user": "", + "name": "", "id": "" } }, @@ -2047,9 +2047,9 @@ "tools": { "label": "Công cụ", "items": { - "docker": "Docker", + "docker": "", "logs": "", - "api": "API", + "api": "", "tasks": "" } }, @@ -2375,7 +2375,7 @@ } }, "api": { - "title": "API", + "title": "", "modal": { "createApiToken": { "title": "", @@ -2607,7 +2607,7 @@ "tools": { "label": "Công cụ", "docker": { - "label": "Docker" + "label": "" }, "logs": { "label": "" From 0ebf4bc55e62caf5917340496abb350d564df255 Mon Sep 17 00:00:00 2001 From: Meier Lukas Date: Tue, 31 Dec 2024 09:45:48 +0100 Subject: [PATCH 20/25] feat(widget): add minecraft server status widget (#1801) --- packages/api/src/router/widgets/index.ts | 2 + packages/api/src/router/widgets/minecraft.ts | 36 +++++++++++ packages/cron-jobs/src/index.ts | 2 + .../src/jobs/minecraft-server-status.ts | 25 ++++++++ packages/definitions/src/widget.ts | 1 + packages/redis/src/index.ts | 1 + packages/redis/src/lib/channel.ts | 10 +++ .../src/lib/cached-widget-request-handler.ts | 36 +++++++++++ .../src/minecraft-server-status.ts | 35 +++++++++++ packages/translation/src/lang/en.json | 22 +++++++ packages/widgets/src/index.tsx | 2 + .../src/minecraft/server-status/component.tsx | 61 +++++++++++++++++++ .../src/minecraft/server-status/index.ts | 15 +++++ 13 files changed, 248 insertions(+) create mode 100644 packages/api/src/router/widgets/minecraft.ts create mode 100644 packages/cron-jobs/src/jobs/minecraft-server-status.ts create mode 100644 packages/request-handler/src/lib/cached-widget-request-handler.ts create mode 100644 packages/request-handler/src/minecraft-server-status.ts create mode 100644 packages/widgets/src/minecraft/server-status/component.tsx create mode 100644 packages/widgets/src/minecraft/server-status/index.ts diff --git a/packages/api/src/router/widgets/index.ts b/packages/api/src/router/widgets/index.ts index 5960587eb..ce39bf9f7 100644 --- a/packages/api/src/router/widgets/index.ts +++ b/packages/api/src/router/widgets/index.ts @@ -8,6 +8,7 @@ import { indexerManagerRouter } from "./indexer-manager"; import { mediaRequestsRouter } from "./media-requests"; import { mediaServerRouter } from "./media-server"; import { mediaTranscodingRouter } from "./media-transcoding"; +import { minecraftRouter } from "./minecraft"; import { notebookRouter } from "./notebook"; import { rssFeedRouter } from "./rssFeed"; import { smartHomeRouter } from "./smart-home"; @@ -27,4 +28,5 @@ export const widgetRouter = createTRPCRouter({ indexerManager: indexerManagerRouter, healthMonitoring: healthMonitoringRouter, mediaTranscoding: mediaTranscodingRouter, + minecraft: minecraftRouter, }); diff --git a/packages/api/src/router/widgets/minecraft.ts b/packages/api/src/router/widgets/minecraft.ts new file mode 100644 index 000000000..ab1d4c7fb --- /dev/null +++ b/packages/api/src/router/widgets/minecraft.ts @@ -0,0 +1,36 @@ +import { observable } from "@trpc/server/observable"; +import { z } from "zod"; + +import type { MinecraftServerStatus } from "@homarr/request-handler/minecraft-server-status"; +import { minecraftServerStatusRequestHandler } from "@homarr/request-handler/minecraft-server-status"; + +import { createTRPCRouter, publicProcedure } from "../../trpc"; + +const serverStatusInputSchema = z.object({ + domain: z.string().nonempty(), + isBedrockServer: z.boolean(), +}); +export const minecraftRouter = createTRPCRouter({ + getServerStatus: publicProcedure.input(serverStatusInputSchema).query(async ({ input }) => { + const innerHandler = minecraftServerStatusRequestHandler.handler({ + isBedrockServer: input.isBedrockServer, + domain: input.domain, + }); + return await innerHandler.getCachedOrUpdatedDataAsync({ forceUpdate: true }); + }), + subscribeServerStatus: publicProcedure.input(serverStatusInputSchema).subscription(({ input }) => { + return observable((emit) => { + const innerHandler = minecraftServerStatusRequestHandler.handler({ + isBedrockServer: input.isBedrockServer, + domain: input.domain, + }); + const unsubscribe = innerHandler.subscribe((data) => { + emit.next(data); + }); + + return () => { + unsubscribe(); + }; + }); + }), +}); diff --git a/packages/cron-jobs/src/index.ts b/packages/cron-jobs/src/index.ts index 4bb6e0bf5..50dc00702 100644 --- a/packages/cron-jobs/src/index.ts +++ b/packages/cron-jobs/src/index.ts @@ -9,6 +9,7 @@ import { mediaOrganizerJob } from "./jobs/integrations/media-organizer"; import { mediaRequestListJob, mediaRequestStatsJob } from "./jobs/integrations/media-requests"; import { mediaServerJob } from "./jobs/integrations/media-server"; import { mediaTranscodingJob } from "./jobs/integrations/media-transcoding"; +import { minecraftServerStatusJob } from "./jobs/minecraft-server-status"; import { pingJob } from "./jobs/ping"; import type { RssFeed } from "./jobs/rss-feeds"; import { rssFeedsJob } from "./jobs/rss-feeds"; @@ -33,6 +34,7 @@ export const jobGroup = createCronJobGroup({ sessionCleanup: sessionCleanupJob, updateChecker: updateCheckerJob, mediaTranscoding: mediaTranscodingJob, + minecraftServerStatus: minecraftServerStatusJob, }); export type JobGroupKeys = ReturnType<(typeof jobGroup)["getKeys"]>[number]; diff --git a/packages/cron-jobs/src/jobs/minecraft-server-status.ts b/packages/cron-jobs/src/jobs/minecraft-server-status.ts new file mode 100644 index 000000000..e6c084702 --- /dev/null +++ b/packages/cron-jobs/src/jobs/minecraft-server-status.ts @@ -0,0 +1,25 @@ +import SuperJSON from "superjson"; + +import { EVERY_5_MINUTES } from "@homarr/cron-jobs-core/expressions"; +import { db, eq } from "@homarr/db"; +import { items } from "@homarr/db/schema"; +import { minecraftServerStatusRequestHandler } from "@homarr/request-handler/minecraft-server-status"; + +import type { WidgetComponentProps } from "../../../widgets/src"; +import { createCronJob } from "../lib"; + +export const minecraftServerStatusJob = createCronJob("minecraftServerStatus", EVERY_5_MINUTES).withCallback( + async () => { + const dbItems = await db.query.items.findMany({ + where: eq(items.kind, "minecraftServerStatus"), + }); + + await Promise.allSettled( + dbItems.map(async (item) => { + const options = SuperJSON.parse["options"]>(item.options); + const innerHandler = minecraftServerStatusRequestHandler.handler(options); + await innerHandler.getCachedOrUpdatedDataAsync({ forceUpdate: true }); + }), + ); + }, +); diff --git a/packages/definitions/src/widget.ts b/packages/definitions/src/widget.ts index 633a1004a..a829b9ae8 100644 --- a/packages/definitions/src/widget.ts +++ b/packages/definitions/src/widget.ts @@ -15,6 +15,7 @@ export const widgetKinds = [ "mediaRequests-requestList", "mediaRequests-requestStats", "mediaTranscoding", + "minecraftServerStatus", "rssFeed", "bookmarks", "indexerManager", diff --git a/packages/redis/src/index.ts b/packages/redis/src/index.ts index 0f4a99f38..b752177ac 100644 --- a/packages/redis/src/index.ts +++ b/packages/redis/src/index.ts @@ -5,6 +5,7 @@ export { createItemAndIntegrationChannel, createItemChannel, createIntegrationOptionsChannel, + createWidgetOptionsChannel, createChannelWithLatestAndEvents, handshakeAsync, createSubPubChannel, diff --git a/packages/redis/src/lib/channel.ts b/packages/redis/src/lib/channel.ts index 68664a2d7..42eb2ef13 100644 --- a/packages/redis/src/lib/channel.ts +++ b/packages/redis/src/lib/channel.ts @@ -183,6 +183,16 @@ export const createIntegrationOptionsChannel = ( return createChannelWithLatestAndEvents(channelName); }; +export const createWidgetOptionsChannel = ( + widgetKind: WidgetKind, + queryKey: string, + options: Record, +) => { + const optionsKey = hashObjectBase64(options); + const channelName = `widget:${widgetKind}:${queryKey}:options:${optionsKey}`; + return createChannelWithLatestAndEvents(channelName); +}; + export const createItemChannel = (itemId: string) => { return createChannelWithLatestAndEvents(`item:${itemId}`); }; diff --git a/packages/request-handler/src/lib/cached-widget-request-handler.ts b/packages/request-handler/src/lib/cached-widget-request-handler.ts new file mode 100644 index 000000000..4016bc5b4 --- /dev/null +++ b/packages/request-handler/src/lib/cached-widget-request-handler.ts @@ -0,0 +1,36 @@ +import type { Duration } from "dayjs/plugin/duration"; + +import type { WidgetKind } from "@homarr/definitions"; +import { createWidgetOptionsChannel } from "@homarr/redis"; + +import { createCachedRequestHandler } from "./cached-request-handler"; + +interface Options> { + // Unique key for this request handler + queryKey: string; + requestAsync: (input: TInput) => Promise; + cacheDuration: Duration; + widgetKind: TKind; +} + +export const createCachedWidgetRequestHandler = < + TData, + TKind extends WidgetKind, + TInput extends Record, +>( + requestHandlerOptions: Options, +) => { + return { + handler: (widgetOptions: TInput) => + createCachedRequestHandler({ + queryKey: requestHandlerOptions.queryKey, + requestAsync: async (input: TInput) => { + return await requestHandlerOptions.requestAsync(input); + }, + cacheDuration: requestHandlerOptions.cacheDuration, + createRedisChannel(input, options) { + return createWidgetOptionsChannel(requestHandlerOptions.widgetKind, options.queryKey, input); + }, + }).handler(widgetOptions), + }; +}; diff --git a/packages/request-handler/src/minecraft-server-status.ts b/packages/request-handler/src/minecraft-server-status.ts new file mode 100644 index 000000000..d2b98fcc3 --- /dev/null +++ b/packages/request-handler/src/minecraft-server-status.ts @@ -0,0 +1,35 @@ +import dayjs from "dayjs"; +import { z } from "zod"; + +import { fetchWithTimeout } from "@homarr/common"; + +import { createCachedWidgetRequestHandler } from "./lib/cached-widget-request-handler"; + +export const minecraftServerStatusRequestHandler = createCachedWidgetRequestHandler({ + queryKey: "minecraftServerStatusApiResult", + widgetKind: "minecraftServerStatus", + async requestAsync(input: { domain: string; isBedrockServer: boolean }) { + const path = `/3/${input.isBedrockServer ? "bedrock/" : ""}${input.domain}`; + + const response = await fetchWithTimeout(`https://api.mcsrvstat.us${path}`); + return responseSchema.parse(await response.json()); + }, + cacheDuration: dayjs.duration(5, "minutes"), +}); + +const responseSchema = z + .object({ + online: z.literal(false), + }) + .or( + z.object({ + online: z.literal(true), + players: z.object({ + online: z.number(), + max: z.number(), + }), + icon: z.string().optional(), + }), + ); + +export type MinecraftServerStatus = z.infer; diff --git a/packages/translation/src/lang/en.json b/packages/translation/src/lang/en.json index 7cc99348b..b5b1872e3 100644 --- a/packages/translation/src/lang/en.json +++ b/packages/translation/src/lang/en.json @@ -1151,6 +1151,25 @@ } } }, + "minecraftServerStatus": { + "name": "Minecraft Server Status", + "description": "Displays the status of a Minecraft server", + "option": { + "title": { + "label": "Title" + }, + "domain": { + "label": "Server address" + }, + "isBedrockServer": { + "label": "Bedrock server" + } + }, + "status": { + "online": "Online", + "offline": "Offline" + } + }, "notebook": { "name": "Notebook", "description": "A simple notebook widget that supports markdown", @@ -2324,6 +2343,9 @@ "error": "Error" }, "job": { + "minecraftServerStatus": { + "label": "Minecraft server status" + }, "iconsUpdater": { "label": "Icons Updater" }, diff --git a/packages/widgets/src/index.tsx b/packages/widgets/src/index.tsx index 7fc8f97ff..b041c11ba 100644 --- a/packages/widgets/src/index.tsx +++ b/packages/widgets/src/index.tsx @@ -22,6 +22,7 @@ import * as mediaRequestsList from "./media-requests/list"; import * as mediaRequestsStats from "./media-requests/stats"; import * as mediaServer from "./media-server"; import * as mediaTranscoding from "./media-transcoding"; +import * as minecraftServerStatus from "./minecraft/server-status"; import * as notebook from "./notebook"; import type { WidgetOptionDefinition } from "./options"; import * as rssFeed from "./rssFeed"; @@ -54,6 +55,7 @@ export const widgetImports = { indexerManager, healthMonitoring, mediaTranscoding, + minecraftServerStatus, } satisfies WidgetImportRecord; export type WidgetImports = typeof widgetImports; diff --git a/packages/widgets/src/minecraft/server-status/component.tsx b/packages/widgets/src/minecraft/server-status/component.tsx new file mode 100644 index 000000000..bb0be1367 --- /dev/null +++ b/packages/widgets/src/minecraft/server-status/component.tsx @@ -0,0 +1,61 @@ +"use client"; + +import { Box, Flex, Group, Text, Tooltip } from "@mantine/core"; +import { IconUsersGroup } from "@tabler/icons-react"; + +import { clientApi } from "@homarr/api/client"; +import { useScopedI18n } from "@homarr/translation/client"; + +import type { WidgetComponentProps } from "../../definition"; + +export default function MinecraftServerStatusWidget({ options }: WidgetComponentProps<"minecraftServerStatus">) { + const [{ data }] = clientApi.widget.minecraft.getServerStatus.useSuspenseQuery(options); + const utils = clientApi.useUtils(); + clientApi.widget.minecraft.subscribeServerStatus.useSubscription(options, { + onData(data) { + utils.widget.minecraft.getServerStatus.setData(options, { + data, + timestamp: new Date(), + }); + }, + }); + const tStatus = useScopedI18n("widget.minecraftServerStatus.status"); + + const title = options.title.trim().length > 0 ? options.title : options.domain; + + return ( + + + + + + + {title} + + + {data.online && ( + <> + {`minecraft + + + + {data.players.online}/{data.players.max} + + + + )} + + ); +} diff --git a/packages/widgets/src/minecraft/server-status/index.ts b/packages/widgets/src/minecraft/server-status/index.ts new file mode 100644 index 000000000..df4c0e2bc --- /dev/null +++ b/packages/widgets/src/minecraft/server-status/index.ts @@ -0,0 +1,15 @@ +import { IconBrandMinecraft } from "@tabler/icons-react"; + +import { z } from "@homarr/validation"; + +import { createWidgetDefinition } from "../../definition"; +import { optionsBuilder } from "../../options"; + +export const { componentLoader, definition } = createWidgetDefinition("minecraftServerStatus", { + icon: IconBrandMinecraft, + options: optionsBuilder.from((factory) => ({ + title: factory.text({ defaultValue: "" }), + domain: factory.text({ defaultValue: "hypixel.net", validate: z.string().nonempty() }), + isBedrockServer: factory.switch({ defaultValue: false }), + })), +}).withDynamicImport(() => import("./component")); From e53b06e8c2fc9415f5c7e2f82d47423086241fa0 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Tue, 31 Dec 2024 08:46:41 +0000 Subject: [PATCH 21/25] chore(deps): update dependency concurrently to ^9.1.2 (#1818) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- apps/nextjs/package.json | 2 +- pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json index 6b7a81f36..d9c654358 100644 --- a/apps/nextjs/package.json +++ b/apps/nextjs/package.json @@ -87,7 +87,7 @@ "@types/react": "^19.0.2", "@types/react-dom": "^19.0.2", "@types/swagger-ui-react": "^4.18.3", - "concurrently": "^9.1.1", + "concurrently": "^9.1.2", "eslint": "^9.17.0", "node-loader": "^2.1.0", "prettier": "^3.4.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a1236e21b..15f21b980 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -291,8 +291,8 @@ importers: specifier: ^4.18.3 version: 4.18.3 concurrently: - specifier: ^9.1.1 - version: 9.1.1 + specifier: ^9.1.2 + version: 9.1.2 eslint: specifier: ^9.17.0 version: 9.17.0 @@ -4909,8 +4909,8 @@ packages: concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - concurrently@9.1.1: - resolution: {integrity: sha512-6VX8lrBIycgZKTwBsWS+bLrmkGRkDmvtGsYylRN9b93CygN6CbK46HmnQ3rdSOR8HRjdahDrxb5MqD9cEFOg5Q==} + concurrently@9.1.2: + resolution: {integrity: sha512-H9MWcoPsYddwbOGM6difjVwVZHl63nwMEwDJG/L7VGtuaJhb12h2caPG2tVPWs7emuYix252iGfqOyrz1GczTQ==} engines: {node: '>=18'} hasBin: true @@ -12807,7 +12807,7 @@ snapshots: concat-map@0.0.1: {} - concurrently@9.1.1: + concurrently@9.1.2: dependencies: chalk: 4.1.2 lodash: 4.17.21 From 91e1cef611a47d57b42c91c0c6d49fcf2e6a10bb Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Tue, 31 Dec 2024 11:05:30 +0100 Subject: [PATCH 22/25] feat: add request media (#1811) --- .../search-engine/search-engine-router.ts | 25 +++ .../src/docs/homarr-docs-sitemap.ts | 2 + .../src/base/searchable-integration.ts | 4 +- .../src/overseerr/overseerr-integration.ts | 77 ++++++++- packages/modals-collection/src/index.ts | 1 + .../src/search-engines/index.ts | 1 + .../search-engines/request-media-modal.tsx | 119 ++++++++++++++ .../components/actions/children-actions.tsx | 15 +- .../actions/items/children-action-item.tsx | 17 +- .../spotlight/src/components/spotlight.tsx | 6 +- packages/spotlight/src/lib/children.ts | 5 +- .../external/search-engines-search-group.tsx | 146 +++++++++++++++++- packages/translation/src/lang/en.json | 21 +++ packages/validation/src/common.ts | 13 ++ 14 files changed, 436 insertions(+), 16 deletions(-) create mode 100644 packages/modals-collection/src/search-engines/index.ts create mode 100644 packages/modals-collection/src/search-engines/request-media-modal.tsx 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 8e8fe853a..0d48ab226 100644 --- a/packages/api/src/router/search-engine/search-engine-router.ts +++ b/packages/api/src/router/search-engine/search-engine-router.ts @@ -2,8 +2,10 @@ import { TRPCError } from "@trpc/server"; import { createId, eq, like, sql } from "@homarr/db"; import { searchEngines } from "@homarr/db/schema"; +import { integrationCreator } from "@homarr/integrations"; import { validation } from "@homarr/validation"; +import { createOneIntegrationMiddleware } from "../../middlewares/integration"; import { createTRPCRouter, permissionRequiredProcedure, protectedProcedure } from "../../trpc"; export const searchEngineRouter = createTRPCRouter({ @@ -56,9 +58,32 @@ export const searchEngineRouter = createTRPCRouter({ search: protectedProcedure.input(validation.common.search).query(async ({ ctx, input }) => { return await ctx.db.query.searchEngines.findMany({ where: like(searchEngines.short, `${input.query.toLowerCase().trim()}%`), + with: { + integration: { + columns: { + kind: true, + url: true, + id: true, + }, + }, + }, limit: input.limit, }); }), + getMediaRequestOptions: protectedProcedure + .unstable_concat(createOneIntegrationMiddleware("query", "jellyseerr", "overseerr")) + .input(validation.common.mediaRequestOptions) + .query(async ({ ctx, input }) => { + const integration = integrationCreator(ctx.integration); + return await integration.getSeriesInformationAsync(input.mediaType, input.mediaId); + }), + requestMedia: protectedProcedure + .unstable_concat(createOneIntegrationMiddleware("interact", "jellyseerr", "overseerr")) + .input(validation.common.requestMedia) + .mutation(async ({ ctx, input }) => { + const integration = integrationCreator(ctx.integration); + return await integration.requestMediaAsync(input.mediaType, input.mediaId, input.seasons); + }), create: permissionRequiredProcedure .requiresPermission("search-engine-create") .input(validation.searchEngine.manage) diff --git a/packages/definitions/src/docs/homarr-docs-sitemap.ts b/packages/definitions/src/docs/homarr-docs-sitemap.ts index 31aa7c4c6..1ef500ee0 100644 --- a/packages/definitions/src/docs/homarr-docs-sitemap.ts +++ b/packages/definitions/src/docs/homarr-docs-sitemap.ts @@ -90,6 +90,7 @@ export type HomarrDocumentationPath = | "/docs/tags/lists" | "/docs/tags/management" | "/docs/tags/media" + | "/docs/tags/minecraft" | "/docs/tags/monitoring" | "/docs/tags/news" | "/docs/tags/notebook" @@ -190,6 +191,7 @@ export type HomarrDocumentationPath = | "/docs/widgets/indexer-manager" | "/docs/widgets/media-requests" | "/docs/widgets/media-server" + | "/docs/widgets/minecraft-server-status" | "/docs/widgets/notebook" | "/docs/widgets/rss" | "/docs/widgets/video" diff --git a/packages/integrations/src/base/searchable-integration.ts b/packages/integrations/src/base/searchable-integration.ts index 918c3b07f..2b92fe4e7 100644 --- a/packages/integrations/src/base/searchable-integration.ts +++ b/packages/integrations/src/base/searchable-integration.ts @@ -1,3 +1,3 @@ -export interface ISearchableIntegration { - searchAsync(query: string): Promise<{ image?: string; name: string; link: string }[]>; +export interface ISearchableIntegration { + searchAsync(query: string): Promise; } diff --git a/packages/integrations/src/overseerr/overseerr-integration.ts b/packages/integrations/src/overseerr/overseerr-integration.ts index 18101e778..c4f31420f 100644 --- a/packages/integrations/src/overseerr/overseerr-integration.ts +++ b/packages/integrations/src/overseerr/overseerr-integration.ts @@ -6,11 +6,20 @@ import type { ISearchableIntegration } from "../base/searchable-integration"; import type { MediaRequest, RequestStats, RequestUser } from "../interfaces/media-requests/media-request"; import { MediaAvailability, MediaRequestStatus } from "../interfaces/media-requests/media-request"; +interface OverseerrSearchResult { + id: number; + name: string; + link: string; + image?: string; + text?: string; + type: Exclude["results"], undefined>[number]["mediaType"]; +} + /** * Overseerr Integration. See https://api-docs.overseerr.dev */ -export class OverseerrIntegration extends Integration implements ISearchableIntegration { - public async searchAsync(query: string): Promise<{ image?: string; name: string; link: string; text?: string }[]> { +export class OverseerrIntegration extends Integration implements ISearchableIntegration { + public async searchAsync(query: string) { const response = await fetch(this.url("/api/v1/search", { query }), { headers: { "X-Api-Key": this.getSecretValue("apiKey"), @@ -23,13 +32,53 @@ export class OverseerrIntegration extends Integration implements ISearchableInte } return schemaData.results.map((result) => ({ + id: result.id, name: "name" in result ? result.name : result.title, link: this.url(`/${result.mediaType}/${result.id}`).toString(), image: constructSearchResultImage(result), text: "overview" in result ? result.overview : undefined, + type: result.mediaType, + inLibrary: result.mediaInfo !== undefined, })); } + public async getSeriesInformationAsync(mediaType: "movie" | "tv", id: number) { + const url = mediaType === "tv" ? this.url(`/api/v1/tv/${id}`) : this.url(`/api/v1/movie/${id}`); + const response = await fetch(url, { + headers: { + "X-Api-Key": this.getSecretValue("apiKey"), + }, + }); + return await mediaInformationSchema.parseAsync(await response.json()); + } + + /** + * Request a media. See https://api-docs.overseerr.dev/#/request/post_request + * @param mediaType The media type to request. Can be "movie" or "tv". + * @param id The Overseerr ID of the media to request. + * @param seasons A list of the seasons that should be requested. + */ + public async requestMediaAsync(mediaType: "movie" | "tv", id: number, seasons?: number[]): Promise { + const url = this.url("/api/v1/request"); + const response = await fetch(url, { + method: "POST", + body: JSON.stringify({ + mediaType, + mediaId: id, + seasons, + }), + headers: { + "X-Api-Key": this.getSecretValue("apiKey"), + "Content-Type": "application/json", + }, + }); + if (response.status !== 201) { + throw new Error( + `Status code ${response.status} does not match the expected status code. The request was likely not created. Response: ${await response.text()}`, + ); + } + } + public async testConnectionAsync(): Promise { const response = await fetch(this.url("/api/v1/auth/me"), { headers: { @@ -220,6 +269,27 @@ interface MovieInformation { releaseDate: string; } +const mediaInformationSchema = z.union([ + z.object({ + id: z.number(), + overview: z.string(), + seasons: z.array( + z.object({ + id: z.number(), + name: z.string().min(0), + episodeCount: z.number().min(0), + }), + ), + numberOfSeasons: z.number(), + posterPath: z.string().startsWith("/"), + }), + z.object({ + id: z.number(), + overview: z.string(), + posterPath: z.string().startsWith("/"), + }), +]); + const searchSchema = z.object({ results: z .array( @@ -230,6 +300,7 @@ const searchSchema = z.object({ name: z.string(), posterPath: z.string().startsWith("/").endsWith(".jpg").nullable(), overview: z.string(), + mediaInfo: z.object({}).optional(), }), z.object({ id: z.number(), @@ -237,12 +308,14 @@ const searchSchema = z.object({ title: z.string(), posterPath: z.string().startsWith("/").endsWith(".jpg").nullable(), overview: z.string(), + mediaInfo: z.object({}).optional(), }), z.object({ id: z.number(), mediaType: z.literal("person"), name: z.string(), profilePath: z.string().startsWith("/").endsWith(".jpg").nullable(), + mediaInfo: z.object({}).optional(), }), ]), ) diff --git a/packages/modals-collection/src/index.ts b/packages/modals-collection/src/index.ts index 45caf0411..66672e577 100644 --- a/packages/modals-collection/src/index.ts +++ b/packages/modals-collection/src/index.ts @@ -1,3 +1,4 @@ export * from "./boards"; export * from "./invites"; export * from "./groups"; +export * from "./search-engines"; diff --git a/packages/modals-collection/src/search-engines/index.ts b/packages/modals-collection/src/search-engines/index.ts new file mode 100644 index 000000000..0ee3d7051 --- /dev/null +++ b/packages/modals-collection/src/search-engines/index.ts @@ -0,0 +1 @@ +export { RequestMediaModal } from "./request-media-modal"; diff --git a/packages/modals-collection/src/search-engines/request-media-modal.tsx b/packages/modals-collection/src/search-engines/request-media-modal.tsx new file mode 100644 index 000000000..85678e44c --- /dev/null +++ b/packages/modals-collection/src/search-engines/request-media-modal.tsx @@ -0,0 +1,119 @@ +import { useMemo } from "react"; +import { Button, Group, Image, LoadingOverlay, Stack, Text } from "@mantine/core"; +import type { MRT_ColumnDef } from "mantine-react-table"; +import { MRT_Table } from "mantine-react-table"; + +import { clientApi } from "@homarr/api/client"; +import { createModal } from "@homarr/modals"; +import { showSuccessNotification } from "@homarr/notifications"; +import { useI18n } from "@homarr/translation/client"; +import { useTranslatedMantineReactTable } from "@homarr/ui/hooks"; + +interface RequestMediaModalProps { + integrationId: string; + mediaId: number; + mediaType: "movie" | "tv"; +} + +export const RequestMediaModal = createModal(({ actions, innerProps }) => { + const { data, isPending: isPendingQuery } = clientApi.searchEngine.getMediaRequestOptions.useQuery({ + integrationId: innerProps.integrationId, + mediaId: innerProps.mediaId, + mediaType: innerProps.mediaType, + }); + + const { mutate, isPending: isPendingMutation } = clientApi.searchEngine.requestMedia.useMutation({ + onSuccess() { + actions.closeModal(); + showSuccessNotification({ + message: t("common.notification.create.success"), + }); + }, + }); + + const isPending = isPendingQuery || isPendingMutation; + const t = useI18n(); + + const columns = useMemo[]>( + () => [ + { + accessorKey: "name", + header: t("search.engine.media.request.modal.table.header.season"), + }, + { + accessorKey: "episodeCount", + header: t("search.engine.media.request.modal.table.header.episodes"), + }, + ], + [], + ); + + const table = useTranslatedMantineReactTable({ + columns, + data: data && "seasons" in data ? data.seasons : [], + enableColumnActions: false, + enableColumnFilters: false, + enablePagination: false, + enableSorting: false, + enableSelectAll: true, + enableRowSelection: true, + mantineTableProps: { + highlightOnHover: false, + striped: "odd", + withColumnBorders: true, + withRowBorders: true, + withTableBorder: true, + }, + initialState: { + density: "xs", + }, + }); + + const anySelected = Object.keys(table.getState().rowSelection).length > 0; + + const handleMutate = () => { + const selectedSeasons = table.getSelectedRowModel().rows.flatMap((row) => row.original.id); + mutate({ + integrationId: innerProps.integrationId, + mediaId: innerProps.mediaId, + mediaType: innerProps.mediaType, + seasons: selectedSeasons, + }); + }; + + return ( + + + {data && ( + + poster + + {data.overview} + + + )} + {innerProps.mediaType === "tv" && } + + + + + + ); +}).withOptions({ + size: "xl", +}); + +interface Season { + id: number; + name: string; + episodeCount: number; +} diff --git a/packages/spotlight/src/components/actions/children-actions.tsx b/packages/spotlight/src/components/actions/children-actions.tsx index b7f36909d..1907792a3 100644 --- a/packages/spotlight/src/components/actions/children-actions.tsx +++ b/packages/spotlight/src/components/actions/children-actions.tsx @@ -4,14 +4,25 @@ import { ChildrenActionItem } from "./items/children-action-item"; interface SpotlightChildrenActionsProps { childrenOptions: inferSearchInteractionOptions<"children">; query: string; + setChildrenOptions: (options: inferSearchInteractionOptions<"children">) => void; } -export const SpotlightChildrenActions = ({ childrenOptions, query }: SpotlightChildrenActionsProps) => { +export const SpotlightChildrenActions = ({ + childrenOptions, + query, + setChildrenOptions, +}: SpotlightChildrenActionsProps) => { const actions = childrenOptions.useActions(childrenOptions.option, query); return actions .filter((action) => (typeof action.hide === "function" ? !action.hide(childrenOptions.option) : !action.hide)) .map((action) => ( - + )); }; diff --git a/packages/spotlight/src/components/actions/items/children-action-item.tsx b/packages/spotlight/src/components/actions/items/children-action-item.tsx index 0b070b147..777446b78 100644 --- a/packages/spotlight/src/components/actions/items/children-action-item.tsx +++ b/packages/spotlight/src/components/actions/items/children-action-item.tsx @@ -8,9 +8,10 @@ interface ChildrenActionItemProps { childrenOptions: inferSearchInteractionOptions<"children">; query: string; action: ReturnType["useActions"]>[number]; + setChildrenOptions: (options: inferSearchInteractionOptions<"children">) => void; } -export const ChildrenActionItem = ({ childrenOptions, action, query }: ChildrenActionItemProps) => { +export const ChildrenActionItem = ({ childrenOptions, action, query, setChildrenOptions }: ChildrenActionItemProps) => { const interaction = action.useInteraction(childrenOptions.option, query); const renderRoot = @@ -20,10 +21,20 @@ export const ChildrenActionItem = ({ childrenOptions, action, query }: ChildrenA } : undefined; - const onClick = interaction.type === "javaScript" ? interaction.onSelect : undefined; + const onClick = + interaction.type === "javaScript" + ? interaction.onSelect + : interaction.type === "children" + ? () => setChildrenOptions(interaction) + : undefined; return ( - + ); diff --git a/packages/spotlight/src/components/spotlight.tsx b/packages/spotlight/src/components/spotlight.tsx index 1ab051bb7..70c0da866 100644 --- a/packages/spotlight/src/components/spotlight.tsx +++ b/packages/spotlight/src/components/spotlight.tsx @@ -140,7 +140,11 @@ const SpotlightWithActiveMode = ({ modeState, activeMode, defaultMode }: Spotlig {childrenOptions ? ( - + ) : ( { diff --git a/packages/spotlight/src/lib/children.ts b/packages/spotlight/src/lib/children.ts index 0c2c34992..f7f8bdf83 100644 --- a/packages/spotlight/src/lib/children.ts +++ b/packages/spotlight/src/lib/children.ts @@ -10,7 +10,10 @@ export interface CreateChildrenOptionsProps> { key: string; Component: (option: TParentOptions) => JSX.Element; - useInteraction: (option: TParentOptions, query: string) => inferSearchInteractionDefinition<"link" | "javaScript">; + useInteraction: ( + option: TParentOptions, + query: string, + ) => inferSearchInteractionDefinition<"link" | "javaScript" | "children">; hide?: boolean | ((option: TParentOptions) => boolean); } diff --git a/packages/spotlight/src/modes/external/search-engines-search-group.tsx b/packages/spotlight/src/modes/external/search-engines-search-group.tsx index 5c6529624..2d73ba2e9 100644 --- a/packages/spotlight/src/modes/external/search-engines-search-group.tsx +++ b/packages/spotlight/src/modes/external/search-engines-search-group.tsx @@ -1,8 +1,12 @@ import { Group, Image, Kbd, Stack, Text } from "@mantine/core"; -import { IconSearch } from "@tabler/icons-react"; +import { IconDownload, IconSearch } from "@tabler/icons-react"; import type { RouterOutputs } from "@homarr/api"; import { clientApi } from "@homarr/api/client"; +import type { IntegrationKind } from "@homarr/definitions"; +import { getIntegrationKindsByCategory, getIntegrationName } from "@homarr/definitions"; +import { useModalAction } from "@homarr/modals"; +import { RequestMediaModal } from "@homarr/modals-collection"; import { useScopedI18n } from "@homarr/translation/client"; import { createChildrenOptions } from "../../lib/children"; @@ -11,6 +15,100 @@ import { interaction } from "../../lib/interaction"; type SearchEngine = RouterOutputs["searchEngine"]["search"][number]; +// eslint-disable-next-line @typescript-eslint/consistent-type-definitions +type MediaRequestChildrenProps = { + result: { + id: number; + image?: string; + name: string; + link: string; + text?: string; + type: "tv" | "movie"; + inLibrary: boolean; + }; + integration: { + kind: IntegrationKind; + url: string; + id: string; + }; +}; + +const mediaRequestsChildrenOptions = createChildrenOptions({ + useActions() { + const { openModal } = useModalAction(RequestMediaModal); + return [ + { + key: "request", + hide: (option) => option.result.inLibrary, + Component(option) { + const t = useScopedI18n("search.mode.media"); + return ( + + + {option.result.type === "tv" && {t("requestSeries")}} + {option.result.type === "movie" && {t("requestMovie")}} + + ); + }, + useInteraction: interaction.javaScript((option) => ({ + onSelect() { + openModal( + { + integrationId: option.integration.id, + mediaId: option.result.id, + mediaType: option.result.type, + }, + { + title(t) { + return t("search.engine.media.request.modal.title", { name: option.result.name }); + }, + }, + ); + }, + })), + }, + { + key: "open", + Component({ integration }) { + const tChildren = useScopedI18n("search.mode.media"); + return ( + + + {tChildren("openIn", { kind: getIntegrationName(integration.kind) })} + + ); + }, + useInteraction({ result }) { + return { + type: "link", + href: result.link, + newTab: true, + }; + }, + }, + ]; + }, + DetailComponent({ options }) { + return ( + + {options.result.image ? ( + + ) : ( + + )} + + {options.result.name} + {options.result.text && ( + + {options.result.text} + + )} + + + ); + }, +}); + export const searchEnginesChildrenOptions = createChildrenOptions({ useActions: (searchEngine, query) => { const { data } = clientApi.integration.searchInIntegration.useQuery( @@ -64,10 +162,48 @@ export const searchEnginesChildrenOptions = createChildrenOptions(
); }, - useInteraction: interaction.link(() => ({ - href: searchResult.link, - newTab: true, - })), + useInteraction(searchEngine) { + if (searchEngine.type !== "fromIntegration") { + throw new Error("Invalid search engine type"); + } + + if (!searchEngine.integration) { + throw new Error("Invalid search engine integration"); + } + + if ( + getIntegrationKindsByCategory("mediaRequest").some( + (categoryKind) => categoryKind === searchEngine.integration?.kind, + ) && + "type" in searchResult + ) { + const type = searchResult.type; + if (type === "person") { + return { + type: "link", + href: searchResult.link, + newTab: true, + }; + } + + return { + type: "children", + ...mediaRequestsChildrenOptions({ + result: { + ...searchResult, + type, + }, + integration: searchEngine.integration, + }), + }; + } + + return { + type: "link", + href: searchResult.link, + newTab: true, + }; + }, })); }, DetailComponent({ options }) { diff --git a/packages/translation/src/lang/en.json b/packages/translation/src/lang/en.json index b5b1872e3..cbe92028a 100644 --- a/packages/translation/src/lang/en.json +++ b/packages/translation/src/lang/en.json @@ -2744,6 +2744,11 @@ } } }, + "media": { + "requestMovie": "Request movie", + "requestSeries": "Request series", + "openIn": "Open in {kind}" + }, "external": { "help": "Use an external search engine", "group": { @@ -2984,6 +2989,22 @@ } } } + }, + "media": { + "request": { + "modal": { + "title": "Request \"{name}\"", + "table": { + "header": { + "season": "Season", + "episodes": "Episodes" + } + }, + "button": { + "send": "Send request" + } + } + } } } } diff --git a/packages/validation/src/common.ts b/packages/validation/src/common.ts index 68506df63..3decf20be 100644 --- a/packages/validation/src/common.ts +++ b/packages/validation/src/common.ts @@ -15,8 +15,21 @@ const searchSchema = z.object({ limit: z.number().int().positive().default(10), }); +const mediaRequestOptionsSchema = z.object({ + mediaId: z.number(), + mediaType: z.enum(["tv", "movie"]), +}); + +const requestMediaSchema = z.object({ + mediaType: z.enum(["tv", "movie"]), + mediaId: z.number(), + seasons: z.array(z.number().min(0)).optional(), +}); + export const commonSchemas = { paginated: paginatedSchema, byId: byIdSchema, search: searchSchema, + mediaRequestOptions: mediaRequestOptionsSchema, + requestMedia: requestMediaSchema, }; From 56b57ad171da170c2d8edd6112092cef0b586852 Mon Sep 17 00:00:00 2001 From: Meier Lukas Date: Tue, 31 Dec 2024 11:30:29 +0100 Subject: [PATCH 23/25] fix(docker): replace anonymous docker volume with env variable for encrypting secrets (#1809) --- .env.example | 13 ++++++++----- Dockerfile | 8 ++------ apps/nextjs/next.config.mjs | 1 + e2e/shared/create-homarr-container.ts | 21 +++++++++++++++++--- packages/auth/env.mjs | 2 -- packages/common/env.mjs | 28 +++++++++++++++++++++++++++ packages/common/package.json | 3 ++- packages/common/src/encryption.ts | 16 ++++----------- scripts/generateRandomSecureKey.js | 7 ------- scripts/run.sh | 27 ++------------------------ turbo.json | 2 +- 11 files changed, 66 insertions(+), 62 deletions(-) create mode 100644 packages/common/env.mjs delete mode 100644 scripts/generateRandomSecureKey.js diff --git a/.env.example b/.env.example index b05d685b1..854c2b19a 100644 --- a/.env.example +++ b/.env.example @@ -4,6 +4,14 @@ # This file will be committed to version control, so make sure not to have any secrets in it. # If you are cloning this repo, create a copy of this file named `.env` and populate it with your secrets. +# The below secret is not used anywhere but required for Auth.js (Would encrypt JWTs and Mail hashes, both not used) +AUTH_SECRET="supersecret" + +# The below secret is used to encrypt integration secrets in the database. +# It should be a 32-byte string, generated by running `openssl rand -hex 32` on Unix +# or starting the project without any (which will show a randomly generated one). +SECRET_ENCRYPTION_KEY=0000000000000000000000000000000000000000000000000000000000000000 + # This is how you can use the sqlite driver: DB_DRIVER='better-sqlite3' DB_URL='FULL_PATH_TO_YOUR_SQLITE_DB_FILE' @@ -20,11 +28,6 @@ DB_URL='FULL_PATH_TO_YOUR_SQLITE_DB_FILE' # DB_PASSWORD='password' # DB_NAME='name-of-database' - -# You can generate the secret via 'openssl rand -base64 32' on Unix -# @see https://next-auth.js.org/configuration/options#secret -AUTH_SECRET='supersecret' - TURBO_TELEMETRY_DISABLED=1 # Configure logging to use winston logger diff --git a/Dockerfile b/Dockerfile index 3e6f04281..65e174659 100644 --- a/Dockerfile +++ b/Dockerfile @@ -25,12 +25,10 @@ RUN corepack enable pnpm && pnpm build FROM base AS runner WORKDIR /app -# gettext is required for envsubst -RUN apk add --no-cache redis nginx bash gettext su-exec +# gettext is required for envsubst, openssl for generating AUTH_SECRET, su-exec for running application as non-root +RUN apk add --no-cache redis nginx bash gettext su-exec openssl RUN mkdir /appdata VOLUME /appdata -RUN mkdir /secrets -VOLUME /secrets @@ -43,7 +41,6 @@ RUN echo $'#!/bin/bash\ncd /app/apps/cli && node ./cli.cjs "$@"' > /usr/bin/homa RUN chmod +x /usr/bin/homarr # Don't run production as root -RUN chown -R nextjs:nodejs /secrets RUN mkdir -p /var/cache/nginx && chown -R nextjs:nodejs /var/cache/nginx && \ mkdir -p /var/log/nginx && chown -R nextjs:nodejs /var/log/nginx && \ mkdir -p /var/lib/nginx && chown -R nextjs:nodejs /var/lib/nginx && \ @@ -67,7 +64,6 @@ COPY --from=builder --chown=nextjs:nodejs /app/apps/nextjs/public ./apps/nextjs/ COPY --chown=nextjs:nodejs scripts/run.sh ./run.sh COPY scripts/entrypoint.sh ./entrypoint.sh RUN chmod +x ./entrypoint.sh -COPY --chown=nextjs:nodejs scripts/generateRandomSecureKey.js ./generateRandomSecureKey.js COPY --chown=nextjs:nodejs packages/redis/redis.conf /app/redis.conf COPY --chown=nextjs:nodejs nginx.conf /etc/nginx/templates/nginx.conf diff --git a/apps/nextjs/next.config.mjs b/apps/nextjs/next.config.mjs index 8c4bd2800..bd57eb1a2 100644 --- a/apps/nextjs/next.config.mjs +++ b/apps/nextjs/next.config.mjs @@ -1,6 +1,7 @@ // Importing env files here to validate on build import "@homarr/auth/env.mjs"; import "@homarr/db/env.mjs"; +import "@homarr/common/env.mjs"; import MillionLint from "@million/lint"; import createNextIntlPlugin from "next-intl/plugin"; diff --git a/e2e/shared/create-homarr-container.ts b/e2e/shared/create-homarr-container.ts index e6f2281ae..3183e66ca 100644 --- a/e2e/shared/create-homarr-container.ts +++ b/e2e/shared/create-homarr-container.ts @@ -5,7 +5,22 @@ export const createHomarrContainer = () => { throw new Error("This test should only be run in CI or with a homarr image named 'homarr-e2e'"); } - return new GenericContainer("homarr-e2e") - .withExposedPorts(7575) - .withWaitStrategy(Wait.forHttp("/api/health/ready", 7575)); + return withLogs( + new GenericContainer("homarr-e2e") + .withExposedPorts(7575) + .withEnvironment({ + SECRET_ENCRYPTION_KEY: "0".repeat(64), + }) + .withWaitStrategy(Wait.forHttp("/api/health/ready", 7575)), + ); +}; + +export const withLogs = (container: GenericContainer) => { + container.withLogConsumer((stream) => + stream + .on("data", (line) => console.log(line)) + .on("err", (line) => console.error(line)) + .on("end", () => console.log("Stream closed")), + ); + return container; }; diff --git a/packages/auth/env.mjs b/packages/auth/env.mjs index de1faa36f..ebc4555df 100644 --- a/packages/auth/env.mjs +++ b/packages/auth/env.mjs @@ -64,7 +64,6 @@ export const env = createEnv({ server: { AUTH_LOGOUT_REDIRECT_URL: z.string().url().optional(), AUTH_SESSION_EXPIRY_TIME: createDurationSchema("30d"), - AUTH_SECRET: process.env.NODE_ENV === "production" ? z.string().min(1) : z.string().min(1).optional(), AUTH_PROVIDERS: authProvidersSchema, ...(authProviders.includes("oidc") ? { @@ -98,7 +97,6 @@ export const env = createEnv({ runtimeEnv: { AUTH_LOGOUT_REDIRECT_URL: process.env.AUTH_LOGOUT_REDIRECT_URL, AUTH_SESSION_EXPIRY_TIME: process.env.AUTH_SESSION_EXPIRY_TIME, - AUTH_SECRET: process.env.AUTH_SECRET, AUTH_PROVIDERS: process.env.AUTH_PROVIDERS, AUTH_LDAP_BASE: process.env.AUTH_LDAP_BASE, AUTH_LDAP_BIND_DN: process.env.AUTH_LDAP_BIND_DN, diff --git a/packages/common/env.mjs b/packages/common/env.mjs new file mode 100644 index 000000000..4e62ec25d --- /dev/null +++ b/packages/common/env.mjs @@ -0,0 +1,28 @@ +import { randomBytes } from "crypto"; +import { createEnv } from "@t3-oss/env-nextjs"; +import { z } from "zod"; + +const errorSuffix = `, please generate a 64 character secret in hex format or use the following: "${randomBytes(32).toString("hex")}"`; + +export const env = createEnv({ + server: { + SECRET_ENCRYPTION_KEY: z + .string({ + required_error: `SECRET_ENCRYPTION_KEY is required${errorSuffix}`, + }) + .min(64, { + message: `SECRET_ENCRYPTION_KEY has to be 64 characters${errorSuffix}`, + }) + .max(64, { + message: `SECRET_ENCRYPTION_KEY has to be 64 characters${errorSuffix}`, + }) + .regex(/^[0-9a-fA-F]{64}$/, { + message: `SECRET_ENCRYPTION_KEY must only contain hex characters${errorSuffix}`, + }), + }, + runtimeEnv: { + SECRET_ENCRYPTION_KEY: process.env.SECRET_ENCRYPTION_KEY, + }, + skipValidation: + Boolean(process.env.CI) || Boolean(process.env.SKIP_ENV_VALIDATION) || process.env.npm_lifecycle_event === "lint", +}); diff --git a/packages/common/package.json b/packages/common/package.json index 5b54f768c..b294e9abf 100644 --- a/packages/common/package.json +++ b/packages/common/package.json @@ -8,7 +8,8 @@ ".": "./index.ts", "./types": "./src/types.ts", "./server": "./src/server.ts", - "./client": "./src/client.ts" + "./client": "./src/client.ts", + "./env.mjs": "./env.mjs" }, "typesVersions": { "*": { diff --git a/packages/common/src/encryption.ts b/packages/common/src/encryption.ts index 369fac3b2..e9a20b69c 100644 --- a/packages/common/src/encryption.ts +++ b/packages/common/src/encryption.ts @@ -1,20 +1,12 @@ import crypto from "crypto"; -import { logger } from "@homarr/log"; +import { env } from "../env.mjs"; const algorithm = "aes-256-cbc"; //Using AES encryption -const fallbackKey = "0000000000000000000000000000000000000000000000000000000000000000"; -const encryptionKey = process.env.ENCRYPTION_KEY ?? fallbackKey; // Fallback to a default key for local development -if (encryptionKey === fallbackKey) { - logger.warn("Using a fallback encryption key, stored secrets are not secure"); - // We never want to use the fallback key in production - if (process.env.NODE_ENV === "production" && process.env.CI !== "true") { - throw new Error("Encryption key is not set"); - } -} - -const key = Buffer.from(encryptionKey, "hex"); +// We fallback to a key of 0s if the key was not provided because env validation was skipped +// This should only be the case in CI +const key = Buffer.from(env.SECRET_ENCRYPTION_KEY || "0".repeat(64), "hex"); export function encryptSecret(text: string): `${string}.${string}` { const initializationVector = crypto.randomBytes(16); diff --git a/scripts/generateRandomSecureKey.js b/scripts/generateRandomSecureKey.js deleted file mode 100644 index 4813ae6a5..000000000 --- a/scripts/generateRandomSecureKey.js +++ /dev/null @@ -1,7 +0,0 @@ -// This script generates a random secure key with a length of 64 characters -// This key is used to encrypt and decrypt the integration secrets for auth.js -// In production it is generated in run.sh and stored in the environment variables ENCRYPTION_KEY / AUTH_SECRET -// during runtime, it's also stored in a file. - -const crypto = require("crypto"); -console.log(crypto.randomBytes(32).toString("hex")); diff --git a/scripts/run.sh b/scripts/run.sh index 2ba89cdff..ccceda47b 100644 --- a/scripts/run.sh +++ b/scripts/run.sh @@ -6,31 +6,8 @@ else node ./db/migrations/$DB_DIALECT/migrate.cjs ./db/migrations/$DB_DIALECT fi -# Generates an encryption key if it doesn't exist and saves it to /secrets/encryptionKey -# Also sets the ENCRYPTION_KEY environment variable -encryptionKey="" -if [ -r /secrets/encryptionKey ]; then - echo "Encryption key already exists" - encryptionKey=$(cat /secrets/encryptionKey) -else - echo "Generating encryption key" - encryptionKey=$(node ./generateRandomSecureKey.js) - echo $encryptionKey > /secrets/encryptionKey -fi -export ENCRYPTION_KEY=$encryptionKey - -# Generates an auth secret if it doesn't exist and saves it to /secrets/authSecret -# Also sets the AUTH_SECRET environment variable required for auth.js -authSecret="" -if [ -r /secrets/authSecret ]; then - echo "Auth secret already exists" - authSecret=$(cat /secrets/authSecret) -else - echo "Generating auth secret" - authSecret=$(node ./generateRandomSecureKey.js) - echo $authSecret > /secrets/authSecret -fi -export AUTH_SECRET=$authSecret +# Auth secret is generated every time the container starts as it is required, but not used because we don't need JWTs or Mail hashing +export AUTH_SECRET=$(openssl rand -base64 32) # Start nginx proxy # 1. Replace the HOSTNAME in the nginx template file diff --git a/turbo.json b/turbo.json index b7c00eb22..b3732c66e 100644 --- a/turbo.json +++ b/turbo.json @@ -23,7 +23,6 @@ "AUTH_OIDC_AUTO_LOGIN", "AUTH_LOGOUT_REDIRECT_URL", "AUTH_PROVIDERS", - "AUTH_SECRET", "AUTH_SESSION_EXPIRY_TIME", "CI", "DISABLE_REDIS_LOGS", @@ -38,6 +37,7 @@ "DOCKER_PORTS", "NODE_ENV", "PORT", + "SECRET_ENCRYPTION_KEY", "SKIP_ENV_VALIDATION" ], "ui": "stream", From aeb681a85839e31284e8f1566adc4191a68ea385 Mon Sep 17 00:00:00 2001 From: Meier Lukas Date: Tue, 31 Dec 2024 11:36:28 +0100 Subject: [PATCH 24/25] feat(docker): add support for pgid and puid env variables (#1759) --- Dockerfile | 42 ++++++++++++++++++------------------------ scripts/entrypoint.sh | 25 ++++++++++++++++++++----- scripts/run.sh | 4 ++++ 3 files changed, 42 insertions(+), 29 deletions(-) diff --git a/Dockerfile b/Dockerfile index 65e174659..a799e8152 100644 --- a/Dockerfile +++ b/Dockerfile @@ -30,42 +30,36 @@ RUN apk add --no-cache redis nginx bash gettext su-exec openssl RUN mkdir /appdata VOLUME /appdata - - -RUN addgroup --system --gid 1001 nodejs -RUN adduser --system --uid 1001 nextjs - # Enable homarr cli -COPY --from=builder --chown=nextjs:nodejs /app/packages/cli/cli.cjs /app/apps/cli/cli.cjs +COPY --from=builder /app/packages/cli/cli.cjs /app/apps/cli/cli.cjs RUN echo $'#!/bin/bash\ncd /app/apps/cli && node ./cli.cjs "$@"' > /usr/bin/homarr RUN chmod +x /usr/bin/homarr # Don't run production as root -RUN mkdir -p /var/cache/nginx && chown -R nextjs:nodejs /var/cache/nginx && \ - mkdir -p /var/log/nginx && chown -R nextjs:nodejs /var/log/nginx && \ - mkdir -p /var/lib/nginx && chown -R nextjs:nodejs /var/lib/nginx && \ - touch /run/nginx/nginx.pid && chown -R nextjs:nodejs /run/nginx/nginx.pid && \ - mkdir -p /etc/nginx/templates /etc/nginx/ssl/certs && chown -R nextjs:nodejs /etc/nginx +RUN mkdir -p /var/cache/nginx && \ + mkdir -p /var/log/nginx && \ + mkdir -p /var/lib/nginx && \ + touch /run/nginx/nginx.pid && \ + mkdir -p /etc/nginx/templates /etc/nginx/ssl/certs COPY --from=builder /app/apps/nextjs/next.config.mjs . COPY --from=builder /app/apps/nextjs/package.json . -COPY --from=builder --chown=nextjs:nodejs /app/apps/tasks/tasks.cjs ./apps/tasks/tasks.cjs -COPY --from=builder --chown=nextjs:nodejs /app/apps/websocket/wssServer.cjs ./apps/websocket/wssServer.cjs -COPY --from=builder --chown=nextjs:nodejs /app/node_modules/better-sqlite3/build/Release/better_sqlite3.node /app/build/better_sqlite3.node +COPY --from=builder /app/apps/tasks/tasks.cjs ./apps/tasks/tasks.cjs +COPY --from=builder /app/apps/websocket/wssServer.cjs ./apps/websocket/wssServer.cjs +COPY --from=builder /app/node_modules/better-sqlite3/build/Release/better_sqlite3.node /app/build/better_sqlite3.node -COPY --from=builder --chown=nextjs:nodejs /app/packages/db/migrations ./db/migrations +COPY --from=builder /app/packages/db/migrations ./db/migrations # Automatically leverage output traces to reduce image size # https://nextjs.org/docs/advanced-features/output-file-tracing -COPY --from=builder --chown=nextjs:nodejs /app/apps/nextjs/.next/standalone ./ -COPY --from=builder --chown=nextjs:nodejs /app/apps/nextjs/.next/static ./apps/nextjs/.next/static -COPY --from=builder --chown=nextjs:nodejs /app/apps/nextjs/public ./apps/nextjs/public -COPY --chown=nextjs:nodejs scripts/run.sh ./run.sh -COPY scripts/entrypoint.sh ./entrypoint.sh -RUN chmod +x ./entrypoint.sh -COPY --chown=nextjs:nodejs packages/redis/redis.conf /app/redis.conf -COPY --chown=nextjs:nodejs nginx.conf /etc/nginx/templates/nginx.conf +COPY --from=builder /app/apps/nextjs/.next/standalone ./ +COPY --from=builder /app/apps/nextjs/.next/static ./apps/nextjs/.next/static +COPY --from=builder /app/apps/nextjs/public ./apps/nextjs/public +COPY scripts/run.sh ./run.sh +COPY --chmod=777 scripts/entrypoint.sh ./entrypoint.sh +COPY packages/redis/redis.conf /app/redis.conf +COPY nginx.conf /etc/nginx/templates/nginx.conf ENV DB_URL='/appdata/db/db.sqlite' @@ -74,4 +68,4 @@ ENV DB_DRIVER='better-sqlite3' ENV AUTH_PROVIDERS='credentials' ENTRYPOINT [ "/app/entrypoint.sh" ] -CMD ["sh", "run.sh"] +CMD ["sh", "run.sh"] \ No newline at end of file diff --git a/scripts/entrypoint.sh b/scripts/entrypoint.sh index 59a5589df..54131a632 100644 --- a/scripts/entrypoint.sh +++ b/scripts/entrypoint.sh @@ -1,10 +1,25 @@ #!/bin/sh set -e -# Creating folders in volume -mkdir -p /appdata/db -mkdir -p /appdata/redis +export PUID=${PUID:-0} +export PGID=${PGID:-0} -chown -R nextjs:nodejs /appdata +echo "Starting with UID='$PUID', GID='$PGID'" -su-exec 1001:1001 "$@" \ No newline at end of file +if [ "${PUID}" != "0" ] || [ "${PGID}" != "0" ]; then + # The below command will change the owner of all files in the /app directory (except node_modules) to the new UID and GID + echo "Changing owner to $PUID:$PGID, this will take about 10 seconds..." + find . -name 'node_modules' -prune -o -mindepth 1 -maxdepth 1 -exec chown -R $PUID:$PGID {} + + chown -R $PUID:$PGID /var/cache/nginx + chown -R $PUID:$PGID /var/log/nginx + chown -R $PUID:$PGID /var/lib/nginx + chown -R $PUID:$PGID /run/nginx/nginx.pid + chown -R $PUID:$PGID /etc/nginx + echo "Changing owner to $PUID:$PGID, done." +fi + +if [ "${PUID}" != "0" ]; then + su-exec $PUID:$PGID "$@" +else + exec "$@" +fi diff --git a/scripts/run.sh b/scripts/run.sh index ccceda47b..f3f92820c 100644 --- a/scripts/run.sh +++ b/scripts/run.sh @@ -1,3 +1,7 @@ +# Create sub directories in volume +mkdir -p /appdata/db +mkdir -p /appdata/redis + # Run migrations if [ $DB_MIGRATIONS_DISABLED = "true" ]; then echo "DB migrations are disabled, skipping" From f5076454cd644a99439b697f24bb0b1f871b2205 Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Tue, 31 Dec 2024 11:40:37 +0100 Subject: [PATCH 25/25] feat(integration): add search engine creation (#1816) Co-authored-by: Meier Lukas --- .vscode/settings.json | 2 +- .../new/_integration-new-form.tsx | 17 +- .../router/integration/integration-router.ts | 44 + .../integration/integration-router.spec.ts | 44 + .../migrations/mysql/0018_mighty_shaman.sql | 1 + .../migrations/mysql/meta/0018_snapshot.json | 1668 +++++++++++++++++ .../db/migrations/mysql/meta/_journal.json | 7 + .../sqlite/0018_cheerful_tattoo.sql | 1 + .../migrations/sqlite/meta/0018_snapshot.json | 1593 ++++++++++++++++ .../db/migrations/sqlite/meta/_journal.json | 7 + packages/db/schema/mysql.ts | 2 +- packages/db/schema/sqlite.ts | 2 +- packages/icons/index.ts | 1 + packages/icons/src/auto-icon-searcher.ts | 9 + packages/translation/src/lang/en.json | 4 + packages/validation/src/integration.ts | 1 + 16 files changed, 3398 insertions(+), 5 deletions(-) create mode 100644 packages/db/migrations/mysql/0018_mighty_shaman.sql create mode 100644 packages/db/migrations/mysql/meta/0018_snapshot.json create mode 100644 packages/db/migrations/sqlite/0018_cheerful_tattoo.sql create mode 100644 packages/db/migrations/sqlite/meta/0018_snapshot.json create mode 100644 packages/icons/src/auto-icon-searcher.ts diff --git a/.vscode/settings.json b/.vscode/settings.json index 2e67df382..51d2500a1 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -39,5 +39,5 @@ "i18n-ally.localesPaths": [ "packages/translation/src/lang", ], - "i18n-ally.keystyle": "auto", + "i18n-ally.keystyle": "nested", } diff --git a/apps/nextjs/src/app/[locale]/manage/integrations/new/_integration-new-form.tsx b/apps/nextjs/src/app/[locale]/manage/integrations/new/_integration-new-form.tsx index 791be2938..a223e3bfc 100644 --- a/apps/nextjs/src/app/[locale]/manage/integrations/new/_integration-new-form.tsx +++ b/apps/nextjs/src/app/[locale]/manage/integrations/new/_integration-new-form.tsx @@ -3,13 +3,13 @@ import { useCallback } from "react"; import Link from "next/link"; import { useRouter } from "next/navigation"; -import { Alert, Button, Fieldset, Group, SegmentedControl, Stack, Text, TextInput } from "@mantine/core"; +import { Alert, Button, Checkbox, Fieldset, Group, SegmentedControl, Stack, Text, TextInput } from "@mantine/core"; import { IconInfoCircle } from "@tabler/icons-react"; import { clientApi } from "@homarr/api/client"; import { revalidatePathActionAsync } from "@homarr/common/client"; import type { IntegrationKind, IntegrationSecretKind } from "@homarr/definitions"; -import { getAllSecretKindOptions, getIntegrationName } from "@homarr/definitions"; +import { getAllSecretKindOptions, getIntegrationName, integrationDefs } from "@homarr/definitions"; import type { UseFormReturnType } from "@homarr/form"; import { useZodForm } from "@homarr/form"; import { convertIntegrationTestConnectionError } from "@homarr/integrations/client"; @@ -38,6 +38,7 @@ export const NewIntegrationForm = ({ searchParams }: NewIntegrationFormProps) => kind, value: "", })), + attemptSearchEngineCreation: true, }, }); const { mutateAsync, isPending } = clientApi.integration.create.useMutation(); @@ -78,6 +79,8 @@ export const NewIntegrationForm = ({ searchParams }: NewIntegrationFormProps) => ); }; + const supportsSearchEngine = integrationDefs[searchParams.kind].category.flat().includes("search"); + return (
void handleSubmitAsync(value))}> @@ -104,6 +107,16 @@ export const NewIntegrationForm = ({ searchParams }: NewIntegrationFormProps) => + {supportsSearchEngine && ( + + )} +