PageSourceSearch

https://www.bengaluruairport.com/assets/Itinerary-r1XbUi0p.js

js bengaluruairport.com collected 2026-10-02 06:18:12 UTC 14,953 bytes, 400 lines download raw bytes

1import{f as e,h as t,r as i,z as n,b as a,N as o,d as r,a9 as s,c as d,a as p,Y as l,j as x,L as c}from"./index-dqSqdwqf.js";import{M as g}from"./metaTags-6qm7SYm7.js";import{B as f}from"./BottomDrawer-DGDnk7iC.js";import{M as h,a as u,b as m,c as b,d as v,e as w}from"./index.esm-BXYAH54C.js";import"./CloseIcon-CQ9cMvj9.js";import"./iconBase-B6C5vzFG.js";const j=t.div`
2  background: linear-gradient(
3    to bottom,
4    rgba(248, 244, 231, 1) 160px,
5    #ffffff 400px
6  );
7  background-color: #ffffff;
8  min-height: 100vh;
9  padding: 0 0 40px 0;
10  font-family: "Outfit", sans-serif;
11
12  @media ${e.tablet} {
13    padding-bottom: 80px;
14  }
15`,C=t.div`
16  display: flex;
17  justify-content: space-between;
18  align-items: center;
19  padding: 24px 24px 16px;
20
21  @media ${e.tablet} {
22    padding: 32px 48px;
23    max-width: 1200px;
24    margin: 0 auto;
25  }
26`,k=t.div`
27  display: flex;
28  align-items: center;
29  gap: 8px;
30  font-size: 16px;
31  color: #273135;
32  cursor: pointer;
33  font-weight: 500;
34`,y=t.div`
35  position: relative;
36  z-index: 10;
37`,z=t.div`
38  background: #eef7f7;
39  padding: 6px 14px;
40  border-radius: 20px;
41  display: flex;
42  align-items: center;
43  gap: 8px;
44  border: 1px solid rgba(10, 107, 113, 0.1);
45  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
46  cursor: pointer;
47  transition: all 0.2s ease;
48
49  &:hover {
50    background: #e4f2f2;
51    border-color: rgba(10, 107, 113, 0.2);
52  }
53`,E=t.span`
54  color: #0a6b71;
55  font-size: 12px;
56  font-weight: 600;
57  letter-spacing: 0.3px;
58  text-transform: uppercase;
59`,$=t.div`
60  position: absolute;
61  top: calc(100% + 8px);
62  right: 0;
63  background: white;
64  border-radius: 12px;
65  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
66  border: 1px solid #e0ded9;
67  min-width: 140px;
68  overflow: hidden;
69  display: ${e=>e.isOpen?"block":"none"};
70  animation: fadeIn 0.2s ease-out;
71
72  @keyframes fadeIn {
73    from {
74      opacity: 0;
75      transform: translateY(-10px);
76    }
77    to {
78      opacity: 1;
79      transform: translateY(0);
80    }
81  }
82`,_=t.div`
83  padding: 12px 16px;
84  color: ${e=>e.active?"white":"#273135"};
85  background: ${e=>e.active?"#0a6b71":"transparent"};
86  font-size: 13px;
87  font-weight: 600;
88  cursor: pointer;
89  transition: all 0.2s ease;
90  text-transform: uppercase;
91  letter-spacing: 0.5px;
92
93  &:hover {
94    background: ${e=>e.active?"#0a6b71":"#f3f4f6"};
95  }
96
97  &:not(:last-child) {
98    border-bottom: 1px solid #f3f4f6;
99  }
100`,S=t.h1`
101  font-size: 28px;
102  color: #273135;
103  font-weight: 600;
104  margin: 0 24px 24px;
105  letter-spacing: -0.5px;
106
107  @media ${e.tablet} {
108    font-size: 42px;
109    margin: 0 48px 40px;
110    text-align: center;
111  }
112
113  @media ${e.laptop} {
114    font-size: 28px;
115    font-weight: 600;
116    margin-bottom: 32px;
117  }
118`,T=t.div`
119  display: flex;
120  background: rgba(255, 255, 255, 0.7);
121  padding: 4px;
122  border-radius: 30px;
123  border: 1px solid #e0ded9;
124  margin: 0 24px 32px;
125  width: calc(100% - 48px);
126  box-sizing: border-box;
127
128  @media ${e.tablet} {
129    max-width: 500px;
130    margin: 0 auto 48px;
131  }
132
133  @media ${e.laptop} {
134    max-width: 450px;
135  }
136`,O=t.div`
137  flex: 1;
138  padding: 12px 12px;
139  border-radius: 26px;
140  font-size: 13px;
141  font-weight: 700;
142  cursor: pointer;
143  transition: all 0.3s ease;
144  background: ${e=>e.active?"#273135":"transparent"};
145  color: ${e=>e.active?"white":"#273135"};
146  text-transform: uppercase;
147  text-align: center;
148  letter-spacing: 0.5px;
149
150  @media ${e.tablet} {
151    padding: 14px 20px;
152    font-size: 14px;
153  }
154
155  @media ${e.laptop} {
156    font-size: 14px;
157    padding: 12px 20px;
158  }
159`,D=t.div`
160  position: relative;
161  padding-left: 104px;
162  padding-right: 16px;
163
164  &::before {
165    content: "";
166    position: absolute;
167    left: 70px;
168    top: 14px;
169    bottom: 0;
170    width: 1px;
171    background-color: #0a6b71;
172    opacity: 0.15;
173  }
174
175  @media ${e.tablet} {
176    max-width: 700px;
177    margin: 0 auto;
178    padding-left: 120px;
179    padding-right: 24px;
180
181    &::before {
182      left: 86px;
183    }
184  }
185
186  @media ${e.laptop} {
187    max-width: 850px;
188    padding-left: 140px;
189
190    &::before {
191      left: 106px;
192    }
193  }
194`,M=t.div`
195  position: relative;
196  margin-bottom: 24px;
197`,N=t.div`
198  position: absolute;
199  left: -42px;
200  top: 50%;
201  transform: translateY(-50%);
202  width: 16px;
203  height: 16px;
204  border-radius: 50%;
205  background-color: #0a6b71;
206  z-index: 2;
207  transition: all 0.3s ease;
208  border: 2px solid white;
209  box-sizing: border-box;
210
211  ${e=>e.active&&"\n    width: 16px;\n    height: 16px;\n    left: -42px;\n    background-color: #0a6b71;\n    border: 2px solid white;\n    box-shadow: 0 0 0 1.5px #0a6b71;\n  "}
212`,H=t.div`
213  position: absolute;
214  left: -98px;
215  top: 50%;
216  transform: translateY(-50%);
217  font-size: 13px;
218  font-weight: 500;
219  color: #717b7e;
220  width: 45px;
221  text-align: right;
222
223  @media ${e.laptop} {
224    font-size: 14px;
225    left: -110px;
226  }
227`,L=t.div`
228  background: white;
229  border-radius: 12px;
230  border: 1px solid ${e=>e.expanded?"#0a6b71":"#e4ebeb"};
231  padding: 16px;
232  cursor: pointer;
233  transition: all 0.3s ease;
234  margin-right: 8px;
235  max-width: 400px;
236
237  @media ${e.tablet} {
238    max-width: 100%;
239    margin-right: 0;
240    padding: 24px;
241  }
242
243  @media ${e.laptop} {
244    padding: 20px;
245  }
246`,I=t.div`
247  display: flex;
248  justify-content: space-between;
249  align-items: center;
250`,B=t.h3`
251  font-size: 16px;
252  font-weight: 700;
253  color: #08565a;
254  margin: 0;
255  flex: 1;
256  line-height: 1.4;
257
258  @media ${e.tablet} {
259    font-size: 20px;
260  }
261
262  @media ${e.laptop} {
263    font-size: 18px;
264  }
265`,P=t.div`
266  display: flex;
267  gap: 8px;
268  margin-bottom: 12px;
269`,R=t.div`
270  display: flex;
271  align-items: center;
272  gap: 4px;
273  padding: 4px 12px;
274  border-radius: 20px;
275  font-size: 12px;
276  font-weight: 500;
277  border: 1px solid rgba(224, 222, 217, 0.5);
278  background: #fbfaf8;
279  color: #717b7e;
280
281  @media ${e.laptop} {
282    font-size: 13px;
283    padding: 4px 12px;
284  }
285`,U=t(R)`
286  color: #2c9a4c;
287  background: #ffffff;
288  border: 1px solid #98a0a3ff;
289  &::before {
290    content: "";
291    width: 6px;
292    height: 6px;
293    border-radius: 50%;
294    background-color: #2c9a4c;
295  }
296`,Y=t.p`
297  font-size: 16px;
298  font-weight: 400;
299  line-height: 1.5;
300  color: #515b5e;
301  margin: 12px 0;
302
303  @media ${e.laptop} {
304    font-size: 14px;
305    line-height: 1.6;
306  }
307`,F=t.button`
308  background: #fbe697;
309  border: none;
310  padding: 6px 14px;
311  border-radius: 20px;
312  font-size: 12px;
313  font-weight: 600;
314  color: #464647;
315  display: flex;
316  align-items: center;
317  gap: 6px;
318  cursor: pointer;
319  margin-top: 16px;
320  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
321
322  @media ${e.laptop} {
323    font-size: 15px;
324    padding: 10px 20px;
325  }
326
327  svg {
328    font-size: 16px;
329  }
330`,V=t.div`
331  padding: 0 24px 24px;
332
333  @media ${e.tablet} {
334    max-width: 600px;
335    margin: 0 auto;
336  }
337`;t.div`
338  margin-bottom: 24px;
339`;const J=t.h2`
340  font-size: 22px;
341  font-weight: 700;
342  color: #273135;
343  margin-bottom: 8px;
344
345  @media ${e.laptop} {
346    font-size: 28px;
347  }
348`,q=t.div`
349  display: flex;
350  gap: 8px;
351  flex-wrap: wrap;
352`,A=t.div`
353  background: #f3f4f6;
354  padding: 4px 12px;
355  border-radius: 12px;
356  font-size: 12px;
357  font-weight: 500;
358  color: #515b5e;
359`,G=t.div`
360  display: flex;
361  flex-direction: column;
362  gap: 20px;
363  margin-top: 16px;
364  padding-top: 24px;
365  border-top: 1px solid #f3f4f6;
366`,Z=t.div`
367  display: flex;
368  gap: 16px;
369  align-items: flex-start;
370`,K=t.div`
371  background: #eef7f7;
372  color: #0a6b71;
373  min-width: 32px;
374  height: 32px;
375  border-radius: 50%;
376  display: flex;
377  align-items: center;
378  justify-content: center;
379  font-size: 12px;
380  font-weight: 700;
381`,Q=t.p`
382  font-size: 14px;
383  line-height: 1.6;
384  color: #273135;
385  margin: 0;
386
387  @media ${e.laptop} {
388    font-size: 16px;
389  }
390`,W=t.div`
391  position: absolute;
392  top: 16px;
393  right: 16px;
394  cursor: pointer;
395  z-index: 10;
396  padding: 8px;
397  display: flex;
398  align-items: center;
399  justify-content: center;
400`,X=()=>{var e,t,X;const[ee,te]=i.useState(!0),[ie,ne]=i.useState(null),[ae,oe]=i.useState(null),[re,se]=i.useState(null),[de,pe]=i.useState(0),[le,xe]=i.useState(null),[ce,ge]=i.useState(-1),[fe,he]=i.useState(!1),[ue,me]=i.useState(null),[be,ve]=i.useState(!1),we=i.useRef(),je=n(),Ce=a(),ke=i.useRef(),ye=i.useContext(o);i.useEffect(()=>(null==ye||ye.hideBottomNavs(),null==ye||ye.hideFooterNavs(),null==ye||ye.hideHeaderNavs(),()=>{null==ye||ye.showBottomNavs(),null==ye||ye.showFooterNavs(),null==ye||ye.showHeaderNavs()}),[]),i.useEffect(()=>{ze()},[je.search]),i.useEffect(()=>{const e=e=>{we.current&&!we.current.contains(e.target)&&ve(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[]);const ze=async()=>{var e,t;te(!0);try{const i=new URLSearchParams(je.search),n=i.get("EVENT_THEME_CODE")||r("EVENT_THEME_CODE")||(null==(e=r("login-theme"))?void 0:e.utheme)||"iqfm";i.get("EVENT_THEME_CODE")&&s("EVENT_THEME_CODE",i.get("EVENT_THEME_CODE"));let a=d.api.pages.replace("{{pageId}}","Itinerary"),o=await p.get(a),l=await o.json();if(200===o.status){ne(l);const e=null==(t=l.page_sub_menus)?void 0:t.find(e=>{var t;return(null==(t=e.name)?void 0:t.toLowerCase())===n.toLowerCase()});if(e){oe(e);const t=e.content_blocks||[];if(t.length>0){const e=new URLSearchParams(je.search).get("cohort"),i=t.find(t=>{var i;return(null==(i=t.header)?void 0:i.toLowerCase())===(null==e?void 0:e.toLowerCase())});se(i||t[0])}}}}catch(i){console.error("Error fetching Itinerary page data:",i)}finally{te(!1)}},Ee=(null==ae?void 0:ae.content_blocks)||[];new URLSearchParams(je.search).get("cohort");const $e=re||Ee[0],_e=l.useMemo(()=>$e?(e=>{if(!e)return null;try{let t=(new DOMParser).parseFromString(e,"text/html").body.textContent||"";t=t.replace(/\u00A0/g," "),t.includes('\\"')&&(t=t.replace(/\\"/g,'"'));const i=t.indexOf("{"),n=t.lastIndexOf("}");
400return-1!==i&&-1!==n&&(t=t.substring(i,n+1)),JSON.parse(t)}catch(t){return console.error("Failed to parse schedule JSON",t),null}})($e.body):null,[$e]),Se=(null==_e?void 0:_e.schedule)||[],Te=Se[de];if(i.useEffect(()=>{if(Se.length>0){const e=e=>{try{const t=(new Date).getFullYear(),i=e.split(", ");if(i.length<2)return null;const n=new Date(`${i[1]} ${t}`);return n.setHours(0,0,0,0),n}catch(t){return null}},t=(()=>{const e=new Date,t=e.getTime()+6e4*e.getTimezoneOffset();return new Date(t+198e5)})();t.setHours(0,0,0,0);const i=Se.map(t=>e(t.date_title)),n=t.getTime(),a=i.findIndex(e=>e&&e.getTime()===n);if(-1!==a)pe(a);else{const e=i.map((e,t)=>e?{date:e.getTime(),index:t}:null).filter(e=>null!==e);if(e.length>0){const t=e[0].date,i=e[e.length-1].date;n<t?pe(0):n>i&&pe(Se.length-1)}}}},[Se]),i.useEffect(()=>{if(Te&&Te.timeline_events){const e=new Date,t=`${e.getHours().toString().padStart(2,"0")}:${e.getMinutes().toString().padStart(2,"0")}`;let i=0;Te.timeline_events.forEach((e,n)=>{t>=e.time&&(i=n)}),ge(i),xe(i)}},[Te]),ee)return x.jsx(c,{});return x.jsxs(j,{children:[ie&&x.jsx(g,{data:ie,url:window.location.href}),x.jsxs(C,{children:[x.jsxs(k,{onClick:()=>Ce.push("/"),children:[x.jsx(h,{size:28})," ",x.jsx("span",{children:"Back"})]}),Ee.length>0&&x.jsxs(y,{ref:we,children:[x.jsxs(z,{onClick:()=>ve(!be),children:[x.jsx("img",{src:"data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_11216_14768)'%3e%3cpath%20d='M5.25%2010C7.04493%2010%208.5%208.54493%208.5%206.75C8.5%204.95507%207.04493%203.5%205.25%203.5C3.45507%203.5%202%204.95507%202%206.75C2%208.54493%203.45507%2010%205.25%2010Z'%20stroke='%230a6b71'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M0.640625%2012.5013C1.14006%2011.7334%201.82337%2011.1024%202.62854%2010.6656C3.43371%2010.2288%204.33523%2010%205.25125%2010C6.16727%2010%207.06879%2010.2288%207.87396%2010.6656C8.67913%2011.1024%209.36244%2011.7334%209.86188%2012.5013'%20stroke='%230a6b71'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M10.75%2010C11.666%209.99946%2012.5676%2010.2279%2013.3728%2010.6645C14.178%2011.1011%2014.8613%2011.7321%2015.3606%2012.5'%20stroke='%230a6b71'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M9.54297%203.73125C9.98754%203.55393%2010.4658%203.477%2010.9435%203.50595C11.4213%203.5349%2011.8868%203.66901%2012.3067%203.89871C12.7266%204.1284%2013.0906%204.44801%2013.3726%204.83469C13.6547%205.22138%2013.8479%205.66559%2013.9384%206.13559C14.0289%206.60558%2014.0144%207.08977%2013.8961%207.55353C13.7777%208.0173%2013.5584%208.44921%2013.2538%208.81839C12.9492%209.18758%2012.5668%209.48492%2012.134%209.68918C11.7011%209.89344%2011.2285%209.99958%2010.7498%2010'%20stroke='%230a6b71'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_11216_14768'%3e%3crect%20width='16'%20height='16'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e",alt:"users",style:{width:"20px",height:"20px"}}),x.jsx(E,{children:(null==$e?void 0:$e.header)||"Cohort"}),be?x.jsx(u,{size:20,color:"#0a6b71"}):x.jsx(m,{size:20,color:"#0a6b71"})]}),x.jsx($,{isOpen:be,children:Ee.map(e=>x.jsx(_,{active:(null==$e?void 0:$e.id)===e.id,onClick:()=>{se(e),pe(0),xe(null),ve(!1)},children:e.header||"Cohort"},e.id))})]})]}),x.jsx(S,{children:"Executive Itinerary"}),Se.length>0&&x.jsx(T,{children:Se.map((e,t)=>x.jsx(O,{active:de===t,onClick:()=>{pe(t),xe(null)},children:(()=>{try{const t=e.date_title.split(", ");if(2===t.length){const e=t[0].substring(0,3).toUpperCase();return`${e}, ${t[1].toUpperCase()}`}return e.date_title.toUpperCase()}catch(t){return e.date_title}})()},t))}),x.jsx(D,{children:null==(e=null==Te?void 0:Te.timeline_events)?void 0:e.map((e,t)=>{const i=le===t;return x.jsxs(M,{children:[x.jsx(H,{children:e.time}),x.jsx(N,{active:i}),x.jsxs(L,{expanded:i,onClick:()=>{var e;xe(le===(e=t)?null:e)},children:[i&&x.jsxs(P,{children:[t===ce&&x.jsx(U,{children:"Live"}),x.jsxs(R,{children:[x.jsx(b,{size:14,style:{color:"#222222"}})," ",e.duration]})]}),x.jsxs(I,{children:[x.jsx(B,{expanded:i,children:e.event_title}),i?x.jsx(u,{size:28,color:"#0a6b71"}):x.jsx(m,{size:28,color:"#0a6b71"})]}),i&&x.jsxs("div",{style:{marginTop:"16px"},children:[x.jsx(Y,{children:e.text}),e.cta&&x.jsxs(F,{onClick:t=>((e,t)=>{e.stopPropagation(),me(t),he(!0)})(t,e.event_info),children:[e.cta," ",x.jsx(v,{size:18})]})]})]})]},t)})}),x.jsx(f,{isOpen:fe,setIsOpen:he,sheetRef:ke,handleClose:()=>he(!1),hideHeader:!0,disableDrag:!0,children:ue&&x.jsxs(V,{children:[x.jsx(W,{onClick:()=>he(!1),children:x.jsx(w,{size:24,color:"#273135"})}),x.jsx("div",{style:{display:"flex",justifyContent:"center",marginBottom:"12px"},children:x.jsx("div",{style:{width:"40px",height:"4px",backgroundColor:"#E0DED9",borderRadius:"2px"}})}),x.jsxs("div",{style:{marginTop:"24px"},children:[x.jsx(J,{children:ue.title}),x.jsx(q,{children:null==(t=ue.tags)?void 0:t.map((e,t)=>x.jsx(A,{children:e},t))}),x.jsx(G,{children:null==(X=ue.list_items)?void 0:X.map((e,t)=>x.jsxs(Z,{children:[x.jsx(K,{children:(t+1).toString().padStart(2,"0")}),x.jsx(Q,{children:e})]},t))})]})]})})]})};export{X 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.