Skip to content
This repository has been archived by the owner on Aug 28, 2024. It is now read-only.

perf(layout): 优化部分样式 #37

Merged
merged 66 commits into from
Jan 14, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
66 commits
Select commit Hold shift + click to select a range
8679c3b
perf: Header样式调整
hormers Nov 17, 2022
e743d6a
feat: 新增IconWrapper,El组件
hormers Nov 18, 2022
f98e36c
perf: LayoutHeader,LayoutSider样式调整,适配dark模式
hormers Nov 18, 2022
3b9f71e
perf: 固定头部
hormers Nov 18, 2022
99a192e
Merge branch 'jinmao88:master' into master
hormers Nov 18, 2022
4dbef38
Merge branch 'jinmao88:master' into master
hormers Nov 22, 2022
c02e223
wip: 项目配置
hormers Nov 22, 2022
3625ed3
Merge remote-tracking branch 'origin/master'
hormers Nov 22, 2022
28171ca
Merge remote-tracking branch 'origin/master'
hormers Nov 23, 2022
6022047
fix: 修复menuSetting属性设置错误
hormers Nov 23, 2022
4bc7772
wip: 项目配置组件
hormers Nov 23, 2022
efed8cb
feat: 项目配置组件,配置主题,界面布局属性
hormers Nov 24, 2022
27e53c5
feat: 增加拷贝,重置,清空缓存方法
hormers Nov 24, 2022
a04c694
Merge branch 'jinmao88:master' into master
hormers Nov 24, 2022
44aa7a0
fix: 项目配置项错误问题
hormers Nov 25, 2022
1cb3549
fix: useMenuSearch报错
hormers Nov 25, 2022
f72abbc
Merge branch 'jinmao88:master' into master
hormers Nov 26, 2022
048de0c
perf: 登录表单适配Dark模式
hormers Nov 26, 2022
af95179
Merge branch 'jinmao88:master' into master
hormers Nov 26, 2022
0cbf300
Merge branch 'jinmao88:master' into master
hormers Nov 26, 2022
48fb1e3
Merge branch 'jinmao88:master' into master
hormers Nov 27, 2022
4e41a49
Merge branch 'jinmao88:master' into master
hormers Dec 3, 2022
bc5d674
wip: 锁屏
hormers Dec 4, 2022
0b6ade4
wip: 自动锁屏
hormers Dec 5, 2022
6528bc1
Merge branch 'jinmao88:master' into master
hormers Dec 16, 2022
a0b9753
fix: 修复 run dev 报错
hormers Dec 16, 2022
16702e9
feat: 锁屏
hormers Dec 16, 2022
522adfc
Merge branch 'jinmao88:master' into master
hormers Dec 18, 2022
870a5d8
perf: 顶部菜单混合模式logo样式
hormers Dec 20, 2022
2423327
wip: 左侧混合菜单模式
hormers Dec 20, 2022
b99fafe
Merge branch 'jinmao88:master' into master
hormers Dec 21, 2022
44655a4
wip: 左侧混合菜单
hormers Dec 26, 2022
497370d
feat: 左侧混合菜单模式
hormers Dec 27, 2022
bf6eaff
Merge branch 'vbenjs:master' into master
hormers Dec 27, 2022
d914c47
Merge remote-tracking branch 'origin/master'
hormers Dec 27, 2022
57299d6
fix: 优化交互体验
hormers Dec 27, 2022
e166c06
Merge branch 'vbenjs:master' into master
hormers Dec 27, 2022
660685e
fix: 修复刷新页面左侧混合菜单不显示
hormers Jan 5, 2023
d0a0056
feat: 响应式布局layout及一些样式优化
hormers Jan 6, 2023
122d659
perf: 优化顶部菜单混合头部样式
hormers Jan 6, 2023
dcae4fe
wip: 修复固定头部
hormers Jan 6, 2023
e8760d2
fix: 修复固定头部
hormers Jan 6, 2023
f61dbb6
fix: 修复固定头部
hormers Jan 6, 2023
3effee2
Merge branch 'vbenjs:master' into master
hormers Jan 7, 2023
d18c681
perf: Menu手风琴模式
hormers Jan 7, 2023
587efe7
wip: settings Affix
hormers Jan 7, 2023
0e5cb57
feat: Set head display
hormers Jan 10, 2023
986e5c7
feat: Set logo display
hormers Jan 10, 2023
e5e5515
wip: LayoutFooter
hormers Jan 10, 2023
35c59f3
wip: LayoutFooter
hormers Jan 10, 2023
8adee51
feat: LayoutFooter
hormers Jan 11, 2023
b66528f
Merge remote-tracking branch 'origin/master'
hormers Jan 11, 2023
fee0b17
perf: LayoutFooter
hormers Jan 12, 2023
99212aa
feat: 标签页设置
hormers Jan 12, 2023
cbd6bf8
feat: 面包屑设置
hormers Jan 12, 2023
9b56ae4
Merge branch 'vbenjs:master' into master
hormers Jan 12, 2023
31455c7
wip: tabs
hormers Jan 13, 2023
932dbaa
feat: tabs 关闭 右键菜单
hormers Jan 13, 2023
c82ecde
feat: 标签页快捷刷新按钮
hormers Jan 13, 2023
6c44e08
feat: 标签页快捷操作按钮
hormers Jan 13, 2023
2f17d3b
feat: 标签页折叠按钮
hormers Jan 13, 2023
c7ae62e
Merge branch 'vbenjs:master' into master
hormers Jan 14, 2023
d612bd6
fix: 非layout页面不显示tab
hormers Jan 14, 2023
f6f46f2
perf: 优化菜单图标
hormers Jan 14, 2023
b17ad1a
perf: 优化头部右侧按钮样式
hormers Jan 14, 2023
0150c60
feat: 灰色/色弱模式
hormers Jan 14, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 1 addition & 3 deletions apps/admin/src/router/routes/modules/dashboard.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ const dashboard: RouteRecordItem = {
redirect: '/dashboard/analysis',
meta: {
orderNo: 1,
icon: 'ion:grid-outline',
icon: 'mdi:monitor-dashboard',
title: 'routes.dashboard.dashboard',
},
children: [
Expand All @@ -17,7 +17,6 @@ const dashboard: RouteRecordItem = {
component: () => import('@/pages/dashboard/analysis/index.vue'),
meta: {
title: 'routes.dashboard.analysis',
icon: 'ion:grid-outline',
},
},
{
Expand All @@ -26,7 +25,6 @@ const dashboard: RouteRecordItem = {
component: () => import('@/pages/dashboard/workbench/index.vue'),
meta: {
title: 'routes.dashboard.workbench',
icon: 'ion:grid-outline',
},
},
],
Expand Down
6 changes: 1 addition & 5 deletions apps/admin/src/router/routes/modules/demo/demo.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ const dashboard: RouteRecordItem = {
redirect: '/dashboard/form',
meta: {
orderNo: 2,
icon: 'ion:grid-outline',
icon: 'line-md:clipboard-list-twotone',
title: 'routes.demo.demo',
},
children: [
Expand All @@ -17,7 +17,6 @@ const dashboard: RouteRecordItem = {
component: () => import('@/pages/demo/Table.vue'),
meta: {
title: 'routes.demo.table',
icon: 'ion:grid-outline',
},
},
{
Expand All @@ -26,7 +25,6 @@ const dashboard: RouteRecordItem = {
component: () => import('@/pages/demo/Form.vue'),
meta: {
title: 'routes.demo.form',
icon: 'ion:grid-outline',
},
},
{
Expand All @@ -35,7 +33,6 @@ const dashboard: RouteRecordItem = {
component: () => import('@/pages/demo/Card.vue'),
meta: {
title: 'routes.demo.card',
icon: 'ion:grid-outline',
},
},
{
Expand All @@ -44,7 +41,6 @@ const dashboard: RouteRecordItem = {
component: () => import('@/pages/demo/Draggable.vue'),
meta: {
title: '拖拽',
icon: 'ion:grid-outline',
},
},
],
Expand Down
2 changes: 1 addition & 1 deletion apps/admin/src/router/routes/modules/demo/editor.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ const Editor: RouteRecordItem = {
meta: {
orderNo: 3,
title: '编辑器',
icon: 'openmoji:code-editor'
},
children: [
{
Expand All @@ -15,7 +16,6 @@ const Editor: RouteRecordItem = {
component: () => import('@/pages/demo/editor/monaco-editor.vue'),
meta: {
title: 'monaco-editor',
icon: 'ion:grid-outline',
},
},
],
Expand Down
2 changes: 2 additions & 0 deletions apps/admin/src/router/routes/modules/demo/page.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ const Page: RouteRecordItem = {
meta: {
orderNo: 4,
title: '非框架页面',
icon: 'tabler:frame-off',
hideTab: true
},
}

Expand Down
8 changes: 3 additions & 5 deletions apps/admin/src/store/multipleTab.ts
Original file line number Diff line number Diff line change
Expand Up @@ -128,12 +128,10 @@ export const useMultipleTabStore = defineStore({
async checkTab(route: RouteLocationNormalized) {
// await router.isReady()

const { path, name } = getRawRoute(route)
const { path, name, meta } = getRawRoute(route)
// 404 The page does not need to add a tab
if (
path === PageEnum.ERROR_PAGE ||
path === PageEnum.BASE_LOGIN ||
path === PageEnum.BASE_LOCK ||
if ( [PageEnum.ERROR_PAGE, PageEnum.BASE_LOGIN, PageEnum.BASE_LOCK].includes(path as PageEnum) ||
meta?.hideTab ||
!name ||
[REDIRECT_ROUTE.name, PAGE_NOT_FOUND_ROUTE.name].includes(
name as string,
Expand Down
2 changes: 1 addition & 1 deletion packages/layouts/src/components/header.vue
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ const getShowHeaderMultipleTab = computed(()=>{
<slot name="menu"></slot>
<div class="pl-8px pr-8px">
<slot name="buttons">
<VbenSpace class="p-1" :size="12" align="center">
<VbenSpace class="p-1" :size="16" align="center">
<AppSearch v-if="getShowSearch"/>
<AppNotify :is-dark="isDark" v-if="getShowNotice"/>
<AppFullScreen v-if="getShowFullScreen"/>
Expand Down
1 change: 1 addition & 0 deletions packages/layouts/src/components/menu/index.vue
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,7 @@ const routerToMenu = (item: RouteRecordItem) => {
}
}
function renderIcon(icon: string) {
if (!icon) return undefined
return () => h(VbenIconify, { icon })
}
</script>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,13 @@ import {ref} from "vue";
const settingDrawerVisible = ref(false)
</script>
<template>
<VbenIconify
icon="ion:settings-outline"
hoverPointer
@click="settingDrawerVisible = true"
/>
<SettingDrawer v-model:visible="settingDrawerVisible" />
<div class="flex items-center">
<VbenIconify
icon="ion:settings-outline"
hoverPointer
@click="settingDrawerVisible = true"
/>
<SettingDrawer v-model:visible="settingDrawerVisible"/>
</div>
</template>
<style lang="scss" scoped></style>
6 changes: 4 additions & 2 deletions packages/layouts/src/components/setting/handler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ import {ProjectConfig} from '@vben/types';
// import { updateDarkTheme } from '/@/logics/theme/dark';
// import { useRootSetting } from '/@/hooks/setting/useRootSetting';
import {context} from "../../../bridge";
import {updateColorWeak} from "../../logics/updateColorWeak";
import {updateGrayMode} from "../../logics/updateGrayMode";

export function baseHandler(event: HandlerSettingEnum, value: any) {
const {useConfigStore} = context
Expand Down Expand Up @@ -138,14 +140,14 @@ export function handler(event: HandlerSettingEnum, value: any): DeepPartial<Proj
return {showBreadCrumbIcon: value};

case HandlerSettingEnum.GRAY_MODE:
// updateGrayMode(value);
updateGrayMode(value);
return {grayMode: value};

case HandlerSettingEnum.SHOW_FOOTER:
return {showFooter: value};

case HandlerSettingEnum.COLOR_WEAK:
// updateColorWeak(value);
updateColorWeak(value);
return {colorWeak: value};

case HandlerSettingEnum.SHOW_LOGO:
Expand Down
2 changes: 1 addition & 1 deletion packages/layouts/src/components/tabs/index.vue
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
import type {RouteLocationNormalized, RouteMeta} from 'vue-router'
import {Sortable} from '@vben/utils'
import {useRouter} from 'vue-router'
import {computed, nextTick, ref, unref, watch} from 'vue'
import {computed, nextTick, ref, unref} from 'vue'
import {useI18n} from '@vben/locale'
import {REDIRECT_NAME} from '@vben/constants'
import {useGo} from '@vben/hooks'
Expand Down
6 changes: 4 additions & 2 deletions packages/layouts/src/components/user-dropdown/user-info.vue
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
<script lang="ts" setup>
import { computed } from 'vue'
import { context } from '../../../bridge'
const { useUserStore } = context
const { useUserStore, useAppInject } = context
import headerImg from '@/assets/images/header.jpg'

const userStore = useUserStore()

const {getIsMobile} = useAppInject()

const getUserInfo = computed(() => {
const { realName = 'Vben Admin', avatar, desc } = userStore.getUserInfo || {}

Expand All @@ -15,7 +17,7 @@ const getUserInfo = computed(() => {
<template>
<div class="flex cursor-pointer">
<img :src="getUserInfo.avatar" class="avatar w-6 h-6 mr-3" alt="avatar" />
<span>{{ getUserInfo.realName }}</span>
<span v-if="!getIsMobile">{{ getUserInfo.realName }}</span>
</div>
</template>
<style scoped>
Expand Down
9 changes: 9 additions & 0 deletions packages/layouts/src/logics/updateColorWeak.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import { toggleClass } from '@vben/utils';

/**
* Change the status of the project's color weakness mode
* @param colorWeak
*/
export function updateColorWeak(colorWeak: boolean) {
toggleClass(colorWeak, 'color-weak', document.body);
}
9 changes: 9 additions & 0 deletions packages/layouts/src/logics/updateGrayMode.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import { toggleClass } from '@vben/utils';

/**
* Change project gray mode status
* @param gray
*/
export function updateGrayMode(gray: boolean) {
toggleClass(gray, 'gray-mode', document.body);
}
9 changes: 9 additions & 0 deletions packages/styles/src/entry.css
Original file line number Diff line number Diff line change
Expand Up @@ -161,3 +161,12 @@
transform: translateY(0);
}
}

@keyframes loading-circle {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
1 change: 1 addition & 0 deletions packages/utils/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,6 @@ export * from './download'
export * from './tree'
export * from './router'
export * from './mitt'
export * from './theme'

// export * from 'lodash-es'
11 changes: 11 additions & 0 deletions packages/utils/src/theme.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
const docEle = document.documentElement;
export function toggleClass(flag: boolean, clsName: string, target?: HTMLElement) {
const targetEl = target || document.body;
let { className } = targetEl;
className = className.replace(clsName, '');
targetEl.className = flag ? `${className} ${clsName} ` : className;
}

export function setCssVar(prop: string, val: any, dom = docEle) {
dom.style.setProperty(prop, val);
}
10 changes: 1 addition & 9 deletions packages/vbenComponents/src/iconify/src/Iconify.vue
Original file line number Diff line number Diff line change
Expand Up @@ -93,16 +93,8 @@ onMounted(update)
}
}

@keyframes loadingCircle {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
.iconify__infinite {
animation: loadingCircle 1s infinite linear;
animation: loading-circle 1s infinite linear;
}

</style>