@@ -213,7 +213,7 @@ const EditableSingleSelect = (props: EditableSingleSelectProps) => {
213213 field,
214214 metadataField,
215215 text,
216- form : { setFieldValue } ,
216+ form,
217217 isFirstField,
218218 focused,
219219 setFocused,
@@ -224,26 +224,16 @@ const EditableSingleSelect = (props: EditableSingleSelectProps) => {
224224 return < EditableSingleSelectSeries { ...props } /> ;
225225 }
226226
227- return (
228- < DropDown
229- ref = { ref }
230- value = { field . value as string }
231- text = { text }
232- options = { metadataField . collection
233- ? metadataField . collection . map ( item => ( { label : item . label ?? item . name , value : item . value , order : item . order } ) )
234- : [ ] }
235- required = { metadataField . required }
236- handleChange = { element => element && setFieldValue ( field . name , element . value ) }
237- placeholder = { focused
238- ? `-- ${ t ( "SELECT_NO_OPTION_SELECTED" ) } --`
239- : `${ t ( "SELECT_NO_OPTION_SELECTED" ) } `
240- }
241- customCSS = { { isMetadataStyle : focused ? false : true } }
242- handleMenuIsOpen = { ( open : boolean ) => setFocused ( open ) }
243- openMenuOnFocus
244- autoFocus = { isFirstField }
245- />
246- ) ;
227+ return < EditableSingleSelectDropDown
228+ field = { field }
229+ metadataField = { metadataField }
230+ text = { text }
231+ form = { form }
232+ isFirstField = { isFirstField }
233+ focused = { focused }
234+ setFocused = { setFocused }
235+ ref = { ref }
236+ /> ;
247237} ;
248238
249239// Renders editable text area
@@ -338,8 +328,7 @@ const EditableSingleValueTime = ({
338328const EditableSingleSelectSeries = ( {
339329 field,
340330 metadataField,
341- text,
342- form : { setFieldValue } ,
331+ form,
343332 isFirstField,
344333 focused,
345334 setFocused,
@@ -371,19 +360,50 @@ const EditableSingleSelectSeries = ({
371360 return transformListProvider ( data ) ;
372361 } ;
373362
363+ return < EditableSingleSelectDropDown
364+ field = { field }
365+ metadataField = { metadataField }
366+ text = { label }
367+ form = { form }
368+ isFirstField = { isFirstField }
369+ focused = { focused }
370+ setFocused = { setFocused }
371+ ref = { ref }
372+ fetchOptions = { fetchOptions }
373+ /> ;
374+ } ;
375+
376+ const EditableSingleSelectDropDown = ( {
377+ field,
378+ metadataField,
379+ text,
380+ form : { setFieldValue } ,
381+ options,
382+ fetchOptions,
383+ isFirstField,
384+ focused,
385+ setFocused,
386+ ref,
387+ } : EditableSingleSelectProps & Pick <
388+ Parameters < typeof DropDown > [ 0 ] ,
389+ "options" | "fetchOptions"
390+ > ) => {
391+ const { t } = useTranslation ( ) ;
392+
374393 return (
375394 < DropDown
376395 ref = { ref }
377396 value = { field . value as string }
378- text = { label }
397+ text = { text }
398+ options = { options }
379399 fetchOptions = { fetchOptions }
380400 required = { metadataField . required }
381401 handleChange = { element => element && setFieldValue ( field . name , element . value ) }
382402 placeholder = { focused
383403 ? `-- ${ t ( "SELECT_NO_OPTION_SELECTED" ) } --`
384404 : `${ t ( "SELECT_NO_OPTION_SELECTED" ) } `
385405 }
386- customCSS = { { isMetadataStyle : focused ? false : true } }
406+ customCSS = { { isMetadataStyle : focused ? false : true , width : "100%" } }
387407 handleMenuIsOpen = { ( open : boolean ) => setFocused ( open ) }
388408 openMenuOnFocus
389409 autoFocus = { isFirstField }
0 commit comments