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

3079 Commits

Author SHA1 Message Date
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
Brandon Treston
5912292680 [PM-26374] Remove emergency access when auto confirm is enabled (#17020)
* add router guard

* use real values, jsdoc

* fix route guard logic, hide UI nav item

* fix race condition

* refactor guard from org feature to policy

* update copy
2025-11-03 09:58:17 -05:00
Brandon Treston
63c14af4f8 remove single org exemption for admins/owners when auto confirm is enabled (#17050) 2025-11-03 09:52:48 -05:00
Will Martin
7ac6a67835 [PM-26944] phishing data checksum diffing + daily patches (#16983)
* expose local db file to extension

* fetch from local db as fallback; only fetch new data on changed checksum; fetch from cdn

* check for undefined chrome runtime (for easy Storybook mocking)

* update capital letters lint

* add audit api tests

* add bash script to fetch local db info and split it to meet FF size limits

* add readme

* Rename README.md to readme.md

* remove leftover file

* remove unused methods from audit service

* remove local db logic

* wip

* revert local db build changes

* add tests; sub to updates directly; refactor teardown logic

* fix eslint crashing

* remove temp premium override

* remove unused test

* update timer value

* run prettier

* refetch all domains on app version change

* fix log statement

* harden fetching

* filter empty domains

* fix type issue

* fix typo

* fix type error

* fix cleanup
2025-11-03 08:49:33 -06:00
Bernd Schoolmann
e68a471655 [PM-26340] Enable linux biometrics v2 (#16661) 2025-10-31 22:47:17 +01:00
Ben Brooks
b5a7379ea9 feat(policies): PM-25570 Admin Console UI for URI Match Default Policy (#16752)
Admin Console UI for URI Match Default Policy

---------

Signed-off-by: Ben Brooks <bbrooks@bitwarden.com>
Co-authored-by: Jonathan Prusik <jprusik@users.noreply.github.com>
2025-10-31 13:50:45 -07:00
Jason Ng
4908d73804 [PM-27500] update cipher.service to align with sdk types (#17147) 2025-10-31 14:24:31 -04:00
Shane Melton
dbe70bd51c [PM-24467] Introduce cipher risk service (#17009)
* [PM-24467] Introduce CipherRiskService

* [PM-24467] Introduce computeCipherRiskForUser() method

* [PM-24467] Refactor buildPasswordReuseMap to use user SDK client

* [PM-24467] Use switchMap instead of map

* [PM-24467] Cleanup redundant tests

* [PM-24467] Update SDK models

* [PM-24467] Update @bitwarden/sdk-internal version

* [PM-24467] Update @bitwarden/commercial-sdk-internal version
2025-10-31 10:23:18 -07:00
Andreas Coroiu
48fb8b2bfe [PM-25250] Prevent configuration and access of self hosted urls over http (#17095)
* feat: ban urls not using https

* feat: add exception for dev env

* feat: block fetching of insecure URLs

* feat: add exception for dev env

* feat: block notifications from using insecure URL

* fix: bug where submission was possible regardless of error

* feat: add exception for dev env

* fix: missing constructor param
2025-10-31 08:12:44 +01:00
Daniel James Smith
2dd314e992 [PM-27083] Prevent collection nesting on import into a MyItems-collection (#16937)
* Prevent collection nesting on import into a my items collection

My Items collections do not support nested collections. The import source hierarchy needs to be flattened into the My Items collection

* Introduce new types for folder and collection relationship
Makes it easier to identify which position is for the cipherIndex and which is for the folder-/collection-index

* Fix assignment of ciphers to My items collection

* Remove unneeded type cast or assertions

* Add clarifying comment

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-10-30 21:10:01 +00:00
rr-bw
d8e5a524d4 style(sso-login): (Auth) [PM-26535] Make SSO Button Primary if ssoRequired (#16757)
When SSO is required:
- Make the SSO button primary
- Add a tooltip to the disabled buttons

When SSO is not required:
- SSO button remains secondary
- No tooltip on the buttons

Feature Flags enabled: pm-22110-disable-alternate-login-methods
2025-10-30 14:41:17 +00:00
Jared Snider
a1570fc8b1 feat(AuthRouteConstants): [Auth/PM-27370] Convert auth routes to use constants (#16980)
* PM-22663 WIP on auth route constants

* PM-22663 - Convert desktop & extension to use constants - first pass

* PM-22663 - Further clean up

* PM-22663 - catch more missed routes

* PM-22663 - add barrel files

* PM-22663 - Per PR feedback, add missing as const

* PM-22663 - Per PR feedback and TS docs, use same name for const enum like and derived type. Adjusted filenames to be singular.

* PM-22663 - Per PR feedback update desktop app routing module since auto rename didn't update it for whatever reason.
2025-10-29 19:28:21 -04:00
Shane Melton
51a557514f [PM-20379] Fix At-risk password task permission bug (#17110)
* [PM-20379] Fix at risk password task permission checks

* [PM-20379] Fix at risk password component specs

* [PM-20379] Cleanup FIXMEs

* [PM-20379] Update to OnPush

* [PM-20379] Add tests for pendingTasks$

* [PM-20379] Reduce test boilerplate / redundancy

* [PM-20379] Cleanup as any

* [PM-20379] Remove redundant "should" language
2025-10-29 14:47:55 -07:00
Daniel James Smith
9fca0b0138 [PM-26731] Fix feature flag check for "pm-25855-chromium-importer-abe" (#17102)
* Fix feature flag check for "pm-25855-chromium-importer-abe"

The old lofgic actually removed all chromium support when the flag was disabled. It should only remove those browser if the flag is disabled and when on Windows.

* Extend tests

* Update comment

* Remove duplicate test

* Add test for when device cannot be detected and throws and error

* Add descriptive comment to feature flag test case assertions

* Better test assertion

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-10-29 21:56:55 +01:00
Vicki League
6b3c4f87c7 [CL-807] Improve aria a11y of nav group (#17078) 2025-10-29 16:52:28 -04:00
Jordan Aasen
c05ea23ce4 [PM-25083][26650][26651][26652] - Autofill confirmation dialog (#16835)
* add autofill confirmation dialog

* fix key

* better handle bad uris

* add specs

* adjustments to autofill confirmation to include exact match dialog. fix gradient

* update logic. add tests
2025-10-29 12:55:23 -07:00
John Harrington
e333c0a8bc Preserve export type across export source selections (#16922) 2025-10-29 12:49:31 -07:00
Oscar Hinton
d85b9986d0 [CL-901] [CL-903] Unowned - Prefer signal & change detection (#16949) 2025-10-29 13:42:19 -05:00
Bryan Cunningham
5b815c4ae4 [CL-879] use tooltip on icon button (#16576)
* Add tooltip to icon button to display label

* remove legacy cdr variable

* create overlay on focus or hover

* attach describdedby ids

* fix type errors

* remove aria-describedby when not necessary

* fix failing tests

* implement Claude feedback

* fixing broken specs

* remove host attr binding

* Simplify directive aria logic

* Move id to statis number

* do not render empty tooltip

* pass id to tooltip component

* remove pointer-events none to allow tooltip on normal buttons

* exclude some tooltip stories

* change describedby input name

* add story with tooltip on regular button

* enhanced tooltip docs

* set model directly

* change model to input
2025-10-29 09:49:16 -04:00
Alex Morask
460d66d624 Remove FF: pm-17772-admin-initiated-sponsorships (#16873)
* Remove FF

* Fix test
2025-10-29 07:41:35 -05:00
Dave
af1809222f fix(input-password-component) [PM-24266]: Update modal title. (#16932) 2025-10-28 15:14:48 -04:00
Mick Letofsky
11d3f5247c Refactor canClone method to use CipherAuthorizationService (#16849) 2025-10-28 19:00:56 +01:00
Brandon Treston
c1a988c2ab fix DI (#17076) 2025-10-28 12:25:56 -04:00
Stephon Brown
bf66b5ac19 -[PM-27123] Update Signals and Update Estimated Tax and Credit Logic (#17055)
* billing(fix): update signals and update estimated tax and credit logic

* fix(billing): update with claude feedback and expose total observable
2025-10-28 15:25:07 +00:00
Brandon Treston
8162c06700 [PM-26372] Add auto confirm service (#17001)
* add state definition for auto confirm

* typo

* refactor organziation user service

* WIP create auto confirm service

* add POST method, finish implementation

* add missing userId param, jsdoc

* fix DI

* refactor organziation user service

* WIP create auto confirm service

* add POST method, finish implementation

* add missing userId param, jsdoc

* clean up, more DI fixes

* remove @Injectable from service, fix tests

* remove from libs/common, fix dir structure, add tests
2025-10-28 09:47:54 -04:00
Mauritz Sjödin
2ff9c23dc4 fix: prevent action buttons from overflowing for long passwords (#17027)
Co-authored-by: Bryan Cunningham <bcunningham@bitwarden.com>
2025-10-27 12:34:22 -04:00
Thomas Avery
bd89c0ce6d [PM-23628] Require userId for fetching provider keys (#16993)
* remove getProviderKey and expose providerKeys$

* update consumers
2025-10-27 11:04:17 -05:00
Bryan Cunningham
f452f39f3c [CL-847] Card consolidation (#16952)
* created shared card directive

* WIP

* use base card in anon layout

* use bit-card for pricing card component

* add base card to integration cards

* add base card to reports cards

* add base card to integration card

* use card content on report card

* use base card directive on base component

* update dirt card to use bit-card

* run prettier. fix whitespace

* add missing imports to report list stories

* add base card story and docs
2025-10-27 11:14:42 -04:00
Oscar Hinton
af6e19335d Vault - Prefer signal & change detection (#16947) 2025-10-27 11:13:11 -04:00
Thomas Avery
fd45689745 [PM-27342] Fix state migration (#17018)
* Fix migration

* Update test
2025-10-27 09:55:31 -05:00
Oscar Hinton
abc6e54bb9 Platform - Prefer signal & change detection (#16946) 2025-10-27 09:13:17 -05:00
cyprain-okeke
b9f48d83b2 [PM 25897] Copy and UI Tweaks for Payment Method Component (#16851)
* Implement the Ui changes to align as expected

* Align the Text in card number, expiration date and security code vertically

* Change the Zip to ZIP

* Remove readonly modifier from signal declarations
2025-10-27 13:53:05 +01:00
Rui Tomé
bcc92387b2 [PM-26294] Re-implement SSO and TDE checks for device approvals access after provider user fix (#16642) 2025-10-24 20:42:18 +01:00
Oscar Hinton
fc26a21b85 DIRT - Prefer signal & change detection (#16939) 2025-10-24 11:17:58 -05:00
SmithThe4th
3609127858 [PM-25683] Migrate Cipher model and sub-models (#16974)
* Made domain classes ts-strict compliant and fixed spec files

* Fixed domain base class and other test files

* Added conditional utils and fixed small nits

* removed comments

* removd ts expect errors

* Added removed counter

* renamed test name

* fixed tests
2025-10-24 09:43:38 -04:00
Oscar Hinton
e3f943364f Billing - Prefer signal & change detection (#16944) 2025-10-23 15:02:01 -05:00
Thomas Avery
2d34a19b23 [PM-25287] Add AddMasterPasswordUnlockData state migration (#16202)
* Add AddMasterPasswordUnlockData state migration
2025-10-23 13:41:38 -05:00
Tom
81e9015b5b Adding include my items to the services and reports (#16987) 2025-10-23 12:54:52 -04:00
Brandon Treston
0691583b50 [PM-23133] refactor members component (#16703)
* WIP: added new services, refactor members to use billing service and member action service

* replace dialog logic and user logic with service implementations

* WIP

* wip add tests

* add tests, continue refactoring

* clean up

* move BillingConstraintService to billing ownership

* fix import

* fix seat count not updating if feature flag is disabled

* refactor billingMetadata, clean up
2025-10-23 11:16:17 -04:00
Alex Morask
7321e3132b [PM-26793] Fetch premium plan from pricing service (#16858)
* Fetch premium plan from pricing service

* Resolve Claude feedback
2025-10-23 09:13:26 -05:00
Bernd Schoolmann
7e7107f165 [PM-27221] Update legacy kdf state on master password unlock sync (#16966)
* Update legacy kdf state on master password unlock sync

* Fix cli build

* Fix

* Fix build

* Fix cli

* Fix browser
2025-10-23 11:38:10 +02:00
Oscar Hinton
29dccd6352 Auth - Prefer signal & change detection (#16950) 2025-10-22 21:28:47 -04:00
Nik Gilmore
0ec3f661d5 [PM-22992] Send lastKnownRevisionDate with Attachment API calls (#16862)
* Add lastKnownRevisionDate to Attachment methods.

* Address issues raised by Claude PR

* Fix string errors

* Show error to user in event of attachment upload failure

* Improve error handling for missing cipher

* Add unit tests for attachment lastKnownRevisionDate

* Remove generic title from toast errors

* Move lastKnwonRevisionDate to function input
2025-10-22 16:19:57 -07:00
Brandon Treston
67ba1b83ea [PM-26369] [PM-26362] Implement Auto Confirm Policy and Multi Step Dialog Workflow (#16831)
* implement multi step dialog for auto confirm

* wip

* implement extension messgae for auto confirm

* expand layout logic for header and footer, implement function to open extension

* add back missing test

* refactor test

* clean up

* clean up

* clean up

* fix policy step increment

* clean up

* Ac/pm 26369 add auto confirm policy to client domain models (#16830)

* refactor BasePoliicyEditDefinition

* fix circular dep

* wip

* wip

* fix policy submission and refreshing

* add svg, copy, and finish layout

* clean up

* cleanup

* cleanup, fix SVG

* design review changes

* fix copy

* fix padding

* address organization plan feature FIXME

* fix test

* remove placeholder URL

* prevent duplicate messages
2025-10-22 16:11:33 -04:00