1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-15 15:53:27 +00:00
Commit Graph

2220 Commits

Author SHA1 Message Date
Jonas Hendrickx
5a44da8787 [PM-18213] Pricing cards for free SM upgrade not accurate (#14238)
Co-authored-by: Jonas Hendrickx <jhendrickx@bitwarden.com>
2025-04-29 12:04:17 -04:00
Alex Morask
a35d004059 Fix upgrade/change plan for free organization (#14537) 2025-04-29 12:03:33 -04:00
Rui Tomé
9cd08e8a9f [PM-18322] Fix: Allow organization admins to upload attachments for items without direct access (#14361)
* Wire organization ID into AttachmentsV2Component for org-based ciphers

* Enhance AttachmentsV2Component to accept organization ID for improved handling of org-based ciphers

* Integrate organization ID into VaultComponent for AttachmentsV2Component to enhance org-based cipher handling

* Add unit tests for CipherAttachmentsComponent to validate attachment saving behavior for admins

- Introduced mocks for ApiService and OrganizationService in the test setup.
- Updated tests to check `saveAttachmentWithServer` calls with the correct parameters, including an `isAdmin` flag for admin API usage.

* Fix unit tests for AttachmentsV2Component by adding mocks for ApiService and OrganizationService

* Fix AttachmentsV2Component tests
2025-04-29 12:42:02 +01:00
bw-ghapp[bot]
376c985134 Autosync the updated translations (#14534)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-04-29 12:44:44 +02:00
cyprain-okeke
1457a97640 Fix the message display (#14419) 2025-04-29 09:21:37 +01:00
Alex Morask
ff846d2fab [PM-20300] Fix self-serve resubscribe bugs (#14296)
* Address bugs

* Cy's feedback

* Cy's feedback
2025-04-28 14:38:48 -04:00
Nick Krantz
99b028fbcd [PM-17514] Remove old add-edit components (#13984)
* remove old add-edit-custom-fields component
- Also removes the individual vault add-edit-component where the custom fields component was used
- All of these components were unused

* remove unused translations for web
2025-04-28 11:23:47 -05:00
Alec Rippberger
c2c31e54c1 feat(auth): [PM-8978] migrate SSO connector to Tailwind
- Convert Bootstrap styles to Tailwind
- Remove deprecated sso.scss
- Add test coverage for SSO connector

[PM-8978]
2025-04-28 10:14:29 -05:00
Oscar Hinton
1417e0bc39 Remove unused payment_trigger_button (#14424) 2025-04-25 14:50:33 +02:00
bw-ghapp[bot]
5610ee2e08 Autosync the updated translations (#14416)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-04-25 05:58:01 +02:00
Jordan Aasen
b589951c90 [PM-18520] - Update desktop cipher forms to use the same UI as web app and extension - (#13992)
* WIP - cipher form refactor

* cipher clone

* cipher clone

* finalize item view and form changes

* fix tests

* hide changes behind feature flag

* set flag to false

* create vault items v2. add button selector

* revert change to flag and vault items

* add attachments

* revert change to tsconfig

* move module

* fix modules

* cleanup

* fix import

* fix import

* fix import

* remove showForm

* update feature flag

* wip - cleanup

* fix up services

* cleanup

* fix type errors

* fix lint errors

* add dialog component

* revert changes to menu

* revert changes to menu

* fix vault-items-v2

* set feature flag to FALSE

* add missing i18n keys. fix collection state

* remove generator. update modules. bug fix

* fix restricted imports

* mark method as deprecated. add uri arg back

* fix shared.module

* fix shared.module

* fix shared.module

* add uri

* check and prompt for premium when opening attachments dialog

* move VaultItemDialogResult back

* fix import in spec file

* update copy functions

* fix MP reprompt issue
2025-04-23 11:13:44 -07:00
Oscar Hinton
3aa1378c99 Eliminate dead code from trial-initiation (#14378) 2025-04-23 16:59:14 +02:00
Alec Rippberger
71e720e945 fix(auth): clarify 2FA security key verification text
Updates user interface text to improve clarity when prompting for security key verification during two-factor authentication.

Ref: PM-20055
2025-04-22 23:09:07 -05:00
Bernd Schoolmann
e231286f37 [PM-19731] Refactor encrypt service to expose key wrapping (#14080)
* Refactor encrypt service to expose key wrapping

* Fix build

* Undo ts strict removal

* Fix wrong method being used to encrypt key material

* Rename parameters and remove todo

* Add summary to encrypt

* Update libs/common/src/key-management/crypto/services/encrypt.service.implementation.ts

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

* Update libs/common/src/key-management/crypto/services/encrypt.service.implementation.ts

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

* Update libs/common/src/key-management/crypto/services/encrypt.service.implementation.ts

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

* Update libs/common/src/key-management/crypto/services/encrypt.service.implementation.ts

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

* Update libs/common/src/key-management/crypto/abstractions/encrypt.service.ts

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

* Update libs/common/src/key-management/crypto/services/encrypt.service.implementation.ts

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

* Add tests for unhappy paths

* Add test coverage

* Add links

---------

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>
2025-04-22 13:56:39 +00:00
bw-ghapp[bot]
2aeca29b20 Autosync the updated translations (#14331)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
2025-04-22 11:35:57 +00:00
Thomas Avery
3a8045d7d0 [PM-19215] Fix Firefox extension biometric unlock autoprompt (#14254)
* Remove restriction from account security component

* Add the ability to manage pop-out to the LockComponentService

* Have the Firefox extension pop-out on biometric auto-prompt unlock
2025-04-21 14:08:09 -05:00
Github Actions
1b6f75806d Bumped client version(s) 2025-04-21 14:22:41 +00:00
Bernd Schoolmann
5dfa0eb91a [PM-20277] Disable fingerprint on org invite (#14285) 2025-04-19 16:10:57 +02:00
cyprain-okeke
c798e1f10d [PM-18250]Do not default account credit amount (#13719)
* Set the default value to zero

* Remove the 20 dollar for org
2025-04-18 21:21:01 +01:00
Maciej Zieniuk
4da03821ce move key connector components to KM team ownership (#14008) 2025-04-18 08:23:52 -07:00
Bryan Cunningham
cbab354c0e Hide bit-icon component from screen readers by default (#14295)
* adds aria-hidden to bit-icon when no aria-label provided

* add ariaLabel to logo svg usages

* add ariaLabel documentation

* default ariaLable value to undefined

* add logo label to translations

* adds i18n pipe to component

* Add binding to example docs
2025-04-18 10:38:19 -04:00
Jonas Hendrickx
e026799071 [PM-13128] Enable Breadcrumb Policies (#13584)
* [PM-13128] Enable Breadcrumb Policies

* [PM-13128] Enable Breadcrumb Policies

* [PM-13128] wip

* [PM-13128] wip

* [PM-13128] wip

* [PM-13128] wip

* remove dead code

* wip

* wip

* wip

* refactor

* Fix for providers

* revert to functional auth guard

* change prerequisite to info variant

* address comment

* r

* r

* r

* tests

* r

* r

* fix tests

* feedback

* fix tests

* fix tests

* Rename upselling to breadcrumbing

* Address feedback

* Fix build & tests

* Make the guard callback use Observable instead of a promise

* Pm 13128 suggestions (#14041)

* Rename new enum value

* Show the upgrade button when breadcrumbing is enabled

* Show mouse pointer when cursor is hovered above badge

* Do not make the dialogs overlap

* Align badge middle

* Gap

* Badge should be a `button` instead of `span`

* missing button@type

---------

Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>
Co-authored-by: Alex Morask <amorask@bitwarden.com>
2025-04-18 09:57:27 -04:00
Jonas Hendrickx
e0df1ecf0c [PM-19180] Calculate sales tax correctly for sponsored plans (#14129)
* [PM-19180] Sponsored family org no sales tax because they're free

* [PM-19180][DRAFT] Calculate sales tax correctly for sponsored plans with additional storage

---------

Co-authored-by: Conner Turnbull <133619638+cturnbull-bitwarden@users.noreply.github.com>
2025-04-17 11:33:13 -04:00
Andreas Coroiu
ede4776433 [PM-18043] Add serialization/deserialization support (#13804)
* feat: add support for serialization-PR tweaks

* feat: update sdk version
2025-04-17 16:25:35 +02:00
Leslie Tilton
6c930deefe Migrate bootstrap styling to use tailwind while keeping the same styling (#14203) 2025-04-17 09:08:39 -05:00
cyprain-okeke
fa268437ef [PM-17774] Build page for admin sponsored families (#14243)
* Added nav item for f4e in org admin console

* shotgun surgery for adding "useAdminSponsoredFamilies" feature from the org table

* Resolved issue with members nav item also being selected when f4e is selected

* Separated out billing's logic from the org layout component

* Removed unused observable

* Moved logic to existing f4e policy service and added unit tests

* Resolved script typescript error

* Resolved goofy switchMap

* Add changes for the issue orgs

* Added changes for the dialog

* Rename the files properly

* Remove the commented code

* Change the implement to align with design

* Add todo comments

* Remove the comment todo

* Fix the uni test error

* Resolve the unit test

* Resolve the unit test issue

* Resolve the pr comments on any and route

* remove the any

* remove the generic validator

* Resolve the unit test

* Resolve the wrong message

* Resolve the duplicate route

---------

Co-authored-by: Conner Turnbull <cturnbull@bitwarden.com>
Co-authored-by: Conner Turnbull <133619638+cturnbull-bitwarden@users.noreply.github.com>
2025-04-17 14:59:09 +01:00
cyprain-okeke
6bd3fceaa1 fix: align upgrade badge with header text in Event Logs (#14213) 2025-04-16 17:27:48 +01:00
Conner Turnbull
db16c98a1d [PM-17773] Added "Sponsored Families" dropdown nav item in the admin console (#14029)
* Added nav item for f4e in org admin console

* shotgun surgery for adding "useAdminSponsoredFamilies" feature from the org table

* Resolved issue with members nav item also being selected when f4e is selected

* Separated out billing's logic from the org layout component

* Removed unused observable

* Moved logic to existing f4e policy service and added unit tests

* Resolved script typescript error

* Resolved goofy switchMap

---------

Co-authored-by: cyprain-okeke <108260115+cyprain-okeke@users.noreply.github.com>
2025-04-16 11:58:54 -04:00
Vijay Oommen
9cffc3b4f4 [PM-20118] Capitalize risk insights (#14291) 2025-04-16 08:16:40 -05:00
Shane Melton
8258ea39b0 [PM-18903] Desktop sync issues (#13681)
* [PM-18707] Use different BroadcasterSubscriptionId in base view component to avoid collision with desktop view component

* [PM-18707] Use userId instead of payloadUserId for cipher notification syncs

* [PM-19032] Live Sync on Desktop (#13851)

* migrate the vault-items to an observables rather than async/promises

- this helps keep data in sync with the service state and avoids race conditions

* migrate the view component to an observables rather than async/promises

- this helps keep data in sync with the service state and avoids race conditions

* decrypt saved cipher from server

* bump timeout for upserting ciphers

* mark `go` as async in desktop vault

- previously it was a floating promise

* Revert "mark `go` as async in desktop vault"

This reverts commit fd28f40b18.

* Revert "bump timeout for upserting ciphers"

This reverts commit e963acc377.

* move vault utilities to `common` rather than `lib` to avoid circular dependencies

* use `perUserCache$` for `cipherViews$` to avoid new subscriptions from being created

* use userId from observable rather than locally set to be the most up to date

* [PM-18707] Add clearBuffer$ input to perUserCache$ helper so that  the internal share replay buffers can be cleared

* [PM-18707] Rework forceCipherViews$ to clearBuffer$ refactor

- Add dependency for cipherDecryptionKeys$ for the cipherViews so that decryption is never attempted without keys

* [PM-18707] Add overload to perUserCache to satisfy type checker

* [PM-18707] Fix overloads

* [PM-18707] Add check for empty failed to decrypt ciphers

* [PM-18707] Mark vault component for check after observable emits.

The cipherViews$ observable now persists between subscriptions, meaning that updates via the sync push notifications can occur outside the AngularZone causing delays in updating the view.

---------

Co-authored-by: Nick Krantz <125900171+nick-livefront@users.noreply.github.com>
Co-authored-by: Nick Krantz <nick@livefront.com>
2025-04-15 12:17:41 -07:00
Bernd Schoolmann
b09305577f [PM-19603] Change asymmetric interface to only allow key encapsulation (#14046)
* Change asymmetric interface to only allow key encapsulation

* Fix naming

* Clean up naming

* Update libs/common/src/key-management/crypto/abstractions/encrypt.service.ts

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

* Update libs/common/src/key-management/crypto/services/encrypt.service.implementation.ts

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

* Update libs/common/src/key-management/crypto/abstractions/encrypt.service.ts

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

* Fix test

---------

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>
2025-04-15 16:39:02 +02:00
bw-ghapp[bot]
c7804c1032 Autosync the updated translations (#14283)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-04-15 13:34:13 +02:00
bw-ghapp[bot]
eb9812091c Autosync the updated translations (#14234)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-04-15 11:59:48 +02:00
Alec Rippberger
f1a2acb0b9 fix: [PM-20180] add OrganizationDuo to dialog title function
Fix issue where modal was not displayed when clicking Manage option for 2FA on Organizations. This adds the OrganizationDuo case to the dialogTitle method to properly handle this provider type.

PM-20180
2025-04-14 09:37:52 -05:00
Ike
b90ede079d [PM-18888] Fix duo redirect URL checks (#14174)
* fix(PM-18888) : Create more strict checking of redirectURL to protect against open redirect attacks using regex.

* fix : modify comments and check for embedded credentials.

* feat : add testability to duo-redirect connector

* fix : fixing strict typing; Removed styling from duo-redirect.ts which allows us to test without adding additional files and configurations for jest.

* fix : remove duo-redirect.scss
2025-04-11 22:55:02 -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
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
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
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
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
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
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
Github Actions
2e7b50ed2f Bumped client version(s) 2025-04-07 10:58:28 +00: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