UNPKG

@propellerads/password-validator

Version:
3 lines (2 loc) 1.99 kB
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t,n,a,s=require("react"),r=e(s),l=require("@propellerads/icon"),o=e(require("styled-components")),u=require("@propellerads/stylevariables");function i(e,t){return t||(t=e.slice(0)),e.raw=t,e}var c=o.div(t||(t=i(["\n margin-bottom: ","px;\n"])),4*u.spacing),d=o.div(n||(n=i(["\n display: flex;\n align-items: flex-start;\n min-height: 20px;\n color: ",";\n"])),(function(e){return e.isPassed?"black":"#b3b3b3"})),p=o.span(a||(a=i(["\n margin-right: ","px;;\n"])),2*u.spacing);exports.default=function(e){var t=e.rules,n=e.password,a=void 0===n?"":n,o=e.confirmPassword,u=void 0===o?"":o,i=e.onPassedRuleClassName,f=void 0===i?"PasswordValidator__rule_passed":i,g=e.onFailedRuleClassName,x=void 0===g?"PasswordValidator__rule":g,h=e.onTestsPassed,w=t.map((function(e){return Boolean(e.test(a,u))}));return s.useEffect((function(){h&&h(w.every((function(e){return e})))}),[a,u,t]),r.createElement(c,null,t.map((function(e,t){var n=w[t];return r.createElement(d,{className:n?f:x,isPassed:n,key:e.label},r.createElement(p,null,r.createElement(l.Check,{color:e.test(a,u)?l.COLOR.SUCCESS:l.COLOR.GRAY,size:l.SIZE.SMALL})),e.label)})))},exports.getDefaultRules=function(e){return[{test:function(e){return e.length>=8},label:e.passwordChangeRuleLengthText,key:"passwordChangeRuleLengthText"},{test:function(e){return/[a-z]/.test(e)},label:e.passwordChangeRuleLatinLowercaseText,key:"passwordChangeRuleLatinLowercaseText"},{test:function(e){return/[A-Z]/.test(e)},label:e.passwordChangeRuleLatinUppercaseText,key:"passwordChangeRuleLatinUppercaseText"},{test:function(e){return/\d/.test(e)},label:e.passwordChangeRuleDigitsText,key:"passwordChangeRuleDigitsText"},{test:function(e,t){return e&&t&&e===t},label:e.passwordChangeRuleIsEqualText,key:"passwordChangeRuleIsEqualText"}]}; //# sourceMappingURL=password-validator.cjs.production.min.js.map