Skip to content

Commit 737d28e

Browse files
committed
Update FormFields struct to generate optional address fields
1 parent c2f584f commit 737d28e

File tree

1 file changed

+7
-16
lines changed

1 file changed

+7
-16
lines changed

WooCommerce/Classes/ViewRelated/Orders/Order Details/Address Edit/EditAddressFormViewModel.swift

Lines changed: 7 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -18,17 +18,13 @@ final class EditAddressFormViewModel: ObservableObject {
1818
///
1919
private let originalAddress: Address
2020

21-
/// Tracks if a network request is being performed.
22-
///
23-
private let performingNetworkRequest: CurrentValueSubject<Bool, Never> = .init(false)
24-
25-
// MARK: Form Fields
26-
2721
/// Address form fields
2822
///
2923
@Published var fields = FormFields()
3024

31-
// MARK: Navigation and utility
25+
/// Tracks if a network request is being performed.
26+
///
27+
private let performingNetworkRequest: CurrentValueSubject<Bool, Never> = .init(false)
3228

3329
/// Active navigation bar trailing item.
3430
/// Defaults to a disabled done button.
@@ -46,10 +42,6 @@ final class EditAddressFormViewModel: ObservableObject {
4642
func updateRemoteAddress(onFinish: @escaping (Bool) -> Void) {
4743
// TODO: perform network request
4844
// TODO: add success/failure notice
49-
50-
// To corroborate that the fields are getting updated
51-
print("Address to update: \(fields)")
52-
5345
performingNetworkRequest.send(true)
5446
DispatchQueue.main.asyncAfter(deadline: .now() + 3) { [weak self] in
5547
self?.performingNetworkRequest.send(false)
@@ -86,7 +78,6 @@ private extension EditAddressFormViewModel {
8678
}
8779
}
8880

89-
9081
extension EditAddressFormViewModel {
9182
/// Type to hold values from all the form fields
9283
///
@@ -125,15 +116,15 @@ extension EditAddressFormViewModel {
125116
func toAddress() -> Address {
126117
Address(firstName: firstName,
127118
lastName: lastName,
128-
company: company,
119+
company: company.isEmpty ? nil : company,
129120
address1: address1,
130-
address2: address2,
121+
address2: address2.isEmpty ? nil : address2,
131122
city: city,
132123
state: state,
133124
postcode: postcode,
134125
country: country,
135-
phone: phone,
136-
email: email)
126+
phone: phone.isEmpty ? nil : phone,
127+
email: email.isEmpty ? nil : email)
137128
}
138129
}
139130
}

0 commit comments

Comments
 (0)