mirror of
https://github.com/tenrok/maska.git
synced 2026-06-20 20:00:34 +03:00
Update docs and meta info
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
# Maska
|
# Maska
|
||||||
|
|
||||||
Simple zero-dependency input mask for Vue.js and vanilla JS.
|
Simple zero-dependency input mask for Vue.js and vanilla JS. [Demo and examples](https://beholdr.github.io/maska/).
|
||||||
|
|
||||||
- No dependencies
|
- No dependencies
|
||||||
- Small size (~2 Kb gziped)
|
- Small size (~2 Kb gziped)
|
||||||
@@ -8,6 +8,10 @@ Simple zero-dependency input mask for Vue.js and vanilla JS.
|
|||||||
- Supports repeat symbols
|
- Supports repeat symbols
|
||||||
- Works on any input (custom or native)
|
- Works on any input (custom or native)
|
||||||
|
|
||||||
|
## Install
|
||||||
|
|
||||||
|
npm install maska
|
||||||
|
|
||||||
## Usage with Vue.js
|
## Usage with Vue.js
|
||||||
|
|
||||||
If you load Vue.js via `<script>` then just add `v-maska` directive to your input:
|
If you load Vue.js via `<script>` then just add `v-maska` directive to your input:
|
||||||
@@ -42,7 +46,7 @@ export default {
|
|||||||
|
|
||||||
## Usage with vanilla JS
|
## Usage with vanilla JS
|
||||||
|
|
||||||
Just load script `maska.js` and init it, passing element(s) or selector expression:
|
Just load script `maska.js` and init it, passing element(s) or `document.querySelector` expression:
|
||||||
|
|
||||||
``` javascript
|
``` javascript
|
||||||
var mask = Maska.create('.masked');
|
var mask = Maska.create('.masked');
|
||||||
|
|||||||
+78
-74
@@ -7,93 +7,97 @@
|
|||||||
<title>Maska demo</title>
|
<title>Maska demo</title>
|
||||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.5/css/bulma.min.css" integrity="sha256-vK3UTo/8wHbaUn+dTQD0X6dzidqc5l7gczvH+Bnowwk=" crossorigin="anonymous" />
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.5/css/bulma.min.css" integrity="sha256-vK3UTo/8wHbaUn+dTQD0X6dzidqc5l7gczvH+Bnowwk=" crossorigin="anonymous" />
|
||||||
<style>
|
<style>
|
||||||
body { padding: 2em 0 5em; background: #fafafa }
|
body { background: #fafafa }
|
||||||
.container { max-width: 800px }
|
body > section > .container { max-width: 800px }
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div class="container">
|
<section class="section">
|
||||||
<div class="content">
|
<div class="container">
|
||||||
<h1 class="is-size-1">Maska library demo</h1>
|
<div class="content">
|
||||||
|
<div class="is-pulled-right"><a href="https://github.com/beholdr/maska" class="button is-link is-medium">Github</a></div>
|
||||||
|
|
||||||
<h2 class="is-size-3">Vue.js examples</h2>
|
<h1 class="is-size-2 is-marginless">Maska demo</h1>
|
||||||
<div class="box">
|
|
||||||
<form id="vue-form">
|
|
||||||
<div class="field">
|
|
||||||
<label class="label">Phone with code</label>
|
|
||||||
<div class="control">
|
|
||||||
<input v-maska="'+1 (###) ###-##-##'" value="12345678901" class="input">
|
|
||||||
</div>
|
|
||||||
<p class="help is-family-code">v-maska="'+1 (###) ###-##-##'"</p>
|
|
||||||
</div>
|
|
||||||
<div class="field">
|
|
||||||
<label class="label">Hex color (custom tokens)</label>
|
|
||||||
<div class="control">
|
|
||||||
<input v-maska="{ mask: '!#HHHHHH', tokens: { 'H': { pattern: /[0-9a-fA-F]/, uppercase: true }}}" class="input">
|
|
||||||
</div>
|
|
||||||
<p class="help is-family-code">v-maska="{ mask: '!#HHHHHH', tokens: { 'H': { pattern: /[0-9a-fA-F]/, uppercase: true }}}"</p>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2 class="is-size-3">Vanilla JS examples</h2>
|
<h2 class="is-size-4">Vue.js examples</h2>
|
||||||
<div class="box">
|
<div class="box">
|
||||||
<form id="vanilla-form">
|
<form id="vue-form">
|
||||||
<div class="columns">
|
<div class="field">
|
||||||
<div class="column">
|
<label class="label">Phone with code</label>
|
||||||
<div class="field">
|
<div class="control">
|
||||||
<label class="label">Phone with code</label>
|
<input v-maska="'+1 (###) ###-##-##'" value="12345678901" class="input">
|
||||||
<div class="control">
|
|
||||||
<input data-mask="+1 (###) ###-####" class="masked input">
|
|
||||||
</div>
|
|
||||||
<p class="help is-family-code">data-mask="+1 (###) ###-####"</p>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="field">
|
<p class="help is-family-code">v-maska="'+1 (###) ###-##-##'"</p>
|
||||||
<label class="label">Cardholder name</label>
|
</div>
|
||||||
<div class="control">
|
<div class="field">
|
||||||
<input data-mask="A* A*" class="masked input">
|
<label class="label">Hex color (custom tokens)</label>
|
||||||
</div>
|
<div class="control">
|
||||||
<p class="help is-family-code">data-mask="A* A*"</p>
|
<input v-maska="{ mask: '!#HHHHHH', tokens: { 'H': { pattern: /[0-9a-fA-F]/, uppercase: true }}}" class="input">
|
||||||
</div>
|
</div>
|
||||||
<div class="field">
|
<p class="help is-family-code">v-maska="{ mask: '!#HHHHHH', tokens: { 'H': { pattern: /[0-9a-fA-F]/, uppercase: true }}}"</p>
|
||||||
<label class="label">All digits</label>
|
</div>
|
||||||
<div class="control">
|
</form>
|
||||||
<input data-mask="#*" class="masked input">
|
</div>
|
||||||
|
|
||||||
|
<h2 class="is-size-4">Vanilla JS examples</h2>
|
||||||
|
<div class="box">
|
||||||
|
<form id="vanilla-form">
|
||||||
|
<div class="columns">
|
||||||
|
<div class="column">
|
||||||
|
<div class="field">
|
||||||
|
<label class="label">Phone with code</label>
|
||||||
|
<div class="control">
|
||||||
|
<input data-mask="+1 (###) ###-####" class="masked input">
|
||||||
|
</div>
|
||||||
|
<p class="help is-family-code">data-mask="+1 (###) ###-####"</p>
|
||||||
|
</div>
|
||||||
|
<div class="field">
|
||||||
|
<label class="label">Cardholder name</label>
|
||||||
|
<div class="control">
|
||||||
|
<input data-mask="A* A*" class="masked input">
|
||||||
|
</div>
|
||||||
|
<p class="help is-family-code">data-mask="A* A*"</p>
|
||||||
|
</div>
|
||||||
|
<div class="field">
|
||||||
|
<label class="label">All digits</label>
|
||||||
|
<div class="control">
|
||||||
|
<input data-mask="#*" class="masked input">
|
||||||
|
</div>
|
||||||
|
<p class="help is-family-code">data-mask="#*"</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="column">
|
||||||
|
<div class="field">
|
||||||
|
<label class="label">Date</label>
|
||||||
|
<div class="control">
|
||||||
|
<input data-mask="##/##/####" class="masked input">
|
||||||
|
</div>
|
||||||
|
<p class="help is-family-code">data-mask="##/##/####"</p>
|
||||||
|
</div>
|
||||||
|
<div class="field">
|
||||||
|
<label class="label">Hex color (custom tokens)</label>
|
||||||
|
<div class="control">
|
||||||
|
<input data-mask="!#HHHHHH" class="custom-masked input">
|
||||||
|
</div>
|
||||||
|
<p class="help is-family-code">data-mask="!#HHHHHH"</p>
|
||||||
|
</div>
|
||||||
|
<div class="field">
|
||||||
|
<label class="label">Without mask (destroyed)</label>
|
||||||
|
<div class="control">
|
||||||
|
<input data-mask="###" class="unmasked input">
|
||||||
|
</div>
|
||||||
|
<p class="help is-family-code">data-mask="###"</p>
|
||||||
</div>
|
</div>
|
||||||
<p class="help is-family-code">data-mask="#*"</p>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="column">
|
</form>
|
||||||
<div class="field">
|
</div>
|
||||||
<label class="label">Date</label>
|
|
||||||
<div class="control">
|
|
||||||
<input data-mask="##/##/####" class="masked input">
|
|
||||||
</div>
|
|
||||||
<p class="help is-family-code">data-mask="##/##/####"</p>
|
|
||||||
</div>
|
|
||||||
<div class="field">
|
|
||||||
<label class="label">Hex color (custom tokens)</label>
|
|
||||||
<div class="control">
|
|
||||||
<input data-mask="!#HHHHHH" class="custom-masked input">
|
|
||||||
</div>
|
|
||||||
<p class="help is-family-code">data-mask="!#HHHHHH"</p>
|
|
||||||
</div>
|
|
||||||
<div class="field">
|
|
||||||
<label class="label">Without mask (destroyed)</label>
|
|
||||||
<div class="control">
|
|
||||||
<input data-mask="###" class="unmasked input">
|
|
||||||
</div>
|
|
||||||
<p class="help is-family-code">data-mask="###"</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</section>
|
||||||
|
|
||||||
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
|
<script src="https://cdn.jsdelivr.net/npm/vue@2.6"></script>
|
||||||
<script src="../dist/maska.js"></script>
|
<script src="https://cdn.jsdelivr.net/npm/maska/dist/maska.js"></script>
|
||||||
<script>
|
<script>
|
||||||
// vue
|
// vue
|
||||||
new Vue({
|
new Vue({
|
||||||
|
|||||||
+6
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "maska",
|
"name": "maska",
|
||||||
"version": "1.0.0",
|
"version": "1.0.1",
|
||||||
"description": "Simple zero-dependency input mask for Vue.js and vanilla JS",
|
"description": "Simple zero-dependency input mask for Vue.js and vanilla JS",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"mask",
|
"mask",
|
||||||
@@ -8,6 +8,11 @@
|
|||||||
"vue"
|
"vue"
|
||||||
],
|
],
|
||||||
"author": "Alexander Shabunevich <alex@aether.ru>",
|
"author": "Alexander Shabunevich <alex@aether.ru>",
|
||||||
|
"homepage": "https://beholdr.github.io/maska/",
|
||||||
|
"repository": {
|
||||||
|
"url": "https://github.com/beholdr/maska",
|
||||||
|
"type": "git"
|
||||||
|
},
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"serve": "rimraf dist && webpack --watch",
|
"serve": "rimraf dist && webpack --watch",
|
||||||
|
|||||||
Reference in New Issue
Block a user