github.com/in4it/ecs-deploy@v0.0.42-0.20240508120354-ed77ff16df25/webapp/src/app/app.module.ts (about) 1 import { BrowserModule } from '@angular/platform-browser'; 2 import { NgModule } from '@angular/core'; 3 import { FormsModule } from '@angular/forms'; 4 5 import { ReactiveFormsModule } from '@angular/forms'; 6 7 import { AppComponent } from './app.component'; 8 import { AppNavbarComponent } from './app-navbar/app-navbar.component'; 9 10 import { NgbModule } from '@ng-bootstrap/ng-bootstrap'; 11 import { DeploymentListComponent } from './deployment-list/deployment-list.component'; 12 import { DeploymentListResolver } from './deployment-list/deployment-list-resolver.service'; 13 import { DeploymentListService } from './deployment-list/deployment-list.service'; 14 15 import {HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http'; 16 17 import { RouterModule, Routes } from '@angular/router'; 18 import { LoginComponent } from './login/login.component'; 19 import { LoginSAMLComponent } from './login/saml.component'; 20 import { AlertService, AuthService } from './services/index'; 21 import { AuthGuard } from './guards/auth.guard'; 22 import { AlertComponent } from './directives/alert.component'; 23 24 import { AppHttpInterceptor } from './interceptors/http-interceptor'; 25 import { ErrorComponent } from './errors/error.component'; 26 import { ServiceListComponent } from './service-list/service-list.component'; 27 import { ServiceListResolver } from './service-list/service-list-resolver.service'; 28 import { ServiceListService } from './service-list/service-list.service'; 29 import { ServiceDetailComponent } from './service-detail/service-detail.component'; 30 import { ServiceDetailResolver } from './service-detail/service-detail-resolver.service'; 31 import { ServiceDetailService } from './service-detail/service-detail.service'; 32 import { InspectChildComponent } from './service-detail/inspect.component'; 33 import { DeployChildComponent } from './service-detail/deploy.component'; 34 import { ConfirmChildComponent } from './service-detail/confirm.component'; 35 36 // routes 37 const appRoutes: Routes = [ 38 { path: 'login', component: LoginComponent }, 39 { path: 'saml', component: LoginSAMLComponent }, 40 { 41 path: 'deployments', 42 component: DeploymentListComponent, 43 resolve: { dl: DeploymentListResolver }, 44 data: { title: 'ECS Deploy tool' }, 45 canActivate: [AuthGuard] 46 }, 47 { 48 path: 'services', 49 component: ServiceListComponent, 50 resolve: { sl: ServiceListResolver }, 51 data: { title: 'ECS Deploy tool' }, 52 canActivate: [AuthGuard] 53 }, 54 { 55 path: 'service/:serviceName', 56 component: ServiceDetailComponent, 57 resolve: { sd: ServiceDetailResolver }, 58 data: { title: 'ECS Deploy tool' }, 59 canActivate: [AuthGuard] 60 }, 61 { path: '', 62 redirectTo: '/services', 63 pathMatch: 'full' 64 }, 65 { path: 'error', component: ErrorComponent }, 66 { path: '**', data: { error: 'PageNotFound' }, component: ErrorComponent } 67 ]; 68 69 70 @NgModule({ 71 declarations: [ 72 AppComponent, 73 AlertComponent, 74 AppNavbarComponent, 75 DeploymentListComponent, 76 LoginComponent, 77 LoginSAMLComponent, 78 ErrorComponent, 79 ServiceListComponent, 80 ServiceDetailComponent, 81 InspectChildComponent, 82 DeployChildComponent, 83 ConfirmChildComponent, 84 ], 85 imports: [ 86 BrowserModule, 87 ReactiveFormsModule, 88 HttpClientModule, 89 FormsModule, 90 RouterModule.forRoot( 91 appRoutes, 92 { enableTracing: false } // <-- debugging purposes only 93 // <-- debugging purposes only 94 // <-- debugging purposes only 95 ), 96 NgbModule 97 ], 98 providers: [ 99 AuthGuard, 100 AlertService, 101 AuthService, 102 DeploymentListService, 103 DeploymentListResolver, 104 ServiceListResolver, 105 ServiceListService, 106 ServiceDetailResolver, 107 ServiceDetailService, 108 { provide: HTTP_INTERCEPTORS, useClass: AppHttpInterceptor, multi: true }, 109 ], 110 bootstrap: [AppComponent] 111 }) 112 113 export class AppModule { }