vxe-pc-ui 3.17.6 → 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.
Files changed (97) hide show
  1. package/es/button/src/button.js +2 -2
  2. package/es/button-group/style.css +1 -1
  3. package/es/button-group/style.min.css +1 -1
  4. package/es/color-picker/src/color-picker.js +14 -8
  5. package/es/date-picker/src/date-picker.js +2 -2
  6. package/es/date-range-picker/src/date-range-picker.js +2 -2
  7. package/es/drawer/src/drawer.js +2 -2
  8. package/es/icon/style.css +1 -1
  9. package/es/icon-picker/src/icon-picker.js +2 -2
  10. package/es/menu/src/menu.js +2 -2
  11. package/es/modal/src/modal.js +2 -2
  12. package/es/select/src/select.js +2 -2
  13. package/es/style.css +1 -1
  14. package/es/style.min.css +1 -1
  15. package/es/table-select/src/table-select.js +2 -2
  16. package/es/tooltip/src/tooltip.js +72 -127
  17. package/es/tree/src/tree.js +2 -2
  18. package/es/tree-select/src/tree-select.js +2 -2
  19. package/es/ui/index.js +4 -4
  20. package/es/ui/src/dom.js +114 -81
  21. package/es/ui/src/log.js +1 -1
  22. package/es/vxe-button-group/style.css +1 -1
  23. package/es/vxe-button-group/style.min.css +1 -1
  24. package/lib/button/src/button.js +1 -1
  25. package/lib/button/src/button.min.js +1 -1
  26. package/lib/button-group/style/style.css +1 -1
  27. package/lib/button-group/style/style.min.css +1 -1
  28. package/lib/color-picker/src/color-picker.js +16 -7
  29. package/lib/color-picker/src/color-picker.min.js +1 -1
  30. package/lib/date-picker/src/date-picker.js +1 -1
  31. package/lib/date-picker/src/date-picker.min.js +1 -1
  32. package/lib/date-range-picker/src/date-range-picker.js +1 -1
  33. package/lib/date-range-picker/src/date-range-picker.min.js +1 -1
  34. package/lib/drawer/src/drawer.js +1 -1
  35. package/lib/drawer/src/drawer.min.js +1 -1
  36. package/lib/icon/style/style.css +1 -1
  37. package/lib/icon/style/style.min.css +1 -1
  38. package/lib/icon-picker/src/icon-picker.js +1 -1
  39. package/lib/icon-picker/src/icon-picker.min.js +1 -1
  40. package/lib/index.umd.js +219 -228
  41. package/lib/index.umd.min.js +1 -1
  42. package/lib/menu/src/menu.js +1 -1
  43. package/lib/menu/src/menu.min.js +1 -1
  44. package/lib/modal/src/modal.js +1 -1
  45. package/lib/modal/src/modal.min.js +1 -1
  46. package/lib/select/src/select.js +1 -1
  47. package/lib/select/src/select.min.js +1 -1
  48. package/lib/style.css +1 -1
  49. package/lib/style.min.css +1 -1
  50. package/lib/table-select/src/table-select.js +1 -1
  51. package/lib/table-select/src/table-select.min.js +1 -1
  52. package/lib/tooltip/src/tooltip.js +78 -126
  53. package/lib/tooltip/src/tooltip.min.js +1 -1
  54. package/lib/tree/src/tree.js +3 -2
  55. package/lib/tree/src/tree.min.js +1 -1
  56. package/lib/tree-select/src/tree-select.js +1 -1
  57. package/lib/tree-select/src/tree-select.min.js +1 -1
  58. package/lib/ui/index.js +4 -4
  59. package/lib/ui/index.min.js +1 -1
  60. package/lib/ui/src/dom.js +109 -79
  61. package/lib/ui/src/dom.min.js +1 -1
  62. package/lib/ui/src/log.js +1 -1
  63. package/lib/ui/src/log.min.js +1 -1
  64. package/lib/vxe-button-group/style/style.css +1 -1
  65. package/lib/vxe-button-group/style/style.min.css +1 -1
  66. package/package.json +1 -1
  67. package/packages/button/src/button.ts +2 -2
  68. package/packages/color-picker/src/color-picker.ts +14 -8
  69. package/packages/date-picker/src/date-picker.ts +2 -2
  70. package/packages/date-range-picker/src/date-range-picker.ts +2 -2
  71. package/packages/drawer/src/drawer.ts +2 -2
  72. package/packages/icon-picker/src/icon-picker.ts +2 -2
  73. package/packages/menu/src/menu.ts +2 -2
  74. package/packages/modal/src/modal.ts +2 -2
  75. package/packages/select/src/select.ts +2 -2
  76. package/packages/table-select/src/table-select.ts +2 -2
  77. package/packages/tooltip/src/tooltip.ts +74 -126
  78. package/packages/tree/src/tree.ts +2 -2
  79. package/packages/tree-select/src/tree-select.ts +2 -2
  80. package/packages/ui/index.ts +3 -3
  81. package/packages/ui/src/dom.ts +125 -84
  82. package/styles/components/button-group.scss +4 -2
  83. package/types/components/color-picker.d.ts +2 -0
  84. package/types/components/table.d.ts +6 -0
  85. package/types/components/tooltip.d.ts +4 -0
  86. /package/es/icon/{iconfont.1787137242564.ttf → iconfont.1787216119203.ttf} +0 -0
  87. /package/es/icon/{iconfont.1787137242564.woff → iconfont.1787216119203.woff} +0 -0
  88. /package/es/icon/{iconfont.1787137242564.woff2 → iconfont.1787216119203.woff2} +0 -0
  89. /package/es/{iconfont.1787137242564.ttf → iconfont.1787216119203.ttf} +0 -0
  90. /package/es/{iconfont.1787137242564.woff → iconfont.1787216119203.woff} +0 -0
  91. /package/es/{iconfont.1787137242564.woff2 → iconfont.1787216119203.woff2} +0 -0
  92. /package/lib/icon/style/{iconfont.1787137242564.ttf → iconfont.1787216119203.ttf} +0 -0
  93. /package/lib/icon/style/{iconfont.1787137242564.woff → iconfont.1787216119203.woff} +0 -0
  94. /package/lib/icon/style/{iconfont.1787137242564.woff2 → iconfont.1787216119203.woff2} +0 -0
  95. /package/lib/{iconfont.1787137242564.ttf → iconfont.1787216119203.ttf} +0 -0
  96. /package/lib/{iconfont.1787137242564.woff → iconfont.1787216119203.woff} +0 -0
  97. /package/lib/{iconfont.1787137242564.woff2 → iconfont.1787216119203.woff2} +0 -0
