@nutui/nutui-react-taro 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 (90) 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/style.harmony.css +12 -0
  5. package/dist/cjs/packages/button/style-jmapp/button.scss +3 -0
  6. package/dist/cjs/packages/button/style-jmapp/style.css +3 -3
  7. package/dist/cjs/packages/button/style-jrkf/button.scss +3 -0
  8. package/dist/cjs/packages/button/style-jrkf/style.css +3 -3
  9. package/dist/cjs/packages/calendarcard/calendarcard.js +10 -4
  10. package/dist/cjs/packages/calendaritem/calendaritem.d.ts +1 -1
  11. package/dist/cjs/packages/calendaritem/calendaritem.js +3 -3
  12. package/dist/cjs/packages/configprovider/types.d.ts +1 -1
  13. package/dist/cjs/packages/datepicker/utils.js +22 -37
  14. package/dist/cjs/packages/dialog/dialog.js +2 -7
  15. package/dist/cjs/packages/formitem/formitem.js +2 -2
  16. package/dist/cjs/packages/formitem/style/formitem.scss +14 -15
  17. package/dist/cjs/packages/formitem/style/style.css +9 -11
  18. package/dist/cjs/packages/formitem/style/style.harmony.css +8 -10
  19. package/dist/cjs/packages/formitem/style-jmapp/formitem.scss +14 -15
  20. package/dist/cjs/packages/formitem/style-jmapp/style.css +8 -10
  21. package/dist/cjs/packages/formitem/style-jrkf/formitem.scss +14 -15
  22. package/dist/cjs/packages/formitem/style-jrkf/style.css +8 -10
  23. package/dist/cjs/packages/imagepreview/imagepreview.js +25 -4
  24. package/dist/cjs/packages/noticebar/noticebar.js +66 -42
  25. package/dist/cjs/packages/overlay/style/overlay.scss +0 -1
  26. package/dist/cjs/packages/overlay/style/style.css +0 -1
  27. package/dist/cjs/packages/overlay/style/style.harmony.css +0 -1
  28. package/dist/cjs/packages/overlay/style-jmapp/overlay.scss +0 -1
  29. package/dist/cjs/packages/overlay/style-jmapp/style.css +0 -1
  30. package/dist/cjs/packages/overlay/style-jrkf/overlay.scss +0 -1
  31. package/dist/cjs/packages/overlay/style-jrkf/style.css +0 -1
  32. package/dist/cjs/packages/pickerview/pickerroller.js +9 -1
  33. package/dist/cjs/packages/swiper/index.d.ts +1 -1
  34. package/dist/cjs/packages/swiper/swiper.js +6 -0
  35. package/dist/cjs/types/spec/calendar/base.d.ts +3 -1
  36. package/dist/cjs/types/spec/calendarcard/base.d.ts +1 -0
  37. package/dist/cjs/types/spec/datepicker/base.d.ts +1 -1
  38. package/dist/cjs/types/spec/imagepreview/h5.d.ts +4 -1
  39. package/dist/cjs/types/spec/imagepreview/taro.d.ts +4 -1
  40. package/dist/cjs/utils/date.d.ts +2 -2
  41. package/dist/cjs/utils/date.js +2 -2
  42. package/dist/es/packages/button/style/button.scss +3 -0
  43. package/dist/es/packages/button/style/style.css +3 -3
  44. package/dist/es/packages/button/style/style.harmony.css +12 -0
  45. package/dist/es/packages/button/style-jmapp/button.scss +3 -0
  46. package/dist/es/packages/button/style-jmapp/style.css +3 -3
  47. package/dist/es/packages/button/style-jrkf/button.scss +3 -0
  48. package/dist/es/packages/button/style-jrkf/style.css +3 -3
  49. package/dist/es/packages/calendarcard/calendarcard.js +11 -5
  50. package/dist/es/packages/calendaritem/calendaritem.d.ts +1 -1
  51. package/dist/es/packages/calendaritem/calendaritem.js +3 -3
  52. package/dist/es/packages/configprovider/types.d.ts +1 -1
  53. package/dist/es/packages/datepicker/utils.js +22 -37
  54. package/dist/es/packages/dialog/dialog.js +2 -7
  55. package/dist/es/packages/formitem/formitem.js +2 -2
  56. package/dist/es/packages/formitem/style/formitem.scss +14 -15
  57. package/dist/es/packages/formitem/style/style.css +9 -11
  58. package/dist/es/packages/formitem/style/style.harmony.css +8 -10
  59. package/dist/es/packages/formitem/style-jmapp/formitem.scss +14 -15
  60. package/dist/es/packages/formitem/style-jmapp/style.css +8 -10
  61. package/dist/es/packages/formitem/style-jrkf/formitem.scss +14 -15
  62. package/dist/es/packages/formitem/style-jrkf/style.css +8 -10
  63. package/dist/es/packages/imagepreview/imagepreview.js +25 -4
  64. package/dist/es/packages/noticebar/noticebar.js +67 -43
  65. package/dist/es/packages/overlay/style/overlay.scss +0 -1
  66. package/dist/es/packages/overlay/style/style.css +0 -1
  67. package/dist/es/packages/overlay/style/style.harmony.css +0 -1
  68. package/dist/es/packages/overlay/style-jmapp/overlay.scss +0 -1
  69. package/dist/es/packages/overlay/style-jmapp/style.css +0 -1
  70. package/dist/es/packages/overlay/style-jrkf/overlay.scss +0 -1
  71. package/dist/es/packages/overlay/style-jrkf/style.css +0 -1
  72. package/dist/es/packages/pickerview/pickerroller.js +9 -1
  73. package/dist/es/packages/swiper/index.d.ts +1 -1
  74. package/dist/es/packages/swiper/swiper.js +7 -1
  75. package/dist/es/types/spec/calendar/base.d.ts +3 -1
  76. package/dist/es/types/spec/calendarcard/base.d.ts +4 -0
  77. package/dist/es/types/spec/datepicker/base.d.ts +1 -1
  78. package/dist/es/types/spec/imagepreview/h5.d.ts +4 -1
  79. package/dist/es/types/spec/imagepreview/taro.d.ts +4 -1
  80. package/dist/es/utils/date.d.ts +2 -2
  81. package/dist/es/utils/date.js +2 -2
  82. package/dist/nutui.react.umd.js +145 -101
  83. package/dist/style-jmapp.css +1 -1
  84. package/dist/style-jmapp.scss +40 -40
  85. package/dist/style-jrkf.css +1 -1
  86. package/dist/style-jrkf.scss +41 -41
  87. package/dist/style.css +1 -1
  88. package/dist/style.scss +37 -37
  89. package/dist/styles/variables.scss +1 -2
  90. package/package.json +1 -1
