@elastic/eui
Version:
Elastic UI Component Library
40 lines (35 loc) • 1.83 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.useIsEuiTableResponsive = exports.useEuiTableIsResponsive = exports.EuiTableIsResponsiveContext = exports.DEFAULT_TABLE_BREAKPOINT = void 0;
var _react = require("react");
var _services = require("../../../services");
/*
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
* or more contributor license agreements. Licensed under the Elastic License
* 2.0 and the Server Side Public License, v 1; you may not use this file except
* in compliance with, at your election, the Elastic License 2.0 or the Server
* Side Public License, v 1.
*/
var DEFAULT_TABLE_BREAKPOINT = exports.DEFAULT_TABLE_BREAKPOINT = 'm';
/**
* Used by parent/top-level table components to determine isResponsive state
* based on the passed breakpoint
*/
var useIsEuiTableResponsive = exports.useIsEuiTableResponsive = function useIsEuiTableResponsive() {
var breakpoint = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : DEFAULT_TABLE_BREAKPOINT;
var isBoolean = typeof breakpoint === 'boolean';
// Note: we're using `!useIsWithinMinBreakpoint` here instead of `useIsWithinMaxBreakpoint`
// because it more accurately reflects the single breakpoint at which tables collapse
var isResponsive = !(0, _services.useIsWithinMinBreakpoint)(isBoolean ? '' : breakpoint);
return isBoolean ? breakpoint : isResponsive;
};
/**
* Context set by parent table components
* Hook used by cells to fetch parent isResponsive state
*/
var EuiTableIsResponsiveContext = exports.EuiTableIsResponsiveContext = /*#__PURE__*/(0, _react.createContext)(false);
var useEuiTableIsResponsive = exports.useEuiTableIsResponsive = function useEuiTableIsResponsive() {
return (0, _react.useContext)(EuiTableIsResponsiveContext);
};