vxe-pc-ui 4.18.23 → 4.19.0

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 (138) hide show
  1. package/dist/all.esm.js +1039 -988
  2. package/dist/style.css +1 -1
  3. package/dist/style.min.css +1 -1
  4. package/es/calendar/src/calendar.js +1 -1
  5. package/es/card/src/card.js +1 -1
  6. package/es/carousel/src/carousel.js +1 -1
  7. package/es/countdown/src/countdown.js +1 -1
  8. package/es/date-picker/src/date-picker.js +3 -3
  9. package/es/icon/style.css +1 -1
  10. package/es/icon-picker/src/icon-picker.js +1 -1
  11. package/es/layout-aside/src/layout-aside.js +22 -10
  12. package/es/layout-aside/style.css +2 -4
  13. package/es/layout-aside/style.min.css +1 -1
  14. package/es/layout-body/src/layout-body.js +19 -12
  15. package/es/layout-body/style.css +2 -3
  16. package/es/layout-body/style.min.css +1 -1
  17. package/es/list/src/list.js +1 -1
  18. package/es/menu/src/menu.js +10 -4
  19. package/es/menu/style.css +10 -2
  20. package/es/menu/style.min.css +1 -1
  21. package/es/scrollbar/src/scrollbar.js +38 -17
  22. package/es/scrollbar/style.css +16 -13
  23. package/es/scrollbar/style.min.css +1 -1
  24. package/es/select/src/select.js +2 -2
  25. package/es/style.css +1 -1
  26. package/es/style.min.css +1 -1
  27. package/es/tabs/src/tabs.js +1 -1
  28. package/es/text-ellipsis/style.css +29 -10
  29. package/es/text-ellipsis/style.min.css +1 -1
  30. package/es/ui/index.js +8 -2
  31. package/es/ui/src/log.js +1 -1
  32. package/es/upload/src/upload.js +1 -1
  33. package/es/vxe-layout-aside/style.css +2 -4
  34. package/es/vxe-layout-aside/style.min.css +1 -1
  35. package/es/vxe-layout-body/style.css +2 -3
  36. package/es/vxe-layout-body/style.min.css +1 -1
  37. package/es/vxe-menu/style.css +10 -2
  38. package/es/vxe-menu/style.min.css +1 -1
  39. package/es/vxe-scrollbar/style.css +16 -13
  40. package/es/vxe-scrollbar/style.min.css +1 -1
  41. package/es/vxe-text-ellipsis/style.css +29 -10
  42. package/es/vxe-text-ellipsis/style.min.css +1 -1
  43. package/lib/calendar/src/calendar.js +1 -1
  44. package/lib/calendar/src/calendar.min.js +1 -1
  45. package/lib/card/src/card.js +1 -1
  46. package/lib/card/src/card.min.js +1 -1
  47. package/lib/carousel/src/carousel.js +1 -1
  48. package/lib/carousel/src/carousel.min.js +1 -1
  49. package/lib/countdown/src/countdown.js +1 -1
  50. package/lib/countdown/src/countdown.min.js +1 -1
  51. package/lib/date-picker/src/date-picker.js +3 -3
  52. package/lib/date-picker/src/date-picker.min.js +1 -1
  53. package/lib/icon/style/style.css +1 -1
  54. package/lib/icon/style/style.min.css +1 -1
  55. package/lib/icon-picker/src/icon-picker.js +1 -1
  56. package/lib/icon-picker/src/icon-picker.min.js +1 -1
  57. package/lib/index.umd.js +1420 -1337
  58. package/lib/index.umd.min.js +1 -1
  59. package/lib/layout-aside/src/layout-aside.js +29 -10
  60. package/lib/layout-aside/src/layout-aside.min.js +1 -1
  61. package/lib/layout-aside/style/style.css +2 -4
  62. package/lib/layout-aside/style/style.min.css +1 -1
  63. package/lib/layout-body/src/layout-body.js +29 -12
  64. package/lib/layout-body/src/layout-body.min.js +1 -1
  65. package/lib/layout-body/style/style.css +2 -3
  66. package/lib/layout-body/style/style.min.css +1 -1
  67. package/lib/list/src/list.js +1 -1
  68. package/lib/list/src/list.min.js +1 -1
  69. package/lib/menu/src/menu.js +11 -3
  70. package/lib/menu/src/menu.min.js +1 -1
  71. package/lib/menu/style/style.css +10 -2
  72. package/lib/menu/style/style.min.css +1 -1
  73. package/lib/scrollbar/src/scrollbar.js +38 -8
  74. package/lib/scrollbar/src/scrollbar.min.js +1 -1
  75. package/lib/scrollbar/style/style.css +16 -13
  76. package/lib/scrollbar/style/style.min.css +1 -1
  77. package/lib/select/src/select.js +2 -2
  78. package/lib/select/src/select.min.js +1 -1
  79. package/lib/style.css +1 -1
  80. package/lib/style.min.css +1 -1
  81. package/lib/tabs/src/tabs.js +1 -1
  82. package/lib/tabs/src/tabs.min.js +1 -1
  83. package/lib/text-ellipsis/style/style.css +29 -10
  84. package/lib/text-ellipsis/style/style.min.css +1 -1
  85. package/lib/ui/index.js +8 -2
  86. package/lib/ui/index.min.js +1 -1
  87. package/lib/ui/src/log.js +1 -1
  88. package/lib/ui/src/log.min.js +1 -1
  89. package/lib/upload/src/upload.js +1 -1
  90. package/lib/upload/src/upload.min.js +1 -1
  91. package/lib/vxe-layout-aside/style/style.css +2 -4
  92. package/lib/vxe-layout-aside/style/style.min.css +1 -1
  93. package/lib/vxe-layout-body/style/style.css +2 -3
  94. package/lib/vxe-layout-body/style/style.min.css +1 -1
  95. package/lib/vxe-menu/style/style.css +10 -2
  96. package/lib/vxe-menu/style/style.min.css +1 -1
  97. package/lib/vxe-scrollbar/style/style.css +16 -13
  98. package/lib/vxe-scrollbar/style/style.min.css +1 -1
  99. package/lib/vxe-text-ellipsis/style/style.css +29 -10
  100. package/lib/vxe-text-ellipsis/style/style.min.css +1 -1
  101. package/package.json +2 -2
  102. package/packages/calendar/src/calendar.ts +1 -1
  103. package/packages/card/src/card.ts +1 -1
  104. package/packages/carousel/src/carousel.ts +1 -1
  105. package/packages/countdown/src/countdown.ts +1 -1
  106. package/packages/date-picker/src/date-picker.ts +3 -3
  107. package/packages/icon-picker/src/icon-picker.ts +1 -1
  108. package/packages/layout-aside/src/layout-aside.ts +23 -10
  109. package/packages/layout-body/src/layout-body.ts +23 -12
  110. package/packages/list/src/list.ts +1 -1
  111. package/packages/menu/src/menu.ts +14 -4
  112. package/packages/scrollbar/src/scrollbar.ts +41 -14
  113. package/packages/select/src/select.ts +2 -2
  114. package/packages/tabs/src/tabs.ts +1 -1
  115. package/packages/ui/index.ts +8 -3
  116. package/packages/upload/src/upload.ts +1 -1
  117. package/styles/components/layout-aside.scss +2 -4
  118. package/styles/components/layout-body.scss +2 -3
  119. package/styles/components/menu.scss +11 -2
  120. package/styles/components/scrollbar.scss +24 -17
  121. package/styles/components/text-ellipsis.scss +23 -64
  122. package/styles/theme/base.scss +2 -0
  123. package/types/components/layout-aside.d.ts +3 -0
  124. package/types/components/layout-body.d.ts +3 -1
  125. package/types/components/menu.d.ts +3 -0
  126. package/types/components/scrollbar.d.ts +15 -0
  127. /package/es/icon/{iconfont.1791517860186.ttf → iconfont.1791539010382.ttf} +0 -0
  128. /package/es/icon/{iconfont.1791517860186.woff → iconfont.1791539010382.woff} +0 -0
  129. /package/es/icon/{iconfont.1791517860186.woff2 → iconfont.1791539010382.woff2} +0 -0
  130. /package/es/{iconfont.1791517860186.ttf → iconfont.1791539010382.ttf} +0 -0
  131. /package/es/{iconfont.1791517860186.woff → iconfont.1791539010382.woff} +0 -0
  132. /package/es/{iconfont.1791517860186.woff2 → iconfont.1791539010382.woff2} +0 -0
  133. /package/lib/icon/style/{iconfont.1791517860186.ttf → iconfont.1791539010382.ttf} +0 -0
  134. /package/lib/icon/style/{iconfont.1791517860186.woff → iconfont.1791539010382.woff} +0 -0
  135. /package/lib/icon/style/{iconfont.1791517860186.woff2 → iconfont.1791539010382.woff2} +0 -0
  136. /package/lib/{iconfont.1791517860186.ttf → iconfont.1791539010382.ttf} +0 -0
  137. /package/lib/{iconfont.1791517860186.woff → iconfont.1791539010382.woff} +0 -0
  138. /package/lib/{iconfont.1791517860186.woff2 → iconfont.1791539010382.woff2} +0 -0
package/lib/index.umd.js CHANGED
@@ -3060,7 +3060,7 @@ __webpack_require__.d(__webpack_exports__, {
3060
3060
  hooks: function() { return /* reexport */ hooks; },
3061
3061
  install: function() { return /* reexport */ install; },
3062
3062
  interceptor: function() { return /* reexport */ interceptor; },
3063
- loading: function() { return /* reexport */ loading; },
3063
+ loading: function() { return /* reexport */ components_loading; },
3064
3064
  log: function() { return /* reexport */ log; },
3065
3065
  menus: function() { return /* reexport */ menus; },
3066
3066
  modal: function() { return /* reexport */ components_modal; },
@@ -3316,7 +3316,7 @@ __webpack_require__.d(components_namespaceObject, {
3316
3316
  hooks: function() { return hooks; },
3317
3317
  install: function() { return install; },
3318
3318
  interceptor: function() { return interceptor; },
3319
- loading: function() { return loading; },
3319
+ loading: function() { return components_loading; },
3320
3320
  log: function() { return log; },
3321
3321
  menus: function() { return menus; },
3322
3322
  modal: function() { return components_modal; },
@@ -4745,7 +4745,7 @@ function checkDynamic() {
4745
4745
  const {
4746
4746
  log: log_log
4747
4747
  } = VxeUI;
4748
- const uiVersion = `ui v${"4.18.23"}`;
4748
+ const uiVersion = `ui v${"4.19.0"}`;
4749
4749
  function createComponentLog(name) {
4750
4750
  const tableVersion = VxeUI.tableVersion ? `table v${VxeUI.tableVersion}` : '';
4751
4751
  const ganttVersion = VxeUI.ganttVersion ? `gantt v${VxeUI.ganttVersion}` : '';
@@ -4763,7 +4763,7 @@ const errLog = log_log.create('error', uiVersion);
4763
4763
 
4764
4764
 
4765
4765
 
4766
- const ui_version = "4.18.23";
4766
+ const ui_version = "4.19.0";
4767
4767
  VxeUI.uiVersion = ui_version;
4768
4768
  VxeUI.dynamicApp = dynamicApp;
4769
4769
  function config(options) {
@@ -4974,7 +4974,13 @@ setConfig({
4974
4974
  digits: 2,
4975
4975
  controls: true
4976
4976
  },
4977
- layoutAside: {},
4977
+ layoutAside: {
4978
+ scrollbarConfig: {
4979
+ yConfig: {
4980
+ autoHide: true
4981
+ }
4982
+ }
4983
+ },
4978
4984
  layoutBody: {
4979
4985
  backtopConfig: {}
4980
4986
  },
@@ -11339,30 +11345,30 @@ const {
11339
11345
  class: 'vxe-calendar--header'
11340
11346
  }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
11341
11347
  class: 'vxe-calendar--type-wrapper'
11342
- }, [datePanelType === 'year' ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
11348
+ }, [datePanelType === 'year' ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
11343
11349
  class: 'vxe-calendar--date-picker-label',
11344
11350
  disabled: datePanelType === 'year',
11345
11351
  content: selectDatePanelObj.y
11346
11352
  }) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('span', {
11347
11353
  class: 'vxe-calendar--date-picker-btns'
11348
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
11354
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
11349
11355
  class: 'vxe-calendar--date-picker-btn',
11350
11356
  content: selectDatePanelObj.y,
11351
11357
  onClick: dateToggleYearTypeEvent
11352
- }), selectDatePanelObj.m ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
11358
+ }), selectDatePanelObj.m ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
11353
11359
  class: 'vxe-calendar--date-picker-btn',
11354
11360
  content: selectDatePanelObj.m,
11355
11361
  onClick: dateToggleMonthTypeEvent
11356
11362
  }) : renderEmptyElement($xeCalendar)])]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
11357
11363
  class: 'vxe-calendar--btn-wrapper'
11358
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
11364
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
11359
11365
  disabled: isDisabledPrevDateBtn,
11360
11366
  icon: 'vxe-icon-caret-left',
11361
11367
  onClick: datePrevEvent
11362
- }), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
11368
+ }), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
11363
11369
  icon: 'vxe-icon-dot',
11364
11370
  onClick: dateTodayMonthEvent
11365
- }), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
11371
+ }), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
11366
11372
  disabled: isDisabledNextDateBtn,
11367
11373
  icon: 'vxe-icon-caret-right',
11368
11374
  onClick: dateNextEvent
@@ -11464,7 +11470,7 @@ const Calendar = VxeCalendar;
11464
11470
 
11465
11471
 
11466
11472
 
11467
- /* harmony default export */ var src_loading = (defineVxeComponent({
11473
+ /* harmony default export */ var loading = (defineVxeComponent({
11468
11474
  name: 'VxeLoading',
11469
11475
  props: {
11470
11476
  modelValue: Boolean,
@@ -11585,6 +11591,38 @@ const Calendar = VxeCalendar;
11585
11591
  return this.renderVN();
11586
11592
  }
11587
11593
  }));
11594
+ ;// ./packages/loading/index.ts
11595
+
11596
+
11597
+
11598
+ const VxeLoading = Object.assign({}, loading, {
11599
+ install(app) {
11600
+ app.component(loading.name, loading);
11601
+ }
11602
+ });
11603
+ const LoadingController = {
11604
+ open(options) {
11605
+ const opts = Object.assign({}, options);
11606
+ dynamicStore.globalLoading = Object.assign({
11607
+ modelValue: true,
11608
+ text: opts.text,
11609
+ icon: opts.icon
11610
+ }, {
11611
+ key: 'gl'
11612
+ });
11613
+ checkDynamic();
11614
+ return Promise.resolve();
11615
+ },
11616
+ close() {
11617
+ dynamicStore.globalLoading = null;
11618
+ return Promise.resolve();
11619
+ }
11620
+ };
11621
+ dynamicApp.use(VxeLoading);
11622
+ VxeUI.component(loading);
11623
+ VxeUI.loading = LoadingController;
11624
+ const Loading = VxeLoading;
11625
+ /* harmony default export */ var packages_loading = (VxeLoading);
11588
11626
  ;// ./packages/card/src/card.ts
11589
11627
 
11590
11628
 
@@ -11720,7 +11758,7 @@ const Calendar = VxeCalendar;
11720
11758
  /**
11721
11759
  * 加载中
11722
11760
  */
11723
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_loading, {
11761
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_loading, {
11724
11762
  class: 'vxe-card--loading',
11725
11763
  modelValue: loading
11726
11764
  })]);
@@ -12102,7 +12140,7 @@ const Card = VxeCard;
12102
12140
  /**
12103
12141
  * 加载中
12104
12142
  */
12105
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_loading, {
12143
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_loading, {
12106
12144
  class: 'vxe-carousel--loading',
12107
12145
  modelValue: loading
12108
12146
  })]);
@@ -14652,7 +14690,7 @@ let crossListDragRowObj = null;
14652
14690
  /**
14653
14691
  * 加载中
14654
14692
  */
14655
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_loading, {
14693
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_loading, {
14656
14694
  class: 'vxe-list--loading',
14657
14695
  modelValue: loading
14658
14696
  })]);
@@ -24891,6 +24929,19 @@ const ContextMenu = VxeContextMenu;
24891
24929
  return this.renderVN();
24892
24930
  }
24893
24931
  }));
24932
+ ;// ./packages/text/index.ts
24933
+
24934
+
24935
+
24936
+ const VxeText = Object.assign({}, src_text, {
24937
+ install(app) {
24938
+ app.component(src_text.name, src_text);
24939
+ }
24940
+ });
24941
+ dynamicApp.use(VxeText);
24942
+ VxeUI.component(src_text);
24943
+ const Text = VxeText;
24944
+ /* harmony default export */ var packages_text = (VxeText);
24894
24945
  ;// ./packages/countdown/src/countdown.ts
24895
24946
 
24896
24947
 
