0.1.0 • Published 5 years ago

v-the-mask-2 v0.1.0

Weekly downloads
-
License
MIT
Repository
-
Last release
5 years ago

Mask

Tiny and dependency free mask input for VueJS

Install

yarn add v-the-mask

# or

npm i -S v-the-mask

Usage (two flavors)

Global

import VueTheMask from 'vue-the-mask'
Vue.use(VueTheMask)

Local (as directive)

import { mask } from 'v-the-mask'
export default {
  directives: { mask }
}

Tokens

'*': {pattern: /./},
'#': {pattern: /\d/},
'X': {pattern: /[0-9a-zA-Z]/},
'S': {pattern: /[a-zA-Z]/},
'A': {pattern: /[a-zA-Z]/, transform: v => v.toLocaleUpperCase()},
'a': {pattern: /[a-zA-Z]/, transform: v => v.toLocaleLowerCase()},
'N': {pattern: /[a-zA-Z0-9]/, transform: v => v.toLocaleUpperCase()},
'n': {pattern: /[a-zA-Z0-9]/, transform: v => v.toLocaleLowerCase()},
'!': {escape: true}

Properties

PropertyRequiredTypeDefaultDescription
valuefalseStringInput value or v-model
masktrueString, ArrayMask pattern
maskedfalseBooleanfalseemit value with mask chars, default is raw
placeholderfalseStringSame as html input
typefalseString'text'Input type (email, tel, number, ...)
tokensfalseObjecttokensCustom tokens for mask

Contribution

TBD

License

This project is licensed under MIT License