// angular modules import { NgModule, APP_INITIALIZER, ModuleWithProviders, Injector,Optional,SkipSelf } from '@angular/core'; import { CommonModule, DatePipe } from '@angular/common'; import { HttpClientModule, HttpClient, HTTP_INTERCEPTORS } from '@angular/common/http'; import { FormsModule } from '@angular/forms'; // external modules import { OAuthModule,AuthConfig, OAuthService, OAuthStorage } from 'angular-oauth2-oidc'; import { StoreModule,Store } from '@ngrx/store'; import { EffectsModule } from '@ngrx/effects'; import { NgbModule } from '@ng-bootstrap/ng-bootstrap'; import {UploadxModule } from 'ngx-uploadx'; // routing module import { AppCommonRoutingModule } from './common-routing.module'; import { MODULE_NAME } from './module-name'; //components import { SafePipe } from './shared/safe.pipe'; import { AuthConfigFactory,IAuthconfigFactory} from './shared/authconfigFactory'; import { AppComponent} from './components/app/app.component'; import { AuthCallbackComponent } from './components/auth-callback/auth-callback.component'; import { SessionClearedComponent } from './components/session-cleared/session-cleared.component'; import { ResumableFileUploadComponent } from './components/resumable-file-upload/resumable-file-upload.component'; import { NotFoundComponent } from './components/not-found/not-found.component'; import { NotImplementedComponent } from './components/not-implemented/not-implemented.component'; import { SidePanelComponent } from './components/side-panel/side-panel.component'; import { TimespanComponent } from './components/timespan/timespan.component'; import { TagInputComponent } from './components/tag-input/tag-input.component'; import {IEventMessage } from './models/event.message'; import { IItem, Item } from './models/item'; import {IItemType} from './models/item.type'; import {IItemTypes} from './models/item.types'; import {IItemTask,ItemTask} from './models/itemTask'; import {IListItem} from './models/list.item'; import {ITypeaheadItem} from './models/typeahead.item'; import {IUser} from './models/user'; import * as commonActions from './actions/app-common.actions'; import * as commonReducers from './reducers/app-common.reducer'; import * as commonEffects from './effects/app-common.effects'; export { SafePipe, AuthCallbackComponent, AppComponent, SessionClearedComponent, ResumableFileUploadComponent, NotFoundComponent, NotImplementedComponent, SidePanelComponent, TimespanComponent, TagInputComponent, IEventMessage, IItem, Item, IItemType, IItemTypes, IItemTask, ItemTask, IListItem, ITypeaheadItem, IUser, commonActions, commonReducers, IAuthconfigFactory, AuthConfigFactory }; @NgModule({ imports: [ CommonModule, HttpClientModule, AppCommonRoutingModule, StoreModule.forFeature(MODULE_NAME, commonReducers.reducer ), EffectsModule.forFeature([commonEffects.AppCommonEffects]), OAuthModule.forRoot(), NgbModule, FormsModule, UploadxModule ], declarations: [ AppComponent, AuthCallbackComponent, SidePanelComponent, SafePipe, NotFoundComponent, NotImplementedComponent, ResumableFileUploadComponent, TimespanComponent, TagInputComponent, SessionClearedComponent ], exports: [ NgbModule, UploadxModule, CommonModule, AppComponent, ResumableFileUploadComponent, AuthCallbackComponent, SidePanelComponent, SafePipe, NotFoundComponent, NotImplementedComponent, ResumableFileUploadComponent, TimespanComponent, TagInputComponent, SessionClearedComponent ] }) export class AppCommonModule { }