import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { RouterModule } from '@angular/router'; import { ToastrModule } from 'ngx-toastr'; import { MatCardModule } from '@angular/material/card'; import { MatButtonModule } from '@angular/material/button'; import { AppComponent } from './app.component'; import { SharedModule } from './shared/shared.module'; import { AppRoutingModule } from './app-routing.module'; import { DashboardModule } from './pages/dashboard/dashboard.module'; import { NotFoundComponent } from './pages/not-found/not-found.component'; import { AuthModule } from './pages/auth/auth.module'; import { NgxEchartsModule } from 'ngx-echarts'; import { ProvidersModule } from './_providers/providers.module'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { HttpClient, HttpClientModule } from '@angular/common/http'; import { environment } from 'src/environments/environment'; import { MatToolbarModule } from '@angular/material/toolbar'; import { MatSidenavModule } from '@angular/material/sidenav'; import { MatRadioModule } from '@angular/material/radio'; import { MatTableModule } from '@angular/material/table'; import { MatPaginatorModule } from '@angular/material/paginator'; import { MatSortModule } from '@angular/material/sort'; import { MatFormFieldModule } from '@angular/material/form-field'; import { MatIconModule } from '@angular/material/icon'; import { MatInputModule } from '@angular/material/input'; import { MatDatepickerModule } from '@angular/material/datepicker'; import { MatTooltipModule } from '@angular/material/tooltip'; import { MatSnackBarModule } from '@angular/material/snack-bar'; import { TimeOutDialogComponent } from './_window/time-out-dialog/time-out-dialog.component'; import { NgIdleKeepaliveModule } from '@ng-idle/keepalive'; import { HttpInterceptProviders } from './_core/_interceptors'; import { AppConfigService } from './_providers/_services/appconfigservice'; import { DatePipe } from '@angular/common'; import * as _moment from 'moment'; import { NgOtpInputModule } from 'ng-otp-input'; // tslint:disable-next-line:no-duplicate-imports // import { default as _rollupMoment } from 'moment'; // const moment = _rollupMoment || _moment; import { MomentDateAdapter, MAT_MOMENT_DATE_ADAPTER_OPTIONS, } from '@angular/material-moment-adapter'; import { DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE, } from '@angular/material/core'; export const MY_FORMATS = { parse: { dateInput: 'DD/MM/YYYY', }, display: { dateInput: 'DD/MM/YYYY', monthYearLabel: 'DD/MM/YYYY', dateA11yLabel: 'DD/MM/YYYY', monthYearA11yLabel: 'DD/MM/YYYY', }, }; import { BsDatepickerModule, BsDatepickerConfig } from 'ngx-bootstrap/datepicker'; // import ngx-translate and the http loader import {TranslateLoader, TranslateModule } from '@ngx-translate/core'; import {TranslateHttpLoader} from '@ngx-translate/http-loader'; import { ReportModule } from './_modules/report/report.module'; import { MatDialogModule } from '@angular/material/dialog'; @NgModule({ declarations: [ AppComponent, TimeOutDialogComponent, NotFoundComponent, ], imports: [ BrowserModule, SharedModule, NgOtpInputModule, AuthModule, DashboardModule, ReportModule, BrowserAnimationsModule, RouterModule, AppRoutingModule, ToastrModule.forRoot(), MatCardModule, MatButtonModule, NgxEchartsModule.forRoot({ echarts: () => import('echarts') }), MatToolbarModule, MatSidenavModule, MatTableModule, MatPaginatorModule, MatSortModule, MatFormFieldModule, MatInputModule, MatIconModule, MatDatepickerModule, MatRadioModule, MatTooltipModule, ReactiveFormsModule, MatDialogModule, FormsModule, ProvidersModule.forRoot(environment), MatSnackBarModule, NgIdleKeepaliveModule.forRoot(), BsDatepickerModule.forRoot(), // ngx-translate and the loader module HttpClientModule, TranslateModule.forRoot({ loader: { provide: TranslateLoader, useFactory: HttpLoaderFactory, deps: [HttpClient] } }) ], providers: [ HttpInterceptProviders, AppConfigService, DatePipe, BsDatepickerConfig, //commented due to change in angular date issue // { provide: MAT_DATE_LOCALE, useValue: 'en-GB' } { provide: DateAdapter, useClass: MomentDateAdapter, deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS], }, { provide: MAT_DATE_FORMATS, useValue: MY_FORMATS } // { provide: MAT_DATE_LOCALE, useValue: 'hi-IN' } ], bootstrap: [AppComponent] }) export class AppModule { } // required for AOT compilation export function HttpLoaderFactory(http: HttpClient): TranslateHttpLoader { return new TranslateHttpLoader(http, './assets/i18n/languages/', '.json'); }