Sign in with Google, Apple…: item field, bridge save and identities
Items record sign_in_with {provider, account}; the browser bridge reports it
with the site's identities and saves it after the usual app prompt. Items
now keep fields they don't know, so editing in an older app never drops what
a newer one added.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
@@ -110,6 +110,7 @@ fn read_with_kv_ffi(f: &Fixture) -> Vec<ItemDto> {
|
||||
urls: d.urls,
|
||||
totp: d.totp,
|
||||
notes: d.notes,
|
||||
sign_in_with: d.sign_in_with.map(|w| kv_model::SignInWith { provider: w.provider, account: w.account }),
|
||||
favorite: d.favorite,
|
||||
tags: d.tags,
|
||||
modified_at: d.modified_at,
|
||||
@@ -140,6 +141,7 @@ fn ffi_item(title: &str, kind: kv_ffi::ItemKindDto) -> kv_ffi::ItemDto {
|
||||
notes: None,
|
||||
favorite: false,
|
||||
tags: vec![],
|
||||
sign_in_with: None,
|
||||
modified_at: 0,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -49,6 +49,7 @@ fn web_item(title: &str, password: &str) -> ItemDto {
|
||||
notes: None,
|
||||
favorite: false,
|
||||
tags: vec![],
|
||||
sign_in_with: None,
|
||||
modified_at: 0,
|
||||
}
|
||||
}
|
||||
@@ -82,6 +83,7 @@ async fn web_vault_enrolls_and_syncs_with_an_app_device() {
|
||||
notes: None,
|
||||
favorite: false,
|
||||
tags: vec![],
|
||||
sign_in_with: None,
|
||||
modified_at: 0,
|
||||
};
|
||||
let bank = app.save_item(on_app.clone()).unwrap();
|
||||
@@ -189,6 +191,7 @@ async fn app_with_item(server: &TestServer) -> (Arc<kv_ffi::VaultCore>, String,
|
||||
notes: None,
|
||||
favorite: false,
|
||||
tags: vec![],
|
||||
sign_in_with: None,
|
||||
modified_at: 0,
|
||||
})
|
||||
.unwrap();
|
||||
|
||||
Reference in New Issue
Block a user