package/lib/index.umd.js CHANGED
@@ -13261,7 +13261,7 @@ var es_array_join = __webpack_require__(8598);
13261
13261
 
13262
13262
 
13263
13263
  var log_log = VxeUI.log;
13264
- var uiVersion = "ui v".concat("3.17.6");
13264
+ var uiVersion = "ui v".concat("3.17.8");
13265
13265
  function createComponentLog(name) {
13266
13266
  var tableVersion = VxeUI.tableVersion ? "table v".concat(VxeUI.tableVersion) : '';
13267
13267
  var ganttVersion = VxeUI.ganttVersion ? "gantt v".concat(VxeUI.ganttVersion) : '';
@@ -13281,7 +13281,7 @@ var errLog = log_log.create('error', uiVersion);
13281
13281
 
13282
13282
 
13283
13283
 
13284
- var ui_version = "3.17.6";
13284
+ var ui_version = "3.17.8";
13285
13285
  VxeUI.uiVersion = ui_version;
13286
13286
  VxeUI.dynamicApp = dynamicApp;
13287
13287
  function config(options) {
@@ -13698,7 +13698,8 @@ setConfig({
13698
13698
  theme: 'dark',
13699
13699
  enterDelay: 500,
13700
13700
  leaveDelay: 300,
13701
- isArrow: true
13701
+ isArrow: true,
13702
+ defaultPlacement: 'top'
13702
13703
  },
13703
13704
  transfer: {},
13704
13705
  tree: {
@@ -13712,8 +13713,7 @@ setConfig({
13712
13713
  tooltipConfig: {
13713
13714
  mode: 'tooltip',
13714
13715
  enterable: true,
13715
- leaveDelay: 300,
13716
- defaultPlacement: 'top'
13716
+ leaveDelay: 300
13717
13717
  },
13718
13718
  dragConfig: {
13719
13719
  showIcon: true,
@@ -15237,12 +15237,17 @@ function dom_triggerEvent(targetElem, type) {
15237
15237
  function isNodeElement(elem) {
15238
15238
  return elem && elem.nodeType === 1;
15239
15239
  }
15240
+ /**
15241
+ * 通用定位计算
15242
+ */
15240
15243
  function updatePanelPlacement(targetElem, panelElem, options) {
15241
15244
  var _Object$assign = Object.assign({
15242
15245
  teleportTo: false,
15243
15246
  marginSize: 18,
15244
15247
  isMinWidth: true
15245
15248
  }, options),
15249
+ defaultTop = _Object$assign.defaultTop,
15250
+ defaultLeft = _Object$assign.defaultLeft,
15246
15251
  placement = _Object$assign.placement,
15247
15252
  defaultPlacement = _Object$assign.defaultPlacement,
15248
15253
  teleportTo = _Object$assign.teleportTo,
@@ -15251,114 +15256,138 @@ function updatePanelPlacement(targetElem, panelElem, options) {
15251
15256
  var panelPlacement = 'bottom';
15252
15257
  var top = '';
15253
15258
  var bottom = '';
15254
- var left = '';
15255
- var right = '';
15259
+ var left = 0;
15256
15260
  var minWidth = '';
15261
+ var arrowLeft = '';
15257
15262
  var stys = {};
15258
15263
  if (panelElem && targetElem) {
15259
- var documentElement = document.documentElement;
15260
- var bodyElem = document.body;
15261
- var targetHeight = targetElem.offsetHeight;
15262
- var panelHeight = panelElem.offsetHeight;
15263
- var panelWidth = panelElem.offsetWidth;
15264
- var panelRect = panelElem.getBoundingClientRect();
15265
- var targetRect = targetElem.getBoundingClientRect();
15266
- var visibleHeight = documentElement.clientHeight || bodyElem.clientHeight;
15267
- var visibleWidth = documentElement.clientWidth || bodyElem.clientWidth;
15268
- minWidth = targetElem.offsetWidth;
15269
- if (teleportTo) {
15270
- left = targetRect.left;
15271
- top = targetRect.top + targetHeight;
15272
- if (placement === 'top') {
15273
- panelPlacement = 'top';
15274
- top = targetRect.top - panelHeight;
15275
- } else if (!placement) {
15276
- if (defaultPlacement === 'top') {
15264
+ var parentEl = panelElem.parentElement;
15265
+ var parentWrapperEl = parentEl === document.body ? document.documentElement : parentEl;
15266
+ if (parentWrapperEl) {
15267
+ var targetWidth = targetElem.offsetWidth;
15268
+ var targetHeight = targetElem.offsetHeight;
15269
+ var panelHeight = panelElem.offsetHeight;
15270
+ var panelWidth = panelElem.offsetWidth;
15271
+ var parentWrapperRect = parentWrapperEl.getBoundingClientRect();
15272
+ var panelRect = panelElem.getBoundingClientRect();
15273
+ var targetRect = targetElem.getBoundingClientRect();
15274
+ var visibleHeight = parentWrapperEl.clientHeight;
15275
+ var visibleWidth = parentWrapperEl.clientWidth;
15276
+ var offsetLeft = parentWrapperRect.left;
15277
+ var offsetTop = parentWrapperRect.top;
15278
+ var targetLeft = targetRect.left;
15279
+ var targetTop = targetRect.top;
15280
+ minWidth = targetElem.offsetWidth;
15281
+ if (teleportTo) {
15282
+ left = defaultLeft || targetLeft;
15283
+ top = defaultTop || targetTop + targetHeight;
15284
+ if (placement === 'top') {
15277
15285
  panelPlacement = 'top';
15278
- top = targetRect.top - panelHeight;
15279
- // 如果上面不够放,则向下
15280
- if (top < marginSize) {
15281
- panelPlacement = 'bottom';
15282
- top = targetRect.top + targetHeight;
15283
- }
15284
- // 如果下面不够放,则向上(优先)
15285
- if (top + panelHeight + marginSize > visibleHeight) {
15286
+ top = targetTop - panelHeight;
15287
+ } else if (!placement) {
15288
+ if (defaultPlacement === 'top') {
15286
15289
  panelPlacement = 'top';
15287
- top = targetRect.top - panelHeight;
15290
+ top = targetTop - panelHeight;
15291
+ // 如果上面不够放,则向下
15292
+ if (top < marginSize) {
15293
+ panelPlacement = 'bottom';
15294
+ top = targetTop + targetHeight;
15295
+ }
15296
+ // 如果下面不够放,则向上(优先)
15297
+ if (top + panelHeight + marginSize > visibleHeight) {
15298
+ panelPlacement = 'top';
15299
+ top = targetTop - panelHeight;
15300
+ }
15301
+ } else {
15302
+ // 如果下面不够放,则向上
15303
+ if (top + panelHeight + marginSize > visibleHeight) {
15304
+ panelPlacement = 'top';
15305
+ top = targetTop - panelHeight;
15306
+ }
15307
+ // 如果上面不够放,则向下(优先)
15308
+ if (top < marginSize) {
15309
+ panelPlacement = 'bottom';
15310
+ top = targetTop + targetHeight;
15311
+ }
15288
15312
  }
15289
- } else {
15313
+ }
15314
+ // 如果溢出右边
15315
+ if (left + panelWidth + marginSize > visibleWidth) {
15316
+ left -= left + panelWidth + marginSize - visibleWidth;
15317
+ }
15318
+ // 如果溢出左边
15319
+ if (left < marginSize) {
15320
+ left = marginSize;
15321
+ }
15322
+ // 偏移
15323
+ top -= offsetTop;
15324
+ left -= offsetLeft;
15325
+ } else {
15326
+ if (placement === 'top') {
15327
+ panelPlacement = 'top';
15328
+ bottom = targetHeight;
15329
+ } else if (!placement) {
15290
15330
  // 如果下面不够放,则向上
15291
- if (top + panelHeight + marginSize > visibleHeight) {
15292
- panelPlacement = 'top';
15293
- top = targetRect.top - panelHeight;
15294
- }
15295
- // 如果上面不够放,则向下(优先)
15296
- if (top < marginSize) {
15297
- panelPlacement = 'bottom';
15298
- top = targetRect.top + targetHeight;
15331
+ top = targetHeight;
15332
+ if (targetTop + targetHeight + panelHeight + marginSize > visibleHeight) {
15333
+ // 如果上面不够放,则向下(优先)
15334
+ if (targetTop - targetHeight - panelHeight > marginSize) {
15335
+ panelPlacement = 'top';
15336
+ top = '';
15337
+ bottom = targetHeight;
15338
+ }
15299
15339
  }
15300
15340
  }
15341
+ // 是否超出右侧
15342
+ if (panelRect.left + panelRect.width + marginSize > visibleWidth) {
15343
+ left = -(panelRect.left + panelRect.width + marginSize - visibleWidth);
15344
+ }
15301
15345
  }
15302
- // 如果溢出右边
15303
- if (left + panelWidth + marginSize > visibleWidth) {
15304
- left -= left + panelWidth + marginSize - visibleWidth;
15346
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(top)) {
15347
+ stys.top = toCssUnit(top);
15305
15348
  }
15306
- // 如果溢出左边
15307
- if (left < marginSize) {
15308
- left = marginSize;
15349
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(bottom)) {
15350
+ stys.bottom = toCssUnit(bottom);
15309
15351
  }
15310
- } else {
15311
- if (placement === 'top') {
15312
- panelPlacement = 'top';
15313
- bottom = targetHeight;
15314
- } else if (!placement) {
15315
- // 如果下面不够放,则向上
15316
- top = targetHeight;
15317
- if (targetRect.top + targetHeight + panelHeight + marginSize > visibleHeight) {
15318
- // 如果上面不够放,则向下(优先)
15319
- if (targetRect.top - targetHeight - panelHeight > marginSize) {
15320
- panelPlacement = 'top';
15321
- top = '';
15322
- bottom = targetHeight;
15323
- }
15324
- }
15352
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(left)) {
15353
+ stys.left = toCssUnit(left);
15325
15354
  }
15326
- // 是否超出右侧
15327
- if (panelRect.left + panelRect.width + marginSize > visibleWidth) {
15328
- left = -(panelRect.left + panelRect.width + marginSize - visibleWidth);
15355
+ if (isMinWidth && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(minWidth)) {
15356
+ stys.minWidth = toCssUnit(minWidth);
15357
+ }
15358
+ // 箭头
15359
+ if (left === targetLeft) {
15360
+ if (targetWidth <= panelWidth) {
15361
+ arrowLeft = targetWidth / 2;
15362
+ }
15363
+ } else if (left < targetLeft) {
15364
+ if (left + panelWidth > targetLeft + targetWidth) {
15365
+ arrowLeft = targetLeft - left + targetWidth / 2;
15366
+ } else {
15367
+ arrowLeft = targetLeft - left + (panelWidth - (targetLeft - left)) / 2;
15368
+ }
15329
15369
  }
15330
- }
15331
- if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(top)) {
15332
- stys.top = toCssUnit(top);
15333
- }
15334
- if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(bottom)) {
15335
- stys.bottom = toCssUnit(bottom);
15336
- }
15337
- if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(left)) {
15338
- stys.left = toCssUnit(left);
15339
- }
15340
- if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(right)) {
15341
- stys.right = toCssUnit(right);
15342
- }
15343
- if (isMinWidth && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(minWidth)) {
15344
- stys.minWidth = toCssUnit(minWidth);
15345
15370
  }
15346
15371
  }
15347
15372
  return {
15348
15373
  top: top || 0,
15349
15374
  bottom: bottom || 0,
15350
15375
  left: left || 0,
15351
- right: right || 0,
15376
+ arrowLeft: arrowLeft || 0,
15352
15377
  style: stys,
15353
15378
  placement: panelPlacement
15354
15379
  };
15355
15380
  }
15356
15381
  function getPopupContainer(appendTo) {
15357
15382
  var selectElem = appendTo && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(appendTo) ? appendTo({}) : appendTo;
15383
+ return selectElem || 'body';
15384
+ }
15385
+ function getPopupAppendElement(appendTo) {
15386
+ var selectElem = getPopupContainer(appendTo);
15358
15387
  if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isString(selectElem)) {
15359
15388
  return document.querySelector(selectElem) || document.body;
15360
15389
  }
15361
- return selectElem || document.body;
15390
+ return selectElem;
15362
15391
  }
15363
15392
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.filter.js
15364
15393
  var es_iterator_filter = __webpack_require__(2489);
@@ -16283,6 +16312,12 @@ function createInternalData() {
16283
16312
  default: function _default() {
16284
16313
  return getConfig().tooltip.leaveDelay;
16285
16314
  }
16315
+ },
16316
+ appendTo: {
16317
+ type: [String, Function],
16318
+ default: function _default() {
16319
+ return getConfig().tooltip.appendTo;
16320
+ }
16286
16321
  }
16287
16322
  },
16288
16323
  data: function data() {
@@ -16387,24 +16422,59 @@ function createInternalData() {
16387
16422
  var $xeTooltip = this;
16388
16423
  return $xeTooltip.handleVisible(target, content);
16389
16424
  },
16390
- updatePlacement: function updatePlacement() {
16425
+ updateTipStyle: function updateTipStyle() {
16391
16426
  var $xeTooltip = this;
16427
+ var props = $xeTooltip;
16392
16428
  var reactData = $xeTooltip.reactData;
16393
- var visible = reactData.visible,
16394
- tipTarget = reactData.tipTarget;
16395
- var el = $xeTooltip.$refs.refElem;
16396
- if (visible && tipTarget && el) {
16397
- $xeTooltip.updateTipStyle();
16429
+ var placement = props.placement,
16430
+ defaultPlacement = props.defaultPlacement,
16431
+ isArrow = props.isArrow;
16432
+ var targetElem = reactData.tipTarget,
16433
+ tipStore = reactData.tipStore,
16434
+ tipPos = reactData.tipPos,
16435
+ tipZindex = reactData.tipZindex;
16436
+ var panelElem = $xeTooltip.$refs.refElem;
16437
+ if (!targetElem || !panelElem) {
16438
+ return;
16398
16439
  }
16399
- return $xeTooltip.$nextTick().then(function () {
16400
- var tipTarget = reactData.tipTarget;
16401
- el = $xeTooltip.$refs.refElem;
16402
- if (tipTarget && el) {
16403
- $xeTooltip.updateTipStyle();
16404
- return $xeTooltip.$nextTick().then(function () {
16405
- $xeTooltip.updateTipStyle();
16406
- });
16440
+ var targetRect = targetElem.getBoundingClientRect();
16441
+ var targetWidth = targetElem.offsetWidth;
16442
+ var targetHeight = targetElem.offsetHeight;
16443
+ var panelWidth = panelElem.offsetWidth;
16444
+ var targetLeft = targetRect.left;
16445
+ var targetTop = targetRect.top;
16446
+ // 支持特殊定位逻辑
16447
+ var left = targetLeft;
16448
+ var top = targetTop + targetHeight;
16449
+ if (tipPos && (tipPos.oLeft || tipPos.oTop)) {
16450
+ if (isArrow) {
16451
+ left = left + Math.max(8, Math.min(targetWidth - 8, tipPos.oLeft)) - panelWidth / 2;
16452
+ } else {
16453
+ left = tipPos.x + 1;
16454
+ top = tipPos.y + 1;
16407
16455
  }
16456
+ } else {
16457
+ left = targetLeft + (targetWidth - panelWidth) / 2;
16458
+ }
16459
+ var ppObj = updatePanelPlacement(targetElem, panelElem, {
16460
+ defaultTop: top,
16461
+ defaultLeft: left,
16462
+ placement: placement,
16463
+ defaultPlacement: defaultPlacement,
16464
+ teleportTo: true
16465
+ });
16466
+ var panelStyle = Object.assign(ppObj.style, {
16467
+ zIndex: tipZindex
16468
+ });
16469
+ tipStore.placement = ppObj.placement;
16470
+ tipStore.style = panelStyle;
16471
+ tipStore.arrowStyle.left = "".concat(ppObj.arrowLeft, "px");
16472
+ },
16473
+ updatePlacement: function updatePlacement() {
16474
+ var $xeTooltip = this;
16475
+ $xeTooltip.updateTipStyle();
16476
+ return $xeTooltip.$nextTick().then(function () {
16477
+ return $xeTooltip.updateTipStyle();
16408
16478
  });
16409
16479
  },
16410
16480
  isActived: function isActived() {
@@ -16417,100 +16487,6 @@ function createInternalData() {
16417
16487
  var reactData = $xeTooltip.reactData;
16418
16488
  reactData.tipActive = !!active;
16419
16489
  },
16420
- updateTipStyle: function updateTipStyle() {
16421
- var $xeTooltip = this;
16422
- var props = $xeTooltip;
16423
- var reactData = $xeTooltip.reactData;
16424
- var isArrow = props.isArrow,
16425
- placement = props.placement,
16426
- defaultPlacement = props.defaultPlacement;
16427
- var targetElem = reactData.tipTarget,
16428
- tipStore = reactData.tipStore,
16429
- tipPos = reactData.tipPos;
16430
- var top = '';
16431
- var left = '';
16432
- var panelPlacement = 'bottom';
16433
- var arrowLeft = '';
16434
- var panelElem = $xeTooltip.$refs.refElem;
16435
- if (panelElem && targetElem) {
16436
- var documentElement = document.documentElement;
16437
- var bodyElem = document.body;
16438
- var targetWidth = targetElem.offsetWidth;
16439
- var targetHeight = targetElem.offsetHeight;
16440
- var panelHeight = panelElem.offsetHeight;
16441
- var panelWidth = panelElem.offsetWidth;
16442
- var targetRect = targetElem.getBoundingClientRect();
16443
- var visibleHeight = documentElement.clientHeight || bodyElem.clientHeight;
16444
- var visibleWidth = documentElement.clientWidth || bodyElem.clientWidth;
16445
- var marginSize = 6;
16446
- left = targetRect.left;
16447
- top = targetRect.top + targetHeight;
16448
- if (tipPos && (tipPos.oLeft || tipPos.oTop)) {
16449
- if (isArrow) {
16450
- left = left + Math.max(8, Math.min(targetWidth - 8, tipPos.oLeft)) - panelWidth / 2;
16451
- } else {
16452
- left = tipPos.x + 1;
16453
- top = tipPos.y + 1;
16454
- }
16455
- } else {
16456
- left = targetRect.left + (targetWidth - panelWidth) / 2;
16457
- }
16458
- if (placement === 'top') {
16459
- panelPlacement = 'top';
16460
- top = targetRect.top - panelHeight;
16461
- } else if (!placement) {
16462
- if (defaultPlacement === 'top') {
16463
- panelPlacement = 'top';
16464
- top = targetRect.top - panelHeight;
16465
- // 如果上面不够放,则向下
16466
- if (top < marginSize) {
16467
- panelPlacement = 'bottom';
16468
- top = targetRect.top + targetHeight;
16469
- }
16470
- // 如果下面不够放,则向上(优先)
16471
- if (top + panelHeight + marginSize > visibleHeight) {
16472
- panelPlacement = 'top';
16473
- top = targetRect.top - panelHeight;
16474
- }
16475
- } else {
16476
- // 如果下面不够放,则向上
16477
- if (top + panelHeight + marginSize > visibleHeight) {
16478
- panelPlacement = 'top';
16479
- top = targetRect.top - panelHeight;
16480
- }
16481
- // 如果上面不够放,则向下(优先)
16482
- if (top < marginSize) {
16483
- panelPlacement = 'bottom';
16484
- top = targetRect.top + targetHeight;
16485
- }
16486
- }
16487
- }
16488
- // 如果溢出右边
16489
- if (left + panelWidth + marginSize > visibleWidth) {
16490
- left -= left + panelWidth + marginSize - visibleWidth;
16491
- }
16492
- // 如果溢出左边
16493
- if (left < marginSize) {
16494
- left = marginSize;
16495
- }
16496
- // 箭头
16497
- if (left === targetRect.left) {
16498
- if (targetWidth <= panelWidth) {
16499
- arrowLeft = targetWidth / 2;
16500
- }
16501
- } else if (left < targetRect.left) {
16502
- if (left + panelWidth > targetRect.left + targetWidth) {
16503
- arrowLeft = targetRect.left - left + targetWidth / 2;
16504
- } else {
16505
- arrowLeft = targetRect.left - left + (panelWidth - (targetRect.left - left)) / 2;
16506
- }
16507
- }
16508
- tipStore.placement = panelPlacement;
16509
- tipStore.style.top = "".concat(top, "px");
16510
- tipStore.style.left = "".concat(left, "px");
16511
- tipStore.arrowStyle.left = "".concat(arrowLeft, "px");
16512
- }
16513
- },
16514
16490
  updateValue: function updateValue(value) {
16515
16491
  var $xeTooltip = this;
16516
16492
  var reactData = $xeTooltip.reactData;
@@ -16520,10 +16496,14 @@ function createInternalData() {
16520
16496
  $xeTooltip.emitModel(value);
16521
16497
  }
16522
16498
  },
16523
- updateZindex: function updateZindex() {
16499
+ updateZIndex: function updateZIndex() {
16524
16500
  var $xeTooltip = this;
16501
+ var props = $xeTooltip;
16525
16502
  var reactData = $xeTooltip.reactData;
16526
- if (reactData.tipZindex < getLastZIndex()) {
16503
+ var zIndex = props.zIndex;
16504
+ if (zIndex) {
16505
+ reactData.tipZindex = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(zIndex);
16506
+ } else if (reactData.tipZindex < getLastZIndex()) {
16527
16507
  reactData.tipZindex = nextZIndex();
16528
16508
  }
16529
16509
  },
@@ -16586,16 +16566,17 @@ function createInternalData() {
16586
16566
  var $xeTooltip = this;
16587
16567
  var props = $xeTooltip;
16588
16568
  var reactData = $xeTooltip.reactData;
16569
+ var appendTo = props.appendTo;
16589
16570
  var tipStore = reactData.tipStore;
16590
- var el = $xeTooltip.$refs.refElem;
16591
- if (el) {
16592
- var parentNode = el.parentNode;
16571
+ var panelElem = $xeTooltip.$refs.refElem;
16572
+ if (panelElem) {
16573
+ var parentNode = panelElem.parentNode;
16593
16574
  if (!parentNode) {
16594
- document.body.appendChild(el);
16575
+ getPopupAppendElement(appendTo).appendChild(panelElem);
16595
16576
  }
16596
16577
  }
16597
16578
  $xeTooltip.updateValue(true);
16598
- $xeTooltip.updateZindex();
16579
+ $xeTooltip.updateZIndex();
16599
16580
  tipStore.placement = 'top';
16600
16581
  tipStore.style = {
16601
16582
  width: 'auto',
@@ -16781,21 +16762,21 @@ function createInternalData() {
16781
16762
  $xeTooltip.$nextTick(function () {
16782
16763
  var trigger = props.trigger,
16783
16764
  content = props.content;
16784
- var wrapperElem = $xeTooltip.$refs.refElem;
16785
- if (wrapperElem) {
16786
- var parentNode = wrapperElem.parentNode;
16765
+ var panelElem = $xeTooltip.$refs.refElem;
16766
+ if (panelElem) {
16767
+ var parentNode = panelElem.parentNode;
16787
16768
  if (parentNode) {
16788
16769
  reactData.tipContent = content;
16789
16770
  reactData.tipZindex = nextZIndex();
16790
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(wrapperElem.children, function (elem, index) {
16771
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().arrayEach(panelElem.children, function (elem, index) {
16791
16772
  if (index) {
16792
- parentNode.insertBefore(elem, wrapperElem);
16773
+ parentNode.insertBefore(elem, panelElem);
16793
16774
  if (!reactData.target) {
16794
16775
  reactData.target = elem;
16795
16776
  }
16796
16777
  }
16797
16778
  });
16798
- parentNode.removeChild(wrapperElem);
16779
+ parentNode.removeChild(panelElem);
16799
16780
  var target = reactData.target;
16800
16781
  if (target) {
16801
16782
  if (trigger === 'hover') {
@@ -16816,7 +16797,7 @@ function createInternalData() {
16816
16797
  var $xeTooltip = this;
16817
16798
  var reactData = $xeTooltip.reactData;
16818
16799
  var target = reactData.target;
16819
- var wrapperElem = $xeTooltip.$refs.refElem;
16800
+ var panelElem = $xeTooltip.$refs.refElem;
16820
16801
  if (target) {
16821
16802
  target.onmouseenter = null;
16822
16803
  target.onmouseleave = null;
@@ -16826,10 +16807,10 @@ function createInternalData() {
16826
16807
  if (contentWrapperfEl) {
16827
16808
  contentWrapperfEl.removeEventListener('wheel', $xeTooltip.wheelEvent);
16828
16809
  }
16829
- if (wrapperElem) {
16830
- var parentNode = wrapperElem.parentNode;
16810
+ if (panelElem) {
16811
+ var parentNode = panelElem.parentNode;
16831
16812
  if (parentNode) {
16832
- parentNode.removeChild(wrapperElem);
16813
+ parentNode.removeChild(panelElem);
16833
16814
  }
16834
16815
  }
16835
16816
  },
@@ -17191,7 +17172,7 @@ var _createComponentLog = createComponentLog('button'),
17191
17172
  reactData.initialized = true;
17192
17173
  if (btnTransfer) {
17193
17174
  var appendTo = popupOpts.appendTo;
17194
- getPopupContainer(appendTo).appendChild(panelElem);
17175
+ getPopupAppendElement(appendTo).appendChild(panelElem);
17195
17176
  }
17196
17177
  }
17197
17178
  internalData.showTime = setTimeout(function () {
@@ -32665,6 +32646,12 @@ var typeList = [{
32665
32646
  return getConfig().colorPicker.clickToCopy;
32666
32647
  }
32667
32648
  },
32649
+ defaultColor: {
32650
+ type: String,
32651
+ default: function _default() {
32652
+ return getConfig().colorPicker.defaultColor;
32653
+ }
32654
+ },
32668
32655
  placement: String,
32669
32656
  transfer: {
32670
32657
  type: Boolean,
@@ -32853,13 +32840,16 @@ var typeList = [{
32853
32840
  },
32854
32841
  updateModelColor: function updateModelColor() {
32855
32842
  var $xeColorPicker = this;
32843
+ var props = $xeColorPicker;
32856
32844
  var reactData = $xeColorPicker.reactData;
32845
+ var modelValue = props.value,
32846
+ defaultColor = props.defaultColor;
32857
32847
  var selectColor = reactData.selectColor,
32858
32848
  isAniVisible = reactData.isAniVisible;
32859
32849
  var isRgb = $xeColorPicker.computeIsRgb;
32860
32850
  var hueSliderEl = $xeColorPicker.$refs.refHueSliderElem;
32861
32851
  var alphaSliderEl = $xeColorPicker.$refs.refAlphaSliderElem;
32862
- var colorRest = parseValColor(selectColor);
32852
+ var colorRest = parseValColor(modelValue ? selectColor : defaultColor);
32863
32853
  reactData.hexValue = '';
32864
32854
  reactData.rValue = 0;
32865
32855
  reactData.gValue = 0;
@@ -32902,7 +32892,7 @@ var typeList = [{
32902
32892
  $xeColorPicker.handlePanelColor(offsetLeft, offsetTop);
32903
32893
  }
32904
32894
  if (hueSliderEl) {
32905
- $xeColorPicker.handleHueColor(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().ceil((1 - hsvRest.h / 360) * hueSliderEl.clientWidth));
32895
+ $xeColorPicker.handleHueColor(external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().ceil((1 - hsvRest.h / 360) * hueSliderEl.clientWidth) - 1);
32906
32896
  }
32907
32897
  }
32908
32898
  if (alphaSliderEl) {
@@ -32961,7 +32951,7 @@ var typeList = [{
32961
32951
  if (btnTransfer) {
32962
32952
  if (panelElem) {
32963
32953
  var appendTo = popupOpts.appendTo;
32964
- getPopupContainer(appendTo).appendChild(panelElem);
32954
+ getPopupAppendElement(appendTo).appendChild(panelElem);
32965
32955
  }
32966
32956
  }
32967
32957
  }
@@ -33644,7 +33634,7 @@ var typeList = [{
33644
33634
  var className = props.className,
33645
33635
  popupClassName = props.popupClassName,
33646
33636
  clearable = props.clearable,
33647
- value = props.value;
33637
+ modelValue = props.value;
33648
33638
  var initialized = reactData.initialized,
33649
33639
  isActivated = reactData.isActivated,
33650
33640
  isAniVisible = reactData.isAniVisible,
@@ -33660,7 +33650,7 @@ var typeList = [{
33660
33650
  }, [h('div', {
33661
33651
  class: 'vxe-color-picker--readonly-color',
33662
33652
  style: {
33663
- backgroundColor: value
33653
+ backgroundColor: modelValue
33664
33654
  }
33665
33655
  })]);
33666
33656
  }
@@ -33668,7 +33658,7 @@ var typeList = [{
33668
33658
  ref: 'refElem',
33669
33659
  class: ['vxe-color-picker', className ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(className) ? className({
33670
33660
  $colorPicker: $xeColorPicker
33671
- }) : className : '', _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, "size--".concat(vSize), vSize), 'is--selected', !!value), 'is--visible', visiblePanel), 'is--disabled', isDisabled), 'is--active', isActivated)]
33661
+ }) : className : '', _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, "size--".concat(vSize), vSize), 'is--selected', !!modelValue), 'is--visible', visiblePanel), 'is--disabled', isDisabled), 'is--active', isActivated)]
33672
33662
  }, [h('input', {
33673
33663
  ref: 'refInputTarget',
33674
33664
  class: 'vxe-color-picker--input',
@@ -33684,7 +33674,7 @@ var typeList = [{
33684
33674
  }, [h('div', {
33685
33675
  class: 'vxe-color-picker--inner-color',
33686
33676
  style: {
33687
- backgroundColor: value
33677
+ backgroundColor: modelValue
33688
33678
  }
33689
33679
  })]), h('div', {
33690
33680
  ref: 'refOptionPanel',
@@ -38632,7 +38622,7 @@ function date_picker_createInternalData() {
38632
38622
  reactData.initialized = true;
38633
38623
  if (btnTransfer && panelElem) {
38634
38624
  var appendTo = popupOpts.appendTo;
38635
- getPopupContainer(appendTo).appendChild(panelElem);
38625
+ getPopupAppendElement(appendTo).appendChild(panelElem);
38636
38626
  }
38637
38627
  }
38638
38628
  if (internalData.hpTimeout) {
@@ -40338,7 +40328,7 @@ function date_range_picker_createInternalData() {
40338
40328
  reactData.initialized = true;
40339
40329
  if (btnTransfer && panelElem) {
40340
40330
  var appendTo = popupOpts.appendTo;
40341
- getPopupContainer(appendTo).appendChild(panelElem);
40331
+ getPopupAppendElement(appendTo).appendChild(panelElem);
40342
40332
  }
40343
40333
  }
40344
40334
  if (internalData.hpTimeout) {
@@ -41287,7 +41277,7 @@ var allActiveDrawers = [];
41287
41277
  reactData.initialized = true;
41288
41278
  if (btnTransfer) {
41289
41279
  var panelElem = $xeDrawer.$refs.refElem;
41290
- getPopupContainer(appendTo).appendChild(panelElem);
41280
+ getPopupAppendElement(appendTo).appendChild(panelElem);
41291
41281
  }
41292
41282
  }
41293
41283
  if (!visible) {
@@ -45200,7 +45190,7 @@ function icon_picker_createInternalData() {
45200
45190
  if (btnTransfer) {
45201
45191
  if (panelElem) {
45202
45192
  var appendTo = popupOpts.appendTo;
45203
- getPopupContainer(appendTo).appendChild(panelElem);
45193
+ getPopupAppendElement(appendTo).appendChild(panelElem);
45204
45194
  }
45205
45195
  }
45206
45196
  }
@@ -48004,7 +47994,7 @@ var nemuUniqueKey = 100000000;
48004
47994
  $xeMenu.$nextTick(function () {
48005
47995
  var collapseEl = $xeMenu.$refs.refCollapseElem;
48006
47996
  if (collapseEl) {
48007
- getPopupContainer(appendTo).appendChild(collapseEl);
47997
+ getPopupAppendElement(appendTo).appendChild(collapseEl);
48008
47998
  }
48009
47999
  });
48010
48000
  }
@@ -49454,7 +49444,7 @@ var lockScrollCssWidthKey = '--vxe-ui-modal-lock-scroll-view-width';
49454
49444
  reactData.initialized = true;
49455
49445
  if (btnTransfer) {
49456
49446
  var panelElem = $xeModal.$refs.refElem;
49457
- getPopupContainer(appendTo).appendChild(panelElem);
49447
+ getPopupAppendElement(appendTo).appendChild(panelElem);
49458
49448
  }
49459
49449
  }
49460
49450
  if (!visible) {
@@ -51707,7 +51697,7 @@ function select_createInternalData() {
51707
51697
  var panelElem = $xeSelect.$refs.refOptionPanel;
51708
51698
  if (btnTransfer && panelElem) {
51709
51699
  var appendTo = popupOpts.appendTo;
51710
- getPopupContainer(appendTo).appendChild(panelElem);
51700
+ getPopupAppendElement(appendTo).appendChild(panelElem);
51711
51701
  }
51712
51702
  }
51713
51703
  reactData.isActivated = true;
@@ -59817,7 +59807,7 @@ function table_select_createInternalData() {
59817
59807
  if (btnTransfer) {
59818
59808
  if (panelElem) {
59819
59809
  var appendTo = popupOpts.appendTo;
59820
- getPopupContainer(appendTo).appendChild(panelElem);
59810
+ getPopupAppendElement(appendTo).appendChild(panelElem);
59821
59811
  }
59822
59812
  }
59823
59813
  }
@@ -66505,12 +66495,13 @@ function tree_createReactData() {
66505
66495
  var props = $xeTree;
66506
66496
  var slots = $xeTree.$scopedSlots;
66507
66497
  var internalData = $xeTree.internalData;
66508
- var transform = props.transform,
66498
+ var loading = props.loading,
66499
+ transform = props.transform,
66509
66500
  emptyText = props.emptyText;
66510
66501
  var treeExpandedMaps = internalData.treeExpandedMaps;
66511
66502
  var childrenField = $xeTree.computeChildrenField;
66512
66503
  var emptySlot = slots.empty;
66513
- if (!treeList.length) {
66504
+ if (!loading && !treeList.length) {
66514
66505
  return [h('div', {
66515
66506
  class: 'vxe-tree--empty-placeholder'
66516
66507
  }, emptySlot ? emptySlot({}) : [h('div', {
@@ -67431,7 +67422,7 @@ function tree_select_createInternalData() {
67431
67422
  if (btnTransfer) {
67432
67423
  if (panelElem) {
67433
67424
  var appendTo = popupOpts.appendTo;
67434
- getPopupContainer(appendTo).appendChild(panelElem);
67425
+ getPopupAppendElement(appendTo).appendChild(panelElem);
67435
67426
  }
67436
67427
  }
67437
67428
  }