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

3172 Commits

Author SHA1 Message Date
Thomas Avery
35f35c4361 [PM-26498] Add proofOfDecryption method to MasterPasswordUnlockService (#17322)
* Add proofOfDecryption method to MasterPasswordUnlockService
2025-11-13 14:06:56 -06:00
Thomas Avery
cfe2458935 [PM-24107] Migrate KM's usage of getUserKey from the key service (#17117)
* Remove internal use of getUserKey in the key service

* Move ownership of RotateableKeySet and remove usage of getUserKey

* Add input validation to createKeySet
2025-11-13 10:07:13 -06:00
Maciej Zieniuk
3da3aa5e8c moving ownership of Auth vault timeout input component to KM (#17180)
(cherry picked from commit 5e595dabf71cdb312ae9e1e3bcc3121b3aebf19f)
2025-11-12 22:15:01 +01:00
Oscar Hinton
828fdbd169 [CL-905] Migrate CL/Badge to OnPush (#16959) 2025-11-12 15:27:14 -05:00
cyprain-okeke
7989ad7b7c [PM-26682] [Milestone 2d] Display discount on subscription page (#17229)
* The discount badge implementation

* Use existing flag

* Added the top spaces as requested

* refactor: move discount-badge to pricing library and consolidate discount classes

* fix: add CommonModule import to discount-badge component and simplify discounted amount calculation

- Add CommonModule import to discount-badge component for *ngIf directive
- Simplify discountedSubscriptionAmount to use upcomingInvoice.amount from server instead of manual calculation

* Fix the lint errors

* Story update

---------

Co-authored-by: Alex Morask <amorask@bitwarden.com>
2025-11-12 20:38:13 +01:00
Vicki League
2762d46c34 [CL-806] Use header as autofocus target for dialog component (#17336) 2025-11-12 09:20:25 -05:00
Stephon Brown
421edfb020 [PM-28034] Pre-Launch Payment Defect Solution (#17331)
* fix(billing): update to password manager to signal

* fix(billing): take first value so the dialog doesn't show again

* fix(billing): add families plan to request builder

* fix(billing): feedback and type update

* fix(billing): fix selectedplan call
2025-11-11 15:51:01 -05:00
Nick Krantz
785b1cfdd2 add skeleton loader feature flag (#17337) 2025-11-11 14:20:53 -06:00
Oscar Hinton
84340cba5c Log actual import error (#17327) 2025-11-11 16:56:59 +01:00
Maciej Zieniuk
021d3e53aa [PM-26056] Consolidated session timeout component (#16988)
* consolidated session timeout settings component

* rename preferences to appearance

* race condition bug on computed signal

* outdated header for browser

* unnecessary padding

* remove required on action, fix build

* rename localization key

* missing user id

* required

* cleanup task

* eslint fix signals rollback

* takeUntilDestroyed, null checks

* move browser specific logic outside shared component

* explicit input type

* input name

* takeUntilDestroyed, no toast

* unit tests

* cleanup

* cleanup, correct link to deprecation jira

* tech debt todo with jira

* missing web localization key when policy is on

* relative import

* extracting timeout options to component service

* duplicate localization key

* fix failing test

* subsequent timeout action selecting opening without dialog on first dialog cancellation

* default locale can be null

* unit tests failing

* rename, simplifications

* one if else feature flag

* timeout input component rendering before async pipe completion
2025-11-11 08:15:36 -06:00
Andreas Coroiu
a66227638e Update sdk-internal to 374 (fix breaking changes) (#17325)
* feat: update sdk-internal

* fix: symbol.dispose breaking change

* fix: TextEncoder/Decoder breaking change

* fix: move polyfills to a global setup script

* typo
2025-11-11 15:01:03 +01:00
Vicki League
c22cba76ec [PM-26984] Use medium instead of semibold or bold, and for headings (#17184) 2025-11-10 17:11:35 -05:00
Bryan Cunningham
c25cd63022 [CL-924] fix nested nav indentation (#17317)
* fix nav indentation

* move padding logic to component

* add jsdoc for padding calculation

* access open value correctly
2025-11-10 16:27:35 -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
Bryan Cunningham
c8281a079b skip tooltip stories in chromatic (#17315) 2025-11-10 12:49:14 -05:00
Patrick-Pimentel-Bitwarden
5aa6d38d80 feat(prelogin): [Auth/PM-23801] Move Prelogin Request (#17080)
* feat(prelogin): [PM-23801] Move Prelogin Request - Initial implementation.

* test(prelogin): [PM-23801] Move Prelogin Request - Removed unneeded test.
2025-11-10 10:54:25 -05:00
Kyle Denney
f7899991a0 [PM-23713] always append query param to premium redirect (#17240) 2025-11-10 09:51:51 -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
Bernd Schoolmann
4f9ae78598 [PM-27515] Fix 2fa settings not working after KDF change (#17070)
* Always derive authentication data fresh for UV

* Cleanup

* Add tests

* Fix remote UV

* Fix test

* Fix test

* Address feedback

* Fix build

* Update libs/common/src/auth/types/verification.ts

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

* Remove unused var

* Fix relative import

* Fix types

---------

Co-authored-by: Maciej Zieniuk <167752252+mzieniukbw@users.noreply.github.com>
2025-11-07 18:36:02 +01:00
SmithThe4th
519889f8f4 Persist ssh key changes when extension loses focus (#17267) 2025-11-07 10:54:04 -05:00
John Harrington
5e094c6066 PM-27883-Defect-Windows-Edge-browser-importer-is-not-enabled (#17260)
* remove edge from unsupported browser list

* Clarify comment for CSV import handling

Updated comment to clarify supported browsers for CSV imports.
2025-11-07 13:43:10 +01:00
Daniel James Smith
3c2f44095a [PM-27656] Show error message when detecting Chromium v3 encryption, which isn't supported yet (#17156)
* Replace any-returns with types

* Show an error message when a failure from the native call is returned

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>
2025-11-06 20:53:13 +01: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
Maciej Zieniuk
ff12e672e6 [PM-23614] Remove activeUserOrgKeys$ from the key service (#17045)
* Remove activeUserOrgKeys$ from the key service

* test leftover

* test leftover
2025-11-06 19:27:13 +01:00
Vicki League
c404ee210b [PM-26984] Use medium instead of semibold or bold (#17191) 2025-11-06 11:27:46 -05:00
Bryan Cunningham
f865139d16 [CL-881] restore nav tree view (#17210)
* restore tree nav view

* address Claude feedback

* address feedback and fix depth calculation

* address feedback from Claude

* do not reserve space for icon
2025-11-06 11:10:17 -05:00
Vicki League
7cbfcd23a8 [PM-26984] Use medium instead of semibold or bold (#17194) 2025-11-06 09:09:17 -06:00
Nick Krantz
30af9425d8 prevent form status changes from triggering a valueChanges emission (#17181)
- previous data within the cipher can be overwritten by the initial form data
2025-11-06 08:28:05 -06:00
Shane Melton
60b16a796c [PM-27848] Undo OnPush change detection strategy change for CipherViewComponent (#17235) 2025-11-05 11:02:56 -08:00
Bryan Cunningham
74889ec754 remove spacing from checkboxes. Add media query for smaller screens (#17233) 2025-11-05 13:32:41 -05:00
Bryan Cunningham
6e97927db6 Uif/export switch (#17234)
* fix private variables used in template

* remove module

* fix test import
2025-11-05 13:28:28 -05:00
Bernd Schoolmann
3125f679d3 [PM-25206] Inject service instead of passing as param (#16801)
* Inject service instead of passing as param

* [PM-25206] Move locking logic to LockService (#16802)

* Move locking logic to lock service

* Fix tests

* Fix CLI

* Fix test

* FIx safari build

* Update call to lock service

* Remove locked callback

* Clean up lock service logic

* Add tests

* Fix cli build

* Add extension lock service

* Fix cli build

* Fix build

* Undo ac changes

* Undo ac changes

* Run prettier

* Fix build

* Remove duplicate call

* [PM-25206] Remove VaultTimeoutService lock logic (#16804)

* Move consumers off of vaulttimeoutsettingsservice lock

* Fix build

* Fix build

* Fix build

* Fix firefox build

* Fix test

* Fix ts strict errors

* Fix ts strict error

* Undo AC changes

* Cleanup

* Fix

* Fix missing service
2025-11-05 17:11:34 +01:00
Bryan Cunningham
993637c41e use regular gap instead of column gap to fix spacing (#17228) 2025-11-05 11:05:13 -05:00
John Harrington
8e8092c828 [PM-27648] [Defect] The .zip option is displayed on organizational export in Admin Console (#17140)
* consider admin console context when determining export types and callout

* checkpoint on simplified fix before swapping to signals

* Update libs/tools/export/vault-export/vault-export-ui/src/components/export.component.ts

Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>

* Update libs/tools/export/vault-export/vault-export-ui/src/components/export.component.ts

Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>

---------

Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>
2025-11-04 22:34:22 +01:00
SmithThe4th
c42a7b2ef5 [PM-27506] CLI allows creating SSH key items with null fields (#17063)
* Added checks to on the sshkey view to prevent null fields

* Give default values to the template

* Give default values to the template

* change function signature to match ts-strct styles

* Added unit tests for the ssh key to view and replaced deafults to empty strings
2025-11-04 15:51:17 -05:00
Bryan Cunningham
203267f53c [CL-890] fix flakey tests (#17160)
* remove animations to try and fix flakey tests

* allow some diff in tootltip story

* dedicated collapsed nav story

* remove viewports and add delay

* add back animations

* add input to disable responsive behavior

* remove responsive input. open nav on lg viewports

* create story to capture collapsed nav

* remove unused import

* more explicit user preference logic
2025-11-04 15:35:23 -05:00
Vicki League
9bd7b58f6b [PM-26984] Use medium instead of semibold or bold (#17188) 2025-11-04 15:27:13 -05:00
Shane Melton
7e5f02f90c [PM-24469] Implement Risk Insights for Premium in Cipher view component (#17012)
* [PM-24469] Refactor CipherViewComponent to use Angular signals and computed properties for improved reactivity

* [PM-24469] Refactor CipherViewComponent to utilize Angular signals for organization data retrieval

* [PM-24469] Refactor CipherViewComponent to utilize Angular signals for folder data retrieval

* [PM-24469] Cleanup organization signal

* [PM-24469] Refactor CipherViewComponent to replace signal for card expiration with computed property

* [PM-24469] Improve collections loading in CipherViewComponent

* [PM-24469] Remove redundant loadCipherData method

* [PM-24469] Refactor CipherViewComponent to replace signal with computed property for pending change password tasks

* [PM-24469] Refactor LoginCredentialsViewComponent to rename hadPendingChangePasswordTask to showChangePasswordLink for clarity

* [PM-24469] Introduce showChangePasswordLink computed property for improved readability

* [PM-24469] Initial RI for premium logic

* [PM-24469] Refactor checkPassword risk checking logic

* [PM-24469] Cleanup premium check

* [PM-24469] Cleanup UI visuals

* [PM-24469] Fix missing typography import

* [PM-24469] Cleanup docs

* [PM-24469] Add feature flag

* [PM-24469] Ensure password risk check is only performed when the feature is enabled, and the cipher is editable by the user, and it has a password

* [PM-24469] Refactor password risk evaluation logic and add unit tests for risk assessment

* [PM-24469] Fix mismatched CipherId type

* [PM-24469] Fix test dependencies

* [PM-24469] Fix config service mock in emergency view dialog spec

* [PM-24469] Wait for decrypted vault before calculating cipher risk

* [PM-24469] startWith(false) for passwordIsAtRisk signal to avoid showing stale values when cipher changes

* [PM-24469] Exclude organization owned ciphers from JIT risk analysis

* [PM-24469] Add initial cipher-view component test boilerplate

* [PM-24469] Add passwordIsAtRisk signal tests

* [PM-24469] Ignore soft deleted items for RI for premium feature

* [PM-24469] Fix tests
2025-11-04 12:15:53 -08:00
Jordan Aasen
d364dfdda0 [PM-26182] - [Defect] [Browser] Safari - Autofill on page load default setting is missing yes or no (#16605)
* handle parenthesis translation

* add whitespace around placeholder with parentheses

* fix test

* fix label

* fix spec
2025-11-04 10:59:00 -08:00
rr-bw
409dbc4c44 fix(sso-login): [PM-27674] (Auth) Make 'enter' press start sso process if ssoRequired (#17186)
If user's email is NOT in the ssoRequiredCache, pressing "enter" takes them to the MP login screen. If the user's email is in the ssoRequiredCache, pressing "enter" starts the SSO login process.

Feature Flags enabled: pm-22110-disable-alternate-login-methods
2025-11-04 10:41:00 -08:00
Vicki League
b79625def8 [PM-26984] Use medium instead of semibold or bold (#17187) 2025-11-04 08:29:31 -07:00
Vicki League
a13a81ba81 [PM-26984] Use medium instead of semibold or bold (#17193) 2025-11-04 15:56:12 +01:00
Bernd Schoolmann
9dfc0fe14f Fix broken build on latest SDK (#17208)
* Fix broken build on latest SDK

* Fix test
2025-11-04 15:46:19 +01:00
Mick Letofsky
86b213aa8e [PM-25820] - Migrate cipher data model to adhere to ts-strict (#17073)
* Migrate cipher data model to adhere to ts-strict & added unit tests where applicable
2025-11-04 10:08:18 +01:00
rr-bw
5c33b2dc89 (Billing) [PM-27562] Create PremiumInterestStateService (#17139)
Creates a `PremiumInterestStateService` that manages state which conveys whether or not a user intends to setup a premium subscription. Implemented in Web only. No-op for other clients.

This will apply for users who began the registration process on https://bitwarden.com/go/start-premium/, which is a marketing page designed to streamline users who intend to setup a premium subscription after registration.
2025-11-03 14:42:21 -08:00
Vicki League
cba47e4abd Update font to inter feature branch (#16782) 2025-11-03 15:17:07 -05:00
Bernd Schoolmann
2fb9277b65 Add comments (#17177) 2025-11-03 19:13:30 +01:00
rr-bw
2fe6cb4185 docs(authentication): (Auth) [PM-26033] Overview of Authentication at Bitwarden (#16276)
Creates a README that describes an Overview of Authentication methods at Bitwarden
2025-11-03 09:14:19 -08:00
Kyle Denney
e1e3966cc2 [PM-23713] premium badge interaction (#16911)
* feature flag

* new upgrade dialog component and moved pricing service into libs

first draft

* moved pricing service to libs/common

removed toast service from the pricing service and implemented error handling in calling components

# Conflicts:
#	apps/web/src/app/billing/individual/upgrade/upgrade-payment/upgrade-payment.component.ts

* moved new premium upgrade dialog component to libs/angular

* badge opens new dialog in browser extension

* adds new dialog to desktop and fixes tests

* updates send dropdown to use premium prompt service

* styling and copy updates

* implement in web and desktop

* unit tests

* converting premium reports to use premium badge, and some cleanup

* fixes issue after merge

* linter errors

* pr feedback

* handle async promise correctly

* full sync after the premium upgrade is complete

* fixing test

* add padding to bottom of card in new dialog

* add support for self hosting

* fixing tests

* fix test

* Update has-premium.guard.ts

* pr feedback

* fix build and pr feedback

* fix build

* prettier

* fixing stories and making badge line height consistent

* pr feedback

* updated upgrade dialog to no longer use pricing card

* fixing incorrect markup and removing unused bits

* formatting

* pr feedback

removing unused message keys and adding back in code that was erroneously removed

* change detection

* close dialog when error

* claude pr feedback
2025-11-03 10:16:01 -06:00