ClashX.Meta/ClashX/Models/RemoteConfigModel.swift

44 lines
1.1 KiB
Swift
Raw Normal View History

//
// RemoteConfigModel.swift
// ClashX
//
2019-10-02 21:43:18 +08:00
// Created by yicheng on 2019/7/28.
// Copyright © 2019 west2online. All rights reserved.
//
import Cocoa
class RemoteConfigModel: Codable {
2019-12-08 13:38:18 +08:00
var url: String
var name: String
var updateTime: Date?
var updating = false
var isPlaceHolderName = false
2019-10-20 13:40:50 +08:00
init(url: String, name: String, updateTime: Date? = nil) {
self.url = url
self.name = name
self.updateTime = updateTime
}
2019-10-20 13:40:50 +08:00
private enum CodingKeys: String, CodingKey {
case url, name, updateTime
}
2019-10-20 13:40:50 +08:00
func displayingTimeString() -> String {
2019-10-20 13:40:50 +08:00
if updating { return NSLocalizedString("Updating", comment: "") }
let dateFormater = DateFormatter()
dateFormater.dateFormat = "MM-dd HH:mm"
if let date = updateTime {
return dateFormater.string(from: date)
}
return NSLocalizedString("Never", comment: "")
}
}
extension RemoteConfigModel: Equatable {
static func == (lhs: RemoteConfigModel, rhs: RemoteConfigModel) -> Bool {
return lhs.name == rhs.name && lhs.url == rhs.url
}
}