diff --git a/data/constants.ts b/data/constants.ts index f7022807e..5cd84638c 100644 --- a/data/constants.ts +++ b/data/constants.ts @@ -1,2 +1,2 @@ export const REPO_URL = 'ajnart/homarr'; -export const CURRENT_VERSION = 'v0.10.2'; +export const CURRENT_VERSION = 'v0.10.3'; diff --git a/package.json b/package.json index 54ef5cb43..1e00d62f2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "homarr", - "version": "0.10.2", + "version": "0.10.3", "description": "Homarr - A homepage for your server.", "license": "MIT", "repository": { diff --git a/public/icons/.gitkeep b/public/icons/.gitkeep deleted file mode 100644 index e69de29bb..000000000 diff --git a/public/imgs/favicon.png b/public/imgs/favicon.png deleted file mode 100644 index cb0dc4489..000000000 Binary files a/public/imgs/favicon.png and /dev/null differ diff --git a/public/favicon-squared.png b/public/imgs/favicon/favicon-squared.png similarity index 100% rename from public/favicon-squared.png rename to public/imgs/favicon/favicon-squared.png diff --git a/public/favicon.png b/public/imgs/favicon/favicon.png similarity index 100% rename from public/favicon.png rename to public/imgs/favicon/favicon.png diff --git a/public/favicon.svg b/public/imgs/favicon/favicon.svg similarity index 100% rename from public/favicon.svg rename to public/imgs/favicon/favicon.svg diff --git a/public/imgs/logo-color.svg b/public/imgs/logo/logo-color.svg similarity index 100% rename from public/imgs/logo-color.svg rename to public/imgs/logo/logo-color.svg diff --git a/public/imgs/logo.png b/public/imgs/logo/logo.png similarity index 100% rename from public/imgs/logo.png rename to public/imgs/logo/logo.png diff --git a/public/imgs/logo.svg b/public/imgs/logo/logo.svg similarity index 100% rename from public/imgs/logo.svg rename to public/imgs/logo/logo.svg diff --git a/public/imgs/pwa/apple-icon-180.png b/public/imgs/pwa/apple-icon-180.png new file mode 100644 index 000000000..c153ef522 Binary files /dev/null and b/public/imgs/pwa/apple-icon-180.png differ diff --git a/public/imgs/pwa/favicon-196.png b/public/imgs/pwa/favicon-196.png new file mode 100644 index 000000000..cf8d74e6c Binary files /dev/null and b/public/imgs/pwa/favicon-196.png differ diff --git a/public/imgs/pwa/manifest/manifest-icon-192.maskable.png b/public/imgs/pwa/manifest/manifest-icon-192.maskable.png new file mode 100644 index 000000000..0783e1c6e Binary files /dev/null and b/public/imgs/pwa/manifest/manifest-icon-192.maskable.png differ diff --git a/public/imgs/pwa/manifest/manifest-icon-512.maskable.png b/public/imgs/pwa/manifest/manifest-icon-512.maskable.png new file mode 100644 index 000000000..d6366700a Binary files /dev/null and b/public/imgs/pwa/manifest/manifest-icon-512.maskable.png differ diff --git a/public/locales/da/authentication/login.json b/public/locales/da/authentication/login.json new file mode 100644 index 000000000..d81ca6743 --- /dev/null +++ b/public/locales/da/authentication/login.json @@ -0,0 +1,27 @@ +{ + "title": "Velkommen tilbage!", + "text": "Angiv venligst adgangskoden", + "form": { + "fields": { + "password": { + "label": "Adgangskode", + "placeholder": "Din adgangskode" + } + }, + "buttons": { + "submit": "Log ind" + } + }, + "notifications": { + "checking": { + "title": "Tjekker din adgangskode", + "message": "Din adgangskode er ved at blive tjekket..." + }, + "correct": { + "title": "Adgangskode korrekt, omdirigerer dig..." + }, + "wrong": { + "title": "Adgangskoden er forkert, prøv venligst igen." + } + } +} diff --git a/public/locales/da/common.json b/public/locales/da/common.json new file mode 100644 index 000000000..d0ee0bd85 --- /dev/null +++ b/public/locales/da/common.json @@ -0,0 +1,11 @@ +{ + "actions": { + "save": "Gem" + }, + "tip": "Tip: ", + "time": { + "seconds": "sekunder", + "minutes": "minutter", + "hours": "timer" + } +} diff --git a/public/locales/da/layout/add-service-app-shelf.json b/public/locales/da/layout/add-service-app-shelf.json new file mode 100644 index 000000000..677bf1683 --- /dev/null +++ b/public/locales/da/layout/add-service-app-shelf.json @@ -0,0 +1,118 @@ +{ + "actionIcon": { + "tooltip": "Tilføj en tjeneste" + }, + "modal": { + "title": "Tilføj tjeneste", + "form": { + "validation": { + "invalidUrl": "Angiv venligst en gyldig URL-adresse", + "noStatusCodeSelected": "Vælg venligst en statuskode" + } + }, + "tabs": { + "options": { + "title": "Indstillinger", + "form": { + "serviceName": { + "label": "Tjenestenavn", + "placeholder": "Plex" + }, + "iconUrl": { + "label": "Ikon-URL" + }, + "serviceUrl": { + "label": "Tjeneste-URL" + }, + "onClickUrl": { + "label": "Ved klik på URL" + }, + "serviceType": { + "label": "Tjenestetype", + "defaultValue": "Andet", + "placeholder": "Vælg en" + }, + "category": { + "label": "Kategori", + "placeholder": "Vælg en eksisterende kategori eller opret en ny", + "nothingFound": "Intet fundet", + "createLabel": "+ Opret {{query}}" + }, + "integrations": { + "apiKey": { + "label": "API nøgle", + "placeholder": "Din API nøgle", + "validation": { + "noKey": "Ugyldig nøgle" + }, + "tip": { + "text": "Hent din API nøgle", + "link": "her." + } + }, + "qBittorrent": { + "username": { + "label": "Brugernavn", + "placeholder": "admin", + "validation": { + "invalidUsername": "Ugyldigt brugernavn" + } + }, + "password": { + "label": "Adgangskode", + "placeholder": "adminadmin", + "validation": { + "invalidPassword": "Ugyldig adgangskode" + } + } + }, + "deluge": { + "password": { + "label": "Adgangskode", + "placeholder": "adgangskode", + "validation": { + "invalidPassword": "Ugyldig adgangskode" + } + } + }, + "transmission": { + "username": { + "label": "Brugernavn", + "placeholder": "admin", + "validation": { + "invalidUsername": "Ugyldigt brugernavn" + } + }, + "password": { + "label": "Adgangskode", + "placeholder": "adminadmin", + "validation": { + "invalidPassword": "Ugyldig adgangskode" + } + } + } + } + } + }, + "advancedOptions": { + "title": "Avancerede indstillinger", + "form": { + "httpStatusCodes": { + "label": "HTTP status kode", + "placeholder": "Vælg gyldige statuskoder", + "clearButtonLabel": "Ryd valgte", + "nothingFound": "Intet fundet" + }, + "openServiceInNewTab": { + "label": "Åbn tjeneste i ny fane" + }, + "buttons": { + "submit": { + "content": "Tilføj tjeneste" + } + } + } + } + } + } +} \ No newline at end of file diff --git a/public/locales/da/layout/app-shelf-menu.json b/public/locales/da/layout/app-shelf-menu.json new file mode 100644 index 000000000..1d97e4405 --- /dev/null +++ b/public/locales/da/layout/app-shelf-menu.json @@ -0,0 +1,18 @@ +{ + "modal": { + "title": "Ændr en tjeneste", + "buttons": { + "save": "Gem tjeneste" + } + }, + "menu": { + "labels": { + "settings": "Indstillinger", + "dangerZone": "Farezone" + }, + "actions": { + "edit": "Rediger", + "delete": "Slet" + } + } +} \ No newline at end of file diff --git a/public/locales/da/layout/app-shelf.json b/public/locales/da/layout/app-shelf.json new file mode 100644 index 000000000..712fe938c --- /dev/null +++ b/public/locales/da/layout/app-shelf.json @@ -0,0 +1,12 @@ +{ + "accordions": { + "downloads": { + "text": "Dine downloads", + "torrents": "Dine Torrent downloads", + "usenet": "Dine Usenet downloads" + }, + "others": { + "text": "Andre" + } + } +} \ No newline at end of file diff --git a/public/locales/da/modules/calendar.json b/public/locales/da/modules/calendar.json new file mode 100644 index 000000000..ab77fa36b --- /dev/null +++ b/public/locales/da/modules/calendar.json @@ -0,0 +1,11 @@ +{ + "descriptor": { + "name": "Kalender", + "description": "Et kalendermodul til visning af kommende udgivelser. Det interagerer med Sonarr- og Radarr-API'erne.", + "settings": { + "sundayStart": { + "label": "Søndag første ugedag" + } + } + } +} \ No newline at end of file diff --git a/public/locales/da/modules/common-media-cards.json b/public/locales/da/modules/common-media-cards.json new file mode 100644 index 000000000..7e167bc27 --- /dev/null +++ b/public/locales/da/modules/common-media-cards.json @@ -0,0 +1,6 @@ +{ + "buttons": { + "play": "Afspil", + "request": "Anmod" + } +} \ No newline at end of file diff --git a/public/locales/da/modules/common.json b/public/locales/da/modules/common.json new file mode 100644 index 000000000..525018e17 --- /dev/null +++ b/public/locales/da/modules/common.json @@ -0,0 +1,5 @@ +{ + "settings": { + "label": "Indstillinger" + } +} \ No newline at end of file diff --git a/public/locales/da/modules/dashdot.json b/public/locales/da/modules/dashdot.json new file mode 100644 index 000000000..465ebcbf2 --- /dev/null +++ b/public/locales/da/modules/dashdot.json @@ -0,0 +1,53 @@ +{ + "descriptor": { + "name": "Dash.", + "description": "Et modul til visning af graferne for din kørende Dash. instans.", + "settings": { + "cpuMultiView": { + "label": "CPU Multikerne Visning" + }, + "storageMultiView": { + "label": "Multidrevet Lagervisning" + }, + "useCompactView": { + "label": "Brug kompakt tilstand" + }, + "graphs": { + "label": "Grafer" + }, + "url": { + "label": "Dash. URL" + } + } + }, + "card": { + "title": "Dash.", + "errors": { + "noService": "Ingen Dash. service fundet. Tilføj venligst en til dit Homarr-dashboard eller indstil en Dash. URL i modulindstillingerne", + "noInformation": "Kan ikke hente information fra dash. - kører du den nyeste version?" + }, + "graphs": { + "storage": { + "title": "Lager", + "label": "Lager:" + }, + "network": { + "title": "Netværk", + "label": "Netværk:", + "metrics": { + "download": "Down", + "upload": "Up" + } + }, + "cpu": { + "title": "CPU" + }, + "memory": { + "title": "RAM" + }, + "gpu": { + "title": "GPU" + } + } + } +} \ No newline at end of file diff --git a/public/locales/da/modules/date.json b/public/locales/da/modules/date.json new file mode 100644 index 000000000..3e52aa6de --- /dev/null +++ b/public/locales/da/modules/date.json @@ -0,0 +1,11 @@ +{ + "descriptor": { + "name": "Dato", + "description": "Vis det aktuelle klokkeslæt og den aktuelle dato på et kort", + "settings": { + "display24HourFormat": { + "label": "Vis fuld tid (24-timer)" + } + } + } +} \ No newline at end of file diff --git a/public/locales/da/modules/dlspeed.json b/public/locales/da/modules/dlspeed.json new file mode 100644 index 000000000..737c0f075 --- /dev/null +++ b/public/locales/da/modules/dlspeed.json @@ -0,0 +1,35 @@ +{ + "descriptor": { + "name": "Download hastighed", + "description": "Vis den aktuelle downloadhastighed for understøttede tjenester" + }, + "card": { + "table": { + "header": { + "name": "Navn", + "size": "Størrelse", + "download": "Down", + "upload": "Up", + "estimatedTimeOfArrival": "ETA", + "progress": "Fremskridt" + }, + "body": { + "nothingFound": "Ingen torrents fundet" + } + }, + "lineChart": { + "title": "Nuværende downloadhastighed", + "download": "Download: {{download}}", + "upload": "Upload: {{upload}}", + "timeSpan": "{{seconds}} sekunder siden", + "totalDownload": "Download: {{download}}/s", + "totalUpload": "Upload: {{upload}}/s" + }, + "errors": { + "noDownloadClients": { + "title": "Ingen understøttede downloadklienter fundet!", + "text": "Tilføj en downloadtjeneste for at se dine aktuelle downloads" + } + } + } +} \ No newline at end of file diff --git a/public/locales/da/modules/docker.json b/public/locales/da/modules/docker.json new file mode 100644 index 000000000..154f40f14 --- /dev/null +++ b/public/locales/da/modules/docker.json @@ -0,0 +1,83 @@ +{ + "descriptor": { + "name": "Docker", + "description": "Tillader dig nemt at administrere dine docker containere" + }, + "search": { + "placeholder": "Søg efter container- eller imagenavn" + }, + "table": { + "header": { + "name": "Navn", + "image": "Image", + "ports": "Porte", + "state": "Tilstand" + }, + "body": { + "portCollapse": "{{ports}} flere" + }, + "states": { + "running": "Kører", + "created": "Oprettet", + "stopped": "Stoppet", + "unknown": "Ukendt" + } + }, + "actionBar": { + "addService": { + "title": "Tilføj tjeneste", + "message": "Tilføj tjeneste til Homarr" + }, + "restart": { + "title": "Genstart" + }, + "stop": { + "title": "Stop" + }, + "start": { + "title": "Start" + }, + "refreshData": { + "title": "Opdater data" + }, + "remove": { + "title": "Fjern" + }, + "addToHomarr": { + "title": "Tilføj til Homarr" + } + }, + "actions": { + "start": { + "start": "Starter", + "end": "Startet" + }, + "stop": { + "start": "Stopper", + "end": "Stoppet" + }, + "restart": { + "start": "Genstarter", + "end": "Genstartet" + }, + "remove": { + "start": "Fjerner", + "end": "Fjernet" + } + }, + "errors": { + "integrationFailed": { + "title": "Docker integration mislykkedes", + "message": "Har du glemt at montere docker socket ?" + }, + "unknownError": { + "title": "Der opstod en fejl" + }, + "oneServiceAtATime": { + "title": "Du må kun tilføje én tjeneste ad gangen!" + } + }, + "actionIcon": { + "tooltip": "Docker" + } +} \ No newline at end of file diff --git a/public/locales/da/modules/overseerr.json b/public/locales/da/modules/overseerr.json new file mode 100644 index 000000000..ad0e86084 --- /dev/null +++ b/public/locales/da/modules/overseerr.json @@ -0,0 +1,30 @@ +{ + "descriptor": { + "name": "Overseerr", + "description": "Giver dig mulighed for at søge og tilføje medier fra Overseerr/Jellyseerr" + }, + "popup": { + "item": { + "buttons": { + "askFor": "Spørg efter {{title}}", + "cancel": "Annuller", + "request": "Anmod" + }, + "alerts": { + "automaticApproval": { + "title": "Brug API nøgle", + "text": "Denne anmodning vil blive godkendt automatisk" + } + } + }, + "seasonSelector": { + "caption": "Sæt kryds ved de sæsoner, du ønsker at downloade", + "table": { + "header": { + "season": "Sæson", + "numberOfEpisodes": "Antal episoder" + } + } + } + } +} \ No newline at end of file diff --git a/public/locales/da/modules/ping.json b/public/locales/da/modules/ping.json new file mode 100644 index 000000000..092f95ca4 --- /dev/null +++ b/public/locales/da/modules/ping.json @@ -0,0 +1,11 @@ +{ + "descriptor": { + "name": "Ping", + "description": "Giver dig mulighed for at kontrollere, om tjenesten er oppe eller returnerer en bestemt HTTP-statuskode." + }, + "states": { + "online": "Online {{response}}", + "offline": "Offline {{response}}", + "loading": "Indlæser..." + } +} \ No newline at end of file diff --git a/public/locales/da/modules/search.json b/public/locales/da/modules/search.json new file mode 100644 index 000000000..ab3378dd6 --- /dev/null +++ b/public/locales/da/modules/search.json @@ -0,0 +1,9 @@ +{ + "descriptor": { + "name": "Søgebjælke", + "description": "Søgebjælke til at søge på nettet, Youtube, Torrents eller Overseerr" + }, + "input": { + "placeholder": "Søg på nettet..." + } +} \ No newline at end of file diff --git a/public/locales/da/modules/torrents-status.json b/public/locales/da/modules/torrents-status.json new file mode 100644 index 000000000..229e81b56 --- /dev/null +++ b/public/locales/da/modules/torrents-status.json @@ -0,0 +1,40 @@ +{ + "descriptor": { + "name": "Torrent", + "description": "Vis den aktuelle downloadhastighed for understøttede tjenester", + "settings": { + "hideComplete": { + "label": "Skjul fuldførte torrents" + } + } + }, + "card": { + "table": { + "header": { + "name": "Navn", + "size": "Størrelse", + "download": "Down", + "upload": "Up", + "estimatedTimeOfArrival": "ETA", + "progress": "Fremskridt" + }, + "body": { + "nothingFound": "Ingen torrents fundet" + } + }, + "lineChart": { + "title": "Nuværende downloadhastighed", + "download": "Download: {{download}}", + "upload": "Upload: {{upload}}", + "timeSpan": "{{seconds}} sekunder siden", + "totalDownload": "Download: {{download}}/s", + "totalUpload": "Upload: {{upload}}/s" + }, + "errors": { + "noDownloadClients": { + "title": "Ingen understøttede downloadklienter fundet!", + "text": "Tilføj en downloadtjeneste for at se dine aktuelle downloads" + } + } + } +} \ No newline at end of file diff --git a/public/locales/da/modules/usenet.json b/public/locales/da/modules/usenet.json new file mode 100644 index 000000000..3783e29df --- /dev/null +++ b/public/locales/da/modules/usenet.json @@ -0,0 +1,49 @@ +{ + "descriptor": { + "name": "Sabnzbd", + "description": "Tillader dig at se din Sabnzbd kø og historie, pause og genoptage downloads" + }, + "card": { + "errors": { + "noDownloadClients": { + "title": "Ingen understøttede downloadklienter fundet!", + "text": "Tilføj en downloadtjeneste for at se dine aktuelle downloads" + } + } + }, + "tabs": { + "queue": "Kø", + "history": "Historik" + }, + "info": { + "sizeLeft": "Størrelse tilbage", + "paused": "På pause" + }, + "queue": { + "header": { + "name": "Navn", + "size": "Størrelse", + "eta": "ETA", + "progress": "Fremskridt" + }, + "empty": "Tom", + "error": { + "title": "Fejl", + "message": "Der er opstået en fejl" + }, + "paused": "På pause" + }, + "history": { + "header": { + "name": "Navn", + "size": "Størrelse", + "duration": "Varighed" + }, + "empty": "Intet indhold", + "error": { + "title": "Fejl", + "message": "Fejl ved indlæsning af historik" + }, + "paused": "På pause" + } +} diff --git a/public/locales/da/modules/weather.json b/public/locales/da/modules/weather.json new file mode 100644 index 000000000..5112fb794 --- /dev/null +++ b/public/locales/da/modules/weather.json @@ -0,0 +1,32 @@ +{ + "descriptor": { + "name": "Vejr", + "description": "Se det aktuelle vejr på din placering", + "settings": { + "displayInFahrenheit": { + "label": "Vis i Fahrenheit" + }, + "location": { + "label": "Vejr lokation" + } + } + }, + "card": { + "weatherDescriptions": { + "clear": "Skyfrit", + "mainlyClear": "Hovedsageligt skyfrit", + "fog": "Tåge", + "drizzle": "Støvregn", + "freezingDrizzle": "Støvregn med isslag", + "rain": "Regn", + "freezingRain": "Isslag", + "snowFall": "Snefald", + "snowGrains": "Mildt snefald", + "rainShowers": "Regnbyger", + "snowShowers": "Snebyger", + "thunderstorm": "Tordenvejr", + "thunderstormWithHail": "Tordenvejr med hagl", + "unknown": "Ukendt" + } + } +} \ No newline at end of file diff --git a/public/locales/da/settings/common.json b/public/locales/da/settings/common.json new file mode 100644 index 000000000..fe544f3ff --- /dev/null +++ b/public/locales/da/settings/common.json @@ -0,0 +1,14 @@ +{ + "title": "Indstillinger", + "tooltip": "Indstillinger", + "tabs": { + "common": "Generelle", + "customizations": "Tilpasninger" + }, + "tips": { + "configTip": "Upload din konfigurationsfil ved at trække og slippe den på siden!" + }, + "credits": { + "madeWithLove": "Lavet med ❤️ af @" + } +} \ No newline at end of file diff --git a/public/locales/da/settings/customization/app-width.json b/public/locales/da/settings/customization/app-width.json new file mode 100644 index 000000000..e68fdace9 --- /dev/null +++ b/public/locales/da/settings/customization/app-width.json @@ -0,0 +1,3 @@ +{ + "label": "App Bredde" +} \ No newline at end of file diff --git a/public/locales/da/settings/customization/color-selector.json b/public/locales/da/settings/customization/color-selector.json new file mode 100644 index 000000000..a0dab03d9 --- /dev/null +++ b/public/locales/da/settings/customization/color-selector.json @@ -0,0 +1,3 @@ +{ + "suffix": "{{color}} farve" +} \ No newline at end of file diff --git a/public/locales/da/settings/customization/opacity-selector.json b/public/locales/da/settings/customization/opacity-selector.json new file mode 100644 index 000000000..1bb4c5e03 --- /dev/null +++ b/public/locales/da/settings/customization/opacity-selector.json @@ -0,0 +1,3 @@ +{ + "label": "App Gennemsigtighed" +} \ No newline at end of file diff --git a/public/locales/da/settings/customization/page-appearance.json b/public/locales/da/settings/customization/page-appearance.json new file mode 100644 index 000000000..41d8ff74f --- /dev/null +++ b/public/locales/da/settings/customization/page-appearance.json @@ -0,0 +1,25 @@ +{ + "pageTitle": { + "label": "Sidetitel", + "placeholder": "Homarr 🦞" + }, + "logo": { + "label": "Logo", + "placeholder": "/img/logo.png" + }, + "favicon": { + "label": "Favicon", + "placeholder": "/favicon.png" + }, + "background": { + "label": "Baggrund", + "placeholder": "/img/background.png" + }, + "customCSS": { + "label": "Tilpasset CSS", + "placeholder": "Brugerdefineret CSS vil blive eksekveret som det sidste" + }, + "buttons": { + "submit": "Indsend" + } +} diff --git a/public/locales/da/settings/customization/shade-selector.json b/public/locales/da/settings/customization/shade-selector.json new file mode 100644 index 000000000..d969294ba --- /dev/null +++ b/public/locales/da/settings/customization/shade-selector.json @@ -0,0 +1,3 @@ +{ + "label": "Skygge" +} \ No newline at end of file diff --git a/public/locales/da/settings/general/color-schema.json b/public/locales/da/settings/general/color-schema.json new file mode 100644 index 000000000..cbd3e5702 --- /dev/null +++ b/public/locales/da/settings/general/color-schema.json @@ -0,0 +1,3 @@ +{ + "label": "Skift til {{scheme}} tilstand" +} \ No newline at end of file diff --git a/public/locales/da/settings/general/config-changer.json b/public/locales/da/settings/general/config-changer.json new file mode 100644 index 000000000..df61e77dc --- /dev/null +++ b/public/locales/da/settings/general/config-changer.json @@ -0,0 +1,55 @@ +{ + "configSelect": { + "label": "Konfigurations indlæser" + }, + "modal": { + "title": "Vælg navnet på din nye konfiguration", + "form": { + "configName": { + "label": "Konfigurationens navn", + "placeholder": "Dit nye konfigurationsnavn" + }, + "submitButton": "Bekræft" + }, + "events": { + "configSaved": { + "title": "Konfigurationen gemt", + "message": "Konfigurationen gemt som {{configName}}" + } + } + }, + "buttons": { + "download": "Hent konfiguration", + "delete": { + "text": "Slet konfiguration", + "notifications": { + "deleted": { + "title": "Konfiguration slettet", + "message": "Konfiguration slettet" + }, + "deleteFailed": { + "title": "Sletning af konfiguration mislykkedes", + "message": "Sletning af konfiguration mislykkedes" + } + } + }, + "saveCopy": "Gem en kopi" + }, + "dropzone": { + "notifications": { + "invalidConfig": { + "title": "Kan ikke indlæse konfigurationen", + "message": "Kunne ikke indlæse din konfiguration. Ugyldigt JSON-format." + }, + "loadedSuccessfully": { + "title": "Konfigurationen {{configName}} blev indlæst" + } + }, + "accept": { + "text": "Træk filer hertil for at uploade en konfiguration. Kun understøttelse af JSON." + }, + "reject": { + "text": "Dette filformat understøttes ikke. Upload venligst kun JSON." + } + } +} \ No newline at end of file diff --git a/public/locales/da/settings/general/internationalization.json b/public/locales/da/settings/general/internationalization.json new file mode 100644 index 000000000..f5ba06c3b --- /dev/null +++ b/public/locales/da/settings/general/internationalization.json @@ -0,0 +1,3 @@ +{ + "label": "Sprog" +} \ No newline at end of file diff --git a/public/locales/da/settings/general/module-enabler.json b/public/locales/da/settings/general/module-enabler.json new file mode 100644 index 000000000..4450dd64d --- /dev/null +++ b/public/locales/da/settings/general/module-enabler.json @@ -0,0 +1,3 @@ +{ + "title": "Modul aktivator" +} \ No newline at end of file diff --git a/public/locales/da/settings/general/search-engine.json b/public/locales/da/settings/general/search-engine.json new file mode 100644 index 000000000..5fedbdce2 --- /dev/null +++ b/public/locales/da/settings/general/search-engine.json @@ -0,0 +1,14 @@ +{ + "title": "Søgemaskine", + "tips": { + "generalTip": "Brug præfikserne !yt og !t foran din forespørgsel for at søge på YouTube eller efter en Torrent.", + "placeholderTip": "%s kan bruges som en pladsholder for forespørgslen." + }, + "customEngine": { + "label": "Forespørgsels URL", + "placeholder": "Brugerdefineret forespørgsels URL" + }, + "searchNewTab": { + "label": "Åben søgeresultater i en ny fane" + } +} \ No newline at end of file diff --git a/public/locales/da/settings/general/theme-selector.json b/public/locales/da/settings/general/theme-selector.json new file mode 100644 index 000000000..12d000728 --- /dev/null +++ b/public/locales/da/settings/general/theme-selector.json @@ -0,0 +1,3 @@ +{ + "label": "Skift til {{theme}} tilstand" +} \ No newline at end of file diff --git a/public/locales/da/settings/general/widget-positions.json b/public/locales/da/settings/general/widget-positions.json new file mode 100644 index 000000000..70a6a3d69 --- /dev/null +++ b/public/locales/da/settings/general/widget-positions.json @@ -0,0 +1,3 @@ +{ + "label": "Placer widgets til venstre" +} \ No newline at end of file diff --git a/public/locales/de/layout/app-shelf.json b/public/locales/de/layout/app-shelf.json index 72788abb4..b2717eebe 100644 --- a/public/locales/de/layout/app-shelf.json +++ b/public/locales/de/layout/app-shelf.json @@ -1,7 +1,9 @@ { "accordions": { "downloads": { - "text": "Deine Downloads" + "text": "Deine Downloads", + "torrents": "Deine Torrent Downloads", + "usenet": "Deine Usenet Downloads" }, "others": { "text": "Andere" diff --git a/public/locales/de/modules/docker.json b/public/locales/de/modules/docker.json index 92ad11263..fcd1c56a8 100644 --- a/public/locales/de/modules/docker.json +++ b/public/locales/de/modules/docker.json @@ -1,7 +1,7 @@ { "descriptor": { "name": "Docker", - "description": "Ermöglicht Ihnen die einfache Verwaltung Ihrer Torrents" + "description": "Ermöglicht dir die einfache Verwaltung deiner Docker-Container" }, "search": { "placeholder": "Suche nach Container- oder Image namen" @@ -47,10 +47,22 @@ "title": "Zu Homarr hinzufügen" } }, - "messages": { - "successfullyExecuted": { - "title": "Container {{containerName}} {{action}}ed", - "message": "Ihr Container wurde erfolgreich {{action}}." + "actions": { + "start": { + "start": "Startet", + "end": "Gestartet" + }, + "stop": { + "start": "Haltet an", + "end": "Gestoppt" + }, + "restart": { + "start": "Startet neu", + "end": "Neu gestartet" + }, + "remove": { + "start": "Wird entfernt", + "end": "Entfernt" } }, "errors": { diff --git a/public/locales/de/modules/usenet.json b/public/locales/de/modules/usenet.json index 043bc786b..79749c56c 100644 --- a/public/locales/de/modules/usenet.json +++ b/public/locales/de/modules/usenet.json @@ -13,7 +13,7 @@ }, "tabs": { "queue": "Warteschlange", - "history": "Geschichte" + "history": "Verlauf" }, "info": { "sizeLeft": "Größe links", @@ -26,7 +26,7 @@ "eta": "Voraussichtlicher Abschluss", "progress": "Fortschritt" }, - "empty": "Leere", + "empty": "Leer", "error": { "title": "Fehler", "message": "Es ist ein Fehler aufgetreten" @@ -39,10 +39,10 @@ "size": "Größe", "duration": "Dauer" }, - "empty": "Leere", + "empty": "Leer", "error": { "title": "Fehler", - "message": "Fehler beim Laden der Historie" + "message": "Fehler beim Laden des Verlaufs" }, "paused": "Pausiert" } diff --git a/public/locales/de/settings/general/search-engine.json b/public/locales/de/settings/general/search-engine.json index ead9dab99..4ace118a1 100644 --- a/public/locales/de/settings/general/search-engine.json +++ b/public/locales/de/settings/general/search-engine.json @@ -7,5 +7,8 @@ "customEngine": { "label": "Suchanfrage URL", "placeholder": "Benutzerdefinierte Abfrage-URL" + }, + "searchNewTab": { + "label": "Öffne Suchergebnisse in einem neuen Tab" } } \ No newline at end of file diff --git a/public/locales/en/layout/app-shelf.json b/public/locales/en/layout/app-shelf.json index 3297ffe7d..2074f4105 100644 --- a/public/locales/en/layout/app-shelf.json +++ b/public/locales/en/layout/app-shelf.json @@ -1,7 +1,9 @@ { "accordions": { "downloads": { - "text": "Your downloads" + "text": "Your downloads", + "torrents": "Your Torrent downloads", + "usenet": "Your Usenet downloads" }, "others": { "text": "Others" diff --git a/public/locales/en/modules/docker.json b/public/locales/en/modules/docker.json index f54db9bd9..432d48f82 100644 --- a/public/locales/en/modules/docker.json +++ b/public/locales/en/modules/docker.json @@ -1,7 +1,7 @@ { "descriptor": { "name": "Docker", - "description": "Allows you to easily manage your torrents" + "description": "Allows you to easily manage your docker containers" }, "search": { "placeholder": "Search by container or image name" @@ -47,10 +47,22 @@ "title": "Add to Homarr" } }, - "messages": { - "successfullyExecuted": { - "title": "Container {{containerName}} {{action}}ed", - "message": "Your container was successfully {{action}}ed" + "actions": { + "start": { + "start": "Starting", + "end": "Started" + }, + "stop": { + "start": "Stopping", + "end": "Stopped" + }, + "restart": { + "start": "Restarting", + "end": "Restarted" + }, + "remove": { + "start": "Removing", + "end": "Removed" } }, "errors": { diff --git a/public/locales/en/settings/general/search-engine.json b/public/locales/en/settings/general/search-engine.json index 42f708ffb..8d419fcf8 100644 --- a/public/locales/en/settings/general/search-engine.json +++ b/public/locales/en/settings/general/search-engine.json @@ -7,5 +7,8 @@ "customEngine": { "label": "Query URL", "placeholder": "Custom query URL" + }, + "searchNewTab": { + "label": "Open search results in new tab" } } \ No newline at end of file diff --git a/public/locales/es/layout/app-shelf.json b/public/locales/es/layout/app-shelf.json index 02bde38f9..d37d19579 100644 --- a/public/locales/es/layout/app-shelf.json +++ b/public/locales/es/layout/app-shelf.json @@ -1,7 +1,9 @@ { "accordions": { "downloads": { - "text": "Tus descargas" + "text": "Tus descargas", + "torrents": "Tus descargas Torrent", + "usenet": "Tus descargas Usenet" }, "others": { "text": "Otros" diff --git a/public/locales/es/modules/calendar.json b/public/locales/es/modules/calendar.json index 9cfc545a4..94bb9ff6d 100644 --- a/public/locales/es/modules/calendar.json +++ b/public/locales/es/modules/calendar.json @@ -4,7 +4,7 @@ "description": "Un módulo de calendario para mostrar próximos lanzamientos. Interactúa con las API de Sonarr y Radarr.", "settings": { "sundayStart": { - "label": "Iniciar la semana en Domingo" + "label": "Marcar Domingo como primer día de la semana" } } } diff --git a/public/locales/es/modules/dashdot.json b/public/locales/es/modules/dashdot.json index 9435e27f2..8345d26fd 100644 --- a/public/locales/es/modules/dashdot.json +++ b/public/locales/es/modules/dashdot.json @@ -23,7 +23,7 @@ "card": { "title": "Dash.", "errors": { - "noService": "Servicio Dash. no encontrado. Por favor, añade uno al tablero de Homarr o indica una URL de Dash. en las opciones del módulo", + "noService": "No se ha encontrado el servicio Dash. Por favor, añade uno al Panel de Control de Homarr o indica una URL de Dash. en las opciones del módulo", "noInformation": "No se puede obtener información de Dash. - ¿estás utilizando la última versión?" }, "graphs": { diff --git a/public/locales/es/modules/docker.json b/public/locales/es/modules/docker.json index 2f24068a4..f7fe95a0b 100644 --- a/public/locales/es/modules/docker.json +++ b/public/locales/es/modules/docker.json @@ -1,7 +1,7 @@ { "descriptor": { "name": "Docker", - "description": "Te permite gestionar facilmente tus torrents" + "description": "Le permite manejar sus contenedores Docker de manera sencilla" }, "search": { "placeholder": "Buscar por nombre de contenedor o nombre de imagen" @@ -47,10 +47,22 @@ "title": "Añadir a Homarr" } }, - "messages": { - "successfullyExecuted": { - "title": "Contenedor {{containerName}} {{action}} do", - "message": "Su contenedor ha sido {{action}} con éxito" + "actions": { + "start": { + "start": "Iniciando", + "end": "Iniciado" + }, + "stop": { + "start": "Deteniendo", + "end": "Detenido" + }, + "restart": { + "start": "Reiniciando", + "end": "Reiniciado" + }, + "remove": { + "start": "Eliminando", + "end": "Eliminado" } }, "errors": { diff --git a/public/locales/es/modules/weather.json b/public/locales/es/modules/weather.json index bbac71dbf..3532932ba 100644 --- a/public/locales/es/modules/weather.json +++ b/public/locales/es/modules/weather.json @@ -20,7 +20,7 @@ "freezingDrizzle": "Llovizna helada", "rain": "Lluvia", "freezingRain": "Lluvia helada", - "snowFall": "Caída de nieve", + "snowFall": "Nevada", "snowGrains": "Granos de nieve", "rainShowers": "Lluvia ligera", "snowShowers": "Nevada Ligera", diff --git a/public/locales/es/settings/customization/page-appearance.json b/public/locales/es/settings/customization/page-appearance.json index 1633bba4e..e53877fa5 100644 --- a/public/locales/es/settings/customization/page-appearance.json +++ b/public/locales/es/settings/customization/page-appearance.json @@ -20,6 +20,6 @@ "placeholder": "El CSS personalizado se ejecutará en último lugar" }, "buttons": { - "submit": "Enviar" + "submit": "Aplicar" } } diff --git a/public/locales/es/settings/general/search-engine.json b/public/locales/es/settings/general/search-engine.json index 704b0ea73..9ad683b4a 100644 --- a/public/locales/es/settings/general/search-engine.json +++ b/public/locales/es/settings/general/search-engine.json @@ -7,5 +7,8 @@ "customEngine": { "label": "URL de la Petición", "placeholder": "URL de petición personalizada" + }, + "searchNewTab": { + "label": "Abrir resultados de búsqueda en una nueva pestaña" } } \ No newline at end of file diff --git a/public/locales/fr/layout/app-shelf.json b/public/locales/fr/layout/app-shelf.json index 3590035b2..4808fccdd 100644 --- a/public/locales/fr/layout/app-shelf.json +++ b/public/locales/fr/layout/app-shelf.json @@ -1,7 +1,9 @@ { "accordions": { "downloads": { - "text": "Vos téléchargements" + "text": "Vos téléchargements", + "torrents": "", + "usenet": "" }, "others": { "text": "Autres" diff --git a/public/locales/fr/modules/docker.json b/public/locales/fr/modules/docker.json index 02486da37..b05afeac8 100644 --- a/public/locales/fr/modules/docker.json +++ b/public/locales/fr/modules/docker.json @@ -1,7 +1,7 @@ { "descriptor": { "name": "Docker", - "description": "Vous permet de gérer facilement vos torrents" + "description": "" }, "search": { "placeholder": "Recherche par nom de conteneur ou d'image" @@ -47,10 +47,22 @@ "title": "Ajouter à Homarr" } }, - "messages": { - "successfullyExecuted": { - "title": "Conteneur {{containerName}} {{action}}", - "message": "Votre conteneur a été envoyé avec succès à {{action}}" + "actions": { + "start": { + "start": "", + "end": "" + }, + "stop": { + "start": "", + "end": "Arrêté" + }, + "restart": { + "start": "", + "end": "" + }, + "remove": { + "start": "", + "end": "" } }, "errors": { diff --git a/public/locales/fr/settings/general/search-engine.json b/public/locales/fr/settings/general/search-engine.json index 98ba1b552..5e0dea5d0 100644 --- a/public/locales/fr/settings/general/search-engine.json +++ b/public/locales/fr/settings/general/search-engine.json @@ -7,5 +7,8 @@ "customEngine": { "label": "URL de la requête", "placeholder": "URL de requête personnalisée" + }, + "searchNewTab": { + "label": "" } } \ No newline at end of file diff --git a/public/locales/he/authentication/login.json b/public/locales/he/authentication/login.json new file mode 100644 index 000000000..586b0ab5d --- /dev/null +++ b/public/locales/he/authentication/login.json @@ -0,0 +1,27 @@ +{ + "title": "ברוך הבא!", + "text": "אנא הזן את הסיסמה", + "form": { + "fields": { + "password": { + "label": "סיסמה", + "placeholder": "הסיסמה שלך" + } + }, + "buttons": { + "submit": "כניסה למערכת" + } + }, + "notifications": { + "checking": { + "title": "סיסמה בבדיקה", + "message": "הסיסמה בבדיקה..." + }, + "correct": { + "title": "הסיסמה נכונה לניתוב מחדש..." + }, + "wrong": { + "title": "הסיסמה שגויה אנא נסה שוב." + } + } +} diff --git a/public/locales/he/common.json b/public/locales/he/common.json new file mode 100644 index 000000000..8bb412672 --- /dev/null +++ b/public/locales/he/common.json @@ -0,0 +1,11 @@ +{ + "actions": { + "save": "שמור" + }, + "tip": "טיפ:", + "time": { + "seconds": "שניות", + "minutes": "דקות", + "hours": "שעות" + } +} diff --git a/public/locales/he/layout/add-service-app-shelf.json b/public/locales/he/layout/add-service-app-shelf.json new file mode 100644 index 000000000..ee35905db --- /dev/null +++ b/public/locales/he/layout/add-service-app-shelf.json @@ -0,0 +1,118 @@ +{ + "actionIcon": { + "tooltip": "הוסף שירות" + }, + "modal": { + "title": "הוספת שירות", + "form": { + "validation": { + "invalidUrl": "אנא הזן כתובת אינטרנט חוקית", + "noStatusCodeSelected": "אנא בחר קוד מצב" + } + }, + "tabs": { + "options": { + "title": "אפשרויות", + "form": { + "serviceName": { + "label": "שם שירות", + "placeholder": "Plex" + }, + "iconUrl": { + "label": "כתובת אתר של הצלמית" + }, + "serviceUrl": { + "label": "כתובת אתר של השירות" + }, + "onClickUrl": { + "label": "בלחיצה על כתובת האתר" + }, + "serviceType": { + "label": "סוג שירות", + "defaultValue": "אחר", + "placeholder": "בחר אחד" + }, + "category": { + "label": "קטגוריה", + "placeholder": "בחר קטגוריה קיימת או צור חדשה", + "nothingFound": "לא נמצא דבר", + "createLabel": "יצירת שאילתה" + }, + "integrations": { + "apiKey": { + "label": "מפתח API", + "placeholder": "מפתח ה- API שלך", + "validation": { + "noKey": "מפתח לא חוקי" + }, + "tip": { + "text": "קבל את מפתח ה- API שלך", + "link": "כאן" + } + }, + "qBittorrent": { + "username": { + "label": "שם משתמש", + "placeholder": "מנהל מערכת", + "validation": { + "invalidUsername": "שם משתמש לא חוקי" + } + }, + "password": { + "label": "סיסמה", + "placeholder": "מנהל מערכת", + "validation": { + "invalidPassword": "סיסמה שגויה" + } + } + }, + "deluge": { + "password": { + "label": "סיסמה", + "placeholder": "סיסמה", + "validation": { + "invalidPassword": "סיסמה שגויה" + } + } + }, + "transmission": { + "username": { + "label": "שם משתמש", + "placeholder": "מנהל מערכת", + "validation": { + "invalidUsername": "שם משתמש לא חוקי" + } + }, + "password": { + "label": "סיסמה", + "placeholder": "מנהל מערכת", + "validation": { + "invalidPassword": "סיסמה שגויה" + } + } + } + } + } + }, + "advancedOptions": { + "title": "אפשרויות מתקדמות", + "form": { + "httpStatusCodes": { + "label": "סטטוס קוד HTTP", + "placeholder": "בחר קודי מצב חוקיים", + "clearButtonLabel": "נקה בחירה", + "nothingFound": "לא נמצא דבר" + }, + "openServiceInNewTab": { + "label": "פתיחת שירות בכרטיסיה חדשה" + }, + "buttons": { + "submit": { + "content": "הוספת שירות" + } + } + } + } + } + } +} \ No newline at end of file diff --git a/public/locales/he/layout/app-shelf-menu.json b/public/locales/he/layout/app-shelf-menu.json new file mode 100644 index 000000000..af5733cc0 --- /dev/null +++ b/public/locales/he/layout/app-shelf-menu.json @@ -0,0 +1,18 @@ +{ + "modal": { + "title": "שינוי שירות", + "buttons": { + "save": "שמור שירות" + } + }, + "menu": { + "labels": { + "settings": "הגדרות", + "dangerZone": "אזור מסוכן" + }, + "actions": { + "edit": "עריכה", + "delete": "מחיקה" + } + } +} \ No newline at end of file diff --git a/public/locales/he/layout/app-shelf.json b/public/locales/he/layout/app-shelf.json new file mode 100644 index 000000000..35c91b485 --- /dev/null +++ b/public/locales/he/layout/app-shelf.json @@ -0,0 +1,12 @@ +{ + "accordions": { + "downloads": { + "text": "הורדות", + "torrents": "הורדות הטורנטים", + "usenet": "שימוש בהורדות רשת" + }, + "others": { + "text": "אחרים" + } + } +} \ No newline at end of file diff --git a/public/locales/he/modules/calendar.json b/public/locales/he/modules/calendar.json new file mode 100644 index 000000000..f5bec3620 --- /dev/null +++ b/public/locales/he/modules/calendar.json @@ -0,0 +1,11 @@ +{ + "descriptor": { + "name": "לוח שנה", + "description": "מודול לוח שנה להצגת עדכונים. מקושר ל- Sonarr ו- Radarr API.", + "settings": { + "sundayStart": { + "label": "להתחיל את השבוע ביום ראשון" + } + } + } +} \ No newline at end of file diff --git a/public/locales/he/modules/common-media-cards.json b/public/locales/he/modules/common-media-cards.json new file mode 100644 index 000000000..c9a82457b --- /dev/null +++ b/public/locales/he/modules/common-media-cards.json @@ -0,0 +1,6 @@ +{ + "buttons": { + "play": "הפעלה", + "request": "בקשה" + } +} \ No newline at end of file diff --git a/public/locales/he/modules/common.json b/public/locales/he/modules/common.json new file mode 100644 index 000000000..0247e829e --- /dev/null +++ b/public/locales/he/modules/common.json @@ -0,0 +1,5 @@ +{ + "settings": { + "label": "הגדרות" + } +} \ No newline at end of file diff --git a/public/locales/he/modules/dashdot.json b/public/locales/he/modules/dashdot.json new file mode 100644 index 000000000..407f6e782 --- /dev/null +++ b/public/locales/he/modules/dashdot.json @@ -0,0 +1,53 @@ +{ + "descriptor": { + "name": "Dash.", + "description": "מודול להצגת הגרפים משירות Dash.", + "settings": { + "cpuMultiView": { + "label": "תצוגת מעבד מרובת ליבות" + }, + "storageMultiView": { + "label": "תצוגת אחסון מרובת כוננים" + }, + "useCompactView": { + "label": "השתמש בתצוגה קומפקטית" + }, + "graphs": { + "label": "גרפים" + }, + "url": { + "label": "כתובת אתר Dash." + } + } + }, + "card": { + "title": "Dash.", + "errors": { + "noService": "לא נמצא שירות Dash. בבקשה הוסף ל- Homarr או הגדר כתובת באפשרויות המודול ", + "noInformation": "אין מידע מ- Dash. האם אתה משתמש בגירסה העדכנית" + }, + "graphs": { + "storage": { + "title": "אחסון", + "label": "אחסון:" + }, + "network": { + "title": "רשת", + "label": "רשת:", + "metrics": { + "download": "הורדה", + "upload": "העלאה" + } + }, + "cpu": { + "title": "מעבד" + }, + "memory": { + "title": "זיכרון פנימי" + }, + "gpu": { + "title": "מעבד גרפי" + } + } + } +} \ No newline at end of file diff --git a/public/locales/he/modules/date.json b/public/locales/he/modules/date.json new file mode 100644 index 000000000..0e804c8e5 --- /dev/null +++ b/public/locales/he/modules/date.json @@ -0,0 +1,11 @@ +{ + "descriptor": { + "name": "תאריך", + "description": "הצגת השעה והתאריך הנוכחיים", + "settings": { + "display24HourFormat": { + "label": "הצגת זמן בפורמט 24 שעות" + } + } + } +} \ No newline at end of file diff --git a/public/locales/he/modules/dlspeed.json b/public/locales/he/modules/dlspeed.json new file mode 100644 index 000000000..313e3d3bb --- /dev/null +++ b/public/locales/he/modules/dlspeed.json @@ -0,0 +1,35 @@ +{ + "descriptor": { + "name": "מהירות הורדה", + "description": "מציג את מהירות ההורדה הנוכחית של שירות נתמך" + }, + "card": { + "table": { + "header": { + "name": "שם", + "size": "גודל", + "download": "הורדה", + "upload": "העלאה", + "estimatedTimeOfArrival": "זמן סיום משוער", + "progress": "התקדמות" + }, + "body": { + "nothingFound": "לא נמצא טורנט" + } + }, + "lineChart": { + "title": "מהירות הורדה נוכחית", + "download": "הורדה ממתינה", + "upload": "העלאה ממתינה", + "timeSpan": "לפני שניות", + "totalDownload": "הורדה ממתינה", + "totalUpload": "העלאה ממתינה" + }, + "errors": { + "noDownloadClients": { + "title": "לא נמצאו לקוחות הורדה נתמכים!", + "text": "הוסף שירות הורדה כדי להציג את ההורדות הנוכחיות שלך" + } + } + } +} \ No newline at end of file diff --git a/public/locales/he/modules/docker.json b/public/locales/he/modules/docker.json new file mode 100644 index 000000000..b8a205052 --- /dev/null +++ b/public/locales/he/modules/docker.json @@ -0,0 +1,83 @@ +{ + "descriptor": { + "name": "דוקר", + "description": "מאפשר ניהול בקלות את הקונטיינרים בדוקר" + }, + "search": { + "placeholder": "חיפוש לפי קונטיינר או שם קובץ תמונה" + }, + "table": { + "header": { + "name": "שם", + "image": "תמונה", + "ports": "יציאות", + "state": "מצב" + }, + "body": { + "portCollapse": "יציאות" + }, + "states": { + "running": "פועל", + "created": "נוצר", + "stopped": "עצר", + "unknown": "לא ידוע" + } + }, + "actionBar": { + "addService": { + "title": "הוספת שירות", + "message": "הוסף שירות ל- Homarr" + }, + "restart": { + "title": "אתחל" + }, + "stop": { + "title": "עצר" + }, + "start": { + "title": "התחל" + }, + "refreshData": { + "title": "רענן נתונים" + }, + "remove": { + "title": "הסר" + }, + "addToHomarr": { + "title": "הוסף ל- Homarr" + } + }, + "actions": { + "start": { + "start": "מתחיל", + "end": "החל" + }, + "stop": { + "start": "עוצר", + "end": "עצר" + }, + "restart": { + "start": "מפעיל מחדש", + "end": "אתחל" + }, + "remove": { + "start": "מסיר", + "end": "הוסר" + } + }, + "errors": { + "integrationFailed": { + "title": "שילוב docker נכשל", + "message": "האם שכחת לטעון את ה- Docker?" + }, + "unknownError": { + "title": "אירעה שגיאה" + }, + "oneServiceAtATime": { + "title": "אנא הוסף שירות אחד בלבד בכל פעם!" + } + }, + "actionIcon": { + "tooltip": "Docker" + } +} \ No newline at end of file diff --git a/public/locales/he/modules/overseerr.json b/public/locales/he/modules/overseerr.json new file mode 100644 index 000000000..9b273f167 --- /dev/null +++ b/public/locales/he/modules/overseerr.json @@ -0,0 +1,30 @@ +{ + "descriptor": { + "name": "Overseerr", + "description": "מאפשר חיפוש והוספת מידה מ- Overseerr/Jellyseerr" + }, + "popup": { + "item": { + "buttons": { + "askFor": "בקש מ", + "cancel": "בטל", + "request": "בקשה" + }, + "alerts": { + "automaticApproval": { + "title": "שימוש במפתח API", + "text": "הבקשה תאושר באופן אוטומטי" + } + } + }, + "seasonSelector": { + "caption": "סמן את העונות שברצונך להוריד", + "table": { + "header": { + "season": "עונה", + "numberOfEpisodes": "מספר פרקים" + } + } + } + } +} \ No newline at end of file diff --git a/public/locales/he/modules/ping.json b/public/locales/he/modules/ping.json new file mode 100644 index 000000000..d668d84f6 --- /dev/null +++ b/public/locales/he/modules/ping.json @@ -0,0 +1,11 @@ +{ + "descriptor": { + "name": "זמן תגובה", + "description": "מאפשר בדיקה אם השירות פעיל או מחזיר קוד ספציפי של HTTP" + }, + "states": { + "online": "מקון", + "offline": "לא מקון", + "loading": "טוען..." + } +} \ No newline at end of file diff --git a/public/locales/he/modules/search.json b/public/locales/he/modules/search.json new file mode 100644 index 000000000..8085d915a --- /dev/null +++ b/public/locales/he/modules/search.json @@ -0,0 +1,9 @@ +{ + "descriptor": { + "name": "סרגל חיפוש", + "description": "סרגל לחיפוש ברשת, יוטיוב, טורנטים או Overseerr" + }, + "input": { + "placeholder": "חפש באינטרנט..." + } +} \ No newline at end of file diff --git a/public/locales/he/modules/torrents-status.json b/public/locales/he/modules/torrents-status.json new file mode 100644 index 000000000..e375d89e1 --- /dev/null +++ b/public/locales/he/modules/torrents-status.json @@ -0,0 +1,40 @@ +{ + "descriptor": { + "name": "טורנט", + "description": "מציג את מהירות ההורדה הנוכחית של שירות נתמך", + "settings": { + "hideComplete": { + "label": "הסתר טורנטים שהושלמו" + } + } + }, + "card": { + "table": { + "header": { + "name": "שם", + "size": "גודל", + "download": "הורדה", + "upload": "העלאה", + "estimatedTimeOfArrival": "זמן סיום משוער", + "progress": "התקדמות" + }, + "body": { + "nothingFound": "לא נמצא טורנט" + } + }, + "lineChart": { + "title": "מהירות הורדה נוכחית", + "download": "הורדה ממתינה", + "upload": "העלאה ממתינה", + "timeSpan": "לפני שניות", + "totalDownload": "הורדה ממתינה", + "totalUpload": "העלאה ממתינה" + }, + "errors": { + "noDownloadClients": { + "title": "לא נמצאו לקוחות הורדה נתמכים!", + "text": "הוסף שירות הורדה כדי להציג את ההורדות הנוכחיות שלך" + } + } + } +} \ No newline at end of file diff --git a/public/locales/he/modules/usenet.json b/public/locales/he/modules/usenet.json new file mode 100644 index 000000000..e5b26b24f --- /dev/null +++ b/public/locales/he/modules/usenet.json @@ -0,0 +1,49 @@ +{ + "descriptor": { + "name": "Sabnzbd", + "description": "מאפשר צפייה בהיסטוריה ותור ההורדות, עצירה וחידוש הורדות" + }, + "card": { + "errors": { + "noDownloadClients": { + "title": "לא נמצאו לקוחות הורדה נתמכים!", + "text": "הוסף שירות הורדה כדי להציג את ההורדות הנוכחיות שלך" + } + } + }, + "tabs": { + "queue": "תור", + "history": "היסטוריה" + }, + "info": { + "sizeLeft": "נותר", + "paused": "מושהה" + }, + "queue": { + "header": { + "name": "שם", + "size": "גודל", + "eta": "זמן סיום משוער", + "progress": "התקדמות" + }, + "empty": "ריק", + "error": { + "title": "שגיאה", + "message": "אירעה שגיאה" + }, + "paused": "מושהה" + }, + "history": { + "header": { + "name": "שם", + "size": "גודל", + "duration": "משך זמן" + }, + "empty": "ריק", + "error": { + "title": "שגיאה", + "message": "שגיאה בטעינת היסטוריה" + }, + "paused": "מושהה" + } +} diff --git a/public/locales/he/modules/weather.json b/public/locales/he/modules/weather.json new file mode 100644 index 000000000..81e34a55f --- /dev/null +++ b/public/locales/he/modules/weather.json @@ -0,0 +1,32 @@ +{ + "descriptor": { + "name": "מזג אוויר", + "description": "חפש את מזג האוויר הנוכחי במיקום שלך", + "settings": { + "displayInFahrenheit": { + "label": "להציג בפרנהייט" + }, + "location": { + "label": "מיקום מזג האוויר" + } + } + }, + "card": { + "weatherDescriptions": { + "clear": "בהיר", + "mainlyClear": "בהיר בעיקר", + "fog": "ערפל", + "drizzle": "טפטוף", + "freezingDrizzle": "טפטוף מקפיא", + "rain": "גשום", + "freezingRain": "גשם מקפיא", + "snowFall": "שלג יורד", + "snowGrains": "פתיתי שלג", + "rainShowers": "ממטרי גשם", + "snowShowers": "ממטרי שלג", + "thunderstorm": "סופת רעמים", + "thunderstormWithHail": "סופת רעמים עם ברד", + "unknown": "לא ידוע" + } + } +} \ No newline at end of file diff --git a/public/locales/he/settings/common.json b/public/locales/he/settings/common.json new file mode 100644 index 000000000..c983228bf --- /dev/null +++ b/public/locales/he/settings/common.json @@ -0,0 +1,14 @@ +{ + "title": "הגדרות", + "tooltip": "הגדרות", + "tabs": { + "common": "כללי", + "customizations": "התאמה אישית" + }, + "tips": { + "configTip": "העלה את קובץ ההגדרות שלך על-ידי גרירה ושחרור שלו לדף!" + }, + "credits": { + "madeWithLove": "נעשה ב- ❤️ ע״י @" + } +} \ No newline at end of file diff --git a/public/locales/he/settings/customization/app-width.json b/public/locales/he/settings/customization/app-width.json new file mode 100644 index 000000000..2942bfd2b --- /dev/null +++ b/public/locales/he/settings/customization/app-width.json @@ -0,0 +1,3 @@ +{ + "label": "רוחב אריח" +} \ No newline at end of file diff --git a/public/locales/he/settings/customization/color-selector.json b/public/locales/he/settings/customization/color-selector.json new file mode 100644 index 000000000..5e856a2c8 --- /dev/null +++ b/public/locales/he/settings/customization/color-selector.json @@ -0,0 +1,3 @@ +{ + "suffix": "צבע" +} \ No newline at end of file diff --git a/public/locales/he/settings/customization/opacity-selector.json b/public/locales/he/settings/customization/opacity-selector.json new file mode 100644 index 000000000..0331a38f5 --- /dev/null +++ b/public/locales/he/settings/customization/opacity-selector.json @@ -0,0 +1,3 @@ +{ + "label": "אטימות אריח" +} \ No newline at end of file diff --git a/public/locales/he/settings/customization/page-appearance.json b/public/locales/he/settings/customization/page-appearance.json new file mode 100644 index 000000000..f8ef9cb30 --- /dev/null +++ b/public/locales/he/settings/customization/page-appearance.json @@ -0,0 +1,25 @@ +{ + "pageTitle": { + "label": "כותרת העמוד", + "placeholder": "Homarr 🦞" + }, + "logo": { + "label": "סמל", + "placeholder": "/img/logo.png" + }, + "favicon": { + "label": "אייקון לצד שם העמוד", + "placeholder": "/favicon.png" + }, + "background": { + "label": "רקע", + "placeholder": "/img/background.png" + }, + "customCSS": { + "label": "CSS מותאם אישית", + "placeholder": "css מותאם אישית יבוצע אחרון" + }, + "buttons": { + "submit": "שמירה" + } +} diff --git a/public/locales/he/settings/customization/shade-selector.json b/public/locales/he/settings/customization/shade-selector.json new file mode 100644 index 000000000..0660a7e71 --- /dev/null +++ b/public/locales/he/settings/customization/shade-selector.json @@ -0,0 +1,3 @@ +{ + "label": "הצללה" +} \ No newline at end of file diff --git a/public/locales/he/settings/general/color-schema.json b/public/locales/he/settings/general/color-schema.json new file mode 100644 index 000000000..0c6c5d0d1 --- /dev/null +++ b/public/locales/he/settings/general/color-schema.json @@ -0,0 +1,3 @@ +{ + "label": "מעבר למצב סכמה" +} \ No newline at end of file diff --git a/public/locales/he/settings/general/config-changer.json b/public/locales/he/settings/general/config-changer.json new file mode 100644 index 000000000..eb3e91f88 --- /dev/null +++ b/public/locales/he/settings/general/config-changer.json @@ -0,0 +1,55 @@ +{ + "configSelect": { + "label": "טעינת קובץ הגדרות" + }, + "modal": { + "title": "בחירת שם קובץ הגדרות חדש", + "form": { + "configName": { + "label": "שם קובץ הגדרות", + "placeholder": "שם קובץ הגדרות חדש" + }, + "submitButton": "אישור" + }, + "events": { + "configSaved": { + "title": "קובץ הגדרות נשמר", + "message": "קובץ הגדרות נשמר בשם {{configName}}" + } + } + }, + "buttons": { + "download": "הורדת קובץ הגדרות", + "delete": { + "text": "מחיקת קובץ הגדרות", + "notifications": { + "deleted": { + "title": "קובץ הגדרות נמחק", + "message": "קובץ הגדרות נמחק" + }, + "deleteFailed": { + "title": "נכשל במחיקת קובץ הגדרות", + "message": "נכשל במחיקת קובץ הגדרות" + } + } + }, + "saveCopy": "שמור עותק" + }, + "dropzone": { + "notifications": { + "invalidConfig": { + "title": "טעינת קובץ הגדרות נכשלה", + "message": "אין אפשרות לטעון קובץ הגדרות, קובץ JSON שגוי" + }, + "loadedSuccessfully": { + "title": "קובץ הגדרות {{configName}} נטען בהצלחה" + } + }, + "accept": { + "text": "גרור קובץ לכאן כדי להעלות את קובץ ההגדרות, תמיכה ב- JSON בלבד" + }, + "reject": { + "text": "תבנית קובץ זו אינה נתמכת, ניתן להעלות קובץ JSON בלבד" + } + } +} \ No newline at end of file diff --git a/public/locales/he/settings/general/internationalization.json b/public/locales/he/settings/general/internationalization.json new file mode 100644 index 000000000..9c3aab59d --- /dev/null +++ b/public/locales/he/settings/general/internationalization.json @@ -0,0 +1,3 @@ +{ + "label": "שפה" +} \ No newline at end of file diff --git a/public/locales/he/settings/general/module-enabler.json b/public/locales/he/settings/general/module-enabler.json new file mode 100644 index 000000000..cbfa34dbd --- /dev/null +++ b/public/locales/he/settings/general/module-enabler.json @@ -0,0 +1,3 @@ +{ + "title": "מודול מופעל" +} \ No newline at end of file diff --git a/public/locales/he/settings/general/search-engine.json b/public/locales/he/settings/general/search-engine.json new file mode 100644 index 000000000..b21e58b98 --- /dev/null +++ b/public/locales/he/settings/general/search-engine.json @@ -0,0 +1,14 @@ +{ + "title": "מנוע חיפוש", + "tips": { + "generalTip": "השתמש בקידומות yt ו- t לפני השאילתה שלך כדי לחפש ב- Youtube או עבור סיקור", + "placeholderTip": "s% יכול לשמש כמציין מיקום עבור השאילתה." + }, + "customEngine": { + "label": "כתובת URL של שאילתה", + "placeholder": "כתובת URL של שאילתה מותאמת אישית" + }, + "searchNewTab": { + "label": "פתיחת תוצאות חיפוש בכרטיסיה חדשה" + } +} \ No newline at end of file diff --git a/public/locales/he/settings/general/theme-selector.json b/public/locales/he/settings/general/theme-selector.json new file mode 100644 index 000000000..f22eabf08 --- /dev/null +++ b/public/locales/he/settings/general/theme-selector.json @@ -0,0 +1,3 @@ +{ + "label": "החלפת ערכת נושא" +} \ No newline at end of file diff --git a/public/locales/he/settings/general/widget-positions.json b/public/locales/he/settings/general/widget-positions.json new file mode 100644 index 000000000..77e470db1 --- /dev/null +++ b/public/locales/he/settings/general/widget-positions.json @@ -0,0 +1,3 @@ +{ + "label": "מקם ווידג'טים משמאל" +} \ No newline at end of file diff --git a/public/locales/it/authentication/login.json b/public/locales/it/authentication/login.json index 302fe120d..044b873cb 100644 --- a/public/locales/it/authentication/login.json +++ b/public/locales/it/authentication/login.json @@ -1,27 +1,27 @@ { - "title": "", - "text": "", + "title": "Bentornato!", + "text": "Inserisci la password", "form": { "fields": { "password": { "label": "Password", - "placeholder": "" + "placeholder": "La tua password" } }, "buttons": { - "submit": "" + "submit": "Accedi" } }, "notifications": { "checking": { - "title": "", - "message": "" + "title": "Verifica della password", + "message": "La tua password è in fase di controllo..." }, "correct": { - "title": "" + "title": "Password corretta, reindirizzamento..." }, "wrong": { - "title": "" + "title": "Password errata. Per favore, prova di nuovo." } } } diff --git a/public/locales/it/layout/app-shelf.json b/public/locales/it/layout/app-shelf.json index 5253dd5b6..b3966b16e 100644 --- a/public/locales/it/layout/app-shelf.json +++ b/public/locales/it/layout/app-shelf.json @@ -1,7 +1,9 @@ { "accordions": { "downloads": { - "text": "I tuoi download" + "text": "I tuoi download", + "torrents": "", + "usenet": "" }, "others": { "text": "Altri" diff --git a/public/locales/it/modules/docker.json b/public/locales/it/modules/docker.json index 4b4dbf01f..23269fae9 100644 --- a/public/locales/it/modules/docker.json +++ b/public/locales/it/modules/docker.json @@ -1,7 +1,7 @@ { "descriptor": { "name": "Docker", - "description": "Consente di gestire facilmente i propri torrent" + "description": "" }, "search": { "placeholder": "Ricerca per contenitore o nome dell'immagine" @@ -47,10 +47,22 @@ "title": "Aggiungi a Homarr" } }, - "messages": { - "successfullyExecuted": { - "title": "Contenitore {{containerName}} {{action}}ed", - "message": "Il vostro contenitore è stato {{action}}" + "actions": { + "start": { + "start": "Avvio", + "end": "Avviato" + }, + "stop": { + "start": "Arresto", + "end": "Arrestato" + }, + "restart": { + "start": "Riavvio", + "end": "Riavviato" + }, + "remove": { + "start": "Rimozione", + "end": "Rimosso" } }, "errors": { diff --git a/public/locales/it/settings/general/search-engine.json b/public/locales/it/settings/general/search-engine.json index c29f55829..73a07b7ec 100644 --- a/public/locales/it/settings/general/search-engine.json +++ b/public/locales/it/settings/general/search-engine.json @@ -7,5 +7,8 @@ "customEngine": { "label": "URL di ricerca", "placeholder": "URL di ricerca personalizzato" + }, + "searchNewTab": { + "label": "" } } \ No newline at end of file diff --git a/public/locales/ja/layout/app-shelf.json b/public/locales/ja/layout/app-shelf.json index a53727983..0889e3abc 100644 --- a/public/locales/ja/layout/app-shelf.json +++ b/public/locales/ja/layout/app-shelf.json @@ -1,7 +1,9 @@ { "accordions": { "downloads": { - "text": "ダウンロード数" + "text": "ダウンロード数", + "torrents": "", + "usenet": "" }, "others": { "text": "その他" diff --git a/public/locales/ja/modules/docker.json b/public/locales/ja/modules/docker.json index f9f9f69a1..63ad3e54b 100644 --- a/public/locales/ja/modules/docker.json +++ b/public/locales/ja/modules/docker.json @@ -1,7 +1,7 @@ { "descriptor": { "name": "ドッカー", - "description": "トレントを簡単に管理することができます。" + "description": "" }, "search": { "placeholder": "コンテナ名、画像名で検索" @@ -47,10 +47,22 @@ "title": "ホーマーに追加" } }, - "messages": { - "successfullyExecuted": { - "title": "コンテナ {{containerName}} {{action}}ed", - "message": "あなたのコンテナは正常に {{action}}ed。" + "actions": { + "start": { + "start": "", + "end": "" + }, + "stop": { + "start": "", + "end": "停止中" + }, + "restart": { + "start": "", + "end": "" + }, + "remove": { + "start": "", + "end": "" } }, "errors": { diff --git a/public/locales/ja/settings/general/search-engine.json b/public/locales/ja/settings/general/search-engine.json index a1a6fa841..8ea9536c4 100644 --- a/public/locales/ja/settings/general/search-engine.json +++ b/public/locales/ja/settings/general/search-engine.json @@ -7,5 +7,8 @@ "customEngine": { "label": "クエリURL", "placeholder": "カスタムクエリURL" + }, + "searchNewTab": { + "label": "" } } \ No newline at end of file diff --git a/public/locales/ko/layout/add-service-app-shelf.json b/public/locales/ko/layout/add-service-app-shelf.json index 358162d29..8f86d8c3a 100644 --- a/public/locales/ko/layout/add-service-app-shelf.json +++ b/public/locales/ko/layout/add-service-app-shelf.json @@ -95,7 +95,7 @@ } }, "advancedOptions": { - "title": "고급 옵션", + "title": "고급 설정", "form": { "httpStatusCodes": { "label": "HTTP 상태 코드", diff --git a/public/locales/ko/layout/app-shelf.json b/public/locales/ko/layout/app-shelf.json index 4525cbba0..a2c6249c0 100644 --- a/public/locales/ko/layout/app-shelf.json +++ b/public/locales/ko/layout/app-shelf.json @@ -1,7 +1,9 @@ { "accordions": { "downloads": { - "text": "다운로드 수" + "text": "다운로드 수", + "torrents": "", + "usenet": "" }, "others": { "text": "기타" diff --git a/public/locales/ko/modules/common-media-cards.json b/public/locales/ko/modules/common-media-cards.json index 40bd52ba0..b9c53d569 100644 --- a/public/locales/ko/modules/common-media-cards.json +++ b/public/locales/ko/modules/common-media-cards.json @@ -1,6 +1,6 @@ { "buttons": { - "play": "플레이", + "play": "재생", "request": "요청" } } \ No newline at end of file diff --git a/public/locales/ko/modules/dashdot.json b/public/locales/ko/modules/dashdot.json index c6387fcc6..deed26758 100644 --- a/public/locales/ko/modules/dashdot.json +++ b/public/locales/ko/modules/dashdot.json @@ -7,16 +7,16 @@ "label": "CPU 멀티 코어 보기" }, "storageMultiView": { - "label": "저장소 멀티 드라이브 보기" + "label": "저장소 모든 드라이브 보기" }, "useCompactView": { - "label": "컴팩트 뷰 사용" + "label": "작은 모듈 사용" }, "graphs": { "label": "그래프" }, "url": { - "label": "Dash. URL" + "label": "Dash. 주소" } } }, @@ -35,8 +35,8 @@ "title": "네트워크", "label": "네트워크:", "metrics": { - "download": "다운", - "upload": "업" + "download": "다운로드", + "upload": "업로드" } }, "cpu": { diff --git a/public/locales/ko/modules/docker.json b/public/locales/ko/modules/docker.json index 28c3fbd1e..855eb6667 100644 --- a/public/locales/ko/modules/docker.json +++ b/public/locales/ko/modules/docker.json @@ -1,7 +1,7 @@ { "descriptor": { "name": "Docker", - "description": "토렌트를 쉽게 관리할 수 있습니다" + "description": "" }, "search": { "placeholder": "컨테이너 또는 이미지 이름으로 검색" @@ -47,10 +47,22 @@ "title": "Homarr에 추가" } }, - "messages": { - "successfullyExecuted": { - "title": "컨테이너 {{containerName}} {{action}}됨", - "message": "컨테이너가 성공적으로 {{action}}됨" + "actions": { + "start": { + "start": "", + "end": "" + }, + "stop": { + "start": "", + "end": "중지됨" + }, + "restart": { + "start": "", + "end": "" + }, + "remove": { + "start": "", + "end": "" } }, "errors": { diff --git a/public/locales/ko/settings/general/search-engine.json b/public/locales/ko/settings/general/search-engine.json index 836a17db9..38cc44498 100644 --- a/public/locales/ko/settings/general/search-engine.json +++ b/public/locales/ko/settings/general/search-engine.json @@ -7,5 +7,8 @@ "customEngine": { "label": "쿼리 URL", "placeholder": "커스텀 쿼리 URL" + }, + "searchNewTab": { + "label": "" } } \ No newline at end of file diff --git a/public/locales/lol/layout/app-shelf.json b/public/locales/lol/layout/app-shelf.json index 6dac8352a..ed9a32cb3 100644 --- a/public/locales/lol/layout/app-shelf.json +++ b/public/locales/lol/layout/app-shelf.json @@ -1,7 +1,9 @@ { "accordions": { "downloads": { - "text": "Ur downloadz" + "text": "Ur downloadz", + "torrents": "", + "usenet": "" }, "others": { "text": "Othas" diff --git a/public/locales/lol/modules/docker.json b/public/locales/lol/modules/docker.json index 08914c251..c5e635e77 100644 --- a/public/locales/lol/modules/docker.json +++ b/public/locales/lol/modules/docker.json @@ -1,7 +1,7 @@ { "descriptor": { "name": "Dockah", - "description": "Allowz u 2 easily manaeg ur torrents" + "description": "" }, "search": { "placeholder": "Search by contaneah or imaeg naym" @@ -47,10 +47,22 @@ "title": "Add 2 Homarr" } }, - "messages": { - "successfullyExecuted": { - "title": "Contaneah {{containerName}} {{action}}ed", - "message": "Ur contaneah wuz successfully {{action}}ed" + "actions": { + "start": { + "start": "", + "end": "" + }, + "stop": { + "start": "", + "end": "Stopped" + }, + "restart": { + "start": "", + "end": "" + }, + "remove": { + "start": "", + "end": "" } }, "errors": { diff --git a/public/locales/lol/settings/general/search-engine.json b/public/locales/lol/settings/general/search-engine.json index 271d51377..d011753b1 100644 --- a/public/locales/lol/settings/general/search-engine.json +++ b/public/locales/lol/settings/general/search-engine.json @@ -7,5 +7,8 @@ "customEngine": { "label": "Quewee URL", "placeholder": "Custom quewee URL" + }, + "searchNewTab": { + "label": "" } } \ No newline at end of file diff --git a/public/locales/nl/layout/app-shelf.json b/public/locales/nl/layout/app-shelf.json index 5c175068f..d5dc1962e 100644 --- a/public/locales/nl/layout/app-shelf.json +++ b/public/locales/nl/layout/app-shelf.json @@ -1,7 +1,9 @@ { "accordions": { "downloads": { - "text": "Uw downloads" + "text": "Uw downloads", + "torrents": "", + "usenet": "" }, "others": { "text": "Overige" diff --git a/public/locales/nl/modules/docker.json b/public/locales/nl/modules/docker.json index 7ef7371aa..ee2a048ee 100644 --- a/public/locales/nl/modules/docker.json +++ b/public/locales/nl/modules/docker.json @@ -1,7 +1,7 @@ { "descriptor": { "name": "Docker", - "description": "Maakt het mogelijk om gemakkelijk je torrents te beheren" + "description": "" }, "search": { "placeholder": "Zoek op container of afbeeldingsnaam" @@ -47,10 +47,22 @@ "title": "Toevoegen aan Homarr" } }, - "messages": { - "successfullyExecuted": { - "title": "Container {{containerName}} {{action}}ed", - "message": "Uw container was succesvol {{action}}ed" + "actions": { + "start": { + "start": "", + "end": "" + }, + "stop": { + "start": "", + "end": "Gestopt" + }, + "restart": { + "start": "", + "end": "" + }, + "remove": { + "start": "", + "end": "" } }, "errors": { diff --git a/public/locales/nl/settings/general/search-engine.json b/public/locales/nl/settings/general/search-engine.json index bb98fb9f3..7ef1b89da 100644 --- a/public/locales/nl/settings/general/search-engine.json +++ b/public/locales/nl/settings/general/search-engine.json @@ -7,5 +7,8 @@ "customEngine": { "label": "Query URL", "placeholder": "Eigen query URL" + }, + "searchNewTab": { + "label": "" } } \ No newline at end of file diff --git a/public/locales/pl/authentication/login.json b/public/locales/pl/authentication/login.json index 02bc93ee4..17eb7f0a6 100644 --- a/public/locales/pl/authentication/login.json +++ b/public/locales/pl/authentication/login.json @@ -1,27 +1,27 @@ { - "title": "", - "text": "", + "title": "Witaj ponownie!", + "text": "Wprowadź hasło", "form": { "fields": { "password": { "label": "Hasło", - "placeholder": "" + "placeholder": "Twoje hasło" } }, "buttons": { - "submit": "" + "submit": "Zaloguj się" } }, "notifications": { "checking": { - "title": "", - "message": "" + "title": "Sprawdzanie hasła", + "message": "Twoje hasło jest sprawdzane..." }, "correct": { - "title": "" + "title": "Hasło poprawne, przekierowywanie..." }, "wrong": { - "title": "" + "title": "To hasło jest nieprawidłowe. Spróbuj ponownie." } } } diff --git a/public/locales/pl/common.json b/public/locales/pl/common.json index a79e5937d..96b2656e5 100644 --- a/public/locales/pl/common.json +++ b/public/locales/pl/common.json @@ -4,8 +4,8 @@ }, "tip": "Wskazówka: ", "time": { - "seconds": "", - "minutes": "", - "hours": "" + "seconds": "sekund", + "minutes": "minut", + "hours": "godziny" } } diff --git a/public/locales/pl/layout/app-shelf.json b/public/locales/pl/layout/app-shelf.json index ae1631157..590c86e60 100644 --- a/public/locales/pl/layout/app-shelf.json +++ b/public/locales/pl/layout/app-shelf.json @@ -1,7 +1,9 @@ { "accordions": { "downloads": { - "text": "Pobrane pliki" + "text": "Pobrane pliki", + "torrents": "Twoje torrenty", + "usenet": "Twoje pliki Usenet" }, "others": { "text": "Pozostałe" diff --git a/public/locales/pl/modules/dashdot.json b/public/locales/pl/modules/dashdot.json index 8c79ee710..eda73bf02 100644 --- a/public/locales/pl/modules/dashdot.json +++ b/public/locales/pl/modules/dashdot.json @@ -28,7 +28,7 @@ }, "graphs": { "storage": { - "title": "", + "title": "Pamięć", "label": "Pamięć:" }, "network": { diff --git a/public/locales/pl/modules/dlspeed.json b/public/locales/pl/modules/dlspeed.json index b1b626bf5..92eda8be8 100644 --- a/public/locales/pl/modules/dlspeed.json +++ b/public/locales/pl/modules/dlspeed.json @@ -19,16 +19,16 @@ }, "lineChart": { "title": "Aktualna prędkość pobierania", - "download": "", - "upload": "", + "download": "Pobranie: {{download}}", + "upload": "Udostępnianie: {{upload}}", "timeSpan": "{{seconds}} sekund temu", - "totalDownload": "", - "totalUpload": "" + "totalDownload": "Pobieranie: {{download}}/s", + "totalUpload": "Udostępnianie: {{upload}}/s" }, "errors": { "noDownloadClients": { "title": "Nie znaleziono obsługiwanych klientów pobierania!", - "text": "" + "text": "Dodaj usługę pobierania, aby wyświetlić aktualnie pobierane pliki" } } } diff --git a/public/locales/pl/modules/docker.json b/public/locales/pl/modules/docker.json index e4bb4a4ff..3e0ad09e5 100644 --- a/public/locales/pl/modules/docker.json +++ b/public/locales/pl/modules/docker.json @@ -1,7 +1,7 @@ { "descriptor": { "name": "Docker", - "description": "Umożliwia łatwe zarządzanie torrentami" + "description": "" }, "search": { "placeholder": "Szukaj według kontenera nazwy lub obrazu" @@ -47,10 +47,22 @@ "title": "Dodaj do Homarra" } }, - "messages": { - "successfullyExecuted": { - "title": "", - "message": "" + "actions": { + "start": { + "start": "Uruchamianie", + "end": "Uruchomiony" + }, + "stop": { + "start": "Zatrzymywanie", + "end": "Zatrzymane" + }, + "restart": { + "start": "Restartowanie", + "end": "Uruchomiony ponownie" + }, + "remove": { + "start": "Usuwanie", + "end": "Usunięto" } }, "errors": { diff --git a/public/locales/pl/modules/torrents-status.json b/public/locales/pl/modules/torrents-status.json index 4f9e0e2a2..984a59666 100644 --- a/public/locales/pl/modules/torrents-status.json +++ b/public/locales/pl/modules/torrents-status.json @@ -24,16 +24,16 @@ }, "lineChart": { "title": "Aktualna prędkość pobierania", - "download": "", - "upload": "", + "download": "Pobranie: {{download}}", + "upload": "Udostępnianie: {{upload}}", "timeSpan": "{{seconds}} sekund temu", - "totalDownload": "", - "totalUpload": "" + "totalDownload": "Pobieranie: {{download}}/s", + "totalUpload": "Udostępnianie: {{upload}}/s" }, "errors": { "noDownloadClients": { "title": "Nie znaleziono obsługiwanych klientów pobierania!", - "text": "" + "text": "Dodaj usługę pobierania, aby wyświetlić aktualnie pobierane pliki" } } } diff --git a/public/locales/pl/modules/usenet.json b/public/locales/pl/modules/usenet.json index 9322942e1..5d9224cc7 100644 --- a/public/locales/pl/modules/usenet.json +++ b/public/locales/pl/modules/usenet.json @@ -1,23 +1,23 @@ { "descriptor": { "name": "Sabnzbd", - "description": "" + "description": "Pozwala zobaczyć kolejkę i historię Sabnzbd, wstrzymywać i wznawiać pobieranie" }, "card": { "errors": { "noDownloadClients": { "title": "Nie znaleziono obsługiwanych klientów pobierania!", - "text": "" + "text": "Dodaj usługę pobierania, aby wyświetlić aktualnie pobierane pliki" } } }, "tabs": { - "queue": "", + "queue": "Kolejka", "history": "Historia" }, "info": { "sizeLeft": "", - "paused": "" + "paused": "Zatrzymane" }, "queue": { "header": { @@ -31,7 +31,7 @@ "title": "Błąd", "message": "Coś poszło nie tak" }, - "paused": "" + "paused": "Zatrzymane" }, "history": { "header": { @@ -44,6 +44,6 @@ "title": "Błąd", "message": "Wystąpił błąd podczas ładowania historii" }, - "paused": "" + "paused": "Zatrzymane" } } diff --git a/public/locales/pl/settings/general/search-engine.json b/public/locales/pl/settings/general/search-engine.json index 255ab34e7..3365d9024 100644 --- a/public/locales/pl/settings/general/search-engine.json +++ b/public/locales/pl/settings/general/search-engine.json @@ -7,5 +7,8 @@ "customEngine": { "label": "Adres URL zapytania", "placeholder": "Własny adres URL zapytania" + }, + "searchNewTab": { + "label": "" } } \ No newline at end of file diff --git a/public/locales/pt/layout/app-shelf.json b/public/locales/pt/layout/app-shelf.json index 42ec040cf..7a4ed6278 100644 --- a/public/locales/pt/layout/app-shelf.json +++ b/public/locales/pt/layout/app-shelf.json @@ -1,7 +1,9 @@ { "accordions": { "downloads": { - "text": "Seus downloads" + "text": "Seus downloads", + "torrents": "", + "usenet": "" }, "others": { "text": "Outros" diff --git a/public/locales/pt/modules/docker.json b/public/locales/pt/modules/docker.json index dea954aa7..fee767599 100644 --- a/public/locales/pt/modules/docker.json +++ b/public/locales/pt/modules/docker.json @@ -1,7 +1,7 @@ { "descriptor": { "name": "Docker", - "description": "Permite que você gerencie facilmente seus torrents" + "description": "" }, "search": { "placeholder": "Procurar por conainer ou imagem" @@ -47,10 +47,22 @@ "title": "Adicionar ao Homarr" } }, - "messages": { - "successfullyExecuted": { - "title": "", - "message": "" + "actions": { + "start": { + "start": "", + "end": "" + }, + "stop": { + "start": "", + "end": "Parado" + }, + "restart": { + "start": "", + "end": "" + }, + "remove": { + "start": "", + "end": "" } }, "errors": { diff --git a/public/locales/pt/settings/general/search-engine.json b/public/locales/pt/settings/general/search-engine.json index 20a3b127a..df277ccef 100644 --- a/public/locales/pt/settings/general/search-engine.json +++ b/public/locales/pt/settings/general/search-engine.json @@ -7,5 +7,8 @@ "customEngine": { "label": "", "placeholder": "" + }, + "searchNewTab": { + "label": "" } } \ No newline at end of file diff --git a/public/locales/ru/layout/app-shelf.json b/public/locales/ru/layout/app-shelf.json index 9373cc694..14e08ed1b 100644 --- a/public/locales/ru/layout/app-shelf.json +++ b/public/locales/ru/layout/app-shelf.json @@ -1,7 +1,9 @@ { "accordions": { "downloads": { - "text": "Ваши загрузки" + "text": "Ваши загрузки", + "torrents": "", + "usenet": "" }, "others": { "text": "Другое" diff --git a/public/locales/ru/modules/docker.json b/public/locales/ru/modules/docker.json index 0d86037c8..82d385368 100644 --- a/public/locales/ru/modules/docker.json +++ b/public/locales/ru/modules/docker.json @@ -47,10 +47,22 @@ "title": "" } }, - "messages": { - "successfullyExecuted": { - "title": "", - "message": "" + "actions": { + "start": { + "start": "", + "end": "" + }, + "stop": { + "start": "", + "end": "" + }, + "restart": { + "start": "", + "end": "" + }, + "remove": { + "start": "", + "end": "" } }, "errors": { diff --git a/public/locales/ru/settings/general/search-engine.json b/public/locales/ru/settings/general/search-engine.json index 20a3b127a..df277ccef 100644 --- a/public/locales/ru/settings/general/search-engine.json +++ b/public/locales/ru/settings/general/search-engine.json @@ -7,5 +7,8 @@ "customEngine": { "label": "", "placeholder": "" + }, + "searchNewTab": { + "label": "" } } \ No newline at end of file diff --git a/public/locales/sl/layout/app-shelf.json b/public/locales/sl/layout/app-shelf.json index 103dc7193..cbf87004c 100644 --- a/public/locales/sl/layout/app-shelf.json +++ b/public/locales/sl/layout/app-shelf.json @@ -1,7 +1,9 @@ { "accordions": { "downloads": { - "text": "Vaši prenosi" + "text": "Vaši prenosi", + "torrents": "Vaši prenosi torrentov", + "usenet": "Vaši prenosi iz omrežja Usenet" }, "others": { "text": "Drugo" diff --git a/public/locales/sl/modules/docker.json b/public/locales/sl/modules/docker.json index a1681f814..9f6491778 100644 --- a/public/locales/sl/modules/docker.json +++ b/public/locales/sl/modules/docker.json @@ -1,7 +1,7 @@ { "descriptor": { "name": "Docker", - "description": "Omogoča enostavno upravljanje torrentov" + "description": "" }, "search": { "placeholder": "Iskanje po zabojniku ali imenu njegove slike" @@ -47,10 +47,22 @@ "title": "Dodaj v Homarr" } }, - "messages": { - "successfullyExecuted": { - "title": "Zabojnik {{containerName}} {{action}}", - "message": "Vaš zabojnik je bil uspešno {{action}}" + "actions": { + "start": { + "start": "Začenjam", + "end": "Začeto" + }, + "stop": { + "start": "Ustavljam", + "end": "Zaustavljeno" + }, + "restart": { + "start": "Ponovno zaganjam", + "end": "Ponovno zagnano" + }, + "remove": { + "start": "Odstranjujem", + "end": "Odstranjeno" } }, "errors": { diff --git a/public/locales/sl/settings/general/search-engine.json b/public/locales/sl/settings/general/search-engine.json index 6c559e498..829340fec 100644 --- a/public/locales/sl/settings/general/search-engine.json +++ b/public/locales/sl/settings/general/search-engine.json @@ -7,5 +7,8 @@ "customEngine": { "label": "URL poizvedbe", "placeholder": "URL poizvedbe po meri" + }, + "searchNewTab": { + "label": "" } } \ No newline at end of file diff --git a/public/locales/sv/layout/app-shelf.json b/public/locales/sv/layout/app-shelf.json index 614903ae9..0dadacf4a 100644 --- a/public/locales/sv/layout/app-shelf.json +++ b/public/locales/sv/layout/app-shelf.json @@ -1,7 +1,9 @@ { "accordions": { "downloads": { - "text": "Dina nedladdningar" + "text": "Dina nedladdningar", + "torrents": "Dina torrent-nedladdningar", + "usenet": "Dina nedladdningar från Usenet" }, "others": { "text": "Övriga" diff --git a/public/locales/sv/modules/docker.json b/public/locales/sv/modules/docker.json index ae33095b3..1cd48d13f 100644 --- a/public/locales/sv/modules/docker.json +++ b/public/locales/sv/modules/docker.json @@ -1,7 +1,7 @@ { "descriptor": { "name": "Docker", - "description": "Låter dig enkelt hantera dina docker images" + "description": "Låter dig enkelt hantera dina docker containers" }, "search": { "placeholder": "Sök efter container eller imagenamn" @@ -47,10 +47,22 @@ "title": "Lägg till i Homarr" } }, - "messages": { - "successfullyExecuted": { - "title": "Container {{containerName}} {{action}}", - "message": "Din behållare lyckades {{action}}" + "actions": { + "start": { + "start": "Startar", + "end": "Startad" + }, + "stop": { + "start": "Stoppar", + "end": "Stoppad" + }, + "restart": { + "start": "Startar om", + "end": "Omstartad" + }, + "remove": { + "start": "Tar bort", + "end": "Borttagen" } }, "errors": { diff --git a/public/locales/sv/settings/general/search-engine.json b/public/locales/sv/settings/general/search-engine.json index 96c16a3ba..d602e80f8 100644 --- a/public/locales/sv/settings/general/search-engine.json +++ b/public/locales/sv/settings/general/search-engine.json @@ -7,5 +7,8 @@ "customEngine": { "label": "URL för förfrågan", "placeholder": "Anpassad sök-URL" + }, + "searchNewTab": { + "label": "Öppna sökresultaten i en ny flik" } } \ No newline at end of file diff --git a/public/locales/uk/layout/app-shelf.json b/public/locales/uk/layout/app-shelf.json index 7b12fcedb..bb5fd9974 100644 --- a/public/locales/uk/layout/app-shelf.json +++ b/public/locales/uk/layout/app-shelf.json @@ -1,7 +1,9 @@ { "accordions": { "downloads": { - "text": "Ваші завантаження" + "text": "Ваші завантаження", + "torrents": "Ваші Торенти", + "usenet": "Ваші Юзнет" }, "others": { "text": "Інше" diff --git a/public/locales/uk/modules/docker.json b/public/locales/uk/modules/docker.json index a479c2dae..b9dab4f7d 100644 --- a/public/locales/uk/modules/docker.json +++ b/public/locales/uk/modules/docker.json @@ -1,7 +1,7 @@ { "descriptor": { "name": "Docker", - "description": "Дозволяє легко керувати торентами" + "description": "" }, "search": { "placeholder": "Пошук по назві контейнера або образу" @@ -47,10 +47,22 @@ "title": "Додати до Homarr" } }, - "messages": { - "successfullyExecuted": { - "title": "Контейнер {{containerName}} виконав дію {{action}}", - "message": "Ваш контейнер успішно виконав - {{action}}" + "actions": { + "start": { + "start": "Запускається", + "end": "Запущено" + }, + "stop": { + "start": "Зупинення", + "end": "Зупинено" + }, + "restart": { + "start": "Перезапуск", + "end": "Перезапущений" + }, + "remove": { + "start": "Видалення", + "end": "Видалено" } }, "errors": { diff --git a/public/locales/uk/settings/general/search-engine.json b/public/locales/uk/settings/general/search-engine.json index 045b22a10..f4b27efd6 100644 --- a/public/locales/uk/settings/general/search-engine.json +++ b/public/locales/uk/settings/general/search-engine.json @@ -7,5 +7,8 @@ "customEngine": { "label": "URL-адреса запиту", "placeholder": "Власна URL-адреса запиту" + }, + "searchNewTab": { + "label": "Відкрити результати пошуку у новій вкладці" } } \ No newline at end of file diff --git a/public/locales/zh/layout/app-shelf.json b/public/locales/zh/layout/app-shelf.json index c307182e0..37bfe0d90 100644 --- a/public/locales/zh/layout/app-shelf.json +++ b/public/locales/zh/layout/app-shelf.json @@ -1,7 +1,9 @@ { "accordions": { "downloads": { - "text": "您的下载" + "text": "您的下载", + "torrents": "", + "usenet": "" }, "others": { "text": "其他" diff --git a/public/locales/zh/modules/docker.json b/public/locales/zh/modules/docker.json index 28fce1cc4..e91d1ba75 100644 --- a/public/locales/zh/modules/docker.json +++ b/public/locales/zh/modules/docker.json @@ -1,7 +1,7 @@ { "descriptor": { "name": "Docker", - "description": "允许你轻松地管理你的torrent文件" + "description": "" }, "search": { "placeholder": "按容器或图像名称搜索" @@ -47,10 +47,22 @@ "title": "添加到Homarr" } }, - "messages": { - "successfullyExecuted": { - "title": "容器 {{containerName}} {{action}}已完成", - "message": "你的容器已成功 {{action}}。" + "actions": { + "start": { + "start": "", + "end": "" + }, + "stop": { + "start": "", + "end": "已停止" + }, + "restart": { + "start": "", + "end": "" + }, + "remove": { + "start": "", + "end": "" } }, "errors": { diff --git a/public/locales/zh/settings/general/search-engine.json b/public/locales/zh/settings/general/search-engine.json index b29f05d67..ae232afc9 100644 --- a/public/locales/zh/settings/general/search-engine.json +++ b/public/locales/zh/settings/general/search-engine.json @@ -7,5 +7,8 @@ "customEngine": { "label": "查询网址", "placeholder": "自定义查询网址" + }, + "searchNewTab": { + "label": "" } } \ No newline at end of file diff --git a/public/site.webmanifest b/public/site.webmanifest new file mode 100644 index 000000000..96dae66d5 --- /dev/null +++ b/public/site.webmanifest @@ -0,0 +1,29 @@ +{ + "display": "standalone", + "icons": [ + { + "src": "/imgs/pwa/manifest/manifest-icon-192.maskable.png", + "sizes": "192x192", + "type": "image/png", + "purpose": "any" + }, + { + "src": "/imgs/pwa/manifest/manifest-icon-192.maskable.png", + "sizes": "192x192", + "type": "image/png", + "purpose": "maskable" + }, + { + "src": "/imgs/pwa/manifest/manifest-icon-512.maskable.png", + "sizes": "512x512", + "type": "image/png", + "purpose": "any" + }, + { + "src": "/imgs/pwa/manifest/manifest-icon-512.maskable.png", + "sizes": "512x512", + "type": "image/png", + "purpose": "maskable" + } + ] +} \ No newline at end of file diff --git a/src/components/AppShelf/AddAppShelfItem.tsx b/src/components/AppShelf/AddAppShelfItem.tsx index 804e4f826..e447f1dc0 100644 --- a/src/components/AppShelf/AddAppShelfItem.tsx +++ b/src/components/AppShelf/AddAppShelfItem.tsx @@ -318,7 +318,6 @@ export function AddAppShelfItemForm(props: AddAppShelfItemFormProps) { {form.values.type === 'qBittorrent' && ( <> { > {t('accordions.downloads.text')} - - {torrentEnabled && ( + + {torrentEnabled && ( <> - + {t('accordions.downloads.torrents')} + )} {usenetEnabled && ( <> - {torrentEnabled && } - + {t('accordions.downloads.usenet')} + )} diff --git a/src/components/SearchNewTabSwitch/SearchNewTabSwitch.tsx b/src/components/SearchNewTabSwitch/SearchNewTabSwitch.tsx new file mode 100644 index 000000000..ca759f411 --- /dev/null +++ b/src/components/SearchNewTabSwitch/SearchNewTabSwitch.tsx @@ -0,0 +1,61 @@ +import React, { useState } from 'react'; +import { createStyles, Switch, Group } from '@mantine/core'; +import { useTranslation } from 'next-i18next'; +import { useConfig } from '../../tools/state'; + +const useStyles = createStyles((theme) => ({ + root: { + position: 'relative', + '& *': { + cursor: 'pointer', + }, + }, + + icon: { + pointerEvents: 'none', + position: 'absolute', + zIndex: 1, + top: 3, + }, + + iconLight: { + left: 4, + color: theme.white, + }, + + iconDark: { + right: 4, + color: theme.colors.gray[6], + }, +})); + +export function SearchNewTabSwitch() { + const { config, setConfig } = useConfig(); + const { classes, cx } = useStyles(); + const defaultPosition = config?.settings?.searchNewTab ?? true; + const [openInNewTab, setOpenInNewTab] = useState(defaultPosition); + const { t } = useTranslation('settings/general/search-engine'); + const toggleOpenInNewTab = () => { + setOpenInNewTab(!openInNewTab); + setConfig({ + ...config, + settings: { + ...config.settings, + searchNewTab: !openInNewTab, + }, + }); + }; + + return ( + +
+ toggleOpenInNewTab()} + size="md" + /> +
+ {t('searchNewTab.label')} +
+ ); +} diff --git a/src/components/Settings/CommonSettings.tsx b/src/components/Settings/CommonSettings.tsx index 45adbb735..c7d10b3af 100644 --- a/src/components/Settings/CommonSettings.tsx +++ b/src/components/Settings/CommonSettings.tsx @@ -2,6 +2,7 @@ import { Text, SegmentedControl, TextInput, Stack } from '@mantine/core'; import { useState } from 'react'; import { useTranslation } from 'next-i18next'; import { useConfig } from '../../tools/state'; +import { SearchNewTabSwitch } from '../SearchNewTabSwitch/SearchNewTabSwitch'; import { ColorSchemeSwitch } from '../ColorSchemeToggle/ColorSchemeSwitch'; import { WidgetsPositionSwitch } from '../WidgetsPositionSwitch/WidgetsPositionSwitch'; import ConfigChanger from '../Config/ConfigChanger'; @@ -75,6 +76,7 @@ export default function CommonSettings(args: any) { )} + diff --git a/src/components/layout/Layout.tsx b/src/components/layout/Layout.tsx index d762c2cb0..f010f5724 100644 --- a/src/components/layout/Layout.tsx +++ b/src/components/layout/Layout.tsx @@ -1,14 +1,22 @@ import { AppShell, createStyles } from '@mantine/core'; -import { Header } from './Header'; +import { Header } from './header/Header'; import { Footer } from './Footer'; import Aside from './Aside'; import Navbar from './Navbar'; -import { HeaderConfig } from './HeaderConfig'; +import { HeaderConfig } from './header/HeaderConfig'; import { Background } from './Background'; import { useConfig } from '../../tools/state'; const useStyles = createStyles((theme) => ({ main: {}, + appShell: { + // eslint-disable-next-line no-useless-computed-key + ['@media screen and (display-mode: standalone)']: { + '&': { + paddingTop: '88px !important', + }, + }, + }, })); export default function Layout({ children, style }: any) { diff --git a/src/components/layout/Logo.tsx b/src/components/layout/Logo.tsx index a4530a1de..530314b57 100644 --- a/src/components/layout/Logo.tsx +++ b/src/components/layout/Logo.tsx @@ -12,7 +12,7 @@ export function Logo({ style, withoutText }: any) { ({ hide: { @@ -23,7 +21,7 @@ const useStyles = createStyles((theme) => ({ })); export function Header(props: any) { - const { classes, cx } = useStyles(); + const { classes } = useStyles(); const { config } = useConfig(); const { colorScheme } = useMantineColorScheme(); diff --git a/src/components/layout/HeaderConfig.tsx b/src/components/layout/header/HeaderConfig.tsx similarity index 56% rename from src/components/layout/HeaderConfig.tsx rename to src/components/layout/header/HeaderConfig.tsx index bf746e855..8f873a9f0 100644 --- a/src/components/layout/HeaderConfig.tsx +++ b/src/components/layout/header/HeaderConfig.tsx @@ -1,7 +1,8 @@ /* eslint-disable react/no-invalid-html-attribute */ import React from 'react'; import Head from 'next/head'; -import { useConfig } from '../../tools/state'; +import { useConfig } from '../../../tools/state'; +import { SafariStatusBarStyle } from './safariStatusBarStyle'; export function HeaderConfig(props: any) { const { config } = useConfig(); @@ -9,15 +10,19 @@ export function HeaderConfig(props: any) { return ( {config.settings.title || 'Homarr 🦞'} - + + + {/* configure apple splash screen & touch icon */} - + + + ); } diff --git a/src/components/layout/header/safariStatusBarStyle.tsx b/src/components/layout/header/safariStatusBarStyle.tsx new file mode 100644 index 000000000..b7100ced0 --- /dev/null +++ b/src/components/layout/header/safariStatusBarStyle.tsx @@ -0,0 +1,13 @@ +import { useMantineTheme } from '@mantine/core'; + +export const SafariStatusBarStyle = () => { + const colorScheme = useMantineTheme(); + + const isDark = colorScheme.colorScheme === 'dark'; + + if (isDark) { + return ; + } + + return ; +}; diff --git a/src/modules/ModuleTypes.d.ts b/src/modules/ModuleTypes.d.ts index 8ccf82c9d..177ce5ae7 100644 --- a/src/modules/ModuleTypes.d.ts +++ b/src/modules/ModuleTypes.d.ts @@ -11,6 +11,15 @@ export interface IModule { icon: TablerIcon; component: React.ComponentType; options?: Option; + padding?: PaddingOptions = { + right: 15, + top: 15, + }, +} + +interface PaddingOptions { + top: number; + right: number; } interface Option { diff --git a/src/modules/docker/ContainerActionBar.tsx b/src/modules/docker/ContainerActionBar.tsx index 125ccd80c..d83b0d272 100644 --- a/src/modules/docker/ContainerActionBar.tsx +++ b/src/modules/docker/ContainerActionBar.tsx @@ -31,7 +31,7 @@ function sendDockerCommand( showNotification({ id: containerId, loading: true, - title: `${action}ing container ${containerName}`, + title: `${t(`actions.${action}.start`)} ${containerName}`, message: undefined, autoClose: false, disallowClose: true, @@ -41,8 +41,8 @@ function sendDockerCommand( .then((res) => { updateNotification({ id: containerId, - title: t('messages.successfullyExecuted.message', { containerName, action }), - message: t('messages.successfullyExecuted.message', { action }), + title: containerName, + message: `${t(`actions.${action}.end`)} ${containerName}`, icon: , autoClose: 2000, }); diff --git a/src/modules/moduleWrapper.tsx b/src/modules/moduleWrapper.tsx index c429e80af..d62e6b02e 100644 --- a/src/modules/moduleWrapper.tsx +++ b/src/modules/moduleWrapper.tsx @@ -186,8 +186,13 @@ export function ModuleWrapper(props: any) { ); } -export function ModuleMenu(props: any) { - const { module, styles, hovered } = props; +interface ModuleMenuProps { + hovered: boolean; + module: IModule; +} + +export function ModuleMenu(props: ModuleMenuProps) { + const { module, hovered } = props; const items: JSX.Element[] = getItems(module); const { t } = useTranslation('modules/common'); return ( @@ -207,12 +212,13 @@ export function ModuleMenu(props: any) { diff --git a/src/modules/search/SearchModule.tsx b/src/modules/search/SearchModule.tsx index b884d3d1e..2363b4e7e 100644 --- a/src/modules/search/SearchModule.tsx +++ b/src/modules/search/SearchModule.tsx @@ -153,20 +153,22 @@ export default function SearchBar(props: any) { }} onSubmit={form.onSubmit((values) => { const query = values.query.trim(); + const open_in = config.settings.searchNewTab ? '_blank' : '_self'; setTimeout(() => { form.setValues({ query: '' }); switch (query.substring(0, 3)) { case '!yt': - window.open(`https://www.youtube.com/results?search_query=${query.substring(3)}`); + window.open(`https://www.youtube.com/results?search_query=${query.substring(3)}`, open_in); break; case '!t ': - window.open(`https://www.torrentdownloads.me/search/?search=${query.substring(3)}`); + window.open(`https://www.torrentdownloads.me/search/?search=${query.substring(3)}`, open_in); break; case '!os': break; default: window.open( - `${queryUrl.includes('%s') ? queryUrl.replace('%s', query) : `${queryUrl}${query}`}` + `${queryUrl.includes('%s') ? queryUrl.replace('%s', query) : `${queryUrl}${query}`}`, + open_in ); break; } diff --git a/src/modules/torrents/TorrentsModule.tsx b/src/modules/torrents/TorrentsModule.tsx index aa4e12a18..d81696e24 100644 --- a/src/modules/torrents/TorrentsModule.tsx +++ b/src/modules/torrents/TorrentsModule.tsx @@ -34,6 +34,10 @@ export const TorrentsModule: IModule = { value: false, }, }, + padding: { + right: 0, + top: -10, + }, }; export default function TorrentsComponent() { diff --git a/src/tools/types.ts b/src/tools/types.ts index 7af6ea62e..da2116a6e 100644 --- a/src/tools/types.ts +++ b/src/tools/types.ts @@ -3,6 +3,7 @@ import { OptionValues } from '../modules/ModuleTypes'; export interface Settings { searchUrl: string; + searchNewTab?: boolean; title?: string; logo?: string; favicon?: string;