@nutui/nutui-react 3.0.14 → 3.0.16

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 (78) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/dist/cjs/packages/button/style/button.scss +3 -0
  3. package/dist/cjs/packages/button/style/style.css +3 -3
  4. package/dist/cjs/packages/button/style-jmapp/button.scss +3 -0
  5. package/dist/cjs/packages/button/style-jmapp/style.css +3 -3
  6. package/dist/cjs/packages/button/style-jrkf/button.scss +3 -0
  7. package/dist/cjs/packages/button/style-jrkf/style.css +3 -3
  8. package/dist/cjs/packages/calendarcard/calendarcard.js +10 -4
  9. package/dist/cjs/packages/calendaritem/calendaritem.d.ts +1 -1
  10. package/dist/cjs/packages/calendaritem/calendaritem.js +3 -3
  11. package/dist/cjs/packages/configprovider/types.d.ts +1 -1
  12. package/dist/cjs/packages/datepicker/utils.js +22 -37
  13. package/dist/cjs/packages/dialog/dialog.js +2 -7
  14. package/dist/cjs/packages/formitem/formitem.js +3 -3
  15. package/dist/cjs/packages/formitem/style/formitem.scss +14 -15
  16. package/dist/cjs/packages/formitem/style/style.css +9 -11
  17. package/dist/cjs/packages/formitem/style-jmapp/formitem.scss +14 -15
  18. package/dist/cjs/packages/formitem/style-jmapp/style.css +8 -10
  19. package/dist/cjs/packages/formitem/style-jrkf/formitem.scss +14 -15
  20. package/dist/cjs/packages/formitem/style-jrkf/style.css +8 -10
  21. package/dist/cjs/packages/imagepreview/imagepreview.js +23 -7
  22. package/dist/cjs/packages/noticebar/noticebar.js +66 -41
  23. package/dist/cjs/packages/overlay/style/overlay.scss +0 -1
  24. package/dist/cjs/packages/overlay/style/style.css +0 -1
  25. package/dist/cjs/packages/overlay/style-jmapp/overlay.scss +0 -1
  26. package/dist/cjs/packages/overlay/style-jmapp/style.css +0 -1
  27. package/dist/cjs/packages/overlay/style-jrkf/overlay.scss +0 -1
  28. package/dist/cjs/packages/overlay/style-jrkf/style.css +0 -1
  29. package/dist/cjs/types/spec/calendar/base.d.ts +3 -1
  30. package/dist/cjs/types/spec/calendarcard/base.d.ts +1 -0
  31. package/dist/cjs/types/spec/datepicker/base.d.ts +1 -1
  32. package/dist/cjs/types/spec/imagepreview/h5.d.ts +4 -1
  33. package/dist/cjs/types/spec/imagepreview/taro.d.ts +4 -1
  34. package/dist/cjs/utils/date.d.ts +2 -2
  35. package/dist/cjs/utils/date.js +2 -2
  36. package/dist/es/packages/button/style/button.scss +3 -0
  37. package/dist/es/packages/button/style/style.css +3 -3
  38. package/dist/es/packages/button/style-jmapp/button.scss +3 -0
  39. package/dist/es/packages/button/style-jmapp/style.css +3 -3
  40. package/dist/es/packages/button/style-jrkf/button.scss +3 -0
  41. package/dist/es/packages/button/style-jrkf/style.css +3 -3
  42. package/dist/es/packages/calendarcard/calendarcard.js +11 -5
  43. package/dist/es/packages/calendaritem/calendaritem.d.ts +1 -1
  44. package/dist/es/packages/calendaritem/calendaritem.js +3 -3
  45. package/dist/es/packages/configprovider/types.d.ts +1 -1
  46. package/dist/es/packages/datepicker/utils.js +22 -37
  47. package/dist/es/packages/dialog/dialog.js +2 -7
  48. package/dist/es/packages/formitem/formitem.js +3 -3
  49. package/dist/es/packages/formitem/style/formitem.scss +14 -15
  50. package/dist/es/packages/formitem/style/style.css +9 -11
  51. package/dist/es/packages/formitem/style-jmapp/formitem.scss +14 -15
  52. package/dist/es/packages/formitem/style-jmapp/style.css +8 -10
  53. package/dist/es/packages/formitem/style-jrkf/formitem.scss +14 -15
  54. package/dist/es/packages/formitem/style-jrkf/style.css +8 -10
  55. package/dist/es/packages/imagepreview/imagepreview.js +23 -7
  56. package/dist/es/packages/noticebar/noticebar.js +67 -42
  57. package/dist/es/packages/overlay/style/overlay.scss +0 -1
  58. package/dist/es/packages/overlay/style/style.css +0 -1
  59. package/dist/es/packages/overlay/style-jmapp/overlay.scss +0 -1
  60. package/dist/es/packages/overlay/style-jmapp/style.css +0 -1
  61. package/dist/es/packages/overlay/style-jrkf/overlay.scss +0 -1
  62. package/dist/es/packages/overlay/style-jrkf/style.css +0 -1
  63. package/dist/es/types/spec/calendar/base.d.ts +3 -1
  64. package/dist/es/types/spec/calendarcard/base.d.ts +4 -0
  65. package/dist/es/types/spec/datepicker/base.d.ts +1 -1
  66. package/dist/es/types/spec/imagepreview/h5.d.ts +4 -1
  67. package/dist/es/types/spec/imagepreview/taro.d.ts +4 -1
  68. package/dist/es/utils/date.d.ts +2 -2
  69. package/dist/es/utils/date.js +2 -2
  70. package/dist/nutui.react.umd.js +128 -104
  71. package/dist/style-jmapp.css +1 -1
  72. package/dist/style-jmapp.scss +28 -28
  73. package/dist/style-jrkf.css +1 -1
  74. package/dist/style-jrkf.scss +40 -40
  75. package/dist/style.css +1 -1
  76. package/dist/style.scss +31 -31
  77. package/dist/styles/variables.scss +1 -2
  78. package/package.json +1 -1
