import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';

import { ArtRoutingModule } from './art-routing.module';
import { CanDeactivateGuard, PlayComponent } from './play.component';
import { FillerModule } from '../../lib/filler/filler.module';
import { ColorPickerModule } from 'ngx-color-picker';
import { ColorBoxComponent } from './color-box.component';
import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
import { UploadComponent } from './upload.component';
import { UploadBoxComponent } from './upload-box.component';
import { UtilsModule } from '../../lib/utils/utils.module';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { CheckerComponent } from './checker.component';
import { CheckerUploadComponent } from './checker-upload.component';
import { PotraceComponent } from './potrace.component';
import { PlayUpdateComponent } from './play-update.component';
import { ColorMergeComponent } from './color-merge.component';
import { NzMessageModule } from 'ng-zorro-antd/message';
import { NzModalModule } from 'ng-zorro-antd/modal';

import { ColorPickerComponent } from './color-picker.component';

import { DragDropModule } from '@angular/cdk/drag-drop';
import { NzIconModule } from 'ng-zorro-antd/icon';
import { NzButtonModule } from 'ng-zorro-antd/button';
import { NzSwitchModule } from 'ng-zorro-antd/switch';
import { NzCheckboxModule } from 'ng-zorro-antd/checkbox';


import { PageModule } from '../page/page.module';
import { NzSpinModule } from 'ng-zorro-antd/spin';
import { SortablejsModule } from 'src/app/lib/sortablejs/sortablejs.module';
import { SvgComponent } from './svg.component';
import { PrecheckerComponent } from './prechecker.component';
import { PrecheckerUploadComponent } from './prechecker-upload.component';
import { SegmentComponent } from './segment.component';
import { Svg2Component } from './svg2.component';
import { Svg3Component } from './svg3.component';


@NgModule({
  declarations: [
    PlayComponent,
    ColorBoxComponent,
    UploadComponent,
    UploadBoxComponent,
    CheckerComponent,
    CheckerUploadComponent,
    PotraceComponent,
    PlayUpdateComponent,
    ColorMergeComponent,
    ColorPickerComponent,
    SvgComponent,
    PrecheckerComponent,
    PrecheckerUploadComponent,
    SegmentComponent,
    Svg2Component,
    Svg3Component,
  ],
  imports: [
    CommonModule,
    ArtRoutingModule,
    FillerModule,
    ColorPickerModule,
    PageModule, //meta编辑框
    NgbModule,
    UtilsModule,
    ReactiveFormsModule,
    FormsModule,
    NzMessageModule,
    NzModalModule,
    DragDropModule,
    NzIconModule,
    NzButtonModule,
    NzSwitchModule,
    NzCheckboxModule,
    NzSpinModule,
    SortablejsModule,
  ],
  providers: [CanDeactivateGuard]
})
export class ArtModule { }
