BIT-2201: Handle URI checksum validation (#1231)

This commit is contained in:
David Perez
2024-04-04 22:19:51 -05:00
committed by Álison Fernandes
parent 1a12a91a74
commit 04eba5828b
19 changed files with 104 additions and 37 deletions

View File

@@ -753,6 +753,9 @@ data class SyncResponseJson(
@SerialName("uri")
val uri: String?,
@SerialName("uriChecksum")
val uriChecksum: String?,
)
}

View File

@@ -184,6 +184,7 @@ private fun LoginUri.toEncryptedNetworkUri(): SyncResponseJson.Cipher.Login.Uri
SyncResponseJson.Cipher.Login.Uri(
uriMatchType = match?.toNetworkMatchType(),
uri = uri,
uriChecksum = uriChecksum,
)
private fun UriMatchType.toNetworkMatchType(): UriMatchTypeJson =
@@ -432,7 +433,7 @@ fun SyncResponseJson.Cipher.Login.Uri.toSdkLoginUri(): LoginUri =
LoginUri(
uri = uri,
match = uriMatchType?.toSdkMatchType(),
uriChecksum = null,
uriChecksum = uriChecksum,
)
/**

View File

@@ -126,6 +126,7 @@ class VaultAddEditViewModel @Inject constructor(
type = vaultAddEditType.vaultItemCipherType.toItemType(),
)
}
is VaultAddEditType.EditItem -> VaultAddEditState.ViewState.Loading
is VaultAddEditType.CloneItem -> VaultAddEditState.ViewState.Loading
},
@@ -718,6 +719,7 @@ class VaultAddEditViewModel @Inject constructor(
id = UUID.randomUUID().toString(),
uri = "",
match = null,
checksum = null,
),
)
}
@@ -1571,7 +1573,12 @@ data class VaultAddEditState(
val totp: String? = null,
val canViewPassword: Boolean = true,
val uriList: List<UriItem> = listOf(
UriItem(id = UUID.randomUUID().toString(), uri = "", match = null),
UriItem(
id = UUID.randomUUID().toString(),
uri = "",
match = null,
checksum = null,
),
),
val fido2CredentialCreationDateTime: Text? = null,
) : ItemType() {

View File

@@ -12,4 +12,5 @@ data class UriItem(
val id: String,
val uri: String?,
val match: UriMatchType?,
val checksum: String?,
) : Parcelable

View File

@@ -47,6 +47,7 @@ fun AutofillSaveItem.toDefaultAddTypeContent(
id = UUID.randomUUID().toString(),
uri = uri,
match = null,
checksum = null,
),
),
),

View File

@@ -27,6 +27,7 @@ fun AutofillSelectionData.toDefaultAddTypeContent(
id = UUID.randomUUID().toString(),
uri = uri,
match = null,
checksum = null,
),
),
)

View File

@@ -272,6 +272,7 @@ private fun List<LoginUriView>?.toUriItems(): List<UriItem> =
id = UUID.randomUUID().toString(),
uri = "",
match = null,
checksum = null,
),
)
} else {
@@ -280,6 +281,7 @@ private fun List<LoginUriView>?.toUriItems(): List<UriItem> =
id = UUID.randomUUID().toString(),
uri = loginUriView.uri,
match = loginUriView.match,
checksum = loginUriView.uriChecksum,
)
}
}