pub struct ImporterClient {
client: Client,
}Fields§
§client: ClientImplementations§
Source§impl ImporterClient
impl ImporterClient
fn new(client: Client) -> Self
Sourcepub async fn import_kdbx(
&self,
file: Vec<u8>,
password: Option<String>,
key_file: Option<Vec<u8>>,
options: ImportOptions,
) -> Result<ImportSummary, ImportError>
pub async fn import_kdbx( &self, file: Vec<u8>, password: Option<String>, key_file: Option<Vec<u8>>, options: ImportOptions, ) -> Result<ImportSummary, ImportError>
Import a KeePass KDBX (.kdbx) database and submit it to the server.
Parses and decrypts the raw .kdbx bytes (unlocked with the password and/or key file),
encrypts the entries for the user’s personal vault or the given organization, and submits
them to the import endpoint. Returns the counts of what was imported. Inputs larger than
10 MiB are rejected with KdbxFileTooLarge.
Sourcepub async fn onepassword_sign_in_methods(
&self,
username: String,
sign_in_address: SignInAddress,
) -> Result<OnePasswordSignInMethods, ImportError>
pub async fn onepassword_sign_in_methods( &self, username: String, sign_in_address: SignInAddress, ) -> Result<OnePasswordSignInMethods, ImportError>
Asks 1Password how the account signs in: with the password and Secret Key, with SSO, or
either. It needs only the email and the sign-in address, so the UI can call it first and
then ask for the password and Secret Key or start
ImporterClient::import_onepassword_sso. Fails with
ImportError::OnePasswordInvalidEmail when 1Password refuses the email as malformed.
Source§impl ImporterClient
impl ImporterClient
Sourcepub async fn import_onepassword_wasm(
&self,
credentials: Credentials,
two_factor: RawJsOnePasswordTwoFactorUi,
options: ImportOptions,
) -> Result<OnePasswordImportSummary, ImportError>
pub async fn import_onepassword_wasm( &self, credentials: Credentials, two_factor: RawJsOnePasswordTwoFactorUi, options: ImportOptions, ) -> Result<OnePasswordImportSummary, ImportError>
The same import as ImporterClient::import_onepassword, for JavaScript, which passes the
two-factor prompt as an object rather than a &dyn callback.
Sourcepub async fn import_onepassword_sso_wasm(
&self,
credentials: OnePasswordSsoCredentials,
ui: RawJsOnePasswordSsoUi,
options: ImportOptions,
) -> Result<OnePasswordImportSummary, ImportError>
pub async fn import_onepassword_sso_wasm( &self, credentials: OnePasswordSsoCredentials, ui: RawJsOnePasswordSsoUi, options: ImportOptions, ) -> Result<OnePasswordImportSummary, ImportError>
The same import as ImporterClient::import_onepassword_sso, for JavaScript, which passes
the callbacks as objects rather than &dyn references.
Source§impl ImporterClient
impl ImporterClient
Sourcepub async fn import_onepassword(
&self,
credentials: Credentials,
two_factor: &dyn OnePasswordTwoFactorUi,
options: ImportOptions,
) -> Result<OnePasswordImportSummary, ImportError>
pub async fn import_onepassword( &self, credentials: Credentials, two_factor: &dyn OnePasswordTwoFactorUi, options: ImportOptions, ) -> Result<OnePasswordImportSummary, ImportError>
Import a 1Password account directly from the 1Password servers.
Signs in with the email, master password and Secret Key in credentials, asking
two_factor for a code when the account requires one, downloads and decrypts every vault
the account can open, and submits the result to the import endpoint. Each vault becomes a
folder. Returns the imported counts plus any vaults or items that could not be imported.
Sourcepub async fn import_onepassword_sso(
&self,
credentials: OnePasswordSsoCredentials,
ui: &dyn OnePasswordSsoUi,
options: ImportOptions,
) -> Result<OnePasswordImportSummary, ImportError>
pub async fn import_onepassword_sso( &self, credentials: OnePasswordSsoCredentials, ui: &dyn OnePasswordSsoUi, options: ImportOptions, ) -> Result<OnePasswordImportSummary, ImportError>
The same import as ImporterClient::import_onepassword, signing in with single sign-on.
Signs in with the email and sign-in address in credentials through the account’s identity
provider, which ui opens for the user. Every import is a new device for the account, so
the user approves it from another 1Password device and types the verification code it
shows, again through ui. A sign-in the user gives up on, at the identity provider or
during the approval, ends with ImportError::OnePasswordCanceled, one the approving device
denies with ImportError::OnePasswordDenied, and one where the user runs out of attempts at
the code with ImportError::OnePasswordVerificationCodeFailed.
Trait Implementations§
Source§impl From<ImporterClient> for JsValue
impl From<ImporterClient> for JsValue
Source§fn from(value: ImporterClient) -> Self
fn from(value: ImporterClient) -> Self
Source§impl FromWasm for ImporterClient
Available on crate feature wasm only.
impl FromWasm for ImporterClient
wasm only.Source§impl FromWasmAbi for ImporterClient
impl FromWasmAbi for ImporterClient
Source§impl IntoWasmAbi for ImporterClient
impl IntoWasmAbi for ImporterClient
Source§type Abi = WasmPtr<WasmRefCell<ImporterClient>>
type Abi = WasmPtr<WasmRefCell<ImporterClient>>
Source§impl LongRefFromWasmAbi for ImporterClient
impl LongRefFromWasmAbi for ImporterClient
Source§type Abi = WasmPtr<WasmRefCell<ImporterClient>>
type Abi = WasmPtr<WasmRefCell<ImporterClient>>
RefFromWasmAbi::AbiSource§type Anchor = RcRef<ImporterClient>
type Anchor = RcRef<ImporterClient>
RefFromWasmAbi::AnchorSource§unsafe fn long_ref_from_abi(js: Self::Abi) -> Self::Anchor
unsafe fn long_ref_from_abi(js: Self::Abi) -> Self::Anchor
RefFromWasmAbi::ref_from_abiSource§impl NullableFromWasmAbi for ImporterClient
impl NullableFromWasmAbi for ImporterClient
Source§impl NullableIntoWasmAbi for ImporterClient
impl NullableIntoWasmAbi for ImporterClient
Source§impl OptionFromWasmAbi for ImporterClient
impl OptionFromWasmAbi for ImporterClient
Source§impl OptionIntoWasmAbi for ImporterClient
impl OptionIntoWasmAbi for ImporterClient
Source§impl RefFromWasmAbi for ImporterClient
impl RefFromWasmAbi for ImporterClient
Source§type Abi = WasmPtr<WasmRefCell<ImporterClient>>
type Abi = WasmPtr<WasmRefCell<ImporterClient>>
Self are recovered from.Source§type Anchor = RcRef<ImporterClient>
type Anchor = RcRef<ImporterClient>
Self for the duration of the
invocation of the function that has an &Self parameter. This is
required to ensure that the lifetimes don’t persist beyond one function
call, and so that they remain anonymous.Source§impl RefMutFromWasmAbi for ImporterClient
impl RefMutFromWasmAbi for ImporterClient
Source§type Abi = WasmPtr<WasmRefCell<ImporterClient>>
type Abi = WasmPtr<WasmRefCell<ImporterClient>>
RefFromWasmAbi::AbiSource§type Anchor = RcRefMut<ImporterClient>
type Anchor = RcRefMut<ImporterClient>
RefFromWasmAbi::AnchorSource§unsafe fn ref_mut_from_abi(js: Self::Abi) -> Self::Anchor
unsafe fn ref_mut_from_abi(js: Self::Abi) -> Self::Anchor
RefFromWasmAbi::ref_from_abiimpl SupportsConstructor for ImporterClient
impl SupportsInstanceProperty for ImporterClient
impl SupportsStaticProperty for ImporterClient
Source§impl ToWasm for ImporterClient
Available on crate feature wasm only.
impl ToWasm for ImporterClient
wasm only.Source§impl TryFromJsValue for ImporterClient
impl TryFromJsValue for ImporterClient
Source§fn try_from_js_value_ref(value: &JsValue) -> Option<Self>
fn try_from_js_value_ref(value: &JsValue) -> Option<Self>
Source§const NULLABLE: bool = false
const NULLABLE: bool = false
Self accepts null as a distinct value space, as
Nullable<T> does. An enclosing Option then passes null through
instead of reading it as None, so Option<T> is itself nullable
exactly when T is not. JsValue does not set this: it accepts
null as one value among all of them, not as a distinct space, and
Option<JsValue> reads it as None like the ABI does. This is the
JS-value side of NullableFromWasmAbi, which claims null at the
ABI.Source§impl VectorFromWasmAbi for ImporterClient
impl VectorFromWasmAbi for ImporterClient
type Abi = <Box<[JsValue]> as FromWasmAbi>::Abi
unsafe fn vector_from_abi(js: Self::Abi) -> Box<[ImporterClient]>
Source§impl VectorIntoWasmAbi for ImporterClient
impl VectorIntoWasmAbi for ImporterClient
type Abi = <Box<[JsValue]> as IntoWasmAbi>::Abi
fn vector_into_abi(vector: Box<[ImporterClient]>) -> Self::Abi
Source§impl WasmDescribe for ImporterClient
impl WasmDescribe for ImporterClient
Auto Trait Implementations§
impl !RefUnwindSafe for ImporterClient
impl !UnwindSafe for ImporterClient
impl Freeze for ImporterClient
impl Send for ImporterClient
impl Sync for ImporterClient
impl Unpin for ImporterClient
impl UnsafeUnpin for ImporterClient
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
§impl<T> CompatExt for T
impl<T> CompatExt for T
§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
§fn new_handle(value: Arc<T>) -> Handle
fn new_handle(value: Arc<T>) -> Handle
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
§unsafe fn consume_handle(handle: Handle) -> Arc<T> ⓘ
unsafe fn consume_handle(handle: Handle) -> Arc<T> ⓘ
Arc<> Read more§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> MaybeFromWasmAbi for Twhere
T: OptionFromWasmAbi,
impl<T> MaybeFromWasmAbi for Twhere
T: OptionFromWasmAbi,
Source§type MaybeAbi = <T as FromWasmAbi>::Abi
type MaybeAbi = <T as FromWasmAbi>::Abi
Option<Self>.Source§unsafe fn from_maybe_abi(js: <T as FromWasmAbi>::Abi) -> T
unsafe fn from_maybe_abi(js: <T as FromWasmAbi>::Abi) -> T
unsafe fn try_from_maybe_abi( js: <T as FromWasmAbi>::Abi, ) -> Result<T, &'static str>
Source§impl<T> MaybeIntoWasmAbi for Twhere
T: OptionIntoWasmAbi,
impl<T> MaybeIntoWasmAbi for Twhere
T: OptionIntoWasmAbi,
Source§type MaybeAbi = <T as IntoWasmAbi>::Abi
type MaybeAbi = <T as IntoWasmAbi>::Abi
Option<Self>.Source§fn into_maybe_abi(self) -> <T as IntoWasmAbi>::Abi
fn into_maybe_abi(self) -> <T as IntoWasmAbi>::Abi
Option<Self> ABI.§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> ReturnWasmAbi for Twhere
T: IntoWasmAbi,
impl<T> ReturnWasmAbi for Twhere
T: IntoWasmAbi,
Source§type Abi = <T as IntoWasmAbi>::Abi
type Abi = <T as IntoWasmAbi>::Abi
IntoWasmAbi::AbiSource§fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
IntoWasmAbi::into_abi, except that it may throw and never
return in the case of Err.