import { NgModule, ModuleWithProviders } from '@angular/core'; import { CommonModule } from '@angular/common'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { FlexLayoutModule } from '@angular/flex-layout'; import { MatFormFieldModule } from '@angular/material/form-field'; import { MatIconModule } from '@angular/material/icon'; import { MatInputModule } from '@angular/material/input'; import { FormComponent } from './components/form.component'; import { IntroComponent } from './components/intro.component'; import { MessagesComponent } from './components/messages.component'; const COMPONENTS = [FormComponent, IntroComponent, MessagesComponent]; const SERVICES = []; @NgModule({ imports: [ CommonModule, FormsModule, ReactiveFormsModule, FlexLayoutModule, MatFormFieldModule, MatIconModule, MatInputModule ], exports: [...COMPONENTS], declarations: [...COMPONENTS] }) export class UCapUiChatModule { public static forRoot(): ModuleWithProviders { return { ngModule: UCapUiChatModule, providers: [...SERVICES] }; } }