import { NgModule } from '@angular/core'; import { Routes, RouterModule } from '@angular/router'; import { PublicViewComponent } from './pages/public-view/public-view.component'; import { PublicAppComponent } from './public-app.component'; import { PublicTournamentViewComponent } from './pages/public-tournament-view/public-tournament-view.component'; import { CheckoutComponent } from '../shared/pages/checkout/checkout.component'; import { LoggedInGuard } from '../shared/guards/logged.in.guard'; import { TicketComponent } from '../shared/pages/tickets/ticket/ticket.component'; const public_routes: Routes = [ { path: ':url', component: PublicAppComponent, children : [ { path: '', component: PublicViewComponent }, { path: 'tournaments/:slug', component: PublicTournamentViewComponent }, { path: 'checkout', component: CheckoutComponent, canActivate: [LoggedInGuard] }, { path: 'ticket', children : [ { path: ':sold_ticket_id', component: TicketComponent, canActivate: [LoggedInGuard] } ] } ] } ]; @NgModule({ imports: [RouterModule.forChild(public_routes)], exports: [RouterModule] }) export class PublicRoutingModule { }