MCPcopy Index your code
hub / github.com/bitnbytesio/node-input-validator / parseMessage

Method parseMessage

lib/validator.js:390–440  ·  view source on GitHub ↗

* * @param {*} rule * @param {*} field * @param {*} value * @param {*} args

(rule, field, value, args)

Source from the content-addressed store, hash-verified

388 * @param {*} args
389 */
390 parseMessage(rule, field, value, args) {
391
392 let message;
393
394 if (this.hasCustomMessages) {
395
396 message = this.messages[this.lang + '.' + field + '.' + rule] ||
397 this.messages[this.lang + '.' + field] ||
398 this.messages[this.lang + '.' + rule] ||
399 this.messages[field + '.' + rule] ||
400 this.messages[field] ||
401 this.messages[rule] || false;
402 }
403
404
405 if (!message) {
406 message = messagesCollection[this.lang][field + '.' + rule] ||
407 messagesCollection[this.lang][field] ||
408 messagesCollection[this.lang][rule] ||
409 'The :attribute value is malformed.';
410 }
411
412 if (message.indexOf(':attribute') !== -1) {
413 message = message.replace(':attribute', field);
414 }
415
416 if (Array.isArray(args)) {
417 for (let i = 0; i < 10; i++) {
418 if (message.indexOf(':arg' + i) >= 0) {
419 message = message.replace(':arg' + i, args[i]);
420 } else {
421 break;
422 }
423 }
424 } else {
425 message = message.replace(':arg0', args).replace(':arg', args);
426 }
427
428 if (message.indexOf(':value') !== -1) {
429 if (typeof value === 'object') {
430 message = message.replace(':value', JSON.stringify(this.validations[field].value));
431 } else if (typeof this.validations[field].value === 'undefined') {
432 message = message.replace(':value', 'undefined');
433 } else {
434 message = message.replace(':value', this.validations[field].value.toString());
435 }
436 }
437
438 return message.replace('_', ' ');
439
440 }
441
442}
443

Callers 3

validateAnyMethod · 0.80
validateAllMethod · 0.80
validateMethod · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected