将 web-admin 从子模块改为仓库内普通目录,便于单仓克隆与维护。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
zlwuandCursor committed 2026-05-12 16:41:08 +08:00
1 parent 2e9d020d50
commit c87732fcd5
515 files changed
+74372 -1

No files matched your search

+105
View File
@@ -0,0 +1,105 @@
/**
* 全局组件配置
*
* 统一管理系统级全局组件的注册。
* 这些组件会在应用启动时全局注册,可在任何地方使用。
*
* ## 主要功能
*
* - 组件配置 - 集中管理全局组件的配置信息
* - 异步加载 - 使用 defineAsyncComponent 实现按需加载
* - 开关控制 - 支持通过 enabled 字段启用/禁用组件
* - 配置查询 - 提供工具函数快速查询组件配置
*
* @module config/component
* @author Art Design Pro Team
*/
import { defineAsyncComponent } from 'vue'
/**
* 全局组件配置列表
*/
export const globalComponentsConfig: GlobalComponentConfig[] = [
{
name: '设置面板',
key: 'settings-panel',
component: defineAsyncComponent(
() => import('@/components/core/layouts/art-settings-panel/index.vue')
),
enabled: true
},
{
name: '全局搜索',
key: 'global-search',
component: defineAsyncComponent(
() => import('@/components/core/layouts/art-global-search/index.vue')
),
enabled: true
},
{
name: '锁屏',
key: 'screen-lock',
component: defineAsyncComponent(
() => import('@/components/core/layouts/art-screen-lock/index.vue')
),
enabled: true
},
{
name: '聊天窗口',
key: 'chat-window',
component: defineAsyncComponent(
() => import('@/components/core/layouts/art-chat-window/index.vue')
),
enabled: true
},
{
name: '礼花效果',
key: 'fireworks-effect',
component: defineAsyncComponent(
() => import('@/components/core/layouts/art-fireworks-effect/index.vue')
),
enabled: true
},
{
name: '水印效果',
key: 'watermark',
component: defineAsyncComponent(
() => import('@/components/core/others/art-watermark/index.vue')
),
enabled: true
}
]
/**
* 全局组件配置接口
*/
export interface GlobalComponentConfig {
/** 组件名称 */
name: string
/** 组件标识 */
key: string
/** 组件 */
component: any
/** 是否启用 */
enabled?: boolean
/** 组件描述 */
description?: string
}
/**
* 获取启用的全局组件
* @returns 已启用的组件配置列表
*/
export const getEnabledGlobalComponents = () => {
return globalComponentsConfig.filter((config) => config.enabled !== false)
}
/**
* 根据 key 获取组件配置
* @param key 组件标识
* @returns 组件配置对象
*/
export const getGlobalComponentByKey = (key: string) => {
return globalComponentsConfig.find((config) => config.key === key)
}
+127
View File
@@ -0,0 +1,127 @@
/**
* 快速入口配置
* 包含:应用列表、快速链接等配置
*/
import { WEB_LINKS } from '@/utils/constants'
import type { FastEnterConfig } from '@/types/config'
const fastEnterConfig: FastEnterConfig = {
// 显示条件(屏幕宽度)
minWidth: 1200,
// 应用列表
applications: [
{
name: '工作台',
description: '系统概览与数据统计',
icon: 'ri:pie-chart-line',
iconColor: '#377dff',
enabled: true,
order: 1,
routeName: 'Console'
},
{
name: '分析页',
description: '数据分析与可视化',
icon: 'ri:game-line',
iconColor: '#ff3b30',
enabled: true,
order: 2,
routeName: 'Analysis'
},
{
name: '礼花效果',
description: '动画特效展示',
icon: 'ri:loader-line',
iconColor: '#7A7FFF',
enabled: true,
order: 3,
routeName: 'Fireworks'
},
{
name: '聊天',
description: '即时通讯功能',
icon: 'ri:user-line',
iconColor: '#13DEB9',
enabled: true,
order: 4,
routeName: 'Chat'
},
{
name: '官方文档',
description: '使用指南与开发文档',
icon: 'ri:bill-line',
iconColor: '#ffb100',
enabled: true,
order: 5,
link: WEB_LINKS.DOCS
},
{
name: '技术支持',
description: '技术支持与问题反馈',
icon: 'ri:user-location-line',
iconColor: '#ff6b6b',
enabled: true,
order: 6,
link: WEB_LINKS.COMMUNITY
},
{
name: '更新日志',
description: '版本更新与变更记录',
icon: 'ri:gamepad-line',
iconColor: '#38C0FC',
enabled: true,
order: 7,
routeName: 'ChangeLog'
},
{
name: '哔哩哔哩',
description: '技术分享与交流',
icon: 'ri:bilibili-line',
iconColor: '#FB7299',
enabled: true,
order: 8,
link: WEB_LINKS.BILIBILI
}
],
// 快速链接
quickLinks: [
{
name: '登录',
enabled: true,
order: 1,
routeName: 'Login'
},
{
name: '注册',
enabled: true,
order: 2,
routeName: 'Register'
},
{
name: '忘记密码',
enabled: true,
order: 3,
routeName: 'ForgetPassword'
},
{
name: '定价',
enabled: true,
order: 4,
routeName: 'Pricing'
},
{
name: '个人中心',
enabled: true,
order: 5,
routeName: 'UserCenter'
},
{
name: '留言管理',
enabled: true,
order: 6,
routeName: 'ArticleComment'
}
]
}
export default Object.freeze(fastEnterConfig)
+51
View File
@@ -0,0 +1,51 @@
/**
* 节日庆祝配置
*
* 配置系统的节日烟花效果和祝福文本。
* 支持单日节日和跨日期节日,可自定义烟花播放次数。
*
* ## 配置说明
*
* - name: 节日名称
* - date: 节日开始日期(格式:YYYY-MM-DD)
* - endDate: 节日结束日期(可选,用于跨日期节日)
* - image: 烟花图片(需要预先导入)
* - scrollText: 滚动显示的祝福文本
* - count: 烟花播放次数(可选,默认为 3 次)
*
* ## 注意事项
*
* - 图片需要预先导入并在配置中引用
* - 跨日期节日会在整个日期范围内生效
* - 每个用户每天只会播放一次烟花效果
*
* @module config/modules/festival
* @author Art Design Pro Team
*/
import { FestivalConfig } from '@/types/config'
// 导入烟花图片(根据需要取消注释)
// import sd from '@imgs/ceremony/sd.png'
// import yd from '@imgs/ceremony/yd.png'
export const festivalConfigList: FestivalConfig[] = [
// 跨日期示例
// {
// name: 'v3.0 Sass 升级至 TailwindCSS',
// date: '2025-11-03',
// endDate: '2025-11-09',
// image: '',
// count: 3,
// scrollText:
// '🚀 系统 v3.0 测试阶段正式开启!测试周期为 11 月 3 日 - 11 月 16 日,通过 TailwindCSS 重构样式体系、统一 Iconify 图标方案,带来更高效现代的开发体验,正式发布敬请期待~'
// }
// 单日示例:圣诞节
// {
// name: '圣诞节',
// date: '2024-12-25',
// image: sd,
// count: 3 // 可选,不设置则使用默认值 3 次
// scrollText: 'Merry Christmas!Art Design Pro 祝您圣诞快乐,愿节日的欢乐与祝福如雪花般纷至沓来!',
// }
]
+63
View File
@@ -0,0 +1,63 @@
/**
* 顶部栏功能配置
*
* 统一管理顶部栏各个功能模块的启用状态。
* 通过修改此配置文件可以快速启用或禁用顶部栏的功能按钮。
*
* @module config/headerBar
* @author Art Design Pro Team
*/
import { HeaderBarFeatureConfig } from '@/types'
/**
* 顶部栏功能配置对象
*/
export const headerBarConfig: HeaderBarFeatureConfig = {
menuButton: {
enabled: true,
description: '控制左侧菜单的展开/收起按钮'
},
refreshButton: {
enabled: true,
description: '页面刷新按钮'
},
fastEnter: {
enabled: true,
description: '快速入口功能,提供常用应用和链接的快速访问'
},
breadcrumb: {
enabled: true,
description: '面包屑导航,显示当前页面路径'
},
globalSearch: {
enabled: true,
description: '全局搜索功能,支持快捷键 Ctrl+K 或 Cmd+K'
},
fullscreen: {
enabled: true,
description: '全屏切换功能'
},
notification: {
enabled: true,
description: '通知中心,显示系统通知和消息'
},
chat: {
enabled: true,
description: '聊天功能,提供实时沟通'
},
language: {
enabled: true,
description: '多语言切换功能'
},
settings: {
enabled: true,
description: '系统设置面板'
},
themeToggle: {
enabled: true,
description: '主题切换功能(明暗主题)'
}
}
export default headerBarConfig