提交 1d0d5fc8 作者: 方治民

style: 整理代码格式

上级 0cd8b3e1
......@@ -5,6 +5,7 @@
import { useLocale } from '/@/locales/useLocale'
import 'dayjs/locale/zh-cn'
// support Multi-language
const { getAntdLocale } = useLocale()
......
import type { RouteMeta } from 'vue-router'
export interface RouteItem {
path: string
component: any
......
......@@ -2,6 +2,7 @@
import AppSearchKeyItem from './AppSearchKeyItem.vue'
import { useDesign } from '/@/hooks/web/useDesign'
import { useI18n } from '/@/hooks/web/useI18n'
const { prefixCls } = useDesign('app-search-footer')
const { t } = useI18n()
</script>
......
<script lang="ts" setup>
import { Icon } from '/@/components/Icon'
defineProps({
icon: String,
})
......
......@@ -3,6 +3,7 @@
import { SearchOutlined } from '@ant-design/icons-vue'
import AppSearchFooter from './AppSearchFooter.vue'
import Icon from '/@/components/Icon'
// @ts-expect-error
import vClickOutside from '/@/directives/clickOutside'
import { useDesign } from '/@/hooks/web/useDesign'
......
......@@ -8,6 +8,7 @@
import { Button } from '/@/components/Button'
import { isFunction } from '/@/utils/is'
import { grid, useSlider } from './data'
// 组件接收参数
const props = defineProps({
// 请求API的参数
......
import { ref } from 'vue'
// 每行个数
export const grid = ref(12)
// slider属性
......
<script lang="ts" setup>
import { onMounted, ref } from 'vue'
import { onClickOutside } from '@vueuse/core'
const emit = defineEmits(['mounted', 'clickOutside'])
const wrap = ref<ElRef>(null)
......
......@@ -5,10 +5,12 @@
import { useWindowSizeFn } from '/@/hooks/event/useWindowSizeFn'
import CodeMirror from 'codemirror'
import { MODE } from './../typing'
// css
import './codemirror.css'
import 'codemirror/theme/idea.css'
import 'codemirror/theme/material-palenight.css'
// modes
import 'codemirror/mode/javascript/javascript'
import 'codemirror/mode/css/css'
......
......@@ -2,12 +2,14 @@ import CodeMirror from 'codemirror'
import './codemirror.css'
import 'codemirror/theme/idea.css'
import 'codemirror/theme/material-palenight.css'
// import 'codemirror/addon/lint/lint.css';
// modes
import 'codemirror/mode/javascript/javascript'
import 'codemirror/mode/css/css'
import 'codemirror/mode/htmlmixed/htmlmixed'
// addons
// import 'codemirror/addon/edit/closebrackets';
// import 'codemirror/addon/edit/closetag';
......
......@@ -2,14 +2,17 @@
import type { PropType } from 'vue'
import { ref } from 'vue'
import { isNil } from 'lodash-es'
// component
import { Skeleton } from 'ant-design-vue'
import { CollapseTransition } from '/@/components/Transition'
import CollapseHeader from './CollapseHeader.vue'
import { triggerWindowResize } from '/@/utils/event'
// hook
import { useTimeoutFn } from '/@/hooks/core/useTimeout'
import { useDesign } from '/@/hooks/web/useDesign'
const props = defineProps({
title: { type: String, default: '' },
loading: { type: Boolean },
......
......@@ -4,6 +4,7 @@
import Icon from '/@/components/Icon'
import { Divider, Menu } from 'ant-design-vue'
import type { Axis, ContextMenuItem, ItemContentProps } from './typing'
const prefixCls = 'context-menu'
const props = {
width: { type: Number, default: 156 },
......
......@@ -8,6 +8,7 @@
import { useI18n } from '/@/hooks/web/useI18n'
import type { ButtonProps } from '/@/components/Button'
import Icon from '/@/components/Icon'
const props = {
width: { type: [String, Number], default: '200px' },
value: { type: String },
......
......@@ -11,6 +11,7 @@
import { isFunction } from '/@/utils/is'
import { getSlot } from '/@/utils/helper/tsxHelper'
import { useAttrs } from '/@/hooks/core/useAttrs'
const props = {
useCollapse: { type: Boolean, default: true },
title: { type: String, default: '' },
......
......@@ -4,6 +4,7 @@
import { useDesign } from '/@/hooks/web/useDesign'
import { footerProps } from '../props'
export default defineComponent({
name: 'BasicDrawerFooter',
props: {
......
......@@ -6,6 +6,7 @@
import { useDesign } from '/@/hooks/web/useDesign'
import { propTypes } from '/@/utils/propTypes'
export default defineComponent({
name: 'BasicDrawerHeader',
components: { BasicTitle, ArrowLeftOutlined },
......
import type { PropType } from 'vue'
import { useI18n } from '/@/hooks/web/useI18n'
const { t } = useI18n()
export const footerProps = {
......
......@@ -3,6 +3,7 @@
import * as XLSX from 'xlsx'
import { dateUtil } from '/@/utils/dateUtil'
import type { ExcelData } from './typing'
export default defineComponent({
name: 'ImportExcel',
props: {
......
......@@ -10,6 +10,7 @@
import FormAction from './components/FormAction.vue'
import { dateItemType } from './helper'
import { dateUtil } from '/@/utils/dateUtil'
// import { cloneDeep } from 'lodash-es';
import { deepMerge } from '/@/utils'
import { useFormValues } from './hooks/useFormValues'
......@@ -20,6 +21,7 @@
import { useModalContext } from '/@/components/Modal'
import { basicProps } from './props'
import { useDesign } from '/@/hooks/web/useDesign'
export default defineComponent({
name: 'BasicForm',
components: { FormItem, Form, Row, FormAction },
......
......@@ -8,6 +8,7 @@
import { useRuleFormItem } from '/@/hooks/component/useFormItem'
import { LoadingOutlined } from '@ant-design/icons-vue'
import { useI18n } from '/@/hooks/web/useI18n'
interface Option {
value: string
label: string
......
......@@ -11,6 +11,7 @@
import { propTypes } from '/@/utils/propTypes'
import { get, omit } from 'lodash-es'
import { useI18n } from '/@/hooks/web/useI18n'
interface OptionsItem {
label: string
value: string | number | boolean
......
......@@ -9,6 +9,7 @@
import { LoadingOutlined } from '@ant-design/icons-vue'
import { useI18n } from '/@/hooks/web/useI18n'
import { propTypes } from '/@/utils/propTypes'
interface OptionsItem {
label: string
value: string
......
......@@ -6,6 +6,7 @@
import { propTypes } from '/@/utils/propTypes'
import { useI18n } from '/@/hooks/web/useI18n'
import type { TransferDirection, TransferItem } from 'ant-design-vue/lib/transfer'
export default defineComponent({
name: 'ApiTransfer',
components: { Transfer },
......
......@@ -5,6 +5,7 @@
import { get } from 'lodash-es'
import { propTypes } from '/@/utils/propTypes'
import { LoadingOutlined } from '@ant-design/icons-vue'
export default defineComponent({
name: 'ApiTree',
components: { ATree: Tree, LoadingOutlined },
......
......@@ -5,6 +5,7 @@
import { get } from 'lodash-es'
import { propTypes } from '/@/utils/propTypes'
import { LoadingOutlined } from '@ant-design/icons-vue'
export default defineComponent({
name: 'ApiTreeSelect',
components: { ATreeSelect: TreeSelect, LoadingOutlined },
......
<script lang="ts">
import type { ColEx } from '../types/index'
// import type { ButtonProps } from 'ant-design-vue/es/button/buttonTypes';
import type { PropType } from 'vue'
import { computed, defineComponent } from 'vue'
......
......@@ -13,6 +13,7 @@
import { cloneDeep, upperFirst } from 'lodash-es'
import { useItemLabelWidth } from '../hooks/useLabelWidth'
import { useI18n } from '/@/hooks/web/useI18n'
export default defineComponent({
name: 'BasicFormItem',
inheritAttrs: false,
......
......@@ -8,6 +8,7 @@
import { useRootSetting } from '/@/hooks/setting/useRootSetting'
import { onMountedOrActivated } from '/@/hooks/core/onMountedOrActivated'
import { getTheme } from './getTheme'
type Lang = 'zh_CN' | 'en_US' | 'ja_JP' | 'ko_KR' | undefined
export default defineComponent({
inheritAttrs: false,
......
......@@ -5,6 +5,7 @@
import { onMountedOrActivated } from '/@/hooks/core/onMountedOrActivated'
import { useRootSetting } from '/@/hooks/setting/useRootSetting'
import { getTheme } from './getTheme'
const props = defineProps({
value: { type: String },
class: { type: String },
......
import type Vditor from 'vditor'
export interface MarkDownActionType {
getVditor: () => Vditor
}
......@@ -4,6 +4,7 @@
import { itemProps } from '../props'
import MenuItemContent from './MenuItemContent.vue'
export default defineComponent({
name: 'BasicMenuItem',
components: { MenuItem: Menu.Item, MenuItemContent },
......
......@@ -5,6 +5,7 @@
import { useI18n } from '/@/hooks/web/useI18n'
import { useDesign } from '/@/hooks/web/useDesign'
import { contentProps } from '../props'
const { t } = useI18n()
export default defineComponent({
......
......@@ -6,6 +6,7 @@ import { ThemeEnum } from '/@/enums/appEnum'
import { propTypes } from '/@/utils/propTypes'
import type { MenuTheme } from 'ant-design-vue'
import type { MenuMode } from 'ant-design-vue/lib/menu/src/interface'
export const basicProps = {
items: {
type: Array as PropType<Menu[]>,
......
......@@ -2,6 +2,7 @@
import { defineComponent } from 'vue'
import { basicProps } from '../props'
export default defineComponent({
name: 'BasicModalFooter',
props: basicProps,
......
import type { ButtonProps } from 'ant-design-vue/lib/button/buttonTypes'
import type { CSSProperties, ComputedRef, VNodeChild } from 'vue'
/**
* @description: 弹窗对外暴露的方法
*/
......
import { isString } from '/@/utils/is'
import type { LogoType, RenderQrCodeParams } from './typing'
export function drawLogo({ canvas, logo }: RenderQrCodeParams) {
if (!logo) {
return new Promise((resolve) => {
......
// 参考 qr-code-with-logo 进行ts版本修改
import { toCanvas } from './toCanvas'
export * from './typing'
export { toCanvas }
import { renderQrCode } from './drawCanvas'
import { drawLogo } from './drawLogo'
import type { RenderQrCodeParams } from './typing'
export function toCanvas(options: RenderQrCodeParams) {
return renderQrCode(options)
.then(() => {
......
......@@ -4,6 +4,7 @@
import { toObject } from './util'
import { computed, defineComponent, nextTick, onBeforeUnmount, onMounted, provide, ref, unref } from 'vue'
import Bar from './bar'
const { scrollbar } = componentSetting
export default defineComponent({
......
import type { BarMap } from './types'
export const BAR_MAP: BarMap = {
vertical: {
offset: 'offsetHeight',
......
......@@ -14,6 +14,7 @@
import { openWindow } from '/@/utils'
import { useOpenKeys } from './useOpenKeys'
export default defineComponent({
name: 'SimpleMenu',
components: {
......
......@@ -9,6 +9,7 @@
import { propTypes } from '/@/utils/propTypes'
import { useI18n } from '/@/hooks/web/useI18n'
import { createAsyncComponent } from '/@/utils/factory/createAsyncComponent'
export default defineComponent({
name: 'SimpleSubMenu',
components: {
......
......@@ -17,6 +17,7 @@
import { propTypes } from '/@/utils/propTypes'
import { createSimpleRootMenuContext } from './useSimpleMenuContext'
import mitt from '/@/utils/mitt'
export default defineComponent({
name: 'Menu',
props: {
......
......@@ -6,6 +6,7 @@
import { Tooltip } from 'ant-design-vue'
import { useMenuItem } from './useMenu'
import { useSimpleRootMenuContext } from './useSimpleMenuContext'
export default defineComponent({
name: 'MenuItem',
components: { Tooltip },
......
......@@ -24,6 +24,7 @@
import { basicProps } from './props'
import { isFunction } from '/@/utils/is'
import { warn } from '/@/utils/log'
export default defineComponent({
components: {
Table,
......
<script lang="ts">
import { defineComponent } from 'vue'
import { FormOutlined } from '@ant-design/icons-vue'
export default defineComponent({
name: 'EditTableHeaderIcon',
components: { FormOutlined },
......
......@@ -14,6 +14,7 @@
import { createPlaceholderMessage } from './helper'
import { CellComponent } from './CellComponent'
import type { EditRecordRow } from './index'
export default defineComponent({
name: 'EditableCell',
components: { FormOutlined, CloseOutlined, CheckOutlined, CellComponent, Spin },
......
......@@ -7,6 +7,7 @@
import { ScrollContainer } from '/@/components/Container'
import { useI18n } from '/@/hooks/web/useI18n'
import { useDesign } from '/@/hooks/web/useDesign'
// import { useSortable } from '/@/hooks/web/useSortable';
import { isFunction, isNullAndUnDef } from '/@/utils/is'
import { getPopupContainer as getParentContainer } from '/@/utils'
......@@ -15,6 +16,7 @@
import type Sortable from 'sortablejs'
import { useTableContext } from '../../hooks/useTableContext'
import type { BasicColumn, ColumnChangeParam } from '../../types/table'
interface State {
checkAll: boolean
isInit?: boolean
......
import type { ButtonProps } from 'ant-design-vue/es/button/buttonTypes'
import type { TooltipProps } from 'ant-design-vue/es/tooltip/Tooltip'
import type { RoleEnum } from '/@/enums/roleEnum'
export interface ActionItem extends ButtonProps {
onClick?: Fn
label?: string
......
......@@ -26,6 +26,7 @@
import 'tinymce/plugins/searchreplace'
import 'tinymce/plugins/spellchecker'
import 'tinymce/plugins/tabfocus'
// import 'tinymce/plugins/table';
import 'tinymce/plugins/template'
import 'tinymce/plugins/textpattern'
......
......@@ -15,6 +15,7 @@
import type { CreateContextOptions } from '/@/components/ContextMenu'
import { treeEmits, treeProps } from './types/tree'
import { createBEM } from '/@/utils/bem'
export default defineComponent({
name: 'BasicTree',
inheritAttrs: false,
......
......@@ -7,6 +7,7 @@
import { useDebounceFn } from '@vueuse/core'
import { createBEM } from '/@/utils/bem'
import { ToolbarEnum } from '../types/tree'
const props = defineProps({
helpMessage: {
type: [String, Array] as PropType<string | string[]>,
......
......@@ -3,15 +3,18 @@
import { computed, defineComponent, reactive, ref, toRefs, unref } from 'vue'
import { Alert, Upload } from 'ant-design-vue'
import { BasicModal, useModalInner } from '/@/components/Modal'
// import { BasicTable, useTable } from '/@/components/Table';
// hooks
import { useUploadType } from './useUpload'
import { useMessage } from '/@/hooks/web/useMessage'
// types
import type { FileItem } from './typing'
import { UploadResultStatus } from './typing'
import { basicProps } from './props'
import { createActionColumn, createTableColumns } from './data'
// utils
import { checkImgType, getBase64WithFile } from './helper'
import { buildUUID } from '/@/utils/uuid'
......
<script lang="ts">
import { defineComponent, ref, watch } from 'vue'
// import { BasicTable, useTable } from '/@/components/Table';
import FileList from './FileList.vue'
import { BasicModal, useModalInner } from '/@/components/Modal'
......
import type { Ref } from 'vue'
import { computed, unref } from 'vue'
import { useI18n } from '/@/hooks/web/useI18n'
const { t } = useI18n()
export function useUploadType({
acceptRef,
......
import type { Directive } from 'vue'
import './index.less'
export interface RippleOptions {
event: string
transition: number
......
import { getCurrentInstance, reactive, shallowRef, watchEffect } from 'vue'
import type { Ref } from 'vue'
interface Params {
excludeListeners?: boolean
excludeKeys?: string[]
......
import { getCurrentInstance, onUnmounted } from 'vue'
import { createContextMenu, destroyContextMenu } from '/@/components/ContextMenu'
import type { ContextMenuItem } from '/@/components/ContextMenu'
export type { ContextMenuItem }
export function useContextMenu(authRemove = true) {
if (getCurrentInstance() && authRemove) {
......
import { ref, watch } from 'vue'
import { isDef } from '/@/utils/is'
interface Options {
target?: HTMLElement
}
......
import { useAppProviderContext } from '/@/components/Application'
// import { computed } from 'vue';
// import { lowerFirst } from 'lodash-es';
export function useDesign(scope: string) {
......
......@@ -7,6 +7,7 @@ import { useUserStore } from '/@/store/modules/user'
import { useTabs } from './useTabs'
import { resetRouter, router } from '/@/router'
// import { RootRoute } from '/@/router/routes';
import projectSetting from '/@/settings/projectSetting'
......
......@@ -11,6 +11,7 @@
import { createAsyncComponent } from '/@/utils/factory/createAsyncComponent'
import SessionTimeoutLogin from '/@/views/sys/login/SessionTimeoutLogin.vue'
export default defineComponent({
name: 'LayoutFeatures',
components: {
......
......@@ -4,6 +4,7 @@
import { useI18n } from '/@/hooks/web/useI18n'
import { useFullscreen } from '@vueuse/core'
import { FullscreenExitOutlined, FullscreenOutlined } from '@ant-design/icons-vue'
export default defineComponent({
name: 'FullScreen',
components: { FullscreenExitOutlined, FullscreenOutlined, Tooltip },
......
......@@ -8,6 +8,7 @@
import { useUserStore } from '/@/store/modules/user'
import { useLockStore } from '/@/store/modules/lock'
import headerImg from '/@/assets/images/header.jpg'
export default defineComponent({
name: 'LockModal',
components: { BasicModal, BasicForm },
......
......@@ -5,6 +5,7 @@
import { useDesign } from '/@/hooks/web/useDesign'
import { Avatar, List, Tag, Typography } from 'ant-design-vue'
import { isNumber } from '/@/utils/is'
export default defineComponent({
components: {
[Avatar.name]: Avatar,
......
......@@ -13,6 +13,7 @@
import { propTypes } from '/@/utils/propTypes'
import { openWindow } from '/@/utils'
import { createAsyncComponent } from '/@/utils/factory/createAsyncComponent'
type MenuEvent = 'logout' | 'doc' | 'lock'
export default defineComponent({
name: 'UserDropdown',
......
......@@ -6,6 +6,7 @@
import { useDesign } from '/@/hooks/web/useDesign'
import type { menuTypeList } from '../enum'
export default defineComponent({
name: 'MenuTypePicker',
components: { Tooltip },
......
......@@ -14,6 +14,7 @@
import { useDesign } from '/@/hooks/web/useDesign'
import DragBar from './DragBar.vue'
export default defineComponent({
name: 'LayoutSideBar',
components: { Sider: Layout.Sider, LayoutMenu, DragBar, LayoutTrigger },
......
......@@ -8,6 +8,7 @@
import { useAppInject } from '/@/hooks/web/useAppInject'
import { useMenuSetting } from '/@/hooks/setting/useMenuSetting'
import { useDesign } from '/@/hooks/web/useDesign'
export default defineComponent({
name: 'SiderWrapper',
components: { Sider, Drawer, MixSider },
......
......@@ -6,6 +6,7 @@
import { useMultipleTabSetting } from '/@/hooks/setting/useMultipleTabSetting'
import { getTransitionName } from './transition'
import { useMultipleTabStore } from '/@/store/modules/multipleTab'
export default defineComponent({
name: 'PageLayout',
components: { FrameLayout },
......
......@@ -2,6 +2,7 @@ import 'virtual:windi-base.css'
import 'virtual:windi-components.css'
import '/@/design/index.less'
import 'virtual:windi-utilities.css'
// Register icon sprite
import 'virtual:svg-icons-register'
import { createApp } from 'vue'
......
......@@ -169,6 +169,7 @@ export function useRafThrottle<T extends FunctionArgs>(fn: T): T {
locked = true
window.requestAnimationFrame(() => {
// @ts-expect-error
// eslint-disable-next-line @typescript-eslint/no-invalid-this
fn.apply(this, args)
locked = false
})
......
import type { AxiosError, AxiosInstance } from 'axios'
/**
* 请求重试机制
*/
......
import type { ErrorMessageMode } from '/#/axios'
import { useMessage } from '/@/hooks/web/useMessage'
import { useI18n } from '/@/hooks/web/useI18n'
// import router from '/@/router';
// import { PageEnum } from '/@/enums/pageEnum';
import { useUserStoreWithOut } from '/@/store/modules/user'
......
......@@ -10,6 +10,7 @@
import { fireErrorApi } from '/@/api/demo/error'
import { getColumns } from './data'
import { cloneDeep } from 'lodash-es'
const rowInfo = ref<ErrorLogInfo>()
const imgList = ref<string[]>([])
const { t } = useI18n()
......
<script lang="ts">
import { defineComponent } from 'vue'
export default defineComponent({
name: 'FrameBlank',
})
......
......@@ -10,6 +10,7 @@
import { useI18n } from '/@/hooks/web/useI18n'
import { useDesign } from '/@/hooks/web/useDesign'
import { useLocaleStore } from '/@/store/modules/locale'
defineProps({
sessionTimeout: {
type: Boolean,
......
......@@ -17,6 +17,7 @@
import { useUserStore } from '/@/store/modules/user'
import { LoginStateEnum, useFormRules, useFormValid, useLoginState } from './useLogin'
import { useDesign } from '/@/hooks/web/useDesign'
// import { onKeyStroke } from '@vueuse/core';
const ACol = Col
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论