1
0
mirror of https://github.com/bitwarden/browser.git synced 2025-02-19 01:51:27 +01:00
Commit Graph

1721 Commits

Author SHA1 Message Date
Oscar Hinton
f8bdd66fbb
[PM-17629] Split up KM lib to km and km-ui (#13093) 2025-01-30 11:20:17 +01:00
Jordan Aasen
4b45029d23
[PM-17688] - generator dialog - add missing button label i18n keys. fix logic for disabling button (#13140)
* add missing button label i18n keys. fix logic for displaying button label

* Update comment

Co-authored-by:  Audrey  <ajensen@bitwarden.com>

---------

Co-authored-by:  Audrey  <ajensen@bitwarden.com>
2025-01-29 14:06:03 -08:00
Shane Melton
db2b405421
Fix noop notification service registration (#13131)
* Re-order the constructor dependencies to match between Noop and Default notification service

* Fix test file

* One more missed constructor
2025-01-29 12:58:01 -05:00
Daniel Riera
d2fec919b3
PM-14355 (#13110)
- Initial structure
- Implement flag where needed
- Apply dynamic styling
2025-01-29 11:17:50 -05:00
Daniel James Smith
e73cb3e3ff
Move premium component into billing ownership (#12927)
* Move premium component into billing ownership

Update CODEOWNERS
Move files within libs/angular
Move files within desktop
Adjust import paths

* Remove configService

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-01-29 08:09:19 -08:00
Justin Baur
320a459e38
Fix lint errors from merge (#13122) 2025-01-29 16:04:15 +01:00
Ike
60e569ed9d
[PM-15605] Add new device protection opt out (#12880)
* feat(newdeviceVerificaiton) : adding component and request model

* feat(newDeviceverification) : adding state structure to track verify devices for active user; added API call to server.

* feat(newDeviceVerification) : added visual elements for opting out of new device verification.

* Fixing tests for account service.
fixed DI for account service

* Fixing strict lint issues

* debt(deauthorizeSessionsModal) : changed modal to dialog. fixed strict typing for the new dialog for deviceVerification.

* fixing tests

* fixing desktop build DI

* changed dialog to standalone fixed names and comments.

* Adding tests for AccountService

* fix linting

* PM-15605 - AccountComp - fix ngOnDestroy erroring as it was incorrectly decorated with removed property.

* PM-15605 - SetAccountVerifyDevicesDialogComponent - only show warning about turning off new device verification if user doensn't have 2FA configured per task description

---------

Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
2025-01-29 09:49:56 -05:00
Justin Baur
b07d6c29a4
Add Web Push Support (#11346)
* WIP: PoC with lots of terrible code with web push

* fix service worker building

* Work on WebPush Tailored to Browser

* Clean Up Web And MV2

* Fix Merge Conflicts

* Prettier

* Use Unsupported for MV2

* Add Doc Comments

* Remove Permission Button

* Fix Type Test

* Write Time In More Readable Format

* Add SignalR Logger

* `sheduleReconnect` -> `scheduleReconnect`

Co-authored-by: Matt Gibson <mgibson@bitwarden.com>

* Capture Support Context In Connector

* Remove Unneeded CSP Change

* Fix Build

* Simplify `getOrCreateSubscription`

* Add More Docs to Matrix

* Update libs/common/src/platform/notifications/internal/worker-webpush-connection.service.ts

Co-authored-by: Matt Gibson <mgibson@bitwarden.com>

* Move API Service Into Notifications Folder

* Allow Connection When Account Is Locked

* Add Comments to NotificationsService

* Only Change Support Status If Public Key Changes

* Move Service Choice Out To Method

* Use Named Constant For Disabled Notification Url

* Add Test & Cleanup

* Flatten

* Move Tests into `beforeEach` & `afterEach`

* Add Tests

* Test `distinctUntilChanged`'s Operators More

* Make Helper And Cleanup Chain

* Add Back Cast

* Add extra safety to incoming config check

* Put data through response object

* Apply TS Strict Rules

* Finish PushTechnology comment

* Use `instanceof` check

* Do Safer Worker Based Registration for MV3

* Remove TODO

* Switch to SignalR on any WebPush Error

* Fix Manifest Permissions

* Add Back `webNavigation`

* Sorry, Remove `webNavigation`

* Fixed merge conflicts.

---------

Co-authored-by: Matt Gibson <mgibson@bitwarden.com>
Co-authored-by: Todd Martin <tmartin@bitwarden.com>
Co-authored-by: Todd Martin <106564991+trmartin4@users.noreply.github.com>
2025-01-29 08:49:01 -05:00
Conner Turnbull
26a0594056
[PM-17655] Billing Code Ownership Updates (#13105)
* Moved has-premium.guard under billing

* Moved free-trial.ts to billing

* Moved premium directives to billing

* Moved families-policy.service.ts to billing

* Moved trial initiation from auth to billing
2025-01-28 13:17:00 -05:00
Oscar Hinton
70ea75d8f7
[PM-17496] Migrate eslint to flat config (#12806)
The legacy config is deprecated and will be removed in eslint 10. The flat config also allows us to write js functions which will assist in handling limitations with multiple identical rules.
2025-01-28 16:40:52 +01:00
Nick Krantz
08c42a8a27
[PM-13388] Extension: Persist Scroll from Vault (#12325)
* add service to track scroll position of the vault tab in the popup

* add data attribute to individual vault items
- Allows query selector to focus on the specific element

* stop scroll service when a cipher is deleted

* start scroll listener when the vault page is initialized

* fix strict linting errors

* remove focus reset when navigating back to the vault screen

* skip recording the first scroll from the automatic scroll

* combine filters into a single observable

* do not start the scroll service until filters have loaded in

* refactor allFilters to come from the vault popup list filters service

* use assertion on scroll position

* hide virtual scrolling element while scrolling is restored

* update comments

* fix failing tests to use different matcher

* remove visibility trick for restoring scroll position after chatting with design

---------

Co-authored-by: bnagawiecki <107435978+bnagawiecki@users.noreply.github.com>
2025-01-28 09:12:56 -06:00
renovate[bot]
c3bb76bee0
[deps] Architecture: Update eslint-plugin-tailwindcss to v3.18.0 (#12966)
* [deps] Architecture: Update eslint-plugin-tailwindcss to v3.18.0

* Fix linting

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>
2025-01-27 11:12:12 -05:00
Daniel James Smith
682e62cb6b
[PM-16485] Remove deprecated and unused PasswordGenerationService (#13053)
* Remove deprecated and unused PasswordGenerationService

* Remove unused state-service

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-01-27 10:12:20 -05:00
Daniel James Smith
750cb4888a
Add icons to settings page (#13052)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-01-27 12:10:11 +01:00
bw-ghapp[bot]
0eecc93165
Autosync the updated translations (#13080)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-01-27 07:30:19 +01:00
Github Actions
049877c4ce Bumped client version(s) 2025-01-24 21:44:04 +00:00
bw-ghapp[bot]
524ba99b95
Autosync the updated translations (#13065)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-01-24 20:02:03 +00:00
✨ Audrey ✨
1fc20b55f2
[PM-15200] add "generated credential" screen reader notification (#12877)
replaces website$ dependency with `GenerateRequest`
2025-01-24 13:44:42 -06:00
Jordan Aasen
40606ee8af
[PM-15943] - Revert When filling a password, the extension flickers (#13061)
* Revert "use requestAnimationFrame instead of arbitrary timeout"

This reverts commit 09a236b1e7.

* Revert "fix failing test"

This reverts commit cb24266e9d.
2025-01-24 11:09:04 -08:00
Github Actions
b396dda406 Bumped client version(s) 2025-01-24 17:59:54 +00:00
Justin Baur
5f57aae526
Move max-old-space-size option so it's in all builds (#13033) 2025-01-24 11:43:37 -05:00
Github Actions
dd1047cd0b Bumped client version(s) 2025-01-24 16:08:39 +00:00
Brandon Treston
b23a41ac86
[PM-17465] refactor PolicyService.getAll$ to make userId not optional (#13031)
* refactor PolicyService.getAll$ to make userId not optional

* add fix to browser

* fix test to read from mock singleUserState

* remove nested pipes, cleanup
2025-01-24 09:58:38 -05:00
bw-ghapp[bot]
9497f5b4c5
Autosync the updated translations (#13042)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-01-24 10:18:21 +01:00
Jordan Aasen
362745ad57
[PM-15943] - When filling a password, the extension flickers (#12900)
* use requestAnimationFrame instead of arbitrary timeout

* fix failing test
2025-01-23 15:45:26 -08:00
Evan Bassler
8a2aa1eac2
[PM-16807] Update text and behavior for show id/card vault settings (#12808)
* update text and behavior for show id/card vault settings

* add new crowdin entry

* update crowdin entries

* revert default

---------

Co-authored-by: Evan Bassler <evanbassler@Mac.attlocal.net>
2025-01-23 13:59:39 -06:00
Matt Gibson
f9f30f8ec4
[PM-17479] Load-sdk-once (#12764)
* create service to load sdk on application init

* Eagerly load CLI SDK

* Remove wasm logging to api

* Fix imports

* Eagerly load Desktop renderer SDK

Note: If the main process ever requires an SDK, we'll need to load it there, too.
In that event, it's probably a good idea to move to IPC for all SDK functions to avoid
loading the SDK for every window.

* init wasm module from sdk load service

* Use default client factory

* Fix type imports

* Resolve jest module import errors

A CLI sdk load service that async imports our wasm binary doesn't seem to be needed to run, but jest isn't dealing with the ESM import properly.

* Fix linting

* remove example code
2025-01-23 14:34:22 -05:00
Alec Rippberger
aa1c0ca0ee
feat(auth): [PM-8221] implement device verification for unknown devices
Add device verification flow that requires users to enter an OTP when logging in from an unrecognized device. This includes:

- New device verification route and guard
- Email OTP verification component
- Authentication timeout handling

PM-8221
2025-01-23 12:57:48 -06:00
Jordan Aasen
67187760df
move org icon to "default-trailing" slot (#13000) 2025-01-23 10:04:13 -08:00
Jason Ng
2d488a8e68
[PM-16245] delete btn in browser edit item (#12876)
* send the user back to vault after deleting from edit view
* [PM-17443] Navigation After Deletion (#13023)
* navigate to vault tab after cipher deletion
---------
Co-authored-by: Nick Krantz <125900171+nick-livefront@users.noreply.github.com>
2025-01-23 10:54:52 -05:00
Jared Snider
4abbf32638
Auth/PM-8113 - Extension - AuthPopoutWindows - Add new method + refactor names (#13020)
* PM-8113 - Add closeSsoAuthResultPopout

* PM-8113 - Refactor names / tests / comments
2025-01-22 21:48:38 -05:00
Jonathan Prusik
649a196e4b
partial revert of 374ea6a (#13018) 2025-01-22 17:08:25 -05:00
Brandon Treston
a949f793ed
[PM-15506] Implement vNextOrganizationService (#12839)
* [PM-15506] Wire up vNextOrganizationService for libs/common and libs/angular (#12683)

* Wire up vNextOrganizationService in PolicyService

* Wire vNextOrganizationService in SyncService

* wire vNextOrganizationService for EventCollectionService

* wire vNextOrganizationService for KeyConnectorService

* wire up vNextOrganizationService for CipherAuthorizationService

* Wire up vNextOrganizationService in PolicyService

* Wire vNextOrganizationService in SyncService

* wire vNextOrganizationService for EventCollectionService

* wire vNextOrganizationService for KeyConnectorService

* wire up vNextOrganizationService for CipherAuthorizationService

* wire vNextOrganizationService for share.component

* wire vNextOrganizationService for collections.component

* wire vNextOrganizationServcie for add-account-credit-dialog

* wire vNextOrganizationService for vault-filter.service

* fix browser errors for vNextOrganizationService implementation in libs

* fix desktop errors for vNextOrganizationService implementation for libs

* fix linter errors

* fix CLI errors on vNextOrganizationServcie implementations for libs

* [PM-15506] Wire up vNextOrganizationService for web client (#12810)

PR to a feature branch, no need to review until this goes to main.

* implement vNextOrganization service for browser client (#12844)

PR to feature branch, no need for review yet.

* wire vNextOrganizationService for licence and some web router guards

* wire vNextOrganizationService in tests

* remove vNext notation for OrganizationService and related

* Merge branch 'main' into ac/pm-15506-vNextOrganizationService

* fix tsstrict error

* fix test, fix ts strict error
2025-01-22 15:20:25 -05:00
Todd Martin
1e14d6d648
Modify Edge to build Mv3 - Part 2 (#12675)
* Modify Edge and Chrome artifacts to build Mv3 version to mimic Chrome

* Added back the Mv3 scripts so that workflows run on the PR will pass

* Removed unused Mv3 scripts

* Added back Opera
2025-01-22 13:24:18 -05:00
Nick Krantz
5c32e5020d
[PM-9111] Extension: persist add/edit form (#12236)
* remove todo

* Retrieve cache cipher for add-edit form

* user prefilled cipher for add-edit form

* add listener for clearing view cache

* clear local cache when clearing global state

* track initial value of cache for down stream logic that should only occur on non-cached values

* add feature flag for edit form persistence

* add tests for cipher form cache service

* fix optional initialValues

* add services to cipher form storybook

* fix strict types

* rename variables to be platform agnostic

* use deconstructed collectionIds variable to avoid them be overwritten

* use the originalCipherView for initial values

* add comment about signal equality

* prevent events from being emitted when adding uris to the existing form

- This stops other values from being overwrote in the initialization process

* add check for cached cipher when adding initial uris
2025-01-22 11:49:07 -05:00
Daniel Riera
44e18cf467
PM-17351-implement-initial-design-links (#12986) 2025-01-22 10:02:19 -05:00
Bernd Schoolmann
ef20ca83b6
[PM-17121/17204] Fix fingerprint dialogs and disabled active biometric lock component (#12928)
* Fix biometrics unlock window being empty

* Add trust on sensitive action

* Add dialog for outdated desktop app and fix spelling

* Use updated fingerprint method

* Refactor connected app trust

* Move connected apps to ephemeral value store and show error on outdated browser

* Move trust logic to only occur when fingerprint setting is enabled

* Add more tests

* Simplify code

* Update ephemeral value list call to "listEphemeralValueKeys"

* Fix trust being ignored
2025-01-21 21:26:34 +01:00
Patrick-Pimentel-Bitwarden
eb99eba284
refactor(email-verification-feature-flag): [PM-7882] Email Verificati… (#12718)
* refactor(email-verification-feature-flag): [PM-7882] Email Verification - Removed email feature flag.
2025-01-21 11:16:32 -05:00
bw-ghapp[bot]
8498de391f
Autosync the updated translations (#12992)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-01-21 10:55:05 +01:00
Jordan Aasen
a803e5b411
[PM-6565] migrate vault toasts to CL toastService (#10664)
* migrate vault toasts to CL toastService

* update component args

* add missing toastService deps

* add missing i18 key

* remove moved files

* remove duplicate args
2025-01-17 15:01:18 -08:00
Jordan Aasen
dbb341141a
[PM-15572] - don't allow restore for 'edit except password' permission (#12851)
* don't allow restore for 'edit except password' permission

* show login credentials if only passkey is present

* Revert "show login credentials if only passkey is present"

This reverts commit dc2f2367c2.
2025-01-17 09:10:28 -08:00
Danielle Flinn
23227f5064
[CL-256] Update Figma links in Storybook docs (#12901)
* Update Figma links

updated existing Figma links to point to the new file and added Figma links to components missing them

* Added last missing Figma links
2025-01-17 07:50:20 -08:00
Oscar Hinton
e5f83ff086
[PM-17031] Create UI-common (#12831)
Extract core functionality from `libs/angular` to allow teams to depend on `libs/ui-common` instead.

Moves the following functionality to `ui-common`.
- `I18nPipe`. `libs/angular` still has an old copy but `components` depends on the new variant from `ui-common`.
- `safeProvider`, `SafeProvider` and `SafeInjectionToken`. `libs/angular`re-exports these to avoid needing to update all consumers.
2025-01-17 10:42:31 -05:00
Todd Martin
87171289f0
Revert Opera to Mv2 build (#12921) 2025-01-17 10:16:52 -05:00
Daniel James Smith
9eecfbc8af
[PM-17189] Remove LP fileless importer (#12918)
* Remove LP fileless importer

- Remove content scripts
- Remove additions to message handlers and notifcation queue
- Remove UI elements for the importer
- Remove the actual importer code
- Remove unsued keys from en/messages.json
Remove feature flag "browser-fileless-
import"
Update webpack.config and manifest files to no longer include content scripts

* Move feature flag idp-auto-submit-login under autofill grouping

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-01-17 15:56:09 +01:00
Oscar Hinton
dafeb1492a
Add type=button to stories (#12930) 2025-01-17 14:57:31 +01:00
bw-ghapp[bot]
9eb7daa77d
Autosync the updated translations (#12923)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2025-01-17 11:13:00 +01:00
Cesar Gonzalez
374ea6af7c
[PM-16719] [COMMUNITY] Debounce requestIdleCallback a single time every 100ms, as opposed to call requestIdleCallback on debounce method (#12695)
* [COMMUNITY] Debounce requestIdleCallback a single time every 100ms, as opposed to call requestIdleCallback on debounce method

Potential fix for #12031

* [COMMUNITY] Fixing broken jest mock of the debounce utils method

* [COMMUNITY] Fixing broken jest mock of the debounce utils method

* [COMMUNITY] Fixing broken jest mock of the debounce utils method
2025-01-16 18:39:05 -05:00
Daniel Riera
99937e5831
PM-14051-storybook-implementation (#12840)
* PM-14051 -initial storybook set up
-Initial stories and folder structure

* clean up typing on existing stories

* add icons file

* assign packages to autofill

* row stories

* row storiescd

* -change file nnames to avoid rendering in main storybook instance - fix folder structure to set prep for doc creation

* remove babel loader

* -fix folder structure -add new package json -edit main to correct ts-config path

* edit package name
2025-01-15 14:13:03 -05:00
Thomas Avery
b0957cf1f6
Remove setting setFingerprintValidated to true (#12874)
Co-authored-by: Jake Fink <jfink@bitwarden.com>
2025-01-15 13:47:01 -05:00