clients/apps/web/src/app/shared/shared.module.ts
Will Martin eeb407b8a4
[SM-43] create product-switcher (#4189)
* rebase to master

* use bit-menu in product switcher; add focusStrategy to bit-menu

* recommit locales after rebase

* add light style to iconButton, use in product-switcher

* move out of component library

* add buttonType input

* gate behind sm flag

* update aria-label

* add role input to bit-menu

* style changes

* simplify partition logic

* split into two components for Storybook

* update focus styles; update grid sizing to relative

* fix underline on hover

* update attribute binding

* move to layouts dir

* add bitLink; update grid gap

* reorder loose components

* move orgs mock

* move a11y module

* fix aria role bug; add aria label to menu

* update colors

* update ring color

* simplify colors

* remove duplicate link module
2022-12-21 16:50:41 -05:00

106 lines
2.3 KiB
TypeScript

import { DragDropModule } from "@angular/cdk/drag-drop";
import { CommonModule, DatePipe } from "@angular/common";
import { NgModule } from "@angular/core";
import { FormsModule, ReactiveFormsModule } from "@angular/forms";
import { RouterModule } from "@angular/router";
import { InfiniteScrollModule } from "ngx-infinite-scroll";
import { ToastrModule } from "ngx-toastr";
import { JslibModule } from "@bitwarden/angular/jslib.module";
import {
AsyncActionsModule,
AvatarModule,
BadgeModule,
ButtonModule,
CalloutModule,
DialogModule,
FormFieldModule,
IconButtonModule,
IconModule,
LinkModule,
MenuModule,
NavigationModule,
TableModule,
TabsModule,
ColorPasswordModule,
} from "@bitwarden/components";
// Register the locales for the application
import "./locales";
import { WebI18nPipe } from "../core/web-i18n.pipe";
/**
* This NgModule should contain the most basic shared directives, pipes, and components. They
* should be widely used by other modules to be considered for adding to this module. If in doubt
* do not add to this module.
*
* See: https://angular.io/guide/module-types#shared-ngmodules
*/
@NgModule({
imports: [
CommonModule,
DragDropModule,
FormsModule,
ReactiveFormsModule,
InfiniteScrollModule,
RouterModule,
ToastrModule,
JslibModule,
// Component library
AsyncActionsModule,
AvatarModule,
BadgeModule,
ButtonModule,
CalloutModule,
DialogModule,
FormFieldModule,
IconButtonModule,
IconModule,
LinkModule,
MenuModule,
NavigationModule,
TableModule,
TabsModule,
LinkModule,
ColorPasswordModule,
// Web specific
],
declarations: [WebI18nPipe],
exports: [
CommonModule,
DragDropModule,
FormsModule,
ReactiveFormsModule,
InfiniteScrollModule,
RouterModule,
ToastrModule,
JslibModule,
// Component library
AsyncActionsModule,
AvatarModule,
BadgeModule,
ButtonModule,
CalloutModule,
DialogModule,
FormFieldModule,
IconButtonModule,
IconModule,
LinkModule,
MenuModule,
NavigationModule,
TableModule,
TabsModule,
LinkModule,
ColorPasswordModule,
// Web specific
WebI18nPipe,
],
providers: [DatePipe],
bootstrap: [],
})
export class SharedModule {}