From f241c712f6b2261ca276c016e0b09c2994a9504a Mon Sep 17 00:00:00 2001 From: Dylan Barth Date: Wed, 13 Jan 2016 16:24:40 +0000 Subject: [PATCH] Load zxcvbn when component is mounted. Fixes #27. --- demo/demo.bundle.js | 6 +++--- demo/demo.bundle.js.map | 2 +- demo/style.css | 2 +- lib/react-ux-password-field.js | 4 +--- lib/react-ux-password-field.min.js | 2 +- src/index.js | 6 ++++-- 6 files changed, 11 insertions(+), 11 deletions(-) diff --git a/demo/demo.bundle.js b/demo/demo.bundle.js index 3d1e566..3daf94b 100644 --- a/demo/demo.bundle.js +++ b/demo/demo.bundle.js @@ -1,13 +1,13 @@ !function(t){function e(a){if(n[a])return n[a].exports;var s=n[a]={exports:{},id:a,loaded:!1};return t[a].call(s.exports,s,s.exports,e),s.loaded=!0,s.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([/*!***************************!*\ !*** ./demo/src/index.js ***! \***************************/ -function(t,e,n){"use strict";n(/*! normalize.css/normalize.css */7),n(/*! ./vendor/skeleton.css */5),n(/*! ./vendor/github.css */4),n(/*! ./vendor/syntax.css */6),n(/*! ./vendor/rainbow-custom.min.js */2),n(/*! ./css/style.scss */9),n(/*! ./css/demo.scss */8);var a=n(/*! react */1),s=n(/*! ../../lib/react-ux-password-field.js */3);a.render(a.createElement("form",null,a.createElement("fieldset",null,a.createElement("label",{htmlFor:"password1"},"Password"),a.createElement(s,{id:"password1",name:"password1",placeholder:"Try me out! Enter a random password.",minScore:1,minLength:5,zxcvbn:"debug"}))),document.getElementById("content"))},/*!************************!*\ +function(t,e,n){"use strict";n(7),n(5),n(4),n(6),n(2),n(9),n(8);var a=n(1),s=n(3);a.render(a.createElement("form",null,a.createElement("fieldset",null,a.createElement("label",{htmlFor:"password1"},"Password"),a.createElement(s,{id:"password1",name:"password1",placeholder:"Try me out! Enter a random password.",minScore:1,minLength:5,zxcvbn:"debug"}))),document.getElementById("content"))},/*!************************!*\ !*** external "React" ***! \************************/ function(t,e){t.exports=React},/*!***********************************************!*\ !*** ./demo/src/vendor/rainbow-custom.min.js ***! \***********************************************/ -function(t,e){"use strict";window.Rainbow=function(){function t(t){var e,n=t.getAttribute&&t.getAttribute("data-language")||0;if(!n)for(t=t.attributes,e=0;e=t&&e>=m[v][n])&&(delete m[v][n],delete d[v][n]),t>=n&&tn&&e'+e+""}function s(t,e,i,p){if("undefined"==typeof t||null===t)p();else{var l=t.exec(i);if(l){++b,!e.name&&"string"==typeof e.matches[0]&&(e.name=e.matches[0],delete e.matches[0]);var u=l[0],g=l.index,h=l[0].length+g,f=function(){function n(){s(t,e,i,p)}b%100>0?n():setTimeout(n,0)};if(n(g,h))f();else{var y=r(e.matches),w=function x(t,n,s){if(t>=n.length)s(u);else{var r=l[n[t]];if(r){var i=e.matches[n[t]],p=i.language,g=i.name&&i.matches?i.matches:i,d=function(e,r,o){var i;i=0;var c;for(c=1;c0?r():setTimeout(r,0)}else s(t)}var a=r(d[v]);n(t,a,0,e)}function c(t,e,n){var a=h[e]||[],s=h[y]||[],e=f[e]?a:a.concat(s);o(t.replace(//g,">").replace(/&(?![\w\#]+;)/g,"&"),e,n)}function p(t,n,a){var s=!0;t:for(;s;){var r=t,o=n,i=a;if(l=u=void 0,s=!1,o=t&&e>=m[v][n])&&(delete m[v][n],delete d[v][n]),t>=n&&tn&&e'+e+""}function s(t,e,i,p){if("undefined"==typeof t||null===t)p();else{var l=t.exec(i);if(l){++b,!e.name&&"string"==typeof e.matches[0]&&(e.name=e.matches[0],delete e.matches[0]);var u=l[0],g=l.index,h=l[0].length+g,f=function(){function n(){s(t,e,i,p)}b%100>0?n():setTimeout(n,0)};if(n(g,h))f();else{var y=r(e.matches),w=function x(t,n,s){if(t>=n.length)s(u);else{var r=l[n[t]];if(r){var i=e.matches[n[t]],p=i.language,g=i.name&&i.matches?i.matches:i,d=function(e,r,o){var i;i=0;var c;for(c=1;c0?r():setTimeout(r,0)}else s(t)}var a=r(d[v]);n(t,a,0,e)}function c(t,e,n){var a=h[e]||[],s=h[y]||[],e=f[e]?a:a.concat(s);o(t.replace(//g,">").replace(/&(?![\w\#]+;)/g,"&"),e,n)}function p(t,n,a){var s=!0;t:for(;s;){var r=t,o=n,i=a;if(s=!1,o=0||Object.prototype.hasOwnProperty.call(t,a)&&(n[a]=t[a]);return n}var s=Object.assign||function(t){for(var e=1;e0&&this.props.strengthLang.length>0?this.props.strengthLang[this.state.score]:null)));var e=this.props,o=(e.onChange,a(e,["onChange"])),i=this;return setTimeout(function(){if(/Firefox/.test(navigator.userAgent)){var t=i.refs[i.props.id].getDOMNode();t.selectionStart=i.state.selectionStart,t.selectionEnd=i.state.selectionEnd}},1),r.createElement("div",{style:{position:"relative",display:"inline-block"},className:"passwordField","data-valid":this.state.isValid,"data-score":this.state.score,"data-entropy":this.state.entropy},r.createElement("input",s({ref:this.props.id,className:"passwordField__input",type:this.state.isPassword?"password":"text",value:this.state.value,style:this.state.isPassword?null:this.unMaskStyle,onChange:this.handleChange},o)),t)}});t.exports=p},function(e,n){e.exports=t},function(t,e){t.exports={statusColor:"#5CE592",statusInactiveColor:"#FC6F6F",unMaskColor:"#c7c7c7",unMaskTime:1400,zxcvbnSrc:"https://cdnjs.cloudflare.com/ajax/libs/zxcvbn/1.0/zxcvbn.min.js",strengthLang:["Weak","Okay","Good","Strong","Great"]}},function(t,e,n){function a(t,e,n){function a(){v&&clearTimeout(v),d&&clearTimeout(d),b=0,d=v=y=void 0}function r(e,n){n&&clearTimeout(n),d=v=y=void 0,e&&(b=p(),m=t.apply(f,g),v||d||(g=f=void 0))}function c(){var t=e-(p()-h);0>=t||t>e?r(y,d):v=setTimeout(c,t)}function l(){r(x,v)}function u(){if(g=arguments,h=p(),f=this,y=x&&(v||!M),w===!1)var n=M&&!v;else{d||M||(b=h);var a=w-(h-b),s=0>=a||a>w;s?(d&&(d=clearTimeout(d)),b=h,m=t.apply(f,g)):d||(d=setTimeout(l,a))}return s&&v?v=clearTimeout(v):v||e===w||(v=setTimeout(c,e)),n&&(s=!0,m=t.apply(f,g)),!s||v||d||(g=f=void 0),m}var g,d,m,h,f,v,y,b=0,w=!1,x=!0;if("function"!=typeof t)throw new TypeError(o);if(e=0>e?0:+e||0,n===!0){var M=!0;x=!1}else s(n)&&(M=!!n.leading,w="maxWait"in n&&i(+n.maxWait||0,e),x="trailing"in n?!!n.trailing:x);return u.cancel=a,u}function s(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}var r=n(4),o="Expected a function",i=Math.max,c=r(Date,"now"),p=c||function(){return(new Date).getTime()};t.exports=a},function(t,e){function n(t){return!!t&&"object"==typeof t}function a(t,e){var n=null==t?void 0:t[e];return o(n)?n:void 0}function s(t){return r(t)&&g.call(t)==i}function r(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function o(t){return null==t?!1:s(t)?d.test(l.call(t)):n(t)&&c.test(t)}var i="[object Function]",c=/^\[object .+?Constructor\]$/,p=Object.prototype,l=Function.prototype.toString,u=p.hasOwnProperty,g=p.toString,d=RegExp("^"+l.call(u).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=a},function(t,e){t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCRkNDMzg4M0FFN0IxMUU0OTE2RkY5MzYyMkI3QTVDMiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCRkNDMzg4NEFFN0IxMUU0OTE2RkY5MzYyMkI3QTVDMiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkJGQ0MzODgxQUU3QjExRTQ5MTZGRjkzNjIyQjdBNUMyIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkJGQ0MzODgyQUU3QjExRTQ5MTZGRjkzNjIyQjdBNUMyIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+NkztvAAAAc9JREFUeNq8lk8oBFEcx2fG5k+0HJRQ/iVy2U1tUsjBzYnI2cUWJyl3XJRSkgOtxEU4keLgQP6kuColoeQgEkXWand8X/3UNM28Z56Z961PO2/fb9535r3f/N7TTdPUnBSLxTSBcsEA6AW1IAw+wD3YAtPg0+1mXdK4DJyAKk7MM+gE506dhuZdleBSYMpUDM5Ah1NnyKOpDnZpWn91C/ZBksZrBhFL/zaopyWQNh4HDZZ2AsQd4kbBFF3ngRnQ8581vgHVdH0M2jgPeWjpz1BePMqscdRiyrQhiF+25VK7bHI12toXgvg9+yTKGpc6TDtPD+DJ0i6RNS6ytZOC+IwtpkA2q1epKLyDb/D2h3uGQQXIBqcyWd1FBeEOZNFM1YEckHYpTGzgKyqbpmWp1kEq9IeCcQRaNP80CZoMQclb8NmUqRys8IxZpenTglHUEOxAhQEZ5/OM01qAMnwah+3Ng2BTpTGr2a1gHnSDCVXGs7Z2QpVxjUNSKjGeo29T+RuHqaRqtOdGVGZ1in6/VH9OYZet01Uhnx5qBLyAIT+MvVQulslLflWuazq+BKFXnvEaWAzI+IA31ezUMEaJE6dDQYb+9yrdMrs7oP9HgAEAXmVa5ulD/g0AAAAASUVORK5CYII="}])})},/*!************************************!*\ +"use strict";!function(e,a){t.exports=a(n(1))}(void 0,function(t){return function(t){function e(a){if(n[a])return n[a].exports;var s=n[a]={exports:{},id:a,loaded:!1};return t[a].call(s.exports,s,s.exports,e),s.loaded=!0,s.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([function(t,e,n){function a(t,e){var n={};for(var a in t)e.indexOf(a)>=0||Object.prototype.hasOwnProperty.call(t,a)&&(n[a]=t[a]);return n}var s=Object.assign||function(t){for(var e=1;e0&&this.props.strengthLang.length>0?this.props.strengthLang[this.state.score]:null)));var e=this.props,o=(e.onChange,a(e,["onChange"])),i=this;return setTimeout(function(){if(/Firefox/.test(navigator.userAgent)){var t=i.refs[i.props.id].getDOMNode();t.selectionStart=i.state.selectionStart,t.selectionEnd=i.state.selectionEnd}},1),r.createElement("div",{style:{position:"relative",display:"inline-block"},className:"passwordField","data-valid":this.state.isValid,"data-score":this.state.score,"data-entropy":this.state.entropy},r.createElement("input",s({ref:this.props.id,className:"passwordField__input",type:this.state.isPassword?"password":"text",value:this.state.value,style:this.state.isPassword?null:this.unMaskStyle,onChange:this.handleChange},o)),t)}});t.exports=p},function(e,n){e.exports=t},function(t,e){t.exports={statusColor:"#5CE592",statusInactiveColor:"#FC6F6F",unMaskColor:"#c7c7c7",unMaskTime:1400,zxcvbnSrc:"https://cdnjs.cloudflare.com/ajax/libs/zxcvbn/1.0/zxcvbn.min.js",strengthLang:["Weak","Okay","Good","Strong","Great"]}},function(t,e,n){function a(t,e,n){function a(){v&&clearTimeout(v),d&&clearTimeout(d),b=0,d=v=y=void 0}function r(e,n){n&&clearTimeout(n),d=v=y=void 0,e&&(b=p(),m=t.apply(f,g),v||d||(g=f=void 0))}function c(){var t=e-(p()-h);0>=t||t>e?r(y,d):v=setTimeout(c,t)}function l(){r(x,v)}function u(){if(g=arguments,h=p(),f=this,y=x&&(v||!M),w===!1)var n=M&&!v;else{d||M||(b=h);var a=w-(h-b),s=0>=a||a>w;s?(d&&(d=clearTimeout(d)),b=h,m=t.apply(f,g)):d||(d=setTimeout(l,a))}return s&&v?v=clearTimeout(v):v||e===w||(v=setTimeout(c,e)),n&&(s=!0,m=t.apply(f,g)),!s||v||d||(g=f=void 0),m}var g,d,m,h,f,v,y,b=0,w=!1,x=!0;if("function"!=typeof t)throw new TypeError(o);if(e=0>e?0:+e||0,n===!0){var M=!0;x=!1}else s(n)&&(M=!!n.leading,w="maxWait"in n&&i(+n.maxWait||0,e),x="trailing"in n?!!n.trailing:x);return u.cancel=a,u}function s(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}var r=n(4),o="Expected a function",i=Math.max,c=r(Date,"now"),p=c||function(){return(new Date).getTime()};t.exports=a},function(t,e){function n(t){return!!t&&"object"==typeof t}function a(t,e){var n=null==t?void 0:t[e];return o(n)?n:void 0}function s(t){return r(t)&&g.call(t)==i}function r(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function o(t){return null==t?!1:s(t)?d.test(l.call(t)):n(t)&&c.test(t)}var i="[object Function]",c=/^\[object .+?Constructor\]$/,p=Object.prototype,l=Function.prototype.toString,u=p.hasOwnProperty,g=p.toString,d=RegExp("^"+l.call(u).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=a},function(t,e){t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCRkNDMzg4M0FFN0IxMUU0OTE2RkY5MzYyMkI3QTVDMiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCRkNDMzg4NEFFN0IxMUU0OTE2RkY5MzYyMkI3QTVDMiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkJGQ0MzODgxQUU3QjExRTQ5MTZGRjkzNjIyQjdBNUMyIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkJGQ0MzODgyQUU3QjExRTQ5MTZGRjkzNjIyQjdBNUMyIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+NkztvAAAAc9JREFUeNq8lk8oBFEcx2fG5k+0HJRQ/iVy2U1tUsjBzYnI2cUWJyl3XJRSkgOtxEU4keLgQP6kuColoeQgEkXWand8X/3UNM28Z56Z961PO2/fb9535r3f/N7TTdPUnBSLxTSBcsEA6AW1IAw+wD3YAtPg0+1mXdK4DJyAKk7MM+gE506dhuZdleBSYMpUDM5Ah1NnyKOpDnZpWn91C/ZBksZrBhFL/zaopyWQNh4HDZZ2AsQd4kbBFF3ngRnQ8581vgHVdH0M2jgPeWjpz1BePMqscdRiyrQhiF+25VK7bHI12toXgvg9+yTKGpc6TDtPD+DJ0i6RNS6ytZOC+IwtpkA2q1epKLyDb/D2h3uGQQXIBqcyWd1FBeEOZNFM1YEckHYpTGzgKyqbpmWp1kEq9IeCcQRaNP80CZoMQclb8NmUqRys8IxZpenTglHUEOxAhQEZ5/OM01qAMnwah+3Ng2BTpTGr2a1gHnSDCVXGs7Z2QpVxjUNSKjGeo29T+RuHqaRqtOdGVGZ1in6/VH9OYZet01Uhnx5qBLyAIT+MvVQulslLflWuazq+BKFXnvEaWAzI+IA31ezUMEaJE6dDQYb+9yrdMrs7oP9HgAEAXmVa5ulD/g0AAAAASUVORK5CYII="}])})},/*!************************************!*\ !*** ./demo/src/vendor/github.css ***! \************************************/ function(t,e){},/*!**************************************!*\ diff --git a/demo/demo.bundle.js.map b/demo/demo.bundle.js.map index dfaedf8..c20a196 100644 --- a/demo/demo.bundle.js.map +++ b/demo/demo.bundle.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///demo.bundle.js","webpack:///webpack/bootstrap 25d821ec2675cacf8c3e","webpack:///./demo/src/index.js","webpack:///external \"React\"","webpack:///./demo/src/vendor/rainbow-custom.min.js","webpack:///./lib/react-ux-password-field.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","React","InputPassword","render","createElement","htmlFor","name","placeholder","minScore","minLength","zxcvbn","document","getElementById","window","Rainbow","q","a","b","getAttribute","attributes","length","nodeName","nodeValue","B","parentNode","className","match","C","f","d","parseInt","j","r","replace","l","s","i","e","exec","t","matches","k","g","index","u","h","setTimeout","v","language","substr","n","w","with","hasOwnProperty","push","sort","pattern","D","x","y","z","concat","o","_x","_x2","_x3","_again","_function","undefined","indexOf","toLowerCase","innerHTML","A","getElementsByTagName","extend","arguments","_a","color","addEventListener","attachEvent","onHighlight","addClass",1,2,3,4,5,"root","factory","__WEBPACK_EXTERNAL_MODULE_1__","_objectWithoutProperties","obj","keys","target","Object","prototype","_extends","assign","source","key","RP","PropTypes","config","debounce","createClass","displayName","propTypes","infoBar","bool","statusColor","string","statusInactiveColor","number","changeCb","func","toggleMask","unMaskTime","strengthLang","array","getDefaultProps","zxcvbnSrc","getInitialState","value","score","entropy","isPassword","isValid","getMeterStyle","width","this","state","props","maxWidth","opacity","background","height","transition","display","marginRight","unMaskStyle","unMaskColor","fontWeight","infoStyle","position","bottom","overflow","iconStyle","top","strengthLangStyle","fontSize","addPasswordType","setState","handleInputType","handleChange","preventDefault","native_target","nativeEvent","val","validity","valid","selectionStart","selectionEnd","handleToggleMask","handleZxcvbn","onChange","handleMinLength","maskPassword","stats","currentScore","console","debug","len","componentWillMount","src","type","async","insertBefore","componentWillUnmount","cancel","style","_props","that","test","navigator","userAgent","elem","refs","getDOMNode","data-valid","data-score","data-entropy","ref","wait","options","timeoutId","clearTimeout","maxTimeoutId","lastCalled","trailingCall","complete","isCalled","now","result","apply","thisArg","args","delayed","remaining","stamp","maxDelayed","trailing","debounced","leading","maxWait","leadingCall","TypeError","FUNC_ERROR_TEXT","isObject","nativeMax","getNative","Math","max","nativeNow","Date","getTime","isObjectLike","object","isNative","isFunction","objToString","funcTag","reIsNative","fnToString","reIsHostCtor","objectProto","Function","toString","RegExp"],"mappings":"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","file":"demo.bundle.js","sourcesContent":["/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/*!***************************!*\\\n !*** ./demo/src/index.js ***!\n \\***************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\t// demo pages css\n\t__webpack_require__(/*! normalize.css/normalize.css */ 7);\n\t__webpack_require__(/*! ./vendor/skeleton.css */ 5);\n\t__webpack_require__(/*! ./vendor/github.css */ 4);\n\t__webpack_require__(/*! ./vendor/syntax.css */ 6);\n\t__webpack_require__(/*! ./vendor/rainbow-custom.min.js */ 2);\n\t__webpack_require__(/*! ./css/style.scss */ 9);\n\t\n\t// css for form field\n\t__webpack_require__(/*! ./css/demo.scss */ 8);\n\t\n\t/*========== APP ==========*/\n\t\n\tvar React = __webpack_require__(/*! react */ 1),\n\t InputPassword = __webpack_require__(/*! ../../lib/react-ux-password-field.js */ 3);\n\t\n\tReact.render(React.createElement(\n\t 'form',\n\t null,\n\t React.createElement(\n\t 'fieldset',\n\t null,\n\t React.createElement(\n\t 'label',\n\t { htmlFor: 'password1' },\n\t 'Password'\n\t ),\n\t React.createElement(InputPassword, {\n\t id: 'password1',\n\t name: 'password1',\n\t placeholder: 'Try me out! Enter a random password.',\n\t minScore: 1,\n\t minLength: 5,\n\t zxcvbn: 'debug'\n\t })\n\t )\n\t), document.getElementById('content'));\n\n/***/ },\n/* 1 */\n/*!************************!*\\\n !*** external \"React\" ***!\n \\************************/\n/***/ function(module, exports) {\n\n\tmodule.exports = React;\n\n/***/ },\n/* 2 */\n/*!***********************************************!*\\\n !*** ./demo/src/vendor/rainbow-custom.min.js ***!\n \\***********************************************/\n/***/ function(module, exports) {\n\n\t/* Rainbow v1.2 rainbowco.de | included languages: generic, shell, javascript, html */\n\t\"use strict\";\n\t\n\twindow.Rainbow = (function () {\n\t function q(a) {\n\t var b,\n\t c = a.getAttribute && a.getAttribute(\"data-language\") || 0;if (!c) {\n\t a = a.attributes;for (b = 0; b < a.length; ++b) if (\"data-language\" === a[b].nodeName) return a[b].nodeValue;\n\t }return c;\n\t }function B(a) {\n\t var b = q(a) || q(a.parentNode);if (!b) {\n\t var c = /\\blang(?:uage)?-(\\w+)/;(a = a.className.match(c) || a.parentNode.className.match(c)) && (b = a[1]);\n\t }return b;\n\t }function C(a, b) {\n\t for (var c in f[d]) {\n\t c = parseInt(c, 10);if (a == c && b == f[d][c] ? 0 : a <= c && b >= f[d][c]) delete f[d][c], delete j[d][c];if (a >= c && a < f[d][c] || b > c && b < f[d][c]) return !0;\n\t }return !1;\n\t }function r(a, b) {\n\t return '' + b + \"\";\n\t }function s(a, b, c, i) {\n\t if (\"undefined\" === typeof a || null === a) i();else {\n\t var e = a.exec(c);if (e) {\n\t ++t;!b.name && \"string\" == typeof b.matches[0] && (b.name = b.matches[0], delete b.matches[0]);var k = e[0],\n\t g = e.index,\n\t u = e[0].length + g,\n\t h = function h() {\n\t function e() {\n\t s(a, b, c, i);\n\t }t % 100 > 0 ? e() : setTimeout(e, 0);\n\t };if (C(g, u)) h();else {\n\t var m = v(b.matches),\n\t l = function l(a, c, i) {\n\t if (a >= c.length) i(k);else {\n\t var d = e[c[a]];if (d) {\n\t var g = b.matches[c[a]],\n\t f = g.language,\n\t h = g.name && g.matches ? g.matches : g,\n\t j = function j(b, d, g) {\n\t var f;f = 0;var h;for (h = 1; h < c[a]; ++h) e[h] && (f = f + e[h].length);d = g ? r(g, d) : d;k = k.substr(0, f) + k.substr(f).replace(b, d);l(++a, c, i);\n\t };f ? n(d, f, function (a) {\n\t j(d, a);\n\t }) : typeof g === \"string\" ? j(d, d, g) : w(d, h.length ? h : [h], function (a) {\n\t j(d, a, g.matches ? g.name : 0);\n\t });\n\t } else l(++a, c, i);\n\t }\n\t };l(0, m, function (a) {\n\t b.name && (a = r(b.name, a));if (!j[d]) {\n\t j[d] = {};f[d] = {};\n\t }j[d][g] = { replace: e[0], \"with\": a };f[d][g] = u;h();\n\t });\n\t }\n\t } else i();\n\t }\n\t }function v(a) {\n\t var b = [],\n\t c;for (c in a) a.hasOwnProperty(c) && b.push(c);return b.sort(function (a, b) {\n\t return b - a;\n\t });\n\t }function w(a, b, c) {\n\t function i(b, k) {\n\t k < b.length ? s(b[k].pattern, b[k], a, function () {\n\t i(b, ++k);\n\t }) : D(a, function (a) {\n\t delete j[d];delete f[d];--d;c(a);\n\t });\n\t }++d;i(b, 0);\n\t }function D(a, b) {\n\t function c(a, b, i, f) {\n\t if (i < b.length) {\n\t ++x;var h = b[i],\n\t l = j[d][h],\n\t a = a.substr(0, h) + a.substr(h).replace(l.replace, l[\"with\"]),\n\t h = function h() {\n\t c(a, b, ++i, f);\n\t };0 < x % 250 ? h() : setTimeout(h, 0);\n\t } else f(a);\n\t }var i = v(j[d]);c(a, i, 0, b);\n\t }function n(a, b, c) {\n\t var d = m[b] || [],\n\t e = m[y] || [],\n\t b = z[b] ? d : d.concat(e);w(a.replace(//g, \">\").replace(/&(?![\\w\\#]+;)/g, \"&\"), b, c);\n\t }function o(_x, _x2, _x3) {\n\t var _again = true;\n\t\n\t _function: while (_again) {\n\t var a = _x,\n\t b = _x2,\n\t c = _x3;\n\t d = e = undefined;\n\t _again = false;\n\t if (b < a.length) {\n\t var d = a[b],\n\t e = B(d);if (!(-1 < (\" \" + d.className + \" \").indexOf(\" rainbow \")) && e) {\n\t return (e = e.toLowerCase(), d.className += d.className ? \" rainbow\" : \"rainbow\", n(d.innerHTML, e, function (k) {\n\t d.innerHTML = k;j = {};f = {};p && p(d, e);setTimeout(function () {\n\t o(a, ++b, c);\n\t }, 0);\n\t }));\n\t } else {\n\t _x = a;\n\t _x2 = ++b;\n\t _x3 = c;\n\t _again = true;\n\t continue _function;\n\t }\n\t }c && c();\n\t }\n\t }function A(a, b) {\n\t var a = a && \"function\" == typeof a.getElementsByTagName ? a : document,\n\t c = a.getElementsByTagName(\"pre\"),\n\t d = a.getElementsByTagName(\"code\"),\n\t e,\n\t f = [],\n\t g = [];for (e = 0; e < c.length; ++e) c[e].getElementsByTagName(\"code\").length ? c[e].innerHTML = c[e].innerHTML.replace(/^\\s+/, \"\").replace(/\\s+$/, \"\") : f.push(c[e]);for (e = 0; e < d.length; ++e) g.push(d[e]);o(g.concat(f), 0, b);\n\t }var j = {},\n\t f = {},\n\t m = {},\n\t z = {},\n\t d = 0,\n\t y = 0,\n\t t = 0,\n\t x = 0,\n\t l,\n\t p;return { extend: function extend(a, b, c) {\n\t 1 == arguments.length && (b = a, a = y);z[a] = c;m[a] = b.concat(m[a] || []);\n\t }, b: function b(a) {\n\t p = a;\n\t }, a: function a(_a) {\n\t l = _a;\n\t }, color: function color(a, b, c) {\n\t if (\"string\" == typeof a) return n(a, b, c);if (\"function\" == typeof a) return A(0, a);A(a, b);\n\t } };\n\t})();\n\tdocument.addEventListener ? document.addEventListener(\"DOMContentLoaded\", Rainbow.color, !1) : window.attachEvent(\"onload\", Rainbow.color);Rainbow.onHighlight = Rainbow.b;Rainbow.addClass = Rainbow.a;Rainbow.extend([{ matches: { 1: [{ name: \"keyword.operator\", pattern: /\\=|\\+/g }, { name: \"keyword.dot\", pattern: /\\./g }], 2: { name: \"string\", matches: { name: \"constant.character.escape\", pattern: /\\\\('|\"){1}/g } } }, pattern: /(\\(|\\s|\\[|\\=|:|\\+|\\.)(('|\")([^\\\\\\1]|\\\\.)*?(\\3))/gm }, { name: \"comment\", pattern: /\\/\\*[\\s\\S]*?\\*\\/|(\\/\\/|\\#)[\\s\\S]*?$/gm }, { name: \"constant.numeric\", pattern: /\\b(\\d+(\\.\\d+)?(e(\\+|\\-)?\\d+)?(f|d)?|0x[\\da-f]+)\\b/gi }, { matches: { 1: \"keyword\" }, pattern: /\\b(and|array|as|b(ool(ean)?|reak)|c(ase|atch|har|lass|on(st|tinue))|d(ef|elete|o(uble)?)|e(cho|lse(if)?|xit|xtends|xcept)|f(inally|loat|or(each)?|unction)|global|if|import|int(eger)?|long|new|object|or|pr(int|ivate|otected)|public|return|self|st(ring|ruct|atic)|switch|th(en|is|row)|try|(un)?signed|var|void|while)(?=\\(|\\b)/gi }, { name: \"constant.language\", pattern: /true|false|null/g }, { name: \"keyword.operator\", pattern: /\\+|\\!|\\-|&(gt|lt|amp);|\\||\\*|\\=/g }, { matches: { 1: \"function.call\" }, pattern: /(\\w+?)(?=\\()/g }, { matches: { 1: \"storage.function\", 2: \"entity.name.function\" }, pattern: /(function)\\s(.*?)(?=\\()/g }]);Rainbow.extend(\"shell\", [{ name: \"shell\", matches: { 1: { language: \"shell\" } }, pattern: /\\$\\(([\\s\\S]*?)\\)/gm }, { matches: { 2: \"string\" }, pattern: /(\\(|\\s|\\[|\\=)(('|\")[\\s\\S]*?(\\3))/gm }, { name: \"keyword.operator\", pattern: /<|>|&/g }, { name: \"comment\", pattern: /\\#[\\s\\S]*?$/gm }, { name: \"storage.function\", pattern: /(.+?)(?=\\(\\)\\s{0,}\\{)/g }, { name: \"support.command\", pattern: /\\b(echo|rm|ls|(mk|rm)dir|cd|find|cp|exit|pwd|exec|trap|source|shift|unset)/g }, { matches: { 1: \"keyword\" }, pattern: /\\b(break|case|continue|do|done|elif|else|esac|eval|export|fi|for|function|if|in|local|return|set|then|unset|until|while)(?=\\(|\\b)/g }], !0);Rainbow.extend(\"javascript\", [{ name: \"selector\", pattern: /(\\s|^)\\$(?=\\.|\\()/g }, { name: \"support\", pattern: /\\b(window|document)\\b/g }, { matches: { 1: \"support.property\" }, pattern: /\\.(length|node(Name|Value))\\b/g }, { matches: { 1: \"support.function\" }, pattern: /(setTimeout|setInterval)(?=\\()/g }, { matches: { 1: \"support.method\" }, pattern: /\\.(getAttribute|push|getElementById|getElementsByClassName|log|setTimeout|setInterval)(?=\\()/g }, { name: \"string.regexp\", matches: { 1: \"string.regexp.open\", 2: { name: \"constant.regexp.escape\", pattern: /\\\\(.){1}/g },\n\t 3: \"string.regexp.close\", 4: \"string.regexp.modifier\" }, pattern: /(\\/)(?!\\*)(.+)(\\/)([igm]{0,3})/g }, { matches: { 1: \"storage\", 3: \"entity.function\" }, pattern: /(var)?(\\s|^)(\\S*)(?=\\s?=\\s?function\\()/g }, { matches: { 1: \"keyword\", 2: \"entity.function\" }, pattern: /(new)\\s+(.*)(?=\\()/g }, { name: \"entity.function\", pattern: /(\\w+)(?=:\\s{0,}function)/g }]);Rainbow.extend(\"html\", [{ name: \"source.php.embedded\", matches: { 2: { language: \"php\" } }, pattern: /<\\?=?(?!xml)(php)?([\\s\\S]*?)(\\?>)/gm }, { name: \"source.css.embedded\", matches: { 1: { matches: { 1: \"support.tag.style\", 2: [{ name: \"entity.tag.style\", pattern: /^style/g }, { name: \"string\", pattern: /('|\")(.*?)(\\1)/g }, { name: \"entity.tag.style.attribute\", pattern: /(\\w+)/g }], 3: \"support.tag.style\" }, pattern: /(<\\/?)(style.*?)(>)/g }, 2: { language: \"css\" }, 3: \"support.tag.style\", 4: \"entity.tag.style\", 5: \"support.tag.style\" }, pattern: /(<style.*?>)([\\s\\S]*?)(<\\/)(style)(>)/gm }, { name: \"source.js.embedded\", matches: { 1: { matches: { 1: \"support.tag.script\", 2: [{ name: \"entity.tag.script\", pattern: /^script/g }, { name: \"string\", pattern: /('|\")(.*?)(\\1)/g }, { name: \"entity.tag.script.attribute\", pattern: /(\\w+)/g }], 3: \"support.tag.script\" }, pattern: /(<\\/?)(script.*?)(>)/g }, 2: { language: \"javascript\" }, 3: \"support.tag.script\", 4: \"entity.tag.script\", 5: \"support.tag.script\" }, pattern: /(<script(?! src).*?>)([\\s\\S]*?)(<\\/)(script)(>)/gm }, { name: \"comment.html\", pattern: /<\\!--[\\S\\s]*?-->/g }, { matches: { 1: \"support.tag.open\", 2: \"support.tag.close\" }, pattern: /(<)|(\\/?\\??>)/g }, { name: \"support.tag\", matches: { 1: \"support.tag\", 2: \"support.tag.special\", 3: \"support.tag-name\" }, pattern: /(<\\??)(\\/|\\!?)(\\w+)/g }, { matches: { 1: \"support.attribute\" }, pattern: /([a-z-]+)(?=\\=)/gi }, { matches: { 1: \"support.operator\", 2: \"string.quote\", 3: \"string.value\", 4: \"string.quote\" }, pattern: /(=)('|\")(.*?)(\\2)/g }, { matches: { 1: \"support.operator\", 2: \"support.value\" }, pattern: /(=)([a-zA-Z\\-0-9]*)\\b/g }, { matches: { 1: \"support.attribute\" },\n\t pattern: /\\s(\\w+)(?=\\s|>)(?![\\s\\S]*<)/g }], !0);\n\n/***/ },\n/* 3 */\n/*!****************************************!*\\\n !*** ./lib/react-ux-password-field.js ***!\n \\****************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t/*!\n\t * React UX Password Field\n\t * version: 0.9.10\n\t * \n\t * MIT Licensed\n\t * github: https://github.com/seethroughtrees/react-ux-password-field/\n\t * demo: https://seethroughtrees.github.io/react-ux-password-field/\n\t * \n\t */\n\t'use strict';\n\t\n\t(function webpackUniversalModuleDefinition(root, factory) {\n\t\tif (true) module.exports = factory(__webpack_require__(/*! react */ 1));else if (typeof define === 'function' && define.amd) define([\"react\"], factory);else if (typeof exports === 'object') exports[\"react-ux-password-field\"] = factory(require(\"react\"));else root[\"react-ux-password-field\"] = factory(root[\"React\"]);\n\t})(undefined, function (__WEBPACK_EXTERNAL_MODULE_1__) {\n\t\treturn (/******/(function (modules) {\n\t\t\t\t// webpackBootstrap\n\t\t\t\t/******/ // The module cache\n\t\t\t\t/******/var installedModules = {};\n\t\n\t\t\t\t/******/ // The require function\n\t\t\t\t/******/function __webpack_require__(moduleId) {\n\t\n\t\t\t\t\t/******/ // Check if module is in cache\n\t\t\t\t\t/******/if (installedModules[moduleId])\n\t\t\t\t\t\t/******/return installedModules[moduleId].exports;\n\t\n\t\t\t\t\t/******/ // Create a new module (and put it into the cache)\n\t\t\t\t\t/******/var module = installedModules[moduleId] = {\n\t\t\t\t\t\t/******/exports: {},\n\t\t\t\t\t\t/******/id: moduleId,\n\t\t\t\t\t\t/******/loaded: false\n\t\t\t\t\t\t/******/ };\n\t\n\t\t\t\t\t/******/ // Execute the module function\n\t\t\t\t\t/******/modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\t\n\t\t\t\t\t/******/ // Flag the module as loaded\n\t\t\t\t\t/******/module.loaded = true;\n\t\n\t\t\t\t\t/******/ // Return the exports of the module\n\t\t\t\t\t/******/return module.exports;\n\t\t\t\t\t/******/\n\t\t\t\t}\n\t\n\t\t\t\t/******/ // expose the modules object (__webpack_modules__)\n\t\t\t\t/******/__webpack_require__.m = modules;\n\t\n\t\t\t\t/******/ // expose the module cache\n\t\t\t\t/******/__webpack_require__.c = installedModules;\n\t\n\t\t\t\t/******/ // __webpack_public_path__\n\t\t\t\t/******/__webpack_require__.p = \"\";\n\t\n\t\t\t\t/******/ // Load entry module and return exports\n\t\t\t\t/******/return __webpack_require__(0);\n\t\t\t\t/******/\n\t\t\t})(\n\t\t\t/************************************************************************/\n\t\t\t/******/[\n\t\t\t/* 0 */\n\t\t\tfunction (module, exports, __webpack_require__) {\n\t\n\t\t\t\t'use strict';\n\t\n\t\t\t\tvar _extends = Object.assign || function (target) {\n\t\t\t\t\tfor (var i = 1; i < arguments.length; i++) {\n\t\t\t\t\t\tvar source = arguments[i];for (var key in source) {\n\t\t\t\t\t\t\tif (Object.prototype.hasOwnProperty.call(source, key)) {\n\t\t\t\t\t\t\t\ttarget[key] = source[key];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}return target;\n\t\t\t\t};\n\t\n\t\t\t\tfunction _objectWithoutProperties(obj, keys) {\n\t\t\t\t\tvar target = {};for (var i in obj) {\n\t\t\t\t\t\tif (keys.indexOf(i) >= 0) continue;if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;target[i] = obj[i];\n\t\t\t\t\t}return target;\n\t\t\t\t}\n\t\n\t\t\t\tvar React = __webpack_require__(1),\n\t\t\t\t RP = React.PropTypes,\n\t\t\t\t config = __webpack_require__(2),\n\t\t\t\t debounce = __webpack_require__(3);\n\t\n\t\t\t\tvar InputPassword = React.createClass({\n\t\t\t\t\tdisplayName: 'InputPassword',\n\t\n\t\t\t\t\t/*========== VALIDATE ==========*/\n\t\n\t\t\t\t\tpropTypes: {\n\t\t\t\t\t\tinfoBar: RP.bool,\n\t\t\t\t\t\tstatusColor: RP.string,\n\t\t\t\t\t\tstatusInactiveColor: RP.string,\n\t\t\t\t\t\tminScore: RP.number,\n\t\t\t\t\t\tchangeCb: RP.func,\n\t\t\t\t\t\ttoggleMask: RP.bool,\n\t\t\t\t\t\tunMaskTime: RP.number,\n\t\t\t\t\t\tminLength: RP.number,\n\t\t\t\t\t\tstrengthLang: RP.array,\n\t\t\t\t\t\tid: RP.string\n\t\t\t\t\t},\n\t\n\t\t\t\t\t/*========== DEFAULTS ==========*/\n\t\n\t\t\t\t\tgetDefaultProps: function getDefaultProps() {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tinfoBar: true,\n\t\t\t\t\t\t\tstatusColor: config.statusColor,\n\t\t\t\t\t\t\tstatusInactiveColor: config.statusInactiveColor,\n\t\t\t\t\t\t\tzxcvbn: config.zxcvbnSrc,\n\t\t\t\t\t\t\tminScore: 0,\n\t\t\t\t\t\t\ttoggleMask: true,\n\t\t\t\t\t\t\tunMaskTime: config.unMaskTime,\n\t\t\t\t\t\t\tstrengthLang: config.strengthLang,\n\t\t\t\t\t\t\tid: 'input'\n\t\t\t\t\t\t};\n\t\t\t\t\t},\n\t\n\t\t\t\t\tgetInitialState: function getInitialState() {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tvalue: '',\n\t\t\t\t\t\t\tscore: 0,\n\t\t\t\t\t\t\tentropy: 0,\n\t\t\t\t\t\t\tisPassword: true,\n\t\t\t\t\t\t\tisValid: false\n\t\t\t\t\t\t};\n\t\t\t\t\t},\n\t\n\t\t\t\t\t/*========== STYLES ==========*/\n\t\n\t\t\t\t\tgetMeterStyle: function getMeterStyle(score) {\n\t\t\t\t\t\tvar width = this.state.value === '' ? 0 : 24 * score + 4;\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\twidth: this.props.zxcvbn ? width + '%' : '100%',\n\t\t\t\t\t\t\tmaxWidth: '85%',\n\t\t\t\t\t\t\topacity: this.props.zxcvbn ? width * .01 + .5 : '1',\n\t\t\t\t\t\t\tbackground: this.state.isValid ? this.props.statusColor : this.props.statusInactiveColor,\n\t\t\t\t\t\t\theight: 5,\n\t\t\t\t\t\t\ttransition: 'all 400ms linear',\n\t\t\t\t\t\t\tdisplay: 'inline-block',\n\t\t\t\t\t\t\tmarginRight: '1%'\n\t\t\t\t\t\t};\n\t\t\t\t\t},\n\t\n\t\t\t\t\tunMaskStyle: {\n\t\t\t\t\t\tcolor: config.unMaskColor,\n\t\t\t\t\t\tfontWeight: 200\n\t\t\t\t\t},\n\t\n\t\t\t\t\tinfoStyle: {\n\t\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\t\tbottom: -10,\n\t\t\t\t\t\twidth: '100%',\n\t\t\t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\theight: 24\n\t\t\t\t\t},\n\t\n\t\t\t\t\ticonStyle: {\n\t\t\t\t\t\tdisplay: 'inline-block',\n\t\t\t\t\t\topacity: .25,\n\t\t\t\t\t\tposition: 'relative',\n\t\t\t\t\t\ttop: 2,\n\t\t\t\t\t\twidth: '3%'\n\t\t\t\t\t},\n\t\n\t\t\t\t\tstrengthLangStyle: {\n\t\t\t\t\t\tfontSize: 12,\n\t\t\t\t\t\tposition: 'relative',\n\t\t\t\t\t\ttop: 2\n\t\t\t\t\t},\n\t\n\t\t\t\t\t/*========== METHODS ==========*/\n\t\n\t\t\t\t\taddPasswordType: function addPasswordType() {\n\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\tisPassword: true\n\t\t\t\t\t\t});\n\t\t\t\t\t},\n\t\n\t\t\t\t\t/*========== HANDLERS ==========*/\n\t\n\t\t\t\t\thandleInputType: function handleInputType() {\n\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\tisPassword: !this.state.isPassword\n\t\t\t\t\t\t});\n\t\t\t\t\t},\n\t\n\t\t\t\t\thandleChange: function handleChange(e) {\n\t\t\t\t\t\te.preventDefault();\n\t\n\t\t\t\t\t\tvar native_target = e.nativeEvent.target;\n\t\t\t\t\t\tvar val = e.target.value;\n\t\t\t\t\t\tvar score;\n\t\n\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\tvalue: val,\n\t\t\t\t\t\t\tisValid: e.target.validity.valid,\n\t\t\t\t\t\t\tselectionStart: native_target.selectionStart,\n\t\t\t\t\t\t\tselectionEnd: native_target.selectionEnd\n\t\t\t\t\t\t});\n\t\n\t\t\t\t\t\tif (this.props.toggleMask) {\n\t\t\t\t\t\t\tthis.handleToggleMask();\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\tif (this.props.zxcvbn) {\n\t\t\t\t\t\t\tscore = this.handleZxcvbn(val);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tscore = this.state.score;\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\t// call onChange prop passed from parent\n\t\t\t\t\t\tif (this.props.onChange) {\n\t\t\t\t\t\t\tthis.props.onChange(val, this.state.isValid, score);\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\tif (this.props.minLength) {\n\t\t\t\t\t\t\tthis.handleMinLength(e.target.value.length);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\n\t\t\t\t\thandleToggleMask: function handleToggleMask() {\n\t\n\t\t\t\t\t\t// display password, then\n\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\tisPassword: false\n\t\t\t\t\t\t});\n\t\n\t\t\t\t\t\t// debounce remasking password\n\t\t\t\t\t\tthis.maskPassword();\n\t\t\t\t\t},\n\t\n\t\t\t\t\thandleZxcvbn: function handleZxcvbn(val) {\n\t\n\t\t\t\t\t\tif (typeof zxcvbn === 'undefined' && typeof window.zxcvbn === 'undefined') {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\tvar stats = zxcvbn(val),\n\t\t\t\t\t\t currentScore = stats.score;\n\t\n\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\tscore: currentScore,\n\t\t\t\t\t\t\tentropy: stats.entropy\n\t\t\t\t\t\t});\n\t\n\t\t\t\t\t\tif (currentScore < this.props.minScore) {\n\t\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\t\tisValid: false\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\t// if score changed and callback provided\n\t\t\t\t\t\tif (this.props.changeCb && this.state.score !== currentScore) {\n\t\t\t\t\t\t\tthis.props.changeCb(this.state.score, currentScore, val);\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\tif (this.props.zxcvbn === 'debug') {\n\t\t\t\t\t\t\tconsole.debug(stats);\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\treturn currentScore;\n\t\t\t\t\t},\n\t\n\t\t\t\t\thandleMinLength: function handleMinLength(len) {\n\t\t\t\t\t\tif (len <= this.props.minLength) {\n\t\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\t\tisValid: false\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\n\t\t\t\t\tcomponentWillMount: function componentWillMount() {\n\t\t\t\t\t\tvar zxcvbnSrc;\n\t\n\t\t\t\t\t\t// Load zxcvbn async if its enabled and doesn't already exist\n\t\t\t\t\t\tif (this.props.zxcvbn && typeof zxcvbn === 'undefined') {\n\t\n\t\t\t\t\t\t\tzxcvbnSrc = this.props.zxcvbn !== 'debug' ? this.props.zxcvbn : config.zxcvbnSrc;\n\t\n\t\t\t\t\t\t\t// snippet to async load zxcvbn if enabled\n\t\t\t\t\t\t\t(function () {\n\t\t\t\t\t\t\t\tvar a;a = function () {\n\t\t\t\t\t\t\t\t\tvar a, b;b = document.createElement(\"script\");b.src = zxcvbnSrc;b.type = \"text/javascript\";b.async = !0;a = document.getElementsByTagName(\"head\")[0];return a.parentNode.insertBefore(b, a);\n\t\t\t\t\t\t\t\t};null != window.attachEvent ? window.attachEvent(\"onload\", a) : window.addEventListener(\"load\", a, !1);\n\t\t\t\t\t\t\t}).call(this);\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\t// set debouncer for password\n\t\t\t\t\t\tif (this.props.toggleMask) {\n\t\t\t\t\t\t\tthis.maskPassword = debounce(this.addPasswordType, this.props.unMaskTime);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\n\t\t\t\t\tcomponentWillUnmount: function componentWillUnmount() {\n\t\t\t\t\t\t// cancel the debouncer when component is not used anymore. This to avoid\n\t\t\t\t\t\t// setting the state unnecessarily, see issue #24\n\t\t\t\t\t\tif (this.maskPassword) {\n\t\t\t\t\t\t\tthis.maskPassword.cancel();\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\n\t\t\t\t\trender: function render() {\n\t\t\t\t\t\tvar infoBar;\n\t\n\t\t\t\t\t\tif (this.props.infoBar) {\n\t\t\t\t\t\t\tinfoBar = React.createElement('div', { className: 'passwordField__info', style: this.infoStyle }, React.createElement('span', { style: this.iconStyle, className: 'passwordField__icon' }, React.createElement('img', { src: __webpack_require__(5), height: '10', width: '10' })), React.createElement('span', { style: this.getMeterStyle(this.state.score), className: 'passwordField__meter' }), React.createElement('span', { style: this.strengthLangStyle, className: 'passwordField__strength' }, this.props.zxcvbn && this.state.value.length > 0 && this.props.strengthLang.length > 0 ? this.props.strengthLang[this.state.score] : null));\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\t// allow onChange to be passed from parent and not override default prop\n\t\t\t\t\t\tvar _props = this.props;\n\t\t\t\t\t\tvar onChange = _props.onChange;\n\t\n\t\t\t\t\t\tvar props = _objectWithoutProperties(_props, ['onChange']);\n\t\n\t\t\t\t\t\t// overcome problem with firefox resetting the input selection point\n\t\t\t\t\t\tvar that = this;\n\t\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t\tif (!/Firefox/.test(navigator.userAgent)) return;\n\t\t\t\t\t\t\tvar elem = that.refs[that.props.id].getDOMNode();\n\t\t\t\t\t\t\telem.selectionStart = that.state.selectionStart;\n\t\t\t\t\t\t\telem.selectionEnd = that.state.selectionEnd;\n\t\t\t\t\t\t}, 1);\n\t\n\t\t\t\t\t\treturn React.createElement('div', {\n\t\t\t\t\t\t\tstyle: { position: 'relative', display: 'inline-block' },\n\t\t\t\t\t\t\tclassName: 'passwordField',\n\t\t\t\t\t\t\t'data-valid': this.state.isValid,\n\t\t\t\t\t\t\t'data-score': this.state.score,\n\t\t\t\t\t\t\t'data-entropy': this.state.entropy\n\t\t\t\t\t\t}, React.createElement('input', _extends({\n\t\t\t\t\t\t\tref: this.props.id,\n\t\t\t\t\t\t\tclassName: 'passwordField__input',\n\t\t\t\t\t\t\ttype: this.state.isPassword ? 'password' : 'text',\n\t\t\t\t\t\t\tvalue: this.state.value,\n\t\t\t\t\t\t\tstyle: this.state.isPassword ? null : this.unMaskStyle,\n\t\t\t\t\t\t\tonChange: this.handleChange\n\t\t\t\t\t\t}, props)), infoBar);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\n\t\t\t\tmodule.exports = InputPassword;\n\t\n\t\t\t\t/***/\n\t\t\t},\n\t\t\t/* 1 */\n\t\t\tfunction (module, exports) {\n\t\n\t\t\t\tmodule.exports = __WEBPACK_EXTERNAL_MODULE_1__;\n\t\n\t\t\t\t/***/\n\t\t\t},\n\t\t\t/* 2 */\n\t\t\tfunction (module, exports) {\n\t\n\t\t\t\t'use strict';\n\t\n\t\t\t\tmodule.exports = {\n\t\t\t\t\tstatusColor: '#5CE592',\n\t\t\t\t\tstatusInactiveColor: '#FC6F6F',\n\t\t\t\t\tunMaskColor: '#c7c7c7',\n\t\t\t\t\tunMaskTime: 1400,\n\t\t\t\t\tzxcvbnSrc: 'https://cdnjs.cloudflare.com/ajax/libs/zxcvbn/1.0/zxcvbn.min.js',\n\t\t\t\t\tstrengthLang: ['Weak', 'Okay', 'Good', 'Strong', 'Great']\n\t\t\t\t};\n\t\n\t\t\t\t/***/\n\t\t\t},\n\t\t\t/* 3 */\n\t\t\tfunction (module, exports, __webpack_require__) {\n\t\n\t\t\t\t/**\n\t * lodash 3.1.1 (Custom Build) \n\t * Build: `lodash modern modularize exports=\"npm\" -o ./`\n\t * Copyright 2012-2015 The Dojo Foundation \n\t * Based on Underscore.js 1.8.3 \n\t * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n\t * Available under MIT license \n\t */\n\t\t\t\t'use strict';\n\t\n\t\t\t\tvar getNative = __webpack_require__(4);\n\t\n\t\t\t\t/** Used as the `TypeError` message for \"Functions\" methods. */\n\t\t\t\tvar FUNC_ERROR_TEXT = 'Expected a function';\n\t\n\t\t\t\t/* Native method references for those with the same name as other `lodash` methods. */\n\t\t\t\tvar nativeMax = Math.max,\n\t\t\t\t nativeNow = getNative(Date, 'now');\n\t\n\t\t\t\t/**\n\t * Gets the number of milliseconds that have elapsed since the Unix epoch\n\t * (1 January 1970 00:00:00 UTC).\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Date\n\t * @example\n\t *\n\t * _.defer(function(stamp) {\n\t * console.log(_.now() - stamp);\n\t * }, _.now());\n\t * // => logs the number of milliseconds it took for the deferred function to be invoked\n\t */\n\t\t\t\tvar now = nativeNow || function () {\n\t\t\t\t\treturn new Date().getTime();\n\t\t\t\t};\n\t\n\t\t\t\t/**\n\t * Creates a debounced function that delays invoking `func` until after `wait`\n\t * milliseconds have elapsed since the last time the debounced function was\n\t * invoked. The debounced function comes with a `cancel` method to cancel\n\t * delayed invocations. Provide an options object to indicate that `func`\n\t * should be invoked on the leading and/or trailing edge of the `wait` timeout.\n\t * Subsequent calls to the debounced function return the result of the last\n\t * `func` invocation.\n\t *\n\t * **Note:** If `leading` and `trailing` options are `true`, `func` is invoked\n\t * on the trailing edge of the timeout only if the the debounced function is\n\t * invoked more than once during the `wait` timeout.\n\t *\n\t * See [David Corbacho's article](http://drupalmotion.com/article/debounce-and-throttle-visual-explanation)\n\t * for details over the differences between `_.debounce` and `_.throttle`.\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Function\n\t * @param {Function} func The function to debounce.\n\t * @param {number} [wait=0] The number of milliseconds to delay.\n\t * @param {Object} [options] The options object.\n\t * @param {boolean} [options.leading=false] Specify invoking on the leading\n\t * edge of the timeout.\n\t * @param {number} [options.maxWait] The maximum time `func` is allowed to be\n\t * delayed before it is invoked.\n\t * @param {boolean} [options.trailing=true] Specify invoking on the trailing\n\t * edge of the timeout.\n\t * @returns {Function} Returns the new debounced function.\n\t * @example\n\t *\n\t * // avoid costly calculations while the window size is in flux\n\t * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n\t *\n\t * // invoke `sendMail` when the click event is fired, debouncing subsequent calls\n\t * jQuery('#postbox').on('click', _.debounce(sendMail, 300, {\n\t * 'leading': true,\n\t * 'trailing': false\n\t * }));\n\t *\n\t * // ensure `batchLog` is invoked once after 1 second of debounced calls\n\t * var source = new EventSource('/stream');\n\t * jQuery(source).on('message', _.debounce(batchLog, 250, {\n\t * 'maxWait': 1000\n\t * }));\n\t *\n\t * // cancel a debounced call\n\t * var todoChanges = _.debounce(batchLog, 1000);\n\t * Object.observe(models.todo, todoChanges);\n\t *\n\t * Object.observe(models, function(changes) {\n\t * if (_.find(changes, { 'user': 'todo', 'type': 'delete'})) {\n\t * todoChanges.cancel();\n\t * }\n\t * }, ['delete']);\n\t *\n\t * // ...at some point `models.todo` is changed\n\t * models.todo.completed = true;\n\t *\n\t * // ...before 1 second has passed `models.todo` is deleted\n\t * // which cancels the debounced `todoChanges` call\n\t * delete models.todo;\n\t */\n\t\t\t\tfunction debounce(func, wait, options) {\n\t\t\t\t\tvar args,\n\t\t\t\t\t maxTimeoutId,\n\t\t\t\t\t result,\n\t\t\t\t\t stamp,\n\t\t\t\t\t thisArg,\n\t\t\t\t\t timeoutId,\n\t\t\t\t\t trailingCall,\n\t\t\t\t\t lastCalled = 0,\n\t\t\t\t\t maxWait = false,\n\t\t\t\t\t trailing = true;\n\t\n\t\t\t\t\tif (typeof func != 'function') {\n\t\t\t\t\t\tthrow new TypeError(FUNC_ERROR_TEXT);\n\t\t\t\t\t}\n\t\t\t\t\twait = wait < 0 ? 0 : +wait || 0;\n\t\t\t\t\tif (options === true) {\n\t\t\t\t\t\tvar leading = true;\n\t\t\t\t\t\ttrailing = false;\n\t\t\t\t\t} else if (isObject(options)) {\n\t\t\t\t\t\tleading = !!options.leading;\n\t\t\t\t\t\tmaxWait = 'maxWait' in options && nativeMax(+options.maxWait || 0, wait);\n\t\t\t\t\t\ttrailing = 'trailing' in options ? !!options.trailing : trailing;\n\t\t\t\t\t}\n\t\n\t\t\t\t\tfunction cancel() {\n\t\t\t\t\t\tif (timeoutId) {\n\t\t\t\t\t\t\tclearTimeout(timeoutId);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (maxTimeoutId) {\n\t\t\t\t\t\t\tclearTimeout(maxTimeoutId);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlastCalled = 0;\n\t\t\t\t\t\tmaxTimeoutId = timeoutId = trailingCall = undefined;\n\t\t\t\t\t}\n\t\n\t\t\t\t\tfunction complete(isCalled, id) {\n\t\t\t\t\t\tif (id) {\n\t\t\t\t\t\t\tclearTimeout(id);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmaxTimeoutId = timeoutId = trailingCall = undefined;\n\t\t\t\t\t\tif (isCalled) {\n\t\t\t\t\t\t\tlastCalled = now();\n\t\t\t\t\t\t\tresult = func.apply(thisArg, args);\n\t\t\t\t\t\t\tif (!timeoutId && !maxTimeoutId) {\n\t\t\t\t\t\t\t\targs = thisArg = undefined;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\n\t\t\t\t\tfunction delayed() {\n\t\t\t\t\t\tvar remaining = wait - (now() - stamp);\n\t\t\t\t\t\tif (remaining <= 0 || remaining > wait) {\n\t\t\t\t\t\t\tcomplete(trailingCall, maxTimeoutId);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\ttimeoutId = setTimeout(delayed, remaining);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\n\t\t\t\t\tfunction maxDelayed() {\n\t\t\t\t\t\tcomplete(trailing, timeoutId);\n\t\t\t\t\t}\n\t\n\t\t\t\t\tfunction debounced() {\n\t\t\t\t\t\targs = arguments;\n\t\t\t\t\t\tstamp = now();\n\t\t\t\t\t\tthisArg = this;\n\t\t\t\t\t\ttrailingCall = trailing && (timeoutId || !leading);\n\t\n\t\t\t\t\t\tif (maxWait === false) {\n\t\t\t\t\t\t\tvar leadingCall = leading && !timeoutId;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tif (!maxTimeoutId && !leading) {\n\t\t\t\t\t\t\t\tlastCalled = stamp;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tvar remaining = maxWait - (stamp - lastCalled),\n\t\t\t\t\t\t\t isCalled = remaining <= 0 || remaining > maxWait;\n\t\n\t\t\t\t\t\t\tif (isCalled) {\n\t\t\t\t\t\t\t\tif (maxTimeoutId) {\n\t\t\t\t\t\t\t\t\tmaxTimeoutId = clearTimeout(maxTimeoutId);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tlastCalled = stamp;\n\t\t\t\t\t\t\t\tresult = func.apply(thisArg, args);\n\t\t\t\t\t\t\t} else if (!maxTimeoutId) {\n\t\t\t\t\t\t\t\tmaxTimeoutId = setTimeout(maxDelayed, remaining);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isCalled && timeoutId) {\n\t\t\t\t\t\t\ttimeoutId = clearTimeout(timeoutId);\n\t\t\t\t\t\t} else if (!timeoutId && wait !== maxWait) {\n\t\t\t\t\t\t\ttimeoutId = setTimeout(delayed, wait);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (leadingCall) {\n\t\t\t\t\t\t\tisCalled = true;\n\t\t\t\t\t\t\tresult = func.apply(thisArg, args);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isCalled && !timeoutId && !maxTimeoutId) {\n\t\t\t\t\t\t\targs = thisArg = undefined;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn result;\n\t\t\t\t\t}\n\t\t\t\t\tdebounced.cancel = cancel;\n\t\t\t\t\treturn debounced;\n\t\t\t\t}\n\t\n\t\t\t\t/**\n\t * Checks if `value` is the [language type](https://es5.github.io/#x8) of `Object`.\n\t * (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Lang\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n\t * @example\n\t *\n\t * _.isObject({});\n\t * // => true\n\t *\n\t * _.isObject([1, 2, 3]);\n\t * // => true\n\t *\n\t * _.isObject(1);\n\t * // => false\n\t */\n\t\t\t\tfunction isObject(value) {\n\t\t\t\t\t// Avoid a V8 JIT bug in Chrome 19-20.\n\t\t\t\t\t// See https://code.google.com/p/v8/issues/detail?id=2291 for more details.\n\t\t\t\t\tvar type = typeof value;\n\t\t\t\t\treturn !!value && (type == 'object' || type == 'function');\n\t\t\t\t}\n\t\n\t\t\t\tmodule.exports = debounce;\n\t\n\t\t\t\t/***/\n\t\t\t},\n\t\t\t/* 4 */\n\t\t\tfunction (module, exports) {\n\t\n\t\t\t\t/**\n\t * lodash 3.9.1 (Custom Build) \n\t * Build: `lodash modern modularize exports=\"npm\" -o ./`\n\t * Copyright 2012-2015 The Dojo Foundation \n\t * Based on Underscore.js 1.8.3 \n\t * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n\t * Available under MIT license \n\t */\n\t\n\t\t\t\t/** `Object#toString` result references. */\n\t\t\t\t'use strict';\n\t\n\t\t\t\tvar funcTag = '[object Function]';\n\t\n\t\t\t\t/** Used to detect host constructors (Safari > 5). */\n\t\t\t\tvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\t\n\t\t\t\t/**\n\t * Checks if `value` is object-like.\n\t *\n\t * @private\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n\t */\n\t\t\t\tfunction isObjectLike(value) {\n\t\t\t\t\treturn !!value && typeof value == 'object';\n\t\t\t\t}\n\t\n\t\t\t\t/** Used for native method references. */\n\t\t\t\tvar objectProto = Object.prototype;\n\t\n\t\t\t\t/** Used to resolve the decompiled source of functions. */\n\t\t\t\tvar fnToString = Function.prototype.toString;\n\t\n\t\t\t\t/** Used to check objects for own properties. */\n\t\t\t\tvar hasOwnProperty = objectProto.hasOwnProperty;\n\t\n\t\t\t\t/**\n\t * Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring)\n\t * of values.\n\t */\n\t\t\t\tvar objToString = objectProto.toString;\n\t\n\t\t\t\t/** Used to detect if a method is native. */\n\t\t\t\tvar reIsNative = RegExp('^' + fnToString.call(hasOwnProperty).replace(/[\\\\^$.*+?()[\\]{}|]/g, '\\\\$&').replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$');\n\t\n\t\t\t\t/**\n\t * Gets the native function at `key` of `object`.\n\t *\n\t * @private\n\t * @param {Object} object The object to query.\n\t * @param {string} key The key of the method to get.\n\t * @returns {*} Returns the function if it's native, else `undefined`.\n\t */\n\t\t\t\tfunction getNative(object, key) {\n\t\t\t\t\tvar value = object == null ? undefined : object[key];\n\t\t\t\t\treturn isNative(value) ? value : undefined;\n\t\t\t\t}\n\t\n\t\t\t\t/**\n\t * Checks if `value` is classified as a `Function` object.\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Lang\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.\n\t * @example\n\t *\n\t * _.isFunction(_);\n\t * // => true\n\t *\n\t * _.isFunction(/abc/);\n\t * // => false\n\t */\n\t\t\t\tfunction isFunction(value) {\n\t\t\t\t\t// The use of `Object#toString` avoids issues with the `typeof` operator\n\t\t\t\t\t// in older versions of Chrome and Safari which return 'function' for regexes\n\t\t\t\t\t// and Safari 8 equivalents which return 'object' for typed array constructors.\n\t\t\t\t\treturn isObject(value) && objToString.call(value) == funcTag;\n\t\t\t\t}\n\t\n\t\t\t\t/**\n\t * Checks if `value` is the [language type](https://es5.github.io/#x8) of `Object`.\n\t * (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Lang\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n\t * @example\n\t *\n\t * _.isObject({});\n\t * // => true\n\t *\n\t * _.isObject([1, 2, 3]);\n\t * // => true\n\t *\n\t * _.isObject(1);\n\t * // => false\n\t */\n\t\t\t\tfunction isObject(value) {\n\t\t\t\t\t// Avoid a V8 JIT bug in Chrome 19-20.\n\t\t\t\t\t// See https://code.google.com/p/v8/issues/detail?id=2291 for more details.\n\t\t\t\t\tvar type = typeof value;\n\t\t\t\t\treturn !!value && (type == 'object' || type == 'function');\n\t\t\t\t}\n\t\n\t\t\t\t/**\n\t * Checks if `value` is a native function.\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Lang\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is a native function, else `false`.\n\t * @example\n\t *\n\t * _.isNative(Array.prototype.push);\n\t * // => true\n\t *\n\t * _.isNative(_);\n\t * // => false\n\t */\n\t\t\t\tfunction isNative(value) {\n\t\t\t\t\tif (value == null) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\tif (isFunction(value)) {\n\t\t\t\t\t\treturn reIsNative.test(fnToString.call(value));\n\t\t\t\t\t}\n\t\t\t\t\treturn isObjectLike(value) && reIsHostCtor.test(value);\n\t\t\t\t}\n\t\n\t\t\t\tmodule.exports = getNative;\n\t\n\t\t\t\t/***/\n\t\t\t},\n\t\t\t/* 5 */\n\t\t\tfunction (module, exports) {\n\t\n\t\t\t\tmodule.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCRkNDMzg4M0FFN0IxMUU0OTE2RkY5MzYyMkI3QTVDMiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCRkNDMzg4NEFFN0IxMUU0OTE2RkY5MzYyMkI3QTVDMiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkJGQ0MzODgxQUU3QjExRTQ5MTZGRjkzNjIyQjdBNUMyIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkJGQ0MzODgyQUU3QjExRTQ5MTZGRjkzNjIyQjdBNUMyIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+NkztvAAAAc9JREFUeNq8lk8oBFEcx2fG5k+0HJRQ/iVy2U1tUsjBzYnI2cUWJyl3XJRSkgOtxEU4keLgQP6kuColoeQgEkXWand8X/3UNM28Z56Z961PO2/fb9535r3f/N7TTdPUnBSLxTSBcsEA6AW1IAw+wD3YAtPg0+1mXdK4DJyAKk7MM+gE506dhuZdleBSYMpUDM5Ah1NnyKOpDnZpWn91C/ZBksZrBhFL/zaopyWQNh4HDZZ2AsQd4kbBFF3ngRnQ8581vgHVdH0M2jgPeWjpz1BePMqscdRiyrQhiF+25VK7bHI12toXgvg9+yTKGpc6TDtPD+DJ0i6RNS6ytZOC+IwtpkA2q1epKLyDb/D2h3uGQQXIBqcyWd1FBeEOZNFM1YEckHYpTGzgKyqbpmWp1kEq9IeCcQRaNP80CZoMQclb8NmUqRys8IxZpenTglHUEOxAhQEZ5/OM01qAMnwah+3Ng2BTpTGr2a1gHnSDCVXGs7Z2QpVxjUNSKjGeo29T+RuHqaRqtOdGVGZ1in6/VH9OYZet01Uhnx5qBLyAIT+MvVQulslLflWuazq+BKFXnvEaWAzI+IA31ezUMEaJE6dDQYb+9yrdMrs7oP9HgAEAXmVa5ulD/g0AAAAASUVORK5CYII=\";\n\t\n\t\t\t\t/***/\n\t\t\t}\n\t\t\t/******/])\n\t\t);\n\t});\n\t;\n\t/***/ /***/ /***/ /***/ /***/ /***/\n\n/***/ },\n/* 4 */\n/*!************************************!*\\\n !*** ./demo/src/vendor/github.css ***!\n \\************************************/\n/***/ function(module, exports) {\n\n\t// removed by extract-text-webpack-plugin\n\n/***/ },\n/* 5 */\n/*!**************************************!*\\\n !*** ./demo/src/vendor/skeleton.css ***!\n \\**************************************/\n/***/ function(module, exports) {\n\n\t// removed by extract-text-webpack-plugin\n\n/***/ },\n/* 6 */\n/*!************************************!*\\\n !*** ./demo/src/vendor/syntax.css ***!\n \\************************************/\n/***/ function(module, exports) {\n\n\t// removed by extract-text-webpack-plugin\n\n/***/ },\n/* 7 */\n/*!***************************************!*\\\n !*** ./~/normalize.css/normalize.css ***!\n \\***************************************/\n/***/ function(module, exports) {\n\n\t// removed by extract-text-webpack-plugin\n\n/***/ },\n/* 8 */\n/*!********************************!*\\\n !*** ./demo/src/css/demo.scss ***!\n \\********************************/\n/***/ function(module, exports) {\n\n\t// removed by extract-text-webpack-plugin\n\n/***/ },\n/* 9 */\n/*!*********************************!*\\\n !*** ./demo/src/css/style.scss ***!\n \\*********************************/\n/***/ function(module, exports) {\n\n\t// removed by extract-text-webpack-plugin\n\n/***/ }\n/******/ ]);\n\n\n/** WEBPACK FOOTER **\n ** demo.bundle.js\n **/"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n/** WEBPACK FOOTER **\n ** webpack/bootstrap 25d821ec2675cacf8c3e\n **/","'use strict';\n\n// demo pages css\nrequire('normalize.css/normalize.css')\nrequire('./vendor/skeleton.css');\nrequire('./vendor/github.css');\nrequire('./vendor/syntax.css');\nrequire('./vendor/rainbow-custom.min.js');\nrequire('./css/style.scss');\n\n// css for form field\nrequire('./css/demo.scss');\n\n\n/*========== APP ==========*/\n\nconst React = require('react'),\n InputPassword = require('../../lib/react-ux-password-field.js');\n\nReact.render(\n
\n
\n \n \n
\n
\n, document.getElementById('content'));\n\n\n\n/** WEBPACK FOOTER **\n ** ./demo/src/index.js\n **/","module.exports = React;\n\n\n/*****************\n ** WEBPACK FOOTER\n ** external \"React\"\n ** module id = 1\n ** module chunks = 0\n **/","/* Rainbow v1.2 rainbowco.de | included languages: generic, shell, javascript, html */\nwindow.Rainbow=function(){function q(a){var b,c=a.getAttribute&&a.getAttribute(\"data-language\")||0;if(!c){a=a.attributes;for(b=0;b=f[d][c])delete f[d][c],delete j[d][c];if(a>=c&&ac&&b'+b+\"\"}function s(a,b,c,i){if(\"undefined\"===typeof a||null===a)i();else{var e=a.exec(c);if(e){++t;!b.name&&\"string\"==typeof b.matches[0]&&(b.name=b.matches[0],delete b.matches[0]);var k=e[0],g=e.index,u=e[0].length+g,h=function(){function e(){s(a,b,c,i)}t%100>0?e():setTimeout(e,0)};if(C(g,u))h();else{var m=v(b.matches),l=function(a,c,i){if(a>=c.length)i(k);else{var d=e[c[a]];if(d){var g=\nb.matches[c[a]],f=g.language,h=g.name&&g.matches?g.matches:g,j=function(b,d,g){var f;f=0;var h;for(h=1;h/g,\">\").replace(/&(?![\\w\\#]+;)/g,\"&\"),b,c)}function o(a,b,c){if(b= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\n\tvar React = __webpack_require__(1),\n\t RP = React.PropTypes,\n\t config = __webpack_require__(2),\n\t debounce = __webpack_require__(3);\n\n\tvar InputPassword = React.createClass({\n\t displayName: 'InputPassword',\n\n\t /*========== VALIDATE ==========*/\n\n\t propTypes: {\n\t infoBar: RP.bool,\n\t statusColor: RP.string,\n\t statusInactiveColor: RP.string,\n\t minScore: RP.number,\n\t changeCb: RP.func,\n\t toggleMask: RP.bool,\n\t unMaskTime: RP.number,\n\t minLength: RP.number,\n\t strengthLang: RP.array,\n\t id: RP.string\n\t },\n\n\t /*========== DEFAULTS ==========*/\n\n\t getDefaultProps: function getDefaultProps() {\n\t return {\n\t infoBar: true,\n\t statusColor: config.statusColor,\n\t statusInactiveColor: config.statusInactiveColor,\n\t zxcvbn: config.zxcvbnSrc,\n\t minScore: 0,\n\t toggleMask: true,\n\t unMaskTime: config.unMaskTime,\n\t strengthLang: config.strengthLang,\n\t id: 'input'\n\t };\n\t },\n\n\t getInitialState: function getInitialState() {\n\t return {\n\t value: '',\n\t score: 0,\n\t entropy: 0,\n\t isPassword: true,\n\t isValid: false\n\t };\n\t },\n\n\t /*========== STYLES ==========*/\n\n\t getMeterStyle: function getMeterStyle(score) {\n\t var width = this.state.value === '' ? 0 : 24 * score + 4;\n\t return {\n\t width: this.props.zxcvbn ? width + '%' : '100%',\n\t maxWidth: '85%',\n\t opacity: this.props.zxcvbn ? width * .01 + .5 : '1',\n\t background: this.state.isValid ? this.props.statusColor : this.props.statusInactiveColor,\n\t height: 5,\n\t transition: 'all 400ms linear',\n\t display: 'inline-block',\n\t marginRight: '1%'\n\t };\n\t },\n\n\t unMaskStyle: {\n\t color: config.unMaskColor,\n\t fontWeight: 200\n\t },\n\n\t infoStyle: {\n\t position: 'absolute',\n\t bottom: -10,\n\t width: '100%',\n\t overflow: 'hidden',\n\t height: 24\n\t },\n\n\t iconStyle: {\n\t display: 'inline-block',\n\t opacity: .25,\n\t position: 'relative',\n\t top: 2,\n\t width: '3%'\n\t },\n\n\t strengthLangStyle: {\n\t fontSize: 12,\n\t position: 'relative',\n\t top: 2\n\t },\n\n\t /*========== METHODS ==========*/\n\n\t addPasswordType: function addPasswordType() {\n\t this.setState({\n\t isPassword: true\n\t });\n\t },\n\n\t /*========== HANDLERS ==========*/\n\n\t handleInputType: function handleInputType() {\n\t this.setState({\n\t isPassword: !this.state.isPassword\n\t });\n\t },\n\n\t handleChange: function handleChange(e) {\n\t e.preventDefault();\n\n\t var native_target = e.nativeEvent.target;\n\t var val = e.target.value;\n\t var score;\n\n\t this.setState({\n\t value: val,\n\t isValid: e.target.validity.valid,\n\t selectionStart: native_target.selectionStart,\n\t selectionEnd: native_target.selectionEnd\n\t });\n\n\t if (this.props.toggleMask) {\n\t this.handleToggleMask();\n\t }\n\n\t if (this.props.zxcvbn) {\n\t score = this.handleZxcvbn(val);\n\t } else {\n\t score = this.state.score;\n\t }\n\n\t // call onChange prop passed from parent\n\t if (this.props.onChange) {\n\t this.props.onChange(val, this.state.isValid, score);\n\t }\n\n\t if (this.props.minLength) {\n\t this.handleMinLength(e.target.value.length);\n\t }\n\t },\n\n\t handleToggleMask: function handleToggleMask() {\n\n\t // display password, then\n\t this.setState({\n\t isPassword: false\n\t });\n\n\t // debounce remasking password\n\t this.maskPassword();\n\t },\n\n\t handleZxcvbn: function handleZxcvbn(val) {\n\n\t if (typeof zxcvbn === 'undefined' && typeof window.zxcvbn === 'undefined') {\n\t return;\n\t }\n\n\t var stats = zxcvbn(val),\n\t currentScore = stats.score;\n\n\t this.setState({\n\t score: currentScore,\n\t entropy: stats.entropy\n\t });\n\n\t if (currentScore < this.props.minScore) {\n\t this.setState({\n\t isValid: false\n\t });\n\t }\n\n\t // if score changed and callback provided\n\t if (this.props.changeCb && this.state.score !== currentScore) {\n\t this.props.changeCb(this.state.score, currentScore, val);\n\t }\n\n\t if (this.props.zxcvbn === 'debug') {\n\t console.debug(stats);\n\t }\n\n\t return currentScore;\n\t },\n\n\t handleMinLength: function handleMinLength(len) {\n\t if (len <= this.props.minLength) {\n\t this.setState({\n\t isValid: false\n\t });\n\t }\n\t },\n\n\t componentWillMount: function componentWillMount() {\n\t var zxcvbnSrc;\n\n\t // Load zxcvbn async if its enabled and doesn't already exist\n\t if (this.props.zxcvbn && typeof zxcvbn === 'undefined') {\n\n\t zxcvbnSrc = this.props.zxcvbn !== 'debug' ? this.props.zxcvbn : config.zxcvbnSrc;\n\n\t // snippet to async load zxcvbn if enabled\n\t (function () {\n\t var a;a = function () {\n\t var a, b;b = document.createElement(\"script\");b.src = zxcvbnSrc;b.type = \"text/javascript\";b.async = !0;a = document.getElementsByTagName(\"head\")[0];return a.parentNode.insertBefore(b, a);\n\t };null != window.attachEvent ? window.attachEvent(\"onload\", a) : window.addEventListener(\"load\", a, !1);\n\t }).call(this);\n\t }\n\n\t // set debouncer for password\n\t if (this.props.toggleMask) {\n\t this.maskPassword = debounce(this.addPasswordType, this.props.unMaskTime);\n\t }\n\t },\n\n\t componentWillUnmount: function componentWillUnmount() {\n\t // cancel the debouncer when component is not used anymore. This to avoid\n\t // setting the state unnecessarily, see issue #24\n\t if (this.maskPassword) {\n\t this.maskPassword.cancel();\n\t }\n\t },\n\n\t render: function render() {\n\t var infoBar;\n\n\t if (this.props.infoBar) {\n\t infoBar = React.createElement(\n\t 'div',\n\t { className: 'passwordField__info', style: this.infoStyle },\n\t React.createElement(\n\t 'span',\n\t { style: this.iconStyle, className: 'passwordField__icon' },\n\t React.createElement('img', { src: __webpack_require__(5), height: '10', width: '10' })\n\t ),\n\t React.createElement('span', { style: this.getMeterStyle(this.state.score), className: 'passwordField__meter' }),\n\t React.createElement(\n\t 'span',\n\t { style: this.strengthLangStyle, className: 'passwordField__strength' },\n\t this.props.zxcvbn && this.state.value.length > 0 && this.props.strengthLang.length > 0 ? this.props.strengthLang[this.state.score] : null\n\t )\n\t );\n\t }\n\n\t // allow onChange to be passed from parent and not override default prop\n\t var _props = this.props;\n\t var onChange = _props.onChange;\n\n\t var props = _objectWithoutProperties(_props, ['onChange']);\n\n\t // overcome problem with firefox resetting the input selection point\n\t var that = this;\n\t setTimeout(function () {\n\t if (!/Firefox/.test(navigator.userAgent)) return;\n\t var elem = that.refs[that.props.id].getDOMNode();\n\t elem.selectionStart = that.state.selectionStart;\n\t elem.selectionEnd = that.state.selectionEnd;\n\t }, 1);\n\n\t return React.createElement(\n\t 'div',\n\t {\n\t style: { position: 'relative', display: 'inline-block' },\n\t className: 'passwordField',\n\t 'data-valid': this.state.isValid,\n\t 'data-score': this.state.score,\n\t 'data-entropy': this.state.entropy\n\t },\n\t React.createElement('input', _extends({\n\t ref: this.props.id,\n\t className: 'passwordField__input',\n\t type: this.state.isPassword ? 'password' : 'text',\n\t value: this.state.value,\n\t style: this.state.isPassword ? null : this.unMaskStyle,\n\t onChange: this.handleChange\n\t }, props)),\n\t infoBar\n\t );\n\t }\n\t});\n\n\tmodule.exports = InputPassword;\n\n/***/ },\n/* 1 */\n/***/ function(module, exports) {\n\n\tmodule.exports = __WEBPACK_EXTERNAL_MODULE_1__;\n\n/***/ },\n/* 2 */\n/***/ function(module, exports) {\n\n\t'use strict';\n\n\tmodule.exports = {\n\t statusColor: '#5CE592',\n\t statusInactiveColor: '#FC6F6F',\n\t unMaskColor: '#c7c7c7',\n\t unMaskTime: 1400,\n\t zxcvbnSrc: 'https://cdnjs.cloudflare.com/ajax/libs/zxcvbn/1.0/zxcvbn.min.js',\n\t strengthLang: ['Weak', 'Okay', 'Good', 'Strong', 'Great']\n\t};\n\n/***/ },\n/* 3 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/**\n\t * lodash 3.1.1 (Custom Build) \n\t * Build: `lodash modern modularize exports=\"npm\" -o ./`\n\t * Copyright 2012-2015 The Dojo Foundation \n\t * Based on Underscore.js 1.8.3 \n\t * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n\t * Available under MIT license \n\t */\n\t'use strict';\n\n\tvar getNative = __webpack_require__(4);\n\n\t/** Used as the `TypeError` message for \"Functions\" methods. */\n\tvar FUNC_ERROR_TEXT = 'Expected a function';\n\n\t/* Native method references for those with the same name as other `lodash` methods. */\n\tvar nativeMax = Math.max,\n\t nativeNow = getNative(Date, 'now');\n\n\t/**\n\t * Gets the number of milliseconds that have elapsed since the Unix epoch\n\t * (1 January 1970 00:00:00 UTC).\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Date\n\t * @example\n\t *\n\t * _.defer(function(stamp) {\n\t * console.log(_.now() - stamp);\n\t * }, _.now());\n\t * // => logs the number of milliseconds it took for the deferred function to be invoked\n\t */\n\tvar now = nativeNow || function () {\n\t return new Date().getTime();\n\t};\n\n\t/**\n\t * Creates a debounced function that delays invoking `func` until after `wait`\n\t * milliseconds have elapsed since the last time the debounced function was\n\t * invoked. The debounced function comes with a `cancel` method to cancel\n\t * delayed invocations. Provide an options object to indicate that `func`\n\t * should be invoked on the leading and/or trailing edge of the `wait` timeout.\n\t * Subsequent calls to the debounced function return the result of the last\n\t * `func` invocation.\n\t *\n\t * **Note:** If `leading` and `trailing` options are `true`, `func` is invoked\n\t * on the trailing edge of the timeout only if the the debounced function is\n\t * invoked more than once during the `wait` timeout.\n\t *\n\t * See [David Corbacho's article](http://drupalmotion.com/article/debounce-and-throttle-visual-explanation)\n\t * for details over the differences between `_.debounce` and `_.throttle`.\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Function\n\t * @param {Function} func The function to debounce.\n\t * @param {number} [wait=0] The number of milliseconds to delay.\n\t * @param {Object} [options] The options object.\n\t * @param {boolean} [options.leading=false] Specify invoking on the leading\n\t * edge of the timeout.\n\t * @param {number} [options.maxWait] The maximum time `func` is allowed to be\n\t * delayed before it is invoked.\n\t * @param {boolean} [options.trailing=true] Specify invoking on the trailing\n\t * edge of the timeout.\n\t * @returns {Function} Returns the new debounced function.\n\t * @example\n\t *\n\t * // avoid costly calculations while the window size is in flux\n\t * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n\t *\n\t * // invoke `sendMail` when the click event is fired, debouncing subsequent calls\n\t * jQuery('#postbox').on('click', _.debounce(sendMail, 300, {\n\t * 'leading': true,\n\t * 'trailing': false\n\t * }));\n\t *\n\t * // ensure `batchLog` is invoked once after 1 second of debounced calls\n\t * var source = new EventSource('/stream');\n\t * jQuery(source).on('message', _.debounce(batchLog, 250, {\n\t * 'maxWait': 1000\n\t * }));\n\t *\n\t * // cancel a debounced call\n\t * var todoChanges = _.debounce(batchLog, 1000);\n\t * Object.observe(models.todo, todoChanges);\n\t *\n\t * Object.observe(models, function(changes) {\n\t * if (_.find(changes, { 'user': 'todo', 'type': 'delete'})) {\n\t * todoChanges.cancel();\n\t * }\n\t * }, ['delete']);\n\t *\n\t * // ...at some point `models.todo` is changed\n\t * models.todo.completed = true;\n\t *\n\t * // ...before 1 second has passed `models.todo` is deleted\n\t * // which cancels the debounced `todoChanges` call\n\t * delete models.todo;\n\t */\n\tfunction debounce(func, wait, options) {\n\t var args,\n\t maxTimeoutId,\n\t result,\n\t stamp,\n\t thisArg,\n\t timeoutId,\n\t trailingCall,\n\t lastCalled = 0,\n\t maxWait = false,\n\t trailing = true;\n\n\t if (typeof func != 'function') {\n\t throw new TypeError(FUNC_ERROR_TEXT);\n\t }\n\t wait = wait < 0 ? 0 : +wait || 0;\n\t if (options === true) {\n\t var leading = true;\n\t trailing = false;\n\t } else if (isObject(options)) {\n\t leading = !!options.leading;\n\t maxWait = 'maxWait' in options && nativeMax(+options.maxWait || 0, wait);\n\t trailing = 'trailing' in options ? !!options.trailing : trailing;\n\t }\n\n\t function cancel() {\n\t if (timeoutId) {\n\t clearTimeout(timeoutId);\n\t }\n\t if (maxTimeoutId) {\n\t clearTimeout(maxTimeoutId);\n\t }\n\t lastCalled = 0;\n\t maxTimeoutId = timeoutId = trailingCall = undefined;\n\t }\n\n\t function complete(isCalled, id) {\n\t if (id) {\n\t clearTimeout(id);\n\t }\n\t maxTimeoutId = timeoutId = trailingCall = undefined;\n\t if (isCalled) {\n\t lastCalled = now();\n\t result = func.apply(thisArg, args);\n\t if (!timeoutId && !maxTimeoutId) {\n\t args = thisArg = undefined;\n\t }\n\t }\n\t }\n\n\t function delayed() {\n\t var remaining = wait - (now() - stamp);\n\t if (remaining <= 0 || remaining > wait) {\n\t complete(trailingCall, maxTimeoutId);\n\t } else {\n\t timeoutId = setTimeout(delayed, remaining);\n\t }\n\t }\n\n\t function maxDelayed() {\n\t complete(trailing, timeoutId);\n\t }\n\n\t function debounced() {\n\t args = arguments;\n\t stamp = now();\n\t thisArg = this;\n\t trailingCall = trailing && (timeoutId || !leading);\n\n\t if (maxWait === false) {\n\t var leadingCall = leading && !timeoutId;\n\t } else {\n\t if (!maxTimeoutId && !leading) {\n\t lastCalled = stamp;\n\t }\n\t var remaining = maxWait - (stamp - lastCalled),\n\t isCalled = remaining <= 0 || remaining > maxWait;\n\n\t if (isCalled) {\n\t if (maxTimeoutId) {\n\t maxTimeoutId = clearTimeout(maxTimeoutId);\n\t }\n\t lastCalled = stamp;\n\t result = func.apply(thisArg, args);\n\t } else if (!maxTimeoutId) {\n\t maxTimeoutId = setTimeout(maxDelayed, remaining);\n\t }\n\t }\n\t if (isCalled && timeoutId) {\n\t timeoutId = clearTimeout(timeoutId);\n\t } else if (!timeoutId && wait !== maxWait) {\n\t timeoutId = setTimeout(delayed, wait);\n\t }\n\t if (leadingCall) {\n\t isCalled = true;\n\t result = func.apply(thisArg, args);\n\t }\n\t if (isCalled && !timeoutId && !maxTimeoutId) {\n\t args = thisArg = undefined;\n\t }\n\t return result;\n\t }\n\t debounced.cancel = cancel;\n\t return debounced;\n\t}\n\n\t/**\n\t * Checks if `value` is the [language type](https://es5.github.io/#x8) of `Object`.\n\t * (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Lang\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n\t * @example\n\t *\n\t * _.isObject({});\n\t * // => true\n\t *\n\t * _.isObject([1, 2, 3]);\n\t * // => true\n\t *\n\t * _.isObject(1);\n\t * // => false\n\t */\n\tfunction isObject(value) {\n\t // Avoid a V8 JIT bug in Chrome 19-20.\n\t // See https://code.google.com/p/v8/issues/detail?id=2291 for more details.\n\t var type = typeof value;\n\t return !!value && (type == 'object' || type == 'function');\n\t}\n\n\tmodule.exports = debounce;\n\n/***/ },\n/* 4 */\n/***/ function(module, exports) {\n\n\t/**\n\t * lodash 3.9.1 (Custom Build) \n\t * Build: `lodash modern modularize exports=\"npm\" -o ./`\n\t * Copyright 2012-2015 The Dojo Foundation \n\t * Based on Underscore.js 1.8.3 \n\t * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n\t * Available under MIT license \n\t */\n\n\t/** `Object#toString` result references. */\n\t'use strict';\n\n\tvar funcTag = '[object Function]';\n\n\t/** Used to detect host constructors (Safari > 5). */\n\tvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n\t/**\n\t * Checks if `value` is object-like.\n\t *\n\t * @private\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n\t */\n\tfunction isObjectLike(value) {\n\t return !!value && typeof value == 'object';\n\t}\n\n\t/** Used for native method references. */\n\tvar objectProto = Object.prototype;\n\n\t/** Used to resolve the decompiled source of functions. */\n\tvar fnToString = Function.prototype.toString;\n\n\t/** Used to check objects for own properties. */\n\tvar hasOwnProperty = objectProto.hasOwnProperty;\n\n\t/**\n\t * Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring)\n\t * of values.\n\t */\n\tvar objToString = objectProto.toString;\n\n\t/** Used to detect if a method is native. */\n\tvar reIsNative = RegExp('^' + fnToString.call(hasOwnProperty).replace(/[\\\\^$.*+?()[\\]{}|]/g, '\\\\$&').replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$');\n\n\t/**\n\t * Gets the native function at `key` of `object`.\n\t *\n\t * @private\n\t * @param {Object} object The object to query.\n\t * @param {string} key The key of the method to get.\n\t * @returns {*} Returns the function if it's native, else `undefined`.\n\t */\n\tfunction getNative(object, key) {\n\t var value = object == null ? undefined : object[key];\n\t return isNative(value) ? value : undefined;\n\t}\n\n\t/**\n\t * Checks if `value` is classified as a `Function` object.\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Lang\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.\n\t * @example\n\t *\n\t * _.isFunction(_);\n\t * // => true\n\t *\n\t * _.isFunction(/abc/);\n\t * // => false\n\t */\n\tfunction isFunction(value) {\n\t // The use of `Object#toString` avoids issues with the `typeof` operator\n\t // in older versions of Chrome and Safari which return 'function' for regexes\n\t // and Safari 8 equivalents which return 'object' for typed array constructors.\n\t return isObject(value) && objToString.call(value) == funcTag;\n\t}\n\n\t/**\n\t * Checks if `value` is the [language type](https://es5.github.io/#x8) of `Object`.\n\t * (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Lang\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n\t * @example\n\t *\n\t * _.isObject({});\n\t * // => true\n\t *\n\t * _.isObject([1, 2, 3]);\n\t * // => true\n\t *\n\t * _.isObject(1);\n\t * // => false\n\t */\n\tfunction isObject(value) {\n\t // Avoid a V8 JIT bug in Chrome 19-20.\n\t // See https://code.google.com/p/v8/issues/detail?id=2291 for more details.\n\t var type = typeof value;\n\t return !!value && (type == 'object' || type == 'function');\n\t}\n\n\t/**\n\t * Checks if `value` is a native function.\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Lang\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is a native function, else `false`.\n\t * @example\n\t *\n\t * _.isNative(Array.prototype.push);\n\t * // => true\n\t *\n\t * _.isNative(_);\n\t * // => false\n\t */\n\tfunction isNative(value) {\n\t if (value == null) {\n\t return false;\n\t }\n\t if (isFunction(value)) {\n\t return reIsNative.test(fnToString.call(value));\n\t }\n\t return isObjectLike(value) && reIsHostCtor.test(value);\n\t}\n\n\tmodule.exports = getNative;\n\n/***/ },\n/* 5 */\n/***/ function(module, exports) {\n\n\tmodule.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCRkNDMzg4M0FFN0IxMUU0OTE2RkY5MzYyMkI3QTVDMiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCRkNDMzg4NEFFN0IxMUU0OTE2RkY5MzYyMkI3QTVDMiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkJGQ0MzODgxQUU3QjExRTQ5MTZGRjkzNjIyQjdBNUMyIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkJGQ0MzODgyQUU3QjExRTQ5MTZGRjkzNjIyQjdBNUMyIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+NkztvAAAAc9JREFUeNq8lk8oBFEcx2fG5k+0HJRQ/iVy2U1tUsjBzYnI2cUWJyl3XJRSkgOtxEU4keLgQP6kuColoeQgEkXWand8X/3UNM28Z56Z961PO2/fb9535r3f/N7TTdPUnBSLxTSBcsEA6AW1IAw+wD3YAtPg0+1mXdK4DJyAKk7MM+gE506dhuZdleBSYMpUDM5Ah1NnyKOpDnZpWn91C/ZBksZrBhFL/zaopyWQNh4HDZZ2AsQd4kbBFF3ngRnQ8581vgHVdH0M2jgPeWjpz1BePMqscdRiyrQhiF+25VK7bHI12toXgvg9+yTKGpc6TDtPD+DJ0i6RNS6ytZOC+IwtpkA2q1epKLyDb/D2h3uGQQXIBqcyWd1FBeEOZNFM1YEckHYpTGzgKyqbpmWp1kEq9IeCcQRaNP80CZoMQclb8NmUqRys8IxZpenTglHUEOxAhQEZ5/OM01qAMnwah+3Ng2BTpTGr2a1gHnSDCVXGs7Z2QpVxjUNSKjGeo29T+RuHqaRqtOdGVGZ1in6/VH9OYZet01Uhnx5qBLyAIT+MvVQulslLflWuazq+BKFXnvEaWAzI+IA31ezUMEaJE6dDQYb+9yrdMrs7oP9HgAEAXmVa5ulD/g0AAAAASUVORK5CYII=\"\n\n/***/ }\n/******/ ])\n});\n;\n\n\n/** WEBPACK FOOTER **\n ** ./lib/react-ux-password-field.js\n **/"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///demo.bundle.js","webpack:///webpack/bootstrap 089b39c816a316a03a91","webpack:///./demo/src/index.js","webpack:///external \"React\"","webpack:///./demo/src/vendor/rainbow-custom.min.js","webpack:///./lib/react-ux-password-field.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","React","InputPassword","render","createElement","htmlFor","name","placeholder","minScore","minLength","zxcvbn","document","getElementById","window","Rainbow","q","a","b","getAttribute","attributes","length","nodeName","nodeValue","B","parentNode","className","match","C","f","d","parseInt","j","r","replace","l","s","i","e","exec","t","matches","k","g","index","u","h","setTimeout","v","language","substr","n","w","with","hasOwnProperty","push","sort","pattern","D","x","y","z","concat","o","_x","_x2","_x3","_again","_function","indexOf","undefined","toLowerCase","innerHTML","A","getElementsByTagName","extend","arguments","_a","color","addEventListener","attachEvent","onHighlight","addClass",1,2,3,4,5,"root","factory","__WEBPACK_EXTERNAL_MODULE_1__","_objectWithoutProperties","obj","keys","target","Object","prototype","_extends","assign","source","key","RP","PropTypes","config","debounce","createClass","displayName","propTypes","infoBar","bool","statusColor","string","statusInactiveColor","number","changeCb","func","toggleMask","unMaskTime","strengthLang","array","getDefaultProps","zxcvbnSrc","getInitialState","value","score","entropy","isPassword","isValid","getMeterStyle","width","this","state","props","maxWidth","opacity","background","height","transition","display","marginRight","unMaskStyle","unMaskColor","fontWeight","infoStyle","position","bottom","overflow","iconStyle","top","strengthLangStyle","fontSize","addPasswordType","setState","handleInputType","handleChange","preventDefault","native_target","nativeEvent","val","validity","valid","selectionStart","selectionEnd","handleToggleMask","handleZxcvbn","onChange","handleMinLength","maskPassword","stats","currentScore","console","debug","len","componentWillMount","src","type","async","insertBefore","componentWillUnmount","cancel","style","_props","that","test","navigator","userAgent","elem","refs","getDOMNode","data-valid","data-score","data-entropy","ref","wait","options","timeoutId","clearTimeout","maxTimeoutId","lastCalled","trailingCall","complete","isCalled","now","result","apply","thisArg","args","delayed","remaining","stamp","maxDelayed","trailing","debounced","leading","maxWait","leadingCall","TypeError","FUNC_ERROR_TEXT","isObject","nativeMax","getNative","Math","max","nativeNow","Date","getTime","isObjectLike","object","isNative","isFunction","objToString","funcTag","reIsNative","fnToString","reIsHostCtor","objectProto","Function","toString","RegExp"],"mappings":"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","file":"demo.bundle.js","sourcesContent":["/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/*!***************************!*\\\n !*** ./demo/src/index.js ***!\n \\***************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\t// demo pages css\n\t__webpack_require__(/*! normalize.css/normalize.css */ 7);\n\t__webpack_require__(/*! ./vendor/skeleton.css */ 5);\n\t__webpack_require__(/*! ./vendor/github.css */ 4);\n\t__webpack_require__(/*! ./vendor/syntax.css */ 6);\n\t__webpack_require__(/*! ./vendor/rainbow-custom.min.js */ 2);\n\t__webpack_require__(/*! ./css/style.scss */ 9);\n\t\n\t// css for form field\n\t__webpack_require__(/*! ./css/demo.scss */ 8);\n\t\n\t/*========== APP ==========*/\n\t\n\tvar React = __webpack_require__(/*! react */ 1),\n\t InputPassword = __webpack_require__(/*! ../../lib/react-ux-password-field.js */ 3);\n\t\n\tReact.render(React.createElement(\n\t 'form',\n\t null,\n\t React.createElement(\n\t 'fieldset',\n\t null,\n\t React.createElement(\n\t 'label',\n\t { htmlFor: 'password1' },\n\t 'Password'\n\t ),\n\t React.createElement(InputPassword, {\n\t id: 'password1',\n\t name: 'password1',\n\t placeholder: 'Try me out! Enter a random password.',\n\t minScore: 1,\n\t minLength: 5,\n\t zxcvbn: 'debug'\n\t })\n\t )\n\t), document.getElementById('content'));\n\n/***/ },\n/* 1 */\n/*!************************!*\\\n !*** external \"React\" ***!\n \\************************/\n/***/ function(module, exports) {\n\n\tmodule.exports = React;\n\n/***/ },\n/* 2 */\n/*!***********************************************!*\\\n !*** ./demo/src/vendor/rainbow-custom.min.js ***!\n \\***********************************************/\n/***/ function(module, exports) {\n\n\t/* Rainbow v1.2 rainbowco.de | included languages: generic, shell, javascript, html */\n\t\"use strict\";\n\t\n\twindow.Rainbow = (function () {\n\t function q(a) {\n\t var b,\n\t c = a.getAttribute && a.getAttribute(\"data-language\") || 0;if (!c) {\n\t a = a.attributes;for (b = 0; b < a.length; ++b) if (\"data-language\" === a[b].nodeName) return a[b].nodeValue;\n\t }return c;\n\t }function B(a) {\n\t var b = q(a) || q(a.parentNode);if (!b) {\n\t var c = /\\blang(?:uage)?-(\\w+)/;(a = a.className.match(c) || a.parentNode.className.match(c)) && (b = a[1]);\n\t }return b;\n\t }function C(a, b) {\n\t for (var c in f[d]) {\n\t c = parseInt(c, 10);if (a == c && b == f[d][c] ? 0 : a <= c && b >= f[d][c]) delete f[d][c], delete j[d][c];if (a >= c && a < f[d][c] || b > c && b < f[d][c]) return !0;\n\t }return !1;\n\t }function r(a, b) {\n\t return '' + b + \"\";\n\t }function s(a, b, c, i) {\n\t if (\"undefined\" === typeof a || null === a) i();else {\n\t var e = a.exec(c);if (e) {\n\t ++t;!b.name && \"string\" == typeof b.matches[0] && (b.name = b.matches[0], delete b.matches[0]);var k = e[0],\n\t g = e.index,\n\t u = e[0].length + g,\n\t h = function h() {\n\t function e() {\n\t s(a, b, c, i);\n\t }t % 100 > 0 ? e() : setTimeout(e, 0);\n\t };if (C(g, u)) h();else {\n\t var m = v(b.matches),\n\t l = function l(a, c, i) {\n\t if (a >= c.length) i(k);else {\n\t var d = e[c[a]];if (d) {\n\t var g = b.matches[c[a]],\n\t f = g.language,\n\t h = g.name && g.matches ? g.matches : g,\n\t j = function j(b, d, g) {\n\t var f;f = 0;var h;for (h = 1; h < c[a]; ++h) e[h] && (f = f + e[h].length);d = g ? r(g, d) : d;k = k.substr(0, f) + k.substr(f).replace(b, d);l(++a, c, i);\n\t };f ? n(d, f, function (a) {\n\t j(d, a);\n\t }) : typeof g === \"string\" ? j(d, d, g) : w(d, h.length ? h : [h], function (a) {\n\t j(d, a, g.matches ? g.name : 0);\n\t });\n\t } else l(++a, c, i);\n\t }\n\t };l(0, m, function (a) {\n\t b.name && (a = r(b.name, a));if (!j[d]) {\n\t j[d] = {};f[d] = {};\n\t }j[d][g] = { replace: e[0], \"with\": a };f[d][g] = u;h();\n\t });\n\t }\n\t } else i();\n\t }\n\t }function v(a) {\n\t var b = [],\n\t c;for (c in a) a.hasOwnProperty(c) && b.push(c);return b.sort(function (a, b) {\n\t return b - a;\n\t });\n\t }function w(a, b, c) {\n\t function i(b, k) {\n\t k < b.length ? s(b[k].pattern, b[k], a, function () {\n\t i(b, ++k);\n\t }) : D(a, function (a) {\n\t delete j[d];delete f[d];--d;c(a);\n\t });\n\t }++d;i(b, 0);\n\t }function D(a, b) {\n\t function c(a, b, i, f) {\n\t if (i < b.length) {\n\t ++x;var h = b[i],\n\t l = j[d][h],\n\t a = a.substr(0, h) + a.substr(h).replace(l.replace, l[\"with\"]),\n\t h = function h() {\n\t c(a, b, ++i, f);\n\t };0 < x % 250 ? h() : setTimeout(h, 0);\n\t } else f(a);\n\t }var i = v(j[d]);c(a, i, 0, b);\n\t }function n(a, b, c) {\n\t var d = m[b] || [],\n\t e = m[y] || [],\n\t b = z[b] ? d : d.concat(e);w(a.replace(//g, \">\").replace(/&(?![\\w\\#]+;)/g, \"&\"), b, c);\n\t }function o(_x, _x2, _x3) {\n\t var _again = true;\n\t\n\t _function: while (_again) {\n\t var a = _x,\n\t b = _x2,\n\t c = _x3;\n\t _again = false;\n\t if (b < a.length) {\n\t var d = a[b],\n\t e = B(d);if (!(-1 < (\" \" + d.className + \" \").indexOf(\" rainbow \")) && e) {\n\t return e = e.toLowerCase(), d.className += d.className ? \" rainbow\" : \"rainbow\", n(d.innerHTML, e, function (k) {\n\t d.innerHTML = k;j = {};f = {};p && p(d, e);setTimeout(function () {\n\t o(a, ++b, c);\n\t }, 0);\n\t });\n\t } else {\n\t _x = a;\n\t _x2 = ++b;\n\t _x3 = c;\n\t _again = true;\n\t d = e = undefined;\n\t continue _function;\n\t }\n\t }c && c();\n\t }\n\t }function A(a, b) {\n\t var a = a && \"function\" == typeof a.getElementsByTagName ? a : document,\n\t c = a.getElementsByTagName(\"pre\"),\n\t d = a.getElementsByTagName(\"code\"),\n\t e,\n\t f = [],\n\t g = [];for (e = 0; e < c.length; ++e) c[e].getElementsByTagName(\"code\").length ? c[e].innerHTML = c[e].innerHTML.replace(/^\\s+/, \"\").replace(/\\s+$/, \"\") : f.push(c[e]);for (e = 0; e < d.length; ++e) g.push(d[e]);o(g.concat(f), 0, b);\n\t }var j = {},\n\t f = {},\n\t m = {},\n\t z = {},\n\t d = 0,\n\t y = 0,\n\t t = 0,\n\t x = 0,\n\t l,\n\t p;return { extend: function extend(a, b, c) {\n\t 1 == arguments.length && (b = a, a = y);z[a] = c;m[a] = b.concat(m[a] || []);\n\t }, b: function b(a) {\n\t p = a;\n\t }, a: function a(_a) {\n\t l = _a;\n\t }, color: function color(a, b, c) {\n\t if (\"string\" == typeof a) return n(a, b, c);if (\"function\" == typeof a) return A(0, a);A(a, b);\n\t } };\n\t})();\n\tdocument.addEventListener ? document.addEventListener(\"DOMContentLoaded\", Rainbow.color, !1) : window.attachEvent(\"onload\", Rainbow.color);Rainbow.onHighlight = Rainbow.b;Rainbow.addClass = Rainbow.a;Rainbow.extend([{ matches: { 1: [{ name: \"keyword.operator\", pattern: /\\=|\\+/g }, { name: \"keyword.dot\", pattern: /\\./g }], 2: { name: \"string\", matches: { name: \"constant.character.escape\", pattern: /\\\\('|\"){1}/g } } }, pattern: /(\\(|\\s|\\[|\\=|:|\\+|\\.)(('|\")([^\\\\\\1]|\\\\.)*?(\\3))/gm }, { name: \"comment\", pattern: /\\/\\*[\\s\\S]*?\\*\\/|(\\/\\/|\\#)[\\s\\S]*?$/gm }, { name: \"constant.numeric\", pattern: /\\b(\\d+(\\.\\d+)?(e(\\+|\\-)?\\d+)?(f|d)?|0x[\\da-f]+)\\b/gi }, { matches: { 1: \"keyword\" }, pattern: /\\b(and|array|as|b(ool(ean)?|reak)|c(ase|atch|har|lass|on(st|tinue))|d(ef|elete|o(uble)?)|e(cho|lse(if)?|xit|xtends|xcept)|f(inally|loat|or(each)?|unction)|global|if|import|int(eger)?|long|new|object|or|pr(int|ivate|otected)|public|return|self|st(ring|ruct|atic)|switch|th(en|is|row)|try|(un)?signed|var|void|while)(?=\\(|\\b)/gi }, { name: \"constant.language\", pattern: /true|false|null/g }, { name: \"keyword.operator\", pattern: /\\+|\\!|\\-|&(gt|lt|amp);|\\||\\*|\\=/g }, { matches: { 1: \"function.call\" }, pattern: /(\\w+?)(?=\\()/g }, { matches: { 1: \"storage.function\", 2: \"entity.name.function\" }, pattern: /(function)\\s(.*?)(?=\\()/g }]);Rainbow.extend(\"shell\", [{ name: \"shell\", matches: { 1: { language: \"shell\" } }, pattern: /\\$\\(([\\s\\S]*?)\\)/gm }, { matches: { 2: \"string\" }, pattern: /(\\(|\\s|\\[|\\=)(('|\")[\\s\\S]*?(\\3))/gm }, { name: \"keyword.operator\", pattern: /<|>|&/g }, { name: \"comment\", pattern: /\\#[\\s\\S]*?$/gm }, { name: \"storage.function\", pattern: /(.+?)(?=\\(\\)\\s{0,}\\{)/g }, { name: \"support.command\", pattern: /\\b(echo|rm|ls|(mk|rm)dir|cd|find|cp|exit|pwd|exec|trap|source|shift|unset)/g }, { matches: { 1: \"keyword\" }, pattern: /\\b(break|case|continue|do|done|elif|else|esac|eval|export|fi|for|function|if|in|local|return|set|then|unset|until|while)(?=\\(|\\b)/g }], !0);Rainbow.extend(\"javascript\", [{ name: \"selector\", pattern: /(\\s|^)\\$(?=\\.|\\()/g }, { name: \"support\", pattern: /\\b(window|document)\\b/g }, { matches: { 1: \"support.property\" }, pattern: /\\.(length|node(Name|Value))\\b/g }, { matches: { 1: \"support.function\" }, pattern: /(setTimeout|setInterval)(?=\\()/g }, { matches: { 1: \"support.method\" }, pattern: /\\.(getAttribute|push|getElementById|getElementsByClassName|log|setTimeout|setInterval)(?=\\()/g }, { name: \"string.regexp\", matches: { 1: \"string.regexp.open\", 2: { name: \"constant.regexp.escape\", pattern: /\\\\(.){1}/g },\n\t 3: \"string.regexp.close\", 4: \"string.regexp.modifier\" }, pattern: /(\\/)(?!\\*)(.+)(\\/)([igm]{0,3})/g }, { matches: { 1: \"storage\", 3: \"entity.function\" }, pattern: /(var)?(\\s|^)(\\S*)(?=\\s?=\\s?function\\()/g }, { matches: { 1: \"keyword\", 2: \"entity.function\" }, pattern: /(new)\\s+(.*)(?=\\()/g }, { name: \"entity.function\", pattern: /(\\w+)(?=:\\s{0,}function)/g }]);Rainbow.extend(\"html\", [{ name: \"source.php.embedded\", matches: { 2: { language: \"php\" } }, pattern: /<\\?=?(?!xml)(php)?([\\s\\S]*?)(\\?>)/gm }, { name: \"source.css.embedded\", matches: { 1: { matches: { 1: \"support.tag.style\", 2: [{ name: \"entity.tag.style\", pattern: /^style/g }, { name: \"string\", pattern: /('|\")(.*?)(\\1)/g }, { name: \"entity.tag.style.attribute\", pattern: /(\\w+)/g }], 3: \"support.tag.style\" }, pattern: /(<\\/?)(style.*?)(>)/g }, 2: { language: \"css\" }, 3: \"support.tag.style\", 4: \"entity.tag.style\", 5: \"support.tag.style\" }, pattern: /(<style.*?>)([\\s\\S]*?)(<\\/)(style)(>)/gm }, { name: \"source.js.embedded\", matches: { 1: { matches: { 1: \"support.tag.script\", 2: [{ name: \"entity.tag.script\", pattern: /^script/g }, { name: \"string\", pattern: /('|\")(.*?)(\\1)/g }, { name: \"entity.tag.script.attribute\", pattern: /(\\w+)/g }], 3: \"support.tag.script\" }, pattern: /(<\\/?)(script.*?)(>)/g }, 2: { language: \"javascript\" }, 3: \"support.tag.script\", 4: \"entity.tag.script\", 5: \"support.tag.script\" }, pattern: /(<script(?! src).*?>)([\\s\\S]*?)(<\\/)(script)(>)/gm }, { name: \"comment.html\", pattern: /<\\!--[\\S\\s]*?-->/g }, { matches: { 1: \"support.tag.open\", 2: \"support.tag.close\" }, pattern: /(<)|(\\/?\\??>)/g }, { name: \"support.tag\", matches: { 1: \"support.tag\", 2: \"support.tag.special\", 3: \"support.tag-name\" }, pattern: /(<\\??)(\\/|\\!?)(\\w+)/g }, { matches: { 1: \"support.attribute\" }, pattern: /([a-z-]+)(?=\\=)/gi }, { matches: { 1: \"support.operator\", 2: \"string.quote\", 3: \"string.value\", 4: \"string.quote\" }, pattern: /(=)('|\")(.*?)(\\2)/g }, { matches: { 1: \"support.operator\", 2: \"support.value\" }, pattern: /(=)([a-zA-Z\\-0-9]*)\\b/g }, { matches: { 1: \"support.attribute\" },\n\t pattern: /\\s(\\w+)(?=\\s|>)(?![\\s\\S]*<)/g }], !0);\n\n/***/ },\n/* 3 */\n/*!****************************************!*\\\n !*** ./lib/react-ux-password-field.js ***!\n \\****************************************/\n/***/ function(module, exports, __webpack_require__) {\n\n\t/*!\n\t * React UX Password Field\n\t * version: 0.9.10\n\t * \n\t * MIT Licensed\n\t * github: https://github.com/seethroughtrees/react-ux-password-field/\n\t * demo: https://seethroughtrees.github.io/react-ux-password-field/\n\t * \n\t */\n\t'use strict';\n\t\n\t(function webpackUniversalModuleDefinition(root, factory) {\n\t\tif (true) module.exports = factory(__webpack_require__(/*! react */ 1));else if (typeof define === 'function' && define.amd) define([\"react\"], factory);else if (typeof exports === 'object') exports[\"react-ux-password-field\"] = factory(require(\"react\"));else root[\"react-ux-password-field\"] = factory(root[\"React\"]);\n\t})(undefined, function (__WEBPACK_EXTERNAL_MODULE_1__) {\n\t\treturn (/******/(function (modules) {\n\t\t\t\t// webpackBootstrap\n\t\t\t\t/******/ // The module cache\n\t\t\t\t/******/var installedModules = {};\n\t\n\t\t\t\t/******/ // The require function\n\t\t\t\t/******/function __webpack_require__(moduleId) {\n\t\n\t\t\t\t\t/******/ // Check if module is in cache\n\t\t\t\t\t/******/if (installedModules[moduleId])\n\t\t\t\t\t\t/******/return installedModules[moduleId].exports;\n\t\n\t\t\t\t\t/******/ // Create a new module (and put it into the cache)\n\t\t\t\t\t/******/var module = installedModules[moduleId] = {\n\t\t\t\t\t\t/******/exports: {},\n\t\t\t\t\t\t/******/id: moduleId,\n\t\t\t\t\t\t/******/loaded: false\n\t\t\t\t\t\t/******/ };\n\t\n\t\t\t\t\t/******/ // Execute the module function\n\t\t\t\t\t/******/modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\t\n\t\t\t\t\t/******/ // Flag the module as loaded\n\t\t\t\t\t/******/module.loaded = true;\n\t\n\t\t\t\t\t/******/ // Return the exports of the module\n\t\t\t\t\t/******/return module.exports;\n\t\t\t\t\t/******/\n\t\t\t\t}\n\t\n\t\t\t\t/******/ // expose the modules object (__webpack_modules__)\n\t\t\t\t/******/__webpack_require__.m = modules;\n\t\n\t\t\t\t/******/ // expose the module cache\n\t\t\t\t/******/__webpack_require__.c = installedModules;\n\t\n\t\t\t\t/******/ // __webpack_public_path__\n\t\t\t\t/******/__webpack_require__.p = \"\";\n\t\n\t\t\t\t/******/ // Load entry module and return exports\n\t\t\t\t/******/return __webpack_require__(0);\n\t\t\t\t/******/\n\t\t\t})(\n\t\t\t/************************************************************************/\n\t\t\t/******/[\n\t\t\t/* 0 */\n\t\t\tfunction (module, exports, __webpack_require__) {\n\t\n\t\t\t\t'use strict';\n\t\n\t\t\t\tvar _extends = Object.assign || function (target) {\n\t\t\t\t\tfor (var i = 1; i < arguments.length; i++) {\n\t\t\t\t\t\tvar source = arguments[i];for (var key in source) {\n\t\t\t\t\t\t\tif (Object.prototype.hasOwnProperty.call(source, key)) {\n\t\t\t\t\t\t\t\ttarget[key] = source[key];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}return target;\n\t\t\t\t};\n\t\n\t\t\t\tfunction _objectWithoutProperties(obj, keys) {\n\t\t\t\t\tvar target = {};for (var i in obj) {\n\t\t\t\t\t\tif (keys.indexOf(i) >= 0) continue;if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;target[i] = obj[i];\n\t\t\t\t\t}return target;\n\t\t\t\t}\n\t\n\t\t\t\tvar React = __webpack_require__(1),\n\t\t\t\t RP = React.PropTypes,\n\t\t\t\t config = __webpack_require__(2),\n\t\t\t\t debounce = __webpack_require__(3);\n\t\n\t\t\t\tvar InputPassword = React.createClass({\n\t\t\t\t\tdisplayName: 'InputPassword',\n\t\n\t\t\t\t\t/*========== VALIDATE ==========*/\n\t\n\t\t\t\t\tpropTypes: {\n\t\t\t\t\t\tinfoBar: RP.bool,\n\t\t\t\t\t\tstatusColor: RP.string,\n\t\t\t\t\t\tstatusInactiveColor: RP.string,\n\t\t\t\t\t\tminScore: RP.number,\n\t\t\t\t\t\tchangeCb: RP.func,\n\t\t\t\t\t\ttoggleMask: RP.bool,\n\t\t\t\t\t\tunMaskTime: RP.number,\n\t\t\t\t\t\tminLength: RP.number,\n\t\t\t\t\t\tstrengthLang: RP.array,\n\t\t\t\t\t\tid: RP.string\n\t\t\t\t\t},\n\t\n\t\t\t\t\t/*========== DEFAULTS ==========*/\n\t\n\t\t\t\t\tgetDefaultProps: function getDefaultProps() {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tinfoBar: true,\n\t\t\t\t\t\t\tstatusColor: config.statusColor,\n\t\t\t\t\t\t\tstatusInactiveColor: config.statusInactiveColor,\n\t\t\t\t\t\t\tzxcvbn: config.zxcvbnSrc,\n\t\t\t\t\t\t\tminScore: 0,\n\t\t\t\t\t\t\ttoggleMask: true,\n\t\t\t\t\t\t\tunMaskTime: config.unMaskTime,\n\t\t\t\t\t\t\tstrengthLang: config.strengthLang,\n\t\t\t\t\t\t\tid: 'input'\n\t\t\t\t\t\t};\n\t\t\t\t\t},\n\t\n\t\t\t\t\tgetInitialState: function getInitialState() {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tvalue: '',\n\t\t\t\t\t\t\tscore: 0,\n\t\t\t\t\t\t\tentropy: 0,\n\t\t\t\t\t\t\tisPassword: true,\n\t\t\t\t\t\t\tisValid: false\n\t\t\t\t\t\t};\n\t\t\t\t\t},\n\t\n\t\t\t\t\t/*========== STYLES ==========*/\n\t\n\t\t\t\t\tgetMeterStyle: function getMeterStyle(score) {\n\t\t\t\t\t\tvar width = this.state.value === '' ? 0 : 24 * score + 4;\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\twidth: this.props.zxcvbn ? width + '%' : '100%',\n\t\t\t\t\t\t\tmaxWidth: '85%',\n\t\t\t\t\t\t\topacity: this.props.zxcvbn ? width * .01 + .5 : '1',\n\t\t\t\t\t\t\tbackground: this.state.isValid ? this.props.statusColor : this.props.statusInactiveColor,\n\t\t\t\t\t\t\theight: 5,\n\t\t\t\t\t\t\ttransition: 'all 400ms linear',\n\t\t\t\t\t\t\tdisplay: 'inline-block',\n\t\t\t\t\t\t\tmarginRight: '1%'\n\t\t\t\t\t\t};\n\t\t\t\t\t},\n\t\n\t\t\t\t\tunMaskStyle: {\n\t\t\t\t\t\tcolor: config.unMaskColor,\n\t\t\t\t\t\tfontWeight: 200\n\t\t\t\t\t},\n\t\n\t\t\t\t\tinfoStyle: {\n\t\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\t\tbottom: -10,\n\t\t\t\t\t\twidth: '100%',\n\t\t\t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\theight: 24\n\t\t\t\t\t},\n\t\n\t\t\t\t\ticonStyle: {\n\t\t\t\t\t\tdisplay: 'inline-block',\n\t\t\t\t\t\topacity: .25,\n\t\t\t\t\t\tposition: 'relative',\n\t\t\t\t\t\ttop: 2,\n\t\t\t\t\t\twidth: '3%'\n\t\t\t\t\t},\n\t\n\t\t\t\t\tstrengthLangStyle: {\n\t\t\t\t\t\tfontSize: 12,\n\t\t\t\t\t\tposition: 'relative',\n\t\t\t\t\t\ttop: 2\n\t\t\t\t\t},\n\t\n\t\t\t\t\t/*========== METHODS ==========*/\n\t\n\t\t\t\t\taddPasswordType: function addPasswordType() {\n\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\tisPassword: true\n\t\t\t\t\t\t});\n\t\t\t\t\t},\n\t\n\t\t\t\t\t/*========== HANDLERS ==========*/\n\t\n\t\t\t\t\thandleInputType: function handleInputType() {\n\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\tisPassword: !this.state.isPassword\n\t\t\t\t\t\t});\n\t\t\t\t\t},\n\t\n\t\t\t\t\thandleChange: function handleChange(e) {\n\t\t\t\t\t\te.preventDefault();\n\t\n\t\t\t\t\t\tvar native_target = e.nativeEvent.target;\n\t\t\t\t\t\tvar val = e.target.value;\n\t\t\t\t\t\tvar score;\n\t\n\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\tvalue: val,\n\t\t\t\t\t\t\tisValid: e.target.validity.valid,\n\t\t\t\t\t\t\tselectionStart: native_target.selectionStart,\n\t\t\t\t\t\t\tselectionEnd: native_target.selectionEnd\n\t\t\t\t\t\t});\n\t\n\t\t\t\t\t\tif (this.props.toggleMask) {\n\t\t\t\t\t\t\tthis.handleToggleMask();\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\tif (this.props.zxcvbn) {\n\t\t\t\t\t\t\tscore = this.handleZxcvbn(val);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tscore = this.state.score;\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\t// call onChange prop passed from parent\n\t\t\t\t\t\tif (this.props.onChange) {\n\t\t\t\t\t\t\tthis.props.onChange(val, this.state.isValid, score);\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\tif (this.props.minLength) {\n\t\t\t\t\t\t\tthis.handleMinLength(e.target.value.length);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\n\t\t\t\t\thandleToggleMask: function handleToggleMask() {\n\t\n\t\t\t\t\t\t// display password, then\n\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\tisPassword: false\n\t\t\t\t\t\t});\n\t\n\t\t\t\t\t\t// debounce remasking password\n\t\t\t\t\t\tthis.maskPassword();\n\t\t\t\t\t},\n\t\n\t\t\t\t\thandleZxcvbn: function handleZxcvbn(val) {\n\t\n\t\t\t\t\t\tif (typeof zxcvbn === 'undefined' && typeof window.zxcvbn === 'undefined') {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\tvar stats = zxcvbn(val),\n\t\t\t\t\t\t currentScore = stats.score;\n\t\n\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\tscore: currentScore,\n\t\t\t\t\t\t\tentropy: stats.entropy\n\t\t\t\t\t\t});\n\t\n\t\t\t\t\t\tif (currentScore < this.props.minScore) {\n\t\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\t\tisValid: false\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\t// if score changed and callback provided\n\t\t\t\t\t\tif (this.props.changeCb && this.state.score !== currentScore) {\n\t\t\t\t\t\t\tthis.props.changeCb(this.state.score, currentScore, val);\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\tif (this.props.zxcvbn === 'debug') {\n\t\t\t\t\t\t\tconsole.debug(stats);\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\treturn currentScore;\n\t\t\t\t\t},\n\t\n\t\t\t\t\thandleMinLength: function handleMinLength(len) {\n\t\t\t\t\t\tif (len <= this.props.minLength) {\n\t\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\t\tisValid: false\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\n\t\t\t\t\tcomponentWillMount: function componentWillMount() {\n\t\t\t\t\t\tvar zxcvbnSrc;\n\t\n\t\t\t\t\t\t// Load zxcvbn async if its enabled and doesn't already exist\n\t\t\t\t\t\tif (this.props.zxcvbn && typeof zxcvbn === 'undefined') {\n\t\n\t\t\t\t\t\t\tzxcvbnSrc = this.props.zxcvbn !== 'debug' ? this.props.zxcvbn : config.zxcvbnSrc;\n\t\n\t\t\t\t\t\t\t// snippet to async load zxcvbn if enabled\n\t\t\t\t\t\t\t(function () {\n\t\t\t\t\t\t\t\tvar a, b;b = document.createElement(\"script\");b.src = zxcvbnSrc;b.type = \"text/javascript\";b.async = !0;a = document.getElementsByTagName(\"head\")[0];a.parentNode.insertBefore(b, a);\n\t\t\t\t\t\t\t}).call(this);\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\t// set debouncer for password\n\t\t\t\t\t\tif (this.props.toggleMask) {\n\t\t\t\t\t\t\tthis.maskPassword = debounce(this.addPasswordType, this.props.unMaskTime);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\n\t\t\t\t\tcomponentWillUnmount: function componentWillUnmount() {\n\t\t\t\t\t\t// cancel the debouncer when component is not used anymore. This to avoid\n\t\t\t\t\t\t// setting the state unnecessarily, see issue #24\n\t\t\t\t\t\tif (this.maskPassword) {\n\t\t\t\t\t\t\tthis.maskPassword.cancel();\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\n\t\t\t\t\trender: function render() {\n\t\t\t\t\t\tvar infoBar;\n\t\n\t\t\t\t\t\tif (this.props.infoBar) {\n\t\t\t\t\t\t\tinfoBar = React.createElement('div', { className: 'passwordField__info', style: this.infoStyle }, React.createElement('span', { style: this.iconStyle, className: 'passwordField__icon' }, React.createElement('img', { src: __webpack_require__(5), height: '10', width: '10' })), React.createElement('span', { style: this.getMeterStyle(this.state.score), className: 'passwordField__meter' }), React.createElement('span', { style: this.strengthLangStyle, className: 'passwordField__strength' }, this.props.zxcvbn && this.state.value.length > 0 && this.props.strengthLang.length > 0 ? this.props.strengthLang[this.state.score] : null));\n\t\t\t\t\t\t}\n\t\n\t\t\t\t\t\t// allow onChange to be passed from parent and not override default prop\n\t\t\t\t\t\tvar _props = this.props;\n\t\t\t\t\t\tvar onChange = _props.onChange;\n\t\n\t\t\t\t\t\tvar props = _objectWithoutProperties(_props, ['onChange']);\n\t\n\t\t\t\t\t\t// overcome problem with firefox resetting the input selection point\n\t\t\t\t\t\tvar that = this;\n\t\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t\tif (!/Firefox/.test(navigator.userAgent)) return;\n\t\t\t\t\t\t\tvar elem = that.refs[that.props.id].getDOMNode();\n\t\t\t\t\t\t\telem.selectionStart = that.state.selectionStart;\n\t\t\t\t\t\t\telem.selectionEnd = that.state.selectionEnd;\n\t\t\t\t\t\t}, 1);\n\t\n\t\t\t\t\t\treturn React.createElement('div', {\n\t\t\t\t\t\t\tstyle: { position: 'relative', display: 'inline-block' },\n\t\t\t\t\t\t\tclassName: 'passwordField',\n\t\t\t\t\t\t\t'data-valid': this.state.isValid,\n\t\t\t\t\t\t\t'data-score': this.state.score,\n\t\t\t\t\t\t\t'data-entropy': this.state.entropy\n\t\t\t\t\t\t}, React.createElement('input', _extends({\n\t\t\t\t\t\t\tref: this.props.id,\n\t\t\t\t\t\t\tclassName: 'passwordField__input',\n\t\t\t\t\t\t\ttype: this.state.isPassword ? 'password' : 'text',\n\t\t\t\t\t\t\tvalue: this.state.value,\n\t\t\t\t\t\t\tstyle: this.state.isPassword ? null : this.unMaskStyle,\n\t\t\t\t\t\t\tonChange: this.handleChange\n\t\t\t\t\t\t}, props)), infoBar);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\n\t\t\t\tmodule.exports = InputPassword;\n\t\n\t\t\t\t/***/\n\t\t\t},\n\t\t\t/* 1 */\n\t\t\tfunction (module, exports) {\n\t\n\t\t\t\tmodule.exports = __WEBPACK_EXTERNAL_MODULE_1__;\n\t\n\t\t\t\t/***/\n\t\t\t},\n\t\t\t/* 2 */\n\t\t\tfunction (module, exports) {\n\t\n\t\t\t\t'use strict';\n\t\n\t\t\t\tmodule.exports = {\n\t\t\t\t\tstatusColor: '#5CE592',\n\t\t\t\t\tstatusInactiveColor: '#FC6F6F',\n\t\t\t\t\tunMaskColor: '#c7c7c7',\n\t\t\t\t\tunMaskTime: 1400,\n\t\t\t\t\tzxcvbnSrc: 'https://cdnjs.cloudflare.com/ajax/libs/zxcvbn/1.0/zxcvbn.min.js',\n\t\t\t\t\tstrengthLang: ['Weak', 'Okay', 'Good', 'Strong', 'Great']\n\t\t\t\t};\n\t\n\t\t\t\t/***/\n\t\t\t},\n\t\t\t/* 3 */\n\t\t\tfunction (module, exports, __webpack_require__) {\n\t\n\t\t\t\t/**\n\t * lodash 3.1.1 (Custom Build) \n\t * Build: `lodash modern modularize exports=\"npm\" -o ./`\n\t * Copyright 2012-2015 The Dojo Foundation \n\t * Based on Underscore.js 1.8.3 \n\t * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n\t * Available under MIT license \n\t */\n\t\t\t\t'use strict';\n\t\n\t\t\t\tvar getNative = __webpack_require__(4);\n\t\n\t\t\t\t/** Used as the `TypeError` message for \"Functions\" methods. */\n\t\t\t\tvar FUNC_ERROR_TEXT = 'Expected a function';\n\t\n\t\t\t\t/* Native method references for those with the same name as other `lodash` methods. */\n\t\t\t\tvar nativeMax = Math.max,\n\t\t\t\t nativeNow = getNative(Date, 'now');\n\t\n\t\t\t\t/**\n\t * Gets the number of milliseconds that have elapsed since the Unix epoch\n\t * (1 January 1970 00:00:00 UTC).\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Date\n\t * @example\n\t *\n\t * _.defer(function(stamp) {\n\t * console.log(_.now() - stamp);\n\t * }, _.now());\n\t * // => logs the number of milliseconds it took for the deferred function to be invoked\n\t */\n\t\t\t\tvar now = nativeNow || function () {\n\t\t\t\t\treturn new Date().getTime();\n\t\t\t\t};\n\t\n\t\t\t\t/**\n\t * Creates a debounced function that delays invoking `func` until after `wait`\n\t * milliseconds have elapsed since the last time the debounced function was\n\t * invoked. The debounced function comes with a `cancel` method to cancel\n\t * delayed invocations. Provide an options object to indicate that `func`\n\t * should be invoked on the leading and/or trailing edge of the `wait` timeout.\n\t * Subsequent calls to the debounced function return the result of the last\n\t * `func` invocation.\n\t *\n\t * **Note:** If `leading` and `trailing` options are `true`, `func` is invoked\n\t * on the trailing edge of the timeout only if the the debounced function is\n\t * invoked more than once during the `wait` timeout.\n\t *\n\t * See [David Corbacho's article](http://drupalmotion.com/article/debounce-and-throttle-visual-explanation)\n\t * for details over the differences between `_.debounce` and `_.throttle`.\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Function\n\t * @param {Function} func The function to debounce.\n\t * @param {number} [wait=0] The number of milliseconds to delay.\n\t * @param {Object} [options] The options object.\n\t * @param {boolean} [options.leading=false] Specify invoking on the leading\n\t * edge of the timeout.\n\t * @param {number} [options.maxWait] The maximum time `func` is allowed to be\n\t * delayed before it is invoked.\n\t * @param {boolean} [options.trailing=true] Specify invoking on the trailing\n\t * edge of the timeout.\n\t * @returns {Function} Returns the new debounced function.\n\t * @example\n\t *\n\t * // avoid costly calculations while the window size is in flux\n\t * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n\t *\n\t * // invoke `sendMail` when the click event is fired, debouncing subsequent calls\n\t * jQuery('#postbox').on('click', _.debounce(sendMail, 300, {\n\t * 'leading': true,\n\t * 'trailing': false\n\t * }));\n\t *\n\t * // ensure `batchLog` is invoked once after 1 second of debounced calls\n\t * var source = new EventSource('/stream');\n\t * jQuery(source).on('message', _.debounce(batchLog, 250, {\n\t * 'maxWait': 1000\n\t * }));\n\t *\n\t * // cancel a debounced call\n\t * var todoChanges = _.debounce(batchLog, 1000);\n\t * Object.observe(models.todo, todoChanges);\n\t *\n\t * Object.observe(models, function(changes) {\n\t * if (_.find(changes, { 'user': 'todo', 'type': 'delete'})) {\n\t * todoChanges.cancel();\n\t * }\n\t * }, ['delete']);\n\t *\n\t * // ...at some point `models.todo` is changed\n\t * models.todo.completed = true;\n\t *\n\t * // ...before 1 second has passed `models.todo` is deleted\n\t * // which cancels the debounced `todoChanges` call\n\t * delete models.todo;\n\t */\n\t\t\t\tfunction debounce(func, wait, options) {\n\t\t\t\t\tvar args,\n\t\t\t\t\t maxTimeoutId,\n\t\t\t\t\t result,\n\t\t\t\t\t stamp,\n\t\t\t\t\t thisArg,\n\t\t\t\t\t timeoutId,\n\t\t\t\t\t trailingCall,\n\t\t\t\t\t lastCalled = 0,\n\t\t\t\t\t maxWait = false,\n\t\t\t\t\t trailing = true;\n\t\n\t\t\t\t\tif (typeof func != 'function') {\n\t\t\t\t\t\tthrow new TypeError(FUNC_ERROR_TEXT);\n\t\t\t\t\t}\n\t\t\t\t\twait = wait < 0 ? 0 : +wait || 0;\n\t\t\t\t\tif (options === true) {\n\t\t\t\t\t\tvar leading = true;\n\t\t\t\t\t\ttrailing = false;\n\t\t\t\t\t} else if (isObject(options)) {\n\t\t\t\t\t\tleading = !!options.leading;\n\t\t\t\t\t\tmaxWait = 'maxWait' in options && nativeMax(+options.maxWait || 0, wait);\n\t\t\t\t\t\ttrailing = 'trailing' in options ? !!options.trailing : trailing;\n\t\t\t\t\t}\n\t\n\t\t\t\t\tfunction cancel() {\n\t\t\t\t\t\tif (timeoutId) {\n\t\t\t\t\t\t\tclearTimeout(timeoutId);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (maxTimeoutId) {\n\t\t\t\t\t\t\tclearTimeout(maxTimeoutId);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlastCalled = 0;\n\t\t\t\t\t\tmaxTimeoutId = timeoutId = trailingCall = undefined;\n\t\t\t\t\t}\n\t\n\t\t\t\t\tfunction complete(isCalled, id) {\n\t\t\t\t\t\tif (id) {\n\t\t\t\t\t\t\tclearTimeout(id);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmaxTimeoutId = timeoutId = trailingCall = undefined;\n\t\t\t\t\t\tif (isCalled) {\n\t\t\t\t\t\t\tlastCalled = now();\n\t\t\t\t\t\t\tresult = func.apply(thisArg, args);\n\t\t\t\t\t\t\tif (!timeoutId && !maxTimeoutId) {\n\t\t\t\t\t\t\t\targs = thisArg = undefined;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\n\t\t\t\t\tfunction delayed() {\n\t\t\t\t\t\tvar remaining = wait - (now() - stamp);\n\t\t\t\t\t\tif (remaining <= 0 || remaining > wait) {\n\t\t\t\t\t\t\tcomplete(trailingCall, maxTimeoutId);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\ttimeoutId = setTimeout(delayed, remaining);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\n\t\t\t\t\tfunction maxDelayed() {\n\t\t\t\t\t\tcomplete(trailing, timeoutId);\n\t\t\t\t\t}\n\t\n\t\t\t\t\tfunction debounced() {\n\t\t\t\t\t\targs = arguments;\n\t\t\t\t\t\tstamp = now();\n\t\t\t\t\t\tthisArg = this;\n\t\t\t\t\t\ttrailingCall = trailing && (timeoutId || !leading);\n\t\n\t\t\t\t\t\tif (maxWait === false) {\n\t\t\t\t\t\t\tvar leadingCall = leading && !timeoutId;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tif (!maxTimeoutId && !leading) {\n\t\t\t\t\t\t\t\tlastCalled = stamp;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tvar remaining = maxWait - (stamp - lastCalled),\n\t\t\t\t\t\t\t isCalled = remaining <= 0 || remaining > maxWait;\n\t\n\t\t\t\t\t\t\tif (isCalled) {\n\t\t\t\t\t\t\t\tif (maxTimeoutId) {\n\t\t\t\t\t\t\t\t\tmaxTimeoutId = clearTimeout(maxTimeoutId);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tlastCalled = stamp;\n\t\t\t\t\t\t\t\tresult = func.apply(thisArg, args);\n\t\t\t\t\t\t\t} else if (!maxTimeoutId) {\n\t\t\t\t\t\t\t\tmaxTimeoutId = setTimeout(maxDelayed, remaining);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isCalled && timeoutId) {\n\t\t\t\t\t\t\ttimeoutId = clearTimeout(timeoutId);\n\t\t\t\t\t\t} else if (!timeoutId && wait !== maxWait) {\n\t\t\t\t\t\t\ttimeoutId = setTimeout(delayed, wait);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (leadingCall) {\n\t\t\t\t\t\t\tisCalled = true;\n\t\t\t\t\t\t\tresult = func.apply(thisArg, args);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isCalled && !timeoutId && !maxTimeoutId) {\n\t\t\t\t\t\t\targs = thisArg = undefined;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn result;\n\t\t\t\t\t}\n\t\t\t\t\tdebounced.cancel = cancel;\n\t\t\t\t\treturn debounced;\n\t\t\t\t}\n\t\n\t\t\t\t/**\n\t * Checks if `value` is the [language type](https://es5.github.io/#x8) of `Object`.\n\t * (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Lang\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n\t * @example\n\t *\n\t * _.isObject({});\n\t * // => true\n\t *\n\t * _.isObject([1, 2, 3]);\n\t * // => true\n\t *\n\t * _.isObject(1);\n\t * // => false\n\t */\n\t\t\t\tfunction isObject(value) {\n\t\t\t\t\t// Avoid a V8 JIT bug in Chrome 19-20.\n\t\t\t\t\t// See https://code.google.com/p/v8/issues/detail?id=2291 for more details.\n\t\t\t\t\tvar type = typeof value;\n\t\t\t\t\treturn !!value && (type == 'object' || type == 'function');\n\t\t\t\t}\n\t\n\t\t\t\tmodule.exports = debounce;\n\t\n\t\t\t\t/***/\n\t\t\t},\n\t\t\t/* 4 */\n\t\t\tfunction (module, exports) {\n\t\n\t\t\t\t/**\n\t * lodash 3.9.1 (Custom Build) \n\t * Build: `lodash modern modularize exports=\"npm\" -o ./`\n\t * Copyright 2012-2015 The Dojo Foundation \n\t * Based on Underscore.js 1.8.3 \n\t * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n\t * Available under MIT license \n\t */\n\t\n\t\t\t\t/** `Object#toString` result references. */\n\t\t\t\t'use strict';\n\t\n\t\t\t\tvar funcTag = '[object Function]';\n\t\n\t\t\t\t/** Used to detect host constructors (Safari > 5). */\n\t\t\t\tvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\t\n\t\t\t\t/**\n\t * Checks if `value` is object-like.\n\t *\n\t * @private\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n\t */\n\t\t\t\tfunction isObjectLike(value) {\n\t\t\t\t\treturn !!value && typeof value == 'object';\n\t\t\t\t}\n\t\n\t\t\t\t/** Used for native method references. */\n\t\t\t\tvar objectProto = Object.prototype;\n\t\n\t\t\t\t/** Used to resolve the decompiled source of functions. */\n\t\t\t\tvar fnToString = Function.prototype.toString;\n\t\n\t\t\t\t/** Used to check objects for own properties. */\n\t\t\t\tvar hasOwnProperty = objectProto.hasOwnProperty;\n\t\n\t\t\t\t/**\n\t * Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring)\n\t * of values.\n\t */\n\t\t\t\tvar objToString = objectProto.toString;\n\t\n\t\t\t\t/** Used to detect if a method is native. */\n\t\t\t\tvar reIsNative = RegExp('^' + fnToString.call(hasOwnProperty).replace(/[\\\\^$.*+?()[\\]{}|]/g, '\\\\$&').replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$');\n\t\n\t\t\t\t/**\n\t * Gets the native function at `key` of `object`.\n\t *\n\t * @private\n\t * @param {Object} object The object to query.\n\t * @param {string} key The key of the method to get.\n\t * @returns {*} Returns the function if it's native, else `undefined`.\n\t */\n\t\t\t\tfunction getNative(object, key) {\n\t\t\t\t\tvar value = object == null ? undefined : object[key];\n\t\t\t\t\treturn isNative(value) ? value : undefined;\n\t\t\t\t}\n\t\n\t\t\t\t/**\n\t * Checks if `value` is classified as a `Function` object.\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Lang\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.\n\t * @example\n\t *\n\t * _.isFunction(_);\n\t * // => true\n\t *\n\t * _.isFunction(/abc/);\n\t * // => false\n\t */\n\t\t\t\tfunction isFunction(value) {\n\t\t\t\t\t// The use of `Object#toString` avoids issues with the `typeof` operator\n\t\t\t\t\t// in older versions of Chrome and Safari which return 'function' for regexes\n\t\t\t\t\t// and Safari 8 equivalents which return 'object' for typed array constructors.\n\t\t\t\t\treturn isObject(value) && objToString.call(value) == funcTag;\n\t\t\t\t}\n\t\n\t\t\t\t/**\n\t * Checks if `value` is the [language type](https://es5.github.io/#x8) of `Object`.\n\t * (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Lang\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n\t * @example\n\t *\n\t * _.isObject({});\n\t * // => true\n\t *\n\t * _.isObject([1, 2, 3]);\n\t * // => true\n\t *\n\t * _.isObject(1);\n\t * // => false\n\t */\n\t\t\t\tfunction isObject(value) {\n\t\t\t\t\t// Avoid a V8 JIT bug in Chrome 19-20.\n\t\t\t\t\t// See https://code.google.com/p/v8/issues/detail?id=2291 for more details.\n\t\t\t\t\tvar type = typeof value;\n\t\t\t\t\treturn !!value && (type == 'object' || type == 'function');\n\t\t\t\t}\n\t\n\t\t\t\t/**\n\t * Checks if `value` is a native function.\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Lang\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is a native function, else `false`.\n\t * @example\n\t *\n\t * _.isNative(Array.prototype.push);\n\t * // => true\n\t *\n\t * _.isNative(_);\n\t * // => false\n\t */\n\t\t\t\tfunction isNative(value) {\n\t\t\t\t\tif (value == null) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\tif (isFunction(value)) {\n\t\t\t\t\t\treturn reIsNative.test(fnToString.call(value));\n\t\t\t\t\t}\n\t\t\t\t\treturn isObjectLike(value) && reIsHostCtor.test(value);\n\t\t\t\t}\n\t\n\t\t\t\tmodule.exports = getNative;\n\t\n\t\t\t\t/***/\n\t\t\t},\n\t\t\t/* 5 */\n\t\t\tfunction (module, exports) {\n\t\n\t\t\t\tmodule.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCRkNDMzg4M0FFN0IxMUU0OTE2RkY5MzYyMkI3QTVDMiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCRkNDMzg4NEFFN0IxMUU0OTE2RkY5MzYyMkI3QTVDMiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkJGQ0MzODgxQUU3QjExRTQ5MTZGRjkzNjIyQjdBNUMyIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkJGQ0MzODgyQUU3QjExRTQ5MTZGRjkzNjIyQjdBNUMyIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+NkztvAAAAc9JREFUeNq8lk8oBFEcx2fG5k+0HJRQ/iVy2U1tUsjBzYnI2cUWJyl3XJRSkgOtxEU4keLgQP6kuColoeQgEkXWand8X/3UNM28Z56Z961PO2/fb9535r3f/N7TTdPUnBSLxTSBcsEA6AW1IAw+wD3YAtPg0+1mXdK4DJyAKk7MM+gE506dhuZdleBSYMpUDM5Ah1NnyKOpDnZpWn91C/ZBksZrBhFL/zaopyWQNh4HDZZ2AsQd4kbBFF3ngRnQ8581vgHVdH0M2jgPeWjpz1BePMqscdRiyrQhiF+25VK7bHI12toXgvg9+yTKGpc6TDtPD+DJ0i6RNS6ytZOC+IwtpkA2q1epKLyDb/D2h3uGQQXIBqcyWd1FBeEOZNFM1YEckHYpTGzgKyqbpmWp1kEq9IeCcQRaNP80CZoMQclb8NmUqRys8IxZpenTglHUEOxAhQEZ5/OM01qAMnwah+3Ng2BTpTGr2a1gHnSDCVXGs7Z2QpVxjUNSKjGeo29T+RuHqaRqtOdGVGZ1in6/VH9OYZet01Uhnx5qBLyAIT+MvVQulslLflWuazq+BKFXnvEaWAzI+IA31ezUMEaJE6dDQYb+9yrdMrs7oP9HgAEAXmVa5ulD/g0AAAAASUVORK5CYII=\";\n\t\n\t\t\t\t/***/\n\t\t\t}\n\t\t\t/******/])\n\t\t);\n\t});\n\t;\n\t/***/ /***/ /***/ /***/ /***/ /***/\n\n/***/ },\n/* 4 */\n/*!************************************!*\\\n !*** ./demo/src/vendor/github.css ***!\n \\************************************/\n/***/ function(module, exports) {\n\n\t// removed by extract-text-webpack-plugin\n\n/***/ },\n/* 5 */\n/*!**************************************!*\\\n !*** ./demo/src/vendor/skeleton.css ***!\n \\**************************************/\n/***/ function(module, exports) {\n\n\t// removed by extract-text-webpack-plugin\n\n/***/ },\n/* 6 */\n/*!************************************!*\\\n !*** ./demo/src/vendor/syntax.css ***!\n \\************************************/\n/***/ function(module, exports) {\n\n\t// removed by extract-text-webpack-plugin\n\n/***/ },\n/* 7 */\n/*!***************************************!*\\\n !*** ./~/normalize.css/normalize.css ***!\n \\***************************************/\n/***/ function(module, exports) {\n\n\t// removed by extract-text-webpack-plugin\n\n/***/ },\n/* 8 */\n/*!********************************!*\\\n !*** ./demo/src/css/demo.scss ***!\n \\********************************/\n/***/ function(module, exports) {\n\n\t// removed by extract-text-webpack-plugin\n\n/***/ },\n/* 9 */\n/*!*********************************!*\\\n !*** ./demo/src/css/style.scss ***!\n \\*********************************/\n/***/ function(module, exports) {\n\n\t// removed by extract-text-webpack-plugin\n\n/***/ }\n/******/ ]);\n\n\n/** WEBPACK FOOTER **\n ** demo.bundle.js\n **/"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n/** WEBPACK FOOTER **\n ** webpack/bootstrap 089b39c816a316a03a91\n **/","'use strict';\n\n// demo pages css\nrequire('normalize.css/normalize.css')\nrequire('./vendor/skeleton.css');\nrequire('./vendor/github.css');\nrequire('./vendor/syntax.css');\nrequire('./vendor/rainbow-custom.min.js');\nrequire('./css/style.scss');\n\n// css for form field\nrequire('./css/demo.scss');\n\n\n/*========== APP ==========*/\n\nconst React = require('react'),\n InputPassword = require('../../lib/react-ux-password-field.js');\n\nReact.render(\n
\n
\n \n \n
\n
\n, document.getElementById('content'));\n\n\n\n/** WEBPACK FOOTER **\n ** ./demo/src/index.js\n **/","module.exports = React;\n\n\n/*****************\n ** WEBPACK FOOTER\n ** external \"React\"\n ** module id = 1\n ** module chunks = 0\n **/","/* Rainbow v1.2 rainbowco.de | included languages: generic, shell, javascript, html */\nwindow.Rainbow=function(){function q(a){var b,c=a.getAttribute&&a.getAttribute(\"data-language\")||0;if(!c){a=a.attributes;for(b=0;b=f[d][c])delete f[d][c],delete j[d][c];if(a>=c&&ac&&b'+b+\"\"}function s(a,b,c,i){if(\"undefined\"===typeof a||null===a)i();else{var e=a.exec(c);if(e){++t;!b.name&&\"string\"==typeof b.matches[0]&&(b.name=b.matches[0],delete b.matches[0]);var k=e[0],g=e.index,u=e[0].length+g,h=function(){function e(){s(a,b,c,i)}t%100>0?e():setTimeout(e,0)};if(C(g,u))h();else{var m=v(b.matches),l=function(a,c,i){if(a>=c.length)i(k);else{var d=e[c[a]];if(d){var g=\nb.matches[c[a]],f=g.language,h=g.name&&g.matches?g.matches:g,j=function(b,d,g){var f;f=0;var h;for(h=1;h/g,\">\").replace(/&(?![\\w\\#]+;)/g,\"&\"),b,c)}function o(a,b,c){if(b= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\n\tvar React = __webpack_require__(1),\n\t RP = React.PropTypes,\n\t config = __webpack_require__(2),\n\t debounce = __webpack_require__(3);\n\n\tvar InputPassword = React.createClass({\n\t displayName: 'InputPassword',\n\n\t /*========== VALIDATE ==========*/\n\n\t propTypes: {\n\t infoBar: RP.bool,\n\t statusColor: RP.string,\n\t statusInactiveColor: RP.string,\n\t minScore: RP.number,\n\t changeCb: RP.func,\n\t toggleMask: RP.bool,\n\t unMaskTime: RP.number,\n\t minLength: RP.number,\n\t strengthLang: RP.array,\n\t id: RP.string\n\t },\n\n\t /*========== DEFAULTS ==========*/\n\n\t getDefaultProps: function getDefaultProps() {\n\t return {\n\t infoBar: true,\n\t statusColor: config.statusColor,\n\t statusInactiveColor: config.statusInactiveColor,\n\t zxcvbn: config.zxcvbnSrc,\n\t minScore: 0,\n\t toggleMask: true,\n\t unMaskTime: config.unMaskTime,\n\t strengthLang: config.strengthLang,\n\t id: 'input'\n\t };\n\t },\n\n\t getInitialState: function getInitialState() {\n\t return {\n\t value: '',\n\t score: 0,\n\t entropy: 0,\n\t isPassword: true,\n\t isValid: false\n\t };\n\t },\n\n\t /*========== STYLES ==========*/\n\n\t getMeterStyle: function getMeterStyle(score) {\n\t var width = this.state.value === '' ? 0 : 24 * score + 4;\n\t return {\n\t width: this.props.zxcvbn ? width + '%' : '100%',\n\t maxWidth: '85%',\n\t opacity: this.props.zxcvbn ? width * .01 + .5 : '1',\n\t background: this.state.isValid ? this.props.statusColor : this.props.statusInactiveColor,\n\t height: 5,\n\t transition: 'all 400ms linear',\n\t display: 'inline-block',\n\t marginRight: '1%'\n\t };\n\t },\n\n\t unMaskStyle: {\n\t color: config.unMaskColor,\n\t fontWeight: 200\n\t },\n\n\t infoStyle: {\n\t position: 'absolute',\n\t bottom: -10,\n\t width: '100%',\n\t overflow: 'hidden',\n\t height: 24\n\t },\n\n\t iconStyle: {\n\t display: 'inline-block',\n\t opacity: .25,\n\t position: 'relative',\n\t top: 2,\n\t width: '3%'\n\t },\n\n\t strengthLangStyle: {\n\t fontSize: 12,\n\t position: 'relative',\n\t top: 2\n\t },\n\n\t /*========== METHODS ==========*/\n\n\t addPasswordType: function addPasswordType() {\n\t this.setState({\n\t isPassword: true\n\t });\n\t },\n\n\t /*========== HANDLERS ==========*/\n\n\t handleInputType: function handleInputType() {\n\t this.setState({\n\t isPassword: !this.state.isPassword\n\t });\n\t },\n\n\t handleChange: function handleChange(e) {\n\t e.preventDefault();\n\n\t var native_target = e.nativeEvent.target;\n\t var val = e.target.value;\n\t var score;\n\n\t this.setState({\n\t value: val,\n\t isValid: e.target.validity.valid,\n\t selectionStart: native_target.selectionStart,\n\t selectionEnd: native_target.selectionEnd\n\t });\n\n\t if (this.props.toggleMask) {\n\t this.handleToggleMask();\n\t }\n\n\t if (this.props.zxcvbn) {\n\t score = this.handleZxcvbn(val);\n\t } else {\n\t score = this.state.score;\n\t }\n\n\t // call onChange prop passed from parent\n\t if (this.props.onChange) {\n\t this.props.onChange(val, this.state.isValid, score);\n\t }\n\n\t if (this.props.minLength) {\n\t this.handleMinLength(e.target.value.length);\n\t }\n\t },\n\n\t handleToggleMask: function handleToggleMask() {\n\n\t // display password, then\n\t this.setState({\n\t isPassword: false\n\t });\n\n\t // debounce remasking password\n\t this.maskPassword();\n\t },\n\n\t handleZxcvbn: function handleZxcvbn(val) {\n\n\t if (typeof zxcvbn === 'undefined' && typeof window.zxcvbn === 'undefined') {\n\t return;\n\t }\n\n\t var stats = zxcvbn(val),\n\t currentScore = stats.score;\n\n\t this.setState({\n\t score: currentScore,\n\t entropy: stats.entropy\n\t });\n\n\t if (currentScore < this.props.minScore) {\n\t this.setState({\n\t isValid: false\n\t });\n\t }\n\n\t // if score changed and callback provided\n\t if (this.props.changeCb && this.state.score !== currentScore) {\n\t this.props.changeCb(this.state.score, currentScore, val);\n\t }\n\n\t if (this.props.zxcvbn === 'debug') {\n\t console.debug(stats);\n\t }\n\n\t return currentScore;\n\t },\n\n\t handleMinLength: function handleMinLength(len) {\n\t if (len <= this.props.minLength) {\n\t this.setState({\n\t isValid: false\n\t });\n\t }\n\t },\n\n\t componentWillMount: function componentWillMount() {\n\t var zxcvbnSrc;\n\n\t // Load zxcvbn async if its enabled and doesn't already exist\n\t if (this.props.zxcvbn && typeof zxcvbn === 'undefined') {\n\n\t zxcvbnSrc = this.props.zxcvbn !== 'debug' ? this.props.zxcvbn : config.zxcvbnSrc;\n\n\t // snippet to async load zxcvbn if enabled\n\t (function () {\n\t var a, b;b = document.createElement(\"script\");b.src = zxcvbnSrc;b.type = \"text/javascript\";b.async = !0;a = document.getElementsByTagName(\"head\")[0];a.parentNode.insertBefore(b, a);\n\t }).call(this);\n\t }\n\n\t // set debouncer for password\n\t if (this.props.toggleMask) {\n\t this.maskPassword = debounce(this.addPasswordType, this.props.unMaskTime);\n\t }\n\t },\n\n\t componentWillUnmount: function componentWillUnmount() {\n\t // cancel the debouncer when component is not used anymore. This to avoid\n\t // setting the state unnecessarily, see issue #24\n\t if (this.maskPassword) {\n\t this.maskPassword.cancel();\n\t }\n\t },\n\n\t render: function render() {\n\t var infoBar;\n\n\t if (this.props.infoBar) {\n\t infoBar = React.createElement(\n\t 'div',\n\t { className: 'passwordField__info', style: this.infoStyle },\n\t React.createElement(\n\t 'span',\n\t { style: this.iconStyle, className: 'passwordField__icon' },\n\t React.createElement('img', { src: __webpack_require__(5), height: '10', width: '10' })\n\t ),\n\t React.createElement('span', { style: this.getMeterStyle(this.state.score), className: 'passwordField__meter' }),\n\t React.createElement(\n\t 'span',\n\t { style: this.strengthLangStyle, className: 'passwordField__strength' },\n\t this.props.zxcvbn && this.state.value.length > 0 && this.props.strengthLang.length > 0 ? this.props.strengthLang[this.state.score] : null\n\t )\n\t );\n\t }\n\n\t // allow onChange to be passed from parent and not override default prop\n\t var _props = this.props;\n\t var onChange = _props.onChange;\n\n\t var props = _objectWithoutProperties(_props, ['onChange']);\n\n\t // overcome problem with firefox resetting the input selection point\n\t var that = this;\n\t setTimeout(function () {\n\t if (!/Firefox/.test(navigator.userAgent)) return;\n\t var elem = that.refs[that.props.id].getDOMNode();\n\t elem.selectionStart = that.state.selectionStart;\n\t elem.selectionEnd = that.state.selectionEnd;\n\t }, 1);\n\n\t return React.createElement(\n\t 'div',\n\t {\n\t style: { position: 'relative', display: 'inline-block' },\n\t className: 'passwordField',\n\t 'data-valid': this.state.isValid,\n\t 'data-score': this.state.score,\n\t 'data-entropy': this.state.entropy\n\t },\n\t React.createElement('input', _extends({\n\t ref: this.props.id,\n\t className: 'passwordField__input',\n\t type: this.state.isPassword ? 'password' : 'text',\n\t value: this.state.value,\n\t style: this.state.isPassword ? null : this.unMaskStyle,\n\t onChange: this.handleChange\n\t }, props)),\n\t infoBar\n\t );\n\t }\n\t});\n\n\tmodule.exports = InputPassword;\n\n/***/ },\n/* 1 */\n/***/ function(module, exports) {\n\n\tmodule.exports = __WEBPACK_EXTERNAL_MODULE_1__;\n\n/***/ },\n/* 2 */\n/***/ function(module, exports) {\n\n\t'use strict';\n\n\tmodule.exports = {\n\t statusColor: '#5CE592',\n\t statusInactiveColor: '#FC6F6F',\n\t unMaskColor: '#c7c7c7',\n\t unMaskTime: 1400,\n\t zxcvbnSrc: 'https://cdnjs.cloudflare.com/ajax/libs/zxcvbn/1.0/zxcvbn.min.js',\n\t strengthLang: ['Weak', 'Okay', 'Good', 'Strong', 'Great']\n\t};\n\n/***/ },\n/* 3 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/**\n\t * lodash 3.1.1 (Custom Build) \n\t * Build: `lodash modern modularize exports=\"npm\" -o ./`\n\t * Copyright 2012-2015 The Dojo Foundation \n\t * Based on Underscore.js 1.8.3 \n\t * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n\t * Available under MIT license \n\t */\n\t'use strict';\n\n\tvar getNative = __webpack_require__(4);\n\n\t/** Used as the `TypeError` message for \"Functions\" methods. */\n\tvar FUNC_ERROR_TEXT = 'Expected a function';\n\n\t/* Native method references for those with the same name as other `lodash` methods. */\n\tvar nativeMax = Math.max,\n\t nativeNow = getNative(Date, 'now');\n\n\t/**\n\t * Gets the number of milliseconds that have elapsed since the Unix epoch\n\t * (1 January 1970 00:00:00 UTC).\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Date\n\t * @example\n\t *\n\t * _.defer(function(stamp) {\n\t * console.log(_.now() - stamp);\n\t * }, _.now());\n\t * // => logs the number of milliseconds it took for the deferred function to be invoked\n\t */\n\tvar now = nativeNow || function () {\n\t return new Date().getTime();\n\t};\n\n\t/**\n\t * Creates a debounced function that delays invoking `func` until after `wait`\n\t * milliseconds have elapsed since the last time the debounced function was\n\t * invoked. The debounced function comes with a `cancel` method to cancel\n\t * delayed invocations. Provide an options object to indicate that `func`\n\t * should be invoked on the leading and/or trailing edge of the `wait` timeout.\n\t * Subsequent calls to the debounced function return the result of the last\n\t * `func` invocation.\n\t *\n\t * **Note:** If `leading` and `trailing` options are `true`, `func` is invoked\n\t * on the trailing edge of the timeout only if the the debounced function is\n\t * invoked more than once during the `wait` timeout.\n\t *\n\t * See [David Corbacho's article](http://drupalmotion.com/article/debounce-and-throttle-visual-explanation)\n\t * for details over the differences between `_.debounce` and `_.throttle`.\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Function\n\t * @param {Function} func The function to debounce.\n\t * @param {number} [wait=0] The number of milliseconds to delay.\n\t * @param {Object} [options] The options object.\n\t * @param {boolean} [options.leading=false] Specify invoking on the leading\n\t * edge of the timeout.\n\t * @param {number} [options.maxWait] The maximum time `func` is allowed to be\n\t * delayed before it is invoked.\n\t * @param {boolean} [options.trailing=true] Specify invoking on the trailing\n\t * edge of the timeout.\n\t * @returns {Function} Returns the new debounced function.\n\t * @example\n\t *\n\t * // avoid costly calculations while the window size is in flux\n\t * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n\t *\n\t * // invoke `sendMail` when the click event is fired, debouncing subsequent calls\n\t * jQuery('#postbox').on('click', _.debounce(sendMail, 300, {\n\t * 'leading': true,\n\t * 'trailing': false\n\t * }));\n\t *\n\t * // ensure `batchLog` is invoked once after 1 second of debounced calls\n\t * var source = new EventSource('/stream');\n\t * jQuery(source).on('message', _.debounce(batchLog, 250, {\n\t * 'maxWait': 1000\n\t * }));\n\t *\n\t * // cancel a debounced call\n\t * var todoChanges = _.debounce(batchLog, 1000);\n\t * Object.observe(models.todo, todoChanges);\n\t *\n\t * Object.observe(models, function(changes) {\n\t * if (_.find(changes, { 'user': 'todo', 'type': 'delete'})) {\n\t * todoChanges.cancel();\n\t * }\n\t * }, ['delete']);\n\t *\n\t * // ...at some point `models.todo` is changed\n\t * models.todo.completed = true;\n\t *\n\t * // ...before 1 second has passed `models.todo` is deleted\n\t * // which cancels the debounced `todoChanges` call\n\t * delete models.todo;\n\t */\n\tfunction debounce(func, wait, options) {\n\t var args,\n\t maxTimeoutId,\n\t result,\n\t stamp,\n\t thisArg,\n\t timeoutId,\n\t trailingCall,\n\t lastCalled = 0,\n\t maxWait = false,\n\t trailing = true;\n\n\t if (typeof func != 'function') {\n\t throw new TypeError(FUNC_ERROR_TEXT);\n\t }\n\t wait = wait < 0 ? 0 : +wait || 0;\n\t if (options === true) {\n\t var leading = true;\n\t trailing = false;\n\t } else if (isObject(options)) {\n\t leading = !!options.leading;\n\t maxWait = 'maxWait' in options && nativeMax(+options.maxWait || 0, wait);\n\t trailing = 'trailing' in options ? !!options.trailing : trailing;\n\t }\n\n\t function cancel() {\n\t if (timeoutId) {\n\t clearTimeout(timeoutId);\n\t }\n\t if (maxTimeoutId) {\n\t clearTimeout(maxTimeoutId);\n\t }\n\t lastCalled = 0;\n\t maxTimeoutId = timeoutId = trailingCall = undefined;\n\t }\n\n\t function complete(isCalled, id) {\n\t if (id) {\n\t clearTimeout(id);\n\t }\n\t maxTimeoutId = timeoutId = trailingCall = undefined;\n\t if (isCalled) {\n\t lastCalled = now();\n\t result = func.apply(thisArg, args);\n\t if (!timeoutId && !maxTimeoutId) {\n\t args = thisArg = undefined;\n\t }\n\t }\n\t }\n\n\t function delayed() {\n\t var remaining = wait - (now() - stamp);\n\t if (remaining <= 0 || remaining > wait) {\n\t complete(trailingCall, maxTimeoutId);\n\t } else {\n\t timeoutId = setTimeout(delayed, remaining);\n\t }\n\t }\n\n\t function maxDelayed() {\n\t complete(trailing, timeoutId);\n\t }\n\n\t function debounced() {\n\t args = arguments;\n\t stamp = now();\n\t thisArg = this;\n\t trailingCall = trailing && (timeoutId || !leading);\n\n\t if (maxWait === false) {\n\t var leadingCall = leading && !timeoutId;\n\t } else {\n\t if (!maxTimeoutId && !leading) {\n\t lastCalled = stamp;\n\t }\n\t var remaining = maxWait - (stamp - lastCalled),\n\t isCalled = remaining <= 0 || remaining > maxWait;\n\n\t if (isCalled) {\n\t if (maxTimeoutId) {\n\t maxTimeoutId = clearTimeout(maxTimeoutId);\n\t }\n\t lastCalled = stamp;\n\t result = func.apply(thisArg, args);\n\t } else if (!maxTimeoutId) {\n\t maxTimeoutId = setTimeout(maxDelayed, remaining);\n\t }\n\t }\n\t if (isCalled && timeoutId) {\n\t timeoutId = clearTimeout(timeoutId);\n\t } else if (!timeoutId && wait !== maxWait) {\n\t timeoutId = setTimeout(delayed, wait);\n\t }\n\t if (leadingCall) {\n\t isCalled = true;\n\t result = func.apply(thisArg, args);\n\t }\n\t if (isCalled && !timeoutId && !maxTimeoutId) {\n\t args = thisArg = undefined;\n\t }\n\t return result;\n\t }\n\t debounced.cancel = cancel;\n\t return debounced;\n\t}\n\n\t/**\n\t * Checks if `value` is the [language type](https://es5.github.io/#x8) of `Object`.\n\t * (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Lang\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n\t * @example\n\t *\n\t * _.isObject({});\n\t * // => true\n\t *\n\t * _.isObject([1, 2, 3]);\n\t * // => true\n\t *\n\t * _.isObject(1);\n\t * // => false\n\t */\n\tfunction isObject(value) {\n\t // Avoid a V8 JIT bug in Chrome 19-20.\n\t // See https://code.google.com/p/v8/issues/detail?id=2291 for more details.\n\t var type = typeof value;\n\t return !!value && (type == 'object' || type == 'function');\n\t}\n\n\tmodule.exports = debounce;\n\n/***/ },\n/* 4 */\n/***/ function(module, exports) {\n\n\t/**\n\t * lodash 3.9.1 (Custom Build) \n\t * Build: `lodash modern modularize exports=\"npm\" -o ./`\n\t * Copyright 2012-2015 The Dojo Foundation \n\t * Based on Underscore.js 1.8.3 \n\t * Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n\t * Available under MIT license \n\t */\n\n\t/** `Object#toString` result references. */\n\t'use strict';\n\n\tvar funcTag = '[object Function]';\n\n\t/** Used to detect host constructors (Safari > 5). */\n\tvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n\t/**\n\t * Checks if `value` is object-like.\n\t *\n\t * @private\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n\t */\n\tfunction isObjectLike(value) {\n\t return !!value && typeof value == 'object';\n\t}\n\n\t/** Used for native method references. */\n\tvar objectProto = Object.prototype;\n\n\t/** Used to resolve the decompiled source of functions. */\n\tvar fnToString = Function.prototype.toString;\n\n\t/** Used to check objects for own properties. */\n\tvar hasOwnProperty = objectProto.hasOwnProperty;\n\n\t/**\n\t * Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring)\n\t * of values.\n\t */\n\tvar objToString = objectProto.toString;\n\n\t/** Used to detect if a method is native. */\n\tvar reIsNative = RegExp('^' + fnToString.call(hasOwnProperty).replace(/[\\\\^$.*+?()[\\]{}|]/g, '\\\\$&').replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$');\n\n\t/**\n\t * Gets the native function at `key` of `object`.\n\t *\n\t * @private\n\t * @param {Object} object The object to query.\n\t * @param {string} key The key of the method to get.\n\t * @returns {*} Returns the function if it's native, else `undefined`.\n\t */\n\tfunction getNative(object, key) {\n\t var value = object == null ? undefined : object[key];\n\t return isNative(value) ? value : undefined;\n\t}\n\n\t/**\n\t * Checks if `value` is classified as a `Function` object.\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Lang\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.\n\t * @example\n\t *\n\t * _.isFunction(_);\n\t * // => true\n\t *\n\t * _.isFunction(/abc/);\n\t * // => false\n\t */\n\tfunction isFunction(value) {\n\t // The use of `Object#toString` avoids issues with the `typeof` operator\n\t // in older versions of Chrome and Safari which return 'function' for regexes\n\t // and Safari 8 equivalents which return 'object' for typed array constructors.\n\t return isObject(value) && objToString.call(value) == funcTag;\n\t}\n\n\t/**\n\t * Checks if `value` is the [language type](https://es5.github.io/#x8) of `Object`.\n\t * (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Lang\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n\t * @example\n\t *\n\t * _.isObject({});\n\t * // => true\n\t *\n\t * _.isObject([1, 2, 3]);\n\t * // => true\n\t *\n\t * _.isObject(1);\n\t * // => false\n\t */\n\tfunction isObject(value) {\n\t // Avoid a V8 JIT bug in Chrome 19-20.\n\t // See https://code.google.com/p/v8/issues/detail?id=2291 for more details.\n\t var type = typeof value;\n\t return !!value && (type == 'object' || type == 'function');\n\t}\n\n\t/**\n\t * Checks if `value` is a native function.\n\t *\n\t * @static\n\t * @memberOf _\n\t * @category Lang\n\t * @param {*} value The value to check.\n\t * @returns {boolean} Returns `true` if `value` is a native function, else `false`.\n\t * @example\n\t *\n\t * _.isNative(Array.prototype.push);\n\t * // => true\n\t *\n\t * _.isNative(_);\n\t * // => false\n\t */\n\tfunction isNative(value) {\n\t if (value == null) {\n\t return false;\n\t }\n\t if (isFunction(value)) {\n\t return reIsNative.test(fnToString.call(value));\n\t }\n\t return isObjectLike(value) && reIsHostCtor.test(value);\n\t}\n\n\tmodule.exports = getNative;\n\n/***/ },\n/* 5 */\n/***/ function(module, exports) {\n\n\tmodule.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCRkNDMzg4M0FFN0IxMUU0OTE2RkY5MzYyMkI3QTVDMiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCRkNDMzg4NEFFN0IxMUU0OTE2RkY5MzYyMkI3QTVDMiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkJGQ0MzODgxQUU3QjExRTQ5MTZGRjkzNjIyQjdBNUMyIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkJGQ0MzODgyQUU3QjExRTQ5MTZGRjkzNjIyQjdBNUMyIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+NkztvAAAAc9JREFUeNq8lk8oBFEcx2fG5k+0HJRQ/iVy2U1tUsjBzYnI2cUWJyl3XJRSkgOtxEU4keLgQP6kuColoeQgEkXWand8X/3UNM28Z56Z961PO2/fb9535r3f/N7TTdPUnBSLxTSBcsEA6AW1IAw+wD3YAtPg0+1mXdK4DJyAKk7MM+gE506dhuZdleBSYMpUDM5Ah1NnyKOpDnZpWn91C/ZBksZrBhFL/zaopyWQNh4HDZZ2AsQd4kbBFF3ngRnQ8581vgHVdH0M2jgPeWjpz1BePMqscdRiyrQhiF+25VK7bHI12toXgvg9+yTKGpc6TDtPD+DJ0i6RNS6ytZOC+IwtpkA2q1epKLyDb/D2h3uGQQXIBqcyWd1FBeEOZNFM1YEckHYpTGzgKyqbpmWp1kEq9IeCcQRaNP80CZoMQclb8NmUqRys8IxZpenTglHUEOxAhQEZ5/OM01qAMnwah+3Ng2BTpTGr2a1gHnSDCVXGs7Z2QpVxjUNSKjGeo29T+RuHqaRqtOdGVGZ1in6/VH9OYZet01Uhnx5qBLyAIT+MvVQulslLflWuazq+BKFXnvEaWAzI+IA31ezUMEaJE6dDQYb+9yrdMrs7oP9HgAEAXmVa5ulD/g0AAAAASUVORK5CYII=\"\n\n/***/ }\n/******/ ])\n});\n;\n\n\n/** WEBPACK FOOTER **\n ** ./lib/react-ux-password-field.js\n **/"],"sourceRoot":""} \ No newline at end of file diff --git a/demo/style.css b/demo/style.css index 455e6f3..d211237 100644 --- a/demo/style.css +++ b/demo/style.css @@ -1,2 +1,2 @@ -@import url(http://fonts.googleapis.com/css?family=Cabin+Condensed:500&text=Fork%20me%20on%20GitHub);/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}.container{position:relative;max-width:60pc;margin:0 auto;padding:0 20px}.column,.columns,.container{width:100%;box-sizing:border-box}.column,.columns{float:left}@media(min-width:400px){.container{width:85%;padding:0}}@media(min-width:550px){.container{width:80%}.column,.columns{margin-left:4%}.column:first-child,.columns:first-child{margin-left:0}.one.column,.one.columns{width:4.66666666667%}.two.columns{width:13.3333333333%}.three.columns{width:22%}.four.columns{width:30.6666666667%}.five.columns{width:39.3333333333%}.six.columns{width:48%}.seven.columns{width:56.6666666667%}.eight.columns{width:65.3333333333%}.nine.columns{width:74%}.ten.columns{width:82.6666666667%}.eleven.columns{width:91.3333333333%}.twelve.columns{width:100%;margin-left:0}.one-third.column{width:30.6666666667%}.two-thirds.column{width:65.3333333333%}.one-half.column{width:48%}.offset-by-one.column,.offset-by-one.columns{margin-left:8.66666666667%}.offset-by-two.column,.offset-by-two.columns{margin-left:17.3333333333%}.offset-by-three.column,.offset-by-three.columns{margin-left:26%}.offset-by-four.column,.offset-by-four.columns{margin-left:34.6666666667%}.offset-by-five.column,.offset-by-five.columns{margin-left:43.3333333333%}.offset-by-six.column,.offset-by-six.columns{margin-left:52%}.offset-by-seven.column,.offset-by-seven.columns{margin-left:60.6666666667%}.offset-by-eight.column,.offset-by-eight.columns{margin-left:69.3333333333%}.offset-by-nine.column,.offset-by-nine.columns{margin-left:78%}.offset-by-ten.column,.offset-by-ten.columns{margin-left:86.6666666667%}.offset-by-eleven.column,.offset-by-eleven.columns{margin-left:95.3333333333%}.offset-by-one-third.column,.offset-by-one-third.columns{margin-left:34.6666666667%}.offset-by-two-thirds.column,.offset-by-two-thirds.columns{margin-left:69.3333333333%}.offset-by-one-half.column,.offset-by-one-half.columns{margin-left:52%}}html{font-size:62.5%}body{font-size:1.5em;line-height:1.6;font-weight:400;font-family:Raleway,HelveticaNeue,Helvetica Neue,Helvetica,Arial,sans-serif;color:#222}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:2rem;font-weight:300}h1{font-size:4rem;line-height:1.2}h1,h2{letter-spacing:-.1rem}h2{font-size:3.6rem;line-height:1.25}h3{font-size:3rem;line-height:1.3;letter-spacing:-.1rem}h4{font-size:2.4rem;line-height:1.35;letter-spacing:-.08rem}h5{font-size:1.8rem;line-height:1.5;letter-spacing:-.05rem}h6{font-size:1.5rem;line-height:1.6;letter-spacing:0}@media(min-width:550px){h1{font-size:5rem}h2{font-size:4.2rem}h3{font-size:3.6rem}h4{font-size:3rem}h5{font-size:2.4rem}h6{font-size:1.5rem}}p{margin-top:0}a{color:#1eaedb}a:hover{color:#0fa0ce}.button,button,input[type=button],input[type=reset],input[type=submit]{display:inline-block;height:38px;padding:0 30px;color:#555;text-align:center;font-size:11px;font-weight:600;line-height:38px;letter-spacing:.1rem;text-transform:uppercase;text-decoration:none;white-space:nowrap;background-color:transparent;border-radius:4px;border:1px solid #bbb;cursor:pointer;box-sizing:border-box}.button:focus,.button:hover,button:focus,button:hover,input[type=button]:focus,input[type=button]:hover,input[type=reset]:focus,input[type=reset]:hover,input[type=submit]:focus,input[type=submit]:hover{color:#333;border-color:#888;outline:0}.button.button-primary,button.button-primary,input[type=button].button-primary,input[type=reset].button-primary,input[type=submit].button-primary{color:#fff;background-color:#33c3f0;border-color:#33c3f0}.button.button-primary:focus,.button.button-primary:hover,button.button-primary:focus,button.button-primary:hover,input[type=button].button-primary:focus,input[type=button].button-primary:hover,input[type=reset].button-primary:focus,input[type=reset].button-primary:hover,input[type=submit].button-primary:focus,input[type=submit].button-primary:hover{color:#fff;background-color:#1eaedb;border-color:#1eaedb}input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],select,textarea{height:38px;padding:6px 10px;background-color:#fff;border:1px solid #d1d1d1;border-radius:4px;box-shadow:none;box-sizing:border-box}input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none}textarea{min-height:65px;padding-top:6px;padding-bottom:6px}input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=url]:focus,select:focus,textarea:focus{border:1px solid #33c3f0;outline:0}label,legend{display:block;margin-bottom:.5rem;font-weight:600}fieldset{padding:0;border-width:0}input[type=checkbox],input[type=radio]{display:inline}label>.label-body{display:inline-block;margin-left:.5rem;font-weight:400}ul{list-style:circle inside}ol{list-style:decimal inside}ol,ul{padding-left:0;margin-top:0}ol ol,ol ul,ul ol,ul ul{margin:1.5rem 0 1.5rem 3rem;font-size:90%}li{margin-bottom:1rem}code{padding:.2rem .5rem;margin:0 .2rem;font-size:90%;white-space:nowrap;border-radius:4px}pre>code{display:block;padding:1rem 1.5rem;white-space:pre}td,th{padding:9pt 15px;text-align:left;border-bottom:1px solid #e1e1e1}td:first-child,th:first-child{padding-left:0}td:last-child,th:last-child{padding-right:0}.button,button{margin-bottom:1rem}fieldset,input,select,textarea{margin-bottom:1.5rem}blockquote,dl,figure,form,ol,p,pre,table,ul{margin-bottom:2.5rem}.u-full-width{width:100%;box-sizing:border-box}.u-max-full-width{max-width:100%;box-sizing:border-box}.u-pull-right{float:right}.u-pull-left{float:left}hr{margin-top:3rem;margin-bottom:3.5rem;border-width:0;border-top:1px solid #e1e1e1}.container:after,.row:after,.u-cf{content:"";display:table;clear:both}body{overflow-x:hidden}.ribbon{position:absolute;top:42px;width:200px;padding:1px 0;background:#000;color:#eee;box-shadow:0 0 10px rgba(0,0,0,.5)}.ribbon.left{left:-42px;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.ribbon.right{right:-42px;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.ribbon a,.ribbon a:active,.ribbon a:hover,.ribbon a:visited{display:block;padding:1px 0;height:24px;line-height:24px;color:inherit;text-align:center;text-decoration:none;font-family:Cabin Condensed,sans-serif;font-size:1pc;font-weight:500;border:1px solid hsla(0,0%,100%,.3);-moz-text-shadow:0 0 10px rgba(0,0,0,.31);-webkit-text-shadow:0 0 10px rgba(0,0,0,.31);text-shadow:0 0 10px rgba(0,0,0,.31)}.ribbon.black{background:#000}.ribbon.red{background:#c00}.ribbon.blue{background:#09e}.ribbon.green{background:#0a0}.ribbon.orange{background:#d80}.ribbon.purple{background:#c0c}.ribbon.grey{background:#888}.ribbon.white{background:#eee;color:#000}.ribbon.white a{border:2px dotted hsla(0,0%,39%,.2)}pre{background:#002b36;word-wrap:break-word;margin:0;padding:10px;color:#839496;font-size:14px;margin-bottom:20px}code,pre{font-family:Monaco,courier,monospace}pre .comment{color:#586e75}pre .constant{color:#839496}pre .constant.language{color:#268bd2}pre .constant.regexp{color:#2aa198}pre .storage{color:#268bd2}pre .comment.docstring,pre .string,pre .string.regexp,pre .string.regexp.close,pre .string.regexp.open,pre .support.tag.script,pre .support.tag.style{color:#2aa198}pre .keyword,pre .selector{color:#859900}pre .inherited-class{font-style:italic}pre .entity{color:#b58900}[data-language=c] .function.call,pre .support{color:#859900}pre .support.method,pre .support.property,pre .variable.class,pre .variable.global,pre .variable.instance{color:#839496}*{box-sizing:border-box;-webkit-transition:all 2ms linear;transition:all 2ms linear}body,html{background:#fefefe;font-family:Roboto Slab,serif;font-weight:400;font-weight:300;color:#555;min-height:100%}.container{max-width:680px;padding:3em 1em}header{text-align:center}hr{border-color:#e7e7e7}a{color:#41bfcf;text-decoration:none}a:hover{color:#16daf4;text-decoration:underline}h3,h4{font-size:2em}h4{text-align:center}h5{font-size:1.4em}h5 span{font-size:.75em}h5 span.default{font-style:italic;color:#777}form{width:100%;margin:40px auto;background:#f1f1f1;border-radius:5px;padding:3em 2em;color:#555}fieldset{border:0;max-width:580px;margin:0 auto}label{font-size:9pt;text-transform:uppercase;display:block;padding-top:0;margin-top:0}input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],select,textarea{line-height:2.5;height:auto;border-radius:0;font-size:1.25em;padding:8px 20px;outline:0;width:100%}input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=url]:focus,select:focus,textarea:focus{border:1px solid #c3c3c3}.passwordField{width:100%}.passwordField__strength{color:#999} +@import url(http://fonts.googleapis.com/css?family=Cabin+Condensed:500&text=Fork%20me%20on%20GitHub);/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}.container{position:relative;max-width:960px;margin:0 auto;padding:0 20px}.column,.columns,.container{width:100%;box-sizing:border-box}.column,.columns{float:left}@media(min-width:400px){.container{width:85%;padding:0}}@media(min-width:550px){.container{width:80%}.column,.columns{margin-left:4%}.column:first-child,.columns:first-child{margin-left:0}.one.column,.one.columns{width:4.66666666667%}.two.columns{width:13.3333333333%}.three.columns{width:22%}.four.columns{width:30.6666666667%}.five.columns{width:39.3333333333%}.six.columns{width:48%}.seven.columns{width:56.6666666667%}.eight.columns{width:65.3333333333%}.nine.columns{width:74%}.ten.columns{width:82.6666666667%}.eleven.columns{width:91.3333333333%}.twelve.columns{width:100%;margin-left:0}.one-third.column{width:30.6666666667%}.two-thirds.column{width:65.3333333333%}.one-half.column{width:48%}.offset-by-one.column,.offset-by-one.columns{margin-left:8.66666666667%}.offset-by-two.column,.offset-by-two.columns{margin-left:17.3333333333%}.offset-by-three.column,.offset-by-three.columns{margin-left:26%}.offset-by-four.column,.offset-by-four.columns{margin-left:34.6666666667%}.offset-by-five.column,.offset-by-five.columns{margin-left:43.3333333333%}.offset-by-six.column,.offset-by-six.columns{margin-left:52%}.offset-by-seven.column,.offset-by-seven.columns{margin-left:60.6666666667%}.offset-by-eight.column,.offset-by-eight.columns{margin-left:69.3333333333%}.offset-by-nine.column,.offset-by-nine.columns{margin-left:78%}.offset-by-ten.column,.offset-by-ten.columns{margin-left:86.6666666667%}.offset-by-eleven.column,.offset-by-eleven.columns{margin-left:95.3333333333%}.offset-by-one-third.column,.offset-by-one-third.columns{margin-left:34.6666666667%}.offset-by-two-thirds.column,.offset-by-two-thirds.columns{margin-left:69.3333333333%}.offset-by-one-half.column,.offset-by-one-half.columns{margin-left:52%}}html{font-size:62.5%}body{font-size:1.5em;line-height:1.6;font-weight:400;font-family:Raleway,HelveticaNeue,Helvetica Neue,Helvetica,Arial,sans-serif;color:#222}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:2rem;font-weight:300}h1{font-size:4rem;line-height:1.2}h1,h2{letter-spacing:-.1rem}h2{font-size:3.6rem;line-height:1.25}h3{font-size:3rem;line-height:1.3;letter-spacing:-.1rem}h4{font-size:2.4rem;line-height:1.35;letter-spacing:-.08rem}h5{font-size:1.8rem;line-height:1.5;letter-spacing:-.05rem}h6{font-size:1.5rem;line-height:1.6;letter-spacing:0}@media(min-width:550px){h1{font-size:5rem}h2{font-size:4.2rem}h3{font-size:3.6rem}h4{font-size:3rem}h5{font-size:2.4rem}h6{font-size:1.5rem}}p{margin-top:0}a{color:#1eaedb}a:hover{color:#0fa0ce}.button,button,input[type=button],input[type=reset],input[type=submit]{display:inline-block;height:38px;padding:0 30px;color:#555;text-align:center;font-size:11px;font-weight:600;line-height:38px;letter-spacing:.1rem;text-transform:uppercase;text-decoration:none;white-space:nowrap;background-color:transparent;border-radius:4px;border:1px solid #bbb;cursor:pointer;box-sizing:border-box}.button:focus,.button:hover,button:focus,button:hover,input[type=button]:focus,input[type=button]:hover,input[type=reset]:focus,input[type=reset]:hover,input[type=submit]:focus,input[type=submit]:hover{color:#333;border-color:#888;outline:0}.button.button-primary,button.button-primary,input[type=button].button-primary,input[type=reset].button-primary,input[type=submit].button-primary{color:#fff;background-color:#33c3f0;border-color:#33c3f0}.button.button-primary:focus,.button.button-primary:hover,button.button-primary:focus,button.button-primary:hover,input[type=button].button-primary:focus,input[type=button].button-primary:hover,input[type=reset].button-primary:focus,input[type=reset].button-primary:hover,input[type=submit].button-primary:focus,input[type=submit].button-primary:hover{color:#fff;background-color:#1eaedb;border-color:#1eaedb}input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],select,textarea{height:38px;padding:6px 10px;background-color:#fff;border:1px solid #d1d1d1;border-radius:4px;box-shadow:none;box-sizing:border-box}input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none}textarea{min-height:65px;padding-top:6px;padding-bottom:6px}input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=url]:focus,select:focus,textarea:focus{border:1px solid #33c3f0;outline:0}label,legend{display:block;margin-bottom:.5rem;font-weight:600}fieldset{padding:0;border-width:0}input[type=checkbox],input[type=radio]{display:inline}label>.label-body{display:inline-block;margin-left:.5rem;font-weight:400}ul{list-style:circle inside}ol{list-style:decimal inside}ol,ul{padding-left:0;margin-top:0}ol ol,ol ul,ul ol,ul ul{margin:1.5rem 0 1.5rem 3rem;font-size:90%}li{margin-bottom:1rem}code{padding:.2rem .5rem;margin:0 .2rem;font-size:90%;white-space:nowrap;border-radius:4px}pre>code{display:block;padding:1rem 1.5rem;white-space:pre}td,th{padding:12px 15px;text-align:left;border-bottom:1px solid #e1e1e1}td:first-child,th:first-child{padding-left:0}td:last-child,th:last-child{padding-right:0}.button,button{margin-bottom:1rem}fieldset,input,select,textarea{margin-bottom:1.5rem}blockquote,dl,figure,form,ol,p,pre,table,ul{margin-bottom:2.5rem}.u-full-width{width:100%;box-sizing:border-box}.u-max-full-width{max-width:100%;box-sizing:border-box}.u-pull-right{float:right}.u-pull-left{float:left}hr{margin-top:3rem;margin-bottom:3.5rem;border-width:0;border-top:1px solid #e1e1e1}.container:after,.row:after,.u-cf{content:"";display:table;clear:both}body{overflow-x:hidden}.ribbon{position:absolute;top:42px;width:200px;padding:1px 0;background:#000;color:#eee;box-shadow:0 0 10px rgba(0,0,0,.5)}.ribbon.left{left:-42px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.ribbon.right{right:-42px;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.ribbon a,.ribbon a:active,.ribbon a:hover,.ribbon a:visited{display:block;padding:1px 0;height:24px;line-height:24px;color:inherit;text-align:center;text-decoration:none;font-family:Cabin Condensed,sans-serif;font-size:16px;font-weight:500;border:1px solid hsla(0,0%,100%,.3);-moz-text-shadow:0 0 10px rgba(0,0,0,.31);-webkit-text-shadow:0 0 10px rgba(0,0,0,.31);text-shadow:0 0 10px rgba(0,0,0,.31)}.ribbon.black{background:#000}.ribbon.red{background:#c00}.ribbon.blue{background:#09e}.ribbon.green{background:#0a0}.ribbon.orange{background:#d80}.ribbon.purple{background:#c0c}.ribbon.grey{background:#888}.ribbon.white{background:#eee;color:#000}.ribbon.white a{border:2px dotted hsla(0,0%,39%,.2)}pre{background:#002b36;word-wrap:break-word;margin:0;padding:10px;color:#839496;font-size:14px;margin-bottom:20px}code,pre{font-family:Monaco,courier,monospace}pre .comment{color:#586e75}pre .constant{color:#839496}pre .constant.language{color:#268bd2}pre .constant.regexp{color:#2aa198}pre .storage{color:#268bd2}pre .comment.docstring,pre .string,pre .string.regexp,pre .string.regexp.close,pre .string.regexp.open,pre .support.tag.script,pre .support.tag.style{color:#2aa198}pre .keyword,pre .selector{color:#859900}pre .inherited-class{font-style:italic}pre .entity{color:#b58900}[data-language=c] .function.call,pre .support{color:#859900}pre .support.method,pre .support.property,pre .variable.class,pre .variable.global,pre .variable.instance{color:#839496}*{box-sizing:border-box;-webkit-transition:all 2ms linear;transition:all 2ms linear}body,html{background:#fefefe;font-family:Roboto Slab,serif;font-weight:400;font-weight:300;color:#555;min-height:100%}.container{max-width:680px;padding:3em 1em}header{text-align:center}hr{border-color:#e7e7e7}a{color:#41bfcf;text-decoration:none}a:hover{color:#16daf4;text-decoration:underline}h3,h4{font-size:2em}h4{text-align:center}h5{font-size:1.4em}h5 span{font-size:.75em}h5 span.default{font-style:italic;color:#777}form{width:100%;margin:40px auto;background:#f1f1f1;border-radius:5px;padding:3em 2em;color:#555}fieldset{border:0;max-width:580px;margin:0 auto}label{font-size:12px;text-transform:uppercase;display:block;padding-top:0;margin-top:0}input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],select,textarea{line-height:2.5;height:auto;border-radius:0;font-size:1.25em;padding:8px 20px;outline:none;width:100%}input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=url]:focus,select:focus,textarea:focus{border:1px solid #c3c3c3}.passwordField{width:100%}.passwordField__strength{color:#999} /*# sourceMappingURL=style.css.map*/ \ No newline at end of file diff --git a/lib/react-ux-password-field.js b/lib/react-ux-password-field.js index f348f00..001af67 100644 --- a/lib/react-ux-password-field.js +++ b/lib/react-ux-password-field.js @@ -272,9 +272,7 @@ return /******/ (function(modules) { // webpackBootstrap // snippet to async load zxcvbn if enabled (function () { - var a;a = function () { - var a, b;b = document.createElement("script");b.src = zxcvbnSrc;b.type = "text/javascript";b.async = !0;a = document.getElementsByTagName("head")[0];return a.parentNode.insertBefore(b, a); - };null != window.attachEvent ? window.attachEvent("onload", a) : window.addEventListener("load", a, !1); + var a, b;b = document.createElement("script");b.src = zxcvbnSrc;b.type = "text/javascript";b.async = !0;a = document.getElementsByTagName("head")[0];a.parentNode.insertBefore(b, a); }).call(this); } diff --git a/lib/react-ux-password-field.min.js b/lib/react-ux-password-field.min.js index 29a0605..653ef81 100644 --- a/lib/react-ux-password-field.min.js +++ b/lib/react-ux-password-field.min.js @@ -7,4 +7,4 @@ * demo: https://seethroughtrees.github.io/react-ux-password-field/ * */ -!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("react")):"function"==typeof define&&define.amd?define(["react"],e):"object"==typeof exports?exports["react-ux-password-field"]=e(require("react")):t["react-ux-password-field"]=e(t.React)}(this,function(t){return function(t){function e(s){if(n[s])return n[s].exports;var i=n[s]={exports:{},id:s,loaded:!1};return t[s].call(i.exports,i,i.exports,e),i.loaded=!0,i.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([function(t,e,n){"use strict";function s(t,e){var n={};for(var s in t)e.indexOf(s)>=0||Object.prototype.hasOwnProperty.call(t,s)&&(n[s]=t[s]);return n}var i=Object.assign||function(t){for(var e=1;e0&&this.props.strengthLang.length>0?this.props.strengthLang[this.state.score]:null)));var e=this.props,a=(e.onChange,s(e,["onChange"])),r=this;return setTimeout(function(){if(/Firefox/.test(navigator.userAgent)){var t=r.refs[r.props.id].getDOMNode();t.selectionStart=r.state.selectionStart,t.selectionEnd=r.state.selectionEnd}},1),o.createElement("div",{style:{position:"relative",display:"inline-block"},className:"passwordField","data-valid":this.state.isValid,"data-score":this.state.score,"data-entropy":this.state.entropy},o.createElement("input",i({ref:this.props.id,className:"passwordField__input",type:this.state.isPassword?"password":"text",value:this.state.value,style:this.state.isPassword?null:this.unMaskStyle,onChange:this.handleChange},a)),t)}});t.exports=l},function(t,e){"use strict";function n(t){return!!t&&"object"==typeof t}function s(t,e){var n=null==t?void 0:t[e];return a(n)?n:void 0}function i(t){return o(t)&&d.call(t)==r}function o(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function a(t){return null==t?!1:i(t)?h.test(p.call(t)):n(t)&&c.test(t)}var r="[object Function]",c=/^\[object .+?Constructor\]$/,l=Object.prototype,p=Function.prototype.toString,u=l.hasOwnProperty,d=l.toString,h=RegExp("^"+p.call(u).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=s},function(t,e,n){"use strict";function s(t,e,n){function s(){f&&clearTimeout(f),h&&clearTimeout(h),b=0,h=f=m=void 0}function o(e,n){n&&clearTimeout(n),h=f=m=void 0,e&&(b=l(),g=t.apply(y,d),f||h||(d=y=void 0))}function c(){var t=e-(l()-v);0>=t||t>e?o(m,h):f=setTimeout(c,t)}function p(){o(w,f)}function u(){if(d=arguments,v=l(),y=this,m=w&&(f||!A),M===!1)var n=A&&!f;else{h||A||(b=v);var s=M-(v-b),i=0>=s||s>M;i?(h&&(h=clearTimeout(h)),b=v,g=t.apply(y,d)):h||(h=setTimeout(p,s))}return i&&f?f=clearTimeout(f):f||e===M||(f=setTimeout(c,e)),n&&(i=!0,g=t.apply(y,d)),!i||f||h||(d=y=void 0),g}var d,h,g,v,y,f,m,b=0,M=!1,w=!0;if("function"!=typeof t)throw new TypeError(a);if(e=0>e?0:+e||0,n===!0){var A=!0;w=!1}else i(n)&&(A=!!n.leading,M="maxWait"in n&&r(+n.maxWait||0,e),w="trailing"in n?!!n.trailing:w);return u.cancel=s,u}function i(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}var o=n(1),a="Expected a function",r=Math.max,c=o(Date,"now"),l=c||function(){return(new Date).getTime()};t.exports=s},function(t,e){"use strict";t.exports={statusColor:"#5CE592",statusInactiveColor:"#FC6F6F",unMaskColor:"#c7c7c7",unMaskTime:1400,zxcvbnSrc:"https://cdnjs.cloudflare.com/ajax/libs/zxcvbn/1.0/zxcvbn.min.js",strengthLang:["Weak","Okay","Good","Strong","Great"]}},function(t,e){t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCRkNDMzg4M0FFN0IxMUU0OTE2RkY5MzYyMkI3QTVDMiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCRkNDMzg4NEFFN0IxMUU0OTE2RkY5MzYyMkI3QTVDMiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkJGQ0MzODgxQUU3QjExRTQ5MTZGRjkzNjIyQjdBNUMyIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkJGQ0MzODgyQUU3QjExRTQ5MTZGRjkzNjIyQjdBNUMyIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+NkztvAAAAc9JREFUeNq8lk8oBFEcx2fG5k+0HJRQ/iVy2U1tUsjBzYnI2cUWJyl3XJRSkgOtxEU4keLgQP6kuColoeQgEkXWand8X/3UNM28Z56Z961PO2/fb9535r3f/N7TTdPUnBSLxTSBcsEA6AW1IAw+wD3YAtPg0+1mXdK4DJyAKk7MM+gE506dhuZdleBSYMpUDM5Ah1NnyKOpDnZpWn91C/ZBksZrBhFL/zaopyWQNh4HDZZ2AsQd4kbBFF3ngRnQ8581vgHVdH0M2jgPeWjpz1BePMqscdRiyrQhiF+25VK7bHI12toXgvg9+yTKGpc6TDtPD+DJ0i6RNS6ytZOC+IwtpkA2q1epKLyDb/D2h3uGQQXIBqcyWd1FBeEOZNFM1YEckHYpTGzgKyqbpmWp1kEq9IeCcQRaNP80CZoMQclb8NmUqRys8IxZpenTglHUEOxAhQEZ5/OM01qAMnwah+3Ng2BTpTGr2a1gHnSDCVXGs7Z2QpVxjUNSKjGeo29T+RuHqaRqtOdGVGZ1in6/VH9OYZet01Uhnx5qBLyAIT+MvVQulslLflWuazq+BKFXnvEaWAzI+IA31ezUMEaJE6dDQYb+9yrdMrs7oP9HgAEAXmVa5ulD/g0AAAAASUVORK5CYII="},function(e,n){e.exports=t}])}); \ No newline at end of file +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("react")):"function"==typeof define&&define.amd?define(["react"],e):"object"==typeof exports?exports["react-ux-password-field"]=e(require("react")):t["react-ux-password-field"]=e(t.React)}(this,function(t){return function(t){function e(s){if(n[s])return n[s].exports;var i=n[s]={exports:{},id:s,loaded:!1};return t[s].call(i.exports,i,i.exports,e),i.loaded=!0,i.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([function(t,e,n){"use strict";function s(t,e){var n={};for(var s in t)e.indexOf(s)>=0||Object.prototype.hasOwnProperty.call(t,s)&&(n[s]=t[s]);return n}var i=Object.assign||function(t){for(var e=1;e0&&this.props.strengthLang.length>0?this.props.strengthLang[this.state.score]:null)));var e=this.props,a=(e.onChange,s(e,["onChange"])),r=this;return setTimeout(function(){if(/Firefox/.test(navigator.userAgent)){var t=r.refs[r.props.id].getDOMNode();t.selectionStart=r.state.selectionStart,t.selectionEnd=r.state.selectionEnd}},1),o.createElement("div",{style:{position:"relative",display:"inline-block"},className:"passwordField","data-valid":this.state.isValid,"data-score":this.state.score,"data-entropy":this.state.entropy},o.createElement("input",i({ref:this.props.id,className:"passwordField__input",type:this.state.isPassword?"password":"text",value:this.state.value,style:this.state.isPassword?null:this.unMaskStyle,onChange:this.handleChange},a)),t)}});t.exports=l},function(t,e,n){"use strict";function s(t,e,n){function s(){f&&clearTimeout(f),h&&clearTimeout(h),b=0,h=f=m=void 0}function o(e,n){n&&clearTimeout(n),h=f=m=void 0,e&&(b=l(),g=t.apply(y,d),f||h||(d=y=void 0))}function c(){var t=e-(l()-v);0>=t||t>e?o(m,h):f=setTimeout(c,t)}function p(){o(A,f)}function u(){if(d=arguments,v=l(),y=this,m=A&&(f||!x),M===!1)var n=x&&!f;else{h||x||(b=v);var s=M-(v-b),i=0>=s||s>M;i?(h&&(h=clearTimeout(h)),b=v,g=t.apply(y,d)):h||(h=setTimeout(p,s))}return i&&f?f=clearTimeout(f):f||e===M||(f=setTimeout(c,e)),n&&(i=!0,g=t.apply(y,d)),!i||f||h||(d=y=void 0),g}var d,h,g,v,y,f,m,b=0,M=!1,A=!0;if("function"!=typeof t)throw new TypeError(a);if(e=0>e?0:+e||0,n===!0){var x=!0;A=!1}else i(n)&&(x=!!n.leading,M="maxWait"in n&&r(+n.maxWait||0,e),A="trailing"in n?!!n.trailing:A);return u.cancel=s,u}function i(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}var o=n(2),a="Expected a function",r=Math.max,c=o(Date,"now"),l=c||function(){return(new Date).getTime()};t.exports=s},function(t,e){"use strict";function n(t){return!!t&&"object"==typeof t}function s(t,e){var n=null==t?void 0:t[e];return a(n)?n:void 0}function i(t){return o(t)&&d.call(t)==r}function o(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function a(t){return null==t?!1:i(t)?h.test(p.call(t)):n(t)&&c.test(t)}var r="[object Function]",c=/^\[object .+?Constructor\]$/,l=Object.prototype,p=Function.prototype.toString,u=l.hasOwnProperty,d=l.toString,h=RegExp("^"+p.call(u).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=s},function(t,e){"use strict";t.exports={statusColor:"#5CE592",statusInactiveColor:"#FC6F6F",unMaskColor:"#c7c7c7",unMaskTime:1400,zxcvbnSrc:"https://cdnjs.cloudflare.com/ajax/libs/zxcvbn/1.0/zxcvbn.min.js",strengthLang:["Weak","Okay","Good","Strong","Great"]}},function(t,e){t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCRkNDMzg4M0FFN0IxMUU0OTE2RkY5MzYyMkI3QTVDMiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCRkNDMzg4NEFFN0IxMUU0OTE2RkY5MzYyMkI3QTVDMiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkJGQ0MzODgxQUU3QjExRTQ5MTZGRjkzNjIyQjdBNUMyIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkJGQ0MzODgyQUU3QjExRTQ5MTZGRjkzNjIyQjdBNUMyIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+NkztvAAAAc9JREFUeNq8lk8oBFEcx2fG5k+0HJRQ/iVy2U1tUsjBzYnI2cUWJyl3XJRSkgOtxEU4keLgQP6kuColoeQgEkXWand8X/3UNM28Z56Z961PO2/fb9535r3f/N7TTdPUnBSLxTSBcsEA6AW1IAw+wD3YAtPg0+1mXdK4DJyAKk7MM+gE506dhuZdleBSYMpUDM5Ah1NnyKOpDnZpWn91C/ZBksZrBhFL/zaopyWQNh4HDZZ2AsQd4kbBFF3ngRnQ8581vgHVdH0M2jgPeWjpz1BePMqscdRiyrQhiF+25VK7bHI12toXgvg9+yTKGpc6TDtPD+DJ0i6RNS6ytZOC+IwtpkA2q1epKLyDb/D2h3uGQQXIBqcyWd1FBeEOZNFM1YEckHYpTGzgKyqbpmWp1kEq9IeCcQRaNP80CZoMQclb8NmUqRys8IxZpenTglHUEOxAhQEZ5/OM01qAMnwah+3Ng2BTpTGr2a1gHnSDCVXGs7Z2QpVxjUNSKjGeo29T+RuHqaRqtOdGVGZ1in6/VH9OYZet01Uhnx5qBLyAIT+MvVQulslLflWuazq+BKFXnvEaWAzI+IA31ezUMEaJE6dDQYb+9yrdMrs7oP9HgAEAXmVa5ulD/g0AAAAASUVORK5CYII="},function(e,n){e.exports=t}])}); \ No newline at end of file diff --git a/src/index.js b/src/index.js index a3d3ff0..7405a98 100644 --- a/src/index.js +++ b/src/index.js @@ -204,8 +204,10 @@ var InputPassword = React.createClass({ zxcvbnSrc = this.props.zxcvbn !== 'debug' ? this.props.zxcvbn : config.zxcvbnSrc; - // snippet to async load zxcvbn if enabled - (function(){var a;a=function(){var a,b;b=document.createElement("script");b.src=zxcvbnSrc;b.type="text/javascript";b.async=!0;a=document.getElementsByTagName("head")[0];return a.parentNode.insertBefore(b,a)};null!=window.attachEvent?window.attachEvent("onload",a):window.addEventListener("load",a,!1)}).call(this); + // snippet to async load zxcvbn if enabled + (function(){ + var a,b;b=document.createElement("script");b.src=zxcvbnSrc;b.type="text/javascript";b.async=!0;a=document.getElementsByTagName("head")[0];a.parentNode.insertBefore(b,a); + }).call(this); } // set debouncer for password