UNPKG

@react-form-fields/core

Version:

Material UI Form Fields

50 lines 2.02 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var validator = require('validatorjs'); var ConfigBuilder = /** @class */ (function () { function ConfigBuilder() { this.clean(); } ConfigBuilder.prototype.addMask = function (name, apply, clean) { this.config.masks = this.config.masks.concat([{ name: name, apply: apply, clean: clean }]); return this; }; ConfigBuilder.prototype.addMasks = function (masks) { this.config.masks = this.config.masks.concat(masks); return this; }; ConfigBuilder.prototype.addValidator = function (name, callback, errorMessage) { validator.register(name, callback, errorMessage); return this; }; ConfigBuilder.prototype.addValidatorAsync = function (name, callback, errorMessage) { validator.registerAsync(name, callback, errorMessage); return this; }; ConfigBuilder.prototype.setValidatorAttributeFormatter = function (func) { validator.setAttributeFormatter(func); return this; }; ConfigBuilder.prototype.addCustomMessages = function (lang, customMessages) { this.config.validation = tslib_1.__assign({}, (this.config.validation || {}), { lang: lang, customMessages: customMessages }); return this; }; ConfigBuilder.prototype.setValidationDelay = function (validationDelay) { this.config = tslib_1.__assign({}, this.config, { validationDelay: validationDelay }); }; ConfigBuilder.prototype.fromLang = function (lang) { this.config = tslib_1.__assign({}, this.config, lang); return this; }; ConfigBuilder.prototype.build = function () { return this.config; }; ConfigBuilder.prototype.clean = function () { this.config = { validationDelay: 500, masks: [], validation: null }; return this; }; return ConfigBuilder; }()); exports.default = ConfigBuilder; //# sourceMappingURL=builder.js.map