@@ -133,6 +133,17 @@ const ETHNIC_OPTIONS = [
133133 'Another background/Prefer to self-describe (please specify):' ,
134134] ;
135135
136+ const LANGUAGE_OPTIONS = [ 'English' , 'Français' ] ;
137+
138+ // Helper to convert between display names and language codes
139+ const languageToCode = ( language : string ) : string => {
140+ return language === 'English' ? 'en' : language === 'Français' ? 'fr' : '' ;
141+ } ;
142+
143+ const codeToLanguage = ( code : string ) : string => {
144+ return code === 'en' ? 'English' : code === 'fr' ? 'Français' : '' ;
145+ } ;
146+
136147export function DemographicCancerForm ( {
137148 formType,
138149 onNext,
@@ -479,11 +490,13 @@ export function DemographicCancerForm({
479490 control = { control }
480491 rules = { { required : 'Please select your preferred language' } }
481492 render = { ( { field } ) => (
482- < StyledSelect { ...field } error = { ! ! errors . preferredLanguage } >
483- < option value = "" > Select language</ option >
484- < option value = "en" > English</ option >
485- < option value = "fr" > Français</ option >
486- </ StyledSelect >
493+ < SingleSelectDropdown
494+ options = { LANGUAGE_OPTIONS }
495+ selectedValue = { codeToLanguage ( field . value || '' ) }
496+ onSelectionChange = { ( language ) => field . onChange ( languageToCode ( language ) ) }
497+ placeholder = "Preferred Language"
498+ error = { ! ! errors . preferredLanguage }
499+ />
487500 ) }
488501 />
489502 </ FormField >
@@ -1062,11 +1075,13 @@ export function BasicDemographicsForm({ formType, onNext }: BasicDemographicsFor
10621075 control = { control }
10631076 rules = { { required : 'Please select your preferred language' } }
10641077 render = { ( { field } ) => (
1065- < StyledSelect { ...field } error = { ! ! errors . preferredLanguage } >
1066- < option value = "" > Select language</ option >
1067- < option value = "en" > English</ option >
1068- < option value = "fr" > Français</ option >
1069- </ StyledSelect >
1078+ < SingleSelectDropdown
1079+ options = { LANGUAGE_OPTIONS }
1080+ selectedValue = { codeToLanguage ( field . value || '' ) }
1081+ onSelectionChange = { ( language ) => field . onChange ( languageToCode ( language ) ) }
1082+ placeholder = "Preferred Language"
1083+ error = { ! ! errors . preferredLanguage }
1084+ />
10701085 ) }
10711086 />
10721087 </ FormField >
0 commit comments