mirror of
https://github.com/openMF/mobile-wallet.git
synced 2026-02-06 13:56:52 +00:00
history filter
This commit is contained in:
parent
55eeb24457
commit
ace0f326bc
@ -252,8 +252,7 @@ fun HistoryScreenBottomSheet(
|
||||
text = stringResource(Res.string.feature_history_filter_clear_all),
|
||||
color = KptTheme.colorScheme.primary,
|
||||
modifier = Modifier.clickable {
|
||||
onAction(HistoryAction.SetFilter(TransactionType.OTHER))
|
||||
onAction(HistoryAction.OnFilterClick)
|
||||
onAction(HistoryAction.ClearFilters)
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
@ -54,9 +54,20 @@ class HistoryViewModel(
|
||||
is HistoryAction.OnApplyFilterClick -> handleApplyFilterClick()
|
||||
|
||||
is HistoryAction.SetSelectedAccount -> handleSetSelectedAccount(action.account)
|
||||
|
||||
HistoryAction.ClearFilters -> handleClearFilters()
|
||||
}
|
||||
}
|
||||
|
||||
private fun handleClearFilters() {
|
||||
mutableStateFlow.update {
|
||||
it.copy(
|
||||
currentSelectedTransactionType = TransactionType.OTHER,
|
||||
showFilter = false,
|
||||
)
|
||||
}
|
||||
applyFilter(state.transactions)
|
||||
}
|
||||
private fun handleApplyFilterClick() {
|
||||
val transactions = state.transactionsWithAccounts[state.currentSelectedAccount]
|
||||
mutableStateFlow.update {
|
||||
@ -179,6 +190,7 @@ sealed interface HistoryAction {
|
||||
data object OnFilterClick : HistoryAction
|
||||
data class SetSelectedAccount(val account: Account) : HistoryAction
|
||||
data object OnApplyFilterClick : HistoryAction
|
||||
data object ClearFilters : HistoryAction
|
||||
|
||||
sealed interface Internal : HistoryAction {
|
||||
data class TransactionsLoaded(val result: DataState<Map<Account, List<Transaction>>>) : Internal
|
||||
|
||||
Loading…
Reference in New Issue
Block a user