Commit Graph

1530 Commits

Author SHA1 Message Date
github-actions[bot] a5d91410a9
Autosync the updated translations (#11745)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-10-28 09:34:44 +00:00
Cesar Gonzalez 5f0755d74d
[PM-14045] Scrolling content outside of iframe bounds breaks inline menu position (#11716)
* [PM-14045] Scrolling content outside of iframe bounds breaks inline menu position

* [PM-14045] Scrolling content outside of iframe bounds breaks inline menu position

* [PM-14045] Fixing jest test

* [PM-14045] Adjusting how we determine if the inline menu should reposition on scroll
2024-10-25 16:17:36 -05:00
Alec Rippberger 2fb6a9e1ee
[PM-13150] Remove uses of row-main Bootstrap class in Account Security Settings (#11650)
* Remove uses of row-main Bootstrap class in Account Security Settings component

* Remove class from new component

* Remove extra div

* Remove extra markup
2024-10-25 13:58:02 -05:00
Daniel James Smith ab98bef28f
Add warning dialog when clearing generator history (#11711)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-10-25 11:44:12 -04:00
Daniel James Smith 3b82a82416
[PM-13658] Update copy of password history to generator history (#11710)
* Update copy from password history to generator history

* Update copy on empty state

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-10-25 11:04:39 -04:00
Bernd Schoolmann 122c3c7809
Add context to logs for decryption failures (#11684)
* Add logging to decryption routines

* Fix case of uknown encryption type

* Add decryption context to log where failures occur

* Update log message

* Fix linting

* Add more context logs

* Add more fine grained logging

* Update log message

* Fix tests
2024-10-25 15:22:30 +02:00
github-actions[bot] 619618e6f3
Autosync the updated translations (#11702)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-10-25 11:32:16 +00:00
Shane Melton a0fe4f4ca6
[PM-13892] Browser Refresh - Organization item clone permission fix (#11660)
* [PM-13892] Introduce canClone$ method on CipherAuthorizationService

* [PM-13892] Use new canClone$ method for the 3dot menu in browser extension

* [PM-13892] Add todo for vault-items.component.ts
2024-10-24 14:12:04 -07:00
Shane Melton 81d7f319f6
[PM-13896] Avoid sorting when a search term is applied (#11661) 2024-10-24 14:11:48 -07:00
rr-bw df8f234b9e
[PM-8111] Browser Refresh: LoginComponent (#10856)
* setup new LoginComponent files in libs/auth

* update pageTitle

* handle loading email settings

* setup web-login.service.ts

* implement web onInit

* fill out webOnInit

* refactor getOrgPolicies call

* update import

* add validateEmail logic

* handle registerRoute

* add showPasswordless flag

* handle captcha

* handle startAuthRequestLogin()

* add handleMigrateEncryptionKey to default and web service

* handle submit routing (web)

* fix typo

* incorporate loginEmailService changes

* minor updates to comments for clarity

* create a defaultOnInit()

* update defaultOnInit()

* handle master password input focus

* handle post-login routing on Browser/Desktop

* handle browser/desktop syncService

* handle browser ngOnInit

* handle browser routing and basic browser template

* setup desktop router

* add template for desktop first UI state: email entry

* rename 'response' to 'authResult'

* refactor handleMigrateEncryptionKey()

* refactor captcha methods and add return types

* refactor submit logic

* refactor submit logic further to use if statements with returns instead of if...else if...else

* remove toast error on invalid form for Browser/Desktop

* refactor to handleAuthResult() method

* refactor webOnInit

* add comment to revisit ngOnInit logic

* refactor handlCaptchaRequired()

* create a LoginSecondaryContentComponent for AnonLayout use

* minor formatting for consistency

* add clarifying comment to handleAuthResult()

* minor refactor to use destructuring

* setup desktopOnInit()

* add continue() method

* handle desktop ngOnDestroy()

* add clarifying comment regarding secondary content

* fill out desktop template and submit()

* add descriptive comment to top of HTML file

* refactor to use a uiState enum for UI states

* handle oss-routing swap

* handle registerRoute$ in secondary content

* web template modifications

* change email validation to only run on submit (or when clicking continue button)

* add dynamic anon-layout wrapper data

* remove static element ref

* desktop HTML template updates

* remove 'showPassword' property b/c now handled by bitPasswordInputToggle

* Extension: setup EmailEntry state UI

* Extension: setup MasterPasswordEntry state UI

* ensure full sync happens on all clients before navigation

* update icon stroke color

* change old components to V1

* remove 'V2' from new component

* update captcha iframe on all clients

* add browser redirect from /home to /login with FF on

* add todo comment regarding browser template

* add launchSsoBrowser to extension template

* move extension launchSsoBrowserWindow() to extension service

* cleanup & comments

* add launchSsoBrowserWindow() to default service

* setup launchSsoBrowserWindow() for Desktop

* refactor to use toastService

* remove unnecessary service injection

* rename LoginService to LoginComponentService to avoid confusion with the LoginStrategyService

* add jsdocs to LoginComponentService

* rename loginService prop to loginComponentService

* Add vault icon to anon layout.

* Prevent email address validation on blur.

* Fix comment typo.

* Prefill email field when "create account" is clicked.

* Use factory function to provide LoginEmailService.

* Add test for RegisterFormComponent.

* Remove back button todo.

* Consolidate clearing loginEmailService values and routing

* Remove unnecessary navigation.

* Fix client navigation after login.

* Consolidate login templates.

* Break up LoginComponent into client-specific services.

* Rename login.component to login-v1.component

* Rename login.component to login-v1.component

* Revert "Rename login.component to login-v1.component"

This reverts commit 9a277d6ca5.

* Revert "Rename login.component to login-v1.component"

This reverts commit 588a7af906.

* Rename login.component to login-v1.component except browser.

* Comment out debug code.

* Remove debug code.

* Rename login.component to login-v1.component for browser.

* Add login-with-passkey route to desktop.

* Set feature flag to false.

* Fix linting errors.

* Populate email on registration start form.

* Implement email population on all clients add add safeProviders.

* Remove comment re. passing email to registration.

* Add unauthUiRefreshRedirect utility function.

* Add transparent border.

* Merge main and add satisfies RouteDataProperties

* PM-8111 - Extension - AppRoutingModule - Home route now redirects conditionally based on unauthenticated ui refresh feature flag.

* PM-8111 - New Login Comp + Login Comp Svc - (1) Refactor naming and returns of getShowPasswordlessFlag to isLoginViaAuthRequestSupported (2) Replace showPasswordless with better composed variable names.

* PM-8111 - TODO cleanup

* PM-8111 - (1) Cleanup DefaultLoginComponentService (2) Sso Connector now checks client id property instead of reading it from state

* PM-8111 - Two TODO cleanups

* Remove specific client services.

* Add isLoginWithPasskeySupported function to reduce client type checking in template.

* Add styles missing from Browser to Create Account link.

* Confirmed inline form errors working and removing todo comments.

* Convert refactoring todo-rr-bw to standard todos.

* Add login component services tests.

* Cleanup formatting and remove unused provider.

* Add comment to explain call to setLoginEmail.

* Rearrange imports to fix lint error.

* Adjust styles for password hint link.

* Address PR feedback: use strict comparison.

* Ensure Login with Passkey button is shown by setting clientType.

* Update "continue" button from "submit" to "button" type.

* Ensure Passkey login available for web and desktop.

* Validate email on enter keypress.

* Use click event to trigger goToHint.

* Restructure handAuthResult to ensure we redirect to vault.

* Add await to saveEmailSettings function.

* Directly set clientType in individual login component services.

* Get clientType via service.

* Add back button.

* Remove hardcoded colors from Vault Icon

* Removing register component changes.

* Removing register component changes.

* Ensure isLoginWithPasskeySupported is only returns true for web client.

* Remove Web/Desktop comment from html template

* Update Storybook with initialLoginEmail

* Fix translation error

* Add test for unauthUiRefreshRedirect.

* Rename goAfterLogIn to evaluatePassword and borrow logic from lock component.

* Add DefaultLoginComponent tests.

* Integrate changes to translations.

* Simplify ngOnInit: remove webOnInit and move getLoginWithDevice to defaultOnInit

I couldn't find any usages of qParams.org or qParams.sponsorshipToken on QA (signing up for family membership, creating organization, manually modifying query params), so I think these are safe to remove.

* Fix translations.

* Clean up and flush out register form tests.

* Update variable name.

* Remove unused enforcedPasswordPolicyOptions property.

* Run prettier.

* Add back safeProviders for LoginEmailService

* Remove duplicate import.

* Update v1 web login title.

* Adjust overlay position of EnvironmentSelectorComponent for new layout.

Since the switcher is located at the bottom of the screen we need to position it up above the trigger button so that it is not cut off.

* Add new wave icon

* Only send email in query parameters if set.

* Remove test/debug code.

* Replace loggedEmail with this.emailFormControl.value.

* Move getLoginWithDevice call to loadEmailSettings.

* Replace loggedEmail with this.emailFormControl.value.

* Add todo comment re. inline errors.

* Remove unused setPreviousUrl function.

* Remove height / width from vault icon svg.

* Use continue method unanimously

* WIP remove validated email&  display extension back button

* Simplify getting query params

* Rework ExtensionAnonLayoutWrapperDataService to use BehaviorSubject

* Simplify validateEmail method

* Hide back button on init

* Revert "Hide back button on init"

This reverts commit e8de5e2bfc.

* Revert "Simplify validateEmail method"

This reverts commit c9141a1cb5.

* Revert "Rework ExtensionAnonLayoutWrapperDataService to use BehaviorSubject"

This reverts commit 8889ed3d3c.

* simplify validateEmail method

* Add primary / accent colors to wave icon

* Remove debug code

* PM-8111 - Tweak ShowBackButton to work

* PM-8111 - LoginCompService - finish removal of setPreviousUrl from implementations.

* PM-8111 - (1) Remove overriden default logo in anon layout (2) Update routing modules to have proper default login logo (3) LoginComp - update toggleLoginUiState to include logic to swap the icon back and forth as user navigates.

* PM-8111 - LoginComp - on UI state change from MP entry to email entry, remove subtitle (this isn't supported yet, but it will be)

* PM-8111 - LoginComp - Simplify toggleLoginUiState

* PM-8111 - LoginComponent - Add known device logic into UI state change handler

* PM-8111 - LoginComp - (1) Refactor name of getLoginWithDevice to be more accurate as getKnownDevice (2) Refactor calls to getKnownDevice to only occur if loginViaAuthRequestSupported

* PM-8111 - LoginComp - add getKnownDevice docs

* PM-8111 - LoginComponent - tweak docs

* PM-8111 - LoginComp - Continue() - remove toast as the validation on submit logic currently shows validation errors - toast is extra and not needed.

* Add isLoginViaAuthRequestSupported for DesktopLoginComponentService

* Remove validating email on init

* PM-8111 - ExtensionLoginComponentService - add tests for showBackButton

* PM-8111 - style tweaks

* PM-8111 - Extension - Refactor Overlay position to include extension default const to avoid repetition.

* PM-8111 - Desktop AppRouting Module - remove login with passkey route as it isn't supported on desktop.

* PM-8111 - Desktop - add default overlay position const

* PM-8111 - DesktopLoginCompSvc - tests were not actually testing super method calls + finish testing launchSsoBrowserWindow

* PM-8111 - Desktop Main.ts - remove dev test code

* PM-8111 - WebLoginCompSvcTests - add success test cases for getOrgPolicies

* PM-8111 - Remove duplicate translation keys

* PM-8111 - DefaultLoginComponentSvcTests - add missing test

* PM-8111 - DefaultLoginComponentServiceTests - add describes

* PM-8111 - LoginSecondaryContentComponent  - Add missing bitLink

* Update to test both browser and desktop

* Remove registration form test

* Remove aliasing CryptoFunctionService and PlatformUtilsService as abstractions

* Remove aliasing PlatformUtilsService and CryptoFunctionService as abstractions

---------

Co-authored-by: Alec Rippberger <alec@livefront.com>
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
Co-authored-by: Alec Rippberger <127791530+alec-livefront@users.noreply.github.com>
Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
2024-10-24 15:53:34 -04:00
Cesar Gonzalez da1e508c25
[PM-8833] Implement on page autofill menu for password generation (#11114) 2024-10-24 13:20:00 -05:00
Shane Melton a9d9130f01
[PM-13907] [PM-13849] Browser Refresh - Improve launch login UX (#11680)
* [PM-13907] Move canLaunch logic to CipherView

* [PM-13907] Add external link icon to vault list items

* [PM-13907] Remove launch option from more options dropdown

* [PM-13849] Add double click to launch support
2024-10-24 10:51:38 -07:00
Bernd Schoolmann b486fcc689
[Pm-13097] Rename cryptoservice to keyservice and move it to km ownership (#11358)
* Rename cryptoservice to keyservice

* Rename cryptoservice to keyservice

* Move key service to key management ownership

* Remove accidentally added file

* Fix cli build

* Fix browser build

* Run prettier

* Fix builds

* Fix cli build

* Fix tests

* Fix incorrect renames

* Rename webauthn-login-crypto-service

* Fix build errors due to merge conflicts

* Fix linting
2024-10-24 19:41:30 +02:00
Jason Ng 2e9177d268
[PM-13854] update autofill label in browser (#11687) 2024-10-24 12:13:01 -04:00
Nick Krantz 44e182e32e
[PM-13187] Hide "Assign To Collections" when the user has no orgs (#11668)
* web - hide assign to collections button when the user has no organizations

* browser - hide assign to collections button when the user has no organizations

* hide assign to collections in the bulk edit menu when the user doesn't belong to an organization
2024-10-24 10:30:46 -05:00
Jonathan Prusik 15c301d39f
Do not redirect after saving changes to excluded domains (#11676) 2024-10-24 10:15:24 -04:00
Cesar Gonzalez 9b471e6633
[PM-13715] Launching a website from the extension does not trigger an update to reference the correct autofill value (#11587)
* [PM-13715] Launching page from cipher does not set correct autofill action

* [PM-13715] Fix autofill not triggering for correct cipher after page has been launched from browser extension
2024-10-24 08:22:43 -05:00
Bernd Schoolmann 74dabb97bf
Move process reload ownership to key-management (#10853) 2024-10-23 19:05:24 +02:00
✨ Audrey ✨ eff9a423da
[PM-8280] email forwarders (#11563)
* forwarder lookup and generation support
* localize algorithm names and descriptions in the credential generator service
* add encryption support to UserStateSubject
* move generic rx utilities to common
* move icon button labels to generator configurations
2024-10-23 18:11:42 +02:00
cd-bitwarden e67577cc39
Updating chipSelect to be the new styling (#11593) 2024-10-23 11:40:11 -04:00
cd-bitwarden 79d7d506df
[PM-12996] Updating UI Spacing for bit section header (#11609)
* Adding space to the section header

* Updating spacing to the left of the bit section header
2024-10-23 11:39:57 -04:00
Nick Krantz c4fcd53ad2
[PM-13776] Generator Icon Button labels (#11623)
* update aria labels for generate and copy buttons within the generator components

- Using the `appA11yTitle` across all icon buttons
- Updated all labels to be targeted towards the credential type rather than just "password"

* add copy/generate passphrase translations to desktop

* add fixme comments for translations

* remove reference to JIRA ticket
2024-10-23 10:23:51 -05:00
Jordan Aasen dfa7509c8e
account for potential null config in SendFilePopoutDialogContainerComponent (#11372) 2024-10-23 17:20:34 +02:00
Oscar Hinton 173a5e2574
[PM-13277] Gulp: Remove unnecessary filtering (#11456)
Part of the browser build script refactor effort. bitwarden.atlassian.net/browse/PM-6683

We seem to have some very old filters related to fonts and safari build files. These predates our modern usage of webpack for bundling only used assets.

I've run diff -qr on Chrome, Firefox and Safari builds and the only difference is that we now include a bwi-font.svg resource. bwi-font.svg is referenced in our css files and "should" be included.
2024-10-22 18:53:30 +02:00
SmithThe4th 4a30782939
[PM-12281] [PM-12301] [PM-12306] [PM-12334] Move delete item permission to Can Manage (#11289)
* Added inputs to the view and edit component to disable or remove the delete button when a user does not have manage rights

* Refactored editByCipherId to receive cipherview object

* Fixed issue where adding an item on the individual vault throws a null reference

* Fixed issue where adding an item on the AC vault throws a null reference

* Allow delete in unassigned collection

* created reusable service to check if a user has delete permission on an item

* Registered service

* Used authorizationservice on the browser and desktop

Only display the delete button when a user has delete permission

* Added comments to the service

* Passed active collectionId to add edit component

renamed constructor parameter

* restored input property used by the web

* Fixed dependency issue

* Fixed dependency issue

* Fixed dependency issue

* Modified service to cater for org vault

* Updated to include new dependency

* Updated components to use the observable

* Added check on the cli to know if user has rights to delete an item

* Renamed abstraction and renamed implementation to include Default

Fixed permission issues

* Fixed test to reflect changes in implementation

* Modified base classes to use new naming

Passed new parameters for the canDeleteCipher

* Modified base classes to use new naming

Made changes from base class

* Desktop changes

Updated reference naming

* cli changes

Updated reference naming

Passed new parameters for the canDeleteCipher$

* Updated references

* browser changes

Updated reference naming

Passed new parameters for the canDeleteCipher$

* Modified cipher form dialog to take in active collection id

used canDeleteCipher$ on the vault item dialog to disable the delete button when user does not have the required permissions

* Fix number of arguments issue

* Added active collection id

* Updated canDeleteCipher$ arguments

* Updated to pass the cipher object

* Fixed up refrences and comments

* Updated dependency

* updated check to canEditUnassignedCiphers

* Fixed unit tests

* Removed activeCollectionId from cipher form

* Fixed issue where bulk delete option shows for can edit users

* Fix null reference when checking if a cipher belongs to the unassigned collection

* Fixed bug where allowedCollection passed is undefined

* Modified cipher by adding a isAdminConsoleAction argument to tell when a reuqest comes from the admin console

* Passed isAdminConsoleAction as true when request is from the admin console
2024-10-22 09:15:15 -04:00
Jared Snider c16d1e0e74
AnonLayoutWrapperComponents - Add reset support for null values (#11651) 2024-10-21 18:52:07 -04:00
Jordan Aasen c89d8a00a1
fix voiceover on send created screen (#11628) 2024-10-21 20:50:50 +02:00
Nick Krantz 116d2166c3
remove slideIn animation as it doesn't support the "show animations" setting (#11591) 2024-10-21 13:05:15 -05:00
Jordan Aasen 4b9fbfc832
[PM-13769] - fix routing for send created page (#11629)
* fix routing for send created page

* fix test

---------

Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
2024-10-21 19:45:07 +02:00
Daniel James Smith d298ac6edf
[PM-13189] Send copy updates (#11619)
* Add more descriptive header text

* Update hint under optional password field

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-10-21 10:10:57 -04:00
Jonathan Prusik c9de05de95
[PM-13675] Adjust browser autofill override instructions conditions and placement in the settings view (#11559)
* adjust browser autofill override instructions conditions and placement in the settings view

* adjust placement of override instructions in the refresh component for Firefox
2024-10-21 09:50:59 -04:00
Jonathan Prusik 6335dd6cd7
update search state to show contextual no results view messages (#11570) 2024-10-21 09:47:01 -04:00
github-actions[bot] cbb6cf42aa
Autosync the updated translations (#11637)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-10-21 13:32:27 +00:00
Nick Krantz 97bf459424
[PM-13251] Password History (#11618)
* add password history view component in vault lib

* integrate PasswordHistoryView into individual vault

* add password history v2 to browser extension

* update color of password history link

* add check for `cipherId` before rendering password history
2024-10-18 14:57:08 -05:00
Jordan Aasen 0e23f5e0cd
fix expiration date (#11625) 2024-10-18 20:06:23 +02:00
Andreas Coroiu c787ecd22c
[PM-11764] Implement account switching and sdk initialization (#11472)
* feat: update sdk service abstraction with documentation and new `userClient$` function

* feat: add uninitialized user client with cache

* feat: initialize user crypto

* feat: initialize org keys

* fix: org crypto not initializing properly

* feat: avoid creating clients unnecessarily

* chore: remove dev print/subscription

* fix: clean up cache

* chore: update sdk version

* feat: implement clean-up logic (#11504)

* chore: bump sdk version to fix build issues

* chore: bump sdk version to fix build issues

* fix: missing constructor parameters

* refactor: simplify free() and delete() calls

* refactor: use a named function for client creation

* fix: client never freeing after refactor

* fix: broken impl and race condition in tests
2024-10-18 16:15:10 +02:00
github-actions[bot] fcf52638c9
Autosync the updated translations (#11617)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-10-18 07:37:55 +00:00
Jared Snider 4b67cd24b4
Auth/PM-8112 - UI refresh - Registration Components (#11353)
* PM-8112 - Update classes of existing registration icons

* PM-8112 - Add new icons

* PM-8112 - Export icons from libs/auth

* PM-8112 - RegistrationStart - Add new user icon as page icon

* PM-8112 - Replace RegistrationCheckEmailIcon with new icon so it displays properly

* PM-8112 - RegistrationFinish - Add new icon across clients

* PM-8112 - Registration start comp - update page icon and page title on state change to match figma

* PM-8112 - RegistrationFinish - adding most of framework for changing page title & subtitle when an org invite is in state.

* PM-8112 - Add joinOrganizationName to all clients translations

* PM-8112 - RegistrationFinish - Remove default page title & subtitle and let onInit logic figure out what to set based on flows.

* PM-8112 - RegistrationStart - Fix setAnonLayoutWrapperData calls

* PM-8112 - RegistrationFinish - simplify qParams init logic to make handling loading and page title and subtitle setting easier.

* PM-8112 - Registration Link expired - move icon to page icon out of main content

* PM-8112 - RegistrationFinish - Refactor init logic further into distinct flows.

* PM-8112 - Fix icons

* PM-8112 - Extension AppRoutingModule - move sign up start & finish routes under extension anon layout

* PM-8112 - Fix storybook

* PM-8112 - Clean up unused prop

* PM-8112 - RegistrationLockAltIcon tweaks

* PM-8112 - Update icons to have proper styling

* PM-8112 - RegistrationUserAddIcon - remove unnecessary svg class

* PM-8112 - Fix icons
2024-10-16 18:28:27 -04:00
Cesar Gonzalez 80d0f7e385
[PM-13768] Create account fields are no longer showing the inline menu when identities are turned off (#11592) 2024-10-16 15:26:16 -05:00
Todd Martin 0f525fa9bc
[PM-11778] Removed super syntax and replaced with this (#11511) 2024-10-16 16:05:11 -04:00
Jared Snider 34e2d3dad2
PM-13318 - Fix missed page titles which didn't get converted to the new translation interface (#11572) 2024-10-15 22:34:44 -04:00
Merissa Weinstein 1eaa80de26
Revert "Bumped client version(s) (#11564)" (#11566)
This reverts commit c459253beb.
2024-10-15 18:38:13 +00:00
bw-ghapp[bot] c459253beb
Bumped client version(s) (#11564)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-10-15 18:27:30 +00:00
Cesar Gonzalez 32d12b3d6a
[PM-7980] Inline autofill menu is not shown inside dialog html tag (#11474)
* [PM-7980] Fix inline menu not showing inside dialog html tag

* [PM-7980] Fix inline menu not showing inside dialog html tag

* [PM-7980] Fixing an issue where a dialog element could potentially not represent itself in the #top-layer
2024-10-15 11:34:14 -05:00
Oscar Hinton 55ee33206f
Fix log service not binding this (#11551) 2024-10-15 12:21:08 -04:00
Jonathan Prusik 1c2cb4440b
[PM-12345] Add cipher type settings for inline autofill menu (#11260)
* add inline menu identity and card visibility settings state to autofill settings service

* add inline menu identity and card visibility settings to autofill settings view component

* add inline menu identity and card visibility settings to legacy autofill settings view component

* do not show inline menu card and identity visibility settings if inline-menu-positioning-improvements feature flag is off

* show card and identity inline menus based on their visibility settings

* do not show identities in account creation username/email fields if user setting disallows it

* reload local tab settings for inline menu visibility when an inline visibility setting value changes

* take out tabSendMessageData call for inline menu visibility sub-settings

---------

Co-authored-by: Cesar Gonzalez <cesar.a.gonzalezcs@gmail.com>
2024-10-15 11:07:52 -04:00
Jordan Aasen 7afc99da1e
add missing import (#11549) 2024-10-15 11:20:11 +02:00
Jordan Aasen fa41f29fc4
[CL-425] - add tools card component (#11375)
* add tools card component

* rename to tools-card

* whitelist readme

* fix tw classes in card component

* add RTL support.

* add documentation. revert changes to settings

* Revert vscode settings

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-10-11 23:00:45 +02:00
Jared Snider 7297d0fccd
Auth/PM-13318 - AnonLayoutWrapperData Refactor to add full Translation support (#11513)
* PM-13318 - AnonLayoutWrapperData refactor to support all possible string scenarios (untranslated string, translated string, and translated string with placeholders)

* PM-13318 - Fix accidental check in

* PM-13318 - Revert the correct change.

* PM-13318 - Fix test failures
2024-10-11 16:02:47 -04:00
Daniel James Smith 784dd3c9a0
Remove right angle icon from about bitwarden button (#11503)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-10-11 15:58:30 -04:00
github-actions[bot] 7c86474fc0
Autosync the updated translations (#11496)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-10-11 08:02:52 +00:00
Cesar Gonzalez c221efd09a
[PM-13312] Task scheduler loses event callback reference when popout opens (#11492)
* [PM-13312] Task scheduler loses event callback reference when popout opens

* [PM-13312] Task scheduler loses event callback reference when popout opens
2024-10-10 15:53:33 -05:00
Cesar Gonzalez 877dfeae7e
[PM-13184] Filter out specific-nodes within TreeWalker query (#11415) 2024-10-09 18:14:39 -05:00
Cesar Gonzalez 36c965c453
[PM-9876] Safari Passkeys Prompt is Not Triggered (#11471) 2024-10-09 08:45:28 -05:00
Jordan Aasen 4ce6df3040
[PM-11926] - fix send created page text (#11467)
* fix send created page

* remove unused i18n key

* remove superfluous spec

* fix failing tests
2024-10-09 13:28:39 +02:00
Cesar Gonzalez a5c1a5a42f
[PM-12548] Fido2 scripts should not load when user is logged out (#11444)
* [PM-12548] Fido2 scripts should not load when user is logged out

* [PM-12548] Fido2 scripts should not load when user is logged out
2024-10-08 16:02:49 -05:00
Cesar Gonzalez fdfbe66513
[PM-13284] Implement method to ensure that we can handle logic when switching the notification improvements feature flag (#11468) 2024-10-08 15:47:20 -05:00
Cesar Gonzalez ce871672d2
[PM-13284] Reworked notification bar does not display for certain websites (#11462)
* [PM-13284] Notification bar does not display for certain websites

* [PM-13284] Notification bar does not display for certain websites

* [PM-13284] Notification bar does not display for certain websites
2024-10-08 14:03:58 -05:00
Jonathan Prusik 0c2d2ada34
fix fido2 component copy translations (#11460) 2024-10-08 14:51:41 -04:00
✨ Audrey ✨ dc1f014ad8
[PM-8282] credential generator (#11398)
* credential generator browser ui
* switch browser generate screen to extension refresh flag
* consolidate generator components into module
* add `@bitwarden/generator-components` readme
* normalize generator component rx subscriptions
2024-10-08 14:08:34 -04:00
Oscar Hinton 844d2298e9
[PM-13271] Remove unused ci:coverage from gulpfile (#11455)
Remove the gulp coverage report since we now use jest, and coverage is handled through the root coverage report which is done in a different script.
2024-10-08 16:33:27 +02:00
Thomas Rittson 7c72795d1c
[PM-12747] Move CollectionService and models to AC Team (#11278) 2024-10-08 10:14:39 -04:00
Cesar Gonzalez b6ea6075b3
[PM-13188] Update auto-submit to act on uri hash instead of query param (#11416) 2024-10-08 05:40:11 -05:00
Oscar Hinton 7e4d735532
[PM-11290] Fix safari not starting with sdk (#11438)
We ran into some inconsistencies between how manifest v2 and v3 are handled in browsers. To resolve this we have a different flow for manifest v2 which dynamically imports, while v3 uses the sync importScripts.
2024-10-07 18:00:07 +02:00
bw-ghapp[bot] c98b4553f2
Bumped client version(s) (#11439)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-10-07 15:06:39 +00:00
Oscar Hinton 9ea9c3a932
[PM-11290] Enable SDK (#11378)
Follow up PR to #10974, flips the compile time flags to enabled and includes some debug logic to detect if users encounter issues with the WASM bundle in preparation for active consumption of the SDK.
2024-10-07 13:56:02 +02:00
Oscar Hinton c88c5bf1ef
[PM-11766] Introduce SDK client (#10974)
Integrate the SDK into our other clients.
2024-10-07 13:20:50 +02:00
Jared Snider 87cb45c520
Auth/PM-13114 - WebEnvService Refactor + Unit Tests to support QA Env Selector (#11397)
* PM-13114 - WebEnvSvc - use hostname vs domain check for init and setEnv (tests TODO)

* PM-13114 - WebEnvSvc + URLs webpack config - use expected string variable on process.env.URLS to ensure tests can properly mock the WebEnvSvc

* PM-13114 - WebEnvSvc - setEnvironment - fix issue with returning currentRegion urls instead of currentEnv urls.

* PM-13114 - WebEnvSvc - setEnv - refactor names to improve clarity.

* PM-13114 - WebEnvSvc spec file - Test all prod scenarios

* PM-13144 - Work with Justin to move process.env.Urls access into injection token and remove webpack string type conversion.

* PM-13114 - WIP on getting additionalRegionConfigs injected via injection token to default env service.

* PM-13114 - Update all background inits to pass process.env.ADDITIONAL_REGIONS as unknown as RegionConfig[] to env service.

* PM-13114 - WebEnvSvc - adjust order of constructor deps

* PM-13114 - WebEnvSvc - add WebRegionConfig to extend RegionConfig type and be accurate for what the WebEnvSvc uses.

* PM-13114 - WebEnvSvc Tests - US QA tested

* PM-13114 - WebEnvSvc tests - refactor QA naming to make it more clear.

* PM-13114 - WebEnvSvc - test QA EU

* PM-13114 - WebEnvSvc - remove promise resolve per PR feedback.
2024-10-04 14:57:40 -04:00
Jordan Aasen d4767bf172
revert change to removing send tab (#11394) 2024-10-04 09:35:07 -04:00
github-actions[bot] 8a7af0bd32
Autosync the updated translations (#11399)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-10-04 10:44:43 +00:00
Cesar Gonzalez bf38f2dfee
[PM-12775] Password autofill should not occur within 2FA fields (#11303) 2024-10-03 16:53:45 -05:00
Jonathan Prusik 8104e2bb7e
update fido2 overwrite passkey dialog type (#11392) 2024-10-03 15:01:46 -04:00
Jonathan Prusik 386bcaeabd
fix fido2 cipher row component subname not having proper layout/styling (#11389) 2024-10-03 13:28:47 -04:00
Justin Baur 3f8f5bc1fa
[PM-7535] Remove Uses of `getUserId` (#10837)
* Remove Uses of `getUserId`

* Fix Test
2024-10-03 10:33:24 -04:00
bw-ghapp[bot] 229b712c05
Bumped client version(s) (#11380)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-10-03 14:05:50 +00:00
Andreas Coroiu 29db451808
fix: only load vault timeout service in background (#11344) 2024-10-03 13:11:50 +02:00
Jordan Aasen 21a4b48eca
fix logic for hiding sends tab (#11352) 2024-10-02 12:09:10 -04:00
Nick Krantz af231b3914
convert anchor link to button on trash page (#11351) 2024-10-02 10:53:40 -05:00
Jared Snider 9ff1db7573
Auth/PM-9449 - UI Refresh + Client component consolidation into new LockV2 Component (#10451)
* PM-9449 - Init stub of new lock comp

* PM-9449 - (1) Add new lock screen title to all clients (2) Add to temp web routing module config

* PM-9449 - LockV2Comp - Building now with web HTML

* PM-9449 - Libs/Auth LockComp - bring in all desktop ts code; WIP, need to stand up LockCompService to facilitate ipc communication.

* PM-9449 - Create LockComponentService for facilitating client logic; potentially will decompose later.

* PM-9449 - Add extension lock comp service.

* PM-9449 - Libs/auth LockComp - bring in browser extension logic

* PM-9449 - Libs/auth LockComp html start

* PM-9449 - Libs/Auth LockComp - (1) Remove unused dep (2) Update setEmailAsPageSubtitle to work.

* PM-9449 - Add getBiometricsError to lock comp service for extension.

* PM-9449 - LockComp - (1) Save off client type as public comp var (2) Rename biometricLock as biometricLockSet

* PM-9449 - Work on lock comp service getAvailableUnlockOptions

* PM-9449 - WIP libs/auth LockComp

* PM-9449 - (1) Remove default lock comp svc (2) Add web lock comp svc.

* PM-9449 - UnlockOptions - replace incorrect type

* PM-9449 - DesktopLockComponentService -get most of observable based getAvailableUnlockOptions$ logic in place.

* PM-9449 - LockCompSvc - getAvailableUnlockOptions in place for all clients.

* PM-9449 - Add getBiometricsUnlockBtnText to LockCompSvc and put TODO for wiring it up later

* PM-9449 - Lock Comp - Replace all manual bools with unlock options.

* PM-9449 - Desktop Lock Comp Svc - adjust spacing

* PM-9449 - LockCompSvc - remove biometricsEnabled method

* PM-9449 - LockComp - Clean up commented out code

* PM-9449 - LockComp - webVaultHostname --> envHostName

* PM-9449 - Fix lock comp svc deps

* PM-9449 - LockComp - HTML progress

* PM-9449 - LockComp cleanup

* PM-9449 - Web Routing Module - wire up lock vs lockv2 using extension swap

* PM-9449 - Wire up loading state

* PM-9449 - LockComp - start wiring up listenForActiveUnlockOptionChanges logic with reactivity

* PM-9449 - Update desktop & extension lock comp service to use new biometrics service vs platform utils for biometrics information.

* PM-9449 - LockV2 - Swap platform util usage with toast svc

* PM-9449 - LockV2Comp - Bring over user id logic from PM-8933

* PM-9449 - LockV2Comp - Adjust everything to use activeAccount.id.

* PM-9449 - LockV2Comp - Progress on wiring up unlock option reactive stream.

* PM-9449 - LockComp ts - some refactoring and minor progress.

* PM-9449 - LockComp HTML - refactoring based on new idea to keep unlock options as separate as possible.

* PM-9449 - Add PIN translation to web

* PM-9449 - (1) Lock HTML refactor to make as independent verticals as possible (2) Refactor Lock ts (3) LockSvc - replace type with enum.

* PM-9449 - LockV2Comp - remove hardcoded await.

* PM-9449 - LockComp HTML - add todo

* PM-9449 - Web - Routing module - cleanup commented out stuff

* PM-9449 - LockV2Comp - Wire up biometrics + mild refactor.

* PM-9449 - Desktop - Wire up lockV2 redirection

* PM-9449 - LockV2 - Desktop - don't focus until unlock opts defined.

* PM-9449 - Fix accidental check in

* PM-9449 - LockV2 - loading state depends on unlock opts

* PM-9449 - LockV2 comp - remove unnecessary hr

* PM-9449 - Migrate  "yourVaultIsLockedV2" translation to desktop & browser.

* PM-9449 - LockV2 - Layout tweaks for biometrics

* PM-9449 - LockV2 - Biometric btn text

* PM-9449 - LockV2 - Wire up biometrics loading / disable state + remove unnecessary conditions around biometricsUnlockBtnText

* PM-9449 - DesktopLockSvc - Per discussion with Bernd, remove interval polling and just check once for biometric support and availability.

* PM-9449 - AuthGuard - Add todo to remove promptBiometric

* PM-9449 - LockV2 - Refactor primary and desktop init logic + misc clean up

* PM-9449 - LockV2 - Reorder init methods

* PM-9449 - LockV2 - Per discussion with Product, deprecate windows biometric settings update warning

* PM-9449 - Add TODO per discussion with Justin and remove TODO

* PM-9449 - LockV2 - Restore hide password on desktop window hidden functionality.

* PM-9449 - Clean up accomplished todo

* PM-9449 - LockV2 - Refactor func name.

* PM-9449 - LockV2 Comp - (1) TODO cleanup (2) Add browser logic to handleBiometricsUnlockEnabled

* PM-9449 - LockCompSvc changes - (1) Observability for isFido2Session (2) Adjust errors and returns per discussion with Justin

* PM-9449 - Per product, no longer need to support special fido2 case on extension.

* PM-9449 - LockCompSvc - add getPreviousUrl support

* PM-9449 - LockV2 - Continued ts cleanup

* PM-9449 - LockV2Comp - clean up unused props

* PM-9449 - LockV2Comp - Rename response to masterPasswordVerificationResponse

* PM-9449 - LockV2 - Remove unused formPromise prop

* PM-9449 - Add missing translations + update desktop to showReadonlyHostName

* PM-9449 - LockV2 - cleanup TODO

* PM-9449 - LockV2 - more cleanup

* PM-9449 - Desktop Routing Module - only allow LockV2 access if extension refresh flag is enabled.

* PM-9449 - Extension - AppRoutingModule - Add extension redirect + new lockV2 route.

* PM-9449 - Extension - AppRoutingModule - Add lockV2 to the ExtensionAnonLayoutWrapperComponent intead of the regular one.

* PM-9449 - Extension - CurrentAccountComp - add null checks as anon layout components don't have a state today. This prevents the account switcher from working on the new lockV2 comp.

* PM-9449 - Extension AppRoutingModule - LockV2 should use ExtensionAnonLayoutWrapperData

* PM-9449 - LockComp - BiometricUnlock - cancelling is a valid action.

* PM-9449 - LockV2 - Biometric autoprompt cleanup

* PM-9449 - LockV2 - (1) Add TODO for KM team (2) Fix submit logic.

* PM-9449 - Tweak TODO to add task #

* PM-9449 - Test WebLockComponentService

* PM-9449 - ExtensionLockComponentService tested

* PM-9449 - Tweak extension lock comp svc test

* PM-9449 - DesktopLockComponentService tested

* PM-9449 - Add task # to TODO

* PM-9449 - Update apps/browser/src/services/extension-lock-component.service.ts per PR feedback

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>

* PM-9449 - Per PR feedback, replace from with defer for better reactive execution of promise based functions.

* PM-9449 - Per PR feedback replace enum with type.

* PM-9449 - Fix imports and tests due to key management file moves.

* PM-9449 - Another test file import fix

---------

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
2024-10-01 16:06:18 -04:00
Jordan Aasen dab60dbaea
[PM-11926] - send created redirect (#11140)
* send created redirect

* fix test

* fix test

* fix send form save

* return SendData from saveSend

* When saving a Send, bubble up a SendView which can be passed to the SendCreated component

* Use events to initiate navigation and move actual navigation into client-specific component

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-10-01 21:58:00 +02:00
Jordan Aasen ab5a02f483
[PM-12774] - don't display filters when no sends are available (#11298)
* don't display filters when no sends are available

* move logic down. add conditional class

* fix logic for send filters
2024-10-01 20:46:10 +02:00
Bernd Schoolmann dafe795854
Move asymmetric crypto functions out of crypto service (#10903) 2024-10-01 17:47:41 +02:00
Nick Krantz f2339b0586
[PM-12718] Vault item - keyboard focus (#11338)
* refactor vault-list-item to be a button so it is keyboard accessible

- an anchor tag without an `href` isn't included in the tab order

* allow bit-item-content focus state to be visible

- cdk-virtual-scroll-viewport applied certain styles that hid overflow. Because each bit-item-group isn't a scroll container for vault items, these should be safe to alter.
2024-10-01 09:44:30 -05:00
Jordan Aasen 6e7c83305e
[PM-12990]- center align footer buttons (#11342)
* center align footer buttons

* fix popup-tab-navigation layout
2024-10-01 10:35:39 -04:00
Cesar Gonzalez 7108a34ac0
[PM-12619] Passkey script cleanup process triggers breaking behavior in websites (#11304) 2024-10-01 07:27:07 -05:00
Andreas Coroiu 0846c2c822
[PM-11780] Resolve TypeScript 5.3 compile error 2024-10-01 13:39:36 +02:00
Jordan Aasen 5a1583cb0a
[PM-12732] - fix new send button (#11266)
* fix new send button

* simplify logic. use static class name where possible
2024-10-01 11:36:34 +02:00
Jared Snider ffc97c385d
All Clients - Route data typing clean up (#11265) 2024-09-30 13:51:31 -04:00
Bernd Schoolmann 19f547e638
[PM-8836] Move ownership of biometrics to key-management (#10818)
* Move ownership of biometrics to key-management

* Move biometrics ipc ownership to km

* Move further files to km; split off preload / ipc to km

* Fix linting

* Fix linting

* Fix tests

* Fix tests

* Update .github/CODEOWNERS

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

* Update .github/CODEOWNERS

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

* Change ownership of native messaging to key-management

* Move biometrics to libs/key-management

* Add README to capital whitelist

* Update package-lock.json

* Move km to key-management

* Move km to key-management

* Fix build for cli

* Import fixes

* Apply prettier fix

* Fix test

* Import fixes

* Import fixes

* Update libs/key-management/README.md

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

* Update libs/key-management/package.json

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

* Update lock file

* Change imports to top level km package

---------

Co-authored-by: Maciej Zieniuk <167752252+mzieniukbw@users.noreply.github.com>
2024-09-30 18:14:32 +02:00
Victoria League b149db9f4d
[CL-458] Exclude badges from truncation and vertically center content (#11262) 2024-09-30 11:45:51 -04:00
Jordan Aasen 0ecdd46a47
[PM-11927] - fix file send popout copy and logic (#11297)
* fix copy and logic

* update copy
2024-09-28 09:30:20 +02:00
Cesar Gonzalez 09e3468c69
[PM-12426] Autofill Inline Menu Settings Not Properly Referenced in Self-Hosted Environments (#11246) 2024-09-27 18:13:53 -05:00
Jordan Aasen 08e9a69083
fix delete send button (#11296) 2024-09-27 19:56:17 +02:00
✨ Audrey ✨ 433ae13513
[PM-5611] username generator panel (#11201)
* add username and email engines to generators
* introduce username and email settings components
* introduce generator algorithm metadata
* inline generator policies
* wait until settings are available during generation
2024-09-27 09:02:59 -04:00
Jordan Aasen 739c76a24f
[PM-12704] - fix loading state for send list (#11264)
* fix loading state for send service

* fix test

* fix test and service
2024-09-27 13:38:50 +02:00
github-actions[bot] ff57c72df5
Autosync the updated translations (#11271)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-09-27 11:09:44 +00:00
Cesar Gonzalez 077abe0518
[PM-12316] Implement inline menu passkeys authenticating state (#11113) 2024-09-25 16:56:50 -05:00
Jordan Aasen caece397c6
[PM-11927] - File Send popout dialog (#11138)
* file popout component

* finish file popout dialog

* finalize send popout dialog component

* fix tests

* conditionally provide file popout dialog

* simplify send file popout dialog

* add file popout dialog container

* remove unnecessary modules
2024-09-25 21:35:12 +02:00
Jordan Aasen 7f33954316
don't display free bitwarden families button (#11184) 2024-09-25 19:56:04 +02:00
Jordan Aasen d0b09202c6
[PM-12504] - hide create send button and send tab when sends are disabled (#11186)
* hide create send button and send tab when sends are disabled

* reverse logic

* tidy up filter.

* fix popup tab navigation filter

* fix popup tab nav state

* fix popup-layout stories
2024-09-25 10:40:23 -07:00