import {RouterModule, Routes} from "@angular/router"; import {LoginComponent} from "./login/index"; import {NotFoundComponent} from "./not-found/not-found.component"; import {LoginGuardAdmin, LoginGuardHL, LoginGuardSQL} from "./login/login.guard"; import {usersRoutes, usersRoutingComponents} from "./users/users.routing"; import {squadsRoutes, squadsRoutingComponents} from "./squads/squads.routing"; import {decorationsRoutes, decorationsRoutingComponents} from "./decorations/decoration.routing"; import {ranksRoutes, ranksRoutingComponents} from "./ranks/ranks.routing"; import {armyRoutes, armyRoutingComponents} from "./army/army.routing"; import {SignupComponent} from "./login/signup.component"; import {AdminComponent} from "./admin/admin.component"; import {RequestAwardComponent} from "./request/award/req-award.component"; import {RequestPromotionComponent} from "./request/promotion/req-promotion.component"; import {ConfirmPromotionComponent} from "./request/confirm-promotion/confirm-promotion.component"; import {ConfirmAwardComponent} from "./request/confirm-award/confirm-award.component"; export const appRoutes: Routes = [ {path: 'cc-overview', children: armyRoutes}, {path: '', redirectTo: '/cc-overview', pathMatch: 'full'}, {path: 'login', component: LoginComponent}, {path: 'signup', component: SignupComponent}, {path: 'request-award', component: RequestAwardComponent, canActivate: [LoginGuardSQL]}, {path: 'request-promotion', component: RequestPromotionComponent, canActivate: [LoginGuardSQL]}, {path: 'confirm-award', component: ConfirmAwardComponent, canActivate: [LoginGuardHL]}, {path: 'confirm-promotion', component: ConfirmPromotionComponent, canActivate: [LoginGuardHL]}, {path: 'cc-users', children: usersRoutes, canActivate: [LoginGuardHL]}, {path: 'cc-squads', children: squadsRoutes, canActivate: [LoginGuardHL]}, {path: 'cc-decorations', children: decorationsRoutes, canActivate: [LoginGuardHL]}, {path: 'cc-ranks', children: ranksRoutes, canActivate: [LoginGuardHL]}, {path: 'admin-panel', component: AdminComponent, canActivate: [LoginGuardAdmin]}, /** Redirect Konfigurationen **/ {path: '404', component: NotFoundComponent}, {path: '**', redirectTo: '/404'}, // immer als letztes konfigurieren - erste Route die matched wird angesteuert ]; export const appRouting = RouterModule.forRoot(appRoutes); export const routingComponents = [LoginComponent, SignupComponent, RequestAwardComponent, RequestPromotionComponent, ConfirmAwardComponent, ConfirmPromotionComponent, AdminComponent, ...armyRoutingComponents, NotFoundComponent, ...usersRoutingComponents, ...squadsRoutingComponents, ...decorationsRoutingComponents, ...ranksRoutingComponents]; export const routingProviders = [LoginGuardHL];