Skip to content

Commit ad4a0f6

Browse files
fix: mfa enrolment phone number
1 parent 0e532d0 commit ad4a0f6

1 file changed

Lines changed: 12 additions & 6 deletions

File tree

FirebaseSwiftUI/FirebaseAuthSwiftUI/Sources/Views/MFAEnrolmentView.swift

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ public struct MFAEnrolmentView {
2929

3030
@State private var selectedFactorType: SecondFactorType = .sms
3131
@State private var phoneNumber = ""
32+
@State private var selectedCountry: CountryData = .default
3233
@State private var verificationCode = ""
3334
@State private var totpCode = ""
3435
@State private var currentSession: EnrollmentSession?
@@ -96,17 +97,18 @@ public struct MFAEnrolmentView {
9697
isLoading = true
9798
defer { isLoading = false }
9899

100+
let fullPhoneNumber = selectedCountry.dialCode + phoneNumber
99101
let verificationId = try await authService.sendSmsVerificationForEnrollment(
100102
session: session,
101-
phoneNumber: phoneNumber
103+
phoneNumber: fullPhoneNumber
102104
)
103105
// Update session status
104106
currentSession = EnrollmentSession(
105107
id: session.id,
106108
type: session.type,
107109
session: session.session,
108110
totpInfo: session.totpInfo,
109-
phoneNumber: phoneNumber,
111+
phoneNumber: fullPhoneNumber,
110112
verificationId: verificationId,
111113
status: .verificationSent,
112114
createdAt: session.createdAt,
@@ -140,6 +142,7 @@ public struct MFAEnrolmentView {
140142
private func resetForm() {
141143
currentSession = nil
142144
phoneNumber = ""
145+
selectedCountry = .default
143146
verificationCode = ""
144147
totpCode = ""
145148
displayName = ""
@@ -369,10 +372,13 @@ extension MFAEnrolmentView: View {
369372
prompt: "Enter phone number",
370373
keyboardType: .phonePad,
371374
contentType: .telephoneNumber,
372-
leading: {
373-
Image(systemName: "phone")
374-
}
375-
)
375+
onChange: { _ in }
376+
) {
377+
CountrySelector(
378+
selectedCountry: $selectedCountry,
379+
enabled: !isLoading
380+
)
381+
}
376382
.focused($focus, equals: .phoneNumber)
377383
.accessibilityIdentifier("phone-number-field")
378384

0 commit comments

Comments
 (0)