42 lines
833 B
Swift
42 lines
833 B
Swift
import Foundation
|
|
|
|
struct LoginRequest: Codable {
|
|
let email: String
|
|
let password: String
|
|
}
|
|
|
|
struct RegisterRequest: Codable {
|
|
let email: String
|
|
let password: String
|
|
let name: String
|
|
}
|
|
|
|
struct AuthResponse: Codable {
|
|
let token: String?
|
|
let accessToken: String?
|
|
let user: UserInfo
|
|
|
|
var authToken: String { token ?? accessToken ?? "" }
|
|
|
|
enum CodingKeys: String, CodingKey {
|
|
case token
|
|
case accessToken = "access_token"
|
|
case user
|
|
}
|
|
}
|
|
|
|
struct UserInfo: Codable {
|
|
let id: Int
|
|
let email: String
|
|
let name: String?
|
|
let username: String?
|
|
let createdAt: String?
|
|
|
|
var displayName: String { username ?? name ?? email }
|
|
|
|
enum CodingKeys: String, CodingKey {
|
|
case id, email, name, username
|
|
case createdAt = "created_at"
|
|
}
|
|
}
|