@@ -25088,7 +25139,7 @@ const ContextMenu = VxeContextMenu;
25088
25139
  }, prefixSlot ? vn_getSlotVNs(prefixSlot({
25089
25140
  currentValue: currNum,
25090
25141
  diffConf
25091
- })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_text, {
25142
+ })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_text, {
25092
25143
  content: prefixOpts.content,
25093
25144
  icon: prefixOpts.icon,
25094
25145
  status: prefixOpts.status
@@ -25102,7 +25153,7 @@ const ContextMenu = VxeContextMenu;
25102
25153
  }, suffixSlot ? vn_getSlotVNs(suffixSlot({
25103
25154
  currentValue: currNum,
25104
25155
  diffConf
25105
- })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_text, {
25156
+ })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_text, {
25106
25157
  content: suffixOpts.content,
25107
25158
  icon: suffixOpts.icon,
25108
25159
  status: suffixOpts.status
@@ -28624,7 +28675,7 @@ function date_picker_createInternalData() {
28624
28675
  if (isEnableConf(shortcutOpts) && shortcutList.length && (position || 'left') === pos) {
28625
28676
  return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
28626
28677
  class: `vxe-date-picker--layout-${pos}-wrapper`
28627
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(button_group, {
28678
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button_group, {
28628
28679
  options: shortcutList,
28629
28680
  mode,
28630
28681
  align,
@@ -28714,7 +28765,7 @@ function date_picker_createInternalData() {
28714
28765
  class: 'vxe-date-picker--layout-header-wrapper'
28715
28766
  }, headerSlot({})) : renderShortcutBtn('header'), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
28716
28767
  class: 'vxe-date-picker--layout-body-wrapper'
28717
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(date_panel, {
28768
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_date_panel, {
28718
28769
  ref: refDatePanel,
28719
28770
  modelValue: reactData.inputValue,
28720
28771
  type: props.type,
@@ -28744,12 +28795,12 @@ function date_picker_createInternalData() {
28744
28795
  class: 'vxe-date-picker--layout-footer-custom'
28745
28796
  }, footerSlot ? footerSlot({}) : [renderShortcutBtn('footer')]), showClearBtn || showConfirmBtn ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
28746
28797
  class: 'vxe-date-picker--layout-footer-btns'
28747
- }, [showClearBtn ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
28798
+ }, [showClearBtn ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
28748
28799
  size: 'mini',
28749
28800
  disabled: inputValue === '' || external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(inputValue),
28750
28801
  content: getI18n('vxe.button.clear'),
28751
28802
  onClick: clearValueEvent
28752
- }) : renderEmptyElement($xeDatePicker), showConfirmBtn ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
28803
+ }) : renderEmptyElement($xeDatePicker), showConfirmBtn ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
28753
28804
  size: 'mini',
28754
28805
  status: 'primary',
28755
28806
  content: getI18n('vxe.button.confirm'),
@@ -30702,38 +30753,6 @@ const Divider = VxeDivider;
30702
30753
  /* harmony default export */ var packages_divider = (VxeDivider);
30703
30754
  ;// ./packages/drawer/src/store.ts
30704
30755
  const allActiveDrawers = [];
30705
- ;// ./packages/loading/index.ts
30706
-
30707
-
30708
-
30709
- const VxeLoading = Object.assign({}, src_loading, {
30710
- install(app) {
30711
- app.component(src_loading.name, src_loading);
30712
- }
30713
- });
30714
- const LoadingController = {
30715
- open(options) {
30716
- const opts = Object.assign({}, options);
30717
- dynamicStore.globalLoading = Object.assign({
30718
- modelValue: true,
30719
- text: opts.text,
30720
- icon: opts.icon
30721
- }, {
30722
- key: 'gl'
30723
- });
30724
- checkDynamic();
30725
- return Promise.resolve();
30726
- },
30727
- close() {
30728
- dynamicStore.globalLoading = null;
30729
- return Promise.resolve();
30730
- }
30731
- };
30732
- dynamicApp.use(VxeLoading);
30733
- VxeUI.component(src_loading);
30734
- VxeUI.loading = LoadingController;
30735
- const Loading = VxeLoading;
30736
- /* harmony default export */ var packages_loading = (VxeLoading);
30737
30756
  ;// ./packages/drawer/src/drawer.ts
30738
30757
 
30739
30758
 
@@ -35289,7 +35308,7 @@ function icon_picker_createInternalData() {
35289
35308
  style: wrapperStyle
35290
35309
  }, [filterable ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
35291
35310
  class: 'vxe-ico-picker--panel-search'
35292
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(input, {
35311
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_input, {
35293
35312
  ref: refInpSearch,
35294
35313
  class: 'vxe-ico-picker-search--input',
35295
35314
  modelValue: reactData.searchValue,
@@ -36527,282 +36546,679 @@ dynamicApp.use(VxeImagePreview);
36527
36546
  VxeUI.component(preview);
36528
36547
  const ImagePreview = VxeImagePreview;
36529
36548
  /* harmony default export */ var image_preview = (VxeImagePreview);
36530
- ;// ./packages/layout-aside/src/layout-aside.ts
36549
+ ;// ./packages/scrollbar/src/util.ts
36550
+ /**
36551
+ * 计算滚动条滑块的长度
36552
+ */
36553
+ function getThumbSize(viewportSize, contentSize, trackSize) {
36554
+ if (contentSize <= viewportSize) {
36555
+ return 0;
36556
+ }
36557
+ const ratio = viewportSize / contentSize;
36558
+ const ideal = trackSize * ratio;
36559
+ return Math.max(20, Math.min(ideal, trackSize));
36560
+ }
36561
+ /**
36562
+ * 计算滚动条滑块的偏移位置
36563
+ */
36564
+ function getThumbOffsetSize(offsetSize, viewportSize, contentSize, trackSize, thumbSize) {
36565
+ const maxScroll = contentSize - viewportSize;
36566
+ if (maxScroll <= 0) {
36567
+ return 0;
36568
+ }
36569
+ const maxThumbOffset = trackSize - thumbSize;
36570
+ if (maxThumbOffset <= 0) {
36571
+ return 0;
36572
+ }
36573
+ const clamped = Math.min(Math.max(offsetSize, 0), maxScroll);
36574
+ const ratio = clamped / maxScroll;
36575
+ return ratio * maxThumbOffset;
36576
+ }
36577
+ /**
36578
+ * 根据点击轨道的位置,计算滑块的偏移位置
36579
+ */
36580
+ function getScrollFromClick(clickPosition, viewportSize, contentSize, trackSize, thumbSize) {
36581
+ const maxThumbOffset = trackSize - thumbSize;
36582
+ const maxScroll = contentSize - viewportSize;
36583
+ if (maxScroll <= 0 || maxThumbOffset <= 0) {
36584
+ return 0;
36585
+ }
36586
+ let thumbOffset = clickPosition - thumbSize / 2;
36587
+ thumbOffset = Math.min(Math.max(thumbOffset, 0), maxThumbOffset);
36588
+ const scrollOffset = thumbOffset / maxThumbOffset * maxScroll;
36589
+ return scrollOffset;
36590
+ }
36591
+ /**
36592
+ * 拖拽 thumb 时,根据鼠标位置计算滑块的偏移位置
36593
+ */
36594
+ function getScrollFromDrag(pointerPosition, dragOffset, viewportSize, contentSize, trackSize, thumbSize) {
36595
+ const maxScroll = contentSize - viewportSize;
36596
+ const maxThumbOffset = trackSize - thumbSize;
36597
+ if (maxScroll <= 0 || maxThumbOffset <= 0) {
36598
+ return 0;
36599
+ }
36600
+ let thumbOffset = pointerPosition - dragOffset;
36601
+ thumbOffset = Math.min(Math.max(thumbOffset, 0), maxThumbOffset);
36602
+ return thumbOffset / maxThumbOffset * maxScroll;
36603
+ }
36604
+ ;// ./packages/scrollbar/src/scrollbar.ts
36531
36605
 
36532
36606
 
36533
36607
 
36534
36608
 
36535
36609
 
36536
36610
 
36537
- /* harmony default export */ var layout_aside = (defineVxeComponent({
36538
- name: 'VxeLayoutAside',
36611
+
36612
+ const {
36613
+ getConfig: scrollbar_getConfig,
36614
+ createEvent: scrollbar_createEvent,
36615
+ domUtils: scrollbar_domUtils,
36616
+ globalResize: scrollbar_globalResize,
36617
+ renderEmptyElement: scrollbar_renderEmptyElement
36618
+ } = VxeUI;
36619
+ function scrollbar_createReactData() {
36620
+ return {
36621
+ yThumbHeight: 0,
36622
+ xThumbWidth: 0
36623
+ };
36624
+ }
36625
+ function scrollbar_createInternalData() {
36626
+ return {
36627
+ // resizeObserver: undefined,
36628
+ // isThumbDrag: false,
36629
+ thumbDragOffset: 0,
36630
+ yThumbTop: 0,
36631
+ xThumbLeft: 0,
36632
+ lastScrollTop: 0,
36633
+ lastScrollLeft: 0
36634
+ };
36635
+ }
36636
+ /* harmony default export */ var scrollbar = (defineVxeComponent({
36637
+ name: 'VxeScrollbar',
36539
36638
  props: {
36639
+ id: [String, Number],
36540
36640
  width: [String, Number],
36541
- collapsed: Boolean,
36542
- collapseWidth: [String, Number],
36641
+ height: [String, Number],
36642
+ minWidth: [String, Number],
36643
+ minHeight: [String, Number],
36644
+ maxWidth: [String, Number],
36645
+ maxHeight: [String, Number],
36543
36646
  loading: Boolean,
36544
- padding: Boolean,
36545
- collapseConfig: Object,
36546
- size: {
36647
+ native: {
36648
+ type: Boolean,
36649
+ default: () => scrollbar_getConfig().scrollbar.native
36650
+ },
36651
+ xConfig: Object,
36652
+ yConfig: Object,
36653
+ className: {
36547
36654
  type: String,
36548
- default: () => getConfig().layoutAside.size || getConfig().size
36549
- }
36655
+ default: () => scrollbar_getConfig().scrollbar.className
36656
+ },
36657
+ viewAttrs: {
36658
+ type: Object,
36659
+ default: () => scrollbar_getConfig().scrollbar.viewAttrs
36660
+ },
36661
+ viewClassName: {
36662
+ type: String,
36663
+ default: () => scrollbar_getConfig().scrollbar.viewClassName
36664
+ },
36665
+ viewInnerClassName: {
36666
+ type: String,
36667
+ default: () => scrollbar_getConfig().scrollbar.viewInnerClassName
36668
+ },
36669
+ autoResize: {
36670
+ type: Boolean,
36671
+ default: () => scrollbar_getConfig().scrollbar.autoResize
36672
+ },
36673
+ syncResize: [Boolean, String, Number]
36550
36674
  },
36551
- emits: [],
36675
+ emits: ['scroll', 'scroll-boundary'],
36552
36676
  setup(props, context) {
36553
36677
  const {
36554
- slots,
36555
- emit
36678
+ emit,
36679
+ slots
36556
36680
  } = context;
36557
36681
  const xID = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();
36558
36682
  const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
36559
- const {
36560
- computeSize
36561
- } = useSize(props);
36562
- const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)({});
36563
- const refMaps = {
36564
- refElem
36565
- };
36566
- const computeCollapseOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
36567
- return Object.assign({}, getConfig().layoutAside.collapseConfig, props.collapseConfig);
36568
- });
36569
- const computeVarStyle = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
36683
+ const refViewElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
36684
+ const refViewInnerElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
36685
+ const refTrackXElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
36686
+ const refTrackYElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
36687
+ const refThumbXElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
36688
+ const refThumbYElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
36689
+ const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)(scrollbar_createReactData());
36690
+ const internalData = scrollbar_createInternalData();
36691
+ const computeWrapperStyle = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
36570
36692
  const {
36571
36693
  width,
36572
- collapseWidth
36694
+ height,
36695
+ minWidth,
36696
+ minHeight,
36697
+ maxWidth,
36698
+ maxHeight
36573
36699
  } = props;
36700
+ const xOpts = computeXOpts.value;
36701
+ const yOpts = computeYOpts.value;
36574
36702
  const stys = {};
36575
- if (collapseWidth) {
36576
- stys['--vxe-ui-layout-aside-collapse-width'] = toCssUnit(collapseWidth);
36577
- }
36578
36703
  if (width) {
36579
- stys['--vxe-ui-layout-aside-default-width'] = toCssUnit(width);
36704
+ stys.width = toCssUnit(width);
36705
+ }
36706
+ if (height) {
36707
+ stys.height = toCssUnit(height);
36708
+ }
36709
+ if (minWidth) {
36710
+ stys.minWidth = toCssUnit(minWidth);
36711
+ }
36712
+ if (minHeight) {
36713
+ stys.minHeight = toCssUnit(minHeight);
36714
+ }
36715
+ if (maxWidth) {
36716
+ stys.maxWidth = toCssUnit(maxWidth);
36717
+ }
36718
+ if (maxHeight) {
36719
+ stys.maxHeight = toCssUnit(maxHeight);
36720
+ }
36721
+ if (yOpts.width) {
36722
+ stys['--vxe-ui-scrollbar-y-width'] = toCssUnit(yOpts.width);
36723
+ }
36724
+ if (xOpts.height) {
36725
+ stys['--vxe-ui-scrollbar-x-height'] = toCssUnit(xOpts.height);
36580
36726
  }
36581
36727
  return stys;
36582
36728
  });
36583
- const computeMaps = {
36584
- computeSize,
36585
- computeVarStyle
36586
- };
36587
- const $xeLayoutAside = {
36588
- xID,
36589
- props,
36590
- context,
36591
- reactData,
36592
- getRefMaps: () => refMaps,
36593
- getComputeMaps: () => computeMaps
36594
- };
36595
- const dispatchEvent = (type, params, evnt) => {
36596
- emit(type, createEvent(evnt, {
36597
- $layoutAside: $xeLayoutAside
36598
- }, params));
36599
- };
36600
- const layoutAsideMethods = {
36601
- dispatchEvent
36602
- };
36603
- const layoutAsidePrivateMethods = {};
36604
- Object.assign($xeLayoutAside, layoutAsideMethods, layoutAsidePrivateMethods);
36605
- const renderVN = () => {
36729
+ const computeWrapperClss = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
36606
36730
  const {
36607
- collapsed,
36608
- loading,
36609
- padding
36731
+ native,
36732
+ className
36610
36733
  } = props;
36611
- const varStyle = computeVarStyle.value;
36612
- const vSize = computeSize.value;
36613
- const collapseOpts = computeCollapseOpts.value;
36614
- const defaultSlot = slots.default;
36615
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('aside', {
36616
- ref: refElem,
36617
- class: ['vxe-layout-aside', {
36618
- [`size--${vSize}`]: vSize,
36619
- 'is--animat': collapseOpts.animation !== false,
36620
- 'is--padding': padding,
36621
- 'is--collapse': collapsed,
36622
- 'is--loading': loading
36623
- }],
36624
- style: varStyle
36625
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
36626
- class: 'vxe-layout-aside--inner'
36627
- }, defaultSlot ? defaultSlot({}) : []),
36628
- /**
36629
- * 加载中
36630
- */
36631
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_loading, {
36632
- class: 'vxe-list-view--loading',
36633
- modelValue: loading
36634
- })]);
36635
- };
36636
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.provide)('$xeLayoutAside', $xeLayoutAside);
36637
- $xeLayoutAside.renderVN = renderVN;
36638
- return $xeLayoutAside;
36639
- },
36640
- render() {
36641
- return this.renderVN();
36642
- }
36643
- }));
36644
- ;// ./packages/layout-aside/index.ts
36645
-
36646
-
36647
-
36648
- const VxeLayoutAside = Object.assign({}, layout_aside, {
36649
- install(app) {
36650
- app.component(layout_aside.name, layout_aside);
36651
- }
36652
- });
36653
- dynamicApp.use(VxeLayoutAside);
36654
- VxeUI.component(layout_aside);
36655
- const LayoutAside = VxeLayoutAside;
36656
- /* harmony default export */ var packages_layout_aside = (VxeLayoutAside);
36657
- ;// ./packages/layout-body/src/layout-body.ts
36658
-
36659
-
36660
-
36661
-
36662
-
36663
-
36664
- function layout_body_createInternalData() {
36665
- return {};
36666
- }
36667
- function layout_body_createReactData() {
36668
- return {};
36669
- }
36670
- /* harmony default export */ var layout_body = (defineVxeComponent({
36671
- name: 'VxeLayoutBody',
36672
- props: {
36673
- loading: Boolean,
36674
- padding: Boolean,
36675
- showBacktop: {
36676
- type: Boolean,
36677
- default: () => getConfig().layoutBody.showBacktop
36678
- },
36679
- backtopConfig: Object,
36680
- size: {
36681
- type: String,
36682
- default: () => getConfig().layoutBody.size || getConfig().size
36683
- }
36684
- },
36685
- emits: [],
36686
- setup(props, context) {
36687
- const {
36688
- slots,
36689
- emit
36690
- } = context;
36691
- const xID = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();
36692
- const backtopId = `vxe_layout_body_backtop_${xID}`;
36693
- const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
36694
- const {
36695
- computeSize
36696
- } = useSize(props);
36697
- const internalData = layout_body_createInternalData();
36698
- const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)(layout_body_createReactData());
36699
- const refMaps = {
36700
- refElem
36701
- };
36702
- const computeBacktopOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
36703
- return Object.assign({}, getConfig().layoutBody.backtopConfig, props.backtopConfig, {
36704
- target: '#' + backtopId
36734
+ const {
36735
+ yThumbHeight,
36736
+ xThumbWidth
36737
+ } = reactData;
36738
+ const xOpts = computeXOpts.value;
36739
+ const yOpts = computeYOpts.value;
36740
+ return scrollbar_domUtils.buildClass(['vxe-scrollbar', `ov-x--${xOpts.visible || 'visible'}`, `ov-y--${yOpts.visible || 'visible'}`, native ? 'is--native' : 'is--virtual', className], {
36741
+ 'ov-x--auto-hide': xOpts.autoHide,
36742
+ 'ov-y--auto-hide': yOpts.autoHide,
36743
+ 'overflow-y': yThumbHeight,
36744
+ 'overflow-x': xThumbWidth
36705
36745
  });
36706
36746
  });
36707
- const computeMaps = {
36708
- computeSize
36747
+ const computeViewClss = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
36748
+ const {
36749
+ viewClassName
36750
+ } = props;
36751
+ return scrollbar_domUtils.buildClass(['vxe-scrollbar--view', viewClassName]);
36752
+ });
36753
+ const computeViewInnerClss = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
36754
+ const {
36755
+ viewInnerClassName
36756
+ } = props;
36757
+ return scrollbar_domUtils.buildClass(['vxe-scrollbar--view-inner', viewInnerClassName]);
36758
+ });
36759
+ const computeXOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
36760
+ return Object.assign({}, scrollbar_getConfig().scrollbar.xConfig, props.xConfig);
36761
+ });
36762
+ const computeYOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
36763
+ return Object.assign({}, scrollbar_getConfig().scrollbar.yConfig, props.yConfig);
36764
+ });
36765
+ const refMaps = {
36766
+ refElem
36709
36767
  };
