import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { DashboardContainerComponent } from './dashboard-container/dashboard-container.component';
import { HeaderComponent } from './shared/header/header.component';
import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
import { SvgIconService } from "./utility/svg-icon/svg-icon.service";
import { SvgIconComponent } from "./utility/svg-icon/svg-icon.component";
import {
  dapplookerLogo,
  discordLogo,
  twitterLogo,
  addIcon,
  binIcon,
  greenTick,
  uploadIcon,
  dappIcon,
  bellIcon,
  searchIcon,
  questionIcon,
  uploadLogo,
  loader,
  uploadIconError,
  medium,
  dappsNotFound,
  all,
  popular,
  defi,
  games,
  governance,
  other,
  paperPlane,
  bulb,
  ethereum,
  graphprotocol,
  etherscan,
  coinmarketcap,
  poa,
  ipfs,
  ens,
  xdai,
  warn,
  nft,
  newIcon,
  arrowIcon,
  starIcon,
  eyeOpenIcon,
  area,
  bar,
  combo,
  funnel,
  guage,
  line,
  map,
  number,
  pie,
  progress,
  row,
  scatter,
  table,
  trend,
  queryExecutionIcon,
  editIcon,
  browseChartIcon,
  dashboard,
  chart,
  datasetIcon,
  protocolIcon,
  thegraphnetwork,
  cancelIcon,
  polygon,
  polygonnetwork,
  colonyNetwork,
  aave,
  mintbase,
  fantomLogoWithName,
  fantom,
  settingIcon,
  arrowUp,
  theGraphLogo,
  sqlQueryIcon,
  visualAnalyticsIcon,
  integrationIcon,
  shareDashboardIcon,
  discordIcon,
  dapplookerLogoWithText,
  coinGeckoLogo,
  joystreamLogo,
  bitcannaLogo,
  analysis,
  moonbeamLogo,
} from "./utility/svg-icon/svg-icon";
import { FooterComponent } from './shared/footer/footer.component';
import { IframepipePipe } from './iframepipe.pipe';
@NgModule({
  declarations: [
    AppComponent,
    DashboardContainerComponent,
    HeaderComponent,
    SvgIconComponent,
    FooterComponent,
    IframepipePipe,
  ],
  imports: [
    BrowserModule,
    AppRoutingModule,
    NgbModule
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule {
  constructor(private svgIconService: SvgIconService) {
    this.svgIconService.registerIcons([
      dapplookerLogo,
      discordLogo,
      twitterLogo,
      addIcon,
      binIcon,
      greenTick,
      uploadIcon,
      dappIcon,
      bellIcon,
      searchIcon,
      questionIcon,
      uploadLogo,
      loader,
      uploadIconError,
      medium,
      dappsNotFound,
      all,
      popular,
      defi,
      games,
      governance,
      other,
      paperPlane,
      bulb,
      ethereum,
      graphprotocol,
      etherscan,
      coinmarketcap,
      poa,
      ipfs,
      ens,
      xdai,
      warn,
      nft,
      newIcon,
      arrowIcon,
      starIcon,
      dashboard,
      chart,
      browseChartIcon,
      editIcon,
      queryExecutionIcon,
      datasetIcon,
      protocolIcon,
      eyeOpenIcon,
      area,
      bar,
      combo,
      funnel,
      guage,
      line,
      map,
      number,
      pie,
      progress,
      row,
      scatter,
      table,
      trend,
      datasetIcon,
      protocolIcon,
      thegraphnetwork,
      polygon,
      cancelIcon,
      polygonnetwork,
      colonyNetwork,
      aave,
      mintbase,
      fantomLogoWithName,
      fantom,
      settingIcon,
      arrowUp,
      theGraphLogo,
      sqlQueryIcon,
      visualAnalyticsIcon,
      integrationIcon,
      shareDashboardIcon,
      discordIcon,
      dapplookerLogoWithText,
      coinGeckoLogo,
      joystreamLogo,
      bitcannaLogo,
      analysis,
      moonbeamLogo,
    ]);
  }
}
