rx-form-mapper
Version:
Proper decorator-based transformation / serialization / deserialization of plain javascript classes to angular reactive forms
22 lines • 3.27 kB
JavaScript
import { coerceArray } from '../utils';
export class ValidableMetadata {
constructor() {
this._validators = [];
this._asyncValidators = [];
}
setValidators(opts) {
this._validators = coerceArray(opts === null || opts === void 0 ? void 0 : opts.validators);
this._asyncValidators = coerceArray(opts === null || opts === void 0 ? void 0 : opts.asyncValidators);
this._updateOn = opts === null || opts === void 0 ? void 0 : opts.updateOn;
}
get validators() {
return this._validators;
}
get asyncValidators() {
return this._asyncValidators;
}
get updateOn() {
return this._updateOn;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhYmxlLW1ldGFkYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcngtZm9ybS1tYXBwZXIvc3JjL2xpYi9tZXRhZGF0YS92YWxpZGFibGUtbWV0YWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQVV2QyxNQUFNLE9BQWdCLGlCQUFpQjtJQUF2QztRQUVTLGdCQUFXLEdBQWtCLEVBQUUsQ0FBQztRQUNoQyxxQkFBZ0IsR0FBdUIsRUFBRSxDQUFDO0lBdUJuRCxDQUFDO0lBbEJPLGFBQWEsQ0FBQyxJQUFxQjtRQUN6QyxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQyxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsVUFBVSxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFdBQVcsQ0FBQyxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsZUFBZSxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsUUFBUSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDcEIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFXLGVBQWU7UUFDekIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNsQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDdkIsQ0FBQztDQUVEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUnhWYWxpZGF0b3IsIFJ4QXN5bmNWYWxpZGF0b3IsIFVwZGF0ZU9uIH0gZnJvbSAnLi4nO1xuaW1wb3J0IHsgY29lcmNlQXJyYXkgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBDb250cm9sTWV0YWRhdGEgfSBmcm9tICcuL2NvbnRyb2wtbWV0YWRhdGEnO1xuaW1wb3J0IHsgQ29udHJvbFZpc2l0b3IgfSBmcm9tICcuL2NvbnRyb2wtdmlzaXRvcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmFsaWRhdGlvbk9wdHMge1xuXHR2YWxpZGF0b3JzPzogUnhWYWxpZGF0b3IgfCBSeFZhbGlkYXRvcltdO1xuXHRhc3luY1ZhbGlkYXRvcnM/OiBSeEFzeW5jVmFsaWRhdG9yIHwgUnhBc3luY1ZhbGlkYXRvcltdO1xuXHR1cGRhdGVPbj86IFVwZGF0ZU9uO1xufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVmFsaWRhYmxlTWV0YWRhdGEgaW1wbGVtZW50cyBDb250cm9sTWV0YWRhdGEge1xuXG5cdHByaXZhdGUgX3ZhbGlkYXRvcnM6IFJ4VmFsaWRhdG9yW10gPSBbXTtcblx0cHJpdmF0ZSBfYXN5bmNWYWxpZGF0b3JzOiBSeEFzeW5jVmFsaWRhdG9yW10gPSBbXTtcblx0cHJpdmF0ZSBfdXBkYXRlT246IFVwZGF0ZU9uO1xuXG5cdHB1YmxpYyBhYnN0cmFjdCBhY2NlcHQ8VD4odmlzaXRvcjogQ29udHJvbFZpc2l0b3I8VD4pOiBUO1xuXG5cdHB1YmxpYyBzZXRWYWxpZGF0b3JzKG9wdHM/OiBWYWxpZGF0aW9uT3B0cyk6IHZvaWQge1xuXHRcdHRoaXMuX3ZhbGlkYXRvcnMgPSBjb2VyY2VBcnJheShvcHRzPy52YWxpZGF0b3JzKTtcblx0XHR0aGlzLl9hc3luY1ZhbGlkYXRvcnMgPSBjb2VyY2VBcnJheShvcHRzPy5hc3luY1ZhbGlkYXRvcnMpO1xuXHRcdHRoaXMuX3VwZGF0ZU9uID0gb3B0cz8udXBkYXRlT247XG5cdH1cblxuXHRwdWJsaWMgZ2V0IHZhbGlkYXRvcnMoKTogUnhWYWxpZGF0b3JbXSB7XG5cdFx0cmV0dXJuIHRoaXMuX3ZhbGlkYXRvcnM7XG5cdH1cblxuXHRwdWJsaWMgZ2V0IGFzeW5jVmFsaWRhdG9ycygpOiBSeEFzeW5jVmFsaWRhdG9yW10ge1xuXHRcdHJldHVybiB0aGlzLl9hc3luY1ZhbGlkYXRvcnM7XG5cdH1cblxuXHRwdWJsaWMgZ2V0IHVwZGF0ZU9uKCk6IFVwZGF0ZU9uIHtcblx0XHRyZXR1cm4gdGhpcy5fdXBkYXRlT247XG5cdH1cblxufVxuIl19