* Implement dynamic cipher creation permissions in vault header and new cipher menu components
* Enhance new cipher menu button behavior and accessibility. Implement dynamic button label based on creation permissions, allowing direct collection creation when applicable. Update button trigger logic to improve user experience.
* Update apps/web/src/app/vault/individual-vault/vault-header/vault-header.component.ts
Co-authored-by: SmithThe4th <gsmith@bitwarden.com>
* Add canCreateCipher getter for improved readability
---------
Co-authored-by: SmithThe4th <gsmith@bitwarden.com>
* fix(autofill): type throttle to preserve handler this/args and return void
* fix(autofill): strict TS and defaults for inline menu list, throttle typing, TOTP interval
* update snapshots
* swap mouse event for event
* prevent default does nothing on event
* [PM-31685] Removing email hashes
* [PM-31685] fixing tests, which are now passing
* [PM-31685] removing anon access emails field and reusing emails field
* [PM-31685] fixing missed tests
* [PM-31685] fixing missed tests
* [PM-31685] code review changes
* [PM-31685] do not encrypt emails by use of domain functionality
* [PM-31685] test fixes
* Enhance policy edit dialogs by updating dialog size to large for improved layout and switching to openDrawer method for better user experience.
* Enhance policy edit dialogs by adding policy status badges to indicate if a policy is enabled, improving user visibility and experience.
* Update dialog component styles to enhance drawer behavior by changing height to full screen and adding sticky footer for improved layout and user experience.
* Refactor policy display layout by wrapping buttons and badges in a flex container for improved alignment and spacing.
* Refactor password policy forms in admin console for improved layout
- Simplified the structure of form fields in `master-password.component.html` and `password-generator.component.html` by removing unnecessary div wrappers.
- Updated the label for the password type policy override in `messages.json` for clarity.
* Update dialog size in policy edit component for consistency
- Changed the dialog size from 'large' to 'default' in `policy-edit-dialog.component.html` to align with design standards.
* refactor(dialog): update dialog component styles for drawer layout
- Adjusted height class for drawer dialogs from 'tw-h-screen' to 'tw-h-full' for better layout management.
- Removed sticky positioning for footer in drawer mode to improve visual consistency.
* refactor(dialog): enhance form layout for policy edit dialogs
- Added classes for full height and flex column layout to the form elements in policy edit dialogs for improved visual consistency and usability.
* move existing prompting into separate service for the web vault
* add unit tests for web vault prompt service
* add provider
* remove `autoConfirmDialogRef`
* rename auto confirm dialog
* Refactor selection logic in VaultItemsComponent to ensure bulk selection matches visual order. Added getSortedEditableItems method for sorting based on current table configuration, enhancing user experience during selection.
* Refactor sorting logic in VaultItemsComponent to clarify collection prioritization. Updated comments to indicate that collection comparison is direction-independent, enhancing code readability and maintainability.
* Remove inividual user key states and migrate to account cryptographic state
* Fix browser
* Fix tests
* Clean up migration
* Remove key-pair creation from login strategy
* Add clearing for the account cryptographic state
* Add migration
* Cleanup
* Fix linting
* Add validation for organization user status in CLI Confirm command
- Implemented a new method to validate the status of an organization user before confirmation.
- Added checks for various user states: invited, confirmed, revoked, and accepted.
- Enhanced error handling to provide clearer feedback based on user status.
* Refactor validation logic in ConfirmCommand to remove unnecessary user ID check
- Removed the check for null userId in the validateOrganizationUserStatus method.
- Simplified the validation process for organization user status before confirmation.
* Add unit tests for ConfirmCommand in CLI
- Created a new test suite for the ConfirmCommand to validate its functionality.
- Implemented tests for various scenarios including bad requests, user status validations, and successful confirmations.
- Enhanced error handling tests to ensure proper responses for missing organization keys and API failures.
Centralize edit permission checks in CipherAuthorizationService instead of using the disableForm parameter passed to VaultItemDialogComponent. This refactoring improves consistency with how delete and restore permissions are handled, establishes a single source of truth for authorization logic, and simplifies caller components.
This change also fixes the bug in ticket, which allows Users to properly edit Ciphers inside of the various Admin Console report types.
Adds a "Select all" checkbox to the table in the Access Intelligence applications tab. This allows users to quickly select or deselect all applications currently showing in the table for marking as critical apps.
* Enhance layout responsiveness in vault components by adding flex properties to improve structure and ensure proper height management.
* Refactor vault component layout to rid of my changes
* Update apps/web/src/app/vault/individual-vault/vault.component.html
Co-authored-by: Jackson Engstrom <jengstrom@bitwarden.com>
---------
Co-authored-by: Jackson Engstrom <jengstrom@bitwarden.com>
* Fixing some tech debt before implementing actual fix of implementation
* Adding new components to handle the different routes for the integrations page to make use of bit-tab-nav-bar to follow background-fill UI spec
* Implement organization integrations page with routing and state management
- Added routing for organization integrations including device management, event management, single sign-on, and user provisioning.
- Created OrganizationIntegrationsState to manage integrations and organization data.
- Introduced OrganizationIntegrationsResolver for preloading organization and integration data.
- Updated components to utilize the new state management and resolver.
- Refactored integration routes to follow updated naming conventions.
* Refactor organization integrations components to use signals and observables; enhance async handling in templates and add debug logging
* Enhance organization integrations module with routing updates and state management improvements
- Added OrganizationIntegrationsState for better state management.
- Updated routing to redirect to single sign-on by default.
- Integrated OrganizationIntegrationsResolver for preloading data.
- Refactored components to utilize new state management and improved async handling.
* Refactor SingleSignOnComponent to remove OnInit lifecycle and debug logging
- Simplified SingleSignOnComponent by removing the OnInit implementation.
- Eliminated debug logging for integrations in ngOnInit.
- Cleaned up imports for better readability.
* Refactor WebHeaderComponent to simplify background handling
- Removed the useAltBackground input signal from WebHeaderComponent.
- Updated the HTML template to conditionally apply styles based solely on the child element count of the tabs container.
* Refactor organization integrations components for improved readability and performance
- Updated HTML templates to remove optional chaining for organization properties.
- Removed unnecessary debug logging and comments in the OrganizationIntegrationsResolver.
- Simplified DeviceManagementComponent by eliminating the OnInit lifecycle hook.
* Refactor organization integrations components to use direct state properties
- Updated components to access organization and integrations directly from state instead of using observables.
- Simplified HTML templates by removing async pipes and using direct function calls for better readability.
- Ensured consistent naming conventions for organization and integrations variables across components.
* Enhance WebHeaderComponent by adding bitTypography attribute to the title element for improved styling consistency
* Refactor organization state to use 'undefined' instead of 'null' for organization signal and remove OnInit lifecycle hook from UserProvisioningComponent for cleaner code.
* Refactor EventManagementComponent to remove OnInit lifecycle hook for cleaner code and improved readability.
* Update organization state to set organization value to 'undefined' when null is provided, enhancing state management consistency.
* Update WebHeaderComponent to allow optional title and icon inputs, enhancing flexibility in header configuration.
* Update WebHeaderComponent to allow account property to be nullable, improving type safety and handling of user data.
* follow existing popout guard pattern to force popout on firefox when filepicker is exposed
* move firefox guard to tools ownership & revert changes to auth owned file
* initial refactor to consolidate logic using file-picker-popout.guard
* remove safari from guard & disable forced popout in vault import
* enforce popout on Safari with test coverage
* use userAgent and consistent detection for platform detection
* refactor guard tests involving routes
* replace imports lost during merge
* remove text sends from popout requirement and update tests
* add tooltip and screen-reader text describing popout behavior
* [deps] Vault: Update @koa/router to v15
* update router imports from `@koa/router`
* remove `@types/koa__router` no longer needed with update to `@koa/router`
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Nick Krantz <125900171+nick-livefront@users.noreply.github.com>
Co-authored-by: Nick Krantz <nick@livefront.com>
* dynamically changes the allItems title from 'All items' to 'Search results' based on search text length
* updates logic and copy for changing the allItems header text
* changes how ciphers are displayed when a user has a search term and/or filters applied
* Update apps/browser/src/vault/popup/components/vault-v2/vault-v2.component.html
Co-authored-by: Nick Krantz <125900171+nick-livefront@users.noreply.github.com>
* refactors tests
---------
Co-authored-by: Nick Krantz <125900171+nick-livefront@users.noreply.github.com>
* update button api to accept icons
* use template outlet in button
* add link component
* create link component to handle anchors and buttons
* remove unnecessary let variables
* fix link focus state styling
* update link underline style
* fix broken skip link focus
* add focus method to link component
* fix typo
* fix off center loading state
* move flex styles to template to fix some minor style overrides
* remove unnecessary variables
* fix interaction states and add styles for test class to work properly
* refactor classes and make variable sreadonly
* fix classes not being applied correctly
* fix bad merge conflict resolution
* simplified button template