@@ -2077,8 +2077,8 @@ Check the top-level render call using <` + t + ">.");
2077
2077
  return {
2078
2078
  day: k + 1,
2079
2079
  type: type2,
2080
- preYear,
2081
- preMonth
2080
+ year: preYear,
2081
+ month: preMonth
2082
2082
  };
2083
2083
  });
2084
2084
  return months.slice(preDates - days);
@@ -12730,13 +12730,13 @@ Please add \`${key2}Action\` when creating your handler.`);
12730
12730
  renderDay: void 0,
12731
12731
  renderDayTop: void 0,
12732
12732
  renderDayBottom: void 0,
12733
- onConfirm: function(data2) {
12733
+ onConfirm: function() {
12734
12734
  },
12735
12735
  onUpdate: function() {
12736
12736
  },
12737
- onDayClick: function(data2) {
12737
+ onDayClick: function() {
12738
12738
  },
12739
- onPageChange: function(data2) {
12739
+ onPageChange: function() {
12740
12740
  }
12741
12741
  });
12742
12742
  var CalendarItem = /* @__PURE__ */ React.forwardRef(function(props, ref) {
@@ -13510,7 +13510,8 @@ Please add \`${key2}Action\` when creating your handler.`);
13510
13510
  var prefixCls = "nut-calendarcard";
13511
13511
  var CalendarCard = /* @__PURE__ */ React.forwardRef(function(props, ref) {
13512
13512
  var locale = useConfig().locale;
13513
- var _$_object_spread = _object_spread({}, defaultProps$15, props), style = _$_object_spread.style, className = _$_object_spread.className, type2 = _$_object_spread.type, value2 = _$_object_spread.value, defaultValue = _$_object_spread.defaultValue, firstDayOfWeek = _$_object_spread.firstDayOfWeek, startDate = _$_object_spread.startDate, endDate = _$_object_spread.endDate, disableDay = _$_object_spread.disableDay, renderDay = _$_object_spread.renderDay, renderDayTop = _$_object_spread.renderDayTop, renderDayBottom = _$_object_spread.renderDayBottom, onDayClick = _$_object_spread.onDayClick, onPageChange = _$_object_spread.onPageChange, onChange = _$_object_spread.onChange;
13513
+ var _$_object_spread = _object_spread({}, defaultProps$15, props), style = _$_object_spread.style, className = _$_object_spread.className, type2 = _$_object_spread.type, title = _$_object_spread.title, value2 = _$_object_spread.value, defaultValue = _$_object_spread.defaultValue, firstDayOfWeek = _$_object_spread.firstDayOfWeek, startDate = _$_object_spread.startDate, endDate = _$_object_spread.endDate, disableDay = _$_object_spread.disableDay, renderDay = _$_object_spread.renderDay, renderDayTop = _$_object_spread.renderDayTop, renderDayBottom = _$_object_spread.renderDayBottom, onDayClick = _$_object_spread.onDayClick, onPageChange = _$_object_spread.onPageChange, onChange = _$_object_spread.onChange;
13514
+ var onPageChangeRef = React.useRef(onPageChange);
13514
13515
  var _useState = _sliced_to_array(React.useState(function() {
13515
13516
  var date2 = new Date(Date.now());
13516
13517
  var val2 = value2 || defaultValue;
@@ -13582,13 +13583,18 @@ Please add \`${key2}Action\` when creating your handler.`);
13582
13583
  firstDayOfWeek
13583
13584
  ]);
13584
13585
  React.useEffect(function() {
13586
+ onPageChangeRef.current = onPageChange;
13587
+ }, [
13588
+ onPageChange
13589
+ ]);
13590
+ React.useEffect(function() {
13591
+ var _onPageChangeRef_current;
13585
13592
  var newDays = getDays(month);
13586
13593
  setDays(newDays);
13587
- onPageChange === null || onPageChange === void 0 ? void 0 : onPageChange(month);
13594
+ (_onPageChangeRef_current = onPageChangeRef.current) === null || _onPageChangeRef_current === void 0 ? void 0 : _onPageChangeRef_current.call(onPageChangeRef, month);
13588
13595
  }, [
13589
13596
  month,
13590
13597
  getDays,
13591
- onPageChange,
13592
13598
  firstDayOfWeek
13593
13599
  ]);
13594
13600
  var isSameDay = function(day1, day2) {
@@ -13884,7 +13890,7 @@ Please add \`${key2}Action\` when creating your handler.`);
13884
13890
  return days.length > 0 ? /* @__PURE__ */ React.createElement("div", {
13885
13891
  className: classNames(prefixCls, className),
13886
13892
  style
13887
- }, renderHeader(), renderContent()) : null;
13893
+ }, title || renderHeader(), renderContent()) : null;
13888
13894
  });
