Updated on 2026-08-14
This commit is contained in:
commit
2859b520aa
6 changed files with 24 additions and 15 deletions
|
|
@ -37,13 +37,13 @@ internal class TangemPayWalletSelectorModel @Inject constructor(
|
|||
onWalletClick = { params.listener.onWalletSelected(it) },
|
||||
)
|
||||
|
||||
val uiState: StateFlow<WalletSelectorBSContentUM>
|
||||
field = MutableStateFlow(getInitialState())
|
||||
|
||||
init {
|
||||
fetchUserWalletsUM()
|
||||
}
|
||||
|
||||
val uiState: StateFlow<WalletSelectorBSContentUM>
|
||||
field = MutableStateFlow(getInitialState())
|
||||
|
||||
private fun getInitialState(): WalletSelectorBSContentUM {
|
||||
return WalletSelectorBSContentUM(
|
||||
userWallets = persistentListOf(),
|
||||
|
|
|
|||
|
|
@ -210,6 +210,7 @@ internal object WalletScreenPreviewData {
|
|||
isHidingMode = false,
|
||||
showMarketsOnboarding = false,
|
||||
onDismissMarketsTooltip = {},
|
||||
isRedesignEnabled = true,
|
||||
)
|
||||
|
||||
val defaultAccountState = defaultState.copy(
|
||||
|
|
|
|||
|
|
@ -245,6 +245,7 @@ internal object WalletScreenPreviewDataLegacy {
|
|||
isHidingMode = false,
|
||||
showMarketsOnboarding = false,
|
||||
onDismissMarketsTooltip = {},
|
||||
isRedesignEnabled = false,
|
||||
)
|
||||
|
||||
internal val accountScreenState =
|
||||
|
|
|
|||
|
|
@ -139,6 +139,7 @@ internal class WalletStateController @Inject constructor(
|
|||
isHidingMode = false,
|
||||
showMarketsOnboarding = false,
|
||||
onDismissMarketsTooltip = {},
|
||||
isRedesignEnabled = designFeatureToggles.isRedesignEnabled,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
@ -15,4 +15,5 @@ internal data class WalletScreenState(
|
|||
val isHidingMode: Boolean,
|
||||
val showMarketsOnboarding: Boolean,
|
||||
val onDismissMarketsTooltip: () -> Unit,
|
||||
val isRedesignEnabled: Boolean,
|
||||
)
|
||||
|
|
@ -15,17 +15,22 @@ internal abstract class WalletStateTransformer(
|
|||
abstract fun transform(walletUM: WalletUM): WalletUM
|
||||
|
||||
final override fun transform(prevState: WalletScreenState): WalletScreenState {
|
||||
return prevState.copy(
|
||||
wallets = prevState.wallets
|
||||
.map { state ->
|
||||
if (state.walletCardState.id == userWalletId) transform(state) else state
|
||||
}
|
||||
.toImmutableList(),
|
||||
wallets2 = prevState.wallets2
|
||||
.map { walletUM ->
|
||||
if (walletUM.walletsBalanceUM.id == userWalletId) transform(walletUM) else walletUM
|
||||
}
|
||||
.toImmutableList(),
|
||||
)
|
||||
return if (prevState.isRedesignEnabled) {
|
||||
prevState.copy(
|
||||
wallets2 = prevState.wallets2
|
||||
.map { walletUM ->
|
||||
if (walletUM.walletsBalanceUM.id == userWalletId) transform(walletUM) else walletUM
|
||||
}
|
||||
.toImmutableList(),
|
||||
)
|
||||
} else {
|
||||
prevState.copy(
|
||||
wallets = prevState.wallets
|
||||
.map { state ->
|
||||
if (state.walletCardState.id == userWalletId) transform(state) else state
|
||||
}
|
||||
.toImmutableList(),
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue