{"version":3,"file":"TicketCard.mjs","names":["React","makeStyles","Card","CardContent","Typography","StatusLineItem","NotificationElement","PropTypes","useStyles","theme","root","display","overviewContainer","width","spacing","height","background","marginRight","position","notification","right","top","totalNumber","textAlign","color","fontWeight","label","justifyContent","marginTop","itemContainer","flexDirection","alignContent","TicketCard","t0","$","_c","totalAmount","alertNumber","ticketData","component","t1","undefined","classes","t2","t3","t4","t5","t6","t7","map","_temp","t8","t9","propTypes","number","string","isRequired","bool","arrayOf","shape","ticketAmount","id","amount","status","icon","node","defaultProps","item"],"sources":["../../../../src/UI/dataDisplay/ticketCard/TicketCard.jsx"],"sourcesContent":["import React from 'react'\nimport { makeStyles, Card, CardContent, Typography } from '@material-ui/core'\nimport { StatusLineItem } from './StatusLineItem'\nimport { NotificationElement } from './NotificationElement'\nimport PropTypes from 'prop-types'\n\nconst useStyles = makeStyles((theme) => ({\n  root: {\n    display: 'flex'\n  },\n  overviewContainer: {\n    width: theme.spacing(16),\n    height: theme.spacing(16),\n    background: '#393939', // Add to theme\n    marginRight: theme.spacing(2),\n    position: 'relative'\n  },\n  notification: {\n    position: 'absolute',\n    right: 0,\n    top: 0\n  },\n  totalNumber: {\n    textAlign: 'center',\n    // color: theme.palette.common.white\n    color: '#FFFFFF', // Hex color added to avoid TypeError\n    fontWeight: 400\n  },\n  label: {\n    display: 'flex',\n    justifyContent: 'center',\n    marginTop: -8,\n    // color: theme.pallette.common.white\n    color: '#FFFFFF'\n  },\n  itemContainer: {\n    width: '100%',\n    display: 'flex',\n    flexDirection: 'column',\n    alignContent: 'space-around',\n    marginTop: theme.spacing(0.5)\n  }\n}))\n\nexport const TicketCard = ({\n  totalAmount,\n  label,\n  notification,\n  alertNumber,\n  ticketData,\n  component = 'h6'\n}) => {\n  const classes = useStyles()\n\n  return (\n    <div className={classes.root}>\n      <div>\n        <Card elevation={0} square className={classes.overviewContainer}>\n          <CardContent>\n            <Typography\n              variant='h1'\n              component={component}\n              className={classes.totalNumber}\n            >\n              {totalAmount}\n            </Typography>\n          </CardContent>\n          <div className={classes.label}>\n            <Typography variant='caption'>{label} </Typography>\n          </div>\n          {notification && (\n            <div className={classes.notification}>\n              <NotificationElement alertNumber={alertNumber} />\n            </div>\n          )}\n        </Card>\n      </div>\n\n      <div className={classes.itemContainer}>\n        {ticketData &&\n          ticketData.map((item) => {\n            return (\n              <StatusLineItem\n                label={item.label}\n                amount={item.amount}\n                status={item.status === 'error' && 'error'}\n                icon={item.icon}\n                key={item.id}\n              />\n            )\n          })}\n      </div>\n    </div>\n  )\n}\nTicketCard.propTypes = {\n  /**\n   * Total amount stat\n   */\n  totalAmount: PropTypes.number,\n  /**\n   * Stat label\n   */\n  label: PropTypes.string.isRequired,\n  /**\n   * Type of status to toggle notification\n   */\n  notification: PropTypes.bool,\n  /**\n   * amount of alert items\n   */\n  alertNumber: PropTypes.number,\n  /**\n   * prop for mapped data\n   */\n  ticketData: PropTypes.arrayOf(\n    PropTypes.shape({\n      ticketAmount: PropTypes.string.isRequired,\n      label: PropTypes.number.isRequired,\n      notification: PropTypes.number.isRequired,\n      alertNumber: PropTypes.number,\n      id: PropTypes.number.isRequired,\n      ticketData: PropTypes.arrayOf(\n        PropTypes.shape({\n          label: PropTypes.string.isRequired,\n          amount: PropTypes.number,\n          status: PropTypes.string.isRequired,\n          icon: PropTypes.node\n        })\n      )\n    }).isRequired\n  ).isRequired,\n  /**\n   * Header Tag override. Defaults to H2\n   */\n  component: PropTypes.string\n}\n\nTicketCard.defaultProps = {\n  component: 'h2'\n}\n"],"mappings":"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"}