@coveord/plasma-mantine
Version:
A Plasma flavoured Mantine theme
38 lines (37 loc) • 1.3 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "useParentHeight", {
enumerable: true,
get: function() {
return useParentHeight;
}
});
var _sliced_to_array = require("@swc/helpers/_/_sliced_to_array");
var _react = require("react");
var getElementInnerHeight = function getElementInnerHeight(el) {
if (!el) {
return -1;
}
var fullHeight = el.getBoundingClientRect().height;
var cs = getComputedStyle(el);
var padding = parseFloat(cs.paddingTop) + parseFloat(cs.paddingBottom);
var border = parseFloat(cs.borderTopWidth) + parseFloat(cs.borderBottomWidth);
return fullHeight - padding - border;
};
var useParentHeight = function useParentHeight() {
var _useState = _sliced_to_array._((0, _react.useState)(-1), 2), height = _useState[0], setHeight = _useState[1];
var ref = (0, _react.useRef)(null);
(0, _react.useEffect)(function() {
var _ref_current;
if ((_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.parentElement) {
setHeight(getElementInnerHeight(ref.current.parentElement));
}
}, []);
return [
height,
ref
];
};
//# sourceMappingURL=useParentHeight.js.map