From 96d1c8338557a8f49be7507e4d5ec9dd36bfc34c Mon Sep 17 00:00:00 2001 From: bharat <114856815+sonigeez@users.noreply.github.com> Date: Thu, 14 Dec 2023 22:10:51 +0530 Subject: [PATCH] [PM-4077] safeincloud multiple url fix (#6394) * safeincloud multiple url fix * Ensure LoginView.uris is consistently populated --- libs/common/src/vault/models/view/login.view.ts | 6 +++--- libs/importer/src/importers/safeincloud-xml-importer.ts | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/libs/common/src/vault/models/view/login.view.ts b/libs/common/src/vault/models/view/login.view.ts index ec50834b87..56949e3d7a 100644 --- a/libs/common/src/vault/models/view/login.view.ts +++ b/libs/common/src/vault/models/view/login.view.ts @@ -17,7 +17,7 @@ export class LoginView extends ItemView { passwordRevisionDate?: Date = null; totp: string = null; - uris: LoginUriView[] = null; + uris: LoginUriView[] = []; autofillOnPageLoad: boolean = null; fido2Credentials: Fido2CredentialView[] = null; @@ -62,7 +62,7 @@ export class LoginView extends ItemView { } get hasUris(): boolean { - return this.uris != null && this.uris.length > 0; + return this.uris.length > 0; } get hasFido2Credentials(): boolean { @@ -84,7 +84,7 @@ export class LoginView extends ItemView { static fromJSON(obj: Partial>): LoginView { const passwordRevisionDate = obj.passwordRevisionDate == null ? null : new Date(obj.passwordRevisionDate); - const uris = obj.uris?.map((uri: any) => LoginUriView.fromJSON(uri)); + const uris = obj.uris.map((uri: any) => LoginUriView.fromJSON(uri)); const fido2Credentials = obj.fido2Credentials?.map((key) => Fido2CredentialView.fromJSON(key)); return Object.assign(new LoginView(), obj, { diff --git a/libs/importer/src/importers/safeincloud-xml-importer.ts b/libs/importer/src/importers/safeincloud-xml-importer.ts index 5c5c88021f..b61bad0c37 100644 --- a/libs/importer/src/importers/safeincloud-xml-importer.ts +++ b/libs/importer/src/importers/safeincloud-xml-importer.ts @@ -81,7 +81,7 @@ export class SafeInCloudXmlImporter extends BaseImporter implements Importer { } else if (fieldType === "notes") { cipher.notes += text + "\n"; } else if (fieldType === "weblogin" || fieldType === "website") { - cipher.login.uris = this.makeUriArray(text); + cipher.login.uris.push(...this.makeUriArray(text)); } else { this.processKvp(cipher, name, text); }