import Foundation import SwiftUI final class UnwatchedFeedCountModel: ObservableObject { static let shared = UnwatchedFeedCountModel() @Published var unwatched = [Account: Int]() @Published var unwatchedByChannel = [Account: [Channel.ID: Int]]() private var accounts = AccountsModel.shared // swiftlint:disable empty_count var unwatchedText: Text? { if let account = accounts.current, !account.anonymous, let count = unwatched[account], count > 0 { return Text(String(count)) } return nil } func unwatchedByChannelText(_ channel: Channel) -> Text? { if let account = accounts.current, !account.anonymous, let count = unwatchedByChannel[account]?[channel.id], count > 0 { return Text(String(count)) } return nil } // swiftlint:enable empty_count }