From 6d2231d1b2eb4d2f046eb94f0e288ba2da897e0f Mon Sep 17 00:00:00 2001 From: Github Actions Date: Wed, 26 Mar 2025 21:20:59 +0000 Subject: [PATCH 1/6] Bumped client version(s) --- apps/browser/package.json | 2 +- apps/browser/src/manifest.json | 2 +- apps/browser/src/manifest.v3.json | 2 +- package-lock.json | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/browser/package.json b/apps/browser/package.json index 5a8ddd03b41..6ef35d88c10 100644 --- a/apps/browser/package.json +++ b/apps/browser/package.json @@ -1,6 +1,6 @@ { "name": "@bitwarden/browser", - "version": "2025.3.1", + "version": "2025.3.2", "scripts": { "build": "npm run build:chrome", "build:chrome": "cross-env BROWSER=chrome MANIFEST_VERSION=3 NODE_OPTIONS=\"--max-old-space-size=8192\" webpack", diff --git a/apps/browser/src/manifest.json b/apps/browser/src/manifest.json index 4510c2f342d..af2bf72b7b5 100644 --- a/apps/browser/src/manifest.json +++ b/apps/browser/src/manifest.json @@ -2,7 +2,7 @@ "manifest_version": 2, "name": "__MSG_extName__", "short_name": "__MSG_appName__", - "version": "2025.3.1", + "version": "2025.3.2", "description": "__MSG_extDesc__", "default_locale": "en", "author": "Bitwarden Inc.", diff --git a/apps/browser/src/manifest.v3.json b/apps/browser/src/manifest.v3.json index fc897c1b1c3..131724e38f9 100644 --- a/apps/browser/src/manifest.v3.json +++ b/apps/browser/src/manifest.v3.json @@ -3,7 +3,7 @@ "minimum_chrome_version": "102.0", "name": "__MSG_extName__", "short_name": "__MSG_appName__", - "version": "2025.3.1", + "version": "2025.3.2", "description": "__MSG_extDesc__", "default_locale": "en", "author": "Bitwarden Inc.", diff --git a/package-lock.json b/package-lock.json index 7331fcdde44..19b1772e4bc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -189,7 +189,7 @@ }, "apps/browser": { "name": "@bitwarden/browser", - "version": "2025.3.1" + "version": "2025.3.2" }, "apps/cli": { "name": "@bitwarden/cli", From 4734cab9a6374e0b2647eadfa01aa9e83f5a1a7e Mon Sep 17 00:00:00 2001 From: Vicki League Date: Wed, 26 Mar 2025 17:26:05 -0400 Subject: [PATCH 2/6] [CL-550] Fix popup layout padding and adjust views with extra bottom space (#13562) * [CL-550] Fix popup layout padding and adjust views with extra bottom space * simplify css * fix add/edit item page * cr changes * fix failing test --------- Co-authored-by: Will Martin --- .../popup/settings/account-security.component.html | 2 +- .../autofill/popup/settings/autofill.component.html | 4 ++-- .../popup/settings/notifications.component.html | 2 +- .../platform/popup/layout/popup-page.component.html | 2 +- .../components/options/send-options.component.html | 2 +- .../send-details/send-details.component.html | 2 +- .../send-list-items-container.component.html | 2 +- .../additional-options-section.component.html | 10 ++++++++-- .../additional-options-section.component.spec.ts | 6 ++++-- .../additional-options-section.component.ts | 4 +++- .../cipher-form/components/cipher-form.component.html | 4 +++- .../custom-fields/custom-fields.component.html | 2 +- .../custom-fields/custom-fields.component.ts | 3 +++ .../item-history/item-history-v2.component.html | 2 +- 14 files changed, 31 insertions(+), 16 deletions(-) diff --git a/apps/browser/src/auth/popup/settings/account-security.component.html b/apps/browser/src/auth/popup/settings/account-security.component.html index 3c5fd7a6af8..b8252aa6e13 100644 --- a/apps/browser/src/auth/popup/settings/account-security.component.html +++ b/apps/browser/src/auth/popup/settings/account-security.component.html @@ -95,7 +95,7 @@ - +

{{ "otherOptions" | i18n }}

diff --git a/apps/browser/src/autofill/popup/settings/autofill.component.html b/apps/browser/src/autofill/popup/settings/autofill.component.html index 340197f6bf3..c690eb3d2ca 100644 --- a/apps/browser/src/autofill/popup/settings/autofill.component.html +++ b/apps/browser/src/autofill/popup/settings/autofill.component.html @@ -209,7 +209,7 @@
- +

{{ "additionalOptions" | i18n }}

@@ -270,7 +270,7 @@
- + {{ "blockedDomains" | i18n }} diff --git a/apps/browser/src/autofill/popup/settings/notifications.component.html b/apps/browser/src/autofill/popup/settings/notifications.component.html index c6446012d0c..385db8c059b 100644 --- a/apps/browser/src/autofill/popup/settings/notifications.component.html +++ b/apps/browser/src/autofill/popup/settings/notifications.component.html @@ -47,7 +47,7 @@ - + {{ "excludedDomains" | i18n }} diff --git a/apps/browser/src/platform/popup/layout/popup-page.component.html b/apps/browser/src/platform/popup/layout/popup-page.component.html index 94f0846a852..2313b942a38 100644 --- a/apps/browser/src/platform/popup/layout/popup-page.component.html +++ b/apps/browser/src/platform/popup/layout/popup-page.component.html @@ -19,7 +19,7 @@ [ngClass]="{ 'tw-invisible': loading }" >
diff --git a/libs/tools/send/send-ui/src/send-form/components/options/send-options.component.html b/libs/tools/send/send-ui/src/send-form/components/options/send-options.component.html index 322fea94e3a..b9edf8eebcc 100644 --- a/libs/tools/send/send-ui/src/send-form/components/options/send-options.component.html +++ b/libs/tools/send/send-ui/src/send-form/components/options/send-options.component.html @@ -1,4 +1,4 @@ - +

{{ "additionalOptions" | i18n }}

diff --git a/libs/tools/send/send-ui/src/send-form/components/send-details/send-details.component.html b/libs/tools/send/send-ui/src/send-form/components/send-details/send-details.component.html index 06b0f1a55df..214c978ad48 100644 --- a/libs/tools/send/send-ui/src/send-form/components/send-details/send-details.component.html +++ b/libs/tools/send/send-ui/src/send-form/components/send-details/send-details.component.html @@ -1,4 +1,4 @@ - +

{{ "sendDetails" | i18n }}

diff --git a/libs/tools/send/send-ui/src/send-list-items-container/send-list-items-container.component.html b/libs/tools/send/send-ui/src/send-list-items-container/send-list-items-container.component.html index d244be15087..4b0e5970606 100644 --- a/libs/tools/send/send-ui/src/send-list-items-container/send-list-items-container.component.html +++ b/libs/tools/send/send-ui/src/send-list-items-container/send-list-items-container.component.html @@ -1,4 +1,4 @@ - +

{{ headerText }} diff --git a/libs/vault/src/cipher-form/components/additional-options/additional-options-section.component.html b/libs/vault/src/cipher-form/components/additional-options/additional-options-section.component.html index c00f51c8eba..e1eedb36e85 100644 --- a/libs/vault/src/cipher-form/components/additional-options/additional-options-section.component.html +++ b/libs/vault/src/cipher-form/components/additional-options/additional-options-section.component.html @@ -1,4 +1,7 @@ - +

{{ "additionalOptions" | i18n }}

@@ -29,4 +32,7 @@
- + diff --git a/libs/vault/src/cipher-form/components/additional-options/additional-options-section.component.spec.ts b/libs/vault/src/cipher-form/components/additional-options/additional-options-section.component.spec.ts index 705c170933a..f1c8085ae15 100644 --- a/libs/vault/src/cipher-form/components/additional-options/additional-options-section.component.spec.ts +++ b/libs/vault/src/cipher-form/components/additional-options/additional-options-section.component.spec.ts @@ -1,4 +1,4 @@ -import { Component } from "@angular/core"; +import { Component, Input } from "@angular/core"; import { ComponentFixture, TestBed } from "@angular/core/testing"; import { mock, MockProxy } from "jest-mock-extended"; import { BehaviorSubject } from "rxjs"; @@ -18,7 +18,9 @@ import { AdditionalOptionsSectionComponent } from "./additional-options-section. selector: "vault-custom-fields", template: "", }) -class MockCustomFieldsComponent {} +class MockCustomFieldsComponent { + @Input() disableSectionMargin: boolean; +} describe("AdditionalOptionsSectionComponent", () => { let component: AdditionalOptionsSectionComponent; diff --git a/libs/vault/src/cipher-form/components/additional-options/additional-options-section.component.ts b/libs/vault/src/cipher-form/components/additional-options/additional-options-section.component.ts index 9c619ca2f84..4d72a89e4e1 100644 --- a/libs/vault/src/cipher-form/components/additional-options/additional-options-section.component.ts +++ b/libs/vault/src/cipher-form/components/additional-options/additional-options-section.component.ts @@ -1,7 +1,7 @@ // FIXME: Update this file to be type safe and remove this and next line // @ts-strict-ignore import { CommonModule } from "@angular/common"; -import { ChangeDetectorRef, Component, OnInit, ViewChild } from "@angular/core"; +import { ChangeDetectorRef, Component, Input, OnInit, ViewChild } from "@angular/core"; import { takeUntilDestroyed } from "@angular/core/rxjs-interop"; import { FormBuilder, ReactiveFormsModule } from "@angular/forms"; import { shareReplay } from "rxjs"; @@ -59,6 +59,8 @@ export class AdditionalOptionsSectionComponent implements OnInit { /** True when the form is in `partial-edit` mode */ isPartialEdit = false; + @Input() disableSectionMargin: boolean; + constructor( private cipherFormContainer: CipherFormContainer, private formBuilder: FormBuilder, diff --git a/libs/vault/src/cipher-form/components/cipher-form.component.html b/libs/vault/src/cipher-form/components/cipher-form.component.html index 2644741385b..6b327486c47 100644 --- a/libs/vault/src/cipher-form/components/cipher-form.component.html +++ b/libs/vault/src/cipher-form/components/cipher-form.component.html @@ -28,7 +28,9 @@ [originalCipherView]="originalCipherView" > - + diff --git a/libs/vault/src/cipher-form/components/custom-fields/custom-fields.component.html b/libs/vault/src/cipher-form/components/custom-fields/custom-fields.component.html index c7c5f4a930e..3bce3c5f385 100644 --- a/libs/vault/src/cipher-form/components/custom-fields/custom-fields.component.html +++ b/libs/vault/src/cipher-form/components/custom-fields/custom-fields.component.html @@ -1,4 +1,4 @@ - +

{{ "customFields" | i18n }}

diff --git a/libs/vault/src/cipher-form/components/custom-fields/custom-fields.component.ts b/libs/vault/src/cipher-form/components/custom-fields/custom-fields.component.ts index bdb96f4327d..083615798b6 100644 --- a/libs/vault/src/cipher-form/components/custom-fields/custom-fields.component.ts +++ b/libs/vault/src/cipher-form/components/custom-fields/custom-fields.component.ts @@ -11,6 +11,7 @@ import { ElementRef, EventEmitter, inject, + Input, OnInit, Output, QueryList, @@ -94,6 +95,8 @@ export class CustomFieldsComponent implements OnInit, AfterViewInit { @ViewChildren("customFieldRow") customFieldRows: QueryList>; + @Input() disableSectionMargin: boolean; + customFieldsForm = this.formBuilder.group({ fields: new FormArray([]), }); diff --git a/libs/vault/src/cipher-view/item-history/item-history-v2.component.html b/libs/vault/src/cipher-view/item-history/item-history-v2.component.html index c069e36dde1..9395fb34fc7 100644 --- a/libs/vault/src/cipher-view/item-history/item-history-v2.component.html +++ b/libs/vault/src/cipher-view/item-history/item-history-v2.component.html @@ -1,4 +1,4 @@ - +

{{ "itemHistory" | i18n }}

From e60ea3497ac3fa90264b2a2d8bf10463dd0bc8bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=9C=A8=20Audrey=20=E2=9C=A8?= Date: Wed, 26 Mar 2025 18:25:32 -0400 Subject: [PATCH 3/6] [PM-19571] do not import ssh keys when rehydrating exported data (#14012) --- libs/common/src/models/export/ssh-key.export.ts | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/libs/common/src/models/export/ssh-key.export.ts b/libs/common/src/models/export/ssh-key.export.ts index 5387daf7dd0..15cd3015160 100644 --- a/libs/common/src/models/export/ssh-key.export.ts +++ b/libs/common/src/models/export/ssh-key.export.ts @@ -26,10 +26,9 @@ export class SshKeyExport { } static toDomain(req: SshKeyExport, domain = new SshKeyDomain()) { - const parsedKey = import_ssh_key(req.privateKey); - domain.privateKey = new EncString(parsedKey.privateKey); - domain.publicKey = new EncString(parsedKey.publicKey); - domain.keyFingerprint = new EncString(parsedKey.fingerprint); + domain.privateKey = new EncString(req.privateKey); + domain.publicKey = new EncString(req.publicKey); + domain.keyFingerprint = new EncString(req.keyFingerprint); return domain; } From 9eeeac24d4ac6b288dea2b43d2432080f244b34a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=9C=A8=20Audrey=20=E2=9C=A8?= Date: Wed, 26 Mar 2025 18:37:24 -0400 Subject: [PATCH 4/6] =?UTF-8?q?Revert=20"[PM-19571]=20do=20not=20import=20?= =?UTF-8?q?ssh=20keys=20when=20rehydrating=20exported=20data=20(#14?= =?UTF-8?q?=E2=80=A6"=20(#14013)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit e60ea3497ac3fa90264b2a2d8bf10463dd0bc8bd. --- libs/common/src/models/export/ssh-key.export.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/libs/common/src/models/export/ssh-key.export.ts b/libs/common/src/models/export/ssh-key.export.ts index 15cd3015160..5387daf7dd0 100644 --- a/libs/common/src/models/export/ssh-key.export.ts +++ b/libs/common/src/models/export/ssh-key.export.ts @@ -26,9 +26,10 @@ export class SshKeyExport { } static toDomain(req: SshKeyExport, domain = new SshKeyDomain()) { - domain.privateKey = new EncString(req.privateKey); - domain.publicKey = new EncString(req.publicKey); - domain.keyFingerprint = new EncString(req.keyFingerprint); + const parsedKey = import_ssh_key(req.privateKey); + domain.privateKey = new EncString(parsedKey.privateKey); + domain.publicKey = new EncString(parsedKey.publicKey); + domain.keyFingerprint = new EncString(parsedKey.fingerprint); return domain; } From 07245d790f1eee23b8ae97e477ba1877199f843c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=9C=A8=20Audrey=20=E2=9C=A8?= Date: Thu, 27 Mar 2025 09:32:10 -0400 Subject: [PATCH 5/6] [PM-19571] do not import ssh keys when rehydrating exported data (#14014) * do not import ssh keys when rehydrating exported data * Remove import_ssh_key sdk function from toView --------- Co-authored-by: Daniel James Smith --- libs/common/src/models/export/ssh-key.export.ts | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/libs/common/src/models/export/ssh-key.export.ts b/libs/common/src/models/export/ssh-key.export.ts index 5387daf7dd0..e82cb38b6d4 100644 --- a/libs/common/src/models/export/ssh-key.export.ts +++ b/libs/common/src/models/export/ssh-key.export.ts @@ -1,6 +1,5 @@ // FIXME: Update this file to be type safe and remove this and next line // @ts-strict-ignore -import { import_ssh_key } from "@bitwarden/sdk-internal"; import { EncString } from "../../platform/models/domain/enc-string"; import { SshKey as SshKeyDomain } from "../../vault/models/domain/ssh-key"; @@ -18,18 +17,16 @@ export class SshKeyExport { } static toView(req: SshKeyExport, view = new SshKeyView()) { - const parsedKey = import_ssh_key(req.privateKey); - view.privateKey = parsedKey.privateKey; - view.publicKey = parsedKey.publicKey; - view.keyFingerprint = parsedKey.fingerprint; + view.privateKey = req.privateKey; + view.publicKey = req.publicKey; + view.keyFingerprint = req.keyFingerprint; return view; } static toDomain(req: SshKeyExport, domain = new SshKeyDomain()) { - const parsedKey = import_ssh_key(req.privateKey); - domain.privateKey = new EncString(parsedKey.privateKey); - domain.publicKey = new EncString(parsedKey.publicKey); - domain.keyFingerprint = new EncString(parsedKey.fingerprint); + domain.privateKey = new EncString(req.privateKey); + domain.publicKey = new EncString(req.publicKey); + domain.keyFingerprint = new EncString(req.keyFingerprint); return domain; } From a80d289b1bfe582cbf84b98de90c37e813c83cba Mon Sep 17 00:00:00 2001 From: Bernd Schoolmann Date: Thu, 27 Mar 2025 15:10:06 +0100 Subject: [PATCH 6/6] [PM-17809] Fix org-owned ssh showing up in ssh list request (#13175) * Fix org keys showing up in list request * Change from tripleequal to double equal --- apps/desktop/src/autofill/services/ssh-agent.service.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/desktop/src/autofill/services/ssh-agent.service.ts b/apps/desktop/src/autofill/services/ssh-agent.service.ts index bf7167c0240..6522ef19500 100644 --- a/apps/desktop/src/autofill/services/ssh-agent.service.ts +++ b/apps/desktop/src/autofill/services/ssh-agent.service.ts @@ -143,7 +143,10 @@ export class SshAgentService implements OnDestroy { if (isListRequest) { const sshCiphers = ciphers.filter( - (cipher) => cipher.type === CipherType.SshKey && !cipher.isDeleted, + (cipher) => + cipher.type === CipherType.SshKey && + !cipher.isDeleted && + cipher.organizationId == null, ); const keys = sshCiphers.map((cipher) => { return { @@ -247,7 +250,7 @@ export class SshAgentService implements OnDestroy { (cipher) => cipher.type === CipherType.SshKey && !cipher.isDeleted && - cipher.organizationId === null, + cipher.organizationId == null, ); const keys = sshCiphers.map((cipher) => { return {