ExtensionDetailsState.kt 862 B

12345678910111213141516171819202122232425
  1. package eu.kanade.presentation.browse
  2. import androidx.compose.runtime.Stable
  3. import androidx.compose.runtime.getValue
  4. import androidx.compose.runtime.mutableStateOf
  5. import androidx.compose.runtime.setValue
  6. import eu.kanade.tachiyomi.extension.model.Extension
  7. import eu.kanade.tachiyomi.ui.browse.extension.details.ExtensionSourceItem
  8. @Stable
  9. interface ExtensionDetailsState {
  10. val isLoading: Boolean
  11. val extension: Extension.Installed?
  12. val sources: List<ExtensionSourceItem>
  13. }
  14. fun ExtensionDetailsState(): ExtensionDetailsState {
  15. return ExtensionDetailsStateImpl()
  16. }
  17. class ExtensionDetailsStateImpl : ExtensionDetailsState {
  18. override var isLoading: Boolean by mutableStateOf(true)
  19. override var extension: Extension.Installed? by mutableStateOf(null)
  20. override var sources: List<ExtensionSourceItem> by mutableStateOf(emptyList())
  21. }