13889
13895
  CalendarCard.displayName = "NutCalendarCard";
13890
13896
  var CheckboxGroupContext = React.createContext(null);
@@ -14838,44 +14844,30 @@ Please add \`${key2}Action\` when creating your handler.`);
14838
14844
  };
14839
14845
  var handlePickerValueChange = function(selectedOptions, selectedValue, index2, type2, defaultDate, handleDateComparison) {
14840
14846
  var rangeType = type2.toLocaleLowerCase();
14841
- if ([
14842
- "date",
14843
- "datetime",
14844
- "datehour",
14845
- "month-day",
14846
- "year-month"
14847
- ].includes(rangeType)) {
14848
- var formattedDate = [];
14849
- selectedValue.forEach(function(item) {
14850
- formattedDate.push(item);
14851
- });
14852
- if (rangeType === "month-day" && formattedDate.length < 3) {
14853
- formattedDate.unshift(new Date(defaultDate).getFullYear());
14854
- }
14855
- if (rangeType === "year-month" && formattedDate.length < 3) {
14856
- formattedDate.push(new Date(defaultDate).getDate());
14857
- }
14858
- var year = Number(formattedDate[0]);
14859
- var month = Number(formattedDate[1]) - 1;
14860
- var day = Math.min(Number(formattedDate[2]), getLastDayOfMonth(year, month + 1));
14861
- var date2 = null;
14862
- if (rangeType === "date" || rangeType === "month-day" || rangeType === "year-month") {
14863
- date2 = new Date(year, month, day);
14864
- } else if (rangeType === "datetime") {
14865
- date2 = new Date(year, month, day, Number(formattedDate[3]), Number(formattedDate[4]));
14866
- } else if (rangeType === "datehour") {
14867
- date2 = new Date(year, month, day, Number(formattedDate[3]));
14868
- }
14869
- handleDateComparison(date2, selectedOptions, index2);
14847
+ var formattedDate = [];
14848
+ selectedValue.forEach(function(item) {
14849
+ formattedDate.push(item);
14850
+ });
14851
+ if (rangeType === "month-day" && formattedDate.length < 3) {
14852
+ formattedDate.unshift(new Date(defaultDate).getFullYear());
14853
+ }
14854
+ if (rangeType === "year-month" && formattedDate.length < 3) {
14855
+ formattedDate.push(new Date(defaultDate).getDate());
14856
+ }
14857
+ var year = Number(formattedDate[0]);
14858
+ var month = Number(formattedDate[1]) - 1;
14859
+ var day = Math.min(Number(formattedDate[2]), getLastDayOfMonth(year, month + 1));
14860
+ var date2 = null;
14861
+ if (rangeType === "date" || rangeType === "month-day" || rangeType === "year-month") {
14862
+ date2 = new Date(year, month, day);
14863
+ } else if (rangeType === "datetime") {
14864
+ date2 = new Date(year, month, day, Number(formattedDate[3]), Number(formattedDate[4]));
14865
+ } else if (rangeType === "datehour") {
14866
+ date2 = new Date(year, month, day, Number(formattedDate[3]));
14870
14867
  } else {
14871
- var _selectedValue = _sliced_to_array(selectedValue, 3), hour = _selectedValue[0], minute = _selectedValue[1], seconds = _selectedValue[2];
14872
- var currentDate = new Date(defaultDate);
14873
- var year1 = currentDate.getFullYear();
14874
- var month1 = currentDate.getMonth();
14875
- var day1 = currentDate.getDate();
14876
- var date1 = new Date(year1, month1, day1, Number(hour), Number(minute), rangeType === "time" ? Number(seconds) : 0);
14877
- handleDateComparison(date1, selectedOptions, index2);
14868
+ date2 = new Date(year, month, day, Number(formattedDate[3]), Number(formattedDate[4]), Number(formattedDate[5]));
14878
14869
  }
14870
+ handleDateComparison(date2, selectedOptions, index2);
14879
14871
  };
14880
14872
  var currentYear$1 = (/* @__PURE__ */ new Date()).getFullYear();
14881
14873
  var defaultProps$10 = _object_spread_props(_object_spread({}, ComponentDefaults), {
@@ -16761,12 +16753,12 @@ Please add \`${key2}Action\` when creating your handler.`);
16761
16753
  });
