import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { RouterModule, Routes } from '@angular/router';
import { ActivityOptionAddComponent } from './activity-option-add/activity-option-add.component';
import { ActivityOptionSearchComponent } from './activity-option-search/activity-option-search.component';
import { MatCheckboxModule } from '@angular/material/checkbox';
import { NgSelectModule } from '@ng-select/ng-select';
import { MatMenuModule } from '@angular/material/menu';

import { ButtonModule } from 'primeng/button';
import { InputTextModule } from 'primeng/inputtext';
import { PaginatorModule } from 'primeng/paginator';
import { TableModule } from 'primeng/table';
import { ToolbarModule } from 'primeng/toolbar';
import { CalendarModule } from 'primeng/calendar';
import { ActivityOptionPolicyComponent } from './activity-option-policy/activity-option-policy.component';
import { ActivityViewOptionComponent } from './activity-view-option/activity-view-option.component';
import { ActivityEditOptionComponent } from './activity-edit-option/activity-edit-option.component';
import { ActivityEditPriceComponent } from './activity-edit-price/activity-edit-price.component';
import { ActivityEditCancellationPolicyComponent } from './activity-edit-cancellation-policy/activity-edit-cancellation-policy.component';

const routes: Routes = [
  {
    path: 'Add',
    component: ActivityOptionAddComponent,
  },
  {
    path: 'Search',
    component: ActivityOptionSearchComponent,
  },
  {
    path: 'Policy',
    component: ActivityOptionPolicyComponent,
  },
  {
    path: 'View',
    loadChildren: () => import("./activity-view-option/activity-view.module").then((m) => m.ActivityViewModule)
  },
  {
    path: 'Edit',
    component: ActivityEditOptionComponent,
  },
  {
    path: 'EditPrice',
    component: ActivityEditPriceComponent,
  },
  {
    path: 'EditCancellationPolicy',
    component: ActivityEditCancellationPolicyComponent,
  },
]

@NgModule({
  declarations: [
    ActivityOptionAddComponent,
    ActivityOptionSearchComponent,
    ActivityOptionPolicyComponent,
    ActivityEditOptionComponent,
    ActivityViewOptionComponent,
    ActivityEditCancellationPolicyComponent,
    ActivityEditPriceComponent

  ],
  imports: [
    CommonModule,
    RouterModule.forChild(routes),
    MatCheckboxModule,
    NgSelectModule,
    TableModule,
    ToolbarModule,
    MatMenuModule,
    PaginatorModule,
    CalendarModule,
    InputTextModule,
    ButtonModule,
  ]
})
export class ActivityOptionModule { }
