1
0
mirror of https://github.com/bitwarden/browser.git synced 2024-12-23 16:38:45 +01:00
Commit Graph

1897 Commits

Author SHA1 Message Date
Rui Tomé
97e195cd7b
[PM-11404] Account Management: Prevent a verified user from purging their vault (#11411)
* Update AccountService to include a method for setting the managedByOrganizationId

* Update AccountComponent to conditionally show the purgeVault button based on a feature flag and if the user is managed by an organization

* Add missing method to FakeAccountService

* Remove the setAccountManagedByOrganizationId method from the AccountService abstract class.

* Refactor AccountComponent to use OrganizationService to check for managing organization

* Rename managesActiveUser to userIsManagedByOrganization

* Refactor userIsManagedByOrganization property to be non-nullable in organization data and response models

* Refactor organization.data.spec.ts to include non-nullable userIsManagedByOrganization property
2024-10-17 16:06:33 +01:00
Jared Snider
a5f856da2a
Component Library - Add Icon documentation (#11571)
* Add Icon documentation

* Add 7th bullet

* Icon docs - add context on how to go from hex values to appropriate tailwind classes.

* 7th bullet needs bold to look right

* Add color icon per suggestion
2024-10-17 10:47:08 -04:00
Bernd Schoolmann
e8f0135d50
[PM-12806] Enforce 5000 iteration minimum for prelogin (#11332)
* Enforce 5000 iteration minimum for prelogin

* Fix tests

* Add more extensive tests

* Add loginstrategy prelogin downgrade test
2024-10-17 09:58:07 -04:00
Jordan Aasen
288b0cff2f
fix send options viewsLeft (#11594) 2024-10-17 15:28:02 +02:00
Daniel James Smith
783305696a
Fix stories title for card-component (#11562)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-10-17 09:22:56 -04:00
Addison Beck
073ee4739b
Split Organization.LimitCollectionCreationDeletion into two separate business rules (#11223)
* Declare feature flag

* Introduce new model properties

* Reference feature toggle in template

* Fix bugs caught during manual testing
2024-10-17 06:34:34 -04: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
Jordan Aasen
6e37047776
account for possible null value (#11589) 2024-10-16 21:11:43 +02:00
Brandon Treston
1f330b078d
Remove platformUtilService.showToast call (#11410) 2024-10-16 09:52:45 -04:00
Nick Krantz
d8f1527db0
[PM-13016] Browser default match detection (#11569)
* update conditional to only exit early if value is null

- The UriMatchStrategy for Domain was 0 and hitting the conditional

* add baseDomain test
2024-10-16 08:11:41 -05:00
Thomas Rittson
178a418850
Conditionally disable client-side policy validation (#11550) 2024-10-16 08:46:03 +10:00
Jordan Aasen
87545e4d21
fix logic for displaying hide email in send options (#11561) 2024-10-15 20:48:51 +02: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
Nick Krantz
e5ca6fd460
wrap generate & copy buttons in a flex container, flex containers do not wrap by default (#11558) 2024-10-15 11:06:36 -05:00
Nick Krantz
15e5a6d747
update heading level on password generator (#11556) 2024-10-15 17:16:00 +02: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
Daniel James Smith
40ab96a7ce
Show disabled Sends within Send list view (#11555)
With #10192 we introduced the new send-list-filters, and filtered out any disabled sends. These still need to be shown as the the other clients still support enabling/disabling Sends

This will be removed once all clients use the same shared components.

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-10-15 10:54:00 -04:00
Jordan Aasen
445477225c
fix label width in password generator (#11515) 2024-10-14 15:24:23 +02:00
Jordan Aasen
1459c06d17
[PM-12724] - fix logic for showing new password (#11512)
* fix logic for showing new password

* fix logic
2024-10-14 15:22:22 +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
Victoria League
988c2b69e0
[CL-471] Update lock icon and others (#11508) 2024-10-11 16:12:49 -04: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
Shane Melton
9d163550fd
[PM-6991] Improve reactivity of cipherViews$ observable in cipher service (#11141)
* [PM-6991] Remove self reference to cipherViews$

* [PM-6991] Update cipherViews$ observable to be reactive to encrypted ciphers and localData

* [PM-6991] Use the cipherViews$ observable in the Web vault

* [PM-6991] Update the vault filter service to use cipherViews$ observable

* [PM-6991] Add deprecation notice to getAllDecrypted

* [PM-6991] Ensure cipherViews$ emits an empty array whenever the decrypted cipher cache is cleared

* [PM-6991] Fix cipher service test

* [PM-6991] Use shareReplay instead of share

* [PM-6991] Remove ciphersExpectingUpdate and replace with a null filter instead for cipherViews$

* [PM-6991] Skip refreshing on null cipherViews$ to avoid flashing an empty vault after modifying ciphers
2024-10-10 14:54:23 -07:00
Jordan Aasen
b9be15c84b
fix password label (#11478) 2024-10-10 10:28:08 +02:00
Jared McCannon
1ca03e7815
[PM-12357] - Using new Verified SSO Domain call for SSO (#11446)
* Added new SSO verified domain call and added calling of it behind feature flag.
2024-10-09 14:30:39 -05:00
Nick Krantz
e2275ad0bc
[PM-12776] Draggable Items within a dialog (#11396)
* increase z-index `cdk-drag-preview` so it displays on top of modals/dialogs when draggable elements are within them

* update comment overlay z-index and add ticket number

* update comment
2024-10-09 12:05:31 -05:00
Jordan Aasen
f1dab68e46
don't change password field label (#11267) 2024-10-09 15:00:05 +02:00
Conner Turnbull
49b26db27e
Split invoice history table into two tables for paid and open (#11459) 2024-10-08 14:55:59 -04:00
Jared Snider
18522e5165
PM-13252 - AnonLayout - Style tweaks to fix scrollbars on browser + add typography to footer content + misc minor refactors. (#11449) 2024-10-08 14:51:08 -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
Tom
cfbe180352
Adding client side access intelligence feature flag (#11463) 2024-10-08 19:36:13 +02:00
Nick Krantz
dee7d94b1d
add platform service to cipher form story (#11458) 2024-10-08 11:45:45 -05:00
Nick Krantz
22b16b20a7
remove user match strategy on the web (#11385) 2024-10-08 10:53:20 -05:00
Nick Krantz
2c8f09d547
move password count button to display before password toggle (#11450) 2024-10-08 10:50:44 -05:00
Thomas Rittson
7c72795d1c
[PM-12747] Move CollectionService and models to AC Team (#11278) 2024-10-08 10:14:39 -04:00
Jordan Aasen
dc91a3eed7
disable copy/generate buttons when sends are disabled (#11421) 2024-10-08 12:28:27 +02:00
Daniel James Smith
e47415fe91
[PM-11437] 1Password 1pux importer updates and fixes (#10778)
* Replaced field trashed with state

The new field state contains either 'active' or 'archived'

Adjust all the test files to have the new field

Add unit test to verify skipping archived items on import

Fix importer

* Add addtional fields to 1pux importer types

No mapping currently necessary

* Field indexAtSource was deprecated

Removing it from the 1pux-importer-types

Updating all the test files

* Removed remaining instances of indexAtSource

* Fixed a leftover instance of trashed -> state

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-10-07 19:12:12 +02:00
Nick Krantz
a6db7e3086
[PM-10426] Admin Console - Edit Modal (#11249)
* add `hideFolderSelection` for admin console ciphers

* hide folder form field when configuration has `hideFolderSelection` set to true

* add `addCipherV2` method in the admin console vault

* add browser refresh logic for add/edit form

* add admin console implementation of `AdminConsoleCipherFormConfigService`

* only allow edit dialog in admin console

* remove duplicate check

* refactor comments

* initial integration of combined dialog

* integrate add cipher with admin console vault

* account for special admin console collection permissions

* add `edit` variable to AC ciphers when the user has permissions

* Move comment to JSDoc

* pass full cipher to view component

* validate edit access when opening view form

* partial-edit not applicable for admin console

* refactor hideIndividualFields to be more generic and hide favorite button

* pass entire cipher into edit logic to match view logic

* add null check for cipher when attempting to view

* remove logic for personal ownership, not needed in AC
2024-10-07 10:59:23 -05:00
Jason Ng
7098a243ca
[PM-10378] Unassigned Items Readonly After Edit Bug Fix (#11340) 2024-10-07 11:15:00 -04:00
Oleksii Holub
359b6e02d9
PM-12102 | Fix LastPass importer not properly de-encrypting URLs (#11366)
* PM-12102 | Fix LastPass importer not properly de-encrypting URLs

* Reuse the original code for the unencrypted path

* Add some comments
2024-10-07 16:55:17 +02:00
Shane Melton
68f4c2e879
[PM-12389] Vault Item Dialog Fixes (#11374)
* [PM-12389] Hide delete button when there is no cipher to delete

* [PM-12389] Ensure decrypted collections and folders are available before building cipher form config

* [PM-12389] Hide the delete button when cloning ciphers
2024-10-07 07:23:00 -07:00
Shlomo Zalman Heigh
a4123cb8ba
[PM-11497] If an org has only one collection, check it by default (#10806)
Signed-off-by: Shlomo Zalman Heigh <shlomozalmanheigh@gmail.com>
2024-10-07 10:22:10 -04: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
Shane Melton
bdf91e24c6
[PM-13177] Fix Unassigned cipher collection assignment in AC (#11419)
* [PM-13177] Add saveCollectionsWithServerAdmin to CipherService

* [PM-13177] Introduce isSingleCipherAdmin flag to AssignCollections component
2024-10-04 12:11:03 -07: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
Nick Krantz
e6ff647343
fix value update for match detections (#11417) 2024-10-04 13:16:21 -05:00
Nick Krantz
02993f7018
[PM-10439] Vault generator components (#11350)
* add password/username generator strings to web app

* remove JSLibServicesModule from generator dependencies

* integrate username and password generators into browser extension

* integrate username and password generators into web app

* move Jslib order back

* remove margin from within the generator components

* add alternative background to web generator dialog

* remove unneeded margin from username generator

* remove disable margin from div

* Revert "remove unneeded margin from username generator"

This reverts commit ae3067e3f2.

* remove CSS to alter internal margins of the generator components
2024-10-04 08:39:29 -05: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
Thomas Rittson
c8d4b819bc
[PM-11869] Adjust CollectionService to be reactive to keys being available (#11144) 2024-10-03 08:06:41 +10:00
Shane Melton
0d877c4e77
[PM-12389] Combined web vault item dialog (#11345)
* [PM-12389] Cleanup attachment dialog UI bugs

* [PM-12389] Add formReady event to CipherForm

* [PM-12389] Use ngOnChanges for CipherView component initialization

* [PM-12389] Cleanup web specific services and components

* [PM-12389] Introduce combined Vault Item Dialog component

* [PM-12389] Use the new VaultItemDialog in the Individual Vault

* [PM-12389] Deprecate the AddEditV2 and View dialogs in Web

* [PM-12389] Fix failing test

* [PM-12389] Fix broken imports after move

* [PM-12389] Remove messages.json addition that is taken care of in another PR
2024-10-02 14:34:46 -07:00
Jared Snider
4bd2e158c0
PM-12694 - Fix AnonLayoutStorybook to add router module and hideLogo toggling support (#11368) 2024-10-02 16:17:20 -04:00
✨ Audrey ✨
d1c3a98efb
introduce additional rx helpers (#11361) 2024-10-02 14:47:22 -04:00
Jordan Aasen
22a9e8788b
fix rows for textarea in text send (#11362) 2024-10-02 19:03:16 +02:00
cd-bitwarden
a23991a64b
[pm-10995] feature flag removal (#11000)
* Removing feature flag

* Removing flag from feature-flag.enum.ts

* suggested changes

* prettier

* fixing merge conflict issue

* Removing unused code

* suggested change from Gbubemi

* Adding back merge conflict code

* fixing prettier styling
2024-10-02 12:55:54 -04:00
Alec Rippberger
acd47c2b79
[PM-12694] Modify logo on AnonLayout to direct to base route on click (#11263)
* Add "back" functionality for Desktop.

* Return user to email field when logo is clicked in Web.

* Update function name.

* Move hideLogo to anchor wrapper.

* Use "/" route for logo back link.
2024-10-02 08:00:37 -05:00
Thomas Rittson
363acf58f9
[PM-12740] Move CollectionAdminService to AC Team (#11269) 2024-10-01 18:07:13 -04:00
cyprain-okeke
8b034cda7d
Remove the delete provider flag (#11336) 2024-10-01 22:01:01 +01:00
Jordan Aasen
97a97c4b2d
disable copy button if no password is present (#11349) 2024-10-01 22:38:27 +02: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
Alec Rippberger
f8ccf0cfb8
[PM-12553][Defect] Delete Attachment button needs hover state. (#11339)
* Remove tw-border-none class from delete button.

* Add transparent border
2024-10-01 11:48:59 -05:00
Bernd Schoolmann
dafe795854
Move asymmetric crypto functions out of crypto service (#10903) 2024-10-01 17:47:41 +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
Thomas Rittson
1f85036346
[PM-3478] Refactor OrganizationUser api (#10949)
* User and Group collection dialogs - don't fetch additional associations from the api
* Refactor to use user mini-details endpoint
2024-10-01 07:13:26 +10:00
Nick Krantz
8589cfd96e
[PM-5450] Admin Console event collection (#10678)
* switch `collect` to `collectMany`

- The `collect` method in collection service tries to fetch the cipher via the passed `cipherId`. The cipher service fails within the admin console in some cases.

* add `getCipherAdmin` call to fetch ciphers not in a collection
2024-09-30 13:42:33 -05:00
Alec Rippberger
b54ec7a204
Remove left padding from attachments list. (#11275) 2024-09-30 13:00:46 -05: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
Jonathan Prusik
f1b343e056
fix incorrect handling of the first day of the next month is isCardExpired (#11337) 2024-09-30 12:01:42 -04:00
Victoria League
b149db9f4d
[CL-458] Exclude badges from truncation and vertically center content (#11262) 2024-09-30 11:45:51 -04:00
Matt Gibson
a6b9088940
[PS-11868] Require key for enc string decryption (#10981)
* Specify enc string decryption key and service.

* Fix issue with identifying `this` type within extended classes

* Folder decryption example

* Test enc string changes

* Fix test name

* test decrypt with key
2024-09-30 09:34:03 -04:00
Jordan Aasen
2f8ab087ff
[PM-12721] - add copy button to send options password field (#11295)
* add copy button to  send options form

* update copy language

* fix copy button value text
2024-09-30 13:56:32 +02:00
✨ Audrey ✨
2e1cd127c7
use revised configuration name when generating send passwords (#11290) 2024-09-27 10:58:01 -04: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
f1ac1d44e3
[PM-12716] - add missing password generation function to send form password (#11273)
* add generatePassword function to send options

* add generatePassword function
2024-09-27 13:42:14 +02: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
Jared Snider
eb7eb614f5
PM-11962 - InputPasswordComp - add weak password checking (#11252) 2024-09-26 18:00:03 -04:00
Rui Tomé
430741a7e6
[PM-11334] Add managed status to sync data (#11150) 2024-09-26 11:21:46 +01:00
Jonas Hendrickx
d2e5af7fb5
[PM-11901] Refactoring self-hosting license file uploader (#11083) 2024-09-26 11:23:23 +02:00
Shane Melton
e0bca66f5e
[PM-12622] Check that readOnly is falsy not only null (#11248) 2024-09-25 15:47:46 -07:00
Jordan Aasen
7f33954316
don't display free bitwarden families button (#11184) 2024-09-25 19:56:04 +02:00
Alec Rippberger
742900a663
PM-11390: [Defect] View Login - Clicking Password History opens Edit Item window behind View Login window (#11119)
* Add password dialog component.

* Properly direct to browser password history screen.

* Add padding to history items.

* Update test to correct password history route.

* Remove unneeded provider.

* Use relative path for SharedModule.
2024-09-25 10:45:13 -04:00
Jordan Aasen
cd9045483b
[PM-12561] - add data attrs for send form (#11209)
* add data attrs for send form

* Add data-testid for toggle view password

* Revert "Add data-testid for toggle view password"

This reverts commit bd6fcc8c1b.

* move dataid to component

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-09-25 14:03:42 +02:00
Jordan Aasen
d587be1831
[PM-12403] - Implement Remove Send policy on Add/edit screen (#11178)
* disable edit send if policy requires

* remove unused var

* don't display free bitwarden families button

* Revert "don't display free bitwarden families button"

This reverts commit 832564d705.

* use config instead of policy service

* Revert "don't display free bitwarden families button"

This reverts commit 832564d705.

* remove unnecessary code

* Use short when transforming deletionDate instead of fixed format

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-09-25 11:07:01 +00:00
Todd Martin
85b97d9304
Remove authenticator-token feature flag (#11182) 2024-09-24 17:02:39 -04:00
Todd Martin
bdcf920e62
Remove references to device-trust-logging feature flag (#11183) 2024-09-24 16:47:10 -04:00
Jonathan Prusik
e88e231d48
[PM-11588] Bugfix - parse user input value for combined expiry date when creating/adding a card cipher (#11103)
* simplify logic and fix some pattern-matching bugs

* add first pass at parsing combined expiry year and month from user input

* clean up code

* fix broken three-digit parsing case

* fix case where splitCombinedDateValues returns empty strings when the input is only a delimiter

* fix incorrect expectation of falsy negative integers

* clean up code

* split out logic from parseYearMonthExpiry

* move utils from vault to autofill
2024-09-24 10:36:44 -04:00
Jordan Aasen
8507097fe7
fix send password input (#11208) 2024-09-24 11:45:08 +02:00
Bernd Schoolmann
d92b2cbea2
[PM-11477] Remove deprecated cryptoservice functions (#10854)
* Remove deprecated cryptoservice functions

* Use getUserkeyWithLegacySupport to get userkey

* Fix tests

* Fix tests

* Fix tests

* Remove unused cryptoservice instances

* Fix build

* Remove unused apiService in constructor

* Fix encryption

* Ensure passed in key is used if present

* Fix sends and folders

* Fix tests

* Remove logged key

* Fix import for account restricted keys
2024-09-24 11:28:33 +02:00
Jordan Aasen
6d9223fac7
[PM-12505] - add delete send button to footer (#11187)
* add delete send button to footer

* add basic error handling

* update copy. user bitAction

* use arrow function. remove border class
2024-09-24 09:26:25 +02:00
Jordan Aasen
aa91a8d5ca
fix send form defects (#11212) 2024-09-24 09:12:27 +02:00
SmithThe4th
0db179e974
[PM-739] Using a space at the beginning of otpauth:// generate a wrong OTP (#11204)
* Trimmed tariling whitespace from totp field

* Trimmed tariling whitespace from totp field

* Fix failing test
2024-09-23 16:45:53 -04:00
✨ Audrey ✨
cf48db5ed1
[PM-11418] generator policy constraints (#11014)
* add constraint support to UserStateSubject
* add dynamic constraints
* implement password policy constraints
* replace policy evaluator with constraints in credential generation service
* add cascade between minNumber and minSpecial

Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
2024-09-23 11:07:47 +02:00
Justin Baur
972339be83
Remove Storage Reseed FF (#11156) 2024-09-20 11:46:00 -04:00
Shane Melton
36a9228523
[PM-11391] Replace button tag with div for TOTP timer (#11116) 2024-09-20 06:56:21 -07:00
Victoria League
1262623fac
[CL-451] Add option for full width chip select (#11135) 2024-09-20 09:52:12 -04:00
Nick Krantz
c13131acd1
remove border styles, allow for component library to style the icon button (#11154) 2024-09-20 08:45:44 -05:00
Jordan Aasen
992964fc08
disable hide email when in policy in send options (#11161) 2024-09-19 22:15:11 +02:00
Jordan Aasen
01f668e648
add send link copy (#11160) 2024-09-19 21:59:25 +02:00
Jordan Aasen
c4d66a1383
[PM-11904] - send options form (#11142)
* send options form

* remove commented code

* fix margin. update i18 key

* remove unecessary input

* remove unnecessary typing. DRY up messages
2024-09-19 20:53:25 +02:00
Victoria League
eec84d893d
[CL-439] Improve keyboard and visual a11y for chip select (#11112) 2024-09-19 13:49:00 -04:00
Shane Melton
4327fa21f6
[PM-11343] Browser Refresh - View dialog permissions in AC (#11092)
* [PM-11343] Add param to conditionally disable the edit button

* [PM-11343] Cleanup router navigation and move query param handling to callers of the View dialog

* [PM-11343] Fix failing test

* [PM-11343] Fix missing router after merge

* [PM-11343] Add null checks in case the dialog result is undefined (due to closing via the ESC key)

* [PM-11343] Add support to provide a list of collections to the cipher view component

* [PM-11343] Add collections as an optional view cipher dialog parameter

* [PM-11343] Update the org vault to provide collections when opening the View cipher dialog

* [PM-11343] Fix import

* [PM-11343] Use [replaceUrl] for cipher items to avoid needing double back button
2024-09-19 10:43:28 -07:00
Jared Snider
e1e772b0a2
PM-12365 - AnonLayoutWrapperComp - When you use the AnonLayoutWrapperDataService to set data in the AnonLayoutWrapperComponent, I’m seeing an ExpressionChangedAfterItHasBeenCheckedError shown in the console quite often. We should update the wrapper component to fire change detection if the AnonLayoutWrapperDataService receives new information. (#11136) 2024-09-19 13:39:16 -04:00
Nick Krantz
01e530d02b
[PM-11691] Remove Nord and Solarized Dark from extension (#11013)
* remove nord and solarized dark from AppearanceV2 component
- This component already behind the extension refresh feature flag

* update the users theme to system when nord or solarized dark is selected

* For desktop, still allow all theme types by overriding the default theme service.

* change theme on the fly rather than updating local state.

- When the feature flag is removed then a migration will have to take place
2024-09-19 10:55:40 -05:00
Anders Åberg
354079725f
PM-7673: Reduce syncs when signing in with passkeys (#10817)
* Reduce syncs when signing in with passkeys

* PM-7673: Reduce syncs when creating a passkey (#10824)

* Reduce to syncs when creating a passkey

* Mocked rxjs stream
2024-09-19 08:45:45 -04:00
Daniel James Smith
7f9c5cedaf
Delete SendForm storybook stories (#11149)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-09-19 15:34:53 +03:00
Jordan Aasen
00f2317a82
[PM-11903] - add file send component (#11132)
* wip - send file details

* wip - file send

* send file details

* fix click on send list container

* remove popup code

* remove popup code

* finalize send file details

* address PR feedback. add base form to send form

* revert changes to send list items container

* revert changes to send list items container

---------

Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
2024-09-18 14:36:53 -07:00
Alec Rippberger
6c1d74a4ce
[PM-11395] [Defect] View Login - TOTP premium badge does nothing when clicked (#10857)
* Add MessagingService to LoginCredentialView component.

* Add comments.

* Add WIP PremiumUpgradeService

* Simplify web PremiumUpgradeServices into one service.

* Relocate service files.

* Add browser version of PremiumUpgradePromptService.

* Cleanup debug comments.

* Run prettier.

* rework promptForPremium to take organization id and add test.

* Add test for browser

* Rework imports to fix linter errors.

* Add Shane's reworked WebVaultPremiumUpgradePromptService.
2024-09-18 16:00:54 -05:00
Alec Rippberger
931f86c948
[PM- 9666] Implement edit item view individual vault (#10553)
* Add initial vault cipher form for cipher edit.

* Add ability to add new cipher by type

* Add ability to save and clone cipher,

* Update canEditAllCiphers to take 1 argument.

* Add attachments button to add/edit dialog.

* Add semi-working attachment dialog.

* Add working attachment functionality.

* Remove debugging code.

* Add tests for new attachments dialog component.

* Add AddEditComponentV2 tests.

* Remove AddEditComponentV2 delete functionality.

* Remove unnecessary else statement.

* Launch password generation in new dialog when extension refresh enabled.

* Add tests for PasswordGeneratorComponent.

* Adjust password and attachments dialog sizes.

* run lint:fix

* Remove unnecessary form from button.

* Add missing provider in test.

* Remove password generation events.

* Add WebVaultGeneratorDialogComponent and WebCipherFormGenerationService

* Move and rename CipherFormQueryParams

* Use WebCipherFormGenerationService to launch password / user generation modals.

* Add WebVaultGeneratorDialogComponent tests.

* Remove unnecessary functionality and corresponding tests.

* Fix failing tests.

* Remove unused properties from AddEditComponentV2

* Pass CipherFormConfig to dialog.

* Clean up unused attachment dialog functionality.

* Update AddEdit cancel functionality to prevent navigating user.

* Make attachment dialog open a static method.

* Add addCipherV2 method and clean up tests.

* Remove changes to QueryParams.

* Add tests for WebCipherFormGenerationService

* Remove unused onCipherSaved method.

* Remove cipherSaved event.

* Remove unused password generator component

* Refactor to simplify editCipherId for extensionRefresh flag.

* Add additional comments to AddEditComponentV2.

* Simplify open vault generator dialog comment.

* Remove unused organizationService

* Remove unnecessary typecasting.

* Remove extensionRefreshEnabled and related.

* Remove slideIn animation

* Remove unused AddEditComponentV2 properties.

* Add back generic typing.

* Condesnse properties into single form config.

* Remove onDestroy and related code.

* Run prettier

* fix injection warning

* Handle cipher save.

* Redirect to vault on delete and make actions consistent.

* Update comment.
2024-09-18 12:48:47 -05:00
Jordan Aasen
c9bcdd60ac
use tw classes for svg colors in no-credentials.svg (#11129) 2024-09-18 18:50:49 +02:00
Aftab Ali
0f3d8a6f89
[PM-11882] Handled identity item and unsupported items during ProtonPass import. (#10967) 2024-09-18 19:28:47 +03:00
Daniel James Smith
be6f257398
Fix click on copy send link and delete send buttons (#11120)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-09-18 09:17:07 -04:00
Victoria League
bd4b3933a4
[PM-8582] Improve search performance in Safari (#11088) 2024-09-18 09:13:58 -04:00
Marc Bärtschi
502d8ed729
fix wrong buffer conversion for Uint8Array (#8787)
If the BufferSource is already an Uint8Array which is a view of a subset of the underlying ArrayBuffer then accessing .buffer caused the whole backing buffer to be returned. Fix this by just returning the original Uint8Array as-is.

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
2024-09-18 08:11:22 -04:00
Jordan Aasen
f8fc6269f2
[PM-11899] - send text details component (#11002)
* Temporary local changes not meant to be merged

* WIP - send text details

* send text details

* remove extraneous code

* create base send details component

* remove file components

* fix send text details form

* remove comments

* fix send text details component

* revert type changes

* send created redirect

* Revert "send created redirect"

This reverts commit 36711d54a3.

* Removed hint under textArea, as per design

* Removed unused message keys

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-09-18 14:04:51 +02:00
Shane Melton
99ba56785d
[PM-11393] Remove the need for TotpCaptureService in Autofill Options View component (#11093) 2024-09-17 13:15:11 -07:00
Jordan Aasen
1a961ee294
fix send list item button hover (#11109) 2024-09-17 21:05:19 +02:00
Nick Krantz
d68853a4a2
[PM-11131] Screen Reader Announcements for Copy (#11091)
* add copy specific aria-labels for login ciphers

* add copy specific aria-labels for card ciphers

* add copy translations for identity to web translations
2024-09-17 13:23:15 -05:00
Nick Krantz
a42006763d
[PM-9455] FireFox back handling (#10867)
* Refactor `POPUP_VIEW_MEMORY` to use `disk` rather than memory for the browser extension.

- When FireFox opens the popup in an standalone window memory is lost, thus causing the `popup-route-history` to be lost and back navigation ceases to work

* spelling

* revert state definition change

* add `onUpdated` event for firefox

* rework observable handling

* remove unneeded `from`
2024-09-17 08:42:57 -05:00
Rui Tomé
c05b6eb116
[PM-11667] Remove all code related to the outdated custom permissions 'Edit/Delete Assigned Collections' (#10904)
* [PM-11667] Remove all code related to the outdated custom permissions 'Edit/Delete Assigned Collections'

* Revert change made to data model in state migration
2024-09-17 14:22:17 +01:00
Alec Rippberger
651f1e586a
PM-11468: Add data-testids for View Item pages (#11043)
* Add data test IDs for identity information.

* Add data test IDs for custom fields.
2024-09-16 17:01:38 -05:00
Justin Baur
1ebef296b9
[PM-12024] Move Lock All To Happen in Background (#11047)
* Move Lock All To Happen in Background

- Make it done serially
- Have the promise only resolve once it's complete

* Unlock Active Account Last

* Add Tests

* Update Comment
2024-09-16 16:08:03 -04:00
Victoria League
112bad03b1
[PM-8582] Move Safari browser check to libs/platform (#11007) 2024-09-16 15:36:05 -04:00
Nick Krantz
26f3dcfc66
add back events for browser refresh extension (#11085)
- something went sideways in a merge
2024-09-16 14:02:20 -05:00
Bernd Schoolmann
15610906d2
[PM-7608] Account Security Settings V2 (#10441)
* Implement account security settings v2

* Increase await dialog delay to 500 msec

* Update messages

* Replace platformservice with biometricsservice

* Cleanup

* Cleanup

* Fix account security component according to feedback

* Re-add old message

* Re-add old error message

* Fix minimum timeout message

* Fix screen-reader on custom timeout

* Remove debugging configurations

* Fix incorrectly changed message

* Remove custom vault timeout text

* Restore vaultTimeoutPolicyInEffect i18n message in web

* Change text to use vaultTimeoutPolicyInEffect1

* Fix tests
2024-09-16 17:40:08 +02:00
Cesar Gonzalez
b0e0e71974
[PM-11517] Improve autofill collection of page details performance (#10816)
* Testing out a rework of the performance improvements introduced into extension

* Working through improvements

* Implementing max_depth methodology for the deepQuery approach used when querying elements

* Refactoring implementation

* Refactoring implementation

* Fixing jest tests

* Incorporating documenation within domQueryService

* [PM-11519] `browser` global reference triggering an error when sending an extension message

* [PM-11517] Working through refactoring and jest testing of the domQueryService

* [PM-11517] Working through refactoring and jest testing of the domQueryService

* [PM-11517] Incorporating tests for the debounce util method

* [PM-11517] Incorporating tests for the debounce util method

* [PM-11517] Removing unnecessary property

* [PM-11517] Starting to work through an idea regarding querying without the shadowDom on pages that definitively do not contain a ShadowDOM element

* [PM-11419] Adjusting implementation to ensure we clear any active requests when the passkeys setting is modified

* [PM-11517] Removing unnecessary comments
2024-09-16 08:35:56 -05:00
rr-bw
96d116d643
[PM-8116] Auth Browser Refresh: Password Hint Component (#10492)
* setup component, services, and web HTML

* make Web and Browser functional

* make desktop functional

* update template to solidify common client HTML

* simplify template and class

* update browser routing

* move canActivate to correct location

* simplify post submit routing

* update routing to use unauthUiRefreshSwap()

* constrain AnonLayout title/subtitle width, reduce height on destkop to account for header

* reduce height on browser to account for header (otherwise have to scroll to see EnvSelector

* resolve email issue when clicking 'cancel' on extension popout

* update routing for web

* persist email to popout

* update web router and anon-layout min-h based on client

* change anchor link to button

* remove unnecessary formatting changes

* add new icon

* remove unnecessary call to loginEmailService
2024-09-13 09:16:25 -07:00
Bernd Schoolmann
54cc35e29a
[PM-6037] Fix process reload not triggering on inactive account lock/logout (#9805)
* Send loggedOut/locked events on logout/lock event

* Revert "Send loggedOut/locked events on logout/lock event"

This reverts commit 293f2d6131.

* Ensure loggedOut is sent for non-active user logouts too

* Make loggedOut accept userIds

* Add userBeingLoggedOut in desktop app component

* Await updateconnection calls
2024-09-13 18:11:05 +02:00
Andreas Coroiu
a1aa9adb48
feat: simplify lazy.ts (#10951) 2024-09-13 09:09:45 +02:00
Jordan Aasen
023912c53d
[PM-11631] - hide free Bitwarden Families button if user is not eligible (#10971)
* hide  Free Bitwarden Families button if user is not eligible

* use organizationService.canManageSponsorships$ for determining if free bitwarden families is available

* update comment
2024-09-13 11:58:18 +10:00
Jared Snider
bd3863c313
Auth/PM-11969 - Registration with Email Verification - Accept Emergency Access Invite Flow (#11018)
* PM-11969 - Registration with Email Verification - Accept Emergency Access Invite Fixed

* PM-11969 - Fix PR feedback

* PM-11969 - AcceptEmergencyComponent - remove prop
2024-09-12 20:14:37 -04:00
Justin Baur
fe96aa85f2
[PM-12007] Fix vault timeout action logout with account switching (#11008)
* Protect Against Toast Error

* Use `concatMap` Instead of `switchMap`
2024-09-12 15:59:33 -04:00
Nick Krantz
a31ecb18a1
[PM-11267] Extension Refresh Events (#10832)
* add `Cipher_ClientViewed` event to browser refresh components

* add `Cipher_ClientToggledPasswordVisible` event to browser refresh components

* add `Cipher_ClientToggledHiddenFieldVisible` event to browser refresh components

* add `Cipher_ClientToggledCardCodeVisible` event to browser refresh components

* add `Cipher_ClientToggledCardNumberVisible` event to browser refresh components

* add `Cipher_ClientToggledTOTPSeedVisible` event to browser refresh components

* add `Cipher_ClientCopiedPassword` event to browser refresh components

* add events for copying cipher fields from the vault menu

* add `Cipher_ClientCopiedHiddenField` event to browser refresh components

* add mock for tests

* add missing `Cipher_ClientCopiedCardCode` event

* remove the need for separate fields input

* add organization id to event collection so events are collected

* update test

* add event collection service to cipher form stories
2024-09-12 14:47:23 -05:00
Jared Snider
b6cde7e3ef
Auth/PM-11945 - Registration with Email Verification - Fix Org Sponsored Free Family Plan not working (#11012)
* PM-11945 - AcceptOrg - fix inaccurate comment.

* PM-11945 - Refactor new registration process to pass along orgSponsoredFreeFamilyPlanToken

* PM-11945 - RegistrationFinishComponent - wire up passing of orgSponsoredFreeFamilyPlanToken to submit method

* PM-11945 - Add todo
2024-09-12 15:24:35 -04:00
Daniel James Smith
f70b3df2d2
[PM-11949] Fix generating and copying export password (#10999)
* Use password field value instead of local variable for copy to clipboard

Use appCopyClick directive instead of manually copying and showing success toast

* Add missing "copySuccessful" message key to desktop and web

* Remove whitespace from web en/messages.json

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-09-12 20:04:39 +02:00
Jake Fink
07d2e36496
[PM-10914] add option to delete all folders if migration fails (#10983)
* add option to delete all folders if migration fails

* update text and flow to reattempt migration

* clear encrypted folders as well on delete all

* Update messaging
2024-09-12 13:47:35 -04:00
Jason Ng
89751f46d6
[PM-254] Set PDF Attachments in Web to download, add success toast (#10757)
* add success toast to pdf attachment download in web

* update desktop attachments for toastService

* removed trailing comma

---------

Co-authored-by: gbubemismith <gsmithwalter@gmail.com>
Co-authored-by: SmithThe4th <gsmith@bitwarden.com>
2024-09-11 15:27:53 -04:00
Victoria League
a0a0a7ae13
[CL-395] Add and use art colors in svgs (#10990) 2024-09-11 14:54:07 -04:00
Shane Melton
8e4dab5eba
[PM-10996] Remove restrict-provider-access feature flag (#10977) 2024-09-11 10:45:23 -07:00
Jared Snider
546115876f
Move extension refresh redirect util function to libs so other clients can use it (#10979) 2024-09-10 17:47:16 -04:00
✨ Audrey ✨
4128b18b27
[PM-8279] password generation component (#10805) 2024-09-10 12:43:33 -04:00
rr-bw
12967b0c17
h3 typography on small screens, h2 on medium-large screens (#10939) 2024-09-09 15:12:31 -07:00
Nick Krantz
4e7399ed98
[PM-9733] Custom Vault Timeout (#10515)
* handle timeout changes that are predefined string values

- Passing a string to `Math.max` will cause a NaN to be set.

* type form instance so TypeScript is more aware of the form values
2024-09-09 16:36:23 -05:00
Nick Krantz
c161873ce5
reset min-width to zero to override flex from setting min-width to auto (#10936) 2024-09-09 09:38:32 -05:00
Jared Snider
e954621761
Auth/PM-10684 - Fix CLI asking for MP even if session key provided as command option (#10917)
* PM-10684 - ServiceContainer - Add better docs

* PM-10684 - UserAutoUnlockKeyService - setUserKeyInMemoryIfAutoUserKeySet - refactor method to return a bool instead of nothing so users can know if a user key was retrieved & set without another call.

* PM-10684 - Remove async code ( Program.ts) responsible for setting the auto user key from the session option handler (event emitter which fires when a user passes --session <sessionKey> to a command). Returning this to synchronous execution prevents a race condition between the setting of the user key and the command executing the exitIfLocked logic in the base-program which would check if the user key had been set to determine if the command should be allowed to execute or if the user was locked. When running a loop from a script, the command would often trigger the exitIfLocked before the auto user key could be set in state from the option:session session.

* PM-10684 - Clean up missed item per PR feedback
2024-09-09 10:03:30 -04:00
Conner Turnbull
60e9969017
[AC-2568] Split billing history calls to separately call for invoices and transactions. Added paging buttons (#10697)
* Split billing history calls to separately call for invoices and transactions. Added paging button

* Added missing button types
2024-09-09 09:39:02 -04:00
Jordan Aasen
9e45e32c7d
[PM-8277] - Password generator history component (#10921) 2024-09-09 09:25:41 -04:00
Cesar Gonzalez
2827d338ee
[PM-11419] Fix issues encountered with inline menu passkeys (#10892)
* [PM-11419] Login items do not display after adding passkey

* [PM-11419] Login items do not display after adding passkey

* [PM-11419] Incorporating fixes for deleting a cipher from the inline menu as well as authenticating using passkeys

* [PM-11419] Fixing an issue where master password reprompt is ignored for a set passkey cipher

* [PM-11419] Fixing an issue where saving a passkey does not trigger a clearing of cached cipher values

* [PM-11419] Refactoring implementation

* [PM-11419] Ensuring that passkeys must be enabled in order for ciphers to appear

* [PM-11419] Adding an abort event from the active request manager

* [PM-11419] Adding an abort event from the active request manager

* [PM-11419] Working through jest tests within implementation

* [PM-11419] Fixing jest tests within Fido2ClientService and Fido2AuthenticatorService

* [PM-11419] Adding jest tests for added logic within OverlayBackground

* [PM-11419] Adding jest tests for added logic within OverlayBackground

* [PM-11419] Reworking how we handle assuming user presence when master password reprompt is required

* [PM-11419] Reworking how we handle assuming user presence when master password reprompt is required

* [PM-11419] Reworking how we handle assuming user presence when master password reprompt is required

* [PM-11419] Refactoring implementation

* [PM-11419] Incorporating suggestion for reporting failed passkey authentication from the inline menu

* [PM-11419] Reworking positioning of the abort controller that informs the background script of an error

* [PM-11419] Scoping down the behavior surrounding master password reprompt a bit more tightly

* [PM-11419] Reworking how we handle reacting to active fido2 requests to avoid ambiguity

* [PM-11419] Reworking how we handle reacting to active fido2 requests to avoid ambiguity

* [PM-11419] Adjusting implementation to ensure we clear any active requests when the passkeys setting is modified
2024-09-09 08:44:08 -04:00
Alec Rippberger
ee738ac36a
Update "linked" to use "cfTypeLinked" message. (#10841)
Co-authored-by: Shane Melton <smelton@bitwarden.com>
2024-09-07 21:20:39 -05:00
Jonathan Prusik
9881c7842b
[PM-10418] Bugfix - Expiration date on cards does not always autofill the correct format (#10705)
* add branching logic for alternative card expiration autofill strategy

* simplify logic and fix some pattern-matching bugs

* add EnableNewCardCombinedExpiryAutofill feature flag

* update default format for card expiry date and update tests

* review reccs
2024-09-06 11:24:04 -04:00
Alex Morask
2aa4b07d68
Move braintree.service and stripe.service from jslib-services.module into web (#10923) 2024-09-06 09:51:00 -04:00
Nick Krantz
fb1a294c97
update aria label of the character count toggle (#10915) 2024-09-06 08:49:46 -05:00
Justin Baur
92e71d9252
[PM-11661]Add New Reseed - Fill Buffer Behind Feature Flag (#10905)
* Add New Reseed - Fill Buffer Behind Feature Flag

* Add Tests

* Lint
2024-09-06 09:48:27 -04:00
Todd Martin
03b3345bf6
[PM-11619] Replace client-side feature flag with server-side flag (#10709) 2024-09-06 09:25:15 -04:00
Todd Martin
f0fe397307
Changed temp password reset phrase names to match translations (#10756) 2024-09-06 09:20:41 -04:00
Victoria League
3f25b9bbfc
[CL-357] Remove border radius when displayed in web app (#10884) 2024-09-05 16:38:20 -04:00
Nick Krantz
7dcfaf8271
add title for attachment name (#10908)
- adds the ability for a user to see the attachment name while hovering over it
2024-09-05 14:41:39 -05:00
Justin Baur
ef3b3c1cb5
Remove Comments (#10914) 2024-09-05 15:36:43 -04:00
Justin Baur
3bbc2cc691
Change AppIdService to Use Storage Directly (#10835) 2024-09-05 14:44:19 -04:00
Jared Snider
352ab29665
Auth/PM-11635 - Extension Registration Bugfix - Unable to login after account creation issue (#10896)
* PM-11635 - Refactor Base Login Component NgOnInit to properly connect the loading of email settings from state to the processing of query params. If an email is not passed via query params (like registration / normal login), then we will try to load the email from state.

* PM-11635 - Extension login component - call parent ngOnInit as it is responsible for processing / setting email from either query params or state. The addition of the child ngOnInit prevented the parent component ngOnInit from executing.
2024-09-05 13:55:30 -04:00
Daniel James Smith
74d510332d
[PM-9884] Create empty send add/edit page for browser (#10155)
* Move SendV2component into send-v2 subFolder

* Create SendFormContainer and related services

* Add initial SendFormComponent which uses the SendFormContainer

* Remove AdditionalOptionsSectionComponent which will be added with a future PR

* Add libs/tools/send to root tsconfig

* Register libs/tools/send/send-ui with root jest.config.js

* Register libs/tools/send/send-ui with root tailwind.config.js

* Create empty Send add edit page

- Introduces conditional routing based on extension refresh feature flag
- After selecting a Send type via the New button navigate to the new send-add-edit page and build a SendFormConfig

* Fix service injection on DefaultSendFormService

* Rename setHeader into getHeaderText, make it private and add documentation

* Set radix/base to 10 for parseInt

* Add documentation

* Rename local variable

* Removed unneeded loading state

* Remove unused originalSendId

* Run prettier

* Add link to edit an existing send

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-09-05 17:46:03 +02:00
Jordan Aasen
7cfd6577ac
fix typography to match design (#10888) 2024-09-05 13:26:12 +02:00
Jordan Aasen
a21e4afba8
[PM-11439] - add padding to import file input (#10870)
* add padding to import file input

* favor padding over margin

* reduce padding on import input button
2024-09-05 13:24:59 +02:00
Alec Rippberger
fdd2c774c6
[PM-11339] [Defect] Owner information in Item details section needs spacing and alignment (#10762)
* Add vault files to config.content array.

* Adjust unordered list spacing.
2024-09-04 15:45:23 -07:00
Thomas Rittson
8344623185
[PM-11450] Move organization-user domain to admin-console lib (#10785)
- move organization-user files from libs/common/src/admin-console into libs/admin-console/src/common
- add barrel files and update imports to use barrel files
- rename OrganizationUserService to OrganizationUserApiService
- rename OrganizationUserServiceImplementation to DefaultOrganizationUserApiService
2024-09-04 18:21:26 -04:00
Jonathan Prusik
44f1fc156c
[PM-11458] Bugfix - If two digit year was entered for card, the expired card message shows if card is not expired (#10801)
* normalize card expiry year before determining if it is expired

* add tests
2024-09-04 13:39:48 -04:00
Nick Krantz
72dab94216
remove brand from logic that determines if the card section should show (#10871) 2024-09-04 11:44:52 -05:00
Will Martin
fdeac58469
[CL-312] fix dialog scroll blocking + virtual scroll (#9606) 2024-09-04 12:12:47 -04:00
Nick Krantz
3e9fb2009e
[PM-10934] Remove last form-field bottom border (#10751)
* match API of new CL FormField component

* remove readonly border for additional options component

* remove readonly border for last autofill option

* remove readonly border for last custom-field form field

* remove readonly border for when collection,org or folder is available

* add `ReadOnlyCipherCardComponent` to handle readonly border

* remove readonly border for the last identity form field

* remove readonly border for the last card form field

* remove readonly border for the last login form field

* remove unneeded true value
2024-09-04 10:50:34 -05:00
Bernd Schoolmann
192fd885d5
Return null in derivePublicKey if privateKey is null (#10882) 2024-09-04 17:16:57 +02:00
Todd Martin
86fab07a37
Auth/PM-5099 Ensure consistent casing of email used for fingerprint generation in Auth Requests (#8571)
* Created method for handilng email-address-based fingerprint.

* Added test for new method.

* Added returns to annotation
2024-09-04 10:22:06 -04:00
Jonathan Prusik
5f2eecd7be
[PM-11350] Use shared expiration year normalization util function (#10735)
* use shared expiration year normalization util function

* use shared exp year normalization in web and desktop client

* handle cases where input has leading zeroes

* add utils tests

* handle cases where input is all zeroes
2024-09-03 15:12:36 -04:00
rr-bw
b27dc44298
[PM-11136] Convert LoginEmailService email property to state provider (#10624)
* convert email property to state provider

* update tests

* assign loginEmail to variable before passing in

* remove nav logic in ngOnInit
2024-09-03 09:40:11 -07:00
Nick Krantz
1951b70fd1
implement bitLink for password history (#10769) 2024-09-03 10:25:10 -05:00
aj-rosado
76021b4817
Fix mSecure importer and added tests (#10698) 2024-09-02 15:59:28 +02:00
rr-bw
b339c01c20
remove position on browser (#10810) 2024-08-31 13:19:48 -07:00
rr-bw
c5a267baad
[PM-11000] AnonLayout Icon/Logo theme refactor (#10549)
* update base anon-layout logo/icon

* update ExtensionAnonLayout logo/icon based on theme

* remove hard-coded fill

* remove solarizedDark class

---------

Co-authored-by: Bernd Schoolmann <mail@quexten.com>
2024-08-31 12:26:11 -07:00
Jason Ng
d5cbc19187
PM-11428 Ensure TOTP background color is in sync with other view inputs (#10827) 2024-08-30 15:59:51 -04:00
SmithThe4th
5a73639946
[PM-8125] Move Trash to the Vault settings page (#10736)
* created trash and trash container component

* added trash to vault settings

created observable to get deleted ciphers

* export icon

added locales

* remove edit and delete footver from trash view cipher

* Added helper text when viewing deleted ciphers

* prevent premature access of isDeleted from the cipher object

* simplified the condition to show the edit button

* return cipherView for deletedCiphers$ since that is what is used in the component

* changed section header to h6

* added routing animation

* Added restore to footer
2024-08-30 15:46:26 -04:00
Jason Ng
963e339e4f
PM-11429 Users with Except PW permissions will not get Copy Password Option Vault V2 (#10831) 2024-08-30 15:38:37 -04:00
Jordan Aasen
2882fa3077
[AC-2268] - migrate toast to CL service for admin-console (#10663)
* migrate toast to CL service for admin-console

* fix spec

* add missing dep for toastService

* fix toastService args

* fix toastService args

* fix toastService args
2024-08-30 11:16:06 -07:00
Jason Ng
d9ff8b0944
PM-11427 Copy Totp Code without space (#10800) 2024-08-30 12:27:56 -04:00
Rui Tomé
4453a5c114
[PM-11333] Rename deleteOrganizationUser to removeOrganizationUser in BaseMembersComponent, OrganizationUserService and related files 2024-08-30 15:01:29 +01:00
Victoria League
f44b7b361d
[CL-442] Fix toggle group display in extension and add fullWidth input to main (#10803) 2024-08-30 09:25:16 -04:00
Jason Ng
c1870a37c7
PM-10374 remove margin from collection in item details if no folder (#10777) 2024-08-29 17:45:17 -04:00
Jason Ng
2d753f2778
PM-11130 add aria labels to pw count and website launch in view v2 (#10776) 2024-08-29 17:44:53 -04:00
Jared Snider
0a0cbde5b3
Auth/PM-11318 - Registration With Email Verification - Login After Registration (#10783)
* PM-11318 - Registration Finish - Log user in after registration

* PM-11318 - Adjust registration and login message to be one msg

* PM-11318 - RegistrationFinish - Adjust messaging based on product feedback.

* PM-11318 - RegistrationFinishComp - Tweak redirect and error logic.
2024-08-29 13:55:09 -04:00
Andreas Coroiu
9f7350d085
[PM-6727] Implement new setUserKeys function in CryptoService (#10655)
* feat: implement new `setUserKeys` function

* feat: add explicit error for failed decryption
2024-08-29 15:42:42 +02:00
✨ Audrey ✨
7e1706a0ec
[PM-5607] password generator component & configuration (#10767) 2024-08-29 09:27:10 -04:00
rr-bw
33f66263fa
remove unnecessary width class (#10781) 2024-08-28 16:14:05 -07:00
Alex Morask
a58642e370
[AC-2959] ACH Direct Debit POC (#10746)
* (No Logic) Fix typo in billing-api-service.abstraction file name

* (Cleanup) Remove payment method components and API methods from provider portal

Product team decided not to have a payment method page in the provider portal for consolidated billing. This just removes all the unused components and API methods.

* Add organization endpoints to support new payment method behavior

* Add payment-v2.component

This component existed in the libs folder because we used it for the provider portal, but since we've removed payment functionality from the provider portal, I moved it into web in this commit.

* (No Logic) Move existing payment.component into new payment component folder

* Add verify-bank-account.component

This component existed in the libs folder because we used it for the provider portal, but since we've removed payment functionality from the provider portal, I moved it into web in this commit.

* Add adjust-payment-dialog-v2.component

* (No Logic) Move existing adjust-payment-dialog.component into new adjust-payment-dialog component folder

* Add organization-payment-method.component

* Add feature flag: AC-2476-deprecate-stripe-sources-api

* Pivot organization payment method route on new feature flag

* Fix broken test
2024-08-28 10:48:22 -04:00
✨ Audrey ✨
8c4b8d71ea
[PM-5609] passphrase settings component & services (#10535) 2024-08-28 09:26:17 -04:00
Addison Beck
76b9adf50b
Enable event logs to show events logged by the Public API (#10660)
* Add PublicApi to event system users

* Remove `import` api service method
2024-08-27 18:21:33 -04:00
Cesar Gonzalez
5b4e4d8f1a
[PM-10669] Fix inconsistencies with notification bar when saving or updating login credentials (#10617)
* [PM-10669] Notification bar appears inconsistently after login

* [PM-10669] Notification bar appears inconsistently after login

* [PM-10669] Migrating work from POC branch into feature branch

* [PM-10669] Incorporating styles for select element

* [PM-10669] Incorporating styles for select element

* [PM-10669] Fixing notification bar lifespan const

* [PM-10669] Incorporating logic that conditionally loads specific bootstrap autofill feature files

* [PM-10669] Incorporating logic to more smoothly handle transitioning between pages within the notification bar0

* [PM-10669] Incorporating logic to more smoothly handle transitioning between pages within the notification bar0

* [PM-10669] Incorporating logic to more smoothly handle transitioning between pages within the notification bar0

* [PM-10669] Incorporating a circle checkmark icon within the success message of the notification bar

* [PM-10669] Fixing an issue where the notification bar can potentially load in between loading states for a tab

* [PM-10669] Fixing an issue where the notification bar can potentially load in between loading states for a tab

* [PM-10669] Fixing an issue where the notification bar can potentially load in between loading states for a tab

* [PM-10669] Fixing an issue where the notification bar can potentially load in between loading states for a tab

* [PM-10669] Fixing how we handle keyup events on the submit button

* [PM-10669] Fixing how we handle keyup events on the submit button

* [PM-10669] Fixing jest tests within notification bar

* [PM-10669] Adding a jest tests to validate behavior within AutofillInit

* [PM-10669] Adding a jest tests to validate behavior within AutofillInit

* [PM-11170] Addressing test coverage within CollectAutofillContentService

* [PM-11170] Addressing test coverage within CollectAutofillContentService

* [PM-10669] Refactoring implementation

* [PM-10669] Adding documentation to the methods incorporated within the AutofillOverlayContentService

* [PM-10669] Incorporating jest tests for the AutofillOverlayContentService

* [PM-10669] Migrating logic associated with the DomQuerySevice away from the CollectAutofillContentService

* [PM-10669] Fixing required references to DomQueryService within the implementation

* [PM-10669] Holding off on re-incorporating the userTreeWalkerStrategyFlag

* [PM-10669] Incorporating jest tests for DomQueryService

* [PM-10669] Adding jest test to validate changes within AutofillService

* [PM-10669] Adding jest tests to validate changes within AutofillOverlayContentService

* [PM-10669] Adding documentation to the OverlayNotificationsBackground class

* [PM-10669] Adding documentation to the OverlayNotificationsBackground class

* [PM-10669] Incorporating jest tests to validate the OverlayNotificationsBackground class

* [PM-10669] Incorporating jest tests to validate the OverlayNotificationsBackground class

* [PM-10669] Incorporating jest tests to validate the OverlayNotificationsBackground class

* [PM-10669] Incorporating jest tests to validate the OverlayNotificationsBackground class

* [PM-10669] Incorporating jest tests to validate the OverlayNotificationsBackground class

* [PM-10669] Refactoring OverlayNotificationsContentService and incorporating logic that triggers a fade out of the notification bar on success of a saved password

* [PM-10669] Refactoring OverlayNotificationsContentService and incorporating logic that triggers a fade out of the notification bar on success of a saved password

* [PM-10669] Refactoring OverlayNotificationsContentService and incorporating logic that triggers a fade out of the notification bar on success of a saved password

* [PM-10669] Finalizing jest tests for OverlayNotificationsContentService

* [PM-10669] Finalizing jest tests for OverlayNotificationsContentService

* [PM-10669] Adding new copy for the password saved/updated event in the notification bar

* [PM-10669] Fixing visual presentation of sucesss message

* [PM-10669] Fixing visual presentation of sucesss message

* [PM-10418] Incorporating fallback for when we cannot capture the form button effectively

* [PM-10669] Incorporating fixes for form submission button not being captured

* [PM-10669] Incorporating a guard to ensure that an AJAX submission captures form data after the user has entered their credentials

* [PM-10669] Incorporating a field qualification rule to ensure that we capture forms that are non-viewable on load

* [PM-10669] Incorporating a document readyState listener to ensure that we populate the notification bar once the document body is loaded

* [PM-10669] Incorporating a match pattern for subdomains of a main domain when filtering out web requests

* [PM-10669] Incorporating a match pattern for subdomains of a main domain when filtering out web requests

* [PM-10669] Incorporating a redundant methodology to capture `GET` requests that trigger after a form submisson

* [PM-10669] Incorporating a redundant methodology to capture `GET` requests that trigger after a form submisson

* [PM-10669] Adding jest tests to validate changes within OverlayNotificationsBackground

* [PM-10669] Adjusting timeout for modified login credentials to ensure user can enter data on form

* [PM-10669] Refining how we handle re-capturing user credentails on before request to better handle multi-part forms

* [PM-10669] Refining how we handle re-capturing user credentails on before request to better handle multi-part forms

* [PM-10669] Adjusting jest tests to ensure code coverage

* [PM-10669] Fixing issues with Safari

* [PM-10669] Fixing an invalid qualification rule

* [PM-10669] Ensuring that we capture input changes correctly when a field is going from a hidden to non-hidden state

* [PM-10669] Fixing jest tests within overlay content service

* [PM-10669] Fixing jest tests within overlay content service

* [PM-10669] Adding a jest test to validate changes to overlay content service
2024-08-27 13:31:44 -05:00
Jordan Aasen
9041a4cd4c
[PM-6564] migrate auth toasts to CL toastService (#10665)
* migrate auth toasts to CL toastService

* fix component args

* fix component args

* fix specs

* fix toastService args
2024-08-27 10:33:58 -07:00
Justin Baur
11eba8d779
Add Null Check On diskAccount (#10550) 2024-08-27 13:11:42 -04:00
SmithThe4th
e926aa4bc9
fixed user state type (#10744) 2024-08-27 10:01:04 -04:00
Will Martin
80f4935171
[CL-324] migrate app-callout internals to bit-callout (#9925) 2024-08-27 09:12:28 -04:00
Bernd Schoolmann
3c9b3ea2cc
[PM-6296] Fix biometrics error prompt when biometrics are temporarily unavailable in browser extension (v2) (#10374)
* Create unavailable message for biometrics when in clamshell mode

* Move browser biometrics

* Inject nativemessagingbackground instead of using constructor

* Fix linting

* Fix build on browser
2024-08-27 06:25:20 +00:00
Matt Gibson
9459cda304
Pm-10953/add-user-context-to-sync-replaces (#10627)
* Require userId for setting masterKeyEncryptedUserKey

* Replace folders for specified user

* Require userId for collection replace

* Cipher Replace requires userId

* Require UserId to update equivalent domains

* Require userId for policy replace

* sync state updates between fake state for better testing

* Revert to public observable tests

Since they now sync, we can test single-user updates impacting active user observables

* Do not init fake states through sync

Do not sync initial null values, that might wipe out already existing data.

* Require userId for Send replace

* Include userId for organization replace

* Require userId for billing sync data

* Require user Id for key connector sync data

* Allow decode of token by userId

* Require userId for synced key connector updates

* Add userId to policy setting during organization invite accept

* Fix cli

* Handle null userId

---------

Co-authored-by: bnagawiecki <107435978+bnagawiecki@users.noreply.github.com>
2024-08-26 20:44:08 -04:00
Will Martin
6918606677
[PM-3530] browser extension view cache (#10437)
Introduces a way to store temporary component state, for the purposes of persisting views between extension popup open and close.
2024-08-26 16:09:33 -04:00
Jason Ng
e242d7d2d5
PM-11126 limit pw toggle and copy to viewPassword true (#10725) 2024-08-26 15:28:37 -04:00
Shane Melton
fbf9c5abfa
[PM-10993] Browser Refresh - Fix duplicate password generation emissions in Firefox (#10704)
* [PM-10993] Avoid saving the generation options to state when toggling the password type

* [PM-10993] Fix tests
2024-08-26 12:05:22 -07:00
Shane Melton
9e093f88af
[PM-10247] Browser Refresh - Fix save credential banner (#10520)
* [PM-10247] Prioritize initialValues when initiating the CipherForm child forms

* [PM-10247] Fetch the addEditCipherInfo when opening the cipher form in Browser and override any initialValues if present

* [PM-10247] Fix item details section tests

* [PM-10247] Add login details section test

* [PM-10247] Add autofill options tests

* [PM-10247] Undo webpack config change

* [PM-10247] Fix failing tests

* [PM-10247] Add additional tests for addEditCipherInfo
2024-08-26 12:03:47 -07:00
Justin Baur
c18a7cb3e8
[PM-8748] Ensure Reasonable ConfigService Emission (#10452)
* Add Slow Emission Guard

* Remove Jest Timer Call

* Do Slow Emission Guard For All Environments

* Update Comment
2024-08-26 14:23:33 -04:00
Jason Ng
2005d99056
PM-11118 adjust hover cursor styles for TOTP buttons (#10730) 2024-08-26 14:11:31 -04:00
Oscar Hinton
9152c3203f
[BEEEP] [PM-10117] Migrate index.html (#10286)
Migrate the index.html to use tailwind instead of bootstrap

* Extracted some more global styles to override the bootstrap styles for layout
  frontend. We should revisit this when we remove bootstrap.
* Removed Angular specific logo for anon pages. Now uses the same css class as
  loading page to prevent duplicated assets.
2024-08-26 18:15:09 +02:00
Victoria League
991155d3a5
[CL-318] Ensure item content truncates when the 'start' slot is populated (#10727) 2024-08-26 11:43:03 -04:00
Bernd Schoolmann
86f3a679ae
[PM-4530] Fix sso in snap desktop (#10548)
* Add localhost callback service for sso

* Fix redirect behaviour

* Update apps/desktop/src/app/app.component.ts

Co-authored-by: Daniel García <dani-garcia@users.noreply.github.com>

* Fix incorrect http response for sso callback

* Add sso error

* Update error message

---------

Co-authored-by: Daniel García <dani-garcia@users.noreply.github.com>
2024-08-26 15:13:45 +02:00
slonkazoid
f2be150b70
[PM-9552] add a toggle for the routing animation (#10005)
* add a toggle for the routing animation

* add missing period (thanks mat)

* rename routingAnimation to enableRoutingAnimation for consistency

* move animation-control.service.ts into abstractions

* simplify config option

* fixup! simplify config option

remove dead aria reference

---------

Co-authored-by: Shane Melton <smelton@bitwarden.com>
2024-08-23 14:13:43 -07:00
Matt Gibson
c2829cd71b
Remove password hint responses from API (#10523)
* Log reloading behavior

* Remove hints from responses.

changing password implies updating the hint, but no longer displays the old one. This is a security risk for shoulder surfing and breaks the escrow model we have where it is only shared via email when requested.

* Update change password hint label
2024-08-23 13:51:42 -04:00
Jason Ng
887d1924a3
PM-10982 add passkey field in login view. add testid for qa (#10634) 2024-08-22 16:38:41 -04:00
Jason Ng
83ed0442de
[PM-10980] Style defect updates to Login Credentials (#10623)
* update login credentials to styling username, password, and pw count
2024-08-22 14:49:27 -04:00
Cesar Gonzalez
c782c92f6c
[PM-11170] Inline menu should not show incomplete login item along passkey (#10635)
* [PM-11170] Inline menu should not show incomplete login items along with passkeys

* [PM-11170] Inline menu should not show incomplete login items along with passkeys

* [PM-11170] Incorporating a fix for ciphers not being updated within the inline menu on user actions

* [PM-11170] Ensuring that conditional mediated auth does not trigger the authenticator

* [PM-11170] Adding a jest test to verify conditional mediated UI calls do not trigger the authenticator

* [PM-11170] Adding a jest test to verify conditional mediated UI calls do not trigger the authenticator

* [PM-11170] Reworking implementation to have the BrowserFido2UserInterfaceService trigger the expected behavior for the conditional mediated auth

* [PM-11170] Reworking implementation to have the BrowserFido2UserInterfaceService trigger the expected behavior for the conditional mediated auth

* [PM-11170] Following up on feedback provided during code review, reworking inline menu bypass of the fido2 authenticator to function based on assumeUserPresence param when triggering from the inline menu

* [PM-11170] Following up on feedback provided during code review, reworking inline menu bypass of the fido2 authenticator to function based on assumeUserPresence param when triggering from the inline menu

* [PM-11170] Following up on feedback provided during code review, reworking inline menu bypass of the fido2 authenticator to function based on assumeUserPresence param when triggering from the inline menu
2024-08-22 13:32:31 -04:00
Jordan Aasen
898338ff9d
migrate platform toasts to CL toastService (#10666) 2024-08-22 10:12:27 -07:00
Jason Ng
d2d49b254d
PM-10982 update autofill options to show different uri (#10625) 2024-08-22 12:59:53 -04:00
Shane Melton
ade01c9d07
[PM-8380] Browser Refresh - Virtual scrolling (#10646)
* [PM-8380] Add option to disable content padding for popup page

* [PM-8380] Add cdkVirtualScroll to vault list items and fixed item heights

* [PM-8380] Move item height constants to item component
2024-08-22 07:40:32 -07:00
Shane Melton
a8edce2cc1
[PM-10381] Fix waiting for last sync - Browser Refresh (#10438)
* [PM-10381] Add activeUserLastSync$ to SyncService

* [PM-10381] Introduce waitUtil operator

* [PM-10381] Use new activeUserLastSync$ observable to wait until a sync completes before attempting to get decrypted ciphers

* [PM-10381] Fix failing test

---------

Co-authored-by: bnagawiecki <107435978+bnagawiecki@users.noreply.github.com>
2024-08-21 14:54:09 -07:00
Jonathan Prusik
1fe6631c82
[BEEEP][PM-3876] - Warn users if a stored card has an expiry date in the past (#10470)
* add enableExpiredPaymentCipherWarning setting

* add card expiry warning to the v2 Card Details component

* remove enableExpiredPaymentCipherWarning setting

* update expired card callout design and copy

* move card expired callout to cipher view

* add card expiry warning to the web vault add-edit cipher component
2024-08-21 10:59:03 -04:00
Alex Morask
b030c6e27b
[AC-2858] Remove code supporting payment method warning banners (#10615)
* Remove errant payment method warning banner implementation

* Removing unused endpoint
2024-08-21 10:17:42 -04:00
Bernd Schoolmann
cfdc52ee84
[PM-9576] Make keypair updating more robust to prevent vault/private-key corruption on set-password component (#10180)
* Make keypair setting more robust to prevent vault corruption on set-password component

* Use non-deprecated way to get private key

* Fix build error due to missing service
2024-08-21 11:48:12 +02:00
Jordan Aasen
140b76d021
[PM-8490] - Add generate password to password-protected export (#10539)
* WIP generate password in export vault

* finish generate password in export component

* use bitIconButton directive

* add copy link to file password input

* change copy password message
2024-08-20 17:16:54 -07:00
Jared Snider
924d0b7dfe
Move extension refresh swap function to libs so other clients can use it (#10640)
* Move extension refresh swap function to libs so other clients can use it

* Update extensionRefreshSwap docs
2024-08-20 17:24:49 -04:00
Victoria League
19ef6ba467
[CL-433] Fix broken docs pages (#10638) 2024-08-20 15:44:54 -04:00
SmithThe4th
dedd7f1b5c
[PM-10607] Require userId for getKeyForCipherKeyDecryption (#10509)
* updated cipher service to stop using the deprecated getUserKeyWithLegacySupport and use the version that requires a user id

* Added account service mock

* fixed cipher test

* Fixed test

* removed async from encryptCipher

* updated encryptSharedCipher to pass userId to the encrypt function

* Pass userId to getUserKeyWithLegacySupport on encryptSharedCipher

* pass in userid when setting masterKeyEncryptedUserKey

* Added activer usedId to new web refresh function
2024-08-20 11:00:48 -05:00
Victoria League
ed719f835a
[CL-389] Add end slot to non-text bit label content (#10457) 2024-08-20 11:55:11 -04:00
Florian Lang
34943ed1fb
[PM-10814] Fix nordpass importer (#10491)
* import additional_urls from nordpass csv

* use type column of nordpass csv to get type of record

* fixed wrong naming of nordpass csv type

* impot custom fields from nordpass csv

* fix parse nordpass custom_fields

* fixed parsing of additional_urls in nordpass import

* update nordpass csv importer tests

* Capitalize type names

* Add test for OrgImport/CollectionCreation and fix Org-import

* Add test to verify success equals false when parsing fails.

* use "Text" as default FieldType of nordpass custom fields

* implemented seperated test for additional fields

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-08-20 12:39:34 +02:00
Daniel James Smith
3ef1080754
[PM-10791] Set favorite on import from ProtonPass (#10480)
* Update import test data with new fields
Add new fields to the types file

* Set favorites when importing from ProtonPass

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-08-19 12:27:00 +02:00
Addison Beck
1ccc4508fb
Add AccountDeprovisioning feature flag (#10531) 2024-08-16 10:05:40 +01:00
Oscar Hinton
604e22334a
[BEEEP] [PM-10132] Upgrade storybook to v8 (#10288)
Upgrade storybook to version v8 which is a major upgrade. Storybook provides an
upgrade wizard which did most of the work.

- Ran npx storybook upgrade.
- Manually updated `remark-gfm` since the newer mdx requires v 4.
- Migrated all old stories still using `Story` to `StoryObj`.
2024-08-16 09:28:29 +02:00
Jordan Aasen
333c9f3f4f
fix no-send icon (#10530) 2024-08-15 15:24:28 -07:00
Jordan Aasen
a72ec8ab89
[PM-8228] - Create new Premium Component (#10514)
* add new premium component

* finish new premium component

* revert change to config service

* hide copy changes behind feature flag

* revert keys back to original

* remove stateService and translation key

* add missing translation key

* add missing key
2024-08-15 10:31:04 -07:00
Jordan Aasen
199ac3de45
[PM-10045] - SendCreated page (#10331)
* WIP - send created component

* WIP - send created page

* finalize send created component and specs

* add extra padding

* undo browser extension refresh

* fix tests

* fix error
2024-08-15 07:59:00 -07:00
Jason Ng
72767dec74
[PM-10514] New TOTP Counter Component (#10486)
* new vault totp countdown component
2024-08-15 10:03:14 -04:00
Jared Snider
c5ae908fde
PM-10069 - Refactor unauthExtensionRefreshSwap to be available in non-extension clients and rename. (#10518) 2024-08-14 15:15:23 -04:00
Will Martin
7571c766e0
[PM-10813] add eslint rule to restrict imports from apps in libs (#10481)
* restrict app imports in libs

* add eslint ignore comments
2024-08-14 11:24:29 -07:00
Kyle Spearrin
5547b953ad
[AC-2928] Create automatic app login policy (#10295)
* Create automatic app login policy

* update copy

* update copy

* [PM-10155] Automatic Login After Autofill (#10297)

---------

Co-authored-by: Cesar Gonzalez <cesar.a.gonzalezcs@gmail.com>
2024-08-14 09:38:33 -05:00
Shane Melton
a1d94233e3
[PM-10761] Fix broken text for screen readers (#10490) 2024-08-13 15:51:34 -07:00
Jared Snider
a13e99ebe9
Auth/PM-10601 - Tech Debt Cleanup - Refactor Lock Component and User Verification to use PinService (#10408)
* PM-10601 - PinSvc new unlock check first draft

* PM-10601 - PinSvc - add new method for determining if pin decryption is available.

* PM-10601 - Add more docs on PinSvc

* PM-10601 - Update Lock Comp & User Verification service + tests to use new isPinDecryptionAvailable method
2024-08-13 15:19:13 -04:00
Nick Krantz
a6176aaf2c
[PM-10799] Login UI Width (#10506)
* reset `maxWidth` attribute during page change

* set default value for `maxWidth` if null or undefined is passed

* implement `maxWidth` for extension implementation of Anon Layout
2024-08-13 14:18:04 -05:00
Shane Melton
fe9d44af6d
[PM-10721] Autofill section styles fixes (#10454)
* [PM-10721] Remove autofill section title hyphen

* [PM-10721] Use h6 styling for header

* [PM-10721] Fix spacing for match detection select
2024-08-13 10:16:53 -07:00
Shane Melton
f017edb088
[PM-10651] Use bitLink instead of icon button and add a11y title (#10483) 2024-08-13 10:15:14 -07:00
Shane Melton
b3474fe101
[PM-9595] Fix owner / folder selects expanding out of container (#10493) 2024-08-13 09:26:13 -07:00
Vincent Salucci
b4b1ade978
chore: remove fc v1 feature flag, refs PM-10295 (#10487) 2024-08-13 11:19:52 -05:00
Shane Melton
7ad42ae18b
[PM-9190] Browser Refresh - Autofill section fixes (#10488)
* [PM-10751] Add count to website URI label

* [PM-10752] Hide autofill on page load field when the setting is disabled

* [PM-10790] Fix bottom margin
2024-08-13 08:58:16 -07:00
Vincent Salucci
471dd3bd7b
[PM-10294] Remove FC v1 from Clients (#10422)
* chore: remove fc v1 from org.canEditAnyCollection and update callers, refs PM-10294

* chore: remove fc v1 from collectionView.canEdit and update callers, refs PM-10294

* chore: remove fc v1 from organization.canEditAllCiphers and update callers, refs PM-10294

* chore: remove fc v1 from canDeleteAnyCollection, collection views, update callers, refs PM-10294

* chore: remove fc v1 from canEditUser/GroupAccess, refs PM-10294

* chore: remove fc v1 from canViewCollectionInfo, refs PM-10294

* chore: remove fc v1 from account component, refs PM-10294

* fix: remove fc v1 from collections component, refs PM-10294

* fix: update vault-items component, refs PM-10294

* fix: remove fc v1 from collection-dialog and collections components, refs PM-10294

* chore: remove ConfigService from group-add-edit and account components, refs PM-10294

* chore: change canEditAnyCollection to getter and update callers, refs PM-10294

* chore: change canEditUnmanagedCollections to getter and update callers, refs PM-10294

* chore: change canDeleteAnyCollection to getter and update callers, refs PM-10294

* chore: remove deprecated observable and update comments with v1, refs PM-10294

* chore: remove ununsed ConfigService from collection-dialog component, refs PM-10294

* chore: remove final fc v1 ref for vault-collection-row, refs PM-10294
2024-08-13 10:45:41 -05:00
Todd Martin
7b508b1ad7
[PM-8933] Require userId on setUserKey (#9675)
* Updated all sets of user key to pass in userId

* Added userId on auth request login.

* Fixed tests.

* Fixed tests to pass in UserId

* Added parameter to tests.

* Addressed PR feedback.

* Merged main
2024-08-13 08:07:36 -04:00
Will Martin
295fb8f7a4
[PM-3530][PM-8588] persist extension route history (#9556)
Save the extension popup route history and restore it after closing and re-opening the popup.

---------

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
2024-08-12 17:26:47 -04:00
Jared Snider
0d829b7398
Auth/PM-3515 - Lock component Tech Debt Clean up (#10332)
* PM-3515 - Lock component - remove isUnlocked check on lock comp load b/c lock guard should cover all cases with its existing logic for all clients.

* PM-3515 - VaultTimeoutSettingsSvc - Add new canLock method

* PM-3515 - Refactor logic out of lock component that belongs in lock guard. Update lock guard to reject route activation if a user can't lock whereas we used to log the user out when they landed on the lock comp.

* PM-3515 - WIP on testing all lock guard scenarios

* PM-3515 - Refactor lock guard tests + add more tests

* PM-3515 - LockGuard - if TDE user that is authN directly navigates from login-init to lock for whatever reason (only possible on web with url bar), reject that navigation directly instead of throwing them up to the redirect guard

* PM-3515 - More LockGuard tests

* PM-3515 - Update comment
2024-08-12 15:51:57 -04:00