function array(rule, value, callback, source, options) {
	  var errors = [];
	  var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);
	  if (validate) {
	    if ((0, _util.isEmptyValue)(value, 'array') && !rule.required) {
	      return callback();
	    }
	    _rule2['default'].required(rule, value, source, errors, options, 'array');
	    if (!(0, _util.isEmptyValue)(value, 'array')) {
	      _rule2['default'].type(rule, value, source, errors, options);
	      _rule2['default'].range(rule, value, source, errors, options);
	    }
	  }
	  callback(errors);
	}
/**
	 *  Validates an array.
	 *
	 *  @param rule The validation rule.
	 *  @param value The value of the field on the source object.
	 *  @param callback The callback function.
	 *  @param source The source object being validated.
	 *  @param options The validation options.
	 *  @param options.messages The validation messages.
	 */
Validates an array.
@param rule The validation rule.
@param value The value of the field on the source object.
@param callback The callback function.
@param source The source object being validated.
@param options The validation options.
@param options.messages The validation messages.
Validates an array . @param rule The validation rule . @param value The value of the field on the source object . @param callback The callback function . @param source The source object being validated . @param options The validation options . @param options . messages The validation messages .
function array(rule, value, callback, source, options) {
	  var errors = [];
	  var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);
	  if (validate) {
	    if ((0, _util.isEmptyValue)(value, 'array') && !rule.required) {
	      return callback();
	    }
	    _rule2['default'].required(rule, value, source, errors, options, 'array');
	    if (!(0, _util.isEmptyValue)(value, 'array')) {
	      _rule2['default'].type(rule, value, source, errors, options);
	      _rule2['default'].range(rule, value, source, errors, options);
	    }
	  }
	  callback(errors);
	}
function array ( rule , value , callback , source , options ) { var errors = [ ] ; var validate = rule . required || ! rule . required && source . hasOwnProperty ( rule . field ) ; if ( validate ) { if ( ( 0 , _util . isEmptyValue ) ( value , 'array' ) && ! rule . required ) { return callback ( ) ; } _rule2 [ 'default' ] . required ( rule , value , source , errors , options , 'array' ) ; if ( ! ( 0 , _util . isEmptyValue ) ( value , 'array' ) ) { _rule2 [ 'default' ] . type ( rule , value , source , errors , options ) ; _rule2 [ 'default' ] . range ( rule , value , source , errors , options ) ; } } callback ( errors ) ; }
Validates an array.
Validates an array .