import {NgModule, ModuleWithProviders} from '@angular/core'; import {CorifeusModule} from '../web/module'; import {MatIconModule} from '@angular/material/icon' import {MatProgressBarModule} from '@angular/material/progress-bar' import {MatMenuModule,} from '@angular/material/menu' import {MatButtonModule,} from '@angular/material/button' import {MatTooltipModule,} from '@angular/material/tooltip' import {MatToolbarModule,} from '@angular/material/toolbar' import {MatCardModule,} from '@angular/material/card' import {MatSnackBarModule,} from '@angular/material/snack-bar' import {Boot} from './boot'; import {ThemeService} from './services/theme' import {NotifyService} from './services/notify/notify' import {NotifyComponent} from './services/notify/notify-component' import {Http404} from './component/cory-mat-http-404' import {Loading} from './component/cory-mat-loading' import {ThemeButton} from './component/cory-mat-theme/cory-mat-theme-button' import {ThemeMenu} from './component/cory-mat-theme/cory-mat-theme-menu' import {TranslationButton} from './component/cory-mat-translation/cory-mat-translation-button' import {TranslationMenu} from './component/cory-mat-translation/cory-mat-translation-menu' import { CommonModule } from '@angular/common' /* fix: allow users to disable the sanity checks @NgModule({ providers: [ {provide: MATERIAL_SANITY_CHECKS, useValue: false} ] // other config }); https://github.com/angular/material2/issues/4125 */ // https://github.com/angular/material2/pull/4178 // exports = component /*** * NEVER USE A EXPORT * AS, NEED THE EXACT COMPONENT FOR INJECTABLE FUNCTION!!!! const materialModules = [ MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule, MatCheckboxModule, MatChipsModule, MatCommonModule, MatDatepickerModule, MatDialogModule, MatExpansionModule, MatGridListModule, MatIconModule, MatInputModule, MatLineModule, MatListModule, MatMenuModule, MatNativeDateModule, MatOptionModule, MatPaginatorModule, MatProgressBarModule, MatProgressSpinnerModule, MatRadioModule, MatRippleModule, MatSelectModule, MatSidenavModule, MatSliderModule, MatSlideToggleModule, MatSnackBarModule, MatSortModule, MatTableModule, MatTabsModule, MatToolbarModule, MatTooltipModule, // OverlayContainer, // MatSelectionList, ] */ @NgModule({ imports: [ CorifeusModule, CommonModule, // material /* MatAutocompleteModule, MatButtonToggleModule, MatChipsModule, MatCommonModule, MatDatepickerModule, MatDialogModule, MatExpansionModule, MatGridListModule, MatLineModule, MatListModule, MatNativeDateModule, MatOptionModule, MatPaginatorModule, MatProgressSpinnerModule, MatRadioModule, MatRippleModule, MatSelectModule, MatSidenavModule, MatSliderModule, MatSlideToggleModule, MatSortModule, MatTableModule, MatTabsModule, */ // OverlayContainer, // MatSelectionList, MatIconModule, MatProgressBarModule, MatMenuModule, MatButtonModule, MatTooltipModule, MatToolbarModule, MatCardModule, MatSnackBarModule, // material modules ], declarations: [ NotifyComponent, // OverlayContainer, Loading, ThemeMenu, ThemeButton, TranslationMenu, TranslationButton, Http404, ], // do not need export providers providers: [ Boot, ThemeService, NotifyService, ], exports: [ CorifeusModule, // material modules /* MatAutocompleteModule, MatButtonModule, MatButtonToggleModule, MatCardModule, MatCheckboxModule, MatChipsModule, MatCommonModule, MatDatepickerModule, MatDialogModule, MatExpansionModule, MatGridListModule, MatInputModule, MatLineModule, MatListModule, MatNativeDateModule, MatOptionModule, MatPaginatorModule, MatProgressSpinnerModule, MatRadioModule, MatRippleModule, MatSelectModule, MatSidenavModule, MatSliderModule, MatSlideToggleModule, MatSortModule, MatTableModule, MatTabsModule, MatToolbarModule, MatTooltipModule, // OverlayContainer, // MatSelectionList, // material modules */ MatIconModule, MatProgressBarModule, MatMenuModule, MatButtonModule, MatTooltipModule, MatToolbarModule, MatCardModule, MatSnackBarModule, Loading, ThemeMenu, ThemeButton, TranslationMenu, TranslationButton, Http404, ], entryComponents: [ NotifyComponent, // OverlayContainer, ] }) export class CorifeusMaterialModule { constructor(boot: Boot) { } public static forRoot(): ModuleWithProviders<CorifeusMaterialModule> { return { ngModule: CorifeusMaterialModule, // providers: providers, }; } }