{"version":3,"file":"TimelineToken.mjs","names":["React","useState","makeStyles","Typography","PropTypes","Ellipse","getEllipseColor","clsx","useStyles","theme","root","margin","props","compact","spacing","display","justifyContent","letter","fontSize","size","color","buttonRoot","width","height","hover","zIndex","position","top","left","TimelineToken","$","_c","type","t0","variant","t1","t2","t3","icon","t4","IconEllipseProps","className","hoverContainer","isHover","undefined","classes","setHover","t5","Symbol","for","hoverFunction","t6","t7","t8","toUpperCase","t9","t10","t11","tokenComponent","propTypes","string","iconType","oneOfType","elementType","object","iconColorOverride","onClick","func","element","bool"],"sources":["../../../../../src/componentSystems/multiThreadTimeline/ui/modified/TimelineToken.jsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { makeStyles, Typography } from '@material-ui/core';\nimport PropTypes from 'prop-types';\nimport { Ellipse } from '../../../../UI/components/dataDisplay/Ellipse';\nimport { getEllipseColor } from '../../../../utilities/style/utils/styleUtils';\nimport clsx from 'clsx';\n\nconst useStyles = makeStyles((theme) => ({\n  root: {\n    margin: (props) => (props.compact ? theme.spacing(0.5) : theme.spacing(1)),\n    display: 'flex',\n    justifyContent: 'center'\n  },\n  letter: {\n    fontSize: (props) =>\n      props.size === 'small' ? theme.spacing(2.25) : theme.spacing(2.5),\n    color: (props) => getEllipseColor(theme, props.color)\n  },\n  buttonRoot: {\n    margin: theme.spacing(1),\n    width: (props) =>\n      props.size === 'small' ? theme.spacing(4) : theme.spacing(5),\n    height: (props) =>\n      props.size === 'small' ? theme.spacing(4) : theme.spacing(5)\n  },\n  hover: {\n    zIndex: 9,\n    position: 'absolute',\n    top: 0,\n    left: 0\n  }\n}));\n\nexport const TimelineToken = (props) => {\n  const {\n    type = 'default',\n    variant = 'outlined',\n    color = 'default',\n    size = 'large',\n    icon,\n    letter = 'A',\n    IconEllipseProps,\n    className,\n    hoverContainer,\n    isHover\n  } = props;\n  const classes = useStyles(props);\n\n  const [hover, setHover] = useState(false);\n\n  const hoverFunction = () => {\n    setHover(true);\n  };\n\n  const tokenComponent = (\n    <div\n      className={clsx(classes.root, className)}\n      onMouseEnter={hoverFunction}\n      onMouseLeave={() => setHover(false)}\n    >\n      {/* <Badge color=\"primary\" variant=\"dot\"  > */}\n      <Ellipse variant='filled' size={size} color={color} {...IconEllipseProps}>\n        {type === 'letter' ? (\n          <Typography variant='body1' className={classes.letter}>\n            {letter.toUpperCase()}\n          </Typography>\n        ) : (\n          <div> {icon} </div>\n        )}\n      </Ellipse>\n      {/* </Badge> */}\n      {isHover && (\n        <div\n          className={classes.hover}\n          style={{ display: hover ? 'inline' : 'none' }}\n        >\n          {hoverContainer}\n        </div>\n      )}\n    </div>\n  );\n\n  return tokenComponent;\n};\n\nTimelineToken.propTypes = {\n  type: PropTypes.string,\n  variant: PropTypes.string,\n  color: PropTypes.string,\n  size: PropTypes.string,\n  iconType: PropTypes.string,\n  icon: PropTypes.oneOfType([PropTypes.elementType, PropTypes.object]),\n  letter: PropTypes.string,\n  IconEllipseProps: PropTypes.object,\n  iconColorOverride: PropTypes.string,\n  onClick: PropTypes.func,\n  className: PropTypes.string,\n  hoverContainer: PropTypes.element,\n  isHover: PropTypes.bool\n};\n"],"mappings":"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"}