/* * Input Mask plugin for jquery * http://github.com/RobinHerbots/jquery.inputmask * Copyright (c) 2010 - Robin Herbots * Licensed under the MIT license (http://www.opensource.org/licenses/mit-license.php) * Version: 0.0.0-dev */ (function (factory) { if (typeof define === "function" && define.amd) { define(["jquery", "inputmask"], factory); } else if (typeof exports === "object") { module.exports = factory(require("jquery"), require("./inputmask")); } else { factory(jQuery, window.Inputmask); } } (function ($, Inputmask) { if ($.fn.inputmask === undefined) { //jquery plugin $.fn.inputmask = function (fn, options) { var 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 wheter 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": $(input).val(options); if (input && input.inputmask === undefined) { //reactivate jquery.clone $(input).triggerHandler("setvalue"); } 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 (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); }); } }; } return $.fn.inputmask; }));