pro-design-vue 1.2.9 → 1.2.11

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.
@@ -143,91 +143,95 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
143
143
  style: modalStyle.value,
144
144
  onCancel: handleClose
145
145
  }), createSlots({
146
- title: withCtx(() => [
147
- createElementVNode(
148
- "div",
149
- {
150
- ref: "modalHeaderRef",
151
- class: normalizeClass(`${unref(prefixCls)}-header`)
152
- },
153
- [
154
- renderSlot(_ctx.$slots, "title", {}, () => [
155
- createElementVNode(
156
- "div",
157
- {
158
- class: normalizeClass(`${unref(prefixCls)}-title`)
159
- },
160
- toDisplayString(_ctx.title),
161
- 3
162
- /* TEXT, CLASS */
163
- )
164
- ]),
165
- renderSlot(_ctx.$slots, "description", {}, () => [
166
- createElementVNode(
167
- "div",
168
- {
169
- class: normalizeClass(`${unref(prefixCls)}-description`)
170
- },
171
- toDisplayString(_ctx.description),
172
- 3
173
- /* TEXT, CLASS */
174
- )
175
- ]),
176
- createElementVNode(
177
- "div",
178
- {
179
- class: normalizeClass(`${unref(prefixCls)}-extra`)
180
- },
181
- [
182
- mergeShowFullscreen.value && !unref(isMobile) ? (openBlock(), createBlock(unref(ProButton), {
183
- key: 0,
184
- class: normalizeClass(`${unref(prefixCls)}-fullscreen`),
185
- size: "small",
186
- shape: "circle",
187
- type: "text",
188
- onClick: handleFullScreen
189
- }, {
190
- icon: withCtx(() => [
191
- !fullscreen.value ? (openBlock(), createBlock(unref(FullscreenOutlined), { key: 0 })) : (openBlock(), createBlock(unref(FullscreenExitOutlined), { key: 1 }))
192
- ]),
193
- _: 1
194
- /* STABLE */
195
- }, 8, ["class"])) : createCommentVNode("v-if", true),
196
- _ctx.closable ? (openBlock(), createBlock(unref(ProButton), {
197
- key: 1,
198
- class: normalizeClass(`${unref(prefixCls)}-close`),
199
- size: "small",
200
- shape: "circle",
201
- type: "text",
202
- onClick: handleBtnClose
203
- }, {
204
- icon: withCtx(() => [
205
- createVNode(unref(CloseOutlined))
206
- ]),
207
- _: 1
208
- /* STABLE */
209
- }, 8, ["class"])) : createCommentVNode("v-if", true)
210
- ],
211
- 2
212
- /* CLASS */
213
- )
214
- ],
215
- 2
216
- /* CLASS */
217
- )
218
- ]),
219
146
  default: withCtx(() => [
220
147
  renderSlot(_ctx.$slots, "default")
221
148
  ]),
222
149
  _: 2
223
150
  /* DYNAMIC */
224
151
  }, [
152
+ _ctx.title || _ctx.$slots.title ? {
153
+ name: "title",
154
+ fn: withCtx(() => [
155
+ createElementVNode(
156
+ "div",
157
+ {
158
+ ref: "modalHeaderRef",
159
+ class: normalizeClass(`${unref(prefixCls)}-header`)
160
+ },
161
+ [
162
+ renderSlot(_ctx.$slots, "title", {}, () => [
163
+ createElementVNode(
164
+ "div",
165
+ {
166
+ class: normalizeClass(`${unref(prefixCls)}-title`)
167
+ },
168
+ toDisplayString(_ctx.title),
169
+ 3
170
+ /* TEXT, CLASS */
171
+ )
172
+ ]),
173
+ renderSlot(_ctx.$slots, "description", {}, () => [
174
+ createElementVNode(
175
+ "div",
176
+ {
177
+ class: normalizeClass(`${unref(prefixCls)}-description`)
178
+ },
179
+ toDisplayString(_ctx.description),
180
+ 3
181
+ /* TEXT, CLASS */
182
+ )
183
+ ]),
184
+ createElementVNode(
185
+ "div",
186
+ {
187
+ class: normalizeClass(`${unref(prefixCls)}-extra`)
188
+ },
189
+ [
190
+ mergeShowFullscreen.value && !unref(isMobile) ? (openBlock(), createBlock(unref(ProButton), {
191
+ key: 0,
192
+ class: normalizeClass(`${unref(prefixCls)}-fullscreen`),
193
+ size: "small",
194
+ shape: "circle",
195
+ type: "text",
196
+ onClick: handleFullScreen
197
+ }, {
198
+ icon: withCtx(() => [
199
+ !fullscreen.value ? (openBlock(), createBlock(unref(FullscreenOutlined), { key: 0 })) : (openBlock(), createBlock(unref(FullscreenExitOutlined), { key: 1 }))
200
+ ]),
201
+ _: 1
202
+ /* STABLE */
203
+ }, 8, ["class"])) : createCommentVNode("v-if", true),
204
+ _ctx.closable ? (openBlock(), createBlock(unref(ProButton), {
205
+ key: 1,
206
+ class: normalizeClass(`${unref(prefixCls)}-close`),
207
+ size: "small",
208
+ shape: "circle",
209
+ type: "text",
210
+ onClick: handleBtnClose
211
+ }, {
212
+ icon: withCtx(() => [
213
+ createVNode(unref(CloseOutlined))
214
+ ]),
215
+ _: 1
216
+ /* STABLE */
217
+ }, 8, ["class"])) : createCommentVNode("v-if", true)
218
+ ],
219
+ 2
220
+ /* CLASS */
221
+ )
222
+ ],
223
+ 2
224
+ /* CLASS */
225
+ )
226
+ ]),
227
+ key: "0"
228
+ } : void 0,
225
229
  _ctx.$slots.footer ? {
226
230
  name: "footer",
227
231
  fn: withCtx(() => [
228
232
  renderSlot(_ctx.$slots, "footer")
229
233
  ]),
230
- key: "0"
234
+ key: "1"
231
235
  } : void 0
232
236
  ]), 1040, ["class", "width", "style"]);
