// // ServerSection.swift // PrivadoVPN // // Created by Murad Shabanov on 18.05.2022. // Copyright © 2022 Privado LLC. All rights reserved. // import Foundation struct ServerSectionIdentifier: Hashable, RawRepresentable, Codable { public let rawValue: String } protocol ServerSection: NSViewController { typealias Identifier = ServerSectionIdentifier var sectionIdentifier: Identifier { get } var sectionTitle: String { get } var sectionDefaultImageName: String { get } var sectionSelectedImageName: String { get } } enum ServerSectionIdentifiers { static let allServers = ServerSectionIdentifier(rawValue: "AllServers") static let favouriteServers = ServerSectionIdentifier(rawValue: "FavouriteServers") } enum ServerSectionTitleLocalized { static let allServers = NSLocalizedString("serverlist.section.all", comment: "") static let favouriteServers = NSLocalizedString("serverlist.section.favourite", comment: "") } enum ServerSectionImageNames { static let allServersDefault = "allserversDefault" static let allServersSelected = "allserversSelected" static let favoriteServersDefault = "favserversDefault" static let favouriteServersSelected = "favserversSelected" }