/** * jQuery strength v0.2.5 * https://github.com/amazingSurge/jquery-strength * * Copyright (c) amazingSurge * Released under the LGPL-3.0 license */ !function(t,e){if("function"==typeof define&&define.amd)define(["jquery","password_strength"],e);else if("undefined"!=typeof exports)e(require("jquery"),require("password_strength"));else{var s={exports:{}};e(t.jQuery,t.PasswordStrength),t.jqueryStrengthEs=s.exports}}(this,function(t,e){"use strict";function s(t){return t&&t.__esModule?t:{default:t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var i=s(t),a=s(e),r=function(){function t(t,e){for(var s=0;s',meter:'
{score}
',score:'',main:'
{input}{toggle}
{meter}
'},classes:{container:"strength-container",status:"strength-{status}",input:"strength-input",toggle:"strength-toggle",meter:"strength-meter",score:"strength-score",shown:"strength-shown"},scoreLables:{empty:"Empty",invalid:"Invalid",weak:"Weak",good:"Good",strong:"Strong"},scoreClasses:{empty:"",invalid:"label-danger",weak:"label-warning",good:"label-info",strong:"label-success"},emptyStatus:!0,scoreCallback:null,statusCallback:null},l=function(){function t(e){var s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};n(this,t),this.element=e,this.$element=(0,i.default)(e),this.options=i.default.extend(!0,{},o,s,this.$element.data()),this.classes=this.options.classes,this.$username=(0,i.default)(this.options.usernameField),this.score=0,this.status=null,this.shown=!1,this.trigger("init"),this.init()}return r(t,[{key:"init",value:function(){this.createHtml(),this.$element.addClass(this.classes.input),this.$toggle=this.$container.find("."+this.classes.toggle),this.$meter=this.$container.find("."+this.classes.meter),this.$score=this.$container.find("."+this.classes.score),this.$input=this.$container.find("."+this.classes.input),this.bindEvents(),this.initialized=!0,this.trigger("ready")}},{key:"bindEvents",value:function(){var t=this;this.$toggle.is(":checkbox")?this.$toggle.on("change",function(){t.toggle()}):this.$toggle.on("click",function(){t.toggle()}),this.$input.bind("keyup.strength keydown.strength",function(){t.check()}),this.$element.on("strength::check",function(e,s,n,i){if(t.$score.html(t.options.scoreLables[i]),i!==t.status){var a=t.options.scoreClasses[i],r=t.options.scoreClasses[t.status];t.$score.removeClass(r).addClass(a),t.trigger("statusChange",i,t.status)}t.status=i,t.score=n}),this.$element.on("strength::statusChange",function(e,s,n,i){t.$container.removeClass(t.getStatusClass(i)).addClass(t.getStatusClass(n))})}},{key:"getStatusClass",value:function(t){return this.options.classes.status.replace("{status}",t)}},{key:"createHtml",value:function(){var t=this.options.templates.main;t=(t=(t=(t=(t=t.replace("{containerClass}",this.classes.container)).replace("{toggle}",this.generateToggle())).replace("{meter}",this.generateMeter())).replace("{score}",this.generateScore())).replace("{input}",'
'),this.$container=(0,i.default)(t),this.options.skin&&this.$container.addClass(this.options.skin),this.$element.before(this.$container);var e=this.$container.find("."+this.classes.input),s=this.$element.detach();e.before(s),e.remove()}},{key:"generateToggle",value:function(){if(this.options.showToggle){var t=this.options.templates.toggle;return t=t.replace("{toggleClass}",this.classes.toggle)}return""}},{key:"generateMeter",value:function(){if(this.options.showMeter){var t=this.options.templates.meter;return t=t.replace("{meterClass}",this.classes.meter)}return""}},{key:"generateScore",value:function(){var t=this.options.templates.score;return t=t.replace("{scoreClass}",this.classes.score)}},{key:"check",value:function(){var t=0,e=null;if(i.default.isFunction(this.options.scoreCallback))t=this.options.scoreCallback.call(this),i.default.isFunction(this.options.statusCallback)&&(e=this.options.statusCallback.call(this,t));else{var s=new a.default;s.username=this.$username.val()||null,s.password=this.$input.val(),t=s.test(),e=s.status}this.options.emptyStatus&&"invalid"!==e&&""===this.$input.val()&&(e="empty"),this.trigger("check",t,e)}},{key:"getScore",value:function(){return this.score||this.check(),this.score}},{key:"getStatus",value:function(){return this.status||this.check(),this.status}},{key:"toggle",value:function(){var t=void 0;t=this.$toggle.is(":checkbox")?this.$toggle.is(":checked")?"text":"password":!1===this.shown?"text":"password",this.shown="text"===t,this.shown?this.$container.addClass(this.classes.shown):this.$container.removeClass(this.classes.shown),this.$input.attr("type",t),this.trigger("toggle",t)}},{key:"trigger",value:function(t){for(var e=arguments.length,s=Array(e>1?e-1:0),n=1;n1?e-1:0),n=1;n