diff --git a/packages/react-ui/src/components/molecules/Autocomplete.d.ts b/packages/react-ui/src/components/molecules/Autocomplete.d.ts index 56968b321..51b17daea 100644 --- a/packages/react-ui/src/components/molecules/Autocomplete.d.ts +++ b/packages/react-ui/src/components/molecules/Autocomplete.d.ts @@ -10,6 +10,9 @@ export type AutocompleteProps< ChipComponent extends React.ElementType = ChipTypeMap['defaultComponent'] > = MuiAutocompleteProps & { creatable?: boolean; + newItemTitle?: React.ReactNode | string; + startAdornment?: React.ReactNode; + inputParams?: object; }; declare const Autocomplete: < diff --git a/packages/react-ui/src/components/molecules/Autocomplete.js b/packages/react-ui/src/components/molecules/Autocomplete.js index 7d03b3551..5e0a1d558 100644 --- a/packages/react-ui/src/components/molecules/Autocomplete.js +++ b/packages/react-ui/src/components/molecules/Autocomplete.js @@ -1,8 +1,10 @@ import React, { forwardRef } from 'react'; import PropTypes from 'prop-types'; import { + InputAdornment, MenuItem, Autocomplete as MuiAutocomplete, + TextField, createFilterOptions } from '@mui/material'; @@ -18,6 +20,8 @@ const Autocomplete = forwardRef( forcePopupIcon, filterOptions, getOptionLabel, + startAdornment, + inputParams, ...otherProps }, ref @@ -65,6 +69,22 @@ const Autocomplete = forwardRef( renderOption={creatable ? creatableRenderOption : renderOption} freeSolo={creatable || freeSolo} forcePopupIcon={creatable || forcePopupIcon} + renderInput={(params) => { + if (startAdornment) { + params.InputProps.startAdornment = ( + {startAdornment} + ); + } + return ( +
+ +
+ ); + }} /> ); } @@ -72,7 +92,9 @@ const Autocomplete = forwardRef( Autocomplete.propTypes = { creatable: PropTypes.bool, - newItemTitle: PropTypes.oneOfType([PropTypes.string, PropTypes.element]) + newItemTitle: PropTypes.oneOfType([PropTypes.string, PropTypes.element]), + startAdornment: PropTypes.element, + inputParams: PropTypes.object }; export default Autocomplete;