Merge branch 'dev' into ui/docker

This commit is contained in:
Thomas Camlong
2022-09-02 13:02:50 +02:00
committed by GitHub
345 changed files with 4226 additions and 1999 deletions

View File

@@ -3,9 +3,9 @@ module.exports = {
'mantine', 'mantine',
'plugin:@next/next/recommended', 'plugin:@next/next/recommended',
'plugin:jest/recommended', 'plugin:jest/recommended',
"eslint:recommended", 'eslint:recommended',
"plugin:@typescript-eslint/eslint-recommended", 'plugin:@typescript-eslint/eslint-recommended',
"plugin:@typescript-eslint/recommended" 'plugin:@typescript-eslint/recommended',
], ],
plugins: ['testing-library', 'jest', 'react-hooks', 'react', 'unused-imports'], plugins: ['testing-library', 'jest', 'react-hooks', 'react', 'unused-imports'],
overrides: [ overrides: [
@@ -20,12 +20,13 @@ module.exports = {
rules: { rules: {
'react/react-in-jsx-scope': 'off', 'react/react-in-jsx-scope': 'off',
'react/no-children-prop': 'off', 'react/no-children-prop': 'off',
"unused-imports/no-unused-imports": "warn", 'unused-imports/no-unused-imports': 'warn',
"@typescript-eslint/no-unused-vars": "off", '@typescript-eslint/no-unused-vars': 'off',
"@typescript-eslint/no-unused-imports": "off", '@typescript-eslint/no-unused-imports': 'off',
"@typescript-eslint/no-unused-expressions": "off", '@typescript-eslint/no-unused-expressions': 'off',
"@typescript-eslint/no-explicit-any": "off", '@typescript-eslint/no-explicit-any': 'off',
"@typescript-eslint/no-shadow": "off", '@typescript-eslint/no-shadow': 'off',
"@typescript-eslint/no-use-before-define": "off", '@typescript-eslint/no-use-before-define': 'off',
'@typescript-eslint/no-non-null-assertion': 'off',
}, },
}; };

View File

@@ -11,6 +11,9 @@
<a href="https://github.com/ajnart/homarr/actions/workflows/docker.yml"> <a href="https://github.com/ajnart/homarr/actions/workflows/docker.yml">
<img title="Docker CI Status" src="https://github.com/ajnart/homarr/actions/workflows/docker.yml/badge.svg" alt="CI Status"> <img title="Docker CI Status" src="https://github.com/ajnart/homarr/actions/workflows/docker.yml/badge.svg" alt="CI Status">
</a> </a>
<a href=https://crowdin.com/project/homarr>
<img title="Translations" src="https://badges.crowdin.net/homarr/localized.svg" />
</a>
<a href="https://discord.gg/aCsmEV5RgA"> <a href="https://discord.gg/aCsmEV5RgA">
<img title="Discord" src="https://discordapp.com/api/guilds/972958686051962910/widget.png?style=shield"> <img title="Discord" src="https://discordapp.com/api/guilds/972958686051962910/widget.png?style=shield">
</a> </a>
@@ -33,7 +36,7 @@ Homarr is a simple and lightweight homepage for your server, that helps you easi
It integrates with the services you use to display information on the homepage (E.g. Show upcoming Sonarr/Radarr releases). It integrates with the services you use to display information on the homepage (E.g. Show upcoming Sonarr/Radarr releases).
For a full list of integrations, [head over to our documentation](https://homarr.vercel.app/docs/advanced-features/integrations). For a full list of integrations, [head over to our documentation](https://homarr.vercel.app/docs/advanced-configuration/integrations).
If you have any questions about Homarr or want to share information with us, please go to one of the following places: If you have any questions about Homarr or want to share information with us, please go to one of the following places:

View File

@@ -2,8 +2,10 @@ module.exports = {
// https://www.i18next.com/overview/configuration-options#logging // https://www.i18next.com/overview/configuration-options#logging
i18n: { i18n: {
defaultLocale: 'en', defaultLocale: 'en',
locales: ['en', 'de', 'es', 'fr', 'it', 'ja', 'nl', 'ru', 'sv', 'zh'], locales: ['en', 'de', 'en', 'es', 'fr', 'it', 'ja', 'nl', 'pl', 'ru', 'sl', 'sv', 'zh'],
fallbackLng: 'en',
localeDetection: true, localeDetection: true,
returnEmptyString: false
}, },
reloadOnPrerender: process.env.NODE_ENV === 'development', reloadOnPrerender: process.env.NODE_ENV === 'development',
}; };

View File

@@ -45,6 +45,7 @@
"@nivo/core": "^0.79.0", "@nivo/core": "^0.79.0",
"@nivo/line": "^0.79.1", "@nivo/line": "^0.79.1",
"@tabler/icons": "^1.78.0", "@tabler/icons": "^1.78.0",
"@tanstack/react-query": "^4.2.1",
"add": "^2.0.6", "add": "^2.0.6",
"axios": "^0.27.2", "axios": "^0.27.2",
"consola": "^2.15.3", "consola": "^2.15.3",
@@ -63,6 +64,7 @@
"prism-react-renderer": "^1.3.5", "prism-react-renderer": "^1.3.5",
"react": "^18.2.0", "react": "^18.2.0",
"react-dom": "^18.2.0", "react-dom": "^18.2.0",
"sabnzbd-api": "^1.5.0",
"sharp": "^0.30.7", "sharp": "^0.30.7",
"systeminformation": "^5.12.1", "systeminformation": "^5.12.1",
"uuid": "^8.3.2", "uuid": "^8.3.2",

View File

@@ -6,8 +6,8 @@
"title": "Service hinzufügen", "title": "Service hinzufügen",
"form": { "form": {
"validation": { "validation": {
"invalidUrl": "Please enter a valid URL", "invalidUrl": "Bitte gebe eine gültige URL an",
"noStatusCodeSelected": "Please select a status code" "noStatusCodeSelected": "Wähle bitte einen Status Code"
} }
}, },
"tabs": { "tabs": {
@@ -15,7 +15,7 @@
"title": "Optionen", "title": "Optionen",
"form": { "form": {
"serviceName": { "serviceName": {
"label": "Service Namen", "label": "Service Name",
"placeholder": "Plex" "placeholder": "Plex"
}, },
"iconUrl": { "iconUrl": {
@@ -34,7 +34,7 @@
}, },
"category": { "category": {
"label": "Kategorie", "label": "Kategorie",
"placeholder": "Whle eine Kategorie oder erstelle eine neue", "placeholder": "Wähle eine Kategorie oder erstelle eine neue",
"nothingFound": "Nichts gefunden", "nothingFound": "Nichts gefunden",
"createLabel": "+ Erstelle {{query}}" "createLabel": "+ Erstelle {{query}}"
}, },
@@ -52,7 +52,7 @@
}, },
"qBittorrent": { "qBittorrent": {
"username": { "username": {
"label": "Benutzernamen", "label": "Benutzername",
"placeholder": "admin", "placeholder": "admin",
"validation": { "validation": {
"invalidUsername": "Invalider Benutzername" "invalidUsername": "Invalider Benutzername"
@@ -62,14 +62,14 @@
"label": "Passwort", "label": "Passwort",
"placeholder": "adminadmin", "placeholder": "adminadmin",
"validation": { "validation": {
"invalidPassword": "Invalides Passwort" "invalidPassword": "Ungültiges Passwort"
} }
} }
}, },
"deluge": { "deluge": {
"password": { "password": {
"label": "Passwort", "label": "Passwort",
"placeholder": "password", "placeholder": "passwort",
"validation": { "validation": {
"invalidPassword": "Invalides Passwort" "invalidPassword": "Invalides Passwort"
} }
@@ -104,7 +104,7 @@
"nothingFound": "Nichts gefunden" "nothingFound": "Nichts gefunden"
}, },
"openServiceInNewTab": { "openServiceInNewTab": {
"label": "Serivce in einem neuen Tab öffnen" "label": "Service in einem neuen Tab öffnen"
}, },
"buttons": { "buttons": {
"submit": { "submit": {

View File

@@ -1,5 +1,5 @@
{ {
"settings": { "settings": {
"label": "Settings" "label": "Einstellungen"
} }
} }

View File

@@ -1,24 +1,24 @@
{ {
"descriptor": { "descriptor": {
"name": "Dash.", "name": "Dash.",
"description": "A module for displaying the graphs of your running Dash. instance.", "description": "Ein Modul, welches die Graphen aus einer laufenden Dash. Instanz anzeigt.",
"settings": { "settings": {
"cpuMultiView": { "cpuMultiView": {
"label": "CPU Multi-Core View" "label": "CPU Multi-Core View"
}, },
"storageMultiView": { "storageMultiView": {
"label": "Storage Multi-Drive View" "label": "Speicher Multi-Laufwerk View"
}, },
"useCompactView": { "useCompactView": {
"label": "Use Compact View" "label": "Kompakte Ansicht nutzen"
}, },
"graphs": { "graphs": {
"label": "Graphs", "label": "Graphen",
"options": { "options": {
"cpu": "CPU", "cpu": "CPU",
"ram": "RAM", "ram": "RAM",
"storage": "Storage", "storage": "Speicher",
"network": "Network", "network": "Netzwerk",
"gpu": "GPU" "gpu": "GPU"
} }
}, },

View File

@@ -1,10 +1,10 @@
{ {
"descriptor": { "descriptor": {
"name": "Date", "name": "Datum",
"description": "Show the current time and date in a card", "description": "Die aktuelle Zeit und das aktuelle Datum in der Card anzeigen",
"settings": { "settings": {
"display24HourFormat": { "display24HourFormat": {
"label": "Display full time (24-hour)" "label": "24-Stunden Format"
} }
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"descriptor": { "descriptor": {
"name": "Download Speed", "name": "Download Geschwindigkeit",
"description": "Show the current download speed of supported services" "description": "Zeige die aktuellen Downloadgeschwindigkeiten von unterstützten Services"
} }
} }

View File

@@ -1,7 +1,7 @@
{ {
"descriptor": { "descriptor": {
"name": "Docker", "name": "Docker",
"description": "Allows you to easily manage your torrents" "description": "Erlaubt dir, deine Torrents einfach zu verwalten"
}, },
"search": { "search": {
"placeholder": "Suche nach Conainer oder Image Namen" "placeholder": "Suche nach Conainer oder Image Namen"
@@ -9,7 +9,7 @@
"table": { "table": {
"header": { "header": {
"name": "Name", "name": "Name",
"image": "Image", "image": "Bild",
"ports": "Ports", "ports": "Ports",
"state": "Status" "state": "Status"
}, },
@@ -47,8 +47,8 @@
}, },
"messages": { "messages": {
"successfullyExecuted": { "successfullyExecuted": {
"title": "Container {{containerName}} {{action}}ed", "title": "",
"message": "Your container was successfully {{action}}ed" "message": ""
} }
}, },
"errors": { "errors": {

View File

@@ -1,7 +1,7 @@
{ {
"descriptor": { "descriptor": {
"name": "Overseerr", "name": "Overseerr",
"description": "Allows you to search and add media from Overseerr/Jellyseerr" "description": "Ermöglicht das Suchen und Hinzufügen von Medien via Overseerr/Jellyseerr"
}, },
"popup": { "popup": {
"item": { "item": {

View File

@@ -1,7 +1,7 @@
{ {
"descriptor": { "descriptor": {
"name": "Search Bar", "name": "Suchleiste",
"description": "Search bar to search the web, youtube, torrents or overseerr" "description": "Suchleiste zum Durchsuchen des Internets, Youtube, Torrents oder Overseerr"
}, },
"input": { "input": {
"placeholder": "Das Internet durchsuchen..." "placeholder": "Das Internet durchsuchen..."

View File

@@ -1,10 +1,10 @@
{ {
"descriptor": { "descriptor": {
"name": "Torrent", "name": "Torrent",
"description": "Show the current download speed of supported services", "description": "Zeige die aktuellen Downloadgeschwindigkeiten von unterstützten Services",
"settings": { "settings": {
"hideComplete": { "hideComplete": {
"label": "Hide completed torrents" "label": "Abgeschlossene Torrents ausblenden"
} }
} }
}, },
@@ -15,7 +15,7 @@
"size": "Grösse", "size": "Grösse",
"download": "Eingehend", "download": "Eingehend",
"upload": "Ausgehend", "upload": "Ausgehend",
"estimatedTimeOfArrival": "Vorraussichtlicher Abschluss", "estimatedTimeOfArrival": "Voraussichtlicher Abschluss",
"progress": "Fortschritt" "progress": "Fortschritt"
}, },
"body": { "body": {
@@ -32,7 +32,7 @@
}, },
"errors": { "errors": {
"noDownloadClients": { "noDownloadClients": {
"title": "Keine unterstützten Download Clients gefunden", "title": "Keine unterstützten Download-Clients gefunden!",
"text": "Füge einen Download Service hinzu, um deine derzeitigen Downloads zu sehen" "text": "Füge einen Download Service hinzu, um deine derzeitigen Downloads zu sehen"
} }
} }

View File

@@ -1,13 +1,13 @@
{ {
"descriptor": { "descriptor": {
"name": "Weather", "name": "Wetter",
"description": "Look up the current weather in your location", "description": "Aktuelles Wetter an deinem Standort anzeigen",
"settings": { "settings": {
"displayInFahrenheit": { "displayInFahrenheit": {
"label": "Display in Fahrenheit" "label": "In Fahrenheit anzeigen"
}, },
"location": { "location": {
"label": "Weather location" "label": "Wetterstandort"
} }
} }
}, },

View File

@@ -1,12 +1,12 @@
{ {
"title": "Settings", "title": "Einstellungen",
"tooltip": "Settings", "tooltip": "Einstellungen",
"tabs": { "tabs": {
"common": "Common", "common": "General",
"customizations": "Customizations" "customizations": "Anpassungen"
}, },
"tips": { "tips": {
"configTip": "Upload your config file by dragging and dropping it onto the page!" "configTip": "Lade deine Konfigurationsdatei durch Drag-and-drop auf die Seite hoch!"
}, },
"credits": { "credits": {
"madeWithLove": "Made with ❤️ by @" "madeWithLove": "Made with ❤️ by @"

View File

@@ -15,6 +15,10 @@
"label": "Hintergrund", "label": "Hintergrund",
"placeholder": "/img/background.png" "placeholder": "/img/background.png"
}, },
"customCSS": {
"label": "Benutzerdefiniertes CSS",
"placeholder": "Benutzerdefiniertes CSS wird als letztes ausgeführt"
},
"buttons": { "buttons": {
"submit": "Absenden" "submit": "Absenden"
} }

View File

@@ -1,6 +1,6 @@
{ {
"configSelect": { "configSelect": {
"label": "Konfigurations Lader" "label": "Konfigurationslader"
}, },
"modal": { "modal": {
"title": "Wähle einen Namen für deine neue Konfiguration", "title": "Wähle einen Namen für deine neue Konfiguration",
@@ -28,8 +28,8 @@
"message": "Konfiguration wurde gelöscht" "message": "Konfiguration wurde gelöscht"
}, },
"deleteFailed": { "deleteFailed": {
"title": "Config delete failed", "title": "Löschung der Konfiguration fehlgeschlagen",
"message": "Config delete failed" "message": "Löschung der Konfiguration fehlgeschlagen"
} }
} }
}, },

View File

@@ -2,5 +2,10 @@
"actions": { "actions": {
"save": "Save" "save": "Save"
}, },
"tip": "Tip: " "tip": "Tip: ",
"time": {
"seconds": "seconds",
"minutes": "minutes",
"hours": "hours"
}
} }

View File

@@ -95,8 +95,11 @@
} }
}, },
"advancedOptions": { "advancedOptions": {
"title": "Advanced options", "title": "Advanced Options",
"form": { "form": {
"ping": {
"label": "Ping Service"
},
"httpStatusCodes": { "httpStatusCodes": {
"label": "HTTP Status Codes", "label": "HTTP Status Codes",
"placeholder": "Select valid status codes", "placeholder": "Select valid status codes",

View File

@@ -30,7 +30,7 @@
"card": { "card": {
"title": "Dash.", "title": "Dash.",
"errors": { "errors": {
"noService": "No dash. service found. Please add one to your Homarr dashboard or set a dashdot URL in the module options", "noService": "No Dash. service found. Please add one to your Homarr dashboard or set a Dash. URL in the module options",
"noInformation": "Cannot acquire information from dash. - are you running the latest version?" "noInformation": "Cannot acquire information from dash. - are you running the latest version?"
}, },
"graphs": { "graphs": {

View File

@@ -1,7 +1,7 @@
{ {
"descriptor": { "descriptor": {
"name": "Search Bar", "name": "Search Bar",
"description": "Search bar to search the web, youtube, torrents or overseerr" "description": "Search bar to search the web, Youtube, Torrents or Overseerr"
}, },
"input": { "input": {
"placeholder": "Search the web..." "placeholder": "Search the web..."

View File

@@ -0,0 +1,49 @@
{
"descriptor": {
"name": "Usenet",
"description": "Show the queue and history of supported services"
},
"card": {
"errors": {
"noDownloadClients": {
"title": "No supported download clients found!",
"text": "Add a download service to view your current downloads"
}
}
},
"tabs": {
"queue": "Queue",
"history": "History"
},
"info": {
"sizeLeft": "Size left",
"paused": "Paused"
},
"queue": {
"header": {
"name": "Name",
"size": "Size",
"eta": "ETA",
"progress": "Progress"
},
"empty": "Queue is empty.",
"error": {
"title": "Error!",
"message": "Some error has occured while fetching data:"
},
"paused": "Paused"
},
"history": {
"header": {
"name": "Name",
"size": "Size",
"duration": "Download Duration"
},
"empty": "Queue is empty.",
"error": {
"title": "Error!",
"message": "Some error has occured while fetching data:"
},
"paused": "Paused"
}
}

View File

@@ -15,6 +15,10 @@
"label": "Background", "label": "Background",
"placeholder": "/img/background.png" "placeholder": "/img/background.png"
}, },
"customCSS": {
"label": "Custom CSS",
"placeholder": "Custom CSS will be executed last"
},
"buttons": { "buttons": {
"submit": "Submit" "submit": "Submit"
} }

View File

@@ -1,6 +1,6 @@
{ {
"actions": { "actions": {
"save": "Save" "save": "Guardar"
}, },
"tip": "Tip: " "tip": "Consejo: "
} }

View File

@@ -1,93 +1,93 @@
{ {
"actionIcon": { "actionIcon": {
"tooltip": "Add a service" "tooltip": "Añadir un servicio"
}, },
"modal": { "modal": {
"title": "Add service", "title": "Añadir servicio",
"form": { "form": {
"validation": { "validation": {
"invalidUrl": "Please enter a valid URL", "invalidUrl": "",
"noStatusCodeSelected": "Please select a status code" "noStatusCodeSelected": ""
} }
}, },
"tabs": { "tabs": {
"options": { "options": {
"title": "Options", "title": "Opciones",
"form": { "form": {
"serviceName": { "serviceName": {
"label": "Service name", "label": "Nombre del servicio",
"placeholder": "Plex" "placeholder": "Plex"
}, },
"iconUrl": { "iconUrl": {
"label": "Icon URL" "label": "URL del icono"
}, },
"serviceUrl": { "serviceUrl": {
"label": "Service URL" "label": "URL del servicio"
}, },
"onClickUrl": { "onClickUrl": {
"label": "On Click URL" "label": ""
}, },
"serviceType": { "serviceType": {
"label": "Service type", "label": "Tipo de servicio",
"defaultValue": "Other", "defaultValue": "Otro",
"placeholder": "Pick one" "placeholder": "Elige uno"
}, },
"category": { "category": {
"label": "Category", "label": "Categoría",
"placeholder": "Select a category or create a new one", "placeholder": "Seleccione una categoría o cree una nueva",
"nothingFound": "Nothing found", "nothingFound": "",
"createLabel": "+ Create {{query}}" "createLabel": ""
}, },
"integrations": { "integrations": {
"apiKey": { "apiKey": {
"label": "API key", "label": "",
"placeholder": "Your API key", "placeholder": "",
"validation": { "validation": {
"noKey": "Invalid Key" "noKey": ""
}, },
"tip": { "tip": {
"text": "Get your API key", "text": "",
"link": "here." "link": "aquí."
} }
}, },
"qBittorrent": { "qBittorrent": {
"username": { "username": {
"label": "Username", "label": "",
"placeholder": "admin", "placeholder": "",
"validation": { "validation": {
"invalidUsername": "Invalid username" "invalidUsername": ""
} }
}, },
"password": { "password": {
"label": "Password", "label": "",
"placeholder": "adminadmin", "placeholder": "",
"validation": { "validation": {
"invalidPassword": "Invalid password" "invalidPassword": ""
} }
} }
}, },
"deluge": { "deluge": {
"password": { "password": {
"label": "Password", "label": "",
"placeholder": "password", "placeholder": "",
"validation": { "validation": {
"invalidPassword": "Invalid password" "invalidPassword": ""
} }
} }
}, },
"transmission": { "transmission": {
"username": { "username": {
"label": "Username", "label": "",
"placeholder": "admin", "placeholder": "",
"validation": { "validation": {
"invalidUsername": "Invalid username" "invalidUsername": ""
} }
}, },
"password": { "password": {
"label": "Password", "label": "",
"placeholder": "adminadmin", "placeholder": "",
"validation": { "validation": {
"invalidPassword": "Invalid password" "invalidPassword": ""
} }
} }
} }
@@ -95,20 +95,20 @@
} }
}, },
"advancedOptions": { "advancedOptions": {
"title": "Advanced options", "title": "",
"form": { "form": {
"httpStatusCodes": { "httpStatusCodes": {
"label": "HTTP Status Codes", "label": "",
"placeholder": "Select valid status codes", "placeholder": "",
"clearButtonLabel": "Clear selection", "clearButtonLabel": "",
"nothingFound": "Nothing found" "nothingFound": ""
}, },
"openServiceInNewTab": { "openServiceInNewTab": {
"label": "Open service in new tab" "label": ""
}, },
"buttons": { "buttons": {
"submit": { "submit": {
"content": "Add service" "content": "Añadir servicio"
} }
} }
} }

View File

@@ -1,18 +1,18 @@
{ {
"modal": { "modal": {
"title": "Modify a service", "title": "",
"buttons": { "buttons": {
"save": "Save service" "save": ""
} }
}, },
"menu": { "menu": {
"labels": { "labels": {
"settings": "Settings", "settings": "Ajustes",
"dangerZone": "Danger zone" "dangerZone": ""
}, },
"actions": { "actions": {
"edit": "Edit", "edit": "Editar",
"delete": "Delete" "delete": "Eliminar"
} }
} }
} }

View File

@@ -1,10 +1,10 @@
{ {
"accordions": { "accordions": {
"downloads": { "downloads": {
"text": "Your downloads" "text": "Tus descargas"
}, },
"others": { "others": {
"text": "Others" "text": "Otros"
} }
} }
} }

View File

@@ -1,10 +1,10 @@
{ {
"descriptor": { "descriptor": {
"name": "Calendar", "name": "Calendario",
"description": "A calendar module for displaying upcoming releases. It interacts with the Sonarr and Radarr API.", "description": "",
"settings": { "settings": {
"sundayStart": { "sundayStart": {
"label": "Start the week on Sunday" "label": ""
} }
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"buttons": { "buttons": {
"play": "Play", "play": "Reproducir",
"request": "Request" "request": "Solicitar"
} }
} }

View File

@@ -1,5 +1,5 @@
{ {
"settings": { "settings": {
"label": "Settings" "label": "Ajustes"
} }
} }

View File

@@ -1,59 +1,59 @@
{ {
"descriptor": { "descriptor": {
"name": "Dash.", "name": "",
"description": "A module for displaying the graphs of your running Dash. instance.", "description": "",
"settings": { "settings": {
"cpuMultiView": { "cpuMultiView": {
"label": "CPU Multi-Core View" "label": ""
}, },
"storageMultiView": { "storageMultiView": {
"label": "Storage Multi-Drive View" "label": ""
}, },
"useCompactView": { "useCompactView": {
"label": "Use Compact View" "label": ""
}, },
"graphs": { "graphs": {
"label": "Graphs", "label": "",
"options": { "options": {
"cpu": "CPU", "cpu": "Procesador",
"ram": "RAM", "ram": "Memoria RAM",
"storage": "Storage", "storage": "Almacenaje",
"network": "Network", "network": "Red",
"gpu": "GPU" "gpu": "Procesador Gráfico"
} }
}, },
"url": { "url": {
"label": "Dash. URL" "label": ""
} }
} }
}, },
"card": { "card": {
"title": "Dash.", "title": "",
"errors": { "errors": {
"noService": "No dash. service found. Please add one to your Homarr dashboard or set a dashdot URL in the module options", "noService": "",
"noInformation": "Cannot acquire information from dash. - are you running the latest version?" "noInformation": ""
}, },
"graphs": { "graphs": {
"storage": { "storage": {
"title": "Storage", "title": "Almacenaje",
"label": "Storage:" "label": "Almacenaje:"
}, },
"network": { "network": {
"title": "Network", "title": "Red",
"label": "Network:", "label": "Red:",
"metrics": { "metrics": {
"download": "Down", "download": "",
"upload": "Up" "upload": ""
} }
}, },
"cpu": { "cpu": {
"title": "CPU" "title": "Procesador"
}, },
"memory": { "memory": {
"title": "RAM" "title": "Memoria RAM"
}, },
"gpu": { "gpu": {
"title": "GPU" "title": "Procesador Gráfico"
} }
} }
} }

View File

@@ -1,10 +1,10 @@
{ {
"descriptor": { "descriptor": {
"name": "Date", "name": "Fecha",
"description": "Show the current time and date in a card", "description": "",
"settings": { "settings": {
"display24HourFormat": { "display24HourFormat": {
"label": "Display full time (24-hour)" "label": ""
} }
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"descriptor": { "descriptor": {
"name": "Download Speed", "name": "",
"description": "Show the current download speed of supported services" "description": ""
} }
} }

View File

@@ -1,66 +1,66 @@
{ {
"descriptor": { "descriptor": {
"name": "Docker", "name": "Docker",
"description": "Allows you to easily manage your torrents" "description": ""
}, },
"search": { "search": {
"placeholder": "Search by container or image name" "placeholder": ""
}, },
"table": { "table": {
"header": { "header": {
"name": "Name", "name": "Nombre",
"image": "Image", "image": "Imágen",
"ports": "Ports", "ports": "Puertos",
"state": "State" "state": "Estado"
}, },
"body": { "body": {
"portCollapse": "{{ports}} more" "portCollapse": "{{ports}} más"
}, },
"states": { "states": {
"running": "Running", "running": "",
"created": "Created", "created": "Creado",
"stopped": "Stopped", "stopped": "Detenido",
"unknown": "Unknown" "unknown": "Desconocido"
} }
}, },
"actionBar": { "actionBar": {
"addService": { "addService": {
"title": "Add service", "title": "Añadir servicio",
"message": "Add service to Homarr" "message": "Añadir servicio a Homarr"
}, },
"restart": { "restart": {
"title": "Restart" "title": "Reiniciar"
}, },
"stop": { "stop": {
"title": "Stop" "title": "Detener"
}, },
"start": { "start": {
"title": "Start" "title": "Comenzar"
}, },
"refreshData": "Refresh data", "refreshData": "Actualizar datos",
"addToHomarr": { "addToHomarr": {
"title": "Add to Homarr" "title": "Añadir a Homarr"
}, },
"remove": { "remove": {
"title": "Remove" "title": "Eliminar"
} }
}, },
"messages": { "messages": {
"successfullyExecuted": { "successfullyExecuted": {
"title": "Container {{containerName}} {{action}}ed", "title": "",
"message": "Your container was successfully {{action}}ed" "message": ""
} }
}, },
"errors": { "errors": {
"integrationFailed": { "integrationFailed": {
"title": "Docker integration failed", "title": "",
"message": "Did you forget to mount the docker socket ?" "message": ""
}, },
"unknownError": { "unknownError": {
"title": "There was an error" "title": ""
}, },
"oneServiceAtATime": { "oneServiceAtATime": {
"title": "Please only add one service at a time!" "title": ""
} }
}, },
"actionIcon": { "actionIcon": {

View File

@@ -1,28 +1,28 @@
{ {
"descriptor": { "descriptor": {
"name": "Overseerr", "name": "Overseerr",
"description": "Allows you to search and add media from Overseerr/Jellyseerr" "description": ""
}, },
"popup": { "popup": {
"item": { "item": {
"buttons": { "buttons": {
"askFor": "Ask for {{title}}", "askFor": "",
"cancel": "Cancel", "cancel": "Cancelar",
"request": "Request" "request": "Solicitar"
}, },
"alerts": { "alerts": {
"automaticApproval": { "automaticApproval": {
"title": "Using API key", "title": "",
"text": "This request will be automatically approved" "text": ""
} }
} }
}, },
"seasonSelector": { "seasonSelector": {
"caption": "Tick the seasons that you want to be downloaded", "caption": "",
"table": { "table": {
"header": { "header": {
"season": "Season", "season": "Temporada",
"numberOfEpisodes": "Number of episodes" "numberOfEpisodes": "Número de episodios"
} }
} }
} }

View File

@@ -1,11 +1,11 @@
{ {
"descriptor": { "descriptor": {
"name": "Ping", "name": "",
"description": "Allows you to check if the service is up or returns a specific HTTP status code." "description": ""
}, },
"states": { "states": {
"online": "Online {{response}}", "online": "",
"offline": "Offline {{response}}", "offline": "",
"loading": "Loading..." "loading": "Cargando..."
} }
} }

View File

@@ -1,9 +1,9 @@
{ {
"descriptor": { "descriptor": {
"name": "Search Bar", "name": "",
"description": "Search bar to search the web, youtube, torrents or overseerr" "description": ""
}, },
"input": { "input": {
"placeholder": "Search the web..." "placeholder": ""
} }
} }

View File

@@ -1,39 +1,39 @@
{ {
"descriptor": { "descriptor": {
"name": "Torrent", "name": "",
"description": "Show the current download speed of supported services", "description": "",
"settings": { "settings": {
"hideComplete": { "hideComplete": {
"label": "Hide completed torrents" "label": ""
} }
} }
}, },
"card": { "card": {
"table": { "table": {
"header": { "header": {
"name": "Name", "name": "Nombre",
"size": "Size", "size": "Tamaño",
"download": "Down", "download": "",
"upload": "Up", "upload": "",
"estimatedTimeOfArrival": "ETA", "estimatedTimeOfArrival": "",
"progress": "Progress" "progress": ""
}, },
"body": { "body": {
"nothingFound": "No torrents found" "nothingFound": ""
} }
}, },
"lineChart": { "lineChart": {
"title": "Current download speed", "title": "",
"download": "Download: {{download}}", "download": "",
"upload": "Upload: {{upload}}", "upload": "",
"timeSpan": "{{seconds}} seconds ago", "timeSpan": "",
"totalDownload": "Download: {{download}}/s", "totalDownload": "",
"totalUpload": "Upload: {{upload}}/s" "totalUpload": ""
}, },
"errors": { "errors": {
"noDownloadClients": { "noDownloadClients": {
"title": "No supported download clients found!", "title": "",
"text": "Add a download service to view your current downloads" "text": ""
} }
} }
} }

View File

@@ -1,32 +1,32 @@
{ {
"descriptor": { "descriptor": {
"name": "Weather", "name": "Clima",
"description": "Look up the current weather in your location", "description": "",
"settings": { "settings": {
"displayInFahrenheit": { "displayInFahrenheit": {
"label": "Display in Fahrenheit" "label": "Mostrar en Fahrenheit"
}, },
"location": { "location": {
"label": "Weather location" "label": "Ubicación del clima"
} }
} }
}, },
"card": { "card": {
"weatherDescriptions": { "weatherDescriptions": {
"clear": "Clear", "clear": "",
"mainlyClear": "Mainly clear", "mainlyClear": "",
"fog": "Fog", "fog": "Niebla",
"drizzle": "Drizzle", "drizzle": "Llovizna",
"freezingDrizzle": "Freezing drizzle", "freezingDrizzle": "Llovizna helada",
"rain": "Rain", "rain": "Lluvia",
"freezingRain": "Freezing rain", "freezingRain": "Lluvia helada",
"snowFall": "Snow fall", "snowFall": "Caída de nieve",
"snowGrains": "Snow grains", "snowGrains": "Granos de nieve",
"rainShowers": "Rain showers", "rainShowers": "",
"snowShowers": "Snow showers", "snowShowers": "",
"thunderstorm": "Thunderstorm", "thunderstorm": "",
"thunderstormWithHail": "Thunderstorm with hail", "thunderstormWithHail": "",
"unknown": "Unknown" "unknown": "Desconocido"
} }
} }
} }

View File

@@ -1,14 +1,14 @@
{ {
"title": "Settings", "title": "Ajustes",
"tooltip": "Settings", "tooltip": "Ajustes",
"tabs": { "tabs": {
"common": "Common", "common": "Común",
"customizations": "Customizations" "customizations": "Personalizaciones"
}, },
"tips": { "tips": {
"configTip": "Upload your config file by dragging and dropping it onto the page!" "configTip": ""
}, },
"credits": { "credits": {
"madeWithLove": "Made with ❤️ by @" "madeWithLove": "Hecho con ❤️ por @"
} }
} }

View File

@@ -1,3 +1 @@
{ {}
"label": "App Width"
}

View File

@@ -1,3 +1,3 @@
{ {
"suffix": "{{color}} color" "suffix": "Color {{color}}"
} }

View File

@@ -1,3 +1,3 @@
{ {
"label": "App Opacity" "label": "Opacidad de la aplicación"
} }

View File

@@ -1,6 +1,6 @@
{ {
"pageTitle": { "pageTitle": {
"label": "Page Title", "label": "Título de Página",
"placeholder": "Homarr 🦞" "placeholder": "Homarr 🦞"
}, },
"logo": { "logo": {
@@ -8,14 +8,14 @@
"placeholder": "/img/logo.png" "placeholder": "/img/logo.png"
}, },
"favicon": { "favicon": {
"label": "Favicon", "label": "",
"placeholder": "/favicon.png" "placeholder": ""
}, },
"background": { "background": {
"label": "Background", "label": "Fondo",
"placeholder": "/img/background.png" "placeholder": ""
}, },
"buttons": { "buttons": {
"submit": "Submit" "submit": ""
} }
} }

View File

@@ -1,3 +1,3 @@
{ {
"label": "Shade" "label": "Sombra"
} }

View File

@@ -1,3 +1,3 @@
{ {
"label": "Switch to {{scheme}} mode" "label": "Cambiar al modo {{scheme}}"
} }

View File

@@ -1,55 +1,55 @@
{ {
"configSelect": { "configSelect": {
"label": "Config loader" "label": ""
}, },
"modal": { "modal": {
"title": "Choose the name of your new config", "title": "",
"form": { "form": {
"configName": { "configName": {
"label": "Config name", "label": "",
"placeholder": "Your new config name" "placeholder": ""
}, },
"submitButton": "Confirm" "submitButton": ""
}, },
"events": { "events": {
"configSaved": { "configSaved": {
"title": "Config saved", "title": "",
"message": "Config saved as {{configName}}" "message": ""
} }
} }
}, },
"buttons": { "buttons": {
"download": "Download config", "download": "",
"delete": { "delete": {
"text": "Delete config", "text": "",
"notifications": { "notifications": {
"deleted": { "deleted": {
"title": "Config deleted", "title": "",
"message": "Config deleted" "message": ""
}, },
"deleteFailed": { "deleteFailed": {
"title": "Config delete failed", "title": "",
"message": "Config delete failed" "message": ""
} }
} }
}, },
"saveCopy": "Save a copy" "saveCopy": ""
}, },
"dropzone": { "dropzone": {
"notifications": { "notifications": {
"invalidConfig": { "invalidConfig": {
"title": "Unable to load config", "title": "",
"message": "Could not load your config. Invalid JSON format." "message": ""
}, },
"loadedSuccessfully": { "loadedSuccessfully": {
"title": "Config {{configName}} loaded successfully" "title": ""
} }
}, },
"accept": { "accept": {
"text": "Drag files here to upload a config. Support for JSON only." "text": ""
}, },
"reject": { "reject": {
"text": "This file format is not supported. Please only upload JSON." "text": ""
} }
} }
} }

View File

@@ -1,3 +1,3 @@
{ {
"label": "Language" "label": "Idioma"
} }

View File

@@ -1,3 +1 @@
{ {}
"title": "Module enabler"
}

View File

@@ -1,11 +1,11 @@
{ {
"title": "Search engine", "title": "",
"tips": { "tips": {
"generalTip": "Use the prefixes !yt and !t in front of your query to search on YouTube or for a Torrent respectively.", "generalTip": "",
"placeholderTip": "%s can be used as a placeholder for the query." "placeholderTip": ""
}, },
"customEngine": { "customEngine": {
"label": "Query URL", "label": "",
"placeholder": "Custom query URL" "placeholder": ""
} }
} }

View File

@@ -1,3 +1,3 @@
{ {
"label": "Switch to {{theme}} mode" "label": "Cambiar al modo {{theme}}"
} }

View File

@@ -1,3 +1 @@
{ {}
"label": "Position widgets on left"
}

View File

@@ -1,6 +1,6 @@
{ {
"actions": { "actions": {
"save": "Save" "save": "Sauvegarder"
}, },
"tip": "Tip: " "tip": "Conseil : "
} }

View File

@@ -1,13 +1,13 @@
{ {
"actionIcon": { "actionIcon": {
"tooltip": "Add a service" "tooltip": "Ajouter un service"
}, },
"modal": { "modal": {
"title": "Add service", "title": "Ajouter un service",
"form": { "form": {
"validation": { "validation": {
"invalidUrl": "Please enter a valid URL", "invalidUrl": "Veuillez entrer une URL valide",
"noStatusCodeSelected": "Please select a status code" "noStatusCodeSelected": "Veuillez sélectionner un code d'état"
} }
}, },
"tabs": { "tabs": {
@@ -15,79 +15,79 @@
"title": "Options", "title": "Options",
"form": { "form": {
"serviceName": { "serviceName": {
"label": "Service name", "label": "Nom du service",
"placeholder": "Plex" "placeholder": "Plex"
}, },
"iconUrl": { "iconUrl": {
"label": "Icon URL" "label": "URL de l'icône"
}, },
"serviceUrl": { "serviceUrl": {
"label": "Service URL" "label": "URL du service"
}, },
"onClickUrl": { "onClickUrl": {
"label": "On Click URL" "label": "URL ouvert en cas de clic"
}, },
"serviceType": { "serviceType": {
"label": "Service type", "label": "Type de service",
"defaultValue": "Other", "defaultValue": "Autre",
"placeholder": "Pick one" "placeholder": "Choisissez-en un"
}, },
"category": { "category": {
"label": "Category", "label": "Catégorie",
"placeholder": "Select a category or create a new one", "placeholder": "Sélectionnez une catégorie ou créez-en une nouvelle",
"nothingFound": "Nothing found", "nothingFound": "Rien trouvé",
"createLabel": "+ Create {{query}}" "createLabel": "+ Créer {{query}}"
}, },
"integrations": { "integrations": {
"apiKey": { "apiKey": {
"label": "API key", "label": "Clé API",
"placeholder": "Your API key", "placeholder": "Votre clé API",
"validation": { "validation": {
"noKey": "Invalid Key" "noKey": "Clé non valide"
}, },
"tip": { "tip": {
"text": "Get your API key", "text": "Obtenez votre clé API",
"link": "here." "link": "ici."
} }
}, },
"qBittorrent": { "qBittorrent": {
"username": { "username": {
"label": "Username", "label": "Nom d'utilisateur",
"placeholder": "admin", "placeholder": "admin",
"validation": { "validation": {
"invalidUsername": "Invalid username" "invalidUsername": "Nom d'utilisateur invalide"
} }
}, },
"password": { "password": {
"label": "Password", "label": "Mot de passe",
"placeholder": "adminadmin", "placeholder": "adminadmin",
"validation": { "validation": {
"invalidPassword": "Invalid password" "invalidPassword": "Mot de passe invalide"
} }
} }
}, },
"deluge": { "deluge": {
"password": { "password": {
"label": "Password", "label": "Mot de passe",
"placeholder": "password", "placeholder": "mot de passe",
"validation": { "validation": {
"invalidPassword": "Invalid password" "invalidPassword": "Mot de passe invalide"
} }
} }
}, },
"transmission": { "transmission": {
"username": { "username": {
"label": "Username", "label": "Nom d'utilisateur :",
"placeholder": "admin", "placeholder": "admin",
"validation": { "validation": {
"invalidUsername": "Invalid username" "invalidUsername": "Nom d'utilisateur non valide"
} }
}, },
"password": { "password": {
"label": "Password", "label": "Mot de passe",
"placeholder": "adminadmin", "placeholder": "adminadmin",
"validation": { "validation": {
"invalidPassword": "Invalid password" "invalidPassword": "Mot de passe invalide"
} }
} }
} }
@@ -95,20 +95,20 @@
} }
}, },
"advancedOptions": { "advancedOptions": {
"title": "Advanced options", "title": "Options avancées",
"form": { "form": {
"httpStatusCodes": { "httpStatusCodes": {
"label": "HTTP Status Codes", "label": "Codes d'état HTTP",
"placeholder": "Select valid status codes", "placeholder": "Sélectionnez les codes d'état valides",
"clearButtonLabel": "Clear selection", "clearButtonLabel": "Effacer la sélection",
"nothingFound": "Nothing found" "nothingFound": "Rien trouvé"
}, },
"openServiceInNewTab": { "openServiceInNewTab": {
"label": "Open service in new tab" "label": "Ouvrir le service dans un nouvel onglet"
}, },
"buttons": { "buttons": {
"submit": { "submit": {
"content": "Add service" "content": "Ajouter un service"
} }
} }
} }

View File

@@ -1,18 +1,18 @@
{ {
"modal": { "modal": {
"title": "Modify a service", "title": "Modifier un service",
"buttons": { "buttons": {
"save": "Save service" "save": "Service de sauvegarde"
} }
}, },
"menu": { "menu": {
"labels": { "labels": {
"settings": "Settings", "settings": "Paramètres",
"dangerZone": "Danger zone" "dangerZone": "Attention"
}, },
"actions": { "actions": {
"edit": "Edit", "edit": "Modifier",
"delete": "Delete" "delete": "Supprimer"
} }
} }
} }

View File

@@ -1,10 +1,10 @@
{ {
"accordions": { "accordions": {
"downloads": { "downloads": {
"text": "Your downloads" "text": "Vos téléchargements"
}, },
"others": { "others": {
"text": "Others" "text": "Autres"
} }
} }
} }

View File

@@ -1,10 +1,10 @@
{ {
"descriptor": { "descriptor": {
"name": "Calendar", "name": "Calendrier",
"description": "A calendar module for displaying upcoming releases. It interacts with the Sonarr and Radarr API.", "description": "Un module de calendrier pour afficher les prochaines versions. Il interagit avec les API Sonarr et Radarr.",
"settings": { "settings": {
"sundayStart": { "sundayStart": {
"label": "Start the week on Sunday" "label": "Commencez la semaine par dimanche"
} }
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"buttons": { "buttons": {
"play": "Play", "play": "Jouer",
"request": "Request" "request": "Demande"
} }
} }

View File

@@ -1,5 +1,5 @@
{ {
"settings": { "settings": {
"label": "Settings" "label": "Paramètres"
} }
} }

View File

@@ -1,48 +1,48 @@
{ {
"descriptor": { "descriptor": {
"name": "Dash.", "name": "Dash.",
"description": "A module for displaying the graphs of your running Dash. instance.", "description": "Un module pour afficher les graphiques de votre instance Dash. en cours.",
"settings": { "settings": {
"cpuMultiView": { "cpuMultiView": {
"label": "CPU Multi-Core View" "label": "Vue du CPU multi-cœur"
}, },
"storageMultiView": { "storageMultiView": {
"label": "Storage Multi-Drive View" "label": "Vue du stockage multidisque"
}, },
"useCompactView": { "useCompactView": {
"label": "Use Compact View" "label": "Utiliser la vue compacte"
}, },
"graphs": { "graphs": {
"label": "Graphs", "label": "Graphiques",
"options": { "options": {
"cpu": "CPU", "cpu": "CPU",
"ram": "RAM", "ram": "RAM",
"storage": "Storage", "storage": "Stockage",
"network": "Network", "network": "Réseau",
"gpu": "GPU" "gpu": "GPU"
} }
}, },
"url": { "url": {
"label": "Dash. URL" "label": "URL Dash"
} }
} }
}, },
"card": { "card": {
"title": "Dash.", "title": "Dash.",
"errors": { "errors": {
"noService": "No dash. service found. Please add one to your Homarr dashboard or set a dashdot URL in the module options", "noService": "Aucun service dash. trouvé. Veuillez en ajouter un à votre tableau de bord Homarr ou définir une URL dashdot dans les options du module.",
"noInformation": "Cannot acquire information from dash. - are you running the latest version?" "noInformation": "Impossible d'acquérir des informations de dashdot - Utilisez-vous la dernière version ?"
}, },
"graphs": { "graphs": {
"storage": { "storage": {
"title": "Storage", "title": "Stockage",
"label": "Storage:" "label": "Stockage :"
}, },
"network": { "network": {
"title": "Network", "title": "Réseau",
"label": "Network:", "label": "Réseau :",
"metrics": { "metrics": {
"download": "Down", "download": "Duvet",
"upload": "Up" "upload": "Up"
} }
}, },

View File

@@ -1,10 +1,10 @@
{ {
"descriptor": { "descriptor": {
"name": "Date", "name": "Date",
"description": "Show the current time and date in a card", "description": "Affiches l'heure et la date actuelles dans un module",
"settings": { "settings": {
"display24HourFormat": { "display24HourFormat": {
"label": "Display full time (24-hour)" "label": "Affichage 24 h"
} }
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"descriptor": { "descriptor": {
"name": "Download Speed", "name": "Vitesse de téléchargement",
"description": "Show the current download speed of supported services" "description": "Afficher la vitesse de téléchargement actuelle des services pris en charge"
} }
} }

View File

@@ -1,66 +1,66 @@
{ {
"descriptor": { "descriptor": {
"name": "Docker", "name": "Docker",
"description": "Allows you to easily manage your torrents" "description": "Vous permet de gérer facilement vos torrents"
}, },
"search": { "search": {
"placeholder": "Search by container or image name" "placeholder": "Recherche par nom de conteneur ou d'image"
}, },
"table": { "table": {
"header": { "header": {
"name": "Name", "name": "Nom",
"image": "Image", "image": "Image",
"ports": "Ports", "ports": "Ports",
"state": "State" "state": "État"
}, },
"body": { "body": {
"portCollapse": "{{ports}} more" "portCollapse": "{{ports}} plus"
}, },
"states": { "states": {
"running": "Running", "running": "Running",
"created": "Created", "created": "Créé",
"stopped": "Stopped", "stopped": "Arrêté",
"unknown": "Unknown" "unknown": "Inconnu"
} }
}, },
"actionBar": { "actionBar": {
"addService": { "addService": {
"title": "Add service", "title": "Ajouter un service",
"message": "Add service to Homarr" "message": "Ajouter un service à Homarr"
}, },
"restart": { "restart": {
"title": "Restart" "title": "Redémarrer"
}, },
"stop": { "stop": {
"title": "Stop" "title": "Stop"
}, },
"start": { "start": {
"title": "Start" "title": "Début"
}, },
"refreshData": "Refresh data", "refreshData": "Rafraîchir les données",
"addToHomarr": { "addToHomarr": {
"title": "Add to Homarr" "title": "Ajouter à Homarr"
}, },
"remove": { "remove": {
"title": "Remove" "title": "Retirer"
} }
}, },
"messages": { "messages": {
"successfullyExecuted": { "successfullyExecuted": {
"title": "Container {{containerName}} {{action}}ed", "title": "Conteneur {{containerName}} {{action}}",
"message": "Your container was successfully {{action}}ed" "message": "Votre conteneur a été envoyé avec succès à {{action}}"
} }
}, },
"errors": { "errors": {
"integrationFailed": { "integrationFailed": {
"title": "Docker integration failed", "title": "L'intégration de Docker a échoué",
"message": "Did you forget to mount the docker socket ?" "message": "Avez-vous oublié de monter le docker socket ?"
}, },
"unknownError": { "unknownError": {
"title": "There was an error" "title": "Il y a eu une erreur"
}, },
"oneServiceAtATime": { "oneServiceAtATime": {
"title": "Please only add one service at a time!" "title": "Veuillez n'ajouter qu'un seul service à la fois !"
} }
}, },
"actionIcon": { "actionIcon": {

View File

@@ -1,28 +1,28 @@
{ {
"descriptor": { "descriptor": {
"name": "Overseerr", "name": "Overseerr",
"description": "Allows you to search and add media from Overseerr/Jellyseerr" "description": "Permet de rechercher et d'ajouter des médias depuis Overseerr/Jellyseerr"
}, },
"popup": { "popup": {
"item": { "item": {
"buttons": { "buttons": {
"askFor": "Ask for {{title}}", "askFor": "Demandez {{title}}",
"cancel": "Cancel", "cancel": "Annuler",
"request": "Request" "request": "Demande"
}, },
"alerts": { "alerts": {
"automaticApproval": { "automaticApproval": {
"title": "Using API key", "title": "Utilisation de la clé API",
"text": "This request will be automatically approved" "text": "Cette demande sera automatiquement approuvée"
} }
} }
}, },
"seasonSelector": { "seasonSelector": {
"caption": "Tick the seasons that you want to be downloaded", "caption": "Cochez les saisons que vous souhaitez télécharger",
"table": { "table": {
"header": { "header": {
"season": "Season", "season": "Saison",
"numberOfEpisodes": "Number of episodes" "numberOfEpisodes": "Nombre d'épisodes"
} }
} }
} }

View File

@@ -1,11 +1,11 @@
{ {
"descriptor": { "descriptor": {
"name": "Ping", "name": "Ping",
"description": "Allows you to check if the service is up or returns a specific HTTP status code." "description": "Permet de vérifier si le service est en place ou renvoie un code d'état HTTP spécifique."
}, },
"states": { "states": {
"online": "Online {{response}}", "online": "En ligne {{response}}",
"offline": "Offline {{response}}", "offline": "Hors ligne {{response}}",
"loading": "Loading..." "loading": "Chargement..."
} }
} }

View File

@@ -1,9 +1,9 @@
{ {
"descriptor": { "descriptor": {
"name": "Search Bar", "name": "Barre de recherche",
"description": "Search bar to search the web, youtube, torrents or overseerr" "description": "Barre de recherche pour rechercher sur le web, youtube, les torrents ou overseerr"
}, },
"input": { "input": {
"placeholder": "Search the web..." "placeholder": "Cherchez sur le web..."
} }
} }

View File

@@ -1,39 +1,39 @@
{ {
"descriptor": { "descriptor": {
"name": "Torrent", "name": "Torrent",
"description": "Show the current download speed of supported services", "description": "Afficher la vitesse de téléchargement actuelle des services pris en charge",
"settings": { "settings": {
"hideComplete": { "hideComplete": {
"label": "Hide completed torrents" "label": "Cacher les torrents terminés"
} }
} }
}, },
"card": { "card": {
"table": { "table": {
"header": { "header": {
"name": "Name", "name": "Nom",
"size": "Size", "size": "Taille",
"download": "Down", "download": "Duvet",
"upload": "Up", "upload": "Up",
"estimatedTimeOfArrival": "ETA", "estimatedTimeOfArrival": "ETA",
"progress": "Progress" "progress": "Progrès"
}, },
"body": { "body": {
"nothingFound": "No torrents found" "nothingFound": "Aucun torrent trouvé"
} }
}, },
"lineChart": { "lineChart": {
"title": "Current download speed", "title": "Vitesse de téléchargement actuelle",
"download": "Download: {{download}}", "download": "Télécharger : {{download}}",
"upload": "Upload: {{upload}}", "upload": "Télécharger : {{upload}}",
"timeSpan": "{{seconds}} seconds ago", "timeSpan": "{{seconds}} il y a quelques secondes",
"totalDownload": "Download: {{download}}/s", "totalDownload": "Télécharger : {{download}}/s",
"totalUpload": "Upload : {{upload}}/s" "totalUpload": "Upload : {{upload}}/s"
}, },
"errors": { "errors": {
"noDownloadClients": { "noDownloadClients": {
"title": "No supported download clients found!", "title": "Aucun client de téléchargement supporté n'a été trouvé !",
"text": "Add a download service to view your current downloads" "text": "Ajouter un service de téléchargement pour afficher vos téléchargements en cours"
} }
} }
} }

View File

@@ -1,32 +1,32 @@
{ {
"descriptor": { "descriptor": {
"name": "Weather", "name": "Météo",
"description": "Look up the current weather in your location", "description": "Consultez la météo actuelle dans votre région",
"settings": { "settings": {
"displayInFahrenheit": { "displayInFahrenheit": {
"label": "Display in Fahrenheit" "label": "Affichage en Fahrenheit"
}, },
"location": { "location": {
"label": "Weather location" "label": "Lieu de la météo"
} }
} }
}, },
"card": { "card": {
"weatherDescriptions": { "weatherDescriptions": {
"clear": "Clear", "clear": "Clair",
"mainlyClear": "Mainly clear", "mainlyClear": "Principalement clair",
"fog": "Fog", "fog": "Brouillard",
"drizzle": "Drizzle", "drizzle": "Bruine",
"freezingDrizzle": "Freezing drizzle", "freezingDrizzle": "Bruine glacée",
"rain": "Rain", "rain": "Pluie",
"freezingRain": "Freezing rain", "freezingRain": "Pluie verglaçante",
"snowFall": "Snow fall", "snowFall": "Chute de neige",
"snowGrains": "Snow grains", "snowGrains": "Grains de neige",
"rainShowers": "Rain showers", "rainShowers": "Averses de pluie",
"snowShowers": "Snow showers", "snowShowers": "Averses de neige",
"thunderstorm": "Thunderstorm", "thunderstorm": "Orage",
"thunderstormWithHail": "Thunderstorm with hail", "thunderstormWithHail": "Orage avec grêle",
"unknown": "Unknown" "unknown": "Inconnu"
} }
} }
} }

View File

@@ -1,14 +1,14 @@
{ {
"title": "Settings", "title": "Paramètres",
"tooltip": "Settings", "tooltip": "Paramètres",
"tabs": { "tabs": {
"common": "Common", "common": "Commun",
"customizations": "Customizations" "customizations": "Personnalisations"
}, },
"tips": { "tips": {
"configTip": "Upload your config file by dragging and dropping it onto the page!" "configTip": "Téléchargez votre fichier de configuration en le faisant glisser et en le déposant sur la page !"
}, },
"credits": { "credits": {
"madeWithLove": "Made with ❤️ by @" "madeWithLove": "Fait avec ❤️ par @"
} }
} }

View File

@@ -1,3 +1,3 @@
{ {
"label": "App Width" "label": "Largeur de l'application"
} }

View File

@@ -1,3 +1,3 @@
{ {
"suffix": "{{color}} color" "suffix": "{{color}} couleur"
} }

View File

@@ -1,3 +1,3 @@
{ {
"label": "App Opacity" "label": "Opacité de l'application"
} }

View File

@@ -1,6 +1,6 @@
{ {
"pageTitle": { "pageTitle": {
"label": "Page Title", "label": "Titre de la page",
"placeholder": "Homarr 🦞" "placeholder": "Homarr 🦞"
}, },
"logo": { "logo": {
@@ -12,10 +12,10 @@
"placeholder": "/favicon.png" "placeholder": "/favicon.png"
}, },
"background": { "background": {
"label": "Background", "label": "Contexte",
"placeholder": "/img/background.png" "placeholder": "/img/background.png"
}, },
"buttons": { "buttons": {
"submit": "Submit" "submit": "Soumettre"
} }
} }

View File

@@ -1,3 +1,3 @@
{ {
"label": "Shade" "label": "Ombre"
} }

View File

@@ -1,3 +1,3 @@
{ {
"label": "Switch to {{scheme}} mode" "label": "Passez en mode {{scheme}}"
} }

View File

@@ -1,55 +1,55 @@
{ {
"configSelect": { "configSelect": {
"label": "Config loader" "label": "Chargeur de configuration"
}, },
"modal": { "modal": {
"title": "Choose the name of your new config", "title": "Choisissez le nom de votre nouvelle configuration",
"form": { "form": {
"configName": { "configName": {
"label": "Config name", "label": "Nom de la configuration",
"placeholder": "Your new config name" "placeholder": "Le nom de votre nouvelle configuration"
}, },
"submitButton": "Confirm" "submitButton": "Confirmer"
}, },
"events": { "events": {
"configSaved": { "configSaved": {
"title": "Config saved", "title": "Configuration sauvegardée",
"message": "Config saved as {{configName}}" "message": "Configuration enregistrée sous {{configName}}"
} }
} }
}, },
"buttons": { "buttons": {
"download": "Download config", "download": "Télécharger la configuration",
"delete": { "delete": {
"text": "Delete config", "text": "Supprimer la configuration",
"notifications": { "notifications": {
"deleted": { "deleted": {
"title": "Config deleted", "title": "Config supprimée",
"message": "Config deleted" "message": "Config supprimée"
}, },
"deleteFailed": { "deleteFailed": {
"title": "Config delete failed", "title": "La suppression de la configuration a échoué",
"message": "Config delete failed" "message": "La suppression de la configuration a échoué"
} }
} }
}, },
"saveCopy": "Save a copy" "saveCopy": "Sauvegarder une copie"
}, },
"dropzone": { "dropzone": {
"notifications": { "notifications": {
"invalidConfig": { "invalidConfig": {
"title": "Unable to load config", "title": "Impossible de charger la configuration",
"message": "Could not load your config. Invalid JSON format." "message": "Impossible de charger votre configuration. Format JSON non valide."
}, },
"loadedSuccessfully": { "loadedSuccessfully": {
"title": "Config {{configName}} loaded successfully" "title": "Config {{configName}} chargé avec succès"
} }
}, },
"accept": { "accept": {
"text": "Drag files here to upload a config. Support for JSON only." "text": "Faites glisser les fichiers ici pour télécharger une configuration. Support pour JSON uniquement."
}, },
"reject": { "reject": {
"text": "This file format is not supported. Please only upload JSON." "text": "Ce format de fichier n'est pas pris en charge. Veuillez télécharger uniquement JSON."
} }
} }
} }

View File

@@ -1,3 +1,3 @@
{ {
"label": "Language" "label": "Langue"
} }

View File

@@ -1,11 +1,11 @@
{ {
"title": "Search engine", "title": "Moteur de recherche",
"tips": { "tips": {
"generalTip": "Use the prefixes !yt and !t in front of your query to search on YouTube or for a Torrent respectively.", "generalTip": "Utilisez les préfixes !yt et !t devant votre requête pour rechercher respectivement sur YouTube ou pour un Torrent.",
"placeholderTip": "%s can be used as a placeholder for the query." "placeholderTip": "%s peut être utilisé en tant que placeholder pour la requête."
}, },
"customEngine": { "customEngine": {
"label": "Query URL", "label": "URL de la requête",
"placeholder": "Custom query URL" "placeholder": "URL de requête personnalisée"
} }
} }

View File

@@ -1,3 +1,3 @@
{ {
"label": "Switch to {{theme}} mode" "label": "Passez en mode {{theme}}"
} }

View File

@@ -1,3 +1,3 @@
{ {
"label": "Position widgets on left" "label": "Positionner les widgets à gauche"
} }

View File

@@ -1,6 +1,6 @@
{ {
"actions": { "actions": {
"save": "Save" "save": ""
}, },
"tip": "Tip: " "tip": ""
} }

View File

@@ -1,93 +1,93 @@
{ {
"actionIcon": { "actionIcon": {
"tooltip": "Add a service" "tooltip": ""
}, },
"modal": { "modal": {
"title": "Add service", "title": "",
"form": { "form": {
"validation": { "validation": {
"invalidUrl": "Please enter a valid URL", "invalidUrl": "",
"noStatusCodeSelected": "Please select a status code" "noStatusCodeSelected": ""
} }
}, },
"tabs": { "tabs": {
"options": { "options": {
"title": "Options", "title": "",
"form": { "form": {
"serviceName": { "serviceName": {
"label": "Service name", "label": "",
"placeholder": "Plex" "placeholder": ""
}, },
"iconUrl": { "iconUrl": {
"label": "Icon URL" "label": ""
}, },
"serviceUrl": { "serviceUrl": {
"label": "Service URL" "label": ""
}, },
"onClickUrl": { "onClickUrl": {
"label": "On Click URL" "label": ""
}, },
"serviceType": { "serviceType": {
"label": "Service type", "label": "",
"defaultValue": "Other", "defaultValue": "",
"placeholder": "Pick one" "placeholder": ""
}, },
"category": { "category": {
"label": "Category", "label": "",
"placeholder": "Select a category or create a new one", "placeholder": "",
"nothingFound": "Nothing found", "nothingFound": "",
"createLabel": "+ Create {{query}}" "createLabel": ""
}, },
"integrations": { "integrations": {
"apiKey": { "apiKey": {
"label": "API key", "label": "",
"placeholder": "Your API key", "placeholder": "",
"validation": { "validation": {
"noKey": "Invalid Key" "noKey": ""
}, },
"tip": { "tip": {
"text": "Get your API key", "text": "",
"link": "here." "link": ""
} }
}, },
"qBittorrent": { "qBittorrent": {
"username": { "username": {
"label": "Username", "label": "",
"placeholder": "admin", "placeholder": "",
"validation": { "validation": {
"invalidUsername": "Invalid username" "invalidUsername": ""
} }
}, },
"password": { "password": {
"label": "Password", "label": "",
"placeholder": "adminadmin", "placeholder": "",
"validation": { "validation": {
"invalidPassword": "Invalid password" "invalidPassword": ""
} }
} }
}, },
"deluge": { "deluge": {
"password": { "password": {
"label": "Password", "label": "",
"placeholder": "password", "placeholder": "",
"validation": { "validation": {
"invalidPassword": "Invalid password" "invalidPassword": ""
} }
} }
}, },
"transmission": { "transmission": {
"username": { "username": {
"label": "Username", "label": "",
"placeholder": "admin", "placeholder": "",
"validation": { "validation": {
"invalidUsername": "Invalid username" "invalidUsername": ""
} }
}, },
"password": { "password": {
"label": "Password", "label": "",
"placeholder": "adminadmin", "placeholder": "",
"validation": { "validation": {
"invalidPassword": "Invalid password" "invalidPassword": ""
} }
} }
} }
@@ -95,20 +95,20 @@
} }
}, },
"advancedOptions": { "advancedOptions": {
"title": "Advanced options", "title": "",
"form": { "form": {
"httpStatusCodes": { "httpStatusCodes": {
"label": "HTTP Status Codes", "label": "",
"placeholder": "Select valid status codes", "placeholder": "",
"clearButtonLabel": "Clear selection", "clearButtonLabel": "",
"nothingFound": "Nothing found" "nothingFound": ""
}, },
"openServiceInNewTab": { "openServiceInNewTab": {
"label": "Open service in new tab" "label": ""
}, },
"buttons": { "buttons": {
"submit": { "submit": {
"content": "Add service" "content": ""
} }
} }
} }

View File

@@ -1,18 +1,18 @@
{ {
"modal": { "modal": {
"title": "Modify a service", "title": "",
"buttons": { "buttons": {
"save": "Save service" "save": ""
} }
}, },
"menu": { "menu": {
"labels": { "labels": {
"settings": "Settings", "settings": "",
"dangerZone": "Danger zone" "dangerZone": ""
}, },
"actions": { "actions": {
"edit": "Edit", "edit": "",
"delete": "Delete" "delete": ""
} }
} }
} }

View File

@@ -1,10 +1,10 @@
{ {
"accordions": { "accordions": {
"downloads": { "downloads": {
"text": "Your downloads" "text": ""
}, },
"others": { "others": {
"text": "Others" "text": ""
} }
} }
} }

View File

@@ -1,10 +1,10 @@
{ {
"descriptor": { "descriptor": {
"name": "Calendar", "name": "",
"description": "A calendar module for displaying upcoming releases. It interacts with the Sonarr and Radarr API.", "description": "",
"settings": { "settings": {
"sundayStart": { "sundayStart": {
"label": "Start the week on Sunday" "label": ""
} }
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"buttons": { "buttons": {
"play": "Play", "play": "",
"request": "Request" "request": ""
} }
} }

View File

@@ -1,5 +1,5 @@
{ {
"settings": { "settings": {
"label": "Settings" "label": ""
} }
} }

View File

@@ -1,59 +1,59 @@
{ {
"descriptor": { "descriptor": {
"name": "Dash.", "name": "",
"description": "A module for displaying the graphs of your running Dash. instance.", "description": "",
"settings": { "settings": {
"cpuMultiView": { "cpuMultiView": {
"label": "CPU Multi-Core View" "label": ""
}, },
"storageMultiView": { "storageMultiView": {
"label": "Storage Multi-Drive View" "label": ""
}, },
"useCompactView": { "useCompactView": {
"label": "Use Compact View" "label": ""
}, },
"graphs": { "graphs": {
"label": "Graphs", "label": "",
"options": { "options": {
"cpu": "CPU", "cpu": "",
"ram": "RAM", "ram": "",
"storage": "Storage", "storage": "",
"network": "Network", "network": "",
"gpu": "GPU" "gpu": ""
} }
}, },
"url": { "url": {
"label": "Dash. URL" "label": ""
} }
} }
}, },
"card": { "card": {
"title": "Dash.", "title": "",
"errors": { "errors": {
"noService": "No dash. service found. Please add one to your Homarr dashboard or set a dashdot URL in the module options", "noService": "",
"noInformation": "Cannot acquire information from dash. - are you running the latest version?" "noInformation": ""
}, },
"graphs": { "graphs": {
"storage": { "storage": {
"title": "Storage", "title": "",
"label": "Storage:" "label": ""
}, },
"network": { "network": {
"title": "Network", "title": "",
"label": "Network:", "label": "",
"metrics": { "metrics": {
"download": "Down", "download": "",
"upload": "Up" "upload": ""
} }
}, },
"cpu": { "cpu": {
"title": "CPU" "title": ""
}, },
"memory": { "memory": {
"title": "RAM" "title": ""
}, },
"gpu": { "gpu": {
"title": "GPU" "title": ""
} }
} }
} }

View File

@@ -1,10 +1,10 @@
{ {
"descriptor": { "descriptor": {
"name": "Date", "name": "",
"description": "Show the current time and date in a card", "description": "",
"settings": { "settings": {
"display24HourFormat": { "display24HourFormat": {
"label": "Display full time (24-hour)" "label": ""
} }
} }
} }

View File

@@ -1,6 +1,6 @@
{ {
"descriptor": { "descriptor": {
"name": "Download Speed", "name": "",
"description": "Show the current download speed of supported services" "description": ""
} }
} }

View File

@@ -1,69 +1,69 @@
{ {
"descriptor": { "descriptor": {
"name": "Docker", "name": "",
"description": "Allows you to easily manage your torrents" "description": ""
}, },
"search": { "search": {
"placeholder": "Search by container or image name" "placeholder": ""
}, },
"table": { "table": {
"header": { "header": {
"name": "Name", "name": "",
"image": "Image", "image": "",
"ports": "Ports", "ports": "",
"state": "State" "state": ""
}, },
"body": { "body": {
"portCollapse": "{{ports}} more" "portCollapse": ""
}, },
"states": { "states": {
"running": "Running", "running": "",
"created": "Created", "created": "",
"stopped": "Stopped", "stopped": "",
"unknown": "Unknown" "unknown": ""
} }
}, },
"actionBar": { "actionBar": {
"addService": { "addService": {
"title": "Add service", "title": "",
"message": "Add service to Homarr" "message": ""
}, },
"restart": { "restart": {
"title": "Restart" "title": ""
}, },
"stop": { "stop": {
"title": "Stop" "title": ""
}, },
"start": { "start": {
"title": "Start" "title": ""
}, },
"refreshData": "Refresh data", "refreshData": "",
"addToHomarr": { "addToHomarr": {
"title": "Add to Homarr" "title": ""
}, },
"remove": { "remove": {
"title": "Remove" "title": ""
} }
}, },
"messages": { "messages": {
"successfullyExecuted": { "successfullyExecuted": {
"title": "Container {{containerName}} {{action}}ed", "title": "",
"message": "Your container was successfully {{action}}ed" "message": ""
} }
}, },
"errors": { "errors": {
"integrationFailed": { "integrationFailed": {
"title": "Docker integration failed", "title": "",
"message": "Did you forget to mount the docker socket ?" "message": ""
}, },
"unknownError": { "unknownError": {
"title": "There was an error" "title": ""
}, },
"oneServiceAtATime": { "oneServiceAtATime": {
"title": "Please only add one service at a time!" "title": ""
} }
}, },
"actionIcon": { "actionIcon": {
"tooltip": "Docker" "tooltip": ""
} }
} }

View File

@@ -1,28 +1,28 @@
{ {
"descriptor": { "descriptor": {
"name": "Overseerr", "name": "",
"description": "Allows you to search and add media from Overseerr/Jellyseerr" "description": ""
}, },
"popup": { "popup": {
"item": { "item": {
"buttons": { "buttons": {
"askFor": "Ask for {{title}}", "askFor": "",
"cancel": "Cancel", "cancel": "",
"request": "Request" "request": ""
}, },
"alerts": { "alerts": {
"automaticApproval": { "automaticApproval": {
"title": "Using API key", "title": "",
"text": "This request will be automatically approved" "text": ""
} }
} }
}, },
"seasonSelector": { "seasonSelector": {
"caption": "Tick the seasons that you want to be downloaded", "caption": "",
"table": { "table": {
"header": { "header": {
"season": "Season", "season": "",
"numberOfEpisodes": "Number of episodes" "numberOfEpisodes": ""
} }
} }
} }

View File

@@ -1,11 +1,11 @@
{ {
"descriptor": { "descriptor": {
"name": "Ping", "name": "",
"description": "Allows you to check if the service is up or returns a specific HTTP status code." "description": ""
}, },
"states": { "states": {
"online": "Online {{response}}", "online": "",
"offline": "Offline {{response}}", "offline": "",
"loading": "Loading..." "loading": ""
} }
} }

View File

@@ -1,9 +1,9 @@
{ {
"descriptor": { "descriptor": {
"name": "Search Bar", "name": "",
"description": "Search bar to search the web, youtube, torrents or overseerr" "description": ""
}, },
"input": { "input": {
"placeholder": "Search the web..." "placeholder": ""
} }
} }

View File

@@ -1,39 +1,39 @@
{ {
"descriptor": { "descriptor": {
"name": "Torrent", "name": "",
"description": "Show the current download speed of supported services", "description": "",
"settings": { "settings": {
"hideComplete": { "hideComplete": {
"label": "Hide completed torrents" "label": ""
} }
} }
}, },
"card": { "card": {
"table": { "table": {
"header": { "header": {
"name": "Name", "name": "",
"size": "Size", "size": "",
"download": "Down", "download": "",
"upload": "Up", "upload": "",
"estimatedTimeOfArrival": "ETA", "estimatedTimeOfArrival": "",
"progress": "Progress" "progress": ""
}, },
"body": { "body": {
"nothingFound": "No torrents found" "nothingFound": ""
} }
}, },
"lineChart": { "lineChart": {
"title": "Current download speed", "title": "",
"download": "Download: {{download}}", "download": "",
"upload": "Upload: {{upload}}", "upload": "",
"timeSpan": "{{seconds}} seconds ago", "timeSpan": "",
"totalDownload": "Download: {{download}}/s", "totalDownload": "",
"totalUpload": "Upload: {{upload}}/s" "totalUpload": ""
}, },
"errors": { "errors": {
"noDownloadClients": { "noDownloadClients": {
"title": "No supported download clients found!", "title": "",
"text": "Add a download service to view your current downloads" "text": ""
} }
} }
} }

View File

@@ -1,32 +1,32 @@
{ {
"descriptor": { "descriptor": {
"name": "Weather", "name": "",
"description": "Look up the current weather in your location", "description": "",
"settings": { "settings": {
"displayInFahrenheit": { "displayInFahrenheit": {
"label": "Display in Fahrenheit" "label": ""
}, },
"location": { "location": {
"label": "Weather location" "label": ""
} }
} }
}, },
"card": { "card": {
"weatherDescriptions": { "weatherDescriptions": {
"clear": "Clear", "clear": "",
"mainlyClear": "Mainly clear", "mainlyClear": "",
"fog": "Fog", "fog": "",
"drizzle": "Drizzle", "drizzle": "",
"freezingDrizzle": "Freezing drizzle", "freezingDrizzle": "",
"rain": "Rain", "rain": "",
"freezingRain": "Freezing rain", "freezingRain": "",
"snowFall": "Snow fall", "snowFall": "",
"snowGrains": "Snow grains", "snowGrains": "",
"rainShowers": "Rain showers", "rainShowers": "",
"snowShowers": "Snow showers", "snowShowers": "",
"thunderstorm": "Thunderstorm", "thunderstorm": "",
"thunderstormWithHail": "Thunderstorm with hail", "thunderstormWithHail": "",
"unknown": "Unknown" "unknown": ""
} }
} }
} }

View File

@@ -1,14 +1,14 @@
{ {
"title": "Settings", "title": "",
"tooltip": "Settings", "tooltip": "",
"tabs": { "tabs": {
"common": "Common", "common": "",
"customizations": "Customizations" "customizations": ""
}, },
"tips": { "tips": {
"configTip": "Upload your config file by dragging and dropping it onto the page!" "configTip": ""
}, },
"credits": { "credits": {
"madeWithLove": "Made with ❤️ by @" "madeWithLove": ""
} }
} }

View File

@@ -1,3 +1 @@
{ {}
"label": "App Width"
}

View File

@@ -1,3 +1 @@
{ {}
"suffix": "{{color}} color"
}

View File

@@ -1,3 +1 @@
{ {}
"label": "App Opacity"
}

Some files were not shown because too many files have changed in this diff Show More