UNPKG

@vismaux/ngx-nordic-cool

Version:
44 lines 8.91 kB
import { ChangeDetectionStrategy, Component, Input, } from '@angular/core'; import { Subject } from 'rxjs'; import { takeUntil } from 'rxjs/operators'; import * as i0 from "@angular/core"; import * as i1 from "./error-messages"; import * as i2 from "@angular/common"; export class NcErrorTooltipContentComponent { constructor(cd, globalErrorMessagesService) { this.cd = cd; this.globalErrorMessagesService = globalErrorMessagesService; this.destroyed$ = new Subject(); this.errors = {}; this.errorMessages = {}; this.globalErrorMessages = {}; } ngOnInit() { this.globalErrorMessagesService.errorMessages$ .pipe(takeUntil(this.destroyed$)) .subscribe((messages) => { this.globalErrorMessages = messages; this.cd.markForCheck(); }); } ngOnDestroy() { this.destroyed$.next(); this.destroyed$.unsubscribe(); } get errorKeys() { return Object.keys(this.errors); } } NcErrorTooltipContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: NcErrorTooltipContentComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.NcGlobalErrorMessagesService }], target: i0.ɵɵFactoryTarget.Component }); NcErrorTooltipContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: NcErrorTooltipContentComponent, selector: "nc-error-tooltip-content", inputs: { errors: "errors", errorMessages: "errorMessages", errorMessageId: "errorMessageId" }, ngImport: i0, template: "<div [attr.id]=\"errorMessageId\" aria-live=\"assertive\">\n <div *ngFor=\"let errKey of errorKeys\">\n <ng-template\n *ngIf=\"errorMessages[errKey]\"\n [ngTemplateOutlet]=\"errorMessages[errKey]\"\n [ngTemplateOutletContext]=\"{\n $implicit: errors[errKey],\n error: errors[errKey]\n }\"\n ></ng-template>\n\n <ng-template\n *ngIf=\"!errorMessages[errKey] && globalErrorMessages[errKey]\"\n [ngTemplateOutlet]=\"globalErrorMessages[errKey]\"\n [ngTemplateOutletContext]=\"{\n $implicit: errors[errKey],\n error: errors[errKey]\n }\"\n ></ng-template>\n\n <ng-container\n *ngIf=\"!errorMessages[errKey] && !globalErrorMessages[errKey]\"\n >\n Validation error: *{{ errKey }}*.\n </ng-container>\n </div>\n</div>\n", directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: NcErrorTooltipContentComponent, decorators: [{ type: Component, args: [{ selector: 'nc-error-tooltip-content', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [attr.id]=\"errorMessageId\" aria-live=\"assertive\">\n <div *ngFor=\"let errKey of errorKeys\">\n <ng-template\n *ngIf=\"errorMessages[errKey]\"\n [ngTemplateOutlet]=\"errorMessages[errKey]\"\n [ngTemplateOutletContext]=\"{\n $implicit: errors[errKey],\n error: errors[errKey]\n }\"\n ></ng-template>\n\n <ng-template\n *ngIf=\"!errorMessages[errKey] && globalErrorMessages[errKey]\"\n [ngTemplateOutlet]=\"globalErrorMessages[errKey]\"\n [ngTemplateOutletContext]=\"{\n $implicit: errors[errKey],\n error: errors[errKey]\n }\"\n ></ng-template>\n\n <ng-container\n *ngIf=\"!errorMessages[errKey] && !globalErrorMessages[errKey]\"\n >\n Validation error: *{{ errKey }}*.\n </ng-container>\n </div>\n</div>\n" }] }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.NcGlobalErrorMessagesService }]; }, propDecorators: { errors: [{ type: Input }], errorMessages: [{ type: Input }], errorMessageId: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItdG9vbHRpcC1jb250ZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub3JkaWMtY29vbC9zcmMvbGliL2Vycm9yLXRvb2x0aXAvZXJyb3ItdG9vbHRpcC1jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub3JkaWMtY29vbC9zcmMvbGliL2Vycm9yLXRvb2x0aXAvZXJyb3ItdG9vbHRpcC1jb250ZW50LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULEtBQUssR0FHTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVkzQyxNQUFNLE9BQU8sOEJBQThCO0lBU3pDLFlBQ1MsRUFBcUIsRUFDcEIsMEJBQXdEO1FBRHpELE9BQUUsR0FBRixFQUFFLENBQW1CO1FBQ3BCLCtCQUEwQixHQUExQiwwQkFBMEIsQ0FBOEI7UUFWMUQsZUFBVSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFFMUIsV0FBTSxHQUEyQixFQUFFLENBQUM7UUFDcEMsa0JBQWEsR0FBb0IsRUFBRSxDQUFDO1FBRzdDLHdCQUFtQixHQUFvQixFQUFFLENBQUM7SUFLdkMsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLENBQUMsMEJBQTBCLENBQUMsY0FBYzthQUMzQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUNoQyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUN0QixJQUFJLENBQUMsbUJBQW1CLEdBQUcsUUFBUSxDQUFDO1lBQ3BDLElBQUksQ0FBQyxFQUFFLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNsQyxDQUFDOzsySEE5QlUsOEJBQThCOytHQUE5Qiw4QkFBOEIsZ0tDckIzQyxnekJBMkJBOzJGRE5hLDhCQUE4QjtrQkFMMUMsU0FBUzsrQkFDRSwwQkFBMEIsbUJBRW5CLHVCQUF1QixDQUFDLE1BQU07bUpBS3RDLE1BQU07c0JBQWQsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgTmNHbG9iYWxFcnJvck1lc3NhZ2VzU2VydmljZSxcbiAgTmNFcnJvck1lc3NhZ2VzLFxufSBmcm9tICcuL2Vycm9yLW1lc3NhZ2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmMtZXJyb3ItdG9vbHRpcC1jb250ZW50JyxcbiAgdGVtcGxhdGVVcmw6ICdlcnJvci10b29sdGlwLWNvbnRlbnQuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTmNFcnJvclRvb2x0aXBDb250ZW50Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIGRlc3Ryb3llZCQgPSBuZXcgU3ViamVjdCgpO1xuXG4gIEBJbnB1dCgpIGVycm9yczogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IHt9O1xuICBASW5wdXQoKSBlcnJvck1lc3NhZ2VzOiBOY0Vycm9yTWVzc2FnZXMgPSB7fTtcbiAgQElucHV0KCkgZXJyb3JNZXNzYWdlSWQ/OiBzdHJpbmc7XG5cbiAgZ2xvYmFsRXJyb3JNZXNzYWdlczogTmNFcnJvck1lc3NhZ2VzID0ge307XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGNkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIGdsb2JhbEVycm9yTWVzc2FnZXNTZXJ2aWNlOiBOY0dsb2JhbEVycm9yTWVzc2FnZXNTZXJ2aWNlXG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmdsb2JhbEVycm9yTWVzc2FnZXNTZXJ2aWNlLmVycm9yTWVzc2FnZXMkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSlcbiAgICAgIC5zdWJzY3JpYmUoKG1lc3NhZ2VzKSA9PiB7XG4gICAgICAgIHRoaXMuZ2xvYmFsRXJyb3JNZXNzYWdlcyA9IG1lc3NhZ2VzO1xuICAgICAgICB0aGlzLmNkLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3llZCQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveWVkJC51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgZ2V0IGVycm9yS2V5cygpIHtcbiAgICByZXR1cm4gT2JqZWN0LmtleXModGhpcy5lcnJvcnMpO1xuICB9XG59XG4iLCI8ZGl2IFthdHRyLmlkXT1cImVycm9yTWVzc2FnZUlkXCIgYXJpYS1saXZlPVwiYXNzZXJ0aXZlXCI+XG4gIDxkaXYgKm5nRm9yPVwibGV0IGVycktleSBvZiBlcnJvcktleXNcIj5cbiAgICA8bmctdGVtcGxhdGVcbiAgICAgICpuZ0lmPVwiZXJyb3JNZXNzYWdlc1tlcnJLZXldXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImVycm9yTWVzc2FnZXNbZXJyS2V5XVwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAkaW1wbGljaXQ6IGVycm9yc1tlcnJLZXldLFxuICAgICAgICBlcnJvcjogZXJyb3JzW2VycktleV1cbiAgICAgIH1cIlxuICAgID48L25nLXRlbXBsYXRlPlxuXG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICAqbmdJZj1cIiFlcnJvck1lc3NhZ2VzW2VycktleV0gJiYgZ2xvYmFsRXJyb3JNZXNzYWdlc1tlcnJLZXldXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImdsb2JhbEVycm9yTWVzc2FnZXNbZXJyS2V5XVwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAkaW1wbGljaXQ6IGVycm9yc1tlcnJLZXldLFxuICAgICAgICBlcnJvcjogZXJyb3JzW2VycktleV1cbiAgICAgIH1cIlxuICAgID48L25nLXRlbXBsYXRlPlxuXG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgKm5nSWY9XCIhZXJyb3JNZXNzYWdlc1tlcnJLZXldICYmICFnbG9iYWxFcnJvck1lc3NhZ2VzW2VycktleV1cIlxuICAgID5cbiAgICAgIFZhbGlkYXRpb24gZXJyb3I6ICp7eyBlcnJLZXkgfX0qLlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19