diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 3f7ad41a1..97cc1f8a2 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -9,6 +9,5 @@ "antfu.iconify", "antfu.unocss", "mikestead.dotenv", - "vue.vscode-typescript-vue-plugin" ] -} +} \ No newline at end of file diff --git a/apps/test-server/service/FileService.ts b/apps/test-server/service/FileService.ts index 11e3e7705..6ad491856 100644 --- a/apps/test-server/service/FileService.ts +++ b/apps/test-server/service/FileService.ts @@ -10,8 +10,8 @@ export default class FileService { let fileReader, fileResource, writeStream; const fileFunc = function (file) { - fileReader = fs.createReadStream(file.path); - fileResource = filePath + `/${file.name}`; + fileReader = fs.createReadStream(file.filepath); + fileResource = filePath + `/${file.originalFilename}`; console.log(fileResource); writeStream = fs.createWriteStream(fileResource); @@ -22,7 +22,7 @@ export default class FileService { if (flag) { let url = ''; for (let i = 0; i < files.length; i++) { - url += uploadUrl + `/${files[i].name},`; + url += uploadUrl + `/${files[i].originalFilename},`; } url = url.replace(/,$/gi, ''); ctx.body = { @@ -32,7 +32,7 @@ export default class FileService { }; } else { ctx.body = { - url: uploadUrl + `/${files.name}`, + url: uploadUrl + `/${files.originalFilename}`, code: 0, message: 'upload Success!', }; diff --git a/index.html b/index.html index 16722a6c5..41d55cf5e 100644 --- a/index.html +++ b/index.html @@ -125,18 +125,6 @@ } } - @keyframes ant-rotate { - to { - transform: rotate(405deg); - } - } - - @keyframes ant-spin-move { - to { - opacity: 1; - } - } - @keyframes ant-spin-move { to { opacity: 1; diff --git a/src/components/Application/src/search/useMenuSearch.ts b/src/components/Application/src/search/useMenuSearch.ts index 5f29c2b8b..2efe5ee70 100644 --- a/src/components/Application/src/search/useMenuSearch.ts +++ b/src/components/Application/src/search/useMenuSearch.ts @@ -1,13 +1,13 @@ -import { type Menu } from '@/router/types'; -import { type AnyFunction } from '@vben/types'; -import { ref, onBeforeMount, unref, Ref, nextTick } from 'vue'; +import { useI18n } from '@/hooks/web/useI18n'; +import { useGo } from '@/hooks/web/usePage'; import { getMenus } from '@/router/menus'; -import { cloneDeep } from 'lodash-es'; +import { type Menu } from '@/router/types'; import { filter, forEach } from '@/utils/helper/treeHelper'; -import { useGo } from '@/hooks/web/usePage'; import { useScrollTo } from '@vben/hooks'; +import { type AnyFunction } from '@vben/types'; import { onKeyStroke, useDebounceFn } from '@vueuse/core'; -import { useI18n } from '@/hooks/web/useI18n'; +import { cloneDeep } from 'lodash-es'; +import { Ref, nextTick, onBeforeMount, ref, unref } from 'vue'; export interface SearchResult { name: string; @@ -42,7 +42,7 @@ export function useMenuSearch(refs: Ref, scrollWrap: Ref, emit: A const list = await getMenus(); menuList = cloneDeep(list); forEach(menuList, (item) => { - item.name = t(item.name); + item.name = t(item.meta?.title || item.name); }); }); diff --git a/src/components/Container/src/collapse/CollapseContainer.vue b/src/components/Container/src/collapse/CollapseContainer.vue index c3a43c88c..8cf1eef96 100644 --- a/src/components/Container/src/collapse/CollapseContainer.vue +++ b/src/components/Container/src/collapse/CollapseContainer.vue @@ -1,12 +1,12 @@ diff --git a/src/components/Scrollbar/src/bar.ts b/src/components/Scrollbar/src/bar.ts index f1832803d..1a950595d 100644 --- a/src/components/Scrollbar/src/bar.ts +++ b/src/components/Scrollbar/src/bar.ts @@ -28,6 +28,35 @@ export default defineComponent({ }); const barStore = ref({}); const cursorDown = ref(); + + const mouseMoveDocumentHandler = (e: any) => { + if (cursorDown.value === false) { + return; + } + const prevPage = barStore.value[bar.value.axis]; + + if (!prevPage) { + return; + } + + const offset = + (instance?.vnode.el?.getBoundingClientRect()[bar.value.direction] - e[bar.value.client]) * + -1; + const thumbClickPosition = thumb.value[bar.value.offset] - prevPage; + const thumbPositionPercentage = + ((offset - thumbClickPosition) * 100) / instance?.vnode.el?.[bar.value.offset]; + wrap.value[bar.value.scroll] = + (thumbPositionPercentage * wrap.value[bar.value.scrollSize]) / 100; + }; + + const startDrag = (e: any) => { + e.stopImmediatePropagation(); + cursorDown.value = true; + on(document, 'mousemove', mouseMoveDocumentHandler); + on(document, 'mouseup', mouseUpDocumentHandler); + document.onselectstart = () => false; + }; + const clickThumbHandler = (e: any) => { // prevent click event of right button if (e.ctrlKey || e.button === 2) { @@ -51,29 +80,6 @@ export default defineComponent({ wrap.value[bar.value.scroll] = (thumbPositionPercentage * wrap.value[bar.value.scrollSize]) / 100; }; - const startDrag = (e: any) => { - e.stopImmediatePropagation(); - cursorDown.value = true; - on(document, 'mousemove', mouseMoveDocumentHandler); - on(document, 'mouseup', mouseUpDocumentHandler); - document.onselectstart = () => false; - }; - - const mouseMoveDocumentHandler = (e: any) => { - if (cursorDown.value === false) return; - const prevPage = barStore.value[bar.value.axis]; - - if (!prevPage) return; - - const offset = - (instance?.vnode.el?.getBoundingClientRect()[bar.value.direction] - e[bar.value.client]) * - -1; - const thumbClickPosition = thumb.value[bar.value.offset] - prevPage; - const thumbPositionPercentage = - ((offset - thumbClickPosition) * 100) / instance?.vnode.el?.[bar.value.offset]; - wrap.value[bar.value.scroll] = - (thumbPositionPercentage * wrap.value[bar.value.scrollSize]) / 100; - }; function mouseUpDocumentHandler() { cursorDown.value = false; diff --git a/src/components/SimpleMenu/src/SimpleSubMenu.vue b/src/components/SimpleMenu/src/SimpleSubMenu.vue index 0a7ef975b..98bc085c9 100644 --- a/src/components/SimpleMenu/src/SimpleSubMenu.vue +++ b/src/components/SimpleMenu/src/SimpleSubMenu.vue @@ -78,7 +78,6 @@ const getShowMenu = computed(() => !props.item?.meta?.hideMenu); const getIcon = computed(() => (props.item?.img ? undefined : props.item?.icon)); const getImg = computed(() => props.item?.img); - // const getI18nName = computed(() => t(props.item?.name)); const getI18nName = computed(() => { const locales = props.item.meta && props.item.meta.locales; const title = props.item.meta && props.item.meta.title; diff --git a/src/components/Table/src/components/HeaderCell.vue b/src/components/Table/src/components/HeaderCell.vue index ffecb2b04..68f90513c 100644 --- a/src/components/Table/src/components/HeaderCell.vue +++ b/src/components/Table/src/components/HeaderCell.vue @@ -55,7 +55,6 @@ .@{prefix-cls} { &__help { margin-left: 8px; - color: rgb(0 0 0 / 65%) !important; } } diff --git a/src/components/Table/src/components/TableImg.vue b/src/components/Table/src/components/TableImg.vue index fdd221ec7..e7b4def5a 100644 --- a/src/components/Table/src/components/TableImg.vue +++ b/src/components/Table/src/components/TableImg.vue @@ -5,7 +5,7 @@ v-if="imgList && imgList.length" :style="getWrapStyle" > - +