From be13e7b42587a34640129850cf6dcb0e9815732c Mon Sep 17 00:00:00 2001 From: xxm Date: Mon, 3 Oct 2022 19:26:05 +0800 Subject: [PATCH] =?UTF-8?q?style=20ESline=E8=A7=84=E5=88=99=E6=9B=B4?= =?UTF-8?q?=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .eslintrc.js | 6 +- build/config/themeConfig.ts | 72 ++-- build/constant.ts | 4 +- build/generate/generateModifyVars.ts | 18 +- build/generate/icon/index.ts | 52 ++- build/getConfigFileName.ts | 6 +- build/script/buildConf.ts | 42 +- build/script/postBuild.ts | 20 +- build/utils.ts | 64 +-- build/vite/plugin/compress.ts | 19 +- build/vite/plugin/html.ts | 20 +- build/vite/plugin/imagemin.ts | 6 +- build/vite/plugin/index.ts | 72 ++-- build/vite/plugin/mock.ts | 4 +- build/vite/plugin/pwa.ts | 10 +- build/vite/plugin/styleImport.ts | 12 +- build/vite/plugin/svgSprite.ts | 8 +- build/vite/plugin/theme.ts | 36 +- build/vite/plugin/visualizer.ts | 8 +- build/vite/proxy.ts | 18 +- commitlint.config.js | 30 +- mock/_createProductionServer.ts | 14 +- mock/_util.ts | 38 +- mock/demo/account.ts | 16 +- mock/demo/api-cascader.ts | 14 +- mock/demo/select-demo.ts | 20 +- mock/demo/system.ts | 92 ++--- mock/demo/table-demo.ts | 26 +- mock/demo/tree-demo.ts | 24 +- mock/sys/menu.ts | 48 +-- mock/sys/user.ts | 56 ++- postcss.config.js | 2 +- prettier.config.js | 2 +- src/App.vue | 14 +- src/api/demo/account.ts | 10 +- src/api/demo/cascader.ts | 7 +- src/api/demo/error.ts | 4 +- src/api/demo/model/accountModel.ts | 10 +- src/api/demo/model/areaModel.ts | 14 +- src/api/demo/model/optionsModel.ts | 10 +- src/api/demo/model/systemModel.ts | 90 ++--- src/api/demo/model/tableModel.ts | 20 +- src/api/demo/select.ts | 7 +- src/api/demo/system.ts | 24 +- src/api/demo/table.ts | 6 +- src/api/demo/tree.ts | 5 +- src/api/model/baseModel.ts | 8 +- src/api/sys/menu.ts | 8 +- src/api/sys/model/menuModel.ts | 20 +- src/api/sys/model/uploadModel.ts | 6 +- src/api/sys/model/userModel.ts | 26 +- src/api/sys/upload.ts | 17 +- src/api/sys/user.ts | 18 +- src/components/Application/index.ts | 24 +- .../Application/src/AppDarkModeToggle.vue | 32 +- .../Application/src/AppLocalePicker.vue | 42 +- src/components/Application/src/AppLogo.vue | 36 +- .../Application/src/AppProvider.vue | 57 ++- .../Application/src/search/AppSearch.vue | 22 +- .../src/search/AppSearchFooter.vue | 13 +- .../src/search/AppSearchKeyItem.vue | 4 +- .../Application/src/search/AppSearchModal.vue | 63 ++- .../Application/src/search/useMenuSearch.ts | 162 ++++---- .../Application/src/useAppContext.ts | 14 +- src/components/Authority/index.ts | 6 +- src/components/Authority/src/Authority.vue | 24 +- src/components/Basic/index.ts | 14 +- src/components/Basic/src/BasicArrow.vue | 16 +- src/components/Basic/src/BasicHelp.vue | 42 +- src/components/Basic/src/BasicTitle.vue | 16 +- src/components/Button/index.ts | 16 +- src/components/Button/src/BasicButton.vue | 26 +- .../Button/src/PopConfirmButton.vue | 40 +- src/components/Button/src/props.ts | 2 +- src/components/CardList/index.ts | 6 +- src/components/CardList/src/CardList.vue | 98 ++--- src/components/CardList/src/data.ts | 16 +- src/components/ClickOutSide/index.ts | 6 +- .../ClickOutSide/src/ClickOutSide.vue | 16 +- src/components/CodeEditor/index.ts | 12 +- src/components/CodeEditor/src/CodeEditor.vue | 41 +- .../CodeEditor/src/codemirror/CodeMirror.vue | 85 ++-- .../CodeEditor/src/codemirror/codeMirror.ts | 16 +- .../src/json-preview/JsonPreview.vue | 6 +- src/components/Container/index.ts | 16 +- .../Container/src/LazyContainer.vue | 81 ++-- .../Container/src/ScrollContainer.vue | 48 +-- .../src/collapse/CollapseContainer.vue | 30 +- .../Container/src/collapse/CollapseHeader.vue | 8 +- src/components/Container/src/typing.ts | 20 +- src/components/ContextMenu/index.ts | 4 +- .../ContextMenu/src/ContextMenu.vue | 101 +++-- .../ContextMenu/src/createContextMenu.ts | 78 ++-- src/components/ContextMenu/src/typing.ts | 46 +-- src/components/CountDown/index.ts | 10 +- src/components/CountDown/src/CountButton.vue | 44 +-- .../CountDown/src/CountdownInput.vue | 18 +- src/components/CountDown/src/useCountdown.ts | 44 +-- src/components/CountTo/index.ts | 6 +- src/components/CountTo/src/CountTo.vue | 64 +-- src/components/Cropper/index.ts | 12 +- src/components/Cropper/src/CopperModal.vue | 125 +++--- src/components/Cropper/src/Cropper.vue | 129 +++--- src/components/Cropper/src/CropperAvatar.vue | 90 ++--- src/components/Cropper/src/typing.ts | 8 +- src/components/Description/index.ts | 10 +- .../Description/src/Description.vue | 116 +++--- src/components/Description/src/typing.ts | 39 +- .../Description/src/useDescription.ts | 26 +- src/components/Drawer/index.ts | 10 +- src/components/Drawer/src/BasicDrawer.vue | 144 +++---- .../Drawer/src/components/DrawerFooter.vue | 33 +- .../Drawer/src/components/DrawerHeader.vue | 18 +- src/components/Drawer/src/props.ts | 10 +- src/components/Drawer/src/typing.ts | 110 +++--- src/components/Drawer/src/useDrawer.ts | 149 ++++--- src/components/Dropdown/index.ts | 8 +- src/components/Dropdown/src/Dropdown.vue | 63 ++- src/components/Dropdown/src/typing.ts | 14 +- src/components/Excel/index.ts | 14 +- src/components/Excel/src/Export2Excel.ts | 39 +- src/components/Excel/src/ExportExcelModal.vue | 44 +-- src/components/Excel/src/ImportExcel.vue | 112 +++--- src/components/Excel/src/typing.ts | 30 +- src/components/FlowChart/index.ts | 6 +- src/components/FlowChart/src/FlowChart.vue | 110 +++--- .../FlowChart/src/FlowChartToolbar.vue | 79 ++-- .../FlowChart/src/adpterForTurbo.ts | 50 +-- src/components/FlowChart/src/config.ts | 8 +- src/components/FlowChart/src/types.ts | 16 +- .../FlowChart/src/useFlowContext.ts | 14 +- src/components/Form/index.ts | 26 +- src/components/Form/src/BasicForm.vue | 183 ++++----- src/components/Form/src/componentMap.ts | 102 ++--- .../Form/src/components/ApiCascader.vue | 130 +++--- .../Form/src/components/ApiRadioGroup.vue | 84 ++-- .../Form/src/components/ApiSelect.vue | 100 +++-- .../Form/src/components/ApiTransfer.vue | 86 ++-- .../Form/src/components/ApiTree.vue | 68 ++-- .../Form/src/components/ApiTreeSelect.vue | 66 ++-- .../Form/src/components/FormAction.vue | 71 ++-- .../Form/src/components/FormItem.vue | 278 ++++++------- .../Form/src/components/RadioButtonGroup.vue | 34 +- src/components/Form/src/helper.ts | 52 ++- src/components/Form/src/hooks/useAdvanced.ts | 147 ++++--- src/components/Form/src/hooks/useAutoFocus.ts | 45 +-- .../Form/src/hooks/useComponentRegister.ts | 14 +- src/components/Form/src/hooks/useForm.ts | 106 +++-- .../Form/src/hooks/useFormContext.ts | 14 +- .../Form/src/hooks/useFormEvents.ts | 250 ++++++------ .../Form/src/hooks/useFormValues.ts | 109 +++--- .../Form/src/hooks/useLabelWidth.ts | 37 +- src/components/Form/src/props.ts | 18 +- src/components/Form/src/types/form.ts | 226 +++++------ src/components/Form/src/types/formItem.ts | 38 +- src/components/Form/src/types/hooks.ts | 8 +- src/components/Form/src/types/index.ts | 30 +- src/components/Icon/data/icons.data.ts | 2 +- src/components/Icon/index.ts | 10 +- src/components/Icon/src/Icon.vue | 94 ++--- src/components/Icon/src/IconPicker.vue | 136 +++---- src/components/Icon/src/SvgIcon.vue | 30 +- src/components/Loading/index.ts | 8 +- src/components/Loading/src/Loading.vue | 12 +- src/components/Loading/src/createLoading.ts | 42 +- src/components/Loading/src/typing.ts | 14 +- src/components/Loading/src/useLoading.ts | 54 ++- src/components/Markdown/index.ts | 12 +- src/components/Markdown/src/Markdown.vue | 133 +++---- .../Markdown/src/MarkdownViewer.vue | 48 +-- src/components/Markdown/src/getTheme.ts | 15 +- src/components/Markdown/src/typing.ts | 4 +- src/components/Menu/index.ts | 4 +- src/components/Menu/src/BasicMenu.vue | 128 +++--- .../Menu/src/components/BasicMenuItem.vue | 12 +- .../Menu/src/components/BasicSubMenuItem.vue | 31 +- .../Menu/src/components/MenuItemContent.vue | 22 +- src/components/Menu/src/props.ts | 20 +- src/components/Menu/src/types.ts | 10 +- src/components/Menu/src/useOpenKeys.ts | 69 ++-- src/components/Modal/index.ts | 14 +- src/components/Modal/src/BasicModal.vue | 144 +++---- src/components/Modal/src/components/Modal.tsx | 30 +- .../Modal/src/components/ModalClose.vue | 30 +- .../Modal/src/components/ModalFooter.vue | 20 +- .../Modal/src/components/ModalHeader.vue | 8 +- .../Modal/src/components/ModalWrapper.vue | 136 +++---- src/components/Modal/src/hooks/useModal.ts | 155 ++++---- .../Modal/src/hooks/useModalContext.ts | 12 +- .../Modal/src/hooks/useModalDrag.ts | 110 +++--- .../Modal/src/hooks/useModalFullScreen.ts | 22 +- src/components/Modal/src/props.ts | 14 +- src/components/Modal/src/typing.ts | 124 +++--- src/components/Page/index.ts | 12 +- src/components/Page/src/PageFooter.vue | 17 +- src/components/Page/src/PageWrapper.vue | 86 ++-- src/components/Preview/index.ts | 4 +- src/components/Preview/src/Functional.vue | 294 +++++++------- src/components/Preview/src/Preview.vue | 52 +-- src/components/Preview/src/functional.ts | 26 +- src/components/Preview/src/typing.ts | 68 ++-- src/components/Qrcode/index.ts | 8 +- src/components/Qrcode/src/Qrcode.vue | 56 +-- src/components/Qrcode/src/drawCanvas.ts | 37 +- src/components/Qrcode/src/drawLogo.ts | 105 +++-- src/components/Qrcode/src/qrcodePlus.ts | 6 +- src/components/Qrcode/src/toCanvas.ts | 12 +- src/components/Qrcode/src/typing.ts | 52 +-- src/components/Scrollbar/index.ts | 6 +- src/components/Scrollbar/src/Scrollbar.vue | 85 ++-- src/components/Scrollbar/src/bar.ts | 102 ++--- src/components/Scrollbar/src/types.d.ts | 22 +- src/components/Scrollbar/src/util.ts | 26 +- src/components/SimpleMenu/index.ts | 4 +- src/components/SimpleMenu/src/SimpleMenu.vue | 113 +++--- .../SimpleMenu/src/SimpleMenuTag.vue | 54 +-- .../SimpleMenu/src/SimpleSubMenu.vue | 56 ++- .../SimpleMenu/src/components/Menu.vue | 110 +++--- .../src/components/MenuCollapseTransition.vue | 74 ++-- .../SimpleMenu/src/components/MenuItem.vue | 65 ++- .../SimpleMenu/src/components/SubMenuItem.vue | 221 +++++------ .../SimpleMenu/src/components/types.ts | 38 +- .../SimpleMenu/src/components/useMenu.ts | 64 +-- .../src/components/useSimpleMenuContext.ts | 16 +- src/components/SimpleMenu/src/types.ts | 6 +- src/components/SimpleMenu/src/useOpenKeys.ts | 44 +-- src/components/StrengthMeter/index.ts | 6 +- .../StrengthMeter/src/StrengthMeter.vue | 51 ++- src/components/Table/index.ts | 20 +- src/components/Table/src/BasicTable.vue | 189 ++++----- src/components/Table/src/componentMap.ts | 45 +-- .../src/components/EditTableHeaderIcon.vue | 6 +- .../Table/src/components/HeaderCell.vue | 24 +- .../Table/src/components/TableAction.vue | 103 +++-- .../Table/src/components/TableFooter.vue | 72 ++-- .../Table/src/components/TableHeader.vue | 34 +- .../Table/src/components/TableImg.vue | 37 +- .../Table/src/components/TableTitle.vue | 24 +- .../src/components/editable/CellComponent.ts | 38 +- .../src/components/editable/EditableCell.vue | 305 +++++++-------- .../Table/src/components/editable/helper.ts | 14 +- .../Table/src/components/editable/index.ts | 66 ++-- .../src/components/settings/ColumnSetting.vue | 286 ++++++-------- .../components/settings/FullScreenSetting.vue | 22 +- .../src/components/settings/RedoSetting.vue | 20 +- .../src/components/settings/SizeSetting.vue | 28 +- .../Table/src/components/settings/index.vue | 40 +- src/components/Table/src/const.ts | 33 +- src/components/Table/src/hooks/useColumns.ts | 247 ++++++------ .../Table/src/hooks/useCustomRow.ts | 98 +++-- .../Table/src/hooks/useDataSource.ts | 310 +++++++-------- src/components/Table/src/hooks/useLoading.ts | 16 +- .../Table/src/hooks/usePagination.tsx | 56 +-- .../Table/src/hooks/useRowSelection.ts | 92 +++-- src/components/Table/src/hooks/useScrollTo.ts | 51 ++- src/components/Table/src/hooks/useTable.ts | 134 ++++--- .../Table/src/hooks/useTableContext.ts | 22 +- .../Table/src/hooks/useTableExpand.ts | 66 ++-- .../Table/src/hooks/useTableFooter.ts | 56 ++- .../Table/src/hooks/useTableForm.ts | 38 +- .../Table/src/hooks/useTableHeader.ts | 30 +- .../Table/src/hooks/useTableScroll.ts | 203 +++++----- .../Table/src/hooks/useTableStyle.ts | 20 +- src/components/Table/src/props.ts | 33 +- src/components/Table/src/types/column.ts | 89 ++--- .../Table/src/types/componentType.ts | 2 +- src/components/Table/src/types/pagination.ts | 48 +-- src/components/Table/src/types/table.ts | 369 +++++++++--------- src/components/Table/src/types/tableAction.ts | 40 +- src/components/Time/index.ts | 6 +- src/components/Time/src/Time.vue | 89 +++-- src/components/Tinymce/index.ts | 6 +- src/components/Tinymce/src/Editor.vue | 270 ++++++------- src/components/Tinymce/src/ImgUpload.vue | 57 ++- src/components/Tinymce/src/helper.ts | 14 +- src/components/Tinymce/src/tinymce.ts | 4 +- src/components/Transition/index.ts | 38 +- .../Transition/src/CollapseTransition.vue | 74 ++-- .../Transition/src/CreateTransition.tsx | 32 +- .../Transition/src/ExpandTransition.ts | 58 +-- src/components/Tree/index.ts | 10 +- src/components/Tree/src/BasicTree.vue | 328 +++++++--------- src/components/Tree/src/TreeIcon.ts | 16 +- .../Tree/src/components/TreeHeader.vue | 92 ++--- src/components/Tree/src/hooks/useTree.ts | 186 ++++----- src/components/Tree/src/types/tree.ts | 113 +++--- src/components/Tree/style/index.ts | 2 +- src/components/Upload/index.ts | 6 +- src/components/Upload/src/BasicUpload.vue | 66 ++-- src/components/Upload/src/FileList.vue | 48 ++- src/components/Upload/src/ThumbUrl.vue | 8 +- src/components/Upload/src/UploadModal.vue | 177 ++++----- .../Upload/src/UploadPreviewModal.vue | 48 +-- src/components/Upload/src/data.tsx | 70 ++-- src/components/Upload/src/helper.ts | 24 +- src/components/Upload/src/props.ts | 12 +- src/components/Upload/src/typing.ts | 36 +- src/components/Upload/src/useUpload.ts | 54 +-- src/components/Verify/index.ts | 12 +- src/components/Verify/src/DragVerify.vue | 242 ++++++------ src/components/Verify/src/ImgRotate.vue | 132 +++---- src/components/Verify/src/props.ts | 10 +- src/components/Verify/src/typing.ts | 12 +- src/components/VirtualScroll/index.ts | 6 +- .../VirtualScroll/src/VirtualScroll.vue | 132 +++---- src/components/VxeTable/index.ts | 10 +- src/components/registerGlobComp.ts | 8 +- src/directives/clickOutside.ts | 76 ++-- src/directives/index.ts | 10 +- src/directives/loading.ts | 36 +- src/directives/permission.ts | 26 +- src/directives/repeatClick.ts | 34 +- src/directives/ripple/index.ts | 159 ++++---- src/enums/appEnum.ts | 4 +- src/enums/breakpointEnum.ts | 16 +- src/enums/cacheEnum.ts | 20 +- src/enums/menuEnum.ts | 2 +- src/enums/sizeEnum.ts | 12 +- src/hooks/bootx/useTable.ts | 8 + src/hooks/component/useFormItem.ts | 54 +-- src/hooks/component/usePageContext.ts | 16 +- src/hooks/core/onMountedOrActivated.ts | 16 +- src/hooks/core/useAttrs.ts | 40 +- src/hooks/core/useContext.ts | 37 +- src/hooks/core/useLockFn.ts | 20 +- src/hooks/core/useRefs.ts | 16 +- src/hooks/core/useTimeout.ts | 38 +- src/hooks/event/useBreakpoint.ts | 76 ++-- src/hooks/event/useEventListener.ts | 54 +-- src/hooks/event/useIntersectionObserver.ts | 46 +-- src/hooks/event/useScroll.ts | 70 ++-- src/hooks/event/useScrollTo.ts | 68 ++-- src/hooks/event/useWindowSizeFn.ts | 36 +- src/hooks/setting/index.ts | 23 +- src/hooks/setting/useHeaderSetting.ts | 89 ++--- src/hooks/setting/useMenuSetting.ts | 125 +++--- src/hooks/setting/useMultipleTabSetting.ts | 20 +- src/hooks/setting/useRootSetting.ts | 67 ++-- src/hooks/setting/useTransitionSetting.ts | 22 +- src/hooks/web/useAppInject.ts | 8 +- src/hooks/web/useContentHeight.ts | 150 ++++--- src/hooks/web/useContextMenu.ts | 14 +- src/hooks/web/useCopyToClipboard.ts | 67 ++-- src/hooks/web/useDesign.ts | 6 +- src/hooks/web/useECharts.ts | 109 +++--- src/hooks/web/useFullContent.ts | 26 +- src/hooks/web/useI18n.ts | 50 +-- src/hooks/web/useLockPage.ts | 66 ++-- src/hooks/web/useMessage.tsx | 88 ++--- src/hooks/web/usePage.ts | 48 +-- src/hooks/web/usePagination.ts | 31 +- src/hooks/web/usePermission.ts | 86 ++-- src/hooks/web/useScript.ts | 50 +-- src/hooks/web/useSortable.ts | 16 +- src/hooks/web/useTabs.ts | 76 ++-- src/hooks/web/useTitle.ts | 34 +- src/hooks/web/useWatermark.ts | 128 +++--- src/layouts/default/content/index.vue | 24 +- .../default/content/useContentContext.ts | 14 +- .../default/content/useContentViewHeight.ts | 32 +- src/layouts/default/feature/index.vue | 43 +- src/layouts/default/footer/index.vue | 46 +-- src/layouts/default/header/MultipleHeader.vue | 96 ++--- .../default/header/components/Breadcrumb.vue | 128 +++--- .../default/header/components/ErrorAction.vue | 37 +- .../default/header/components/FullScreen.vue | 24 +- .../default/header/components/index.ts | 14 +- .../header/components/lock/LockModal.vue | 58 ++- .../header/components/notify/NoticeList.vue | 60 ++- .../default/header/components/notify/data.ts | 35 +- .../header/components/notify/index.vue | 36 +- .../components/user-dropdown/DropMenuItem.vue | 16 +- .../header/components/user-dropdown/index.vue | 86 ++-- src/layouts/default/header/index.vue | 117 +++--- src/layouts/default/index.vue | 46 +-- src/layouts/default/menu/index.vue | 110 +++--- src/layouts/default/menu/useLayoutMenu.ts | 96 +++-- src/layouts/default/setting/SettingDrawer.tsx | 182 +++------ .../setting/components/InputNumberItem.vue | 25 +- .../default/setting/components/SelectItem.vue | 22 +- .../setting/components/SettingFooter.vue | 74 ++-- .../default/setting/components/SwitchItem.vue | 26 +- .../setting/components/ThemeColorPicker.vue | 18 +- .../default/setting/components/TypePicker.vue | 14 +- .../default/setting/components/index.ts | 14 +- src/layouts/default/setting/enum.ts | 30 +- src/layouts/default/setting/handler.ts | 132 +++---- src/layouts/default/setting/index.vue | 14 +- src/layouts/default/sider/DragBar.vue | 24 +- src/layouts/default/sider/LayoutSider.vue | 70 ++-- src/layouts/default/sider/MixSider.vue | 214 +++++----- src/layouts/default/sider/index.vue | 26 +- src/layouts/default/sider/useLayoutSider.ts | 132 +++---- .../default/tabs/components/FoldButton.vue | 36 +- .../default/tabs/components/TabContent.vue | 45 +-- .../default/tabs/components/TabRedo.vue | 26 +- src/layouts/default/tabs/index.vue | 94 +++-- src/layouts/default/tabs/types.ts | 12 +- src/layouts/default/tabs/useMultipleTabs.ts | 74 ++-- src/layouts/default/tabs/useTabDropdown.ts | 99 +++-- src/layouts/default/trigger/HeaderTrigger.vue | 22 +- src/layouts/default/trigger/SiderTrigger.vue | 12 +- src/layouts/default/trigger/index.vue | 10 +- src/layouts/iframe/index.vue | 20 +- src/layouts/iframe/useFrameKeepAlive.ts | 54 +-- src/layouts/page/index.vue | 34 +- src/layouts/page/transition.ts | 28 +- src/locales/helper.ts | 36 +- src/locales/lang/en.ts | 8 +- src/locales/lang/en/common.ts | 2 +- src/locales/lang/en/component.ts | 2 +- src/locales/lang/en/layout.ts | 5 +- src/locales/lang/en/routes/basic.ts | 2 +- src/locales/lang/en/routes/dashboard.ts | 2 +- src/locales/lang/en/routes/demo.ts | 2 +- src/locales/lang/en/sys.ts | 8 +- .../lang/zh-CN/antdLocale/DatePicker.ts | 17 +- src/locales/lang/zh-CN/common.ts | 2 +- src/locales/lang/zh-CN/component.ts | 2 +- src/locales/lang/zh-CN/layout.ts | 2 +- src/locales/lang/zh-CN/routes/basic.ts | 2 +- src/locales/lang/zh-CN/routes/dashboard.ts | 2 +- src/locales/lang/zh-CN/routes/demo.ts | 2 +- src/locales/lang/zh-CN/sys.ts | 2 +- src/locales/lang/zh_CN.ts | 8 +- src/locales/setupI18n.ts | 38 +- src/locales/useLocale.ts | 62 +-- src/logics/error-handle/index.ts | 90 ++--- src/logics/initAppConfig.ts | 80 ++-- src/logics/mitt/routeChange.ts | 29 +- src/logics/theme/dark.ts | 20 +- src/logics/theme/index.ts | 10 +- src/logics/theme/updateBackground.ts | 58 +-- src/logics/theme/updateColorWeak.ts | 4 +- src/logics/theme/updateGrayMode.ts | 4 +- src/logics/theme/util.ts | 12 +- src/main.ts | 56 +-- src/router/constant.ts | 16 +- src/router/guard/index.ts | 138 +++---- src/router/guard/paramMenuGuard.ts | 48 +-- src/router/guard/permissionGuard.ts | 88 ++--- src/router/guard/stateGuard.ts | 34 +- src/router/helper/menuHelper.ts | 76 ++-- src/router/helper/routeHelper.ts | 159 ++++---- src/router/index.ts | 28 +- src/router/menus/index.ts | 132 +++---- src/router/routes/basic.ts | 17 +- src/router/routes/index.ts | 36 +- src/router/routes/mainOut.ts | 6 +- src/router/routes/modules/about.ts | 10 +- src/router/routes/modules/dashboard.ts | 10 +- src/router/routes/modules/demo/charts.ts | 10 +- src/router/routes/modules/demo/comp.ts | 10 +- src/router/routes/modules/demo/feat.ts | 10 +- src/router/routes/modules/demo/flow.ts | 10 +- src/router/routes/modules/demo/iframe.ts | 12 +- src/router/routes/modules/demo/level.ts | 10 +- src/router/routes/modules/demo/page.ts | 14 +- src/router/routes/modules/demo/permission.ts | 12 +- src/router/routes/modules/demo/setup.ts | 10 +- src/router/routes/modules/demo/system.ts | 10 +- src/router/routes/modules/system.ts | 8 +- src/router/types.ts | 59 ++- src/settings/componentSetting.ts | 12 +- src/settings/designSetting.ts | 12 +- src/settings/encryptionSetting.ts | 8 +- src/settings/localeSetting.ts | 10 +- src/settings/projectSetting.ts | 16 +- src/settings/siteSetting.ts | 6 +- src/store/index.ts | 10 +- src/store/modules/app.ts | 82 ++-- src/store/modules/errorLog.ts | 57 ++- src/store/modules/locale.ts | 32 +- src/store/modules/lock.ts | 44 +-- src/store/modules/multipleTab.ts | 286 +++++++------- src/store/modules/permission.ts | 202 +++++----- src/store/modules/user.ts | 162 ++++---- src/utils/auth/index.ts | 26 +- src/utils/bem.ts | 32 +- src/utils/cache/index.ts | 30 +- src/utils/cache/memory.ts | 76 ++-- src/utils/cache/persistent.ts | 112 +++--- src/utils/cache/storageCache.ts | 72 ++-- src/utils/cipher.ts | 40 +- src/utils/color.ts | 80 ++-- src/utils/dateUtil.ts | 22 +- src/utils/domUtils.ts | 154 ++++---- src/utils/env.ts | 40 +- src/utils/event/index.ts | 34 +- src/utils/factory/createAsyncComponent.tsx | 24 +- src/utils/file/base64Conver.ts | 44 +-- src/utils/file/download.ts | 76 ++-- src/utils/helper/treeHelper.ts | 185 ++++----- src/utils/helper/tsxHelper.tsx | 28 +- src/utils/http/axios/Axios.ts | 164 ++++---- src/utils/http/axios/axiosCancel.ts | 34 +- src/utils/http/axios/axiosRetry.ts | 16 +- src/utils/http/axios/axiosTransform.ts | 27 +- src/utils/http/axios/checkStatus.ts | 88 ++--- src/utils/http/axios/helper.ts | 31 +- src/utils/http/axios/index.ts | 171 ++++---- src/utils/index.ts | 67 ++-- src/utils/is.ts | 54 +-- src/utils/lib/echarts.ts | 20 +- src/utils/log.ts | 6 +- src/utils/mitt.ts | 56 +-- src/utils/propTypes.ts | 18 +- src/utils/props.ts | 139 +++---- src/utils/types.ts | 41 +- src/utils/uuid.ts | 26 +- .../analysis/components/GrowCard.vue | 10 +- .../analysis/components/SalesProductPie.vue | 22 +- .../analysis/components/SiteAnalysis.vue | 21 +- .../analysis/components/VisitAnalysis.vue | 24 +- .../analysis/components/VisitAnalysisBar.vue | 16 +- .../analysis/components/VisitRadar.vue | 18 +- .../analysis/components/VisitSource.vue | 20 +- .../dashboard/analysis/components/props.ts | 8 +- src/views/dashboard/analysis/data.ts | 14 +- src/views/dashboard/analysis/index.vue | 18 +- .../workbench/components/DynamicInfo.vue | 10 +- .../workbench/components/ProjectCard.vue | 12 +- .../workbench/components/QuickNav.vue | 8 +- .../workbench/components/SaleRadar.vue | 18 +- .../workbench/components/WorkbenchHeader.vue | 12 +- .../dashboard/workbench/components/data.ts | 32 +- src/views/dashboard/workbench/index.vue | 22 +- src/views/demo/charts/Line.vue | 20 +- src/views/demo/charts/Map.vue | 24 +- src/views/demo/charts/Pie.vue | 31 +- src/views/demo/charts/SaleRadar.vue | 22 +- src/views/demo/charts/data.ts | 26 +- src/views/demo/charts/map/Baidu.vue | 37 +- src/views/demo/charts/map/Gaode.vue | 30 +- src/views/demo/charts/map/Google.vue | 35 +- src/views/demo/comp/button/index.vue | 12 +- src/views/demo/comp/card-list/index.vue | 24 +- src/views/demo/comp/count-to/index.vue | 35 +- src/views/demo/comp/cropper/index.vue | 46 +-- src/views/demo/comp/desc/index.vue | 20 +- src/views/demo/comp/drawer/Drawer1.vue | 8 +- src/views/demo/comp/drawer/Drawer2.vue | 10 +- src/views/demo/comp/drawer/Drawer3.vue | 14 +- src/views/demo/comp/drawer/Drawer4.vue | 18 +- src/views/demo/comp/drawer/Drawer5.vue | 6 +- src/views/demo/comp/drawer/index.vue | 42 +- src/views/demo/comp/flow-chart/index.vue | 17 +- src/views/demo/comp/lazy/TargetContent.vue | 8 +- src/views/demo/comp/lazy/Transition.vue | 10 +- src/views/demo/comp/lazy/index.vue | 12 +- src/views/demo/comp/loading/index.vue | 72 ++-- src/views/demo/comp/modal/Modal1.vue | 32 +- src/views/demo/comp/modal/Modal2.vue | 19 +- src/views/demo/comp/modal/Modal3.vue | 8 +- src/views/demo/comp/modal/Modal4.vue | 33 +- src/views/demo/comp/modal/index.vue | 64 ++- src/views/demo/comp/qrcode/index.vue | 57 ++- src/views/demo/comp/scroll/Action.vue | 24 +- src/views/demo/comp/scroll/VirtualScroll.vue | 20 +- src/views/demo/comp/scroll/index.vue | 8 +- src/views/demo/comp/strength-meter/index.vue | 8 +- src/views/demo/comp/time/index.vue | 16 +- src/views/demo/comp/transition/index.vue | 33 +- src/views/demo/comp/upload/index.vue | 35 +- src/views/demo/comp/verify/Rotate.vue | 16 +- src/views/demo/comp/verify/index.vue | 34 +- src/views/demo/editor/json/index.vue | 40 +- src/views/demo/editor/markdown/Editor.vue | 26 +- src/views/demo/editor/markdown/index.vue | 35 +- src/views/demo/editor/tinymce/Editor.vue | 26 +- src/views/demo/editor/tinymce/index.vue | 14 +- src/views/demo/excel/ArrayExport.vue | 16 +- src/views/demo/excel/CustomExport.vue | 20 +- src/views/demo/excel/ImportExcel.vue | 32 +- src/views/demo/excel/JsonExport.vue | 18 +- src/views/demo/excel/data.ts | 18 +- .../demo/feat/breadcrumb/ChildrenList.vue | 6 +- .../feat/breadcrumb/ChildrenListDetail.vue | 6 +- src/views/demo/feat/breadcrumb/FlatList.vue | 6 +- .../demo/feat/breadcrumb/FlatListDetail.vue | 4 +- src/views/demo/feat/click-out-side/index.vue | 16 +- src/views/demo/feat/context-menu/index.vue | 28 +- src/views/demo/feat/copy/index.vue | 30 +- src/views/demo/feat/download/imgBase64.ts | 2 +- src/views/demo/feat/download/index.vue | 33 +- src/views/demo/feat/full-screen/index.vue | 23 +- src/views/demo/feat/icon/index.vue | 20 +- src/views/demo/feat/img-preview/index.vue | 18 +- src/views/demo/feat/menu-params/index.vue | 24 +- src/views/demo/feat/msg/index.vue | 52 +-- src/views/demo/feat/print/index.vue | 21 +- src/views/demo/feat/request-demo/index.vue | 6 +- src/views/demo/feat/ripple/index.vue | 8 +- src/views/demo/feat/session-timeout/index.vue | 31 +- src/views/demo/feat/tab-params/index.vue | 16 +- src/views/demo/feat/tabs/TabDetail.vue | 20 +- src/views/demo/feat/tabs/index.vue | 37 +- src/views/demo/feat/watermark/index.vue | 24 +- src/views/demo/feat/ws/index.vue | 53 ++- src/views/demo/form/AdvancedForm.vue | 35 +- src/views/demo/form/AppendForm.vue | 38 +- src/views/demo/form/CustomerForm.vue | 30 +- src/views/demo/form/DynamicForm.vue | 61 ++- src/views/demo/form/RefForm.vue | 54 +-- src/views/demo/form/RuleForm.vue | 51 ++- src/views/demo/form/TabsForm.vue | 96 +++-- src/views/demo/form/UseForm.vue | 62 ++- src/views/demo/form/index.vue | 121 +++--- src/views/demo/level/Menu111.vue | 6 +- src/views/demo/level/Menu12.vue | 6 +- src/views/demo/level/Menu2.vue | 6 +- .../demo/page/account/center/Application.vue | 18 +- .../demo/page/account/center/Article.vue | 19 +- .../demo/page/account/center/Project.vue | 12 +- src/views/demo/page/account/center/data.tsx | 54 ++- src/views/demo/page/account/center/index.vue | 28 +- .../demo/page/account/setting/AccountBind.vue | 14 +- .../demo/page/account/setting/BaseSetting.vue | 52 +-- .../demo/page/account/setting/MsgNotify.vue | 19 +- .../page/account/setting/SecureSetting.vue | 12 +- src/views/demo/page/account/setting/data.ts | 24 +- src/views/demo/page/account/setting/index.vue | 20 +- src/views/demo/page/desc/basic/data.tsx | 28 +- src/views/demo/page/desc/basic/index.vue | 50 +-- src/views/demo/page/desc/high/data.tsx | 10 +- src/views/demo/page/desc/high/index.vue | 19 +- src/views/demo/page/form/basic/data.ts | 8 +- src/views/demo/page/form/basic/index.vue | 28 +- src/views/demo/page/form/high/PersonTable.vue | 45 +-- src/views/demo/page/form/high/data.ts | 10 +- src/views/demo/page/form/high/index.vue | 34 +- src/views/demo/page/form/step/Step1.vue | 18 +- src/views/demo/page/form/step/Step2.vue | 26 +- src/views/demo/page/form/step/Step3.vue | 10 +- src/views/demo/page/form/step/data.tsx | 8 +- src/views/demo/page/form/step/index.vue | 47 +-- src/views/demo/page/list/basic/data.tsx | 8 +- src/views/demo/page/list/basic/index.vue | 16 +- src/views/demo/page/list/card/data.tsx | 8 +- src/views/demo/page/list/card/index.vue | 14 +- src/views/demo/page/list/search/data.tsx | 16 +- src/views/demo/page/list/search/index.vue | 32 +- src/views/demo/page/result/fail/index.vue | 8 +- src/views/demo/page/result/success/index.vue | 6 +- .../demo/permission/CurrentPermissionMode.vue | 20 +- src/views/demo/permission/back/Btn.vue | 75 ++-- src/views/demo/permission/back/index.vue | 48 +-- src/views/demo/permission/front/AuthPageA.vue | 4 +- src/views/demo/permission/front/AuthPageB.vue | 4 +- src/views/demo/permission/front/Btn.vue | 40 +- src/views/demo/permission/front/index.vue | 22 +- src/views/demo/setup/index.vue | 18 +- .../demo/system/account/AccountDetail.vue | 30 +- .../demo/system/account/AccountModal.vue | 50 +-- src/views/demo/system/account/DeptTree.vue | 20 +- src/views/demo/system/account/account.data.ts | 18 +- src/views/demo/system/account/index.vue | 54 +-- src/views/demo/system/dept/DeptModal.vue | 46 +-- src/views/demo/system/dept/dept.data.ts | 24 +- src/views/demo/system/dept/index.vue | 28 +- src/views/demo/system/menu/MenuDrawer.vue | 55 ++- src/views/demo/system/menu/index.vue | 30 +- src/views/demo/system/menu/menu.data.ts | 34 +- src/views/demo/system/password/index.vue | 20 +- src/views/demo/system/password/pwd.data.ts | 12 +- src/views/demo/system/role/RoleDrawer.vue | 57 ++- src/views/demo/system/role/index.vue | 28 +- src/views/demo/system/role/role.data.ts | 38 +- src/views/demo/table/Basic.vue | 36 +- src/views/demo/table/CustomerCell.vue | 16 +- src/views/demo/table/EditCellTable.vue | 67 ++-- src/views/demo/table/EditRowTable.vue | 79 ++-- src/views/demo/table/ExpandTable.vue | 20 +- src/views/demo/table/FetchTable.vue | 20 +- src/views/demo/table/FixedColumn.vue | 18 +- src/views/demo/table/FixedHeight.vue | 20 +- src/views/demo/table/FooterTable.vue | 22 +- src/views/demo/table/FormTable.vue | 29 +- src/views/demo/table/MergeHeader.vue | 14 +- src/views/demo/table/MultipleHeader.vue | 14 +- src/views/demo/table/RefTable.vue | 68 ++-- .../demo/table/ResizeParentHeightTable.vue | 18 +- src/views/demo/table/TreeTable.vue | 16 +- src/views/demo/table/UseTable.vue | 66 ++-- src/views/demo/table/tableData.tsx | 58 +-- src/views/demo/tree/ActionTree.vue | 60 +-- src/views/demo/tree/EditTree.vue | 49 +-- src/views/demo/tree/data.ts | 8 +- src/views/demo/tree/index.vue | 99 ++--- src/views/modules/system/client/Client.api.ts | 9 +- .../modules/system/client/ClientList.vue | 71 +++- src/views/sys/about/index.vue | 40 +- src/views/sys/error-log/DetailModal.vue | 18 +- src/views/sys/error-log/data.tsx | 20 +- src/views/sys/error-log/index.vue | 54 +-- src/views/sys/exception/Exception.vue | 87 ++--- src/views/sys/exception/index.ts | 2 +- src/views/sys/iframe/FrameBlank.vue | 4 +- src/views/sys/iframe/index.vue | 59 ++- src/views/sys/lock/LockPage.vue | 87 ++--- src/views/sys/lock/index.vue | 10 +- src/views/sys/lock/useNow.ts | 54 +-- src/views/sys/login/ForgetPasswordForm.vue | 46 +-- src/views/sys/login/Login.vue | 50 +-- src/views/sys/login/LoginForm.vue | 93 ++--- src/views/sys/login/LoginFormTitle.vue | 16 +- src/views/sys/login/MobileForm.vue | 50 +-- src/views/sys/login/QrCodeForm.vue | 26 +- src/views/sys/login/RegisterForm.vue | 76 ++-- src/views/sys/login/SessionTimeoutLogin.vue | 40 +- src/views/sys/login/useLogin.ts | 80 ++-- src/views/sys/redirect/index.vue | 20 +- stylelint.config.js | 15 +- tests/server/controller/FileController.ts | 16 +- tests/server/controller/UserController.ts | 14 +- tests/server/ecosystem.config.js | 6 +- tests/server/index.ts | 56 +-- tests/server/routes.ts | 6 +- tests/server/service/FileService.ts | 48 +-- tests/server/service/UserService.ts | 8 +- tests/server/utils.ts | 2 +- types/axios.d.ts | 64 +-- types/config.d.ts | 164 ++++---- types/global.d.ts | 105 +++-- types/index.d.ts | 24 +- types/module.d.ts | 16 +- types/store.d.ts | 48 +-- types/utils.d.ts | 6 +- types/vue-router.d.ts | 44 +-- types/web.d.ts | 16 + vite.config.ts | 48 +-- windi.config.ts | 22 +- 732 files changed, 15318 insertions(+), 17298 deletions(-) create mode 100644 src/hooks/bootx/useTable.ts create mode 100644 types/web.d.ts diff --git a/.eslintrc.js b/.eslintrc.js index 0c11dd05..c14231d6 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -15,11 +15,7 @@ module.exports = { jsx: true, }, }, - extends: [ - 'plugin:vue/vue3-recommended', - 'plugin:@typescript-eslint/recommended', - 'plugin:prettier/recommended', - ], + extends: ['plugin:vue/vue3-recommended', 'plugin:@typescript-eslint/recommended', 'plugin:prettier/recommended'], rules: { 'vue/script-setup-uses-vars': 'error', '@typescript-eslint/ban-ts-ignore': 'off', diff --git a/build/config/themeConfig.ts b/build/config/themeConfig.ts index c816b6de..01175751 100644 --- a/build/config/themeConfig.ts +++ b/build/config/themeConfig.ts @@ -1,79 +1,69 @@ -import { generate } from '@ant-design/colors'; +import { generate } from '@ant-design/colors' -export const primaryColor = '#0960bd'; +export const primaryColor = '#0960bd' -export const darkMode = 'light'; +export const darkMode = 'light' -type Fn = (...arg: any) => any; +type Fn = (...arg: any) => any -type GenerateTheme = 'default' | 'dark'; +type GenerateTheme = 'default' | 'dark' export interface GenerateColorsParams { - mixLighten: Fn; - mixDarken: Fn; - tinycolor: any; - color?: string; + mixLighten: Fn + mixDarken: Fn + tinycolor: any + color?: string } export function generateAntColors(color: string, theme: GenerateTheme = 'default') { return generate(color, { theme, - }); + }) } export function getThemeColors(color?: string) { - const tc = color || primaryColor; - const lightColors = generateAntColors(tc); - const primary = lightColors[5]; - const modeColors = generateAntColors(primary, 'dark'); + const tc = color || primaryColor + const lightColors = generateAntColors(tc) + const primary = lightColors[5] + const modeColors = generateAntColors(primary, 'dark') - return [...lightColors, ...modeColors]; + return [...lightColors, ...modeColors] } -export function generateColors({ - color = primaryColor, - mixLighten, - mixDarken, - tinycolor, -}: GenerateColorsParams) { - const arr = new Array(19).fill(0); +export function generateColors({ color = primaryColor, mixLighten, mixDarken, tinycolor }: GenerateColorsParams) { + const arr = new Array(19).fill(0) const lightens = arr.map((_t, i) => { - return mixLighten(color, i / 5); - }); + return mixLighten(color, i / 5) + }) const darkens = arr.map((_t, i) => { - return mixDarken(color, i / 5); - }); + return mixDarken(color, i / 5) + }) const alphaColors = arr.map((_t, i) => { return tinycolor(color) .setAlpha(i / 20) - .toRgbString(); - }); + .toRgbString() + }) - const shortAlphaColors = alphaColors.map((item) => item.replace(/\s/g, '').replace(/0\./g, '.')); + const shortAlphaColors = alphaColors.map((item) => item.replace(/\s/g, '').replace(/0\./g, '.')) const tinycolorLightens = arr .map((_t, i) => { return tinycolor(color) .lighten(i * 5) - .toHexString(); + .toHexString() }) - .filter((item) => item !== '#ffffff'); + .filter((item) => item !== '#ffffff') const tinycolorDarkens = arr .map((_t, i) => { return tinycolor(color) .darken(i * 5) - .toHexString(); + .toHexString() }) - .filter((item) => item !== '#000000'); - return [ - ...lightens, - ...darkens, - ...alphaColors, - ...shortAlphaColors, - ...tinycolorDarkens, - ...tinycolorLightens, - ].filter((item) => !item.includes('-')); + .filter((item) => item !== '#000000') + return [...lightens, ...darkens, ...alphaColors, ...shortAlphaColors, ...tinycolorDarkens, ...tinycolorLightens].filter( + (item) => !item.includes('-'), + ) } diff --git a/build/constant.ts b/build/constant.ts index 2c6119c8..00736e3f 100644 --- a/build/constant.ts +++ b/build/constant.ts @@ -1,6 +1,6 @@ /** * The name of the configuration file entered in the production environment */ -export const GLOB_CONFIG_FILE_NAME = '_app.config.js'; +export const GLOB_CONFIG_FILE_NAME = '_app.config.js' -export const OUTPUT_DIR = 'dist'; +export const OUTPUT_DIR = 'dist' diff --git a/build/generate/generateModifyVars.ts b/build/generate/generateModifyVars.ts index 44670e2f..cdfc7e93 100644 --- a/build/generate/generateModifyVars.ts +++ b/build/generate/generateModifyVars.ts @@ -1,21 +1,21 @@ -import { generateAntColors, primaryColor } from '../config/themeConfig'; -import { getThemeVariables } from 'ant-design-vue/dist/theme'; -import { resolve } from 'path'; +import { generateAntColors, primaryColor } from '../config/themeConfig' +import { getThemeVariables } from 'ant-design-vue/dist/theme' +import { resolve } from 'path' /** * less global variable */ export function generateModifyVars(dark = false) { - const palettes = generateAntColors(primaryColor); - const primary = palettes[5]; + const palettes = generateAntColors(primaryColor) + const primary = palettes[5] - const primaryColorObj: Record = {}; + const primaryColorObj: Record = {} for (let index = 0; index < 10; index++) { - primaryColorObj[`primary-${index + 1}`] = palettes[index]; + primaryColorObj[`primary-${index + 1}`] = palettes[index] } - const modifyVars = getThemeVariables({ dark }); + const modifyVars = getThemeVariables({ dark }) return { ...modifyVars, // Used for global import to avoid the need to import each style file separately @@ -33,5 +33,5 @@ export function generateModifyVars(dark = false) { 'border-radius-base': '2px', // Component/float fillet 'link-color': primary, // Link color 'app-content-background': '#fafafa', // Link color - }; + } } diff --git a/build/generate/icon/index.ts b/build/generate/icon/index.ts index b01fec4c..39bb79ab 100644 --- a/build/generate/icon/index.ts +++ b/build/generate/icon/index.ts @@ -1,20 +1,20 @@ -import path from 'path'; -import fs from 'fs-extra'; -import inquirer from 'inquirer'; -import colors from 'picocolors'; -import pkg from '../../../package.json'; +import path from 'path' +import fs from 'fs-extra' +import inquirer from 'inquirer' +import colors from 'picocolors' +import pkg from '../../../package.json' async function generateIcon() { - const dir = path.resolve(process.cwd(), 'node_modules/@iconify/json'); + const dir = path.resolve(process.cwd(), 'node_modules/@iconify/json') - const raw = await fs.readJSON(path.join(dir, 'collections.json')); + const raw = await fs.readJSON(path.join(dir, 'collections.json')) const collections = Object.entries(raw).map(([id, v]) => ({ ...(v as any), id, - })); + })) - const choices = collections.map((item) => ({ key: item.id, value: item.id, name: item.name })); + const choices = collections.map((item) => ({ key: item.id, value: item.id, name: item.name })) inquirer .prompt([ @@ -41,32 +41,28 @@ async function generateIcon() { }, ]) .then(async (answers) => { - const { iconSet, output, useType } = answers; - const outputDir = path.resolve(process.cwd(), output); - fs.ensureDir(outputDir); - const genCollections = collections.filter((item) => [iconSet].includes(item.id)); - const prefixSet: string[] = []; + const { iconSet, output, useType } = answers + const outputDir = path.resolve(process.cwd(), output) + fs.ensureDir(outputDir) + const genCollections = collections.filter((item) => [iconSet].includes(item.id)) + const prefixSet: string[] = [] for (const info of genCollections) { - const data = await fs.readJSON(path.join(dir, 'json', `${info.id}.json`)); + const data = await fs.readJSON(path.join(dir, 'json', `${info.id}.json`)) if (data) { - const { prefix } = data; - const isLocal = useType === 'local'; - const icons = Object.keys(data.icons).map( - (item) => `${isLocal ? prefix + ':' : ''}${item}`, - ); + const { prefix } = data + const isLocal = useType === 'local' + const icons = Object.keys(data.icons).map((item) => `${isLocal ? prefix + ':' : ''}${item}`) await fs.writeFileSync( path.join(output, `icons.data.ts`), `export default ${isLocal ? JSON.stringify(icons) : JSON.stringify({ prefix, icons })}`, - ); - prefixSet.push(prefix); + ) + prefixSet.push(prefix) } } - fs.emptyDir(path.join(process.cwd(), 'node_modules/.vite')); - console.log( - `✨ ${colors.cyan(`[${pkg.name}]`)}` + ' - Icon generated successfully:' + `[${prefixSet}]`, - ); - }); + fs.emptyDir(path.join(process.cwd(), 'node_modules/.vite')) + console.log(`✨ ${colors.cyan(`[${pkg.name}]`)}` + ' - Icon generated successfully:' + `[${prefixSet}]`) + }) } -generateIcon(); +generateIcon() diff --git a/build/getConfigFileName.ts b/build/getConfigFileName.ts index d61cd416..4db6b708 100644 --- a/build/getConfigFileName.ts +++ b/build/getConfigFileName.ts @@ -3,7 +3,5 @@ * @param env */ export const getConfigFileName = (env: Record) => { - return `__PRODUCTION__${env.VITE_GLOB_APP_SHORT_NAME || '__APP'}__CONF__` - .toUpperCase() - .replace(/\s/g, ''); -}; + return `__PRODUCTION__${env.VITE_GLOB_APP_SHORT_NAME || '__APP'}__CONF__`.toUpperCase().replace(/\s/g, '') +} diff --git a/build/script/buildConf.ts b/build/script/buildConf.ts index 0c8089cc..73df033b 100644 --- a/build/script/buildConf.ts +++ b/build/script/buildConf.ts @@ -1,47 +1,47 @@ /** * Generate additional configuration files when used for packaging. The file can be configured with some global variables, so that it can be changed directly externally without repackaging */ -import { GLOB_CONFIG_FILE_NAME, OUTPUT_DIR } from '../constant'; -import fs, { writeFileSync } from 'fs-extra'; -import colors from 'picocolors'; +import { GLOB_CONFIG_FILE_NAME, OUTPUT_DIR } from '../constant' +import fs, { writeFileSync } from 'fs-extra' +import colors from 'picocolors' -import { getEnvConfig, getRootPath } from '../utils'; -import { getConfigFileName } from '../getConfigFileName'; +import { getEnvConfig, getRootPath } from '../utils' +import { getConfigFileName } from '../getConfigFileName' -import pkg from '../../package.json'; +import pkg from '../../package.json' interface CreateConfigParams { - configName: string; - config: any; - configFileName?: string; + configName: string + config: any + configFileName?: string } function createConfig(params: CreateConfigParams) { - const { configName, config, configFileName } = params; + const { configName, config, configFileName } = params try { - const windowConf = `window.${configName}`; + const windowConf = `window.${configName}` // Ensure that the variable will not be modified - let configStr = `${windowConf}=${JSON.stringify(config)};`; + let configStr = `${windowConf}=${JSON.stringify(config)};` configStr += ` Object.freeze(${windowConf}); Object.defineProperty(window, "${configName}", { configurable: false, writable: false, }); - `.replace(/\s/g, ''); + `.replace(/\s/g, '') - fs.mkdirp(getRootPath(OUTPUT_DIR)); - writeFileSync(getRootPath(`${OUTPUT_DIR}/${configFileName}`), configStr); + fs.mkdirp(getRootPath(OUTPUT_DIR)) + writeFileSync(getRootPath(`${OUTPUT_DIR}/${configFileName}`), configStr) - console.log(colors.cyan(`✨ [${pkg.name}]`) + ` - configuration file is build successfully:`); - console.log(colors.gray(OUTPUT_DIR + '/' + colors.green(configFileName)) + '\n'); + console.log(colors.cyan(`✨ [${pkg.name}]`) + ` - configuration file is build successfully:`) + console.log(colors.gray(OUTPUT_DIR + '/' + colors.green(configFileName)) + '\n') } catch (error) { - console.log(colors.red('configuration file configuration file failed to package:\n' + error)); + console.log(colors.red('configuration file configuration file failed to package:\n' + error)) } } export function runBuildConfig() { - const config = getEnvConfig(); - const configFileName = getConfigFileName(config); - createConfig({ config, configName: configFileName, configFileName: GLOB_CONFIG_FILE_NAME }); + const config = getEnvConfig() + const configFileName = getConfigFileName(config) + createConfig({ config, configName: configFileName, configFileName: GLOB_CONFIG_FILE_NAME }) } diff --git a/build/script/postBuild.ts b/build/script/postBuild.ts index 42635d88..bbe05ed1 100644 --- a/build/script/postBuild.ts +++ b/build/script/postBuild.ts @@ -1,23 +1,23 @@ // #!/usr/bin/env node -import { runBuildConfig } from './buildConf'; -import colors from 'picocolors'; +import { runBuildConfig } from './buildConf' +import colors from 'picocolors' -import pkg from '../../package.json'; +import pkg from '../../package.json' export const runBuild = async () => { try { - const argvList = process.argv.splice(2); + const argvList = process.argv.splice(2) // Generate configuration file if (!argvList.includes('disabled-config')) { - runBuildConfig(); + runBuildConfig() } - console.log(`✨ ${colors.cyan(`[${pkg.name}]`)}` + ' - build successfully!'); + console.log(`✨ ${colors.cyan(`[${pkg.name}]`)}` + ' - build successfully!') } catch (error) { - console.log(colors.red('vite build error:\n' + error)); - process.exit(1); + console.log(colors.red('vite build error:\n' + error)) + process.exit(1) } -}; -runBuild(); +} +runBuild() diff --git a/build/utils.ts b/build/utils.ts index c201514f..b09bb68d 100644 --- a/build/utils.ts +++ b/build/utils.ts @@ -1,62 +1,62 @@ -import fs from 'fs'; -import path from 'path'; -import dotenv from 'dotenv'; +import fs from 'fs' +import path from 'path' +import dotenv from 'dotenv' export function isDevFn(mode: string): boolean { - return mode === 'development'; + return mode === 'development' } export function isProdFn(mode: string): boolean { - return mode === 'production'; + return mode === 'production' } /** * Whether to generate package preview */ export function isReportMode(): boolean { - return process.env.REPORT === 'true'; + return process.env.REPORT === 'true' } // Read all environment variable configuration files to process.env export function wrapperEnv(envConf: Recordable): ViteEnv { - const ret: any = {}; + const ret: any = {} for (const envName of Object.keys(envConf)) { - let realName = envConf[envName].replace(/\\n/g, '\n'); - realName = realName === 'true' ? true : realName === 'false' ? false : realName; + let realName = envConf[envName].replace(/\\n/g, '\n') + realName = realName === 'true' ? true : realName === 'false' ? false : realName if (envName === 'VITE_PORT') { - realName = Number(realName); + realName = Number(realName) } if (envName === 'VITE_PROXY' && realName) { try { - realName = JSON.parse(realName.replace(/'/g, '"')); + realName = JSON.parse(realName.replace(/'/g, '"')) } catch (error) { - realName = ''; + realName = '' } } - ret[envName] = realName; + ret[envName] = realName if (typeof realName === 'string') { - process.env[envName] = realName; + process.env[envName] = realName } else if (typeof realName === 'object') { - process.env[envName] = JSON.stringify(realName); + process.env[envName] = JSON.stringify(realName) } } - return ret; + return ret } /** * 获取当前环境下生效的配置文件名 */ function getConfFiles() { - const script = process.env.npm_lifecycle_script; - const reg = new RegExp('--mode ([a-z_\\d]+)'); - const result = reg.exec(script as string) as any; + const script = process.env.npm_lifecycle_script + const reg = new RegExp('--mode ([a-z_\\d]+)') + const result = reg.exec(script as string) as any if (result) { - const mode = result[1] as string; - return ['.env', `.env.${mode}`]; + const mode = result[1] as string + return ['.env', `.env.${mode}`] } - return ['.env', '.env.production']; + return ['.env', '.env.production'] } /** @@ -65,22 +65,22 @@ function getConfFiles() { * @param confFiles ext */ export function getEnvConfig(match = 'VITE_GLOB_', confFiles = getConfFiles()) { - let envConfig = {}; + let envConfig = {} confFiles.forEach((item) => { try { - const env = dotenv.parse(fs.readFileSync(path.resolve(process.cwd(), item))); - envConfig = { ...envConfig, ...env }; + const env = dotenv.parse(fs.readFileSync(path.resolve(process.cwd(), item))) + envConfig = { ...envConfig, ...env } } catch (e) { - console.error(`Error in parsing ${item}`, e); + console.error(`Error in parsing ${item}`, e) } - }); - const reg = new RegExp(`^(${match})`); + }) + const reg = new RegExp(`^(${match})`) Object.keys(envConfig).forEach((key) => { if (!reg.test(key)) { - Reflect.deleteProperty(envConfig, key); + Reflect.deleteProperty(envConfig, key) } - }); - return envConfig; + }) + return envConfig } /** @@ -88,5 +88,5 @@ export function getEnvConfig(match = 'VITE_GLOB_', confFiles = getConfFiles()) { * @param dir file path */ export function getRootPath(...dir: string[]) { - return path.resolve(process.cwd(), ...dir); + return path.resolve(process.cwd(), ...dir) } diff --git a/build/vite/plugin/compress.ts b/build/vite/plugin/compress.ts index ff4f6311..7fb4128f 100644 --- a/build/vite/plugin/compress.ts +++ b/build/vite/plugin/compress.ts @@ -2,16 +2,13 @@ * Used to package and output gzip. Note that this does not work properly in Vite, the specific reason is still being investigated * https://github.com/anncwb/vite-plugin-compression */ -import type { PluginOption } from 'vite'; -import compressPlugin from 'vite-plugin-compression'; +import type { PluginOption } from 'vite' +import compressPlugin from 'vite-plugin-compression' -export function configCompressPlugin( - compress: 'gzip' | 'brotli' | 'none', - deleteOriginFile = false, -): PluginOption | PluginOption[] { - const compressList = compress.split(','); +export function configCompressPlugin(compress: 'gzip' | 'brotli' | 'none', deleteOriginFile = false): PluginOption | PluginOption[] { + const compressList = compress.split(',') - const plugins: PluginOption[] = []; + const plugins: PluginOption[] = [] if (compressList.includes('gzip')) { plugins.push( @@ -19,7 +16,7 @@ export function configCompressPlugin( ext: '.gz', deleteOriginFile, }), - ); + ) } if (compressList.includes('brotli')) { @@ -29,7 +26,7 @@ export function configCompressPlugin( algorithm: 'brotliCompress', deleteOriginFile, }), - ); + ) } - return plugins; + return plugins } diff --git a/build/vite/plugin/html.ts b/build/vite/plugin/html.ts index 6af034ac..4f2bb89d 100644 --- a/build/vite/plugin/html.ts +++ b/build/vite/plugin/html.ts @@ -2,19 +2,19 @@ * Plugin to minimize and use ejs template syntax in index.html. * https://github.com/anncwb/vite-plugin-html */ -import type { PluginOption } from 'vite'; -import { createHtmlPlugin } from 'vite-plugin-html'; -import pkg from '../../../package.json'; -import { GLOB_CONFIG_FILE_NAME } from '../../constant'; +import type { PluginOption } from 'vite' +import { createHtmlPlugin } from 'vite-plugin-html' +import pkg from '../../../package.json' +import { GLOB_CONFIG_FILE_NAME } from '../../constant' export function configHtmlPlugin(env: ViteEnv, isBuild: boolean) { - const { VITE_GLOB_APP_TITLE, VITE_PUBLIC_PATH } = env; + const { VITE_GLOB_APP_TITLE, VITE_PUBLIC_PATH } = env - const path = VITE_PUBLIC_PATH.endsWith('/') ? VITE_PUBLIC_PATH : `${VITE_PUBLIC_PATH}/`; + const path = VITE_PUBLIC_PATH.endsWith('/') ? VITE_PUBLIC_PATH : `${VITE_PUBLIC_PATH}/` const getAppConfigSrc = () => { - return `${path || '/'}${GLOB_CONFIG_FILE_NAME}?v=${pkg.version}-${new Date().getTime()}`; - }; + return `${path || '/'}${GLOB_CONFIG_FILE_NAME}?v=${pkg.version}-${new Date().getTime()}` + } const htmlPlugin: PluginOption[] = createHtmlPlugin({ minify: isBuild, @@ -35,6 +35,6 @@ export function configHtmlPlugin(env: ViteEnv, isBuild: boolean) { ] : [], }, - }); - return htmlPlugin; + }) + return htmlPlugin } diff --git a/build/vite/plugin/imagemin.ts b/build/vite/plugin/imagemin.ts index a0235732..805cb8f1 100644 --- a/build/vite/plugin/imagemin.ts +++ b/build/vite/plugin/imagemin.ts @@ -1,6 +1,6 @@ // Image resource files used to compress the output of the production environment // https://github.com/anncwb/vite-plugin-imagemin -import viteImagemin from 'vite-plugin-imagemin'; +import viteImagemin from 'vite-plugin-imagemin' export function configImageminPlugin() { const plugin = viteImagemin({ @@ -29,6 +29,6 @@ export function configImageminPlugin() { }, ], }, - }); - return plugin; + }) + return plugin } diff --git a/build/vite/plugin/index.ts b/build/vite/plugin/index.ts index 0efe660d..2a5bfc47 100644 --- a/build/vite/plugin/index.ts +++ b/build/vite/plugin/index.ts @@ -1,29 +1,23 @@ -import { PluginOption } from 'vite'; -import vue from '@vitejs/plugin-vue'; -import vueJsx from '@vitejs/plugin-vue-jsx'; -import legacy from '@vitejs/plugin-legacy'; -import purgeIcons from 'vite-plugin-purge-icons'; -import windiCSS from 'vite-plugin-windicss'; -import VitePluginCertificate from 'vite-plugin-mkcert'; -import vueSetupExtend from 'vite-plugin-vue-setup-extend'; -import { configHtmlPlugin } from './html'; -import { configPwaConfig } from './pwa'; -import { configMockPlugin } from './mock'; -import { configCompressPlugin } from './compress'; -import { configStyleImportPlugin } from './styleImport'; -import { configVisualizerConfig } from './visualizer'; -import { configThemePlugin } from './theme'; -import { configImageminPlugin } from './imagemin'; -import { configSvgIconsPlugin } from './svgSprite'; +import { PluginOption } from 'vite' +import vue from '@vitejs/plugin-vue' +import vueJsx from '@vitejs/plugin-vue-jsx' +import legacy from '@vitejs/plugin-legacy' +import purgeIcons from 'vite-plugin-purge-icons' +import windiCSS from 'vite-plugin-windicss' +import VitePluginCertificate from 'vite-plugin-mkcert' +import vueSetupExtend from 'vite-plugin-vue-setup-extend' +import { configHtmlPlugin } from './html' +import { configPwaConfig } from './pwa' +import { configMockPlugin } from './mock' +import { configCompressPlugin } from './compress' +import { configStyleImportPlugin } from './styleImport' +import { configVisualizerConfig } from './visualizer' +import { configThemePlugin } from './theme' +import { configImageminPlugin } from './imagemin' +import { configSvgIconsPlugin } from './svgSprite' export function createVitePlugins(viteEnv: ViteEnv, isBuild: boolean) { - const { - VITE_USE_IMAGEMIN, - VITE_USE_MOCK, - VITE_LEGACY, - VITE_BUILD_COMPRESS, - VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE, - } = viteEnv; + const { VITE_USE_IMAGEMIN, VITE_USE_MOCK, VITE_LEGACY, VITE_BUILD_COMPRESS, VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE } = viteEnv const vitePlugins: (PluginOption | PluginOption[])[] = [ // have to @@ -35,48 +29,46 @@ export function createVitePlugins(viteEnv: ViteEnv, isBuild: boolean) { VitePluginCertificate({ source: 'coding', }), - ]; + ] // vite-plugin-windicss - vitePlugins.push(windiCSS()); + vitePlugins.push(windiCSS()) // @vitejs/plugin-legacy - VITE_LEGACY && isBuild && vitePlugins.push(legacy()); + VITE_LEGACY && isBuild && vitePlugins.push(legacy()) // vite-plugin-html - vitePlugins.push(configHtmlPlugin(viteEnv, isBuild)); + vitePlugins.push(configHtmlPlugin(viteEnv, isBuild)) // vite-plugin-svg-icons - vitePlugins.push(configSvgIconsPlugin(isBuild)); + vitePlugins.push(configSvgIconsPlugin(isBuild)) // vite-plugin-mock - VITE_USE_MOCK && vitePlugins.push(configMockPlugin(isBuild)); + VITE_USE_MOCK && vitePlugins.push(configMockPlugin(isBuild)) // vite-plugin-purge-icons - vitePlugins.push(purgeIcons()); + vitePlugins.push(purgeIcons()) // vite-plugin-style-import - vitePlugins.push(configStyleImportPlugin(isBuild)); + vitePlugins.push(configStyleImportPlugin(isBuild)) // rollup-plugin-visualizer - vitePlugins.push(configVisualizerConfig()); + vitePlugins.push(configVisualizerConfig()) // vite-plugin-theme - vitePlugins.push(configThemePlugin(isBuild)); + vitePlugins.push(configThemePlugin(isBuild)) // The following plugins only work in the production environment if (isBuild) { // vite-plugin-imagemin - VITE_USE_IMAGEMIN && vitePlugins.push(configImageminPlugin()); + VITE_USE_IMAGEMIN && vitePlugins.push(configImageminPlugin()) // rollup-plugin-gzip - vitePlugins.push( - configCompressPlugin(VITE_BUILD_COMPRESS, VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE), - ); + vitePlugins.push(configCompressPlugin(VITE_BUILD_COMPRESS, VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE)) // vite-plugin-pwa - vitePlugins.push(configPwaConfig(viteEnv)); + vitePlugins.push(configPwaConfig(viteEnv)) } - return vitePlugins; + return vitePlugins } diff --git a/build/vite/plugin/mock.ts b/build/vite/plugin/mock.ts index d241e267..27303ca5 100644 --- a/build/vite/plugin/mock.ts +++ b/build/vite/plugin/mock.ts @@ -2,7 +2,7 @@ * Mock plugin for development and production. * https://github.com/anncwb/vite-plugin-mock */ -import { viteMockServe } from 'vite-plugin-mock'; +import { viteMockServe } from 'vite-plugin-mock' export function configMockPlugin(isBuild: boolean) { return viteMockServe({ @@ -15,5 +15,5 @@ export function configMockPlugin(isBuild: boolean) { setupProdMockServer(); `, - }); + }) } diff --git a/build/vite/plugin/pwa.ts b/build/vite/plugin/pwa.ts index 90ef5bc0..b131c333 100644 --- a/build/vite/plugin/pwa.ts +++ b/build/vite/plugin/pwa.ts @@ -2,10 +2,10 @@ * Zero-config PWA for Vite * https://github.com/antfu/vite-plugin-pwa */ -import { VitePWA } from 'vite-plugin-pwa'; +import { VitePWA } from 'vite-plugin-pwa' export function configPwaConfig(env: ViteEnv) { - const { VITE_USE_PWA, VITE_GLOB_APP_TITLE, VITE_GLOB_APP_SHORT_NAME } = env; + const { VITE_USE_PWA, VITE_GLOB_APP_TITLE, VITE_GLOB_APP_SHORT_NAME } = env if (VITE_USE_PWA) { // vite-plugin-pwa @@ -26,8 +26,8 @@ export function configPwaConfig(env: ViteEnv) { }, ], }, - }); - return pwaPlugin; + }) + return pwaPlugin } - return []; + return [] } diff --git a/build/vite/plugin/styleImport.ts b/build/vite/plugin/styleImport.ts index 32b8f823..4e3a77d0 100644 --- a/build/vite/plugin/styleImport.ts +++ b/build/vite/plugin/styleImport.ts @@ -2,7 +2,7 @@ * Introduces component library styles on demand. * https://github.com/anncwb/vite-plugin-style-import */ -import { createStyleImportPlugin } from 'vite-plugin-style-import'; +import { createStyleImportPlugin } from 'vite-plugin-style-import' export function configStyleImportPlugin(_isBuild: boolean) { // if (!isBuild) { @@ -45,7 +45,7 @@ export function configStyleImportPlugin(_isBuild: boolean) { 'skeleton-paragraph', 'skeleton-image', 'skeleton-button', - ]; + ] // 这里是需要额外引入样式的子组件列表 // 单独引入子组件时需引入组件样式,否则会在打包后导致子组件样式丢失 const replaceList = { @@ -66,16 +66,16 @@ export function configStyleImportPlugin(_isBuild: boolean) { 'month-picker': 'date-picker', 'range-picker': 'date-picker', 'image-preview-group': 'image', - }; + } return ignoreList.includes(name) ? '' : replaceList.hasOwnProperty(name) ? `ant-design-vue/es/${replaceList[name]}/style/index` - : `ant-design-vue/es/${name}/style/index`; + : `ant-design-vue/es/${name}/style/index` }, }, ], - }); - return styleImportPlugin; + }) + return styleImportPlugin } diff --git a/build/vite/plugin/svgSprite.ts b/build/vite/plugin/svgSprite.ts index 61f637f4..64453a42 100644 --- a/build/vite/plugin/svgSprite.ts +++ b/build/vite/plugin/svgSprite.ts @@ -3,8 +3,8 @@ * https://github.com/anncwb/vite-plugin-svg-icons */ -import { createSvgIconsPlugin } from 'vite-plugin-svg-icons'; -import path from 'path'; +import { createSvgIconsPlugin } from 'vite-plugin-svg-icons' +import path from 'path' export function configSvgIconsPlugin(isBuild: boolean) { const svgIconsPlugin = createSvgIconsPlugin({ @@ -12,6 +12,6 @@ export function configSvgIconsPlugin(isBuild: boolean) { svgoOptions: isBuild, // default symbolId: 'icon-[dir]-[name]', - }); - return svgIconsPlugin; + }) + return svgIconsPlugin } diff --git a/build/vite/plugin/theme.ts b/build/vite/plugin/theme.ts index 118983f7..7f956653 100644 --- a/build/vite/plugin/theme.ts +++ b/build/vite/plugin/theme.ts @@ -2,46 +2,40 @@ * Vite plugin for website theme color switching * https://github.com/anncwb/vite-plugin-theme */ -import type { PluginOption } from 'vite'; -import path from 'path'; -import { - viteThemePlugin, - antdDarkThemePlugin, - mixLighten, - mixDarken, - tinycolor, -} from 'vite-plugin-theme'; -import { getThemeColors, generateColors } from '../../config/themeConfig'; -import { generateModifyVars } from '../../generate/generateModifyVars'; +import type { PluginOption } from 'vite' +import path from 'path' +import { viteThemePlugin, antdDarkThemePlugin, mixLighten, mixDarken, tinycolor } from 'vite-plugin-theme' +import { getThemeColors, generateColors } from '../../config/themeConfig' +import { generateModifyVars } from '../../generate/generateModifyVars' export function configThemePlugin(isBuild: boolean): PluginOption[] { const colors = generateColors({ mixDarken, mixLighten, tinycolor, - }); + }) const plugin = [ viteThemePlugin({ resolveSelector: (s) => { - s = s.trim(); + s = s.trim() switch (s) { case '.ant-steps-item-process .ant-steps-item-icon > .ant-steps-icon': - return '.ant-steps-item-icon > .ant-steps-icon'; + return '.ant-steps-item-icon > .ant-steps-icon' case '.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled)': case '.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover': case '.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active': - return s; + return s case '.ant-steps-item-icon > .ant-steps-icon': - return s; + return s case '.ant-select-item-option-selected:not(.ant-select-item-option-disabled)': - return s; + return s default: if (s.indexOf('.ant-btn') >= -1) { // 按钮被重新定制过,需要过滤掉class防止覆盖 - return s; + return s } } - return s.startsWith('[data-theme') ? s : `[data-theme] ${s}`; + return s.startsWith('[data-theme') ? s : `[data-theme] ${s}` }, colorVariables: [...getThemeColors(), ...colors], }), @@ -83,7 +77,7 @@ export function configThemePlugin(isBuild: boolean): PluginOption[] { 'alert-error-icon-color': '#a61d24', }, }), - ]; + ] - return plugin as unknown as PluginOption[]; + return plugin as unknown as PluginOption[] } diff --git a/build/vite/plugin/visualizer.ts b/build/vite/plugin/visualizer.ts index 75d4451e..cddee494 100644 --- a/build/vite/plugin/visualizer.ts +++ b/build/vite/plugin/visualizer.ts @@ -1,8 +1,8 @@ /** * Package file volume analysis */ -import visualizer from 'rollup-plugin-visualizer'; -import { isReportMode } from '../../utils'; +import visualizer from 'rollup-plugin-visualizer' +import { isReportMode } from '../../utils' export function configVisualizerConfig() { if (isReportMode()) { @@ -11,7 +11,7 @@ export function configVisualizerConfig() { open: true, gzipSize: true, brotliSize: true, - }) as Plugin; + }) as Plugin } - return []; + return [] } diff --git a/build/vite/proxy.ts b/build/vite/proxy.ts index 8525397b..1a35fa26 100644 --- a/build/vite/proxy.ts +++ b/build/vite/proxy.ts @@ -1,24 +1,24 @@ /** * Used to parse the .env.development proxy configuration */ -import type { ProxyOptions } from 'vite'; +import type { ProxyOptions } from 'vite' -type ProxyItem = [string, string]; +type ProxyItem = [string, string] -type ProxyList = ProxyItem[]; +type ProxyList = ProxyItem[] -type ProxyTargetList = Record; +type ProxyTargetList = Record -const httpsRE = /^https:\/\//; +const httpsRE = /^https:\/\// /** * Generate proxy * @param list */ export function createProxy(list: ProxyList = []) { - const ret: ProxyTargetList = {}; + const ret: ProxyTargetList = {} for (const [prefix, target] of list) { - const isHttps = httpsRE.test(target); + const isHttps = httpsRE.test(target) // https://github.com/http-party/node-http-proxy#options ret[prefix] = { @@ -28,7 +28,7 @@ export function createProxy(list: ProxyList = []) { rewrite: (path) => path.replace(new RegExp(`^${prefix}`), ''), // https is require secure=false ...(isHttps ? { secure: false } : {}), - }; + } } - return ret; + return ret } diff --git a/commitlint.config.js b/commitlint.config.js index 151ead3c..af370982 100644 --- a/commitlint.config.js +++ b/commitlint.config.js @@ -1,11 +1,11 @@ -const fs = require('fs'); -const path = require('path'); -const { execSync } = require('child_process'); +const fs = require('fs') +const path = require('path') +const { execSync } = require('child_process') const scopes = fs .readdirSync(path.resolve(__dirname, 'src'), { withFileTypes: true }) .filter((dirent) => dirent.isDirectory()) - .map((dirent) => dirent.name.replace(/s$/, '')); + .map((dirent) => dirent.name.replace(/s$/, '')) // precomputed scope const scopeComplete = execSync('git status --porcelain || true') @@ -15,7 +15,7 @@ const scopeComplete = execSync('git status --porcelain || true') .find((r) => ~r.indexOf('M src')) ?.replace(/(\/)/g, '%%') ?.match(/src%%((\w|-)*)/)?.[1] - ?.replace(/s$/, ''); + ?.replace(/s$/, '') /** @type {import('cz-git').UserConfig} */ module.exports = { @@ -31,23 +31,7 @@ module.exports = { 'type-enum': [ 2, 'always', - [ - 'feat', - 'fix', - 'perf', - 'style', - 'docs', - 'test', - 'refactor', - 'build', - 'ci', - 'chore', - 'revert', - 'wip', - 'workflow', - 'types', - 'release', - ], + ['feat', 'fix', 'perf', 'style', 'docs', 'test', 'refactor', 'build', 'ci', 'chore', 'revert', 'wip', 'workflow', 'types', 'release'], ], }, prompt: { @@ -104,4 +88,4 @@ module.exports = { // emptyScopesAlias: 'empty: 不填写', // customScopesAlias: 'custom: 自定义', }, -}; +} diff --git a/mock/_createProductionServer.ts b/mock/_createProductionServer.ts index a44310b9..287337d4 100644 --- a/mock/_createProductionServer.ts +++ b/mock/_createProductionServer.ts @@ -1,18 +1,18 @@ -import { createProdMockServer } from 'vite-plugin-mock/es/createProdMockServer'; +import { createProdMockServer } from 'vite-plugin-mock/es/createProdMockServer' -const modules = import.meta.globEager('./**/*.ts'); +const modules = import.meta.globEager('./**/*.ts') -const mockModules: any[] = []; +const mockModules: any[] = [] Object.keys(modules).forEach((key) => { if (key.includes('/_')) { - return; + return } - mockModules.push(...modules[key].default); -}); + mockModules.push(...modules[key].default) +}) /** * Used in a production environment. Need to manually import all modules */ export function setupProdMockServer() { - createProdMockServer(mockModules); + createProdMockServer(mockModules) } diff --git a/mock/_util.ts b/mock/_util.ts index 5edff264..e0e2dfb4 100644 --- a/mock/_util.ts +++ b/mock/_util.ts @@ -1,5 +1,5 @@ // Interface data format used to return a unified format -import { ResultEnum } from '/@/enums/httpEnum'; +import { ResultEnum } from '/@/enums/httpEnum' export function resultSuccess(data: T, { message = 'ok' } = {}) { return { @@ -7,16 +7,11 @@ export function resultSuccess(data: T, { message = 'ok' } = {}) data, message, type: 'success', - }; + } } -export function resultPageSuccess( - page: number, - pageSize: number, - list: T[], - { message = 'ok' } = {}, -) { - const pageData = pagination(page, pageSize, list); +export function resultPageSuccess(page: number, pageSize: number, list: T[], { message = 'ok' } = {}) { + const pageData = pagination(page, pageSize, list) return { ...resultSuccess({ @@ -24,33 +19,28 @@ export function resultPageSuccess( total: list.length, }), message, - }; + } } -export function resultError( - message = 'Request failed', - { code = ResultEnum.ERROR, result = null } = {}, -) { +export function resultError(message = 'Request failed', { code = ResultEnum.ERROR, result = null } = {}) { return { code, result, message, type: 'error', - }; + } } export function pagination(pageNo: number, pageSize: number, array: T[]): T[] { - const offset = (pageNo - 1) * Number(pageSize); - return offset + Number(pageSize) >= array.length - ? array.slice(offset, array.length) - : array.slice(offset, offset + Number(pageSize)); + const offset = (pageNo - 1) * Number(pageSize) + return offset + Number(pageSize) >= array.length ? array.slice(offset, array.length) : array.slice(offset, offset + Number(pageSize)) } export interface requestParams { - method: string; - body: any; - headers?: { authorization?: string }; - query: any; + method: string + body: any + headers?: { authorization?: string } + query: any } /** @@ -58,5 +48,5 @@ export interface requestParams { * */ export function getRequestToken({ headers }: requestParams): string | undefined { - return headers?.authorization; + return headers?.authorization } diff --git a/mock/demo/account.ts b/mock/demo/account.ts index a3924931..93a0c6ca 100644 --- a/mock/demo/account.ts +++ b/mock/demo/account.ts @@ -1,6 +1,6 @@ -import { MockMethod } from 'vite-plugin-mock'; -import { resultSuccess, resultError } from '../_util'; -import { ResultEnum } from '../../src/enums/httpEnum'; +import { MockMethod } from 'vite-plugin-mock' +import { resultSuccess, resultError } from '../_util' +import { ResultEnum } from '../../src/enums/httpEnum' const userInfo = { name: 'Vben', @@ -41,7 +41,7 @@ const userInfo = { country: 'China', address: 'Xiamen City 77', phone: '0592-268888888', -}; +} export default [ { @@ -49,7 +49,7 @@ export default [ timeout: 1000, method: 'get', response: () => { - return resultSuccess(userInfo); + return resultSuccess(userInfo) }, }, { @@ -57,7 +57,7 @@ export default [ method: 'post', statusCode: 401, response: () => { - return resultError(); + return resultError() }, }, { @@ -65,7 +65,7 @@ export default [ method: 'post', statusCode: 200, response: () => { - return resultError('Token Expired!', { code: ResultEnum.TIMEOUT as number }); + return resultError('Token Expired!', { code: ResultEnum.TIMEOUT as number }) }, }, -] as MockMethod[]; +] as MockMethod[] diff --git a/mock/demo/api-cascader.ts b/mock/demo/api-cascader.ts index 6334ef5b..dcaf322c 100644 --- a/mock/demo/api-cascader.ts +++ b/mock/demo/api-cascader.ts @@ -1,5 +1,5 @@ -import { MockMethod } from 'vite-plugin-mock'; -import { resultSuccess } from '../_util'; +import { MockMethod } from 'vite-plugin-mock' +import { resultSuccess } from '../_util' const areaList: any[] = [ { @@ -308,18 +308,18 @@ const areaList: any[] = [ customized: false, usable: true, }, -]; +] export default [ { url: '/basic-api/cascader/getAreaRecord', timeout: 1000, method: 'post', response: ({ body }) => { - const { parentCode } = body || {}; + const { parentCode } = body || {} if (!parentCode) { - return resultSuccess(areaList.filter((it) => it.code === '430000')); + return resultSuccess(areaList.filter((it) => it.code === '430000')) } - return resultSuccess(areaList.filter((it) => it.parentCode === parentCode)); + return resultSuccess(areaList.filter((it) => it.parentCode === parentCode)) }, }, -] as MockMethod[]; +] as MockMethod[] diff --git a/mock/demo/select-demo.ts b/mock/demo/select-demo.ts index 631c6bb0..7e248af4 100644 --- a/mock/demo/select-demo.ts +++ b/mock/demo/select-demo.ts @@ -1,18 +1,18 @@ -import { MockMethod } from 'vite-plugin-mock'; -import { resultSuccess } from '../_util'; +import { MockMethod } from 'vite-plugin-mock' +import { resultSuccess } from '../_util' const demoList = (keyword, count = 20) => { const result = { list: [] as any[], - }; + } for (let index = 0; index < count; index++) { result.list.push({ name: `${keyword ?? ''}选项${index}`, id: `${index}`, - }); + }) } - return result; -}; + return result +} export default [ { @@ -20,9 +20,9 @@ export default [ timeout: 1000, method: 'get', response: ({ query }) => { - const { keyword, count } = query; - console.log(keyword); - return resultSuccess(demoList(keyword, count)); + const { keyword, count } = query + console.log(keyword) + return resultSuccess(demoList(keyword, count)) }, }, -] as MockMethod[]; +] as MockMethod[] diff --git a/mock/demo/system.ts b/mock/demo/system.ts index c4177273..92c2d269 100644 --- a/mock/demo/system.ts +++ b/mock/demo/system.ts @@ -1,8 +1,8 @@ -import { MockMethod } from 'vite-plugin-mock'; -import { resultError, resultPageSuccess, resultSuccess } from '../_util'; +import { MockMethod } from 'vite-plugin-mock' +import { resultError, resultPageSuccess, resultSuccess } from '../_util' const accountList = (() => { - const result: any[] = []; + const result: any[] = [] for (let index = 0; index < 20; index++) { result.push({ id: `${index}`, @@ -13,13 +13,13 @@ const accountList = (() => { createTime: '@datetime', remark: '@cword(10,20)', 'status|1': ['0', '1'], - }); + }) } - return result; -})(); + return result +})() const roleList = (() => { - const result: any[] = []; + const result: any[] = [] for (let index = 0; index < 4; index++) { result.push({ id: index + 1, @@ -30,13 +30,13 @@ const roleList = (() => { remark: '@cword(10,20)', menu: [['0', '1', '2'], ['0', '1'], ['0', '2'], ['2']][index], 'status|1': ['0', '1'], - }); + }) } - return result; -})(); + return result +})() const deptList = (() => { - const result: any[] = []; + const result: any[] = [] for (let index = 0; index < 3; index++) { result.push({ id: `${index}`, @@ -46,7 +46,7 @@ const deptList = (() => { remark: '@cword(10,20)', 'status|1': ['0', '0', '1'], children: (() => { - const children: any[] = []; + const children: any[] = [] for (let j = 0; j < 4; j++) { children.push({ id: `${index}-${j}`, @@ -57,17 +57,17 @@ const deptList = (() => { 'status|1': ['0', '1'], parentDept: `${index}`, children: undefined, - }); + }) } - return children; + return children })(), - }); + }) } - return result; -})(); + return result +})() const menuList = (() => { - const result: any[] = []; + const result: any[] = [] for (let index = 0; index < 3; index++) { result.push({ id: `${index}`, @@ -80,7 +80,7 @@ const menuList = (() => { createTime: '@datetime', 'status|1': ['0', '0', '1'], children: (() => { - const children: any[] = []; + const children: any[] = [] for (let j = 0; j < 4; j++) { children.push({ id: `${index}-${j}`, @@ -88,28 +88,20 @@ const menuList = (() => { menuName: ['菜单1', '菜单2', '菜单3', '菜单4'][j], icon: 'ion:document', permission: ['menu1:view', 'menu2:add', 'menu3:update', 'menu4:del'][index], - component: [ - '/dashboard/welcome/index', - '/dashboard/analysis/index', - '/dashboard/workbench/index', - '/dashboard/test/index', - ][j], + component: ['/dashboard/welcome/index', '/dashboard/analysis/index', '/dashboard/workbench/index', '/dashboard/test/index'][j], orderNo: j + 1, createTime: '@datetime', 'status|1': ['0', '1'], parentMenu: `${index}`, children: (() => { - const children: any[] = []; + const children: any[] = [] for (let k = 0; k < 4; k++) { children.push({ id: `${index}-${j}-${k}`, type: '2', menuName: '按钮' + (j + 1) + '-' + (k + 1), icon: '', - permission: - ['menu1:view', 'menu2:add', 'menu3:update', 'menu4:del'][index] + - ':btn' + - (k + 1), + permission: ['menu1:view', 'menu2:add', 'menu3:update', 'menu4:del'][index] + ':btn' + (k + 1), component: [ '/dashboard/welcome/index', '/dashboard/analysis/index', @@ -121,18 +113,18 @@ const menuList = (() => { 'status|1': ['0', '1'], parentMenu: `${index}-${j}`, children: undefined, - }); + }) } - return children; + return children })(), - }); + }) } - return children; + return children })(), - }); + }) } - return result; -})(); + return result +})() export default [ { @@ -140,8 +132,8 @@ export default [ timeout: 100, method: 'get', response: ({ query }) => { - const { page = 1, pageSize = 20 } = query; - return resultPageSuccess(page, pageSize, accountList); + const { page = 1, pageSize = 20 } = query + return resultPageSuccess(page, pageSize, accountList) }, }, { @@ -149,8 +141,8 @@ export default [ timeout: 100, method: 'get', response: ({ query }) => { - const { page = 1, pageSize = 20 } = query; - return resultPageSuccess(page, pageSize, roleList); + const { page = 1, pageSize = 20 } = query + return resultPageSuccess(page, pageSize, roleList) }, }, { @@ -158,8 +150,8 @@ export default [ timeout: 500, method: 'post', response: ({ query }) => { - const { id, status } = query; - return resultSuccess({ id, status }); + const { id, status } = query + return resultSuccess({ id, status }) }, }, { @@ -167,7 +159,7 @@ export default [ timeout: 100, method: 'get', response: () => { - return resultSuccess(roleList); + return resultSuccess(roleList) }, }, { @@ -175,7 +167,7 @@ export default [ timeout: 100, method: 'get', response: () => { - return resultSuccess(deptList); + return resultSuccess(deptList) }, }, { @@ -183,7 +175,7 @@ export default [ timeout: 100, method: 'get', response: () => { - return resultSuccess(menuList); + return resultSuccess(menuList) }, }, { @@ -191,12 +183,12 @@ export default [ timeout: 500, method: 'post', response: ({ body }) => { - const { account } = body || {}; + const { account } = body || {} if (account && account.indexOf('admin') !== -1) { - return resultError('该字段不能包含admin'); + return resultError('该字段不能包含admin') } else { - return resultSuccess(`${account} can use`); + return resultSuccess(`${account} can use`) } }, }, -] as MockMethod[]; +] as MockMethod[] diff --git a/mock/demo/table-demo.ts b/mock/demo/table-demo.ts index f3a0f16f..5ae19a3d 100644 --- a/mock/demo/table-demo.ts +++ b/mock/demo/table-demo.ts @@ -1,17 +1,17 @@ -import { MockMethod } from 'vite-plugin-mock'; -import { Random } from 'mockjs'; -import { resultPageSuccess } from '../_util'; +import { MockMethod } from 'vite-plugin-mock' +import { Random } from 'mockjs' +import { resultPageSuccess } from '../_util' function getRandomPics(count = 10): string[] { - const arr: string[] = []; + const arr: string[] = [] for (let i = 0; i < count; i++) { - arr.push(Random.image('800x600', Random.color(), Random.color(), Random.title())); + arr.push(Random.image('800x600', Random.color(), Random.color(), Random.title())) } - return arr; + return arr } const demoList = (() => { - const result: any[] = []; + const result: any[] = [] for (let index = 0; index < 200; index++) { result.push({ id: `${index}`, @@ -34,10 +34,10 @@ const demoList = (() => { time: `@time('HH:mm')`, 'no|100000-10000000': 100000, 'status|1': ['normal', 'enable', 'disable'], - }); + }) } - return result; -})(); + return result +})() export default [ { @@ -45,8 +45,8 @@ export default [ timeout: 100, method: 'get', response: ({ query }) => { - const { page = 1, pageSize = 20 } = query; - return resultPageSuccess(page, pageSize, demoList); + const { page = 1, pageSize = 20 } = query + return resultPageSuccess(page, pageSize, demoList) }, }, -] as MockMethod[]; +] as MockMethod[] diff --git a/mock/demo/tree-demo.ts b/mock/demo/tree-demo.ts index 6fdcb859..c3137487 100644 --- a/mock/demo/tree-demo.ts +++ b/mock/demo/tree-demo.ts @@ -1,28 +1,28 @@ -import { MockMethod } from 'vite-plugin-mock'; -import { resultSuccess } from '../_util'; +import { MockMethod } from 'vite-plugin-mock' +import { resultSuccess } from '../_util' const demoTreeList = (keyword) => { const result = { list: [] as Recordable[], - }; + } for (let index = 0; index < 5; index++) { - const children: Recordable[] = []; + const children: Recordable[] = [] for (let j = 0; j < 3; j++) { children.push({ title: `${keyword ?? ''}选项${index}-${j}`, value: `${index}-${j}`, key: `${index}-${j}`, - }); + }) } result.list.push({ title: `${keyword ?? ''}选项${index}`, value: `${index}`, key: `${index}`, children, - }); + }) } - return result; -}; + return result +} export default [ { @@ -30,9 +30,9 @@ export default [ timeout: 1000, method: 'get', response: ({ query }) => { - const { keyword } = query; - console.log(keyword); - return resultSuccess(demoTreeList(keyword)); + const { keyword } = query + console.log(keyword) + return resultSuccess(demoTreeList(keyword)) }, }, -] as MockMethod[]; +] as MockMethod[] diff --git a/mock/sys/menu.ts b/mock/sys/menu.ts index 1c47e667..d741d8e9 100644 --- a/mock/sys/menu.ts +++ b/mock/sys/menu.ts @@ -1,6 +1,6 @@ -import { resultSuccess, resultError, getRequestToken, requestParams } from '../_util'; -import { MockMethod } from 'vite-plugin-mock'; -import { createFakeUserList } from './user'; +import { resultSuccess, resultError, getRequestToken, requestParams } from '../_util' +import { MockMethod } from 'vite-plugin-mock' +import { createFakeUserList } from './user' // single const dashboardRoute = { @@ -39,7 +39,7 @@ const dashboardRoute = { }, }, ], -}; +} const backRoute = { path: 'back', @@ -66,7 +66,7 @@ const backRoute = { }, }, ], -}; +} const authRoute = { path: '/permission', @@ -78,7 +78,7 @@ const authRoute = { title: 'routes.demo.permission.permission', }, children: [backRoute], -}; +} const levelRoute = { path: '/level', @@ -134,7 +134,7 @@ const levelRoute = { }, }, ], -}; +} const sysRoute = { path: '/system', @@ -205,7 +205,7 @@ const sysRoute = { component: '/demo/system/password/index', }, ], -}; +} const linkRoute = { path: '/link', @@ -233,7 +233,7 @@ const linkRoute = { }, }, ], -}; +} export default [ { @@ -241,30 +241,30 @@ export default [ timeout: 1000, method: 'get', response: (request: requestParams) => { - const token = getRequestToken(request); + const token = getRequestToken(request) if (!token) { - return resultError('Invalid token!'); + return resultError('Invalid token!') } - const checkUser = createFakeUserList().find((item) => item.token === token); + const checkUser = createFakeUserList().find((item) => item.token === token) if (!checkUser) { - return resultError('Invalid user token!'); + return resultError('Invalid user token!') } - const id = checkUser.userId; - let menu: Object[]; + const id = checkUser.userId + let menu: Object[] switch (id) { case '1': - dashboardRoute.redirect = dashboardRoute.path + '/' + dashboardRoute.children[0].path; - menu = [dashboardRoute, authRoute, levelRoute, sysRoute, linkRoute]; - break; + dashboardRoute.redirect = dashboardRoute.path + '/' + dashboardRoute.children[0].path + menu = [dashboardRoute, authRoute, levelRoute, sysRoute, linkRoute] + break case '2': - dashboardRoute.redirect = dashboardRoute.path + '/' + dashboardRoute.children[1].path; - menu = [dashboardRoute, authRoute, levelRoute, linkRoute]; - break; + dashboardRoute.redirect = dashboardRoute.path + '/' + dashboardRoute.children[1].path + menu = [dashboardRoute, authRoute, levelRoute, linkRoute] + break default: - menu = []; + menu = [] } - return resultSuccess(menu); + return resultSuccess(menu) }, }, -] as MockMethod[]; +] as MockMethod[] diff --git a/mock/sys/user.ts b/mock/sys/user.ts index ec5dc263..6d145ebe 100644 --- a/mock/sys/user.ts +++ b/mock/sys/user.ts @@ -1,5 +1,5 @@ -import { MockMethod } from 'vite-plugin-mock'; -import { resultError, resultSuccess, getRequestToken, requestParams } from '../_util'; +import { MockMethod } from 'vite-plugin-mock' +import { resultError, resultSuccess, getRequestToken, requestParams } from '../_util' export function createFakeUserList() { return [ @@ -35,14 +35,14 @@ export function createFakeUserList() { }, ], }, - ]; + ] } const fakeCodeList: any = { '1': ['1000', '3000', '5000'], '2': ['2000', '4000', '6000'], -}; +} export default [ // mock user login { @@ -50,14 +50,12 @@ export default [ timeout: 200, method: 'post', response: ({ body }) => { - const { username, password } = body; - const checkUser = createFakeUserList().find( - (item) => item.username === username && password === item.password, - ); + const { username, password } = body + const checkUser = createFakeUserList().find((item) => item.username === username && password === item.password) if (!checkUser) { - return resultError('Incorrect account or password!'); + return resultError('Incorrect account or password!') } - const { userId, username: _username, token, realName, desc, roles } = checkUser; + const { userId, username: _username, token, realName, desc, roles } = checkUser return resultSuccess({ roles, userId, @@ -65,20 +63,20 @@ export default [ token, realName, desc, - }); + }) }, }, { url: '/api/getUserInfo', method: 'get', response: (request: requestParams) => { - const token = getRequestToken(request); - if (!token) return resultError('Invalid token'); - const checkUser = createFakeUserList().find((item) => item.token === token); + const token = getRequestToken(request) + if (!token) return resultError('Invalid token') + const checkUser = createFakeUserList().find((item) => item.token === token) if (!checkUser) { - return resultError('The corresponding user information was not obtained!'); + return resultError('The corresponding user information was not obtained!') } - return resultSuccess(checkUser); + return resultSuccess(checkUser) }, }, { @@ -86,15 +84,15 @@ export default [ timeout: 200, method: 'get', response: (request: requestParams) => { - const token = getRequestToken(request); - if (!token) return resultError('Invalid token'); - const checkUser = createFakeUserList().find((item) => item.token === token); + const token = getRequestToken(request) + if (!token) return resultError('Invalid token') + const checkUser = createFakeUserList().find((item) => item.token === token) if (!checkUser) { - return resultError('Invalid token!'); + return resultError('Invalid token!') } - const codeList = fakeCodeList[checkUser.userId]; + const codeList = fakeCodeList[checkUser.userId] - return resultSuccess(codeList); + return resultSuccess(codeList) }, }, { @@ -102,13 +100,13 @@ export default [ timeout: 200, method: 'get', response: (request: requestParams) => { - const token = getRequestToken(request); - if (!token) return resultError('Invalid token'); - const checkUser = createFakeUserList().find((item) => item.token === token); + const token = getRequestToken(request) + if (!token) return resultError('Invalid token') + const checkUser = createFakeUserList().find((item) => item.token === token) if (!checkUser) { - return resultError('Invalid token!'); + return resultError('Invalid token!') } - return resultSuccess(undefined, { message: 'Token has been destroyed' }); + return resultSuccess(undefined, { message: 'Token has been destroyed' }) }, }, { @@ -116,7 +114,7 @@ export default [ statusCode: 405, method: 'get', response: () => { - return resultError('Error!'); + return resultError('Error!') }, }, -] as MockMethod[]; +] as MockMethod[] diff --git a/postcss.config.js b/postcss.config.js index a47ef4f9..90d9fffc 100644 --- a/postcss.config.js +++ b/postcss.config.js @@ -2,4 +2,4 @@ module.exports = { plugins: { autoprefixer: {}, }, -}; +} diff --git a/prettier.config.js b/prettier.config.js index 14531867..802935ea 100644 --- a/prettier.config.js +++ b/prettier.config.js @@ -4,7 +4,7 @@ module.exports = { semi: false, //行位是否使用分号 vueIndentScriptAndStyle: true, // vue文件的script标签和Style标签下的内容需要缩进 singleQuote: true, // 强制使用单引号 - trailingComma: 'all', + trailingComma: 'all', // 强制最后一行也要有斗号 proseWrap: 'never', htmlWhitespaceSensitivity: 'strict', endOfLine: 'auto', diff --git a/src/App.vue b/src/App.vue index f4fab182..b9097b43 100644 --- a/src/App.vue +++ b/src/App.vue @@ -7,15 +7,15 @@ diff --git a/src/api/demo/account.ts b/src/api/demo/account.ts index 2a368138..3148b44a 100644 --- a/src/api/demo/account.ts +++ b/src/api/demo/account.ts @@ -1,5 +1,5 @@ -import { defHttp } from '/@/utils/http/axios'; -import { GetAccountInfoModel } from './model/accountModel'; +import { defHttp } from '/@/utils/http/axios' +import { GetAccountInfoModel } from './model/accountModel' enum Api { ACCOUNT_INFO = '/account/getAccountInfo', @@ -9,8 +9,8 @@ enum Api { // Get personal center-basic settings -export const accountInfoApi = () => defHttp.get({ url: Api.ACCOUNT_INFO }); +export const accountInfoApi = () => defHttp.get({ url: Api.ACCOUNT_INFO }) -export const sessionTimeoutApi = () => defHttp.post({ url: Api.SESSION_TIMEOUT }); +export const sessionTimeoutApi = () => defHttp.post({ url: Api.SESSION_TIMEOUT }) -export const tokenExpiredApi = () => defHttp.post({ url: Api.TOKEN_EXPIRED }); +export const tokenExpiredApi = () => defHttp.post({ url: Api.TOKEN_EXPIRED }) diff --git a/src/api/demo/cascader.ts b/src/api/demo/cascader.ts index 83dcab07..b8f7abd0 100644 --- a/src/api/demo/cascader.ts +++ b/src/api/demo/cascader.ts @@ -1,9 +1,8 @@ -import { defHttp } from '/@/utils/http/axios'; -import { AreaModel, AreaParams } from '/@/api/demo/model/areaModel'; +import { defHttp } from '/@/utils/http/axios' +import { AreaModel, AreaParams } from '/@/api/demo/model/areaModel' enum Api { AREA_RECORD = '/cascader/getAreaRecord', } -export const areaRecord = (data: AreaParams) => - defHttp.post({ url: Api.AREA_RECORD, data }); +export const areaRecord = (data: AreaParams) => defHttp.post({ url: Api.AREA_RECORD, data }) diff --git a/src/api/demo/error.ts b/src/api/demo/error.ts index 3ce60721..b8cfd8ed 100644 --- a/src/api/demo/error.ts +++ b/src/api/demo/error.ts @@ -1,4 +1,4 @@ -import { defHttp } from '/@/utils/http/axios'; +import { defHttp } from '/@/utils/http/axios' enum Api { // The address does not exist @@ -9,4 +9,4 @@ enum Api { * @description: Trigger ajax error */ -export const fireErrorApi = () => defHttp.get({ url: Api.Error }); +export const fireErrorApi = () => defHttp.get({ url: Api.Error }) diff --git a/src/api/demo/model/accountModel.ts b/src/api/demo/model/accountModel.ts index 4594393e..06c48888 100644 --- a/src/api/demo/model/accountModel.ts +++ b/src/api/demo/model/accountModel.ts @@ -1,7 +1,7 @@ export interface GetAccountInfoModel { - email: string; - name: string; - introduction: string; - phone: string; - address: string; + email: string + name: string + introduction: string + phone: string + address: string } diff --git a/src/api/demo/model/areaModel.ts b/src/api/demo/model/areaModel.ts index dfaa481b..ac40079b 100644 --- a/src/api/demo/model/areaModel.ts +++ b/src/api/demo/model/areaModel.ts @@ -1,12 +1,12 @@ export interface AreaModel { - id: string; - code: string; - parentCode: string; - name: string; - levelType: number; - [key: string]: string | number; + id: string + code: string + parentCode: string + name: string + levelType: number + [key: string]: string | number } export interface AreaParams { - parentCode: string; + parentCode: string } diff --git a/src/api/demo/model/optionsModel.ts b/src/api/demo/model/optionsModel.ts index c15ef8fd..086e3f7c 100644 --- a/src/api/demo/model/optionsModel.ts +++ b/src/api/demo/model/optionsModel.ts @@ -1,15 +1,15 @@ -import { BasicFetchResult } from '/@/api/model/baseModel'; +import { BasicFetchResult } from '/@/api/model/baseModel' export interface DemoOptionsItem { - label: string; - value: string; + label: string + value: string } export interface selectParams { - id: number | string; + id: number | string } /** * @description: Request list return value */ -export type DemoOptionsGetResultModel = BasicFetchResult; +export type DemoOptionsGetResultModel = BasicFetchResult diff --git a/src/api/demo/model/systemModel.ts b/src/api/demo/model/systemModel.ts index f8936c29..bb40ad06 100644 --- a/src/api/demo/model/systemModel.ts +++ b/src/api/demo/model/systemModel.ts @@ -1,74 +1,74 @@ -import { BasicPageParams, BasicFetchResult } from '/@/api/model/baseModel'; +import { BasicPageParams, BasicFetchResult } from '/@/api/model/baseModel' export type AccountParams = BasicPageParams & { - account?: string; - nickname?: string; -}; + account?: string + nickname?: string +} export type RoleParams = { - roleName?: string; - status?: string; -}; + roleName?: string + status?: string +} -export type RolePageParams = BasicPageParams & RoleParams; +export type RolePageParams = BasicPageParams & RoleParams export type DeptParams = { - deptName?: string; - status?: string; -}; + deptName?: string + status?: string +} export type MenuParams = { - menuName?: string; - status?: string; -}; + menuName?: string + status?: string +} export interface AccountListItem { - id: string; - account: string; - email: string; - nickname: string; - role: number; - createTime: string; - remark: string; - status: number; + id: string + account: string + email: string + nickname: string + role: number + createTime: string + remark: string + status: number } export interface DeptListItem { - id: string; - orderNo: string; - createTime: string; - remark: string; - status: number; + id: string + orderNo: string + createTime: string + remark: string + status: number } export interface MenuListItem { - id: string; - orderNo: string; - createTime: string; - status: number; - icon: string; - component: string; - permission: string; + id: string + orderNo: string + createTime: string + status: number + icon: string + component: string + permission: string } export interface RoleListItem { - id: string; - roleName: string; - roleValue: string; - status: number; - orderNo: string; - createTime: string; + id: string + roleName: string + roleValue: string + status: number + orderNo: string + createTime: string } /** * @description: Request list return value */ -export type AccountListGetResultModel = BasicFetchResult; +export type AccountListGetResultModel = BasicFetchResult -export type DeptListGetResultModel = BasicFetchResult; +export type DeptListGetResultModel = BasicFetchResult -export type MenuListGetResultModel = BasicFetchResult; +export type MenuListGetResultModel = BasicFetchResult -export type RolePageListGetResultModel = BasicFetchResult; +export type RolePageListGetResultModel = BasicFetchResult -export type RoleListGetResultModel = RoleListItem[]; +export type RoleListGetResultModel = RoleListItem[] diff --git a/src/api/demo/model/tableModel.ts b/src/api/demo/model/tableModel.ts index 322a8b48..d3fa40ee 100644 --- a/src/api/demo/model/tableModel.ts +++ b/src/api/demo/model/tableModel.ts @@ -1,20 +1,20 @@ -import { BasicPageParams, BasicFetchResult } from '/@/api/model/baseModel'; +import { BasicPageParams, BasicFetchResult } from '/@/api/model/baseModel' /** * @description: Request list interface parameters */ -export type DemoParams = BasicPageParams; +export type DemoParams = BasicPageParams export interface DemoListItem { - id: string; - beginTime: string; - endTime: string; - address: string; - name: string; - no: number; - status: number; + id: string + beginTime: string + endTime: string + address: string + name: string + no: number + status: number } /** * @description: Request list return value */ -export type DemoListGetResultModel = BasicFetchResult; +export type DemoListGetResultModel = BasicFetchResult diff --git a/src/api/demo/select.ts b/src/api/demo/select.ts index 54c4ef5e..92df3e3c 100644 --- a/src/api/demo/select.ts +++ b/src/api/demo/select.ts @@ -1,5 +1,5 @@ -import { defHttp } from '/@/utils/http/axios'; -import { DemoOptionsItem, selectParams } from './model/optionsModel'; +import { defHttp } from '/@/utils/http/axios' +import { DemoOptionsItem, selectParams } from './model/optionsModel' enum Api { OPTIONS_LIST = '/select/getDemoOptions', } @@ -7,5 +7,4 @@ enum Api { /** * @description: Get sample options value */ -export const optionsListApi = (params?: selectParams) => - defHttp.get({ url: Api.OPTIONS_LIST, params }); +export const optionsListApi = (params?: selectParams) => defHttp.get({ url: Api.OPTIONS_LIST, params }) diff --git a/src/api/demo/system.ts b/src/api/demo/system.ts index f5c296b5..f55de9c6 100644 --- a/src/api/demo/system.ts +++ b/src/api/demo/system.ts @@ -9,8 +9,8 @@ import { AccountListGetResultModel, RolePageListGetResultModel, RoleListGetResultModel, -} from './model/systemModel'; -import { defHttp } from '/@/utils/http/axios'; +} from './model/systemModel' +import { defHttp } from '/@/utils/http/axios' enum Api { AccountList = '/system/getAccountList', @@ -22,23 +22,17 @@ enum Api { GetAllRoleList = '/system/getAllRoleList', } -export const getAccountList = (params: AccountParams) => - defHttp.get({ url: Api.AccountList, params }); +export const getAccountList = (params: AccountParams) => defHttp.get({ url: Api.AccountList, params }) -export const getDeptList = (params?: DeptListItem) => - defHttp.get({ url: Api.DeptList, params }); +export const getDeptList = (params?: DeptListItem) => defHttp.get({ url: Api.DeptList, params }) -export const getMenuList = (params?: MenuParams) => - defHttp.get({ url: Api.MenuList, params }); +export const getMenuList = (params?: MenuParams) => defHttp.get({ url: Api.MenuList, params }) -export const getRoleListByPage = (params?: RolePageParams) => - defHttp.get({ url: Api.RolePageList, params }); +export const getRoleListByPage = (params?: RolePageParams) => defHttp.get({ url: Api.RolePageList, params }) -export const getAllRoleList = (params?: RoleParams) => - defHttp.get({ url: Api.GetAllRoleList, params }); +export const getAllRoleList = (params?: RoleParams) => defHttp.get({ url: Api.GetAllRoleList, params }) -export const setRoleStatus = (id: number, status: string) => - defHttp.post({ url: Api.setRoleStatus, params: { id, status } }); +export const setRoleStatus = (id: number, status: string) => defHttp.post({ url: Api.setRoleStatus, params: { id, status } }) export const isAccountExist = (account: string) => - defHttp.post({ url: Api.IsAccountExist, params: { account } }, { errorMessageMode: 'none' }); + defHttp.post({ url: Api.IsAccountExist, params: { account } }, { errorMessageMode: 'none' }) diff --git a/src/api/demo/table.ts b/src/api/demo/table.ts index b9b60df6..57f37dbc 100644 --- a/src/api/demo/table.ts +++ b/src/api/demo/table.ts @@ -1,5 +1,5 @@ -import { defHttp } from '/@/utils/http/axios'; -import { DemoParams, DemoListGetResultModel } from './model/tableModel'; +import { defHttp } from '/@/utils/http/axios' +import { DemoParams, DemoListGetResultModel } from './model/tableModel' enum Api { DEMO_LIST = '/table/getDemoList', @@ -17,4 +17,4 @@ export const demoListApi = (params: DemoParams) => // @ts-ignore ignoreCancelToken: true, }, - }); + }) diff --git a/src/api/demo/tree.ts b/src/api/demo/tree.ts index 8b8a94f1..f572f79e 100644 --- a/src/api/demo/tree.ts +++ b/src/api/demo/tree.ts @@ -1,4 +1,4 @@ -import { defHttp } from '/@/utils/http/axios'; +import { defHttp } from '/@/utils/http/axios' enum Api { TREE_OPTIONS_LIST = '/tree/getDemoOptions', @@ -7,5 +7,4 @@ enum Api { /** * @description: Get sample options value */ -export const treeOptionsListApi = (params?: Recordable) => - defHttp.get({ url: Api.TREE_OPTIONS_LIST, params }); +export const treeOptionsListApi = (params?: Recordable) => defHttp.get({ url: Api.TREE_OPTIONS_LIST, params }) diff --git a/src/api/model/baseModel.ts b/src/api/model/baseModel.ts index 1a365118..076b9868 100644 --- a/src/api/model/baseModel.ts +++ b/src/api/model/baseModel.ts @@ -1,9 +1,9 @@ export interface BasicPageParams { - page: number; - pageSize: number; + page: number + pageSize: number } export interface BasicFetchResult { - items: T[]; - total: number; + items: T[] + total: number } diff --git a/src/api/sys/menu.ts b/src/api/sys/menu.ts index de9fa563..e1227139 100644 --- a/src/api/sys/menu.ts +++ b/src/api/sys/menu.ts @@ -1,5 +1,5 @@ -import { defHttp } from '/@/utils/http/axios'; -import { getMenuListResultModel } from './model/menuModel'; +import { defHttp } from '/@/utils/http/axios' +import { getMenuListResultModel } from './model/menuModel' enum Api { GetMenuList = '/getMenuList', @@ -10,5 +10,5 @@ enum Api { */ export const getMenuList = () => { - return defHttp.get({ url: Api.GetMenuList }); -}; + return defHttp.get({ url: Api.GetMenuList }) +} diff --git a/src/api/sys/model/menuModel.ts b/src/api/sys/model/menuModel.ts index 8d19eeab..2d7789fe 100644 --- a/src/api/sys/model/menuModel.ts +++ b/src/api/sys/model/menuModel.ts @@ -1,16 +1,16 @@ -import type { RouteMeta } from 'vue-router'; +import type { RouteMeta } from 'vue-router' export interface RouteItem { - path: string; - component: any; - meta: RouteMeta; - name?: string; - alias?: string | string[]; - redirect?: string; - caseSensitive?: boolean; - children?: RouteItem[]; + path: string + component: any + meta: RouteMeta + name?: string + alias?: string | string[] + redirect?: string + caseSensitive?: boolean + children?: RouteItem[] } /** * @description: Get menu return value */ -export type getMenuListResultModel = RouteItem[]; +export type getMenuListResultModel = RouteItem[] diff --git a/src/api/sys/model/uploadModel.ts b/src/api/sys/model/uploadModel.ts index d770c642..4d1698fa 100644 --- a/src/api/sys/model/uploadModel.ts +++ b/src/api/sys/model/uploadModel.ts @@ -1,5 +1,5 @@ export interface UploadApiResult { - message: string; - code: number; - url: string; + message: string + code: number + url: string } diff --git a/src/api/sys/model/userModel.ts b/src/api/sys/model/userModel.ts index 2415c911..3e3dc97b 100644 --- a/src/api/sys/model/userModel.ts +++ b/src/api/sys/model/userModel.ts @@ -2,37 +2,37 @@ * @description: Login interface parameters */ export interface LoginParams { - username: string; - password: string; + username: string + password: string } export interface RoleInfo { - roleName: string; - value: string; + roleName: string + value: string } /** * @description: Login interface return value */ export interface LoginResultModel { - userId: string | number; - token: string; - role: RoleInfo; + userId: string | number + token: string + role: RoleInfo } /** * @description: Get user information return value */ export interface GetUserInfoModel { - roles: RoleInfo[]; + roles: RoleInfo[] // 用户id - userId: string | number; + userId: string | number // 用户名 - username: string; + username: string // 真实名字 - realName: string; + realName: string // 头像 - avatar: string; + avatar: string // 介绍 - desc?: string; + desc?: string } diff --git a/src/api/sys/upload.ts b/src/api/sys/upload.ts index c47baf43..083ca135 100644 --- a/src/api/sys/upload.ts +++ b/src/api/sys/upload.ts @@ -1,22 +1,19 @@ -import { UploadApiResult } from './model/uploadModel'; -import { defHttp } from '/@/utils/http/axios'; -import { UploadFileParams } from '/#/axios'; -import { useGlobSetting } from '/@/hooks/setting'; +import { UploadApiResult } from './model/uploadModel' +import { defHttp } from '/@/utils/http/axios' +import { UploadFileParams } from '/#/axios' +import { useGlobSetting } from '/@/hooks/setting' -const { uploadUrl = '' } = useGlobSetting(); +const { uploadUrl = '' } = useGlobSetting() /** * @description: Upload interface */ -export function uploadApi( - params: UploadFileParams, - onUploadProgress: (progressEvent: ProgressEvent) => void, -) { +export function uploadApi(params: UploadFileParams, onUploadProgress: (progressEvent: ProgressEvent) => void) { return defHttp.uploadFile( { url: uploadUrl, onUploadProgress, }, params, - ); + ) } diff --git a/src/api/sys/user.ts b/src/api/sys/user.ts index f30d14f0..50007450 100644 --- a/src/api/sys/user.ts +++ b/src/api/sys/user.ts @@ -1,7 +1,7 @@ -import { defHttp } from '/@/utils/http/axios'; -import { LoginParams, LoginResultModel, GetUserInfoModel } from './model/userModel'; +import { defHttp } from '/@/utils/http/axios' +import { LoginParams, LoginResultModel, GetUserInfoModel } from './model/userModel' -import { ErrorMessageMode } from '/#/axios'; +import { ErrorMessageMode, Result } from '/#/axios' enum Api { Login = '/login', @@ -15,7 +15,7 @@ enum Api { * @description: user login api */ export function loginApi(params: LoginParams, mode: ErrorMessageMode = 'modal') { - return defHttp.post( + return defHttp.post>( { url: Api.Login, params, @@ -23,22 +23,22 @@ export function loginApi(params: LoginParams, mode: ErrorMessageMode = 'modal') { errorMessageMode: mode, }, - ); + ) } /** * @description: getUserInfo */ export function getUserInfo() { - return defHttp.get({ url: Api.GetUserInfo }, { errorMessageMode: 'none' }); + return defHttp.get>({ url: Api.GetUserInfo }, { errorMessageMode: 'none' }) } export function getPermCode() { - return defHttp.get({ url: Api.GetPermCode }); + return defHttp.get({ url: Api.GetPermCode }) } export function doLogout() { - return defHttp.get({ url: Api.Logout }); + return defHttp.get({ url: Api.Logout }) } export function testRetry() { @@ -51,5 +51,5 @@ export function testRetry() { waitTime: 1000, }, }, - ); + ) } diff --git a/src/components/Application/index.ts b/src/components/Application/index.ts index d7c51330..f1c7e6f6 100644 --- a/src/components/Application/index.ts +++ b/src/components/Application/index.ts @@ -1,15 +1,15 @@ -import { withInstall } from '/@/utils'; +import { withInstall } from '/@/utils' -import appLogo from './src/AppLogo.vue'; -import appProvider from './src/AppProvider.vue'; -import appSearch from './src/search/AppSearch.vue'; -import appLocalePicker from './src/AppLocalePicker.vue'; -import appDarkModeToggle from './src/AppDarkModeToggle.vue'; +import appLogo from './src/AppLogo.vue' +import appProvider from './src/AppProvider.vue' +import appSearch from './src/search/AppSearch.vue' +import appLocalePicker from './src/AppLocalePicker.vue' +import appDarkModeToggle from './src/AppDarkModeToggle.vue' -export { useAppProviderContext } from './src/useAppContext'; +export { useAppProviderContext } from './src/useAppContext' -export const AppLogo = withInstall(appLogo); -export const AppProvider = withInstall(appProvider); -export const AppSearch = withInstall(appSearch); -export const AppLocalePicker = withInstall(appLocalePicker); -export const AppDarkModeToggle = withInstall(appDarkModeToggle); +export const AppLogo = withInstall(appLogo) +export const AppProvider = withInstall(appProvider) +export const AppSearch = withInstall(appSearch) +export const AppLocalePicker = withInstall(appLocalePicker) +export const AppDarkModeToggle = withInstall(appDarkModeToggle) diff --git a/src/components/Application/src/AppDarkModeToggle.vue b/src/components/Application/src/AppDarkModeToggle.vue index 19ba3b15..5c8c5d8a 100644 --- a/src/components/Application/src/AppDarkModeToggle.vue +++ b/src/components/Application/src/AppDarkModeToggle.vue @@ -6,32 +6,32 @@ diff --git a/src/components/Tinymce/src/ImgUpload.vue b/src/components/Tinymce/src/ImgUpload.vue index f878709d..78eaab38 100644 --- a/src/components/Tinymce/src/ImgUpload.vue +++ b/src/components/Tinymce/src/ImgUpload.vue @@ -1,13 +1,6 @@ diff --git a/src/views/demo/form/UseForm.vue b/src/views/demo/form/UseForm.vue index 95e8fb9c..aa396e69 100644 --- a/src/views/demo/form/UseForm.vue +++ b/src/views/demo/form/UseForm.vue @@ -9,22 +9,14 @@ 解除禁用 紧凑表单 还原正常间距 - - 操作按钮位置 - + 操作按钮位置
- - 隐藏操作按钮 - - - 显示操作按钮 - + 隐藏操作按钮 + 显示操作按钮 隐藏重置按钮 显示重置按钮 - - 隐藏查询按钮 - + 隐藏查询按钮 显示查询按钮 - import { defineComponent } from 'vue'; - import { BasicForm, FormSchema, useForm } from '/@/components/Form/index'; - import { CollapseContainer } from '/@/components/Container/index'; - import { useMessage } from '/@/hooks/web/useMessage'; - import { PageWrapper } from '/@/components/Page'; - import { areaRecord } from '/@/api/demo/cascader'; + import { defineComponent } from 'vue' + import { BasicForm, FormSchema, useForm } from '/@/components/Form/index' + import { CollapseContainer } from '/@/components/Container/index' + import { useMessage } from '/@/hooks/web/useMessage' + import { PageWrapper } from '/@/components/Page' + import { areaRecord } from '/@/api/demo/cascader' const schemas: FormSchema[] = [ { @@ -78,7 +70,7 @@ componentProps: { placeholder: '自定义placeholder', onChange: (e: any) => { - console.log(e); + console.log(e) }, }, }, @@ -185,7 +177,7 @@ parentCode: '', }, isLeaf: (record) => { - return !(record.levelType < 3); + return !(record.levelType < 3) }, }, }, @@ -206,16 +198,16 @@ parentCode: '', }, isLeaf: (record) => { - return !(record.levelType < 3); + return !(record.levelType < 3) }, }, }, - ]; + ] export default defineComponent({ components: { BasicForm, CollapseContainer, PageWrapper }, setup() { - const { createMessage } = useMessage(); + const { createMessage } = useMessage() const [register, { setProps, setFieldsValue, updateSchema }] = useForm({ labelWidth: 120, @@ -224,7 +216,7 @@ span: 24, }, fieldMapToTime: [['fieldTime', ['startTime', 'endTime'], 'YYYY-MM']], - }); + }) async function handleLoad() { const promiseFn = function () { @@ -235,34 +227,34 @@ province: '湖南省', city: '长沙市', district: '岳麓区', - }); - }, 1000); - }); - }; + }) + }, 1000) + }) + } - const item = await promiseFn(); + const item = await promiseFn() - const { field9, province, city, district } = item as any; + const { field9, province, city, district } = item as any await updateSchema({ field: 'field9', componentProps: { displayRenderArray: [province, city, district], }, - }); + }) await setFieldsValue({ field9, - }); + }) } return { register, schemas, handleSubmit: (values: Recordable) => { - createMessage.success('click search,values:' + JSON.stringify(values)); + createMessage.success('click search,values:' + JSON.stringify(values)) }, setProps, handleLoad, - }; + } }, - }); + }) diff --git a/src/views/demo/form/index.vue b/src/views/demo/form/index.vue index c6e96bf6..e9a0d0c0 100644 --- a/src/views/demo/form/index.vue +++ b/src/views/demo/form/index.vue @@ -10,22 +10,10 @@ @reset="handleReset" > diff --git a/src/views/demo/level/Menu111.vue b/src/views/demo/level/Menu111.vue index 23305d37..861e84ae 100644 --- a/src/views/demo/level/Menu111.vue +++ b/src/views/demo/level/Menu111.vue @@ -6,7 +6,7 @@
diff --git a/src/views/demo/level/Menu12.vue b/src/views/demo/level/Menu12.vue index 2f696825..c834004d 100644 --- a/src/views/demo/level/Menu12.vue +++ b/src/views/demo/level/Menu12.vue @@ -6,7 +6,7 @@ diff --git a/src/views/demo/level/Menu2.vue b/src/views/demo/level/Menu2.vue index 527ff2f9..e5877075 100644 --- a/src/views/demo/level/Menu2.vue +++ b/src/views/demo/level/Menu2.vue @@ -6,10 +6,10 @@ diff --git a/src/views/demo/page/account/center/Application.vue b/src/views/demo/page/account/center/Application.vue index 636e57ce..70da7419 100644 --- a/src/views/demo/page/account/center/Application.vue +++ b/src/views/demo/page/account/center/Application.vue @@ -15,11 +15,7 @@
新增用户:{{ item.new }}
- + @@ -28,10 +24,10 @@ diff --git a/src/views/demo/system/account/AccountModal.vue b/src/views/demo/system/account/AccountModal.vue index 167bb720..024bba79 100644 --- a/src/views/demo/system/account/AccountModal.vue +++ b/src/views/demo/system/account/AccountModal.vue @@ -4,19 +4,19 @@ diff --git a/src/views/demo/system/account/DeptTree.vue b/src/views/demo/system/account/DeptTree.vue index b67b4f00..1bd00a6b 100644 --- a/src/views/demo/system/account/DeptTree.vue +++ b/src/views/demo/system/account/DeptTree.vue @@ -12,10 +12,10 @@ diff --git a/src/views/demo/system/account/account.data.ts b/src/views/demo/system/account/account.data.ts index ade68c10..c9156f9a 100644 --- a/src/views/demo/system/account/account.data.ts +++ b/src/views/demo/system/account/account.data.ts @@ -1,6 +1,6 @@ -import { getAllRoleList, isAccountExist } from '/@/api/demo/system'; -import { BasicColumn } from '/@/components/Table'; -import { FormSchema } from '/@/components/Table'; +import { getAllRoleList, isAccountExist } from '/@/api/demo/system' +import { BasicColumn } from '/@/components/Table' +import { FormSchema } from '/@/components/Table' export const columns: BasicColumn[] = [ { @@ -32,7 +32,7 @@ export const columns: BasicColumn[] = [ title: '备注', dataIndex: 'remark', }, -]; +] export const searchFormSchema: FormSchema[] = [ { @@ -47,7 +47,7 @@ export const searchFormSchema: FormSchema[] = [ component: 'Input', colProps: { span: 8 }, }, -]; +] export const accountFormSchema: FormSchema[] = [ { @@ -66,9 +66,9 @@ export const accountFormSchema: FormSchema[] = [ isAccountExist(value) .then(() => resolve()) .catch((err) => { - reject(err.message || '验证失败'); - }); - }); + reject(err.message || '验证失败') + }) + }) }, }, ], @@ -124,4 +124,4 @@ export const accountFormSchema: FormSchema[] = [ field: 'remark', component: 'InputTextArea', }, -]; +] diff --git a/src/views/demo/system/account/index.vue b/src/views/demo/system/account/index.vue index 8e129023..8eb84548 100644 --- a/src/views/demo/system/account/index.vue +++ b/src/views/demo/system/account/index.vue @@ -38,26 +38,26 @@ diff --git a/src/views/demo/system/dept/DeptModal.vue b/src/views/demo/system/dept/DeptModal.vue index 95f8b321..2be5def5 100644 --- a/src/views/demo/system/dept/DeptModal.vue +++ b/src/views/demo/system/dept/DeptModal.vue @@ -4,59 +4,59 @@ diff --git a/src/views/demo/system/dept/dept.data.ts b/src/views/demo/system/dept/dept.data.ts index 2a3a4139..db62d4c5 100644 --- a/src/views/demo/system/dept/dept.data.ts +++ b/src/views/demo/system/dept/dept.data.ts @@ -1,7 +1,7 @@ -import { BasicColumn } from '/@/components/Table'; -import { FormSchema } from '/@/components/Table'; -import { h } from 'vue'; -import { Tag } from 'ant-design-vue'; +import { BasicColumn } from '/@/components/Table' +import { FormSchema } from '/@/components/Table' +import { h } from 'vue' +import { Tag } from 'ant-design-vue' export const columns: BasicColumn[] = [ { @@ -20,11 +20,11 @@ export const columns: BasicColumn[] = [ dataIndex: 'status', width: 80, customRender: ({ record }) => { - const status = record.status; - const enable = ~~status === 0; - const color = enable ? 'green' : 'red'; - const text = enable ? '启用' : '停用'; - return h(Tag, { color: color }, () => text); + const status = record.status + const enable = ~~status === 0 + const color = enable ? 'green' : 'red' + const text = enable ? '启用' : '停用' + return h(Tag, { color: color }, () => text) }, }, { @@ -36,7 +36,7 @@ export const columns: BasicColumn[] = [ title: '备注', dataIndex: 'remark', }, -]; +] export const searchFormSchema: FormSchema[] = [ { @@ -57,7 +57,7 @@ export const searchFormSchema: FormSchema[] = [ }, colProps: { span: 8 }, }, -]; +] export const formSchema: FormSchema[] = [ { @@ -105,4 +105,4 @@ export const formSchema: FormSchema[] = [ field: 'remark', component: 'InputTextArea', }, -]; +] diff --git a/src/views/demo/system/dept/index.vue b/src/views/demo/system/dept/index.vue index a3d2cf05..0d342bcb 100644 --- a/src/views/demo/system/dept/index.vue +++ b/src/views/demo/system/dept/index.vue @@ -30,21 +30,21 @@ diff --git a/src/views/demo/system/menu/MenuDrawer.vue b/src/views/demo/system/menu/MenuDrawer.vue index 04025102..f90f2403 100644 --- a/src/views/demo/system/menu/MenuDrawer.vue +++ b/src/views/demo/system/menu/MenuDrawer.vue @@ -1,70 +1,63 @@ diff --git a/src/views/demo/system/menu/index.vue b/src/views/demo/system/menu/index.vue index 96d3f9a1..0acc750d 100644 --- a/src/views/demo/system/menu/index.vue +++ b/src/views/demo/system/menu/index.vue @@ -30,21 +30,21 @@ diff --git a/src/views/demo/system/menu/menu.data.ts b/src/views/demo/system/menu/menu.data.ts index a7e04612..9c863b51 100644 --- a/src/views/demo/system/menu/menu.data.ts +++ b/src/views/demo/system/menu/menu.data.ts @@ -1,8 +1,8 @@ -import { BasicColumn } from '/@/components/Table'; -import { FormSchema } from '/@/components/Table'; -import { h } from 'vue'; -import { Tag } from 'ant-design-vue'; -import { Icon } from '/@/components/Icon'; +import { BasicColumn } from '/@/components/Table' +import { FormSchema } from '/@/components/Table' +import { h } from 'vue' +import { Tag } from 'ant-design-vue' +import { Icon } from '/@/components/Icon' export const columns: BasicColumn[] = [ { @@ -16,7 +16,7 @@ export const columns: BasicColumn[] = [ dataIndex: 'icon', width: 50, customRender: ({ record }) => { - return h(Icon, { icon: record.icon }); + return h(Icon, { icon: record.icon }) }, }, { @@ -38,11 +38,11 @@ export const columns: BasicColumn[] = [ dataIndex: 'status', width: 80, customRender: ({ record }) => { - const status = record.status; - const enable = ~~status === 0; - const color = enable ? 'green' : 'red'; - const text = enable ? '启用' : '停用'; - return h(Tag, { color: color }, () => text); + const status = record.status + const enable = ~~status === 0 + const color = enable ? 'green' : 'red' + const text = enable ? '启用' : '停用' + return h(Tag, { color: color }, () => text) }, }, { @@ -50,11 +50,11 @@ export const columns: BasicColumn[] = [ dataIndex: 'createTime', width: 180, }, -]; +] -const isDir = (type: string) => type === '0'; -const isMenu = (type: string) => type === '1'; -const isButton = (type: string) => type === '2'; +const isDir = (type: string) => type === '0' +const isMenu = (type: string) => type === '1' +const isButton = (type: string) => type === '2' export const searchFormSchema: FormSchema[] = [ { @@ -75,7 +75,7 @@ export const searchFormSchema: FormSchema[] = [ }, colProps: { span: 8 }, }, -]; +] export const formSchema: FormSchema[] = [ { @@ -199,4 +199,4 @@ export const formSchema: FormSchema[] = [ }, ifShow: ({ values }) => !isButton(values.type), }, -]; +] diff --git a/src/views/demo/system/password/index.vue b/src/views/demo/system/password/index.vue index 8fd720bd..bc3c309d 100644 --- a/src/views/demo/system/password/index.vue +++ b/src/views/demo/system/password/index.vue @@ -10,11 +10,11 @@ diff --git a/src/views/demo/system/password/pwd.data.ts b/src/views/demo/system/password/pwd.data.ts index a6007ce3..fba4f444 100644 --- a/src/views/demo/system/password/pwd.data.ts +++ b/src/views/demo/system/password/pwd.data.ts @@ -1,4 +1,4 @@ -import { FormSchema } from '/@/components/Form'; +import { FormSchema } from '/@/components/Form' export const formSchema: FormSchema[] = [ { @@ -32,15 +32,15 @@ export const formSchema: FormSchema[] = [ required: true, validator: (_, value) => { if (!value) { - return Promise.reject('密码不能为空'); + return Promise.reject('密码不能为空') } if (value !== values.passwordNew) { - return Promise.reject('两次输入的密码不一致!'); + return Promise.reject('两次输入的密码不一致!') } - return Promise.resolve(); + return Promise.resolve() }, }, - ]; + ] }, }, -]; +] diff --git a/src/views/demo/system/role/RoleDrawer.vue b/src/views/demo/system/role/RoleDrawer.vue index 16fa395d..87f76f5b 100644 --- a/src/views/demo/system/role/RoleDrawer.vue +++ b/src/views/demo/system/role/RoleDrawer.vue @@ -1,12 +1,5 @@ diff --git a/src/views/demo/system/role/role.data.ts b/src/views/demo/system/role/role.data.ts index f7854277..262591dd 100644 --- a/src/views/demo/system/role/role.data.ts +++ b/src/views/demo/system/role/role.data.ts @@ -1,9 +1,9 @@ -import { BasicColumn } from '/@/components/Table'; -import { FormSchema } from '/@/components/Table'; -import { h } from 'vue'; -import { Switch } from 'ant-design-vue'; -import { setRoleStatus } from '/@/api/demo/system'; -import { useMessage } from '/@/hooks/web/useMessage'; +import { BasicColumn } from '/@/components/Table' +import { FormSchema } from '/@/components/Table' +import { h } from 'vue' +import { Switch } from 'ant-design-vue' +import { setRoleStatus } from '/@/api/demo/system' +import { useMessage } from '/@/hooks/web/useMessage' export const columns: BasicColumn[] = [ { @@ -27,7 +27,7 @@ export const columns: BasicColumn[] = [ width: 120, customRender: ({ record }) => { if (!Reflect.has(record, 'pendingStatus')) { - record.pendingStatus = false; + record.pendingStatus = false } return h(Switch, { checked: record.status === '1', @@ -35,22 +35,22 @@ export const columns: BasicColumn[] = [ unCheckedChildren: '已禁用', loading: record.pendingStatus, onChange(checked: boolean) { - record.pendingStatus = true; - const newStatus = checked ? '1' : '0'; - const { createMessage } = useMessage(); + record.pendingStatus = true + const newStatus = checked ? '1' : '0' + const { createMessage } = useMessage() setRoleStatus(record.id, newStatus) .then(() => { - record.status = newStatus; - createMessage.success(`已成功修改角色状态`); + record.status = newStatus + createMessage.success(`已成功修改角色状态`) }) .catch(() => { - createMessage.error('修改角色状态失败'); + createMessage.error('修改角色状态失败') }) .finally(() => { - record.pendingStatus = false; - }); + record.pendingStatus = false + }) }, - }); + }) }, }, { @@ -62,7 +62,7 @@ export const columns: BasicColumn[] = [ title: '备注', dataIndex: 'remark', }, -]; +] export const searchFormSchema: FormSchema[] = [ { @@ -83,7 +83,7 @@ export const searchFormSchema: FormSchema[] = [ }, colProps: { span: 8 }, }, -]; +] export const formSchema: FormSchema[] = [ { @@ -121,4 +121,4 @@ export const formSchema: FormSchema[] = [ slot: 'menu', component: 'Input', }, -]; +] diff --git a/src/views/demo/table/Basic.vue b/src/views/demo/table/Basic.vue index cb438a39..71eb613b 100644 --- a/src/views/demo/table/Basic.vue +++ b/src/views/demo/table/Basic.vue @@ -29,37 +29,37 @@ diff --git a/src/views/demo/table/CustomerCell.vue b/src/views/demo/table/CustomerCell.vue index d7b33b49..1e67311f 100644 --- a/src/views/demo/table/CustomerCell.vue +++ b/src/views/demo/table/CustomerCell.vue @@ -28,10 +28,10 @@ diff --git a/src/views/demo/table/EditCellTable.vue b/src/views/demo/table/EditCellTable.vue index 058da933..91268029 100644 --- a/src/views/demo/table/EditCellTable.vue +++ b/src/views/demo/table/EditCellTable.vue @@ -1,22 +1,17 @@ diff --git a/src/views/demo/table/EditRowTable.vue b/src/views/demo/table/EditRowTable.vue index 128d9032..0683e219 100644 --- a/src/views/demo/table/EditRowTable.vue +++ b/src/views/demo/table/EditRowTable.vue @@ -10,21 +10,14 @@ diff --git a/src/views/demo/table/ExpandTable.vue b/src/views/demo/table/ExpandTable.vue index 3b76f9fe..ee04d9a6 100644 --- a/src/views/demo/table/ExpandTable.vue +++ b/src/views/demo/table/ExpandTable.vue @@ -34,12 +34,12 @@ diff --git a/src/views/demo/table/FetchTable.vue b/src/views/demo/table/FetchTable.vue index 8d9efa35..a3b24375 100644 --- a/src/views/demo/table/FetchTable.vue +++ b/src/views/demo/table/FetchTable.vue @@ -9,12 +9,12 @@ diff --git a/src/views/demo/table/FixedColumn.vue b/src/views/demo/table/FixedColumn.vue index 74e58d9f..477b7ed8 100644 --- a/src/views/demo/table/FixedColumn.vue +++ b/src/views/demo/table/FixedColumn.vue @@ -27,10 +27,10 @@ diff --git a/src/views/demo/table/FixedHeight.vue b/src/views/demo/table/FixedHeight.vue index 4f8b28e0..2c8d5230 100644 --- a/src/views/demo/table/FixedHeight.vue +++ b/src/views/demo/table/FixedHeight.vue @@ -20,13 +20,13 @@ diff --git a/src/views/demo/table/FooterTable.vue b/src/views/demo/table/FooterTable.vue index 1967bbd7..6a5f404a 100644 --- a/src/views/demo/table/FooterTable.vue +++ b/src/views/demo/table/FooterTable.vue @@ -4,20 +4,20 @@ diff --git a/src/views/demo/table/FormTable.vue b/src/views/demo/table/FormTable.vue index 23300aa7..2513ec53 100644 --- a/src/views/demo/table/FormTable.vue +++ b/src/views/demo/table/FormTable.vue @@ -1,8 +1,5 @@ diff --git a/src/views/demo/table/MultipleHeader.vue b/src/views/demo/table/MultipleHeader.vue index fa0bf430..27798eeb 100644 --- a/src/views/demo/table/MultipleHeader.vue +++ b/src/views/demo/table/MultipleHeader.vue @@ -4,11 +4,11 @@ diff --git a/src/views/demo/table/RefTable.vue b/src/views/demo/table/RefTable.vue index f2a0c6dd..3d4a3d03 100644 --- a/src/views/demo/table/RefTable.vue +++ b/src/views/demo/table/RefTable.vue @@ -29,78 +29,78 @@ diff --git a/src/views/demo/table/ResizeParentHeightTable.vue b/src/views/demo/table/ResizeParentHeightTable.vue index b10444c9..b0df4dd1 100644 --- a/src/views/demo/table/ResizeParentHeightTable.vue +++ b/src/views/demo/table/ResizeParentHeightTable.vue @@ -23,11 +23,11 @@ diff --git a/src/views/demo/table/TreeTable.vue b/src/views/demo/table/TreeTable.vue index 88afe637..f2347a48 100644 --- a/src/views/demo/table/TreeTable.vue +++ b/src/views/demo/table/TreeTable.vue @@ -9,9 +9,9 @@ diff --git a/src/views/demo/table/UseTable.vue b/src/views/demo/table/UseTable.vue index 3c549979..7eb68f33 100644 --- a/src/views/demo/table/UseTable.vue +++ b/src/views/demo/table/UseTable.vue @@ -20,17 +20,17 @@ diff --git a/src/views/demo/table/tableData.tsx b/src/views/demo/table/tableData.tsx index 7c45a1be..ff103d46 100644 --- a/src/views/demo/table/tableData.tsx +++ b/src/views/demo/table/tableData.tsx @@ -1,5 +1,5 @@ -import { FormProps, FormSchema } from '/@/components/Table'; -import { BasicColumn } from '/@/components/Table/src/types/table'; +import { FormProps, FormSchema } from '/@/components/Table' +import { BasicColumn } from '/@/components/Table/src/types/table' export function getBasicColumns(): BasicColumn[] { return [ @@ -41,7 +41,7 @@ export function getBasicColumns(): BasicColumn[] { sorter: true, dataIndex: 'endTime', }, - ]; + ] } export function getBasicShortColumns(): BasicColumn[] { @@ -67,7 +67,7 @@ export function getBasicShortColumns(): BasicColumn[] { dataIndex: 'no', width: 80, }, - ]; + ] } export function getMultipleHeaderColumns(): BasicColumn[] { @@ -109,7 +109,7 @@ export function getMultipleHeaderColumns(): BasicColumn[] { }, ], }, - ]; + ] } export function getCustomHeaderColumns(): BasicColumn[] { @@ -153,18 +153,18 @@ export function getCustomHeaderColumns(): BasicColumn[] { dataIndex: 'endTime', width: 120, }, - ]; + ] } const renderContent = ({ text, index }: { text: any; index: number }) => { const obj: any = { children: text, attrs: {}, - }; - if (index === 9) { - obj.attrs.colSpan = 0; } - return obj; -}; + if (index === 9) { + obj.attrs.colSpan = 0 + } + return obj +} export function getMergeHeaderColumns(): BasicColumn[] { return [ { @@ -189,14 +189,14 @@ export function getMergeHeaderColumns(): BasicColumn[] { const obj: any = { children: text, attrs: {}, - }; + } if (index === 2) { - obj.attrs.rowSpan = 2; + obj.attrs.rowSpan = 2 } if (index === 3) { - obj.attrs.colSpan = 0; + obj.attrs.colSpan = 0 } - return obj; + return obj }, }, { @@ -221,10 +221,10 @@ export function getMergeHeaderColumns(): BasicColumn[] { width: 200, customRender: renderContent, }, - ]; + ] } export const getAdvanceSchema = (itemNumber = 6): FormSchema[] => { - const arr: any = []; + const arr: any = [] for (let index = 0; index < itemNumber; index++) { arr.push({ field: `field${index}`, @@ -234,10 +234,10 @@ export const getAdvanceSchema = (itemNumber = 6): FormSchema[] => { xl: 12, xxl: 8, }, - }); + }) } - return arr; -}; + return arr +} export function getFormConfig(): Partial { return { labelWidth: 100, @@ -254,11 +254,11 @@ export function getFormConfig(): Partial { }, }, ], - }; + } } export function getBasicData() { return (() => { - const arr: any = []; + const arr: any = [] for (let index = 0; index < 40; index++) { arr.push({ id: `${index}`, @@ -268,15 +268,15 @@ export function getBasicData() { address: 'New York No. 1 Lake ParkNew York No. 1 Lake Park', beginTime: new Date().toLocaleString(), endTime: new Date().toLocaleString(), - }); + }) } - return arr; - })(); + return arr + })() } export function getTreeTableData() { return (() => { - const arr: any = []; + const arr: any = [] for (let index = 0; index < 40; index++) { arr.push({ id: `${index}`, @@ -297,8 +297,8 @@ export function getTreeTableData() { endTime: new Date().toLocaleString(), }, ], - }); + }) } - return arr; - })(); + return arr + })() } diff --git a/src/views/demo/tree/ActionTree.vue b/src/views/demo/tree/ActionTree.vue index 613000ed..483b7591 100644 --- a/src/views/demo/tree/ActionTree.vue +++ b/src/views/demo/tree/ActionTree.vue @@ -28,69 +28,69 @@ diff --git a/src/views/demo/tree/EditTree.vue b/src/views/demo/tree/EditTree.vue index c2f2ad49..4ae1f422 100644 --- a/src/views/demo/tree/EditTree.vue +++ b/src/views/demo/tree/EditTree.vue @@ -14,14 +14,7 @@ - + @@ -51,18 +44,18 @@ diff --git a/src/views/demo/tree/data.ts b/src/views/demo/tree/data.ts index 485efb8f..97c5f7f1 100644 --- a/src/views/demo/tree/data.ts +++ b/src/views/demo/tree/data.ts @@ -1,4 +1,4 @@ -import { TreeItem } from '/@/components/Tree/index'; +import { TreeItem } from '/@/components/Tree/index' export const treeData: TreeItem[] = [ { @@ -32,7 +32,7 @@ export const treeData: TreeItem[] = [ { title: 'leaf', key: '2-2-1' }, ], }, -]; +] export const treeData2: any[] = [ { @@ -75,7 +75,7 @@ export const treeData2: any[] = [ { name: 'leaf', id: '2-2-1' }, ], }, -]; +] export const treeData3: any[] = [ { @@ -115,4 +115,4 @@ export const treeData3: any[] = [ { name: 'leaf', key: '2-2-1' }, ], }, -]; +] diff --git a/src/views/demo/tree/index.vue b/src/views/demo/tree/index.vue index 1526fb35..4df21340 100644 --- a/src/views/demo/tree/index.vue +++ b/src/views/demo/tree/index.vue @@ -7,30 +7,13 @@ - + - + - + @@ -54,49 +37,49 @@ diff --git a/src/views/modules/system/client/Client.api.ts b/src/views/modules/system/client/Client.api.ts index 1e919543..51c00e00 100644 --- a/src/views/modules/system/client/Client.api.ts +++ b/src/views/modules/system/client/Client.api.ts @@ -1,11 +1,12 @@ -import { defHttp } from '/@/utils/http/axios'; +import { defHttp } from '/@/utils/http/axios' +import { PageResult, Result } from '/#/axios' /** * 分页 */ export const page = (params) => { - return defHttp.get({ - url: "/client/page", - params + return defHttp.get>({ + url: '/client/page', + params, }) } diff --git a/src/views/modules/system/client/ClientList.vue b/src/views/modules/system/client/ClientList.vue index ccdaed59..b79c01b1 100644 --- a/src/views/modules/system/client/ClientList.vue +++ b/src/views/modules/system/client/ClientList.vue @@ -1,11 +1,34 @@ diff --git a/src/views/sys/about/index.vue b/src/views/sys/about/index.vue index 1b2cf372..a72d6bc4 100644 --- a/src/views/sys/about/index.vue +++ b/src/views/sys/about/index.vue @@ -15,21 +15,21 @@ diff --git a/src/views/sys/error-log/DetailModal.vue b/src/views/sys/error-log/DetailModal.vue index 20477070..953458ac 100644 --- a/src/views/sys/error-log/DetailModal.vue +++ b/src/views/sys/error-log/DetailModal.vue @@ -4,24 +4,24 @@ diff --git a/src/views/sys/error-log/data.tsx b/src/views/sys/error-log/data.tsx index 3ffc2f45..346e9bcb 100644 --- a/src/views/sys/error-log/data.tsx +++ b/src/views/sys/error-log/data.tsx @@ -1,9 +1,9 @@ -import { Tag } from 'ant-design-vue'; -import { BasicColumn } from '/@/components/Table/index'; -import { ErrorTypeEnum } from '/@/enums/exceptionEnum'; -import { useI18n } from '/@/hooks/web/useI18n'; +import { Tag } from 'ant-design-vue' +import { BasicColumn } from '/@/components/Table/index' +import { ErrorTypeEnum } from '/@/enums/exceptionEnum' +import { useI18n } from '/@/hooks/web/useI18n' -const { t } = useI18n(); +const { t } = useI18n() export function getColumns(): BasicColumn[] { return [ @@ -21,8 +21,8 @@ export function getColumns(): BasicColumn[] { ? 'blue' : ErrorTypeEnum.AJAX ? 'red' - : 'purple'; - return {() => text}; + : 'purple' + return {() => text} }, }, { @@ -54,7 +54,7 @@ export function getColumns(): BasicColumn[] { dataIndex: 'stack', title: t('sys.errorLog.tableColumnStackMsg'), }, - ]; + ] } export function getDescSchema(): any { @@ -62,6 +62,6 @@ export function getDescSchema(): any { return { field: column.dataIndex!, label: column.title, - }; - }); + } + }) } diff --git a/src/views/sys/error-log/index.vue b/src/views/sys/error-log/index.vue index 7c546b26..e97ee7cb 100644 --- a/src/views/sys/error-log/index.vue +++ b/src/views/sys/error-log/index.vue @@ -33,23 +33,23 @@ diff --git a/src/views/sys/exception/Exception.vue b/src/views/sys/exception/Exception.vue index 6e56f086..23ed6522 100644 --- a/src/views/sys/exception/Exception.vue +++ b/src/views/sys/exception/Exception.vue @@ -1,23 +1,23 @@