Commit Graph

1362 Commits

Author SHA1 Message Date
KiruthigaManivannan c8eac6fa12
PM-4977 Migrate Preferences component (#8663)
* PM-4977 Migrate Preferences component

* PM-4977 Addressed the review comments

* PM-4977 Updated css in preferences html

* PM-4977 Removed the class applied on bit-hint
2024-06-06 20:46:59 +05:30
KiruthigaManivannan 47e66bfeb4
AC-2723 Defect Range Too large error toast on reporting events is not being displayed (#9478) 2024-06-06 20:05:21 +05:30
vinith-kovan c06211829f
[PM 5023] migrate payment component (#8345)
* payment component migration

* payment component migration

* payment component migration
2024-06-06 19:29:54 +05:30
KiruthigaManivannan 6fadee7cb4
PM-2055 Update Two Factor Authenticator Dialog (#8972)
* PM-2055 Update Two Factor Authenticator Dialog

* PM-2055 Added close to disable two factor

* PM-2055 Added a event emitter to capture enabled status
2024-06-06 09:53:29 -04:00
KiruthigaManivannan a1442194ae
PM-2047 Migrated Change Avatar component (#8522)
* PM-2047 Migrated Change Avatar component

* PM-2047 Addressed the review comments

* PM-2047 Changed the file name

* PM-2047 Removed form promise
2024-06-06 19:23:02 +05:30
KiruthigaManivannan d58103dfb1
AC-2702 Defect Full Header name is not visible for require sso component (#9479) 2024-06-06 18:57:04 +05:30
KiruthigaManivannan f2bd16a0c4
PM-1938 Migrate Accept Emergency Component (#9177)
* PM-1938 Migrate Accept Emergency Component

* PM-1938 Updated OSS routing module

* PM-1938 Updated anon layout path and removed width

* PM-1938 Addressed review comments

* PM-1938 - Move canActivate up a level.

* PM-1938 - Consolidate routing after merging in main.

---------

Co-authored-by: Jared Snider <116684653+JaredSnider-Bitwarden@users.noreply.github.com>
Co-authored-by: Jared Snider <jsnider@bitwarden.com>
2024-06-06 18:45:17 +05:30
KiruthigaManivannan d8a86cdb7e
PM-8478 Defect Visually more padding needed around bit avatar (#9481) 2024-06-06 18:18:13 +05:30
KiruthigaManivannan 6e55733873
PM-4951 Migrate Recover Two Factor Component (#9170)
* PM-4951 Migrate Recover Two Factor Component

* PM-4951 Addressed review comments

* PM-4951 Addressed review comments

* update route

* add type safety to data properties

---------

Co-authored-by: rr-bw <102181210+rr-bw@users.noreply.github.com>
2024-06-05 10:52:04 -07:00
vinith-kovan 1cec69e377
[PM 2164] api-key component migration (#8562)
* api-key component migration

* api-key component migration

* api-key component migration

* api-key component migration
2024-06-05 22:44:33 +05:30
vinith-kovan 24fb3f71f1
[PM-2057] update two factor email dialog (#8974)
* migrating two factor email component

* two factor email component migration

* two factor email component migration

* two factor email component migration
2024-06-05 22:29:51 +05:30
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
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
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
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
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
Anders Åberg 0d492b4454
Fix PM-8134: Change b64 to b64url (#9193) 2024-06-01 13:07:36 -04: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] 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
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
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
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
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
KiruthigaManivannan beb930902a
PM-8337 Add Invalid Secret Handling to Two Factor Verify Dialog (#9325) 2024-05-29 19:33:28 +05:30
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
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
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
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 c61ba41b97
Use User Key Definitions for user-scoped data (#9348) 2024-05-27 08:12:28 -04: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
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
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
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 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
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
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
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
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
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
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
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
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
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
Ike d3426e7005
Change presentation of config data (#9224) 2024-05-20 07:28:48 -07: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] 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
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
github-actions[bot] 46062fe023
Autosync the updated translations (#9228)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-17 14:19:26 +00:00
Conner Turnbull 61f2def195
Hiding teams starter plan option from org creation and org upgrade (#9017) 2024-05-17 14:35:41 +01:00
Matt Gibson ee690cd1ef
Use account service for getting account profile data. (#9133)
* Use account service for getting account profile data.

* desktop build fixes

* CLI build fixes

* Remove state service methods
2024-05-17 00:21:00 +02:00
Shane Melton ff15b05d2d
[AC-2601] Only hide vault filter for providers when feature flag is enabled (#9179) 2024-05-16 14:24:18 -07:00
aj-rosado 8cc113c5a4
[AC-2502][AC-2498] Update free org report upgrade dialog (#9101)
* updated upgrade organization report popup texts

* updated icon on free org upgrade at reports

* solved floating promise

* Showing upgrade on subscription page when navigating from report dialog
2024-05-16 21:45:25 +01:00
Thomas Rittson 121494fb2e
[AC-2610] [AC-2613] Fix copy in members and groups dialogs (#9200)
* Add missing copy to member dialog

* [AC-2613] Fix copy for providers in Collections tabs
2024-05-16 11:15:33 -05:00
Alex Morask 43e1d0a21b
Only call payment method warning service when FF is on (#9161) 2024-05-16 10:02:56 -04:00
Nick Krantz 07076ebf9d
[PM-7231] Product Switcher within navigation sidebar (#8810)
* refactor: move logic for products into a service

- This is in preparation for having having the navigation menu show products based off of the same logic.

* add extra small font size to tailwind config

* remove absolute positioning from toggle width component
- it now sits beneath the product switcher

* update product switcher to have UI details that are only shown in the navigation pane

* add navigation oriented product switcher

* integrate navigation product switcher into secrets manager

* integrate navigation product switcher into provider console

* integrate navigation product switcher into user layout

* integrate navigation product switcher into organizations

* add translation for "switch"

* hide active styles from navigation product switcher

* update storybook for product switcher stories

* remove unneeded full width style

* use protected readonly variable instead of getter

* migrate stories to CSF3

* remove double subscription to `moreProducts$`

* only use wrapping div in navigation switcher story

- less vertical space is taken up

* update to satisfies

* refactor `navigationUI` to `otherProductOverrides`

* move observables to protected readonly

* apply margin-top via class on the host component

* remove switch text from the navigation product switcher

* Allow for the active navigation switcher to be shown

* remove xxs font style

* remove unneeded module

* remove switch from stories

* remove defensive nullish coalescing

* remove merge leftovers

* Defect PM-7899 - show organizations product at the top of the other products list

* Defect PM-7951 use attr.icon to keep the icon as an attribute after prod mode is enabled

* Defect PM-7948 update path based on the current org

* force active styles for navigation items (#9128)

* add horizontal margin to icon

---------

Co-authored-by: Thomas Rittson <31796059+eliykat@users.noreply.github.com>
2024-05-16 08:18:58 -05:00
Lorenzo Verardo c19a640557
[PM-8059] Clarify warning message (#9141) 2024-05-15 17:15:57 -04:00
Jason Ng db2f60b684
[AC-2483] Added new Add Access UI to the collection dialog for AC (#9090)
* added new Add Access UI to the collection dialog for AC
2024-05-15 14:27:15 -04:00
Thomas Rittson 0812f00d24
Fix groups modal not loading if admin access restricted (#9182) 2024-05-14 19:59:59 -05:00
Thomas Rittson 6ab7336c21
[AC-2499] Add permission checks on bulk actions menu (#8912)
* Add permission checks for org vault bulk actions

* Show checkboxes for all collections except Unassigned

* Separate individual and admin logic between CollectionView
  and CollectionAdminView

* Remove heading for error toasts per design feedback
2024-05-15 08:29:54 +10:00
rr-bw 3eeafc098a
Update AnonLayout BG Colors (#9180)
* update bg color

* add tw breakpoint for primary content bg
2024-05-14 13:28:41 -07:00
Shane Melton b4f4818635
[PM-7883] Fix Collection Dialog Component (#9088)
* [PM-7883] Cleanup/refactor collection-dialog.component

- Add new limitNestedCollections option
- Remove redundant calls to collectionService and collectionAdminService
- Adjust deleted parent logic to account for users that cannot ViewAllCollections

* [PM-7883] Ensure collection management setting is considered when limiting nested collections in the org vault
2024-05-14 08:24:51 -07:00
cyprain-okeke 79a0b0d46d
[AC-1934] Clients: Create component to display provider subscription details (#9129)
* initial commit

* Make changes for provider billing details

* replace the hardcoded values with real data

* Apply discount on the displayed amount

* Fix the design issues base on the new design changes

* Fix the design space issue

* Remove unnecessary If statements

* Revert the change

* Remove unnecessary If statements

* Refactoring the discount calculation for easy understanding
2024-05-14 14:50:36 +01:00
Alex Morask 26c08123bb
Add ability to edit client organization name (#9103) 2024-05-14 09:22:32 -04:00
Thomas Rittson 16971be52d
Fix restricted access view not loading for providers (#9165) 2024-05-14 09:02:26 +10:00
Thomas Rittson a4cc7a3ec3
[AC-2487] [AC-2486] Changes to restricted access view (#9118)
* [AC-2487] Hide edit/view collection button in restricted access view

* [AC-2486] Update button icon and text in restricted access view
2024-05-14 08:41:03 +10:00
Thomas Rittson 8c5841a76a
[AC-2500] Collection row menus - adjust feature flagging (#9116) 2024-05-13 15:30:02 -07:00
Vincent Salucci 3900924250
[AC-2086] Update CanDelete with v1 flag logic (#9100)
* feat: update org domain object deleteAnyCollection with v1 flag logic, refs AC-2086

* feat: update canDelete method to handle v1 flag logic, refs AC-2086

* feat: update canDelete references to pass v1 flag, refs AC-2086

* feat: add provider check and modify owner/admin type checks, refs AC-2086

* fix: add permission to org instantiation for vault item stories, refs AC-2086
2024-05-13 16:13:27 -05:00
cyprain-okeke bf57a181eb
[AC-2570] Existing providers see new CB experience on Admin Console org Billing Subscription page (#9108)
* Fix the subscription page issue for existing providers

* Merge branch 'main' into ac-2570-existing-providers-see-new-cb-experience-on-admin-console-org-billing-subscription-page

* Fix pr comment on error if the user isn't a provider user

* Resolve the pr comment on error for non provider user

* Remove unused property
2024-05-13 22:00:38 +01:00
Jared Snider 473c5311fa
Auth/PM-5501 - VaultTimeoutSettingsService State Provider Migration (#8604)
* PM-5501 - VaultTimeoutSettingsSvc - refactor var names in getVaultTimeoutAction

* PM-5501 - Add state definitions and key definitions + test deserialization of key defs.

* PM-5501 - Add state provider dep to VaultTimeoutSettingsSvc

* PM-5501 - Refactor getVaultTimeout

* PM-5501 - VaultTimeoutSettingsService - Build getMaxVaultTimeoutPolicyByUserId helper

* PM-5501 - (1) Update state definitions (2) convert KeyDefs to UserKeyDefs (2) Remove everBeenUnlocked as we won't need it

* PM-5501 - VaultTimeoutSettingsSvc - POC for getVaultTimeoutActionByUserId$ method + new private determineVaultTimeoutAction helper.

* PM-5501 - VaultTimeoutSettingsSvc - build set and observable get methods for vault timeout settings

* PM-5501 - Update web references to use new vault timeout setting service methods

* PM-5501 - VaultTimeoutSettingsSvc - write up abstraction js docs

* PM-5501 - VaultTimeoutSettingsSvc abstraction - finish tweaks

* PM-5501 - VaultTimeoutSettingsSvc - add catchError blocks to observables to protect outer observables and prevent cancellation in case of error.

* PM-5501 - Remove vault timeout settings from state service implementation.

* PM-5501 - VaultTimeoutSettingsServiceStateProviderMigrator first draft

* PM-5501 - WIP - replace some state service calls with calls to vault timeout settings svc.

* PM-5501 - Replace state service calls in login strategies to get vault timeout settings data with VaultTimeoutSettingsService calls.

* PM-5501 - Fix login strategy tests

* PM-5501 - Update login strategy tests to pass

* PM-5501 - CryptoSvc - share VaultTimeout user key def to allow crypto svc access to the vault timeout without creating a circular dep.

* PM-5501 - Fix dependency injections.

* PM-5501 - ApiSvc - replace state svc with vault timeout settings svc.

* PM-5501 - VaultTimeoutSettingsServiceStateProviderMigrator more cleanup

* PM-5501 - Test VaultTimeoutSettingsServiceStateProviderMigrator

* PM-5501 - VaultTimeoutSettingsSvc tests updated

* PM-5501 - Update all setVaultTimeoutOptions references

* PM-5501 - VaultTimeoutSettingsSvc - Update setVaultTimeoutOptions to remove unnecessary logic and clean up clearTokens condition.

* PM-5501 - Fix vault timeout service tests

* PM-5501 - Update VaultTimeoutSettings state tests to pass

* PM-5501 - Desktop - system svc - fix build by replacing use of removed method.

* PM-5501 - Fix CLI by properly configuring super class deps in NodeApiService

* PM-5501 - Actually finish getitng deps fixed to get CLI to build

* PM-5501 - VaultTimeoutSettingsSvc.determineVaultTimeoutAction - pass userId to getAvailableVaultTimeoutActions to prevent hang waiting for an active user.

* PM-5501 - VaultTimeoutSettingSvc test - enhance getVaultTimeoutActionByUserId$ to also test PIN scenarios as an unlock method

* PM-5501 - bump migration version

* PM-5501 - Refactor migration to ensure the migration persists null vault timeout values.

* PM-5501 - Bump migration version

* PM-5501 - Fix web build issues introduced by merging main.

* PM-5501 - Bump migration version

* PM-5501 - PreferencesComponent - revert dep change from InternalPolicyService to standard PolicyService abstraction

* PM-5501 - Address all PR feedback from Jake

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

* PM-5501 - VaultTimeoutSettingsSvc tests - add tests for setVaultTimeoutOptions

* PM-5501 - VaultTimeoutSettingsSvc - setVaultTimeoutOptions - Update tests to use platform's desired syntax.

* PM-5501 - Fix tests

* PM-5501 - Create new VaultTimeout type

* PM-5501 - Create new DEFAULT_VAULT_TIMEOUT to allow each client to inject their default timeout into the VaultTimeoutSettingService

* PM-5501 - Migrate client default vault timeout to new injection token

* PM-5501 - Update VaultTimeoutSettingsSvc to use VaultTimeout type and apply default vault timeout if it is null.

* PM-5501 - Update vaultTimeout: number to be vaultTimeout: VaultTimeout everywhere I could find it.

* PM-5501 - More changes based on changing vaultTimeout from number to VaultTimeout type.

* PM-5501 - VaultTimeoutSvc - Update shouldLock logic which previously checked for null (never) or any negative values (any strings except never) with a simple string type check.

* PM-5501 - More cleanup of vaultTimeout type change - replacing null checks with "never" checks

* PM-5501 - VaultTimeoutSettingsSvc - refactor determineVaultTimeout to properly treat string and numeric vault timeouts.

* PM-5501 - Update vault timeout settings service tests to reflect new VaultTimeout type.

* PM-5501 - VaultTimeoutSettingsService - add more test cases for getVaultTimeoutByUserId

* PM-5501 - (1) Remove "immediately" as 0 is numerically meaningful and can be used with Math.min (2) Add VaultTimeoutOption interface for use in all places we show the user a list of vault timeout options.

* PM-5501 - VaultTimeoutSettingSvc - update tests to use 0 as immediately.

* PM-5501 - VaultTimeoutInputComp - Add new types and update applyVaultTimeoutPolicy logic appropriately.

* PM-5501 - Add new types to all preferences and setting components across clients.

* PM-5501 - Fix bug on web where navigating to the preferences page throws an error b/c the validatorChange function isn't defined.

* PM-5501 - WIP on updating vault timeout setting migration and rollback + testing it.

* PM-5501 - Update VaultTimeoutSettingsSvc state provider migration and tests to map existing possible values into new VaultTImeout type.

* PM-5501 - Fix vault timeout settings state tests by changing number to new VaultTimeout type.

* PM-5501 - Fix crypto svc auto key refresh test to use "never" instead of null.

* PM-5501 - Add clarifying comment to vaulttimeout type

* PM-5501 - Desktop app comp - replace systemTimeoutOptions with vault timeout type.

* PM-5501 - Update vault timeout service tests to use VaultTimeout type.

* PM-5501 - VaultTimeoutSettingsSvc - (1) Fix bug where vault timeout action didn't have a default like it did before (2) Fix bug in userHasMasterPassword where it would incorrectly return the active user stream for a given user id as a fallback. There is no guarantee the given user would match the active user so the paths are mutually exclusive.

* PM-5501 - Login Strategy fix - Move retrieval of vault timeout settings and setting of the tokens until after account init and user decryption options set as those opts are needed to properly determine the user's available vault timeout actions.

* PM-5501 - Fix vault timeout settings svc tests

* PM-5501 - VaultTimeoutSettingSvc - move default logic to determine methods + refactor default vault timeout action to properly default to lock in scenarios the user has lock available.

* Update libs/angular/src/components/settings/vault-timeout-input.component.ts

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

* PM-5501 - Per PR feedback, cleanup commented out vault timeout options

* PM-5501 - Fix vault timeout input comp lint issues

* PM-5501 - Per PR feedback from Cesar, update VaultTimeout type to use const so we can avoid any magic string usage. Awesome.

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

* PM-5501 - CLI - use "never" as default vault timeout instead of null.

* PM-5501 - Fix broken tests

* PM-5501 - Bump migration version

* PM-5501 - Fix build errors after merging main.

* PM-5501 - Update mockMigrationHelper to pass along client type so tests will respect it.

* PM-5501 - Update VaultTimeoutSettingsServiceStateProviderMigrator and tests to use new CLI client type to convert undefined values to never so that CLI users don't lose their session upon running this migration.

* PM-5501 - Bump migration version

* PM-5501 - Fix migration tests to use new authenticated user format

* PM-5501 Update rollback tests

* PM-5501 - Adjust migration based on feedback.

* PM-5501 - Per Jake's find, fix missed -2

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

* PM-5501 - Add user id to needsStorageReseed.

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

* PM-5501 - Per PR feedback, setVaultTimeoutOptions shouldn't accept null for vault timeout anymore.

* PM-5501 - Per PR feedback, add null checks for set methods for setting vault timeout or vault timeout action.

* PM-5501 - Per PR feedback, add more context as to why we need vault timeout settings to persist after logout.

* PM-5501 - Per PR feedback, fix userHasMasterPassword

* PM-5501 - VaultTimeoutSettingsService - fix userHasMasterPassword check by checking for null decryption options.

* PM-5501 - Remove state service from vault timeout settings service (WOOO)

* PM-5501 - Bump migration version

* PM-5501 - Account Security comp - refactor to consider ease of debugging.

* PM-5501 - (1) Add checks for null vault timeout and vault timeout actions (2) Add tests for new scenarios.

* PM-5501 - VaultTimeoutSettingsSvc - setVaultTimeoutOptions - fix bug where nullish check would throw incorrectly if immediately (0) was picked as the timeout.

* PM-5501 - Per PR feedback, clean up remaining token service methods which accept null for timeout and add tests. .

* PM-5501 - Fix nit

---------

Co-authored-by: Jake Fink <jfink@bitwarden.com>
Co-authored-by: Cesar Gonzalez <cesar.a.gonzalezcs@gmail.com>
2024-05-13 15:56:04 -04:00
Conner Turnbull 1a329638e0
Resolved issue where non-provider user couldn't access subscription page of managed organization (#9137) 2024-05-13 12:17:36 -04:00
✨ Audrey ✨ 5092151b54
add i18n messages used by forwarders (#9158) 2024-05-13 12:11:15 -04:00
Merissa Weinstein 7ea786e662
[PM-7998] update chrome extension link in the vault onboarding module (#9087)
* vault-onboarding: update chrome extension link

* update spec
2024-05-13 10:20:57 -05:00
Thomas Rittson a852493211
Fix build error (#9150) 2024-05-13 10:22:01 -04:00
github-actions[bot] 611304a921
Autosync the updated translations (#9112)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-13 12:31:08 +00:00
Rui Tomé a141d06c00
[AC-2484] Fix bug where Custom Users with "Delete any collection" permission incorrectly see "Can Edit" permission for Unassigned Collection (#8858)
* [AC-2484] Fix bug where Custom Users with "Delete any collection" permission incorrectly see "Can Edit" permission for Unassigned Collection

* [AC-2484] Undo change on permission tooltip permission check

* [AC-2484] Fix permission text for unassigned collection
2024-05-11 14:54:12 +01:00
Thomas Rittson 8e97c1c8e4
[AC-2500] Update inline menu for collections based on collection permissions (#9080)
* Add view collection options to collection row menus

* Prevent DeleteAnyCollection custom users from viewing collections
2024-05-10 10:50:34 +10:00
Will Martin 9eef1f0953
fix merge error introduced in PM-5017 (#9102) 2024-05-09 13:47:05 -04:00
Todd Martin a89e148804
[PM-7029] Remove key-rotation-feature-flag (#8816)
* Removed key rotation feature flag.

* Fixed tests

* Removed unused dependency.

* Remove KeyRotationImprovements from default const
2024-05-09 13:24:11 -04:00
KiruthigaManivannan ff3b6f52ee
PM-5017 Migrate Organization Plans component (#8448)
* PM-5017 Migrated Organization plans component

* PM-5017 Addressed all the review comments

* PM-5017 Missed a minor change

---------

Co-authored-by: vinith-kovan <156108204+vinith-kovan@users.noreply.github.com>
2024-05-09 21:11:17 +05:30
vinith-kovan 0c2e8c15dc
[PM 5012] migrate adjust subscription component (#8239)
* adjust subscription component migration

* adjust subscription component migration

* adjust subscription component migration
2024-05-09 21:01:00 +05:30
vinith-kovan 30ef66139e
[PM 5007] migrate premium component (#8387)
* premium component migration

* premium component migration

* premium component migration

* premium component migration
2024-05-09 20:46:43 +05:30
KiruthigaManivannan 1180c60e91
Pm 7843 two factor verification is empty on organization duo 2 fa (#9086)
* PM-7843 Two Factor Verification is Empty on Organization duo 2fa

* PM-7843 Addressed review comments

* PM-7843 Bug fixed
2024-05-09 11:12:45 -04:00
Alex Morask 59c9606df3
Prevent calls to Billing Status endpoint when FF is off (#9032) 2024-05-08 15:38:56 -04:00
rr-bw a42de41587
[PM-5363] PinService State Providers (#8244)
* move pinKeyEncryptedUserKey

* move pinKeyEncryptedUserKeyEphemeral

* remove comments, move docs

* cleanup

* use UserKeyDefinition

* refactor methods

* add migration

* fix browser dependency

* add tests for migration

* rename to pinService

* move state to PinService

* add PinService dep to CryptoService

* move protectedPin to state provider

* update service deps

* renaming

* move decryptUserKeyWithPin to pinService

* update service injection

* move more methods our of crypto service

* remove CryptoService dep from PinService and update service injection

* remove cryptoService reference

* add method to FakeMasterPasswordService

* fix circular dependency

* fix desktop service injection

* update browser dependencies

* add protectedPin to migrations

* move storePinKey to pinService

* update and clarify documentation

* more jsdoc updates

* update import paths

* refactor isPinLockSet method

* update state definitions

* initialize service before injecting into other services

* initialize service before injecting into other services (bw.ts)

* update clearOn and do additional cleanup

* clarify docs and naming

* assign abstract & private methods, add clarity to decryptAndMigrateOldPinKeyEncryptedMasterKey() method

* derived state (attempt)

* fix typos

* use accountService to get active user email

* use constant userId

* add derived state

* add get and clear for oldPinKeyEncryptedMasterKey

* require userId

* move pinProtected

* add clear methods

* remove pinProtected from account.ts and replace methods

* add methods to create and store pinKeyEncryptedUserKey

* add pinProtected/oldPinKeyEncrypterMasterKey to migration

* update migration tests

* update migration rollback tests

* update to systemService and decryptAndMigrate... method

* remove old test

* increase length of state definition name to meet test requirements

* rename 'TRANSIENT' to 'EPHEMERAL' for consistency

* fix tests for login strategies, vault-export, and fake MP service

* more updates to login-strategy tests

* write new tests for core pinKeyEncrypterUserKey methods and isPinSet

* write new tests for pinProtected and oldPinKeyEncryptedMasterKey methods

* minor test reformatting

* update test for decryptUserKeyWithPin()

* fix bug with oldPinKeyEncryptedMasterKey

* fix tests for vault-timeout-settings.service

* fix bitwarden-password-protected-importer test

* fix login strategy tests and auth-request.service test

* update pinService tests

* fix crypto service tests

* add jsdoc

* fix test file import

* update jsdocs for decryptAndMigrateOldPinKeyEncryptedMasterKey()

* update error messages and jsdocs

* add null checks, move userId retrievals

* update migration tests

* update stateService calls to require userId

* update test for decryptUserKeyWithPin()

* update oldPinKeyEncryptedMasterKey migration tests

* more test updates

* fix factory import

* update tests for isPinSet() and createProtectedPin()

* add test for makePinKey()

* add test for createPinKeyEncryptedUserKey()

* add tests for getPinLockType()

* consolidate userId verification tests

* add tests for storePinKeyEncryptedUserKey()

* fix service dep

* get email based on userId

* use MasterPasswordService instead of internal

* rename protectedPin to userKeyEncryptedPin

* rename to pinKeyEncryptedUserKeyPersistent

* update method params

* fix CryptoService tests

* jsdoc update

* use EncString for userKeyEncryptedPin

* remove comment

* use cryptoFunctionService.compareFast()

* update tests

* cleanup, remove comments

* resolve merge conflict

* fix DI of MasterPasswordService

* more DI fixes
2024-05-08 11:34:47 -07:00
Timshel 350ad890de
Check MasterPassword in web app during change (#8293) 2024-05-08 09:24:18 -07:00
Shane Melton 3a71322510
[AC-1707] Restrict provider access to items (#8265)
* [AC-1707] Add feature flag

* [AC-1707] Prevent loading ciphers for provider users in the org vault when the feature flag is enabled

* [AC-1707] Ensure new canEditAllCiphers logic only applies to organizations that have FC enabled

* [AC-1707] Update editAllCiphers helper to check for restrictProviderAccess feature flag

* [AC-1707] Remove un-used vaultFilterComponent reference

* [AC-1707] Hide vault filter for providers

* [AC-1707] Add search to vault header for provider users

* [AC-1707] Hide New Item button for Providers when restrict provider access feature flag is enabled

* [AC-1707] Remove leftover debug statement

* [AC-1707] Update canEditAllCiphers references to consider the restrictProviderAccessFlag

* [AC-1707] Fix collections component changes from main

* [AC-1707] Fix some feature flag issues from merge with main

* [AC-1707] Avoid 'readonly' collection dialog for providers

* [AC-1707] Fix broken Browser component

* [AC-1707] Fix broken Desktop component

* [AC-1707] Add restrict provider flag to add access badge logic
2024-05-07 12:35:28 -07:00
Matt Gibson de0852431a
[PM-7917] Remove session sync (#9024)
* Remove session sync and MemoryStorageService

* Fix merge
2024-05-07 13:25:49 -04:00
Shane Melton c241aba025
[AC-2555] Cipher collections dialog merge fixes (#9036)
* [AC-2555] Fix missing feature flags in CollectionsComponent

* [AC-2555] Do not filter collections when opening the cipher collections dialog in the org vault
2024-05-07 10:00:47 -07:00
Jason Ng be51f1934a
[AC-1121] Collections Add Access filter and badge (#8404)
* added bit toggle group for add access filter to AC collections
2024-05-07 11:02:50 -04:00
Anas c051412d41
fix(8702): refreshing organization report page does not display the refreshed page (#8713) 2024-05-07 13:21:19 +10:00
rr-bw 0fb352d8ed
[PM-7343] AnonLayoutComponent Implementation Groundwork (#8585)
* test implementation

* move files

* adjust import and sample router comments

* add storybook docs to anon-layout

* rename to AnonLayoutWrapperComponent

* update storybook docs

* remove references to CL and replace with 'Auth-owned'

* move AnonLayoutWrapperComponent to libs

* add pageTitle input

* add subTitle input

* translate page title/subtitle, and refactor how icon is added

* update tailwind.config and component styles

* adjust spacing between primary and secondary content

* move switch statement to wrapper

* move icon to router file

* update storybook documentation

* fix storybook text color in normal code blocks

* remove sample route

* move wrapper component back to web

* remove sample route

* update storybook docs
2024-05-06 18:34:40 -07:00
Bitwarden DevOps af6a63c10b
Bumped browser,cli,desktop,web version to (#9064) 2024-05-06 22:37:46 +00:00
cyprain-okeke 2b9c4c6e34
Rename the isProviderManaged variable (#9061) 2024-05-06 21:38:53 +01:00
cyprain-okeke 425c7914b0
[AC-2558] Provider Admin still sees manage billing options - not the provided image (#9048)
* Fix the issue of provider admin not seeing the image

* Resolve the  case and ternary operator comment
2024-05-06 20:21:11 +01:00
github-actions[bot] bca8e0d030
Autosync the updated translations (#9053)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-06 14:51:25 +00:00
cyprain-okeke 4877f08ef7
Change cancel button to close and add period to end (#9047) 2024-05-06 00:41:15 +01:00
KiruthigaManivannan 77d854b5c1
PM-7843 Two Factor Verification is Empty on Organization duo 2fa (#9008)
* PM-7843 Two Factor Verification is Empty on Organization duo 2fa

* PM-7843 Addressed review comments
2024-05-05 14:54:22 -04:00
Justin Baur e4ef7d362e
[PM-7838] [PM-7864] Ensure AuthStatus Changes Before Exiting (#9018)
* Ensure AuthStatus Changes Before Exiting

* Do Not Display Account Without Name Or Email

* Fix Environment Selectors

* Add AccountService.clean to Web
2024-05-03 16:43:42 -04:00
Justin Baur b46766affd
[PM-7907] No more optional `privateKey` (#9029)
* Update Emergency Access To Get Their Own Key

* Migrate Organization Keys To Get Their Own Key

* Remove Optional Parameters

* Update Abstraction Parameter Name to Match Implementation

* Add @throws Doc
2024-05-03 14:30:45 -04:00
Anas ed236df24b
fix(8560): refreshing reports pages displays empty pages (#8700) 2024-05-03 14:44:57 +01:00
github-actions[bot] 1f6eec4dd5
Autosync the updated translations (#9028)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2024-05-03 07:22:44 +00:00
Thomas Rittson 6db90dc141
Use refCount: true for shareReplay (#9005) 2024-05-02 14:48:57 -05:00