ngx-admin/src/app/@theme/theme.module.ts

90 lines
2 KiB
TypeScript
Raw Normal View History

import { ModuleWithProviders, NgModule } from '@angular/core';
2017-04-13 14:24:23 +03:00
import { CommonModule } from '@angular/common';
import { MatRippleModule } from '@angular/material/core';
2017-04-13 14:24:23 +03:00
import {
NbActionsModule,
NbLayoutModule,
NbMenuModule,
NbSearchModule,
NbSidebarModule,
NbUserModule,
NbContextMenuModule,
NbButtonModule,
NbSelectModule,
NbIconModule,
NbThemeModule,
} from '@nebular/theme';
import { NbEvaIconsModule } from '@nebular/eva-icons';
import { NbSecurityModule } from '@nebular/security';
import {
FooterComponent,
HeaderComponent,
SearchInputComponent,
TinyMCEComponent,
} from './components';
import {
CapitalizePipe,
PluralPipe,
RoundPipe,
TimingPipe,
NumberWithCommasPipe,
} from './pipes';
import {
OneColumnLayoutComponent,
ThreeColumnsLayoutComponent,
TwoColumnsLayoutComponent,
} from './layouts';
2020-03-10 15:57:33 +03:00
import { MATERIAL_LIGHT_THEME } from './styles/theme.material-light';
import { MATERIAL_DARK_THEME } from './styles/theme.material-dark';
2017-04-13 14:24:23 +03:00
const NB_MODULES = [
NbLayoutModule,
NbMenuModule,
NbUserModule,
NbActionsModule,
NbSearchModule,
NbSidebarModule,
NbContextMenuModule,
NbSecurityModule,
NbButtonModule,
NbSelectModule,
NbIconModule,
NbEvaIconsModule,
2017-04-13 14:24:23 +03:00
];
const COMPONENTS = [
2017-04-28 15:14:05 +03:00
HeaderComponent,
FooterComponent,
SearchInputComponent,
TinyMCEComponent,
OneColumnLayoutComponent,
ThreeColumnsLayoutComponent,
TwoColumnsLayoutComponent,
2017-04-13 14:24:23 +03:00
];
2017-08-06 15:51:07 +03:00
const PIPES = [
CapitalizePipe,
PluralPipe,
RoundPipe,
TimingPipe,
NumberWithCommasPipe,
];
2017-04-13 14:24:23 +03:00
@NgModule({
imports: [CommonModule, MatRippleModule, ...NB_MODULES],
exports: [CommonModule, MatRippleModule, ...PIPES, ...COMPONENTS],
declarations: [...COMPONENTS, ...PIPES],
2017-04-13 14:24:23 +03:00
})
export class ThemeModule {
static forRoot(): ModuleWithProviders<ThemeModule> {
return {
ngModule: ThemeModule,
providers: [
...NbThemeModule.forRoot(
2020-03-10 15:57:33 +03:00
{ name: 'material-light' },
[MATERIAL_LIGHT_THEME, MATERIAL_DARK_THEME],
).providers,
],
};
}
2017-04-13 14:24:23 +03:00
}