//
//  ViewModel.swift
//  CheckAnything
//
//  Created by Sean Kim on 5/29/24.
//

import SwiftUI
import Combine

class ViewModel: ObservableObject {
    @UserDefault (key: "isUpdate", defaultValue: "N") var isUpdate
    
    @UserDefault (key: "deviceToken", defaultValue: "") var deviceToken
    @UserDefault (key: "fcmToken", defaultValue: "") var pushFCMToken

    @UserDefault (key: "notiBadge", defaultValue: 0) var notiBadge
    
    
    /*
    @UserDefault (key: "userId", defaultValue: "") var userId
    @UserDefault (key: "noReadAlertList", defaultValue: [""]) var noReadAlertList
    @UserDefault (key: "errorApp", defaultValue: [String:String]()) var errorApp
     */
    
    @Published var showAlert: Bool = false
    
    var alertData: AlertData = .init(body: "")
    
//    func setBadge() async {
//        let center = UNUserNotificationCenter.current()
//        do {
//             try await center.setBadgeCount(noReadAlertList.count)
//        } catch {
//             // Handle any errors.
//        }
//    }

    
    func systemErrorAlert() -> AlertData {
        return .init(body: """
                            시스템 문제가 발생하였습니다.
                            확인 후 다시 실행해주세요.
                            """,
                     button: [ButtonType(name: "확인", role: .none , function: {exit(1)})])
    }
}
