= ({ props }) => (\n\t\n\t\t{props?.Title?.title &&
}\n\t\t\n\t\t\t{props?.banner && }\n\t\t\t{props?.carousel && }\n\t\t\n\t\n);\n\nexport * from '../../types';\nexport default CarouselOffersCtaDesktop;\n","import Icon from '@babylon/ui-kit-base/components/icons/icon';\nimport { TitleMobileWrapper } from '@babylon/ui-kit-base/components/text/title/views/mobile/styled';\nimport { FlexMixin, FontMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport styled from 'styled-components';\nimport { ScrollHorizontalItem } from '../scroll-horizontal/styled.mjs';\n\nconst CardsScrollBox = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"CardsScrollBox\"\n})([\n `margin-bottom:20px;`\n]);\nconst CardsScrollIntro = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"CardsScrollIntro\"\n})([\n `margin-bottom:12px;padding:0 16px;`,\n `{margin-bottom:0;}`\n], TitleMobileWrapper);\nconst CardsScrollWrapper = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"CardsScrollWrapper\"\n})([\n ``,\n ` `,\n `{min-width:160px;}`\n], FlexMixin({\n direction: 'row',\n justify: 'space-between'\n}), ScrollHorizontalItem);\nconst CardsScrollItem = /*#__PURE__*/ styled.a.withConfig({\n displayName: \"CardsScrollItem\"\n})([\n ``,\n ` position:relative;height:100%;&::before{background-color:rgba(0,85,145,0.6);content:'';height:100%;pointer-events:none;position:absolute;width:100%;z-index:1;}`\n], FlexMixin({\n direction: 'row',\n align: 'center'\n}));\nconst CardsScrollLink = /*#__PURE__*/ styled.a.withConfig({\n displayName: \"CardsScrollLink\"\n})([\n ``,\n ` height:100%;position:relative;width:100%;`\n], FlexMixin({\n direction: 'column'\n}));\nconst CardsScrollContent = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"CardsScrollContent\"\n})([\n `color:`,\n `;padding:0 12px;pointer-events:none;position:absolute;text-align:center;width:160px;z-index:3;`\n], ({ theme })=>theme.colors.white.base);\nconst CardsScrollTitle = /*#__PURE__*/ styled.p.withConfig({\n displayName: \"CardsScrollTitle\"\n})([\n ``,\n ` margin-bottom:8px;`\n], FontMixin({\n size: 'large',\n height: 'large',\n weight: 'regular'\n}));\nconst CardsScrollDescription = /*#__PURE__*/ styled.p.withConfig({\n displayName: \"CardsScrollDescription\"\n})([\n ``,\n ``\n], FontMixin({\n size: 'base',\n height: 'base',\n weight: 'light'\n}));\nconst CardsScrollItemAll = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"CardsScrollItemAll\"\n})([\n ``,\n ` height:100%;background-color:`,\n `;padding:32px 20px;position:relative;`,\n `{align-self:flex-end;color:`,\n `;font-size:`,\n `;}`\n], FlexMixin({\n direction: 'column',\n align: 'center'\n}), ({ theme })=>theme.colors.grays.lighter, Icon, ({ theme })=>theme.colors.grays.base, ({ theme })=>theme.font.size.larger);\nconst CardsScrollItemAllTitle = /*#__PURE__*/ styled.h3.withConfig({\n displayName: \"CardsScrollItemAllTitle\"\n})([\n ``,\n ` color:`,\n `;flex-grow:1;text-transform:uppercase;`\n], FontMixin({\n size: 'medium',\n height: 'medium',\n weight: 'regular'\n}), ({ theme })=>theme.colors.grays.darker);\n\nexport { CardsScrollBox, CardsScrollContent, CardsScrollDescription, CardsScrollIntro, CardsScrollItem, CardsScrollItemAll, CardsScrollItemAllTitle, CardsScrollLink, CardsScrollTitle, CardsScrollWrapper };\n//# sourceMappingURL=styled.mjs.map\n","import { jsxs, jsx, Fragment } from 'react/jsx-runtime';\nimport Icon from '@babylon/ui-kit-base/components/icons/icon';\nimport Image from '@babylon/ui-kit-base/components/multimedia/image';\nimport TitleMobile from '@babylon/ui-kit-base/components/text/title/views/mobile';\nimport { genKey } from '@babylon/ui-kit-helpers/keys';\nimport { nullsToUndefined } from '@babylon/ui-kit-helpers/null';\nimport { useMemo, Children } from 'react';\nimport ScrollHorizontal from '../scroll-horizontal/index.mjs';\nimport { CardsScrollItem, CardsScrollContent, CardsScrollTitle, CardsScrollDescription, CardsScrollItemAll, CardsScrollLink, CardsScrollItemAllTitle, CardsScrollBox, CardsScrollIntro, CardsScrollWrapper } from './styled.mjs';\n\nconst CardsScroll = ({ title, items, viewAll, className, ...rest })=>{\n const cards = useMemo(()=>{\n let cards = Children.toArray(items?.map(({ title, description, link, image })=>/*#__PURE__*/ jsxs(CardsScrollItem, {\n href: nullsToUndefined(link).href,\n title: nullsToUndefined(link).title,\n target: nullsToUndefined(link).target,\n \"data-testid\": \"CardsScrollItems\",\n children: [\n image && /*#__PURE__*/ jsx(Image, {\n ...image,\n width: 160,\n height: 160,\n resize: {\n width: 160,\n height: 160\n },\n isLazy: true\n }),\n /*#__PURE__*/ jsxs(CardsScrollContent, {\n children: [\n title && /*#__PURE__*/ jsx(CardsScrollTitle, {\n children: title\n }),\n description && /*#__PURE__*/ jsx(CardsScrollDescription, {\n children: description\n })\n ]\n })\n ]\n })) ?? []);\n if (viewAll) {\n cards.push(/*#__PURE__*/ jsx(CardsScrollItemAll, {\n children: /*#__PURE__*/ jsxs(CardsScrollLink, {\n href: nullsToUndefined(viewAll.link).href,\n title: nullsToUndefined(viewAll.link).title,\n target: nullsToUndefined(viewAll.link).target,\n children: [\n /*#__PURE__*/ jsx(CardsScrollItemAllTitle, {\n children: viewAll?.link?.title\n }),\n /*#__PURE__*/ jsx(Icon, {\n className: \"nico-arrow-right\"\n })\n ]\n })\n }, genKey(viewAll)));\n }\n return cards;\n }, [\n items,\n viewAll\n ]);\n /* TODO reason: avoid creating a converter... */ const cardScrollTitle = typeof title === 'string' ? title : title?.title;\n return /*#__PURE__*/ jsx(Fragment, {\n children: cards && cards.length > 0 && /*#__PURE__*/ jsxs(CardsScrollBox, {\n className: className,\n ...rest,\n \"data-testid\": \"CardsScroll\",\n children: [\n cardScrollTitle && /*#__PURE__*/ jsx(CardsScrollIntro, {\n children: /*#__PURE__*/ jsx(TitleMobile, {\n title: cardScrollTitle\n })\n }),\n /*#__PURE__*/ jsx(CardsScrollWrapper, {\n children: /*#__PURE__*/ jsx(ScrollHorizontal, {\n children: cards\n })\n })\n ]\n })\n });\n};\n\nexport { CardsScroll as default };\n//# sourceMappingURL=index.mjs.map\n","import type { CardsScrollProps } from '@babylon/ui-kit-structures/components/others/cards-scroll/types';\n\nimport type { CarouselOffersCtaMobileProps } from '../../types';\n\ntype TransformProps = (props: CarouselOffersCtaMobileProps) => CardsScrollProps;\nexport const transformProps: TransformProps = props => {\n\tconst {\n\t\tprops: { title, items },\n\t\t...rest\n\t} = props;\n\n\tconst cardsScrollProps = {\n\t\ttitle,\n\t\titems,\n\t\t...rest,\n\t};\n\n\treturn cardsScrollProps;\n};\n","import CardsScroll from '@babylon/ui-kit-structures/components/others/cards-scroll';\nimport type { FC } from 'react';\n\nimport type { CarouselOffersCtaMobileProps } from '../../types';\nimport { transformProps } from './utils';\n\nconst CarouselOffersCtaMobile: FC = props => ;\n\nexport default CarouselOffersCtaMobile;\n","import { generateViewsComponent } from '@babylon/ui-kit-helpers/views';\n\nimport CarouselOffersCtaDesktop from './views/desktop';\nimport CarouselOffersCtaMobile from './views/mobile';\n\nconst CarouselOffersCta = generateViewsComponent(CarouselOffersCtaDesktop, CarouselOffersCtaMobile);\n\nexport * from './types';\nexport default CarouselOffersCta;\n","import InnerMarkdownHTML from '@babylon/ui-kit-base/components/text/inner-markdown-HTML';\nimport { FontMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport styled from 'styled-components';\n\nexport const ParagraphTitle = styled(InnerMarkdownHTML)`\n\t${FontMixin({ size: 'larger', weight: 'regular', height: 'larger' })}\n\tcolor: ${({ theme }) => theme.colors.grays.darker};\n\tmargin-bottom: 20px;\n\tpadding-bottom: 12px;\n\tposition: relative;\n\n\t&:after {\n\t\tbackground-color: ${({ theme }) => theme.colors.grays.darker};\n\t\tbottom: 0;\n\t\tcontent: '';\n\t\theight: 4px;\n\t\tleft: 0;\n\t\tposition: absolute;\n\t\twidth: 40px;\n\t}\n`;\n\nexport const ParagraphContent = styled(InnerMarkdownHTML)`\n\t${FontMixin({ size: 'medium', weight: 'light', height: 'base' })}\n\tcolor: ${({ theme }) => theme.colors.grays.darker};\n`;\n","import { FontMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport styled from 'styled-components';\n\nexport const FaqsWrapperDesktop = styled.div`\n\tbackground-color: ${({ theme }) => theme.colors.white.base};\n\tpadding: 20px;\n\tcolumn-count: 2;\n\tcolumn-gap: 16px;\n\n\t& > h3 {\n\t\tbreak-before: column;\n\t}\n`;\n\nexport const FaqsListDesktop = styled.ul`\n\t& > li {\n\t\tmargin-bottom: 8px;\n\t\tcolor: ${({ theme }) => theme.colors.primary.light};\n\t\t${FontMixin({ size: 'medium', weight: 'light', height: 'base' })}\n\t}\n`;\n","import { nullsToUndefined } from '@babylon/ui-kit-helpers/null';\nimport type { FC } from 'react';\nimport { Children } from 'react';\n\nimport type { FaqsProps } from '../../../../types';\nimport { ParagraphContent, ParagraphTitle } from '../../../paragraph';\nimport * as S from './styled';\n\nconst FaqsDesktop: FC = ({ text, links }) => (\n\t\n\t\t{text?.title && }\n\t\t{text?.content && }\n\t\t{links?.title && }\n\t\t\n\t\t\t{Children.toArray(\n\t\t\t\tlinks?.items?.map(link => (\n\t\t\t\t\t\n\t\t\t\t\t\t{link.content}\n\t\t\t\t\t\n\t\t\t\t))\n\t\t\t)}\n\t\t\n\t\n);\n\nexport default FaqsDesktop;\n","import InnerMarkdownHTML from '@babylon/ui-kit-base/components/text/inner-markdown-HTML';\nimport { FlexMixin, FontMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport styled from 'styled-components';\n\nexport const FaqsWrapperMobile = styled.div`\n\tbackground-color: ${({ theme }) => theme.colors.white.base};\n\tpadding: 20px;\n`;\n\nexport const FaqsTitle = styled(InnerMarkdownHTML)`\n\t${FontMixin({ size: 'medium', weight: 'bold', height: 'base' })}\n\tcolor: ${({ theme }) => theme.colors.grays.darker};\n\tmargin-bottom: 12px;\n`;\n\nexport const FaqsContent = styled(InnerMarkdownHTML)`\n\t${FontMixin({ size: 'small', weight: 'light', height: 'small' })}\n\tcolor: ${({ theme }) => theme.colors.grays.darker};\n`;\n\nexport const FaqsListMobile = styled.ul``;\n\nexport const FaqsItemsMobile = styled.li`\n\tborder-top: 1px solid ${({ theme }) => theme.colors.grays.light};\n\n\ta {\n\t\t${FlexMixin({ justify: 'space-between', align: 'center' })}\n\t\t${FontMixin({ size: 'base', weight: 'regular', height: 'large' })}\n\t\tcolor: ${({ theme }) => theme.colors.grays.darker};\n\t\tpadding: 12px 0;\n\t}\n`;\n","import Icon from '@babylon/ui-kit-base/components/icons/icon';\nimport { nullsToUndefined } from '@babylon/ui-kit-helpers/null';\nimport type { FC } from 'react';\nimport { Children } from 'react';\n\nimport type { FaqsProps } from '../../../../types';\nimport * as S from './styled';\n\nconst FaqsMobile: FC = ({ text, links }) => (\n\t\n\t\t{text?.title && }\n\t\t{text?.content && }\n\t\t{links?.title && }\n\t\t\n\t\t\t{Children.toArray(\n\t\t\t\tlinks?.items?.map(link => (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{link.content} \n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t))\n\t\t\t)}\n\t\t\n\t\n);\n\nexport default FaqsMobile;\n","import { generateViewsComponent } from '@babylon/ui-kit-helpers/views';\n\nimport FaqsDesktop from './views/desktop';\nimport FaqsMobile from './views/mobile';\n\nexport const Faqs = generateViewsComponent(FaqsDesktop, FaqsMobile);\n\nexport default Faqs;\n","import InnerMarkdownHTML from '@babylon/ui-kit-base/components/text/inner-markdown-HTML';\nimport { FlexMixin, FontMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport { BorderRadius } from '@babylon/ui-kit-styles/common/mixins/logical.styled';\nimport styled from 'styled-components';\n\nexport const FastGuideWrapper = styled.div`\n\tpadding: 20px;\n\tbackground-color: ${({ theme }) => theme.colors.white.base};\n`;\n\nexport const FastGuideTitle = styled(InnerMarkdownHTML)`\n\tcolor: ${({ theme }) => theme.colors.primary.light};\n\tpadding: 0 0 0 20px;\n\tposition: relative;\n\t${FontMixin({ size: 'xl', weight: 'regular', height: 'xl' })}\n\n\t&:after {\n\t\tbackground-color: ${({ theme }) => theme.colors.primary.light};\n\t\tcontent: '';\n\t\theight: 36px;\n\t\tleft: 0;\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\twidth: 4px;\n\t}\n`;\n\nexport const FastGuideContainer = styled.div`\n\t${FlexMixin()}\n\tmargin-top: 12px;\n\n\t${({ theme }) => theme.media.down('lg')} {\n\t\t${FlexMixin({ direction: 'column' })}\n\t}\n\n\t& > figure img {\n\t\twidth: 100%;\n\t\theight: auto;\n\t}\n\n\t& > figure {\n\t\tmin-width: 40%;\n\t}\n`;\n\nexport const FastGuideContent = styled.div`\n\tpadding: 0 16px 16px;\n`;\n\nexport const FastGuideLink = styled.div`\n\t${FlexMixin()}\n\talign-items: center;\n\tborder-top: 1px solid ${({ theme }) => theme.colors.grays.light};\n\tmargin-top: 20px;\n\tpadding-top: 16px;\n\t${FontMixin({ height: 'base' })}\n`;\n\nexport const FastGuideViewMore = styled.a`\n\t${BorderRadius({ all: '4px' })}\n\t${FontMixin({ size: 'medium', weight: 'medium', height: 'small' })}\n\tbackground-color: ${({ theme }) => theme.colors.primary.light};\n\tcolor: ${({ theme }) => theme.colors.white.base};\n\tmargin-left: 8px;\n\tpadding: 8px 16px;\n\ttext-align: center;\n\ttext-transform: uppercase;\n\tvertical-align: middle;\n\twhite-space: nowrap;\n`;\n","import Image from '@babylon/ui-kit-base/components/multimedia/image';\nimport type { ImageProps } from '@babylon/ui-kit-base/components/multimedia/image/types';\nimport InnerMarkdownHTML from '@babylon/ui-kit-base/components/text/inner-markdown-HTML';\nimport { nullsToUndefined } from '@babylon/ui-kit-helpers/null';\nimport type { FC } from 'react';\n\nimport type { FastGuideProps } from '../../../../types';\nimport { ParagraphContent } from '../../../paragraph';\nimport * as S from './styled';\n\nconst FastGuideDesktop: FC = ({ subtitle, content, viewMore, image }) => {\n\tconst imageProps: ImageProps = {\n\t\tresize: {\n\t\t\toperation: 'resize',\n\t\t\tsuboperation: 'crop',\n\t\t\twidth: 624,\n\t\t\theight: 368,\n\t\t\tquality: 85,\n\t\t},\n\t\tsrc: '/comun/images/not-available.png',\n\t\talternative: '/comun/images/not-available.png',\n\t\t...image,\n\t};\n\n\treturn (\n\t\t\n\t\t\t{subtitle && }\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{content && }\n\t\t\t\t\t{viewMore && (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{viewMore.description && }\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{viewMore.content}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t\n\t\t\t\t{image && }\n\t\t\t\n\t\t\n\t);\n};\n\nexport default FastGuideDesktop;\n","import InnerMarkdownHTML from '@babylon/ui-kit-base/components/text/inner-markdown-HTML';\nimport { FontMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport styled from 'styled-components';\n\nexport const FastGuideWrapperMobile = styled.div`\n\tpadding: 20px;\n\tbackground-color: ${({ theme }) => theme.colors.white.base};\n`;\n\nexport const FastGuideTitleMobile = styled(InnerMarkdownHTML)`\n\t${FontMixin({ size: 'large', weight: 'medium', height: 'large' })}\n\tcolor: ${({ theme }) => theme.colors.grays.darker};\n\tmargin: 20px 0;\n\tposition: relative;\n\n\t&:after {\n\t\tbackground-color: ${({ theme }) => theme.colors.grays.darker};\n\t\tbottom: -8px;\n\t\tcontent: '';\n\t\theight: 4px;\n\t\tleft: 0;\n\t\tposition: absolute;\n\t\twidth: 40px;\n\t}\n`;\n\nexport const FastGuideContent = styled(InnerMarkdownHTML)`\n\t& > p {\n\t\t${FontMixin({ size: 'medium', weight: 'light', height: 'base' })}\n\t\tcolor: ${({ theme }) => theme.colors.grays.darker};\n\t}\n`;\n","import Image from '@babylon/ui-kit-base/components/multimedia/image';\nimport type { FC } from 'react';\n\nimport type { FastGuideProps } from '../../../../types';\nimport * as S from './styled';\n\nconst FastGuideMobile: FC = ({ subtitle, content, image }) => (\n\t\n\t\t{image && }\n\t\t{subtitle && }\n\t\t{content && }\n\t\n);\n\nexport default FastGuideMobile;\n","import { generateViewsComponent } from '@babylon/ui-kit-helpers/views';\n\nimport FastGuideDesktop from './views/desktop';\nimport FastGuideMobile from './views/mobile';\n\nexport const FastGuide = generateViewsComponent(FastGuideDesktop, FastGuideMobile);\n\nexport default FastGuide;\n","import type { FC } from 'react';\n\nimport type { TabTitleProps } from './types';\n\nconst TabTitle: FC = ({ title, link }) => (\n\t\n\t\t{link &&
}\n\t\t
{title}\n\t
\n);\n\nexport default TabTitle;\n","import { FlexMixin, FontMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport styled from 'styled-components';\n\nexport const ActivityDetailWrapper = styled.div`\n\tpadding: 20px;\n\tmax-height: 464px;\n\tmin-height: 275px;\n\toverflow-y: auto;\n\n\t&::-webkit-scrollbar {\n\t\tbackground-color: ${({ theme }) => theme.colors.grays.light};\n\t\twidth: 6px;\n\t}\n\n\t&::-webkit-scrollbar-track {\n\t\tbackground-color: ${({ theme }) => theme.colors.grays.light};\n\t\tborder-radius: 10px;\n\t}\n\n\t&::-webkit-scrollbar-thumb {\n\t\tbackground-color: ${({ theme }) => theme.colors.grays.base};\n\t\tborder-radius: 3px;\n\t}\n`;\n\nexport const ActivityDetailContainer = styled.div`\n\t${FlexMixin({ justify: 'space-between' })}\n\n\t& > p {\n\t\t${FontMixin({ size: 'medium', weight: 'light', height: 'base' })}\n\t\tcolor: ${({ theme }) => theme.colors.grays.darker};\n\t\tmargin-right: 32px;\n\t}\n\n\t& img {\n\t\tmin-width: 275px;\n\t}\n`;\n","import Image from '@babylon/ui-kit-base/components/multimedia/image';\nimport type { ImageProps } from '@babylon/ui-kit-base/components/multimedia/image/types';\nimport InnerMarkdownHTML from '@babylon/ui-kit-base/components/text/inner-markdown-HTML';\nimport type { FC } from 'react';\n\nimport type { Activity } from '../../types';\nimport { ParagraphTitle } from '../paragraph';\nimport * as S from './styled';\n\nconst ActivityDetail: FC = ({ title, description, image }) => {\n\tconst imageProps: ImageProps = {\n\t\tresize: {\n\t\t\toperation: 'resize',\n\t\t\tsuboperation: 'crop',\n\t\t\twidth: 315,\n\t\t\theight: 375,\n\t\t\tquality: 85,\n\t\t},\n\t\tsrc: '/comun/images/not-available.png',\n\t\talternative: '/comun/images/not-available.png',\n\t\t...image,\n\t};\n\treturn (\n\t\t\n\t\t\t{title && }\n\t\t\t\n\t\t\t\t{description && }\n\t\t\t\t{image && }\n\t\t\t\n\t\t\n\t);\n};\n\nexport default ActivityDetail;\n","import { TabsWrapper } from '@babylon/ui-kit-structures/components/others/tabs/styled';\nimport styled from 'styled-components';\n\nexport const TopActivitiesWrapper = styled.div`\n\tbackground-color: ${({ theme }) => theme.colors.white.base};\n\tpadding: 20px;\n\n\t& .top-activities-tabs {\n\t\tbox-shadow: unset;\n\t}\n\n\t${TabsWrapper} {\n\t\tborder: 0px;\n\t}\n`;\n","import Tabs from '@babylon/ui-kit-structures/components/others/tabs';\nimport type { Tab } from '@babylon/ui-kit-structures/components/others/tabs/types';\nimport type { FC } from 'react';\nimport { useMemo, useState } from 'react';\n\nimport type { TopActivitiesProps } from '../../../../types';\nimport ActivityDetail from '../../../activity-detail';\nimport * as S from './styled';\n\nconst TopActivitiesDesktop: FC = ({ items = [] }) => {\n\tconst [selectedTab, setSelectedTab] = useState(0);\n\n\tconst finalTabs: Tab[] = useMemo(\n\t\t() =>\n\t\t\titems?.map((item, index) => ({\n\t\t\t\tindex,\n\t\t\t\tlabel: item.title ?? '',\n\t\t\t\telement: ,\n\t\t\t})),\n\t\t[items]\n\t);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default TopActivitiesDesktop;\n","import type { ImageProps } from '@babylon/ui-kit-base/components/multimedia/image/types';\n\nexport const imageDefault: ImageProps = {\n\tresize: {\n\t\toperation: 'resize',\n\t\tsuboperation: 'crop',\n\t\twidth: 158,\n\t\theight: 150,\n\t\tquality: 85,\n\t},\n\tsrc: '/comun/images/not-available.png',\n\talternative: '/comun/images/not-available.png',\n};\n\nexport const modalImageDefault: ImageProps = {\n\t...imageDefault,\n\tresize: {\n\t\t...imageDefault.resize,\n\t\twidth: 450,\n\t\theight: 200,\n\t},\n};\n","import InnerMarkdownHTML from '@babylon/ui-kit-base/components/text/inner-markdown-HTML';\nimport { FlexMixin, FontMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport styled from 'styled-components';\n\nexport const TopActivitiesWrapperMobile = styled.div`\n\tpadding: 20px;\n\tbackground-color: ${({ theme }) => theme.colors.white.base};\n`;\n\nexport const TopActivitiesCardMobile = styled.div`\n\t${FlexMixin({ direction: 'column' })}\n\tbackground-color: ${({ theme }) => theme.colors.white.base};\n\tborder: 1px solid ${({ theme }) => theme.colors.grays.light};\n\theight: 100%;\n\twidth: 248px;\n\n\t&.is-small {\n\t\twidth: 158px;\n\t}\n`;\n\nexport const TopActivitiesTitleMobile = styled(InnerMarkdownHTML)`\n\t${FontMixin({ size: 'base', weight: 'regular', height: 'base' })}\n\tcolor: ${({ theme }) => theme.colors.grays.darker};\n\tpadding: 8px 12px 20px;\n`;\n\nexport const TopActivitiesTitleModal = styled(InnerMarkdownHTML)`\n\t${FontMixin({ size: 'large', weight: 'medium', height: 'largest' })}\n\tcolor: ${({ theme }) => theme.colors.grays.darker};\n\tmargin-bottom: 20px;\n\tposition: relative;\n\n\t&:after {\n\t\tbackground-color: ${({ theme }) => theme.colors.grays.darker};\n\t\tcontent: '';\n\t\theight: 4px;\n\t\tleft: 0;\n\t\tposition: absolute;\n\t\ttop: 34px;\n\t\twidth: 40px;\n\t}\n`;\n\nexport const TopActivitiesDescriptionModal = styled(InnerMarkdownHTML)`\n\t${FontMixin({ size: 'medium', weight: 'light', height: 'base' })}\n\tcolor: ${({ theme }) => theme.colors.grays.darker};\n`;\n\nexport const TopActivitiesDescriptionContainerModal = styled.div`\n\tpadding: 20px;\n`;\n","import Image from '@babylon/ui-kit-base/components/multimedia/image';\nimport Modal from '@babylon/ui-kit-structures/components/others/modal';\nimport ScrollHorizontal from '@babylon/ui-kit-structures/components/others/scroll-horizontal';\nimport classNames from 'classnames';\nimport type { FC } from 'react';\nimport { Children, useCallback, useState } from 'react';\n\nimport type { Activity, TopActivitiesProps } from '../../../../types';\nimport { imageDefault, modalImageDefault } from './constants';\nimport * as S from './styled';\n\nconst TopActivitiesMobile: FC = ({ items, config }) => {\n\tconst [activity, setActivity] = useState(undefined);\n\n\tconst onClickActivity = useCallback(\n\t\t(item: Activity) => () => {\n\t\t\tsetActivity(item);\n\t\t},\n\t\t[]\n\t);\n\n\tconst onCloseModal = useCallback(() => {\n\t\tsetActivity(undefined);\n\t}, []);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t{Children.toArray(\n\t\t\t\t\titems?.map(item => (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{item.title && }\n\t\t\t\t\t\t\n\t\t\t\t\t))\n\t\t\t\t)}\n\t\t\t\n\n\t\t\t\n\t\t\t\t\t\t{activity?.image && }\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{activity?.title && }\n\t\t\t\t\t\t\t{activity?.description && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\n\t\t\t\t\t>\n\t\t\t\t}\n\t\t\t\tvariant='fullScreen'\n\t\t\t\ticonRight='cancel'\n\t\t\t/>\n\t\t\n\t);\n};\n\nexport default TopActivitiesMobile;\n","import { generateViewsComponent } from '@babylon/ui-kit-helpers/views';\n\nimport TopActivitiesDesktop from './views/desktop';\nimport TopActivitiesMobile from './views/mobile';\n\nexport const TopActivities = generateViewsComponent(TopActivitiesDesktop, TopActivitiesMobile);\n\nexport default TopActivities;\n","import { TabsWrapper } from '@babylon/ui-kit-structures/components/others/tabs/styled';\nimport styled from 'styled-components';\n\nexport const UtilInfoWrapper = styled.div`\n\tbackground-color: ${({ theme }) => theme.colors.white.base};\n\tpadding: 20px;\n\n\t& .util-info-tabs {\n\t\tbox-shadow: unset;\n\t}\n\n\t${TabsWrapper} {\n\t\tborder: 0px;\n\t}\n`;\n","import Tabs from '@babylon/ui-kit-structures/components/others/tabs';\nimport type { Tab } from '@babylon/ui-kit-structures/components/others/tabs/types';\nimport type { FC } from 'react';\nimport { useState } from 'react';\n\nimport type { UtilInfoProps } from '../../../../types';\nimport ActivityDetail from '../../../activity-detail';\nimport * as S from './styled';\n\nconst UtilInfoDesktop: FC = ({ items = [] }) => {\n\tconst [selectedTab, setSelectedTab] = useState(0);\n\n\tconst finalTabs: Tab[] = items?.map((item, index) => ({\n\t\tindex,\n\t\tlabel: item.title ?? '',\n\t\telement: ,\n\t}));\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default UtilInfoDesktop;\n","import { AccordionContent, AccordionHeader } from '@babylon/ui-kit-structures/components/others/accordion/styled';\nimport { FontMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport styled from 'styled-components';\n\nexport const UtilInfoWrapperMobile = styled.div`\n\tpadding: 0px 20px;\n\tbackground-color: ${({ theme }) => theme.colors.white.base};\n\n\t${AccordionHeader} {\n\t\t${FontMixin({ size: 'base', weight: 'regular', height: 'base' })}\n\t\tcolor: ${({ theme }) => theme.colors.grays.darker};\n\t\tpadding: 8px 0;\n\t\ttext-transform: none;\n\t}\n\n\t${AccordionContent} {\n\t\t${FontMixin({ size: 'medium', weight: 'light', height: 'base' })}\n\t\tcolor: ${({ theme }) => theme.colors.grays.dark};\n\t}\n`;\n","import Accordion from '@babylon/ui-kit-structures/components/others/accordion';\nimport type { FC } from 'react';\nimport { Children } from 'react';\n\nimport type { UtilInfoProps } from '../../../../types';\nimport * as S from './styled';\n\nconst UtilInfoMobile: FC = ({ items }) => (\n\t\n\t\t{Children.toArray(items?.map(item => ))}\n\t\n);\n\nexport default UtilInfoMobile;\n","import { generateViewsComponent } from '@babylon/ui-kit-helpers/views';\n\nimport UtilInfoDesktop from './views/desktop';\nimport UtilInfoMobile from './views/mobile';\n\nexport const UtilInfo = generateViewsComponent(UtilInfoDesktop, UtilInfoMobile);\n\nexport default UtilInfo;\n","import Icon from '@babylon/ui-kit-base/components/icons/icon';\nimport { FlexMixin, FontMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport { BorderRadius } from '@babylon/ui-kit-styles/common/mixins/logical.styled';\nimport styled from 'styled-components';\n\nexport const WeatherForecastWrapperDesktop = styled.div`\n\tbackground-color: ${({ theme }) => theme.colors.white.base};\n\tpadding: 20px;\n\tposition: relative;\n\t${FlexMixin({ align: 'center', justify: 'space-between', wrap: true })}\n`;\n\nexport const WeatherForecastInfo = styled.div`\n\t${FlexMixin({ direction: 'column' })}\n\twidth: calc(49% - 8px);\n\n\t${({ theme }) => theme.media.down('xl')} {\n\t\twidth: 100%;\n\t}\n`;\n\nexport const WeatherForecastTips = styled.ul`\n\t${FontMixin({ size: 'medium', weight: 'medium', height: 'base' })}\n\tcolor: ${({ theme }) => theme.colors.grays.darker};\n\tmargin-bottom: 20px;\n\tmargin-top: 20px;\n\n\t& > li {\n\t\t${FlexMixin()}\n\t\tmargin: 8px 0;\n\t}\n\n\t${Icon} {\n\t\t${FontMixin({ size: 'medium', weight: 'regular', height: 'small' })}\n\t\tcolor: ${({ theme }) => theme.colors.status.success};\n\t\tpadding: 4px 8px 0;\n\t}\n`;\n\nexport const WeatherForecastCalendar = styled.div`\n\t${FlexMixin({ align: 'center', wrap: true, justify: 'space-between' })}\n\tbackground-color: ${({ theme }) => theme.colors.grays.light};\n\tmargin-top: 16px;\n\tpadding: 8px 8px 0;\n\twidth: 51%;\n\n\t${({ theme }) => theme.media.down('xl')} {\n\t\tmargin-top: 16px;\n\t\twidth: 100%;\n\t}\n`;\n\nexport const WeatherForecastTemperatureDesktop = styled.div`\n\t${BorderRadius({ all: '4px' })}\n\t${FlexMixin({ direction: 'column' })}\n\tbackground-color: ${({ theme }) => theme.colors.white.base};\n\tmargin-bottom: 8px;\n\twidth: calc(16% - 4px);\n\theight: 120px;\n\n\t.temperature-month {\n\t\t${BorderRadius({ topRight: '4px', topLeft: '4px' })}\n\t\t${FontMixin({ size: 'base', weight: 'medium', height: 'base' })}\n\t\tbackground-color: ${({ theme }) => theme.colors.primary.lighter};\n\t\tcolor: ${({ theme }) => theme.colors.white.base};\n\t\tpadding: 12px;\n\t\ttext-transform: uppercase;\n\t}\n\t.temperature-max {\n\t\t${FontMixin({ size: 'large', weight: 'medium', height: 'base' })}\n\t\tmargin: 20px 0 4px;\n\t}\n\t.temperature-min {\n\t\t${FontMixin({ size: 'medium', weight: 'medium', height: 'base' })}\n\t\tcolor: ${({ theme }) => theme.colors.grays.dark};\n\t}\n\n\t.temperature-month,\n\t.temperature-max,\n\t.temperature-min {\n\t\tdisplay: block;\n\t\ttext-align: center;\n\t}\n\n\t${({ theme }) => theme.media.down('xl')} {\n\t\twidth: calc(8.3% - 4px);\n\t}\n\n\t${({ theme }) => theme.media.down('lg')} {\n\t\twidth: calc(16% - 4px);\n\t}\n`;\n","import Icon from '@babylon/ui-kit-base/components/icons/icon';\nimport type { FC } from 'react';\nimport { Children } from 'react';\n\nimport type { WeatherForecastProps } from '../../../../types';\nimport { ParagraphContent, ParagraphTitle } from '../../../paragraph';\nimport * as S from './styled';\n\nconst WeatherForecastDesktop: FC = ({ description, tips, weather }) => (\n\t\n\t\t\n\t\t\t{description?.title && }\n\t\t\t{description?.text && }\n\t\t\t\n\t\t\t\t{Children.toArray(\n\t\t\t\t\ttips?.map(tip => (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{tip.content}\n\t\t\t\t\t\t\n\t\t\t\t\t))\n\t\t\t\t)}\n\t\t\t\n\t\t\n\n\t\t\n\t\t\t{Children.toArray(\n\t\t\t\tweather?.map(temperature => (\n\t\t\t\t\t\n\t\t\t\t\t\t{temperature.month}\n\t\t\t\t\t\t{temperature.max}\n\t\t\t\t\t\t{temperature.min}\n\t\t\t\t\t\n\t\t\t\t))\n\t\t\t)}\n\t\t\n\t\n);\n\nexport default WeatherForecastDesktop;\n","import Icon from '@babylon/ui-kit-base/components/icons/icon';\nimport InnerMarkdownHTML from '@babylon/ui-kit-base/components/text/inner-markdown-HTML';\nimport { FlexMixin, FontMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport { BorderRadius } from '@babylon/ui-kit-styles/common/mixins/logical.styled';\nimport styled from 'styled-components';\n\nexport const WeatherForecastWrapperMobile = styled.div`\n\tbackground-color: ${({ theme }) => theme.colors.white.base};\n\tpadding: 20px;\n`;\n\nexport const WeatherForecastTitle = styled(InnerMarkdownHTML)`\n\t${FontMixin({ size: 'base', weight: 'bold', height: 'base' })}\n\tmargin-bottom: 4px;\n`;\n\nexport const WeatherForecastContent = styled(InnerMarkdownHTML)`\n\t${FontMixin({ size: 'medium', weight: 'light', height: 'base' })}\n\tcolor: ${({ theme }) => theme.colors.grays.darker};\n\tmargin-bottom: 4px;\n`;\n\nexport const WeatherForecastTips = styled.ul`\n\t& > li {\n\t\t${FlexMixin()}\n\t\t${FontMixin({ size: 'medium', weight: 'light', height: 'base' })}\n\t\tmargin: 8px 0;\n\t}\n\n\t${Icon} {\n\t\t${FontMixin({ size: 'medium', weight: 'regular', height: 'small' })}\n\t\tcolor: ${({ theme }) => theme.colors.status.success};\n\t\tpadding: 4px 8px 0;\n\t}\n`;\n\nexport const WeatherForecastTemperature = styled.div`\n\tborder-radius: 4px;\n\tborder: 1px solid ${({ theme }) => theme.colors.grays.light};\n\theight: 128px;\n\tmin-width: 100px;\n\n\t.temperature-month {\n\t\t${BorderRadius({ topRight: '4px', topLeft: '4px' })}\n\t\t${FontMixin({ size: 'base', weight: 'medium', height: 'base' })}\n\t\tbackground-color: ${({ theme }) => theme.colors.primary.lighter};\n\t\tcolor: ${({ theme }) => theme.colors.white.base};\n\t\tpadding: 12px;\n\t\ttext-transform: uppercase;\n\t}\n\t.temperature-max {\n\t\t${FontMixin({ size: 'large', weight: 'medium', height: 'base' })}\n\t\tmargin: 20px 0 4px;\n\t}\n\t.temperature-min {\n\t\t${FontMixin({ size: 'medium', weight: 'medium', height: 'base' })}\n\t\tcolor: ${({ theme }) => theme.colors.grays.dark};\n\t}\n\n\t.temperature-month,\n\t.temperature-max,\n\t.temperature-min {\n\t\tdisplay: block;\n\t\ttext-align: center;\n\t}\n`;\n","import Icon from '@babylon/ui-kit-base/components/icons/icon';\nimport ScrollHorizontal from '@babylon/ui-kit-structures/components/others/scroll-horizontal';\nimport type { FC } from 'react';\nimport { Children } from 'react';\n\nimport type { WeatherForecastProps } from '../../../../types';\nimport * as S from './styled';\n\nconst WeatherForecastMobile: FC = ({ description, tips, weather }) => (\n\t\n\t\t{description?.title && }\n\t\t{description?.text && }\n\t\t\n\t\t\t{Children.toArray(\n\t\t\t\ttips?.map(tip => (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t{tip.content}\n\t\t\t\t\t\n\t\t\t\t))\n\t\t\t)}\n\t\t\n\n\t\t\n\t\t\t{Children.toArray(\n\t\t\t\tweather?.map(temperature => (\n\t\t\t\t\t\n\t\t\t\t\t\t{temperature.month}\n\t\t\t\t\t\t{temperature.max}\n\t\t\t\t\t\t{temperature.min}\n\t\t\t\t\t\n\t\t\t\t))\n\t\t\t)}\n\t\t\n\t\n);\n\nexport default WeatherForecastMobile;\n","import { generateViewsComponent } from '@babylon/ui-kit-helpers/views';\n\nimport WeatherForecastDesktop from './views/desktop';\nimport WeatherForecastMobile from './views/mobile';\n\nexport const WeatherForecast = generateViewsComponent(WeatherForecastDesktop, WeatherForecastMobile);\n\nexport default WeatherForecast;\n","import type { Tab } from '@babylon/ui-kit-structures/components/others/tabs/types';\nimport { useMemo, useState } from 'react';\n\nimport Faqs from '../components/faqs';\nimport FastGuide from '../components/fast-guide';\nimport TabTitle from '../components/tab-title';\nimport TopActivities from '../components/top-activities';\nimport UtilInfo from '../components/util-info';\nimport WeatherForecast from '../components/weather-forecast';\nimport type { DestinationGuideProps } from '../types';\n\nconst useDestinationGuide = (props?: DestinationGuideProps['props']) => {\n\tconst { faqs, fastGuide, topActivities, utilInfo, weatherForecast } = props ?? {};\n\tconst [selectedTab, setSelectedTab] = useState(0);\n\n\tconst tabs: Tab[] = useMemo(() => {\n\t\tconst tabs: Tab[] = [];\n\n\t\tlet index = 0;\n\t\tif (fastGuide?.title) {\n\t\t\ttabs.push({\n\t\t\t\tindex,\n\t\t\t\tlabel: ,\n\t\t\t\telement: fastGuide && ,\n\t\t\t});\n\t\t\tindex++;\n\t\t}\n\t\tif (topActivities?.title) {\n\t\t\ttabs.push({\n\t\t\t\tindex,\n\t\t\t\tlabel: ,\n\t\t\t\telement: topActivities && ,\n\t\t\t});\n\t\t\tindex++;\n\t\t}\n\n\t\tif (weatherForecast?.title) {\n\t\t\ttabs.push({\n\t\t\t\tindex,\n\t\t\t\tlabel: ,\n\t\t\t\telement: weatherForecast && ,\n\t\t\t});\n\t\t\tindex++;\n\t\t}\n\n\t\tif (utilInfo?.title) {\n\t\t\ttabs.push({\n\t\t\t\tindex,\n\t\t\t\tlabel: ,\n\t\t\t\telement: utilInfo && ,\n\t\t\t});\n\t\t\tindex++;\n\t\t}\n\n\t\tif (faqs?.title) {\n\t\t\ttabs.push({\n\t\t\t\tindex,\n\t\t\t\tlabel: ,\n\t\t\t\telement: faqs && ,\n\t\t\t});\n\t\t\tindex++;\n\t\t}\n\n\t\treturn tabs;\n\t}, [faqs, fastGuide, topActivities, utilInfo, weatherForecast]);\n\n\treturn { tabs, selectedTab, setSelectedTab };\n};\n\nexport default useDestinationGuide;\n","import type {\n\tDestinationGuideOld,\n\tDestinationGuideProps,\n\tFaqsOld,\n\tFaqsProps,\n\tFastGuideOld,\n\tFastGuideProps,\n\tNewDestinationGuideProps,\n\tTopActivitiesOld,\n\tTopActivitiesProps,\n\tUtilInfoOld,\n\tUtilInfoProps,\n\tWeatherForecastOld,\n\tWeatherForecastProps,\n} from '../types';\n\nconst converterUtilInfo = (utilInfo?: UtilInfoOld): UtilInfoProps => {\n\tconst { title, component } = utilInfo ?? {};\n\n\tconst items = component?.tab?.items?.map(({ content }) => ({ title: content?.title, content: content?.text }));\n\treturn { title, items };\n};\n\nconst converterFastGuide = (fastGuide?: FastGuideOld): FastGuideProps => {\n\tconst { title, component } = fastGuide ?? {};\n\n\treturn {\n\t\ttitle,\n\t\tsubtitle: component?.title,\n\t\tcontent: component?.content,\n\t\timage: component?.image,\n\t\tviewMore: component?.link,\n\t};\n};\n\nconst converterTopActivities = (topActivities?: TopActivitiesOld): TopActivitiesProps => {\n\tconst { title, component } = topActivities ?? {};\n\n\tconst items = component?.tab?.items?.map(({ content }) => ({\n\t\ttitle: content?.title,\n\t\tdescription: content?.text,\n\t\timage: content?.image,\n\t}));\n\n\treturn {\n\t\ttitle,\n\t\titems,\n\t};\n};\n\nconst converterWeatherForecast = (weatherForecast?: WeatherForecastOld): WeatherForecastProps => {\n\tconst { title, component } = weatherForecast ?? {};\n\tconst weather = component?.calendar?.map(cal => ({\n\t\tmonth: cal.title,\n\t\tmin: cal.temperature?.min,\n\t\tmax: cal.temperature?.max,\n\t}));\n\n\treturn {\n\t\ttitle,\n\t\tdescription: component?.description,\n\t\ttips: component?.tips,\n\t\tweather,\n\t};\n};\n\nconst converterWeatherFaqs = (faqs?: FaqsOld): FaqsProps => {\n\tconst { title, component } = faqs ?? {};\n\n\treturn {\n\t\ttitle,\n\t\ttext: component?.text,\n\t\tlinks: component?.links,\n\t};\n};\n\nexport const converterModel = (rootProps?: DestinationGuideProps): NewDestinationGuideProps | undefined => {\n\tif (!rootProps) return rootProps;\n\n\tconst props = 'data' in rootProps ? rootProps.data : rootProps?.props;\n\n\tif (props && 'config' in props)\n\t\treturn {\n\t\t\t...rootProps,\n\t\t\tprops,\n\t\t};\n\n\tconst utilInfo = converterUtilInfo(props?.utilInfo);\n\tconst fastGuide = converterFastGuide(props?.fastGuide);\n\tconst topActivities = converterTopActivities(props?.topActivities);\n\tconst weatherForecast = converterWeatherForecast(props?.weatherForecast);\n\tconst faqs = converterWeatherFaqs(props?.faqs);\n\n\treturn {\n\t\tprops: {\n\t\t\ttitle: (props as DestinationGuideOld['props'])?.Title?.title?.content,\n\t\t\tutilInfo,\n\t\t\tfastGuide,\n\t\t\ttopActivities,\n\t\t\tweatherForecast,\n\t\t\tfaqs,\n\t\t},\n\t};\n};\n","import Tabs from '@babylon/ui-kit-structures/components/others/tabs';\nimport styled from 'styled-components';\n\nexport const DestinationGuideWrapperDesktop = styled.div`\n\tbackground-color: ${({ theme }) => theme.bodyBgColor};\n`;\n\nexport const TabsProductWrapperDesktop = styled(Tabs)`\n\tbackground-color: ${({ theme }) => theme.colors.white.base};\n`;\n","import Title from '@babylon/ui-kit-base/components/text/title';\nimport type { FC } from 'react';\n\nimport useDestinationGuide from '../../hooks/useDestinationGuide';\nimport type { DestinationGuideProps } from '../../types';\nimport { converterModel } from '../../utils/converter';\nimport * as S from './styled';\n\nconst DestinationGuideDesktop: FC = props => {\n\tconst conv = converterModel(props);\n\tconst { tabs, selectedTab, setSelectedTab } = useDestinationGuide(conv?.props);\n\n\treturn (\n\t\t\n\t\t\t{conv?.props?.title && }\n\t\t\t\n\t\t\n\t);\n};\n\nexport * from './styled';\nexport default DestinationGuideDesktop;\n","import Tabs from '@babylon/ui-kit-structures/components/others/tabs';\nimport styled from 'styled-components';\n\nexport const DestinationGuideWrapperMobile = styled.div`\n\tbackground-color: ${({ theme }) => theme.colors.white.base};\n`;\n\nexport const TabsProductWrapperMobile = styled(Tabs)`\n\tbackground-color: ${({ theme }) => theme.colors.white.base};\n`;\n","import Title from '@babylon/ui-kit-base/components/text/title';\nimport type { FC } from 'react';\n\nimport useDestinationGuide from '../../hooks/useDestinationGuide';\nimport type { DestinationGuideProps } from '../../types';\nimport { converterModel } from '../../utils/converter';\nimport * as S from './styled';\n\nconst DestinationGuideMobile: FC = props => {\n\tconst conv = converterModel(props);\n\tconst { tabs, selectedTab, setSelectedTab } = useDestinationGuide(conv?.props);\n\n\treturn (\n\t\t\n\t\t\t{conv?.props?.title && }\n\t\t\t\n\t\t\n\t);\n};\n\nexport * from './styled';\nexport default DestinationGuideMobile;\n","import { generateViewsComponent } from '@babylon/ui-kit-helpers/views';\n\nimport DestinationGuideDesktop from './views/desktop';\nimport DestinationGuideMobile from './views/mobile';\n\nconst DestinationGuide = generateViewsComponent(DestinationGuideDesktop, DestinationGuideMobile);\n\nexport * from './types';\nexport default DestinationGuide;\n","import type { IProductCard } from '@babylon/ui-kit-cards/components/cards/product-card/types';\n\nimport type { CarouselProductProps } from '../../carousel-product';\nimport type { ProductLeiCard, ProductLeiProps } from '../types';\n\nconst positiveNumberOrUndefined = (num?: number): number | undefined => {\n\tif (num && num > 0) return num;\n\treturn undefined;\n};\n\nconst converterProductLeiCard = (card: ProductLeiCard): IProductCard => {\n\tconst config = card.config as IProductCard['config'];\n\tconst transport = card.transport?.[0] ?? undefined;\n\tconst icons = card.icons?.map(({ icon, description }) => ({ icon, description }));\n\tconst scripts = card.ldjson ? [card.ldjson] : [];\n\n\tconst rating = positiveNumberOrUndefined(card.rating);\n\tconst reviews = positiveNumberOrUndefined(card.reviews);\n\n\tconst price: IProductCard['price'] = {\n\t\tmarket_value: positiveNumberOrUndefined(card.price?.market_value),\n\t\tvalue: positiveNumberOrUndefined(card.price?.value),\n\t\tfrom: card.price?.from,\n\t\tdiscount: positiveNumberOrUndefined(card.price?.discount),\n\t\tcaption: card.price?.caption,\n\t\tpaxValue: positiveNumberOrUndefined(card.price?.paxValue),\n\t};\n\n\treturn {\n\t\tconfig,\n\t\timage: card.image,\n\t\ttransport,\n\t\trating,\n\t\ttitle: card.title,\n\t\tsubtitle: card.subtitle,\n\t\tdescriptions: card.descriptions,\n\t\tmoreInfo: card.moreInfo,\n\t\ticons,\n\t\tprice,\n\t\treviews,\n\t\tlink: card.link,\n\t\tldjson: { scripts },\n\t};\n};\n\nexport const converterModelToCarouselProductProps = (props: ProductLeiProps): CarouselProductProps['props'] => {\n\tconst subTitle = props.title?.subTitle ?? props.title?.subtitle;\n\n\treturn {\n\t\tvisibleCardsCount: true,\n\t\tconfig: { ...props.config },\n\t\ttitle: props.title && { ...props.title, subTitle },\n\t\titems: props.items?.map(converterProductLeiCard) ?? [],\n\t};\n};\n","import CarouselProduct from '@babylon/ui-kit-carousels/components/carousel-product/views/desktop';\nimport type { FC } from 'react';\n\nimport type { ProductLeiProps } from '../../types';\nimport { converterModelToCarouselProductProps } from '../../utils/converter';\n\nconst ProductLeiDesktop: FC = props => {\n\tconst carouselProductProps = converterModelToCarouselProductProps(props);\n\treturn (\n\t\t\n\t\t\t\n\t\t
\n\t);\n};\n\nexport default ProductLeiDesktop;\n","import { generateViewsComponent } from '@babylon/ui-kit-helpers/views';\nimport ProductCardDesktop from './views/desktop/index.mjs';\nimport ProductCardMobile from './views/mobile/index.mjs';\n\nconst ProductCard = generateViewsComponent(ProductCardDesktop, ProductCardMobile);\n\nexport { ProductCard as default };\n//# sourceMappingURL=index.mjs.map\n","import { FontMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport { BorderRadius } from '@babylon/ui-kit-styles/common/mixins/logical.styled';\nimport styled from 'styled-components';\n\nexport const ButtonBox = styled.div`\n\tpadding: 24px 0;\n\tmargin-top: 0px;\n\ttext-align: center;\n\tbackground-color: ${({ theme }) => theme.colors.white.base};\n\tbackground: ${({ theme }) => theme.bodyBgColor};\n\n\ta {\n\t\t${FontMixin({ size: 'medium', weight: 'medium', height: 'small' })};\n\t\t${BorderRadius({ all: '4px' })}\n\t\tcolor: ${({ theme }) => theme.colors.primary.light};\n\t\tborder: 1px solid ${({ theme }) => theme.colors.primary.light};\n\t\tbackground-color: ${({ theme }) => theme.colors.white.base};\n\t\tdisplay: inline-block;\n\t\tpadding: 8px 16px;\n\t\tcursor: pointer;\n\t\ttransition: 0.4s;\n\t\ttext-transform: uppercase;\n\t\ttext-align: center;\n\t\tvertical-align: middle;\n\t\twhite-space: nowrap;\n\t\toutline: none;\n\t}\n`;\n","import { nullsToUndefined } from '@babylon/ui-kit-helpers/null';\nimport type { FC } from 'react';\n\nimport * as S from './styled';\nimport type { ButtonViewMoreProps } from './types';\n\nconst ButtonViewMore: FC = ({ link, content }) => (\n\t\n\t\t{content}\n\t\n);\n\nexport default ButtonViewMore;\n","import Icon from '@babylon/ui-kit-base/components/icons/icon';\nimport { FlexMixin, FontMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport styled from 'styled-components';\n\nexport const CardBenefitsWrapper = styled.div`\n\tbackground-color: ${({ theme }) => theme.colors.primary.light};\n\tmargin-top: 8px 0px;\n\toverflow: hidden;\n\tposition: relative;\n\twidth: 100%;\n\t${FlexMixin()}\n`;\n\nexport const Title = styled.div`\n\t${FlexMixin({ justify: 'center', align: 'center' })}\n\t${FontMixin({ size: 'largest', weight: 'light', height: 'largest' })}\n\tcolor: ${({ theme }) => theme.colors.white.base};\n\tpadding: 0 8px;\n\tposition: relative;\n\twidth: 90px;\n\n\t${Icon} {\n\t\tz-index: ${({ theme }) => theme.zIndex.low};\n\t}\n\n\t&::after {\n\t\tbackground-color: ${({ theme }) => theme.colors.primary.base};\n\t\tcontent: '';\n\t\theight: 100%;\n\t\tleft: -30px;\n\t\tposition: absolute;\n\t\ttop: 0px;\n\t\ttransform: skewX(-15deg);\n\t\twidth: 90px;\n\t}\n`;\n\nexport const Content = styled.div`\n\t${FlexMixin({ align: 'center', justify: 'center', wrap: true })}\n\tcolor: ${({ theme }) => theme.colors.white.base};\n\tpadding: 16px 20px;\n\ttext-align: center;\n\n\t& span {\n\t\t${FontMixin({ size: 'small', weight: 'light', height: 'small' })}\n\t\tmargin-right: 8px;\n\n\t\t&:not(:last-child)::after {\n\t\t\tcontent: 'ยท';\n\t\t\tmargin-left: 8px;\n\t\t}\n\t}\n`;\n","import Icon from '@babylon/ui-kit-base/components/icons/icon';\nimport InnerMarkdownHTML from '@babylon/ui-kit-base/components/text/inner-markdown-HTML';\nimport type { FC } from 'react';\nimport { Children } from 'react';\n\nimport * as S from './styled';\nimport type { CardBenefitsProps } from './type';\n\nconst CardBenefits: FC = ({ items }) => (\n\t\n\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t{Children.toArray(items.map(item => ))}\n\t\t\n\t\n);\n\nexport default CardBenefits;\n","import Title from '@babylon/ui-kit-base/components/text/title';\nimport styled from 'styled-components';\n\nexport const CarouselProductTitle = styled(Title)`\n\tmargin: 16px 0;\n`;\n\nexport const CarouselProductWrapper = styled.div`\n\tbackground: ${({ theme }) => theme.bodyBgColor};\n\t& > :not(.button-view-more) {\n\t\tmargin-top: 8px;\n\t}\n`;\n","import JsonLd from '@babylon/ui-kit-base/components/others/json-ld';\nimport ProductCard from '@babylon/ui-kit-cards/components/cards/product-card';\nimport CardSkeletonMobile from '@babylon/ui-kit-cards/components/cards/product-card/views/mobile/card-skeleton';\nimport classNames from 'classnames';\nimport type { FC } from 'react';\nimport { Children, useMemo } from 'react';\n\nimport type { CarouselProductProps } from '../../types';\nimport ButtonViewMore from './button-view-more';\nimport CardBenefits from './card-benefits';\nimport * as S from './styled';\n\nconst CarouselProductMobile: FC = ({ props }) => {\n\tconst { title, ldjson, items, className = '', link, config, isLoading = false } = props;\n\n\tconst skeleton = useMemo(() => new Array(5).fill(), []);\n\n\treturn (\n\t\t<>\n\t\t\t{title && }\n\t\t\t\n\t\t\t\t{props.benefits && }\n\t\t\t\t{isLoading\n\t\t\t\t\t? Children.toArray(skeleton)\n\t\t\t\t\t: Children.toArray(\n\t\t\t\t\t\t\titems.map(item => {\n\t\t\t\t\t\t\t\tconst literals = { ...item.config?.literals, ...config?.literals };\n\t\t\t\t\t\t\t\treturn ;\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t)}\n\t\t\t\t{link && !isLoading && (\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\t{Children.toArray(ldjson?.scripts?.map(script => ))}\n\t\t\t\n\t\t>\n\t);\n};\n\nexport default CarouselProductMobile;\n","import type { FC } from 'react';\n\nimport CarouselProduct from '@/components/carousel-product/views/mobile';\n\nimport type { ProductLeiProps } from '../../types';\nimport { converterModelToCarouselProductProps } from '../../utils/converter';\n\nconst ProductLeiMobile: FC = props => {\n\tconst carouselProductProps = converterModelToCarouselProductProps(props);\n\n\treturn (\n\t\t\n\t\t\t\n\t\t
\n\t);\n};\n\nexport default ProductLeiMobile;\n","import { generateViewsComponent } from '@babylon/ui-kit-helpers/views';\n\nimport ProductLeiDesktop from './views/desktop';\nimport ProductLeiMobile from './views/mobile';\n\nexport const ProductLei = generateViewsComponent(ProductLeiDesktop, ProductLeiMobile);\n\nexport * from './types';\nexport default ProductLei;\n"],"file":"cdn-placeholder/babylon/packages/logitravel/client/chunks/index.C8q5WxQ2.js"}