{"version":3,"file":"EntityHeaderContainer.mjs","names":["React","Children","cloneElement","PropTypes","clsx","makeStyles","Divider","darken","alpha","useStyles","theme","root","props","display","flexDirection","direction","rootBgDark","backgroundColor","color","palette","primary","main","secondary","getContrastText","rootBgSoft","rootBgCustom","background","EntityHeaderContainer","$","_c","children","showSeperator","arrayChildren","toArray","classes","t0","t1","t2","t3","t4","rootBg","t5","map","child","index","isLast","length","t6","propTypes","node","isRequired","bool","oneOf","defaultProps"],"sources":["../../../../../src/UI/dataDisplay/entityHeader/ui/EntityHeaderContainer.jsx"],"sourcesContent":["import React, { Children, cloneElement } from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport { makeStyles, Divider, darken, alpha } from '@material-ui/core';\n\nconst useStyles = makeStyles(theme => ({\n  root: props => ({\n    display: 'flex',\n    flexDirection: props.direction === 'column' ? 'column' : 'row',\n  }),\n  rootBgDark: props => ({\n    backgroundColor: darken(\n      props.color === 'primary'\n        ? theme.palette.primary.main\n        : theme.palette.secondary.main,\n      0.2\n    ),\n    color: theme.palette.getContrastText(\n      props.color === 'primary'\n        ? theme.palette.primary.main\n        : theme.palette.secondary.main\n    ),\n  }),\n  rootBgSoft: props => ({\n    backgroundColor: alpha(\n      props.color === 'primary'\n        ? theme.palette.primary.main\n        : theme.palette.secondary.main,\n      0.15\n    ),\n  }),\n  rootBgCustom: props => ({\n    backgroundColor: props.background,\n    color: props.color,\n  }),\n}));\n\nexport const EntityHeaderContainer = props => {\n  const { children, showSeperator, background } = props;\n  const arrayChildren = Children.toArray(children);\n  const classes = useStyles(props);\n\n  return (\n    <div\n      className={clsx({\n        [classes.root]: true, // always applies\n        [classes.rootBg]: background === 'light' || !background, // if background = 'light'\n        [classes.rootBgDark]: background === 'dark', // if background = 'dark'\n        [classes.rootBgSoft]: background === 'soft', // if background = 'soft'\n        [classes.rootBgCustom]:\n          background &&\n          background !== 'light' &&\n          background !== 'dark' &&\n          background !== 'soft',\n      })}\n    >\n      {Children.map(arrayChildren, (child, index) => {\n        const isLast = index === arrayChildren.length - 1;\n        return (\n          <>\n            {cloneElement(child, {\n              isLast,\n            })}\n            {!isLast && showSeperator && (\n              <Divider orientation=\"vertical\" flexItem />\n            )}\n          </>\n        );\n      })}\n    </div>\n  );\n};\n\nEntityHeaderContainer.propTypes = {\n  children: PropTypes.node.isRequired,\n  showSeperator: PropTypes.bool,\n  background: PropTypes.oneOf(['light', 'dark', 'soft']),\n  direction: PropTypes.oneOf(['row', 'column']),\n  color: PropTypes.oneOf(['primary', 'secondary']),\n};\n\nEntityHeaderContainer.defaultProps = {\n  showSeperator: true,\n  background: 'light',\n  direction: 'row',\n  color: 'primary',\n};\n"],"mappings":"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"}