feat(core): 初始化项目基础架构和CMS功能模块
- 添加Docker相关配置文件(.dockerignore, .env.example, .gitignore) - 实现服务端API代理功能,支持文件、模块和服务器API转发 - 创建文章详情页、栏目文章列表页和单页内容展示页面 - 集成Ant Design Vue组件库并实现SSR样式提取功能 - 定义API响应数据结构类型和应用布局组件 - 开发开发者应用中心和文章管理页面 - 实现CMS导航菜单获取和多租户切换功能
This commit is contained in:
70
app/config/console-nav.ts
Normal file
70
app/config/console-nav.ts
Normal file
@@ -0,0 +1,70 @@
|
||||
import type { Component } from 'vue'
|
||||
import {
|
||||
AppstoreOutlined,
|
||||
FileTextOutlined,
|
||||
GiftOutlined,
|
||||
IdcardOutlined,
|
||||
LogoutOutlined,
|
||||
SafetyCertificateOutlined,
|
||||
SettingOutlined,
|
||||
ShoppingCartOutlined,
|
||||
ShoppingOutlined,
|
||||
TeamOutlined,
|
||||
UnorderedListOutlined,
|
||||
UserOutlined
|
||||
} from '@ant-design/icons-vue'
|
||||
|
||||
export type ConsoleNavItem = {
|
||||
key: string
|
||||
label: string
|
||||
icon?: Component
|
||||
to: string
|
||||
}
|
||||
|
||||
export type ConsoleNavGroup = {
|
||||
key: string
|
||||
label: string
|
||||
icon?: Component
|
||||
iconColor?: string
|
||||
badge?: string
|
||||
disabled?: boolean
|
||||
children: ConsoleNavItem[]
|
||||
}
|
||||
|
||||
export type ConsoleNavLink = Omit<ConsoleNavGroup, 'children'> & {
|
||||
to: string
|
||||
}
|
||||
|
||||
export type ConsoleNavEntry = ConsoleNavGroup | ConsoleNavLink
|
||||
|
||||
export const consoleNav: ConsoleNavEntry[] = [
|
||||
{
|
||||
key: 'console-tenant',
|
||||
label: '管理中心',
|
||||
icon: AppstoreOutlined,
|
||||
to: '/console'
|
||||
},
|
||||
{
|
||||
key: 'console-orders',
|
||||
label: '我的订单',
|
||||
icon: ShoppingCartOutlined,
|
||||
children: [
|
||||
{ key: 'console-orders-orders', label: '订单管理', icon: UnorderedListOutlined, to: '/console/orders' },
|
||||
{ key: 'console-orders-invoices', label: '发票记录', icon: FileTextOutlined, to: '/console/invoices' },
|
||||
{ key: 'console-orders-products', label: '已购产品', icon: ShoppingOutlined, to: '/console/products' },
|
||||
{ key: 'console-orders-coupons', label: '优惠券', icon: GiftOutlined, to: '/console/coupons' }
|
||||
]
|
||||
},
|
||||
{
|
||||
key: 'console-account',
|
||||
label: '账号设置',
|
||||
icon: SettingOutlined,
|
||||
children: [
|
||||
{ key: 'console-account-info', label: '账号信息', icon: UserOutlined, to: '/console/account' },
|
||||
// { key: 'console-account-members', label: '成员管理', icon: TeamOutlined, to: '/console/account/members' },
|
||||
{ key: 'console-account-security', label: '账号安全', icon: SafetyCertificateOutlined, to: '/console/account/security' },
|
||||
{ key: 'console-account-kyc', label: '实名认证', icon: IdcardOutlined, to: '/console/account/kyc' },
|
||||
{ key: 'console-account-logout', label: '退出登录', icon: LogoutOutlined, to: '/console/logout' }
|
||||
]
|
||||
}
|
||||
]
|
||||
15
app/config/nav.ts
Normal file
15
app/config/nav.ts
Normal file
@@ -0,0 +1,15 @@
|
||||
export type NavItem = {
|
||||
key: string
|
||||
label: string
|
||||
to: string
|
||||
}
|
||||
|
||||
export const mainNav: NavItem[] = [
|
||||
{key: 'home', label: '首页', to: '/'},
|
||||
{key: 'products', label: '产品矩阵', to: '/products'},
|
||||
{key: 'platform', label: '平台能力', to: '/platform'},
|
||||
{key: 'market', label: '模板/插件市场', to: '/market'},
|
||||
{key: 'deploy', label: '部署方案', to: '/deploy'},
|
||||
{key: 'flow', label: '开通流程', to: '/flow'},
|
||||
{key: 'contact', label: '联系我们', to: '/contact'}
|
||||
]
|
||||
7
app/config/setting.ts
Normal file
7
app/config/setting.ts
Normal file
@@ -0,0 +1,7 @@
|
||||
export const SERVER_API_URL = '/api/_server'
|
||||
export const MODULES_API_URL = '/api/_modules'
|
||||
export const FILE_SERVER = '/api/_file'
|
||||
|
||||
// Some endpoints use this as a special TenantId override (defaults to current tenant)
|
||||
export const TEMPLATE_ID = '10584'
|
||||
|
||||
10
app/config/site-nav.ts
Normal file
10
app/config/site-nav.ts
Normal file
@@ -0,0 +1,10 @@
|
||||
export type SiteNavItem = {
|
||||
key: string
|
||||
label: string
|
||||
to: string
|
||||
}
|
||||
|
||||
export const siteNav: SiteNavItem[] = [
|
||||
{ key: 'site-home', label: '概览', to: '/site' }
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user