Refactor app configuration to use hrefBase for base URL and improve provider imports
This commit is contained in:
@@ -1,32 +1,41 @@
|
||||
import {APP_INITIALIZER, ApplicationConfig, inject, provideZoneChangeDetection} from '@angular/core';
|
||||
import {
|
||||
APP_INITIALIZER,
|
||||
ApplicationConfig,
|
||||
inject,
|
||||
provideZoneChangeDetection,
|
||||
importProvidersFrom
|
||||
} from '@angular/core';
|
||||
import {provideRouter} from '@angular/router';
|
||||
|
||||
import {BrowserModule} from '@angular/platform-browser';
|
||||
import {APP_BASE_HREF} from '@angular/common';
|
||||
import {routes} from './app.routes';
|
||||
import {provideHttpClient, withInterceptors} from '@angular/common/http';
|
||||
import {provideAnimationsAsync} from '@angular/platform-browser/animations/async';
|
||||
import {authTokenInterceptor} from './interceptors/auth-token.interceptor';
|
||||
import {AuthService} from './services/auth.service';
|
||||
import {catchError, firstValueFrom, of} from 'rxjs';
|
||||
import {environment} from '../environments/environment';
|
||||
|
||||
export const appConfig: ApplicationConfig = {
|
||||
providers: [
|
||||
provideZoneChangeDetection({eventCoalescing: true}),
|
||||
importProvidersFrom(BrowserModule),
|
||||
{provide: APP_BASE_HREF, useValue: environment.hrefBase},
|
||||
provideRouter(routes),
|
||||
provideAnimationsAsync(),
|
||||
provideHttpClient(withInterceptors([
|
||||
authTokenInterceptor
|
||||
])
|
||||
),
|
||||
provideHttpClient(withInterceptors([authTokenInterceptor])),
|
||||
{
|
||||
provide: APP_INITIALIZER,
|
||||
multi: true,
|
||||
useFactory: () => {
|
||||
const auth = inject(AuthService);
|
||||
return () => firstValueFrom(auth.bootstrapSession().pipe(
|
||||
catchError(err => of(null))
|
||||
)
|
||||
);
|
||||
return () =>
|
||||
firstValueFrom(
|
||||
auth.bootstrapSession().pipe(
|
||||
catchError(() => of(null))
|
||||
)
|
||||
);
|
||||
}
|
||||
}, provideAnimationsAsync()
|
||||
}
|
||||
]
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user