diff --git a/app/src/main/java/com/x8bit/bitwarden/data/auth/repository/util/SyncResponseJsonExtensions.kt b/app/src/main/java/com/x8bit/bitwarden/data/auth/repository/util/SyncResponseJsonExtensions.kt index 22119548c4..10d093978b 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/auth/repository/util/SyncResponseJsonExtensions.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/auth/repository/util/SyncResponseJsonExtensions.kt @@ -40,6 +40,7 @@ val SyncResponseJson.Policy.policyInformation: PolicyInformation? PolicyTypeJson.MAXIMUM_VAULT_TIMEOUT -> { Json.decodeFromStringOrNull(it) } + PolicyTypeJson.SEND_OPTIONS -> { Json.decodeFromStringOrNull(it) } diff --git a/app/src/main/java/com/x8bit/bitwarden/data/autofill/BitwardenAutofillService.kt b/app/src/main/java/com/x8bit/bitwarden/data/autofill/BitwardenAutofillService.kt index 570b7a125d..cf5bba1280 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/autofill/BitwardenAutofillService.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/autofill/BitwardenAutofillService.kt @@ -27,6 +27,7 @@ class BitwardenAutofillService : AutofillService() { */ @Inject lateinit var processor: AutofillProcessor + /** * App information for the autofill feature. */ diff --git a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/service/FolderService.kt b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/service/FolderService.kt index 5e779de4b3..0358cbc398 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/service/FolderService.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/service/FolderService.kt @@ -1,8 +1,8 @@ package com.x8bit.bitwarden.data.vault.datasource.network.service import com.x8bit.bitwarden.data.vault.datasource.network.model.FolderJsonRequest -import com.x8bit.bitwarden.data.vault.datasource.network.model.UpdateFolderResponseJson import com.x8bit.bitwarden.data.vault.datasource.network.model.SyncResponseJson +import com.x8bit.bitwarden.data.vault.datasource.network.model.UpdateFolderResponseJson /** * Provides an API for querying folder endpoints. diff --git a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/service/FolderServiceImpl.kt b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/service/FolderServiceImpl.kt index a04c95050d..572e875009 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/service/FolderServiceImpl.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/vault/datasource/network/service/FolderServiceImpl.kt @@ -4,8 +4,8 @@ import com.x8bit.bitwarden.data.platform.datasource.network.model.toBitwardenErr import com.x8bit.bitwarden.data.platform.datasource.network.util.parseErrorBodyOrNull import com.x8bit.bitwarden.data.vault.datasource.network.api.FoldersApi import com.x8bit.bitwarden.data.vault.datasource.network.model.FolderJsonRequest -import com.x8bit.bitwarden.data.vault.datasource.network.model.UpdateFolderResponseJson import com.x8bit.bitwarden.data.vault.datasource.network.model.SyncResponseJson +import com.x8bit.bitwarden.data.vault.datasource.network.model.UpdateFolderResponseJson import kotlinx.serialization.json.Json class FolderServiceImpl( diff --git a/app/src/main/java/com/x8bit/bitwarden/data/vault/repository/VaultRepository.kt b/app/src/main/java/com/x8bit/bitwarden/data/vault/repository/VaultRepository.kt index b4995bad16..84f80edea5 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/vault/repository/VaultRepository.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/vault/repository/VaultRepository.kt @@ -22,8 +22,8 @@ import com.x8bit.bitwarden.data.vault.repository.model.DeleteFolderResult import com.x8bit.bitwarden.data.vault.repository.model.DeleteSendResult import com.x8bit.bitwarden.data.vault.repository.model.DomainsData import com.x8bit.bitwarden.data.vault.repository.model.DownloadAttachmentResult -import com.x8bit.bitwarden.data.vault.repository.model.GenerateTotpResult import com.x8bit.bitwarden.data.vault.repository.model.ExportVaultDataResult +import com.x8bit.bitwarden.data.vault.repository.model.GenerateTotpResult import com.x8bit.bitwarden.data.vault.repository.model.RemovePasswordSendResult import com.x8bit.bitwarden.data.vault.repository.model.RestoreCipherResult import com.x8bit.bitwarden.data.vault.repository.model.SendData diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/auth/feature/masterpasswordhint/MasterPasswordHintViewModel.kt b/app/src/main/java/com/x8bit/bitwarden/ui/auth/feature/masterpasswordhint/MasterPasswordHintViewModel.kt index 8e6b56d7f3..70a0863d87 100644 --- a/app/src/main/java/com/x8bit/bitwarden/ui/auth/feature/masterpasswordhint/MasterPasswordHintViewModel.kt +++ b/app/src/main/java/com/x8bit/bitwarden/ui/auth/feature/masterpasswordhint/MasterPasswordHintViewModel.kt @@ -127,6 +127,7 @@ class MasterPasswordHintViewModel @Inject constructor( it.copy(dialog = MasterPasswordHintState.DialogState.PasswordHintSent) } } + is PasswordHintResult.Error -> { val errorMessage = action.result.message?.asText() ?: R.string.generic_error_message.asText() diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/tools/feature/generator/passwordhistory/PasswordHistoryViewModel.kt b/app/src/main/java/com/x8bit/bitwarden/ui/tools/feature/generator/passwordhistory/PasswordHistoryViewModel.kt index 83a2c943ba..b0f9e7423d 100644 --- a/app/src/main/java/com/x8bit/bitwarden/ui/tools/feature/generator/passwordhistory/PasswordHistoryViewModel.kt +++ b/app/src/main/java/com/x8bit/bitwarden/ui/tools/feature/generator/passwordhistory/PasswordHistoryViewModel.kt @@ -57,6 +57,7 @@ class PasswordHistoryViewModel @Inject constructor( .onEach(::sendAction) .launchIn(viewModelScope) } + is GeneratorPasswordHistoryMode.Item -> { vaultRepository .getVaultItemStateFlow(passwordHistoryMode.itemId) @@ -103,11 +104,13 @@ class PasswordHistoryViewModel @Inject constructor( is DataState.Error -> { PasswordHistoryState.ViewState.Error(R.string.an_error_has_occurred.asText()) } + is DataState.Loaded -> action.state.data?.passwordHistory.toViewState() is DataState.Loading -> PasswordHistoryState.ViewState.Loading is DataState.NoNetwork -> { PasswordHistoryState.ViewState.Error(R.string.an_error_has_occurred.asText()) } + is DataState.Pending -> action.state.data?.passwordHistory.toViewState() } mutableStateFlow.update { it.copy(viewState = newState) } @@ -138,7 +141,7 @@ class PasswordHistoryViewModel @Inject constructor( ), ) } - return if (passwords?.isNotEmpty() == true) { + return if (passwords?.isNotEmpty() == true) { PasswordHistoryState.ViewState.Content(passwords) } else { PasswordHistoryState.ViewState.Empty @@ -163,6 +166,7 @@ data class PasswordHistoryState( */ val menuEnabled: Boolean get() = passwordHistoryMode is GeneratorPasswordHistoryMode.Default + /** * Represents the specific view states for the password history screen. */ diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/item/VaultItemAttachmentContent.kt b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/item/VaultItemAttachmentContent.kt index 67fe99afff..f26977363b 100644 --- a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/item/VaultItemAttachmentContent.kt +++ b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/item/VaultItemAttachmentContent.kt @@ -123,6 +123,7 @@ fun AttachmentItemContent( onAttachmentDownloadClick(attachmentItem) }, onDismissClick = { shouldShowSizeWarningDialog = false }, - onDismissRequest = { shouldShowSizeWarningDialog = false },) + onDismissRequest = { shouldShowSizeWarningDialog = false }, + ) } } diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/item/util/CipherViewExtensions.kt b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/item/util/CipherViewExtensions.kt index 8d0caa3c55..45d3c80b37 100644 --- a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/item/util/CipherViewExtensions.kt +++ b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/item/util/CipherViewExtensions.kt @@ -19,7 +19,6 @@ import com.x8bit.bitwarden.ui.vault.feature.vault.VaultState import com.x8bit.bitwarden.ui.vault.model.VaultCardBrand import com.x8bit.bitwarden.ui.vault.model.VaultLinkedFieldType import com.x8bit.bitwarden.ui.vault.model.findVaultCardBrandWithNameOrNull -import java.lang.NumberFormatException import java.time.format.DateTimeFormatter import java.util.TimeZone diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultViewModel.kt b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultViewModel.kt index fa9e2112a1..b76babb43c 100644 --- a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultViewModel.kt +++ b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultViewModel.kt @@ -28,13 +28,13 @@ import com.x8bit.bitwarden.ui.platform.components.model.IconRes import com.x8bit.bitwarden.ui.vault.feature.itemlisting.model.ListingItemOverflowAction import com.x8bit.bitwarden.ui.vault.feature.vault.model.VaultFilterData import com.x8bit.bitwarden.ui.vault.feature.vault.model.VaultFilterType -import com.x8bit.bitwarden.ui.vault.feature.vault.util.vaultFilterDataIfRequired import com.x8bit.bitwarden.ui.vault.feature.vault.util.initials import com.x8bit.bitwarden.ui.vault.feature.vault.util.toAccountSummaries import com.x8bit.bitwarden.ui.vault.feature.vault.util.toActiveAccountSummary import com.x8bit.bitwarden.ui.vault.feature.vault.util.toAppBarTitle import com.x8bit.bitwarden.ui.vault.feature.vault.util.toVaultFilterData import com.x8bit.bitwarden.ui.vault.feature.vault.util.toViewState +import com.x8bit.bitwarden.ui.vault.feature.vault.util.vaultFilterDataIfRequired import com.x8bit.bitwarden.ui.vault.model.VaultCardBrand import com.x8bit.bitwarden.ui.vault.model.VaultItemListingType import com.x8bit.bitwarden.ui.vault.util.shortName diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/verificationcode/VerificationCodeItem.kt b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/verificationcode/VerificationCodeItem.kt index e89bb8d8bd..76c4e0a3d7 100644 --- a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/verificationcode/VerificationCodeItem.kt +++ b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/verificationcode/VerificationCodeItem.kt @@ -14,7 +14,6 @@ import androidx.compose.material3.IconButton import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.runtime.Composable -import androidx.compose.runtime.getValue import androidx.compose.runtime.remember import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier