PageSourceSearch

https://www.premierholidays.co.uk/_nuxt/C1ULABjT.js

js premierholidays.co.uk collected 2026-09-24 23:36:23 UTC 4,584 bytes, 1 lines download raw bytes

1import{_ as E,g as W,c as D,d as M}from"./lTr7RkzU.js";import{I as g,V as r,X as h,W as d,a0 as i,ab as V,ao as K,Q as O,a7 as F,U as P,ak as H,a8 as U,a9 as R,a1 as A,T as q,aC as Q,d as w,m as b,q as X,aD as z}from"./BfJgI-1u.js";import{_ as G}from"./DPLf-UgY.js";const J={__name:"DestinationNavigation",props:{dest:Object,pages:Array,isShortHaul:Boolean,isResort:Boolean,isRegion:Boolean},setup(y,{expose:o}){o();const a=y,n=M(),C=[z],c=w(null),u=w(!1),p=w(!0),x=w(!1),f=(e=c.value)=>{e&&(u.value=!e.isLocked,p.value=e.isBeginning,x.value=e.isEnd)};let l=w(["hotels","tours","regions","resorts","offers","experiences","excursions","information"]);a.pages.forEach(e=>{l.value.push(e.name.toLowerCase())});const s=(e="")=>{if(!e)return"/";const t=e.toLowerCase();return t==="/"?t:t.replace(/\/+$/,"")},v=b(()=>s(n.path)),S=e=>{const t=e?.link??"";if(!t)return"";if(t.startsWith("/destinations"))return s(t);const _=t.startsWith("/")?`/destinations${t}`:`/destinations/${t}`;return s(_)},N=b(()=>!n.path.toLowerCase().split(/[?#]/,1)[0].split("/").filter(Boolean).some(t=>l.value.includes(t))),B=e=>{const t=e?.name?.toLowerCase?.()??"";if(!t)return!1;if(t==="overview")return N.value;const _=S(e);if(!_)return v.value.includes(t);const I=v.value;return I===_?!0:I.startsWith(`${_}/`)},m=b(()=>Array.isArray(a.pages)?a.pages.findIndex(e=>B(e)):-1),T=b(()=>m.value>-1?m.value:0),k=(e=c.value)=>{if(!e)return;const t=m.value;t<0||e.activeIndex!==t&&e.slideTo(t,0)},j=e=>{c.value=e,k(e),f(e)};X(()=>m.value,()=>{k()});const L={props:a,route:n,swiperModules:C,swiperRef:c,showNavButtons:u,atStart:p,atEnd:x,syncNavState:f,get excludedKeywords(){return l},set excludedKeywords(e){l=e},normalizePath:s,normalizedRoutePath:v,getPageTargetPath:S,isOverview:N,isPageActive:B,activeIndex:m,initialSlide:T,slideToActive:k,onSwiper:j,get FreeMode(){return z}};return Object.defineProperty(L,"__isScriptSetup",{enumerable:!1,value:!0}),L}},Y={id:"dest-navigation",class:"w-full bg-ph-blue backdrop-blur-sm text-white flex justify-center items-center -mt-[70px] mb-12 overflow-hidden"},Z={class:"flex w-full items-center gap-2 md:gap-4"},$={class:"my-3"},ee={key:0,id:"activePageIndicator",class:"flex justify-center items-center"},te={class:"my-3"},ne={key:0,id:"activePageIndicator",class:"flex justify-center items-center"},se={class:"flex shrink-0 items-center gap-1"},oe=["disabled"],ie=["disabled"];function ae(y,o,a,n,C,c){const u=W,p=H,x=K,f=D,l=G;return r(),g("div",Y,[h(l,null,{default:d(()=>[i("div",Z,[h(x,{class:"w-full min-w-0 flex-1 overflow-hidden",modules:n.swiperModules,"slides-per-view":"auto","space-between":24,"slides-offset-before":0,"slides-offset-after":0,"initial-slide":n.initialSlide,"free-mode":!0,"centered-slides":!1,onSwiper:n.onSwiper,onResize:n.syncNavState,onProgress:n.syncNavState,onLock:n.syncNavState,onUnlock:n.syncNavState},{default:d(()=>[(r(!0),g(O,null,F(a.pages,(s,v)=>(r(),P(p,{onClick:S=>y.handleTabChange(s.name.toLowerCase()),key:v,class:U("text-lg md:px-2 uppercase !w-auto  h-full overflow-hidden")},{default:d(()=>[s.name.toLowerCase()==="overview"?(r(),P(u,{key:0,to:`/destinations/${a.dest.slug}`},{default:d(()=>[i("h2",$,A(s.name),1),n.isPageActive(s)?(r(),g("div",ee,o[2]||(o[2]=[i("div",{class:"border-b-4 border-ph-yellow w-12 md:w-16"},null,-1)]))):R("",!0)]),_:2},1032,["to"])):(r(),P(u,{key:1,to:`/destinations${s.link}`},{default:d(()=>[i("h2",te,A(s.name),1),h(q,{name:"fade-down"},{default:d(()=>[n.isPageActive(s)?(r(),g("div",ne,o[3]||(o[3]=[i("div",{class:"border-b-4 border-ph-yellow w-12 md:w-16"},null,-1)]))):R("",!0)]),_:2},1024)]),_:2},1032,["to"]))]),_:2},1032,["onClick"]))),128))]),_:1},8,["initial-slide"]),V(i("div",se,[i("button",{type:"button","aria-label":"Previous",onClick:o[0]||(o[0]=s=>n.swiperRef?.slidePrev()),disabled:n.atStart,class:"grid size-8 place-items-center rounded-full text-white/80 ring-1 ring-white/25 transition hover:bg-white/10 hover:text-white disabled:pointer-events-none disabled:opacity-30"},[h(f,{name:"material-symbols:chevron-left-rounded",class:"text-xl"})],8,oe),i("button",{type:"button","aria-label":"Next",onClick:o[1]||(o[1]=s=>n.swiperRef?.slideNext()),disabled:n.atEnd,class:"grid size-8 place-items-center rounded-full text-white/80 ring-1 ring-white/25 transition hover:bg-white/10 hover:text-white disabled:pointer-events-none disabled:opacity-30"},[h(f,{name:"material-symbols:chevron-right-rounded",class:"text-xl"})],8,ie)],512),[[Q,n.showNavButtons]])])]),_:1})])}const ce=E(J,[["render",ae],["__scopeId","data-v-84771485"],["__file","navigation.vue"]]);export{ce as _};

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.