indicator-ui 0.0.323 → 0.0.324
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
|
@@ -42517,11 +42517,13 @@ function useSmartScroll() {
|
|
|
42517
42517
|
args[_key] = arguments[_key];
|
|
42518
42518
|
}
|
|
42519
42519
|
var ref = args[0],
|
|
42520
|
-
|
|
42521
|
-
_args$
|
|
42522
|
-
|
|
42520
|
+
_args$ = args[1],
|
|
42521
|
+
callbacks = _args$ === void 0 ? {} : _args$,
|
|
42522
|
+
_args$2 = args[2],
|
|
42523
|
+
options = _args$2 === void 0 ? {} : _args$2;
|
|
42523
42524
|
var onScrollStart = callbacks.onScrollStart,
|
|
42524
|
-
onScrollEnd = callbacks.onScrollEnd
|
|
42525
|
+
onScrollEnd = callbacks.onScrollEnd,
|
|
42526
|
+
onScroll = callbacks.onScroll;
|
|
42525
42527
|
var delayPx = options.delayPx,
|
|
42526
42528
|
_options$callbackDela = options.callbackDelay,
|
|
42527
42529
|
callbackDelay = _options$callbackDela === void 0 ? CALLBACK_DELAY : _options$callbackDela,
|
|
@@ -42599,6 +42601,22 @@ function useSmartScroll() {
|
|
|
42599
42601
|
setIsScrollable(scrollHeight > clientHeight);
|
|
42600
42602
|
}
|
|
42601
42603
|
};
|
|
42604
|
+
var getScrollState = function getScrollState(scrollTop, scrollHeight) {
|
|
42605
|
+
var topAbs = Math.abs(scrollTop);
|
|
42606
|
+
if (topAbs === 0) {
|
|
42607
|
+
return 'start';
|
|
42608
|
+
} else if (topAbs === scrollHeight) {
|
|
42609
|
+
return 'end';
|
|
42610
|
+
}
|
|
42611
|
+
return 'middle';
|
|
42612
|
+
};
|
|
42613
|
+
var getParts = function getParts(scrollTop, scrollHeight, clientHeight) {
|
|
42614
|
+
var scrollTopAbs = Math.abs(scrollTop);
|
|
42615
|
+
var start = scrollTopAbs / scrollHeight;
|
|
42616
|
+
var view = clientHeight / scrollHeight;
|
|
42617
|
+
var end = (scrollHeight - (clientHeight + scrollTopAbs)) / scrollHeight;
|
|
42618
|
+
return [start, view, end];
|
|
42619
|
+
};
|
|
42602
42620
|
var scrollListener = function scrollListener(event) {
|
|
42603
42621
|
if (ref.current) {
|
|
42604
42622
|
var scrollTop = ref.current.scrollTop;
|
|
@@ -42610,6 +42628,13 @@ function useSmartScroll() {
|
|
|
42610
42628
|
} else if (direction === 'to-end' && (0,_utils__WEBPACK_IMPORTED_MODULE_2__.isScrollInEnd)(scrollTop, scrollHeight, clientHeight, delayPx)) {
|
|
42611
42629
|
_onScrollEnd();
|
|
42612
42630
|
}
|
|
42631
|
+
onScroll({
|
|
42632
|
+
scrollTop: scrollTop,
|
|
42633
|
+
scrollHeight: scrollHeight,
|
|
42634
|
+
clientHeight: clientHeight,
|
|
42635
|
+
state: getScrollState(scrollTop, scrollHeight),
|
|
42636
|
+
parts: getParts(scrollTop, scrollHeight, clientHeight)
|
|
42637
|
+
});
|
|
42613
42638
|
}
|
|
42614
42639
|
saveLastScroll();
|
|
42615
42640
|
checkScrollable();
|