36710
- const $xeLayoutBody = {
36768
+ const computeMaps = {};
36769
+ const $xeScrollbar = {
36711
36770
  xID,
36712
36771
  props,
36713
36772
  context,
36714
- internalData,
36715
36773
  reactData,
36774
+ internalData,
36716
36775
  getRefMaps: () => refMaps,
36717
36776
  getComputeMaps: () => computeMaps
36718
36777
  };
36719
36778
  const dispatchEvent = (type, params, evnt) => {
36720
- emit(type, createEvent(evnt, {
36721
- $layoutBody: $xeLayoutBody
36779
+ emit(type, scrollbar_createEvent(evnt, {
36780
+ $scrollbar: $xeScrollbar
36722
36781
  }, params));
36723
36782
  };
36724
- const layoutBodyMethods = {
36725
- dispatchEvent
36783
+ const scrollbarMethods = {
36784
+ dispatchEvent,
36785
+ scrollTo(left, top) {
36786
+ const viewEl = refViewElem.value;
36787
+ if (viewEl) {
36788
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(left)) {
36789
+ viewEl.scrollTo(left, top || 0);
36790
+ } else {
36791
+ viewEl.scrollTo(left);
36792
+ }
36793
+ }
36794
+ },
36795
+ scrollIntoView() {
36796
+ const viewEl = refViewElem.value;
36797
+ if (viewEl) {
36798
+ viewEl.scrollIntoView();
36799
+ }
36800
+ },
36801
+ recalculate() {
36802
+ updateThumbSize();
36803
+ updateThumbOffset();
36804
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
36805
+ }
36726
36806
  };
36727
- const layoutBodyPrivateMethods = {};
36728
- Object.assign($xeLayoutBody, layoutBodyMethods, layoutBodyPrivateMethods);
36729
- const renderVN = () => {
36730
- const {
36731
- loading,
36732
- padding,
36733
- showBacktop
36734
- } = props;
36735
- const backtopOpts = computeBacktopOpts.value;
36736
- const vSize = computeSize.value;
36737
- const defaultSlot = slots.default;
36738
- const backtopSlot = slots.backtop;
36739
- const backtopTopSlot = slots.backtopTop || slots['backtop-top'];
36740
- const backtopBottomSlot = slots.backtopBottom || slots['backtop-bottom'];
36741
- const backtopScopeSlots = {};
36742
- if (backtopSlot) {
36743
- backtopScopeSlots.default = backtopSlot;
36807
+ const updateThumbSize = () => {
36808
+ const viewEl = refViewElem.value;
36809
+ if (!viewEl) {
36810
+ return;
36744
36811
  }
36745
- if (backtopTopSlot) {
36746
- backtopScopeSlots.top = backtopTopSlot;
36812
+ const trackXEl = refTrackXElem.value;
36813
+ const xThumbWidth = trackXEl ? getThumbSize(viewEl.clientWidth, viewEl.scrollWidth, trackXEl.clientWidth) : 0;
36814
+ const thumbXElem = refThumbXElem.value;
36815
+ if (thumbXElem) {
36816
+ thumbXElem.style.width = xThumbWidth + 'px';
36747
36817
  }
36748
- if (backtopBottomSlot) {
36749
- backtopScopeSlots.bottom = backtopBottomSlot;
36818
+ reactData.xThumbWidth = xThumbWidth;
36819
+ const trackYEl = refTrackYElem.value;
36820
+ const yThumbHeight = trackYEl ? getThumbSize(viewEl.clientHeight, viewEl.scrollHeight, trackYEl.clientHeight) : 0;
36821
+ const thumbYElem = refThumbYElem.value;
36822
+ if (thumbYElem) {
36823
+ thumbYElem.style.height = yThumbHeight + 'px';
36750
36824
  }
36751
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
36752
- ref: refElem,
36753
- class: ['vxe-layout-body', {
36754
- [`size--${vSize}`]: vSize,
36755
- 'is--loading': loading,
36756
- 'is--padding': padding
36757
- }]
36758
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
36759
- id: showBacktop ? backtopId : '',
36760
- class: 'vxe-layout-body--inner'
36761
- }, defaultSlot ? defaultSlot({}) : []),
36762
- /**
36763
- * 加载中
36764
- */
36765
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_loading, {
36766
- class: 'vxe-list-view--loading',
36767
- modelValue: loading
36768
- }),
36769
- /**
36770
- * 回到顶部
36771
- */
36772
- showBacktop ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_backtop, backtopOpts, backtopScopeSlots) : renderEmptyElement($xeLayoutBody)]);
36825
+ reactData.yThumbHeight = yThumbHeight;
36773
36826
  };
36774
- $xeLayoutBody.renderVN = renderVN;
36775
- return $xeLayoutBody;
36776
- },
36777
- render() {
36778
- return this.renderVN();
36779
- }
36780
- }));
36781
- ;// ./packages/layout-body/index.ts
36782
-
36783
-
36784
-
36785
- const VxeLayoutBody = Object.assign({}, layout_body, {
36786
- install(app) {
36787
- app.component(layout_body.name, layout_body);
36827
+ const updateThumbOffset = () => {
36828
+ const viewEl = refViewElem.value;
36829
+ if (!viewEl) {
36830
+ return;
36831
+ }
36832
+ const {
36833
+ xThumbWidth,
36834
+ yThumbHeight
36835
+ } = reactData;
36836
+ const trackXEl = refTrackXElem.value;
36837
+ const thumbXElem = refThumbXElem.value;
36838
+ const xThumbLeft = trackXEl && xThumbWidth ? getThumbOffsetSize(viewEl.scrollLeft, viewEl.clientWidth, viewEl.scrollWidth, trackXEl.clientWidth, xThumbWidth) : 0;
36839
+ internalData.xThumbLeft = xThumbLeft;
36840
+ if (thumbXElem && xThumbWidth) {
36841
+ thumbXElem.style.width = xThumbWidth + 'px';
36842
+ thumbXElem.style.transform = `translateX(${xThumbLeft}px)`;
36843
+ }
36844
+ const trackYEl = refTrackYElem.value;
36845
+ const thumbYElem = refThumbYElem.value;
36846
+ const yThumbTop = trackYEl && yThumbHeight ? getThumbOffsetSize(viewEl.scrollTop, viewEl.clientHeight, viewEl.scrollHeight, trackYEl.clientHeight, yThumbHeight) : 0;
36847
+ internalData.yThumbTop = yThumbTop;
36848
+ if (thumbYElem && yThumbHeight) {
36849
+ thumbYElem.style.height = yThumbHeight + 'px';
36850
+ thumbYElem.style.transform = `translateY(${yThumbTop}px)`;
36851
+ }
36852
+ };
36853
+ const scrollEvent = evnt => {
36854
+ const {
36855
+ xThumbWidth,
36856
+ yThumbHeight
36857
+ } = reactData;
36858
+ const {
36859
+ lastScrollTop,
36860
+ lastScrollLeft
36861
+ } = internalData;
36862
+ const xOpts = computeXOpts.value;
36863
+ const yOpts = computeYOpts.value;
36864
+ const viewEl = evnt.currentTarget;
36865
+ const {
36866
+ scrollTop,
36867
+ scrollLeft,
36868
+ clientWidth,
36869
+ clientHeight,
36870
+ scrollHeight,
36871
+ scrollWidth
36872
+ } = viewEl;
36873
+ let direction = '';
36874
+ let isTopBoundary = false;
36875
+ let isBottomBoundary = false;
36876
+ let isLeftBoundary = false;
36877
+ let isRightBoundary = false;
36878
+ if (lastScrollTop !== scrollTop) {
36879
+ const yThreshold = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(yOpts.threshold) || 1;
36880
+ if (lastScrollTop < scrollTop) {
36881
+ direction = 'bottom';
36882
+ if (yThumbHeight > 0 && scrollTop + clientHeight >= scrollHeight - yThreshold) {
36883
+ isBottomBoundary = true;
36884
+ }
36885
+ } else {
36886
+ direction = 'top';
36887
+ if (yThumbHeight > 0 && scrollTop <= yThreshold) {
36888
+ isTopBoundary = true;
36889
+ }
36890
+ }
36891
+ }
36892
+ if (lastScrollLeft !== scrollLeft) {
36893
+ const xThreshold = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(xOpts.threshold) || 1;
36894
+ if (lastScrollLeft < scrollLeft) {
36895
+ direction = 'right';
36896
+ if (xThumbWidth > 0 && scrollLeft + clientWidth >= scrollWidth - xThreshold) {
36897
+ isRightBoundary = true;
36898
+ }
36899
+ } else {
36900
+ direction = 'left';
36901
+ if (xThumbWidth > 0 && scrollLeft <= xThreshold) {
36902
+ isLeftBoundary = true;
36903
+ }
36904
+ }
36905
+ }
36906
+ updateThumbOffset();
36907
+ internalData.lastScrollTop = scrollTop;
36908
+ internalData.lastScrollLeft = scrollLeft;
36909
+ if (isBottomBoundary || isTopBoundary || isRightBoundary || isLeftBoundary) {
36910
+ dispatchEvent('scroll-boundary', {
36911
+ direction: direction,
36912
+ isTop: isTopBoundary,
36913
+ isBottom: isBottomBoundary,
36914
+ isLeft: isLeftBoundary,
36915
+ isRight: isRightBoundary,
36916
+ scrollTop: scrollTop,
36917
+ scrollLeft: scrollLeft,
36918
+ clientWidth: clientWidth,
36919
+ clientHeight: clientHeight,
36920
+ scrollHeight: scrollHeight,
36921
+ scrollWidth: scrollWidth
36922
+ }, evnt);
36923
+ }
36924
+ dispatchEvent('scroll', {
36925
+ direction: direction,
36926
+ isTop: yThumbHeight > 0 && scrollTop <= 0,
36927
+ isBottom: yThumbHeight > 0 && scrollTop + clientHeight >= scrollHeight,
36928
+ isLeft: xThumbWidth > 0 && scrollLeft <= 0,
36929
+ isRight: xThumbWidth > 0 && scrollLeft + clientWidth >= scrollWidth,
36930
+ scrollTop: scrollTop,
36931
+ scrollLeft: scrollLeft,
36932
+ clientWidth: clientWidth,
36933
+ clientHeight: clientHeight,
36934
+ scrollHeight: scrollHeight,
36935
+ scrollWidth: scrollWidth
36936
+ }, evnt);
36937
+ };
36938
+ const clickTrackXEvent = evnt => {
36939
+ const trackEl = evnt.currentTarget;
36940
+ if (trackEl !== evnt.target) {
36941
+ return;
36942
+ }
36943
+ const viewEl = refViewElem.value;
36944
+ if (!viewEl) {
36945
+ return;
36946
+ }
36947
+ const {
36948
+ xThumbWidth
36949
+ } = reactData;
36950
+ const trackRect = trackEl.getBoundingClientRect();
36951
+ viewEl.scrollTo({
36952
+ left: getScrollFromClick(evnt.clientX - trackRect.left, viewEl.clientWidth, viewEl.scrollWidth, trackEl.clientWidth, xThumbWidth),
36953
+ behavior: 'auto'
36954
+ });
36955
+ };
36956
+ const clickTrackYEvent = evnt => {
36957
+ const trackEl = evnt.currentTarget;
36958
+ if (trackEl !== evnt.target) {
36959
+ return;
36960
+ }
36961
+ const viewEl = refViewElem.value;
36962
+ if (!viewEl) {
36963
+ return;
36964
+ }
36965
+ const {
36966
+ yThumbHeight
36967
+ } = reactData;
36968
+ const trackRect = trackEl.getBoundingClientRect();
36969
+ viewEl.scrollTo({
36970
+ top: getScrollFromClick(evnt.clientY - trackRect.top, viewEl.clientHeight, viewEl.scrollHeight, trackEl.clientHeight, yThumbHeight),
36971
+ behavior: 'auto'
36972
+ });
36973
+ };
36974
+ const pointerdownThumbXEvent = evnt => {
36975
+ const thumbEl = evnt.currentTarget;
36976
+ internalData.isThumbDrag = true;
36977
+ thumbEl.setPointerCapture(evnt.pointerId);
36978
+ const viewEl = refViewElem.value;
36979
+ if (!viewEl) {
36980
+ return;
36981
+ }
36982
+ const {
36983
+ xThumbWidth
36984
+ } = reactData;
36985
+ const trackEl = thumbEl.parentElement;
36986
+ const trackRect = trackEl.getBoundingClientRect();
36987
+ const pointerPosition = evnt.clientX - trackRect.left;
36988
+ // 记录 thumb 的偏移
36989
+ const thumbOffset = getThumbOffsetSize(viewEl.scrollLeft, viewEl.clientWidth, viewEl.scrollWidth, trackEl.clientWidth, xThumbWidth);
36990
+ internalData.thumbDragOffset = pointerPosition - thumbOffset;
36991
+ };
36992
+ const pointermoveThumbXEvent = evnt => {
36993
+ const thumbEl = evnt.currentTarget;
36994
+ if (!thumbEl.hasPointerCapture(evnt.pointerId)) {
36995
+ return;
36996
+ }
36997
+ const {
36998
+ isThumbDrag,
36999
+ thumbDragOffset
37000
+ } = internalData;
37001
+ if (isThumbDrag) {
37002
+ const viewEl = refViewElem.value;
37003
+ if (!viewEl) {
37004
+ return;
37005
+ }
37006
+ const {
37007
+ xThumbWidth
37008
+ } = reactData;
37009
+ const thumbEl = evnt.currentTarget;
37010
+ const trackEl = thumbEl.parentElement;
37011
+ const trackRect = trackEl.getBoundingClientRect();
37012
+ // 更新偏移
37013
+ viewEl.scrollLeft = getScrollFromDrag(evnt.clientX - trackRect.left, thumbDragOffset, viewEl.clientWidth, viewEl.scrollWidth, trackEl.clientWidth, xThumbWidth);
37014
+ }
37015
+ };
37016
+ const cleatPointerThumbEvent = evnt => {
37017
+ const thumbEl = evnt.currentTarget;
37018
+ thumbEl.releasePointerCapture(evnt.pointerId);
37019
+ internalData.isThumbDrag = false;
37020
+ };
37021
+ const pointerdownThumbYEvent = evnt => {
37022
+ const thumbEl = evnt.currentTarget;
37023
+ internalData.isThumbDrag = true;
37024
+ thumbEl.setPointerCapture(evnt.pointerId);
37025
+ const viewEl = refViewElem.value;
37026
+ if (!viewEl) {
37027
+ return;
37028
+ }
37029
+ const {
37030
+ yThumbHeight
37031
+ } = reactData;
37032
+ const trackEl = thumbEl.parentElement;
37033
+ const trackRect = trackEl.getBoundingClientRect();
37034
+ const pointerPosition = evnt.clientY - trackRect.top;
37035
+ // 记录 thumb 的偏移
37036
+ const thumbOffset = getThumbOffsetSize(viewEl.scrollTop, viewEl.clientHeight, viewEl.scrollHeight, trackEl.clientHeight, yThumbHeight);
37037
+ internalData.thumbDragOffset = pointerPosition - thumbOffset;
37038
+ };
37039
+ const pointermoveThumbYEvent = evnt => {
37040
+ const thumbEl = evnt.currentTarget;
37041
+ if (!thumbEl.hasPointerCapture(evnt.pointerId)) {
37042
+ return;
37043
+ }
37044
+ const {
37045
+ isThumbDrag,
37046
+ thumbDragOffset
37047
+ } = internalData;
37048
+ if (isThumbDrag) {
37049
+ const viewEl = refViewElem.value;
37050
+ if (!viewEl) {
37051
+ return;
37052
+ }
37053
+ const {
37054
+ yThumbHeight
37055
+ } = reactData;
37056
+ const thumbEl = evnt.currentTarget;
37057
+ const trackEl = thumbEl.parentElement;
37058
+ const trackRect = trackEl.getBoundingClientRect();
37059
+ // 更新偏移
37060
+ viewEl.scrollTop = getScrollFromDrag(evnt.clientY - trackRect.top, thumbDragOffset, viewEl.clientHeight, viewEl.scrollHeight, trackEl.clientHeight, yThumbHeight);
37061
+ }
37062
+ };
37063
+ const scrollbarPrivateMethods = {};
37064
+ Object.assign($xeScrollbar, scrollbarMethods, scrollbarPrivateMethods);
37065
+ const renderVN = () => {
37066
+ const {
37067
+ id,
37068
+ native,
37069
+ loading,
37070
+ viewAttrs
37071
+ } = props;
37072
+ const wrapperStyle = computeWrapperStyle.value;
37073
+ const wrapperClss = computeWrapperClss.value;
37074
+ const viewClss = computeViewClss.value;
37075
+ const viewInnerClss = computeViewInnerClss.value;
37076
+ const xOpts = computeXOpts.value;
37077
+ const yOpts = computeYOpts.value;
37078
+ const defaultSlot = slots.default;
37079
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37080
+ ref: refElem,
37081
+ id: id || null,
37082
+ class: wrapperClss,
37083
+ style: wrapperStyle
37084
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37085
+ ref: refViewElem,
37086
+ class: viewClss,
37087
+ onScroll: scrollEvent,
37088
+ ...viewAttrs
37089
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37090
+ key: 'vi',
37091
+ ref: refViewInnerElem,
37092
+ class: viewInnerClss
37093
+ }, defaultSlot ? defaultSlot({}) : [])]), native || xOpts.visible === 'hidden' ? scrollbar_renderEmptyElement($xeScrollbar) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37094
+ ref: refTrackXElem,
37095
+ class: 'vxe-scrollbar--track-x',
37096
+ onClick: clickTrackXEvent
37097
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37098
+ ref: refThumbXElem,
37099
+ class: 'vxe-scrollbar--thumb-x',
37100
+ onPointerdown: pointerdownThumbXEvent,
37101
+ onPointermove: pointermoveThumbXEvent,
37102
+ onPointerup: cleatPointerThumbEvent,
37103
+ onPointercancel: cleatPointerThumbEvent,
37104
+ onLostpointercapture: cleatPointerThumbEvent
37105
+ })]), native || yOpts.visible === 'hidden' ? scrollbar_renderEmptyElement($xeScrollbar) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37106
+ ref: refTrackYElem,
37107
+ class: 'vxe-scrollbar--track-y',
37108
+ onClick: clickTrackYEvent
37109
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37110
+ ref: refThumbYElem,
37111
+ class: 'vxe-scrollbar--thumb-y',
37112
+ onPointerdown: pointerdownThumbYEvent,
37113
+ onPointermove: pointermoveThumbYEvent,
37114
+ onPointerup: cleatPointerThumbEvent,
37115
+ onPointercancel: cleatPointerThumbEvent,
37116
+ onLostpointercapture: cleatPointerThumbEvent
37117
+ })]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_loading, {
37118
+ class: 'vxe-scrollbar--loading',
37119
+ modelValue: loading
37120
+ })]);
37121
+ };
37122
+ const reFlag = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)(0);
37123
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.height, () => {
37124
+ reFlag.value++;
37125
+ });
37126
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.width, () => {
37127
+ reFlag.value++;
37128
+ });
37129
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.minHeight, () => {
37130
+ reFlag.value++;
37131
+ });
37132
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.minWidth, () => {
37133
+ reFlag.value++;
37134
+ });
37135
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.maxHeight, () => {
37136
+ reFlag.value++;
37137
+ });
37138
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.maxWidth, () => {
37139
+ reFlag.value++;
37140
+ });
37141
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.native, () => {
37142
+ reFlag.value++;
37143
+ });
37144
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.syncResize, () => {
37145
+ reFlag.value++;
37146
+ });
37147
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(reFlag, () => {
37148
+ $xeScrollbar.recalculate().then(() => {
37149
+ $xeScrollbar.recalculate();
37150
+ });
37151
+ });
37152
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.onMounted)(() => {
37153
+ const {
37154
+ autoResize
37155
+ } = props;
37156
+ const viewEl = refViewElem.value;
37157
+ const viewInnerEl = refViewInnerElem.value;
37158
+ if (autoResize) {
37159
+ const resizeObserver = scrollbar_globalResize.create(() => {
37160
+ if (props.autoResize) {
37161
+ reFlag.value++;
37162
+ }
37163
+ });
37164
+ if (viewEl) {
37165
+ resizeObserver.observe(viewEl);
37166
+ }
37167
+ if (viewInnerEl) {
37168
+ resizeObserver.observe(viewInnerEl);
37169
+ }
37170
+ internalData.resizeObserver = resizeObserver;
37171
+ }
37172
+ reFlag.value++;
37173
+ });
37174
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.onBeforeUnmount)(() => {
37175
+ const {
37176
+ resizeObserver
37177
+ } = internalData;
37178
+ if (resizeObserver) {
37179
+ resizeObserver.disconnect();
37180
+ }
37181
+ });
37182
+ $xeScrollbar.renderVN = renderVN;
37183
+ return $xeScrollbar;
37184
+ },
37185
+ render() {
37186
+ return this.renderVN();
37187
+ }
37188
+ }));
37189
+ ;// ./packages/scrollbar/index.ts
37190
+
37191
+
37192
+
37193
+ const VxeScrollbar = Object.assign({}, scrollbar, {
37194
+ install(app) {
37195
+ app.component(scrollbar.name, scrollbar);
36788
37196
  }
36789
37197
  });
