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

3103 Commits

Author SHA1 Message Date
Daniel James Smith
94764467e8 [PM-25918] Move required userId for export request up to component/command level (#14391)
* Require userId for KdfConfigService

* cleanup KdfConfigService unit tests

* Move required userId for export request up to component/command level

* Fix service creation/dependency injection

* Revert changes to kdf-config.service.spec cause by a bad rebase

* Fix linting issue

* Fix tests caused by bad rebase

* Validate provided userId to equal the current active user

* Create tests for vault-export.service

Deleted old tests which since have been replaced with individual-vault-export.service.spec.ts

---------

Co-authored-by: Thomas Avery <tavery@bitwarden.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-09-19 13:39:55 +02:00
Daniel James Smith
b091719748 Introduce a stricter use of the OrganizationId type on org-vault exports (#15836)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-09-18 20:02:49 +00:00
Jimmy Vo
68d7cb4846 [PM-25922] Hotfix: Revert canManageDeviceApprovals (#16478) 2025-09-18 15:49:42 -04:00
John Harrington
376d2d8bf7 [PM-25629] Hide Chromium importer for Brave/Windows only (#16456)
* hide chromium importer for Brave/Windows only

* run cargo fmt

* address items found during review

• revert unnecessary changes to windows.rs
• handle exceptions by disabling chromium importer

* refactor filter logic
2025-09-18 12:26:56 -07:00
Jared Snider
42ec956782 feat(PlatformUtils): [Auth/PM-25817] New PlatformUtilsService.isChromium() method (#16468) 2025-09-18 14:36:35 -04:00
Jordan Aasen
4b78da1623 [PM-21794] - remove RemoveCardItemTypePolicy flag (#16450)
* remove restricted item types flag

* fix RestrictedItemTypesService constructor
2025-09-18 09:53:01 -07:00
Anders Åberg
3a2bee9444 Remove fido2 google.com workaround (#16347)
Updates the transports property in the credential creation response
to only include "internal" and "hybrid" transports.
2025-09-18 10:32:25 +02:00
Daniel James Smith
ba817f0389 [PM-25503] Use org export api on encrypted and unencrypted org exports (#16290)
* Introduce a new vault-export-api.service to replace the existing getOrganizationExport method in apiService

* Use new vault-export-api.service instead of the ApiService to retrieve organizational export data

* Remove unused method from apiService

* Register VaultExportApiService on browser

* Fxi linting issue by executing `npm run prettier`

* Rename abstraction and implementation of VaultExportApiService

* Use undefined instead of null

* Rename file of default impl of vault-export-api-service

* Fix test broken with 1bcdd80eea

* Define type for exportPromises

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-09-17 22:22:12 +02:00
Nick Krantz
200fc71c5c [PM-24305] Only enable the cipher form when it is disabled (#16259)
* only enable the cipher form when it is disabled

* switch to tracking the last emitted state for disabled rather than the form status.

The form status can be changed if any child control changes
2025-09-17 13:58:46 -05:00
Jordan Aasen
caf4ca6980 [PM-25633] - fix premium upgrade prompt (#16445)
* fix premium upgrade prompt

* use map instead of adding tap dep

* update route
2025-09-17 09:30:39 -07:00
Jordan Aasen
814305a778 [PM-24633] - group same parent name collections by org (#16404)
* key nested collections by orgId

* move groupByOrganization to separate function
2025-09-17 09:25:59 -07:00
Vicki League
508712fb3b [CL-864] Move a couple small docs things to Storybook from Confluence (#16402) 2025-09-17 10:18:13 -04:00
Thomas Avery
5b167d6748 [PM-16718] Focus unlock with biometrics button on lock view swap (#16342) 2025-09-16 15:14:32 -05:00
Vijay Oommen
0a7fb49f3c PM-25870 feature flag for Activity tab on Risk Insights (#16447) 2025-09-16 13:55:32 -05:00
Bryan Cunningham
4711e51de3 [CL-816] Anon layout icon sizing (#16349)
* add max-width to SVG to prevent oversizing

* add max width to svg

* add comment to explain targeted svg styling
2025-09-16 14:41:17 -04:00
Vijay Oommen
942d9d666c PM-23366 Define Categories and map the events to the categories (#16444) 2025-09-16 13:35:21 -05:00
John Harrington
001f8fa579 PM-23906 Wrap sdk callsite with try/catch to handle errors appropriately (#16410)
* wrap sdk callsite in try/catch to handle error appropriately

`encryptService.decryptString()` calls code in the internal SDK which when provided an invalid
key returns `CryptoError::InvalidMac`. The originating callsite has been wrapped in a try/catch
in order to intercept the error and return false so that logic in parse() may return
a more appropriate error message in the UI.

* add unit test and explanatory comment

* remove misleading comment

* remove null comparison and unused variable
2025-09-16 10:22:05 -07:00
Konrad
d06d47e26a Full headers (#16184)
Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
2025-09-16 14:53:36 +00:00
Daniel Riera
7ce8d06315 PM-25075 [Remove - Step 1] Flagged logic from clients/server and clients notification-refresh feature flag (#16113)
* PM-25075 wip parking work

* remove flag from enums and add fade out

* fix tests

* remove flags from enum file after merge conflict re introduced

* remove dead code paths

* change naming back to bgUnlockPopoutOpened
2025-09-15 14:55:36 -04:00
Bryan Cunningham
279d16999a [CL-834] Use intersection observer to determine if content scrolls (#16099)
* use intersection observer to fix dynamic content load issue

* set up mock intersection observer

* Create reusable hasScrollable content util

* return null from resize to fix type error

* remove Observer mock

* return observable

* refactor util and remove resize

* use async pipe for observable in template

* remove comment left in error
2025-09-12 12:05:28 -04:00
Addison Beck
7ac75a6c52 refactor(libs): consolidate messaging-internal into messaging library (#16386)
This change eliminates the circular dependency between messaging and messaging-internal libraries by merging them into a single messaging library.

Previously, messaging-internal imported from @bitwarden/messaging while messaging tried to import from @bitwarden/messaging-internal, creating an unresolvable circular dependency. This also violated Nx best practices by using cross-library file includes in tsconfig.lib.json.

Changes made:
- Moved all messaging-internal code (SubjectMessageSender, helpers, tests) into libs/messaging/src/
- Updated all imports to use relative paths instead of @bitwarden/messaging imports
- Removed the entire messaging-internal library and its configuration files
- Updated external references in apps/browser to import from @bitwarden/messaging
- Fixed libs/messaging/tsconfig.lib.json to use standard src/**/*.ts pattern
- Updated libs/common internal.ts to re-export from messaging instead of messaging-internal

The messaging library now exports both public APIs and internal implementations, which is a cleaner architecture than maintaining two separate libraries with circular dependencies.

Fixes rootDir configuration issues identified in the Nx library systematic fix project.
2025-09-12 13:04:13 +02:00
Jordan Aasen
db9061d120 [PM-25633] - [Defect] Fix premium badge in totp (#16373)
* fixes to premium upgrade

* revert change to dialog

* handle premium upgrade prompt redirect in AC

* use new input/output api
2025-09-11 12:15:29 -07:00
Leslie Tilton
31d5b639e9 [PM-20578] [PM-20579] Merge existing feature branch into main (#16364)
* PM-20578 Added api to fetch and save data (#15334)

* [PM-20579] Update risk-insights report service to use api service with encryption (#15357)

* Fix type error

* Fix paths for changed key generation service

* Finalize the api services

* Fixing test case for summary date range

* Fixing report service tests. Encryption will be modified in the future

* Fixing encryption service tests

* fixing linting issues

---------

Co-authored-by: Vijay Oommen <voommen@livefront.com>
Co-authored-by: Tom <ttalty@bitwarden.com>
2025-09-11 14:17:13 -04:00
Andreas Coroiu
a2e36c4489 feat: add folder.clear warning (#16376) 2025-09-11 16:05:32 +02:00
Nick Krantz
840e6a9ae2 Reapply "[PM-21024] Use Server for Password Change URLs (#14912)" (#16322) (#16372)
This reverts commit 0040c857ec.
2025-09-11 08:40:11 -05:00
Will Martin
22cf55a23f [CL-846] forbid hardcoded colors in svg (#16167)
* add eslint rule to prevent hardcoded colors in svgs

* add tests

* warn instead of error for now
2025-09-10 22:22:39 -04:00
Vicki League
926f587ea2 [CL-581] Update svgs to new designs and make responsive (#16219) 2025-09-10 17:23:53 -04:00
Stephon Brown
4ef9ab2c9a [PM-24982] Create Cart Summary Component in Bitwarden Pricing (#16344)
* feature(billing): add cart-summary component

* tests(billing): add tests for component

* feature(billing): add stories and documentation for storybook

* feature(billing): export component

* fix: add localization and remove null coalescing for PM

* fix: import localization pipe and update story for I18n Service

remove service

* fix(billing): add IconButtonModule and use lineitem name

* fix(billing): Update story props and add Family and Premium examples

* fix(billing): Add examples and table of contents do to docs

* fix(billing): update aria properties

* fix(billing): add figma link and description

* fix(billing): update docs

* fix(billing): remove optional chaining since property is already checked

* fix(billing): Update fonts and button padding

* fix(billing): Update bitIconButton size to small
2025-09-10 15:22:16 -04:00
rr-bw
af790c0d84 fix(finish-signup-icon): [Auth/PM-23593] Show correct icon when email verification not required (#16350)
During account creation, when the environment does not require email verification, show the correct icon (Lock Icon) on the `/finish-signup` page.
2025-09-10 09:25:11 -07:00
Jimmy Vo
b76d437f9e [PM-24279] Utilize Policy vNext endpoint (#16317) 2025-09-10 10:32:06 -04:00
Jordan Aasen
30af3d7035 [PM-24985][PM-24986][PM-25211][PM-24987] - [Vault] Migrate components to use Premium badge component (#16227)
* migrate all components to use PremiumBadgeComponent

* move badge component to vault

* move premium badge to vault

* move premium badge to billing

* fix import

* use premium badge in tools new send dropdown

* remove badge module import

* remove module
2025-09-09 13:39:24 -07:00
Alex Morask
4907820383 [PM-24964] Stripe-hosted bank account verification (#16220)
* Implement bank account hosted URL verification with webhook handling notification

* [PM-25491] Create org/provider bank account warning needs to be updated
2025-09-09 12:22:45 -05:00
Daniel James Smith
678c5cbcca Fix issue with import format selector (#16358)
Addresses an issue when selecting an import format when the use-chromium-importer feature flag is enabled

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-09-09 15:05:05 +00:00
Vijay Oommen
45efd3e5ab [PM-19996] added new icon for access-intelligence (#16315) 2025-09-09 10:01:05 -05:00
Daniel James Smith
8e2f27d82b Fix browser profiles not loading on import format change (#16357)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-09-09 16:56:14 +02:00
Bernd Schoolmann
7985487d5b [PM-25458] Add error handling stubs & logging for critical decrypt paths (#16284)
* Add error handling stubs for critical decrypt paths

* Fix collection name decrypt

* Update docs

* address feedback

---------

Co-authored-by: Jake Fink <jfink@bitwarden.com>
2025-09-09 10:19:00 -04:00
Maciej Zieniuk
0d6a67fc81 user decryption parsing error bug (#16346) 2025-09-08 22:56:22 +02:00
Jordan Aasen
c017e3c676 [PM-22284] - [Defect] Inconsistent UI issues with Send page empty state (#15877)
* update new send dropdown to match comps

* revert change to no send icon.
2025-09-08 13:04:50 -07:00
Bryan Cunningham
0aaab9fe52 [CL-820] Switch component (#16216)
* Add switch component

* fix focus state

* updating stories

* add switch role

* updated story docs code examples

* Add max length and long label story

* Add disabled reason text

* fix hint spacing

* support rtl thumb transform

* use correct input syntax. assign value to template variable

* remove pointer when disabled

* Show disabled text as title if it exists

* add basic switch component tests

* keep switch top aligned

* move switch back to right side of label

* add max width to label and hint

* updated switch story docs

* fix story html formatting

* better comment about which are ControlValueAccessor functions

* add JSDoc comment about model signals

* update methods to mirror search input format

* fix notify function type

* fix typo

* throw error if label is not provided

* add hover and focus states

* add label to failing spec

* import bit-label
2025-09-08 15:14:03 -04:00
Alex
3bc3bef50b [PM-814] Breach Report Escape Characters (#16264)
* encode username for uri and add spec

* verify response from getHibpBreach method

* test/validate for BreachAccountResponse type and length instead of mock response
2025-09-08 07:23:29 -07:00
Brandon Treston
b93602b09e [PM-24412] Make billing api service call in members component non blocking (#16103)
* refactor organization to signal, unblock loading due to api call

* continue refactor WIP

* clean up

* refactor billingMetadata signal to observble

* deffer billing call

* refactor billingMetadata

* cleanup, add comment

* qa bug: add missing param
2025-09-08 09:42:02 -04:00
Nick Krantz
0040c857ec Revert "[PM-21024] Use Server for Password Change URLs (#14912)" (#16322)
This reverts commit fcc2bc96d1.
2025-09-06 08:57:55 -07:00
Daniel James Smith
1a0d3e3ada Add support for Tamil language in browser (#16309)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-09-05 14:11:11 -04:00
Patrick-Pimentel-Bitwarden
fe692acc07 Auth/pm 14943/auth request extension dialog approve (#16132)
* feat(notification-processing): [PM-19877] System Notification Implementation - Implemented the full feature set for device approval from extension.

* test(notification-processing): [PM-19877] System Notification Implementation - Updated tests.

---------

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
2025-09-05 13:27:16 -04:00
SmithThe4th
e7ac237511 [PM-25426] Implement fromSdk() method in CipherRecordMapper (#16279)
* implemented fromSdk

* Removed error throw
2025-09-05 10:02:50 -07:00
Thomas Avery
a6b7c7f75c [PM-23626] Require userId for makeOrgKey on the key service (#15864)
* Update key service

* Update consumers

* Add unit test coverage for consumer services

* Add unit test coverage for organization-billing service
2025-09-05 09:51:01 -05:00
Justin Baur
bb6fabd292 feat(notifications): Ensure UnsupportedSystemNotificationService is registered in browsers that don't support notifications in Angular contexts (#16296) 2025-09-05 10:34:29 -04:00
Maciej Zieniuk
203a24723b [PM-23243] In sync response and identity success response add MasterPasswordUnlockDataResponse in decryption options response model. (#15916)
* added master password unlock and decryption option fields into identity token connect response

* incorrect master password unlock response parsing

* use sdk

* use sdk

* better type checking on response parsing

* not using sdk

* revert of bad merge conflicts

* revert of bad merge conflicts

* master password unlock setter in state

* unit test coverage for responses processing

* master password unlock in identity user decryption options

* unit test coverage

* unit test coverage

* unit test coverage

* unit test coverage

* lint error

* set master password unlock data in state on identity response and sync response

* revert change in auth's user decryption options

* remove unnecessary cast

* better docs

* change to relative imports

* MasterPasswordUnlockData serialization issue

* explicit undefined type for `syncUserDecryption`

* incorrect identity token response tests
2025-09-05 16:13:56 +02:00
Rui Tomé
6c5e15eb28 [PM-21752] Add granular events for collection management settings (#16253)
* Add new event types for granular collection management settings

* Update collection management settings messages

* Refine collection management setting messages to remove "deletion"
2025-09-05 12:01:15 +01:00
Rui Tomé
8c598b8783 [PM-22839] Update Device Approvals visibility based on SSO configuration (#16144)
* Add ssoEnabled and ssoMemberDecryptionType properties to ProfileOrganizationResponse

* Add SSO support to Organization model with ssoEnabled and ssoMemberDecryptionType properties, and implement related tests

* Upsert organization SSO settings in memory after save

Updates organization data in memory with new SSO configuration values
to ensure immediate UI updates for Device Approvals page visibility.

* Refactor SSO component to simplify upsertOrganizationWithSsoChanges method

- Updated the method signature to accept a single OrganizationSsoRequest object instead of separate parameters.
- Adjusted the internal logic to directly use properties from the OrganizationSsoRequest for updating the organization state.

* Specify OrganizationData type for updatedOrganization in SSO component
2025-09-05 11:22:55 +01:00