casino/frontend/src/app/app.config.ts
csimonis 242b72ca45
Some checks failed
CI / Get Changed Files (pull_request) Successful in 6s
CI / prettier (pull_request) Failing after 23s
CI / Checkstyle Main (pull_request) Successful in 44s
CI / test-build (pull_request) Failing after 55s
CI / eslint (pull_request) Failing after 57s
idek man
2025-03-26 11:10:19 +01:00

42 lines
1.3 KiB
TypeScript

import { ApplicationConfig, provideExperimentalZonelessChangeDetection } from '@angular/core';
import { provideRouter } from '@angular/router';
import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
import { routes } from './app.routes';
import { provideHttpClient, withInterceptors } from '@angular/common/http';
import { provideAnimationsAsync } from '@angular/platform-browser/animations/async';
import { OAuthStorage, provideOAuthClient } from 'angular-oauth2-oidc';
import { httpInterceptor } from './shared/interceptor/http.interceptor';
function storageFactory() {
return new class implements OAuthStorage {
private data: { [key: string]: string } = {};
getItem(key: string): string | null {
return this.data[key];
}
removeItem(key: string): void {
delete this.data[key]
}
setItem(key: string, data: string): void {
this.data[key] = data;
}
}
}
export const appConfig: ApplicationConfig = {
providers: [
provideRouter(routes),
FontAwesomeModule,
provideHttpClient(withInterceptors([httpInterceptor])),
provideExperimentalZonelessChangeDetection(),
provideAnimationsAsync(),
provideOAuthClient(),
{
provide: OAuthStorage,
useFactory: () => storageFactory(),
}
],
};