vxe-pc-ui 4.17.26 → 4.17.28

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 (80) hide show
  1. package/dist/all.esm.js +97 -23
  2. package/dist/style.css +1 -1
  3. package/dist/style.min.css +1 -1
  4. package/es/color-picker/src/color-picker.js +11 -5
  5. package/es/color-picker/style.css +44 -35
  6. package/es/color-picker/style.min.css +1 -1
  7. package/es/drawer/src/drawer.js +11 -1
  8. package/es/drawer/style.css +10 -2
  9. package/es/drawer/style.min.css +1 -1
  10. package/es/icon/style.css +1 -1
  11. package/es/modal/src/modal.js +61 -14
  12. package/es/modal/style.css +31 -10
  13. package/es/modal/style.min.css +1 -1
  14. package/es/style.css +1 -1
  15. package/es/style.min.css +1 -1
  16. package/es/ui/index.js +5 -1
  17. package/es/ui/src/dom.js +9 -2
  18. package/es/ui/src/log.js +1 -1
  19. package/es/vxe-color-picker/style.css +44 -35
  20. package/es/vxe-color-picker/style.min.css +1 -1
  21. package/es/vxe-drawer/style.css +10 -2
  22. package/es/vxe-drawer/style.min.css +1 -1
  23. package/es/vxe-modal/style.css +31 -10
  24. package/es/vxe-modal/style.min.css +1 -1
  25. package/lib/color-picker/src/color-picker.js +8 -4
  26. package/lib/color-picker/src/color-picker.min.js +1 -1
  27. package/lib/color-picker/style/style.css +44 -35
  28. package/lib/color-picker/style/style.min.css +1 -1
  29. package/lib/drawer/src/drawer.js +12 -0
  30. package/lib/drawer/src/drawer.min.js +1 -1
  31. package/lib/drawer/style/style.css +10 -2
  32. package/lib/drawer/style/style.min.css +1 -1
  33. package/lib/icon/style/style.css +1 -1
  34. package/lib/icon/style/style.min.css +1 -1
  35. package/lib/index.umd.js +107 -29
  36. package/lib/index.umd.min.js +1 -1
  37. package/lib/modal/src/modal.js +72 -21
  38. package/lib/modal/src/modal.min.js +1 -1
  39. package/lib/modal/style/style.css +31 -10
  40. package/lib/modal/style/style.min.css +1 -1
  41. package/lib/style.css +1 -1
  42. package/lib/style.min.css +1 -1
  43. package/lib/ui/index.js +5 -1
  44. package/lib/ui/index.min.js +1 -1
  45. package/lib/ui/src/dom.js +10 -2
  46. package/lib/ui/src/dom.min.js +1 -1
  47. package/lib/ui/src/log.js +1 -1
  48. package/lib/ui/src/log.min.js +1 -1
  49. package/lib/vxe-color-picker/style/style.css +44 -35
  50. package/lib/vxe-color-picker/style/style.min.css +1 -1
  51. package/lib/vxe-drawer/style/style.css +10 -2
  52. package/lib/vxe-drawer/style/style.min.css +1 -1
  53. package/lib/vxe-modal/style/style.css +31 -10
  54. package/lib/vxe-modal/style/style.min.css +1 -1
  55. package/package.json +1 -1
  56. package/packages/color-picker/src/color-picker.ts +11 -5
  57. package/packages/drawer/src/drawer.ts +11 -1
  58. package/packages/modal/src/modal.ts +61 -14
  59. package/packages/ui/index.ts +4 -0
  60. package/packages/ui/src/dom.ts +10 -2
  61. package/styles/components/color-picker.scss +35 -26
  62. package/styles/components/drawer.scss +15 -2
  63. package/styles/components/modal.scss +49 -10
  64. package/styles/theme/dark.scss +4 -1
  65. package/styles/theme/light.scss +3 -0
  66. package/styles/variable.scss +3 -0
  67. package/types/components/drawer.d.ts +4 -0
  68. package/types/components/modal.d.ts +9 -0
  69. /package/es/icon/{iconfont.1788319620112.ttf → iconfont.1788399096135.ttf} +0 -0
  70. /package/es/icon/{iconfont.1788319620112.woff → iconfont.1788399096135.woff} +0 -0
  71. /package/es/icon/{iconfont.1788319620112.woff2 → iconfont.1788399096135.woff2} +0 -0
  72. /package/es/{iconfont.1788319620112.ttf → iconfont.1788399096135.ttf} +0 -0
  73. /package/es/{iconfont.1788319620112.woff → iconfont.1788399096135.woff} +0 -0
  74. /package/es/{iconfont.1788319620112.woff2 → iconfont.1788399096135.woff2} +0 -0
  75. /package/lib/icon/style/{iconfont.1788319620112.ttf → iconfont.1788399096135.ttf} +0 -0
  76. /package/lib/icon/style/{iconfont.1788319620112.woff → iconfont.1788399096135.woff} +0 -0
  77. /package/lib/icon/style/{iconfont.1788319620112.woff2 → iconfont.1788399096135.woff2} +0 -0
  78. /package/lib/{iconfont.1788319620112.ttf → iconfont.1788399096135.ttf} +0 -0
  79. /package/lib/{iconfont.1788319620112.woff → iconfont.1788399096135.woff} +0 -0
  80. /package/lib/{iconfont.1788319620112.woff2 → iconfont.1788399096135.woff2} +0 -0
