1import{$t as e,At as t,B as n,Bt as r,Ct as i,Dt as a,E as o,Et as s,Jt as c,Nt as l,Ot as u,Pt as d,Sn as f,St as p,Tn as m,Yt as h,Zt as g,an as _,in as v,kt as y,mn as b,wn as x,xn as S}from"./index-CPU57F_q.js";import{a as C,l as w}from"./module-loader-DlPl8aPw.js";import{r as T,t as E}from"./BaseModule-lJnEzcpv.js";import{n as D}from"./youtube-BZgE9ox7.js";import{t as O}from"./QIcon-BBBEZAsa.js";import{t as k}from"./QImg-ClcOAqxm.js";import{t as A}from"./letsbook-D4o22Woz.js";import{t as j}from"./GalleryModal-CjA9Cv-o.js";import{t as M}from"./galleryVisibilityProps-BSdOhmN9.js";var N=[`data-alternate-state`],P=[`data-type`],F=[`data-src`,`data-sub-html`,`title`],I=[`onClick`],L=n(d({__name:`PhotosMosaic`,props:{...T,...M,media:{type:Array,default:()=>[]},loadImagesFromLetsBook:{type:Boolean,default:!1},hotelId:{type:Number,default:null},alternateItems:{type:Boolean,default:!1},alternateItemsSpeed:{type:[String,Number],default:8}},setup(n){let d=n,T=b([]),M=b(!1),L=s(()=>{let e=d.media.map((e,t)=>({...e,id:e.id||`customID${t}`}));return[...T.value,...e]});c(()=>{C().hasLetsbookIntegration&&v(()=>[d.loadImagesFromLetsBook,d.hotelId],([e,t])=>{e&&t?R():T.value=[]},{immediate:!0}),d.alternateItems&&H()});async function R(){M.value=!0,T.value=((await A().getHotelImages(d.hotelId))?.urlImagem||[]).map(e=>({id:w(),type:`image`,image:e})),M.value=!1}let z=b(!1),B=b(),V=s(()=>{if(!d.alternateItems)return L.value.map(e=>[e]);let e=Math.min(Math.ceil(L.value.length/2),8);return L.value.slice(0,e).map((t,n)=>[t,L.value[n+e]].filter(Boolean))});v(()=>d.alternateItems,e=>{e?H():U()}),v(()=>d.alternateItemsSpeed,()=>{U(),H()});function H(){let e=Math.max(Number(d.alternateItemsSpeed),2);B.value=window.setInterval(()=>{z.value=!z.value},e*1e3)}function U(){B.value&&clearInterval(B.value)}h(U);let W=b(!1),G=b(0),K=s(()=>L.value.filter(e=>e.type!==`text`));function q(e){G.value=K.value.findIndex(t=>t.id===e),W.value=!0}function J(e){return e.type===`video`?e.linkVideo?.value:e.image}function Y(e){return e.type===`video`?e.linkVideo?.value?D(e.linkVideo.value):void 0:e.image||void 0}return(n,s)=>(g(),u(E,r(d,{class:[`photos-mosaic-module`,{loading:M.value}],"data-module":`photos-mosaic`}),{default:_(()=>[V.value.length>0?(g(),t(`div`,{key:0,class:`grid-imagens`,"data-alternate-state":z.value,onMouseenter:U,onMouseleave:H},[(g(!0),t(i,null,e(V.value,(r,s)=>(g(),t(`div`,{key:s,class:`grid-block`},[(g(!0),t(i,null,e(r,(e,r)=>(g(),t(`div`,{key:r,class:`grid-item`,"data-type":e.type},[e.type===`text`?(g(),t(`div`,{key:1,class:`text-item`,style:x({background:e.bgColor||`#fff`})},[a(`p`,{class:`text-item__title`,style:x({color:e.titleColor||`#000`})},m(e.title),5),a(`p`,{class:`text-item__text`,style:x({color:e.textColor||`#000`})},m(e.text),5)],4)):(g(),t(`div`,{key:0,"data-src":J(e),class:`item-image gallery-modal-area`,"data-sub-html":e.caption,title:e.alt},[l(k,{src:Y(e),alt:e.alt,class:`full-bg`},null,8,[`src`,`alt`]),n.galleryVisibility===`none`?y(``,!0):(g(),t(`button`,{key:0,class:f([`btn-gallery-modal--overlay`,{"always-visible":n.galleryVisibility===`always`}]),onClick:p(t=>q(e.id),[`stop`])},[l(O,{name:S(o),class:`text-white`,size:`md`},null,8,[`name`])],10,I))],8,F))],8,P))),128))]))),128))],40,N)):y(``,!0),n.galleryVisibility===`none`?y(``,!0):(g(),u(j,{key:1,modelValue:W.value,"onUpdate:modelValue":s[0]||=e=>W.value=e,slides:K.value,"is-modal-open":W.value,"first-image":G.value,onCloseModal:s[1]||=e=>W.value=!1},null,8,[`modelValue`,`slides`,`is-modal-open`,`first-image`]))]),_:1},16,[`class`]))}}),[[`__scopeId`,`data-v-bdf8adb6`]]);export{L as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.