233
237
  };
@@ -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-10-12 12:58:02\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'\nimport { useProConfigInject } from '@pro-design-vue/components/config-provider'\n\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: undefined,\n draggable: undefined,\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 { modal } = useProConfigInject()\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})\n\nconst mergeShowFullscreen = computed(() => props.showFullscreen ?? modal?.value?.showFullscreen)\nconst mergeDraggable = computed(() => props.draggable ?? modal?.value?.draggable)\n\nconst hasFullscreen = computed(() => isMobile.value || fullscreen.value)\nconst hasDraggable = computed(() => mergeDraggable.value && !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=\"mergeShowFullscreen && !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","closable","_createVNode","$slots"],"mappings":"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"}
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-10-18 19:12:36\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'\nimport { useProConfigInject } from '@pro-design-vue/components/config-provider'\n\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: undefined,\n draggable: undefined,\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 { modal } = useProConfigInject()\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})\n\nconst mergeShowFullscreen = computed(() => props.showFullscreen ?? modal?.value?.showFullscreen)\nconst mergeDraggable = computed(() => props.draggable ?? modal?.value?.draggable)\n\nconst hasFullscreen = computed(() => isMobile.value || fullscreen.value)\nconst hasDraggable = computed(() => mergeDraggable.value && !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 v-if=\"title || $slots.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=\"mergeShowFullscreen && !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","_renderSlot","title","$slots","_createElementVNode","description","closable","_createVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8CA,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,EAAE,KAAA,EAAM,GAAI,kBAAA,EAAmB;AACrC,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;AAED,IAAA,MAAM,mBAAA,GAAsB,SAAS,MAAG;;AAAG,MAAA,OAAA,CAAA,EAAA,GAAA,KAAA,CAAM,cAAA,KAAN,IAAA,GAAA,EAAA,GAAA,CAAwB,EAAA,GAAA,KAAA,IAAA,IAAA,GAAA,MAAA,GAAA,KAAA,CAAO,KAAA,KAAP,IAAA,GAAA,MAAA,GAAA,EAAA,CAAc,cAAA;AAAA,IAAA,CAAc,CAAA;AAC/F,IAAA,MAAM,cAAA,GAAiB,SAAS,MAAG;;AAAG,MAAA,OAAA,CAAA,EAAA,GAAA,KAAA,CAAM,SAAA,KAAN,IAAA,GAAA,EAAA,GAAA,CAAmB,EAAA,GAAA,KAAA,IAAA,IAAA,GAAA,MAAA,GAAA,KAAA,CAAO,KAAA,KAAP,IAAA,GAAA,MAAA,GAAA,EAAA,CAAc,SAAA;AAAA,IAAA,CAAS,CAAA;AAEhF,IAAA,MAAM,gBAAgB,QAAA,CAAS,MAAM,QAAA,CAAS,KAAA,IAAS,WAAW,KAAK,CAAA;AACvE,IAAA,MAAM,eAAe,QAAA,CAAS,MAAM,eAAe,KAAA,IAAS,CAAC,cAAc,KAAK,CAAA;AAEhF,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;QAuCE,OAAA,UACT,MAAQ;AAAA,UAARC,UAAA,CAAQ,IAAA,CAAA,MAAA,EAAA,SAAA;AAAA;;;;QAtCaC,IAAAA,CAAAA,KAAAA,IAASC,IAAAA,CAAAA,MAAAA,CAAO,KAAA;gBAA5B,OAAA;AAAA,sBACT,MAkCM;AAAA,YAlCNC,kBAAA;AAAA,cAkCM,KAAA;AAAA,cAAA;AAAA,gBAlCD,GAAA,EAAI,gBAAA;AAAA,gBAAkB,yBAAUL,KAAA,CAAA,SAAA,CAAS,CAAA,OAAA,CAAA;AAAA;;gBAC5CE,WAEO,IAAA,sBAFP,MAEO;AAAA,kBADLG,kBAAA;AAAA,oBAAoD,KAAA;AAAA,oBAAA;AAAA,sBAA9C,yBAAUL,KAAA,CAAA,SAAA,CAAS,CAAA,MAAA,CAAA;AAAA;oCAAaG,KAAAA,KAAK,CAAA;AAAA,oBAAA;AAAA;AAAA;AAAA;gBAE7CD,WAEO,IAAA,4BAFP,MAEO;AAAA,kBADLG,kBAAA;AAAA,oBAAgE,KAAA;AAAA,oBAAA;AAAA,sBAA1D,yBAAUL,KAAA,CAAA,SAAA,CAAS,CAAA,YAAA,CAAA;AAAA;oCAAmBM,KAAAA,WAAW,CAAA;AAAA,oBAAA;AAAA;AAAA;AAAA;gBAEzDD,kBAAA;AAAA,kBA0BM,KAAA;AAAA,kBAAA;AAAA,oBA1BA,yBAAUL,KAAA,CAAA,SAAA,CAAS,CAAA,MAAA,CAAA;AAAA;;oBAEf,mBAAA,CAAA,KAAA,KAAwBA,KAAA,CAAA,QAAA,CAAA,iBADhCD,WAAA,CAYYC,KAAA,CAAA,SAAA,CAAA,EAAA;AAAA;sBAVT,yBAAUA,KAAA,CAAA,SAAA,CAAS,CAAA,WAAA,CAAA,CAAA;AAAA,sBACpB,IAAA,EAAK,OAAA;AAAA,sBACL,KAAA,EAAM,QAAA;AAAA,sBACN,IAAA,EAAK,MAAA;AAAA,sBACJ,OAAA,EAAO;AAAA;sBAEG,IAAA,UACT,MAAyC;AAAA,yBAAd,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;;;;oBAI7BO,KAAAA,QAAAA,iBADRR,WAAA,CAWYC,KAAA,CAAA,SAAA,CAAA,EAAA;AAAA;sBATT,yBAAUA,KAAA,CAAA,SAAA,CAAS,CAAA,MAAA,CAAA,CAAA;AAAA,sBACpB,IAAA,EAAK,OAAA;AAAA,sBACL,KAAA,EAAM,QAAA;AAAA,sBACN,IAAA,EAAK,MAAA;AAAA,sBACJ,OAAA,EAAO;AAAA;sBAEG,IAAA,UACT,MAAiB;AAAA,wBAAjBQ,WAAA,CAAiBR,KAAA,CAAA,aAAA,CAAA;AAAA;;;;;;;;;;;;;;;QAUHI,IAAAA,CAAAA,OAAO,MAAA;gBAApB,QAAA;AAAA,sBACT,MAAsB;AAAA,YAAtBF,UAAA,CAAsB,IAAA,CAAA,MAAA,EAAA,QAAA;AAAA;;;;;;;;;;"}
package/es/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "1.2.9";
1
+ export declare const version = "1.2.11";
package/es/version.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const version = "1.2.9";
1
+ const version = "1.2.11";
2
2
 
