Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e93343b06b | ||
|
|
ba7786d337 | ||
|
|
e23a6bfc3b | ||
|
|
62b789321d | ||
|
|
2ee2c70e9e |
@@ -1,2 +1,2 @@
|
|||||||
export const REPO_URL = 'ajnart/homarr';
|
export const REPO_URL = 'ajnart/homarr';
|
||||||
export const CURRENT_VERSION = 'v0.10.1';
|
export const CURRENT_VERSION = 'v0.10.2';
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "homarr",
|
"name": "homarr",
|
||||||
"version": "0.10.1",
|
"version": "0.10.2",
|
||||||
"description": "Homarr - A homepage for your server.",
|
"description": "Homarr - A homepage for your server.",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|||||||
@@ -1,27 +1,27 @@
|
|||||||
{
|
{
|
||||||
"title": "",
|
"title": "¡Bienvenido/a otra vez!",
|
||||||
"text": "",
|
"text": "Por favor, introduce la Contraseña",
|
||||||
"form": {
|
"form": {
|
||||||
"fields": {
|
"fields": {
|
||||||
"password": {
|
"password": {
|
||||||
"label": "Contraseña",
|
"label": "Contraseña",
|
||||||
"placeholder": ""
|
"placeholder": "Tu contraseña"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"buttons": {
|
"buttons": {
|
||||||
"submit": ""
|
"submit": "Iniciar sesión"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"notifications": {
|
"notifications": {
|
||||||
"checking": {
|
"checking": {
|
||||||
"title": "",
|
"title": "Comprobando tu contraseña",
|
||||||
"message": ""
|
"message": "Tu contraseña está siendo comprobada..."
|
||||||
},
|
},
|
||||||
"correct": {
|
"correct": {
|
||||||
"title": ""
|
"title": "Contraseña correcta, redireccionándote..."
|
||||||
},
|
},
|
||||||
"wrong": {
|
"wrong": {
|
||||||
"title": ""
|
"title": "Contraseña incorrecta, por favor, intenta otra vez."
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,8 +34,8 @@
|
|||||||
},
|
},
|
||||||
"category": {
|
"category": {
|
||||||
"label": "Categoría",
|
"label": "Categoría",
|
||||||
"placeholder": "Selecciona una categoría o cree una nueva",
|
"placeholder": "Seleccione una categoría o cree una nueva",
|
||||||
"nothingFound": "No se ha encontrado nada",
|
"nothingFound": "No se ha encontrado ningún resultado",
|
||||||
"createLabel": "+ Crear {{query}}"
|
"createLabel": "+ Crear {{query}}"
|
||||||
},
|
},
|
||||||
"integrations": {
|
"integrations": {
|
||||||
@@ -101,7 +101,7 @@
|
|||||||
"label": "Códigos de Estado HTTP",
|
"label": "Códigos de Estado HTTP",
|
||||||
"placeholder": "Seleccionar códigos de estado válidos",
|
"placeholder": "Seleccionar códigos de estado válidos",
|
||||||
"clearButtonLabel": "Borrar selección",
|
"clearButtonLabel": "Borrar selección",
|
||||||
"nothingFound": "No se ha encontrado nada"
|
"nothingFound": "No se ha encontrado ningún resultado"
|
||||||
},
|
},
|
||||||
"openServiceInNewTab": {
|
"openServiceInNewTab": {
|
||||||
"label": "Abrir el servicio en una nueva pestaña"
|
"label": "Abrir el servicio en una nueva pestaña"
|
||||||
|
|||||||
@@ -1,27 +1,27 @@
|
|||||||
{
|
{
|
||||||
"title": "",
|
"title": "Bienvenue !",
|
||||||
"text": "",
|
"text": "Veuillez entrer votre mot de passe",
|
||||||
"form": {
|
"form": {
|
||||||
"fields": {
|
"fields": {
|
||||||
"password": {
|
"password": {
|
||||||
"label": "Mot de passe",
|
"label": "Mot de passe",
|
||||||
"placeholder": ""
|
"placeholder": "Votre mot de passe"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"buttons": {
|
"buttons": {
|
||||||
"submit": ""
|
"submit": "Se connecter"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"notifications": {
|
"notifications": {
|
||||||
"checking": {
|
"checking": {
|
||||||
"title": "",
|
"title": "Vérification de votre mot de passe",
|
||||||
"message": ""
|
"message": "Votre mot de passe est en cours de vérification..."
|
||||||
},
|
},
|
||||||
"correct": {
|
"correct": {
|
||||||
"title": ""
|
"title": "Mot de passe correct, redirection en cours..."
|
||||||
},
|
},
|
||||||
"wrong": {
|
"wrong": {
|
||||||
"title": ""
|
"title": "Mot de passe erroné, veuillez réessayer."
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,8 +35,8 @@
|
|||||||
"title": "Réseau",
|
"title": "Réseau",
|
||||||
"label": "Réseau :",
|
"label": "Réseau :",
|
||||||
"metrics": {
|
"metrics": {
|
||||||
"download": "Duvet",
|
"download": "Descendant",
|
||||||
"upload": "Up"
|
"upload": "Montant"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"cpu": {
|
"cpu": {
|
||||||
|
|||||||
@@ -1,27 +1,27 @@
|
|||||||
{
|
{
|
||||||
"title": "",
|
"title": "Dobrodošli nazaj!",
|
||||||
"text": "",
|
"text": "Prosimo vnesite geslo",
|
||||||
"form": {
|
"form": {
|
||||||
"fields": {
|
"fields": {
|
||||||
"password": {
|
"password": {
|
||||||
"label": "Geslo",
|
"label": "Geslo",
|
||||||
"placeholder": ""
|
"placeholder": "Vaše geslo"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"buttons": {
|
"buttons": {
|
||||||
"submit": ""
|
"submit": "Prijava"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"notifications": {
|
"notifications": {
|
||||||
"checking": {
|
"checking": {
|
||||||
"title": "",
|
"title": "Preverjanje gesla",
|
||||||
"message": ""
|
"message": "Preverjamo vaše geslo..."
|
||||||
},
|
},
|
||||||
"correct": {
|
"correct": {
|
||||||
"title": ""
|
"title": "Geslo je pravilno, preusmerjam..."
|
||||||
},
|
},
|
||||||
"wrong": {
|
"wrong": {
|
||||||
"title": ""
|
"title": "Geslo je napačno, poskusite znova."
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,27 +1,27 @@
|
|||||||
{
|
{
|
||||||
"title": "",
|
"title": "Välkommen tillbaka!",
|
||||||
"text": "",
|
"text": "Vänligen ange lösenordet",
|
||||||
"form": {
|
"form": {
|
||||||
"fields": {
|
"fields": {
|
||||||
"password": {
|
"password": {
|
||||||
"label": "Lösenord",
|
"label": "Lösenord",
|
||||||
"placeholder": ""
|
"placeholder": "Ditt lösenord"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"buttons": {
|
"buttons": {
|
||||||
"submit": ""
|
"submit": "Logga in"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"notifications": {
|
"notifications": {
|
||||||
"checking": {
|
"checking": {
|
||||||
"title": "",
|
"title": "Kontrollerar ditt lösenord",
|
||||||
"message": ""
|
"message": "Ditt lösenord kontrolleras..."
|
||||||
},
|
},
|
||||||
"correct": {
|
"correct": {
|
||||||
"title": ""
|
"title": "Lösenord korrekt, omdirigerar dig..."
|
||||||
},
|
},
|
||||||
"wrong": {
|
"wrong": {
|
||||||
"title": ""
|
"title": "Lösenordet är fel, försök igen."
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,27 +1,27 @@
|
|||||||
{
|
{
|
||||||
"title": "",
|
"title": "欢迎回来!",
|
||||||
"text": "",
|
"text": "请输入密码",
|
||||||
"form": {
|
"form": {
|
||||||
"fields": {
|
"fields": {
|
||||||
"password": {
|
"password": {
|
||||||
"label": "密码",
|
"label": "密码",
|
||||||
"placeholder": ""
|
"placeholder": "你的密码"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"buttons": {
|
"buttons": {
|
||||||
"submit": ""
|
"submit": "登录"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"notifications": {
|
"notifications": {
|
||||||
"checking": {
|
"checking": {
|
||||||
"title": "",
|
"title": "检查你的密码",
|
||||||
"message": ""
|
"message": "正在检查你的密码..."
|
||||||
},
|
},
|
||||||
"correct": {
|
"correct": {
|
||||||
"title": ""
|
"title": "密码正确,正在重定向..."
|
||||||
},
|
},
|
||||||
"wrong": {
|
"wrong": {
|
||||||
"title": ""
|
"title": "密码错误,请重试。"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,16 +34,16 @@
|
|||||||
},
|
},
|
||||||
"category": {
|
"category": {
|
||||||
"label": "类型",
|
"label": "类型",
|
||||||
"placeholder": "选择一个类别或创建一个新类别",
|
"placeholder": "选择或创建一个新类别",
|
||||||
"nothingFound": "没有找到",
|
"nothingFound": "没有找到",
|
||||||
"createLabel": "+ 创建 {{query}}"
|
"createLabel": "+ 创建 {{query}}"
|
||||||
},
|
},
|
||||||
"integrations": {
|
"integrations": {
|
||||||
"apiKey": {
|
"apiKey": {
|
||||||
"label": "API key",
|
"label": "API密钥",
|
||||||
"placeholder": "你的API密钥",
|
"placeholder": "你的API密钥",
|
||||||
"validation": {
|
"validation": {
|
||||||
"noKey": "无效key"
|
"noKey": "无效秘钥"
|
||||||
},
|
},
|
||||||
"tip": {
|
"tip": {
|
||||||
"text": "获取你的API密钥",
|
"text": "获取你的API密钥",
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"descriptor": {
|
"descriptor": {
|
||||||
"name": "潇洒。",
|
"name": "Dash.",
|
||||||
"description": "用于显示运行中的Dash.instance的图表的模块。",
|
"description": "一个显示运行中的仪表板实例的图表模块。",
|
||||||
"settings": {
|
"settings": {
|
||||||
"cpuMultiView": {
|
"cpuMultiView": {
|
||||||
"label": "CPU多核视图"
|
"label": "CPU多核视图"
|
||||||
@@ -16,27 +16,27 @@
|
|||||||
"label": "图表"
|
"label": "图表"
|
||||||
},
|
},
|
||||||
"url": {
|
"url": {
|
||||||
"label": "Dash. URL"
|
"label": "Dash. 网址"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"card": {
|
"card": {
|
||||||
"title": "潇洒。",
|
"title": "Dash.",
|
||||||
"errors": {
|
"errors": {
|
||||||
"noService": "没有找到Dash.服务。请在你的Homarr仪表板上添加一个,或者在模块选项中设置一个Dash.URL。URL在模块选项中",
|
"noService": "没有找到Dash.服务。请在你的Homarr仪表板上添加,或者设置一个仪表板网址。网址在应用选项中添加",
|
||||||
"noInformation": "无法从仪表盘获取信息。- 你运行的是最新版本吗?"
|
"noInformation": "无法从仪表板获取信息。- 你运行的是最新版本吗?"
|
||||||
},
|
},
|
||||||
"graphs": {
|
"graphs": {
|
||||||
"storage": {
|
"storage": {
|
||||||
"title": "储存",
|
"title": "存储",
|
||||||
"label": "储存。"
|
"label": "存储:"
|
||||||
},
|
},
|
||||||
"network": {
|
"network": {
|
||||||
"title": "网络",
|
"title": "网络",
|
||||||
"label": "网络。",
|
"label": "网络:",
|
||||||
"metrics": {
|
"metrics": {
|
||||||
"download": "下降",
|
"download": "下移",
|
||||||
"upload": "上"
|
"upload": "上移"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"cpu": {
|
"cpu": {
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
"description": "在卡片中显示当前时间和日期",
|
"description": "在卡片中显示当前时间和日期",
|
||||||
"settings": {
|
"settings": {
|
||||||
"display24HourFormat": {
|
"display24HourFormat": {
|
||||||
"label": "显示全时(24小时)"
|
"label": "显示完整时间 (24小时)"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"descriptor": {
|
"descriptor": {
|
||||||
"name": "码头",
|
"name": "Docker",
|
||||||
"description": "允许你轻松地管理你的torrent文件"
|
"description": "允许你轻松地管理你的torrent文件"
|
||||||
},
|
},
|
||||||
"search": {
|
"search": {
|
||||||
@@ -8,25 +8,25 @@
|
|||||||
},
|
},
|
||||||
"table": {
|
"table": {
|
||||||
"header": {
|
"header": {
|
||||||
"name": "命名",
|
"name": "名称",
|
||||||
"image": "图片",
|
"image": "镜像",
|
||||||
"ports": "码头",
|
"ports": "端口",
|
||||||
"state": "国家"
|
"state": "状态"
|
||||||
},
|
},
|
||||||
"body": {
|
"body": {
|
||||||
"portCollapse": "{{ports}} 更多"
|
"portCollapse": "{{ports}} 更多"
|
||||||
},
|
},
|
||||||
"states": {
|
"states": {
|
||||||
"running": "跑步",
|
"running": "运行中",
|
||||||
"created": "创建",
|
"created": "已创建",
|
||||||
"stopped": "已停止",
|
"stopped": "已停止",
|
||||||
"unknown": "不详"
|
"unknown": "未知"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"actionBar": {
|
"actionBar": {
|
||||||
"addService": {
|
"addService": {
|
||||||
"title": "添加应用",
|
"title": "添加应用",
|
||||||
"message": "为Homarr添加服务"
|
"message": "添加服务到 Homarr"
|
||||||
},
|
},
|
||||||
"restart": {
|
"restart": {
|
||||||
"title": "重新启动"
|
"title": "重新启动"
|
||||||
@@ -49,8 +49,8 @@
|
|||||||
},
|
},
|
||||||
"messages": {
|
"messages": {
|
||||||
"successfullyExecuted": {
|
"successfullyExecuted": {
|
||||||
"title": "容器 {{containerName}} {{action}}ed",
|
"title": "容器 {{containerName}} {{action}}已完成",
|
||||||
"message": "您的容器已成功 {{action}}。"
|
"message": "你的容器已成功 {{action}}。"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"errors": {
|
"errors": {
|
||||||
@@ -66,6 +66,6 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"actionIcon": {
|
"actionIcon": {
|
||||||
"tooltip": "码头"
|
"tooltip": "Docker"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"descriptor": {
|
"descriptor": {
|
||||||
"name": "监督员r",
|
"name": "Overseerr",
|
||||||
"description": "允许你从Overseerr/Jellyseerr搜索和添加媒体"
|
"description": "允许你从Overseerr/Jellyseerr搜索和添加媒体"
|
||||||
},
|
},
|
||||||
"popup": {
|
"popup": {
|
||||||
@@ -18,11 +18,11 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"seasonSelector": {
|
"seasonSelector": {
|
||||||
"caption": "勾选你想要下载的季节",
|
"caption": "勾选你想要下载的季数",
|
||||||
"table": {
|
"table": {
|
||||||
"header": {
|
"header": {
|
||||||
"season": "季节",
|
"season": "季数",
|
||||||
"numberOfEpisodes": "节目的数量"
|
"numberOfEpisodes": "剧集数"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"descriptor": {
|
"descriptor": {
|
||||||
"name": "平",
|
"name": "Ping",
|
||||||
"description": "允许你检查服务是否启动或返回一个特定的HTTP状态代码。"
|
"description": "允许你检查服务是否启动或返回一个特定的HTTP状态代码。"
|
||||||
},
|
},
|
||||||
"states": {
|
"states": {
|
||||||
|
|||||||
@@ -1,38 +1,38 @@
|
|||||||
{
|
{
|
||||||
"descriptor": {
|
"descriptor": {
|
||||||
"name": "酷刑",
|
"name": "Torrent",
|
||||||
"description": "显示支持的服务的当前下载速度",
|
"description": "显示支持的服务的当前下载速度",
|
||||||
"settings": {
|
"settings": {
|
||||||
"hideComplete": {
|
"hideComplete": {
|
||||||
"label": "隐藏已完成的torrent"
|
"label": "隐藏已完成的种子"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"card": {
|
"card": {
|
||||||
"table": {
|
"table": {
|
||||||
"header": {
|
"header": {
|
||||||
"name": "命名",
|
"name": "名称",
|
||||||
"size": "尺寸",
|
"size": "大小",
|
||||||
"download": "下降",
|
"download": "下移",
|
||||||
"upload": "上",
|
"upload": "上移",
|
||||||
"estimatedTimeOfArrival": "ETA",
|
"estimatedTimeOfArrival": "剩余时间",
|
||||||
"progress": "进展"
|
"progress": "进度"
|
||||||
},
|
},
|
||||||
"body": {
|
"body": {
|
||||||
"nothingFound": "没有找到山洪资源"
|
"nothingFound": "没有找到种子"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"lineChart": {
|
"lineChart": {
|
||||||
"title": "当前的下载速度",
|
"title": "当前下载速度",
|
||||||
"download": "下载。 {{download}}",
|
"download": "下载:{{download}}",
|
||||||
"upload": "上传。 {{upload}}",
|
"upload": "上传: {{upload}}",
|
||||||
"timeSpan": "{{seconds}} 秒前",
|
"timeSpan": "{{seconds}} 秒前",
|
||||||
"totalDownload": "下载。 {{download}}/s",
|
"totalDownload": "下载: {{download}}/秒",
|
||||||
"totalUpload": "上传。 {{upload}}/s"
|
"totalUpload": "上传: {{upload}}/秒"
|
||||||
},
|
},
|
||||||
"errors": {
|
"errors": {
|
||||||
"noDownloadClients": {
|
"noDownloadClients": {
|
||||||
"title": "没有找到支持的下载客户端!",
|
"title": "没有找到支持的下载客户端!",
|
||||||
"text": "添加下载服务,查看你当前的下载量"
|
"text": "添加下载服务,查看你当前的下载量"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,48 +1,48 @@
|
|||||||
{
|
{
|
||||||
"descriptor": {
|
"descriptor": {
|
||||||
"name": "Sabnzbd",
|
"name": "Sabnzbd",
|
||||||
"description": "允许您查看您的Sabnzbd队列和历史,暂停和恢复下载"
|
"description": "允许您查看您的Sabnzbd队列和历史,进行暂停和恢复下载操作"
|
||||||
},
|
},
|
||||||
"card": {
|
"card": {
|
||||||
"errors": {
|
"errors": {
|
||||||
"noDownloadClients": {
|
"noDownloadClients": {
|
||||||
"title": "没有找到支持的下载客户端!",
|
"title": "没有找到支持的下载客户端!",
|
||||||
"text": "添加下载服务,查看你当前的下载量"
|
"text": "添加下载服务,查看你当前的下载量"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tabs": {
|
"tabs": {
|
||||||
"queue": "排队",
|
"queue": "队列",
|
||||||
"history": "历史"
|
"history": "历史"
|
||||||
},
|
},
|
||||||
"info": {
|
"info": {
|
||||||
"sizeLeft": "左侧尺寸",
|
"sizeLeft": "左侧大小",
|
||||||
"paused": "暂停使用"
|
"paused": "暂停使用"
|
||||||
},
|
},
|
||||||
"queue": {
|
"queue": {
|
||||||
"header": {
|
"header": {
|
||||||
"name": "命名",
|
"name": "名称",
|
||||||
"size": "尺寸",
|
"size": "大小",
|
||||||
"eta": "ETA",
|
"eta": "剩余时间",
|
||||||
"progress": "进展"
|
"progress": "进度"
|
||||||
},
|
},
|
||||||
"empty": "空的",
|
"empty": "空的",
|
||||||
"error": {
|
"error": {
|
||||||
"title": "误差",
|
"title": "错误",
|
||||||
"message": "发生了一个错误"
|
"message": "出错了"
|
||||||
},
|
},
|
||||||
"paused": "暂停使用"
|
"paused": "暂停使用"
|
||||||
},
|
},
|
||||||
"history": {
|
"history": {
|
||||||
"header": {
|
"header": {
|
||||||
"name": "命名",
|
"name": "名称",
|
||||||
"size": "尺寸",
|
"size": "大小",
|
||||||
"duration": "时间"
|
"duration": "持续时间"
|
||||||
},
|
},
|
||||||
"empty": "空的",
|
"empty": "空的",
|
||||||
"error": {
|
"error": {
|
||||||
"title": "误差",
|
"title": "错误",
|
||||||
"message": "错误加载历史记录"
|
"message": "加载历史记录时出错"
|
||||||
},
|
},
|
||||||
"paused": "暂停使用"
|
"paused": "暂停使用"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
{
|
{
|
||||||
"descriptor": {
|
"descriptor": {
|
||||||
"name": "天气",
|
"name": "天气",
|
||||||
"description": "查询你所在地区的当前天气",
|
"description": "查看你所在地区的当前天气",
|
||||||
"settings": {
|
"settings": {
|
||||||
"displayInFahrenheit": {
|
"displayInFahrenheit": {
|
||||||
"label": "显示单位:华氏"
|
"label": "显示为华氏度"
|
||||||
},
|
},
|
||||||
"location": {
|
"location": {
|
||||||
"label": "天气位置"
|
"label": "天气位置"
|
||||||
@@ -13,20 +13,20 @@
|
|||||||
},
|
},
|
||||||
"card": {
|
"card": {
|
||||||
"weatherDescriptions": {
|
"weatherDescriptions": {
|
||||||
"clear": "清楚",
|
"clear": "晴朗",
|
||||||
"mainlyClear": "主要是清楚",
|
"mainlyClear": "晴朗为主",
|
||||||
"fog": "雾",
|
"fog": "雾",
|
||||||
"drizzle": "细雨",
|
"drizzle": "细雨",
|
||||||
"freezingDrizzle": "冰冷的细雨",
|
"freezingDrizzle": "冷细雨",
|
||||||
"rain": "雨",
|
"rain": "雨",
|
||||||
"freezingRain": "冻雨",
|
"freezingRain": "冻雨",
|
||||||
"snowFall": "降雪",
|
"snowFall": "降雪",
|
||||||
"snowGrains": "雪粒",
|
"snowGrains": "米雪",
|
||||||
"rainShowers": "阵雨",
|
"rainShowers": "阵雨",
|
||||||
"snowShowers": "阵雪",
|
"snowShowers": "阵雪",
|
||||||
"thunderstorm": "雷雨天气",
|
"thunderstorm": "雷雨天气",
|
||||||
"thunderstormWithHail": "雷暴与冰雹",
|
"thunderstormWithHail": "雷暴夹冰雹",
|
||||||
"unknown": "不详"
|
"unknown": "未知"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"title": "设置",
|
"title": "设置",
|
||||||
"tooltip": "设置",
|
"tooltip": "设置",
|
||||||
"tabs": {
|
"tabs": {
|
||||||
"common": "普通",
|
"common": "常规",
|
||||||
"customizations": "定制化"
|
"customizations": "个性化"
|
||||||
},
|
},
|
||||||
"tips": {
|
"tips": {
|
||||||
"configTip": "将你的配置文件拖放到页面上,就可以上传了!"
|
"configTip": "将你的配置文件拖放到页面上,就可以上传了!"
|
||||||
},
|
},
|
||||||
"credits": {
|
"credits": {
|
||||||
"madeWithLove": "用❤️制作的@"
|
"madeWithLove": "用❤️创造,出品于"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,18 +1,18 @@
|
|||||||
{
|
{
|
||||||
"pageTitle": {
|
"pageTitle": {
|
||||||
"label": "页面标题",
|
"label": "页面标题",
|
||||||
"placeholder": "霍马尔 🦞"
|
"placeholder": "Homarr 🦞"
|
||||||
},
|
},
|
||||||
"logo": {
|
"logo": {
|
||||||
"label": "徽标",
|
"label": "徽标",
|
||||||
"placeholder": "/img/logo.png"
|
"placeholder": "/img/logo.png"
|
||||||
},
|
},
|
||||||
"favicon": {
|
"favicon": {
|
||||||
"label": "徽标(Favicon",
|
"label": "网站图标",
|
||||||
"placeholder": "/favicon.png"
|
"placeholder": "/favicon.png"
|
||||||
},
|
},
|
||||||
"background": {
|
"background": {
|
||||||
"label": "背景介绍",
|
"label": "背景",
|
||||||
"placeholder": "/img/background.png"
|
"placeholder": "/img/background.png"
|
||||||
},
|
},
|
||||||
"customCSS": {
|
"customCSS": {
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
{
|
{
|
||||||
"label": "遮阳板"
|
"label": "阴影"
|
||||||
}
|
}
|
||||||
@@ -13,7 +13,7 @@
|
|||||||
},
|
},
|
||||||
"events": {
|
"events": {
|
||||||
"configSaved": {
|
"configSaved": {
|
||||||
"title": "保存的配置",
|
"title": "配置已保存",
|
||||||
"message": "配置保存为 {{configName}}"
|
"message": "配置保存为 {{configName}}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -24,8 +24,8 @@
|
|||||||
"text": "删除配置",
|
"text": "删除配置",
|
||||||
"notifications": {
|
"notifications": {
|
||||||
"deleted": {
|
"deleted": {
|
||||||
"title": "配置删除",
|
"title": "配置已删除",
|
||||||
"message": "配置删除"
|
"message": "配置已删除"
|
||||||
},
|
},
|
||||||
"deleteFailed": {
|
"deleteFailed": {
|
||||||
"title": "配置删除失败",
|
"title": "配置删除失败",
|
||||||
@@ -42,7 +42,7 @@
|
|||||||
"message": "无法加载您的配置。无效的JSON格式。"
|
"message": "无法加载您的配置。无效的JSON格式。"
|
||||||
},
|
},
|
||||||
"loadedSuccessfully": {
|
"loadedSuccessfully": {
|
||||||
"title": "配置 {{configName}} ,成功加载。"
|
"title": "配置 {{configName}} 已成功加载。"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"accept": {
|
"accept": {
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
{
|
{
|
||||||
"title": "模块使能器"
|
"title": "启用模块"
|
||||||
}
|
}
|
||||||
@@ -1,11 +1,11 @@
|
|||||||
{
|
{
|
||||||
"title": "搜索引擎",
|
"title": "搜索引擎",
|
||||||
"tips": {
|
"tips": {
|
||||||
"generalTip": "在你的查询前使用前缀 !yt和 !t,分别在YouTube上搜索或搜索Torrent。",
|
"generalTip": "在查询前使用前缀 !yt和 !t,可以在YouTube或Torrent中搜索。",
|
||||||
"placeholderTip": "%s 可以作为查询的占位符。"
|
"placeholderTip": "%s 可以作为查询的占位符。"
|
||||||
},
|
},
|
||||||
"customEngine": {
|
"customEngine": {
|
||||||
"label": "查询网址",
|
"label": "查询网址",
|
||||||
"placeholder": "自定义查询URL"
|
"placeholder": "自定义查询网址"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -26,6 +26,7 @@ import { useEffect, useState } from 'react';
|
|||||||
import { v4 as uuidv4 } from 'uuid';
|
import { v4 as uuidv4 } from 'uuid';
|
||||||
import { useConfig } from '../../tools/state';
|
import { useConfig } from '../../tools/state';
|
||||||
import { tryMatchPort, ServiceTypeList, StatusCodes, Config } from '../../tools/types';
|
import { tryMatchPort, ServiceTypeList, StatusCodes, Config } from '../../tools/types';
|
||||||
|
import apiKeyPaths from './apiKeyPaths.json';
|
||||||
import Tip from '../layout/Tip';
|
import Tip from '../layout/Tip';
|
||||||
|
|
||||||
export function AddItemShelfButton(props: any) {
|
export function AddItemShelfButton(props: any) {
|
||||||
@@ -307,7 +308,7 @@ export function AddAppShelfItemForm(props: AddAppShelfItemFormProps) {
|
|||||||
target="_blank"
|
target="_blank"
|
||||||
weight="bold"
|
weight="bold"
|
||||||
style={{ fontStyle: 'inherit', fontSize: 'inherit' }}
|
style={{ fontStyle: 'inherit', fontSize: 'inherit' }}
|
||||||
href={`${hostname}/settings/general`}
|
href={`${hostname}/${apiKeyPaths[form.values.type as keyof typeof apiKeyPaths]}`}
|
||||||
>
|
>
|
||||||
{t('modal.tabs.options.form.integrations.apiKey.tip.link')}
|
{t('modal.tabs.options.form.integrations.apiKey.tip.link')}
|
||||||
</Anchor>
|
</Anchor>
|
||||||
|
|||||||
9
src/components/AppShelf/apiKeyPaths.json
Normal file
9
src/components/AppShelf/apiKeyPaths.json
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"Jellyseerr": "settings",
|
||||||
|
"Overseerr": "settings",
|
||||||
|
"Sonarr": "settings/general",
|
||||||
|
"Radarr": "settings/general",
|
||||||
|
"Readarr": "settings/general",
|
||||||
|
"Lidarr": "settings/general",
|
||||||
|
"Sabnzbd": "sabnzbd/config/general"
|
||||||
|
}
|
||||||
@@ -145,6 +145,7 @@ export function DashdotComponent() {
|
|||||||
|
|
||||||
const graphs = [
|
const graphs = [
|
||||||
{
|
{
|
||||||
|
id: 'cpu',
|
||||||
name: t('card.graphs.cpu.title'),
|
name: t('card.graphs.cpu.title'),
|
||||||
enabled: cpuEnabled,
|
enabled: cpuEnabled,
|
||||||
params: {
|
params: {
|
||||||
@@ -152,6 +153,7 @@ export function DashdotComponent() {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
id: 'storage',
|
||||||
name: t('card.graphs.storage.title'),
|
name: t('card.graphs.storage.title'),
|
||||||
enabled: storageEnabled && !isCompact,
|
enabled: storageEnabled && !isCompact,
|
||||||
params: {
|
params: {
|
||||||
@@ -159,15 +161,18 @@ export function DashdotComponent() {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
id: 'ram',
|
||||||
name: t('card.graphs.memory.title'),
|
name: t('card.graphs.memory.title'),
|
||||||
enabled: ramEnabled,
|
enabled: ramEnabled,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
id: 'network',
|
||||||
name: t('card.graphs.network.title'),
|
name: t('card.graphs.network.title'),
|
||||||
enabled: networkEnabled,
|
enabled: networkEnabled,
|
||||||
spanTwo: true,
|
spanTwo: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
id: 'gpu',
|
||||||
name: t('card.graphs.gpu.title'),
|
name: t('card.graphs.gpu.title'),
|
||||||
enabled: gpuEnabled,
|
enabled: gpuEnabled,
|
||||||
spanTwo: true,
|
spanTwo: true,
|
||||||
@@ -232,7 +237,7 @@ export function DashdotComponent() {
|
|||||||
className={classes.iframe}
|
className={classes.iframe}
|
||||||
key={graph.name}
|
key={graph.name}
|
||||||
title={graph.name}
|
title={graph.name}
|
||||||
src={`${dashdotUrl}?singleGraphMode=true&graph=${graph.name.toLowerCase()}&theme=${colorScheme}&surface=${(colorScheme ===
|
src={`${dashdotUrl}?singleGraphMode=true&graph=${graph.id.toLowerCase()}&theme=${colorScheme}&surface=${(colorScheme ===
|
||||||
'dark'
|
'dark'
|
||||||
? theme.colors.dark[7]
|
? theme.colors.dark[7]
|
||||||
: theme.colors.gray[0]
|
: theme.colors.gray[0]
|
||||||
|
|||||||
Reference in New Issue
Block a user