vxe-pc-ui 4.18.23 → 4.19.1

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 +1076 -989
  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 +31 -6
  12. package/es/layout-aside/style.css +5 -0
  13. package/es/layout-aside/style.min.css +1 -1
  14. package/es/layout-body/src/layout-body.js +29 -6
  15. package/es/layout-body/style.css +5 -1
  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 +20 -5
  19. package/es/menu/style.css +14 -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 +5 -0
  34. package/es/vxe-layout-aside/style.min.css +1 -1
  35. package/es/vxe-layout-body/style.css +5 -1
  36. package/es/vxe-layout-body/style.min.css +1 -1
  37. package/es/vxe-menu/style.css +14 -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 +1456 -1333
  58. package/lib/index.umd.min.js +1 -1
  59. package/lib/layout-aside/src/layout-aside.js +35 -4
  60. package/lib/layout-aside/src/layout-aside.min.js +1 -1
  61. package/lib/layout-aside/style/style.css +5 -0
  62. package/lib/layout-aside/style/style.min.css +1 -1
  63. package/lib/layout-body/src/layout-body.js +35 -3
  64. package/lib/layout-body/src/layout-body.min.js +1 -1
  65. package/lib/layout-body/style/style.css +5 -1
  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 +25 -3
  70. package/lib/menu/src/menu.min.js +1 -1
  71. package/lib/menu/style/style.css +14 -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 +5 -0
  92. package/lib/vxe-layout-aside/style/style.min.css +1 -1
  93. package/lib/vxe-layout-body/style/style.css +5 -1
  94. package/lib/vxe-layout-body/style/style.min.css +1 -1
  95. package/lib/vxe-menu/style/style.css +14 -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 +32 -6
  109. package/packages/layout-body/src/layout-body.ts +33 -6
  110. package/packages/list/src/list.ts +1 -1
  111. package/packages/menu/src/menu.ts +26 -5
  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 +5 -0
  118. package/styles/components/layout-body.scss +4 -1
  119. package/styles/components/menu.scss +15 -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 +5 -0
  124. package/types/components/layout-body.d.ts +5 -1
  125. package/types/components/menu.d.ts +5 -0
  126. package/types/components/scrollbar.d.ts +15 -0
  127. /package/es/icon/{iconfont.1791517860186.ttf → iconfont.1791542939851.ttf} +0 -0
  128. /package/es/icon/{iconfont.1791517860186.woff → iconfont.1791542939851.woff} +0 -0
  129. /package/es/icon/{iconfont.1791517860186.woff2 → iconfont.1791542939851.woff2} +0 -0
  130. /package/es/{iconfont.1791517860186.ttf → iconfont.1791542939851.ttf} +0 -0
  131. /package/es/{iconfont.1791517860186.woff → iconfont.1791542939851.woff} +0 -0
  132. /package/es/{iconfont.1791517860186.woff2 → iconfont.1791542939851.woff2} +0 -0
  133. /package/lib/icon/style/{iconfont.1791517860186.ttf → iconfont.1791542939851.ttf} +0 -0
  134. /package/lib/icon/style/{iconfont.1791517860186.woff → iconfont.1791542939851.woff} +0 -0
  135. /package/lib/icon/style/{iconfont.1791517860186.woff2 → iconfont.1791542939851.woff2} +0 -0
  136. /package/lib/{iconfont.1791517860186.ttf → iconfont.1791542939851.ttf} +0 -0
  137. /package/lib/{iconfont.1791517860186.woff → iconfont.1791542939851.woff} +0 -0
  138. /package/lib/{iconfont.1791517860186.woff2 → iconfont.1791542939851.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.1"}`;
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.1";
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,684 @@ 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
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
36782
37190
 
36783
37191
 
36784
37192
 
36785
- const VxeLayoutBody = Object.assign({}, layout_body, {
37193
+ const VxeScrollbar = Object.assign({}, scrollbar, {
36786
37194
  install(app) {
36787
- app.component(layout_body.name, layout_body);
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
+
37210
+ /* harmony default export */ var layout_aside = (defineVxeComponent({
37211
+ name: 'VxeLayoutAside',
36801
37212
  props: {
36802
- vertical: Boolean,
37213
+ width: [String, Number],
37214
+ collapsed: Boolean,
37215
+ collapseWidth: [String, Number],
37216
+ loading: Boolean,
37217
+ padding: Boolean,
37218
+ collapseConfig: Object,
37219
+ useScrollbar: {
37220
+ type: Boolean,
37221
+ default: () => getConfig().layoutAside.useScrollbar
37222
+ },
37223
+ scrollbarConfig: Object,
36803
37224
  size: {
36804
37225
  type: String,
36805
- default: () => getConfig().layoutContainer.size || getConfig().size
37226
+ default: () => getConfig().layoutAside.size || getConfig().size
36806
37227
  }
36807
37228
  },
36808
37229
  emits: [],
@@ -36820,10 +37241,31 @@ const LayoutBody = VxeLayoutBody;
36820
37241
  const refMaps = {
36821
37242
  refElem
36822
37243
  };
37244
+ const computeCollapseOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
37245
+ return Object.assign({}, getConfig().layoutAside.collapseConfig, props.collapseConfig);
37246
+ });
37247
+ const computeScrollbarOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
37248
+ return Object.assign({}, getConfig().layoutAside.scrollbarConfig, props.scrollbarConfig);
37249
+ });
37250
+ const computeVarStyle = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
37251
+ const {
37252
+ width,
37253
+ collapseWidth
37254
+ } = props;
37255
+ const stys = {};
37256
+ if (collapseWidth) {
37257
+ stys['--vxe-ui-layout-aside-collapse-width'] = toCssUnit(collapseWidth);
37258
+ }
37259
+ if (width) {
37260
+ stys['--vxe-ui-layout-aside-default-width'] = toCssUnit(width);
37261
+ }
37262
+ return stys;
37263
+ });
36823
37264
  const computeMaps = {
36824
- computeSize
37265
+ computeSize,
37266
+ computeVarStyle
36825
37267
  };
36826
- const $xeLayoutContainer = {
37268
+ const $xeLayoutAside = {
36827
37269
  xID,
36828
37270
  props,
36829
37271
  context,
@@ -36833,58 +37275,121 @@ const LayoutBody = VxeLayoutBody;
36833
37275
  };
36834
37276
  const dispatchEvent = (type, params, evnt) => {
36835
37277
  emit(type, createEvent(evnt, {
36836
- $layoutContainer: $xeLayoutContainer
37278
+ $layoutAside: $xeLayoutAside
36837
37279
  }, params));
36838
37280
  };
36839
- const layoutContainerMethods = {
37281
+ const layoutAsideMethods = {
36840
37282
  dispatchEvent
36841
37283
  };
36842
- const layoutContainerPrivateMethods = {};
36843
- Object.assign($xeLayoutContainer, layoutContainerMethods, layoutContainerPrivateMethods);
37284
+ const layoutAsidePrivateMethods = {};
37285
+ Object.assign($xeLayoutAside, layoutAsideMethods, layoutAsidePrivateMethods);
36844
37286
  const renderVN = () => {
36845
37287
  const {
36846
- vertical
37288
+ collapsed,
37289
+ loading,
37290
+ padding,
37291
+ useScrollbar
36847
37292
  } = props;
37293
+ const varStyle = computeVarStyle.value;
36848
37294
  const vSize = computeSize.value;
37295
+ const collapseOpts = computeCollapseOpts.value;
37296
+ const scrollbarOpts = computeScrollbarOpts.value;
37297
+ const {
37298
+ native,
37299
+ yConfig,
37300
+ className,
37301
+ viewAttrs,
37302
+ viewClassName,
37303
+ viewInnerClassName
37304
+ } = scrollbarOpts;
36849
37305
  const defaultSlot = slots.default;
36850
- return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37306
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('aside', {
36851
37307
  ref: refElem,
36852
- class: ['vxe-layout-container', {
37308
+ class: ['vxe-layout-aside', {
36853
37309
  [`size--${vSize}`]: vSize,
36854
- 'is--vertical': vertical
36855
- }]
36856
- }, defaultSlot ? defaultSlot({}) : []);
37310
+ 'is--animat': collapseOpts.animation !== false,
37311
+ 'is--padding': padding,
37312
+ 'is--collapse': collapsed,
37313
+ 'is--loading': loading
37314
+ }],
37315
+ style: varStyle
37316
+ }, [useScrollbar ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_scrollbar, {
37317
+ native,
37318
+ xConfig: {
37319
+ visible: 'hidden'
37320
+ },
37321
+ yConfig,
37322
+ className: 'vxe-layout-aside--scrollbar' + (className ? ' ' + className : ''),
37323
+ viewAttrs,
37324
+ viewClassName: 'vxe-layout-aside--scrollbar-view' + (viewClassName ? ' ' + viewClassName : ''),
37325
+ viewInnerClassName: 'vxe-layout-aside--scrollbar-inner' + (viewInnerClassName ? ' ' + viewInnerClassName : '')
37326
+ }, {
37327
+ default: () => defaultSlot ? defaultSlot({}) : []
37328
+ }) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37329
+ class: 'vxe-layout-aside--inner'
37330
+ }, defaultSlot ? defaultSlot({}) : []),
37331
+ /**
37332
+ * 加载中
37333
+ */
37334
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_loading, {
37335
+ class: 'vxe-layout-aside--loading',
37336
+ modelValue: loading
37337
+ })]);
36857
37338
  };