3
3
  export { version };
4
4
  //# sourceMappingURL=version.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.mjs","sources":["../../../packages/pro-design-vue/version.ts"],"sourcesContent":["export const version = '1.2.9'\n"],"names":[],"mappings":"AAAO,MAAM,OAAA,GAAU;;;;"}
1
+ {"version":3,"file":"version.mjs","sources":["../../../packages/pro-design-vue/version.ts"],"sourcesContent":["export const version = '1.2.11'\n"],"names":[],"mappings":"AAAO,MAAM,OAAA,GAAU;;;;"}
@@ -76,13 +76,19 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
76
76
  algorithm.push((_d = __props.theme) == null ? void 0 : _d.algorithm);
77
77
  }
78
78
  }
79
+ const mergeToken = {
80
+ ...defaultToken.defaultToken,
81
+ ...(_e = __props.theme) == null ? void 0 : _e.token,
82
+ ...__props.token
83
+ };
79
84
  return {
80
85
  ...__props.theme,
81
86
  algorithm,
82
87
  token: {
83
- ...defaultToken.defaultToken,
84
- ...(_e = __props.theme) == null ? void 0 : _e.token,
85
- ...__props.token
88
+ ...mergeToken,
89
+ colorLink: mergeToken.colorPrimary,
90
+ colorLinkActive: "hsl(var(--pro-primary-600))",
91
+ colorLinkHover: "hsl(var(--pro-primary-400))"
86
92
  }
87
93
  };