16762
16754
  var item = name2 ? _this.context.formInstance.errors[name2] : [];
16763
16755
  var starPosition = _this.context.formInstance.starPosition;
16764
- var renderStar = (required2 || requiredInRules) && /* @__PURE__ */ React.createElement("div", {
16765
- className: "nut-form-item-label-required required"
16756
+ var renderStar = (required2 || requiredInRules) && /* @__PURE__ */ React.createElement("span", {
16757
+ className: "nut-form-item-label-".concat(starPosition, "-required required")
16766
16758
  }, "*");
16767
16759
  var renderLabel = /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("span", {
16768
16760
  className: "nut-form-item-labeltxt"
16769
- }, starPosition === "left" ? renderStar : null, label), starPosition === "right" ? renderStar : null);
16761
+ }, starPosition === "left" ? renderStar : null, label, starPosition === "right" ? renderStar : null));
16770
16762
  return /* @__PURE__ */ React.createElement(Cell, {
16771
16763
  className: "".concat(_this.getClassNameWithDirection("nut-form-item"), " ").concat(className),
16772
16764
  style,
@@ -20243,8 +20235,6 @@ Please add \`${key2}Action\` when creating your handler.`);
20243
20235
  var handleCancel = function(e2) {
20244
20236
  e2.stopPropagation();
20245
20237
  if (!(beforeCancel === null || beforeCancel === void 0 ? void 0 : beforeCancel())) return;
20246
- if (!(beforeClose === null || beforeClose === void 0 ? void 0 : beforeClose())) return;
20247
- onClose();
20248
20238
  onCancel();
20249
20239
  };
20250
20240
  var handleOk = /* @__PURE__ */ function() {
@@ -20332,24 +20322,21 @@ Please add \`${key2}Action\` when creating your handler.`);
20332
20322
  };
