{"version":3,"file":"FluentSelectMenu.mjs","names":["React","useCallback","Autocomplete","FluentTextField","makeStyles","useStyles","theme","root","padding","FluentSelectMenu","t0","$","_c","autoCompleteProps","data","displayProperty","id","onChangeProp","otherProps","t1","onChange","width","undefined","classes","t2","e","value","t3","inputRoot","t4","option","_temp","t5","t6","params","t7","option_0"],"sources":["../../../../src/UI/inputs/menus/FluentSelectMenu.jsx"],"sourcesContent":["/* eslint-disable no-use-before-define */\nimport React, { useCallback } from 'react';\nimport Autocomplete from '@material-ui/lab/Autocomplete';\nimport { FluentTextField } from '../textField/FluentTextField';\nimport { makeStyles } from '@material-ui/core';\n\nconst useStyles = makeStyles((theme) => ({\n  root: {\n    '&[class*=\"MuiOutlinedInput-root\"][class*=\"MuiOutlinedInput-marginDense\"]':\n      {\n        padding: '4px 8px'\n      }\n  }\n}));\n\nexport const FluentSelectMenu = ({\n  data,\n  id,\n  onChange: onChangeProp,\n  width = 300,\n  // displayProperty = 'label',\n  autoCompleteProps,\n  displayProperty,\n  ...otherProps\n}) => {\n  const classes = useStyles();\n  // Modified onChange to work inside final-form Field component\n  // Also works with a passed in onChange function if not in Field component\n  const onChange = useCallback(\n    (e, value) => onChangeProp?.(value),\n    [onChangeProp]\n  );\n\n  // return (\n  //   <Autocomplete\n  //     classes={{\n  //       inputRoot: classes.root\n  //     }}\n  //     id={id}\n  //     onChange={onChange}\n  //     options={data}\n  //     getOptionLabel={\n  //       displayProperty\n  //         ? option[displayProperty]\n  //           ? option[displayProperty]\n  //           : ''\n  //         : option\n  //     }\n  //     style={{ width: width }}\n  //     {...autoCompleteProps}\n  //     renderInput={(params) => <FluentTextField {...otherProps} {...params} />}\n  //   />\n  // )\n  return (\n    <Autocomplete\n      classes={{\n        inputRoot: classes.root\n      }}\n      id={id}\n      onChange={onChange}\n      options={data}\n      getOptionLabel={(option) =>\n        displayProperty\n          ? option[displayProperty]\n            ? option[displayProperty]\n            : ''\n          : (option) => option\n      }\n      style={{ width: width }}\n      {...autoCompleteProps}\n      renderInput={(params) => (\n        <FluentTextField {...otherProps} {...params} />\n      )}\n    />\n  );\n};\n"],"mappings":";;;;;;AAMA,MAAMK,YAAYD,YAAYE,WAAW,EACvCC,MAAM,EACJ,gFACE,EACEC,SAAS,WACX,EACJ,EACD,EAAE;AAEH,MAAaC,oBAAmBC,OAAA;CAAA,MAAAC,IAAAC,EAAA,GAAA;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;AAAA,KAAAR,EAAA,OAAAD,IAAA;AAAC,GAAA,CAAAI,MAAAE,IAAAI,UAAAH,cAAAI,OAAAF,IAAAN,mBAAAE,oBAAAG,cAAAR;AAShCC,IAAA,KAAAD;AAAAC,IAAA,KAAAE;AAAAF,IAAA,KAAAG;AAAAH,IAAA,KAAAI;AAAAJ,IAAA,KAAAK;AAAAL,IAAA,KAAAM;AAAAN,IAAA,KAAAO;AAAAP,IAAA,KAAAQ;QAAA;AAAAN,sBAAAF,EAAA;AAAAG,SAAAH,EAAA;AAAAI,oBAAAJ,EAAA;AAAAK,OAAAL,EAAA;AAAAM,iBAAAN,EAAA;AAAAO,eAAAP,EAAA;AAAAQ,OAAAR,EAAA;;CALC,MAAAU,QAAAF,OAAAG,KAAAA,IAAA,MAAAH;CAMA,MAAAI,UAAgBlB,WAAW;CAAC,IAAAmB;AAAA,KAAAb,EAAA,OAAAM,cAAA;AAI1BO,QAAAC,GAAAC,UAAcT,eAAeS,MAAM;AAAAf,IAAA,KAAAM;AAAAN,IAAA,KAAAa;OAAAA,MAAAb,EAAA;CADrC,MAAAS,WAAiBI;CAGf,IAAAG;AAAA,KAAAhB,EAAA,QAAAY,QAAAhB,MAAA;AAwBWoB,OAAA,EAAAC,WACIL,QAAOhB,MACnB;AAAAI,IAAA,MAAAY,QAAAhB;AAAAI,IAAA,MAAAgB;OAAAA,MAAAhB,EAAA;CAAA,IAAAkB;AAAA,KAAAlB,EAAA,QAAAI,iBAAA;AAIec,QAAAC,WACdf,kBACIe,OAAOf,mBACLe,OAAOf,mBADT,KADJgB;AAIsBpB,IAAA,MAAAI;AAAAJ,IAAA,MAAAkB;OAAAA,MAAAlB,EAAA;CAAA,IAAAqB;AAAA,KAAArB,EAAA,QAAAU,OAAA;AAEjBW,OAAA,EAAAX,OAAgB;AAAAV,IAAA,MAAAU;AAAAV,IAAA,MAAAqB;OAAAA,MAAArB,EAAA;CAAA,IAAAsB;AAAA,KAAAtB,EAAA,QAAAO,YAAA;AAEVe,QAAAC,WACX,sBAAA,cAAC,iBAAD;GAAgB,GAAKhB;GAAU,GAAMgB;GACtC,CAAA;AAAAvB,IAAA,MAAAO;AAAAP,IAAA,MAAAsB;OAAAA,MAAAtB,EAAA;CAAA,IAAAwB;AAAA,KAAAxB,EAAA,QAAAE,qBAAAF,EAAA,QAAAG,QAAAH,EAAA,QAAAK,MAAAL,EAAA,QAAAS,YAAAT,EAAA,QAAAgB,MAAAhB,EAAA,QAAAkB,MAAAlB,EAAA,QAAAqB,MAAArB,EAAA,QAAAsB,IAAA;AAlBHE,OAAA,sBAAA,cAAC,cAAD;GACW,SAAAR;GAGLX;GACMI;GACDN,SAAAA;GACO,gBAAAe;GAOT,OAAAG;GAAgB,GACnBnB;GACS,aAAAoB;GAGb,CAAA;AAAAtB,IAAA,MAAAE;AAAAF,IAAA,MAAAG;AAAAH,IAAA,MAAAK;AAAAL,IAAA,MAAAS;AAAAT,IAAA,MAAAgB;AAAAhB,IAAA,MAAAkB;AAAAlB,IAAA,MAAAqB;AAAArB,IAAA,MAAAsB;AAAAtB,IAAA,MAAAwB;OAAAA,MAAAxB,EAAA;AAAA,QAnBFwB;;AAvC4B,SAAAJ,MAAAK,UAAA;AAAA,QAmDRN"}