import { ApplicationConfig, provideAppInitializer, provideBrowserGlobalErrorListeners, provideZonelessChangeDetection } from '@angular/core';
import { provideRouter } from '@angular/router';
import { JwtInterceptor, ErrorInterceptor, initializeApp } from './shares';
import { provideAnimationsAsync } from '@angular/platform-browser/animations/async';
import { providePrimeNG } from 'primeng/config';
import { provideHttpClient, withInterceptors } from '@angular/common/http';
import { ConfirmationService, MessageService } from 'primeng/api';
import { routes } from './app.routes';
import MyPreset from './mythem';

export const appConfig: ApplicationConfig = {
  providers: [
    provideBrowserGlobalErrorListeners(),
    MessageService, ConfirmationService,
     provideAppInitializer(initializeApp()),
     provideHttpClient(withInterceptors([JwtInterceptor, ErrorInterceptor])),
    provideZonelessChangeDetection(),
     provideAnimationsAsync(),
     providePrimeNG({
            theme: {
                preset: MyPreset,
                options: {
                  cssLayer: {
                    name: 'primeng',
                    order: 'theme, base, primeng'
                }
              }
            }
        }),
    provideRouter(routes)
  ]
};
/*
ng build --base-href "/familytreeui/" -c production
*/