AppMainViewModel

class AppMainViewModel @Inject constructor(val secureSharedPreference: SecureSharedPreference, val syncBroadcaster: SyncBroadcaster, val sharedPreferencesHelper: SharedPreferencesHelper, val configurationRegistry: ConfigurationRegistry, val registerRepository: RegisterRepository, val dispatcherProvider: DispatcherProvider, val workManager: WorkManager, val fhirCarePlanGenerator: FhirCarePlanGenerator, val fhirEngine: FhirEngine) : ViewModel

Constructors

Link copied to clipboard
@Inject
constructor(secureSharedPreference: SecureSharedPreference, syncBroadcaster: SyncBroadcaster, sharedPreferencesHelper: SharedPreferencesHelper, configurationRegistry: ConfigurationRegistry, registerRepository: RegisterRepository, dispatcherProvider: DispatcherProvider, workManager: WorkManager, fhirCarePlanGenerator: FhirCarePlanGenerator, fhirEngine: FhirEngine)

Types

Link copied to clipboard
object Companion

Properties

Functions

Link copied to clipboard
open fun addCloseable(closeable: AutoCloseable)
fun addCloseable(key: String, closeable: AutoCloseable)
Link copied to clipboard
fun calculatePercentageProgress(progressSyncJobStatus: SyncJobStatus.InProgress): Int
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Retrieves the last sync time from shared preferences and returns it in a formatted way. This method handles both cases:

Link copied to clipboard
fun onEvent(event: AppMainEvent)
Link copied to clipboard
suspend fun onQuestionnaireSubmission(questionnaireSubmission: QuestionnaireSubmission)
Link copied to clipboard
fun retrieveAppMainUiState(refreshAll: Boolean = true)
Link copied to clipboard
suspend fun schedulePeriodicJobs(context: Context)
Link copied to clipboard
Link copied to clipboard
fun updateAppDrawerUIState(isSyncUpload: Boolean? = null, currentSyncJobStatus: CurrentSyncJobStatus?, percentageProgress: Int? = null)