UNPKG

@universis/common

Version:

Universis - common directives and services

66 lines (65 loc) 6.84 kB
import { ErrorHandler, NgModule, Optional, SkipSelf } from '@angular/core'; import { CommonModule } from '@angular/common'; import { FormsModule } from '@angular/forms'; import { TranslateModule, TranslateService } from '@ngx-translate/core'; import { ErrorBaseComponent, HttpErrorComponent } from './components/error-base/error-base.component'; import { ErrorRoutingModule } from './error.routing'; import { ErrorService, ErrorModalComponent } from './error.service'; import { ErrorsHandler } from './error.handler'; import { environment } from '../environments/environment'; import { ERROR_LOCALES } from './i18n'; export class ErrorModule { constructor(parentModule, _translateService) { this._translateService = _translateService; this.ngOnInit(); } static forRoot() { return { ngModule: ErrorModule, providers: [ ErrorService, { provide: ErrorHandler, useClass: ErrorsHandler, } ] }; } // tslint:disable-next-line:use-life-cycle-interface ngOnInit() { environment.languages.forEach(language => { if (ERROR_LOCALES.hasOwnProperty(language)) { this._translateService.setTranslation(language, ERROR_LOCALES[language], true); } }); } } ErrorModule.decorators = [ { type: NgModule, args: [{ imports: [ CommonModule, FormsModule, TranslateModule, ErrorRoutingModule ], providers: [], declarations: [ ErrorBaseComponent, HttpErrorComponent, ErrorModalComponent ], exports: [ ErrorBaseComponent, HttpErrorComponent ], entryComponents: [ ErrorModalComponent ] },] } ]; /** @nocollapse */ ErrorModule.ctorParameters = () => [ { type: ErrorModule, decorators: [{ type: Optional }, { type: SkipSelf }] }, { type: TranslateService } ]; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHVuaXZlcnNpcy9jb21tb24vIiwic291cmNlcyI6WyJlcnJvci9lcnJvci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBdUIsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEUsT0FBTyxFQUNILGtCQUFrQixFQUNsQixrQkFBa0IsRUFDckIsTUFBTSw4Q0FBOEMsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUUxRCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sUUFBUSxDQUFDO0FBeUJyQyxNQUFNO0lBRUYsWUFBcUMsWUFBeUIsRUFBVSxpQkFBbUM7UUFBbkMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtRQUN2RyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFPO1FBQ1YsT0FBTztZQUNILFFBQVEsRUFBRSxXQUFXO1lBQ3JCLFNBQVMsRUFBRTtnQkFDUCxZQUFZO2dCQUNaO29CQUNJLE9BQU8sRUFBRSxZQUFZO29CQUNyQixRQUFRLEVBQUUsYUFBYTtpQkFDMUI7YUFDSjtTQUNKLENBQUM7SUFDTixDQUFDO0lBRUQsb0RBQW9EO0lBQ3BELFFBQVE7UUFDSixXQUFXLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBRSxRQUFRLENBQUMsRUFBRTtZQUN0QyxJQUFJLGFBQWEsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEVBQUU7Z0JBQ3hDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQzthQUNsRjtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7O1lBakROLFFBQVEsU0FBQztnQkFDTixPQUFPLEVBQUU7b0JBQ0wsWUFBWTtvQkFDWixXQUFXO29CQUNYLGVBQWU7b0JBQ2Ysa0JBQWtCO2lCQUNyQjtnQkFDRCxTQUFTLEVBQUUsRUFFVjtnQkFDRCxZQUFZLEVBQUU7b0JBQ1Ysa0JBQWtCO29CQUNsQixrQkFBa0I7b0JBQ2xCLG1CQUFtQjtpQkFDdEI7Z0JBQ0QsT0FBTyxFQUFFO29CQUNMLGtCQUFrQjtvQkFDbEIsa0JBQWtCO2lCQUNyQjtnQkFDRCxlQUFlLEVBQUU7b0JBQ2IsbUJBQW1CO2lCQUN0QjthQUNKOzs7O1lBR3NELFdBQVcsdUJBQWhELFFBQVEsWUFBSSxRQUFRO1lBckNaLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVycm9ySGFuZGxlciwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUsIE9wdGlvbmFsLCBTa2lwU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge1xuICAgIEVycm9yQmFzZUNvbXBvbmVudCxcbiAgICBIdHRwRXJyb3JDb21wb25lbnRcbn0gZnJvbSAnLi9jb21wb25lbnRzL2Vycm9yLWJhc2UvZXJyb3ItYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRXJyb3JSb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi9lcnJvci5yb3V0aW5nJztcbmltcG9ydCB7IEVycm9yU2VydmljZSwgRXJyb3JNb2RhbENvbXBvbmVudCB9IGZyb20gJy4vZXJyb3Iuc2VydmljZSc7XG5pbXBvcnQgeyBFcnJvcnNIYW5kbGVyIH0gZnJvbSAnLi9lcnJvci5oYW5kbGVyJztcbmltcG9ydCB7IGVudmlyb25tZW50IH0gZnJvbSAnLi4vZW52aXJvbm1lbnRzL2Vudmlyb25tZW50JztcblxuaW1wb3J0IHtFUlJPUl9MT0NBTEVTfSBmcm9tICcuL2kxOG4nO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgICAgICBFcnJvclJvdXRpbmdNb2R1bGVcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW1xuXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgRXJyb3JCYXNlQ29tcG9uZW50LFxuICAgICAgICBIdHRwRXJyb3JDb21wb25lbnQsXG4gICAgICAgIEVycm9yTW9kYWxDb21wb25lbnRcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgRXJyb3JCYXNlQ29tcG9uZW50LFxuICAgICAgICBIdHRwRXJyb3JDb21wb25lbnRcbiAgICBdLFxuICAgIGVudHJ5Q29tcG9uZW50czogW1xuICAgICAgICBFcnJvck1vZGFsQ29tcG9uZW50XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBFcnJvck1vZHVsZSB7XG5cbiAgICBjb25zdHJ1Y3RvciggQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcGFyZW50TW9kdWxlOiBFcnJvck1vZHVsZSwgcHJpdmF0ZSBfdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSkge1xuICAgICAgICB0aGlzLm5nT25Jbml0KCk7XG4gICAgfVxuXG4gICAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxFcnJvck1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IEVycm9yTW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgICAgICAgRXJyb3JTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogRXJyb3JIYW5kbGVyLFxuICAgICAgICAgICAgICAgICAgICB1c2VDbGFzczogRXJyb3JzSGFuZGxlcixcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOnVzZS1saWZlLWN5Y2xlLWludGVyZmFjZVxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBlbnZpcm9ubWVudC5sYW5ndWFnZXMuZm9yRWFjaCggbGFuZ3VhZ2UgPT4ge1xuICAgICAgICAgICAgaWYgKEVSUk9SX0xPQ0FMRVMuaGFzT3duUHJvcGVydHkobGFuZ3VhZ2UpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdHJhbnNsYXRlU2VydmljZS5zZXRUcmFuc2xhdGlvbihsYW5ndWFnZSwgRVJST1JfTE9DQUxFU1tsYW5ndWFnZV0sIHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbn1cbiJdfQ==