Kurdtvs-Live-Kurdish-TV-Kur.../Mastodon/Service/ThemeService/Theme.swift

54 lines
1.4 KiB
Swift
Raw Normal View History

2021-07-05 10:07:17 +02:00
//
// Theme.swift
// Mastodon
//
// Created by MainasuK Cirno on 2021-7-5.
//
import UIKit
2021-07-19 11:12:45 +02:00
public protocol Theme {
2021-07-05 10:07:17 +02:00
var systemBackgroundColor: UIColor { get }
var secondarySystemBackgroundColor: UIColor { get }
var tertiarySystemBackgroundColor: UIColor { get }
var systemElevatedBackgroundColor: UIColor { get }
var systemGroupedBackgroundColor: UIColor { get }
var secondarySystemGroupedBackgroundColor: UIColor { get }
var tertiarySystemGroupedBackgroundColor: UIColor { get }
var navigationBarBackgroundColor: UIColor { get }
var tabBarBackgroundColor: UIColor { get }
var tabBarItemSelectedIconColor: UIColor { get }
var tabBarItemFocusedIconColor: UIColor { get }
var tabBarItemNormalIconColor: UIColor { get }
var tabBarItemDisabledIconColor: UIColor { get }
var separator: UIColor { get }
var tableViewCellBackgroundColor: UIColor { get }
var tableViewCellSelectionBackgroundColor: UIColor { get }
var contentWarningOverlayBackgroundColor: UIColor { get }
var profileFieldCollectionViewBackgroundColor: UIColor { get }
var composeToolbarBackgroundColor: UIColor { get }
2021-07-05 10:07:17 +02:00
}
2021-07-19 11:12:45 +02:00
public enum ThemeName: String, CaseIterable {
2021-07-05 10:07:17 +02:00
case system
case mastodon
}
extension ThemeName {
2021-07-19 11:12:45 +02:00
public var theme: Theme {
2021-07-05 10:07:17 +02:00
switch self {
case .system: return SystemTheme()
case .mastodon: return MastodonTheme()
}
}
}