vxe-pc-ui 4.6.4 → 4.6.6
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/es/button/src/button.js +83 -90
- package/es/button/style.css +24 -2
- package/es/button/style.min.css +1 -1
- package/es/color-picker/src/color-picker.js +19 -72
- package/es/color-picker/style.css +15 -0
- package/es/color-picker/style.min.css +1 -1
- package/es/date-picker/src/date-picker.js +19 -74
- package/es/date-picker/style.css +3 -2
- package/es/date-picker/style.min.css +1 -1
- package/es/date-range-picker/src/date-range-picker.js +24 -79
- package/es/date-range-picker/style.css +3 -2
- package/es/date-range-picker/style.min.css +1 -1
- package/es/icon/style.css +1 -1
- package/es/pulldown/src/pulldown.js +19 -74
- package/es/pulldown/style.css +0 -4
- package/es/pulldown/style.min.css +1 -1
- package/es/select/src/select.js +19 -72
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table-select/src/table-select.js +19 -72
- package/es/table-select/style.css +0 -1
- package/es/table-select/style.min.css +1 -1
- package/es/tree-select/src/tree-select.js +19 -72
- package/es/tree-select/style.css +0 -1
- package/es/tree-select/style.min.css +1 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/dom.js +92 -0
- package/es/ui/src/log.js +1 -1
- package/es/vxe-button/style.css +24 -2
- package/es/vxe-button/style.min.css +1 -1
- package/es/vxe-color-picker/style.css +15 -0
- package/es/vxe-color-picker/style.min.css +1 -1
- package/es/vxe-date-picker/style.css +3 -2
- package/es/vxe-date-picker/style.min.css +1 -1
- package/es/vxe-date-range-picker/style.css +3 -2
- package/es/vxe-date-range-picker/style.min.css +1 -1
- package/es/vxe-pulldown/style.css +0 -4
- package/es/vxe-pulldown/style.min.css +1 -1
- package/es/vxe-table-select/style.css +0 -1
- package/es/vxe-table-select/style.min.css +1 -1
- package/es/vxe-tree-select/style.css +0 -1
- package/es/vxe-tree-select/style.min.css +1 -1
- package/lib/button/src/button.js +88 -93
- package/lib/button/src/button.min.js +1 -1
- package/lib/button/style/style.css +24 -2
- package/lib/button/style/style.min.css +1 -1
- package/lib/color-picker/src/color-picker.js +22 -77
- package/lib/color-picker/src/color-picker.min.js +1 -1
- package/lib/color-picker/style/style.css +15 -0
- package/lib/color-picker/style/style.min.css +1 -1
- package/lib/date-picker/src/date-picker.js +22 -79
- package/lib/date-picker/src/date-picker.min.js +1 -1
- package/lib/date-picker/style/style.css +3 -2
- package/lib/date-picker/style/style.min.css +1 -1
- package/lib/date-range-picker/src/date-range-picker.js +26 -83
- package/lib/date-range-picker/src/date-range-picker.min.js +1 -1
- package/lib/date-range-picker/style/style.css +3 -2
- package/lib/date-range-picker/style/style.min.css +1 -1
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/index.umd.js +344 -645
- package/lib/index.umd.min.js +1 -1
- package/lib/pulldown/src/pulldown.js +22 -80
- package/lib/pulldown/src/pulldown.min.js +1 -1
- package/lib/pulldown/style/style.css +0 -4
- package/lib/pulldown/style/style.min.css +1 -1
- package/lib/select/src/select.js +22 -77
- package/lib/select/src/select.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table-select/src/table-select.js +22 -77
- package/lib/table-select/src/table-select.min.js +1 -1
- package/lib/table-select/style/style.css +0 -1
- package/lib/table-select/style/style.min.css +1 -1
- package/lib/tree-select/src/tree-select.js +22 -77
- package/lib/tree-select/src/tree-select.min.js +1 -1
- package/lib/tree-select/style/style.css +0 -1
- package/lib/tree-select/style/style.min.css +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/dom.js +97 -0
- package/lib/ui/src/dom.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/vxe-button/style/style.css +24 -2
- package/lib/vxe-button/style/style.min.css +1 -1
- package/lib/vxe-color-picker/style/style.css +15 -0
- package/lib/vxe-color-picker/style/style.min.css +1 -1
- package/lib/vxe-date-picker/style/style.css +3 -2
- package/lib/vxe-date-picker/style/style.min.css +1 -1
- package/lib/vxe-date-range-picker/style/style.css +3 -2
- package/lib/vxe-date-range-picker/style/style.min.css +1 -1
- package/lib/vxe-pulldown/style/style.css +0 -4
- package/lib/vxe-pulldown/style/style.min.css +1 -1
- package/lib/vxe-table-select/style/style.css +0 -1
- package/lib/vxe-table-select/style/style.min.css +1 -1
- package/lib/vxe-tree-select/style/style.css +0 -1
- package/lib/vxe-tree-select/style/style.min.css +1 -1
- package/package.json +1 -1
- package/packages/button/src/button.ts +87 -88
- package/packages/color-picker/src/color-picker.ts +19 -69
- package/packages/date-picker/src/date-picker.ts +20 -72
- package/packages/date-range-picker/src/date-range-picker.ts +24 -76
- package/packages/pulldown/src/pulldown.ts +20 -72
- package/packages/select/src/select.ts +19 -69
- package/packages/table-select/src/table-select.ts +19 -69
- package/packages/tree-select/src/tree-select.ts +19 -69
- package/packages/ui/src/dom.ts +95 -0
- package/styles/components/button.scss +3 -20
- package/styles/components/color-picker.scss +2 -27
- package/styles/components/date-picker.scss +2 -34
- package/styles/components/date-range-picker.scss +2 -34
- package/styles/components/pulldown.scss +2 -41
- package/styles/components/select.scss +2 -35
- package/styles/components/table-select.scss +2 -36
- package/styles/components/tree-select.scss +2 -36
- package/styles/helpers/placement.scss +39 -0
- package/types/components/button.d.ts +12 -1
- package/types/components/table.d.ts +56 -3
- /package/es/icon/{iconfont.1747024965925.ttf → iconfont.1747109497236.ttf} +0 -0
- /package/es/icon/{iconfont.1747024965925.woff → iconfont.1747109497236.woff} +0 -0
- /package/es/icon/{iconfont.1747024965925.woff2 → iconfont.1747109497236.woff2} +0 -0
- /package/es/{iconfont.1747024965925.ttf → iconfont.1747109497236.ttf} +0 -0
- /package/es/{iconfont.1747024965925.woff → iconfont.1747109497236.woff} +0 -0
- /package/es/{iconfont.1747024965925.woff2 → iconfont.1747109497236.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1747024965925.ttf → iconfont.1747109497236.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1747024965925.woff → iconfont.1747109497236.woff} +0 -0
- /package/lib/icon/style/{iconfont.1747024965925.woff2 → iconfont.1747109497236.woff2} +0 -0
- /package/lib/{iconfont.1747024965925.ttf → iconfont.1747109497236.ttf} +0 -0
- /package/lib/{iconfont.1747024965925.woff → iconfont.1747109497236.woff} +0 -0
- /package/lib/{iconfont.1747024965925.woff2 → iconfont.1747109497236.woff2} +0 -0
package/lib/index.umd.js
CHANGED
|
@@ -4213,14 +4213,14 @@ function checkDynamic() {
|
|
|
4213
4213
|
}
|
|
4214
4214
|
;// CONCATENATED MODULE: ./packages/ui/src/log.ts
|
|
4215
4215
|
|
|
4216
|
-
const log_version = `ui v${"4.6.
|
|
4216
|
+
const log_version = `ui v${"4.6.6"}`;
|
|
4217
4217
|
const warnLog = log.create('warn', log_version);
|
|
4218
4218
|
const errLog = log.create('error', log_version);
|
|
4219
4219
|
;// CONCATENATED MODULE: ./packages/ui/index.ts
|
|
4220
4220
|
|
|
4221
4221
|
|
|
4222
4222
|
|
|
4223
|
-
const ui_version = "4.6.
|
|
4223
|
+
const ui_version = "4.6.6";
|
|
4224
4224
|
index_esm_VxeUI.uiVersion = ui_version;
|
|
4225
4225
|
index_esm_VxeUI.dynamicApp = dynamicApp;
|
|
4226
4226
|
function config(options) {
|
|
@@ -5071,6 +5071,102 @@ function dom_triggerEvent(targetElem, type) {
|
|
|
5071
5071
|
function isNodeElement(elem) {
|
|
5072
5072
|
return elem && elem.nodeType === 1;
|
|
5073
5073
|
}
|
|
5074
|
+
function updatePanelPlacement(targetElem, panelElem, options) {
|
|
5075
|
+
const {
|
|
5076
|
+
placement,
|
|
5077
|
+
teleportTo,
|
|
5078
|
+
marginSize
|
|
5079
|
+
} = Object.assign({
|
|
5080
|
+
teleportTo: false,
|
|
5081
|
+
marginSize: 5
|
|
5082
|
+
}, options);
|
|
5083
|
+
let panelPlacement = 'bottom';
|
|
5084
|
+
let top = '';
|
|
5085
|
+
let bottom = '';
|
|
5086
|
+
let left = '';
|
|
5087
|
+
const right = '';
|
|
5088
|
+
let minWidth = '';
|
|
5089
|
+
const stys = {};
|
|
5090
|
+
if (panelElem && targetElem) {
|
|
5091
|
+
const documentElement = document.documentElement;
|
|
5092
|
+
const bodyElem = document.body;
|
|
5093
|
+
const targetHeight = targetElem.offsetHeight;
|
|
5094
|
+
const panelHeight = panelElem.offsetHeight;
|
|
5095
|
+
const panelWidth = panelElem.offsetWidth;
|
|
5096
|
+
const bounding = targetElem.getBoundingClientRect();
|
|
5097
|
+
const boundingTop = bounding.top;
|
|
5098
|
+
const boundingLeft = bounding.left;
|
|
5099
|
+
const visibleHeight = documentElement.clientHeight || bodyElem.clientHeight;
|
|
5100
|
+
const visibleWidth = documentElement.clientWidth || bodyElem.clientWidth;
|
|
5101
|
+
minWidth = targetElem.offsetWidth;
|
|
5102
|
+
if (teleportTo) {
|
|
5103
|
+
left = boundingLeft;
|
|
5104
|
+
top = boundingTop + targetHeight;
|
|
5105
|
+
if (placement === 'top') {
|
|
5106
|
+
panelPlacement = 'top';
|
|
5107
|
+
top = boundingTop - panelHeight;
|
|
5108
|
+
} else if (!placement) {
|
|
5109
|
+
// 如果下面不够放,则向上
|
|
5110
|
+
if (top + panelHeight + marginSize > visibleHeight) {
|
|
5111
|
+
panelPlacement = 'top';
|
|
5112
|
+
top = boundingTop - panelHeight;
|
|
5113
|
+
}
|
|
5114
|
+
// 如果上面不够放,则向下(优先)
|
|
5115
|
+
if (top < marginSize) {
|
|
5116
|
+
panelPlacement = 'bottom';
|
|
5117
|
+
top = boundingTop + targetHeight;
|
|
5118
|
+
}
|
|
5119
|
+
}
|
|
5120
|
+
// 如果溢出右边
|
|
5121
|
+
if (left + panelWidth + marginSize > visibleWidth) {
|
|
5122
|
+
left -= left + panelWidth + marginSize - visibleWidth;
|
|
5123
|
+
}
|
|
5124
|
+
// 如果溢出左边
|
|
5125
|
+
if (left < marginSize) {
|
|
5126
|
+
left = marginSize;
|
|
5127
|
+
}
|
|
5128
|
+
} else {
|
|
5129
|
+
if (placement === 'top') {
|
|
5130
|
+
panelPlacement = 'top';
|
|
5131
|
+
bottom = targetHeight;
|
|
5132
|
+
} else if (!placement) {
|
|
5133
|
+
// 如果下面不够放,则向上
|
|
5134
|
+
top = targetHeight;
|
|
5135
|
+
if (boundingTop + targetHeight + panelHeight > visibleHeight) {
|
|
5136
|
+
// 如果上面不够放,则向下(优先)
|
|
5137
|
+
if (boundingTop - targetHeight - panelHeight > marginSize) {
|
|
5138
|
+
panelPlacement = 'top';
|
|
5139
|
+
top = '';
|
|
5140
|
+
bottom = targetHeight;
|
|
5141
|
+
}
|
|
5142
|
+
}
|
|
5143
|
+
}
|
|
5144
|
+
}
|
|
5145
|
+
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(top)) {
|
|
5146
|
+
stys.top = toCssUnit(top);
|
|
5147
|
+
}
|
|
5148
|
+
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(bottom)) {
|
|
5149
|
+
stys.bottom = toCssUnit(bottom);
|
|
5150
|
+
}
|
|
5151
|
+
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(left)) {
|
|
5152
|
+
stys.left = toCssUnit(left);
|
|
5153
|
+
}
|
|
5154
|
+
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(right)) {
|
|
5155
|
+
stys.right = toCssUnit(right);
|
|
5156
|
+
}
|
|
5157
|
+
if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(minWidth)) {
|
|
5158
|
+
stys.minWidth = toCssUnit(minWidth);
|
|
5159
|
+
}
|
|
5160
|
+
}
|
|
5161
|
+
return {
|
|
5162
|
+
top: top || 0,
|
|
5163
|
+
bottom: bottom || 0,
|
|
5164
|
+
left: left || 0,
|
|
5165
|
+
right: right || 0,
|
|
5166
|
+
style: stys,
|
|
5167
|
+
placement: panelPlacement
|
|
5168
|
+
};
|
|
5169
|
+
}
|
|
5074
5170
|
;// CONCATENATED MODULE: ./packages/anchor/src/util.ts
|
|
5075
5171
|
|
|
5076
5172
|
function assembleAnchorLink($xeAnchor, elem, linkConfig, $xeParentAnchorLink) {
|
|
@@ -6359,7 +6455,7 @@ function handleBooleanDefaultValue(value) {
|
|
|
6359
6455
|
|
|
6360
6456
|
|
|
6361
6457
|
|
|
6362
|
-
|
|
6458
|
+
const VxeButtonComponent = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.defineComponent)({
|
|
6363
6459
|
name: 'VxeButton',
|
|
6364
6460
|
props: {
|
|
6365
6461
|
/**
|
|
@@ -6428,6 +6524,7 @@ function handleBooleanDefaultValue(value) {
|
|
|
6428
6524
|
align: String,
|
|
6429
6525
|
prefixTooltip: Object,
|
|
6430
6526
|
suffixTooltip: Object,
|
|
6527
|
+
options: Array,
|
|
6431
6528
|
/**
|
|
6432
6529
|
* 在下拉面板关闭时销毁内容
|
|
6433
6530
|
*/
|
|
@@ -6578,6 +6675,20 @@ function handleBooleanDefaultValue(value) {
|
|
|
6578
6675
|
}
|
|
6579
6676
|
return false;
|
|
6580
6677
|
});
|
|
6678
|
+
const computeDownBtnList = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
|
|
6679
|
+
const {
|
|
6680
|
+
options
|
|
6681
|
+
} = props;
|
|
6682
|
+
if (options) {
|
|
6683
|
+
return options.filter(item => {
|
|
6684
|
+
const {
|
|
6685
|
+
permissionCode
|
|
6686
|
+
} = item;
|
|
6687
|
+
return !permissionCode || permission.checkVisible(permissionCode);
|
|
6688
|
+
});
|
|
6689
|
+
}
|
|
6690
|
+
return [];
|
|
6691
|
+
});
|
|
6581
6692
|
const computePrefixTipOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
|
|
6582
6693
|
return Object.assign({}, props.prefixTooltip);
|
|
6583
6694
|
});
|
|
@@ -6590,85 +6701,28 @@ function handleBooleanDefaultValue(value) {
|
|
|
6590
6701
|
}
|
|
6591
6702
|
};
|
|
6592
6703
|
const updatePlacement = () => {
|
|
6593
|
-
|
|
6594
|
-
|
|
6595
|
-
|
|
6596
|
-
|
|
6597
|
-
|
|
6598
|
-
|
|
6599
|
-
|
|
6600
|
-
|
|
6601
|
-
|
|
6602
|
-
|
|
6603
|
-
|
|
6604
|
-
|
|
6605
|
-
|
|
6606
|
-
|
|
6607
|
-
|
|
6608
|
-
|
|
6609
|
-
|
|
6610
|
-
|
|
6611
|
-
|
|
6612
|
-
|
|
6613
|
-
|
|
6614
|
-
|
|
6615
|
-
boundingTop,
|
|
6616
|
-
visibleHeight,
|
|
6617
|
-
visibleWidth
|
|
6618
|
-
} = getAbsolutePos(targetElem);
|
|
6619
|
-
let panelPlacement = 'bottom';
|
|
6620
|
-
if (btnTransfer) {
|
|
6621
|
-
let btnLeft = left + targetWidth - panelWidth;
|
|
6622
|
-
let btnTop = top + targetHeight;
|
|
6623
|
-
if (placement === 'top') {
|
|
6624
|
-
panelPlacement = 'top';
|
|
6625
|
-
btnTop = top - panelHeight;
|
|
6626
|
-
} else if (!placement) {
|
|
6627
|
-
// 如果下面不够放,则向上
|
|
6628
|
-
if (boundingTop + targetHeight + panelHeight + marginSize > visibleHeight) {
|
|
6629
|
-
panelPlacement = 'top';
|
|
6630
|
-
btnTop = top - panelHeight;
|
|
6631
|
-
}
|
|
6632
|
-
// 如果上面不够放,则向下(优先)
|
|
6633
|
-
if (btnTop < marginSize) {
|
|
6634
|
-
panelPlacement = 'bottom';
|
|
6635
|
-
btnTop = top + targetHeight;
|
|
6636
|
-
}
|
|
6637
|
-
}
|
|
6638
|
-
// 如果溢出右边
|
|
6639
|
-
if (btnLeft + panelWidth + marginSize > visibleWidth) {
|
|
6640
|
-
btnLeft -= btnLeft + panelWidth + marginSize - visibleWidth;
|
|
6641
|
-
}
|
|
6642
|
-
// 如果溢出左边
|
|
6643
|
-
if (btnLeft < marginSize) {
|
|
6644
|
-
btnLeft = marginSize;
|
|
6645
|
-
}
|
|
6646
|
-
Object.assign(panelStyle, {
|
|
6647
|
-
left: `${btnLeft}px`,
|
|
6648
|
-
right: 'auto',
|
|
6649
|
-
top: `${btnTop}px`,
|
|
6650
|
-
minWidth: `${targetWidth}px`
|
|
6651
|
-
});
|
|
6652
|
-
} else {
|
|
6653
|
-
if (placement === 'top') {
|
|
6654
|
-
panelPlacement = 'top';
|
|
6655
|
-
panelStyle.bottom = `${targetHeight}px`;
|
|
6656
|
-
} else if (!placement) {
|
|
6657
|
-
// 如果下面不够放,则向上
|
|
6658
|
-
if (boundingTop + targetHeight + panelHeight > visibleHeight) {
|
|
6659
|
-
// 如果上面不够放,则向下(优先)
|
|
6660
|
-
if (boundingTop - targetHeight - panelHeight > marginSize) {
|
|
6661
|
-
panelPlacement = 'top';
|
|
6662
|
-
panelStyle.bottom = `${targetHeight}px`;
|
|
6663
|
-
}
|
|
6664
|
-
}
|
|
6665
|
-
}
|
|
6666
|
-
}
|
|
6667
|
-
reactData.panelStyle = panelStyle;
|
|
6668
|
-
reactData.panelPlacement = panelPlacement;
|
|
6669
|
-
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
6670
|
-
}
|
|
6671
|
-
});
|
|
6704
|
+
const {
|
|
6705
|
+
placement
|
|
6706
|
+
} = props;
|
|
6707
|
+
const {
|
|
6708
|
+
panelIndex
|
|
6709
|
+
} = reactData;
|
|
6710
|
+
const targetElem = refButton.value;
|
|
6711
|
+
const panelElem = refBtnPanel.value;
|
|
6712
|
+
const btnTransfer = computeBtnTransfer.value;
|
|
6713
|
+
const handleStyle = () => {
|
|
6714
|
+
const ppObj = updatePanelPlacement(targetElem, panelElem, {
|
|
6715
|
+
placement,
|
|
6716
|
+
teleportTo: btnTransfer
|
|
6717
|
+
});
|
|
6718
|
+
const panelStyle = Object.assign(ppObj.style, {
|
|
6719
|
+
zIndex: panelIndex
|
|
6720
|
+
});
|
|
6721
|
+
reactData.panelStyle = panelStyle;
|
|
6722
|
+
reactData.panelPlacement = ppObj.placement;
|
|
6723
|
+
};
|
|
6724
|
+
handleStyle();
|
|
6725
|
+
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(handleStyle);
|
|
6672
6726
|
};
|
|
6673
6727
|
const clickEvent = evnt => {
|
|
6674
6728
|
if ($xeButtonGroup) {
|
|
@@ -6680,6 +6734,16 @@ function handleBooleanDefaultValue(value) {
|
|
|
6680
6734
|
$event: evnt
|
|
6681
6735
|
}, evnt);
|
|
6682
6736
|
};
|
|
6737
|
+
const downBtnClickEvent = (params, option) => {
|
|
6738
|
+
const {
|
|
6739
|
+
$event
|
|
6740
|
+
} = params;
|
|
6741
|
+
hidePanel();
|
|
6742
|
+
dispatchEvent('dropdown-click', {
|
|
6743
|
+
name: option.name,
|
|
6744
|
+
option
|
|
6745
|
+
}, $event);
|
|
6746
|
+
};
|
|
6683
6747
|
const mousedownDropdownEvent = evnt => {
|
|
6684
6748
|
const isLeftBtn = evnt.button === 0;
|
|
6685
6749
|
if (isLeftBtn) {
|
|
@@ -6705,7 +6769,7 @@ function handleBooleanDefaultValue(value) {
|
|
|
6705
6769
|
}, 350);
|
|
6706
6770
|
dispatchEvent('dropdown-click', {
|
|
6707
6771
|
name: targetElem.getAttribute('name'),
|
|
6708
|
-
|
|
6772
|
+
option: null
|
|
6709
6773
|
}, evnt);
|
|
6710
6774
|
}
|
|
6711
6775
|
};
|
|
@@ -6739,7 +6803,7 @@ function handleBooleanDefaultValue(value) {
|
|
|
6739
6803
|
}
|
|
6740
6804
|
};
|
|
6741
6805
|
const mouseleaveTargetEvent = evnt => {
|
|
6742
|
-
|
|
6806
|
+
hidePanel();
|
|
6743
6807
|
mouseleaveEvent(evnt);
|
|
6744
6808
|
};
|
|
6745
6809
|
const mouseenterEvent = evnt => {
|
|
@@ -6757,7 +6821,7 @@ function handleBooleanDefaultValue(value) {
|
|
|
6757
6821
|
if (!(btnDisabled || loading)) {
|
|
6758
6822
|
if (trigger === 'click') {
|
|
6759
6823
|
if (reactData.visiblePanel) {
|
|
6760
|
-
|
|
6824
|
+
hidePanel();
|
|
6761
6825
|
} else {
|
|
6762
6826
|
openPanel();
|
|
6763
6827
|
}
|
|
@@ -6785,7 +6849,7 @@ function handleBooleanDefaultValue(value) {
|
|
|
6785
6849
|
}
|
|
6786
6850
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
6787
6851
|
};
|
|
6788
|
-
const
|
|
6852
|
+
const hidePanel = () => {
|
|
6789
6853
|
const panelElem = refBtnPanel.value;
|
|
6790
6854
|
clearTimeout(internalData.showTime);
|
|
6791
6855
|
if (panelElem) {
|
|
@@ -6807,7 +6871,7 @@ function handleBooleanDefaultValue(value) {
|
|
|
6807
6871
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
6808
6872
|
};
|
|
6809
6873
|
const mouseleaveDropdownEvent = () => {
|
|
6810
|
-
|
|
6874
|
+
hidePanel();
|
|
6811
6875
|
};
|
|
6812
6876
|
const renderTooltipIcon = (tipOpts, type) => {
|
|
6813
6877
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(tooltip, {
|
|
@@ -6874,7 +6938,7 @@ function handleBooleanDefaultValue(value) {
|
|
|
6874
6938
|
buttonMethods = {
|
|
6875
6939
|
dispatchEvent,
|
|
6876
6940
|
openPanel,
|
|
6877
|
-
closePanel,
|
|
6941
|
+
closePanel: hidePanel,
|
|
6878
6942
|
focus() {
|
|
6879
6943
|
const btnElem = refButton.value;
|
|
6880
6944
|
if (btnElem) {
|
|
@@ -6893,7 +6957,7 @@ function handleBooleanDefaultValue(value) {
|
|
|
6893
6957
|
const handleGlobalMousewheelEvent = evnt => {
|
|
6894
6958
|
const panelElem = refBtnPanel.value;
|
|
6895
6959
|
if (reactData.visiblePanel && !getEventTargetNode(evnt, panelElem).flag) {
|
|
6896
|
-
|
|
6960
|
+
hidePanel();
|
|
6897
6961
|
}
|
|
6898
6962
|
};
|
|
6899
6963
|
const handleGlobalMousedownEvent = evnt => {
|
|
@@ -6906,7 +6970,7 @@ function handleBooleanDefaultValue(value) {
|
|
|
6906
6970
|
const panelElem = refBtnPanel.value;
|
|
6907
6971
|
reactData.isActivated = getEventTargetNode(evnt, el).flag || getEventTargetNode(evnt, panelElem).flag;
|
|
6908
6972
|
if (visiblePanel && !reactData.isActivated) {
|
|
6909
|
-
|
|
6973
|
+
hidePanel();
|
|
6910
6974
|
}
|
|
6911
6975
|
}
|
|
6912
6976
|
};
|
|
@@ -6937,12 +7001,13 @@ function handleBooleanDefaultValue(value) {
|
|
|
6937
7001
|
const btnTransfer = computeBtnTransfer.value;
|
|
6938
7002
|
const btnDisabled = computeBtnDisabled.value;
|
|
6939
7003
|
const permissionInfo = computePermissionInfo.value;
|
|
7004
|
+
const downBtnList = computeDownBtnList.value;
|
|
6940
7005
|
const vSize = computeSize.value;
|
|
6941
|
-
const
|
|
7006
|
+
const dropdownsSlot = slots.dropdowns;
|
|
6942
7007
|
if (!permissionInfo.visible) {
|
|
6943
7008
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.createCommentVNode)();
|
|
6944
7009
|
}
|
|
6945
|
-
if (
|
|
7010
|
+
if (dropdownsSlot || downBtnList.length) {
|
|
6946
7011
|
const btnOns = {};
|
|
6947
7012
|
const panelOns = {};
|
|
6948
7013
|
if (trigger === 'hover') {
|
|
@@ -7014,17 +7079,42 @@ function handleBooleanDefaultValue(value) {
|
|
|
7014
7079
|
$button: $xeButton
|
|
7015
7080
|
}) : popupClassName : '', {
|
|
7016
7081
|
[`size--${vSize}`]: vSize,
|
|
7082
|
+
'is--transfer': btnTransfer,
|
|
7017
7083
|
'ani--leave': isAniVisible,
|
|
7018
7084
|
'ani--enter': visiblePanel
|
|
7019
7085
|
}],
|
|
7020
7086
|
placement: reactData.panelPlacement,
|
|
7021
7087
|
style: reactData.panelStyle,
|
|
7022
7088
|
...panelOns
|
|
7023
|
-
}, initialized && (visiblePanel || isAniVisible) ? [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
7089
|
+
}, initialized && (visiblePanel || isAniVisible) ? [dropdownsSlot ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
7024
7090
|
class: 'vxe-button--dropdown-wrapper',
|
|
7025
7091
|
onMousedown: mousedownDropdownEvent,
|
|
7026
7092
|
onClick: clickDropdownEvent
|
|
7027
|
-
},
|
|
7093
|
+
}, initialized && (destroyOnClose ? visiblePanel || isAniVisible : true) ? dropdownsSlot({}) : []) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
|
|
7094
|
+
class: 'vxe-button--dropdown-wrapper'
|
|
7095
|
+
}, initialized && (destroyOnClose ? visiblePanel || isAniVisible : true) ? downBtnList.map((option, i) => {
|
|
7096
|
+
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(VxeButtonComponent, {
|
|
7097
|
+
key: i,
|
|
7098
|
+
type: option.type,
|
|
7099
|
+
mode: option.mode || btnMode,
|
|
7100
|
+
className: option.className,
|
|
7101
|
+
name: option.name,
|
|
7102
|
+
routerLink: option.routerLink,
|
|
7103
|
+
permissionCode: option.permissionCode,
|
|
7104
|
+
title: option.title,
|
|
7105
|
+
content: option.content,
|
|
7106
|
+
status: option.status,
|
|
7107
|
+
icon: option.icon,
|
|
7108
|
+
round: external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(option.round) ? option.round : btnMode === 'text' ? false : btnRound,
|
|
7109
|
+
circle: external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isBoolean(option.circle) ? option.circle : btnMode === 'text' ? false : btnCircle,
|
|
7110
|
+
disabled: option.disabled,
|
|
7111
|
+
loading: option.loading,
|
|
7112
|
+
align: option.align,
|
|
7113
|
+
onClick(params) {
|
|
7114
|
+
downBtnClickEvent(params, option);
|
|
7115
|
+
}
|
|
7116
|
+
});
|
|
7117
|
+
}) : [])] : [])])]);
|
|
7028
7118
|
}
|
|
7029
7119
|
if (routerLink) {
|
|
7030
7120
|
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)((0,external_commonjs_vue_commonjs2_vue_root_Vue_.resolveComponent)('router-link'), {
|
|
@@ -7093,7 +7183,8 @@ function handleBooleanDefaultValue(value) {
|
|
|
7093
7183
|
render() {
|
|
7094
7184
|
return this.renderVN();
|
|
7095
7185
|
}
|
|
7096
|
-
})
|
|
7186
|
+
});
|
|
7187
|
+
/* harmony default export */ var src_button = (VxeButtonComponent);
|
|
7097
7188
|
;// CONCATENATED MODULE: ./packages/button/index.ts
|
|
7098
7189
|
|
|
7099
7190
|
|
|
@@ -13499,83 +13590,28 @@ function toFloatValueFixed(inputValue, digitsValue) {
|
|
|
13499
13590
|
}
|
|
13500
13591
|
};
|
|
13501
13592
|
const updatePlacement = () => {
|
|
13502
|
-
|
|
13503
|
-
|
|
13504
|
-
|
|
13505
|
-
|
|
13506
|
-
|
|
13507
|
-
|
|
13508
|
-
|
|
13509
|
-
|
|
13510
|
-
|
|
13511
|
-
|
|
13512
|
-
|
|
13513
|
-
|
|
13514
|
-
|
|
13515
|
-
|
|
13516
|
-
|
|
13517
|
-
|
|
13518
|
-
|
|
13519
|
-
|
|
13520
|
-
|
|
13521
|
-
|
|
13522
|
-
|
|
13523
|
-
|
|
13524
|
-
visibleHeight,
|
|
13525
|
-
visibleWidth
|
|
13526
|
-
} = getAbsolutePos(el);
|
|
13527
|
-
let panelPlacement = 'bottom';
|
|
13528
|
-
if (btnTransfer) {
|
|
13529
|
-
let left = boundingLeft;
|
|
13530
|
-
let top = boundingTop + targetHeight;
|
|
13531
|
-
if (placement === 'top') {
|
|
13532
|
-
panelPlacement = 'top';
|
|
13533
|
-
top = boundingTop - panelHeight;
|
|
13534
|
-
} else if (!placement) {
|
|
13535
|
-
// 如果下面不够放,则向上
|
|
13536
|
-
if (top + panelHeight + marginSize > visibleHeight) {
|
|
13537
|
-
panelPlacement = 'top';
|
|
13538
|
-
top = boundingTop - panelHeight;
|
|
13539
|
-
}
|
|
13540
|
-
// 如果上面不够放,则向下(优先)
|
|
13541
|
-
if (top < marginSize) {
|
|
13542
|
-
panelPlacement = 'bottom';
|
|
13543
|
-
top = boundingTop + targetHeight;
|
|
13544
|
-
}
|
|
13545
|
-
}
|
|
13546
|
-
// 如果溢出右边
|
|
13547
|
-
if (left + panelWidth + marginSize > visibleWidth) {
|
|
13548
|
-
left -= left + panelWidth + marginSize - visibleWidth;
|
|
13549
|
-
}
|
|
13550
|
-
// 如果溢出左边
|
|
13551
|
-
if (left < marginSize) {
|
|
13552
|
-
left = marginSize;
|
|
13553
|
-
}
|
|
13554
|
-
Object.assign(panelStyle, {
|
|
13555
|
-
left: `${left}px`,
|
|
13556
|
-
top: `${top}px`,
|
|
13557
|
-
minWidth: `${targetWidth}px`
|
|
13558
|
-
});
|
|
13559
|
-
} else {
|
|
13560
|
-
if (placement === 'top') {
|
|
13561
|
-
panelPlacement = 'top';
|
|
13562
|
-
panelStyle.bottom = `${targetHeight}px`;
|
|
13563
|
-
} else if (!placement) {
|
|
13564
|
-
// 如果下面不够放,则向上
|
|
13565
|
-
if (boundingTop + targetHeight + panelHeight > visibleHeight) {
|
|
13566
|
-
// 如果上面不够放,则向下(优先)
|
|
13567
|
-
if (boundingTop - targetHeight - panelHeight > marginSize) {
|
|
13568
|
-
panelPlacement = 'top';
|
|
13569
|
-
panelStyle.bottom = `${targetHeight}px`;
|
|
13570
|
-
}
|
|
13571
|
-
}
|
|
13572
|
-
}
|
|
13573
|
-
}
|
|
13574
|
-
reactData.panelStyle = panelStyle;
|
|
13575
|
-
reactData.panelPlacement = panelPlacement;
|
|
13576
|
-
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
13577
|
-
}
|
|
13578
|
-
});
|
|
13593
|
+
const {
|
|
13594
|
+
placement
|
|
13595
|
+
} = props;
|
|
13596
|
+
const {
|
|
13597
|
+
panelIndex
|
|
13598
|
+
} = reactData;
|
|
13599
|
+
const targetElem = refElem.value;
|
|
13600
|
+
const panelElem = refOptionPanel.value;
|
|
13601
|
+
const btnTransfer = computeBtnTransfer.value;
|
|
13602
|
+
const handleStyle = () => {
|
|
13603
|
+
const ppObj = updatePanelPlacement(targetElem, panelElem, {
|
|
13604
|
+
placement,
|
|
13605
|
+
teleportTo: btnTransfer
|
|
13606
|
+
});
|
|
13607
|
+
const panelStyle = Object.assign(ppObj.style, {
|
|
13608
|
+
zIndex: panelIndex
|
|
13609
|
+
});
|
|
13610
|
+
reactData.panelStyle = panelStyle;
|
|
13611
|
+
reactData.panelPlacement = ppObj.placement;
|
|
13612
|
+
};
|
|
13613
|
+
handleStyle();
|
|
13614
|
+
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(handleStyle);
|
|
13579
13615
|
};
|
|
13580
13616
|
const showOptionPanel = () => {
|
|
13581
13617
|
const {
|
|
@@ -16809,85 +16845,28 @@ const DatePanel = VxeDatePanel;
|
|
|
16809
16845
|
}
|
|
16810
16846
|
};
|
|
16811
16847
|
const updatePlacement = () => {
|
|
16812
|
-
|
|
16813
|
-
|
|
16814
|
-
|
|
16815
|
-
|
|
16816
|
-
|
|
16817
|
-
|
|
16818
|
-
|
|
16819
|
-
|
|
16820
|
-
|
|
16821
|
-
|
|
16822
|
-
|
|
16823
|
-
|
|
16824
|
-
|
|
16825
|
-
|
|
16826
|
-
|
|
16827
|
-
|
|
16828
|
-
|
|
16829
|
-
|
|
16830
|
-
|
|
16831
|
-
|
|
16832
|
-
|
|
16833
|
-
|
|
16834
|
-
visibleHeight,
|
|
16835
|
-
visibleWidth
|
|
16836
|
-
} = getAbsolutePos(targetElem);
|
|
16837
|
-
let panelPlacement = 'bottom';
|
|
16838
|
-
if (btnTransfer) {
|
|
16839
|
-
let left = boundingLeft;
|
|
16840
|
-
let top = boundingTop + targetHeight;
|
|
16841
|
-
if (placement === 'top') {
|
|
16842
|
-
panelPlacement = 'top';
|
|
16843
|
-
top = boundingTop - panelHeight;
|
|
16844
|
-
} else if (!placement) {
|
|
16845
|
-
// 如果下面不够放,则向上
|
|
16846
|
-
if (top + panelHeight + marginSize > visibleHeight) {
|
|
16847
|
-
panelPlacement = 'top';
|
|
16848
|
-
top = boundingTop - panelHeight;
|
|
16849
|
-
}
|
|
16850
|
-
// 如果上面不够放,则向下(优先)
|
|
16851
|
-
if (top < marginSize) {
|
|
16852
|
-
panelPlacement = 'bottom';
|
|
16853
|
-
top = boundingTop + targetHeight;
|
|
16854
|
-
}
|
|
16855
|
-
}
|
|
16856
|
-
// 如果溢出右边
|
|
16857
|
-
if (left + panelWidth + marginSize > visibleWidth) {
|
|
16858
|
-
left -= left + panelWidth + marginSize - visibleWidth;
|
|
16859
|
-
}
|
|
16860
|
-
// 如果溢出左边
|
|
16861
|
-
if (left < marginSize) {
|
|
16862
|
-
left = marginSize;
|
|
16863
|
-
}
|
|
16864
|
-
Object.assign(panelStyle, {
|
|
16865
|
-
left: `${left}px`,
|
|
16866
|
-
top: `${top}px`,
|
|
16867
|
-
minWidth: `${targetWidth}px`
|
|
16868
|
-
});
|
|
16869
|
-
} else {
|
|
16870
|
-
if (placement === 'top') {
|
|
16871
|
-
panelPlacement = 'top';
|
|
16872
|
-
panelStyle.bottom = `${targetHeight}px`;
|
|
16873
|
-
} else if (!placement) {
|
|
16874
|
-
// 如果下面不够放,则向上
|
|
16875
|
-
panelStyle.top = `${targetHeight}px`;
|
|
16876
|
-
if (boundingTop + targetHeight + panelHeight > visibleHeight) {
|
|
16877
|
-
// 如果上面不够放,则向下(优先)
|
|
16878
|
-
if (boundingTop - targetHeight - panelHeight > marginSize) {
|
|
16879
|
-
panelPlacement = 'top';
|
|
16880
|
-
panelStyle.top = '';
|
|
16881
|
-
panelStyle.bottom = `${targetHeight}px`;
|
|
16882
|
-
}
|
|
16883
|
-
}
|
|
16884
|
-
}
|
|
16885
|
-
}
|
|
16886
|
-
reactData.panelStyle = panelStyle;
|
|
16887
|
-
reactData.panelPlacement = panelPlacement;
|
|
16888
|
-
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
16889
|
-
}
|
|
16890
|
-
});
|
|
16848
|
+
const {
|
|
16849
|
+
placement
|
|
16850
|
+
} = props;
|
|
16851
|
+
const {
|
|
16852
|
+
panelIndex
|
|
16853
|
+
} = reactData;
|
|
16854
|
+
const targetElem = refInputTarget.value;
|
|
16855
|
+
const panelElem = refInputPanel.value;
|
|
16856
|
+
const btnTransfer = computeBtnTransfer.value;
|
|
16857
|
+
const handleStyle = () => {
|
|
16858
|
+
const ppObj = updatePanelPlacement(targetElem, panelElem, {
|
|
16859
|
+
placement,
|
|
16860
|
+
teleportTo: btnTransfer
|
|
16861
|
+
});
|
|
16862
|
+
const panelStyle = Object.assign(ppObj.style, {
|
|
16863
|
+
zIndex: panelIndex
|
|
16864
|
+
});
|
|
16865
|
+
reactData.panelStyle = panelStyle;
|
|
16866
|
+
reactData.panelPlacement = ppObj.placement;
|
|
16867
|
+
};
|
|
16868
|
+
handleStyle();
|
|
16869
|
+
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(handleStyle);
|
|
16891
16870
|
};
|
|
16892
16871
|
const showPanel = () => {
|
|
16893
16872
|
const {
|
|
@@ -17521,7 +17500,7 @@ const DatePicker = VxeDatePicker;
|
|
|
17521
17500
|
if (globalPlaceholder) {
|
|
17522
17501
|
return getFuncText(globalPlaceholder);
|
|
17523
17502
|
}
|
|
17524
|
-
return i18n_getI18n('vxe.
|
|
17503
|
+
return i18n_getI18n('vxe.dateRangePicker.pleaseRange');
|
|
17525
17504
|
});
|
|
17526
17505
|
const computeInpImmediate = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
|
|
17527
17506
|
const {
|
|
@@ -17867,11 +17846,11 @@ const DatePicker = VxeDatePicker;
|
|
|
17867
17846
|
if ($startDatePanel && $endDatePanel) {
|
|
17868
17847
|
const startValue = $startDatePanel.getModelValue();
|
|
17869
17848
|
const endValue = $endDatePanel.getModelValue();
|
|
17870
|
-
if (startValue && endValue) {
|
|
17849
|
+
if (startValue && !endValue || !startValue && endValue) {
|
|
17850
|
+
handleChange('', '', evnt);
|
|
17851
|
+
} else {
|
|
17871
17852
|
$startDatePanel.confirmByEvent(evnt);
|
|
17872
17853
|
$endDatePanel.confirmByEvent(evnt);
|
|
17873
|
-
} else {
|
|
17874
|
-
handleChange('', '', evnt);
|
|
17875
17854
|
}
|
|
17876
17855
|
}
|
|
17877
17856
|
hidePanel();
|
|
@@ -17976,85 +17955,28 @@ const DatePicker = VxeDatePicker;
|
|
|
17976
17955
|
}
|
|
17977
17956
|
};
|
|
17978
17957
|
const updatePlacement = () => {
|
|
17979
|
-
|
|
17980
|
-
|
|
17981
|
-
|
|
17982
|
-
|
|
17983
|
-
|
|
17984
|
-
|
|
17985
|
-
|
|
17986
|
-
|
|
17987
|
-
|
|
17988
|
-
|
|
17989
|
-
|
|
17990
|
-
|
|
17991
|
-
|
|
17992
|
-
|
|
17993
|
-
|
|
17994
|
-
|
|
17995
|
-
|
|
17996
|
-
|
|
17997
|
-
|
|
17998
|
-
|
|
17999
|
-
|
|
18000
|
-
|
|
18001
|
-
visibleHeight,
|
|
18002
|
-
visibleWidth
|
|
18003
|
-
} = getAbsolutePos(targetElem);
|
|
18004
|
-
let panelPlacement = 'bottom';
|
|
18005
|
-
if (btnTransfer) {
|
|
18006
|
-
let left = boundingLeft;
|
|
18007
|
-
let top = boundingTop + targetHeight;
|
|
18008
|
-
if (placement === 'top') {
|
|
18009
|
-
panelPlacement = 'top';
|
|
18010
|
-
top = boundingTop - panelHeight;
|
|
18011
|
-
} else if (!placement) {
|
|
18012
|
-
// 如果下面不够放,则向上
|
|
18013
|
-
if (top + panelHeight + marginSize > visibleHeight) {
|
|
18014
|
-
panelPlacement = 'top';
|
|
18015
|
-
top = boundingTop - panelHeight;
|
|
18016
|
-
}
|
|
18017
|
-
// 如果上面不够放,则向下(优先)
|
|
18018
|
-
if (top < marginSize) {
|
|
18019
|
-
panelPlacement = 'bottom';
|
|
18020
|
-
top = boundingTop + targetHeight;
|
|
18021
|
-
}
|
|
18022
|
-
}
|
|
18023
|
-
// 如果溢出右边
|
|
18024
|
-
if (left + panelWidth + marginSize > visibleWidth) {
|
|
18025
|
-
left -= left + panelWidth + marginSize - visibleWidth;
|
|
18026
|
-
}
|
|
18027
|
-
// 如果溢出左边
|
|
18028
|
-
if (left < marginSize) {
|
|
18029
|
-
left = marginSize;
|
|
18030
|
-
}
|
|
18031
|
-
Object.assign(panelStyle, {
|
|
18032
|
-
left: `${left}px`,
|
|
18033
|
-
top: `${top}px`,
|
|
18034
|
-
minWidth: `${targetWidth}px`
|
|
18035
|
-
});
|
|
18036
|
-
} else {
|
|
18037
|
-
if (placement === 'top') {
|
|
18038
|
-
panelPlacement = 'top';
|
|
18039
|
-
panelStyle.bottom = `${targetHeight}px`;
|
|
18040
|
-
} else if (!placement) {
|
|
18041
|
-
// 如果下面不够放,则向上
|
|
18042
|
-
panelStyle.top = `${targetHeight}px`;
|
|
18043
|
-
if (boundingTop + targetHeight + panelHeight > visibleHeight) {
|
|
18044
|
-
// 如果上面不够放,则向下(优先)
|
|
18045
|
-
if (boundingTop - targetHeight - panelHeight > marginSize) {
|
|
18046
|
-
panelPlacement = 'top';
|
|
18047
|
-
panelStyle.top = '';
|
|
18048
|
-
panelStyle.bottom = `${targetHeight}px`;
|
|
18049
|
-
}
|
|
18050
|
-
}
|
|
18051
|
-
}
|
|
18052
|
-
}
|
|
18053
|
-
reactData.panelStyle = panelStyle;
|
|
18054
|
-
reactData.panelPlacement = panelPlacement;
|
|
18055
|
-
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
18056
|
-
}
|
|
18057
|
-
});
|
|
17958
|
+
const {
|
|
17959
|
+
placement
|
|
17960
|
+
} = props;
|
|
17961
|
+
const {
|
|
17962
|
+
panelIndex
|
|
17963
|
+
} = reactData;
|
|
17964
|
+
const targetElem = refInputTarget.value;
|
|
17965
|
+
const panelElem = refInputPanel.value;
|
|
17966
|
+
const btnTransfer = computeBtnTransfer.value;
|
|
17967
|
+
const handleStyle = () => {
|
|
17968
|
+
const ppObj = updatePanelPlacement(targetElem, panelElem, {
|
|
17969
|
+
placement,
|
|
17970
|
+
teleportTo: btnTransfer
|
|
17971
|
+
});
|
|
17972
|
+
const panelStyle = Object.assign(ppObj.style, {
|
|
17973
|
+
zIndex: panelIndex
|
|
17974
|
+
});
|
|
17975
|
+
reactData.panelStyle = panelStyle;
|
|
17976
|
+
reactData.panelPlacement = ppObj.placement;
|
|
17977
|
+
};
|
|
17978
|
+
handleStyle();
|
|
17979
|
+
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(handleStyle);
|
|
18058
17980
|
};
|
|
18059
17981
|
const showPanel = () => {
|
|
18060
17982
|
const {
|
|
@@ -26444,83 +26366,28 @@ function getOptUniqueId() {
|
|
|
26444
26366
|
}
|
|
26445
26367
|
};
|
|
26446
26368
|
const updatePlacement = () => {
|
|
26447
|
-
|
|
26448
|
-
|
|
26449
|
-
|
|
26450
|
-
|
|
26451
|
-
|
|
26452
|
-
|
|
26453
|
-
|
|
26454
|
-
|
|
26455
|
-
|
|
26456
|
-
|
|
26457
|
-
|
|
26458
|
-
|
|
26459
|
-
|
|
26460
|
-
|
|
26461
|
-
|
|
26462
|
-
|
|
26463
|
-
|
|
26464
|
-
|
|
26465
|
-
|
|
26466
|
-
|
|
26467
|
-
|
|
26468
|
-
|
|
26469
|
-
visibleHeight,
|
|
26470
|
-
visibleWidth
|
|
26471
|
-
} = getAbsolutePos(el);
|
|
26472
|
-
let panelPlacement = 'bottom';
|
|
26473
|
-
if (btnTransfer) {
|
|
26474
|
-
let left = boundingLeft;
|
|
26475
|
-
let top = boundingTop + targetHeight;
|
|
26476
|
-
if (placement === 'top') {
|
|
26477
|
-
panelPlacement = 'top';
|
|
26478
|
-
top = boundingTop - panelHeight;
|
|
26479
|
-
} else if (!placement) {
|
|
26480
|
-
// 如果下面不够放,则向上
|
|
26481
|
-
if (top + panelHeight + marginSize > visibleHeight) {
|
|
26482
|
-
panelPlacement = 'top';
|
|
26483
|
-
top = boundingTop - panelHeight;
|
|
26484
|
-
}
|
|
26485
|
-
// 如果上面不够放,则向下(优先)
|
|
26486
|
-
if (top < marginSize) {
|
|
26487
|
-
panelPlacement = 'bottom';
|
|
26488
|
-
top = boundingTop + targetHeight;
|
|
26489
|
-
}
|
|
26490
|
-
}
|
|
26491
|
-
// 如果溢出右边
|
|
26492
|
-
if (left + panelWidth + marginSize > visibleWidth) {
|
|
26493
|
-
left -= left + panelWidth + marginSize - visibleWidth;
|
|
26494
|
-
}
|
|
26495
|
-
// 如果溢出左边
|
|
26496
|
-
if (left < marginSize) {
|
|
26497
|
-
left = marginSize;
|
|
26498
|
-
}
|
|
26499
|
-
Object.assign(panelStyle, {
|
|
26500
|
-
left: `${left}px`,
|
|
26501
|
-
top: `${top}px`,
|
|
26502
|
-
minWidth: `${targetWidth}px`
|
|
26503
|
-
});
|
|
26504
|
-
} else {
|
|
26505
|
-
if (placement === 'top') {
|
|
26506
|
-
panelPlacement = 'top';
|
|
26507
|
-
panelStyle.bottom = `${targetHeight}px`;
|
|
26508
|
-
} else if (!placement) {
|
|
26509
|
-
// 如果下面不够放,则向上
|
|
26510
|
-
if (boundingTop + targetHeight + panelHeight > visibleHeight) {
|
|
26511
|
-
// 如果上面不够放,则向下(优先)
|
|
26512
|
-
if (boundingTop - targetHeight - panelHeight > marginSize) {
|
|
26513
|
-
panelPlacement = 'top';
|
|
26514
|
-
panelStyle.bottom = `${targetHeight}px`;
|
|
26515
|
-
}
|
|
26516
|
-
}
|
|
26517
|
-
}
|
|
26518
|
-
}
|
|
26519
|
-
reactData.panelStyle = panelStyle;
|
|
26520
|
-
reactData.panelPlacement = panelPlacement;
|
|
26521
|
-
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
26522
|
-
}
|
|
26523
|
-
});
|
|
26369
|
+
const {
|
|
26370
|
+
placement
|
|
26371
|
+
} = props;
|
|
26372
|
+
const {
|
|
26373
|
+
panelIndex
|
|
26374
|
+
} = reactData;
|
|
26375
|
+
const targetElem = refElem.value;
|
|
26376
|
+
const panelElem = refOptionPanel.value;
|
|
26377
|
+
const btnTransfer = computeBtnTransfer.value;
|
|
26378
|
+
const handleStyle = () => {
|
|
26379
|
+
const ppObj = updatePanelPlacement(targetElem, panelElem, {
|
|
26380
|
+
placement,
|
|
26381
|
+
teleportTo: btnTransfer
|
|
26382
|
+
});
|
|
26383
|
+
const panelStyle = Object.assign(ppObj.style, {
|
|
26384
|
+
zIndex: panelIndex
|
|
26385
|
+
});
|
|
26386
|
+
reactData.panelStyle = panelStyle;
|
|
26387
|
+
reactData.panelPlacement = ppObj.placement;
|
|
26388
|
+
};
|
|
26389
|
+
handleStyle();
|
|
26390
|
+
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(handleStyle);
|
|
26524
26391
|
};
|
|
26525
26392
|
const showOptionPanel = () => {
|
|
26526
26393
|
const {
|
|
@@ -35255,83 +35122,28 @@ function tree_select_getOptUniqueId() {
|
|
|
35255
35122
|
}
|
|
35256
35123
|
};
|
|
35257
35124
|
const updatePlacement = () => {
|
|
35258
|
-
|
|
35259
|
-
|
|
35260
|
-
|
|
35261
|
-
|
|
35262
|
-
|
|
35263
|
-
|
|
35264
|
-
|
|
35265
|
-
|
|
35266
|
-
|
|
35267
|
-
|
|
35268
|
-
|
|
35269
|
-
|
|
35270
|
-
|
|
35271
|
-
|
|
35272
|
-
|
|
35273
|
-
|
|
35274
|
-
|
|
35275
|
-
|
|
35276
|
-
|
|
35277
|
-
|
|
35278
|
-
|
|
35279
|
-
|
|
35280
|
-
visibleHeight,
|
|
35281
|
-
visibleWidth
|
|
35282
|
-
} = getAbsolutePos(el);
|
|
35283
|
-
let panelPlacement = 'bottom';
|
|
35284
|
-
if (btnTransfer) {
|
|
35285
|
-
let left = boundingLeft;
|
|
35286
|
-
let top = boundingTop + targetHeight;
|
|
35287
|
-
if (placement === 'top') {
|
|
35288
|
-
panelPlacement = 'top';
|
|
35289
|
-
top = boundingTop - panelHeight;
|
|
35290
|
-
} else if (!placement) {
|
|
35291
|
-
// 如果下面不够放,则向上
|
|
35292
|
-
if (top + panelHeight + marginSize > visibleHeight) {
|
|
35293
|
-
panelPlacement = 'top';
|
|
35294
|
-
top = boundingTop - panelHeight;
|
|
35295
|
-
}
|
|
35296
|
-
// 如果上面不够放,则向下(优先)
|
|
35297
|
-
if (top < marginSize) {
|
|
35298
|
-
panelPlacement = 'bottom';
|
|
35299
|
-
top = boundingTop + targetHeight;
|
|
35300
|
-
}
|
|
35301
|
-
}
|
|
35302
|
-
// 如果溢出右边
|
|
35303
|
-
if (left + panelWidth + marginSize > visibleWidth) {
|
|
35304
|
-
left -= left + panelWidth + marginSize - visibleWidth;
|
|
35305
|
-
}
|
|
35306
|
-
// 如果溢出左边
|
|
35307
|
-
if (left < marginSize) {
|
|
35308
|
-
left = marginSize;
|
|
35309
|
-
}
|
|
35310
|
-
Object.assign(panelStyle, {
|
|
35311
|
-
left: `${left}px`,
|
|
35312
|
-
top: `${top}px`,
|
|
35313
|
-
minWidth: `${targetWidth}px`
|
|
35314
|
-
});
|
|
35315
|
-
} else {
|
|
35316
|
-
if (placement === 'top') {
|
|
35317
|
-
panelPlacement = 'top';
|
|
35318
|
-
panelStyle.bottom = `${targetHeight}px`;
|
|
35319
|
-
} else if (!placement) {
|
|
35320
|
-
// 如果下面不够放,则向上
|
|
35321
|
-
if (boundingTop + targetHeight + panelHeight > visibleHeight) {
|
|
35322
|
-
// 如果上面不够放,则向下(优先)
|
|
35323
|
-
if (boundingTop - targetHeight - panelHeight > marginSize) {
|
|
35324
|
-
panelPlacement = 'top';
|
|
35325
|
-
panelStyle.bottom = `${targetHeight}px`;
|
|
35326
|
-
}
|
|
35327
|
-
}
|
|
35328
|
-
}
|
|
35329
|
-
}
|
|
35330
|
-
reactData.panelStyle = panelStyle;
|
|
35331
|
-
reactData.panelPlacement = panelPlacement;
|
|
35332
|
-
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
35333
|
-
}
|
|
35334
|
-
});
|
|
35125
|
+
const {
|
|
35126
|
+
placement
|
|
35127
|
+
} = props;
|
|
35128
|
+
const {
|
|
35129
|
+
panelIndex
|
|
35130
|
+
} = reactData;
|
|
35131
|
+
const targetElem = refElem.value;
|
|
35132
|
+
const panelElem = refOptionPanel.value;
|
|
35133
|
+
const btnTransfer = computeBtnTransfer.value;
|
|
35134
|
+
const handleStyle = () => {
|
|
35135
|
+
const ppObj = updatePanelPlacement(targetElem, panelElem, {
|
|
35136
|
+
placement,
|
|
35137
|
+
teleportTo: btnTransfer
|
|
35138
|
+
});
|
|
35139
|
+
const panelStyle = Object.assign(ppObj.style, {
|
|
35140
|
+
zIndex: panelIndex
|
|
35141
|
+
});
|
|
35142
|
+
reactData.panelStyle = panelStyle;
|
|
35143
|
+
reactData.panelPlacement = ppObj.placement;
|
|
35144
|
+
};
|
|
35145
|
+
handleStyle();
|
|
35146
|
+
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(handleStyle);
|
|
35335
35147
|
};
|
|
35336
35148
|
const showOptionPanel = () => {
|
|
35337
35149
|
const {
|
|
@@ -46684,86 +46496,28 @@ const Print = VxePrint;
|
|
|
46684
46496
|
* 手动更新位置
|
|
46685
46497
|
*/
|
|
46686
46498
|
const updatePlacement = () => {
|
|
46687
|
-
|
|
46688
|
-
|
|
46689
|
-
|
|
46690
|
-
|
|
46691
|
-
|
|
46692
|
-
|
|
46693
|
-
|
|
46694
|
-
|
|
46695
|
-
|
|
46696
|
-
|
|
46697
|
-
|
|
46698
|
-
|
|
46699
|
-
|
|
46700
|
-
|
|
46701
|
-
|
|
46702
|
-
|
|
46703
|
-
|
|
46704
|
-
|
|
46705
|
-
|
|
46706
|
-
|
|
46707
|
-
|
|
46708
|
-
|
|
46709
|
-
boundingTop,
|
|
46710
|
-
boundingLeft,
|
|
46711
|
-
visibleHeight,
|
|
46712
|
-
visibleWidth
|
|
46713
|
-
} = getAbsolutePos(targetElem);
|
|
46714
|
-
let panelPlacement = 'bottom';
|
|
46715
|
-
if (btnTransfer) {
|
|
46716
|
-
let left = boundingLeft;
|
|
46717
|
-
let top = boundingTop + targetHeight;
|
|
46718
|
-
if (placement === 'top') {
|
|
46719
|
-
panelPlacement = 'top';
|
|
46720
|
-
top = boundingTop - panelHeight;
|
|
46721
|
-
} else if (!placement) {
|
|
46722
|
-
// 如果下面不够放,则向上
|
|
46723
|
-
if (top + panelHeight + marginSize > visibleHeight) {
|
|
46724
|
-
panelPlacement = 'top';
|
|
46725
|
-
top = boundingTop - panelHeight;
|
|
46726
|
-
}
|
|
46727
|
-
// 如果上面不够放,则向下(优先)
|
|
46728
|
-
if (top < marginSize) {
|
|
46729
|
-
panelPlacement = 'bottom';
|
|
46730
|
-
top = boundingTop + targetHeight;
|
|
46731
|
-
}
|
|
46732
|
-
}
|
|
46733
|
-
// 如果溢出右边
|
|
46734
|
-
if (left + panelWidth + marginSize > visibleWidth) {
|
|
46735
|
-
left -= left + panelWidth + marginSize - visibleWidth;
|
|
46736
|
-
}
|
|
46737
|
-
// 如果溢出左边
|
|
46738
|
-
if (left < marginSize) {
|
|
46739
|
-
left = marginSize;
|
|
46740
|
-
}
|
|
46741
|
-
Object.assign(panelStyle, {
|
|
46742
|
-
left: `${left}px`,
|
|
46743
|
-
top: `${top}px`,
|
|
46744
|
-
minWidth: `${targetWidth}px`
|
|
46745
|
-
});
|
|
46746
|
-
} else {
|
|
46747
|
-
if (placement === 'top') {
|
|
46748
|
-
panelPlacement = 'top';
|
|
46749
|
-
panelStyle.bottom = `${targetHeight}px`;
|
|
46750
|
-
} else if (!placement) {
|
|
46751
|
-
// 如果下面不够放,则向上
|
|
46752
|
-
if (boundingTop + targetHeight + panelHeight > visibleHeight) {
|
|
46753
|
-
// 如果上面不够放,则向下(优先)
|
|
46754
|
-
if (boundingTop - targetHeight - panelHeight > marginSize) {
|
|
46755
|
-
panelPlacement = 'top';
|
|
46756
|
-
panelStyle.bottom = `${targetHeight}px`;
|
|
46757
|
-
}
|
|
46758
|
-
}
|
|
46759
|
-
}
|
|
46760
|
-
}
|
|
46761
|
-
reactData.panelStyle = panelStyle;
|
|
46762
|
-
reactData.panelPlacement = panelPlacement;
|
|
46763
|
-
}
|
|
46764
|
-
}
|
|
46765
|
-
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
46766
|
-
});
|
|
46499
|
+
const {
|
|
46500
|
+
placement
|
|
46501
|
+
} = props;
|
|
46502
|
+
const {
|
|
46503
|
+
panelIndex
|
|
46504
|
+
} = reactData;
|
|
46505
|
+
const targetElem = refPulldownContent.value;
|
|
46506
|
+
const panelElem = refPulldownPanel.value;
|
|
46507
|
+
const btnTransfer = computeBtnTransfer.value;
|
|
46508
|
+
const handleStyle = () => {
|
|
46509
|
+
const ppObj = updatePanelPlacement(targetElem, panelElem, {
|
|
46510
|
+
placement,
|
|
46511
|
+
teleportTo: btnTransfer
|
|
46512
|
+
});
|
|
46513
|
+
const panelStyle = Object.assign(ppObj.style, {
|
|
46514
|
+
zIndex: panelIndex
|
|
46515
|
+
});
|
|
46516
|
+
reactData.panelStyle = panelStyle;
|
|
46517
|
+
reactData.panelPlacement = ppObj.placement;
|
|
46518
|
+
};
|
|
46519
|
+
handleStyle();
|
|
46520
|
+
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(handleStyle);
|
|
46767
46521
|
};
|
|
46768
46522
|
/**
|
|
46769
46523
|
* 显示下拉面板
|
|
@@ -48497,83 +48251,28 @@ function getRowUniqueId() {
|
|
|
48497
48251
|
}
|
|
48498
48252
|
};
|
|
48499
48253
|
const updatePlacement = () => {
|
|
48500
|
-
|
|
48501
|
-
|
|
48502
|
-
|
|
48503
|
-
|
|
48504
|
-
|
|
48505
|
-
|
|
48506
|
-
|
|
48507
|
-
|
|
48508
|
-
|
|
48509
|
-
|
|
48510
|
-
|
|
48511
|
-
|
|
48512
|
-
|
|
48513
|
-
|
|
48514
|
-
|
|
48515
|
-
|
|
48516
|
-
|
|
48517
|
-
|
|
48518
|
-
|
|
48519
|
-
|
|
48520
|
-
|
|
48521
|
-
|
|
48522
|
-
visibleHeight,
|
|
48523
|
-
visibleWidth
|
|
48524
|
-
} = getAbsolutePos(el);
|
|
48525
|
-
let panelPlacement = 'bottom';
|
|
48526
|
-
if (btnTransfer) {
|
|
48527
|
-
let left = boundingLeft;
|
|
48528
|
-
let top = boundingTop + targetHeight;
|
|
48529
|
-
if (placement === 'top') {
|
|
48530
|
-
panelPlacement = 'top';
|
|
48531
|
-
top = boundingTop - panelHeight;
|
|
48532
|
-
} else if (!placement) {
|
|
48533
|
-
// 如果下面不够放,则向上
|
|
48534
|
-
if (top + panelHeight + marginSize > visibleHeight) {
|
|
48535
|
-
panelPlacement = 'top';
|
|
48536
|
-
top = boundingTop - panelHeight;
|
|
48537
|
-
}
|
|
48538
|
-
// 如果上面不够放,则向下(优先)
|
|
48539
|
-
if (top < marginSize) {
|
|
48540
|
-
panelPlacement = 'bottom';
|
|
48541
|
-
top = boundingTop + targetHeight;
|
|
48542
|
-
}
|
|
48543
|
-
}
|
|
48544
|
-
// 如果溢出右边
|
|
48545
|
-
if (left + panelWidth + marginSize > visibleWidth) {
|
|
48546
|
-
left -= left + panelWidth + marginSize - visibleWidth;
|
|
48547
|
-
}
|
|
48548
|
-
// 如果溢出左边
|
|
48549
|
-
if (left < marginSize) {
|
|
48550
|
-
left = marginSize;
|
|
48551
|
-
}
|
|
48552
|
-
Object.assign(panelStyle, {
|
|
48553
|
-
left: `${left}px`,
|
|
48554
|
-
top: `${top}px`,
|
|
48555
|
-
minWidth: `${targetWidth}px`
|
|
48556
|
-
});
|
|
48557
|
-
} else {
|
|
48558
|
-
if (placement === 'top') {
|
|
48559
|
-
panelPlacement = 'top';
|
|
48560
|
-
panelStyle.bottom = `${targetHeight}px`;
|
|
48561
|
-
} else if (!placement) {
|
|
48562
|
-
// 如果下面不够放,则向上
|
|
48563
|
-
if (boundingTop + targetHeight + panelHeight > visibleHeight) {
|
|
48564
|
-
// 如果上面不够放,则向下(优先)
|
|
48565
|
-
if (boundingTop - targetHeight - panelHeight > marginSize) {
|
|
48566
|
-
panelPlacement = 'top';
|
|
48567
|
-
panelStyle.bottom = `${targetHeight}px`;
|
|
48568
|
-
}
|
|
48569
|
-
}
|
|
48570
|
-
}
|
|
48571
|
-
}
|
|
48572
|
-
reactData.panelStyle = panelStyle;
|
|
48573
|
-
reactData.panelPlacement = panelPlacement;
|
|
48574
|
-
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
|
|
48575
|
-
}
|
|
48576
|
-
});
|
|
48254
|
+
const {
|
|
48255
|
+
placement
|
|
48256
|
+
} = props;
|
|
48257
|
+
const {
|
|
48258
|
+
panelIndex
|
|
48259
|
+
} = reactData;
|
|
48260
|
+
const targetElem = refElem.value;
|
|
48261
|
+
const panelElem = refOptionPanel.value;
|
|
48262
|
+
const btnTransfer = computeBtnTransfer.value;
|
|
48263
|
+
const handleStyle = () => {
|
|
48264
|
+
const ppObj = updatePanelPlacement(targetElem, panelElem, {
|
|
48265
|
+
placement,
|
|
48266
|
+
teleportTo: btnTransfer
|
|
48267
|
+
});
|
|
48268
|
+
const panelStyle = Object.assign(ppObj.style, {
|
|
48269
|
+
zIndex: panelIndex
|
|
48270
|
+
});
|
|
48271
|
+
reactData.panelStyle = panelStyle;
|
|
48272
|
+
reactData.panelPlacement = ppObj.placement;
|
|
48273
|
+
};
|
|
48274
|
+
handleStyle();
|
|
48275
|
+
return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)().then(handleStyle);
|
|
48577
48276
|
};
|
|
48578
48277
|
const showOptionPanel = () => {
|
|
48579
48278
|
const {
|