diff --git a/FirebaseAppCheck/CHANGELOG.md b/FirebaseAppCheck/CHANGELOG.md index 914ba0aca9..73fc5fb29f 100644 --- a/FirebaseAppCheck/CHANGELOG.md +++ b/FirebaseAppCheck/CHANGELOG.md @@ -2,6 +2,7 @@ - [changed] App Check SDK available for all supported platforms/OS versions, but App Attest and DeviceCheck providers availability changed to match underlying platfrom API availability. (#8388) # v8.4.0 -- M100 +- [fixed] Fixed build issues introduced in Xcode 13 beta 3. (#8401) - [fixed] Bump Promises dependency. (#8365) # v8.3.0 -- M99 - [added] Token API for 3P use. (#8266) diff --git a/FirebaseAppCheck/Tests/Unit/Swift/AppCheckAPITests.swift b/FirebaseAppCheck/Tests/Unit/Swift/AppCheckAPITests.swift index 65010848a4..ad2a2ca85b 100644 --- a/FirebaseAppCheck/Tests/Unit/Swift/AppCheckAPITests.swift +++ b/FirebaseAppCheck/Tests/Unit/Swift/AppCheckAPITests.swift @@ -68,7 +68,7 @@ final class AppCheckAPITests { #if swift(>=5.5) if #available(iOS 15.0, macOS 12.0, macCatalyst 15.0, tvOS 15.0, watchOS 8.0, *) { // async/await is a Swift 5.5+ feature available on iOS 15+ - async { + Task { do { try await AppCheck.appCheck().token(forcingRefresh: false) } catch { @@ -102,7 +102,7 @@ final class AppCheckAPITests { #if swift(>=5.5) if #available(iOS 15.0, macOS 12.0, macCatalyst 15.0, tvOS 15.0, watchOS 8.0, *) { // async/await is a Swift 5.5+ feature available on iOS 15+ - async { + Task { do { _ = try await debugProvider.getToken() } catch { @@ -170,20 +170,20 @@ final class AppCheckAPITests { // ... } } - } - // Get token (async/await) - #if swift(>=5.5) - if #available(iOS 15.0, macOS 12.0, macCatalyst 15.0, tvOS 15.0, watchOS 8.0, *) { - // async/await is a Swift 5.5+ feature available on iOS 15+ - async { - do { - _ = try await deviceCheckProvider.getToken() - } catch { - // ... + // Get token (async/await) + #if swift(>=5.5) + if #available(iOS 15.0, macOS 12.0, macCatalyst 15.0, tvOS 15.0, watchOS 8.0, *) { + // async/await is a Swift 5.5+ feature available on iOS 15+ + Task { + do { + _ = try await deviceCheckProvider.getToken() + } catch { + // ... + } } } - } - #endif // swift(>=5.5) + #endif // swift(>=5.5) + } } } } diff --git a/FirebaseAppDistribution/Sources/FIRAppDistributionUIService.h b/FirebaseAppDistribution/Sources/FIRAppDistributionUIService.h index 9c727257ad..99b0002fb8 100644 --- a/FirebaseAppDistribution/Sources/FIRAppDistributionUIService.h +++ b/FirebaseAppDistribution/Sources/FIRAppDistributionUIService.h @@ -30,6 +30,8 @@ typedef void (^FIRFADUIActionCompletion)(BOOL continued) /// An instance of this class provides UI elements required for the App Distribution tester /// authentication flow as an AppDelegate interceptor. + +NS_EXTENSION_UNAVAILABLE_IOS("Firebase App Distribution is not supported for iOS extensions.") @interface FIRAppDistributionUIService : NSObject diff --git a/FirebaseAppDistribution/Sources/Public/FirebaseAppDistribution/FIRAppDistribution.h b/FirebaseAppDistribution/Sources/Public/FirebaseAppDistribution/FIRAppDistribution.h index 8c6bdbc247..ce442d6750 100644 --- a/FirebaseAppDistribution/Sources/Public/FirebaseAppDistribution/FIRAppDistribution.h +++ b/FirebaseAppDistribution/Sources/Public/FirebaseAppDistribution/FIRAppDistribution.h @@ -26,6 +26,8 @@ NS_ASSUME_NONNULL_BEGIN * Note: The App Distribution class cannot be subclassed. If this makes testing difficult, * we suggest using a wrapper class or a protocol extension. */ + +NS_EXTENSION_UNAVAILABLE_IOS("Firebase App Distribution is not supported for iOS extensions.") NS_SWIFT_NAME(AppDistribution) @interface FIRAppDistribution : NSObject diff --git a/FirebaseDynamicLinks/CHANGELOG.md b/FirebaseDynamicLinks/CHANGELOG.md index a9bf4a3445..472eaf2180 100644 --- a/FirebaseDynamicLinks/CHANGELOG.md +++ b/FirebaseDynamicLinks/CHANGELOG.md @@ -1,3 +1,7 @@ +# v8.4.0 +- [fixed] Fixed build issues introduced in Xcode 13 beta 3. (#8401) +- [fixed] Fixed build failures for extension targets. (#6548) + # v8.2.0 - [fixed] Fixed analyze issue introduced in Xcode 12.5. (#8208) diff --git a/FirebaseDynamicLinks/Sources/Public/FirebaseDynamicLinks/FIRDynamicLinks.h b/FirebaseDynamicLinks/Sources/Public/FirebaseDynamicLinks/FIRDynamicLinks.h index 326962c404..2e0bc15382 100644 --- a/FirebaseDynamicLinks/Sources/Public/FirebaseDynamicLinks/FIRDynamicLinks.h +++ b/FirebaseDynamicLinks/Sources/Public/FirebaseDynamicLinks/FIRDynamicLinks.h @@ -33,6 +33,8 @@ NS_ASSUME_NONNULL_BEGIN * @class FIRDynamicLinks * @abstract A class that checks for pending Dynamic Links and parses URLs. */ + +NS_EXTENSION_UNAVAILABLE_IOS("Firebase Dynamic Links is not supported for iOS extensions.") NS_SWIFT_NAME(DynamicLinks) @interface FIRDynamicLinks : NSObject diff --git a/FirebaseInAppMessaging/CHANGELOG.md b/FirebaseInAppMessaging/CHANGELOG.md index 7aaed26f5a..a100513f07 100644 --- a/FirebaseInAppMessaging/CHANGELOG.md +++ b/FirebaseInAppMessaging/CHANGELOG.md @@ -1,7 +1,10 @@ -# 2021-7 -- v.8.3.0 +# 2021-8 -- v.8.5.0 - [added] Added support for unit testing with in-app message data objects (#8351). - [added] Added support for prototyping custom in-app message views in SwiftUI (#8351). +# 2021-7 --- v8.4.0 +- [fixed] Fixed build issues introduced in Xcode 13 beta 3. (#8401) + # 2021-6 -- v.8.2.0 - [fixed] Fixed missing constraints warnings in default UI storyboard (#8205). diff --git a/FirebaseInAppMessaging/Sources/DefaultUI/Banner/FIRIAMBannerViewController.h b/FirebaseInAppMessaging/Sources/DefaultUI/Banner/FIRIAMBannerViewController.h index 9dcb2d2af1..dc898aab35 100644 --- a/FirebaseInAppMessaging/Sources/DefaultUI/Banner/FIRIAMBannerViewController.h +++ b/FirebaseInAppMessaging/Sources/DefaultUI/Banner/FIRIAMBannerViewController.h @@ -24,6 +24,8 @@ @protocol FIRInAppMessagingDisplayDelegate; NS_ASSUME_NONNULL_BEGIN + +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") @interface FIRIAMBannerViewController : FIRIAMBaseRenderingViewController + (FIRIAMBannerViewController *) instantiateViewControllerWithResourceBundle:(NSBundle *)resourceBundle diff --git a/FirebaseInAppMessaging/Sources/DefaultUI/Card/FIRIAMCardViewController.h b/FirebaseInAppMessaging/Sources/DefaultUI/Card/FIRIAMCardViewController.h index 5535dc8398..eaacc920f9 100644 --- a/FirebaseInAppMessaging/Sources/DefaultUI/Card/FIRIAMCardViewController.h +++ b/FirebaseInAppMessaging/Sources/DefaultUI/Card/FIRIAMCardViewController.h @@ -20,6 +20,7 @@ @protocol FIRInAppMessagingDisplayDelegate; NS_ASSUME_NONNULL_BEGIN +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") @interface FIRIAMCardViewController : FIRIAMBaseRenderingViewController + (FIRIAMCardViewController *) diff --git a/FirebaseInAppMessaging/Sources/DefaultUI/FIRIAMBaseRenderingViewController.h b/FirebaseInAppMessaging/Sources/DefaultUI/FIRIAMBaseRenderingViewController.h index bd9a435811..7d3f42755d 100644 --- a/FirebaseInAppMessaging/Sources/DefaultUI/FIRIAMBaseRenderingViewController.h +++ b/FirebaseInAppMessaging/Sources/DefaultUI/FIRIAMBaseRenderingViewController.h @@ -22,6 +22,8 @@ @protocol FIRInAppMessagingDisplayDelegate; NS_ASSUME_NONNULL_BEGIN + +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") @interface FIRIAMBaseRenderingViewController : UIViewController @property(nonatomic, readwrite) id timeFetcher; diff --git a/FirebaseInAppMessaging/Sources/DefaultUI/FIRIAMDefaultDisplayImpl.h b/FirebaseInAppMessaging/Sources/DefaultUI/FIRIAMDefaultDisplayImpl.h index 036b2ee2bb..1c122e19c1 100644 --- a/FirebaseInAppMessaging/Sources/DefaultUI/FIRIAMDefaultDisplayImpl.h +++ b/FirebaseInAppMessaging/Sources/DefaultUI/FIRIAMDefaultDisplayImpl.h @@ -25,6 +25,7 @@ NS_SWIFT_NAME(InAppMessagingDefaultDisplayImpl) * would be instantiated upon SDK start-up automatically. It's exposed in public interface * to help UI Testing app access the UI layer directly. */ +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") @interface FIRIAMDefaultDisplayImpl : NSObject /// Conforms to display delegate for rendering of in-app messages. diff --git a/FirebaseInAppMessaging/Sources/DefaultUI/FIRIAMRenderingWindowHelper.h b/FirebaseInAppMessaging/Sources/DefaultUI/FIRIAMRenderingWindowHelper.h index 2b12696d77..14391a4c5f 100644 --- a/FirebaseInAppMessaging/Sources/DefaultUI/FIRIAMRenderingWindowHelper.h +++ b/FirebaseInAppMessaging/Sources/DefaultUI/FIRIAMRenderingWindowHelper.h @@ -23,6 +23,7 @@ NS_ASSUME_NONNULL_BEGIN * The caller is supposed to set the rootViewController to be the appropriate view controller * for the in-app message and call setHidden:NO to make it really visible. */ +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") @interface FIRIAMRenderingWindowHelper : NSObject /// Returns the singleton `UIWindow` object used for rendering IAM views that block diff --git a/FirebaseInAppMessaging/Sources/DefaultUI/ImageOnly/FIRIAMImageOnlyViewController.h b/FirebaseInAppMessaging/Sources/DefaultUI/ImageOnly/FIRIAMImageOnlyViewController.h index 4eb8800eff..876088af67 100644 --- a/FirebaseInAppMessaging/Sources/DefaultUI/ImageOnly/FIRIAMImageOnlyViewController.h +++ b/FirebaseInAppMessaging/Sources/DefaultUI/ImageOnly/FIRIAMImageOnlyViewController.h @@ -23,6 +23,7 @@ @protocol FIRInAppMessagingDisplayDelegate; NS_ASSUME_NONNULL_BEGIN +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") @interface FIRIAMImageOnlyViewController : FIRIAMBaseRenderingViewController + (FIRIAMImageOnlyViewController *) instantiateViewControllerWithResourceBundle:(NSBundle *)resourceBundle diff --git a/FirebaseInAppMessaging/Sources/DefaultUI/Modal/FIRIAMModalViewController.h b/FirebaseInAppMessaging/Sources/DefaultUI/Modal/FIRIAMModalViewController.h index 0bc578100e..ddd9969da5 100644 --- a/FirebaseInAppMessaging/Sources/DefaultUI/Modal/FIRIAMModalViewController.h +++ b/FirebaseInAppMessaging/Sources/DefaultUI/Modal/FIRIAMModalViewController.h @@ -22,6 +22,7 @@ @protocol FIRInAppMessagingDisplayDelegate; NS_ASSUME_NONNULL_BEGIN +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") @interface FIRIAMModalViewController : FIRIAMBaseRenderingViewController + (FIRIAMModalViewController *) instantiateViewControllerWithResourceBundle:(NSBundle *)resourceBundle diff --git a/FirebaseInAppMessaging/Sources/Private/Flows/FIRIAMDisplayCheckOnAnalyticEventsFlow.h b/FirebaseInAppMessaging/Sources/Private/Flows/FIRIAMDisplayCheckOnAnalyticEventsFlow.h index 49c7115add..4f3f962fe2 100644 --- a/FirebaseInAppMessaging/Sources/Private/Flows/FIRIAMDisplayCheckOnAnalyticEventsFlow.h +++ b/FirebaseInAppMessaging/Sources/Private/Flows/FIRIAMDisplayCheckOnAnalyticEventsFlow.h @@ -18,5 +18,7 @@ // An implementation of FIRIAMDisplayCheckTriggerFlow by triggering the display check when // a Firebase Analytics event is fired. + +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") @interface FIRIAMDisplayCheckOnAnalyticEventsFlow : FIRIAMDisplayCheckTriggerFlow @end diff --git a/FirebaseInAppMessaging/Sources/Private/Flows/FIRIAMDisplayExecutor.h b/FirebaseInAppMessaging/Sources/Private/Flows/FIRIAMDisplayExecutor.h index d870c60c41..5cd5eec4b7 100644 --- a/FirebaseInAppMessaging/Sources/Private/Flows/FIRIAMDisplayExecutor.h +++ b/FirebaseInAppMessaging/Sources/Private/Flows/FIRIAMDisplayExecutor.h @@ -38,6 +38,7 @@ NS_ASSUME_NONNULL_BEGIN // conditions are satisfied for the rendering // 1 No current in-app message is being displayed // 2 For non-contextual messages, the display interval in display setting is met. +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") @interface FIRIAMDisplayExecutor : NSObject - (instancetype)initWithInAppMessaging:(FIRInAppMessaging *)inAppMessaging diff --git a/FirebaseInAppMessaging/Sources/Private/Flows/FIRIAMFetchOnAppForegroundFlow.h b/FirebaseInAppMessaging/Sources/Private/Flows/FIRIAMFetchOnAppForegroundFlow.h index f8ab0bb4ef..3b027d8c41 100644 --- a/FirebaseInAppMessaging/Sources/Private/Flows/FIRIAMFetchOnAppForegroundFlow.h +++ b/FirebaseInAppMessaging/Sources/Private/Flows/FIRIAMFetchOnAppForegroundFlow.h @@ -16,6 +16,7 @@ #import "FirebaseInAppMessaging/Sources/Private/Runtime/FIRIAMFetchFlow.h" // an implementation of FIRIAMDisplayExecutor by triggering the display when app is foregrounded +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") @interface FIRIAMFetchOnAppForegroundFlow : FIRIAMFetchFlow - (void)start; - (void)stop; diff --git a/FirebaseInAppMessaging/Sources/Private/Flows/FIRIAMMessageClientCache.h b/FirebaseInAppMessaging/Sources/Private/Flows/FIRIAMMessageClientCache.h index 2587e4c65c..4cc0f40c6e 100644 --- a/FirebaseInAppMessaging/Sources/Private/Flows/FIRIAMMessageClientCache.h +++ b/FirebaseInAppMessaging/Sources/Private/Flows/FIRIAMMessageClientCache.h @@ -49,6 +49,7 @@ NS_ASSUME_NONNULL_BEGIN // // This class exists so that we can do message match more efficiently (in-memory search vs search // in local persistent storage) by using appropriate in-memory data structure. +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") @interface FIRIAMMessageClientCache : NSObject // used to inform the analytics event display check flow about whether it should start/stop diff --git a/FirebaseInAppMessaging/Sources/Private/Runtime/FIRIAMFetchFlow.h b/FirebaseInAppMessaging/Sources/Private/Runtime/FIRIAMFetchFlow.h index f0bde463f3..5adeaa0311 100644 --- a/FirebaseInAppMessaging/Sources/Private/Runtime/FIRIAMFetchFlow.h +++ b/FirebaseInAppMessaging/Sources/Private/Runtime/FIRIAMFetchFlow.h @@ -43,6 +43,7 @@ typedef void (^FIRIAMFetchMessageCompletionHandler)( // Parent class for supporting different fetching flows. Subclass is supposed to trigger // checkAndFetch at appropriate moments based on its fetch strategy +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") @interface FIRIAMFetchFlow : NSObject - (instancetype)initWithSetting:(FIRIAMFetchSetting *)setting messageCache:(FIRIAMMessageClientCache *)cache diff --git a/FirebaseInAppMessaging/Sources/Private/Runtime/FIRIAMRuntimeManager.h b/FirebaseInAppMessaging/Sources/Private/Runtime/FIRIAMRuntimeManager.h index e4f92929b9..ee6d960b94 100644 --- a/FirebaseInAppMessaging/Sources/Private/Runtime/FIRIAMRuntimeManager.h +++ b/FirebaseInAppMessaging/Sources/Private/Runtime/FIRIAMRuntimeManager.h @@ -25,6 +25,7 @@ NS_ASSUME_NONNULL_BEGIN // A class for managing the objects/dependencies for supporting different fiam flows at runtime +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") @interface FIRIAMRuntimeManager : NSObject @property(nonatomic, nonnull) FIRIAMSDKSettings *currentSetting; @property(nonatomic, nonnull) FIRIAMActivityLogger *activityLogger; diff --git a/FirebaseInAppMessaging/Sources/Public/FirebaseInAppMessaging/FIRInAppMessaging.h b/FirebaseInAppMessaging/Sources/Public/FirebaseInAppMessaging/FIRInAppMessaging.h index c09f341324..39b2bb63d7 100644 --- a/FirebaseInAppMessaging/Sources/Public/FirebaseInAppMessaging/FIRInAppMessaging.h +++ b/FirebaseInAppMessaging/Sources/Public/FirebaseInAppMessaging/FIRInAppMessaging.h @@ -42,6 +42,8 @@ NS_ASSUME_NONNULL_BEGIN * 2. Set `FirebaseInAppMessagingAutomaticDataCollectionEnabled` to false in the app's plist file. * 3. Global Firebase data collection setting. **/ + +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") NS_SWIFT_NAME(InAppMessaging) @interface FIRInAppMessaging : NSObject /** @fn inAppMessaging diff --git a/FirebaseInAppMessaging/Sources/Public/FirebaseInAppMessaging/FIRInAppMessagingRendering.h b/FirebaseInAppMessaging/Sources/Public/FirebaseInAppMessaging/FIRInAppMessagingRendering.h index a9f6d4a51a..fcc0afc682 100644 --- a/FirebaseInAppMessaging/Sources/Public/FirebaseInAppMessaging/FIRInAppMessagingRendering.h +++ b/FirebaseInAppMessaging/Sources/Public/FirebaseInAppMessaging/FIRInAppMessagingRendering.h @@ -74,6 +74,7 @@ NS_SWIFT_NAME(InAppMessagingActionButton) /** Contain display data for an image for a fiam message. */ +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") NS_SWIFT_NAME(InAppMessagingImageData) @interface FIRInAppMessagingImageData : NSObject @@ -98,6 +99,7 @@ NS_SWIFT_NAME(InAppMessagingImageData) /** Defines the metadata for the campaign to which a FIAM message belongs. */ +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") NS_SWIFT_NAME(InAppMessagingCampaignInfo) @interface FIRInAppMessagingCampaignInfo : NSObject @@ -123,6 +125,7 @@ NS_SWIFT_NAME(InAppMessagingCampaignInfo) /** Defines the metadata for a FIAM action. */ +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") NS_SWIFT_NAME(InAppMessagingAction) @interface FIRInAppMessagingAction : NSObject @@ -149,6 +152,7 @@ NS_SWIFT_NAME(InAppMessagingAction) * Base class representing a FIAM message to be displayed. Don't create instance * of this class directly. Instantiate one of its subclasses instead. */ +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") NS_SWIFT_NAME(InAppMessagingDisplayMessage) @interface FIRInAppMessagingDisplayMessage : NSObject @@ -185,6 +189,7 @@ NS_SWIFT_NAME(InAppMessagingDisplayMessage) @end NS_SWIFT_NAME(InAppMessagingCardDisplay) +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") @interface FIRInAppMessagingCardDisplay : FIRInAppMessagingDisplayMessage /** @@ -259,6 +264,7 @@ NS_SWIFT_NAME(InAppMessagingCardDisplay) /** Class for defining a modal message for display. */ +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") NS_SWIFT_NAME(InAppMessagingModalDisplay) @interface FIRInAppMessagingModalDisplay : FIRInAppMessagingDisplayMessage @@ -316,6 +322,7 @@ NS_SWIFT_NAME(InAppMessagingModalDisplay) /** Class for defining a banner message for display. */ +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") NS_SWIFT_NAME(InAppMessagingBannerDisplay) @interface FIRInAppMessagingBannerDisplay : FIRInAppMessagingDisplayMessage @@ -367,6 +374,7 @@ NS_SWIFT_NAME(InAppMessagingBannerDisplay) /** Class for defining a image-only message for display. */ +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") NS_SWIFT_NAME(InAppMessagingImageOnlyDisplay) @interface FIRInAppMessagingImageOnlyDisplay : FIRInAppMessagingDisplayMessage @@ -416,6 +424,7 @@ typedef NS_ENUM(NSInteger, FIAMDisplayRenderErrorType) { * A protocol defining those callbacks to be triggered by the message display component * under appropriate conditions. */ +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") NS_SWIFT_NAME(InAppMessagingDisplayDelegate) @protocol FIRInAppMessagingDisplayDelegate @@ -473,6 +482,7 @@ NS_SWIFT_NAME(InAppMessagingDisplayDelegate) /** * The protocol that a FIAM display component must implement. */ +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") NS_SWIFT_NAME(InAppMessagingDisplay) @protocol FIRInAppMessagingDisplay diff --git a/FirebaseInAppMessaging/Sources/Runtime/FIRIAMActionURLFollower.m b/FirebaseInAppMessaging/Sources/Runtime/FIRIAMActionURLFollower.m index 7b7b02120f..ebc2119e02 100644 --- a/FirebaseInAppMessaging/Sources/Runtime/FIRIAMActionURLFollower.m +++ b/FirebaseInAppMessaging/Sources/Runtime/FIRIAMActionURLFollower.m @@ -23,6 +23,7 @@ #import "FirebaseInAppMessaging/Sources/FIRCore+InAppMessaging.h" #import "FirebaseInAppMessaging/Sources/Private/Runtime/FIRIAMActionURLFollower.h" +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") @interface FIRIAMActionURLFollower () @property(nonatomic, readonly, nonnull, copy) NSSet *appCustomURLSchemesSet; @property(nonatomic, readonly) BOOL isOldAppDelegateOpenURLDefined; @@ -33,6 +34,7 @@ @property(nonatomic, readonly, nonnull) UIApplication *mainApplication; @end +NS_EXTENSION_UNAVAILABLE_IOS("Firebase In App Messaging is not supported for iOS extensions.") @implementation FIRIAMActionURLFollower + (FIRIAMActionURLFollower *)actionURLFollower { diff --git a/FirebaseInAppMessaging/Swift/Source/CustomInAppMessageDisplayViewModifier.swift b/FirebaseInAppMessaging/Swift/Source/CustomInAppMessageDisplayViewModifier.swift index 1b25ec90d6..8ac48fbe85 100644 --- a/FirebaseInAppMessaging/Swift/Source/CustomInAppMessageDisplayViewModifier.swift +++ b/FirebaseInAppMessaging/Swift/Source/CustomInAppMessageDisplayViewModifier.swift @@ -18,6 +18,7 @@ import SwiftUI // MARK: Image-only messages. @available(iOS 13, tvOS 13, *) +@available(iOSApplicationExtension, unavailable) struct ImageOnlyInAppMessageDisplayViewModifier: ViewModifier { var closure: (InAppMessagingImageOnlyDisplay, InAppMessagingDisplayDelegate) -> DisplayMessage @ObservedObject var delegateBridge = DelegateBridge.shared @@ -39,6 +40,7 @@ struct ImageOnlyInAppMessageDisplayViewModifier: ViewModif } @available(iOS 13, tvOS 13, *) +@available(iOSApplicationExtension, unavailable) public extension View { /// Overrides the default display of an image only in-app message as defined on the Firebase console. func imageOnlyInAppMessage(closure: @escaping (InAppMessagingImageOnlyDisplay, @@ -52,6 +54,7 @@ public extension View { // MARK: Banner messages. @available(iOS 13, tvOS 13, *) +@available(iOSApplicationExtension, unavailable) struct BannerInAppMessageDisplayViewModifier: ViewModifier { var closure: (InAppMessagingBannerDisplay, InAppMessagingDisplayDelegate) -> DisplayMessage @ObservedObject var delegateBridge = DelegateBridge.shared @@ -72,6 +75,7 @@ struct BannerInAppMessageDisplayViewModifier: ViewModifier } @available(iOS 13, tvOS 13, *) +@available(iOSApplicationExtension, unavailable) public extension View { /// Overrides the default display of a banner in-app message as defined on the Firebase console. func bannerInAppMessage(closure: @escaping (InAppMessagingBannerDisplay, @@ -85,6 +89,7 @@ public extension View { // MARK: Modal messages. @available(iOS 13, tvOS 13, *) +@available(iOSApplicationExtension, unavailable) struct ModalInAppMessageDisplayViewModifier: ViewModifier { var closure: (InAppMessagingModalDisplay, InAppMessagingDisplayDelegate) -> DisplayMessage @ObservedObject var delegateBridge = DelegateBridge.shared @@ -105,6 +110,7 @@ struct ModalInAppMessageDisplayViewModifier: ViewModifier } @available(iOS 13, tvOS 13, *) +@available(iOSApplicationExtension, unavailable) public extension View { /// Overrides the default display of a modal in-app message as defined on the Firebase console. func modalInAppMessage(closure: @escaping (InAppMessagingModalDisplay, @@ -118,6 +124,7 @@ public extension View { // MARK: Card messages. @available(iOS 13, tvOS 13, *) +@available(iOSApplicationExtension, unavailable) struct CardInAppMessageDisplayViewModifier: ViewModifier { var closure: (InAppMessagingCardDisplay, InAppMessagingDisplayDelegate) -> DisplayMessage @ObservedObject var delegateBridge = DelegateBridge.shared @@ -138,6 +145,7 @@ struct CardInAppMessageDisplayViewModifier: ViewModifier { } @available(iOS 13, tvOS 13, *) +@available(iOSApplicationExtension, unavailable) public extension View { /// Overrides the default display of a card in-app message as defined on the Firebase console. func cardInAppMessage(closure: @escaping (InAppMessagingCardDisplay, @@ -155,6 +163,7 @@ public extension View { * in-app message fetch/display/interaction flow. */ @available(iOS 13, tvOS 13, *) +@available(iOSApplicationExtension, unavailable) class DelegateBridge: NSObject, InAppMessagingDisplay, InAppMessagingDisplayDelegate, ObservableObject { @Published var inAppMessageData: (InAppMessagingDisplayMessage, diff --git a/FirebaseInAppMessaging/Swift/Source/SwiftUIPreviewHelpers.swift b/FirebaseInAppMessaging/Swift/Source/SwiftUIPreviewHelpers.swift index dfc39a3683..6ee5b31cb5 100644 --- a/FirebaseInAppMessaging/Swift/Source/SwiftUIPreviewHelpers.swift +++ b/FirebaseInAppMessaging/Swift/Source/SwiftUIPreviewHelpers.swift @@ -14,6 +14,8 @@ import FirebaseInAppMessaging +@available(iOS 13, tvOS 13, *) +@available(iOSApplicationExtension, unavailable) public struct InAppMessagingPreviewHelpers { public static func cardMessage(campaignName: String = "Card message campaign", title: String = "Title for modal message", diff --git a/Functions/Tests/CombineUnit/HTTPSCallableTests.swift b/Functions/Tests/CombineUnit/HTTPSCallableTests.swift index 0985af383a..383a6ba7ff 100644 --- a/Functions/Tests/CombineUnit/HTTPSCallableTests.swift +++ b/Functions/Tests/CombineUnit/HTTPSCallableTests.swift @@ -41,6 +41,7 @@ class MockFunctions: Functions { } } +@available(iOS 13.0, macOS 10.15, macCatalyst 13.0, tvOS 13.0, watchOS 6.0, *) class HTTPSCallableTests: XCTestCase { override func setUp() { super.setUp() diff --git a/SharedTestUtilities/FIRSampleAppUtilities.h b/SharedTestUtilities/FIRSampleAppUtilities.h index 9cbfc2e807..9dcbdb773d 100644 --- a/SharedTestUtilities/FIRSampleAppUtilities.h +++ b/SharedTestUtilities/FIRSampleAppUtilities.h @@ -18,6 +18,7 @@ #if __has_include() && !TARGET_OS_WATCH #import +NS_EXTENSION_UNAVAILABLE_IOS("SampleAppUtilities is not supported for iOS extensions.") NS_SWIFT_NAME(SampleAppUtilities) @interface FIRSampleAppUtilities : NSObject