ngx-config-form
Version:
use configuration to generate form
181 lines • 11.3 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import * as tslib_1 from "tslib";
import { of } from 'rxjs';
import { debounceTime, first, map, switchMap } from 'rxjs/operators';
// @dynamic
var
// @dynamic
CfValidators = /** @class */ (function () {
function CfValidators() {
}
/**
* @param {?} passwordName
* @param {?} confirmPasswordName
* @return {?}
*/
CfValidators.confirmPassword = /**
* @param {?} passwordName
* @param {?} confirmPasswordName
* @return {?}
*/
function (passwordName, confirmPasswordName) {
return (/**
* @param {?} c
* @return {?}
*/
function (c) {
if (!c.dirty) {
return null;
}
/** @type {?} */
var password = c.get(passwordName);
/** @type {?} */
var confirmPassword = c.get(confirmPasswordName);
if (password.value === confirmPassword.value) {
return null;
}
/** @type {?} */
var errObj = { confirmPassword: true };
return errObj;
});
};
/**
* @param {...?} childrenNames
* @return {?}
*/
CfValidators.groupRequired = /**
* @param {...?} childrenNames
* @return {?}
*/
function () {
var childrenNames = [];
for (var _i = 0; _i < arguments.length; _i++) {
childrenNames[_i] = arguments[_i];
}
return (/**
* @param {?} c
* @return {?}
*/
function (c) {
var e_1, _a;
if (!c.dirty) {
return null;
}
/** @type {?} */
var arr = [];
try {
for (var childrenNames_1 = tslib_1.__values(childrenNames), childrenNames_1_1 = childrenNames_1.next(); !childrenNames_1_1.done; childrenNames_1_1 = childrenNames_1.next()) {
var name_1 = childrenNames_1_1.value;
arr.push(c.get(name_1));
}
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (childrenNames_1_1 && !childrenNames_1_1.done && (_a = childrenNames_1.return)) _a.call(childrenNames_1);
}
finally { if (e_1) throw e_1.error; }
}
/** @type {?} */
var emptyElemCount = arr.filter((/**
* @param {?} a
* @return {?}
*/
function (a) { return !a.value; })).length;
if (emptyElemCount === 0) {
return null;
}
/** @type {?} */
var errObj = { groupRequired: true };
return errObj;
});
};
/**
* @param {?} errClassName
* @param {?} regExp
* @return {?}
*/
CfValidators.pattern = /**
* @param {?} errClassName
* @param {?} regExp
* @return {?}
*/
function (errClassName, regExp) {
return (/**
* @param {?} c
* @return {?}
*/
function (c) {
if (!c.dirty) {
return null;
}
if (!c.value) {
return null;
}
/** @type {?} */
var isValid = regExp.test(c.value);
if (isValid) {
return null;
}
/** @type {?} */
var errObj = {};
errObj[errClassName] = true;
return errObj;
});
};
/**
* @param {?} errClassName
* @param {?} debounce
* @param {?} fn
* @return {?}
*/
CfValidators.AsyncValidate = /**
* @param {?} errClassName
* @param {?} debounce
* @param {?} fn
* @return {?}
*/
function (errClassName, debounce, fn) {
var _this = this;
return (/**
* @param {?} c
* @return {?}
*/
function (c) {
if (!c.dirty) {
return of(null);
}
/** @type {?} */
var $ob = c.valueChanges.pipe(debounceTime(debounce), switchMap((/**
* @param {?} v
* @return {?}
*/
function (v) { return tslib_1.__awaiter(_this, void 0, void 0, function () { return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, fn(v)];
case 1: return [2 /*return*/, _a.sent()];
}
}); }); })), map((/**
* @param {?} isValid
* @return {?}
*/
function (isValid) {
if (isValid) {
return null;
}
/** @type {?} */
var errObj = {};
errObj[errClassName] = true;
return errObj;
})), first());
return $ob;
});
};
return CfValidators;
}());
// @dynamic
export { CfValidators };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2ZWYWxpZGF0b3JzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWNvbmZpZy1mb3JtLyIsInNvdXJjZXMiOlsibGliL3ZhbGlkYXRvcnMvY2ZWYWxpZGF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQixPQUFPLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBR3JFOzs7SUFBQTtJQWdGQSxDQUFDOzs7Ozs7SUE5RVEsNEJBQWU7Ozs7O0lBQXRCLFVBQXVCLFlBQW9CLEVBQUUsbUJBQTJCO1FBQ3RFOzs7O1FBQU8sVUFBQyxDQUFrQjtZQUN4QixJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRTtnQkFDWixPQUFPLElBQUksQ0FBQzthQUNiOztnQkFFSyxRQUFRLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUM7O2dCQUM5QixlQUFlLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQztZQUNsRCxJQUFJLFFBQVEsQ0FBQyxLQUFLLEtBQUssZUFBZSxDQUFDLEtBQUssRUFBRTtnQkFDNUMsT0FBTyxJQUFJLENBQUM7YUFDYjs7Z0JBRUssTUFBTSxHQUFHLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRTtZQUN4QyxPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDLEVBQUM7SUFDSixDQUFDOzs7OztJQUVNLDBCQUFhOzs7O0lBQXBCO1FBQXFCLHVCQUEwQjthQUExQixVQUEwQixFQUExQixxQkFBMEIsRUFBMUIsSUFBMEI7WUFBMUIsa0NBQTBCOztRQUM3Qzs7OztRQUFPLFVBQUMsQ0FBa0I7O1lBQ3hCLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFO2dCQUNaLE9BQU8sSUFBSSxDQUFDO2FBQ2I7O2dCQUVLLEdBQUcsR0FBRyxFQUFFOztnQkFDZCxLQUFtQixJQUFBLGtCQUFBLGlCQUFBLGFBQWEsQ0FBQSw0Q0FBQSx1RUFBRTtvQkFBN0IsSUFBTSxNQUFJLDBCQUFBO29CQUNiLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFJLENBQUMsQ0FBQyxDQUFDO2lCQUN2Qjs7Ozs7Ozs7OztnQkFFSyxjQUFjLEdBQUcsR0FBRyxDQUFDLE1BQU07Ozs7WUFBQyxVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBUixDQUFRLEVBQUMsQ0FBQyxNQUFNO1lBQ3ZELElBQUksY0FBYyxLQUFLLENBQUMsRUFBRTtnQkFDeEIsT0FBTyxJQUFJLENBQUM7YUFDYjs7Z0JBRUssTUFBTSxHQUFHLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRTtZQUN0QyxPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDLEVBQUM7SUFDSixDQUFDOzs7Ozs7SUFFTSxvQkFBTzs7Ozs7SUFBZCxVQUFlLFlBQW9CLEVBQUUsTUFBYztRQUNqRDs7OztRQUFPLFVBQUMsQ0FBa0I7WUFDeEIsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUU7Z0JBQ1osT0FBTyxJQUFJLENBQUM7YUFDYjtZQUNELElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFO2dCQUNaLE9BQU8sSUFBSSxDQUFDO2FBQ2I7O2dCQUNLLE9BQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7WUFDcEMsSUFBSSxPQUFPLEVBQUU7Z0JBQ1gsT0FBTyxJQUFJLENBQUM7YUFDYjs7Z0JBQ0ssTUFBTSxHQUFHLEVBQUU7WUFDakIsTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFHLElBQUksQ0FBQztZQUM1QixPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDLEVBQUM7SUFDSixDQUFDOzs7Ozs7O0lBRU0sMEJBQWE7Ozs7OztJQUFwQixVQUFxQixZQUFvQixFQUFFLFFBQWdCLEVBQUUsRUFBZ0M7UUFBN0YsaUJBb0JDO1FBbkJDOzs7O1FBQU8sVUFBQyxDQUFrQjtZQUN4QixJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRTtnQkFDWixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNqQjs7Z0JBQ0ssR0FBRyxHQUFHLENBQUMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUM3QixZQUFZLENBQUMsUUFBUSxDQUFDLEVBQ3RCLFNBQVM7Ozs7WUFBQyxVQUFNLENBQUM7OzRCQUFJLHFCQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBQTs0QkFBWCxzQkFBQSxTQUFXLEVBQUE7O3FCQUFBLEVBQUMsRUFDakMsR0FBRzs7OztZQUFDLFVBQUEsT0FBTztnQkFDVCxJQUFJLE9BQU8sRUFBRTtvQkFDWCxPQUFPLElBQUksQ0FBQztpQkFDYjs7b0JBQ0ssTUFBTSxHQUFHLEVBQUU7Z0JBQ2pCLE1BQU0sQ0FBQyxZQUFZLENBQUMsR0FBRyxJQUFJLENBQUM7Z0JBQzVCLE9BQU8sTUFBTSxDQUFDO1lBQ2hCLENBQUMsRUFBQyxFQUNGLEtBQUssRUFBRSxDQUNSO1lBQ0QsT0FBTyxHQUFHLENBQUM7UUFDYixDQUFDLEVBQUM7SUFDSixDQUFDO0lBRUgsbUJBQUM7QUFBRCxDQUFDLEFBaEZELElBZ0ZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZpcnN0LCBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLy8gQGR5bmFtaWNcbmV4cG9ydCBjbGFzcyBDZlZhbGlkYXRvcnMge1xuXG4gIHN0YXRpYyBjb25maXJtUGFzc3dvcmQocGFzc3dvcmROYW1lOiBzdHJpbmcsIGNvbmZpcm1QYXNzd29yZE5hbWU6IHN0cmluZyk6IFZhbGlkYXRvckZuIHtcbiAgICByZXR1cm4gKGM6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9IHwgbnVsbCA9PiB7XG4gICAgICBpZiAoIWMuZGlydHkpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHBhc3N3b3JkID0gYy5nZXQocGFzc3dvcmROYW1lKTtcbiAgICAgIGNvbnN0IGNvbmZpcm1QYXNzd29yZCA9IGMuZ2V0KGNvbmZpcm1QYXNzd29yZE5hbWUpO1xuICAgICAgaWYgKHBhc3N3b3JkLnZhbHVlID09PSBjb25maXJtUGFzc3dvcmQudmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGVyck9iaiA9IHsgY29uZmlybVBhc3N3b3JkOiB0cnVlIH07XG4gICAgICByZXR1cm4gZXJyT2JqO1xuICAgIH07XG4gIH1cblxuICBzdGF0aWMgZ3JvdXBSZXF1aXJlZCguLi5jaGlsZHJlbk5hbWVzOiBzdHJpbmdbXSk6IFZhbGlkYXRvckZuIHtcbiAgICByZXR1cm4gKGM6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9IHwgbnVsbCA9PiB7XG4gICAgICBpZiAoIWMuZGlydHkpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGFyciA9IFtdO1xuICAgICAgZm9yIChjb25zdCBuYW1lIG9mIGNoaWxkcmVuTmFtZXMpIHtcbiAgICAgICAgYXJyLnB1c2goYy5nZXQobmFtZSkpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBlbXB0eUVsZW1Db3VudCA9IGFyci5maWx0ZXIoYSA9PiAhYS52YWx1ZSkubGVuZ3RoO1xuICAgICAgaWYgKGVtcHR5RWxlbUNvdW50ID09PSAwKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBlcnJPYmogPSB7IGdyb3VwUmVxdWlyZWQ6IHRydWUgfTtcbiAgICAgIHJldHVybiBlcnJPYmo7XG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBwYXR0ZXJuKGVyckNsYXNzTmFtZTogc3RyaW5nLCByZWdFeHA6IFJlZ0V4cCkge1xuICAgIHJldHVybiAoYzogQWJzdHJhY3RDb250cm9sKSA9PiB7XG4gICAgICBpZiAoIWMuZGlydHkpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG4gICAgICBpZiAoIWMudmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG4gICAgICBjb25zdCBpc1ZhbGlkID0gcmVnRXhwLnRlc3QoYy52YWx1ZSk7XG4gICAgICBpZiAoaXNWYWxpZCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGVyck9iaiA9IHt9O1xuICAgICAgZXJyT2JqW2VyckNsYXNzTmFtZV0gPSB0cnVlO1xuICAgICAgcmV0dXJuIGVyck9iajtcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIEFzeW5jVmFsaWRhdGUoZXJyQ2xhc3NOYW1lOiBzdHJpbmcsIGRlYm91bmNlOiBudW1iZXIsIGZuOiAodjogYW55KSA9PiBQcm9taXNlPGJvb2xlYW4+KSB7XG4gICAgcmV0dXJuIChjOiBBYnN0cmFjdENvbnRyb2wpID0+IHtcbiAgICAgIGlmICghYy5kaXJ0eSkge1xuICAgICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgICB9XG4gICAgICBjb25zdCAkb2IgPSBjLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgICBkZWJvdW5jZVRpbWUoZGVib3VuY2UpLFxuICAgICAgICBzd2l0Y2hNYXAoYXN5bmMgdiA9PiBhd2FpdCBmbih2KSksXG4gICAgICAgIG1hcChpc1ZhbGlkID0+IHtcbiAgICAgICAgICBpZiAoaXNWYWxpZCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnN0IGVyck9iaiA9IHt9O1xuICAgICAgICAgIGVyck9ialtlcnJDbGFzc05hbWVdID0gdHJ1ZTtcbiAgICAgICAgICByZXR1cm4gZXJyT2JqO1xuICAgICAgICB9KSxcbiAgICAgICAgZmlyc3QoKVxuICAgICAgKTtcbiAgICAgIHJldHVybiAkb2I7XG4gICAgfTtcbiAgfVxuXG59XG4iXX0=