import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { HotelManageComponent } from './hotel-manage.component';
import { TabViewModule } from 'primeng/tabview';
import { RouterModule, Routes } from '@angular/router';
import { FormsModule } from '@angular/forms';
import { HotelRoomModule } from './hotel-room/hotel-room.module';
import { HotelSeasonModule } from './hotel-season/hotel-season.module';
import { RateSettingModule } from './rate-setting/rate-setting.module';
import {MatMenuModule} from '@angular/material/menu';
import { HotelMealModule } from './hotel-meal/hotel-meal.module';
import { HotelBlockDateModule } from './hotel-block-date/hotel-block-date.module';
import { HotelOffersModule } from './hotel-offers/hotel-offers.module';
import { HotelSupplementsModule } from './hotel-supplements/hotel-supplements.module';
import { AllocationModule } from './allocation/allocation.module';
import { HotelUpdateAdultModule } from './hotel-update-adult/hotel-update-adult.module';
import { HotelUpdateChildModule } from './hotel-update-child/hotel-update-child.module';
import { HotelUpdateCancellationModule } from './hotel-update-cancellation/hotel-update-cancellation.module';
import { HotelUpdateNationalityModule } from './hotel-update-nationality/hotel-update-nationality.module';
import { HotelUpdateMealAddOnModule } from './hotel-update-meal-add-on/hotel-update-meal-add-on.module';
import { HotelUpdateAllocationModule } from './hotel-update-allocation/hotel-update-allocation.module';
import { OverviewModule } from './overview/overview.module';
import { MinimumStayModule } from './minimum-stay/minimum-stay.module';

const routes: Routes = [
  {
    path: ':Hotel_Eaxtranet_Id',
    component:HotelManageComponent,
  },
  {
    path: 'RoomSearch',
    loadChildren: () =>
      import('./hotel-room/hotel-room.module').then(
        (m) => m.HotelRoomModule
      ),
  },
  {
    path: 'SeasonSearch',
    loadChildren: () =>
      import('./hotel-season/hotel-season.module').then(
        (m) => m.HotelSeasonModule
      ),
  },
  {
    path: 'RateSettingSearch',
    loadChildren: () =>
      import('./rate-setting/rate-setting.module').then(
        (m) => m.RateSettingModule ),
  },
  // {
  //   path: 'Allocation',
  //   loadChildren: () =>
  //     import('./allocation/allocation.module').then(
  //       (m) => m.AllocationModule
  //     ),
  // },
  {
    path: 'MealSearch',
    loadChildren: () =>
      import('./hotel-meal/hotel-meal.module').then(
        (m) => m.HotelMealModule
      ),
  },
  {
    path: 'BlockDateSearch',
    loadChildren: () =>
      import('./hotel-block-date/hotel-block-date.module').then(
        (m) => m.HotelBlockDateModule
      ),
  },
  {
    path: 'UpdateAdult',
    loadChildren: () =>
      import('./hotel-update-adult/hotel-update-adult.module').then(
        (m) => m.HotelUpdateAdultModule
      ),
  },
  {
    path: 'UpdateChild',
    loadChildren: () =>
      import('./hotel-update-child/hotel-update-child.module').then(
        (m) => m.HotelUpdateChildModule
      ),
  },
  {
    path: 'UpdateCancellation',
    loadChildren: () =>
      import('./hotel-update-cancellation/hotel-update-cancellation.module').then(
        (m) => m.HotelUpdateCancellationModule
      ),
  },
  {
    path: 'UpdateNationality',
    loadChildren: () =>
      import('./hotel-update-nationality/hotel-update-nationality.module').then(
        (m) => m.HotelUpdateNationalityModule
      ),
  },
  {
    path: 'UpdateMealAddOn',
    loadChildren: () =>
      import('./hotel-update-meal-add-on/hotel-update-meal-add-on.module').then(
        (m) => m.HotelUpdateMealAddOnModule
      ),
  },
  {
    path: 'UpdateAllocation',
    loadChildren: () =>
      import('./hotel-update-allocation/hotel-update-allocation.module').then(
        (m) => m. HotelUpdateAllocationModule
      ),
  },
  {
    path: 'Offers',
    loadChildren: () =>
      import('./hotel-offers/hotel-offers.module').then(
        (m) => m.HotelOffersModule
      ),
  },
  {
    path: 'Supplements',
    loadChildren: () =>
      import('./hotel-supplements/hotel-supplements.module').then(
        (m) => m.HotelSupplementsModule
      ),
  },
  {
    path: 'OverView',
    loadChildren: () =>
      import('./overview/overview.module').then(
        (m) => m.OverviewModule
      ),
  },
  {
    path: 'MinimumStay',
    loadChildren: () =>
      import('./minimum-stay/minimum-stay.module').then(
        (m) => m.MinimumStayModule
      ),
  },
]


@NgModule({
  declarations: [
    HotelManageComponent,
  ],
  imports: [
    CommonModule,
    FormsModule,
    MatMenuModule,
    HotelRoomModule,
    TabViewModule,
    AllocationModule,
    HotelSeasonModule,
    RateSettingModule,
    HotelUpdateAdultModule,
    HotelUpdateChildModule,
    HotelUpdateCancellationModule,
    HotelUpdateNationalityModule,
    HotelUpdateMealAddOnModule,
    HotelUpdateAllocationModule,
    HotelMealModule,
    OverviewModule,
    HotelBlockDateModule,
    HotelOffersModule,
    HotelSupplementsModule,
    MinimumStayModule,
    RouterModule.forChild(routes),
    
]
})
export class HotelManageModule { }
