import { CommonModule } from '@angular/common'; import { ModuleWithProviders, NgModule } from '@angular/core'; import { ComponentLoaderFactory } from 'mirra-ui/component-loader'; import { PositioningService } from 'mirra-ui/positioning'; import { pDatepickerInputDirective } from './p-datepicker-input.directive'; import { pDatepickerDirective } from './p-datepicker.component'; import { pDatepickerConfig } from './p-datepicker.config'; import { pDaterangepickerInputDirective } from './p-daterangepicker-input.directive'; import { pDaterangepickerDirective } from './p-daterangepicker.component'; import { pDaterangepickerConfig } from './p-daterangepicker.config'; import { pDatepickerInlineDirective } from './p-datepicker-inline.component'; import { pDatepickerInlineConfig } from './p-datepicker-inline.config'; import { BsLocaleService } from './p-locale.service'; import { pDatepickerActions } from './reducer/p-datepicker.actions'; import { pDatepickerEffects } from './reducer/p-datepicker.effects'; import { pDatepickerStore } from './reducer/p-datepicker.store'; import { pDatepickerContainerComponent } from './themes/p/p-datepicker-container.component'; import { pDaterangepickerContainerComponent } from './themes/p/p-daterangepicker-container.component'; import { pDatepickerInlineContainerComponent } from './themes/p/p-datepicker-inline-container.component'; import { pDaterangepickerInlineContainerComponent } from './themes/p/p-daterangepicker-inline-container.component'; import { pDaterangepickerInlineDirective } from './p-daterangepicker-inline.component'; import { pDaterangepickerInlineConfig } from './p-daterangepicker-inline.config'; import { BsCalendarLayoutComponent } from './themes/p/p-calendar-layout.component'; import { BsCurrentDateViewComponent } from './themes/p/p-current-date-view.component'; import { BsCustomDatesViewComponent } from './themes/p/p-custom-dates-view.component'; import { pDatepickerDayDecoratorComponent } from './themes/p/p-datepicker-day-decorator.directive'; import { pDatepickerNavigationViewComponent } from './themes/p/p-datepicker-navigation-view.component'; import { BsDaysCalendarViewComponent } from './themes/p/p-days-calendar-view.component'; import { BsMonthCalendarViewComponent } from './themes/p/p-months-calendar-view.component'; import { BsTimepickerViewComponent } from './themes/p/p-timepicker-view.component'; import { BsYearsCalendarViewComponent } from './themes/p/p-years-calendar-view.component'; @NgModule({ imports: [CommonModule], declarations: [ BsCalendarLayoutComponent, BsCurrentDateViewComponent, BsCustomDatesViewComponent, pDatepickerDayDecoratorComponent, pDatepickerNavigationViewComponent, BsDaysCalendarViewComponent, BsMonthCalendarViewComponent, BsTimepickerViewComponent, BsYearsCalendarViewComponent, pDatepickerContainerComponent, pDatepickerDirective, pDatepickerInlineContainerComponent, pDatepickerInlineDirective, pDatepickerInputDirective, pDaterangepickerContainerComponent, pDaterangepickerDirective, pDaterangepickerInlineContainerComponent, pDaterangepickerInlineDirective, pDaterangepickerInputDirective ], entryComponents: [ pDatepickerContainerComponent, pDaterangepickerContainerComponent, pDatepickerInlineContainerComponent, pDaterangepickerInlineContainerComponent ], exports: [ pDatepickerContainerComponent, pDatepickerDirective, pDatepickerInlineContainerComponent, pDatepickerInlineDirective, pDatepickerInputDirective, pDaterangepickerContainerComponent, pDaterangepickerDirective, pDaterangepickerInlineContainerComponent, pDaterangepickerInlineDirective, pDaterangepickerInputDirective ] }) export class pDatepickerModule { static forRoot(): ModuleWithProviders { return { ngModule: pDatepickerModule, providers: [ ComponentLoaderFactory, PositioningService, pDatepickerStore, pDatepickerActions, pDatepickerConfig, pDaterangepickerConfig, pDatepickerInlineConfig, pDaterangepickerInlineConfig, pDatepickerEffects, BsLocaleService ] }; } }