UNPKG

@atlaskit/page-layout

Version:

A collection of components which let you compose an application's page layout.

36 lines (35 loc) 1.29 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray")); var _react = require("react"); var _constants = require("../constants"); var getIsCollapsing = function getIsCollapsing() { // SSR bail-out because document is undefined on the server if (typeof document === 'undefined') { return false; } return document.documentElement.getAttribute(_constants.IS_SIDEBAR_COLLAPSING) === 'true'; }; var useIsSidebarCollapsing = function useIsSidebarCollapsing() { var _useState = (0, _react.useState)(getIsCollapsing), _useState2 = (0, _slicedToArray2.default)(_useState, 2), isCollapsing = _useState2[0], setIsCollapsing = _useState2[1]; (0, _react.useEffect)(function () { var observer = new MutationObserver(function () { setIsCollapsing(getIsCollapsing); }); observer.observe(document.documentElement, { attributeFilter: [_constants.IS_SIDEBAR_COLLAPSING] }); return function () { observer.disconnect(); }; }, []); return isCollapsing; }; var _default = exports.default = useIsSidebarCollapsing;