@@ -143,6 +143,7 @@ function SignUpStartInternal(): JSX.Element {
143143 attributes,
144144 hasTicket : hasTicket || hasExistingSignUpWithTicket ,
145145 hasEmail,
146+ signUp,
146147 activeCommIdentifierType,
147148 isProgressiveSignUp,
148149 legalConsentRequired : isLegalConsentEnabled ,
@@ -259,6 +260,11 @@ function SignUpStartInternal(): JSX.Element {
259260 const handleSubmit = async ( e : React . FormEvent < HTMLFormElement > ) => {
260261 e . preventDefault ( ) ;
261262
263+ // Do not submit empty password field when patching sign up with legal missing only
264+ if ( onlyLegalAcceptedMissing && ! formState . password . value ) {
265+ delete fields . password ;
266+ }
267+
262268 type FormStateKey = keyof typeof formState ;
263269 const fieldsToSubmit = Object . entries ( fields ) . reduce ( ( acc , [ k , v ] ) => {
264270 acc . push ( ...( v && formState [ k as FormStateKey ] ? [ formState [ k as FormStateKey ] ] : [ ] ) ) ;
@@ -437,24 +443,25 @@ function SignUpStartInternal(): JSX.Element {
437443 gap = { 6 }
438444 >
439445 < SocialButtonsReversibleContainerWithDivider >
440- { ( showOauthProviders || showWeb3Providers || showAlternativePhoneCodeProviders ) && (
441- < SignUpSocialButtons
442- enableOAuthProviders = { showOauthProviders }
443- enableWeb3Providers = { showWeb3Providers }
444- enableAlternativePhoneCodeProviders = { showAlternativePhoneCodeProviders }
445- onAlternativePhoneCodeProviderClick = { onAlternativePhoneCodeProviderClick }
446- continueSignUp = { missingRequirementsWithTicket }
447- legalAccepted = { Boolean ( formState . legalAccepted . checked ) || undefined }
448- />
449- ) }
446+ { ( showOauthProviders || showWeb3Providers || showAlternativePhoneCodeProviders ) &&
447+ ! onlyLegalAcceptedMissing && (
448+ < SignUpSocialButtons
449+ enableOAuthProviders = { showOauthProviders }
450+ enableWeb3Providers = { showWeb3Providers }
451+ enableAlternativePhoneCodeProviders = { showAlternativePhoneCodeProviders }
452+ onAlternativePhoneCodeProviderClick = { onAlternativePhoneCodeProviderClick }
453+ continueSignUp = { missingRequirementsWithTicket }
454+ legalAccepted = { Boolean ( formState . legalAccepted . checked ) || undefined }
455+ />
456+ ) }
450457 { shouldShowForm && (
451458 < SignUpForm
452459 handleSubmit = { handleSubmit }
453460 fields = { fields }
454461 formState = { formState }
462+ onlyLegalAcceptedMissing = { onlyLegalAcceptedMissing }
455463 canToggleEmailPhone = { canToggleEmailPhone }
456464 handleEmailPhoneToggle = { handleChangeActive }
457- onlyLegalAcceptedMissing = { onlyLegalAcceptedMissing }
458465 />
459466 ) }
460467 </ SocialButtonsReversibleContainerWithDivider >
0 commit comments