|
@@ -1,5 +1,7 @@
|
|
|
<script setup lang="ts">
|
|
|
+import { computed } from "vue";
|
|
|
import { useColumns } from "./columns";
|
|
|
+
|
|
|
export interface schemaItem {
|
|
|
field: string;
|
|
|
label: string;
|
|
@@ -17,6 +19,36 @@ const devSchema: schemaItem[] = [];
|
|
|
|
|
|
const { columns } = useColumns();
|
|
|
|
|
|
+const words = [
|
|
|
+ "@pureadmin/descriptions",
|
|
|
+ "@pureadmin/table",
|
|
|
+ "@pureadmin/utils",
|
|
|
+ "@vueuse/core",
|
|
|
+ "axios",
|
|
|
+ "dayjs",
|
|
|
+ "echarts",
|
|
|
+ "vue",
|
|
|
+ "element-plus",
|
|
|
+ "pinia",
|
|
|
+ "vue-i18n",
|
|
|
+ "vue-router",
|
|
|
+ "@iconify/vue",
|
|
|
+ "@vitejs/plugin-vue",
|
|
|
+ "@vitejs/plugin-vue-jsx",
|
|
|
+ "eslint",
|
|
|
+ "prettier",
|
|
|
+ "sass",
|
|
|
+ "stylelint",
|
|
|
+ "tailwindcss",
|
|
|
+ "typescript",
|
|
|
+ "vite",
|
|
|
+ "vue-tsc"
|
|
|
+];
|
|
|
+
|
|
|
+const getMainLabel = computed(
|
|
|
+ () => (label: string) => words.find(w => w === label) && "main-label"
|
|
|
+);
|
|
|
+
|
|
|
Object.keys(dependencies).forEach(key => {
|
|
|
schema.push({ field: dependencies[key], label: key });
|
|
|
});
|
|
@@ -29,24 +61,21 @@ Object.keys(devDependencies).forEach(key => {
|
|
|
<template>
|
|
|
<div>
|
|
|
<el-card class="mb-4 box-card" shadow="never">
|
|
|
- <template #header>
|
|
|
- <div class="card-header">
|
|
|
- <span class="font-medium">关于</span>
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- <span style="font-size: 15px">
|
|
|
- Pure-Admin 是一个基于Vue3、Vite、TypeScript、Element-Plus
|
|
|
- 的中后台解决方案,它可以帮助您快速搭建企业级中后台,提供现成的开箱解决方案及丰富的示例。原则上不收取任何费用及版权,可以放心使用,不过如需二次开源(比如用此平台二次开发并开源)请联系作者获取许可!
|
|
|
+ <span>
|
|
|
+ vue-pure-admin 是一款开源免费且开箱即用的中后台管理系统模版。完全采用
|
|
|
+ ECMAScript 模块(ESM)规范来编写和组织代码,使用了最新的
|
|
|
+ Vue3、Vite、Element-Plus、TypeScript、Pinia、Tailwindcss
|
|
|
+ 等主流技术开发。
|
|
|
</span>
|
|
|
</el-card>
|
|
|
|
|
|
<el-card class="m-4 box-card" shadow="never">
|
|
|
<template #header>
|
|
|
<div class="card-header">
|
|
|
- <span class="font-medium">项目信息</span>
|
|
|
+ <span class="font-medium">平台信息</span>
|
|
|
</div>
|
|
|
</template>
|
|
|
- <PureDescriptions :columns="columns" border :column="3" align="left" />
|
|
|
+ <PureDescriptions border :columns="columns" :column="4" />
|
|
|
</el-card>
|
|
|
|
|
|
<el-card class="m-4 box-card" shadow="never">
|
|
@@ -55,19 +84,24 @@ Object.keys(devDependencies).forEach(key => {
|
|
|
<span class="font-medium">生产环境依赖</span>
|
|
|
</div>
|
|
|
</template>
|
|
|
- <el-descriptions border>
|
|
|
+ <el-descriptions border size="small" :column="6">
|
|
|
<el-descriptions-item
|
|
|
v-for="(item, index) in schema"
|
|
|
:key="index"
|
|
|
:label="item.label"
|
|
|
- label-align="left"
|
|
|
- align="left"
|
|
|
+ :label-class-name="getMainLabel(item.label)"
|
|
|
+ class-name="pure-version"
|
|
|
+ label-align="right"
|
|
|
>
|
|
|
<a
|
|
|
:href="'https://www.npmjs.com/package/' + item.label"
|
|
|
target="_blank"
|
|
|
>
|
|
|
- <span style="color: var(--el-color-primary)">{{ item.field }}</span>
|
|
|
+ <span
|
|
|
+ :class="getMainLabel(item.label)"
|
|
|
+ style="color: var(--el-color-primary)"
|
|
|
+ >{{ item.field }}</span
|
|
|
+ >
|
|
|
</a>
|
|
|
</el-descriptions-item>
|
|
|
</el-descriptions>
|
|
@@ -79,19 +113,24 @@ Object.keys(devDependencies).forEach(key => {
|
|
|
<span class="font-medium">开发环境依赖</span>
|
|
|
</div>
|
|
|
</template>
|
|
|
- <el-descriptions border>
|
|
|
+ <el-descriptions border size="small" :column="5">
|
|
|
<el-descriptions-item
|
|
|
v-for="(item, index) in devSchema"
|
|
|
:key="index"
|
|
|
:label="item.label"
|
|
|
- label-align="left"
|
|
|
- align="left"
|
|
|
+ :label-class-name="getMainLabel(item.label)"
|
|
|
+ class-name="pure-version"
|
|
|
+ label-align="right"
|
|
|
>
|
|
|
<a
|
|
|
:href="'https://www.npmjs.com/package/' + item.label"
|
|
|
target="_blank"
|
|
|
>
|
|
|
- <span style="color: var(--el-color-primary)">{{ item.field }}</span>
|
|
|
+ <span
|
|
|
+ :class="getMainLabel(item.label)"
|
|
|
+ style="color: var(--el-color-primary)"
|
|
|
+ >{{ item.field }}</span
|
|
|
+ >
|
|
|
</a>
|
|
|
</el-descriptions-item>
|
|
|
</el-descriptions>
|
|
@@ -100,6 +139,21 @@ Object.keys(devDependencies).forEach(key => {
|
|
|
</template>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
+:deep(.main-label) {
|
|
|
+ font-size: 16px !important;
|
|
|
+ color: var(--el-color-danger) !important;
|
|
|
+}
|
|
|
+
|
|
|
+:deep(.pure-version) {
|
|
|
+ font-size: 14px !important;
|
|
|
+ font-weight: 600 !important;
|
|
|
+ opacity: 0.6;
|
|
|
+
|
|
|
+ &:hover {
|
|
|
+ opacity: 1;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
.main-content {
|
|
|
margin: 0 !important;
|
|
|
}
|