@kubit-ui-web/react-components
Version:
Kubit React Components is a customizable, accessible library of React web components, designed to enhance your application's user experience
25 lines • 1.06 kB
JavaScript
import React from 'react';
import { ResizeObserver } from '../../../utils/resizeObserver/resizeObserver';
import { hasScroll as checkHasSroll } from '../../../utils/scroll/hasScroll';
export const useDataTableHasScroll = ({ ref, }) => {
const [hasScroll, setHasScroll] = React.useState(false);
React.useEffect(() => {
const scrollableContainer = ref.current?.querySelector?.('[data-datatable-scrollable-container]');
let resizeObserver;
if (scrollableContainer instanceof HTMLElement) {
const handleElementResize = (element) => {
setHasScroll(checkHasSroll(element));
};
handleElementResize(scrollableContainer);
resizeObserver = new ResizeObserver(() => {
handleElementResize(scrollableContainer);
});
resizeObserver.observe(scrollableContainer);
}
return () => {
resizeObserver?.disconnect();
};
}, []);
return { hasScroll };
};
//# sourceMappingURL=useDataTableHasScroll.js.map