IceCubesApp/Packages/Models/Sources/Models/AppAccount.swift
2023-02-27 06:39:07 +01:00

32 lines
641 B
Swift

import Foundation
import SwiftUI
public struct AppAccount: Codable, Identifiable, Hashable {
public let server: String
public var accountName: String?
public let oauthToken: OauthToken?
public var key: String {
if let oauthToken {
return "\(server):\(oauthToken.createdAt)"
} else {
return "\(server):anonymous"
}
}
public var id: String {
key
}
public init(server: String,
accountName: String?,
oauthToken: OauthToken? = nil)
{
self.server = server
self.accountName = accountName
self.oauthToken = oauthToken
}
}
extension AppAccount: Sendable {}