36858
- $xeLayoutContainer.renderVN = renderVN;
36859
- return $xeLayoutContainer;
37339
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.provide)('$xeLayoutAside', $xeLayoutAside);
37340
+ $xeLayoutAside.renderVN = renderVN;
37341
+ return $xeLayoutAside;
36860
37342
  },
36861
37343
  render() {
36862
37344
  return this.renderVN();
36863
37345
  }
36864
37346
  }));
36865
- ;// ./packages/layout-container/index.ts
37347
+ ;// ./packages/layout-aside/index.ts
36866
37348
 
36867
37349
 
36868
37350
 
36869
- const VxeLayoutContainer = Object.assign({}, layout_container, {
37351
+ const VxeLayoutAside = Object.assign({}, layout_aside, {
36870
37352
  install(app) {
36871
- app.component(layout_container.name, layout_container);
37353
+ app.component(layout_aside.name, layout_aside);
36872
37354
  }
36873
37355
  });
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
37356
+ dynamicApp.use(VxeLayoutAside);
37357
+ VxeUI.component(layout_aside);
37358
+ const LayoutAside = VxeLayoutAside;
37359
+ /* harmony default export */ var packages_layout_aside = (VxeLayoutAside);
37360
+ ;// ./packages/layout-body/src/layout-body.ts
36879
37361
 
36880
37362
 
36881
37363
 
36882
37364
 
36883
- /* harmony default export */ var layout_footer = (defineVxeComponent({
36884
- name: 'VxeLayoutFooter',
37365
+
37366
+
37367
+
37368
+ function layout_body_createInternalData() {
37369
+ return {};
37370
+ }
37371
+ function layout_body_createReactData() {
37372
+ return {};
37373
+ }
37374
+ /* harmony default export */ var layout_body = (defineVxeComponent({
37375
+ name: 'VxeLayoutBody',
36885
37376
  props: {
36886
- fixed: Boolean,
36887
- align: String
37377
+ loading: Boolean,
37378
+ padding: Boolean,
37379
+ showBacktop: {
37380
+ type: Boolean,
37381
+ default: () => getConfig().layoutBody.showBacktop
37382
+ },
37383
+ backtopConfig: Object,
37384
+ useScrollbar: {
37385
+ type: Boolean,
37386
+ default: () => getConfig().layoutBody.useScrollbar
37387
+ },
37388
+ scrollbarConfig: Object,
37389
+ size: {
37390
+ type: String,
37391
+ default: () => getConfig().layoutBody.size || getConfig().size
37392
+ }
36888
37393
  },
36889
37394
  emits: [],
36890
37395
  setup(props, context) {
@@ -36893,14 +37398,245 @@ const LayoutContainer = VxeLayoutContainer;
36893
37398
  emit
36894
37399
  } = context;
36895
37400
  const xID = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();
37401
+ const backtopId = `vxe_layout_body_backtop_${xID}`;
36896
37402
  const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
36897
- const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)({});
37403
+ const {
37404
+ computeSize
37405
+ } = useSize(props);
37406
+ const internalData = layout_body_createInternalData();
37407
+ const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)(layout_body_createReactData());
36898
37408
  const refMaps = {
36899
37409
  refElem
36900
37410
  };
36901
- const computeMaps = {};
36902
- const $xeLayoutFooter = {
36903
- xID,
37411
+ const computeBacktopOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
37412
+ return Object.assign({}, getConfig().layoutBody.backtopConfig, props.backtopConfig, {
37413
+ target: '#' + backtopId
37414
+ });
37415
+ });
37416
+ const computeScrollbarOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
37417
+ return Object.assign({}, getConfig().layoutBody.scrollbarConfig, props.scrollbarConfig);
37418
+ });
37419
+ const computeMaps = {
37420
+ computeSize
37421
+ };
37422
+ const $xeLayoutBody = {
37423
+ xID,
37424
+ props,
37425
+ context,
37426
+ internalData,
37427
+ reactData,
37428
+ getRefMaps: () => refMaps,
37429
+ getComputeMaps: () => computeMaps
37430
+ };
37431
+ const dispatchEvent = (type, params, evnt) => {
37432
+ emit(type, createEvent(evnt, {
37433
+ $layoutBody: $xeLayoutBody
37434
+ }, params));
37435
+ };
37436
+ const layoutBodyMethods = {
37437
+ dispatchEvent
37438
+ };
37439
+ const layoutBodyPrivateMethods = {};
37440
+ Object.assign($xeLayoutBody, layoutBodyMethods, layoutBodyPrivateMethods);
37441
+ const renderVN = () => {
37442
+ const {
37443
+ loading,
37444
+ padding,
37445
+ showBacktop,
37446
+ useScrollbar
37447
+ } = props;
37448
+ const backtopOpts = computeBacktopOpts.value;
37449
+ const scrollbarOpts = computeScrollbarOpts.value;
37450
+ const {
37451
+ native,
37452
+ xConfig,
37453
+ yConfig,
37454
+ className,
37455
+ viewAttrs,
37456
+ viewClassName,
37457
+ viewInnerClassName
37458
+ } = scrollbarOpts;
37459
+ const vSize = computeSize.value;
37460
+ const defaultSlot = slots.default;
37461
+ const backtopSlot = slots.backtop;
37462
+ const backtopTopSlot = slots.backtopTop || slots['backtop-top'];
37463
+ const backtopBottomSlot = slots.backtopBottom || slots['backtop-bottom'];
37464
+ const backtopScopeSlots = {};
37465
+ if (backtopSlot) {
37466
+ backtopScopeSlots.default = backtopSlot;
37467
+ }
37468
+ if (backtopTopSlot) {
37469
+ backtopScopeSlots.top = backtopTopSlot;
37470
+ }
37471
+ if (backtopBottomSlot) {
37472
+ backtopScopeSlots.bottom = backtopBottomSlot;
37473
+ }
37474
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37475
+ ref: refElem,
37476
+ class: ['vxe-layout-body', {
37477
+ [`size--${vSize}`]: vSize,
37478
+ 'is--loading': loading,
37479
+ 'is--padding': padding
37480
+ }]
37481
+ }, [useScrollbar ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_scrollbar, {
37482
+ native,
37483
+ xConfig,
37484
+ yConfig,
37485
+ className: 'vxe-layout-body--scrollbar' + (className ? ' ' + className : ''),
37486
+ viewAttrs: {
37487
+ ...viewAttrs,
37488
+ id: showBacktop ? backtopId || null : null
37489
+ },
37490
+ viewClassName: 'vxe-layout-body--scrollbar-view' + (viewClassName ? ' ' + viewClassName : ''),
37491
+ viewInnerClassName: 'vxe-layout-body--scrollbar-inner' + (viewInnerClassName ? ' ' + viewInnerClassName : '')
37492
+ }, {
37493
+ default: () => defaultSlot ? defaultSlot({}) : []
37494
+ }) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37495
+ id: showBacktop ? backtopId : '',
37496
+ class: 'vxe-layout-body--inner'
37497
+ }, defaultSlot ? defaultSlot({}) : []),
37498
+ /**
37499
+ * 加载中
37500
+ */
37501
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_loading, {
37502
+ class: 'vxe-list-view--loading',
37503
+ modelValue: loading
37504
+ }),
37505
+ /**
37506
+ * 回到顶部
37507
+ */
37508
+ showBacktop ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_backtop, backtopOpts, backtopScopeSlots) : renderEmptyElement($xeLayoutBody)]);
37509
+ };
37510
+ $xeLayoutBody.renderVN = renderVN;
37511
+ return $xeLayoutBody;
37512
+ },
37513
+ render() {
37514
+ return this.renderVN();
37515
+ }
37516
+ }));
37517
+ ;// ./packages/layout-body/index.ts
37518
+
37519
+
37520
+
37521
+ const VxeLayoutBody = Object.assign({}, layout_body, {
37522
+ install(app) {
37523
+ app.component(layout_body.name, layout_body);
37524
+ }
37525
+ });
37526
+ dynamicApp.use(VxeLayoutBody);
37527
+ VxeUI.component(layout_body);
37528
+ const LayoutBody = VxeLayoutBody;
37529
+ /* harmony default export */ var packages_layout_body = (VxeLayoutBody);
37530
+ ;// ./packages/layout-container/src/layout-container.ts
37531
+
37532
+
37533
+
37534
+
37535
+ /* harmony default export */ var layout_container = (defineVxeComponent({
37536
+ name: 'VxeLayoutContainer',
37537
+ props: {
37538
+ vertical: Boolean,
37539
+ size: {
37540
+ type: String,
37541
+ default: () => getConfig().layoutContainer.size || getConfig().size
37542
+ }
37543
+ },
37544
+ emits: [],
37545
+ setup(props, context) {
37546
+ const {
37547
+ slots,
37548
+ emit
37549
+ } = context;
37550
+ const xID = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();
37551
+ const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
37552
+ const {
37553
+ computeSize
37554
+ } = useSize(props);
37555
+ const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)({});
37556
+ const refMaps = {
37557
+ refElem
37558
+ };
37559
+ const computeMaps = {
37560
+ computeSize
37561
+ };
37562
+ const $xeLayoutContainer = {
37563
+ xID,
37564
+ props,
37565
+ context,
37566
+ reactData,
37567
+ getRefMaps: () => refMaps,
37568
+ getComputeMaps: () => computeMaps
37569
+ };
37570
+ const dispatchEvent = (type, params, evnt) => {
37571
+ emit(type, createEvent(evnt, {
37572
+ $layoutContainer: $xeLayoutContainer
37573
+ }, params));
37574
+ };
37575
+ const layoutContainerMethods = {
37576
+ dispatchEvent
37577
+ };
37578
+ const layoutContainerPrivateMethods = {};
37579
+ Object.assign($xeLayoutContainer, layoutContainerMethods, layoutContainerPrivateMethods);
37580
+ const renderVN = () => {
37581
+ const {
37582
+ vertical
37583
+ } = props;
37584
+ const vSize = computeSize.value;
37585
+ const defaultSlot = slots.default;
37586
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37587
+ ref: refElem,
37588
+ class: ['vxe-layout-container', {
37589
+ [`size--${vSize}`]: vSize,
37590
+ 'is--vertical': vertical
37591
+ }]
37592
+ }, defaultSlot ? defaultSlot({}) : []);
37593
+ };
37594
+ $xeLayoutContainer.renderVN = renderVN;
37595
+ return $xeLayoutContainer;
37596
+ },
37597
+ render() {
37598
+ return this.renderVN();
37599
+ }
37600
+ }));
37601
+ ;// ./packages/layout-container/index.ts
37602
+
37603
+
37604
+
37605
+ const VxeLayoutContainer = Object.assign({}, layout_container, {
37606
+ install(app) {
37607
+ app.component(layout_container.name, layout_container);
37608
+ }
37609
+ });
37610
+ dynamicApp.use(VxeLayoutContainer);
37611
+ VxeUI.component(layout_container);
37612
+ const LayoutContainer = VxeLayoutContainer;
37613
+ /* harmony default export */ var packages_layout_container = (VxeLayoutContainer);
37614
+ ;// ./packages/layout-footer/src/layout-footer.ts
37615
+
37616
+
37617
+
37618
+
37619
+ /* harmony default export */ var layout_footer = (defineVxeComponent({
37620
+ name: 'VxeLayoutFooter',
37621
+ props: {
37622
+ fixed: Boolean,
37623
+ align: String
37624
+ },
37625
+ emits: [],
37626
+ setup(props, context) {
37627
+ const {
37628
+ slots,
37629
+ emit
37630
+ } = context;
37631
+ const xID = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();
37632
+ const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
37633
+ const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)({});
37634
+ const refMaps = {
37635
+ refElem
37636
+ };
37637
+ const computeMaps = {};
37638
+ const $xeLayoutFooter = {
37639
+ xID,
36904
37640
  props,
36905
37641
  context,
36906
37642
  reactData,
@@ -37194,6 +37930,7 @@ const Link = VxeLink;
37194
37930
 
37195
37931
 
37196
37932
 
37933
+
37197
37934
  const {
37198
37935
  errLog: menu_errLog
37199
37936
  } = createComponentLog('menu');
@@ -37256,6 +37993,11 @@ let nemuUniqueKey = 100000000;
37256
37993
  default: () => menu_getConfig().menu.size || menu_getConfig().size
37257
37994
  },
37258
37995
  menuConfig: Object,
37996
+ useScrollbar: {
37997
+ type: Boolean,
37998
+ default: () => menu_getConfig().menu.useScrollbar
37999
+ },
38000
+ scrollbarConfig: Object,
37259
38001
  appendTo: {
37260
38002
  type: [String, Function],
37261
38003
  default: () => menu_getConfig().menu.appendTo
@@ -37305,6 +38047,9 @@ let nemuUniqueKey = 100000000;
37305
38047
  const propsOpts = computePropsOpts.value;
37306
38048
  return propsOpts.routerLink || 'routerLink';
37307
38049
  });
38050
+ const computeScrollbarOpts = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
38051
+ return Object.assign({}, menu_getConfig().menu.scrollbarConfig, props.scrollbarConfig);
38052
+ });
37308
38053
  const computeCurrBorder = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
