import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FancyTableComponent } from './fancy-table.component';
import { FormsModule } from '@angular/forms';
import {
  NbButtonModule,
  NbDatepickerModule,
  NbCalendarRangeModule,
  NbCardModule,
  NbCheckboxModule,
  NbDialogModule,
  NbIconModule,
  NbInputModule,
  NbSelectModule,
  NbTooltipModule,
  NbAlertModule,
  NbSpinnerModule,
} from '@nebular/theme';
import { PagerModule } from '../pager/pager.module';
import { CurrencyInputModule } from '../currency-input/currency-input.module';
import { FancyTableEditorComponent } from './fancy-table-editor/fancy-table-editor.component';
import { RightClickMenuModule } from '../../directives/right-click-menu/right-click-menu.module';
import { DropDownListModule } from '../drop-down-list/drop-down-list.module';
import { ConfirmDialogComponent } from './confirm-dialog/confirm-dialog.component';
import { DragDropModule } from '@angular/cdk/drag-drop';
import { InitFocusModule } from '../../directives/init-focus/init-focus.module';
import { InfiniteScrollModule } from "ngx-infinite-scroll";
import { MultiRecordPickerDlgComponent } from './multi-record-picker-dlg/multi-record-picker-dlg.component';
const components = [
  FancyTableComponent,
  FancyTableEditorComponent,
  ConfirmDialogComponent,
]

@NgModule({
    declarations: [...components, MultiRecordPickerDlgComponent],
    imports: [
        CommonModule,
        FormsModule,
        NbButtonModule,
        NbCalendarRangeModule,
        NbCardModule,
        NbCheckboxModule,
        NbDatepickerModule,
        NbDialogModule,
        NbIconModule,
        NbInputModule,
        NbSelectModule,
        NbTooltipModule,
        NbAlertModule,
        NbSpinnerModule,
        CurrencyInputModule,
        DragDropModule,
        DropDownListModule,
        PagerModule,
        RightClickMenuModule,
        InitFocusModule,
        InfiniteScrollModule
    ],
    exports: [...components]
})
export class FancyTableModule { }
