indicator-ui 0.0.262 → 0.0.264

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.
package/dist/index.js CHANGED
@@ -32661,7 +32661,6 @@ function InputFieldWrapper(_ref) {
32661
32661
  }
32662
32662
  return undefined;
32663
32663
  };
32664
- console.log(_defineProperty({}, _styles__WEBPACK_IMPORTED_MODULE_2__.InputFieldWrapperStyle.display, display === "small" || display === "large"));
32665
32664
  return (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
32666
32665
  className: (0,clsx__WEBPACK_IMPORTED_MODULE_1__["default"])(_styles__WEBPACK_IMPORTED_MODULE_2__.InputFieldWrapperStyle.inputFieldWrapper, _defineProperty(_defineProperty({}, _styles__WEBPACK_IMPORTED_MODULE_2__.InputFieldWrapperStyle.isError, isError), _styles__WEBPACK_IMPORTED_MODULE_2__.InputFieldWrapperStyle.display, display === "small" || display === "large"), getClassName('main')),
32667
32666
  children: [getLabelContent(), children, getHintContent(), getHelperLinkContent()]
@@ -35599,7 +35598,7 @@ __webpack_require__.r(__webpack_exports__);
35599
35598
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
35600
35599
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "react");
35601
35600
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
35602
- var _excluded = ["onScroll", "onScrollTop", "onScrollBottom", "accuracy", "wrapper"];
35601
+ var _excluded = ["onScroll", "onScrollTop", "onScrollBottom", "accuracy", "wrapper", "onWheelTopUp", "onWheelBottomDown"];
35603
35602
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
35604
35603
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
35605
35604
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
@@ -35621,8 +35620,13 @@ var ScrollProvider = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_1__.forwardR
35621
35620
  accuracy = _props$accuracy === void 0 ? 10 : _props$accuracy,
35622
35621
  _props$wrapper = props.wrapper,
35623
35622
  wrapper = _props$wrapper === void 0 ? (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", {}) : _props$wrapper,
35623
+ onWheelTopUp = props.onWheelTopUp,
35624
+ onWheelBottomDown = props.onWheelBottomDown,
35624
35625
  componentProps = _objectWithoutProperties(props, _excluded);
35626
+ var lastScrollHeightRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(undefined);
35625
35627
  var elementRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);
35628
+ var isTopTriggeredRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(false);
35629
+ var isBottomTriggeredRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(false);
35626
35630
  (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {
35627
35631
  if (elementRef.current) {
35628
35632
  var handleScroll = function handleScroll(_event) {
@@ -35631,12 +35635,9 @@ var ScrollProvider = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_1__.forwardR
35631
35635
  var scrollTop = Math.abs(el.scrollTop);
35632
35636
  var clientHeight = el.clientHeight;
35633
35637
  var scrollHeight = el.scrollHeight;
35634
- if (onScrollTop && scrollTop <= accuracy) {
35635
- onScrollTop();
35636
- }
35637
- if (onScrollBottom && scrollTop + clientHeight + accuracy >= scrollHeight) {
35638
- onScrollBottom();
35639
- }
35638
+ var prevScrollHeight = lastScrollHeightRef.current;
35639
+ lastScrollHeightRef.current = scrollHeight;
35640
+ // Обработка обычного скролла
35640
35641
  if (onScroll) {
35641
35642
  if (typeof onScroll === "function") {
35642
35643
  onScroll(scrollTop);
@@ -35654,15 +35655,37 @@ var ScrollProvider = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_1__.forwardR
35654
35655
  }
35655
35656
  }
35656
35657
  }
35658
+ // Сброс флагов при выходе за границы accuracy
35659
+ if (scrollTop > accuracy) {
35660
+ isTopTriggeredRef.current = false;
35661
+ }
35662
+ if (scrollTop + clientHeight < scrollHeight - accuracy) {
35663
+ isBottomTriggeredRef.current = false;
35664
+ }
35665
+ // Обработка верхней границы
35666
+ if (onScrollTop && scrollTop <= accuracy) {
35667
+ var shouldSkipDueToHeightChange = prevScrollHeight !== undefined && scrollHeight > prevScrollHeight;
35668
+ if (!shouldSkipDueToHeightChange && !isTopTriggeredRef.current) {
35669
+ onScrollTop();
35670
+ isTopTriggeredRef.current = true;
35671
+ }
35672
+ }
35673
+ // Обработка нижней границы
35674
+ if (onScrollBottom && scrollTop + clientHeight + accuracy >= scrollHeight) {
35675
+ var _shouldSkipDueToHeightChange = prevScrollHeight !== undefined && scrollHeight < prevScrollHeight;
35676
+ if (!_shouldSkipDueToHeightChange && !isBottomTriggeredRef.current) {
35677
+ onScrollBottom();
35678
+ isBottomTriggeredRef.current = true;
35679
+ }
35680
+ }
35657
35681
  };
35658
- // Добавляем слушатель события scroll
35659
35682
  elementRef.current.addEventListener("scroll", handleScroll);
35660
35683
  return function () {
35661
35684
  var _elementRef$current;
35662
35685
  (_elementRef$current = elementRef.current) === null || _elementRef$current === void 0 || _elementRef$current.removeEventListener("scroll", handleScroll);
35663
35686
  };
35664
35687
  }
35665
- }, [onScroll, onScrollTop, onScrollBottom]);
35688
+ }, [onScroll, onScrollTop, onScrollBottom, accuracy]);
35666
35689
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().cloneElement(wrapper, _objectSpread({
35667
35690
  ref: function ref(node) {
35668
35691
  elementRef.current = node;