20333
20323
  var renderCloseIcon = function() {
20334
20324
  if (!closeIcon) return null;
20335
- var handleCancel = function() {
20336
- if (!(beforeCancel === null || beforeCancel === void 0 ? void 0 : beforeCancel())) return;
20325
+ var handleClose = function() {
20337
20326
  if (!(beforeClose === null || beforeClose === void 0 ? void 0 : beforeClose())) return;
20338
20327
  onClose();
20339
- onCancel();
20340
20328
  };
20341
20329
  var _obj;
20342
20330
  var closeClasses = classNames((_obj = {}, _define_property(_obj, "".concat(classPrefix2, "-close"), true), _define_property(_obj, "".concat(classPrefix2, "-close-").concat(closeIconPosition), true), _obj));
20343
20331
  var systomIcon = closeIconPosition !== "bottom" ? /* @__PURE__ */ React.createElement(n$6, null) : /* @__PURE__ */ React.createElement(n$4, null);
20344
20332
  return /* @__PURE__ */ React.createElement("div", {
20345
20333
  className: closeClasses,
20346
- onClick: handleCancel
20334
+ onClick: handleClose
20347
20335
  }, /* @__PURE__ */ React.isValidElement(closeIcon) ? closeIcon : systomIcon);
20348
20336
  };
20349
20337
  var onHandleClickOverlay = function(e2) {
20350
20338
  if (closeOnOverlayClick && visible && e2.target === e2.currentTarget) {
20351
20339
  var closed = onOverlayClick && onOverlayClick(e2);
20352
- closed && onClose();
20353
20340
  closed && onCancel();
20354
20341
  }
20355
20342
  };
@@ -20897,9 +20884,10 @@ Please add \`${key2}Action\` when creating your handler.`);
20897
20884
  var _useState8 = _sliced_to_array(React.useState(null), 2), isCanScroll = _useState8[0], SetIsCanScroll = _useState8[1];
20898
20885
  var isVertical = direction === "vertical";
20899
20886
  var _useState9 = _sliced_to_array(React.useState(null), 2), rect = _useState9[0], setRect = _useState9[1];
20900
- var active2 = 0;
20887
+ var activeRef = React.useRef(0);
20901
20888
  var _useState10 = _sliced_to_array(React.useState(false), 2), ready = _useState10[0], setReady = _useState10[1];
20902
20889
  var container = React.useRef(null);
20890
+ var _useState11 = _sliced_to_array(React.useState(false), 2), isContainerReady = _useState11[0], setIsContainerReady = _useState11[1];
20903
20891
  var innerRef = React.useRef(null);
20904
20892
  var swiperRef = React.useRef({
20905
20893
  moving: false,
@@ -20909,8 +20897,8 @@ Please add \`${key2}Action\` when creating your handler.`);
20909
20897
  offset: 0,
20910
20898
  size: 0
20911
20899
  });
20912
- var _useState11 = _sliced_to_array(React.useState([]), 2), childOffset = _useState11[0], setChildOffset = _useState11[1];
20913
- var _useState12 = _sliced_to_array(React.useState(0), 2), offset = _useState12[0], setOffset = _useState12[1];
20900
+ var _useState12 = _sliced_to_array(React.useState([]), 2), childOffset = _useState12[0], setChildOffset = _useState12[1];
20901
+ var _useState13 = _sliced_to_array(React.useState(0), 2), offset = _useState13[0], setOffset = _useState13[1];
20914
20902
  var _useMemo = React.useMemo(function() {
20915
20903
  var childCount2 = 0;
20916
20904
  var childs2 = React.Children.map(children, function(child) {
@@ -20947,7 +20935,9 @@ Please add \`${key2}Action\` when creating your handler.`);
20947
20935
  return function() {
20948
20936
  clearInterval(timer);
20949
20937
  };
20950
- }, []);
20938
+ }, [
20939
+ childs
20940
+ ]);
20951
20941
  React.useEffect(function() {
20952
20942
  initScrollWrap();
20953
20943
  }, [
@@ -21040,24 +21030,23 @@ Please add \`${key2}Action\` when creating your handler.`);
21040
21030
  marginTop: animate ? "-".concat(height2, "px") : ""
21041
21031
  };
