You've already forked RekomenciMobile
feat: check fill profile on startup app
This commit is contained in:
@@ -8,22 +8,15 @@ import android.util.Log
|
||||
import androidx.activity.ComponentActivity
|
||||
import androidx.activity.compose.setContent
|
||||
import androidx.activity.enableEdgeToEdge
|
||||
import androidx.compose.foundation.layout.Box
|
||||
import androidx.compose.foundation.layout.fillMaxSize
|
||||
import androidx.compose.foundation.text.selection.SelectionContainer
|
||||
import androidx.compose.material3.Text
|
||||
import androidx.compose.runtime.LaunchedEffect
|
||||
import androidx.compose.runtime.collectAsState
|
||||
import androidx.compose.runtime.getValue
|
||||
import androidx.compose.runtime.mutableStateOf
|
||||
import androidx.compose.runtime.remember
|
||||
import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.core.content.ContextCompat
|
||||
import androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen
|
||||
import androidx.core.view.WindowCompat
|
||||
import com.google.firebase.messaging.FirebaseMessaging
|
||||
import com.prodhack.moscow2025.domain.usecase.auth.CheckSessionUseCase
|
||||
import com.prodhack.moscow2025.domain.usecase.auth.SessionState
|
||||
import com.prodhack.moscow2025.presentation.navigation.AppDestination
|
||||
import com.prodhack.moscow2025.presentation.navigation.TTasksApp
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
@@ -48,13 +41,17 @@ class MainActivity : ComponentActivity() {
|
||||
WindowCompat.setDecorFitsSystemWindows(window, false)
|
||||
|
||||
runBlocking {
|
||||
val isAuthorized = try {
|
||||
val sessionState = try {
|
||||
checkSessionUseCase()
|
||||
} catch (e: Exception) {
|
||||
false
|
||||
SessionState.NotAuthorized
|
||||
}
|
||||
sessionDestinationState.value =
|
||||
if (isAuthorized) AppDestination.Main else AppDestination.Login
|
||||
when (sessionState) {
|
||||
SessionState.NotAuthorized -> AppDestination.Login
|
||||
SessionState.NotFilledProfile -> AppDestination.FillProfile
|
||||
SessionState.FilledAndAuthorized -> AppDestination.Main
|
||||
}
|
||||
|
||||
stateLoaded = true
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user