Skip to content

Commit e284d81

Browse files
committed
Integrate presenter in ProductVariationsViewController
1 parent 36762be commit e284d81

File tree

2 files changed

+8
-18
lines changed

2 files changed

+8
-18
lines changed

WooCommerce/Classes/ViewRelated/Products/Variations/GenerateVariationsOptionPresenter.swift

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,8 @@ final class GenerateVariationsOptionsPresenter {
2828
}
2929

3030
let viewProperties = BottomSheetListSelectorViewProperties(title: Localization.addVariationAction)
31-
let command = GenerateVariationsSelectorCommand(selected: nil) { [weak self] option in
32-
guard let self else { return }
33-
self.baseViewController.dismiss(animated: true)
31+
let command = GenerateVariationsSelectorCommand(selected: nil) { [baseViewController] option in
32+
baseViewController.dismiss(animated: true)
3433
switch option {
3534
case .single:
3635
onCompletion(.single)

WooCommerce/Classes/ViewRelated/Products/Variations/ProductVariationsViewController.swift

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -445,11 +445,7 @@ extension ProductVariationsViewController: UITableViewDelegate {
445445
private extension ProductVariationsViewController {
446446
func createVariationFromEmptyState() {
447447
if product.attributesForVariations.isNotEmpty {
448-
if featureFlagService.isFeatureFlagEnabled(.generateAllVariations) {
449-
presentGenerateVariationOptions()
450-
} else {
451-
createVariation()
452-
}
448+
presentGenerateVariationOptions()
453449
} else {
454450
navigateToAddAttributeViewController()
455451
}
@@ -609,20 +605,15 @@ private extension ProductVariationsViewController {
609605
/// Displays a bottom sheet allowing the merchant to choose whether to generate one variation or to generate all variations.
610606
///
611607
private func presentGenerateVariationOptions() {
612-
let viewProperties = BottomSheetListSelectorViewProperties(title: Localization.addVariationAction)
613-
let command = GenerateVariationsSelectorCommand(selected: nil) { [weak self] option in
614-
guard let self else { return }
615-
self.dismiss(animated: true)
616-
switch option {
608+
let presenter = GenerateVariationsOptionsPresenter(baseViewController: self)
609+
presenter.presentGenerationOptions(sourceView: topStackView) { [weak self] selectedOption in
610+
switch selectedOption {
617611
case .single:
618-
self.createVariation()
612+
self?.createVariation()
619613
case .all:
620-
self.generateAllVariations()
614+
self?.generateAllVariations()
621615
}
622-
623616
}
624-
let bottomSheetPresenter = BottomSheetListSelectorPresenter(viewProperties: viewProperties, command: command)
625-
bottomSheetPresenter.show(from: self, sourceView: topStackView)
626617
}
627618

628619
/// Informs the merchant about errors that happen during the variation generation

0 commit comments

Comments
 (0)