UserAccount.swift 725 B

123456789101112131415161718192021222324252627
  1. import Foundation
  2. /// Data model representing a registered user account in CelestiaTrace.
  3. struct UserAccount: Codable, Identifiable, Equatable {
  4. let id: String
  5. var username: String
  6. var email: String?
  7. var phoneNumber: String?
  8. var avatarURL: String?
  9. var registeredAt: Date
  10. init(
  11. id: String = UUID().uuidString,
  12. username: String,
  13. email: String? = nil,
  14. phoneNumber: String? = nil,
  15. avatarURL: String? = nil,
  16. registeredAt: Date = Date()
  17. ) {
  18. self.id = id
  19. self.username = username
  20. self.email = email
  21. self.phoneNumber = phoneNumber
  22. self.avatarURL = avatarURL
  23. self.registeredAt = registeredAt
  24. }
  25. }