//MetaPhrase/com.github.diegoberaldin.metaphrase.feature.projects.presentation/ProjectsComponent
ProjectsComponent
[jvm]
interface ProjectsComponent : MviModel<ProjectsComponent.Intent, ProjectsComponent.UiState, ProjectsComponent.Effect>
Projects component contract.
Types
Name | Summary |
---|---|
Config | [jvm] interface Config : Parcelable Available screen configuration. |
Effect | [jvm] interface Effect |
Intent | [jvm] interface Intent |
UiState | [jvm] data class UiState(val activeProject: ProjectModel? = null, val isEditing: Boolean = false, val currentLanguage: LanguageModel? = null) UI state. |
Properties
Name | Summary |
---|---|
childStack | [jvm] abstract val childStack: Value<ChildStack<ProjectsComponent.Config, *>> Navigation stack for the project list/detail. |
effects | [jvm] abstract val effects: SharedFlow<ProjectsComponent.Effect> |
uiState | [jvm] abstract val uiState: StateFlow<ProjectsComponent.UiState> |
Functions
Name | Summary |
---|---|
reduce | [jvm] abstract fun reduce(intent: ProjectsComponent.Intent) |