37309
38054
  const {
37310
38055
  border
@@ -37886,7 +38631,8 @@ let nemuUniqueKey = 100000000;
37886
38631
  const {
37887
38632
  loading,
37888
38633
  collapseFixed,
37889
- appendTo
38634
+ appendTo,
38635
+ useScrollbar
37890
38636
  } = props;
37891
38637
  const {
37892
38638
  initialized,
@@ -37898,6 +38644,11 @@ let nemuUniqueKey = 100000000;
37898
38644
  const isCollapsed = computeIsCollapsed.value;
37899
38645
  const currBorder = computeCurrBorder.value;
37900
38646
  const varStyle = computeVarStyle.value;
38647
+ const scrollbarOpts = computeScrollbarOpts.value;
38648
+ const {
38649
+ viewClassName,
38650
+ viewInnerClassName
38651
+ } = scrollbarOpts;
37901
38652
  const headerSlot = slots.header;
37902
38653
  const footerSlot = slots.footer;
37903
38654
  let ons = {};
@@ -37939,7 +38690,14 @@ let nemuUniqueKey = 100000000;
37939
38690
  ...ons
37940
38691
  }, isCollapsed ? [headerSlot ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37941
38692
  class: 'vxe-menu--header'
37942
- }, headerSlot(stParams)) : renderEmptyElement($xeMenu), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
38693
+ }, headerSlot(stParams)) : renderEmptyElement($xeMenu), useScrollbar ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_scrollbar, {
38694
+ class: 'vxe-menu--scrollbar-body',
38695
+ ...scrollbarOpts,
38696
+ viewClassName: 'vxe-menu--body-view' + (viewClassName ? ' ' + viewClassName : ''),
38697
+ viewInnerClassName: 'vxe-menu--body-inner' + (viewClassName ? ' ' + viewInnerClassName : '')
38698
+ }, {
38699
+ default: () => menuList.map(child => renderDefaultChildren(child, menuList))
38700
+ }) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37943
38701
  class: 'vxe-menu--body'