36790
- dynamicApp.use(VxeLayoutBody);
36791
- VxeUI.component(layout_body);
36792
- const LayoutBody = VxeLayoutBody;
36793
- /* harmony default export */ var packages_layout_body = (VxeLayoutBody);
36794
- ;// ./packages/layout-container/src/layout-container.ts
37198
+ dynamicApp.use(VxeScrollbar);
37199
+ VxeUI.component(scrollbar);
37200
+ const Scrollbar = VxeScrollbar;
37201
+ /* harmony default export */ var packages_scrollbar = (VxeScrollbar);
37202
+ ;// ./packages/layout-aside/src/layout-aside.ts
36795
37203
 
36796
37204
 
36797
37205
 
36798
37206
 
36799
- /* harmony default export */ var layout_container = (defineVxeComponent({
36800
- name: 'VxeLayoutContainer',
37207
+
37208
+
37209
+ /* harmony default export */ var layout_aside = (defineVxeComponent({
37210
+ name: 'VxeLayoutAside',
36801
37211
  props: {
36802
- vertical: Boolean,
37212
+ width: [String, Number],
37213
+ collapsed: Boolean,
37214
+ collapseWidth: [String, Number],
37215
+ loading: Boolean,
37216
+ padding: Boolean,
37217
+ collapseConfig: Object,
37218
+ scrollbarConfig: Object,
36803
37219
  size: {
36804
37220
  type: String,
36805
- default: () => getConfig().layoutContainer.size || getConfig().size
37221
+ default: () => getConfig().layoutAside.size || getConfig().size
36806
37222
  }
36807
37223
  },
36808
37224
  emits: [],
@@ -36820,10 +37236,31 @@ const LayoutBody = VxeLayoutBody;
36820
37236
  const refMaps = {
36821
37237
  refElem
36822
37238
  };
37239
+ const computeCollapseOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
37240
+ return Object.assign({}, getConfig().layoutAside.collapseConfig, props.collapseConfig);
37241
+ });
37242
+ const computeScrollbarOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
37243
+ return Object.assign({}, getConfig().layoutAside.scrollbarConfig, props.scrollbarConfig);
37244
+ });
37245
+ const computeVarStyle = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
37246
+ const {
37247
+ width,
37248
+ collapseWidth
37249
+ } = props;
37250
+ const stys = {};
37251
+ if (collapseWidth) {
37252
+ stys['--vxe-ui-layout-aside-collapse-width'] = toCssUnit(collapseWidth);
37253
+ }
37254
+ if (width) {
37255
+ stys['--vxe-ui-layout-aside-default-width'] = toCssUnit(width);
37256
+ }
37257
+ return stys;
37258
+ });
36823
37259
  const computeMaps = {
36824
- computeSize
37260
+ computeSize,
37261
+ computeVarStyle
36825
37262
  };
36826
- const $xeLayoutContainer = {
37263
+ const $xeLayoutAside = {
36827
37264
  xID,
36828
37265
  props,
36829
37266
  context,
@@ -36833,58 +37270,109 @@ const LayoutBody = VxeLayoutBody;
36833
37270
  };
36834
37271
  const dispatchEvent = (type, params, evnt) => {
36835
37272
  emit(type, createEvent(evnt, {
36836
- $layoutContainer: $xeLayoutContainer
37273
+ $layoutAside: $xeLayoutAside
36837
37274
  }, params));
36838
37275
  };
36839
- const layoutContainerMethods = {
37276
+ const layoutAsideMethods = {
36840
37277
  dispatchEvent
36841
37278
  };
36842
- const layoutContainerPrivateMethods = {};
36843
- Object.assign($xeLayoutContainer, layoutContainerMethods, layoutContainerPrivateMethods);
37279
+ const layoutAsidePrivateMethods = {};
37280
+ Object.assign($xeLayoutAside, layoutAsideMethods, layoutAsidePrivateMethods);
36844
37281
  const renderVN = () => {
36845
37282
  const {
36846
- vertical
37283
+ collapsed,
37284
+ loading,
37285
+ padding
36847
37286
  } = props;
37287
+ const varStyle = computeVarStyle.value;
36848
37288
  const vSize = computeSize.value;
37289
+ const collapseOpts = computeCollapseOpts.value;
37290
+ const scrollbarOpts = computeScrollbarOpts.value;
37291
+ const {
37292
+ native,
37293
+ yConfig,
37294
+ className,
37295
+ viewAttrs,
37296
+ viewClassName,
37297
+ viewInnerClassName
37298
+ } = scrollbarOpts;
36849
37299
  const defaultSlot = slots.default;
36850
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37300
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('aside', {
36851
37301
  ref: refElem,
36852
- class: ['vxe-layout-container', {
37302
+ class: ['vxe-layout-aside', {
36853
37303
  [`size--${vSize}`]: vSize,
36854
- 'is--vertical': vertical
36855
- }]
36856
- }, defaultSlot ? defaultSlot({}) : []);
37304
+ 'is--animat': collapseOpts.animation !== false,
37305
+ 'is--padding': padding,
37306
+ 'is--collapse': collapsed,
37307
+ 'is--loading': loading
37308
+ }],
37309
+ style: varStyle
37310
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_scrollbar, {
37311
+ loading,
37312
+ native,
37313
+ xConfig: {
37314
+ visible: 'hidden'
37315
+ },
37316
+ yConfig,
37317
+ className: 'vxe-layout-aside--scrollbar' + (className ? ' ' + className : ''),
37318
+ viewAttrs,
37319
+ viewClassName: 'vxe-layout-aside--view' + (viewClassName ? ' ' + viewClassName : ''),
37320
+ viewInnerClassName: 'vxe-layout-aside--inner' + (viewInnerClassName ? ' ' + viewInnerClassName : '')
37321
+ }, {
37322
+ default: () => {
37323
+ return defaultSlot ? defaultSlot({}) : [];
37324
+ }
37325
+ })]);
36857
37326
  };
36858
- $xeLayoutContainer.renderVN = renderVN;
36859
- return $xeLayoutContainer;
37327
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.provide)('$xeLayoutAside', $xeLayoutAside);
37328
+ $xeLayoutAside.renderVN = renderVN;
37329
+ return $xeLayoutAside;
36860
37330
  },
36861
37331
  render() {
36862
37332
  return this.renderVN();
36863
37333
  }
36864
37334
  }));
36865
- ;// ./packages/layout-container/index.ts
37335
+ ;// ./packages/layout-aside/index.ts
36866
37336
 
36867
37337
 
36868
37338
 
