Commit Graph

3578 Commits

Author SHA1 Message Date
Thomas Rittson
afc45ee0c8
[Tools] Update event-related import statements (#19548)
Some checks failed
Scan / Check PR run (push) Has been cancelled
Testing / Run typechecking (push) Has been cancelled
Testing / Run tests - ${{ matrix.test-group.name }} (map[artifact:jest-coverage-browser junit:junit-browser.xml name:Browser paths:apps/browser bitwarden_license/bit-browser]) (push) Has been cancelled
Testing / Run tests - ${{ matrix.test-group.name }} (map[artifact:jest-coverage-cli junit:junit-cli.xml name:CLI paths:apps/cli bitwarden_license/bit-cli]) (push) Has been cancelled
Testing / Run tests - ${{ matrix.test-group.name }} (map[artifact:jest-coverage-desktop junit:junit-desktop.xml name:Desktop paths:apps/desktop]) (push) Has been cancelled
Testing / Run tests - ${{ matrix.test-group.name }} (map[artifact:jest-coverage-libs junit:junit-libs.xml name:Libs paths:libs bitwarden_license/bit-common]) (push) Has been cancelled
Testing / Run tests - ${{ matrix.test-group.name }} (map[artifact:jest-coverage-web junit:junit-web.xml name:Web paths:apps/web bitwarden_license/bit-web]) (push) Has been cancelled
Testing / Run Rust tests on ${{ matrix.os }} (macos-14) (push) Has been cancelled
Testing / Run Rust tests on ${{ matrix.os }} (ubuntu-22.04) (push) Has been cancelled
Testing / Run Rust tests on ${{ matrix.os }} (windows-2022) (push) Has been cancelled
Testing / Rust Coverage (push) Has been cancelled
Scan / Checkmarx (push) Has been cancelled
Scan / Sonar (push) Has been cancelled
Testing / Upload to Codecov (push) Has been cancelled
Testing / Run tests (push) Has been cancelled
Updates import statements in tools-related files to use direct imports
instead of re-exported paths. This prepares for removal of re-exporting
files in a follow-up PR.

Part of PM-33381
2026-03-14 09:11:30 +10:00
Thomas Rittson
124c04503d
[Vault] Update event-related import statements (#19546)
Updates import statements in vault-related files to use direct imports
instead of re-exported paths. This prepares for removal of re-exporting
files in a follow-up PR.

Part of PM-33381
2026-03-14 09:10:57 +10:00
Nik Gilmore
34fad756de
[PM-33374] Fix getAllDecrypted when using the SDK (#19503)
* Bump SDK version

* Change SDK call to CiphersClient::list() to CiphersClient::get_all()

* Update mocks in tests to use ciphersService.get_all
2026-03-13 14:59:36 -07:00
John Harrington
a0e8c2d209
introduce feature flag pm-31885-send-controls (#19356) 2026-03-13 14:49:17 -07:00
Jason Ng
55d0595184
[PM-29250] remove browser premium spotlight flag. update spec files (#19364) 2026-03-13 14:56:40 -04:00
Patrick-Pimentel-Bitwarden
d4b4c8a164
fix(register): [PM-27085] Account Register Uses New Data Types (#18470)
* fix(register): [PM-27085] Account Register Uses New Data Types - Initial changes.

* test(register): [PM-27085] Account Register Uses New Data Types - Fixed tests.

* test(register): [PM-27085] Account Register Uses New Data Types - Updated tests.

* feat(register): [PM-27085] Account Register Uses New Data Types - Added feature flag.

* fix(register): [PM-27085] Account Register Uses New Data Types - Removed unnecessary part of the payload.

* fix(register): [PM-27085] Account Register Uses New Data Types - Changed the feature flag to be gated with the other password input changes.

* fix(register): [PM-27085] Account Register Uses New Data Types - Added protection for feature flagged state.

* fix(register): [PM-27085] Account Register Uses New Data Types - Removed unnecessary comment.

* fix(register): [PM-27085] Account Register Uses New Data Types - Addressed feedback.

* fix(register): [PM-27085] Account Register Uses New Data Types - Fixed tests and added comment.

* fix(register): [PM-27085] Account Register Uses New Data Types - Fixed another test.

* fix(register): [PM-27085] Account Register Uses New Data Types - And last test fix.

* fix(register): [PM-27085] Account Register Uses New Data Types - Removed unneeded code.

* fix(register): [PM-27085] Account Register Uses New Data Types - Updated comments and fixed code from feedback.

* fix(register): [PM-27085] Account Register Uses New Data Types - Updated comments again with small styling fix.

* fix(register): [PM-27085] Account Register Uses New Data Types - Switched to snapshot testing and explicit checks for unlock and authentication data for feature flag on. Also addressed pr comments.

* test(register): [PM-27085] Account Register Uses New Data Types - Made explicit checks for critical pieces of data in tests.

* fix(feature-flag): [PM-27085] Account Register Uses New Data Types - Added in feedback from comments. Default registration tests have snapshots now and web registration has more dry code.
2026-03-13 14:04:49 -04:00
Bernd Schoolmann
363f6445e3
[PM-31115] Support ephemeral pin envelope state in SDK (#19491)
* Support ephemeral pin envelope state in SDK

* Fix tests

* chore: bump @bitwarden/sdk-internal to 0.2.0-main.597

* Eslint

* Prettier
2026-03-13 16:11:47 +01:00
Alex
8b4b6825f5
[PM-31791] Fix Access Intelligence tab/banner overlap on smaller screens (#18899)
* Fix Access Intelligence tab/banner overlap on smaller screens

* Fix tab header overflow by using min-height instead of fixed height

* Fix Run Report button position to stay near Data last updated text
2026-03-12 20:19:33 -07:00
Bryan Cunningham
ae3d7ba7f1
add empty selector to hide span (#19531) 2026-03-12 15:37:21 -05:00
Jordan Aasen
f5300ab54c
[PM-29439] - Product Tour – Coachmarks (#19476)
* add coachmark

* add coachmark tour

* fixes to coachmarks

* updates to coachmarks

* add tests

* add specs

* cleanup

* merge main

* add comment
2026-03-12 09:58:54 -07:00
Bryan Cunningham
748ef081a6
[CL] fix i18n error and make spinner small (#19527) 2026-03-12 11:57:56 -05:00
Jared
44ef7c1f54
[PM-31475] Remove decline event log for org data ownership policy (#19450)
* feat(event): add support for self-revocation event type and corresponding localization messages

* fix(tests): update transfer rejection logging test to ensure no event is logged when a user rejects a transfer

* feat(event-logs): add OrganizationUser_SelfRevoked event type and logging
2026-03-12 12:33:37 -04:00
Jared
3548a358cf
Refactor VaultTimeoutAction from enum to const object for improved type safety and flexibility (#19499) 2026-03-12 11:43:16 -04:00
Nick Krantz
849bf53eca
verify that enableIndividualItemsTransfer is set for organization ownership policy (#19506) 2026-03-12 08:56:02 -05:00
Bernd Schoolmann
c369fe7463
[PM-32856] Make sync non-blocking on desktop, browser (#19358)
* Make sync non-blocking

* Update comment

* Undo changes to development.json

* Update libs/key-management-ui/src/lock/components/lock.component.ts

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

* Prettier

---------

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>
2026-03-12 04:31:24 -05:00
Nick Krantz
2d702e0eac
[PM-32661] Update Transfer Items Dialog (#19498)
* refactor decline and leave to be a link button rather than a secondary button

* update supporting text for transfer dialog

* add aria-label for learn more link
2026-03-11 16:19:09 -05:00
Daniel James Smith
7224a529e9
Remove NotPremiumDirective from jslib.module (#19287)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2026-03-11 17:46:12 +01:00
Daniel James Smith
46bb683d7b
[PM-29232] Add cookie acquisition (#19392)
* Add cookie acquisition to ServerCommunicationConfigService

* Fix DI for ServerCommunicationConfigPlatformApiService

* Rename param for acquireCookie from hostname to url

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2026-03-11 16:52:44 +01:00
Ike
c8c66a8bf1
[PM-32424] Send Access Enumeration protection (#19422)
* feat: remove reference to otp_invalid response since it is not used anymore

* remove usage of otpInvalid in CLI receive command

* fix: remove vestigial error types.

* chore: update sdk

* chore: fix failing test

---------

Co-authored-by: John Harrington <84741727+harr1424@users.noreply.github.com>
2026-03-11 11:37:07 -04:00
Daniel James Smith
5707b0064c
[PM-32915] Angular updates to TwoFactorIconComponent (#19306)
* Make TwoFactorIconComponent standalone

* Angular updates to TwoFactorIconComponent

- Migrate TwoFactorProviderType from enum to const (ADR25)
- Migrate Inputs to Signals
- Make provider a required input
- Use new Control Flow syntax
- Use OnPush change detection
- Memoize function for legacy providers (providers with png image)
- Add documentation
- Remove @ts-strict-ignore
- Fix type in TwoFactorSetupDuoComponent as it would default to number because of the migration of TwoFactorProviderType (enum to const). Now it can be overridden with any value of TwoFactorProviderType

* Add type guard for TwoFactorProviderType and fix CLI

* PM-32915 - Update TwoFactorProviderType to mark U2f as deprecated in favor of WebAuthn

* PM-32915 - TwoFactorIconComp - refactor to eliminate legacy providers and just use new, already available duo and yubikey SVG icons.

* PM-32915 - Add TODOs for cleaning up mfaType usages.

* PM-32915 - Remove unncessary ng-container

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
2026-03-11 15:28:01 +00:00
Will Martin
34a4970527
Fix readonly lint errors in SendGeneratorDialogComponent (#19480)
Convert mutable class properties to readonly, using signals for
buttonLabel and generatedValue to satisfy the enforce-readonly-angular-properties rule.
2026-03-11 09:46:54 -04:00
Andreas Coroiu
35d25b7f8e
[PM-24047] Make popout windows respect vault timeout when unfocused (#19019)
* PM-24047: Make popout windows respect vault timeout when unfocused

Replace the heartbeat message-passing mechanism for popup detection
with direct browser API queries (getContexts on MV3, getExtensionViews
on MV2/Safari) that can distinguish focused from unfocused popout
windows. Unfocused popout windows no longer prevent vault timeout.

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

* PM-24047: Add isAnyViewFocused(), revert isPopupOpen() to simple popup detection

Addresses PR review feedback by separating focus-aware logic from the
isPopupOpen() semantics, which other callers depend on for simple
popup detection:

- BrowserApi.isPopupOpen(): reverted to return views.length > 0 for
  popup-type views only (original behavior)
- BrowserApi.isAnyViewFocused(): new method that checks popup views
  (always focused), sidebar tab views (always focused), and popout
  tab views (focused only if document.hasFocus() is true)
- BrowserPlatformUtilsService.isPopupOpen(): simplified MV3 path
  uses getContexts({ contextTypes: ['POPUP'] })
- BrowserPlatformUtilsService.isAnyViewFocused(): new method with
  MV3 (POPUP/SIDE_PANEL/focused TAB) and MV2/Safari paths
- PlatformUtilsService: adds isAnyViewFocused() to the interface
- Web/Desktop/CLI stubs return false (no popout windows)
- VaultTimeoutService now calls isAnyViewFocused() instead of
  isPopupOpen() so unfocused popouts don't block vault timeout

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

* PM-24047: Move MV3/MV2 routing into BrowserApi

isPopupOpen() and isAnyViewFocused() now use feature detection for
chrome.runtime.getContexts to select the right API internally,
rather than having the routing in BrowserPlatformUtilsService.
This means BrowserApi is the single owner of view-detection logic,
and the service methods are simple one-line delegations.

Using typeof getContexts === "function" rather than isManifestVersion()
handles Safari naturally: if Safari doesn't support getContexts it
falls back to getExtensionViews, without needing an explicit isSafari()
exclusion.

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

* PM-24047: Scope MV3/MV2 routing refactor to isAnyViewFocused only

isPopupOpen() keeps its existing pattern (MV3/MV2 routing in the
service, simple getExtensionViews in BrowserApi) to avoid touching
unrelated code. Only isAnyViewFocused() has its routing moved into
BrowserApi via feature detection.

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

* PM-24047: Restore isPopupOpen to main branch implementation

isPopupOpen() and its tests are restored exactly to the main branch
version (heartbeat-based approach). Only isAnyViewFocused is new code.

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

* PM-24047: Refactor isPopupOpen() to use getContexts/getViews instead of heartbeat

Replaces the message-passing heartbeat approach with the same
chrome.runtime.getContexts() (MV3) / chrome.extension.getViews() (MV2/Safari)
introspection pattern used by isAnyViewFocused(). This eliminates the need
for a heartbeat listener in the popup and makes both methods consistent.

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

* PM-24047: Simplify isAnyViewFocused() using Array.some()

Collapse the two separate POPUP/SIDE_PANEL checks into a single .some()
call, and replace the synchronous MV2/Safari tab view loop with .some().
The async TAB/popout window check stays as a for loop.

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

* PM-24047: improve tabs loop readability somewhat

* PM-24047: Fix MV3 popout focus check using wrong uilocation filter

The TAB context filter was checking for `uilocation=sidebar` instead of
`uilocation=popout`. In MV3, sidebars are SIDE_PANEL contexts (already
handled above), so this filter never matched, causing focused popout
windows to be silently ignored and the vault to timeout while a user was
actively viewing one.

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

* PM-24047: Rename isViewOpen to isViewFocused for semantic accuracy

The variable and parameter previously named isViewOpen reflected
the old "is any view open?" semantics. After the refactor to
isAnyViewFocused(), the naming is updated to match the actual
behavior: checking whether a view is focused, not merely open.

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

---------

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-03-11 14:10:32 +01:00
Maciej Zieniuk
0465bb2fb1
[PM-31112] Local user data key state declaration (#19471)
* client managed state

* sdk upgrade

* bad cherry-pick
2026-03-11 11:19:38 +01:00
bmbitwarden
8108a09701
PM-31202 implmeneted password modal menu (#18829)
* PM-31202 implmeneted password modal menu

* PM-31202 resolved lint issues

* PM-31202 included password generator inside navigation container for browser

* PM-31202 resolved lint issue

* PM-31202 resolved pr comments

---------

Co-authored-by: John Harrington <84741727+harr1424@users.noreply.github.com>
2026-03-10 19:26:49 -04:00
Thomas Avery
c842f76539
[PM-27297] Remove ConsolidatedSessionTimeoutComponent feature flag (#18616)
* Remove flag

* Remove legacy components

* Update unit tests

* update messages json
2026-03-10 13:09:35 -05:00
Daniel James Smith
bffc14b594
[PM-31198] Remove the hostname from serverCommunicationConfig as the cookieDomain can be used (#19445)
* Remove the hostname from serverCommunicationConfig as the cookieDomain can be used

* Fix types issue

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2026-03-10 09:12:01 -05:00
Thomas Rittson
7943da240c
[PM-28488] Move event logging code to DIRT folders (#19336)
* Add re-exports from old locations to maintain backward compatibility
2026-03-10 14:58:06 +01:00
Oscar Hinton
b373e9c1ff
[PM-28754] [PM-28755] Cleanup desktop ui milestone 1 & 2 (#19081)
Removes feature flags for milestone 1 and 2 for desktop ui migration.
2026-03-10 12:02:23 +01:00
Bernd Schoolmann
b8206503b5
[PM-31049] Enable unlock via SDK (#18907)
* Add unlock service

* Move methods

* Prettier

* Fix type errors

* Prettier

* Fix test

* Fix module order

* Attempt to fix tests

* Use unlock service for unlocking

* Featureflag logic

* Add support for setting client managed state

* Add support for biometric unlock

* Add biometric unlock via SDK

* Prettier

* Cleanup CODEOWNERS

* Fix init with client managed state

* Backport biometric unlock and legacy master-key logic

* Add tests for biometrics

* Prettier

* Add biometric unlock to abstract unlock service

* Fix build

* tmp

* Fix tests

* Fix types

* Fix build

* Prettier

* Cleanup

* Fix import order

* Fix tests

* Eslint

* Fix tests

* Prettier

* Load feature flags before crypto init

* Prettier

* Clean up SDK config

* Prettier

* Fix eslint

* Prettier

* Update libs/key-management-ui/src/lock/components/master-password-lock/master-password-lock.component.ts

Co-authored-by: Maciej Zieniuk <167752252+mzieniukbw@users.noreply.github.com>

---------

Co-authored-by: Maciej Zieniuk <167752252+mzieniukbw@users.noreply.github.com>
2026-03-10 11:47:04 +01:00
Bernd Schoolmann
a412a47be7
Fix left-over ts5.9/ts7 incompatibility (#19388) 2026-03-10 06:26:17 -04:00
Jordan Aasen
bc56d3a81e
truncate long item names to two lines (#19122) 2026-03-09 12:46:44 -07:00
Will Martin
5e90565a79
[CL-1063] add enforce-readonly-angular-properties ESLint rule (#19201)
* Add enforce-readonly-angular-properties ESLint rule
2026-03-09 10:26:42 -07:00
Jordan Aasen
1cece8123d
[PM-31704] - fix tab focus with filled search input (#19355)
* fix focus issue with search input

* fix search input focus after clearing
2026-03-09 09:37:34 -07:00
Jared
ecbab67b8b
Enhance MasterPassword policy handling in tests and service (#19350)
* Add tests to verify behavior when organizations do not use policies and when users are exempt as owners.
* Update service logic to correctly handle policy retrieval based on user type and organization settings.
2026-03-09 11:52:23 -04:00
Bernd Schoolmann
abfa23c879
Fix left-over ts5.9/ts7 incompatibility (#19387) 2026-03-09 10:46:01 -04:00
Will Martin
9241b0a79e
[CL-822] Disable popover Chromatic snapshots (#19446)
Re-adds chromatic disableSnapshot flag removed in #18755. Popover positioning is still flaky.
2026-03-09 14:29:57 +00:00
blackwood
da3b31121a
Removes cache clearing that creates a race condition. (#18859) 2026-03-09 10:01:48 -04:00
Will Martin
7205a157e5
[CL-1028] create popover anchor directive and spotlight mode (#18755)
* create popover anchor directive; update popover trigger directive to use it
* refactor Kitchen Sink stories
2026-03-09 09:45:48 -04:00
Daniel James Smith
d4c5f85bd7
[PM-29149] Add ServerCommunicationConfigService (#18837)
* Add state- and key-definitions for persisting serverCommunicationConfig(s)

* Add implementation of the SDK-defined ServerCommunicationConfigRepository

* Add ServerCommunicationConfigService

* Add state- and key-definitions for persisting serverCommunicationConfig(s)

* Add implementation of the SDK-defined ServerCommunicationConfigRepository

* Add ServerCommunicationConfigService

* Fix instantiation of ServerCommunicationConfigClient due to additional dependency on ServerCommunicationConfigPlatformApi

* Fix broken tests

* Fix ts-strict error

* Call setCommunicationType when ConfigService.serverCommunicationConfig$ emits (#19218)

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>

* Move service instantiation to desktop's service.module

* Deleted unused tests

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2026-03-09 14:06:05 +01:00
Daniel James Smith
fb01459bcb
Add registration and execution of request middlewares (#19421)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2026-03-09 11:36:06 +01:00
Bernd Schoolmann
8186eb6b9a
[PM-31406] Migrate cryptofunction service and remove old crypto (#19222)
* Migrate cryptofunction service and remove old crypto

* Fix tests and linting

* Update libs/node/src/services/node-crypto-function.service.ts

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

* Update libs/node/src/services/node-crypto-function.service.ts

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

* Remove non-null assertion

* Fix build

* Prettier

* Update libs/node/src/services/node-crypto-function.service.ts

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

---------

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>
2026-03-07 13:15:04 +01:00
Patrick-Pimentel-Bitwarden
173a5499a3
fix(sso): [PM-33190] SSO Fails on Callback from Successful IdP Login (#19398)
* fix(sso): [PM-33190] SSO Fails on Callback from Successful IdP Login - Initial change to try and fix issue.

* fix(sso): [PM-33190] SSO Fails on Callback from Successful IdP Login - Added back in change that broke it.

* fix(sso): [PM-33190] SSO Fails on Callback from Successful IdP Login - Fixed.

* fix(sso): [PM-33190] SSO Fails on Callback from Successful IdP Login - Added tests and updated comment.

* docs(sso): [PM-33190] SSO Fails on Callback from Successful IdP Login - Moved comment.

* test(sso): [PM-33190] SSO Fails on Callback from Successful IdP Login - Accepted feedback.
2026-03-06 09:48:49 -06:00
Maciej Zieniuk
d08d8743be
[PM-20372] Clear master password unlock state on Key Connector migration (#18485)
* clear master password unlock state on Key Connector migration

* missing dependency

* missing dependency

* types fix
2026-03-06 15:38:14 +01:00
Nik Gilmore
6695083574
[PM-30304] Migrate Cipher Get Operations to use SDK (#18332)
* Migrate create and edit operations to use SDK for ciphers

* WIP: Adds admin call to edit ciphers with SDK

* Add client version to SDK intialization settings

* Remove console.log statements

* Adds originalCipherId and collectionIds to updateCipher

* Update tests for new cipehrService interfaces

* Rename SdkCipherOperations feature flag

* Add call to Admin edit SDK if flag is passed

* Add tests for SDK path

* Revert changes to .npmrc

* Remove outdated comments

* Fix feature flag name

* Fix UUID format in cipher.service.spec.ts

* Update calls to cipherService.updateWithServer and .createWithServer to new interface

* Update CLI and Desktop to use new cipherSErvice interfaces

* Fix tests for new cipherService interface change

* Bump sdk-internal and commercial-sdk-internal versions to 0.2.0-main.439

* Fix linting errors

* Fix typescript errors impacted by this chnage

* Fix caching issue on browser extension when using SDK cipher ops.

* Remove commented code

* Implement deleteWithServer and deleteManyWithSErver using SDK

* Implement restoreWithServer and restoreManyWithServer using SDK

* Add softDeleteWithServer and softDeleteManyWithServer impl using SDK

* Wrap SDK functions in firstValueFrom

* Fix bug causing race condition due to not consuming / awaiting observable.

* Add orgId to interface for admin deleteMany calls

* Use cipherService to deleteManyWithServer as admin, instead of API directly

* Bump SDK version to main.460

* Add tests for delete ops

* Remove unsetting archive date on delete, which was introduced by mistake

* Move getAllFromApiForOrganization to use SDK

* Implement getAllDecrypted and getAllFromApiForOrganization for SDK

* Fix broken CipherView conversion functions

* Fix CipherView type conversions from SDK

* Add missing 'await' to decrypt call

* Clean up unnecessary else statements and fix function naming

* Add comments for this.clearCache

* Add tests for SDK CipherView conversion functions

* Replace sdkservice with cipher-sdk.service

* Fix import issues in browser

* Fix import issues in cli

* Fix type issues

* Fix type issues

* Fix type issues

* Move delete/restore functions to cipher-sdk.service.ts when using SDK flag

* Move getCipher functions to cipher-sdk.service.ts when using SDK flag

* Address PR feedback

* Fix test that fails sporadically due to timing issue

* Simplifications from PR feedback

* UPdate tests

* Remove unnecessary type logic to use returned enum

* Revert changes to cipher.view.ts converting CipherListView to CipherView

* updated changes to match SDK changes

* Updated sdk package

---------

Co-authored-by: gbubemismith <gsmithwalter@gmail.com>
Co-authored-by: SmithThe4th <gsmith@bitwarden.com>
2026-03-05 19:03:48 +00:00
Daniel James Smith
b932ae04fd
Remove unused ColorPasswordCountPipe and ColorPasswordPipe (#19345)
With the replacement of the vault cipher view and add-edit views on the desktop client, we no longer require the ColorPasswordCountPipe or the ColorPasswordPipe, as these are now handled by the ColorPasswordComponent from the Bitwarden component library

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2026-03-05 08:56:31 +01:00
Bernd Schoolmann
944b3ffdc2
[PM-31406] fix: TypeScript 5.9 type compatibility fixes for auth-owned code (#19187)
* fix: add TypeScript 5.9 type compatibility fixes for auth-owned code

Add explicit `as BufferSource` casts and `Uint8Array` wrapping to satisfy
stricter type checking in TypeScript 5.9. Non-functional changes.

* Fix type errors

* Fix test

* Fix tests

* Fix typing in auth tests

* Also change unlock service to uint8array<arraybuffer>

* Fix types

* Prettier

* Apply fixes for jest spy type
2026-03-04 19:12:44 -07:00
Nik Gilmore
6cce91d899
[PM-31825] Add fido2 support to SDK create/update methods (#18800)
* Add fido2 support to SDK create/update methods

* Refactor FIDO2 handling when using the SDK for CipherView conversions

* Remove unneeded comments

* Update tests for FIDO2 functionality

* Reorder imports

* Fixed merge conflicts

---------

Co-authored-by: gbubemismith <gsmithwalter@gmail.com>
Co-authored-by: SmithThe4th <gsmith@bitwarden.com>
2026-03-04 16:27:11 -05:00
vlad-trofimov
4d4183e121
skip org import warning dialog for My Items (#19334)
Co-authored-by: vlad-trofimov <vlad@Vlads-MacBook-Pro.local>
Co-authored-by: John Harrington <84741727+harr1424@users.noreply.github.com>
2026-03-04 11:05:13 -07:00
vlad-trofimov
f0dbf65dd6
[PM-32765] [PM-32744] Default import destination to My Items when org data owner (#19242)
* [PM-32744] Default import destination to My Items when org data ownership policy is enforced

* remove feature flag gating, simplify collection selector logic

* additional code comments to explain import form behavior

---------

Co-authored-by: vlad-trofimov <vlad@Vlads-MacBook-Pro.local>
Co-authored-by: John Harrington <84741727+harr1424@users.noreply.github.com>
2026-03-04 08:28:58 -07:00
Bernd Schoolmann
71fa320557
[PM-31406] Migrate lastpass importer to special-purpose dangerous-crypto-compat (#19221)
* Introduce dangerous-compat crypto implementations

* Migrate lastpass importer to purpose-built dangerous-crypto-compat function

* Add missing export

* Prettier
2026-03-04 10:57:47 +01:00