{"version":3,"mappings":"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","names":["useLightbox","items","imageConfig","lightbox","useRef","context","useContext","contextBabylon","mscdn","images","item","href","getResizeUrl","hasDomain","useEffect","__vitePreload","module","index","truncate","text","maxLength","suffix","prefix","veciCarouselGenericStyles","css","theme","FontMixin","carouselGenericThemes","createThemes","ThemeId","CarouselGenericWrapper","styled","CardSkeletonWrapper","Padding","Title","Subtitle","Margin","TitleWrapper","FlexMixin","CarouselGenericBox","ProductsSlider","Slider","BorderRadius","BoxShadow","CarouselGenericDesktop","props","heading","sliderConfig","className","isLoading","title","_a","subtitle","_b","useTheme","isTablet","useDown","sliderProperties","sliderConstantsProps","skeleton","useMemo","jsx","CardSkeletonDesktop","jsxs","classNames","Children","Fragment","ViewMore","$marginRight","$viewHorizontal","ListWrapper","ItemList","$marginTop","$widthCards","$wrappedCards","width","minWidth","maxWidth","CarouselGenericMobile","viewMore","showViewMore","numCards","viewHorizontal","widthCards","marginRight","marginTop","wrappedCards","CardSkeletonMobile","renderViewMore","Icon","cards","card","genKey","CarouselGeneric","generateViewsComponent"],"ignoreList":[0,1,2,3,4,5,6,7,8],"sources":["../../../../../../../node_modules/@babylon/ui-kit-cards/esm/hooks/photo-gallery/useLightbox.mjs","../../../../../../../node_modules/@babylon/ui-kit-helpers/esm/text.mjs","../../../../../../../node_modules/@babylon/ui-kit-carousels/esm/components/carousel-generic/views/desktop/themes/styles/veci.mjs","../../../../../../../node_modules/@babylon/ui-kit-carousels/esm/components/carousel-generic/views/desktop/themes/index.mjs","../../../../../../../node_modules/@babylon/ui-kit-carousels/esm/components/carousel-generic/views/desktop/styled.mjs","../../../../../../../node_modules/@babylon/ui-kit-carousels/esm/components/carousel-generic/views/desktop/index.mjs","../../../../../../../node_modules/@babylon/ui-kit-carousels/esm/components/carousel-generic/views/mobile/styled.mjs","../../../../../../../node_modules/@babylon/ui-kit-carousels/esm/components/carousel-generic/views/mobile/index.mjs","../../../../../../../node_modules/@babylon/ui-kit-carousels/esm/components/carousel-generic/index.mjs"],"sourcesContent":["import { getResizeUrl, hasDomain } from '@babylon/ui-kit-base/components/multimedia/image/utils';\nimport contextBabylon from '@babylon/ui-kit-context';\nimport 'glightbox/dist/css/glightbox.min.css';\nimport { useRef, useContext, useEffect } from 'react';\n\nconst useLightbox = (items, imageConfig)=>{\n const lightbox = useRef(null);\n const context = useContext(contextBabylon);\n const mscdn = context.Cdn.startsWith('http') ? context.Cdn.substring(6) : context.Cdn;\n const images = items.map((item)=>{\n const href = imageConfig ? getResizeUrl(imageConfig, mscdn, item.src) : hasDomain(item.src, mscdn);\n return {\n href: imageConfig?.noResize ? item.src : href,\n type: 'image',\n alt: item.alt\n };\n });\n useEffect(()=>{\n if (!lightbox.current) {\n // @ts-ignore\n import('glightbox').then((module)=>{\n lightbox.current = module.default({\n openEffect: 'fade',\n closeEffect: 'fade',\n loop: true,\n elements: images\n });\n });\n }\n }, [\n images\n ]);\n const handleOpenGallery = (index)=>{\n // @ts-ignore\n lightbox.current.openAt(index);\n };\n return {\n handleOpenGallery\n };\n};\n\nexport { useLightbox as default };\n//# sourceMappingURL=useLightbox.mjs.map\n","// truncate text to 100 characters (including ellipsis)\nconst truncate = (text, maxLength = 97, suffix = '...', prefix = '')=>text.length > maxLength ? `${prefix}${text.substring(0, maxLength)}${suffix}` : text;\n\nexport { truncate };\n//# sourceMappingURL=text.mjs.map\n","import { FontMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport { css } from 'styled-components';\n\nconst veciCarouselGenericStyles = {\n ProductsSlider: ()=>/*#__PURE__*/ css([\n `.splide__arrows{.splide__arrow{background-color:transparent;box-shadow:none;border-radius:0;color:`,\n `;& > i{font-size:28px;}&--prev{margin-left:-36px;}&--next{margin-right:-36px;}}}`\n ], ({ theme })=>theme.colors.secondary.dark),\n Title: ()=>/*#__PURE__*/ css([\n ``,\n ` text-transform:uppercase;`\n ], FontMixin({\n size: 'larger'\n }))\n};\n\nexport { veciCarouselGenericStyles as default };\n//# sourceMappingURL=veci.mjs.map\n","import { createThemes } from '@babylon/ui-kit-styles/common/themes';\nimport { ThemeId } from '@babylon/ui-kit-styles/types/theme';\nimport veciCarouselGenericStyles from './styles/veci.mjs';\n\nconst carouselGenericThemes = createThemes({\n [ThemeId.veci]: veciCarouselGenericStyles\n});\n\nexport { carouselGenericThemes as default };\n//# sourceMappingURL=index.mjs.map\n","import Slider from '@babylon/ui-kit-structures/components/others/slider';\nimport { BoxShadow } from '@babylon/ui-kit-styles/common/mixins/box-shadow.styled';\nimport { FontMixin, FlexMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport { Padding, Margin, BorderRadius } from '@babylon/ui-kit-styles/common/mixins/logical.styled';\nimport styled from 'styled-components';\nimport carouselGenericThemes from './themes/index.mjs';\n\nconst CarouselGenericWrapper = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"CarouselGenericWrapper\"\n})([\n ``\n]);\nconst CardSkeletonWrapper = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"CardSkeletonWrapper\"\n})([\n ``,\n ``\n], Padding({\n y: '0',\n x: '2px'\n}));\nconst Title = /*#__PURE__*/ styled.h2.withConfig({\n displayName: \"Title\"\n})([\n `color:`,\n `;`,\n ` `,\n ` `,\n ``\n], ({ theme })=>theme.colors.grays.darker, FontMixin({\n size: 'largest',\n height: 'largest',\n weight: 'medium'\n}), Padding({\n y: '0',\n x: '8px'\n}), carouselGenericThemes('Title'));\nconst Subtitle = /*#__PURE__*/ styled.p.withConfig({\n displayName: \"Subtitle\"\n})([\n `color:`,\n `;`,\n ` line-height:22px;`,\n ``\n], ({ theme })=>theme.colors.grays.dark, FontMixin({\n size: 'base',\n weight: 'light'\n}), Margin({\n top: '4px',\n bottom: '0'\n}));\nconst TitleWrapper = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"TitleWrapper\"\n})([\n ``,\n ` `,\n ` font-family:`,\n `;`\n], Margin({\n bottom: '20px'\n}), FlexMixin({\n align: 'center',\n direction: 'column'\n}), ({ theme })=>theme.font.family.secondary);\nconst CarouselGenericBox = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"CarouselGenericBox\"\n})([\n `overflow:visible;`,\n ` width:100%;min-height:100%;`\n], Padding({\n top: '0',\n bottom: '2px',\n x: '2px'\n}));\nconst ProductsSlider = /*#__PURE__*/ styled(Slider).withConfig({\n displayName: \"ProductsSlider\"\n})([\n `height:100%;.splide__track{`,\n ` height:100%;}button.splide__pagination__page{&.is-active{&::before{width:100%;`,\n ` height:100%;background-color:`,\n `;}}}.splide__arrows .splide__arrow{`,\n ` &:hover{color:`,\n `;}}.splide__arrows .splide__arrow[disabled]{opacity:0;height:0;transition:opacity 0.5s;& > i{font-size:0;}}.splide__arrows .splide__arrow--prev{margin-left:-18px;}.splide__arrows .splide__arrow--next{margin-right:-18px;}.splide__arrows .splide__arrow{width:36px;height:36px;background-color:`,\n `;margin-left:-18px;`,\n ` `,\n ` `,\n ` opacity:1;transition:opacity 0.5s ease-in-out;& > i{font-size:12px;}}.splide__pagination li{height:12px;}`,\n ``\n], Padding({\n bottom: '16px'\n}), BorderRadius({\n all: '8px'\n}), ({ theme })=>theme.colors.primary.light, FontMixin({\n size: 'larger',\n height: 'base'\n}), ({ theme })=>theme.colors.primary.base, ({ theme })=>theme.colors.white.base, FlexMixin({\n justify: 'center',\n align: 'center'\n}), BorderRadius({\n all: '50%'\n}), BoxShadow, carouselGenericThemes('ProductsSlider'));\n\nexport { CardSkeletonWrapper, CarouselGenericBox, CarouselGenericWrapper, ProductsSlider, Subtitle, Title, TitleWrapper };\n//# sourceMappingURL=styled.mjs.map\n","import { jsx, jsxs, Fragment } from 'react/jsx-runtime';\nimport CardSkeletonDesktop from '@babylon/ui-kit-cards/components/cards/product-card/views/desktop/card-skeleton';\nimport useDown from '@babylon/ui-kit-hooks/media/useDown';\nimport { sliderConstantsProps } from '@babylon/ui-kit-structures/components/others/slider/constants';\nimport classNames from 'classnames';\nimport { useMemo, Children } from 'react';\nimport { useTheme } from 'styled-components';\nimport { CardSkeletonWrapper, TitleWrapper, Title, Subtitle, CarouselGenericWrapper, CarouselGenericBox, ProductsSlider } from './styled.mjs';\n\nconst CarouselGenericDesktop = (props)=>{\n const { heading, items, sliderConfig, className, isLoading = false } = props;\n const title = heading?.title?.content;\n const subtitle = heading?.subtitle?.content;\n const theme = /*#__PURE__*/ useTheme();\n const isTablet = useDown('tablet');\n const slider = {\n ...sliderConstantsProps({\n ...theme,\n breakpoints: theme.breakpoints\n }),\n ...sliderConfig\n };\n const sliderProperties = slider;\n const skeleton = useMemo(()=>new Array(sliderProperties.perPage).fill(/*#__PURE__*/ jsx(CardSkeletonWrapper, {\n children: /*#__PURE__*/ jsx(CardSkeletonDesktop, {})\n })), [\n sliderProperties.perPage\n ]);\n return items?.length ? /*#__PURE__*/ jsxs(\"div\", {\n \"data-testid\": \"CarouselGeneric\",\n className: className,\n children: [\n title && /*#__PURE__*/ jsxs(TitleWrapper, {\n children: [\n title && /*#__PURE__*/ jsx(Title, {\n className: \"title\",\n children: title\n }),\n subtitle && /*#__PURE__*/ jsx(Subtitle, {\n className: \"subtitle\",\n children: subtitle\n })\n ]\n }),\n /*#__PURE__*/ jsx(CarouselGenericWrapper, {\n children: /*#__PURE__*/ jsx(CarouselGenericBox, {\n className: classNames({\n 'is-tablet': isTablet\n }),\n children: /*#__PURE__*/ jsx(ProductsSlider, {\n ...sliderProperties,\n children: isLoading ? Children.toArray(skeleton) : items\n })\n })\n })\n ]\n }) : /*#__PURE__*/ jsx(Fragment, {});\n};\n\nexport { CarouselGenericDesktop as default };\n//# sourceMappingURL=index.mjs.map\n","import { FontMixin, FlexMixin } from '@babylon/ui-kit-styles/common/mixins/helpers.styled';\nimport { Padding, Margin, BorderRadius } from '@babylon/ui-kit-styles/common/mixins/logical.styled';\nimport styled, { css } from 'styled-components';\n\nconst Title = /*#__PURE__*/ styled.h2.withConfig({\n displayName: \"Title\"\n})([\n `color:`,\n `;`,\n ` `,\n ` `,\n ` `,\n ` text-align:center;`\n], ({ theme })=>theme.colors.grays.darker, FontMixin({\n size: 'larger',\n height: 'larger',\n weight: 'medium'\n}), Padding({\n y: '0',\n x: '8px'\n}), FlexMixin({\n justify: 'center'\n}), Margin({\n bottom: '16px'\n}));\nconst ViewMore = /*#__PURE__*/ styled.a.withConfig({\n displayName: \"ViewMore\"\n})([\n ``,\n ` `,\n ` color:`,\n `;border:1px solid `,\n `;background-color:`,\n `;`,\n ` text-transform:uppercase;white-space:nowrap;width:100%;`,\n ` min-height:100%;`,\n ` `,\n ` &.gray-style{background-color:`,\n `;color:`,\n `;border:none;`,\n ` `,\n ` `,\n ` min-width:160px;white-space:break-spaces;& > i{color:`,\n `;`,\n ` align-self:flex-end;}}`\n], FontMixin({\n size: 'medium',\n weight: 'medium',\n height: 'small'\n}), BorderRadius({\n all: '4px'\n}), ({ theme })=>theme.colors.primary.light, ({ theme })=>theme.colors.primary.light, ({ theme })=>theme.colors.white.base, Padding({\n y: '8px',\n x: '16px'\n}), FlexMixin({\n align: 'center'\n}), ({ $marginRight = '12px' })=>`margin-right: ${$marginRight};`, ({ $viewHorizontal, theme })=>!$viewHorizontal && /*#__PURE__*/ css([\n ``,\n ` background-color:`,\n `;width:50%;justify-content:center;`\n ], Margin({\n top: '16px',\n right: 'auto',\n left: 'auto',\n bottom: '0'\n }), theme.colors.white.base), ({ theme })=>theme.colors.grays.light, ({ theme })=>theme.colors.grays.dark, Padding({\n y: '32px',\n x: '20px'\n}), FlexMixin({\n align: 'flex-start',\n direction: 'column',\n justify: 'space-between',\n wrap: true\n}), FontMixin({\n weight: 'regular'\n}), ({ theme })=>theme.colors.grays.base, FontMixin({\n size: 'largest',\n weight: 'regular'\n}));\nconst ListWrapper = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"ListWrapper\"\n})([\n ``,\n ` `,\n ``\n], Padding({\n bottom: '8px'\n}), ({ $viewHorizontal, theme })=>$viewHorizontal ? `\n\t\t\t\toverflow-x: scroll;\n\t\t\t\tdisplay: flex;\n\n\t\t\t` : `\n\t\t\t\t${FlexMixin({\n direction: 'column'\n })}\n\t\t\t\tbackground: ${theme.bodyBgColor};\n\t\t`);\nconst ItemList = /*#__PURE__*/ styled.div.withConfig({\n displayName: \"ItemList\"\n})([\n ``,\n ``\n], ({ $viewHorizontal, $marginTop = '16px', $marginRight = '12px', $widthCards = 2, $wrappedCards = false })=>{\n const width = `calc(100% / ${$widthCards} - (${$marginRight} / 2))`;\n const minWidth = !$wrappedCards ? `min-width: ${width};` : '';\n const maxWidth = !$wrappedCards ? `max-width: ${width};` : '';\n return $viewHorizontal ? `\n\t\tdisplay: flex;\n\t\t${maxWidth}\n\t\t${minWidth}\n\t\tmargin-right: ${$marginRight}` : `margin-top: ${$marginTop}`;\n});\n\nexport { ItemList, ListWrapper, Title, ViewMore };\n//# sourceMappingURL=styled.mjs.map\n","import { jsx, jsxs, Fragment } from 'react/jsx-runtime';\nimport Icon from '@babylon/ui-kit-base/components/icons/icon';\nimport CardSkeletonMobile from '@babylon/ui-kit-cards/components/cards/product-card/views/mobile/card-skeleton';\nimport { genKey } from '@babylon/ui-kit-helpers/keys';\nimport classNames from 'classnames';\nimport { useMemo, Children } from 'react';\nimport { ViewMore, ItemList, Title, ListWrapper } from './styled.mjs';\n\nconst CarouselGenericMobile = (props)=>{\n const { heading, items = [], className, viewMore, isLoading = false, showViewMore = true, numCards = 10, viewHorizontal = false, widthCards, marginRight, marginTop, wrappedCards } = props;\n const title = heading?.title?.content;\n const skeleton = useMemo(()=>new Array(5).fill(/*#__PURE__*/ jsx(CardSkeletonMobile, {})), []);\n const renderViewMore = showViewMore && !!viewMore && !!viewMore.href && !!viewMore.content && !isLoading && /*#__PURE__*/ jsxs(ViewMore, {\n \"data-testid\": \"CarouselGenericViewMore\",\n ...viewMore,\n $viewHorizontal: viewHorizontal,\n $marginRight: marginRight,\n className: viewMore.isGray ? 'gray-style' : '',\n children: [\n viewMore?.content,\n viewMore.isGray ? /*#__PURE__*/ jsx(Icon, {\n className: 'nico-arrow-right'\n }) : ''\n ]\n });\n const cards = items?.slice(0, numCards).map((card, index)=>/*#__PURE__*/ jsx(ItemList, {\n $viewHorizontal: viewHorizontal,\n $widthCards: widthCards,\n $marginRight: marginRight,\n $marginTop: marginTop,\n $wrappedCards: wrappedCards,\n children: card\n }, genKey(index.toString())));\n return items?.length ? /*#__PURE__*/ jsxs(\"div\", {\n \"data-testid\": \"CarouselGeneric\",\n className: className ? classNames({\n [className]: !!className\n }) : undefined,\n children: [\n title && /*#__PURE__*/ jsx(Title, {\n children: title\n }),\n /*#__PURE__*/ jsxs(ListWrapper, {\n $viewHorizontal: viewHorizontal,\n children: [\n isLoading ? Children.toArray(skeleton) : cards,\n \" \",\n renderViewMore\n ]\n })\n ]\n }) : /*#__PURE__*/ jsx(Fragment, {});\n};\n\nexport { CarouselGenericMobile as default };\n//# sourceMappingURL=index.mjs.map\n","import { generateViewsComponent } from '@babylon/ui-kit-helpers/views';\nimport CarouselGenericDesktop from './views/desktop/index.mjs';\nimport CarouselGenericMobile from './views/mobile/index.mjs';\n\nconst CarouselGeneric = generateViewsComponent(CarouselGenericDesktop, CarouselGenericMobile);\n\nexport { CarouselGeneric as default };\n//# sourceMappingURL=index.mjs.map\n"],"file":"cdn-placeholder/babylon/packages/logitravel/client/chunks/index.D9W1CGwe.js"}