21042
21032
  var init = function() {
21043
- var active3 = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0;
21033
+ var activeIndex = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0;
21044
21034
  var rects = getRect(container === null || container === void 0 ? void 0 : container.current);
21045
- var _active = Math.max(Math.min(childCount - 1, active3), 0);
21035
+ var _active = Math.max(Math.min(childCount - 1, activeIndex), 0);
21046
21036
  var _height = rects.height;
21047
21037
  trackSize = childCount * Number(_height);
21048
21038
  var targetOffset = getOffset(_active);
21049
- swiperRef.current.moving = true;
21050
- if (ready) {
21051
- swiperRef.current.moving = false;
21052
- }
21053
- active3 = _active;
21039
+ activeRef.current = _active;
21054
21040
  setRect(rects);
21055
21041
  setOffset(targetOffset);
21042
+ setChildOffset(new Array(childCount).fill(0));
21043
+ swiperRef.current.moving = true;
21044
+ setStyle(targetOffset, rects);
21045
+ swiperRef.current.moving = false;
21056
21046
  setReady(true);
21057
21047
  };
21058
21048
  React.useEffect(function() {
21059
21049
  if (ready) {
21060
- stopAutoPlay();
21061
21050
  autoplay();
21062
21051
  }
21063
21052
  return function() {
@@ -21067,17 +21056,18 @@ Please add \`${key2}Action\` when creating your handler.`);
21067
21056
  ready
21068
21057
  ]);
21069
21058
  React.useEffect(function() {
21070
- if (isVertical && children) {
21071
- init();
21059
+ if (isVertical && children && isContainerReady) {
21072
21060
  stopAutoPlay();
21073
- autoplay();
21061
+ setReady(false);
21062
+ init();
21074
21063
  }
21075
21064
  }, [
21076
21065
  children,
21077
- container === null || container === void 0 ? void 0 : container.current
21066
+ isContainerReady
21078
21067
  ]);
21079
21068
  var stopAutoPlay = function() {
21080
21069
  clearTimeout(swiperRef.current.autoplayTimer);
21070
+ swiperRef.current.moving = false;
21081
21071
  swiperRef.current.autoplayTimer = null;
21082
21072
  };
21083
21073
  var autoplay = function() {
@@ -21093,21 +21083,24 @@ Please add \`${key2}Action\` when creating your handler.`);
21093
21083
  if (childCount <= 1) return;
21094
21084
  var targetActive = getActive(pace);
21095
21085
  var targetOffset = getOffset(targetActive, offset2);
21096
- if (Array.isArray(children) && children[0] && targetOffset !== minOffset) {
21097
- var rightBound = targetOffset < minOffset;
21098
- childOffset[0] = rightBound ? trackSize : 0;
21099
- }
21100
- if (Array.isArray(children) && children[childCount - 1] && targetOffset !== 0) {
21101
- var leftBound = targetOffset > 0;
21102
- childOffset[childCount - 1] = leftBound ? -trackSize : 0;
21103
- }
21104
- setChildOffset(childOffset);
21105
- active2 = targetActive;
21086
+ setChildOffset(function(prevChildOffset) {
21087
+ var newChildOffset = _to_consumable_array(prevChildOffset);
21088
+ if (Array.isArray(children) && children[0] && targetOffset !== minOffset) {
21089
+ var rightBound = targetOffset < minOffset;
21090
+ newChildOffset[0] = rightBound ? trackSize : 0;
21091
+ }
21092
+ if (Array.isArray(children) && children[childCount - 1] && targetOffset !== 0) {
21093
+ var leftBound = targetOffset > 0;
21094
+ newChildOffset[childCount - 1] = leftBound ? -trackSize : 0;
21095
+ }
21096
+ return newChildOffset;
21097
+ });
21098
+ activeRef.current = targetActive;
21106
21099
  setOffset(targetOffset);
21107
- getStyle(targetOffset);
21100
+ setStyle(targetOffset);
21108
21101
  };
