应用安装界面右上角增加应用市场链接

This commit is contained in:
jingrow 2025-10-26 19:31:04 +08:00
parent 63b042f95b
commit 51d9f9b0a1
2 changed files with 39 additions and 2 deletions

View File

@ -60,8 +60,8 @@ function getDefaultMenus(): AppMenuItem[] {
{ id: 'package-release', key: 'package-release', label: 'Package Release', icon: 'tabler:package-export', type: 'pagetype', pagetype: 'Package Release', parentId: 'dev-group', order: 3 },
{ id: 'package-import', key: 'package-import', label: 'Package Import', icon: 'tabler:package-import', type: 'pagetype', pagetype: 'Package Import', parentId: 'dev-group', order: 4 },
{ id: 'app-installer', key: 'AppInstaller', label: 'App Installer', icon: 'tabler:upload', type: 'route', routeName: 'AppInstaller', parentId: 'dev-group', order: 5 },
{ id: 'installed-apps', key: 'InstalledApps', label: 'Installed Apps', icon: 'ix:apps', type: 'route', routeName: 'InstalledApps', parentId: 'dev-group', order: 6 },
{ id: 'app-marketplace', key: 'AppMarketplace', label: 'App Marketplace', icon: 'tabler:apps', type: 'route', routeName: 'AppMarketplace', parentId: 'dev-group', order: 7 },
{ id: 'installed-apps', key: 'InstalledApps', label: 'Installed Apps', icon: 'tabler:apps', type: 'route', routeName: 'InstalledApps', parentId: 'dev-group', order: 6 },
{ id: 'app-marketplace', key: 'AppMarketplace', label: 'App Marketplace', icon: 'tabler:shopping-cart', type: 'route', routeName: 'AppMarketplace', parentId: 'dev-group', order: 7 },
{ id: 'menuManager', key: 'MenuManager', label: 'Menu Management', icon: 'tabler:menu-2', type: 'route', routeName: 'MenuManager', order: 10 },
{ id: 'settings', key: 'Settings', label: 'Settings', icon: 'tabler:settings', routeName: 'Settings', order: 11, type: 'route' }
]

View File

@ -8,6 +8,18 @@
</h1>
<p class="page-description">{{ t('Upload and install applications to your local Jingrow environment') }}</p>
</div>
<div class="header-actions">
<n-button
type="primary"
@click="goToMarket"
:theme-overrides="{ colorHover: '#3b82f6', colorPressed: '#2563eb' }"
>
<template #icon>
<n-icon><Icon icon="tabler:shopping-cart" /></n-icon>
</template>
{{ t('App Marketplace') }}
</n-button>
</div>
</div>
<div class="upload-section">
@ -130,6 +142,7 @@ import {
} from 'naive-ui'
import { Icon } from '@iconify/vue'
import axios from 'axios'
import { useRouter } from 'vue-router'
import { get_session_api_headers } from '@/shared/api/auth'
import { t } from '@/shared/i18n'
@ -148,6 +161,11 @@ const loadingLocalApps = ref(false)
const message = useMessage()
const uploadRef = ref()
const router = useRouter()
const goToMarket = () => {
router.push('/app-marketplace')
}
const localAppsColumns: DataTableColumns<any> = [
{
@ -435,12 +453,21 @@ onMounted(() => {
.page-header {
margin-bottom: 32px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
}
.header-content {
flex: 1;
text-align: center;
}
.header-actions {
flex-shrink: 0;
}
.page-title {
display: flex;
align-items: center;
@ -532,6 +559,16 @@ onMounted(() => {
.page-header {
margin-bottom: 16px;
flex-direction: column;
align-items: stretch;
}
.header-content {
margin-bottom: 16px;
}
.header-actions {
align-self: center;
}
.upload-section {