// Angular Core
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';

// Modules
import { PageNotFoundComponent } from './feature-modules/page-not-found/page-not-found.component';

// Auth Guard
import { AuthGuard } from './feature-modules/auth/guards/auth.guard';

// Components
import { ThankyouComponent } from './components/thankyou/thankyou.component';

const routes: Routes = [
  { path: '', redirectTo:'', pathMatch: 'full'},
  { path: 'market', loadChildren: () => import('./feature-modules/auth/auth.module').then(m => m.AuthModule) },
  { path: 'market/admin', loadChildren: () => import('./feature-modules/admin/admin.module').then(m => m.AdminModule) },
  { path: 'market/thankyou', component : ThankyouComponent, data: {title: 'thank you'}, canActivate: [AuthGuard]},
  { path: 'market', loadChildren: () => import('./feature-modules/user/user.module').then(m => m.UserModule) },
  { path: 'market/supplier', loadChildren: () => import('./feature-modules/supplier/supplier.module').then(m => m.SupplierModule) },
  { path: '**', component: PageNotFoundComponent, data: {title: 'Page not found'}}
];

@NgModule({
  imports: [RouterModule.forRoot(routes)],
  exports: [RouterModule]
})
export class AppRoutingModule { }
