| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- /*
- * Input Mask plugin for jquery
- * http://github.com/RobinHerbots/jquery.inputmask
- * Copyright (c) Robin Herbots
- * Licensed under the MIT license
- */
- import $ from "jquery";
- import Inputmask from "./inputmask";
- if ($.fn.inputmask === undefined) {
- // jquery plugin
- $.fn.inputmask = function (fn, options) {
- let nptmask,
- input = this[0];
- if (options === undefined) options = {};
- if (typeof fn === "string") {
- switch (fn) {
- case "unmaskedvalue":
- return input && input.inputmask
- ? input.inputmask.unmaskedvalue()
- : $(input).val();
- case "remove":
- return this.each(function () {
- if (this.inputmask) this.inputmask.remove();
- });
- case "getemptymask":
- return input && input.inputmask ? input.inputmask.getemptymask() : "";
- case "hasMaskedValue": // check whether the returned value is masked or not; currently only works reliable when using jquery.val fn to retrieve the value
- return input && input.inputmask
- ? input.inputmask.hasMaskedValue()
- : false;
- case "isComplete":
- return input && input.inputmask ? input.inputmask.isComplete() : true;
- case "getmetadata": // return mask metadata if exists
- return input && input.inputmask
- ? input.inputmask.getmetadata()
- : undefined;
- case "setvalue":
- Inputmask.setValue(input, options);
- break;
- case "option":
- if (typeof options === "string") {
- if (input && input.inputmask !== undefined) {
- return input.inputmask.option(options);
- }
- } else {
- return this.each(function () {
- if (this.inputmask !== undefined) {
- return this.inputmask.option(options);
- }
- });
- }
- break;
- default:
- options.alias = fn;
- nptmask = new Inputmask(options);
- return this.each(function () {
- nptmask.mask(this);
- });
- }
- } else if (Array.isArray(fn)) {
- options.alias = fn;
- nptmask = new Inputmask(options);
- return this.each(function () {
- nptmask.mask(this);
- });
- } else if (typeof fn === "object") {
- nptmask = new Inputmask(fn);
- if (fn.mask === undefined && fn.alias === undefined) {
- return this.each(function () {
- if (this.inputmask !== undefined) {
- return this.inputmask.option(fn);
- } else nptmask.mask(this);
- });
- } else {
- return this.each(function () {
- nptmask.mask(this);
- });
- }
- } else if (fn === undefined) {
- // look for data-inputmask atributes
- return this.each(function () {
- nptmask = new Inputmask(options);
- nptmask.mask(this);
- });
- }
- };
- }
|