{"version":3,"file":"FluentTagField.mjs","names":["React","useCallback","forwardRef","makeStyles","Checkbox","FluentTextField","Autocomplete","useStyles","theme","root","padding","height","FluentTagFieldComponent","props","ref","$","_c","classes","autoCompleteProps","data","displayProperty","id","onChangeProp","otherProps","t0","t1","t2","t3","startAdornment","endAdornment","onChange","t4","t5","t6","width","t7","t8","t9","undefined","e","value","option","getOptionLabel","inputRoot","params","option_0","selected","isSelectedValue","some","item","marginRight","FluentTagField"],"sources":["../../../../src/UI/inputs/textField/FluentTagField.jsx"],"sourcesContent":["import React, { useCallback, forwardRef } from 'react';\nimport { makeStyles, Checkbox } from '@material-ui/core';\nimport { FluentTextField } from './FluentTextField';\nimport { Autocomplete } from '@material-ui/lab';\n\nconst useStyles = makeStyles((theme) => ({\n  root: {\n    '&[class*=\"MuiOutlinedInput-root\"][class*=\"MuiOutlinedInput-marginDense\"]':\n      {\n        padding: '4px 8px',\n        height: 'auto'\n      }\n  }\n}));\n\nexport const FluentTagFieldComponent = (props, ref) => {\n  const classes = useStyles(props);\n  const {\n    id,\n    data,\n    startAdornment,\n    endAdornment,\n    onChange: onChangeProp,\n    autoCompleteProps,\n    displayProperty,\n    width = 300,\n    height = 'auto',\n    ...otherProps\n  } = props;\n\n  const onChange = useCallback(\n    (e, value) => onChangeProp?.(value),\n    [onChangeProp]\n  );\n\n  const getOptionLabel = (option) => {\n    if (displayProperty) {\n      return option[displayProperty] || '';\n    }\n    return option;\n  };\n\n  return (\n    <Autocomplete\n      classes={{\n        inputRoot: classes.root\n      }}\n      multiple\n      id={id}\n      onChange={onChange}\n      options={data}\n      getOptionLabel={getOptionLabel}\n      style={{ width, height }}\n      {...autoCompleteProps}\n      renderInput={(params) => {\n        return <FluentTextField {...otherProps} {...params} />;\n      }}\n      renderOption={(option, { selected }) => {\n        const isSelectedValue =\n          displayProperty &&\n          autoCompleteProps?.value?.some(\n            (item) => item[displayProperty] === option[displayProperty]\n          );\n\n        return (\n          <li>\n            <Checkbox\n              {...otherProps}\n              style={{ marginRight: 8 }}\n              checked={selected || isSelectedValue}\n            />\n            {getOptionLabel(option)}\n          </li>\n        );\n      }}\n    />\n  );\n};\n\nexport const FluentTagField = forwardRef(FluentTagFieldComponent);\n"],"mappings":"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"}