@@ -911,68 +911,75 @@ export function BenchmarkJobCreateScreen({
911911 } , [ formData , isFormValid , cloneAgentConfigs , cloneOrchestratorConfig ] ) ;
912912
913913 // Handle input
914- useInput ( ( input , key ) => {
915- if ( screenState !== "form" ) return ;
914+ useInput (
915+ ( input , key ) => {
916+ if ( screenState !== "form" ) return ;
916917
917- // Handle source type toggle with left/right arrows
918- if ( currentField === "source_type" && ( key . leftArrow || key . rightArrow ) ) {
919- setFormData ( ( prev ) => ( {
920- ...prev ,
921- sourceType : prev . sourceType === "benchmark" ? "scenarios" : "benchmark" ,
922- // Clear the other source when switching
923- benchmarkId : prev . sourceType === "scenarios" ? "" : prev . benchmarkId ,
924- benchmarkName :
925- prev . sourceType === "scenarios" ? "" : prev . benchmarkName ,
926- scenarioIds : prev . sourceType === "benchmark" ? [ ] : prev . scenarioIds ,
927- scenarioNames :
928- prev . sourceType === "benchmark" ? [ ] : prev . scenarioNames ,
929- } ) ) ;
930- return ;
931- }
918+ // Handle source type toggle with left/right arrows
919+ if ( currentField === "source_type" && ( key . leftArrow || key . rightArrow ) ) {
920+ setFormData ( ( prev ) => ( {
921+ ...prev ,
922+ sourceType :
923+ prev . sourceType === "benchmark" ? "scenarios" : "benchmark" ,
924+ // Clear the other source when switching
925+ benchmarkId : prev . sourceType === "scenarios" ? "" : prev . benchmarkId ,
926+ benchmarkName :
927+ prev . sourceType === "scenarios" ? "" : prev . benchmarkName ,
928+ scenarioIds : prev . sourceType === "benchmark" ? [ ] : prev . scenarioIds ,
929+ scenarioNames :
930+ prev . sourceType === "benchmark" ? [ ] : prev . scenarioNames ,
931+ } ) ) ;
932+ return ;
933+ }
932934
933- // Navigate between fields
934- if ( key . upArrow && currentFieldIndex > 0 ) {
935- setCurrentField ( fieldKeys [ currentFieldIndex - 1 ] ) ;
936- } else if ( key . downArrow && currentFieldIndex < fieldKeys . length - 1 ) {
937- setCurrentField ( fieldKeys [ currentFieldIndex + 1 ] ) ;
938- } else if ( key . escape ) {
939- goBack ( ) ;
940- } else if ( key . return ) {
941- if ( currentFieldDef ?. type === "picker" && currentField === "benchmark" ) {
942- setScreenState ( "picking_benchmark" ) ;
943- } else if (
944- currentFieldDef ?. type === "picker" &&
945- currentField === "scenarios"
946- ) {
947- setScreenState ( "picking_scenarios" ) ;
948- } else if (
949- currentFieldDef ?. type === "picker" &&
950- currentField === "agents"
951- ) {
952- setScreenState ( "picking_agents" ) ;
953- } else if (
954- currentFieldDef ?. type === "picker" &&
955- currentField === "secrets"
956- ) {
957- setScreenState ( "secrets_config" ) ;
958- setSecretsConfigSelectedIndex ( 0 ) ;
959- } else if (
960- currentFieldDef ?. type === "metadata" &&
961- currentField === "metadata"
962- ) {
963- setInMetadataSection ( true ) ;
964- setSelectedMetadataIndex ( 0 ) ;
965- } else if (
966- currentFieldDef ?. type === "action" &&
967- currentField === "create"
968- ) {
969- handleCreate ( ) ;
970- } else if ( currentFieldIndex < fieldKeys . length - 1 ) {
971- // Move to next field on Enter for text inputs
935+ // Navigate between fields
936+ if ( key . upArrow && currentFieldIndex > 0 ) {
937+ setCurrentField ( fieldKeys [ currentFieldIndex - 1 ] ) ;
938+ } else if ( key . downArrow && currentFieldIndex < fieldKeys . length - 1 ) {
972939 setCurrentField ( fieldKeys [ currentFieldIndex + 1 ] ) ;
940+ } else if ( key . escape ) {
941+ goBack ( ) ;
942+ } else if ( key . return ) {
943+ if (
944+ currentFieldDef ?. type === "picker" &&
945+ currentField === "benchmark"
946+ ) {
947+ setScreenState ( "picking_benchmark" ) ;
948+ } else if (
949+ currentFieldDef ?. type === "picker" &&
950+ currentField === "scenarios"
951+ ) {
952+ setScreenState ( "picking_scenarios" ) ;
953+ } else if (
954+ currentFieldDef ?. type === "picker" &&
955+ currentField === "agents"
956+ ) {
957+ setScreenState ( "picking_agents" ) ;
958+ } else if (
959+ currentFieldDef ?. type === "picker" &&
960+ currentField === "secrets"
961+ ) {
962+ setScreenState ( "secrets_config" ) ;
963+ setSecretsConfigSelectedIndex ( 0 ) ;
964+ } else if (
965+ currentFieldDef ?. type === "metadata" &&
966+ currentField === "metadata"
967+ ) {
968+ setInMetadataSection ( true ) ;
969+ setSelectedMetadataIndex ( 0 ) ;
970+ } else if (
971+ currentFieldDef ?. type === "action" &&
972+ currentField === "create"
973+ ) {
974+ handleCreate ( ) ;
975+ } else if ( currentFieldIndex < fieldKeys . length - 1 ) {
976+ // Move to next field on Enter for text inputs
977+ setCurrentField ( fieldKeys [ currentFieldIndex + 1 ] ) ;
978+ }
973979 }
974- }
975- } ) ;
980+ } ,
981+ { isActive : ! inMetadataSection } ,
982+ ) ;
976983
977984 useInput (
978985 ( input , key ) => {
0 commit comments