Commit Graph

7106 Commits

Author SHA1 Message Date
Bernd Schoolmann
d3212ad1fe
Fix flatpak auto-start (#21039)
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
2026-06-04 21:18:52 +09:00
Bernd Schoolmann
4ee78be61d
[PM-38547] Fix missing Flatpak desktop icon (#21040)
* Add app icon to flatpak manifest

* Remove 1024x1024 icon

* Fix startup wm class
2026-06-04 14:13:35 +02:00
Nik Gilmore
20a3d48e6a
[PM-33933] Update autofill dialog for 'never' match setting (#20189)
* [PM-33933] Update autofill dialog for 'never' match setting

* Fix bug where the matching URI isn't the 'never' URI
2026-06-03 17:51:52 -04:00
Jackson Engstrom
39021a4225
Updates attachment file write to use path.basename (#20790) 2026-06-03 13:46:25 -07:00
Daniel Riera
06f7747a82
[PM-36277]Save login notification not appearing on Facebook (#20814)
* WIP parking changes, currently created a small helper for notifications which checks if we should defer notifications due to passkey UI

* remove isCredentialRequestInProgress, update tests, early return on null activeRequest in shouldDeferVaultNotification

* preserve isCredentialRequestInProgress
2026-06-03 14:10:31 +00:00
Bernd Schoolmann
32507c1e0b
[BEEEP] [PM-38497] Dev-ex: Add attach VSCode debugger to desktop, web configs (#21016)
* Add attach debugger configs for vscode

* Fix desktop not starting
2026-06-03 19:33:05 +09:00
renovate[bot]
2924ebc80f
[deps] Platform: Update Rust crate serde_with to v3.20.0 (#18712)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Derek Nance <dnance@bitwarden.com>
2026-06-02 15:41:55 -05:00
github-actions[bot]
74d2c61dc3
Bumped client version(s) (#20940)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Addison Beck <github@addisonbeck.com>
2026-06-02 20:15:58 +00:00
Jordan Aasen
0ef50abdf6
[PM-34615] - add ability to toggle interstitial prompts (#20293)
* add flag to disable all interstitial prompts

* remove changes to search service

* fix type error

* check for auto confirm and enforce data ownership

* fix type error

* create ServerSettingsResponse
2026-06-02 11:30:59 -07:00
Jordan Aasen
8b48304c99
[PM-31084] - migrate badge to chip-action in vault components (#20606)
* migrate badge to chip

* add type="button"

* fix test

* add missing type attrs

* remove file
2026-06-02 11:30:08 -07:00
adudek-bw
f9c569379c
Add new SendApiServer that uses the SDK (#20170)
* Add new SendApiServer that uses the SDK
2026-06-02 14:19:45 -04:00
blackwood
f0bc8d0c46
[PM-35196] Mutation memory management (#20871)
* pass addedElements to checkForNewShadowRoots

* Fix checkForNewShadowRoots latch and nested-shadow traversal

Two bugs in checkForNewShadowRoots, addressed together because they share
the function and the test surface:

1. pageContainsShadowDom resolved at init() and never re-evaluated. On
   sites that attach shadow DOM after init (e.g., hbomax.com — SPAs that
   boot their custom-element renderers post-LOAD), the short-circuit
   blocked all detection for the rest of the session.

2. The narrow scan used el.querySelectorAll("*"), which does not pierce
   shadow boundaries. A shadow host nested inside another shadow root was
   invisible to the scan even when the latch was on.

Changes:

- Narrow the latch short-circuit: fires only when both
  pageContainsShadowDom is false AND addedElements is empty.
- markShadowDomPresent: a named, one-way sticky-ratchet transition that
  flips the latch when the narrow scan finds a root post-init.
- scanForNewShadowRootInSubtree: a depth-bounded recursive helper that
  pierces nested shadow boundaries (MAX_DEEP_QUERY_RECURSION_DEPTH = 4).
- pendingMutationAddedElements: now Set<Element>; isConnected filter at
  the debounced flush skips dead trees.

* Ancestor suppression and set management.

* Swap MutationRecord[][] for el->set<attr>; swap-on-drain, clear maps, clear shadow-root candidate on overflow and expose stats.

* Short-circuit checkMutationsInShadowRoots when pageContainsShadowDom is false

* Narrow requirePageDetailsUpdate to flag-only; schedule in debounce wrapper

* Collapse observedShadowRoots WeakSet into knownShadowRoots Set

* Gate new-shadow-root detection on addedNodes.length > 0

* Reap detached shadow roots from knownShadowRoots in the drain

* Instrument observer hot paths with stopwatch and fieldsReaped counter

* Remove autofill observer instrumentation.

* Reap unconditionally since shadow hosts may obscure mutated nodes.

* De-abbreviate; reap->purge; explanatory comment on cap.

* Revert "Reap unconditionally since shadow hosts may obscure mutated nodes."

This reverts commit 6637bfd65c.

* Unconditionally purge in processMutations.

---------

Co-authored-by: addisonbeck <github@addisonbeck.com>
2026-06-02 14:17:43 -04:00
Jonathan Prusik
9c7c9ab75b
let the browser client assemble the targeting rules manifest.json URI (#21001) 2026-06-02 13:20:51 -04:00
neuronull
f512157768
Add cargo deny ignore RUSTSEC-2026-0153 (#21003) 2026-06-02 16:10:43 +00:00
Konrad
13a1ed21e8
Remove unused strings (#20608)
Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
2026-06-02 15:12:10 +00:00
✨ Audrey ✨
1154946ac3
[PM-38243] introduce point-in-time performance metrics (#20888) 2026-06-02 10:46:18 -04:00
Nick Krantz
e926d5c749
[PM-38185] Safari numeric values translations (#20964)
* fix safari bug for numeric values in translation placeholders

* replace strict types - accidental removal
2026-06-02 09:08:51 -05:00
Brandon Treston
29d2eef4ec
[PM-36406] Edit member dialog (#20868)
* add edit member dialog, refactored to be ts-strict from member-dialog component

* clean up

* fix dialog selector pattern

* remove feature flag logic

* clean up, fix type error

* fix circular dependency, fix dialog directive

* fix remove user

* refactor nested-checkbox, add story

* update member-access-report to use new member edit component
2026-06-02 09:51:28 -04:00
Bryan Cunningham
48c32fffe7
[PM-37948] Add back missing desktop shortcuts (#20942) 2026-06-02 09:45:39 -04:00
Oscar Hinton
6f4b7c2c36
[PM-23585] Migrate desktop settings dialog to CL (#20230)
Migrates the desktop settings dialog to use the modern dialog system with tabs. It also migrates all inputs to use proper design system components.
2026-06-02 13:15:22 +00:00
Bernd Schoolmann
d4acb9e67e
[PM-37875] Split out crypto verification UI (#20856)
* Extract user crypto dialog to ui module

* Fix build

* Prettier

* Fix DI injection
2026-06-02 08:13:39 -05:00
Eli Grubb
db88f20f6e
[PM-30146] Support key rotation for TDE users (#20938) 2026-06-01 21:38:33 -06:00
Jordan Aasen
7ed5638c29
fix onboarding (#20921) 2026-06-01 17:03:42 -07:00
Jared Snider
82246bea68
PM-38423 - FIx unsavedSendEditsGuard not handling null component emission on logout while component is active. (#20967) 2026-06-01 20:03:11 -04:00
github-actions[bot]
157134f500
Bumped client version(s) (#20950)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Todd Martin <106564991+trmartin4@users.noreply.github.com>
2026-06-01 16:57:55 -04:00
bw-ghapp[bot]
8108f172e4
Autosync the updated translations (#20692)
Co-authored-by: bw-ghapp[bot] <178206702+bw-ghapp[bot]@users.noreply.github.com>
2026-06-01 22:34:50 +02:00
bw-ghapp[bot]
b7a1047a62
Autosync the updated translations (#20905)
Co-authored-by: bw-ghapp[bot] <178206702+bw-ghapp[bot]@users.noreply.github.com>
2026-06-01 21:51:26 +02:00
Oscar Hinton
60547fd34e
Desktop UI Cleanup milestone 3 & 4 (#20266)
* Desktop UI Cleanup milestone 3 & 4

* Remove archive badge from item-details-v2

* Fix test
2026-06-01 10:53:41 -07:00
Jordan Aasen
2fb6d447d8
[PM-36534] - fixes to coachmarks (#20533)
* fixes to spotlight and coachmarks

* remove viewportMargin

* revert change to IN lang

* remove spotlightTargetSelector
2026-06-01 10:28:00 -07:00
Nick Krantz
b16d99dafc
[PM-37798] Fix bank account section label to show "Bank account details" (#20779) 2026-06-01 11:13:51 -05:00
bw-ghapp[bot]
873d421607
Autosync the updated translations (#20691)
Co-authored-by: bw-ghapp[bot] <178206702+bw-ghapp[bot]@users.noreply.github.com>
2026-06-01 17:02:51 +02:00
Bernd Schoolmann
1ad0d902b2
[Shared Unlock] [PM-35083] Add shared unlock typescript drivers and services (#20589)
* Add shared unlock TS services

* Add newline

* Small cleanup

* Fix type error

* Fix type issue

* Eslint and prettier fixes

* Cleanup

* Prevent eslint error

* Prettier

* Add tests

* Cleanup

* Fix type issue

* Cleanup

* Implement basic version of flagged biometrics ipc over sdk ipc

* Move code

* Noop ipc service

* Clean up unlock service

* Undo change to spec ts

* Rename unlock decrypted key

* Remove unused var

* Remove unused import

* Prettier

* Fix eslint

* Ensure connected

* Undo changes to electron key service

* Newline

* Newline

* Remove biometrics.ts

* Fix

* Use unlock service for unlocking on shared unlock

* Cleanup comment

* Cleanup

* Prettier and eslint cleanup

* Prettier

* Fix test

* Eslint

* Fix types

* Remove log

* Remove service

* Remove unused file

* Cleanup

* Fix DI

* Set unlock service on biometric service

* Address feedback

* Await floating promise

* Prettier

* Convert driver to class

* Relative imports

* Relative imports

* Remove unused code

* Non null assertion
2026-06-01 09:26:21 -04:00
Bernd Schoolmann
ceb7cd4a5f
[Shared Unlock] [PM-35083] Implement biometrics over sdk IPC (#20689)
* Implement basic version of flagged biometrics ipc over sdk ipc

* Move code

* Noop ipc service

* Clean up unlock service

* Undo change to spec ts

* Rename unlock decrypted key

* Remove unused var

* Remove unused import

* Prettier

* Fix eslint

* Ensure connected

* Undo changes to electron key service

* Newline

* Newline

* Cleanup

* Prettier and eslint cleanup

* Prettier

* Fix test

* Eslint

* Fix types

* Remove log

* Remove service

* Remove unused file

* Cleanup

* Fix DI

* Set unlock service on biometric service

* Address feedback

* Await floating promise

* Prettier

* Make biometrics driver a class

* Add error log
2026-06-01 09:00:19 +02:00
Leslie Tilton
d07a6acf62
[PM-37079] Fix applicationName empty save and fetch in Access Intelligence (#20886)
* Fix applicationName empty save and fetch in access intelligence

* Trim fallback uri in getTrimmedCipherUris. Added test cases
2026-05-29 21:00:20 -05:00
Jackson Engstrom
75caebfb95
[PM-38113] In AC, when item filter is selected and user add new item, it does not default the creation form to selected item type (#20901)
* Adds fallback for when a cipher type isn't passed

* adds tests
2026-05-29 13:01:16 -07:00
Todd Martin
5e09251cee
feat(install-tab): Managed install check for displaying getting started tab
* Propose new managed install check.

* Refactors.

* Inverted the logic to be positive.

* Added Development to allowList, with override.
2026-05-29 15:52:56 -04:00
Leslie Xiong
42b0a4dff2
[CL-963] Update breadcrumb styles (#20085) 2026-05-29 12:59:13 -04:00
Andy Pixley
8bef396f66
[BRE-1949] Removing duplicate messages keys (#20916) 2026-05-29 12:25:23 -04:00
Mike Amirault
dbd9c69cd4
[PM-28178] Remove Send UI refresh feature flag (#20753) 2026-05-29 10:04:45 -04:00
neuronull
a9cb3b0ed4
SSH Agent v2: testing coverage for unsupported key types (#20789) 2026-05-29 07:38:46 -06:00
Brandon Treston
ef34c468e7
[PM-36067] Add stories for invite link and invite member dialog (#20731)
* add stories for invite link and invite member dialog

* enhance story functionality

* clean up

* add groups to stories

* fix circular dependency, update stories

* update story logic

* mock saving behavior for all invite link stories
2026-05-29 09:14:00 -04:00
Maciej Zieniuk
f51e144f25
[PM-30848] Key connector for user key rotation (#20805)
* key connector for user key rotation

* one signal, loading state, KC concistency checks

* use bit-spinner component, component not loading

* missing upgradeTokenAction
2026-05-29 11:13:35 +02:00
Will Martin
23c1141bcb
[CL-1129] Enable @angular-eslint/template/elements-content lint rule (#19505)
* Enable @angular-eslint/template/elements-content lint rule

Enables the elements-content rule with bitIconButton exempted via allowList,
since icon buttons use that directive in place of text content. Suppresses
false positives in WebAuthn connector pages where content is injected at
runtime, and flags a genuine empty <a> in change-plan-dialog for follow-up.

* Add FIXME lint suppressions for elements-content in copy-click spec

---------

Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
2026-05-28 15:49:37 -04:00
Stephon Brown
2abb233e60
[PM-36878] Update Existing User Trail Flow (#20610)
* feat(billing): introduce constant for default trial length

* feat(billing): pass trial initiation ID to backend

* feat(billing): display dynamic trial length in UI

* fix(billing): format

* refactor(billing): remove unused trialInitiationId

* fix(billing): update trial initiation button loading condition

* refactor(billing): remove deprecated fixed-length trial message keys

* refactor(i18n): update payment charged with trial message key

* feat(admin-console): add custom trial length to organization creation

* feat(billing): implement custom trial length in organization plans

* feat(billing): display default trial length in individual upgrade summary

* test(billing): add tests for custom trial length in organization plans

* test(billing): fix test getter call

* feat(billing): introduce showTrialOffer variable to exclude free tier

* refactor(billing): utilize showTrialOffer variable in template conditions

* fix(billing): run prettier

* refactor(billing): remove hardcoded default trial length for new organizations

* refactor: use undefined for optional trialLength properties

* refactor: update trialLength check for undefined in API request

* feat: include custom trial length in free trial determination

* fix(billing): use plan's trialPeriodDays for payment description if available

* fix(billing): correctly determine free trial display based on length

* fix(billing): run formatter
2026-05-28 12:46:57 -04:00
neuronull
44769ea98e
SSH Agent v2: Sign Request (#20657) 2026-05-28 09:52:58 -06:00
bw-ghapp[bot]
1c6c008403
Autosync the updated translations (#20693)
Co-authored-by: bw-ghapp[bot] <178206702+bw-ghapp[bot]@users.noreply.github.com>
2026-05-28 17:25:33 +02:00
Nick Krantz
ed8b37e025
[PM-35656] Update Copy functionality for new item types (#20708)
* update copy options for new item types

* add event collection for new item types

* bump sdk version

* formatting

* Update apps/desktop/src/vault/app/vault-v3/vault-orig.component.ts

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

---------

Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
2026-05-27 21:32:15 -05:00
Thomas Rittson
007b5d9335
[PM-34157] Wire up SDK to NewPolicyService (#20377)
* Add shim in PolicyService to NewPolicyService
* Wire up NewPoilcyService to SDK
* Use SDK enum
2026-05-28 07:14:53 +10:00
Nick Krantz
500345d57f
[PM-37970] Fix vault list icons for Login and Identity with new item types flag (#20818)
* update cipher icons per the new items feature flag

* fix testing dependencies
2026-05-27 16:01:39 -05:00
Bryan Cunningham
045992b426
[PM-36823] ensure browser uses Inter font (#20864)
* ensure browser uses Inter font

* move override from theme

* match existing import patterns

* update imports

* apply fix to correct tsconfig
2026-05-27 16:31:30 -04:00