88
94
  });
@@ -1 +1 @@
1
- {"version":3,"file":"config-provider.vue2.js","sources":["../../../../../../../packages/components/config-provider/src/config-provider.vue"],"sourcesContent":["<!--\n * @Author: shen\n * @Date: 2025-05-22 09:08:36\n * @LastEditors: shen\n * @LastEditTime: 2025-10-15 14:58:00\n * @Description:\n-->\n<script setup lang=\"ts\">\nimport type { ProConfigProviderProps } from './typing'\nimport { ConfigProvider, App, theme as antTheme } from 'ant-design-vue'\nimport { DEFAULT_LOCALE } from '@pro-design-vue/constants'\nimport { zhCNIntl } from './intl'\nimport { computed, nextTick, watch } from 'vue'\nimport { isArray, omit } from '@pro-design-vue/utils'\nimport dayjs from 'dayjs'\nimport ConfigProviderContainer from './config-provider-container.vue'\nimport antdDefaultLocale from 'ant-design-vue/es/locale/zh_CN.js'\nimport { defaultToken } from './defaultToken'\n\ninterface Props extends ProConfigProviderProps {}\n\ndefineOptions({\n name: 'ProConfigProvider',\n})\n\nconst {\n intl = {\n ...zhCNIntl,\n locale: 'default',\n },\n proPrefixCls = 'pro',\n dark = false,\n compact = false,\n token,\n locale = antdDefaultLocale,\n theme,\n table,\n drawer,\n modal,\n form,\n app,\n prefixCls = 'ant',\n componentSize,\n ...rest\n} = defineProps<Props>()\n// 默认国际化为zh-cn\nif (locale.locale === DEFAULT_LOCALE.toLocaleLowerCase()) {\n import('dayjs/locale/zh-cn.js').then((value) => {\n dayjs.locale(value)\n })\n}\n\nconst mergerTheme = computed(() => {\n const algorithm = dark ? [antTheme.darkAlgorithm] : [antTheme.defaultAlgorithm]\n if (compact) {\n algorithm.push(antTheme.compactAlgorithm)\n }\n\n if (theme?.algorithm) {\n if (isArray(theme?.algorithm)) {\n algorithm.push(...theme?.algorithm)\n } else {\n algorithm.push(theme?.algorithm)\n }\n }\n\n return {\n ...theme,\n algorithm,\n token: {\n ...defaultToken,\n ...theme?.token,\n ...token,\n },\n }\n})\n\nwatch(\n () => dark,\n async () => {\n await nextTick()\n const root = document.documentElement\n root.classList.toggle('dark', dark)\n },\n {\n immediate: true,\n },\n)\nConfigProvider.config({\n prefixCls,\n})\n</script>\n\n<template>\n <ConfigProvider\n v-bind=\"rest\"\n :locale\n :prefixCls\n :theme=\"mergerTheme\"\n :componentSize\n :form=\"\n omit(form ?? {}, ['resetOnSubmit', 'labelWidth', 'resetText', 'searchText', 'labelWidth'])\n \"\n >\n <App v-bind=\"app\">\n <ConfigProviderContainer\n :contentOffsetTop\n :intl\n :dark\n :proPrefixCls\n :table\n :form\n :locale\n :drawer\n :modal\n :prefixCls\n :componentSize\n >\n <slot />\n </ConfigProviderContainer>\n </App>\n </ConfigProvider>\n</template>\n"],"names":["_createPropsRestProxy","DEFAULT_LOCALE","computed","antTheme","isArray","defaultToken","watch","nextTick","ConfigProvider","_createBlock","_unref","_mergeProps","locale","prefixCls","componentSize","omit","form","_createVNode","app","ConfigProviderContainer","contentOffsetTop","intl","dark","proPrefixCls","table","drawer","modal","_renderSlot"],"mappings":"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"}
1
+ {"version":3,"file":"config-provider.vue2.js","sources":["../../../../../../../packages/components/config-provider/src/config-provider.vue"],"sourcesContent":["<!--\n * @Author: shen\n * @Date: 2025-05-22 09:08:36\n * @LastEditors: shen\n * @LastEditTime: 2025-10-18 11:08:18\n * @Description:\n-->\n<script setup lang=\"ts\">\nimport type { ProConfigProviderProps } from './typing'\nimport { ConfigProvider, App, theme as antTheme } from 'ant-design-vue'\nimport { DEFAULT_LOCALE } from '@pro-design-vue/constants'\nimport { zhCNIntl } from './intl'\nimport { computed, nextTick, watch } from 'vue'\nimport { isArray, omit } from '@pro-design-vue/utils'\nimport dayjs from 'dayjs'\nimport ConfigProviderContainer from './config-provider-container.vue'\nimport antdDefaultLocale from 'ant-design-vue/es/locale/zh_CN.js'\nimport { defaultToken } from './defaultToken'\n\ninterface Props extends ProConfigProviderProps {}\n\ndefineOptions({\n name: 'ProConfigProvider',\n})\n\nconst {\n intl = {\n ...zhCNIntl,\n locale: 'default',\n },\n proPrefixCls = 'pro',\n dark = false,\n compact = false,\n token,\n locale = antdDefaultLocale,\n theme,\n table,\n drawer,\n modal,\n form,\n app,\n prefixCls = 'ant',\n componentSize,\n ...rest\n} = defineProps<Props>()\n// 默认国际化为zh-cn\nif (locale.locale === DEFAULT_LOCALE.toLocaleLowerCase()) {\n import('dayjs/locale/zh-cn.js').then((value) => {\n dayjs.locale(value)\n })\n}\n\nconst mergerTheme = computed(() => {\n const algorithm = dark ? [antTheme.darkAlgorithm] : [antTheme.defaultAlgorithm]\n if (compact) {\n algorithm.push(antTheme.compactAlgorithm)\n }\n\n if (theme?.algorithm) {\n if (isArray(theme?.algorithm)) {\n algorithm.push(...theme?.algorithm)\n } else {\n algorithm.push(theme?.algorithm)\n }\n }\n const mergeToken = {\n ...defaultToken,\n ...theme?.token,\n ...token,\n }\n return {\n ...theme,\n algorithm,\n token: {\n ...mergeToken,\n colorLink: mergeToken.colorPrimary,\n colorLinkActive: 'hsl(var(--pro-primary-600))',\n colorLinkHover: 'hsl(var(--pro-primary-400))',\n },\n }\n})\n\nwatch(\n () => dark,\n async () => {\n await nextTick()\n const root = document.documentElement\n root.classList.toggle('dark', dark)\n },\n {\n immediate: true,\n },\n)\nConfigProvider.config({\n prefixCls,\n})\n</script>\n\n<template>\n <ConfigProvider\n v-bind=\"rest\"\n :locale\n :prefixCls\n :theme=\"mergerTheme\"\n :componentSize\n :form=\"\n omit(form ?? {}, ['resetOnSubmit', 'labelWidth', 'resetText', 'searchText', 'labelWidth'])\n \"\n >\n <App v-bind=\"app\">\n <ConfigProviderContainer\n :contentOffsetTop\n :intl\n :dark\n :proPrefixCls\n :table\n :form\n :locale\n :drawer\n :modal\n :prefixCls\n :componentSize\n >\n <slot />\n </ConfigProviderContainer>\n </App>\n </ConfigProvider>\n</template>\n"],"names":["_createPropsRestProxy","DEFAULT_LOCALE","computed","antTheme","isArray","defaultToken","watch","nextTick","ConfigProvider","_createBlock","_unref","_mergeProps","locale","prefixCls","componentSize","omit","form","_createVNode","app","ConfigProviderContainer","contentOffsetTop","intl","dark","proPrefixCls","table","drawer","modal","_renderSlot"],"mappings":"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"}
@@ -108,73 +108,81 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
108
108
  height: height.value,
