{"version":3,"file":"useSubmitWithRedirect.925dMS4o.js","sources":["../../../../../../../node_modules/@babylon/ui-kit-searchers/hooks/submit/useHandleSubmit.js","../../../../../../../node_modules/@babylon/ui-kit-searchers/components/others/searcher/searcher-button/hooks/useSearcherButton.js","../../../../../../../node_modules/@babylon/ui-kit-searchers/hooks/useLoading.js","../../../../../../../node_modules/@babylon/ui-kit-forms/hooks/useValueChanged.js","../../../../../../../node_modules/@babylon/ui-kit-helpers/url.js","../../../../../../../node_modules/@babylon/ui-kit-searchers/hooks/submit/useSubmitWithRedirect.js"],"sourcesContent":["import { useCallback } from 'react';\nimport { useFormState } from 'react-hook-form';\n\nconst useHandleSubmit = ()=>{\n const { isDirty, isValid, errors } = useFormState();\n const hasErrors = isDirty && !isValid && Object.keys(errors).length > 0;\n const handleSubmit = useCallback((e)=>{\n if (hasErrors) e.preventDefault();\n }, [\n hasErrors\n ]);\n return {\n hasErrors,\n handleSubmit\n };\n};\n\nexport { useHandleSubmit as default };\n//# sourceMappingURL=useHandleSubmit.js.map\n","import useHandleSubmit from '../../../../../hooks/submit/useHandleSubmit.js';\n\nconst useSearcherButton = (props)=>{\n const { disabled = false, children, literals } = props;\n const { submitLabel = '', submit = '', search = '' } = literals ?? {};\n const { hasErrors, handleSubmit } = useHandleSubmit();\n return {\n disabled: disabled || hasErrors,\n onClick: handleSubmit,\n content: children ?? (submitLabel || submit || search)\n };\n};\n\nexport { useSearcherButton as default };\n//# sourceMappingURL=useSearcherButton.js.map\n","import { useState, useRef, useCallback } from 'react';\n\nconst useLoading = (initialState = true)=>{\n const [isLoading, setLoading] = useState(initialState);\n const lockRef = useRef(false);\n const updateLoading = useCallback(()=>{\n if (lockRef.current) {\n setLoading(true);\n return;\n }\n setLoading(false);\n }, []);\n const doFetchLoading = useCallback(async (fetchFnc, onError)=>{\n if (lockRef.current) return;\n lockRef.current = true;\n setTimeout(updateLoading, 300);\n const result = await fetchFnc().catch((error)=>{\n if (onError) return onError(error);\n console.error(error);\n });\n lockRef.current = false;\n updateLoading();\n return result;\n }, [\n updateLoading\n ]);\n return {\n isLoading,\n updateLoading,\n doFetchLoading\n };\n};\n\nexport { useLoading as default };\n//# sourceMappingURL=useLoading.js.map\n","import isEqual from '@babylon/ui-kit-helpers/is-equal';\nimport usePrevValue from '@babylon/ui-kit-hooks/usePrevValue';\nimport useValue from './useValue.js';\n\nconst useValueChanged = (name)=>{\n const value = useValue({\n name\n });\n const prevValue = usePrevValue(value);\n return !isEqual(value, prevValue);\n};\n\nexport { useValueChanged as default };\n//# sourceMappingURL=useValueChanged.js.map\n","// Converts filters\nconst parseFilters = (filters)=>Object.entries(filters).filter(([, value])=>!!value || value === 0).map(([key, value])=>`${key}=${value}`).join('&');\nconst getUrlWithDomain = (url, BaseUrl)=>{\n if (url.startsWith('http')) return url;\n if (BaseUrl) {\n if ([\n 'production',\n 'staging'\n ].includes(process.env.NODE_ENV ?? '')) return url;\n return `${BaseUrl}${url}`;\n }\n return url;\n};\n\nexport { getUrlWithDomain, parseFilters };\n//# sourceMappingURL=url.js.map\n","import { useState, useEffect, useCallback } from 'react';\n\nconst useSubmitWithRedirect = (onSubmit)=>{\n const [isRedirecting, setRedirecting] = useState(false);\n const handleUnload = ()=>setRedirecting(false);\n useEffect(()=>{\n const handlePageshow = ()=>{\n if (document.visibilityState === 'hidden') {\n handleUnload();\n }\n };\n window.addEventListener('visibilitychange', handlePageshow);\n return ()=>{\n window.removeEventListener('visibilitychange', handlePageshow);\n };\n }, []);\n const finalOnSubmit = useCallback(async (values)=>{\n setRedirecting(true);\n await onSubmit(values);\n }, [\n onSubmit\n ]);\n return {\n onSubmit: finalOnSubmit,\n isRedirecting,\n setRedirecting\n };\n};\n\nexport { useSubmitWithRedirect as default };\n//# sourceMappingURL=useSubmitWithRedirect.js.map\n"],"names":["useHandleSubmit","isDirty","isValid","errors","useFormState","hasErrors","handleSubmit","useCallback","e","useSearcherButton","props","disabled","children","literals","submitLabel","submit","search","useLoading","initialState","isLoading","setLoading","useState","lockRef","useRef","updateLoading","doFetchLoading","fetchFnc","onError","result","error","useValueChanged","name","value","useValue","prevValue","usePrevValue","isEqual","parseFilters","filters","key","getUrlWithDomain","url","BaseUrl","useSubmitWithRedirect","onSubmit","isRedirecting","setRedirecting","handleUnload","useEffect","handlePageshow","values"],"mappings":"wEAGA,MAAMA,EAAkB,IAAI,CACxB,KAAM,CAAE,QAAAC,EAAS,QAAAC,EAAS,OAAAC,CAAM,EAAKC,EAAc,EAC7CC,EAAYJ,GAAW,CAACC,GAAW,OAAO,KAAKC,CAAM,EAAE,OAAS,EAChEG,EAAeC,cAAaC,GAAI,CAC9BH,GAAWG,EAAE,eAAgB,CACzC,EAAO,CACCH,CACR,CAAK,EACD,MAAO,CACH,UAAAA,EACA,aAAAC,CACH,CACL,ECbMG,EAAqBC,GAAQ,CAC/B,KAAM,CAAE,SAAAC,EAAW,GAAO,SAAAC,EAAU,SAAAC,CAAU,EAAGH,EAC3C,CAAE,YAAAI,EAAc,GAAI,OAAAC,EAAS,GAAI,OAAAC,EAAS,IAAOH,GAAY,CAAE,EAC/D,CAAE,UAAAR,EAAW,aAAAC,CAAc,EAAGN,EAAiB,EACrD,MAAO,CACH,SAAUW,GAAYN,EACtB,QAASC,EACT,QAASM,IAAaE,GAAeC,GAAUC,EAClD,CACL,ECTMC,EAAa,CAACC,EAAe,KAAO,CACtC,KAAM,CAACC,EAAWC,CAAU,EAAIC,EAAAA,SAASH,CAAY,EAC/CI,EAAUC,EAAM,OAAC,EAAK,EACtBC,EAAgBjB,EAAAA,YAAY,IAAI,CAClC,GAAIe,EAAQ,QAAS,CACjBF,EAAW,EAAI,EACf,MACZ,CACQA,EAAW,EAAK,CACnB,EAAE,EAAE,EACCK,EAAiBlB,EAAAA,YAAY,MAAOmB,EAAUC,IAAU,CAC1D,GAAIL,EAAQ,QAAS,OACrBA,EAAQ,QAAU,GAClB,WAAWE,EAAe,GAAG,EAC7B,MAAMI,EAAS,MAAMF,EAAU,EAAC,MAAOG,GAAQ,CAC3C,GAAIF,EAAS,OAAOA,EAAQE,CAAK,EACjC,QAAQ,MAAMA,CAAK,CAC/B,CAAS,EACD,OAAAP,EAAQ,QAAU,GAClBE,EAAe,EACRI,CACf,EAAO,CACCJ,CACR,CAAK,EACD,MAAO,CACH,UAAAL,EACA,cAAAK,EACA,eAAAC,CACH,CACL,EC3BMK,EAAmBC,GAAO,CAC5B,MAAMC,EAAQC,EAAS,CACnB,KAAAF,CACR,CAAK,EACKG,EAAYC,EAAaH,CAAK,EACpC,MAAO,CAACI,EAAQJ,EAAOE,CAAS,CACpC,ECTMG,EAAgBC,GAAU,OAAO,QAAQA,CAAO,EAAE,OAAO,CAAC,CAAA,CAAGN,CAAK,IAAI,CAAC,CAACA,GAASA,IAAU,CAAC,EAAE,IAAI,CAAC,CAACO,EAAKP,CAAK,IAAI,GAAGO,CAAG,IAAIP,CAAK,EAAE,EAAE,KAAK,GAAG,EAC7IQ,EAAmB,CAACC,EAAKC,IACvBD,EAAI,WAAW,MAAM,EAAUA,EAC/BC,EACI,CACA,aACA,SAAA,EACF,SAAS,YAA0B,EAAUD,EACxC,GAAGC,CAAO,GAAGD,CAAG,GAEpBA,ECTLE,EAAyBC,GAAW,CACtC,KAAM,CAACC,EAAeC,CAAc,EAAIzB,EAAAA,SAAS,EAAK,EAChD0B,EAAe,IAAID,EAAe,EAAK,EAC7CE,OAAAA,EAAAA,UAAU,IAAI,CACV,MAAMC,EAAiB,IAAI,CACnB,SAAS,kBAAoB,UAC7BF,EAAc,CAErB,EACD,cAAO,iBAAiB,mBAAoBE,CAAc,EACnD,IAAI,CACP,OAAO,oBAAoB,mBAAoBA,CAAc,CAChE,CACJ,EAAE,EAAE,EAOE,CACH,SAPkB1C,cAAY,MAAO2C,GAAS,CAC9CJ,EAAe,EAAI,EACnB,MAAMF,EAASM,CAAM,CAC7B,EAAO,CACCN,CACR,CAAK,EAGG,cAAAC,EACA,eAAAC,CACH,CACL","x_google_ignoreList":[0,1,2,3,4,5]}