import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { RouterModule } from '@angular/router';
import { TranslateModule } from '@ngx-translate/core';
import { NzIconModule } from 'ng-zorro-antd/icon';
import { NzMenuModule } from 'ng-zorro-antd/menu';
import { NzToolTipModule } from 'ng-zorro-antd/tooltip';
import {
  BixiLayoutContentDirective,
  BixiLayoutHeaderDirective,
  BixiLayoutMenuDirective,
  NzBixiTemplateOutletDirective
} from './layout-cells';

import { BixiHeaderComponent } from './header/header.component';
import { BixiLayoutComponent } from './layout.component';
import { BixiMenuComponent } from './menu/menu.component';

const COMPONENTS = [BixiLayoutComponent, BixiMenuComponent, BixiHeaderComponent];
const BixiDefauyltLayoutCells = [
  BixiLayoutContentDirective,
  BixiLayoutHeaderDirective,
  BixiLayoutMenuDirective,
  NzBixiTemplateOutletDirective
];

@NgModule({
  imports: [CommonModule, RouterModule, NzIconModule, NzMenuModule, TranslateModule, NzToolTipModule],
  declarations: [...COMPONENTS, BixiDefauyltLayoutCells],
  exports: [...COMPONENTS, BixiDefauyltLayoutCells]
})
export class BixiLayoutModule {
}