37944
38702
  }, menuList.map(child => renderDefaultChildren(child, menuList))), footerSlot ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
37945
38703
  class: 'vxe-menu--footer'
@@ -37948,7 +38706,7 @@ let nemuUniqueKey = 100000000;
37948
38706
  * 加载中
37949
38707
  */
37950
38708
  (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_loading, {
37951
- class: 'vxe-list-view--loading',
38709
+ class: 'vxe-menu-view--loading',
37952
38710
  modelValue: loading
37953
38711
  })]);
37954
38712
  };
@@ -41942,7 +42700,7 @@ function select_createInternalData() {
41942
42700
  }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
41943
42701
  class: 'vxe-select-slots',
41944
42702
  ref: 'hideOption'
41945
- }, defaultSlot ? defaultSlot({}) : []), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(input, {
42703
+ }, defaultSlot ? defaultSlot({}) : []), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_input, {
41946
42704
  ref: refInput,
41947
42705
  clearable: props.clearable,
41948
42706
  placeholder: inpPlaceholder,
@@ -41981,7 +42739,7 @@ function select_createInternalData() {
41981
42739
  style: popupWrapperStyle
41982
42740
  }, [filterable ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
41983
42741
  class: 'vxe-select--panel-search'
41984
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(input, {
42742
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_input, {
41985
42743
  ref: refInpSearch,
41986
42744
  class: 'vxe-select-search--input',
41987
42745
  modelValue: reactData.searchValue,
@@ -42001,11 +42759,11 @@ function select_createInternalData() {
42001
42759
  class: 'vxe-select--header-button'
42002
42760
  }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
42003
42761
  class: 'vxe-select--header-btns'
42004
- }, [showCheckedButton && multiple ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
42762
+ }, [showCheckedButton && multiple ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
42005
42763
  content: getI18n('vxe.select.allChecked'),
42006
42764
  mode: 'text',
42007
42765
  onClick: allCheckedPanelEvent
42008
- }) : renderEmptyElement($xeSelect), showClearButton ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
42766
+ }) : renderEmptyElement($xeSelect), showClearButton ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
42009
42767
  content: getI18n('vxe.select.clear'),
42010
42768
  mode: 'text',
42011
42769
  onClick: clearCheckedPanelEvent
@@ -42034,7 +42792,7 @@ function select_createInternalData() {
42034
42792
  class: 'vxe-select--total-btns'
42035
42793
  }, getI18n('vxe.select.total', [selectVals.length, optList.length])) : renderEmptyElement($xeSelect), showCloseButton && multiple ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
