Something went wrong. Try again.
This repository has no description
Something went wrong. Try again.
swift-composable-notifications Sources ComposableNotifications ApplicationNotificationIndicator.swift
1.6 kB · 57 lines
Swift
at main
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758public struct ApplicationNotificationIndicatorSourceID: Equatable, Hashable, RawRepresentable, Sendable{ public init(rawValue: String) { self.rawValue = rawValue }
public var rawValue: String}
public struct ApplicationNotificationIndicatorContribution: Equatable, Identifiable, Sendable { public struct ID: Equatable, Hashable, Sendable { public init( sourceID: ApplicationNotificationIndicatorSourceID, scopeID: String ) { self.sourceID = sourceID self.scopeID = scopeID }
public var sourceID: ApplicationNotificationIndicatorSourceID public var scopeID: String }
public init(id: ID, count: Int) { precondition(count >= 0, "Notification indicator contributions cannot be negative.") self.id = id self.count = count }
public var id: ID public var count: Int}
public struct ApplicationNotificationIndicatorSummary: Equatable, Sendable { public init( contributions: [ApplicationNotificationIndicatorContribution] = [] ) { self.contributions = contributions }
public var contributions: [ApplicationNotificationIndicatorContribution]
public var totalCount: Int { contributions.reduce(0) { $0 + $1.count } }
public var badgeCount: Int? { totalCount == 0 ? nil : totalCount }
public func count(for scopeID: String) -> Int { contributions .filter { $0.id.scopeID == scopeID } .reduce(0) { $0 + $1.count } }}