UNPKG

@patternfly/react-core

Version:

This library provides a set of common React components for use with the PatternFly reference implementation.

44 lines 2.33 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.GridItem = void 0; const tslib_1 = require("tslib"); const jsx_runtime_1 = require("react/jsx-runtime"); const grid_1 = tslib_1.__importDefault(require("@patternfly/react-styles/css/layouts/Grid/grid")); const react_styles_1 = require("@patternfly/react-styles"); const sizes_1 = require("../../styles/sizes"); const gridToken = tslib_1.__importStar(require('@patternfly/react-tokens/dist/js/l_grid_item_Order')); const util_1 = require("../../helpers/util"); const GridItem = (_a) => { var { children = null, className = '', component = 'div', span = null, rowSpan = null, offset = null, order, style } = _a, props = tslib_1.__rest(_a, ["children", "className", "component", "span", "rowSpan", "offset", "order", "style"]); const classes = [ grid_1.default.gridItem, span && grid_1.default.modifiers[`${span}Col`], rowSpan && grid_1.default.modifiers[`${rowSpan}Row`], offset && grid_1.default.modifiers[`offset_${offset}Col`] ]; const Component = component; Object.entries(sizes_1.DeviceSizes).forEach(([propKey, classModifier]) => { const key = propKey; const rowSpanKey = `${key}RowSpan`; const offsetKey = `${key}Offset`; const spanValue = props[key]; const rowSpanValue = props[rowSpanKey]; const offsetValue = props[offsetKey]; if (spanValue) { classes.push(grid_1.default.modifiers[`${spanValue}ColOn${classModifier}`]); } if (rowSpanValue) { classes.push(grid_1.default.modifiers[`${rowSpanValue}RowOn${classModifier}`]); } if (offsetValue) { classes.push(grid_1.default.modifiers[`offset_${offsetValue}ColOn${classModifier}`]); } delete props[key]; delete props[rowSpanKey]; delete props[offsetKey]; }); return ((0, jsx_runtime_1.jsx)(Component, Object.assign({ className: (0, react_styles_1.css)(...classes, className), style: style || order ? Object.assign(Object.assign({}, style), (0, util_1.setBreakpointCssVars)(order, gridToken.l_grid_item_Order.name)) : undefined }, props, { children: children }))); }; exports.GridItem = GridItem; exports.GridItem.displayName = 'GridItem'; //# sourceMappingURL=GridItem.js.map