//
//  DailyReward.swift
//  lichunWebsocket
//
//  Daily reward system models for 7-day login rewards
//

import Foundation

struct DailyRewardState: Codable {
    let currentStreak: Int
    let lastLoginDate: String
    let nextResetDate: String
    let canClaim: Bool
    let todaysClaimed: Bool
    let rewards: [DayReward]
}

struct DayReward: Identifiable, Codable {
    let id: Int // day number 1-7
    let diamonds: Int
    let energy: Int?
    let money: Int?
    let bonusItem: String?
    var claimed: Bool

    var displayReward: String {
        var parts: [String] = []
        parts.append("\(diamonds)")
        if let energy = energy {
            parts.append("\(energy) Energy")
        }
        if let money = money {
            parts.append("$\(money)")
        }
        if let item = bonusItem {
            parts.append(item)
        }
        return parts.joined(separator: " + ")
    }

    var dayLabel: String {
        "Day \(id)"
    }
}
