1
0
mirror of https://github.com/bitwarden/browser synced 2026-02-08 12:40:26 +00:00
Commit Graph

562 Commits

Author SHA1 Message Date
Jared
3333e5696d Update collection dialog to conditionally display "view" or "edit" title based on dialog state; add "viewCollection" translation to messages.json (#18724) 2026-02-03 10:19:30 -05:00
rr-bw
27c6aa8121 refactor(input-password-flows): [Auth/PM-27086] Use new KM Data Types in InputPasswordComponent flows - Account Recovery (#18423)
Update Account Recovery flow to use new KM data types from `master-password.types.ts` / `MasterPasswordService`:
- `MasterPasswordAuthenticationData`
- `MasterPasswordUnlockData`

This allows us to move away from the deprecated `makeMasterKey()` method (which takes email as salt) as we seek to eventually separate the email from the salt.

Changes are behind feature flag: `pm-27086-update-authentication-apis-for-input-password`
2026-02-02 09:06:04 -08:00
sven-bitwarden
9e36c19515 Separates policy response model for individual policy data (#18377) 2026-01-29 14:11:31 -06:00
Jared McCannon
ae64706256 [PM-30891] - Create My Items On Restore (#18454)
* Added encrypted default collection name to new feature flagged restore user methods/endpoint.

* corrected filter to use null check with imperative code
2026-01-29 13:56:35 -06:00
Jared
136705ac08 Refactor autofill policy naming and update related translations (#18628)
- Renamed `activateAutofill` to `activateAutofillPolicy` in the policy order map and component.
- Updated corresponding translation keys in `messages.json` for consistency.
- Adjusted warning message in the `activate-autofill.component.html` to reflect the new naming convention.
2026-01-28 17:27:16 +00:00
Will Martin
5dc49f21d2 [CL-82] rename bit-icon to bit-svg; create new bit-icon component for font icons (#18584)
* rename bit-icon to bit-svg; create new bit-icon for font icons

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* find and replace current usage

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* add custom eslint warning

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* fix incorrect usage

* fix tests

* fix tests

* Update libs/components/src/svg/index.ts

Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>

* Update libs/eslint/components/no-bwi-class-usage.spec.mjs

Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>

* update component api

* update class name

* use icon type in iconButton component

* update type Icon --> BitSvg

* fix bad renames

* fix more renames

* fix bad input

* revert iconButton type

* fix lint

* fix more inputs

* misc fixes

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* fix test

* add eslint ignore

* fix lint

* add comparison story

---------

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
2026-01-28 11:36:27 -05:00
Jared
6d0f0b62f2 [PM-31155] reorder policies in policies page (#18564)
* Refactor policy edit registration to centralize ownership and improve organization. Reordered policies for clarity and added new policies for enhanced functionality.

* Add PolicyOrderPipe for sorting policies and update policies component to utilize it

* Add organizationDataOwnership to POLICY_ORDER_MAP for policy sorting

* Fix PR comments
2026-01-28 10:24:06 -05:00
Brandon Treston
c2da621663 [PM-28413] Remove feature flagged logic (#18566)
* clean up flagged logic

* fix test
2026-01-28 09:31:55 -05:00
Jared
af2d3c945b Fix empty toast message when owner deletes himself (#18603) 2026-01-27 15:51:46 -05:00
Jared
122bd98643 Refactor access tab label in collection dialog component to use a getter for improved readability and localization support. (#18537) 2026-01-27 13:38:22 -05:00
Jared McCannon
3e344212d6 [PM-29805] - Rollback single org enablement when auto confirm enablement fails. (#18572) 2026-01-27 12:18:37 -06:00
Rui Tomé
71db33d45d [PM-28842] Add max length validation to master password policy form (#18237)
* Update master password policy dialog to limit the minimum length to 128

* Update master password policy to use dynamic maximum length from Utils

* Add unit tests for MasterPasswordPolicyComponent to validate password length constraints and scoring
2026-01-26 11:38:10 +00:00
Jackson Engstrom
57378f1cb3 [PM-20079] Updates header new/invite members button text spacing 2026-01-23 08:48:42 -08:00
Brandon Treston
65abeb51aa [PM-30500] Centralize Organization Data Ownership (#18387)
* remove deprecated OrganizationDataOwnership components, promote vNext

* WIP: add new components and copy

* multi step dialog for organization- data ownership

* disable save

* clean up copy, fix bug

* copy change, update button text

* update copy

* un-rename model

* use policyApiService

* simplify style
2026-01-22 14:47:14 +10:00
Brandon Treston
5a95c34330 [PM-26463] Refactor members components (#17863)
* refactor WIP

* fix type issue

* continue refactor

* continue refactor, add tests

* refactor WIP: Rebase bulk reinvite

* fix type issue

* continue refactor: rebase bulk reinvite

* continue refactor, add tests: Rebase bulk reinvite

* fix test

* cleanup, address claude feedback

* fix race condition

* continue refactor

* fix provider confirm

* refactor providers to use memberActionsService

* prevent duplicate member actions

* wip

* run prettier

* separate provider and members actions, improve error handling, add tests

* refactor member export

* refactor edit, fix export service and tests
2026-01-20 09:16:41 -05:00
Shane Melton
14428a5a8c [PM-30904] Fix VaultFilterService abstraction import in AC Vault (#18407) 2026-01-16 10:57:56 -08:00
Leslie Xiong
44bdaf71b3 Desktop/pm 18769/migrate vault filters (#17919)
Migrated vault filters to new v3 vault's navigation

* Decoupled existing vault filtering from vault component by using routed params with routed-vault-filter-bridge
* Converted vault filters to standalone components
* Removed extending filter Base Components from deprecated /libs/angular library and handled logic directly
* Moved shared 'models' and 'services' directories from web-vault into /libs/vault
2026-01-15 16:17:00 +01:00
Max
0396b4e054 Add CSV export functionality to organization members page (#17342)
* Add CSV export functionality to organization members page

* Remove unnecessary async from getMemberExport method

* Changed button position and style

* fixed button alignment

* updates based on feedback from product design

* refactor, cleanup

* fix DI

* add default to user status pipe

* add missing i18n key

* copy update

* remove redundant copy

---------

Co-authored-by: Brandon <btreston@bitwarden.com>
2026-01-08 15:09:52 +00:00
Brandon Treston
bb318ee22e Ac/pm 26364 extension UI for auto confirm (#17258)
* create nav link for auto confirm in settings page

* wip

* WIP

* create auto confirm library

* migrate auto confirm files to lib

* update imports

* fix tests

* fix nudge

* cleanup, add documentation

* clean up

* cleanup

* fix import

* fix more imports

* add tests

* design changes

* fix tests

* fix tw issue

* fix typo, add tests

* CR feedback

* more clean up, fix race condition

* CR feedback, cache policies, refactor tests

* run prettier with updated version

* clean up duplicate logic

* clean up

* fix test

* add missing prop for test mock

* clean up
2026-01-07 15:27:41 -05:00
Vincent Salucci
86764d807a [PM-22434] Remove CreateDefaultLocation feature flag references and definition (#18057)
* chore: remove ff from vault-popup-list-filters.service, refs PM-22434

* chore: remove ff from confirm.command, refs PM-22434

* chore: remove ff from bulk-confirm-dialog.component, refs PM-22434

* chore: remove ff from member-actions.service and clean up leftover imports, refs PM-22434

* chore: remove ff from policy-edit-dialog.component, refs PM-22434

* chore: remove ff from organization-data-ownership.component, refs PM-22434

* chore: remove ff from vnext-organization-data-ownership.component, refs PM-22434

* chore: remove ff from vault-filter.service, refs PM-22434

* chore: remove ff from vault-filter.service (libs), refs PM-22434

* chore: remove ff from export.component, refs PM-22434

* chore: update observeMyItemsExclusionCriteria method documentation comments, refs PM-22434

* chore: remove ff from item-details-section.component, refs PM-22434

* chore: remove ff definition, refs PM-22434

* fix: remove configService from superclasses, refs PM-22434

* chore: update injection for VaultPopupListFilters service instantiation, refs PM-22434

* chore: update ConfirmCommand instantiation, refs PM-22434

* chore: update import order in member-actions.service, refs PM-22434

* fix: constructor argument update to amend merge conflict, refs PM-22434

* chore: remove unnecessary feature flag related tests for confirm user, refs PM-22434

* fix: remove unused services from member-actions.service.spec, refs PM-22434
2026-01-05 16:25:57 -06:00
Vicki League
dc1ecaaaa2 [PM-29819][CL-806] Fix focus mgmt on search and filter page navigations (#18007) 2025-12-22 16:55:20 -05:00
Alex Dragovich
930cb9ab96 [PM-29896] specify noun or verb for Import / Export terms (#18012)
* [PM-29896] specify noun or verb for Import / Export terms

* [PM-29896] adjust verb to noun
2025-12-17 11:24:44 -08:00
Alex Dragovich
14dd732b52 [PM-23258] changing verbiage from import data to import items (#17123)
* [PM-23258] changing verbiage from import data to import items

* [PM-23258] Removing vault and data from import and export titles, navs, and buttons

* [PM-23258] more verbiage changes

* [PM-23258] reverting unnecessary change

* [PM-23258] removing unused text from messages json files

* [PM-23258] small text changes from design

* [PM-23258] including secrets manager changes
2025-12-12 09:43:34 -08:00
Brandon Treston
50dff4e032 [PM-28422] Client batching for member actions (#17805)
* add member action batching, feature flag, and implement batching for reinvite

* clean up, fix tests, remove redundant tests

* cleanup

* clean up tests

* bump cloud limit to 8k
2025-12-11 10:30:05 -05:00
renovate[bot]
7f892cf26a [deps] Autofill: Update prettier to v3.7.3 (#17853)
* [deps] Autofill: Update prettier to v3.6.2

* fix: [PM-23425] Fix prettier issues related to dependency updte

Signed-off-by: Ben Brooks <bbrooks@bitwarden.com>

* [deps] Autofill: Update prettier to v3.6.2

* [deps] Autofill: Update prettier to v3.7.3

* [PM-29379] Fix prettier issues found with the updated Prettier 3.7.3

Signed-off-by: Ben Brooks <bbrooks@bitwarden.com>

---------

Signed-off-by: Ben Brooks <bbrooks@bitwarden.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ben Brooks <bbrooks@bitwarden.com>
2025-12-10 10:57:36 -06:00
Rui Tomé
a0943c3100 [PM-28252] Increase Bulk Reinvite limit for cloud (#17587)
* Add IncreaseBulkReinviteLimitForCloud feature flag

* Enhance PeopleTableDataSource with bulk operation limits and feature flag integration

- Introduced a new feature flag to increase the bulk reinvite limit for cloud environments.
- Added an observable to determine if the increased limit is enabled based on the feature flag and environment.
- Updated the logic for enforcing checked user limits in bulk operations, allowing for a maximum of 4000 users when the feature flag is active.
- Refactored the constructor to initialize the new observable and manage the maximum allowed checked count dynamically.

* Add unit tests for PeopleTableDataSource to validate user limit enforcement and status counts

* Refactor MembersComponent to integrate increased bulk limit feature

- Added support for conditional user limit enforcement in bulk operations based on a feature flag.
- Introduced new dependencies for ConfigService and EnvironmentService to manage configuration settings.
- Updated methods to utilize the new getCheckedUsers function, which enforces limits when the feature is enabled.
- Refactored data source initialization to accommodate the new logic for handling checked users.

* Refactor enforceCheckedUserLimit method in PeopleTableDataSource to use filtered data for user limit enforcement and to keep checked the top rows.
Removed unnecessary comments and improved readability.

* Add bulk reinvite success messages to localization files

This update introduces new localization keys for bulk reinvite success notifications, including a general success message and a limited success message that provides details on the number of users re-invited and those excluded due to limits. This enhances user feedback during bulk operations.

* Enhance bulk reinvite functionality with toast notifications

This update modifies the MembersComponent to display success messages via toast notifications when the feature flag for increased bulk limits is enabled. If the limit is exceeded, a detailed message is shown, otherwise a general success message is displayed. The legacy dialog is retained for cases when the feature flag is disabled, ensuring consistent user feedback during bulk reinvite operations.

* Rename MaxBulkReinviteCount to CloudBulkReinviteLimit

* Refactor user retrieval logic in MembersComponent to conditionally enforce bulk limits

This update modifies the MembersComponent in both the admin console and provider management sections to replace the direct calls to getCheckedUsers() with a conditional check for increased bulk limit feature. If enabled, it enforces user limits; otherwise, it retrieves all checked users. The deprecated getCheckedUsers method has been removed to streamline the code.

* Add constructor to MembersTableDataSource for improved dependency injection

This update introduces a constructor to the MembersTableDataSource class in both the admin console and provider management sections, allowing for better dependency injection of ConfigService, EnvironmentService, and DestroyRef. This change enhances the overall structure and maintainability of the code.

* Refactor PeopleTableDataSource and MembersComponent to implement new bulk limit logic

This update modifies the PeopleTableDataSource to introduce a new property for managing increased bulk limits and refactors the MembersComponent to utilize this logic. The enforcement of user limits during bulk operations is now conditional based on the feature flag, allowing for a more flexible handling of user selections. Additionally, the method for limiting and unchecking excess users has been updated for clarity and efficiency.

* Refactor PeopleTableDataSource tests to update limit enforcement logic

This update modifies the test cases for the PeopleTableDataSource to reflect the new method for limiting and unchecking excess users. The method name has been changed from `enforceCheckedUserLimit` to `limitAndUncheckExcess`, and the tests have been adjusted accordingly to ensure they accurately validate the new functionality. Additionally, unnecessary tests have been removed to streamline the test suite.

* Change CloudBulkReinviteLimit back to 4000

* Refactor MembersComponent to utilize new getCheckedUsersInVisibleOrder method

This update modifies the MembersComponent to conditionally retrieve checked users based on the increased bulk limit feature. If enabled, it uses the new getCheckedUsersInVisibleOrder method to maintain visual consistency in the filtered/sorted table view. This change enhances the handling of user selections during bulk operations.

* Refactor PeopleTableDataSource to use Signals for increased bulk limit feature and update related tests. Removed unused imports and dependencies on DestroyRef in MembersTableDataSource components.

* Refactor MembersComponent to remove unused Signal for increased bulk limit and directly utilize dataSource method for feature flag checks.

* Implement getCheckedUsersWithLimit method to streamline user retrieval based on feature flag; update MembersComponent to utilize this new method for bulk actions.
2025-12-08 15:30:29 +00:00
Tom
d32365fbba [PM-29164] Access Intelligence display for only enterprise (#17807)
* Access Intelligence display for only enterprise

* modifying the access intelligence routing to properly match. Added documentation.

* tasks remove useriskinsights flag

* fixing tasks test cases

* tasks should only check for enterprise

* fixing uncommitted changes

* reverting unecessary change from all activites

* adding back missing test case
2025-12-04 19:04:26 -05:00
Nick Krantz
dab1a37bfe PM-24535 Web premium upgrade path for archive (#16854)
* add premium badge to web filter when the user does not have access to premium

* remove feature flag pass through in favor of showing/hiding archive vault observable

* refactor archive observable to be more generic

* add archive premium badge for the web

* show premium badge inline for archive filter

* show premium subscription ended message when user has archived ciphers

* fix missing refactor

* remove unneeded can archive check

* reference observable directly

* reduce the number of firstValueFroms by combining observables into a single stream

* fix failing tests

* add import to storybook

* update variable naming for premium filters

* pass event to `promptForPremium`

* remove check for organization

* fix footer variable reference

* refactor back to `hasArchiveFlagEnabled$` - more straight forward to the underlying logic

* update archive service test with new feature flag format
2025-12-03 14:19:26 -06:00
Leslie Tilton
399a5147a9 Remove additional flag from organization layout html component (#17755) 2025-12-01 13:52:03 -06:00
Vicki League
10424e227b [CL-717][PM-27966] Update to Angular 20 and Storybook 9 (#17638) 2025-12-01 14:15:58 -05:00
Brandon Treston
e1d14ca7bd [PM-28350] Refactor policies component (#17636)
* refactor policies component

* add tests

* cleanup

* clean up

* change trackBy to

* change detetction
2025-12-01 10:20:28 -05:00
Thomas Rittson
63812009d7 [PM-25913] Fix owners unable to rename provider-managed organization (#17482)
Update to match new API: send null properties
for organization properties that are unchanged
2025-11-26 07:37:18 +10:00
Dave
daf7b7d2ce fix(two-factor) [PM-21204]: Users without premium cannot disable premium 2FA (#17134)
* refactor(two-factor-service) [PM-21204]: Stub API methods in TwoFactorService (domain).

* refactor(two-factor-service) [PM-21204]: Build out stubs and add documentation.

* refactor(two-factor-service) [PM-21204]: Update TwoFactorApiService call sites to use TwoFactorService.

* refactor(two-fatcor) [PM-21204]: Remove deprecated and unused formPromise methods.

* refactor(two-factor) [PM-21204]: Move 2FA-supporting services into common/auth/two-factor feature namespace.

* refactor(two-factor) [PM-21204]: Update imports for service/init containers.

* feat(two-factor) [PM-21204]: Add a disabling flow for Premium 2FA when enabled on a non-Premium account.

* fix(two-factor-service) [PM-21204]: Fix type-safety of module constants.

* fix(multiple) [PM-21204]: Prettier.

* fix(user-verification-dialog) [PM-21204]: Remove bodyText configuration for this use.

* fix(user-verification-dialog) [PM-21204]: Improve the error message displayed to the user.
2025-11-21 10:35:34 -05:00
Brandon Treston
a5caa194cd fix copy (#17504) 2025-11-20 09:51:40 -05:00
Alex Morask
de42cf303f [PM-27925] Refactor StripeService to allow more than one instance (#17467)
* Refactor StripeService to allow more than one instance per scope

* Fix linting issue

* Claude's feedback
2025-11-19 12:57:00 -06:00
Brandon Treston
28dc244fd3 fix error in console (#17468) 2025-11-19 13:32:50 -05:00
Mark Youssef
a55d0f02f2 [CL-672] update mobile design of dialog (#14828)
---------

Co-authored-by: Vicki League <vleague@bitwarden.com>
2025-11-13 21:59:03 -05:00
Kyle Denney
e3acd27dec [PM-24284] - milestone 3 (#17230)
* first draft

# Conflicts:
#	apps/web/src/app/billing/individual/upgrade/upgrade-payment/services/upgrade-payment.service.ts
#	apps/web/src/app/billing/organizations/organization-plans.component.ts
#	libs/common/src/billing/services/subscription-pricing.service.ts
#	libs/common/src/enums/feature-flag.enum.ts

* more filtering for pricing cards

* prettier

* tests

* tests v2
2025-11-10 11:50:49 -06:00
Rui Tomé
cb863b44d5 [PM-26430] Remove Type property from PolicyRequestModel to use route parameter only (#16960)
* Remove Type property from PolicyRequestModel to use route parameter only

* Remove PolicyType property from policy update request in auto-confirm edit policy dialog

* Run prettier
2025-11-10 15:27:48 +00:00
Brandon Treston
19626d1b3e [PM-26363] Add one time setup dialog for auto confirm (#17104)
* add one time setup dialog for auto confirm

* add one time setup dialog for auto confirm

* fix copy, padding, cleanup observable logic

* cleanup

* cleanup

* refactor

* clean up

* more cleanup

* Fix deleted files

This reverts commit 7c18a5e512.
2025-11-07 15:58:39 -05:00
Maximilian Power
e9a25d4e8c [PM-27722] Deprecate risk insights terminology and rename to access intelligence (#17170)
* Deprecate risk insights terminology and rename to access intelligence
2025-11-06 18:53:32 +00:00
Vicki League
97aef75cb4 [PM-26984] Use medium instead of semibold or bold (#17190) 2025-11-05 13:08:55 +10:00
Brandon Treston
5912292680 [PM-26374] Remove emergency access when auto confirm is enabled (#17020)
* add router guard

* use real values, jsdoc

* fix route guard logic, hide UI nav item

* fix race condition

* refactor guard from org feature to policy

* update copy
2025-11-03 09:58:17 -05:00
Brandon Treston
8e1a6a3c80 mange policies custom permission edge case, copy update (#17083) 2025-11-03 09:53:28 -05:00
Ben Brooks
b5a7379ea9 feat(policies): PM-25570 Admin Console UI for URI Match Default Policy (#16752)
Admin Console UI for URI Match Default Policy

---------

Signed-off-by: Ben Brooks <bbrooks@bitwarden.com>
Co-authored-by: Jonathan Prusik <jprusik@users.noreply.github.com>
2025-10-31 13:50:45 -07:00
Brandon Treston
2da0b48c3d [PM-27688] fix events page not loading (#17166)
* remove unneeded rxjs filter

* add check for canManage

* add null check

* fix provider ID, clean up
2025-10-31 20:35:59 +00:00
Brandon Treston
98622a3f73 remove unneeded rxjs filter (#17165) 2025-10-31 19:46:04 +00:00
Brandon Treston
75846e8fb1 add decryption logic (#17106) 2025-10-29 15:04:37 -04:00
SmithThe4th
4d00d0caa5 Fixed edit menu on admin console and removed favorite item on the admin console (#16982) 2025-10-29 10:31:21 -04:00
Brandon Treston
c1a988c2ab fix DI (#17076) 2025-10-28 12:25:56 -04:00