diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/dashboard/blaze/DashboardBlazeViewModel.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/dashboard/blaze/DashboardBlazeViewModel.kt index fb75a235a0f..30d20dd8bdf 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/dashboard/blaze/DashboardBlazeViewModel.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/dashboard/blaze/DashboardBlazeViewModel.kt @@ -82,6 +82,12 @@ class DashboardBlazeViewModel @AssistedInject constructor( val products = productsResult.getOrThrow() val blazeCampaignModel = blazeCampaignResult.getOrThrow() + if (products.isEmpty()) { + // When the products is empty, the card will be hidden by the parent view model + // so we don't need to show any UI + return@combine null + } + when { blazeCampaignModel == null -> showUiForNoCampaign(products) else -> showUiForCampaign(blazeCampaignModel) diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/dashboard/data/ObserveBlazeWidgetStatus.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/dashboard/data/ObserveBlazeWidgetStatus.kt index 97856af05de..1efa3cec4ce 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/dashboard/data/ObserveBlazeWidgetStatus.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/dashboard/data/ObserveBlazeWidgetStatus.kt @@ -37,7 +37,12 @@ class ObserveBlazeWidgetStatus @Inject constructor( .withIndex() .map { (index, productsCount) -> if (productsCount == 0L && index == 0) { - productListRepository.fetchProductList().getOrNull()?.size != 0 + productListRepository + .fetchProductList( + productFilterOptions = mapOf(ProductFilterOption.STATUS to ProductStatus.PUBLISH.value) + ).getOrNull() + ?.filterNot { it.isSampleProduct } + ?.size != 0 } else { productsCount > 0 }