{"version":3,"mappings":"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","names":["SearcherActivitiesProvider","useSearcherActivitiesProps","createPropsProvider","useButton","config","literals","submitLabel","search","submit","hasErrors","useHasErrors","handleSubmit","useHandleSubmit","destinationValue","useValue","useSearcherActivitiesDefaultValues","props","destination","passengers","startDate","endDate","ageAtTravelTimeLabel","_a","passengersValue","_","index","dateValues","addDays","useCalendarInput","rangeLimit","calendarLabel","Language","useContext","contextBabylon","datesValue","getRangeLimits","prev","i","formatDateWithoutLocale","subDays","required","buildDestination","type","value","splitValue","provider","buildCalendar","dates","buildPassengers","options","selectedOption","buildUrl","baseUrl","values","testToken","filters","parseFilters","useSearcherActivitiesForm","BaseUrl","urlResults","urlDetail","handleOnSubmit","results","detail","finalUrl","isRedirecting","onSubmit","useSubmitWithRedirect","SearcherActivitiesRedirectingModal","lazy","__vitePreload","SearcherActivitiesForm","children","rootProps","defaultValues","jsx","Form","jsxs","Suspense"],"ignoreList":[0,1,2,3,4,5,6],"sources":["../../../../../../../node_modules/@babylon/ui-kit-searchers/components/searchers/searcher-activities/context/index.js","../../../../../../../node_modules/@babylon/ui-kit-searchers/components/searchers/searcher-activities/components/button/hooks/useButton.js","../../../../../../../node_modules/@babylon/ui-kit-searchers/components/searchers/searcher-activities/hooks/useSearcherActivitiesDefaultValues.js","../../../../../../../node_modules/@babylon/ui-kit-searchers/components/searchers/searcher-activities/components/calendar-input/hooks/useCalendarInput.js","../../../../../../../node_modules/@babylon/ui-kit-searchers/components/searchers/searcher-activities/utils/url.js","../../../../../../../node_modules/@babylon/ui-kit-searchers/components/searchers/searcher-activities/hooks/useSearcherActivitiesForm.js","../../../../../../../node_modules/@babylon/ui-kit-searchers/components/searchers/searcher-activities/components/searcher-form/index.js"],"sourcesContent":["import { createPropsProvider } from '@babylon/ui-kit-helpers/context';\n\nconst { Provider: SearcherActivitiesProvider, useContextProps: useSearcherActivitiesProps } = createPropsProvider();\n\nexport { SearcherActivitiesProvider, useSearcherActivitiesProps };\n","import useValue from '@babylon/ui-kit-forms/hooks/useValue';\nimport { useHandleSubmit } from '../../../../../../hooks/submit/useHandleSubmit.js';\nimport { useHasErrors } from '../../../../../../hooks/useHasErrors.js';\nimport { useSearcherActivitiesProps } from '../../../context/index.js';\n\nconst useButton = ()=>{\n const { config } = useSearcherActivitiesProps();\n const { literals } = config ?? {};\n const { submitLabel, search, submit } = literals ?? {};\n const hasErrors = useHasErrors();\n const handleSubmit = useHandleSubmit();\n const destinationValue = useValue({\n name: 'destination'\n });\n return {\n onClick: handleSubmit,\n disabled: hasErrors || destinationValue == undefined,\n children: submitLabel ?? search ?? submit\n };\n};\n\nexport { useButton as default };\n","import { addDays } from '@babylon/ui-kit-helpers/date';\n\nconst useSearcherActivitiesDefaultValues = (props)=>{\n const { destination, passengers, startDate, endDate } = props ?? {};\n const { ageAtTravelTimeLabel = '' } = props?.config?.literals ?? {};\n const passengersValue = {\n adults: {\n min: 1,\n max: 9,\n value: passengers?.length ?? 1,\n selectedOptions: passengers ?? [\n 30\n ],\n options: [\n ...new Array(100)\n ].map((_, index)=>({\n label: index.toString(),\n value: index,\n selected: index === 30\n })),\n optionsLabel: ageAtTravelTimeLabel\n }\n };\n const dateValues = [\n addDays(new Date(), 7),\n addDays(new Date(), 10)\n ];\n return {\n destination: destination,\n calendar: startDate && endDate ? [\n new Date(startDate),\n new Date(endDate)\n ] : dateValues,\n passengers: passengersValue\n };\n};\n\nexport { useSearcherActivitiesDefaultValues as default };\n","import contextBabylon from '@babylon/ui-kit-context';\nimport { required } from '@babylon/ui-kit-forms/helpers/validate';\nimport useValue from '@babylon/ui-kit-forms/hooks/useValue';\nimport { formatDateWithoutLocale, addDays, subDays } from '@babylon/ui-kit-helpers/date';\nimport { useContext } from 'react';\nimport { useSearcherActivitiesProps } from '../../../context/index.js';\nimport useSearcherActivitiesDefaultValues from '../../../hooks/useSearcherActivitiesDefaultValues.js';\n\nconst useCalendarInput = ()=>{\n const props = useSearcherActivitiesProps();\n const { config, rangeLimit = 15 } = props;\n const { literals } = config ?? {};\n const { calendarLabel = '' } = literals ?? {};\n const { Language = 'default' } = useContext(contextBabylon);\n const datesValue = useValue({\n name: 'dates'\n });\n const getRangeLimits = ()=>{\n if (datesValue?.length === 1) {\n return Array(rangeLimit + 1).fill(0).reduce((prev, _, i)=>{\n prev.push(formatDateWithoutLocale(addDays(datesValue[0], i), 'YYYY-MM-DD'));\n prev.push(formatDateWithoutLocale(subDays(datesValue[0], i), 'YYYY-MM-DD'));\n return prev;\n }, []);\n }\n return [];\n };\n return {\n name: 'dates',\n defaultValue: useSearcherActivitiesDefaultValues(props).calendar,\n minDate: props?.minDate ?? 'today',\n maxDate: props?.maxDate,\n validate: required(),\n mode: 'range',\n locale: Language.toLowerCase(),\n monthSelectorType: 'static',\n label: calendarLabel,\n checkOut: getRangeLimits()\n };\n};\n\nexport { useCalendarInput as default };\n","import { formatDateWithoutLocale } from '@babylon/ui-kit-helpers/date';\nimport { parseFilters } from '@babylon/ui-kit-helpers/url';\n\nconst buildDestination = (destination)=>{\n if (!destination) return '';\n const { type, value } = destination;\n if (type === 'ACT') {\n const splitValue = value.split('-');\n const provider = splitValue?.shift();\n return [\n type,\n `provider=${provider ? encodeURIComponent(provider) : ''}`,\n `code=${encodeURIComponent(splitValue.join('-'))}`\n ].join('&');\n }\n return [\n type,\n `destinationCode=${value}`\n ].join('&');\n};\nconst buildCalendar = (dates)=>{\n if (!dates?.length) return '';\n const [startDate, endDate] = dates;\n return startDate && endDate ? `${formatDateWithoutLocale(startDate, 'YYYY-MM-DD')},${formatDateWithoutLocale(endDate, 'YYYY-MM-DD')}` : '';\n};\nconst buildPassengers = (passengers)=>{\n if (!passengers?.adults?.selectedOptions) return '';\n let options = '';\n passengers?.adults.selectedOptions.map((selectedOption, index)=>{\n options += index > 0 ? `,${selectedOption?.toString()}` : `${selectedOption?.toString()}`;\n });\n return options;\n};\nfunction buildUrl(baseUrl, values) {\n const { destination, dates, passengers, testToken } = values ?? {};\n const filters = {\n destinationType: buildDestination(destination),\n dates: buildCalendar(dates),\n passengers: buildPassengers(passengers),\n testToken: '' + testToken\n };\n return `${baseUrl}?${parseFilters(filters)}`;\n}\n\nexport { buildUrl };\n","import contextBabylon from '@babylon/ui-kit-context';\nimport { useSubmitWithRedirect } from '../../../../hooks/submit/useSubmitWithRedirect.js';\nimport { useContext } from 'react';\nimport { buildUrl } from '../utils/url.js';\nimport useSearcherActivitiesDefaultValues from './useSearcherActivitiesDefaultValues.js';\n\nconst useSearcherActivitiesForm = (props)=>{\n const { BaseUrl = '' } = useContext(contextBabylon);\n const { urlResults = '/actividades/resultados', urlDetail = '/actividades/detalle', testToken = '' } = props ?? {};\n const handleOnSubmit = (values)=>{\n const results = urlResults.startsWith('http') ? urlResults : `${BaseUrl}${urlResults}`;\n const detail = urlDetail.startsWith('http') ? urlDetail : `${BaseUrl}${urlDetail}`;\n const baseUrl = values.destination.type === 'ACT' ? detail : results;\n const finalUrl = buildUrl(baseUrl, {\n ...values,\n testToken\n });\n window.location.assign(finalUrl);\n };\n const { isRedirecting, onSubmit } = useSubmitWithRedirect(handleOnSubmit);\n return {\n onSubmit,\n isRedirecting,\n defaultValues: useSearcherActivitiesDefaultValues(props)\n };\n};\n\nexport { useSearcherActivitiesForm as default };\n","import { jsx, jsxs } from 'react/jsx-runtime';\nimport Form from '@babylon/ui-kit-forms/components/others/form';\nimport { Suspense, lazy } from 'react';\nimport { SearcherActivitiesProvider } from '../../context/index.js';\nimport useSearcherActivitiesForm from '../../hooks/useSearcherActivitiesForm.js';\n\nconst SearcherActivitiesRedirectingModal = /*#__PURE__*/ lazy(()=>import('../redirecting-modal/index.js'));\nconst SearcherActivitiesForm = ({ children, ...rootProps })=>{\n const props = 'data' in rootProps ? rootProps.data : rootProps.props;\n const { onSubmit, isRedirecting, defaultValues } = useSearcherActivitiesForm(props);\n return /*#__PURE__*/ jsx(Form, {\n onSubmit: onSubmit,\n defaultValues: defaultValues,\n children: /*#__PURE__*/ jsxs(SearcherActivitiesProvider, {\n value: props,\n children: [\n children,\n /*#__PURE__*/ jsx(Suspense, {\n fallback: null,\n children: isRedirecting && /*#__PURE__*/ jsx(SearcherActivitiesRedirectingModal, {})\n })\n ]\n })\n });\n};\n\nexport { SearcherActivitiesForm as default };\n"],"file":"cdn-placeholder/babylon/logitravel-flights/client/chunks/index.CDIhNQvC.js"}