Simplify the usage of basic dialogs

This commit is contained in:
David Perez 2024-11-20 16:28:49 -06:00
parent 96bd25eae5
commit 2c46a8ff79
No known key found for this signature in database
GPG key ID: 3E29BD8B1BF090AC
30 changed files with 104 additions and 220 deletions

View file

@ -34,13 +34,11 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle
import com.x8bit.bitwarden.R import com.x8bit.bitwarden.R
import com.x8bit.bitwarden.ui.auth.feature.accountsetup.handlers.rememberSetupAutoFillHandler import com.x8bit.bitwarden.ui.auth.feature.accountsetup.handlers.rememberSetupAutoFillHandler
import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect
import com.x8bit.bitwarden.ui.platform.base.util.asText
import com.x8bit.bitwarden.ui.platform.base.util.standardHorizontalMargin import com.x8bit.bitwarden.ui.platform.base.util.standardHorizontalMargin
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog
import com.x8bit.bitwarden.ui.platform.components.image.BitwardenGifImage import com.x8bit.bitwarden.ui.platform.components.image.BitwardenGifImage
@ -80,10 +78,8 @@ fun SetupAutoFillScreen(
when (state.dialogState) { when (state.dialogState) {
is SetupAutoFillDialogState.AutoFillFallbackDialog -> { is SetupAutoFillDialogState.AutoFillFallbackDialog -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = null,
title = null, message = stringResource(id = R.string.bitwarden_autofill_go_to_settings),
message = R.string.bitwarden_autofill_go_to_settings.asText(),
),
onDismissRequest = handler.onDismissDialog, onDismissRequest = handler.onDismissDialog,
) )
} }

View file

@ -43,7 +43,6 @@ import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog
@ -328,10 +327,8 @@ private fun SetupUnlockScreenDialogs(
) )
is SetupUnlockState.DialogState.Error -> BitwardenBasicDialog( is SetupUnlockState.DialogState.Error -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = onDismissRequest, onDismissRequest = onDismissRequest,
) )

View file

