truly-ui
Version:
Web Components for Desktop Applications.
26 lines • 3.36 kB
JavaScript
import { NG_VALIDATORS } from '@angular/forms';
import { Directive, Input } from '@angular/core';
import * as i0 from "@angular/core";
export class SelectedValidatorDirective {
validate(control) {
if (!control.value) {
return null;
}
if (control.value && !this.selected) {
return { item: 'Invalid Item' };
}
return null;
}
}
/** @nocollapse */ SelectedValidatorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SelectedValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
/** @nocollapse */ SelectedValidatorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: SelectedValidatorDirective, selector: "[selectedItem]", inputs: { selected: "selected" }, providers: [{ provide: NG_VALIDATORS, useExisting: SelectedValidatorDirective, multi: true }], ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SelectedValidatorDirective, decorators: [{
type: Directive,
args: [{
selector: '[selectedItem]',
providers: [{ provide: NG_VALIDATORS, useExisting: SelectedValidatorDirective, multi: true }]
}]
}], propDecorators: { selected: [{
type: Input
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0ZWQtdmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1bHktdWkvc3JjL2NvbXBvbmVudHMvYXV0b2NvbXBsZXRlL3NlbGVjdGVkLXZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWtCLGFBQWEsRUFBWSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDOztBQU0vQyxNQUFNLE9BQU8sMEJBQTBCO0lBSXJDLFFBQVEsQ0FBQyxPQUF3QjtRQUMvQixJQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRztZQUNwQixPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsSUFBSyxPQUFPLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRztZQUNyQyxPQUFPLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxDQUFDO1NBQ2pDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOzsySUFaVSwwQkFBMEI7K0hBQTFCLDBCQUEwQiwyRUFGMUIsQ0FBQyxFQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLDBCQUEwQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUMsQ0FBQzs0RkFFaEYsMEJBQTBCO2tCQUp0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFNBQVMsRUFBRSxDQUFDLEVBQUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLDRCQUE0QixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUMsQ0FBQztpQkFDNUY7OEJBR1UsUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWJzdHJhY3RDb250cm9sLCBOR19WQUxJREFUT1JTLCBWYWxpZGF0b3J9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7RGlyZWN0aXZlLCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tzZWxlY3RlZEl0ZW1dJyxcbiAgcHJvdmlkZXJzOiBbe3Byb3ZpZGU6IE5HX1ZBTElEQVRPUlMsIHVzZUV4aXN0aW5nOiBTZWxlY3RlZFZhbGlkYXRvckRpcmVjdGl2ZSwgbXVsdGk6IHRydWV9XVxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY3RlZFZhbGlkYXRvckRpcmVjdGl2ZSBpbXBsZW1lbnRzIFZhbGlkYXRvciB7XG5cbiAgQElucHV0KCkgc2VsZWN0ZWQ7XG5cbiAgdmFsaWRhdGUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKToge1trZXk6IHN0cmluZ106IGFueX0gfCBudWxsIHtcbiAgICBpZiAoICFjb250cm9sLnZhbHVlICkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIGlmICggY29udHJvbC52YWx1ZSAmJiAhdGhpcy5zZWxlY3RlZCApIHtcbiAgICAgIHJldHVybiB7IGl0ZW06ICdJbnZhbGlkIEl0ZW0nIH07XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG59XG4iXX0=