Angular 6 changed the default to not preserve whitespaces. We've continued to opt into this pattern for backwards compatibility but we're experiencing issues with the new control flow syntax and would therefore like to switch and not preserve whitespace any longer.
* collect tailwind styles from the `libs/vault/*`
- Some unique styles were not showing in storybook
* initial add of carousel component
* initial add of carousel stories
* move carousel button to a standalone component for organization
* add key manager for carousel buttons
* add tab panel role to slide component
* make carousel slide focusable when it does not contain focusable elements
* add aria live to carousel slides
* add labels for carousel slide buttons
* emit slide change event
* move icons to carousel-icons folder
* add barrel file for carousel
* move protected properties
* remove underscore
* allow differing heights of carousel slides
* update interactive styles for the carousel icons
* allow for focus styled on carousel buttons
* fix tests
* fix imports
* add method to render each slide and get the height of the tallest slide
- This avoids consumers having to pass in a height.
- The height of the tallest slide is needed because it will stop the carousel from jumping around as the user scrolls.
* add comment to content property
* remove rem calculation
* Update Figma links
updated existing Figma links to point to the new file and added Figma links to components missing them
* Added last missing Figma links
Extract core functionality from `libs/angular` to allow teams to depend on `libs/ui-common` instead.
Moves the following functionality to `ui-common`.
- `I18nPipe`. `libs/angular` still has an old copy but `components` depends on the new variant from `ui-common`.
- `safeProvider`, `SafeProvider` and `SafeInjectionToken`. `libs/angular`re-exports these to avoid needing to update all consumers.
* remove private/protected/lifecycle fields from Storybook docs table
* move theme override decorator into util method
* implement base drawer component
* update bit-layout to be drawer container
* create drawer helper components
* expose new APIs to DS barrel file
* write docs
* update docs; add role input
* use host directive instead of service
* clean up logic a tad
* add start slot to story
* update docs
* Apply suggestions from code review
Co-authored-by: Victoria League <vleague@bitwarden.com>
* update docs
* Update libs/components/src/drawer/drawer.mdx
Co-authored-by: Victoria League <vleague@bitwarden.com>
* update docs / stories
* add non text element to drawer
---------
Co-authored-by: Victoria League <vleague@bitwarden.com>
* [deps] SM: Update typescript-eslint monorepo to v8
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Hinton <hinton@users.noreply.github.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Update all libs to use explicit dependencies rather than relying on tsconfig.libs.json. This allows us to more easily understand the dependencies between libs and prevent users from accidentally adding new dependencies.
We still use tsconfig.libs (now renamed tsconfig.spec) for tests.
Fixing some low hanging fruits for moving CL to strict typescript.
This primarily removes the types from args since TS infers them differently. We previously needed them since storybook would use any for args but now provides proper typings
* 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