PageSourceSearch

https://www.teletextholidays.co.uk/_next/static/chunks/5294-df08bed179ab9a31.js

js teletextholidays.co.uk collected 2026-10-02 11:52:33 UTC 68,088 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5294],{19069:function(e,t,s){s.d(t,{Z:function(){return n}});var l=s(85893),a=s(67294),i=s(73935);function n(e){let{children:t,iconRef:s}=e,[n,o]=(0,a.useState)(null),r=(0,a.useRef)(null);return(0,a.useEffect)(()=>{function e(){if(s.current&&r.current){let e=s.current.getBoundingClientRect(),t=r.current.getBoundingClientRect(),l=e.bottom+8,a=e.left+e.width/2-t.width/2;a+t.width>window.innerWidth-8&&(a=window.innerWidth-t.width-8),a<8&&(a=8),l+t.height>window.innerHeight-8&&(l=e.top-t.height-8),o({top:l,left:a})}}return e(),window.addEventListener("resize",e),window.addEventListener("scroll",e,!0),()=>{window.removeEventListener("resize",e),window.removeEventListener("scroll",e,!0)}},[s]),i.createPortal((0,l.jsx)("div",{ref:r,style:{position:"fixed",top:n?n.top:-9999,left:n?n.left:-9999,zIndex:9999,width:250,background:"white",border:"1px solid #e5e7eb",borderRadius:8,boxShadow:"0 2px 8px rgba(0,0,0,0.12)",color:"#1A1A2E",textAlign:"justify",fontSize:11,padding:8,pointerEvents:"auto",visibility:n?"visible":"hidden"},children:t}),document.body)}},43498:function(e,t,s){s.d(t,{Z:function(){return a}});var l=s(85893);function a(e){let{size:t=50,className:s=""}=e;return(0,l.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32.01 32.01",width:t,height:t,role:"img","aria-label":"ATOL protected",className:s,children:[(0,l.jsx)("defs",{children:(0,l.jsx)("style",{children:".cls-1{fill:#fff;}.cls-2{fill:#ffd304;}"})}),(0,l.jsx)("path",{d:"M.25,13.2C1.8,4.51,10.09-1.29,18.78.25l.1.02c8.69,1.59,14.45,9.93,12.86,18.62s-9.93,14.45-18.62,12.86C4.46,30.16-1.3,21.87.25,13.2Z"}),(0,l.jsx)("path",{className:"cls-2",d:"M25.96,4.12C19.4-1.37,9.64-.51,4.15,6.05c-1.74,2.08-2.91,4.57-3.37,7.24-1.47,8.4,4.13,16.4,12.53,17.89h.03c8.41,1.49,16.43-4.12,17.92-12.53.96-5.44-1.05-10.98-5.29-14.54h-.01,0Z"}),(0,l.jsx)("path",{d:"M18.51,26.68c-.03.16-.04.35-.06.52h-.07c-.21-.25-.53-.39-.86-.37-.81.08-1.06.88-1,1.6.09.84.55,1.37,1.3,1.3.34-.04.64-.2.84-.44l.07.02-.07.42c-.27.19-.61.28-.95.31-1.04.1-1.9-.45-2-1.46-.11-1.28.71-1.94,1.78-2.04.32-.04.72,0,1.02.14Z"}),(0,l.jsx)("path",{d:"M13.37,26.42l1.84.31-.06.2v.22c-.35-.11-.7-.2-1.07-.25h-.05l-.17,1.03.5.1c.23.03.43.04.61.05l-.07.2v.22c-.19-.06-.38-.11-.57-.15h-.02l-.5-.09-.21,1.22c.5.08.82.12,1.13.12l-.07.21v.21l-1.85-.3.56-3.3Z"}),(0,l.jsx)("path",{d:"M21.1,25.52l.05.2.1.19c-.25.06-.48.12-.69.2l-.15.05,1.1,2.8-.34.12-.35.15-1.1-2.8c-.33.13-.6.28-.82.4l-.05-.2-.1-.18,2.35-.93Z"}),(0,l.jsx)("polygon",{className:"cls-1",points:"11.12 5.34 24.11 7.61 21.32 23.27 8.59 21.2 11.12 5.34"}),(0,l.jsx)("path",{d:"M10.55,25.32l2.32,1.01c-.04.06-.08.12-.1.18l-.06.2c-.24-.15-.48-.28-.73-.4h-.05l-1.2,2.75-.33-.16c-.11-.06-.23-.1-.34-.12l1.2-2.77c-.24-.11-.53-.2-.83-.28l-.04-.02.11-.18.05-.2h0Z"}),(0,l.jsx)("path",{d:"M23.05,24.16c.04.06.06.13.1.18l.14.16c-.26.15-.56.31-.96.6l.6.87.42-.3c.18-.13.34-.26.47-.39l.11.2c.04.06.09.11.14.15-.17.08-.34.19-.53.31l-.4.3.71,1.02c.4-.3.66-.52.88-.72l.1.2.15.15-1.53,1.07-1.93-2.73s1.53-1.07,1.53-1.07Z"}),(0,l.jsx)("path",{d:"M9.03,24.04c1.04.9.7,1.94.2,2.5-.62.73-1.71.85-2.62.06-.82-.71-.94-1.67-.21-2.5.64-.74,1.7-.86,2.63-.06Z"}),(0,l.jsx)("path",{className:"cls-2",d:"M6.91,24.74c-.4.47-.64,1.18-.09,1.66.57.49,1.33.15,1.87-.46.4-.48.67-1.22.11-1.71-.51-.43-1.15-.32-1.89.5h0Z"}),(0,l.jsx)("path",{d:"M26.74,22.3c.86.68.9,1.7.28,2.49l-.86,1.07-2.63-2.06,1.05-1.32h0c.68-.81,1.52-.68,2.16-.18Z"}),(0,l.jsx)("path",{className:"cls-2",d:"M24.51,23.02l-.3.38,2.18,1.7h.01l.25-.32c.42-.53.48-1.14-.42-1.85-.73-.57-1.28-.46-1.72.09Z"}),(0,l.jsx)("path",{d:"M6.14,20.41v.02l.52.89c.12.2.31.5.32.73v.08c0,.27-.15.52-.39.64-.4.25-.83.14-1.14-.2-.27.46-.51.95-.75,1.43l-.17.32-.21-.4-.24-.36.6-1.03.3-.54-.02-.03-1.36.8-.16-.33c-.06-.12-.14-.21-.2-.31l2.9-1.7h0Z"}),(0,l.jsx)("path",{d:"M11.12,5.33l2.54.45-.12.24c-1.8,3.4-1.7,7.1,1.3,10.22,1.71,1.72,4.04,2.69,6.47,2.7h.22c.36,0,.57-.02.57-.02l-.87,4.83-12.97-2.28s2.86-16.14,2.86-16.14Z"}),(0,l.jsx)("path",{className:"cls-2",d:"M6.29,21.2l-1.15.66c.23.46.57.58,1,.31.08-.04.15-.09.2-.15.31-.27.1-.57-.05-.82Z"}),(0,l.jsx)("polygon",{className:"cls-1",points:"19.15 19.88 18.88 21.43 21.05 21.82 21.11 21.53 19.58 21.27 19.81 19.99 19.15 19.88"}),(0,l.jsx)("path",{className:"cls-1",d:"M16.15,19.48c-.34.1-.54.32-.6.64-.04.32.08.6.37.82.2.18.54.32.97.41.46.1.8.1,1.05,0,.35-.11.54-.32.59-.64.04-.32-.07-.6-.36-.82-.29-.21-.63-.35-.98-.4-.44-.1-.79
1-.1-1.04,0h0Z"}),(0,l.jsx)("path",{d:"M17.15,19.8c.22.03.42.13.58.28.12.14.18.32.14.5-.01.18-.12.34-.28.42-.21.09-.43.1-.65.04-.21-.04-.41-.13-.57-.28-.14-.13-.2-.33-.16-.52.03-.18.14-.33.3-.4.2-.1.43-.1.64-.04Z"}),(0,l.jsx)("polygon",{className:"cls-1",points:"12.94 18.77 12.88 19.04 13.82 19.22 13.59 20.49 14.23 20.61 14.46 19.33 15.38 19.49 15.44 19.22 12.94 18.77"}),(0,l.jsx)("polygon",{className:"cls-1",points:"10.97 18.43 9.6 19.79 10.26 19.9 10.53 19.62 11.68 19.82 11.82 20.17 12.52 20.3 11.7 18.55 10.97 18.43"}),(0,l.jsx)("path",{d:"M5.34,17.83l.32,1.15c.18.66,0,1.08-.53,1.23-.84.23-1.19-.34-1.43-1.19l-1.41.39-.08-.35c-.03-.13-.08-.23-.12-.36l3.25-.88h0Z"}),(0,l.jsx)("path",{className:"cls-2",d:"M5.28,18.6l-1.31.34h0l.11.31c.17.28.48.33.77.25.37-.11.57-.36.51-.62,0,0-.08-.28-.08-.28Z"}),(0,l.jsx)("polygon",{points:"11.27 18.85 11.54 19.52 10.76 19.38 11.26 18.85 11.26 18.85 11.27 18.85"}),(0,l.jsx)("path",{d:"M19.45,6.79l4.66.82-1.88,10.55s-3.67-.04-5.5-3.67c-2.51-5,2.72-7.7,2.72-7.7Z"})]})}s(67294)},11308:function(e,t,s){s.d(t,{Z:function(){return Q}});var l=s(85893),a=s(67294),i=s(11163),n=s(81376),o=s(1230),r=s(27484),d=s.n(r),c=s(55451),x=s(25675),p=s.n(x),m=s(52486),u=s(9668),h=s(30080),g=s(96567),v=s(40764),f=s(45007),b=s(87771),j=s(52091);function A(e){let{size:t=14}=e;return(0,l.jsxs)("svg",{width:t,height:t,viewBox:"0 0 24 24",className:"flex-shrink-0",children:[(0,l.jsx)("path",{d:"M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92c-.26 1.37-1.04 2.53-2.21 3.31v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.09z",fill:"#4285F4"}),(0,l.jsx)("path",{d:"M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z",fill:"#34A853"}),(0,l.jsx)("path",{d:"M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18C1.43 8.55 1 10.22 1 12s.43 3.45 1.18 4.93l2.85-2.22.81-.62z",fill:"#FBBC05"}),(0,l.jsx)("path",{d:"M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z",fill:"#EA4335"})]})}function w(e){let{googleReviews:t,onOpenReviews:s,isClickable:a}=e;if(!t||t.error)return null;let i=null==t?void 0:t.googleRating,n=null==t?void 0:t.googleTotalReviews,o=null==t?void 0:t.hasPositiveReviews,r=null==t?void 0:t.googleReviews,d=Array.isArray(r)&&r.some(e=>Number(null==e?void 0:e.rating)>=3),c="boolean"==typeof a?a:!0===o||d;return i?(0,l.jsxs)("div",{className:"inline-flex items-center gap-[5px] flex-shrink-0 bg-[#F8F8F8] rounded-[6px] px-2 py-1 ".concat(c?"cursor-pointer":"cursor-default"),onClick:e=>{e.stopPropagation(),c&&s&&s()},"data-track":"google-serp-reviews",children:[(0,l.jsx)(A,{size:14}),(0,l.jsx)("span",{className:"text-[13px] font-extrabold text-[#1A1A2E] leading-none",children:i}),(0,l.jsxs)("div",{className:"flex flex-col items-start gap-[2px]",children:[(0,l.jsx)(y,{rating:i}),n>0&&(0,l.jsxs)("span",{className:"text-[9px] text-[#6F6F7E] font-semibold leading-none whitespace-nowrap",children:[n.toLocaleString()," reviews"]})]})]}):null}function y(e){let{rating:t}=e,s=[];for(let e=0;e<5;e++){let a=Math.min(Math.max(t-e,0),1);a>=.75?s.push((0,l.jsx)(j.QJe,{className:"text-[#FFC107] text-[10px]"},e)):a>=.25?s.push((0,l.jsx)(j.TtB,{className:"text-[#FFC107] text-[10px]"},e)):s.push((0,l.jsx)(j.jJN,{className:"text-[#ddd] text-[10px]"},e))}return(0,l.jsx)("div",{className:"flex items-center gap-[1px]",children:s})}var N=s(94911),k=s(62489),F=s(71818),D=s(95615),E=s(9257),C=s(19069),T=s(33755),M=s(18318),R=s(37094);function I(e){let{count:t}=e;return(0,l.jsx)("span",{className:"inline-flex items-center gap-0.5",children:Array.from({length:null!=t?t:0}).map((e,t)=>(0,l.jsx)(n.DQk,{className:"text-[#FFC107] text-base"},t))})}let L=()=>(0,l.jsx)("div",{className:"w-full h-full bg-gray-200 animate-pulse"}),P=(0,a.memo)(()=>(0,l.jsxs)("div",{className:"hidden xs:grid grid-cols-2 grid-rows-2 gap-[3px] h-[260px] mb-5 rounded-lg overflow-hidden",children:[(0,l.jsx)("div",{className:"col-span-1 row-span-2 bg-gray-200 animate-pulse"}),(0,l.jsx)("div",{className:"col-span-1 row-span-2 h-full grid grid-cols-2 grid-rows-[1fr_1fr] gap-[3px]",children:[0,1,2,3].map(e=>(0,l.jsx)("div",{className:"bg-gray-200 animate-pulse"},e))})]}));P.displayName="ImageSkeleton5Grid";let S=(0,a.memo)(e=>{let{allImages:t,isLoadingImages:s,hotelName:a,onExpand:i}=e,n=[...t];for(;n.length<5;)n.push(null);let o=t.length>5?t.length-5:0;return s?(0,l.jsx)(P,{}):(0,l.jsxs)("div",{className:"hidden xs:grid grid-cols-2 grid-rows-2 gap-[3px] h-[260px] mb-5 rounded-lg overflow-hidden cursor-pointer",onClick:i,children:[(0,l.jsx)("div",{className:"col-span-1 row-span-2 relative overflow-hidden bg-gray-200",children:n[0]?(0,l.jsx)(p(),{src:n[0].src,alt:a,className:"w-full h-full object-cover",loading:"eager",width:500,height:500}):(0,l.jsx)(L,{})}),(0,l.jsx)("div",{className:"col-span-1 row-span-2 h-full grid grid-cols-2 grid-rows-[1fr_1fr] gap-[3px]",children:[n[1],n[2],n[3],n[4]].map((e,t)=>(0,l.jsxs)("div",{className:"relative overflow-hidden bg-gray-200",children:[e?(0,l.jsx)(p(),{src:e.src,alt:"",className:"w-full h-full object-cover",loading:"eager",width:500,height:500}):(0,l.jsx)(L,{}),3===t&&o>0&&(0,l.jsx)("div",{className:"absolute inset-0 bg-black/45 flex items-center justify-center",children:(0,l.jsxs)("span",{className:"text-white font-semibold text-sm",children:["+ ",o," photos"]})})]},t))})]})});S.displayName="DesktopImageGrid";let _=(0,a.memo)(e=>{var t;let{allImages:s,isLoadingImages:i,hotelName:n,onExpand:o}=e,[r,d]=(0,a.useState)(0);(0,a.useEffect)(()=>{d(0)},[s]);let c=(0,a.useCallback)(e=>{e.stopPropagation(),d(e=>(e-1+s.length)%s.length)},[s.length]),x=(0,a.useCallback)(e=>{e.stopPropagation(),d(e=>(e+1)%s.length)},[s.length]);return(0,l.jsxs)("div",{className:"xs:hidden relative h-[220px] overflow-hidden rounded-xl mb-4",onClick:o,children:[i?(0,l.jsx)(L,{}):(0,l.jsx)(p(),{src:null===(t=s[r])||void 0===t?void 0:t.src,alt:n,className:"w-full h-full object-cover",loading:"eager",width:500,height:500}),!i&&s.length>1&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("button",{onClick:c,className:"absolute left-2 top-1/2 -translate-y-1/2 w-8 h-8 rounded-full bg-white/80 shadow flex items-center justify-center text-gray-800 font-bold text-xl leading-none",children:(0,l.jsx)(j.bUI,{className:"size-6"})}),(0,l.jsx)("button",{onClick:x,className:"absolute right-2 top-1/2 -translate-y-1/2 w-8 h-8 rounded-full bg-white/80 shadow flex items-center justify-center text-gray-800 font-bold text-xl leading-none",children:(0,l.jsx)(j.Dli,{className:"size-6"})}),(0,l.jsxs)("div",{className:"absolute bottom-2 left-1/2 -translate-x-1/2 bg-black/50 text-white text-xs px-2.5 py-0.5 rounded-full",children:[r+1,"/",s.length]})]})]})});_.displayName="MobileCarousel";let z=(0,a.memo)(e=>{let{allImages:t,isLoadingImages:s,hotelName:a,onExpand:i,strapiHotelData:n,isLoadingStrapi:o}=e;return(0,l.jsxs)("div",{children:[(0,l.jsx)(_,{allImages:t,isLoadingImages:s,hotelName:a,onExpand:i}),(0,l.jsx)(S,{allImages:t,isLoadingImages:s,hotelName:a,onExpand:i}),(0,l.jsx)("div",{className:"mb-1",children:(0,l.jsx)("h2",{className:"pb-1 fod-deal-heading",children:"About this hotel"})}),o?(0,l.jsx)("div",{className:"flex items-center justify-center py-8",children:(0,l.jsx)(b.Z7b,{className:"animate-spin text-[#071a26] text-2xl"})}):(0,l.jsx)("div",{className:"font-InterRegular font-normal hotel-details rich-text-hotel-content summersale-text text-ju
1stify",id:"overview",dangerouslySetInnerHTML:{__html:null==n?void 0:n.description}})]})});z.displayName="DescriptionContent";let H=(0,a.memo)(e=>{var t;let{reviewdata:s,dynamicReviews:a}=e;return(0,l.jsxs)("div",{children:[s&&(0,l.jsx)("div",{className:"flex items-center gap-3 mb-5 p-3 bg-gray-50 rounded-lg border border-gray-100",children:(0,l.jsxs)("div",{className:"flex flex-col",children:[(0,l.jsx)(I,{count:Math.round(s.googleRating)}),(0,l.jsxs)("p",{className:"text-xs text-[#071a26] mt-0.5",children:["Google rating ",s.googleRating," \xb7"," ",null===(t=s.googleTotalReviews)||void 0===t?void 0:t.toLocaleString()," reviews"]})]})}),(0,l.jsx)("div",{className:"space-y-3",children:null==a?void 0:a.map(e=>(0,l.jsxs)("div",{className:"border border-gray-100 rounded-lg p-3 bg-white",children:[(0,l.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,l.jsx)("p",{className:"font-semibold text-sm text-[#071a26]",children:e.author}),(0,l.jsx)("span",{className:"text-xs text-[#071a26]",children:e.date})]}),(0,l.jsx)("div",{className:"flex items-center gap-1 mb-2",children:(0,l.jsx)(I,{count:e.rating})}),(0,l.jsx)("p",{className:"text-sm text-[#071a26] leading-relaxed whitespace-pre-line",children:e.body})]},e.id))})]})});H.displayName="ReviewsContent";let B=(0,a.memo)(()=>(0,l.jsxs)("div",{children:[(0,l.jsxs)("div",{className:"flex items-center gap-3 mb-5 p-3 bg-gray-50 rounded-lg border border-gray-100 animate-pulse",children:[(0,l.jsx)("div",{className:"w-20 h-4 rounded bg-gray-200"}),(0,l.jsx)("div",{className:"w-40 h-3 rounded bg-gray-200"})]}),(0,l.jsx)("div",{className:"space-y-3",children:[0,1,2].map(e=>(0,l.jsxs)("div",{className:"border border-gray-100 rounded-lg p-3 bg-white animate-pulse",children:[(0,l.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,l.jsx)("div",{className:"w-28 h-4 rounded bg-gray-200"}),(0,l.jsx)("div",{className:"w-20 h-3 rounded bg-gray-200"})]}),(0,l.jsx)("div",{className:"w-24 h-3 rounded bg-gray-200 mb-3"}),(0,l.jsxs)("div",{className:"space-y-2",children:[(0,l.jsx)("div",{className:"w-full h-3 rounded bg-gray-200"}),(0,l.jsx)("div",{className:"w-[90%] h-3 rounded bg-gray-200"}),(0,l.jsx)("div",{className:"w-[75%] h-3 rounded bg-gray-200"})]})]},e))})]}));function Z(e){let{lat:t,lon:s,name:i}=e,n=(0,T.A)(),o=(0,a.useRef)(null),r=(0,a.useRef)(null),d=parseFloat(t),c=parseFloat(s),x=t&&s&&!isNaN(d)&&!isNaN(c)&&d>=-90&&d<=90&&c>=-180&&c<=180;return((0,a.useEffect)(()=>{if(!n||!o.current||r.current||!x||!window.mapboxgl)return;window.mapboxgl.accessToken="pk.eyJ1IjoidGVsZXRleHRtYXBzIiwiYSI6ImNtMW9pajA1czBodWgycXNmcDJ2cmVmbDgifQ.N6mTOOvbfX5iV95l_zSDJg";let e=new window.mapboxgl.Map({container:o.current,style:"mapbox://styles/mapbox/streets-v11",center:[c,d],zoom:14});e.addControl(new window.mapboxgl.NavigationControl({showCompass:!1}),"top-right");let t=new window.mapboxgl.Popup({offset:[0,-42],anchor:"bottom",closeButton:!1,maxWidth:"none"}).setHTML('\n  <div style="padding:6px 10px;">\n    <div style="font-weight:700;font-size:13px;color:#071a26;line-height:1.3;white-space:normal;word-break:break-word;">\n      '.concat(i||"Hotel","\n    </div>\n  </div>"));return new window.mapboxgl.Marker({color:"#e74c3c"}).setLngLat([c,d]).setPopup(t).addTo(e),t.addTo(e),r.current=e,()=>{r.current&&(r.current.remove(),r.current=null)}},[n,x,d,c,i]),x)?n?(0,l.jsx)("div",{className:"hotel-details-map h-full w-full",children:(0,l.jsx)("div",{ref:o,className:"h-full w-full rounded-lg overflow-hidden border border-gray-200"})}):(0,l.jsxs)("div",{className:"w-full h-[420px] flex items-center justify-center bg-gray-100 rounded-lg text-[#071a26] text-sm gap-2",children:[(0,l.jsx)(b.Z7b,{className:"animate-spin text-xl"})," Loading map…"]}):(0,l.jsx)("div",{className:"w-full h-[420px] flex items-center justify-center bg-gray-100 rounded-lg text-[#071a26] text-sm",children:"Map location unavailable"})}B.displayName="ReviewsSkeleton";let Y=(0,a.memo)(e=>{let{lat:t,lon:s,name:a}=e;return(0,l.jsx)("div",{className:"h-full w-full",children:(0,l.jsx)(Z,{lat:t,lon:s,name:a})})});Y.displayName="MapContent";var O=function(e){var t,s,i,n,r,x,m,u;let{hotelDetails:g,onClose:v,onViewDeal:A,hotelonly:w,initialTab:y,isLoading:E,formattedCheckInDate:C}=e,[T,L]=(0,a.useState)(y||"Description"),[P,S]=(0,a.useState)([]),[_,Z]=(0,a.useState)(!1),[O,W]=(0,a.useState)(!1),[V,J]=(0,a.useState)(-1),Q=(0,a.useRef)(null),U=(0,a.useRef)(null),[G,K]=(0,a.useState)(null),[X,q]=(0,a.useState)(!1),[$,ee]=(0,a.useState)(null),et=(0,f.v9)(D.ly),[es,el]=(0,a.useState)("0330 190 0001"),ea="https://img-uat.teletextholidays.co.uk",ei=e=>"".concat((0,o.commaSeperatePrice)((0,o.formatRoundedPrice)(e)));(0,a.useEffect)(()=>(document.body.classList.add("!overflow-hidden"),document.body.style.overflow="hidden",()=>{document.body.classList.remove("!overflow-hidden"),document.body.style.overflow=""}),[]),(0,a.useEffect)(()=>{(async()=>
1{if(null==g?void 0:g.esid){Z(!0);try{var e,t;let s=await (0,N.getHotelsImages)([g.esid]);s&&(null===(t=s[0])||void 0===t?void 0:null===(e=t.images)||void 0===e?void 0:e.length)>0&&S(s[0].images.map(e=>({src:"".concat(ea,"/").concat(e.src)})))}catch(e){console.error(e)}finally{Z(!1)}}})()},[null==g?void 0:g.esid]),(0,a.useEffect)(()=>{(async()=>{if(null==g?void 0:g.esid){ee(null),q(!0);try{let e=await (0,N.getHotelDetailsByHotelKey)(g.esid);e&&(ee(e),K({description:e.Description}))}catch(e){console.error("Error fetching hotel details:",e)}finally{q(!1)}}})()},[null==g?void 0:g.esid]),(0,a.useEffect)(()=>{let e=()=>{var e;let t=(null===(e=document.querySelector("a[data-phone]"))||void 0===e?void 0:e.getAttribute("data-phone"))||"",s=et||t||"0330 190 0001";if(el(s),U.current&&(U.current.setAttribute("href","tel:".concat(String(s).replace(/\s+/g,""))),U.current.setAttribute("data-phone",s)),"function"==typeof window._its)try{window._its("findAndReplaceNumbers")}catch(e){}};e();let t=setTimeout(e,250),s=setTimeout(e,900);return()=>{clearTimeout(t),clearTimeout(s)}},[et,O]);let en=(0,a.useMemo)(()=>P.length>0?P:[{src:"".concat(ea,"/hotel/").concat(null==g?void 0:g.esid,"/0.jpeg")}],[P,null==g?void 0:g.esid,ea]),eo=(0,a.useCallback)(e=>{e.stopPropagation(),W(!0)},[]),er=(null==g?void 0:g.maxPrice)>0&&(null==g?void 0:g.maxPrice)<5e3&&(null==g?void 0:g.maxPrice)!==(null==g?void 0:g.pricepp)&&(null==g?void 0:g.maxPrice)>=(null==g?void 0:g.pricepp)+10;er&&(g.maxPrice,g.pricepp);let ed=d()((null==g?void 0:g.isOfferRedEye)?null==g?void 0:g.checkInDate:null==g?void 0:null===(x=g.fl)||void 0===x?void 0:null===(r=x[0])||void 0===r?void 0:null===(n=r.oleg)||void 0===n?void 0:null===(i=n[0])||void 0===i?void 0:null===(s=i.seg)||void 0===s?void 0:null===(t=s[0])||void 0===t?void 0:t.dd).format("DD MMM YYYY"),ec=ed?"".concat(ed,", ").concat(null==g?void 0:g.nights," nights"):(null==g?void 0:g.nights)?"".concat(g.nights," nights"):null,ex=(null==$?void 0:$.reviews)||(null==g?void 0:g.reviews),ep=(0,a.useMemo)(()=>{let e=null==ex?void 0:ex.hasPositiveReviews,t=null==ex?void 0:ex.googleReviews;return Array.isArray(t)&&t.length>0?t.some(e=>Number(null==e?void 0:e.rating)>=3):!0===e},[ex]),em=(0,a.useMemo)(()=>{var e;return null==ex?void 0:null===(e=ex.googleReviews)||void 0===e?void 0:e.filter(e=>e.rating>=3).map((e,t)=>({id:t,author:e.author,rating:e.rating,body:e.text,date:e.time}))},[ex]),eu=["Description",...ep?["Reviews"]:[],...(()=>{let e=parseFloat(null==g?void 0:g.lat),t=parseFloat(null==g?void 0:g.lon);return(null==g?void 0:g.lat)&&(null==g?void 0:g.lon)&&!isNaN(e)&&!isNaN(t)&&e>=-90&&e<=90&&t>=-180&&t<=180})()?["Map"]:[]];return((0,a.useEffect)(()=>{"Reviews"!==T||ep||L("Description")},[T,ep]),O)?(0,l.jsxs)("div",{className:"image-gallery fixed inset-0 z-[9999] bg-white overflow-auto",children:[(0,l.jsxs)("div",{className:"top-0 sticky font-InterRegular font-bold z-[99] bg-white pt-5 pb-6",children:[(0,l.jsx)("div",{role:"button",onClick:()=>{W(!1),J(-1)},className:"relative tablet:mb-1",children:(0,l.jsx)(F.jTe,{className:"size-7 md:size-10 absolute left-2 xs:left-6 font-semibold"})}),(0,l.jsx)("div",{className:"text-base xs:text-xl tablet:text-2xl font-InterRegular font-bold text-center truncate-hotel ml-8 xs:ml-0",children:null==g?void 0:g.esname})]}),(0,l.jsx)(k.default,{hotelName:null==g?void 0:g.esname,hotelImages:P,setImageIndexGallery:J,imageIndexGallery:V})]}):(0,l.jsx)("div",{ref:Q,onClick:e=>{e.target===Q.current&&v()},className:"fixed inset-0 z-[9999] flex items-end xs:items-center justify-center bg-black/60",style:{backdropFilter:"blur(2px)"},children:(0,l.jsxs)("div",{onClick:e=>e.stopPropagation(),className:"relative bg-white flex flex-col shadow-2xl w-full xs:w-[90vw] xs:max-w-[1040px] rounded-lg",style:{height:"88vh",maxHeight:"88vh"},children:[(0,l.jsxs)("div",{className:"flex-shrink-0 flex items-center justify-between px-4 xs:px-5 pt-2 border-gray-200",children:[(0,l.jsx)("div",{children:(0,l.jsx)("span",{className:"fod-deal-heading",children:"Hotel details"})}),(0,l.jsx)("button",{onClick:v,className:"w-8 h-8 flex items-center justify-center rounded-full hover:bg-gray-100 transition-colors",children:(0,l.jsx)(M.Jvf,{className:"text-[#071a26] text-3xl"})})]}),(0,l.jsxs)("div",{className:"flex-1 min-h-0 flex overflow-hidden",children:[(0,l.jsxs)("div",{className:"flex-1 min-w-0 flex flex-col overflow-y-auto",children:[(0,l.jsxs)("div",{className:"px-4 xs:px-5 pt-0 pb-0",children:[(0,l.jsxs)("h2",{className:"text-lg xs:text-[24px] leading-[36px] font-bold font-montserrat text-[#1a1a2e]",children:[null==g?void 0:g.esname,(0,l.jsx)("span",{className:"inline-flex ml-2 align-middle",children:(0,l.jsx)(I,{count:null==g?void 0:g.rt})})]}),(0,l.jsxs)("div",{className:"flex items-center gap-1 mt-1 text-[#6F6F7E] text-xs xs:text-sm",children:[(0,l.jsx)(h.NK0,{className:"flex-shrink-0"}),(0,l.jsx)("span",{children:[null==g?void 0:g.rn,null==g?void 0:g.dn,null==g?void 0:g.cyn].filter(
1Boolean).join(", ")})]}),(null==ex?void 0:ex.googleRating)&&(0,l.jsxs)("div",{className:"flex items-center gap-2 mt-2",children:[(0,l.jsx)("img",{src:"https://strapi-teletext-s3-bucket.s3.eu-west-1.amazonaws.com/images/Google_Favicon_2025_a0b49d4395.webp",alt:"Google",className:"h-3.5 object-contain"}),(0,l.jsx)("div",{className:"flex items-center gap-1",children:Array.from({length:5}).map((e,t)=>{let s=ex.googleRating,a=t<Math.floor(s),i=!a&&t<s;return(0,l.jsx)("div",{className:"w-3 h-3 rounded-full flex-shrink-0",style:{background:a?"#04da8d":i?"linear-gradient(90deg, #04da8d 50%, #d1d5db 50%)":"#d1d5db"}},t)})}),eu.includes("Reviews")?(0,l.jsxs)("button",{onClick:()=>L("Reviews"),className:"text-xs text-gray-500 hover:underline underline-offset-2 cursor-pointer hover:text-[#071a26] transition-colors",children:[null===(m=ex.googleTotalReviews)||void 0===m?void 0:m.toLocaleString()," reviews"]}):(0,l.jsxs)("span",{className:"text-xs text-gray-500",children:[null===(u=ex.googleTotalReviews)||void 0===u?void 0:u.toLocaleString()," reviews"]})]})]}),(0,l.jsx)("div",{className:"flex border-b border-gray-200 px-1 xs:px-1 mt-2 overflow-x-auto flex-shrink-0",children:eu.map(e=>(0,l.jsx)("button",{onClick:()=>L(e),className:"py-2.5 px-3 xs:px-3 text-sm font-normal transition-colors whitespace-nowrap",children:(0,l.jsx)("span",{className:"border-b-[1px] pb-1 ".concat(T===e?"border-[#5b2d8e] text-[#5b2d8e] font-bold":"border-transparent text-[#6F6F7E] "),children:e})},e))}),(0,l.jsxs)("div",{className:"p-4 xs:p-5 flex-1 flex flex-col min-w-0",children:["Description"===T&&(0,l.jsx)(z,{allImages:en,isLoadingImages:_,hotelName:null==g?void 0:g.esname,onExpand:eo,strapiHotelData:G,isLoadingStrapi:X}),"Reviews"===T&&(X&&ep&&!(null==em?void 0:em.length)?(0,l.jsx)(B,{}):(0,l.jsx)(H,{reviewdata:ex,dynamicReviews:em})),"Map"===T&&(0,l.jsx)("div",{className:"w-full h-[420px] md:h-[600px]",children:(0,l.jsx)(Y,{lat:null==g?void 0:g.lat,lon:null==g?void 0:g.lon,name:null==g?void 0:g.esname})}),(0,l.jsx)("div",{className:"xs:hidden mt-6 pt-5 border-gray-200",children:(0,l.jsx)("div",{className:"w-full bg-[#f3eef9] pt-4 !pb-4 md:py-5",children:(0,l.jsx)("div",{className:"th-container",children:(0,l.jsx)("div",{className:"flex flex-col gap-3 md:hidden",children:[{image:"/images/ttatrust.png",title:"TTA & Trust Protected",description:"All bookings financially protected"},{image:"/images/poundimage.jpeg",title:"Deposits from \xa349pp",description:"Secure now, pay later"},{image:"https://strapi-teletext-s3-bucket.s3.eu-west-1.amazonaws.com/price_match_promise_1_92f8b772a9.webp",title:"Price Match Promise*",description:"We'll always aim to beat it"},{image:"https://strapi-teletext-s3-bucket.s3.eu-west-1.amazonaws.com/atol_p_c92287d193.webp",title:"Package Protection",description:"Always ATOL Protected"}].map(e=>(0,l.jsxs)("div",{className:"flex items-center gap-3",children:[e.image?(0,l.jsx)(p(),{src:e.image,alt:e.title,width:22,height:22,className:"inline-block"}):(0,l.jsx)("span",{className:"text-lg",children:e.emoji}),(0,l.jsxs)("div",{children:[(0,l.jsx)("p",{className:"text-sm font-bold text-[#071a26]",children:e.title}),(0,l.jsx)("p",{className:"text-xs text-gray-500",children:e.description})]})]},e.title))})})})})]})]}),(0,l.jsxs)("div",{className:"hidden xs:flex flex-col w-[300px] flex-shrink-0 border-l border-gray-100 overflow-y-auto",children:[(0,l.jsx)("div",{className:"border border-gray-200 rounded-xl  m-3 mb-3",children:(0,l.jsx)("div",{className:"w-full bg-[#f3eef9] pt-4 !pb-4 md:py-5 px-2",children:(0,l.jsx)("div",{className:"hidden md:flex flex-col items-start justify-center gap-4",children:[{image:"/images/ttatrust.png",title:"TTA & Trust Protected",description:"All bookings financially protected"},{image:"/images/poundimage.jpeg",title:"Deposits from \xa349pp",description:"Secure now, pay later"},{image:"https://strapi-teletext-s3-bucket.s3.eu-west-1.amazonaws.com/price_match_promise_1_92f8b772a9.webp",title:"Price Match Promise*",description:"We'll always aim to beat it"},{image:"https://strapi-teletext-s3-bucket.s3.eu-west-1.amazonaws.com/atol_p_c92287d193.webp",title:"Package Protection",description:"Always ATOL Protected"}].map(e=>(0,l.jsxs)("div",{className:"flex items-center gap-2.5 min-w-0",children:[e.image?(0,l.jsx)(p(),{src:e.image,alt:e.title,width:22,height:22,className:"inline-block"}):(0,l.jsx)("span",{className:"text-lg",children:e.emoji}),(0,l.jsxs)("div",{children:[(0,l.jsx)("p",{className:"text-sm font-bold text-[#071a26]",children:e.title}),(0,l.jsx)("p",{className:"text-xs text-gray-500",children:e.description})]})]},e.title))})})}),(0,l.jsxs)("div",{className:"border border-gray-200 rounded-xl p-5 m-4 mt-0",children:[(0,l.jsxs)("div",{className:"flex items-baseline gap-2 mb-4",children:[(0,l.jsxs)("div",{className:"flex items-baseline gap-1",children:[(0,l.jsxs)("span",{className:"text-2xl font-bold font-montserrat text-[#5b2d8e] leading-none",children:[(0,l.jsx)("span",{className:"text-xs font-normal text-[#6F6F7E]",children:"From"})," \xa3",ei(null==g?void 0:g.pricepp)]}),(0,l.jsx)("span",{className:"text-sm text-[#6F6F7E]",children:"pp"})]}),er&&(0,l.jsxs)("span",{className:"line-through text-[#6F6F7E] text-xs",children:["\xa3",ei(null==g?void 0:g.maxPrice),"pp"]}),er&&(0,l.jsxs)("div",{className:"relative group",children:[(0,l.jsx)(c.czo,{className:"text-[#6F6F7E] text-xs cursor-pointer"}),(0,l.jsx)("div",{className:"absolute bottom-5 left-[-200px] w-[260px] rounded-md bg-white border text-darkblue text-ju
1stify hidden group-hover:block",children:(0,l.jsxs)("div",{className:"p-2 text-xs",children:["We negotiate with a broad network of suppliers to secure the cheapest deals. The saving displayed represents difference between your chosen holiday and the most expensive priced date for that same holiday on our site.",(0,l.jsx)("br",{}),"Limited Availability: Prices are updated regularly, call us for the latest live price."]})})]})]}),(0,l.jsxs)("div",{className:"flex flex-col gap-2 mb-4",children:[!w&&(0,l.jsxs)("span",{className:"flex items-center gap-1 text-base summersale-text",children:[(0,l.jsx)(h.qjf,{className:"text-base flex-shrink-0"}),"Flights included"]}),ec&&(0,l.jsxs)("span",{className:"flex items-center gap-1 text-base summersale-text",children:[(0,l.jsx)(j.IiJ,{className:"text-base flex-shrink-0"}),ec]})]}),(0,l.jsx)("button",{onClick:A,disabled:E,"data-track":"hotel_card_viewdeal_modal",className:"bg-[#5b2d8e] text-white font-semibold text-sm px-6 py-2.5 rounded-md transition-colors w-full flex items-center justify-center",children:E?(0,l.jsx)(b.Z7b,{className:"animate-spin size-5"}):"View deal"})]})]})]}),(0,l.jsx)("div",{className:"xs:hidden flex-shrink-0 bg-[#F5F000] px-[14px] py-3 ",children:(0,l.jsxs)("div",{className:"flex justify-between items-center gap-3",children:[(0,l.jsxs)("div",{className:"flex flex-col justify-between flex-1",children:[(0,l.jsxs)("p",{className:"text-[15px] font-black text-[#1A1A2E] font-montserrat leading-tight",children:["Call for our",(0,l.jsx)("br",{}),"best price."]}),(0,l.jsx)("span",{className:"text-[11px] font-extrabold text-[#5B2D8E] font-montserrat tracking-wide mt-1.5",children:"PRICE MATCH Promise*"})]}),(0,l.jsx)("div",{className:"flex flex-col items-center shrink-0",children:(0,l.jsx)("a",{ref:U,suppressHydrationWarning:!0,href:"tel:".concat(es),className:"flex flex-col items-center gap-0.5 bg-[#5B2D8E] rounded-md px-4 py-2","data-track":"popup_sticky_cta","data-phone":!0,children:(0,l.jsxs)("div",{className:"flex items-center gap-2",children:[(0,l.jsx)(R.tkl,{size:18,className:"text-[#F5F000]"}),(0,l.jsx)("span",{className:"text-white font-montserrat font-bold text-[18px]",suppressHydrationWarning:!0,children:es})]})})})]})})]})})},W=s(12873),V=s(43498);let J={"Luxury Hotels":"Luxury Hotel","Beach Hotels":"Beach Hotel","Honeymoon Hotels":"Honeymoon Hotel"};var Q=a.memo(function(e){var t,s,r,x,A,y,T,M,R,I,L,P,S,_,z,H,B,Z,Y,Q,U,G,K,X,q,$,ee,et,es,el,ea,ei,en;let{hotelDetails:eo,index:er,hotelKey:ed,isGuidePromoPage:ec,PromoPage:ex,supplierId:ep,hotelonly:em,checkdate:eu,totalnights:eh,fromairport:eg,filterHotelApi:ev}=e,{xl:ef}=(0,m.O)(),eb=(0,i.useRouter)(),ej=(0,f.v9)(v.Hd),eA=(0,f.v9)(E.ed)||[],[ew,ey]=(0,a.useState)(!1),[eN,ek]=(0,a.useState)(!1),[eF,eD]=(0,a.useState)(-1),[eE,eC]=(0,a.useState)([]),[eT,eM]=(0,a.useState)(!1),eR=(0,f.v9)(D.ly),{sbt:eI,lsid:eL,searchId:eP}=(null==eb?void 0:eb.query)||{},[eS,e_]=(0,a.useState)("Description"),[ez,eH]=(0,a.useState)(!1),eB=(0,a.useRef)(null),[eZ,eY]=(0,a.useState)(!1),eO=(0,a.useRef)(null),eW=(0,a.useRef)(null),eV=(0,a.useRef)(null),[eJ,eQ]=(0,a.useState)(null),eU=ev?Number(ed):ej||ed;(0,a.useEffect)(()=>{er<6&&(null==eo?void 0:eo.slug)&&eb.prefetch("/holiday/".concat(eo.slug))},[null==eo?void 0:eo.slug,er,eb]),(0,a.useEffect)(()=>(eN?document.body.classList.add("!overflow-hidden"):document.body.classList.remove("!overflow-hidden"),()=>{document.body.classList.remove("!overflow-hidden")}),[eN]),(0,a.useEffect)(()=>{if(ez)return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e)};function e(e){eB.current&&!eB.current.contains(e.target)&&eH(!1)}},[ez]),(0,a.useEffect)(()=>{if(eZ)return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),window.addEventListener("scroll",t,!0),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),window.removeEventListener("scroll",t,!0)};function e(e){eO.current&&!eO.current.contains(e.target)&&eY(!1)}function t(){eY(!1)}},[eZ]);let eG=(0,a.useCallback)(()=>{ey(!0),(0,W.An)(eP,null==eo?void 0:eo.esid,er,{hotelName:null==eo?void 0:eo.hotelName,price:null==eo?void 0:eo.price,rating:null==eo?void 0:eo.hotelRating});let e={...!eL&&eo&&{searchId:null==eo?void 0:eo.id},...(null==eo?void 0:eo.checkInDate)&&{cid:d()(eo.checkInDate).startOf("day").format("YYYY-MM-DDTHH:mm:ss")},bid:null==eo?void 0:eo.bid,...eL&&"b"===eI&&{lsid:eL},...eo&&{slr:null==eo?void 0:eo.slr}
1,...(null==eo?void 0:eo.isDynamicRoomSplitOffer)===!0&&{drso:"true"},...em&&{h:"true"}},t=new URLSearchParams(e).toString(),s="/holiday/".concat(null==eo?void 0:eo.esid).concat(t?"?".concat(t):"");eb.push(s)},[eo,eI,eL,eb,em,er]),eK=async()=>{try{var e,t;if(!(null==eo?void 0:eo.esid))return;let s=await (0,N.getHotelsImages)([null==eo?void 0:eo.esid]);if(s&&(null===(t=s[0])||void 0===t?void 0:null===(e=t.images)||void 0===e?void 0:e.length)>0){let e=s[0].images.map(e=>({src:"".concat("https://img-uat.teletextholidays.co.uk","/").concat(e.src),width:e.width||800,height:e.height||600}));eC(e)}}catch(e){console.error("Failed to load hotel images",e)}},eX=async e=>{e.stopPropagation(),0===eE.length&&await eK(),ek(!0)},eq=e=>"".concat((0,o.commaSeperatePrice)((0,o.formatRoundedPrice)(e))),e$=(e,t)=>Math.ceil(Number(String(e).replace(/,/g,"")))*t,e0=e=>"".concat((0,o.commaSeperatePrice)((0,o.formatRoundedPrice)(e))),e1=Number(eU)===Number(null==eo?void 0:eo.esid),e2=null==eo?void 0:eo.flashDeal,e3=!!String(null!==(q=null==eo?void 0:eo.depositText)&&void 0!==q?q:"").trim(),e5=eo.reviews,e4=(0,a.useMemo)(()=>{let e=null==e5?void 0:e5.hasPositiveReviews,t=null==e5?void 0:e5.googleReviews;return Array.isArray(t)&&t.length>0?t.some(e=>Number(null==e?void 0:e.rating)>=3):!0===e},[e5]),e6=null==eo?void 0:null===(y=eo.fl)||void 0===y?void 0:null===(A=y[0])||void 0===A?void 0:null===(x=A.oleg)||void 0===x?void 0:null===(r=x[0])||void 0===r?void 0:null===(s=r.seg)||void 0===s?void 0:null===(t=s[0])||void 0===t?void 0:t.dd,e8=null==eo?void 0:eo.checkInDate,e7=(0,a.useMemo)(()=>e6&&e8?d()(e8).startOf("day").diff(d()(e6).startOf("day"),"day"):0,[e6,e8]),e9=(0,a.useMemo)(()=>{var e,t,s,l,a,i;return d()((null==eo?void 0:eo.isOfferRedEye)?null==eo?void 0:eo.checkInDate:null==eo?void 0:null===(i=eo.fl)||void 0===i?void 0:null===(a=i[0])||void 0===a?void 0:null===(l=a.oleg)||void 0===l?void 0:null===(s=l[0])||void 0===s?void 0:null===(t=s.seg)||void 0===t?void 0:null===(e=t[0])||void 0===e?void 0:e.dd).format("DD MMM YYYY")},[null==eo?void 0:eo.isOfferRedEye,null==eo?void 0:eo.checkInDate,null==eo?void 0:eo.fl]),te=(null!==($=null==eo?void 0:eo.adults)&&void 0!==$?$:0)+(null!==(et=null!==(ee=null==eo?void 0:eo.child)&&void 0!==ee?ee:null==eo?void 0:eo.childs)&&void 0!==et?et:0),tt=null!==(es=null==eo?void 0:eo.imgCount)&&void 0!==es?es:eE.length>0?eE.length:null,ts=(0,a.useMemo)(()=>{let e=(null==eo?void 0:eo.holidayTypeItems)||[],t=(null==eo?void 0:eo.facilityTagItems)||[];if(e.length<=0&&t.length<=0)return null;let s=eA.map(e=>e.HolidayTypeId),l=(s.length>0?e.find(e=>s.includes(e.HolidayTypeId)):null)||e[0],a=null==l?void 0:l.HolidayType,i=a?J[a]||a:null;return{holidayTypeName:a,displayHolidayTypeName:i,holidayTypeIcon:"Beach Hotels"===a?"\uD83C\uDFD6️":"Family Friendly"===a?"\uD83D\uDC68‍\uD83D\uDC69‍\uD83D\uDC67‍\uD83D\uDC66":"Spa & Relaxation"===a?"\uD83E\uDDD6":"Adult Only"===a?"\uD83C\uDF77":"Honeymoon Hotels"===a?"\uD83D\uDC8D":"Luxury Hotels"===a?"✨":"\uD83C\uDFE8",serpFacilities:t.filter(e=>e.IsSerp).sort((e,t)=>(t.FacilityTagItem||"").localeCompare(e.FacilityTagItem||"")).slice(0,2)}},[null==eo?void 0:eo.holidayTypeItems,null==eo?void 0:eo.facilityTagItems,eA]),tl=null==eo?void 0:eo.resortTaxRule,ta=(null==tl?void 0:tl.taxValue)?Number(tl.taxValue):0,ti=ta>0?Math.ceil(ta):0,tn=ti>0&&te>0?Math.round(Number(e$(null==eo?void 0:eo.pricepp,te))+ti):0;return eN?(0,l.jsxs)("div",{className:"image-gallery fixed inset-0 z-[9999] bg-white overflow-auto",children:[(0,l.jsxs)("div",{className:"top-0 sticky   font-InterRegular font-bold z-[99] bg-white pt-5 pb-6",children:[(0,l.jsx)("div",{role:"button",onClick:()=>{ek(!1),eD(-1)},className:"relative tablet:mb-1",children:(0,l.jsx)(F.jTe,{className:"size-6 xs:size-8 tablet:size-9 absolute left-2 xs:left-6"})}),(0,l.jsx)("div",{className:"text-base xs:text-xl tablet:text-2xl font-InterRegular font-bold text-center truncate-hotel ml-8 xs:ml-0",children:null==eo?void 0:eo.esname})]}),(0,l.jsx)(k.default,{hotelName:null==eo?void 0:eo.esname,hotelImages:eE,setImageIndexGallery:eD,imageIndexGallery:eF})]}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)("div",{className:"hotel-card relative flex w-full z-0 bg-white overflow-hidden ".concat(e1?"!order-[-1]":""," ").concat(ec?"xl:flex-col h-full flex-col w-full rounded-[14px]":"xl:mb-[25px] mb-[30px] flex-col xs:flex-row w-full rounded-[14px] shadow-[0_4px_12px_rgba(91,45,142,0.14),0_14px_36px_rgba(91,45,142,0.12)] hover:shadow-[0_2px_8px_rgba(91,45,142,0.10),0_8px_32px_rgba(91,45,142,0.10)] transition-shadow duration-200"),children:[(0,l.jsx)("div",{className:"relative w-full flex-shrink-0 ".concat(ec?"!w-full":"xs:w-[280px] md:w-[280px] xl:w-[280px]"," ").concat(ex?"!m-0":""),children:(0,l.jsxs)("div",{className:"relative w-full h-full cursor-pointer","data-track":"hotel-serp-image",onClick:eX,children:[(0,l.jsx)(p(),{alt:null==eo?void 0:eo.esname,src:"".concat("https://img-uat.teletextholidays.co.uk","/hotel/").concat(null==eo?void 0:eo.esid,"/0.jpeg"),height:280,width:ef?1e3:500,placeholder:"blur",blurDataURL:u.blurimage.blurDataURL,sizes:"(max-width: 768px) 100vw, (max-width: 1200px) 50vw, 33vw",className:"object-cover w-full ".concat(ec?"h-[200px] rounded-t-[14px]":"h-[190px] md:h-[360px] xl:h-[328px] xs:rounded-l-[14px] xs:rounded-tr-none")}),(null==eo?void 0:eo.flashDeal)&&(0,l.jsx)("div",{className:"absolute z-10 left-3 ".concat("top-3"),children:(0,l.jsxs)("div",{className:"flex items-center gap-1 bg-[#f5f000] rounded-[5px] px-2 py-[3px]",children:[(0,l.jsx)(j.spm,{className:"text-[#1A1A2E] text-[9px]"}),(0,l.jsx)("span",{className:"text-[12px] font-extrabold text-[#1A1A2E] leading-none font-montserrat",children:"Price Match"})]})}),e1&&(0,l.jsx)("div",{className:"absolute top-0 right-0 rounded-bl-md px-2 py-1 text-[#5b2d8e] text-xs font-InterRegular font-semibold capitalize bg-white border border-[#7040aa]  border-t-0 border-r-0  z-10",children:"Your Selected Hotel"}),(null==eo?void 0:eo.freetxr)&&(0,l.jsx)("div",{className:"absolute ".concat(e2?"top-[36px]":"top-3"," ").concat("left-3"," rounded px-2 py-1 text-white text-xs font-InterRegular font-semibold capitalize bg-[#7040aa] z-10 "),children:"Free Transfers"}),(0,l.jsxs)("div",{className:"absolute bottom-[8px] left-[10px] z-10 flex items-center gap-1 bg-black/55 rounded-[4px] px-[7px] py-[2px] text-white",onClick:eX,children:[(0,l.jsx)("span",{className:"text-[9.5px]",children:"\uD83D\uDCF7"}),(0,l.jsx)("span",{className:"text-[9.5px] font-semibold leading-none",children:tt?"".concat(tt," photos"):"Photos"})]}),(null==eo?void 0:eo.isTopRated)&&(0,l.jsx)("div",{className:"absolute bottom-[0px] right-[0px] z-10 flex items-center gap-1 bg-[#F5F000]  rounded-tl-md px-2 py-[3px]",children:(0,l.jsx)("span",{className:"text-[12px] font-extrabold leading-none text-[#1A1A2E] font-montserrat",children:"⭐ Top rated"})})]})}),(0,l.jsx)("div",{className:"".concat(e1?"bg-[#ebecff]":"bg-white"," flex-1 min-w-0 ").concat(ec?"py-3 px-4 flex-grow":"py-4 px-[13px] xs:px-[18px]"," ").concat(ex?"!m-0":""),children:(0,l.jsxs)("div",{className:"flex flex-col h-full",children:[(0,l.jsxs)("div",{className:"hidden xs:flex items-start justify-between gap-3",children:[(0,l.jsx)("div",{className:"flex-1 min-w-0",children:(0,l.jsx)("p",{className:"font-montserrat font-extrabold text-[20px] text-[#350f68] mb-[3px] leading-[25px] ",children:(0,l.jsx)("span",{className:"cursor-pointer hover:underline",onClick:()=>eM(!0),"data-track":"hotel-details-popup-serp",children:null==eo?void 0:eo.esname})})}),(0,l.jsx)("div",{className:"flex flex-shrink-0 mt-1",children:(0,l.jsx)(w,{googleReviews:e5,isClickable:e4,onOpenReviews:()=>{e4&&(e_("Reviews"),eM(!0))}})})]}),(0,l.jsxs)("div",{className:"hidden xs:flex items-center gap-[2px] mb-[4px]",children:[Array.from({length:null==eo?void 0:eo.rt},(e,t)=>(0,l.jsx)(n.DQk,{className:"text-[12px] text-[#FFC107]"},t)),(0,l.jsxs)("span",{className:"text-[14px] text-[#6F6F7E] font-semibold ml-[4px]",children:[null==eo?void 0:eo.rt," Star"]})]}),(0,l.jsxs)("p",{className:"xs:hidden font-montserrat font-extrabold text-[20px] text-[#350f68] mb-[3px] leading-[25px]",children:[(0,l.jsx)("span",{className:"cursor-pointer hover:underline mr-1",onClick:()=>eM(!0),"data-track":"hotel-details-popup-serp",children:null==eo?void 0:eo.esname})," ",(0,l.jsxs)("span",{className:"inline-flex items-center whitespace-nowrap align-middle",children:[Array.from({length:null==eo?void 0:eo.rt},(e,t)=>(0,l.jsx)(n.DQk,{className:"inline text-[12px] text-[#FFC107]"},t)),(0,l.jsxs)("span",{className:"text-[12px] text-[#6F6F7E] font-semibold ml-[4px]",children:[null==eo?void 0:eo.rt," Star"]})]})]}),(0,l.jsxs)("div",{className:"xs:hidden flex items-center gap-4 mb-[4px] mt-[2px]",children:[(0,l.jsx)("span",{className:"cursor-pointer text-[#5b2d8e] font-semibold text-[13px] underline",onClick:()=>eM(!0),"data-track":"hotel-details-popup-serp-mobile",children:"View hotel details"}),(0,l.jsx)(w,{googleReviews:e5,isClickable:e4,onOpenReviews:()=>{e4&&(e_("Reviews"),eM(!0))}})]}),(0,l.jsxs)("div",{className:"flex items-center gap-1",children:[(0,l.jsx)(h.NK0,{className:"text-[12px] text-[#6F6F7E] flex-shrink-0"}),(0,l.jsx)("span",{className:"text-[14px] text-[#6F6F7E] leading-[24px]",children:"".concat(null!==(el=null==eo?void 0:eo.rn)&&void 0!==el?el:"",", ").concat(null!==(ea=null==eo?void 0:eo.dn)&&void 0!==ea?ea:"",", ").concat(null!==(ei=null==eo?void 0:eo.cyn)&&void 0!==ei?ei:"")})]}),(0,l.jsxs)("div",{className:"flex flex-wrap gap-[6px] mt-[8px] md:mt-[6px]",children:[!em&&(null==eo?void 0:null===(P=eo.fl)||void 0===P?void 0:null===(L=P[0])||void 0===L?void 0:null===(I=L.oleg)||void 0===I?void 0:null===(R=I[0])||void 0===R?void 0:null===(M=R.seg)||void 0===M?void 0:null===(T=M[0])||void 0===T?void 0:T.dept)!==void 0&&(0,l.jsxs)("div",{className:"inline-flex items-center gap-1 bg-white rounded-[6px] px-[9px] py-[3px] text-[14px] font-semibold text-[#4b5563] border border-[#e5e7eb]",children:[(0,l.jsx)("span",{className:"text-[12px] flex-shrink-0",children:"✈"}),(0,l.jsxs)("span",{className:"font-medium break-words",children:["".concat(null==eo?void 0:null===(Z=eo.fl)||void 0===Z?void 0:null===(B=Z[0])||void 0===B?void 0:null===(H=B.oleg)||void 0===H?void 0:null===(z=H[0])||void 0===z?void 0:null===(_=z.seg)||void 0===_?void 0:null===(S=_[0])||void 0===S?void 0:S.dept,", ")," ","Return Flights"]})]}),(0,l.jsxs)("div",{className:"inline-flex items-center gap-1 bg-white rounded-[6px] px-[9px] py-[3px] text-[14px] font-semibold text-[#4b5563] border border-[#e5e7eb]",children:[(0,l.jsx)("span",{className:"text-[12px] flex-shrink-0",children:"\uD83C\uDF7D"}),(0,l.jsx)("span",{className:"font-medium",children:null==eo?void 0:eo.bn}),(0,l.jsxs)("div",{className:"relative flex group/parent flex-shrink-0",children:[(0,l.jsx)(c.czo,{className:"text-[12px] text-[#4b5563]"}),(0,l.jsx)("div",{className:"absolute bottom-5 left-[-60px] w-[125px] rounded-md bg-white border border-gray-200 text-darkblue text-center hidden group-hover/parent:block z-10 shadow-md text-[11px]",children:(0,l.jsx)("div",{className:"p-1.5",children:"Other board basis available"})})]})]}),(0,l.jsxs)("div",{className:"inline-flex items-center gap-1 bg-white rounded-[6px] px-[9px] py-[3px] text-[14px] font-semibold text-[#4b5563] border border-[#e5e7eb]",children:[(0,l.jsx)(j.IiJ,{className:"text-[12px] flex-shrink-0"}),(0,l.jsxs)("span",{className:"font-medium",children:[em?d()(null==eo?void 0:eo.checkInDate).format("DD MMM YYYY"):d()((null==eo?void 0:eo.isOfferRedEye)?null==eo?void 0:eo.checkInDate:null==eo?void 0:null===(X=eo.fl)||void 0===X?void 0:null===(K=X[0])||void 0===K?void 0:null===(G=K.oleg)||void 0===G?void 0:null===(U=G[0])||void 0===U?void 0:null===(Q=U.seg)||void 0===Q?void 0:null===(Y=Q[0])||void 0===Y?void 0:Y.dd).format("DD MMM YYYY")," ","\xb7 ",null==eo?void 0:eo.nights," nights"]}),(null==eo?void 0:eo.isOfferRedEye)&&(0,l.jsxs)("div",{className:"relative flex group/parent flex-shrink-0",children:[(0,l.jsx)(c.czo,{className:"text-[12px] text-[#9ca3af]"}),(0,l.jsx)("div",{className:"absolute bottom-0 left-1/2 -translate-x-1/2 min-w-[220px] max-w-[98vw] xs2:min-w-[260px] xs2:max-w-[98vw] md:left-auto md:right-4 md:translate-x-0 md:w-[350px] md:max-w-[350px] rounded-md bg-white border border-gray-200 text-darkblue text-left hidden group-hover/parent:block z-10 shadow-md",children:(0,l.jsxs)("div",{className:"p-2 text-[11px] whitespace-normal break-words",children:["Your itinerary has an overnight flight. Your outbound flight arrives in ",null!==(en=null==eo?void 0:eo.dn)&&void 0!==en?en:""," on ",d()(e8).format("DD MMM YYYY"),", thereby shortening your stay at the hotel by ",(0,l.jsx)("span",{className:"font-semibold",children:e7})," night",e7>1?"s":"",". If you want a quote for ",eh," nights at the hotel, please call us on ",(0,l.jsx)(g.Z,{}),"."]})})]})]})]}),ts&&(0,l.jsxs)("div",{className:"flex flex-wrap gap-[6px] mt-[6px]",children:[ts.holidayTypeName&&(0,l.jsxs)("span",{className:"inline-flex items-center gap-1 bg-[#F8F5FD] border border-[#7040aa] rounded-[6px] px-[9px] py-[3px] text-[12px] font-semibold text-[#5b2d8e]",children:[ts.holidayTypeIcon," ",ts.displayHolidayTypeName]}),ts.serpFacilities.map(e=>(0,l.jsx)("span",{className:"inline-flex items-center gap-1 bg-[#F8F5FD] border border-[#7040aa] rounded-[6px] px-[9px] py-[3px] text-[12px] font-semibold text-[#5b2d8e]",children:e.FacilityTagItem},e.FacilityTagItemId))]}),(0,l.jsx)("div",{className:"flex-grow min-h-[6px]"}
1),(0,l.jsxs)("div",{className:"pt-[8px] border-t border-[#E2D9EF]",children:[(0,l.jsxs)("div",{className:"hidden xs:flex xs:items-end xs:justify-between gap-3",children:[(0,l.jsxs)("div",{className:"flex flex-col cursor-default min-w-0",children:[(0,l.jsxs)("span",{className:"text-[14px] text-[#6F6F7E] leading-[24px] mb-[3px]",children:["Ref: ",null==eo?void 0:eo.ref]}),(null==eo?void 0:eo.maxPrice)>0&&(null==eo?void 0:eo.maxPrice)<5e3&&(null==eo?void 0:eo.maxPrice)!==(null==eo?void 0:eo.pricepp)&&(null==eo?void 0:eo.maxPrice)>=(null==eo?void 0:eo.pricepp)+10?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)("div",{className:"flex items-baseline gap-[5px] flex-wrap",children:[(0,l.jsx)("span",{className:"text-[12px] text-[#6F6F7E]",children:"From"}),(0,l.jsxs)("span",{className:"strike-price font-Inter text-[12px] text-[#6F6F7E]",children:["\xa3",eq(null==eo?void 0:eo.maxPrice),"pp"]}),(0,l.jsxs)("div",{className:"relative flex group/parent self-end mb-[2px]",children:[(0,l.jsx)(c.czo,{className:"text-[12px] text-[#9ca3af]"}),(0,l.jsx)("div",{className:"absolute bottom-4 left-[-280px] md:left-[-280px] w-[300px] md:w-[350px] rounded-md bg-white border border-gray-200 text-darkblue text-justify hidden group-hover/parent:block z-10 shadow-md",children:(0,l.jsxs)("div",{className:"p-2 text-[12px]",children:["We negotiate with a broad network of suppliers to secure the cheapest deals. The saving displayed represents difference between your chosen holiday and the most expensive priced date for that same holiday on our site.",(0,l.jsx)("br",{}),"Limited Availability: Prices are updated regularly, call us for the latest live price."]})})]}),(0,l.jsxs)("span",{className:"text-[27px] xs:text-[30px] font-montserrat font-black text-[#5B2D8E] leading-none tracking-[-0.03em]",children:["\xa3",eq(null==eo?void 0:eo.pricepp)]}),(0,l.jsx)("span",{className:"text-[14px] text-[#6F6F7E] font-semibold",children:"pp"})]}),(0,l.jsxs)("span",{className:"text-[14px] font-bold bg-[#1b9e4b] text-white mt-[2px] mb-[1px] px-1 py-0.5 rounded-[3px] w-fit font-montserrat",children:["✓ You save",te>0&&(0,l.jsxs)(l.Fragment,{children:[" \xa3",e0((Math.ceil(null==eo?void 0:eo.maxPrice)-Math.ceil(null==eo?void 0:eo.pricepp))*te)," "]})]}),te>0&&(0,l.jsxs)("span",{className:"text-[12px] text-[#6F6F7E] mt-[2px]",children:["Total: fr.\xa3",e0(e$(null==eo?void 0:eo.pricepp,te))," for ",te,e3&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("span",{children:" \xb7"}),(0,l.jsx)("span",{className:"text-[11px] text-[#1b9e4b] font-bold",children:" Low deposit "})]})]})]}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("span",{className:"text-[12px] text-[#6F6F7E]",children:"From"}),(0,l.jsxs)("div",{className:"flex items-baseline gap-[3px]",children:[(0,l.jsxs)("span",{className:"text-[27px] xs:text-[30px] font-montserrat font-black text-[#5B2D8E] leading-none tracking-[-0.03em]",children:["\xa3",eq(null==eo?void 0:eo.pricepp)]}),(0,l.jsx)("span",{className:"text-[14px] text-[#6F6F7E] font-semibold",children:"pp"})]}),te>0&&(0,l.jsxs)("span",{className:"text-[12px] text-[#6F6F7E] mt-[2px]",children:["Total: fr.\xa3",e0(e$(null==eo?void 0:eo.pricepp,te))," for ",te,e3&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("span",{children:" \xb7 "}),(0,l.jsx)("span",{className:"text-[11px] text-[#1b9e4b] font-bold",children:" Low deposit "})]})]})]}),ti>0&&te>0&&(0,l.jsxs)("div",{className:"flex items-center gap-1 mt-[2px]",children:[(0,l.jsxs)("span",{className:"text-[11px] text-[#6F6F7E]",children:["Total including. \xa3",ti," local fees: \xa3",e0(tn)]}),(0,l.jsxs)("div",{ref:eO,className:"relative flex-shrink-0",children:[(0,l.jsx)("span",{ref:eW,title:"Show Charges Information",className:"inline-flex cursor-pointer",onClick:e=>{e.stopPropagation(),eQ(eW),eY(e=>!e)},children:(0,l.jsx)(c.czo,{className:"text-[11px] text-[#9ca3af]"})}),eZ&&eJ===eW&&(0,l.jsx)(C.Z,{iconRef:eW,children:"You'll need to pay local taxes and fees directly to your hotel. The amount is based on current exchange rates and may vary."})]})]})]}),(0,l.jsxs)("div",{className:"flex items-center gap-4 flex-shrink-0",children:[(0,l.jsx)("div",{className:"flex-shrink-0 pb-[4px]",children:(0,l.jsx)(V.Z,{size:40,className:"h-[40px] w-[40px]"})}),(0,l.jsxs)("div",{className:"flex flex-col gap-[6px] items-end",children:[!em&&(0,l.jsxs)("a",{href:"tel:".concat(eR),className:"font-montserrat font-extrabold text-[16px] leading-[30px] bg-vividOrange3  text-white px-[14px] py-[6px] rounded-[9px] flex items-center justify-center gap-[6px] cursor-pointer transition-colors whitespace-nowrap",children:[(0,l.jsx)(j.DNl,{className:"text-[11px] flex-shrink-0"}),(0,l.jsx)("span",{children:"Call to book"})]}),(0,l.jsx)("button",{className:"font-montserrat font-extrabold text-[16px] leading-[24px] bg-[#f8f5fd] hover:bg-[#e7ddf8] text-[#5B2D8E] hover:text-[#5B2D8E] px-[20px] py-[6px] rounded-[9px] flex items-center justify-center gap-1 cursor-pointer transition-colors tracking-[0.01em] whitespace-nowrap min-w-[140px] ".concat(""),"data-track":"hotel_card_viewdeal",onClick:eG,children:ew?(0,l.jsx)(b.Z7b,{className:"animate-spin text-lg"}):(0,l.jsxs)("span",{className:"inline-flex items-center gap-1.5 leading-none",children:[(0,l.jsx)(c.$OI,{className:"text-[13px] flex-shrink-0","aria-hidden":"true"}),(0,l.jsx)("span",{className:"leading-none",children:"View deal"})]})})]})]})]}),(0,l.jsx)("div",{className:"xs:hidden",children:(0,l.jsxs)("div",{className:"flex items-end justify-between gap-3",children:[(0,l.jsxs)("div",{className:"flex flex-col cursor-default min-w-0",children:[(0,l.jsxs)("span",{className:"text-[14px] text-[#6F6F7E] leading-[1.4] mb-[3px]",children:["Ref
1: ",null==eo?void 0:eo.ref]}),(null==eo?void 0:eo.maxPrice)>0&&(null==eo?void 0:eo.maxPrice)<5e3&&(null==eo?void 0:eo.maxPrice)!==(null==eo?void 0:eo.pricepp)&&(null==eo?void 0:eo.maxPrice)>=(null==eo?void 0:eo.pricepp)+10&&(0,l.jsxs)("div",{className:"flex items-center gap-1.5 mt-1",children:[(0,l.jsxs)("span",{className:"strike-price font-InterRegular text-[11.5px] text-[#6F6F7E]",children:["\xa3",eq(null==eo?void 0:eo.maxPrice),"pp"]}),(0,l.jsxs)("div",{ref:eB,className:"relative flex flex-shrink-0",children:[(0,l.jsx)(c.czo,{className:"text-[11px] text-[#9ca3af] cursor-pointer",onClick:e=>{e.stopPropagation(),eH(e=>!e)}}),ez&&(0,l.jsx)("div",{className:"absolute bottom-5 left-[-5px] w-[220px] rounded-md bg-white border border-gray-200 text-darkblue text-justify z-10 shadow-md",children:(0,l.jsxs)("div",{className:"p-2 text-[11px]",children:["We negotiate with a broad network of suppliers to secure the cheapest deals. The saving displayed represents difference between your chosen holiday and the most expensive priced date for that same holiday on our site.",(0,l.jsx)("br",{}),"Limited Availability: Prices are updated regularly, call us for the latest live price."]})})]})]}),(0,l.jsx)("span",{className:"text-[12px] text-[#6F6F7E]",children:"From"}),(0,l.jsxs)("div",{className:"flex items-baseline gap-[3px]",children:[(0,l.jsxs)("span",{className:"text-[27px] font-montserrat font-black text-[#5B2D8E] leading-none tracking-[-0.03em]",children:["\xa3",eq(null==eo?void 0:eo.pricepp)]}),(0,l.jsx)("span",{className:"text-[13px] text-[#6F6F7E] font-semibold",children:"pp"})]}),(null==eo?void 0:eo.maxPrice)>0&&(null==eo?void 0:eo.maxPrice)<5e3&&(null==eo?void 0:eo.maxPrice)!==(null==eo?void 0:eo.pricepp)&&(null==eo?void 0:eo.maxPrice)>=(null==eo?void 0:eo.pricepp)+10&&(0,l.jsxs)("span",{className:"text-[11px] font-bold bg-[#1b9e4b] text-white mt-[2px] px-1 py-0.5 rounded-[3px] w-fit font-montserrat",children:["✓ You save",te>0&&(0,l.jsxs)(l.Fragment,{children:["  \xa3",e0((Math.ceil(null==eo?void 0:eo.maxPrice)-Math.ceil(null==eo?void 0:eo.pricepp))*te),"  "]})]}),te>0&&(0,l.jsxs)("span",{className:"text-[11px] text-[#6F6F7E] mt-[2px]",children:["Total ~\xa3",e0(e$(null==eo?void 0:eo.pricepp,te)),e3&&(0,l.jsx)("span",{className:"block text-[11px] text-[#1b9e4b] font-bold leading-[1.2]",children:"Low deposit"})]}),ti>0&&te>0&&(0,l.jsxs)("div",{className:"flex items-center gap-1 mt-[2px]",children:[(0,l.jsxs)("span",{className:"text-[10px] text-[#6F6F7E]",children:["Total including. \xa3",ti," local fees: \xa3",e0(tn)]}),(0,l.jsxs)("div",{ref:eO,className:"relative flex-shrink-0",children:[(0,l.jsx)("span",{ref:eV,title:"Show Charges Information",className:"inline-flex cursor-pointer",onClick:e=>{e.stopPropagation(),eQ(eV),eY(e=>!e)},children:(0,l.jsx)(c.czo,{className:"text-[10px] text-[#9ca3af]"})}),eZ&&eJ===eV&&(0,l.jsx)(C.Z,{iconRef:eV,children:"You'll need to pay local taxes and fees directly to your hotel. The amount is based on current exchange rates and may vary."})]})]})]}),(0,l.jsxs)("div",{className:"flex flex-shrink-0 items-center gap-[10px] pl-[0px]",children:[(0,l.jsx)("div",{className:"hidden xxs:block",children:(0,l.jsx)(V.Z,{size:40,className:"h-[40px] w-[40px]"})}),(0,l.jsxs)("div",{className:"flex flex-col gap-[5px] items-end",children:[!em&&(0,l.jsxs)("a",{href:"tel:".concat(eR),className:"font-montserrat font-extrabold text-[14px] leading-[24px] bg-vividOrange3  text-white px-[16px] py-[8px] rounded-[8px] flex items-center justify-center gap-[5px] cursor-pointer transition-colors whitespace-nowrap",children:[(0,l.jsx)(j.DNl,{className:"text-[10px] flex-shrink-0"}),(0,l.jsx)("span",{children:"Call to book"})]}),(0,l.jsx)("button",{className:"font-montserrat font-extrabold text-[12px] bg-[#f8f5fd] hover:bg-[#e7ddf8] text-[#5B2D8E] hover:text-[#5B2D8E] px-[20px] md:px-[20px] py-[9px] rounded-[8px] flex items-center justify-center gap-1 cursor-pointer transition-colors whitespace-nowrap min-w-[120px]","data-track":"hotel_card_viewdeal",onClick:eG,children:ew?(0,l.jsx)(b.Z7b,{className:"animate-spin text-lg"}):(0,l.jsxs)("span",{className:"inline-flex items-center gap-1.5 leading-none",children:[(0,l.jsx)(c.$OI,{className:"text-[13px] flex-shrink-0","aria-hidden":"true"}),(0,l.jsx)("span",{className:"leading-none",children:"View deal"})]})})]})]})]})})]})]})})]}),eT&&(0,l.jsx)(O,{hotelDetails:eo,onClose:()=>{eM(!1),e_("Description")},onViewDeal:eG,hotelonly:em,searchId:eP,supplierId:ep,initialTab:eS,isLoading:ew,formattedCheckInDate:e9})]})})},62489:function(e,t,s){s.r(t);var l=s(85893),a=s(67294),i=s(64171);s(60880);var n=s(46524);s(18726);var o=s(36977),r=s(71818),d=s(5616);t.default=e=>{let{hotelName:t,hotelImages:s,setImageIndexGallery:c,imageIndexGallery:x}=e,[p,m]=(0,a.useState)([]),[u,h]=(0,a.useState)(!1),[g,v]=(0,a.useState)(0);(0,a.useEffect)(()=>{!u&&g<s.length&&b()},[g]);let f=e=>new Promise((t,s)=>{let l=new window.Image;l.onload=()=>t({width:l.width,height:l.height}),l.onerror=()=>s(Error("Failed to load")),l.src=e}),b=async()=>
1{if(u)return;h(!0);let e=s.slice(g,g+5),t=(await Promise.allSettled(null==e?void 0:e.map(async e=>{let{width:t,height:s}=await f(null==e?void 0:e.src);return{src:null==e?void 0:e.src,width:t,height:s}}))).filter(e=>"fulfilled"===e.status).map(e=>e.value);m(e=>[...e,...t]),v(e=>e+t.length),h(!1)},j=(0,a.useCallback)(e=>{c(e)},[]);function A(){let{currentIndex:e,slides:t}=(0,n.oc)(),s=t.length;return(0,l.jsxs)("div",{className:"fixed bottom-7 md:bottom-14   bg-white py-[5px] px-[10px] rounded-lg text-xl xl:text-base z-[9998]",children:[e+1," / ",s]})}return 0===g?(0,l.jsx)(d.Z,{className:"w-full relative tablet:px-10",id:"searchBarSkeleton",children:(0,l.jsxs)("div",{className:"relative grid gap-2 tablet:gap-4",children:[(0,l.jsxs)("div",{className:"grid grid-cols-2 gap-2 tablet:gap-4 items-start relative",children:[(0,l.jsx)("div",{className:"col-span-1 h-36 tablet:h-56 xl:h-72 bg-gray-300 animate-pulse"}),(0,l.jsx)("div",{className:"col-span-1 h-36 tablet:h-56 xl:h-72 bg-gray-300 animate-pulse"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-3 gap-2 tablet:gap-4 items-start relative",children:[(0,l.jsx)("div",{className:"col-span-1 h-36 tablet:h-56 xl:h-72 bg-gray-300 animate-pulse"}),(0,l.jsx)("div",{className:"col-span-1 h-36 tablet:h-56 xl:h-72 bg-gray-300 animate-pulse"}),(0,l.jsx)("div",{className:"col-span-1 h-36 tablet:h-56 xl:h-72 bg-gray-300 animate-pulse"})]}),(0,l.jsxs)("div",{className:"flex gap-2 tablet:gap-4 items-start relative",children:[(0,l.jsx)("div",{className:"w-2/5 col-span-1 h-36 tablet:h-56 xl:h-72 bg-gray-300 animate-pulse"}),(0,l.jsx)("div",{className:"w-3/5 col-span-1 h-36 tablet:h-56 xl:h-72 bg-gray-300 animate-pulse"})]}),(0,l.jsxs)("div",{className:"flex gap-2 tablet:gap-4 items-start relative",children:[(0,l.jsx)("div",{className:"w-3/5 h-36 tablet:h-56 xl:h-72 bg-gray-300 animate-pulse"}),(0,l.jsx)("div",{className:"w-2/5 h-36 tablet:h-56 xl:h-72 bg-gray-300 animate-pulse"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 gap-2 tablet:gap-4 items-start relative",children:[(0,l.jsx)("div",{className:"col-span-1 h-96 bg-gray-300 animate-pulse"}),(0,l.jsx)("div",{className:"col-span-1 h-96 bg-gray-300 animate-pulse"})]})]})}):(0,l.jsx)(a.Fragment,{children:(0,l.jsxs)("div",{className:"relative tablet:px-10 pb-10 fade-gallery",children:[(0,l.jsx)(i.Z,{photos:p,spacing:e=>e<768?3:e<992?8:e<1536?10:12,targetRowHeight:e=>e<768?175:e<992?350:500,onClick:e=>{let{index:t}=e;return j(t)},skeleton:(0,l.jsx)("div",{style:{width:"100%",minHeight:800}}),imageProps:{loading:"lazy"}}),u&&(0,l.jsxs)("div",{className:"flex justify-center items-center space-x-2 my-3 tablet:my-4",children:[" ",(0,l.jsx)("div",{className:"animate-spin rounded-full h-6 w-6 border-b-2 border-gray-900"})," ",(0,l.jsx)("span",{className:"text-gray-600",children:"Loading more images..."})," "]}),(0,l.jsx)(n.ZP,{slides:s,open:x>=0,index:x,close:()=>c(-1),render:{controls:()=>(0,l.jsx)(A,{}),iconPrev:()=>(0,l.jsx)(o.YNj,{className:"size-3 md:size-9  "}),iconNext:()=>(0,l.jsx)(o.p6n,{className:"size-3 md:size-9  "}),iconClose:()=>(0,l.jsx)(r.jTe,{className:"size-7 md:size-10"})}})]})})}},57514:function(e,t,s){var l=s(85893);s(67294);var a=s(9008),i=s.n(a),n=s(1230),o=s(39332),r=s(45007),d=s(48967),c=s(78916);t.Z=e=>{var t;let{seoData:s,ogImage:a,hotelSchemaData:x,breadcrumbSchema:p,faqSchema:m}=e,u=(0,o.usePathname)(),h="string"==typeof u&&!u.startsWith("/holiday/"),g=n.getNoIndexNoFollowTags(s),v=(0,r.v9)(d.OH),f=m||v;return(0,c.n)(),(0,l.jsx)(l.Fragment,{children:(0,l.jsxs)(i(),{children:[(0,l.jsx)("script",{type:"text/javascript","data-cfasync":"false",dangerouslySetInnerHTML:{__html:"\n      window.dataLayer = window.dataLayer || [];\n      \n      // Intercept dataLayer.push directly\n      var _originalPush = window.dataLayer.push.bind(window.dataLayer);\n      window.dataLayer.push = function() {\n        var args = arguments[0];\n        \n        if (Array.isArray(args) && args[0] === 'consent' && args[1] === 'update' && args[2]) {\n          args[2].analytics_storage = 'granted';\n        }\n        if (args && args['0'] === 'consent' && args['1'] === 'update' && args['2']) {\
1n          args['2'].analytics_storage = 'granted';\n        }\n        if (args && typeof args === 'object' && !Array.isArray(args) && args.length >= 3) {\n          if (args[0] === 'consent' && args[1] === 'update' && args[2]) {\n            args[2].analytics_storage = 'granted';\n          }\n        }\n        \n        return _originalPush.apply(window.dataLayer, arguments);\n      };\n\n      function gtag(){dataLayer.push(arguments);}\n      \n      // DEFAULT before GTM loads — this is the critical addition\n      gtag('consent', 'default', {\n        'analytics_storage': 'granted',\n        'ad_storage': 'denied',\n        'ad_user_data': 'denied',\n        'ad_personalization': 'denied',\n        'wait_for_update': 1000\n      });\n\n      gtag('js', new Date());\n\n      (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\n      new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\n      j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=\n      'https://www.googletagmanager.com/gtm.js?id='
1+i+dl;\n      f.parentNode.insertBefore(j,f);\n      })(window,document,'script','dataLayer','GTM-MHD3LJR2');\n    "}}),(0,l.jsx)("title",{children:null==s?void 0:s.seoTitle}),(0,l.jsx)("meta",{name:"title",content:null==s?void 0:s.seoTitle}),(0,l.jsx)("meta",{name:"description",content:null==s?void 0:s.seoDescription}),(0,l.jsx)("meta",{name:"theme-color",content:"#440d4e"}),h&&(0,l.jsx)("link",{rel:"canonical",href:"https://www.teletextholidays.co.uk"+u}),(0,l.jsx)("meta",{name:"keywords",content:null==s?void 0:null===(t=s.seoKeywords)||void 0===t?void 0:t.join()}),(0,l.jsx)("meta",{name:"robots",content:g}),(0,l.jsx)("meta",{property:"og:image",content:"/"===u?(0,n.getHeroImageSrc)("https://strapi-teletext-s3-bucket.s3.eu-west-1.amazonaws.com/og_home_d071851eed.jpg"):a}),(0,l.jsx)("meta",{name:"viewport",content:"width=device-width, initial-scale=1"}),(0,l.jsx)("link",{rel:"apple-touch-icon",sizes:"180x180",href:"/images/favicons/apple-touch-icon.png"}),(0,l.jsx)("link",{rel:"icon",type:"image/png",sizes:"32x32",href:"/images/favicons/favicon-32x32.png"}),(0,l.jsx)("link",{rel:"icon",type:"image/png",sizes:"16x16",href:"/images/favicons/favicon-16x16.png"}),(0,l.jsx)("link",{rel:"mask-icon",href:"/images/favicons/safari-pinned-tab.svg",color:"#440d4e"}),(0,l.jsx)("link",{rel:"shortcut icon",href:"/images/favicons/favicon.ico"}),"/"===u?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify({"@context":"http://schema.org","@type":"Organization",address:{"@type":"PostalAddress",addressLocality:"London, United Kingdom",addressCountry:"United Kingdom",postalCode:"WC2H 9JQ",streetAddress:"71-75 Shelton Street, Covent Garden, London, United Kingdom"},name:"Teletext Holidays",url:"https://www.teletextholidays.co.uk/",description:"Teletext Holidays is a much-loved UK travel brand, trusted since the 1990s. With over 30 years’ experience, they specialise in affordable beach holidays to destinations like Turkey, the Canary Islands and Majorca – with great value and trusted service at the heart of every booking.",logo:"https://www.teletextholidays.co.uk/images/Logo-m.svg",sameAs:["https://www.facebook.com/teletextholidays","https://www.twitter.com/teletextuk","https://www.tiktok.com/@teletext_holidays","https://www.instagram.com/teletextholidays/","https://www.linkedin.com/company/teletext/","https://en.wikipedia.org/wiki/Teletext_Holidays"],aggregateRating:{"@type":"AggregateRating",ratingValue:"4.7",ratingCount:"29266",bestRating:"5",worstRating:"1",reviewAspect:"Trustpilot"}})}}),(0,l.jsx)("meta",{property:"og:type",content:"website"}),(0,l.jsx)("meta",{property:"og:site_name",content:"Teletext Holidays"}),(0,l.jsx)("meta",{property:"og:locale",content:"en_GB"}),(0,l.jsx)("meta",{property:"og:url",content:"https://www.teletextholidays.co.uk/"}),(0,l.jsx)("meta",{property:"og:title",content:"Teletext Holidays | Low Cost Holidays 2026 | TTA Protected"}),(0,l.jsx)("meta",{property:"og:description",content:"Book cheap holiday deals for 2026 with low deposits from \xa349pp. We only use ATOL protected suppliers, backed by our Price Match Promise."}),(0,l.jsx)("meta",{property:"og:image:width",content:"1200"}),(0,l.jsx)("meta",{property:"og:image:height",content:"630"}),(0,l.jsx)("meta",{property:"og:image:alt",content:"Teletext Holidays – Low Cost Package Holidays 2026"}),(0,l.jsx)("meta",{name:"twitter:card",content:"summary_large_image"}),(0,l.jsx)("meta",{name:"twitter:site",content:"@teletextuk"}),(0,l.jsx)("meta",{name:"twitter:title",content:"Teletext Holidays | Low Cost Holidays 2026 | TTA Protected"}),(0,l.jsx)("meta",{name:"twitter:description",content:"Book cheap holiday deals for 2026 with low deposits from \xa349pp. We only use ATOL protected suppliers, backed by our Price Match Promise."}),(0,l.jsx)("meta",{name:"twitter:image",content:"".concat((0,n.getHeroImageSrc)("https://strapi-teletext-s3-bucket.s3.eu-west-1.amazonaws.com/og_home_d071851eed.jpg"))})]}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("meta",{property:"og:type",content:"website"}),(0,l.jsx)("meta",{property:"og:title",content:null==s?void 0:s.seoTitle}),(0,l.jsx)("meta",{property:"og:description",content:null==s?void 0:s.seoDescription})]}),x&&(0,l.jsx)("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify(x)}}),p&&(0,l.jsx)("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify(p)}}),f&&(0,l.jsx)("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify(f)}})]})})}},33755:function(e,t,s){s.d(t,{A:function(){return d}});var l=s(67294);let a=null,i=!1,n="v2.15.0",o="https://api.mapbox.com/mapbox-gl-js/".concat(n,"/mapbox-gl.css"),r="https://api.mapbox.com/mapbox-gl-js/".concat(n,"/mapbox-gl.js");function d(){let[e,t]=(0,l.useState)(i);return(0,l.useEffect)(()=>
1{if(i||window.mapboxgl){t(!0);return}if(a){a.then(()=>{i=!0,t(!0)});return}(a=new Promise((e,t)=>{(function(){if(document.getElementById("mapbox-css"))return;let e=document.createElement("link");e.id="mapbox-css",e.rel="stylesheet",e.href=o,document.head.appendChild(e)})();let s=document.getElementById("mapbox-js");if(s){window.mapboxgl?e():(s.addEventListener("load",()=>e()),s.addEventListener("error",()=>t(Error("Script load failed"))));return}let l=document.createElement("script");l.id="mapbox-js",l.src=r,l.async=!0,l.onload=()=>{window.mapboxgl?e():t(Error("Mapbox GL not available after script load"))},l.onerror=()=>{t(Error("Failed to load Mapbox GL script"))},document.head.appendChild(l)})).then(()=>{i=!0,t(!0)}).catch(e=>{console.error("❌ Failed to load Mapbox GL JS:",e),a=null})},[]),e}},78916:function(e,t,s){s.d(t,{n:function(){return l}});function l(){if("undefined"==typeof navigator)return!1;let e=navigator.userAgent||"";return/ThMobileApp/i.test(e)}},9668:function(e){e.exports=JSON.parse('{"blurimage":{"blurDataURL":"data:image/webp;base64,UklGRh4CAABXRUJQVlA4WAoAAAAgAAAAAQAAAQAASUNDUMgBAAAAAAHIAAAAAAQwAABtbnRyUkdCIFhZWiAH4AABAAEAAAAAAABhY3NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA9tYAAQAAAADTLQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlkZXNjAAAA8AAAACRyWFlaAAABFAAAABRnWFlaAAABKAAAABRiWFlaAAABPAAAABR3dHB0AAABUAAAABRyVFJDAAABZAAAAChnVFJDAAABZAAAAChiVFJDAAABZAAAAChjcHJ0AAABjAAAADxtbHVjAAAAAAAAAAEAAAAMZW5VUwAAAAgAAAAcAHMAUgBHAEJYWVogAAAAAAAAb6IAADj1AAADkFhZWiAAAAAAAABimQAAt4UAABjaWFlaIAAAAAAAACSgAAAPhAAAts9YWVogAAAAAAAA9tYAAQAAAADTLXBhcmEAAAAAAAQAAAACZmYAAPKnAAANWQAAE9AAAApbAAAAAAAAAABtbHVjAAAAAAAAAAEAAAAMZW5VUwAAACAAAAAcAEcAbwBvAGcAbABlACAASQBuAGMALgAgADIAMAAxADZWUDhMLwAAAC8BQAAAHyAQSFD2x5okDQVto0D3Av6VIkEgQDjTrsz8h/+TTggoSNuARd2N6H/kAA=="}}')}}]);

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.