42036
42794
  class: 'vxe-select--oper-btns'
42037
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
42795
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
42038
42796
  content: getI18n('vxe.select.close'),
42039
42797
  mode: 'text',
42040
42798
  onClick: closePanelEvent
@@ -45107,1044 +45865,422 @@ function src_group_createInternalData() {
45107
45865
  value
45108
45866
  }, null);
45109
45867
  };
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;
45868
+ const dispatchEvent = (type, params, evnt) => {
45869
+ emit(type, createEvent(evnt, {
45870
+ $radioGroup: $xeRadioGroup
45871
+ }, params));
45988
45872
  };
45989
- const pointermoveThumbYEvent = evnt => {
45990
- const thumbEl = evnt.currentTarget;
45991
- if (!thumbEl.hasPointerCapture(evnt.pointerId)) {
45992
- return;
45873
+ const radioGroupMethods = {
45874
+ dispatchEvent
45875
+ };
45876
+ const radioGroupPrivateMethods = {
45877
+ handleChecked(params, evnt) {
45878
+ const {
45879
+ checkedValue,
45880
+ checkedLabel
45881
+ } = params;
45882
+ const value = checkedValue;
45883
+ emitModel(value);
45884
+ dispatchEvent('change', {
45885
+ value,
45886
+ label: value,
45887
+ checkedValue,
45888
+ checkedLabel
45889
+ }, evnt);
45890
+ // 自动更新校验状态
45891
+ if ($xeForm && formItemInfo) {
45892
+ $xeForm.triggerItemEvent(evnt, formItemInfo.itemConfig.field, value);
45893
+ }
45993
45894
  }
45895
+ };
45896
+ const loadData = datas => {
45994
45897
  const {
45995
- isThumbDrag,
45996
- thumbDragOffset
45898
+ isLoaded
45997
45899
  } = internalData;
45998
- if (isThumbDrag) {
45999
- const viewEl = refViewElem.value;
46000
- if (!viewEl) {
46001
- return;
46002
- }
45900
+ const defaultOpts = computeDefaultOpts.value;
45901
+ const valueField = computeValueField.value;
45902
+ if (!isLoaded) {
46003
45903
  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);
45904
+ selectMode
45905
+ } = defaultOpts;
45906
+ if (datas.length > 0 && external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(props.modelValue)) {
45907
+ if (selectMode === 'first' || selectMode === 'last') {
45908
+ const selectItem = (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default())[selectMode](datas);
45909
+ if (selectItem) {
45910
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(() => {
45911
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().eqNull(props.modelValue)) {
45912
+ emitDefaultValue(selectItem[valueField]);
45913
+ }
45914
+ });
45915
+ }
45916
+ }
45917
+ internalData.isLoaded = true;
45918
+ }
46011
45919
  }
45920
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)();
46012
45921
  };
