21 lines
799 B
JavaScript
21 lines
799 B
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.useScrollbarWidth = void 0;
|
|
var scrollbar_width_1 = require("@xobotyi/scrollbar-width");
|
|
var react_1 = require("react");
|
|
function useScrollbarWidth() {
|
|
var _a = react_1.useState(scrollbar_width_1.scrollbarWidth()), sbw = _a[0], setSbw = _a[1];
|
|
// this needed to ensure the scrollbar width in case hook called before the DOM is ready
|
|
react_1.useEffect(function () {
|
|
if (typeof sbw !== 'undefined') {
|
|
return;
|
|
}
|
|
var raf = requestAnimationFrame(function () {
|
|
setSbw(scrollbar_width_1.scrollbarWidth());
|
|
});
|
|
return function () { return cancelAnimationFrame(raf); };
|
|
}, []);
|
|
return sbw;
|
|
}
|
|
exports.useScrollbarWidth = useScrollbarWidth;
|