109
109
  onClose: handleClose
110
110
  }), vue.createSlots({
111
- title: vue.withCtx(() => [
112
- vue.renderSlot(_ctx.$slots, "title", {}, () => [
113
- vue.createElementVNode(
114
- "div",
115
- {
116
- class: vue.normalizeClass(`${vue.unref(prefixCls)}-title`)
117
- },
118
- vue.toDisplayString(_ctx.title),
119
- 3
120
- /* TEXT, CLASS */
121
- )
122
- ]),
123
- vue.renderSlot(_ctx.$slots, "description", {}, () => [
124
- vue.createElementVNode(
125
- "div",
126
- {
127
- class: vue.normalizeClass(`${vue.unref(prefixCls)}-description`)
128
- },
129
- vue.toDisplayString(_ctx.description),
130
- 3
131
- /* TEXT, CLASS */
132
- )
133
- ])
134
- ]),
135
- extra: vue.withCtx(() => [
136
- vue.renderSlot(_ctx.$slots, "extra"),
137
- mergeShowFullscreen.value && !vue.unref(isMobile) ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.ProButton), {
138
- key: 0,
139
- class: vue.normalizeClass(`${vue.unref(prefixCls)}-fullscreen`),
140
- size: "small",
141
- shape: "circle",
142
- type: "text",
143
- onClick: handleFullScreen
144
- }, {
145
- icon: vue.withCtx(() => [
146
- !fullscreen.value ? (vue.openBlock(), vue.createBlock(vue.unref(Icon.FullscreenOutlined), { key: 0 })) : (vue.openBlock(), vue.createBlock(vue.unref(Icon.FullscreenExitOutlined), { key: 1 }))
147
- ]),
148
- _: 1
149
- /* STABLE */
150
- }, 8, ["class"])) : vue.createCommentVNode("v-if", true),
151
- _ctx.closable ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.ProButton), {
152
- key: 1,
153
- class: vue.normalizeClass(`${vue.unref(prefixCls)}-close`),
154
- size: "small",
155
- shape: "circle",
156
- type: "text",
157
- onClick: handleBtnClose
158
- }, {
159
- icon: vue.withCtx(() => [
160
- vue.createVNode(vue.unref(Icon.CloseOutlined))
161
- ]),
162
- _: 1
163
- /* STABLE */
164
- }, 8, ["class"])) : vue.createCommentVNode("v-if", true)
165
- ]),
166
111
  default: vue.withCtx(() => [
167
112
  vue.renderSlot(_ctx.$slots, "default")
168
113
  ]),
