{"version":3,"sources":["../ui/src/components/player-components/phoneInput/phoneInput.tsx"],"sourcesContent":["import { IPhoneInputProps } from \"interfaces\";\r\nimport { useEffect, useState } from \"react\";\r\n\r\nconst PhoneInput = ({ onChange, value, label, placeholder, disable, error, parentClassName, autoFocus }: IPhoneInputProps) => {\r\n  const [inputValue, setInputValue] = useState(value ? value : '');\r\n\r\n  useEffect(() => {\r\n    if (onChange)\r\n      onChange(inputValue);\r\n  }, [inputValue]);\r\n\r\n  useEffect(() => {\r\n    if (value) setInputValue(value);\r\n  }, []);\r\n\r\n  useEffect(() => {\r\n    if (inputValue !== value && value) setInputValue(value.replaceAll(\"_\", \"\").replaceAll(\" \", \"\"));\r\n  }, [value])\r\n\r\n  function onChangeHandler(e: any) {\r\n    let value = e.target.value\r\n    if (!value.startsWith(\"0\") && !(value.length < 1)) {\r\n      value = \"0\" + value\r\n    }\r\n    const formattedPhoneNumber = formatPhoneNumber(value).trim();\r\n    setInputValue(formattedPhoneNumber);\r\n  }\r\n\r\n  function formatPhoneNumber(input:any) {\r\n    if (!input) return input;\r\n    const numberInput = input.replace(/[^\\d]/g, \"\");\r\n\r\n    return `${numberInput.slice(0, 4)} ${numberInput.slice(4, 7)} ${numberInput.slice(7, 11)}`;\r\n  }\r\n\r\n  const inputKeyDown = (e:any ) => {\r\n    if (e.code === \"Backspace\" || e.code === \"Delete\") {\r\n      setInputValue(inputValue.replaceAll(\" \", \"\"))\r\n    }\r\n  }\r\n\r\n  return (\r\n    <div className={parentClassName}>\r\n      {label && <label className={`pl-text-[14px] pl-font-normal pl-text-gray-800 dark:pl-text-z-secondary-50 pl-mb-1 ${disable && 'pl-text-gray-300 pl-opacity-50'}`}>{label}</label>}\r\n      <div className=\"pl-z-0 pl-group pl-relative pl-flex pl-items-center\">\r\n        <input\r\n          dir=\"ltr\"\r\n          placeholder={placeholder}\r\n          autoFocus={autoFocus}\r\n          onKeyDown={inputKeyDown}\r\n          onChange={onChangeHandler}\r\n          value={inputValue}\r\n          disabled={disable}\r\n          className={`pl-outline-none pl-rounded-[10px] pl-transition-all pl-flex pl-items-center pl-text-[14px] pl-text-left pl-bg-secondary-200 dark:pl-bg-dark-1 pl-h-full pl-w-full pl-p-4 pl-border-[1.5px] pl-border-solid pl-border-transparent placeholder:dark:pl-text-secondary placeholder:pl-text-left ${error && \"pl-border-red-500\"}`}\r\n        />\r\n        \r\n        <input type=\"password\" className={\"pl-hidden\"} />\r\n      </div>\r\n      {error && <div className=\"pl-text-[14px] pl-mt-2 pl-text-red-500\">{error}</div>}\r\n    </div>\r\n  )\r\n}\r\n\r\nexport default PhoneInput;"],"mappings":"yCAAAA,IACA,OAAS,aAAAC,EAAW,YAAAC,MAAgB,QA0CpB,cAAAC,EACV,QAAAC,MADU,oBAxChB,IAAMC,EAAa,CAAC,CAAE,SAAAC,EAAU,MAAAC,EAAO,MAAAC,EAAO,YAAAC,EAAa,QAAAC,EAAS,MAAAC,EAAO,gBAAAC,EAAiB,UAAAC,CAAU,IAAwB,CAC5H,GAAM,CAACC,EAAYC,CAAa,EAAIb,EAASK,GAAgB,EAAE,EAE/DN,EAAU,IAAM,CACVK,GACFA,EAASQ,CAAU,CACvB,EAAG,CAACA,CAAU,CAAC,EAEfb,EAAU,IAAM,CACVM,GAAOQ,EAAcR,CAAK,CAChC,EAAG,CAAC,CAAC,EAELN,EAAU,IAAM,CACVa,IAAeP,GAASA,GAAOQ,EAAcR,EAAM,WAAW,IAAK,EAAE,EAAE,WAAW,IAAK,EAAE,CAAC,CAChG,EAAG,CAACA,CAAK,CAAC,EAEV,SAASS,EAAgBC,EAAQ,CAC/B,IAAIV,EAAQU,EAAE,OAAO,MACjB,CAACV,EAAM,WAAW,GAAG,GAAK,EAAEA,EAAM,OAAS,KAC7CA,EAAQ,IAAMA,GAEhB,IAAMW,EAAuBC,EAAkBZ,CAAK,EAAE,KAAK,EAC3DQ,EAAcG,CAAoB,CACpC,CAEA,SAASC,EAAkBC,EAAW,CACpC,GAAI,CAACA,EAAO,OAAOA,EACnB,IAAMC,EAAcD,EAAM,QAAQ,SAAU,EAAE,EAE9C,MAAO,GAAGC,EAAY,MAAM,EAAG,CAAC,CAAC,IAAIA,EAAY,MAAM,EAAG,CAAC,CAAC,IAAIA,EAAY,MAAM,EAAG,EAAE,CAAC,EAC1F,CAEA,IAAMC,EAAgBL,GAAW,EAC3BA,EAAE,OAAS,aAAeA,EAAE,OAAS,WACvCF,EAAcD,EAAW,WAAW,IAAK,EAAE,CAAC,CAEhD,EAEA,OACEV,EAAC,OAAI,UAAWQ,EACb,UAAAJ,GAASL,EAAC,SAAM,UAAW,sFAAsFO,GAAW,gCAAgC,GAAK,SAAAF,EAAM,EACxKJ,EAAC,OAAI,UAAU,sDACb,UAAAD,EAAC,SACC,IAAI,MACJ,YAAaM,EACb,UAAWI,EACX,UAAWS,EACX,SAAUN,EACV,MAAOF,EACP,SAAUJ,EACV,UAAW,gSAAgSC,GAAS,mBAAmB,GACzU,EAEAR,EAAC,SAAM,KAAK,WAAW,UAAW,YAAa,GACjD,EACCQ,GAASR,EAAC,OAAI,UAAU,yCAA0C,SAAAQ,EAAM,GAC3E,CAEJ,EAEOY,EAAQlB","names":["init_esm_shims","useEffect","useState","jsx","jsxs","PhoneInput","onChange","value","label","placeholder","disable","error","parentClassName","autoFocus","inputValue","setInputValue","onChangeHandler","e","formattedPhoneNumber","formatPhoneNumber","input","numberInput","inputKeyDown","phoneInput_default"]}