1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1666],{2733:e=>{e.exports={studiolandscapeContainer:"rNPchno",contentWrapper:"k5Gs_Sg",header:"VkzWTcN",title:"vrYhJN0",logo:"BQtewZI",divider:"py1nMgw",main:"__8qO1932",columnLeft:"nXSHLuT",columnRight:"_DPTI9I",heading:"DmbMUjT",classList:"__0Ju6DoS",classItem:"U0CTt3_",classTime:"m8hyniZ",className:"__8W2t65l",classInstructor:"zYBiB_J",studioContainer:"xhda_6w",studioContentWrapper:"ztn0N_t",studioHeader:"Dhq8mXY",studioRoomId:"xBHJsYC",studioLogo:"da_JJUT",studioDivider:"yEf3gB3",studioHeading:"M_B2yku",studioSection:"A_L22LX",studioClassList:"jDd9l9E",studioClassItem:"M2UYIYQ",studioClassTime:"G3cyp0a",studioClassName:"kHUB8_c",studioClassInstructor:"Nnn8h6r",noClasses:"ntm28c8",error:"CsUhBan",landscapeError:"__7ktjyS2",studioError:"KWCqlh2",studioClassesFinished:"PKrbFqz"}},2880:(e,s,t)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/totem/[size]/[club_id]/[room_id]",function(){return t(16065)}])},16065:(e,s,t)=>{"use strict";t.r(s),t.d(s,{__N_SSP:()=>o,default:()=>d});var i=t(37876),a=t(89099),n=t(14232),r=t(2733),l=t.n(r),c=t(82701),o=!0;let d=()=>{let{size:e,club_id:s,room_id:t}=(0,a.useRouter)().query,[r,o]=(0,n.useState)([]),[d,u]=(0,n.use
1State)(!0),[m,h]=(0,n.useState)(null),N=async()=>{if(s&&t)try{let e=await fetch("/api/general/timetable/".concat(s,"/").concat(t));if(!e.ok)throw Error("Failed to fetch timetable");let i=await e.json(),{timeZone:a,locale:n}=(0,c.WF)(),r=new Date,l=(0,c.yC)(r,a),d=(0,c.Xt)(l,1),u=(i.classes||[]).map(e=>{let s=(0,c.Fg)(e.startTime,a),t=(0,c.Fg)(e.endTime,a);if(!s||!t)return null;let i=(0,c.yC)(s,a);return{time:(0,c.if)(s,n,a),name:e.activityName,instructor:e.instructor,start:s,end:t,isToday:i===l,isTomorrow:i===d,isOnNow:r>=s&&r<t,isUpcoming:s>r,isFinished:r>=t}}).filter(e=>!!e).sort((e,s)=>e.start.getTime()-s.start.getTime());o(u),h(null)}catch(e){h(e instanceof Error?e.message:"Unknown error occurred"),o([])}finally{u(!1)}},g=()=>{let e=new Date;o(s=>s.map(s=>({...s,isOnNow:e>=s.start&&e<s.end,isUpcoming:s.start>e,isFinished:e>=s.end})).filter(s=>e<=s.end))};(0,n.useEffect)(()=>{N();let e=setInterval(N,3e5),s=setInterval(g,6e4);return()=>{clearInterval(e),clearInterval(s)}},[s,t]);let p=r.filter(e=>e.isToday),v=r.filter(e=>e.isTomorrow),f=p.find(e=>e.isOnNow),T=p.find(e=>e.isUpcoming),j=p.filter(e=>e.isUpcoming).slice(1),C=p.some(e=>e.isFinished),_=function(e,s){let t=!(arguments.length>2)||void 0===arguments[2]||arguments[2];return d?(0,i.jsxs)("div",{children:[(0,i.jsx)("h2",{className:x(),children:e}),(0,i.jsx)("p",{children:"Loading..."})]}):t||0!==s.length?(0,i.jsxs)("div",{children:[(0,i.jsx)("h2",{className:x(),children:e}),s.length>0?(0,i.jsx)("ul",{className:y(),children:s.map((e,s)=>(0,i.jsxs)("li",{className:S(),children:[(0,i.jsx)("span",{className:w(),children:e.time}),(0,i.jsx)("span",{className:E(),children:e.name}),(0,i.jsx)("span",{className:D(),children:e.instructor})]},s))}):null]}):null},x=()=>"studiolandscape"===e?l().heading:l().studioHeading,y=()=>"studiolandscape"===e?l().classList:l().studioClassList,S=()=>"studiolandscape"===e?l().classItem:l().studioClassItem,w=()=>"studiolandscape"===e?l().classTime:l().studioClassTime,E=()=>"studiolandscape"===e?l().className:l().studioClassName,D=()=>"studiolandscape"===e?l().classInstructor:l().studioClassInstructor,I=f?{title:"ON NOW",classes:[f]}:T?{title:"UP NEXT",classes:[T]}:C?{title:"CLASSES FINISHED",classes:[]}:{title:"",classes:[]},B=f&&T?{title:"UP NEXT",classes:[T]}:f?{title:"NO MORE CLASSES TODAY",classes:[]}:T&&j.length>0?{title:"LATER TODAY",classes:j}:T?{title:"NO MORE CLASSES TODAY",classes:[]}:C?{title:"JOIN US TOMORROW",classes:v}:{title:"",classes:[]};return"studiolandscape"===e?(0,i.jsxs)("div",{className:l().studiolandscapeContainer,children:[(0,i.jsxs)("div",{className:l().contentWrapper,children:[(0,i.jsxs)("header",{className:l().header,children:[(0,i.jsx)("h1",{className:l().title,children:t}),(0,i.jsx)("img",{src:"/img/virgin-red.svg",alt:"Virgin Active",className:l().logo})]}),(0,i.jsx)("hr",{className:l().divider}),(0,i.jsxs)("div",{className:l().main,children:[(0,i.jsx)("div",{className:l().columnLeft,children:_(I.title,I.classes)}),(0,i.jsx)("div",{className:l().columnRight,children:_(B.title,B.classes)})]})]}),m&&(0,i.jsxs)("div",{className:"".concat(l().error," ").concat(l().landscapeError),children:["Error: ",m]})]}):(0,i.jsxs)("div",{className:l().studioContainer,children:[(0,i.jsxs)("div",{className:l().studioContentWrapper,children:[(0,i.jsxs)("div",{className:l().studioHeader,children:[(0,i.jsx)("h1",{className:l().studioRoomId,children:t}),(0,i.jsx)("img",{src:"/img/virgin-red.svg",alt:"Virgin Active",className:l().studioLogo})]}),(0,i.jsx)("hr",{className:l().studioDivider}),(0,i.jsx)("div",{className:l().studioClassesFinished,children:_(I.title,I.classes)}),(0,i.jsx)("hr",{className:l().studioDivider}),(0,i.jsx)("div",{className:l().studioSection,children:_(B.title,B.classes)})]}),m&&(0,i.jsxs)("div",{className:"".concat(l().error," ").concat(l().studioError),children:["Error: ",m]})]})}},82701:(e,s,t)=>{"use strict";t.d(s,{Fg:()=>N,WF:()=>c,Xt:()=>d,if:()=>g,rW:()=>l,yC:()=>o});var i=t(22154);let a={[i.cB.australia]:"Australia/Sydney",[i.cB.singapore]:"Asia/Singapore",[i.cB.thailand]:"Asia/Bangkok",[i.cB.qatar]:"Asia/Qatar",[i.cB.unitedKingdom]:"Europe/London"},n={[i.cB.australia]:"en-AU",[i.cB.singapore]:"en-SG",[i.cB.thailand]:"en-GB",[i.cB.qatar]:"en-GB",[i.cB.unitedKingdom]:"en-GB"},r=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2})(?::(\d{2}))?(?:\.\d+)?/;function l(e){return a[null!=e?e:(0,i.zj)().region]}function c(){let e=(0,i.zj)().region;return{timeZone:l(e),locale:n[null!=e?e:(0,i.zj)().region]}}function o(e,s){let t=new Intl.DateTimeFormat("en-CA",{timeZone:s,year:"numeric",month:"2-digit",day:"2-digit"}).formatToParts(e),i=e=>{var s,i;return null!=(i=null==(s=t.find(s=>
1s.type===e))?void 0:s.value)?i:""};return"".concat(i("year"),"-").concat(i("month"),"-").concat(i("day"))}function d(e,s){let[t,i,a]=e.split("-").map(Number);return new Date(Date.UTC(t,i-1,a+s)).toISOString().slice(0,10)}let u=e=>new Intl.DateTimeFormat("en-US",{timeZone:e,hourCycle:"h23",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"}),m=e=>{let s=s=>{var t;let i=Number(null==(t=e.find(e=>e.type===s))?void 0:t.value);return Number.isFinite(i)?i:0},t=s("hour");return{year:s("year"),month:s("month"),day:s("day"),hour:24===t?0:t,minute:s("minute"),second:s("second")}},h=e=>Date.UTC(e.year,e.month-1,e.day,e.hour,e.minute,e.second);function N(e,s){var t;let i=r.exec(e);if(!i)return null;let a=Number(i[1]),n=Number(i[2]),l=Number(i[3]),c=Number(i[4]),o=Date.UTC(a,n-1,l,c,Number(i[5]),Number(null!=(t=i[6])?t:"0")),d=u(s),N=o+(e=>{let s=m(d.formatToParts(new Date(e)));return e-h(s)})(o),g=new Date(N+(o-h(m(d.formatToParts(new Date(N))))));return Number.isNaN(g.getTime())?null:g}function g(e,s,t){let i=e instanceof Date?e:N(e,t);return!i||Number.isNaN(i.getTime())?"":i.toLocaleTimeString(s,{hour:"numeric",minute:"2-digit",hour12:!0,timeZone:t})}}},e=>{var s=s=>e(e.s=s);e.O(0,[636,6593,8792],()=>s(2880)),_N_E=e.O()}]);
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.