all files / src/ format.js

100% Statements 13/13
100% Branches 12/12
100% Functions 3/3
100% Lines 8/8
1 branch Ignored     
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15   18× 18×   18× 21× 15×            
import Validators from './validators'
import { prepareMsg, prepare, memoize } from './helpers'
 
let format = memoize(function ({ with: wit, without, message, msg, if: ifCond, unless, allowBlank }) {
  msg = msg || message
 
  return prepare(ifCond, unless, allowBlank, function (value) {
    if ((wit && !value.match(wit)) || (without && value.match(without))) {
      return Validators.formatMessage(prepareMsg(msg, 'invalid'))
    }
  })
})
 
export default format