* remove strict types from `NewDeviceVerificationNotice`
- Add null default value for class properties
- Enforce that the userId is passed
- noticeState$ can return null
* remove strict types from `CopyCipherFieldService`
- refactor title to be a string rather than null
* remove strict types from `PasswordRepromptComponent`
- add guard to exit early on submit but also solves removing null/undefined from typing
* use bang to ensure required input
* remove strict types from `CopyCipherFieldDirective`
- add bang for required types
- add default values for null types
* add bang for constant variables in cipher form stories
* remove strict types from `DeleteAttachmentComponent`
- add bang for required types
- refactor title to be an empty string
* fix tests
* starting
* setup first page for new device verification notice
* update designs for first page. rename components and files
* added second page for new device verification notice
* update notice page one with bit radio buttons. routing logic. user email
* updated routing for new device verification notice to show before vault based on flags, and can navigate back to vault after submission
* fix translations. added remind me later link and nav to page 2
* sync the design for mobile and web
* update routes in desktop
* updated styles for desktop
* moved new device verification notice guard
* update types for new device notice page one
* add null check to page one
* types
* types for page one, page two, service, and guard
* types
* update component and guard for null check
* add navigation to two step login btn and account email btn
* remove empty file
* update fill of icons to support light & dark modes
* add question mark to email access verification copy
* remove unused map
* use links for navigation elements
- an empty href is needed so the links are keyboard accessible
* remove clip path from exclamation svg
- No noticeable difference in the end result
* inline email message into markup
---------
Co-authored-by: Nick Krantz <nick@livefront.com>
* Use typescript-strict-plugin to iteratively turn on strict
* Add strict testing to pipeline
Can be executed locally through either `npm run test:types` for full type checking including spec files, or `npx tsc-strict` for only tsconfig.json included files.
* turn on strict for scripts directory
* Use plugin for all tsconfigs in monorepo
vscode is capable of executing tsc with plugins, but uses the most relevant tsconfig to do so. If the plugin is not a part of that config, it is skipped and developers get no feedback of strict compile time issues. These updates remedy that at the cost of slightly more complex removal of the plugin when the time comes.
* remove plugin from configs that extend one that already has it
* Update workspace settings to honor strict plugin
* Apply strict-plugin to native message test runner
* Update vscode workspace to use root tsc version
* `./node_modules/.bin/update-strict-comments` 🤖
This is a one-time operation. All future files should adhere to strict type checking.
* Add fixme to `ts-strict-ignore` comments
* `update-strict-comments` 🤖
repeated for new merge files
* [PM-7683] Add fullAddressForCopy helper to identity.view
* [PM-7683] Introduce CopyCipherFieldService to the Vault library
- A new CopyCipherFieldService that can be used to copy a cipher's field to the user clipboard
- A new appCopyField directive to make it easy to copy a cipher's fields in templates
- Tests for the CopyCipherFieldService
* [PM-7683] Introduce item-copy-actions.component
* [PM-7683] Fix username value in copy cipher directive
* [PM-7683] Add title to View item link
* [PM-7683] Move disabled logic into own method
* update password reprompt to use the dialog CL
* Override showPasswordPrompt and submit method on web child classes from base classes to allow dialog work on web and modal on other clients
* Override showPasswordPrompt and submit method on web child classes from base classes to allow dialog work on web and modal on other clients
* Fixed lint issues
* Corrected comments
* Refactored passwored reprompt to use dialog service after changes to make the dialog service work on the desktop and browser
* Changed access modifier from protected to protected
* Refactored passwprd reprompt component to a stand alone component and fixed all references
* fix merge changes
* fix import aliases in password-reprompt.component.ts
* fix alias typo in browser tsconfig
* import from root vault alias
* revert tsconfig changes
* remove service abstraction and update imports
* remove component from imports
* Removed unneccesary show password toggle
* renamed selector to use vault prefix
* removed unnecessary data dismiss
* merged and fixed conflicts
* remove reintroduced file
* Added appAutoFocus to reprompt dialog
* delayed validation until submit happens
---------
Co-authored-by: William Martin <contact@willmartian.com>