36869
- const VxeLayoutContainer = Object.assign({}, layout_container, {
37339
+ const VxeLayoutAside = Object.assign({}, layout_aside, {
36870
37340
  install(app) {
36871
- app.component(layout_container.name, layout_container);
37341
+ app.component(layout_aside.name, layout_aside);
36872
37342
  }
36873
37343
  });
36874
- dynamicApp.use(VxeLayoutContainer);
36875
- VxeUI.component(layout_container);
36876
- const LayoutContainer = VxeLayoutContainer;
36877
- /* harmony default export */ var packages_layout_container = (VxeLayoutContainer);
36878
- ;// ./packages/layout-footer/src/layout-footer.ts
37344
+ dynamicApp.use(VxeLayoutAside);
37345
+ VxeUI.component(layout_aside);
37346
+ const LayoutAside = VxeLayoutAside;
37347
+ /* harmony default export */ var packages_layout_aside = (VxeLayoutAside);
37348
+ ;// ./packages/layout-body/src/layout-body.ts
36879
37349
 
36880
37350
 
36881
37351
 
36882
37352
 
36883
- /* harmony default export */ var layout_footer = (defineVxeComponent({
36884
- name: 'VxeLayoutFooter',
37353
+
37354
+
37355
+ function layout_body_createInternalData() {
37356
+ return {};
37357
+ }
37358
+ function layout_body_createReactData() {
37359
+ return {};
37360
+ }
37361
+ /* harmony default export */ var layout_body = (defineVxeComponent({
37362
+ name: 'VxeLayoutBody',
36885
37363
  props: {
36886
- fixed: Boolean,
36887
- align: String
37364
+ loading: Boolean,
37365
+ padding: Boolean,
37366
+ showBacktop: {
37367
+ type: Boolean,
37368
+ default: () => getConfig().layoutBody.showBacktop
37369
+ },
37370
+ backtopConfig: Object,
37371
+ scrollbarConfig: Object,
37372
+ size: {
37373
+ type: String,
37374
+ default: () => getConfig().layoutBody.size || getConfig().size
37375
+ }
36888
37376
  },
36889
37377
  emits: [],
36890
37378
  setup(props, context) {
@@ -36893,13 +37381,234 @@ const LayoutContainer = VxeLayoutContainer;
36893
37381
  emit
36894
37382
  } = context;
36895
37383
  const xID = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();
37384
+ const backtopId = `vxe_layout_body_backtop_${xID}`;
36896
37385
  const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
36897
- const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)({});
37386
+ const {
37387
+ computeSize
37388
+ } = useSize(props);
37389
+ const internalData = layout_body_createInternalData();
37390
+ const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)(layout_body_createReactData());
36898
37391
  const refMaps = {
36899
37392
  refElem
36900
37393
  };
36901
- const computeMaps = {};
36902
- const $xeLayoutFooter = {
37394
+ const computeBacktopOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
37395
+ return Object.assign({}, getConfig().layoutBody.backtopConfig, props.backtopConfig, {
37396
+ target: '#' + backtopId
37397
+ });
37398
+ });
37399
+ const computeScrollbarOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
37400
+ return Object.assign({}, getConfig().layoutBody.scrollbarConfig, props.scrollbarConfig);
37401
+ });
37402
+ const computeMaps = {
37403
+ computeSize
37404
+ };
37405
+ const $xeLayoutBody = {
37406
+ xID,
37407
+ props,
37408
+ context,
37409
+ internalData,
37410
+ reactData,
37411
+ getRefMaps: () => refMaps,
37412
+ getComputeMaps: () => computeMaps
37413
+ };
37414
+ const dispatchEvent = (type, params, evnt) => {
37415
+ emit(type, createEvent(evnt, {
37416
+ $layoutBody: $xeLayoutBody
37417
+ }, params));
37418
+ };
37419
+ const layoutBodyMethods = {
37420
+ dispatchEvent
37421
+ };
37422
+ const layoutBodyPrivateMethods = {};
37423
+ Object.assign($xeLayoutBody, layoutBodyMethods, layoutBodyPrivateMethods);
37424
+ const renderVN = () => {
37425
+ const {
37426
+ loading,
37427
+ padding,
37428
+ showBacktop
37429
+ } = props;
37430
+ const backtopOpts = computeBacktopOpts.value;
37431
+ const scrollbarOpts = computeScrollbarOpts.value;
37432
+ const {
37433
+ native,
37434
+ xConfig,
37435
+ yConfig,
37436
+ className,
37437
+ viewAttrs,
37438
+ viewClassName,
37439
+ viewInnerClassName
37440
+ } = scrollbarOpts;
37441
+ const vSize = computeSize.value;
37442
+ const defaultSlot = slots.default;
37443
+ const backtopSlot = slots.backtop;
37444
+ const backtopTopSlot = slots.backtopTop || slots['backtop-top'];
37445
+ const backtopBottomSlot = slots.backtopBottom || slots['backtop-bottom'];
37446
+ const backtopScopeSlots = {};
37447
+ if (backtopSlot) {
37448
+ backtopScopeSlots.default = backtopSlot;
37449
+ }
37450
+ if (backtopTopSlot) {
37451
+ backtopScopeSlots.top = backtopTopSlot;
37452
+ }
37453
+ if (backtopBottomSlot) {
37454
+ backtopScopeSlots.bottom = backtopBottomSlot;
37455
+ }
37456
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37457
+ ref: refElem,
37458
+ class: ['vxe-layout-body', {
37459
+ [`size--${vSize}`]: vSize,
37460
+ 'is--loading': loading,
37461
+ 'is--padding': padding
37462
+ }]
37463
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_scrollbar, {
37464
+ loading,
37465
+ native,
37466
+ xConfig,
37467
+ yConfig,
37468
+ className: 'vxe-layout-body--scrollbar' + (className ? ' ' + className : ''),
37469
+ viewAttrs: {
37470
+ ...viewAttrs,
37471
+ id: showBacktop ? backtopId || null : null
37472
+ },
37473
+ viewClassName: 'vxe-layout-body--view' + (viewClassName ? ' ' + viewClassName : ''),
37474
+ viewInnerClassName: 'vxe-layout-body--inner' + (viewInnerClassName ? ' ' + viewInnerClassName : '')
37475
+ }, {
37476
+ default: () => defaultSlot ? defaultSlot({}) : []
37477
+ }),
37478
+ /**
37479
+ * 回到顶部
37480
+ */
37481
+ showBacktop ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_backtop, backtopOpts, backtopScopeSlots) : renderEmptyElement($xeLayoutBody)]);
37482
+ };
37483
+ $xeLayoutBody.renderVN = renderVN;
37484
+ return $xeLayoutBody;
37485
+ },
37486
+ render() {
37487
+ return this.renderVN();
37488
+ }
37489
+ }));
37490
+ ;// ./packages/layout-body/index.ts
37491
+
37492
+
37493
+
37494
+ const VxeLayoutBody = Object.assign({}, layout_body, {
37495
+ install(app) {
37496
+ app.component(layout_body.name, layout_body);
37497
+ }
37498
+ });
37499
+ dynamicApp.use(VxeLayoutBody);
37500
+ VxeUI.component(layout_body);
37501
+ const LayoutBody = VxeLayoutBody;
37502
+ /* harmony default export */ var packages_layout_body = (VxeLayoutBody);
37503
+ ;// ./packages/layout-container/src/layout-container.ts
37504
+
37505
+
37506
+
37507
+
37508
+ /* harmony default export */ var layout_container = (defineVxeComponent({
37509
+ name: 'VxeLayoutContainer',
37510
+ props: {
37511
+ vertical: Boolean,
37512
+ size: {
37513
+ type: String,
37514
+ default: () => getConfig().layoutContainer.size || getConfig().size
37515
+ }
37516
+ },
37517
+ emits: [],
37518
+ setup(props, context) {
37519
+ const {
37520
+ slots,
37521
+ emit
37522
+ } = context;
37523
+ const xID = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();
37524
+ const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
37525
+ const {
37526
+ computeSize
37527
+ } = useSize(props);
37528
+ const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)({});
37529
+ const refMaps = {
37530
+ refElem
37531
+ };
37532
+ const computeMaps = {
37533
+ computeSize
37534
+ };
37535
+ const $xeLayoutContainer = {
37536
+ xID,
37537
+ props,
37538
+ context,
37539
+ reactData,
37540
+ getRefMaps: () => refMaps,
37541
+ getComputeMaps: () => computeMaps
37542
+ };
37543
+ const dispatchEvent = (type, params, evnt) => {
37544
+ emit(type, createEvent(evnt, {
37545
+ $layoutContainer: $xeLayoutContainer
37546
+ }, params));
37547
+ };
37548
+ const layoutContainerMethods = {
37549
+ dispatchEvent
37550
+ };
37551
+ const layoutContainerPrivateMethods = {};
37552
+ Object.assign($xeLayoutContainer, layoutContainerMethods, layoutContainerPrivateMethods);
37553
+ const renderVN = () => {
37554
+ const {
37555
+ vertical
37556
+ } = props;
37557
+ const vSize = computeSize.value;
37558
+ const defaultSlot = slots.default;
37559
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37560
+ ref: refElem,
37561
+ class: ['vxe-layout-container', {
37562
+ [`size--${vSize}`]: vSize,
37563
+ 'is--vertical': vertical
37564
+ }]
37565
+ }, defaultSlot ? defaultSlot({}) : []);
37566
+ };
37567
+ $xeLayoutContainer.renderVN = renderVN;
37568
+ return $xeLayoutContainer;
37569
+ },
37570
+ render() {
37571
+ return this.renderVN();
37572
+ }
37573
+ }));
37574
+ ;// ./packages/layout-container/index.ts
37575
+
37576
+
37577
+
37578
+ const VxeLayoutContainer = Object.assign({}, layout_container, {
37579
+ install(app) {
37580
+ app.component(layout_container.name, layout_container);
37581
+ }
37582
+ });
37583
+ dynamicApp.use(VxeLayoutContainer);
37584
+ VxeUI.component(layout_container);
37585
+ const LayoutContainer = VxeLayoutContainer;
37586
+ /* harmony default export */ var packages_layout_container = (VxeLayoutContainer);
37587
+ ;// ./packages/layout-footer/src/layout-footer.ts
37588
+
37589
+
37590
+
37591
+
37592
+ /* harmony default export */ var layout_footer = (defineVxeComponent({
37593
+ name: 'VxeLayoutFooter',
37594
+ props: {
37595
+ fixed: Boolean,
37596
+ align: String
37597
+ },
37598
+ emits: [],
37599
+ setup(props, context) {
37600
+ const {
37601
+ slots,
37602
+ emit
37603
+ } = context;
37604
+ const xID = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();
37605
+ const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
37606
+ const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)({});
37607
+ const refMaps = {
37608
+ refElem
37609
+ };
37610
+ const computeMaps = {};
37611
+ const $xeLayoutFooter = {
36903
37612
  xID,
36904
37613
  props,
36905
37614
  context,
@@ -37194,6 +37903,7 @@ const Link = VxeLink;
37194
37903
 
37195
37904
 
37196
37905
 
37906
+
37197
37907
  const {
37198
37908
  errLog: menu_errLog
37199
37909
  } = createComponentLog('menu');
@@ -37256,6 +37966,7 @@ let nemuUniqueKey = 100000000;
37256
37966
  default: () => menu_getConfig().menu.size || menu_getConfig().size
37257
37967
  },
37258
37968
  menuConfig: Object,
37969
+ scrollbarConfig: Object,
37259
37970
  appendTo: {
37260
37971
  type: [String, Function],
37261
37972
  default: () => menu_getConfig().menu.appendTo
@@ -37305,6 +38016,9 @@ let nemuUniqueKey = 100000000;
37305
38016
  const propsOpts = computePropsOpts.value;
37306
38017
  return propsOpts.routerLink || 'routerLink';
37307
38018
  });
38019
+ const computeScrollbarOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
38020
+ return Object.assign({}, menu_getConfig().menu.scrollbarConfig, props.scrollbarConfig);
38021
+ });
37308
38022
  const computeCurrBorder = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
37309
38023
  const {
37310
38024
  border
@@ -37898,6 +38612,7 @@ let nemuUniqueKey = 100000000;
37898
38612
  const isCollapsed = computeIsCollapsed.value;
37899
38613
  const currBorder = computeCurrBorder.value;
37900
38614
  const varStyle = computeVarStyle.value;
38615
+ const scrollbarOpts = computeScrollbarOpts.value;
37901
38616
  const headerSlot = slots.header;
37902
38617
  const footerSlot = slots.footer;
37903
38618
  let ons = {};
@@ -37939,16 +38654,19 @@ let nemuUniqueKey = 100000000;
37939
38654
  ...ons
37940
38655
  }, isCollapsed ? [headerSlot ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37941
38656
  class: 'vxe-menu--header'
37942
- }, headerSlot(stParams)) : renderEmptyElement($xeMenu), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37943
- class: 'vxe-menu--body'
37944
- }, menuList.map(child => renderDefaultChildren(child, menuList))), footerSlot ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
38657
+ }, headerSlot(stParams)) : renderEmptyElement($xeMenu), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_scrollbar, {
38658
+ class: 'vxe-menu--body',
38659
+ ...scrollbarOpts
38660
+ }, {
38661
+ default: () => menuList.map(child => renderDefaultChildren(child, menuList))
38662
+ }), footerSlot ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37945
38663
  class: 'vxe-menu--footer'
37946
38664
  }, footerSlot(stParams)) : renderEmptyElement($xeMenu)] : [])]),
37947
38665
  /**
37948
38666
  * 加载中
37949
38667
  */
37950
38668
  (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_loading, {
37951
- class: 'vxe-list-view--loading',
38669
+ class: 'vxe-menu-view--loading',
37952
38670
  modelValue: loading
37953
38671
  })]);
37954
38672
  };
@@ -41942,7 +42660,7 @@ function select_createInternalData() {
41942
42660
  }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
41943
42661
  class: 'vxe-select-slots',
41944
42662
  ref: 'hideOption'
41945
- }, defaultSlot ? defaultSlot({}) : []), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(input, {
42663
+ }, defaultSlot ? defaultSlot({}) : []), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_input, {
41946
42664
  ref: refInput,
41947
42665
  clearable: props.clearable,
41948
42666
  placeholder: inpPlaceholder,
@@ -41981,7 +42699,7 @@ function select_createInternalData() {
41981
42699
  style: popupWrapperStyle
41982
42700
  }, [filterable ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
41983
42701
  class: 'vxe-select--panel-search'
41984
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(input, {
42702
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_input, {
41985
42703
  ref: refInpSearch,
41986
42704
  class: 'vxe-select-search--input',
41987
42705
  modelValue: reactData.searchValue,
@@ -42001,11 +42719,11 @@ function select_createInternalData() {
42001
42719
  class: 'vxe-select--header-button'
42002
42720
  }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
42003
42721
  class: 'vxe-select--header-btns'
42004
- }, [showCheckedButton && multiple ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
42722
+ }, [showCheckedButton && multiple ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
42005
42723
  content: getI18n('vxe.select.allChecked'),
42006
42724
  mode: 'text',
42007
42725
  onClick: allCheckedPanelEvent
42008
- }) : renderEmptyElement($xeSelect), showClearButton ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
42726
+ }) : renderEmptyElement($xeSelect), showClearButton ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
42009
42727
  content: getI18n('vxe.select.clear'),
42010
42728
  mode: 'text',
42011
42729
  onClick: clearCheckedPanelEvent
@@ -42034,7 +42752,7 @@ function select_createInternalData() {
42034
42752
  class: 'vxe-select--total-btns'
42035
42753
  }, getI18n('vxe.select.total', [selectVals.length, optList.length])) : renderEmptyElement($xeSelect), showCloseButton && multiple ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
42036
42754
  class: 'vxe-select--oper-btns'
42037
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
42755
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
42038
42756
  content: getI18n('vxe.select.close'),
42039
42757
  mode: 'text',
42040
42758
  onClick: closePanelEvent
@@ -45107,1044 +45825,422 @@ function src_group_createInternalData() {
45107
45825
  value
45108
45826
  }, null);
45109
45827
  };
