import { CommonModule } from '@angular/common'; import { NgModule, Optional, SkipSelf } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { RouterModule } from '@angular/router'; import { TranslateModule } from '@ngx-translate/core'; import { FooterComponent } from './components/footer/footer.component'; import { HeaderComponent } from './components/header/header.component'; import { HomeComponent } from './components/home/home.component'; import { LoginComponent } from './components/login/login.component'; import { LogoComponent } from './components/logo/logo.component'; import { LanguageSelectorComponent } from './components/selectors/language-selector/language-selector.component'; import { ThemeSelectorComponent } from './components/selectors/theme-selector/theme-selector.component'; import { NavigationComponent } from './components/sibebar/navigation/navigation.component'; import { throwIfAlreadyLoaded } from './guards/module-import.guard'; @NgModule({ declarations: [ FooterComponent, HeaderComponent, HomeComponent, LanguageSelectorComponent, LoginComponent, LogoComponent, NavigationComponent, ThemeSelectorComponent, ], imports: [CommonModule, FormsModule, RouterModule, TranslateModule], exports: [HeaderComponent, FooterComponent, NavigationComponent, LoginComponent, LogoComponent], }) export class CoreModule { constructor(@Optional() @SkipSelf() parentModule: CoreModule) { throwIfAlreadyLoaded(parentModule, 'CoreModule'); } }