package com.aiosman.riderpro

import android.content.Context
import android.content.SharedPreferences
import com.google.android.gms.auth.api.signin.GoogleSignInOptions

/**
 * 持久化本地数据
 */
object AppStore {
    private const val STORE_VERSION = 1
    private const val PREFS_NAME = "app_prefs_$STORE_VERSION"
    var token: String? = null
    var rememberMe: Boolean = false
    private lateinit var sharedPreferences: SharedPreferences
    lateinit var googleSignInOptions: GoogleSignInOptions
    fun init(context: Context) {
        sharedPreferences = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE)
        this.loadData()

        val gso = GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
            .requestIdToken("754277015802-uarf8br8k8gkpbj0t9g65bvkvit630q5.apps.googleusercontent.com") // Replace with your server's client ID
            .requestEmail()
            .build()
        googleSignInOptions = gso
    }

    suspend fun saveData() {
        // shared preferences
        sharedPreferences.edit().apply {
            putString("token", token)
            putBoolean("rememberMe", rememberMe)
        }.apply()
    }

    fun loadData() {
        // shared preferences
        token = sharedPreferences.getString("token", null)
        rememberMe = sharedPreferences.getBoolean("rememberMe", false)
    }
}