@tunnel-cast/tunnel-cast
Version:
<br>
14 lines • 946 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Matches = exports.matchesMessageBuilder = exports.matches = exports.MATCHES = void 0;
const decorator_adapter_1 = require("../../../core/factory/decorator-adapter");
const field_constraint_procedure_1 = require("../../../core/field-decorator-procedure/field-constraint.procedure");
exports.MATCHES = "matches";
exports.matches = ({ fieldValue, args }) => typeof fieldValue == "string" && args.pattern.test(fieldValue);
exports.matchesMessageBuilder = ({ fieldName }) => `The field ${fieldName} is match the pattern provided`;
function Matches(pattern, options) {
const adaptee = new field_constraint_procedure_1.FieldConstraintProcedure(exports.MATCHES, options, { pattern }, exports.matches, exports.matchesMessageBuilder);
return decorator_adapter_1.decoratorAdapter(adaptee);
}
exports.Matches = Matches;
//# sourceMappingURL=matches.decorator.js.map