@@ -4565,8 +4565,8 @@
4565
4565
  return {
4566
4566
  day: k + 1,
4567
4567
  type: type2,
4568
- preYear,
4569
- preMonth
4568
+ year: preYear,
4569
+ month: preMonth
4570
4570
  };
4571
4571
  });
4572
4572
  return months.slice(preDates - days);
@@ -7290,13 +7290,13 @@
7290
7290
  renderDay: void 0,
7291
7291
  renderDayTop: void 0,
7292
7292
  renderDayBottom: void 0,
7293
- onConfirm: function(data2) {
7293
+ onConfirm: function() {
7294
7294
  },
7295
7295
  onUpdate: function() {
7296
7296
  },
7297
- onDayClick: function(data2) {
7297
+ onDayClick: function() {
7298
7298
  },
7299
- onPageChange: function(data2) {
7299
+ onPageChange: function() {
7300
7300
  }
7301
7301
  });
7302
7302
  var CalendarItem = /* @__PURE__ */ React.forwardRef(function(props, ref) {
@@ -8091,7 +8091,8 @@
8091
8091
  var prefixCls = "nut-calendarcard";
8092
8092
  var CalendarCard = /* @__PURE__ */ React.forwardRef(function(props, ref) {
8093
8093
  var locale = useConfig().locale;
8094
- 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;
8094
+ 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;
8095
+ var onPageChangeRef = React.useRef(onPageChange);
8095
8096
  var _useState = _sliced_to_array(React.useState(function() {
8096
8097
  var date2 = new Date(Date.now());
8097
8098
  var val2 = value2 || defaultValue;
@@ -8163,13 +8164,18 @@
8163
8164
  firstDayOfWeek
8164
8165
  ]);
8165
8166
  React.useEffect(function() {
8167
+ onPageChangeRef.current = onPageChange;
8168
+ }, [
8169
+ onPageChange
8170
+ ]);
8171
+ React.useEffect(function() {
8172
+ var _onPageChangeRef_current;
8166
8173
  var newDays = getDays(month);
8167
8174
  setDays(newDays);
8168
- onPageChange === null || onPageChange === void 0 ? void 0 : onPageChange(month);
8175
+ (_onPageChangeRef_current = onPageChangeRef.current) === null || _onPageChangeRef_current === void 0 ? void 0 : _onPageChangeRef_current.call(onPageChangeRef, month);
8169
8176
  }, [
8170
8177
  month,
8171
8178
  getDays,
8172
- onPageChange,
8173
8179
  firstDayOfWeek
8174
8180
  ]);
8175
8181
  var isSameDay = function(day1, day2) {
@@ -8448,7 +8454,7 @@
8448
8454
  return days.length > 0 ? /* @__PURE__ */ React.createElement(components.View, {
8449
8455
  className: classNames(prefixCls, className),
8450
8456
  style
8451
- }, renderHeader(), renderContent()) : null;
8457
+ }, title || renderHeader(), renderContent()) : null;
8452
8458
  });
8453
8459
  CalendarCard.displayName = "NutCalendarCard";
8454
8460
  var CheckboxGroupContext = React.createContext(null);
@@ -8807,7 +8813,9 @@
8807
8813
  var selectValue = function(move) {
8808
8814
  onSelect === null || onSelect === void 0 ? void 0 : onSelect(options === null || options === void 0 ? void 0 : options[Math.round(-move / lineSpacing.current)], keyIndex);
8809
8815
  };
8816
+ var isScroll = React.useRef(false);
8810
8817
  var handleTouchStart = function(event) {
8818
+ isScroll.current = true;
8811
8819
  touch.start(event);
8812
8820
  setStartY(touch.deltaY.current);
8813
8821
  setStartTime(Date.now());
@@ -8832,6 +8840,7 @@
8832
8840
  } else {
8833
8841
  handleMove(move, "end");
8834
8842
  }
8843
+ isScroll.current = false;
8835
8844
  setTimeout(function() {
8836
8845
  touch.reset();
8837
8846
  }, 0);
@@ -8949,6 +8958,11 @@
8949
8958
  handleTouchMove,
8950
8959
  handleTouchEnd
8951
8960
  ]);
8961
+ var onTransitionEnd = function() {
8962
+ if (!isScroll.current) {
8963
+ stopMomentumScroll();
8964
+ }
8965
+ };
8952
8966
  return /* @__PURE__ */ React.createElement(components.View, {
8953
8967
  className: "nut-pickerview-list",
8954
8968
  ref: pickerRollerRef
@@ -8961,7 +8975,7 @@
8961
8975
  id: "".concat(classPrefix2, "-").concat(uuid),
8962
8976
  ref: rollerRef,
8963
8977
  style: threeDimensional ? touchRollerStyle() : touchTiledStyle(),
8964
- onTransitionEnd: stopMomentumScroll
8978
+ onTransitionEnd
8965
8979
  }, threeDimensional && options.map(function(item, index2) {
8966
8980
  var _item_value;
8967
8981
  var _obj;
@@ -9465,44 +9479,30 @@
9465
9479
  };
9466
9480
  var handlePickerValueChange = function(selectedOptions, selectedValue, index2, type2, defaultDate, handleDateComparison) {
9467
9481
  var rangeType = type2.toLocaleLowerCase();
9468
- if ([
9469
- "date",
9470
- "datetime",
9471
- "datehour",
9472
- "month-day",
9473
- "year-month"
9474
- ].includes(rangeType)) {
9475
- var formattedDate = [];
9476
- selectedValue.forEach(function(item) {
9477
- formattedDate.push(item);
9478
- });
9479
- if (rangeType === "month-day" && formattedDate.length < 3) {
9480
- formattedDate.unshift(new Date(defaultDate).getFullYear());
9481
- }
9482
- if (rangeType === "year-month" && formattedDate.length < 3) {
9483
- formattedDate.push(new Date(defaultDate).getDate());
9484
- }
9485
- var year = Number(formattedDate[0]);
9486
- var month = Number(formattedDate[1]) - 1;
9487
- var day = Math.min(Number(formattedDate[2]), getLastDayOfMonth(year, month + 1));
9488
- var date2 = null;
9489
- if (rangeType === "date" || rangeType === "month-day" || rangeType === "year-month") {
9490
- date2 = new Date(year, month, day);
9491
- } else if (rangeType === "datetime") {
9492
- date2 = new Date(year, month, day, Number(formattedDate[3]), Number(formattedDate[4]));
9493
- } else if (rangeType === "datehour") {
9494
- date2 = new Date(year, month, day, Number(formattedDate[3]));
9495
- }
9496
- handleDateComparison(date2, selectedOptions, index2);
9482
+ var formattedDate = [];
9483
+ selectedValue.forEach(function(item) {
9484
+ formattedDate.push(item);
9485
+ });
9486
+ if (rangeType === "month-day" && formattedDate.length < 3) {
9487
+ formattedDate.unshift(new Date(defaultDate).getFullYear());
9488
+ }
9489
+ if (rangeType === "year-month" && formattedDate.length < 3) {
9490
+ formattedDate.push(new Date(defaultDate).getDate());
9491
+ }
9492
+ var year = Number(formattedDate[0]);
9493
+ var month = Number(formattedDate[1]) - 1;
9494
+ var day = Math.min(Number(formattedDate[2]), getLastDayOfMonth(year, month + 1));
9495
+ var date2 = null;
9496
+ if (rangeType === "date" || rangeType === "month-day" || rangeType === "year-month") {
9497
+ date2 = new Date(year, month, day);
9498
+ } else if (rangeType === "datetime") {
9499
+ date2 = new Date(year, month, day, Number(formattedDate[3]), Number(formattedDate[4]));
9500
+ } else if (rangeType === "datehour") {
9501
+ date2 = new Date(year, month, day, Number(formattedDate[3]));
9497
9502
  } else {
9498
- var _selectedValue = _sliced_to_array(selectedValue, 3), hour = _selectedValue[0], minute = _selectedValue[1], seconds = _selectedValue[2];
9499
- var currentDate = new Date(defaultDate);
9500
- var year1 = currentDate.getFullYear();
9501
- var month1 = currentDate.getMonth();
9502
- var day1 = currentDate.getDate();
9503
- var date1 = new Date(year1, month1, day1, Number(hour), Number(minute), rangeType === "time" ? Number(seconds) : 0);
9504
- handleDateComparison(date1, selectedOptions, index2);
9503
+ date2 = new Date(year, month, day, Number(formattedDate[3]), Number(formattedDate[4]), Number(formattedDate[5]));
9505
9504
  }
9505
+ handleDateComparison(date2, selectedOptions, index2);
9506
9506
  };
9507
9507
  var currentYear$1 = (/* @__PURE__ */ new Date()).getFullYear();
9508
9508
  var defaultProps$10 = _object_spread_props(_object_spread({}, ComponentDefaults), {
@@ -11406,11 +11406,11 @@
11406
11406
  var item = name2 ? _this.context.formInstance.errors[name2] : [];
11407
11407
  var starPosition = _this.context.formInstance.starPosition;
11408
11408
  var renderStar = (required2 || requiredInRules) && /* @__PURE__ */ React.createElement(components.Text, {
11409
- className: "nut-form-item-label-required required"
11409
+ className: "nut-form-item-label-".concat(starPosition, "-required required")
11410
11410
  }, "*");
11411
11411
  var renderLabel = /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(components.Text, {
11412
11412
  className: "nut-form-item-labeltxt"
11413
- }, starPosition === "left" ? renderStar : null, label), starPosition === "right" ? renderStar : null);
11413
+ }, starPosition === "left" ? renderStar : null, label, starPosition === "right" ? renderStar : null));
11414
11414
  return /* @__PURE__ */ React.createElement(Cell, {
11415
11415
  className: "".concat(_this.getClassNameWithDirection("nut-form-item"), " ").concat(className),
11416
11416
  style,
@@ -15066,8 +15066,6 @@
15066
15066
  var handleCancel = function(e) {
15067
15067
  e.stopPropagation();
15068
15068
  if (!(beforeCancel === null || beforeCancel === void 0 ? void 0 : beforeCancel())) return;
15069
- if (!(beforeClose === null || beforeClose === void 0 ? void 0 : beforeClose())) return;
15070
- onClose();
15071
15069
  onCancel();
15072
15070
  };
15073
15071
  var handleOk = /* @__PURE__ */ function() {
@@ -15152,24 +15150,21 @@
15152
15150
  };
15153
15151
  var renderCloseIcon = function() {
15154
15152
  if (!closeIcon) return null;
15155
- var handleCancel = function() {
15156
- if (!(beforeCancel === null || beforeCancel === void 0 ? void 0 : beforeCancel())) return;
15153
+ var handleClose = function() {
15157
15154
  if (!(beforeClose === null || beforeClose === void 0 ? void 0 : beforeClose())) return;
15158
15155
  onClose();
15159
- onCancel();
15160
15156
  };
15161
15157
  var _obj;
15162
15158
  var closeClasses = classNames((_obj = {}, _define_property(_obj, "".concat(classPrefix2, "-close"), true), _define_property(_obj, "".concat(classPrefix2, "-close-").concat(closeIconPosition), true), _obj));
15163
15159
  var systomIcon = closeIconPosition !== "bottom" ? /* @__PURE__ */ React.createElement(IconSVG$p, null) : /* @__PURE__ */ React.createElement(IconSVG$n, null);
15164
15160
  return /* @__PURE__ */ React.createElement(components.View, {
15165
15161
  className: closeClasses,
15166
- onClick: handleCancel
15162
+ onClick: handleClose
15167
15163
  }, /* @__PURE__ */ React.isValidElement(closeIcon) ? closeIcon : systomIcon);
15168
15164
  };
15169
15165
  var onHandleClickOverlay = function(e) {
15170
15166
  if (closeOnOverlayClick && visible && e.target === e.currentTarget) {
15171
15167
  var closed = onOverlayClick && onOverlayClick(e);
15172
- closed && onClose();
15173
15168
  closed && onCancel();
15174
15169
  }
15175
15170
  };
@@ -15732,9 +15727,10 @@
15732
15727
  var _useState8 = _sliced_to_array(React.useState(null), 2), isCanScroll = _useState8[0], SetIsCanScroll = _useState8[1];
15733
15728
  var isVertical = direction === "vertical";
15734
15729
  var _useState9 = _sliced_to_array(React.useState(null), 2), rect = _useState9[0], setRect = _useState9[1];
15735
- var active2 = 0;
15730
+ var activeRef = React.useRef(0);
15736
15731
  var _useState10 = _sliced_to_array(React.useState(false), 2), ready = _useState10[0], setReady = _useState10[1];
15737
15732
  var container = React.useRef(null);
15733
+ var _useState11 = _sliced_to_array(React.useState(false), 2), isContainerReady = _useState11[0], setIsContainerReady = _useState11[1];
15738
15734
  var innerRef = React.useRef(null);
15739
15735
  var swiperRef = React.useRef({
15740
15736
  moving: false,
@@ -15744,8 +15740,8 @@
15744
15740
  offset: 0,
15745
15741
  size: 0
15746
15742
  });
15747
- var _useState11 = _sliced_to_array(React.useState([]), 2), childOffset = _useState11[0], setChildOffset = _useState11[1];
15748
- var _useState12 = _sliced_to_array(React.useState(0), 2), offset = _useState12[0], setOffset = _useState12[1];
15743
+ var _useState12 = _sliced_to_array(React.useState([]), 2), childOffset = _useState12[0], setChildOffset = _useState12[1];
15744
+ var _useState13 = _sliced_to_array(React.useState(0), 2), offset = _useState13[0], setOffset = _useState13[1];
15749
15745
  var _useMemo = React.useMemo(function() {
15750
15746
  var childCount2 = 0;
15751
15747
  var childs2 = React.Children.map(children, function(child) {
@@ -15782,7 +15778,9 @@
15782
15778
  return function() {
15783
15779
  clearInterval(timer);
15784
15780
  };
15785
- }, []);
15781
+ }, [
15782
+ childs
15783
+ ]);
15786
15784
  React.useEffect(function() {
15787
15785
  initScrollWrap();
15788
15786
  }, [
@@ -15899,7 +15897,7 @@
15899
15897
  marginTop: animate ? "-".concat(height2, "px") : ""
15900
15898
  };
15901
15899
  var init = function() {
15902
- var active3 = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0;
15900
+ var activeIndex = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0;
15903
15901
  if (!(container === null || container === void 0 ? void 0 : container.current)) return;
15904
15902
  setTimeout(/* @__PURE__ */ _async_to_generator(function() {
15905
15903
  var rects, _active, _height, targetOffset;
@@ -15912,17 +15910,17 @@
15912
15910
  ];
15913
15911
  case 1:
15914
15912
  rects = _state.sent();
15915
- _active = Math.max(Math.min(childCount - 1, active3), 0);
15913
+ _active = Math.max(Math.min(childCount - 1, activeIndex), 0);
15916
15914
  _height = rects === null || rects === void 0 ? void 0 : rects.height;
15917
15915
  trackSize = childCount * Number(_height);
15918
15916
  targetOffset = getOffset(_active);
15919
- swiperRef.current.moving = true;
15920
- if (ready) {
15921
- swiperRef.current.moving = false;
15922
- }
15923
- active3 = _active;
15917
+ activeRef.current = _active;
15924
15918
  setRect(rects);
15925
15919
  setOffset(targetOffset);
15920
+ setChildOffset(new Array(childCount).fill(0));
15921
+ swiperRef.current.moving = true;
15922
+ setStyle(targetOffset, rects);
15923
+ swiperRef.current.moving = false;
15926
15924
  setReady(true);
15927
15925
  return [
15928
15926
  2
@@ -15933,7 +15931,6 @@
15933
15931
  };
15934
15932
  React.useEffect(function() {
15935
15933
  if (ready) {
15936
- stopAutoPlay();
15937
15934
  autoplay();
15938
15935
  }
15939
15936
  return function() {
@@ -15943,17 +15940,18 @@
15943
15940
  ready
15944
15941
  ]);
15945
15942
  React.useEffect(function() {
15946
- if (isVertical && children) {
15947
- init();
15943
+ if (isVertical && children && isContainerReady) {
15948
15944
  stopAutoPlay();
15949
- autoplay();
15945
+ setReady(false);
15946
+ init();
15950
15947
  }
15951
15948
  }, [
15952
15949
  children,
15953
- container === null || container === void 0 ? void 0 : container.current
15950
+ isContainerReady
15954
15951
  ]);
15955
15952
  var stopAutoPlay = function() {
15956
15953
  clearTimeout(swiperRef.current.autoplayTimer);
15954
+ swiperRef.current.moving = false;
15957
15955
  swiperRef.current.autoplayTimer = null;
15958
15956
  };
15959
15957
  var autoplay = function() {
@@ -15969,21 +15967,24 @@
15969
15967
  if (childCount <= 1) return;
15970
15968
  var targetActive = getActive(pace);
15971
15969
  var targetOffset = getOffset(targetActive, offset2);
15972
- if (Array.isArray(children) && children[0] && targetOffset !== minOffset) {
15973
- var rightBound = targetOffset < minOffset;
15974
- childOffset[0] = rightBound ? trackSize : 0;
15975
- }
15976
- if (Array.isArray(children) && children[childCount - 1] && targetOffset !== 0) {
15977
- var leftBound = targetOffset > 0;
15978
- childOffset[childCount - 1] = leftBound ? -trackSize : 0;
15979
- }
15980
- setChildOffset(childOffset);
15981
- active2 = targetActive;
15970
+ setChildOffset(function(prevChildOffset) {
15971
+ var newChildOffset = _to_consumable_array(prevChildOffset);
15972
+ if (Array.isArray(children) && children[0] && targetOffset !== minOffset) {
15973
+ var rightBound = targetOffset < minOffset;
15974
+ newChildOffset[0] = rightBound ? trackSize : 0;
15975
+ }
15976
+ if (Array.isArray(children) && children[childCount - 1] && targetOffset !== 0) {
15977
+ var leftBound = targetOffset > 0;
15978
+ newChildOffset[childCount - 1] = leftBound ? -trackSize : 0;
15979
+ }
15980
+ return newChildOffset;
15981
+ });
15982
+ activeRef.current = targetActive;
15982
15983
  setOffset(targetOffset);
15983
- getStyle(targetOffset);
15984
+ setStyle(targetOffset);
15984
15985
  };
15985
15986
  var next = function() {
15986
- resettPosition();
15987
+ resetPosition();
15987
15988
  requestFrame(function() {
15988
15989
  requestFrame(function() {
15989
15990
  swiperRef.current.moving = false;
@@ -15996,17 +15997,18 @@
15996
15997
  var handleItemClick = function(event, value2) {
15997
15998
  onItemClick && onItemClick(event, value2);
15998
15999
  };
15999
- var getStyle = function() {
16000
- var moveOffset = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : offset;
16000
+ var setStyle = function() {
16001
+ var moveOffset = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : offset, currentRect = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : rect;
16001
16002
  var target = innerRef.current;
16002
16003
  if (!target) {
16003
16004
  return;
16004
16005
  }
16005
16006
  var _offset = 0;
16006
- var val2 = ((rect === null || rect === void 0 ? void 0 : rect.height) || 0) - height2;
16007
- _offset = moveOffset + Number(active2 === childCount - 1 && val2 / 2);
16007
+ var containerHeight = (currentRect === null || currentRect === void 0 ? void 0 : currentRect.height) || height2;
16008
+ var val2 = containerHeight - Number(height2);
16009
+ _offset = moveOffset + Number(activeRef.current === childCount - 1 && val2 / 2);
16008
16010
  target.style.transitionDuration = "".concat(swiperRef.current.moving ? 0 : duration, "ms");
16009
- target.style.height = "".concat(Number(height2) * childCount, "px");
16011
+ target.style.height = "".concat(Number(height2) * (childCount + 1), "px");
16010
16012
  target.style.transform = "translate3D(0,".concat(_offset, "px,0)");
16011
16013
  };
16012
16014
  var itemStyle = function(index2) {
@@ -16022,15 +16024,16 @@
16022
16024
  return style2;
16023
16025
  };
16024
16026
  var getActive = function(pace) {
16027
+ var currentActive = activeRef.current;
16025
16028
  if (pace) {
16026
- var _active = active2 + pace;
16029
+ var _active = currentActive + pace;
16027
16030
  return range2(_active, -1, childCount);
16028
16031
  }
16029
- return active2;
16032
+ return currentActive;
16030
16033
  };
16031
- var getOffset = function(active3) {
16034
+ var getOffset = function(active2) {
16032
16035
  var offset2 = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0;
16033
- var currentPosition = active3 * Number(height2);
16036
+ var currentPosition = active2 * Number(height2);
16034
16037
  var targetOffset = offset2 - currentPosition;
16035
16038
  return targetOffset;
16036
16039
  };
@@ -16040,14 +16043,15 @@
16040
16043
  var range2 = function(num, min, max) {
16041
16044
  return Math.min(Math.max(num, min), max);
16042
16045
  };
16043
- var resettPosition = function() {
16046
+ var resetPosition = function() {
16047
+ var currentActive = activeRef.current;
16044
16048
  swiperRef.current.moving = true;
16045
- if (active2 <= -1) {
16049
+ if (currentActive <= -1) {
16046
16050
  move({
16047
16051
  pace: childCount
16048
16052
  });
16049
16053
  }
16050
- if (active2 >= childCount) {
16054
+ if (currentActive >= childCount) {
16051
16055
  move({
16052
16056
  pace: -childCount
16053
16057
  });
@@ -16061,6 +16065,20 @@
16061
16065
  stopAutoPlay();
16062
16066
  };
16063
16067
  }, []);
16068
+ var hasVerticalContent = React.useMemo(function() {
16069
+ if (!isVertical) return false;
16070
+ if (children) return (childs === null || childs === void 0 ? void 0 : childs.length) > 0;
16071
+ return (list === null || list === void 0 ? void 0 : list.length) > 0;
16072
+ }, [
16073
+ isVertical,
16074
+ childs,
16075
+ list,
16076
+ children
16077
+ ]);
16078
+ var containerRefCallback = React.useCallback(function(ref) {
16079
+ container.current = ref;
16080
+ setIsContainerReady(true);
16081
+ }, []);
16064
16082
  return /* @__PURE__ */ React.createElement(components.View, {
16065
16083
  className: cls,
16066
16084
  style
@@ -16085,10 +16103,10 @@
16085
16103
  onClick: onClickIcon
16086
16104
  }, rightIcon || /* @__PURE__ */ React.createElement(IconSVG$p, {
16087
16105
  size: 12
16088
- })) : null) : null, showNoticeBar && scrollList.current.length > 0 && isVertical ? /* @__PURE__ */ React.createElement(components.View, {
16106
+ })) : null) : null, showNoticeBar && hasVerticalContent && isVertical ? /* @__PURE__ */ React.createElement(components.View, {
16089
16107
  className: "nut-noticebar-vertical",
16090
16108
  style: barStyle,
16091
- ref: container,
16109
+ ref: containerRefCallback,
16092
16110
  onClick: handleClick
16093
16111
  }, leftIcon ? /* @__PURE__ */ React.createElement(components.View, {
16094
16112
  className: "nut-noticebar-box-left-icon"
@@ -18783,6 +18801,12 @@
18783
18801
  }, [
18784
18802
  children
18785
18803
  ]);
18804
+ React.useEffect(function() {
18805
+ setInnerValue(current || defaultValue);
18806
+ }, [
18807
+ defaultValue,
18808
+ current
18809
+ ]);
18786
18810
  var renderIndicator = function() {
18787
18811
  if (/* @__PURE__ */ React.isValidElement(indicator)) return indicator;
18788
18812
  if (indicator || indicatorDots) {
@@ -18891,7 +18915,27 @@
18891
18915
  }
18892
18916
  });
18893
18917
  var ImagePreview = function(props) {
18894
- var _$_object_spread = _object_spread({}, defaultProps$h, 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, showMenuByLongpress = _$_object_spread.showMenuByLongpress, onClose = _$_object_spread.onClose, onChange = _$_object_spread.onChange;
18918
+ var _mergeProps = mergeProps(defaultProps$h, 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, loop = _mergeProps.loop, closeOnContentClick = _mergeProps.closeOnContentClick, closeIcon = _mergeProps.closeIcon, closeIconPosition = _mergeProps.closeIconPosition, showMenuByLongpress = _mergeProps.showMenuByLongpress, onClose = _mergeProps.onClose, onChange = _mergeProps.onChange;
18919
+ _object_without_properties(_mergeProps, [
18920
+ "value",
18921
+ "className",
18922
+ "style",
18923
+ "images",
18924
+ "videos",
18925
+ "visible",
18926
+ "defaultValue",
18927
+ "indicatorColor",
18928
+ "pagination",
18929
+ "indicator",
18930
+ "autoPlay",
18931
+ "loop",
18932
+ "closeOnContentClick",
18933
+ "closeIcon",
18934
+ "closeIconPosition",
18935
+ "showMenuByLongpress",
18936
+ "onClose",
18937
+ "onChange"
18938
+ ]);
18895
18939
  var classPrefix2 = "nut-imagepreview";
18896
18940
  var ref = React.useRef(null);
18897
18941
  var _usePropsValue = _sliced_to_array(usePropsValue({
@@ -19022,9 +19066,10 @@
19022
19066
  onTouchEnd,
19023
19067
  onTouchCancel: onTouchEnd
19024
19068
  }, /* @__PURE__ */ React.createElement(InnerSwiper, {
19025
- autoPlay,
19069
+ autoplay: autoPlay,
19070
+ loop,
19071
+ direction: "horizontal",
19026
19072
  className: "".concat(classPrefix2, "-swiper"),
19027
- loop: true,
19028
19073
  height: "100%",
19029
19074
  style: {
19030
19075
  display: showPop ? "block" : "none",
@@ -19032,7 +19077,6 @@
19032
19077
  width: "100%",
19033
19078
  height: "100%"
19034
19079
  },
19035
- direction: "horizontal",
19036
19080
  onChange: function(e) {
19037
19081
  return slideChangeEnd(e.detail.current);
19038
19082
  },