1
0
mirror of https://github.com/bitwarden/browser synced 2026-02-20 11:24:07 +00:00
Commit Graph

876 Commits

Author SHA1 Message Date
Leslie Tilton
30efb2dc2f Update Risk Insights models to follow architecture (#17356)
* Member details model updates

* Add application model for risk insights reports following company architecture

* Add summary model for risk insights reports following company architecture

* Updated comment in risk insights summary data

* Add models following company architecture for risk insights generated report data

* Use deep jsonify for class json structure

* Use deepjsonify for class partial json structure

* Add risk insights model following client model architecture

* Fix type check errors
2026-02-17 09:52:07 -08:00
Vijay Oommen
41ea3175bf [PM-29621] Changed error message to indicate lack of permissions (#18528) 2026-02-17 09:52:06 -08:00
Brad
f56592ad09 [PM-30543] Add select all checkbox to Access Intelligance Applications table (#18682)
Adds a "Select all" checkbox to the table in the Access Intelligence applications tab. This allows users to quickly select or deselect all applications currently showing in the table for marking as critical apps.
2026-02-17 09:52:06 -08:00
Graham Walker
258e1afee4 pm-31420 Add download button to export Access Intelligence table into csv report (#18802)
* pm-31420 add download button feature to new applications tab for access intelligence feature

* PM-31420 fixing unit tests

* pm-31420 adding types

* pm-31420 fixing types and merging in main
2026-02-17 09:52:05 -08:00
Vijay Oommen
5000d394b0 PM-30456 setup the search bar to grow (#18780) 2026-02-17 09:52:02 -08:00
Jared
26087b846c [PM-16694] ac integration page background fill missing (#18508)
* Fixing some tech debt before implementing actual fix of implementation

* Adding new components to handle the different routes for the integrations page to make use of bit-tab-nav-bar to follow background-fill UI spec

* Implement organization integrations page with routing and state management

- Added routing for organization integrations including device management, event management, single sign-on, and user provisioning.
- Created OrganizationIntegrationsState to manage integrations and organization data.
- Introduced OrganizationIntegrationsResolver for preloading organization and integration data.
- Updated components to utilize the new state management and resolver.
- Refactored integration routes to follow updated naming conventions.

* Refactor organization integrations components to use signals and observables; enhance async handling in templates and add debug logging

* Enhance organization integrations module with routing updates and state management improvements

- Added OrganizationIntegrationsState for better state management.
- Updated routing to redirect to single sign-on by default.
- Integrated OrganizationIntegrationsResolver for preloading data.
- Refactored components to utilize new state management and improved async handling.

* Refactor SingleSignOnComponent to remove OnInit lifecycle and debug logging

- Simplified SingleSignOnComponent by removing the OnInit implementation.
- Eliminated debug logging for integrations in ngOnInit.
- Cleaned up imports for better readability.

* Refactor WebHeaderComponent to simplify background handling

- Removed the useAltBackground input signal from WebHeaderComponent.
- Updated the HTML template to conditionally apply styles based solely on the child element count of the tabs container.

* Refactor organization integrations components for improved readability and performance

- Updated HTML templates to remove optional chaining for organization properties.
- Removed unnecessary debug logging and comments in the OrganizationIntegrationsResolver.
- Simplified DeviceManagementComponent by eliminating the OnInit lifecycle hook.

* Refactor organization integrations components to use direct state properties

- Updated components to access organization and integrations directly from state instead of using observables.
- Simplified HTML templates by removing async pipes and using direct function calls for better readability.
- Ensured consistent naming conventions for organization and integrations variables across components.

* Enhance WebHeaderComponent by adding bitTypography attribute to the title element for improved styling consistency

* Refactor organization state to use 'undefined' instead of 'null' for organization signal and remove OnInit lifecycle hook from UserProvisioningComponent for cleaner code.

* Refactor EventManagementComponent to remove OnInit lifecycle hook for cleaner code and improved readability.

* Update organization state to set organization value to 'undefined' when null is provided, enhancing state management consistency.

* Update WebHeaderComponent to allow optional title and icon inputs, enhancing flexibility in header configuration.

* Update WebHeaderComponent to allow account property to be nullable, improving type safety and handling of user data.
2026-02-17 09:52:01 -08:00
Jared
7a3bfa5f95 [PM-29771] Make invitation non-plural if only 1 member selected (#18684)
* Make invitation non-plural if only 1 member selected

* Add isSingleInvite as per Jimmy's suggestion
2026-02-17 09:52:01 -08:00
Jared
9462184e17 Add permission guard and only allow provider admin to visit billing page for provider portal users (#18639) 2026-02-17 09:52:00 -08:00
renovate[bot]
0846579eb9 [deps] Vault: Update @koa/router to v15 (#18086)
* [deps] Vault: Update @koa/router to v15

* update router imports from `@koa/router`

* remove `@types/koa__router` no longer needed with update to `@koa/router`

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Nick Krantz <125900171+nick-livefront@users.noreply.github.com>
Co-authored-by: Nick Krantz <nick@livefront.com>
2026-02-17 09:51:59 -08:00
Vijay Oommen
c064e80230 [PM-30547] Table empty state message (#18752) 2026-02-17 09:51:58 -08:00
Vijay Oommen
a3ced374da [PM-31584] Minor UI fixes (#18736) 2026-02-17 09:51:56 -08:00
Daniel James Smith
42ecd22067 [PM-29239] Create proxy cookie redirect connector (#18476)
* Create a subfolder for platform-owned connectors and ensure it's included in the web builds

* Add platform as codeowner of apps/web/src/connectors/platform

* Create proxy-cookie-redirect connector

* Create section within CODEOWNERS for Web connectors

* Swap order of codeowners

* Use kebap-style route

* Update url to redirect to

* Add override to test locally

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2026-02-17 09:51:53 -08:00
Vijay Oommen
43d7c910bc [PM-30544] Added Critical app badge to Access Intelligence (#18658) 2026-02-17 09:39:33 -08:00
Vijay Oommen
1311b0bf4c PM-30538 replicated app-table-scrollable shared component for milestone 11 (#18655) 2026-02-17 09:39:29 -08:00
Vijay Oommen
f9122cd68f PM-30541 remove 3 callout tiles (#18648) 2026-02-17 09:39:29 -08:00
Brad
a2487059ab [PM-29952] Fix: Access Intelligence password change tasks progress bar (#18488)
* check tasks completed after report generation

* fix type safety
2026-02-17 09:39:27 -08:00
Vijay Oommen
924b777e36 PM-30539 created new component and added a filter (#18630) 2026-02-17 09:39:27 -08:00
Brad
e63b8fdd81 [PM-30918] Migrate DIRT components to new Angular control flow syntax (#18416)
* dirt: migrate apps/web components to new control flow

* dirt: update control flow bitwarden licensed code

* consolidate @if statements, use @else where appropriate

* more cleanup

* consolidate conditionals

* remove unnecessary conditional
2026-02-17 09:39:26 -08:00
Jared
97eee2edb9 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-02-17 09:39:26 -08:00
Will Martin
de2f4a04fc [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-02-17 09:39:25 -08:00
Brandon Treston
0f6e477b36 [PM-28413] Remove feature flagged logic (#18566)
* clean up flagged logic

* fix test
2026-02-17 09:39:24 -08:00
Jared
654f898659 Update loading spinner visibility in events component (#18560) (#18574) 2026-02-17 09:39:24 -08:00
Jared
22c1887990 [PM-27909] dialog improvements for claim domain (#18535)
* Update domain status message from "Under verification" to "Pending" in localization and adjust corresponding template reference

* Update domain status message from "Under verification" to "Pending" in the admin console template

* Add domain verification instructions to the admin console dialog

Enhanced the domain add/edit dialog by including detailed instructions for the automatic domain claim process when the domain is not verified. Removed the previous callout component for a more streamlined user experience.

* Add new localization messages for automatic domain claim process

Included detailed instructions for the automatic domain claim process, covering the steps for claiming a domain, account ownership change, and consequences of unclaimed domains. This enhances user guidance during domain management.

* Refactor automatic domain claim process localization messages

Updated localization keys for the automatic domain claim process to improve clarity and consistency. Removed redundant messages and streamlined the instructions displayed in the admin console dialog for better user experience.
2026-02-17 09:39:23 -08:00
Jared
40758c24ec [PM-16863] Update "auto-fill" to "autofill" for org policies (#18483)
* Fixes typo in messages.json from auto-fill to autofill to match company preference

* Strings have to be immutable as learned from Brandon. Trying to delete old key-value pair to see if that's possible

* Fix my typo
2026-02-17 09:39:22 -08:00
Vijay Oommen
a1e62100d6 [PM-30879] Huntress Integration (#18505) 2026-02-17 09:39:15 -08:00
Brandon Treston
2f39586c15 [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-02-17 09:39:06 -08:00
Leslie Xiong
acad754540 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-02-17 09:38:59 -08:00
Vijay Oommen
20d48a55d5 PM-29166 updated cards to use dynamic styles (#18340) 2026-02-17 09:32:52 -08:00
Vijay Oommen
156bb6c28a [PM-26146] Remove risk insights activity tab feature flag (#18218) 2026-02-17 09:32:48 -08:00
Vijay Oommen
f80dea5a2e PM-26917 Added a document on how to create an integration (#18248) 2026-02-17 09:25:57 -08:00
Alex Morask
f5bc83c5f7 Remove FF: pm-22415-tax-id-warnings (#17871) 2026-02-17 09:25:33 -08:00
Vijay Oommen
a596ebb603 PM-29935 delete button text needs to be fixed (#18048) 2026-02-17 09:25:28 -08:00
Alex
3fe255473b [PM-28222] delay progress bar (#17507) 2026-02-17 09:25:27 -08:00
Vijay Oommen
61aeb29fde [PM-26971] Fix DataDog and Crowdstrike Integration (#18024) 2026-02-17 09:25:26 -08:00
Alex Dragovich
f11fed44a3 [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
2026-02-17 09:25:25 -08:00
Alex
2c709e37a3 clear card selection when switching tabs (#18001)
Call closeDrawer() on tab change to reset invokerId, preventing
cards from appearing selected after navigating away and back.

(PM-29263)
2026-02-17 09:25:24 -08:00
Alex
78d57577f9 [PM-29219] enforce small drawer size for Access Intelligence (#17915) 2026-02-17 09:25:23 -08:00
cyprain-okeke
d88cca3ab7 [PM-29633]Discount badge misaligned on Subscription page for Organizations and MSP/BUP (#17924)
* Fix the discount

* Fix the spacing and alignment issue

* reverted unneeded change

* Changes for provider discount badge
2026-02-17 09:25:17 -08:00
Vijay Oommen
40be9b6d7f [PM-28450] Single integration service (#17925) 2026-02-17 09:25:14 -08:00
Alex
a17bf53424 make checkbox selection updates immutable (#17939) 2026-02-17 09:25:13 -08:00
Alex Dragovich
50710753cd [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
2026-02-17 09:25:12 -08:00
Todd Martin
b3994e2fc5 feat(accounts): Add creationDate of account to AccountInfo
* Add creationDate of account to AccountInfo

* Added initialization of creationDate.

* Removed extra changes.

* Fixed tests to initialize creation date

* Added helper method to abstract account initialization in tests.

* More test updates.

* Linting

* Additional test fixes.

* Fixed spec reference

* Fixed imports

* Linting.

* Fixed browser test.

* Modified tsconfig to reference spec file.

* Fixed import.

* Removed dependency on os.  This is necessary so that the @bitwarden/common/spec lib package can be referenced in tests without node.

* Revert "Removed dependency on os.  This is necessary so that the @bitwarden/common/spec lib package can be referenced in tests without node."

This reverts commit 669f6557b6.

* Updated stories to hard-code new field.

* Removed changes to tsconfig

* Revert "Removed changes to tsconfig"

This reverts commit b7d916e8dc.
2026-02-17 09:25:12 -08:00
Daniel James Smith
2a53735e55 [PM-29565] Delete deprecated callout component (#17895)
* Replace usages of app-callout with bit-callout

* Delete callout.component

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2026-02-17 09:25:09 -08:00
bmbitwarden
07bf544139 PM-27628 Rename Remove individual vault export policy (#17335)
* PM-27628 conditions for send and export links in left navbar

* PM-27628 resolved claude comment for pr

* PM-27628 resolved claude comment for pr

* PM-27628 reverted earlier display conditionals and changed label

* PM-27628 changed out keys as well

* PM-27628 revert description key change
2026-02-17 09:25:01 -08:00
Alex
dae10543a8 [PM-25037] add optional size input to app-vault-icon to prevent zoom issues (#17640) 2026-02-17 09:24:56 -08:00
Rui Tomé
58ad407c46 [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.
2026-02-17 09:24:52 -08:00
Maciej Zieniuk
9b25775a85 [PM-26057] Enforce session timeout policy (#17424)
* enforce session timeout policy

* better angular validation

* lint fix

* missing switch break

* fallback when timeout not supported with highest available timeout

* failing unit tests

* incorrect policy message

* vault timeout type adjustments

* fallback to "on browser refresh" for browser, when policy is set to "on system locked", but not available (Safari)

* docs, naming improvements

* fallback for current user session timeout to "on refresh", when policy is set to "on system locked", but not available.

* don't display policy message when the policy does not affect available timeout options

* 8 hours default when changing from non-numeric timeout to Custom.

* failing unit test

* missing locales, changing functions access to private, docs

* removal of redundant magic number

* missing await

* await once for available timeout options

* adjusted messaging

* unit test coverage

* vault timeout numeric module exports

* unit test coverage
2026-02-17 09:24:49 -08:00
Tom
8d99077642 [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
2026-02-17 09:24:47 -08:00
cyprain-okeke
7d510e2b99 Fix the bug by hiding the add button (#17744) 2026-02-17 09:24:43 -08:00
Alex Morask
5af08536b7 [PM-24558] Remove FF: pm-21821-provider-portal-takeover (#17521)
* Remove FF: pm-21821-provider-portal-takeover

* Fix failing tests
2026-02-17 09:24:40 -08:00