UnisKB/ui/src/layout/components/top-bar/avatar/AboutDialog.vue

108 lines
3.1 KiB
Vue
Raw Normal View History

2023-12-18 03:11:13 +00:00
<template>
<el-dialog v-model="aboutDialogVisible" class="about-dialog">
<template #header="{ titleId, titleClass }">
<div class="flex-center">
<div class="logo mr-4"></div>
<div class="app-logo-font about-title" :id="titleId" :class="titleClass">
{{ defaultTitle }}
</div>
</div>
</template>
2024-03-21 07:52:10 +00:00
<div class="about-ui">
<el-card
shadow="hover"
class="mb-16"
@click="toUrl('https://github.com/1Panel-dev/MaxKB/wiki')"
>
<div class="flex align-center cursor">
<AppIcon iconName="app-reading" class="mr-16 ml-8" style="font-size: 24px"></AppIcon>
<span>用户手册</span>
</div>
</el-card>
<el-card shadow="hover" class="mb-16" @click="toUrl('https://github.com/1Panel-dev/MaxKB')">
<div class="flex align-center cursor">
<AppIcon iconName="app-github" class="mr-16 ml-8" style="font-size: 24px"></AppIcon>
<span>项目地址</span>
</div>
</el-card>
<el-card shadow="hover" class="mb-16" @click="toUrl('https://bbs.fit2cloud.com/c/mk/11')">
<div class="flex align-center cursor">
<AppIcon iconName="app-help" class="mr-16 ml-8" style="font-size: 24px"></AppIcon>
<span>论坛求助</span>
</div>
</el-card>
<div class="text-center">当前版本号{{ PackageJSON.version }}</div>
</div>
<!-- <ul class="about-ui">
2024-02-23 10:33:21 +00:00
<li class="flex mb-16">
2023-12-18 03:11:13 +00:00
<span class="label text-right">授权数量</span><span class="text-center">-</span>
</li>
2024-02-23 10:33:21 +00:00
<li class="flex mb-16">
2023-12-18 03:11:13 +00:00
<span class="label text-right">过期时间</span><span class="text-center">-</span>
</li>
2024-02-23 10:33:21 +00:00
<li class="flex mb-16">
2023-12-18 03:11:13 +00:00
<span class="label text-right">版本</span><span class="text-center">-</span>
</li>
<li class="flex">
<span class="label text-right">版本号</span
><span class="text-center">{{ PackageJSON.version }}</span>
</li>
2024-03-21 07:52:10 +00:00
</ul> -->
2023-12-18 03:11:13 +00:00
</el-dialog>
</template>
<script setup lang="ts">
import { ref } from 'vue'
import PackageJSON from '../../../../../package.json'
const defaultTitle = import.meta.env.VITE_APP_TITLE
2024-03-21 07:52:10 +00:00
2023-12-18 03:11:13 +00:00
const aboutDialogVisible = ref(false)
const open = () => {
aboutDialogVisible.value = true
}
2024-03-21 07:52:10 +00:00
function toUrl(url: string) {
window.open(url, '_blank')
}
2023-12-18 03:11:13 +00:00
defineExpose({ open })
</script>
<style lang="scss" scope>
.about-dialog {
2024-02-23 10:28:21 +00:00
padding: 0;
2023-12-18 03:11:13 +00:00
border-radius: 4px;
2024-02-23 10:28:21 +00:00
width: 600px;
2023-12-18 03:11:13 +00:00
.el-dialog__header {
background: var(--app-header-bg-color);
margin-right: 0;
2024-02-23 10:28:21 +00:00
height: 140px;
2023-12-18 03:11:13 +00:00
border-radius: 4px 4px 0 0;
2024-02-23 10:28:21 +00:00
box-sizing: border-box;
}
.el-dialog__title {
line-height: 140px;
2023-12-18 03:11:13 +00:00
}
.about-title {
2024-02-23 10:28:21 +00:00
font-size: 40px;
2023-12-18 03:11:13 +00:00
}
.logo {
2023-12-18 06:42:13 +00:00
background-image: url('@/assets/logo.png');
2023-12-18 03:11:13 +00:00
background-size: 100% 100%;
2024-02-23 10:28:21 +00:00
width: 59px;
height: 59px;
2023-12-18 03:11:13 +00:00
}
.about-ui {
2024-02-23 10:28:21 +00:00
padding: 24px;
width: 360px;
2023-12-18 03:11:13 +00:00
margin: 0 auto;
2024-02-23 10:28:21 +00:00
font-weight: 400;
2024-02-23 10:33:21 +00:00
font-size: 16px;
2024-02-23 10:28:21 +00:00
.label {
width: 180px;
text-align: left;
color: var(--app-text-color-secondary);
2023-12-18 03:11:13 +00:00
}
}
}
</style>