{"version":3,"file":"FluentListItem.mjs","names":["React","useState","makeStyles","Divider","Collapse","clsx","LayoutUnit","FluentIcon","ChevronDownIcon","Typography","FluentCheckbox","useStyles","theme","root","height","spacing","wrapper","display","flexDirection","titleWrapper","width","textAlign","alignItems","title","flex","progress","content","background","palette","secondary","main","props","total","iconStart","marginRight","iconEnd","marginLeft","expand","transform","transition","transitions","create","duration","shortest","expandOpen","iconSpace","valueWrapper","valueIcon","checkbox","padding","name","FluentListItem","$","_c","classes","subject","value","visualization","boldSubject","t0","expandable","t1","valueTextColor","icon","iconColor","t2","valueIconColor","hideDivider","t3","children","expandedDefaultValue","t4","keepIconLeftSpace","t5","keepIconRightSpace","t6","defaultChecked","t7","onCheckEvent","undefined","expandItem","setExpandItem","t8","handleOnClick","t9","t10","t11","t12","t13","t14","t15","t16","Symbol","for","t17","t18","t19","t20","t21","t22","t23","t24","t25","t26","t27","t28","t29"],"sources":["../../../src/UI/dataDisplay/FluentListItem.jsx"],"sourcesContent":["/* eslint-disable react/self-closing-comp */\nimport React, { useState } from 'react';\nimport { makeStyles, Divider, Collapse } from '@material-ui/core';\nimport clsx from 'clsx';\nimport { LayoutUnit } from '../../layout/LayoutUnit';\nimport { FluentIcon } from '../../utilities/iconLibrary/FluentIcon';\nimport { ChevronDownIcon } from '@fluentui/react-icons';\nimport { Typography } from './typography/Typography';\nimport { FluentCheckbox } from '../inputs/checkbox/FluentCheckbox';\n\nconst useStyles = makeStyles(\n  (theme) => ({\n    root: {\n      height: theme.spacing(5)\n    },\n    wrapper: {\n      display: 'flex',\n      flexDirection: 'row'\n    },\n    titleWrapper: {\n      display: 'flex',\n      width: '100%',\n      textAlign: 'left',\n      alignItems: 'center'\n    },\n    title: {\n      flex: 1\n    },\n    progress: {\n      height: 2,\n      '&::after': {\n        content: `''`,\n        display: 'block',\n        background: theme.palette.secondary.main,\n        width: (props) => (props.progress / props.total) * 425,\n        height: '100%'\n      }\n    },\n    iconStart: {\n      marginRight: theme.spacing(1)\n    },\n    iconEnd: {\n      marginLeft: theme.spacing(1)\n    },\n    expand: {\n      transform: 'rotate(0deg)',\n      transition: theme.transitions.create('transform', {\n        duration: theme.transitions.duration.shortest\n      })\n    },\n    expandOpen: {\n      transform: 'rotate(180deg)'\n    },\n    iconSpace: {\n      width: theme.spacing(2.75)\n    },\n    valueWrapper: {\n      display: 'flex',\n      alignItems: 'center'\n    },\n    valueIcon: {\n      marginRight: theme.spacing(1)\n    },\n    checkbox: {\n      marginRight: theme.spacing(1),\n      padding: '0px'\n    }\n  }),\n  { name: 'FluentListItem' }\n);\n\nexport const FluentListItem = (props) => {\n  const classes = useStyles(props);\n  const {\n    subject,\n    value,\n    visualization,\n    boldSubject = true,\n    expandable = false,\n    valueTextColor,\n    icon,\n    iconColor,\n    iconEnd = true,\n    valueIcon,\n    valueIconColor,\n    hideDivider = false,\n    children,\n    expandedDefaultValue = false,\n    keepIconLeftSpace = false,\n    keepIconRightSpace = false,\n    defaultChecked = false,\n    onCheckEvent\n  } = props;\n  const [expandItem, setExpandItem] = useState(expandedDefaultValue);\n\n  const handleOnClick = () => {\n    setExpandItem(!expandItem);\n  };\n\n  return (\n    <div>\n      <div className={classes.root} onClick={expandable ? handleOnClick : null}>\n        <div className={classes.wrapper}>\n          <div className={classes.titleWrapper}>\n            {keepIconLeftSpace && (!expandable || iconEnd) && (\n              <div className={classes.iconSpace}></div>\n            )}\n            {onCheckEvent && (\n              <FluentCheckbox\n                defaultChecked={defaultChecked}\n                onChange={onCheckEvent}\n                className={classes.checkbox}\n              />\n            )}\n            {(icon || expandable) && !iconEnd && (\n              <FluentIcon\n                component={expandable ? ChevronDownIcon : icon}\n                color={iconColor}\n                className={clsx(classes.iconStart, {\n                  [classes.expand]: expandable,\n                  [classes.expandOpen]: expandable && expandItem\n                })}\n                size='small'\n              />\n            )}\n\n            <div className={classes.title}>\n              <Typography variant='body1'>\n                {boldSubject ? <strong>{subject}</strong> : subject}\n              </Typography>\n            </div>\n            <LayoutUnit unit='nudge' />\n            <div className={classes.valueWrapper}>\n              {valueIcon && (\n                <FluentIcon\n                  component={valueIcon}\n                  color={valueIconColor}\n                  className={classes.valueIcon}\n                  size='small'\n                />\n              )}\n              <Typography variant='body1' color={valueTextColor}>\n                {value}\n              </Typography>\n            </div>\n\n            {(icon || expandable) && iconEnd && (\n              <FluentIcon\n                component={expandable ? ChevronDownIcon : icon}\n                color={iconColor}\n                className={clsx(classes.iconEnd, {\n                  [classes.expand]: expandable,\n                  [classes.expandOpen]: expandable && expandItem\n                })}\n                size='small'\n              />\n            )}\n            {keepIconRightSpace && (!expandable || !iconEnd) && (\n              <div className={classes.iconSpace}></div>\n            )}\n          </div>\n        </div>\n        <LayoutUnit unit='nudge' />\n        {!hideDivider && (\n          <Divider className={visualization && classes.progress} />\n        )}\n      </div>\n      <Collapse in={expandItem} timeout='auto' unmountOnExit>\n        <div>{children}</div>\n      </Collapse>\n    </div>\n  );\n};\n"],"mappings":"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"}