45110
- const dispatchEvent = (type, params, evnt) => {
45111
- emit(type, createEvent(evnt, {
45112
- $radioGroup: $xeRadioGroup
45113
- }, params));
45114
- };
45115
- const radioGroupMethods = {
45116
- dispatchEvent
45117
- };
45118
- const radioGroupPrivateMethods = {
45119
- handleChecked(params, evnt) {
45120
- const {
45121
- checkedValue,
45122
- checkedLabel
45123
- } = params;
45124
- const value = checkedValue;
45125
- emitModel(value);
45126
- dispatchEvent('change', {
45127
- value,
45128
- label: value,
45129
- checkedValue,
45130
- checkedLabel
45131
- }, evnt);
45132
- // 自动更新校验状态
45133
- if ($xeForm && formItemInfo) {
45134
- $xeForm.triggerItemEvent(evnt, formItemInfo.itemConfig.field, value);
45135
- }
45136
- }
45137
- };
45138
- const loadData = datas => {
45139
- const {
45140
- isLoaded
45141
- } = internalData;
45142
- const defaultOpts = computeDefaultOpts.value;
45143
- const valueField = computeValueField.value;
45144
- if (!isLoaded) {
45145
- const {
45146
- selectMode
45147
- } = defaultOpts;
45148
- if (datas.length > 0 && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(props.modelValue)) {
45149
- if (selectMode === 'first' || selectMode === 'last') {
45150
- const selectItem = (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default())[selectMode](datas);
45151
- if (selectItem) {
45152
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(() => {
45153
- if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(props.modelValue)) {
45154
- emitDefaultValue(selectItem[valueField]);
45155
- }
45156
- });
45157
- }
45158
- }
45159
- internalData.isLoaded = true;
45160
- }
45161
- }
45162
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
45163
- };
45164
- Object.assign($xeRadioGroup, radioGroupMethods, radioGroupPrivateMethods);
45165
- const renderVN = () => {
45166
- const {
45167
- options,
45168
- type,
45169
- status
45170
- } = props;
45171
- const vSize = computeSize.value;
45172
- const defaultSlot = slots.default;
45173
- const valueField = computeValueField.value;
45174
- const labelField = computeLabelField.value;
45175
- const disabledField = computeDisabledField.value;
45176
- const iconField = computeIconField.value;
45177
- const titleField = computeTitleField.value;
45178
- const btnComp = type === 'button' ? radio_button : packages_radio;
45179
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
45180
- class: ['vxe-radio-group', `type--${type === 'button' ? type : ''}`, {
45181
- [`theme--${status}`]: status,
45182
- [`size--${vSize}`]: vSize
45183
- }]
45184
- }, defaultSlot ? defaultSlot({}) : options ? options.map(item => {
45185
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(btnComp, {
45186
- key: item[valueField],
45187
- checkedValue: item[valueField],
45188
- content: item[labelField],
45189
- icon: item[iconField],
45190
- title: item[titleField],
45191
- disabled: item[disabledField]
45192
- });
45193
- }) : []);
45194
- };
45195
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.options, val => {
45196
- loadData(val || []);
45197
- });
45198
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.onMounted)(() => {
45199
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(() => {
45200
- const {
45201
- options
45202
- } = props;
45203
- if (options) {
45204
- loadData(options);
45205
- }
45206
- });
45207
- });
45208
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.onUnmounted)(() => {
45209
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().assign(reactData, src_group_createReactData());
45210
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().assign(internalData, src_group_createInternalData());
45211
- });
45212
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.provide)('$xeRadioGroup', $xeRadioGroup);
45213
- $xeRadioGroup.renderVN = renderVN;
45214
- return $xeRadioGroup;
45215
- },
45216
- render() {
45217
- return this.renderVN();
45218
- }
45219
- }));
45220
- ;// ./packages/radio-group/index.ts
45221
-
45222
-
45223
-
45224
- const VxeRadioGroup = Object.assign(radio_src_group, {
45225
- install: function (app) {
45226
- app.component(radio_src_group.name, radio_src_group);
45227
- }
45228
- });
45229
- dynamicApp.use(VxeRadioGroup);
45230
- VxeUI.component(radio_src_group);
45231
- const RadioGroup = VxeRadioGroup;
45232
- /* harmony default export */ var radio_group = (VxeRadioGroup);
45233
- ;// ./packages/rate/src/rate.ts
45234
-
45235
-
45236
-
45237
-
45238
-
45239
-
45240
- /* harmony default export */ var rate = (defineVxeComponent({
45241
- name: 'VxeRate',
45242
- props: {
45243
- modelValue: [Number, String],
45244
- disabled: {
45245
- type: Boolean,
45246
- default: null
45247
- },
45248
- readonly: {
45249
- type: Boolean,
45250
- default: null
45251
- },
45252
- size: {
45253
- type: String,
45254
- default: () => getConfig().rate.size || getConfig().size
45255
- },
45256
- status: String
45257
- },
45258
- emits: ['update:modelValue', 'change'],
45259
- setup(props, context) {
45260
- const {
45261
- emit
45262
- } = context;
45263
- const $xeForm = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.inject)('$xeForm', null);
45264
- const formItemInfo = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.inject)('xeFormItemInfo', null);
45265
- const xID = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();
45266
- const {
45267
- computeSize
45268
- } = useSize(props);
45269
- const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
45270
- const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)({
45271
- activeValue: null
45272
- });
45273
- const refMaps = {
45274
- refElem
45275
- };
45276
- const computeIsDisabled = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
45277
- const {
45278
- disabled
45279
- } = props;
45280
- if (disabled === null) {
45281
- if ($xeForm) {
45282
- return $xeForm.props.readonly || $xeForm.props.disabled;
45283
- }
45284
- return false;
45285
- }
45286
- return disabled;
45287
- });
45288
- const computeIsReadonly = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
45289
- const {
45290
- readonly
45291
- } = props;
45292
- if (readonly === null) {
45293
- if ($xeForm) {
45294
- return $xeForm.props.readonly || $xeForm.props.disabled;
45295
- }
45296
- return false;
45297
- }
45298
- return readonly;
45299
- });
45300
- const computeNumVal = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
45301
- const {
45302
- modelValue
45303
- } = props;
45304
- const {
45305
- activeValue
45306
- } = reactData;
45307
- return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(activeValue === null ? modelValue : activeValue);
45308
- });
45309
- const computeItemList = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
45310
- return [1, 2, 3, 4, 5].map(num => {
45311
- return {
45312
- value: num,
45313
- label: num
45314
- };
45315
- });
45316
- });
45317
- const computeMaps = {};
45318
- const $xeRate = {
45319
- xID,
45320
- props,
45321
- context,
45322
- reactData,
45323
- getRefMaps: () => refMaps,
45324
- getComputeMaps: () => computeMaps
45325
- };
45326
- const dispatchEvent = (type, params, evnt) => {
45327
- emit(type, createEvent(evnt, {
45328
- $rate: $xeRate
45329
- }, params));
45330
- };
45331
- const rateMethods = {
45332
- dispatchEvent
45333
- };
45334
- const ratePrivateMethods = {};
45335
- const emitModel = value => {
45336
- emit('update:modelValue', value);
45337
- };
45338
- const mouseenterEvent = (evnt, item) => {
45339
- const isDisabled = computeIsDisabled.value;
45340
- const isReadonly = computeIsReadonly.value;
45341
- if (!(isDisabled || isReadonly)) {
45342
- const value = item.value;
45343
- reactData.activeValue = value;
45344
- }
45345
- };
45346
- const mouseleaveEvent = () => {
45347
- reactData.activeValue = null;
45348
- };
45349
- const clickEvent = (evnt, item) => {
45350
- const isDisabled = computeIsDisabled.value;
45351
- const isReadonly = computeIsReadonly.value;
45352
- if (!(isDisabled || isReadonly)) {
45353
- const value = item.value;
45354
- emitModel(value);
45355
- dispatchEvent('change', {
45356
- value
45357
- }, evnt);
45358
- // 自动更新校验状态
45359
- if ($xeForm && formItemInfo) {
45360
- $xeForm.triggerItemEvent(evnt, formItemInfo.itemConfig.field, value);
45361
- }
45362
- }
45363
- };
45364
- Object.assign($xeRate, rateMethods, ratePrivateMethods);
45365
- const renderVN = () => {
45366
- const {
45367
- status
45368
- } = props;
45369
- const isDisabled = computeIsDisabled.value;
45370
- const isReadonly = computeIsReadonly.value;
45371
- const itemList = computeItemList.value;
45372
- const vSize = computeSize.value;
45373
- const numVal = computeNumVal.value;
45374
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
45375
- ref: refElem,
45376
- class: ['vxe-rate', {
45377
- [`size--${vSize}`]: vSize,
45378
- [`theme--${status}`]: status,
45379
- 'is--disabled': isDisabled,
45380
- 'is--readonly': isReadonly
45381
- }]
45382
- }, itemList.map(item => {
45383
- const isChecked = numVal >= item.value;
45384
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
45385
- class: ['vxe-rte--item', {
45386
- 'is--checked': isChecked
45387
- }],
45388
- onMouseenter(evnt) {
45389
- if (!(isDisabled || isReadonly)) {
45390
- mouseenterEvent(evnt, item);
45391
- }
45392
- },
45393
- onMouseleave: mouseleaveEvent,
45394
- onClick(evnt) {
45395
- if (!(isDisabled || isReadonly)) {
45396
- clickEvent(evnt, item);
45397
- }
45398
- }
45399
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('i', {
45400
- class: isChecked ? getIcon().RATE_CHECKED : getIcon().RATE_UNCHECKED
45401
- })]);
45402
- }));
45403
- };
45404
- $xeRate.renderVN = renderVN;
45405
- return $xeRate;
45406
- },
45407
- render() {
45408
- return this.renderVN();
45409
- }
45410
- }));
45411
- ;// ./packages/rate/index.ts
45412
-
45413
-
45414
-
45415
- const VxeRate = Object.assign({}, rate, {
45416
- install(app) {
45417
- app.component(rate.name, rate);
45418
- }
45419
- });
45420
- dynamicApp.use(VxeRate);
45421
- VxeUI.component(rate);
45422
- const Rate = VxeRate;
45423
- /* harmony default export */ var packages_rate = (VxeRate);
45424
- ;// ./packages/result/src/result.ts
45425
-
45426
-
45427
-
45428
-
45429
- /* harmony default export */ var result = (defineVxeComponent({
45430
- name: 'VxeResult',
45431
- props: {
45432
- imageUrl: String,
45433
- imageStyle: Object,
45434
- icon: String,
45435
- type: [String, Number],
45436
- status: [String, Number],
45437
- title: [String, Number],
45438
- content: [String, Number]
45439
- },
45440
- emits: [],
45441
- setup(props, context) {
45442
- const {
45443
- emit,
45444
- slots
45445
- } = context;
45446
- const xID = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();
45447
- const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
45448
- const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)({});
45449
- const refMaps = {
45450
- refElem
45451
- };
45452
- const computeMaps = {};
45453
- const $xeResult = {
45454
- xID,
45455
- props,
45456
- context,
45457
- reactData,
45458
- getRefMaps: () => refMaps,
45459
- getComputeMaps: () => computeMaps
45460
- };
45461
- const dispatchEvent = (type, params, evnt) => {
45462
- emit(type, createEvent(evnt, {
45463
- $result: $xeResult
45464
- }, params));
45465
- };
45466
- const resultMethods = {
45467
- dispatchEvent
45468
- };
45469
- const resultPrivateMethods = {};
45470
- Object.assign($xeResult, resultMethods, resultPrivateMethods);
45471
- const renderVN = () => {
45472
- const {
45473
- imageUrl,
45474
- imageStyle,
45475
- icon,
45476
- title,
45477
- type,
45478
- content
45479
- } = props;
45480
- const status = props.status || type;
45481
- const slotExtra = slots.extra;
45482
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
45483
- ref: refElem,
45484
- class: ['vxe-result', {
45485
- [`theme--${status}`]: status
45486
- }]
45487
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
45488
- class: 'vxe-result--inner'
45489
- }, [imageUrl ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
45490
- class: 'vxe-result--img-wrapper'
45491
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('img', {
45492
- src: imageUrl,
45493
- style: imageStyle
45494
- })]) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
45495
- class: 'vxe-result--icon-wrapper'
45496
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('i', {
45497
- class: [icon, type ? getIcon()[`RESULT_${type}`.toLocaleUpperCase()] : '']
45498
- })]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
45499
- class: 'vxe-result--title-wrapper'
45500
- }, `${title || ''}`), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
45501
- class: 'vxe-result--content-wrapper'
45502
- }, `${content || ''}`), slotExtra ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
45503
- class: 'vxe-result--extra-wrapper'
45504
- }, slotExtra({})) : renderEmptyElement($xeResult)])]);
45505
- };
45506
- $xeResult.renderVN = renderVN;
45507
- return $xeResult;
45508
- },
45509
- render() {
45510
- return this.renderVN();
45511
- }
45512
- }));
45513
- ;// ./packages/result/index.ts
45514
-
45515
-
45516
-
45517
- const VxeResult = Object.assign({}, result, {
45518
- install(app) {
45519
- app.component(result.name, result);
45520
- }
45521
- });
45522
- dynamicApp.use(VxeResult);
45523
- VxeUI.component(result);
45524
- const Result = VxeResult;
45525
- /* harmony default export */ var packages_result = (VxeResult);
45526
- ;// ./packages/scrollbar/src/util.ts
45527
- /**
45528
- * 计算滚动条滑块的长度
45529
- */
45530
- function getThumbSize(viewportSize, contentSize, trackSize) {
45531
- if (contentSize <= viewportSize) {
45532
- return 0;
45533
- }
45534
- const ratio = viewportSize / contentSize;
45535
- const ideal = trackSize * ratio;
45536
- return Math.max(20, Math.min(ideal, trackSize));
45537
- }
45538
- /**
45539
- * 计算滚动条滑块的偏移位置
45540
- */
45541
- function getThumbOffsetSize(offsetSize, viewportSize, contentSize, trackSize, thumbSize) {
45542
- const maxScroll = contentSize - viewportSize;
45543
- if (maxScroll <= 0) {
45544
- return 0;
45545
- }
45546
- const maxThumbOffset = trackSize - thumbSize;
45547
- if (maxThumbOffset <= 0) {
45548
- return 0;
45549
- }
45550
- const clamped = Math.min(Math.max(offsetSize, 0), maxScroll);
45551
- const ratio = clamped / maxScroll;
45552
- return ratio * maxThumbOffset;
45553
- }
45554
- /**
45555
- * 根据点击轨道的位置,计算滑块的偏移位置
45556
- */
45557
- function getScrollFromClick(clickPosition, viewportSize, contentSize, trackSize, thumbSize) {
45558
- const maxThumbOffset = trackSize - thumbSize;
45559
- const maxScroll = contentSize - viewportSize;
45560
- if (maxScroll <= 0 || maxThumbOffset <= 0) {
45561
- return 0;
45562
- }
45563
- let thumbOffset = clickPosition - thumbSize / 2;
45564
- thumbOffset = Math.min(Math.max(thumbOffset, 0), maxThumbOffset);
45565
- const scrollOffset = thumbOffset / maxThumbOffset * maxScroll;
45566
- return scrollOffset;
45567
- }
45568
- /**
45569
- * 拖拽 thumb 时,根据鼠标位置计算滑块的偏移位置
45570
- */
45571
- function getScrollFromDrag(pointerPosition, dragOffset, viewportSize, contentSize, trackSize, thumbSize) {
45572
- const maxScroll = contentSize - viewportSize;
45573
- const maxThumbOffset = trackSize - thumbSize;
45574
- if (maxScroll <= 0 || maxThumbOffset <= 0) {
45575
- return 0;
45576
- }
45577
- let thumbOffset = pointerPosition - dragOffset;
45578
- thumbOffset = Math.min(Math.max(thumbOffset, 0), maxThumbOffset);
45579
- return thumbOffset / maxThumbOffset * maxScroll;
45580
- }
45581
- ;// ./packages/scrollbar/src/scrollbar.ts
45582
-
45583
-
45584
-
45585
-
45586
-
45587
-
45588
-
45589
- const {
45590
- getConfig: scrollbar_getConfig,
45591
- createEvent: scrollbar_createEvent,
45592
- domUtils: scrollbar_domUtils,
45593
- globalResize: scrollbar_globalResize,
45594
- renderEmptyElement: scrollbar_renderEmptyElement
45595
- } = VxeUI;
45596
- function scrollbar_createReactData() {
45597
- return {
45598
- yThumbHeight: 0,
45599
- xThumbWidth: 0
45600
- };
45601
- }
45602
- function scrollbar_createInternalData() {
45603
- return {
45604
- // resizeObserver: undefined,
45605
- // isThumbDrag: false,
45606
- thumbDragOffset: 0,
45607
- yThumbTop: 0,
45608
- xThumbLeft: 0,
45609
- lastScrollTop: 0,
45610
- lastScrollLeft: 0
45611
- };
45612
- }
45613
- /* harmony default export */ var scrollbar = (defineVxeComponent({
45614
- name: 'VxeScrollbar',
45615
- props: {
45616
- width: [String, Number],
45617
- height: [String, Number],
45618
- minWidth: [String, Number],
45619
- minHeight: [String, Number],
45620
- maxWidth: [String, Number],
45621
- maxHeight: [String, Number],
45622
- loading: Boolean,
45623
- native: {
45624
- type: Boolean,
45625
- default: () => scrollbar_getConfig().scrollbar.native
45626
- },
45627
- xConfig: Object,
45628
- yConfig: Object,
45629
- className: String,
45630
- viewClassName: String,
45631
- autoResize: {
45632
- type: Boolean,
45633
- default: () => scrollbar_getConfig().scrollbar.autoResize
45634
- },
45635
- syncResize: [Boolean, String, Number]
45636
- },
45637
- emits: ['scroll', 'scroll-boundary'],
45638
- setup(props, context) {
45639
- const {
45640
- emit,
45641
- slots
45642
- } = context;
45643
- const xID = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();
45644
- const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
45645
- const refViewElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
45646
- const refViewInnerElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
45647
- const refTrackXElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
45648
- const refTrackYElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
45649
- const refThumbXElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
45650
- const refThumbYElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
45651
- const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)(scrollbar_createReactData());
45652
- const internalData = scrollbar_createInternalData();
45653
- const computeWrapperStyle = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
45654
- const {
45655
- width,
45656
- height,
45657
- minWidth,
45658
- minHeight,
45659
- maxWidth,
45660
- maxHeight
45661
- } = props;
45662
- const xOpts = computeXOpts.value;
45663
- const yOpts = computeYOpts.value;
45664
- const stys = {};
45665
- if (width) {
45666
- stys.width = toCssUnit(width);
45667
- }
45668
- if (height) {
45669
- stys.height = toCssUnit(height);
45670
- }
45671
- if (minWidth) {
45672
- stys.minWidth = toCssUnit(minWidth);
45673
- }
45674
- if (minHeight) {
45675
- stys.minHeight = toCssUnit(minHeight);
45676
- }
45677
- if (maxWidth) {
45678
- stys.maxWidth = toCssUnit(maxWidth);
45679
- }
45680
- if (maxHeight) {
45681
- stys.maxHeight = toCssUnit(maxHeight);
45682
- }
45683
- if (yOpts.width) {
45684
- stys['--vxe-ui-scrollbar-y-width'] = toCssUnit(yOpts.width);
45685
- }
45686
- if (xOpts.height) {
45687
- stys['--vxe-ui-scrollbar-x-height'] = toCssUnit(xOpts.height);
45688
- }
45689
- return stys;
45690
- });
45691
- const computeWrapperClss = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
45692
- const {
45693
- native,
45694
- className
45695
- } = props;
45696
- const xOpts = computeXOpts.value;
45697
- const yOpts = computeYOpts.value;
45698
- return scrollbar_domUtils.buildClass(['vxe-scrollbar', `ov-x--${xOpts.visible || 'visible'}`, `ov-y--${yOpts.visible || 'visible'}`, native ? 'is--native' : 'is--virtual', className], {
45699
- 'ov-x--auto-hide': xOpts.autoHide,
45700
- 'ov-y--auto-hide': yOpts.autoHide
45701
- });
45702
- });
45703
- const computeViewClss = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
45704
- const {
45705
- viewClassName
45706
- } = props;
45707
- return scrollbar_domUtils.buildClass(['vxe-scrollbar--view', viewClassName]);
45708
- });
45709
- const computeXOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
45710
- return Object.assign({}, scrollbar_getConfig().scrollbar.xConfig, props.xConfig);
45711
- });
45712
- const computeYOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
45713
- return Object.assign({}, scrollbar_getConfig().scrollbar.yConfig, props.yConfig);
45714
- });
45715
- const refMaps = {
45716
- refElem
45717
- };
45718
- const computeMaps = {};
45719
- const $xeScrollbar = {
45720
- xID,
45721
- props,
45722
- context,
45723
- reactData,
45724
- internalData,
45725
- getRefMaps: () => refMaps,
45726
- getComputeMaps: () => computeMaps
45727
- };
45728
- const dispatchEvent = (type, params, evnt) => {
45729
- emit(type, scrollbar_createEvent(evnt, {
45730
- $scrollbar: $xeScrollbar
45731
- }, params));
45732
- };
45733
- const scrollbarMethods = {
45734
- dispatchEvent,
45735
- scrollTo(left, top) {
45736
- const viewEl = refViewElem.value;
45737
- if (viewEl) {
45738
- if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isNumber(left)) {
45739
- viewEl.scrollTo(left, top || 0);
45740
- } else {
45741
- viewEl.scrollTo(left);
45742
- }
45743
- }
45744
- },
45745
- scrollIntoView() {
45746
- const viewEl = refViewElem.value;
45747
- if (viewEl) {
45748
- viewEl.scrollIntoView();
45749
- }
45750
- },
45751
- recalculate() {
45752
- updateThumbSize();
45753
- updateThumbOffset();
45754
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
45755
- }
45756
- };
45757
- const updateThumbSize = () => {
45758
- const viewEl = refViewElem.value;
45759
- if (!viewEl) {
45760
- return;
45761
- }
45762
- const trackXEl = refTrackXElem.value;
45763
- const xThumbWidth = trackXEl ? getThumbSize(viewEl.clientWidth, viewEl.scrollWidth, trackXEl.clientWidth) : 0;
45764
- const thumbXElem = refThumbXElem.value;
45765
- if (thumbXElem) {
45766
- thumbXElem.style.width = xThumbWidth + 'px';
45767
- }
45768
- reactData.xThumbWidth = xThumbWidth;
45769
- const trackYEl = refTrackYElem.value;
45770
- const yThumbHeight = trackYEl ? getThumbSize(viewEl.clientHeight, viewEl.scrollHeight, trackYEl.clientHeight) : 0;
45771
- const thumbYElem = refThumbYElem.value;
45772
- if (thumbYElem) {
45773
- thumbYElem.style.height = yThumbHeight + 'px';
45774
- }
45775
- reactData.yThumbHeight = yThumbHeight;
45776
- };
45777
- const updateThumbOffset = () => {
45778
- const viewEl = refViewElem.value;
45779
- if (!viewEl) {
45780
- return;
45781
- }
45782
- const {
45783
- xThumbWidth,
45784
- yThumbHeight
45785
- } = reactData;
45786
- const trackXEl = refTrackXElem.value;
45787
- const thumbXElem = refThumbXElem.value;
45788
- const xThumbLeft = trackXEl && xThumbWidth ? getThumbOffsetSize(viewEl.scrollLeft, viewEl.clientWidth, viewEl.scrollWidth, trackXEl.clientWidth, xThumbWidth) : 0;
45789
- internalData.xThumbLeft = xThumbLeft;
45790
- if (thumbXElem && xThumbWidth) {
45791
- thumbXElem.style.width = xThumbWidth + 'px';
45792
- thumbXElem.style.transform = `translateX(${xThumbLeft}px)`;
45793
- }
45794
- const trackYEl = refTrackYElem.value;
45795
- const thumbYElem = refThumbYElem.value;
45796
- const yThumbTop = trackYEl && yThumbHeight ? getThumbOffsetSize(viewEl.scrollTop, viewEl.clientHeight, viewEl.scrollHeight, trackYEl.clientHeight, yThumbHeight) : 0;
45797
- internalData.yThumbTop = yThumbTop;
45798
- if (thumbYElem && yThumbHeight) {
45799
- thumbYElem.style.height = yThumbHeight + 'px';
45800
- thumbYElem.style.transform = `translateY(${yThumbTop}px)`;
45801
- }
45802
- };
45803
- const scrollEvent = evnt => {
45804
- const {
45805
- xThumbWidth,
45806
- yThumbHeight
45807
- } = reactData;
45808
- const {
45809
- lastScrollTop,
45810
- lastScrollLeft
45811
- } = internalData;
45812
- const xOpts = computeXOpts.value;
45813
- const yOpts = computeYOpts.value;
45814
- const viewEl = evnt.currentTarget;
45815
- const {
45816
- scrollTop,
45817
- scrollLeft,
45818
- clientWidth,
45819
- clientHeight,
45820
- scrollHeight,
45821
- scrollWidth
45822
- } = viewEl;
45823
- let direction = '';
45824
- let isTopBoundary = false;
45825
- let isBottomBoundary = false;
45826
- let isLeftBoundary = false;
45827
- let isRightBoundary = false;
45828
- if (lastScrollTop !== scrollTop) {
45829
- const yThreshold = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(yOpts.threshold) || 1;
45830
- if (lastScrollTop < scrollTop) {
45831
- direction = 'bottom';
45832
- if (yThumbHeight > 0 && scrollTop + clientHeight >= scrollHeight - yThreshold) {
45833
- isBottomBoundary = true;
45834
- }
45835
- } else {
45836
- direction = 'top';
45837
- if (yThumbHeight > 0 && scrollTop <= yThreshold) {
45838
- isTopBoundary = true;
45839
- }
45840
- }
45841
- }
45842
- if (lastScrollLeft !== scrollLeft) {
45843
- const xThreshold = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(xOpts.threshold) || 1;
45844
- if (lastScrollLeft < scrollLeft) {
45845
- direction = 'right';
45846
- if (xThumbWidth > 0 && scrollLeft + clientWidth >= scrollWidth - xThreshold) {
45847
- isRightBoundary = true;
45848
- }
45849
- } else {
45850
- direction = 'left';
45851
- if (xThumbWidth > 0 && scrollLeft <= xThreshold) {
45852
- isLeftBoundary = true;
45853
- }
45854
- }
45855
- }
45856
- updateThumbOffset();
45857
- internalData.lastScrollTop = scrollTop;
45858
- internalData.lastScrollLeft = scrollLeft;
45859
- if (isBottomBoundary || isTopBoundary || isRightBoundary || isLeftBoundary) {
45860
- dispatchEvent('scroll-boundary', {
45861
- direction: direction,
45862
- isTop: isTopBoundary,
45863
- isBottom: isBottomBoundary,
45864
- isLeft: isLeftBoundary,
45865
- isRight: isRightBoundary,
45866
- scrollTop: scrollTop,
45867
- scrollLeft: scrollLeft,
45868
- clientWidth: clientWidth,
45869
- clientHeight: clientHeight,
45870
- scrollHeight: scrollHeight,
45871
- scrollWidth: scrollWidth
45872
- }, evnt);
45873
- }
45874
- dispatchEvent('scroll', {
45875
- direction: direction,
45876
- isTop: yThumbHeight > 0 && scrollTop <= 0,
45877
- isBottom: yThumbHeight > 0 && scrollTop + clientHeight >= scrollHeight,
45878
- isLeft: xThumbWidth > 0 && scrollLeft <= 0,
45879
- isRight: xThumbWidth > 0 && scrollLeft + clientWidth >= scrollWidth,
45880
- scrollTop: scrollTop,
45881
- scrollLeft: scrollLeft,
45882
- clientWidth: clientWidth,
45883
- clientHeight: clientHeight,
45884
- scrollHeight: scrollHeight,
45885
- scrollWidth: scrollWidth
45886
- }, evnt);
45887
- };
45888
- const clickTrackXEvent = evnt => {
45889
- const trackEl = evnt.currentTarget;
45890
- if (trackEl !== evnt.target) {
45891
- return;
45892
- }
45893
- const viewEl = refViewElem.value;
45894
- if (!viewEl) {
45895
- return;
45896
- }
45897
- const {
45898
- xThumbWidth
45899
- } = reactData;
45900
- const trackRect = trackEl.getBoundingClientRect();
45901
- viewEl.scrollTo({
45902
- left: getScrollFromClick(evnt.clientX - trackRect.left, viewEl.clientWidth, viewEl.scrollWidth, trackEl.clientWidth, xThumbWidth),
45903
- behavior: 'auto'
45904
- });
45905
- };
45906
- const clickTrackYEvent = evnt => {
45907
- const trackEl = evnt.currentTarget;
45908
- if (trackEl !== evnt.target) {
45909
- return;
45910
- }
45911
- const viewEl = refViewElem.value;
45912
- if (!viewEl) {
45913
- return;
45914
- }
45915
- const {
45916
- yThumbHeight
45917
- } = reactData;
45918
- const trackRect = trackEl.getBoundingClientRect();
45919
- viewEl.scrollTo({
45920
- top: getScrollFromClick(evnt.clientY - trackRect.top, viewEl.clientHeight, viewEl.scrollHeight, trackEl.clientHeight, yThumbHeight),
45921
- behavior: 'auto'
45922
- });
45923
- };
45924
- const pointerdownThumbXEvent = evnt => {
45925
- const thumbEl = evnt.currentTarget;
45926
- internalData.isThumbDrag = true;
45927
- thumbEl.setPointerCapture(evnt.pointerId);
45928
- const viewEl = refViewElem.value;
45929
- if (!viewEl) {
45930
- return;
45931
- }
45932
- const {
45933
- xThumbWidth
45934
- } = reactData;
45935
- const trackEl = thumbEl.parentElement;
45936
- const trackRect = trackEl.getBoundingClientRect();
45937
- const pointerPosition = evnt.clientX - trackRect.left;
45938
- // 记录 thumb 的偏移
45939
- const thumbOffset = getThumbOffsetSize(viewEl.scrollLeft, viewEl.clientWidth, viewEl.scrollWidth, trackEl.clientWidth, xThumbWidth);
45940
- internalData.thumbDragOffset = pointerPosition - thumbOffset;
45941
- };
45942
- const pointermoveThumbXEvent = evnt => {
45943
- const thumbEl = evnt.currentTarget;
45944
- if (!thumbEl.hasPointerCapture(evnt.pointerId)) {
45945
- return;
45946
- }
45947
- const {
45948
- isThumbDrag,
45949
- thumbDragOffset
45950
- } = internalData;
45951
- if (isThumbDrag) {
45952
- const viewEl = refViewElem.value;
45953
- if (!viewEl) {
45954
- return;
45955
- }
45956
- const {
45957
- xThumbWidth
45958
- } = reactData;
45959
- const thumbEl = evnt.currentTarget;
45960
- const trackEl = thumbEl.parentElement;
45961
- const trackRect = trackEl.getBoundingClientRect();
45962
- // 更新偏移
45963
- viewEl.scrollLeft = getScrollFromDrag(evnt.clientX - trackRect.left, thumbDragOffset, viewEl.clientWidth, viewEl.scrollWidth, trackEl.clientWidth, xThumbWidth);
45964
- }
45965
- };
45966
- const cleatPointerThumbEvent = evnt => {
45967
- const thumbEl = evnt.currentTarget;
45968
- thumbEl.releasePointerCapture(evnt.pointerId);
45969
- internalData.isThumbDrag = false;
45970
- };
45971
- const pointerdownThumbYEvent = evnt => {
45972
- const thumbEl = evnt.currentTarget;
45973
- internalData.isThumbDrag = true;
45974
- thumbEl.setPointerCapture(evnt.pointerId);
45975
- const viewEl = refViewElem.value;
45976
- if (!viewEl) {
45977
- return;
45978
- }
45979
- const {
45980
- yThumbHeight
45981
- } = reactData;
45982
- const trackEl = thumbEl.parentElement;
45983
- const trackRect = trackEl.getBoundingClientRect();
45984
- const pointerPosition = evnt.clientY - trackRect.top;
45985
- // 记录 thumb 的偏移
45986
- const thumbOffset = getThumbOffsetSize(viewEl.scrollTop, viewEl.clientHeight, viewEl.scrollHeight, trackEl.clientHeight, yThumbHeight);
45987
- internalData.thumbDragOffset = pointerPosition - thumbOffset;
45828
+ const dispatchEvent = (type, params, evnt) => {
45829
+ emit(type, createEvent(evnt, {
45830
+ $radioGroup: $xeRadioGroup
45831
+ }, params));
45988
45832
  };
45989
- const pointermoveThumbYEvent = evnt => {
45990
- const thumbEl = evnt.currentTarget;
45991
- if (!thumbEl.hasPointerCapture(evnt.pointerId)) {
45992
- return;
45833
+ const radioGroupMethods = {
45834
+ dispatchEvent
45835
+ };
45836
+ const radioGroupPrivateMethods = {
45837
+ handleChecked(params, evnt) {
45838
+ const {
45839
+ checkedValue,
45840
+ checkedLabel
45841
+ } = params;
45842
+ const value = checkedValue;
45843
+ emitModel(value);
45844
+ dispatchEvent('change', {
45845
+ value,
45846
+ label: value,
45847
+ checkedValue,
45848
+ checkedLabel
45849
+ }, evnt);
45850
+ // 自动更新校验状态
45851
+ if ($xeForm && formItemInfo) {
45852
+ $xeForm.triggerItemEvent(evnt, formItemInfo.itemConfig.field, value);
45853
+ }
45993
45854
  }
45855
+ };
45856
+ const loadData = datas => {
45994
45857
  const {
45995
- isThumbDrag,
45996
- thumbDragOffset
45858
+ isLoaded
45997
45859
  } = internalData;
45998
- if (isThumbDrag) {
45999
- const viewEl = refViewElem.value;
46000
- if (!viewEl) {
46001
- return;
46002
- }
45860
+ const defaultOpts = computeDefaultOpts.value;
45861
+ const valueField = computeValueField.value;
45862
+ if (!isLoaded) {
46003
45863
  const {
46004
- yThumbHeight
46005
- } = reactData;
46006
- const thumbEl = evnt.currentTarget;
46007
- const trackEl = thumbEl.parentElement;
46008
- const trackRect = trackEl.getBoundingClientRect();
46009
- // 更新偏移
46010
- viewEl.scrollTop = getScrollFromDrag(evnt.clientY - trackRect.top, thumbDragOffset, viewEl.clientHeight, viewEl.scrollHeight, trackEl.clientHeight, yThumbHeight);
45864
+ selectMode
45865
+ } = defaultOpts;
45866
+ if (datas.length > 0 && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(props.modelValue)) {
45867
+ if (selectMode === 'first' || selectMode === 'last') {
45868
+ const selectItem = (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default())[selectMode](datas);
45869
+ if (selectItem) {
45870
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(() => {
45871
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(props.modelValue)) {
45872
+ emitDefaultValue(selectItem[valueField]);
45873
+ }
45874
+ });
45875
+ }
45876
+ }
45877
+ internalData.isLoaded = true;
45878
+ }
46011
45879
  }
45880
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
46012
45881
  };
46013
- const scrollbarPrivateMethods = {};
46014
- Object.assign($xeScrollbar, scrollbarMethods, scrollbarPrivateMethods);
45882
+ Object.assign($xeRadioGroup, radioGroupMethods, radioGroupPrivateMethods);
46015
45883
  const renderVN = () => {
46016
45884
  const {
46017
- native,
46018
- loading,
46019
- autoResize
45885
+ options,
45886
+ type,
45887
+ status
46020
45888
  } = props;
46021
- const wrapperStyle = computeWrapperStyle.value;
46022
- const wrapperClss = computeWrapperClss.value;
46023
- const viewClss = computeViewClss.value;
46024
- const xOpts = computeXOpts.value;
46025
- const yOpts = computeYOpts.value;
45889
+ const vSize = computeSize.value;
46026
45890
  const defaultSlot = slots.default;
45891
+ const valueField = computeValueField.value;
45892
+ const labelField = computeLabelField.value;
45893
+ const disabledField = computeDisabledField.value;
45894
+ const iconField = computeIconField.value;
45895
+ const titleField = computeTitleField.value;
45896
+ const btnComp = type === 'button' ? radio_button : packages_radio;
46027
45897
  return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46028
- ref: refElem,
46029
- class: wrapperClss,
46030
- style: wrapperStyle
46031
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46032
- ref: refViewElem,
46033
- class: viewClss,
46034
- onScroll: scrollEvent
46035
- }, autoResize ? [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46036
- key: 'vi',
46037
- ref: refViewInnerElem,
46038
- class: 'vxe-scrollbar--view-inner'
46039
- }, defaultSlot ? defaultSlot({}) : [])] : defaultSlot ? defaultSlot({}) : []), native || xOpts.visible === 'hidden' ? scrollbar_renderEmptyElement($xeScrollbar) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46040
- ref: refTrackXElem,
46041
- class: 'vxe-scrollbar--track-x',
46042
- onClick: clickTrackXEvent
46043
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46044
- ref: refThumbXElem,
46045
- class: 'vxe-scrollbar--thumb-x',
46046
- onPointerdown: pointerdownThumbXEvent,
46047
- onPointermove: pointermoveThumbXEvent,
46048
- onPointerup: cleatPointerThumbEvent,
46049
- onPointercancel: cleatPointerThumbEvent,
46050
- onLostpointercapture: cleatPointerThumbEvent
46051
- })]), native || yOpts.visible === 'hidden' ? scrollbar_renderEmptyElement($xeScrollbar) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46052
- ref: refTrackYElem,
46053
- class: 'vxe-scrollbar--track-y',
46054
- onClick: clickTrackYEvent
46055
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46056
- ref: refThumbYElem,
46057
- class: 'vxe-scrollbar--thumb-y',
46058
- onPointerdown: pointerdownThumbYEvent,
46059
- onPointermove: pointermoveThumbYEvent,
46060
- onPointerup: cleatPointerThumbEvent,
46061
- onPointercancel: cleatPointerThumbEvent,
46062
- onLostpointercapture: cleatPointerThumbEvent
46063
- })]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_loading, {
46064
- class: 'vxe-scrollbar--loading',
46065
- modelValue: loading
46066
- })]);
45898
+ class: ['vxe-radio-group', `type--${type === 'button' ? type : ''}`, {
45899
+ [`theme--${status}`]: status,
45900
+ [`size--${vSize}`]: vSize
45901
+ }]
45902
+ }, defaultSlot ? defaultSlot({}) : options ? options.map(item => {
45903
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(btnComp, {
45904
+ key: item[valueField],
45905
+ checkedValue: item[valueField],
45906
+ content: item[labelField],
45907
+ icon: item[iconField],
45908
+ title: item[titleField],
45909
+ disabled: item[disabledField]
45910
+ });
45911
+ }) : []);
46067
45912
  };
