//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) |