1
0
mirror of https://github.com/bitwarden/browser.git synced 2024-11-23 11:56:00 +01:00
Commit Graph

2614 Commits

Author SHA1 Message Date
Justin Baur
1aaa88a64d
[PM-7837] Move SyncService to Platform Ownership (#9055)
* Move

* Update  References In Unowned Files

* Update  References In Vault Files

* Update Web AppComponent

* Add Import
2024-06-05 10:48:12 -04:00
Jason Ng
cb0927ac5d
[PM-8553] browser v2 search bar defects (#9506)
* update no results icon and no results scrolling
* update v2 search so the term persist when the user clicks into an item and exits the item
2024-06-05 10:06:52 -04:00
vinith-kovan
7e86c0afd4
[PM-5014] Download license component migration (#8443)
* Download license component migration

* download license dialog component migration

* download license dialog component migration
2024-06-05 13:45:08 +05:30
Shane Melton
f059d136b2
[PM-8485] [PM-7683] Dynamic list items - Org Details (#9466)
* [PM-7683] Add fullAddressForCopy helper to identity.view

* [PM-7683] Introduce CopyCipherFieldService to the Vault library

- A new CopyCipherFieldService that can be used to copy a cipher's field to the user clipboard
- A new appCopyField directive to make it easy to copy a cipher's fields in templates
- Tests for the CopyCipherFieldService

* [PM-7683] Introduce item-copy-actions.component

* [PM-7683] Fix username value in copy cipher directive

* [PM-7683] Add title to View item link

* [PM-8456] Introduce initial item-more-options.component

* [PM-8456] Add logic to show/hide login menu options

* [PM-8456] Implement favorite/unfavorite menu option

* [PM-8456] Implement clone menu option

* [PM-8456] Hide launch website instead of disabling it

* [PM-8456] Ensure cipherList observable updates on cipher changes

* [PM-7683] Move disabled logic into own method

* [PM-8456] Cleanup spec file to use Angular testbed

* [PM-8456] Fix more options tooltip

* [PM-8485] Introduce new PopupCipherView

* [PM-8485] Use new PopupCipherView in items service

* [PM-8485] Add org icon for items that belong to an organization

* [PM-8485] Fix tests

* [PM-8485] Remove share operator from cipherViews$
2024-06-04 14:34:48 -07:00
Nick Krantz
d0c1325f0c
update icons for folder & collection filters (#9508) 2024-06-04 16:26:39 -05:00
Shane Melton
6eb94078f6
[PM-8456] [PM-7683] Dynamic list items - 3 dot menu (#9422)
* [PM-7683] Add fullAddressForCopy helper to identity.view

* [PM-7683] Introduce CopyCipherFieldService to the Vault library

- A new CopyCipherFieldService that can be used to copy a cipher's field to the user clipboard
- A new appCopyField directive to make it easy to copy a cipher's fields in templates
- Tests for the CopyCipherFieldService

* [PM-7683] Introduce item-copy-actions.component

* [PM-7683] Fix username value in copy cipher directive

* [PM-7683] Add title to View item link

* [PM-8456] Introduce initial item-more-options.component

* [PM-8456] Add logic to show/hide login menu options

* [PM-8456] Implement favorite/unfavorite menu option

* [PM-8456] Implement clone menu option

* [PM-8456] Hide launch website instead of disabling it

* [PM-8456] Ensure cipherList observable updates on cipher changes

* [PM-7683] Move disabled logic into own method

* [PM-8456] Cleanup spec file to use Angular testbed

* [PM-8456] Fix more options tooltip
2024-06-04 14:21:14 -07:00
Shane Melton
d1a9d6f613
[PM-8455] [PM-7683] Dynamic list items - Copy Action (#9410)
* [PM-7683] Add fullAddressForCopy helper to identity.view

* [PM-7683] Introduce CopyCipherFieldService to the Vault library

- A new CopyCipherFieldService that can be used to copy a cipher's field to the user clipboard
- A new appCopyField directive to make it easy to copy a cipher's fields in templates
- Tests for the CopyCipherFieldService

* [PM-7683] Introduce item-copy-actions.component

* [PM-7683] Fix username value in copy cipher directive

* [PM-7683] Add title to View item link

* [PM-7683] Move disabled logic into own method
2024-06-04 14:09:09 -07:00
KiruthigaManivannan
fc2953a126
AC-2680 Custom permission manage account recovery no longer auto triggers the manage users (#9477) 2024-06-04 15:55:35 -04:00
vinith-kovan
9322dacbd4
[PM 5011][PM-8562] migrate user subscription component (#9499)
* migrate user subscription along with update license dialog

* migrate user subscription along with update license dialog

* migrate user subscription along with update license dialog
2024-06-04 23:26:20 +05:30
rr-bw
13c2c2ecaa
[PM-8236] Allow for additional data properties (#9278)
* allow for additional properties

* create interface for DataProperties and extend AnonLayouWrapperData

* move data properties to RouterService

* add docs

* add comment

* rewrite comment
2024-06-04 08:38:54 -07:00
renovate[bot]
be5507411b
[deps] Platform: Update @types/node to v20 (#9428)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-04 08:27:05 -05:00
renovate[bot]
24f0a7478b
[deps] Platform: Update Rust crate anyhow to v1.0.86 (#9375)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-04 12:18:36 +02:00
renovate[bot]
7627afbfec
[deps] Platform: Update Rust crate base64 to v0.22.1 (#9376)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-03 14:33:25 -04:00
Bitwarden DevOps
99639b537f
Bumped client version(s) (#9486) 2024-06-03 18:10:48 +00:00
Jared Snider
9d35a8895e
Auth/PM-8367 - Email Verification - Integrate Registration Self Hosted Env Selector + new Self Hosted Env Settings Dialog into Registration Start (#9361)
* PM-8367 - WIP - initial comp creation

* PM-8367 - Majority of new registration self hosted env config dialog working

* PM-8367 - RegistrationEnvSelectorComponent - add method handleSelfHostedEnvConfigDialogResult and add toast for happy path.

* PM-8367 - Add validation TODO

* PM-8367 - RegistrationSelfHostedEnvConfigDialogComponent - Add validator

* PM-8367 - RegEnvSelector - Only show self hosted if the client is browser or desktop since we will be using the selector on web as well.

* PM-8367 - Registration start comp - add env selector

* PM-8367 - Registration start - add proper import for standalone comps.

* PM-8367 - Registration Start - get storybook fixed with registration env selector

* PM-8367 - Add self hosted server to web translations only for storybook

* PM-8367 - Add more storybook examples and update docs (WIP - need to test self hosted selection)

* PM-8367 - Registration Start - update stories

* PM-8367 - Env Selector now emits selected region so that parent comps can listen to it if needed.

* PM-8367 - Registration Start - wire up handler for selectedRegionChange so that the parent comp can successfully track isSelfHost and hide / show the terms / privacy policy checkbox

* PM-8367 - TODO cleanup

* PM-8367 - Registration start docs - stage gate is two words.

* PM-8367 - Per working session with Will, move top level provided services to app level instead of module level to solve dialog null injector errors.

* PM-8367 - Storybook working for self hosted env dialog

* PM-8367 - Add dialog scroll feature to bitDialog and implement in self hosted env dialog.

* PM-8367 - Revert bit dialog changes and scroll implementation.

* PM-8367 - Tweak registration start docs

* PM-8367 - Remove unused changeDetectorRef

* PM-8367 - Add docs per PR feedback
2024-06-03 13:05:27 -04:00
Jared Snider
f691854387
Auth - PM-7392 & PM-7436 - Token Service - Desktop - Add disk fallback for secure storage failures (#8913)
* PM-7392 - EncryptSvc - add new method for detecting if a simple string is an enc string.

* PM-7392 - TokenSvc - add checks when setting and retrieving the access token to improve handling around the access token encryption.

* PM-7392 - (1) Clean up token svc (2) export access token key type for use in tests.

* PM-7392 - Get token svc tests passing; WIP more tests to come for new scenarios.

* PM-7392 - Access token secure storage to disk fallback WIP but mostly functional besides weird logout behavior.

* PM-7392 - Clean up unnecessary comment

* PM-7392 - TokenSvc - refresh token disk storage fallback

* PM-7392 - Fix token service tests in prep for adding tests for new scenarios.

* PM-7392 - TokenSvc tests - Test new setRefreshToken scenarios

* PM-7392 - TokenSvc - getRefreshToken should return null or a value - not undefined.

* PM-7392 - Fix test name.

* PM-7392 - TokenSvc tests - clean up test names that reference removed refresh token migrated flag.

* PM-7392 - getRefreshToken tests done.

* PM-7392 - Fix error quote

* PM-7392 - TokenSvc tests - setAccessToken new scenarios tested.

* PM-7392 - TokenSvc - getAccessToken - if secure storage errors add error to log.

* PM-7392 - TokenSvc tests - getAccessToken - all new scenarios tested

* PM-7392 - EncryptSvc - test new stringIsEncString method

* PM-7392 - Main.ts - fix circ dep issue.

* PM-7392 - Main.ts - remove comment.

* PM-7392 - Don't re-invent the wheel and simply use existing isSerializedEncString static method.

* PM-7392 - Enc String - (1) Add handling for Nan in parseEncryptedString (2) Added null handling to isSerializedEncString. (3) Plan to remove encrypt service implementation

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

* PM-7392 - Remove encrypt service method

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

* PM-7392 - Actually fix circ dep issues with Justin. Ty!

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

* PM-7392 - TokenSvc - update to use EncString instead of EncryptSvc + fix tests.

* PM-7392 - TokenSvc - (1) Remove test code (2) Refactor decryptAccessToken method to accept access token key and error on failure to pass required decryption key to method.

* PM-7392 - Per PR feedback and discussion, do not log the user out if hte refresh token cannot be found. This will allow users to continue to use the app until their access token expires and we will error on trying to refresh it. The app will then still work on a fresh login for 55 min.

* PM-7392 - API service - update doAuthRefresh error to clarify which token cannot be refreshed.

* PM-7392 - Fix SetRefreshToken case where a null input would incorrectly trigger a fallback to disk.

* PM-7392 - If the access token cannot be refreshed due to a missing refresh token or API keys, then surface an error to the user and log it so it isn't a silent failure + we get a log.

* PM-7392  - Fix CLI build errors

* PM-7392 - Per PR feedback, add missing tests (thank you Jake for writing these!)

Co-authored-by: Jake Fink <jfink@bitwarden.com>

* PM-7392 - Per PR feedback, update incorrect comment from 3 releases to 3 months.

* PM-7392 - Per PR feedback, remove links.

* PM-7392 - Per PR feedback, move tests to existing describe.

* PM-7392 - Per PR feedback, adjust all test names to match naming convention.

* PM-7392 - ApiService - refreshIdentityToken - log error before swallowing it so we have a record of it.

* PM-7392 - Fix copy for errorRefreshingAccessToken

* PM-7392 - Per PR feedback, move error handling toast responsibility to client specific app component logic reached via messaging.

* PM-7392 - Swap logout reason from enum to type.

* PM-7392 - ApiService - Stop using messaging to trigger toast to let user know about refresh access token errors; replace with client specific callback logic.

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

* PM-7392 - Per PR feedback, adjust enc string changes and tests.

* PM-7392 - Rename file to be type from enum

* PM-7392 - ToastService - we need to await the activeToast.onHidden observable so return the activeToast from the showToast.

* PM-7392 - Desktop AppComp - cleanup messaging

* PM-7392 - Move Logout reason custom type to auth/common

* PM-7392 - WIP - Enhancing logout callback to consider the logout reason + move show toast logic into logout callback

* PM-7392 - Logout callback should simply pass along the LogoutReason instead of handling it - let each client's message listener handle it.

* PM-7392 - More replacements of expired with logoutReason

* PM-7392 - More expired to logoutReason replacements

* PM-7392 - Build new handlers for displaying the logout reason for desktop & web.

* PM-7392 - Revert ToastService changes

* PM-7392 - TokenSvc - Replace messageSender with logout callback per PR feedback.

* PM-7392 - Desktop App comp - replace toast usage with simple dialog to guarantee users will see the reason for them being logged out.

* PM-7392 - Web app comp - fix issue

* PM-7392 - Desktop App comp - don't show cancel btn on simple dialogs.

* PM-7392 - Desktop App comp - Don't open n simple dialogs.

* PM-7392 - Fix browser build

* PM-7392 - Remove logout reason from CLI as each logout call handles messaging on its own.

* PM-7392 - Previously, if a security stamp was invalid, the session was marked as expired. Restore that functionality.

* PM-7392 - Update sync service logoutCallback to include optional user id.

* PM-7392 - Clean up web app comp

* PM-7392 - Web - app comp - only handle actually possible web logout scenarios.

* PM-7392 - Browser Popup app comp - restore done logging out message functionality + add new default logout message

* PM-7392 - Add optional user id to logout callbacks.

* PM-7392 - Main.background.ts - add clarifying comment.

* PM-7392 - Per feedback, use danger simple dialog type for error.

* PM-7392 - Browser Popup - add comment clarifying expectation of seeing toasts.

* PM-7392 - Consolidate invalidSecurityStamp error handling

* PM-7392 - Per PR feedback, REFRESH_ACCESS_TOKEN_ERROR_CALLBACK can be completely sync. + Refactor to method in main.background.

* PM-7392 - Per PR feedback, use a named callback for refreshAccessTokenErrorCallback in CLI

* PM-7392 - Add TODO

* PM-7392 - Re-apply bw.ts changes to new service-container.

* PM-7392 - TokenSvc - tweak error message.

* PM-7392 - Fix test

* PM-7392 - Clean up merge conflict where I duplicated dependencies.

* PM-7392 - Per discussion with product, change default logout toast to be info

* PM-7392 - After merge, add new logout reason to sync service.

* PM-7392 - Remove default logout message per discussion with product since it isn't really visible on desktop or browser.

* PM-7392 - address PR feedback.

---------

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
Co-authored-by: Jake Fink <jfink@bitwarden.com>
Co-authored-by: Matt Gibson <mgibson@bitwarden.com>
2024-06-03 12:36:45 -04:00
Alex Morask
010b55d39d
Prevent Provider from viewing client organization payment method and billing history (#9442) 2024-06-03 11:10:54 -04:00
Alex Morask
28de91888a
[AC-1939] Manage provider payment information (#9415)
* Added select-payment-method.component in shared lib

Because we're going to be implementing the same functionality for providers and orgs/users, I wanted to start moving some of this shared functionality into libs so it can be accessed in both web and bit-web. Additionally, the Stripe and Braintree functionality has been moved into their own services for more central management.

* Added generalized manage-tax-information component to shared lib

* Added generalized add-account-credit-dialog component to shared libs

* Added generalized verify-bank-account component to shared libs

* Added dialog for selection of provider payment method

* Added provider-payment-method component

* Added provider-payment-method component to provider layout
2024-06-03 11:01:14 -04:00
DanHillesheim
aee9720a6d
Revert "Vault - Trial initiation content updates" (#9421) 2024-06-03 08:34:51 -06:00
Nick Krantz
748eb00223
[PM-6826] Vault filter refresh (#9365)
* add initial type filter

- use `bit-select` while the chip component is being developed

* get cipherTypes$ from service

- integrate with user settings

* initial add of folder selection

* initial add of vault selection

* initial add of collections filter

* update `VaultPopupListFilterService` to `VaultPopupListFiltersService`

* integrate hasFilterApplied$

* intermediate commit of integration to the filters component

* do not return the tree when the value is null

* return null when the updated option is null

* update vault-popup-list to conform to the chip select structure

* integration of bit-chip-select

* move "no folder" option to the end of the list

* show danger icon for deactivated organizations

* show deactivated warning when the filtered org is disabled

* update documentation

* use pascal case for constants

* store filter values as full objects rather than just id

- This allows secondary logic to be applied when filters are selected

* move filter form into service to be the source of truth

* fix tests after adding "jest-preset-angular/setup-jest"

* remove logic to have dynamic cipher type filters

* use ProductType enum

* invert conditional for less nesting

* prefer `decryptedCollections$` over getAllDecrypted

* update comments

* use a `filterFunction$` observable rather than having to pass filters back to the service

* fix children testing

* remove check for no folder

* reset filter form when filter component is destroyed

* add takeUntilDestroyed for organization valueChanges

* allow takeUntilDestroyed to use internal destroy ref

- The associated unit tests needed to be configured with TestBed rather than just `new Service()` for this to work

* use controls object for type safety
2024-06-03 09:20:14 -05:00
github-actions[bot]
3835a9ddaf
Autosync the updated translations (#9472)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-02 09:32:32 +00:00
github-actions[bot]
c72e8df619
Autosync the updated translations (#9471)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-02 09:31:23 +00:00
github-actions[bot]
f172612b19
Autosync the updated translations (#9470)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-06-02 09:30:49 +00:00
Anders Åberg
0d492b4454
Fix PM-8134: Change b64 to b64url (#9193) 2024-06-01 13:07:36 -04:00
Nick Krantz
00c305dff3
Browser - Add jest-preset-angular (#9412)
* add "jest-preset-angular/setup-jest" to browser app

* use flushPromises rather than await a dummy promise

* move the import of `page-script` into beforeAll rather than the describe scope

* invoke the sendMessage callback rather than relying on a promise comparison
2024-05-31 13:21:45 -05:00
Bitwarden DevOps
fb577a448e
Bumped client version(s) (#9464) 2024-05-31 17:36:04 +00:00
Oscar Hinton
b784fe7593
Remove unused dependency @tsconfig/node16 (#9429)
I was reviewing node related dependencies, and @tsconfig/node16 references node16. Since it's unused it's better to remove it than upgrading it.
2024-05-31 10:30:34 -05:00
Bitwarden DevOps
f3e780a678
Bumped client version(s) (#9458) 2024-05-31 14:30:37 +00:00
github-actions[bot]
4798cd0a95
Autosync the updated translations (#9450)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-31 06:31:47 +00:00
github-actions[bot]
0dc51baf79
Autosync the updated translations (#9449)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-31 06:31:27 +00:00
github-actions[bot]
9a456cc313
Autosync the updated translations (#9447)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-31 06:29:57 +00:00
github-actions[bot]
748ce19f18
Autosync the updated translations (#9448)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-31 06:18:08 +00:00
Will Martin
868e0a5ac9
[PM-6788][PM-7755] add babel/preset-env and browserslist (#9383)
* add babel present-env and browserslist

---------

Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>
2024-05-30 18:42:26 -04:00
Todd Martin
85843c8baa
[PM-6805] Update minimum supported macOS desktop version to 12 (#9439) 2024-05-30 18:25:17 -04:00
Daniel James Smith
de92720d7e
[PM-7289] Create generator libraries (#9432)
* Create and register @bitwarden/generator-core

- Create libs/tools/generator/core
- Register new library within tsconfigs
- Register new library within eslint.configs

* Create and register @bitwarden/generator-extensions

- Create libs/tools/generator/extensions
- Register new library within tsconfigs
- Register new library within eslint.configs

* Create and register @bitwarden/generator-components

- Create libs/tools/generator/components
- Register new library within tsconfigs
- Register new library within eslint.configs

* Update libs/tools/generator/components/package.json

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

* Update libs/tools/generator/extensions/package.json

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

* Add empty barrel files for new libs

* Fix extension of test.environment

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by:  Audrey  <ajensen@bitwarden.com>
2024-05-30 15:38:31 -04:00
Daniel James Smith
41fbac7151
[PM-7173] Update autofill settings [Nav changes] (#9318)
* Introduce additional options heading

Text will be needed for the UI changes later on anyway

* Move enableContextMenuItem from options.component to autofill.component

* Move copy TOTP automatically from options.component to autofill.component

* Move clearClipboard from options.component to autofill.component

* Move showCardsCurrentTab from options.component to autofill.component

* Move showIdentitiesCurrentTab from options.component to autofill.component

* Remove options.component as all controls have been migrated

Delete options.component
Import within AppModule
Delete obsolete route
Remove animation/page transition
Remove button from settings.component.html

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-05-30 21:12:43 +02:00
Jake Fink
e29025df28
[PM-5951] Migrate org invite state (#9014)
* use deep linked url for org invite instead of separate state

* remove organization invite state & fix tests

* clear login redirect for SSO JIT users since they are accepted when setting MP

* create accept org invite service and consolidate components in module

* finish switch to accept org invite service

* move logic to accept org service

* the rest of the owl

* clear org invite along with deep linked route

* pr feedback

* fix test and add error to catch null invite

* pr feedback

* clear stored invite if it doesn't match provided one
2024-05-30 12:03:17 -04:00
Cesar Gonzalez
f79d1dac92
[PM-8480] Rename ambiguous Jest testing method (#9417) 2024-05-30 08:39:19 -05:00
Daniel James Smith
a4dd1f4544
[deps][PM-8493] Bump electron to 29.4.2 (#9424)
* Bump electron to 29.4.2

* Bump version in electron-builder.json

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-05-30 13:24:40 +02:00
Bernd Schoolmann
f6942dde74
[PM-3050] Add sync on unlock, logout when account is deleted (#9288)
* Add sync on unlock, logout when account is deleted

* Update libs/common/src/vault/services/sync/sync.service.ts

Co-authored-by: SmithThe4th <gsmith@bitwarden.com>

* Fix failing unit tests

* Fix incorrect merge

---------

Co-authored-by: SmithThe4th <gsmith@bitwarden.com>
2024-05-30 11:10:03 +02:00
Bernd Schoolmann
6d0ef65094
[PM-5938] Prevent vault coruption on key-rotation on desycned vault (#9235)
* Prevent key-rotation when local vault is desynced

* Prevent key-rotation on non-decrypted vault

* Remove cipher check that is done on server side
2024-05-30 11:08:47 +02:00
Thomas Rittson
fb7273beb8
[AC-2703] Fix copy in members and groups modals for custom users (#9408)
* Fix copy in members and groups modals for custom users

* Fix nesting in member dialog template
2024-05-30 10:49:32 +10:00
Daniel James Smith
df193dd869
[PM-2517] [PM-8299] Add password protected export on desktop/Export managed collections (#9286)
* Move/replace submit and userVerification logic from web into the BaseExportComponent

Add "@bitwarden/auth" as dependency to the vault-export-ui package
New submit logic also checks for password-encrypted exports which will be need for future UI updates on browser and desktop

* Create export-desktop component using shared recipe

Create new export component that uses the shared export.component from @bitwarden/vault-export-ui

* Update imports within AppModule

Remove old ExportComponent
Remove ExportScopeCalloutComponent as it's part of the BaseExportComponent

* Open new component when clicking on Export Vault menu item

* Add missing entries to messages.json

* Delete old export.component

* Remove duplicate verifyUser-method

* Change placeholder example

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-05-30 00:00:49 +02:00
Daniel James Smith
e318ac0ddf
[PM-2516][PM-8298] Add password protected export on browser/Export managed collection (#9284)
* Move/replace submit and userVerification logic from web into the BaseExportComponent

Add "@bitwarden/auth" as dependency to the vault-export-ui package
New submit logic also checks for password-encrypted exports which will be need for future UI updates on browser and desktop

* Create export-browser component using shared recipe

- Create new export component that uses the shared export.component from @bitwarden/vault-export-ui

* Update imports within AppModule

* Switch to route to the new component

* Add missing entries to messages.json

* Delete old export.component

* Remove duplicate verifyUser-method

* Change placeholder example

* Add documentation to protected members of ExportBrowserComponent

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-05-29 23:58:04 +02:00
rr-bw
828e26f93c
[PM-8368] AnonLayout Footer Updates (#9397)
* add hostname to footer via env service

* add logic for showing/hiding environment

* add docs

* add web env-selector

* refactor to use one slot for env-selector

* add storybook docs

* add env hostname to stories

* remove sample route
2024-05-29 13:31:04 -07:00
github-actions[bot]
05f5d632aa
Autosync the updated translations (#9420)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-29 20:21:03 +00:00
github-actions[bot]
8656ec5417
Autosync the updated translations (#9419)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-29 20:16:31 +00:00
github-actions[bot]
d8ee878ab3
Autosync the updated translations (#9418)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-29 20:11:45 +00:00
Cesar Gonzalez
a7aaa140fd
[PM-8322] Firefox Inline Autofill Menu Not Propagating Correctly When Switching Tabs (#9300)
* [PM-8322] Firefox Inline Autofill Menu Not Propagation Correctly When Switching Tabs

* [PM-8322] Firefox Inline Autofill Menu Not Propagation Correctly When Switching Tabs

* Add missing RouterModule to the CurrentAccountComponent (#9295)

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>

* [PM-6825] Browser Refresh - Initial List Items (#9199)

* [PM-6825] Add temporary vault page header

* [PM-6825] Expose cipherViews$ observable

* [PM-6825] Refactor getAllDecryptedForUrl to expose filter functionality for reuse

* [PM-6825] Introduce VaultPopupItemsService

* [PM-6825] Introduce initial VaultListItem and VaultListItemsContainer components

* [PM-6825] Add VaultListItems to VaultV2 component

* [PM-6825] Introduce autofill-vault-list-items.component to encapsulate autofill logic

* [PM-6825] Add temporary Vault icon

* [PM-6825] Add empty and no results states to Vault tab

* [PM-6825] Add unit tests for vault popup items service

* [PM-6825] Negate noFilteredResults placeholder

* [PM-6825] Cleanup new Vault components

* [PM-6825] Move new components into its own module

* [PM-6825] Fix missing button type

* [PM-6825] Add booleanAttribute to showAutofill input

* [PM-6825] Replace empty refresh BehaviorSubject with Subject

* [PM-6825] Combine *ngIfs for vault list items container

* [PM-6825] Use popup-section-header component

* [PM-6825] Use small variant for icon buttons

* [PM-6825] Use anchor tag for vault items

* [PM-6825] Consolidate vault-list-items-container to include list item component functionality directly

* [PM-6825] Add Tailwind classes to new Vault icon

* [PM-6825] Remove temporary header comment

* [PM-6825] Fix auto fill suggestion font size and padding

* [PM-6825] Use tailwind for vault icon styling

* [PM-6825] Add libs/angular to tailwind.config content

* [PM-6825] Cleanup missing i18n

* [PM-6825] Make VaultV2 standalone and cleanup Browser App module

* [PM-6825] Use explicit type annotation

* [PM-6825] Use property binding instead of interpolation

* [PM-7076] Create settings-v2.component (#9213)

* Create settings-v2.component

Create new settings page
Add routing based on extension refresh flag

* Wrap anchors around the icons

* Add account-switcher to settings page

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>

* [PM-8289] Inline menu content script does not update when user updates setting (#9279)

* [PM-8289] Inline menu content script does not update whne user updates setting

* [PM-8289] Fixing issue present within Jest tests

* [PM-8289] Triggering a reload of autofill scripts when a user logs into their account

---------

Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by: Shane Melton <smelton@bitwarden.com>
2024-05-29 11:35:17 -05:00
Justin Baur
a6df923416
[PM-8292] Fixup ForegroundSyncService (#9292)
* Change `object` to `Record<string, unknown>`

* Change `object` to `Record<string, unknown>` Pt. 2

* Update ForegroundSyncService

- Manage finish message in the listener to more gaurantee a message back
- Make the timeout much longer
- Allow it to throw if the background sync service threw

---------

Co-authored-by: Cesar Gonzalez <cesar.a.gonzalezcs@gmail.com>
2024-05-29 12:12:58 -04:00
KiruthigaManivannan
beb930902a
PM-8337 Add Invalid Secret Handling to Two Factor Verify Dialog (#9325) 2024-05-29 19:33:28 +05:30
Bernd Schoolmann
9d342f61cb
Fix promise rejection on missing tray on Linux (#9265) 2024-05-29 13:32:13 +02:00
Daniel James Smith
86d6be3187
[PM-8448] Create BItwarden Send UI library package (#9402)
* Create the send-ui library package

Create folder
Create package.json
Create jest config
Create tsconfig and tsconfig.spec.json
Create README
Add empty barrel file for exporting future members

* Register @bitwarden/send-ui with all clients and libs

* Register with eslint

* Fix linting issue with README

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-05-29 11:26:40 +01:00
Bitwarden DevOps
42784b39f1
Bumped client version(s) (#9406) 2024-05-28 22:19:50 +00:00
Jason Ng
4ef9497bc5
[PM-6824] Browser V2 Search (#9343)
*browser v2 search - can search for terms and items filtered in their respective groups
2024-05-28 17:08:25 -04:00
Jake Fink
bc170f5207
use valid userId when logging out (#9334) 2024-05-28 15:17:30 -04:00
Vincent Salucci
e47f83db80
fix: remove view events menu option for users without permission, refs PM-7024 (#9355) 2024-05-28 14:17:20 -05:00
Cesar Gonzalez
e14e2627ad
[PM-8447] Autofill On Load Causes Extension to Hang After Browser Startup (#9400) 2024-05-28 14:05:24 -05:00
Daniel James Smith
7fbd9901f0
Fix missing confirmation toast on vault export (#9398)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-05-28 19:35:10 +01:00
DanHillesheim
3fc2570a0e
Trial initiation content updates (#9138) 2024-05-28 10:42:53 -06:00
cyprain-okeke
5a25024f59
Change Addons to Add-ons (#9392) 2024-05-28 17:38:15 +01:00
vinith-kovan
1b5faae7c3
[PM-5011][PM-7284] migrate user subscription along with update license dialog (#8659)
* migrate user subscription along with update license dialog

* migrate user subscription along with update license dialog
2024-05-28 21:23:54 +05:30
Daniel James Smith
49b59840a8
Create import-browser-v2 component (#9214)
Copy existing `import-browser`-component
Add `popup-page` and -`header` and -`footer`
Add missing imports as page is marked as standalone
Fix no-floating-promise
Change to route OnSuccess to `vault-settings` instead of old `settings`-page

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-05-28 16:47:35 +02:00
renovate[bot]
93c59db6fc
[deps] Autofill: Update tldts to v6.1.22 (#9374)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Cesar Gonzalez <cesar.a.gonzalezcs@gmail.com>
2024-05-27 15:23:20 +00:00
Rui Tomé
8e7a215597
[AC-1712] Add functionality to approve all device approval requests (#9251)
* [AC-2302] Move organization-auth-request.service to bit-common folder

* [AC-2302] Rename organization-auth-request.service to organization-auth-request-api.service

* [AC-2302] Move logic from component to organization-auth-request.service

* [AC-2302] Fix import path in OrganizationAuthRequestService

* [AC-2302] Move imports to OrganizationsModule and delete unused CoreOrganizationModule

* [AC-2302] Move the call to get userResetPasswordDetails into OrganizationAuthRequestService

* [AC-2302] Remove @Injectable() and manually configure dependencies

* [AC-2302] Add OrganizationAuthRequestService unit tests first draft

* [AC-2302] Refactor device-approvals.component.ts to remove unused imports

* [AC-2302] Set up jest on bit-common and add unit tests for OrganizationAuthRequestService

* [AC-2302] Add bit-common to jest.config.js

* [AC-2302] Update organizations.module.ts to include safeProviders declared in variable

* [AC-2302] Remove services and views folders from bit-common

* [AC-2302] Define path mapping

* Adjust an import path

The import path of `PendingAuthRequestView` in
`OrganizationAuthRequestApiService` was pointing to the wrong place. I
think this file was just recently moved, and the import didn't get
updated.

* Get paths working

* Fix import

* Update jest config to use ts-jest adn jsdom

* Copy-paste path mappings from bit-web

* Remove unnecessary test setup file

* Undo unnecessary change

* Fix remaining path mappings

* Remove Bitwarden License mapping from OSS code

* Fix bit-web so it uses its own tsconfig

* Fix import path

* Remove web-bit entrypoint from OSS tsconfig

* Make DeviceApprovalsComponent standalone

* Remove organization-auth-request-api.service export

* Add BulkApproveAuthRequestsRequest class for bulk approval of authentication requests

* Add api call for device bulk approvals

* Add bulk device approval to OrganizationAuthRequestService

* Add unit tests for bulk device approval method

* Remove OrganizationsRoutingModule from DeviceApprovalsComponent imports

* Remove CoreOrganizationModule from OrganizationsModule imports

* Remove NoItemsModule from OrganizationsModule imports

* Get keys for each item to approve

* Update approvePendingRequests unit test

* Use ApiService from JslibServicesModule

* Update providers in device-approvals.component.ts

* Add method to retrieve reset password details for multiple organization users

* Add organizationUserId property to OrganizationUserResetPasswordDetailsResponse class

* Use method to retrieve reset password details for multiple organization users

* Rename ResetPasswordDetails to AccountRecoveryDetails

* Update OrganizationAuthRequestService to use getManyOrganizationUserAccountRecoveryDetails

* Add functionality to approve all device approval requests

* Update AdminAuthRequestUpdateWithIdRequest property names and imports

* Refactor bulk approval functionality in organization auth requests

* Put the 'Approve All' button behind a feature flag.

* Update feature flag key

Co-authored-by: Addison Beck <github@addisonbeck.com>

* Rename update request AdminAuthRequestUpdateWithIdRequest to OrganizationAuthRequestUpdateRequest

* Update organization-auth-request.service.spec.ts to use bulkUpdatePendingRequests method

---------

Co-authored-by: Addison Beck <hello@addisonbeck.com>
Co-authored-by: Thomas Rittson <trittson@bitwarden.com>
Co-authored-by: Addison Beck <github@addisonbeck.com>
2024-05-27 14:20:44 +01:00
Matt Gibson
93b9eba769
Separate browser foreground and background memory space (#9315)
* Separate browser foreground and background memory space

* Prefer inherited DI providers
2024-05-27 08:54:24 -04:00
Matt Gibson
2e6280ce88
Prefer UserKeyDefinition for user-scoped data (#9349) 2024-05-27 08:12:53 -04:00
Matt Gibson
c61ba41b97
Use User Key Definitions for user-scoped data (#9348) 2024-05-27 08:12:28 -04:00
Thomas Rittson
c0bb7b9edf
[AC-2631] Add device-approval command scaffolding (#9351)
* Add device-approval scaffolding

* Refactor: move helpers to BaseProgram

* Update CODEOWNERS
2024-05-27 11:03:23 +10:00
Jared Snider
89d7e96b25
Auth/PM-5086 - Email Verification - Registration Start + Environment Selector components (#9342)
* PM-5086 - WIP start on registration start component

* PM-5086 - more WIP progress on registration start comp

* PM-5086 - Setup secondary component

* PM-5086 - (1) Validation working (2) States implemented (3) 2nd state for check email mostly completed except for correct icon

* PM-5086 - Registration Start - check email state - update icon to be correct from figma.

* PM-5086 - Refactor self hosted conditional + actually hide the checkbox if it is self hosted.

* PM-5086 - WIP good progress on getting browser & desktop creating account on logic working.

* PM-5086 - Accessibility pass + WIP on region selector

* PM-5086 - Accessibility pass with Danielle

* PM-5086 - Migrate env selector logic to own component.

* PM-5086 - Update AnonLayoutWrapperComp import

* PM-5086 - Remove unncessary focus.

* PM-5086 - WIP first draft of registration env selector; name might change to differentiate it from existing env selector.

* PM-5086 - Rename env selector to be more clear and use registration-env-selector instead.

* PM-5086 - (1) Export registration env selector (2) Change comp name not just file name.

* PM-5086 - Create new registration page stub

* PM-5086 - Fix build issue where select module was missing from new registration env selector.

* PM-5086 - Registration --> registration start.

* PM-5086 - Add missing translation from registration-start-secondary-component to desktop & browser.

* PM-5086 - Add missing translations

* PM-5086 - Registration Env Selector - forms require form groups. duh.

* PM-5086 - Registration Env Selector - working now.

* PM-5086 - Registration Start desktop mostly working with env selector issues.

* PM-5086 - Registration start - get self hosted env dialog to close on close click. Backdrop click doesn't work but escape does still.

* PM-5086 - TODO: figure out if there is a better way to get the dialog to close.

* PM-5086 - Registration start - get goBack working to properly re-show env selector

* PM-5086 - Self Hosted Env Comp - re-emit current env on close so that select based env selectors can reset

* PM-5086 - RegistrationEnvSelector - Refactor init logic to also listen for env updates so that the user's choices on the self hosted settings dialog get communicated to this comp

* PM-5086 - Registration Start Desktop - Don't allow users to close dialog via escape as we need them to either close or save to get the env service to set the env correctly.

* PM-5086 - Browser Registration Start Page stub

* PM-5086 - Registration Start comp - storybook added

* PM-5086 - Remove links to start-registration as we aren't ready to implement that yet.

* PM-5086 - Revert environment comp changes.

* PM-5086 - Delete registration start pages.

* PM-5086 - Test removing PreloadedEnglishI18nModule to see if it fixes test failures

* PM-5086 - Try to resolve issues w/ importing PreloadedEnglishI18nModule into RegistrationStartComponent storybook stories file.

* PM-5086 - Allow translations to be imported for all libs.

* PM-5086 - Remove comment from JSON

* PM-5086 - TODO cleanup

* PM-5086 - Per PR feedback, fix display issues by using correct classes.

* PM-5086 - Fix SVG per PR feedback

* PM-5086 - Remove unnecessary methods

* PM-5086 - RegistrationEnvSelectorComponent - per PR feedback, properly type null in form group
2024-05-24 15:43:29 -04:00
Daniel James Smith
34a766f346
[PM-7178] Update about and more-from-bitwarden pages [UI changes] (#9322)
* Remove button to launch contact form from about-page

* Remove button to launch community forums from about-page

* Create about-page-v2 component

Copy existing about-page.component
Add missing imports as page is marked as standalone
Add popup-page and -header
Migrate navigation items to use bit-items and bit-item-content
Route to new page when feature flag enabled

* Create more-from-bitwarden-page-v2 component

Copy existing more-from-bitwarden-page.component
Add missing imports as page is marked as standalone
Add popup-page and -header
Migrate navigation items to use bit-items and bit-item-content
Route to new page when feature flag enabled

* Add speedbump for rate the extension button

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-05-24 17:17:24 +02:00
Addison Beck
954d427539
Account for commercial licensed CLI code in pipelines (#9293)
* Add `:oss` prefix to preexisting npm commands

* Build `bit` and `oss` versions in `build-cli` workflow

* Update release job to publish new artifacts

* Rename build job tasks for clarity
2024-05-24 09:36:26 -05:00
KiruthigaManivannan
51af102f7c
PM 2048 Update Two Factor Options dialog (#8565)
* PM-2048 Migrate Two factor options component

* PM-2048 Update Two Factor Options Dialog

* PM-2048 Fixed lint issue
2024-05-24 19:51:27 +05:30
Merissa Weinstein
15ba7040e5
[PM-6606] remove onboarding feature flag (#9178)
* remove feature flag value from enum

* remove feature flag from onboarding component

* remove ConfigService mock from spec

* fix format
2024-05-24 09:02:17 -05:00
KiruthigaManivannan
4e9db9057b
AC-2401 Migrate sponsored families component (#8874)
* AC-2401 Migrate sponsored families component

* AC-2401 Removed unused method
2024-05-24 19:00:06 +05:30
github-actions[bot]
091c8ccd46
Autosync the updated translations (#9354)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-24 12:19:27 +00:00
github-actions[bot]
fe8da32b0d
Autosync the updated translations (#9353)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-24 12:15:01 +00:00
github-actions[bot]
ab809d915d
Autosync the updated translations (#9352)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-24 12:13:20 +00:00
vinith-kovan
74bc24b39a
two subscription header issue fix (#9332) 2024-05-24 13:51:59 +05:30
KiruthigaManivannan
36c6dc27e5
PM-2165 Migrate delete account dialog (#8503)
* PM-2165 Migrate delete account dialog

* PM-2165 Addressed Review comments

* PM-2165 Removed legacy user verfication component and used new one

* PM-2165 Added invalidSecret to form input
2024-05-24 08:55:43 +02:00
Thomas Rittson
f2fcf5ce2e
[AC-2522] Remove collection enhancements opt-in (#9283)
* Remove FlexibleCollectionsMigration feature flag and code

* Remove api method
2024-05-24 09:00:40 +10:00
Victoria League
08a6f91411
[CL-221] Add chip-select component (#9021)
---------

Co-authored-by: William Martin <contact@willmartian.com>
2024-05-23 16:30:55 -04:00
Cesar Gonzalez
bbf1473022
[PM-5295] Improve autofill collection of page details performance (#9063)
* [PM-5295] Improve autofill collection of page details performance

* [PM-5295] Reworking implementation to leverage requestIdleCallback instead of requestAnimationFrame

* [PM-5295] Reworking implementation to leverage requestIdleCallback instead of requestAnimationFrame

* [PM-5295] Incorporating documentation for added methods

* [PM-5295] Reworking how we handle collection of shadowRoot elements

* [PM-5295] Fixing jest tests relating to the defined pseudo selector

* [PM-5295] Fixing jest tests relating to the defined pseudo selector

* [PM-5295] Refactoring

* [PM-5295] Refactoring

* [PM-5295] Refactoring

* [PM-5295] Starting the work to set up the tree walker strategy under a feature flag

* [PM-5295] Incorporating methodology for triggering a fallback to the TreeWalker API if issues arise with the deepQuery approach

* [PM-5295] Fixing jest test
2024-05-23 18:30:37 +00:00
KiruthigaManivannan
02c524dd5f
PM-2058 Update Two Factor Recovery Dialog (#8985) 2024-05-23 20:47:11 +05:30
Vincent Salucci
8335d8f484
[AC-2559] - BUG - Refactor members search observable chains (#9230)
* fix: update observable chains for search, refs AC-2559

* fix: remove comment, reorganize variables, refs AC-2559

* chore: remove ngOnInit from base people component, refs AC-2559

* chore: remove async declaration from resetPaging, refs AC-2559

* chore: replace bit-search ngmodel with formControl, refs AC-2559

* chore: move destroy pattern out of base class, refs AC-2559

* fix: remove ngOnDestroy super call, refs AC-2559

* Improve performance issues

---------

Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>
Co-authored-by: Thomas Rittson <trittson@bitwarden.com>
2024-05-23 09:05:58 -05:00
KiruthigaManivannan
92b70d983d
PM-2053 Update Bulk Status dialog (#8928)
* PM-2053 Update Bulk Status Dialog

* PM-2053 Upadate bulk status dialog

* PM-2053 Updated type issues in Bulk status dialog
2024-05-23 19:21:07 +05:30
KiruthigaManivannan
dd53a1c5ce
AC-2410 Migrate Events Component (#8970)
* AC-2410 Migrate Events Component

* AC-2410 Addressed a minor correction
2024-05-23 18:59:24 +05:30
KiruthigaManivannan
ad3c40297f
AC-2397 Migrate Reports home component (#8786)
* AC-2397 Migrate Reports home component

* AC-2397 Addressed review comments
2024-05-23 18:47:10 +05:30
Shane Melton
75975dd71f
[PM-8333] Autofill refresh button for sidebar popup (Firefox) (#9314)
* [PM-8333] Ensure title suffix is aligned with title

* [PM-8333] Add refresh button for autofill list items section for FF sidebar

* [PM-8333] Add button type
2024-05-23 09:11:16 +01:00
Shane Melton
0b950080ca
[PM-8004] [AC-2603] [AC-2616] [AC-2621] [AC-2622] Unmanaged collection fixes (#9301)
* [AC-2603] Add unmanaged property to CollectionAdminView and response models

* [AC-2603] Cleanup CollectionViews

- Remove getters that have been replaced with Unmanaged property
- Remove AddAccess that is also being replaced
- Add canEditUnmanagedCollections() helper to organization

* [AC-2603] Replace old AddAccess logic with Unmanaged flag

* [AC-2603] Fix failing test

* [AC-2603] Ensure Add Access badge/toggle only shows when V1 flag is enabled

* [AC-2603] Undo change to canEditUserAccess and canEditGroupAccess

Custom users should not get access to an unmanaged collection with only Manage Groups and Manage User permissions. That is still reserved for admin/owners and EditAnyCollection custom users.
2024-05-22 11:58:04 -07:00
Daniel James Smith
d6f78f2225
[PM-7737] Create about-page and more-from-bitwarden page [Nav changes] (#9233)
* Move help-and-feedback to tools and rename to about-page

Moved help-and-feedback.component to ..tools
Renamed it to about-page
Changed the title to about
Changed the settings button to about
Updated routes
Updates transition animation

* Move button to open AboutDialog from settings to about-page

* Move launch web-vault to about-page

* Move rate extension from settings to about-page

* Fix no-floating-promises

* Remove icons from about-page entries

* Make about-page standalone

* Create MoreFromBitwardenPage component

Create new component
Add button to navigate to new component from about-page
Add routing for new component

* Add new speedbumps to help-center and web-app links

* Add link to Bitwarden Authenticator page

Include speedbump explaing some functionality about the the authenticator

* Add link to Secrets Manager page

Include speedbump explaining some functionality of Secrets Manager

* Add link to Passwordless.dev page

Include speedbump explaining some functionality of Passwordless.dev

* Move learnFromOrg over to more-from-bitwarden

Include speedbump that explains Bitwarden for business

* Clean-up settings.component

Some left-over clean-up from https://github.com/bitwarden/clients/pull/8840
- Removing import and export methods

* Move premium-link to more-from-bitwarden

Hide link if user already has premium

* Add popout-button to about-page

* Remove unneeded headings

* Move popout-button on setting to the right

* Add Free Bitwarden Families link

Include speedbump explaining Free Bitwarden Families

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-05-22 17:00:40 +00:00
Kyle Spearrin
5a29fee7e6
[PM-7004] Verify org delete from emailed link (#8445)
* add verify org delete page

* PR feedback from thomas

* use abstraction

* Apply suggestions from code review

Co-authored-by: Rui Tomé <108268980+r-tome@users.noreply.github.com>

* delete org copy

* Move verify-recover-delete-org component to admin-console/organizations/manage folder and update routing

* [PM-7004] Add async/await to ngOnInit in verify-recover-delete-org.component.ts

* [PM-7004] Update deleteRecoverOrgConfirmDesc message in messages.json

* [PM-7004] Add warning message for deleting organization's active user accounts

* [PM-7004] Update to standalone component

* [PM-7004] Update delete organization warning message

* [PM-7004] Refactor delete organization form

* [PM-7004] Delete unused selector in verify-recover-delete-org.component.ts

* [PM-7004] Rename recoverDeleteToken method in verify-recover-delete-org.component.ts to deleteUsingToken

* [PM-7004] Update formGroup initialization in verify-recover-delete-org.component.ts

* [PM-7004] Delete formGroup initialization in verify-recover-delete-org.component.ts

* [PM-7004] Remove try/catch from submit method in verify-recover-delete-org.component.ts

* [PM-7004] Update submit button type in verify-recover-delete-org.component.html

* [PM-7004] Remove manual loading state in verify-recover-delete-org.component

* [PM-7004] Remove unnecessary span in verify-recover-delete-org.component.html

* [PM-7004] Update button styles in verify-recover-delete-org.component.html

* [PM-7004] Add back in the manual loading state in verify-recover-delete-org.component

* [PM-7004] Update button type and class in verify-recover-delete-org.component.html

* [PM-7004] Replace bootstrap classes with equivalent tailwind classes

* [PM-7004] Replace bootstrap classes with Tailwind in verify-recover-delete-org.component.html

---------

Co-authored-by: Rui Tomé <108268980+r-tome@users.noreply.github.com>
Co-authored-by: Rui Tome <rtome@bitwarden.com>
2024-05-22 18:00:02 +01:00
Shane Melton
594a6f1daf
[PM-6825] Fix app icon styling in Browser (#9311)
* [PM-6825] Add style override for app icon in the extension to match desktop

* [PM-6825] Add Ids to favorites and allItems list containers for easier testing automations
2024-05-22 09:27:05 -07:00
KiruthigaManivannan
ae74defc8c
PM-2153 Update User Confirm Dialog (#8694)
* PM-2153 Update User Confirm Dialog

* PM-2153 Called confirm user method before dialog close
2024-05-22 21:16:15 +05:30
Matt Gibson
d0c5312c34
Fix failing CLI build (#9308) 2024-05-22 10:56:03 -04:00
vinith-kovan
8f65a48ede
[AC-2396] migrate two factor authentication component (#8881)
* migrating two factor authentication component

* migrating two factor authentication component
2024-05-22 20:15:16 +05:30
vinith-kovan
b672b038b7
migrating accept families for enterprise setup component (#8895) 2024-05-22 20:05:32 +05:30
vinith-kovan
82a83ead98
change kdf confirmation component migration (#8489)
Change kdf configuration component migration
2024-05-22 19:53:53 +05:30
vinith-kovan
780ab28e40
migrating domain rules component (#8745) 2024-05-22 19:34:02 +05:30
✨ Audrey ✨
6ca836f31d
fix clear when account unavailable error (#9299)
* fix clear when account unavailable error
* remove explicit password history clear on logout
2024-05-22 10:03:17 -04:00
Jonathan Prusik
91ccb5ff93
fix typo (#9296) 2024-05-22 10:02:46 -04:00
vinith-kovan
a5bfff891b
migrate policy edit component (#8914) 2024-05-22 18:50:06 +05:30
vinith-kovan
588663f80f
[PM 4983] migrate vault timeout input component (#8661)
* migrate vault timeout input component

* migrate vault timeout input component
2024-05-22 17:49:24 +05:30
Cesar Gonzalez
8ea3b79512
[PM-8289] Inline menu content script does not update when user updates setting (#9279)
* [PM-8289] Inline menu content script does not update whne user updates setting

* [PM-8289] Fixing issue present within Jest tests

* [PM-8289] Triggering a reload of autofill scripts when a user logs into their account
2024-05-21 22:28:10 +00:00
Daniel James Smith
10ab556b67
[PM-7076] Create settings-v2.component (#9213)
* Create settings-v2.component

Create new settings page
Add routing based on extension refresh flag

* Wrap anchors around the icons

* Add account-switcher to settings page

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-05-21 23:32:22 +02:00
Shane Melton
3d0e0d261e
[PM-6825] Browser Refresh - Initial List Items (#9199)
* [PM-6825] Add temporary vault page header

* [PM-6825] Expose cipherViews$ observable

* [PM-6825] Refactor getAllDecryptedForUrl to expose filter functionality for reuse

* [PM-6825] Introduce VaultPopupItemsService

* [PM-6825] Introduce initial VaultListItem and VaultListItemsContainer components

* [PM-6825] Add VaultListItems to VaultV2 component

* [PM-6825] Introduce autofill-vault-list-items.component to encapsulate autofill logic

* [PM-6825] Add temporary Vault icon

* [PM-6825] Add empty and no results states to Vault tab

* [PM-6825] Add unit tests for vault popup items service

* [PM-6825] Negate noFilteredResults placeholder

* [PM-6825] Cleanup new Vault components

* [PM-6825] Move new components into its own module

* [PM-6825] Fix missing button type

* [PM-6825] Add booleanAttribute to showAutofill input

* [PM-6825] Replace empty refresh BehaviorSubject with Subject

* [PM-6825] Combine *ngIfs for vault list items container

* [PM-6825] Use popup-section-header component

* [PM-6825] Use small variant for icon buttons

* [PM-6825] Use anchor tag for vault items

* [PM-6825] Consolidate vault-list-items-container to include list item component functionality directly

* [PM-6825] Add Tailwind classes to new Vault icon

* [PM-6825] Remove temporary header comment

* [PM-6825] Fix auto fill suggestion font size and padding

* [PM-6825] Use tailwind for vault icon styling

* [PM-6825] Add libs/angular to tailwind.config content

* [PM-6825] Cleanup missing i18n

* [PM-6825] Make VaultV2 standalone and cleanup Browser App module

* [PM-6825] Use explicit type annotation

* [PM-6825] Use property binding instead of interpolation
2024-05-21 17:05:02 -04:00
Daniel James Smith
3ba19d8c9d
Add missing RouterModule to the CurrentAccountComponent (#9295)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-05-21 22:58:37 +02:00
Daniel James Smith
983a82c0ba
[PM-7611] Create a new vault settings component [UI changes] (#9220)
* Create vault-settings-v2 component

- Copy existing vault-settings component
- Make new component standalone
- Replace app-header with popup-header
- Replace nav-buttons with bit-item

- Register route to show new component when extension refresh flag is enabled

* Move sync functionality to vault-settings-v2

* Use anchors instead of buttons when navigating to a sub-page

* Removed unneeded component within routing

* Use new ToastService instead of PlatformUtils

* Remove unused MessagingService

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-05-21 20:13:40 +00:00
vinith-kovan
4ac67f2787
change security keys component migration (#8496) 2024-05-22 00:12:32 +05:30
vinith-kovan
cdf93df898
migrate update license component (#8652) 2024-05-22 00:02:09 +05:30
vinith-kovan
644fe9a5b0
[AC 2413] migrate policies component (#8692)
* migrate policies component

* migrate policies component
2024-05-21 23:27:29 +05:30
Jason Ng
b7463d551c
[AC- 2493] Restore and Delete Unassigned Items (#8983)
* updates added for single and bulk delete and restore items including unassigned and permissions for owners and custom users
2024-05-21 12:32:02 -04:00
Matt Gibson
dff44b02e2
Retrieve auth status when updating overlay ciphers. (#9282)
* Retrieve auth status when updating overlay ciphers.

We are experiencing a hang due to e8ed4f38f4/apps/browser/src/background/main.background.ts (L1218) and the fact that the auth status is not updated during account switch for this service. Ideally, the service would just use latest everywhere, but this is sufficient for this bug fix.

Account-switcher changes avoid multiple updates for the same event.

* Avoid loop

* Test fixes

Co-authored-by: Cesar Gonzalez <cesar.a.gonzalezcs@gmail.com>

---------

Co-authored-by: Cesar Gonzalez <cesar.a.gonzalezcs@gmail.com>
2024-05-21 10:46:46 -04:00
KiruthigaManivannan
ead52698c3
AC-2402 Migrate sponsoring org row component (#8894)
* AC-2402 Migrate sponsoring org row component

* AC-2402 Migrate Sponsoring Org Row Component
2024-05-21 18:56:03 +05:30
KiruthigaManivannan
81fa64534e
AC-2395 Migrate Single Org Component (#8803) 2024-05-21 18:52:27 +05:30
KiruthigaManivannan
dd3e716fba
AC-2394 Migrate Send Options Component (#8802) 2024-05-21 18:49:15 +05:30
KiruthigaManivannan
25515bfcff
AC-2393 Migrate Require SSO component (#8800) 2024-05-21 18:47:57 +05:30
KiruthigaManivannan
7053d0c7ec
AC-2390 Migrate Password Generator component (#8799) 2024-05-21 18:46:31 +05:30
KiruthigaManivannan
e2c90310a3
AC-2387 Migrate Nested Checkbox Component (#8794) 2024-05-21 18:45:16 +05:30
KiruthigaManivannan
c7fce8b298
AC-2389 Migrate Disable Send component (#8749) 2024-05-21 18:43:50 +05:30
KiruthigaManivannan
62fee4fb90
PM-2172 Update User Add Edit Dialog (#8747)
* PM-2172 Update User Add Edit Dialog

* PM-2172 Addressed review comments
2024-05-21 18:42:41 +05:30
KiruthigaManivannan
7384a5051e
PM-2051 Update Bulk Remove Dialog (#8724)
* PM-2051 Update Bulk Remove Dialog

* PM-2051 Addressed review comments
2024-05-21 18:41:07 +05:30
KiruthigaManivannan
c05a2a0d07
PM -2050 Update Bulk Confirm Dialog (#8723)
* PM-2050 Update Bulk Confirm Dialog

* PM-2050 Added css classes

* PM-2050 Addressed comments
2024-05-21 18:39:58 +05:30
KiruthigaManivannan
f6d28bed70
PM-2166 Update Purge vault dialog (#8658)
* PM-2166 Update purge vault dialog

* PM-2166 Fixed ESlint issue
2024-05-21 18:37:01 +05:30
KiruthigaManivannan
f8c64fe8ae
PM-4978 Migrate Profile component (#8490)
* PM-4978 Migrate Profile component

* PM-4978 Addressed review comments
2024-05-21 18:35:11 +05:30
KiruthigaManivannan
c8998d0c00
[PM-5018] Migrate Add Credit component (#8321)
* Migrated Add Credit component

* PM-5018 Addressed Review comments for Add Credit Component

* PM-5018 Design team comments addressed

* PM-5018 Latest review comments are addressed

* PM-5018 Minor comments addressed
2024-05-21 18:33:19 +05:30
Daniel James Smith
a3d69047c7
[PM-8252] Use new user-verification for exports on all clients (#9244)
* Move/replace submit and userVerification logic from web into the BaseExportComponent

Add "@bitwarden/auth" as dependency to the vault-export-ui package
New submit logic also checks for password-encrypted exports which will be need for future UI updates on browser and desktop

* Remove import/passing of the unneeded UserVerificationService

* Remove app-user-verification from browser and desktop components as the new UI is opened as a self-contained dialog

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-05-21 13:02:16 +02:00
Thomas Rittson
e5fb4d80f8
Make custom users subject to collection settings (#9231)
* Affects ManageUsers and ManageGroups
2024-05-21 10:45:54 +10:00
KiruthigaManivannan
a7406ab5a0
PM-8045 All Subscription plans can be selected same time (#9185) 2024-05-21 03:54:52 +05:30
Jonathan Prusik
e00f3e10c0
do not show the inline menu when there are no active users (#9273) 2024-05-20 17:08:35 -04:00
Nick Krantz
6c61cd4f63
[AC-217] Migrate to Banner Component (#8899)
* convert premium card to banner component

- create VaultBanners component that will handle all banner logic

* move upgrade browser notice to banner component

* refactor verify email component to use the banner component

* add email banner to VaultBanners component

* move low KDF message to banner component

* remove unused KDF component

* allow multiple banners to be displayed at once

* use vault service to consolidate premium banner logic
- Implement prompt thresholds for premium banner
- Update dismiss logic to re-run visibility logic

* update variable name

* move all dismiss/show logic to vault banner service

* rename tense of methods for readability

* apply underline to send email button to match other banner actions

* fix dark mode styling across banners

* remove unused variable

* use bitLink directive for styling rather than tailwind

* move premium banner to a standalone observable

* update bootstrap styles to tailwind

* use new KDF service for vault banners

* move the VerifyEmailComponent to a standalone component

* convert premium banner to a singular observable

* remove unneeded import

* AC-2589 add unique id for each vault banner

* AC-2588 poll sync service to only show premium banner after a sync

* close subscription to syncCompleted$ after one emit

* remove unneeded ReplaySubject
2024-05-20 16:06:35 -05:00
Matt Gibson
f2d24e036b
Ps/pm-8197/clean-up-desktop-biometric-ipc (#9275)
* Do not process reload on account switch

* Validate specified key against specified user

* Grab userId immediately for user key retrieval
2024-05-20 16:19:58 -04:00
Cesar Gonzalez
ac633687ec
[PM-8276] Edge Cannot Copy to Clipboard When Using Mv3 (#9266)
* [PM-8276] Edge Cannot Copy to Clipboard When Using Mv3

* [PM-8276] Fixing jest tests

* [PM-8276] Fixing jest tests

* [PM-8276] Fixing jest tests
2024-05-20 14:37:55 -05:00
rr-bw
6fd81fa4d0
[PM-8236] Move AnonLayoutWrapperComponent to Libs (#9272)
* move to libs/auth

* add tw-max-w-md to anonlayout
2024-05-20 11:12:01 -07:00
✨ Audrey ✨
a16dc84a0a
[PM-6819] Credential generator MV3 integration (#8998)
* replace `PasswordGeneratorService` with `legacyPasswordGenerationServiceFactory`
* replace `UsernameGeneratorService` with `legacyUsernameGenerationServiceFactory`
* migrate generator options and history
* apply policy immediately once available
* suppress duplicate policy emissions
* run password generation response code in `ngZone`
2024-05-20 18:08:49 +01:00
Robyn MacCallum
97c7ef3f21
Do not show error modal for ddg integration (#9269) 2024-05-20 10:40:57 -04:00
Robyn MacCallum
f07840339e
Add autofill as codeowners to ddg files (#9268)
* Add autofill as codeowners to ddg files

* Add comments
2024-05-20 10:37:52 -04:00
Ike
d3426e7005
Change presentation of config data (#9224) 2024-05-20 07:28:48 -07:00
Daniel James Smith
fe81470f36
[PM-6195] Refactor injection of services in browser services module (Pt2) (#8849)
* Remove UsernameGenerationService from popup/services.module

* Remove PasswordGenerationService from popup/services.module

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2024-05-20 09:49:47 -04:00
Will Martin
034227d993
[CL-290] make popup layout grow to full height (#9237)
* add tw-h-full to popup layout template

* add story
2024-05-20 13:38:14 +02:00
Rui Tomé
adf7a38f87
[AC-2302] Extract device approve/deny logic into a service (#8818)
* [AC-2302] Move organization-auth-request.service to bit-common folder

* [AC-2302] Rename organization-auth-request.service to organization-auth-request-api.service

* [AC-2302] Move logic from component to organization-auth-request.service

* [AC-2302] Fix import path in OrganizationAuthRequestService

* [AC-2302] Move imports to OrganizationsModule and delete unused CoreOrganizationModule

* [AC-2302] Move the call to get userResetPasswordDetails into OrganizationAuthRequestService

* [AC-2302] Remove @Injectable() and manually configure dependencies

* [AC-2302] Add OrganizationAuthRequestService unit tests first draft

* [AC-2302] Refactor device-approvals.component.ts to remove unused imports

* [AC-2302] Set up jest on bit-common and add unit tests for OrganizationAuthRequestService

* [AC-2302] Add bit-common to jest.config.js

* [AC-2302] Update organizations.module.ts to include safeProviders declared in variable

* [AC-2302] Remove services and views folders from bit-common

* [AC-2302] Define path mapping

* Adjust an import path

The import path of `PendingAuthRequestView` in
`OrganizationAuthRequestApiService` was pointing to the wrong place. I
think this file was just recently moved, and the import didn't get
updated.

* Get paths working

* Fix import

* Update jest config to use ts-jest adn jsdom

* Copy-paste path mappings from bit-web

* Remove unnecessary test setup file

* Undo unnecessary change

* Fix remaining path mappings

* Remove Bitwarden License mapping from OSS code

* Fix bit-web so it uses its own tsconfig

* Fix import path

* Remove web-bit entrypoint from OSS tsconfig

* Make DeviceApprovalsComponent standalone

* Remove organization-auth-request-api.service export

* Remove OrganizationsRoutingModule from DeviceApprovalsComponent imports

* Remove CoreOrganizationModule from OrganizationsModule imports

* Remove NoItemsModule from OrganizationsModule imports

* Use ApiService from JslibServicesModule

* Update providers in device-approvals.component.ts

---------

Co-authored-by: Addison Beck <hello@addisonbeck.com>
Co-authored-by: Thomas Rittson <trittson@bitwarden.com>
Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>
2024-05-20 11:18:23 +01:00
github-actions[bot]
4131aa9803
Autosync the updated translations (#9255)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-20 08:39:05 +00:00
github-actions[bot]
be9f0b4617
Autosync the updated translations (#9257)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-20 08:37:39 +00:00
github-actions[bot]
3b8d3951c5
Autosync the updated translations (#9256)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-20 08:32:40 +00:00
Matt Gibson
a0efc78a52
Remove deprecated factory methods (#9077)
Note: Some of the init code here will be usable in the future for a different dependency framework.
2024-05-20 09:07:39 +10:00
Jared Snider
b4c8bdf468
PM-5501 - Remove no longer necessary global default vault timeout values; there are no references to them after the state provider migration. (#9240) 2024-05-17 17:06:29 -04:00
Jonathan Prusik
82d98b8ff1
defer badge and menu state updates (#9223) 2024-05-17 15:00:37 -04:00
Matt Gibson
7d29b3be13
Wait for account to switch before proceeding (#9229) 2024-05-17 14:47:21 -04:00
Conner Turnbull
f97064effe
Only showing PM subscription adjustment form if the user is a PM user (#9011) 2024-05-17 14:14:46 -04:00
Conner Turnbull
536fe327ad
[AC-2514] Added copy for SM trial organizations subscription page (#9012)
* Added copy for SM trial organizations to contact customer support

* Only show copy if on sm-standalone discount
2024-05-17 14:04:08 -04:00