import { NgModule, ModuleWithProviders } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { CommonModule } from '@angular/common'; import { FarrisCommonModule } from '@farris/ui-common'; // import { FarrisFormsModule } from '@farris/ui-forms'; import { ModalModule } from '@farris/ui-modal'; import { LocaleModule } from '@farris/ui-locale'; import { MessagerComponent } from './messager.component'; import { MessagerService } from './messager.service'; import { MessagerConfig, MESSAGER_DEFAULT_CONFIG, MessagerDefaultConfig } from './messager.config'; import { FarrisDefaultFocusDirective } from './farris-default-focus.directive'; @NgModule({ imports: [ CommonModule, FormsModule, FarrisCommonModule.forRoot(), // FarrisFormsModule, LocaleModule, ModalModule.forRoot() ], declarations: [ FarrisDefaultFocusDirective, MessagerComponent ], entryComponents: [ MessagerComponent ] }) export class MessagerModule { static forRoot(config?: MessagerConfig): ModuleWithProviders { return { ngModule: MessagerModule, providers: [ {provide: MESSAGER_DEFAULT_CONFIG, useValue: config || MessagerDefaultConfig }, MessagerService ] }; } }