From d0461769129c772fd1d871cc77feedbf3d0eb1d3 Mon Sep 17 00:00:00 2001 From: Ilya Laktyushin Date: Tue, 7 Mar 2023 16:52:20 +0400 Subject: [PATCH] Fix premium demo button when no option selected --- .../PremiumUI/Sources/PremiumGiftScreen.swift | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/submodules/PremiumUI/Sources/PremiumGiftScreen.swift b/submodules/PremiumUI/Sources/PremiumGiftScreen.swift index 8739e0c06f..8faff377d4 100644 --- a/submodules/PremiumUI/Sources/PremiumGiftScreen.swift +++ b/submodules/PremiumUI/Sources/PremiumGiftScreen.swift @@ -416,11 +416,19 @@ private final class PremiumGiftScreenContentComponent: CombinedComponent { demoSubject = .translation } + let buttonText: String + if let price = state?.price { + buttonText = strings.Premium_Gift_GiftSubscription(price).string + } else { + buttonText = strings.Common_OK + } var dismissImpl: (() -> Void)? - let controller = PremiumLimitsListScreen(context: accountContext, subject: demoSubject, source: .gift(state?.price), order: state?.configuration.perks, buttonText: strings.Premium_Gift_GiftSubscription(state?.price ?? "–").string, isPremium: false) - controller.action = { + let controller = PremiumLimitsListScreen(context: accountContext, subject: demoSubject, source: .gift(state?.price), order: state?.configuration.perks, buttonText: buttonText, isPremium: false) + controller.action = { [weak state] in dismissImpl?() - buy() + if let _ = state?.price { + buy() + } } controller.disposed = { // updateIsFocused(false)