UNPKG

@mantine/core

Version:

React components library focused on usability, accessibility and developer experience

87 lines (82 loc) 2.57 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var createMemoStyles = require('../../theme/create-memo-styles.js'); var getSizeValue = require('../../theme/utils/get-size-value/get-size-value.js'); var __defProp = Object.defineProperty; var __defProps = Object.defineProperties; var __getOwnPropDescs = Object.getOwnPropertyDescriptors; var __getOwnPropSymbols = Object.getOwnPropertySymbols; var __hasOwnProp = Object.prototype.hasOwnProperty; var __propIsEnum = Object.prototype.propertyIsEnumerable; var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __spreadValues = (a, b) => { for (var prop in b || (b = {})) if (__hasOwnProp.call(b, prop)) __defNormalProp(a, prop, b[prop]); if (__getOwnPropSymbols) for (var prop of __getOwnPropSymbols(b)) { if (__propIsEnum.call(b, prop)) __defNormalProp(a, prop, b[prop]); } return a; }; var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); const sizes = { xs: 180, sm: 240, md: 320, lg: 360, xl: 500, full: "100%" }; function getPositionStyles({ position, size }) { switch (position) { case "top": return { top: 0, left: 0, right: 0, height: getSizeValue.getSizeValue({ size, sizes }) }; case "bottom": return { bottom: 0, left: 0, right: 0, height: getSizeValue.getSizeValue({ size, sizes }) }; case "right": return { bottom: 0, top: 0, right: 0, width: getSizeValue.getSizeValue({ size, sizes }) }; case "left": return { bottom: 0, top: 0, left: 0, width: getSizeValue.getSizeValue({ size, sizes }) }; default: return null; } } var useStyles = createMemoStyles.createMemoStyles({ noOverlay: {}, root: { "&:not($noOverlay)": { position: "fixed", top: 0, left: 0, right: 0, bottom: 0 } }, drawer: ({ size, position }) => __spreadProps(__spreadValues({}, getPositionStyles({ position, size })), { maxWidth: "100%", maxHeight: "100vh", position: "fixed", outline: 0 }), title: ({ theme }) => ({ marginRight: theme.spacing.md, textOverflow: "ellipsis", display: "block", wordBreak: "break-word" }), header: ({ theme }) => ({ display: "flex", alignItems: "center", justifyContent: "space-between", marginBottom: theme.spacing.md, marginRight: -9 }) }); exports.default = useStyles; exports.sizes = sizes; //# sourceMappingURL=Drawer.styles.js.map