* use zip to ensure both query changes and new items have been added
* query for the label directly rather than the associated one
there is only one label and the checkbox is wrapped in the label
* disable organization selector when only one org is selected
* break long org names in assign collections copy
- applicable more in the browser implementation
* add `title` to each select option so a mouse over presents the name
- more applicable to the browser extension where names can overflow
* truncate options that overflow a select
* set max width of form fields to 100%
* Define matchers to test promise fulfillment
These are useful for validating that promises depend on other events prior to fulfilling.
* Expose custom matchers to jest projects
Team-specific projects are not touched here to try and reduce review burden.
* Block browser local operations awaiting reseed
This should closes a narrow race condition resulting from storage operations during a reseed event.
* Import from barrel file
This might fix the failing test, but I'm not sure _why_
* Document helper methods
* Validate as few properties as possible per test
* Simplify expected value representation
* Allow waiting in promise matchers
* Specify resolution times in promise orchestration tests.
* Test behavior triggering multiple reseeds.
* Fix typo
* Avoid testing implementation details
* Clear reseed on startup
in case a previous process was aborted in the middle of a reseed.
* Correct formatting
* Move SendV2component into send-v2 subFolder
* Create SendFormContainer and related services
* Add initial SendFormComponent which uses the SendFormContainer
* Remove AdditionalOptionsSectionComponent which will be added with a future PR
* Add libs/tools/send to root tsconfig
* Register libs/tools/send/send-ui with root jest.config.js
* Register libs/tools/send/send-ui with root tailwind.config.js
* Fix service injection on DefaultSendFormService
---------
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
* Add shared duo component
* Fix duo import
* Fix wrong i18n service DI in duo desktop component
* Remove duo v2
* Add override to functions
* Remove web duo implementation
* Update apps/browser/src/auth/popup/two-factor-auth-duo.component.ts
Co-authored-by: Ike <137194738+ike-kottlowski@users.noreply.github.com>
* Update apps/desktop/src/auth/two-factor-auth-duo.component.ts
Co-authored-by: Ike <137194738+ike-kottlowski@users.noreply.github.com>
* Update libs/angular/src/auth/components/two-factor-auth/two-factor-auth-duo.component.ts
Co-authored-by: Ike <137194738+ike-kottlowski@users.noreply.github.com>
* Fix missing service on duo components
* Fix missing service on base duo auth component
* Fix constructor super calls in duo auth component
* Fix duo auth components incorrectly extending base class
---------
Co-authored-by: Ike <137194738+ike-kottlowski@users.noreply.github.com>
* [deps] Tools: Update electron to v31.2.1
* Update version in electrron-builder.json
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
* Added validation to only display organizations with managed collections on the export org selector
* using the decryptedCollection$ directly instead of creating a new observable from the encryptedCollections array
* PM-6198 - Majority of client work done; WIP on registration finish comp
* PM-6198 - Registration Finish - Add registerVerificationEmailClicked logic
* PM-6198 - RegistrationLinkExpired component; added translations on other clients just in case we use the component on other clients in the future.
* PM-6198 - Clean up comment
Collection management permissions can be set for a group or a specific
user. Currently the CLI only outputs group associations when it displays
collection configuration information. This can cause bugs when piping
commands together.
This commit ensures that `user` associations also get output. In all
cases this data was already available and just needed to be added to a
response model.
* 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
* Create browsers SendV2 component
* Add premium badge to new file send item dropdown
---------
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
* Implement multi-worker encryption service
* Fix feature flag being flipped and check for empty input earlier
* Add tests
* Small cleanup
* Remove restricted import
* Rename feature flag
* Refactor to BulkEncryptService
* Rename feature flag
* Fix cipher service spec
* Implement browser bulk encryption service
* Un-deprecate browserbulkencryptservice
* Load browser bulk encrypt service on feature flag asynchronously
* Fix bulk encryption service factories
* Deprecate BrowserMultithreadEncryptServiceImplementation
* Copy tests for browser-bulk-encrypt-service-implementation from browser-multithread-encrypt-service-implementation
* Make sure desktop uses non-bulk fallback during feature rollout
* Rename FallbackBulkEncryptService and fix service dependency issue
* Disable bulk encrypt service on mv3
* Change condition order to avoid expensive api call
* Set default hardware concurrency to 1 if not available
* Make getdecrypteditemfromworker private
* Fix cli build
* Add check for key being null