import { NgModule } from '@angular/core'; import { CommonModule } from '@angular/common'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { RouterModule } from '@angular/router'; import { NgbModule } from '@ng-bootstrap/ng-bootstrap'; import { DynaformComponent } from './dynaform.component'; import { DynafieldDirective } from './directives/dynafield.directive'; import { DynaformService } from './services/dynaform.service'; import { ModelMapperService } from './services/model-mapper.service'; import * as formFieldComponents from './components'; const ffcArr = Object.values(formFieldComponents); // Array of all the Form Field Components import { DateInputsModule } from '@progress/kendo-angular-dateinputs'; @NgModule({ imports: [ CommonModule, FormsModule, ReactiveFormsModule, RouterModule.forChild([]), NgbModule, DateInputsModule ], declarations: [ DynaformComponent, DynafieldDirective, ...ffcArr ], entryComponents: ffcArr, providers: [ DynaformService, ModelMapperService ], exports: [ FormsModule, ReactiveFormsModule, DynaformComponent, DynafieldDirective, ffcArr ] }) export class DynaformModule { }