package com.suno.android.ui.screens.onboarding import androidx.lifecycle.ViewModel import com.suno.android.common_analytics.managers.AnalyticsManager import com.suno.android.common_core_utils.SunoLogger import com.suno.android.utils.resolvers.ScreenVisitResolver import dagger.hilt.android.lifecycle.HiltViewModel import javax.inject.Inject @HiltViewModel class LandingNavGraphVM @Inject constructor( loggerFactory: SunoLogger.Factory, private val analyticsManager: AnalyticsManager, private val screenVisitResolver: ScreenVisitResolver, ) : ViewModel() { private val logger = loggerFactory.create(this@LandingNavGraphVM) fun trackScreen( screenName: String?, ) { screenVisitResolver.resolve(screenName)?.value?.let { analyticsManager.trackScreenVisit(it) } } fun logError( throwable: Throwable, ) { logger.e(throwable) } }