应用安装界面右上角增加应用市场链接
This commit is contained in:
parent
63b042f95b
commit
51d9f9b0a1
@ -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-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: '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: '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: '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:apps', type: 'route', routeName: 'AppMarketplace', parentId: 'dev-group', order: 7 },
|
{ 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: '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' }
|
{ id: 'settings', key: 'Settings', label: 'Settings', icon: 'tabler:settings', routeName: 'Settings', order: 11, type: 'route' }
|
||||||
]
|
]
|
||||||
|
|||||||
@ -8,6 +8,18 @@
|
|||||||
</h1>
|
</h1>
|
||||||
<p class="page-description">{{ t('Upload and install applications to your local Jingrow environment') }}</p>
|
<p class="page-description">{{ t('Upload and install applications to your local Jingrow environment') }}</p>
|
||||||
</div>
|
</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>
|
||||||
|
|
||||||
<div class="upload-section">
|
<div class="upload-section">
|
||||||
@ -130,6 +142,7 @@ import {
|
|||||||
} from 'naive-ui'
|
} from 'naive-ui'
|
||||||
import { Icon } from '@iconify/vue'
|
import { Icon } from '@iconify/vue'
|
||||||
import axios from 'axios'
|
import axios from 'axios'
|
||||||
|
import { useRouter } from 'vue-router'
|
||||||
import { get_session_api_headers } from '@/shared/api/auth'
|
import { get_session_api_headers } from '@/shared/api/auth'
|
||||||
import { t } from '@/shared/i18n'
|
import { t } from '@/shared/i18n'
|
||||||
|
|
||||||
@ -148,6 +161,11 @@ const loadingLocalApps = ref(false)
|
|||||||
|
|
||||||
const message = useMessage()
|
const message = useMessage()
|
||||||
const uploadRef = ref()
|
const uploadRef = ref()
|
||||||
|
const router = useRouter()
|
||||||
|
|
||||||
|
const goToMarket = () => {
|
||||||
|
router.push('/app-marketplace')
|
||||||
|
}
|
||||||
|
|
||||||
const localAppsColumns: DataTableColumns<any> = [
|
const localAppsColumns: DataTableColumns<any> = [
|
||||||
{
|
{
|
||||||
@ -435,12 +453,21 @@ onMounted(() => {
|
|||||||
|
|
||||||
.page-header {
|
.page-header {
|
||||||
margin-bottom: 32px;
|
margin-bottom: 32px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
gap: 24px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.header-content {
|
.header-content {
|
||||||
|
flex: 1;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.header-actions {
|
||||||
|
flex-shrink: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.page-title {
|
.page-title {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
@ -532,6 +559,16 @@ onMounted(() => {
|
|||||||
|
|
||||||
.page-header {
|
.page-header {
|
||||||
margin-bottom: 16px;
|
margin-bottom: 16px;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: stretch;
|
||||||
|
}
|
||||||
|
|
||||||
|
.header-content {
|
||||||
|
margin-bottom: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.header-actions {
|
||||||
|
align-self: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.upload-section {
|
.upload-section {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user