Structures

The following structures are available globally.

  • Message center message.

    See more

    Declaration

    Swift

    public struct MessageCenterMessage : Sendable, Equatable, Identifiable
  • Model object for holding user data.

    See more

    Declaration

    Swift

    public struct MessageCenterUser : Codable, Sendable, Equatable
  • Model object representing a custom theme to be applied to the default message center.

    To customize the message center theme:

    MessageCenterView(
        controller: messageCenterController
    )
    .messageCenterTheme(theme)
    
    See more

    Declaration

    Swift

    public struct MessageCenterTheme : Sendable
  • The Message Center content view. This view can be used to construct a custom Message Center. For a more turnkey solution, see MessageCenterView.

    To use this view, a MessageCenterController must be supplied. The controller will be shared between the list and message views, keeping the state in sync.

    ### Using it with your own navigation stack:

        @StateObject
        private var messageCenterController = MessageCenterController()
    
        var body: some View {
            NavigationStack(path: $messageCenterController.path) {
                MessageCenterContent(controller: messageCenterController)
                    .navigationDestination(for: MessageCenterController.Route.self) { route in
                        switch(route) {
                        case .message(let messageID):
                            MessageCenterMessageViewWithNavigation(messageID: messageID)
                        @unknown default:
                            fatalError()
                        }
                    }
            }
        }
    

    ### Using it in a deprecated NavigationView or UIKIt:

         @StateObject
         private var messageCenterController = MessageCenterController()
    
         var body: some View {
             NavigationView {
                 ZStack {
                     MessageCenterContent(controller: self.messageCenterController)
                     NavigationLink(
                         destination: Group {
                             if case .message(let messageID) = self.messageCenterController.path.last {
                                 MessageCenterMessageViewWithNavigation(messageID: messageID) {
                                     // Clear selection on close
                                     self.messageCenterController.path.removeAll()
                                 }
                             } else {
                                 EmptyView()
                             }
                         },
                         isActive: Binding(
                             get: { self.messageCenterController.path.last != nil },
                             set: { isActive in
                                 if !isActive { self.messageCenterController.path.removeAll() }
                             }
                         )
                     ) {
                         EmptyView()
                     }
                     .hidden()
                 }
             }
         }
    
    See more

    Declaration

    Swift

    @MainActor
    public struct MessageCenterContent : View
  • The main view for the Airship Message Center. This view provides a navigation stack. If you wish to provide your own navigation, see MessageCenterContent.

    See more

    Declaration

    Swift

    @MainActor
    public struct MessageCenterView : View
  • The configuration for a Message Center list item view.

    See more

    Declaration

    Swift

    public struct ListItemViewStyleConfiguration
  • The default style for a Message Center list item view.

    See more

    Declaration

    Swift

    public struct DefaultListItemViewStyle : MessageCenterListItemViewStyle
  • A view that displays a list of messages.

    See more

    Declaration

    Swift

    @MainActor
    public struct MessageCenterListView : View
  • A view that displays a list of messages as well as modifies the toolbars and navigation title.

    See more

    Declaration

    Swift

    @MainActor
    public struct MessageCenterListViewWithNavigation : View
  • The Message Center message view.

    See more

    Declaration

    Swift

    @MainActor
    public struct MessageCenterMessageView : View
  • The configuration for a Message Center message view.

    See more

    Declaration

    Swift

    public struct MessageViewStyleConfiguration : Sendable
  • The default style for a Message Center message view.

    Declaration

    Swift

    public struct DefaultMessageViewStyle : MessageViewStyle
  • A view that displays a message as well as modifies the toolbars and navigation title.

    See more

    Declaration

    Swift

    @MainActor
    public struct MessageCenterMessageViewWithNavigation : View