1"use strict";(self.webpackChunkwebplatform=self.webpackChunkwebplatform||[]).push([[618],{12086:(e,t,i)=>{i.d(t,{UU:()=>b,k5:()=>g});var s=i(89379),n=i(80045),o=i(9950);const r=["data","style","shouldExpandNode","clickToExpandNode","beforeExpandChange"],a=e=>!!e&&e instanceof Date,c=e=>!!e&&e instanceof Object&&"function"===typeof e;function l(e,t){return void 0===t&&(t=!1),!e||t?'"'.concat(e,'"'):e}function h(e){let{field:t,value:i,data:s,lastElement:n,openBracket:r,closeBracket:a,level:c,style:h,shouldExpandNode:d,clickToExpandNode:u,outerRef:p,beforeExpandChange:m}=e;const f=(0,o.useRef)(!1),[w,g]=(0,o.useState)((()=>d(c,i,t))),y=(0,o.useRef)(null);(0,o.useEffect)((()=>{f.current?g(d(c,i,t)):f.current=!0}),[d]);const b=(0,o.useId)();if(0===s.length)return function(e){let{field:t,openBracket:i,closeBracket:s,lastElement:n,style:r}=e;return(0,o.createElement)("div",{className:r.basicChildStyle,role:"treeitem","aria-selected":void 0},(t||""===t)&&(0,o.createElement)("span",{className:r.label},l(t,r.quotesForFieldNames),":"),(0,o.createElement)("span",{className:r.punctuation},i),(0,o.createElement)("span",{className:r.punctuation},s),!n&&(0,o.createElement)("span",{className:r.punctuation},","))}({field:t,openBracket:r,closeBracket:a,lastElement:n,style:h});const E=w?h.collapseIcon:h.expandIcon,_=w?h.ariaLables.collapseJson:h.ariaLables.expandJson,x=c+1,C=s.length-1,T=e=>{w===e||m&&!m({level:c,value:i,field:t,newExpandValue:e})||g(e)},M=e=>{if("ArrowRight"===e.key||"ArrowLeft"===e.key)e.preventDefault(),T("ArrowRight"===e.key);else if("ArrowUp"===e.key||"ArrowDown"===e.key){e.preventDefault();const t="ArrowUp"===e.key?-1:1;if(!p.current)return;const i=p.current.querySelectorAll("[role=button]");let s=-1;for(let e=0;e<i.length;e++)if(0===i[e].tabIndex){s=e;break}if(s<0)return;const n=(s+t+i.length)%i.length;i[s].tabIndex=-1,i[n].tabIndex=0,i[n].focus()}},L=()=>{var e;T(!w);const t=y.current;if(!t)return;const i=null===(e=p.current)||void 0===e?void 0:e.querySelector('[role=button][tabindex="0"]');i&&(i.tabIndex=-1),t.tabIndex=0,t.focus()};return(0,o.createElement)("div",{className:h.basicChildStyle,role:"treeitem","aria-expanded":w,"aria-selected":void 0},(0,o.createElement)("span",{className:E,onClick:L,onKeyDown:M,role:"button","aria-label":_,"aria-expanded":w,"aria-controls":w?b:void 0,ref:y,tabIndex:0===c?0:-1}),(t||""===t)&&(u?(0,o.createElement)("span",{className:h.clickableLabel,onClick:L,onKeyDown:M},l(t,h.quotesForFieldNames),":"):(0,o.createElement)("span",{className:h.label},l(t,h.quotesForFieldNames),":")),(0,o.createElement)("span",{className:h.punctuation},r),w?(0,o.createElement)("ul",{id:b,role:"group",className:h.childFieldsContainer},s.map(((e,t)=>(0,o.createElement)(v,{key:e[0]||t,field:e[0],value:e[1],style:h,lastElement:t===C,level:x,shouldExpandNode:d,clickToExpandNode:u,outerRef:p})))):(0,o.createElement)("span",{className:h.collapsedContent,onClick:L,onKeyDown:M}),(0,o.createElement)("span",{className:h.punctuation},a),!n&&(0,o.createElement)("span",{className:h.punctuation},","))}function d(e){let{field:t,value:i,style:s,lastElement:n,shouldExpandNode:o,clickToExpandNode:r,level:a,outerRef:c,beforeExpandChange:l}=e;return h({field:t,value:i,lastElement:n||!1,level:a,openBracket:"{",closeBracket:"}",style:s,shouldExpandNode:o,clickToExpandNode:r,data:Object.keys(i).map((e=>[e,i[e]])),outerRef:c,beforeExpandChange:l})}function u(e){let{field:t,value:i,style:s,lastElement:n,level:o,shouldExpandNode:r,clickToExpandNode:a,outerRef:c,beforeExpandChange:l}=e;return h({field:t,value:i,lastElement:n||!1,level:o,openBracket:"[",closeBracket:"]",style:s,shouldExpandNode:r,clickToExpandNode:a,data:i.map((e=>[void 0,e])),outerRef:c,beforeExpandChange:l})}function p(e){let t,{field:i,value:s,style:n,lastElement:r}=e,h=n.otherValue;var d;return null===s?(t="null",h=n.nullValue):void 0===s?(t="undefined",h=n.undefinedValue):"string"===typeof(d=s)||d instanceof String?(t=function(e,t,i){return i?JSON.stringify(e):t?'"'.concat(e,'"'):e}(s,!n.noQuotesForStringValues,n.stringifyStringValues),h=n.stringValue):(e=>"boolean"===typeof e||e instanceof Boolean)(s)?(t=s?"true":"false",h=n.booleanValue):(e=>"number"===typeof e||e instanceof Number)(s)?(t=s.toString(),h=n.numberValue):(e=>"bigint"===typeof e||e instanceof BigInt)(s)?(t="".concat(s.toString(),"n"),h=n.numberValue):t=a(s)?s.toISOString():c(s)?"function() { }":s.toString(),(0,o.createElement)("div",{className:n.basicChildStyle,role:"treeitem","aria-selected":void 0},(i||""===i)&&(0,o.createElement)("span",{className:n.label},l(i,n.quotesForFieldNames),":"),(0,o.createElement)("span",{className:h},t),!r&&(0,o.createElement)("span",{className:n.punctuation},","))}function v(e){const t=e.value;return i=t,Array.isArray(i)?(0,o.createElement)(u,Object.assign({},e)):!(e=>"object"===typeof e&&null!==e)(t)||a(t)||c(t)?(0,o.createElement)(p,Object.assign({},e)):(0,o.createElement)(d,Object.assign({},e));var i}var m="_2bkNM",f="_1BXBN";const w={collapseJson:"collapse JSON",expandJson:"expand JSON"},g={container:"_2IvMF _GzYRV",basicChildStyle:m,childFieldsContainer:f,label:"_1MGIk",clickableLabel:"_2YKJg _1MGIk _1MFti",nullValue:"_2T6PJ",undefinedValue:"_1Gho6",stringValue:"_vGjyY",booleanValue:"_3zQKs",numberValue:"_1bQdo",otherValue:"_1xvuR",punctuation:"_3uHL6 _3eOF8",collapseIcon:"_oLqym _f10Tu _1MFti _1LId0",expandIcon:"_2AXVT _f10Tu _1MFti _1UmXx",collapsedContent:"_2KJWg _1pNG9 _1MFti",noQuotesForStringValues:!1,quotesForFieldNames:!1,ariaLables:w,stringifyStringValues:!1},y=()=>!0,b=e=>{let{data:t,style:i=g,shouldExpandNode:a=y,clickToExpandNode:c=!1,beforeE
1xpandChange:l}=e,h=(0,n.A)(e,r);const d=(0,o.useRef)(null);return(0,o.createElement)("div",Object.assign({"aria-label":"JSON view"},h,{className:i.container,ref:d,role:"tree"}),(0,o.createElement)(v,{value:t,style:(0,s.A)((0,s.A)({},g),i),lastElement:!0,level:0,shouldExpandNode:a,clickToExpandNode:c,outerRef:d,beforeExpandChange:l}))}},33881:(e,t,i)=>{function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,s=Array(t);i<t;i++)s[i]=e[i];return s}function n(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,t);if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function o(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,s)}return i}function r(e){for(var t=1;t<arguments.length;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?o(Object(i),!0).forEach((function(t){n(e,t,i[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):o(Object(i)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))}))}return e}function a(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var i=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=i){var s,n,o,r,a=[],c=!0,l=!1;try{if(o=(i=i.call(e)).next,0===t){if(Object(i)!==i)return;c=!1}else for(;!(c=(s=o.call(i)).done)&&(a.push(s.value),a.length!==t);c=!0);}catch(e){l=!0,n=e}finally{try{if(!c&&null!=i.return&&(r=i.return(),Object(r)!==r))return}finally{if(l)throw n}}return a}}(e,t)||function(e,t){if(e){if("string"==typeof e)return s(e,t);var i={}.toString.call(e).slice(8,-1);return"Object"===i&&e.constructor&&(i=e.constructor.name),"Map"===i||"Set"===i?Array.from(e):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?s(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(e){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c(e)}i.d(t,{d:()=>hs});var l=i(9950),h=i(89379),d=i(97226),u=i(13437),p=Object.defineProperty,v=(e,t)=>{for(var i in t)p(e,i,{get:t[i],enumerable:!0})};v({},{ACTIONS:()=>T,ANIMATION_MIN_DURATION:()=>f,CAPTURE_EVENTS_CLASS:()=>C,CTRLZOOM_TIMEOUT:()=>E,DBLCLICK_DELAY:()=>g,EASINGS:()=>k,ICONS:()=>O,IDS:()=>M,KEY_CODES:()=>L,LONGTOUCH_DELAY:()=>y,MOVE_THRESHOLD:()=>w,SPHERE_RADIUS:()=>_,TWOFINGERSOVERLAY_DELAY:()=>b,VIEWER_DATA:()=>x});var m,f=500,w=4,g=300,y=500,b=100,E=2e3,_=10,x="photoSphereViewer",C="psv--capture-event",T=(e=>(e.ROTATE_UP="ROTATE_UP",e.ROTATE_DOWN="ROTATE_DOWN",e.ROTATE_RIGHT="ROTATE_RIGHT",e.ROTATE_LEFT="ROTATE_LEFT",e.ZOOM_IN="ZOOM_IN",e.ZOOM_OUT="ZOOM_OUT",e))(T||{}),M={MENU:"menu",TWO_FINGERS:"twoFingers",CTRL_ZOOM:"ctrlZoom",ERROR:"error",DESCRIPTION:"description"},L={Enter:"Enter",Control:"Control",Escape:"Escape",Space:" ",PageUp:"PageUp",PageDown:"PageDown",ArrowLeft:"ArrowLeft",ArrowUp:"ArrowUp",ArrowRight:"ArrowRight",ArrowDown:"ArrowDown",Delete:"Delete",Plus:"+",Minus:"-"},O={arrow:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="40 40 432 432"><g transform="rotate(0, 256, 256)"><path fill="currentColor" d="M425.23 210.55H227.39a5 5 0 01-3.53-8.53l56.56-56.57a45.5 45.5 0 000-64.28 45.15 45.15 0 00-32.13-13.3 45.15 45.15 0 00-32.14 13.3L41.32 256l174.83 174.83a45.15 45.15 0 0032.14 13.3 45.15 45.15 0 0032.13-13.3 45.5 45.5 0 000-64.28l-56.57-56.57a5 5 0 013.54-8.53h197.84c25.06 0 45.45-20.39 45.45-45.45s-20.4-45.45-45.45-45.45z"/></g>\x3c!-- Created by Flatart from the Noun Project --\x3e</svg>\n',close:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><g fill="currentColor" transform=" translate(50, 50) rotate(45)"><rect x="-5" y="-65" width="10" height="130"/><rect x="-65" y="-5" width="130" height="10"/></g></svg>',download:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
1<path fill="currentColor" d="M83.3 35.6h-17V3H32.2v32.6H16.6l33.6 32.7 33-32.7z"/><path fill="currentColor" d="M83.3 64.2v16.3H16.6V64.2H-.1v32.6H100V64.2H83.3z"/>\x3c!--Created by Michael Zenaty from the Noun Project--\x3e</svg>\n',fullscreenIn:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path fill="currentColor" d="M100 40H87.1V18.8h-21V6H100zM100 93.2H66V80.3h21.1v-21H100zM34 93.2H0v-34h12.9v21.1h21zM12.9 40H0V6h34v12.9H12.8z"/>\x3c!--Created by Garrett Knoll from the Noun Project--\x3e</svg>\n',fullscreenOut:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path fill="currentColor" d="M66 7h13v21h21v13H66zM66 60.3h34v12.9H79v21H66zM0 60.3h34v34H21V73.1H0zM21 7h13v34H0V28h21z"/>\x3c!--Created by Garrett Knoll from the Noun Project--\x3e</svg>\n',info:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="currentColor" d="M28.3 26.1c-1 2.6-1.9 4.8-2.6 7-2.5 7.4-5 14.7-7.2 22-1.3 4.4.5 7.2 4.3 7.8 1.3.2 2.8.2 4.2-.1 8.2-2 11.9-8.6 15.7-15.2l-2.2 2a18.8 18.8 0 0 1-7.4 5.2 2 2 0 0 1-1.6-.2c-.2-.1 0-1 0-1.4l.8-1.8L41.9 28c.5-1.4.9-3 .7-4.4-.2-2.6-3-4.4-6.3-4.4-8.8.2-15 4.5-19.5 11.8-.2.3-.2.6-.3 1.3 3.7-2.8 6.8-6.1 11.8-6.2z"/><circle fill="currentColor" cx="39.3" cy="9.2" r="8.2"/>\x3c!--Created by Arafat Uddin from the Noun Project--\x3e</svg>\n',menu:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="10 10 80 80"><g fill="currentColor"><circle r="10" cx="20" cy="20"/><circle r="10" cx="50" cy="20"/><circle r="10" cx="80" cy="20"/><circle r="10" cx="20" cy="50"/><circle r="10" cx="50" cy="50"/><circle r="10" cx="80" cy="50"/><circle r="10" cx="20" cy="80"/><circle r="10" cx="50" cy="80"/><circle r="10" cx="80" cy="80"/></g>\x3c!-- Created by Richard Kun\xe1k from the Noun Project--\x3e</svg>\n',zoomIn:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill="currentColor" d="M14.043 12.22a7.738 7.738 0 1 0-1.823 1.822l4.985 4.985c.503.504 1.32.504 1.822 0a1.285 1.285 0 0 0 0-1.822l-4.984-4.985zm-6.305 1.043a5.527 5.527 0 1 1 0-11.053 5.527 5.527 0 0 1 0 11.053z"/><path fill="currentColor" d="M8.728 4.009H6.744v2.737H4.006V8.73h2.738v2.736h1.984V8.73h2.737V6.746H8.728z"/>\x3c!--Created by Ryan Canning from the Noun Project--\x3e</svg>\n',zoomOut:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill="currentColor" d="M14.043 12.22a7.738 7.738 0 1 0-1.823 1.822l4.985 4.985c.503.504 1.32.504 1.822 0a1.285 1.285 0 0 0 0-1.822l-4.984-4.985zm-6.305 1.043a5.527 5.527 0 1 1 0-11.053 5.527 5.527 0 0 1 0 11.053z"/><path fill="currentColor" d="M4.006 6.746h7.459V8.73H4.006z"/>\x3c!--Created by Ryan Canning from the Noun Project--\x3e</svg>\n'},k={linear:e=>e,inQuad:e=>e*e,outQuad:e=>e*(2-e),inOutQuad:e=>e<.5?2*e*e:(4-2*e)*e-1,inCubic:e=>e*e*e,outCubic:e=>--e*e*e+1,inOutCubic:e=>e<.5?4*e*e*e:(e-1)*(2*e-2)*(2*e-2)+1,inQuart:e=>e*e*e*e,outQuart:e=>1- --e*e*e*e,inOutQuart:e=>e<.5?8*e*e*e*e:1-8*--e*e*e*e,inQuint:e=>e*e*e*e*e,outQuint:e=>1+--e*e*e*e*e,inOutQuint:e=>e<.5?16*e*e*e*e*e:1+16*--e*e*e*e*e,inSine:e=>1-Math.cos(e*(Math.PI/2)),outSine:e=>Math.sin(e*(Math.PI/2)),inOutSine:e=>.5-.5*Math.cos(Math.PI*e),inExpo:e=>Math.pow(2,10*(e-1)),outExpo:e=>1-Math.pow(2,-10*e),inOutExpo:e=>(e=2*e-1)<0?.5*Math.pow(2,10*e):1-.5*Math.pow(2,-10*e),inCirc:e=>1-Math.sqrt(1-e*e),outCirc:e=>Math.sqrt(1-(e-1)*(e-1)),inOutCirc:e=>(e*=2)<1?.5-.5*Math.sqrt(1-e*e):.5+.5*Math.sqrt(1-(e-=2)*e)};function P(e,t){let i=e%t;return i<0&&(i+=t),i}function I(e){return e.reduce(((e,t)=>e+t),0)}function S(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function z(e,t){return Math.atan2(t.y-e.y,t.x-e.x)}function N(e,t){return[0,2*Math.PI,2*-Math.PI].reduce(((i,s)=>{const n=t-e+s;return Math.abs(n)<Math.abs(i)?n:i}),1/0)}function A(e,t){return Math.acos(Math.cos(e.pitch)*Math.cos(t.pitch)*Math.cos(e.yaw-t.yaw)+Math.sin(e.pitch)*Math.sin(t.pitch))}function D(e,t){let[i,s]=e,[n,o]=t;i-n>Math.PI?i-=2*Math.PI:i-n<-Math.PI&&(i+=2*Math.PI);const r=(n-i)*Math.cos((s+o)/2),a=o-s;return Math.sqrt(r*r+a*a)}function j(e){return"string"===typeof e?e.match(/^[a-z]/i)?document.getElementById(e):document.querySelector(e):e}function H(e,t,i){void 0===i?e.classList.toggle(t):i?e.classList.add(t):i||e.classList.remove(t)}function R(e,t){e.classList.add(...t.split(" ").filter((e=>!!e)))}function F(e,t){e.classList.remove(...t.split(" ").filter((e=>!!e)))}function V(e,t){let i=e;do{if(i===t)return!0;
1i=i.parentElement}while(i);return!1}function U(e,t){if(null===e||void 0===e||!e.matches)return null;let i=e;do{if(i.matches(t))return i;i=i.parentElement}while(i);return null}function W(e){return(null===e||void 0===e?void 0:e.composedPath()[0])||null}function Y(e,t){return e?e.composedPath().find((e=>(e instanceof HTMLElement||e instanceof SVGElement)&&e.matches(t))):null}function Z(e){let t=0,i=0,s=e;for(;s;)t+=s.offsetLeft-s.scrollLeft+s.clientLeft,i+=s.offsetTop-s.scrollTop+s.clientTop,s=s.offsetParent;return t-=window.scrollX,i-=window.scrollY,{x:t,y:i}}function B(e,t){return window.getComputedStyle(e).getPropertyValue(t)}function X(e){if(e.touches.length<2)return null;const t={x:e.touches[0].clientX,y:e.touches[0].clientY},i={x:e.touches[1].clientX,y:e.touches[1].clientY};return{distance:S(t,i),angle:z(t,i),center:{x:(t.x+i.x)/2,y:(t.y+i.y)/2}}}function K(e){return arguments.length>1&&void 0!==arguments[1]&&arguments[1]?e===m:document.fullscreenElement===e}function q(e){arguments.length>1&&void 0!==arguments[1]&&arguments[1]?(m=e,e.classList.add("psv-fullscreen-emulation"),document.dispatchEvent(new Event("fullscreenchange"))):e.requestFullscreen()}function G(){arguments.length>0&&void 0!==arguments[0]&&arguments[0]?(m.classList.remove("psv-fullscreen-emulation"),m=null,document.dispatchEvent(new Event("fullscreenchange"))):document.exitFullscreen()}function $(e){return e.replace(/[A-Z](?:(?=[^A-Z])|[A-Z]*(?=[A-Z][^A-Z]|$))/g,((e,t)=>(t>0?"-":"")+e.toLowerCase()))}function J(e,t){let i=!1;return function(){for(var s=arguments.length,n=new Array(s),o=0;o<s;o++)n[o]=arguments[o];i||(i=!0,setTimeout((()=>{e.apply(this,n),i=!1}),t))}}function Q(e){if("object"!==typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;if(null===Object.getPrototypeOf(e))return!0;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function ee(e,t){const i=t;return function e(t,s){return Array.isArray(s)?(t&&Array.isArray(t)?t.length=0:t=[],s.forEach(((i,s)=>{t[s]=e(null,i)}))):"object"===typeof s?(t&&!Array.isArray(t)||(t={}),Object.keys(s).forEach((n=>{"__proto__"!==n&&("object"===typeof s[n]&&s[n]&&Q(s[n])?s[n]!==i&&(t[n]?e(t[n],s[n]):t[n]=e(null,s[n])):t[n]=s[n])}))):t=s,t}(e,t)}function te(e){return ee(null,e)}function ie(e){return!e||0===Object.keys(e).length&&e.constructor===Object}function se(e){return null===e||void 0===e}function ne(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];for(const s of t)if(!se(s))return s;return null}function oe(e,t){if(e===t)return!0;if(re(e)&&re(t)){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const i of Object.keys(e))if(!oe(e[i],t[i]))return!1;return!0}return!1}function re(e){return"object"===typeof e&&null!==e}v({},{Animation:()=>Ne,Dynamic:()=>Ae,MultiDynamic:()=>De,PressHandler:()=>je,Slider:()=>Re,SliderDirection:()=>He,addClasses:()=>R,angle:()=>z,applyEulerInverse:()=>Oe,checkClosedShadowDom:()=>Se,checkStylesheet:()=>Pe,checkVersion:()=>Ie,cleanCssPosition:()=>Ee,clone:()=>te,createTexture:()=>Me,cssPositionIsOrdered:()=>_e,dasherize:()=>$,deepEqual:()=>oe,deepmerge:()=>ee,distance:()=>S,exitFullscreen:()=>G,firstNonNull:()=>ne,getAbortError:()=>he,getAngle:()=>A,getClosest:()=>U,getConfigParser:()=>ke,getElement:()=>j,getEventTarget:()=>W,getMatchingTarget:()=>Y,getPosition:()=>Z,getShortestArc:()=>N,getStyleProperty:()=>B,getTouchData:()=>X,getXMPValue:()=>ve,greatArcDistance:()=>D,hasParent:()=>V,invertResolvableBoolean:()=>le,isAbortError:()=>de,isEmpty:()=>ie,isExtendedPosition:()=>pe,isFullscreenEnabled:()=>K,isNil:()=>se,isPlainObject:()=>Q,logWarn:()=>ue,mergePanoData:()=>ze,parseAngle:()=>Te,parsePoint:()=>be,parseSpeed:()=>xe,removeClasses:()=>F,requestFullscreen:()=>q,resolveBoolean:()=>ce,speedToDuration:()=>Ce,sum:()=>I,throttle:()=>J,toggleClass:()=>H,wrap:()=>P});var ae=class e extends Error{constructor(t,i){var s;super(i&&i instanceof Error?"".concat(t,": ").concat(i.message):t),this.name="PSVError",null===(s=Error.captureStackTrace)||void 0===s||s.call(Error,this,e)}};function ce(e,t){Q(e)?(t(e.initial,!0),e.promise.then((e=>t(e,!1)))):t(e,!0)}function le(e){return{initial:!e.initial,promise:e.promise.then((e=>!e))}}function he(){const e=new Error("Loading was aborted.");return e.name="AbortError",e}function de(e){return"AbortError"===(null===e||void 0===e?void 0:e.name)}function ue(e){}function pe(e){return!(!e||Array.isArray(e))&&[["textureX","textureY"],["yaw","pitch"]].some((t=>{let[i,s]=t;return void 0!==e[i]&&void 0!==e[s]}))}function ve(e,t){let i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],s=e.match("<GPano:"+t+">(.*)</GPano:"+t+">");
1if(null!==s){const e=i?parseInt(s[1],10):parseFloat(s[1]);return isNaN(e)?null:e}if(s=e.match("GPano:"+t+'="(.*?)"'),null!==s){const e=i?parseInt(s[1],10):parseFloat(s[1]);return isNaN(e)?null:e}return null}var me={top:"0%",bottom:"100%",left:"0%",right:"100%",center:"50%"},fe=["left","center","right"],we=["top","center","bottom"],ge=[...fe,...we],ye="center";function be(e){if(!e)return{x:.5,y:.5};if("object"===typeof e)return e;let t=e.toLocaleLowerCase().split(" ").slice(0,2);1===t.length&&(t=me[t[0]]?[t[0],ye]:[t[0],t[0]]);const i="left"!==t[1]&&"right"!==t[1]&&"top"!==t[0]&&"bottom"!==t[0];t=t.map((e=>me[e]||e)),i||t.reverse();const s=t.join(" ").match(/^([0-9.]+)% ([0-9.]+)%$/);return s?{x:parseFloat(s[1])/100,y:parseFloat(s[2])/100}:{x:.5,y:.5}}function Ee(e){let{allowCenter:t,cssOrder:i}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{allowCenter:!0,cssOrder:!0};return e?("string"===typeof e&&(e=e.split(" ")),1===e.length&&(e[0]===ye?e=[ye,ye]:-1!==fe.indexOf(e[0])?e=[ye,e[0]]:-1!==we.indexOf(e[0])&&(e=[e[0],ye])),2!==e.length||-1===ge.indexOf(e[0])||-1===ge.indexOf(e[1])?("Unparsable position ".concat(e),null):t||e[0]!==ye||e[1]!==ye?(i&&!_e(e)&&(e=[e[1],e[0]]),e[1]===ye&&-1!==fe.indexOf(e[0])&&(e=[ye,e[0]]),e[0]===ye&&-1!==we.indexOf(e[1])&&(e=[e[1],ye]),e):null):null}function _e(e){return-1!==we.indexOf(e[0])&&-1!==fe.indexOf(e[1])}function xe(e){let t;if("string"===typeof e){const i=e.toString().trim();let s=parseFloat(i.replace(/^(-?[0-9]+(?:\.[0-9]*)?).*$/,"$1"));const n=i.replace(/^-?[0-9]+(?:\.[0-9]*)?(.*)$/,"$1").trim();switch(n.match(/(pm|per minute)$/)&&(s/=60),n){case"dpm":case"degrees per minute":case"dps":case"degrees per second":t=d.cj9.degToRad(s);break;case"rdpm":case"radians per minute":case"rdps":case"radians per second":t=s;break;case"rpm":case"revolutions per minute":case"rps":case"revolutions per second":t=s*Math.PI*2;break;default:throw new ae('Unknown speed unit "'.concat(n,'"'))}}else t=e;return t}function Ce(e,t){if("number"!==typeof e){const i=xe(e);return t/Math.abs(i)*1e3}return Math.abs(e)}function Te(e){let t,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i;if("string"===typeof e){const i=e.toLowerCase().trim().match(/^(-?[0-9]+(?:\.[0-9]*)?)(.*)$/);if(!i)throw new ae('Unknown angle "'.concat(e,'"'));const s=parseFloat(i[1]),n=i[2];if(n)switch(n){case"deg":case"degs":t=d.cj9.degToRad(s);break;case"rad":case"rads":t=s;break;default:throw new ae('Unknown angle unit "'.concat(n,'"'))}else t=s}else{if("number"!==typeof e||isNaN(e))throw new ae('Unknown angle "'.concat(e,'"'));t=e}return t=P(i?t+Math.PI:t,2*Math.PI),i?d.cj9.clamp(t-Math.PI,-Math.PI/(s?2:1),Math.PI/(s?2:1)):t}function Me(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const i=new d.gPd(e);return i.needsUpdate=!0,i.minFilter=t?d.$_I:d.k6q,i.generateMipmaps=t,i.anisotropy=t?2:1,i}var Le=new d.PTz;function Oe(e,t){Le.setFromEuler(t).invert(),e.applyQuaternion(Le)}function ke(e,t){const i=function(i){const s=te((0,h.A)((0,h.A)({},e),i)),n={};for(let[o,r]of Object.entries(s)){if(t&&o in t)r=t[o](r,{rawConfig:s,defValue:e[o]});else if(!(o in e)){"Unknown option ".concat(o);continue}n[o]=r}return n};return i.defaults=e,i.parsers=t||{},i}function Pe(e,t){B(e,"--psv-".concat(t,"-loaded"))}function Ie(e,t,i){}function Se(e){do{if(e instanceof ShadowRoot&&"closed"===e.mode)return;e=e.parentNode}while(e)}function ze(e,t,i,s){const n={isEquirectangular:!0,fullWidth:ne(null===i||void 0===i?void 0:i.fullWidth,null===s||void 0===s?void 0:s.fullWidth),fullHeight:ne(null===i||void 0===i?void 0:i.fullHeight,null===s||void 0===s?void 0:s.fullHeight),croppedWidth:e,croppedHeight:t,croppedX:ne(null===i||void 0===i?void 0:i.croppedX,null===s||void 0===s?void 0:s.croppedX),croppedY:ne(null===i||void 0===i?void 0:i.croppedY,null===s||void 0===s?void 0:s.croppedY),poseHeading:ne(null===i||void 0===i?void 0:i.poseHeading,null===s||void 0===s?void 0:s.poseHeading,0),posePitch:ne(null===i||void 0===i?void 0:i.posePitch,null===s||void 0===s?void 0:s.posePitch,0),poseRoll:ne(null===i||void 0===i?void 0:i.poseRoll,null===s||void 0===s?void 0:s.poseRoll,0),initialHeading:null===s||void 0===s?void 0:s.initialHeading,initialPitch:null===s||void 0===s?void 0:s.initialPitch,initialFov:null===s||void 0===s?void 0:s.initialFov};return n.fullWidth||n.fullHeight||(n.fullWidth=Math.max(e,2*t),n.fullHeight=Math.round(n.fullWidth/2)),n.fullWidth||(n.fullWidth=2*n.fullHeight),n.fullHeight||(n.fullHeight=Math.round(n.fullWidth/2)),null===n.croppedX&&(n.croppedX=Math.round((n.fullWidth-e)/2)),null===n.croppedY&&(n.croppedY=Math.round((n.fullHeight-t)/2)),Math.abs(n.fullWidth-2*n.fullHeight)>1&&(n.fullHeight=Math.round(n.fullWidth/2)),n.croppedX+n.croppedWidth>n.fullWidth&&(n.croppedX=n.fullWidth-n.croppedWidth),n.croppedY+n.croppedHeight>n.fullHeight&&(n.croppedY=n.fullHeight-n.croppedHeight),n.croppedX<0&&(n.croppedX=0),n.croppedY<0&&(n.croppedY=0),n}var Ne=class{constructor(e){this.easing=k.linear,this.callbacks=[],this.resolved=!1,this.cancelled=!1,this.options=e,e?(e.easing&&(this.easing="function"===typeof e.easing?e.easing:k[e.easing]||k.linear),this.delayTimeout=setTimeout((()=>{this.delayTimeout=void 0,this.animationFrame=window.requestAnimationFrame((e=>this.__run(e)))}),e.delay||0)):this.resolved=!0}__run(e){if(this.cancelled)return;this.start||(this.start=e);const t=(e-this.start)/this.options.duration,i={};if(t<1){for(const[e,s]of Object.entries(this.options.properties))if(s){const n=s.start+(s.end-s.start)*this.easing(t);i[e]=n}
vendor: 7,540 bytes, line 1
1this.options.onTick(i,t),this.animationFrame=window.requestAnimationFrame((e=>this.__run(e)))}else{for(const[e,t]of Object.entries(this.options.properties))t&&(i[e]=t.end);this.options.onTick(i,1),this.__resolve(!0),this.animationFrame=void 0}}__resolve(e){e?this.resolved=!0:this.cancelled=!0,this.callbacks.forEach((t=>t(e))),this.callbacks.length=0}then(e){return this.resolved||this.cancelled?Promise.resolve(this.resolved).then(e):new Promise((e=>{this.callbacks.push(e)})).then(e)}cancel(){this.cancelled||this.resolved||(this.__resolve(!1),this.delayTimeout&&(window.clearTimeout(this.delayTimeout),this.delayTimeout=void 0),this.animationFrame&&(window.cancelAnimationFrame(this.animationFrame),this.animationFrame=void 0))}},Ae=class{constructor(e,t){if(this.fn=e,this.mode=0,this.speed=0,this.speedMult=0,this.currentSpeed=0,this.target=0,this.__current=0,this.min=t.min,this.max=t.max,this.wrap=t.wrap,this.current=t.defaultValue,this.wrap&&0!==this.min)throw new ae("invalid config");this.fn&&this.fn(this.current)}get current(){return this.__current}set current(e){this.__current=e}setSpeed(e){this.speed=e}goto(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;this.mode=2,this.target=this.wrap?P(e,this.max):d.cj9.clamp(e,this.min,this.max),this.speedMult=t}step(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;0===t?this.setValue(this.current+e):(2!==this.mode&&(this.target=this.current),this.goto(this.target+e,t))}roll(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;this.mode=1,this.target=e?-1/0:1/0,this.speedMult=t}stop(){this.mode=0}setValue(e){return this.target=this.wrap?P(e,this.max):d.cj9.clamp(e,this.min,this.max),this.mode=0,this.currentSpeed=0,this.target!==this.current&&(this.current=this.target,this.fn&&this.fn(this.current),!0)}update(e){if(2===this.mode){this.wrap&&Math.abs(this.target-this.current)>this.max/2&&(this.current=this.current<this.target?this.current+this.max:this.current-this.max);const e=this.currentSpeed*this.currentSpeed/(this.speed*this.speedMult*4);Math.abs(this.target-this.current)<=e&&(this.mode=0)}let t=0===this.mode?0:this.speed*this.speedMult;this.target<this.current&&(t=-t),this.currentSpeed<t?this.currentSpeed=Math.min(t,this.currentSpeed+e/1e3*this.speed*this.speedMult*2):this.currentSpeed>t&&(this.currentSpeed=Math.max(t,this.currentSpeed-e/1e3*this.speed*this.speedMult*2));let i=null;return this.current>this.target&&this.currentSpeed?i=Math.max(this.target,this.current+this.currentSpeed*e/1e3):this.current<this.target&&this.currentSpeed&&(i=Math.min(this.target,this.current+this.currentSpeed*e/1e3)),null!==i&&(i=this.wrap?P(i,this.max):d.cj9.clamp(i,this.min,this.max),i!==this.current)&&(this.current=i,this.fn&&this.fn(this.current),!0)}},De=class{constructor(e,t){this.fn=e,this.dynamics=t,this.fn&&this.fn(this.current)}get current(){return Object.entries(this.dynamics).reduce(((e,t)=>{let[i,s]=t;return e[i]=s.current,e}),{})}setSpeed(e){for(const t of Object.values(this.dynamics))t.setSpeed(e)}goto(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;for(const[i,s]of Object.entries(e))this.dynamics[i].goto(s,t)}step(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;if(0===t)this.setValue(Object.keys(e).reduce(((t,i)=>(t[i]=e[i]+this.dynamics[i].current,t)),{}));else for(const[i,s]of Object.entries(e))this.dynamics[i].step(s,t)}roll(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;for(const[i,s]of Object.entries(e))this.dynamics[i].roll(s,t)}stop(){for(const e of Object.values(this.dynamics))e.stop()}setValue(e){let t=!1;for(const[i,s]of Object.entries(e))t=this.dynamics[i].setValue(s)||t;return t&&this.fn&&this.fn(this.current),t}update(e){let t=!1;for(const i of Object.values(this.dynamics))t=i.update(e)||t;return t&&this.fn&&this.fn(this.current),t}},je=class{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:200;this.delay=e,this.time=0,this.delay=e}get pending(){return 0!==this.time}down(e){this.timeout&&(clearTimeout(this.timeout),this.timeout=void 0),this.time=(new Date).getTime(),this.data=e}up(e){if(!this.time)return;Date.now()-this.time<this.delay?this.timeout=setTimeout((()=>{e(this.data),this.timeout=void 0,this.time=0,this.data=void 0}),this.delay):(e(this.data),this.time=0,this.data=void 0)}},He=(e=>(e.VERTICAL="VERTICAL",e.HORIZONTAL="HORIZONTAL",e))(He||{}),Re=class{constructor(e,t,i){this.container=e,this.direction=t,this.listener=i,this.mousedown=!1,this.mouseover=!1,this.container.addEventListener("click",this),this.container.addEventListener("mousedown",this),this.container.addEventListener("mouseenter",this),this.container.addEventListener("mouseleave",this),this.container.addEventListener("touchstart",this),this.container.addEventListener("mousemove",this,!0),this.container.addEventListener("touchmove",this,!0),window.addEventListener("mouseup",this),window.addEventListener("touchend",this)}get isVertical(){return"VERTICAL"===this.direction}get isHorizontal(){return"HORIZONTAL"===this.direction}destroy(){window.removeEventListener("mouseup",this),window.removeEventListener("touchend",this)}handleEvent(e){switch(e.type){case"click":e.stopPropagation();break;case"mousedown":this.__onMouseDown(e);break;case"mouseenter":this.__onMouseEnter(e);break;case"mouseleave":this.__onMouseLeave(e);break;case"touchstart":this.__onTouchStart(e);break;case"mousemove":this.__onMouseMove(e);break;case"touchmove":this.__onTouchMove(e);break;case"mouseup":this.__onMouseUp(e);break;case"touchend":this.__onTouchEnd(e)}}__onMouseDown(e){this.mousedown=!0,this.__update(e.clientX,e.clientY,!0)}__onMouseEnter(e){this.mouseover=!0,this.__update(e.clientX,e.clientY,!0)}__onTouchStart(e){this.mouseover=!0,this.mousedown=!0;const t=e.changedTouches[0];this.__update(t.clientX,t.clientY,!0)}__onMouseMove(e){(this.mousedown||this.mouseover)&&(e.stopPropagation(),this.__update(e.clientX,e.clientY,!0))}__onTouchMove(e){if(this.mousedown||this.mouseover){e.stopPropagation();const t=e.changedTouches[0];this.__update(t.clientX,t.clientY,!0)}}__onMouseUp(e){this.mousedown&&(this.mousedown=!1,this.__update(e.clientX,e.clientY,!1))}__onMouseLeave(e){this.mouseover&&(this.mouseover=!1,this.__update(e.clientX,e.clientY,!0))}__onTouchEnd(e){if(this.mousedown){this.mouseover=!1,this.mousedown=!1;const t=e.changedTouches[0];this.__update(t.clientX,t.clientY,!1)}}__update(e,t,i){const s=this.container.getBoundingClientRect();let n;n=this.isVertical?d.cj9.clamp((s.bottom-t)/s.height,0,1):d.cj9.clamp((e-s.left)/s.width,0,1),this.listener({value:n,click:!i,mousedown:this.mousedown,mouseover:this.mouseover,cursor:{clientX:e,clientY:t}})}};v({},{BeforeAnimateEvent:()=>Ye,BeforeRenderEvent:()=>Be,BeforeRotateEvent:()=>Ke,ClickEvent:()=>Ge,ConfigChangedEvent:()=>Je,DoubleClickEvent:()=>et,FullscreenEvent:()=>it,HideNotificationEvent:()=>nt,HideOverlayEvent:()=>rt,HidePanelEvent:()=>ct,HideTooltipEvent:()=>ht,KeypressEvent:()=>ut,LoadProgressEvent:()=>vt,ObjectEnterEvent:()=>Xt,ObjectEvent:()=>Zt,ObjectHoverEvent:()=>$t,ObjectLeaveEvent:()=>qt,PanoramaErrorEvent:()=>bt,PanoramaLoadEvent:()=>ft,PanoramaLoadedEvent:()=>gt,PositionUpdatedEvent:()=>Ct,ReadyEvent:()=>Ot,RenderEvent:()=>Pt,RollUpdatedEvent:()=>Mt,ShowNotificationEvent:()=>St,ShowOverlayEvent:()=>Nt,ShowPanelEvent:()=>Dt,ShowTooltipEvent:()=>Ht,SizeUpdatedEvent:()=>Ft,StopAllEvent:()=>Ut,TransitionDoneEvent:()=>_t,ViewerEvent:()=>Ue,ZoomUpdatedEvent:()=>Yt});
1var Fe=class extends Event{constructor(e){super(e,{cancelable:arguments.length>1&&void 0!==arguments[1]&&arguments[1]})}},Ve=class extends EventTarget{dispatchEvent(e){return super.dispatchEvent(e)}addEventListener(e,t,i){super.addEventListener(e,t,i)}removeEventListener(e,t,i){super.removeEventListener(e,t,i)}},Ue=class extends Fe{},We=class e extends Ue{constructor(t,i){super(e.type,!0),this.position=t,this.zoomLevel=i}};We.type="before-animate";var Ye=We,Ze=class e extends Ue{constructor(t,i){super(e.type),this.timestamp=t,this.elapsed=i}};Ze.type="before-render";var Be=Ze,Xe=class e extends Ue{constructor(t){super(e.type,!0),this.position=t}};Xe.type="before-rotate";var Ke=Xe,qe=class e extends Ue{constructor(t){super(e.type),this.data=t}};qe.type="click";var Ge=qe,$e=class e extends Ue{constructor(t){super(e.type),this.options=t}containsOptions(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return t.some((e=>this.options.includes(e)))}};$e.type="config-changed";var Je=$e,Qe=class e extends Ue{constructor(t){super(e.type),this.data=t}};Qe.type="dblclick";var et=Qe,tt=class e extends Ue{constructor(t){super(e.type),this.fullscreenEnabled=t}};tt.type="fullscreen";var it=tt,st=class e extends Ue{constructor(t){super(e.type),this.notificationId=t}};st.type="hide-notification";var nt=st,ot=class e extends Ue{constructor(t){super(e.type),this.overlayId=t}};ot.type="hide-overlay";var rt=ot,at=class e extends Ue{constructor(t){super(e.type),this.panelId=t}};at.type="hide-panel";var ct=at,lt=class e extends Ue{constructor(t){super(e.type),this.tooltipData=t}};lt.type="hide-tooltip";var ht=lt,dt=class e extends Ue{constructor(t,i){super(e.type,!0),this.key=t,this.originalEvent=i}};dt.type="key-press";var ut=dt,pt=class e extends Ue{constructor(t){super(e.type),this.progress=t}};pt.type="load-progress";var vt=pt,mt=class e extends Ue{constructor(t){super(e.type),this.panorama=t}};mt.type="panorama-load";var ft=mt,wt=class e extends Ue{constructor(t){super(e.type),this.data=t}};wt.type="panorama-loaded";var gt=wt,yt=class e extends Ue{constructor(t,i){super(e.type),this.panorama=t,this.error=i}};yt.type="panorama-error";var bt=yt,Et=class e extends Ue{constructor(t){super(e.type),this.completed=t}};Et.type="transition-done";var _t=Et,xt=class e extends Ue{constructor(t){super(e.type),this.position=t}};xt.type="position-updated";var Ct=xt,Tt=class e extends Ue{constructor(t){super(e.type),this.roll=t}};Tt.type="roll-updated";var Mt=Tt,Lt=class e extends Ue{constructor(){super(e.type)}};Lt.type="ready";var Ot=Lt,kt=class e extends Ue{constructor(){super(e.type)}};kt.type="render";var Pt=kt,It=class e extends Ue{constructor(t){super(e.type),this.notificationId=t}};It.type="show-notification";var St=It,zt=class e extends Ue{constructor(t){super(e.type),this.overlayId=t}};zt.type="show-overlay";var Nt=zt,At=class e extends Ue{constructor(t){super(e.type),this.panelId=t}};At.type="show-panel";var Dt=At,jt=class e extends Ue{constructor(t,i){super(e.type),this.tooltip=t,this.tooltipData=i}};jt.type="show-tooltip";var Ht=jt,Rt=class e extends Ue{constructor(t){super(e.type),this.size=t}};Rt.type="size-updated";var Ft=Rt,Vt=class e extends Ue{constructor(){super(e.type)}};Vt.type="stop-all";var Ut=Vt,Wt=class e extends Ue{constructor(t){super(e.type),this.zoomLevel=t}};Wt.type="zoom-updated";var Yt=Wt,Zt=class extends Ue{constructor(e,t,i,s,n){super(e),this.originalEvent=t,this.object=i,this.viewerPoint=s,this.userDataKey=n}},Bt=class e extends Zt{constructor(t,i,s,n){super(e.type,t,i,s,n)}};Bt.type="enter-object";var Xt=Bt,Kt=class e extends Zt{constructor(t,i,s,n){super(e.type,t,i,s,n)}};Kt.type="leave-object";var qt=Kt,Gt=class e extends Zt{constructor(t,i,s,n){super(e.type,t,i,s,n)}};Gt.type="hover-object";var $t=Gt,Jt=class{constructor(e){this.viewer=e}init(){}destroy(){}supportsTransition(e){return!1}supportsPreload(e){return!1}textureCoordsToSphericalCoords(e,t){throw new ae("Current adapter does not support texture coordinates.")}sphericalCoordsToTextureCoords(e,t){throw new ae("Current adapter does not support texture coordinates.")}};function Qt(e){if(e)for(const[,t]of[["_",e],...Object.entries(e)])if(t.prototype instanceof Jt)return t.id,t.VERSION,t;return null}Jt.supportsDownload=!1;var ei="".concat(x,"_touchSupport"),ti={loaded:!1,pixelRatio:1,isWebG
1LSupported:!1,maxTextureWidth:0,isTouchEnabled:null,__maxCanvasWidth:null,isIphone:!1,get maxCanvasWidth(){return null===this.__maxCanvasWidth&&(this.__maxCanvasWidth=function(e){let t=e,i=!1;const s=document.createElement("canvas"),n=s.getContext("2d");s.width=1,s.height=1;for(;t>1024&&!i;){const e=document.createElement("canvas"),s=e.getContext("2d");e.width=t,e.height=t/2;try{s.fillStyle="white",s.fillRect(t-1,t/2-1,1,1),n.drawImage(e,t-1,t/2-1,1,1,0,0,1,1),n.getImageData(0,0,1,1).data[0]>0&&(i=!0)}catch(o){}e.width=0,e.height=0,i||(t/=2)}if(i)return t;throw new ae("Unable to detect system capabilities")}(this.maxTextureWidth)),this.__maxCanvasWidth},load(){if(!this.loaded){const e=function(){try{return document.createElement("canvas").getContext("webgl2")}catch(e){return null}}();this.pixelRatio=window.devicePixelRatio||1,this.isWebGLSupported=!!e,this.maxTextureWidth=e?e.getParameter(e.MAX_TEXTURE_SIZE):0,this.isTouchEnabled=function(){let e="ontouchstart"in window||navigator.maxTouchPoints>0;ei in localStorage&&(e="true"===localStorage[ei]);const t=new Promise((t=>{const i=()=>{window.removeEventListener("mousedown",s),window.removeEventListener("touchstart",n),clearTimeout(r)},s=()=>{i(),localStorage[ei]=!1,t(!1)},n=()=>{i(),localStorage[ei]=!0,t(!0)},o=()=>{i(),localStorage[ei]=e,t(e)};window.addEventListener("mousedown",s,!1),window.addEventListener("touchstart",n,!1);const r=setTimeout(o,1e4)}));return{initial:e,promise:t}}(),this.isIphone=/iPhone/i.test(navigator.userAgent),this.loaded=!0}if(!ti.isWebGLSupported)throw new ae("WebGL 2 is not supported.");if(0===ti.maxTextureWidth)throw new ae("Unable to detect system capabilities")}};var ii=ke({resolution:64,useXmpData:!0,blur:!1},{resolution:e=>{if(!e||!d.cj9.isPowerOfTwo(e))throw new ae("EquirectangularAdapter resolution must be power of two.");return e}}),si=class extends Jt{constructor(e,t){super(e),this.config=ii(t),this.SPHERE_SEGMENTS=this.config.resolution,this.SPHERE_HORIZONTAL_SEGMENTS=this.SPHERE_SEGMENTS/2}supportsTransition(){return!0}supportsPreload(){return!0}textureCoordsToSphericalCoords(e,t){if(se(e.textureX)||se(e.textureY))throw new ae("Texture position is missing 'textureX' or 'textureY'");const i=(e.textureX+t.croppedX)/t.fullWidth*Math.PI*2,s=(e.textureY+t.croppedY)/t.fullHeight*Math.PI;return{yaw:i>=Math.PI?i-Math.PI:i+Math.PI,pitch:Math.PI/2-s}}sphericalCoordsToTextureCoords(e,t){const i=e.yaw/Math.PI/2*t.fullWidth,s=e.pitch/Math.PI*t.fullHeight;let n=Math.round(e.yaw<Math.PI?i+t.fullWidth/2:i-t.fullWidth/2)-t.croppedX,o=Math.round(t.fullHeight/2-s)-t.croppedY;return(n<0||n>t.croppedWidth||o<0||o>t.croppedHeight)&&(n=o=void 0),{textureX:n,textureY:o}}async loadTexture(e){let t,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],s=arguments.length>2?arguments[2]:void 0,n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:this.config.useXmpData;if("string"!==typeof e&&("object"!==typeof e||!e.path))return Promise.reject(new ae("Invalid panorama url, are you using the right adapter?"));t="string"===typeof e?{path:e,data:s}:(0,h.A)({data:s},e);const o=await this.viewer.textureLoader.loadFile(t.path,i?e=>this.viewer.textureLoader.dispatchProgress(e):null,t.path),r=n?await this.loadXMP(o):null,a=await this.viewer.textureLoader.blobToImage(o);"function"===typeof t.data&&(t.data=t.data(a,r));const c=ze(a.width,a.height,t.data,r);return{panorama:e,texture:this.createEquirectangularTexture(a),panoData:c,cacheKey:t.path}}async loadXMP(e){const t=await this.loadBlobAsString(e),i=t.indexOf("<x:xmpmeta");if(-1===i)return null;const s=t.indexOf("</x:xmpmeta>",i);if(-1===s)return null;const n=t.substring(i,s);return n.includes("GPano:")?{fullWidth:ve(n,"FullPanoWidthPixels"),fullHeight:ve(n,"FullPanoHeightPixels"),croppedWidth:ve(n,"CroppedAreaImageWidthPixels"),croppedHeight:ve(n,"CroppedAreaImageHeightPixels"),croppedX:ve(n,"CroppedAreaLeftPixels"),croppedY:ve(n,"CroppedAreaTopPixels"),poseHeading:ve(n,"PoseHeadingDegrees",!1),posePitch:ve(n,"PosePitchDegrees",!1),poseRoll:ve(n,"PoseRollDegrees",!1),initialHeading:ve(n,"InitialViewHeadingDegrees",!1),initialPitch:ve(n,"InitialViewPitchDegrees",!1),initialFov:ve(n,"InitialHorizontalFOVDegrees",!1)}:null}loadBlobAsString(e){return new Promise(((t,i)=>{const s=new FileReader;s.onload=()=>t(s.result),s.onerror=i,s.readAsText(e)}))}createEquirectangularTexture(e){if(this.config.blur||e.width>ti.maxTextureWidth){const t=Math.min(1,ti.maxCanvasWidth/e.width),i=new OffscreenCanvas(Math.floor(e.width*t),Math.floor(e.height*t)),s=i.getContext("2d");return this.config.blur&&(s.filter="blur(".concat(i.width/2048,"px)")),s.drawImage(e,0,0,i.width,i.height),Me(i)}return Me(e)}createMesh(e){const t=e.croppedX/e.fullWidth*2*Math.PI,i=e.croppedWidth/e.fullWidth*2*Math.PI,s=e.croppedY/e.fullHeight*Math.PI,n=e.croppedHeight/e.fullHeight*Math.PI,o=new d.Gu$(_,Math.round(this.SPHERE_SEGMENTS/(2*Math.PI)*i),Math.round(this.SPHERE_HORIZONTAL_SEGMENTS/Math.PI*n),-Math.PI/2+t,i,s,n).scale(-1,1,1),r=new d.V9B({depthTest:!1,depthWrite:!1});return new d.eaF(o,r)}setTexture(e,t){e.material.map=t.texture}setTextureOpacity(e,t){e.material.opacity=t,e.material.transparent=t<1}disposeTexture(e){let{texture:t}=e;t.dispose()}disposeMesh(e){e.geometry.dispose(),e.material.dispose()}};
1si.id="equirectangular",si.VERSION="5.13.2",si.supportsDownload=!0;var ni=class extends si{constructor(e,t){var i;super(e,{resolution:null!==(i=null===t||void 0===t?void 0:t.resolution)&&void 0!==i?i:64,useXmpData:!1})}async loadTexture(e,t){const i=await super.loadTexture(e,t,null,!1);return i.panoData=null,i}createMesh(){const e=new d.Gu$(_,this.SPHERE_SEGMENTS,this.SPHERE_HORIZONTAL_SEGMENTS).scale(-1,1,1).toNonIndexed(),t=e.getAttribute("uv"),i=e.getAttribute("normal");for(let n=0;n<t.count;n++)for(let e=0;e<3;e++){const s=3*n+e,o=i.getX(s),r=i.getY(s),a=i.getZ(s),c=.947;if(n<t.count/6){const e=0===o&&0===a?1:Math.acos(r)/Math.sqrt(o*o+a*a)*(2/Math.PI);t.setXY(s,o*(c/4)*e+1/4,a*(c/2)*e+.5)}else{const e=0===o&&0===a?1:Math.acos(-r)/Math.sqrt(o*o+a*a)*(2/Math.PI);t.setXY(s,c/4*-o*e+3/4,a*(c/2)*e+.5)}}e.rotateX(-Math.PI/2),e.rotateY(Math.PI);const s=new d.V9B({depthTest:!1,depthWrite:!1});return new d.eaF(e,s)}};ni.id="dual-fisheye",ni.VERSION="5.13.2";var oi=class e{constructor(t,i){var s;this.parent=t,this.children=[],this.state={visible:!0},this.viewer=t instanceof e?t.viewer:t,this.container=document.createElement(null!==(s=i.tagName)&&void 0!==s?s:"div"),this.container.className=i.className||"",this.parent.children.push(this),this.parent.container.appendChild(this.container)}destroy(){this.parent.container.removeChild(this.container);const e=this.parent.children.indexOf(this);-1!==e&&this.parent.children.splice(e,1),this.children.slice().forEach((e=>e.destroy())),this.children.length=0}toggle(){(arguments.length>0&&void 0!==arguments[0]?arguments[0]:!this.isVisible())?this.show():this.hide()}hide(e){this.container.style.display="none",this.state.visible=!1}show(e){this.container.style.display="",this.state.visible=!0}isVisible(){return this.state.visible}},ri=ke({id:null,tagName:null,className:null,title:null,hoverScale:!1,collapsable:!1,tabbable:!0,icon:null,iconActive:null}),ai=class extends oi{constructor(e,t){var i;(super(e,{tagName:t.tagName,className:"psv-button ".concat(t.hoverScale?"psv-button--hover-scale":""," ").concat(t.className||"")}),this.state={visible:!0,enabled:!0,supported:!0,collapsed:!1,active:!1,width:0},this.config=ri(t),t.id||(this.config.id=this.constructor.id),t.icon&&this.__setIcon(t.icon),this.state.width=this.container.offsetWidth,this.config.title)?this.container.title=null!==(i=this.viewer.config.lang[this.config.title])&&void 0!==i?i:this.config.title:this.id&&this.id in this.viewer.config.lang&&(this.container.title=this.viewer.config.lang[this.id]);t.tabbable&&(this.container.tabIndex=0),this.container.addEventListener("click",(e=>{this.state.enabled&&this.onClick(),e.stopPropagation()})),this.container.addEventListener("keydown",(e=>{e.key===L.Enter&&this.state.enabled&&(this.onClick(),e.stopPropagation())}))}get id(){return this.config.id}get title(){return this.container.title}get content(){return this.container.innerHTML}get width(){return this.state.width}get collapsable(){return this.config.collapsable}show(){let e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.isVisible()||(this.state.visible=!0,this.state.collapsed||(this.container.style.display=""),e&&this.viewer.navbar.autoSize())}hide(){let e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.isVisible()&&(this.state.visible=!1,this.container.style.display="none",e&&this.viewer.navbar.autoSize())}checkSupported(){ce(this.isSupported(),((e,t)=>{this.state&&(this.state.supported=e,t?e||this.hide():this.toggle(e))}))}autoSize(){}isSupported(){return!0}toggleActive(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!this.state.active;e!==this.state.active&&(this.state.active=e,H(this.container,"psv-button--active",this.state.active),this.config.iconActive&&this.__setIcon(this.state.active?this.config.iconActive:this.config.icon))}disable(){this.container.classList.add("psv-button--disabled"),this.state.enabled=!1}enable(){this.container.classList.remove("psv-button--disabled"),this.state.enabled=!0}collapse(){this.state.collapsed=!0,this.container.style.display="none"}uncollapse(){this.state.collapsed=!1,this.state.visible&&(this.container.style.display="")}__setIcon(e){this.container.innerHTML=e,R(this.container.querySelector("svg"),"psv-button-svg")}},ci=class extends ai{constructor(e,t){var i,s,n;(super(e,{id:null!==(i=t.id)&&void 0!==i?i:"psvButton-".concat(Math.random().toString(36).substring(2)),className:"psv-custom-button ".concat(t.className||""),hoverScale:!1,collapsable:!1!==t.collapsable,tabbable:!1!==t.tabbable,title:t.title}),this.customOnClick=t.onClick,t.content)&&("string"===typeof t.content?this.container.innerHTML=t.content:(this.container.classList.add("psv-custom-button--no-padding"),t.content.style.height="100%",
1null===(s=(n=t.content).attachViewer)||void 0===s||s.call(n,this.viewer),this.container.appendChild(t.content)));this.state.width=this.container.offsetWidth,t.disabled&&this.disable(),!1===t.visible&&this.hide()}onClick(){var e;null===(e=this.customOnClick)||void 0===e||e.call(this,this.viewer)}},li=class extends ai{constructor(e){super(e,{className:"psv-description-button",hoverScale:!0,collapsable:!1,tabbable:!0,icon:O.info}),this.mode=0,this.viewer.addEventListener(nt.type,this),this.viewer.addEventListener(St.type,this),this.viewer.addEventListener(ct.type,this),this.viewer.addEventListener(Dt.type,this),this.viewer.addEventListener(Je.type,this)}destroy(){this.viewer.removeEventListener(nt.type,this),this.viewer.removeEventListener(St.type,this),this.viewer.removeEventListener(ct.type,this),this.viewer.removeEventListener(Dt.type,this),this.viewer.removeEventListener(Je.type,this),super.destroy()}handleEvent(e){if(e instanceof Je)return void(e.containsOptions("description")&&this.autoSize(!0));if(!this.mode)return;let t=!1;e instanceof nt?t=1===this.mode:e instanceof St?t=1===this.mode&&e.notificationId!==M.DESCRIPTION:e instanceof ct?t=2===this.mode:e instanceof Dt&&(t=2===this.mode&&e.panelId!==M.DESCRIPTION),t&&(this.toggleActive(!1),this.mode=0)}onClick(){this.mode?this.__close():this.__open()}hide(e){super.hide(e),this.mode&&this.__close()}autoSize(){if(arguments.length>0&&void 0!==arguments[0]&&arguments[0]){const e=this.viewer.navbar.getButton("caption",!1),t=e&&!e.isVisible(),i=!!this.viewer.config.description;t||i?this.show(!1):this.hide(!1)}}__close(){switch(this.mode){case 1:this.viewer.notification.hide(M.DESCRIPTION);break;case 2:this.viewer.panel.hide(M.DESCRIPTION)}}__open(){this.toggleActive(!0),this.viewer.config.description?(this.mode=2,this.viewer.panel.show({id:M.DESCRIPTION,content:"".concat(this.viewer.config.caption?"<p>".concat(this.viewer.config.caption,"</p>"):"").concat(this.viewer.config.description)})):(this.mode=1,this.viewer.notification.show({id:M.DESCRIPTION,content:this.viewer.config.caption}))}};li.id="description";var hi=class extends ai{constructor(e){super(e,{tagName:"a",className:"psv-download-button",hoverScale:!0,collapsable:!0,tabbable:!0,icon:O.download}),this.viewer.addEventListener(Je.type,this),this.viewer.addEventListener(gt.type,this)}destroy(){this.viewer.removeEventListener(Je.type,this),this.viewer.removeEventListener(gt.type,this),super.destroy()}handleEvent(e){e instanceof Je?(e.containsOptions("downloadUrl")&&this.checkSupported(),e.containsOptions("downloadUrl","downloadName")&&this.__update()):e instanceof gt&&this.__update()}onClick(){}
vendor: 1,911 bytes, line 1
1checkSupported(){this.viewer.adapter.constructor.supportsDownload||this.viewer.config.downloadUrl?this.show():this.hide()}__update(){const e=this.container;e.href=this.viewer.config.downloadUrl||this.viewer.config.panorama,e.target="_blank",e.href.startsWith("data:")&&!this.viewer.config.downloadName?e.download="panorama."+e.href.substring(0,e.href.indexOf(";")).split("/").pop():e.download=this.viewer.config.downloadName||e.href.split("/").pop()}};hi.id="download";var di=class extends ai{constructor(e){super(e,{className:"psv-fullscreen-button",hoverScale:!0,collapsable:!1,tabbable:!0,icon:O.fullscreenIn,iconActive:O.fullscreenOut}),this.viewer.addEventListener(it.type,this)}destroy(){this.viewer.removeEventListener(it.type,this),super.destroy()}handleEvent(e){e instanceof it&&this.toggleActive(e.fullscreenEnabled)}onClick(){this.viewer.toggleFullscreen()}};di.id="fullscreen";var ui=class extends ai{constructor(e){super(e,{className:"psv-menu-button",hoverScale:!0,collapsable:!1,tabbable:!0,icon:O.menu}),this.viewer.addEventListener(Dt.type,this),this.viewer.addEventListener(ct.type,this),super.hide()}destroy(){this.viewer.removeEventListener(Dt.type,this),this.viewer.removeEventListener(ct.type,this),super.destroy()}handleEvent(e){e instanceof Dt?this.toggleActive(e.panelId===M.MENU):e instanceof ct&&this.toggleActive(!1)}onClick(){this.state.active?this.__hideMenu():this.__showMenu()}hide(e){super.hide(e),this.__hideMenu()}show(e){super.show(e),this.state.active&&this.__showMenu()}__showMenu(){var e,t;this.viewer.panel.show({id:M.MENU,content:(e=this.viewer.navbar.collapsed,t=this.viewer.config.lang.menu,'\n<div class="psv-panel-menu psv-panel-menu--stripped">\n <h1 class="psv-panel-menu-title">'.concat(O.menu," ").concat(t,'</h1>\n <ul class="psv-panel-menu-list">\n ').concat(e.map((e=>'\n <li data-psv-button="'.concat(e.id,'" class="psv-panel-menu-item" tabindex="0">
1\n <span class="psv-panel-menu-item-icon">').concat(e.content,'</span>\n <span class="psv-panel-menu-item-label">').concat(e.title,"</span>\n </li>\n "))).join(""),"\n </ul>\n</div>\n")),noMargin:!0,clickHandler:e=>{const t=e?U(e,".psv-panel-menu-item"):void 0,i=t?t.dataset.psvButton:void 0;i&&(this.viewer.navbar.getButton(i).onClick(),this.__hideMenu())}})}__hideMenu(){this.viewer.panel.hide(M.MENU)}};function pi(e){let t=0;switch(e){case 0:t=90;break;case 1:t=-90;break;case 3:t=180;break;default:t=0}return O.arrow.replace("rotate(0","rotate(".concat(t))}ui.id="menu";var vi=class extends ai{constructor(e,t){super(e,{className:"psv-move-button",hoverScale:!0,collapsable:!1,tabbable:!0,icon:pi(t)}),this.direction=t,this.handler=new je,this.container.addEventListener("mousedown",this),this.container.addEventListener("keydown",this),this.container.addEventListener("keyup",this),this.viewer.container.addEventListener("mouseup",this),this.viewer.container.addEventListener("touchend",this)}destroy(){this.__onMouseUp(),this.viewer.container.removeEventListener("mouseup",this),this.viewer.container.removeEventListener("touchend",this),super.destroy()}handleEvent(e){switch(e.type){case"mousedown":this.__onMouseDown();break;case"mouseup":case"touchend":this.__onMouseUp();break;case"keydown":e.key===L.Enter&&this.__onMouseDown();break;case"keyup":e.key===L.Enter&&this.__onMouseUp()}}onClick(){}isSupported(){return le(ti.isTouchEnabled)}__onMouseDown(){if(!this.state.enabled)return;const e={};switch(this.direction){case 0:e.pitch=!1;break;case 1:e.pitch=!0;break;case 3:e.yaw=!1;break;default:e.yaw=!0}this.viewer.stopAll(),this.viewer.dynamics.position.roll(e),this.handler.down()}__onMouseUp(){this.state.enabled&&this.handler.up((()=>{this.viewer.dynamics.position.stop(),this.viewer.resetIdleTimer()}))}};vi.groupId="move";var mi=class extends vi{constructor(e){super(e,1)}};mi.id="moveDown";var fi=class extends vi{constructor(e){super(e,2)}};fi.id="moveLeft";var wi=class extends vi{constructor(e){super(e,3)}};wi.id="moveRight";var gi=class extends vi{constructor(e){super(e,0)}};gi.id="moveUp";var yi=class extends ai{constructor(e,t,i){super(e,{className:"psv-zoom-button",hoverScale:!0,collapsable:!1,tabbable:!0,icon:t}),this.direction=i,this.handler=new je,this.container.addEventListener("mousedown",this),this.container.addEventListener("keydown",this),this.container.addEventListener("keyup",this),this.viewer.container.addEventListener("mouseup",this),this.viewer.container.addEventListener("touchend",this)}destroy(){this.__onMouseUp(),this.viewer.container.removeEventListener("mouseup",this),this.viewer.container.removeEventListener("touchend",this),super.destroy()}handleEvent(e){switch(e.type){case"mousedown":this.__onMouseDown();break;case"mouseup":case"touchend":this.__onMouseUp();break;case"keydown":e.key===L.Enter&&this.__onMouseDown();break;case"keyup":e.key===L.Enter&&this.__onMouseUp()}}onClick(){}isSupported(){return le(ti.isTouchEnabled)}__onMouseDown(){this.state.enabled&&(this.viewer.dynamics.zoom.roll(1===this.direction),this.handler.down())}__onMouseUp(){this.state.enabled&&this.handler.up((()=>this.viewer.dynamics.zoom.stop()))}};yi.groupId="zoom";var bi=class extends yi{constructor(e){super(e,O.zoomIn,0)}};bi.id="zoomIn";var Ei=class extends yi{constructor(e){super(e,O.zoomOut,1)}};Ei.id="zoomOut";var _i=class extends ai{constructor(e){super(e,{className:"psv-zoom-range",hoverScale:!1,collapsable:!1,tabbable:!1}),this.zoomRange=document.createElement("div"),this.zoomRange.className="psv-zoom-range-line",this.container.appendChild(this.zoomRange),this.zoomValue=document.createElement("div"),this.zoomValue.className="psv-zoom-range-handle",this.zoomRange.appendChild(this.zoomValue),this.slider=new Re(this.container,"HORIZONTAL",(e=>this.__onSliderUpdate(e))),this.mediaMinWidth=parseInt(B(this.container,"max-width"),10),this.viewer.addEventListener(Yt.type,this),this.viewer.state.ready?this.__moveZoomValue(this.viewer.getZoomLevel()):this.viewer.addEventListener(Ot.type,this)}destroy(){this.slider.destroy(),this.viewer.removeEventListener(Yt.type,this),this.viewer.removeEventListener(Ot.type,this),super.destroy()}handleEvent(e){e instanceof Yt?this.__moveZoomValue(e.zoomLevel):e instanceof Ot&&this.__moveZoomValue(this.viewer.getZoomLevel())}onClick(){}isSupported(){return le(ti.isTouchEnabled)}autoSize(){this.state.supported&&(this.viewer.state.size.width<=this.mediaMinWidth&&this.state.visible?this.hide(!1):this.viewer.state.size.width>this.mediaMinWidth&&!this.state.visible&&this.show(!1))}__moveZoomValue(e){this.zoomValue.style.left=e/100*this.zoomRange.offsetWidth-this.zoomValue.offsetWidth/2+"px"}
1__onSliderUpdate(e){e.mousedown&&this.viewer.zoom(100*e.value)}};_i.id="zoomRange",_i.groupId="zoom";var xi=class extends Ve{constructor(e){super(),this.viewer=e}init(){}destroy(){}};function Ci(e){if(e)for(const[,t]of[["_",e],...Object.entries(e)])if(t.prototype instanceof xi)return t.id,t.VERSION,t;return null}(class extends xi{constructor(e,t){super(e),this.config=this.constructor.configParser(t)}setOption(e,t){this.setOptions({[e]:t})}setOptions(e){const t=(0,h.A)((0,h.A)({},this.config),e),i=this.constructor,s=i.configParser,n=i.readonlyOptions,o=i.id;for(let[r,a]of Object.entries(e))r in s.defaults?n.includes(r)?"".concat(o,': Option "').concat(r,'" cannot be updated'):(r in s.parsers&&(a=s.parsers[r](a,{rawConfig:t,defValue:s.defaults[r]})),this.config[r]=a):"".concat(o,': Unknown option "').concat(r,'"')}}).readonlyOptions=[];var Ti={panorama:null,container:null,adapter:[si,null],plugins:[],caption:null,description:null,downloadUrl:null,downloadName:null,loadingImg:null,loadingTxt:"",size:null,fisheye:0,minFov:30,maxFov:90,defaultZoomLvl:50,defaultYaw:0,defaultPitch:0,sphereCorrection:null,moveSpeed:1,zoomSpeed:1,moveInertia:.8,mousewheel:!0,mousemove:!0,mousewheelCtrlKey:!1,touchmoveTwoFingers:!1,panoData:null,requestHeaders:null,canvasBackground:"#000",defaultTransition:{speed:1500,rotation:!0,effect:"fade"},rendererParameters:{alpha:!0,antialias:!0},withCredentials:!1,navbar:["zoom","move","download","description","caption","fullscreen"],lang:{zoom:"Zoom",zoomOut:"Zoom out",zoomIn:"Zoom in",moveUp:"Move up",moveDown:"Move down",moveLeft:"Move left",moveRight:"Move right",description:"Description",download:"Download",fullscreen:"Fullscreen",loading:"Loading...",menu:"Menu",close:"Close",twoFingers:"Use two fingers to navigate",ctrlZoom:"Use ctrl + scroll to zoom the image",loadError:"The panorama cannot be loaded",webglError:"Your browser does not seem to support WebGL"},keyboard:"fullscreen",keyboardActions:{[L.ArrowUp]:"ROTATE_UP",[L.ArrowDown]:"ROTATE_DOWN",[L.ArrowRight]:"ROTATE_RIGHT",[L.ArrowLeft]:"ROTATE_LEFT",[L.PageUp]:"ZOOM_IN",[L.PageDown]:"ZOOM_OUT",[L.Plus]:"ZOOM_IN",[L.Minus]:"ZOOM_OUT"}},Mi={panorama:"Use setPanorama method to change the panorama",panoData:"Use setPanorama method to change the panorama",container:"Cannot change viewer container",adapter:"Cannot change adapter",plugins:"Cannot change plugins"},Li={container:e=>{if(!e)throw new ae("No value given for container.");return e},adapter:(e,t)=>{let{defValue:i}=t;if(!(e=e?Array.isArray(e)?[Qt(e[0]),e[1]]:[Qt(e),null]:i)[0])throw new ae("An undefined value was given for adapter.");if(!e[0].id)throw new ae("Adapter has no id.");return e},defaultYaw:e=>Te(e),defaultPitch:e=>Te(e,!0),defaultZoomLvl:e=>d.cj9.clamp(e,0,100),minFov:(e,t)=>{let{rawConfig:i}=t;return i.maxFov<e&&(e=i.maxFov),d.cj9.clamp(e,1,179)},maxFov:(e,t)=>{let{rawConfig:i}=t;return e<i.minFov&&(e=i.minFov),d.cj9.clamp(e,1,179)},moveInertia:(e,t)=>{let{defValue:i}=t;return!0===e?i:!1===e?0:e},lang:e=>(0,h.A)((0,h.A)({},Ti.lang),e),keyboardActions:(e,t)=>{let{rawConfig:i}=t;return i.keyboard&&"object"===typeof i.keyboard?i.keyboard:e},fisheye:e=>!0===e?1:!1===e?0:e,requestHeaders:e=>e&&"object"===typeof e?()=>e:"function"===typeof e?e:null,defaultTransition:(e,t)=>{let{defValue:i}=t;return null===e||0===e.speed?null:(0,h.A)((0,h.A)({},i),e)},rendererParameters:(e,t)=>{let{defValue:i}=t;return(0,h.A)((0,h.A)({},e),i)},plugins:e=>e.map(((e,t)=>{if(!(e=Array.isArray(e)?[Ci(e[0]),e[1]]:[Ci(e),null])[0])throw new ae("An undefined value was given for plugin ".concat(t,"."));if(!e[0].id)throw new ae("Plugin ".concat(t," has no id."));return e})),navbar:e=>!1===e?null:!0===e?te(Ti.navbar):"string"===typeof e?e.split(/[ ,]/):e},Oi=ke(Ti,Li),ki=class extends ai{constructor(e){super(e,{className:"psv-caption",hoverScale:!1,collapsable:!1,tabbable:!0}),this.contentWidth=0,this.state.width=0,this.contentElt=document.createElement("div"),this.contentElt.className="psv-caption-content",this.container.appendChild(this.contentElt),this.setCaption(this.viewer.config.caption)}hide(){this.contentElt.style.display="none",this.state.visible=!1}show(){this.contentElt.style.display="",this.state.visible=!0}onClick(){}setCaption(e){this.show(),this.contentElt.innerHTML=null!==e&&void 0!==e?e:"",this.contentElt.innerHTML?this.contentWidth=this.contentElt.offsetWidth:this.contentWidth=0,this.autoSize()}autoSize(){this.toggle(this.container.offsetWidth>=this.contentWidth),this.__refreshButton()}__refreshButton(){var e;null===(e=this.viewer.navbar.getButton(li.id,!1))||void 0===e||e.autoSize(!0)}};ki.id="caption";var Pi={},Ii={};
1[Ei,_i,bi,li,ki,hi,di,fi,wi,gi,mi].forEach((e=>function(e,t){if(!e.id)throw new ae("Button id is required");if(Pi[e.id]=e,e.groupId&&(Ii[e.groupId]=Ii[e.groupId]||[]).push(e),t){const i=Ti.navbar;switch(t){case"start":i.unshift(e.id);break;case"end":i.push(e.id);break;default:{const[s,n]=t.split(":"),o=i.indexOf(s);if(!s||!n||-1===o)throw new ae("Invalid defaultPosition ".concat(t));i.splice(o+("right"===n?1:0),0,e.id)}}}}(e)));var Si=class extends oi{constructor(e){super(e,{className:"psv-navbar ".concat(C)}),this.collapsed=[],this.state.visible=!1}show(){this.viewer.container.classList.add("psv--has-navbar"),this.container.classList.add("psv-navbar--open"),this.state.visible=!0}hide(){this.viewer.container.classList.remove("psv--has-navbar"),this.container.classList.remove("psv-navbar--open"),this.state.visible=!1}setButtons(e){this.children.slice().forEach((e=>e.destroy())),this.children.length=0,-1!==e.indexOf(ki.id)&&-1===e.indexOf(li.id)&&e.splice(e.indexOf(ki.id),0,li.id),e.forEach((e=>{"object"===typeof e?new ci(this,e):Pi[e]?new Pi[e](this):Ii[e]?Ii[e].forEach((e=>{new e(this)})):"Unknown button ".concat(e)})),new ui(this),this.children.forEach((e=>{e instanceof ai&&e.checkSupported()})),this.autoSize()}setCaption(e){this.children.some((t=>t instanceof ki&&(t.setCaption(e),!0)))}getButton(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];const i=this.children.find((t=>t instanceof ai&&t.id===e));return!i&&t&&'button "'.concat(e,'" not found in the navbar'),i}focusButton(e){var t,i;this.isVisible()&&(null===(t=(null===(i=this.getButton(e,!1))||void 0===i?void 0:i.container)||this.container.firstElementChild)||void 0===t||t.focus())}autoSize(){var e;this.children.forEach((e=>{e instanceof ai&&e.autoSize()}));const t=this.container.offsetWidth;let i=0;const s=[];this.children.forEach((e=>{e.isVisible()&&e instanceof ai&&(i+=e.width,e.collapsable&&s.push(e))})),0!==i&&(t<i&&s.length>0?(s.forEach((e=>e.collapse())),this.collapsed=s,this.getButton(ui.id).show(!1)):t>=i&&this.collapsed.length>0&&(this.collapsed.forEach((e=>e.uncollapse())),this.collapsed=[],this.getButton(ui.id).hide(!1)),null===(e=this.getButton(ki.id,!1))||void 0===e||e.autoSize())}};d.l2R.enabled=!1;var zi={enabled:!0,maxItems:10,ttl:600,items:{},purgeInterval:null,init(){d.l2R.enabled&&(d.l2R.enabled=!1),!this.purgeInterval&&this.enabled&&(this.purgeInterval=setInterval((()=>this.purge()),6e4))},add(e,t,i){var s;this.enabled&&t&&(this.items[t]=null!==(s=this.items[t])&&void 0!==s?s:{files:{},lastAccess:null},this.items[t].files[e]=i,this.items[t].lastAccess=Date.now())},get(e,t){if(this.enabled&&t&&this.items[t])return this.items[t].lastAccess=Date.now(),this.items[t].files[e]},remove(e,t){this.enabled&&t&&this.items[t]&&(delete this.items[t].files[e],0===Object.keys(this.items[t].files).length&&delete this.items[t])},purge(){Object.entries(this.items).sort(((e,t)=>{let[,i]=e,[,s]=t;return s.lastAccess-i.lastAccess})).forEach(((e,t)=>{let[i,{lastAccess:s}]=e;t>0&&(Date.now()-s>=1e3*this.ttl||t>=this.maxItems)&&delete this.items[i]}))}},Ni=class extends oi{constructor(e){super(e,{className:"psv-loader-container"}),this.loader=document.createElement("div"),this.loader.className="psv-loader",this.container.appendChild(this.loader),this.size=this.loader.offsetWidth,this.canvas=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.canvas.setAttribute("class","psv-loader-canvas"),this.canvas.setAttribute("viewBox","0 0 ".concat(this.size," ").concat(this.size)),this.loader.appendChild(this.canvas),this.textColor=B(this.loader,"color"),this.color=B(this.canvas,"color"),this.border=parseInt(B(this.loader,"--psv-loader-border"),10),this.thickness=parseInt(B(this.loader,"--psv-loader-tickness"),10);const t=this.size/2;this.canvas.innerHTML='\n <circle cx="'.concat(t,'" cy="').concat(t,'" r="').concat(t,'" fill="').concat(this.color,'"/>\n <path d="" fill="none" stroke="').concat(this.textColor,'" stroke-width="').concat(this.thickness,'" stroke-linecap="round"/>\n '),this.viewer.addEventListener(Je.type,this),this.__updateContent(),this.hide()}destroy(){this.viewer.removeEventListener(Je.type,this),super.destroy()}handleEvent(e){e instanceof Je&&e.containsOptions("loadingImg","loadingTxt","lang")&&this.__updateContent()}setProgress(e){this.container.classList.remove("psv-loader--undefined");const t=d.cj9.clamp(e,0,99.999)/100*Math.PI*2,i=this.size/2,s=i,n=this.thickness/2+this.border,o=(this.size-this.thickness)/2-this.border,r=Math.sin(t)*o+i,a=-Math.cos(t)*o+i,c=e>50?"1":"0";this.canvas.querySelector("path").setAttributeNS(null,"d","M ".concat(s," ").concat(n," A ").concat(o," ").concat(o," 0 ").concat(c," 1 ").concat(r," ").concat(a))}showUndefined(){this.show(),this.setProgress(25),this.container.classList.add("psv-loader--undefined")}__updateContent(){const e=this.loader.querySelector(".psv-loader-image, .psv-loader-text");let t;if(e&&this.loader.removeChild(e),this.viewer.config.loadingImg?(t=document.createElement("img"),t.className="psv-loader-image",t.src=this.viewer.config.loadingImg):null!==this.viewer.config.loadingTxt&&(t=document.createElement("div"),t.className="psv-loader-text",t.innerHTML=this.viewer.config.loadingTxt||this.viewer.config.lang.loading),t){const e=Math.round(Math.sqrt(2*Math.pow(this.size/2-this.thickness/2-this.border,2)));t.style.maxWidth=e+"px",t.style.maxHeight=e+"px",this.loader.appendChild(t)}}},Ai=class extends oi{constructor(e){super(e,{className:"psv-notification"}
vendor: 11,355 bytes, line 1
1),this.state={visible:!1,contentId:null,timeout:null},this.content=document.createElement("div"),this.content.className="psv-notification-content",this.container.appendChild(this.content),this.content.addEventListener("click",(()=>this.hide()))}isVisible(e){return this.state.visible&&(!e||!this.state.contentId||this.state.contentId===e)}toggle(){throw new ae("Notification cannot be toggled")}show(e){this.state.timeout&&(clearTimeout(this.state.timeout),this.state.timeout=null),"string"===typeof e&&(e={content:e}),this.state.contentId=e.id||null,this.content.innerHTML=e.content,this.container.classList.add("psv-notification--visible"),this.state.visible=!0,this.viewer.dispatchEvent(new St(this.state.contentId)),e.timeout&&(this.state.timeout=setTimeout((()=>this.hide(this.state.contentId)),e.timeout))}hide(e){if(this.isVisible(e)){const e=this.state.contentId;this.container.classList.remove("psv-notification--visible"),this.state.visible=!1,this.state.contentId=null,this.viewer.dispatchEvent(new nt(e))}}},Di=class extends oi{constructor(e){super(e,{className:"psv-overlay ".concat(C)}),this.state={visible:!1,contentId:null,dismissible:!0},this.image=document.createElement("div"),this.image.className="psv-overlay-image",this.container.appendChild(this.image),this.title=document.createElement("div"),this.title.className="psv-overlay-title",this.container.appendChild(this.title),this.text=document.createElement("div"),this.text.className="psv-overlay-text",this.container.appendChild(this.text),this.container.addEventListener("click",this),this.viewer.addEventListener(ut.type,this),super.hide()}destroy(){this.viewer.removeEventListener(ut.type,this),super.destroy()}handleEvent(e){"click"===e.type?this.isVisible()&&this.state.dismissible&&(this.hide(),e.stopPropagation()):e instanceof ut&&this.isVisible()&&this.state.dismissible&&e.key===L.Escape&&(this.hide(),e.preventDefault())}isVisible(e){return this.state.visible&&(!e||!this.state.contentId||this.state.contentId===e)}toggle(){throw new ae("Overlay cannot be toggled")}show(e){"string"===typeof e&&(e={title:e}),this.state.contentId=e.id||null,this.state.dismissible=!1!==e.dismissible,this.image.innerHTML=e.image||"",this.title.innerHTML=e.title||"",this.text.innerHTML=e.text||"",super.show(),this.viewer.dispatchEvent(new Nt(this.state.contentId))}hide(e){if(this.isVisible(e)){const e=this.state.contentId;super.hide(),this.state.contentId=null,this.viewer.dispatchEvent(new rt(e))}}},ji="psv-panel-content--no-interaction",Hi=class extends oi{constructor(e){super(e,{className:"psv-panel ".concat(C)}),this.state={visible:!1,contentId:null,mouseX:0,mouseY:0,mousedown:!1,clickHandler:null,keyHandler:null,width:{}};const t=document.createElement("div");t.className="psv-panel-resizer",this.container.appendChild(t);const i=document.createElement("div");i.className="psv-panel-close-button",i.innerHTML=O.close,i.title=e.config.lang.close,this.container.appendChild(i),this.content=document.createElement("div"),this.content.className="psv-panel-content",this.container.appendChild(this.content),i.addEventListener("click",(()=>this.hide())),t.addEventListener("mousedown",this),t.addEventListener("touchstart",this),this.viewer.container.addEventListener("mouseup",this),this.viewer.container.addEventListener("touchend",this),this.viewer.container.addEventListener("mousemove",this),this.viewer.container.addEventListener("touchmove",this),this.viewer.addEventListener(ut.type,this)}destroy(){this.viewer.removeEventListener(ut.type,this),this.viewer.container.removeEventListener("mousemove",this),this.viewer.container.removeEventListener("touchmove",this),this.viewer.container.removeEventListener("mouseup",this),this.viewer.container.removeEventListener("touchend",this),super.destroy()}handleEvent(e){switch(e.type){case"mousedown":this.__onMouseDown(e);break;case"touchstart":this.__onTouchStart(e);break;case"mousemove":this.__onMouseMove(e);break;case"touchmove":this.__onTouchMove(e);break;case"mouseup":this.__onMouseUp(e);break;case"touchend":this.__onTouchEnd(e);break;case ut.type:this.__onKeyPress(e)}}isVisible(e){return this.state.visible&&(!e||!this.state.contentId||this.state.contentId===e)}toggle(){throw new ae("Panel cannot be toggled")}show(e){"string"===typeof e&&(e={content:e});const t=this.isVisible(e.id);this.state.contentId=e.id||null,this.state.visible=!0,this.state.clickHandler&&(this.content.removeEventListener("click",this.state.clickHandler),this.content.removeEventListener("keydown",this.state.keyHandler),this.state.clickHandler=null,this.state.keyHandler=null),e.id&&this.state.width[e.id]?this.container.style.width=this.state.width[e.id]:e.width?this.container.style.width=e.width:this.container.style.width=null,this.content.innerHTML=e.content,this.content.scrollTop=0,this.container.classList.add("psv-panel--open"),H(this.content,"psv-panel-content--no-margin",!0===e.noMargin),e.clickHandler&&(this.state.clickHandler=t=>{e.clickHandler(W(t))},this.state.keyHandler=t=>{t.key===L.Enter&&e.clickHandler(W(t))},this.content.addEventListener("click",this.state.clickHandler),this.content.addEventListener("keydown",this.state.keyHandler),t||setTimeout((()=>{var e;null===(e=this.content.querySelector("a,button,[tabindex]"))||void 0===e||e.focus()}),300)),this.viewer.dispatchEvent(new Dt(this.state.contentId))}hide(e){if(this.isVisible(e)){const e=this.state.contentId;this.state.visible=!1,this.state.contentId=null,this.content.innerHTML=null,this.container.classList.remove("psv-panel--open"),this.state.clickHandler&&(this.content.removeEventListener("click",this.state.clickHandler),this.content.removeEventListener("keydown",this.state.keyHandler),this.state.clickHandler=null,this.state.keyHandler=null),this.viewer.dispatchEvent(new ct(e))}}__onMouseDown(e){e.stopPropagation(),this.__startResize(e.clientX,e.clientY)}__onTouchStart(e){if(e.stopPropagation(),1===e.touches.length){const t=e.touches[0];this.__startResize(t.clientX,t.clientY)}}__onMouseUp(e){this.state.mousedown&&(e.stopPropagation(),this.state.mousedown=!1,this.content.classList.remove(ji))}__onTouchEnd(e){this.state.mousedown&&(e.stopPropagation(),0===e.touches.length&&(this.state.mousedown=!1,this.content.classList.remove(ji)))}__onMouseMove(e){this.state.mousedown&&(e.stopPropagation(),this.__resize(e.clientX,e.clientY))}__onTouchMove(e){if(this.state.mousedown){const t=e.touches[0];this.__resize(t.clientX,t.clientY)}}__onKeyPress(e){this.isVisible()&&e.key===L.Escape&&(this.hide(),e.preventDefault())}__startResize(e,t){this.state.mouseX=e,this.state.mouseY=t,this.state.mousedown=!0,this.content.classList.add(ji)}__resize(e,t){const i=e,s=t,n=Math.max(200,this.container.offsetWidth-(i-this.state.mouseX))+"px";this.state.contentId&&(this.state.width[this.state.contentId]=n),this.container.style.width=n,this.state.mouseX=i,this.state.mouseY=s}},Ri=class extends oi{constructor(e,t){super(e,{className:"psv-tooltip"}),this.state={visible:!0,arrow:0,border:0,state:0,width:0,height:0,pos:"",config:null,data:null,hideTimeout:null},this.content=document.createElement("div"),this.content.className="psv-tooltip-content",this.container.appendChild(this.content),this.arrow=document.createElement("div"),this.arrow.className="psv-tooltip-arrow",this.container.appendChild(this.arrow),this.container.addEventListener("transitionend",this),this.container.addEventListener("touchdown",(e=>e.stopPropagation())),this.container.addEventListener("mousedown",(e=>e.stopPropagation())),this.container.style.top="-1000px",this.container.style.left="-1000px",this.show(t)}handleEvent(e){"transitionend"===e.type&&this.__onTransitionEnd(e)}destroy(){clearTimeout(this.state.hideTimeout),delete this.state.data,super.destroy()}toggle(){throw new ae("Tooltip cannot be toggled")}show(e){if(0!==this.state.state)throw new ae("Initialized tooltip cannot be re-initialized");e.className&&R(this.container,e.className),e.style&&Object.assign(this.container.style,e.style),this.state.state=3,this.update(e.content,e),this.state.data=e.data,this.state.state=1,this.viewer.dispatchEvent(new Ht(this,this.state.data)),this.__waitImages()}update(e,t){this.content.innerHTML=e;const i=this.container.getBoundingClientRect();this.state.width=i.right-i.left,this.state.height=i.bottom-i.top,this.state.arrow=parseInt(B(this.arrow,"border-top-width"),10),this.state.border=parseInt(B(this.container,"border-top-left-radius"),10),this.move(null!==t&&void 0!==t?t:this.state.config),this.__waitImages()}move(e){var t,i,s;if(1!==this.state.state&&3!==this.state.state)throw new ae("Uninitialized tooltip cannot be moved");e.box=null!==(t=null!==(i=e.box)&&void 0!==i?i:null===(s=this.state.config)||void 0===s?void 0:s.box)&&void 0!==t?t:{width:0,height:0},this.state.config=e;const n=this.container,o=this.arrow,r={posClass:Ee(e.position,{allowCenter:!1,cssOrder:!1})||["top","center"],width:this.state.width,height:this.state.height,top:0,left:0,arrowTop:0,arrowLeft:0};this.__computeTooltipPosition(r,e);let a=null,c=null;if(r.top<0?a="bottom":r.top+r.height>this.viewer.state.size.height&&(a="top"),r.left<0?c="right":r.left+r.width>this.viewer.state.size.width&&(c="left"),c||a){const t=_e(r.posClass);a&&(r.posClass[t?0:1]=a),c&&(r.posClass[t?1:0]=c),this.__computeTooltipPosition(r,e)}n.style.top=r.top+"px",n.style.left=r.left+"px",o.style.top=r.arrowTop+"px",o.style.left=r.arrowLeft+"px";const l=r.posClass.join("-");l!==this.state.pos&&(n.classList.remove("psv-tooltip--".concat(this.state.pos)),this.state.pos=l,n.classList.add("psv-tooltip--".concat(this.state.pos)))}hide(){this.container.classList.remove("psv-tooltip--visible"),this.state.state=2,this.viewer.dispatchEvent(new ht(this.state.data));const e=parseFloat(B(this.container,"transition-duration"));this.state.hideTimeout=setTimeout((()=>{this.destroy()}),2*e)}__onTransitionEnd(e){if("transform"===e.propertyName)switch(this.state.state){case 1:this.container.classList.add("psv-tooltip--visible"),this.state.state=3;break;case 2:this.state.state=0,this.destroy()}}__computeTooltipPosition(e,t){const i=this.state.arrow,s=t.top,n=e.height,o=t.left,r=e.width,a=i+this.state.border,c=t.box.width/2+2*i,l=t.box.height/2+2*i;switch(e.posClass.join("-")){case"top-left":e.top=s-l-n,e.left=o+a-r,e.arrowTop=n,e.arrowLeft=r-a-i;break;case"top-center":e.top=s-l-n,e.left=o-r/2,e.arrowTop=n,e.arrowLeft=r/2-i;break;case"top-right":e.top=s-l-n,e.left=o-a,e.arrowTop=n,e.arrowLeft=i;break;case"bottom-left":e.top=s+l,e.left=o+a-r,e.arrowTop=2*-i,e.arrowLeft=r-a-i;break;case"bottom-center":e.top=s+l,e.left=o-r/2,e.arrowTop=2*-i,e.arrowLeft=r/2-i;break;case"bottom-right":e.top=s+l,e.left=o-a,e.arrowTop=2*-i,e.arrowLeft=i;break;case"left-top":e.top=s+a-n,e.left=o-c-r,e.arrowTop=n-a-i,e.arrowLeft=r;break;case"center-left":e.top=s-n/2,e.left=o-c-r,e.arrowTop=n/2-i,e.arrowLeft=r;break;case"left-bottom":e.top=s-a,e.left=o-c-r,e.arrowTop=i,e.arrowLeft=r;break;case"right-top":e.top=s+a-n,e.left=o+c,e.arrowTop=n-a-i,e.arrowLeft=2*-i;break;case"center-right":e.top=s-n/2,e.left=o+c,e.arrowTop=n/2-i,e.arrowLeft=2*-i;break;case"right-bottom":e.top=s-a,e.left=o+c,e.arrowTop=i,e.arrowLeft=2*-i}}__waitImages(){const e=this.content.querySelectorAll("img");if(e.length>0){const t=[];e.forEach((e=>{e.complete||t.push(new Promise((t=>{e.onload=t,e.onerror=t})))})),t.length&&Promise.all(t).then((()=>
1{if(1===this.state.state||3===this.state.state){const e=this.container.getBoundingClientRect();this.state.width=e.right-e.left,this.state.height=e.bottom-e.top,this.move(this.state.config)}}))}}},Fi=class{constructor(e){this.viewer=e,this.config=e.config,this.state=e.state}destroy(){}},Vi=new d.Pq0,Ui=new d.O9p(0,0,0,"ZXY"),Wi=class extends Fi{constructor(e){super(e)}fovToZoomLevel(e){const t=Math.round((e-this.config.minFov)/(this.config.maxFov-this.config.minFov)*100);return d.cj9.clamp(t-2*(t-50),0,100)}zoomLevelToFov(e){return this.config.maxFov+e/100*(this.config.minFov-this.config.maxFov)}vFovToHFov(e){return d.cj9.radToDeg(2*Math.atan(Math.tan(d.cj9.degToRad(e)/2)*this.state.aspect))}hFovToVFov(e){return d.cj9.radToDeg(2*Math.atan(Math.tan(d.cj9.degToRad(e)/2)/this.state.aspect))}getAnimationProperties(e,t,i){const s=!se(t),n=!se(i),o={};let r=null;if(s){const i=this.viewer.getPosition(),s=N(i.yaw,t.yaw);o.yaw={start:i.yaw,end:i.yaw+s},o.pitch={start:i.pitch,end:t.pitch},r=Ce(e,A(i,t))}if(n){const t=this.viewer.getZoomLevel(),s=Math.abs(i-t);o.zoom={start:t,end:i},null===r&&(r=Ce(e,Math.PI/4*s/100))}return r=null===r?"number"===typeof e?e:f:Math.max(f,r),{duration:r,properties:o}}getTransitionOptions(e){var t;let i;const s=null!==(t=this.config.defaultTransition)&&void 0!==t?t:Ti.defaultTransition;return i=!1===e.transition||null===e.transition?null:!0===e.transition?(0,h.A)({},s):"object"===typeof e.transition?(0,h.A)((0,h.A)({},s),e.transition):this.config.defaultTransition,i}textureCoordsToSphericalCoords(e){var t;if(null===(t=this.state.textureData)||void 0===t||!t.panoData)throw new ae("Current adapter does not support texture coordinates or no texture has been loaded");const i=this.viewer.adapter.textureCoordsToSphericalCoords(e,this.state.textureData.panoData);return Ui.equals(this.viewer.renderer.panoramaPose)&&Ui.equals(this.viewer.renderer.sphereCorrection)?i:(this.sphericalCoordsToVector3(i,Vi),Vi.applyEuler(this.viewer.renderer.panoramaPose),Vi.applyEuler(this.viewer.renderer.sphereCorrection),this.vector3ToSphericalCoords(Vi))}sphericalCoordsToTextureCoords(e){var t;if(null===(t=this.state.textureData)||void 0===t||!t.panoData)throw new ae("Current adapter does not support texture coordinates or no texture has been loaded");return Ui.equals(this.viewer.renderer.panoramaPose)&&Ui.equals(this.viewer.renderer.sphereCorrection)||(this.sphericalCoordsToVector3(e,Vi),Oe(Vi,this.viewer.renderer.sphereCorrection),Oe(Vi,this.viewer.renderer.panoramaPose),e=this.vector3ToSphericalCoords(Vi)),this.viewer.adapter.sphericalCoordsToTextureCoords(e,this.state.textureData.panoData)}sphericalCoordsToVector3(e,t){let i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:_;return t||(t=new d.Pq0),t.x=i*-Math.cos(e.pitch)*Math.sin(e.yaw),t.y=i*Math.sin(e.pitch),t.z=i*Math.cos(e.pitch)*Math.cos(e.yaw),t}vector3ToSphericalCoords(e){const t=Math.acos(e.y/Math.sqrt(e.x*e.x+e.y*e.y+e.z*e.z)),i=Math.atan2(e.x,e.z);return{yaw:i<0?-i:2*Math.PI-i,pitch:Math.PI/2-t}}viewerCoordsToVector3(e){const t=this.viewer.renderer.getIntersections(e).filter((e=>e.object.userData[x]));return t.length?t[0].point:null}viewerCoordsToSphericalCoords(e){const t=this.viewerCoordsToVector3(e);return t?this.vector3ToSphericalCoords(t):null}vector3ToViewerCoords(e){const t=e.clone();return t.project(this.viewer.renderer.camera),{x:Math.round((t.x+1)/2*this.state.size.width),y:Math.round((1-t.y)/2*this.state.size.height)}}sphericalCoordsToViewerCoords(e){return this.sphericalCoordsToVector3(e,Vi),this.vector3ToViewerCoords(Vi)}isPointVisible(e){let t,i;if(e instanceof d.Pq0)t=e,i=this.vector3ToViewerCoords(e);else{if(!pe(e))return!1;t=this.sphericalCoordsToVector3(e,Vi),i=this.vector3ToViewerCoords(t)}return t.dot(this.viewer.state.direction)>0&&i.x>=0&&i.x<=this.viewer.state.size.width&&i.y>=0&&i.y<=this.viewer.state.size.height}cleanPosition(e){if("yaw"in e||"pitch"in e){if(!("yaw"in e)||!("pitch"in e))throw new ae("Position is missing 'yaw' or 'pitch'");return{yaw:Te(e.yaw),pitch:Te(e.pitch,!0)}}return this.textureCoordsToSphericalCoords(e)}cleanSphereCorrection(e){return{pan:Te((null===e||void 0===e?void 0:e.pan)||0),tilt:Te((null===e||void 0===e?void 0:e.tilt)||0,!0),roll:Te((null===e||void 0===e?void 0:e.roll)||0,!0,!1)}}cleanPanoramaPose(e){return{pan:d.cj9.degToRad((null===e||void 0===e?void 0:e.poseHeading)||0),tilt:d.cj9.degToRad((null===e||void 0===e?void 0:e.posePitch)||0),roll:d.cj9.degToRad((null===e||void 0===e?void 0:e.poseRoll)||0)}}cleanPanoramaOptions(e,t){return null!==t&&void 0!==t&&t.isEquirectangular?(se(e.zoom)&&!se(t.initialFov)&&(e=(0,h.A)((0,h.A)({},e),{}
1,{zoom:this.fovToZoomLevel(this.hFovToVFov(t.initialFov))})),!se(e.position)||se(t.initialHeading)||se(t.initialPitch)||(e=(0,h.A)((0,h.A)({},e),{},{position:{yaw:Te(t.initialHeading),pitch:Te(t.initialPitch,!0)}})),e):e}},Yi=class e{constructor(){this.$=e.IDLE}is(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return t.some((e=>this.$&e))}set(e){this.$=e}add(e){this.$|=e}remove(e){this.$&=~e}};Yi.IDLE=0,Yi.CLICK=1,Yi.MOVING=2;var Zi=Yi,Bi=class extends Fi{constructor(e){super(e),this.data={startMouseX:0,startMouseY:0,mouseX:0,mouseY:0,pinchDist:0,moveDelta:{yaw:0,pitch:0,zoom:0},accumulatorFactor:0,ctrlKeyDown:!1,dblclickData:null,dblclickTimeout:null,longtouchTimeout:null,twofingersTimeout:null,ctrlZoomTimeout:null},this.step=new Zi,this.keyHandler=new je,this.resizeObserver=new ResizeObserver(J((()=>this.viewer.autoSize()),50)),this.moveThreshold=w*ti.pixelRatio}init(){window.addEventListener("keydown",this,{passive:!1}),window.addEventListener("keyup",this),this.viewer.container.addEventListener("mousedown",this),window.addEventListener("mousemove",this,{passive:!1}),window.addEventListener("mouseup",this),this.viewer.container.addEventListener("touchstart",this,{passive:!1}),window.addEventListener("touchmove",this,{passive:!1}),window.addEventListener("touchend",this,{passive:!1}),this.viewer.container.addEventListener("wheel",this,{passive:!1}),document.addEventListener("fullscreenchange",this),this.resizeObserver.observe(this.viewer.container),this.viewer.addEventListener(Be.type,this),this.viewer.addEventListener(Ut.type,this)}destroy(){window.removeEventListener("keydown",this),window.removeEventListener("keyup",this),this.viewer.container.removeEventListener("mousedown",this),window.removeEventListener("mousemove",this),window.removeEventListener("mouseup",this),this.viewer.container.removeEventListener("touchstart",this),window.removeEventListener("touchmove",this),window.removeEventListener("touchend",this),this.viewer.container.removeEventListener("wheel",this),document.removeEventListener("fullscreenchange",this),this.resizeObserver.disconnect(),this.viewer.removeEventListener(Be.type,this),this.viewer.removeEventListener(Ut.type,this),clearTimeout(this.data.dblclickTimeout),clearTimeout(this.data.longtouchTimeout),clearTimeout(this.data.twofingersTimeout),clearTimeout(this.data.ctrlZoomTimeout),super.destroy()}handleEvent(e){switch(e.type){case"keydown":this.__onKeyDown(e);break;case"keyup":this.__onKeyUp();break;case"mousemove":this.__onMouseMove(e);break;case"mouseup":this.__onMouseUp(e);break;case"touchmove":this.__onTouchMove(e);break;case"touchend":this.__onTouchEnd(e);break;case"fullscreenchange":this.__onFullscreenChange();break;case Be.type:this.__applyMoveDelta();break;case Ut.type:this.__clearMoveDelta()}if(!Y(e,"."+C))switch(e.type){case"mousedown":this.__onMouseDown(e);break;case"touchstart":this.__onTouchStart(e);break;case"wheel":this.__onMouseWheel(e)}}__onKeyDown(e){var t;if(this.config.mousewheelCtrlKey&&(this.data.ctrlKeyDown=e.key===L.Control,this.data.ctrlKeyDown&&(clearTimeout(this.data.ctrlZoomTimeout),this.viewer.overlay.hide(M.CTRL_ZOOM))),!this.viewer.dispatchEvent(new ut(e.key,e)))return;if(!this.state.keyboardEnabled)return;const i=null===(t=this.config.keyboardActions)||void 0===t?void 0:t[e.key];if("function"===typeof i)return i(this.viewer,e),void e.preventDefault();if(!(e.ctrlKey||e.altKey||e.shiftKey||e.metaKey)&&i&&!this.keyHandler.pending){switch("ZOOM_IN"!==i&&"ZOOM_OUT"!==i&&this.viewer.stopAll(),i){case"ROTATE_UP":this.viewer.dynamics.position.roll({pitch:!1});break;case"ROTATE_DOWN":this.viewer.dynamics.position.roll({pitch:!0});break;case"ROTATE_RIGHT":this.viewer.dynamics.position.roll({yaw:!1});break;case"ROTATE_LEFT":this.viewer.dynamics.position.roll({yaw:!0});break;case"ZOOM_IN":this.viewer.dynamics.zoom.roll(!1);break;case"ZOOM_OUT":this.viewer.dynamics.zoom.roll(!0)}this.keyHandler.down(i),e.preventDefault()}}__onKeyUp(){this.data.ctrlKeyDown=!1,this.state.keyboardEnabled&&this.keyHandler.up((e=>{"ZOOM_IN"===e||"ZOOM_OUT"===e?this.viewer.dynamics.zoom.stop():(this.viewer.dynamics.position.stop(),this.viewer.resetIdleTimer())}))}__onMouseDown(e){this.step.add(Zi.CLICK),this.data.startMouseX=e.clientX,this.data.startMouseY=e.clientY}__onMouseUp(e){this.step.is(Zi.CLICK,Zi.MOVING)&&this.__stopMove(e.clientX,e.clientY,e,2===e.button)}__onMouseMove(e){this.config.mousemove&&this.step.is(Zi.CLICK,Zi.MOVING)&&(e.preventDefault(),this.__doMove(e.clientX,e.clientY)),this.__handleObjectsEvents(e)}__onTouchStart(e){1===e.touches.length?(this.step.add(Zi.CLICK),this.data.startMouseX=e.touches[0].clientX,this.data.startMouseY=e.touches[0].clientY,this.data.longtouchTimeout||(this.data.longtouchTimeout=setTimeout((()=>{const t=e.touches[0];this.__stopMove(t.clientX,t.clientY,e,!0),this.data.longtouchTimeout=null}),y))):2===e.touches.length&&(this.step.set(Zi.IDLE),this.__cancelLongTouch(),this.config.mousemove&&(this.__cancelTwoFingersOverlay(),this.__startMoveZoom(e),e.preventDefault()))}__onTouchEnd(e){if(this.__cancelLongTouch(),this.step.is(Zi.CLICK,Zi.MOVING))if(e.preventDefault(),this.__cancelTwoFingersOverlay(),1===e.touches.length)this.__stopMove(this.data.mouseX,this.data.mouseY);else if(0===e.touches.length){const t=e.changedTouches[0];this.__stopMove(t.clientX,t.clientY,e)}}__onTouchMove(e){if(this.__cancelLongTouch(),this.config.mousemove)if(1===e.touches.length){if(this.config.touchmoveTwoFingers)this.step.is(Zi.CLICK)&&!this.data.twofingersTimeout&&(this.data.twofingersTimeout=setTimeout((()=>{this.viewer.overlay.show({id:M.TWO_FINGERS,image:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
1<path fill="currentColor" d="M33.38 33.2a1.96 1.96 0 0 0 1.5-3.23 10.61 10.61 0 0 1 7.18-17.51c.7-.06 1.31-.49 1.61-1.12a13.02 13.02 0 0 1 11.74-7.43c7.14 0 12.96 5.8 12.96 12.9 0 3.07-1.1 6.05-3.1 8.38-.7.82-.61 2.05.21 2.76.83.7 2.07.6 2.78-.22a16.77 16.77 0 0 0 4.04-10.91C72.3 7.54 64.72 0 55.4 0a16.98 16.98 0 0 0-14.79 8.7 14.6 14.6 0 0 0-12.23 14.36c0 3.46 1.25 6.82 3.5 9.45.4.45.94.69 1.5.69m45.74 43.55a22.13 22.13 0 0 1-5.23 12.4c-4 4.55-9.53 6.86-16.42 6.86-12.6 0-20.1-10.8-20.17-10.91a1.82 1.82 0 0 0-.08-.1c-5.3-6.83-14.55-23.82-17.27-28.87-.05-.1 0-.21.02-.23a6.3 6.3 0 0 1 8.24 1.85l9.38 12.59a1.97 1.97 0 0 0 3.54-1.17V25.34a4 4 0 0 1 1.19-2.87 3.32 3.32 0 0 1 2.4-.95c1.88.05 3.4 1.82 3.4 3.94v24.32a1.96 1.96 0 0 0 3.93 0v-33.1a3.5 3.5 0 0 1 7 0v35.39a1.96 1.96 0 0 0 3.93 0v-.44c.05-2.05 1.6-3.7 3.49-3.7 1.93 0 3.5 1.7 3.5 3.82v5.63c0 .24.04.48.13.71l.1.26a1.97 1.97 0 0 0 3.76-.37c.33-1.78 1.77-3.07 3.43-3.07 1.9 0 3.45 1.67 3.5 3.74l-1.77 18.1zM77.39 51c-1.25 0-2.45.32-3.5.9v-.15c0-4.27-3.33-7.74-7.42-7.74-1.26 0-2.45.33-3.5.9V16.69a7.42 7.42 0 0 0-14.85 0v1.86a7 7 0 0 0-3.28-.94 7.21 7.21 0 0 0-5.26 2.07 7.92 7.92 0 0 0-2.38 5.67v37.9l-5.83-7.82a10.2 10.2 0 0 0-13.35-2.92 4.1 4.1 0 0 0-1.53 5.48C20 64.52 28.74 80.45 34.07 87.34c.72 1.04 9.02 12.59 23.4 12.59 7.96 0 14.66-2.84 19.38-8.2a26.06 26.06 0 0 0 6.18-14.6l1.78-18.2v-.2c0-4.26-3.32-7.73-7.42-7.73z"/>\x3c!--Created by AomAm from the Noun Project--\x3e</svg>\n',title:this.config.lang.twoFingers})}),b));else if(this.step.is(Zi.CLICK,Zi.MOVING)){e.preventDefault();const t=e.touches[0];this.__doMove(t.clientX,t.clientY)}}else this.__doMoveZoom(e),this.__cancelTwoFingersOverlay()}__cancelLongTouch(){this.data.longtouchTimeout&&(clearTimeout(this.data.longtouchTimeout),this.data.longtouchTimeout=null)}__cancelTwoFingersOverlay(){this.config.touchmoveTwoFingers&&(this.data.twofingersTimeout&&(clearTimeout(this.data.twofingersTimeout),this.data.twofingersTimeout=null),this.viewer.overlay.hide(M.TWO_FINGERS))}__onMouseWheel(e){if(!this.config.mousewheel||!e.deltaY)return;if(this.config.mousewheelCtrlKey&&!this.data.ctrlKeyDown)return this.viewer.overlay.show({id:M.CTRL_ZOOM,image:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="10 17 79 79"><path fill="currentColor" d="M38.1 29.27c-.24 0-.44.2-.44.45v10.7a.45.45 0 00.9 0v-10.7c0-.25-.2-.45-.45-.45zm10.2 26.66a11.54 11.54 0 01-8.48-6.14.45.45 0 10-.8.41 12.45 12.45 0 009.22 6.62.45.45 0 00.07-.9zm24.55-13.08a23.04 23.04 0 00-22.56-23v7.07l-.01.05a2.83 2.83 0 012.39 2.78v14.03l.09-.02h8.84v-9.22a.45.45 0 11.9 0v9.22h10.35v-.9zm0 27.33V44.66H62.5c-.02 2.01-.52 4-1.47 5.76a.45.45 0 01-.61.18.45.45 0 01-.19-.61 11.54 11.54 0 001.36-5.33h-8.83l-.1-.01a2.83 2.83 0 01-2.83 2.84h-.04-.04a2.83 2.83 0 01-2.83-2.83v-14.9a2.82 2.82 0 012.47-2.8v-7.11a23.04 23.04 0 00-22.57 23v.91h14.72V29.88a8.2 8.2 0 015.02-7.57c.22-.1.5.01.59.24.1.23-.01.5-.24.6a7.3 7.3 0 00-4.47 6.73v13.88h3.9a.45.45 0 110 .9h-3.9v.15a7.32 7.32 0 0011.23 6.17.45.45 0 01.49.76 8.22 8.22 0 01-12.62-6.93v-.15H26.82v25.52a23.04 23.04 0 0023.01 23.01 23.04 23.04 0 0023.02-23.01zm1.8-27.33v27.33A24.85 24.85 0 0149.84 95a24.85 24.85 0 01-24.82-24.82V42.85a24.85 24.85 0 0124.82-24.82 24.85 24.85 0 0124.83 24.82zM57.98 29.88v9.36a.45.45 0 11-.9 0v-9.36a7.28 7.28 0 00-3.4-6.17.45.45 0 01.49-.76 8.18 8.18 0 013.8 6.93z"/>\x3c!-- Created by Icon Island from the Noun Project --\x3e</svg>\n',title:this.config.lang.ctrlZoom}),clearTimeout(this.data.ctrlZoomTimeout),void(this.data.ctrlZoomTimeout=setTimeout((()=>this.viewer.overlay.hide(M.CTRL_ZOOM)),E));e.preventDefault(),e.stopPropagation();const t=e.deltaY/Math.abs(e.deltaY)*5*this.config.zoomSpeed;0!==t&&this.viewer.dynamics.zoom.step(-t,5)}__onFullscreenChange(){const e=this.viewer.isFullscreenEnabled();"fullscreen"===this.config.keyboard&&(e?this.viewer.startKeyboardControl():this.viewer.stopKeyboardControl()),this.viewer.dispatchEvent(new it(e))}__resetMove(){this.step.set(Zi.IDLE),this.data.mouseX=0,this.data.mouseY=0,this.data.startMouseX=0,this.data.startMouseY=0}__startMoveZoom(e){this.viewer.stopAll(),this.__resetMove();const t=X(e);this.step.set(Zi.MOVING),this.data.accumulatorFactor=this.config.moveInertia,({distance:this.data.pinchDist,center:{x:this.data.mouseX,y:this.data.mouseY}}=t)}__stopMove(e,t,i){let s=arguments.length>3&&void 0!==arguments[3]&&arguments[3];this.step.is(Zi.CLICK)&&!this.__moveThresholdReached(e,t)&&this.__doClick(e,t,i,s),this.config.moveInertia&&(this.data.accumulatorFactor=Math.pow(this.config.moveInertia,.5)),this.__resetMove(),this.viewer.resetIdleTimer()}__doClick(e,t,i){let s=arguments.length>3&&void 0!==arguments[3]&&arguments[3];const n=this.viewer.container.getBoundingClientRect(),o=e-n.left,r=t-n.top,a=this.viewer.renderer.getIntersections({x:o,y:r}),c=a.find((e=>e.object.userData[x]));if(c){const n=this.viewer.dataHelper.vector3ToSphericalCoords(c.point),h={rightclick:s,originalEvent:i,target:W(i),clientX:e,clientY:t,viewerX:o,viewerY:r,y
1aw:n.yaw,pitch:n.pitch,objects:a.map((e=>e.object)).filter((e=>!e.userData[x]))};try{const e=this.viewer.dataHelper.sphericalCoordsToTextureCoords(h);Object.assign(h,e)}catch(l){}this.data.dblclickTimeout?(Math.abs(this.data.dblclickData.clientX-h.clientX)<this.moveThreshold&&Math.abs(this.data.dblclickData.clientY-h.clientY)<this.moveThreshold&&this.viewer.dispatchEvent(new et(this.data.dblclickData)),clearTimeout(this.data.dblclickTimeout),this.data.dblclickTimeout=null,this.data.dblclickData=null):(this.viewer.dispatchEvent(new Ge(h)),this.data.dblclickData=te(h),this.data.dblclickTimeout=setTimeout((()=>{this.data.dblclickTimeout=null,this.data.dblclickData=null}),g))}}__handleObjectsEvents(e){if(!ie(this.state.objectsObservers)&&e.composedPath().includes(this.viewer.container)){const t=Z(this.viewer.container),i={x:e.clientX-t.x,y:e.clientY-t.y},s=this.viewer.renderer.getIntersections(i),n=(t,s,n)=>{this.viewer.dispatchEvent(new n(e,t,i,s))};for(const[e,o]of Object.entries(this.state.objectsObservers)){const t=s.find((t=>t.object.userData[e]));
vendor: 4,085 bytes, line 1
1t?(o&&t.object!==o&&(n(o,e,qt),this.state.objectsObservers[e]=null),o?n(t.object,e,$t):(this.state.objectsObservers[e]=t.object,n(t.object,e,Xt))):o&&(n(o,e,qt),this.state.objectsObservers[e]=null)}}}__doMove(e,t){if(this.step.is(Zi.CLICK)&&this.__moveThresholdReached(e,t))this.viewer.stopAll(),this.__resetMove(),this.step.set(Zi.MOVING),this.data.mouseX=e,this.data.mouseY=t,this.data.accumulatorFactor=this.config.moveInertia;else if(this.step.is(Zi.MOVING)){const i=(e-this.data.mouseX)*Math.cos(this.state.roll)-(t-this.data.mouseY)*Math.sin(this.state.roll),s=(t-this.data.mouseY)*Math.cos(this.state.roll)+(e-this.data.mouseX)*Math.sin(this.state.roll),n={yaw:this.config.moveSpeed*(i/this.state.size.width)*d.cj9.degToRad(this.state.hFov),pitch:this.config.moveSpeed*(s/this.state.size.height)*d.cj9.degToRad(this.state.vFov)};this.data.moveDelta.yaw+=n.yaw,this.data.moveDelta.pitch+=n.pitch,this.data.mouseX=e,this.data.mouseY=t}}__moveThresholdReached(e,t){return Math.abs(e-this.data.startMouseX)>=this.moveThreshold||Math.abs(t-this.data.startMouseY)>=this.moveThreshold}__doMoveZoom(e){if(this.step.is(Zi.MOVING)){e.preventDefault();const t=X(e);this.__doMove(t.center.x,t.center.y),this.data.moveDelta.zoom+=this.config.zoomSpeed*((t.distance-this.data.pinchDist)/ti.pixelRatio),this.data.pinchDist=t.distance}}__applyMoveDelta(){const e=.001;if(Math.abs(this.data.moveDelta.yaw)>0||Math.abs(this.data.moveDelta.pitch)>0){const t=this.viewer.getPosition();this.viewer.rotate({yaw:t.yaw-this.data.moveDelta.yaw*(1-this.config.moveInertia),pitch:t.pitch+this.data.moveDelta.pitch*(1-this.config.moveInertia)}),this.data.moveDelta.yaw*=this.data.accumulatorFactor,this.data.moveDelta.pitch*=this.data.accumulatorFactor,Math.abs(this.data.moveDelta.yaw)<=e&&(this.data.moveDelta.yaw=0),Math.abs(this.data.moveDelta.pitch)<=e&&(this.data.moveDelta.pitch=0)}if(Math.abs(this.data.moveDelta.zoom)>0){const t=this.viewer.getZoomLevel();this.viewer.zoom(t+this.data.moveDelta.zoom*(1-this.config.moveInertia)),this.data.moveDelta.zoom*=this.config.moveInertia,Math.abs(this.data.moveDelta.zoom)<=e&&(this.data.moveDelta.zoom=0)}}__clearMoveDelta(){this.data.moveDelta.yaw=0,this.data.moveDelta.pitch=0,this.data.moveDelta.zoom=0}};d.ppV.enabled=!1;var Xi=new d.I9Y,Ki=new d.kn4,qi=new d.NRn,Gi=class extends Fi{constructor(e){super(e),this.frustumNeedsUpdate=!0,this.renderer=new u.JeP(this.config.rendererParameters),this.renderer.setPixelRatio(ti.pixelRatio),this.renderer.outputColorSpace=d.Zr2,this.renderer.toneMapping=d.kyO,this.renderer.domElement.className="psv-canvas",this.renderer.domElement.style.background=this.config.canvasBackground,this.scene=new d.Z58,this.camera=new d.ubm(50,16/9,.1,2*_),this.camera.matrixAutoUpdate=!1;const t=new d.eaF(new d.Gu$(_).scale(-1,1,1),new d.V9B({opacity:0,transparent:!0,depthTest:!1,depthWrite:!1}));t.userData={[x]:!0},this.scene.add(t),this.raycaster=new d.tBo,this.frustum=new d.PPD,this.container=document.createElement("div"),this.container.className="psv-canvas-container",this.container.appendChild(this.renderer.domElement),this.viewer.container.appendChild(this.container),this.container.addEventListener("contextmenu",(e=>e.preventDefault())),this.viewer.addEventListener(Ft.type,this),this.viewer.addEventListener(Yt.type,this),this.viewer.addEventListener(Ct.type,this),this.viewer.addEventListener(Mt.type,this),this.viewer.addEventListener(Je.type,this),this.hide()}get panoramaPose(){return this.mesh.rotation}get sphereCorrection(){return this.meshContainer.rotation}init(){this.show(),this.renderer.setAnimationLoop((e=>this.__renderLoop(e)))}destroy(){this.renderer.setAnimationLoop(null),this.cleanScene(this.scene),this.renderer.dispose(),this.viewer.container.removeChild(this.container),this.viewer.removeEventListener(Ft.type,this),this.viewer.removeEventListener(Yt.type,this),this.viewer.removeEventListener(Ct.type,this),this.viewer.removeEventListener(Mt.type,this),this.viewer.removeEventListener(Je.type,this),super.destroy()}handleEvent(e){switch(e.type){case Ft.type:this.__onSizeUpdated();break;
1case Yt.type:this.__onZoomUpdated();break;case Ct.type:case Mt.type:this.__onPositionUpdated();break;case Je.type:e.containsOptions("fisheye")&&this.__onPositionUpdated(),e.containsOptions("canvasBackground")&&(this.renderer.domElement.style.background=this.config.canvasBackground)}}hide(){this.container.style.opacity="0"}show(){this.container.style.opacity="1"}setCustomRenderer(e){this.customRenderer=e?e(this.renderer):null,this.viewer.needsUpdate()}__onSizeUpdated(){this.renderer.setSize(this.state.size.width,this.state.size.height),this.camera.aspect=this.state.aspect,this.camera.updateProjectionMatrix(),this.viewer.needsUpdate(),this.frustumNeedsUpdate=!0}__onZoomUpdated(){this.camera.fov=this.state.vFov,this.camera.updateProjectionMatrix(),this.viewer.needsUpdate(),this.frustumNeedsUpdate=!0}__onPositionUpdated(){this.camera.position.set(0,0,0),this.camera.lookAt(this.state.direction),this.config.fisheye&&this.camera.position.copy(this.state.direction).multiplyScalar(this.config.fisheye/2).negate(),this.camera.rotateZ(-this.state.roll),this.camera.updateMatrix(),this.camera.updateMatrixWorld(),this.viewer.needsUpdate(),this.frustumNeedsUpdate=!0}__renderLoop(e){const t=this.timestamp?e-this.timestamp:0;this.timestamp=e,this.viewer.dispatchEvent(new Be(e,t)),this.viewer.dynamics.update(t),(this.state.needsUpdate||this.state.continuousUpdateCount>0)&&(this.state.needsUpdate=!1,(this.customRenderer||this.renderer).render(this.scene,this.camera),this.viewer.dispatchEvent(new Pt))}setTexture(e){this.meshContainer||(this.meshContainer=new d.YJl,this.scene.add(this.meshContainer)),this.state.textureData&&this.viewer.adapter.disposeTexture(this.state.textureData),this.mesh&&(this.meshContainer.remove(this.mesh),this.viewer.adapter.disposeMesh(this.mesh)),this.mesh=this.viewer.adapter.createMesh(e.panoData),this.viewer.adapter.setTexture(this.mesh,e,!1),this.meshContainer.add(this.mesh),this.state.textureData=e,this.viewer.needsUpdate()}setPanoramaPose(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.mesh;const i=this.viewer.dataHelper.cleanPanoramaPose(e);t.rotation.set(i.tilt,i.pan,i.roll,"YXZ")}setSphereCorrection(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.meshContainer;const i=this.viewer.dataHelper.cleanSphereCorrection(e);t.rotation.set(i.tilt,i.pan,i.roll,"YXZ")}transition(e,t,i){const s="fade"===i.effect||i.rotation,n=!se(t.position),o=!se(t.zoom),r=new Ye(n?this.viewer.dataHelper.cleanPosition(t.position):void 0,t.zoom);this.viewer.dispatchEvent(r);const a=new d.YJl,c=this.viewer.adapter.createMesh(e.panoData);if(this.viewer.adapter.setTexture(c,e,!0),this.viewer.adapter.setTextureOpacity(c,0),this.setPanoramaPose(e.panoData,c),this.setSphereCorrection(t.sphereCorrection,a),n&&!i.rotation){const e=this.viewer.getPosition(),t=new d.Pq0(0,1,0);a.rotateOnWorldAxis(t,r.position.yaw-e.yaw);const i=new d.Pq0(0,1,0).cross(this.camera.getWorldDirection(new d.Pq0)).normalize();a.rotateOnWorldAxis(i,r.position.pitch-e.pitch)}a.add(c),this.scene.add(a),this.renderer.setRenderTarget(new d.nWS),this.renderer.render(this.scene,this.camera),this.renderer.setRenderTarget(null);const{duration:l,properties:u}=this.viewer.dataHelper.getAnimationProperties(i.speed,i.rotation?r.position:null,s?r.zoomLevel:null),p=new Ne({properties:(0,h.A)((0,h.A)({},u),{},{opacity:{start:0,end:1}}),duration:l,easing:"inOutCubic",onTick:e=>{switch(i.effect){case"fade":this.viewer.adapter.setTextureOpacity(c,e.opacity);break;case"black":case"white":e.opacity<.5?this.renderer.toneMappingExposure="black"===i.effect?d.cj9.mapLinear(e.opacity,0,.5,1,0):d.cj9.mapLinear(e.opacity,0,.5,1,4):(this.renderer.toneMappingExposure="black"===i.effect?d.cj9.mapLinear(e.opacity,.5,1,0,1):d.cj9.mapLinear(e.opacity,.5,1,4,1),this.mesh.visible=!1,this.viewer.adapter.setTextureOpacity(c,1),o&&!s&&this.viewer.dynamics.zoom.setValue(r.zoomLevel))}n&&i.rotation&&this.viewer.dynamics.position.setValue({yaw:e.yaw,pitch:e.pitch}),o&&s&&this.viewer.dynamics.zoom.setValue(e.zoom),this.viewer.needsUpdate()}});return p.then((s=>{a.remove(c),this.scene.remove(a),s?(this.viewer.adapter.disposeTexture(this.state.textureData),this.meshContainer.remove(this.mesh),this.viewer.adapter.disposeMesh(this.mesh),this.mesh=c,this.meshContainer.add(c),this.state.textureData=e,this.setPanoramaPose(e.panoData),this.setSphereCorrection(t.sphereCorrection),n&&!i.rotation&&this.viewer.rotate(t.position)):(this.viewer.adapter.disposeTexture(e),this.viewer.adapter.disposeMesh(c))})),p}getIntersections(e){var t;Xi.x=2*e.x/this.state.size.width-1,Xi.y=-2*e.y/this.state.size.height+1,this.raycaster.setFromCamera(Xi,this.camera);const i=this.raycaster.intersectObjects(this.scene.children,!0).filter((e=>e.object.visible)).filter((e=>e.object.isMesh&&!!e.object.userData));return null!==(t=this.customRenderer)&&void 0!==t&&t.getIntersections&&i.push(...this.customRenderer.getIntersections(this.raycaster,Xi)),i}isObjectVisible(e){if(!e)return!1;if(this.frustumNeedsUpdate&&(Ki.multiplyMatrices(this.camera.projectionMatrix,this.camera.matrixWorldInverse),this.frustum.setFromProjectionMatrix(Ki),this.frustumNeedsUpdate=!1),e.isVector3)return this.frustum.containsPoint(e);if(e.isMesh&&e.geometry){const t=e;return t.geometry.boundingBox||t.geometry.computeBoundingBox(),qi.copy(t.geometry.boundingBox).applyMatrix4(t.matrixWorld),this.frustum.intersectsBox(qi)}return!!e.isObject3D&&this.frustum.intersectsObject(e)}
1addObject(e){this.scene.add(e)}removeObject(e){this.scene.remove(e)}cleanScene(e){const t=e=>{var t;null===(t=e.map)||void 0===t||t.dispose(),e.uniforms&&Object.values(e.uniforms).forEach((e=>{var t,i;null===(t=e.value)||void 0===t||null===(i=t.dispose)||void 0===i||i.call(t)})),e.dispose()};e.traverse((i=>{var s,n;(null===(s=i.geometry)||void 0===s||s.dispose(),i.material&&(Array.isArray(i.material)?i.material.forEach((e=>{t(e)})):t(i.material)),i instanceof d.Z58)||(null===(n=i.dispose)||void 0===n||n.call(i));i!==e&&this.cleanScene(i)}))}},$i=class extends d.aHM{load(e,t,i,s,n){const o=new Request(e,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?"include":"same-origin"});fetch(o,{signal:n}).then((e=>{if(200===e.status||0===e.status){const t=e.body.getReader(),n=e.headers.get("Content-Length")||e.headers.get("X-File-Size"),o=n?parseInt(n):0,r=0!==o;let a=0;const c=new ReadableStream({start(e){!function n(){t.read().then((t=>{let{done:s,value:c}=t;if(s)e.close();else{a+=c.byteLength;const t=new ProgressEvent("progress",{lengthComputable:r,loaded:a,total:o});i(t),e.enqueue(c),n()}})).catch((e=>{s(e)}))}()}});return new Response(c)}throw new Error('fetch for "'.concat(e.url,'" responded with ').concat(e.status,": ").concat(e.statusText))})).then((e=>e.blob())).then((e=>{t(e)})).catch((e=>{s(e)}))}},Ji=class extends d.aHM{load(e,t,i,s){const n=document.createElement("img");function o(){c(),t(this)}function r(e){if(c(),null!==s&&void 0!==s&&s.aborted){const e=new Error;e.name="AbortError",e.message="The operation was aborted.",i(e)}else i(e)}function a(){n.src=""}function c(){n.removeEventListener("load",o,!1),n.removeEventListener("error",r,!1),null===s||void 0===s||s.removeEventListener("abort",a,!1)}return n.addEventListener("load",o,!1),n.addEventListener("error",r,!1),null===s||void 0===s||s.addEventListener("abort",a,!1),e.startsWith("data:")||void 0===this.crossOrigin||(n.crossOrigin=this.crossOrigin),n.src=e,n}},Qi=class extends Fi{constructor(e){super(e),this.abortCtrl={},this.fileLoader=new $i,this.imageLoader=new Ji,this.config.withCredentials&&(this.fileLoader.setWithCredentials(!0),this.imageLoader.setCrossOrigin("use-credentials"))}destroy(){this.abortLoading(),super.destroy()}abortLoading(){Object.values(this.abortCtrl).forEach((e=>e.abort())),this.abortCtrl={}}loadFile(e,t,i){const s=zi.get(e,i);if(s){if(s instanceof Blob)return null===t||void 0===t||t(100),Promise.resolve(s);zi.remove(e,i)}return this.config.requestHeaders&&this.fileLoader.setRequestHeader(this.config.requestHeaders(e)),new Promise(((s,n)=>{let o=0;null===t||void 0===t||t(o),this.fileLoader.load(e,(n=>{o=100,null===t||void 0===t||t(o),zi.add(e,i,n),s(n)}),(e=>{if(e.lengthComputable){const i=e.loaded/e.total*100;i>o&&(o=i,null===t||void 0===t||t(o))}}),(e=>{n(e)}),this.__getAbortSignal(i))}))}loadImage(e,t,i){const s=zi.get(e,i);return s?(null===t||void 0===t||t(100),s instanceof Blob?this.blobToImage(s):Promise.resolve(s)):t||this.config.requestHeaders?this.loadFile(e,t,i).then((e=>this.blobToImage(e))):new Promise(((t,s)=>{this.imageLoader.load(e,(s=>{zi.add(e,i,s),t(s)}),(e=>{s(e)}),this.__getAbortSignal(i))}))}blobToImage(e){return new Promise(((t,i)=>{const s=document.createElement("img");s.onload=()=>{URL.revokeObjectURL(s.src),t(s)},s.onerror=i,s.src=URL.createObjectURL(e)}))}preloadPanorama(e){return this.viewer.adapter.supportsPreload(e)?this.viewer.adapter.loadTexture(e,!1):Promise.reject(new ae("Current adapter does not support preload"))}dispatchProgress(e){this.viewer.loader.setProgress(e),this.viewer.dispatchEvent(new vt(Math.round(e)))}__getAbortSignal(e){var t;return e?(null!==(t=this.abortCtrl[e])&&void 0!==t&&t.signal.aborted&&delete this.abortCtrl[e],this.abortCtrl[e]||(this.abortCtrl[e]=new AbortController),this.abortCtrl[e].signal):null}},es=class extends Fi{constructor(e){super(e),this.zoom=new Ae((e=>{this.viewer.state.vFov=this.viewer.dataHelper.zoomLevelToFov(e),this.viewer.state.hFov=this.viewer.dataHelper.vFovToHFov(this.viewer.state.vFov),this.viewer.dispatchEvent(new Yt(e))}),{defaultValue:this.viewer.config.defaultZoomLvl,min:0,max:100,wrap:!1}),this.position=new De((e=>{this.viewer.dataHelper.sphericalCoordsToVector3(e,this.viewer.state.direction),this.viewer.dispatchEvent(new Ct
1(e))}),{yaw:new Ae(null,{defaultValue:this.config.defaultYaw,min:0,max:2*Math.PI,wrap:!0}),pitch:new Ae(null,{defaultValue:this.config.defaultPitch,min:-Math.PI/2,max:Math.PI/2,wrap:!1})}),this.roll=new Ae((e=>{this.viewer.state.roll=e,this.viewer.dispatchEvent(new Mt(e))}),{defaultValue:0,min:-Math.PI,max:Math.PI,wrap:!1}),this.updateSpeeds()}updateSpeeds(){this.zoom.setSpeed(50*this.config.zoomSpeed),this.position.setSpeed(d.cj9.degToRad(50*this.config.moveSpeed)),this.roll.setSpeed(d.cj9.degToRad(50*this.config.moveSpeed))}update(e){this.zoom.update(e),this.position.update(e),this.roll.update(e)}},ts=class{constructor(){this.ready=!1,this.needsUpdate=!1,this.continuousUpdateCount=0,this.keyboardEnabled=!1,this.direction=new d.Pq0(0,0,_),this.roll=0,this.vFov=60,this.hFov=60,this.aspect=1,this.animation=null,this.transitionAnimation=null,this.loadingPromise=null,this.idleTime=-1,this.objectsObservers={},this.size={width:0,height:0}}},is=class extends Ve{constructor(e){var t,i;if(super(),this.plugins={},this.children=[],this.parent=j(e.container),!this.parent)throw new ae('"container" element not found.');this.parent[x]=this,this.container=document.createElement("div"),this.container.classList.add("psv-container"),this.parent.appendChild(this.container),Se(this.parent),Pe(this.container,"core"),this.state=new ts,this.config=Oi(e),this.__setSize(this.config.size),this.overlay=new Di(this);try{ti.load()}catch(n){return void this.showError(this.config.lang.webglError)}zi.init(),this.adapter=new this.config.adapter[0](this,this.config.adapter[1]),this.renderer=new Gi(this),this.textureLoader=new Qi(this),this.eventsHandler=new Bi(this),this.dataHelper=new Wi(this),this.dynamics=new es(this),null===(t=(i=this.adapter).init)||void 0===t||t.call(i),this.loader=new Ni(this),this.navbar=new Si(this),this.panel=new Hi(this),this.notification=new Ai(this),this.autoSize(),this.setCursor(null),ce(ti.isTouchEnabled,(e=>{H(this.container,"psv--is-touch",e)})),this.config.plugins.forEach((e=>{let[t,i]=e;this.plugins[t.id]=new t(this,i)}));for(const o of Object.values(this.plugins)){var s;null===(s=o.init)||void 0===s||s.call(o)}this.config.navbar&&this.navbar.setButtons(this.config.navbar),this.state.loadingPromise||(this.config.panorama?this.setPanorama(this.config.panorama,{sphereCorrection:this.config.sphereCorrection,panoData:this.config.panoData}):this.loader.show())}destroy(){var e,t,i,s,n,o;this.stopAll(),this.stopKeyboardControl(),this.exitFullscreen();for(const[r,a]of Object.entries(this.plugins))a.destroy(),delete this.plugins[r];this.children.slice().forEach((e=>e.destroy())),this.children.length=0,null===(e=this.eventsHandler)||void 0===e||e.destroy(),null===(t=this.renderer)||void 0===t||t.destroy(),null===(i=this.textureLoader)||void 0===i||i.destroy(),null===(s=this.dataHelper)||void 0===s||s.destroy(),null===(n=this.adapter)||void 0===n||n.destroy(),null===(o=this.dynamics)||void 0===o||o.destroy(),this.parent.removeChild(this.container),delete this.parent[x]}init(){this.eventsHandler.init(),this.renderer.init(),this.config.navbar&&this.navbar.show(),"always"===this.config.keyboard&&this.startKeyboardControl(),this.resetIdleTimer(),this.state.ready=!0,this.dispatchEvent(new Ot)}resetIdleTimer(){this.state.idleTime=performance.now()}disableIdleTimer(){this.state.idleTime=-1}getPlugin(e){if("string"===typeof e)return this.plugins[e];{const t=Ci(e);return t?this.plugins[t.id]:null}}getPosition(){return this.dataHelper.cleanPosition(this.dynamics.position.current)}getZoomLevel(){return this.dynamics.zoom.current}getSize(){return(0,h.A)({},this.state.size)}isFullscreenEnabled(){return K(this.parent,ti.isIphone)}needsUpdate(){this.state.needsUpdate=!0}needsContinuousUpdate(e){e?this.state.continuousUpdateCount++:this.state.continuousUpdateCount>0&&this.state.continuousUpdateCount--}autoSize(){this.container.clientWidth===this.state.size.width&&this.container.clientHeight===this.state.size.height||(this.state.size.width=Math.round(this.container.clientWidth),this.state.size.height=Math.round(this.container.clientHeight),this.state.as
1pect=this.state.size.width/this.state.size.height,this.state.hFov=this.dataHelper.vFovToHFov(this.state.vFov),this.dispatchEvent(new Ft(this.getSize())),this.navbar.autoSize())}setPanorama(e){var t;let i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.textureLoader.abortLoading(),null===(t=this.state.transitionAnimation)||void 0===t||t.cancel();const s=this.dataHelper.getTransitionOptions(i);void 0===i.showLoader&&(i.showLoader=!0),void 0===i.caption&&(i.caption=this.config.caption),void 0===i.description&&(i.description=this.config.description),i.panoData||"function"!==typeof this.config.panoData||(i.panoData=this.config.panoData),this.hideError(),this.resetIdleTimer(),this.config.panorama=e,this.config.caption=i.caption,this.config.description=i.description,this.config.sphereCorrection=i.sphereCorrection;const n=t=>{if(de(t))return!1;if(this.loader.hide(),this.state.loadingPromise=null,t)throw this.navbar.setCaption(null),this.showError(this.config.lang.loadError),this.dispatchEvent(new bt(e,t)),t;return this.navbar.setCaption(this.config.caption),!0};this.navbar.setCaption("<em>".concat(this.config.lang.loading,"</em>")),!i.showLoader&&this.state.ready||this.loader.show(),this.dispatchEvent(new ft(e));const o=this.adapter.loadTexture(this.config.panorama,!0,i.panoData).then((e=>{if(e.panorama!==this.config.panorama)throw this.adapter.disposeTexture(e),he();const t=this.dataHelper.cleanPanoramaOptions(i,e.panoData);return se(t.zoom)&&se(t.position)||this.stopAll(),{textureData:e,cleanOptions:t}}));return s&&this.state.ready&&this.adapter.supportsTransition(this.config.panorama)?this.state.loadingPromise=o.then((e=>{let{textureData:t,cleanOptions:i}=e;return this.loader.hide(),this.dispatchEvent(new gt(t)),this.state.transitionAnimation=this.renderer.transition(t,i,s),this.state.transitionAnimation})).then((e=>{if(this.state.transitionAnimation=null,this.dispatchEvent(new _t(e)),!e)throw he()})).then((()=>n()),(e=>n(e))):this.state.loadingPromise=o.then((e=>{let{textureData:t,cleanOptions:s}=e;this.renderer.show(),this.renderer.setTexture(t),this.renderer.setPanoramaPose(t.panoData),this.renderer.setSphereCorrection(i.sphereCorrection),this.state.ready||this.init(),this.dispatchEvent(new gt(t)),se(s.zoom)||this.zoom(s.zoom),se(s.position)||this.rotate(s.position)})).then((()=>n()),(e=>n(e))),this.state.loadingPromise}setOptions(e){const t=(0,h.A)((0,h.A)({},this.config),e);for(let[i,s]of Object.entries(e))if(i in Ti){if(!(i in Mi))switch(i in Li&&(s=Li[i](s,{rawConfig:t,defValue:Ti[i]})),this.config[i]=s,i){case"mousemove":this.state.cursorOverride||this.setCursor(null);break;case"caption":this.navbar.setCaption(this.config.caption);break;case"size":this.resize(this.config.size);break;case"sphereCorrection":this.renderer.setSphereCorrection(this.config.sphereCorrection);break;case"navbar":case"lang":this.navbar.setButtons(this.config.navbar);break;case"moveSpeed":case"zoomSpeed":this.dynamics.updateSpeeds();break;case"minFov":case"maxFov":this.dynamics.zoom.setValue(this.dataHelper.fovToZoomLevel(this.state.vFov)),this.dispatchEvent(new Yt(this.getZoomLevel()));break;case"keyboard":"always"===this.config.keyboard?this.startKeyboardControl():this.stopKeyboardControl()}}else"Unknown option ".concat(i);this.needsUpdate(),this.dispatchEvent(new Je(Object.keys(e)))}setOption(e,t){this.setOptions({[e]:t})}showError(e){this.overlay.show({id:M.ERROR,image:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="15 15 70 70"><path fill="currentColor" d="M50,16.2c-18.6,0-33.8,15.1-33.8,33.8S31.4,83.7,50,83.7S83.8,68.6,83.8,50S68.6,16.2,50,16.2z M50,80.2c-16.7,0-30.2-13.6-30.2-30.2S33.3,19.7,50,19.7S80.3,33.3,80.3,50S66.7,80.2,50,80.2z"/><rect fill="currentColor" x="48" y="31.7" width="4" height="28"/><rect fill="currentColor" x="48" y="63.2" width="4" height="5"/>\x3c!--Created by Shastry from the Noun Project--\x3e</svg>\n',title:e,dismissible:!1})}hideError(){this.overlay.hide(M.ERROR)}rotate(e){const t=new Ke(this.dataHelper.cleanPosition(e));this.dispatchEvent(t),t.defaultPrevented||this.dynamics.position.setValue(t.position)}zoom(e){this.dynamics.zoom.setValue(e)}zoomIn(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;this.dynamics.zoom.step(e)}zoomOut(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;this.dynamics.zoom.step(-e)}animate(e){const t=pe(e),i=!se(e.zoom),s=new Ye(t?this.dataHelper.cleanPosition(e):void 0,e.zoom);if(this.dispatchEvent(s),s.defaultPrevented)return;this.stopAll();const{duration:n,properties:o}=this.dataHelper.getAnimationProperties(e.speed,s.position,s.zoomLevel);return n?(this.state.animation=new Ne({properties:o,duration:n,easing:e.easing||"inOutSine",onTick:e=>
1{t&&this.dynamics.position.setValue({yaw:e.yaw,pitch:e.pitch}),i&&this.dynamics.zoom.setValue(e.zoom)}}),this.state.animation.then((()=>{this.state.animation=null,this.resetIdleTimer()})),this.state.animation):(t&&this.rotate(s.position),i&&this.zoom(s.zoomLevel),new Ne(null))}stopAnimation(){return this.state.animation?(this.state.animation.cancel(),this.state.animation):Promise.resolve()}resize(e){this.__setSize(e),this.autoSize()}__setSize(e){["width","height"].forEach((t=>{null!==e&&void 0!==e&&e[t]&&(/^[0-9.]+$/.test(e[t])&&(e[t]+="px"),this.parent.style[t]=e[t])}))}enterFullscreen(){this.isFullscreenEnabled()||q(this.parent,ti.isIphone)}exitFullscreen(){this.isFullscreenEnabled()&&G(ti.isIphone)}toggleFullscreen(){this.isFullscreenEnabled()?this.exitFullscreen():this.enterFullscreen()}startKeyboardControl(){this.state.keyboardEnabled=!0}stopKeyboardControl(){this.state.keyboardEnabled=!1}createTooltip(e){return new Ri(this,e)}setCursor(e){this.state.cursorOverride=e,this.container.style.cursor=e||(this.config.mousemove?"move":"default")}observeObjects(e){this.state.objectsObservers[e]||(this.state.objectsObservers[e]=null)}unobserveObjects(e){delete this.state.objectsObservers[e]}stopAll(){return this.dispatchEvent(new Ut),this.disableIdleTimer(),this.stopAnimation()}};function ss(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ns={exports:{}};!function(e){var t=Object.prototype.hasOwnProperty,i="~";function s(){}function n(e,t,i){this.fn=e,this.context=t,this.once=i||!1}function o(e,t,s,o,r){if("function"!==typeof s)throw new TypeError("The listener must be a function");var a=new n(s,o||e,r),c=i?i+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],a]:e._events[c].push(a):(e._events[c]=a,e._eventsCount++),e}function r(e,t){0===--e._eventsCount?e._events=new s:delete e._events[t]}function a(){this._events=new s,this._eventsCount=0}Object.create&&(s.prototype=Object.create(null),(new s).__proto__||(i=!1)),a.prototype.eventNames=function(){var e,s,n=[];if(0===this._eventsCount)return n;for(s in e=this._events)t.call(e,s)&&n.push(i?s.slice(1):s);return Object.getOwnPropertySymbols?n.concat(Object.getOwnPropertySymbols(e)):n},a.prototype.listeners=function(e){var t=i?i+e:e,s=this._events[t];if(!s)return[];if(s.fn)return[s.fn];for(var n=0,o=s.length,r=new Array(o);n<o;n++)r[n]=s[n].fn;return r},a.prototype.listenerCount=function(e){var t=i?i+e:e,s=this._events[t];return s?s.fn?1:s.length:0},a.prototype.emit=function(e,t,s,n,o,r){var a=i?i+e:e;if(!this._events[a])return!1;var c,l,h=this._events[a],d=arguments.length;if(h.fn){switch(h.once&&this.removeListener(e,h.fn,void 0,!0),d){case 1:return h.fn.call(h.context),!0;case 2:return h.fn.call(h.context,t),!0;case 3:return h.fn.call(h.context,t,s),!0;case 4:return h.fn.call(h.context,t,s,n),!0;case 5:return h.fn.call(h.context,t,s,n,o),!0;case 6:return h.fn.call(h.context,t,s,n,o,r),!0}for(l=1,c=new Array(d-1);l<d;l++)c[l-1]=arguments[l];h.fn.apply(h.context,c)}else{var u,p=h.length;for(l=0;l<p;l++)switch(h[l].once&&this.removeListener(e,h[l].fn,void 0,!0),d){case 1:h[l].fn.call(h[l].context);break;case 2:h[l].fn.call(h[l].context,t);break;case 3:h[l].fn.call(h[l].context,t,s);break;case 4:h[l].fn.call(h[l].context,t,s,n);break;default:if(!c)for(u=1,c=new Array(d-1);u<d;u++)c[u-1]=arguments[u];h[l].fn.apply(h[l].context,c)}}return!0},a.prototype.on=function(e,t,i){return o(this,e,t,i,!1)},a.prototype.once=function(e,t,i){return o(this,e,t,i,!0)},a.prototype.removeListener=function(e,t,s,n){var o=i?i+e:e;if(!this._events[o])return this;if(!t)return r(this,o),this;var a=this._events[o];if(a.fn)a.fn!==t||n&&!a.once||s&&a.context!==s||r(this,o);else{for(var c=0,l=[],h=a.length;c<h;c++)(a[c].fn!==t||n&&!a[c].once||s&&a[c].context!==s)&&l.push(a[c]);l.length?this._events[o]=1===l.length?l[0]:l:r(this,o)}return this},a.prototype.removeAllListeners=function(e){var t;return e?(t=i?i+e:e,this._events[t]&&r(this,t)):(this._events=new s,this._eventsCount=0),this},a.prototype.off=a.prototype.removeListener,a.prototype.addListener=a.prototype.on,a.prefixed=i,a.EventEmitter=a,e.exports=a}(ns);
1var os=new(ss(ns.exports)),rs={on:function(e,t){return os.on(e,t)},once:function(e,t){return os.once(e,t)},off:function(e,t){return os.off(e,t)},emit:function(e,t){return os.emit(e,t)}};Object.freeze(rs);var as=["src","height","width","hideNavbarButton","containerClass","littlePlanet","onPositionChange","onZoomChange","onClick","onDblclick","onReady"],cs=["zoom","fullscreen"];function ls(e){return null==e?cs:Array.isArray(e)?e:"string"===typeof e?""!==e&&[e]:!!e&&cs}var hs=(0,l.forwardRef)((function(e,t){var i=function(){var e=a((0,l.useState)(),2),t=e[0],i=e[1],s=(0,l.useCallback)((function(e){e&&e!==t&&i(e)}),[t]);return[t,s]}(),s=a(i,2),n=s[0],o=s[1],h=(0,l.useMemo)((function(){return e}),[e.panorama,e.src,e.size,e.canvasBackground,e.navbar,e.height,e.width,e.containerClass,e.hideNavbarButton||!0,e.littlePlanet,e.fishEye,e.lang,e.onPositionChange,e.onZoomChange,e.onClick,e.onDblclick,e.onReady,e.moveSpeed,e.zoomSpeed,e.moveInertia,e.mousewheel,e.mousemove,e.mousewheelCtrlKey,e.touchmoveTwoFingers,e.panoData,e.requestHeaders,e.withCredentials,e.keyboard,e.keyboardActions,e.plugins,e.adapter,e.sphereCorrection,e.minFov,e.maxFov,e.defaultZoomLvl,e.defaultYaw,e.defaultPitch,e.caption,e.description,e.downloadUrl,e.downloadName,e.loadingImg,e.loadingTxt,e.rendererParameters,e.defaultTransition]),d=(0,l.useRef)(null),u=130,p=a((0,l.useState)(-90),1)[0],v=a((0,l.useState)(2),1)[0],m=a((0,l.useState)(0),1)[0],f=a((0,l.useState)(cs),2),w=f[0],g=f[1],y=(0,l.useRef)(!0);(0,l.useEffect)((function(){function e(){var e,t,i=window.innerWidth/window.innerHeight;u=Math.floor((i-(e=.5))*(115-(t=140))/(1.8-e)+t)}return window.addEventListener("resize",e),e(),function(){return window.removeEventListener("resize",e)}}),[]),(0,l.useEffect)((function(){if(n&&!d.current){var t,i,s,o,a,l,f,w,b,E=new is(r(r({},function(e){var t=r({},e);for(var i in t)as.includes(i)&&delete t[i];return t}(h)),{},{container:n,panorama:h.panorama||h.src,size:{height:h.height,width:h.width||"100px"},fisheye:h.littlePlanet?v:h.fisheye||!1,minFov:null!==(t=h.minFov)&&void 0!==t?t:30,maxFov:h.littlePlanet?u:null!==(i=h.maxFov)&&void 0!==i?i:90,defaultZoomLvl:h.littlePlanet?m:null!==(s=h.defaultZoomLvl)&&void 0!==s?s:50,defaultYaw:null!==(o=h.defaultYaw)&&void 0!==o?o:0,defaultPitch:h.littlePlanet?p:null!==(a=h.defaultPitch)&&void 0!==a?a:0,sphereCorrection:h.sphereCorrection||{pan:0,tilt:0,roll:0},moveSpeed:h.moveSpeed||1,zoomSpeed:h.zoomSpeed||1,moveInertia:null===(l=h.moveInertia)||void 0===l||l,mousewheel:!h.littlePlanet&&(null===(f=h.mousewheel)||void 0===f||f),mousemove:null===(w=h.mousemove)||void 0===w||w,mousewheelCtrlKey:h.mousewheelCtrlKey||!1,touchmoveTwoFingers:h.touchmoveTwoFingers||!1,panoData:h.panoData||void 0,requestHeaders:h.requestHeaders||void 0,withCredentials:h.withCredentials||!1,navbar:ls(h.navbar),lang:h.lang||{},keyboard:h.keyboard||"fullscreen",plugins:null!==(b=h.plugins)&&void 0!==b?b:[]}));E.addEventListener("ready",(function(){h.onReady&&h.onReady(E)}),{once:!0}),E.addEventListener("click",(function(e){h.onClick&&h.onClick(e,E),h.littlePlanet&&y.current&&(y.current=!1,E.animate({yaw:0,pitch:p,zoom:75,speed:"3rpm"}).then((function(){E.animate({yaw:0,pitch:0,zoom:90,speed:"10rpm"}).then((function(){var e;E.setOption("maxFov",h.maxFov||70),E.setOption("mousewheel",null===(e=h.mousewheel)||void 0===e||e)}))})))})),E.addEventListener("dblclick",(function(e){h.onDblclick&&h.onDblclick(e,E)})),E.addEventListener("zoom-updated",(function(e){h.onZoomChange&&h.onZoomChange(e,E)})),E.addEventListener("position-updated",(function(e){h.onPositionChange&&h.onPositionChange(e.position.pitch,e.position.yaw,E)}));var _=ls(h.navbar);if(h.littlePlanet){var x,C,T={id:"resetLittlePlanetButton",content:(null===(x=e.lang)||void 0===x?void 0:x.littlePlanetIcon)||'<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24" fill="none">\n <path fill-rule="evenodd" clip-rule="evenodd" d="M12 20C16.4183 20 20 16.4183 20 12C20 11.8805 19.9974 11.7615 19.9922 11.6433C20.2479 11.4141 20.4882 11.1864 20.7118 10.9611C21.0037 10.66
172 21.002 10.1923 20.708 9.90049C20.4336 9.628 20.0014 9.61143 19.7077 9.84972C19.4023 8.75248 18.8688 7.75024 18.1616 6.89725C18.4607 6.84611 18.7436 6.8084 19.0087 6.784C19.4212 6.74604 19.7247 6.38089 19.6868 5.96842C19.6488 5.55595 19.2837 5.25235 18.8712 5.29032C18.4474 5.32932 17.9972 5.39638 17.5262 5.48921C17.3267 5.52851 17.1614 5.64353 17.0543 5.79852C15.6765 4.67424 13.917 4 12 4C7.58172 4 4 7.58172 4 12C4 12.2776 4.01414 12.552 4.04175 12.8223C3.78987 12.7532 3.50899 12.8177 3.31137 13.0159C2.97651 13.3517 2.67596 13.6846 2.415 14.0113C2.15647 14.3349 2.20924 14.8069 2.53287 15.0654C2.8565 15.3239 3.32843 15.2711 3.58696 14.9475C3.78866 14.695 4.02466 14.4302 4.2938 14.1557C4.60754 15.2796 5.16056 16.3037 5.8945 17.1697C5.66824 17.3368 5.54578 17.6248 5.60398 17.919C5.68437 18.3253 6.07894 18.5896 6.48528 18.5092C6.7024 18.4662 6.92455 18.4177 7.15125 18.3637C8.49656 19.3903 10.1771 20 12 20ZM7.15125 18.3637C6.69042 18.012 6.26891 17.6114 5.8945 17.1697C5.98073 17.106 6.08204 17.0599 6.19417 17.0377C7.19089 16.8405 8.33112 16.5084 9.55581 16.0486C9.94359 15.903 10.376 16.0994 10.5216 16.4872C10.6671 16.8749 10.4708 17.3073 10.083 17.4529C9.05325 17.8395 8.0653 18.1459 7.15125 18.3637ZM19.7077 9.84972C19.6869 9.86663 19.6667 9.88483 19.6474 9.90431C18.9609 10.5957 18.0797 11.3337 17.0388 12.0753C16.7014 12.3157 16.6228 12.784 16.8631 13.1213C17.1035 13.4587 17.5718 13.5373 17.9091 13.297C18.6809 12.7471 19.3806 12.1912 19.9922 11.6433C19.965 11.0246 19.8676 10.4241 19.7077 9.84972ZM20.9366 5.37924C20.5336 5.28378 20.1294 5.53313 20.034 5.93619C19.9385 6.33925 20.1879 6.74339 20.5909 6.83886C20.985 6.93219 21.1368 7.07125 21.1932 7.16142C21.2565 7.26269 21.3262 7.52732 21.0363 8.10938C20.8516 8.48014 21.0025 8.93042 21.3732 9.1151C21.744 9.29979 22.1943 9.14894 22.379 8.77818C22.7566 8.02003 22.9422 7.12886 22.4648 6.36582C22.1206 5.81574 21.5416 5.52252 20.9366 5.37924ZM2.81481 16.2501C2.94057 15.8555 2.72259 15.4336 2.32793 15.3078C1.93327 15.1821 1.51138 15.4 1.38562 15.7947C1.19392 16.3963 1.17354 17.0573 1.53488 17.6349C1.98775 18.3587 2.84153 18.6413 3.68907 18.7224C4.1014 18.7619 4.46765 18.4596 4.50712 18.0473C4.54658 17.635 4.24432 17.2687 3.83199 17.2293C3.13763 17.1628 2.88355 16.9624 2.80651 16.8393C2.75679 16.7598 2.70479 16.5954 2.81481 16.2501ZM15.7504 14.704C16.106 14.4915 16.2218 14.0309 16.0093 13.6754C15.7967 13.3199 15.3362 13.204 14.9807 13.4166C14.4991 13.7045 13.9974 13.9881 13.4781 14.2648C12.9445 14.5491 12.4132 14.8149 11.8883 15.0615C11.5134 15.2376 11.3522 15.6843 11.5283 16.0592C11.7044 16.4341 12.1511 16.5953 12.526 16.4192C13.0739 16.1618 13.6277 15.8847 14.1834 15.5887C14.7242 15.3005 15.2474 15.0048 15.7504 14.704Z" fill="rgba(255,255,255,.7)"/>\n </svg>',title:(null===(C=e.lang)||void 0===C?void 0:C.littlePlanetButton)||"Reset Little Planet",className:"resetLittlePlanetButton",onClick:function(){y.current=!0,E.setOption("maxFov",u),E.setOption("mousewheel",!1),E.animate({yaw:0,pitch:p,zoom:m,speed:"10rpm"})}};!1===_||_.find((function(e){return"object"===c(e)&&"resetLittlePlanetButton"===(null===e||void 0===e?void 0:e.id)}))||_.splice(1,0,T)}if(h.hideNavbarButton){var M={id:"hideNavbarButton",content:'<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24" fill="none">\n <g clip-path="url(#clip0_429_11083)">\n <path d="M7 7.00006L17 17.0001M7 17.0001L17 7.00006" stroke="rgba(255,255,255,.7)" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>\n </g>\n <defs>\n <clipPath id="clip0_429_11083">\n <rect width="24" height="24" fill="white"/>\n </clipPath>\n </defs>\n </svg>',title:"Hide Navbar",className:"hideNavbarButton",onClick:function(){E.navbar.hide();var e=document.createElement("a");e.className="showNavbarButton",e.innerHTML='<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 26 26" style="enable-background:new 0 0 26 26;" xml:space="preserve" class="icon icon-back-to-top">\n <g>\n <path d="M13.8,1.3L21.6,9c0.1,0.1,0.1,0.3,0.2,0.4c0.1,0.1,0.1,0.3,0.1,0.4s0,0.3-0.1,0.4c-0.1,0.1-0.1,0.3-0.3,0.4\n c-0.1,0.1-0.2,0.2-0.4,0.3c-0.2,0.1-0.3,0.1-0.4,0.1c-0.1,0-0.3,0-0.4-0.1c-0.2-0.1-0.3-0.2-0.4-0.3L14.2,5l0,19.1\n c0,0.2-0.1,0.3-0.
11,0.5c0,0.1-0.1,0.3-0.3,0.4c-0.1,0.1-0.2,0.2-0.4,0.3c-0.1,0.1-0.3,0.1-0.5,0.1c-0.1,0-0.3,0-0.4-0.1\n c-0.1-0.1-0.3-0.1-0.4-0.3c-0.1-0.1-0.2-0.2-0.3-0.4c-0.1-0.1-0.1-0.3-0.1-0.5l0-19.1l-5.7,5.7C6,10.8,5.8,10.9,5.7,11\n c-0.1,0.1-0.3,0.1-0.4,0.1c-0.2,0-0.3,0-0.4-0.1c-0.1-0.1-0.3-0.2-0.4-0.3c-0.1-0.1-0.1-0.2-0.2-0.4C4.1,10.2,4,10.1,4.1,9.9\n c0-0.1,0-0.3,0.1-0.4c0-0.1,0.1-0.3,0.3-0.4l7.7-7.8c0.1,0,0.2-0.1,0.2-0.1c0,0,0.1-0.1,0.2-0.1c0.1,0,0.2,0,0.2-0.1\n c0.1,0,0.1,0,0.2,0c0,0,0.1,0,0.2,0c0.1,0,0.2,0,0.2,0.1c0.1,0,0.1,0.1,0.2,0.1C13.7,1.2,13.8,1.2,13.8,1.3z"></path>\n </g>\n </svg>',e.title="Show Navbar",e.onclick=function(t){t.preventDefault(),E.navbar.show(),e.remove()},document.body.appendChild(e)}};!1===_||_.find((function(e){return"object"===c(e)&&"hideNavbarButton"===(null===e||void 0===e?void 0:e.id)}))||_.push(M)}!1!==_?(E.setOption("navbar",_),g(_)):E.navbar.hide(),rs.on("animate",(function(e){E.animate(e)})).on("stop-animation",(function(){E.stopAnimation()})).on("destroy",(function(){E.destroy()})).on("rotate",(function(e){E.rotate(e)})).on("setOption",(function(e){var t=e.option,i=e.value;E.setOption(t,i)})).on("setOptions",(function(e){E.setOptions(e)})).on("zoom",(function(e){E.zoom(e)})).on("zoomIn",(function(e){E.zoomIn(e)})).on("zoomOut",(function(e){E.zoomOut(e)})).on("resize",(function(e){E.resize(e)}
1)).on("enterFullscreen",(function(){E.enterFullscreen()})).on("exitFullscreen",(function(){E.exitFullscreen()})).on("toggleFullscreen",(function(){E.toggleFullscreen()})).on("needsContinuousUpdate",(function(e){E.needsContinuousUpdate(e)})).on("observeObjects",(function(e){E.observeObjects(e)})).on("unobserveObjects",(function(e){E.unobserveObjects(e)})).on("setCursor",(function(e){E.setCursor(e)})).on("setPanorama",(function(e){E.setPanorama(e.path,e.options)})).on("showError",(function(e){E.showError(e)})).on("hideError",(function(){E.hideError()})).on("startKeyboardControl",(function(){E.startKeyboardControl()})).on("stopKeyboardControl",(function(){E.stopKeyboardControl()})),d.current=E}}),[n,h]),(0,l.useEffect)((function(){var e,t,i,s,n=d.current;n&&n.container&&n.container.parentNode&&(n&&n.container&&n.container.parentNode&&(null===(e=n.renderer)||void 0===e||null===(t=e.renderer)||void 0===t||t.dispose(),null===(i=n.renderer)||void 0===i||null===(s=i.renderer)||void 0===s||s.forceContextLoss(),n.destroy()))}),[d]),(0,l.useEffect)((function(){var e,t=null!==(e=h.panorama)&&void 0!==e?e:h.src;d.current&&t&&d.current.setPanorama(t,{})}),[h.src,h.panorama]);return(0,l.useImperativeHandle)(t,(function(){return{animate:function(e){rs.emit("animate",e)},destroy:function(){rs.emit("destroy",{})},createTooltip:function(e){var t;return null===(t=d.current)||void 0===t?void 0:t.createTooltip(e)},needsContinuousUpdate:function(e){rs.emit("needsContinuousUpdate",e)},observeObjects:function(e){rs.emit("observeObjects",e)},unobserveObjects:function(e){rs.emit("unobserveObjects",e)},setCursor:function(e){rs.emit("setCursor",e)},stopAnimation:function(){rs.emit("stop-animation",{})},rotate:function(e){rs.emit("rotate",e)},setOption:function(e,t){rs.emit("setOption",{option:e,value:t})},setOptions:function(e){var t;return null===(t=d.current)||void 0===t?void 0:t.setOptions(e)},getCurrentNavbar:function(){return w},zoom:function(e){rs.emit("zoom",e)},zoomIn:function(e){rs.emit("zoomIn",{step:e})},zoomOut:function(e){rs.emit("zoomOut",{step:e})},resize:function(e){var t;return null===(t=d.current)||void 0===t?void 0:t.resize(e)},enterFullscreen:function(){var e;return null===(e=d.current)||void 0===e?void 0:e.enterFullscreen()},exitFullscreen:function(){var e;return null===(e=d.current)||void 0===e?void 0:e.exitFullscreen()},toggleFullscreen:function(){var e;return null===(e=d.current)||void 0===e?void 0:e.toggleFullscreen()},isFullscreenEnabled:function(){var e;return null===(e=d.current)||void 0===e?void 0:e.isFullscreenEnabled()},getPlugin:function(e){var t;return null===(t=d.current)||void 0===t?void 0:t.getPlugin(e)},getPosition:function(){var e;return null===(e=d.current)||void 0===e?void 0:e.getPosition()},getZoomLevel:function(){var e;return null===(e=d.current)||void 0===e?void 0:e.getZoomLevel()},getSize:function(){var e;return null===(e=d.current)||void 0===e?void 0:e.getSize()},needsUpdate:function(){var e;return null===(e=d.current)||void 0===e?void 0:e.needsUpdate()},autoSize:function(){var e;return null===(e=d.current)||void 0===e?void 0:e.autoSize()},setPanorama:function(e,t){var i;return null===(i=d.current)||void 0===i?void 0:i.setPanorama(e,t)},showError:function(e){var t;return null===(t=d.current)||void 0===t?void 0:t.showError(e)},hideError:function(){var e;return null===(e=d.current)||void 0===e?void 0:e.hideError()},startKeyboardControl:function(){var e;return null===(e=d.current)||void 0===e?void 0:e.startKeyboardControl()},stopKeyboardControl:function(){var e;return null===(e=d.current)||void 0===e?void 0:e.stopKeyboardControl()}}}),[d.current,n,h,t]),l.createElement("div",{className:h.containerClass||"view-container",ref:o})}));hs.displayName="ReactPhotoSphereViewer"},96740:()=>{}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.