@taiga-ui/kit
Version:
Taiga UI Angular main components kit
42 lines • 5.53 kB
JavaScript
import { AsyncPipe } from '@angular/common';
import { inject, INJECTOR, Injector, Pipe, } from '@angular/core';
import { TuiFieldErrorPipe } from './field-error-pipe';
import * as i0 from "@angular/core";
class TuiFieldErrorContentPipe {
constructor() {
this.injector = inject(INJECTOR);
this.localInjector = Injector.create({
providers: [{ provide: AsyncPipe }, { provide: TuiFieldErrorPipe }],
parent: this.injector,
});
this.asyncPipe = this.localInjector.get(AsyncPipe);
this.fieldErrorPipe = this.localInjector.get(TuiFieldErrorPipe);
}
transform(order) {
return this.getErrorContent(order);
}
ngOnDestroy() {
this.asyncPipe.ngOnDestroy();
}
getErrorContent(order) {
const error = this.asyncPipe.transform(this.fieldErrorPipe.transform(order));
if (!error) {
return '';
}
return typeof error.message === 'function'
? error.message(error.context)
: error.message;
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiFieldErrorContentPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: TuiFieldErrorContentPipe, isStandalone: true, name: "tuiFieldErrorContent", pure: false }); }
}
export { TuiFieldErrorContentPipe };
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiFieldErrorContentPipe, decorators: [{
type: Pipe,
args: [{
standalone: true,
name: 'tuiFieldErrorContent',
pure: false,
}]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtZXJyb3ItY29udGVudC1waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L3BpcGVzL2ZpZWxkLWVycm9yL2ZpZWxkLWVycm9yLWNvbnRlbnQtcGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUNILE1BQU0sRUFDTixRQUFRLEVBQ1IsUUFBUSxFQUVSLElBQUksR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQzs7QUFFckQsTUFLYSx3QkFBd0I7SUFMckM7UUFNcUIsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1QixrQkFBYSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFDN0MsU0FBUyxFQUFFLENBQUMsRUFBQyxPQUFPLEVBQUUsU0FBUyxFQUFDLEVBQUUsRUFBQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUMsQ0FBQztZQUMvRCxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVE7U0FDeEIsQ0FBQyxDQUFDO1FBRWMsY0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzlDLG1CQUFjLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQztLQXFCL0U7SUFuQlUsU0FBUyxDQUFDLEtBQXdCO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRU0sV0FBVztRQUNkLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVPLGVBQWUsQ0FBQyxLQUF3QjtRQUM1QyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBRTdFLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDUixPQUFPLEVBQUUsQ0FBQztTQUNiO1FBRUQsT0FBTyxPQUFPLEtBQUssQ0FBQyxPQUFPLEtBQUssVUFBVTtZQUN0QyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO1lBQzlCLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO0lBQ3hCLENBQUM7K0dBNUJRLHdCQUF3Qjs2R0FBeEIsd0JBQXdCOztTQUF4Qix3QkFBd0I7NEZBQXhCLHdCQUF3QjtrQkFMcEMsSUFBSTttQkFBQztvQkFDRixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFLHNCQUFzQjtvQkFDNUIsSUFBSSxFQUFFLEtBQUs7aUJBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FzeW5jUGlwZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgaW5qZWN0LFxuICAgIElOSkVDVE9SLFxuICAgIEluamVjdG9yLFxuICAgIHR5cGUgT25EZXN0cm95LFxuICAgIFBpcGUsXG4gICAgdHlwZSBQaXBlVHJhbnNmb3JtLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dHlwZSBQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcblxuaW1wb3J0IHtUdWlGaWVsZEVycm9yUGlwZX0gZnJvbSAnLi9maWVsZC1lcnJvci1waXBlJztcblxuQFBpcGUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgbmFtZTogJ3R1aUZpZWxkRXJyb3JDb250ZW50JyxcbiAgICBwdXJlOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpRmllbGRFcnJvckNvbnRlbnRQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSwgT25EZXN0cm95IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yID0gaW5qZWN0KElOSkVDVE9SKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxvY2FsSW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgICBwcm92aWRlcnM6IFt7cHJvdmlkZTogQXN5bmNQaXBlfSwge3Byb3ZpZGU6IFR1aUZpZWxkRXJyb3JQaXBlfV0sXG4gICAgICAgIHBhcmVudDogdGhpcy5pbmplY3RvcixcbiAgICB9KTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXN5bmNQaXBlID0gdGhpcy5sb2NhbEluamVjdG9yLmdldChBc3luY1BpcGUpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZmllbGRFcnJvclBpcGUgPSB0aGlzLmxvY2FsSW5qZWN0b3IuZ2V0KFR1aUZpZWxkRXJyb3JQaXBlKTtcblxuICAgIHB1YmxpYyB0cmFuc2Zvcm0ob3JkZXI6IHJlYWRvbmx5IHN0cmluZ1tdKTogUG9seW1vcnBoZXVzQ29udGVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEVycm9yQ29udGVudChvcmRlcik7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmFzeW5jUGlwZS5uZ09uRGVzdHJveSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RXJyb3JDb250ZW50KG9yZGVyOiByZWFkb25seSBzdHJpbmdbXSk6IFBvbHltb3JwaGV1c0NvbnRlbnQge1xuICAgICAgICBjb25zdCBlcnJvciA9IHRoaXMuYXN5bmNQaXBlLnRyYW5zZm9ybSh0aGlzLmZpZWxkRXJyb3JQaXBlLnRyYW5zZm9ybShvcmRlcikpO1xuXG4gICAgICAgIGlmICghZXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0eXBlb2YgZXJyb3IubWVzc2FnZSA9PT0gJ2Z1bmN0aW9uJ1xuICAgICAgICAgICAgPyBlcnJvci5tZXNzYWdlKGVycm9yLmNvbnRleHQpXG4gICAgICAgICAgICA6IGVycm9yLm1lc3NhZ2U7XG4gICAgfVxufVxuIl19