@ -27,10 +27,8 @@ import androidx.hilt.navigation.compose.hiltViewModel
import androidx.lifecycle.compose.collectAsStateWithLifecycle import androidx.lifecycle.compose.collectAsStateWithLifecycle
import com.x8bit.bitwarden.R import com.x8bit.bitwarden.R
import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect
import com.x8bit.bitwarden.ui.platform.base.util.asText
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState
@ -80,10 +78,11 @@ fun EnterpriseSignOnScreen(
when (val dialog = state.dialogState) { when (val dialog = state.dialogState) {
is EnterpriseSignOnState.DialogState.Error -> { is EnterpriseSignOnState.DialogState.Error -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialog
title = dialog.title ?: R.string.an_error_has_occurred.asText(), .title
message = dialog.message, ?.invoke()
), ?: stringResource(id = R.string.an_error_has_occurred),
message = dialog.message(),
onDismissRequest = remember(viewModel) { onDismissRequest = remember(viewModel) {
{ viewModel.trySendAction(EnterpriseSignOnAction.DialogDismiss) } { viewModel.trySendAction(EnterpriseSignOnAction.DialogDismiss) }
}, },

View file

@ -28,10 +28,8 @@ import androidx.hilt.navigation.compose.hiltViewModel
import androidx.lifecycle.compose.collectAsStateWithLifecycle import androidx.lifecycle.compose.collectAsStateWithLifecycle
import com.x8bit.bitwarden.R import com.x8bit.bitwarden.R
import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect
import com.x8bit.bitwarden.ui.platform.base.util.asText
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.field.BitwardenTextField import com.x8bit.bitwarden.ui.platform.components.field.BitwardenTextField
import com.x8bit.bitwarden.ui.platform.components.header.BitwardenListHeaderText import com.x8bit.bitwarden.ui.platform.components.header.BitwardenListHeaderText
@ -59,20 +57,15 @@ fun EnvironmentScreen(
} }
} }
BitwardenBasicDialog( if (state.shouldShowErrorDialog) {
visibilityState = if (state.shouldShowErrorDialog) { BitwardenBasicDialog(
BasicDialogState.Shown( title = stringResource(id = R.string.an_error_has_occurred),
title = R.string.an_error_has_occurred.asText(), message = stringResource(id = R.string.environment_page_urls_error),
message = R.string.environment_page_urls_error.asText(), onDismissRequest = remember(viewModel) {
) { viewModel.trySendAction(EnvironmentAction.ErrorDialogDismiss) }
} else { },
BasicDialogState.Hidden )
}, }
onDismissRequest = remember(viewModel) {
{ viewModel.trySendAction(EnvironmentAction.ErrorDialogDismiss) }
},
)
val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior(rememberTopAppBarState()) val scrollBehavior = TopAppBarDefaults.pinnedScrollBehavior(rememberTopAppBarState())
BitwardenScaffold( BitwardenScaffold(
modifier = Modifier modifier = Modifier

View file

@ -39,13 +39,11 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle
import com.x8bit.bitwarden.R import com.x8bit.bitwarden.R
import com.x8bit.bitwarden.data.platform.repository.model.Environment import com.x8bit.bitwarden.data.platform.repository.model.Environment
import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect
import com.x8bit.bitwarden.ui.platform.base.util.asText
import com.x8bit.bitwarden.ui.platform.components.account.BitwardenAccountSwitcher import com.x8bit.bitwarden.ui.platform.components.account.BitwardenAccountSwitcher
import com.x8bit.bitwarden.ui.platform.components.account.BitwardenPlaceholderAccountActionItem import com.x8bit.bitwarden.ui.platform.components.account.BitwardenPlaceholderAccountActionItem
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog
import com.x8bit.bitwarden.ui.platform.components.dropdown.EnvironmentSelector import com.x8bit.bitwarden.ui.platform.components.dropdown.EnvironmentSelector
@ -111,10 +109,8 @@ fun LandingScreen(
is LandingState.DialogState.Error -> { is LandingState.DialogState.Error -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = stringResource(id = R.string.an_error_has_occurred),
title = R.string.an_error_has_occurred.asText(), message = dialog.message(),
message = dialog.message,
),
onDismissRequest = remember(viewModel) { onDismissRequest = remember(viewModel) {
{ viewModel.trySendAction(LandingAction.DialogDismiss) } { viewModel.trySendAction(LandingAction.DialogDismiss) }
}, },

View file

@ -42,7 +42,6 @@ import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflo
import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState
@ -202,10 +201,8 @@ private fun LoginDialogs(
) { ) {
when (dialogState) { when (dialogState) {
is LoginState.DialogState.Error -> BitwardenBasicDialog( is LoginState.DialogState.Error -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title?.invoke(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = onDismissRequest, onDismissRequest = onDismissRequest,
) )

View file

@ -36,7 +36,6 @@ import com.x8bit.bitwarden.R
import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState
@ -257,10 +256,8 @@ private fun LoginWithDeviceDialogs(
) )
is LoginWithDeviceState.DialogState.Error -> BitwardenBasicDialog( is LoginWithDeviceState.DialogState.Error -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = state.title?.invoke(),
title = state.title, message = state.message(),
message = state.message,
),
onDismissRequest = onDismissDialog, onDismissRequest = onDismissDialog,
) )

View file

@ -21,10 +21,8 @@ import androidx.hilt.navigation.compose.hiltViewModel
import androidx.lifecycle.compose.collectAsStateWithLifecycle import androidx.lifecycle.compose.collectAsStateWithLifecycle
import com.x8bit.bitwarden.R import com.x8bit.bitwarden.R
import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect
import com.x8bit.bitwarden.ui.platform.base.util.asText
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState
@ -53,10 +51,8 @@ fun MasterPasswordHintScreen(
when (val dialogState = state.dialog) { when (val dialogState = state.dialog) {
is MasterPasswordHintState.DialogState.PasswordHintSent -> { is MasterPasswordHintState.DialogState.PasswordHintSent -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = stringResource(id = R.string.password_hint),
title = R.string.password_hint.asText(), message = stringResource(id = R.string.password_hint_alert),
message = R.string.password_hint_alert.asText(),
),
onDismissRequest = remember(viewModel) { onDismissRequest = remember(viewModel) {
{ viewModel.trySendAction(MasterPasswordHintAction.DismissDialog) } { viewModel.trySendAction(MasterPasswordHintAction.DismissDialog) }
}, },
@ -73,10 +69,11 @@ fun MasterPasswordHintScreen(
is MasterPasswordHintState.DialogState.Error -> { is MasterPasswordHintState.DialogState.Error -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState
title = dialogState.title ?: R.string.an_error_has_occurred.asText(), .title
message = dialogState.message, ?.invoke()
), ?: stringResource(id = R.string.an_error_has_occurred),
message = dialogState.message(),
onDismissRequest = remember(viewModel) { onDismissRequest = remember(viewModel) {
{ viewModel.trySendAction(MasterPasswordHintAction.DismissDialog) } { viewModel.trySendAction(MasterPasswordHintAction.DismissDialog) }
}, },

View file

@ -28,7 +28,6 @@ import com.x8bit.bitwarden.ui.platform.base.util.asText
import com.x8bit.bitwarden.ui.platform.base.util.standardHorizontalMargin import com.x8bit.bitwarden.ui.platform.base.util.standardHorizontalMargin
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState
@ -137,10 +136,8 @@ private fun RemovePasswordDialogs(
when (dialogState) { when (dialogState) {
is RemovePasswordState.DialogState.Error -> { is RemovePasswordState.DialogState.Error -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title?.invoke(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = onDismissRequest, onDismissRequest = onDismissRequest,
) )
} }

View file

@ -32,7 +32,6 @@ import com.x8bit.bitwarden.data.auth.datasource.disk.model.ForcePasswordResetRea
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton
import com.x8bit.bitwarden.ui.platform.components.card.BitwardenInfoCalloutCard import com.x8bit.bitwarden.ui.platform.components.card.BitwardenInfoCalloutCard
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog
@ -55,10 +54,8 @@ fun ResetPasswordScreen(
when (val dialog = state.dialogState) { when (val dialog = state.dialogState) {
is ResetPasswordState.DialogState.Error -> { is ResetPasswordState.DialogState.Error -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialog.title?.invoke(),
title = dialog.title, message = dialog.message(),
message = dialog.message,
),
onDismissRequest = remember(viewModel) { onDismissRequest = remember(viewModel) {
{ viewModel.trySendAction(ResetPasswordAction.DialogDismiss) } { viewModel.trySendAction(ResetPasswordAction.DialogDismiss) }
}, },

View file

@ -31,7 +31,6 @@ import com.x8bit.bitwarden.R
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton
import com.x8bit.bitwarden.ui.platform.components.card.BitwardenInfoCalloutCard import com.x8bit.bitwarden.ui.platform.components.card.BitwardenInfoCalloutCard
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState
@ -191,10 +190,8 @@ private fun SetPasswordDialogs(
when (dialogState) { when (dialogState) {
is SetPasswordState.DialogState.Error -> { is SetPasswordState.DialogState.Error -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title?.invoke(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = onDismissRequest, onDismissRequest = onDismissRequest,
) )
} }

View file

@ -34,7 +34,6 @@ import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState
@ -215,10 +214,8 @@ private fun TrustedDeviceDialogs(
) { ) {
when (dialogState) { when (dialogState) {
is TrustedDeviceState.DialogState.Error -> BitwardenBasicDialog( is TrustedDeviceState.DialogState.Error -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title?.invoke(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = handlers.onDismissDialog, onDismissRequest = handlers.onDismissDialog,
) )

View file

@ -41,13 +41,11 @@ import com.x8bit.bitwarden.ui.auth.feature.twofactorlogin.util.description
import com.x8bit.bitwarden.ui.auth.feature.twofactorlogin.util.title import com.x8bit.bitwarden.ui.auth.feature.twofactorlogin.util.title
import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect
import com.x8bit.bitwarden.ui.platform.base.util.LivecycleEventEffect import com.x8bit.bitwarden.ui.platform.base.util.LivecycleEventEffect
import com.x8bit.bitwarden.ui.platform.base.util.asText
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem
import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState
@ -187,10 +185,11 @@ private fun TwoFactorLoginDialogs(
) { ) {
when (dialogState) { when (dialogState) {
is TwoFactorLoginState.DialogState.Error -> BitwardenBasicDialog( is TwoFactorLoginState.DialogState.Error -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState
title = dialogState.title ?: R.string.an_error_has_occurred.asText(), .title
message = dialogState.message, ?.invoke()
), ?: stringResource(R.string.an_error_has_occurred),
message = dialogState.message(),
onDismissRequest = onDismissRequest, onDismissRequest = onDismissRequest,
) )

View file

@ -55,7 +55,6 @@ import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflo
import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLogoutConfirmationDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLogoutConfirmationDialog
@ -142,10 +141,8 @@ fun VaultUnlockScreen(
// Dynamic dialogs // Dynamic dialogs
when (val dialog = state.dialog) { when (val dialog = state.dialog) {
is VaultUnlockState.VaultUnlockDialog.Error -> BitwardenBasicDialog( is VaultUnlockState.VaultUnlockDialog.Error -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialog.title(),
title = dialog.title, message = dialog.message(),
message = dialog.message,
),
onDismissRequest = remember(viewModel) { onDismissRequest = remember(viewModel) {
{ viewModel.trySendAction(VaultUnlockAction.DismissDialog) } { viewModel.trySendAction(VaultUnlockAction.DismissDialog) }
}, },
@ -157,10 +154,8 @@ fun VaultUnlockScreen(
VaultUnlockState.VaultUnlockDialog.BiometricsNoLongerSupported -> { VaultUnlockState.VaultUnlockDialog.BiometricsNoLongerSupported -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = stringResource(id = R.string.biometrics_no_longer_supported_title),
title = R.string.biometrics_no_longer_supported_title.asText(), message = stringResource(id = R.string.biometrics_no_longer_supported),
message = R.string.biometrics_no_longer_supported.asText(),
),
onDismissRequest = remember { onDismissRequest = remember {
{ {
viewModel.trySendAction( viewModel.trySendAction(

View file

@ -25,7 +25,6 @@ import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenSearchTopAppBa
import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState
@ -152,10 +151,8 @@ private fun SearchDialogs(
) { ) {
when (dialogState) { when (dialogState) {
is SearchState.DialogState.Error -> BitwardenBasicDialog( is SearchState.DialogState.Error -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title?.invoke(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = onDismissRequest, onDismissRequest = onDismissRequest,
) )

View file

@ -43,7 +43,6 @@ import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton
import com.x8bit.bitwarden.ui.platform.components.card.BitwardenActionCard import com.x8bit.bitwarden.ui.platform.components.card.BitwardenActionCard
import com.x8bit.bitwarden.ui.platform.components.card.BitwardenInfoCalloutCard import com.x8bit.bitwarden.ui.platform.components.card.BitwardenInfoCalloutCard
import com.x8bit.bitwarden.ui.platform.components.card.actionCardExitAnimation import com.x8bit.bitwarden.ui.platform.components.card.actionCardExitAnimation
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLogoutConfirmationDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLogoutConfirmationDialog
@ -423,10 +422,8 @@ private fun AccountSecurityDialogs(
) )
is AccountSecurityDialog.Error -> BitwardenBasicDialog( is AccountSecurityDialog.Error -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = onDismissRequest, onDismissRequest = onDismissRequest,
) )
@ -593,10 +590,8 @@ private fun SessionCustomTimeoutRow(
if (shouldShowViolatesPoliciesDialog) { if (shouldShowViolatesPoliciesDialog) {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = stringResource(id = R.string.warning),
title = R.string.warning.asText(), message = stringResource(id = R.string.vault_timeout_to_large),
message = R.string.vault_timeout_to_large.asText(),
),
onDismissRequest = { onDismissRequest = {
shouldShowViolatesPoliciesDialog = false shouldShowViolatesPoliciesDialog = false
vaultTimeoutPolicyMinutes?.let { vaultTimeoutPolicyMinutes?.let {

View file

@ -35,7 +35,6 @@ import com.x8bit.bitwarden.ui.platform.base.util.asText
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledErrorButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledErrorButton
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedErrorButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedErrorButton
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenMasterPasswordDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenMasterPasswordDialog
@ -74,20 +73,16 @@ fun DeleteAccountScreen(
when (val dialog = state.dialog) { when (val dialog = state.dialog) {
DeleteAccountState.DeleteAccountDialog.DeleteSuccess -> BitwardenBasicDialog( DeleteAccountState.DeleteAccountDialog.DeleteSuccess -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = null,
title = null, message = stringResource(id = R.string.your_account_has_been_permanently_deleted),
message = R.string.your_account_has_been_permanently_deleted.asText(),
),
onDismissRequest = remember(viewModel) { onDismissRequest = remember(viewModel) {
{ viewModel.trySendAction(DeleteAccountAction.AccountDeletionConfirm) } { viewModel.trySendAction(DeleteAccountAction.AccountDeletionConfirm) }
}, },
) )
is DeleteAccountState.DeleteAccountDialog.Error -> BitwardenBasicDialog( is DeleteAccountState.DeleteAccountDialog.Error -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = stringResource(id = R.string.an_error_has_occurred),
title = R.string.an_error_has_occurred.asText(), message = dialog.message(),
message = dialog.message,
),
onDismissRequest = remember(viewModel) { onDismissRequest = remember(viewModel) {
{ viewModel.trySendAction(DeleteAccountAction.DismissDialog) } { viewModel.trySendAction(DeleteAccountAction.DismissDialog) }
}, },

View file

@ -33,7 +33,6 @@ import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledErrorButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledErrorButton
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState
@ -103,20 +102,16 @@ private fun DeleteAccountConfirmationDialogs(
when (dialogState) { when (dialogState) {
is DeleteAccountConfirmationState.DeleteAccountConfirmationDialog.DeleteSuccess -> { is DeleteAccountConfirmationState.DeleteAccountConfirmationDialog.DeleteSuccess -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = null,
title = null, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = onDeleteAccountAcknowledge, onDismissRequest = onDeleteAccountAcknowledge,
) )
} }
is DeleteAccountConfirmationState.DeleteAccountConfirmationDialog.Error -> { is DeleteAccountConfirmationState.DeleteAccountConfirmationDialog.Error -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = onDismissDialog, onDismissRequest = onDismissDialog,
) )
} }

View file

@ -36,7 +36,6 @@ import com.x8bit.bitwarden.ui.platform.components.button.BitwardenFilledButton
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog
import com.x8bit.bitwarden.ui.platform.components.scaffold.BitwardenScaffold import com.x8bit.bitwarden.ui.platform.components.scaffold.BitwardenScaffold
@ -295,10 +294,8 @@ private fun LoginApprovalDialogs(
) )
is LoginApprovalState.DialogState.Error -> BitwardenBasicDialog( is LoginApprovalState.DialogState.Error -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = state.title?.invoke(),
title = state.title, message = state.message(),
message = state.message,
),
onDismissRequest = onDismissError, onDismissRequest = onDismissError,
) )

View file

@ -31,13 +31,11 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle
import com.x8bit.bitwarden.R import com.x8bit.bitwarden.R
import com.x8bit.bitwarden.data.platform.repository.model.UriMatchType import com.x8bit.bitwarden.data.platform.repository.model.UriMatchType
import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect
import com.x8bit.bitwarden.ui.platform.base.util.asText
import com.x8bit.bitwarden.ui.platform.base.util.standardHorizontalMargin import com.x8bit.bitwarden.ui.platform.base.util.standardHorizontalMargin
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.badge.NotificationBadge import com.x8bit.bitwarden.ui.platform.components.badge.NotificationBadge
import com.x8bit.bitwarden.ui.platform.components.card.BitwardenActionCard import com.x8bit.bitwarden.ui.platform.components.card.BitwardenActionCard
import com.x8bit.bitwarden.ui.platform.components.card.actionCardExitAnimation import com.x8bit.bitwarden.ui.platform.components.card.actionCardExitAnimation
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenSelectionDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenSelectionDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog
@ -102,10 +100,8 @@ fun AutoFillScreen(
if (shouldShowAutofillFallbackDialog) { if (shouldShowAutofillFallbackDialog) {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = null,
title = null, message = stringResource(id = R.string.bitwarden_autofill_go_to_settings),
message = R.string.bitwarden_autofill_go_to_settings.asText(),
),
onDismissRequest = { shouldShowAutofillFallbackDialog = false }, onDismissRequest = { shouldShowAutofillFallbackDialog = false },
) )
} }

View file

@ -38,7 +38,6 @@ import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenOutlinedButton
import com.x8bit.bitwarden.ui.platform.components.card.BitwardenInfoCalloutCard import com.x8bit.bitwarden.ui.platform.components.card.BitwardenInfoCalloutCard
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog
@ -123,10 +122,8 @@ fun ExportVaultScreen(
when (val dialog = state.dialogState) { when (val dialog = state.dialogState) {
is ExportVaultState.DialogState.Error -> { is ExportVaultState.DialogState.Error -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialog.title?.invoke(),
title = dialog.title, message = dialog.message(),
message = dialog.message,
),
onDismissRequest = remember(viewModel) { onDismissRequest = remember(viewModel) {
{ viewModel.trySendAction(ExportVaultAction.DialogDismiss) } { viewModel.trySendAction(ExportVaultAction.DialogDismiss) }
}, },

View file

@ -24,14 +24,12 @@ import androidx.hilt.navigation.compose.hiltViewModel
import androidx.lifecycle.compose.collectAsStateWithLifecycle import androidx.lifecycle.compose.collectAsStateWithLifecycle
import com.x8bit.bitwarden.R import com.x8bit.bitwarden.R
import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect
import com.x8bit.bitwarden.ui.platform.base.util.asText
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem
import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog
@ -172,10 +170,8 @@ private fun FolderAddEditItemDialogs(
} }
is FolderAddEditState.DialogState.Error -> BitwardenBasicDialog( is FolderAddEditState.DialogState.Error -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = stringResource(id = R.string.an_error_has_occurred),
title = R.string.an_error_has_occurred.asText(), message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = onDismissRequest, onDismissRequest = onDismissRequest,
) )

View file

@ -28,7 +28,6 @@ import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenSearchA
import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItemData
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState
@ -200,10 +199,8 @@ private fun SendDialogs(
) { ) {
when (dialogState) { when (dialogState) {
is SendState.DialogState.Error -> BitwardenBasicDialog( is SendState.DialogState.Error -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title?.invoke(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = onDismissRequest, onDismissRequest = onDismissRequest,
) )

View file

@ -31,7 +31,6 @@ import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItem
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenTwoButtonDialog
@ -254,10 +253,8 @@ private fun AddSendDialogs(
) { ) {
when (dialogState) { when (dialogState) {
is AddSendState.DialogState.Error -> BitwardenBasicDialog( is AddSendState.DialogState.Error -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title?.invoke(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = onDismissRequest, onDismissRequest = onDismissRequest,
) )

View file

@ -23,7 +23,6 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle
import com.x8bit.bitwarden.R import com.x8bit.bitwarden.R
import com.x8bit.bitwarden.ui.autofill.fido2.manager.Fido2CompletionManager import com.x8bit.bitwarden.ui.autofill.fido2.manager.Fido2CompletionManager
import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect
import com.x8bit.bitwarden.ui.platform.base.util.asText
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon
import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem import com.x8bit.bitwarden.ui.platform.components.appbar.action.BitwardenOverflowActionItem
@ -31,7 +30,6 @@ import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItem
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenMasterPasswordDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenMasterPasswordDialog
@ -386,30 +384,24 @@ private fun VaultAddEditItemDialogs(
is VaultAddEditState.DialogState.Generic -> { is VaultAddEditState.DialogState.Generic -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title?.invoke(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = onDismissRequest, onDismissRequest = onDismissRequest,
) )
} }
is VaultAddEditState.DialogState.InitialAutofillPrompt -> { is VaultAddEditState.DialogState.InitialAutofillPrompt -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = stringResource(id = R.string.bitwarden_autofill_service),
title = R.string.bitwarden_autofill_service.asText(), message = stringResource(id = R.string.bitwarden_autofill_service_alert2),
message = R.string.bitwarden_autofill_service_alert2.asText(),
),
onDismissRequest = onAutofillDismissRequest, onDismissRequest = onAutofillDismissRequest,
) )
} }
is VaultAddEditState.DialogState.Fido2Error -> { is VaultAddEditState.DialogState.Fido2Error -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = stringResource(id = R.string.an_error_has_occurred),
title = R.string.an_error_has_occurred.asText(), message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = onFido2ErrorDismiss, onDismissRequest = onFido2ErrorDismiss,
) )
} }
@ -430,10 +422,8 @@ private fun VaultAddEditItemDialogs(
is VaultAddEditState.DialogState.Fido2MasterPasswordError -> { is VaultAddEditState.DialogState.Fido2MasterPasswordError -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = null,
title = null, message = stringResource(id = R.string.invalid_master_password),
message = R.string.invalid_master_password.asText(),
),
onDismissRequest = onRetryFido2PasswordVerification, onDismissRequest = onRetryFido2PasswordVerification,
) )
} }
@ -447,10 +437,8 @@ private fun VaultAddEditItemDialogs(
is VaultAddEditState.DialogState.Fido2PinError -> { is VaultAddEditState.DialogState.Fido2PinError -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = null,
title = null, message = stringResource(id = R.string.invalid_pin),
message = R.string.invalid_pin.asText(),
),
onDismissRequest = onRetryFido2PinVerification, onDismissRequest = onRetryFido2PinVerification,
) )
} }
@ -465,9 +453,10 @@ private fun VaultAddEditItemDialogs(
is VaultAddEditState.DialogState.Fido2PinSetUpError -> { is VaultAddEditState.DialogState.Fido2PinSetUpError -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = null,
title = null, message = stringResource(
message = R.string.validation_field_required.asText(R.string.pin.asText()), id = R.string.validation_field_required,
stringResource(id = R.string.pin),
), ),
onDismissRequest = onRetryPinSetUpFido2Verification, onDismissRequest = onRetryPinSetUpFido2Verification,
) )

View file

@ -22,7 +22,6 @@ import com.x8bit.bitwarden.ui.platform.components.appbar.NavigationIcon
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState
@ -124,10 +123,8 @@ private fun AttachmentsDialogs(
) { ) {
when (dialogState) { when (dialogState) {
is AttachmentsState.DialogState.Error -> BitwardenBasicDialog( is AttachmentsState.DialogState.Error -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title?.invoke(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = onDismissRequest, onDismissRequest = onDismissRequest,
) )

View file

@ -30,7 +30,6 @@ import com.x8bit.bitwarden.ui.platform.components.appbar.action.OverflowMenuItem
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenMasterPasswordDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenMasterPasswordDialog
@ -291,10 +290,8 @@ private fun VaultItemDialogs(
) { ) {
when (dialog) { when (dialog) {
is VaultItemState.DialogState.Generic -> BitwardenBasicDialog( is VaultItemState.DialogState.Generic -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = null,
title = null, message = dialog.message(),
message = dialog.message,
),
onDismissRequest = onDismissRequest, onDismissRequest = onDismissRequest,
) )

View file

@ -306,10 +306,8 @@ private fun VaultItemListingDialogs(
) )
is VaultItemListingState.DialogState.Fido2OperationFail -> BitwardenBasicDialog( is VaultItemListingState.DialogState.Fido2OperationFail -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = onDismissFido2ErrorDialog, onDismissRequest = onDismissFido2ErrorDialog,
) )
@ -334,10 +332,8 @@ private fun VaultItemListingDialogs(
is VaultItemListingState.DialogState.Fido2MasterPasswordError -> { is VaultItemListingState.DialogState.Fido2MasterPasswordError -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title?.invoke(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = { onDismissRequest = {
onRetryFido2PasswordVerification(dialogState.selectedCipherId) onRetryFido2PasswordVerification(dialogState.selectedCipherId)
}, },
@ -358,10 +354,8 @@ private fun VaultItemListingDialogs(
is VaultItemListingState.DialogState.Fido2PinError -> { is VaultItemListingState.DialogState.Fido2PinError -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title?.invoke(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = { onDismissRequest = {
onRetryFido2PinVerification(dialogState.selectedCipherId) onRetryFido2PinVerification(dialogState.selectedCipherId)
}, },
@ -380,10 +374,8 @@ private fun VaultItemListingDialogs(
is VaultItemListingState.DialogState.Fido2PinSetUpError -> { is VaultItemListingState.DialogState.Fido2PinSetUpError -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title?.invoke(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = { onDismissRequest = {
onRetryPinSetUpFido2Verification(dialogState.selectedCipherId) onRetryPinSetUpFido2Verification(dialogState.selectedCipherId)
}, },

View file

@ -18,12 +18,10 @@ import androidx.hilt.navigation.compose.hiltViewModel
import androidx.lifecycle.compose.collectAsStateWithLifecycle import androidx.lifecycle.compose.collectAsStateWithLifecycle
import com.x8bit.bitwarden.R import com.x8bit.bitwarden.R
import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect import com.x8bit.bitwarden.ui.platform.base.util.EventsEffect
import com.x8bit.bitwarden.ui.platform.base.util.asText
import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar import com.x8bit.bitwarden.ui.platform.components.appbar.BitwardenTopAppBar
import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton import com.x8bit.bitwarden.ui.platform.components.button.BitwardenTextButton
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState import com.x8bit.bitwarden.ui.platform.components.dialog.LoadingDialogState
@ -85,10 +83,8 @@ private fun VaultMoveToOrganizationScaffold(
when (val dialog = state.dialogState) { when (val dialog = state.dialogState) {
is VaultMoveToOrganizationState.DialogState.Error -> { is VaultMoveToOrganizationState.DialogState.Error -> {
BitwardenBasicDialog( BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = stringResource(id = R.string.an_error_has_occurred),
title = R.string.an_error_has_occurred.asText(), message = dialog.message(),
message = dialog.message,
),
onDismissRequest = dismissClick, onDismissRequest = dismissClick,
) )
} }

View file

@ -40,7 +40,6 @@ import com.x8bit.bitwarden.ui.platform.components.card.BitwardenActionCard
import com.x8bit.bitwarden.ui.platform.components.card.actionCardExitAnimation import com.x8bit.bitwarden.ui.platform.components.card.actionCardExitAnimation
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenErrorContent
import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent import com.x8bit.bitwarden.ui.platform.components.content.BitwardenLoadingContent
import com.x8bit.bitwarden.ui.platform.components.dialog.BasicDialogState
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenBasicDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenLoadingDialog
import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenMasterPasswordDialog import com.x8bit.bitwarden.ui.platform.components.dialog.BitwardenMasterPasswordDialog
@ -358,10 +357,8 @@ private fun VaultDialogs(
) )
is VaultState.DialogState.Error -> BitwardenBasicDialog( is VaultState.DialogState.Error -> BitwardenBasicDialog(
visibilityState = BasicDialogState.Shown( title = dialogState.title(),
title = dialogState.title, message = dialogState.message(),
message = dialogState.message,
),
onDismissRequest = vaultHandlers.dialogDismiss, onDismissRequest = vaultHandlers.dialogDismiss,
) )