{"version":3,"file":"691-c20c6a5e0f44e4b4ef4a.js","mappings":"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","sources":["webpack:///./components/mui-label/mui-label.scss?0988","webpack:///./components/mui-label/index.js","webpack:///./components/mui-select/index.js","webpack:///./react-material-ui/multiselect/index.js","webpack:///./components/mui-label/mui-label.scss"],"sourcesContent":["\n      import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js!./mui-label.scss\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js!./mui-label.scss\";\n       export default content && content.locals ? content.locals : undefined;\n","import React from 'react';\n\nimport './mui-label.scss';\n\nconst MuiLabel = ({ children }) => (\n  <div className=\"lf-react-material-ui-label\">\n    {children}\n  </div>\n);\n\nexport { MuiLabel };","import React from 'react';\nimport _ from 'lodash';\nimport { MuiLabel } from '../mui-label';\nimport InputLabel from '@mui/material/InputLabel';\nimport MenuItem from '@mui/material/MenuItem';\nimport FormControl from '@mui/material/FormControl';\nimport Select from '@mui/material/Select';\nimport FormHelperText from '@mui/material/FormHelperText';\nimport Checkbox from '@mui/material/Checkbox';\nimport ListItemText from '@mui/material/ListItemText';\n\nimport { passRest, filterOptions } from '../../helpers';\n\n// DOC: https://mui.com/material-ui/api/select/\n\nconst MuiGenericSelect = ({\n  name,\n  label,\n  hint,\n  value,\n  placeholder,\n  options,\n  filterKey,\n  filterValue,\n  component,\n  disabled = false,\n  readOnly = false,\n  required = false,\n  error,\n  multiple = false,\n  fullWidth,\n  width,\n  floatingLabel,\n  autoWidth,\n  size,\n  variant,\n  onChange,\n  onBlur,\n  className,\n  children,\n  ...rest\n}) => {\n  const filteredOptions = filterOptions(options, filterValue, filterKey);\n\n  let items;\n  if (multiple) {\n    items = (\n      (filteredOptions || []).map(option => (\n        <MenuItem key={option.value} value={option.value}>\n          <Checkbox checked={(value || []).includes(option.value)} />\n          <ListItemText primary={option.label} />\n        </MenuItem>\n      ))\n    );\n  } else {\n    items = (filteredOptions || []).map(({ value, label }) => (\n      <MenuItem key={value} value={value}>{label}</MenuItem>\n    ));\n  }\n\n  // Io un troiaio del genere in una libreria UI non l'ho mai visto, il floating label\n  // si sposta e quando non e' in focus va a coprire il componente, se focus si sposta in alto\n  // ma siccome lo spazio non se lo crea da solo, devi mettere la label anche nel componente select\n  // altrimenti nella variante outlined vedi la label tagliata dalla riga del bordo.\n  return (\n    <div\n      className={className}\n      data-lf-field-name={name}\n    >\n      <FormControl\n        size={size}\n        disabled={disabled}\n        required={required}\n        error={error != null}\n        variant={variant ?? undefined}\n        fullWidth={fullWidth}\n      >\n        {label && !floatingLabel && (\n          <MuiLabel>{label}</MuiLabel>\n        )}\n        {label && floatingLabel && (\n          <InputLabel id={`mui_select_${name}`}>{label}</InputLabel>\n        )}\n        <Select\n          id={name}\n          labelId={`mui_select_${name}`}\n          value={value}\n          multiple={multiple}\n          onChange={onChange}\n          onBlur={onBlur}\n          label={floatingLabel ? label : undefined} // needed for the background\n          style={_.isNumber(width) && !fullWidth ? { width: `${parseInt(width, 10)}px` } : undefined}\n          autoWidth={autoWidth}\n          inputProps={readOnly ? { readOnly: true } : undefined }\n          {...passRest(rest)}\n        >\n          {items}\n        </Select>\n        {hint && !error && <FormHelperText>{hint}</FormHelperText>}\n        {error && <FormHelperText>{error}</FormHelperText>}\n      </FormControl>\n    </div>\n  );\n};\n\nexport { MuiGenericSelect };\n","import React, { useCallback, useMemo } from 'react';\n\nimport { I18N } from '../../components';\nimport { MuiGenericSelect } from '../../components/mui-select';\nimport { i18nOptions } from '../../helpers';\nimport { lfLog } from '../../helpers/lf-log';\n\nconst Multiselect = I18N(\n  ({\n    onChange,\n    value,\n    ...rest\n  }) => {\n\n    const handleChange = useCallback(\n      e => {\n        const value = e.target.value;\n        onChange(typeof value === 'string' ? value.split(',') : value);\n      },\n      [onChange]\n    );\n\n    const renderValue = useMemo(\n      () => {\n        return (selected) => {\n          const selectedOptions = (rest.options || [])\n            .filter(option => (selected || []).includes(option.value))\n            .map(option => option.label)\n          return selectedOptions.join(', ');\n        };\n      },\n      [rest.options]\n    );\n\n    return (\n      <MuiGenericSelect\n        className=\"lf-control-multiselect\"\n        component=\"multiselect\"\n        onChange={handleChange}\n        renderValue={renderValue}\n        multiple={true}\n        value={value || []}\n        {...rest}\n      />\n    )\n  },\n  ['label', 'hint', 'placeholder'],\n  {\n    options: i18nOptions\n  }\n);\nlfLog('Loaded MUI.Multiselect');\n\nexport default Multiselect;","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".lf-react-material-ui-label{color:rgba(0,0,0,.6);font-family:\\\"Roboto\\\",\\\"Helvetica\\\",\\\"Arial\\\",sans-serif;font-weight:400;font-size:1rem;line-height:1.4375em;letter-spacing:.00938em;padding:0;position:relative;display:block;transform-origin:top left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;transform:none;position:inherit;margin-top:0px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./components/mui-label/mui-label.scss\"],\"names\":[],\"mappings\":\"AAAA,4BACE,oBAAA,CACA,mDAAA,CACA,eAAA,CACA,cAAA,CACA,oBAAA,CACA,uBAAA,CACA,SAAA,CACA,iBAAA,CACA,aAAA,CACA,yBAAA,CACA,kBAAA,CACA,eAAA,CACA,sBAAA,CACA,cAAA,CACA,cAAA,CACA,gBAAA,CACA,cAAA\",\"sourcesContent\":[\".lf-react-material-ui-label {\\n  color: rgba(0, 0, 0, 0.6);\\n  font-family: \\\"Roboto\\\",\\\"Helvetica\\\",\\\"Arial\\\",sans-serif;\\n  font-weight: 400;\\n  font-size: 1rem;\\n  line-height: 1.4375em;\\n  letter-spacing: 0.00938em;\\n  padding: 0;\\n  position: relative;\\n  display: block;\\n  transform-origin: top left;\\n  white-space: nowrap;\\n  overflow: hidden;\\n  text-overflow: ellipsis;\\n  max-width: 100%;\\n  transform: none;\\n  position: inherit;\\n  margin-top: 0px ;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n"],"names":["options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","MuiLabel","_ref","children","React","className","MuiGenericSelect","items","name","label","hint","value","placeholder","filterKey","filterValue","_ref$disabled","component","disabled","_ref$readOnly","readOnly","_ref$required","required","error","_ref$multiple","multiple","fullWidth","width","floatingLabel","autoWidth","size","variant","onChange","onBlur","rest","_objectWithoutProperties","_excluded","filteredOptions","filterOptions","map","option","MenuItem","key","Checkbox","checked","includes","ListItemText","primary","_ref2","FormControl","undefined","InputLabel","id","concat","Select","_extends","labelId","style","_isNumber","parseInt","inputProps","passRest","FormHelperText","Multiselect","I18N","handleChange","useCallback","e","target","split","renderValue","useMemo","selected","filter","join","i18nOptions","lfLog","___CSS_LOADER_EXPORT___","push","module"],"sourceRoot":""}