* add password/username generator strings to web app
* remove JSLibServicesModule from generator dependencies
* integrate username and password generators into browser extension
* integrate username and password generators into web app
* move Jslib order back
* remove margin from within the generator components
* add alternative background to web generator dialog
* remove unneeded margin from username generator
* remove disable margin from div
* Revert "remove unneeded margin from username generator"
This reverts commit ae3067e3f2.
* remove CSS to alter internal margins of the generator components
* [PM-12389] Cleanup attachment dialog UI bugs
* [PM-12389] Add formReady event to CipherForm
* [PM-12389] Use ngOnChanges for CipherView component initialization
* [PM-12389] Cleanup web specific services and components
* [PM-12389] Introduce combined Vault Item Dialog component
* [PM-12389] Use the new VaultItemDialog in the Individual Vault
* [PM-12389] Deprecate the AddEditV2 and View dialogs in Web
* [PM-12389] Fix failing test
* [PM-12389] Fix broken imports after move
* [PM-12389] Remove messages.json addition that is taken care of in another PR
* Add password dialog component.
* Properly direct to browser password history screen.
* Add padding to history items.
* Update test to correct password history route.
* Remove unneeded provider.
* Use relative path for SharedModule.
* simplify logic and fix some pattern-matching bugs
* add first pass at parsing combined expiry year and month from user input
* clean up code
* fix broken three-digit parsing case
* fix case where splitCombinedDateValues returns empty strings when the input is only a delimiter
* fix incorrect expectation of falsy negative integers
* clean up code
* split out logic from parseYearMonthExpiry
* move utils from vault to autofill
* [PM-281] Visual distinction required for login page links
* add bitLink to report links
* add bitLink to billing history
* [PM-281] Adding more references to bitLink and incorporating changes to aria labels for a variety of buttons
* Added editItemWithName to announce links within reports even better
---------
Co-authored-by: Vicki League <vleague@bitwarden.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
* [PM-11343] Add param to conditionally disable the edit button
* [PM-11343] Cleanup router navigation and move query param handling to callers of the View dialog
* [PM-11343] Fix failing test
* [PM-11343] Fix missing router after merge
* [PM-11343] Add null checks in case the dialog result is undefined (due to closing via the ESC key)
* [PM-11343] Add support to provide a list of collections to the cipher view component
* [PM-11343] Add collections as an optional view cipher dialog parameter
* [PM-11343] Update the org vault to provide collections when opening the View cipher dialog
* [PM-11343] Fix import
* [PM-11343] Use [replaceUrl] for cipher items to avoid needing double back button
* Add MessagingService to LoginCredentialView component.
* Add comments.
* Add WIP PremiumUpgradeService
* Simplify web PremiumUpgradeServices into one service.
* Relocate service files.
* Add browser version of PremiumUpgradePromptService.
* Cleanup debug comments.
* Run prettier.
* rework promptForPremium to take organization id and add test.
* Add test for browser
* Rework imports to fix linter errors.
* Add Shane's reworked WebVaultPremiumUpgradePromptService.
* replace icon in "new" button on admin-console
* replace icon in "new" button on secrets manager
* reduce flash of "new item" button by checking the availability of the organization
* Refactored the showDelete function to check if a user can manage a collection
Removed the can edit or manage cipher check from the show delete function
* Add check for AC vault to return true when user has admin access
* Check user is an admin or custom user with editAnyCollection
* Check user is an admin or custom user with editAnyCollection
- move organization-user files from libs/common/src/admin-console into libs/admin-console/src/common
- add barrel files and update imports to use barrel files
- rename OrganizationUserService to OrganizationUserApiService
- rename OrganizationUserServiceImplementation to DefaultOrganizationUserApiService
* updated cipher service to stop using the deprecated getUserKeyWithLegacySupport and use the version that requires a user id
* Added account service mock
* fixed cipher test
* Fixed test
* removed async from encryptCipher
* updated encryptSharedCipher to pass userId to the encrypt function
* Pass userId to getUserKeyWithLegacySupport on encryptSharedCipher
* pass in userid when setting masterKeyEncryptedUserKey
* Added activer usedId to new web refresh function
Upgrade storybook to version v8 which is a major upgrade. Storybook provides an
upgrade wizard which did most of the work.
- Ran npx storybook upgrade.
- Manually updated `remark-gfm` since the newer mdx requires v 4.
- Migrated all old stories still using `Story` to `StoryObj`.
* Add additional extension refresh menu behind feature flag.
* Open new cipher dialog with proper cipher type selected.
* Adjust onboarding copy and default to login cipher.
* Update "New item" button styles.
* Add test to ensure onboarding component always calls onAddCipher.emit with the login cipher type.
* Hide onboarding and new item changes behind feature flag
* Fix missing mock in test.
* Remove extensionRefreshEnabled$ and conditional styles from the "add new" button.
* Remove rounding class from menu "new" button.
Enables one of the recommended rules of @angular-eslint. Since this rule was fairly trivial to fix and has no QA effects it seemed reasonable to migrate all code.
* Added function to return cipherview observable and trigger the decryption process if the cipherviews$ observable returns empty
* Updated the vault component to use getCipherViews$ observable function
* converted vault banner to standalone component
* converted vault header to standalone component
* fixed unawaited promises
converted component to standalone component
* cleaned up vault module
* fixed imports
* refactored getCipherView$ observable
* refactored onVaultItemsEvent to switch case
* Refactored to use toast service instead of platform utils service for toast
* Added function to return cipherview observable and trigger the decryption process if the cipherviews$ observable returns empty
* Updated the vault component to use getCipherViews$ observable function
* converted vault banner to standalone component
* converted vault header to standalone component
* fixed unawaited promises
converted component to standalone component
* cleaned up vault module
* fixed imports
* refactored getCipherView$ observable
* refactored onVaultItemsEvent to switch case
* Refactored to use toast service instead of platform utils service for toast
* merged with main and fixed conflicts
* reordered standalone property
* converted components to standalone
* cleaned up ng module for org vault
* cleaned up vault module individual vault
* fixed conflicts
* Replaced deprecated toast service
* refactored to use switch case for org vault
* fixed comments and fixed failing tests
reverted to use getAllDecrypted
* initial add of assign collections component
* grab cipherId from query params
* add organization selection for moving a cipher
* add multi-select for collections
* add transfer of cipher to an organization
* temp: do not show assign collections while a cipher already has an organization
* account for initial collections for a cipher
* block assign-collections route with feature flag
* replace hardcoded string with i18n
* separate out async calls to switchMap to avoid async subscribe
* use local cipher rather than decrypting again
* use anchor for better semantics
* migrate form submission to bitSubmit directive
* swap to "assign" rather than "save"
* integrate with base AssignCollections component
* clean up messages file
* remove unneeded takeUntilDestroyed
* remove unneeded bitFormButton
* remove unused translations
* lint fix
* refactor assign-collections component to take in a button reference
- This allows consuming components to not have to worry about loading/disabled states
- The base AssignCollections component will change the submit button when supplied