{"version":3,"file":"vendors/vendors-main-SelectInput.js.bundle.js","mappings":"6HAKIA,E,iNACJ,MAAMC,EAAY,CAAC,mBAAoB,aAAc,YAAa,YAAa,WAAY,YAAa,cAAe,eAAgB,WAAY,eAAgB,QAAS,gBAAiB,WAAY,UAAW,YAAa,WAAY,OAAQ,SAAU,WAAY,UAAW,UAAW,SAAU,OAAQ,WAAY,cAAe,qBAAsB,WAAY,OAAQ,QAAS,WAmB3XC,GAAe,QAAO,MAAO,CACjCC,KAAM,YACNC,KAAM,SACNC,kBAAmB,CAACC,EAAOC,KACzB,MAAM,WACJC,GACEF,EACJ,MAAO,CAEP,CACE,CAAC,KAAK,IAAcG,UAAWF,EAAOE,QACrC,CACD,CAAC,KAAK,IAAcA,UAAWF,EAAOC,EAAWE,UAChD,CACD,CAAC,KAAK,IAAcC,SAAUJ,EAAOI,OACpC,CACD,CAAC,KAAK,IAAcC,YAAaL,EAAOK,UACxC,GAjBe,CAmBlB,KAA0B,CAE3B,CAAC,KAAK,IAAcH,UAAW,CAC7BI,OAAQ,OAERC,UAAW,WAEXC,aAAc,WACdC,WAAY,SACZC,SAAU,YAGRC,GAAa,QAAO,MAAO,CAC/Bf,KAAM,YACNC,KAAM,OACNC,kBAAmB,CAACC,EAAOC,KACzB,MAAM,WACJC,GACEF,EACJ,MAAO,CAACC,EAAOY,KAAMX,EAAWE,SAAWH,EAAO,QAAO,OAAWC,EAAWE,YAAaF,EAAWY,MAAQb,EAAOc,SAAS,GAPhH,CAShB,MACGC,GAAoB,QAAO,QAAS,CACxCC,kBAAmBC,IAAQ,OAAsBA,IAAkB,YAATA,EAC1DrB,KAAM,YACNC,KAAM,cACNC,kBAAmB,CAACC,EAAOC,IAAWA,EAAOkB,aAJrB,CAKvB,CACDC,OAAQ,EACRC,KAAM,EACNC,SAAU,WACVC,QAAS,EACTC,cAAe,OACfC,MAAO,OACPC,UAAW,eAEb,SAASC,EAAeC,EAAGC,GACzB,MAAiB,iBAANA,GAAwB,OAANA,EACpBD,IAAMC,EAIRC,OAAOF,KAAOE,OAAOD,EAC9B,CACA,SAASE,EAAQC,GACf,OAAkB,MAAXA,GAAsC,iBAAZA,IAAyBA,EAAQC,MACpE,CACA,MAqjBA,EAjiBiC,cAAiB,SAAqBjC,EAAOkC,GAC5E,IAAIC,EACJ,MACI,mBAAoBC,EACpB,aAAcC,EAAS,UACvBC,EAAS,UACTC,EAAS,SACTC,EAAQ,UACRC,EAAS,YACTC,EAAW,aACXC,EAAY,SACZC,EAAQ,aACRC,EAAY,MACZxC,GAAQ,EAAK,cACbyC,EACAC,SAAUC,EAAY,QACtBC,EAAO,UACPC,EAAY,CAAC,EAAC,SACd5C,EAAQ,KACRT,EAAI,OACJsD,EAAM,SACNC,EAAQ,QACRC,EAAO,QACPC,EAAO,OACPC,EACAzC,KAAM0C,EAAQ,SACdC,EAAQ,YACRC,EAAW,mBACXC,EAAqB,CAAC,EACtBC,SAAUC,EAIVC,MAAOC,EAAS,QAChB3D,EAAU,YACRJ,EACJgE,IAAQ,OAA8BhE,EAAOL,IACxCmE,GAAOG,KAAiB,OAAc,CAC3CC,WAAYH,EACZI,QAASxB,EACT9C,KAAM,YAEDuE,GAAWC,KAAgB,OAAc,CAC9CH,WAAYV,EACZW,QAASzB,EACT7C,KAAM,WAEFkD,GAAW,SAAa,MACxBuB,GAAa,SAAa,OACzBC,GAAaC,IAAkB,WAAe,OAEnDC,QAASC,IACP,SAAyB,MAAZlB,IACVmB,GAAmBC,IAAwB,aAC5CC,IAAY,OAAW3C,EAAKc,GAC5B8B,GAAmB,eAAkBC,IACzCT,GAAWG,QAAUM,EACjBA,GACFP,GAAeO,EACjB,GACC,IACGC,GAA+B,MAAfT,QAAsB,EAASA,GAAYU,WACjE,sBAA0BJ,IAAW,KAAM,CACzCK,MAAO,KACLZ,GAAWG,QAAQS,OAAO,EAE5BH,KAAMhC,GAAS0B,QACfX,YACE,CAACA,KAGL,aAAgB,KACVpB,GAAe0B,IAAaG,KAAgBG,KAC9CE,GAAqBrC,EAAY,KAAOyC,GAAcG,aACtDb,GAAWG,QAAQS,QACrB,GAEC,CAACX,GAAahC,IAGjB,aAAgB,KACVD,GACFgC,GAAWG,QAAQS,OACrB,GACC,CAAC5C,IACJ,aAAgB,KACd,IAAKW,EACH,OAEF,MAAMmC,GAAQ,OAAcd,GAAWG,SAASY,eAAepC,GAC/D,GAAImC,EAAO,CACT,MAAME,EAAU,KACVC,eAAeC,aACjBlB,GAAWG,QAAQS,OACrB,EAGF,OADAE,EAAMK,iBAAiB,QAASH,GACzB,KACLF,EAAMM,oBAAoB,QAASJ,EAAQ,CAE/C,CACgB,GACf,CAACrC,IACJ,MAAM0C,GAAS,CAAC7E,EAAM8E,KAChB9E,EACEyC,GACFA,EAAOqC,GAEAvC,GACTA,EAAQuC,GAELlB,KACHE,GAAqBrC,EAAY,KAAOyC,GAAcG,aACtDd,GAAavD,GACf,EAeI+E,GAAgB,WAAeC,QAAQtD,GAavCuD,GAAkBC,GAASJ,IAC/B,IAAIK,EAGJ,GAAKL,EAAMM,cAAcC,aAAa,YAAtC,CAGA,GAAI7F,EAAU,CACZ2F,EAAWG,MAAMC,QAAQvC,IAASA,GAAMwC,QAAU,GAClD,MAAMC,EAAYzC,GAAM0C,QAAQR,EAAMhG,MAAM8D,QACzB,IAAfyC,EACFN,EAASQ,KAAKT,EAAMhG,MAAM8D,OAE1BmC,EAASS,OAAOH,EAAW,EAE/B,MACEN,EAAWD,EAAMhG,MAAM8D,MAKzB,GAHIkC,EAAMhG,MAAM2G,SACdX,EAAMhG,MAAM2G,QAAQf,GAElB9B,KAAUmC,IACZhC,GAAcgC,GACV7C,GAAU,CAKZ,MAAMwD,EAAchB,EAAMgB,aAAehB,EACnCiB,EAAc,IAAID,EAAYE,YAAYF,EAAYG,KAAMH,GAClEI,OAAOC,eAAeJ,EAAa,SAAU,CAC3CK,UAAU,EACVpD,MAAO,CACLA,MAAOmC,EACPpG,UAGJuD,EAASyD,EAAab,EACxB,CAEG1F,GACHqF,IAAO,EAAOC,EAnChB,CAoCA,EAcI9E,GAAuB,OAAhByD,IAAwBH,GAgBrC,IAAIpC,GACAmF,UAFGnD,GAAM,gBAGb,MAAMoD,GAAkB,GACxB,IAAIC,IAAiB,EACjBC,IAAa,IAGb,QAAS,CACXxD,YACIjB,KACAa,EACF1B,GAAU0B,EAAYI,IAEtBuD,IAAiB,GAGrB,MAAME,GAAQ1B,GAAc2B,KAAIxB,IAC9B,IAAmB,iBAAqBA,GACtC,OAAO,KAOT,IAAIyB,EACJ,GAAInH,EAAU,CACZ,IAAK8F,MAAMC,QAAQvC,IACjB,MAAM,IAAI4D,OAAkJ,OAAuB,IAErLD,EAAW3D,GAAM6D,MAAKC,GAAKjG,EAAeiG,EAAG5B,EAAMhG,MAAM8D,SACrD2D,GAAYJ,IACdD,GAAgBX,KAAKT,EAAMhG,MAAMwC,SAErC,MACEiF,EAAW9F,EAAemC,GAAOkC,EAAMhG,MAAM8D,OACzC2D,GAAYJ,KACdF,GAAgBnB,EAAMhG,MAAMwC,UAMhC,OAHIiF,IACFH,IAAa,GAEK,eAAmBtB,EAAO,CAC5C,gBAAiByB,EAAW,OAAS,QACrCd,QAASZ,GAAgBC,GACzB6B,QAASjC,IACW,MAAdA,EAAMkC,KAIRlC,EAAMmC,iBAEJ/B,EAAMhG,MAAM6H,SACd7B,EAAMhG,MAAM6H,QAAQjC,EACtB,EAEFoC,KAAM,SACNP,WACA3D,WAAOmE,EAEP,aAAcjC,EAAMhG,MAAM8D,OAC1B,IAWAuD,KAGErF,GAFA1B,EAC6B,IAA3B8G,GAAgBc,OACR,KAEAd,GAAgBe,QAAO,CAACC,EAAQpC,EAAOqC,KAC/CD,EAAO3B,KAAKT,GACRqC,EAAQjB,GAAgBc,OAAS,GACnCE,EAAO3B,KAAK,MAEP2B,IACN,IAGKjB,IAKd,IAIIvD,GAJA0E,GAAe3D,IACdpC,GAAamC,IAAoBH,KACpC+D,GAAetD,GAAcG,aAI7BvB,QAD0B,IAAjBC,EACEA,EAEAjB,EAAW,KAAO,EAE/B,MAAM2F,GAAW5E,EAAmB6E,KAAO3I,EAAO,wBAAwBA,SAASoI,GAC7E/H,IAAa,OAAS,CAAC,EAAGF,EAAO,CACrCI,UACA0D,SACAhD,QACAT,UAEIoI,GAvVkBvI,KACxB,MAAM,QACJuI,EAAO,QACPrI,EAAO,SACPwC,EAAQ,SACRtC,EAAQ,KACRQ,EAAI,MACJT,GACEH,EACEwI,EAAQ,CACZvI,OAAQ,CAAC,SAAUC,EAASwC,GAAY,WAAYtC,GAAY,WAAYD,GAAS,SACrFQ,KAAM,CAAC,OAAQ,QAAO,OAAWT,KAAYU,GAAQ,WAAY8B,GAAY,YAC7EzB,YAAa,CAAC,gBAEhB,OAAO,OAAeuH,EAAO,IAAyBD,EAAQ,EAyU9CE,CAAkBzI,IAC5B0I,IAAa,OAAS,CAAC,EAAG1F,EAAU2F,WAA4D,OAA/C1G,EAAuBe,EAAU4F,gBAAqB,EAAS3G,EAAqB4G,OACrIC,IAAY,SAClB,OAAoB,UAAM,WAAgB,CACxCxG,SAAU,EAAc,SAAK5C,GAAc,OAAS,CAClDsC,IAAK4C,GACLlB,SAAUA,GACVoE,KAAM,WACN,gBAAiBgB,GACjB,gBAAiBpG,EAAW,YAASqF,EACrC,gBAAiBnH,GAAO,OAAS,QACjC,gBAAiB,UACjB,aAAcuB,EACd,kBAAmB,CAACY,EAASsF,IAAUU,OAAOC,SAASC,KAAK,WAAQlB,EACpE,mBAAoB7F,EACpBgH,UAxJkBxD,IACfnC,IAKmC,IAJpB,CAAC,IAAK,UAAW,YAGnC,SACc+C,QAAQZ,EAAMkC,OAC1BlC,EAAMmC,iBACNpC,IAAO,EAAMC,GAEjB,EA+IEyD,YAAazG,GAAYa,EAAW,KA/NhBmC,IAED,IAAjBA,EAAM0D,SAIV1D,EAAMmC,iBACNzD,GAAWG,QAAQS,QACnBS,IAAO,EAAMC,GAAM,EAwNjBzC,OA7IeyC,KAEZ9E,IAAQqC,IAEX6D,OAAOC,eAAerB,EAAO,SAAU,CACrCsB,UAAU,EACVpD,MAAO,CACLA,SACAjE,UAGJsD,EAAOyC,GACT,EAkIEtC,QAASA,GACRK,EAAoB,CACrBzD,WAAYA,GACZuC,WAAW,OAAKkB,EAAmBlB,UAAWgG,GAAQtI,OAAQsC,GAG9D+F,GAAID,GACJ/F,SAAUT,EAAQC,IAClBtC,IAAUA,GAAqB,SAAK,OAAQ,CAC1C+C,UAAW,cACXD,SAAU,OACNR,OACU,SAAKhB,GAAmB,OAAS,CACjD,eAAgBX,EAChByD,MAAOsC,MAAMC,QAAQvC,IAASA,GAAMqF,KAAK,KAAOrF,GAChDjE,KAAMA,EACNqC,IAAKa,GACL,eAAe,EACfK,SAnOiBwC,IACnB,MAAMI,EAAQH,GAAc0D,MAAKC,GAAaA,EAAUxJ,MAAM8D,QAAU8B,EAAM6D,OAAO3F,aACvEmE,IAAVjC,IAGJ/B,GAAc+B,EAAMhG,MAAM8D,OACtBV,GACFA,EAASwC,EAAOI,GAClB,EA4NEpC,UAAW,EACXhB,SAAUA,EACVH,UAAWgG,GAAQtH,YACnBmB,UAAWA,EACXpC,WAAYA,IACX8D,MAAsB,SAAKpD,EAAY,CACxC8I,GAAI5G,EACJL,UAAWgG,GAAQ5H,KACnBX,WAAYA,MACG,SAAK,KAAM,OAAS,CACnCsI,GAAI,QAAQ3I,GAAQ,KACpB8J,SAAU3E,GACVlE,KAAMA,GACNuC,QAvPgBuC,IAClBD,IAAO,EAAOC,EAAM,EAuPlBgE,aAAc,CACZC,SAAU,SACVC,WAAY,UAEdC,gBAAiB,CACfF,SAAU,MACVC,WAAY,WAEb5G,EAAW,CACZ8G,eAAe,OAAS,CACtB,kBAAmB/G,EACnB+E,KAAM,UACN,uBAAwB1H,EAAW,YAAS2H,EAC5CgC,iBAAiB,EACjBzB,GAAIQ,IACH9F,EAAU8G,eACblB,WAAW,OAAS,CAAC,EAAG5F,EAAU4F,UAAW,CAC3CC,OAAO,OAAS,CAAC,EAAGH,GAAY,CAC9BsB,OAAO,OAAS,CACdC,SAAU7B,IACK,MAAdM,GAAqBA,GAAWsB,MAAQ,UAG/C1H,SAAU+E,QAGhB,G","sources":["webpack://typescript/./node_modules/@mui/material/Select/SelectInput.js"],"sourcesContent":["'use client';\n\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _formatMuiErrorMessage from \"@mui/utils/formatMuiErrorMessage\";\nvar _span;\nconst _excluded = [\"aria-describedby\", \"aria-label\", \"autoFocus\", \"autoWidth\", \"children\", \"className\", \"defaultOpen\", \"defaultValue\", \"disabled\", \"displayEmpty\", \"error\", \"IconComponent\", \"inputRef\", \"labelId\", \"MenuProps\", \"multiple\", \"name\", \"onBlur\", \"onChange\", \"onClose\", \"onFocus\", \"onOpen\", \"open\", \"readOnly\", \"renderValue\", \"SelectDisplayProps\", \"tabIndex\", \"type\", \"value\", \"variant\"];\nimport * as React from 'react';\nimport { isFragment } from 'react-is';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport composeClasses from '@mui/utils/composeClasses';\nimport useId from '@mui/utils/useId';\nimport refType from '@mui/utils/refType';\nimport ownerDocument from '../utils/ownerDocument';\nimport capitalize from '../utils/capitalize';\nimport Menu from '../Menu/Menu';\nimport { nativeSelectSelectStyles, nativeSelectIconStyles } from '../NativeSelect/NativeSelectInput';\nimport { isFilled } from '../InputBase/utils';\nimport styled, { slotShouldForwardProp } from '../styles/styled';\nimport useForkRef from '../utils/useForkRef';\nimport useControlled from '../utils/useControlled';\nimport selectClasses, { getSelectUtilityClasses } from './selectClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst SelectSelect = styled('div', {\n name: 'MuiSelect',\n slot: 'Select',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [\n // Win specificity over the input base\n {\n [`&.${selectClasses.select}`]: styles.select\n }, {\n [`&.${selectClasses.select}`]: styles[ownerState.variant]\n }, {\n [`&.${selectClasses.error}`]: styles.error\n }, {\n [`&.${selectClasses.multiple}`]: styles.multiple\n }];\n }\n})(nativeSelectSelectStyles, {\n // Win specificity over the input base\n [`&.${selectClasses.select}`]: {\n height: 'auto',\n // Resets for multiple select with chips\n minHeight: '1.4375em',\n // Required for select\\text-field height consistency\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n overflow: 'hidden'\n }\n});\nconst SelectIcon = styled('svg', {\n name: 'MuiSelect',\n slot: 'Icon',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.icon, ownerState.variant && styles[`icon${capitalize(ownerState.variant)}`], ownerState.open && styles.iconOpen];\n }\n})(nativeSelectIconStyles);\nconst SelectNativeInput = styled('input', {\n shouldForwardProp: prop => slotShouldForwardProp(prop) && prop !== 'classes',\n name: 'MuiSelect',\n slot: 'NativeInput',\n overridesResolver: (props, styles) => styles.nativeInput\n})({\n bottom: 0,\n left: 0,\n position: 'absolute',\n opacity: 0,\n pointerEvents: 'none',\n width: '100%',\n boxSizing: 'border-box'\n});\nfunction areEqualValues(a, b) {\n if (typeof b === 'object' && b !== null) {\n return a === b;\n }\n\n // The value could be a number, the DOM will stringify it anyway.\n return String(a) === String(b);\n}\nfunction isEmpty(display) {\n return display == null || typeof display === 'string' && !display.trim();\n}\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n variant,\n disabled,\n multiple,\n open,\n error\n } = ownerState;\n const slots = {\n select: ['select', variant, disabled && 'disabled', multiple && 'multiple', error && 'error'],\n icon: ['icon', `icon${capitalize(variant)}`, open && 'iconOpen', disabled && 'disabled'],\n nativeInput: ['nativeInput']\n };\n return composeClasses(slots, getSelectUtilityClasses, classes);\n};\n\n/**\n * @ignore - internal component.\n */\nconst SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, ref) {\n var _MenuProps$slotProps;\n const {\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n autoFocus,\n autoWidth,\n children,\n className,\n defaultOpen,\n defaultValue,\n disabled,\n displayEmpty,\n error = false,\n IconComponent,\n inputRef: inputRefProp,\n labelId,\n MenuProps = {},\n multiple,\n name,\n onBlur,\n onChange,\n onClose,\n onFocus,\n onOpen,\n open: openProp,\n readOnly,\n renderValue,\n SelectDisplayProps = {},\n tabIndex: tabIndexProp\n // catching `type` from Input which makes no sense for SelectInput\n ,\n\n value: valueProp,\n variant = 'standard'\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const [value, setValueState] = useControlled({\n controlled: valueProp,\n default: defaultValue,\n name: 'Select'\n });\n const [openState, setOpenState] = useControlled({\n controlled: openProp,\n default: defaultOpen,\n name: 'Select'\n });\n const inputRef = React.useRef(null);\n const displayRef = React.useRef(null);\n const [displayNode, setDisplayNode] = React.useState(null);\n const {\n current: isOpenControlled\n } = React.useRef(openProp != null);\n const [menuMinWidthState, setMenuMinWidthState] = React.useState();\n const handleRef = useForkRef(ref, inputRefProp);\n const handleDisplayRef = React.useCallback(node => {\n displayRef.current = node;\n if (node) {\n setDisplayNode(node);\n }\n }, []);\n const anchorElement = displayNode == null ? void 0 : displayNode.parentNode;\n React.useImperativeHandle(handleRef, () => ({\n focus: () => {\n displayRef.current.focus();\n },\n node: inputRef.current,\n value\n }), [value]);\n\n // Resize menu on `defaultOpen` automatic toggle.\n React.useEffect(() => {\n if (defaultOpen && openState && displayNode && !isOpenControlled) {\n setMenuMinWidthState(autoWidth ? null : anchorElement.clientWidth);\n displayRef.current.focus();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [displayNode, autoWidth]);\n // `isOpenControlled` is ignored because the component should never switch between controlled and uncontrolled modes.\n // `defaultOpen` and `openState` are ignored to avoid unnecessary callbacks.\n React.useEffect(() => {\n if (autoFocus) {\n displayRef.current.focus();\n }\n }, [autoFocus]);\n React.useEffect(() => {\n if (!labelId) {\n return undefined;\n }\n const label = ownerDocument(displayRef.current).getElementById(labelId);\n if (label) {\n const handler = () => {\n if (getSelection().isCollapsed) {\n displayRef.current.focus();\n }\n };\n label.addEventListener('click', handler);\n return () => {\n label.removeEventListener('click', handler);\n };\n }\n return undefined;\n }, [labelId]);\n const update = (open, event) => {\n if (open) {\n if (onOpen) {\n onOpen(event);\n }\n } else if (onClose) {\n onClose(event);\n }\n if (!isOpenControlled) {\n setMenuMinWidthState(autoWidth ? null : anchorElement.clientWidth);\n setOpenState(open);\n }\n };\n const handleMouseDown = event => {\n // Ignore everything but left-click\n if (event.button !== 0) {\n return;\n }\n // Hijack the default focus behavior.\n event.preventDefault();\n displayRef.current.focus();\n update(true, event);\n };\n const handleClose = event => {\n update(false, event);\n };\n const childrenArray = React.Children.toArray(children);\n\n // Support autofill.\n const handleChange = event => {\n const child = childrenArray.find(childItem => childItem.props.value === event.target.value);\n if (child === undefined) {\n return;\n }\n setValueState(child.props.value);\n if (onChange) {\n onChange(event, child);\n }\n };\n const handleItemClick = child => event => {\n let newValue;\n\n // We use the tabindex attribute to signal the available options.\n if (!event.currentTarget.hasAttribute('tabindex')) {\n return;\n }\n if (multiple) {\n newValue = Array.isArray(value) ? value.slice() : [];\n const itemIndex = value.indexOf(child.props.value);\n if (itemIndex === -1) {\n newValue.push(child.props.value);\n } else {\n newValue.splice(itemIndex, 1);\n }\n } else {\n newValue = child.props.value;\n }\n if (child.props.onClick) {\n child.props.onClick(event);\n }\n if (value !== newValue) {\n setValueState(newValue);\n if (onChange) {\n // Redefine target to allow name and value to be read.\n // This allows seamless integration with the most popular form libraries.\n // https://github.com/mui/material-ui/issues/13485#issuecomment-676048492\n // Clone the event to not override `target` of the original event.\n const nativeEvent = event.nativeEvent || event;\n const clonedEvent = new nativeEvent.constructor(nativeEvent.type, nativeEvent);\n Object.defineProperty(clonedEvent, 'target', {\n writable: true,\n value: {\n value: newValue,\n name\n }\n });\n onChange(clonedEvent, child);\n }\n }\n if (!multiple) {\n update(false, event);\n }\n };\n const handleKeyDown = event => {\n if (!readOnly) {\n const validKeys = [' ', 'ArrowUp', 'ArrowDown',\n // The native select doesn't respond to enter on macOS, but it's recommended by\n // https://www.w3.org/WAI/ARIA/apg/patterns/combobox/examples/combobox-select-only/\n 'Enter'];\n if (validKeys.indexOf(event.key) !== -1) {\n event.preventDefault();\n update(true, event);\n }\n }\n };\n const open = displayNode !== null && openState;\n const handleBlur = event => {\n // if open event.stopImmediatePropagation\n if (!open && onBlur) {\n // Preact support, target is read only property on a native event.\n Object.defineProperty(event, 'target', {\n writable: true,\n value: {\n value,\n name\n }\n });\n onBlur(event);\n }\n };\n delete other['aria-invalid'];\n let display;\n let displaySingle;\n const displayMultiple = [];\n let computeDisplay = false;\n let foundMatch = false;\n\n // No need to display any value if the field is empty.\n if (isFilled({\n value\n }) || displayEmpty) {\n if (renderValue) {\n display = renderValue(value);\n } else {\n computeDisplay = true;\n }\n }\n const items = childrenArray.map(child => {\n if (! /*#__PURE__*/React.isValidElement(child)) {\n return null;\n }\n if (process.env.NODE_ENV !== 'production') {\n if (isFragment(child)) {\n console.error([\"MUI: The Select component doesn't accept a Fragment as a child.\", 'Consider providing an array instead.'].join('\\n'));\n }\n }\n let selected;\n if (multiple) {\n if (!Array.isArray(value)) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? `MUI: The \\`value\\` prop must be an array when using the \\`Select\\` component with \\`multiple\\`.` : _formatMuiErrorMessage(2));\n }\n selected = value.some(v => areEqualValues(v, child.props.value));\n if (selected && computeDisplay) {\n displayMultiple.push(child.props.children);\n }\n } else {\n selected = areEqualValues(value, child.props.value);\n if (selected && computeDisplay) {\n displaySingle = child.props.children;\n }\n }\n if (selected) {\n foundMatch = true;\n }\n return /*#__PURE__*/React.cloneElement(child, {\n 'aria-selected': selected ? 'true' : 'false',\n onClick: handleItemClick(child),\n onKeyUp: event => {\n if (event.key === ' ') {\n // otherwise our MenuItems dispatches a click event\n // it's not behavior of the native