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

67 lines
1.9 KiB
TypeScript

import {RouterModule, Routes} from '@angular/router';
import {NotFoundComponent} from './common/not-found';
import {LoginComponent, LoginGuardAdmin, LoginGuardHL, LoginGuardMT} from './login';
import {armyRoutes, armyRoutingComponents} from './army/army.routing';
import {SignupComponent} from './login/signup.component';
import {RouteConfig} from './app.config';
import {NavigationHeaderComponent} from './common/navigation/navigation-header.component';
import {SidenavListComponent} from './common/navigation/sidenav-list.component';
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.request,
loadChildren: './request/request.module#RequestModule'
},
{
path: RouteConfig.managePath,
loadChildren: './manage/manage.module#ManageModule',
canActivate: [LoginGuardHL]
},
{
path: RouteConfig.publicPath,
loadChildren: './pub/public.module#PublicModule'
},
{
path: RouteConfig.adminPanelPath,
loadChildren: './admin/admin.module#AdminModule',
canActivate: [LoginGuardAdmin]
},
{
path: RouteConfig.loginPath,
component: LoginComponent
},
{
path: RouteConfig.signUpPath,
component: SignupComponent
},
/** 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 = [...armyRoutingComponents, LoginComponent, SignupComponent, NotFoundComponent,
NavigationHeaderComponent, SidenavListComponent];
export const routingProviders = [LoginGuardHL, LoginGuardMT, LoginGuardAdmin];