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

import {FreeGuard} from '../openaireLibrary/login/freeGuard.guard';
import {PreviousRouteRecorder} from '../openaireLibrary/utils/piwik/previousRouteRecorder.guard';

import {PiwikService} from '../openaireLibrary/utils/piwik/piwik.service';
import {TopicComponent} from "./topic.component";
import {TopicRoutingModule} from "./topic-routing.module";
import {RouterModule} from "@angular/router";
import {FormsModule, ReactiveFormsModule} from "@angular/forms";
import {IndicatorsComponent} from "./indicators.component";
import {AlertModalModule} from "../openaireLibrary/utils/modal/alertModal.module";
import {InputModule} from "../openaireLibrary/dashboard/sharedComponents/input/input.module";
import {ClickModule} from "../openaireLibrary/utils/click/click.module";
import {AdminDashboardGuard} from "../utils/adminDashboard.guard";

@NgModule({
  imports: [
    CommonModule, TopicRoutingModule, ClickModule, RouterModule, FormsModule, AlertModalModule,
    ReactiveFormsModule, InputModule
  ],
  declarations: [
    TopicComponent, IndicatorsComponent
  ],
  providers: [
    AdminDashboardGuard, PreviousRouteRecorder,
    PiwikService
  ],
  exports: [
    TopicComponent
  ]
})
export class TopicModule {
}