46068
- const reFlag = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)(0);
46069
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.height, () => {
46070
- reFlag.value++;
46071
- });
46072
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.width, () => {
46073
- reFlag.value++;
45913
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.options, val => {
45914
+ loadData(val || []);
46074
45915
  });
46075
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.minHeight, () => {
46076
- reFlag.value++;
45916
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.onMounted)(() => {
45917
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(() => {
45918
+ const {
45919
+ options
45920
+ } = props;
45921
+ if (options) {
45922
+ loadData(options);
45923
+ }
45924
+ });
46077
45925
  });
46078
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.minWidth, () => {
46079
- reFlag.value++;
45926
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.onUnmounted)(() => {
45927
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().assign(reactData, src_group_createReactData());
45928
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().assign(internalData, src_group_createInternalData());
46080
45929
  });
46081
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.maxHeight, () => {
46082
- reFlag.value++;
45930
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.provide)('$xeRadioGroup', $xeRadioGroup);
45931
+ $xeRadioGroup.renderVN = renderVN;
45932
+ return $xeRadioGroup;
45933
+ },
45934
+ render() {
45935
+ return this.renderVN();
45936
+ }
45937
+ }));
45938
+ ;// ./packages/radio-group/index.ts
45939
+
45940
+
45941
+
45942
+ const VxeRadioGroup = Object.assign(radio_src_group, {
45943
+ install: function (app) {
45944
+ app.component(radio_src_group.name, radio_src_group);
45945
+ }
45946
+ });
45947
+ dynamicApp.use(VxeRadioGroup);
45948
+ VxeUI.component(radio_src_group);
45949
+ const RadioGroup = VxeRadioGroup;
45950
+ /* harmony default export */ var radio_group = (VxeRadioGroup);
45951
+ ;// ./packages/rate/src/rate.ts
45952
+
45953
+
45954
+
45955
+
45956
+
45957
+
45958
+ /* harmony default export */ var rate = (defineVxeComponent({
45959
+ name: 'VxeRate',
45960
+ props: {
45961
+ modelValue: [Number, String],
45962
+ disabled: {
45963
+ type: Boolean,
45964
+ default: null
45965
+ },
45966
+ readonly: {
45967
+ type: Boolean,
45968
+ default: null
45969
+ },
45970
+ size: {
45971
+ type: String,
45972
+ default: () => getConfig().rate.size || getConfig().size
45973
+ },
45974
+ status: String
45975
+ },
45976
+ emits: ['update:modelValue', 'change'],
45977
+ setup(props, context) {
45978
+ const {
45979
+ emit
45980
+ } = context;
45981
+ const $xeForm = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.inject)('$xeForm', null);
45982
+ const formItemInfo = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.inject)('xeFormItemInfo', null);
45983
+ const xID = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();
45984
+ const {
45985
+ computeSize
45986
+ } = useSize(props);
45987
+ const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
45988
+ const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)({
45989
+ activeValue: null
46083
45990
  });
46084
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.maxWidth, () => {
46085
- reFlag.value++;
45991
+ const refMaps = {
45992
+ refElem
45993
+ };
45994
+ const computeIsDisabled = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
45995
+ const {
45996
+ disabled
45997
+ } = props;
45998
+ if (disabled === null) {
45999
+ if ($xeForm) {
46000
+ return $xeForm.props.readonly || $xeForm.props.disabled;
46001
+ }
46002
+ return false;
46003
+ }
46004
+ return disabled;
46086
46005
  });
