@bigbinary/neeto-molecules 4.3.2 → 4.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist/PhoneNumber.js +3 -2
  2. package/dist/PhoneNumber.js.map +1 -1
  3. package/dist/SessionEnvironment.js +2 -1
  4. package/dist/SessionEnvironment.js.map +1 -1
  5. package/dist/cjs/PhoneNumber.js +2 -1
  6. package/dist/cjs/PhoneNumber.js.map +1 -1
  7. package/dist/cjs/SessionEnvironment.js +2 -1
  8. package/dist/cjs/SessionEnvironment.js.map +1 -1
  9. package/dist/cjs/{phone-number-ycxkC0mm.js → index.es5.min-CUvhPmKJ.js} +2 -324
  10. package/dist/cjs/index.es5.min-CUvhPmKJ.js.map +1 -0
  11. package/dist/cjs/phone-number-DIIlhFGA.js +328 -0
  12. package/dist/cjs/phone-number-DIIlhFGA.js.map +1 -0
  13. package/dist/cjs/v2/DocumentEditor.js +2 -2
  14. package/dist/cjs/v2/DocumentEditor.js.map +1 -1
  15. package/dist/cjs/v2/DynamicVariables.js +134 -0
  16. package/dist/cjs/v2/DynamicVariables.js.map +1 -0
  17. package/dist/cjs/v2/PhoneNumber.js +414 -0
  18. package/dist/cjs/v2/PhoneNumber.js.map +1 -0
  19. package/dist/{phone-number--BBsxLSh.js → index.es5.min-B2AiaKmd.js} +2 -301
  20. package/dist/index.es5.min-B2AiaKmd.js.map +1 -0
  21. package/dist/phone-number-B3OcwVZM.js +303 -0
  22. package/dist/phone-number-B3OcwVZM.js.map +1 -0
  23. package/dist/v2/DocumentEditor.js +2 -2
  24. package/dist/v2/DocumentEditor.js.map +1 -1
  25. package/dist/v2/DynamicVariables.js +132 -0
  26. package/dist/v2/DynamicVariables.js.map +1 -0
  27. package/dist/v2/PhoneNumber.js +389 -0
  28. package/dist/v2/PhoneNumber.js.map +1 -0
  29. package/package.json +3 -3
  30. package/src/translations/en.json +2 -0
  31. package/dist/cjs/phone-number-ycxkC0mm.js.map +0 -1
  32. package/dist/phone-number--BBsxLSh.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PhoneNumber.js","sources":["../../../src/v2/components/PhoneNumber/constants.js","../../../src/v2/components/PhoneNumber/CountryPicker/constants.js","../../../src/v2/components/PhoneNumber/CountryPicker/index.jsx","../../../src/v2/components/PhoneNumber/apis/neeto_ip_lookup.js","../../../src/v2/components/PhoneNumber/utils.js","../../../src/v2/components/PhoneNumber/PhoneNumberInput.jsx","../../../src/v2/components/PhoneNumber/FormikPhoneNumberInput.jsx","../../../src/v2/components/PhoneNumber/CountryPicker/SingleValue.jsx","../../../src/v2/components/PhoneNumber/PhoneNumber.jsx"],"sourcesContent":["export const IP_LOOKUP_ACCESS_TOKEN = \"083c694c79f119c7f227e737de9a5c8c\";\nexport const IP_LOOKUP_STORAGE_KEY = \"IP_LOOKUP_DETAILS_STORAGE\";\nexport const MAX_CACHE_AGE = 60 * 60 * 1000;\n","import { countries } from \"countries-list\";\nimport { getCountries } from \"libphonenumber-js/min\";\n\nexport const COUNTRY_PICKER_OPTIONS = getCountries()\n .filter(code => countries[code])\n .map(code => ({ label: countries[code].name, value: code }))\n .sort((a, b) => a.label.localeCompare(b.label));\n","import { memo, useState } from \"react\";\n\nimport {\n Button,\n Command,\n CommandEmpty,\n CommandInput,\n CommandItem,\n CommandList,\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"@bigbinary/neeto-atoms/primitives\";\nimport { countries } from \"countries-list\";\nimport i18next from \"i18next\";\nimport { ChevronDownIcon } from \"lucide-react\";\n\nimport { COUNTRY_PICKER_OPTIONS } from \"./constants\";\n\nconst CountryPicker = ({ countryCode, onChange, disabled }) => {\n const [open, setOpen] = useState(false);\n\n const handleSelect = nextValue => {\n onChange(nextValue);\n setOpen(false);\n };\n\n return (\n <Popover {...{ open }} onOpenChange={setOpen}>\n <PopoverTrigger asChild>\n <Button\n {...{ disabled }}\n className=\"neeto-molecules-phone-number-input__country-picker hover:bg-muted h-full shrink-0 gap-1 rounded-r-none border-0 bg-transparent px-2 shadow-none\"\n data-testid=\"phonenumber-country-picker\"\n size=\"sm\"\n variant=\"ghost\"\n aria-label={i18next.t(\n \"neetoMolecules.phoneNumberInput.countryCodeAriaLabel\"\n )}\n >\n <span className=\"neeto-molecules-phone-number-input__flag text-xl leading-none\">\n {countries[countryCode]?.emoji}\n </span>\n <ChevronDownIcon\n aria-hidden\n className=\"text-muted-foreground size-3\"\n />\n </Button>\n </PopoverTrigger>\n <PopoverContent\n align=\"start\"\n className=\"w-64 p-0\"\n sideOffset={4}\n onClick={event => event.stopPropagation()}\n >\n <Command>\n <CommandInput\n data-testid=\"phonenumber-country-picker-search\"\n placeholder={i18next.t(\n \"neetoMolecules.phoneNumberInput.searchCountry\"\n )}\n />\n <CommandList className=\"mt-1\">\n <CommandEmpty>\n {i18next.t(\"neetoMolecules.phoneNumberInput.noCountryFound\")}\n </CommandEmpty>\n {COUNTRY_PICKER_OPTIONS.map(({ label, value }) => (\n <CommandItem\n key={value}\n value={`${label} ${value}`}\n onSelect={() => handleSelect(value)}\n >\n <span className=\"neeto-molecules-phone-number-input__flag text-xl leading-none\">\n {countries[value]?.emoji}\n </span>\n <span>{label}</span>\n </CommandItem>\n ))}\n </CommandList>\n </Command>\n </PopoverContent>\n </Popover>\n );\n};\n\nexport default memo(CountryPicker);\n","import axios from \"axios\";\n\nimport { IP_LOOKUP_ACCESS_TOKEN } from \"../constants\";\n\nconst fetchLocationDetails = () =>\n axios.get(\n \"https://neeto-ip-lookup-web-production.neetodeployapp.com/location\",\n { headers: { \"X-ACCESS-TOKEN\": IP_LOOKUP_ACCESS_TOKEN } }\n );\n\nconst neetoIpLookupApi = { fetchLocationDetails };\nexport default neetoIpLookupApi;\n","import i18next from \"i18next\";\nimport {\n formatIncompletePhoneNumber,\n isValidPhoneNumber,\n parsePhoneNumber,\n} from \"libphonenumber-js/min\";\nimport { getFromLocalStorage, setToLocalStorage } from \"neetocommons/v2/utils\";\nimport * as yup from \"yup\";\n\nimport neetoIpLookupApi from \"./apis/neeto_ip_lookup\";\nimport { IP_LOOKUP_STORAGE_KEY, MAX_CACHE_AGE } from \"./constants\";\n\nexport const isPhoneNumberValid = (value = \"\", ...rest) =>\n isValidPhoneNumber(value, ...rest);\n\nexport const validation = (\n message = i18next.t(\"neetoMolecules.phoneNumberInput.validations.invalid\")\n) =>\n yup\n .string()\n .test(\"phoneNumber\", message, phoneNumber =>\n phoneNumber ? isValidPhoneNumber(phoneNumber) : true\n );\n\nexport const getPhoneData = (value, defaultCountryCode) => {\n try {\n const parsedValue = parsePhoneNumber(value, defaultCountryCode);\n\n return {\n phoneNumber: parsedValue.number,\n international: parsedValue.formatInternational(),\n countryCode: parsedValue.country || defaultCountryCode,\n };\n } catch {\n return {\n phoneNumber: value,\n international: formatIncompletePhoneNumber(value, defaultCountryCode),\n countryCode: defaultCountryCode,\n };\n }\n};\n\nexport const fetchLocationDetails = async () => {\n const stored = getFromLocalStorage(IP_LOOKUP_STORAGE_KEY);\n const { data, timestamp } = stored || {};\n const isCacheValid = timestamp && Date.now() - timestamp < MAX_CACHE_AGE;\n\n if (isCacheValid) return data;\n\n try {\n const details = await neetoIpLookupApi.fetchLocationDetails();\n const timestamp = Date.now();\n setToLocalStorage(IP_LOOKUP_STORAGE_KEY, { data: details, timestamp });\n\n return details;\n } catch {\n return data || null;\n }\n};\n\nexport const isNumeric = char => char >= \"0\" && char <= \"9\";\n\nexport const preserveCursor = callback => event => {\n const start = event.target.selectionStart;\n const end = event.target.selectionEnd;\n const len = event.target.value.length;\n const result = callback(event);\n const delta = event.target.value.length - len;\n event.target.setSelectionRange(start + delta, end + delta);\n\n return result;\n};\n","import { forwardRef, useState } from \"react\";\n\nimport {\n InputGroup,\n InputGroupAddon,\n InputGroupInput,\n} from \"@bigbinary/neeto-atoms/primitives\";\nimport { useQuery } from \"@tanstack/react-query\";\nimport classnames from \"classnames\";\nimport {\n formatIncompletePhoneNumber,\n getCountryCallingCode,\n} from \"libphonenumber-js/min\";\nimport { noop, findBy } from \"neetocist\";\nimport PropTypes from \"prop-types\";\n\nimport { IP_LOOKUP_STORAGE_KEY } from \"./constants\";\nimport CountryPicker from \"./CountryPicker\";\nimport { COUNTRY_PICKER_OPTIONS } from \"./CountryPicker/constants\";\nimport {\n getPhoneData,\n isNumeric,\n preserveCursor,\n fetchLocationDetails,\n} from \"./utils\";\n\nconst PhoneNumberInput = forwardRef(\n (\n {\n value = \"\",\n onChange = noop,\n className,\n error,\n selectProps,\n initialCountryCode,\n ...inputProps\n },\n ref\n ) => {\n const [countryCode, setCountryCode] = useState(\n () => getPhoneData(value).countryCode || initialCountryCode\n );\n\n const { data: ipCountry } = useQuery({\n queryKey: [IP_LOOKUP_STORAGE_KEY],\n queryFn: fetchLocationDetails,\n enabled: !countryCode,\n staleTime: Infinity,\n gcTime: Infinity,\n select: data =>\n findBy({ value: data.countryCode }, COUNTRY_PICKER_OPTIONS),\n });\n\n const finalCountryCode = countryCode || ipCountry?.value || \"US\";\n const formattedValue = formatIncompletePhoneNumber(value, finalCountryCode);\n\n const onKeyDown = preserveCursor(event => {\n if (event.key !== \"Backspace\") return;\n const left = event.target.value.substring(0, event.target.selectionStart);\n const right = event.target.value.substring(event.target.selectionEnd);\n let index = left.length - 1;\n while (index > 0 && !isNumeric(left[index])) index--;\n const newValue = left.substring(0, index + 1) + right;\n if (newValue) event.target.value = newValue;\n });\n\n const onInputChange = preserveCursor(event => {\n const phoneData = getPhoneData(event.target.value, finalCountryCode);\n event.target.value = formatIncompletePhoneNumber(event.target.value);\n setCountryCode(phoneData.countryCode);\n onChange(phoneData.phoneNumber);\n });\n\n const onChangeCountry = nextCountryCode => {\n const phoneData = getPhoneData(value, finalCountryCode);\n const prevPrefix = `+${getCountryCallingCode(phoneData.countryCode)}`;\n const nextPrefix = `+${getCountryCallingCode(nextCountryCode)}`;\n setCountryCode(nextCountryCode);\n onChange(nextPrefix + value.replace(prevPrefix, \"\"));\n };\n\n return (\n <div {...{ className }}>\n <InputGroup\n className={classnames(\n \"neeto-molecules-phone-number-input__group\",\n !!error && \"border-destructive ring-destructive/20 ring-3\"\n )}\n >\n <InputGroupAddon\n align=\"inline-start\"\n className=\"neeto-molecules-phone-number-input__addon p-0\"\n >\n <CountryPicker\n countryCode={finalCountryCode}\n onChange={onChangeCountry}\n {...selectProps}\n />\n </InputGroupAddon>\n <InputGroupInput\n {...{ onKeyDown, ref }}\n aria-invalid={!!error || undefined}\n autoComplete=\"tel\"\n data-testid=\"phonenumber-input\"\n inputMode=\"tel\"\n type=\"tel\"\n value={formattedValue}\n onChange={onInputChange}\n {...inputProps}\n />\n </InputGroup>\n {error && <p className=\"text-destructive mt-1 text-sm\">{error}</p>}\n </div>\n );\n }\n);\n\nPhoneNumberInput.displayName = \"PhoneNumberInput\";\n\nPhoneNumberInput.propTypes = {\n value: PropTypes.string,\n onChange: PropTypes.func,\n className: PropTypes.string,\n error: PropTypes.string,\n selectProps: PropTypes.object,\n initialCountryCode: PropTypes.string,\n};\n\nexport default PhoneNumberInput;\n","import { useField } from \"formik\";\n\nimport PhoneNumberInput from \"./PhoneNumberInput\";\n\nconst FormikPhoneNumberInput = ({ name, ...props }) => {\n const [field, meta, { setValue }] = useField(name);\n\n return (\n <PhoneNumberInput\n {...field}\n error={meta.touched ? meta.error : \"\"}\n onChange={setValue}\n {...props}\n />\n );\n};\n\nexport default FormikPhoneNumberInput;\n","import { memo } from \"react\";\n\nimport { Tooltip, Typography } from \"@bigbinary/neeto-atoms\";\nimport { countries } from \"countries-list\";\n\nconst SingleValue = ({ countryCode, showEmoji = false, ...otherProps }) => {\n if (!showEmoji) return null;\n\n const countryData = countries[countryCode];\n\n return (\n <Tooltip content={countryData?.name}>\n <Typography\n className=\"neeto-molecules-phone-number-input__flag cursor-pointer text-center text-xl\"\n variant=\"body2\"\n {...otherProps}\n >\n {countryData?.emoji}\n </Typography>\n </Tooltip>\n );\n};\n\nexport default memo(SingleValue);\n","import { memo } from \"react\";\n\nimport { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { isNotPresent } from \"neetocist\";\n\nimport SingleValue from \"./CountryPicker/SingleValue\";\nimport { getPhoneData } from \"./utils\";\n\nimport CopyToClipboardButton from \"../CopyToClipboardButton\";\n\nconst PhoneNumber = ({\n className,\n defaultCountry = \"IN\",\n value,\n showEmoji = false,\n children,\n linkable = false,\n linkPrefix = \"tel:\",\n showCopyButton = false,\n ...otherProps\n}) => {\n if (isNotPresent(value) && isNotPresent(children)) return null;\n\n const { international, countryCode } = getPhoneData(\n value || children,\n defaultCountry\n );\n const link = linkable ? `${linkPrefix}${value}` : undefined;\n\n return (\n <div className={classnames([\"flex items-center gap-x-2\", className])}>\n <SingleValue {...{ countryCode, showEmoji, ...otherProps }} />\n <Typography variant=\"body2\" {...otherProps}>\n {linkable ? (\n <Button\n asChild\n className=\"neeto-molecules-phone-number truncate\"\n variant=\"link\"\n >\n <a data-testid=\"phone-number-link\" href={link}>\n {international}\n </a>\n </Button>\n ) : (\n international\n )}\n </Typography>\n {showCopyButton && (\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n size=\"sm\"\n value={international}\n variant=\"ghost\"\n />\n )}\n </div>\n );\n};\nexport default memo(PhoneNumber);\n"],"names":["IP_LOOKUP_ACCESS_TOKEN","IP_LOOKUP_STORAGE_KEY","MAX_CACHE_AGE","COUNTRY_PICKER_OPTIONS","getCountries","filter","code","countries","map","label","name","value","sort","a","b","localeCompare","CountryPicker","_ref","_countries$countryCod","countryCode","onChange","disabled","_useState","useState","_useState2","_slicedToArray","open","setOpen","handleSelect","nextValue","_jsxs","Popover","onOpenChange","children","_jsx","PopoverTrigger","asChild","Button","className","size","variant","i18next","t","emoji","ChevronDownIcon","PopoverContent","align","sideOffset","onClick","event","stopPropagation","Command","CommandInput","placeholder","CommandList","CommandEmpty","_ref2","_countries$value","CommandItem","concat","onSelect","memo","fetchLocationDetails","axios","get","headers","neetoIpLookupApi","e","r","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","d","bind","length","l","TypeError","call","done","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","_regenerator","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","isPhoneNumberValid","arguments","undefined","_len","rest","Array","_key","isValidPhoneNumber","apply","validation","message","yup","string","test","phoneNumber","getPhoneData","defaultCountryCode","parsedValue","parsePhoneNumber","number","international","formatInternational","country","_unused","formatIncompletePhoneNumber","_asyncToGenerator","_callee","stored","data","timestamp","isCacheValid","details","_timestamp","_context","getFromLocalStorage","Date","now","setToLocalStorage","isNumeric","char","preserveCursor","callback","start","target","selectionStart","end","selectionEnd","len","result","delta","setSelectionRange","PhoneNumberInput","forwardRef","ref","_ref$value","_ref$onChange","noop","error","selectProps","initialCountryCode","inputProps","_objectWithoutProperties","_excluded","setCountryCode","_useQuery","useQuery","queryKey","queryFn","enabled","staleTime","Infinity","gcTime","select","findBy","ipCountry","finalCountryCode","formattedValue","onKeyDown","key","left","substring","right","index","newValue","onInputChange","phoneData","onChangeCountry","nextCountryCode","prevPrefix","getCountryCallingCode","nextPrefix","replace","InputGroup","classnames","InputGroupAddon","_objectSpread","InputGroupInput","autoComplete","inputMode","type","FormikPhoneNumberInput","props","_useField","useField","_useField2","field","meta","setValue","touched","SingleValue","_ref$showEmoji","showEmoji","otherProps","countryData","Tooltip","content","Typography","PhoneNumber","_ref$defaultCountry","defaultCountry","_ref$linkable","linkable","_ref$linkPrefix","linkPrefix","_ref$showCopyButton","showCopyButton","isNotPresent","_getPhoneData","link","href","CopyToClipboardButton"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,IAAMA,sBAAsB,GAAG,kCAAkC;AACjE,IAAMC,qBAAqB,GAAG,2BAA2B;AACzD,IAAMC,aAAa,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;;ACCpC,IAAMC,sBAAsB,GAAGC,gBAAY,EAAE,CACjDC,MAAM,CAAC,UAAAC,IAAI,EAAA;EAAA,OAAIC,4CAAS,CAACD,IAAI,CAAC;AAAA,CAAA,CAAC,CAC/BE,GAAG,CAAC,UAAAF,IAAI,EAAA;EAAA,OAAK;AAAEG,IAAAA,KAAK,EAAEF,4CAAS,CAACD,IAAI,CAAC,CAACI,IAAI;AAAEC,IAAAA,KAAK,EAAEL;GAAM;AAAA,CAAC,CAAC,CAC3DM,IAAI,CAAC,UAACC,CAAC,EAAEC,CAAC,EAAA;EAAA,OAAKD,CAAC,CAACJ,KAAK,CAACM,aAAa,CAACD,CAAC,CAACL,KAAK,CAAC;AAAA,CAAA,CAAC;;ACajD,IAAMO,eAAa,GAAG,SAAhBA,aAAaA,CAAAC,IAAA,EAA4C;AAAA,EAAA,IAAAC,qBAAA;AAAA,EAAA,IAAtCC,WAAW,GAAAF,IAAA,CAAXE,WAAW;IAAEC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IAAEC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;AACtD,EAAA,IAAAC,SAAA,GAAwBC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAhCI,IAAAA,IAAI,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,OAAO,GAAAH,UAAA,CAAA,CAAA,CAAA;AAEpB,EAAA,IAAMI,YAAY,GAAG,SAAfA,YAAYA,CAAGC,SAAS,EAAI;IAChCT,QAAQ,CAACS,SAAS,CAAC;IACnBF,OAAO,CAAC,KAAK,CAAC;EAChB,CAAC;EAED,oBACEG,eAAA,CAACC,kBAAO,EAAA;AAAOL,IAAAA,IAAI,EAAJA,IAAI;AAAIM,IAAAA,YAAY,EAAEL,OAAQ;IAAAM,QAAA,EAAA,cAC3CC,cAAA,CAACC,yBAAc,EAAA;MAACC,OAAO,EAAA,IAAA;MAAAH,QAAA,eACrBH,eAAA,CAACO,iBAAM,EAAA;AACChB,QAAAA,QAAQ,EAARA,QAAQ;AACdiB,QAAAA,SAAS,EAAC,iJAAiJ;AAC3J,QAAA,aAAA,EAAY,4BAA4B;AACxCC,QAAAA,IAAI,EAAC,IAAI;AACTC,QAAAA,OAAO,EAAC,OAAO;AACf,QAAA,YAAA,EAAYC,OAAO,CAACC,CAAC,CACnB,sDACF,CAAE;AAAAT,QAAAA,QAAA,gBAEFC,cAAA,CAAA,MAAA,EAAA;AAAMI,UAAAA,SAAS,EAAC,+DAA+D;UAAAL,QAAA,EAAA,CAAAf,qBAAA,GAC5EX,4CAAS,CAACY,WAAW,CAAC,MAAA,IAAA,IAAAD,qBAAA,KAAA,MAAA,GAAA,MAAA,GAAtBA,qBAAA,CAAwByB;AAAK,SAC1B,CAAC,eACPT,cAAA,CAACU,uBAAe,EAAA;UACd,aAAA,EAAA,IAAW;AACXN,UAAAA,SAAS,EAAC;AAA8B,SACzC,CAAC;OACI;AAAC,KACK,CAAC,eACjBJ,cAAA,CAACW,yBAAc,EAAA;AACbC,MAAAA,KAAK,EAAC,OAAO;AACbR,MAAAA,SAAS,EAAC,UAAU;AACpBS,MAAAA,UAAU,EAAE,CAAE;AACdC,MAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEC,KAAK,EAAA;AAAA,QAAA,OAAIA,KAAK,CAACC,eAAe,EAAE;MAAA,CAAC;MAAAjB,QAAA,eAE1CH,eAAA,CAACqB,kBAAO,EAAA;QAAAlB,QAAA,EAAA,cACNC,cAAA,CAACkB,uBAAY,EAAA;AACX,UAAA,aAAA,EAAY,mCAAmC;AAC/CC,UAAAA,WAAW,EAAEZ,OAAO,CAACC,CAAC,CACpB,+CACF;AAAE,SACH,CAAC,eACFZ,eAAA,CAACwB,sBAAW,EAAA;AAAChB,UAAAA,SAAS,EAAC,MAAM;UAAAL,QAAA,EAAA,cAC3BC,cAAA,CAACqB,uBAAY,EAAA;AAAAtB,YAAAA,QAAA,EACVQ,OAAO,CAACC,CAAC,CAAC,gDAAgD;AAAC,WAChD,CAAC,EACdvC,sBAAsB,CAACK,GAAG,CAAC,UAAAgD,KAAA,EAAA;AAAA,YAAA,IAAAC,gBAAA;AAAA,YAAA,IAAGhD,KAAK,GAAA+C,KAAA,CAAL/C,KAAK;cAAEE,KAAK,GAAA6C,KAAA,CAAL7C,KAAK;YAAA,oBACzCmB,eAAA,CAAC4B,sBAAW,EAAA;cAEV/C,KAAK,EAAA,EAAA,CAAAgD,MAAA,CAAKlD,KAAK,OAAAkD,MAAA,CAAIhD,KAAK,CAAG;cAC3BiD,QAAQ,EAAE,SAAVA,QAAQA,GAAA;gBAAA,OAAQhC,YAAY,CAACjB,KAAK,CAAC;cAAA,CAAC;AAAAsB,cAAAA,QAAA,gBAEpCC,cAAA,CAAA,MAAA,EAAA;AAAMI,gBAAAA,SAAS,EAAC,+DAA+D;gBAAAL,QAAA,EAAA,CAAAwB,gBAAA,GAC5ElD,4CAAS,CAACI,KAAK,CAAC,MAAA,IAAA,IAAA8C,gBAAA,KAAA,MAAA,GAAA,MAAA,GAAhBA,gBAAA,CAAkBd;eACf,CAAC,eACPT,cAAA,CAAA,MAAA,EAAA;AAAAD,gBAAAA,QAAA,EAAOxB;AAAK,eAAO,CAAC;AAAA,aAAA,EAPfE,KAQM,CAAC;AAAA,UAAA,CACf,CAAC;AAAA,SACS,CAAC;OACP;AAAC,KACI,CAAC;AAAA,GACV,CAAC;AAEd,CAAC;AAED,oBAAA,aAAekD,UAAI,CAAC7C,eAAa,CAAC;;ACjFlC,IAAM8C,sBAAoB,GAAG,SAAvBA,oBAAoBA,GAAA;AAAA,EAAA,OACxBC,KAAK,CAACC,GAAG,CACP,oEAAoE,EACpE;AAAEC,IAAAA,OAAO,EAAE;AAAE,MAAA,gBAAgB,EAAEjE;AAAuB;AAAE,GAC1D,CAAC;AAAA,CAAA;AAEH,IAAMkE,gBAAgB,GAAG;AAAEJ,EAAAA,oBAAoB,EAApBA;AAAqB,CAAC;;ACTjD,SAAA,YAAA,GAAA,qKAAA,IAAAK,CAAA,EAAAzB,CAAA,EAAA0B,CAAA,GAAA,UAAA,IAAA,OAAAC,MAAA,GAAAA,MAAA,GAAA,EAAA,EAAAC,CAAA,GAAAF,CAAA,CAAAG,QAAA,IAAA,YAAA,EAAAC,CAAA,GAAAJ,CAAA,CAAAK,WAAA,IAAA,eAAA,CAAA,CAAA,SAAAC,EAAAN,CAAA,EAAAE,CAAA,EAAAE,CAAA,EAAAE,CAAA,EAAA,EAAA,IAAAC,CAAA,GAAAL,CAAA,IAAAA,CAAA,CAAAM,SAAA,YAAAC,SAAA,GAAAP,CAAA,GAAAO,SAAA,EAAAC,CAAA,GAAAC,MAAA,CAAAC,MAAA,CAAAL,CAAA,CAAAC,SAAA,CAAA,CAAA,CAAA,OAAAK,mBAAA,CAAAH,CAAA,EAAA,SAAA,EAAA,UAAAV,CAAA,EAAAE,CAAA,EAAAE,CAAA,EAAA,EAAA,IAAAE,CAAA,EAAAC,CAAA,EAAAG,CAAA,EAAAI,CAAA,GAAA,CAAA,EAAAC,CAAA,GAAAX,CAAA,IAAA,EAAA,EAAAY,CAAA,GAAA,KAAA,EAAAC,CAAA,GAAA,EAAAF,CAAA,EAAA,CAAA,EAAAb,CAAA,EAAA,CAAA,EAAAgB,CAAA,EAAAnB,CAAA,EAAAtD,CAAA,EAAA0E,CAAA,EAAAL,CAAA,EAAAK,CAAA,CAAAC,IAAA,CAAArB,CAAA,EAAA,CAAA,CAAA,EAAAoB,CAAA,WAAAA,CAAAA,CAAA7C,CAAA,EAAA0B,CAAA,WAAAM,CAAA,GAAAhC,CAAA,EAAAiC,CAAA,GAAA,CAAA,EAAAG,CAAA,GAAAX,CAAA,EAAAkB,CAAA,CAAAf,CAAA,GAAAF,CAAA,EAAAvD,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,SAAA0E,EAAAnB,CAAA,EAAAE,CAAA,EAAA,EAAA,KAAAK,CAAA,GAAAP,CAAA,EAAAU,CAAA,GAAAR,CAAA,EAAA5B,CAAA,OAAA0C,CAAA,IAAAF,CAAA,IAAA,CAAAV,CAAA,IAAA9B,CAAA,GAAAyC,CAAA,CAAAM,MAAA,EAAA/C,CAAA,UAAA8B,CAAA,EAAAE,CAAA,GAAAS,CAAA,CAAAzC,CAAA,CAAA,EAAA6C,CAAA,GAAAF,CAAA,CAAAF,CAAA,EAAAO,CAAA,GAAAhB,CAAA,KAAAN,CAAA,GAAA,CAAA,GAAA,CAAAI,CAAA,GAAAkB,CAAA,KAAApB,CAAA,MAAAQ,CAAA,GAAAJ,CAAA,CAAA,CAAAC,CAAA,GAAAD,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,IAAAC,CAAA,GAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAAD,CAAA,CAAA,CAAA,CAAA,GAAAA,CAAA,CAAA,CAAA,CAAA,GAAAP,CAAA,IAAAO,CAAA,CAAA,CAAA,CAAA,IAAAa,CAAA,KAAA,CAAAf,CAAA,GAAAJ,CAAA,GAAA,CAAA,IAAAmB,CAAA,GAAAb,CAAA,CAAA,CAAA,CAAA,KAAAC,CAAA,MAAAU,CAAA,CAAAC,CAAA,GAAAhB,CAAA,EAAAe,CAAA,CAAAf,CAAA,GAAAI,CAAA,CAAA,CAAA,CAAA,IAAAa,CAAA,GAAAG,CAAA,KAAAlB,CAAA,GAAAJ,CAAA,GAAA,CAAA,IAAAM,CAAA,CAAA,CAAA,CAAA,GAAAJ,CAAA,IAAAA,CAAA,GAAAoB,CAAA,MAAAhB,CAAA,CAAA,CAAA,CAAA,GAAAN,CAAA,EAAAM,CAAA,CAAA,CAAA,CAAA,GAAAJ,CAAA,EAAAe,CAAA,CAAAf,CAAA,GAAAoB,CAAA,EAAAf,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAAH,CAAA,IAAAJ,CAAA,GAAA,CAAA,EAAA,OAAAvD,CAAA,CAAA,CAAA,MAAAuE,CAAA,GAAA,IAAA,EAAAd,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,UAAAE,CAAA,EAAAW,CAAA,EAAAO,CAAA,EAAA,EAAA,IAAAR,CAAA,GAAA,CAAA,EAAA,MAAAS,SAAA,CAAA,8BAAA,CAAA,CAAA,CAAA,KAAAP,CAAA,UAAAD,CAAA,IAAAI,CAAA,CAAAJ,CAAA,EAAAO,CAAA,CAAA,EAAAf,CAAA,GAAAQ,CAAA,EAAAL,CAAA,GAAAY,CAAA,EAAA,CAAAhD,CAAA,GAAAiC,CAAA,GAAA,CAAA,GAAAR,CAAA,GAAAW,CAAA,KAAA,CAAAM,CAAA,GAAA,EAAAV,CAAA,KAAAC,CAAA,GAAAA,CAAA,GAAA,CAAA,IAAAA,CAAA,GAAA,CAAA,KAAAU,CAAA,CAAAf,CAAA,GAAA,EAAA,CAAA,EAAAiB,CAAA,CAAAZ,CAAA,EAAAG,CAAA,CAAA,IAAAO,CAAA,CAAAf,CAAA,GAAAQ,CAAA,GAAAO,CAAA,CAAAC,CAAA,GAAAR,CAAA,aAAAI,CAAA,GAAA,CAAA,EAAAR,CAAA,EAAA,EAAA,IAAAC,CAAA,KAAAH,CAAA,GAAA,MAAA,CAAA,EAAA9B,CAAA,GAAAgC,CAAA,CAAAF,CAAA,WAAA9B,CAAA,GAAAA,CAAA,CAAAkD,IAAA,CAAAlB,CAAA,EAAAI,CAAA,CAAA,CAAA,EAAA,MAAAa,SAAA,CAAA,kCAAA,CAAA,CAAA,CAAA,IAAA,CAAAjD,CAAA,CAAAmD,IAAA,EAAA,OAAAnD,CAAA,CAAA,CAAAoC,CAAA,GAAApC,CAAA,CAAA/B,KAAA,EAAAgE,CAAA,GAAA,CAAA,KAAAA,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAAA,CAAA,KAAAA,CAAA,KAAAjC,CAAA,GAAAgC,CAAA,CAAA,QAAA,CAAA,CAAA,IAAAhC,CAAA,CAAAkD,IAAA,CAAAlB,CAAA,CAAA,EAAAC,CAAA,SAAAG,CAAA,GAAAa,SAAA,CAAA,mCAAA,GAAAnB,CAAA,GAAA,UAAA,CAAA,EAAAG,CAAA,GAAA,CAAA,CAAA,CAAA,CAAAD,CAAA,GAAAP,CAAA,CAAA,CAAA,CAAA,MAAA,IAAA,CAAAzB,CAAA,IAAA0C,CAAA,GAAAC,CAAA,CAAAf,CAAA,GAAA,CAAA,IAAAQ,CAAA,GAAAV,CAAA,CAAAwB,IAAA,CAAAtB,CAAA,EAAAe,CAAA,CAAA,MAAAxE,CAAA,EAAA,MAAA,CAAA,CAAA,CAAA,OAAA6B,CAAA,EAAA,EAAAgC,CAAA,GAAAP,CAAA,EAAAQ,CAAA,GAAA,CAAA,EAAAG,CAAA,GAAApC,CAAA,CAAA,CAAA,CAAA,SAAA,EAAAwC,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,EAAAvE,KAAA,EAAA+B,CAAA,EAAAmD,IAAA,EAAAT,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAhB,CAAA,EAAAI,CAAA,EAAAE,CAAA,CAAA,EAAA,IAAA,CAAA,EAAAI,CAAA,CAAA,CAAA,CAAA,CAAA,IAAAjE,CAAA,GAAA,EAAA,CAAA,CAAA,SAAAgE,SAAAA,eAAAiB,iBAAAA,GAAA,CAAA,CAAA,CAAA,SAAAC,0BAAAA,GAAA,CAAA,CAAA,CAAArD,CAAA,GAAAqC,MAAA,CAAAiB,cAAA,CAAA,CAAA,IAAArB,CAAA,GAAA,EAAA,CAAAL,CAAA,CAAA,GAAA5B,CAAA,CAAAA,CAAA,IAAA4B,CAAA,CAAA,EAAA,CAAA,CAAA,IAAAW,mBAAA,CAAAvC,CAAA,GAAA,EAAA,EAAA4B,CAAA,EAAA,YAAA,EAAA,OAAA,IAAA,CAAA,CAAA,CAAA,CAAA,EAAA5B,CAAA,GAAAoC,CAAA,GAAAiB,0BAAA,CAAAnB,SAAA,GAAAC,SAAA,CAAAD,SAAA,GAAAG,MAAA,CAAAC,MAAA,CAAAL,CAAA,CAAA,CAAA,CAAA,SAAAO,CAAAA,CAAAf,CAAA,WAAAY,MAAA,CAAAkB,cAAA,GAAAlB,MAAA,CAAAkB,cAAA,CAAA9B,CAAA,EAAA4B,0BAAA,CAAA,IAAA5B,CAAA,CAAA+B,SAAA,GAAAH,0BAAA,EAAAd,mBAAA,CAAAd,CAAA,EAAAK,CAAA,EAAA,mBAAA,CAAA,CAAA,EAAAL,CAAA,CAAAS,SAAA,GAAAG,MAAA,CAAAC,MAAA,CAAAF,CAAA,CAAA,EAAAX,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA2B,iBAAA,CAAAlB,SAAA,GAAAmB,0BAAA,EAAAd,mBAAA,CAAAH,CAAA,iBAAAiB,0BAAA,CAAA,EAAAd,mBAAA,CAAAc,0BAAA,EAAA,aAAA,EAAAD,iBAAA,CAAA,EAAAA,iBAAA,CAAAK,WAAA,GAAA,mBAAA,EAAAlB,mBAAA,CAAAc,0BAAA,EAAAvB,CAAA,EAAA,mBAAA,CAAA,EAAAS,mBAAA,CAAAH,CAAA,CAAA,EAAAG,mBAAA,CAAAH,CAAA,EAAAN,CAAA,EAAA,WAAA,CAAA,EAAAS,mBAAA,CAAAH,CAAA,EAAAR,CAAA,EAAA,YAAA,EAAA,OAAA,IAAA,CAAA,CAAA,CAAA,CAAA,EAAAW,mBAAA,CAAAH,CAAA,8DAAAsB,YAAA,GAAA,SAAAA,YAAAA,GAAA,EAAA,OAAA,EAAAC,CAAA,EAAA3B,CAAA,EAAA4B,CAAA,EAAApB,CAAA,EAAA,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA;AAAA,SAAAD,mBAAAA,CAAAd,CAAA,EAAAC,CAAA,EAAAE,CAAA,EAAA5B,CAAA,EAAA,EAAA,IAAAgC,CAAA,GAAAK,MAAA,CAAAwB,cAAA,CAAA,CAAA,IAAA,EAAA7B,CAAA,uBAAAP,CAAA,EAAA,EAAAO,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAAO,mBAAA,GAAA,SAAAuB,mBAAArC,CAAA,EAAAC,CAAA,EAAAE,CAAA,EAAA5B,CAAA,EAAA,EAAA,SAAA8B,CAAAA,CAAAJ,CAAA,EAAAE,CAAA,IAAAW,mBAAA,CAAAd,CAAA,EAAAC,CAAA,YAAAD,CAAA,EAAA,EAAA,OAAA,IAAA,CAAAsC,OAAA,CAAArC,CAAA,EAAAE,CAAA,EAAAH,CAAA,SAAAC,CAAA,GAAAM,CAAA,GAAAA,CAAA,CAAAP,CAAA,EAAAC,CAAA,IAAAzD,KAAA,EAAA2D,CAAA,EAAAoC,UAAA,GAAAhE,CAAA,EAAAiE,YAAA,EAAA,CAAAjE,CAAA,EAAAkE,QAAA,EAAA,CAAAlE,CAAA,MAAAyB,CAAA,CAAAC,CAAA,CAAA,GAAAE,CAAA,IAAAE,CAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAAA,CAAA,cAAAA,CAAA,CAAA,QAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAAS,mBAAA,CAAAd,CAAA,EAAAC,CAAA,EAAAE,CAAA,EAAA5B,CAAA,CAAA,CAAA,CAAA;AAWO,IAAMmE,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAA;AAAA,EAAA,IAAIlG,KAAK,GAAAmG,SAAA,CAAArB,MAAA,GAAA,CAAA,IAAAqB,SAAA,CAAA,CAAA,CAAA,KAAAC,SAAA,GAAAD,SAAA,CAAA,CAAA,CAAA,GAAG,EAAE;EAAA,KAAA,IAAAE,IAAA,GAAAF,SAAA,CAAArB,MAAA,EAAKwB,IAAI,OAAAC,KAAA,CAAAF,IAAA,GAAA,CAAA,GAAAA,IAAA,WAAAG,IAAA,GAAA,CAAA,EAAAA,IAAA,GAAAH,IAAA,EAAAG,IAAA,EAAA,EAAA;AAAJF,IAAAA,IAAI,CAAAE,IAAA,GAAA,CAAA,CAAA,GAAAL,SAAA,CAAAK,IAAA,CAAA;AAAA,EAAA;EAAA,OACpDC,sBAAkB,CAAAC,KAAA,CAAA,MAAA,EAAA,CAAC1G,KAAK,CAAA,CAAAgD,MAAA,CAAKsD,IAAI,CAAA,CAAC;AAAA;AAE7B,IAAMK,UAAU,GAAG,SAAbA,UAAUA,GAAA;AAAA,EAAA,IACrBC,OAAO,GAAAT,SAAA,CAAArB,MAAA,QAAAqB,SAAA,CAAA,CAAA,CAAA,KAAAC,SAAA,GAAAD,SAAA,CAAA,CAAA,CAAA,GAAGrE,OAAO,CAACC,CAAC,CAAC,qDAAqD,CAAC;AAAA,EAAA,OAE1E8E,cAAG,CACAC,MAAM,EAAE,CACRC,IAAI,CAAC,aAAa,EAAEH,OAAO,EAAE,UAAAI,WAAW,EAAA;AAAA,IAAA,OACvCA,WAAW,GAAGP,sBAAkB,CAACO,WAAW,CAAC,GAAG,IAAI;AAAA,EAAA,CACtD,CAAC;AAAA;AAEE,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAIjH,KAAK,EAAEkH,kBAAkB,EAAK;EACzD,IAAI;AACF,IAAA,IAAMC,WAAW,GAAGC,oBAAgB,CAACpH,KAAK,EAAEkH,kBAAkB,CAAC;IAE/D,OAAO;MACLF,WAAW,EAAEG,WAAW,CAACE,MAAM;AAC/BC,MAAAA,aAAa,EAAEH,WAAW,CAACI,mBAAmB,EAAE;AAChD/G,MAAAA,WAAW,EAAE2G,WAAW,CAACK,OAAO,IAAIN;KACrC;EACH,CAAC,CAAC,OAAAO,OAAA,EAAM;IACN,OAAO;AACLT,MAAAA,WAAW,EAAEhH,KAAK;AAClBsH,MAAAA,aAAa,EAAEI,+BAA2B,CAAC1H,KAAK,EAAEkH,kBAAkB,CAAC;AACrE1G,MAAAA,WAAW,EAAE0G;KACd;AACH,EAAA;AACF,CAAC;AAEM,IAAM/D,oBAAoB,gBAAA,YAAA;EAAA,IAAA7C,IAAA,GAAAqH,iBAAA,cAAAlC,YAAA,EAAA,CAAAE,CAAA,CAAG,SAAAiC,OAAAA,GAAA;AAAA,IAAA,IAAAC,MAAA,CAAA,CAAAhF,KAAA,CAAA,CAAAiF,IAAA,CAAA,CAAAC,SAAA,CAAA,CAAAC,YAAA,CAAA,CAAAC,OAAA,CAAA,CAAAC,UAAA;AAAA,IAAA,OAAAzC,YAAA,EAAA,CAAAC,CAAA,CAAA,UAAAyC,QAAA,EAAA;AAAA,MAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAA3D,CAAA,GAAA2D,QAAA,CAAAxE,CAAA;AAAA,QAAA,KAAA,CAAA;AAC5BkE,UAAAA,MAAM,GAAGO,yBAAmB,CAAC9I,qBAAqB,CAAC;AAAAuD,UAAAA,KAAA,GAC7BgF,MAAM,IAAI,EAAE,EAAhCC,IAAI,GAAAjF,KAAA,CAAJiF,IAAI,EAAEC,SAAS,GAAAlF,KAAA,CAATkF,SAAS;UACjBC,YAAY,GAAGD,SAAS,IAAIM,IAAI,CAACC,GAAG,EAAE,GAAGP,SAAS,GAAGxI,aAAa;AAAA,UAAA,IAAA,CAEpEyI,YAAY,EAAA;AAAAG,YAAAA,QAAA,CAAAxE,CAAA,GAAA,CAAA;AAAA,YAAA;AAAA,UAAA;AAAA,UAAA,OAAAwE,QAAA,CAAAjI,CAAA,CAAA,CAAA,EAAS4H,IAAI,CAAA;AAAA,QAAA,KAAA,CAAA;AAAAK,UAAAA,QAAA,CAAA3D,CAAA,GAAA,CAAA;AAAA2D,UAAAA,QAAA,CAAAxE,CAAA,GAAA,CAAA;AAAA,UAAA,OAGLJ,gBAAgB,CAACJ,oBAAoB,EAAE;AAAA,QAAA,KAAA,CAAA;UAAvD8E,OAAO,GAAAE,QAAA,CAAAxD,CAAA;AACPoD,UAAAA,UAAS,GAAGM,IAAI,CAACC,GAAG,EAAE;UAC5BC,uBAAiB,CAACjJ,qBAAqB,EAAE;AAAEwI,YAAAA,IAAI,EAAEG,OAAO;AAAEF,YAAAA,SAAS,EAATA;AAAU,WAAC,CAAC;AAAC,UAAA,OAAAI,QAAA,CAAAjI,CAAA,CAAA,CAAA,EAEhE+H,OAAO,CAAA;AAAA,QAAA,KAAA,CAAA;AAAAE,UAAAA,QAAA,CAAA3D,CAAA,GAAA,CAAA;UAAA2D,QAAA,CAAAxD,CAAA;AAAA,UAAA,OAAAwD,QAAA,CAAAjI,CAAA,CAAA,CAAA,EAEP4H,IAAI,IAAI,IAAI,CAAA;AAAA;AAAA,IAAA,CAAA,EAAAF,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;EAAA,CAEtB,CAAA,CAAA;AAAA,EAAA,OAAA,SAhBYzE,oBAAoBA,GAAA;AAAA,IAAA,OAAA7C,IAAA,CAAAoG,KAAA,CAAA,IAAA,EAAAP,SAAA,CAAA;AAAA,EAAA,CAAA;AAAA,CAAA,EAgBhC;AAEM,IAAMqC,SAAS,GAAG,SAAZA,SAASA,CAAGC,KAAI,EAAA;AAAA,EAAA,OAAIA,KAAI,IAAI,GAAG,IAAIA,KAAI,IAAI,GAAG;AAAA,CAAA;AAEpD,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,CAAGC,QAAQ,EAAA;EAAA,OAAI,UAAArG,KAAK,EAAI;AACjD,IAAA,IAAMsG,KAAK,GAAGtG,KAAK,CAACuG,MAAM,CAACC,cAAc;AACzC,IAAA,IAAMC,GAAG,GAAGzG,KAAK,CAACuG,MAAM,CAACG,YAAY;IACrC,IAAMC,GAAG,GAAG3G,KAAK,CAACuG,MAAM,CAAC7I,KAAK,CAAC8E,MAAM;AACrC,IAAA,IAAMoE,MAAM,GAAGP,QAAQ,CAACrG,KAAK,CAAC;IAC9B,IAAM6G,KAAK,GAAG7G,KAAK,CAACuG,MAAM,CAAC7I,KAAK,CAAC8E,MAAM,GAAGmE,GAAG;AAC7C3G,IAAAA,KAAK,CAACuG,MAAM,CAACO,iBAAiB,CAACR,KAAK,GAAGO,KAAK,EAAEJ,GAAG,GAAGI,KAAK,CAAC;AAE1D,IAAA,OAAOD,MAAM;EACf,CAAC;AAAA,CAAA;;;;;AC7CD,IAAMG,gBAAgB,gBAAGC,gBAAU,CACjC,UAAAhJ,IAAA,EAUEiJ,GAAG,EACA;AAAA,EAAA,IAAAC,UAAA,GAAAlJ,IAAA,CATDN,KAAK;AAALA,IAAAA,KAAK,GAAAwJ,UAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,UAAA;IAAAC,aAAA,GAAAnJ,IAAA,CACVG,QAAQ;AAARA,IAAAA,QAAQ,GAAAgJ,aAAA,KAAA,MAAA,GAAGC,cAAI,GAAAD,aAAA;IACf9H,SAAS,GAAArB,IAAA,CAATqB,SAAS;IACTgI,KAAK,GAAArJ,IAAA,CAALqJ,KAAK;IACLC,WAAW,GAAAtJ,IAAA,CAAXsJ,WAAW;IACXC,kBAAkB,GAAAvJ,IAAA,CAAlBuJ,kBAAkB;AACfC,IAAAA,UAAU,GAAAC,wBAAA,CAAAzJ,IAAA,EAAA0J,WAAA,CAAA;EAIf,IAAArJ,SAAA,GAAsCC,cAAQ,CAC5C,YAAA;AAAA,MAAA,OAAMqG,YAAY,CAACjH,KAAK,CAAC,CAACQ,WAAW,IAAIqJ,kBAAkB;AAAA,IAAA,CAC7D,CAAC;IAAAhJ,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAFMH,IAAAA,WAAW,GAAAK,UAAA,CAAA,CAAA,CAAA;AAAEoJ,IAAAA,cAAc,GAAApJ,UAAA,CAAA,CAAA,CAAA;EAIlC,IAAAqJ,SAAA,GAA4BC,mBAAQ,CAAC;MACnCC,QAAQ,EAAE,CAAC9K,qBAAqB,CAAC;AACjC+K,MAAAA,OAAO,EAAElH,oBAAoB;MAC7BmH,OAAO,EAAE,CAAC9J,WAAW;AACrB+J,MAAAA,SAAS,EAAEC,QAAQ;AACnBC,MAAAA,MAAM,EAAED,QAAQ;AAChBE,MAAAA,MAAM,EAAE,SAARA,MAAMA,CAAE5C,IAAI,EAAA;AAAA,QAAA,OACV6C,gBAAM,CAAC;UAAE3K,KAAK,EAAE8H,IAAI,CAACtH;SAAa,EAAEhB,sBAAsB,CAAC;AAAA,MAAA;AAC/D,KAAC,CAAC;IARYoL,SAAS,GAAAV,SAAA,CAAfpC,IAAI;AAUZ,EAAA,IAAM+C,gBAAgB,GAAGrK,WAAW,KAAIoK,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,MAAA,GAAA,MAAA,GAATA,SAAS,CAAE5K,KAAK,CAAA,IAAI,IAAI;AAChE,EAAA,IAAM8K,cAAc,GAAGpD,+BAA2B,CAAC1H,KAAK,EAAE6K,gBAAgB,CAAC;AAE3E,EAAA,IAAME,SAAS,GAAGrC,cAAc,CAAC,UAAApG,KAAK,EAAI;AACxC,IAAA,IAAIA,KAAK,CAAC0I,GAAG,KAAK,WAAW,EAAE;AAC/B,IAAA,IAAMC,IAAI,GAAG3I,KAAK,CAACuG,MAAM,CAAC7I,KAAK,CAACkL,SAAS,CAAC,CAAC,EAAE5I,KAAK,CAACuG,MAAM,CAACC,cAAc,CAAC;AACzE,IAAA,IAAMqC,KAAK,GAAG7I,KAAK,CAACuG,MAAM,CAAC7I,KAAK,CAACkL,SAAS,CAAC5I,KAAK,CAACuG,MAAM,CAACG,YAAY,CAAC;AACrE,IAAA,IAAIoC,KAAK,GAAGH,IAAI,CAACnG,MAAM,GAAG,CAAC;AAC3B,IAAA,OAAOsG,KAAK,GAAG,CAAC,IAAI,CAAC5C,SAAS,CAACyC,IAAI,CAACG,KAAK,CAAC,CAAC,EAAEA,KAAK,EAAE;AACpD,IAAA,IAAMC,QAAQ,GAAGJ,IAAI,CAACC,SAAS,CAAC,CAAC,EAAEE,KAAK,GAAG,CAAC,CAAC,GAAGD,KAAK;IACrD,IAAIE,QAAQ,EAAE/I,KAAK,CAACuG,MAAM,CAAC7I,KAAK,GAAGqL,QAAQ;AAC7C,EAAA,CAAC,CAAC;AAEF,EAAA,IAAMC,aAAa,GAAG5C,cAAc,CAAC,UAAApG,KAAK,EAAI;IAC5C,IAAMiJ,SAAS,GAAGtE,YAAY,CAAC3E,KAAK,CAACuG,MAAM,CAAC7I,KAAK,EAAE6K,gBAAgB,CAAC;AACpEvI,IAAAA,KAAK,CAACuG,MAAM,CAAC7I,KAAK,GAAG0H,+BAA2B,CAACpF,KAAK,CAACuG,MAAM,CAAC7I,KAAK,CAAC;AACpEiK,IAAAA,cAAc,CAACsB,SAAS,CAAC/K,WAAW,CAAC;AACrCC,IAAAA,QAAQ,CAAC8K,SAAS,CAACvE,WAAW,CAAC;AACjC,EAAA,CAAC,CAAC;AAEF,EAAA,IAAMwE,eAAe,GAAG,SAAlBA,eAAeA,CAAGC,eAAe,EAAI;AACzC,IAAA,IAAMF,SAAS,GAAGtE,YAAY,CAACjH,KAAK,EAAE6K,gBAAgB,CAAC;IACvD,IAAMa,UAAU,GAAA,GAAA,CAAA1I,MAAA,CAAO2I,yBAAqB,CAACJ,SAAS,CAAC/K,WAAW,CAAC,CAAE;IACrE,IAAMoL,UAAU,OAAA5I,MAAA,CAAO2I,yBAAqB,CAACF,eAAe,CAAC,CAAE;IAC/DxB,cAAc,CAACwB,eAAe,CAAC;IAC/BhL,QAAQ,CAACmL,UAAU,GAAG5L,KAAK,CAAC6L,OAAO,CAACH,UAAU,EAAE,EAAE,CAAC,CAAC;EACtD,CAAC;AAED,EAAA,oBACEvK,eAAA,CAAA,KAAA,EAAA;AAAWQ,IAAAA,SAAS,EAATA,SAAS;IAAAL,QAAA,EAAA,cAClBH,eAAA,CAAC2K,qBAAU,EAAA;MACTnK,SAAS,EAAEoK,UAAU,CACnB,2CAA2C,EAC3C,CAAC,CAACpC,KAAK,IAAI,+CACb,CAAE;MAAArI,QAAA,EAAA,cAEFC,cAAA,CAACyK,0BAAe,EAAA;AACd7J,QAAAA,KAAK,EAAC,cAAc;AACpBR,QAAAA,SAAS,EAAC,+CAA+C;AAAAL,QAAAA,QAAA,eAEzDC,cAAA,CAAClB,aAAa,EAAA4L,eAAA,CAAA;AACZzL,UAAAA,WAAW,EAAEqK,gBAAiB;AAC9BpK,UAAAA,QAAQ,EAAE+K;AAAgB,SAAA,EACtB5B,WAAW,CAChB;AAAC,OACa,CAAC,eAClBrI,cAAA,CAAC2K,0BAAe,EAAAD,eAAA,CAAA;AACRlB,QAAAA,SAAS,EAATA,SAAS;AAAExB,QAAAA,GAAG,EAAHA,GAAG;AACpB,QAAA,cAAA,EAAc,CAAC,CAACI,KAAK,IAAIvD,SAAU;AACnC+F,QAAAA,YAAY,EAAC,KAAK;AAClB,QAAA,aAAA,EAAY,mBAAmB;AAC/BC,QAAAA,SAAS,EAAC,KAAK;AACfC,QAAAA,IAAI,EAAC,KAAK;AACVrM,QAAAA,KAAK,EAAE8K,cAAe;AACtBrK,QAAAA,QAAQ,EAAE6K;OAAc,EACpBxB,UAAU,CACf,CAAC;AAAA,KACQ,CAAC,EACZH,KAAK,iBAAIpI,cAAA,CAAA,GAAA,EAAA;AAAGI,MAAAA,SAAS,EAAC,+BAA+B;AAAAL,MAAAA,QAAA,EAAEqI;AAAK,KAAI,CAAC;AAAA,GAC/D,CAAC;AAEV,CACF;AAEAN,gBAAgB,CAAC7D,WAAW,GAAG,kBAAkB;;;;;ACjHjD,IAAM8G,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAAhM,IAAA,EAA2B;AAAA,EAAA,IAArBP,IAAI,GAAAO,IAAA,CAAJP,IAAI;AAAKwM,IAAAA,KAAK,GAAAxC,wBAAA,CAAAzJ,IAAA,EAAA0J,WAAA,CAAA;AAC9C,EAAA,IAAAwC,SAAA,GAAoCC,eAAQ,CAAC1M,IAAI,CAAC;IAAA2M,UAAA,GAAA5L,cAAA,CAAA0L,SAAA,EAAA,CAAA,CAAA;AAA3CG,IAAAA,KAAK,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,IAAI,GAAAF,UAAA,CAAA,CAAA,CAAA;IAAIG,QAAQ,GAAAH,UAAA,CAAA,CAAA,CAAA,CAARG,QAAQ;EAE9B,oBACEtL,cAAA,CAAC8H,gBAAgB,EAAA4C,eAAA,CAAAA,eAAA,KACXU,KAAK,CAAA,EAAA,EAAA,EAAA;IACThD,KAAK,EAAEiD,IAAI,CAACE,OAAO,GAAGF,IAAI,CAACjD,KAAK,GAAG,EAAG;AACtClJ,IAAAA,QAAQ,EAAEoM;GAAS,EACfN,KAAK,CACV,CAAC;AAEN;;;;;;;;ACVA,IAAMQ,aAAW,GAAG,SAAdA,WAAWA,CAAAzM,IAAA,EAA0D;AAAA,EAAA,IAApDE,WAAW,GAAAF,IAAA,CAAXE,WAAW;IAAAwM,cAAA,GAAA1M,IAAA,CAAE2M,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,cAAA;AAAKE,IAAAA,UAAU,GAAAnD,wBAAA,CAAAzJ,IAAA,EAAA0J,WAAA,CAAA;AAClE,EAAA,IAAI,CAACiD,SAAS,EAAE,OAAO,IAAI;AAE3B,EAAA,IAAME,WAAW,GAAGvN,4CAAS,CAACY,WAAW,CAAC;EAE1C,oBACEe,cAAA,CAAC6L,kBAAO,EAAA;AAACC,IAAAA,OAAO,EAAEF,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,MAAA,GAAA,MAAA,GAAXA,WAAW,CAAEpN,IAAK;AAAAuB,IAAAA,QAAA,eAClCC,cAAA,CAAC+L,qBAAU,EAAArB,eAAA,CAAAA,eAAA,CAAA;AACTtK,MAAAA,SAAS,EAAC,6EAA6E;AACvFE,MAAAA,OAAO,EAAC;AAAO,KAAA,EACXqL,UAAU,CAAA,EAAA,EAAA,EAAA;AAAA5L,MAAAA,QAAA,EAEb6L,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,MAAA,GAAA,MAAA,GAAXA,WAAW,CAAEnL;KAAK,CACT;AAAC,GACN,CAAC;AAEd,CAAC;AAED,kBAAA,aAAekB,UAAI,CAAC6J,aAAW,CAAC;;;;;ACZhC,IAAMQ,WAAW,GAAG,SAAdA,WAAWA,CAAAjN,IAAA,EAUX;AAAA,EAAA,IATJqB,SAAS,GAAArB,IAAA,CAATqB,SAAS;IAAA6L,mBAAA,GAAAlN,IAAA,CACTmN,cAAc;AAAdA,IAAAA,cAAc,GAAAD,mBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,mBAAA;IACrBxN,KAAK,GAAAM,IAAA,CAALN,KAAK;IAAAgN,cAAA,GAAA1M,IAAA,CACL2M,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,cAAA;IACjB1L,QAAQ,GAAAhB,IAAA,CAARgB,QAAQ;IAAAoM,aAAA,GAAApN,IAAA,CACRqN,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,aAAA;IAAAE,eAAA,GAAAtN,IAAA,CAChBuN,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAA,MAAA,GAAG,MAAM,GAAAA,eAAA;IAAAE,mBAAA,GAAAxN,IAAA,CACnByN,cAAc;AAAdA,IAAAA,cAAc,GAAAD,mBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,mBAAA;AACnBZ,IAAAA,UAAU,GAAAnD,wBAAA,CAAAzJ,IAAA,EAAA0J,SAAA,CAAA;EAEb,IAAIgE,sBAAY,CAAChO,KAAK,CAAC,IAAIgO,sBAAY,CAAC1M,QAAQ,CAAC,EAAE,OAAO,IAAI;EAE9D,IAAA2M,aAAA,GAAuChH,YAAY,CACjDjH,KAAK,IAAIsB,QAAQ,EACjBmM,cACF,CAAC;IAHOnG,aAAa,GAAA2G,aAAA,CAAb3G,aAAa;IAAE9G,WAAW,GAAAyN,aAAA,CAAXzN,WAAW;AAIlC,EAAA,IAAM0N,IAAI,GAAGP,QAAQ,GAAA,EAAA,CAAA3K,MAAA,CAAM6K,UAAU,CAAA,CAAA7K,MAAA,CAAGhD,KAAK,CAAA,GAAKoG,SAAS;AAE3D,EAAA,oBACEjF,eAAA,CAAA,KAAA,EAAA;IAAKQ,SAAS,EAAEoK,UAAU,CAAC,CAAC,2BAA2B,EAAEpK,SAAS,CAAC,CAAE;AAAAL,IAAAA,QAAA,gBACnEC,cAAA,CAACwL,WAAW,EAAAd,aAAA,KAAAA,aAAA,CAAA;AAAOzL,MAAAA,WAAW,EAAXA,WAAW;AAAEyM,MAAAA,SAAS,EAATA;KAAS,EAAKC,UAAU,CAAA,CAAK,CAAC,eAC9D3L,cAAA,CAAC+L,qBAAU,EAAArB,aAAA,CAAAA,aAAA,CAAA;AAACpK,MAAAA,OAAO,EAAC;AAAO,KAAA,EAAKqL,UAAU,CAAA,EAAA,EAAA,EAAA;AAAA5L,MAAAA,QAAA,EACvCqM,QAAQ,gBACPpM,cAAA,CAACG,iBAAM,EAAA;QACLD,OAAO,EAAA,IAAA;AACPE,QAAAA,SAAS,EAAC,uCAAuC;AACjDE,QAAAA,OAAO,EAAC,MAAM;AAAAP,QAAAA,QAAA,eAEdC,cAAA,CAAA,GAAA,EAAA;AAAG,UAAA,aAAA,EAAY,mBAAmB;AAAC4M,UAAAA,IAAI,EAAED,IAAK;AAAA5M,UAAAA,QAAA,EAC3CgG;SACA;AAAC,OACE,CAAC,GAETA;AACD,KAAA,CACS,CAAC,EACZyG,cAAc,iBACbxM,cAAA,CAAC6M,wBAAqB,EAAA;AACpBzM,MAAAA,SAAS,EAAC,eAAe;AACzBC,MAAAA,IAAI,EAAC,IAAI;AACT5B,MAAAA,KAAK,EAAEsH,aAAc;AACrBzF,MAAAA,OAAO,EAAC;AAAO,KAChB,CACF;AAAA,GACE,CAAC;AAEV,CAAC;AACD,0BAAA,aAAeqB,UAAI,CAACqK,WAAW,CAAC;;;;;;;;"}
@@ -1,29 +1,4 @@
1
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
- import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
3
- import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
4
- import { memo, useState, forwardRef } from 'react';
5
- import { useQuery } from '@tanstack/react-query';
6
- import { getCountries, parsePhoneNumber, formatIncompletePhoneNumber, isValidPhoneNumber, getCountryCallingCode } from 'libphonenumber-js/min';
7
- import { findBy, noop } from '@bigbinary/neeto-cist';
8
- import Input from '@bigbinary/neetoui/Input';
9
- import classnames from 'classnames';
10
- import Select from '@bigbinary/neetoui/Select';
11
- import { useTranslation } from 'react-i18next';
12
1
  import { c as commonjsGlobal } from './_commonjsHelpers-BFTU3MAI.js';
13
- import { assoc, mergeLeft } from 'ramda';
14
- import Tooltip from '@bigbinary/neetoui/Tooltip';
15
- import Typography from '@bigbinary/neetoui/Typography';
16
- import { jsx } from 'react/jsx-runtime';
17
- import _asyncToGenerator from '@babel/runtime/helpers/asyncToGenerator';
18
- import i18next from 'i18next';
19
- import { setToLocalStorage, getFromLocalStorage } from '@bigbinary/neeto-commons-frontend/utils';
20
- import * as yup from 'yup';
21
- import axios from 'axios';
22
- import { n } from './inject-css-C2dztUxs.js';
23
-
24
- var IP_LOOKUP_ACCESS_TOKEN = "083c694c79f119c7f227e737de9a5c8c";
25
- var IP_LOOKUP_STORAGE_KEY = "IP_LOOKUP_DETAILS_STORAGE";
26
- var MAX_CACHE_AGE = 60 * 60 * 1000;
27
2
 
28
3
  var index_es5_min = {exports: {}};
29
4
 
@@ -35,279 +10,5 @@ var index_es5_min = {exports: {}};
35
10
 
36
11
  var index_es5_minExports = index_es5_min.exports;
37
12
 
38
- var COUNTRY_PICKER_OPTIONS = getCountries().filter(function (code) {
39
- return index_es5_minExports.countries[code];
40
- }).map(function (code) {
41
- return {
42
- label: index_es5_minExports.countries[code].name,
43
- value: code
44
- };
45
- }).sort(function (a, b) {
46
- return a.label.localeCompare(b.label);
47
- });
48
- var COUNTRY_PICKER_STYLES = {
49
- menuPortal: mergeLeft({
50
- width: 196,
51
- zIndex: 99999
52
- }),
53
- control: mergeLeft({
54
- border: "none !important",
55
- cursor: "pointer",
56
- gap: 4
57
- }),
58
- input: assoc("position", "absolute !important"),
59
- valueContainer: assoc("padding", "0 !important"),
60
- indicatorsContainer: assoc("paddingRight", "0 !important")
61
- };
62
-
63
- var _excluded$2 = ["countryCode", "showEmoji"];
64
- function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
65
- function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
66
- var SingleValue = function SingleValue(_ref) {
67
- var countryCode = _ref.countryCode,
68
- _ref$showEmoji = _ref.showEmoji,
69
- showEmoji = _ref$showEmoji === void 0 ? false : _ref$showEmoji,
70
- otherProps = _objectWithoutProperties(_ref, _excluded$2);
71
- if (!showEmoji) return null;
72
- var countryData = index_es5_minExports.countries[countryCode];
73
- return /*#__PURE__*/jsx(Tooltip, {
74
- content: countryData === null || countryData === void 0 ? void 0 : countryData.name,
75
- children: /*#__PURE__*/jsx(Typography, _objectSpread$2(_objectSpread$2({
76
- className: "neeto-molecules-phone-number-input__flag cursor-pointer text-center text-xl",
77
- style: "body2"
78
- }, otherProps), {}, {
79
- children: countryData === null || countryData === void 0 ? void 0 : countryData.emoji
80
- }))
81
- });
82
- };
83
- var SingleValue$1 = /*#__PURE__*/memo(SingleValue);
84
-
85
- var _excluded$1 = ["countryCode", "onChange"];
86
- function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
87
- function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
88
- var CountryPicker = function CountryPicker(_ref) {
89
- var countryCode = _ref.countryCode,
90
- _onChange = _ref.onChange,
91
- otherProps = _objectWithoutProperties(_ref, _excluded$1);
92
- var _useState = useState(""),
93
- _useState2 = _slicedToArray(_useState, 2),
94
- searchTerm = _useState2[0],
95
- setSearchTerm = _useState2[1];
96
- var _useTranslation = useTranslation(),
97
- t = _useTranslation.t;
98
- return /*#__PURE__*/jsx("div", {
99
- className: classnames("flex-shrink-0", {
100
- "w-10": !searchTerm,
101
- "w-24": searchTerm
102
- }),
103
- children: /*#__PURE__*/jsx(Select, _objectSpread$1({
104
- isSearchable: true,
105
- "aria-label": t("neetoMolecules.phoneNumberInput.countryCodeAriaLabel"),
106
- "data-testid": "phonenumber-country-picker",
107
- options: COUNTRY_PICKER_OPTIONS,
108
- strategy: "fixed",
109
- styles: COUNTRY_PICKER_STYLES,
110
- value: {
111
- value: countryCode
112
- },
113
- components: {
114
- SingleValue: function SingleValue() {
115
- return /*#__PURE__*/jsx(SingleValue$1, {
116
- countryCode: countryCode,
117
- showEmoji: true
118
- });
119
- }
120
- },
121
- isOptionSelected: function isOptionSelected(_ref2, _ref3) {
122
- var value = _ref2.value;
123
- var _ref4 = _slicedToArray(_ref3, 1),
124
- selectedOption = _ref4[0];
125
- return (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.name) === value;
126
- },
127
- onChange: function onChange(option) {
128
- return _onChange(option.value);
129
- },
130
- onInputChange: setSearchTerm
131
- }, otherProps))
132
- });
133
- };
134
- var CountryPicker$1 = /*#__PURE__*/memo(CountryPicker);
135
-
136
- var fetchLocationDetails$1 = function fetchLocationDetails() {
137
- return axios.get("https://neeto-ip-lookup-web-production.neetodeployapp.com/location", {
138
- headers: {
139
- "X-ACCESS-TOKEN": IP_LOOKUP_ACCESS_TOKEN
140
- }
141
- });
142
- };
143
- var neetoIpLookupApi = {
144
- fetchLocationDetails: fetchLocationDetails$1
145
- };
146
-
147
- function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = false, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = true, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), true), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
148
- function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
149
- var isPhoneNumberValid = function isPhoneNumberValid() {
150
- var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "";
151
- for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
152
- rest[_key - 1] = arguments[_key];
153
- }
154
- return isValidPhoneNumber.apply(void 0, [value].concat(rest));
155
- };
156
- var validation = function validation() {
157
- var message = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : i18next.t("neetoMolecules.phoneNumberInput.validations.invalid");
158
- return yup.string().test("phoneNumber", message, function (phoneNumber) {
159
- return phoneNumber ? isValidPhoneNumber(phoneNumber) : true;
160
- });
161
- };
162
- var getPhoneData = function getPhoneData(value, defaultCountryCode) {
163
- try {
164
- var parsedValue = parsePhoneNumber(value, defaultCountryCode);
165
- return {
166
- phoneNumber: parsedValue.number,
167
- international: parsedValue.formatInternational(),
168
- countryCode: parsedValue.country || defaultCountryCode
169
- };
170
- } catch (_unused) {
171
- return {
172
- phoneNumber: value,
173
- international: formatIncompletePhoneNumber(value, defaultCountryCode),
174
- countryCode: defaultCountryCode
175
- };
176
- }
177
- };
178
- var fetchLocationDetails = /*#__PURE__*/function () {
179
- var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
180
- var stored, _ref2, data, timestamp, isCacheValid, details, _timestamp;
181
- return _regenerator().w(function (_context) {
182
- while (1) switch (_context.p = _context.n) {
183
- case 0:
184
- stored = getFromLocalStorage(IP_LOOKUP_STORAGE_KEY);
185
- _ref2 = stored || {}, data = _ref2.data, timestamp = _ref2.timestamp;
186
- isCacheValid = timestamp && Date.now() - timestamp < MAX_CACHE_AGE;
187
- if (!isCacheValid) {
188
- _context.n = 1;
189
- break;
190
- }
191
- return _context.a(2, data);
192
- case 1:
193
- _context.p = 1;
194
- _context.n = 2;
195
- return neetoIpLookupApi.fetchLocationDetails();
196
- case 2:
197
- details = _context.v;
198
- _timestamp = Date.now();
199
- setToLocalStorage(IP_LOOKUP_STORAGE_KEY, {
200
- data: details,
201
- timestamp: _timestamp
202
- });
203
- return _context.a(2, details);
204
- case 3:
205
- _context.p = 3;
206
- _context.v;
207
- return _context.a(2, data || null);
208
- }
209
- }, _callee, null, [[1, 3]]);
210
- }));
211
- return function fetchLocationDetails() {
212
- return _ref.apply(this, arguments);
213
- };
214
- }();
215
- var isNumeric = function isNumeric(_char) {
216
- return _char >= "0" && _char <= "9";
217
- };
218
- var preserveCursor = function preserveCursor(callback) {
219
- return function (event) {
220
- var start = event.target.selectionStart;
221
- var end = event.target.selectionEnd;
222
- var len = event.target.value.length;
223
- var result = callback(event);
224
- var delta = event.target.value.length - len;
225
- event.target.setSelectionRange(start + delta, end + delta);
226
- return result;
227
- };
228
- };
229
-
230
- var _excluded = ["value", "onChange", "className", "error", "selectProps", "initialCountryCode"];
231
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
232
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
233
- var PhoneNumberInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
234
- var _ref$value = _ref.value,
235
- value = _ref$value === void 0 ? "" : _ref$value,
236
- _ref$onChange = _ref.onChange,
237
- onChange = _ref$onChange === void 0 ? noop : _ref$onChange,
238
- className = _ref.className,
239
- error = _ref.error,
240
- selectProps = _ref.selectProps,
241
- initialCountryCode = _ref.initialCountryCode,
242
- inputProps = _objectWithoutProperties(_ref, _excluded);
243
- var _useState = useState(function () {
244
- return getPhoneData(value).countryCode || initialCountryCode;
245
- }),
246
- _useState2 = _slicedToArray(_useState, 2),
247
- countryCode = _useState2[0],
248
- setCountryCode = _useState2[1];
249
- var _useQuery = useQuery({
250
- queryKey: [IP_LOOKUP_STORAGE_KEY],
251
- queryFn: fetchLocationDetails,
252
- enabled: !countryCode,
253
- staleTime: Infinity,
254
- gcTime: Infinity,
255
- select: function select(data) {
256
- return findBy({
257
- value: data.countryCode
258
- }, COUNTRY_PICKER_OPTIONS);
259
- }
260
- }),
261
- ipCountry = _useQuery.data;
262
- var finalCountryCode = countryCode || (ipCountry === null || ipCountry === void 0 ? void 0 : ipCountry.value) || "US";
263
- var formattedValue = formatIncompletePhoneNumber(value, finalCountryCode);
264
- var onKeyDown = preserveCursor(function (event) {
265
- // Handles special characters in the phone number formatting like brackets and spaces.
266
- if (event.key !== "Backspace") return;
267
- var left = event.target.value.substring(0, event.target.selectionStart);
268
- var right = event.target.value.substring(event.target.selectionEnd);
269
- var index = left.length - 1;
270
- while (index > 0 && !isNumeric(left[index])) index--;
271
- var newValue = left.substring(0, index + 1) + right;
272
- if (newValue) event.target.value = newValue;
273
- });
274
- var onInputChange = preserveCursor(function (event) {
275
- var phoneData = getPhoneData(event.target.value, finalCountryCode);
276
- event.target.value = formatIncompletePhoneNumber(event.target.value);
277
- setCountryCode(phoneData.countryCode);
278
- onChange(phoneData.phoneNumber);
279
- });
280
- var onChangeCountry = function onChangeCountry(countryCode) {
281
- var phoneData = getPhoneData(value, finalCountryCode);
282
- var prevPrefix = "+".concat(getCountryCallingCode(phoneData.countryCode));
283
- var nextPrefix = "+".concat(getCountryCallingCode(countryCode));
284
- setCountryCode(countryCode);
285
- onChange(nextPrefix + value.replace(prevPrefix, ""));
286
- };
287
- return /*#__PURE__*/jsx("div", {
288
- className: className,
289
- children: /*#__PURE__*/jsx(Input, _objectSpread({
290
- error: error,
291
- onKeyDown: onKeyDown,
292
- ref: ref,
293
- autoComplete: "tel",
294
- className: "neeto-molecules-phone-number-input__input",
295
- "data-testid": "phonenumber-input",
296
- inputMode: "tel",
297
- type: "tel",
298
- value: formattedValue,
299
- prefix: /*#__PURE__*/jsx(CountryPicker$1, _objectSpread({
300
- countryCode: finalCountryCode,
301
- onChange: onChangeCountry
302
- }, selectProps)),
303
- onChange: onInputChange
304
- }, inputProps))
305
- });
306
- });
307
- PhoneNumberInput.displayName = "PhoneNumberInput";
308
-
309
- var css = "@import url(\"https://fonts.googleapis.com/css2?family=Noto+Color+Emoji&display=swap\");.neeto-molecules-phone-number-input__flag{font-family:-apple-system,Noto Color Emoji,BlinkMacSystemFont,Inter,Arial,Segoe UI,Roboto,Oxygen,Ubuntu,Fira Sans,Droid Sans,Helvetica Neue,sans-serif!important;font-style:normal;font-weight:400}.neeto-molecules-phone-number{display:block!important}.neeto-molecules-phone-number-input__input .neeto-ui-react-select__indicators{padding-inline:0!important}.neeto-molecules-phone-number-input__input .neeto-ui-input input{direction:inherit}";
310
- n(css,{});
311
-
312
- export { PhoneNumberInput as P, SingleValue$1 as S, getPhoneData as g, isPhoneNumberValid as i, validation as v };
313
- //# sourceMappingURL=phone-number--BBsxLSh.js.map
13
+ export { index_es5_minExports as i };
14
+ //# sourceMappingURL=index.es5.min-B2AiaKmd.js.map