* Move/replace submit and userVerification logic from web into the BaseExportComponent
Add "@bitwarden/auth" as dependency to the vault-export-ui package
New submit logic also checks for password-encrypted exports which will be need for future UI updates on browser and desktop
* Create export-desktop component using shared recipe
Create new export component that uses the shared export.component from @bitwarden/vault-export-ui
* Update imports within AppModule
Remove old ExportComponent
Remove ExportScopeCalloutComponent as it's part of the BaseExportComponent
* Open new component when clicking on Export Vault menu item
* Add missing entries to messages.json
* Delete old export.component
* Remove duplicate verifyUser-method
* Change placeholder example
---------
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
* 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>
Move export.component
Export from @bitwarden/vault-export-ui
Fix imports on browser, desktop and web
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
* Enable usage of the bit-callout within desktop
Adding this should be temporary, with the vision being: All components are standalone and they'd depend/import the CalloutModule themselves if they need it
* Replace vaultTimeoutPolicy callout in settings
* Replace OwnershipPolicy callout in add-edit cipher
* Replace vaultExportDisabled policy callout in export
* Replace generator policy callout in generator
* Replace policy callouts in add/edit Sends
---------
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
* PM-6780 - Create vault-export-ui package
* Migrate export-scope-callout to CL
- Move export-scope-callout.component to vault-export-UI
- Use bit-callout instead of app-callout
- Make component standalone
- Remove from jslib.module
- Prefix selector with team-name
- Export it from vault-export-ui
* Update usage of tools-export-scope-callout for desktop
* Update usage of tools-export-scope-callout for web
* Update usage of tools-export-scope-callout for browser
* Change package description
---------
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
* Move libs/exporter into libs/tools/*
Migrating all files from libs/exporter over to libs/tools/export/vault-export/vault-export-core
Rename package to vault-export-core
Fix all file paths
* Update libs and tsconfig imports
* Fix client imports
* Fix eslint, jest and package-lock.json
* Update CODEOWNERS
* Add README.md to whitelist-capital-letters
* Fix vault-export-service tests not running
* Update libs/tools/export/vault-export/README.md
Co-authored-by: Vincent Salucci <26154748+vincentsalucci@users.noreply.github.com>
* Fix types imports
* Export types from vault-export-core
* Fixed content of README
---------
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by: Vincent Salucci <26154748+vincentsalucci@users.noreply.github.com>
* Use bitTypography for page title
* Replaced app-callout with bit-callout
* Replace button with bit-button
* Update radio buttons to use CL
* Use searchable select for fileFormat dropdown
* Remove unneeded divs (old styling)
* pm-1826 remove eslint-disable tailwindcss/no-custom-classname
* Removed for-attribute from bit-labels
* Removed bitInput from bit-selects
* Removed name-attribute from bit-selects
* Make format a required field
* Removed unused dependency on cryptoService
* Remove unused dependency on BroadcasterService
* Removed dependency on window
* Moved organizationId into BaseExportComponent
* Add vaultSelector
Add organizationService as new dependency
Retrieve organizations a user has access to
Add vaultSelector dropdown
Add `export from` label
Add exportFromHint
* Removed hint as discussed by product&design
* Add function to check for import/export permission
* Export callout should listen to changes
Even though the organizationId was changed, the Input did not trigger changing the scope
* Reading FlexibleCollections feature flag to show the vault-selector on export (#7196)
---------
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by: aj-rosado <109146700+aj-rosado@users.noreply.github.com>
* Rename service-factory folder
* Move cryptographic service factories
* Move crypto models
* Move crypto services
* Move domain base class
* Platform code owners
* Move desktop log services
* Move log files
* Establish component library ownership
* Move background listeners
* Move background background
* Move localization to Platform
* Move browser alarms to Platform
* Move browser state to Platform
* Move CLI state to Platform
* Move Desktop native concerns to Platform
* Move flag and misc to Platform
* Lint fixes
* Move electron state to platform
* Move web state to Platform
* Move lib state to Platform
* Fix broken tests
* Rename interface to idiomatic TS
* `npm run prettier` 🤖
* Resolve review feedback
* Set platform as owners of web core and shared
* Expand moved services
* Fix test types
---------
Co-authored-by: Hinton <hinton@users.noreply.github.com>
This PR introduces a generic `DialogService` which can be used by all the clients. This allows us to decouple dialogs from the `PlatformUtilsHelper`.
The `DialogService` provides a new method, `openSimpleDialog` which is the new interface for that type of dialogs.
This gives us 3 different implementations:
- Web: DialogService modern dialogs
- Browser: SweetAlert
- Desktop: Native electron based
* Create and register new libs/exporter
Create package.json
Create tsconfig
Create jest.config
Extend shared and root tsconfig and jest.configs
Register with eslint
* Migrate exportService to libs/exporter
Move exportService (abstraction and impl) into libs/exporter
Refactored exportService to be split into vault-export and event-export
Created barrel-files for both exports
Moved export.service.spec.ts into vault-export
Created an export-helper, which helps build the filename (extract method refactor from ExportService)
* Move components in libs/angular into tools-subfolder
Moved components
Updated imports in jslib-services.module and jslib.module
* Register libs/exporter with browser and fix imports
Move export.component into tools-subfolder
* Register libs/exporter with cli and fix imports
Move export.command into tools-subfolder
* Register libs/exporter with desktop and fix imports
Move export.component into tools-subfolder
* Move export models to libs/exporter
* Update web imports
* Update package-lock.json
* Move export models back as it would create circular dependency
Reponse models in common rely on export models which are in libs/exporter, which relies on common
* Fix up web for event-export
* Update CODEOWNERS
* Add export-models to team-tools-dev
* Simplify domain import
* Moving EventExport into web