{"version":3,"file":"FormPassword-hKNSCPtn.js","sources":["../../src/core/components/form/FormPassword.tsx"],"sourcesContent":["import { clsx } from 'clsx';\r\nimport { forwardRef, type InputHTMLAttributes, type ForwardedRef, useState } from 'react';\r\nimport { FaEye, FaEyeSlash } from 'react-icons/fa';\r\nimport { FORM_INPUT_BASE_CLASS } from './constants';\r\nimport { getFontSizeClass } from './getFontSizeClass';\r\n\r\nexport const FormPassword = forwardRef(function FormPassword(\r\n props: InputHTMLAttributes<HTMLInputElement> & { textSize?: 'xs' | 'sm' | 'base' | 'lg' },\r\n ref: ForwardedRef<HTMLInputElement>\r\n) {\r\n const { className, textSize = 'sm', ...rest } = props;\r\n\r\n const [showPassword, setShowPassword] = useState(false);\r\n\r\n const handleClickShowPassword = () => {\r\n setShowPassword((prevValue) => !prevValue);\r\n };\r\n\r\n return (\r\n <div className={clsx('relative', className)}>\r\n <input\r\n className={clsx(FORM_INPUT_BASE_CLASS, 'pl-4 pr-14', getFontSizeClass(textSize))}\r\n ref={ref}\r\n {...rest}\r\n type={showPassword ? 'text' : 'password'}\r\n />\r\n <button\r\n type=\"button\"\r\n onClick={handleClickShowPassword}\r\n aria-label=\"Toggle password visibility\"\r\n className=\"absolute inset-y-0 right-0 m-px flex w-12 items-center justify-center text-xl text-app-gray-dark focus:bg-app-blue-highlight focus:text-white focus:outline-none\"\r\n >\r\n {showPassword ? <FaEyeSlash /> : <FaEye />}\r\n </button>\r\n </div>\r\n );\r\n});\r\n"],"names":["FormPassword","forwardRef","props","ref","className","textSize","rest","showPassword","setShowPassword","useState","handleClickShowPassword","prevValue","clsx","jsx","FORM_INPUT_BASE_CLASS","getFontSizeClass","FaEyeSlash","FaEye"],"mappings":"sFAMO,MAAMA,EAAeC,EAAAA,WAAW,SACrCC,EACAC,EACA,CACA,KAAM,CAAE,UAAAC,EAAW,SAAAC,EAAW,KAAM,GAAGC,CAAS,EAAAJ,EAE1C,CAACK,EAAcC,CAAe,EAAIC,WAAS,EAAK,EAEhDC,EAA0B,IAAM,CACpBF,EAACG,GAAc,CAACA,CAAS,CAAA,EAG3C,cACG,MAAI,CAAA,UAAWC,EAAK,WAAYR,CAAS,EACxC,SAAA,CAAAS,EAAA,IAAC,QAAA,CACC,UAAWD,EAAKE,EAAuB,aAAcC,EAAiBV,CAAQ,CAAC,EAC/E,IAAAF,EACC,GAAGG,EACJ,KAAMC,EAAe,OAAS,UAAA,CAChC,EACAM,EAAA,IAAC,SAAA,CACC,KAAK,SACL,QAASH,EACT,aAAW,6BACX,UAAU,mKAET,SAAeH,EAAAM,EAAAA,IAACG,EAAW,CAAA,CAAA,QAAMC,EAAM,EAAA,CAAA,CAC1C,CACF,CAAA,CAAA,CAEJ,CAAC"}