mirror of
https://gitee.com/dapppp/ruoyi-plus-vben5.git
synced 2026-03-25 08:14:32 +08:00
init: antdv-next
This commit is contained in:
@@ -13,7 +13,7 @@ import { computed, defineAsyncComponent, defineComponent, h, ref } from 'vue';
|
||||
import { ApiComponent, globalShareState, IconPicker } from '@vben/common-ui';
|
||||
import { $t } from '@vben/locales';
|
||||
|
||||
import { notification } from 'ant-design-vue';
|
||||
import { notification } from 'antdv-next';
|
||||
|
||||
import { FileUploadOld, ImageUploadOld } from '#/components/upload-old';
|
||||
|
||||
@@ -29,57 +29,68 @@ const ImageUpload = defineAsyncComponent(() =>
|
||||
import('#/components/upload').then((res) => res.ImageUpload),
|
||||
);
|
||||
|
||||
const AutoComplete = defineAsyncComponent(
|
||||
() => import('ant-design-vue/es/auto-complete'),
|
||||
const Button = defineAsyncComponent(
|
||||
() => import('antdv-next/dist/button/index'),
|
||||
);
|
||||
const Button = defineAsyncComponent(() => import('ant-design-vue/es/button'));
|
||||
const Cascader = defineAsyncComponent(
|
||||
() => import('ant-design-vue/es/cascader'),
|
||||
() => import('antdv-next/dist/cascader/index'),
|
||||
);
|
||||
const Checkbox = defineAsyncComponent(
|
||||
() => import('ant-design-vue/es/checkbox'),
|
||||
() => import('antdv-next/dist/checkbox/index'),
|
||||
);
|
||||
const CheckboxGroup = defineAsyncComponent(() =>
|
||||
import('ant-design-vue/es/checkbox').then((res) => res.CheckboxGroup),
|
||||
const CheckboxGroup = defineAsyncComponent(
|
||||
() => import('antdv-next/dist/checkbox/Group'),
|
||||
);
|
||||
const DatePicker = defineAsyncComponent(
|
||||
() => import('ant-design-vue/es/date-picker'),
|
||||
() => import('antdv-next/dist/date-picker/index'),
|
||||
);
|
||||
const Divider = defineAsyncComponent(() => import('ant-design-vue/es/divider'));
|
||||
const Input = defineAsyncComponent(() => import('ant-design-vue/es/input'));
|
||||
const Divider = defineAsyncComponent(
|
||||
() => import('antdv-next/dist/divider/index'),
|
||||
);
|
||||
const Input = defineAsyncComponent(() => import('antdv-next/dist/input/index'));
|
||||
const InputNumber = defineAsyncComponent(
|
||||
() => import('ant-design-vue/es/input-number'),
|
||||
() => import('antdv-next/dist/input-number/index'),
|
||||
);
|
||||
const InputPassword = defineAsyncComponent(() =>
|
||||
import('ant-design-vue/es/input').then((res) => res.InputPassword),
|
||||
const InputPassword = defineAsyncComponent(
|
||||
() => import('antdv-next/dist/input/Password'),
|
||||
);
|
||||
const Mentions = defineAsyncComponent(
|
||||
() => import('ant-design-vue/es/mentions'),
|
||||
() => import('antdv-next/dist/mentions/index'),
|
||||
);
|
||||
const Radio = defineAsyncComponent(() => import('ant-design-vue/es/radio'));
|
||||
const Radio = defineAsyncComponent(() => import('antdv-next/dist/radio/index'));
|
||||
const RadioGroup = defineAsyncComponent(() =>
|
||||
import('ant-design-vue/es/radio').then((res) => res.RadioGroup),
|
||||
import('antdv-next/dist/radio/index').then((res) => res.RadioGroup),
|
||||
);
|
||||
const RangePicker = defineAsyncComponent(() =>
|
||||
import('ant-design-vue/es/date-picker').then((res) => res.RangePicker),
|
||||
import('antdv-next/dist/date-picker/index').then(
|
||||
(res) => res.DateRangePicker,
|
||||
),
|
||||
);
|
||||
const Rate = defineAsyncComponent(() => import('ant-design-vue/es/rate'));
|
||||
const Select = defineAsyncComponent(() => import('ant-design-vue/es/select'));
|
||||
const Space = defineAsyncComponent(() => import('ant-design-vue/es/space'));
|
||||
const Switch = defineAsyncComponent(() => import('ant-design-vue/es/switch'));
|
||||
const Textarea = defineAsyncComponent(() =>
|
||||
import('ant-design-vue/es/input').then((res) => res.Textarea),
|
||||
const Rate = defineAsyncComponent(() => import('antdv-next/dist/rate/index'));
|
||||
const Select = defineAsyncComponent(
|
||||
() => import('antdv-next/dist/select/index'),
|
||||
);
|
||||
const Space = defineAsyncComponent(() => import('antdv-next/dist/space/index'));
|
||||
const Switch = defineAsyncComponent(
|
||||
() => import('antdv-next/dist/switch/index'),
|
||||
);
|
||||
const Textarea = defineAsyncComponent(
|
||||
() => import('antdv-next/dist/input/TextArea'),
|
||||
);
|
||||
const TimePicker = defineAsyncComponent(
|
||||
() => import('ant-design-vue/es/time-picker'),
|
||||
() => import('antdv-next/dist/time-picker/index'),
|
||||
);
|
||||
const TimeRangePicker = defineAsyncComponent(() =>
|
||||
import('ant-design-vue/es/time-picker').then((res) => res.TimeRangePicker),
|
||||
import('antdv-next/dist/time-picker/index').then(
|
||||
(res) => res.TimeRangePicker,
|
||||
),
|
||||
);
|
||||
const TreeSelect = defineAsyncComponent(
|
||||
() => import('ant-design-vue/es/tree-select'),
|
||||
() => import('antdv-next/dist/tree-select/index'),
|
||||
);
|
||||
const Upload = defineAsyncComponent(
|
||||
() => import('antdv-next/dist/upload/Upload'),
|
||||
);
|
||||
const Upload = defineAsyncComponent(() => import('ant-design-vue/es/upload'));
|
||||
|
||||
const withDefaultPlaceholder = <T extends Component>(
|
||||
component: T,
|
||||
@@ -118,6 +129,7 @@ const withDefaultPlaceholder = <T extends Component>(
|
||||
...props,
|
||||
...attrs,
|
||||
ref: innerRef,
|
||||
variant: 'outlined',
|
||||
},
|
||||
slots,
|
||||
);
|
||||
@@ -202,7 +214,6 @@ async function initComponentAdapter() {
|
||||
visibleEvent: 'onVisibleChange',
|
||||
},
|
||||
),
|
||||
AutoComplete,
|
||||
Cascader: withDefaultPlaceholder(Cascader, 'select'),
|
||||
Checkbox,
|
||||
CheckboxGroup,
|
||||
@@ -253,7 +264,7 @@ async function initComponentAdapter() {
|
||||
copyPreferencesSuccess: (title, content) => {
|
||||
notification.success({
|
||||
description: content,
|
||||
message: title,
|
||||
title,
|
||||
placement: 'bottomRight',
|
||||
});
|
||||
},
|
||||
|
||||
@@ -4,7 +4,7 @@ import { h } from 'vue';
|
||||
|
||||
import { setupVbenVxeTable, useVbenVxeGrid } from '@vben/plugins/vxe-table';
|
||||
|
||||
import { Button, Image } from 'ant-design-vue';
|
||||
import { Button, Image } from 'antdv-next';
|
||||
|
||||
import { useVbenForm } from './form';
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { $t } from '@vben/locales';
|
||||
|
||||
import { message, Modal } from 'ant-design-vue';
|
||||
import { message, Modal } from 'antdv-next';
|
||||
|
||||
import { useAuthStore } from '#/store';
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ import {
|
||||
RsaEncryption,
|
||||
} from '@vben/utils';
|
||||
|
||||
import { message, Modal } from 'ant-design-vue';
|
||||
import { message, Modal } from 'antdv-next';
|
||||
import { isEmpty, isNull } from 'lodash-es';
|
||||
|
||||
import { useAuthStore } from '#/store';
|
||||
|
||||
@@ -4,7 +4,7 @@ import { computed } from 'vue';
|
||||
import { useAntdDesignTokens } from '@vben/hooks';
|
||||
import { preferences, usePreferences } from '@vben/preferences';
|
||||
|
||||
import { App, ConfigProvider, theme } from 'ant-design-vue';
|
||||
import { App, ConfigProvider, theme } from 'antdv-next';
|
||||
|
||||
import { antdLocale } from '#/locales';
|
||||
|
||||
@@ -35,7 +35,7 @@ useUploadTip();
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<ConfigProvider :locale="antdLocale" :theme="tokenTheme">
|
||||
<ConfigProvider :locale="antdLocale" :theme="tokenTheme" variant="outlined">
|
||||
<App>
|
||||
<RouterView />
|
||||
</App>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<script lang="ts" setup>
|
||||
import type { ButtonProps } from 'ant-design-vue';
|
||||
import type { ButtonProps } from 'antdv-next';
|
||||
|
||||
import type { CSSProperties, PropType } from 'vue';
|
||||
|
||||
@@ -8,7 +8,7 @@ import { computed, ref, unref, watch, watchEffect } from 'vue';
|
||||
import { useVbenModal } from '@vben/common-ui';
|
||||
import { $t as t } from '@vben/locales';
|
||||
|
||||
import { message } from 'ant-design-vue';
|
||||
import { message } from 'antdv-next';
|
||||
|
||||
import cropperModal from './cropper-modal.vue';
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ import { ref } from 'vue';
|
||||
import { useVbenModal } from '@vben/common-ui';
|
||||
import { $t as t } from '@vben/locales';
|
||||
|
||||
import { Avatar, message, Space, Tooltip, Upload } from 'ant-design-vue';
|
||||
import { Avatar, message, Space, Tooltip, Upload } from 'antdv-next';
|
||||
import { isFunction } from 'lodash-es';
|
||||
|
||||
import { dataURLtoBlob } from '#/utils/file/base64Conver';
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<script lang="tsx">
|
||||
import type { CardSize } from 'ant-design-vue/es/card/Card';
|
||||
import type { DescriptionsProps } from 'ant-design-vue/es/descriptions';
|
||||
import type { CardSize } from 'antdv-next/es/card/Card';
|
||||
import type { DescriptionsProps } from 'antdv-next/es/descriptions';
|
||||
|
||||
import type { CSSProperties, PropType, Slots } from 'vue';
|
||||
|
||||
@@ -8,7 +8,7 @@ import type { DescInstance, DescItem, DescriptionProps } from './typing';
|
||||
|
||||
import { computed, defineComponent, ref, toRefs, unref, useAttrs } from 'vue';
|
||||
|
||||
import { Card, Descriptions } from 'ant-design-vue';
|
||||
import { Card, Descriptions } from 'antdv-next';
|
||||
import { get, isFunction } from 'lodash-es';
|
||||
|
||||
const props = {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import type { DescriptionsProps } from 'ant-design-vue/es/descriptions';
|
||||
import type { DescriptionsProps } from 'antdv-next/es/descriptions';
|
||||
import type { JSX } from 'vue/jsx-runtime';
|
||||
|
||||
import type { CSSProperties, VNode } from 'vue';
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import type { VNode } from 'vue';
|
||||
|
||||
import { Tag } from 'ant-design-vue';
|
||||
import { Tag } from 'antdv-next';
|
||||
|
||||
interface TagType {
|
||||
[key: string]: { color: string; label: string };
|
||||
|
||||
@@ -8,7 +8,7 @@ import type { DictData } from '#/api/system/dict/dict-data-model';
|
||||
|
||||
import { computed, defineComponent, h, isVNode } from 'vue';
|
||||
|
||||
import { Spin, Tag } from 'ant-design-vue';
|
||||
import { Spin, Tag } from 'antdv-next';
|
||||
import { isFunction, isString } from 'lodash-es';
|
||||
|
||||
import { tagTypes } from './data';
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
import { defineComponent, h } from 'vue';
|
||||
|
||||
import { Button } from 'ant-design-vue';
|
||||
import buttonProps from 'ant-design-vue/es/button/buttonTypes';
|
||||
import { Button } from 'antdv-next';
|
||||
import { omit } from 'lodash-es';
|
||||
|
||||
/**
|
||||
@@ -9,12 +8,18 @@ import { omit } from 'lodash-es';
|
||||
*/
|
||||
export const GhostButton = defineComponent({
|
||||
name: 'GhostButton',
|
||||
props: omit(buttonProps(), ['type', 'ghost', 'size']),
|
||||
props: omit({}, ['type', 'ghost', 'size']),
|
||||
setup(props, { attrs, slots }) {
|
||||
return () =>
|
||||
h(
|
||||
Button,
|
||||
{ ...props, ...attrs, type: 'primary', ghost: true, size: 'small' },
|
||||
{
|
||||
...props,
|
||||
...attrs,
|
||||
type: 'primary',
|
||||
ghost: true,
|
||||
size: 'small',
|
||||
},
|
||||
slots,
|
||||
);
|
||||
},
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import type { App } from 'vue';
|
||||
|
||||
import { Button as AButton } from 'ant-design-vue';
|
||||
import { Button as AButton } from 'antdv-next';
|
||||
|
||||
import { GhostButton } from './button';
|
||||
|
||||
@@ -8,7 +8,7 @@ import { GhostButton } from './button';
|
||||
* 全局组件注册
|
||||
*/
|
||||
export function setupGlobalComponent(app: App) {
|
||||
app.use(AButton);
|
||||
app.component('AButton', AButton);
|
||||
// 表格操作列专用按钮
|
||||
app.component('GhostButton', GhostButton);
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<script setup lang="tsx">
|
||||
import { computed } from 'vue';
|
||||
|
||||
import { Tag } from 'ant-design-vue';
|
||||
import { Tag } from 'antdv-next';
|
||||
|
||||
defineOptions({ name: 'OptionsTag' });
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ import { computed, ref } from 'vue';
|
||||
|
||||
import { $t } from '@vben/locales';
|
||||
|
||||
import { Modal, Switch } from 'ant-design-vue';
|
||||
import { Modal, Switch } from 'antdv-next';
|
||||
import { isFunction } from 'lodash-es';
|
||||
|
||||
type CheckedType = boolean | number | string;
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
<script setup lang="ts">
|
||||
import type { MessageType } from 'ant-design-vue/es/message';
|
||||
import type { SelectHandler } from 'ant-design-vue/es/vc-select/Select';
|
||||
import type { MessageType } from 'antdv-next/dist/message/interface';
|
||||
|
||||
import type { TenantOption } from '#/api';
|
||||
|
||||
@@ -11,7 +10,7 @@ import { useAccess } from '@vben/access';
|
||||
import { useTabs } from '@vben/hooks';
|
||||
import { $t } from '@vben/locales';
|
||||
|
||||
import { message, Select, Spin } from 'ant-design-vue';
|
||||
import { message, Select, Spin } from 'antdv-next';
|
||||
import { storeToRefs } from 'pinia';
|
||||
|
||||
import { tenantDynamicClear, tenantDynamicToggle } from '#/api/system/tenant';
|
||||
@@ -133,6 +132,7 @@ function filterOption(input: string, option: TenantOption) {
|
||||
<template>
|
||||
<div v-if="showToggle" class="mr-[8px] hidden md:block">
|
||||
<Select
|
||||
variant="outlined"
|
||||
v-model:value="selected"
|
||||
:disabled="loading"
|
||||
:field-names="{ label: 'companyName', value: 'tenantId' }"
|
||||
|
||||
@@ -9,7 +9,7 @@ import { computed, nextTick, ref, shallowRef, useAttrs, watch } from 'vue';
|
||||
import { preferences, usePreferences } from '@vben/preferences';
|
||||
|
||||
import Editor from '@tinymce/tinymce-vue';
|
||||
import { Spin } from 'ant-design-vue';
|
||||
import { Spin } from 'antdv-next';
|
||||
import { camelCase } from 'lodash-es';
|
||||
|
||||
import { uploadApi } from '#/api';
|
||||
|
||||
@@ -5,7 +5,7 @@ import type { MenuOption } from '#/api/system/menu/model';
|
||||
|
||||
import { eachTree, treeToList } from '@vben/utils';
|
||||
|
||||
import { notification } from 'ant-design-vue';
|
||||
import { notification } from 'antdv-next';
|
||||
import { difference, isEmpty, isUndefined } from 'lodash-es';
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
/* eslint-disable @typescript-eslint/no-non-null-assertion */
|
||||
import type { TourProps } from 'ant-design-vue';
|
||||
import type { TourProps } from 'antdv-next';
|
||||
|
||||
import { defineComponent, ref } from 'vue';
|
||||
|
||||
import { useLocalStorage } from '@vueuse/core';
|
||||
import { Tour } from 'ant-design-vue';
|
||||
import { Tour } from 'antdv-next';
|
||||
|
||||
/**
|
||||
* 全屏引导
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
比如: 按钮下放目录 按钮下放菜单 按钮下放按钮
|
||||
-->
|
||||
<script setup lang="tsx">
|
||||
import type { RadioChangeEvent } from 'ant-design-vue';
|
||||
import type { RadioChangeEvent } from 'antdv-next';
|
||||
|
||||
import type { MenuPermissionOption } from './data';
|
||||
|
||||
@@ -15,7 +15,7 @@ import { nextTick, onMounted, ref, shallowRef, watch } from 'vue';
|
||||
|
||||
import { cloneDeep, findGroupParentIds } from '@vben/utils';
|
||||
|
||||
import { Alert, Checkbox, RadioGroup, Space } from 'ant-design-vue';
|
||||
import { Alert, Checkbox, RadioGroup, Space } from 'antdv-next';
|
||||
import { uniq } from 'lodash-es';
|
||||
|
||||
import { useVbenVxeGrid } from '#/adapter/vxe-table';
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
<script setup lang="ts">
|
||||
import type { CheckboxChangeEvent } from 'ant-design-vue/es/checkbox/interface';
|
||||
import type { DataNode } from 'ant-design-vue/es/tree';
|
||||
import type { CheckboxChangeEvent } from 'antdv-next/es/checkbox/interface';
|
||||
import type { DataNode } from 'antdv-next/es/tree';
|
||||
|
||||
import { computed, nextTick, onMounted, ref } from 'vue';
|
||||
|
||||
import { treeToList } from '@vben/utils';
|
||||
|
||||
import { Checkbox, Tree } from 'ant-design-vue';
|
||||
import { Checkbox, Tree } from 'antdv-next';
|
||||
|
||||
/** 需要禁止透传 */
|
||||
defineOptions({ inheritAttrs: false });
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<script lang="ts" setup>
|
||||
import type { UploadFile, UploadProps } from 'ant-design-vue';
|
||||
import type { UploadRequestOption } from 'ant-design-vue/lib/vc-upload/interface';
|
||||
import type { UploadFile, UploadProps } from 'antdv-next';
|
||||
import type { UploadRequestOption } from 'antdv-next/lib/vc-upload/interface';
|
||||
|
||||
import type { AxiosProgressEvent, UploadApi } from '#/api';
|
||||
|
||||
@@ -9,7 +9,7 @@ import { ref, toRefs, watch } from 'vue';
|
||||
import { $t } from '@vben/locales';
|
||||
|
||||
import { UploadOutlined } from '@ant-design/icons-vue';
|
||||
import { message, Upload } from 'ant-design-vue';
|
||||
import { message, Upload } from 'antdv-next';
|
||||
import { isArray, isFunction, isObject, isString } from 'lodash-es';
|
||||
|
||||
import { uploadApi } from '#/api';
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<script lang="ts" setup>
|
||||
import type { UploadFile, UploadProps } from 'ant-design-vue';
|
||||
import type { UploadRequestOption } from 'ant-design-vue/lib/vc-upload/interface';
|
||||
import type { UploadFile, UploadProps } from 'antdv-next';
|
||||
import type { UploadRequestOption } from 'antdv-next/lib/vc-upload/interface';
|
||||
|
||||
import type { AxiosProgressEvent, UploadApi } from '#/api';
|
||||
|
||||
@@ -9,7 +9,7 @@ import { ref, toRefs, watch } from 'vue';
|
||||
import { $t } from '@vben/locales';
|
||||
|
||||
import { PlusOutlined } from '@ant-design/icons-vue';
|
||||
import { message, Modal, Upload } from 'ant-design-vue';
|
||||
import { message, Modal, Upload } from 'antdv-next';
|
||||
import { isArray, isFunction, isObject, isString, uniqueId } from 'lodash-es';
|
||||
|
||||
import { uploadApi } from '#/api';
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
去除使用`file-type`库进行文件类型检测 在Safari无法使用
|
||||
-->
|
||||
<script setup lang="ts">
|
||||
import type { UploadListType } from 'ant-design-vue/es/upload/interface';
|
||||
import type { UploadListType } from 'antdv-next/es/upload/interface';
|
||||
|
||||
import type { BaseUploadProps, UploadEmits } from './props';
|
||||
|
||||
@@ -12,7 +12,7 @@ import { computed } from 'vue';
|
||||
import { $t, I18nT } from '@vben/locales';
|
||||
|
||||
import { InboxOutlined, UploadOutlined } from '@ant-design/icons-vue';
|
||||
import { Upload } from 'ant-design-vue';
|
||||
import { Upload } from 'antdv-next';
|
||||
|
||||
import { uploadApi } from '#/api';
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import type { UploadFile } from 'ant-design-vue';
|
||||
import type { UploadFile } from 'antdv-next';
|
||||
|
||||
/**
|
||||
* 默认支持上传的图片文件类型
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
/* eslint-disable @typescript-eslint/no-non-null-assertion */
|
||||
import type { UploadChangeParam, UploadFile } from 'ant-design-vue';
|
||||
import type { FileType } from 'ant-design-vue/es/upload/interface';
|
||||
import type { UploadChangeParam, UploadFile } from 'antdv-next';
|
||||
import type { FileType } from 'antdv-next/es/upload/interface';
|
||||
import type {
|
||||
RcFile,
|
||||
UploadRequestOption,
|
||||
} from 'ant-design-vue/es/vc-upload/interface';
|
||||
} from 'antdv-next/es/vc-upload/interface';
|
||||
|
||||
import type { ModelRef } from 'vue';
|
||||
|
||||
@@ -22,7 +22,7 @@ import { computed, onUnmounted, ref, watch } from 'vue';
|
||||
|
||||
import { $t } from '@vben/locales';
|
||||
|
||||
import { message, Modal } from 'ant-design-vue';
|
||||
import { message, Modal } from 'antdv-next';
|
||||
import { isFunction, isString } from 'lodash-es';
|
||||
|
||||
import { ossInfo } from '#/api/system/oss';
|
||||
|
||||
@@ -6,14 +6,14 @@
|
||||
import type {
|
||||
UploadFile,
|
||||
UploadListType,
|
||||
} from 'ant-design-vue/es/upload/interface';
|
||||
} from 'antdv-next/es/upload/interface';
|
||||
|
||||
import type { BaseUploadProps, UploadEmits } from './props';
|
||||
|
||||
import { $t, I18nT } from '@vben/locales';
|
||||
|
||||
import { PlusOutlined, UploadOutlined } from '@ant-design/icons-vue';
|
||||
import { Image, ImagePreviewGroup, Upload } from 'ant-design-vue';
|
||||
import { Image, ImagePreviewGroup, Upload } from 'antdv-next';
|
||||
import { isFunction } from 'lodash-es';
|
||||
|
||||
import { uploadApi } from '#/api';
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
import type { UploadFile } from 'ant-design-vue';
|
||||
import type { RcFile } from 'ant-design-vue/es/vc-upload/interface';
|
||||
import type { UploadFile } from 'antdv-next';
|
||||
import type { RcFile } from 'antdv-next/es/vc-upload/interface';
|
||||
|
||||
import type { UploadApi, UploadResult } from '#/api';
|
||||
import type { OssFile } from '#/api/system/oss/model';
|
||||
|
||||
import { UploadChangeParam } from 'ant-design-vue';
|
||||
import { UploadChangeParam } from 'antdv-next';
|
||||
|
||||
export type UploadType = 'file' | 'image';
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ import { preferences } from '@vben/preferences';
|
||||
import { useAccessStore, useUserStore } from '@vben/stores';
|
||||
import { openWindow } from '@vben/utils';
|
||||
|
||||
import { message } from 'ant-design-vue';
|
||||
import { message } from 'antdv-next';
|
||||
|
||||
import { TenantToggle } from '#/components/tenant-toggle';
|
||||
import { $t } from '#/locales';
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import type { Locale } from 'ant-design-vue/es/locale';
|
||||
import type { Locale } from 'antdv-next/dist/locale/index';
|
||||
|
||||
import type { App } from 'vue';
|
||||
|
||||
@@ -13,8 +13,8 @@ import {
|
||||
} from '@vben/locales';
|
||||
import { preferences } from '@vben/preferences';
|
||||
|
||||
import antdEnLocale from 'ant-design-vue/es/locale/en_US';
|
||||
import antdDefaultLocale from 'ant-design-vue/es/locale/zh_CN';
|
||||
import antdEnLocale from 'antdv-next/locale/en_US';
|
||||
import antdDefaultLocale from 'antdv-next/locale/zh_CN';
|
||||
import dayjs from 'dayjs';
|
||||
|
||||
const antdLocale = ref<Locale>(antdDefaultLocale);
|
||||
|
||||
@@ -10,7 +10,7 @@ import type { Menu } from '#/api';
|
||||
import { generateAccessible } from '@vben/access';
|
||||
import { preferences } from '@vben/preferences';
|
||||
|
||||
import { message } from 'ant-design-vue';
|
||||
import { message } from 'antdv-next';
|
||||
import { cloneDeep } from 'lodash-es';
|
||||
|
||||
import { getAllMenusApi } from '#/api';
|
||||
|
||||
@@ -8,7 +8,7 @@ import { LOGIN_PATH } from '@vben/constants';
|
||||
import { preferences } from '@vben/preferences';
|
||||
import { resetAllStores, useAccessStore, useUserStore } from '@vben/stores';
|
||||
|
||||
import { notification } from 'ant-design-vue';
|
||||
import { notification } from 'antdv-next';
|
||||
import { defineStore } from 'pinia';
|
||||
|
||||
import { doLogout, getUserInfoApi, loginApi, seeConnectionClose } from '#/api';
|
||||
|
||||
@@ -6,7 +6,7 @@ import { SvgMessageUrl } from '@vben/icons';
|
||||
import { $t } from '@vben/locales';
|
||||
import { useUserStore } from '@vben/stores';
|
||||
|
||||
import { Modal, notification } from 'ant-design-vue';
|
||||
import { Modal, notification } from 'antdv-next';
|
||||
import dayjs from 'dayjs';
|
||||
import { defineStore } from 'pinia';
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { onMounted } from 'vue';
|
||||
|
||||
import { useLocalStorage } from '@vueuse/core';
|
||||
import { Modal } from 'ant-design-vue';
|
||||
import { Modal } from 'antdv-next';
|
||||
|
||||
export function useUploadTip() {
|
||||
const readTip = useLocalStorage<boolean>('__upload_tip_read_5.4.0', false);
|
||||
|
||||
@@ -3,7 +3,7 @@ import type { VbenFormProps } from '#/adapter/form';
|
||||
import { $t } from '@vben/locales';
|
||||
import { cloneDeep, formatDate } from '@vben/utils';
|
||||
|
||||
import { message } from 'ant-design-vue';
|
||||
import { message } from 'antdv-next';
|
||||
import { isFunction } from 'lodash-es';
|
||||
|
||||
import { dataURLtoBlob, urlToBase64 } from './base64Conver';
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import type { ModalFuncProps } from 'ant-design-vue';
|
||||
import type { Rule } from 'ant-design-vue/es/form';
|
||||
import type { ModalFuncProps } from 'antdv-next';
|
||||
import type { Rule } from 'antdv-next/es/form';
|
||||
|
||||
import { reactive } from 'vue';
|
||||
|
||||
import { Alert, Form, Input, Modal } from 'ant-design-vue';
|
||||
import { Alert, Form, Input, Modal } from 'antdv-next';
|
||||
import { isFunction } from 'lodash-es';
|
||||
|
||||
export interface ConfirmModalProps extends Omit<ModalFuncProps, 'visible'> {
|
||||
|
||||
@@ -5,7 +5,7 @@ import { ref } from 'vue';
|
||||
|
||||
import { $t } from '@vben/locales';
|
||||
|
||||
import { Modal } from 'ant-design-vue';
|
||||
import { Modal } from 'antdv-next';
|
||||
import { isFunction } from 'lodash-es';
|
||||
|
||||
interface BeforeCloseDiffProps {
|
||||
|
||||
@@ -28,7 +28,7 @@ import {
|
||||
WindowsIcon,
|
||||
} from '@vben/icons';
|
||||
|
||||
import { Tag } from 'ant-design-vue';
|
||||
import { Tag } from 'antdv-next';
|
||||
|
||||
import { DictTag } from '#/components/dict';
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ import { AuthenticationCodeLogin, z } from '@vben/common-ui';
|
||||
import { DEFAULT_TENANT_ID } from '@vben/constants';
|
||||
import { $t } from '@vben/locales';
|
||||
|
||||
import { Alert, message } from 'ant-design-vue';
|
||||
import { Alert, message } from 'antdv-next';
|
||||
|
||||
import { tenantList } from '#/api';
|
||||
import { sendSmsCode } from '#/api/core/captcha';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<script setup lang="ts">
|
||||
import { Input } from 'ant-design-vue';
|
||||
import { Input } from 'antdv-next';
|
||||
|
||||
interface Props {
|
||||
captcha?: string;
|
||||
|
||||
@@ -10,7 +10,7 @@ import { AuthenticationLogin, z } from '@vben/common-ui';
|
||||
import { DEFAULT_TENANT_ID } from '@vben/constants';
|
||||
import { $t } from '@vben/locales';
|
||||
|
||||
import { Input, Select } from 'ant-design-vue';
|
||||
import { Input, Select } from 'antdv-next';
|
||||
import { omit } from 'lodash-es';
|
||||
|
||||
import { tenantList } from '#/api';
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<script setup lang="ts">
|
||||
import { $t } from '@vben/locales';
|
||||
|
||||
import { Col, Row, Tooltip } from 'ant-design-vue';
|
||||
import { Col, Row, Tooltip } from 'antdv-next';
|
||||
|
||||
import { accountBindList, handleAuthBinding } from '../oauth-common';
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ import type { SocialInfo } from '#/api/system/social/model';
|
||||
|
||||
import { onMounted, ref } from 'vue';
|
||||
|
||||
import { Alert, Avatar, Card, Empty, Modal, Tooltip } from 'ant-design-vue';
|
||||
import { Alert, Avatar, Card, Empty, Modal, Tooltip } from 'antdv-next';
|
||||
|
||||
import { authUnbinding } from '#/api';
|
||||
import { socialList } from '#/api/system/social';
|
||||
|
||||
@@ -3,7 +3,7 @@ import type { Recordable } from '@vben/types';
|
||||
|
||||
import type { VxeGridProps } from '#/adapter/vxe-table';
|
||||
|
||||
import { Popconfirm } from 'ant-design-vue';
|
||||
import { Popconfirm } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid } from '#/adapter/vxe-table';
|
||||
import { forceLogout2, onlineDeviceList } from '#/api/monitor/online';
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<script setup lang="ts">
|
||||
import type { UpdatePasswordParam } from '#/api/system/profile/model';
|
||||
|
||||
import { Modal } from 'ant-design-vue';
|
||||
import { Modal } from 'antdv-next';
|
||||
import { omit } from 'lodash-es';
|
||||
|
||||
import { useVbenForm, z } from '#/adapter/form';
|
||||
|
||||
@@ -5,7 +5,7 @@ import { computed, ref } from 'vue';
|
||||
|
||||
import { ProfilePasswordSetting, z } from '@vben/common-ui';
|
||||
|
||||
import { message } from 'ant-design-vue';
|
||||
import { message } from 'antdv-next';
|
||||
|
||||
const profilePasswordSettingRef = ref();
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ import {
|
||||
DescriptionsItem,
|
||||
Tag,
|
||||
Tooltip,
|
||||
} from 'ant-design-vue';
|
||||
} from 'antdv-next';
|
||||
|
||||
import { userUpdateAvatar } from '#/api/system/profile';
|
||||
import { CropperAvatar } from '#/components/cropper';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<script setup lang="ts">
|
||||
import { TabPane, Tabs } from 'ant-design-vue';
|
||||
import { TabPane, Tabs } from 'antdv-next';
|
||||
|
||||
import AccountBind from './components/account-bind.vue';
|
||||
import BaseSetting from './components/base-setting.vue';
|
||||
|
||||
@@ -9,7 +9,7 @@ import { preferences } from '@vben/preferences';
|
||||
import { useAccessStore } from '@vben/stores';
|
||||
import { cn } from '@vben/utils';
|
||||
|
||||
import { message, Spin } from 'ant-design-vue';
|
||||
import { message, Spin } from 'antdv-next';
|
||||
|
||||
import { authCallback } from '#/api';
|
||||
import { useAuthStore } from '#/store';
|
||||
|
||||
@@ -9,7 +9,7 @@ import { ref } from 'vue';
|
||||
import { Page, useVbenModal } from '@vben/common-ui';
|
||||
import { getPopupContainer } from '@vben/utils';
|
||||
|
||||
import { Modal, Popconfirm, Space } from 'ant-design-vue';
|
||||
import { Modal, Popconfirm, Space } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid, vxeCheckboxChecked } from '#/adapter/vxe-table';
|
||||
import { commonDownloadExcel } from '#/utils/file/download';
|
||||
|
||||
@@ -9,7 +9,7 @@ import { nextTick } from 'vue';
|
||||
import { Page, useVbenModal } from '@vben/common-ui';
|
||||
import { getPopupContainer, listToTree } from '@vben/utils';
|
||||
|
||||
import { Popconfirm, Space } from 'ant-design-vue';
|
||||
import { Popconfirm, Space } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid } from '#/adapter/vxe-table';
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<script setup lang="ts">
|
||||
import type { RedisInfo } from '#/api/monitor/cache';
|
||||
|
||||
import { Descriptions, DescriptionsItem } from 'ant-design-vue';
|
||||
import { Descriptions, DescriptionsItem } from 'antdv-next';
|
||||
|
||||
interface IRedisInfo extends RedisInfo {
|
||||
dbSize: string;
|
||||
|
||||
@@ -6,7 +6,7 @@ import { onMounted, reactive, ref } from 'vue';
|
||||
import { Page } from '@vben/common-ui';
|
||||
import { CommandLineIcon, MemoryIcon, RedisIcon } from '@vben/icons';
|
||||
|
||||
import { Button, Card, Col, Row } from 'ant-design-vue';
|
||||
import { Button, Card, Col, Row } from 'antdv-next';
|
||||
|
||||
import { redisCacheInfo } from '#/api/monitor/cache';
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ import { ref } from 'vue';
|
||||
import { Page, useVbenModal } from '@vben/common-ui';
|
||||
import { getVxePopupContainer } from '@vben/utils';
|
||||
|
||||
import { Modal, Popconfirm, Space } from 'ant-design-vue';
|
||||
import { Modal, Popconfirm, Space } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid, vxeCheckboxChecked } from '#/adapter/vxe-table';
|
||||
import {
|
||||
|
||||
@@ -6,7 +6,7 @@ import { ref } from 'vue';
|
||||
import { useVbenModal } from '@vben/common-ui';
|
||||
import { DictEnum } from '@vben/constants';
|
||||
|
||||
import { Descriptions, DescriptionsItem } from 'ant-design-vue';
|
||||
import { Descriptions, DescriptionsItem } from 'antdv-next';
|
||||
|
||||
import { renderBrowserIcon, renderDict, renderOsIcon } from '#/utils/render';
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ import { ref } from 'vue';
|
||||
import { Page } from '@vben/common-ui';
|
||||
import { getVxePopupContainer } from '@vben/utils';
|
||||
|
||||
import { Popconfirm } from 'ant-design-vue';
|
||||
import { Popconfirm } from 'antdv-next';
|
||||
import { slice } from 'lodash-es';
|
||||
|
||||
import { useVbenVxeGrid } from '#/adapter/vxe-table';
|
||||
|
||||
@@ -8,7 +8,7 @@ import type { OperationLog } from '#/api/monitor/operlog/model';
|
||||
import { Page, useVbenDrawer } from '@vben/common-ui';
|
||||
import { $t } from '@vben/locales';
|
||||
|
||||
import { Modal, Space } from 'ant-design-vue';
|
||||
import { Modal, Space } from 'antdv-next';
|
||||
|
||||
import {
|
||||
addSortParams,
|
||||
|
||||
@@ -6,7 +6,7 @@ import { computed, shallowRef } from 'vue';
|
||||
import { useVbenDrawer } from '@vben/common-ui';
|
||||
import { DictEnum } from '@vben/constants';
|
||||
|
||||
import { Descriptions, DescriptionsItem, Tag } from 'ant-design-vue';
|
||||
import { Descriptions, DescriptionsItem, Tag } from 'antdv-next';
|
||||
|
||||
import {
|
||||
renderDict,
|
||||
|
||||
@@ -8,7 +8,7 @@ import { useAccess } from '@vben/access';
|
||||
import { Page, useVbenDrawer } from '@vben/common-ui';
|
||||
import { getVxePopupContainer } from '@vben/utils';
|
||||
|
||||
import { Modal, Popconfirm, Space } from 'ant-design-vue';
|
||||
import { Modal, Popconfirm, Space } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid, vxeCheckboxChecked } from '#/adapter/vxe-table';
|
||||
import {
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
import { IconifyIcon } from '@vben/icons';
|
||||
import { buildUUID } from '@vben/utils';
|
||||
|
||||
import { Input } from 'ant-design-vue';
|
||||
import { Input } from 'antdv-next';
|
||||
|
||||
defineOptions({ name: 'SecretInput' });
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ import type { SysConfig } from '#/api/system/config/model';
|
||||
import { Page, useVbenModal } from '@vben/common-ui';
|
||||
import { getVxePopupContainer } from '@vben/utils';
|
||||
|
||||
import { Modal, Popconfirm, Space } from 'ant-design-vue';
|
||||
import { Modal, Popconfirm, Space } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid, vxeCheckboxChecked } from '#/adapter/vxe-table';
|
||||
import {
|
||||
|
||||
@@ -9,7 +9,7 @@ import { nextTick } from 'vue';
|
||||
import { Page, useVbenDrawer } from '@vben/common-ui';
|
||||
import { eachTree, getVxePopupContainer } from '@vben/utils';
|
||||
|
||||
import { Popconfirm, Space } from 'ant-design-vue';
|
||||
import { Popconfirm, Space } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid } from '#/adapter/vxe-table';
|
||||
import { deptList, deptRemove } from '#/api/system/dept';
|
||||
|
||||
@@ -10,7 +10,7 @@ import { ref } from 'vue';
|
||||
import { useVbenDrawer } from '@vben/common-ui';
|
||||
import { getVxePopupContainer } from '@vben/utils';
|
||||
|
||||
import { Modal, Popconfirm, Space } from 'ant-design-vue';
|
||||
import { Modal, Popconfirm, Space } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid, vxeCheckboxChecked } from '#/adapter/vxe-table';
|
||||
import {
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
<script setup lang="ts">
|
||||
import type { RadioChangeEvent } from 'ant-design-vue';
|
||||
import type { RadioChangeEvent } from 'antdv-next';
|
||||
|
||||
import { computed } from 'vue';
|
||||
|
||||
import { usePreferences } from '@vben/preferences';
|
||||
|
||||
import { RadioGroup, Select } from 'ant-design-vue';
|
||||
import { RadioGroup, Select } from 'antdv-next';
|
||||
import { ColorPicker } from 'vue3-colorpicker';
|
||||
|
||||
import { tagSelectOptions } from '#/components/dict';
|
||||
|
||||
@@ -22,7 +22,7 @@ import {
|
||||
Popconfirm,
|
||||
Space,
|
||||
Tooltip,
|
||||
} from 'ant-design-vue';
|
||||
} from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid } from '#/adapter/vxe-table';
|
||||
import {
|
||||
|
||||
@@ -9,7 +9,7 @@ import { ref } from 'vue';
|
||||
import { useVbenModal } from '@vben/common-ui';
|
||||
import { getVxePopupContainer } from '@vben/utils';
|
||||
|
||||
import { Modal, Popconfirm, Space } from 'ant-design-vue';
|
||||
import { Modal, Popconfirm, Space } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid, vxeCheckboxChecked } from '#/adapter/vxe-table';
|
||||
import {
|
||||
|
||||
@@ -16,7 +16,7 @@ import {
|
||||
treeToList,
|
||||
} from '@vben/utils';
|
||||
|
||||
import { Popconfirm, Space, Switch, Tooltip } from 'ant-design-vue';
|
||||
import { Popconfirm, Space, Switch, Tooltip } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid } from '#/adapter/vxe-table';
|
||||
import { menuCascadeRemove, menuList, menuRemove } from '#/api/system/menu';
|
||||
|
||||
@@ -10,7 +10,7 @@ import {
|
||||
listToTree,
|
||||
} from '@vben/utils';
|
||||
|
||||
import { Input, Skeleton } from 'ant-design-vue';
|
||||
import { Input, Skeleton } from 'antdv-next';
|
||||
|
||||
import { useVbenForm } from '#/adapter/form';
|
||||
import { menuAdd, menuInfo, menuList, menuUpdate } from '#/api/system/menu';
|
||||
|
||||
@@ -7,7 +7,7 @@ import type { Notice } from '#/api/system/notice/model';
|
||||
import { Page, useVbenModal } from '@vben/common-ui';
|
||||
import { getVxePopupContainer } from '@vben/utils';
|
||||
|
||||
import { Modal, Popconfirm, Space } from 'ant-design-vue';
|
||||
import { Modal, Popconfirm, Space } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid, vxeCheckboxChecked } from '#/adapter/vxe-table';
|
||||
import { noticeList, noticeRemove } from '#/api/system/notice';
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
该文件作为例子 使用原生表单而非useVbenForm
|
||||
-->
|
||||
<script setup lang="ts">
|
||||
import type { RuleObject } from 'ant-design-vue/es/form';
|
||||
import type { RuleObject } from 'antdv-next/es/form';
|
||||
|
||||
import { computed, ref } from 'vue';
|
||||
|
||||
@@ -12,7 +12,7 @@ import { DictEnum } from '@vben/constants';
|
||||
import { $t } from '@vben/locales';
|
||||
import { cloneDeep } from '@vben/utils';
|
||||
|
||||
import { Form, FormItem, Input, RadioGroup } from 'ant-design-vue';
|
||||
import { Form, FormItem, Input, RadioGroup } from 'antdv-next';
|
||||
import { pick } from 'lodash-es';
|
||||
|
||||
import { noticeAdd, noticeInfo, noticeUpdate } from '#/api/system/notice';
|
||||
|
||||
@@ -3,7 +3,7 @@ import type { VxeGridProps } from '#/adapter/vxe-table';
|
||||
|
||||
import { DictEnum } from '@vben/constants';
|
||||
|
||||
import { Tag } from 'ant-design-vue';
|
||||
import { Tag } from 'antdv-next';
|
||||
|
||||
import { z } from '#/adapter/form';
|
||||
import { getDictOptions } from '#/utils/dict';
|
||||
|
||||
@@ -8,7 +8,7 @@ import { useAccess } from '@vben/access';
|
||||
import { Page, useVbenDrawer } from '@vben/common-ui';
|
||||
import { getVxePopupContainer } from '@vben/utils';
|
||||
|
||||
import { Modal, Popconfirm, Space } from 'ant-design-vue';
|
||||
import { Modal, Popconfirm, Space } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid, vxeCheckboxChecked } from '#/adapter/vxe-table';
|
||||
import {
|
||||
|
||||
@@ -5,7 +5,7 @@ import { useVbenDrawer } from '@vben/common-ui';
|
||||
import { $t } from '@vben/locales';
|
||||
import { cloneDeep } from '@vben/utils';
|
||||
|
||||
import { Alert } from 'ant-design-vue';
|
||||
import { Alert } from 'antdv-next';
|
||||
|
||||
import { useVbenForm } from '#/adapter/form';
|
||||
import {
|
||||
|
||||
@@ -23,7 +23,7 @@ import {
|
||||
Spin,
|
||||
Switch,
|
||||
Tooltip,
|
||||
} from 'ant-design-vue';
|
||||
} from 'antdv-next';
|
||||
|
||||
import {
|
||||
addSortParams,
|
||||
|
||||
@@ -9,7 +9,7 @@ import { ref } from 'vue';
|
||||
import { Page, useVbenDrawer } from '@vben/common-ui';
|
||||
import { getVxePopupContainer } from '@vben/utils';
|
||||
|
||||
import { Modal, Popconfirm, Space } from 'ant-design-vue';
|
||||
import { Modal, Popconfirm, Space } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid, vxeCheckboxChecked } from '#/adapter/vxe-table';
|
||||
import {
|
||||
|
||||
@@ -9,7 +9,7 @@ import { useRoute } from 'vue-router';
|
||||
import { Page, useVbenDrawer } from '@vben/common-ui';
|
||||
import { getVxePopupContainer } from '@vben/utils';
|
||||
|
||||
import { Modal, Popconfirm, Space } from 'ant-design-vue';
|
||||
import { Modal, Popconfirm, Space } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid, vxeCheckboxChecked } from '#/adapter/vxe-table';
|
||||
import {
|
||||
|
||||
@@ -6,7 +6,7 @@ import { markRaw } from 'vue';
|
||||
import { DictEnum } from '@vben/constants';
|
||||
import { getPopupContainer } from '@vben/utils';
|
||||
|
||||
import { Tag } from 'ant-design-vue';
|
||||
import { Tag } from 'antdv-next';
|
||||
|
||||
import { DefaultSlot } from '#/components/global/slot';
|
||||
import { TreeSelectPanel } from '#/components/tree';
|
||||
|
||||
@@ -11,7 +11,7 @@ import { useAccess } from '@vben/access';
|
||||
import { Page, useVbenDrawer, useVbenModal } from '@vben/common-ui';
|
||||
import { getVxePopupContainer } from '@vben/utils';
|
||||
|
||||
import { Modal, Popconfirm, Space } from 'ant-design-vue';
|
||||
import { Modal, Popconfirm, Space } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid, vxeCheckboxChecked } from '#/adapter/vxe-table';
|
||||
import {
|
||||
|
||||
@@ -10,7 +10,7 @@ import { useAccess } from '@vben/access';
|
||||
import { Fallback, Page, useVbenDrawer } from '@vben/common-ui';
|
||||
import { getVxePopupContainer } from '@vben/utils';
|
||||
|
||||
import { Modal, Popconfirm, Space } from 'ant-design-vue';
|
||||
import { Modal, Popconfirm, Space } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid, vxeCheckboxChecked } from '#/adapter/vxe-table';
|
||||
import {
|
||||
|
||||
@@ -6,7 +6,7 @@ import { useVbenDrawer } from '@vben/common-ui';
|
||||
import { $t } from '@vben/locales';
|
||||
import { cloneDeep } from '@vben/utils';
|
||||
|
||||
import { Button, message, Skeleton } from 'ant-design-vue';
|
||||
import { Button, message, Skeleton } from 'antdv-next';
|
||||
|
||||
import { useVbenForm } from '#/adapter/form';
|
||||
import { tenantAdd, tenantInfo, tenantUpdate } from '#/api/system/tenant';
|
||||
|
||||
@@ -10,7 +10,7 @@ import { useAccess } from '@vben/access';
|
||||
import { Fallback, Page, useVbenDrawer } from '@vben/common-ui';
|
||||
import { getVxePopupContainer } from '@vben/utils';
|
||||
|
||||
import { Modal, Popconfirm, Space } from 'ant-design-vue';
|
||||
import { Modal, Popconfirm, Space } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid, vxeCheckboxChecked } from '#/adapter/vxe-table';
|
||||
import {
|
||||
|
||||
@@ -6,7 +6,7 @@ import type { DeptTree } from '#/api/system/user/model';
|
||||
import { onMounted, ref } from 'vue';
|
||||
|
||||
import { SyncOutlined } from '@ant-design/icons-vue';
|
||||
import { Empty, InputSearch, Skeleton, Tree } from 'ant-design-vue';
|
||||
import { Empty, InputSearch, Skeleton, Tree } from 'antdv-next';
|
||||
|
||||
import { getDeptTree } from '#/api/system/user';
|
||||
|
||||
@@ -83,12 +83,12 @@ onMounted(loadTree);
|
||||
class="p-[8px]"
|
||||
>
|
||||
<div
|
||||
class="bg-background flex h-full flex-col overflow-y-auto rounded-lg"
|
||||
class="flex h-full flex-col overflow-y-auto rounded-lg bg-background"
|
||||
>
|
||||
<!-- 固定在顶部 必须加上bg-background背景色 否则会产生'穿透'效果 -->
|
||||
<div
|
||||
v-if="showSearch"
|
||||
class="bg-background z-100 sticky left-0 top-0 p-[8px]"
|
||||
class="sticky left-0 top-0 z-100 bg-background p-[8px]"
|
||||
>
|
||||
<InputSearch
|
||||
v-model:value="searchValue"
|
||||
|
||||
@@ -20,7 +20,7 @@ import {
|
||||
Modal,
|
||||
Popconfirm,
|
||||
Space,
|
||||
} from 'ant-design-vue';
|
||||
} from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid, vxeCheckboxChecked } from '#/adapter/vxe-table';
|
||||
import {
|
||||
|
||||
@@ -7,7 +7,7 @@ import { useVbenDrawer } from '@vben/common-ui';
|
||||
import { $t } from '@vben/locales';
|
||||
import { addFullName, cloneDeep, getPopupContainer } from '@vben/utils';
|
||||
|
||||
import { Tag } from 'ant-design-vue';
|
||||
import { Tag } from 'antdv-next';
|
||||
|
||||
import { useVbenForm } from '#/adapter/form';
|
||||
import { configInfoByKey } from '#/api/system/config';
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
<script setup lang="ts">
|
||||
import type { UploadFile } from 'ant-design-vue/es/upload/interface';
|
||||
import type { UploadFile } from 'antdv-next';
|
||||
|
||||
import { h, ref, unref } from 'vue';
|
||||
|
||||
import { useVbenModal } from '@vben/common-ui';
|
||||
import { ExcelIcon, InBoxIcon } from '@vben/icons';
|
||||
|
||||
import { Modal, Switch, Upload } from 'ant-design-vue';
|
||||
import { Modal, Switch, Upload } from 'antdv-next';
|
||||
|
||||
import { downloadImportTemplate, userImportData } from '#/api/system/user';
|
||||
import { commonDownloadExcel } from '#/utils/file/download';
|
||||
@@ -80,7 +80,7 @@ function handleCancel() {
|
||||
accept="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
|
||||
>
|
||||
<p class="ant-upload-drag-icon flex items-center justify-center">
|
||||
<InBoxIcon class="text-primary size-[48px]" />
|
||||
<InBoxIcon class="size-[48px] text-primary" />
|
||||
</p>
|
||||
<p class="ant-upload-text">点击或者拖拽到此处上传文件</p>
|
||||
</UploadDragger>
|
||||
|
||||
@@ -6,7 +6,7 @@ import { computed, shallowRef } from 'vue';
|
||||
import { useVbenModal } from '@vben/common-ui';
|
||||
import { DictEnum } from '@vben/constants';
|
||||
|
||||
import { Descriptions, DescriptionsItem, Tag } from 'ant-design-vue';
|
||||
import { Descriptions, Tag } from 'antdv-next';
|
||||
import dayjs from 'dayjs';
|
||||
import duration from 'dayjs/plugin/duration';
|
||||
import relativeTime from 'dayjs/plugin/relativeTime';
|
||||
@@ -88,24 +88,24 @@ const diffLoginTime = computed(() => {
|
||||
<template>
|
||||
<BasicModal :footer="false" :fullscreen-button="false" title="用户信息">
|
||||
<Descriptions v-if="currentUser" size="small" :column="1" bordered>
|
||||
<DescriptionsItem label="userId">
|
||||
<Descriptions.Item label="userId">
|
||||
{{ currentUser.userId }}
|
||||
</DescriptionsItem>
|
||||
<DescriptionsItem label="用户状态">
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="用户状态">
|
||||
<component
|
||||
:is="renderDict(currentUser.status, DictEnum.SYS_NORMAL_DISABLE)"
|
||||
/>
|
||||
</DescriptionsItem>
|
||||
<DescriptionsItem label="用户信息">
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="用户信息">
|
||||
{{ mixInfo }}
|
||||
</DescriptionsItem>
|
||||
<DescriptionsItem label="手机号">
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="手机号">
|
||||
{{ currentUser.phonenumber || '-' }}
|
||||
</DescriptionsItem>
|
||||
<DescriptionsItem label="邮箱">
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="邮箱">
|
||||
{{ currentUser.email || '-' }}
|
||||
</DescriptionsItem>
|
||||
<DescriptionsItem label="岗位">
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="岗位">
|
||||
<div
|
||||
v-if="currentUser.postNames.length > 0"
|
||||
class="flex flex-wrap gap-0.5"
|
||||
@@ -115,8 +115,8 @@ const diffLoginTime = computed(() => {
|
||||
</Tag>
|
||||
</div>
|
||||
<span v-else>-</span>
|
||||
</DescriptionsItem>
|
||||
<DescriptionsItem label="权限">
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="权限">
|
||||
<div
|
||||
v-if="currentUser.roleNames.length > 0"
|
||||
class="flex flex-wrap gap-0.5"
|
||||
@@ -126,14 +126,14 @@ const diffLoginTime = computed(() => {
|
||||
</Tag>
|
||||
</div>
|
||||
<span v-else>-</span>
|
||||
</DescriptionsItem>
|
||||
<DescriptionsItem label="创建时间">
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="创建时间">
|
||||
{{ currentUser.createTime }}
|
||||
</DescriptionsItem>
|
||||
<DescriptionsItem label="上次登录IP">
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="上次登录IP">
|
||||
{{ currentUser.loginIp ?? '-' }}
|
||||
</DescriptionsItem>
|
||||
<DescriptionsItem label="上次登录时间">
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="上次登录时间">
|
||||
<span>{{ currentUser.loginDate ?? '-' }}</span>
|
||||
<Tag
|
||||
class="ml-2"
|
||||
@@ -143,10 +143,10 @@ const diffLoginTime = computed(() => {
|
||||
>
|
||||
{{ diffLoginTime }}前
|
||||
</Tag>
|
||||
</DescriptionsItem>
|
||||
<DescriptionsItem label="备注">
|
||||
</Descriptions.Item>
|
||||
<Descriptions.Item label="备注">
|
||||
{{ currentUser.remark ?? '-' }}
|
||||
</DescriptionsItem>
|
||||
</Descriptions.Item>
|
||||
</Descriptions>
|
||||
</BasicModal>
|
||||
</template>
|
||||
|
||||
@@ -5,7 +5,7 @@ import { ref } from 'vue';
|
||||
|
||||
import { useVbenModal, z } from '@vben/common-ui';
|
||||
|
||||
import { Descriptions, DescriptionsItem } from 'ant-design-vue';
|
||||
import { Descriptions, DescriptionsItem } from 'antdv-next';
|
||||
|
||||
import { useVbenForm } from '#/adapter/form';
|
||||
import { userResetPassword } from '#/api/system/user';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<script setup lang="ts">
|
||||
import type { Key } from 'ant-design-vue/es/vc-tree/interface';
|
||||
import type { Key } from 'antdv-next/es/vc-tree/interface';
|
||||
|
||||
import type { Component } from 'vue';
|
||||
|
||||
@@ -20,7 +20,7 @@ import {
|
||||
} from '@vben/icons';
|
||||
|
||||
import { useClipboard } from '@vueuse/core';
|
||||
import { Alert, Skeleton, Tree } from 'ant-design-vue';
|
||||
import { Alert, Skeleton, Tree } from 'antdv-next';
|
||||
|
||||
import { previewCode } from '#/api/tool/gen';
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ import { Page } from '@vben/common-ui';
|
||||
import { useTabs } from '@vben/hooks';
|
||||
import { cloneDeep, safeParseNumber } from '@vben/utils';
|
||||
|
||||
import { Card, Skeleton, TabPane, Tabs } from 'ant-design-vue';
|
||||
import { Card, Skeleton, TabPane, Tabs } from 'antdv-next';
|
||||
|
||||
import { editSave, genInfo } from '#/api/tool/gen';
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ import { useVbenForm } from '@vben/common-ui';
|
||||
import { $t } from '@vben/locales';
|
||||
import { addFullName, listToTree } from '@vben/utils';
|
||||
|
||||
import { Col, Row } from 'ant-design-vue';
|
||||
import { Col, Row } from 'antdv-next';
|
||||
|
||||
import { menuList } from '#/api/system/menu';
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ import type { Recordable } from '@vben/types';
|
||||
|
||||
import type { VxeGridProps } from '#/adapter/vxe-table';
|
||||
|
||||
import { Checkbox, Input, Select } from 'ant-design-vue';
|
||||
import { Checkbox, Input, Select } from 'antdv-next';
|
||||
|
||||
const JavaTypes: string[] = [
|
||||
'Long',
|
||||
|
||||
@@ -10,7 +10,7 @@ import { useRouter } from 'vue-router';
|
||||
import { Page, useVbenModal } from '@vben/common-ui';
|
||||
import { getVxePopupContainer } from '@vben/utils';
|
||||
|
||||
import { message, Modal, Popconfirm, Space } from 'ant-design-vue';
|
||||
import { message, Modal, Popconfirm, Space } from 'antdv-next';
|
||||
import dayjs from 'dayjs';
|
||||
|
||||
import { useVbenVxeGrid, vxeCheckboxChecked } from '#/adapter/vxe-table';
|
||||
|
||||
@@ -6,7 +6,7 @@ import { nextTick } from 'vue';
|
||||
import { Page, useVbenModal, type VbenFormProps } from '@vben/common-ui';
|
||||
import { getVxePopupContainer } from '@vben/utils';
|
||||
|
||||
import { Popconfirm, Space } from 'ant-design-vue';
|
||||
import { Popconfirm, Space } from 'antdv-next';
|
||||
|
||||
import { useVbenVxeGrid, type VxeGridProps } from '#/adapter/vxe-table';
|
||||
import { categoryList, categoryRemove } from '#/api/workflow/category';
|
||||
|
||||
@@ -21,7 +21,7 @@ import {
|
||||
UsergroupDeleteOutlined,
|
||||
UserOutlined,
|
||||
} from '@ant-design/icons-vue';
|
||||
import { Dropdown, Menu, MenuItem, Modal, Space } from 'ant-design-vue';
|
||||
import { Dropdown, Menu, MenuItem, Modal, Space } from 'antdv-next';
|
||||
|
||||
import {
|
||||
cancelProcessApply,
|
||||
|
||||
@@ -6,7 +6,7 @@ import { computed } from 'vue';
|
||||
import { VbenAvatar } from '@vben/common-ui';
|
||||
import { DictEnum } from '@vben/constants';
|
||||
|
||||
import { Descriptions, DescriptionsItem, Tooltip } from 'ant-design-vue';
|
||||
import { Descriptions, DescriptionsItem, Tooltip } from 'antdv-next';
|
||||
|
||||
import { renderDict } from '#/utils/render';
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<!-- 审批终止 Modal弹窗的content属性专用 用于填写审批意见 -->
|
||||
<script setup lang="ts">
|
||||
import { Textarea } from 'ant-design-vue';
|
||||
import { Textarea } from 'antdv-next';
|
||||
|
||||
defineOptions({
|
||||
name: 'ApprovalContent',
|
||||
|
||||
@@ -8,7 +8,7 @@ import type { FlowComponentsMapMapKey } from '../register';
|
||||
import type { FlowInfoResponse } from '#/api/workflow/instance/model';
|
||||
import type { TaskInfo } from '#/api/workflow/task/model';
|
||||
|
||||
import { Divider } from 'ant-design-vue';
|
||||
import { Divider } from 'antdv-next';
|
||||
|
||||
import { ApprovalTimeline } from '.';
|
||||
import { flowComponentsMap } from '../register';
|
||||
|
||||
@@ -11,7 +11,7 @@ import { ref } from 'vue';
|
||||
import { useVbenModal } from '@vben/common-ui';
|
||||
import { cloneDeep } from '@vben/utils';
|
||||
|
||||
import { message } from 'ant-design-vue';
|
||||
import { message } from 'antdv-next';
|
||||
import { omit } from 'lodash-es';
|
||||
|
||||
import { useVbenForm } from '#/adapter/form';
|
||||
|
||||
@@ -16,7 +16,7 @@ import { cn } from '@vben/utils';
|
||||
|
||||
import { CopyOutlined } from '@ant-design/icons-vue';
|
||||
import { useClipboard } from '@vueuse/core';
|
||||
import { Card, Divider, message, TabPane, Tabs } from 'ant-design-vue';
|
||||
import { Card, Divider, message, TabPane, Tabs } from 'antdv-next';
|
||||
|
||||
import { flowInfo } from '#/api/workflow/instance';
|
||||
import { getTaskByTaskId } from '#/api/workflow/task';
|
||||
|
||||
@@ -12,7 +12,7 @@ import {
|
||||
UsergroupAddOutlined,
|
||||
UserOutlined,
|
||||
} from '@ant-design/icons-vue';
|
||||
import { Avatar, TimelineItem } from 'ant-design-vue';
|
||||
import { Avatar, TimelineItem } from 'antdv-next';
|
||||
|
||||
import { ossInfo } from '#/api/system/oss';
|
||||
import { renderDict } from '#/utils/render';
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user