@qispace/vue3-player 0.1.30 → 0.1.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/vue-components/src/components/manualSlideShow/VManualSlideShow.vue.d.ts +3 -3
- package/dist/vue-components/src/vue-components.d.ts +2 -2
- package/dist/vue-components/style.css +1 -1
- package/dist/vue-components/vue3-player.js +2669 -2458
- package/dist/vue-components/vue3-player.umd.cjs +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(j,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("axios"),require("@qispace/player-core"),require("three")):typeof define=="function"&&define.amd?define(["exports","vue","axios","@qispace/player-core","three"],e):(j=typeof globalThis<"u"?globalThis:j||self,e(j["vue3-player"]={},j.Vue,j.axios,j.PlayerCore,j.THREE))})(this,function(j,e,ne,ze,We){"use strict";var rr=Object.defineProperty;var lr=(j,e,ne)=>e in j?rr(j,e,{enumerable:!0,configurable:!0,writable:!0,value:ne}):j[e]=ne;var P=(j,e,ne)=>(lr(j,typeof e!="symbol"?e+"":e,ne),ne);function Ae(m){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(m){for(const t in m)if(t!=="default"){const a=Object.getOwnPropertyDescriptor(m,t);Object.defineProperty(o,t,a.get?a:{enumerable:!0,get:()=>m[t]})}}return o.default=m,Object.freeze(o)}const Ge=Ae(ze),ce=Ae(We);class q{static async loadText(o){return new q().loadText(o)}static async loadJson(o){return new q().loadJson(o)}static async loadImage(o){return new q().loadImage(o)}static async loadImageData(o){return new q().loadImageData(o)}async loadText(o){return(await ne.get(o)).data}async loadJson(o){return(await ne.get(o)).data}async loadImage(o){return new Promise((t,a)=>{const n=new Image;n.crossOrigin="anonymous",n.onload=()=>{t(n)},n.onerror=a,n.src=o})}async loadImageData(o){const t=await this.loadImage(o),a=document.createElement("canvas");try{const n=a.getContext("2d");return a.width=t.width,a.height=t.height,n.drawImage(t,0,0),a.toDataURL("image/png")}finally{a.remove()}}}const Qe=e.defineComponent({__name:"VHoverProbe",setup(m,{expose:o}){const t=e.ref(),a=e.computed(()=>window.getComputedStyle(t.value).display==="none");return o({isHoverEnabled:a}),(n,r)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"hoverCheck",ref:t,class:"hover-check"},null,512))}}),R=(m,o)=>{const t=m.__vccOpts||m;for(const[a,n]of o)t[a]=n;return t},le=R(Qe,[["__scopeId","data-v-eb9b348d"]]);function z(m,o){return typeof m=="string"?`${m}${o}`:m(o)}const qe=R(e.defineComponent({__name:"VApartmentChooserRaster",props:{cdnFileResolver:{},viewModel:{},selectedUnitId:{},canGoToUnitCallback:{type:Function,default:()=>!0},sceneData:{default:()=>[]},colorCallback:{type:Function,default:()=>({r:108,g:0,b:108,a:144,s:2})},drawObserver:{}},emits:["selectUnit","goToUnit","hoverOver","hoverOut","pos"],setup(m,{emit:o}){const t=m,a=o,n=e.ref({x:0,y:0,width:0,height:0}),r=e.ref(0),s=e.ref(0),i=e.ref(),u=e.ref(),l=e.ref(),d=e.ref(),c=e.ref(-1),k=e.ref(!1),f=e.ref(),p=e.ref(),g=e.ref({}),V=e.ref("auto"),C=e.ref(new q),h=e.ref({}),A=e.ref(),v=e.ref(),S=e.ref(),y=e.ref(),_=e.ref(),M=e.computed(()=>S.value.isHoverEnabled),E=e.computed(()=>z(t.cdnFileResolver,`/scenedata${t.viewModel.currentScene}.png`)),O=e.computed(()=>E.value in g.value?g.value[E.value]:null),b=e.computed(()=>c.value<0?!1:t.sceneData.find(T=>T.index===c.value)||!1),x=e.computed(()=>({width:r.value+"px",height:s.value+"px",cursor:V.value})),B=e.computed(()=>`hover-${k.value?"over":"out"}-${b.value?typeof b.value=="object"&&"unitId"in b.value?b.value.unitId:b.value:""}`);e.watch(E,()=>{g.value[E.value]||C.value.loadImageData(E.value).then(L=>{g.value={...g.value,[E.value]:L}})},{immediate:!0}),e.watch(O,()=>{O.value&&N()}),e.watch(()=>t.viewModel.currentScene,()=>{se()},{immediate:!0}),e.watch([()=>t.viewModel.isRotating,()=>t.drawObserver,()=>t.selectedUnitId],()=>{se()}),e.watch(b,()=>{se(),b.value?V.value="pointer":V.value="auto"}),e.watch(B,()=>{k.value?a("hoverOver",{hoverUnit:b.value?b.value.unitId:!1,closeHandler:()=>Be()}):a("hoverOut",{hoverUnit:b.value?b.value.unitId:!1,closeHandler:()=>Be()})}),e.watch(n,()=>{a("pos",n.value)}),e.onMounted(()=>{v.value=()=>{clearTimeout(A.value),te(),A.value=setTimeout(()=>{te()},50)},window.addEventListener("resize",v.value),te()}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",v.value);for(const L in g.value)URL.revokeObjectURL(g.value[L])});function N(){i.value=y.value.getContext("2d",{willReadFrequently:!0}),u.value=new Image,u.value.onload=()=>{me(),y.value.addEventListener("mousemove",xe(U,50))},u.value.src=O.value}function U(L){const T=H(L.offsetX,L.offsetY);k.value=T>=0,c.value=T,n.value={x:L.offsetX,y:L.offsetY,width:r.value,height:s.value}}function I(L){const T=H(L.offsetX,L.offsetY);T<0||M&&ae(T)}function D(){if(u.value&&u.value.width){y.value.width=u.value.width,y.value.height=u.value.height,i.value.drawImage(u.value,0,0,u.value.width,u.value.height),d.value=i.value.getImageData(0,0,y.value.width,y.value.height),l.value=i.value.getImageData(0,0,y.value.width,y.value.height);const L=d.value.data;h.value={};for(let T=0;T<L.length;T+=4)h.value[L[T]]=[];for(let T=3;T<L.length;T+=4)L[T]===255&&L[T-3]in h.value&&h.value[L[T-3]].push(T-3)}}function H(L,T){f.value=L,p.value=T;const Y=y.value.offsetWidth/y.value.width,Ve=y.value.offsetHeight/y.value.height,ue=(L/Y).toFixed(),re=(T/Ve).toFixed(),J=Number(re)*(y.value.width*4)+Number(ue)*4,ye=d.value.data[J];return d.value.data[J+3]>0?ye:-1}function Q(){oe().forEach(T=>{if(T.index>=0){const Y=G(T.index);if(Y){const Ve=W(T.index);let ue="idle";!b.value&&t.selectedUnitId&&Ve===t.selectedUnitId?ue="selected":b.value&&c.value===T.index&&(ue="hover");const re=t.colorCallback(T.unitId,ue);if(re)for(let J=0;J<Y.length;J++)l.value.data[Y[J]]=re.r,l.value.data[Y[J]+1]=re.g,l.value.data[Y[J]+2]=re.b,l.value.data[Y[J]+3]=re.a}}})}function G(L){return d.value?h.value[L]:!1}function W(L){const T=t.sceneData.find(Y=>Y.index===L);return T&&T.unitId}function oe(){if(d.value){const L=Object.keys(h.value).map(Y=>parseInt(Y));return t.sceneData.filter(Y=>L.includes(Y.index))}else return[]}function ae(L){const T=W(L);K(T)}function K(L){a("selectUnit",L),L&&t.canGoToUnitCallback(L)&&a("goToUnit",L)}function ee(L=0){if(!l.value)return;const T=l.value.data;for(let Y=3;Y<T.length;Y+=4)T[Y]=L}function te(){if(!_.value)return!1;r.value=_.value.offsetWidth,s.value=_.value.offsetHeight}function me(){D(),se()}function se(){ee(),Q(),i.value&&l.value&&i.value.putImageData(l.value,0,0)}function Be(){k.value=!1}const Ce=e.ref(!1);function xe(L,T){return Ce.value=!0,function(...Y){Ce.value&&(Ce.value=!1,L.apply(this,Y),setTimeout(()=>Ce.value=!0,T))}}return(L,T)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"container",ref:_,id:"canvas"},[e.withDirectives(e.createElementVNode("canvas",{id:"canvas-mask",ref_key:"canvas",ref:y,style:e.normalizeStyle(x.value),onClick:I},null,4),[[e.vShow,!L.viewModel.isRotating]]),e.createVNode(le,{ref_key:"hoverProbe",ref:S},null,512)],512))}}),[["__scopeId","data-v-27d7323f"]]),Ze=["viewBox"],Je=["innerHTML","onMouseenter","onMouseleave","onClick"],Xe=R(e.defineComponent({__name:"VApartmentChooserSvg",props:{cdnFileResolver:{},viewModel:{},selectedUnitId:{},canGoToUnitCallback:{type:Function,default:()=>!0},sceneData:{default:()=>[]},colorCallback:{type:Function,default:()=>({r:108,g:0,b:108,a:144,s:2})},drawObserver:{}},emits:["selectUnit","goToUnit","hoverOver","hoverOut","pos"],setup(m,{emit:o}){const t=m,a=o,n=e.ref({x:0,y:0,width:0,height:0}),r=e.ref(-1),s=e.ref({}),i=e.ref(null),u=e.ref(new q),l=e.ref(),d=e.ref(),c=e.computed(()=>d.value.isHoverEnabled);e.watch(()=>t.viewModel.currentScene,()=>{t.viewModel.currentScene in s.value&&(i.value=s.value[t.viewModel.currentScene])},{immediate:!0}),e.watch(s,()=>{t.viewModel.currentScene in s.value&&(i.value=s.value[t.viewModel.currentScene])},{immediate:!0}),e.watch(n,()=>{a("pos",n.value)}),e.watch(r,(v,S)=>{if(v>=0){const y=f(v);a("hoverOver",{hoverUnit:y,closeHandler:()=>{r.value=-1}})}else{const y=f(S);a("hoverOut",{hoverUnit:y,closeHandler:()=>{r.value=-1}})}}),e.onMounted(()=>{for(let v=1;v<=4;v++){const S=z(t.cdnFileResolver,`/scenedata${v}.svg`),y={markup:"",viewBox:"",svgObjects:[]};u.value.loadJson(S).then(_=>{y.markup=_;const E=new DOMParser().parseFromString(_,"image/svg+xml").getElementsByTagName("svg")[0];y.viewBox=E.getAttribute("viewBox"),y.svgObjects=Array.from(E.querySelectorAll("*[data-index]")).map(O=>({index:parseInt(O.getAttribute("data-index")),svg:O.innerHTML})),s.value={...s.value,[v]:y}})}l.value.addEventListener("mousemove",A(k,50))});function k(v){n.value={x:v.offsetX,y:v.offsetY,width:l.value.offsetWidth,height:l.value.offsetHeight}}function f(v){var S;return(S=t.sceneData.find(y=>y.index===(typeof v=="string"?parseInt(v):v)))==null?void 0:S.unitId}function p(v){c.value&&(r.value=v)}function g(v){c.value&&(r.value=-1)}function V(v){const S=f(v);a("selectUnit",S),c.value&&S&&t.canGoToUnitCallback(S)?a("goToUnit",S):r.value=v}function C(v){const S=f(v);let y="idle";r.value<0&&t.selectedUnitId&&S===t.selectedUnitId?y="selected":r.value>=0&&r.value===v&&(y="hover");const _=t.colorCallback(S,y);if(_){const{r:M,g:E,b:O,a:b,s:x}=_;return{strokeWidth:x!==void 0?x:2,stroke:`rgb(${M}, ${E}, ${O})`,strokeOpacity:1,fill:`rgb(${M}, ${E}, ${O})`,fillOpacity:b/255,cursor:`${t.canGoToUnitCallback(S)?"cursor":"default"} !important`}}else return{strokeWidth:0,stroke:"white",strokeOpacity:0,fill:"white",fillOpacity:0,cursor:"default !important"}}const h=e.ref(!1);function A(v,S){return h.value=!0,function(...y){h.value&&(h.value=!1,v.apply(this,y),setTimeout(()=>h.value=!0,S))}}return(v,S)=>(e.openBlock(),e.createElementBlock("div",{id:"container",ref_key:"container",ref:l},[e.withDirectives(e.createElementVNode("div",{class:"svg-container",style:e.normalizeStyle({opacity:!i.value||!i.value.svgObjects?0:1})},[i.value&&i.value.svgObjects?(e.openBlock(),e.createElementBlock("svg",{key:0,viewBox:i.value.viewBox},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value.svgObjects,({index:y,svg:_})=>(e.openBlock(),e.createElementBlock("g",{key:y,innerHTML:_,style:e.normalizeStyle(C(y)),onMouseenter:M=>p(y),onMouseleave:M=>g(),onClick:M=>V(y)},null,44,Je))),128))],8,Ze)):e.createCommentVNode("",!0)],4),[[e.vShow,!v.viewModel.isRotating]]),e.createVNode(le,{ref_key:"hoverProbe",ref:d},null,512)],512))}}),[["__scopeId","data-v-e6c054c7"]]),X=Symbol(),Ke={key:0,class:"text-success d-none d-md-flex"},et={class:"text-success"},tt=R(e.defineComponent({__name:"VApartmentChooserNavigation",props:{canGoToUnitCallback:{type:Function,default:()=>!0},unitRenderer:{},selectedUnitId:{},prevUnitId:{},nextUnitId:{},viewModel:{}},emits:["prevUnit","nextUnit","goToUnit"],setup(m,{emit:o}){const t=m,a=e.computed(()=>t.selectedUnitId),n=e.computed(()=>t.nextUnitId),r=e.computed(()=>t.prevUnitId),s=o,i=e.inject(X);e.onMounted(()=>{window.addEventListener("keydown",u)}),e.onBeforeUnmount(()=>{window.removeEventListener("keydown",u)});function u(l){l.keyCode===37?t.prevUnitId&&s("prevUnit"):l.keyCode===39&&t.nextUnitId&&s("nextUnit")}return(l,d)=>{const c=e.resolveComponent("v-btn");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(c,{elevation:"1",icon:"mdi-rotate-right",class:"black darken-1",onClick:d[0]||(d[0]=k=>l.viewModel.rotateClockwise())}),e.createVNode(c,{elevation:"1",plain:"",icon:"mdi-chevron-left",class:"mr-sm-4 ml-sm-8 mr-3 ml-3 black darken-1",disabled:!r.value,onClick:d[1]||(d[1]=k=>s("prevUnit"))},null,8,["disabled"]),e.createVNode(c,{color:"darken-2",elevation:"1",rounded:"",plain:"",disabled:!a.value||!l.canGoToUnitCallback(a.value),onClick:d[2]||(d[2]=k=>s("goToUnit",a.value))},{default:e.withCtx(()=>[a.value&&l.canGoToUnitCallback(a.value)?(e.openBlock(),e.createElementBlock("span",Ke,e.toDisplayString(e.unref(i).getLabel("seeApartment"))+" ",1)):e.createCommentVNode("",!0),e.createElementVNode("span",et,e.toDisplayString(a.value?t.unitRenderer(a.value):"-"),1)]),_:1},8,["disabled"]),e.createVNode(c,{elevation:"1",plain:"",icon:"mdi-chevron-right",class:"mr-sm-8 ml-sm-4 mr-3 ml-3 black darken-1",disabled:!n.value,onClick:d[3]||(d[3]=k=>s("nextUnit"))},null,8,["disabled"]),e.createVNode(c,{elevation:"1",plain:"",icon:"mdi-rotate-left",class:"black darken-1",onClick:d[4]||(d[4]=k=>l.viewModel.rotateCounterClockwise())})])}}}),[["__scopeId","data-v-44ed308e"]]);class Se{constructor(o){P(this,"_numParts");P(this,"_loadedCount");P(this,"_isError");P(this,"_finishedAction");P(this,"_errorAction");P(this,"_loadProgressAction");this._numParts=o,this._loadedCount=0,this._isError=!1,this._finishedAction=()=>{},this._errorAction=()=>{},this._loadProgressAction=()=>{}}onLoadFinished(o){return this._finishedAction=o,this}onLoadError(o){return this._errorAction=o,this}onLoadProgress(o){return this._loadProgressAction=o,this}partLoaded(){this.isFinished||(this._loadedCount++,this._loadProgressAction(this.percentLoaded),this.isFinished&&this._finishedAction())}errorDetected(){this._isError||(this._isError=!0,this._errorAction())}get isFinished(){return this._loadedCount>=this._numParts}get isError(){return this._isError}get percentLoaded(){return Math.round(this._loadedCount*100/this._numParts)}}class Ie{constructor(o,t,a,n){P(this,"_rotator");P(this,"_direction");P(this,"_frameIndex");P(this,"_sceneCount");this._rotator=o,this._direction=t,this._frameIndex=a,this._sceneCount=n}get atEnd(){return this._sceneCount===0}get frameIndex(){return this._frameIndex}nextFrame(){const o=this._rotator.clampFrameIndex(this._frameIndex+this._direction),t=this._rotator.isCardinalFrame(o)?this._sceneCount-1:this._sceneCount;return new Ie(this._rotator,this._direction,o,t)}}class ot{constructor(o,t){P(this,"_cardinalFrames");P(this,"_totalFrameCount");this._cardinalFrames=o,this._totalFrameCount=t}start(o,t,a){const n=this.startFrameIndexForScene(t);return new Ie(this,o,n,a)}isCardinalFrame(o){return this._cardinalFrames.includes(o)}clampFrameIndex(o){return(this._totalFrameCount+o)%this._totalFrameCount}startFrameIndexForScene(o){return this._cardinalFrames[o]}}const nt={key:0,class:"fill-parent d-flex justify-center align-center blue-grey lighten-5"},at={key:1,class:"frame-container"},rt={key:0,class:"frame-image"},lt=["srcset"],it=["src"],st={key:2,id:"image-stack",class:"frame-container"},ct=["alt"],dt=["srcset"],mt=["src"],De=64,_e=4,ut=120,pt=R(e.defineComponent({__name:"VApartmentChooserRotator",props:{viewModel:{},build:{default:""},cdnFileResolver:{},cardinalFrames:{}},emits:["loaded","error","progress"],setup(m,{emit:o}){const t=m,a=o,n=f(),r=e.ref(new Se(n.length).onLoadFinished(()=>a("loaded")).onLoadProgress(C=>a("progress",C)).onLoadError(()=>a("error"))),s=e.ref(new ot(t.cardinalFrames,De)),i=e.ref(n),u=e.ref(!1),l=e.computed(()=>i.value.find(C=>C.show));e.watch(()=>t.viewModel.currentScene,(C,h)=>{const A=V(h,C),v=g(h,C);d(h,A,v)}),e.onMounted(()=>{k()});function d(C,h,A){t.viewModel.isRotating||(t.viewModel.isRotating=!0,c(s.value.start(h,C%_e,A)))}function c(C){setTimeout(()=>{i.value[C.frameIndex].show=!1;const h=C.nextFrame();i.value[h.frameIndex].show=!0,h.atEnd?k():window.requestAnimationFrame(()=>c(h))},1e3/ut)}function k(){const C=s.value.startFrameIndexForScene(t.viewModel.currentScene%_e);C in i.value&&(i.value[C].show=!0),t.viewModel.isRotating=!1}function f(){const C=[];for(let h=0;h<De;h++){const{sourceSet:A,defaultPath:v}=p(h);C.push({index:h,sourceSet:A,defaultPath:v,show:!1})}return C}function p(C){const h=("0000"+(C+1)).slice(-4),A=t.build?`?v=${t.build}`:"",v=[`${z(t.cdnFileResolver,`/480/${h}.jpg${A}`)} 480w`,`${z(t.cdnFileResolver,`/960/${h}.jpg${A}`)} 960w`,`${z(t.cdnFileResolver,`/1280/${h}.jpg${A}`)} 1280w`].join(","),S=z(t.cdnFileResolver,`/480/${h}.jpg${A}`);return{sourceSet:v,defaultPath:S}}function g(C,h){const A=_e/2,v=Math.abs(C-h);return v>A?_e-v:v}function V(C,h){if(C===h)return 0;const v=Math.abs(C-h)<_e/2;return v&&C<h||!v&&C>h?1:-1}return(C,h)=>{const A=e.resolveComponent("v-icon");return e.openBlock(),e.createElementBlock("div",null,[r.value.isError?(e.openBlock(),e.createElementBlock("div",nt,[e.createVNode(A,{"x-large":""},{default:e.withCtx(()=>[e.createTextVNode("mdi-alert-circle-outline")]),_:1})])):u.value?(e.openBlock(),e.createElementBlock("div",st,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,v=>(e.openBlock(),e.createElementBlock("picture",{key:v.index,alt:v.index,class:e.normalizeClass({"frame-image":!0,show:v.show})},[e.createElementVNode("source",{srcset:v.sourceSet,type:"image/jpeg"},null,8,dt),e.createElementVNode("img",{src:v.defaultPath,alt:"Building image",onLoad:h[2]||(h[2]=S=>r.value.partLoaded()),onError:h[3]||(h[3]=S=>r.value.errorDetected())},null,40,mt)],10,ct))),128))])):(e.openBlock(),e.createElementBlock("div",at,[l.value?(e.openBlock(),e.createElementBlock("picture",rt,[e.createElementVNode("source",{srcset:l.value.sourceSet,type:"image/jpeg"},null,8,lt),e.createElementVNode("img",{src:l.value.defaultPath,onLoad:h[0]||(h[0]=v=>u.value=!0),onError:h[1]||(h[1]=v=>r.value.errorDetected())},null,40,it)])):e.createCommentVNode("",!0)]))])}}}),[["__scopeId","data-v-0c291cb9"]]),pe=R(e.defineComponent({__name:"VFloatingCard",props:{pos:{},isHoverable:{type:Boolean}},emits:["outside"],setup(m,{emit:o}){const t=m,a=o,n=e.computed(()=>{let r,s,i,u;return t.pos.x<=t.pos.width/2?(r="-100%",i="-8px"):(r="0%",i="8px"),t.pos.y<=t.pos.height/2?(s="-100%",u="-8px"):(s="0%",u="8px"),`translate(${r}, ${s}) translate(${i}, ${u})`});return(r,s)=>{const i=e.resolveComponent("v-dialog"),u=e.resolveComponent("v-fade-transition");return e.openBlock(),e.createBlock(u,{origin:`top left ${r.pos.x} ${r.pos.y}`},{default:e.withCtx(()=>[r.isHoverable?(e.openBlock(),e.createElementBlock("div",{key:0,class:"floating-card",style:e.normalizeStyle({left:`${r.pos.x}px`,top:`${r.pos.y}px`,pointerEvents:"none",transform:n.value})},[e.renderSlot(r.$slots,"default",{isHoverable:r.isHoverable},void 0,!0)],4)):(e.openBlock(),e.createBlock(i,{key:1,value:!0,width:"auto","onClick:outside":s[0]||(s[0]=l=>a("outside",l))},{default:e.withCtx(()=>[e.renderSlot(r.$slots,"default",{isHoverable:r.isHoverable},void 0,!0)]),_:3}))]),_:3},8,["origin"])}}}),[["__scopeId","data-v-7d5e6067"]]),fe=R(e.defineComponent({__name:"VZoomBox",props:{desktop:{type:Boolean,default:!0},mobile:{type:Boolean,default:!0},maxScale:{default:10},consumeMouseClickWhenMoved:{type:Boolean,default:!0},consumeMouseUpWhenMoved:{type:Boolean,default:!0},position:{default:"absolute"}},emits:["update"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(100),r=e.ref(0),s=e.ref(0),i=e.ref(!1),u=e.ref(!1),l=e.ref(void 0),d=e.ref(!1),c=e.ref(),k=e.computed(()=>`translateX(${r.value}px) translateY(${s.value}px) scale(${f.value})`),f=e.computed(()=>n.value/100),p=e.computed(()=>t.maxScale*100);e.watch([f,r,s],()=>{U()}),e.watch(()=>t.desktop,()=>{t.desktop?g():C()}),e.watch(()=>t.mobile,()=>{t.mobile?V():h()}),e.onMounted(()=>{t.desktop&&g(),t.mobile&&V()}),e.onBeforeUnmount(()=>{t.desktop&&C(),t.mobile&&h()});function g(){c.value.addEventListener("wheel",A,{capture:!0}),c.value.addEventListener("mousedown",v,{capture:!0}),c.value.addEventListener("mousemove",S,{capture:!0}),window.addEventListener("mouseup",y,{capture:!0}),window.addEventListener("click",_,{capture:!0})}function V(){c.value.addEventListener("touchstart",M,{capture:!0}),c.value.addEventListener("touchmove",E,{capture:!0}),window.addEventListener("touchend",O,{capture:!0}),window.addEventListener("touchcancel",O,{capture:!0})}function C(){c.value.removeEventListener("wheel",A,{capture:!0}),c.value.removeEventListener("mousedown",v,{capture:!0}),c.value.removeEventListener("mousemove",S,{capture:!0}),window.removeEventListener("mouseup",y,{capture:!0}),window.removeEventListener("click",_,{capture:!0})}function h(){c.value.removeEventListener("touchstart",M,{capture:!0}),c.value.removeEventListener("touchmove",E,{capture:!0}),window.removeEventListener("touchend",O,{capture:!0}),window.removeEventListener("touchcancel",O,{capture:!0})}function A(I){const{x:D,y:H}=b(I);N(-I.deltaY/10,D,H),I.preventDefault()}function v(I){i.value=!0,d.value=!1,l.value=I}function S(I){if(i.value){const{x:D,y:H}=b(I),{x:Q,y:G}=b(l.value),W={x:D-Q,y:H-G};x(W.x),B(W.y),d.value=!0,l.value=I}}function y(I){i.value&&d.value&&t.consumeMouseUpWhenMoved&&(I.preventDefault(),I.stopImmediatePropagation())}function _(I){i.value&&(d.value&&t.consumeMouseClickWhenMoved&&(I.preventDefault(),I.stopImmediatePropagation()),i.value=!1)}function M(I){i.value=I.touches.length===1,u.value=I.touches.length===2,l.value=I}function E(I){if(i.value){const{x:D,y:H}=b(I.touches[0]),{x:Q,y:G}=b(l.value.touches[0]),W={x:D-Q,y:H-G};x(W.x),B(W.y)}else if(u.value&&I.touches.length===2){const{x:D,y:H}=b(I.touches[0]),{x:Q,y:G}=b(l.value.touches[0]),{x:W,y:oe}=b(I.touches[1]),{x:ae,y:K}=b(l.value.touches[1]),ee=Math.hypot(Q-ae,G-K),te=Math.hypot(D-W,H-oe),me=(W+D)/2,se=(oe+H)/2;N(te-ee,me,se)}l.value=I}function O(){i.value=!1,u.value=!1}function b(I){const{left:D,top:H}=c.value.getBoundingClientRect();return{x:I.clientX-D,y:I.clientY-H}}function x(I){const D=c.value.clientWidth,H=D*f.value;r.value=Math.max(Math.min(0,r.value+I),-(H-D))}function B(I){const D=c.value.clientHeight,H=D*f.value;s.value=Math.max(Math.min(0,s.value+I),-(H-D))}function N(I,D,H){const Q=c.value.clientWidth,G=c.value.clientHeight,W=Q*f.value,oe=G*f.value;n.value=Math.min(Math.max(100,n.value+I),p.value);const ae=Q*f.value,K=G*f.value,ee=ae-W,te=K-oe;r.value-=D/Q*ee,s.value-=H/G*te,x(0),B(0)}function U(){a("update",{scale:f.value,x:r.value,y:s.value,resolve:(I,D)=>{const H=c.value.clientWidth,Q=c.value.clientHeight,G=r.value/-f.value,W=s.value/-f.value,oe=G+H/f.value,ae=W+Q/f.value,K=I/H*(oe-G)+G,ee=D/Q*(ae-W)+W;return{x:K,y:ee}}})}return(I,D)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"box",ref:c,class:"zoom-box-container",style:e.normalizeStyle({position:t.position})},[e.createElementVNode("div",{style:e.normalizeStyle({"transform-origin":"top left",transform:k.value}),class:"zoom-box"},[e.renderSlot(I.$slots,"default",{},void 0,!0)],4)],4))}}),[["__scopeId","data-v-e5638bde"]]),Ne=4;function Le(m){return m<Ne?m+1:1}function ft(m){return m>1?m-1:Ne}class ht{constructor(o){P(this,"_state");this._state={isRotating:!1,currentScene:o}}get isRotating(){return this._state.isRotating}set isRotating(o){this._state.isRotating=o}unlessRotatingDo(o){this.isRotating||o()}get currentScene(){return this._state.currentScene}set currentScene(o){this._state.currentScene=o}rotateCounterClockwise(){this.unlessRotatingDo(()=>{this.currentScene=Le(this.currentScene)})}rotateClockwise(){this.unlessRotatingDo(()=>{this.currentScene=ft(this.currentScene)})}}const gt={interior:"Interiør",seeASelectionOfTheOptionsInTheProject:"Se et utvalg av tilvalgsmulighetene i prosjektet.",floorPlan:"Planløsning",allIllustrationsAreIndicativeDeviationsMayOccur:{nb:"Alle illustrasjoner er veiledende. Avvik kan forekomme.",en:"All illustrations are indicative. Discrepancies may exist."},readMoreHere:"Les mer her",iUnderstand:{nb:"Jeg forstår",en:"I understand"},share:"Share",shareToFacebook:"Share to Facebook",shareToLinkedin:"Share to Linkedin",shareToTwitter:"Share to Twitter",shareViaEmail:"Share via Email",copyLink:"Copy link",virtualView:"Virtuell Visning",slideShow:"Slide Show",room:"Room",floor:"Floor",seeApartments:"See apartments",seeApartment:"See apartment",clickAndDragToLookAround:{en:"Click and drag to look around",nb:"Klikk og dra for å se deg rundt"},clickOnTheCirclesToMoveAround:{en:"Click on the circles to move around",nb:"Klikk på sirkelene for å gå rundt"},useTheMouseWheelToZoom:{en:"Use the mouse wheel to zoom",nb:"Bruk mushjulet for å zoome"},youCanAlsoUseTheArrowKeysToMoveAround:{en:"You can also use the arrow keys to move around",nb:"Du kan også bruke pilene på tastaturet for å gå rundt"},tapAndDragToLookAround:{en:"Tap and drag to look around",nb:"Trykk og dra for å se deg rundt"},tapOnTheCirclesToMoveAround:{en:"Tap on the circles to move around",nb:"Trykk på sirkelene for å gå rundt"},useTwoFingersToZoom:{en:"Use two fingers to zoom",nb:"Bruk to fingre for å zoome"},dontShowAgain:{en:"Don't Show Again",nb:"Ikke vis igjen"}};class ie{constructor({labels:o,language:t}={labels:null,language:null}){P(this,"_labels");P(this,"_language");this._labels={...gt,...o||{}},this._language=t||"en"}getLabel(o){return o in this._labels?this.get(this._labels[o]):o}get(o){if(typeof o=="string")return o;if(this._language in o&&o[this._language])return o[this._language];for(const t in o)if(o[t])return o[t];return""}}const vt={key:0},kt={class:"interactive-viewer"},Ct={class:"fill-parent"},yt={key:0},wt={key:1,class:"navigation"},_t={key:2},bt=4,Fe=R(e.defineComponent({__name:"VApartmentChooser",props:{i18nConfig:{},showCards:{type:Boolean,default:!0},build:{default:""},cdnFileResolver:{},colorCallback:{type:Function,default:()=>({r:108,g:0,b:108,a:144,s:2})},canGoToUnitCallback:{type:Function,default:()=>!0},unitRenderer:{type:Function,default:m=>m},apartmentChooserData:{},selectedUnitId:{},nextUnitId:{},prevUnitId:{},drawObserver:{default:null},interactiveDesktop:{type:Boolean,default:!0},interactiveMobile:{type:Boolean,default:!0},useSvg:{type:Boolean,default:!1}},emits:["selectUnit","goToUnit","navUnit","hoverOverUnit","hoverOutUnit","initialized"],setup(m,{emit:o}){const t=[0,16,32,48],a=m,n=o;e.provide(X,a.i18nConfig?new ie(a.i18nConfig):new ie);const r=e.reactive({isReady:!1,isError:!1}),s=e.ref(),i=e.ref(),u=e.ref(),l=e.ref(),d=e.ref({x:0,y:0,width:0,height:0}),c=e.ref(),k=e.ref(),f=e.ref(),p=e.computed(()=>f.value.isHoverEnabled),g=e.computed(()=>a.useSvg?Xe:qe),V=e.computed(()=>a.selectedUnitId),C=e.computed(()=>a.nextUnitId),h=e.computed(()=>a.prevUnitId);e.watchEffect(()=>{if(V.value&&l.value){const y=s.value[V.value];y&&(l.value.currentScene=y)}}),e.onMounted(async()=>{const y=a.apartmentChooserData&&a.apartmentChooserData.startScene!==void 0?a.apartmentChooserData.startScene:bt;u.value=a.apartmentChooserData&&a.apartmentChooserData.scenes!==void 0?a.apartmentChooserData.scenes:t,i.value=a.apartmentChooserData&&a.apartmentChooserData.sceneData!==void 0?a.apartmentChooserData.sceneData.map(E=>({unitId:E.apartmentID,index:E.index})):[],s.value=a.apartmentChooserData&&a.apartmentChooserData.sceneData!==void 0?a.apartmentChooserData.sceneData.map(E=>{const O=E.bestScene===0?4:E.bestScene;return{unitId:E.apartmentID,scene:O}}).reduce((E,O)=>({...E,[O.unitId]:O.scene}),{}):{};const _=(E,O="unitId")=>{let b=y,x=[];for(let B=0;B<Ne;B++)x.push(b),b=Le(b);return E.sort((B,N)=>{const U=x.findIndex(D=>D===s.value[B[O]]),I=x.findIndex(D=>D===s.value[N[O]]);return U<I?-1:U>I?1:0}),E},M=E=>{l.value=new ht(E)};n("initialized",{scene:y,scenes:u.value,sceneData:i.value,scenesByApartment:s.value,unitsSceneSort:_,initialize:M})});function A(y){d.value=y}function v(y){k.value=y.hoverUnit,c.value=y.closeHandler,n("hoverOverUnit",y.hoverUnit)}function S(y){k.value=null,c.value=y.closeHandler,n("hoverOutUnit",y.hoverUnit)}return(y,_)=>{const M=e.resolveComponent("v-progress-linear");return l.value?(e.openBlock(),e.createElementBlock("div",vt,[e.createElementVNode("div",kt,[e.createElementVNode("div",Ct,[e.createVNode(fe,{desktop:r.isReady&&y.interactiveDesktop,mobile:r.isReady&&y.interactiveMobile},{default:e.withCtx(()=>[e.createVNode(pt,{"cdn-file-resolver":y.cdnFileResolver,"view-model":l.value,"cardinal-frames":u.value,build:y.build,onProgress:_[0]||(_[0]=E=>r.progress=E),onLoaded:_[1]||(_[1]=E=>r.isReady=!0),onError:_[2]||(_[2]=E=>r.isError=!0)},null,8,["cdn-file-resolver","view-model","cardinal-frames","build"]),r.isReady?(e.openBlock(),e.createElementBlock("div",yt,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(g.value),{"cdn-file-resolver":a.cdnFileResolver,"view-model":l.value,"selected-unit-id":V.value,"scene-data":i.value,"color-callback":a.colorCallback,"can-go-to-unit-callback":a.canGoToUnitCallback,"draw-observer":a.drawObserver,onSelectUnit:_[3]||(_[3]=E=>n("selectUnit",E)),onGoToUnit:_[4]||(_[4]=E=>n("goToUnit",E)),onHoverOver:v,onHoverOut:S,onPos:A},{default:e.withCtx(E=>[e.renderSlot(y.$slots,"default",e.normalizeProps(e.guardReactiveProps(E)),void 0,!0)]),_:3},40,["cdn-file-resolver","view-model","selected-unit-id","scene-data","color-callback","can-go-to-unit-callback","draw-observer"]))])):e.createCommentVNode("",!0)]),_:3},8,["desktop","mobile"]),k.value&&y.showCards?(e.openBlock(),e.createBlock(pe,{key:0,"is-hoverable":p.value,pos:d.value,onOutside:c.value},{default:e.withCtx(()=>[e.renderSlot(y.$slots,"default",{unit:k.value,canGoToUnit:y.canGoToUnitCallback(k.value),goToUnit:()=>y.canGoToUnitCallback(k.value)&&n("goToUnit",k.value),pos:d.value,isHoverable:p.value,close:c.value},void 0,!0)]),_:3},8,["is-hoverable","pos","onOutside"])):e.createCommentVNode("",!0),r.isReady?(e.openBlock(),e.createElementBlock("div",wt,[e.createVNode(tt,{"can-go-to-unit-callback":a.canGoToUnitCallback,"unit-renderer":a.unitRenderer,"selected-unit-id":V.value,"prev-unit-id":h.value,"next-unit-id":C.value,"view-model":l.value,onGoToUnit:_[5]||(_[5]=E=>n("goToUnit",E)),onPrevUnit:_[6]||(_[6]=E=>n("navUnit",h.value)),onNextUnit:_[7]||(_[7]=E=>n("navUnit",C.value))},null,8,["can-go-to-unit-callback","unit-renderer","selected-unit-id","prev-unit-id","next-unit-id","view-model"])])):r.isError?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",_t,[e.createVNode(M,{indeterminate:!r.progress,modelValue:r.progress,"onUpdate:modelValue":_[8]||(_[8]=E=>r.progress=E)},null,8,["indeterminate","modelValue"])]))])]),e.createVNode(le,{ref_key:"hoverProbe",ref:f},null,512)])):e.createCommentVNode("",!0)}}}),[["__scopeId","data-v-528c8f5b"]]),Vt=["src"],Et=R(e.defineComponent({__name:"VApartmentChooserV5CameraDayTimeSample",props:{timeSampleData:{},cdnFileResolver:{type:[String,Function]},currentTime:{}},setup(m){const o=m,t=e.computed(()=>z(o.cdnFileResolver,o.timeSampleData.filename));return(a,n)=>e.withDirectives((e.openBlock(),e.createElementBlock("img",{key:t.value,src:t.value,width:"100%"},null,8,Vt)),[[e.vShow,a.timeSampleData===a.currentTime]])}}),[["__scopeId","data-v-189d0505"]]),Bt=e.defineComponent({__name:"VApartmentChooserV5CameraDay",props:{dayData:{},cdnFileResolver:{type:[String,Function]},currentTime:{}},setup(m){const o=m;return(t,a)=>(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.dayData.timeSamples,n=>(e.openBlock(),e.createBlock(Et,{"time-sample-data":n,"cdn-file-resolver":o.cdnFileResolver,"current-time":t.currentTime},null,8,["time-sample-data","cdn-file-resolver","current-time"]))),256))}}),xt=e.defineComponent({__name:"VApartmentChooserV5Camera",props:{cameraData:{},cdnFileResolver:{type:[String,Function]},currentTime:{}},setup(m){const o=m;return(t,a)=>(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.cameraData.sunsimDayOfYear,n=>(e.openBlock(),e.createBlock(Bt,{"day-data":n,"cdn-file-resolver":o.cdnFileResolver,"current-time":o.currentTime},null,8,["day-data","cdn-file-resolver","current-time"]))),256))}}),St=["src"],It=R(e.defineComponent({__name:"VApartmentChooserV5Transition",props:{transitionData:{},cdnFileResolver:{type:[String,Function]},currentTransition:{}},emits:["goToBuilding","hoverOverBuilding","hoverOutBuilding"],setup(m,{emit:o}){const t=m,a=e.computed(()=>z(t.cdnFileResolver,t.transitionData.filename));return(n,r)=>e.withDirectives((e.openBlock(),e.createElementBlock("img",{key:a.value,src:a.value,class:"position-absolute top-left w-100 h-100"},null,8,St)),[[e.vShow,n.transitionData===n.currentTransition]])}}),[["__scopeId","data-v-10ab7bee"]]);function Me(m){return!("filename"in m)}function Te(m){return"filename"in m}const Nt=e.defineComponent({__name:"VApartmentChooserV5UiCamera",props:{apartmentChooserData:{},currentCamera:{},disabled:{type:Boolean}},emits:["onCameraChange"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(t.currentCamera.overlayFilename);e.watch(()=>t.currentCamera.overlayFilename,()=>{n.value=t.currentCamera.overlayFilename});const r=e.computed(()=>t.apartmentChooserData?t.apartmentChooserData.cameras.filter(Me):[]);return e.watch(n,()=>{a("onCameraChange",r.value.find(s=>s.overlayFilename===n.value))}),(s,i)=>{const u=e.resolveComponent("v-select");return e.openBlock(),e.createBlock(u,{modelValue:n.value,"onUpdate:modelValue":i[0]||(i[0]=l=>n.value=l),items:r.value,disabled:!!t.disabled,"item-title":"cameraName","item-value":"overlayFilename",variant:"solo",density:"compact","hide-details":""},null,8,["modelValue","items","disabled"])}}}),At=e.defineComponent({__name:"VApartmentChooserV5UiDay",props:{cameraData:{},currentDay:{},disabled:{type:Boolean}},emits:["onDayChange"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(t.currentDay.dayOfYear);e.watch(()=>t.currentDay.dayOfYear,()=>{n.value=t.currentDay.dayOfYear}),e.watch(n,()=>{a("onDayChange",t.cameraData.sunsimDayOfYear.find(s=>s.dayOfYear===n.value))});function r(s){const i=new Date(0);return i.setUTCDate(s),i.toLocaleString("en-no",{month:"short",day:"numeric"})}return(s,i)=>{const u=e.resolveComponent("v-list-item"),l=e.resolveComponent("v-select");return e.openBlock(),e.createBlock(l,{modelValue:n.value,"onUpdate:modelValue":i[0]||(i[0]=d=>n.value=d),items:t.cameraData.sunsimDayOfYear,disabled:!!t.disabled,"item-title":"dayOfYear","item-value":"dayOfYear",variant:"solo",density:"compact","hide-details":""},{item:e.withCtx(({props:d})=>[e.createVNode(u,e.mergeProps(d,{title:r(d.title)}),null,16,["title"])]),selection:e.withCtx(({item:d})=>[e.createTextVNode(e.toDisplayString(r(d.title)),1)]),_:1},8,["modelValue","items","disabled"])}}}),Dt={key:0,class:"py-2"},Lt={class:"small"},Ft={class:"small"},Mt=R(e.defineComponent({__name:"VApartmentChooserV5UiTimeSample",props:{dayData:{},currentTime:{},disabled:{type:Boolean}},emits:["onTimeChange"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(t.currentTime.timeInHours),r=e.ref();e.watch(()=>t.currentTime.timeInHours,()=>{n.value=t.currentTime.timeInHours}),e.watch(n,()=>{a("onTimeChange",t.dayData.timeSamples.find(u=>u.timeInHours===n.value))});function s(u){const l=u*60,d=l/60,c=l%60;return`${d.toString().padStart(2,"0")}:${c.toString().padStart(2,"0")}`}function i(){r.value?(clearInterval(r.value),r.value=void 0):(t.dayData.timeSamples.findIndex(l=>l.timeInHours===n.value)===t.dayData.timeSamples.length-1&&(n.value=t.dayData.timeSamples[0].timeInHours),r.value=setInterval(()=>{const l=t.dayData.timeSamples.findIndex(d=>d.timeInHours===n.value);l<t.dayData.timeSamples.length-1?n.value=t.dayData.timeSamples[l+1].timeInHours:(clearInterval(r.value),r.value=void 0)},200))}return(u,l)=>{const d=e.resolveComponent("v-icon"),c=e.resolveComponent("v-btn"),k=e.resolveComponent("v-slider"),f=e.resolveComponent("v-field");return e.openBlock(),e.createBlock(f,{variant:"solo"},{default:e.withCtx(()=>[u.dayData.startTime===u.dayData.endTime?(e.openBlock(),e.createElementBlock("div",Dt,[e.createVNode(d,{style:{color:"#ffab02","vertical-align":"baseline","font-size":"20px"},class:"py-2 ml-2 mr-2 icon"},{default:e.withCtx(()=>[e.createTextVNode(" mdi-white-balance-sunny ")]),_:1}),e.createTextVNode(" "+e.toDisplayString(s(n.value)),1)])):(e.openBlock(),e.createBlock(k,{key:1,class:"pa-1",modelValue:n.value,"onUpdate:modelValue":l[0]||(l[0]=p=>n.value=p),min:u.dayData.startTime,max:u.dayData.endTime,step:u.dayData.interval,disabled:!!t.disabled,"hide-details":""},{prepend:e.withCtx(()=>[e.createVNode(c,{icon:r.value?"mdi-stop":"mdi-play",size:"x-small",variant:"flat",onClick:i},null,8,["icon"]),e.createTextVNode(" "),e.createElementVNode("span",Lt,e.toDisplayString(s(u.dayData.startTime)),1)]),append:e.withCtx(()=>[e.createElementVNode("span",Ft,e.toDisplayString(s(u.dayData.endTime)),1),e.createTextVNode(" "),e.createVNode(d,{style:{color:"#ffab02","vertical-align":"baseline","font-size":"20px"},class:"ml-2 mr-2 icon"},{default:e.withCtx(()=>[e.createTextVNode(" mdi-white-balance-sunny ")]),_:1}),e.createTextVNode(" "+e.toDisplayString(s(n.value)),1)]),_:1},8,["modelValue","min","max","step","disabled"]))]),_:1})}}}),[["__scopeId","data-v-cb62dcc2"]]),Tt=e.defineComponent({__name:"VApartmentChooserV5UiRotator",props:{apartmentChooserData:{},currentScene:{},selectedId:{},renderDisplay:{type:Function}},emits:["onRotateStart","onRotateFinish","onSceneChange","onDisplayClick"],setup(m,{expose:o,emit:t}){const a=m,n=t;o({rotateShortestRoute:k});const r=e.ref(!1),s=e.ref(a.currentScene),i=e.ref(a.selectedId);e.watchEffect(()=>{s.value=a.currentScene}),e.watchEffect(()=>{i.value=a.selectedId}),e.watchEffect(()=>{n("onSceneChange",s.value)});const u=e.computed(()=>r.value?!1:a.apartmentChooserData.loopable?!0:s.value!==a.apartmentChooserData.scenes[0]),l=e.computed(()=>r.value?!1:a.apartmentChooserData.loopable?!0:s.value!==a.apartmentChooserData.scenes[a.apartmentChooserData.scenes.length-1]);function d(){const p=s.value;let g=a.apartmentChooserData.scenes.findIndex(C=>C===p)+1;g>=a.apartmentChooserData.scenes.length&&(g=0);const V=a.apartmentChooserData.scenes[g];a.apartmentChooserData.loopable&&p>V?f(p,V+a.apartmentChooserData.scenes.length):f(p,V)}async function c(){const p=s.value;let g=a.apartmentChooserData.scenes.findIndex(C=>C===p)-1;g<0&&(g=a.apartmentChooserData.scenes[a.apartmentChooserData.scenes.length-1]);const V=a.apartmentChooserData.scenes[g];a.apartmentChooserData.loopable&&p<V?f(p+a.apartmentChooserData.scenes.length,V):f(p,V)}function k(p){const g=s.value;if(a.apartmentChooserData.loopable)if(p<g){let V=g-p,C=g-(a.apartmentChooserData.cameras.length+p);return Math.abs(V)>Math.abs(C)?f(g,p):f(g,a.apartmentChooserData.cameras.length+p)}else{let V=g-p,C=a.apartmentChooserData.cameras.length+g-p;return Math.abs(V)>Math.abs(C)?f(g,p):f(a.apartmentChooserData.cameras.length+g,p)}else return f(g,p)}function f(p,g){return new Promise(V=>{r.value=!0,n("onRotateStart",{from:p,to:g});let C,h=p;C=setInterval(()=>{h<g?(h++,s.value=Math.abs(h%a.apartmentChooserData.cameras.length)):h>g?(h--,s.value=Math.abs(h%a.apartmentChooserData.cameras.length)):(clearInterval(C),n("onRotateFinish",{from:p,to:g}),r.value=!1,V())},50)})}return(p,g)=>{const V=e.resolveComponent("v-btn"),C=e.resolveComponent("v-chip");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(V,{class:"mx-2",icon:"mdi-restore",disabled:!u.value,onClick:c},null,8,["disabled"]),p.renderDisplay&&i.value?(e.openBlock(),e.createBlock(C,{key:0,variant:"flat",color:"white",size:"x-large",onClick:g[0]||(g[0]=h=>n("onDisplayClick",i.value))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(p.renderDisplay(i.value)),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(V,{class:"mx-2",icon:"mdi-reload",disabled:!l.value,onClick:d},null,8,["disabled"])],64)}}}),Rt=["innerHTML"],Ot=R(e.defineComponent({__name:"VApartmentChooserV5Overlay",props:{cdnFileResolver:{type:[String,Function]},colorCallback:{type:Function},currentCamera:{},selectedId:{}},emits:["onClick","onHoverOver","onHoverOut","updateSvgContainer"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(),r=e.ref(),s=e.ref(t.selectedId),i=e.reactive({});e.watch(()=>t.selectedId,()=>{s.value=t.selectedId}),e.watchEffect(()=>{for(const l in i){const{element:d,state:c}=i[l],{r:k,g:f,b:p,a:g,s:V}=t.colorCallback(l,c)||{r:0,g:0,b:0,a:0,s:0};d.style.fill=`rgba(${k}, ${f}, ${p}, ${g/255})`,d.style.stroke=`rgb(${k}, ${f}, ${p})`,d.style.strokeWidth=V.toString()}}),e.watch(s,()=>{for(const l in i)i[l].state==="selected"&&l!==s.value?i[l].state="idle":i[l].state!=="selected"&&l===s.value&&(i[l].state="selected")}),e.watchEffect(async()=>{n.value=await q.loadText(z(t.cdnFileResolver,t.currentCamera.overlayFilename)),u()}),e.watch(()=>r.value,()=>{r.value&&new ResizeObserver(u).observe(r.value)});function u(){e.nextTick(()=>{const l=r.value.firstChild;if(l){if(a("updateSvgContainer",l),!l.hasAttribute("viewBox")){const c=`0 0 ${l.getAttribute("width")} ${l.getAttribute("height")}`;l.setAttribute("viewBox",c)}l.setAttribute("width",r.value.offsetWidth.toString()),l.setAttribute("height",r.value.offsetHeight.toString()),l.querySelectorAll("[data-apartment-id]").forEach(c=>{c.style.strokeWidth="0",c.style.stroke="rgba(255,255,255,0)",c.style.fill="rgba(255,255,255,0)",c.querySelectorAll("path").forEach(f=>{f.style.stroke="inherit",f.style.fill="inherit"});const k=c.getAttribute("data-apartment-id");i[k]={element:c,state:s.value===k?"selected":"idle"},c.addEventListener("mouseover",()=>{i[k].state==="idle"&&(i[k].state="hover"),a("onHoverOver",k)}),c.addEventListener("mouseout",()=>{i[k].state==="hover"&&(i[k].state="idle"),a("onHoverOut",k)}),c.addEventListener("click",()=>{a("onClick",k)})})}})}return(l,d)=>(e.openBlock(),e.createBlock(e.Transition,null,{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("div",{ref_key:"svgContainer",ref:r,key:l.currentCamera.overlayFilename,class:"w-100 h-100 position-absolute top-left",style:{"z-index":"5"},innerHTML:n.value},null,8,Rt))]),_:1}))}}),[["__scopeId","data-v-1a2dbfd0"]]),$t="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGwAAABsCAYAAACPZlfNAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAA6ySURBVHgB7Z3Nb1TVG8efQstLActbIBAI8wsJBgLxZ+KeaVy5EVgZo4klceOKstCdYdQ/gLLSjQESjEvBjTs7Ju40AQMBIQEvgUAgvLRCWlpax/O9c56b09N7Z87bPTNT+SSHTqftMHO+93nO955Xolf0FH3UwzQajYr4wmVIlPUFvzohyqQoCR739fVdoh6lJwQTwkCI/4vyhihV+bhCfkC0RH79BV+FkBPU5XStYEKkKjXFOSi/xqBOTQEvCPHq1IV0lWBSpEOijFBxeotFQk0BT/VyCg0O0p0ox0QZb3QvF0X5iLqAjkVYo9kujYpyjDofTaYkopwV5YyIuoQ6QHTBelQonYSawo31glFxRog1KsrTxtLhr0bkVBklwsSHgg0/SfHcXmwSUYZjpMllVDJCrJr4cpGWrligIspf8rOWSmkR1mj2QpympS1UHgmVGG2lCCbEOkxNsUozFXNzczQ7O0vT09M0MzOTlpSbN2nT99+nDx+//z7R7t3p45UrV6ZlxYoVtHr1aurv76cSSUQ5LkQ7T4EJ/q5lWjhBgYEgExMTNDU1Rc+fP0/FymPVgwf02u+/p4+n3n6bXmzYkPt7EA3irV+/ntatW5eKGZCKKD+IuvhCiFajgAQVTLzBMWra9SBApMePH6dCIZJagQpfvnw5rRwczJ4bFKIMCDEgbhaBErweyuTkZPo9BIRwW7ZsCSneCVEnQ0K04xSIIII1mvdWP1Cg9goCPRCRgkjSQWWuXbuWBoUwHCVqBb8Uf/O3fLxj504a2LMn+9n8/HwaoRDq2bNnWToFLODDhw/T19+0aRNt3ryZAjAq2/OjIe7ZvAWTYo1TswfdGbRJqCwUVKwKrnykrqGhIa+rHxGI1+JIAog+iIdIxleACwXl/v37tG3bthDCoU2viLoa9hXNS7BQYj169CitHLVdgilApaKgossCEYpoQmHx8F4Qefj+9u3boYRDHY37iuYbYafJQyykpzt37ixIfXz1I6Jio4qHiMsTbo9IsR5RjrpC0zFMjjgLJg3GYXLk3r17aQUwqIQdO3Z0RKg8ioS7cuVKGm3bt28nR6qi7k66GhEnwaR1d3KD+OBJkmRRFSv1ucLCQTRcZACPIaRHtMGITLpYfuuuKXlT7HSfhfbh2rVrmVhIf3v37k2v2G4USwXv8cCBA5lAiLYbN25kRsWBE7IurbASTNrTk+QAbDo+IDvArVu3plco2o2QzMsoAHPyBjoUeK/79+/P0iGLhs/myGlZp8ZYdU1hOIEcJr+o7RVS4K5du0prq56+8w79I0VbJip2w08/URngXhGpnS9Aj3atLlKjsQkxjjDZblXIElUspBOkwLLEevnbb5lYAI9fBo4yBp9h3759WYpU2zhLYEKMmxgjwWTYWrdbulhlpECVmR9/XPTci3PnqCzwWVTj4SFaTY4ZtsU0wsbJEuT1mGKh7coTDBHWcDcGbckTzbFNM/IGbQUTyo+QZSqEc7p79276OIZYAOkwD4j14rvvqEx00fDZHdwjUuNou19qKZjserJKhXyfBWAwYogFpr/5pvBnMz//TGXDovHtyU0xLqePEBhwQtZ5Ie0iDIpXyALYXO4ThBuMIZZuNnTmr18vzXyo4LNWKpXm/yncI7qzLIFYLTskCgWTRsNqRhAaXBYLFjdWN1Ne26VTpvlQwWfmkQCkRQcTMtoqylpF2AhZRBfCXzUZuC+JQZHZ0CnbfKjsFONw6MUBqBN0clvQMspaCWYVXUiFzB5l0LBsisyGTgzzoYLUyO0ZGzALCqMsVzBbZ4jxLDUVxmi3mFZmQyeG+WBQB2pqRB1ZALFyA6Yowqx64juRCkE7s6ETy3ww6C9V78/0kfQ25HYMLxJM3nEbD0qq0RVTLGDSdunEMh8AKRFjfAB1ZHlDjfuyqv5kXoQ5RxfGjWJhajZ0YpoPwNPoAOarWHJIfyJPsCoZ0snoMjUbOrHNB+C2DCkRvfwWjOhPLBBMhmCFDMGoK4gdXcDGbOjENB8AUcaO0TLK1utpUY+wQ2QI7rt45LgT0fWPW694SmzzAVTHaNlldVD9RhfM2GyoVwrn6Fi4tF2LXuPCBYoJHCPDmcmQqvpNJpi8UauSIdwbDbFi3ne5mg2d2fHxqOaDJ7ECnh5uSFW9iVYjzDi6ENI81z122+VqNnRS8xE5yjBzGaCryjItZtqogh0kQ9Sxntjp0Mds6Lwctx6X9ULtDLd0i2/wA6cI45Dm9Vax8DUbi15PGI+Y5kOtr3arcTSq/EAVrEKGcDhj9UhMQrRdOrORLT5nJMsR6dyUaBRhuPnjqwPLcmIRymzo4DVjmg++yNHhYNG3WOEHqWCmM3aAOrYzqCyeK5s8s9EnrlbMPUTpK2hL1d/J+73Y5kOtMxvjITTaha8cYcZDw+qSoJiC5ZmNFcPD6URRlI2//kr9r7++6HfwHP8OCv5GJ6b5UNt8y3asgn+Wqd+YoF4VsebDm5qNdWNjhZHW8vUjmg918YSlta/gHxZsyPSvOMJiukPTtgspb/CTT8iF2ciDm+n/WbCwvoA0C1qnRCbwqvtCbM3Gqg8+oP633iJbYpoPx8y0QDBjHObaeeHSs7Huq6+sU2NM88GCWUZYSulbF/ni0rPhmhpj93y40NWC2fZszCoV7pIaY/d8uNDVgtneKE+fO7egwl1SY+yeD1usBWOzYTkDyBrXno3nn3+emQekxtWWqTGm+XBx2iyY9b4R2AilTFyHUZBCp77+Ovs+72a6FTHMh4vZIKkRC2Y8ouZ4D2GNz0QZ/O2sh4Eo23w43ssuECwx/COfO3Vj5q5fT+dd+KCmRlvKNB9qU2J5L5vgH2vB1CGVsqIsxGRPiPVstO36uELKMh9q57llhKVZMBXMZvdM9aqwXJVhBCp6NlBKQpRMO4pflvlwHe3gww5Ul5iY/CHu0h1HTY3AnEHTisLvwWRwyQM33nN//pn9js1rl2E+eGogxLLoospOpujXnqyQARg1VberC4mN2UAktotGVPzke++RCzAfqz/8kELCEWaZDhN+oEZYnQxRR01DGo8QZiMkoc0HbzAGLFenZhGmCvYHGeIx+6clMVeWmBLSfHjMNqvzA1WwS2QIjAdHmeWkyEJCmo2QhDQfPOMX7ZdlSsyCKRNM7pJZJ0M4ynDVhOimsjEbMQllPtS1CJaTl+rqDqZ6X2KdDFFn/HrsZpYRewmQDSF6PtR0qM6zN2BB5tMF+4UMQVr0WKi2gG4zGzohzAcvfHRYi3Be/WaBYPIYQWMX4bFQbQHdaDZ0fMyHuvDRci1CIjRZEER5wytnyBCPhWoZoc3GcmXPQtue+lb4mA+PZcV1/Yk8waxaWHWhmkuUhTAbA2JkefDTT9O5iWu+/DJ7fvCzz9K5iGvFQKbLxBwVV/Phuaz4lP7Eok2akRYbjUadDNeKoQF98uRJ6oKwpTlytM2sIFezAZEGhodp1aFDLUeVMYi58t1308IbXqLiXbaXden58IiuS3mHpRbtqo2GrkoGQBxcOdjBjbc2MN1KFaPKNmbDVKQifMVj8zFgGK3q3lsO0TWW92SRYDjfsUaG8xV5f3ekRbRl+N5krGdaGRkuwlekIlzFg/kwEUzfe8vBbJzN+0GuYLhRkwcJ1MgQbCCCLc552zmT/aaKrHJZIhVhIx7MB6bQtXtfnntvnSn6QauDBtDgYQTQKMrQ3YKwx1WFSEN7hl3NikCFqEMisUUqop14bD5atWX6NoQOPfNni35YKJhLlOHNofuFUyOfSpQHrtRuEamIIvFamY+nT5/67r3V8ozolvvWy9Xr2KveajnS1atX09QIQ4Jtz/PaM1ypZYiE2VZ/f/xx+vi1b781Ngg2QLxlOcYK7RY3C457HSeivNnq9KOW8xLlH35BFuAN7pbnTuKNI5fnjZl1Y0SZUiSWevKF4/a5tXZHVbWdSCpeAGmxThYgFXL7xcddxF5EERMWi9stdUdSCwqdoYrpzF/ro5PQA6KfUbIURdPFwmfm3h9LjI7zMBJM3nHXyBL1PJKlKFqeWI77btVMZ64Zz60XL4i2rE6W6KKhUQ45raBTwA3iswQQK5F1a4TtYoij5DAPHx+E2zQ0ytiE3/GMkq4A95i3bt3KDAY+m6tYZHm8opVgMmyPkgPI6/oZJZcvX+6pFIn3el30ffJQEp984dhmgeM2k3iB9XIjeVx7jRyAc1JF4zMluz3asFIH7zHvdEGPvbZqLkffO52BiZwrb6qtJ6/zKXd5Z0oGOjM5KGirsO+8uo7Ao71ixmzaLRXnU2ZxSqrcQadKDuADowebnWPgM5O9yTutne8vPffYOu9z1L3vOc5HyOPgbY62ojOTIRwqKdYWE0WntXOfYIC9IXF75OQBGC/BZAcxXI7XaemtDrsGmMeHn5chHv4vRBOKGk0g8JHFEKuzR9sDRTScmn6YPFCFUxdboCK5MhGVSEkQD0M6eIyKNYEvBCxIQMFr5q1xK+G09rooR3zFAt6CAflGjuAEcHIwIjosHE85QMXyqg88h6JPEYeQKAPCIPA+THfF/dK0EBXprd3iQ4gPgTZu3Bg6ijFc4pUGVYIIxkgjAvFqFAAIoHYi88wsjhIVFnKVeJ4Fm5qephcFa9ggClIthMJevCW1kzVXN1hEUMGAtPyYvI9oq1AgIB5HHkDUQDRe8pRF0Nat2ZS2NSKtrZG/j7/nRRz4WvJOdLhoj7rcZ7XD6uBtG+QJfzAjFfpvUaemWAmVQGk74eANi/I/CpQeewSkwOGyxAKlRZjKfyDa6tTsFzReY+dKlL2mlGiDW0po6YC2alRGVeligSgRpiL7IHFG2Qj1bsRBKEydOBXi3sqG6IIxyrHDI9Q7wnVMqK4Ch6SKcrHRvYyLcqzR5hTzGHQswvJoNHv/kS6r1PmoQwSdoWbvuvHK1LLpKsFUhHg4vAd9k85DOA7UuXSTSCpdK5iKTEU44adKTQEr5DE6IEmo2YNel1//6IV2qScEK0KmUHQdVqg5nbyojZmQJaHmLKXb9IpXxOBfKqW3YKRX2kIAAAAASUVORK5CYII=",he=e.defineComponent({__name:"VNorthDirection",props:{longitude:{}},setup(m){const o=m,t=e.computed(()=>({transform:`rotate(${90-(o.longitude||0)}deg)`,transition:" transform 0.5s ease-in"}));return(a,n)=>{const r=e.resolveComponent("v-img");return e.openBlock(),e.createBlock(r,{src:e.unref($t),style:e.normalizeStyle(t.value)},null,8,["src","style"])}}});class ge{constructor(o){P(this,"_buildingIds");this._buildingIds=o}static empty(){return new ge([])}getBuildingId(o,t,a){const n=this._getBuildingIndex(o,t,a);if(n!==void 0)return this._buildingIds[n]}_getBuildingIndex(o,t,a){const[n,r,s,i]=o.getPixel(t,a);if(i===255&&n===r&&r===s)return n}}const Ut=180;class Re{constructor(o){P(this,"_cdnFileResolver");P(this,"_resourceLoader");this._cdnFileResolver=o,this._resourceLoader=new q}constructFileUrl(o){return this._cdnFileResolver?z(this._cdnFileResolver,`/${o}`):null}loadBuildingMapImage(o){const t=this.constructFileUrl(o.lookupFilename);return t?this._resourceLoader.loadImage(t):null}getViewLongitude(o){return o.cameraRotation&&o.cameraRotation.y+270}getBuildingData(o){const t=o?o.buildings:[],a=t.map(r=>r.id),n=t.map(r=>({id:r.id,url:this.constructFileUrl(r.overlayFilename)}));return{buildingIds:a,buildingOverlays:n}}getBackgroundImageData(o){return"days"in o?this.processMultipleDays(o.days):[this.processTimeSamples(Ut,o.timeSamples)]}processMultipleDays(o){return o.map(t=>this.processTimeSamples(t.dayOfYear,t.timeSamples))}processTimeSamples(o,t){return{urls:t.map(n=>this.constructFileUrl(n.filename)),referenceDate:this.makeReferenceDate(o)}}makeReferenceDate(o){const t=new Date(0);return t.setUTCDate(o),t}async loadBuildingChooser(o){try{if(o){const t=await this.loadBuildingMapImage(o);if(t){const a=this.getViewLongitude(o),{buildingIds:n,buildingOverlays:r}=this.getBuildingData(o),s=this.getBackgroundImageData(o);return{mapImage:t,viewLongitude:a,buildingIds:n,buildingOverlays:r,backgrounds:s}}}return null}catch{return null}}}class ve{constructor(o){P(this,"_mapImage");P(this,"_context");this._mapImage=o,this._context=null}static empty(){return new ve(null)}update(o){this._mapImage&&(this._context=o.getContext("2d",{willReadFrequently:!0}),this._context.drawImage(this._mapImage,0,0,o.width,o.height))}getPixel(o,t){try{return this._context?this._context.getImageData(o,t,1,1).data:[0,0,0,0]}catch{return[0,0,0,0]}}}const Ht=new Date(0);class Ee{constructor(o){P(this,"_imagesByDay");P(this,"_state");this._imagesByDay=o,this._state={selectedIndex:0}}static empty(){return new Ee([{referenceDate:Ht,urls:[]}])}selectIndex(o){o<this._imagesByDay.length&&(this._state.selectedIndex=o)}get dates(){return this._imagesByDay.map(o=>o.referenceDate)}get hasMultipleDates(){return this._imagesByDay.length>1}get selectedIndex(){return this._state.selectedIndex}get selectedDate(){return this._imagesByDay[this.selectedIndex].referenceDate}get imageUrls(){return this._imagesByDay[this.selectedIndex].urls}}function be(m){return("0"+m).slice(-2)}function Pt(){const m=new Date;return[m.getFullYear().toString(),be(m.getMonth()+1),be(m.getDate())," ",be(m.getHours()),be(m.getMinutes()),be(m.getSeconds())].join("")}function jt(){return"Visuado-Snapshot-"+Pt()}class Yt{constructor(o,t){P(this,"data");this.data=o}download(o=null){o=o||jt();const t=document.createElement("a");typeof t.download=="string"?(document.body.appendChild(t),t.download=o,t.href=this.data,t.click(),document.body.removeChild(t)):location.replace(this.data)}}const zt={class:"actions-bar position-absolute top-left d-flex w-100 justify-center align-center",style:{"z-index":"7"}},Wt={class:"pa-2 pr-0",style:{flex:"1"}},Gt={class:"pa-2 pr-0",style:{flex:"1"}},Qt={class:"pa-2",style:{flex:"2"}},qt={class:"actions-bar position-absolute bottom-right d-flex w-100 justify-center align-center",style:{"z-index":"7"}},Zt={class:"position-absolute bottom-right",style:{"z-index":"7",width:"50px",height:"50px"}},Jt=["innerHTML"],Xt={style:{"z-index":"7"}},Kt=R(e.defineComponent({__name:"VApartmentChooserV5",props:{apartmentChooserData:{},cdnFileResolver:{},colorCallback:{type:Function,default:()=>({r:0,g:0,b:0,a:0,s:0})},i18nConfig:{},customOverlayContent:{},selectedId:{},defaultCamera:{},defaultDay:{},defaultTime:{},renderDisplay:{}},emits:["onClick","onHoverOver","onHoverOut","onMouseMove"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(),r=e.ref(),s=e.ref(),i=e.ref(null),u=e.ref(),l=e.ref(),d=e.ref(!1),c=e.ref(!1),k=e.ref(),f=e.ref(),p=e.computed(()=>f.value.isHoverEnabled),g=e.ref({x:0,y:0,width:0,height:0}),V=e.ref(),C=e.ref(t.apartmentChooserData);e.onMounted(()=>d.value=!0);const h=e.computed(()=>C.value?C.value.cameras.filter(Me):[]),A=e.computed(()=>C.value?C.value.cameras.filter(Te):[]);e.watch([C,()=>t.cdnFileResolver,()=>t.defaultCamera],async()=>{t.cdnFileResolver&&(C.value||(C.value=await q.loadJson(z(t.cdnFileResolver,"/apartmentChooser.json"))),t.defaultCamera?n.value=h.value.find(B=>B.cameraName===t.defaultCamera)||h.value[0]:n.value=h.value[0],u.value=C.value.cameras.findIndex(B=>B===n.value))},{immediate:!0}),e.watch([C,()=>t.cdnFileResolver,()=>t.defaultDay],()=>{C.value&&t.cdnFileResolver&&(t.defaultDay?r.value=n.value.sunsimDayOfYear.find(B=>B.dayOfYear===t.defaultDay)||n.value.sunsimDayOfYear[0]:r.value=n.value.sunsimDayOfYear[0])},{immediate:!0}),e.watch([C,()=>t.cdnFileResolver,()=>t.defaultTime],()=>{C.value&&t.cdnFileResolver&&(t.defaultTime?s.value=r.value.timeSamples.find(B=>B.timeInHours===t.defaultTime)||r.value.timeSamples[0]:s.value=r.value.timeSamples.find(B=>B.timeInHours===r.value.defaultHour)||r.value.timeSamples[0])},{immediate:!0});function v(B){n.value!==B&&k.value.rotateShortestRoute(C.value.cameras.findIndex(N=>N===B))}function S(B){u.value=B,Te(C.value.cameras[u.value])?i.value=C.value.cameras[u.value]:(e.nextTick(()=>{y(C.value.cameras[u.value])}),i.value=null)}function y(B){const N=r.value;n.value=B,u.value=C.value.cameras.findIndex(U=>U===n.value),e.nextTick(()=>{_(n.value.sunsimDayOfYear.find(U=>U.dayOfYear===N.dayOfYear)||n.value.sunsimDayOfYear[0])})}function _(B){const N=s.value;r.value=B,e.nextTick(()=>{M(r.value.timeSamples.find(U=>U.timeInHours===N.timeInHours)||r.value.timeSamples.find(U=>U.timeInHours===r.value.defaultHour)||r.value.timeSamples[0])})}function M(B){s.value=B}function E(B){a("onClick",B,()=>{const N=C.value.unitData.find(U=>U.unitId===B);N&&k.value.rotateShortestRoute(N.bestScene)})}function O(B){a("onHoverOver",B),l.value=B}function b(B){a("onHoverOut",B),l.value=void 0}function x(B){const{layerX:N,layerY:U}=B;let I=B.target,D=!1;for(;I;)if(I===V.value){D=!0;break}else I=I.parentElement;D?g.value={x:N,y:U,width:B.currentTarget.clientWidth,height:B.currentTarget.clientHeight}:g.value=void 0,a("onMouseMove",B,g.value)}return(B,N)=>{const U=e.resolveComponent("v-skeleton-loader");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(U,{type:"image",class:"w-100 h-100 position-relative",loading:!d.value||!C.value},{default:e.withCtx(()=>[e.createVNode(e.Transition,null,{default:e.withCtx(()=>[e.createElementVNode("div",{onMousemove:x},[e.createElementVNode("div",zt,[e.createElementVNode("div",Wt,[e.createVNode(Nt,{"apartment-chooser-data":C.value,"current-camera":n.value,disabled:c.value,onOnCameraChange:v},null,8,["apartment-chooser-data","current-camera","disabled"])]),e.createElementVNode("div",Gt,[e.createVNode(At,{"camera-data":n.value,"current-day":r.value,disabled:c.value,onOnDayChange:_},null,8,["camera-data","current-day","disabled"])]),e.createElementVNode("div",Qt,[e.createVNode(Mt,{"day-data":r.value,"current-time":s.value,disabled:c.value,onOnTimeChange:M},null,8,["day-data","current-time","disabled"])])]),e.createElementVNode("div",qt,[e.createVNode(Tt,{ref_key:"rotator",ref:k,"apartment-chooser-data":C.value,"current-scene":u.value,"selected-id":B.selectedId,"render-display":t.renderDisplay,onOnDisplayClick:E,onOnSceneChange:S,onOnRotateStart:N[0]||(N[0]=I=>c.value=!0),onOnRotateFinish:N[1]||(N[1]=I=>c.value=!1)},null,8,["apartment-chooser-data","current-scene","selected-id","render-display"])]),e.createElementVNode("div",Zt,[e.createVNode(he,{longitude:n.value.cameraRotation.y+270},null,8,["longitude"])]),e.createVNode(fe,{position:"relative"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,I=>(e.openBlock(),e.createBlock(xt,{key:I.overlayFilename,"camera-data":I,"cdn-file-resolver":t.cdnFileResolver,"current-time":s.value},null,8,["camera-data","cdn-file-resolver","current-time"]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.value,I=>(e.openBlock(),e.createBlock(It,{"transition-data":I,"cdn-file-resolver":t.cdnFileResolver,"current-transition":i.value},null,8,["transition-data","cdn-file-resolver","current-transition"]))),256)),t.customOverlayContent?(e.openBlock(),e.createElementBlock("div",{key:0,class:"w-100 h-100 position-absolute top-left",style:{"z-index":"6","pointer-events":"none"},innerHTML:t.customOverlayContent},null,8,Jt)):e.createCommentVNode("",!0),e.withDirectives(e.createVNode(Ot,{"cdn-file-resolver":B.cdnFileResolver,"color-callback":t.colorCallback,"current-camera":n.value,"selected-id":t.selectedId,onOnClick:E,onOnHoverOver:O,onOnHoverOut:b,onUpdateSvgContainer:N[2]||(N[2]=I=>V.value=I)},null,8,["cdn-file-resolver","color-callback","current-camera","selected-id"]),[[e.vShow,i.value===null]])]),_:1}),B.$slots.popup&&g.value&&l.value?(e.openBlock(),e.createBlock(pe,{key:0,"is-hoverable":p.value,pos:g.value},{default:e.withCtx(()=>[e.createElementVNode("div",Xt,[e.renderSlot(B.$slots,"popup",e.normalizeProps(e.guardReactiveProps({hoverId:l.value,hoverable:p.value})),void 0,!0)])]),_:3},8,["is-hoverable","pos"])):e.createCommentVNode("",!0)],32)]),_:3})]),_:3},8,["loading"]),e.createVNode(le,{ref_key:"hoverProbe",ref:f},null,512)],64)}}}),[["__scopeId","data-v-8841908c"]]),eo={class:"sunsim-bar-wrapper"},to={class:"sunsim-date d-flex align-center pl-5 pr-5"},oo={key:1,class:"text-center text-body-1"},no={class:"sunsim-wrapper d-flex align-center px-3"},ao={class:"sunsim-time-label text-body-1 font-weight-normal ml-2"},Oe=R(e.defineComponent({__name:"VBuildingChooserSunSimControl",props:{modelValue:{},dateSelector:{},isLoading:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(t.modelValue),r=e.ref();function s(d){return d.toLocaleString("en-no",{month:"short",day:"numeric"})}const i=e.computed(()=>{const d=Math.floor(n.value/2).toString().padStart(2,"0"),c=n.value%2===0?"00":"30";return`${d}:${c}`}),u=e.computed(()=>t.dateSelector.dates.map(s)),l=e.computed({get(){return s(t.dateSelector.selectedDate)},set(d){t.dateSelector.selectIndex(u.value.indexOf(d))}});return e.watch(n,d=>{a("update:modelValue",d)}),e.watch(r,d=>{t.dateSelector.selectIndex(u.value.indexOf(d))}),e.watch(()=>t.modelValue,d=>{n.value=Math.floor(d)}),e.watchEffect(()=>{r.value=s(t.dateSelector.selectedDate)}),(d,c)=>{const k=e.resolveComponent("v-icon"),f=e.resolveComponent("v-select"),p=e.resolveComponent("v-progress-linear"),g=e.resolveComponent("v-slider");return e.openBlock(),e.createElementBlock("div",eo,[e.createElementVNode("div",to,[e.createVNode(k,{color:"black",class:"mr-2",icon:"mdi-calendar-blank-outline"}),d.dateSelector.hasMultipleDates?(e.openBlock(),e.createBlock(f,{key:0,modelValue:r.value,"onUpdate:modelValue":c[0]||(c[0]=V=>r.value=V),items:u.value,density:"compact",variant:"underlined","hide-details":"",class:"day-selector"},null,8,["modelValue","items"])):(e.openBlock(),e.createElementBlock("span",oo,e.toDisplayString(l.value),1))]),e.createElementVNode("div",no,[e.createElementVNode("span",ao,e.toDisplayString(i.value),1),e.createVNode(k,{medium:"",class:"ml-2 mr-2 icon"},{default:e.withCtx(()=>[e.createTextVNode("mdi-white-balance-sunny")]),_:1}),d.isLoading?(e.openBlock(),e.createBlock(p,{key:0,style:{left:0,transform:"none"},indeterminate:"",rounded:"",height:"6",color:"grey lighten-1",class:"mr-2"})):(e.openBlock(),e.createBlock(g,{key:1,modelValue:n.value,"onUpdate:modelValue":c[1]||(c[1]=V=>n.value=V),min:0,max:47,step:1,"thumb-label":!1,"hide-details":!0,"thumb-color":"white","thumb-size":"25","track-size":"7","track-fill-color":"transparent",class:"sunsim-slider mr-1"},null,8,["modelValue"]))])])}}}),[["__scopeId","data-v-d5a3d3f8"]]),ro={key:0},lo=["src"],$e=R(e.defineComponent({__name:"VBuildingChooserSceneImageStack",props:{imageUrls:{},activeIndex:{}},emits:["resize","ready","preloaded","reset"],setup(m,{emit:o}){const t=m,a=o,n=e.ref("init"),r=e.ref(new Se(0)),s=e.ref();e.watch(()=>t.imageUrls,l=>{a("reset"),u(l)}),e.onMounted(()=>{u(t.imageUrls),new ResizeObserver(l=>{window.requestAnimationFrame(()=>{const d=l[0].contentRect.width,c=l[0].contentRect.height;a("resize",{width:d,height:c})})}).observe(s.value)});function i(){n.value="preloaded",a("preloaded")}function u(l){n.value="init",s.value.src=l[0],r.value=new Se(l.length).onLoadFinished(()=>{n.value="loaded",a("ready")})}return(l,d)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("img",{ref_key:"baseImage",ref:s,class:"image-instance zero",style:{opacity:1,borderRadius:50},onLoad:i},null,544),n.value==="preloaded"||n.value==="loaded"?e.withDirectives((e.openBlock(),e.createElementBlock("div",ro,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.imageUrls,(c,k)=>(e.openBlock(),e.createElementBlock("img",{key:k,class:e.normalizeClass({"image-instance":!0,active:k===l.activeIndex}),src:c,onLoad:d[0]||(d[0]=f=>r.value.partLoaded())},null,42,lo))),128))],512)),[[e.vShow,n.value==="loaded"]]):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-8d357c5f"]]),io={key:0,style:{height:"50vh"},class:"d-flex justify-center align-center blue-grey lighten-5"},so={class:"image-instances"},co={key:0},mo={class:"svg-container"},uo=["viewBox"],po=["innerHTML","data-building-id","onMouseover","onMouseout","onMousemove","onClick"],fo=["innerHTML"],ho=R(e.defineComponent({__name:"VBuildingChooserSvg",props:{showCards:{type:Boolean,default:!0},colorCallback:{type:Function,default:()=>({r:108,g:0,b:108,a:144,s:2})},canGoToBuildingCallback:{type:Function,default:()=>!0},buildingChooserTimeOfDay:{},cdnFileResolver:{},i18nConfig:{},interactiveDesktop:{type:Boolean,default:!0},interactiveMobile:{type:Boolean,default:!0},customOverlayContent:{},buildingChooserData:{}},emits:["goToBuilding","hoverOverBuilding","hoverOutBuilding"],setup(m,{emit:o}){const t=m,a=o;e.provide(X,t.i18nConfig?new ie(t.i18nConfig):new ie);const n=e.ref({preloaded:!1,ready:!1}),r=e.ref({width:0,height:0}),s=e.ref({x:0,y:0,width:0,height:0}),i=e.ref(),u=e.ref(new Date().getHours()*2+(new Date().getMinutes()<30?0:1)),l=e.ref(!1),d=e.ref(new q),c=e.ref(),k=e.ref("0 0 0 0"),f=e.ref(),p=e.ref(),g=e.ref(ge.empty()),V=e.ref(ve.empty()),C=e.ref(),h=e.computed(()=>C.value.isHoverEnabled);e.watch(i,(b,x)=>{b?a("hoverOverBuilding",b):a("hoverOutBuilding",x)}),e.watchEffect(()=>{if(t.buildingChooserTimeOfDay){const[b,x,B]=/^(\d\d):(\d\d)$/.exec(t.buildingChooserTimeOfDay),N=parseInt(B);u.value=parseInt(x)*2+(N<15?0:N>45?2:1)}}),e.onMounted(async()=>{const x=await new Re(t.cdnFileResolver).loadBuildingChooser(t.buildingChooserData);if(x){V.value=new ve(x.mapImage),g.value=new ge(x.buildingIds),f.value=new Ee(x.backgrounds),p.value={buildingOverlays:x.buildingOverlays,viewLongitude:x.viewLongitude};const B=[];for(let{id:N,url:U}of x.buildingOverlays)d.value.loadJson(U.replace(".png",".svg")).then(I=>{const H=new DOMParser().parseFromString(I,"image/svg+xml").getElementsByTagName("svg")[0];k.value=H.getAttribute("viewBox"),B.push({id:N,svg:H.innerHTML})});c.value=B}else l.value=!0});function A({width:b,height:x}){r.value.width=b,r.value.height=x}function v(){n.value={preloaded:!1,ready:!1}}function S(b){const x=t.colorCallback(b,b===i.value?"hover":"idle"),B=[];return b===i.value?B.push("hover"):B.push("idle"),x&&t.canGoToBuildingCallback(b)?B.push("clickable"):B.push("restricted"),B.join(" ")}function y(b){const x=t.colorCallback(b,b===i.value?"hover":"idle");if(x){const{r:B,g:N,b:U,a:I,s:D}=x;return{strokeWidth:D!==void 0?D:2,stroke:`rgb(${B}, ${N}, ${U})`,strokeOpacity:1,fill:`rgb(${B}, ${N}, ${U})`,fillOpacity:I/255,cursor:`${t.canGoToBuildingCallback(b)?"cursor":"default"} !important`}}else return{strokeWidth:0,stroke:"white",strokeOpacity:0,fill:"white",fillOpacity:0,cursor:"default !important"}}function _(b,x){const{layerX:B,layerY:N}=b;h.value&&(s.value={x:B,y:N,width:r.value.width,height:r.value.height},i.value=x,a("hoverOverBuilding",x))}function M(b,x){const{layerX:B,layerY:N}=b;h.value&&(s.value={x:B,y:N,width:r.value.width,height:r.value.height},i.value=void 0,a("hoverOutBuilding",x))}function E(b,x){const{layerX:B,layerY:N}=b;h.value&&(s.value={x:B,y:N,width:r.value.width,height:r.value.height})}function O(b){i.value=b,h.value&&i.value&&t.canGoToBuildingCallback(i.value)&&a("goToBuilding",i.value)}return(b,x)=>{const B=e.resolveComponent("v-icon");return l.value?(e.openBlock(),e.createElementBlock("div",io,[e.createVNode(B,{"x-large":""},{default:e.withCtx(()=>[e.createTextVNode("mdi-alert-circle-outline")]),_:1})])):p.value?(e.openBlock(),e.createElementBlock("div",{key:1,style:e.normalizeStyle(`height: ${r.value.height}px; position: relative`),class:"image-container"},[e.createVNode(fe,{desktop:b.interactiveDesktop,mobile:b.interactiveMobile},{default:e.withCtx(()=>[e.createElementVNode("div",so,[e.createVNode($e,{"image-urls":f.value.imageUrls,"active-index":u.value,onResize:A,onPreloaded:x[0]||(x[0]=N=>n.value.preloaded=!0),onReady:x[1]||(x[1]=N=>n.value.ready=!0),onReset:v},null,8,["image-urls","active-index"]),c.value?e.withDirectives((e.openBlock(),e.createElementBlock("div",co,[e.createElementVNode("div",mo,[(e.openBlock(),e.createElementBlock("svg",{viewBox:k.value},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,({id:N,svg:U},I)=>(e.openBlock(),e.createElementBlock("g",{key:I,innerHTML:U,"data-building-id":N,class:e.normalizeClass(S(N)),style:e.normalizeStyle(y(N)),onMouseover:D=>_(D,N),onMouseout:D=>M(D,N),onMousemove:D=>E(D),onClick:D=>O(N)},null,46,po))),128))],8,uo))])],512)),[[e.vShow,n.value.preloaded]]):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",{class:"custom-overlay-layer",innerHTML:b.customOverlayContent},null,8,fo),[[e.vShow,n.value.preloaded]])])]),_:1},8,["desktop","mobile"]),e.withDirectives(e.createElementVNode("div",null,[p.value.viewLongitude?(e.openBlock(),e.createBlock(he,{key:0,class:"north-indicator",longitude:p.value.viewLongitude},null,8,["longitude"])):e.createCommentVNode("",!0),e.createVNode(Oe,{modelValue:u.value,"onUpdate:modelValue":x[2]||(x[2]=N=>u.value=N),"date-selector":f.value,"is-loading":!n.value.ready},null,8,["modelValue","date-selector","is-loading"])],512),[[e.vShow,n.value.preloaded]]),b.showCards&&i.value?(e.openBlock(),e.createBlock(pe,{key:0,"is-hoverable":h.value,pos:s.value,onOutside:x[3]||(x[3]=()=>i.value=void 0)},{default:e.withCtx(()=>[e.renderSlot(b.$slots,"default",{building:i.value,canGoToBuilding:b.canGoToBuildingCallback(i.value),goToBuilding:()=>b.canGoToBuildingCallback(i.value)&&a("goToBuilding",i.value),pos:s.value,isHoverable:h.value,close:()=>i.value=void 0},void 0,!0)]),_:3},8,["is-hoverable","pos"])):e.createCommentVNode("",!0),e.createVNode(le,{ref_key:"hoverProbe",ref:C},null,512)],4)):e.createCommentVNode("",!0)}}}),[["__scopeId","data-v-5e1006a9"]]),go=R(e.defineComponent({__name:"VBuildingChooserRasterOverlay",props:{imageUrl:{},dimensions:{},color:{default:()=>({r:108,g:0,b:108,a:144,s:2})}},setup(m,{expose:o}){const t=m;o({setupDraw:d});const a=e.ref(!1),n=e.ref(),r=e.ref(new q),s=e.ref(),i=e.ref(),u=e.ref([]),l=e.ref();e.watch(()=>t.color,(f,p)=>{(f.r!==p.r||f.g!==p.g||f.b!==p.b||f.a!==p.a)&&c()}),e.onMounted(async()=>{n.value=await r.value.loadImage(t.imageUrl),d()});function d(){if(!n.value||!l.value)return;const{width:f,height:p}=t.dimensions;if(!(f===0||p===0)){s.value=l.value.getContext("2d",{willReadFrequently:!0}),s.value.drawImage(n.value,0,0,f,p),i.value=s.value.getImageData(0,0,f,p);for(let g=3;g<i.value.data.length;g+=4)i.value.data[g]!==0&&u.value.push(g);c(),a.value=!0}}function c(){s.value&&i.value&&(k(),s.value.putImageData(i.value,0,0))}function k(){if(t.color)for(let f=0;f<u.value.length;f++)i.value.data[u.value[f]-3]=t.color.r,i.value.data[u.value[f]-2]=t.color.g,i.value.data[u.value[f]-1]=t.color.b,i.value.data[u.value[f]]=t.color.a}return(f,p)=>(e.openBlock(),e.createElementBlock("canvas",e.mergeProps({ref_key:"canvas",ref:l,class:"overlay"},f.dimensions),null,16))}}),[["__scopeId","data-v-9e4cdd0e"]]),vo={key:0,style:{height:"50vh"},class:"d-flex justify-center align-center blue-grey lighten-5"},ko={class:"image-instances"},Co=["innerHTML"],yo=R(e.defineComponent({__name:"VBuildingChooserRaster",props:{showCards:{type:Boolean,default:!0},colorCallback:{type:Function,default:()=>({r:108,g:0,b:108,a:144,s:2})},canGoToBuildingCallback:{type:Function,default:()=>!0},buildingChooserTimeOfDay:{},cdnFileResolver:{},i18nConfig:{},interactiveDesktop:{type:Boolean,default:!0},interactiveMobile:{type:Boolean,default:!0},customOverlayContent:{},buildingChooserData:{}},emits:["goToBuilding","hoverOverBuilding","hoverOutBuilding"],setup(m,{emit:o}){const t=m,a=o;e.provide(X,t.i18nConfig?new ie(t.i18nConfig):new ie);const n=e.ref(),r=e.ref({preloaded:!1,ready:!1}),s=e.ref({width:0,height:0}),i=e.ref({x:0,y:0,width:0,height:0}),u=e.ref(),l=e.ref(ge.empty()),d=e.ref(ve.empty()),c=e.ref(),k=e.ref(new Date().getHours()*2+(new Date().getMinutes()<30?0:1)),f=e.ref((b,x)=>({x:b,y:x})),p=e.ref(!1),g=e.ref(),V=e.ref(),C=e.ref(),h=e.computed(()=>{var b;return(b=g.value)==null?void 0:b.isHoverEnabled});e.watchEffect(()=>{if(t.buildingChooserTimeOfDay){const[b,x,B]=/^(\d\d):(\d\d)$/.exec(t.buildingChooserTimeOfDay),N=parseInt(B);k.value=parseInt(x)*2+(N<15?0:N>45?2:1)}}),e.watch(c,(b,x)=>{b?a("hoverOverBuilding",b):a("hoverOutBuilding",x)}),e.onMounted(async()=>{const x=await new Re(t.cdnFileResolver).loadBuildingChooser(t.buildingChooserData);x?(d.value=new ve(x.mapImage),l.value=new ge(x.buildingIds),n.value=new Ee(x.backgrounds),u.value={buildingOverlays:x.buildingOverlays,viewLongitude:x.viewLongitude},y()):p.value=!0});function A({width:b,height:x}){s.value.width=b,s.value.height=x,e.nextTick(y)}function v(){r.value={preloaded:!1,ready:!1}}function S(b){const{layerX:x,layerY:B}=b,{x:N,y:U}=f.value(x,B);return l.value.getBuildingId(d.value,N,U)}function y(){if(V.value&&(d.value.update(V.value),C.value))for(const b of C.value)b.setupDraw()}function _(b){const{layerX:x,layerY:B}=b;h.value&&(c.value=S(b),c.value!==void 0&&(i.value={x,y:B,width:s.value.width,height:s.value.height}))}function M(b){c.value=S(b),h.value&&c.value&&a("goToBuilding",c.value)}function E(b){return t.colorCallback(b,b===c.value?"hover":"idle")}function O({resolve:b}){f.value=b}return(b,x)=>{const B=e.resolveComponent("v-icon");return p.value?(e.openBlock(),e.createElementBlock("div",vo,[e.createVNode(B,{"x-large":""},{default:e.withCtx(()=>[e.createTextVNode("mdi-alert-circle-outline")]),_:1})])):u.value?(e.openBlock(),e.createElementBlock("div",{key:1,style:e.normalizeStyle(`cursor: ${c.value?"pointer":"auto"};height: ${s.value.height}px; position: relative`),class:"image-container"},[e.createVNode(fe,{desktop:b.interactiveDesktop,mobile:b.interactiveMobile,onUpdate:O},{default:e.withCtx(()=>[e.createElementVNode("div",ko,[e.createVNode($e,{"image-urls":n.value.imageUrls,"active-index":k.value,onResize:A,onPreloaded:x[0]||(x[0]=N=>r.value.preloaded=!0),onReady:x[1]||(x[1]=N=>r.value.ready=!0),onReset:v},null,8,["image-urls","active-index"]),e.withDirectives(e.createElementVNode("div",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value.buildingOverlays,N=>(e.openBlock(),e.createBlock(go,{ref_for:!0,ref_key:"overlays",ref:C,key:N.id,"image-url":N.url,dimensions:s.value,color:E(N.id)},null,8,["image-url","dimensions","color"]))),128))],512),[[e.vShow,r.value.preloaded]])]),e.createElementVNode("canvas",e.mergeProps(s.value,{ref_key:"canvas",ref:V,class:{hover:!!c.value},onClick:M,onMousemove:_}),null,16),e.withDirectives(e.createElementVNode("div",{class:"custom-overlay-layer",innerHTML:b.customOverlayContent},null,8,Co),[[e.vShow,r.value.preloaded]])]),_:1},8,["desktop","mobile"]),e.withDirectives(e.createElementVNode("div",null,[u.value.viewLongitude?(e.openBlock(),e.createBlock(he,{key:0,class:"north-indicator",longitude:u.value.viewLongitude},null,8,["longitude"])):e.createCommentVNode("",!0),e.createVNode(Oe,{modelValue:k.value,"onUpdate:modelValue":x[2]||(x[2]=N=>k.value=N),"date-selector":n.value,"is-loading":!r.value.ready},null,8,["modelValue","date-selector","is-loading"])],512),[[e.vShow,r.value.preloaded]]),b.showCards&&c.value?(e.openBlock(),e.createBlock(pe,{key:0,"is-hoverable":h.value,pos:i.value,onOutside:x[3]||(x[3]=()=>c.value=void 0)},{default:e.withCtx(()=>[e.renderSlot(b.$slots,"default",{building:c.value,canGoToBuilding:b.canGoToBuildingCallback(c.value),goToBuilding:()=>b.canGoToBuildingCallback(c.value)&&a("goToBuilding",c.value),pos:i.value,isHoverable:h.value,close:()=>c.value=void 0},void 0,!0)]),_:3},8,["is-hoverable","pos"])):e.createCommentVNode("",!0),e.createVNode(le,{ref_key:"hoverProbe",ref:g},null,512)],4)):e.createCommentVNode("",!0)}}}),[["__scopeId","data-v-088f521e"]]),Ue=e.defineComponent({__name:"VBuildingChooser",props:{showCards:{type:Boolean,default:!0},colorCallback:{type:Function,default:()=>({r:108,g:0,b:108,a:144,s:2})},cdnFileResolver:{},i18nConfig:{},interactiveDesktop:{type:Boolean,default:!0},interactiveMobile:{type:Boolean,default:!0},useSvg:{type:Boolean,default:!1},buildingChooserTimeOfDay:{},canGoToBuildingCallback:{type:Function,default:()=>!0},customOverlayContent:{},buildingChooserData:{}},emits:["goToBuilding","hoverOverBuilding","hoverOutBuilding"],setup(m,{emit:o}){const t=m,a=o,n=e.computed(()=>t.useSvg?ho:yo);return(r,s)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),{"i18n-config":t.i18nConfig,"show-cards":t.showCards,"color-callback":t.colorCallback,"cdn-file-resolver":t.cdnFileResolver,"interactive-desktop":t.interactiveDesktop,"interactive-mobile":t.interactiveMobile,"building-chooser-time-of-day":t.buildingChooserTimeOfDay,"can-go-to-building-callback":t.canGoToBuildingCallback,"custom-overlay-content":t.customOverlayContent,"building-chooser-data":t.buildingChooserData,onGoToBuilding:s[0]||(s[0]=i=>a("goToBuilding",i)),onHoverOverBuilding:s[1]||(s[1]=i=>a("hoverOverBuilding",i)),onHoverOutBuilding:s[2]||(s[2]=i=>a("hoverOutBuilding",i))},e.createSlots({_:2},[e.renderList(Object.keys(r.$slots),i=>({name:i,fn:e.withCtx(u=>[e.renderSlot(r.$slots,i,e.normalizeProps(e.guardReactiveProps(u)))])}))]),1064,["i18n-config","show-cards","color-callback","cdn-file-resolver","interactive-desktop","interactive-mobile","building-chooser-time-of-day","can-go-to-building-callback","custom-overlay-content","building-chooser-data"]))}}),wo=["src"],_o=R(e.defineComponent({__name:"VBuildingChooserV5CameraDayTimeSample",props:{timeSampleData:{},cdnFileResolver:{type:[String,Function]},currentTime:{}},setup(m){const o=m,t=e.computed(()=>z(o.cdnFileResolver,o.timeSampleData.filename));return(a,n)=>e.withDirectives((e.openBlock(),e.createElementBlock("img",{key:t.value,src:t.value,width:"100%"},null,8,wo)),[[e.vShow,a.timeSampleData===a.currentTime]])}}),[["__scopeId","data-v-98118455"]]),bo=e.defineComponent({__name:"VBuildingChooserV5CameraDay",props:{dayData:{},cdnFileResolver:{type:[String,Function]},currentTime:{}},setup(m){const o=m;return(t,a)=>(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.dayData.timeSamples,n=>(e.openBlock(),e.createBlock(_o,{"time-sample-data":n,"cdn-file-resolver":o.cdnFileResolver,"current-time":t.currentTime},null,8,["time-sample-data","cdn-file-resolver","current-time"]))),256))}}),Vo=e.defineComponent({__name:"VBuildingChooserV5Camera",props:{cameraData:{},cdnFileResolver:{type:[String,Function]},currentTime:{}},setup(m){const o=m;return(t,a)=>(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.cameraData.sunsimDayOfYear,n=>(e.openBlock(),e.createBlock(bo,{"day-data":n,"cdn-file-resolver":o.cdnFileResolver,"current-time":o.currentTime},null,8,["day-data","cdn-file-resolver","current-time"]))),256))}}),Eo=e.defineComponent({__name:"VBuildingChooserV5UiCamera",props:{buildingChooserData:{},currentCamera:{}},emits:["onCameraChange"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(t.currentCamera.overlayFilename);return e.watch(n,()=>{a("onCameraChange",t.buildingChooserData.cameras.find(r=>r.overlayFilename===n.value))}),(r,s)=>{const i=e.resolveComponent("v-select");return e.openBlock(),e.createBlock(i,{modelValue:n.value,"onUpdate:modelValue":s[0]||(s[0]=u=>n.value=u),items:t.buildingChooserData.cameras,"item-title":"cameraName","item-value":"overlayFilename",variant:"solo",density:"compact","hide-details":""},null,8,["modelValue","items"])}}}),Bo=e.defineComponent({__name:"VBuildingChooserV5UiDay",props:{cameraData:{},currentDay:{}},emits:["onDayChange"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(t.currentDay.dayOfYear);e.watch(()=>t.currentDay.dayOfYear,()=>{n.value=t.currentDay.dayOfYear}),e.watch(n,()=>{a("onDayChange",t.cameraData.sunsimDayOfYear.find(s=>s.dayOfYear===n.value))});function r(s){const i=new Date(0);return i.setUTCDate(s),i.toLocaleString("en-no",{month:"short",day:"numeric"})}return(s,i)=>{const u=e.resolveComponent("v-list-item"),l=e.resolveComponent("v-select");return e.openBlock(),e.createBlock(l,{modelValue:n.value,"onUpdate:modelValue":i[0]||(i[0]=d=>n.value=d),items:t.cameraData.sunsimDayOfYear,"item-title":"dayOfYear","item-value":"dayOfYear",variant:"solo",density:"compact","hide-details":""},{item:e.withCtx(({props:d})=>[e.createVNode(u,e.mergeProps(d,{title:r(d.title)}),null,16,["title"])]),selection:e.withCtx(({item:d})=>[e.createTextVNode(e.toDisplayString(r(d.title)),1)]),_:1},8,["modelValue","items"])}}}),xo={key:0,class:"py-2"},So={class:"small"},Io={class:"small"},No=R(e.defineComponent({__name:"VBuildingChooserV5UiTimeSample",props:{dayData:{},currentTime:{}},emits:["onTimeChange"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(t.currentTime.timeInHours),r=e.ref();e.watch(()=>t.currentTime.timeInHours,()=>{n.value=t.currentTime.timeInHours}),e.watch(n,()=>{a("onTimeChange",t.dayData.timeSamples.find(u=>u.timeInHours===n.value))});function s(u){const l=u*60,d=l/60,c=l%60;return`${d.toString().padStart(2,"0")}:${c.toString().padStart(2,"0")}`}function i(){r.value?(clearInterval(r.value),r.value=void 0):(t.dayData.timeSamples.findIndex(l=>l.timeInHours===n.value)===t.dayData.timeSamples.length-1&&(n.value=t.dayData.timeSamples[0].timeInHours),r.value=setInterval(()=>{const l=t.dayData.timeSamples.findIndex(d=>d.timeInHours===n.value);l<t.dayData.timeSamples.length-1?n.value=t.dayData.timeSamples[l+1].timeInHours:(clearInterval(r.value),r.value=void 0)},200))}return(u,l)=>{const d=e.resolveComponent("v-icon"),c=e.resolveComponent("v-btn"),k=e.resolveComponent("v-slider"),f=e.resolveComponent("v-field");return e.openBlock(),e.createBlock(f,{variant:"solo"},{default:e.withCtx(()=>[u.dayData.startTime===u.dayData.endTime?(e.openBlock(),e.createElementBlock("div",xo,[e.createVNode(d,{style:{color:"#ffab02","vertical-align":"baseline","font-size":"20px"},class:"py-2 ml-2 mr-2 icon"},{default:e.withCtx(()=>[e.createTextVNode(" mdi-white-balance-sunny ")]),_:1}),e.createTextVNode(" "+e.toDisplayString(s(n.value)),1)])):(e.openBlock(),e.createBlock(k,{key:1,class:"pa-1",modelValue:n.value,"onUpdate:modelValue":l[0]||(l[0]=p=>n.value=p),min:u.dayData.startTime,max:u.dayData.endTime,step:u.dayData.interval,"hide-details":""},{prepend:e.withCtx(()=>[e.createVNode(c,{icon:r.value?"mdi-stop":"mdi-play",size:"x-small",variant:"flat",onClick:i},null,8,["icon"]),e.createTextVNode(" "),e.createElementVNode("span",So,e.toDisplayString(s(u.dayData.startTime)),1)]),append:e.withCtx(()=>[e.createElementVNode("span",Io,e.toDisplayString(s(u.dayData.endTime)),1),e.createTextVNode(" "),e.createVNode(d,{style:{color:"#ffab02","vertical-align":"baseline","font-size":"20px"},class:"ml-2 mr-2 icon"},{default:e.withCtx(()=>[e.createTextVNode(" mdi-white-balance-sunny ")]),_:1}),e.createTextVNode(" "+e.toDisplayString(s(n.value)),1)]),_:1},8,["modelValue","min","max","step"]))]),_:1})}}}),[["__scopeId","data-v-2c27d93d"]]),Ao=["innerHTML"],Do=R(e.defineComponent({__name:"VBuildingChooserV5Overlay",props:{cdnFileResolver:{type:[String,Function]},colorCallback:{type:Function},currentCamera:{},selectedId:{}},emits:["onClick","onHoverOver","onHoverOut","updateSvgContainer"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(),r=e.ref(),s=e.ref(t.selectedId),i=e.reactive({});e.watchEffect(()=>{for(const l in i){const{element:d,state:c}=i[l],{r:k,g:f,b:p,a:g,s:V}=t.colorCallback(l,c)||{r:0,g:0,b:0,a:0,s:0};d.style.fill=`rgba(${k}, ${f}, ${p}, ${g/255})`,d.style.stroke=`rgb(${k}, ${f}, ${p})`,d.style.strokeWidth=V.toString()}}),e.watch(()=>t.selectedId,()=>{s.value=t.selectedId}),e.watch(s,()=>{for(const l in i)i[l].state==="selected"&&l!==s.value?i[l].state="idle":i[l].state!=="selected"&&l===s.value&&(i[l].state="selected")}),e.watchEffect(async()=>{n.value=await q.loadText(z(t.cdnFileResolver,t.currentCamera.overlayFilename)),u()}),e.watch(()=>r.value,()=>{r.value&&new ResizeObserver(u).observe(r.value)});function u(){e.nextTick(()=>{const l=r.value.firstChild;if(l){if(a("updateSvgContainer",l),!l.hasAttribute("viewBox")){const c=`0 0 ${l.getAttribute("width")} ${l.getAttribute("height")}`;l.setAttribute("viewBox",c)}l.setAttribute("width",r.value.offsetWidth.toString()),l.setAttribute("height",r.value.offsetHeight.toString()),l.querySelectorAll("[data-building-id]").forEach(c=>{c.style.strokeWidth="0",c.style.stroke="rgba(255,255,255,0)",c.style.fill="rgba(255,255,255,0)",c.querySelectorAll("path").forEach(f=>{f.style.stroke="inherit",f.style.fill="inherit"});const k=c.getAttribute("data-building-id");i[k]={element:c,state:s.value===k?"selected":"idle"},c.addEventListener("mouseover",()=>{i[k].state==="idle"&&(i[k].state="hover"),a("onHoverOver",k)}),c.addEventListener("mouseout",()=>{i[k].state==="hover"&&(i[k].state="idle"),a("onHoverOut",k)}),c.addEventListener("click",()=>{a("onClick",k)})})}})}return(l,d)=>(e.openBlock(),e.createBlock(e.Transition,null,{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("div",{ref_key:"svgContainer",ref:r,key:l.currentCamera.overlayFilename,class:"w-100 h-100 position-absolute top-left",style:{"z-index":"4"},innerHTML:n.value},null,8,Ao))]),_:1}))}}),[["__scopeId","data-v-09de986e"]]),Lo={class:"actions-bar position-absolute top-left d-flex w-100 justify-center align-center",style:{"z-index":"6"}},Fo={class:"pa-2 pr-0",style:{flex:"1"}},Mo={class:"pa-2 pr-0",style:{flex:"1"}},To={class:"pa-2",style:{flex:"2"}},Ro={class:"position-absolute bottom-right",style:{"z-index":"6",width:"50px",height:"50px"}},Oo=["innerHTML"],$o={style:{"z-index":"7"}},Uo=R(e.defineComponent({__name:"VBuildingChooserV5",props:{buildingChooserData:{},cdnFileResolver:{},colorCallback:{type:Function,default:()=>({r:0,g:0,b:0,a:0,s:0})},i18nConfig:{},customOverlayContent:{},selectedId:{},defaultCamera:{},defaultDay:{},defaultTime:{}},emits:["onClick","onHoverOver","onHoverOut","onMouseMove"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(),r=e.ref(),s=e.ref(),i=e.ref(),u=e.ref(!1),l=e.ref(),d=e.computed(()=>l.value.isHoverEnabled),c=e.ref({x:0,y:0,width:0,height:0}),k=e.ref(),f=e.ref(t.buildingChooserData);e.onMounted(()=>u.value=!0),e.watch([f,()=>t.cdnFileResolver,()=>t.defaultCamera],async()=>{t.cdnFileResolver&&(f.value||(f.value=await q.loadJson(z(t.cdnFileResolver,"/buildingChooser.json"))),t.defaultCamera?n.value=f.value.cameras.find(v=>v.cameraName===t.defaultCamera)||f.value.cameras[0]:n.value=f.value.cameras[0])},{immediate:!0}),e.watch([f,()=>t.cdnFileResolver,()=>t.defaultDay],()=>{f.value&&t.cdnFileResolver&&(t.defaultDay?r.value=n.value.sunsimDayOfYear.find(v=>v.dayOfYear===t.defaultDay)||n.value.sunsimDayOfYear[0]:r.value=n.value.sunsimDayOfYear[0])},{immediate:!0}),e.watch([f,()=>t.cdnFileResolver,()=>t.defaultTime],()=>{f.value&&t.cdnFileResolver&&(t.defaultTime?s.value=r.value.timeSamples.find(v=>v.timeInHours===t.defaultTime)||r.value.timeSamples[0]:s.value=r.value.timeSamples.find(v=>v.timeInHours===r.value.defaultHour)||r.value.timeSamples[0])},{immediate:!0});function p(v){const S=r.value;n.value=v,e.nextTick(()=>{g(n.value.sunsimDayOfYear.find(y=>y.dayOfYear===S.dayOfYear)||n.value.sunsimDayOfYear[0])})}function g(v){const S=s.value;r.value=v,e.nextTick(()=>{V(r.value.timeSamples.find(y=>y.timeInHours===S.timeInHours)||r.value.timeSamples.find(y=>y.timeInHours===r.value.defaultHour)||r.value.timeSamples[0])})}function V(v){s.value=v}function C(v){a("onHoverOver",v),i.value=v}function h(v){a("onHoverOut",v),i.value=void 0}function A(v){const{layerX:S,layerY:y}=v;let _=v.target,M=!1;for(;_;)if(_===k.value){M=!0;break}else _=_.parentElement;M?c.value={x:S,y,width:v.currentTarget.clientWidth,height:v.currentTarget.clientHeight}:c.value=void 0,a("onMouseMove",v,c.value)}return(v,S)=>{const y=e.resolveComponent("v-skeleton-loader");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(y,{type:"image",class:"w-100 h-100 position-relative",loading:!u.value||!f.value},{default:e.withCtx(()=>[e.createVNode(e.Transition,null,{default:e.withCtx(()=>[e.createElementVNode("div",{class:"w-100 h-100 position-relative",onMousemove:A},[e.createElementVNode("div",Lo,[e.createElementVNode("div",Fo,[e.createVNode(Eo,{"building-chooser-data":f.value,"current-camera":n.value,onOnCameraChange:p},null,8,["building-chooser-data","current-camera"])]),e.createElementVNode("div",Mo,[e.createVNode(Bo,{"camera-data":n.value,"current-day":r.value,onOnDayChange:g},null,8,["camera-data","current-day"])]),e.createElementVNode("div",To,[e.createVNode(No,{"day-data":r.value,"current-time":s.value,onOnTimeChange:V},null,8,["day-data","current-time"])])]),e.createElementVNode("div",Ro,[e.createVNode(he,{longitude:n.value.cameraRotation.y+270},null,8,["longitude"])]),e.createVNode(fe,{position:"relative"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value.cameras,_=>(e.openBlock(),e.createBlock(Vo,{key:_.overlayFilename,"camera-data":_,"cdn-file-resolver":t.cdnFileResolver,"current-time":s.value},null,8,["camera-data","cdn-file-resolver","current-time"]))),128)),t.customOverlayContent?(e.openBlock(),e.createElementBlock("div",{key:0,class:"w-100 h-100 position-absolute top-left",style:{"z-index":"5","pointer-events":"none"},innerHTML:t.customOverlayContent},null,8,Oo)):e.createCommentVNode("",!0),e.createVNode(Do,{"cdn-file-resolver":v.cdnFileResolver,"color-callback":t.colorCallback,"current-camera":n.value,"selected-id":t.selectedId,onOnClick:S[0]||(S[0]=_=>a("onClick",_)),onOnHoverOver:C,onOnHoverOut:h,onUpdateSvgContainer:S[1]||(S[1]=_=>k.value=_)},null,8,["cdn-file-resolver","color-callback","current-camera","selected-id"])]),_:1}),v.$slots.popup&&c.value&&i.value?(e.openBlock(),e.createBlock(pe,{key:0,"is-hoverable":d.value,pos:c.value},{default:e.withCtx(()=>[e.createElementVNode("div",$o,[e.renderSlot(v.$slots,"popup",e.normalizeProps(e.guardReactiveProps({hoverId:i.value,hoverable:d.value})),void 0,!0)])]),_:3},8,["is-hoverable","pos"])):e.createCommentVNode("",!0)],32)]),_:3})]),_:3},8,["loading"]),e.createVNode(le,{ref_key:"hoverProbe",ref:l},null,512)],64)}}}),[["__scopeId","data-v-b9c6f06a"]]);var ke={};Object.defineProperty(ke,"__esModule",{value:!0});var Ho=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(m){return typeof m}:function(m){return m&&typeof Symbol=="function"&&m.constructor===Symbol&&m!==Symbol.prototype?"symbol":typeof m},Po=typeof window<"u"&&typeof window.document<"u",jo=typeof process<"u"&&process.versions!=null&&process.versions.node!=null,Yo=(typeof self>"u"?"undefined":Ho(self))==="object"&&self.constructor&&self.constructor.name==="DedicatedWorkerGlobalScope",zo=typeof window<"u"&&window.name==="nodejs"||typeof navigator<"u"&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom")),Wo=typeof Deno<"u"&&typeof Deno.version<"u"&&typeof Deno.version.deno<"u",Go=ke.isBrowser=Po;ke.isWebWorker=Yo,ke.isNode=jo,ke.isJsDom=zo,ke.isDeno=Wo;const Qo={id:"player-wrapper"},qo={id:"player-sizer"},Zo={class:"player-control",id:"controls-top-left"},Jo={class:"player-control",id:"controls-top-center"},Xo={class:"player-control",id:"controls-top-right"},Ko={class:"player-control",id:"controls-center-left"},en={class:"player-control",id:"controls-center-center"},tn={class:"player-control",id:"controls-center-right"},on={class:"player-control",id:"controls-bottom-left"},nn={class:"player-control",id:"controls-bottom-center"},an={class:"player-control",id:"controls-bottom-right"},rn={id:"main-canvas"},ln=R(e.defineComponent({__name:"VPlayer",props:{cdnFileResolver:{},interiorId:{},apartmentId:{},currentCameraId:{},showStaticImage:{type:Boolean},isFullScreen:{type:Boolean},mouseSensitivity:{default:1}},emits:["newCameraCallback","newRotationCallback","newFloorCallback","newFovCallback","playerApiCallback","newSizeCallback"],setup(m,{emit:o}){const t=Ge.PlayerV2,a=m,n=o,r=e.ref(),s=e.ref(),i=e.ref(0),u=e.ref(0);return e.watch([()=>a.cdnFileResolver,()=>a.interiorId,()=>a.apartmentId],async()=>{r.value&&await r.value.loadInterior(z(a.cdnFileResolver,`/${a.interiorId}/${a.apartmentId}`),s.value,!1)}),e.watch([()=>a.cdnFileResolver,()=>a.interiorId,()=>a.apartmentId],async()=>{r.value&&await r.value.loadInterior(z(a.cdnFileResolver,`/${a.interiorId}/${a.apartmentId}`),void 0,!1)},{deep:!0}),e.watch(()=>a.currentCameraId,l=>{r.value&&(s.value=l,r.value.goToCamera(l,!0))}),e.watch(r,l=>{n("playerApiCallback",l);const d=r.value.getCurrentCamera();d&&(s.value=d.id)}),e.onMounted(async()=>{const k={initialized:()=>{r.value=t.Main.getPlayerAPI();const p=r.value.getCurrentCamera();p&&(s.value=p.id),n("newCameraCallback",s.value)},newCamera:p=>{n("newCameraCallback",p.id),n("newFloorCallback",p.floorLevel),r.value&&r.value.resetMarkerBehaviour(0),s.value=p.id},newFOV:p=>{n("newFovCallback",p),u.value=p},newRotation:p=>{const g=p+0;n("newRotationCallback",g),i.value=g}};if(!Go)return;const f=await new t.Main(z(a.cdnFileResolver,`/${a.interiorId}/${a.apartmentId}`),"qpc",k,void 0,a.currentCameraId);f&&(f.handleWindowResize(),window.addEventListener("resize",f.handleWindowResize.bind(f)),f.animate(),r.value=t.Main.getPlayerAPI(),r.value&&r.value.setLookSensitivity(a.mouseSensitivity))}),e.onBeforeUnmount(()=>{r.value&&r.value.destroy()}),(l,d)=>(e.openBlock(),e.createElementBlock("div",Qo,[e.createElementVNode("div",qo,[e.renderSlot(l.$slots,"slideshow-image",{},void 0,!0),e.createElementVNode("div",Zo,[e.renderSlot(l.$slots,"top-left",{},void 0,!0)]),e.createElementVNode("div",Jo,[e.renderSlot(l.$slots,"top-center",{},void 0,!0)]),e.createElementVNode("div",Xo,[e.renderSlot(l.$slots,"top-right",{},void 0,!0)]),e.createElementVNode("div",Ko,[e.renderSlot(l.$slots,"center-left",{},void 0,!0)]),e.createElementVNode("div",en,[e.renderSlot(l.$slots,"center-center",{},void 0,!0)]),e.createElementVNode("div",tn,[e.renderSlot(l.$slots,"center-right",{},void 0,!0)]),e.createElementVNode("div",on,[e.renderSlot(l.$slots,"bottom-left",{},void 0,!0)]),e.createElementVNode("div",nn,[e.renderSlot(l.$slots,"bottom-center",{},void 0,!0)]),e.createElementVNode("div",an,[e.renderSlot(l.$slots,"bottom-right",{},void 0,!0)]),e.createElementVNode("div",rn,[e.createElementVNode("canvas",{id:"qpc",style:e.normalizeStyle(l.showStaticImage?"visibility:hidden":"visibility:visible")},null,4)])])]))}}),[["__scopeId","data-v-434c2592"]]),sn={style:{width:"24px",height:"24px"},viewBox:"0 0 18 16",xmlns:"http://www.w3.org/2000/svg"},cn=["stroke"],dn=["stroke"],mn={class:"floor-level-label"},un=R(e.defineComponent({__name:"VFloorLevel",props:{level:{default:0},floorLevels:{default:()=>[]}},emits:["level"],setup(m,{emit:o}){const t=m,a=o,n=e.inject(X),r=e.computed(()=>{const d=t.floorLevels;return d.sort(),d}),s=e.computed(()=>r.value.indexOf(t.level)+1<=r.value.length/2?"lower":"upper"),i=e.computed(()=>s.value==="lower"),u=e.computed(()=>s.value==="upper");function l(){const d=t.level+1;d>=r.value.length?a("level",r.value[0]):a("level",r.value[d])}return(d,c)=>{const k=e.resolveComponent("v-btn"),f=e.resolveComponent("v-tooltip");return e.openBlock(),e.createBlock(f,{right:"",attach:""},{activator:e.withCtx(({props:p})=>[e.createVNode(k,e.mergeProps({style:{cursor:"pointer"},density:"comfortable",elevation:"1",icon:""},p,{onClick:l}),{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("svg",sn,[e.createElementVNode("path",{d:"M8.98034 10.3472L1.54055 5.8855L8.98034 1.42384L16.4201 5.8855L8.98034 10.3472Z",fill:"white",stroke:u.value?"black":"#999999","stroke-width":"1.5","stroke-linejoin":"round"},null,8,cn),e.createElementVNode("path",{d:"M8.98034 14.7993L1.54055 10.3376L8.98034 5.87599L16.4201 10.3376L8.98034 14.7993Z",fill:"white",stroke:i.value?"black":"#999999","stroke-width":"1.5","stroke-linejoin":"round"},null,8,dn)]))]),_:2},1040)]),default:e.withCtx(()=>[e.createElementVNode("span",mn,e.toDisplayString(e.unref(n).getLabel(s.value))+" "+e.toDisplayString(e.unref(n).getLabel("floor")),1)]),_:1})}}}),[["__scopeId","data-v-5ce91d8e"]]),pn={class:"d-none d-md-inline"},fn=R(e.defineComponent({__name:"VInteriorSelector",props:{cdnFileResolver:{type:[String,Function]},availableArchetypes:{},selectedIndex:{}},emits:["selectInterior"],setup(m,{emit:o}){const t=m,a=o,n=e.inject(X);return(r,s)=>{const i=e.resolveComponent("v-icon"),u=e.resolveComponent("v-btn"),l=e.resolveComponent("v-img"),d=e.resolveComponent("v-list-item-title"),c=e.resolveComponent("v-list-item"),k=e.resolveComponent("v-list"),f=e.resolveComponent("v-menu");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(f,{transition:"slide-x-reverse-transition",location:"top end",origin:"end bottom",elevation:"0"},{activator:e.withCtx(({props:p})=>[e.createVNode(u,e.mergeProps({rounded:""},p),{default:e.withCtx(()=>[e.createVNode(i,null,{default:e.withCtx(()=>[e.createTextVNode("mdi-palette-outline")]),_:1}),e.createElementVNode("span",pn,e.toDisplayString(e.unref(n).getLabel("interior")),1)]),_:2},1040)]),default:e.withCtx(()=>[e.createVNode(k,{class:"interior-selector-list"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.availableArchetypes,(p,g)=>(e.openBlock(),e.createBlock(c,{density:"compact",key:`at-menuitem-${g}`,onClick:V=>a("selectInterior",p.archetypeID),active:g===r.selectedIndex,class:"interior-selector-list-item"},{prepend:e.withCtx(()=>[e.createVNode(l,{width:"100","max-width":"100",height:"66",src:p.url},null,8,["src"])]),default:e.withCtx(()=>[e.createVNode(d,{class:"text-caption py-2 px-4"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n).get(p.title)),1)]),_:2},1024)]),_:2},1032,["onClick","active"]))),128))]),_:1})]),_:1})])}}}),[["__scopeId","data-v-f52a4315"]]),hn="data:image/png;base64,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",gn="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGwAAABsCAYAAACPZlfNAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAMdSURBVHgB7dxBTttQEMbxsU32idouujM7FhjlBqQnaG5AbkBvUPUEpTegN8gR6AlAgQU70lWlQkUUscR+fVZrRKlL7CTQN6P/T0IJwYkUDfNhvzdEBAAAAAAAAAAAAAAAAAAAAAD+i+t+v3+5vT0Qg2IxqHBuP47jXTHIZMHEuYETeScGmSvYZb9fFiv1d7sWY9FcwWLn9u7ux/FbMcZeJPo4vLsrMhJjTBXsXhxWzMWiqYLdj8NKlCR7YoipgjnnhjUPDv11WVeMMFOwqywb+Zu6wnQlz81ck5kp2GNnhLmha7JIDCgjLy+K60cOmSVxvNk7OZmJciY6LM/z4YJDukVRmDj5sBGJcbywGLUnJAqpj0Qfh6mPw4smx/pY7GmPRfUd5uNw0PRYC7GoPxIbxGHFQiyqjsQ2cVjRHouqO8xHXOvVeP+cfVFMeySOpCV3bzVfI7WRuEwcVlxRvHl1dnYkCqntsFWiTfO8h+ZIXPqMT/PGpsqC1WxUtpVq3dhUWbC6jcrWr6F03kNnJK7hTE9rLKor2BrisKJy3kNdwdYRh3evpTAW9UXiGi98y1jUNu+hqmBXWTZcUxxWure3t31RRFXBoieIMG1jcGqWphrMbSxL1byHmg5rMLexrPIXQc3Jh5qCPekZnXMjUUJFJK6yMt+Ulo1NFR3WZm5jWVrmPXREYou5jWVpmfcIPhKfIw4rGmIx+A57jjisaIjF4AsWRVG7nWXnjhK/fJWUEefcuN1Tw4/FoCOxaRz6N3Hi22M8v7n5tDmd/hFp37a20qTTGcRR9F4aLGslSZL2jo+/SqA2JGALxthmviMO/RsY905Pv/zroNfn51N/c1h+XWfZbl7ug0VR2Um1i75Fno/8zQcJVNAd9mNn5+KvxV4feT4mx/P5/PPDbmrje5aN/N+DPV+8wYMfTV9OJpsSqGALVn78kI/D49/fzqKiOKiLvFWVkbnR6exHv7ouLR8LeQwu2IL57vroIy9NRA4ei7x1qiLTF2/6YjIJNhbxwEWamvkndgAAAAAAAAAAAAAAAAAAAAAAAAAAAABYxU+ILzGcMmFd0QAAAABJRU5ErkJggg==",vn=e.defineComponent({__name:"VCompass",props:{rotation:{}},setup(m){const o=m,t=e.ref(gn),a=e.ref({backgroundImage:`url(${hn})`,backgroundSize:"contain"}),n=e.computed(()=>({transform:`rotate(${-o.rotation+180}deg)`}));return(r,s)=>{const i=e.resolveComponent("v-img");return e.openBlock(),e.createElementBlock("div",{style:e.normalizeStyle(a.value),class:"compass-wrapper"},[e.createVNode(i,{class:"compass-needle",src:t.value,style:e.normalizeStyle(n.value)},null,8,["src","style"])],4)}}}),kn="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAllBMVEUAAAD/rwD/rwD/qgP/qwL/qAL/qwP/qwH/rAL/rAL/qwL/qQD/qwL/qwD/qQD/qwL/pQD/qgH/nwD/pwD/qQL/rAL/qwD/qwT/rAP/qwL/rAL/rAD/rAL/qgD/qwL/qQP/rAP/rAH/qgH/qwL/qwD/qgL/rwD/qgD/qwH/qgD/qgL/rAD/qgD/qgD/qwH/rAP/qgX/qwA+O5E+AAAAMnRSTlMAECBg/3C/v5Dff4+PT1/PMN8QII9vf0CfgO9vnzDvUF+vr3BA3zA/z2+fX59g71AwcDsf6p0AAAFGSURBVHicvdRtT8MgEABgaM9hu1aHXV/cpm6zWt829f//OYEK9qC3NDF6HxYCTw5GuWPsd8GjqTIGOJtIZwDi/ymnKPflOSTub6cAcwdnkHk5AQY2v3Dzl2phga1EFkl5hScLbZc+LbUs/FltK5OpLpsmrS0NpbLLSu3Er1dgIsn0cdabEdlHlICL5IZSRq5gELcn7DCnsfQL24AX5PeNfAlAHSEOaYrFXaNiqwa7kO7V9L1dt9u25kX58cBY7dbZYz/MKdr2o06nrZ6klNX4AYRdf8aHzkL6QtxAG9KculjhS0nJMO0rSVmF5ZyWnn2jFC+36vcgLTzq+3lPRx6XrjjTqQ7iqJxY6+KLydp0ZWhrVHWE0JoqHq1NSHBxF0h+1Mh6LUMM5LC/Kht8h+5nG9zeTtbt37Ti3XT6+d29pkTXTZVEfAEKARRF2iiwhQAAAB10RVh0U29mdHdhcmUAQGx1bmFwYWludC9wbmctY29kZWP1QxkeAAAAAElFTkSuQmCC",Cn={class:"d-flex flex-column align-center justify-center clock-face"},yn={class:"clock-icon"},wn={class:"clock-value grey--text text--darken-3"},_n=R(e.defineComponent({__name:"VTimeOfDay",props:{hours:{default:0},minutes:{default:0}},setup(m){const o=m,t=e.computed(()=>[a(o.hours),":",a(o.minutes)].join(""));function a(n){return("0"+n).slice(-2)}return(n,r)=>{const s=e.resolveComponent("v-img");return e.openBlock(),e.createElementBlock("div",Cn,[e.createElementVNode("div",yn,[e.createVNode(s,{src:e.unref(kn),"aspect-ratio":"1"},null,8,["src"])]),e.createElementVNode("div",wn,e.toDisplayString(t.value),1)])}}}),[["__scopeId","data-v-cd73fd81"]]),bn=e.defineComponent({__name:"VViewModeToggle",props:{showStaticImage:{type:Boolean}},emits:["toggle"],setup(m,{emit:o}){const t=m,a=o,n=e.inject(X),r=e.computed(()=>{let s="virtualTour";return t.showStaticImage||(s="slideShow"),s});return(s,i)=>{const u=e.resolveComponent("v-btn");return e.openBlock(),e.createBlock(u,{color:"darken-2",elevation:"1",rounded:"",plain:"",onClick:i[0]||(i[0]=l=>a("toggle"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n).getLabel(r.value)),1)]),_:1})}}}),de=m=>(e.pushScopeId("data-v-b9eb5380"),m=m(),e.popScopeId(),m),Vn={key:0,class:"tutorial"},En={key:0,class:"desktop-content"},Bn={class:"d-inline-flex"},xn={class:"box col"},Sn=de(()=>e.createElementVNode("div",{class:"tutorial-icon d-flex align-items-center justify-center"},[e.createElementVNode("svg",{width:"100",height:"65",viewBox:"0 0 100 65",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("path",{d:"M72 30H86.9736M86.9736 30L81 36M86.9736 30L81 24",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e.createElementVNode("path",{d:"M27.9736 30H13M13 30L18.9736 36M13 30L18.9736 24",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e.createElementVNode("path",{d:"M36 30H64V40C64 47.732 57.732 54 50 54V54C42.268 54 36 47.732 36 40V30Z",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M36 25C36 17.268 42.268 11 50 11V11V30H36V25Z",fill:"#FF3E3E",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M64 25C64 17.268 57.732 11 50 11V11V30H64V25Z",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M53.25 23V30C53.25 31.7949 51.7949 33.25 50 33.25C48.2051 33.25 46.75 31.7949 46.75 30V23C46.75 21.2051 48.2051 19.75 50 19.75C51.7949 19.75 53.25 21.2051 53.25 23Z",fill:"white",stroke:"black","stroke-width":"1.5"})])],-1)),In={class:"text mt-3"},Nn={class:"box col"},An=de(()=>e.createElementVNode("div",{class:"tutorial-icon d-flex align-items-center justify-center"},[e.createElementVNode("svg",{width:"100",height:"65",viewBox:"0 0 100 65",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("path",{d:"M79.9936 27.0175C79.9881 19.276 66.3321 13.0323 49.492 13.0719C32.652 13.1116 19.0049 19.4194 19.0105 27.1609C19.016 34.9025 32.6721 41.1461 49.5121 41.1065C66.3521 41.0669 79.9992 34.759 79.9936 27.0175Z",fill:"white",stroke:"#B3B3B3","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M61.8032 45.179L56.543 50.3218V28.0361L72.543 43.4647H65.0909L67.9402 50.3218L64.6526 52.0361L61.8032 45.179Z",fill:"white",stroke:"black","stroke-width":"1.5","stroke-linejoin":"round"}),e.createElementVNode("path",{d:"M50.502 28.0361L46.502 28.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M50.502 28.0361L46.502 28.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M50.502 28.0361L46.502 28.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M66.502 28.0361L62.502 28.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M66.502 28.0361L62.502 28.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M66.502 28.0361L62.502 28.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1582 24.0361L49.1582 21.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1582 24.0361L49.1582 21.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1582 24.0361L49.1582 21.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M60.502 24.0361L63.502 21.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M60.502 24.0361L63.502 21.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M60.502 24.0361L63.502 21.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M56.502 22.0361L56.502 18.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M56.502 22.0361L56.502 18.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M56.502 22.0361L56.502 18.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1582 32.0361L49.1582 35.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1582 32.0361L49.1582 35.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1582 32.0361L49.1582 35.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"})])],-1)),Dn={class:"text mt-3"},Ln={class:"box col"},Fn=de(()=>e.createElementVNode("div",{class:"tutorial-icon d-flex align-items-center justify-center"},[e.createElementVNode("svg",{width:"100",height:"65",viewBox:"0 0 100 65",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("path",{d:"M36 33H64V43C64 50.732 57.732 57 50 57V57C42.268 57 36 50.732 36 43V33Z",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M36 28C36 20.268 42.268 14 50 14V14V33H36V28Z",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M64 28C64 20.268 57.732 14 50 14V14V33H64V28Z",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M53.25 26V33C53.25 34.7949 51.7949 36.25 50 36.25C48.2051 36.25 46.75 34.7949 46.75 33V26C46.75 24.2051 48.2051 22.75 50 22.75C51.7949 22.75 53.25 24.2051 53.25 26Z",fill:"#FF3E3E",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M74.5352 20.7593L80.3458 26.5699C80.9316 27.1557 80.9316 28.1055 80.3458 28.6913C79.76 29.277 78.8103 29.277 78.2245 28.6913L72.4138 22.8806L74.5352 20.7593Z",fill:"black",stroke:"black","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("circle",{cx:"66.5",cy:"15.5",r:"9.75",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("rect",{x:"66",y:"11",width:"1",height:"9",fill:"black",stroke:"black","stroke-width":"0.75","stroke-linejoin":"round"}),e.createElementVNode("rect",{x:"71",y:"15",width:"1",height:"9",transform:"rotate(90 71 15)",fill:"black",stroke:"black","stroke-width":"0.75","stroke-linejoin":"round"})])],-1)),Mn={class:"text mt-3"},Tn={class:"d-inline-flex space-around"},Rn={class:"box col"},On=de(()=>e.createElementVNode("div",{class:"tutorial-icon d-flex align-items-center justify-center"},[e.createElementVNode("svg",{width:"100",height:"65",viewBox:"0 0 100 65",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("rect",{x:"65.0967",y:"34.3228",width:"20.9032",height:"20.9032",rx:"2",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("rect",{x:"39.5488",y:"29.6777",width:"20.9032",height:"20.9032",rx:"2",transform:"rotate(-90 39.5488 29.6777)",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("rect",{x:"60.4512",y:"34.3228",width:"20.9032",height:"20.9032",rx:"2",transform:"rotate(90 60.4512 34.3228)",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("rect",{x:"34.9033",y:"55.2261",width:"20.9032",height:"20.9032",rx:"2",transform:"rotate(-180 34.9033 55.2261)",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M77.7025 44.3796C77.9599 44.5798 77.9599 44.9688 77.7025 45.169L74.6621 47.5338C74.3337 47.7892 73.8551 47.5552 73.8551 47.1391L73.8551 42.4095C73.8551 41.9935 74.3337 41.7594 74.6621 42.0149L77.7025 44.3796Z",fill:"#FF3E3E"}),e.createElementVNode("path",{d:"M49.6047 17.0724C49.8049 16.815 50.1939 16.815 50.3941 17.0724L52.7589 20.1128C53.0143 20.4412 52.7803 20.9198 52.3642 20.9198L47.6346 20.9198C47.2185 20.9198 46.9845 20.4412 47.2399 20.1128L49.6047 17.0724Z",fill:"#FF3E3E"}),e.createElementVNode("path",{d:"M50.3953 46.9281C50.1951 47.1855 49.8061 47.1855 49.6059 46.9281L47.2411 43.8877C46.9857 43.5592 47.2197 43.0807 47.6358 43.0807L52.3654 43.0807C52.7815 43.0807 53.0155 43.5592 52.7601 43.8877L50.3953 46.9281Z",fill:"#FF3E3E"}),e.createElementVNode("path",{d:"M22.2975 45.1692C22.0401 44.969 22.0401 44.58 22.2975 44.3798L25.3379 42.0151C25.6663 41.7596 26.1449 41.9937 26.1449 42.4097L26.1449 47.1393C26.1449 47.5554 25.6663 47.7894 25.3379 47.534L22.2975 45.1692Z",fill:"#FF3E3E"})])],-1)),$n={class:"text mt-3"},Un={key:1,class:"d-flex flex-column tablet-mobile-content"},Hn={class:"box horizontal mt-3"},Pn=de(()=>e.createElementVNode("div",{class:"tutorial-icon d-flex align-items-center justify-center"},[e.createElementVNode("svg",{width:"101",height:"65",viewBox:"0 0 101 65",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("path",{d:"M68 28H87.9736M87.9736 28L82 34M87.9736 28L82 22",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e.createElementVNode("path",{d:"M33.9727 28H13.999M13.999 28L19.9727 34M13.999 28L19.9727 22",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e.createElementVNode("path",{d:"M57.3126 51.1276L62.5533 49.7234C65.3195 48.9822 67.2473 46.4813 67.2601 43.6176C67.2626 43.0532 67.1898 42.4909 67.0438 41.9457L64.9992 34.3153C64.7491 33.3818 63.7895 32.8278 62.8559 33.0779C61.9223 33.328 61.3683 34.2876 61.6185 35.2212L61.0361 33.0479C60.7502 31.9809 59.6536 31.3478 58.5866 31.6337C57.5197 31.9195 56.8865 33.0162 57.1724 34.0831L56.7195 32.3928C56.3979 31.1925 55.1641 30.4802 53.9638 30.8018C52.7635 31.1234 52.0512 32.3572 52.3728 33.5575L50.6258 27.0375C50.3399 25.9705 49.2432 25.3374 48.1763 25.6233C47.1094 25.9091 46.4762 27.0058 46.7621 28.0727L50.3855 41.5957C49.2796 40.7276 47.5926 39.524 46.3279 38.6369C45.3814 37.9729 44.0801 38.2068 43.4137 39.1516C42.8107 40.0066 42.9238 41.1741 43.6798 41.8975L51.8691 49.7332C53.3154 51.1171 55.3791 51.6457 57.3126 51.1276Z",fill:"white"}),e.createElementVNode("path",{d:"M53.7316 38.6286L52.6963 34.7649M52.6963 34.7649L50.6258 27.0375C50.3399 25.9705 49.2432 25.3374 48.1763 25.6233V25.6233C47.1094 25.9091 46.4762 27.0058 46.7621 28.0727L50.3855 41.5957C49.2796 40.7276 47.5926 39.524 46.3279 38.6369C45.3814 37.9729 44.0801 38.2068 43.4137 39.1516V39.1516C42.8107 40.0066 42.9238 41.1741 43.6798 41.8975L51.8691 49.7332C53.3154 51.1171 55.3791 51.6457 57.3126 51.1276L62.5533 49.7234C65.3195 48.9822 67.2473 46.4813 67.2601 43.6176V43.6176C67.2626 43.0532 67.1898 42.4909 67.0438 41.9457L64.9992 34.3153C64.7491 33.3818 63.7895 32.8278 62.8559 33.0779V33.0779V33.0779C61.9223 33.328 61.3683 34.2876 61.6185 35.2212L61.942 36.4286M52.6963 34.7649L52.3728 33.5575C52.0512 32.3572 52.7635 31.1234 53.9638 30.8018V30.8018C55.1641 30.4802 56.3979 31.1925 56.7195 32.3928L57.3018 34.5661M58.2077 37.9469L57.3018 34.5661M57.3018 34.5661L57.1724 34.0831C56.8865 33.0162 57.5197 31.9195 58.5866 31.6337V31.6337C59.6536 31.3478 60.7502 31.9809 61.0361 33.0479L61.942 36.4286M62.3302 37.8775L61.942 36.4286",stroke:"black","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})])],-1)),jn={class:"text ml-2"},Yn={class:"box horizontal mt-3"},zn=de(()=>e.createElementVNode("div",{class:"tutorial-icon d-flex align-items-center justify-center"},[e.createElementVNode("svg",{width:"99",height:"65",viewBox:"0 0 99 65",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("path",{d:"M79.9927 29.9814C79.9871 22.2398 66.3311 15.9962 49.491 16.0358C32.651 16.0754 19.0039 22.3833 19.0095 30.1248C19.015 37.8663 32.6711 44.11 49.5111 44.0704C66.3512 44.0308 79.9982 37.7229 79.9927 29.9814Z",fill:"white",stroke:"#B3B3B3","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M50.5 31L46.5 31",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M50.5 31L46.5 31",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M50.5 31L46.5 31",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M66.5 31L62.5 31",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M66.5 31L62.5 31",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M66.5 31L62.5 31",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1562 27L49.1562 24",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1562 27L49.1562 24",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1562 27L49.1562 24",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M60.5 27L63.5 24",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M60.5 27L63.5 24",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M60.5 27L63.5 24",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M56.5 25L56.5 21",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M56.5 25L56.5 21",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M56.5 25L56.5 21",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1562 35L49.1562 38",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1562 35L49.1562 38",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1562 35L49.1562 38",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M64.8126 54.1276L70.0533 52.7234C72.8195 51.9822 74.7473 49.4813 74.7601 46.6176C74.7626 46.0532 74.6898 45.4909 74.5438 44.9457L72.4992 37.3153C72.2491 36.3818 71.2895 35.8278 70.3559 36.0779C69.4223 36.328 68.8683 37.2876 69.1185 38.2212L68.5361 36.0479C68.2502 34.9809 67.1536 34.3478 66.0866 34.6337C65.0197 34.9195 64.3865 36.0162 64.6724 37.0831L64.2195 35.3928C63.8979 34.1925 62.6641 33.4802 61.4638 33.8018C60.2635 34.1234 59.5512 35.3572 59.8728 36.5575L58.1258 30.0375C57.8399 28.9705 56.7432 28.3374 55.6763 28.6233C54.6094 28.9091 53.9762 30.0058 54.2621 31.0727L57.8855 44.5957C56.7796 43.7276 55.0926 42.524 53.8279 41.6369C52.8814 40.9729 51.5801 41.2068 50.9137 42.1516C50.3107 43.0066 50.4238 44.1741 51.1798 44.8975L59.3691 52.7332C60.8154 54.1171 62.8791 54.6457 64.8126 54.1276Z",fill:"white"}),e.createElementVNode("path",{d:"M61.2316 41.6286L60.1963 37.7649M60.1963 37.7649L58.1258 30.0375C57.8399 28.9705 56.7432 28.3374 55.6763 28.6233V28.6233C54.6094 28.9091 53.9762 30.0058 54.2621 31.0727L57.8855 44.5957C56.7796 43.7276 55.0926 42.524 53.8279 41.6369C52.8814 40.9729 51.5801 41.2068 50.9137 42.1516V42.1516C50.3107 43.0066 50.4238 44.1741 51.1798 44.8975L59.3691 52.7332C60.8154 54.1171 62.8791 54.6457 64.8126 54.1276L70.0533 52.7234C72.8195 51.9822 74.7473 49.4813 74.7601 46.6176V46.6176C74.7626 46.0532 74.6898 45.4909 74.5438 44.9457L72.4992 37.3153C72.2491 36.3818 71.2895 35.8278 70.3559 36.0779V36.0779V36.0779C69.4223 36.328 68.8683 37.2876 69.1185 38.2212L69.442 39.4286M60.1963 37.7649L59.8728 36.5575C59.5512 35.3572 60.2635 34.1234 61.4638 33.8018V33.8018C62.6641 33.4802 63.8979 34.1925 64.2195 35.3928L64.8018 37.5661M65.7077 40.9469L64.8018 37.5661M64.8018 37.5661L64.6724 37.0831C64.3865 36.0162 65.0197 34.9195 66.0866 34.6337V34.6337C67.1536 34.3478 68.2502 34.9809 68.5361 36.0479L69.442 39.4286M69.8302 40.8775L69.442 39.4286",stroke:"black","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})])],-1)),Wn={class:"text ml-2"},Gn={class:"box horizontal mt-3"},Qn=de(()=>e.createElementVNode("div",{class:"tutorial-icon d-flex align-items-center justify-center"},[e.createElementVNode("svg",{width:"99",height:"65",viewBox:"0 0 99 65",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("path",{d:"M31 24.9736L31 10M31 10L25 15.9736M31 10L37 15.9736",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e.createElementVNode("path",{d:"M31 40L31 54.9736M31 54.9736L25 49M31 54.9736L37 49",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e.createElementVNode("path",{d:"M58.6512 44.3852L61.8162 42.5579C64.2963 41.126 65.5112 38.2114 64.7823 35.442C64.6387 34.8961 64.4229 34.3719 64.1407 33.883L60.1909 27.0418C59.7076 26.2048 58.6374 25.918 57.8003 26.4013C56.9633 26.8845 56.6765 27.9548 57.1598 28.7918L56.0348 26.8433C55.4825 25.8867 54.2593 25.5589 53.3027 26.1112C52.3462 26.6635 52.0184 27.8867 52.5707 28.8433L51.6957 27.3277C51.0744 26.2516 49.6983 25.8828 48.6221 26.5042C47.546 27.1255 47.1773 28.5016 47.7986 29.5777L44.4236 23.7321C43.8713 22.7755 42.6481 22.4477 41.6915 23C40.7349 23.5523 40.4072 24.7755 40.9595 25.7321L48.4595 38.7224L41.0923 40.5062C40.3398 40.6884 39.7721 41.3073 39.6555 42.0728C39.4961 43.1196 40.2199 44.096 41.268 44.2476L49.7609 45.4766L51.251 45.7252C53.7985 46.1503 56.4146 45.6766 58.6512 44.3852Z",fill:"white"}),e.createElementVNode("path",{d:"M50.4236 34.1244L48.4236 30.6603M48.4236 30.6603L44.4236 23.7321C43.8713 22.7755 42.6481 22.4477 41.6915 23V23C40.7349 23.5523 40.4072 24.7755 40.9595 25.7321L48.4595 38.7224L41.0923 40.5062C40.3398 40.6884 39.7721 41.3073 39.6555 42.0728V42.0728C39.4961 43.1196 40.2199 44.096 41.268 44.2476L49.7609 45.4766L51.251 45.7252C53.7985 46.1503 56.4146 45.6766 58.6512 44.3852L61.8162 42.5579C64.2963 41.126 65.5112 38.2114 64.7823 35.442V35.442C64.6387 34.8961 64.4229 34.3719 64.1407 33.883L60.1909 27.0418C59.7076 26.2048 58.6374 25.918 57.8003 26.4013V26.4013V26.4013C56.9633 26.8845 56.6765 27.9548 57.1598 28.7918L57.7848 29.8744M48.4236 30.6603L47.7986 29.5777C47.1773 28.5016 47.546 27.1255 48.6221 26.5042V26.5042C49.6983 25.8828 51.0744 26.2516 51.6957 27.3277L52.8207 29.2763M54.5707 32.3074L52.8207 29.2763M52.8207 29.2763L52.5707 28.8433C52.0184 27.8867 52.3462 26.6635 53.3027 26.1112V26.1112C54.2593 25.5589 55.4825 25.8867 56.0348 26.8433L57.7848 29.8744M58.5348 31.1734L57.7848 29.8744",stroke:"black","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})])],-1)),qn={class:"text ml-2"},Zn={class:"d-flex justify-space-between mt-3 mx-3 mb-0 tutorial-buttons"},Jn=R(e.defineComponent({__name:"VTutorial",props:{project:{}},emits:["closeTutorial"],setup(m,{emit:o}){const t=m,a=o,n=e.inject(X),r=e.ref(!0),s=e.ref(!1),i=e.computed(()=>[/Android/i,/webOS/i,/iPhone/i,/iPad/i,/iPod/i,/BlackBerry/i,/Windows Phone/i].some(k=>navigator.userAgent.match(k))),u=e.computed(()=>{const c=localStorage.getItem(`${t.project}-dont-show-tutorial`);return c&&a("closeTutorial"),c});function l(){s.value&&d(),r.value=!1,a("closeTutorial")}function d(){localStorage.setItem(`${t.project}-dont-show-tutorial`,"true")}return(c,k)=>{const f=e.resolveComponent("v-checkbox"),p=e.resolveComponent("v-btn");return e.openBlock(),e.createBlock(e.Transition,{name:"fade-transition"},{default:e.withCtx(()=>[r.value&&!u.value?(e.openBlock(),e.createElementBlock("div",Vn,[i.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",En,[e.createElementVNode("div",Bn,[e.createElementVNode("div",xn,[Sn,e.createElementVNode("div",In,e.toDisplayString(e.unref(n).getLabel("clickAndDragToLookAround")),1)]),e.createElementVNode("div",Nn,[An,e.createElementVNode("div",Dn,e.toDisplayString(e.unref(n).getLabel("clickOnTheCirclesToMoveAround")),1)]),e.createElementVNode("div",Ln,[Fn,e.createElementVNode("div",Mn,e.toDisplayString(e.unref(n).getLabel("useTheMouseWheelToZoom")),1)])]),e.createElementVNode("div",Tn,[e.createElementVNode("div",Rn,[On,e.createElementVNode("div",$n,e.toDisplayString(e.unref(n).getLabel("youCanAlsoUseTheArrowKeysToMoveAround")),1)])])])),i.value?(e.openBlock(),e.createElementBlock("div",Un,[e.createElementVNode("div",Hn,[Pn,e.createElementVNode("div",jn,e.toDisplayString(e.unref(n).getLabel("tapAndDragToLookAround")),1)]),e.createElementVNode("div",Yn,[zn,e.createElementVNode("div",Wn,e.toDisplayString(e.unref(n).getLabel("tapOnTheCirclesToMoveAround")),1)]),e.createElementVNode("div",Gn,[Qn,e.createElementVNode("div",qn,e.toDisplayString(e.unref(n).getLabel("useTwoFingersToZoom")),1)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Zn,[e.createVNode(f,{modelValue:s.value,"onUpdate:modelValue":k[0]||(k[0]=g=>s.value=g),label:e.unref(n).getLabel("dontShowAgain")},null,8,["modelValue","label"]),e.createVNode(p,{small:"",outlined:"",class:"mt-5",onClick:k[1]||(k[1]=g=>l())},{default:e.withCtx(()=>[e.createTextVNode("Ok")]),_:1})])])):e.createCommentVNode("",!0)]),_:1})}}}),[["__scopeId","data-v-b9eb5380"]]),Xn=m=>(e.pushScopeId("data-v-bd4f66c3"),m=m(),e.popScopeId(),m),Kn={class:"player-settings-ui"},ea={id:"settings-ui-form"},ta={class:"form-inputs"},oa={class:"setting-label"},na={class:"setting-label"},aa=["max","min","step"],ra={class:"setting-label"},la={class:"flex-grow-1 flex-shrink-0"},ia=["onUpdate:modelValue"],sa={key:3,"d-block":"",class:"mt-3"},ca={class:"d-flex justify-space-between"},da={class:"setting-label"},ma={class:"mt-5 d-block",style:{width:"300px"}},ua=Xn(()=>e.createElementVNode("div",{class:"setting-label"},"Enter Lut URL:",-1)),pa={class:"d-block",style:{width:"300px"}},fa={class:"form-buttons"},ha=R(e.defineComponent({__name:"VPlayerSettingsUi",props:{initialSettings:{}},emits:["updateSettings","saveSettings"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(f(t.initialSettings));e.watch(n,()=>{s()},{deep:!0});const r=e.computed(()=>{let p={};for(const[g,V]of Object.entries(n.value))g==="whitePoint"?p[g]=d(V.value):p[g]=V.value;return p});function s(){a("updateSettings",r.value)}function i(){const p=document.createElement("a");p.href=URL.createObjectURL(new Blob([JSON.stringify(r.value,null,2)]));const g=`player-settings-${Date.now()}.json`;p.download=g,p.style.display="none",document.body.appendChild(p),p.click(),document.body.removeChild(p)}function u(){a("saveSettings",r.value)}function l(){n.value=f(),a("updateSettings",r.value)}function d(p){const g=parseInt(p.substr(1,2),16)/255,V=parseInt(p.substr(3,2),16)/255,C=parseInt(p.substr(5,2),16)/255;return[g,V,C]}function c(p){var g=p.toString(16);return g.length==1?"0"+g:g}function k([p,g,V]){return"#"+c(parseInt((p*255).toString()))+c(parseInt((g*255).toString()))+c(parseInt((V*255).toString()))}function f(p={}){const g=["Cool 5","Cool 10","Cool 15","Cool 20","Cool 25","Warm 20","Warm 25","Warm 10","Warm 15","Warm 5","bw"];let V={temperature:6500,targetLuminance:1,exposureFovScale:.6,UNREAL_BLOOM_ENABLED:!0,sharpenFilter_amount:.6,UNREAL_BLOOM_STRENGTH:.3,TRANSITION_MOVEMENT_SCALE:1.3,whitePoint:[1,1,1],lut:"",...p};return{exposureFovScale:{label:"Exposure Fov Scale",type:"slider",min:0,max:1,step:.01,value:V.exposureFovScale},targetLuminance:{label:"Target Luminance",type:"slider",min:0,max:15,step:.1,value:V.targetLuminance},sharpenFilter_amount:{label:"Sharpen Filter Amount",type:"slider",min:0,max:100,step:.1,value:V.sharpenFilter_amount},UNREAL_BLOOM_ENABLED:{label:"Enable Bloom?",type:"boolean",value:V.UNREAL_BLOOM_ENABLED},UNREAL_BLOOM_STRENGTH:{label:"Bloom Strength",type:"slider",min:0,max:1,step:.01,value:V.UNREAL_BLOOM_STRENGTH},TRANSITION_MOVEMENT_SCALE:{label:"Transition Movement Speed",type:"slider",min:.2,max:25,step:.1,value:V.TRANSITION_MOVEMENT_SCALE},temperature:{label:"Temperature / White Balance",type:"slider",min:1e3,max:12e3,step:1,value:V.temperature},whitePoint:{label:"White Point",type:"color",value:k(V.whitePoint)},lut:{label:"Lut",type:"lut",items:g.map(C=>({text:C,value:`https://cdn.visuado.com/luts/${C}.png`})),value:V.lut}}}return(p,g)=>{const V=e.resolveComponent("v-text-field"),C=e.resolveComponent("v-slider"),h=e.resolveComponent("v-checkbox"),A=e.resolveComponent("v-btn"),v=e.resolveComponent("v-select"),S=e.resolveComponent("v-icon");return e.openBlock(),e.createElementBlock("div",Kn,[e.createElementVNode("form",ea,[e.createElementVNode("div",ta,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,(y,_,M)=>(e.openBlock(),e.createElementBlock("div",{key:M,"d-block":""},[y.type==="slider"?(e.openBlock(),e.createBlock(C,{key:0,modelValue:n.value[_].value,"onUpdate:modelValue":E=>n.value[_].value=E,onChange:s,max:y.max,min:y.min,step:y.step},{prepend:e.withCtx(()=>[e.createElementVNode("div",oa,e.toDisplayString(y.label),1)]),append:e.withCtx(()=>[e.createElementVNode("div",null,[e.createVNode(V,{modelValue:n.value[_].value,"onUpdate:modelValue":E=>n.value[_].value=E,"hide-details":"",dense:"",outlined:"",type:"number",max:y.max,min:y.min,step:y.step,style:{width:"90px"},onChange:s},null,8,["modelValue","onUpdate:modelValue","max","min","step"])])]),_:2},1032,["modelValue","onUpdate:modelValue","max","min","step"])):e.createCommentVNode("",!0),y.type==="boolean"?(e.openBlock(),e.createBlock(h,{key:1,modelValue:n.value[_].value,"onUpdate:modelValue":E=>n.value[_].value=E,onChange:s},{prepend:e.withCtx(()=>[e.createElementVNode("div",na,e.toDisplayString(y.label),1)]),append:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(y.value),1)]),_:2},1032,["modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0),y.type==="color"?(e.openBlock(),e.createElementBlock("div",{key:2,class:"d-flex",max:y.max,min:y.min,step:y.step},[e.createElementVNode("div",ra,e.toDisplayString(y.label),1),e.createElementVNode("div",la,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":E=>n.value[_].value=E,type:"color",onChange:s},null,40,ia),[[e.vModelText,n.value[_].value]])]),e.createElementVNode("div",null,[e.createVNode(V,{modelValue:n.value[_].value,"onUpdate:modelValue":E=>n.value[_].value=E,"hide-details":"",dense:"",outlined:"",readonly:"",type:"text",style:{width:"90px"},onChange:s},null,8,["modelValue","onUpdate:modelValue"])])],8,aa)):e.createCommentVNode("",!0),y.type==="lut"?(e.openBlock(),e.createElementBlock("div",sa,[e.createElementVNode("div",ca,[e.createElementVNode("div",da,e.toDisplayString(y.label),1),e.createElementVNode("div",null,[e.createVNode(A,{class:"ml-2","x-small":"",onClick:E=>n.value[_].value=null},{default:e.withCtx(()=>[e.createTextVNode(" Clear Lut ")]),_:2},1032,["onClick"])])]),e.createElementVNode("div",null,[e.createElementVNode("div",ma,[e.createElementVNode("div",null,[e.createVNode(v,{modelValue:n.value[_].value,"onUpdate:modelValue":E=>n.value[_].value=E,items:y.items,"item-title":"title","item-value":"value",dense:"",label:"Select Lut",onChange:s},null,8,["modelValue","onUpdate:modelValue","items"])])]),e.createElementVNode("div",null,[ua,e.createElementVNode("div",pa,[e.createElementVNode("div",null,[e.createVNode(V,{modelValue:n.value[_].value,"onUpdate:modelValue":E=>n.value[_].value=E,"hide-details":"",dense:"",type:"url",onChange:s},null,8,["modelValue","onUpdate:modelValue"])])])])])])):e.createCommentVNode("",!0)]))),128))]),e.createElementVNode("div",fa,[e.createVNode(A,{onClick:g[0]||(g[0]=y=>l())},{default:e.withCtx(()=>[e.createTextVNode("Reset")]),_:1}),e.createVNode(A,{class:"ml-2",onClick:g[1]||(g[1]=y=>i())},{default:e.withCtx(()=>[e.createTextVNode(" Download Json "),e.createVNode(S,{color:"black darken-1"},{default:e.withCtx(()=>[e.createTextVNode("mdi-download")]),_:1})]),_:1}),e.createVNode(A,{class:"ml-2",onClick:g[2]||(g[2]=y=>u())},{default:e.withCtx(()=>[e.createTextVNode(" Save Settings "),e.createVNode(S,{color:"black darken-1"},{default:e.withCtx(()=>[e.createTextVNode("mdi-save")]),_:1})]),_:1})])])])}}}),[["__scopeId","data-v-bd4f66c3"]]),ga=(m=>(e.pushScopeId("data-v-30593022"),m=m(),e.popScopeId(),m))(()=>e.createElementVNode("div",{id:"filler-div"},null,-1)),va={class:"moveable-body",id:"moveableDivHeader"},ka={class:"moveable-footer"},Ca=R(e.defineComponent({__name:"VMoveable",emits:["close","transform"],setup(m,{emit:o}){const t=o,a=e.ref("big");e.onMounted(()=>{n(document.getElementById("moveableDiv"))});function n(s){const i=document.getElementById(s.id+"Header");if(!i)return;let u=0,l=0,d=0,c=0;i.addEventListener("touchstart",k,{passive:!1}),i.addEventListener("touchend",p,{passive:!1}),i.addEventListener("mousedown",k,{passive:!1}),i.addEventListener("mouseup",p,{passive:!1});function k(g){g=g||window.event,g.preventDefault();let V=g;g.type==="touchstart"&&(V=g.touches[0]),d=V.clientX,c=V.clientY,document.addEventListener("mouseup",p,{passive:!1}),document.addEventListener("touchend",p,{passive:!1}),document.addEventListener("mousemove",f,{passive:!1}),document.addEventListener("touchmove",f,{passive:!1})}function f(g){g=g||window.event,g.preventDefault();let V=g;g.type==="touchmove"&&(V=g.touches[0]),u=d-V.clientX,l=c-V.clientY,d=V.clientX,c=V.clientY,s.style.top=s.offsetTop-l+"px",s.style.left=s.offsetLeft-u+"px"}function p(){document.removeEventListener("mouseup",p,!1),document.removeEventListener("mousemove",f,!1),document.removeEventListener("touchend",p,!1),document.removeEventListener("touchmove",f,!1)}}function r(){a.value==="big"?a.value="small":a.value="big"}return(s,i)=>{const u=e.resolveComponent("v-btn");return e.openBlock(),e.createElementBlock("div",{id:"moveableDiv",class:e.normalizeClass(["big d-flex justify-space-between flex-column align-center sizer",a.value])},[e.createVNode(u,{class:"close-icon",icon:"mdi-window-close",size:"x-small",onClick:i[0]||(i[0]=l=>t("close"))}),e.createVNode(u,{class:"resize-icon",icon:"mdi-image-size-select-small",size:"x-small",onClick:r,title:"Resize"}),e.createVNode(u,{class:"rotate-icon",size:"x-small",icon:"mdi mdi-rotate-right",onClick:i[1]||(i[1]=l=>t("transform")),title:"Rotate"}),ga,e.createElementVNode("div",va,[e.renderSlot(s.$slots,"body",{class:"slot"},void 0,!0)]),e.createElementVNode("div",ka,[e.renderSlot(s.$slots,"footer",{},void 0,!0)])],2)}}}),[["__scopeId","data-v-30593022"]]),ya={class:"rotation-marker-svg",viewBox:"0 0 40 40",xmlns:"http://www.w3.org/2000/svg"},wa=e.createStaticVNode('<defs><radialGradient id="Gradient" cx="0" cy="0" r="0.9" fx="0" fy="0"><stop offset="0%" class="stop1"></stop><stop offset="60%" class="stop2"></stop><stop offset="90%" class="stop3"></stop></radialGradient><linearGradient id="LineGradient" gradientTransform="rotate(90)"><stop offset="0%" class="stop1"></stop><stop offset="75%" class="stop2"></stop><stop offset="100%" class="stop3"></stop></linearGradient></defs>',1),_a=["transform"],ba=[e.createStaticVNode('<rect id="field-of-view-gradient" x="20" y="20" width="38" height="38" transform="rotate(0)" transform-origin="20 20" fill="url(#Gradient)"></rect><rect class="field-of-view-border" x="20" y="20" width="1" height="25" fill="url(#LineGradient)" transform="rotate(0)" transform-origin="20 20"></rect><rect class="field-of-view-border" x="19" y="19" width="1" height="25" fill="url(#LineGradient)" transform="rotate(-90)" transform-origin="20 20"></rect><circle cx="20" cy="20" r="5" fill="white"></circle><circle cx="20" cy="20" r="3" fill="red"></circle>',5)],Va=e.defineComponent({__name:"VRotationMarker",props:{rotation:{}},setup(m){return(o,t)=>(e.openBlock(),e.createElementBlock("svg",ya,[wa,e.createElementVNode("g",{"transform-origin":"20 20",transform:`rotate(${45+o.rotation})`},ba,8,_a)]))}}),Ea={class:"minimap-wrapper d-flex align-stretch justify-space-between"},Ba={class:"minimap-container"},xa=R(e.defineComponent({__name:"VMiniMapMap",props:{backgroundImage:{},allCameras:{},storey:{},currentCamera:{},rotation:{},transformAngle:{}},setup(m){const o=m,t=e.ref(512),a=e.ref(384),n=e.ref(new ce.Vector3),r=e.ref(new ce.Object3D),s=e.ref({}),i=e.ref(1),u=e.ref(),l=e.computed(()=>o.allCameras),d=e.computed(()=>o.allCameras.find(_=>_.id===o.currentCamera)),c=e.computed(()=>o.rotation),k=e.computed(()=>new ce.Vector3(o.storey.position.x,o.storey.position.y,o.storey.position.z)),f=e.computed(()=>parseFloat(d.value.floor_vertical_position)),p=e.computed(()=>l.value.map(_=>{const M=_.uposition.split(","),E=new ce.Vector3(Number(M[0])-k.value.x,0,Number(M[2])-k.value.z);return{..._,...v(n.value,E)}})),g=e.computed(()=>`background-image: url(${o.backgroundImage});`),V=e.computed(()=>{let _=i.value>1?1:i.value;return _<.8&&(_=.4),`scale: ${_>1?1:_}; transform: rotate(${o.transformAngle}deg);`});e.onMounted(()=>{S(),h(),y();const _=document.getElementById("moveableDiv");_&&(u.value=new ResizeObserver(y).observe(_))}),e.onBeforeUpdate(()=>{S(),h()}),e.onBeforeUnmount(()=>{u.value&&u.value.unobserve(document.getElementById("moveableDiv"))});function C(_){return ce.MathUtils.degToRad(_)}function h(){r.value.rotation.x=180,r.value.rotation.y=o.storey.rotation.y*-1,s.value={transform:`rotateZ(${r.value.rotation.y}deg) rotateX(${r.value.rotation.x}deg)`}}function A(_){return{top:`${Math.abs(_.top)}%`,left:`${Math.abs(_.left)}%`}}function v(_,M){var E=new ce.Vector3;const O=E.subVectors(_,M);return{relativePosition:O,left:O.x/t.value*100,top:O.z/a.value*100}}function S(){const _=o.storey.position.y-f.value;a.value=2*(_*Math.tan(C(o.storey.fovY/2))),t.value=512/384*a.value;const M=a.value/2,E=t.value/2,O=new ce.Vector3(E*-1,0,M*-1);n.value=O}function y(){const _=document.getElementById("moveableDiv");if(!_)return;const M=_.offsetHeight/384*.8,E=_.offsetWidth/512*.8;_.offsetHeight>_.offsetWidth?i.value=E*.5:i.value=M*.9}return(_,M)=>(e.openBlock(),e.createElementBlock("div",Ea,[e.createElementVNode("div",Ba,[e.createElementVNode("div",{class:"web-minimap",style:e.normalizeStyle(V.value)},[e.createElementVNode("div",{class:"minimap-background-image",style:e.normalizeStyle(g.value)},null,4),e.createElementVNode("div",{class:"center-pivot",style:e.normalizeStyle(s.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,E=>(e.openBlock(),e.createElementBlock("div",{key:E.id},[d.value.floorLevel===E.floorLevel?(e.openBlock(),e.createElementBlock("div",{key:0,class:"single-camera-marker",style:e.normalizeStyle(A(E))},null,4)):e.createCommentVNode("",!0),d.value.id===E.id&&o.rotation!==null?(e.openBlock(),e.createBlock(Va,{key:1,class:"rotation-marker-component",rotation:c.value,style:e.normalizeStyle({...A(E)})},null,8,["rotation","style"])):e.createCommentVNode("",!0)]))),128))],4)],4)])]))}}),[["__scopeId","data-v-1a6129d7"]]),Sa=R(e.defineComponent({__name:"VMiniMapCompass",props:{scale:{},rotation:{},transformAngle:{}},setup(m){const o=m,t=e.computed(()=>o.rotation+o.transformAngle-90);return(a,n)=>(e.openBlock(),e.createElementBlock("div",{class:"minimap-compass",style:e.normalizeStyle({scale:a.scale})},[e.createVNode(he,{class:"north-indicator",longitude:t.value},null,8,["longitude"])],4))}}),[["__scopeId","data-v-552c1d19"]]),Ia={class:"ss-wrapper"},Na={class:"slider"},Aa={class:"minimap-sun-slider"},Da={key:0,class:"time-label"},La=R(e.defineComponent({__name:"VSunSimulationSlider",props:{cdnFileResolver:{type:[String,Function]},minimapJson:{},apartmentJson:{},level:{}},emits:["setBackgroundImage"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(new Date().getHours()),r=e.ref(!0),s=e.ref(!0),i=e.ref(""),u=e.ref(new Map),l=e.computed(()=>t.minimapJson.storeys[t.level]),d=e.computed(()=>`${Math.floor(n.value).toString().padStart(2,"0")}:00`),c=e.computed(()=>{if(l.value.sunsimFilesTimeStamps[n.value]){const C=l.value.sunsimFilesTimeStamps[n.value].split(" ");return`${C[0]} ${C[1]}`}return""});e.onMounted(async()=>{i.value=await p(l.value.sunsimFiles[n.value]),s.value=!1;const C=await f(t.minimapJson.storeys);u.value=C,r.value=!1,a("setBackgroundImage",k(t.level,n.value))}),e.watch(n,()=>{const C=k(t.level,n.value);a("setBackgroundImage",C)}),e.watch(()=>t.level,()=>{a("setBackgroundImage",k(t.level,n.value))},{immediate:!0});function k(C,h){return u.value.get(`sunsim${C}_${h}`)?u.value.get(`sunsim${C}_${h}`):""}async function f(C){let h=new Map;for(let A=0;A<C.length;A++){const v=C[A].sunsimFiles;for(let S=0;S<v.length;S++){const y=v[S];try{const _=y,M=y.split("."),E=await p(_);h.set(M[0],E)}catch{continue}}}return h}async function p(C){const A=await(await fetch(z(t.cdnFileResolver,`/${t.apartmentJson.type}/${t.apartmentJson.id}/minimap/${C}`))).blob(),v=await V(A);return g(v)}function g(C){return"data:image/jpeg;base64,"+C}async function V(C){return new Promise((h,A)=>{const v=new FileReader;v.onload=()=>{const S=v.result.split(",")[1];h(S)},v.onerror=A,v.readAsDataURL(C)})}return(C,h)=>{const A=e.resolveComponent("v-progress-linear"),v=e.resolveComponent("v-icon"),S=e.resolveComponent("v-slider");return e.openBlock(),e.createElementBlock("div",Ia,[e.createElementVNode("div",Na,[e.createElementVNode("div",Aa,[r.value?(e.openBlock(),e.createBlock(A,{key:0,indeterminate:"",rounded:"",height:"6",color:"grey lighten-1",class:"mr-2"})):(e.openBlock(),e.createBlock(S,{key:1,modelValue:n.value,"onUpdate:modelValue":h[0]||(h[0]=y=>n.value=y),min:0,max:23,step:1,color:"#373737","track-color":"#373737","thumb-color":"#373737","hide-details":!0},{prepend:e.withCtx(()=>[e.createVNode(v,{color:"#ffab02"},{default:e.withCtx(()=>[e.createTextVNode("mdi-white-balance-sunny")]),_:1})]),_:1},8,["modelValue"]))]),r.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Da,e.toDisplayString(c.value)+" "+e.toDisplayString(d.value),1))])])}}}),[["__scopeId","data-v-b2f12eb0"]]),He=R(e.defineComponent({__name:"VMiniMap",props:{cdnFileResolver:{type:[String,Function]},minimapJson:{},apartmentJson:{},currentCamera:{},level:{},rotation:{}},emits:["close"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(),r=e.ref(0),s=e.computed(()=>t.minimapJson.storeys[t.level]);e.watch(s,()=>{n.value=s.value.defaultSunsimFile?`/${t.apartmentJson.type}/${t.apartmentJson.id}/minimap/sunsim0_13.jpg`:`/${t.apartmentJson.type}/${t.apartmentJson.id}/minimap/${s.value.defaultSunsimFile}`},{immediate:!0,once:!0});const i=e.computed(()=>{let d=1;return r.value!==0&&(Math.abs(r.value)%180===0?d=1:d=-1),d});function u(d){n.value=d}function l(){r.value=r.value+90}return(d,c)=>(e.openBlock(),e.createBlock(Ca,{onClose:c[0]||(c[0]=k=>a("close")),onTransform:l},{body:e.withCtx(()=>[e.createVNode(Sa,{scale:i.value,rotation:s.value.rotation.y,"transform-angle":r.value},null,8,["scale","rotation","transform-angle"]),e.createElementVNode("div",null,[e.createVNode(xa,{"transform-angle":r.value,"all-cameras":d.apartmentJson.cameras,"background-image":n.value,rotation:d.rotation,"current-camera":d.currentCamera,storey:s.value},null,8,["transform-angle","all-cameras","background-image","rotation","current-camera","storey"])])]),footer:e.withCtx(()=>[e.createVNode(La,{"cdn-file-resolver":t.cdnFileResolver,"minimap-json":t.minimapJson,"apartment-json":t.apartmentJson,level:t.level,onSetBackgroundImage:u},null,8,["cdn-file-resolver","minimap-json","apartment-json","level"])]),_:1}))}}),[["__scopeId","data-v-898e645b"]]),Fa={key:0,class:"text-white disclaimer caption"},Ma=R(e.defineComponent({__name:"VDisclaimer",setup(m){const o=e.inject(X),t=e.ref(!0);return(a,n)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade-transition"},{default:e.withCtx(()=>[t.value?(e.openBlock(),e.createElementBlock("div",Fa,[e.createTextVNode(e.toDisplayString(e.unref(o).getLabel("allIllustrationsAreIndicativeDeviationsMayOccur"))+" ",1),e.createElementVNode("span",{onClick:n[0]||(n[0]=r=>t.value=!1),class:"link-text text-decoration-underline"},e.toDisplayString(e.unref(o).getLabel("iUnderstand")),1)])):e.createCommentVNode("",!0)]),_:1}))}}),[["__scopeId","data-v-046402dc"]]),Ta={class:"waypoint-carousel"},Ra=37,Oa=39,Pe=R(e.defineComponent({__name:"VWaypointCarousel",props:{thumbnails:{},active:{}},emits:["previous","next","goto"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(0),r=e.computed({get(){return t.active},set(l){n.value=l}}),s=e.computed(()=>/Android|webOS|iPhone|iPad|BlackBerry|Windows Phone|Opera Mini|IEMobile|Mobile/i.test(window.navigator.userAgent));e.onMounted(()=>{window.addEventListener("keydown",i)}),e.onBeforeUnmount(()=>{window.removeEventListener("keydown",i)});function i(l){switch(l.keyCode){case l.keyCode===Ra:a("previous");break;case l.keyCode===Oa:a("next");break;default:return}}function u(l,d){d(),a("goto",l)}return(l,d)=>{const c=e.resolveComponent("v-icon"),k=e.resolveComponent("v-btn"),f=e.resolveComponent("v-hover"),p=e.resolveComponent("v-img"),g=e.resolveComponent("v-card"),V=e.resolveComponent("v-slide-group-item"),C=e.resolveComponent("v-slide-group");return e.openBlock(),e.createElementBlock("div",Ta,[e.createVNode(C,{modelValue:r.value,"onUpdate:modelValue":d[2]||(d[2]=h=>r.value=h),"active-class":"active-apt","selected-class":"active-apt","show-arrows":"","center-active":"",mandatory:""},{prev:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(({isHovering:h})=>[e.createVNode(k,{elevation:"0",class:e.normalizeClass(["carousel-button",{mobile:s.value}]),onClick:d[0]||(d[0]=A=>a("previous"))},{default:e.withCtx(()=>[e.createVNode(c,{color:h?"#999":"#d2d2d2","x-large":""},{default:e.withCtx(()=>[e.createTextVNode(" mdi-chevron-left ")]),_:2},1032,["color"])]),_:2},1032,["class"])]),_:1})]),next:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(({isHovering:h})=>[e.createVNode(k,{elevation:"0",class:e.normalizeClass(["carousel-button",{mobile:s.value}]),onClick:d[1]||(d[1]=A=>a("next"))},{default:e.withCtx(()=>[e.createVNode(c,{color:h?"#999":"#d2d2d2","x-large":""},{default:e.withCtx(()=>[e.createTextVNode(" mdi-chevron-right ")]),_:2},1032,["color"])]),_:2},1032,["class"])]),_:1})]),default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.thumbnails,h=>(e.openBlock(),e.createBlock(V,{key:h.id},{default:e.withCtx(({toggle:A,selectedClass:v})=>[e.createVNode(g,{class:e.normalizeClass(["ma-2",v]),align:"center",justify:"center",height:s.value?50:100,width:s.value?80:160,elevation:"0",style:{overflow:"hidden"},onClick:S=>u(h.id,A)},{default:e.withCtx(()=>[e.createVNode(p,{"max-height":"100","max-width":"160",cover:"",src:h.thumbnailUrl},null,8,["src"])]),_:2},1032,["class","height","width","onClick"])]),_:2},1024))),128))]),_:1},8,["modelValue"])])}}}),[["__scopeId","data-v-45edaf7a"]]),$a={id:"share-btns-wrapper",class:"text-center"},Ua=R(e.defineComponent({__name:"VSocialShare",setup(m){const o=e.inject(X),t=e.ref(!1),a=e.ref(location.href);function n(){return window.open("https://www.facebook.com/sharer/sharer.php?u="+encodeURIComponent(location.href),"facebook-share-dialog","width=626,height=436"),!1}function r(){return window.open("https://twitter.com/intent/tweet?text="+encodeURIComponent(location.href),"twitter-share-dialog","width=626,height=436"),!1}function s(){return window.open("https://www.linkedin.com/sharing/share-offsite/?url="+encodeURIComponent(location.href),"linkedin-share-dialog","width=626,height=736"),!1}function i(){navigator.clipboard.writeText(location.href)}return(u,l)=>{const d=e.resolveComponent("v-btn"),c=e.resolveComponent("v-tooltip"),k=e.resolveComponent("v-toolbar-title"),f=e.resolveComponent("v-spacer"),p=e.resolveComponent("v-toolbar"),g=e.resolveComponent("v-card-text"),V=e.resolveComponent("v-card"),C=e.resolveComponent("v-dialog");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(c,{elevation:"2",top:"",attach:""},{activator:e.withCtx(({props:h})=>[e.createVNode(d,e.mergeProps({density:"comfortable",elevation:"1",icon:"mdi-share-variant",onClick:l[0]||(l[0]=A=>t.value=!t.value)},h),null,16)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(e.unref(o).getLabel("share")),1)]),_:1}),e.createVNode(C,{id:"share-box",width:"400",modelValue:t.value,"onUpdate:modelValue":l[2]||(l[2]=h=>t.value=h)},{default:e.withCtx(()=>[e.createVNode(V,null,{default:e.withCtx(()=>[e.createVNode(p,{elevation:"0"},{default:e.withCtx(()=>[e.createVNode(d,{size:"x-small",icon:"mdi-close",onClick:l[1]||(l[1]=h=>t.value=!1)}),e.createVNode(k,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o).getLabel("share")),1)]),_:1}),e.createVNode(f)]),_:1}),e.createVNode(g,{class:"mt-5"},{default:e.withCtx(()=>[e.createElementVNode("p",$a,[e.createVNode(c,{location:"top"},{activator:e.withCtx(({props:h})=>[e.createVNode(d,e.mergeProps({depressed:"",fab:"",light:"",icon:"mdi-facebook"},h,{onClick:n}),null,16)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(e.unref(o).getLabel("shareToFacebook")),1)]),_:1}),e.createVNode(c,{location:"top"},{activator:e.withCtx(({props:h})=>[e.createVNode(d,e.mergeProps({depressed:"",fab:"",light:"",icon:"mdi-linkedin"},h,{onClick:s}),null,16)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(e.unref(o).getLabel("shareToLinkedin")),1)]),_:1}),e.createVNode(c,{location:"top"},{activator:e.withCtx(({props:h})=>[e.createVNode(d,e.mergeProps({depressed:"",fab:"",light:"",icon:"mdi-twitter"},h,{onClick:r}),null,16)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(e.unref(o).getLabel("shareToTwitter")),1)]),_:1}),e.createVNode(c,{location:"top"},{activator:e.withCtx(({props:h})=>[e.createVNode(d,e.mergeProps({depressed:"",fab:"",light:"",icon:"mdi-email",link:"",href:`mailto:?body=${a.value}`},h),null,16,["href"])]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(e.unref(o).getLabel("shareViaEmail")),1)]),_:1}),e.createVNode(c,{location:"top"},{activator:e.withCtx(({props:h})=>[e.createVNode(d,e.mergeProps({depressed:"",fab:"",light:"",icon:"mdi-content-copy",onClick:i},h),null,16)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(e.unref(o).getLabel("copyLink")),1)]),_:1}),e.createVNode(f)])]),_:1})]),_:1})]),_:1},8,["modelValue"])])}}}),[["__scopeId","data-v-b6e473f1"]]),Ha={class:"static-image-wrapper"},Pa=R(e.defineComponent({__name:"VSingleImage",props:{image:{},aspectRatio:{default:"wide"}},setup(m){const o=m,t=e.computed(()=>({"background-image":`url("${encodeURI(o.image)}")`}));return(a,n)=>(e.openBlock(),e.createElementBlock("div",Ha,[e.createElementVNode("div",{class:e.normalizeClass(["img-div",[a.aspectRatio]]),style:e.normalizeStyle(t.value)},null,6)]))}}),[["__scopeId","data-v-31489804"]]),ja={id:"btn-fullscreen",class:"btn-placeholder mr-2"},Ya=e.defineComponent({__name:"VFullScreenButton",props:{isFullScreen:{type:Boolean}},emits:["toggleFullscreen"],setup(m,{emit:o}){const t=o;return(a,n)=>{const r=e.resolveComponent("v-btn");return e.openBlock(),e.createElementBlock("div",ja,[e.createVNode(r,{density:"comfortable",elevation:"3",icon:a.isFullScreen?"mdi-fullscreen-exit":"mdi-fullscreen",onClick:n[0]||(n[0]=s=>t("toggleFullscreen"))},null,8,["icon"])])}}});class za{constructor(o,t){P(this,"_doc");P(this,"_elemId");P(this,"_state");this._doc=o,this._elemId=t,this._state={isActive:!1}}get isActive(){return this._state.isActive}setup(){const o=["fullscreenchange","webkitfullscreenchange","mozfullscreenchange","msfullscreenchange"],t=this._getElement();o.forEach(a=>{t.addEventListener(a,this._toggle.bind(this),!1)})}toggle(){this.isActive?this._exit():this._enter()}_enter(){const o=this._getElement(),t=o.requestFullscreen||o.webkitRequestFullscreen||o.mozRequestFullscreen||o.msRequestFullscreen;t&&t.apply(o)}_exit(){const o=this._doc.exitFullscreen||this._doc.webkitExitFullscreen||this._doc.mozExitFullscreen||this._doc.document.msExitFullscreen;o&&o.apply(document)}_getElement(){return this._doc.getElementById(this._elemId)}_toggle(){const o=!!(this._doc.fullscreenElement||this._doc.webkitFullscreenElement||this._doc.mozFullscreenElement||this._doc.msFullscreenElement);this._state.isActive=o}}const Wa={class:"virtual-tour-wrapper"},Ga={key:0,class:"player-error"},Qa={class:"player-and-components-wrapper"},qa={key:1,class:"v-player"},Za={key:3,class:"settings-panel"},Ja={key:0,class:"compass-wrapper"},Xa={key:1,class:"btn-placeholder mr-2"},Ka={key:2,class:"btn-placeholder"},er={key:0},je=R(e.defineComponent({__name:"VVirtualTour",props:{cdnFileResolver:{},apartmentId:{},defaultInteriorId:{},validInteriorIds:{default:()=>[]},displayViewModeSwitch:{type:Boolean,default:!0},websiteUrl:{},i18nConfig:{},showCarousel:{type:Boolean,default:!0},showTimeOfDay:{type:Boolean,default:!0},showCompass:{type:Boolean,default:!0},showFullScreen:{type:Boolean,default:!0},showSnapshot:{type:Boolean,default:!0},showShare:{type:Boolean,default:!0},showInteriorOptions:{type:Boolean,default:!0},showMiniMap:{type:Boolean,default:!0},showFloorLevel:{type:Boolean,default:!0},defaultWaypointIndex:{default:0},defaultViewMode:{default:"virtualTour"},mouseSensitivity:{default:1},isInIframe:{type:Boolean},adminMode:{type:Boolean,default:!1},playerSettings:{default:()=>({temperature:6500,targetLuminance:1,exposureFovScale:.3,UNREAL_BLOOM_ENABLED:!0,sharpenFilter_amount:.6,UNREAL_BLOOM_STRENGTH:.3,TRANSITION_MOVEMENT_SCALE:1.3,whitePoint:[1,1,1],lut:""})}},emits:["onSnapshot","saveSettings","onInteriorUpdate","onCameraUpdate","onError"],setup(m,{emit:o}){const t=m,a=o,n=e.ref(!1),r=e.ref(!1),s=e.ref(),i=e.ref(),u=e.ref(),l=e.ref(),d=e.ref(),c=e.ref(0),k=e.ref(),f=e.ref(),p=e.ref(),g=e.ref(0),V=e.ref(0),C=e.ref(0),h=e.ref(!1),A=e.ref(!1),v=e.ref(!1),S=e.ref(new za(document,"player-wrapper")),y=e.computed(()=>{if(i.value){const w=i.value.cameras.map($=>$.floorLevel);let F=[...new Set(w)];return F=F.sort(),F}else return[]}),_=e.computed(()=>{let w=0;if(i.value){const F=i.value.cameras.map(we=>we.floorLevel);let $=[...new Set(F)];$=$.sort();const Z=$.findIndex(we=>we===V.value);Z!==-1&&(w=Z)}return w}),M=e.computed(()=>b.value.findIndex(w=>w.archetypeID===k.value)),E=e.computed(()=>u.value?u.value.cameras.map(w=>({...w,thumbnailUrl:J(`/${k.value}/${t.apartmentId}/thumbs/200/${w.id}.jpg`),imageUrl:J(`/${k.value}/${t.apartmentId}/images/1600/${w.id}.jpg`)})):[]),O=e.computed(()=>!E.value||!E.value[c.value]?"":E.value[c.value].imageUrl),b=e.computed(()=>{let w=[];return s.value&&(w=s.value.archetypes),t.validInteriorIds.length?w.filter(F=>t.validInteriorIds.includes(F.archetypeID)):w}),x=e.computed(()=>u.value?b.value.map(w=>({...w,url:J(`/${w.archetypeID}/${t.apartmentId}/thumbs/200/${E.value[c.value].id}.jpg`)})):[]),B=e.computed(()=>{if(l.value)return l.value.storeys[_.value]}),N=e.computed(()=>i.value&&i.value.timeInHours),U=e.computed(()=>{if(i.value&&i.value.timeInHours&&t.showTimeOfDay)return nr(i.value.timeInHours)});e.provide(X,t.i18nConfig?new ie(t.i18nConfig):new ie),e.watch([()=>t.cdnFileResolver],async()=>{await I(),H(),await D()}),e.watch(()=>t.defaultViewMode,w=>{w==="virtualTour"&&(h.value=!1),w==="slideShow"&&(h.value=!0,v.value=!0)},{immediate:!0}),e.onMounted(async()=>{try{await I(),H(),await D(),S.value.setup(),Q()}catch(w){r.value=!0,a("onError",w)}});async function I(){s.value=await G()}async function D(){if(i.value=await W(k.value,t.apartmentId),i.value&&(f.value=i.value.cameras.find(()=>!0).id),u.value=await oe(k.value,t.apartmentId),u.value){let w=t.defaultWaypointIndex!==null?t.defaultWaypointIndex:0;c.value=w,f.value=u.value.cameras[w].id,p.value=u.value.cameras[w].id}t.showMiniMap&&(l.value=await ae(k.value,t.apartmentId))}function H(){let w=t.defaultInteriorId;w||(w=s.value.defaultArchetypeID),t.validInteriorIds.length&&!t.validInteriorIds.includes(w)&&(w=t.validInteriorIds[0]),w||(w=s.value.archetypes[0].archetypeID),k.value=w}function Q(){const w=document.getElementById("main-canvas");w.addEventListener("touchmove",F,{passive:!1});function F(Z){Z.preventDefault(),window.scrollBy(0,0)}w.addEventListener("mouseenter",()=>{document.addEventListener("wheel",$,{passive:!1})},{passive:!1}),w.addEventListener("mouseleave",()=>{document.removeEventListener("wheel",$)},{passive:!1});function $(Z){Z.preventDefault(),window.scrollBy(0,0)}}async function G(){try{return await ye("/config.json")}catch(w){console.error("Error loading config.json - ",z(t.cdnFileResolver,"/config.json"),w);return}}async function W(w,F){try{return await ye(`/${w}/${F}/apartment.json`)}catch($){console.error("Error loading apartment.json - ",`/${w}/${F}/apartment.json`,$);return}}async function oe(w,F){try{return await ye(`/${w}/${F}/thumbs.json`)}catch{console.error("Error loading thumbs.json - ",`/${w}/${F}/thumbs.json`);return}}async function ae(w,F){try{return await ye(`/${w}/${F}/minimap/minimap.json`)}catch{console.error("Error loading minimap.json - ",`/${w}/${F}/minimap/minimap.json`);return}}function K(){let w=c.value+1;w>=E.value.length&&(w=0),c.value=w,me(E.value[c.value].id)}function ee(){let w=c.value-1;w<0&&(w=E.value.length-1),c.value=w,me(E.value[c.value].id)}function te(w,F=!0){let $=E.value.findIndex(Z=>Z.id===w);$!=-1&&(c.value=$,F&&me(w))}function me(w){f.value=w}function se(w){k.value=w,a("onInteriorUpdate",w),a("onCameraUpdate",p.value,i.value)}function Be(w){te(w,!1),p.value=w,a("onCameraUpdate",w,i.value)}function Ce(w){g.value=w}function xe(w){V.value=w}function L(w){C.value=w}function T(w,F){}function Y(w){d.value=w,t.playerSettings&&d.value.updateSettings(t.playerSettings)}function Ve(){S.value.toggle(),window.scrollTo({top:150,behavior:"smooth"})}function ue(){h.value=!h.value}async function re(){const w=180/Math.PI,F=await d.value.takePhoto(),$=d.value.getRotationEuler(),Z=d.value.getCurrentCamera(),we=new Yt(F,Z),ar=[$.x*w,$.y*w,$.z*w];return a("onSnapshot",we,ar),we}function J(w){let F=z(t.cdnFileResolver,w);return t.adminMode&&(F=F+`?v=${Date.now()}`),F}async function ye(w){const F=J(w);try{return(await ne.get(F)).data}catch($){throw new Error($)}}function Ye(w){d.value.updateSettings(w)}function or(w){a("saveSettings",w)}function nr(w){if(w===void 0)return null;const F=Math.floor(w),$=Math.floor((F-w)*60);return{hours:F,minutes:$}}return(w,F)=>{const $=e.resolveComponent("v-btn");return e.openBlock(),e.createElementBlock("div",Wa,[r.value?(e.openBlock(),e.createElementBlock("div",Ga,"Error loading the player!!")):e.createCommentVNode("",!0),e.createElementVNode("div",Qa,[!S.value.isActive&&l.value&&p.value&&B.value&&k.value&&A.value?(e.openBlock(),e.createBlock(He,{key:0,"cdn-file-resolver":w.cdnFileResolver,"apartment-json":i.value,level:_.value,"minimap-json":l.value,rotation:g.value,"current-camera":p.value,onClose:F[0]||(F[0]=Z=>A.value=!1)},null,8,["cdn-file-resolver","apartment-json","level","minimap-json","rotation","current-camera"])):e.createCommentVNode("",!0),k.value&&f.value?(e.openBlock(),e.createElementBlock("div",qa,[e.createVNode(ln,{"cdn-file-resolver":w.cdnFileResolver,style:e.normalizeStyle({zIndex:h.value?1:2}),"show-static-image":h.value,"is-full-screen":S.value.isActive,"current-camera-id":f.value,"mouse-sensitivity":w.mouseSensitivity,"interior-id":k.value,"apartment-id":t.apartmentId,onNewCameraCallback:Be,onNewRotationCallback:Ce,onNewFloorCallback:xe,onNewFovCallback:L,onNewSizeCallback:T,onPlayerApiCallback:Y},{"slideshow-image":e.withCtx(()=>[h.value?(e.openBlock(),e.createBlock(Pa,{key:0,image:O.value},null,8,["image"])):e.createCommentVNode("",!0)]),"top-left":e.withCtx(()=>[w.adminMode?e.withDirectives((e.openBlock(),e.createBlock($,{key:0,density:"comfortable",icon:"mdi-cog-outline",elevation:"3",class:"mr-2",onClick:F[1]||(F[1]=Z=>n.value=!n.value)},null,512)),[[e.vShow,v.value]]):e.createCommentVNode("",!0),l.value&&f.value&&B.value?e.withDirectives((e.openBlock(),e.createBlock($,{key:1,density:"comfortable",elevation:"3",icon:"mdi-floor-plan",class:"mr-2",onClick:F[2]||(F[2]=Z=>A.value=!A.value)},null,512)),[[e.vShow,v.value]]):e.createCommentVNode("",!0),v.value&&w.showFloorLevel&&y.value.length>1?(e.openBlock(),e.createBlock(un,{key:2,level:V.value,"floor-levels":y.value,onLevel:xe},null,8,["level","floor-levels"])):e.createCommentVNode("",!0),v.value&&w.adminMode&&n.value?(e.openBlock(),e.createElementBlock("div",Za,[e.createVNode(ha,{"initial-settings":w.playerSettings,onUpdateSettings:Ye,onSaveSettings:or},null,8,["initial-settings"])])):e.createCommentVNode("",!0)]),"top-center":e.withCtx(()=>[v.value?(e.openBlock(),e.createBlock(Ma,{key:0,"return-url":w.websiteUrl},null,8,["return-url"])):e.createCommentVNode("",!0)]),"top-right":e.withCtx(()=>[i.value&&w.showCompass?e.withDirectives((e.openBlock(),e.createElementBlock("div",Ja,[e.createVNode(vn,{rotation:g.value},null,8,["rotation"])],512)),[[e.vShow,v.value]]):e.createCommentVNode("",!0),v.value&&i.value&&N.value&&w.showTimeOfDay?(e.openBlock(),e.createBlock(_n,{key:1,hours:U.value.hours,minutes:U.value.minutes},null,8,["hours","minutes"])):e.createCommentVNode("",!0)]),"center-left":e.withCtx(()=>[e.createVNode(e.Transition,{name:"slide-x-transition"},{default:e.withCtx(()=>[h.value?(e.openBlock(),e.createBlock($,{key:0,density:"comfortable",elevation:"3",icon:"mdi-chevron-left",onClick:ee})):e.createCommentVNode("",!0)]),_:1})]),"center-center":e.withCtx(()=>[e.createVNode(Jn,{project:e.unref(z)(t.cdnFileResolver,""),onCloseTutorial:F[3]||(F[3]=Z=>v.value=!0)},null,8,["project"]),S.value.isActive&&l.value&&p.value&&B.value&&A.value?(e.openBlock(),e.createBlock(He,{key:0,"cdn-file-resolver":w.cdnFileResolver,"apartment-json":i.value,"minimap-json":l.value,rotation:g.value,"current-camera":p.value,level:_.value,onClose:F[4]||(F[4]=Z=>A.value=!1)},null,8,["cdn-file-resolver","apartment-json","minimap-json","rotation","current-camera","level"])):e.createCommentVNode("",!0)]),"center-right":e.withCtx(()=>[e.createVNode(e.Transition,{name:"slide-x-reverse-transition"},{default:e.withCtx(()=>[h.value?(e.openBlock(),e.createBlock($,{key:0,density:"comfortable",elevation:"3",icon:"mdi-chevron-right",onClick:K})):e.createCommentVNode("",!0)]),_:1})]),"bottom-left":e.withCtx(()=>[v.value&&w.showFullScreen?(e.openBlock(),e.createBlock(Ya,{key:0,"is-full-screen":S.value.isActive,class:"btn-fullscreen",onToggleFullscreen:Ve},null,8,["is-full-screen"])):e.createCommentVNode("",!0),v.value&&w.showSnapshot?(e.openBlock(),e.createElementBlock("div",Xa,[e.createVNode($,{density:"comfortable",elevation:"3",icon:"mdi-camera",onClick:re})])):e.createCommentVNode("",!0),v.value&&w.showShare&&!S.value.isActive?(e.openBlock(),e.createElementBlock("div",Ka,[e.createVNode(Ua)])):e.createCommentVNode("",!0)]),"bottom-center":e.withCtx(()=>[v.value&&w.showCarousel?(e.openBlock(),e.createElementBlock("div",er,[w.displayViewModeSwitch?(e.openBlock(),e.createBlock(bn,{key:0,"show-static-image":h.value,onToggle:ue},null,8,["show-static-image"])):e.createCommentVNode("",!0),v.value&&S.value.isActive?(e.openBlock(),e.createBlock(Pe,{key:1,class:e.normalizeClass([S.value.isActive?"full-screen":""]),thumbnails:E.value,active:c.value,onNext:K,onPrevious:ee,onGoto:te},null,8,["class","thumbnails","active"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),"bottom-right":e.withCtx(()=>[v.value&&w.showInteriorOptions&&x.value?(e.openBlock(),e.createBlock(fn,{key:0,"cdn-file-resolver":w.cdnFileResolver,"available-archetypes":x.value,"selected-index":M.value,onSelectInterior:se},null,8,["cdn-file-resolver","available-archetypes","selected-index"])):e.createCommentVNode("",!0)]),_:1},8,["cdn-file-resolver","style","show-static-image","is-full-screen","current-camera-id","mouse-sensitivity","interior-id","apartment-id"]),w.showCarousel&&u.value?(e.openBlock(),e.createBlock(Pe,{key:0,class:"waypoint-carousel below-player",thumbnails:E.value,active:c.value,onNext:K,onPrevious:ee,onGoto:te},null,8,["thumbnails","active"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])])}}}),[["__scopeId","data-v-1a002566"]]),tr={install:function(o){o.component("VApartmentChooser",Fe),o.component("VBuildingChooser",Ue),o.component("VVirtualTour",je)}};j.ResourceLoader=q,j.VApartmentChooser=Fe,j.VApartmentChooserV5=Kt,j.VBuildingChooser=Ue,j.VBuildingChooserV5=Uo,j.VFloatingCard=pe,j.VHoverProbe=le,j.VNorthDirection=he,j.VVirtualTour=je,j.VZoomBox=fe,j.default=tr,Object.defineProperties(j,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(P,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("axios"),require("@qispace/player-core"),require("three")):typeof define=="function"&&define.amd?define(["exports","vue","axios","@qispace/player-core","three"],e):(P=typeof globalThis<"u"?globalThis:P||self,e(P["vue3-player"]={},P.Vue,P.axios,P.PlayerCore,P.THREE))})(this,function(P,e,ae,Xe,Je){"use strict";var wr=Object.defineProperty;var _r=(P,e,ae)=>e in P?wr(P,e,{enumerable:!0,configurable:!0,writable:!0,value:ae}):P[e]=ae;var j=(P,e,ae)=>(_r(P,typeof e!="symbol"?e+"":e,ae),ae);function De(m){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(m){for(const t in m)if(t!=="default"){const a=Object.getOwnPropertyDescriptor(m,t);Object.defineProperty(n,t,a.get?a:{enumerable:!0,get:()=>m[t]})}}return n.default=m,Object.freeze(n)}const Ke=De(Xe),ce=De(Je);class q{static async loadText(n){return new q().loadText(n)}static async loadJson(n){return new q().loadJson(n)}static async loadImage(n){return new q().loadImage(n)}static async loadImageData(n){return new q().loadImageData(n)}async loadText(n){return(await ae.get(n)).data}async loadJson(n){return(await ae.get(n)).data}async loadImage(n){return new Promise((t,a)=>{const o=new Image;o.crossOrigin="anonymous",o.onload=()=>{t(o)},o.onerror=a,o.src=n})}async loadImageData(n){const t=await this.loadImage(n),a=document.createElement("canvas");try{const o=a.getContext("2d");return a.width=t.width,a.height=t.height,o.drawImage(t,0,0),a.toDataURL("image/png")}finally{a.remove()}}}const et=e.defineComponent({__name:"VHoverProbe",setup(m,{expose:n}){const t=e.ref(),a=e.computed(()=>window.getComputedStyle(t.value).display==="none");return n({isHoverEnabled:a}),(o,r)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"hoverCheck",ref:t,class:"hover-check"},null,512))}}),$=(m,n)=>{const t=m.__vccOpts||m;for(const[a,o]of n)t[a]=o;return t},ie=$(et,[["__scopeId","data-v-eb9b348d"]]);function z(m,n){return typeof m=="string"?`${m}${n}`:m(n)}const tt=$(e.defineComponent({__name:"VApartmentChooserRaster",props:{cdnFileResolver:{},viewModel:{},selectedUnitId:{},canGoToUnitCallback:{type:Function,default:()=>!0},sceneData:{default:()=>[]},colorCallback:{type:Function,default:()=>({r:108,g:0,b:108,a:144,s:2})},drawObserver:{}},emits:["selectUnit","goToUnit","hoverOver","hoverOut","pos"],setup(m,{emit:n}){const t=m,a=n,o=e.ref({x:0,y:0,width:0,height:0}),r=e.ref(0),s=e.ref(0),l=e.ref(),u=e.ref(),i=e.ref(),c=e.ref(),d=e.ref(-1),g=e.ref(!1),f=e.ref(),p=e.ref(),v=e.ref({}),V=e.ref("auto"),C=e.ref(new q),h=e.ref({}),A=e.ref(),k=e.ref(),S=e.ref(),y=e.ref(),_=e.ref(),M=e.computed(()=>S.value.isHoverEnabled),E=e.computed(()=>z(t.cdnFileResolver,`/scenedata${t.viewModel.currentScene}.png`)),R=e.computed(()=>E.value in v.value?v.value[E.value]:null),b=e.computed(()=>d.value<0?!1:t.sceneData.find(T=>T.index===d.value)||!1),x=e.computed(()=>({width:r.value+"px",height:s.value+"px",cursor:V.value})),B=e.computed(()=>`hover-${g.value?"over":"out"}-${b.value?typeof b.value=="object"&&"unitId"in b.value?b.value.unitId:b.value:""}`);e.watch(E,()=>{v.value[E.value]||C.value.loadImageData(E.value).then(L=>{v.value={...v.value,[E.value]:L}})},{immediate:!0}),e.watch(R,()=>{R.value&&I()}),e.watch(()=>t.viewModel.currentScene,()=>{se()},{immediate:!0}),e.watch([()=>t.viewModel.isRotating,()=>t.drawObserver,()=>t.selectedUnitId],()=>{se()}),e.watch(b,()=>{se(),b.value?V.value="pointer":V.value="auto"}),e.watch(B,()=>{g.value?a("hoverOver",{hoverUnit:b.value?b.value.unitId:!1,closeHandler:()=>xe()}):a("hoverOut",{hoverUnit:b.value?b.value.unitId:!1,closeHandler:()=>xe()})}),e.watch(o,()=>{a("pos",o.value)}),e.onMounted(()=>{k.value=()=>{clearTimeout(A.value),te(),A.value=setTimeout(()=>{te()},50)},window.addEventListener("resize",k.value),te()}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",k.value);for(const L in v.value)URL.revokeObjectURL(v.value[L])});function I(){l.value=y.value.getContext("2d",{willReadFrequently:!0}),u.value=new Image,u.value.onload=()=>{me(),y.value.addEventListener("mousemove",Se(U,50))},u.value.src=R.value}function U(L){const T=H(L.offsetX,L.offsetY);g.value=T>=0,d.value=T,o.value={x:L.offsetX,y:L.offsetY,width:r.value,height:s.value}}function N(L){const T=H(L.offsetX,L.offsetY);T<0||M&&re(T)}function D(){if(u.value&&u.value.width){y.value.width=u.value.width,y.value.height=u.value.height,l.value.drawImage(u.value,0,0,u.value.width,u.value.height),c.value=l.value.getImageData(0,0,y.value.width,y.value.height),i.value=l.value.getImageData(0,0,y.value.width,y.value.height);const L=c.value.data;h.value={};for(let T=0;T<L.length;T+=4)h.value[L[T]]=[];for(let T=3;T<L.length;T+=4)L[T]===255&&L[T-3]in h.value&&h.value[L[T-3]].push(T-3)}}function H(L,T){f.value=L,p.value=T;const Y=y.value.offsetWidth/y.value.width,Ve=y.value.offsetHeight/y.value.height,ue=(L/Y).toFixed(),le=(T/Ve).toFixed(),X=Number(le)*(y.value.width*4)+Number(ue)*4,ye=c.value.data[X];return c.value.data[X+3]>0?ye:-1}function Q(){ne().forEach(T=>{if(T.index>=0){const Y=G(T.index);if(Y){const Ve=W(T.index);let ue="idle";!b.value&&t.selectedUnitId&&Ve===t.selectedUnitId?ue="selected":b.value&&d.value===T.index&&(ue="hover");const le=t.colorCallback(T.unitId,ue);if(le)for(let X=0;X<Y.length;X++)i.value.data[Y[X]]=le.r,i.value.data[Y[X]+1]=le.g,i.value.data[Y[X]+2]=le.b,i.value.data[Y[X]+3]=le.a}}})}function G(L){return c.value?h.value[L]:!1}function W(L){const T=t.sceneData.find(Y=>Y.index===L);return T&&T.unitId}function ne(){if(c.value){const L=Object.keys(h.value).map(Y=>parseInt(Y));return t.sceneData.filter(Y=>L.includes(Y.index))}else return[]}function re(L){const T=W(L);K(T)}function K(L){a("selectUnit",L),L&&t.canGoToUnitCallback(L)&&a("goToUnit",L)}function ee(L=0){if(!i.value)return;const T=i.value.data;for(let Y=3;Y<T.length;Y+=4)T[Y]=L}function te(){if(!_.value)return!1;r.value=_.value.offsetWidth,s.value=_.value.offsetHeight}function me(){D(),se()}function se(){ee(),Q(),l.value&&i.value&&l.value.putImageData(i.value,0,0)}function xe(){g.value=!1}const Ce=e.ref(!1);function Se(L,T){return Ce.value=!0,function(...Y){Ce.value&&(Ce.value=!1,L.apply(this,Y),setTimeout(()=>Ce.value=!0,T))}}return(L,T)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"container",ref:_,id:"canvas"},[e.withDirectives(e.createElementVNode("canvas",{id:"canvas-mask",ref_key:"canvas",ref:y,style:e.normalizeStyle(x.value),onClick:N},null,4),[[e.vShow,!L.viewModel.isRotating]]),e.createVNode(ie,{ref_key:"hoverProbe",ref:S},null,512)],512))}}),[["__scopeId","data-v-27d7323f"]]),ot=["viewBox"],nt=["innerHTML","onMouseenter","onMouseleave","onClick"],at=$(e.defineComponent({__name:"VApartmentChooserSvg",props:{cdnFileResolver:{},viewModel:{},selectedUnitId:{},canGoToUnitCallback:{type:Function,default:()=>!0},sceneData:{default:()=>[]},colorCallback:{type:Function,default:()=>({r:108,g:0,b:108,a:144,s:2})},drawObserver:{}},emits:["selectUnit","goToUnit","hoverOver","hoverOut","pos"],setup(m,{emit:n}){const t=m,a=n,o=e.ref({x:0,y:0,width:0,height:0}),r=e.ref(-1),s=e.ref({}),l=e.ref(null),u=e.ref(new q),i=e.ref(),c=e.ref(),d=e.computed(()=>c.value.isHoverEnabled);e.watch(()=>t.viewModel.currentScene,()=>{t.viewModel.currentScene in s.value&&(l.value=s.value[t.viewModel.currentScene])},{immediate:!0}),e.watch(s,()=>{t.viewModel.currentScene in s.value&&(l.value=s.value[t.viewModel.currentScene])},{immediate:!0}),e.watch(o,()=>{a("pos",o.value)}),e.watch(r,(k,S)=>{if(k>=0){const y=f(k);a("hoverOver",{hoverUnit:y,closeHandler:()=>{r.value=-1}})}else{const y=f(S);a("hoverOut",{hoverUnit:y,closeHandler:()=>{r.value=-1}})}}),e.onMounted(()=>{for(let k=1;k<=4;k++){const S=z(t.cdnFileResolver,`/scenedata${k}.svg`),y={markup:"",viewBox:"",svgObjects:[]};u.value.loadJson(S).then(_=>{y.markup=_;const E=new DOMParser().parseFromString(_,"image/svg+xml").getElementsByTagName("svg")[0];y.viewBox=E.getAttribute("viewBox"),y.svgObjects=Array.from(E.querySelectorAll("*[data-index]")).map(R=>({index:parseInt(R.getAttribute("data-index")),svg:R.innerHTML})),s.value={...s.value,[k]:y}})}i.value.addEventListener("mousemove",A(g,50))});function g(k){o.value={x:k.offsetX,y:k.offsetY,width:i.value.offsetWidth,height:i.value.offsetHeight}}function f(k){var S;return(S=t.sceneData.find(y=>y.index===(typeof k=="string"?parseInt(k):k)))==null?void 0:S.unitId}function p(k){d.value&&(r.value=k)}function v(k){d.value&&(r.value=-1)}function V(k){const S=f(k);a("selectUnit",S),d.value&&S&&t.canGoToUnitCallback(S)?a("goToUnit",S):r.value=k}function C(k){const S=f(k);let y="idle";r.value<0&&t.selectedUnitId&&S===t.selectedUnitId?y="selected":r.value>=0&&r.value===k&&(y="hover");const _=t.colorCallback(S,y);if(_){const{r:M,g:E,b:R,a:b,s:x}=_;return{strokeWidth:x!==void 0?x:2,stroke:`rgb(${M}, ${E}, ${R})`,strokeOpacity:1,fill:`rgb(${M}, ${E}, ${R})`,fillOpacity:b/255,cursor:`${t.canGoToUnitCallback(S)?"cursor":"default"} !important`}}else return{strokeWidth:0,stroke:"white",strokeOpacity:0,fill:"white",fillOpacity:0,cursor:"default !important"}}const h=e.ref(!1);function A(k,S){return h.value=!0,function(...y){h.value&&(h.value=!1,k.apply(this,y),setTimeout(()=>h.value=!0,S))}}return(k,S)=>(e.openBlock(),e.createElementBlock("div",{id:"container",ref_key:"container",ref:i},[e.withDirectives(e.createElementVNode("div",{class:"svg-container",style:e.normalizeStyle({opacity:!l.value||!l.value.svgObjects?0:1})},[l.value&&l.value.svgObjects?(e.openBlock(),e.createElementBlock("svg",{key:0,viewBox:l.value.viewBox},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value.svgObjects,({index:y,svg:_})=>(e.openBlock(),e.createElementBlock("g",{key:y,innerHTML:_,style:e.normalizeStyle(C(y)),onMouseenter:M=>p(y),onMouseleave:M=>v(),onClick:M=>V(y)},null,44,nt))),128))],8,ot)):e.createCommentVNode("",!0)],4),[[e.vShow,!k.viewModel.isRotating]]),e.createVNode(ie,{ref_key:"hoverProbe",ref:c},null,512)],512))}}),[["__scopeId","data-v-e6c054c7"]]),J=Symbol(),rt={key:0,class:"text-success d-none d-md-flex"},lt={class:"text-success"},it=$(e.defineComponent({__name:"VApartmentChooserNavigation",props:{canGoToUnitCallback:{type:Function,default:()=>!0},unitRenderer:{},selectedUnitId:{},prevUnitId:{},nextUnitId:{},viewModel:{}},emits:["prevUnit","nextUnit","goToUnit"],setup(m,{emit:n}){const t=m,a=e.computed(()=>t.selectedUnitId),o=e.computed(()=>t.nextUnitId),r=e.computed(()=>t.prevUnitId),s=n,l=e.inject(J);e.onMounted(()=>{window.addEventListener("keydown",u)}),e.onBeforeUnmount(()=>{window.removeEventListener("keydown",u)});function u(i){i.keyCode===37?t.prevUnitId&&s("prevUnit"):i.keyCode===39&&t.nextUnitId&&s("nextUnit")}return(i,c)=>{const d=e.resolveComponent("v-btn");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(d,{elevation:"1",icon:"mdi-rotate-right",class:"black darken-1",onClick:c[0]||(c[0]=g=>i.viewModel.rotateClockwise())}),e.createVNode(d,{elevation:"1",plain:"",icon:"mdi-chevron-left",class:"mr-sm-4 ml-sm-8 mr-3 ml-3 black darken-1",disabled:!r.value,onClick:c[1]||(c[1]=g=>s("prevUnit"))},null,8,["disabled"]),e.createVNode(d,{color:"darken-2",elevation:"1",rounded:"",plain:"",disabled:!a.value||!i.canGoToUnitCallback(a.value),onClick:c[2]||(c[2]=g=>s("goToUnit",a.value))},{default:e.withCtx(()=>[a.value&&i.canGoToUnitCallback(a.value)?(e.openBlock(),e.createElementBlock("span",rt,e.toDisplayString(e.unref(l).getLabel("seeApartment"))+" ",1)):e.createCommentVNode("",!0),e.createElementVNode("span",lt,e.toDisplayString(a.value?t.unitRenderer(a.value):"-"),1)]),_:1},8,["disabled"]),e.createVNode(d,{elevation:"1",plain:"",icon:"mdi-chevron-right",class:"mr-sm-8 ml-sm-4 mr-3 ml-3 black darken-1",disabled:!o.value,onClick:c[3]||(c[3]=g=>s("nextUnit"))},null,8,["disabled"]),e.createVNode(d,{elevation:"1",plain:"",icon:"mdi-rotate-left",class:"black darken-1",onClick:c[4]||(c[4]=g=>i.viewModel.rotateCounterClockwise())})])}}}),[["__scopeId","data-v-44ed308e"]]);class Ne{constructor(n){j(this,"_numParts");j(this,"_loadedCount");j(this,"_isError");j(this,"_finishedAction");j(this,"_errorAction");j(this,"_loadProgressAction");this._numParts=n,this._loadedCount=0,this._isError=!1,this._finishedAction=()=>{},this._errorAction=()=>{},this._loadProgressAction=()=>{}}onLoadFinished(n){return this._finishedAction=n,this}onLoadError(n){return this._errorAction=n,this}onLoadProgress(n){return this._loadProgressAction=n,this}partLoaded(){this.isFinished||(this._loadedCount++,this._loadProgressAction(this.percentLoaded),this.isFinished&&this._finishedAction())}errorDetected(){this._isError||(this._isError=!0,this._errorAction())}get isFinished(){return this._loadedCount>=this._numParts}get isError(){return this._isError}get percentLoaded(){return Math.round(this._loadedCount*100/this._numParts)}}class Ie{constructor(n,t,a,o){j(this,"_rotator");j(this,"_direction");j(this,"_frameIndex");j(this,"_sceneCount");this._rotator=n,this._direction=t,this._frameIndex=a,this._sceneCount=o}get atEnd(){return this._sceneCount===0}get frameIndex(){return this._frameIndex}nextFrame(){const n=this._rotator.clampFrameIndex(this._frameIndex+this._direction),t=this._rotator.isCardinalFrame(n)?this._sceneCount-1:this._sceneCount;return new Ie(this._rotator,this._direction,n,t)}}class st{constructor(n,t){j(this,"_cardinalFrames");j(this,"_totalFrameCount");this._cardinalFrames=n,this._totalFrameCount=t}start(n,t,a){const o=this.startFrameIndexForScene(t);return new Ie(this,n,o,a)}isCardinalFrame(n){return this._cardinalFrames.includes(n)}clampFrameIndex(n){return(this._totalFrameCount+n)%this._totalFrameCount}startFrameIndexForScene(n){return this._cardinalFrames[n]}}const ct={key:0,class:"fill-parent d-flex justify-center align-center blue-grey lighten-5"},dt={key:1,class:"frame-container"},mt={key:0,class:"frame-image"},ut=["srcset"],pt=["src"],ft={key:2,id:"image-stack",class:"frame-container"},ht=["alt"],gt=["srcset"],vt=["src"],Le=64,_e=4,kt=120,Ct=$(e.defineComponent({__name:"VApartmentChooserRotator",props:{viewModel:{},build:{default:""},cdnFileResolver:{},cardinalFrames:{}},emits:["loaded","error","progress"],setup(m,{emit:n}){const t=m,a=n,o=f(),r=e.ref(new Ne(o.length).onLoadFinished(()=>a("loaded")).onLoadProgress(C=>a("progress",C)).onLoadError(()=>a("error"))),s=e.ref(new st(t.cardinalFrames,Le)),l=e.ref(o),u=e.ref(!1),i=e.computed(()=>l.value.find(C=>C.show));e.watch(()=>t.viewModel.currentScene,(C,h)=>{const A=V(h,C),k=v(h,C);c(h,A,k)}),e.onMounted(()=>{g()});function c(C,h,A){t.viewModel.isRotating||(t.viewModel.isRotating=!0,d(s.value.start(h,C%_e,A)))}function d(C){setTimeout(()=>{l.value[C.frameIndex].show=!1;const h=C.nextFrame();l.value[h.frameIndex].show=!0,h.atEnd?g():window.requestAnimationFrame(()=>d(h))},1e3/kt)}function g(){const C=s.value.startFrameIndexForScene(t.viewModel.currentScene%_e);C in l.value&&(l.value[C].show=!0),t.viewModel.isRotating=!1}function f(){const C=[];for(let h=0;h<Le;h++){const{sourceSet:A,defaultPath:k}=p(h);C.push({index:h,sourceSet:A,defaultPath:k,show:!1})}return C}function p(C){const h=("0000"+(C+1)).slice(-4),A=t.build?`?v=${t.build}`:"",k=[`${z(t.cdnFileResolver,`/480/${h}.jpg${A}`)} 480w`,`${z(t.cdnFileResolver,`/960/${h}.jpg${A}`)} 960w`,`${z(t.cdnFileResolver,`/1280/${h}.jpg${A}`)} 1280w`].join(","),S=z(t.cdnFileResolver,`/480/${h}.jpg${A}`);return{sourceSet:k,defaultPath:S}}function v(C,h){const A=_e/2,k=Math.abs(C-h);return k>A?_e-k:k}function V(C,h){if(C===h)return 0;const k=Math.abs(C-h)<_e/2;return k&&C<h||!k&&C>h?1:-1}return(C,h)=>{const A=e.resolveComponent("v-icon");return e.openBlock(),e.createElementBlock("div",null,[r.value.isError?(e.openBlock(),e.createElementBlock("div",ct,[e.createVNode(A,{"x-large":""},{default:e.withCtx(()=>[e.createTextVNode("mdi-alert-circle-outline")]),_:1})])):u.value?(e.openBlock(),e.createElementBlock("div",ft,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,k=>(e.openBlock(),e.createElementBlock("picture",{key:k.index,alt:k.index,class:e.normalizeClass({"frame-image":!0,show:k.show})},[e.createElementVNode("source",{srcset:k.sourceSet,type:"image/jpeg"},null,8,gt),e.createElementVNode("img",{src:k.defaultPath,alt:"Building image",onLoad:h[2]||(h[2]=S=>r.value.partLoaded()),onError:h[3]||(h[3]=S=>r.value.errorDetected())},null,40,vt)],10,ht))),128))])):(e.openBlock(),e.createElementBlock("div",dt,[i.value?(e.openBlock(),e.createElementBlock("picture",mt,[e.createElementVNode("source",{srcset:i.value.sourceSet,type:"image/jpeg"},null,8,ut),e.createElementVNode("img",{src:i.value.defaultPath,onLoad:h[0]||(h[0]=k=>u.value=!0),onError:h[1]||(h[1]=k=>r.value.errorDetected())},null,40,pt)])):e.createCommentVNode("",!0)]))])}}}),[["__scopeId","data-v-0c291cb9"]]),pe=$(e.defineComponent({__name:"VFloatingCard",props:{pos:{},isHoverable:{type:Boolean}},emits:["outside"],setup(m,{emit:n}){const t=m,a=n,o=e.computed(()=>{let r,s,l,u;return t.pos.x<=t.pos.width/2?(r="-100%",l="-8px"):(r="0%",l="8px"),t.pos.y<=t.pos.height/2?(s="-100%",u="-8px"):(s="0%",u="8px"),`translate(${r}, ${s}) translate(${l}, ${u})`});return(r,s)=>{const l=e.resolveComponent("v-dialog"),u=e.resolveComponent("v-fade-transition");return e.openBlock(),e.createBlock(u,{origin:`top left ${r.pos.x} ${r.pos.y}`},{default:e.withCtx(()=>[r.isHoverable?(e.openBlock(),e.createElementBlock("div",{key:0,class:"floating-card",style:e.normalizeStyle({left:`${r.pos.x}px`,top:`${r.pos.y}px`,pointerEvents:"none",transform:o.value})},[e.renderSlot(r.$slots,"default",{isHoverable:r.isHoverable},void 0,!0)],4)):(e.openBlock(),e.createBlock(l,{key:1,value:!0,width:"auto","onClick:outside":s[0]||(s[0]=i=>a("outside",i))},{default:e.withCtx(()=>[e.renderSlot(r.$slots,"default",{isHoverable:r.isHoverable},void 0,!0)]),_:3}))]),_:3},8,["origin"])}}}),[["__scopeId","data-v-7d5e6067"]]),fe=$(e.defineComponent({__name:"VZoomBox",props:{desktop:{type:Boolean,default:!0},mobile:{type:Boolean,default:!0},maxScale:{default:10},consumeMouseClickWhenMoved:{type:Boolean,default:!0},consumeMouseUpWhenMoved:{type:Boolean,default:!0},position:{default:"absolute"}},emits:["update"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(100),r=e.ref(0),s=e.ref(0),l=e.ref(!1),u=e.ref(!1),i=e.ref(void 0),c=e.ref(!1),d=e.ref(),g=e.computed(()=>`translateX(${r.value}px) translateY(${s.value}px) scale(${f.value})`),f=e.computed(()=>o.value/100),p=e.computed(()=>t.maxScale*100);e.watch([f,r,s],()=>{U()}),e.watch(()=>t.desktop,()=>{t.desktop?v():C()}),e.watch(()=>t.mobile,()=>{t.mobile?V():h()}),e.onMounted(()=>{t.desktop&&v(),t.mobile&&V()}),e.onBeforeUnmount(()=>{t.desktop&&C(),t.mobile&&h()});function v(){d.value.addEventListener("wheel",A,{capture:!0}),d.value.addEventListener("mousedown",k,{capture:!0}),d.value.addEventListener("mousemove",S,{capture:!0}),window.addEventListener("mouseup",y,{capture:!0}),window.addEventListener("click",_,{capture:!0})}function V(){d.value.addEventListener("touchstart",M,{capture:!0}),d.value.addEventListener("touchmove",E,{capture:!0}),window.addEventListener("touchend",R,{capture:!0}),window.addEventListener("touchcancel",R,{capture:!0})}function C(){d.value.removeEventListener("wheel",A,{capture:!0}),d.value.removeEventListener("mousedown",k,{capture:!0}),d.value.removeEventListener("mousemove",S,{capture:!0}),window.removeEventListener("mouseup",y,{capture:!0}),window.removeEventListener("click",_,{capture:!0})}function h(){d.value.removeEventListener("touchstart",M,{capture:!0}),d.value.removeEventListener("touchmove",E,{capture:!0}),window.removeEventListener("touchend",R,{capture:!0}),window.removeEventListener("touchcancel",R,{capture:!0})}function A(N){const{x:D,y:H}=b(N);I(-N.deltaY/10,D,H),N.preventDefault()}function k(N){l.value=!0,c.value=!1,i.value=N}function S(N){if(l.value){const{x:D,y:H}=b(N),{x:Q,y:G}=b(i.value),W={x:D-Q,y:H-G};x(W.x),B(W.y),c.value=!0,i.value=N}}function y(N){l.value&&c.value&&t.consumeMouseUpWhenMoved&&(N.preventDefault(),N.stopImmediatePropagation())}function _(N){l.value&&(c.value&&t.consumeMouseClickWhenMoved&&(N.preventDefault(),N.stopImmediatePropagation()),l.value=!1)}function M(N){l.value=N.touches.length===1,u.value=N.touches.length===2,i.value=N}function E(N){if(l.value){const{x:D,y:H}=b(N.touches[0]),{x:Q,y:G}=b(i.value.touches[0]),W={x:D-Q,y:H-G};x(W.x),B(W.y)}else if(u.value&&N.touches.length===2){const{x:D,y:H}=b(N.touches[0]),{x:Q,y:G}=b(i.value.touches[0]),{x:W,y:ne}=b(N.touches[1]),{x:re,y:K}=b(i.value.touches[1]),ee=Math.hypot(Q-re,G-K),te=Math.hypot(D-W,H-ne),me=(W+D)/2,se=(ne+H)/2;I(te-ee,me,se)}i.value=N}function R(){l.value=!1,u.value=!1}function b(N){const{left:D,top:H}=d.value.getBoundingClientRect();return{x:N.clientX-D,y:N.clientY-H}}function x(N){const D=d.value.clientWidth,H=D*f.value;r.value=Math.max(Math.min(0,r.value+N),-(H-D))}function B(N){const D=d.value.clientHeight,H=D*f.value;s.value=Math.max(Math.min(0,s.value+N),-(H-D))}function I(N,D,H){const Q=d.value.clientWidth,G=d.value.clientHeight,W=Q*f.value,ne=G*f.value;o.value=Math.min(Math.max(100,o.value+N),p.value);const re=Q*f.value,K=G*f.value,ee=re-W,te=K-ne;r.value-=D/Q*ee,s.value-=H/G*te,x(0),B(0)}function U(){a("update",{scale:f.value,x:r.value,y:s.value,resolve:(N,D)=>{const H=d.value.clientWidth,Q=d.value.clientHeight,G=r.value/-f.value,W=s.value/-f.value,ne=G+H/f.value,re=W+Q/f.value,K=N/H*(ne-G)+G,ee=D/Q*(re-W)+W;return{x:K,y:ee}}})}return(N,D)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"box",ref:d,class:"zoom-box-container",style:e.normalizeStyle({position:t.position})},[e.createElementVNode("div",{style:e.normalizeStyle({"transform-origin":"top left",transform:g.value}),class:"zoom-box"},[e.renderSlot(N.$slots,"default",{},void 0,!0)],4)],4))}}),[["__scopeId","data-v-e5638bde"]]),Ae=4;function Fe(m){return m<Ae?m+1:1}function yt(m){return m>1?m-1:Ae}class wt{constructor(n){j(this,"_state");this._state={isRotating:!1,currentScene:n}}get isRotating(){return this._state.isRotating}set isRotating(n){this._state.isRotating=n}unlessRotatingDo(n){this.isRotating||n()}get currentScene(){return this._state.currentScene}set currentScene(n){this._state.currentScene=n}rotateCounterClockwise(){this.unlessRotatingDo(()=>{this.currentScene=Fe(this.currentScene)})}rotateClockwise(){this.unlessRotatingDo(()=>{this.currentScene=yt(this.currentScene)})}}const _t={interior:"Interiør",seeASelectionOfTheOptionsInTheProject:"Se et utvalg av tilvalgsmulighetene i prosjektet.",floorPlan:"Planløsning",allIllustrationsAreIndicativeDeviationsMayOccur:{nb:"Alle illustrasjoner er veiledende. Avvik kan forekomme.",en:"All illustrations are indicative. Discrepancies may exist."},readMoreHere:"Les mer her",iUnderstand:{nb:"Jeg forstår",en:"I understand"},share:"Share",shareToFacebook:"Share to Facebook",shareToLinkedin:"Share to Linkedin",shareToTwitter:"Share to Twitter",shareViaEmail:"Share via Email",copyLink:"Copy link",virtualView:"Virtuell Visning",slideShow:"Slide Show",room:"Room",floor:"Floor",seeApartments:"See apartments",seeApartment:"See apartment",clickAndDragToLookAround:{en:"Click and drag to look around",nb:"Klikk og dra for å se deg rundt"},clickOnTheCirclesToMoveAround:{en:"Click on the circles to move around",nb:"Klikk på sirkelene for å gå rundt"},useTheMouseWheelToZoom:{en:"Use the mouse wheel to zoom",nb:"Bruk mushjulet for å zoome"},youCanAlsoUseTheArrowKeysToMoveAround:{en:"You can also use the arrow keys to move around",nb:"Du kan også bruke pilene på tastaturet for å gå rundt"},tapAndDragToLookAround:{en:"Tap and drag to look around",nb:"Trykk og dra for å se deg rundt"},tapOnTheCirclesToMoveAround:{en:"Tap on the circles to move around",nb:"Trykk på sirkelene for å gå rundt"},useTwoFingersToZoom:{en:"Use two fingers to zoom",nb:"Bruk to fingre for å zoome"},dontShowAgain:{en:"Don't Show Again",nb:"Ikke vis igjen"}};class oe{constructor({labels:n,language:t}={labels:null,language:null}){j(this,"_labels");j(this,"_language");this._labels={..._t,...n||{}},this._language=t||"en"}getLabel(n){return n in this._labels?this.get(this._labels[n]):n}get(n){if(typeof n=="string")return n;if(this._language in n&&n[this._language])return n[this._language];for(const t in n)if(n[t])return n[t];return""}}const bt={key:0},Vt={class:"interactive-viewer"},Et={class:"fill-parent"},Bt={key:0},xt={key:1,class:"navigation"},St={key:2},Nt=4,Me=$(e.defineComponent({__name:"VApartmentChooser",props:{i18nConfig:{},showCards:{type:Boolean,default:!0},build:{default:""},cdnFileResolver:{},colorCallback:{type:Function,default:()=>({r:108,g:0,b:108,a:144,s:2})},canGoToUnitCallback:{type:Function,default:()=>!0},unitRenderer:{type:Function,default:m=>m},apartmentChooserData:{},selectedUnitId:{},nextUnitId:{},prevUnitId:{},drawObserver:{default:null},interactiveDesktop:{type:Boolean,default:!0},interactiveMobile:{type:Boolean,default:!0},useSvg:{type:Boolean,default:!1}},emits:["selectUnit","goToUnit","navUnit","hoverOverUnit","hoverOutUnit","initialized"],setup(m,{emit:n}){const t=[0,16,32,48],a=m,o=n;e.provide(J,a.i18nConfig?new oe(a.i18nConfig):new oe);const r=e.reactive({isReady:!1,isError:!1}),s=e.ref(),l=e.ref(),u=e.ref(),i=e.ref(),c=e.ref({x:0,y:0,width:0,height:0}),d=e.ref(),g=e.ref(),f=e.ref(),p=e.computed(()=>f.value.isHoverEnabled),v=e.computed(()=>a.useSvg?at:tt),V=e.computed(()=>a.selectedUnitId),C=e.computed(()=>a.nextUnitId),h=e.computed(()=>a.prevUnitId);e.watchEffect(()=>{if(V.value&&i.value){const y=s.value[V.value];y&&(i.value.currentScene=y)}}),e.onMounted(async()=>{const y=a.apartmentChooserData&&a.apartmentChooserData.startScene!==void 0?a.apartmentChooserData.startScene:Nt;u.value=a.apartmentChooserData&&a.apartmentChooserData.scenes!==void 0?a.apartmentChooserData.scenes:t,l.value=a.apartmentChooserData&&a.apartmentChooserData.sceneData!==void 0?a.apartmentChooserData.sceneData.map(E=>({unitId:E.apartmentID,index:E.index})):[],s.value=a.apartmentChooserData&&a.apartmentChooserData.sceneData!==void 0?a.apartmentChooserData.sceneData.map(E=>{const R=E.bestScene===0?4:E.bestScene;return{unitId:E.apartmentID,scene:R}}).reduce((E,R)=>({...E,[R.unitId]:R.scene}),{}):{};const _=(E,R="unitId")=>{let b=y,x=[];for(let B=0;B<Ae;B++)x.push(b),b=Fe(b);return E.sort((B,I)=>{const U=x.findIndex(D=>D===s.value[B[R]]),N=x.findIndex(D=>D===s.value[I[R]]);return U<N?-1:U>N?1:0}),E},M=E=>{i.value=new wt(E)};o("initialized",{scene:y,scenes:u.value,sceneData:l.value,scenesByApartment:s.value,unitsSceneSort:_,initialize:M})});function A(y){c.value=y}function k(y){g.value=y.hoverUnit,d.value=y.closeHandler,o("hoverOverUnit",y.hoverUnit)}function S(y){g.value=null,d.value=y.closeHandler,o("hoverOutUnit",y.hoverUnit)}return(y,_)=>{const M=e.resolveComponent("v-progress-linear");return i.value?(e.openBlock(),e.createElementBlock("div",bt,[e.createElementVNode("div",Vt,[e.createElementVNode("div",Et,[e.createVNode(fe,{desktop:r.isReady&&y.interactiveDesktop,mobile:r.isReady&&y.interactiveMobile},{default:e.withCtx(()=>[e.createVNode(Ct,{"cdn-file-resolver":y.cdnFileResolver,"view-model":i.value,"cardinal-frames":u.value,build:y.build,onProgress:_[0]||(_[0]=E=>r.progress=E),onLoaded:_[1]||(_[1]=E=>r.isReady=!0),onError:_[2]||(_[2]=E=>r.isError=!0)},null,8,["cdn-file-resolver","view-model","cardinal-frames","build"]),r.isReady?(e.openBlock(),e.createElementBlock("div",Bt,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(v.value),{"cdn-file-resolver":a.cdnFileResolver,"view-model":i.value,"selected-unit-id":V.value,"scene-data":l.value,"color-callback":a.colorCallback,"can-go-to-unit-callback":a.canGoToUnitCallback,"draw-observer":a.drawObserver,onSelectUnit:_[3]||(_[3]=E=>o("selectUnit",E)),onGoToUnit:_[4]||(_[4]=E=>o("goToUnit",E)),onHoverOver:k,onHoverOut:S,onPos:A},{default:e.withCtx(E=>[e.renderSlot(y.$slots,"default",e.normalizeProps(e.guardReactiveProps(E)),void 0,!0)]),_:3},40,["cdn-file-resolver","view-model","selected-unit-id","scene-data","color-callback","can-go-to-unit-callback","draw-observer"]))])):e.createCommentVNode("",!0)]),_:3},8,["desktop","mobile"]),g.value&&y.showCards?(e.openBlock(),e.createBlock(pe,{key:0,"is-hoverable":p.value,pos:c.value,onOutside:d.value},{default:e.withCtx(()=>[e.renderSlot(y.$slots,"default",{unit:g.value,canGoToUnit:y.canGoToUnitCallback(g.value),goToUnit:()=>y.canGoToUnitCallback(g.value)&&o("goToUnit",g.value),pos:c.value,isHoverable:p.value,close:d.value},void 0,!0)]),_:3},8,["is-hoverable","pos","onOutside"])):e.createCommentVNode("",!0),r.isReady?(e.openBlock(),e.createElementBlock("div",xt,[e.createVNode(it,{"can-go-to-unit-callback":a.canGoToUnitCallback,"unit-renderer":a.unitRenderer,"selected-unit-id":V.value,"prev-unit-id":h.value,"next-unit-id":C.value,"view-model":i.value,onGoToUnit:_[5]||(_[5]=E=>o("goToUnit",E)),onPrevUnit:_[6]||(_[6]=E=>o("navUnit",h.value)),onNextUnit:_[7]||(_[7]=E=>o("navUnit",C.value))},null,8,["can-go-to-unit-callback","unit-renderer","selected-unit-id","prev-unit-id","next-unit-id","view-model"])])):r.isError?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",St,[e.createVNode(M,{indeterminate:!r.progress,modelValue:r.progress,"onUpdate:modelValue":_[8]||(_[8]=E=>r.progress=E)},null,8,["indeterminate","modelValue"])]))])]),e.createVNode(ie,{ref_key:"hoverProbe",ref:f},null,512)])):e.createCommentVNode("",!0)}}}),[["__scopeId","data-v-528c8f5b"]]),It=["src"],At=$(e.defineComponent({__name:"VApartmentChooserV5CameraDayTimeSample",props:{timeSampleData:{},cdnFileResolver:{type:[String,Function]},currentTime:{}},setup(m){const n=m,t=e.computed(()=>z(n.cdnFileResolver,n.timeSampleData.filename));return(a,o)=>e.withDirectives((e.openBlock(),e.createElementBlock("img",{key:t.value,src:t.value,width:"100%"},null,8,It)),[[e.vShow,a.timeSampleData===a.currentTime]])}}),[["__scopeId","data-v-189d0505"]]),Dt=e.defineComponent({__name:"VApartmentChooserV5CameraDay",props:{dayData:{},cdnFileResolver:{type:[String,Function]},currentTime:{}},setup(m){const n=m;return(t,a)=>(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.dayData.timeSamples,o=>(e.openBlock(),e.createBlock(At,{"time-sample-data":o,"cdn-file-resolver":n.cdnFileResolver,"current-time":t.currentTime},null,8,["time-sample-data","cdn-file-resolver","current-time"]))),256))}}),Lt=e.defineComponent({__name:"VApartmentChooserV5Camera",props:{cameraData:{},cdnFileResolver:{type:[String,Function]},currentTime:{}},setup(m){const n=m;return(t,a)=>(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.cameraData.sunsimDayOfYear,o=>(e.openBlock(),e.createBlock(Dt,{"day-data":o,"cdn-file-resolver":n.cdnFileResolver,"current-time":n.currentTime},null,8,["day-data","cdn-file-resolver","current-time"]))),256))}}),Ft=["src"],Mt=$(e.defineComponent({__name:"VApartmentChooserV5Transition",props:{transitionData:{},cdnFileResolver:{type:[String,Function]},currentTransition:{}},emits:["goToBuilding","hoverOverBuilding","hoverOutBuilding"],setup(m,{emit:n}){const t=m,a=e.computed(()=>z(t.cdnFileResolver,t.transitionData.filename));return(o,r)=>e.withDirectives((e.openBlock(),e.createElementBlock("img",{key:a.value,src:a.value,class:"position-absolute top-left w-100 h-100"},null,8,Ft)),[[e.vShow,o.transitionData===o.currentTransition]])}}),[["__scopeId","data-v-10ab7bee"]]);function Te(m){return!("filename"in m)}function $e(m){return"filename"in m}const Tt=e.defineComponent({__name:"VApartmentChooserV5UiCamera",props:{apartmentChooserData:{},currentCamera:{},disabled:{type:Boolean}},emits:["onCameraChange"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(t.currentCamera.overlayFilename);e.watch(()=>t.currentCamera.overlayFilename,()=>{o.value=t.currentCamera.overlayFilename});const r=e.computed(()=>t.apartmentChooserData?t.apartmentChooserData.cameras.filter(Te):[]);return e.watch(o,()=>{a("onCameraChange",r.value.find(s=>s.overlayFilename===o.value))}),(s,l)=>{const u=e.resolveComponent("v-select");return e.openBlock(),e.createBlock(u,{modelValue:o.value,"onUpdate:modelValue":l[0]||(l[0]=i=>o.value=i),items:r.value,disabled:!!t.disabled,"item-title":"cameraName","item-value":"overlayFilename",variant:"solo",density:"compact","hide-details":""},null,8,["modelValue","items","disabled"])}}}),$t=e.defineComponent({__name:"VApartmentChooserV5UiDay",props:{cameraData:{},currentDay:{},disabled:{type:Boolean}},emits:["onDayChange"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(t.currentDay.dayOfYear);e.watch(()=>t.currentDay.dayOfYear,()=>{o.value=t.currentDay.dayOfYear}),e.watch(o,()=>{a("onDayChange",t.cameraData.sunsimDayOfYear.find(s=>s.dayOfYear===o.value))});function r(s){const l=new Date(0);return l.setUTCDate(s),l.toLocaleString("en-no",{month:"short",day:"numeric"})}return(s,l)=>{const u=e.resolveComponent("v-list-item"),i=e.resolveComponent("v-select");return e.openBlock(),e.createBlock(i,{modelValue:o.value,"onUpdate:modelValue":l[0]||(l[0]=c=>o.value=c),items:t.cameraData.sunsimDayOfYear,disabled:!!t.disabled,"item-title":"dayOfYear","item-value":"dayOfYear",variant:"solo",density:"compact","hide-details":""},{item:e.withCtx(({props:c})=>[e.createVNode(u,e.mergeProps(c,{title:r(c.title)}),null,16,["title"])]),selection:e.withCtx(({item:c})=>[e.createTextVNode(e.toDisplayString(r(c.title)),1)]),_:1},8,["modelValue","items","disabled"])}}}),Rt={key:0,class:"py-2"},Ot={class:"small"},Ut={class:"small"},Ht=$(e.defineComponent({__name:"VApartmentChooserV5UiTimeSample",props:{dayData:{},currentTime:{},disabled:{type:Boolean}},emits:["onTimeChange"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(t.currentTime.timeInHours),r=e.ref();e.watch(()=>t.currentTime.timeInHours,()=>{o.value=t.currentTime.timeInHours}),e.watch(o,()=>{a("onTimeChange",t.dayData.timeSamples.find(u=>u.timeInHours===o.value))});function s(u){const i=u*60,c=i/60,d=i%60;return`${c.toString().padStart(2,"0")}:${d.toString().padStart(2,"0")}`}function l(){r.value?(clearInterval(r.value),r.value=void 0):(t.dayData.timeSamples.findIndex(i=>i.timeInHours===o.value)===t.dayData.timeSamples.length-1&&(o.value=t.dayData.timeSamples[0].timeInHours),r.value=setInterval(()=>{const i=t.dayData.timeSamples.findIndex(c=>c.timeInHours===o.value);i<t.dayData.timeSamples.length-1?o.value=t.dayData.timeSamples[i+1].timeInHours:(clearInterval(r.value),r.value=void 0)},200))}return(u,i)=>{const c=e.resolveComponent("v-icon"),d=e.resolveComponent("v-btn"),g=e.resolveComponent("v-slider"),f=e.resolveComponent("v-field");return e.openBlock(),e.createBlock(f,{variant:"solo"},{default:e.withCtx(()=>[u.dayData.startTime===u.dayData.endTime?(e.openBlock(),e.createElementBlock("div",Rt,[e.createVNode(c,{style:{color:"#ffab02","vertical-align":"baseline","font-size":"20px"},class:"py-2 ml-2 mr-2 icon"},{default:e.withCtx(()=>[e.createTextVNode(" mdi-white-balance-sunny ")]),_:1}),e.createTextVNode(" "+e.toDisplayString(s(o.value)),1)])):(e.openBlock(),e.createBlock(g,{key:1,class:"pa-1",modelValue:o.value,"onUpdate:modelValue":i[0]||(i[0]=p=>o.value=p),min:u.dayData.startTime,max:u.dayData.endTime,step:u.dayData.interval,disabled:!!t.disabled,"hide-details":""},{prepend:e.withCtx(()=>[e.createVNode(d,{icon:r.value?"mdi-stop":"mdi-play",size:"x-small",variant:"flat",onClick:l},null,8,["icon"]),e.createTextVNode(" "),e.createElementVNode("span",Ot,e.toDisplayString(s(u.dayData.startTime)),1)]),append:e.withCtx(()=>[e.createElementVNode("span",Ut,e.toDisplayString(s(u.dayData.endTime)),1),e.createTextVNode(" "),e.createVNode(c,{style:{color:"#ffab02","vertical-align":"baseline","font-size":"20px"},class:"ml-2 mr-2 icon"},{default:e.withCtx(()=>[e.createTextVNode(" mdi-white-balance-sunny ")]),_:1}),e.createTextVNode(" "+e.toDisplayString(s(o.value)),1)]),_:1},8,["modelValue","min","max","step","disabled"]))]),_:1})}}}),[["__scopeId","data-v-cb62dcc2"]]),Pt=e.defineComponent({__name:"VApartmentChooserV5UiRotator",props:{apartmentChooserData:{},currentScene:{},selectedId:{},renderDisplay:{type:Function}},emits:["onRotateStart","onRotateFinish","onSceneChange","onDisplayClick"],setup(m,{expose:n,emit:t}){const a=m,o=t;n({rotateShortestRoute:g});const r=e.ref(!1),s=e.ref(a.currentScene),l=e.ref(a.selectedId);e.watchEffect(()=>{s.value=a.currentScene}),e.watchEffect(()=>{l.value=a.selectedId}),e.watchEffect(()=>{o("onSceneChange",s.value)});const u=e.computed(()=>r.value?!1:a.apartmentChooserData.loopable?!0:s.value!==a.apartmentChooserData.scenes[0]),i=e.computed(()=>r.value?!1:a.apartmentChooserData.loopable?!0:s.value!==a.apartmentChooserData.scenes[a.apartmentChooserData.scenes.length-1]);function c(){const p=s.value;let v=a.apartmentChooserData.scenes.findIndex(C=>C===p)+1;v>=a.apartmentChooserData.scenes.length&&(v=0);const V=a.apartmentChooserData.scenes[v];a.apartmentChooserData.loopable&&p>V?f(p,V+a.apartmentChooserData.scenes.length):f(p,V)}async function d(){const p=s.value;let v=a.apartmentChooserData.scenes.findIndex(C=>C===p)-1;v<0&&(v=a.apartmentChooserData.scenes[a.apartmentChooserData.scenes.length-1]);const V=a.apartmentChooserData.scenes[v];a.apartmentChooserData.loopable&&p<V?f(p+a.apartmentChooserData.scenes.length,V):f(p,V)}function g(p){const v=s.value;if(a.apartmentChooserData.loopable)if(p<v){let V=v-p,C=v-(a.apartmentChooserData.cameras.length+p);return Math.abs(V)>Math.abs(C)?f(v,p):f(v,a.apartmentChooserData.cameras.length+p)}else{let V=v-p,C=a.apartmentChooserData.cameras.length+v-p;return Math.abs(V)>Math.abs(C)?f(v,p):f(a.apartmentChooserData.cameras.length+v,p)}else return f(v,p)}function f(p,v){return new Promise(V=>{r.value=!0,o("onRotateStart",{from:p,to:v});let C,h=p;C=setInterval(()=>{h<v?(h++,s.value=Math.abs(h%a.apartmentChooserData.cameras.length)):h>v?(h--,s.value=Math.abs(h%a.apartmentChooserData.cameras.length)):(clearInterval(C),o("onRotateFinish",{from:p,to:v}),r.value=!1,V())},50)})}return(p,v)=>{const V=e.resolveComponent("v-btn"),C=e.resolveComponent("v-chip");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(V,{class:"mx-2",icon:"mdi-restore",disabled:!u.value,onClick:d},null,8,["disabled"]),p.renderDisplay&&l.value?(e.openBlock(),e.createBlock(C,{key:0,variant:"flat",color:"white",size:"x-large",onClick:v[0]||(v[0]=h=>o("onDisplayClick",l.value))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(p.renderDisplay(l.value)),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(V,{class:"mx-2",icon:"mdi-reload",disabled:!i.value,onClick:c},null,8,["disabled"])],64)}}}),jt=["innerHTML"],Yt=$(e.defineComponent({__name:"VApartmentChooserV5Overlay",props:{cdnFileResolver:{type:[String,Function]},colorCallback:{type:Function},currentCamera:{},selectedId:{}},emits:["onClick","onHoverOver","onHoverOut","updateSvgContainer"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(),r=e.ref(),s=e.ref(t.selectedId),l=e.reactive({});e.watch(()=>t.selectedId,()=>{s.value=t.selectedId}),e.watchEffect(()=>{for(const i in l){const{element:c,state:d}=l[i],{r:g,g:f,b:p,a:v,s:V}=t.colorCallback(i,d)||{r:0,g:0,b:0,a:0,s:0};c.style.fill=`rgba(${g}, ${f}, ${p}, ${v/255})`,c.style.stroke=`rgb(${g}, ${f}, ${p})`,c.style.strokeWidth=V.toString()}}),e.watch(s,()=>{for(const i in l)l[i].state==="selected"&&i!==s.value?l[i].state="idle":l[i].state!=="selected"&&i===s.value&&(l[i].state="selected")}),e.watchEffect(async()=>{o.value=await q.loadText(z(t.cdnFileResolver,t.currentCamera.overlayFilename)),u()}),e.watch(()=>r.value,()=>{r.value&&new ResizeObserver(u).observe(r.value)});function u(){e.nextTick(()=>{const i=r.value.firstChild;if(i){if(a("updateSvgContainer",i),!i.hasAttribute("viewBox")){const d=`0 0 ${i.getAttribute("width")} ${i.getAttribute("height")}`;i.setAttribute("viewBox",d)}i.setAttribute("width",r.value.offsetWidth.toString()),i.setAttribute("height",r.value.offsetHeight.toString()),i.querySelectorAll("[data-apartment-id]").forEach(d=>{d.style.strokeWidth="0",d.style.stroke="rgba(255,255,255,0)",d.style.fill="rgba(255,255,255,0)",d.querySelectorAll("path").forEach(f=>{f.style.stroke="inherit",f.style.fill="inherit"});const g=d.getAttribute("data-apartment-id");l[g]={element:d,state:s.value===g?"selected":"idle"},d.addEventListener("mouseover",()=>{l[g].state==="idle"&&(l[g].state="hover"),a("onHoverOver",g)}),d.addEventListener("mouseout",()=>{l[g].state==="hover"&&(l[g].state="idle"),a("onHoverOut",g)}),d.addEventListener("click",()=>{a("onClick",g)})})}})}return(i,c)=>(e.openBlock(),e.createBlock(e.Transition,null,{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("div",{ref_key:"svgContainer",ref:r,key:i.currentCamera.overlayFilename,class:"w-100 h-100 position-absolute top-left",style:{"z-index":"5"},innerHTML:o.value},null,8,jt))]),_:1}))}}),[["__scopeId","data-v-1a2dbfd0"]]),zt="data:image/png;base64,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",he=e.defineComponent({__name:"VNorthDirection",props:{longitude:{}},setup(m){const n=m,t=e.computed(()=>({transform:`rotate(${90-(n.longitude||0)}deg)`,transition:" transform 0.5s ease-in"}));return(a,o)=>{const r=e.resolveComponent("v-img");return e.openBlock(),e.createBlock(r,{src:e.unref(zt),style:e.normalizeStyle(t.value)},null,8,["src","style"])}}});class ge{constructor(n){j(this,"_buildingIds");this._buildingIds=n}static empty(){return new ge([])}getBuildingId(n,t,a){const o=this._getBuildingIndex(n,t,a);if(o!==void 0)return this._buildingIds[o]}_getBuildingIndex(n,t,a){const[o,r,s,l]=n.getPixel(t,a);if(l===255&&o===r&&r===s)return o}}const Wt=180;class Re{constructor(n){j(this,"_cdnFileResolver");j(this,"_resourceLoader");this._cdnFileResolver=n,this._resourceLoader=new q}constructFileUrl(n){return this._cdnFileResolver?z(this._cdnFileResolver,`/${n}`):null}loadBuildingMapImage(n){const t=this.constructFileUrl(n.lookupFilename);return t?this._resourceLoader.loadImage(t):null}getViewLongitude(n){return n.cameraRotation&&n.cameraRotation.y+270}getBuildingData(n){const t=n?n.buildings:[],a=t.map(r=>r.id),o=t.map(r=>({id:r.id,url:this.constructFileUrl(r.overlayFilename)}));return{buildingIds:a,buildingOverlays:o}}getBackgroundImageData(n){return"days"in n?this.processMultipleDays(n.days):[this.processTimeSamples(Wt,n.timeSamples)]}processMultipleDays(n){return n.map(t=>this.processTimeSamples(t.dayOfYear,t.timeSamples))}processTimeSamples(n,t){return{urls:t.map(o=>this.constructFileUrl(o.filename)),referenceDate:this.makeReferenceDate(n)}}makeReferenceDate(n){const t=new Date(0);return t.setUTCDate(n),t}async loadBuildingChooser(n){try{if(n){const t=await this.loadBuildingMapImage(n);if(t){const a=this.getViewLongitude(n),{buildingIds:o,buildingOverlays:r}=this.getBuildingData(n),s=this.getBackgroundImageData(n);return{mapImage:t,viewLongitude:a,buildingIds:o,buildingOverlays:r,backgrounds:s}}}return null}catch{return null}}}class ve{constructor(n){j(this,"_mapImage");j(this,"_context");this._mapImage=n,this._context=null}static empty(){return new ve(null)}update(n){this._mapImage&&(this._context=n.getContext("2d",{willReadFrequently:!0}),this._context.drawImage(this._mapImage,0,0,n.width,n.height))}getPixel(n,t){try{return this._context?this._context.getImageData(n,t,1,1).data:[0,0,0,0]}catch{return[0,0,0,0]}}}const Gt=new Date(0);class Ee{constructor(n){j(this,"_imagesByDay");j(this,"_state");this._imagesByDay=n,this._state={selectedIndex:0}}static empty(){return new Ee([{referenceDate:Gt,urls:[]}])}selectIndex(n){n<this._imagesByDay.length&&(this._state.selectedIndex=n)}get dates(){return this._imagesByDay.map(n=>n.referenceDate)}get hasMultipleDates(){return this._imagesByDay.length>1}get selectedIndex(){return this._state.selectedIndex}get selectedDate(){return this._imagesByDay[this.selectedIndex].referenceDate}get imageUrls(){return this._imagesByDay[this.selectedIndex].urls}}function be(m){return("0"+m).slice(-2)}function Qt(){const m=new Date;return[m.getFullYear().toString(),be(m.getMonth()+1),be(m.getDate())," ",be(m.getHours()),be(m.getMinutes()),be(m.getSeconds())].join("")}function qt(){return"Visuado-Snapshot-"+Qt()}class Zt{constructor(n,t){j(this,"data");this.data=n}download(n=null){n=n||qt();const t=document.createElement("a");typeof t.download=="string"?(document.body.appendChild(t),t.download=n,t.href=this.data,t.click(),document.body.removeChild(t)):location.replace(this.data)}}const Xt={class:"actions-bar position-absolute top-left d-flex w-100 justify-center align-center",style:{"z-index":"7"}},Jt={class:"pa-2 pr-0",style:{flex:"1"}},Kt={class:"pa-2 pr-0",style:{flex:"1"}},eo={class:"pa-2",style:{flex:"2"}},to={class:"actions-bar position-absolute bottom-right d-flex w-100 justify-center align-center",style:{"z-index":"7"}},oo={class:"position-absolute bottom-right",style:{"z-index":"7",width:"50px",height:"50px"}},no=["innerHTML"],ao={style:{"z-index":"7"}},ro=$(e.defineComponent({__name:"VApartmentChooserV5",props:{apartmentChooserData:{},cdnFileResolver:{},colorCallback:{type:Function,default:()=>({r:0,g:0,b:0,a:0,s:0})},i18nConfig:{},customOverlayContent:{},selectedId:{},defaultCamera:{},defaultDay:{},defaultTime:{},renderDisplay:{}},emits:["onClick","onHoverOver","onHoverOut","onMouseMove"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(),r=e.ref(),s=e.ref(),l=e.ref(null),u=e.ref(),i=e.ref(),c=e.ref(!1),d=e.ref(!1),g=e.ref(),f=e.ref(),p=e.computed(()=>f.value.isHoverEnabled),v=e.ref({x:0,y:0,width:0,height:0}),V=e.ref(),C=e.ref(t.apartmentChooserData);e.onMounted(()=>c.value=!0);const h=e.computed(()=>C.value?C.value.cameras.filter(Te):[]),A=e.computed(()=>C.value?C.value.cameras.filter($e):[]);e.watch([C,()=>t.cdnFileResolver,()=>t.defaultCamera],async()=>{t.cdnFileResolver&&(C.value||(C.value=await q.loadJson(z(t.cdnFileResolver,"/apartmentChooser.json"))),t.defaultCamera?o.value=h.value.find(B=>B.cameraName===t.defaultCamera)||h.value[0]:o.value=h.value[0],u.value=C.value.cameras.findIndex(B=>B===o.value))},{immediate:!0}),e.watch([C,()=>t.cdnFileResolver,()=>t.defaultDay],()=>{C.value&&t.cdnFileResolver&&(t.defaultDay?r.value=o.value.sunsimDayOfYear.find(B=>B.dayOfYear===t.defaultDay)||o.value.sunsimDayOfYear[0]:r.value=o.value.sunsimDayOfYear[0])},{immediate:!0}),e.watch([C,()=>t.cdnFileResolver,()=>t.defaultTime],()=>{C.value&&t.cdnFileResolver&&(t.defaultTime?s.value=r.value.timeSamples.find(B=>B.timeInHours===t.defaultTime)||r.value.timeSamples[0]:s.value=r.value.timeSamples.find(B=>B.timeInHours===r.value.defaultHour)||r.value.timeSamples[0])},{immediate:!0});function k(B){o.value!==B&&g.value.rotateShortestRoute(C.value.cameras.findIndex(I=>I===B))}function S(B){u.value=B,$e(C.value.cameras[u.value])?l.value=C.value.cameras[u.value]:(e.nextTick(()=>{y(C.value.cameras[u.value])}),l.value=null)}function y(B){const I=r.value;o.value=B,u.value=C.value.cameras.findIndex(U=>U===o.value),e.nextTick(()=>{_(o.value.sunsimDayOfYear.find(U=>U.dayOfYear===I.dayOfYear)||o.value.sunsimDayOfYear[0])})}function _(B){const I=s.value;r.value=B,e.nextTick(()=>{M(r.value.timeSamples.find(U=>U.timeInHours===I.timeInHours)||r.value.timeSamples.find(U=>U.timeInHours===r.value.defaultHour)||r.value.timeSamples[0])})}function M(B){s.value=B}function E(B){a("onClick",B,()=>{const I=C.value.unitData.find(U=>U.unitId===B);I&&g.value.rotateShortestRoute(I.bestScene)})}function R(B){a("onHoverOver",B),i.value=B}function b(B){a("onHoverOut",B),i.value=void 0}function x(B){const{layerX:I,layerY:U}=B;let N=B.target,D=!1;for(;N;)if(N===V.value){D=!0;break}else N=N.parentElement;D?v.value={x:I,y:U,width:B.currentTarget.clientWidth,height:B.currentTarget.clientHeight}:v.value=void 0,a("onMouseMove",B,v.value)}return(B,I)=>{const U=e.resolveComponent("v-skeleton-loader");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(U,{type:"image",class:"w-100 h-100 position-relative",loading:!c.value||!C.value},{default:e.withCtx(()=>[e.createVNode(e.Transition,null,{default:e.withCtx(()=>[e.createElementVNode("div",{onMousemove:x},[e.createElementVNode("div",Xt,[e.createElementVNode("div",Jt,[e.createVNode(Tt,{"apartment-chooser-data":C.value,"current-camera":o.value,disabled:d.value,onOnCameraChange:k},null,8,["apartment-chooser-data","current-camera","disabled"])]),e.createElementVNode("div",Kt,[e.createVNode($t,{"camera-data":o.value,"current-day":r.value,disabled:d.value,onOnDayChange:_},null,8,["camera-data","current-day","disabled"])]),e.createElementVNode("div",eo,[e.createVNode(Ht,{"day-data":r.value,"current-time":s.value,disabled:d.value,onOnTimeChange:M},null,8,["day-data","current-time","disabled"])])]),e.createElementVNode("div",to,[e.createVNode(Pt,{ref_key:"rotator",ref:g,"apartment-chooser-data":C.value,"current-scene":u.value,"selected-id":B.selectedId,"render-display":t.renderDisplay,onOnDisplayClick:E,onOnSceneChange:S,onOnRotateStart:I[0]||(I[0]=N=>d.value=!0),onOnRotateFinish:I[1]||(I[1]=N=>d.value=!1)},null,8,["apartment-chooser-data","current-scene","selected-id","render-display"])]),e.createElementVNode("div",oo,[e.createVNode(he,{longitude:o.value.cameraRotation.y+270},null,8,["longitude"])]),e.createVNode(fe,{position:"relative"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,N=>(e.openBlock(),e.createBlock(Lt,{key:N.overlayFilename,"camera-data":N,"cdn-file-resolver":t.cdnFileResolver,"current-time":s.value},null,8,["camera-data","cdn-file-resolver","current-time"]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(A.value,N=>(e.openBlock(),e.createBlock(Mt,{"transition-data":N,"cdn-file-resolver":t.cdnFileResolver,"current-transition":l.value},null,8,["transition-data","cdn-file-resolver","current-transition"]))),256)),t.customOverlayContent?(e.openBlock(),e.createElementBlock("div",{key:0,class:"w-100 h-100 position-absolute top-left",style:{"z-index":"6","pointer-events":"none"},innerHTML:t.customOverlayContent},null,8,no)):e.createCommentVNode("",!0),e.withDirectives(e.createVNode(Yt,{"cdn-file-resolver":B.cdnFileResolver,"color-callback":t.colorCallback,"current-camera":o.value,"selected-id":t.selectedId,onOnClick:E,onOnHoverOver:R,onOnHoverOut:b,onUpdateSvgContainer:I[2]||(I[2]=N=>V.value=N)},null,8,["cdn-file-resolver","color-callback","current-camera","selected-id"]),[[e.vShow,l.value===null]])]),_:1}),B.$slots.popup&&v.value&&i.value?(e.openBlock(),e.createBlock(pe,{key:0,"is-hoverable":p.value,pos:v.value},{default:e.withCtx(()=>[e.createElementVNode("div",ao,[e.renderSlot(B.$slots,"popup",e.normalizeProps(e.guardReactiveProps({hoverId:i.value,hoverable:p.value})),void 0,!0)])]),_:3},8,["is-hoverable","pos"])):e.createCommentVNode("",!0)],32)]),_:3})]),_:3},8,["loading"]),e.createVNode(ie,{ref_key:"hoverProbe",ref:f},null,512)],64)}}}),[["__scopeId","data-v-8841908c"]]),lo={class:"sunsim-bar-wrapper"},io={class:"sunsim-date d-flex align-center pl-5 pr-5"},so={key:1,class:"text-center text-body-1"},co={class:"sunsim-wrapper d-flex align-center px-3"},mo={class:"sunsim-time-label text-body-1 font-weight-normal ml-2"},Oe=$(e.defineComponent({__name:"VBuildingChooserSunSimControl",props:{modelValue:{},dateSelector:{},isLoading:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(t.modelValue),r=e.ref();function s(c){return c.toLocaleString("en-no",{month:"short",day:"numeric"})}const l=e.computed(()=>{const c=Math.floor(o.value/2).toString().padStart(2,"0"),d=o.value%2===0?"00":"30";return`${c}:${d}`}),u=e.computed(()=>t.dateSelector.dates.map(s)),i=e.computed({get(){return s(t.dateSelector.selectedDate)},set(c){t.dateSelector.selectIndex(u.value.indexOf(c))}});return e.watch(o,c=>{a("update:modelValue",c)}),e.watch(r,c=>{t.dateSelector.selectIndex(u.value.indexOf(c))}),e.watch(()=>t.modelValue,c=>{o.value=Math.floor(c)}),e.watchEffect(()=>{r.value=s(t.dateSelector.selectedDate)}),(c,d)=>{const g=e.resolveComponent("v-icon"),f=e.resolveComponent("v-select"),p=e.resolveComponent("v-progress-linear"),v=e.resolveComponent("v-slider");return e.openBlock(),e.createElementBlock("div",lo,[e.createElementVNode("div",io,[e.createVNode(g,{color:"black",class:"mr-2",icon:"mdi-calendar-blank-outline"}),c.dateSelector.hasMultipleDates?(e.openBlock(),e.createBlock(f,{key:0,modelValue:r.value,"onUpdate:modelValue":d[0]||(d[0]=V=>r.value=V),items:u.value,density:"compact",variant:"underlined","hide-details":"",class:"day-selector"},null,8,["modelValue","items"])):(e.openBlock(),e.createElementBlock("span",so,e.toDisplayString(i.value),1))]),e.createElementVNode("div",co,[e.createElementVNode("span",mo,e.toDisplayString(l.value),1),e.createVNode(g,{medium:"",class:"ml-2 mr-2 icon"},{default:e.withCtx(()=>[e.createTextVNode("mdi-white-balance-sunny")]),_:1}),c.isLoading?(e.openBlock(),e.createBlock(p,{key:0,style:{left:0,transform:"none"},indeterminate:"",rounded:"",height:"6",color:"grey lighten-1",class:"mr-2"})):(e.openBlock(),e.createBlock(v,{key:1,modelValue:o.value,"onUpdate:modelValue":d[1]||(d[1]=V=>o.value=V),min:0,max:47,step:1,"thumb-label":!1,"hide-details":!0,"thumb-color":"white","thumb-size":"25","track-size":"7","track-fill-color":"transparent",class:"sunsim-slider mr-1"},null,8,["modelValue"]))])])}}}),[["__scopeId","data-v-d5a3d3f8"]]),uo={key:0},po=["src"],Ue=$(e.defineComponent({__name:"VBuildingChooserSceneImageStack",props:{imageUrls:{},activeIndex:{}},emits:["resize","ready","preloaded","reset"],setup(m,{emit:n}){const t=m,a=n,o=e.ref("init"),r=e.ref(new Ne(0)),s=e.ref();e.watch(()=>t.imageUrls,i=>{a("reset"),u(i)}),e.onMounted(()=>{u(t.imageUrls),new ResizeObserver(i=>{window.requestAnimationFrame(()=>{const c=i[0].contentRect.width,d=i[0].contentRect.height;a("resize",{width:c,height:d})})}).observe(s.value)});function l(){o.value="preloaded",a("preloaded")}function u(i){o.value="init",s.value.src=i[0],r.value=new Ne(i.length).onLoadFinished(()=>{o.value="loaded",a("ready")})}return(i,c)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("img",{ref_key:"baseImage",ref:s,class:"image-instance zero",style:{opacity:1,borderRadius:50},onLoad:l},null,544),o.value==="preloaded"||o.value==="loaded"?e.withDirectives((e.openBlock(),e.createElementBlock("div",uo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.imageUrls,(d,g)=>(e.openBlock(),e.createElementBlock("img",{key:g,class:e.normalizeClass({"image-instance":!0,active:g===i.activeIndex}),src:d,onLoad:c[0]||(c[0]=f=>r.value.partLoaded())},null,42,po))),128))],512)),[[e.vShow,o.value==="loaded"]]):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-8d357c5f"]]),fo={key:0,style:{height:"50vh"},class:"d-flex justify-center align-center blue-grey lighten-5"},ho={class:"image-instances"},go={key:0},vo={class:"svg-container"},ko=["viewBox"],Co=["innerHTML","data-building-id","onMouseover","onMouseout","onMousemove","onClick"],yo=["innerHTML"],wo=$(e.defineComponent({__name:"VBuildingChooserSvg",props:{showCards:{type:Boolean,default:!0},colorCallback:{type:Function,default:()=>({r:108,g:0,b:108,a:144,s:2})},canGoToBuildingCallback:{type:Function,default:()=>!0},buildingChooserTimeOfDay:{},cdnFileResolver:{},i18nConfig:{},interactiveDesktop:{type:Boolean,default:!0},interactiveMobile:{type:Boolean,default:!0},customOverlayContent:{},buildingChooserData:{}},emits:["goToBuilding","hoverOverBuilding","hoverOutBuilding"],setup(m,{emit:n}){const t=m,a=n;e.provide(J,t.i18nConfig?new oe(t.i18nConfig):new oe);const o=e.ref({preloaded:!1,ready:!1}),r=e.ref({width:0,height:0}),s=e.ref({x:0,y:0,width:0,height:0}),l=e.ref(),u=e.ref(new Date().getHours()*2+(new Date().getMinutes()<30?0:1)),i=e.ref(!1),c=e.ref(new q),d=e.ref(),g=e.ref("0 0 0 0"),f=e.ref(),p=e.ref(),v=e.ref(ge.empty()),V=e.ref(ve.empty()),C=e.ref(),h=e.computed(()=>C.value.isHoverEnabled);e.watch(l,(b,x)=>{b?a("hoverOverBuilding",b):a("hoverOutBuilding",x)}),e.watchEffect(()=>{if(t.buildingChooserTimeOfDay){const[b,x,B]=/^(\d\d):(\d\d)$/.exec(t.buildingChooserTimeOfDay),I=parseInt(B);u.value=parseInt(x)*2+(I<15?0:I>45?2:1)}}),e.onMounted(async()=>{const x=await new Re(t.cdnFileResolver).loadBuildingChooser(t.buildingChooserData);if(x){V.value=new ve(x.mapImage),v.value=new ge(x.buildingIds),f.value=new Ee(x.backgrounds),p.value={buildingOverlays:x.buildingOverlays,viewLongitude:x.viewLongitude};const B=[];for(let{id:I,url:U}of x.buildingOverlays)c.value.loadJson(U.replace(".png",".svg")).then(N=>{const H=new DOMParser().parseFromString(N,"image/svg+xml").getElementsByTagName("svg")[0];g.value=H.getAttribute("viewBox"),B.push({id:I,svg:H.innerHTML})});d.value=B}else i.value=!0});function A({width:b,height:x}){r.value.width=b,r.value.height=x}function k(){o.value={preloaded:!1,ready:!1}}function S(b){const x=t.colorCallback(b,b===l.value?"hover":"idle"),B=[];return b===l.value?B.push("hover"):B.push("idle"),x&&t.canGoToBuildingCallback(b)?B.push("clickable"):B.push("restricted"),B.join(" ")}function y(b){const x=t.colorCallback(b,b===l.value?"hover":"idle");if(x){const{r:B,g:I,b:U,a:N,s:D}=x;return{strokeWidth:D!==void 0?D:2,stroke:`rgb(${B}, ${I}, ${U})`,strokeOpacity:1,fill:`rgb(${B}, ${I}, ${U})`,fillOpacity:N/255,cursor:`${t.canGoToBuildingCallback(b)?"cursor":"default"} !important`}}else return{strokeWidth:0,stroke:"white",strokeOpacity:0,fill:"white",fillOpacity:0,cursor:"default !important"}}function _(b,x){const{layerX:B,layerY:I}=b;h.value&&(s.value={x:B,y:I,width:r.value.width,height:r.value.height},l.value=x,a("hoverOverBuilding",x))}function M(b,x){const{layerX:B,layerY:I}=b;h.value&&(s.value={x:B,y:I,width:r.value.width,height:r.value.height},l.value=void 0,a("hoverOutBuilding",x))}function E(b,x){const{layerX:B,layerY:I}=b;h.value&&(s.value={x:B,y:I,width:r.value.width,height:r.value.height})}function R(b){l.value=b,h.value&&l.value&&t.canGoToBuildingCallback(l.value)&&a("goToBuilding",l.value)}return(b,x)=>{const B=e.resolveComponent("v-icon");return i.value?(e.openBlock(),e.createElementBlock("div",fo,[e.createVNode(B,{"x-large":""},{default:e.withCtx(()=>[e.createTextVNode("mdi-alert-circle-outline")]),_:1})])):p.value?(e.openBlock(),e.createElementBlock("div",{key:1,style:e.normalizeStyle(`height: ${r.value.height}px; position: relative`),class:"image-container"},[e.createVNode(fe,{desktop:b.interactiveDesktop,mobile:b.interactiveMobile},{default:e.withCtx(()=>[e.createElementVNode("div",ho,[e.createVNode(Ue,{"image-urls":f.value.imageUrls,"active-index":u.value,onResize:A,onPreloaded:x[0]||(x[0]=I=>o.value.preloaded=!0),onReady:x[1]||(x[1]=I=>o.value.ready=!0),onReset:k},null,8,["image-urls","active-index"]),d.value?e.withDirectives((e.openBlock(),e.createElementBlock("div",go,[e.createElementVNode("div",vo,[(e.openBlock(),e.createElementBlock("svg",{viewBox:g.value},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,({id:I,svg:U},N)=>(e.openBlock(),e.createElementBlock("g",{key:N,innerHTML:U,"data-building-id":I,class:e.normalizeClass(S(I)),style:e.normalizeStyle(y(I)),onMouseover:D=>_(D,I),onMouseout:D=>M(D,I),onMousemove:D=>E(D),onClick:D=>R(I)},null,46,Co))),128))],8,ko))])],512)),[[e.vShow,o.value.preloaded]]):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",{class:"custom-overlay-layer",innerHTML:b.customOverlayContent},null,8,yo),[[e.vShow,o.value.preloaded]])])]),_:1},8,["desktop","mobile"]),e.withDirectives(e.createElementVNode("div",null,[p.value.viewLongitude?(e.openBlock(),e.createBlock(he,{key:0,class:"north-indicator",longitude:p.value.viewLongitude},null,8,["longitude"])):e.createCommentVNode("",!0),e.createVNode(Oe,{modelValue:u.value,"onUpdate:modelValue":x[2]||(x[2]=I=>u.value=I),"date-selector":f.value,"is-loading":!o.value.ready},null,8,["modelValue","date-selector","is-loading"])],512),[[e.vShow,o.value.preloaded]]),b.showCards&&l.value?(e.openBlock(),e.createBlock(pe,{key:0,"is-hoverable":h.value,pos:s.value,onOutside:x[3]||(x[3]=()=>l.value=void 0)},{default:e.withCtx(()=>[e.renderSlot(b.$slots,"default",{building:l.value,canGoToBuilding:b.canGoToBuildingCallback(l.value),goToBuilding:()=>b.canGoToBuildingCallback(l.value)&&a("goToBuilding",l.value),pos:s.value,isHoverable:h.value,close:()=>l.value=void 0},void 0,!0)]),_:3},8,["is-hoverable","pos"])):e.createCommentVNode("",!0),e.createVNode(ie,{ref_key:"hoverProbe",ref:C},null,512)],4)):e.createCommentVNode("",!0)}}}),[["__scopeId","data-v-5e1006a9"]]),_o=$(e.defineComponent({__name:"VBuildingChooserRasterOverlay",props:{imageUrl:{},dimensions:{},color:{default:()=>({r:108,g:0,b:108,a:144,s:2})}},setup(m,{expose:n}){const t=m;n({setupDraw:c});const a=e.ref(!1),o=e.ref(),r=e.ref(new q),s=e.ref(),l=e.ref(),u=e.ref([]),i=e.ref();e.watch(()=>t.color,(f,p)=>{(f.r!==p.r||f.g!==p.g||f.b!==p.b||f.a!==p.a)&&d()}),e.onMounted(async()=>{o.value=await r.value.loadImage(t.imageUrl),c()});function c(){if(!o.value||!i.value)return;const{width:f,height:p}=t.dimensions;if(!(f===0||p===0)){s.value=i.value.getContext("2d",{willReadFrequently:!0}),s.value.drawImage(o.value,0,0,f,p),l.value=s.value.getImageData(0,0,f,p);for(let v=3;v<l.value.data.length;v+=4)l.value.data[v]!==0&&u.value.push(v);d(),a.value=!0}}function d(){s.value&&l.value&&(g(),s.value.putImageData(l.value,0,0))}function g(){if(t.color)for(let f=0;f<u.value.length;f++)l.value.data[u.value[f]-3]=t.color.r,l.value.data[u.value[f]-2]=t.color.g,l.value.data[u.value[f]-1]=t.color.b,l.value.data[u.value[f]]=t.color.a}return(f,p)=>(e.openBlock(),e.createElementBlock("canvas",e.mergeProps({ref_key:"canvas",ref:i,class:"overlay"},f.dimensions),null,16))}}),[["__scopeId","data-v-9e4cdd0e"]]),bo={key:0,style:{height:"50vh"},class:"d-flex justify-center align-center blue-grey lighten-5"},Vo={class:"image-instances"},Eo=["innerHTML"],Bo=$(e.defineComponent({__name:"VBuildingChooserRaster",props:{showCards:{type:Boolean,default:!0},colorCallback:{type:Function,default:()=>({r:108,g:0,b:108,a:144,s:2})},canGoToBuildingCallback:{type:Function,default:()=>!0},buildingChooserTimeOfDay:{},cdnFileResolver:{},i18nConfig:{},interactiveDesktop:{type:Boolean,default:!0},interactiveMobile:{type:Boolean,default:!0},customOverlayContent:{},buildingChooserData:{}},emits:["goToBuilding","hoverOverBuilding","hoverOutBuilding"],setup(m,{emit:n}){const t=m,a=n;e.provide(J,t.i18nConfig?new oe(t.i18nConfig):new oe);const o=e.ref(),r=e.ref({preloaded:!1,ready:!1}),s=e.ref({width:0,height:0}),l=e.ref({x:0,y:0,width:0,height:0}),u=e.ref(),i=e.ref(ge.empty()),c=e.ref(ve.empty()),d=e.ref(),g=e.ref(new Date().getHours()*2+(new Date().getMinutes()<30?0:1)),f=e.ref((b,x)=>({x:b,y:x})),p=e.ref(!1),v=e.ref(),V=e.ref(),C=e.ref(),h=e.computed(()=>{var b;return(b=v.value)==null?void 0:b.isHoverEnabled});e.watchEffect(()=>{if(t.buildingChooserTimeOfDay){const[b,x,B]=/^(\d\d):(\d\d)$/.exec(t.buildingChooserTimeOfDay),I=parseInt(B);g.value=parseInt(x)*2+(I<15?0:I>45?2:1)}}),e.watch(d,(b,x)=>{b?a("hoverOverBuilding",b):a("hoverOutBuilding",x)}),e.onMounted(async()=>{const x=await new Re(t.cdnFileResolver).loadBuildingChooser(t.buildingChooserData);x?(c.value=new ve(x.mapImage),i.value=new ge(x.buildingIds),o.value=new Ee(x.backgrounds),u.value={buildingOverlays:x.buildingOverlays,viewLongitude:x.viewLongitude},y()):p.value=!0});function A({width:b,height:x}){s.value.width=b,s.value.height=x,e.nextTick(y)}function k(){r.value={preloaded:!1,ready:!1}}function S(b){const{layerX:x,layerY:B}=b,{x:I,y:U}=f.value(x,B);return i.value.getBuildingId(c.value,I,U)}function y(){if(V.value&&(c.value.update(V.value),C.value))for(const b of C.value)b.setupDraw()}function _(b){const{layerX:x,layerY:B}=b;h.value&&(d.value=S(b),d.value!==void 0&&(l.value={x,y:B,width:s.value.width,height:s.value.height}))}function M(b){d.value=S(b),h.value&&d.value&&a("goToBuilding",d.value)}function E(b){return t.colorCallback(b,b===d.value?"hover":"idle")}function R({resolve:b}){f.value=b}return(b,x)=>{const B=e.resolveComponent("v-icon");return p.value?(e.openBlock(),e.createElementBlock("div",bo,[e.createVNode(B,{"x-large":""},{default:e.withCtx(()=>[e.createTextVNode("mdi-alert-circle-outline")]),_:1})])):u.value?(e.openBlock(),e.createElementBlock("div",{key:1,style:e.normalizeStyle(`cursor: ${d.value?"pointer":"auto"};height: ${s.value.height}px; position: relative`),class:"image-container"},[e.createVNode(fe,{desktop:b.interactiveDesktop,mobile:b.interactiveMobile,onUpdate:R},{default:e.withCtx(()=>[e.createElementVNode("div",Vo,[e.createVNode(Ue,{"image-urls":o.value.imageUrls,"active-index":g.value,onResize:A,onPreloaded:x[0]||(x[0]=I=>r.value.preloaded=!0),onReady:x[1]||(x[1]=I=>r.value.ready=!0),onReset:k},null,8,["image-urls","active-index"]),e.withDirectives(e.createElementVNode("div",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value.buildingOverlays,I=>(e.openBlock(),e.createBlock(_o,{ref_for:!0,ref_key:"overlays",ref:C,key:I.id,"image-url":I.url,dimensions:s.value,color:E(I.id)},null,8,["image-url","dimensions","color"]))),128))],512),[[e.vShow,r.value.preloaded]])]),e.createElementVNode("canvas",e.mergeProps(s.value,{ref_key:"canvas",ref:V,class:{hover:!!d.value},onClick:M,onMousemove:_}),null,16),e.withDirectives(e.createElementVNode("div",{class:"custom-overlay-layer",innerHTML:b.customOverlayContent},null,8,Eo),[[e.vShow,r.value.preloaded]])]),_:1},8,["desktop","mobile"]),e.withDirectives(e.createElementVNode("div",null,[u.value.viewLongitude?(e.openBlock(),e.createBlock(he,{key:0,class:"north-indicator",longitude:u.value.viewLongitude},null,8,["longitude"])):e.createCommentVNode("",!0),e.createVNode(Oe,{modelValue:g.value,"onUpdate:modelValue":x[2]||(x[2]=I=>g.value=I),"date-selector":o.value,"is-loading":!r.value.ready},null,8,["modelValue","date-selector","is-loading"])],512),[[e.vShow,r.value.preloaded]]),b.showCards&&d.value?(e.openBlock(),e.createBlock(pe,{key:0,"is-hoverable":h.value,pos:l.value,onOutside:x[3]||(x[3]=()=>d.value=void 0)},{default:e.withCtx(()=>[e.renderSlot(b.$slots,"default",{building:d.value,canGoToBuilding:b.canGoToBuildingCallback(d.value),goToBuilding:()=>b.canGoToBuildingCallback(d.value)&&a("goToBuilding",d.value),pos:l.value,isHoverable:h.value,close:()=>d.value=void 0},void 0,!0)]),_:3},8,["is-hoverable","pos"])):e.createCommentVNode("",!0),e.createVNode(ie,{ref_key:"hoverProbe",ref:v},null,512)],4)):e.createCommentVNode("",!0)}}}),[["__scopeId","data-v-088f521e"]]),He=e.defineComponent({__name:"VBuildingChooser",props:{showCards:{type:Boolean,default:!0},colorCallback:{type:Function,default:()=>({r:108,g:0,b:108,a:144,s:2})},cdnFileResolver:{},i18nConfig:{},interactiveDesktop:{type:Boolean,default:!0},interactiveMobile:{type:Boolean,default:!0},useSvg:{type:Boolean,default:!1},buildingChooserTimeOfDay:{},canGoToBuildingCallback:{type:Function,default:()=>!0},customOverlayContent:{},buildingChooserData:{}},emits:["goToBuilding","hoverOverBuilding","hoverOutBuilding"],setup(m,{emit:n}){const t=m,a=n,o=e.computed(()=>t.useSvg?wo:Bo);return(r,s)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.value),{"i18n-config":t.i18nConfig,"show-cards":t.showCards,"color-callback":t.colorCallback,"cdn-file-resolver":t.cdnFileResolver,"interactive-desktop":t.interactiveDesktop,"interactive-mobile":t.interactiveMobile,"building-chooser-time-of-day":t.buildingChooserTimeOfDay,"can-go-to-building-callback":t.canGoToBuildingCallback,"custom-overlay-content":t.customOverlayContent,"building-chooser-data":t.buildingChooserData,onGoToBuilding:s[0]||(s[0]=l=>a("goToBuilding",l)),onHoverOverBuilding:s[1]||(s[1]=l=>a("hoverOverBuilding",l)),onHoverOutBuilding:s[2]||(s[2]=l=>a("hoverOutBuilding",l))},e.createSlots({_:2},[e.renderList(Object.keys(r.$slots),l=>({name:l,fn:e.withCtx(u=>[e.renderSlot(r.$slots,l,e.normalizeProps(e.guardReactiveProps(u)))])}))]),1064,["i18n-config","show-cards","color-callback","cdn-file-resolver","interactive-desktop","interactive-mobile","building-chooser-time-of-day","can-go-to-building-callback","custom-overlay-content","building-chooser-data"]))}}),xo=["src"],So=$(e.defineComponent({__name:"VBuildingChooserV5CameraDayTimeSample",props:{timeSampleData:{},cdnFileResolver:{type:[String,Function]},currentTime:{}},setup(m){const n=m,t=e.computed(()=>z(n.cdnFileResolver,n.timeSampleData.filename));return(a,o)=>e.withDirectives((e.openBlock(),e.createElementBlock("img",{key:t.value,src:t.value,width:"100%"},null,8,xo)),[[e.vShow,a.timeSampleData===a.currentTime]])}}),[["__scopeId","data-v-98118455"]]),No=e.defineComponent({__name:"VBuildingChooserV5CameraDay",props:{dayData:{},cdnFileResolver:{type:[String,Function]},currentTime:{}},setup(m){const n=m;return(t,a)=>(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.dayData.timeSamples,o=>(e.openBlock(),e.createBlock(So,{"time-sample-data":o,"cdn-file-resolver":n.cdnFileResolver,"current-time":t.currentTime},null,8,["time-sample-data","cdn-file-resolver","current-time"]))),256))}}),Io=e.defineComponent({__name:"VBuildingChooserV5Camera",props:{cameraData:{},cdnFileResolver:{type:[String,Function]},currentTime:{}},setup(m){const n=m;return(t,a)=>(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.cameraData.sunsimDayOfYear,o=>(e.openBlock(),e.createBlock(No,{"day-data":o,"cdn-file-resolver":n.cdnFileResolver,"current-time":n.currentTime},null,8,["day-data","cdn-file-resolver","current-time"]))),256))}}),Ao=e.defineComponent({__name:"VBuildingChooserV5UiCamera",props:{buildingChooserData:{},currentCamera:{}},emits:["onCameraChange"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(t.currentCamera.overlayFilename);return e.watch(o,()=>{a("onCameraChange",t.buildingChooserData.cameras.find(r=>r.overlayFilename===o.value))}),(r,s)=>{const l=e.resolveComponent("v-select");return e.openBlock(),e.createBlock(l,{modelValue:o.value,"onUpdate:modelValue":s[0]||(s[0]=u=>o.value=u),items:t.buildingChooserData.cameras,"item-title":"cameraName","item-value":"overlayFilename",variant:"solo",density:"compact","hide-details":""},null,8,["modelValue","items"])}}}),Do=e.defineComponent({__name:"VBuildingChooserV5UiDay",props:{cameraData:{},currentDay:{}},emits:["onDayChange"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(t.currentDay.dayOfYear);e.watch(()=>t.currentDay.dayOfYear,()=>{o.value=t.currentDay.dayOfYear}),e.watch(o,()=>{a("onDayChange",t.cameraData.sunsimDayOfYear.find(s=>s.dayOfYear===o.value))});function r(s){const l=new Date(0);return l.setUTCDate(s),l.toLocaleString("en-no",{month:"short",day:"numeric"})}return(s,l)=>{const u=e.resolveComponent("v-list-item"),i=e.resolveComponent("v-select");return e.openBlock(),e.createBlock(i,{modelValue:o.value,"onUpdate:modelValue":l[0]||(l[0]=c=>o.value=c),items:t.cameraData.sunsimDayOfYear,"item-title":"dayOfYear","item-value":"dayOfYear",variant:"solo",density:"compact","hide-details":""},{item:e.withCtx(({props:c})=>[e.createVNode(u,e.mergeProps(c,{title:r(c.title)}),null,16,["title"])]),selection:e.withCtx(({item:c})=>[e.createTextVNode(e.toDisplayString(r(c.title)),1)]),_:1},8,["modelValue","items"])}}}),Lo={key:0,class:"py-2"},Fo={class:"small"},Mo={class:"small"},To=$(e.defineComponent({__name:"VBuildingChooserV5UiTimeSample",props:{dayData:{},currentTime:{}},emits:["onTimeChange"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(t.currentTime.timeInHours),r=e.ref();e.watch(()=>t.currentTime.timeInHours,()=>{o.value=t.currentTime.timeInHours}),e.watch(o,()=>{a("onTimeChange",t.dayData.timeSamples.find(u=>u.timeInHours===o.value))});function s(u){const i=u*60,c=i/60,d=i%60;return`${c.toString().padStart(2,"0")}:${d.toString().padStart(2,"0")}`}function l(){r.value?(clearInterval(r.value),r.value=void 0):(t.dayData.timeSamples.findIndex(i=>i.timeInHours===o.value)===t.dayData.timeSamples.length-1&&(o.value=t.dayData.timeSamples[0].timeInHours),r.value=setInterval(()=>{const i=t.dayData.timeSamples.findIndex(c=>c.timeInHours===o.value);i<t.dayData.timeSamples.length-1?o.value=t.dayData.timeSamples[i+1].timeInHours:(clearInterval(r.value),r.value=void 0)},200))}return(u,i)=>{const c=e.resolveComponent("v-icon"),d=e.resolveComponent("v-btn"),g=e.resolveComponent("v-slider"),f=e.resolveComponent("v-field");return e.openBlock(),e.createBlock(f,{variant:"solo"},{default:e.withCtx(()=>[u.dayData.startTime===u.dayData.endTime?(e.openBlock(),e.createElementBlock("div",Lo,[e.createVNode(c,{style:{color:"#ffab02","vertical-align":"baseline","font-size":"20px"},class:"py-2 ml-2 mr-2 icon"},{default:e.withCtx(()=>[e.createTextVNode(" mdi-white-balance-sunny ")]),_:1}),e.createTextVNode(" "+e.toDisplayString(s(o.value)),1)])):(e.openBlock(),e.createBlock(g,{key:1,class:"pa-1",modelValue:o.value,"onUpdate:modelValue":i[0]||(i[0]=p=>o.value=p),min:u.dayData.startTime,max:u.dayData.endTime,step:u.dayData.interval,"hide-details":""},{prepend:e.withCtx(()=>[e.createVNode(d,{icon:r.value?"mdi-stop":"mdi-play",size:"x-small",variant:"flat",onClick:l},null,8,["icon"]),e.createTextVNode(" "),e.createElementVNode("span",Fo,e.toDisplayString(s(u.dayData.startTime)),1)]),append:e.withCtx(()=>[e.createElementVNode("span",Mo,e.toDisplayString(s(u.dayData.endTime)),1),e.createTextVNode(" "),e.createVNode(c,{style:{color:"#ffab02","vertical-align":"baseline","font-size":"20px"},class:"ml-2 mr-2 icon"},{default:e.withCtx(()=>[e.createTextVNode(" mdi-white-balance-sunny ")]),_:1}),e.createTextVNode(" "+e.toDisplayString(s(o.value)),1)]),_:1},8,["modelValue","min","max","step"]))]),_:1})}}}),[["__scopeId","data-v-2c27d93d"]]),$o=["innerHTML"],Ro=$(e.defineComponent({__name:"VBuildingChooserV5Overlay",props:{cdnFileResolver:{type:[String,Function]},colorCallback:{type:Function},currentCamera:{},selectedId:{}},emits:["onClick","onHoverOver","onHoverOut","updateSvgContainer"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(),r=e.ref(),s=e.ref(t.selectedId),l=e.reactive({});e.watchEffect(()=>{for(const i in l){const{element:c,state:d}=l[i],{r:g,g:f,b:p,a:v,s:V}=t.colorCallback(i,d)||{r:0,g:0,b:0,a:0,s:0};c.style.fill=`rgba(${g}, ${f}, ${p}, ${v/255})`,c.style.stroke=`rgb(${g}, ${f}, ${p})`,c.style.strokeWidth=V.toString()}}),e.watch(()=>t.selectedId,()=>{s.value=t.selectedId}),e.watch(s,()=>{for(const i in l)l[i].state==="selected"&&i!==s.value?l[i].state="idle":l[i].state!=="selected"&&i===s.value&&(l[i].state="selected")}),e.watchEffect(async()=>{o.value=await q.loadText(z(t.cdnFileResolver,t.currentCamera.overlayFilename)),u()}),e.watch(()=>r.value,()=>{r.value&&new ResizeObserver(u).observe(r.value)});function u(){e.nextTick(()=>{const i=r.value.firstChild;if(i){if(a("updateSvgContainer",i),!i.hasAttribute("viewBox")){const d=`0 0 ${i.getAttribute("width")} ${i.getAttribute("height")}`;i.setAttribute("viewBox",d)}i.setAttribute("width",r.value.offsetWidth.toString()),i.setAttribute("height",r.value.offsetHeight.toString()),i.querySelectorAll("[data-building-id]").forEach(d=>{d.style.strokeWidth="0",d.style.stroke="rgba(255,255,255,0)",d.style.fill="rgba(255,255,255,0)",d.querySelectorAll("path").forEach(f=>{f.style.stroke="inherit",f.style.fill="inherit"});const g=d.getAttribute("data-building-id");l[g]={element:d,state:s.value===g?"selected":"idle"},d.addEventListener("mouseover",()=>{l[g].state==="idle"&&(l[g].state="hover"),a("onHoverOver",g)}),d.addEventListener("mouseout",()=>{l[g].state==="hover"&&(l[g].state="idle"),a("onHoverOut",g)}),d.addEventListener("click",()=>{a("onClick",g)})})}})}return(i,c)=>(e.openBlock(),e.createBlock(e.Transition,null,{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("div",{ref_key:"svgContainer",ref:r,key:i.currentCamera.overlayFilename,class:"w-100 h-100 position-absolute top-left",style:{"z-index":"4"},innerHTML:o.value},null,8,$o))]),_:1}))}}),[["__scopeId","data-v-09de986e"]]),Oo={class:"actions-bar position-absolute top-left d-flex w-100 justify-center align-center",style:{"z-index":"6"}},Uo={class:"pa-2 pr-0",style:{flex:"1"}},Ho={class:"pa-2 pr-0",style:{flex:"1"}},Po={class:"pa-2",style:{flex:"2"}},jo={class:"position-absolute bottom-right",style:{"z-index":"6",width:"50px",height:"50px"}},Yo=["innerHTML"],zo={style:{"z-index":"7"}},Wo=$(e.defineComponent({__name:"VBuildingChooserV5",props:{buildingChooserData:{},cdnFileResolver:{},colorCallback:{type:Function,default:()=>({r:0,g:0,b:0,a:0,s:0})},i18nConfig:{},customOverlayContent:{},selectedId:{},defaultCamera:{},defaultDay:{},defaultTime:{}},emits:["onClick","onHoverOver","onHoverOut","onMouseMove"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(),r=e.ref(),s=e.ref(),l=e.ref(),u=e.ref(!1),i=e.ref(),c=e.computed(()=>i.value.isHoverEnabled),d=e.ref({x:0,y:0,width:0,height:0}),g=e.ref(),f=e.ref(t.buildingChooserData);e.onMounted(()=>u.value=!0),e.watch([f,()=>t.cdnFileResolver,()=>t.defaultCamera],async()=>{t.cdnFileResolver&&(f.value||(f.value=await q.loadJson(z(t.cdnFileResolver,"/buildingChooser.json"))),t.defaultCamera?o.value=f.value.cameras.find(k=>k.cameraName===t.defaultCamera)||f.value.cameras[0]:o.value=f.value.cameras[0])},{immediate:!0}),e.watch([f,()=>t.cdnFileResolver,()=>t.defaultDay],()=>{f.value&&t.cdnFileResolver&&(t.defaultDay?r.value=o.value.sunsimDayOfYear.find(k=>k.dayOfYear===t.defaultDay)||o.value.sunsimDayOfYear[0]:r.value=o.value.sunsimDayOfYear[0])},{immediate:!0}),e.watch([f,()=>t.cdnFileResolver,()=>t.defaultTime],()=>{f.value&&t.cdnFileResolver&&(t.defaultTime?s.value=r.value.timeSamples.find(k=>k.timeInHours===t.defaultTime)||r.value.timeSamples[0]:s.value=r.value.timeSamples.find(k=>k.timeInHours===r.value.defaultHour)||r.value.timeSamples[0])},{immediate:!0});function p(k){const S=r.value;o.value=k,e.nextTick(()=>{v(o.value.sunsimDayOfYear.find(y=>y.dayOfYear===S.dayOfYear)||o.value.sunsimDayOfYear[0])})}function v(k){const S=s.value;r.value=k,e.nextTick(()=>{V(r.value.timeSamples.find(y=>y.timeInHours===S.timeInHours)||r.value.timeSamples.find(y=>y.timeInHours===r.value.defaultHour)||r.value.timeSamples[0])})}function V(k){s.value=k}function C(k){a("onHoverOver",k),l.value=k}function h(k){a("onHoverOut",k),l.value=void 0}function A(k){const{layerX:S,layerY:y}=k;let _=k.target,M=!1;for(;_;)if(_===g.value){M=!0;break}else _=_.parentElement;M?d.value={x:S,y,width:k.currentTarget.clientWidth,height:k.currentTarget.clientHeight}:d.value=void 0,a("onMouseMove",k,d.value)}return(k,S)=>{const y=e.resolveComponent("v-skeleton-loader");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(y,{type:"image",class:"w-100 h-100 position-relative",loading:!u.value||!f.value},{default:e.withCtx(()=>[e.createVNode(e.Transition,null,{default:e.withCtx(()=>[e.createElementVNode("div",{class:"w-100 h-100 position-relative",onMousemove:A},[e.createElementVNode("div",Oo,[e.createElementVNode("div",Uo,[e.createVNode(Ao,{"building-chooser-data":f.value,"current-camera":o.value,onOnCameraChange:p},null,8,["building-chooser-data","current-camera"])]),e.createElementVNode("div",Ho,[e.createVNode(Do,{"camera-data":o.value,"current-day":r.value,onOnDayChange:v},null,8,["camera-data","current-day"])]),e.createElementVNode("div",Po,[e.createVNode(To,{"day-data":r.value,"current-time":s.value,onOnTimeChange:V},null,8,["day-data","current-time"])])]),e.createElementVNode("div",jo,[e.createVNode(he,{longitude:o.value.cameraRotation.y+270},null,8,["longitude"])]),e.createVNode(fe,{position:"relative"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value.cameras,_=>(e.openBlock(),e.createBlock(Io,{key:_.overlayFilename,"camera-data":_,"cdn-file-resolver":t.cdnFileResolver,"current-time":s.value},null,8,["camera-data","cdn-file-resolver","current-time"]))),128)),t.customOverlayContent?(e.openBlock(),e.createElementBlock("div",{key:0,class:"w-100 h-100 position-absolute top-left",style:{"z-index":"5","pointer-events":"none"},innerHTML:t.customOverlayContent},null,8,Yo)):e.createCommentVNode("",!0),e.createVNode(Ro,{"cdn-file-resolver":k.cdnFileResolver,"color-callback":t.colorCallback,"current-camera":o.value,"selected-id":t.selectedId,onOnClick:S[0]||(S[0]=_=>a("onClick",_)),onOnHoverOver:C,onOnHoverOut:h,onUpdateSvgContainer:S[1]||(S[1]=_=>g.value=_)},null,8,["cdn-file-resolver","color-callback","current-camera","selected-id"])]),_:1}),k.$slots.popup&&d.value&&l.value?(e.openBlock(),e.createBlock(pe,{key:0,"is-hoverable":c.value,pos:d.value},{default:e.withCtx(()=>[e.createElementVNode("div",zo,[e.renderSlot(k.$slots,"popup",e.normalizeProps(e.guardReactiveProps({hoverId:l.value,hoverable:c.value})),void 0,!0)])]),_:3},8,["is-hoverable","pos"])):e.createCommentVNode("",!0)],32)]),_:3})]),_:3},8,["loading"]),e.createVNode(ie,{ref_key:"hoverProbe",ref:i},null,512)],64)}}}),[["__scopeId","data-v-b9c6f06a"]]);var ke={};Object.defineProperty(ke,"__esModule",{value:!0});var Go=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(m){return typeof m}:function(m){return m&&typeof Symbol=="function"&&m.constructor===Symbol&&m!==Symbol.prototype?"symbol":typeof m},Qo=typeof window<"u"&&typeof window.document<"u",qo=typeof process<"u"&&process.versions!=null&&process.versions.node!=null,Zo=(typeof self>"u"?"undefined":Go(self))==="object"&&self.constructor&&self.constructor.name==="DedicatedWorkerGlobalScope",Xo=typeof window<"u"&&window.name==="nodejs"||typeof navigator<"u"&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom")),Jo=typeof Deno<"u"&&typeof Deno.version<"u"&&typeof Deno.version.deno<"u",Ko=ke.isBrowser=Qo;ke.isWebWorker=Zo,ke.isNode=qo,ke.isJsDom=Xo,ke.isDeno=Jo;const en={id:"player-wrapper"},tn={id:"player-sizer"},on={class:"player-control",id:"controls-top-left"},nn={class:"player-control",id:"controls-top-center"},an={class:"player-control",id:"controls-top-right"},rn={class:"player-control",id:"controls-center-left"},ln={class:"player-control",id:"controls-center-center"},sn={class:"player-control",id:"controls-center-right"},cn={class:"player-control",id:"controls-bottom-left"},dn={class:"player-control",id:"controls-bottom-center"},mn={class:"player-control",id:"controls-bottom-right"},un={id:"main-canvas"},pn=$(e.defineComponent({__name:"VPlayer",props:{cdnFileResolver:{},interiorId:{},apartmentId:{},currentCameraId:{},showStaticImage:{type:Boolean},isFullScreen:{type:Boolean},mouseSensitivity:{default:1}},emits:["newCameraCallback","newRotationCallback","newFloorCallback","newFovCallback","playerApiCallback","newSizeCallback"],setup(m,{emit:n}){const t=Ke.PlayerV2,a=m,o=n,r=e.ref(),s=e.ref(),l=e.ref(0),u=e.ref(0);return e.watch([()=>a.cdnFileResolver,()=>a.interiorId,()=>a.apartmentId],async()=>{r.value&&await r.value.loadInterior(z(a.cdnFileResolver,`/${a.interiorId}/${a.apartmentId}`),s.value,!1)}),e.watch([()=>a.cdnFileResolver,()=>a.interiorId,()=>a.apartmentId],async()=>{r.value&&await r.value.loadInterior(z(a.cdnFileResolver,`/${a.interiorId}/${a.apartmentId}`),void 0,!1)},{deep:!0}),e.watch(()=>a.currentCameraId,i=>{r.value&&(s.value=i,r.value.goToCamera(i,!0))}),e.watch(r,i=>{o("playerApiCallback",i);const c=r.value.getCurrentCamera();c&&(s.value=c.id)}),e.onMounted(async()=>{const g={initialized:()=>{r.value=t.Main.getPlayerAPI();const p=r.value.getCurrentCamera();p&&(s.value=p.id),o("newCameraCallback",s.value)},newCamera:p=>{o("newCameraCallback",p.id),o("newFloorCallback",p.floorLevel),r.value&&r.value.resetMarkerBehaviour(0),s.value=p.id},newFOV:p=>{o("newFovCallback",p),u.value=p},newRotation:p=>{const v=p+0;o("newRotationCallback",v),l.value=v}};if(!Ko)return;const f=await new t.Main(z(a.cdnFileResolver,`/${a.interiorId}/${a.apartmentId}`),"qpc",g,void 0,a.currentCameraId);f&&(f.handleWindowResize(),window.addEventListener("resize",f.handleWindowResize.bind(f)),f.animate(),r.value=t.Main.getPlayerAPI(),r.value&&r.value.setLookSensitivity(a.mouseSensitivity))}),e.onBeforeUnmount(()=>{r.value&&r.value.destroy()}),(i,c)=>(e.openBlock(),e.createElementBlock("div",en,[e.createElementVNode("div",tn,[e.renderSlot(i.$slots,"slideshow-image",{},void 0,!0),e.createElementVNode("div",on,[e.renderSlot(i.$slots,"top-left",{},void 0,!0)]),e.createElementVNode("div",nn,[e.renderSlot(i.$slots,"top-center",{},void 0,!0)]),e.createElementVNode("div",an,[e.renderSlot(i.$slots,"top-right",{},void 0,!0)]),e.createElementVNode("div",rn,[e.renderSlot(i.$slots,"center-left",{},void 0,!0)]),e.createElementVNode("div",ln,[e.renderSlot(i.$slots,"center-center",{},void 0,!0)]),e.createElementVNode("div",sn,[e.renderSlot(i.$slots,"center-right",{},void 0,!0)]),e.createElementVNode("div",cn,[e.renderSlot(i.$slots,"bottom-left",{},void 0,!0)]),e.createElementVNode("div",dn,[e.renderSlot(i.$slots,"bottom-center",{},void 0,!0)]),e.createElementVNode("div",mn,[e.renderSlot(i.$slots,"bottom-right",{},void 0,!0)]),e.createElementVNode("div",un,[e.createElementVNode("canvas",{id:"qpc",style:e.normalizeStyle(i.showStaticImage?"visibility:hidden":"visibility:visible")},null,4)])])]))}}),[["__scopeId","data-v-434c2592"]]),fn={style:{width:"24px",height:"24px"},viewBox:"0 0 18 16",xmlns:"http://www.w3.org/2000/svg"},hn=["stroke"],gn=["stroke"],vn={class:"floor-level-label"},kn=$(e.defineComponent({__name:"VFloorLevel",props:{level:{default:0},floorLevels:{default:()=>[]}},emits:["level"],setup(m,{emit:n}){const t=m,a=n,o=e.inject(J),r=e.computed(()=>{const c=t.floorLevels;return c.sort(),c}),s=e.computed(()=>r.value.indexOf(t.level)+1<=r.value.length/2?"lower":"upper"),l=e.computed(()=>s.value==="lower"),u=e.computed(()=>s.value==="upper");function i(){const c=t.level+1;c>=r.value.length?a("level",r.value[0]):a("level",r.value[c])}return(c,d)=>{const g=e.resolveComponent("v-btn"),f=e.resolveComponent("v-tooltip");return e.openBlock(),e.createBlock(f,{right:"",attach:""},{activator:e.withCtx(({props:p})=>[e.createVNode(g,e.mergeProps({style:{cursor:"pointer"},density:"comfortable",elevation:"1",icon:""},p,{onClick:i}),{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("svg",fn,[e.createElementVNode("path",{d:"M8.98034 10.3472L1.54055 5.8855L8.98034 1.42384L16.4201 5.8855L8.98034 10.3472Z",fill:"white",stroke:u.value?"black":"#999999","stroke-width":"1.5","stroke-linejoin":"round"},null,8,hn),e.createElementVNode("path",{d:"M8.98034 14.7993L1.54055 10.3376L8.98034 5.87599L16.4201 10.3376L8.98034 14.7993Z",fill:"white",stroke:l.value?"black":"#999999","stroke-width":"1.5","stroke-linejoin":"round"},null,8,gn)]))]),_:2},1040)]),default:e.withCtx(()=>[e.createElementVNode("span",vn,e.toDisplayString(e.unref(o).getLabel(s.value))+" "+e.toDisplayString(e.unref(o).getLabel("floor")),1)]),_:1})}}}),[["__scopeId","data-v-5ce91d8e"]]),Cn={class:"d-none d-md-inline"},yn=$(e.defineComponent({__name:"VInteriorSelector",props:{cdnFileResolver:{type:[String,Function]},availableArchetypes:{},selectedIndex:{}},emits:["selectInterior"],setup(m,{emit:n}){const t=m,a=n,o=e.inject(J);return(r,s)=>{const l=e.resolveComponent("v-icon"),u=e.resolveComponent("v-btn"),i=e.resolveComponent("v-img"),c=e.resolveComponent("v-list-item-title"),d=e.resolveComponent("v-list-item"),g=e.resolveComponent("v-list"),f=e.resolveComponent("v-menu");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(f,{transition:"slide-x-reverse-transition",location:"top end",origin:"end bottom",elevation:"0"},{activator:e.withCtx(({props:p})=>[e.createVNode(u,e.mergeProps({rounded:""},p),{default:e.withCtx(()=>[e.createVNode(l,null,{default:e.withCtx(()=>[e.createTextVNode("mdi-palette-outline")]),_:1}),e.createElementVNode("span",Cn,e.toDisplayString(e.unref(o).getLabel("interior")),1)]),_:2},1040)]),default:e.withCtx(()=>[e.createVNode(g,{class:"interior-selector-list"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.availableArchetypes,(p,v)=>(e.openBlock(),e.createBlock(d,{density:"compact",key:`at-menuitem-${v}`,onClick:V=>a("selectInterior",p.archetypeID),active:v===r.selectedIndex,class:"interior-selector-list-item"},{prepend:e.withCtx(()=>[e.createVNode(i,{width:"100","max-width":"100",height:"66",src:p.url},null,8,["src"])]),default:e.withCtx(()=>[e.createVNode(c,{class:"text-caption py-2 px-4"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o).get(p.title)),1)]),_:2},1024)]),_:2},1032,["onClick","active"]))),128))]),_:1})]),_:1})])}}}),[["__scopeId","data-v-f52a4315"]]),wn="data:image/png;base64,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",_n="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGwAAABsCAYAAACPZlfNAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAMdSURBVHgB7dxBTttQEMbxsU32idouujM7FhjlBqQnaG5AbkBvUPUEpTegN8gR6AlAgQU70lWlQkUUscR+fVZrRKlL7CTQN6P/T0IJwYkUDfNhvzdEBAAAAAAAAAAAAAAAAAAAAAD+i+t+v3+5vT0Qg2IxqHBuP47jXTHIZMHEuYETeScGmSvYZb9fFiv1d7sWY9FcwWLn9u7ux/FbMcZeJPo4vLsrMhJjTBXsXhxWzMWiqYLdj8NKlCR7YoipgjnnhjUPDv11WVeMMFOwqywb+Zu6wnQlz81ck5kp2GNnhLmha7JIDCgjLy+K60cOmSVxvNk7OZmJciY6LM/z4YJDukVRmDj5sBGJcbywGLUnJAqpj0Qfh6mPw4smx/pY7GmPRfUd5uNw0PRYC7GoPxIbxGHFQiyqjsQ2cVjRHouqO8xHXOvVeP+cfVFMeySOpCV3bzVfI7WRuEwcVlxRvHl1dnYkCqntsFWiTfO8h+ZIXPqMT/PGpsqC1WxUtpVq3dhUWbC6jcrWr6F03kNnJK7hTE9rLKor2BrisKJy3kNdwdYRh3evpTAW9UXiGi98y1jUNu+hqmBXWTZcUxxWure3t31RRFXBoieIMG1jcGqWphrMbSxL1byHmg5rMLexrPIXQc3Jh5qCPekZnXMjUUJFJK6yMt+Ulo1NFR3WZm5jWVrmPXREYou5jWVpmfcIPhKfIw4rGmIx+A57jjisaIjF4AsWRVG7nWXnjhK/fJWUEefcuN1Tw4/FoCOxaRz6N3Hi22M8v7n5tDmd/hFp37a20qTTGcRR9F4aLGslSZL2jo+/SqA2JGALxthmviMO/RsY905Pv/zroNfn51N/c1h+XWfZbl7ug0VR2Um1i75Fno/8zQcJVNAd9mNn5+KvxV4feT4mx/P5/PPDbmrje5aN/N+DPV+8wYMfTV9OJpsSqGALVn78kI/D49/fzqKiOKiLvFWVkbnR6exHv7ouLR8LeQwu2IL57vroIy9NRA4ei7x1qiLTF2/6YjIJNhbxwEWamvkndgAAAAAAAAAAAAAAAAAAAAAAAAAAAABYxU+ILzGcMmFd0QAAAABJRU5ErkJggg==",bn=e.defineComponent({__name:"VCompass",props:{rotation:{}},setup(m){const n=m,t=e.ref(_n),a=e.ref({backgroundImage:`url(${wn})`,backgroundSize:"contain"}),o=e.computed(()=>({transform:`rotate(${-n.rotation+180}deg)`}));return(r,s)=>{const l=e.resolveComponent("v-img");return e.openBlock(),e.createElementBlock("div",{style:e.normalizeStyle(a.value),class:"compass-wrapper"},[e.createVNode(l,{class:"compass-needle",src:t.value,style:e.normalizeStyle(o.value)},null,8,["src","style"])],4)}}}),Vn="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAllBMVEUAAAD/rwD/rwD/qgP/qwL/qAL/qwP/qwH/rAL/rAL/qwL/qQD/qwL/qwD/qQD/qwL/pQD/qgH/nwD/pwD/qQL/rAL/qwD/qwT/rAP/qwL/rAL/rAD/rAL/qgD/qwL/qQP/rAP/rAH/qgH/qwL/qwD/qgL/rwD/qgD/qwH/qgD/qgL/rAD/qgD/qgD/qwH/rAP/qgX/qwA+O5E+AAAAMnRSTlMAECBg/3C/v5Dff4+PT1/PMN8QII9vf0CfgO9vnzDvUF+vr3BA3zA/z2+fX59g71AwcDsf6p0AAAFGSURBVHicvdRtT8MgEABgaM9hu1aHXV/cpm6zWt829f//OYEK9qC3NDF6HxYCTw5GuWPsd8GjqTIGOJtIZwDi/ymnKPflOSTub6cAcwdnkHk5AQY2v3Dzl2phga1EFkl5hScLbZc+LbUs/FltK5OpLpsmrS0NpbLLSu3Er1dgIsn0cdabEdlHlICL5IZSRq5gELcn7DCnsfQL24AX5PeNfAlAHSEOaYrFXaNiqwa7kO7V9L1dt9u25kX58cBY7dbZYz/MKdr2o06nrZ6klNX4AYRdf8aHzkL6QtxAG9KculjhS0nJMO0rSVmF5ZyWnn2jFC+36vcgLTzq+3lPRx6XrjjTqQ7iqJxY6+KLydp0ZWhrVHWE0JoqHq1NSHBxF0h+1Mh6LUMM5LC/Kht8h+5nG9zeTtbt37Ti3XT6+d29pkTXTZVEfAEKARRF2iiwhQAAAB10RVh0U29mdHdhcmUAQGx1bmFwYWludC9wbmctY29kZWP1QxkeAAAAAElFTkSuQmCC",En={class:"d-flex flex-column align-center justify-center clock-face"},Bn={class:"clock-icon"},xn={class:"clock-value grey--text text--darken-3"},Sn=$(e.defineComponent({__name:"VTimeOfDay",props:{hours:{default:0},minutes:{default:0}},setup(m){const n=m,t=e.computed(()=>[a(n.hours),":",a(n.minutes)].join(""));function a(o){return("0"+o).slice(-2)}return(o,r)=>{const s=e.resolveComponent("v-img");return e.openBlock(),e.createElementBlock("div",En,[e.createElementVNode("div",Bn,[e.createVNode(s,{src:e.unref(Vn),"aspect-ratio":"1"},null,8,["src"])]),e.createElementVNode("div",xn,e.toDisplayString(t.value),1)])}}}),[["__scopeId","data-v-cd73fd81"]]),Nn=e.defineComponent({__name:"VViewModeToggle",props:{showStaticImage:{type:Boolean}},emits:["toggle"],setup(m,{emit:n}){const t=m,a=n,o=e.inject(J),r=e.computed(()=>{let s="virtualTour";return t.showStaticImage||(s="slideShow"),s});return(s,l)=>{const u=e.resolveComponent("v-btn");return e.openBlock(),e.createBlock(u,{color:"darken-2",elevation:"1",rounded:"",plain:"",onClick:l[0]||(l[0]=i=>a("toggle"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o).getLabel(r.value)),1)]),_:1})}}}),de=m=>(e.pushScopeId("data-v-b9eb5380"),m=m(),e.popScopeId(),m),In={key:0,class:"tutorial"},An={key:0,class:"desktop-content"},Dn={class:"d-inline-flex"},Ln={class:"box col"},Fn=de(()=>e.createElementVNode("div",{class:"tutorial-icon d-flex align-items-center justify-center"},[e.createElementVNode("svg",{width:"100",height:"65",viewBox:"0 0 100 65",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("path",{d:"M72 30H86.9736M86.9736 30L81 36M86.9736 30L81 24",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e.createElementVNode("path",{d:"M27.9736 30H13M13 30L18.9736 36M13 30L18.9736 24",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e.createElementVNode("path",{d:"M36 30H64V40C64 47.732 57.732 54 50 54V54C42.268 54 36 47.732 36 40V30Z",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M36 25C36 17.268 42.268 11 50 11V11V30H36V25Z",fill:"#FF3E3E",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M64 25C64 17.268 57.732 11 50 11V11V30H64V25Z",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M53.25 23V30C53.25 31.7949 51.7949 33.25 50 33.25C48.2051 33.25 46.75 31.7949 46.75 30V23C46.75 21.2051 48.2051 19.75 50 19.75C51.7949 19.75 53.25 21.2051 53.25 23Z",fill:"white",stroke:"black","stroke-width":"1.5"})])],-1)),Mn={class:"text mt-3"},Tn={class:"box col"},$n=de(()=>e.createElementVNode("div",{class:"tutorial-icon d-flex align-items-center justify-center"},[e.createElementVNode("svg",{width:"100",height:"65",viewBox:"0 0 100 65",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("path",{d:"M79.9936 27.0175C79.9881 19.276 66.3321 13.0323 49.492 13.0719C32.652 13.1116 19.0049 19.4194 19.0105 27.1609C19.016 34.9025 32.6721 41.1461 49.5121 41.1065C66.3521 41.0669 79.9992 34.759 79.9936 27.0175Z",fill:"white",stroke:"#B3B3B3","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M61.8032 45.179L56.543 50.3218V28.0361L72.543 43.4647H65.0909L67.9402 50.3218L64.6526 52.0361L61.8032 45.179Z",fill:"white",stroke:"black","stroke-width":"1.5","stroke-linejoin":"round"}),e.createElementVNode("path",{d:"M50.502 28.0361L46.502 28.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M50.502 28.0361L46.502 28.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M50.502 28.0361L46.502 28.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M66.502 28.0361L62.502 28.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M66.502 28.0361L62.502 28.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M66.502 28.0361L62.502 28.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1582 24.0361L49.1582 21.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1582 24.0361L49.1582 21.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1582 24.0361L49.1582 21.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M60.502 24.0361L63.502 21.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M60.502 24.0361L63.502 21.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M60.502 24.0361L63.502 21.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M56.502 22.0361L56.502 18.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M56.502 22.0361L56.502 18.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M56.502 22.0361L56.502 18.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1582 32.0361L49.1582 35.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1582 32.0361L49.1582 35.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1582 32.0361L49.1582 35.0361",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"})])],-1)),Rn={class:"text mt-3"},On={class:"box col"},Un=de(()=>e.createElementVNode("div",{class:"tutorial-icon d-flex align-items-center justify-center"},[e.createElementVNode("svg",{width:"100",height:"65",viewBox:"0 0 100 65",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("path",{d:"M36 33H64V43C64 50.732 57.732 57 50 57V57C42.268 57 36 50.732 36 43V33Z",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M36 28C36 20.268 42.268 14 50 14V14V33H36V28Z",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M64 28C64 20.268 57.732 14 50 14V14V33H64V28Z",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M53.25 26V33C53.25 34.7949 51.7949 36.25 50 36.25C48.2051 36.25 46.75 34.7949 46.75 33V26C46.75 24.2051 48.2051 22.75 50 22.75C51.7949 22.75 53.25 24.2051 53.25 26Z",fill:"#FF3E3E",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M74.5352 20.7593L80.3458 26.5699C80.9316 27.1557 80.9316 28.1055 80.3458 28.6913C79.76 29.277 78.8103 29.277 78.2245 28.6913L72.4138 22.8806L74.5352 20.7593Z",fill:"black",stroke:"black","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("circle",{cx:"66.5",cy:"15.5",r:"9.75",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("rect",{x:"66",y:"11",width:"1",height:"9",fill:"black",stroke:"black","stroke-width":"0.75","stroke-linejoin":"round"}),e.createElementVNode("rect",{x:"71",y:"15",width:"1",height:"9",transform:"rotate(90 71 15)",fill:"black",stroke:"black","stroke-width":"0.75","stroke-linejoin":"round"})])],-1)),Hn={class:"text mt-3"},Pn={class:"d-inline-flex space-around"},jn={class:"box col"},Yn=de(()=>e.createElementVNode("div",{class:"tutorial-icon d-flex align-items-center justify-center"},[e.createElementVNode("svg",{width:"100",height:"65",viewBox:"0 0 100 65",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("rect",{x:"65.0967",y:"34.3228",width:"20.9032",height:"20.9032",rx:"2",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("rect",{x:"39.5488",y:"29.6777",width:"20.9032",height:"20.9032",rx:"2",transform:"rotate(-90 39.5488 29.6777)",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("rect",{x:"60.4512",y:"34.3228",width:"20.9032",height:"20.9032",rx:"2",transform:"rotate(90 60.4512 34.3228)",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("rect",{x:"34.9033",y:"55.2261",width:"20.9032",height:"20.9032",rx:"2",transform:"rotate(-180 34.9033 55.2261)",fill:"white",stroke:"black","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M77.7025 44.3796C77.9599 44.5798 77.9599 44.9688 77.7025 45.169L74.6621 47.5338C74.3337 47.7892 73.8551 47.5552 73.8551 47.1391L73.8551 42.4095C73.8551 41.9935 74.3337 41.7594 74.6621 42.0149L77.7025 44.3796Z",fill:"#FF3E3E"}),e.createElementVNode("path",{d:"M49.6047 17.0724C49.8049 16.815 50.1939 16.815 50.3941 17.0724L52.7589 20.1128C53.0143 20.4412 52.7803 20.9198 52.3642 20.9198L47.6346 20.9198C47.2185 20.9198 46.9845 20.4412 47.2399 20.1128L49.6047 17.0724Z",fill:"#FF3E3E"}),e.createElementVNode("path",{d:"M50.3953 46.9281C50.1951 47.1855 49.8061 47.1855 49.6059 46.9281L47.2411 43.8877C46.9857 43.5592 47.2197 43.0807 47.6358 43.0807L52.3654 43.0807C52.7815 43.0807 53.0155 43.5592 52.7601 43.8877L50.3953 46.9281Z",fill:"#FF3E3E"}),e.createElementVNode("path",{d:"M22.2975 45.1692C22.0401 44.969 22.0401 44.58 22.2975 44.3798L25.3379 42.0151C25.6663 41.7596 26.1449 41.9937 26.1449 42.4097L26.1449 47.1393C26.1449 47.5554 25.6663 47.7894 25.3379 47.534L22.2975 45.1692Z",fill:"#FF3E3E"})])],-1)),zn={class:"text mt-3"},Wn={key:1,class:"d-flex flex-column tablet-mobile-content"},Gn={class:"box horizontal mt-3"},Qn=de(()=>e.createElementVNode("div",{class:"tutorial-icon d-flex align-items-center justify-center"},[e.createElementVNode("svg",{width:"101",height:"65",viewBox:"0 0 101 65",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("path",{d:"M68 28H87.9736M87.9736 28L82 34M87.9736 28L82 22",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e.createElementVNode("path",{d:"M33.9727 28H13.999M13.999 28L19.9727 34M13.999 28L19.9727 22",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e.createElementVNode("path",{d:"M57.3126 51.1276L62.5533 49.7234C65.3195 48.9822 67.2473 46.4813 67.2601 43.6176C67.2626 43.0532 67.1898 42.4909 67.0438 41.9457L64.9992 34.3153C64.7491 33.3818 63.7895 32.8278 62.8559 33.0779C61.9223 33.328 61.3683 34.2876 61.6185 35.2212L61.0361 33.0479C60.7502 31.9809 59.6536 31.3478 58.5866 31.6337C57.5197 31.9195 56.8865 33.0162 57.1724 34.0831L56.7195 32.3928C56.3979 31.1925 55.1641 30.4802 53.9638 30.8018C52.7635 31.1234 52.0512 32.3572 52.3728 33.5575L50.6258 27.0375C50.3399 25.9705 49.2432 25.3374 48.1763 25.6233C47.1094 25.9091 46.4762 27.0058 46.7621 28.0727L50.3855 41.5957C49.2796 40.7276 47.5926 39.524 46.3279 38.6369C45.3814 37.9729 44.0801 38.2068 43.4137 39.1516C42.8107 40.0066 42.9238 41.1741 43.6798 41.8975L51.8691 49.7332C53.3154 51.1171 55.3791 51.6457 57.3126 51.1276Z",fill:"white"}),e.createElementVNode("path",{d:"M53.7316 38.6286L52.6963 34.7649M52.6963 34.7649L50.6258 27.0375C50.3399 25.9705 49.2432 25.3374 48.1763 25.6233V25.6233C47.1094 25.9091 46.4762 27.0058 46.7621 28.0727L50.3855 41.5957C49.2796 40.7276 47.5926 39.524 46.3279 38.6369C45.3814 37.9729 44.0801 38.2068 43.4137 39.1516V39.1516C42.8107 40.0066 42.9238 41.1741 43.6798 41.8975L51.8691 49.7332C53.3154 51.1171 55.3791 51.6457 57.3126 51.1276L62.5533 49.7234C65.3195 48.9822 67.2473 46.4813 67.2601 43.6176V43.6176C67.2626 43.0532 67.1898 42.4909 67.0438 41.9457L64.9992 34.3153C64.7491 33.3818 63.7895 32.8278 62.8559 33.0779V33.0779V33.0779C61.9223 33.328 61.3683 34.2876 61.6185 35.2212L61.942 36.4286M52.6963 34.7649L52.3728 33.5575C52.0512 32.3572 52.7635 31.1234 53.9638 30.8018V30.8018C55.1641 30.4802 56.3979 31.1925 56.7195 32.3928L57.3018 34.5661M58.2077 37.9469L57.3018 34.5661M57.3018 34.5661L57.1724 34.0831C56.8865 33.0162 57.5197 31.9195 58.5866 31.6337V31.6337C59.6536 31.3478 60.7502 31.9809 61.0361 33.0479L61.942 36.4286M62.3302 37.8775L61.942 36.4286",stroke:"black","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})])],-1)),qn={class:"text ml-2"},Zn={class:"box horizontal mt-3"},Xn=de(()=>e.createElementVNode("div",{class:"tutorial-icon d-flex align-items-center justify-center"},[e.createElementVNode("svg",{width:"99",height:"65",viewBox:"0 0 99 65",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("path",{d:"M79.9927 29.9814C79.9871 22.2398 66.3311 15.9962 49.491 16.0358C32.651 16.0754 19.0039 22.3833 19.0095 30.1248C19.015 37.8663 32.6711 44.11 49.5111 44.0704C66.3512 44.0308 79.9982 37.7229 79.9927 29.9814Z",fill:"white",stroke:"#B3B3B3","stroke-width":"1.5"}),e.createElementVNode("path",{d:"M50.5 31L46.5 31",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M50.5 31L46.5 31",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M50.5 31L46.5 31",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M66.5 31L62.5 31",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M66.5 31L62.5 31",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M66.5 31L62.5 31",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1562 27L49.1562 24",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1562 27L49.1562 24",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1562 27L49.1562 24",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M60.5 27L63.5 24",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M60.5 27L63.5 24",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M60.5 27L63.5 24",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M56.5 25L56.5 21",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M56.5 25L56.5 21",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M56.5 25L56.5 21",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1562 35L49.1562 38",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1562 35L49.1562 38",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M52.1562 35L49.1562 38",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round"}),e.createElementVNode("path",{d:"M64.8126 54.1276L70.0533 52.7234C72.8195 51.9822 74.7473 49.4813 74.7601 46.6176C74.7626 46.0532 74.6898 45.4909 74.5438 44.9457L72.4992 37.3153C72.2491 36.3818 71.2895 35.8278 70.3559 36.0779C69.4223 36.328 68.8683 37.2876 69.1185 38.2212L68.5361 36.0479C68.2502 34.9809 67.1536 34.3478 66.0866 34.6337C65.0197 34.9195 64.3865 36.0162 64.6724 37.0831L64.2195 35.3928C63.8979 34.1925 62.6641 33.4802 61.4638 33.8018C60.2635 34.1234 59.5512 35.3572 59.8728 36.5575L58.1258 30.0375C57.8399 28.9705 56.7432 28.3374 55.6763 28.6233C54.6094 28.9091 53.9762 30.0058 54.2621 31.0727L57.8855 44.5957C56.7796 43.7276 55.0926 42.524 53.8279 41.6369C52.8814 40.9729 51.5801 41.2068 50.9137 42.1516C50.3107 43.0066 50.4238 44.1741 51.1798 44.8975L59.3691 52.7332C60.8154 54.1171 62.8791 54.6457 64.8126 54.1276Z",fill:"white"}),e.createElementVNode("path",{d:"M61.2316 41.6286L60.1963 37.7649M60.1963 37.7649L58.1258 30.0375C57.8399 28.9705 56.7432 28.3374 55.6763 28.6233V28.6233C54.6094 28.9091 53.9762 30.0058 54.2621 31.0727L57.8855 44.5957C56.7796 43.7276 55.0926 42.524 53.8279 41.6369C52.8814 40.9729 51.5801 41.2068 50.9137 42.1516V42.1516C50.3107 43.0066 50.4238 44.1741 51.1798 44.8975L59.3691 52.7332C60.8154 54.1171 62.8791 54.6457 64.8126 54.1276L70.0533 52.7234C72.8195 51.9822 74.7473 49.4813 74.7601 46.6176V46.6176C74.7626 46.0532 74.6898 45.4909 74.5438 44.9457L72.4992 37.3153C72.2491 36.3818 71.2895 35.8278 70.3559 36.0779V36.0779V36.0779C69.4223 36.328 68.8683 37.2876 69.1185 38.2212L69.442 39.4286M60.1963 37.7649L59.8728 36.5575C59.5512 35.3572 60.2635 34.1234 61.4638 33.8018V33.8018C62.6641 33.4802 63.8979 34.1925 64.2195 35.3928L64.8018 37.5661M65.7077 40.9469L64.8018 37.5661M64.8018 37.5661L64.6724 37.0831C64.3865 36.0162 65.0197 34.9195 66.0866 34.6337V34.6337C67.1536 34.3478 68.2502 34.9809 68.5361 36.0479L69.442 39.4286M69.8302 40.8775L69.442 39.4286",stroke:"black","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})])],-1)),Jn={class:"text ml-2"},Kn={class:"box horizontal mt-3"},ea=de(()=>e.createElementVNode("div",{class:"tutorial-icon d-flex align-items-center justify-center"},[e.createElementVNode("svg",{width:"99",height:"65",viewBox:"0 0 99 65",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[e.createElementVNode("path",{d:"M31 24.9736L31 10M31 10L25 15.9736M31 10L37 15.9736",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e.createElementVNode("path",{d:"M31 40L31 54.9736M31 54.9736L25 49M31 54.9736L37 49",stroke:"#FF3E3E","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),e.createElementVNode("path",{d:"M58.6512 44.3852L61.8162 42.5579C64.2963 41.126 65.5112 38.2114 64.7823 35.442C64.6387 34.8961 64.4229 34.3719 64.1407 33.883L60.1909 27.0418C59.7076 26.2048 58.6374 25.918 57.8003 26.4013C56.9633 26.8845 56.6765 27.9548 57.1598 28.7918L56.0348 26.8433C55.4825 25.8867 54.2593 25.5589 53.3027 26.1112C52.3462 26.6635 52.0184 27.8867 52.5707 28.8433L51.6957 27.3277C51.0744 26.2516 49.6983 25.8828 48.6221 26.5042C47.546 27.1255 47.1773 28.5016 47.7986 29.5777L44.4236 23.7321C43.8713 22.7755 42.6481 22.4477 41.6915 23C40.7349 23.5523 40.4072 24.7755 40.9595 25.7321L48.4595 38.7224L41.0923 40.5062C40.3398 40.6884 39.7721 41.3073 39.6555 42.0728C39.4961 43.1196 40.2199 44.096 41.268 44.2476L49.7609 45.4766L51.251 45.7252C53.7985 46.1503 56.4146 45.6766 58.6512 44.3852Z",fill:"white"}),e.createElementVNode("path",{d:"M50.4236 34.1244L48.4236 30.6603M48.4236 30.6603L44.4236 23.7321C43.8713 22.7755 42.6481 22.4477 41.6915 23V23C40.7349 23.5523 40.4072 24.7755 40.9595 25.7321L48.4595 38.7224L41.0923 40.5062C40.3398 40.6884 39.7721 41.3073 39.6555 42.0728V42.0728C39.4961 43.1196 40.2199 44.096 41.268 44.2476L49.7609 45.4766L51.251 45.7252C53.7985 46.1503 56.4146 45.6766 58.6512 44.3852L61.8162 42.5579C64.2963 41.126 65.5112 38.2114 64.7823 35.442V35.442C64.6387 34.8961 64.4229 34.3719 64.1407 33.883L60.1909 27.0418C59.7076 26.2048 58.6374 25.918 57.8003 26.4013V26.4013V26.4013C56.9633 26.8845 56.6765 27.9548 57.1598 28.7918L57.7848 29.8744M48.4236 30.6603L47.7986 29.5777C47.1773 28.5016 47.546 27.1255 48.6221 26.5042V26.5042C49.6983 25.8828 51.0744 26.2516 51.6957 27.3277L52.8207 29.2763M54.5707 32.3074L52.8207 29.2763M52.8207 29.2763L52.5707 28.8433C52.0184 27.8867 52.3462 26.6635 53.3027 26.1112V26.1112C54.2593 25.5589 55.4825 25.8867 56.0348 26.8433L57.7848 29.8744M58.5348 31.1734L57.7848 29.8744",stroke:"black","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})])],-1)),ta={class:"text ml-2"},oa={class:"d-flex justify-space-between mt-3 mx-3 mb-0 tutorial-buttons"},na=$(e.defineComponent({__name:"VTutorial",props:{project:{}},emits:["closeTutorial"],setup(m,{emit:n}){const t=m,a=n,o=e.inject(J),r=e.ref(!0),s=e.ref(!1),l=e.computed(()=>[/Android/i,/webOS/i,/iPhone/i,/iPad/i,/iPod/i,/BlackBerry/i,/Windows Phone/i].some(g=>navigator.userAgent.match(g))),u=e.computed(()=>{const d=localStorage.getItem(`${t.project}-dont-show-tutorial`);return d&&a("closeTutorial"),d});function i(){s.value&&c(),r.value=!1,a("closeTutorial")}function c(){localStorage.setItem(`${t.project}-dont-show-tutorial`,"true")}return(d,g)=>{const f=e.resolveComponent("v-checkbox"),p=e.resolveComponent("v-btn");return e.openBlock(),e.createBlock(e.Transition,{name:"fade-transition"},{default:e.withCtx(()=>[r.value&&!u.value?(e.openBlock(),e.createElementBlock("div",In,[l.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",An,[e.createElementVNode("div",Dn,[e.createElementVNode("div",Ln,[Fn,e.createElementVNode("div",Mn,e.toDisplayString(e.unref(o).getLabel("clickAndDragToLookAround")),1)]),e.createElementVNode("div",Tn,[$n,e.createElementVNode("div",Rn,e.toDisplayString(e.unref(o).getLabel("clickOnTheCirclesToMoveAround")),1)]),e.createElementVNode("div",On,[Un,e.createElementVNode("div",Hn,e.toDisplayString(e.unref(o).getLabel("useTheMouseWheelToZoom")),1)])]),e.createElementVNode("div",Pn,[e.createElementVNode("div",jn,[Yn,e.createElementVNode("div",zn,e.toDisplayString(e.unref(o).getLabel("youCanAlsoUseTheArrowKeysToMoveAround")),1)])])])),l.value?(e.openBlock(),e.createElementBlock("div",Wn,[e.createElementVNode("div",Gn,[Qn,e.createElementVNode("div",qn,e.toDisplayString(e.unref(o).getLabel("tapAndDragToLookAround")),1)]),e.createElementVNode("div",Zn,[Xn,e.createElementVNode("div",Jn,e.toDisplayString(e.unref(o).getLabel("tapOnTheCirclesToMoveAround")),1)]),e.createElementVNode("div",Kn,[ea,e.createElementVNode("div",ta,e.toDisplayString(e.unref(o).getLabel("useTwoFingersToZoom")),1)])])):e.createCommentVNode("",!0),e.createElementVNode("div",oa,[e.createVNode(f,{modelValue:s.value,"onUpdate:modelValue":g[0]||(g[0]=v=>s.value=v),label:e.unref(o).getLabel("dontShowAgain")},null,8,["modelValue","label"]),e.createVNode(p,{small:"",outlined:"",class:"mt-5",onClick:g[1]||(g[1]=v=>i())},{default:e.withCtx(()=>[e.createTextVNode("Ok")]),_:1})])])):e.createCommentVNode("",!0)]),_:1})}}}),[["__scopeId","data-v-b9eb5380"]]),aa=m=>(e.pushScopeId("data-v-bd4f66c3"),m=m(),e.popScopeId(),m),ra={class:"player-settings-ui"},la={id:"settings-ui-form"},ia={class:"form-inputs"},sa={class:"setting-label"},ca={class:"setting-label"},da=["max","min","step"],ma={class:"setting-label"},ua={class:"flex-grow-1 flex-shrink-0"},pa=["onUpdate:modelValue"],fa={key:3,"d-block":"",class:"mt-3"},ha={class:"d-flex justify-space-between"},ga={class:"setting-label"},va={class:"mt-5 d-block",style:{width:"300px"}},ka=aa(()=>e.createElementVNode("div",{class:"setting-label"},"Enter Lut URL:",-1)),Ca={class:"d-block",style:{width:"300px"}},ya={class:"form-buttons"},wa=$(e.defineComponent({__name:"VPlayerSettingsUi",props:{initialSettings:{}},emits:["updateSettings","saveSettings"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(f(t.initialSettings));e.watch(o,()=>{s()},{deep:!0});const r=e.computed(()=>{let p={};for(const[v,V]of Object.entries(o.value))v==="whitePoint"?p[v]=c(V.value):p[v]=V.value;return p});function s(){a("updateSettings",r.value)}function l(){const p=document.createElement("a");p.href=URL.createObjectURL(new Blob([JSON.stringify(r.value,null,2)]));const v=`player-settings-${Date.now()}.json`;p.download=v,p.style.display="none",document.body.appendChild(p),p.click(),document.body.removeChild(p)}function u(){a("saveSettings",r.value)}function i(){o.value=f(),a("updateSettings",r.value)}function c(p){const v=parseInt(p.substr(1,2),16)/255,V=parseInt(p.substr(3,2),16)/255,C=parseInt(p.substr(5,2),16)/255;return[v,V,C]}function d(p){var v=p.toString(16);return v.length==1?"0"+v:v}function g([p,v,V]){return"#"+d(parseInt((p*255).toString()))+d(parseInt((v*255).toString()))+d(parseInt((V*255).toString()))}function f(p={}){const v=["Cool 5","Cool 10","Cool 15","Cool 20","Cool 25","Warm 20","Warm 25","Warm 10","Warm 15","Warm 5","bw"];let V={temperature:6500,targetLuminance:1,exposureFovScale:.6,UNREAL_BLOOM_ENABLED:!0,sharpenFilter_amount:.6,UNREAL_BLOOM_STRENGTH:.3,TRANSITION_MOVEMENT_SCALE:1.3,whitePoint:[1,1,1],lut:"",...p};return{exposureFovScale:{label:"Exposure Fov Scale",type:"slider",min:0,max:1,step:.01,value:V.exposureFovScale},targetLuminance:{label:"Target Luminance",type:"slider",min:0,max:15,step:.1,value:V.targetLuminance},sharpenFilter_amount:{label:"Sharpen Filter Amount",type:"slider",min:0,max:100,step:.1,value:V.sharpenFilter_amount},UNREAL_BLOOM_ENABLED:{label:"Enable Bloom?",type:"boolean",value:V.UNREAL_BLOOM_ENABLED},UNREAL_BLOOM_STRENGTH:{label:"Bloom Strength",type:"slider",min:0,max:1,step:.01,value:V.UNREAL_BLOOM_STRENGTH},TRANSITION_MOVEMENT_SCALE:{label:"Transition Movement Speed",type:"slider",min:.2,max:25,step:.1,value:V.TRANSITION_MOVEMENT_SCALE},temperature:{label:"Temperature / White Balance",type:"slider",min:1e3,max:12e3,step:1,value:V.temperature},whitePoint:{label:"White Point",type:"color",value:g(V.whitePoint)},lut:{label:"Lut",type:"lut",items:v.map(C=>({text:C,value:`https://cdn.visuado.com/luts/${C}.png`})),value:V.lut}}}return(p,v)=>{const V=e.resolveComponent("v-text-field"),C=e.resolveComponent("v-slider"),h=e.resolveComponent("v-checkbox"),A=e.resolveComponent("v-btn"),k=e.resolveComponent("v-select"),S=e.resolveComponent("v-icon");return e.openBlock(),e.createElementBlock("div",ra,[e.createElementVNode("form",la,[e.createElementVNode("div",ia,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(y,_,M)=>(e.openBlock(),e.createElementBlock("div",{key:M,"d-block":""},[y.type==="slider"?(e.openBlock(),e.createBlock(C,{key:0,modelValue:o.value[_].value,"onUpdate:modelValue":E=>o.value[_].value=E,onChange:s,max:y.max,min:y.min,step:y.step},{prepend:e.withCtx(()=>[e.createElementVNode("div",sa,e.toDisplayString(y.label),1)]),append:e.withCtx(()=>[e.createElementVNode("div",null,[e.createVNode(V,{modelValue:o.value[_].value,"onUpdate:modelValue":E=>o.value[_].value=E,"hide-details":"",dense:"",outlined:"",type:"number",max:y.max,min:y.min,step:y.step,style:{width:"90px"},onChange:s},null,8,["modelValue","onUpdate:modelValue","max","min","step"])])]),_:2},1032,["modelValue","onUpdate:modelValue","max","min","step"])):e.createCommentVNode("",!0),y.type==="boolean"?(e.openBlock(),e.createBlock(h,{key:1,modelValue:o.value[_].value,"onUpdate:modelValue":E=>o.value[_].value=E,onChange:s},{prepend:e.withCtx(()=>[e.createElementVNode("div",ca,e.toDisplayString(y.label),1)]),append:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(y.value),1)]),_:2},1032,["modelValue","onUpdate:modelValue"])):e.createCommentVNode("",!0),y.type==="color"?(e.openBlock(),e.createElementBlock("div",{key:2,class:"d-flex",max:y.max,min:y.min,step:y.step},[e.createElementVNode("div",ma,e.toDisplayString(y.label),1),e.createElementVNode("div",ua,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":E=>o.value[_].value=E,type:"color",onChange:s},null,40,pa),[[e.vModelText,o.value[_].value]])]),e.createElementVNode("div",null,[e.createVNode(V,{modelValue:o.value[_].value,"onUpdate:modelValue":E=>o.value[_].value=E,"hide-details":"",dense:"",outlined:"",readonly:"",type:"text",style:{width:"90px"},onChange:s},null,8,["modelValue","onUpdate:modelValue"])])],8,da)):e.createCommentVNode("",!0),y.type==="lut"?(e.openBlock(),e.createElementBlock("div",fa,[e.createElementVNode("div",ha,[e.createElementVNode("div",ga,e.toDisplayString(y.label),1),e.createElementVNode("div",null,[e.createVNode(A,{class:"ml-2","x-small":"",onClick:E=>o.value[_].value=null},{default:e.withCtx(()=>[e.createTextVNode(" Clear Lut ")]),_:2},1032,["onClick"])])]),e.createElementVNode("div",null,[e.createElementVNode("div",va,[e.createElementVNode("div",null,[e.createVNode(k,{modelValue:o.value[_].value,"onUpdate:modelValue":E=>o.value[_].value=E,items:y.items,"item-title":"title","item-value":"value",dense:"",label:"Select Lut",onChange:s},null,8,["modelValue","onUpdate:modelValue","items"])])]),e.createElementVNode("div",null,[ka,e.createElementVNode("div",Ca,[e.createElementVNode("div",null,[e.createVNode(V,{modelValue:o.value[_].value,"onUpdate:modelValue":E=>o.value[_].value=E,"hide-details":"",dense:"",type:"url",onChange:s},null,8,["modelValue","onUpdate:modelValue"])])])])])])):e.createCommentVNode("",!0)]))),128))]),e.createElementVNode("div",ya,[e.createVNode(A,{onClick:v[0]||(v[0]=y=>i())},{default:e.withCtx(()=>[e.createTextVNode("Reset")]),_:1}),e.createVNode(A,{class:"ml-2",onClick:v[1]||(v[1]=y=>l())},{default:e.withCtx(()=>[e.createTextVNode(" Download Json "),e.createVNode(S,{color:"black darken-1"},{default:e.withCtx(()=>[e.createTextVNode("mdi-download")]),_:1})]),_:1}),e.createVNode(A,{class:"ml-2",onClick:v[2]||(v[2]=y=>u())},{default:e.withCtx(()=>[e.createTextVNode(" Save Settings "),e.createVNode(S,{color:"black darken-1"},{default:e.withCtx(()=>[e.createTextVNode("mdi-save")]),_:1})]),_:1})])])])}}}),[["__scopeId","data-v-bd4f66c3"]]),_a=(m=>(e.pushScopeId("data-v-30593022"),m=m(),e.popScopeId(),m))(()=>e.createElementVNode("div",{id:"filler-div"},null,-1)),ba={class:"moveable-body",id:"moveableDivHeader"},Va={class:"moveable-footer"},Ea=$(e.defineComponent({__name:"VMoveable",emits:["close","transform"],setup(m,{emit:n}){const t=n,a=e.ref("big");e.onMounted(()=>{o(document.getElementById("moveableDiv"))});function o(s){const l=document.getElementById(s.id+"Header");if(!l)return;let u=0,i=0,c=0,d=0;l.addEventListener("touchstart",g,{passive:!1}),l.addEventListener("touchend",p,{passive:!1}),l.addEventListener("mousedown",g,{passive:!1}),l.addEventListener("mouseup",p,{passive:!1});function g(v){v=v||window.event,v.preventDefault();let V=v;v.type==="touchstart"&&(V=v.touches[0]),c=V.clientX,d=V.clientY,document.addEventListener("mouseup",p,{passive:!1}),document.addEventListener("touchend",p,{passive:!1}),document.addEventListener("mousemove",f,{passive:!1}),document.addEventListener("touchmove",f,{passive:!1})}function f(v){v=v||window.event,v.preventDefault();let V=v;v.type==="touchmove"&&(V=v.touches[0]),u=c-V.clientX,i=d-V.clientY,c=V.clientX,d=V.clientY,s.style.top=s.offsetTop-i+"px",s.style.left=s.offsetLeft-u+"px"}function p(){document.removeEventListener("mouseup",p,!1),document.removeEventListener("mousemove",f,!1),document.removeEventListener("touchend",p,!1),document.removeEventListener("touchmove",f,!1)}}function r(){a.value==="big"?a.value="small":a.value="big"}return(s,l)=>{const u=e.resolveComponent("v-btn");return e.openBlock(),e.createElementBlock("div",{id:"moveableDiv",class:e.normalizeClass(["big d-flex justify-space-between flex-column align-center sizer",a.value])},[e.createVNode(u,{class:"close-icon",icon:"mdi-window-close",size:"x-small",onClick:l[0]||(l[0]=i=>t("close"))}),e.createVNode(u,{class:"resize-icon",icon:"mdi-image-size-select-small",size:"x-small",onClick:r,title:"Resize"}),e.createVNode(u,{class:"rotate-icon",size:"x-small",icon:"mdi mdi-rotate-right",onClick:l[1]||(l[1]=i=>t("transform")),title:"Rotate"}),_a,e.createElementVNode("div",ba,[e.renderSlot(s.$slots,"body",{class:"slot"},void 0,!0)]),e.createElementVNode("div",Va,[e.renderSlot(s.$slots,"footer",{},void 0,!0)])],2)}}}),[["__scopeId","data-v-30593022"]]),Ba={class:"rotation-marker-svg",viewBox:"0 0 40 40",xmlns:"http://www.w3.org/2000/svg"},xa=e.createStaticVNode('<defs><radialGradient id="Gradient" cx="0" cy="0" r="0.9" fx="0" fy="0"><stop offset="0%" class="stop1"></stop><stop offset="60%" class="stop2"></stop><stop offset="90%" class="stop3"></stop></radialGradient><linearGradient id="LineGradient" gradientTransform="rotate(90)"><stop offset="0%" class="stop1"></stop><stop offset="75%" class="stop2"></stop><stop offset="100%" class="stop3"></stop></linearGradient></defs>',1),Sa=["transform"],Na=[e.createStaticVNode('<rect id="field-of-view-gradient" x="20" y="20" width="38" height="38" transform="rotate(0)" transform-origin="20 20" fill="url(#Gradient)"></rect><rect class="field-of-view-border" x="20" y="20" width="1" height="25" fill="url(#LineGradient)" transform="rotate(0)" transform-origin="20 20"></rect><rect class="field-of-view-border" x="19" y="19" width="1" height="25" fill="url(#LineGradient)" transform="rotate(-90)" transform-origin="20 20"></rect><circle cx="20" cy="20" r="5" fill="white"></circle><circle cx="20" cy="20" r="3" fill="red"></circle>',5)],Ia=e.defineComponent({__name:"VRotationMarker",props:{rotation:{}},setup(m){return(n,t)=>(e.openBlock(),e.createElementBlock("svg",Ba,[xa,e.createElementVNode("g",{"transform-origin":"20 20",transform:`rotate(${45+n.rotation})`},Na,8,Sa)]))}}),Aa={class:"minimap-wrapper d-flex align-stretch justify-space-between"},Da={class:"minimap-container"},La=$(e.defineComponent({__name:"VMiniMapMap",props:{backgroundImage:{},allCameras:{},storey:{},currentCamera:{},rotation:{},transformAngle:{}},setup(m){const n=m,t=e.ref(512),a=e.ref(384),o=e.ref(new ce.Vector3),r=e.ref(new ce.Object3D),s=e.ref({}),l=e.ref(1),u=e.ref(),i=e.computed(()=>n.allCameras),c=e.computed(()=>n.allCameras.find(_=>_.id===n.currentCamera)),d=e.computed(()=>n.rotation),g=e.computed(()=>new ce.Vector3(n.storey.position.x,n.storey.position.y,n.storey.position.z)),f=e.computed(()=>parseFloat(c.value.floor_vertical_position)),p=e.computed(()=>i.value.map(_=>{const M=_.uposition.split(","),E=new ce.Vector3(Number(M[0])-g.value.x,0,Number(M[2])-g.value.z);return{..._,...k(o.value,E)}})),v=e.computed(()=>`background-image: url(${n.backgroundImage});`),V=e.computed(()=>{let _=l.value>1?1:l.value;return _<.8&&(_=.4),`scale: ${_>1?1:_}; transform: rotate(${n.transformAngle}deg);`});e.onMounted(()=>{S(),h(),y();const _=document.getElementById("moveableDiv");_&&(u.value=new ResizeObserver(y).observe(_))}),e.onBeforeUpdate(()=>{S(),h()}),e.onBeforeUnmount(()=>{u.value&&u.value.unobserve(document.getElementById("moveableDiv"))});function C(_){return ce.MathUtils.degToRad(_)}function h(){r.value.rotation.x=180,r.value.rotation.y=n.storey.rotation.y*-1,s.value={transform:`rotateZ(${r.value.rotation.y}deg) rotateX(${r.value.rotation.x}deg)`}}function A(_){return{top:`${Math.abs(_.top)}%`,left:`${Math.abs(_.left)}%`}}function k(_,M){var E=new ce.Vector3;const R=E.subVectors(_,M);return{relativePosition:R,left:R.x/t.value*100,top:R.z/a.value*100}}function S(){const _=n.storey.position.y-f.value;a.value=2*(_*Math.tan(C(n.storey.fovY/2))),t.value=512/384*a.value;const M=a.value/2,E=t.value/2,R=new ce.Vector3(E*-1,0,M*-1);o.value=R}function y(){const _=document.getElementById("moveableDiv");if(!_)return;const M=_.offsetHeight/384*.8,E=_.offsetWidth/512*.8;_.offsetHeight>_.offsetWidth?l.value=E*.5:l.value=M*.9}return(_,M)=>(e.openBlock(),e.createElementBlock("div",Aa,[e.createElementVNode("div",Da,[e.createElementVNode("div",{class:"web-minimap",style:e.normalizeStyle(V.value)},[e.createElementVNode("div",{class:"minimap-background-image",style:e.normalizeStyle(v.value)},null,4),e.createElementVNode("div",{class:"center-pivot",style:e.normalizeStyle(s.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,E=>(e.openBlock(),e.createElementBlock("div",{key:E.id},[c.value.floorLevel===E.floorLevel?(e.openBlock(),e.createElementBlock("div",{key:0,class:"single-camera-marker",style:e.normalizeStyle(A(E))},null,4)):e.createCommentVNode("",!0),c.value.id===E.id&&n.rotation!==null?(e.openBlock(),e.createBlock(Ia,{key:1,class:"rotation-marker-component",rotation:d.value,style:e.normalizeStyle({...A(E)})},null,8,["rotation","style"])):e.createCommentVNode("",!0)]))),128))],4)],4)])]))}}),[["__scopeId","data-v-1a6129d7"]]),Fa=$(e.defineComponent({__name:"VMiniMapCompass",props:{scale:{},rotation:{},transformAngle:{}},setup(m){const n=m,t=e.computed(()=>n.rotation+n.transformAngle-90);return(a,o)=>(e.openBlock(),e.createElementBlock("div",{class:"minimap-compass",style:e.normalizeStyle({scale:a.scale})},[e.createVNode(he,{class:"north-indicator",longitude:t.value},null,8,["longitude"])],4))}}),[["__scopeId","data-v-552c1d19"]]),Ma={class:"ss-wrapper"},Ta={class:"slider"},$a={class:"minimap-sun-slider"},Ra={key:0,class:"time-label"},Oa=$(e.defineComponent({__name:"VSunSimulationSlider",props:{cdnFileResolver:{type:[String,Function]},minimapJson:{},apartmentJson:{},level:{}},emits:["setBackgroundImage"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(new Date().getHours()),r=e.ref(!0),s=e.ref(!0),l=e.ref(""),u=e.ref(new Map),i=e.computed(()=>t.minimapJson.storeys[t.level]),c=e.computed(()=>`${Math.floor(o.value).toString().padStart(2,"0")}:00`),d=e.computed(()=>{if(i.value.sunsimFilesTimeStamps[o.value]){const C=i.value.sunsimFilesTimeStamps[o.value].split(" ");return`${C[0]} ${C[1]}`}return""});e.onMounted(async()=>{l.value=await p(i.value.sunsimFiles[o.value]),s.value=!1;const C=await f(t.minimapJson.storeys);u.value=C,r.value=!1,a("setBackgroundImage",g(t.level,o.value))}),e.watch(o,()=>{const C=g(t.level,o.value);a("setBackgroundImage",C)}),e.watch(()=>t.level,()=>{a("setBackgroundImage",g(t.level,o.value))},{immediate:!0});function g(C,h){return u.value.get(`sunsim${C}_${h}`)?u.value.get(`sunsim${C}_${h}`):""}async function f(C){let h=new Map;for(let A=0;A<C.length;A++){const k=C[A].sunsimFiles;for(let S=0;S<k.length;S++){const y=k[S];try{const _=y,M=y.split("."),E=await p(_);h.set(M[0],E)}catch{continue}}}return h}async function p(C){const A=await(await fetch(z(t.cdnFileResolver,`/${t.apartmentJson.type}/${t.apartmentJson.id}/minimap/${C}`))).blob(),k=await V(A);return v(k)}function v(C){return"data:image/jpeg;base64,"+C}async function V(C){return new Promise((h,A)=>{const k=new FileReader;k.onload=()=>{const S=k.result.split(",")[1];h(S)},k.onerror=A,k.readAsDataURL(C)})}return(C,h)=>{const A=e.resolveComponent("v-progress-linear"),k=e.resolveComponent("v-icon"),S=e.resolveComponent("v-slider");return e.openBlock(),e.createElementBlock("div",Ma,[e.createElementVNode("div",Ta,[e.createElementVNode("div",$a,[r.value?(e.openBlock(),e.createBlock(A,{key:0,indeterminate:"",rounded:"",height:"6",color:"grey lighten-1",class:"mr-2"})):(e.openBlock(),e.createBlock(S,{key:1,modelValue:o.value,"onUpdate:modelValue":h[0]||(h[0]=y=>o.value=y),min:0,max:23,step:1,color:"#373737","track-color":"#373737","thumb-color":"#373737","hide-details":!0},{prepend:e.withCtx(()=>[e.createVNode(k,{color:"#ffab02"},{default:e.withCtx(()=>[e.createTextVNode("mdi-white-balance-sunny")]),_:1})]),_:1},8,["modelValue"]))]),r.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Ra,e.toDisplayString(d.value)+" "+e.toDisplayString(c.value),1))])])}}}),[["__scopeId","data-v-b2f12eb0"]]),Pe=$(e.defineComponent({__name:"VMiniMap",props:{cdnFileResolver:{type:[String,Function]},minimapJson:{},apartmentJson:{},currentCamera:{},level:{},rotation:{}},emits:["close"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(),r=e.ref(0),s=e.computed(()=>t.minimapJson.storeys[t.level]);e.watch(s,()=>{o.value=s.value.defaultSunsimFile?`/${t.apartmentJson.type}/${t.apartmentJson.id}/minimap/sunsim0_13.jpg`:`/${t.apartmentJson.type}/${t.apartmentJson.id}/minimap/${s.value.defaultSunsimFile}`},{immediate:!0,once:!0});const l=e.computed(()=>{let c=1;return r.value!==0&&(Math.abs(r.value)%180===0?c=1:c=-1),c});function u(c){o.value=c}function i(){r.value=r.value+90}return(c,d)=>(e.openBlock(),e.createBlock(Ea,{onClose:d[0]||(d[0]=g=>a("close")),onTransform:i},{body:e.withCtx(()=>[e.createVNode(Fa,{scale:l.value,rotation:s.value.rotation.y,"transform-angle":r.value},null,8,["scale","rotation","transform-angle"]),e.createElementVNode("div",null,[e.createVNode(La,{"transform-angle":r.value,"all-cameras":c.apartmentJson.cameras,"background-image":o.value,rotation:c.rotation,"current-camera":c.currentCamera,storey:s.value},null,8,["transform-angle","all-cameras","background-image","rotation","current-camera","storey"])])]),footer:e.withCtx(()=>[e.createVNode(Oa,{"cdn-file-resolver":t.cdnFileResolver,"minimap-json":t.minimapJson,"apartment-json":t.apartmentJson,level:t.level,onSetBackgroundImage:u},null,8,["cdn-file-resolver","minimap-json","apartment-json","level"])]),_:1}))}}),[["__scopeId","data-v-898e645b"]]),Ua={key:0,class:"text-white disclaimer caption"},je=$(e.defineComponent({__name:"VDisclaimer",setup(m){const n=e.inject(J),t=e.ref(!0);return(a,o)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade-transition"},{default:e.withCtx(()=>[t.value?(e.openBlock(),e.createElementBlock("div",Ua,[e.createTextVNode(e.toDisplayString(e.unref(n).getLabel("allIllustrationsAreIndicativeDeviationsMayOccur"))+" ",1),e.createElementVNode("span",{onClick:o[0]||(o[0]=r=>t.value=!1),class:"link-text text-decoration-underline"},e.toDisplayString(e.unref(n).getLabel("iUnderstand")),1)])):e.createCommentVNode("",!0)]),_:1}))}}),[["__scopeId","data-v-046402dc"]]),Ha={class:"waypoint-carousel"},Pa=37,ja=39,Be=$(e.defineComponent({__name:"VWaypointCarousel",props:{thumbnails:{},active:{}},emits:["previous","next","goto"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(0),r=e.computed({get(){return t.active},set(i){o.value=i}}),s=e.computed(()=>/Android|webOS|iPhone|iPad|BlackBerry|Windows Phone|Opera Mini|IEMobile|Mobile/i.test(window.navigator.userAgent));e.onMounted(()=>{window.addEventListener("keydown",l)}),e.onBeforeUnmount(()=>{window.removeEventListener("keydown",l)});function l(i){switch(i.keyCode){case i.keyCode===Pa:a("previous");break;case i.keyCode===ja:a("next");break;default:return}}function u(i,c){c(),a("goto",i)}return(i,c)=>{const d=e.resolveComponent("v-icon"),g=e.resolveComponent("v-btn"),f=e.resolveComponent("v-hover"),p=e.resolveComponent("v-img"),v=e.resolveComponent("v-card"),V=e.resolveComponent("v-slide-group-item"),C=e.resolveComponent("v-slide-group");return e.openBlock(),e.createElementBlock("div",Ha,[e.createVNode(C,{modelValue:r.value,"onUpdate:modelValue":c[2]||(c[2]=h=>r.value=h),"active-class":"active-apt","selected-class":"active-apt","show-arrows":"","center-active":"",mandatory:""},{prev:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(({isHovering:h})=>[e.createVNode(g,{elevation:"0",class:e.normalizeClass(["carousel-button",{mobile:s.value}]),onClick:c[0]||(c[0]=A=>a("previous"))},{default:e.withCtx(()=>[e.createVNode(d,{color:h?"#999":"#d2d2d2","x-large":""},{default:e.withCtx(()=>[e.createTextVNode(" mdi-chevron-left ")]),_:2},1032,["color"])]),_:2},1032,["class"])]),_:1})]),next:e.withCtx(()=>[e.createVNode(f,null,{default:e.withCtx(({isHovering:h})=>[e.createVNode(g,{elevation:"0",class:e.normalizeClass(["carousel-button",{mobile:s.value}]),onClick:c[1]||(c[1]=A=>a("next"))},{default:e.withCtx(()=>[e.createVNode(d,{color:h?"#999":"#d2d2d2","x-large":""},{default:e.withCtx(()=>[e.createTextVNode(" mdi-chevron-right ")]),_:2},1032,["color"])]),_:2},1032,["class"])]),_:1})]),default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.thumbnails,h=>(e.openBlock(),e.createBlock(V,{key:h.id},{default:e.withCtx(({toggle:A,selectedClass:k})=>[e.createVNode(v,{class:e.normalizeClass(["ma-2",k]),align:"center",justify:"center",height:s.value?50:100,width:s.value?80:160,elevation:"0",style:{overflow:"hidden"},onClick:S=>u(h.id,A)},{default:e.withCtx(()=>[e.createVNode(p,{"max-height":"100","max-width":"160",cover:"",src:h.thumbnailUrl},null,8,["src"])]),_:2},1032,["class","height","width","onClick"])]),_:2},1024))),128))]),_:1},8,["modelValue"])])}}}),[["__scopeId","data-v-45edaf7a"]]),Ya={id:"share-btns-wrapper",class:"text-center"},Ye=$(e.defineComponent({__name:"VSocialShare",setup(m){const n=e.inject(J),t=e.ref(!1),a=e.ref(location.href);function o(){return window.open("https://www.facebook.com/sharer/sharer.php?u="+encodeURIComponent(location.href),"facebook-share-dialog","width=626,height=436"),!1}function r(){return window.open("https://twitter.com/intent/tweet?text="+encodeURIComponent(location.href),"twitter-share-dialog","width=626,height=436"),!1}function s(){return window.open("https://www.linkedin.com/sharing/share-offsite/?url="+encodeURIComponent(location.href),"linkedin-share-dialog","width=626,height=736"),!1}function l(){navigator.clipboard.writeText(location.href)}return(u,i)=>{const c=e.resolveComponent("v-btn"),d=e.resolveComponent("v-tooltip"),g=e.resolveComponent("v-toolbar-title"),f=e.resolveComponent("v-spacer"),p=e.resolveComponent("v-toolbar"),v=e.resolveComponent("v-card-text"),V=e.resolveComponent("v-card"),C=e.resolveComponent("v-dialog");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(d,{elevation:"2",top:"",attach:""},{activator:e.withCtx(({props:h})=>[e.createVNode(c,e.mergeProps({density:"comfortable",elevation:"1",icon:"mdi-share-variant",onClick:i[0]||(i[0]=A=>t.value=!t.value)},h),null,16)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(e.unref(n).getLabel("share")),1)]),_:1}),e.createVNode(C,{id:"share-box",width:"400",modelValue:t.value,"onUpdate:modelValue":i[2]||(i[2]=h=>t.value=h)},{default:e.withCtx(()=>[e.createVNode(V,null,{default:e.withCtx(()=>[e.createVNode(p,{elevation:"0"},{default:e.withCtx(()=>[e.createVNode(c,{size:"x-small",icon:"mdi-close",onClick:i[1]||(i[1]=h=>t.value=!1)}),e.createVNode(g,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n).getLabel("share")),1)]),_:1}),e.createVNode(f)]),_:1}),e.createVNode(v,{class:"mt-5"},{default:e.withCtx(()=>[e.createElementVNode("p",Ya,[e.createVNode(d,{location:"top"},{activator:e.withCtx(({props:h})=>[e.createVNode(c,e.mergeProps({depressed:"",fab:"",light:"",icon:"mdi-facebook"},h,{onClick:o}),null,16)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(e.unref(n).getLabel("shareToFacebook")),1)]),_:1}),e.createVNode(d,{location:"top"},{activator:e.withCtx(({props:h})=>[e.createVNode(c,e.mergeProps({depressed:"",fab:"",light:"",icon:"mdi-linkedin"},h,{onClick:s}),null,16)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(e.unref(n).getLabel("shareToLinkedin")),1)]),_:1}),e.createVNode(d,{location:"top"},{activator:e.withCtx(({props:h})=>[e.createVNode(c,e.mergeProps({depressed:"",fab:"",light:"",icon:"mdi-twitter"},h,{onClick:r}),null,16)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(e.unref(n).getLabel("shareToTwitter")),1)]),_:1}),e.createVNode(d,{location:"top"},{activator:e.withCtx(({props:h})=>[e.createVNode(c,e.mergeProps({depressed:"",fab:"",light:"",icon:"mdi-email",link:"",href:`mailto:?body=${a.value}`},h),null,16,["href"])]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(e.unref(n).getLabel("shareViaEmail")),1)]),_:1}),e.createVNode(d,{location:"top"},{activator:e.withCtx(({props:h})=>[e.createVNode(c,e.mergeProps({depressed:"",fab:"",light:"",icon:"mdi-content-copy",onClick:l},h),null,16)]),default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(e.unref(n).getLabel("copyLink")),1)]),_:1}),e.createVNode(f)])]),_:1})]),_:1})]),_:1},8,["modelValue"])])}}}),[["__scopeId","data-v-b6e473f1"]]),za={class:"static-image-wrapper"},ze=$(e.defineComponent({__name:"VSingleImage",props:{image:{},aspectRatio:{default:"wide"}},setup(m){const n=m,t=e.computed(()=>({"background-image":`url("${encodeURI(n.image)}")`}));return(a,o)=>(e.openBlock(),e.createElementBlock("div",za,[e.createElementVNode("div",{class:e.normalizeClass(["img-div",[a.aspectRatio]]),style:e.normalizeStyle(t.value)},null,6)]))}}),[["__scopeId","data-v-31489804"]]),Wa={id:"btn-fullscreen",class:"btn-placeholder mr-2"},We=e.defineComponent({__name:"VFullScreenButton",props:{isFullScreen:{type:Boolean}},emits:["toggleFullscreen"],setup(m,{emit:n}){const t=n;return(a,o)=>{const r=e.resolveComponent("v-btn");return e.openBlock(),e.createElementBlock("div",Wa,[e.createVNode(r,{density:"comfortable",elevation:"3",icon:a.isFullScreen?"mdi-fullscreen-exit":"mdi-fullscreen",onClick:o[0]||(o[0]=s=>t("toggleFullscreen"))},null,8,["icon"])])}}});class Ge{constructor(n,t){j(this,"_doc");j(this,"_elemId");j(this,"_state");this._doc=n,this._elemId=t,this._state={isActive:!1}}get isActive(){return this._state.isActive}setup(){const n=["fullscreenchange","webkitfullscreenchange","mozfullscreenchange","msfullscreenchange"],t=this._getElement();n.forEach(a=>{t.addEventListener(a,this._toggle.bind(this),!1)})}toggle(){this.isActive?this._exit():this._enter()}_enter(){const n=this._getElement(),t=n.requestFullscreen||n.webkitRequestFullscreen||n.mozRequestFullscreen||n.msRequestFullscreen;t&&t.apply(n)}_exit(){const n=this._doc.exitFullscreen||this._doc.webkitExitFullscreen||this._doc.mozExitFullscreen||this._doc.document.msExitFullscreen;n&&n.apply(document)}_getElement(){return this._doc.getElementById(this._elemId)}_toggle(){const n=!!(this._doc.fullscreenElement||this._doc.webkitFullscreenElement||this._doc.mozFullscreenElement||this._doc.msFullscreenElement);this._state.isActive=n}}const Ga={class:"virtual-tour-wrapper"},Qa={key:0,class:"player-error"},qa={class:"player-and-components-wrapper"},Za={key:1,class:"v-player"},Xa={key:3,class:"settings-panel"},Ja={key:0,class:"compass-wrapper"},Ka={key:1,class:"btn-placeholder mr-2"},er={key:2,class:"btn-placeholder"},tr={key:0},Qe=$(e.defineComponent({__name:"VVirtualTour",props:{cdnFileResolver:{},apartmentId:{},defaultInteriorId:{},validInteriorIds:{default:()=>[]},displayViewModeSwitch:{type:Boolean,default:!0},websiteUrl:{},i18nConfig:{},showCarousel:{type:Boolean,default:!0},showTimeOfDay:{type:Boolean,default:!0},showCompass:{type:Boolean,default:!0},showFullScreen:{type:Boolean,default:!0},showSnapshot:{type:Boolean,default:!0},showShare:{type:Boolean,default:!0},showInteriorOptions:{type:Boolean,default:!0},showMiniMap:{type:Boolean,default:!0},showFloorLevel:{type:Boolean,default:!0},defaultWaypointIndex:{default:0},defaultViewMode:{default:"virtualTour"},mouseSensitivity:{default:1},isInIframe:{type:Boolean},adminMode:{type:Boolean,default:!1},playerSettings:{default:()=>({temperature:6500,targetLuminance:1,exposureFovScale:.3,UNREAL_BLOOM_ENABLED:!0,sharpenFilter_amount:.6,UNREAL_BLOOM_STRENGTH:.3,TRANSITION_MOVEMENT_SCALE:1.3,whitePoint:[1,1,1],lut:""})}},emits:["onSnapshot","saveSettings","onInteriorUpdate","onCameraUpdate","onError"],setup(m,{emit:n}){const t=m,a=n,o=e.ref(!1),r=e.ref(!1),s=e.ref(),l=e.ref(),u=e.ref(),i=e.ref(),c=e.ref(),d=e.ref(0),g=e.ref(),f=e.ref(),p=e.ref(),v=e.ref(0),V=e.ref(0),C=e.ref(0),h=e.ref(!1),A=e.ref(!1),k=e.ref(!1),S=e.ref(new Ge(document,"player-wrapper")),y=e.computed(()=>{if(l.value){const w=l.value.cameras.map(O=>O.floorLevel);let F=[...new Set(w)];return F=F.sort(),F}else return[]}),_=e.computed(()=>{let w=0;if(l.value){const F=l.value.cameras.map(we=>we.floorLevel);let O=[...new Set(F)];O=O.sort();const Z=O.findIndex(we=>we===V.value);Z!==-1&&(w=Z)}return w}),M=e.computed(()=>b.value.findIndex(w=>w.archetypeID===g.value)),E=e.computed(()=>u.value?u.value.cameras.map(w=>({...w,thumbnailUrl:X(`/${g.value}/${t.apartmentId}/thumbs/200/${w.id}.jpg`),imageUrl:X(`/${g.value}/${t.apartmentId}/images/1600/${w.id}.jpg`)})):[]),R=e.computed(()=>!E.value||!E.value[d.value]?"":E.value[d.value].imageUrl),b=e.computed(()=>{let w=[];return s.value&&(w=s.value.archetypes),t.validInteriorIds.length?w.filter(F=>t.validInteriorIds.includes(F.archetypeID)):w}),x=e.computed(()=>u.value?b.value.map(w=>({...w,url:X(`/${w.archetypeID}/${t.apartmentId}/thumbs/200/${E.value[d.value].id}.jpg`)})):[]),B=e.computed(()=>{if(i.value)return i.value.storeys[_.value]}),I=e.computed(()=>l.value&&l.value.timeInHours),U=e.computed(()=>{if(l.value&&l.value.timeInHours&&t.showTimeOfDay)return Cr(l.value.timeInHours)});e.provide(J,t.i18nConfig?new oe(t.i18nConfig):new oe),e.watch([()=>t.cdnFileResolver],async()=>{await N(),H(),await D()}),e.watch(()=>t.defaultViewMode,w=>{w==="virtualTour"&&(h.value=!1),w==="slideShow"&&(h.value=!0,k.value=!0)},{immediate:!0}),e.onMounted(async()=>{try{await N(),H(),await D(),S.value.setup(),Q()}catch(w){r.value=!0,a("onError",w)}});async function N(){s.value=await G()}async function D(){if(l.value=await W(g.value,t.apartmentId),l.value&&(f.value=l.value.cameras.find(()=>!0).id),u.value=await ne(g.value,t.apartmentId),u.value){let w=t.defaultWaypointIndex!==null?t.defaultWaypointIndex:0;d.value=w,f.value=u.value.cameras[w].id,p.value=u.value.cameras[w].id}t.showMiniMap&&(i.value=await re(g.value,t.apartmentId))}function H(){let w=t.defaultInteriorId;w||(w=s.value.defaultArchetypeID),t.validInteriorIds.length&&!t.validInteriorIds.includes(w)&&(w=t.validInteriorIds[0]),w||(w=s.value.archetypes[0].archetypeID),g.value=w}function Q(){const w=document.getElementById("main-canvas");w.addEventListener("touchmove",F,{passive:!1});function F(Z){Z.preventDefault(),window.scrollBy(0,0)}w.addEventListener("mouseenter",()=>{document.addEventListener("wheel",O,{passive:!1})},{passive:!1}),w.addEventListener("mouseleave",()=>{document.removeEventListener("wheel",O)},{passive:!1});function O(Z){Z.preventDefault(),window.scrollBy(0,0)}}async function G(){try{return await ye("/config.json")}catch(w){console.error("Error loading config.json - ",z(t.cdnFileResolver,"/config.json"),w);return}}async function W(w,F){try{return await ye(`/${w}/${F}/apartment.json`)}catch(O){console.error("Error loading apartment.json - ",`/${w}/${F}/apartment.json`,O);return}}async function ne(w,F){try{return await ye(`/${w}/${F}/thumbs.json`)}catch{console.error("Error loading thumbs.json - ",`/${w}/${F}/thumbs.json`);return}}async function re(w,F){try{return await ye(`/${w}/${F}/minimap/minimap.json`)}catch{console.error("Error loading minimap.json - ",`/${w}/${F}/minimap/minimap.json`);return}}function K(){let w=d.value+1;w>=E.value.length&&(w=0),d.value=w,me(E.value[d.value].id)}function ee(){let w=d.value-1;w<0&&(w=E.value.length-1),d.value=w,me(E.value[d.value].id)}function te(w,F=!0){let O=E.value.findIndex(Z=>Z.id===w);O!=-1&&(d.value=O,F&&me(w))}function me(w){f.value=w}function se(w){g.value=w,a("onInteriorUpdate",w),a("onCameraUpdate",p.value,l.value)}function xe(w){te(w,!1),p.value=w,a("onCameraUpdate",w,l.value)}function Ce(w){v.value=w}function Se(w){V.value=w}function L(w){C.value=w}function T(w,F){}function Y(w){c.value=w,t.playerSettings&&c.value.updateSettings(t.playerSettings)}function Ve(){S.value.toggle(),window.scrollTo({top:150,behavior:"smooth"})}function ue(){h.value=!h.value}async function le(){const w=180/Math.PI,F=await c.value.takePhoto(),O=c.value.getRotationEuler(),Z=c.value.getCurrentCamera(),we=new Zt(F,Z),yr=[O.x*w,O.y*w,O.z*w];return a("onSnapshot",we,yr),we}function X(w){let F=z(t.cdnFileResolver,w);return t.adminMode&&(F=F+`?v=${Date.now()}`),F}async function ye(w){const F=X(w);try{return(await ae.get(F)).data}catch(O){throw new Error(O)}}function Ze(w){c.value.updateSettings(w)}function kr(w){a("saveSettings",w)}function Cr(w){if(w===void 0)return null;const F=Math.floor(w),O=Math.floor((F-w)*60);return{hours:F,minutes:O}}return(w,F)=>{const O=e.resolveComponent("v-btn");return e.openBlock(),e.createElementBlock("div",Ga,[r.value?(e.openBlock(),e.createElementBlock("div",Qa,"Error loading the player!!")):e.createCommentVNode("",!0),e.createElementVNode("div",qa,[!S.value.isActive&&i.value&&p.value&&B.value&&g.value&&A.value?(e.openBlock(),e.createBlock(Pe,{key:0,"cdn-file-resolver":w.cdnFileResolver,"apartment-json":l.value,level:_.value,"minimap-json":i.value,rotation:v.value,"current-camera":p.value,onClose:F[0]||(F[0]=Z=>A.value=!1)},null,8,["cdn-file-resolver","apartment-json","level","minimap-json","rotation","current-camera"])):e.createCommentVNode("",!0),g.value&&f.value?(e.openBlock(),e.createElementBlock("div",Za,[e.createVNode(pn,{"cdn-file-resolver":w.cdnFileResolver,style:e.normalizeStyle({zIndex:h.value?1:2}),"show-static-image":h.value,"is-full-screen":S.value.isActive,"current-camera-id":f.value,"mouse-sensitivity":w.mouseSensitivity,"interior-id":g.value,"apartment-id":t.apartmentId,onNewCameraCallback:xe,onNewRotationCallback:Ce,onNewFloorCallback:Se,onNewFovCallback:L,onNewSizeCallback:T,onPlayerApiCallback:Y},{"slideshow-image":e.withCtx(()=>[h.value?(e.openBlock(),e.createBlock(ze,{key:0,image:R.value},null,8,["image"])):e.createCommentVNode("",!0)]),"top-left":e.withCtx(()=>[w.adminMode?e.withDirectives((e.openBlock(),e.createBlock(O,{key:0,density:"comfortable",icon:"mdi-cog-outline",elevation:"3",class:"mr-2",onClick:F[1]||(F[1]=Z=>o.value=!o.value)},null,512)),[[e.vShow,k.value]]):e.createCommentVNode("",!0),i.value&&f.value&&B.value?e.withDirectives((e.openBlock(),e.createBlock(O,{key:1,density:"comfortable",elevation:"3",icon:"mdi-floor-plan",class:"mr-2",onClick:F[2]||(F[2]=Z=>A.value=!A.value)},null,512)),[[e.vShow,k.value]]):e.createCommentVNode("",!0),k.value&&w.showFloorLevel&&y.value.length>1?(e.openBlock(),e.createBlock(kn,{key:2,level:V.value,"floor-levels":y.value,onLevel:Se},null,8,["level","floor-levels"])):e.createCommentVNode("",!0),k.value&&w.adminMode&&o.value?(e.openBlock(),e.createElementBlock("div",Xa,[e.createVNode(wa,{"initial-settings":w.playerSettings,onUpdateSettings:Ze,onSaveSettings:kr},null,8,["initial-settings"])])):e.createCommentVNode("",!0)]),"top-center":e.withCtx(()=>[k.value?(e.openBlock(),e.createBlock(je,{key:0,"return-url":w.websiteUrl},null,8,["return-url"])):e.createCommentVNode("",!0)]),"top-right":e.withCtx(()=>[l.value&&w.showCompass?e.withDirectives((e.openBlock(),e.createElementBlock("div",Ja,[e.createVNode(bn,{rotation:v.value},null,8,["rotation"])],512)),[[e.vShow,k.value]]):e.createCommentVNode("",!0),k.value&&l.value&&I.value&&w.showTimeOfDay?(e.openBlock(),e.createBlock(Sn,{key:1,hours:U.value.hours,minutes:U.value.minutes},null,8,["hours","minutes"])):e.createCommentVNode("",!0)]),"center-left":e.withCtx(()=>[e.createVNode(e.Transition,{name:"slide-x-transition"},{default:e.withCtx(()=>[h.value?(e.openBlock(),e.createBlock(O,{key:0,density:"comfortable",elevation:"3",icon:"mdi-chevron-left",onClick:ee})):e.createCommentVNode("",!0)]),_:1})]),"center-center":e.withCtx(()=>[e.createVNode(na,{project:e.unref(z)(t.cdnFileResolver,""),onCloseTutorial:F[3]||(F[3]=Z=>k.value=!0)},null,8,["project"]),S.value.isActive&&i.value&&p.value&&B.value&&A.value?(e.openBlock(),e.createBlock(Pe,{key:0,"cdn-file-resolver":w.cdnFileResolver,"apartment-json":l.value,"minimap-json":i.value,rotation:v.value,"current-camera":p.value,level:_.value,onClose:F[4]||(F[4]=Z=>A.value=!1)},null,8,["cdn-file-resolver","apartment-json","minimap-json","rotation","current-camera","level"])):e.createCommentVNode("",!0)]),"center-right":e.withCtx(()=>[e.createVNode(e.Transition,{name:"slide-x-reverse-transition"},{default:e.withCtx(()=>[h.value?(e.openBlock(),e.createBlock(O,{key:0,density:"comfortable",elevation:"3",icon:"mdi-chevron-right",onClick:K})):e.createCommentVNode("",!0)]),_:1})]),"bottom-left":e.withCtx(()=>[k.value&&w.showFullScreen?(e.openBlock(),e.createBlock(We,{key:0,"is-full-screen":S.value.isActive,class:"btn-fullscreen",onToggleFullscreen:Ve},null,8,["is-full-screen"])):e.createCommentVNode("",!0),k.value&&w.showSnapshot?(e.openBlock(),e.createElementBlock("div",Ka,[e.createVNode(O,{density:"comfortable",elevation:"3",icon:"mdi-camera",onClick:le})])):e.createCommentVNode("",!0),k.value&&w.showShare&&!S.value.isActive?(e.openBlock(),e.createElementBlock("div",er,[e.createVNode(Ye)])):e.createCommentVNode("",!0)]),"bottom-center":e.withCtx(()=>[k.value&&w.showCarousel?(e.openBlock(),e.createElementBlock("div",tr,[w.displayViewModeSwitch?(e.openBlock(),e.createBlock(Nn,{key:0,"show-static-image":h.value,onToggle:ue},null,8,["show-static-image"])):e.createCommentVNode("",!0),k.value&&S.value.isActive?(e.openBlock(),e.createBlock(Be,{key:1,class:e.normalizeClass([S.value.isActive?"full-screen":""]),thumbnails:E.value,active:d.value,onNext:K,onPrevious:ee,onGoto:te},null,8,["class","thumbnails","active"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),"bottom-right":e.withCtx(()=>[k.value&&w.showInteriorOptions&&x.value?(e.openBlock(),e.createBlock(yn,{key:0,"cdn-file-resolver":w.cdnFileResolver,"available-archetypes":x.value,"selected-index":M.value,onSelectInterior:se},null,8,["cdn-file-resolver","available-archetypes","selected-index"])):e.createCommentVNode("",!0)]),_:1},8,["cdn-file-resolver","style","show-static-image","is-full-screen","current-camera-id","mouse-sensitivity","interior-id","apartment-id"]),w.showCarousel&&u.value?(e.openBlock(),e.createBlock(Be,{key:0,class:"waypoint-carousel below-player",thumbnails:E.value,active:d.value,onNext:K,onPrevious:ee,onGoto:te},null,8,["thumbnails","active"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])])}}}),[["__scopeId","data-v-1a002566"]]),or={id:"player-wrapper"},nr={id:"player-sizer"},ar={class:"player-control",id:"controls-top-left"},rr={class:"player-control",id:"controls-top-center"},lr={class:"player-control",id:"controls-top-right"},ir={class:"player-control",id:"controls-center-left"},sr={class:"player-control",id:"controls-center-center"},cr={class:"player-control",id:"controls-center-right"},dr={class:"player-control",id:"controls-bottom-left"},mr={class:"player-control",id:"controls-bottom-center"},ur={class:"player-control",id:"controls-bottom-right"},pr=$(e.defineComponent({__name:"VManualSlideShowPlayer",props:{isFullScreen:{type:Boolean}},emits:["newSizeCallback"],setup(m,{emit:n}){const t=n;e.onMounted(()=>{window.addEventListener("resize",a),a()});function a(){let o=1.7777777777777777,r=document.querySelector("#player-sizer");if(!r)return;let s=r.offsetWidth,l=s*(1/o);(window.innerWidth<=600||s<=600)&&(l=window.innerHeight*.75,s=l*(1/o)),r.style.height=l+"px",r.style.width=s+"px",t("newSizeCallback",s,l)}return(o,r)=>(e.openBlock(),e.createElementBlock("div",or,[e.createElementVNode("div",nr,[e.renderSlot(o.$slots,"slideshow-image",{},void 0,!0),e.createElementVNode("div",ar,[e.renderSlot(o.$slots,"top-left",{},void 0,!0)]),e.createElementVNode("div",rr,[e.renderSlot(o.$slots,"top-center",{},void 0,!0)]),e.createElementVNode("div",lr,[e.renderSlot(o.$slots,"top-right",{},void 0,!0)]),e.createElementVNode("div",ir,[e.renderSlot(o.$slots,"center-left",{},void 0,!0)]),e.createElementVNode("div",sr,[e.renderSlot(o.$slots,"center-center",{},void 0,!0)]),e.createElementVNode("div",cr,[e.renderSlot(o.$slots,"center-right",{},void 0,!0)]),e.createElementVNode("div",dr,[e.renderSlot(o.$slots,"bottom-left",{},void 0,!0)]),e.createElementVNode("div",mr,[e.renderSlot(o.$slots,"bottom-center",{},void 0,!0)]),e.createElementVNode("div",ur,[e.renderSlot(o.$slots,"bottom-right",{},void 0,!0)])])]))}}),[["__scopeId","data-v-08ae2306"]]),fr={class:"virtual-tour-wrapper"},hr={class:"player-and-components-wrapper"},gr={key:1,class:"btn-placeholder"},qe=$(e.defineComponent({__name:"VManualSlideShow",props:{images:{},websiteUrl:{},i18nConfig:{},showFullScreen:{type:Boolean,default:!0},showShare:{type:Boolean,default:!0},defaultWaypointIndex:{default:0}},setup(m){const n=m;e.provide(J,n.i18nConfig?new oe(n.i18nConfig):new oe);const t=e.ref(0),a=e.ref(new Ge(document,"player-wrapper")),o=e.computed(()=>n.images.map((c,d)=>({id:`image-${d}`,thumbnailUrl:c}))),r=e.computed(()=>o.value[t.value]);e.onMounted(()=>{a.value.setup()});function s(){a.value.toggle(),window.scrollTo({top:150,behavior:"smooth"})}function l(){let c=t.value+1;c>=o.value.length&&(c=0),t.value=c}function u(){let c=t.value-1;c<0&&(c=o.value.length-1),t.value=c}function i(c,d=!0){let g=o.value.findIndex(f=>f.id===c);g!=-1&&(t.value=g)}return(c,d)=>{const g=e.resolveComponent("v-btn");return e.openBlock(),e.createElementBlock("div",fr,[e.createElementVNode("div",hr,[e.createElementVNode("div",null,[e.createVNode(pr,{"is-full-screen":a.value.isActive},{"slideshow-image":e.withCtx(()=>[e.createVNode(ze,{image:r.value.thumbnailUrl},null,8,["image"])]),"top-left":e.withCtx(()=>[]),"top-center":e.withCtx(()=>[e.createVNode(je,{"return-url":c.websiteUrl},null,8,["return-url"])]),"top-right":e.withCtx(()=>[]),"center-left":e.withCtx(()=>[e.createVNode(e.Transition,{name:"slide-x-transition"},{default:e.withCtx(()=>[e.createVNode(g,{density:"comfortable",elevation:"3",icon:"mdi-chevron-left",onClick:u})]),_:1})]),"center-center":e.withCtx(()=>[]),"center-right":e.withCtx(()=>[e.createVNode(e.Transition,{name:"slide-x-reverse-transition"},{default:e.withCtx(()=>[e.createVNode(g,{density:"comfortable",elevation:"3",icon:"mdi-chevron-right",onClick:l})]),_:1})]),"bottom-left":e.withCtx(()=>[c.showFullScreen?(e.openBlock(),e.createBlock(We,{key:0,"is-full-screen":a.value.isActive,class:"btn-fullscreen",onToggleFullscreen:s},null,8,["is-full-screen"])):e.createCommentVNode("",!0),c.showShare?(e.openBlock(),e.createElementBlock("div",gr,[e.createVNode(Ye)])):e.createCommentVNode("",!0)]),"bottom-center":e.withCtx(()=>[e.createElementVNode("div",null,[a.value.isActive?(e.openBlock(),e.createBlock(Be,{key:0,class:e.normalizeClass([a.value.isActive?"full-screen":""]),thumbnails:o.value,active:t.value,onNext:l,onPrevious:u,onGoto:i},null,8,["class","thumbnails","active"])):e.createCommentVNode("",!0)])]),"bottom-right":e.withCtx(()=>[]),_:1},8,["is-full-screen"]),o.value.length>1?(e.openBlock(),e.createBlock(Be,{key:0,thumbnails:o.value,active:t.value,onNext:l,onPrevious:u,onGoto:i},null,8,["thumbnails","active"])):e.createCommentVNode("",!0)])])])}}}),[["__scopeId","data-v-5ed51b8b"]]),vr={install:function(n){n.component("VApartmentChooser",Me),n.component("VBuildingChooser",He),n.component("VVirtualTour",Qe),n.component("VManualSlideShow",qe)}};P.ResourceLoader=q,P.VApartmentChooser=Me,P.VApartmentChooserV5=ro,P.VBuildingChooser=He,P.VBuildingChooserV5=Wo,P.VFloatingCard=pe,P.VHoverProbe=ie,P.VManualSlideShow=qe,P.VNorthDirection=he,P.VVirtualTour=Qe,P.VZoomBox=fe,P.default=vr,Object.defineProperties(P,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|