46013
- const scrollbarPrivateMethods = {};
46014
- Object.assign($xeScrollbar, scrollbarMethods, scrollbarPrivateMethods);
45922
+ Object.assign($xeRadioGroup, radioGroupMethods, radioGroupPrivateMethods);
46015
45923
  const renderVN = () => {
46016
45924
  const {
46017
- native,
46018
- loading,
46019
- autoResize
45925
+ options,
45926
+ type,
45927
+ status
46020
45928
  } = 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;
45929
+ const vSize = computeSize.value;
46026
45930
  const defaultSlot = slots.default;
45931
+ const valueField = computeValueField.value;
45932
+ const labelField = computeLabelField.value;
45933
+ const disabledField = computeDisabledField.value;
45934
+ const iconField = computeIconField.value;
45935
+ const titleField = computeTitleField.value;
45936
+ const btnComp = type === 'button' ? radio_button : packages_radio;
46027
45937
  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
- })]);
45938
+ class: ['vxe-radio-group', `type--${type === 'button' ? type : ''}`, {
45939
+ [`theme--${status}`]: status,
45940
+ [`size--${vSize}`]: vSize
45941
+ }]
45942
+ }, defaultSlot ? defaultSlot({}) : options ? options.map(item => {
45943
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(btnComp, {
45944
+ key: item[valueField],
45945
+ checkedValue: item[valueField],
45946
+ content: item[labelField],
45947
+ icon: item[iconField],
45948
+ title: item[titleField],
45949
+ disabled: item[disabledField]
45950
+ });
45951
+ }) : []);
46067
45952
  };
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++;
45953
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.options, val => {
45954
+ loadData(val || []);
46074
45955
  });
46075
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.minHeight, () => {
46076
- reFlag.value++;
45956
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.onMounted)(() => {
45957
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.nextTick)(() => {
45958
+ const {
45959
+ options
45960
+ } = props;
45961
+ if (options) {
45962
+ loadData(options);
45963
+ }
45964
+ });
46077
45965
  });
46078
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.minWidth, () => {
46079
- reFlag.value++;
45966
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.onUnmounted)(() => {
45967
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().assign(reactData, src_group_createReactData());
45968
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().assign(internalData, src_group_createInternalData());
46080
45969
  });
46081
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.maxHeight, () => {
46082
- reFlag.value++;
45970
+ (0,external_commonjs_vue_commonjs2_vue_root_Vue_.provide)('$xeRadioGroup', $xeRadioGroup);
45971
+ $xeRadioGroup.renderVN = renderVN;
45972
+ return $xeRadioGroup;
45973
+ },
45974
+ render() {
45975
+ return this.renderVN();
45976
+ }
45977
+ }));
45978
+ ;// ./packages/radio-group/index.ts
45979
+
45980
+
45981
+
45982
+ const VxeRadioGroup = Object.assign(radio_src_group, {
45983
+ install: function (app) {
45984
+ app.component(radio_src_group.name, radio_src_group);
45985
+ }
45986
+ });
45987
+ dynamicApp.use(VxeRadioGroup);
45988
+ VxeUI.component(radio_src_group);
45989
+ const RadioGroup = VxeRadioGroup;
45990
+ /* harmony default export */ var radio_group = (VxeRadioGroup);
45991
+ ;// ./packages/rate/src/rate.ts
45992
+
45993
+
45994
+
45995
+
45996
+
45997
+
45998
+ /* harmony default export */ var rate = (defineVxeComponent({
45999
+ name: 'VxeRate',
46000
+ props: {
46001
+ modelValue: [Number, String],
46002
+ disabled: {
46003
+ type: Boolean,
46004
+ default: null
46005
+ },
46006
+ readonly: {
46007
+ type: Boolean,
46008
+ default: null
46009
+ },
46010
+ size: {
46011
+ type: String,
46012
+ default: () => getConfig().rate.size || getConfig().size
46013
+ },
46014
+ status: String
46015
+ },
46016
+ emits: ['update:modelValue', 'change'],
46017
+ setup(props, context) {
46018
+ const {
46019
+ emit
46020
+ } = context;
46021
+ const $xeForm = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.inject)('$xeForm', null);
46022
+ const formItemInfo = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.inject)('xeFormItemInfo', null);
46023
+ const xID = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();
46024
+ const {
46025
+ computeSize
46026
+ } = useSize(props);
46027
+ const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
46028
+ const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)({
46029
+ activeValue: null
46083
46030
  });
46084
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.maxWidth, () => {
46085
- reFlag.value++;
46031
+ const refMaps = {
46032
+ refElem
46033
+ };
46034
+ const computeIsDisabled = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
46035
+ const {
46036
+ disabled
46037
+ } = props;
46038
+ if (disabled === null) {
46039
+ if ($xeForm) {
46040
+ return $xeForm.props.readonly || $xeForm.props.disabled;
46041
+ }
46042
+ return false;
46043
+ }
46044
+ return disabled;
46086
46045
  });
46087
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.native, () => {
46088
- reFlag.value++;
46046
+ const computeIsReadonly = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
46047
+ const {
46048
+ readonly
46049
+ } = props;
46050
+ if (readonly === null) {
46051
+ if ($xeForm) {
46052
+ return $xeForm.props.readonly || $xeForm.props.disabled;
46053
+ }
46054
+ return false;
46055
+ }
46056
+ return readonly;
46089
46057
  });
46090
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(() => props.syncResize, () => {
46091
- reFlag.value++;
46058
+ const computeNumVal = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
46059
+ const {
46060
+ modelValue
46061
+ } = props;
46062
+ const {
46063
+ activeValue
46064
+ } = reactData;
46065
+ return external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(activeValue === null ? modelValue : activeValue);
46092
46066
  });
