@atom-learning/components 8.0.1 → 8.0.2
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.cjs.js +12 -6
- package/dist/index.cjs.js.map +1 -1
- package/dist/utilities/hooks/useCallbackRef.js +1 -1
- package/dist/utilities/hooks/useCallbackRef.js.map +1 -1
- package/dist/utilities/hooks/useResizeObserver.js +5 -1
- package/dist/utilities/hooks/useResizeObserver.js.map +1 -1
- package/dist/utilities/hooks/useScrollPosition.js +1 -1
- package/dist/utilities/hooks/useScrollPosition.js.map +1 -1
- package/dist/utilities/hooks/useSize.js +5 -3
- package/dist/utilities/hooks/useSize.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -1370,7 +1370,7 @@ var useCallbackRef = () => {
|
|
|
1370
1370
|
var useCallbackRefState = () => {
|
|
1371
1371
|
const [elRef, setElRef] = react.useState(null);
|
|
1372
1372
|
return [elRef, react.useCallback((el) => {
|
|
1373
|
-
if (el) setElRef(el);
|
|
1373
|
+
if (el) setElRef((prev) => prev === el ? prev : el);
|
|
1374
1374
|
}, [])];
|
|
1375
1375
|
};
|
|
1376
1376
|
//#endregion
|
|
@@ -1506,7 +1506,11 @@ var createResizeObserver = (callback) => {
|
|
|
1506
1506
|
}
|
|
1507
1507
|
};
|
|
1508
1508
|
var useResizeObserver = ({ delay = 500, elements, onResize }) => {
|
|
1509
|
-
const
|
|
1509
|
+
const onResizeRef = react.useRef(onResize);
|
|
1510
|
+
react.useLayoutEffect(() => {
|
|
1511
|
+
onResizeRef.current = onResize;
|
|
1512
|
+
});
|
|
1513
|
+
const observer = react.useMemo(() => createResizeObserver((0, throttle_debounce.debounce)(delay, (entries) => onResizeRef.current(entries))), [delay]);
|
|
1510
1514
|
react.useEffect(() => {
|
|
1511
1515
|
elements.forEach((element) => {
|
|
1512
1516
|
if (element) observer?.observe(element);
|
|
@@ -9702,7 +9706,7 @@ var useScrollPosition = ({ element, delay = 500, delayMethod = "throttle" }) =>
|
|
|
9702
9706
|
(0, react.useEffect)(() => {
|
|
9703
9707
|
if (!element) return;
|
|
9704
9708
|
const handleScroll = delayMethodFn(delay, () => {
|
|
9705
|
-
setScrollPosition({
|
|
9709
|
+
setScrollPosition((prev) => prev.left === element.scrollLeft && prev.top === element.scrollTop ? prev : {
|
|
9706
9710
|
left: element.scrollLeft,
|
|
9707
9711
|
top: element.scrollTop
|
|
9708
9712
|
});
|
|
@@ -9726,9 +9730,11 @@ var useSize = ({ element, delay = 500 }) => {
|
|
|
9726
9730
|
height: void 0
|
|
9727
9731
|
});
|
|
9728
9732
|
const handleResize = (0, react.useCallback)(() => {
|
|
9729
|
-
|
|
9730
|
-
|
|
9731
|
-
|
|
9733
|
+
const width = element?.clientWidth;
|
|
9734
|
+
const height = element?.clientHeight;
|
|
9735
|
+
setSize((prev) => prev.width === width && prev.height === height ? prev : {
|
|
9736
|
+
width,
|
|
9737
|
+
height
|
|
9732
9738
|
});
|
|
9733
9739
|
}, [element]);
|
|
9734
9740
|
useResizeObserver({
|