169
114
  _: 2
170
115
  /* DYNAMIC */
171
116
  }, [
117
+ _ctx.title || _ctx.$slots.title ? {
118
+ name: "title",
119
+ fn: vue.withCtx(() => [
120
+ vue.renderSlot(_ctx.$slots, "title", {}, () => [
121
+ vue.createElementVNode(
122
+ "div",
123
+ {
124
+ class: vue.normalizeClass(`${vue.unref(prefixCls)}-title`)
125
+ },
126
+ vue.toDisplayString(_ctx.title),
127
+ 3
128
+ /* TEXT, CLASS */
129
+ )
130
+ ]),
131
+ vue.renderSlot(_ctx.$slots, "description", {}, () => [
132
+ vue.createElementVNode(
133
+ "div",
134
+ {
135
+ class: vue.normalizeClass(`${vue.unref(prefixCls)}-description`)
136
+ },
137
+ vue.toDisplayString(_ctx.description),
138
+ 3
139
+ /* TEXT, CLASS */
140
+ )
141
+ ])
142
+ ]),
143
+ key: "0"
144
+ } : void 0,
145
+ _ctx.title || _ctx.$slots.title ? {
146
+ name: "extra",
147
+ fn: vue.withCtx(() => [
148
+ vue.renderSlot(_ctx.$slots, "extra"),
149
+ mergeShowFullscreen.value && !vue.unref(isMobile) ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.ProButton), {
150
+ key: 0,
151
+ class: vue.normalizeClass(`${vue.unref(prefixCls)}-fullscreen`),
152
+ size: "small",
153
+ shape: "circle",
154
+ type: "text",
155
+ onClick: handleFullScreen
156
+ }, {
157
+ icon: vue.withCtx(() => [
158
+ !fullscreen.value ? (vue.openBlock(), vue.createBlock(vue.unref(Icon.FullscreenOutlined), { key: 0 })) : (vue.openBlock(), vue.createBlock(vue.unref(Icon.FullscreenExitOutlined), { key: 1 }))
159
+ ]),
160
+ _: 1
161
+ /* STABLE */
162
+ }, 8, ["class"])) : vue.createCommentVNode("v-if", true),
163
+ _ctx.closable ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.ProButton), {
164
+ key: 1,
165
+ class: vue.normalizeClass(`${vue.unref(prefixCls)}-close`),
166
+ size: "small",
167
+ shape: "circle",
168
+ type: "text",
169
+ onClick: handleBtnClose
170
+ }, {
171
+ icon: vue.withCtx(() => [
172
+ vue.createVNode(vue.unref(Icon.CloseOutlined))
173
+ ]),
174
+ _: 1
175
+ /* STABLE */
176
+ }, 8, ["class"])) : vue.createCommentVNode("v-if", true)
177
+ ]),
178
+ key: "1"
179
+ } : void 0,
172
180
  _ctx.$slots.footer ? {
173
181
  name: "footer",
174
182
  fn: vue.withCtx(() => [
175
183
  vue.renderSlot(_ctx.$slots, "footer")
176
184
  ]),
177
- key: "0"
185
+ key: "2"
178
186
  } : void 0
