@@ -453,6 +453,14 @@ export const ConfigureParameterScreen: React.FC<ConfigureParameterScreenProps> =
453
453
return String ( value ) ;
454
454
} ;
455
455
456
+ // Helper function to get actual value to store
457
+ const getValueToStore = ( value : any ) : any => {
458
+ if ( typeof value === 'object' && value !== null && 'name' in value ) {
459
+ return value . name ;
460
+ }
461
+ return value ;
462
+ } ;
463
+
456
464
return (
457
465
< div key = { widgetIndex } className = "border-b pb-3" >
458
466
< div className = "flex justify-between items-center" >
@@ -522,7 +530,9 @@ export const ConfigureParameterScreen: React.FC<ConfigureParameterScreenProps> =
522
530
! searchTerms [ dropdownKey ] ||
523
531
getDisplayValue ( value ) . toLowerCase ( ) . includes ( ( searchTerms [ dropdownKey ] || '' ) . toLowerCase ( ) )
524
532
) ;
525
- handleSelectAll ( nodeId , paramName , filteredValues ) ;
533
+ // Map values to use name property when available
534
+ const valuesToStore = filteredValues . map ( getValueToStore ) ;
535
+ handleSelectAll ( nodeId , paramName , valuesToStore ) ;
526
536
} }
527
537
>
528
538
< div className = { `w-4 h-4 mr-2 border rounded-sm flex items-center justify-center ${
@@ -561,11 +571,11 @@ export const ConfigureParameterScreen: React.FC<ConfigureParameterScreenProps> =
561
571
onClick = { ( e ) => {
562
572
e . preventDefault ( ) ;
563
573
e . stopPropagation ( ) ;
564
- handleTestValueSelect ( nodeId , paramName , value , e ) ;
574
+ handleTestValueSelect ( nodeId , paramName , getValueToStore ( value ) , e ) ;
565
575
} }
566
576
>
567
- < div className = { `w-4 h-4 mr-2 border rounded-sm flex items-center justify-center ${ ( paramTestValues [ nodeId ] ?. [ paramName ] || [ ] ) . includes ( value ) ? 'bg-blue-500 border-blue-500' : 'border-gray-300' } ` } >
568
- { ( paramTestValues [ nodeId ] ?. [ paramName ] || [ ] ) . includes ( value ) && (
577
+ < div className = { `w-4 h-4 mr-2 border rounded-sm flex items-center justify-center ${ ( paramTestValues [ nodeId ] ?. [ paramName ] || [ ] ) . includes ( getValueToStore ( value ) ) ? 'bg-blue-500 border-blue-500' : 'border-gray-300' } ` } >
578
+ { ( paramTestValues [ nodeId ] ?. [ paramName ] || [ ] ) . includes ( getValueToStore ( value ) ) && (
569
579
< svg className = "w-3 h-3 text-white" fill = "none" stroke = "currentColor" viewBox = "0 0 24 24" >
570
580
< path strokeLinecap = "round" strokeLinejoin = "round" strokeWidth = { 2 } d = "M5 13l4 4L19 7" />
571
581
</ svg >
@@ -597,7 +607,7 @@ export const ConfigureParameterScreen: React.FC<ConfigureParameterScreenProps> =
597
607
key = { idx }
598
608
className = "px-2 py-0.5 bg-blue-100 text-blue-800 rounded-md flex items-center text-xs"
599
609
>
600
- < span > { getDisplayValue ( value ) } </ span >
610
+ < span > { value } </ span >
601
611
< svg
602
612
className = "w-4 h-4 ml-1 cursor-pointer hover:text-blue-600"
603
613
fill = "none"
0 commit comments