UNPKG

1.71 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.ValidationUtils = exports.constraintToString = void 0;
4/**
5 * Convert the constraint to a string to be shown in an error
6 */
7function constraintToString(constraint) {
8 if (Array.isArray(constraint)) {
9 return constraint.join(', ');
10 }
11 return `${constraint}`;
12}
13exports.constraintToString = constraintToString;
14class ValidationUtils {
15 static replaceMessageSpecialTokens(message, validationArguments) {
16 let messageString;
17 if (message instanceof Function) {
18 messageString = message(validationArguments);
19 }
20 else if (typeof message === 'string') {
21 messageString = message;
22 }
23 if (messageString && Array.isArray(validationArguments.constraints)) {
24 validationArguments.constraints.forEach((constraint, index) => {
25 messageString = messageString.replace(new RegExp(`\\$constraint${index + 1}`, 'g'), constraintToString(constraint));
26 });
27 }
28 if (messageString &&
29 validationArguments.value !== undefined &&
30 validationArguments.value !== null &&
31 typeof validationArguments.value === 'string')
32 messageString = messageString.replace(/\$value/g, validationArguments.value);
33 if (messageString)
34 messageString = messageString.replace(/\$property/g, validationArguments.property);
35 if (messageString)
36 messageString = messageString.replace(/\$target/g, validationArguments.targetName);
37 return messageString;
38 }
39}
40exports.ValidationUtils = ValidationUtils;
41//# sourceMappingURL=ValidationUtils.js.map
\No newline at end of file