179
187
  ]), 1040, ["root-class-name", "width", "height"]);
180
188
  };
@@ -1 +1 @@
1
- {"version":3,"file":"drawer.vue2.js","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-10-12 12:59:57\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'\nimport { useProConfigInject } from '@pro-design-vue/components/config-provider'\n\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: undefined,\n})\n\nconst emit = defineEmits<{ close: [e: Event]; fullScreen: [value: boolean] }>()\n\nconst prefixCls = usePrefixCls('drawer')\nconst { isMobile } = useIsMobile()\nconst { drawer } = useProConfigInject()\nconst fullscreen = ref(props.defaultFullscreen)\nconst hasFullscreen = computed(() => isMobile.value || fullscreen.value)\nconst mergeShowFullscreen = computed(() => props.showFullscreen ?? drawer?.value?.showFullscreen)\n\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=\"mergeShowFullscreen && !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":["usePrefixCls","useIsMobile","useProConfigInject","ref","computed","omitKeysAndUndefined","_createBlock","_unref","Drawer","_mergeProps","rootClassName","_renderSlot","_createElementVNode","title","description","ProButton","FullscreenOutlined","FullscreenExitOutlined","closable","_createVNode","CloseOutlined","$slots"],"mappings":"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"}
1
+ {"version":3,"file":"drawer.vue2.js","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-10-18 19:17:38\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'\nimport { useProConfigInject } from '@pro-design-vue/components/config-provider'\n\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: undefined,\n})\n\nconst emit = defineEmits<{ close: [e: Event]; fullScreen: [value: boolean] }>()\n\nconst prefixCls = usePrefixCls('drawer')\nconst { isMobile } = useIsMobile()\nconst { drawer } = useProConfigInject()\nconst fullscreen = ref(props.defaultFullscreen)\nconst hasFullscreen = computed(() => isMobile.value || fullscreen.value)\nconst mergeShowFullscreen = computed(() => props.showFullscreen ?? drawer?.value?.showFullscreen)\n\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 v-if=\"title || $slots.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 v-if=\"title || $slots.title\">\n <slot name=\"extra\" />\n <ProButton\n v-if=\"mergeShowFullscreen && !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":["usePrefixCls","useIsMobile","useProConfigInject","ref","computed","omitKeysAndUndefined","_createBlock","_unref","Drawer","_mergeProps","rootClassName","_renderSlot","title","$slots","_createElementVNode","description","ProButton","FullscreenOutlined","FullscreenExitOutlined","closable","_createVNode","CloseOutlined"],"mappings":"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"}
@@ -147,91 +147,95 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
147
147
  style: modalStyle.value,
148
148
  onCancel: handleClose
149
149
  }), vue.createSlots({
150
- title: vue.withCtx(() => [
151
- vue.createElementVNode(
152
- "div",
153
- {
154
- ref: "modalHeaderRef",
155
- class: vue.normalizeClass(`${vue.unref(prefixCls)}-header`)
156
- },
157
- [
158
- vue.renderSlot(_ctx.$slots, "title", {}, () => [
159
- vue.createElementVNode(
160
- "div",
161
- {
162
- class: vue.normalizeClass(`${vue.unref(prefixCls)}-title`)
163
- },
164
- vue.toDisplayString(_ctx.title),
165
- 3
166
- /* TEXT, CLASS */
167
- )
168
- ]),
169
- vue.renderSlot(_ctx.$slots, "description", {}, () => [
170
- vue.createElementVNode(
171
- "div",
172
- {
173
- class: vue.normalizeClass(`${vue.unref(prefixCls)}-description`)
174
- },
175
- vue.toDisplayString(_ctx.description),
176
- 3
177
- /* TEXT, CLASS */
178
- )
179
- ]),
180
- vue.createElementVNode(
181
- "div",
182
- {
183
- class: vue.normalizeClass(`${vue.unref(prefixCls)}-extra`)
184
- },
185
- [
186
- mergeShowFullscreen.value && !vue.unref(isMobile) ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.ProButton), {
187
- key: 0,
188
- class: vue.normalizeClass(`${vue.unref(prefixCls)}-fullscreen`),
189
- size: "small",
190
- shape: "circle",
191
- type: "text",
192
- onClick: handleFullScreen
193
- }, {
194
- icon: vue.withCtx(() => [
195
- !fullscreen.value ? (vue.openBlock(), vue.createBlock(vue.unref(Icon.FullscreenOutlined), { key: 0 })) : (vue.openBlock(), vue.createBlock(vue.unref(Icon.FullscreenExitOutlined), { key: 1 }))
196
- ]),
197
- _: 1
198
- /* STABLE */
199
- }, 8, ["class"])) : vue.createCommentVNode("v-if", true),
200
- _ctx.closable ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.ProButton), {
201
- key: 1,
202
- class: vue.normalizeClass(`${vue.unref(prefixCls)}-close`),
203
- size: "small",
204
- shape: "circle",
205
- type: "text",
206
- onClick: handleBtnClose
207
- }, {
208
- icon: vue.withCtx(() => [
209
- vue.createVNode(vue.unref(Icon.CloseOutlined))
210
- ]),
211
- _: 1
212
- /* STABLE */
213
- }, 8, ["class"])) : vue.createCommentVNode("v-if", true)
214
- ],
215
- 2
216
- /* CLASS */
217
- )
218
- ],
219
- 2
220
- /* CLASS */
221
- )
222
- ]),
223
150
  default: vue.withCtx(() => [
224
151
  vue.renderSlot(_ctx.$slots, "default")
225
152
  ]),
