pro-design-vue 1.0.0-rc.11 → 1.0.0-rc.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.full.js +20 -9
- package/dist/index.full.min.js +6 -6
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +6 -6
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +20 -9
- package/es/components/drawer/src/drawer.vue2.mjs +1 -1
- package/es/components/drawer/src/drawer.vue2.mjs.map +1 -1
- package/es/components/form/src/components/FormItem.mjs +1 -1
- package/es/components/form/src/components/FormItem.mjs.map +1 -1
- package/es/components/form/src/layouts/QueryFilter.mjs +15 -4
- package/es/components/form/src/layouts/QueryFilter.mjs.map +1 -1
- package/es/components/modal/src/modal.vue2.mjs +1 -1
- package/es/components/modal/src/modal.vue2.mjs.map +1 -1
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/drawer/src/drawer.vue2.js +1 -1
- package/lib/components/drawer/src/drawer.vue2.js.map +1 -1
- package/lib/components/form/src/components/FormItem.js +1 -1
- package/lib/components/form/src/components/FormItem.js.map +1 -1
- package/lib/components/form/src/layouts/QueryFilter.js +15 -4
- package/lib/components/form/src/layouts/QueryFilter.js.map +1 -1
- package/lib/components/modal/src/modal.vue2.js +1 -1
- package/lib/components/modal/src/modal.vue2.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +1 -1
package/dist/index.full.mjs
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
/*! Pro Design Vue v1.0.0-rc.
|
1
|
+
/*! Pro Design Vue v1.0.0-rc.12 */
|
2
2
|
|
3
3
|
import { Modal, ConfigProvider, App, Button as Button$1, Tooltip, Popconfirm, Dropdown, Menu, Slider, Drawer, Input, InputNumber, Form as Form$1, Space, Textarea, Select, TreeSelect, Checkbox as Checkbox$1, CheckboxGroup, RadioGroup, Radio as Radio$1, Cascader, Switch, Rate, DatePicker, RangePicker, TimePicker, TimeRangePicker, Upload, theme as theme$1, FormItemRest, Spin, message, Row as Row$1, Col, FormItem as FormItem$3, Steps, Popover, MenuItem, SubMenu, Empty, Badge, Tag, Pagination, InputSearch, Tree, Card, Tabs, TabPane } from 'ant-design-vue';
|
4
4
|
import { inject, ref, getCurrentInstance, nextTick, h, reactive, defineComponent, createVNode, isVNode, Fragment, cloneVNode, provide, computed, renderSlot, createPropsRestProxy, createBlock, openBlock, unref, normalizeProps, guardReactiveProps, withCtx, shallowRef, shallowReadonly, toValue, getCurrentScope, onScopeDispose, watch, onMounted, hasInjectionContext, isRef, toRefs as toRefs$1, customRef, toRef as toRef$1, readonly, watchEffect, toRaw, createElementBlock, createCommentVNode, resolveDynamicComponent, mergeProps, createElementVNode, normalizeStyle, toDisplayString, normalizeClass, createSlots, useAttrs, useTemplateRef, defineAsyncComponent, Teleport, onUnmounted, Comment as Comment$1, useSlots, useModel, withModifiers, mergeModels, renderList, camelize, isReactive, onActivated, onDeactivated, onBeforeUnmount, triggerRef, resolveDirective, withDirectives, vShow, render as render$1, resolveComponent, createTextVNode, vModelText } from 'vue';
|
@@ -13,7 +13,7 @@ const ELEMENT_ID_MAIN_CONTENT = `__pro_main_content`;
|
|
13
13
|
const SCROLL_FIXED_CLASS = `_scroll__fixed_`;
|
14
14
|
const DEFAULT_NAMESPACE = "pro";
|
15
15
|
|
16
|
-
const version$1 = "1.0.0-rc.
|
16
|
+
const version$1 = "1.0.0-rc.12";
|
17
17
|
|
18
18
|
const makeInstaller = (components = []) => {
|
19
19
|
const install = (app) => {
|
@@ -11748,7 +11748,7 @@ var _sfc_main$S = /* @__PURE__ */ defineComponent({
|
|
11748
11748
|
__name: "drawer",
|
11749
11749
|
props: {
|
11750
11750
|
description: { type: String, required: false },
|
11751
|
-
showFullscreen: { type: Boolean, required: false, default:
|
11751
|
+
showFullscreen: { type: Boolean, required: false, default: false },
|
11752
11752
|
defaultFullscreen: { type: Boolean, required: false },
|
11753
11753
|
autofocus: { type: Boolean, required: false, default: false },
|
11754
11754
|
closable: { type: Boolean, required: false, default: true },
|
@@ -14948,7 +14948,7 @@ var _sfc_main$R = /* @__PURE__ */ defineComponent({
|
|
14948
14948
|
__name: "modal",
|
14949
14949
|
props: {
|
14950
14950
|
description: { type: String, required: false },
|
14951
|
-
showFullscreen: { type: Boolean, required: false, default:
|
14951
|
+
showFullscreen: { type: Boolean, required: false, default: false },
|
14952
14952
|
defaultFullscreen: { type: Boolean, required: false },
|
14953
14953
|
draggable: { type: Boolean, required: false, default: false },
|
14954
14954
|
top: { type: Number, required: false, default: 100 },
|
@@ -17081,6 +17081,7 @@ var QueryFilter = /* @__PURE__ */ defineComponent({
|
|
17081
17081
|
}
|
17082
17082
|
if (props.defaultColsNumber !== void 0) {
|
17083
17083
|
const oneRowControlsNumber = 24 / spanSize.value.span - 1;
|
17084
|
+
console.log("\u{1F680} ~ showLength ~ oneRowControlsNumber:", oneRowControlsNumber);
|
17084
17085
|
return props.defaultColsNumber > oneRowControlsNumber ? oneRowControlsNumber : props.defaultColsNumber;
|
17085
17086
|
}
|
17086
17087
|
return Math.max(1, 24 / spanSize.value.span - 1);
|
@@ -17117,7 +17118,7 @@ var QueryFilter = /* @__PURE__ */ defineComponent({
|
|
17117
17118
|
}
|
17118
17119
|
return void 0;
|
17119
17120
|
});
|
17120
|
-
const [collapsed, setCollapsed] = useMergedState$1(() => props.defaultCollapsed, {
|
17121
|
+
const [collapsed, setCollapsed] = useMergedState$1(() => props.defaultCollapsed && !!props.submitter, {
|
17121
17122
|
value: computed(() => props.collapsed),
|
17122
17123
|
onChange: (val) => {
|
17123
17124
|
emit("collapse", val);
|
@@ -17188,7 +17189,7 @@ var QueryFilter = /* @__PURE__ */ defineComponent({
|
|
17188
17189
|
firstRowFull = colSpan === 24 && !item.hidden;
|
17189
17190
|
}
|
17190
17191
|
const hidden = item.hidden || // 如果收起了
|
17191
|
-
|
17192
|
+
collapsed.value && (firstRowFull || // 如果 超过显示长度 且 总长度超过了 24
|
17192
17193
|
totalSize.value > showLength.value) && !!index;
|
17193
17194
|
if (hidden) {
|
17194
17195
|
if (!props.preserve) {
|
@@ -17216,7 +17217,10 @@ var QueryFilter = /* @__PURE__ */ defineComponent({
|
|
17216
17217
|
return {
|
17217
17218
|
...item,
|
17218
17219
|
hidden,
|
17219
|
-
formItemProps:
|
17220
|
+
formItemProps: {
|
17221
|
+
...item.title ? formItemFixStyle.value : {},
|
17222
|
+
...item.formItemProps
|
17223
|
+
},
|
17220
17224
|
colProps: {
|
17221
17225
|
span: colSpan
|
17222
17226
|
}
|
@@ -17260,9 +17264,16 @@ var QueryFilter = /* @__PURE__ */ defineComponent({
|
|
17260
17264
|
}), {
|
17261
17265
|
...slots,
|
17262
17266
|
submitter: ({
|
17267
|
+
props: props2,
|
17268
|
+
action,
|
17263
17269
|
defaultDoms
|
17264
17270
|
}) => {
|
17265
|
-
|
17271
|
+
var _a2;
|
17272
|
+
return createVNode(Fragment, null, [slots.submitter ? (_a2 = slots.submitter) == null ? void 0 : _a2.call(slots, {
|
17273
|
+
props: props2,
|
17274
|
+
action,
|
17275
|
+
defaultDoms
|
17276
|
+
}) : defaultDoms, needCollapse.value !== false && createVNode("a", {
|
17266
17277
|
"class": `${prefixCls}-collapse-button`,
|
17267
17278
|
"onClick": () => setCollapsed(!collapsed.value)
|
17268
17279
|
}, [collapsed.value ? intl.getMessage("form.collapsed", "\u5C55\u5F00") : intl.getMessage("form.expand", "\u6536\u8D77"), !!hiddenNum.value && `(${hiddenNum.value})`, createVNode(DownOutlined, {
|
@@ -36691,7 +36702,7 @@ var FormItem = /* @__PURE__ */ defineComponent({
|
|
36691
36702
|
disabled: ((_e = runFunction((_d = props.item.disabled) != null ? _d : baseProps == null ? void 0 : baseProps.disabled, formData.value, rowData == null ? void 0 : rowData.value)) != null ? _e : allDisabledKeys.value.includes(props.item.key)) ? true : void 0,
|
36692
36703
|
placeholder: (_f = props.item.placeholder) != null ? _f : baseProps == null ? void 0 : baseProps.placeholder,
|
36693
36704
|
options: (_h = (_g = props.item.options) != null ? _g : baseProps == null ? void 0 : baseProps.options) != null ? _h : baseProps == null ? void 0 : baseProps.treeData,
|
36694
|
-
allowClear: (_j = (_i = props.item.allowClear) != null ? _i : baseProps == null ? void 0 : baseProps.allowClear) != null ? _j :
|
36705
|
+
allowClear: (_j = (_i = props.item.allowClear) != null ? _i : baseProps == null ? void 0 : baseProps.allowClear) != null ? _j : true
|
36695
36706
|
};
|
36696
36707
|
return omitUndefined({
|
36697
36708
|
valueEnum: props.item.valueEnum,
|
@@ -13,7 +13,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
13
13
|
__name: "drawer",
|
14
14
|
props: {
|
15
15
|
description: { type: String, required: false },
|
16
|
-
showFullscreen: { type: Boolean, required: false, default:
|
16
|
+
showFullscreen: { type: Boolean, required: false, default: false },
|
17
17
|
defaultFullscreen: { type: Boolean, required: false },
|
18
18
|
autofocus: { type: Boolean, required: false, default: false },
|
19
19
|
closable: { type: Boolean, required: false, default: true },
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"drawer.vue2.mjs","sources":["../../../../../../packages/components/drawer/src/drawer.vue"],"sourcesContent":["<!--\n * @Author: shen\n * @Date: 2025-06-23 16:43:27\n * @LastEditors: shen\n * @LastEditTime: 2025-09-
|
1
|
+
{"version":3,"file":"drawer.vue2.mjs","sources":["../../../../../../packages/components/drawer/src/drawer.vue"],"sourcesContent":["<!--\n * @Author: shen\n * @Date: 2025-06-23 16:43:27\n * @LastEditors: shen\n * @LastEditTime: 2025-09-24 16:34:05\n * @Description:\n-->\n<script setup lang=\"ts\">\nimport type { DrawerProps } from 'ant-design-vue'\n\nimport { computed, ref } from 'vue'\nimport { Drawer } from 'ant-design-vue'\nimport { CloseOutlined, FullscreenOutlined, FullscreenExitOutlined } from '@ant-design/icons-vue'\nimport { ProButton } from '@pro-design-vue/components/button'\nimport { omitKeysAndUndefined } from '@pro-design-vue/utils'\nimport { useIsMobile, usePrefixCls } from '@pro-design-vue/hooks'\nexport interface Props extends DrawerProps {\n description?: string\n showFullscreen?: boolean\n defaultFullscreen?: boolean\n}\ndefineOptions({\n name: 'ProDrawer',\n})\n\nconst props = withDefaults(defineProps<Props>(), {\n autofocus: false,\n closable: true,\n destroyOnClose: true,\n getContainer: 'body',\n mask: true,\n maskClosable: true,\n open: false,\n showFullscreen: false,\n})\n\nconst emit = defineEmits<{ close: [e: Event]; fullScreen: [value: boolean] }>()\n\nconst prefixCls = usePrefixCls('drawer')\nconst { isMobile } = useIsMobile()\nconst fullscreen = ref(props.defaultFullscreen)\nconst hasFullscreen = computed(() => isMobile.value || fullscreen.value)\nconst drawerProps = computed(() =>\n omitKeysAndUndefined(props, ['rootClassName', 'closable', 'onClose', 'title', 'width', 'height']),\n)\n\nconst width = computed(() => {\n if (fullscreen.value) {\n return '100%'\n }\n return props.width\n})\n\nconst height = computed(() => {\n if (hasFullscreen.value) {\n return '100%'\n }\n return props.height\n})\n\nconst handleClose = (e: Event) => {\n fullscreen.value = props.defaultFullscreen\n props['onUpdate:open']?.(false)\n emit('close', e)\n}\n\nconst handleBtnClose = (e: Event) => {\n handleClose(e)\n}\n\nconst handleFullScreen = () => {\n fullscreen.value = !fullscreen.value\n emit('fullScreen', fullscreen.value)\n}\n</script>\n\n<template>\n <Drawer\n v-bind=\"drawerProps\"\n :root-class-name=\"`${prefixCls} ${rootClassName || ''}`\"\n :closable=\"false\"\n :width\n :height\n @close=\"handleClose\"\n >\n <template #title>\n <slot name=\"title\">\n <div :class=\"`${prefixCls}-title`\">{{ title }}</div>\n </slot>\n <slot name=\"description\">\n <div :class=\"`${prefixCls}-description`\">{{ description }}</div>\n </slot>\n </template>\n <template #extra>\n <slot name=\"extra\" />\n <ProButton\n v-if=\"showFullscreen && !isMobile\"\n :class=\"`${prefixCls}-fullscreen`\"\n size=\"small\"\n shape=\"circle\"\n type=\"text\"\n @click=\"handleFullScreen\"\n >\n <template #icon>\n <FullscreenOutlined v-if=\"!fullscreen\" />\n <FullscreenExitOutlined v-else />\n </template>\n </ProButton>\n <ProButton\n v-if=\"closable\"\n :class=\"`${prefixCls}-close`\"\n size=\"small\"\n shape=\"circle\"\n type=\"text\"\n @click=\"handleBtnClose\"\n >\n <template #icon>\n <CloseOutlined />\n </template>\n </ProButton>\n </template>\n <template #default>\n <slot />\n </template>\n\n <template #footer v-if=\"$slots.footer\">\n <slot name=\"footer\" />\n </template>\n </Drawer>\n</template>\n"],"names":["_createBlock","_unref","_mergeProps","rootClassName","_renderSlot","_createElementVNode","title","description","showFullscreen","closable","_createVNode","$slots"],"mappings":"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"}
|
@@ -126,7 +126,7 @@ var FormItem = /* @__PURE__ */ defineComponent({
|
|
126
126
|
disabled: ((_e = runFunction((_d = props.item.disabled) != null ? _d : baseProps == null ? void 0 : baseProps.disabled, formData.value, rowData == null ? void 0 : rowData.value)) != null ? _e : allDisabledKeys.value.includes(props.item.key)) ? true : void 0,
|
127
127
|
placeholder: (_f = props.item.placeholder) != null ? _f : baseProps == null ? void 0 : baseProps.placeholder,
|
128
128
|
options: (_h = (_g = props.item.options) != null ? _g : baseProps == null ? void 0 : baseProps.options) != null ? _h : baseProps == null ? void 0 : baseProps.treeData,
|
129
|
-
allowClear: (_j = (_i = props.item.allowClear) != null ? _i : baseProps == null ? void 0 : baseProps.allowClear) != null ? _j :
|
129
|
+
allowClear: (_j = (_i = props.item.allowClear) != null ? _i : baseProps == null ? void 0 : baseProps.allowClear) != null ? _j : true
|
130
130
|
};
|
131
131
|
return omitUndefined({
|
132
132
|
valueEnum: props.item.valueEnum,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"FormItem.mjs","sources":["../../../../../../../packages/components/form/src/components/FormItem.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-09 16:56:49\n * @LastEditors: shen\n * @LastEditTime: 2025-09-22 13:42:38\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { ProFormItemType } from '../type'\n\nimport { defineComponent, computed, watch, ref } from 'vue'\nimport { Form } from 'ant-design-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { useInjectForm } from '../context/FormContext'\nimport { useFieldValue } from '../hooks/useFieldValue'\nimport { useInjectFormList } from '../context/FormListContext'\nimport { fieldComponentMap } from '../fieldMap'\nimport {\n get,\n isEqual,\n isNumber,\n merge,\n omitUndefined,\n pickKeys,\n RenderVNode,\n runFunction,\n set,\n} from '@pro-design-vue/utils'\nimport getSlot from '../utils/getSlot'\nimport FormColWrapper from './FormColWrapper'\nimport FormTitle from './FormTitle'\nimport covertFormName from '../utils/namePath'\nimport fieldPropsMap from '../utils/fieldPropsMap'\nimport fieldWidthSizeMap from '../utils/fieldWidthSizeMap'\n\nconst ALL_ANTD_PROP_KEYS = [\n 'autoLink',\n 'colon',\n 'hasFeedback',\n 'labelAlign',\n 'labelCol',\n 'htmlFor',\n 'required',\n 'validateFirst',\n 'validateStatus',\n 'validateTrigger',\n 'wrapperCol',\n 'rules',\n 'style',\n 'class',\n]\n\nconst IGNORE_WIDTH_VALUE_TYPE = ['switch', 'radioButton', 'radio', 'rate']\nconst SLOT_NAMES = ['extra', 'help']\n\nexport default defineComponent({\n name: 'FormItem',\n inheritAttrs: false,\n props: {\n item: {\n type: Object as PropType<ProFormItemType>,\n default: () => ({}),\n },\n grid: {\n type: Boolean,\n default: undefined,\n },\n },\n setup(props) {\n const {\n grid,\n action,\n formKey,\n prefixCls,\n formData,\n readonly,\n readonlyProps,\n disabledKeys,\n hiddenKeys,\n allDisabledKeys,\n updateHiddenKeys,\n updateDisabledKeys,\n } = useInjectForm()\n const { isList, listKey, listName, rowData } = useInjectFormList()\n const formSlotsContext = useInjectSlots()\n const { fieldValue, onValueChange } = useFieldValue<any>({\n isList,\n namePath: computed(() => props.item.name!),\n initialValue: props.item.initialValue,\n convertValue: props.item.convertValue,\n transform: props.item.transform,\n })\n const fieldRef = ref()\n const mergeGrid = computed(() => props.grid ?? grid?.value)\n const fieldType = computed(() => props.item.fieldType ?? 'text')\n const mergeReadonly = computed(() =>\n runFunction(props.item.readonly ?? readonly?.value, formData.value, rowData?.value),\n )\n const mergeReadonlyProps = computed(() =>\n merge({}, readonlyProps?.value, props.item.readonlyProps),\n )\n const linkageDisabledKeys = computed(() => disabledKeys.value.map((key) => key.split(':')[1]))\n const linkageHiddenKeys = computed(() => hiddenKeys.value.map((key) => key.split(':')[1]))\n const isIgnoreWidth = computed(\n () => props.item.ignoreWidth ?? IGNORE_WIDTH_VALUE_TYPE.includes(fieldType.value),\n )\n const formItemProps = computed(\n () => runFunction(props.item.formItemProps, formData.value) ?? {},\n )\n const restItemProps = computed(() =>\n omitUndefined({\n ...pickKeys(formItemProps.value, ALL_ANTD_PROP_KEYS),\n name: mergeReadonly.value ? undefined : props.item.name,\n htmlFor: mergeReadonly.value\n ? undefined\n : (formItemProps.value?.htmlFor ?? `form-${formKey.value ?? ''}-${props.item.key}`),\n rules: mergeReadonly.value\n ? undefined\n : runFunction(props.item.rules ?? formItemProps.value.rules, formData.value, action),\n }),\n )\n\n const clearOnChange = (newValue: any) => {\n const { clear } = props.item.linkage ?? {}\n if (clear) {\n const clearNamePaths = runFunction(clear, newValue, formData.value) ?? []\n if (clearNamePaths.length > 0) {\n clearNamePaths.forEach((namePath) => {\n const path = isList\n ? [...(listName?.value ?? [])!, ...covertFormName(namePath)!]\n .filter((item) => item !== undefined)\n .flat(1)\n : covertFormName(namePath)\n const value = get(formData.value, path!)\n if (typeof value !== 'undefined') {\n set(formData.value, path!, undefined)\n }\n })\n }\n }\n }\n\n const fieldProps = computed(() => {\n const baseProps = runFunction(props.item.fieldProps ?? {}, formData.value)\n const mergeProps = {\n ...baseProps,\n id: baseProps?.id ?? `form-${formKey.value ?? ''}-${props.item.key}`,\n disabled:\n (runFunction(\n props.item.disabled ?? baseProps?.disabled,\n formData.value,\n rowData?.value,\n ) ?? allDisabledKeys.value.includes(props.item.key as string))\n ? true\n : undefined,\n placeholder: props.item.placeholder ?? baseProps?.placeholder,\n options: props.item.options ?? baseProps?.options ?? baseProps?.treeData,\n allowClear: props.item.allowClear ?? baseProps?.allowClear ?? false,\n }\n\n return omitUndefined({\n valueEnum: props.item.valueEnum,\n dependencies: props.item.dependencies,\n readonly: mergeReadonly.value,\n readonlyProps: mergeReadonlyProps.value,\n request: props.item.request,\n params: props.item.params,\n onChange: (value: any, ...args) => {\n clearOnChange(value)\n onValueChange(value)\n props.item.onChange?.(value, ...args, action)\n },\n ...(fieldPropsMap[fieldType.value]\n ? pickKeys(mergeProps, fieldPropsMap[fieldType.value]!)\n : mergeProps),\n })\n })\n\n const fieldStyle = computed(() => {\n const baseProps = runFunction(props.item.fieldProps ?? {}, formData.value)\n const newStyle = {\n ...baseProps?.style,\n }\n\n if (props.item.width && !fieldWidthSizeMap[props.item.width]) {\n newStyle.width = isNumber(props.item.width) ? props.item.width + 'px' : props.item.width\n } else if (mergeGrid?.value) {\n newStyle.maxWidth = '100%'\n newStyle.width = '100%'\n }\n\n if (isIgnoreWidth.value) Reflect.deleteProperty(newStyle, 'width')\n\n return omitUndefined(newStyle)\n })\n\n const fieldClassName = computed(() => {\n const isSizeEnum = props.item.width && fieldWidthSizeMap[props.item.width]\n const className = {\n [`${prefixCls}-field`]: !!isSizeEnum,\n [`${prefixCls}-field-${props.item.width}`]: isSizeEnum && !isIgnoreWidth.value,\n }\n if (props.item.className) {\n className[props.item.className] = true\n }\n return className\n })\n\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(formItemProps.value[name], formSlotsContext)\n if (slot) {\n temp[name] = () => <RenderVNode vnode={slot} props={{ formData: formData.value }} />\n }\n })\n if (props.item.title) {\n const extraRender = getSlot(props.item.extra?.label, formSlotsContext)\n temp['label'] = () => (\n <>\n <div class={`${prefixCls}-item-title`} style={formItemProps.value.titleStyles}>\n <FormTitle title={props.item.title} tooltip={props.item.tooltip} />\n </div>\n <RenderVNode vnode={extraRender} props={{ formData: formData.value }} />\n </>\n )\n }\n return temp\n })\n\n watch(\n fieldValue,\n (newValue) => {\n const { linkage } = props.item\n if (linkage) {\n const { hidden, disabled } = linkage\n if (hidden) {\n const hiddenKeys = runFunction(hidden, newValue, formData.value) ?? []\n if (!isEqual(hiddenKeys, linkageHiddenKeys.value)) {\n updateHiddenKeys(\n props.item.key as string,\n isList ? hiddenKeys.map((key) => `${listKey}_${key}`) : hiddenKeys,\n )\n }\n }\n\n if (disabled) {\n const disabledKeys = runFunction(disabled, newValue, formData.value) ?? []\n if (!isEqual(disabledKeys, linkageDisabledKeys.value)) {\n updateDisabledKeys(\n props.item.key as string,\n isList ? disabledKeys.map((key) => `${listKey}_${key}`) : disabledKeys,\n )\n }\n }\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(fieldRef, () => {\n props.item.onInit?.(fieldRef.value)\n })\n\n watch(mergeReadonly, () => {\n if (mergeReadonly.value) {\n action.clearValidate(props.item.name)\n }\n })\n\n watch(\n () => restItemProps.value?.rules,\n () => {\n action.clearValidate(props.item.name)\n },\n )\n\n return () => {\n const render = getSlot(props.item.render, formSlotsContext)\n if (render) {\n return (\n <FormColWrapper colProps={props.item.colProps} grid={mergeGrid.value}>\n <RenderVNode\n vnode={render}\n props={{\n formData: formData.value,\n }}\n />\n </FormColWrapper>\n )\n }\n\n const renderFormItem = getSlot(props.item.renderFormItem, formSlotsContext)\n const extraRender = getSlot(props.item.extra?.item, formSlotsContext)\n const FieldComponent = fieldComponentMap[fieldType.value] ?? fieldComponentMap['text']\n let defaultDom = (\n <FieldComponent\n ref={fieldRef}\n value={fieldValue.value}\n {...fieldProps.value}\n style={fieldStyle.value}\n class={fieldClassName.value}\n />\n )\n if (renderFormItem) {\n defaultDom = (\n <RenderVNode\n vnode={renderFormItem}\n props={{\n value: fieldValue.value,\n onChange: fieldProps.value.onChange,\n defaultDom,\n formData: formData.value,\n action,\n listName: listName?.value,\n name: props.item.name,\n }}\n />\n )\n }\n\n if (extraRender) {\n defaultDom = (\n <div style=\"display: flex; flex-direction: row; justify-content: flex-start; align-items: center;\">\n {defaultDom}\n <RenderVNode\n vnode={extraRender}\n props={{\n formData: formData.value,\n listName: listName?.value,\n name: props.item.name,\n }}\n />\n </div>\n )\n }\n return (\n <FormColWrapper colProps={props.item.colProps} grid={mergeGrid.value}>\n <Form.Item {...restItemProps.value} v-slots={slotsGetter.value}>\n {defaultDom}\n </Form.Item>\n </FormColWrapper>\n )\n }\n },\n})\n"],"names":["ALL_ANTD_PROP_KEYS","IGNORE_WIDTH_VALUE_TYPE","SLOT_NAMES","name","inheritAttrs","props","item","type","Object","default","grid","Boolean","undefined","setup","action","formKey","prefixCls","formData","readonly","readonlyProps","disabledKeys","hiddenKeys","allDisabledKeys","updateHiddenKeys","updateDisabledKeys","useInjectForm","isList","listKey","listName","rowData","useInjectFormList","formSlotsContext","useInjectSlots","fieldValue","onValueChange","useFieldValue","namePath","computed","initialValue","convertValue","transform","fieldRef","ref","mergeGrid","value","fieldType","mergeReadonly","runFunction","mergeReadonlyProps","merge","linkageDisabledKeys","map","key","split","linkageHiddenKeys","isIgnoreWidth","ignoreWidth","includes","formItemProps","restItemProps","omitUndefined","pickKeys","htmlFor","rules","clearOnChange","newValue","clear","linkage","clearNamePaths","length","forEach","_a","path","covertFormName","filter","flat","get","set","fieldProps","baseProps","mergeProps","id","disabled","placeholder","options","treeData","allowClear","valueEnum","dependencies","request","params","onChange","args","_b","fieldPropsMap","fieldStyle","newStyle","style","width","fieldWidthSizeMap","isNumber","maxWidth","Reflect","deleteProperty","fieldClassName","isSizeEnum","className","slotsGetter","temp","slot","getSlot","_createVNode","RenderVNode","title","extraRender","extra","label","_Fragment","titleStyles","FormTitle","tooltip","watch","hidden","isEqual","immediate","onInit","clearValidate","render","FormColWrapper","colProps","renderFormItem","FieldComponent","fieldComponentMap","defaultDom","_mergeProps","Form","Item"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"FormItem.mjs","sources":["../../../../../../../packages/components/form/src/components/FormItem.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-09 16:56:49\n * @LastEditors: shen\n * @LastEditTime: 2025-09-24 09:26:47\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { ProFormItemType } from '../type'\n\nimport { defineComponent, computed, watch, ref } from 'vue'\nimport { Form } from 'ant-design-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { useInjectForm } from '../context/FormContext'\nimport { useFieldValue } from '../hooks/useFieldValue'\nimport { useInjectFormList } from '../context/FormListContext'\nimport { fieldComponentMap } from '../fieldMap'\nimport {\n get,\n isEqual,\n isNumber,\n merge,\n omitUndefined,\n pickKeys,\n RenderVNode,\n runFunction,\n set,\n} from '@pro-design-vue/utils'\nimport getSlot from '../utils/getSlot'\nimport FormColWrapper from './FormColWrapper'\nimport FormTitle from './FormTitle'\nimport covertFormName from '../utils/namePath'\nimport fieldPropsMap from '../utils/fieldPropsMap'\nimport fieldWidthSizeMap from '../utils/fieldWidthSizeMap'\n\nconst ALL_ANTD_PROP_KEYS = [\n 'autoLink',\n 'colon',\n 'hasFeedback',\n 'labelAlign',\n 'labelCol',\n 'htmlFor',\n 'required',\n 'validateFirst',\n 'validateStatus',\n 'validateTrigger',\n 'wrapperCol',\n 'rules',\n 'style',\n 'class',\n]\n\nconst IGNORE_WIDTH_VALUE_TYPE = ['switch', 'radioButton', 'radio', 'rate']\nconst SLOT_NAMES = ['extra', 'help']\n\nexport default defineComponent({\n name: 'FormItem',\n inheritAttrs: false,\n props: {\n item: {\n type: Object as PropType<ProFormItemType>,\n default: () => ({}),\n },\n grid: {\n type: Boolean,\n default: undefined,\n },\n },\n setup(props) {\n const {\n grid,\n action,\n formKey,\n prefixCls,\n formData,\n readonly,\n readonlyProps,\n disabledKeys,\n hiddenKeys,\n allDisabledKeys,\n updateHiddenKeys,\n updateDisabledKeys,\n } = useInjectForm()\n const { isList, listKey, listName, rowData } = useInjectFormList()\n const formSlotsContext = useInjectSlots()\n const { fieldValue, onValueChange } = useFieldValue<any>({\n isList,\n namePath: computed(() => props.item.name!),\n initialValue: props.item.initialValue,\n convertValue: props.item.convertValue,\n transform: props.item.transform,\n })\n const fieldRef = ref()\n const mergeGrid = computed(() => props.grid ?? grid?.value)\n const fieldType = computed(() => props.item.fieldType ?? 'text')\n const mergeReadonly = computed(() =>\n runFunction(props.item.readonly ?? readonly?.value, formData.value, rowData?.value),\n )\n const mergeReadonlyProps = computed(() =>\n merge({}, readonlyProps?.value, props.item.readonlyProps),\n )\n const linkageDisabledKeys = computed(() => disabledKeys.value.map((key) => key.split(':')[1]))\n const linkageHiddenKeys = computed(() => hiddenKeys.value.map((key) => key.split(':')[1]))\n const isIgnoreWidth = computed(\n () => props.item.ignoreWidth ?? IGNORE_WIDTH_VALUE_TYPE.includes(fieldType.value),\n )\n const formItemProps = computed(\n () => runFunction(props.item.formItemProps, formData.value) ?? {},\n )\n const restItemProps = computed(() =>\n omitUndefined({\n ...pickKeys(formItemProps.value, ALL_ANTD_PROP_KEYS),\n name: mergeReadonly.value ? undefined : props.item.name,\n htmlFor: mergeReadonly.value\n ? undefined\n : (formItemProps.value?.htmlFor ?? `form-${formKey.value ?? ''}-${props.item.key}`),\n rules: mergeReadonly.value\n ? undefined\n : runFunction(props.item.rules ?? formItemProps.value.rules, formData.value, action),\n }),\n )\n\n const clearOnChange = (newValue: any) => {\n const { clear } = props.item.linkage ?? {}\n if (clear) {\n const clearNamePaths = runFunction(clear, newValue, formData.value) ?? []\n if (clearNamePaths.length > 0) {\n clearNamePaths.forEach((namePath) => {\n const path = isList\n ? [...(listName?.value ?? [])!, ...covertFormName(namePath)!]\n .filter((item) => item !== undefined)\n .flat(1)\n : covertFormName(namePath)\n const value = get(formData.value, path!)\n if (typeof value !== 'undefined') {\n set(formData.value, path!, undefined)\n }\n })\n }\n }\n }\n\n const fieldProps = computed(() => {\n const baseProps = runFunction(props.item.fieldProps ?? {}, formData.value)\n const mergeProps = {\n ...baseProps,\n id: baseProps?.id ?? `form-${formKey.value ?? ''}-${props.item.key}`,\n disabled:\n (runFunction(\n props.item.disabled ?? baseProps?.disabled,\n formData.value,\n rowData?.value,\n ) ?? allDisabledKeys.value.includes(props.item.key as string))\n ? true\n : undefined,\n placeholder: props.item.placeholder ?? baseProps?.placeholder,\n options: props.item.options ?? baseProps?.options ?? baseProps?.treeData,\n allowClear: props.item.allowClear ?? baseProps?.allowClear ?? true,\n }\n\n return omitUndefined({\n valueEnum: props.item.valueEnum,\n dependencies: props.item.dependencies,\n readonly: mergeReadonly.value,\n readonlyProps: mergeReadonlyProps.value,\n request: props.item.request,\n params: props.item.params,\n onChange: (value: any, ...args) => {\n clearOnChange(value)\n onValueChange(value)\n props.item.onChange?.(value, ...args, action)\n },\n ...(fieldPropsMap[fieldType.value]\n ? pickKeys(mergeProps, fieldPropsMap[fieldType.value]!)\n : mergeProps),\n })\n })\n\n const fieldStyle = computed(() => {\n const baseProps = runFunction(props.item.fieldProps ?? {}, formData.value)\n const newStyle = {\n ...baseProps?.style,\n }\n\n if (props.item.width && !fieldWidthSizeMap[props.item.width]) {\n newStyle.width = isNumber(props.item.width) ? props.item.width + 'px' : props.item.width\n } else if (mergeGrid?.value) {\n newStyle.maxWidth = '100%'\n newStyle.width = '100%'\n }\n\n if (isIgnoreWidth.value) Reflect.deleteProperty(newStyle, 'width')\n\n return omitUndefined(newStyle)\n })\n\n const fieldClassName = computed(() => {\n const isSizeEnum = props.item.width && fieldWidthSizeMap[props.item.width]\n const className = {\n [`${prefixCls}-field`]: !!isSizeEnum,\n [`${prefixCls}-field-${props.item.width}`]: isSizeEnum && !isIgnoreWidth.value,\n }\n if (props.item.className) {\n className[props.item.className] = true\n }\n return className\n })\n\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(formItemProps.value[name], formSlotsContext)\n if (slot) {\n temp[name] = () => <RenderVNode vnode={slot} props={{ formData: formData.value }} />\n }\n })\n if (props.item.title) {\n const extraRender = getSlot(props.item.extra?.label, formSlotsContext)\n temp['label'] = () => (\n <>\n <div class={`${prefixCls}-item-title`} style={formItemProps.value.titleStyles}>\n <FormTitle title={props.item.title} tooltip={props.item.tooltip} />\n </div>\n <RenderVNode vnode={extraRender} props={{ formData: formData.value }} />\n </>\n )\n }\n return temp\n })\n\n watch(\n fieldValue,\n (newValue) => {\n const { linkage } = props.item\n if (linkage) {\n const { hidden, disabled } = linkage\n if (hidden) {\n const hiddenKeys = runFunction(hidden, newValue, formData.value) ?? []\n if (!isEqual(hiddenKeys, linkageHiddenKeys.value)) {\n updateHiddenKeys(\n props.item.key as string,\n isList ? hiddenKeys.map((key) => `${listKey}_${key}`) : hiddenKeys,\n )\n }\n }\n\n if (disabled) {\n const disabledKeys = runFunction(disabled, newValue, formData.value) ?? []\n if (!isEqual(disabledKeys, linkageDisabledKeys.value)) {\n updateDisabledKeys(\n props.item.key as string,\n isList ? disabledKeys.map((key) => `${listKey}_${key}`) : disabledKeys,\n )\n }\n }\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(fieldRef, () => {\n props.item.onInit?.(fieldRef.value)\n })\n\n watch(mergeReadonly, () => {\n if (mergeReadonly.value) {\n action.clearValidate(props.item.name)\n }\n })\n\n watch(\n () => restItemProps.value?.rules,\n () => {\n action.clearValidate(props.item.name)\n },\n )\n\n return () => {\n const render = getSlot(props.item.render, formSlotsContext)\n if (render) {\n return (\n <FormColWrapper colProps={props.item.colProps} grid={mergeGrid.value}>\n <RenderVNode\n vnode={render}\n props={{\n formData: formData.value,\n }}\n />\n </FormColWrapper>\n )\n }\n\n const renderFormItem = getSlot(props.item.renderFormItem, formSlotsContext)\n const extraRender = getSlot(props.item.extra?.item, formSlotsContext)\n const FieldComponent = fieldComponentMap[fieldType.value] ?? fieldComponentMap['text']\n let defaultDom = (\n <FieldComponent\n ref={fieldRef}\n value={fieldValue.value}\n {...fieldProps.value}\n style={fieldStyle.value}\n class={fieldClassName.value}\n />\n )\n if (renderFormItem) {\n defaultDom = (\n <RenderVNode\n vnode={renderFormItem}\n props={{\n value: fieldValue.value,\n onChange: fieldProps.value.onChange,\n defaultDom,\n formData: formData.value,\n action,\n listName: listName?.value,\n name: props.item.name,\n }}\n />\n )\n }\n\n if (extraRender) {\n defaultDom = (\n <div style=\"display: flex; flex-direction: row; justify-content: flex-start; align-items: center;\">\n {defaultDom}\n <RenderVNode\n vnode={extraRender}\n props={{\n formData: formData.value,\n listName: listName?.value,\n name: props.item.name,\n }}\n />\n </div>\n )\n }\n return (\n <FormColWrapper colProps={props.item.colProps} grid={mergeGrid.value}>\n <Form.Item {...restItemProps.value} v-slots={slotsGetter.value}>\n {defaultDom}\n </Form.Item>\n </FormColWrapper>\n )\n }\n },\n})\n"],"names":["ALL_ANTD_PROP_KEYS","IGNORE_WIDTH_VALUE_TYPE","SLOT_NAMES","name","inheritAttrs","props","item","type","Object","default","grid","Boolean","undefined","setup","action","formKey","prefixCls","formData","readonly","readonlyProps","disabledKeys","hiddenKeys","allDisabledKeys","updateHiddenKeys","updateDisabledKeys","useInjectForm","isList","listKey","listName","rowData","useInjectFormList","formSlotsContext","useInjectSlots","fieldValue","onValueChange","useFieldValue","namePath","computed","initialValue","convertValue","transform","fieldRef","ref","mergeGrid","value","fieldType","mergeReadonly","runFunction","mergeReadonlyProps","merge","linkageDisabledKeys","map","key","split","linkageHiddenKeys","isIgnoreWidth","ignoreWidth","includes","formItemProps","restItemProps","omitUndefined","pickKeys","htmlFor","rules","clearOnChange","newValue","clear","linkage","clearNamePaths","length","forEach","_a","path","covertFormName","filter","flat","get","set","fieldProps","baseProps","mergeProps","id","disabled","placeholder","options","treeData","allowClear","valueEnum","dependencies","request","params","onChange","args","_b","fieldPropsMap","fieldStyle","newStyle","style","width","fieldWidthSizeMap","isNumber","maxWidth","Reflect","deleteProperty","fieldClassName","isSizeEnum","className","slotsGetter","temp","slot","getSlot","_createVNode","RenderVNode","title","extraRender","extra","label","_Fragment","titleStyles","FormTitle","tooltip","watch","hidden","isEqual","immediate","onInit","clearValidate","render","FormColWrapper","colProps","renderFormItem","FieldComponent","fieldComponentMap","defaultDom","_mergeProps","Form","Item"],"mappings":"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"}
|
@@ -114,6 +114,7 @@ var QueryFilter = /* @__PURE__ */ defineComponent({
|
|
114
114
|
}
|
115
115
|
if (props.defaultColsNumber !== void 0) {
|
116
116
|
const oneRowControlsNumber = 24 / spanSize.value.span - 1;
|
117
|
+
console.log("\u{1F680} ~ showLength ~ oneRowControlsNumber:", oneRowControlsNumber);
|
117
118
|
return props.defaultColsNumber > oneRowControlsNumber ? oneRowControlsNumber : props.defaultColsNumber;
|
118
119
|
}
|
119
120
|
return Math.max(1, 24 / spanSize.value.span - 1);
|
@@ -150,7 +151,7 @@ var QueryFilter = /* @__PURE__ */ defineComponent({
|
|
150
151
|
}
|
151
152
|
return void 0;
|
152
153
|
});
|
153
|
-
const [collapsed, setCollapsed] = useMergedState(() => props.defaultCollapsed, {
|
154
|
+
const [collapsed, setCollapsed] = useMergedState(() => props.defaultCollapsed && !!props.submitter, {
|
154
155
|
value: computed(() => props.collapsed),
|
155
156
|
onChange: (val) => {
|
156
157
|
emit("collapse", val);
|
@@ -221,7 +222,7 @@ var QueryFilter = /* @__PURE__ */ defineComponent({
|
|
221
222
|
firstRowFull = colSpan === 24 && !item.hidden;
|
222
223
|
}
|
223
224
|
const hidden = item.hidden || // 如果收起了
|
224
|
-
|
225
|
+
collapsed.value && (firstRowFull || // 如果 超过显示长度 且 总长度超过了 24
|
225
226
|
totalSize.value > showLength.value) && !!index;
|
226
227
|
if (hidden) {
|
227
228
|
if (!props.preserve) {
|
@@ -249,7 +250,10 @@ var QueryFilter = /* @__PURE__ */ defineComponent({
|
|
249
250
|
return {
|
250
251
|
...item,
|
251
252
|
hidden,
|
252
|
-
formItemProps:
|
253
|
+
formItemProps: {
|
254
|
+
...item.title ? formItemFixStyle.value : {},
|
255
|
+
...item.formItemProps
|
256
|
+
},
|
253
257
|
colProps: {
|
254
258
|
span: colSpan
|
255
259
|
}
|
@@ -293,9 +297,16 @@ var QueryFilter = /* @__PURE__ */ defineComponent({
|
|
293
297
|
}), {
|
294
298
|
...slots,
|
295
299
|
submitter: ({
|
300
|
+
props: props2,
|
301
|
+
action,
|
296
302
|
defaultDoms
|
297
303
|
}) => {
|
298
|
-
|
304
|
+
var _a2;
|
305
|
+
return createVNode(Fragment, null, [slots.submitter ? (_a2 = slots.submitter) == null ? void 0 : _a2.call(slots, {
|
306
|
+
props: props2,
|
307
|
+
action,
|
308
|
+
defaultDoms
|
309
|
+
}) : defaultDoms, needCollapse.value !== false && createVNode("a", {
|
299
310
|
"class": `${prefixCls}-collapse-button`,
|
300
311
|
"onClick": () => setCollapsed(!collapsed.value)
|
301
312
|
}, [collapsed.value ? intl.getMessage("form.collapsed", "\u5C55\u5F00") : intl.getMessage("form.expand", "\u6536\u8D77"), !!hiddenNum.value && `(${hiddenNum.value})`, createVNode(DownOutlined, {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"QueryFilter.mjs","sources":["../../../../../../../packages/components/form/src/layouts/QueryFilter.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-28 13:01:45\n * @LastEditors: shen\n * @LastEditTime: 2025-09-21 23:26:49\n * @Description:\n */\nimport { ref, computed, defineComponent, watch, useTemplateRef } from 'vue'\nimport { queryFilterProps } from '../props'\nimport { useMergedState, usePrefixCls } from '@pro-design-vue/hooks'\nimport { isBrowser, merge, omit, omitUndefined } from '@pro-design-vue/utils'\nimport { ProFieldType } from '../fieldType'\nimport { DownOutlined } from '@ant-design/icons-vue'\nimport { useResizeObserver } from '@vueuse/core'\nimport { useFormExpose } from '../hooks/useFormExpose'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport BaseForm from '../base/BaseForm'\n\nimport type { ProFormActionType, ProFormItemType, SpanConfig } from '../type'\nimport type { FormItemProps, FormProps } from 'ant-design-vue'\n\nconst CONFIG_SPAN_BREAKPOINTS = {\n xs: 513,\n sm: 513,\n md: 785,\n lg: 992,\n xl: 1057,\n xxl: Infinity,\n}\n/** 配置表单列变化的容器宽度断点 */\nconst BREAKPOINTS = {\n vertical: [\n // [breakpoint, cols, layout]\n [513, 1, 'vertical'],\n [785, 2, 'vertical'],\n [1057, 3, 'vertical'],\n [Infinity, 4, 'vertical'],\n ],\n default: [\n [513, 1, 'vertical'],\n [701, 2, 'vertical'],\n [1062, 3, 'horizontal'],\n [1352, 3, 'horizontal'],\n [Infinity, 4, 'horizontal'],\n ],\n}\n\n/**\n * 合并用户和默认的配置\n *\n * @param layout\n * @param width\n */\nconst getSpanConfig = (\n layout: FormProps['layout'] = 'horizontal',\n width: number,\n span?: SpanConfig,\n): { span: number; layout: FormProps['layout'] } => {\n if (span && typeof span === 'number') {\n return {\n span,\n layout,\n }\n }\n\n const spanConfig: (string | number)[][] = span\n ? ['xs', 'sm', 'md', 'lg', 'xl', 'xxl'].map((key) => [\n CONFIG_SPAN_BREAKPOINTS[key as 'xs'],\n 24 / (span as any)[key as 'sm'],\n 'horizontal',\n ])\n : BREAKPOINTS[(layout as 'default') || 'default']\n const breakPoint = (spanConfig || BREAKPOINTS.default).find(\n (item) => width < (item[0] as number) + 16, // 16 = 2 * (ant-row -8px margin)\n )\n if (!breakPoint) {\n return {\n span: 8,\n layout: 'horizontal',\n }\n }\n return {\n span: 24 / (breakPoint[1] as number),\n layout: breakPoint?.[2] as 'horizontal',\n }\n}\n\nconst flatMapItems = (items: ProFormItemType[], ignoreRules?: boolean): ProFormItemType[] => {\n return items?.flatMap((item: any) => {\n if (item.fieldType === ProFieldType.GROUP && !item.title) {\n return item.props.children\n }\n if (ignoreRules) {\n return {\n ...item,\n rules: [],\n formItemProps: {\n ...item.formItemProps,\n rules: [],\n },\n }\n }\n return item\n })\n}\n\nconst defaultWidth = isBrowser() ? document?.body?.clientWidth : 1024\nexport default defineComponent({\n name: 'ProQueryFilter',\n inheritAttrs: false,\n props: {\n ...queryFilterProps(),\n },\n emits: ['collapse', 'resize'],\n setup(props, { slots, emit, expose, attrs }) {\n // totalSpan 统计控件占的位置,计算 offset 保证查询按钮在最后一列\n const totalSpan = ref(0)\n // totalSize 统计控件占的份数\n const totalSize = ref(0)\n // for split compute\n const currentSpan = ref(0)\n const intl = useIntl()\n const prefixCls = usePrefixCls('query-filter')\n const wrapEl = useTemplateRef<HTMLDivElement>('wrapper')\n const formRef = ref<InstanceType<typeof BaseForm> & ProFormActionType>()\n const processedList = ref<ProFormItemType[]>([])\n const [width, setWidth] = useMergedState(defaultWidth)\n const formExpose = useFormExpose(formRef)\n useResizeObserver(wrapEl, (entries) => {\n const entry = entries[0]\n const { width: newWidth, height } = entry?.contentRect || ({} as DOMRectReadOnly)\n if (width.value !== newWidth && newWidth > 17) {\n setWidth(newWidth)\n }\n emit('resize', newWidth, height)\n })\n\n const spanSize = computed(() => getSpanConfig(props.layout, width.value + 16, props.span))\n\n const showLength = computed(() => {\n if (props.defaultFormItemsNumber !== undefined) {\n return props.defaultFormItemsNumber\n }\n if (props.defaultColsNumber !== undefined) {\n const oneRowControlsNumber = 24 / spanSize.value.span - 1\n return props.defaultColsNumber > oneRowControlsNumber\n ? oneRowControlsNumber\n : props.defaultColsNumber\n }\n return Math.max(1, 24 / spanSize.value.span - 1)\n })\n\n const hiddenNum = computed(\n () => props.showHiddenNum && processedList.value.filter((item) => item.hidden).length,\n )\n\n const needCollapse = computed(() => {\n if (totalSpan.value < 24 || totalSize.value <= showLength.value) {\n return false\n }\n return true\n })\n\n const offset = computed(() => {\n const offsetSpan = (currentSpan.value % 24) + spanSize.value.span\n if (offsetSpan > 24) {\n return 24 - spanSize.value.span\n }\n return 24 - offsetSpan\n })\n\n /** 计算最大宽度防止溢出换行 */\n const formItemFixStyle = computed<FormItemProps | undefined>(() => {\n if (props.labelWidth && spanSize.value.layout !== 'vertical' && props.labelWidth !== 'auto') {\n return {\n labelCol: {\n flex: `0 0 ${props.labelWidth}px`,\n },\n wrapperCol: {\n style: {\n maxWidth: `calc(100% - ${props.labelWidth}px)`,\n },\n },\n style: {\n flexWrap: 'nowrap',\n },\n }\n }\n return undefined\n })\n\n const [collapsed, setCollapsed] = useMergedState<boolean | undefined>(\n () => props.defaultCollapsed,\n {\n value: computed(() => props.collapsed),\n onChange: (val) => {\n emit('collapse', val)\n },\n },\n )\n\n const formProps = computed(() => {\n return {\n ...omitUndefined(\n omit(props, [\n 'defaultCollapsed',\n 'collapsed',\n 'grid',\n 'showLoading',\n 'defaultColsNumber',\n 'searchGutter',\n // 'onFinish',\n 'submitOnLoading',\n 'preserve',\n 'submitter',\n 'ignoreRules',\n 'searchText',\n 'resetText',\n 'labelWidth',\n 'layout',\n 'items',\n 'gridSubmitter',\n 'rowProps',\n 'defaultFormItemsNumber',\n 'showHiddenNum',\n 'ignoreRules',\n 'onCollapse',\n 'onReset',\n ]),\n ),\n }\n })\n\n const submitterConfig = computed(() => {\n if (props.submitter === false) {\n return false\n }\n\n return merge(\n {\n style: {\n justifyContent: 'flex-end',\n },\n reverse: true,\n searchConfig: {\n submitText: props.searchText || intl.getMessage('form.search', '搜索'),\n resetText: props.resetText || intl.getMessage('form.reset', '重置'),\n },\n colProps: {\n span: spanSize.value.span,\n offset: offset.value,\n },\n },\n props.submitter,\n )\n })\n\n watch(\n [spanSize, collapsed, () => props.items],\n () => {\n let firstRowFull = false\n currentSpan.value = 0\n totalSize.value = 0\n totalSpan.value = 0\n if (props.items?.length) {\n processedList.value = flatMapItems(props.items, props.ignoreRules).map((item, index) => {\n // 如果 formItem 自己配置了 hidden,默认使用它自己的\n const colSize = item.colSize ?? 1\n const colSpan = Math.min(spanSize.value.span * (colSize || 1), 24)\n // 计算总的 totalSpan 长度\n totalSpan.value += colSpan\n // 计算总的 colSize 长度\n totalSize.value += colSize\n\n if (index === 0) {\n firstRowFull = colSpan === 24 && !item.hidden\n }\n\n const hidden: boolean | undefined =\n item.hidden ||\n // 如果收起了\n (props.submitter !== false &&\n collapsed.value &&\n (firstRowFull ||\n // 如果 超过显示长度 且 总长度超过了 24\n totalSize.value > showLength.value) &&\n !!index)\n\n if (hidden) {\n if (!props.preserve) {\n return {\n ...item,\n colProps: { span: 0 },\n hidden: true,\n }\n }\n return {\n ...item,\n colProps: { span: colSpan },\n hidden: true,\n }\n }\n\n if (24 - (currentSpan.value % 24) < colSpan) {\n // 如果当前行空余位置放不下,那么折行\n totalSpan.value += 24 - (currentSpan.value % 24)\n currentSpan.value += 24 - (currentSpan.value % 24)\n }\n\n currentSpan.value += colSpan\n return {\n ...item,\n hidden,\n formItemProps: formItemFixStyle.value,\n colProps: {\n span: colSpan,\n },\n }\n })\n } else {\n processedList.value = []\n }\n },\n {\n immediate: true,\n },\n )\n\n expose({\n formRef,\n ...formExpose,\n })\n\n return () => (\n <div class={`${prefixCls}-wrap`} ref=\"wrapper\" {...attrs}>\n <BaseForm\n ref={formRef}\n class={prefixCls}\n {...formProps.value}\n grid\n gridSubmitter\n rowProps={{\n gutter: props.searchGutter,\n justify: 'start',\n class: `${prefixCls}-row`,\n }}\n showLoading={false}\n submitter={submitterConfig.value}\n items={processedList.value}\n layout={spanSize.value.layout}\n v-slots={{\n ...slots,\n submitter: ({ defaultDoms }) => {\n return (\n <>\n {defaultDoms}\n {needCollapse.value !== false && (\n <a\n class={`${prefixCls}-collapse-button`}\n onClick={() => setCollapsed(!collapsed.value)}\n >\n {collapsed.value\n ? intl.getMessage('form.collapsed', '展开')\n : intl.getMessage('form.expand', '收起')}\n {!!hiddenNum.value && `(${hiddenNum.value})`}\n <DownOutlined\n style={{\n marginInlineStart: '0.5em',\n transition: '0.3s all',\n transform: `rotate(${collapsed.value ? 0 : 0.5}turn)`,\n }}\n />\n </a>\n )}\n </>\n )\n },\n }}\n onReset={(values) => {\n if (props.resetOnSubmit) {\n formRef.value?.submit()\n }\n props.onReset?.(values)\n }}\n />\n </div>\n )\n },\n})\n"],"names":["CONFIG_SPAN_BREAKPOINTS","xs","sm","md","lg","xl","xxl","Infinity","BREAKPOINTS","vertical","default","getSpanConfig","layout","width","span","spanConfig","map","key","breakPoint","find","item","flatMapItems","items","ignoreRules","flatMap","fieldType","ProFieldType","GROUP","title","props","children","rules","formItemProps","defaultWidth","isBrowser","document","body","clientWidth","name","inheritAttrs","queryFilterProps","emits","setup","slots","emit","expose","attrs","totalSpan","ref","totalSize","currentSpan","intl","useIntl","prefixCls","usePrefixCls","wrapEl","useTemplateRef","formRef","processedList","setWidth","useMergedState","formExpose","useFormExpose","useResizeObserver","entries","entry","newWidth","height","contentRect","value","spanSize","computed","showLength","defaultFormItemsNumber","undefined","defaultColsNumber","oneRowControlsNumber","Math","max","hiddenNum","showHiddenNum","filter","hidden","length","needCollapse","offset","offsetSpan","formItemFixStyle","labelWidth","labelCol","flex","wrapperCol","style","maxWidth","flexWrap","collapsed","setCollapsed","defaultCollapsed","onChange","val","formProps","omitUndefined","omit","submitterConfig","submitter","merge","justifyContent","reverse","searchConfig","submitText","searchText","getMessage","resetText","colProps","watch","_a","firstRowFull","index","colSize","colSpan","min","preserve","immediate","_createVNode","_mergeProps","BaseForm","gutter","searchGutter","justify","class","values","resetOnSubmit","submit","onReset","defaultDoms","_Fragment","onClick","DownOutlined","marginInlineStart","transition","transform"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"QueryFilter.mjs","sources":["../../../../../../../packages/components/form/src/layouts/QueryFilter.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-28 13:01:45\n * @LastEditors: shen\n * @LastEditTime: 2025-09-24 10:53:54\n * @Description:\n */\nimport { ref, computed, defineComponent, watch, useTemplateRef } from 'vue'\nimport { queryFilterProps } from '../props'\nimport { useMergedState, usePrefixCls } from '@pro-design-vue/hooks'\nimport { isBrowser, merge, omit, omitUndefined } from '@pro-design-vue/utils'\nimport { ProFieldType } from '../fieldType'\nimport { DownOutlined } from '@ant-design/icons-vue'\nimport { useResizeObserver } from '@vueuse/core'\nimport { useFormExpose } from '../hooks/useFormExpose'\nimport { useIntl } from '@pro-design-vue/components/config-provider'\nimport BaseForm from '../base/BaseForm'\n\nimport type { ProFormActionType, ProFormItemType, SpanConfig } from '../type'\nimport type { FormItemProps, FormProps } from 'ant-design-vue'\n\nconst CONFIG_SPAN_BREAKPOINTS = {\n xs: 513,\n sm: 513,\n md: 785,\n lg: 992,\n xl: 1057,\n xxl: Infinity,\n}\n/** 配置表单列变化的容器宽度断点 */\nconst BREAKPOINTS = {\n vertical: [\n // [breakpoint, cols, layout]\n [513, 1, 'vertical'],\n [785, 2, 'vertical'],\n [1057, 3, 'vertical'],\n [Infinity, 4, 'vertical'],\n ],\n default: [\n [513, 1, 'vertical'],\n [701, 2, 'vertical'],\n [1062, 3, 'horizontal'],\n [1352, 3, 'horizontal'],\n [Infinity, 4, 'horizontal'],\n ],\n}\n\n/**\n * 合并用户和默认的配置\n *\n * @param layout\n * @param width\n */\nconst getSpanConfig = (\n layout: FormProps['layout'] = 'horizontal',\n width: number,\n span?: SpanConfig,\n): { span: number; layout: FormProps['layout'] } => {\n if (span && typeof span === 'number') {\n return {\n span,\n layout,\n }\n }\n\n const spanConfig: (string | number)[][] = span\n ? ['xs', 'sm', 'md', 'lg', 'xl', 'xxl'].map((key) => [\n CONFIG_SPAN_BREAKPOINTS[key as 'xs'],\n 24 / (span as any)[key as 'sm'],\n 'horizontal',\n ])\n : BREAKPOINTS[(layout as 'default') || 'default']\n const breakPoint = (spanConfig || BREAKPOINTS.default).find(\n (item) => width < (item[0] as number) + 16, // 16 = 2 * (ant-row -8px margin)\n )\n if (!breakPoint) {\n return {\n span: 8,\n layout: 'horizontal',\n }\n }\n return {\n span: 24 / (breakPoint[1] as number),\n layout: breakPoint?.[2] as 'horizontal',\n }\n}\n\nconst flatMapItems = (items: ProFormItemType[], ignoreRules?: boolean): ProFormItemType[] => {\n return items?.flatMap((item: any) => {\n if (item.fieldType === ProFieldType.GROUP && !item.title) {\n return item.props.children\n }\n if (ignoreRules) {\n return {\n ...item,\n rules: [],\n formItemProps: {\n ...item.formItemProps,\n rules: [],\n },\n }\n }\n return item\n })\n}\n\nconst defaultWidth = isBrowser() ? document?.body?.clientWidth : 1024\nexport default defineComponent({\n name: 'ProQueryFilter',\n inheritAttrs: false,\n props: {\n ...queryFilterProps(),\n },\n emits: ['collapse', 'resize'],\n setup(props, { slots, emit, expose, attrs }) {\n // totalSpan 统计控件占的位置,计算 offset 保证查询按钮在最后一列\n const totalSpan = ref(0)\n // totalSize 统计控件占的份数\n const totalSize = ref(0)\n // for split compute\n const currentSpan = ref(0)\n const intl = useIntl()\n const prefixCls = usePrefixCls('query-filter')\n const wrapEl = useTemplateRef<HTMLDivElement>('wrapper')\n const formRef = ref<InstanceType<typeof BaseForm> & ProFormActionType>()\n const processedList = ref<ProFormItemType[]>([])\n const [width, setWidth] = useMergedState(defaultWidth)\n const formExpose = useFormExpose(formRef)\n useResizeObserver(wrapEl, (entries) => {\n const entry = entries[0]\n const { width: newWidth, height } = entry?.contentRect || ({} as DOMRectReadOnly)\n if (width.value !== newWidth && newWidth > 17) {\n setWidth(newWidth)\n }\n emit('resize', newWidth, height)\n })\n\n const spanSize = computed(() => getSpanConfig(props.layout, width.value + 16, props.span))\n\n const showLength = computed(() => {\n if (props.defaultFormItemsNumber !== undefined) {\n return props.defaultFormItemsNumber\n }\n if (props.defaultColsNumber !== undefined) {\n const oneRowControlsNumber = 24 / spanSize.value.span - 1\n console.log('🚀 ~ showLength ~ oneRowControlsNumber:', oneRowControlsNumber)\n return props.defaultColsNumber > oneRowControlsNumber\n ? oneRowControlsNumber\n : props.defaultColsNumber\n }\n return Math.max(1, 24 / spanSize.value.span - 1)\n })\n\n const hiddenNum = computed(\n () => props.showHiddenNum && processedList.value.filter((item) => item.hidden).length,\n )\n\n const needCollapse = computed(() => {\n if (totalSpan.value < 24 || totalSize.value <= showLength.value) {\n return false\n }\n return true\n })\n\n const offset = computed(() => {\n const offsetSpan = (currentSpan.value % 24) + spanSize.value.span\n if (offsetSpan > 24) {\n return 24 - spanSize.value.span\n }\n return 24 - offsetSpan\n })\n\n /** 计算最大宽度防止溢出换行 */\n const formItemFixStyle = computed<FormItemProps | undefined>(() => {\n if (props.labelWidth && spanSize.value.layout !== 'vertical' && props.labelWidth !== 'auto') {\n return {\n labelCol: {\n flex: `0 0 ${props.labelWidth}px`,\n },\n wrapperCol: {\n style: {\n maxWidth: `calc(100% - ${props.labelWidth}px)`,\n },\n },\n style: {\n flexWrap: 'nowrap',\n },\n }\n }\n return undefined\n })\n\n const [collapsed, setCollapsed] = useMergedState<boolean | undefined>(\n () => props.defaultCollapsed && !!props.submitter,\n {\n value: computed(() => props.collapsed),\n onChange: (val) => {\n emit('collapse', val)\n },\n },\n )\n\n const formProps = computed(() => {\n return {\n ...omitUndefined(\n omit(props, [\n 'defaultCollapsed',\n 'collapsed',\n 'grid',\n 'showLoading',\n 'defaultColsNumber',\n 'searchGutter',\n // 'onFinish',\n 'submitOnLoading',\n 'preserve',\n 'submitter',\n 'ignoreRules',\n 'searchText',\n 'resetText',\n 'labelWidth',\n 'layout',\n 'items',\n 'gridSubmitter',\n 'rowProps',\n 'defaultFormItemsNumber',\n 'showHiddenNum',\n 'ignoreRules',\n 'onCollapse',\n 'onReset',\n ]),\n ),\n }\n })\n\n const submitterConfig = computed(() => {\n if (props.submitter === false) {\n return false\n }\n\n return merge(\n {\n style: {\n justifyContent: 'flex-end',\n },\n reverse: true,\n searchConfig: {\n submitText: props.searchText || intl.getMessage('form.search', '搜索'),\n resetText: props.resetText || intl.getMessage('form.reset', '重置'),\n },\n colProps: {\n span: spanSize.value.span,\n offset: offset.value,\n },\n },\n props.submitter,\n )\n })\n\n watch(\n [spanSize, collapsed, () => props.items],\n () => {\n let firstRowFull = false\n currentSpan.value = 0\n totalSize.value = 0\n totalSpan.value = 0\n if (props.items?.length) {\n processedList.value = flatMapItems(props.items, props.ignoreRules).map((item, index) => {\n // 如果 formItem 自己配置了 hidden,默认使用它自己的\n const colSize = item.colSize ?? 1\n const colSpan = Math.min(spanSize.value.span * (colSize || 1), 24)\n // 计算总的 totalSpan 长度\n totalSpan.value += colSpan\n // 计算总的 colSize 长度\n totalSize.value += colSize\n\n if (index === 0) {\n firstRowFull = colSpan === 24 && !item.hidden\n }\n\n const hidden: boolean | undefined =\n item.hidden ||\n // 如果收起了\n\n (collapsed.value &&\n (firstRowFull ||\n // 如果 超过显示长度 且 总长度超过了 24\n totalSize.value > showLength.value) &&\n !!index)\n\n if (hidden) {\n if (!props.preserve) {\n return {\n ...item,\n colProps: { span: 0 },\n hidden: true,\n }\n }\n return {\n ...item,\n colProps: { span: colSpan },\n hidden: true,\n }\n }\n\n if (24 - (currentSpan.value % 24) < colSpan) {\n // 如果当前行空余位置放不下,那么折行\n totalSpan.value += 24 - (currentSpan.value % 24)\n currentSpan.value += 24 - (currentSpan.value % 24)\n }\n\n currentSpan.value += colSpan\n return {\n ...item,\n hidden,\n formItemProps: {\n ...(item.title ? formItemFixStyle.value : {}),\n ...item.formItemProps,\n },\n colProps: {\n span: colSpan,\n },\n }\n })\n } else {\n processedList.value = []\n }\n },\n {\n immediate: true,\n },\n )\n\n expose({\n formRef,\n ...formExpose,\n })\n\n return () => (\n <div class={`${prefixCls}-wrap`} ref=\"wrapper\" {...attrs}>\n <BaseForm\n ref={formRef}\n class={prefixCls}\n {...formProps.value}\n grid\n gridSubmitter\n rowProps={{\n gutter: props.searchGutter,\n justify: 'start',\n class: `${prefixCls}-row`,\n }}\n showLoading={false}\n submitter={submitterConfig.value}\n items={processedList.value}\n layout={spanSize.value.layout}\n v-slots={{\n ...slots,\n submitter: ({ props, action, defaultDoms }) => {\n return (\n <>\n {slots.submitter\n ? slots.submitter?.({ props, action, defaultDoms })\n : defaultDoms}\n {needCollapse.value !== false && (\n <a\n class={`${prefixCls}-collapse-button`}\n onClick={() => setCollapsed(!collapsed.value)}\n >\n {collapsed.value\n ? intl.getMessage('form.collapsed', '展开')\n : intl.getMessage('form.expand', '收起')}\n {!!hiddenNum.value && `(${hiddenNum.value})`}\n <DownOutlined\n style={{\n marginInlineStart: '0.5em',\n transition: '0.3s all',\n transform: `rotate(${collapsed.value ? 0 : 0.5}turn)`,\n }}\n />\n </a>\n )}\n </>\n )\n },\n }}\n onReset={(values) => {\n if (props.resetOnSubmit) {\n formRef.value?.submit()\n }\n props.onReset?.(values)\n }}\n />\n </div>\n )\n },\n})\n"],"names":["CONFIG_SPAN_BREAKPOINTS","xs","sm","md","lg","xl","xxl","Infinity","BREAKPOINTS","vertical","default","getSpanConfig","layout","width","span","spanConfig","map","key","breakPoint","find","item","flatMapItems","items","ignoreRules","flatMap","fieldType","ProFieldType","GROUP","title","props","children","rules","formItemProps","defaultWidth","isBrowser","document","body","clientWidth","name","inheritAttrs","queryFilterProps","emits","setup","slots","emit","expose","attrs","totalSpan","ref","totalSize","currentSpan","intl","useIntl","prefixCls","usePrefixCls","wrapEl","useTemplateRef","formRef","processedList","setWidth","useMergedState","formExpose","useFormExpose","useResizeObserver","entries","entry","newWidth","height","contentRect","value","spanSize","computed","showLength","defaultFormItemsNumber","undefined","defaultColsNumber","oneRowControlsNumber","console","log","Math","max","hiddenNum","showHiddenNum","filter","hidden","length","needCollapse","offset","offsetSpan","formItemFixStyle","labelWidth","labelCol","flex","wrapperCol","style","maxWidth","flexWrap","collapsed","setCollapsed","defaultCollapsed","submitter","onChange","val","formProps","omitUndefined","omit","submitterConfig","merge","justifyContent","reverse","searchConfig","submitText","searchText","getMessage","resetText","colProps","watch","_a","firstRowFull","index","colSize","colSpan","min","preserve","immediate","_createVNode","_mergeProps","BaseForm","gutter","searchGutter","justify","class","values","resetOnSubmit","submit","onReset","action","defaultDoms","_Fragment","onClick","DownOutlined","marginInlineStart","transition","transform"],"mappings":";;;;;;;;;;;;;;AAAA,IAAA,EAAA;AAqBA,MAAMA,uBAAAA,GAA0B;AAAA,EAC9BC,EAAAA,EAAI,GAAA;AAAA,EACJC,EAAAA,EAAI,GAAA;AAAA,EACJC,EAAAA,EAAI,GAAA;AAAA,EACJC,EAAAA,EAAI,GAAA;AAAA,EACJC,EAAAA,EAAI,IAAA;AAAA,EACJC,GAAAA,EAAKC;AACP,CAAA;AAEA,MAAMC,WAAAA,GAAc;AAAA,EAClBC,QAAAA,EAAU;AAAA;AAAA,IAER,CAAC,GAAA,EAAK,CAAA,EAAG,UAAU,CAAA;AAAA,IACnB,CAAC,GAAA,EAAK,CAAA,EAAG,UAAU,CAAA;AAAA,IACnB,CAAC,IAAA,EAAM,CAAA,EAAG,UAAU,CAAA;AAAA,IACpB,CAACF,QAAAA,EAAU,CAAA,EAAG,UAAU;AAAA,GAAC;AAAA,EAE3BG,OAAAA,EAAS,CACP,CAAC,GAAA,EAAK,CAAA,EAAG,UAAU,CAAA,EACnB,CAAC,GAAA,EAAK,CAAA,EAAG,UAAU,CAAA,EACnB,CAAC,MAAM,CAAA,EAAG,YAAY,CAAA,EACtB,CAAC,IAAA,EAAM,CAAA,EAAG,YAAY,CAAA,EACtB,CAACH,QAAAA,EAAU,CAAA,EAAG,YAAY,CAAC;AAE/B,CAAA;AAQA,MAAMI,aAAAA,GAAgBA,CACpBC,MAAAA,GAA8B,YAAA,EAC9BC,OACAC,IAAAA,KACkD;AAClD,EAAA,IAAIA,IAAAA,IAAQ,OAAOA,IAAAA,KAAS,QAAA,EAAU;AACpC,IAAA,OAAO;AAAA,MACLA,IAAAA;AAAAA,MACAF;AAAAA,KACF;AAAA,EACF;AAEA,EAAA,MAAMG,UAAAA,GAAoCD,IAAAA,GACtC,CAAC,IAAA,EAAM,IAAA,EAAM,MAAM,IAAA,EAAM,IAAA,EAAM,KAAK,CAAA,CAAEE,GAAAA,CAAKC,CAAAA,GAAAA,KAAQ,CACjDjB,uBAAAA,CAAwBiB,GAAG,CAAA,EAC3B,EAAA,GAAMH,IAAAA,CAAaG,GAAG,CAAA,EACtB,YAAY,CACb,CAAA,GACDT,WAAAA,CAAaI,MAAAA,IAAwB,SAAS,CAAA;AAClD,EAAA,MAAMM,UAAAA,GAAAA,CAAcH,UAAAA,IAAcP,WAAAA,CAAYE,OAAAA,EAASS,IAAAA;AAAAA,IACpDC,CAAAA,IAAAA,KAASP,KAAAA,GAASO,IAAAA,CAAK,CAAC,CAAA,GAAe;AAAA;AAAA,GAC1C;AACA,EAAA,IAAI,CAACF,UAAAA,EAAY;AACf,IAAA,OAAO;AAAA,MACLJ,IAAAA,EAAM,CAAA;AAAA,MACNF,MAAAA,EAAQ;AAAA,KACV;AAAA,EACF;AACA,EAAA,OAAO;AAAA,IACLE,IAAAA,EAAM,EAAA,GAAMI,UAAAA,CAAW,CAAC,CAAA;AAAA,IACxBN,QAAQM,UAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,UAAAA,CAAa,CAAA;AAAA,GACvB;AACF,CAAA;AAEA,MAAMG,YAAAA,GAAeA,CAACC,KAAAA,EAA0BC,WAAAA,KAA6C;AAC3F,EAAA,OAAOD,KAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,KAAAA,CAAOE,QAASJ,CAAAA,IAAAA,KAAc;AACnC,IAAA,IAAIA,KAAKK,SAAAA,KAAcC,YAAAA,CAAaC,KAAAA,IAAS,CAACP,KAAKQ,KAAAA,EAAO;AACxD,MAAA,OAAOR,KAAKS,KAAAA,CAAMC,QAAAA;AAAAA,IACpB;AACA,IAAA,IAAIP,WAAAA,EAAa;AACf,MAAA,OAAO;AAAA,QACL,GAAGH,IAAAA;AAAAA,QACHW,OAAO,EAAA;AAAA,QACPC,aAAAA,EAAe;AAAA,UACb,GAAGZ,IAAAA,CAAKY,aAAAA;AAAAA,UACRD,OAAO;AAAA;AACT,OACF;AAAA,IACF;AACA,IAAA,OAAOX,IAAAA;AAAAA,EACT,CAAA,CAAA;AACF,CAAA;AAEA,MAAMa,eAAeC,SAAAA,EAAU,GAAA,CAAIC,EAAAA,GAAAA,QAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,QAAAA,CAAUC,IAAAA,KAAVD,mBAAgBE,WAAAA,GAAc,IAAA;AACjE,kDAA+B;AAAA,EAC7BC,IAAAA,EAAM,gBAAA;AAAA,EACNC,YAAAA,EAAc,KAAA;AAAA,EACdV,KAAAA,EAAO;AAAA,IACL,GAAGW,gBAAAA;AAAiB,GACtB;AAAA,EACAC,KAAAA,EAAO,CAAC,UAAA,EAAY,QAAQ,CAAA;AAAA,EAC5BC,MAAMb,KAAAA,EAAO;AAAA,IAAEc,KAAAA;AAAAA,IAAOC,IAAAA;AAAAA,IAAMC,MAAAA;AAAAA,IAAQC;AAAAA,GAAM,EAAG;AAE3C,IAAA,MAAMC,SAAAA,GAAYC,IAAI,CAAC,CAAA;AAEvB,IAAA,MAAMC,SAAAA,GAAYD,IAAI,CAAC,CAAA;AAEvB,IAAA,MAAME,WAAAA,GAAcF,IAAI,CAAC,CAAA;AACzB,IAAA,MAAMG,OAAOC,OAAAA,EAAQ;AACrB,IAAA,MAAMC,SAAAA,GAAYC,aAAa,cAAc,CAAA;AAC7C,IAAA,MAAMC,MAAAA,GAASC,eAA+B,SAAS,CAAA;AACvD,IAAA,MAAMC,UAAUT,GAAAA,EAAuD;AACvE,IAAA,MAAMU,aAAAA,GAAgBV,GAAAA,CAAuB,EAAE,CAAA;AAC/C,IAAA,MAAM,CAACnC,KAAAA,EAAO8C,QAAQ,CAAA,GAAIC,eAAe3B,YAAY,CAAA;AACrD,IAAA,MAAM4B,UAAAA,GAAaC,cAAcL,OAAO,CAAA;AACxCM,IAAAA,iBAAAA,CAAkBR,QAASS,CAAAA,OAAAA,KAAY;AACrC,MAAA,MAAMC,KAAAA,GAAQD,QAAQ,CAAC,CAAA;AACvB,MAAA,MAAM;AAAA,QAAEnD,KAAAA,EAAOqD,QAAAA;AAAAA,QAAUC;AAAAA,OAAO,GAAA,CAAIF,KAAAA,IAAAA,IAAAA,GAAAA,MAAAA,GAAAA,KAAAA,CAAOG,WAAAA,KAAgB,EAAC;AAC5D,MAAA,IAAIvD,KAAAA,CAAMwD,KAAAA,KAAUH,QAAAA,IAAYA,QAAAA,GAAW,EAAA,EAAI;AAC7CP,QAAAA,QAAAA,CAASO,QAAQ,CAAA;AAAA,MACnB;AACAtB,MAAAA,IAAAA,CAAK,QAAA,EAAUsB,UAAUC,MAAM,CAAA;AAAA,IACjC,CAAC,CAAA;AAED,IAAA,MAAMG,QAAAA,GAAWC,QAAAA,CAAS,MAAM5D,aAAAA,CAAckB,KAAAA,CAAMjB,MAAAA,EAAQC,KAAAA,CAAMwD,KAAAA,GAAQ,EAAA,EAAIxC,KAAAA,CAAMf,IAAI,CAAC,CAAA;AAEzF,IAAA,MAAM0D,UAAAA,GAAaD,SAAS,MAAM;AAChC,MAAA,IAAI1C,KAAAA,CAAM4C,2BAA2BC,MAAAA,EAAW;AAC9C,QAAA,OAAO7C,KAAAA,CAAM4C,sBAAAA;AAAAA,MACf;AACA,MAAA,IAAI5C,KAAAA,CAAM8C,sBAAsBD,MAAAA,EAAW;AACzC,QAAA,MAAME,oBAAAA,GAAuB,EAAA,GAAKN,QAAAA,CAASD,KAAAA,CAAMvD,IAAAA,GAAO,CAAA;AACxD+D,QAAAA,OAAAA,CAAQC,GAAAA,CAAI,kDAA2CF,oBAAoB,CAAA;AAC3E,QAAA,OAAO/C,KAAAA,CAAM8C,iBAAAA,GAAoBC,oBAAAA,GAC7BA,oBAAAA,GACA/C,KAAAA,CAAM8C,iBAAAA;AAAAA,MACZ;AACA,MAAA,OAAOI,KAAKC,GAAAA,CAAI,CAAA,EAAG,KAAKV,QAAAA,CAASD,KAAAA,CAAMvD,OAAO,CAAC,CAAA;AAAA,IACjD,CAAC,CAAA;AAED,IAAA,MAAMmE,SAAAA,GAAYV,QAAAA,CAChB,MAAM1C,KAAAA,CAAMqD,aAAAA,IAAiBxB,aAAAA,CAAcW,KAAAA,CAAMc,MAAAA,CAAQ/D,CAAAA,IAAAA,KAASA,IAAAA,CAAKgE,MAAM,CAAA,CAAEC,MACjF,CAAA;AAEA,IAAA,MAAMC,YAAAA,GAAef,SAAS,MAAM;AAClC,MAAA,IAAIxB,UAAUsB,KAAAA,GAAQ,EAAA,IAAMpB,SAAAA,CAAUoB,KAAAA,IAASG,WAAWH,KAAAA,EAAO;AAC/D,QAAA,OAAO,KAAA;AAAA,MACT;AACA,MAAA,OAAO,IAAA;AAAA,IACT,CAAC,CAAA;AAED,IAAA,MAAMkB,MAAAA,GAAShB,SAAS,MAAM;AAC5B,MAAA,MAAMiB,UAAAA,GAActC,WAAAA,CAAYmB,KAAAA,GAAQ,EAAA,GAAMC,SAASD,KAAAA,CAAMvD,IAAAA;AAC7D,MAAA,IAAI0E,aAAa,EAAA,EAAI;AACnB,QAAA,OAAO,EAAA,GAAKlB,SAASD,KAAAA,CAAMvD,IAAAA;AAAAA,MAC7B;AACA,MAAA,OAAO,EAAA,GAAK0E,UAAAA;AAAAA,IACd,CAAC,CAAA;AAGD,IAAA,MAAMC,gBAAAA,GAAmBlB,SAAoC,MAAM;AACjE,MAAA,IAAI1C,KAAAA,CAAM6D,cAAcpB,QAAAA,CAASD,KAAAA,CAAMzD,WAAW,UAAA,IAAciB,KAAAA,CAAM6D,eAAe,MAAA,EAAQ;AAC3F,QAAA,OAAO;AAAA,UACLC,QAAAA,EAAU;AAAA,YACRC,IAAAA,EAAM,CAAA,IAAA,EAAO/D,KAAAA,CAAM6D,UAAU,CAAA,EAAA;AAAA,WAC/B;AAAA,UACAG,UAAAA,EAAY;AAAA,YACVC,KAAAA,EAAO;AAAA,cACLC,QAAAA,EAAU,CAAA,YAAA,EAAelE,KAAAA,CAAM6D,UAAU,CAAA,GAAA;AAAA;AAC3C,WACF;AAAA,UACAI,KAAAA,EAAO;AAAA,YACLE,QAAAA,EAAU;AAAA;AACZ,SACF;AAAA,MACF;AACA,MAAA,OAAOtB,MAAAA;AAAAA,IACT,CAAC,CAAA;AAED,IAAA,MAAM,CAACuB,SAAAA,EAAWC,YAAY,CAAA,GAAItC,cAAAA,CAChC,MAAM/B,KAAAA,CAAMsE,gBAAAA,IAAoB,CAAC,CAACtE,KAAAA,CAAMuE,SAAAA,EACxC;AAAA,MACE/B,KAAAA,EAAOE,QAAAA,CAAS,MAAM1C,KAAAA,CAAMoE,SAAS,CAAA;AAAA,MACrCI,UAAWC,CAAAA,GAAAA,KAAQ;AACjB1D,QAAAA,IAAAA,CAAK,YAAY0D,GAAG,CAAA;AAAA,MACtB;AAAA,KAEJ,CAAA;AAEA,IAAA,MAAMC,SAAAA,GAAYhC,SAAS,MAAM;AAC/B,MAAA,OAAO;AAAA,QACL,GAAGiC,aAAAA,CACDC,IAAAA,CAAK5E,KAAAA,EAAO;AAAA,UACV,kBAAA;AAAA,UACA,WAAA;AAAA,UACA,MAAA;AAAA,UACA,aAAA;AAAA,UACA,mBAAA;AAAA,UACA,cAAA;AAAA;AAAA,UAEA,iBAAA;AAAA,UACA,UAAA;AAAA,UACA,WAAA;AAAA,UACA,aAAA;AAAA,UACA,YAAA;AAAA,UACA,WAAA;AAAA,UACA,YAAA;AAAA,UACA,QAAA;AAAA,UACA,OAAA;AAAA,UACA,eAAA;AAAA,UACA,UAAA;AAAA,UACA,wBAAA;AAAA,UACA,eAAA;AAAA,UACA,aAAA;AAAA,UACA,YAAA;AAAA,UACA;AAAA,SACD,CACH;AAAA,OACF;AAAA,IACF,CAAC,CAAA;AAED,IAAA,MAAM6E,eAAAA,GAAkBnC,SAAS,MAAM;AACrC,MAAA,IAAI1C,KAAAA,CAAMuE,cAAc,KAAA,EAAO;AAC7B,QAAA,OAAO,KAAA;AAAA,MACT;AAEA,MAAA,OAAOO,KAAAA,CACL;AAAA,QACEb,KAAAA,EAAO;AAAA,UACLc,cAAAA,EAAgB;AAAA,SAClB;AAAA,QACAC,OAAAA,EAAS,IAAA;AAAA,QACTC,YAAAA,EAAc;AAAA,UACZC,YAAYlF,KAAAA,CAAMmF,UAAAA,IAAc7D,IAAAA,CAAK8D,UAAAA,CAAW,eAAe,cAAI,CAAA;AAAA,UACnEC,WAAWrF,KAAAA,CAAMqF,SAAAA,IAAa/D,IAAAA,CAAK8D,UAAAA,CAAW,cAAc,cAAI;AAAA,SAClE;AAAA,QACAE,QAAAA,EAAU;AAAA,UACRrG,IAAAA,EAAMwD,SAASD,KAAAA,CAAMvD,IAAAA;AAAAA,UACrByE,QAAQA,MAAAA,CAAOlB;AAAAA;AACjB,OACF,EACAxC,MAAMuE,SACR,CAAA;AAAA,IACF,CAAC,CAAA;AAEDgB,IAAAA,KAAAA,CACE,CAAC9C,QAAAA,EAAU2B,SAAAA,EAAW,MAAMpE,KAAAA,CAAMP,KAAK,GACvC,MAAM;AApQZ,MAAA,IAAA+F,GAAAA;AAqQQ,MAAA,IAAIC,YAAAA,GAAe,KAAA;AACnBpE,MAAAA,WAAAA,CAAYmB,KAAAA,GAAQ,CAAA;AACpBpB,MAAAA,SAAAA,CAAUoB,KAAAA,GAAQ,CAAA;AAClBtB,MAAAA,SAAAA,CAAUsB,KAAAA,GAAQ,CAAA;AAClB,MAAA,IAAA,CAAIxC,GAAAA,GAAAA,KAAAA,CAAMP,KAAAA,KAANO,IAAAA,GAAAA,MAAAA,GAAAA,IAAawD,MAAAA,EAAQ;AACvB3B,QAAAA,aAAAA,CAAcW,KAAAA,GAAQhD,YAAAA,CAAaQ,KAAAA,CAAMP,KAAAA,EAAOO,KAAAA,CAAMN,WAAW,CAAA,CAAEP,GAAAA,CAAI,CAACI,IAAAA,EAAMmG,KAAAA,KAAU;AA1QlG,UAAA,IAAAF,GAAAA;AA4QY,UAAA,MAAMG,OAAAA,GAAAA,CAAUpG,GAAAA,GAAAA,IAAAA,CAAKoG,OAAAA,KAALpG,OAAAA,GAAAA,GAAgB,CAAA;AAChC,UAAA,MAAMqG,OAAAA,GAAU1C,KAAK2C,GAAAA,CAAIpD,QAAAA,CAASD,MAAMvD,IAAAA,IAAQ0G,OAAAA,IAAW,IAAI,EAAE,CAAA;AAEjEzE,UAAAA,SAAAA,CAAUsB,KAAAA,IAASoD,OAAAA;AAEnBxE,UAAAA,SAAAA,CAAUoB,KAAAA,IAASmD,OAAAA;AAEnB,UAAA,IAAID,UAAU,CAAA,EAAG;AACfD,YAAAA,YAAAA,GAAeG,OAAAA,KAAY,EAAA,IAAM,CAACrG,IAAAA,CAAKgE,MAAAA;AAAAA,UACzC;AAEA,UAAA,MAAMA,SACJhE,IAAAA,CAAKgE,MAAAA;AAAAA,UAGJa,UAAU5B,KAAAA,KACRiD,YAAAA;AAAAA,UAECrE,SAAAA,CAAUoB,KAAAA,GAAQG,UAAAA,CAAWH,KAAAA,CAAAA,IAC/B,CAAC,CAACkD,KAAAA;AAEN,UAAA,IAAInC,MAAAA,EAAQ;AACV,YAAA,IAAI,CAACvD,MAAM8F,QAAAA,EAAU;AACnB,cAAA,OAAO;AAAA,gBACL,GAAGvG,IAAAA;AAAAA,gBACH+F,QAAAA,EAAU;AAAA,kBAAErG,IAAAA,EAAM;AAAA,iBAAE;AAAA,gBACpBsE,MAAAA,EAAQ;AAAA,eACV;AAAA,YACF;AACA,YAAA,OAAO;AAAA,cACL,GAAGhE,IAAAA;AAAAA,cACH+F,QAAAA,EAAU;AAAA,gBAAErG,IAAAA,EAAM2G;AAAAA,eAAQ;AAAA,cAC1BrC,MAAAA,EAAQ;AAAA,aACV;AAAA,UACF;AAEA,UAAA,IAAI,EAAA,GAAMlC,WAAAA,CAAYmB,KAAAA,GAAQ,EAAA,GAAMoD,OAAAA,EAAS;AAE3C1E,YAAAA,SAAAA,CAAUsB,KAAAA,IAAS,EAAA,GAAMnB,WAAAA,CAAYmB,KAAAA,GAAQ,EAAA;AAC7CnB,YAAAA,WAAAA,CAAYmB,KAAAA,IAAS,EAAA,GAAMnB,WAAAA,CAAYmB,KAAAA,GAAQ,EAAA;AAAA,UACjD;AAEAnB,UAAAA,WAAAA,CAAYmB,KAAAA,IAASoD,OAAAA;AACrB,UAAA,OAAO;AAAA,YACL,GAAGrG,IAAAA;AAAAA,YACHgE,MAAAA;AAAAA,YACApD,aAAAA,EAAe;AAAA,cACb,GAAIZ,IAAAA,CAAKQ,KAAAA,GAAQ6D,gBAAAA,CAAiBpB,QAAQ,EAAC;AAAA,cAC3C,GAAGjD,IAAAA,CAAKY;AAAAA,aACV;AAAA,YACAmF,QAAAA,EAAU;AAAA,cACRrG,IAAAA,EAAM2G;AAAAA;AACR,WACF;AAAA,QACF,CAAC,CAAA;AAAA,MACH,CAAA,MAAO;AACL/D,QAAAA,aAAAA,CAAcW,QAAQ,EAAA;AAAA,MACxB;AAAA,IACF,CAAA,EACA;AAAA,MACEuD,SAAAA,EAAW;AAAA,KAEf,CAAA;AAEA/E,IAAAA,MAAAA,CAAO;AAAA,MACLY,OAAAA;AAAAA,MACA,GAAGI;AAAAA,KACJ,CAAA;AAED,IAAA,OAAO,MAAAgE,WAAAA,CAAA,KAAA,EAAAC,UAAAA,CAAA;AAAA,MAAA,OAAA,EACO,GAAGzE,SAAS,CAAA,KAAA,CAAA;AAAA,MAAO,KAAA,EAAA;AAAA,OAAoBP,KAAK,CAAA,EAAA,CAAA+E,WAAAA,CAAAE,UAAAD,UAAAA,CAAA;AAAA,MAAA,KAAA,EAE/CrE,OAAAA;AAAAA,MAAO,OAAA,EACLJ;AAAAA,KAAS,EACZkD,UAAUlC,KAAAA,EAAK;AAAA,MAAA,MAAA,EAAA,IAAA;AAAA,MAAA,eAAA,EAAA,IAAA;AAAA,MAAA,UAAA,EAGT;AAAA,QACR2D,QAAQnG,KAAAA,CAAMoG,YAAAA;AAAAA,QACdC,OAAAA,EAAS,OAAA;AAAA,QACTC,KAAAA,EAAO,GAAG9E,SAAS,CAAA,IAAA;AAAA,OACrB;AAAA,MAAC,aAAA,EACY,KAAA;AAAA,MAAK,aACPqD,eAAAA,CAAgBrC,KAAAA;AAAAA,MAAK,SACzBX,aAAAA,CAAcW,KAAAA;AAAAA,MAAK,QAAA,EAClBC,SAASD,KAAAA,CAAMzD,MAAAA;AAAAA,MAAM,WA+BnBwH,CAAAA,MAAAA,KAAW;AAhY/B,QAAA,IAAAf,GAAAA,EAAA,EAAA;AAiYY,QAAA,IAAIxF,MAAMwG,aAAAA,EAAe;AACvB5E,UAAAA,CAAAA,GAAAA,GAAAA,OAAAA,CAAQY,KAAAA,KAARZ,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAe6E,MAAAA,EAAAA;AAAAA,QACjB;AACAzG,QAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAM0G,YAAN1G,IAAAA,GAAAA,MAAAA,GAAAA,EAAAA,CAAAA,IAAAA,CAAAA,KAAAA,EAAgBuG,MAAAA,CAAAA;AAAAA,MAClB;AAAA,KAAC,CAAA,EAnCQ;AAAA,MACP,GAAGzF,KAAAA;AAAAA,MACHyD,WAAWA,CAAC;AAAA,QAAEvE,KAAAA,EAAAA,MAAAA;AAAAA,QAAO2G,MAAAA;AAAAA,QAAQC;AAAAA,OAAY,KAAM;AApW3D,QAAA,IAAApB,GAAAA;AAqWc,QAAA,OAAAQ,WAAAA,CAAAa,QAAAA,EAAA,IAAA,EAAA,CAEK/F,KAAAA,CAAMyD,SAAAA,GAAAA,CACHzD,GAAAA,GAAAA,KAAAA,CAAMyD,SAAAA,KAANzD,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAAA,IAAAA,CAAAA,KAAAA,EAAkB;AAAA,UAAEd,KAAAA,EAAAA,MAAAA;AAAAA,UAAO2G,MAAAA;AAAAA,UAAQC;AAAAA,aACnCA,WAAAA,EACHnD,YAAAA,CAAajB,KAAAA,KAAU,KAAA,IAAKwD,YAAA,GAAA,EAAA;AAAA,UAAA,OAAA,EAElB,GAAGxE,SAAS,CAAA,gBAAA,CAAA;AAAA,UAAkB,SAAA,EAC5BsF,MAAMzC,YAAAA,CAAa,CAACD,UAAU5B,KAAK;AAAA,SAAC,EAAA,CAE5C4B,SAAAA,CAAU5B,KAAAA,GACPlB,KAAK8D,UAAAA,CAAW,gBAAA,EAAkB,cAAI,CAAA,GACtC9D,IAAAA,CAAK8D,UAAAA,CAAW,eAAe,cAAI,CAAA,EACtC,CAAC,CAAChC,SAAAA,CAAUZ,KAAAA,IAAS,IAAIY,SAAAA,CAAUZ,KAAK,CAAA,CAAA,CAAA,EAAGwD,WAAAA,CAAAe,YAAAA,EAAA;AAAA,UAAA,OAAA,EAEnC;AAAA,YACLC,iBAAAA,EAAmB,OAAA;AAAA,YACnBC,UAAAA,EAAY,UAAA;AAAA,YACZC,SAAAA,EAAW,CAAA,OAAA,EAAU9C,SAAAA,CAAU5B,KAAAA,GAAQ,IAAI,GAAG,CAAA,KAAA;AAAA;AAChD,SAAC,EAAA,IAAA,CAAA,CAAA,CAGN,CAAA,CAAA;AAAA,MAGP;AAAA,KACD,CAAA,CAAA,CAAA;AAAA,EAUT;AACF,CAAC,CAAA;;;;"}
|
@@ -15,7 +15,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
15
15
|
__name: "modal",
|
16
16
|
props: {
|
17
17
|
description: { type: String, required: false },
|
18
|
-
showFullscreen: { type: Boolean, required: false, default:
|
18
|
+
showFullscreen: { type: Boolean, required: false, default: false },
|
19
19
|
defaultFullscreen: { type: Boolean, required: false },
|
20
20
|
draggable: { type: Boolean, required: false, default: false },
|
21
21
|
top: { type: Number, required: false, default: 100 },
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"modal.vue2.mjs","sources":["../../../../../../packages/components/modal/src/modal.vue"],"sourcesContent":["<!--\n * @Author: shen\n * @Date: 2025-06-23 16:43:27\n * @LastEditors: shen\n * @LastEditTime: 2025-
|
1
|
+
{"version":3,"file":"modal.vue2.mjs","sources":["../../../../../../packages/components/modal/src/modal.vue"],"sourcesContent":["<!--\n * @Author: shen\n * @Date: 2025-06-23 16:43:27\n * @LastEditors: shen\n * @LastEditTime: 2025-09-24 16:34:14\n * @Description:\n-->\n<script setup lang=\"ts\">\nimport type { ModalProps } from 'ant-design-vue'\n\nimport { computed, ref, useTemplateRef, useAttrs } from 'vue'\nimport { Modal } from 'ant-design-vue'\nimport { CloseOutlined, FullscreenOutlined, FullscreenExitOutlined } from '@ant-design/icons-vue'\nimport { ProButton } from '@pro-design-vue/components/button'\nimport { omitKeysAndUndefined } from '@pro-design-vue/utils'\nimport { useIsMobile, usePrefixCls } from '@pro-design-vue/hooks'\nimport { useDraggable, useElementBounding, useResizeObserver } from '@vueuse/core'\nexport interface Props extends Omit<ModalProps, 'visible'> {\n /**\n * @zh_CN 标题描述信息\n */\n description?: string\n /**\n * @zh_CN 是否可以切换全屏\n */\n showFullscreen?: boolean\n /**\n * @zh_CN 默认全屏\n */\n defaultFullscreen?: boolean\n /**\n * @zh_CN 是否可以拖拽\n */\n draggable?: boolean\n /**\n * @zh_CN 距离顶部距离\n */\n top?: number\n}\ndefineOptions({\n name: 'ProModal',\n inheritAttrs: false,\n})\n\nconst props = withDefaults(defineProps<Props>(), {\n autofocus: false,\n closable: true,\n destroyOnClose: true,\n getContainer: () => document.body,\n mask: true,\n keyboard: true,\n maskClosable: true,\n open: false,\n showFullscreen: false,\n draggable: false,\n top: 100,\n})\nconst emit = defineEmits<{ cancel: [e: Event]; fullScreen: [value: boolean] }>()\nconst attrs = useAttrs()\nconst prefixCls = usePrefixCls('modal')\n// const open = defineModel<boolean>('open')\nconst isDrag = ref(false)\nconst fullscreen = ref(props.defaultFullscreen)\nconst { isMobile } = useIsMobile()\nconst bodyWidth = ref(0)\nconst modalHeaderEl = useTemplateRef<HTMLElement>('modalHeaderRef')\nconst { width } = useElementBounding(modalHeaderEl)\nuseResizeObserver(document.body, (entries) => {\n const entry = entries[0]\n const { width } = entry?.contentRect || ({} as DOMRectReadOnly)\n bodyWidth.value = width\n})\nconst hasFullscreen = computed(() => isMobile.value || fullscreen.value)\nconst hasDraggable = computed(() => props.draggable && !hasFullscreen.value)\n\nconst { style } = useDraggable(modalHeaderEl, {\n disabled: computed(() => !hasDraggable.value),\n onMove() {\n isDrag.value = true\n },\n})\n\nconst modalProps = computed(() =>\n omitKeysAndUndefined(props, ['closable', 'onCancel', 'title', 'width', 'height']),\n)\n\nconst modalClass = computed(() => ({\n [prefixCls]: true,\n [attrs.class as string]: true,\n [`${prefixCls}--fullscreen`]: hasFullscreen.value,\n [`${prefixCls}--draggable`]: hasDraggable.value,\n}))\n\nconst modalStyle = computed(() => {\n if (isDrag.value) {\n return style.value\n }\n if (hasDraggable.value) {\n return {\n left: (bodyWidth.value - width.value) / 2 + 'px',\n top: `${props.top}px`,\n }\n }\n return {\n top: `${props.top}px`,\n }\n})\n\nconst modalWidth = computed(() => {\n if (hasFullscreen.value) {\n return '100%'\n }\n return props.width\n})\n\nconst handleClose = (e: Event) => {\n fullscreen.value = props.defaultFullscreen\n props['onUpdate:open']?.(false)\n emit('cancel', e)\n}\n\nconst handleBtnClose = (e: Event) => {\n e.stopPropagation()\n handleClose(e)\n}\n\nconst handleFullScreen = () => {\n fullscreen.value = !fullscreen.value\n emit('fullScreen', fullscreen.value)\n}\n</script>\n\n<template>\n <Modal\n v-bind=\"modalProps\"\n :class=\"modalClass\"\n :closable=\"false\"\n :width=\"modalWidth\"\n :style=\"modalStyle\"\n @cancel=\"handleClose\"\n >\n <template #title>\n <div ref=\"modalHeaderRef\" :class=\"`${prefixCls}-header`\">\n <slot name=\"title\">\n <div :class=\"`${prefixCls}-title`\">{{ title }}</div>\n </slot>\n <slot name=\"description\">\n <div :class=\"`${prefixCls}-description`\">{{ description }}</div>\n </slot>\n <div :class=\"`${prefixCls}-extra`\">\n <ProButton\n v-if=\"showFullscreen && !isMobile\"\n :class=\"`${prefixCls}-fullscreen`\"\n size=\"small\"\n shape=\"circle\"\n type=\"text\"\n @click=\"handleFullScreen\"\n >\n <template #icon>\n <FullscreenOutlined v-if=\"!fullscreen\" />\n <FullscreenExitOutlined v-else />\n </template>\n </ProButton>\n <ProButton\n v-if=\"closable\"\n :class=\"`${prefixCls}-close`\"\n size=\"small\"\n shape=\"circle\"\n type=\"text\"\n @click=\"handleBtnClose\"\n >\n <template #icon>\n <CloseOutlined />\n </template>\n </ProButton>\n </div>\n </div>\n </template>\n <template #default>\n <slot />\n </template>\n\n <template #footer v-if=\"$slots.footer\">\n <slot name=\"footer\" />\n </template>\n </Modal>\n</template>\n"],"names":["width","_createBlock","_unref","_mergeProps","_createElementVNode","_renderSlot","title","description","showFullscreen","closable","_createVNode","$slots"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CA,IAAA,MAAM,KAAA,GAAQ,OAAA;AAad,IAAA,MAAM,IAAA,GAAO,MAAA;AACb,IAAA,MAAM,QAAQ,QAAA,EAAS;AACvB,IAAA,MAAM,SAAA,GAAY,aAAa,OAAO,CAAA;AAEtC,IAAA,MAAM,MAAA,GAAS,IAAI,KAAK,CAAA;AACxB,IAAA,MAAM,UAAA,GAAa,GAAA,CAAI,KAAA,CAAM,iBAAiB,CAAA;AAC9C,IAAA,MAAM,EAAE,QAAA,EAAS,GAAI,WAAA,EAAY;AACjC,IAAA,MAAM,SAAA,GAAY,IAAI,CAAC,CAAA;AACvB,IAAA,MAAM,aAAA,GAAgB,eAA4B,gBAAgB,CAAA;AAClE,IAAA,MAAM,EAAE,KAAA,EAAM,GAAI,kBAAA,CAAmB,aAAa,CAAA;AAClD,IAAA,iBAAA,CAAkB,QAAA,CAAS,IAAA,EAAM,CAAC,OAAA,KAAY;AAC5C,MAAA,MAAM,KAAA,GAAQ,QAAQ,CAAC,CAAA;AACvB,MAAA,MAAM,EAAE,KAAA,EAAAA,MAAAA,EAAM,GAAA,CAAI,KAAA,IAAA,IAAA,GAAA,MAAA,GAAA,KAAA,CAAO,gBAAgB,EAAC;AAC1C,MAAA,SAAA,CAAU,KAAA,GAAQA,MAAAA;AAAA,IACpB,CAAC,CAAA;AACD,IAAA,MAAM,gBAAgB,QAAA,CAAS,MAAM,QAAA,CAAS,KAAA,IAAS,WAAW,KAAK,CAAA;AACvE,IAAA,MAAM,eAAe,QAAA,CAAS,MAAM,MAAM,SAAA,IAAa,CAAC,cAAc,KAAK,CAAA;AAE3E,IAAA,MAAM,EAAE,KAAA,EAAM,GAAI,YAAA,CAAa,aAAA,EAAe;AAAA,MAC5C,QAAA,EAAU,QAAA,CAAS,MAAM,CAAC,aAAa,KAAK,CAAA;AAAA,MAC5C,MAAA,GAAS;AACP,QAAA,MAAA,CAAO,KAAA,GAAQ,IAAA;AAAA,MACjB;AAAA,KACD,CAAA;AAED,IAAA,MAAM,UAAA,GAAa,QAAA;AAAA,MAAS,MAC1B,qBAAqB,KAAA,EAAO,CAAC,YAAY,UAAA,EAAY,OAAA,EAAS,OAAA,EAAS,QAAQ,CAAC;AAAA,KAClF;AAEA,IAAA,MAAM,UAAA,GAAa,SAAS,OAAO;AAAA,MACjC,CAAC,SAAS,GAAG,IAAA;AAAA,MACb,CAAC,KAAA,CAAM,KAAe,GAAG,IAAA;AAAA,MACzB,CAAC,CAAA,EAAG,SAAS,CAAA,YAAA,CAAc,GAAG,aAAA,CAAc,KAAA;AAAA,MAC5C,CAAC,CAAA,EAAG,SAAS,CAAA,WAAA,CAAa,GAAG,YAAA,CAAa;AAAA,KAC5C,CAAE,CAAA;AAEF,IAAA,MAAM,UAAA,GAAa,SAAS,MAAM;AAChC,MAAA,IAAI,OAAO,KAAA,EAAO;AAChB,QAAA,OAAO,KAAA,CAAM,KAAA;AAAA,MACf;AACA,MAAA,IAAI,aAAa,KAAA,EAAO;AACtB,QAAA,OAAO;AAAA,UACL,IAAA,EAAA,CAAO,SAAA,CAAU,KAAA,GAAQ,KAAA,CAAM,SAAS,CAAA,GAAI,IAAA;AAAA,UAC5C,GAAA,EAAK,CAAA,EAAG,KAAA,CAAM,GAAG,CAAA,EAAA;AAAA,SACnB;AAAA,MACF;AACA,MAAA,OAAO;AAAA,QACL,GAAA,EAAK,CAAA,EAAG,KAAA,CAAM,GAAG,CAAA,EAAA;AAAA,OACnB;AAAA,IACF,CAAC,CAAA;AAED,IAAA,MAAM,UAAA,GAAa,SAAS,MAAM;AAChC,MAAA,IAAI,cAAc,KAAA,EAAO;AACvB,QAAA,OAAO,MAAA;AAAA,MACT;AACA,MAAA,OAAO,KAAA,CAAM,KAAA;AAAA,IACf,CAAC,CAAA;AAED,IAAA,MAAM,WAAA,GAAc,CAAC,CAAA,KAAa;;AAChC,MAAA,UAAA,CAAW,QAAQ,KAAA,CAAM,iBAAA;AACzB,MAAA,CAAA,EAAA,GAAA,KAAA,CAAM,qBAAN,IAAA,GAAA,MAAA,GAAA,EAAA,CAAA,IAAA,CAAA,KAAA,EAAyB,KAAA,CAAA;AACzB,MAAA,IAAA,CAAK,UAAU,CAAC,CAAA;AAAA,IAClB,CAAA;AAEA,IAAA,MAAM,cAAA,GAAiB,CAAC,CAAA,KAAa;AACnC,MAAA,CAAA,CAAE,eAAA,EAAgB;AAClB,MAAA,WAAA,CAAY,CAAC,CAAA;AAAA,IACf,CAAA;AAEA,IAAA,MAAM,mBAAmB,MAAM;AAC7B,MAAA,UAAA,CAAW,KAAA,GAAQ,CAAC,UAAA,CAAW,KAAA;AAC/B,MAAA,IAAA,CAAK,YAAA,EAAc,WAAW,KAAK,CAAA;AAAA,IACrC,CAAA;;0BAIEC,WAAA,CAoDQC,KAAA,CAAA,KAAA,CAAA,EApDRC,UAAA,CAoDQ,WAAA,KAAA,EAnDY;AAAA,QACjB,OAAO,UAAA,CAAA,KAAA;AAAA,QACP,QAAA,EAAU,KAAA;AAAA,QACV,OAAO,UAAA,CAAA,KAAA;AAAA,QACP,OAAO,UAAA,CAAA,KAAA;AAAA,QACP,QAAA,EAAQ;AAAA;QAEE,KAAA,UACT,MAkCM;AAAA,UAlCNC,kBAAA;AAAA,YAkCM,KAAA;AAAA,YAAA;AAAA,cAlCD,GAAA,EAAI,gBAAA;AAAA,cAAkB,yBAAUF,KAAA,CAAA,SAAA,CAAS,CAAA,OAAA,CAAA;AAAA;;cAC5CG,WAEO,IAAA,sBAFP,MAEO;AAAA,gBADLD,kBAAA;AAAA,kBAAoD,KAAA;AAAA,kBAAA;AAAA,oBAA9C,yBAAUF,KAAA,CAAA,SAAA,CAAS,CAAA,MAAA,CAAA;AAAA;kCAAaI,KAAAA,KAAK,CAAA;AAAA,kBAAA;AAAA;AAAA;AAAA;cAE7CD,WAEO,IAAA,4BAFP,MAEO;AAAA,gBADLD,kBAAA;AAAA,kBAAgE,KAAA;AAAA,kBAAA;AAAA,oBAA1D,yBAAUF,KAAA,CAAA,SAAA,CAAS,CAAA,YAAA,CAAA;AAAA;kCAAmBK,KAAAA,WAAW,CAAA;AAAA,kBAAA;AAAA;AAAA;AAAA;cAEzDH,kBAAA;AAAA,gBA0BM,KAAA;AAAA,gBAAA;AAAA,kBA1BA,yBAAUF,KAAA,CAAA,SAAA,CAAS,CAAA,MAAA,CAAA;AAAA;;kBAEfM,IAAAA,CAAAA,cAAAA,KAAmBN,KAAA,CAAA,QAAA,CAAA,iBAD3BD,WAAA,CAYYC,KAAA,CAAA,SAAA,CAAA,EAAA;AAAA;oBAVT,yBAAUA,KAAA,CAAA,SAAA,CAAS,CAAA,WAAA,CAAA,CAAA;AAAA,oBACpB,IAAA,EAAK,OAAA;AAAA,oBACL,KAAA,EAAM,QAAA;AAAA,oBACN,IAAA,EAAK,MAAA;AAAA,oBACJ,OAAA,EAAO;AAAA;oBAEG,IAAA,UACT,MAAyC;AAAA,uBAAd,WAAA,KAAA,iBAA3BD,WAAA,CAAyCC,KAAA,CAAA,kBAAA,CAAA,EAAA,EAAA,GAAA,EAAA,GAAA,CAAA,kBACzCD,WAAA,CAAiCC,KAAA,CAAA,sBAAA,CAAA,EAAA,EAAA,GAAA,EAAA,CAAA,EAAA,CAAA;AAAA;;;;kBAI7BO,KAAAA,QAAAA,iBADRR,WAAA,CAWYC,KAAA,CAAA,SAAA,CAAA,EAAA;AAAA;oBATT,yBAAUA,KAAA,CAAA,SAAA,CAAS,CAAA,MAAA,CAAA,CAAA;AAAA,oBACpB,IAAA,EAAK,OAAA;AAAA,oBACL,KAAA,EAAM,QAAA;AAAA,oBACN,IAAA,EAAK,MAAA;AAAA,oBACJ,OAAA,EAAO;AAAA;oBAEG,IAAA,UACT,MAAiB;AAAA,sBAAjBQ,WAAA,CAAiBR,KAAA,CAAA,aAAA,CAAA;AAAA;;;;;;;;;;;;;QAMhB,OAAA,UACT,MAAQ;AAAA,UAARG,UAAA,CAAQ,IAAA,CAAA,MAAA,EAAA,SAAA;AAAA;;;;QAGcM,IAAAA,CAAAA,OAAO,MAAA;gBAApB,QAAA;AAAA,sBACT,MAAsB;AAAA,YAAtBN,UAAA,CAAsB,IAAA,CAAA,MAAA,EAAA,QAAA;AAAA;;;;;;;;;;"}
|
package/es/version.d.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
export declare const version = "1.0.0-rc.
|
1
|
+
export declare const version = "1.0.0-rc.12";
|
package/es/version.mjs
CHANGED
package/es/version.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"version.mjs","sources":["../../../packages/pro-design-vue/version.ts"],"sourcesContent":["export const version = '1.0.0-rc.
|
1
|
+
{"version":3,"file":"version.mjs","sources":["../../../packages/pro-design-vue/version.ts"],"sourcesContent":["export const version = '1.0.0-rc.12'\n"],"names":[],"mappings":"AAAO,MAAM,OAAA,GAAU;;;;"}
|
@@ -17,7 +17,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
17
17
|
__name: "drawer",
|
18
18
|
props: {
|
19
19
|
description: { type: String, required: false },
|
20
|
-
showFullscreen: { type: Boolean, required: false, default:
|
20
|
+
showFullscreen: { type: Boolean, required: false, default: false },
|
21
21
|
defaultFullscreen: { type: Boolean, required: false },
|
22
22
|
autofocus: { type: Boolean, required: false, default: false },
|
23
23
|
closable: { type: Boolean, required: false, default: true },
|