46093
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.watch)(reFlag, () => {
46094
- $xeScrollbar.recalculate().then(() => {
46095
- $xeScrollbar.recalculate();
46067
+ const computeItemList = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.computed)(() => {
46068
+ return [1, 2, 3, 4, 5].map(num => {
46069
+ return {
46070
+ value: num,
46071
+ label: num
46072
+ };
46096
46073
  });
46097
46074
  });
46098
- (0,external_commonjs_vue_commonjs2_vue_root_Vue_.onMounted)(() => {
46075
+ const computeMaps = {};
46076
+ const $xeRate = {
46077
+ xID,
46078
+ props,
46079
+ context,
46080
+ reactData,
46081
+ getRefMaps: () => refMaps,
46082
+ getComputeMaps: () => computeMaps
46083
+ };
46084
+ const dispatchEvent = (type, params, evnt) => {
46085
+ emit(type, createEvent(evnt, {
46086
+ $rate: $xeRate
46087
+ }, params));
46088
+ };
46089
+ const rateMethods = {
46090
+ dispatchEvent
46091
+ };
46092
+ const ratePrivateMethods = {};
46093
+ const emitModel = value => {
46094
+ emit('update:modelValue', value);
46095
+ };
46096
+ const mouseenterEvent = (evnt, item) => {
46097
+ const isDisabled = computeIsDisabled.value;
46098
+ const isReadonly = computeIsReadonly.value;
46099
+ if (!(isDisabled || isReadonly)) {
46100
+ const value = item.value;
46101
+ reactData.activeValue = value;
46102
+ }
46103
+ };
46104
+ const mouseleaveEvent = () => {
46105
+ reactData.activeValue = null;
46106
+ };
46107
+ const clickEvent = (evnt, item) => {
46108
+ const isDisabled = computeIsDisabled.value;
46109
+ const isReadonly = computeIsReadonly.value;
46110
+ if (!(isDisabled || isReadonly)) {
46111
+ const value = item.value;
46112
+ emitModel(value);
46113
+ dispatchEvent('change', {
46114
+ value
46115
+ }, evnt);
46116
+ // 自动更新校验状态
46117
+ if ($xeForm && formItemInfo) {
46118
+ $xeForm.triggerItemEvent(evnt, formItemInfo.itemConfig.field, value);
46119
+ }
46120
+ }
46121
+ };
46122
+ Object.assign($xeRate, rateMethods, ratePrivateMethods);
46123
+ const renderVN = () => {
46099
46124
  const {
46100
- autoResize
46125
+ status
46101
46126
  } = 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++;
46127
+ const isDisabled = computeIsDisabled.value;
46128
+ const isReadonly = computeIsReadonly.value;
46129
+ const itemList = computeItemList.value;
46130
+ const vSize = computeSize.value;
46131
+ const numVal = computeNumVal.value;
46132
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46133
+ ref: refElem,
46134
+ class: ['vxe-rate', {
46135
+ [`size--${vSize}`]: vSize,
46136
+ [`theme--${status}`]: status,
46137
+ 'is--disabled': isDisabled,
46138
+ 'is--readonly': isReadonly
46139
+ }]
46140
+ }, itemList.map(item => {
46141
+ const isChecked = numVal >= item.value;
46142
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46143
+ class: ['vxe-rte--item', {
46144
+ 'is--checked': isChecked
46145
+ }],
46146
+ onMouseenter(evnt) {
46147
+ if (!(isDisabled || isReadonly)) {
46148
+ mouseenterEvent(evnt, item);
46149
+ }
46150
+ },
46151
+ onMouseleave: mouseleaveEvent,
46152
+ onClick(evnt) {
46153
+ if (!(isDisabled || isReadonly)) {
46154
+ clickEvent(evnt, item);
46155
+ }
46108
46156
  }
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)(() => {
46157
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('i', {
46158
+ class: isChecked ? getIcon().RATE_CHECKED : getIcon().RATE_UNCHECKED
46159
+ })]);
46160
+ }));
46161
+ };
46162
+ $xeRate.renderVN = renderVN;
46163
+ return $xeRate;
46164
+ },
46165
+ render() {
46166
+ return this.renderVN();
46167
+ }
46168
+ }));
46169
+ ;// ./packages/rate/index.ts
46170
+
46171
+
46172
+
46173
+ const VxeRate = Object.assign({}, rate, {
46174
+ install(app) {
46175
+ app.component(rate.name, rate);
46176
+ }
46177
+ });
46178
+ dynamicApp.use(VxeRate);
46179
+ VxeUI.component(rate);
46180
+ const Rate = VxeRate;
46181
+ /* harmony default export */ var packages_rate = (VxeRate);
46182
+ ;// ./packages/result/src/result.ts
46183
+
46184
+
46185
+
46186
+
46187
+ /* harmony default export */ var result = (defineVxeComponent({
46188
+ name: 'VxeResult',
46189
+ props: {
46190
+ imageUrl: String,
46191
+ imageStyle: Object,
46192
+ icon: String,
46193
+ type: [String, Number],
46194
+ status: [String, Number],
46195
+ title: [String, Number],
46196
+ content: [String, Number]
46197
+ },
46198
+ emits: [],
46199
+ setup(props, context) {
46200
+ const {
46201
+ emit,
46202
+ slots
46203
+ } = context;
46204
+ const xID = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().uniqueId();
46205
+ const refElem = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.ref)();
46206
+ const reactData = (0,external_commonjs_vue_commonjs2_vue_root_Vue_.reactive)({});
46207
+ const refMaps = {
46208
+ refElem
46209
+ };
46210
+ const computeMaps = {};
46211
+ const $xeResult = {
46212
+ xID,
46213
+ props,
46214
+ context,
46215
+ reactData,
46216
+ getRefMaps: () => refMaps,
46217
+ getComputeMaps: () => computeMaps
46218
+ };
46219
+ const dispatchEvent = (type, params, evnt) => {
46220
+ emit(type, createEvent(evnt, {
46221
+ $result: $xeResult
46222
+ }, params));
46223
+ };
46224
+ const resultMethods = {
46225
+ dispatchEvent
46226
+ };
46227
+ const resultPrivateMethods = {};
46228
+ Object.assign($xeResult, resultMethods, resultPrivateMethods);
46229
+ const renderVN = () => {
46121
46230
  const {
46122
- resizeObserver
46123
- } = internalData;
46124
- if (resizeObserver) {
46125
- resizeObserver.disconnect();
46126
- }
46127
- });
46128
- $xeScrollbar.renderVN = renderVN;
46129
- return $xeScrollbar;
46231
+ imageUrl,
46232
+ imageStyle,
46233
+ icon,
46234
+ title,
46235
+ type,
46236
+ content
46237
+ } = props;
46238
+ const status = props.status || type;
46239
+ const slotExtra = slots.extra;
46240
+ return (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46241
+ ref: refElem,
46242
+ class: ['vxe-result', {
46243
+ [`theme--${status}`]: status
46244
+ }]
46245
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46246
+ class: 'vxe-result--inner'
46247
+ }, [imageUrl ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46248
+ class: 'vxe-result--img-wrapper'
46249
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('img', {
46250
+ src: imageUrl,
46251
+ style: imageStyle
46252
+ })]) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46253
+ class: 'vxe-result--icon-wrapper'
46254
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('i', {
46255
+ class: [icon, type ? getIcon()[`RESULT_${type}`.toLocaleUpperCase()] : '']
46256
+ })]), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46257
+ class: 'vxe-result--title-wrapper'
46258
+ }, `${title || ''}`), (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46259
+ class: 'vxe-result--content-wrapper'
46260
+ }, `${content || ''}`), slotExtra ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
46261
+ class: 'vxe-result--extra-wrapper'
46262
+ }, slotExtra({})) : renderEmptyElement($xeResult)])]);
46263
+ };
46264
+ $xeResult.renderVN = renderVN;
46265
+ return $xeResult;
46130
46266
  },