226
153
  _: 2
227
154
  /* DYNAMIC */
228
155
  }, [
156
+ _ctx.title || _ctx.$slots.title ? {
157
+ name: "title",
158
+ fn: vue.withCtx(() => [
159
+ vue.createElementVNode(
160
+ "div",
161
+ {
162
+ ref: "modalHeaderRef",
163
+ class: vue.normalizeClass(`${vue.unref(prefixCls)}-header`)
164
+ },
165
+ [
166
+ vue.renderSlot(_ctx.$slots, "title", {}, () => [
167
+ vue.createElementVNode(
168
+ "div",
169
+ {
170
+ class: vue.normalizeClass(`${vue.unref(prefixCls)}-title`)
171
+ },
172
+ vue.toDisplayString(_ctx.title),
173
+ 3
174
+ /* TEXT, CLASS */
175
+ )
176
+ ]),
177
+ vue.renderSlot(_ctx.$slots, "description", {}, () => [
178
+ vue.createElementVNode(
179
+ "div",
180
+ {
181
+ class: vue.normalizeClass(`${vue.unref(prefixCls)}-description`)
182
+ },
183
+ vue.toDisplayString(_ctx.description),
184
+ 3
185
+ /* TEXT, CLASS */
186
+ )
187
+ ]),
188
+ vue.createElementVNode(
189
+ "div",
190
+ {
191
+ class: vue.normalizeClass(`${vue.unref(prefixCls)}-extra`)
192
+ },
193
+ [
194
+ mergeShowFullscreen.value && !vue.unref(isMobile) ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.ProButton), {
195
+ key: 0,
196
+ class: vue.normalizeClass(`${vue.unref(prefixCls)}-fullscreen`),
197
+ size: "small",
198
+ shape: "circle",
199
+ type: "text",
200
+ onClick: handleFullScreen
201
+ }, {
202
+ icon: vue.withCtx(() => [
203
+ !fullscreen.value ? (vue.openBlock(), vue.createBlock(vue.unref(Icon.FullscreenOutlined), { key: 0 })) : (vue.openBlock(), vue.createBlock(vue.unref(Icon.FullscreenExitOutlined), { key: 1 }))
204
+ ]),
205
+ _: 1
206
+ /* STABLE */
207
+ }, 8, ["class"])) : vue.createCommentVNode("v-if", true),
208
+ _ctx.closable ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.ProButton), {
209
+ key: 1,
210
+ class: vue.normalizeClass(`${vue.unref(prefixCls)}-close`),
211
+ size: "small",
212
+ shape: "circle",
213
+ type: "text",
214
+ onClick: handleBtnClose
215
+ }, {
216
+ icon: vue.withCtx(() => [
217
+ vue.createVNode(vue.unref(Icon.CloseOutlined))
218
+ ]),
219
+ _: 1
220
+ /* STABLE */
221
+ }, 8, ["class"])) : vue.createCommentVNode("v-if", true)
222
+ ],
223
+ 2
224
+ /* CLASS */
225
+ )
226
+ ],
227
+ 2
228
+ /* CLASS */
229
+ )
230
+ ]),
231
+ key: "0"
232
+ } : void 0,
229
233
  _ctx.$slots.footer ? {
230
234
  name: "footer",
231
235
  fn: vue.withCtx(() => [
232
236
  vue.renderSlot(_ctx.$slots, "footer")
233
237
  ]),
234
- key: "0"
238
+ key: "1"
235
239
  } : void 0
236
240
  ]), 1040, ["class", "width", "style"]);
237
241
  };