mirror of
https://github.com/1Panel-dev/1Panel.git
synced 2026-10-26 08:00:12 +00:00
fix: align AI menu order and labels (#14183)
This commit is contained in:
@@ -149,8 +149,8 @@ func LoadMenus() string {
|
||||
IsShow: true,
|
||||
Label: "AIProxyManagement",
|
||||
Path: "/ai/ai-proxy/model-pool",
|
||||
Sort: 75,
|
||||
}, "AIModel")
|
||||
Sort: 150,
|
||||
}, "Agents")
|
||||
item[i].Children = UpsertMenuByLabel(item[i].Children, dto.ShowMenu{
|
||||
ID: "47",
|
||||
Disabled: false,
|
||||
@@ -158,8 +158,8 @@ func LoadMenus() string {
|
||||
IsShow: true,
|
||||
Label: "SkillsHub",
|
||||
Path: "/ai/skills-hub",
|
||||
Sort: 225,
|
||||
}, "MCPServer")
|
||||
Sort: 175,
|
||||
}, "AIProxyManagement")
|
||||
item[i].Children = UpsertMenuByLabel(item[i].Children, dto.ShowMenu{
|
||||
ID: "45",
|
||||
Disabled: false,
|
||||
@@ -167,8 +167,8 @@ func LoadMenus() string {
|
||||
IsShow: true,
|
||||
Label: "AIBenchmark",
|
||||
Path: "/ai/benchmark",
|
||||
Sort: 250,
|
||||
}, "SkillsHub")
|
||||
Sort: 350,
|
||||
}, "GPU")
|
||||
continue
|
||||
}
|
||||
if item[i].Label != "Xpack-Menu" {
|
||||
@@ -205,12 +205,12 @@ func MenuSort() []dto.MenuLabelSort {
|
||||
{Label: "App-Menu", Sort: 200},
|
||||
{Label: "AI-Menu", Sort: 300},
|
||||
{Label: "AIModel", Sort: 50},
|
||||
{Label: "AIProxyManagement", Sort: 75},
|
||||
{Label: "Agents", Sort: 100},
|
||||
{Label: "AIProxyManagement", Sort: 150},
|
||||
{Label: "SkillsHub", Sort: 175},
|
||||
{Label: "MCPServer", Sort: 200},
|
||||
{Label: "SkillsHub", Sort: 225},
|
||||
{Label: "AIBenchmark", Sort: 250},
|
||||
{Label: "GPU", Sort: 300},
|
||||
{Label: "AIBenchmark", Sort: 350},
|
||||
{Label: "Website-Menu", Sort: 400},
|
||||
{Label: "Website", Sort: 100},
|
||||
{Label: "SSL", Sort: 200},
|
||||
|
||||
@@ -70,5 +70,6 @@ func coreMigrations() []*gormigrate.Migration {
|
||||
migrations.AddAPIKeys,
|
||||
migrations.AddOperationLogAPIKey,
|
||||
migrations.UpdateAiMenuOrder,
|
||||
migrations.UpdateAiMenuOrderV2,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1391,6 +1391,21 @@ var UpdateAiMenuOrder = &gormigrate.Migration{
|
||||
},
|
||||
}
|
||||
|
||||
var UpdateAiMenuOrderV2 = &gormigrate.Migration{
|
||||
ID: "20261026-update-ai-menu-order-v2",
|
||||
Migrate: func(tx *gorm.DB) error {
|
||||
return helper.UpdateChildMenuSortByLabel(tx, "AI-Menu", []dto.MenuLabelSort{
|
||||
{Label: "AIModel", Sort: 50},
|
||||
{Label: "Agents", Sort: 100},
|
||||
{Label: "AIProxyManagement", Sort: 150},
|
||||
{Label: "SkillsHub", Sort: 175},
|
||||
{Label: "MCPServer", Sort: 200},
|
||||
{Label: "GPU", Sort: 300},
|
||||
{Label: "AIBenchmark", Sort: 350},
|
||||
})
|
||||
},
|
||||
}
|
||||
|
||||
var UpdateFirewallMenuPath = &gormigrate.Migration{
|
||||
ID: "20260819-update-firewall-menu-path",
|
||||
Migrate: func(tx *gorm.DB) error {
|
||||
|
||||
@@ -468,7 +468,7 @@ const message = {
|
||||
ssl: 'Certificate | Certificates',
|
||||
database: 'Database | Databases',
|
||||
aiTools: 'AI',
|
||||
mcp: 'MCP',
|
||||
mcp: 'MCP Management',
|
||||
container: 'Container | Containers',
|
||||
cronjob: 'Cron Job | Cron Jobs',
|
||||
system: 'System',
|
||||
@@ -1387,7 +1387,7 @@ const message = {
|
||||
sampleImportPlaceholder: 'One sample per line',
|
||||
},
|
||||
skillsHub: {
|
||||
title: 'Skills Hub',
|
||||
title: 'Skills Repository',
|
||||
upload: 'Upload Skill',
|
||||
importSkill: 'Import Skill',
|
||||
repositoryAddress: 'Repository Address',
|
||||
@@ -2719,7 +2719,7 @@ const message = {
|
||||
detail: {
|
||||
dashboard: 'Overview',
|
||||
ai: 'AI',
|
||||
skills_hub: 'Skills Hub',
|
||||
skills_hub: 'Skills Repository',
|
||||
ai_proxy: 'AI Proxy',
|
||||
ai_benchmark: 'Benchmark',
|
||||
groups: 'Group',
|
||||
|
||||
@@ -467,7 +467,7 @@ const message = {
|
||||
ssl: 'Certificado | Certificados',
|
||||
database: 'Base de datos | Bases de datos',
|
||||
aiTools: 'IA',
|
||||
mcp: 'MCP',
|
||||
mcp: 'Gestión de MCP',
|
||||
container: 'Contenedor | Contenedores',
|
||||
cronjob: 'Tarea programada | Tareas programadas',
|
||||
system: 'Sistema',
|
||||
@@ -1393,7 +1393,7 @@ const message = {
|
||||
apiKeyCount: 'Cantidad',
|
||||
},
|
||||
skillsHub: {
|
||||
title: 'Skills Hub',
|
||||
title: 'Repositorio de Skills',
|
||||
upload: 'Subir Skill',
|
||||
importSkill: 'Importar Skill',
|
||||
repositoryAddress: 'Dirección del repositorio',
|
||||
@@ -2762,7 +2762,7 @@ const message = {
|
||||
detail: {
|
||||
dashboard: 'Resumen general',
|
||||
ai: 'IA',
|
||||
skills_hub: 'Skills Hub',
|
||||
skills_hub: 'Repositorio de Skills',
|
||||
ai_proxy: 'Proxy de IA',
|
||||
ai_benchmark: 'Benchmark',
|
||||
groups: 'Grupo',
|
||||
|
||||
@@ -463,7 +463,7 @@ const message = {
|
||||
ssl: 'گواهی | گواهیها',
|
||||
database: 'پایگاه داده | پایگاههای داده',
|
||||
aiTools: 'هوش مصنوعی',
|
||||
mcp: 'MCP',
|
||||
mcp: 'مدیریت MCP',
|
||||
container: 'کانتینر | کانتینرها',
|
||||
cronjob: 'وظیفه زمانبندی شده | وظایف زمانبندی شده',
|
||||
system: 'سیستم',
|
||||
@@ -1371,7 +1371,7 @@ const message = {
|
||||
sampleImportPlaceholder: 'هر خط یک نمونه',
|
||||
},
|
||||
skillsHub: {
|
||||
title: 'مرکز مهارت',
|
||||
title: 'مخزن مهارتها',
|
||||
upload: 'بارگذاری مهارت',
|
||||
importSkill: 'واردات مهارت',
|
||||
repositoryAddress: 'آدرس مخزن',
|
||||
@@ -2691,7 +2691,7 @@ const message = {
|
||||
detail: {
|
||||
dashboard: 'نمای کلی',
|
||||
ai: 'هوش مصنوعی',
|
||||
skills_hub: 'مرکز مهارت',
|
||||
skills_hub: 'مخزن مهارتها',
|
||||
ai_proxy: 'پروکسی هوش مصنوعی',
|
||||
ai_benchmark: 'معیار سنجش',
|
||||
groups: 'گروه',
|
||||
|
||||
@@ -465,7 +465,7 @@ const message = {
|
||||
ssl: '証明書|証明書',
|
||||
database: 'データベース|データベース',
|
||||
aiTools: 'AI',
|
||||
mcp: 'MCP',
|
||||
mcp: 'MCP 管理',
|
||||
container: 'コンテナ|コンテナ',
|
||||
cronjob: 'クロンジョブ|クロンの仕事',
|
||||
system: 'システム',
|
||||
@@ -1375,7 +1375,7 @@ const message = {
|
||||
apiKeyCount: 'API キー数',
|
||||
},
|
||||
skillsHub: {
|
||||
title: 'Skills Hub',
|
||||
title: 'Skills リポジトリ',
|
||||
upload: 'Skill をアップロード',
|
||||
importSkill: 'Skill をインポート',
|
||||
repositoryAddress: 'リポジトリアドレス',
|
||||
@@ -2701,7 +2701,7 @@ const message = {
|
||||
detail: {
|
||||
dashboard: '概要',
|
||||
ai: 'AI',
|
||||
skills_hub: 'Skills Hub',
|
||||
skills_hub: 'Skills リポジトリ',
|
||||
ai_proxy: 'AIプロキシ',
|
||||
ai_benchmark: 'ベンチマーク',
|
||||
groups: 'グループ',
|
||||
|
||||
@@ -460,7 +460,7 @@ const message = {
|
||||
ssl: '인증서 | 인증서들',
|
||||
database: '데이터베이스 | 데이터베이스들',
|
||||
aiTools: 'AI',
|
||||
mcp: 'MCP',
|
||||
mcp: 'MCP 관리',
|
||||
container: '컨테이너 | 컨테이너들',
|
||||
cronjob: '크론 작업 | 크론 작업들',
|
||||
system: '시스템',
|
||||
@@ -1363,7 +1363,7 @@ const message = {
|
||||
apiKeyCount: 'API 키 수',
|
||||
},
|
||||
skillsHub: {
|
||||
title: 'Skills Hub',
|
||||
title: 'Skills 저장소',
|
||||
upload: 'Skill 업로드',
|
||||
importSkill: 'Skill 가져오기',
|
||||
repositoryAddress: '저장소 주소',
|
||||
@@ -2658,7 +2658,7 @@ const message = {
|
||||
detail: {
|
||||
dashboard: '개요',
|
||||
ai: 'AI',
|
||||
skills_hub: 'Skills Hub',
|
||||
skills_hub: 'Skills 저장소',
|
||||
ai_proxy: 'AI 프록시',
|
||||
ai_benchmark: '벤치마크',
|
||||
groups: '그룹',
|
||||
|
||||
@@ -461,7 +461,7 @@ const message = {
|
||||
ssl: 'ໃບຢັ້ງຢືນ | ໃບຢັ້ງຢືນ',
|
||||
database: 'ຖານຂໍ້ມູນ | ຖານຂໍ້ມູນ',
|
||||
aiTools: 'AI',
|
||||
mcp: 'MCP',
|
||||
mcp: 'ການຈັດການ MCP',
|
||||
container: 'ຄອນເທນເນີ | ຄອນເທນເນີ',
|
||||
cronjob: 'ໜ້າວຽກຕັ້ງເວລາ | ໜ້າວຽກຕັ້ງເວລາ',
|
||||
system: 'ລະບົບ',
|
||||
@@ -1358,7 +1358,7 @@ const message = {
|
||||
sampleImportPlaceholder: 'ໜຶ່ງຕົວຢ່າງຕໍ່ແຖວ',
|
||||
},
|
||||
skillsHub: {
|
||||
title: 'ສູນລວມທັກສະ (Skills Hub)',
|
||||
title: 'ຄັງທັກສະ',
|
||||
upload: 'ອັບໂຫຼດທັກສະ',
|
||||
importSkill: 'ນຳເຂົ້າທັກສະ',
|
||||
repositoryAddress: 'ທີ່ຢູ່ຄັງເກັບ (Repository)',
|
||||
@@ -2634,7 +2634,7 @@ const message = {
|
||||
detail: {
|
||||
dashboard: 'ພາບລວມ',
|
||||
ai: 'AI',
|
||||
skills_hub: 'ສູນລວມທັກສະ',
|
||||
skills_hub: 'ຄັງທັກສະ',
|
||||
ai_proxy: 'AI Proxy',
|
||||
ai_benchmark: 'ການທົດສອບປະສິດທິພາບ',
|
||||
groups: 'ກຸ່ມ',
|
||||
|
||||
@@ -472,7 +472,7 @@ const message = {
|
||||
ssl: 'Sijil',
|
||||
database: 'Pangkalan Data',
|
||||
aiTools: 'AI',
|
||||
mcp: 'MCP',
|
||||
mcp: 'Pengurusan MCP',
|
||||
container: 'Kontena',
|
||||
cronjob: 'Tugas Berjadual',
|
||||
system: 'System',
|
||||
@@ -1399,7 +1399,7 @@ const message = {
|
||||
apiKeyCount: 'Kuantiti',
|
||||
},
|
||||
skillsHub: {
|
||||
title: 'Skills Hub',
|
||||
title: 'Repositori Skills',
|
||||
upload: 'Muat naik Skill',
|
||||
importSkill: 'Import Kemahiran',
|
||||
repositoryAddress: 'Alamat repositori',
|
||||
@@ -2759,7 +2759,7 @@ const message = {
|
||||
detail: {
|
||||
dashboard: 'Overview',
|
||||
ai: 'AI',
|
||||
skills_hub: 'Skills Hub',
|
||||
skills_hub: 'Repositori Skills',
|
||||
ai_proxy: 'Proksi AI',
|
||||
ai_benchmark: 'Penanda Aras',
|
||||
groups: 'Kumpulan',
|
||||
|
||||
@@ -465,7 +465,7 @@ const message = {
|
||||
ssl: 'Certificado | Certificados',
|
||||
database: 'Banco de Dados | Bancos de Dados',
|
||||
aiTools: 'AI',
|
||||
mcp: 'MCP',
|
||||
mcp: 'Gerenciamento de MCP',
|
||||
container: 'Contêineres',
|
||||
cronjob: 'Tarefa Cron | Tarefas Cron',
|
||||
system: 'Sistema',
|
||||
@@ -1395,7 +1395,7 @@ const message = {
|
||||
apiKeyCount: 'Quantidade',
|
||||
},
|
||||
skillsHub: {
|
||||
title: 'Skills Hub',
|
||||
title: 'Repositório de Skills',
|
||||
upload: 'Enviar Skill',
|
||||
importSkill: 'Importar Skill',
|
||||
repositoryAddress: 'Endereço do repositório',
|
||||
@@ -2759,7 +2759,7 @@ const message = {
|
||||
detail: {
|
||||
dashboard: 'Visão Geral',
|
||||
ai: 'AI',
|
||||
skills_hub: 'Skills Hub',
|
||||
skills_hub: 'Repositório de Skills',
|
||||
ai_proxy: 'Proxy de IA',
|
||||
ai_benchmark: 'Benchmark',
|
||||
groups: 'Grupos',
|
||||
|
||||
@@ -464,7 +464,7 @@ const message = {
|
||||
ssl: 'Сертификат | Сертификаты',
|
||||
database: 'База данных | Базы данных',
|
||||
aiTools: 'AI',
|
||||
mcp: 'MCP',
|
||||
mcp: 'Управление MCP',
|
||||
container: 'Контейнер | Контейнеры',
|
||||
cronjob: 'Cron | Задачи Cron',
|
||||
system: 'Система',
|
||||
@@ -1387,7 +1387,7 @@ const message = {
|
||||
apiKeyCount: 'Количество',
|
||||
},
|
||||
skillsHub: {
|
||||
title: 'Skills Hub',
|
||||
title: 'Репозиторий Skills',
|
||||
upload: 'Загрузить Skill',
|
||||
importSkill: 'Импортировать Skill',
|
||||
repositoryAddress: 'Адрес репозитория',
|
||||
@@ -2743,7 +2743,7 @@ const message = {
|
||||
detail: {
|
||||
dashboard: 'Обзор',
|
||||
ai: 'AI',
|
||||
skills_hub: 'Skills Hub',
|
||||
skills_hub: 'Репозиторий Skills',
|
||||
ai_proxy: 'AI Proxy',
|
||||
ai_benchmark: 'Бенчмарк',
|
||||
groups: 'Группы',
|
||||
|
||||
@@ -468,7 +468,7 @@ const message = {
|
||||
ssl: 'Sertifika | Sertifikalar',
|
||||
database: 'Veritabanı | Veritabanları',
|
||||
aiTools: 'AI',
|
||||
mcp: 'MCP',
|
||||
mcp: 'MCP Yönetimi',
|
||||
container: 'Konteyner | Konteynerler',
|
||||
cronjob: 'Cron İşi | Cron İşleri',
|
||||
system: 'Sistem',
|
||||
@@ -1397,7 +1397,7 @@ const message = {
|
||||
apiKeyCount: 'Miktar',
|
||||
},
|
||||
skillsHub: {
|
||||
title: 'Skills Hub',
|
||||
title: 'Skills Deposu',
|
||||
upload: 'Skill yükle',
|
||||
importSkill: 'Skill içe aktar',
|
||||
repositoryAddress: 'Depo adresi',
|
||||
@@ -2752,7 +2752,7 @@ const message = {
|
||||
detail: {
|
||||
dashboard: 'Genel Bakış',
|
||||
ai: 'AI',
|
||||
skills_hub: 'Skills Hub',
|
||||
skills_hub: 'Skills Deposu',
|
||||
ai_proxy: 'AI Proxy',
|
||||
ai_benchmark: 'Benchmark',
|
||||
groups: 'Grup',
|
||||
|
||||
@@ -447,7 +447,7 @@ const message = {
|
||||
security: '安全',
|
||||
database: '資料庫',
|
||||
aiTools: 'AI',
|
||||
mcp: 'MCP',
|
||||
mcp: 'MCP 管理',
|
||||
container: '容器',
|
||||
cronjob: '計劃任務',
|
||||
system: '系統',
|
||||
@@ -1314,7 +1314,7 @@ const message = {
|
||||
apiKeyCount: '數量',
|
||||
},
|
||||
skillsHub: {
|
||||
title: 'Skills Hub',
|
||||
title: 'Skills 倉庫',
|
||||
upload: '上傳 Skill',
|
||||
importSkill: '匯入 Skill',
|
||||
repositoryAddress: '倉庫地址',
|
||||
@@ -2550,7 +2550,7 @@ const message = {
|
||||
detail: {
|
||||
dashboard: '概覽',
|
||||
ai: 'AI',
|
||||
skills_hub: 'Skills Hub',
|
||||
skills_hub: 'Skills 倉庫',
|
||||
ai_proxy: 'AI 網關',
|
||||
ai_benchmark: '基準測試',
|
||||
groups: '分組',
|
||||
|
||||
@@ -448,7 +448,7 @@ const message = {
|
||||
security: '安全',
|
||||
database: '数据库',
|
||||
aiTools: 'AI',
|
||||
mcp: 'MCP',
|
||||
mcp: 'MCP 管理',
|
||||
container: '容器',
|
||||
cronjob: '计划任务',
|
||||
system: '系统',
|
||||
@@ -1327,7 +1327,7 @@ const message = {
|
||||
sampleImportPlaceholder: '每行一个样本',
|
||||
},
|
||||
skillsHub: {
|
||||
title: 'Skills Hub',
|
||||
title: 'Skills 仓库',
|
||||
upload: '上传 Skill',
|
||||
importSkill: '导入 Skill',
|
||||
repositoryAddress: '仓库地址',
|
||||
@@ -2581,7 +2581,7 @@ const message = {
|
||||
detail: {
|
||||
dashboard: '概览',
|
||||
ai: 'AI',
|
||||
skills_hub: 'Skills Hub',
|
||||
skills_hub: 'Skills 仓库',
|
||||
ai_proxy: 'AI 网关',
|
||||
ai_benchmark: '基准测试',
|
||||
groups: '分组',
|
||||
|
||||
Reference in New Issue
Block a user