// // AppAssets.swift // NetNewsWire // // Created by Brent Simmons on 2/17/18. // Copyright © 2018 Ranchero Software. All rights reserved. // import AppKit import Account import Images struct AppAssets { static let accountBazQux = NSImage(named: "accountBazQux") static let accountCloudKit = NSImage(named: "accountCloudKit") static let accountFeedbin = NSImage(named: "accountFeedbin") static let accountFeedly = NSImage(named: "accountFeedly") static let accountFreshRSS = NSImage(named: "accountFreshRSS") static let accountInoreader = NSImage(named: "accountInoreader") static let accountLocal = NSImage(named: "accountLocal") static let accountNewsBlur = NSImage(named: "accountNewsBlur") static let accountTheOldReader = NSImage(named: "accountTheOldReader") static let addNewSidebarItemImage = NSImage(systemSymbolName: "plus", accessibilityDescription: nil)! static let articleExtractorError = NSImage(named: "articleExtractorError")! static let articleExtractorOff = NSImage(named: "articleExtractorOff")! static let articleExtractorOn = NSImage(named: "articleExtractorOn")! static let articleTheme = NSImage(systemSymbolName: "doc.richtext", accessibilityDescription: nil)! static let cleanUpImage = NSImage(systemSymbolName: "wind", accessibilityDescription: nil)! static let marsEditIcon = NSImage(named: "MarsEditIcon")! static let microblogIcon = NSImage(named: "MicroblogIcon")! static let faviconTemplateImage = NSImage(named: "faviconTemplateImage")! static let filterActive = NSImage(systemSymbolName: "line.horizontal.3.decrease.circle.fill", accessibilityDescription: nil)! static let filterInactive = NSImage(systemSymbolName: "line.horizontal.3.decrease.circle", accessibilityDescription: nil)! static let iconLightBackgroundColor = NSColor(named: NSColor.Name("iconLightBackgroundColor"))! static let iconDarkBackgroundColor = NSColor(named: NSColor.Name("iconDarkBackgroundColor"))! static let legacyArticleExtractor = NSImage(named: "legacyArticleExtractor")! static let legacyArticleExtractorError = NSImage(named: "legacyArticleExtractorError")! static let legacyArticleExtractorInactiveDark = NSImage(named: "legacyArticleExtractorInactiveDark")! static let legacyArticleExtractorInactiveLight = NSImage(named: "legacyArticleExtractorInactiveLight")! static let legacyArticleExtractorProgress1 = NSImage(named: "legacyArticleExtractorProgress1") static let legacyArticleExtractorProgress2 = NSImage(named: "legacyArticleExtractorProgress2") static let legacyArticleExtractorProgress3 = NSImage(named: "legacyArticleExtractorProgress3") static let legacyArticleExtractorProgress4 = NSImage(named: "legacyArticleExtractorProgress4") @MainActor static let folderImage: IconImage = { let image = NSImage(systemSymbolName: "folder", accessibilityDescription: nil)! let preferredColor = NSColor(named: "AccentColor")! let coloredImage = image.tinted(with: preferredColor) return IconImage(coloredImage, isSymbol: true, isBackgroundSupressed: true, preferredColor: preferredColor.cgColor) }() static let markAllAsReadImage = NSImage(named: "markAllAsRead")! static let nextUnreadImage = NSImage(systemSymbolName: "chevron.down.circle", accessibilityDescription: nil)! static let openInBrowserImage = NSImage(systemSymbolName: "safari", accessibilityDescription: nil)! static let preferencesToolbarAccountsImage = NSImage(systemSymbolName: "at", accessibilityDescription: nil)! static let preferencesToolbarGeneralImage = NSImage(systemSymbolName: "gearshape", accessibilityDescription: nil)! static let preferencesToolbarAdvancedImage = NSImage(systemSymbolName: "gearshape.2", accessibilityDescription: nil)! static let readClosedImage = NSImage(systemSymbolName: "largecircle.fill.circle", accessibilityDescription: nil)! static let readOpenImage = NSImage(systemSymbolName: "circle", accessibilityDescription: nil)! static let refreshImage = NSImage(systemSymbolName: "arrow.clockwise", accessibilityDescription: nil)! @MainActor static let searchFeedImage: IconImage = { return IconImage(NSImage(named: NSImage.smartBadgeTemplateName)!, isSymbol: true, isBackgroundSupressed: true) }() static let shareImage = NSImage(systemSymbolName: "square.and.arrow.up", accessibilityDescription: nil)! static let sidebarToggleImage = NSImage(systemSymbolName: "sidebar.left", accessibilityDescription: nil)! static let starClosedImage = NSImage(systemSymbolName: "star.fill", accessibilityDescription: nil)! static let starOpenImage = NSImage(systemSymbolName: "star", accessibilityDescription: nil)! @MainActor static let starredFeedImage: IconImage = { let image = NSImage(systemSymbolName: "star.fill", accessibilityDescription: nil)! let preferredColor = NSColor(named: "StarColor")! let coloredImage = image.tinted(with: preferredColor) return IconImage(coloredImage, isSymbol: true, isBackgroundSupressed: true, preferredColor: preferredColor.cgColor) }() static let timelineSeparatorColor = NSColor(named: "timelineSeparatorColor")! static let timelineStarSelected = NSImage(named: "timelineStar")?.tinted(with: .white) static let timelineStarUnselected = NSImage(named: "timelineStar")?.tinted(with: starColor) @MainActor static let todayFeedImage: IconImage = { let image = NSImage(systemSymbolName: "sun.max.fill", accessibilityDescription: nil)! let preferredColor = NSColor.orange let coloredImage = image.tinted(with: preferredColor) return IconImage(coloredImage, isSymbol: true, isBackgroundSupressed: true, preferredColor: preferredColor.cgColor) }() @MainActor static let unreadFeedImage: IconImage = { let image = NSImage(systemSymbolName: "largecircle.fill.circle", accessibilityDescription: nil)! let preferredColor = NSColor(named: "AccentColor")! let coloredImage = image.tinted(with: preferredColor) return IconImage(coloredImage, isSymbol: true, isBackgroundSupressed: true, preferredColor: preferredColor.cgColor) }() static let swipeMarkReadImage = NSImage(systemSymbolName: "circle", accessibilityDescription: "Mark Read")! .withSymbolConfiguration(.init(scale: .large)) static let swipeMarkUnreadImage = NSImage(systemSymbolName: "largecircle.fill.circle", accessibilityDescription: "Mark Unread")! .withSymbolConfiguration(.init(scale: .large)) static let swipeMarkStarredImage = NSImage(systemSymbolName: "star.fill", accessibilityDescription: "Star")! .withSymbolConfiguration(.init(scale: .large)) static let swipeMarkUnstarredImage = NSImage(systemSymbolName: "star", accessibilityDescription: "Unstar")! .withSymbolConfiguration(.init(scale: .large))! static let starColor = NSColor(named: NSColor.Name("StarColor"))! static func image(for accountType: AccountType) -> NSImage? { switch accountType { case .onMyMac: return AppAssets.accountLocal case .cloudKit: return AppAssets.accountCloudKit case .bazQux: return AppAssets.accountBazQux case .feedbin: return AppAssets.accountFeedbin case .feedly: return AppAssets.accountFeedly case .freshRSS: return AppAssets.accountFreshRSS case .inoreader: return AppAssets.accountInoreader case .newsBlur: return AppAssets.accountNewsBlur case .theOldReader: return AppAssets.accountTheOldReader } } }