| 'use strict'; | 
|   | 
| Object.defineProperty(exports, "__esModule", { | 
|   value: true | 
| }); | 
|   | 
| var _util = require('../util'); | 
|   | 
| var util = _interopRequireWildcard(_util); | 
|   | 
| function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj['default'] = obj; return newObj; } } | 
|   | 
| /** | 
|  *  Rule for validating required fields. | 
|  * | 
|  *  @param rule The validation rule. | 
|  *  @param value The value of the field on the source object. | 
|  *  @param source The source object being validated. | 
|  *  @param errors An array of errors that this rule may add | 
|  *  validation errors to. | 
|  *  @param options The validation options. | 
|  *  @param options.messages The validation messages. | 
|  */ | 
| function required(rule, value, source, errors, options, type) { | 
|   if (rule.required && (!source.hasOwnProperty(rule.field) || util.isEmptyValue(value, type || rule.type))) { | 
|     errors.push(util.format(options.messages.required, rule.fullField)); | 
|   } | 
| } | 
|   | 
| exports['default'] = required; | 
| module.exports = exports['default']; |