21109
21102
  var next = function() {
21110
- resettPosition();
21103
+ resetPosition();
21111
21104
  requestFrame(function() {
21112
21105
  requestFrame(function() {
21113
21106
  swiperRef.current.moving = false;
@@ -21120,17 +21113,18 @@ Please add \`${key2}Action\` when creating your handler.`);
21120
21113
  var handleItemClick = function(event, value2) {
21121
21114
  onItemClick && onItemClick(event, value2);
21122
21115
  };
21123
- var getStyle = function() {
21124
- var moveOffset = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : offset;
21116
+ var setStyle = function() {
21117
+ var moveOffset = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : offset, currentRect = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : rect;
21125
21118
  var target = innerRef.current;
21126
21119
  if (!target) {
21127
21120
  return;
21128
21121
  }
21129
21122
  var _offset = 0;
21130
- var val2 = rect.height - height2;
21131
- _offset = moveOffset + Number(active2 === childCount - 1 && val2 / 2);
21123
+ var containerHeight = (currentRect === null || currentRect === void 0 ? void 0 : currentRect.height) || height2;
21124
+ var val2 = containerHeight - Number(height2);
21125
+ _offset = moveOffset + Number(activeRef.current === childCount - 1 && val2 / 2);
21132
21126
  target.style.transitionDuration = "".concat(swiperRef.current.moving ? 0 : duration, "ms");
21133
- target.style.height = "".concat(Number(height2) * childCount, "px");
21127
+ target.style.height = "".concat(Number(height2) * (childCount + 1), "px");
21134
21128
  target.style.transform = "translate3D(0,".concat(_offset, "px,0)");
21135
21129
  };
21136
21130
  var itemStyle = function(index2) {
@@ -21146,15 +21140,16 @@ Please add \`${key2}Action\` when creating your handler.`);
21146
21140
  return style2;
21147
21141
  };
21148
21142
  var getActive = function(pace) {
21143
+ var currentActive = activeRef.current;
21149
21144
  if (pace) {
21150
- var _active = active2 + pace;
21145
+ var _active = currentActive + pace;
21151
21146
  return range2(_active, -1, childCount);
21152
21147
  }
21153
- return active2;
21148
+ return currentActive;
21154
21149
  };
21155
- var getOffset = function(active3) {
21150
+ var getOffset = function(active2) {
21156
21151
  var offset2 = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0;
21157
- var currentPosition = active3 * Number(height2);
21152
+ var currentPosition = active2 * Number(height2);
21158
21153
  var targetOffset = offset2 - currentPosition;
21159
21154
  return targetOffset;
21160
21155
  };
@@ -21164,14 +21159,15 @@ Please add \`${key2}Action\` when creating your handler.`);
21164
21159
  var range2 = function(num, min, max) {
21165
21160
  return Math.min(Math.max(num, min), max);
21166
21161
  };
21167
- var resettPosition = function() {
21162
+ var resetPosition = function() {
21163
+ var currentActive = activeRef.current;
21168
21164
  swiperRef.current.moving = true;
21169
- if (active2 <= -1) {
21165
+ if (currentActive <= -1) {
21170
21166
  move({
21171
21167
  pace: childCount
21172
21168
  });
21173
21169
  }
21174
- if (active2 >= childCount) {
21170
+ if (currentActive >= childCount) {
21175
21171
  move({
21176
21172
  pace: -childCount
21177
21173
  });
@@ -21185,6 +21181,20 @@ Please add \`${key2}Action\` when creating your handler.`);
21185
21181
  stopAutoPlay();
21186
21182
  };
21187
21183
  }, []);
21184
+ var hasVerticalContent = React.useMemo(function() {
21185
+ if (!isVertical) return false;
21186
+ if (children) return (childs === null || childs === void 0 ? void 0 : childs.length) > 0;
21187
+ return (list === null || list === void 0 ? void 0 : list.length) > 0;
21188
+ }, [
21189
+ isVertical,
21190
+ childs,
21191
+ list,
21192
+ children
21193
+ ]);
21194
+ var containerRefCallback = React.useCallback(function(ref) {
21195
+ container.current = ref;
21196
+ setIsContainerReady(true);
21197
+ }, []);
21188
21198
  return /* @__PURE__ */ React.createElement("div", {
21189
21199
  className: cls,
21190
21200
  style
@@ -21210,10 +21220,10 @@ Please add \`${key2}Action\` when creating your handler.`);
21210
21220
  }, rightIcon || /* @__PURE__ */ React.createElement(n$6, {
21211
21221
  width: 12,
21212
21222
  height: 12
21213
- })) : null) : null, showNoticeBar && scrollList.current.length > 0 && isVertical ? /* @__PURE__ */ React.createElement("div", {
21223
+ })) : null) : null, showNoticeBar && hasVerticalContent && isVertical ? /* @__PURE__ */ React.createElement("div", {
21214
21224
  className: "nut-noticebar-vertical",
21215
21225
  style: barStyle,
21216
- ref: container,
21226
+ ref: containerRefCallback,
21217
21227
  onClick: handleClick
21218
21228
  }, leftIcon ? /* @__PURE__ */ React.createElement("div", {
21219
21229
  className: "nut-noticebar-box-left-icon"
@@ -24320,7 +24330,24 @@ Please add \`${key2}Action\` when creating your handler.`);
24320
24330
  }
24321
24331
  });
24322
24332
  var ImagePreview = function(props) {
24323
- var _$_object_spread = _object_spread({}, defaultProps$g, props), value2 = _$_object_spread.value, className = _$_object_spread.className, style = _$_object_spread.style, images = _$_object_spread.images, videos = _$_object_spread.videos, visible = _$_object_spread.visible, defaultValue = _$_object_spread.defaultValue, indicatorColor = _$_object_spread.indicatorColor, pagination = _$_object_spread.pagination, indicator = _$_object_spread.indicator, autoPlay = _$_object_spread.autoPlay, closeOnContentClick = _$_object_spread.closeOnContentClick, closeIcon = _$_object_spread.closeIcon, closeIconPosition = _$_object_spread.closeIconPosition, onClose = _$_object_spread.onClose, onChange = _$_object_spread.onChange;
24333
+ var _mergeProps = mergeProps(defaultProps$g, props), value2 = _mergeProps.value, className = _mergeProps.className, style = _mergeProps.style, images = _mergeProps.images, videos = _mergeProps.videos, visible = _mergeProps.visible, defaultValue = _mergeProps.defaultValue, indicatorColor = _mergeProps.indicatorColor, pagination = _mergeProps.pagination, indicator = _mergeProps.indicator, autoPlay = _mergeProps.autoPlay, closeOnContentClick = _mergeProps.closeOnContentClick, closeIcon = _mergeProps.closeIcon, closeIconPosition = _mergeProps.closeIconPosition, onClose = _mergeProps.onClose, onChange = _mergeProps.onChange, rest = _object_without_properties(_mergeProps, [
24334
+ "value",
24335
+ "className",
24336
+ "style",
24337
+ "images",
24338
+ "videos",
24339
+ "visible",
24340
+ "defaultValue",
24341
+ "indicatorColor",
24342
+ "pagination",
24343
+ "indicator",
24344
+ "autoPlay",
24345
+ "closeOnContentClick",
24346
+ "closeIcon",
24347
+ "closeIconPosition",
24348
+ "onClose",
24349
+ "onChange"
24350
+ ]);
24324
24351
  var classPrefix2 = "nut-imagepreview";
24325
24352
  var ref = React.useRef(null);
24326
24353
  var _usePropsValue = _sliced_to_array(usePropsValue({
@@ -24448,21 +24475,18 @@ Please add \`${key2}Action\` when creating your handler.`);
24448
24475
  style,
24449
24476
  ref,
24450
24477
  onTouchStart
24451
- }, showPop && /* @__PURE__ */ React.createElement(InnerSwiper, {
24452
- autoPlay: !!duration,
24453
- duration,
24478
+ }, showPop && /* @__PURE__ */ React.createElement(InnerSwiper, _object_spread({
24479
+ autoplay: !!duration,
24454
24480
  className: "".concat(classPrefix2, "-swiper"),
24455
- loop: true,
24456
24481
  style: {
24457
24482
  "--nutui-indicator-color": indicatorColor
24458
24483
  },
24459
- direction: "horizontal",
24460
24484
  onChange: function(page) {
24461
24485
  return slideChangeEnd(page);
24462
24486
  },
24463
24487
  defaultValue: innerNo > maxNo ? maxNo - 1 : innerNo - 1,
24464
24488
  indicator
24465
- }, _to_consumable_array(videos.map(function(item) {
24489
+ }, rest), _to_consumable_array(videos.map(function(item) {
24466
24490
  return {
24467
24491
  type: "video",
24468
24492
  data: item