- Angular 17 with standalone components - Angular Material + Tailwind CSS - OIDC authorization code flow with Authentik - Role-based access control (USER, DEVELOPER, APPROVER, ADMIN) - Dashboard with pending requests, tunnel list, and create mapping - Nginx reverse proxy to backend API - Multi-container Docker Compose setup (frontend, backend, postgres) - Environment-based configuration (local, test, prod)
29 lines
1006 B
TypeScript
29 lines
1006 B
TypeScript
import { ApplicationConfig, importProvidersFrom } from '@angular/core';
|
|
import { provideRouter } from '@angular/router';
|
|
import { provideHttpClient, withInterceptors } from '@angular/common/http';
|
|
import { provideAnimations } from '@angular/platform-browser/animations';
|
|
import { OAuthModule } from 'angular-oauth2-oidc';
|
|
|
|
import { routes } from './app/app.routes';
|
|
import { authInterceptor } from './app/core/auth/auth.interceptor';
|
|
|
|
export const appConfig: ApplicationConfig = {
|
|
providers: [
|
|
provideRouter(routes),
|
|
provideHttpClient(withInterceptors([authInterceptor])),
|
|
provideAnimations(),
|
|
importProvidersFrom(
|
|
OAuthModule.forRoot({
|
|
config: {
|
|
issuer: 'https://auth.hithomelabs.com/application/o/cftunnels/',
|
|
redirectUri: window.location.origin + '/login',
|
|
clientId: 'cftunnels',
|
|
scope: 'openid profile email offline_access',
|
|
responseType: 'code',
|
|
showDebugInformation: true,
|
|
},
|
|
})
|
|
),
|
|
],
|
|
};
|