1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-06 00:13:28 +00:00
Commit Graph

18014 Commits

Author SHA1 Message Date
Jakub Gilis
2fd83f830d Properly handle message aborts during cleanup (#13841)
Replace the FallbackRequestedError rejection pattern with direct
AbortController.abort() calls when destroying the Messenger. This
eliminates misleading console errors and ensures correct cancellation
behavior.

The FallbackRequestedError is intended specifically for user-requested
WebAuthn fallbacks, not general message cleanup operations.

Fixes GitHub issue #12663
2025-04-11 15:30:06 -04:00
Jonathan Prusik
d5b7af75e9 [PM-14909] Build components for security task completion notification (#14230)
* squash split component work from pm-14909

* fix typing
2025-04-11 15:16:30 -04:00
Jordan Aasen
5006a29546 [PM-17516][PM-17617] - Remove old add-edit and attachments components (#14087)ew
* remove unused components

* re-add add-edit

* re-delete add-edit
2025-04-11 09:12:18 -07:00
bw-ghapp[bot]
732029b3f2 Autosync the updated translations (#14233)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-04-11 10:16:15 +02:00
bw-ghapp[bot]
c05e3df2e4 Autosync the updated translations (#14232)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-04-11 10:08:56 +02:00
Todd Martin
f7934b98c6 fix(login): [PM-11502] Support Remember Email option consistently
* Moved saving of SSO email outside of browser/desktop code

* Clarified comments.

* Tests

* Refactored login component services to manage state

* Fixed input on login component

* Fixed tests

* Linting

* Moved web setting in state into web override

* updated tests

* Fixed typing.

* Fixed type safety issues.

* Added comments and renamed for clarity.

* Removed method parameters that weren't used

* Added clarifying comments

* Added more comments.

* Removed test that is not necessary on base

* Test cleanup

* More comments.

* Linting

* Fixed test.

* Fixed base URL

* Fixed typechecking.

* Type checking

* Moved setting of email state to default service

* Added comments.

* Consolidated SSO URL formatting

* Updated comment

* Fixed reference.

* Fixed missing parameter.

* Initialized service.

* Added comments

* Added initialization of new service

* Made email optional due to CLI.

* Fixed comment on handleSsoClick.

* Added SSO email persistence to v1 component.

* Updated login email service.

* Updated setting of remember me

* Removed unnecessary input checking and rearranged functions

* Fixed name

* Added handling of Remember Email to old component for passkey click

* Updated v1 component to persist the email on Continue click

* Fix merge conflicts.

* Merge conflicts in login component.

* Persisted login email on v1 browser component.

* Merge conflicts

* fix(snap) [PM-17464][PM-17463][PM-15587] Allow Snap to use custom callback protocol

* Removed Snap from custom protocol workaround

* Fixed tests.

* Updated case numbers on test

* Resolved PR feedback.

* PM-11502 - LoginEmailSvcAbstraction - mark methods as abstract to satisfy strict ts.

* Removed test

* Changed to persist on leaving fields instead of button click.

* Fixed type checking.

---------

Co-authored-by: Bernd Schoolmann <mail@quexten.com>
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
2025-04-10 18:58:49 -04:00
Jonathan Prusik
e88813e983 remove duplicate message catalog keys (#14228) 2025-04-10 22:01:28 +00:00
Alec Rippberger
1e7d54f7fb fix(auth): [PM-1779] replace wildcard with window.location.origin in postMessage
Improve security by using specific origin instead of wildcard in postMessage calls to prevent potential information leakage to third parties.

PM-1779
2025-04-10 14:55:26 -05:00
Vijay Oommen
3ad6a98e21 PM-13404 sort fix (#14195) 2025-04-10 14:35:22 -05:00
Alec Rippberger
4772362928 refactor(auth): [PM-8976] migrate two-factor setup component to Tailwind and standalone
- Remove Bootstrap styles from two-factor-setup component and replace with Tailwind equivalents
- Convert two factor components to standalone components to move away from LooseComponents
- Replace ul/li list with bit-item-group and bit-item components
- Integrate with the bit design system

---------

Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>
Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
2025-04-10 14:13:11 -05:00
Bryan Cunningham
f24a4d139d remove hint margin in radio button (#14223) 2025-04-10 14:42:15 -04:00
Vijay Oommen
d166cb9662 PM-19470 Redirect to the first tab (#14164) 2025-04-10 13:18:07 -05:00
Bryan Cunningham
c59b321dbb adds button story and docs for button with icon spacing (#14198)
* add story & docs for button with icon spacing

* add back block story removed in error

* remove unnecessary args
2025-04-10 14:17:37 -04:00
Github Actions
11e5bc6104 Bumped Desktop client to 2025.4.1 2025-04-10 17:27:43 +00:00
Vicki League
63a3cb0160 [CL-394] Only run Chromatic action on relevant PRs (#14065) 2025-04-10 11:51:43 -04:00
Alex Morask
eea0bb6d6e [PM-18870] Convert Organization to Business Unit (#14131)
* Add setupBusinessUnit to OrganizationBillingApiService

* Add setup-business-unit.component

* Updated designs and cleanup work

* Update existing logos for Provider Portal and Admin Console

* Fix broken test
2025-04-10 10:06:23 -04:00
Bernd Schoolmann
5a1b0744f0 [PM-17665] Move cryptofunction service to km (#13285)
* Move cryptofunction service to km

* Fix formatting

* Fix import

* Fix build on desktop

* Fix build on browser and tests
2025-04-10 11:09:35 +02:00
Jeffrey Holland
46470cce2a PM-19102 Autofill new identity information in the popout (#13822)
* PM-17187 Autofill new card information in the popout

* Add new identity autofill to browser extension

* Add ability to save values from autoselect fields
2025-04-10 08:08:13 +02:00
Edmond Chui
7e2cbbf616 Fix Safari pinned tabs causing autofill to be wrong (#13755)
Co-authored-by: Jonathan Prusik <jprusik@users.noreply.github.com>
2025-04-09 17:12:48 -04:00
renovate[bot]
c16534e1e7 [deps]: Update Rust crate tokio to v1.43.1 [SECURITY] (#14170)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel García <dani-garcia@users.noreply.github.com>
2025-04-09 18:08:22 +02:00
Rui Tomé
e0e85c25a2 [PM-16091] Add SsoExternalId to the member dialog and hide ExternalId if there is no value to display (#14126)
* Add ssoExternalId to OrganizationUserAdminView and OrganizationUserDetailsResponse

- Updated OrganizationUserAdminView to include ssoExternalId property.
- Enhanced OrganizationUserDetailsResponse constructor to initialize ssoExternalId from response data.

* Add SSO External ID copy to messages.json

* Implement SSO External ID field in member dialog

- Added a new input field for ssoExternalId in the member dialog component.
- Introduced visibility logic for both externalId and ssoExternalId based on feature flags.
- Updated form control initialization to include ssoExternalId.
2025-04-09 15:33:32 +01:00
Bernd Schoolmann
a2cd3ecc1c [PM-19838] Untrust devices that cannot be rotated (#14165)
* Untrust devices that cannot be rotated

* Add tests and only send request on more than 0 failed devices

* Address feedback
2025-04-09 14:26:20 +02:00
rr-bw
a4040b6b6b refactor(set-change-password): [Auth/PM-17649] Move CompareInputs Validator (#14173)
This PR
- Moves the `compareInputs` validator to `libs/auth` (with some minor updates to the validator)
- Adds unit tests for `compareInputs`
- Removes the deprecated input validators from `InputsFieldMatch` along with the `inputs-field-match.validator.ts` file
2025-04-08 12:42:41 -07:00
Andreas Coroiu
772b42f5b5 [PM-18039] Add initial verison of IpcServices to client (#13373)
* feat: add foreground ipc service

* refactor: create abstract ipc service in libs

* wip: remove IPC service complexity

The code was making some wrong assumptions about how IPC is going to work. I'm removing everything and starting the content-script instead

* feat: working message sending from page to background

* refactor: move into common

* feat: somewhat complete web <-> browser link

* wip: ping command from web

* fix: import path

* fix: wip urls

* wip: add console log

* feat: successfull message sending (not receiving)

* feat: implement IPC using new refactored framework

* wip: add some console logs

* wip: almost working ping/pong

* feat: working ping/pong

* chore: clean-up ping/pong and some console logs

* chore: remove unused file

* fix: override lint rule

* chore: remove unused ping message

* feat: add tests for message queue

* fix: adapt to name changes and modifications to SDK branch

* fix: missing import

* fix: remove content script from manifest

The feature is not ready for prodution code yet. We will add dynamic injection with feature-flag support in a follow-up PR

* fix: remove fileless lp

* fix: make same changes to manifest v2

* fix: initialization functions

Add missing error handling, wait for the SDK to load and properly depend on the log service

* feat: use named id field

* chore: update sdk version to include IPC changes

* fix: remove messages$ buffer

* fix: forgot to commit package-lock

* feat: add additional destination check

* feat: only import type in ipc-message

* fix: typing issues

* feat: check message origin
2025-04-08 15:06:39 +02:00
renovate[bot]
b488253722 [deps]: Update actions/create-github-app-token action to v1.12.0 (#13879)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-08 14:24:04 +02:00
Jared McCannon
fa0ae2435a Removed bootstrap classes from setup.component.html (#14166) 2025-04-08 07:17:53 -05:00
Bernd Schoolmann
cf0e693caa [PM-18697] Add new symmetric key runtime representation and move encrypt service to it (#13578)
* Remove AES128CBC-HMAC encryption

* Increase test coverage

* Refactor symmetric keys and increase test coverage

* Re-add type 0 encryption

* Fix ts strict warning

* Re-add support for encrypt hmac-less aes

* Add comment about inner()

* Update comment

* Deduplicate encryption type check

* Undo test changes

* Lift out encryption type check to before splitting by encryption type

* Change null to undefined

* Fix test
2025-04-08 12:42:42 +02:00
rr-bw
81350a2ee1 Revert "refactor(set-change-password): [Auth/PM-17649] Move and test compareI…" (#14171)
This reverts commit ecb4b2d0b7.
2025-04-07 18:34:35 -07:00
rr-bw
ecb4b2d0b7 refactor(set-change-password): [Auth/PM-17649] Move and test compareInputs validator (#13553)
- Move the `compareInputs` validator to `libs/auth`
- Add tests for the `compareInputs` validator
- Delete the deprecated `InputsFieldMatch` class (inputs-field-match.validator.ts)
2025-04-07 15:04:24 -07:00
Justin Baur
19d59212a8 Add save-exact=true (#14169) 2025-04-07 21:20:45 +00:00
cyprain-okeke
5150a1f5b2 Fix the bug for free bitwarden Families menu (#14155) 2025-04-07 22:00:31 +01:00
rr-bw
2267876860 refactor(set-change-password): [Auth/PM-18206] Update InputPasswordComponent to handle multiple flows (#13745)
Updates the InputPasswordComponent so that it can eventually be used in multiple set/change password scenarios.

Most importantly, this PR adds an InputPasswordFlow enum and @Input so that parent components can dictate which UI elements to show.
2025-04-07 11:58:50 -07:00
Álison Fernandes
7f58cee41b [PM-18897] Add workflow to auto-reply / auto-close GitHub Discussions (#13682) 2025-04-07 14:20:29 -04:00
Todd Martin
ea860b2f35 [PM-17933] Rename github-action group to no longer be minor-only (#13799)
* Renamed groups and added consistent periods

* Fixed punctuation

Co-authored-by: Matt Bishop <mbishop@bitwarden.com>

---------

Co-authored-by: Matt Bishop <mbishop@bitwarden.com>
2025-04-07 16:55:53 +00:00
Bernd Schoolmann
d95c3c63a8 Add support for Zen browser integration on mac (#13895) 2025-04-07 15:48:44 +00:00
Jonas Hendrickx
38f193ee6c [PM-19713][BEEEP] Improve performance of whether user can view subsc… (#14062) 2025-04-07 17:00:19 +02:00
Kyle Spearrin
254cad29b3 [PM-8951] set pin validation to min length of 4 (#13312)
* set pin validation to min length of 4

* use reactive forms

* PM-8951 - SetPin - remove dialog close logic if pin is invalid so validation errors can be shown to the user.

---------

Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
2025-04-07 10:39:26 -04:00
Jason Ng
31cc2c57ee [CL-421] add new notification variant to badge (#14130)
* add new notification variant to badge
2025-04-07 10:37:34 -04:00
Vince Grassia
c8967bf4b3 Update build web workflow (#14111) 2025-04-07 09:57:55 -04:00
Jared McCannon
ad2e3a4039 [PM-17361] Migrating providers.component.html to TW (#14133)
* removing bootstrap.

* Fixed width.
2025-04-07 07:45:24 -05:00
Bernd Schoolmann
647781bedd Fix typo (#14157) 2025-04-07 12:28:34 +00:00
Bernd Schoolmann
1c44640ea5 [PM-16541] Key rotation & enrollment trust for emergency access & organizations (#12655)
* Implement key rotation v2

* Pass through masterpassword hint

* Properly split old and new code

* Mark legacy rotation as deprecated

* Throw when data is null

* Cleanup

* Add tests

* Fix build

* Update libs/key-management/src/key.service.spec.ts

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>

* Update apps/web/src/app/auth/settings/change-password.component.ts

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>

* Add documentation

* Centralize loading logic

* Implement trust dialogs

* Fix build and clean up

* Add tests for accept organization component

* Fix enrollment

* Update apps/web/src/app/admin-console/organizations/manage/organization-trust.component.html

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>

* Cleanup according to feedback

* Change div to ng-container

* Init uninited strings

* Fix type errors on dialog config

* Fix typing

* Fix build

* Fix build

* Update libs/key-management-ui/src/key-rotation/key-rotation-trust-info.component.ts

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>

* Fix linting

* Undo legacy component import change

* Simplify dialog text

---------

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>
2025-04-07 13:41:19 +02:00
Maximilian Power
c6821608d0 [PM-19522] fix for member-access-report columns (#13994)
* fix for member-access-report columns

* restored tw-w-[278px] classes

---------

Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
2025-04-07 11:24:26 +00:00
Github Actions
2e7b50ed2f Bumped client version(s) 2025-04-07 10:58:28 +00:00
bw-ghapp[bot]
66360b76d2 Autosync the updated translations (#14153)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-04-07 10:05:51 +02:00
bw-ghapp[bot]
af5ea4233c Autosync the updated translations (#14152)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-04-07 09:59:42 +02:00
bw-ghapp[bot]
2a0b688017 Autosync the updated translations (#14151)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-04-07 09:58:34 +02:00
Shane Melton
6503cc64fd [PM-19906] Add appStopClick to prevent default event (#14134) 2025-04-04 15:34:02 -07:00
Shane Melton
a7fe4877d7 [PM-17563] Security task background synchronization (#14086)
* [PM-17563] Implement listenForTaskNotifications in default-task.service.ts

* [PM-17563] Update syncService to include userId in syncCompleted message payload

* [PM-17563] Update default-task.service to react to both pending task notifications and completed syncs

* [PM-17563] Add unit tests around task notification listening

* [PM-17563] Only check for at risk password tasks if tasks are enabled

* [PM-17563] Make userId required even if undefined

* [PM-17563] Use abstract TaskService instead of default implementation in MainBackground

* [PM-17563] Cleanup userId filtering
2025-04-04 13:42:44 -07:00
Patrick-Pimentel-Bitwarden
1af8fe2012 feat(device-approval-persistence): [PM-19380] Device Approval Persistence (#13958)
* feat(device-approval-persistence): [PM-19380] Device Approval Persistence - Added lookup on standard auth requests.

* fix(device-approval-persistence): [PM-19380] Device Approval Persistence - Fixed issue with null value trying to be parsed from the fromJSON function.




---------

Co-authored-by: Todd Martin <tmartin@bitwarden.com>
2025-04-04 15:44:48 -04:00