UNPKG

primereact

Version:

PrimeReact is an open source UI library for React featuring a rich set of 80+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with Prime

2 lines (1 loc) 6.98 kB
this.primereact=this.primereact||{},this.primereact.password=function(e,t,n,r,l,a,o,i,u){"use strict";function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function c(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var p=c(t),f=s(n);function d(){return d=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},d.apply(this,arguments)}function m(e){if(Array.isArray(e))return e}function g(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,l,a=[],o=!0,i=!1;try{for(n=n.call(e);!(o=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);o=!0);}catch(e){i=!0,l=e}finally{try{o||null==n.return||n.return()}finally{if(i)throw l}}return a}}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function b(e,t){if(e){if("string"==typeof e)return y(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?y(e,t):void 0}}function v(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function w(e,t){return m(e)||g(e,t)||b(e,t)||v()}var h=p.memo(p.forwardRef((function(e,t){var s=e.promptLabel||n.localeOption("passwordPrompt"),c=e.weakLabel||n.localeOption("weak"),m=e.mediumLabel||n.localeOption("medium"),g=e.strongLabel||n.localeOption("strong"),y=w(p.useState(!1),2),b=y[0],v=y[1],E=w(p.useState(null),2),O=E[0],k=E[1],x=w(p.useState(s),2),R=x[0],S=x[1],j=w(p.useState(!1),2),N=j[0],U=j[1],I=w(p.useState(!1),2),C=I[0],P=I[1],A=p.useRef(null),H=p.useRef(null),L=p.useRef(e.inputRef),T=p.useRef(new RegExp(e.mediumRegex)),D=p.useRef(new RegExp(e.strongRegex)),M=C?"text":"password",Z=w(l.useOverlayListener({target:A,overlay:H,listener:function(e,t){t.valid&&Y()},when:b}),2),_=Z[0],z=Z[1],F=L.current&&L.current.value,J=p.useMemo((function(){return u.ObjectUtils.isNotEmpty(e.value)||u.ObjectUtils.isNotEmpty(e.defaultValue)||u.ObjectUtils.isNotEmpty(F)}),[e.value,e.defaultValue,F]),K=function(){if(O){var e=null;switch(O.strength){case"weak":e=c;break;case"medium":e=m;break;case"strong":e=g}e&&R!==e&&S(e)}else R!==s&&S(s)},X=function(t){e.feedback&&o.OverlayService.emit("overlay-click",{originalEvent:t,target:A.current})},B=function(){P((function(e){return!e}))},V=function(){K(),v(!0)},Y=function(){v(!1)},$=function(){u.ZIndexUtils.set("overlay",H.current,f.default.autoZIndex,f.default.zIndex.overlay),L.current&&u.DomHandler.alignOverlay(H.current,L.current.parentElement,e.appendTo||f.default.appendTo)},q=function(){_(),e.onShow&&e.onShow()},G=function(){z()},Q=function(){u.ZIndexUtils.clear(H.current),e.onHide&&e.onHide()},W=function(e){return D.current.test(e)?3:T.current.test(e)?2:e.length?1:0};p.useImperativeHandle(t,(function(){return{props:e,getElement:function(){return A.current},getOverlay:function(){return H.current},getInput:function(){return L.current}}})),p.useEffect((function(){u.ObjectUtils.combinedRefs(L,e.inputRef)}),[L,e.inputRef]),p.useEffect((function(){T.current=new RegExp(e.mediumRegex)}),[e.mediumRegex]),p.useEffect((function(){D.current=new RegExp(e.strongRegex)}),[e.strongRegex]),p.useEffect((function(){!J&&u.DomHandler.hasClass(A.current,"p-inputwrapper-filled")&&u.DomHandler.removeClass(A.current,"p-inputwrapper-filled")}),[J]),l.useUnmountEffect((function(){u.ZIndexUtils.clear(H.current)}));var ee,te,ne,re,le,ae,oe,ie=u.classNames("p-password p-component p-inputwrapper",{"p-inputwrapper-filled":J,"p-inputwrapper-focus":N,"p-input-icon-right":e.toggleMask},e.className),ue=u.classNames("p-password-input",e.inputClassName),se=u.ObjectUtils.findDiffKeys(e,h.defaultProps),ce=function(){if(e.toggleMask){var t=C?"pi pi-eye-slash":"pi pi-eye",n=p.createElement("i",{className:t,onClick:B});if(e.icon)n=u.ObjectUtils.getJSXElement(e.icon,{onClick:B,className:t,element:n,props:e});return n}return null}(),pe=(ee=u.classNames("p-password-panel p-component",e.panelClassName),ne=(te=O||{strength:"",width:"0%"}).strength,re=te.width,le=u.ObjectUtils.getJSXElement(e.header,e),ae=u.ObjectUtils.getJSXElement(e.footer,e),oe=e.content?u.ObjectUtils.getJSXElement(e.content,e):p.createElement(p.Fragment,null,p.createElement("div",{className:"p-password-meter"},p.createElement("div",{className:"p-password-strength ".concat(ne),style:{width:re}})),p.createElement("div",{className:"p-password-info ".concat(ne)},R)),p.createElement(i.Portal,{element:p.createElement(r.CSSTransition,{nodeRef:H,classNames:"p-connected-overlay",in:b,timeout:{enter:120,exit:100},options:e.transitionOptions,unmountOnExit:!0,onEnter:$,onEntered:q,onExit:G,onExited:Q},p.createElement("div",{ref:H,className:ee,style:e.panelStyle,onClick:X},le,oe,ae)),appendTo:e.appendTo}));return p.createElement("div",{ref:A,id:e.id,className:ie,style:e.style},p.createElement(a.InputText,d({ref:L,id:e.inputId},se,{type:M,className:ue,style:e.inputStyle,onFocus:function(t){U(!0),e.feedback&&V(),e.onFocus&&e.onFocus(t)},onBlur:function(t){U(!1),e.feedback&&Y(),e.onBlur&&e.onBlur(t)},onKeyUp:function(t){var n=t.keyCode||t.which;if(e.feedback){var r=null,l=null;switch(W(t.target.value)){case 1:r=c,l={strength:"weak",width:"33.33%"};break;case 2:r=m,l={strength:"medium",width:"66.66%"};break;case 3:r=g,l={strength:"strong",width:"100%"};break;default:r=s,l=null}k(l),S(r),n&&!b&&V()}e.onKeyUp&&e.onKeyUp(t)},onInput:function(t,n){e.onInput&&e.onInput(t,n),e.onChange||(u.ObjectUtils.isNotEmpty(t.target.value)?u.DomHandler.addClass(A.current,"p-inputwrapper-filled"):u.DomHandler.removeClass(A.current,"p-inputwrapper-filled"))},tooltip:e.tooltip,tooltipOptions:e.tooltipOptions})),ce,pe)})));return h.displayName="Password",h.defaultProps={__TYPE:"Password",id:null,inputId:null,inputRef:null,promptLabel:null,weakLabel:null,mediumLabel:null,strongLabel:null,mediumRegex:"^(((?=.*[a-z])(?=.*[A-Z]))|((?=.*[a-z])(?=.*[0-9]))|((?=.*[A-Z])(?=.*[0-9])))(?=.{6,})",strongRegex:"^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.{8,})",feedback:!0,toggleMask:!1,appendTo:null,header:null,content:null,footer:null,icon:null,tooltip:null,tooltipOptions:null,style:null,className:null,inputStyle:null,inputClassName:null,panelStyle:null,panelClassName:null,transitionOptions:null,onInput:null,onShow:null,onHide:null},e.Password=h,Object.defineProperty(e,"__esModule",{value:!0}),e}({},React,primereact.api,primereact.csstransition,primereact.hooks,primereact.inputtext,primereact.overlayservice,primereact.portal,primereact.utils);