opt-cc/static/src/app/app.routing.ts

80 lines
2.2 KiB
TypeScript

import {RouterModule, Routes} from "@angular/router";
import {LoginComponent} from "./login/index";
import {NotFoundComponent} from "./common/not-found/not-found.component";
import {LoginGuardAdmin, LoginGuardHL, LoginGuardMT, LoginGuardSQL} from "./login/login.guard";
import {armyRoutes, armyRoutingComponents} from "./army/army.routing";
import {SignupComponent} from "./login/signup.component";
import {RouteConfig} from "./app.config";
export const appRoutes: Routes = [
{
path: RouteConfig.overviewPath,
children: armyRoutes
},
{
path: '', redirectTo: RouteConfig.overviewPath,
pathMatch: 'full'
},
{
path: RouteConfig.statsPath,
loadChildren: './statistic/stats.module#StatsModule'
},
{
path: RouteConfig.loginPath,
component: LoginComponent
},
{
path: RouteConfig.editProfilePath,
loadChildren: './profile/edit-profile.module#EditProfileModule'
},
{
path: RouteConfig.signUpPath,
component: SignupComponent
},
{
path: RouteConfig.request,
loadChildren: './request/request.module#RequestModule'
},
{
path: RouteConfig.userPath,
loadChildren: './users/users.module#UsersModule',
canActivate: [LoginGuardHL]
},
{
path: RouteConfig.squadPath,
loadChildren: './squads/squads.module#SquadsModule',
canActivate: [LoginGuardHL]
},
{
path: RouteConfig.decorationPath,
loadChildren: './decorations/decoration.module#DecorationsModule',
canActivate: [LoginGuardHL]
},
{
path: RouteConfig.rankPath,
loadChildren: './ranks/ranks.module#RanksModule',
canActivate: [LoginGuardHL]
},
{
path: RouteConfig.adminPanelPath,
loadChildren: './admin/admin.module#AdminModule',
canActivate: [LoginGuardAdmin]
},
/** Redirect Configuration **/
{
path: '404',
component: NotFoundComponent
},
{
path: '**',
redirectTo: '/404'
} // always configure this last - first matching route gets processed
];
export const appRouting = RouterModule.forRoot(appRoutes);
export const routingComponents = [LoginComponent, SignupComponent, ...armyRoutingComponents, NotFoundComponent];
export const routingProviders = [LoginGuardSQL, LoginGuardHL, LoginGuardMT, LoginGuardAdmin];