1import{a as I,E as q}from"./89dEzPqY.js";import{E as j}from"./DSq-ZSnb.js";/* empty css */import"./Bw9M6eTQ.js";import"./DvxjkH2r.js";import{d as J,u as K,a as Q,r as n,w as X,A as Y,c as _,e as a,n as Z,t as v,h as N,i as H,F as B,f as L,o as d,l as R,q as oo,s as to,v as eo,B as F,z as ao,x as so}from"./DdUIPc4S.js";import{u as lo,a as io,_ as no}from"./BGnOV89k.js";import{u as ro}from"./CaqUbipt.js";import{_ as co}from"./XaAiZRqF.js";import{_ as mo}from"./BGsnqmoM.js";import"./sqrzweq2.js";import"./wdIFfZCU.js";import"./BzI3xh66.js";import"./hgnQhVNa.js";import"./CGOpEZDx.js";import"./BChwD0I0.js";import"./DCkGLnbz.js";import"./D1FQ5AYG.js";import"./xMO71HvW.js";const P=k=>(oo("data-v-e839c533"),k=k(),to(),k),po={class:"page-promo"},uo=P(()=>a("div",{class:"overlay"},null,-1)),_o={class:"page-promo-hero-banner-title main-container"},vo={class:"page-promo-body main-container"},ho={class:"page-promo-header"},go={class:"paragraph"},yo={class:"dropdown-container"},ko=P(()=>a("span",{class:"label"},v("Search by :"),-1)),fo={key:0,class:"page-promo-list-container"},To=["onClick"],Co={class:"page-promo-list-item-img-container"},wo=["src"],So={class:"page-promo-list-item-img-content"},bo={class:"page-promo-list-item-img-content-text"},xo={class:"page-promo-list-item-content"},Po={class:"page-promo-list-item-content-title"},Bo={key:1,class:"page-promo-empty-container"},Fo=P(()=>a("img",{src:co,alt:"empty-promo"},null,-1)),Do=P(()=>a("span",null,"Stay tuned for more upcoming F&B promotions!",-1)),Ao=[Fo,Do],Eo={class:"modal-body"},Vo={class:"promo-detail-container"},Wo=["src"],Go={class:"promo-detail-content-container"},Mo={class:"title"},No=["innerHTML"],Ho=J({__name:"index",async setup(k){let D,A;lo(),K();const O=so(),f=Q(),T=io(),C=n(null),w=n([]);n([]);const S=n(!1),p=n(null),E=n([{label:"All Promotion",value:null}]),b=n(null),t=n();ro({robots:()=>{var o;return((o=t==null?void 0:t.value)==null?void 0:o.robots)||"noindex, nofollow"},title:()=>{var o;return((o=t==null?void 0:t.value)==null?void 0:o.title)||""},description:()=>{var o;return((o=t==null?void 0:t.value)==null?void 0:o.description)||""},keywords:()=>{var o;return((o=t==null?void 0:t.value)==null?void 0:o.keywords)||""},ogTitle:()=>{var o;return((o=t==null?void 0:t.value)==null?void 0:o.ogTitle)||""},ogType:()=>{var o;return((o=t==null?void 0:t.value)==null?void 0:o.ogType)||""},ogSite_name:()=>{var o;return((o=t==null?void 0:t.value)==null?void 0:o.ogSite_name)||""},ogDescription:()=>{var o;return((o=t==null?void 0:t.value)==null?void 0:o.ogDescription)||""},ogImage:()=>{var o;return(o=t==null?void 0:t.value)==null?void 0:o.ogImage}});const $=async()=>{var i,m,h,g;const o=await eo(),{token:l,tokenType:r}=o;if(!l||!r)return;let c={url:"/Page/Detail",method:"GET",params:{slug:"fb-promotion"}};const e=await f.runWithContext(()=>T.dispatcFetchAPIWithToken(c,o));if((e==null?void 0:e.data)!==null&&e.data!=null){t.value={robots:O.public.environment!="PROD"?"noindex, nofollow":"index, follow",title:(i=e==null?void 0:e.data)==null?void 0:i.title,ogTitle:(m=e==null?void 0:e.data)==null?void 0:m.title,description:((h=e==null?void 0:e.data)==null?void 0:h.metaDesc)??"",ogDescription:((g=e==null?void 0:e.data)==null?void 0:g.metaDesc)??"",ogType:"Website",ogSite_name:"SHA"},C.value=e.data;const s=await F(),{promoToken:y,promoTokenType:x}=s;
1if(!y||!x)return;let G={url:"/FBPromotion/GetCategories",method:"GET"};const u=await f.runWithContext(()=>T.dispatcFetchPromoAPIWithToken(G,s));(u==null?void 0:u.Data.length)>0&&(u==null||u.Data.map(M=>{E.value.push({label:M.Name,value:M.Id})})),await V()}},V=async()=>{try{const o=await F(),{promoToken:l,promoTokenType:r}=o;if(!l||!r)return;let c={url:"/FBPromotion/GetFBPromotions",method:"GET",params:{categoryId:b.value}};const e=await f.runWithContext(()=>T.dispatcFetchPromoAPIWithToken(c,o));(e==null?void 0:e.Data.length)>0?w.value=e==null?void 0:e.Data.filter(({ValidFrom:i,ValidTo:m})=>ao().isBetween(i,m,null,"[]")):w.value=[]}catch{}},U=async o=>{try{const l=await F(),{promoToken:r,promoTokenType:c}=l;if(!r||!c)return;let e={url:"/FBPromotion/GetFBPromotionDetail",method:"GET",params:{id:o}};const i=await f.runWithContext(()=>T.dispatcFetchPromoAPIWithToken(e,l));i!=null&&i.Data?p.value=i==null?void 0:i.Data:p.value=null,S.value=!0}catch{}};[D,A]=X(()=>$()),await D,A(),Y(()=>b.value,(o,l)=>{V()});const z=o=>{U(o)},W=()=>{S.value=!1,p.value=null};return(o,l)=>{var i,m,h,g;const r=q,c=I,e=j;return d(),_(B,null,[a("div",po,[a("div",{class:"page-promo-hero-banner",style:Z(`background-image:url(${(m=(i=C.value)==null?void 0:i.headerMedia)==null?void 0:m.fileUrl})`)},[uo,a("div",_o,v((h=C.value)==null?void 0:h.title),1)],4),a("div",vo,[a("div",ho,[a("div",go,v((g=C.value)==null?void 0:g.summary),1),a("div",yo,[ko,N(c,{modelValue:b.value,"onUpdate:modelValue":l[0]||(l[0]=s=>b.value=s),"popper-class":"search-select"},{default:H(()=>[(d(!0),_(B,null,L(E.value,s=>(d(),R(r,{key:s.value,label:s.label,value:s.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])]),w.value.length>0?(d(),_("div",fo,[(d(!0),_(B,null,L(w.value,s=>(d(),_("div",{class:"page-promo-list-item",key:s.Id,onClick:y=>z(s.Id)},[a("div",Co,[a("img",{src:s.ImageSrc},null,8,wo),a("div",So,[a("div",bo,v(s.HotelName),1)])]),a("div",xo,[a("div",Po,v(s.Title),1)])],8,To))),128))])):(d(),_("div",Bo,Ao))])]),N(e,{class:"promo-detail-modal",modelValue:S.value,"onUpdate:modelValue":l[2]||(l[2]=s=>S.value=s),"show-close":!1,"close-on-press-escape":!0,"close-on-click-modal":!0,"align-center":"",onClose:W},{default:H(()=>{var s,y,x;return[a("div",Eo,[a("div",Vo,[a("img",{src:(s=p.value)==null?void 0:s.ImageSrc,class:"promo-detail-img"},null,8,Wo),a("div",Go,[a("div",Mo,v((y=p.value)==null?void 0:y.Title),1),a("div",{class:"content",innerHTML:(x=p.value)==null?void 0:x.Offers},null,8,No)])]),a("img",{src:mo,class:"btn-close",alt:"Close",onClick:l[1]||(l[1]=G=>W())})])]}),_:1},8,["modelValue"])],64)}}}),st=no(Ho,[["__scopeId","data-v-e839c533"]]);export{st 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.