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 { MatSidenavModule, } from '@angular/material/sidenav'; import {MatInputModule,} from '@angular/material/input' 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 {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' import { GlobalService} from "../../service/global.service"; /* 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, MatInputModule, MatSidenavModule, NotifyComponent, // OverlayContainer, Loading, ThemeButton, ], // do not need export providers providers: [ GlobalService, Boot, ThemeService, NotifyService, { provide: 'Window', useFactory: () => window } ], 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, MatInputModule, MatSidenavModule, Loading, ThemeButton, // TranslationMenu, // TranslationButton, // Http404, ] }) export class CorifeusMaterialModule { constructor(boot: Boot) { } public static forRoot(): ModuleWithProviders { return { ngModule: CorifeusMaterialModule, // providers: providers, }; } }