{"version":3,"mappings":";uEAKK,MAACA,EAAc,CAACC,EAAOC,IAAc,CACtC,MAAMC,EAAWC,SAAO,IAAI,EACtBC,EAAUC,aAAWC,CAAc,EACnCC,EAAQH,EAAQ,IAAI,WAAW,MAAM,EAAIA,EAAQ,IAAI,UAAU,CAAC,EAAIA,EAAQ,IAC5EI,EAASR,EAAM,IAAKS,GAAO,CAC7B,MAAMC,EAAOT,EAAcU,EAAaV,EAAaM,EAAOE,EAAK,GAAG,EAAIG,EAAUH,EAAK,IAAKF,CAAK,EACjG,MAAO,CACH,KAAMN,GAAA,MAAAA,EAAa,SAAWQ,EAAK,IAAMC,EACzC,KAAM,QACN,IAAKD,EAAK,GACtB,CACA,CAAK,EACDI,mBAAU,IAAI,CACLX,EAAS,SAEVY,EAAA,WAAO,6BAAW,uDAAE,KAAMC,GAAS,CAC/Bb,EAAS,QAAUa,EAAO,QAAQ,CAC9B,WAAY,OACZ,YAAa,OACb,KAAM,GACN,SAAUP,CAC9B,CAAiB,CACjB,CAAa,CAEb,EAAO,CACCA,CACR,CAAK,EAKM,CACH,kBALuBQ,GAAQ,CAE/Bd,EAAS,QAAQ,OAAOc,CAAK,CACrC,CAGA,CACA,ECtCMC,EAAW,CAACC,EAAMC,EAAY,GAAIC,EAAS,MAAOC,EAAS,KAAKH,EAAK,OAASC,EAAY,GAAGE,CAAM,GAAGH,EAAK,UAAU,EAAGC,CAAS,CAAC,GAAGC,CAAM,GAAKF","names":["useLightbox","items","imageConfig","lightbox","useRef","context","useContext","contextBabylon","mscdn","images","item","href","getResizeUrl","hasDomain","useEffect","__vitePreload","module","index","truncate","text","maxLength","suffix","prefix"],"ignoreList":[0,1],"sources":["../../../../../../../node_modules/@babylon/ui-kit-cards/esm/hooks/photo-gallery/useLightbox.mjs","../../../../../../../node_modules/@babylon/ui-kit-helpers/esm/text.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"],"file":"cdn-placeholder/babylon/packages/logitravel/client/chunks/text.BHqkwX_I.js"}