46131
46267
  render() {
46132
46268
  return this.renderVN();
46133
46269
  }
46134
46270
  }));
46135
- ;// ./packages/scrollbar/index.ts
46271
+ ;// ./packages/result/index.ts
46136
46272
 
46137
46273
 
46138
46274
 
46139
- const VxeScrollbar = Object.assign({}, scrollbar, {
46275
+ const VxeResult = Object.assign({}, result, {
46140
46276
  install(app) {
46141
- app.component(scrollbar.name, scrollbar);
46277
+ app.component(result.name, result);
46142
46278
  }
46143
46279
  });
46144
- dynamicApp.use(VxeScrollbar);
46145
- VxeUI.component(scrollbar);
46146
- const Scrollbar = VxeScrollbar;
46147
- /* harmony default export */ var packages_scrollbar = (VxeScrollbar);
46280
+ dynamicApp.use(VxeResult);
46281
+ VxeUI.component(result);
46282
+ const Result = VxeResult;
46283
+ /* harmony default export */ var packages_result = (VxeResult);
46148
46284
  ;// ./packages/row/src/row.ts
46149
46285
 
46150
46286
 
@@ -50726,7 +50862,7 @@ const scrollbarOffsetSize = 20;
50726
50862
  }]
50727
50863
  }, renderTabContent(tabList)), footerSlot ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
50728
50864
  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, {
50865
+ }, callSlot(footerSlot, defParams)) : renderEmptyElement($xeTabs), showLoading && isLoading ? renderEmptyElement($xeTabs) : (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_loading, {
50730
50866
  class: 'vxe-tabs--loading',
50731
50867
  modelValue: isLoading
50732
50868
  })]);
@@ -51304,19 +51440,6 @@ dynamicApp.use(VxeTextEllipsis);
51304
51440
  VxeUI.component(text_ellipsis);
51305
51441
  const TextEllipsis = VxeTextEllipsis;
51306
51442
  /* 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
51443
  ;// ./packages/textarea/src/textarea.ts
51321
51444
 
51322
51445
 
@@ -59064,7 +59187,7 @@ function upload_createInternalData() {
59064
59187
  percent: cacheItem.percent
59065
59188
  }) : 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
59189
  class: 'vxe-upload--file-item-rebtn'
59067
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
59190
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
59068
59191
  icon: isError ? getIcon().UPLOAD_IMAGE_RE_UPLOAD : getIcon().UPLOAD_IMAGE_UPLOAD,
59069
59192
  mode: 'text',
59070
59193
  status: 'primary',
@@ -59134,7 +59257,7 @@ function upload_createInternalData() {
59134
59257
  isMoreView,
59135
59258
  options: fileList,
59136
59259
  $upload: $xeUpload
59137
- })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
59260
+ })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
59138
59261
  class: 'vxe-upload--file-action-button',
59139
59262
  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
59263
  icon: showButtonIcon ? buttonIcon || getIcon().UPLOAD_FILE_ADD : '',
@@ -59195,7 +59318,7 @@ function upload_createInternalData() {
59195
59318
  class: 'vxe-upload--file-over-more'
59196
59319
  }, moreBtnSlot ? vn_getSlotVNs(moreBtnSlot({
59197
59320
  options: fileList
59198
- })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
59321
+ })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
59199
59322
  mode: 'text',
59200
59323
  content: moreButtonText ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(moreButtonText) ? moreButtonText({
59201
59324
  $upload: $xeUpload,
@@ -59288,7 +59411,7 @@ function upload_createInternalData() {
59288
59411
  src: getThumbnailFileUrl(item)
59289
59412
  })]), !isLoading && (isError && showErrorStatus || isPending && showSubmitButton && !autoSubmit) ? (0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)('div', {
59290
59413
  class: 'vxe-upload--image-item-rebtn'
59291
- }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
59414
+ }, [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
59292
59415
  icon: isError ? getIcon().UPLOAD_IMAGE_RE_UPLOAD : getIcon().UPLOAD_IMAGE_UPLOAD,
59293
59416
  mode: 'text',
59294
59417
  status: 'primary',
@@ -59412,7 +59535,7 @@ function upload_createInternalData() {
59412
59535
  class: 'vxe-upload--image-over-more'
59413
59536
  }, moreBtnSlot ? vn_getSlotVNs(moreBtnSlot({
59414
59537
  options: fileList
59415
- })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
59538
+ })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
59416
59539
  mode: 'text',
59417
59540
  content: moreButtonText ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(moreButtonText) ? moreButtonText({
59418
59541
  $upload: $xeUpload,
@@ -59427,7 +59550,7 @@ function upload_createInternalData() {
59427
59550
  class: 'vxe-upload--image-over-more'
59428
59551
  }, moreBtnSlot ? vn_getSlotVNs(moreBtnSlot({
59429
59552
  options: fileList
59430
- })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(src_button, {
59553
+ })) : [(0,external_commonjs_vue_commonjs2_vue_root_Vue_.h)(packages_button, {
59431
59554
  mode: 'text',
59432
59555
  content: moreButtonText ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(moreButtonText) ? moreButtonText({
59433
59556
  $upload: $xeUpload,
@@ -59999,7 +60122,7 @@ components_setTheme('light');
59999
60122
  * 已废弃,被 VxeUI.loading 替换
60000
60123
  * @deprecated
60001
60124
  */
60002
- const loading = LoadingController;
60125
+ const components_loading = LoadingController;
60003
60126
  /**
60004
60127
  * 已废弃,被 VxeUI.modal 替换
60005
60128
  * @deprecated