import ManagedSettings import ManagedSettingsUI import UIKit final class ShieldConfigurationExtension: ShieldConfigurationDataSource { override func configuration(shielding application: Application) -> ShieldConfiguration { makeConfiguration() } override func configuration(shielding application: Application, in category: ActivityCategory) -> ShieldConfiguration { makeConfiguration() } override func configuration(shielding webDomain: WebDomain) -> ShieldConfiguration { makeConfiguration() } override func configuration(shielding webDomain: WebDomain, in category: ActivityCategory) -> ShieldConfiguration { makeConfiguration() } private func makeConfiguration() -> ShieldConfiguration { let config = AppRestrictSharedStore.shieldConfig let image = AppRestrictSharedStore.loadShieldImage() let background = UIColor(red: 0.98, green: 0.98, blue: 0.98, alpha: 1) let titleColor = UIColor(red: 0.16, green: 0.20, blue: 0.27, alpha: 1) let bodyColor = UIColor(red: 0.46, green: 0.46, blue: 0.46, alpha: 1) return ShieldConfiguration( backgroundBlurStyle: .systemMaterial, backgroundColor: background, icon: image, title: ShieldConfiguration.Label(text: config.title, color: titleColor), subtitle: ShieldConfiguration.Label(text: config.subtitle, color: bodyColor), primaryButtonLabel: ShieldConfiguration.Label(text: config.primaryButtonLabel, color: .white), primaryButtonBackgroundColor: UIColor(red: 0.09, green: 0.70, blue: 1.0, alpha: 1) ) } }