| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303 |
- //
- // AppDashboardTheme.swift
- // App for Indeed
- //
- import AppKit
- /// Indeed-inspired dashboard colors that follow the active light / dark appearance.
- @MainActor
- enum AppDashboardTheme {
- static var isDark: Bool { AppAppearanceManager.shared.isDark }
- static var brandBlue: NSColor {
- NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 1)
- }
- static var brandBlueHover: NSColor {
- isDark
- ? NSColor(srgbRed: 54 / 255, green: 110 / 255, blue: 198 / 255, alpha: 1)
- : NSColor(srgbRed: 28 / 255, green: 70 / 255, blue: 140 / 255, alpha: 1)
- }
- static var pageBackground: NSColor {
- isDark
- ? NSColor(srgbRed: 28 / 255, green: 28 / 255, blue: 30 / 255, alpha: 1)
- : NSColor(srgbRed: 1, green: 1, blue: 1, alpha: 1)
- }
- static var chromeBackground: NSColor {
- isDark
- ? NSColor(srgbRed: 28 / 255, green: 28 / 255, blue: 30 / 255, alpha: 1)
- : NSColor(srgbRed: 247 / 255, green: 247 / 255, blue: 247 / 255, alpha: 1)
- }
- static var sidebarBackground: NSColor {
- isDark
- ? NSColor(srgbRed: 36 / 255, green: 36 / 255, blue: 38 / 255, alpha: 1)
- : NSColor(srgbRed: 1, green: 1, blue: 1, alpha: 1)
- }
- static var mainHostBackground: NSColor {
- pageBackground
- }
- static var welcomeHeroHeadingBlue: NSColor {
- isDark
- ? NSColor(srgbRed: 96 / 255, green: 165 / 255, blue: 250 / 255, alpha: 1)
- : NSColor(srgbRed: 0, green: 82 / 255, blue: 204 / 255, alpha: 1)
- }
- static var welcomeHeroSubtitleText: NSColor {
- isDark
- ? NSColor(srgbRed: 174 / 255, green: 184 / 255, blue: 198 / 255, alpha: 1)
- : NSColor(srgbRed: 51 / 255, green: 65 / 255, blue: 85 / 255, alpha: 1)
- }
- static var welcomeHeroIconWell: NSColor {
- isDark
- ? NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 0.22)
- : NSColor(srgbRed: 239 / 255, green: 246 / 255, blue: 255 / 255, alpha: 1)
- }
- static var welcomeHeroWaveTint: NSColor {
- isDark
- ? NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 0.35)
- : NSColor(srgbRed: 186 / 255, green: 210 / 255, blue: 253 / 255, alpha: 1)
- }
- static var welcomeSubtitleText: NSColor {
- isDark
- ? NSColor(srgbRed: 174 / 255, green: 174 / 255, blue: 178 / 255, alpha: 1)
- : NSColor(srgbRed: 64 / 255, green: 64 / 255, blue: 64 / 255, alpha: 1)
- }
- static var selectionFill: NSColor {
- NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: isDark ? 0.28 : 0.12)
- }
- static var selectionFillHover: NSColor {
- NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: isDark ? 0.38 : 0.2)
- }
- static var cardBackground: NSColor {
- isDark
- ? NSColor(srgbRed: 44 / 255, green: 44 / 255, blue: 46 / 255, alpha: 1)
- : NSColor(srgbRed: 1, green: 1, blue: 1, alpha: 1)
- }
- static var toggleBackground: NSColor {
- isDark
- ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1)
- : NSColor(srgbRed: 232 / 255, green: 232 / 255, blue: 232 / 255, alpha: 1)
- }
- static var primaryText: NSColor {
- isDark
- ? NSColor(srgbRed: 245 / 255, green: 245 / 255, blue: 247 / 255, alpha: 1)
- : NSColor(srgbRed: 45 / 255, green: 45 / 255, blue: 45 / 255, alpha: 1)
- }
- static var secondaryText: NSColor {
- isDark
- ? NSColor(srgbRed: 152 / 255, green: 152 / 255, blue: 157 / 255, alpha: 1)
- : NSColor(srgbRed: 118 / 255, green: 118 / 255, blue: 118 / 255, alpha: 1)
- }
- static var tertiaryText: NSColor { secondaryText }
- static var border: NSColor {
- isDark
- ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1)
- : NSColor(srgbRed: 212 / 255, green: 210 / 255, blue: 208 / 255, alpha: 1)
- }
- static var searchBarBorder: NSColor {
- isDark
- ? NSColor(srgbRed: 72 / 255, green: 96 / 255, blue: 140 / 255, alpha: 0.55)
- : NSColor(srgbRed: 180 / 255, green: 200 / 255, blue: 228 / 255, alpha: 1)
- }
- static var searchBarBorderHover: NSColor {
- isDark
- ? NSColor(srgbRed: 96 / 255, green: 140 / 255, blue: 210 / 255, alpha: 0.75)
- : NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 0.55)
- }
- static var proCardFill: NSColor {
- isDark
- ? NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 0.14)
- : NSColor(srgbRed: 239 / 255, green: 244 / 255, blue: 252 / 255, alpha: 1)
- }
- static var proCardBorder: NSColor { border }
- static var proAccent: NSColor { brandBlue }
- static var proCTABackground: NSColor { brandBlue }
- static var proCTAText: NSColor {
- NSColor(srgbRed: 1, green: 1, blue: 1, alpha: 1)
- }
- static var neutralHoverFill: NSColor {
- isDark
- ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1)
- : NSColor(srgbRed: 240 / 255, green: 240 / 255, blue: 240 / 255, alpha: 1)
- }
- static var sidebarRowHoverFill: NSColor {
- isDark
- ? NSColor(srgbRed: 1, green: 1, blue: 1, alpha: 0.06)
- : NSColor(srgbRed: 0, green: 0, blue: 0, alpha: 0.04)
- }
- static var settingsPageBackground: NSColor { mainHostBackground }
- static var settingsGroupBackground: NSColor { cardBackground }
- static var settingsIconBackground: NSColor {
- isDark
- ? NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 0.2)
- : NSColor(srgbRed: 239 / 255, green: 244 / 255, blue: 252 / 255, alpha: 1)
- }
- static var settingsDivider: NSColor {
- isDark
- ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1)
- : NSColor(srgbRed: 228 / 255, green: 228 / 255, blue: 228 / 255, alpha: 1)
- }
- static var featureCardBackground: NSColor { cardBackground }
- static var featureCardBorder: NSColor {
- isDark
- ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1)
- : NSColor(srgbRed: 237 / 255, green: 242 / 255, blue: 247 / 255, alpha: 1)
- }
- static var featureIconWell: NSColor {
- isDark
- ? NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 0.22)
- : NSColor(srgbRed: 235 / 255, green: 242 / 255, blue: 255 / 255, alpha: 1)
- }
- static var featurePrimaryBlue: NSColor { welcomeHeroHeadingBlue }
- static var featureSecondaryText: NSColor {
- isDark
- ? NSColor(srgbRed: 174 / 255, green: 184 / 255, blue: 198 / 255, alpha: 1)
- : NSColor(srgbRed: 93 / 255, green: 109 / 255, blue: 126 / 255, alpha: 1)
- }
- static var loadingPageBackgroundTop: NSColor {
- isDark
- ? NSColor(srgbRed: 36 / 255, green: 36 / 255, blue: 38 / 255, alpha: 1)
- : NSColor(srgbRed: 252 / 255, green: 253 / 255, blue: 255 / 255, alpha: 1)
- }
- static var loadingPageBackgroundBottom: NSColor {
- isDark
- ? NSColor(srgbRed: 28 / 255, green: 28 / 255, blue: 30 / 255, alpha: 1)
- : NSColor(srgbRed: 241 / 255, green: 245 / 255, blue: 252 / 255, alpha: 1)
- }
- static var loadingIconWell: NSColor { featureIconWell }
- static var loadingHeadingBlue: NSColor { welcomeHeroHeadingBlue }
- static var loadingSubtitleText: NSColor { welcomeHeroSubtitleText }
- static var loadingStatusText: NSColor { secondaryText }
- static var loadingWaveTint: NSColor { welcomeHeroWaveTint }
- static var loadingBadgeFill: NSColor {
- isDark
- ? NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 0.28)
- : NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: 0.1)
- }
- static var loadingBadgeText: NSColor { brandBlue }
- static var loadingTrackFill: NSColor {
- isDark
- ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1)
- : NSColor(srgbRed: 228 / 255, green: 233 / 255, blue: 242 / 255, alpha: 1)
- }
- static var loadingTrackBorder: NSColor { border }
- static var loadingIconWellBorder: NSColor {
- isDark
- ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1)
- : NSColor(srgbRed: 1, green: 1, blue: 1, alpha: 1)
- }
- // MARK: CV Maker gallery
- static var cvMakerPageGradientTop: NSColor {
- isDark ? pageBackground : NSColor(srgbRed: 250 / 255, green: 252 / 255, blue: 1, alpha: 1)
- }
- static var cvMakerPageGradientBottom: NSColor {
- isDark ? pageBackground : NSColor(srgbRed: 236 / 255, green: 244 / 255, blue: 1, alpha: 1)
- }
- static var cvMakerChipRestFill: NSColor { cardBackground }
- static var cvMakerChipRestBorder: NSColor { border }
- static var cvMakerChipHoverFill: NSColor { neutralHoverFill }
- static var cvMakerChipBadgeBackground: NSColor {
- isDark
- ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1)
- : NSColor(srgbRed: 233 / 255, green: 236 / 255, blue: 241 / 255, alpha: 1)
- }
- static var cvMakerChipBadgeText: NSColor { secondaryText }
- static var cvMakerCardFooter: NSColor {
- isDark
- ? NSColor(srgbRed: 40 / 255, green: 40 / 255, blue: 42 / 255, alpha: 1)
- : NSColor(srgbRed: 250 / 255, green: 251 / 255, blue: 253 / 255, alpha: 1)
- }
- static var cvMakerPreviewSurface: NSColor {
- isDark
- ? NSColor(srgbRed: 52 / 255, green: 52 / 255, blue: 54 / 255, alpha: 1)
- : NSColor(srgbRed: 252 / 255, green: 252 / 255, blue: 252 / 255, alpha: 1)
- }
- static var cvMakerPreviewSidebarTint: NSColor {
- isDark
- ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1)
- : NSColor(srgbRed: 244 / 255, green: 246 / 255, blue: 250 / 255, alpha: 1)
- }
- static var cvMakerCardBorderHover: NSColor { searchBarBorderHover }
- static var cvMakerSelectionGlow: NSColor {
- NSColor(srgbRed: 37 / 255, green: 87 / 255, blue: 167 / 255, alpha: isDark ? 0.65 : 0.55)
- }
- static var cvMakerFilterChromeBorder: NSColor {
- isDark
- ? NSColor(srgbRed: 58 / 255, green: 58 / 255, blue: 60 / 255, alpha: 1)
- : NSColor.white.withAlphaComponent(0.65)
- }
- // MARK: Profile hub & editor
- static var profileFieldFill: NSColor {
- isDark
- ? NSColor(srgbRed: 52 / 255, green: 52 / 255, blue: 54 / 255, alpha: 1)
- : NSColor(srgbRed: 247 / 255, green: 247 / 255, blue: 247 / 255, alpha: 1)
- }
- static var profileDestructive: NSColor {
- NSColor(srgbRed: 220 / 255, green: 38 / 255, blue: 38 / 255, alpha: 1)
- }
- }
|