import { NgModule } from '@angular/core'; import { Routes, RouterModule } from '@angular/router'; import { AuthGuard } from '../auth/auth-guard.service'; import { RunningTablesResolver } from './running-tables/running-tables-resolver.service'; import { RunningTablesComponent } from './running-tables/running-tables.component'; import { MenuCategoriesComponent } from './menu-categories/menu-categories.component'; import { MenuCategoriesResolver } from './menu-categories/menu-categories-resolver.service'; import { ProductsComponent } from './products/products.component'; import { ProductsResolver } from './products/products-resolver.service'; import { BillsComponent } from './bills/bills.component'; import { BillResolver } from './bills/bill-resolver.service'; import { SalesHomeComponent } from './home/sales-home.component'; const routes: Routes = [ { path: 'tables', component: RunningTablesComponent, canActivate: [AuthGuard], data: { permission: 'Guest Book' }, resolve: { list: RunningTablesResolver } }, { path: 'tables/:id', component: RunningTablesComponent, canActivate: [AuthGuard], data: { permission: 'Guest Book' }, resolve: { item: RunningTablesResolver } }, { path: 'bill', component: BillsComponent, canActivate: [AuthGuard], // canDeactivate: [CanDeactivateGuard], data: { permission: 'Guest Book' }, resolve: { item: BillResolver }, children: [ { path: '', component: SalesHomeComponent, canActivate: [AuthGuard], data: { permission: 'Guest Book' }, resolve: { list: MenuCategoriesResolver } }, { path: 'menu-categories', component: MenuCategoriesComponent, canActivate: [AuthGuard], data: { permission: 'Guest Book' }, resolve: { list: MenuCategoriesResolver } }, { path: 'products/:id', component: ProductsComponent, canActivate: [AuthGuard], data: { permission: 'Guest Book' }, resolve: { list: ProductsResolver } }, ] }, { path: '', redirectTo: 'tables', pathMatch: 'full' }, ]; @NgModule({ imports: [RouterModule.forChild(routes)], exports: [RouterModule], providers: [ RunningTablesResolver, MenuCategoriesResolver, ProductsResolver ] }) export class SalesRoutingModule { }