Untitled
unknown
plain_text
2 years ago
3.4 kB
7
Indexable
import { DEFAULT_CURRENCY_CODE, NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import {
HTTP_INTERCEPTORS,
HttpClient,
HttpClientModule,
} from '@angular/common/http';
import {
MSAL_GUARD_CONFIG,
MSAL_INSTANCE,
MSAL_INTERCEPTOR_CONFIG,
MsalBroadcastService,
MsalGuard,
MsalInterceptor,
MsalModule,
MsalRedirectComponent,
MsalService,
} from '@azure/msal-angular';
import { BlockUIModule } from 'ng-block-ui';
import { MAT_DATE_LOCALE } from '@angular/material/core';
import { MatPaginatorIntl } from '@angular/material/paginator';
import { TranslateHttpLoader } from '@ngx-translate/http-loader';
import { SimpleNotificationsModule } from 'angular2-notifications';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import {
TranslateLoader,
TranslateModule,
TranslateService,
} from '@ngx-translate/core';
import { environment } from '../environments/environment';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { SharedModule } from '@app/shared/shared.module';
import { FormInterface } from '@app/shared/interface/form/form-interface';
import { HomeComponent } from '@app/root/components/home/home.component';
import { MatPaginatorIntlCroComponent } from '@app/root/utilities/MatPaginatorIntlCro';
import { SidenavComponent } from '@app/root/components/sidenav/sidenav.component';
import { AppHttpInterceptor } from './shared/interceptors/app-http/app-http-interceptor';
import {
MSALGuardConfigFactory,
MSALInstanceFactory,
MSALInterceptorConfigFactory,
} from './security/utilities/azure-login';
export const httpTranslateLoader = (http: HttpClient): TranslateHttpLoader =>
new TranslateHttpLoader(http, environment.refTranslate, '.json');
@NgModule({
declarations: [AppComponent, SidenavComponent, HomeComponent],
imports: [
BrowserAnimationsModule,
BrowserModule,
AppRoutingModule,
MsalModule,
HttpClientModule,
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: httpTranslateLoader,
deps: [HttpClient],
},
}),
BlockUIModule.forRoot({
message: 'Procesando',
delayStart: 150,
delayStop: 500,
}),
SimpleNotificationsModule.forRoot(),
SharedModule,
],
providers: [
{ provide: HTTP_INTERCEPTORS, useClass: MsalInterceptor, multi: true },
{ provide: HTTP_INTERCEPTORS, useClass: AppHttpInterceptor, multi: true },
{
provide: MSAL_INSTANCE,
useFactory: MSALInstanceFactory,
},
{
provide: MSAL_GUARD_CONFIG,
useFactory: MSALGuardConfigFactory,
},
{
provide: MSAL_INTERCEPTOR_CONFIG,
useFactory: MSALInterceptorConfigFactory,
},
{
provide: MatPaginatorIntl,
useFactory: (translate: any) => {
return new MatPaginatorIntlCroComponent(translate);
},
deps: [TranslateService],
},
{ provide: DEFAULT_CURRENCY_CODE, useValue: '' },
{ provide: MAT_DATE_LOCALE, useValue: 'es-ES' },
FormInterface,
MsalService,
MsalGuard,
MsalBroadcastService,
],
bootstrap: [AppComponent, MsalRedirectComponent],
})
export class AppModule {}
Editor is loading...