From ac00889f23803857835819e4a12cda09f88ba973 Mon Sep 17 00:00:00 2001 From: Michelle Dayangco Date: Wed, 19 Nov 2025 23:28:16 +0800 Subject: [PATCH] [NSDK-357] Hide component when product check returns invalid product state - add notification observer for productCheckDidFail in VirtusizeInPageView - hide entire view if invalidProduct is true --- Virtusize/Sources/UI/VirtusizeInPageView.swift | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/Virtusize/Sources/UI/VirtusizeInPageView.swift b/Virtusize/Sources/UI/VirtusizeInPageView.swift index c44437b5..eb5610dd 100644 --- a/Virtusize/Sources/UI/VirtusizeInPageView.swift +++ b/Virtusize/Sources/UI/VirtusizeInPageView.swift @@ -71,6 +71,7 @@ public class VirtusizeInPageView: UIView, VirtusizeView, VirtusizeViewEventProto private let loadingGifImageView: UIImageView = UIImageView() internal var isLoading: Bool = false internal var isError: Bool = false + internal var invalidProduct: Bool = false private func addSubviews() { // Add loading GIF image view @@ -99,7 +100,7 @@ public class VirtusizeInPageView: UIView, VirtusizeView, VirtusizeViewEventProto } internal func showLoadingGif(_ show: Bool) { - isHidden = false + isHidden = invalidProduct isLoading = show loadingGifImageView.isHidden = !show contentContainerView.isHidden = show @@ -141,6 +142,12 @@ public class VirtusizeInPageView: UIView, VirtusizeView, VirtusizeViewEventProto name: .setLanguage, object: Virtusize.self ) + NotificationCenter.default.addObserver( + self, + selector: #selector(productCheckDidFail(_:)), + name: Virtusize.productCheckDidFail, + object: Virtusize.self + ) } @objc internal func didReceiveSetLanguageEvent(_ notification: Notification) {} @@ -165,6 +172,10 @@ public class VirtusizeInPageView: UIView, VirtusizeView, VirtusizeViewEventProto isLoading = false isError = false } + + @objc func productCheckDidFail(_ notification: Notification) { + invalidProduct = true + } internal func shouldUpdateInPageRecommendation( _ notification: Notification,