package/dist/all.esm.js CHANGED
@@ -101,7 +101,7 @@ function checkDynamic() {
101
101
  }
102
102
 
103
103
  const { log } = VxeUI;
104
- const uiVersion = `ui v${"4.17.26"}`;
104
+ const uiVersion = `ui v${"4.17.28"}`;
105
105
  function createComponentLog(name) {
106
106
  const tableVersion = VxeUI.tableVersion ? `table v${VxeUI.tableVersion}` : '';
107
107
  const ganttVersion = VxeUI.ganttVersion ? `gantt v${VxeUI.ganttVersion}` : '';
@@ -115,7 +115,7 @@ function createComponentLog(name) {
115
115
  const warnLog$i = log.create('warn', uiVersion);
116
116
  log.create('error', uiVersion);
117
117
 
118
- const version = "4.17.26";
118
+ const version = "4.17.28";
119
119
  VxeUI.uiVersion = version;
120
120
  VxeUI.dynamicApp = dynamicApp;
121
121
  function config(options) {
@@ -253,6 +253,8 @@ setConfig$1({
253
253
  // useHtml: false,
254
254
  position: 'right',
255
255
  showHeader: true,
256
+ // showTitleBackground: false,
257
+ border: true,
256
258
  lockView: true,
257
259
  mask: true,
258
260
  showTitleOverflow: true,
@@ -362,6 +364,8 @@ setConfig$1({
362
364
  // size: null,
363
365
  top: 16,
364
366
  showHeader: true,
367
+ // showTitleBackground: false,
368
+ border: true,
365
369
  // useHtml: false,
366
370
  // width: null,
367
371
  // height: null,
@@ -2014,8 +2018,7 @@ function updatePanelPlacement(targetElem, panelElem, options) {
2014
2018
  const stys = {};
2015
2019
  if (panelElem && targetElem) {
2016
2020
  const bodyEl = document.body;
2017
- const parentEl = panelElem.parentElement;
2018
- const parentWrapperEl = parentEl === bodyEl ? document.documentElement : parentEl;
2021
+ const parentWrapperEl = getPopupWrapperElement(panelElem);
2019
2022
  if (parentWrapperEl) {
2020
2023
  const targetWidth = targetElem.offsetWidth;
2021
2024
  const targetHeight = targetElem.offsetHeight;
@@ -2139,6 +2142,14 @@ function updatePanelPlacement(targetElem, panelElem, options) {
2139
2142
  placement: panelPlacement
2140
2143
  };
2141
2144
  }
2145
+ function getPopupWrapperElement(panelElem) {
2146
+ if (!panelElem) {
2147
+ return null;
2148
+ }
2149
+ const bodyEl = document.body;
2150
+ const parentEl = panelElem.parentElement;
2151
+ return (parentEl === bodyEl ? document.documentElement : parentEl) || null;
2152
+ }
2142
2153
  function getPopupContainer(appendTo) {
2143
2154
  const selectElem = appendTo && XEUtils.isFunction(appendTo) ? appendTo({}) : appendTo;
2144
2155
  return selectElem || 'body';
@@ -17360,13 +17371,19 @@ var VxeColorPickerComponent = defineVxeComponent({
17360
17371
  if (formReadonly) {
17361
17372
  return h('div', {
17362
17373
  ref: refElem,
17363
- class: ['vxe-color-picker--readonly', className]
17374
+ class: ['vxe-color-picker--readonly', className, {
17375
+ [`size--${vSize}`]: vSize
17376
+ }]
17364
17377
  }, [
17365
17378
  h('div', {
17366
- class: 'vxe-color-picker--readonly-color',
17367
- style: {
17368
- backgroundColor: modelValue
17369
- }
17379
+ class: ['vxe-color-picker--readonly-color', {
17380
+ 'is--empty': !modelValue
17381
+ }],
17382
+ style: modelValue
17383
+ ? {
17384
+ backgroundColor: modelValue
17385
+ }
17386
+ : undefined
17370
17387
  })
17371
17388
  ]);
17372
17389
  }
@@ -23670,6 +23687,14 @@ var VxeDrawerComponent = defineVxeComponent({
23670
23687
  type: Boolean,
23671
23688
  default: () => getConfig$3().drawer.resize
23672
23689
  },
23690
+ border: {
23691
+ type: Boolean,
23692
+ default: () => getConfig$3().drawer.border
23693
+ },
23694
+ showTitleBackground: {
23695
+ type: Boolean,
23696
+ default: () => getConfig$3().drawer.showTitleBackground
23697
+ },
23673
23698
  zIndex: Number,
23674
23699
  transfer: {
23675
23700
  type: Boolean,
@@ -24101,7 +24126,7 @@ var VxeDrawerComponent = defineVxeComponent({
24101
24126
  return renderEmptyElement($xeDrawer);
24102
24127
  };
24103
24128
  const renderVN = () => {
24104
- const { slots: propSlots = {}, className, position, loading, lockScroll, padding, lockView, mask, resize, appendTo, destroyOnClose } = props;
24129
+ const { border, showTitleBackground, slots: propSlots = {}, className, position, loading, lockScroll, padding, lockView, mask, resize, appendTo, destroyOnClose } = props;
24105
24130
  const { initialized, contentVisible, visible } = reactData;
24106
24131
  const asideSlot = slots.aside || propSlots.aside;
24107
24132
  const vSize = computeSize.value;
@@ -24116,6 +24141,8 @@ var VxeDrawerComponent = defineVxeComponent({
24116
24141
  class: ['vxe-drawer--wrapper', `pos--${position}`, className || '', {
24117
24142
  [`size--${vSize}`]: vSize,
24118
24143
  'is--padding': padding,
24144
+ 'is--border': border,
24145
+ 'is--title-bg': showTitleBackground,
24119
24146
  'lock--scroll': lockScroll,
24120
24147
  'lock--view': lockView,
24121
24148
  'is--resize': resize,
@@ -29843,6 +29870,14 @@ var VxeModalComponent = defineVxeComponent({
29843
29870
  default: () => getConfig$3().modal.confirmClosable
29844
29871
  },
29845
29872
  resize: Boolean,
29873
+ border: {
29874
+ type: Boolean,
29875
+ default: () => getConfig$3().modal.border
29876
+ },
29877
+ showTitleBackground: {
29878
+ type: Boolean,
29879
+ default: () => getConfig$3().modal.showTitleBackground
29880
+ },
29846
29881
  showHeader: {
29847
29882
  type: Boolean,
29848
29883
  default: () => getConfig$3().modal.showHeader
@@ -29916,6 +29951,10 @@ var VxeModalComponent = defineVxeComponent({
29916
29951
  type: [String, Function],
29917
29952
  default: () => getConfig$3().modal.appendTo
29918
29953
  },
29954
+ isWithinAppendTo: {
29955
+ type: Boolean,
29956
+ default: () => getConfig$3().modal.isWithinAppendTo
29957
+ },
29919
29958
  storage: {
29920
29959
  type: Boolean,
29921
29960
  default: () => getConfig$3().modal.storage
@@ -30070,14 +30109,19 @@ var VxeModalComponent = defineVxeComponent({
30070
30109
  };
30071
30110
  const updatePosition = () => {
30072
30111
  return nextTick().then(() => {
30073
- const { position } = props;
30074
- const marginSize = XEUtils.toNumber(props.marginSize);
30112
+ const { position, isWithinAppendTo } = props;
30113
+ const el = refElem.value;
30075
30114
  const boxElem = getBox();
30076
30115
  if (!boxElem) {
30077
30116
  return;
30078
30117
  }
30079
- const clientVisibleWidth = document.documentElement.clientWidth || document.body.clientWidth;
30080
- const clientVisibleHeight = document.documentElement.clientHeight || document.body.clientHeight;
30118
+ const parentWrapperEl = getPopupWrapperElement(isWithinAppendTo ? el : document.body);
30119
+ if (!parentWrapperEl) {
30120
+ return;
30121
+ }
30122
+ const clientVisibleWidth = parentWrapperEl.clientWidth;
30123
+ const clientVisibleHeight = parentWrapperEl.clientHeight;
30124
+ const marginSize = XEUtils.toNumber(props.marginSize);
30081
30125
  const isPosCenter = position === 'center';
30082
30126
  const { top, left } = XEUtils.isString(position) ? { top: position, left: position } : Object.assign({}, position);
30083
30127
  const topCenter = isPosCenter || top === 'center';
@@ -30256,6 +30300,7 @@ var VxeModalComponent = defineVxeComponent({
30256
30300
  }
30257
30301
  };
30258
30302
  const handleMinimize = () => {
30303
+ const { isWithinAppendTo } = props;
30259
30304
  const zoomOpts = computeZoomOpts.value;
30260
30305
  const { minimizeLayout, minimizeMaxSize, minimizeHorizontalOffset, minimizeVerticalOffset, minimizeOffsetMethod } = zoomOpts;
30261
30306
  const isHorizontalLayout = minimizeLayout === 'horizontal';
@@ -30289,6 +30334,7 @@ var VxeModalComponent = defineVxeComponent({
30289
30334
  reactData.prevZoomStatus = prevZoomStatus;
30290
30335
  reactData.zoomStatus = 'minimize';
30291
30336
  return nextTick().then(() => {
30337
+ const el = refElem.value;
30292
30338
  const boxElem = getBox();
30293
30339
  if (!boxElem) {
30294
30340
  return {
@@ -30301,7 +30347,13 @@ var VxeModalComponent = defineVxeComponent({
30301
30347
  status: false
30302
30348
  };
30303
30349
  }
30304
- const { visibleHeight } = getDomNode();
30350
+ const parentWrapperEl = getPopupWrapperElement(isWithinAppendTo ? el : document.body);
30351
+ if (!parentWrapperEl) {
30352
+ return {
30353
+ status: false
30354
+ };
30355
+ }
30356
+ const visibleHeight = parentWrapperEl.clientHeight;
30305
30357
  // 如果当前处于复原状态
30306
30358
  if (!prevZoomStatus) {
30307
30359
  reactData.revertLocat = {
@@ -30357,6 +30409,7 @@ var VxeModalComponent = defineVxeComponent({
30357
30409
  });
30358
30410
  };
30359
30411
  const handleMaximize = () => {
30412
+ const { isWithinAppendTo } = props;
30360
30413
  const prevZoomStatus = reactData.zoomStatus;
30361
30414
  reactData.prevZoomStatus = prevZoomStatus;
30362
30415
  reactData.zoomStatus = 'maximize';
@@ -30365,9 +30418,16 @@ var VxeModalComponent = defineVxeComponent({
30365
30418
  if (boxElem) {
30366
30419
  // 如果当前处于复原状态
30367
30420
  if (!prevZoomStatus) {
30421
+ const el = refElem.value;
30422
+ const parentWrapperEl = getPopupWrapperElement(isWithinAppendTo ? el : document.body);
30423
+ if (!parentWrapperEl) {
30424
+ return {
30425
+ status: false
30426
+ };
30427
+ }
30428
+ const clientVisibleWidth = parentWrapperEl.clientWidth;
30429
+ const clientVisibleHeight = parentWrapperEl.clientHeight;
30368
30430
  const marginSize = XEUtils.toNumber(props.marginSize);
30369
- const clientVisibleWidth = document.documentElement.clientWidth || document.body.clientWidth;
30370
- const clientVisibleHeight = document.documentElement.clientHeight || document.body.clientHeight;
30371
30431
  reactData.revertLocat = {
30372
30432
  top: Math.max(marginSize, clientVisibleHeight / 2 - boxElem.offsetHeight / 2),
30373
30433
  left: Math.max(marginSize, clientVisibleWidth / 2 - boxElem.offsetWidth / 2),
@@ -30640,7 +30700,7 @@ var VxeModalComponent = defineVxeComponent({
30640
30700
  }
30641
30701
  };
30642
30702
  const mousedownEvent = (evnt) => {
30643
- const { storage } = props;
30703
+ const { resize, storage, isWithinAppendTo } = props;
30644
30704
  const { zoomStatus } = reactData;
30645
30705
  const marginSize = XEUtils.toNumber(props.marginSize);
30646
30706
  const boxElem = getBox();
@@ -30649,9 +30709,15 @@ var VxeModalComponent = defineVxeComponent({
30649
30709
  }
30650
30710
  if (zoomStatus !== 'maximize' && evnt.button === 0 && !getEventTargetNode(evnt, boxElem, 'trigger--btn').flag) {
30651
30711
  evnt.preventDefault();
30712
+ const el = refElem.value;
30713
+ const parentWrapperEl = getPopupWrapperElement(isWithinAppendTo ? el : document.body);
30714
+ if (!parentWrapperEl) {
30715
+ return;
30716
+ }
30717
+ const visibleWidth = parentWrapperEl.clientWidth - (resize && isWithinAppendTo ? 8 : 0);
30718
+ const visibleHeight = parentWrapperEl.clientHeight - (resize && isWithinAppendTo ? 8 : 0);
30652
30719
  const disX = evnt.clientX - boxElem.offsetLeft;
30653
30720
  const disY = evnt.clientY - boxElem.offsetTop;
30654
- const { visibleHeight, visibleWidth } = getDomNode();
30655
30721
  document.onmousemove = evnt => {
30656
30722
  evnt.preventDefault();
30657
30723
  const offsetWidth = boxElem.offsetWidth;
@@ -30697,8 +30763,14 @@ var VxeModalComponent = defineVxeComponent({
30697
30763
  };
30698
30764
  const dragEvent = (evnt) => {
30699
30765
  evnt.preventDefault();
30700
- const { storage } = props;
30701
- const { visibleHeight, visibleWidth } = getDomNode();
30766
+ const { resize, storage, isWithinAppendTo } = props;
30767
+ const el = refElem.value;
30768
+ const parentWrapperEl = getPopupWrapperElement(isWithinAppendTo ? el : document.body);
30769
+ if (!parentWrapperEl) {
30770
+ return;
30771
+ }
30772
+ const visibleWidth = parentWrapperEl.clientWidth - (resize && isWithinAppendTo ? 8 : 0);
30773
+ const visibleHeight = parentWrapperEl.clientHeight - (resize && isWithinAppendTo ? 8 : 0);
30702
30774
  const marginSize = XEUtils.toNumber(props.marginSize);
30703
30775
  const targetElem = evnt.target;
30704
30776
  const type = targetElem.getAttribute('data-type');
@@ -31063,7 +31135,7 @@ var VxeModalComponent = defineVxeComponent({
31063
31135
  return renderEmptyElement($xeModal);
31064
31136
  };
31065
31137
  const renderVN = () => {
31066
- const { slots: propSlots = {}, className, type, animat, draggable, iconStatus, position, loading, destroyOnClose, status, lockScroll, padding, lockView, mask, resize, appendTo } = props;
31138
+ const { border, showTitleBackground, slots: propSlots = {}, className, type, animat, draggable, iconStatus, position, loading, destroyOnClose, status, lockScroll, padding, lockView, mask, resize, appendTo, isWithinAppendTo } = props;
31067
31139
  const { initialized, modalTop, contentVisible, visible, zoomStatus } = reactData;
31068
31140
  const asideSlot = slots.aside || propSlots.aside;
31069
31141
  const vSize = computeSize.value;
@@ -31079,10 +31151,12 @@ var VxeModalComponent = defineVxeComponent({
31079
31151
  to: getPopupContainer(appendTo),
31080
31152
  disabled: btnTransfer ? !initialized : true
31081
31153
  }, [
31082
- h('div', Object.assign({ ref: refElem, class: ['vxe-modal--wrapper', `type--${type}`, `zoom--${zoomStatus || 'revert'}`, className || '', position ? `pos--${position}` : '', {
31154
+ h('div', Object.assign({ ref: refElem, class: ['vxe-modal--wrapper', `type--${type}`, `zoom--${zoomStatus || 'revert'}`, className || '', position ? `pos--${position}` : '', isWithinAppendTo ? 'ctx--within' : 'ctx--free', {
31083
31155
  [`size--${vSize}`]: vSize,
31084
31156
  [`status--${status}`]: status,
31085
31157
  'is--padding': padding,
31158
+ 'is--border': border,
31159
+ 'is--title-bg': showTitleBackground,
31086
31160
  'is--animat': animat,
31087
31161
  'lock--scroll': lockScroll,
31088
31162
  'lock--view': lockView,