Files
frontend/src/app/app-module.ts
Piet Ostendorp 5addba879a Add error handling and snackbar notifications
Introduces error state management in LoadingService, displays error bar and snackbar notifications in the UI, and updates ScheduleComponent to use the new error handling. Also adds custom theming for error snackbar and progress bar.
2025-10-31 16:19:02 +01:00

76 lines
2.7 KiB
TypeScript

import { CommonModule } from '@angular/common';
import { NgModule, provideBrowserGlobalErrorListeners } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { BrowserModule } from '@angular/platform-browser';
import { provideHttpClient, withFetch } from '@angular/common/http';
import { AppRoutingModule } from './app-routing-module';
import { App } from './app';
import { MatIconModule } from '@angular/material/icon';
import { MatTabsModule } from '@angular/material/tabs';
import { MatToolbarModule } from '@angular/material/toolbar';
import { MatProgressBarModule } from '@angular/material/progress-bar';
import { MatSnackBarModule } from '@angular/material/snack-bar';
import { HeaderComponent } from './header/header.component';
import { HomeComponent } from './home/home.component';
import { MainComponent } from './main/main.component';
import { MainLayoutComponent } from './layouts/main-layout/main-layout.component';
import { NavbarComponent } from './navbar/navbar.component';
import { PocModelComponent } from './poc-model-component/poc-model-component';
import { ScheduleComponent } from './schedule/schedule.component';
import { MovieDurationComponent } from './movie-duration/movie-duration.component';
import { MoviePerformanceComponent } from './movie-performance/movie-performance.component';
import { MoviePosterComponent } from './movie-poster/movie-poster.component';
import { MovieRatingComponent } from './movie-rating/movie-rating.component';
import { MovieScheduleInfoComponent } from './movie-schedule-info/movie-schedule-info.component';
import { MovieScheduleTimesComponent } from './movie-schedule-times/movie-schedule-times.component';
import { MovieCategoryComponent } from './movie-category/movie-category.component';
import { MovieScheduleEmptyComponent } from './movie-schedule-empty/movie-schedule-empty.component';
import { Header2Component } from './header-2/header-2.component';
@NgModule({
declarations: [
App,
PocModelComponent,
HomeComponent,
MainLayoutComponent,
HeaderComponent,
NavbarComponent,
ScheduleComponent,
MainComponent,
MovieScheduleInfoComponent,
MoviePosterComponent,
MovieScheduleTimesComponent,
MoviePerformanceComponent,
MovieRatingComponent,
MovieDurationComponent,
MovieCategoryComponent,
MovieScheduleEmptyComponent,
Header2Component
],
imports: [
AppRoutingModule,
BrowserModule,
CommonModule,
FormsModule,
MatIconModule,
MatTabsModule,
MatToolbarModule,
MatProgressBarModule,
MatSnackBarModule
],
providers: [
provideBrowserGlobalErrorListeners(),
provideHttpClient(
withFetch(),
)
],
bootstrap: [App]
})
export class AppModule { }