import { BrowserModule } from '@angular/platform-browser'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { CommonModule } from '@angular/common'; import { NgModule } from '@angular/core'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http'; import { RouterModule } from '@angular/router'; import { NgbModule } from '@ng-bootstrap/ng-bootstrap'; //import { AgmCoreModule } from '@agm/core'; import { DataTablesModule } from 'angular-datatables'; import { NgMultiSelectDropDownModule } from 'ng-multiselect-dropdown'; import { Ng2SearchPipeModule } from 'ng2-search-filter'; import { ToastrModule } from 'ngx-toastr'; import { FullComponent } from './layouts/full/full.component'; import { BlankComponent } from './layouts/blank/blank.component'; import { FeatherModule } from 'angular-feather'; import { allIcons } from 'angular-feather/icons'; import { VerticalNavigationComponent } from './shared/vertical-header/vertical-navigation.component'; import { VerticalSidebarComponent } from './shared/vertical-sidebar/vertical-sidebar.component'; import { BreadcrumbComponent } from './shared/breadcrumb/breadcrumb.component'; import { HorizontalNavigationComponent } from './shared/horizontal-header/horizontal-navigation.component'; import { HorizontalSidebarComponent } from './shared/horizontal-sidebar/horizontal-sidebar.component'; import { Approutes } from './app-routing.module'; import { AppComponent } from './app.component'; import { SpinnerComponent } from './shared/spinner.component'; import { PerfectScrollbarModule } from 'ngx-perfect-scrollbar'; import { PERFECT_SCROLLBAR_CONFIG } from 'ngx-perfect-scrollbar'; import { PerfectScrollbarConfigInterface } from 'ngx-perfect-scrollbar'; import { TranslateLoader, TranslateModule } from '@ngx-translate/core'; import { TranslateHttpLoader } from '@ngx-translate/http-loader'; import { HttpClient } from '@angular/common/http'; import { HttpRequestInterceptor } from './service/http-request.interceptor'; export function HttpLoaderFactory(http: HttpClient) { return new TranslateHttpLoader(http, './assets/i18n/', '.json'); } const DEFAULT_PERFECT_SCROLLBAR_CONFIG: PerfectScrollbarConfigInterface = { suppressScrollX: true, wheelSpeed: 1, wheelPropagation: true, minScrollbarLength: 20 }; // Select some icons (use an object, not an array) @NgModule({ declarations: [ AppComponent, SpinnerComponent, FullComponent, BlankComponent, VerticalNavigationComponent, BreadcrumbComponent, VerticalSidebarComponent, HorizontalNavigationComponent, HorizontalSidebarComponent ], imports: [ CommonModule, BrowserModule, BrowserAnimationsModule, FormsModule, ToastrModule.forRoot(), FeatherModule.pick(allIcons), ReactiveFormsModule, DataTablesModule, HttpClientModule, NgbModule, FeatherModule, Ng2SearchPipeModule, RouterModule.forRoot(Approutes, { relativeLinkResolution: 'legacy',initialNavigation: 'enabledNonBlocking', useHash: true }), PerfectScrollbarModule, NgMultiSelectDropDownModule.forRoot(), // AgmCoreModule.forRoot({ apiKey: 'AIzaSyDoliAneRffQDyA7Ul9cDk3tLe7vaU4yP8' }), TranslateModule.forRoot({ loader: { provide: TranslateLoader, useFactory: HttpLoaderFactory, deps: [HttpClient] } }) ], providers: [ { provide: HTTP_INTERCEPTORS, useClass: HttpRequestInterceptor, multi: true, }, { provide: PERFECT_SCROLLBAR_CONFIG, useValue: DEFAULT_PERFECT_SCROLLBAR_CONFIG } ], bootstrap: [AppComponent] }) export class AppModule { }