mirror of
https://github.com/Lissy93/happy-app.git
synced 2021-05-12 19:52:18 +03:00
98 lines
3.4 KiB
TypeScript
98 lines
3.4 KiB
TypeScript
import { NgModule, ErrorHandler, Injectable, Injector } from "@angular/core";
|
|
import { HttpModule } from "@angular/http";
|
|
import { FormsModule, ReactiveFormsModule } from "@angular/forms";
|
|
import { BrowserModule } from "@angular/platform-browser";
|
|
import { App } from "./app";
|
|
|
|
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
|
|
|
import { HomeComponent } from "./pages/home/home.component";
|
|
import { homeRouting } from "./pages/home/home.route";
|
|
import { HomeService } from "./pages/home/home.service";
|
|
import { SubmitResponseComponent } from "./pages/submit-response/submit-response.component";
|
|
|
|
import { NavbarComponent } from './components/navbar/navbar.component';
|
|
import { TimeChartComponent } from './components/time-chart/time-chart.component';
|
|
import { CalendarChartComponent } from './components/calendar-chart/calendar-chart.component';
|
|
import { OverviewChartComponent } from './components/overview-chart/overview-chart.component';
|
|
import { MaterialModule } from './material.module';
|
|
import { SharedModule } from "./shared-helpers.module";
|
|
import { LoaderComponent } from "./components/loader/loader.component";
|
|
import { TeamComponent } from "./pages/team/team.component";
|
|
import { TeamService } from "./services/team.service";
|
|
import { AllTeamsService } from "./services/all-teams.service";
|
|
import { GridChartComponent } from "./components/grid-chart/grid-chart.component";
|
|
import { DayBreakdownChartComponent } from "./components/day-breakdown-chart/day-breakdown-chart";
|
|
import { CommonService } from "./services/common.service";
|
|
import { SplashScreenComponent } from "./components/splash-screen/splash-screen";
|
|
import { AppFeedbackComponent } from "./components/app-feedback/app-feedback";
|
|
import { AppHelpComponent } from "./components/app-help/app-help";
|
|
import { MessageChartComponent } from "./components/message-chart/message-chart";
|
|
import { Angulartics2Module, Angulartics2GoogleTagManager } from "angulartics2";
|
|
import * as Rollbar from 'rollbar';
|
|
|
|
const rollbarConfig = {
|
|
accessToken: 'e4289419268448dfb7752adb5d35b050',
|
|
captureUncaught: true,
|
|
captureUnhandledRejections: true,
|
|
};
|
|
|
|
@Injectable()
|
|
export class RollbarErrorHandler implements ErrorHandler {
|
|
constructor(private injector: Injector) { }
|
|
handleError(err:any) : void {
|
|
// this.injector.get(Rollbar);
|
|
// let rollbar = this.injector.get(Rollbar);
|
|
// rollbar.error(err.originalError || err);
|
|
}
|
|
}
|
|
|
|
@NgModule({
|
|
imports: [
|
|
MaterialModule,
|
|
BrowserModule,
|
|
FormsModule,
|
|
ReactiveFormsModule,
|
|
HttpModule,
|
|
homeRouting,
|
|
BrowserAnimationsModule,
|
|
SharedModule,
|
|
Angulartics2Module.forRoot([ Angulartics2GoogleTagManager ])
|
|
],
|
|
declarations: [
|
|
App,
|
|
HomeComponent,
|
|
TeamComponent,
|
|
NavbarComponent,
|
|
TimeChartComponent,
|
|
OverviewChartComponent,
|
|
CalendarChartComponent,
|
|
GridChartComponent,
|
|
DayBreakdownChartComponent,
|
|
LoaderComponent,
|
|
SplashScreenComponent,
|
|
AppFeedbackComponent,
|
|
AppHelpComponent,
|
|
MessageChartComponent,
|
|
SubmitResponseComponent
|
|
],
|
|
providers: [
|
|
HomeService,
|
|
TeamService,
|
|
AllTeamsService,
|
|
CommonService,
|
|
SharedModule,
|
|
{ provide: ErrorHandler, useClass: RollbarErrorHandler },
|
|
{ provide: Rollbar,
|
|
useFactory: () => {
|
|
return new Rollbar(rollbarConfig)
|
|
}
|
|
}
|
|
],
|
|
bootstrap: [
|
|
App
|
|
],
|
|
entryComponents: [AppFeedbackComponent, AppHelpComponent]
|
|
})
|
|
export class AppModule {}
|