vxe-pc-ui 4.20.7 → 4.20.9
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/all.esm.js +915 -820
- package/dist/style.css +1 -1
- package/dist/style.min.css +1 -1
- package/es/card/src/card.js +8 -6
- package/es/drawer/src/drawer.js +7 -5
- package/es/icon/style.css +1 -1
- package/es/layout-aside/src/layout-aside.js +6 -4
- package/es/layout-body/src/layout-body.js +6 -4
- package/es/layout-container/src/layout-container.js +11 -3
- package/es/list/src/list.js +79 -50
- package/es/menu/src/menu.js +7 -5
- package/es/modal/src/modal.js +7 -5
- package/es/scrollbar/src/scrollbar.js +8 -0
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/tabs/src/tabs.js +5 -4
- package/es/tooltip/src/tooltip.js +15 -7
- package/es/tree/src/tree.js +74 -45
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/card/src/card.js +9 -6
- package/lib/card/src/card.min.js +1 -1
- package/lib/drawer/src/drawer.js +7 -4
- package/lib/drawer/src/drawer.min.js +1 -1
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/index.umd.js +371 -163
- package/lib/index.umd.min.js +1 -1
- package/lib/layout-aside/src/layout-aside.js +7 -4
- package/lib/layout-aside/src/layout-aside.min.js +1 -1
- package/lib/layout-body/src/layout-body.js +7 -4
- package/lib/layout-body/src/layout-body.min.js +1 -1
- package/lib/layout-container/src/layout-container.js +20 -4
- package/lib/layout-container/src/layout-container.min.js +1 -1
- package/lib/list/src/list.js +79 -47
- package/lib/list/src/list.min.js +1 -1
- package/lib/menu/src/menu.js +8 -4
- package/lib/menu/src/menu.min.js +1 -1
- package/lib/modal/src/modal.js +7 -4
- package/lib/modal/src/modal.min.js +1 -1
- package/lib/scrollbar/src/scrollbar.js +8 -0
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/tabs/src/tabs.js +6 -5
- package/lib/tabs/src/tabs.min.js +1 -1
- package/lib/tooltip/src/tooltip.js +15 -6
- package/lib/tooltip/src/tooltip.min.js +1 -1
- package/lib/tree/src/tree.js +74 -43
- package/lib/tree/src/tree.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +2 -2
- package/packages/card/src/card.ts +8 -6
- package/packages/drawer/src/drawer.ts +7 -5
- package/packages/layout-aside/src/layout-aside.ts +6 -4
- package/packages/layout-body/src/layout-body.ts +6 -4
- package/packages/layout-container/src/layout-container.ts +13 -3
- package/packages/list/src/list.ts +81 -50
- package/packages/menu/src/menu.ts +7 -5
- package/packages/modal/src/modal.ts +7 -5
- package/packages/scrollbar/src/scrollbar.ts +8 -1
- package/packages/tabs/src/tabs.ts +5 -4
- package/packages/tooltip/src/tooltip.ts +15 -7
- package/packages/tree/src/tree.ts +76 -45
- package/types/components/card.d.ts +2 -2
- package/types/components/drawer.d.ts +2 -2
- package/types/components/grid.d.ts +3 -1
- package/types/components/layout-aside.d.ts +2 -2
- package/types/components/layout-body.d.ts +2 -2
- package/types/components/layout-container.d.ts +3 -1
- package/types/components/list.d.ts +2 -2
- package/types/components/menu.d.ts +2 -2
- package/types/components/modal.d.ts +2 -2
- package/types/components/scrollbar.d.ts +10 -0
- package/types/components/table.d.ts +9 -5
- package/types/components/tabs.d.ts +2 -2
- package/types/components/tooltip.d.ts +2 -2
- package/types/components/tree.d.ts +2 -2
- /package/es/icon/{iconfont.1792080138286.ttf → iconfont.1792139440389.ttf} +0 -0
- /package/es/icon/{iconfont.1792080138286.woff → iconfont.1792139440389.woff} +0 -0
- /package/es/icon/{iconfont.1792080138286.woff2 → iconfont.1792139440389.woff2} +0 -0
- /package/es/{iconfont.1792080138286.ttf → iconfont.1792139440389.ttf} +0 -0
- /package/es/{iconfont.1792080138286.woff → iconfont.1792139440389.woff} +0 -0
- /package/es/{iconfont.1792080138286.woff2 → iconfont.1792139440389.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1792080138286.ttf → iconfont.1792139440389.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1792080138286.woff → iconfont.1792139440389.woff} +0 -0
- /package/lib/icon/style/{iconfont.1792080138286.woff2 → iconfont.1792139440389.woff2} +0 -0
- /package/lib/{iconfont.1792080138286.ttf → iconfont.1792139440389.ttf} +0 -0
- /package/lib/{iconfont.1792080138286.woff → iconfont.1792139440389.woff} +0 -0
- /package/lib/{iconfont.1792080138286.woff2 → iconfont.1792139440389.woff2} +0 -0
package/es/tabs/src/tabs.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ref, h, reactive, inject, provide, computed, onUnmounted, watch, nextTick, onMounted } from 'vue';
|
|
2
2
|
import { defineVxeComponent } from '../../ui/src/comp';
|
|
3
|
-
import { VxeUI,
|
|
3
|
+
import { VxeUI, useFns } from '../../ui';
|
|
4
4
|
import { getSlotVNs } from '../../ui/src/vn';
|
|
5
5
|
import { toCssUnit, addClass, removeClass } from '../../ui/src/dom';
|
|
6
6
|
import { isEnableConf } from '../../ui/src/utils';
|
|
@@ -72,7 +72,8 @@ export default defineVxeComponent({
|
|
|
72
72
|
const { slots, emit } = context;
|
|
73
73
|
const xID = XEUtils.uniqueId();
|
|
74
74
|
const $xeParentTabs = inject('$xeTabs', null);
|
|
75
|
-
const { computeSize } = useSize(props);
|
|
75
|
+
const { computeSize } = useFns.useSize(props);
|
|
76
|
+
const { computeIsVScrollbar } = useFns.useVScrollbar(props);
|
|
76
77
|
const refElem = ref();
|
|
77
78
|
const refHeadWrapperElem = ref();
|
|
78
79
|
const refHeadPrevElem = ref();
|
|
@@ -744,13 +745,13 @@ export default defineVxeComponent({
|
|
|
744
745
|
]);
|
|
745
746
|
};
|
|
746
747
|
const renderTabPane = (item) => {
|
|
747
|
-
const { useScrollbar } = props;
|
|
748
748
|
const { initNames, activeName } = reactData;
|
|
749
749
|
const { name, slots } = item;
|
|
750
750
|
const defaultSlot = slots ? slots.default : null;
|
|
751
751
|
const scrollbarProps = computeScrollbarProps.value;
|
|
752
|
+
const isVScrollbar = computeIsVScrollbar.value;
|
|
752
753
|
if (name && initNames.includes(name)) {
|
|
753
|
-
return
|
|
754
|
+
return isVScrollbar
|
|
754
755
|
? h(VxeScrollbarComponent, Object.assign({ key: `${name}`, class: ['vxe-tabs-pane--scrollbar-item', {
|
|
755
756
|
'is--visible': activeName === name
|
|
756
757
|
}] }, scrollbarProps), {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { h, ref, nextTick, onBeforeUnmount, onMounted, computed, reactive, watch } from 'vue';
|
|
2
2
|
import { defineVxeComponent } from '../../ui/src/comp';
|
|
3
3
|
import XEUtils from 'xe-utils';
|
|
4
|
-
import { VxeUI,
|
|
4
|
+
import { VxeUI, useFns } from '../../ui';
|
|
5
5
|
import { getLastZIndex, nextZIndex } from '../../ui/src/utils';
|
|
6
6
|
import { getPopupAppendElement, toCssUnit, updatePanelPlacement } from '../../ui/src/dom';
|
|
7
7
|
import { getSlotVNs } from '../../ui/src/vn';
|
|
@@ -129,7 +129,8 @@ export default defineVxeComponent({
|
|
|
129
129
|
setup(props, context) {
|
|
130
130
|
const { slots, emit } = context;
|
|
131
131
|
const xID = XEUtils.uniqueId();
|
|
132
|
-
const { computeSize } = useSize(props);
|
|
132
|
+
const { computeSize } = useFns.useSize(props);
|
|
133
|
+
const { computeIsVScrollbar } = useFns.useVScrollbar(props);
|
|
133
134
|
const reactData = reactive(createReactData());
|
|
134
135
|
const internalData = createInternalData();
|
|
135
136
|
const refElem = ref();
|
|
@@ -309,7 +310,7 @@ export default defineVxeComponent({
|
|
|
309
310
|
const { tipTarget: targetElem, tipStore, tipPos, tipZindex } = reactData;
|
|
310
311
|
const panelElem = refElem.value;
|
|
311
312
|
if (!targetElem || !panelElem) {
|
|
312
|
-
return;
|
|
313
|
+
return nextTick();
|
|
313
314
|
}
|
|
314
315
|
const targetRect = targetElem.getBoundingClientRect();
|
|
315
316
|
const targetWidth = targetElem.offsetWidth;
|
|
@@ -346,6 +347,7 @@ export default defineVxeComponent({
|
|
|
346
347
|
tipStore.placement = ppObj.placement;
|
|
347
348
|
tipStore.style = panelStyle;
|
|
348
349
|
tipStore.arrowStyle.left = ppObj.arrowLeft ? `${ppObj.arrowLeft}px` : '';
|
|
350
|
+
return nextTick();
|
|
349
351
|
};
|
|
350
352
|
const tooltipMethods = {
|
|
351
353
|
dispatchEvent,
|
|
@@ -372,8 +374,13 @@ export default defineVxeComponent({
|
|
|
372
374
|
return handleVisible(target, content);
|
|
373
375
|
},
|
|
374
376
|
updatePlacement() {
|
|
375
|
-
updateTipStyle()
|
|
376
|
-
|
|
377
|
+
return updateTipStyle().then(() => {
|
|
378
|
+
return updateTipStyle();
|
|
379
|
+
}).then(() => {
|
|
380
|
+
setTimeout(() => {
|
|
381
|
+
updateTipStyle();
|
|
382
|
+
}, 15);
|
|
383
|
+
});
|
|
377
384
|
},
|
|
378
385
|
isActived() {
|
|
379
386
|
return reactData.tipActive;
|
|
@@ -398,8 +405,9 @@ export default defineVxeComponent({
|
|
|
398
405
|
};
|
|
399
406
|
Object.assign($xeTooltip, tooltipMethods, tooltipPrivateMethods);
|
|
400
407
|
const renderContent = () => {
|
|
401
|
-
const {
|
|
408
|
+
const { theme, useHtml, useHTML } = props;
|
|
402
409
|
const { tipContent } = reactData;
|
|
410
|
+
const isVScrollbar = computeIsVScrollbar.value;
|
|
403
411
|
const wrapperStyle = computeWrapperStyle.value;
|
|
404
412
|
const contentSlot = slots.content;
|
|
405
413
|
const contVNs = [];
|
|
@@ -419,7 +427,7 @@ export default defineVxeComponent({
|
|
|
419
427
|
key: 'cd'
|
|
420
428
|
}, `${tipContent}`));
|
|
421
429
|
}
|
|
422
|
-
if (
|
|
430
|
+
if (isVScrollbar) {
|
|
423
431
|
return h(VxeScrollbarComponent, {
|
|
424
432
|
key: 5,
|
|
425
433
|
ref: contentScrollbar,
|
package/es/tree/src/tree.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ref, h, reactive, computed, watch, onBeforeUnmount, nextTick, onMounted, provide } from 'vue';
|
|
2
2
|
import { defineVxeComponent } from '../../ui/src/comp';
|
|
3
|
-
import { VxeUI, domUtils, createEvent,
|
|
3
|
+
import { VxeUI, domUtils, createEvent, useFns, globalEvents, globalResize, renderEmptyElement } from '../../ui';
|
|
4
4
|
import { calcTreeLine, getItemCacheObj } from './util';
|
|
5
5
|
import { createComponentLog } from '../../ui/src/log';
|
|
6
6
|
import { getCrossTreeDragNodeInfo } from './store';
|
|
@@ -246,11 +246,13 @@ export default defineVxeComponent({
|
|
|
246
246
|
setup(props, context) {
|
|
247
247
|
const { emit, slots } = context;
|
|
248
248
|
const xID = XEUtils.uniqueId();
|
|
249
|
-
const { computeSize } = useSize(props);
|
|
249
|
+
const { computeSize } = useFns.useSize(props);
|
|
250
|
+
const { computeIsVScrollbar } = useFns.useVScrollbar(props);
|
|
250
251
|
const refElem = ref();
|
|
251
252
|
const refHeaderWrapperElem = ref();
|
|
252
253
|
const refFooterWrapperElem = ref();
|
|
253
254
|
const refVirtualWrapper = ref();
|
|
255
|
+
const refVirtualSpaceElem = ref();
|
|
254
256
|
const refVirtualBody = ref();
|
|
255
257
|
const refTrackXElem = ref();
|
|
256
258
|
const refTrackYElem = ref();
|
|
@@ -955,8 +957,14 @@ export default defineVxeComponent({
|
|
|
955
957
|
});
|
|
956
958
|
};
|
|
957
959
|
const updateScrollbar = () => {
|
|
958
|
-
|
|
959
|
-
|
|
960
|
+
const isVScrollbar = computeIsVScrollbar.value;
|
|
961
|
+
if (isVScrollbar) {
|
|
962
|
+
return nextTick().then(() => {
|
|
963
|
+
updateThumbSize();
|
|
964
|
+
updateThumbOffset();
|
|
965
|
+
});
|
|
966
|
+
}
|
|
967
|
+
return Promise.resolve();
|
|
960
968
|
};
|
|
961
969
|
/**
|
|
962
970
|
* 重新计算列表
|
|
@@ -979,11 +987,11 @@ export default defineVxeComponent({
|
|
|
979
987
|
const parentPaddingSize = getPaddingTopBottomSize(parentEl);
|
|
980
988
|
reactData.parentHeight = Math.max(headHeight + footHeight + rowHeight, parentEl.clientHeight - parentPaddingSize - headHeight - footHeight);
|
|
981
989
|
}
|
|
982
|
-
updateScrollbar();
|
|
983
990
|
updateHeight();
|
|
984
991
|
return computeScrollLoad().then(() => {
|
|
985
992
|
updateHeight();
|
|
986
993
|
updateYSpace();
|
|
994
|
+
updateScrollbar();
|
|
987
995
|
});
|
|
988
996
|
}
|
|
989
997
|
return nextTick();
|
|
@@ -1008,7 +1016,7 @@ export default defineVxeComponent({
|
|
|
1008
1016
|
}
|
|
1009
1017
|
};
|
|
1010
1018
|
const scrollEvent = (evnt) => {
|
|
1011
|
-
const scrollBodyElem = evnt.
|
|
1019
|
+
const scrollBodyElem = evnt.currentTarget;
|
|
1012
1020
|
const scrollTop = scrollBodyElem.scrollTop;
|
|
1013
1021
|
const scrollLeft = scrollBodyElem.scrollLeft;
|
|
1014
1022
|
const isX = scrollLeft !== internalData.lastScrollLeft;
|
|
@@ -2996,6 +3004,26 @@ export default defineVxeComponent({
|
|
|
2996
3004
|
hideDropTip();
|
|
2997
3005
|
}
|
|
2998
3006
|
};
|
|
3007
|
+
const bindScrollbarResize = () => {
|
|
3008
|
+
const isVScrollbar = computeIsVScrollbar.value;
|
|
3009
|
+
const { scrollObserver } = internalData;
|
|
3010
|
+
if (isVScrollbar) {
|
|
3011
|
+
if (!scrollObserver) {
|
|
3012
|
+
const el = refElem.value;
|
|
3013
|
+
const viewInnerEl = refVirtualSpaceElem.value;
|
|
3014
|
+
const scrollObserver = globalResize.create(() => {
|
|
3015
|
+
reScrollFlag.value++;
|
|
3016
|
+
});
|
|
3017
|
+
if (el) {
|
|
3018
|
+
scrollObserver.observe(el);
|
|
3019
|
+
}
|
|
3020
|
+
if (viewInnerEl) {
|
|
3021
|
+
scrollObserver.observe(viewInnerEl);
|
|
3022
|
+
}
|
|
3023
|
+
internalData.scrollObserver = scrollObserver;
|
|
3024
|
+
}
|
|
3025
|
+
}
|
|
3026
|
+
};
|
|
2999
3027
|
const updateThumbSize = () => {
|
|
3000
3028
|
const viewEl = refVirtualWrapper.value;
|
|
3001
3029
|
if (!viewEl) {
|
|
@@ -3461,9 +3489,10 @@ export default defineVxeComponent({
|
|
|
3461
3489
|
return renderEmptyElement($xeTree);
|
|
3462
3490
|
};
|
|
3463
3491
|
const renderVN = () => {
|
|
3464
|
-
const { loading, trigger, showLine
|
|
3492
|
+
const { loading, trigger, showLine } = props;
|
|
3465
3493
|
const { bodyHeight, topSpaceHeight, treeList, tooltipStore, xThumbWidth, yThumbHeight } = reactData;
|
|
3466
3494
|
const vSize = computeSize.value;
|
|
3495
|
+
const isVScrollbar = computeIsVScrollbar.value;
|
|
3467
3496
|
const radioOpts = computeRadioOpts.value;
|
|
3468
3497
|
const checkboxOpts = computeCheckboxOpts.value;
|
|
3469
3498
|
const loadingOpts = computeLoadingOpts.value;
|
|
@@ -3490,17 +3519,17 @@ export default defineVxeComponent({
|
|
|
3490
3519
|
}
|
|
3491
3520
|
return h('div', Object.assign({ ref: refElem, class: [
|
|
3492
3521
|
'vxe-tree',
|
|
3493
|
-
|
|
3494
|
-
|
|
3495
|
-
|
|
3496
|
-
|
|
3522
|
+
isVScrollbar ? `ov-x--${scrollXVisible === false ? 'hidden' : 'visible'}` : '',
|
|
3523
|
+
isVScrollbar ? `ov-y--${scrollYVisible === false ? 'hidden' : 'visible'}` : '',
|
|
3524
|
+
isVScrollbar ? `sx-pos--${scrollbarXToTop ? 'top' : 'bottom'}` : '',
|
|
3525
|
+
isVScrollbar ? `sy-pos--${scrollbarYToLeft ? 'left' : 'right'}` : '',
|
|
3497
3526
|
{
|
|
3498
3527
|
[`size--${vSize}`]: vSize,
|
|
3499
3528
|
'show--line': showLine,
|
|
3500
|
-
'is--virtual-scrollbar':
|
|
3501
|
-
'ov-padding':
|
|
3502
|
-
'ov-x--auto-hide':
|
|
3503
|
-
'ov-y--auto-hide':
|
|
3529
|
+
'is--virtual-scrollbar': isVScrollbar,
|
|
3530
|
+
'ov-padding': isVScrollbar && scrollbarOpts.padding,
|
|
3531
|
+
'ov-x--auto-hide': isVScrollbar && scrollXAutoHide,
|
|
3532
|
+
'ov-y--auto-hide': isVScrollbar && scrollYAutoHide,
|
|
3504
3533
|
'overflow-y': yThumbHeight,
|
|
3505
3534
|
'overflow-x': xThumbWidth,
|
|
3506
3535
|
'checkbox--highlight': checkboxOpts.highlight,
|
|
@@ -3523,6 +3552,7 @@ export default defineVxeComponent({
|
|
|
3523
3552
|
onScroll: scrollEvent
|
|
3524
3553
|
}, [
|
|
3525
3554
|
h('div', {
|
|
3555
|
+
ref: refVirtualSpaceElem,
|
|
3526
3556
|
class: 'vxe-tree--y-space',
|
|
3527
3557
|
style: {
|
|
3528
3558
|
height: bodyHeight ? `${bodyHeight}px` : ''
|
|
@@ -3545,7 +3575,7 @@ export default defineVxeComponent({
|
|
|
3545
3575
|
/**
|
|
3546
3576
|
* 滚动条
|
|
3547
3577
|
*/
|
|
3548
|
-
|
|
3578
|
+
isVScrollbar
|
|
3549
3579
|
? h('div', {
|
|
3550
3580
|
class: scrollbarWrapperClss
|
|
3551
3581
|
}, [
|
|
@@ -3668,42 +3698,53 @@ export default defineVxeComponent({
|
|
|
3668
3698
|
watch(() => props.filterValue, () => {
|
|
3669
3699
|
triggerSearchEvent(new Event('filter'));
|
|
3670
3700
|
});
|
|
3671
|
-
const
|
|
3701
|
+
const reScrollFlag = ref(0);
|
|
3702
|
+
const reLayoutFlag = ref(0);
|
|
3672
3703
|
watch(() => props.height, () => {
|
|
3673
|
-
|
|
3704
|
+
reLayoutFlag.value++;
|
|
3674
3705
|
});
|
|
3675
3706
|
watch(() => props.minHeight, () => {
|
|
3676
|
-
|
|
3707
|
+
reLayoutFlag.value++;
|
|
3677
3708
|
});
|
|
3678
3709
|
watch(() => props.maxHeight, () => {
|
|
3679
|
-
|
|
3710
|
+
reLayoutFlag.value++;
|
|
3680
3711
|
});
|
|
3681
|
-
watch(
|
|
3682
|
-
|
|
3712
|
+
watch(computeIsVScrollbar, () => {
|
|
3713
|
+
nextTick(() => {
|
|
3714
|
+
bindScrollbarResize();
|
|
3715
|
+
nextTick(() => {
|
|
3716
|
+
reLayoutFlag.value++;
|
|
3717
|
+
});
|
|
3718
|
+
});
|
|
3683
3719
|
});
|
|
3684
3720
|
watch(computeScrollYWidth, () => {
|
|
3685
|
-
|
|
3721
|
+
reLayoutFlag.value++;
|
|
3686
3722
|
});
|
|
3687
3723
|
watch(computeScrollXHeight, () => {
|
|
3688
|
-
|
|
3724
|
+
reLayoutFlag.value++;
|
|
3689
3725
|
});
|
|
3690
3726
|
watch(computeScrollXVisible, () => {
|
|
3691
3727
|
nextTick(() => {
|
|
3692
|
-
|
|
3728
|
+
reLayoutFlag.value++;
|
|
3693
3729
|
});
|
|
3694
3730
|
});
|
|
3695
3731
|
watch(computeScrollYVisible, () => {
|
|
3696
3732
|
nextTick(() => {
|
|
3697
|
-
|
|
3733
|
+
reLayoutFlag.value++;
|
|
3698
3734
|
});
|
|
3699
3735
|
});
|
|
3700
|
-
watch(
|
|
3736
|
+
watch(reLayoutFlag, () => {
|
|
3701
3737
|
recalculate().then(() => {
|
|
3702
3738
|
recalculate();
|
|
3703
3739
|
});
|
|
3704
3740
|
});
|
|
3741
|
+
watch(reScrollFlag, () => {
|
|
3742
|
+
updateScrollbar().then(() => {
|
|
3743
|
+
updateScrollbar();
|
|
3744
|
+
});
|
|
3745
|
+
});
|
|
3705
3746
|
onMounted(() => {
|
|
3706
|
-
const { transform, drag, menuConfig, showOverflow, lazy, loadMethod, autoResize
|
|
3747
|
+
const { transform, drag, menuConfig, showOverflow, lazy, loadMethod, autoResize } = props;
|
|
3707
3748
|
const dragOpts = computeDragOpts.value;
|
|
3708
3749
|
if (!showOverflow) {
|
|
3709
3750
|
errLog('vxe.error.errProp', ['show-overflow=false', 'show-overflow=true']);
|
|
@@ -3724,25 +3765,12 @@ export default defineVxeComponent({
|
|
|
3724
3765
|
if (menuConfig && !VxeUIContextMenu) {
|
|
3725
3766
|
errLog('vxe.error.reqComp', ['vxe-context-menu']);
|
|
3726
3767
|
}
|
|
3727
|
-
const el = refElem.value;
|
|
3728
|
-
if (useScrollbar || autoResize) {
|
|
3729
|
-
const viewInnerEl = refVirtualBody.value;
|
|
3730
|
-
const scrollObserver = globalResize.create(() => {
|
|
3731
|
-
updateScrollbar();
|
|
3732
|
-
});
|
|
3733
|
-
if (el) {
|
|
3734
|
-
scrollObserver.observe(el);
|
|
3735
|
-
}
|
|
3736
|
-
if (viewInnerEl) {
|
|
3737
|
-
scrollObserver.observe(viewInnerEl);
|
|
3738
|
-
}
|
|
3739
|
-
internalData.scrollObserver = scrollObserver;
|
|
3740
|
-
}
|
|
3741
3768
|
if (autoResize) {
|
|
3769
|
+
const el = refElem.value;
|
|
3742
3770
|
const parentEl = getParentElem();
|
|
3743
3771
|
const resizeObserver = globalResize.create(() => {
|
|
3744
3772
|
if (props.autoResize) {
|
|
3745
|
-
|
|
3773
|
+
reLayoutFlag.value++;
|
|
3746
3774
|
}
|
|
3747
3775
|
});
|
|
3748
3776
|
if (el) {
|
|
@@ -3753,9 +3781,10 @@ export default defineVxeComponent({
|
|
|
3753
3781
|
}
|
|
3754
3782
|
internalData.resizeObserver = resizeObserver;
|
|
3755
3783
|
}
|
|
3756
|
-
|
|
3784
|
+
reLayoutFlag.value++;
|
|
3785
|
+
bindScrollbarResize();
|
|
3757
3786
|
globalEvents.on($xeTree, 'resize', () => {
|
|
3758
|
-
|
|
3787
|
+
reLayoutFlag.value++;
|
|
3759
3788
|
});
|
|
3760
3789
|
});
|
|
3761
3790
|
onBeforeUnmount(() => {
|
package/es/ui/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { VxeUI, setConfig, setIcon } from '@vxe-ui/core';
|
|
2
2
|
import { dynamicApp } from '../dynamics';
|
|
3
3
|
import { warnLog } from './src/log';
|
|
4
|
-
export const version = "4.20.
|
|
4
|
+
export const version = "4.20.9";
|
|
5
5
|
VxeUI.uiVersion = version;
|
|
6
6
|
VxeUI.dynamicApp = dynamicApp;
|
|
7
7
|
export function config(options) {
|
package/es/ui/src/log.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { VxeUI } from '@vxe-ui/core';
|
|
2
2
|
const { log } = VxeUI;
|
|
3
|
-
const uiVersion = `ui v${"4.20.
|
|
3
|
+
const uiVersion = `ui v${"4.20.9"}`;
|
|
4
4
|
export function createComponentLog(name) {
|
|
5
5
|
const tableVersion = VxeUI.tableVersion ? `table v${VxeUI.tableVersion}` : '';
|
|
6
6
|
const ganttVersion = VxeUI.ganttVersion ? `gantt v${VxeUI.ganttVersion}` : '';
|
package/lib/card/src/card.js
CHANGED
|
@@ -57,7 +57,10 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
57
57
|
const refElem = (0, _vue.ref)();
|
|
58
58
|
const {
|
|
59
59
|
computeSize
|
|
60
|
-
} =
|
|
60
|
+
} = _ui.useFns.useSize(props);
|
|
61
|
+
const {
|
|
62
|
+
computeIsVScrollbar
|
|
63
|
+
} = _ui.useFns.useVScrollbar(props);
|
|
61
64
|
const reactData = (0, _vue.reactive)({});
|
|
62
65
|
const refMaps = {
|
|
63
66
|
refElem
|
|
@@ -120,8 +123,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
120
123
|
shadow,
|
|
121
124
|
padding,
|
|
122
125
|
loading,
|
|
123
|
-
showTitleOverflow
|
|
124
|
-
useScrollbar
|
|
126
|
+
showTitleOverflow
|
|
125
127
|
} = props;
|
|
126
128
|
const defaultSlot = slots.default;
|
|
127
129
|
const headerSlot = slots.header;
|
|
@@ -131,6 +133,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
131
133
|
const leftSlot = slots.left;
|
|
132
134
|
const rightSlot = slots.right;
|
|
133
135
|
const vSize = computeSize.value;
|
|
136
|
+
const isVScrollbar = computeIsVScrollbar.value;
|
|
134
137
|
const cardStyle = computeCardStyle.value;
|
|
135
138
|
const scrollbarOpts = computeScrollbarOpts.value;
|
|
136
139
|
const scrollbarProps = computeScrollbarProps.value;
|
|
@@ -157,7 +160,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
157
160
|
class: 'vxe-card--header-extra'
|
|
158
161
|
}, (0, _vn.getSlotVNs)(extraSlot({}))) : (0, _ui.renderEmptyElement)($xeCard)]) : (0, _ui.renderEmptyElement)($xeCard), (0, _vue.h)('div', {
|
|
159
162
|
class: 'vxe-card--body'
|
|
160
|
-
}, [leftSlot ?
|
|
163
|
+
}, [leftSlot ? isVScrollbar ? (0, _vue.h)(_scrollbar.default, Object.assign(Object.assign({
|
|
161
164
|
class: 'vxe-card--body-scrollbar-left'
|
|
162
165
|
}, scrollbarProps), {
|
|
163
166
|
viewClassName: 'vxe-card--body-scrollbar-left-view',
|
|
@@ -166,7 +169,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
166
169
|
default: () => (0, _vn.getSlotVNs)(leftSlot({}))
|
|
167
170
|
}) : (0, _vue.h)('div', {
|
|
168
171
|
class: 'vxe-card--body-left'
|
|
169
|
-
}, (0, _vn.getSlotVNs)(leftSlot({}))) : (0, _ui.renderEmptyElement)($xeCard),
|
|
172
|
+
}, (0, _vn.getSlotVNs)(leftSlot({}))) : (0, _ui.renderEmptyElement)($xeCard), isVScrollbar ? (0, _vue.h)(_scrollbar.default, Object.assign(Object.assign({
|
|
170
173
|
class: 'vxe-card--body-scrollbar-content'
|
|
171
174
|
}, scrollbarProps), {
|
|
172
175
|
viewClassName: 'vxe-card--body-scrollbar-content-view' + (viewClassName ? ' ' + viewClassName : ''),
|
|
@@ -175,7 +178,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
175
178
|
default: () => defaultSlot ? (0, _vn.getSlotVNs)(defaultSlot({})) : []
|
|
176
179
|
}) : (0, _vue.h)('div', {
|
|
177
180
|
class: 'vxe-card--body-content'
|
|
178
|
-
}, defaultSlot ? (0, _vn.getSlotVNs)(defaultSlot({})) : []), rightSlot ?
|
|
181
|
+
}, defaultSlot ? (0, _vn.getSlotVNs)(defaultSlot({})) : []), rightSlot ? isVScrollbar ? (0, _vue.h)(_scrollbar.default, Object.assign(Object.assign({
|
|
179
182
|
class: 'vxe-card--body-scrollbar-right'
|
|
180
183
|
}, scrollbarProps), {
|
|
181
184
|
viewClassName: 'vxe-card--body-scrollbar-right-view',
|
package/lib/card/src/card.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_vn=require("../../ui/src/vn"),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_loading=_interopRequireDefault(require("../../loading")),_scrollbar=_interopRequireDefault(require("../../scrollbar"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeCard",props:{title:String,showTitleOverflow:{type:Boolean,default:()=>(0,_ui.getConfig)().card.showTitleOverflow},width:[String,Number],height:[String,Number],border:{type:Boolean,default:()=>(0,_ui.getConfig)().card.border},loading:Boolean,shadow:{type:Boolean,default:()=>(0,_ui.getConfig)().card.shadow},padding:{type:Boolean,default:()=>(0,_ui.getConfig)().card.padding},size:{type:String,default:()=>(0,_ui.getConfig)().card.size||(0,_ui.getConfig)().size},useScrollbar:{type:Boolean,default:()=>(0,_utils.getDefaultConfig)((0,_ui.getConfig)().card.useScrollbar,(0,_ui.getConfig)().useScrollbar)},scrollbarConfig:Object},emits:[],setup(m,e){let{slots:x,emit:a}=e;var r=_xeUtils.default.uniqueId();let C=(0,_vue.ref)(),w=(
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_vn=require("../../ui/src/vn"),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_loading=_interopRequireDefault(require("../../loading")),_scrollbar=_interopRequireDefault(require("../../scrollbar"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeCard",props:{title:String,showTitleOverflow:{type:Boolean,default:()=>(0,_ui.getConfig)().card.showTitleOverflow},width:[String,Number],height:[String,Number],border:{type:Boolean,default:()=>(0,_ui.getConfig)().card.border},loading:Boolean,shadow:{type:Boolean,default:()=>(0,_ui.getConfig)().card.shadow},padding:{type:Boolean,default:()=>(0,_ui.getConfig)().card.padding},size:{type:String,default:()=>(0,_ui.getConfig)().card.size||(0,_ui.getConfig)().size},useScrollbar:{type:Boolean,default:()=>(0,_utils.getDefaultConfig)((0,_ui.getConfig)().card.useScrollbar,(0,_ui.getConfig)().useScrollbar)},scrollbarConfig:Object},emits:[],setup(m,e){let{slots:x,emit:a}=e;var r=_xeUtils.default.uniqueId();let C=(0,_vue.ref)(),w=_ui.useFns.useSize(m).computeSize,y=_ui.useFns.useVScrollbar(m).computeIsVScrollbar;var t=(0,_vue.reactive)({});let i={refElem:C},N=(0,_vue.computed)(()=>{var{height:e,width:r}=m,t={};return r&&(t.width=(0,_dom.toCssUnit)(r)),e&&(t.height=(0,_dom.toCssUnit)(e)),t}),S=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().card.scrollbarConfig,m.scrollbarConfig)),V=(0,_vue.computed)(()=>{var e=S.value;return{width:e.width,height:e.height,autoHide:e.autoHide,visible:e.visible,xConfig:e.xConfig,yConfig:e.yConfig,className:e.className,viewAttrs:e.viewAttrs}}),l={computeSize:w},q={xID:r,props:m,context:e,reactData:t,getRefMaps:()=>i,getComputeMaps:()=>l};Object.assign(q,{dispatchEvent:(e,r,t)=>{a(e,(0,_ui.createEvent)(t,{$card:q},r))}},{});return q.renderVN=()=>{var{title:e,border:r,shadow:t,padding:a,loading:i,showTitleOverflow:l}=m;let s=x.default;var o=x.header,d=x.title,u=x.extra,n=x.footer;let v=x.left,c=x.right;var _=w.value,g=y.value,f=N.value,b=S.value,h=V.value,{viewClassName:b,viewInnerClassName:p}=b;return(0,_vue.h)("div",{ref:C,class:["vxe-card",{["size--"+_]:_,"is--border":r,"is--shadow":t,"is--padding":a}],style:f},[e||d||o?(0,_vue.h)("div",{class:"vxe-card--header"},o?(0,_vn.getSlotVNs)(o({})):[(0,_vue.h)("div",{class:["vxe-card--header-title",{"is--ellipsis":l}]},d?(0,_vn.getSlotVNs)(d({})):""+(e||"")),u?(0,_vue.h)("div",{class:"vxe-card--header-extra"},(0,_vn.getSlotVNs)(u({}))):(0,_ui.renderEmptyElement)(q)]):(0,_ui.renderEmptyElement)(q),(0,_vue.h)("div",{class:"vxe-card--body"},[v?g?(0,_vue.h)(_scrollbar.default,Object.assign(Object.assign({class:"vxe-card--body-scrollbar-left"},h),{viewClassName:"vxe-card--body-scrollbar-left-view",viewInnerClassName:"vxe-card--body-scrollbar-left-inner"}),{default:()=>(0,_vn.getSlotVNs)(v({}))}):(0,_vue.h)("div",{class:"vxe-card--body-left"},(0,_vn.getSlotVNs)(v({}))):(0,_ui.renderEmptyElement)(q),g?(0,_vue.h)(_scrollbar.default,Object.assign(Object.assign({class:"vxe-card--body-scrollbar-content"},h),{viewClassName:"vxe-card--body-scrollbar-content-view"+(b?" "+b:""),viewInnerClassName:"vxe-card--body-scrollbar-content-inner"+(b?" "+p:"")}),{default:()=>s?(0,_vn.getSlotVNs)(s({})):[]}):(0,_vue.h)("div",{class:"vxe-card--body-content"},s?(0,_vn.getSlotVNs)(s({})):[]),c?g?(0,_vue.h)(_scrollbar.default,Object.assign(Object.assign({class:"vxe-card--body-scrollbar-right"},h),{viewClassName:"vxe-card--body-scrollbar-right-view",viewInnerClassName:"vxe-card--body-scrollbar-right-inner"}),{default:()=>(0,_vn.getSlotVNs)(c({}))}):(0,_vue.h)("div",{class:"vxe-card--body-right"},(0,_vn.getSlotVNs)(c({}))):(0,_ui.renderEmptyElement)(q)]),n?(0,_vue.h)("div",{class:"vxe-card--footer"},(0,_vn.getSlotVNs)(n({}))):(0,_ui.renderEmptyElement)(q),(0,_vue.h)(_loading.default,{class:"vxe-card--loading",modelValue:i})])},q},render(){return this.renderVN()}});
|
package/lib/drawer/src/drawer.js
CHANGED
|
@@ -168,7 +168,10 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
168
168
|
const $xeForm = (0, _vue.inject)('$xeForm', null);
|
|
169
169
|
const {
|
|
170
170
|
computeSize
|
|
171
|
-
} =
|
|
171
|
+
} = _ui.useFns.useSize(props);
|
|
172
|
+
const {
|
|
173
|
+
computeIsVScrollbar
|
|
174
|
+
} = _ui.useFns.useVScrollbar(props);
|
|
172
175
|
const refElem = (0, _vue.ref)();
|
|
173
176
|
const refDrawerBox = (0, _vue.ref)();
|
|
174
177
|
const refConfirmBtn = (0, _vue.ref)();
|
|
@@ -577,16 +580,16 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
577
580
|
const {
|
|
578
581
|
slots: propSlots = {},
|
|
579
582
|
content,
|
|
580
|
-
useScrollbar,
|
|
581
583
|
useHtml
|
|
582
584
|
} = props;
|
|
585
|
+
const isVScrollbar = computeIsVScrollbar.value;
|
|
583
586
|
const scrollbarProps = computeScrollbarProps.value;
|
|
584
587
|
const defaultSlot = slots.default || propSlots.default;
|
|
585
588
|
const leftSlot = slots.left || propSlots.left;
|
|
586
589
|
const rightSlot = slots.right || propSlots.right;
|
|
587
590
|
const contVNs = [];
|
|
588
591
|
if (useHtml && !defaultSlot) {
|
|
589
|
-
contVNs.push(
|
|
592
|
+
contVNs.push(isVScrollbar ? (0, _vue.h)(_scrollbar.default, Object.assign({
|
|
590
593
|
key: 'shc',
|
|
591
594
|
class: 'vxe-drawer--scrollbar-content'
|
|
592
595
|
}, scrollbarProps), {
|
|
@@ -602,7 +605,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
602
605
|
innerHTML: (0, _utils.getFuncText)(content)
|
|
603
606
|
}));
|
|
604
607
|
} else {
|
|
605
|
-
contVNs.push(
|
|
608
|
+
contVNs.push(isVScrollbar ? (0, _vue.h)(_scrollbar.default, Object.assign({
|
|
606
609
|
key: 'sdc',
|
|
607
610
|
class: 'vxe-drawer--scrollbar-content'
|
|
608
611
|
}, scrollbarProps), {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_store=require("./store"),_vn=require("../../ui/src/vn"),_button=_interopRequireDefault(require("../../button")),_loading=_interopRequireDefault(require("../../loading")),_scrollbar=_interopRequireDefault(require("../../scrollbar"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeDrawer",props:{modelValue:Boolean,id:String,title:String,loading:{type:Boolean,default:null},className:String,position:{type:[String,Object],default:()=>(0,_ui.getConfig)().drawer.position},lockView:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.lockView},lockScroll:Boolean,mask:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.mask},maskClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.maskClosable},escClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.escClosable},cancelClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.cancelClosable},confirmClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.confirmClosable},showHeader:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.showHeader},showFooter:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.showFooter},showClose:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.showClose},content:[Number,String],useHtml:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.useHtml},showCancelButton:{type:Boolean,default:null},cancelButtonText:{type:String,default:()=>(0,_ui.getConfig)().drawer.cancelButtonText},showConfirmButton:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.showConfirmButton},confirmButtonText:{type:String,default:()=>(0,_ui.getConfig)().drawer.confirmButtonText},destroyOnClose:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.destroyOnClose},showTitleOverflow:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.showTitleOverflow},preload:Boolean,width:{type:[Number,String],default:()=>(0,_ui.getConfig)().drawer.width},height:{type:[Number,String],default:()=>(0,_ui.getConfig)().drawer.height},minWidth:{type:[Number,String],default:()=>(0,_ui.getConfig)().drawer.minWidth},minHeight:{type:[Number,String],default:()=>(0,_ui.getConfig)().drawer.minHeight},resize:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.resize},border:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.border},showTitleBackground:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.showTitleBackground},zIndex:Number,transfer:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.transfer},appendTo:{type:[String,Function],default:()=>(0,_ui.getConfig)().drawer.appendTo},isWithinAppendTo:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.isWithinAppendTo},padding:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.padding},size:{type:String,default:()=>(0,_ui.getConfig)().drawer.size||(0,_ui.getConfig)().size},beforeHideMethod:Function,slots:Object,useScrollbar:{type:Boolean,default:()=>(0,_utils.getDefaultConfig)((0,_ui.getConfig)().drawer.useScrollbar,(0,_ui.getConfig)().useScrollbar)},scrollbarConfig:Object},emits:["update:modelValue","show","hide","before-hide","close","confirm","cancel","resize"],setup(b,e){let{slots:x,emit:l}=e;var t=_xeUtils.default.uniqueId();let r=(0,_vue.inject)("$xeModal",null),i=(0,_vue.inject)("$xeDrawer",null),o=(0,_vue.inject)("$xeTable",null),a=(0,_vue.inject)("$xeForm",null),C=(0,_ui.useSize)(b).computeSize,y=(0,_vue.ref)(),B=(0,_vue.ref)(),n=(0,_vue.ref)(),s=(0,_vue.ref)(),T=(0,_vue.reactive)({initialized:!1,visible:!1,contentVisible:!1,drawerZIndex:0,resizeFlag:1}),u={beforeHideMethod:(0,_ui.getConfig)().drawer.beforeHideMethod},d={refElem:y},k=(0,_vue.computed)(()=>{var e=b.transfer;if(null===e){var t=(0,_ui.getConfig)().modal.transfer;if(_xeUtils.default.isBoolean(t))return t;if(o||r||i||a)return!0}return e}),S=(0,_vue.computed)(()=>{switch(b.position){case"top":return"sb";case"bottom":return"st";case"left":return"wr"}return"wl"}),c=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().modal.scrollbarConfig,b.scrollbarConfig)),N=(0,_vue.computed)(()=>{var e=c.value,{viewClassName:t,viewInnerClassName:r}=e;return{width:e.width,height:e.height,autoHide:e.autoHide,visible:e.visible,xConfig:e.xConfig,yConfig:e.yConfig,className:e.className,viewAttrs:e.viewAttrs,viewClassName:"vxe-drawer--scrollbar-content-view"+(t?" "+t:""),viewInnerClassName:"vxe-drawer--scrollbar-content-inner"+(t?" "+r:"")}}),v={},E={xID:t,props:b,context:e,reactData:T,getRefMaps:()=>d,getComputeMaps:()=>v},V=()=>B.value,f=()=>{var{position:e,width:t,height:r}=b,i=V();return i&&(i.style.height=(e="top"===e||"bottom"===e)?(0,_dom.toCssUnit)(r):"",i.style.width=e?"":(0,_dom.toCssUnit)(t)),(0,_vue.nextTick)()},_=()=>{var e=b.zIndex,t=T.drawerZIndex;e?T.drawerZIndex=e:t<(0,_utils.getLastZIndex)()&&(T.drawerZIndex=(0,_utils.nextZIndex)())},g=()=>{-1<_store.allActiveDrawers.indexOf(E)&&_xeUtils.default.remove(_store.allActiveDrawers,e=>e===E)},w=e=>{var t=T.visible,r=b.beforeHideMethod||u.beforeHideMethod;let i={type:e};return t&&Promise.resolve(r?r(i):null).then(e=>{_xeUtils.default.isError(e)||((e=y.value)&&e.setAttribute("data-effect","y"),T.contentVisible=!1,g(),D("before-hide",i,null),setTimeout(()=>{T.visible=!1,l("update:modelValue",!1),D("hide",i,null)},200),setTimeout(()=>{var e=y.value;e&&e.removeAttribute("data-effect")},350))}).catch(e=>e),(0,_vue.nextTick)()},p=e=>{var t="close";D(t,{type:t},e),w(t)},h=e=>{var t=b.confirmClosable,r="confirm";D(r,{type:r},e),t&&w(r)},m=e=>{var t=b.cancelClosable,r="cancel";D(r,{type:r},e),t&&w(r)},z=()=>{let r=b.showFooter;var{initialized:e,visible:t}=T;return e||(T.initialized=!0),t||(T.visible=!0,T.contentVisible=!1,_(),_store.allActiveDrawers.push(E),(0,_vue.nextTick)(()=>{var e=y.value;e&&e.setAttribute("data-effect","y")}),setTimeout(()=>{f(),T.contentVisible=!0,(0,_vue.nextTick)(()=>{r&&(e=n.value,t=s.value,e=e||t)&&e.focus();var e,t={type:""};l("update:modelValue",!0),D("show",t,null)})},10),setTimeout(()=>{var e=y.value;e&&e.removeAttribute("data-effect")},350)),(0,_vue.nextTick)()},D=(e,t,r)=>{l(e,(0,_ui.createEvent)(r,{$drawer:E},t))};t={dispatchEvent:D,open:z,close(){return w("close")},getBox:V};let I=e=>{var t=y.value;b.maskClosable&&e.target===t&&w("mask")},$=t=>{if(_ui.globalEvents.hasKey(t,_ui.GLOBAL_EVENT_KEYS.ESCAPE)){let e=_xeUtils.default.max(_store.allActiveDrawers,e=>e.reactData.drawerZIndex);e&&setTimeout(()=>{e===E&&e.props.escClosable&&(D("close",{type:"exit"},t),w("exit"))},10)}},A=()=>{let t=T.drawerZIndex;_store.allActiveDrawers.some(e=>e.reactData.visible&&e.reactData.drawerZIndex>t)&&_()},q=e=>{e.preventDefault();var{resize:t,isWithinAppendTo:r}=b,i=y.value,i=(0,_dom.getPopupWrapperElement)(r?i:document.body);if(i){let o=i.clientWidth-(t&&r?8:0),a=i.clientHeight-(t&&r?8:0);let n=e.target.getAttribute("type"),s=_xeUtils.default.toNumber(b.minWidth),u=_xeUtils.default.toNumber(b.minHeight),d=o,c=a,v=V(),f=v.clientWidth,_=v.clientHeight,g=e.clientX,w=e.clientY,p=v.offsetTop,h=v.offsetLeft,m={type:"resize"};document.onmousemove=e=>{e.preventDefault();let t,r,i,l;switch(n){case"wl":t=g-e.clientX,i=t+f,0<h-t&&i>s&&(v.style.width=`${i<d?i:d}px`);break;case"st":r=w-e.clientY,l=_+r,0<p-r&&l>u&&(v.style.height=`${l<c?l:c}px`);break;case"wr":t=e.clientX-g,i=t+f,h+i+0<o&&i>s&&(v.style.width=`${i<d?i:d}px`);break;case"sb":r=e.clientY-w,l=r+_,p+l+0<a&&l>u&&(v.style.height=`${l<c?l:c}px`)}v.className=v.className.replace(/\s?is--drag/,"")+" is--drag",D("resize",m,e),T.resizeFlag++},document.onmouseup=()=>{document.onmousemove=null,document.onmouseup=null,T.resizeFlag++,setTimeout(()=>{v.className=v.className.replace(/\s?is--drag/,"")},50)}}};Object.assign(E,t,{});let O=()=>{var{slots:e={},showClose:t,title:r}=b,i=x.title||e.title,e=x.corner||e.corner;return[(0,_vue.h)("div",{class:"vxe-drawer--header-title"},i?(0,_vn.getSlotVNs)(i({$drawer:E})):r?(0,_utils.getFuncText)(r):(0,_ui.getI18n)("vxe.alert.title")),(0,_vue.h)("div",{class:"vxe-drawer--header-right"},[e?(0,_vue.h)("div",{class:"vxe-drawer--corner-wrapper"},(0,_vn.getSlotVNs)(e({$drawer:E}))):(0,_ui.renderEmptyElement)(E),t?(0,_vue.h)("div",{class:["vxe-drawer--close-btn","trigger--btn"],title:(0,_ui.getI18n)("vxe.drawer.close"),onClick:p},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().DRAWER_CLOSE})]):(0,_ui.renderEmptyElement)(E)])]},F=()=>{var{slots:e={},showCancelButton:t,showConfirmButton:r,loading:i}=b,l=x.leftfoot||e.leftfoot,e=x.rightfoot||e.rightfoot,o=[];return t&&o.push((0,_vue.h)(_button.default,{key:1,ref:s,content:b.cancelButtonText||(0,_ui.getI18n)("vxe.button.cancel"),onClick:m})),r&&o.push((0,_vue.h)(_button.default,{key:2,ref:n,loading:i,status:"primary",content:b.confirmButtonText||(0,_ui.getI18n)("vxe.button.confirm"),onClick:h})),(0,_vue.h)("div",{class:"vxe-drawer--footer-wrapper"},[(0,_vue.h)("div",{class:"vxe-drawer--footer-left"},l?(0,_vn.getSlotVNs)(l({$drawer:E})):[]),(0,_vue.h)("div",{class:"vxe-drawer--footer-right"},e?(0,_vn.getSlotVNs)(e({$drawer:E})):o)])};let H=(0,_vue.ref)(0);return(0,_vue.watch)(()=>b.width,()=>{H.value++}),(0,_vue.watch)(()=>b.height,()=>{H.value++}),(0,_vue.watch)(()=>b.position,()=>{H.value++}),(0,_vue.watch)(H,f),(0,_vue.watch)(()=>b.modelValue,e=>{e?z():w("model")}),(0,_vue.onMounted)(()=>{T.initialized=!!b.preload,(0,_vue.nextTick)(()=>{b.modelValue&&z(),f()}),b.escClosable&&_ui.globalEvents.on(E,"keydown",$)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(E,"keydown"),g()}),(0,_vue.provide)("$xeDrawer",E),E.renderVN=()=>{var{border:e,showTitleBackground:t,slots:r={},className:i,position:l,loading:o,lockScroll:a,padding:n,lockView:s,mask:u,resize:d,appendTo:c,destroyOnClose:v,isWithinAppendTo:f}=b,{initialized:_,contentVisible:g,visible:w}=T,r=x.aside||r.aside,p=C.value,h=S.value,m=k.value;return(0,_vue.h)(_vue.Teleport,{to:(0,_dom.getPopupContainer)(c),disabled:!m||!_},[(0,_vue.h)("div",{ref:y,class:["vxe-drawer--wrapper","pos--"+l,f?"ctx--within":"ctx--free",i||"",{["size--"+p]:p,"is--padding":n,"is--border":e,"is--title-bg":t,"lock--scroll":a,"lock--view":s,"is--resize":d,"is--mask":u,"is--visible":g,"is--active":w,"is--loading":o}],style:{zIndex:T.drawerZIndex},onClick:I},[(0,_vue.h)("div",{ref:B,class:"vxe-drawer--box",onMousedown:A},[r?(0,_vue.h)("div",{class:"vxe-drawer--aside"},(0,_vn.getSlotVNs)(r({$drawer:E}))):(0,_ui.renderEmptyElement)(E),(0,_vue.h)("div",{class:"vxe-drawer--container"},!T.initialized||v&&!T.visible?[]:[(()=>{var{slots:e={},showTitleOverflow:t}=b,e=x.header||e.header;return b.showHeader?(0,_vue.h)("div",{class:["vxe-drawer--header",{"is--ellipsis":t}]},e?(0,_vn.getSlotVNs)(e({$drawer:E})):O()):(0,_ui.renderEmptyElement)(E)})(),(()=>{let{slots:e={},content:t,useScrollbar:r,useHtml:i}=b;var l=N.value;let o=x.default||e.default;var a=x.left||e.left,n=x.right||e.right,s=[];return i&&!o?s.push(r?(0,_vue.h)(_scrollbar.default,Object.assign({key:"shc",class:"vxe-drawer--scrollbar-content"},l),{default(){return[(0,_vue.h)("div",{class:"vxe-drawer--scrollbar-content-html",innerHTML:(0,_utils.getFuncText)(t)})]}}):(0,_vue.h)("div",{key:"hc",class:"vxe-drawer--content",innerHTML:(0,_utils.getFuncText)(t)})):s.push(r?(0,_vue.h)(_scrollbar.default,Object.assign({key:"sdc",class:"vxe-drawer--scrollbar-content"},l),{default:()=>o?(0,_vn.getSlotVNs)(o({$drawer:E})):(0,_utils.getFuncText)(t)}):(0,_vue.h)("div",{key:"dc",class:"vxe-drawer--content"},o?(0,_vn.getSlotVNs)(o({$drawer:E})):(0,_utils.getFuncText)(t))),(0,_vue.h)("div",{class:"vxe-drawer--body"},[a?(0,_vue.h)("div",{class:"vxe-drawer--body-left"},(0,_vn.getSlotVNs)(a({$drawer:E}))):(0,_ui.renderEmptyElement)(E),(0,_vue.h)("div",{class:"vxe-drawer--body-default"},s),n?(0,_vue.h)("div",{class:"vxe-drawer--body-right"},(0,_vn.getSlotVNs)(n({$drawer:E}))):(0,_ui.renderEmptyElement)(E),(0,_vue.h)(_loading.default,{class:"vxe-drawer--loading",modelValue:b.loading})])})(),(()=>{var{slots:e={}}=b,e=x.footer||e.footer;return b.showFooter?(0,_vue.h)("div",{class:"vxe-drawer--footer"},e?(0,_vn.getSlotVNs)(e({$drawer:E})):[F()]):(0,_ui.renderEmptyElement)(E)})(),d?(0,_vue.h)("span",{class:"vxe-drawer--resize"},[(0,_vue.h)("span",{class:h+"-resize",type:h,onMousedown:q})]):(0,_ui.renderEmptyElement)(E)])])])])},E},render(){return this.renderVN()}});
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_store=require("./store"),_vn=require("../../ui/src/vn"),_button=_interopRequireDefault(require("../../button")),_loading=_interopRequireDefault(require("../../loading")),_scrollbar=_interopRequireDefault(require("../../scrollbar"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeDrawer",props:{modelValue:Boolean,id:String,title:String,loading:{type:Boolean,default:null},className:String,position:{type:[String,Object],default:()=>(0,_ui.getConfig)().drawer.position},lockView:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.lockView},lockScroll:Boolean,mask:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.mask},maskClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.maskClosable},escClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.escClosable},cancelClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.cancelClosable},confirmClosable:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.confirmClosable},showHeader:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.showHeader},showFooter:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.showFooter},showClose:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.showClose},content:[Number,String],useHtml:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.useHtml},showCancelButton:{type:Boolean,default:null},cancelButtonText:{type:String,default:()=>(0,_ui.getConfig)().drawer.cancelButtonText},showConfirmButton:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.showConfirmButton},confirmButtonText:{type:String,default:()=>(0,_ui.getConfig)().drawer.confirmButtonText},destroyOnClose:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.destroyOnClose},showTitleOverflow:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.showTitleOverflow},preload:Boolean,width:{type:[Number,String],default:()=>(0,_ui.getConfig)().drawer.width},height:{type:[Number,String],default:()=>(0,_ui.getConfig)().drawer.height},minWidth:{type:[Number,String],default:()=>(0,_ui.getConfig)().drawer.minWidth},minHeight:{type:[Number,String],default:()=>(0,_ui.getConfig)().drawer.minHeight},resize:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.resize},border:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.border},showTitleBackground:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.showTitleBackground},zIndex:Number,transfer:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.transfer},appendTo:{type:[String,Function],default:()=>(0,_ui.getConfig)().drawer.appendTo},isWithinAppendTo:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.isWithinAppendTo},padding:{type:Boolean,default:()=>(0,_ui.getConfig)().drawer.padding},size:{type:String,default:()=>(0,_ui.getConfig)().drawer.size||(0,_ui.getConfig)().size},beforeHideMethod:Function,slots:Object,useScrollbar:{type:Boolean,default:()=>(0,_utils.getDefaultConfig)((0,_ui.getConfig)().drawer.useScrollbar,(0,_ui.getConfig)().useScrollbar)},scrollbarConfig:Object},emits:["update:modelValue","show","hide","before-hide","close","confirm","cancel","resize"],setup(b,e){let{slots:x,emit:l}=e;var t=_xeUtils.default.uniqueId();let r=(0,_vue.inject)("$xeModal",null),i=(0,_vue.inject)("$xeDrawer",null),o=(0,_vue.inject)("$xeTable",null),a=(0,_vue.inject)("$xeForm",null),C=_ui.useFns.useSize(b).computeSize,y=_ui.useFns.useVScrollbar(b).computeIsVScrollbar,B=(0,_vue.ref)(),T=(0,_vue.ref)(),n=(0,_vue.ref)(),s=(0,_vue.ref)(),k=(0,_vue.reactive)({initialized:!1,visible:!1,contentVisible:!1,drawerZIndex:0,resizeFlag:1}),u={beforeHideMethod:(0,_ui.getConfig)().drawer.beforeHideMethod},d={refElem:B},S=(0,_vue.computed)(()=>{var e=b.transfer;if(null===e){var t=(0,_ui.getConfig)().modal.transfer;if(_xeUtils.default.isBoolean(t))return t;if(o||r||i||a)return!0}return e}),N=(0,_vue.computed)(()=>{switch(b.position){case"top":return"sb";case"bottom":return"st";case"left":return"wr"}return"wl"}),c=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().modal.scrollbarConfig,b.scrollbarConfig)),V=(0,_vue.computed)(()=>{var e=c.value,{viewClassName:t,viewInnerClassName:r}=e;return{width:e.width,height:e.height,autoHide:e.autoHide,visible:e.visible,xConfig:e.xConfig,yConfig:e.yConfig,className:e.className,viewAttrs:e.viewAttrs,viewClassName:"vxe-drawer--scrollbar-content-view"+(t?" "+t:""),viewInnerClassName:"vxe-drawer--scrollbar-content-inner"+(t?" "+r:"")}}),v={},E={xID:t,props:b,context:e,reactData:k,getRefMaps:()=>d,getComputeMaps:()=>v},z=()=>T.value,f=()=>{var{position:e,width:t,height:r}=b,i=z();return i&&(i.style.height=(e="top"===e||"bottom"===e)?(0,_dom.toCssUnit)(r):"",i.style.width=e?"":(0,_dom.toCssUnit)(t)),(0,_vue.nextTick)()},_=()=>{var e=b.zIndex,t=k.drawerZIndex;e?k.drawerZIndex=e:t<(0,_utils.getLastZIndex)()&&(k.drawerZIndex=(0,_utils.nextZIndex)())},g=()=>{-1<_store.allActiveDrawers.indexOf(E)&&_xeUtils.default.remove(_store.allActiveDrawers,e=>e===E)},w=e=>{var t=k.visible,r=b.beforeHideMethod||u.beforeHideMethod;let i={type:e};return t&&Promise.resolve(r?r(i):null).then(e=>{_xeUtils.default.isError(e)||((e=B.value)&&e.setAttribute("data-effect","y"),k.contentVisible=!1,g(),D("before-hide",i,null),setTimeout(()=>{k.visible=!1,l("update:modelValue",!1),D("hide",i,null)},200),setTimeout(()=>{var e=B.value;e&&e.removeAttribute("data-effect")},350))}).catch(e=>e),(0,_vue.nextTick)()},p=e=>{var t="close";D(t,{type:t},e),w(t)},h=e=>{var t=b.confirmClosable,r="confirm";D(r,{type:r},e),t&&w(r)},m=e=>{var t=b.cancelClosable,r="cancel";D(r,{type:r},e),t&&w(r)},I=()=>{let r=b.showFooter;var{initialized:e,visible:t}=k;return e||(k.initialized=!0),t||(k.visible=!0,k.contentVisible=!1,_(),_store.allActiveDrawers.push(E),(0,_vue.nextTick)(()=>{var e=B.value;e&&e.setAttribute("data-effect","y")}),setTimeout(()=>{f(),k.contentVisible=!0,(0,_vue.nextTick)(()=>{r&&(e=n.value,t=s.value,e=e||t)&&e.focus();var e,t={type:""};l("update:modelValue",!0),D("show",t,null)})},10),setTimeout(()=>{var e=B.value;e&&e.removeAttribute("data-effect")},350)),(0,_vue.nextTick)()},D=(e,t,r)=>{l(e,(0,_ui.createEvent)(r,{$drawer:E},t))};t={dispatchEvent:D,open:I,close(){return w("close")},getBox:z};let $=e=>{var t=B.value;b.maskClosable&&e.target===t&&w("mask")},A=t=>{if(_ui.globalEvents.hasKey(t,_ui.GLOBAL_EVENT_KEYS.ESCAPE)){let e=_xeUtils.default.max(_store.allActiveDrawers,e=>e.reactData.drawerZIndex);e&&setTimeout(()=>{e===E&&e.props.escClosable&&(D("close",{type:"exit"},t),w("exit"))},10)}},q=()=>{let t=k.drawerZIndex;_store.allActiveDrawers.some(e=>e.reactData.visible&&e.reactData.drawerZIndex>t)&&_()},F=e=>{e.preventDefault();var{resize:t,isWithinAppendTo:r}=b,i=B.value,i=(0,_dom.getPopupWrapperElement)(r?i:document.body);if(i){let o=i.clientWidth-(t&&r?8:0),a=i.clientHeight-(t&&r?8:0);let n=e.target.getAttribute("type"),s=_xeUtils.default.toNumber(b.minWidth),u=_xeUtils.default.toNumber(b.minHeight),d=o,c=a,v=z(),f=v.clientWidth,_=v.clientHeight,g=e.clientX,w=e.clientY,p=v.offsetTop,h=v.offsetLeft,m={type:"resize"};document.onmousemove=e=>{e.preventDefault();let t,r,i,l;switch(n){case"wl":t=g-e.clientX,i=t+f,0<h-t&&i>s&&(v.style.width=`${i<d?i:d}px`);break;case"st":r=w-e.clientY,l=_+r,0<p-r&&l>u&&(v.style.height=`${l<c?l:c}px`);break;case"wr":t=e.clientX-g,i=t+f,h+i+0<o&&i>s&&(v.style.width=`${i<d?i:d}px`);break;case"sb":r=e.clientY-w,l=r+_,p+l+0<a&&l>u&&(v.style.height=`${l<c?l:c}px`)}v.className=v.className.replace(/\s?is--drag/,"")+" is--drag",D("resize",m,e),k.resizeFlag++},document.onmouseup=()=>{document.onmousemove=null,document.onmouseup=null,k.resizeFlag++,setTimeout(()=>{v.className=v.className.replace(/\s?is--drag/,"")},50)}}};Object.assign(E,t,{});let O=()=>{var{slots:e={},showClose:t,title:r}=b,i=x.title||e.title,e=x.corner||e.corner;return[(0,_vue.h)("div",{class:"vxe-drawer--header-title"},i?(0,_vn.getSlotVNs)(i({$drawer:E})):r?(0,_utils.getFuncText)(r):(0,_ui.getI18n)("vxe.alert.title")),(0,_vue.h)("div",{class:"vxe-drawer--header-right"},[e?(0,_vue.h)("div",{class:"vxe-drawer--corner-wrapper"},(0,_vn.getSlotVNs)(e({$drawer:E}))):(0,_ui.renderEmptyElement)(E),t?(0,_vue.h)("div",{class:["vxe-drawer--close-btn","trigger--btn"],title:(0,_ui.getI18n)("vxe.drawer.close"),onClick:p},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().DRAWER_CLOSE})]):(0,_ui.renderEmptyElement)(E)])]},M=()=>{var{slots:e={},showCancelButton:t,showConfirmButton:r,loading:i}=b,l=x.leftfoot||e.leftfoot,e=x.rightfoot||e.rightfoot,o=[];return t&&o.push((0,_vue.h)(_button.default,{key:1,ref:s,content:b.cancelButtonText||(0,_ui.getI18n)("vxe.button.cancel"),onClick:m})),r&&o.push((0,_vue.h)(_button.default,{key:2,ref:n,loading:i,status:"primary",content:b.confirmButtonText||(0,_ui.getI18n)("vxe.button.confirm"),onClick:h})),(0,_vue.h)("div",{class:"vxe-drawer--footer-wrapper"},[(0,_vue.h)("div",{class:"vxe-drawer--footer-left"},l?(0,_vn.getSlotVNs)(l({$drawer:E})):[]),(0,_vue.h)("div",{class:"vxe-drawer--footer-right"},e?(0,_vn.getSlotVNs)(e({$drawer:E})):o)])};let H=(0,_vue.ref)(0);return(0,_vue.watch)(()=>b.width,()=>{H.value++}),(0,_vue.watch)(()=>b.height,()=>{H.value++}),(0,_vue.watch)(()=>b.position,()=>{H.value++}),(0,_vue.watch)(H,f),(0,_vue.watch)(()=>b.modelValue,e=>{e?I():w("model")}),(0,_vue.onMounted)(()=>{k.initialized=!!b.preload,(0,_vue.nextTick)(()=>{b.modelValue&&I(),f()}),b.escClosable&&_ui.globalEvents.on(E,"keydown",A)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(E,"keydown"),g()}),(0,_vue.provide)("$xeDrawer",E),E.renderVN=()=>{var{border:e,showTitleBackground:t,slots:r={},className:i,position:l,loading:o,lockScroll:a,padding:n,lockView:s,mask:u,resize:d,appendTo:c,destroyOnClose:v,isWithinAppendTo:f}=b,{initialized:_,contentVisible:g,visible:w}=k,r=x.aside||r.aside,p=C.value,h=N.value,m=S.value;return(0,_vue.h)(_vue.Teleport,{to:(0,_dom.getPopupContainer)(c),disabled:!m||!_},[(0,_vue.h)("div",{ref:B,class:["vxe-drawer--wrapper","pos--"+l,f?"ctx--within":"ctx--free",i||"",{["size--"+p]:p,"is--padding":n,"is--border":e,"is--title-bg":t,"lock--scroll":a,"lock--view":s,"is--resize":d,"is--mask":u,"is--visible":g,"is--active":w,"is--loading":o}],style:{zIndex:k.drawerZIndex},onClick:$},[(0,_vue.h)("div",{ref:T,class:"vxe-drawer--box",onMousedown:q},[r?(0,_vue.h)("div",{class:"vxe-drawer--aside"},(0,_vn.getSlotVNs)(r({$drawer:E}))):(0,_ui.renderEmptyElement)(E),(0,_vue.h)("div",{class:"vxe-drawer--container"},!k.initialized||v&&!k.visible?[]:[(()=>{var{slots:e={},showTitleOverflow:t}=b,e=x.header||e.header;return b.showHeader?(0,_vue.h)("div",{class:["vxe-drawer--header",{"is--ellipsis":t}]},e?(0,_vn.getSlotVNs)(e({$drawer:E})):O()):(0,_ui.renderEmptyElement)(E)})(),(()=>{let{slots:e={},content:t,useHtml:r}=b;var i=y.value,l=V.value;let o=x.default||e.default;var a=x.left||e.left,n=x.right||e.right,s=[];return r&&!o?s.push(i?(0,_vue.h)(_scrollbar.default,Object.assign({key:"shc",class:"vxe-drawer--scrollbar-content"},l),{default(){return[(0,_vue.h)("div",{class:"vxe-drawer--scrollbar-content-html",innerHTML:(0,_utils.getFuncText)(t)})]}}):(0,_vue.h)("div",{key:"hc",class:"vxe-drawer--content",innerHTML:(0,_utils.getFuncText)(t)})):s.push(i?(0,_vue.h)(_scrollbar.default,Object.assign({key:"sdc",class:"vxe-drawer--scrollbar-content"},l),{default:()=>o?(0,_vn.getSlotVNs)(o({$drawer:E})):(0,_utils.getFuncText)(t)}):(0,_vue.h)("div",{key:"dc",class:"vxe-drawer--content"},o?(0,_vn.getSlotVNs)(o({$drawer:E})):(0,_utils.getFuncText)(t))),(0,_vue.h)("div",{class:"vxe-drawer--body"},[a?(0,_vue.h)("div",{class:"vxe-drawer--body-left"},(0,_vn.getSlotVNs)(a({$drawer:E}))):(0,_ui.renderEmptyElement)(E),(0,_vue.h)("div",{class:"vxe-drawer--body-default"},s),n?(0,_vue.h)("div",{class:"vxe-drawer--body-right"},(0,_vn.getSlotVNs)(n({$drawer:E}))):(0,_ui.renderEmptyElement)(E),(0,_vue.h)(_loading.default,{class:"vxe-drawer--loading",modelValue:b.loading})])})(),(()=>{var{slots:e={}}=b,e=x.footer||e.footer;return b.showFooter?(0,_vue.h)("div",{class:"vxe-drawer--footer"},e?(0,_vn.getSlotVNs)(e({$drawer:E})):[M()]):(0,_ui.renderEmptyElement)(E)})(),d?(0,_vue.h)("span",{class:"vxe-drawer--resize"},[(0,_vue.h)("span",{class:h+"-resize",type:h,onMousedown:F})]):(0,_ui.renderEmptyElement)(E)])])])])},E},render(){return this.renderVN()}});
|