46087
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.native, () => {
46088
- reFlag.value++;
46006
+ const computeIsReadonly = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
46007
+ const {
46008
+ readonly
46009
+ } = props;
46010
+ if (readonly === null) {
46011
+ if ($xeForm) {
46012
+ return $xeForm.props.readonly || $xeForm.props.disabled;
46013
+ }
46014
+ return false;
46015
+ }
46016
+ return readonly;
46089
46017
  });
46090
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.syncResize, () => {
46091
- reFlag.value++;
46018
+ const computeNumVal = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
46019
+ const {
46020
+ modelValue
46021
+ } = props;
46022
+ const {
46023
+ activeValue
46024
+ } = reactData;
46025
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(activeValue === null ? modelValue : activeValue);
46092
46026
  });
46093
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(reFlag, () => {
46094
- $xeScrollbar.recalculate().then(() => {
46095
- $xeScrollbar.recalculate();
46027
+ const computeItemList = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
46028
+ return [1, 2, 3, 4, 5].map(num => {
46029
+ return {
46030
+ value: num,
46031
+ label: num
46032
+ };
46096
46033
  });
46097
46034
  });
46098
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.onMounted)(() => {
46035
+ const computeMaps = {};
46036
+ const $xeRate = {
46037
+ xID,
46038
+ props,
46039
+ context,
46040
+ reactData,
46041
+ getRefMaps: () => refMaps,
46042
+ getComputeMaps: () => computeMaps
46043
+ };
46044
+ const dispatchEvent = (type, params, evnt) => {
46045
+ emit(type, createEvent(evnt, {
46046
+ $rate: $xeRate
46047
+ }, params));
46048
+ };
46049
+ const rateMethods = {
46050
+ dispatchEvent
46051
+ };
46052
+ const ratePrivateMethods = {};
46053
+ const emitModel = value => {
46054
+ emit('update:modelValue', value);
46055
+ };
46056
+ const mouseenterEvent = (evnt, item) => {
46057
+ const isDisabled = computeIsDisabled.value;
46058
+ const isReadonly = computeIsReadonly.value;
46059
+ if (!(isDisabled || isReadonly)) {
46060
+ const value = item.value;
46061
+ reactData.activeValue = value;
46062
+ }
46063
+ };
46064
+ const mouseleaveEvent = () => {
46065
+ reactData.activeValue = null;
46066
+ };
46067
+ const clickEvent = (evnt, item) => {
46068
+ const isDisabled = computeIsDisabled.value;
46069
+ const isReadonly = computeIsReadonly.value;
46070
+ if (!(isDisabled || isReadonly)) {
46071
+ const value = item.value;
46072
+ emitModel(value);
46073
+ dispatchEvent('change', {
46074
+ value
46075
+ }, evnt);
46076
+ // 自动更新校验状态
46077
+ if ($xeForm && formItemInfo) {
46078
+ $xeForm.triggerItemEvent(evnt, formItemInfo.itemConfig.field, value);
46079
+ }
46080
+ }
46081
+ };
46082
+ Object.assign($xeRate, rateMethods, ratePrivateMethods);
46083
+ const renderVN = () => {
46099
46084
  const {
46100
- autoResize
46085
+ status
46101
46086
  } = props;
46102
- const viewEl = refViewElem.value;
46103
- const viewInnerEl = refViewInnerElem.value;
46104
- if (autoResize) {
46105
- const resizeObserver = scrollbar_globalResize.create(() => {
46106
- if (props.autoResize) {
46107
- reFlag.value++;
46087
+ const isDisabled = computeIsDisabled.value;
46088
+ const isReadonly = computeIsReadonly.value;
46089
+ const itemList = computeItemList.value;
46090
+ const vSize = computeSize.value;
46091
+ const numVal = computeNumVal.value;
46092
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46093
+ ref: refElem,
46094
+ class: ['vxe-rate', {
46095
+ [`size--${vSize}`]: vSize,
46096
+ [`theme--${status}`]: status,
46097
+ 'is--disabled': isDisabled,
46098
+ 'is--readonly': isReadonly
46099
+ }]
46100
+ }, itemList.map(item => {
46101
+ const isChecked = numVal >= item.value;
46102
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46103
+ class: ['vxe-rte--item', {
46104
+ 'is--checked': isChecked
46105
+ }],
46106
+ onMouseenter(evnt) {
46107
+ if (!(isDisabled || isReadonly)) {
46108
+ mouseenterEvent(evnt, item);
46109
+ }
46110
+ },
46111
+ onMouseleave: mouseleaveEvent,
46112
+ onClick(evnt) {
46113
+ if (!(isDisabled || isReadonly)) {
46114
+ clickEvent(evnt, item);
46115
+ }
46108
46116
  }
46109
- });
46110
- if (viewEl) {
46111
- resizeObserver.observe(viewEl);
46112
- }
46113
- if (viewInnerEl) {
46114
- resizeObserver.observe(viewInnerEl);
46115
- }
46116
- internalData.resizeObserver = resizeObserver;
46117
- }
46118
- reFlag.value++;
46119
- });
46120
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.onBeforeUnmount)(() => {
46117
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('i', {
46118
+ class: isChecked ? getIcon().RATE_CHECKED : getIcon().RATE_UNCHECKED
46119
+ })]);
46120
+ }));
46121
+ };
46122
+ $xeRate.renderVN = renderVN;
46123
+ return $xeRate;
46124
+ },
46125
+ render() {
46126
+ return this.renderVN();
46127
+ }
46128
+ }));
46129
+ ;// ./packages/rate/index.ts
46130
+
46131
+
46132
+
46133
+ const VxeRate = Object.assign({}, rate, {
46134
+ install(app) {
46135
+ app.component(rate.name, rate);
46136
+ }
46137
+ });
46138
+ dynamicApp.use(VxeRate);
46139
+ VxeUI.component(rate);
46140
+ const Rate = VxeRate;
46141
+ /* harmony default export */ var packages_rate = (VxeRate);
46142
+ ;// ./packages/result/src/result.ts
46143
+
46144
+
46145
+
46146
+
46147
+ /* harmony default export */ var result = (defineVxeComponent({
46148
+ name: 'VxeResult',
46149
+ props: {
46150
+ imageUrl: String,
46151
+ imageStyle: Object,
46152
+ icon: String,
46153
+ type: [String, Number],
46154
+ status: [String, Number],
46155
+ title: [String, Number],
46156
+ content: [String, Number]
46157
+ },
46158
+ emits: [],
46159
+ setup(props, context) {
46160
+ const {
46161
+ emit,
46162
+ slots
46163
+ } = context;
46164
+ const xID = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();
46165
+ const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
46166
+ const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)({});
46167
+ const refMaps = {
46168
+ refElem
46169
+ };
46170
+ const computeMaps = {};
46171
+ const $xeResult = {
46172
+ xID,
46173
+ props,
46174
+ context,
46175
+ reactData,
46176
+ getRefMaps: () => refMaps,
46177
+ getComputeMaps: () => computeMaps
46178
+ };
46179
+ const dispatchEvent = (type, params, evnt) => {
46180
+ emit(type, createEvent(evnt, {
46181
+ $result: $xeResult
46182
+ }, params));
46183
+ };
46184
+ const resultMethods = {
46185
+ dispatchEvent
46186
+ };
46187
+ const resultPrivateMethods = {};
46188
+ Object.assign($xeResult, resultMethods, resultPrivateMethods);
46189
+ const renderVN = () => {
46121
46190
  const {
46122
- resizeObserver
46123
- } = internalData;
46124
- if (resizeObserver) {
46125
- resizeObserver.disconnect();
46126
- }
46127
- });
46128
- $xeScrollbar.renderVN = renderVN;
46129
- return $xeScrollbar;
46191
+ imageUrl,
46192
+ imageStyle,
46193
+ icon,
46194
+ title,
46195
+ type,
46196
+ content
46197
+ } = props;
46198
+ const status = props.status || type;
46199
+ const slotExtra = slots.extra;
46200
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46201
+ ref: refElem,
46202
+ class: ['vxe-result', {
46203
+ [`theme--${status}`]: status
46204
+ }]
46205
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46206
+ class: 'vxe-result--inner'
46207
+ }, [imageUrl ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46208
+ class: 'vxe-result--img-wrapper'
46209
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('img', {
46210
+ src: imageUrl,
46211
+ style: imageStyle
46212
+ })]) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46213
+ class: 'vxe-result--icon-wrapper'
46214
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('i', {
46215
+ class: [icon, type ? getIcon()[`RESULT_${type}`.toLocaleUpperCase()] : '']
46216
+ })]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46217
+ class: 'vxe-result--title-wrapper'
46218
+ }, `${title || ''}`), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46219
+ class: 'vxe-result--content-wrapper'
46220
+ }, `${content || ''}`), slotExtra ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46221
+ class: 'vxe-result--extra-wrapper'
46222
+ }, slotExtra({})) : renderEmptyElement($xeResult)])]);
46223
+ };
46224
+ $xeResult.renderVN = renderVN;
46225
+ return $xeResult;
46130
46226
  },
46131
46227
  render() {
46132
46228
  return this.renderVN();
46133
46229
  }
46134
46230
  }));
46135
- ;// ./packages/scrollbar/index.ts
46231
+ ;// ./packages/result/index.ts
46136
46232
 
46137
46233
 
46138
46234
 
46139
- const VxeScrollbar = Object.assign({}, scrollbar, {
46235
+ const VxeResult = Object.assign({}, result, {
46140
46236
  install(app) {
46141
- app.component(scrollbar.name, scrollbar);
46237
+ app.component(result.name, result);
46142
46238
  }
46143
46239
  });
46144
- dynamicApp.use(VxeScrollbar);
46145
- VxeUI.component(scrollbar);
46146
- const Scrollbar = VxeScrollbar;
46147
- /* harmony default export */ var packages_scrollbar = (VxeScrollbar);
46240
+ dynamicApp.use(VxeResult);
46241
+ VxeUI.component(result);
46242
+ const Result = VxeResult;
46243
+ /* harmony default export */ var packages_result = (VxeResult);
46148
46244
  ;// ./packages/row/src/row.ts
46149
46245
 
46150
46246
 
@@ -50726,7 +50822,7 @@ const scrollbarOffsetSize = 20;
50726
50822
  }]
50727
50823
  }, renderTabContent(tabList)), footerSlot ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
50728
50824
  class: 'vxe-tabs-pane--footer'
50729
- }, callSlot(footerSlot, defParams)) : renderEmptyElement($xeTabs), showLoading && isLoading ? renderEmptyElement($xeTabs) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_loading, {
50825
+ }, callSlot(footerSlot, defParams)) : renderEmptyElement($xeTabs), showLoading && isLoading ? renderEmptyElement($xeTabs) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_loading, {
50730
50826
  class: 'vxe-tabs--loading',
50731
50827
  modelValue: isLoading
50732
50828
  })]);
@@ -51304,19 +51400,6 @@ dynamicApp.use(VxeTextEllipsis);
51304
51400
  VxeUI.component(text_ellipsis);
51305
51401
  const TextEllipsis = VxeTextEllipsis;
51306
51402
  /* harmony default export */ var packages_text_ellipsis = (VxeTextEllipsis);
51307
- ;// ./packages/text/index.ts
51308
-
51309
-
51310
-
51311
- const VxeText = Object.assign({}, src_text, {
51312
- install(app) {
51313
- app.component(src_text.name, src_text);
51314
- }
51315
- });
51316
- dynamicApp.use(VxeText);
51317
- VxeUI.component(src_text);
51318
- const Text = VxeText;
51319
- /* harmony default export */ var packages_text = (VxeText);
51320
51403
  ;// ./packages/textarea/src/textarea.ts
51321
51404
 
51322
51405
 
@@ -59064,7 +59147,7 @@ function upload_createInternalData() {
59064
59147
  percent: cacheItem.percent
59065
59148
  }) : getI18n('vxe.upload.uploadProgress', [cacheItem.percent])) : renderEmptyElement($xeUpload), !isLoading && (isError && showErrorStatus || isPending && showSubmitButton && !autoSubmit) ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
59066
59149
  class: 'vxe-upload--file-item-rebtn'
59067
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
59150
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
59068
59151
  icon: isError ? getIcon().UPLOAD_IMAGE_RE_UPLOAD : getIcon().UPLOAD_IMAGE_UPLOAD,
59069
59152
  mode: 'text',
59070
59153
  status: 'primary',
@@ -59134,7 +59217,7 @@ function upload_createInternalData() {
59134
59217
  isMoreView,
59135
59218
  options: fileList,
59136
59219
  $upload: $xeUpload
59137
- })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
59220
+ })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
59138
59221
  class: 'vxe-upload--file-action-button',
59139
59222
  content: isMoreView || showButtonText ? buttonText ? `${external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(buttonText) ? buttonText({}) : buttonText}` : getI18n('vxe.upload.fileBtnText') : '',
59140
59223
  icon: showButtonIcon ? buttonIcon || getIcon().UPLOAD_FILE_ADD : '',
@@ -59195,7 +59278,7 @@ function upload_createInternalData() {
59195
59278
  class: 'vxe-upload--file-over-more'
59196
59279
  }, moreBtnSlot ? vn_getSlotVNs(moreBtnSlot({
59197
59280
  options: fileList
59198
- })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
59281
+ })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
59199
59282
  mode: 'text',
59200
59283
  content: moreButtonText ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(moreButtonText) ? moreButtonText({
59201
59284
  $upload: $xeUpload,
@@ -59288,7 +59371,7 @@ function upload_createInternalData() {
59288
59371
  src: getThumbnailFileUrl(item)
59289
59372
  })]), !isLoading && (isError && showErrorStatus || isPending && showSubmitButton && !autoSubmit) ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
59290
59373
  class: 'vxe-upload--image-item-rebtn'
59291
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
59374
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
59292
59375
  icon: isError ? getIcon().UPLOAD_IMAGE_RE_UPLOAD : getIcon().UPLOAD_IMAGE_UPLOAD,
59293
59376
  mode: 'text',
59294
59377
  status: 'primary',
@@ -59412,7 +59495,7 @@ function upload_createInternalData() {
59412
59495
  class: 'vxe-upload--image-over-more'
59413
59496
  }, moreBtnSlot ? vn_getSlotVNs(moreBtnSlot({
59414
59497
  options: fileList
59415
- })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
59498
+ })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
59416
59499
  mode: 'text',
59417
59500
  content: moreButtonText ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(moreButtonText) ? moreButtonText({
59418
59501
  $upload: $xeUpload,
@@ -59427,7 +59510,7 @@ function upload_createInternalData() {
59427
59510
  class: 'vxe-upload--image-over-more'
59428
59511
  }, moreBtnSlot ? vn_getSlotVNs(moreBtnSlot({
59429
59512
  options: fileList
59430
- })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
59513
+ })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
59431
59514
  mode: 'text',
59432
59515
  content: moreButtonText ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(moreButtonText) ? moreButtonText({
59433
59516
  $upload: $xeUpload,
@@ -59999,7 +60082,7 @@ components_setTheme('light');
59999
60082
  * 已废弃,被 VxeUI.loading 替换
60000
60083
  * @deprecated
60001
60084
  */
60002
- const loading = LoadingController;
60085
+ const components_loading = LoadingController;
60003
60086
  /**
60004
60087
  * 已废弃,被 VxeUI.modal 替换
60005
60088
  * @deprecated