insin / inputmask-core

Standalone input mask implementation, independent of any GUI
MIT License
304 stars 52 forks source link

Allow custom placeholders in formatCharacters #42

Open andreasvirkus opened 6 years ago

andreasvirkus commented 6 years ago

I propose an addition to the API where you could add a placeholder element to override the default placeholder character via formatCharacters.

Current behaviour: all characters are applied the same placeholder character, no matter the pattern.

Proposed behaviour: all symbols get the same placeholder character by default but it can be overwritten when passing in a pattern, like:

var mask = new InputMask({
  pattern: '11ww', // An uppercase letter followed by 5 word characters
  formatCharacters: {
    'w': {
      validate: function(char) { return /\w/.test(char) }
      transform: function(char) { return char.toLowerCase() },
      placeholder: 'A'
    }
  }
})

// results in
_ _ A A

Or a separate option after formatCharacters so we could also override the placeholders for 0, A, a?