vxe-pc-ui 3.17.7 → 3.17.8
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 +2 -2
- package/es/button-group/style.css +1 -1
- package/es/button-group/style.min.css +1 -1
- package/es/color-picker/src/color-picker.js +2 -2
- package/es/date-picker/src/date-picker.js +2 -2
- package/es/date-range-picker/src/date-range-picker.js +2 -2
- package/es/drawer/src/drawer.js +2 -2
- package/es/icon/style.css +1 -1
- package/es/icon-picker/src/icon-picker.js +2 -2
- package/es/menu/src/menu.js +2 -2
- package/es/modal/src/modal.js +2 -2
- package/es/select/src/select.js +2 -2
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table-select/src/table-select.js +2 -2
- package/es/tooltip/src/tooltip.js +72 -127
- package/es/tree/src/tree.js +2 -2
- package/es/tree-select/src/tree-select.js +2 -2
- package/es/ui/index.js +4 -4
- package/es/ui/src/dom.js +114 -81
- package/es/ui/src/log.js +1 -1
- package/es/vxe-button-group/style.css +1 -1
- package/es/vxe-button-group/style.min.css +1 -1
- package/lib/button/src/button.js +1 -1
- package/lib/button/src/button.min.js +1 -1
- package/lib/button-group/style/style.css +1 -1
- package/lib/button-group/style/style.min.css +1 -1
- package/lib/color-picker/src/color-picker.js +1 -1
- package/lib/color-picker/src/color-picker.min.js +1 -1
- package/lib/date-picker/src/date-picker.js +1 -1
- package/lib/date-picker/src/date-picker.min.js +1 -1
- package/lib/date-range-picker/src/date-range-picker.js +1 -1
- package/lib/date-range-picker/src/date-range-picker.min.js +1 -1
- package/lib/drawer/src/drawer.js +1 -1
- 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/icon-picker/src/icon-picker.js +1 -1
- package/lib/icon-picker/src/icon-picker.min.js +1 -1
- package/lib/index.umd.js +204 -222
- package/lib/index.umd.min.js +1 -1
- package/lib/menu/src/menu.js +1 -1
- package/lib/menu/src/menu.min.js +1 -1
- package/lib/modal/src/modal.js +1 -1
- package/lib/modal/src/modal.min.js +1 -1
- package/lib/select/src/select.js +1 -1
- 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 +1 -1
- package/lib/table-select/src/table-select.min.js +1 -1
- package/lib/tooltip/src/tooltip.js +78 -126
- package/lib/tooltip/src/tooltip.min.js +1 -1
- package/lib/tree/src/tree.js +3 -2
- package/lib/tree/src/tree.min.js +1 -1
- package/lib/tree-select/src/tree-select.js +1 -1
- package/lib/tree-select/src/tree-select.min.js +1 -1
- package/lib/ui/index.js +4 -4
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/dom.js +109 -79
- 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-group/style/style.css +1 -1
- package/lib/vxe-button-group/style/style.min.css +1 -1
- package/package.json +1 -1
- package/packages/button/src/button.ts +2 -2
- package/packages/color-picker/src/color-picker.ts +2 -2
- package/packages/date-picker/src/date-picker.ts +2 -2
- package/packages/date-range-picker/src/date-range-picker.ts +2 -2
- package/packages/drawer/src/drawer.ts +2 -2
- package/packages/icon-picker/src/icon-picker.ts +2 -2
- package/packages/menu/src/menu.ts +2 -2
- package/packages/modal/src/modal.ts +2 -2
- package/packages/select/src/select.ts +2 -2
- package/packages/table-select/src/table-select.ts +2 -2
- package/packages/tooltip/src/tooltip.ts +74 -126
- package/packages/tree/src/tree.ts +2 -2
- package/packages/tree-select/src/tree-select.ts +2 -2
- package/packages/ui/index.ts +3 -3
- package/packages/ui/src/dom.ts +125 -84
- package/styles/components/button-group.scss +4 -2
- package/types/components/table.d.ts +6 -0
- package/types/components/tooltip.d.ts +4 -0
- /package/es/icon/{iconfont.1787197085834.ttf → iconfont.1787216119203.ttf} +0 -0
- /package/es/icon/{iconfont.1787197085834.woff → iconfont.1787216119203.woff} +0 -0
- /package/es/icon/{iconfont.1787197085834.woff2 → iconfont.1787216119203.woff2} +0 -0
- /package/es/{iconfont.1787197085834.ttf → iconfont.1787216119203.ttf} +0 -0
- /package/es/{iconfont.1787197085834.woff → iconfont.1787216119203.woff} +0 -0
- /package/es/{iconfont.1787197085834.woff2 → iconfont.1787216119203.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1787197085834.ttf → iconfont.1787216119203.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1787197085834.woff → iconfont.1787216119203.woff} +0 -0
- /package/lib/icon/style/{iconfont.1787197085834.woff2 → iconfont.1787216119203.woff2} +0 -0
- /package/lib/{iconfont.1787197085834.ttf → iconfont.1787216119203.ttf} +0 -0
- /package/lib/{iconfont.1787197085834.woff → iconfont.1787216119203.woff} +0 -0
- /package/lib/{iconfont.1787197085834.woff2 → iconfont.1787216119203.woff2} +0 -0
package/lib/ui/src/dom.js
CHANGED
|
@@ -10,6 +10,7 @@ exports.getEventTargetNode = getEventTargetNode;
|
|
|
10
10
|
exports.getOffsetPos = getOffsetPos;
|
|
11
11
|
exports.getPaddingLeftRightSize = getPaddingLeftRightSize;
|
|
12
12
|
exports.getPaddingTopBottomSize = getPaddingTopBottomSize;
|
|
13
|
+
exports.getPopupAppendElement = getPopupAppendElement;
|
|
13
14
|
exports.getPopupContainer = getPopupContainer;
|
|
14
15
|
exports.getTpImg = getTpImg;
|
|
15
16
|
exports.hasClass = hasClass;
|
|
@@ -193,12 +194,17 @@ function triggerEvent(targetElem, type) {
|
|
|
193
194
|
function isNodeElement(elem) {
|
|
194
195
|
return elem && elem.nodeType === 1;
|
|
195
196
|
}
|
|
197
|
+
/**
|
|
198
|
+
* 通用定位计算
|
|
199
|
+
*/
|
|
196
200
|
function updatePanelPlacement(targetElem, panelElem, options) {
|
|
197
201
|
var _Object$assign = Object.assign({
|
|
198
202
|
teleportTo: false,
|
|
199
203
|
marginSize: 18,
|
|
200
204
|
isMinWidth: true
|
|
201
205
|
}, options),
|
|
206
|
+
defaultTop = _Object$assign.defaultTop,
|
|
207
|
+
defaultLeft = _Object$assign.defaultLeft,
|
|
202
208
|
placement = _Object$assign.placement,
|
|
203
209
|
defaultPlacement = _Object$assign.defaultPlacement,
|
|
204
210
|
teleportTo = _Object$assign.teleportTo,
|
|
@@ -207,112 +213,136 @@ function updatePanelPlacement(targetElem, panelElem, options) {
|
|
|
207
213
|
var panelPlacement = 'bottom';
|
|
208
214
|
var top = '';
|
|
209
215
|
var bottom = '';
|
|
210
|
-
var left =
|
|
211
|
-
var right = '';
|
|
216
|
+
var left = 0;
|
|
212
217
|
var minWidth = '';
|
|
218
|
+
var arrowLeft = '';
|
|
213
219
|
var stys = {};
|
|
214
220
|
if (panelElem && targetElem) {
|
|
215
|
-
var
|
|
216
|
-
var
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
221
|
+
var parentEl = panelElem.parentElement;
|
|
222
|
+
var parentWrapperEl = parentEl === document.body ? document.documentElement : parentEl;
|
|
223
|
+
if (parentWrapperEl) {
|
|
224
|
+
var targetWidth = targetElem.offsetWidth;
|
|
225
|
+
var targetHeight = targetElem.offsetHeight;
|
|
226
|
+
var panelHeight = panelElem.offsetHeight;
|
|
227
|
+
var panelWidth = panelElem.offsetWidth;
|
|
228
|
+
var parentWrapperRect = parentWrapperEl.getBoundingClientRect();
|
|
229
|
+
var panelRect = panelElem.getBoundingClientRect();
|
|
230
|
+
var targetRect = targetElem.getBoundingClientRect();
|
|
231
|
+
var visibleHeight = parentWrapperEl.clientHeight;
|
|
232
|
+
var visibleWidth = parentWrapperEl.clientWidth;
|
|
233
|
+
var offsetLeft = parentWrapperRect.left;
|
|
234
|
+
var offsetTop = parentWrapperRect.top;
|
|
235
|
+
var targetLeft = targetRect.left;
|
|
236
|
+
var targetTop = targetRect.top;
|
|
237
|
+
minWidth = targetElem.offsetWidth;
|
|
238
|
+
if (teleportTo) {
|
|
239
|
+
left = defaultLeft || targetLeft;
|
|
240
|
+
top = defaultTop || targetTop + targetHeight;
|
|
241
|
+
if (placement === 'top') {
|
|
233
242
|
panelPlacement = 'top';
|
|
234
|
-
top =
|
|
235
|
-
|
|
236
|
-
if (
|
|
237
|
-
panelPlacement = 'bottom';
|
|
238
|
-
top = targetRect.top + targetHeight;
|
|
239
|
-
}
|
|
240
|
-
// 如果下面不够放,则向上(优先)
|
|
241
|
-
if (top + panelHeight + marginSize > visibleHeight) {
|
|
243
|
+
top = targetTop - panelHeight;
|
|
244
|
+
} else if (!placement) {
|
|
245
|
+
if (defaultPlacement === 'top') {
|
|
242
246
|
panelPlacement = 'top';
|
|
243
|
-
top =
|
|
247
|
+
top = targetTop - panelHeight;
|
|
248
|
+
// 如果上面不够放,则向下
|
|
249
|
+
if (top < marginSize) {
|
|
250
|
+
panelPlacement = 'bottom';
|
|
251
|
+
top = targetTop + targetHeight;
|
|
252
|
+
}
|
|
253
|
+
// 如果下面不够放,则向上(优先)
|
|
254
|
+
if (top + panelHeight + marginSize > visibleHeight) {
|
|
255
|
+
panelPlacement = 'top';
|
|
256
|
+
top = targetTop - panelHeight;
|
|
257
|
+
}
|
|
258
|
+
} else {
|
|
259
|
+
// 如果下面不够放,则向上
|
|
260
|
+
if (top + panelHeight + marginSize > visibleHeight) {
|
|
261
|
+
panelPlacement = 'top';
|
|
262
|
+
top = targetTop - panelHeight;
|
|
263
|
+
}
|
|
264
|
+
// 如果上面不够放,则向下(优先)
|
|
265
|
+
if (top < marginSize) {
|
|
266
|
+
panelPlacement = 'bottom';
|
|
267
|
+
top = targetTop + targetHeight;
|
|
268
|
+
}
|
|
244
269
|
}
|
|
245
|
-
}
|
|
270
|
+
}
|
|
271
|
+
// 如果溢出右边
|
|
272
|
+
if (left + panelWidth + marginSize > visibleWidth) {
|
|
273
|
+
left -= left + panelWidth + marginSize - visibleWidth;
|
|
274
|
+
}
|
|
275
|
+
// 如果溢出左边
|
|
276
|
+
if (left < marginSize) {
|
|
277
|
+
left = marginSize;
|
|
278
|
+
}
|
|
279
|
+
// 偏移
|
|
280
|
+
top -= offsetTop;
|
|
281
|
+
left -= offsetLeft;
|
|
282
|
+
} else {
|
|
283
|
+
if (placement === 'top') {
|
|
284
|
+
panelPlacement = 'top';
|
|
285
|
+
bottom = targetHeight;
|
|
286
|
+
} else if (!placement) {
|
|
246
287
|
// 如果下面不够放,则向上
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
288
|
+
top = targetHeight;
|
|
289
|
+
if (targetTop + targetHeight + panelHeight + marginSize > visibleHeight) {
|
|
290
|
+
// 如果上面不够放,则向下(优先)
|
|
291
|
+
if (targetTop - targetHeight - panelHeight > marginSize) {
|
|
292
|
+
panelPlacement = 'top';
|
|
293
|
+
top = '';
|
|
294
|
+
bottom = targetHeight;
|
|
295
|
+
}
|
|
255
296
|
}
|
|
256
297
|
}
|
|
298
|
+
// 是否超出右侧
|
|
299
|
+
if (panelRect.left + panelRect.width + marginSize > visibleWidth) {
|
|
300
|
+
left = -(panelRect.left + panelRect.width + marginSize - visibleWidth);
|
|
301
|
+
}
|
|
257
302
|
}
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
left -= left + panelWidth + marginSize - visibleWidth;
|
|
303
|
+
if (_xeUtils.default.isNumber(top)) {
|
|
304
|
+
stys.top = toCssUnit(top);
|
|
261
305
|
}
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
left = marginSize;
|
|
306
|
+
if (_xeUtils.default.isNumber(bottom)) {
|
|
307
|
+
stys.bottom = toCssUnit(bottom);
|
|
265
308
|
}
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
panelPlacement = 'top';
|
|
269
|
-
bottom = targetHeight;
|
|
270
|
-
} else if (!placement) {
|
|
271
|
-
// 如果下面不够放,则向上
|
|
272
|
-
top = targetHeight;
|
|
273
|
-
if (targetRect.top + targetHeight + panelHeight + marginSize > visibleHeight) {
|
|
274
|
-
// 如果上面不够放,则向下(优先)
|
|
275
|
-
if (targetRect.top - targetHeight - panelHeight > marginSize) {
|
|
276
|
-
panelPlacement = 'top';
|
|
277
|
-
top = '';
|
|
278
|
-
bottom = targetHeight;
|
|
279
|
-
}
|
|
280
|
-
}
|
|
309
|
+
if (_xeUtils.default.isNumber(left)) {
|
|
310
|
+
stys.left = toCssUnit(left);
|
|
281
311
|
}
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
312
|
+
if (isMinWidth && _xeUtils.default.isNumber(minWidth)) {
|
|
313
|
+
stys.minWidth = toCssUnit(minWidth);
|
|
314
|
+
}
|
|
315
|
+
// 箭头
|
|
316
|
+
if (left === targetLeft) {
|
|
317
|
+
if (targetWidth <= panelWidth) {
|
|
318
|
+
arrowLeft = targetWidth / 2;
|
|
319
|
+
}
|
|
320
|
+
} else if (left < targetLeft) {
|
|
321
|
+
if (left + panelWidth > targetLeft + targetWidth) {
|
|
322
|
+
arrowLeft = targetLeft - left + targetWidth / 2;
|
|
323
|
+
} else {
|
|
324
|
+
arrowLeft = targetLeft - left + (panelWidth - (targetLeft - left)) / 2;
|
|
325
|
+
}
|
|
285
326
|
}
|
|
286
|
-
}
|
|
287
|
-
if (_xeUtils.default.isNumber(top)) {
|
|
288
|
-
stys.top = toCssUnit(top);
|
|
289
|
-
}
|
|
290
|
-
if (_xeUtils.default.isNumber(bottom)) {
|
|
291
|
-
stys.bottom = toCssUnit(bottom);
|
|
292
|
-
}
|
|
293
|
-
if (_xeUtils.default.isNumber(left)) {
|
|
294
|
-
stys.left = toCssUnit(left);
|
|
295
|
-
}
|
|
296
|
-
if (_xeUtils.default.isNumber(right)) {
|
|
297
|
-
stys.right = toCssUnit(right);
|
|
298
|
-
}
|
|
299
|
-
if (isMinWidth && _xeUtils.default.isNumber(minWidth)) {
|
|
300
|
-
stys.minWidth = toCssUnit(minWidth);
|
|
301
327
|
}
|
|
302
328
|
}
|
|
303
329
|
return {
|
|
304
330
|
top: top || 0,
|
|
305
331
|
bottom: bottom || 0,
|
|
306
332
|
left: left || 0,
|
|
307
|
-
|
|
333
|
+
arrowLeft: arrowLeft || 0,
|
|
308
334
|
style: stys,
|
|
309
335
|
placement: panelPlacement
|
|
310
336
|
};
|
|
311
337
|
}
|
|
312
338
|
function getPopupContainer(appendTo) {
|
|
313
339
|
var selectElem = appendTo && _xeUtils.default.isFunction(appendTo) ? appendTo({}) : appendTo;
|
|
340
|
+
return selectElem || 'body';
|
|
341
|
+
}
|
|
342
|
+
function getPopupAppendElement(appendTo) {
|
|
343
|
+
var selectElem = getPopupContainer(appendTo);
|
|
314
344
|
if (_xeUtils.default.isString(selectElem)) {
|
|
315
345
|
return document.querySelector(selectElem) || document.body;
|
|
316
346
|
}
|
|
317
|
-
return selectElem
|
|
347
|
+
return selectElem;
|
|
318
348
|
}
|
package/lib/ui/src/dom.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.addClass=addClass,exports.getAbsolutePos=getAbsolutePos,exports.getDomNode=getDomNode,exports.getEventTargetNode=getEventTargetNode,exports.getOffsetPos=getOffsetPos,exports.getPaddingLeftRightSize=getPaddingLeftRightSize,exports.getPaddingTopBottomSize=getPaddingTopBottomSize,exports.getPopupContainer=getPopupContainer,exports.getTpImg=getTpImg,exports.hasClass=hasClass,exports.hasControlKey=hasControlKey,exports.initTpImg=initTpImg,exports.isNodeElement=isNodeElement,exports.isPx=isPx,exports.isScale=isScale,exports.removeClass=removeClass,exports.scrollToView=scrollToView,exports.toCssUnit=toCssUnit,exports.triggerEvent=triggerEvent,exports.updatePanelPlacement=updatePanelPlacement;var tpImgEl,_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.addClass=addClass,exports.getAbsolutePos=getAbsolutePos,exports.getDomNode=getDomNode,exports.getEventTargetNode=getEventTargetNode,exports.getOffsetPos=getOffsetPos,exports.getPaddingLeftRightSize=getPaddingLeftRightSize,exports.getPaddingTopBottomSize=getPaddingTopBottomSize,exports.getPopupAppendElement=getPopupAppendElement,exports.getPopupContainer=getPopupContainer,exports.getTpImg=getTpImg,exports.hasClass=hasClass,exports.hasControlKey=hasControlKey,exports.initTpImg=initTpImg,exports.isNodeElement=isNodeElement,exports.isPx=isPx,exports.isScale=isScale,exports.removeClass=removeClass,exports.scrollToView=scrollToView,exports.toCssUnit=toCssUnit,exports.triggerEvent=triggerEvent,exports.updatePanelPlacement=updatePanelPlacement;var tpImgEl,_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function initTpImg(){return tpImgEl||((tpImgEl=new Image).src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="),tpImgEl}function getTpImg(){return tpImgEl||initTpImg()}var reClsMap={};function getClsRE(e){return reClsMap[e]||(reClsMap[e]=new RegExp("(?:^|\\s)".concat(e,"(?!\\S)"),"g")),reClsMap[e]}function getNodeOffset(e,t,o){if(e){var n=e.parentNode;if(o.top+=e.offsetTop,o.left+=e.offsetLeft,n&&n!==document.documentElement&&n!==document.body&&(o.top-=n.scrollTop,o.left-=n.scrollLeft),(!t||e!==t&&e.offsetParent!==t)&&e.offsetParent)return getNodeOffset(e.offsetParent,t,o)}return o}function isPx(e){return e&&/^\d+(\.\d+)?(px)?$/.test(e)}function isScale(e){return e&&/^\d+(\.\d+)?%$/.test(e)}function hasClass(e,t){return!!e&&(e.classList?e.classList.contains(t):!!(e.className&&e.className.match&&e.className.match(getClsRE(t))))}function removeClass(e,t){e&&hasClass(e,t)&&(e.className=e.className.replace(getClsRE(t),""))}function addClass(e,t){e&&!hasClass(e,t)&&(removeClass(e,t),e.className="".concat(e.className," ").concat(t))}function hasControlKey(e){return e.ctrlKey||e.metaKey}function toCssUnit(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:"px";return _xeUtils.default.isNumber(e)||/^\d+$/.test("".concat(e))?"".concat(e).concat(t):"".concat(e||"")}function getDomNode(){var e=document.documentElement,t=document.body;return{scrollTop:e.scrollTop||t.scrollTop,scrollLeft:e.scrollLeft||t.scrollLeft,visibleHeight:e.clientHeight||t.clientHeight,visibleWidth:e.clientWidth||t.clientWidth}}function getEventTargetNode(e,t,o,n){for(var s,i=e.target.shadowRoot&&e.composed&&e.composedPath()[0]||e.target;i&&i.nodeType&&i!==document;){if(o&&hasClass(i,o)&&(!n||n(i)))s=i;else if(i===t)return{flag:!o||!!s,container:t,targetElem:s};i=i.parentNode}return{flag:!1}}function getOffsetPos(e,t){return getNodeOffset(e,t,{left:0,top:0})}function getAbsolutePos(e){var e=e.getBoundingClientRect(),t=e.top,e=e.left,o=getDomNode();return{boundingTop:t,top:o.scrollTop+t,boundingLeft:e,left:o.scrollLeft+e,visibleHeight:o.visibleHeight,visibleWidth:o.visibleWidth}}function getPaddingTopBottomSize(e){return e?(e=getComputedStyle(e),_xeUtils.default.toNumber(e.paddingTop)+_xeUtils.default.toNumber(e.paddingBottom)):0}function getPaddingLeftRightSize(e){return e?(e=getComputedStyle(e),_xeUtils.default.toNumber(e.paddingLeft)+_xeUtils.default.toNumber(e.paddingRight)):0}var scrollIntoViewIfNeeded="scrollIntoViewIfNeeded",scrollIntoView="scrollIntoView";function scrollToView(e){e&&(e[scrollIntoViewIfNeeded]?e[scrollIntoViewIfNeeded]():e[scrollIntoView]&&e[scrollIntoView]())}function triggerEvent(e,t){e&&e.dispatchEvent(new Event(t))}function isNodeElement(e){return e&&1===e.nodeType}function updatePanelPlacement(e,t,o){var n,s,i,l,r,a,d,p,u,c,o=Object.assign({teleportTo:!1,marginSize:18,isMinWidth:!0},o),f=o.defaultTop,g=o.defaultLeft,m=o.placement,C=o.defaultPlacement,h=o.teleportTo,x=o.marginSize,o=o.isMinWidth,A="bottom",N="",P="",b=0,E="",v="",T={};return t&&e&&(a=(a=t.parentElement)===document.body?document.documentElement:a)&&(n=e.offsetWidth,s=e.offsetHeight,i=t.offsetHeight,l=t.offsetWidth,p=a.getBoundingClientRect(),t=t.getBoundingClientRect(),c=e.getBoundingClientRect(),r=a.clientHeight,a=a.clientWidth,d=p.left,p=p.top,u=c.left,c=c.top,E=e.offsetWidth,h?(N=f||c+s,"top"===m?(A="top",N=c-i):m||("top"===C?(A="top",(N=c-i)<x&&(A="bottom",N=c+s),r<N+i+x&&(A="top",N=c-i)):(r<N+i+x&&(A="top",N=c-i),N<x&&(A="bottom",N=c+s))),a<(b=g||u)+l+x&&(b-=b+l+x-a),b<x&&(b=x),N-=p,b-=d):("top"===m?(A="top",P=s):m||r<c+(N=s)+i+x&&x<c-s-i&&(A="top",N="",P=s),t.left+t.width+x>a&&(b=-(t.left+t.width+x-a))),_xeUtils.default.isNumber(N)&&(T.top=toCssUnit(N)),_xeUtils.default.isNumber(P)&&(T.bottom=toCssUnit(P)),_xeUtils.default.isNumber(b)&&(T.left=toCssUnit(b)),o&&_xeUtils.default.isNumber(E)&&(T.minWidth=toCssUnit(E)),b===u?n<=l&&(v=n/2):b<u&&(v=u+n<b+l?u-b+n/2:u-b+(l-(u-b))/2)),{top:N||0,bottom:P||0,left:b||0,arrowLeft:v||0,style:T,placement:A}}function getPopupContainer(e){return(e&&_xeUtils.default.isFunction(e)?e({}):e)||"body"}function getPopupAppendElement(e){e=getPopupContainer(e);return _xeUtils.default.isString(e)?document.querySelector(e)||document.body:e}
|
package/lib/ui/src/log.js
CHANGED
|
@@ -7,7 +7,7 @@ exports.createComponentLog = createComponentLog;
|
|
|
7
7
|
exports.warnLog = exports.errLog = void 0;
|
|
8
8
|
var _core = require("@vxe-ui/core");
|
|
9
9
|
var log = _core.VxeUI.log;
|
|
10
|
-
var uiVersion = "ui v".concat("3.17.
|
|
10
|
+
var uiVersion = "ui v".concat("3.17.8");
|
|
11
11
|
function createComponentLog(name) {
|
|
12
12
|
var tableVersion = _core.VxeUI.tableVersion ? "table v".concat(_core.VxeUI.tableVersion) : '';
|
|
13
13
|
var ganttVersion = _core.VxeUI.ganttVersion ? "gantt v".concat(_core.VxeUI.ganttVersion) : '';
|
package/lib/ui/src/log.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.createComponentLog=createComponentLog,exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core"),log=_core.VxeUI.log,uiVersion="ui v".concat("3.17.
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.createComponentLog=createComponentLog,exports.warnLog=exports.errLog=void 0;var _core=require("@vxe-ui/core"),log=_core.VxeUI.log,uiVersion="ui v".concat("3.17.8");function createComponentLog(e){var r=_core.VxeUI.tableVersion?"table v".concat(_core.VxeUI.tableVersion):"",o=_core.VxeUI.ganttVersion?"gantt v".concat(_core.VxeUI.ganttVersion):"",n=_core.VxeUI.designVersion?"design v".concat(_core.VxeUI.designVersion):"",r=[uiVersion,r,o,n].filter(function(e){return e}).join(" ");return{warnLog:log.create("warn",r+"] ["+e),errLog:log.create("error",r+"] ["+e)}}var warnLog=exports.warnLog=log.create("warn",uiVersion),errLog=exports.errLog=log.create("error",uiVersion);
|
|
@@ -22,6 +22,6 @@
|
|
|
22
22
|
.vxe-button-group.is--vertical > .vxe-button.type--button, .vxe-button-group.is--vertical > .vxe-button--dropdown {
|
|
23
23
|
margin-right: 0;
|
|
24
24
|
}
|
|
25
|
-
.vxe-button-group.is--vertical > .vxe-button + .vxe-button--dropdown, .vxe-button-group.is--vertical > .vxe-button--dropdown + .vxe-button {
|
|
25
|
+
.vxe-button-group.is--vertical > .vxe-button.type--button + .vxe-button.type--button, .vxe-button-group.is--vertical > .vxe-button.type--button + .vxe-button--dropdown, .vxe-button-group.is--vertical > .vxe-button--dropdown + .vxe-button.type--button, .vxe-button-group.is--vertical > .vxe-button--dropdown + .vxe-button--dropdown {
|
|
26
26
|
margin-left: 0;
|
|
27
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.vxe-button-group{display:inline-flex}.vxe-button-group.is--vertical{flex-direction:column}.vxe-button-group.is--vertical>.vxe-button--dropdown,.vxe-button-group.is--vertical>.vxe-button.type--button{margin-top:var(--vxe-ui-base-margin-gap-default)}.vxe-button-group.is--vertical>.vxe-button--dropdown.size--medium,.vxe-button-group.is--vertical>.vxe-button.type--button.size--medium{margin-top:var(--vxe-ui-base-margin-gap-medium)}.vxe-button-group.is--vertical>.vxe-button--dropdown.size--small,.vxe-button-group.is--vertical>.vxe-button.type--button.size--small{margin-top:var(--vxe-ui-base-margin-gap-small)}.vxe-button-group.is--vertical>.vxe-button--dropdown.size--mini,.vxe-button-group.is--vertical>.vxe-button.type--button.size--mini{margin-top:var(--vxe-ui-base-margin-gap-mini)}.vxe-button-group.is--vertical>.vxe-button--dropdown:first-of-type,.vxe-button-group.is--vertical>.vxe-button.type--button:first-of-type{margin-top:0}.vxe-button-group.is--vertical>.vxe-button--dropdown,.vxe-button-group.is--vertical>.vxe-button.type--button{margin-right:0}.vxe-button-group.is--vertical>.vxe-button+.vxe-button--dropdown,.vxe-button-group.is--vertical>.vxe-button--dropdown+.vxe-button{margin-left:0}
|
|
1
|
+
.vxe-button-group{display:inline-flex}.vxe-button-group.is--vertical{flex-direction:column}.vxe-button-group.is--vertical>.vxe-button--dropdown,.vxe-button-group.is--vertical>.vxe-button.type--button{margin-top:var(--vxe-ui-base-margin-gap-default)}.vxe-button-group.is--vertical>.vxe-button--dropdown.size--medium,.vxe-button-group.is--vertical>.vxe-button.type--button.size--medium{margin-top:var(--vxe-ui-base-margin-gap-medium)}.vxe-button-group.is--vertical>.vxe-button--dropdown.size--small,.vxe-button-group.is--vertical>.vxe-button.type--button.size--small{margin-top:var(--vxe-ui-base-margin-gap-small)}.vxe-button-group.is--vertical>.vxe-button--dropdown.size--mini,.vxe-button-group.is--vertical>.vxe-button.type--button.size--mini{margin-top:var(--vxe-ui-base-margin-gap-mini)}.vxe-button-group.is--vertical>.vxe-button--dropdown:first-of-type,.vxe-button-group.is--vertical>.vxe-button.type--button:first-of-type{margin-top:0}.vxe-button-group.is--vertical>.vxe-button--dropdown,.vxe-button-group.is--vertical>.vxe-button.type--button{margin-right:0}.vxe-button-group.is--vertical>.vxe-button--dropdown+.vxe-button--dropdown,.vxe-button-group.is--vertical>.vxe-button--dropdown+.vxe-button.type--button,.vxe-button-group.is--vertical>.vxe-button.type--button+.vxe-button--dropdown,.vxe-button-group.is--vertical>.vxe-button.type--button+.vxe-button.type--button{margin-left:0}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@ import { CreateElement, VNode, PropType } from 'vue'
|
|
|
2
2
|
import XEUtils from 'xe-utils'
|
|
3
3
|
import { getConfig, globalEvents, getIcon, createEvent, renderer, globalMixins, permission, renderEmptyElement } from '../../ui'
|
|
4
4
|
import { defineVxeComponent } from '../../ui/src/comp'
|
|
5
|
-
import { getEventTargetNode,
|
|
5
|
+
import { getEventTargetNode, getPopupAppendElement, updatePanelPlacement } from '../../ui/src/dom'
|
|
6
6
|
import { getFuncText, getLastZIndex, nextZIndex } from '../../ui/src/utils'
|
|
7
7
|
import { getSlotVNs, getEventCaseName } from '../../ui/src/vn'
|
|
8
8
|
import { createComponentLog } from '../../ui/src/log'
|
|
@@ -336,7 +336,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
336
336
|
reactData.initialized = true
|
|
337
337
|
if (btnTransfer) {
|
|
338
338
|
const { appendTo } = popupOpts
|
|
339
|
-
|
|
339
|
+
getPopupAppendElement(appendTo).appendChild(panelElem)
|
|
340
340
|
}
|
|
341
341
|
}
|
|
342
342
|
internalData.showTime = setTimeout(() => {
|
|
@@ -2,7 +2,7 @@ import { CreateElement, VNode, PropType } from 'vue'
|
|
|
2
2
|
import { defineVxeComponent } from '../../ui/src/comp'
|
|
3
3
|
import XEUtils from 'xe-utils'
|
|
4
4
|
import { VxeUI, getIcon, getConfig, getI18n, globalEvents, createEvent, globalMixins, renderEmptyElement } from '../../ui'
|
|
5
|
-
import { getEventTargetNode,
|
|
5
|
+
import { getEventTargetNode, getPopupAppendElement, toCssUnit, updatePanelPlacement } from '../../ui/src/dom'
|
|
6
6
|
import { getLastZIndex, nextZIndex } from '../../ui/src/utils'
|
|
7
7
|
import { parseValColor, updateColorAlpha, hexToHsv, rgbToHsv, rgbToHexVal, hexToRgb, hsvToRgb, toValRgb } from './util'
|
|
8
8
|
import VxeButtonComponent from '../../button'
|
|
@@ -397,7 +397,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
397
397
|
if (btnTransfer) {
|
|
398
398
|
if (panelElem) {
|
|
399
399
|
const { appendTo } = popupOpts
|
|
400
|
-
|
|
400
|
+
getPopupAppendElement(appendTo).appendChild(panelElem)
|
|
401
401
|
}
|
|
402
402
|
}
|
|
403
403
|
}
|
|
@@ -3,7 +3,7 @@ import { defineVxeComponent } from '../../ui/src/comp'
|
|
|
3
3
|
import XEUtils from 'xe-utils'
|
|
4
4
|
import { getConfig, getIcon, getI18n, commands, createEvent, globalEvents, GLOBAL_EVENT_KEYS, globalMixins, renderEmptyElement } from '../../ui'
|
|
5
5
|
import { getFuncText, getLastZIndex, nextZIndex, isEnableConf } from '../../ui/src/utils'
|
|
6
|
-
import { updatePanelPlacement, getEventTargetNode, hasControlKey,
|
|
6
|
+
import { updatePanelPlacement, getEventTargetNode, hasControlKey, getPopupAppendElement } from '../../ui/src/dom'
|
|
7
7
|
import { getSlotVNs } from '../../ui/src/vn'
|
|
8
8
|
import { parseDateObj, parseDateValue, getDateByCode, handleValueFormat, hasDateValueType, hasTimestampValueType, isAllSameChar, getChunkDefaultNum, checkDateInputFormat } from '../../date-panel/src/util'
|
|
9
9
|
import { createComponentLog } from '../../ui/src/log'
|
|
@@ -1401,7 +1401,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
1401
1401
|
reactData.initialized = true
|
|
1402
1402
|
if (btnTransfer && panelElem) {
|
|
1403
1403
|
const { appendTo } = popupOpts
|
|
1404
|
-
|
|
1404
|
+
getPopupAppendElement(appendTo).appendChild(panelElem)
|
|
1405
1405
|
}
|
|
1406
1406
|
}
|
|
1407
1407
|
if (internalData.hpTimeout) {
|
|
@@ -3,7 +3,7 @@ import { defineVxeComponent } from '../../ui/src/comp'
|
|
|
3
3
|
import XEUtils from 'xe-utils'
|
|
4
4
|
import { getConfig, getIcon, getI18n, commands, globalEvents, createEvent, GLOBAL_EVENT_KEYS, globalMixins, renderEmptyElement } from '../../ui'
|
|
5
5
|
import { getFuncText, getLastZIndex, nextZIndex, isEnableConf } from '../../ui/src/utils'
|
|
6
|
-
import { updatePanelPlacement, getEventTargetNode,
|
|
6
|
+
import { updatePanelPlacement, getEventTargetNode, getPopupAppendElement } from '../../ui/src/dom'
|
|
7
7
|
import { parseDateString, parseDateObj, getRangeDateByCode, handleValueFormat, hasTimestampValueType, hasDateValueType, parseDateValue, getNextMonth, getPrevMonth, getNextYear, getPrevYear } from '../../date-panel/src/util'
|
|
8
8
|
import { getSlotVNs } from '../../ui/src/vn'
|
|
9
9
|
import { createComponentLog } from '../../ui/src/log'
|
|
@@ -1196,7 +1196,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
1196
1196
|
reactData.initialized = true
|
|
1197
1197
|
if (btnTransfer && panelElem) {
|
|
1198
1198
|
const { appendTo } = popupOpts
|
|
1199
|
-
|
|
1199
|
+
getPopupAppendElement(appendTo).appendChild(panelElem)
|
|
1200
1200
|
}
|
|
1201
1201
|
}
|
|
1202
1202
|
if (internalData.hpTimeout) {
|
|
@@ -3,7 +3,7 @@ import { defineVxeComponent } from '../../ui/src/comp'
|
|
|
3
3
|
import XEUtils from 'xe-utils'
|
|
4
4
|
import { globalMixins, getIcon, getConfig, getI18n, globalEvents, GLOBAL_EVENT_KEYS, createEvent, renderEmptyElement } from '../../ui'
|
|
5
5
|
import { getLastZIndex, nextZIndex, getFuncText } from '../../ui/src/utils'
|
|
6
|
-
import { getDomNode,
|
|
6
|
+
import { getDomNode, getPopupAppendElement, toCssUnit } from '../../ui/src/dom'
|
|
7
7
|
import { getSlotVNs } from '../../ui/src/vn'
|
|
8
8
|
import VxeButtonComponent from '../../button'
|
|
9
9
|
import VxeLoadingComponent from '../../loading'
|
|
@@ -351,7 +351,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
351
351
|
reactData.initialized = true
|
|
352
352
|
if (btnTransfer) {
|
|
353
353
|
const panelElem = $xeDrawer.$refs.refElem as HTMLDivElement
|
|
354
|
-
|
|
354
|
+
getPopupAppendElement(appendTo).appendChild(panelElem)
|
|
355
355
|
}
|
|
356
356
|
}
|
|
357
357
|
if (!visible) {
|
|
@@ -2,7 +2,7 @@ import { PropType, CreateElement, VNode } from 'vue'
|
|
|
2
2
|
import { defineVxeComponent } from '../../ui/src/comp'
|
|
3
3
|
import XEUtils from 'xe-utils'
|
|
4
4
|
import { getConfig, getIcon, getI18n, globalEvents, renderer, createEvent, globalMixins, GLOBAL_EVENT_KEYS, renderEmptyElement } from '../../ui'
|
|
5
|
-
import { getEventTargetNode,
|
|
5
|
+
import { getEventTargetNode, getPopupAppendElement, toCssUnit, updatePanelPlacement } from '../../ui/src/dom'
|
|
6
6
|
import { getLastZIndex, nextZIndex, getFuncText } from '../../ui/src/utils'
|
|
7
7
|
import { getSlotVNs } from '../../ui/src/vn'
|
|
8
8
|
import VxeInputComponent from '../../input/src/input'
|
|
@@ -394,7 +394,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
394
394
|
if (btnTransfer) {
|
|
395
395
|
if (panelElem) {
|
|
396
396
|
const { appendTo } = popupOpts
|
|
397
|
-
|
|
397
|
+
getPopupAppendElement(appendTo).appendChild(panelElem)
|
|
398
398
|
}
|
|
399
399
|
}
|
|
400
400
|
}
|
|
@@ -2,7 +2,7 @@ import { PropType, CreateElement, VNode } from 'vue'
|
|
|
2
2
|
import { defineVxeComponent } from '../../ui/src/comp'
|
|
3
3
|
import XEUtils from 'xe-utils'
|
|
4
4
|
import { VxeUI, createEvent, permission, globalMixins, globalEvents, renderEmptyElement } from '../../ui'
|
|
5
|
-
import {
|
|
5
|
+
import { getPopupAppendElement, scrollToView, toCssUnit } from '../../ui/src/dom'
|
|
6
6
|
import { getLastZIndex, nextZIndex, isEnableConf } from '../../ui/src/utils'
|
|
7
7
|
import { getSlotVNs } from '../../ui/src/vn'
|
|
8
8
|
import { createComponentLog } from '../../ui/src/log'
|
|
@@ -433,7 +433,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
433
433
|
$xeMenu.$nextTick(() => {
|
|
434
434
|
const collapseEl = $xeMenu.$refs.refCollapseElem as HTMLDivElement
|
|
435
435
|
if (collapseEl) {
|
|
436
|
-
|
|
436
|
+
getPopupAppendElement(appendTo).appendChild(collapseEl)
|
|
437
437
|
}
|
|
438
438
|
})
|
|
439
439
|
}
|
|
@@ -2,7 +2,7 @@ import { PropType, CreateElement, VNode } from 'vue'
|
|
|
2
2
|
import { defineVxeComponent } from '../../ui/src/comp'
|
|
3
3
|
import XEUtils from 'xe-utils'
|
|
4
4
|
import { VxeUI, getConfig, getI18n, getIcon, createEvent, globalEvents, globalMixins, renderEmptyElement, GLOBAL_EVENT_KEYS } from '../../ui'
|
|
5
|
-
import { getDomNode, getEventTargetNode,
|
|
5
|
+
import { getDomNode, getEventTargetNode, getPopupAppendElement, toCssUnit } from '../../ui/src/dom'
|
|
6
6
|
import { getLastZIndex, nextZIndex, getSubLastZIndex, nextSubZIndex, getFuncText, handleBooleanDefaultValue } from '../../ui/src/utils'
|
|
7
7
|
import VxeButtonComponent from '../../button'
|
|
8
8
|
import VxeLoadingComponent from '../../loading'
|
|
@@ -913,7 +913,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
913
913
|
reactData.initialized = true
|
|
914
914
|
if (btnTransfer) {
|
|
915
915
|
const panelElem = $xeModal.$refs.refElem as HTMLDivElement
|
|
916
|
-
|
|
916
|
+
getPopupAppendElement(appendTo).appendChild(panelElem)
|
|
917
917
|
}
|
|
918
918
|
}
|
|
919
919
|
if (!visible) {
|
|
@@ -2,7 +2,7 @@ import { PropType, CreateElement, VNode } from 'vue'
|
|
|
2
2
|
import { defineVxeComponent } from '../../ui/src/comp'
|
|
3
3
|
import XEUtils from 'xe-utils'
|
|
4
4
|
import { VxeUI, getConfig, getIcon, getI18n, globalEvents, GLOBAL_EVENT_KEYS, createEvent, globalMixins, renderEmptyElement } from '../../ui'
|
|
5
|
-
import { getEventTargetNode,
|
|
5
|
+
import { getEventTargetNode, getPopupAppendElement, toCssUnit, updatePanelPlacement } from '../../ui/src/dom'
|
|
6
6
|
import { getLastZIndex, nextZIndex, getFuncText, eqEmptyValue } from '../../ui/src/utils'
|
|
7
7
|
import { getSlotVNs } from '../../ui/src/vn'
|
|
8
8
|
import { createComponentLog } from '../../ui/src/log'
|
|
@@ -867,7 +867,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
867
867
|
const panelElem = $xeSelect.$refs.refOptionPanel as HTMLElement
|
|
868
868
|
if (btnTransfer && panelElem) {
|
|
869
869
|
const { appendTo } = popupOpts
|
|
870
|
-
|
|
870
|
+
getPopupAppendElement(appendTo).appendChild(panelElem)
|
|
871
871
|
}
|
|
872
872
|
}
|
|
873
873
|
reactData.isActivated = true
|
|
@@ -2,7 +2,7 @@ import { CreateElement, PropType, VNode } from 'vue'
|
|
|
2
2
|
import { defineVxeComponent } from '../../ui/src/comp'
|
|
3
3
|
import XEUtils from 'xe-utils'
|
|
4
4
|
import { VxeUI, getConfig, getIcon, globalEvents, getI18n, createEvent, renderEmptyElement, globalMixins } from '../../ui'
|
|
5
|
-
import { getEventTargetNode, updatePanelPlacement, toCssUnit,
|
|
5
|
+
import { getEventTargetNode, updatePanelPlacement, toCssUnit, getPopupAppendElement } from '../../ui/src/dom'
|
|
6
6
|
import { getOnName } from '../../ui/src/vn'
|
|
7
7
|
import { getLastZIndex, nextZIndex } from '../../ui/src/utils'
|
|
8
8
|
import { createComponentLog } from '../../ui/src/log'
|
|
@@ -511,7 +511,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
511
511
|
if (btnTransfer) {
|
|
512
512
|
if (panelElem) {
|
|
513
513
|
const { appendTo } = popupOpts
|
|
514
|
-
|
|
514
|
+
getPopupAppendElement(appendTo).appendChild(panelElem)
|
|
515
515
|
}
|
|
516
516
|
}
|
|
517
517
|
}
|