12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- import { BrowserModule } from '@angular/platform-browser';
- import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
- import { NgModule, APP_INITIALIZER } from '@angular/core';
- import { FormsModule } from '@angular/forms';
- import {
- MatButtonModule,
- MatTabsModule,
- MatTableModule,
- MatIconModule,
- MatCardModule,
- MatInputModule,
- MatToolbarModule,
- MatDialogModule,
- MatCheckboxModule,
- MatSelectModule,
- MatDatepickerModule,
- MatNativeDateModule,
- } from '@angular/material';
- import { PsRootComponent } from './root.component';
- import { CreateReportComponent } from './create-report.component';
- import { CreateReportItemDialogComponent } from './create-report-item.component';
- import { ReportsComponent } from './reports.component';
- import { AppRoutingModule } from './app-routing.module';
- import { ReportDataService} from './services/reportData.service';
- import { ReportItemService } from './services/reportItem.service';
- import { WindowService } from './services/window.service';
- import { MessengerWatcher } from './services/messenger.service';
- import { EditReportComponent } from './edit-report.component';
- export const initApp = (messengerWatcher: MessengerWatcher) => () => {
- messengerWatcher.watch();
- }
- export const initMessengerWatcher = (reportDataService: ReportDataService) =>
- new MessengerWatcher(reportDataService);
- @NgModule({
- declarations: [
- PsRootComponent,
- ReportsComponent,
- CreateReportComponent,
- EditReportComponent,
- CreateReportItemDialogComponent
- ],
- imports: [
- BrowserModule,
- BrowserAnimationsModule,
- AppRoutingModule,
- FormsModule,
- MatButtonModule,
- MatTabsModule,
- MatTableModule,
- MatIconModule,
- MatCardModule,
- MatInputModule,
- MatToolbarModule,
- MatDialogModule,
- MatCheckboxModule,
- MatSelectModule,
- MatDatepickerModule,
- MatNativeDateModule
- ],
- providers: [
- ReportDataService,
- ReportItemService,
- {
- provide: MessengerWatcher,
- deps: [ReportDataService],
- useFactory: initMessengerWatcher
- },
- {
- provide: APP_INITIALIZER,
- useFactory: initApp,
- deps: [MessengerWatcher],
- multi: true
- },
- {
- provide: WindowService,
- useValue: window
- }
- ],
- bootstrap: [PsRootComponent, CreateReportItemDialogComponent]
- })
- export class PsExpensesModule { }
|