(self.webpackChunkmp_webgl=self.webpackChunkmp_webgl||[]).push([[6784],{86970:(e,t,i)=>{var n={"./showcase_de.yaml":[73694,3694],"./showcase_en-US.yaml":[18539,8539],"./showcase_es.yaml":[1273,1273],"./showcase_fr.yaml":[89457,9457],"./showcase_it.yaml":[556,556],"./showcase_ja.yaml":[27456,7456],"./showcase_ko.yaml":[56911,6911],"./showcase_nl.yaml":[76995,6995],"./showcase_pt.yaml":[70821,821],"./showcase_qa.yaml":[31459,1459],"./showcase_ru.yaml":[84396,4396],"./showcase_zh-CN.yaml":[10261,261],"./showcase_zh-TW.yaml":[94593,4593]};function s(e){if(!i.o(n,e))return Promise.resolve().then((()=>{var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=n[e],s=t[0];return i.e(t[1]).then((()=>i(s)))}s.keys=()=>Object.keys(n),s.id=86970,e.exports=s},44821:(e,t,i)=>{var n={"./cwf_de.yaml":[8645,8645],"./cwf_en-US.yaml":[42622,2622],"./cwf_es.yaml":[16078,6078],"./cwf_fr.yaml":[23446,3446],"./cwf_it.yaml":[49487,9487],"./cwf_ja.yaml":[34339,4339],"./cwf_ko.yaml":[53376,3376],"./cwf_nl.yaml":[85952,5952],"./cwf_pt.yaml":[70806,806],"./cwf_qa.yaml":[14176,4176],"./cwf_ru.yaml":[4847,4847],"./cwf_zh-CN.yaml":[51052,1052],"./cwf_zh-TW.yaml":[99300,9300]};function s(e){if(!i.o(n,e))return Promise.resolve().then((()=>{var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=n[e],s=t[0];return i.e(t[1]).then((()=>i(s)))}s.keys=()=>Object.keys(n),s.id=44821,e.exports=s},56369:(e,t,i)=>{"use strict";i.d(t,{Y:()=>R});var n=i(96540),s=i(95541),a=i(48411),o=i(48270),r=i(56547),l=i(4717),d=i(56147),c=i(39869),u=i(67246),h=i(16263),m=i(87965),p=i(33177),E=i(73918),S=i(83748),O=i(46793),g=i(38731),_=i(94799),T=i(68375),A=i(71687),v=i(78063),f=i(78115);var N=i(74848);const I="features/defurnish-nudge",{DEFURNISH:L}=d.A.WORKSHOP;function R(e){let{viewmode:t}=e;const i=(0,g.B)(),d=(0,T.s)(),R=(0,c.Y)(),y=(0,h.s)("viewer"),b=(0,s.H)(),D=(0,u.L)(),M=(0,l.G)(),P=(0,_.j)(A.az),k=!!M&&(0,r.AF)(M),w=(0,S.N)(),C=function(){const e=(0,v.B)(),[t,i]=(0,n.useState)(!1);return(0,n.useEffect)((()=>{const t=[];return e&&t.push(e.subscribe(f.uU,(()=>i(!0))),e.subscribe(f.Yp,(()=>i(!1)))),()=>t.forEach((e=>e.cancel()))}),[e]),t}(),{show:x,dismiss:H}=(0,p.F)(p.m.Defurnish),U=!!(0,a.T)(),F=(0,n.useCallback)((async()=>{d.trackGuiEvent("click_defurnish_mode_button"),P.toggleDefurnishView()}),[d,P]);if(!y||!D)return null;const G=b&&i,V=!D?.enabled||!w||C||t===O.w5.TRANSITIONING,W=k,B=W?"furniture":"furniture-slash",j=G&&W?void 0:o.A.TERTIARY,K=G&&W?"light":"overlay",z=G?o.M.LARGE:void 0,Y={placement:G?"bottom":"top",offset:G?[0,10]:void 0},$=W?R.t(L.DEFURN_MODE_BUTTON_ACTIVE):R.t(L.DEFURN_MODE_BUTTON),X=R.t(L.DEFURN_NUDGE_TITLE),Q=R.t(L.DEFURN_NUDGE_TEXT);return(0,N.jsx)("div",{className:"mode-button mode-buttons mode-defurnish",children:(0,N.jsx)(E.Q,{onClick:F,className:"mode-defurnish-glow",icon:B,variant:j,theme:K,size:z,active:W,disabled:V,tooltip:$,ariaLabel:$,nudgeDisabled:V||U,nudgeFeatureKey:I,nudgeTitle:X,nudgeMessage:Q,nudgeLocalStorage:m.Y.DefurnishNudgeSeen,nudgeSessionKey:Q,tooltipOptions:Y,showTimeout:x,dismissTimeout:H})})}},81519:(e,t,i)=>{"use strict";i.d(t,{u:()=>O});var n=i(96540),s=i(92637),a=i(32485),o=i.n(a),r=i(9139),l=i(7478);class d extends l.QB{constructor(e){super(),this.open=e}}var c=i(28422),u=i(77570),h=i(8647),m=i(74848);const p=new r.Vy("alert-notification");class E extends n.Component{static contextType=(()=>u.B)();alertTimer;throttledMessages=(()=>new Map)();static defaultProps=(()=>({type:h.v.INFO,show:!1,timeout:5,throttle:0}))();constructor(e){super(e),this.state={open:!1}}componentDidMount(){this.update()}componentWillUnmount(){this.state.open&&this.props.messageBus.broadcast(new d(!1))}UNSAFE_componentWillReceiveProps(e){this.update(e)}componentDidUpdate(e,t){this.state.open!==t.open&&this.props.messageBus.broadcast(new d(this.state.open))}onClose=()=>{window.clearTimeout(this.alertTimer),this.setState({open:!1})};update(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props;const{show:t,timeout:i,message:n,throttle:s,type:a}=e,{analytics:o}=this.context;if(t){if(s>0){if(this.throttledMessages.has(n)&&this.throttledMessages.get(n)>Date.now())return void p.debug(`Suppressed alert dialog due to message throttling: ${n}`);this.throttledMessages.set(n,Date.now()+1e3*s)}window.clearTimeout(this.alertTimer),this.setState({open:!0}),i>0&&(this.alertTimer=window.setTimeout(this.onClose,1e3*i)),o&&o.track("alert_gui",{alert_action:"show",alert_type:a,alert_message:n})}}render(){const{title:e,message:t,type:i}=this.props,{open:n}=this.state,s={active:n,[`notification-${i}`]:!0};return(0,m.jsxs)("aside",{className:o()("alert-notification",s),children:[(0,m.jsxs)("div",{className:"notification-body",children:[e&&(0,m.jsx)("h3",{className:"notification-title",children:e}),(0,m.jsx)("p",{className:"notification-text",children:t})]}),n&&(0,m.jsx)(c.J,{theme:"dark",tooltip:"",onClose:this.onClose})]})}}var S=i(80610);class O extends n.Component{static contextType=(()=>u.B)();bindings=[];constructor(e){super(e),this.state={guiError:!1,errorMessagePhraseKey:""}}componentDidMount(){const{commandBinder:e}=this.context;this.bindings.push(e.addBinding(s.P,(async e=>{this.showErrorMessage(e.messagePhraseKey,e.options)})))}componentWillUnmount(){this.bindings.forEach((e=>e.cancel())),this.bindings.length=0}componentDidUpdate(e,t){const{guiError:i}=this.state;i&&this.setState({guiError:!1})}showErrorMessage(e,t){this.setState({guiError:!0,errorMessagePhraseKey:e,errorOptions:t})}render(){const{messageBus:e,locale:t}=this.context,{guiError:i,errorMessagePhraseKey:n,errorOptions:s}=this.state;let a=n&&t.t(n);const{error:o}=s||{};return o&&(0,S.Ue)(o)&&(a=`${a} (${o.code})`),(0,m.jsx)("div",{className:"error-bar",children:(0,m.jsx)(E,{messageBus:e,show:i,message:a,...s})})}}},23863:(e,t,i)=>{"use strict";i.d(t,{E:()=>u});var n=i(96540),s=i(32485),a=i.n(s),o=i(40936),r=i(74848);const l=55,d=40,c=10;function u(e){let{className:t,outerLeft:i,children:s,outerRight:u,small:h=!1,wrapperClassName:m}=e;const p=(0,n.useRef)(null);(0,o.A)({ref:p});let E=!!i!=!!u;if(E&&p.current){const e=p.current.offsetWidth,t=p.current.children[1],i=h?d:l;t.offsetWidth+2*i+(2+c)>e&&(E=!1)}const S=a()("action-bar",t,{"fill-outer-space":E}),O=a()("action-bar-outer","action-bar-outer-left",{"action-bar-outer-large":!h}),g=a()("action-bar-outer","action-bar-outer-right",{"action-bar-outer-large":!h});return(0,r.jsx)("div",{className:a()("overlay-action-bar",m),children:(0,r.jsxs)("div",{ref:p,className:S,children:[(0,r.jsx)("div",{className:O,children:i}),(0,r.jsx)("div",{className:"action-bar-cta",children:s}),(0,r.jsx)("div",{className:g,children:u})]})})}},37887:(e,t,i)=>{"use strict";i.d(t,{Q:()=>a});var n=i(96556),s=i(74848);function a(){const{setFullViewOverlayContainer:e}=(0,n.OB)();return(0,s.jsx)("div",{className:"full-view-tool-portal-container",id:n.Cz.FULL_VIEW_OVERLAY_PORTAL,ref:e})}},96556:(e,t,i)=>{"use strict";i.d(t,{Cz:()=>r,EG:()=>h,OB:()=>u,s6:()=>c});var n=i(96540),s=i(40961),a=i(84021),o=i(74848);let r=function(e){return e.BAR_PORTAL="tools-portal-bar",e.VIEW_OVERLAY_PORTAL="tools-portal-view-overlay",e.FULL_VIEW_OVERLAY_PORTAL="tools-portal-full-view-overlay",e.RIGHT_PANEL_PORTAL="tools-portal-right-panel",e.LEFT_PANEL_PORTAL="tools-portal-left-panel",e}({});const l=(0,n.createContext)(null),d=(0,n.createContext)(null);function c(e){let{children:t}=e;const[i,s]=(0,n.useState)(null),[r,c]=(0,n.useState)(null),[u,h]=(0,n.useState)(null),[p,E]=(0,n.useState)(null),[S,O]=(0,n.useState)(null),[g,_]=(0,n.useState)(null),T=(0,a.Q)(null),A={setBarContainer:s,setRightPanelContainer:c,setLeftPanelContainer:h,setTopUIContainer:E,setViewOverlayContainer:O,setFullViewOverlayContainer:_},v={createBar:(0,n.useCallback)(((e,t)=>m(i,e,t)),[i]),createPageOverlay:(0,n.useCallback)(((e,t)=>m(T,e,t)),[T]),createRightPanel:(0,n.useCallback)(((e,t)=>m(r,e,t)),[r]),createLeftPanel:(0,n.useCallback)(((e,t)=>m(u,e,t)),[u]),createTopUI:(0,n.useCallback)(((e,t)=>m(p,e,t)),[p]),createViewOverlay:(0,n.useCallback)(((e,t)=>m(S,e,t)),[S]),createFullViewOverlay:(0,n.useCallback)(((e,t)=>m(g,e,t)),[g])};return(0,o.jsx)(l.Provider,{value:A,children:(0,o.jsx)(d.Provider,{value:v,children:t})})}function u(){const e=(0,n.useContext)(l);if(!e)throw new Error("Use ToolsPortalsProvider to create an IToolsPortalSetup Context ");return e}function h(){const e=(0,n.useContext)(d);if(!e)throw new Error("Use ToolsPortalsProvider to create an IToolsPortals Context ");return e}function m(e,t,i){return e?(0,s.createPortal)((0,o.jsx)(n.Suspense,{name:i||void 0,children:t}),e,i):null}},39985:(e,t,i)=>{"use strict";i.d(t,{s:()=>k});var n=i(96540),s=i(73566),a=i(59760),o=i(68419),r=i(64057),l=i(78956),d=i(76853);const c=function(e,t){const i=e.classList;switch(t){case s.L$.NORMAL:case s.L$.SIDE_PANEL:i.replace("narrow-layout","standard-layout")||i.add("standard-layout");break;case s.L$.NARROW:case s.L$.BOTTOM_PANEL:i.replace("standard-layout","narrow-layout")||i.add("narrow-layout")}};var u,h,m,p=i(32485),E=i.n(p),S=i(77570),O=i(72909),g=i(95439),_=i(74848);let T=(u=Reflect.metadata("design:type",Function),h=Reflect.metadata("design:paramtypes",["undefined"==typeof ToastrProps?Object:ToastrProps]),(0,O.F)(m=u(m=h(m=class extends n.Component{static contextType=(()=>S.B)();timeout;constructor(e){super(e),this.state=this.getInitialState()}componentDidMount(){this.context.commandBinder.addBinding(g.Q,this.show),this.context.commandBinder.addBinding(g.v,this.hide)}componentWillUnmount(){window.clearTimeout(this.timeout),this.context.commandBinder.removeBinding(g.Q,this.show),this.context.commandBinder.removeBinding(g.v,this.hide)}render(){const{locale:e}=this.context,t=this.props.className||"",{active:i,multiline:n,messagePhraseKey:s,ctaPhraseKey:a,dismissesOnAction:o}=this.state,r={active:i,multiline:n},l=s?e.t(s):null,d=a?e.t(a):null;return(0,_.jsx)("div",{className:"toastr-wrapper",onClick:o?this.hide:void 0,children:(0,_.jsxs)("div",{className:E()("toastr-contents",`${t}`,r),children:[(0,_.jsx)("div",{className:"toastr-text",children:l}),d&&(0,_.jsx)("a",{className:"link",onClick:this.triggerAction,children:d})]})})}getInitialState=()=>({messagePhraseKey:"",active:!1,ctaPhraseKey:"",timeout:0,multiline:!1,dismissesOnAction:!1,actionHandler:()=>{}});triggerAction=e=>{e.stopPropagation(),this.state.actionHandler&&this.state.actionHandler(),this.state.dismissesOnAction&&this.hide()};hide=async()=>{window.clearTimeout(this.timeout),this.setState({active:!1})};show=async e=>{const t=Object.assign(this.getInitialState(),e,{active:!0});this.setState(t),window.clearTimeout(this.timeout),t.timeout>0&&(this.timeout=window.setTimeout((()=>{this.setState({active:!1})}),t.timeout))}})||m)||m)||m);var A=i(56147),v=i(17084),f=i(95541),N=i(39869),I=i(90087),L=i(68375);const{PANELS:R}=A.A;function y(e){let{children:t,className:i,sidePanelCollapsible:s,panelLeft:o}=e;const l=(0,L.s)(),d=(0,I.L)(),c=(0,r.J)(),u=(0,a.O)(),h=(0,N.Y)(),m=(0,f.H)(),p=(0,n.useCallback)((()=>{m||(l.track("showcase_gui",{gui_action:"toggle_side_panel"}),d.issueCommand(new v.li(!c)))}),[m,l,d,c]),S=c?h.t(R.EXPAND_PANEL):h.t(R.COLLAPSE_PANEL),O=c?"icon-dpad-left":"icon-dpad-right",g=!(!u||!u.panel)&&!!o==!!u?.panelLeft,T=!!u?.panelLeft&&!m,A=!T&&!m,y={"panel-open":g&&!c,"panel-collapsed":g&&c,"panel-bottom":m,"panel-side":!m,"panel-left":T,"panel-right":A};return(0,_.jsxs)(_.Fragment,{children:[g&&A&&s&&(0,_.jsx)("div",{className:"panel-track",children:(0,_.jsx)("div",{className:"panel-track-thumb right","data-balloon":S,"data-balloon-pos":"left",onClick:p,children:(0,_.jsx)("span",{className:`icon ${O}`})})}),(0,_.jsx)("div",{className:E()("panels",y,i),children:t})]})}var b=i(38731),D=i(19072),M=i(96556),P=i(37887);function k(e){let{children:t,className:i}=e;const{setLeftPanelContainer:d,setRightPanelContainer:u}=(0,M.OB)(),h=(0,b.B)(),m=(0,D.x)(),p=(0,a.O)(),S=(0,o.t)(),O=(0,r.J)(),g=(0,l.O)(),A=g===s.L$.BOTTOM_PANEL;return(0,n.useEffect)((()=>{c(m,g)}),[m,g]),(0,n.useEffect)((()=>{O?m.classList.add("tool-collapsed"):m.classList.remove("tool-collapsed"),x(m,p,A)}),[m,O,p,A]),(0,n.useEffect)((()=>{m.classList.remove("bottom-panel","left-panel","right-panel"),p&&p.panel&&m.classList.add(A?"bottom-panel":p.panelLeft?"left-panel":"right-panel"),x(m,p,A)}),[m,p,A]),(0,n.useEffect)((()=>{S?m.classList.add("modal-open"):m.classList.remove("modal-open")}),[m,S]),(0,_.jsxs)("div",{className:E()("app-ui",i),children:[(0,_.jsx)(y,{sidePanelCollapsible:!1,panelLeft:!0,children:(0,_.jsx)(w,{id:M.Cz.LEFT_PANEL_PORTAL,containerRef:d})}),(0,_.jsx)("div",{className:"scene-overlay",children:(0,_.jsxs)(_.Fragment,{children:[(0,_.jsx)(P.Q,{}),t]})}),(0,_.jsx)(y,{sidePanelCollapsible:h,children:(0,_.jsx)(w,{id:M.Cz.RIGHT_PANEL_PORTAL,containerRef:u})}),(0,_.jsx)(T,{}),(0,_.jsx)(C,{tool:p})]})}function w(e){let{id:t,containerRef:i}=e;return(0,_.jsx)("div",{className:"tool-panel",id:t,ref:i})}function C(e){let{tool:t}=e;const i=(0,d.v)(),n=(0,M.EG)();if(!t)return null;const s=i.getToolUi(t.id);return(0,_.jsx)(_.Fragment,{children:s.map(((e,i)=>{const s=e;return(0,_.jsx)(s,{...n},`${t.id}_ui_${i}`)}))})}function x(e,t,i){i&&!0===t?.searchModeType?e.classList.add("with-search-bar"):e.classList.remove("with-search-bar")}},36918:(e,t,i)=>{"use strict";i.d(t,{D:()=>f});var n=i(96540),s=i(32485),a=i.n(s),o=i(46793),r=i(77570),l=i(39209),d=i(56147),c=i(39869),u=i(87743),h=i(11180),m=i(66806),p=i(53289),E=i(36575),S=i(81815),O=i(48270),g=i(39188),_=i(68375),T=i(74848);function A(e){const{currentFloor:t,floors:i}=e,s=(0,c.Y)(),o=(0,_.s)(),r=(0,h.x)(),l=(0,g.m)(),A=r!==m.N.Panorama&&l,v=(0,n.useRef)(null);(0,p.J)(u.e0,(()=>{v.current?.closeMenu()}));const f=(0,n.useCallback)((()=>{o.trackGuiEvent("floor_controls")}),[o]),N=t&&t.index+1,I=s.t(d.A.HELP_MORE_FLOORS_A),L=a()("floor-controls",{"two-digit":void 0!==N&&N>=10}),R=N?"floor-controls":"floor-controls-all",y=i.map((e=>{const{id:i,name:n}=e,s=t?.id===i;return(0,T.jsx)(E.b,{id:i,name:n,active:s},i)}));return A&&y.push((0,T.jsx)(E.b,{name:s.t(d.A.FLOOR_ALL),active:!t},"all")),y.reverse(),(0,T.jsx)(S.y,{buttonClassName:L,buttonDataAttribute:N?.toString(),onClick:f,variant:O.A.TERTIARY,ariaLabel:I,tooltip:I,icon:R,theme:"overlay",menuClassName:"floor-controls-menu",menuTheme:"dark",menuPlacement:"top",ref:v,children:y})}var v=i(72260);class f extends n.Component{static contextType=(()=>r.B)();bindings=[];floorsViewData;isUnmounting=!1;constructor(e){super(e),this.state={currentFloorIndicator:!0,floors:[]}}onCurrentFloorChanged=()=>{const e=this.floorsViewData?.currentFloor||void 0,t=e&&this.floorsViewData?.getViewData(e.id);this.setState({currentFloor:t})};onFloorsChanged=()=>{const e=this.floorsViewData?.getNavigableFloorIds(),t=e.map(this.floorsViewData?.getViewData);this.setState({floors:t})};componentDidMount(){const{market:e}=this.context;e&&e.waitForData(l.X).then((e=>{this.isUnmounting||(this.floorsViewData=e,this.bindings.push(this.floorsViewData.makeFloorChangeSubscription(this.onCurrentFloorChanged),this.floorsViewData.floors.onNameChange(this.onFloorsChanged),this.floorsViewData.navigableFloorIds.onChanged(this.onFloorsChanged)),this.onCurrentFloorChanged(),this.onFloorsChanged())}))}componentWillUnmount(){this.isUnmounting=!0,this.bindings.forEach((e=>{e.cancel()}))}render(){const{className:e,viewmode:t,iconStyle:i}=this.props,{currentFloor:n,floors:s}=this.state;return s.length>1&&t!==o.w5.OUTSIDE?(0,T.jsxs)("div",{className:a()("floor-selector",e),children:[i&&(0,T.jsx)(A,{floors:s,currentFloor:n}),!i&&(0,T.jsx)("span",{className:"divider"}),!i&&(0,T.jsx)(v.b,{})]}):null}}},36575:(e,t,i)=>{"use strict";i.d(t,{b:()=>u});var n=i(96540),s=i(19389),a=i(48270);const o=new(i(9139).Vy)("floor-controls-switch-floor");var r=i(68375),l=i(17904),d=i(71687),c=i(74848);function u(e){let{name:t,id:i,active:u,theme:h="dark"}=e;const m=(0,l.S)(d.QW),p=(0,l.S)(d.Xf),E=(0,r.s)(),S=(0,n.useCallback)((async()=>{E.trackGuiEvent("floor_clicked"),m&&async function(e,t,i,n){try{await(null==n?void 0:n.stopTour());const s=null===e?"click_toggle_all_floors_button":"click_floor_select_button";t.trackGuiEvent(s),await i.moveToFloor(e,{})}catch(e){o.debug(e)}}(i||null,E,m,p)}),[E,m,i,p]);return(0,c.jsx)(s.$,{className:"floor-button",label:t,variant:a.A.TERTIARY,size:a.M.SMALL,theme:h,onClick:S,active:u})}},72260:(e,t,i)=>{"use strict";i.d(t,{b:()=>S});var n=i(32485),s=i.n(n),a=i(56147),o=i(66806),r=i(81815),l=i(48270),d=i(93900),c=i(39833),u=i(11180),h=i(36575),m=i(39869),p=i(39188),E=i(74848);function S(e){const t=(0,d.Y)(),i=(0,u.x)(),n=(0,c.X)(),S=(0,p.m)(),O=(0,m.Y)(),g=t.map((e=>{const{id:t,name:i}=e,s=n?.id===t;return(0,E.jsx)(h.b,{id:t,name:i,active:s,theme:"light"},t)})).reverse();i!==o.N.Panorama&&S&&g.unshift((0,E.jsx)(h.b,{name:O.t(a.A.FLOOR_ALL),active:!n,theme:"light"},"all"));const _=s()("floor-menu-selector",e.className),T=n?.name||O.t(a.A.FLOOR_ALL);return(0,E.jsx)(r.y,{buttonClassName:_,variant:l.A.TERTIARY,label:T,ariaLabel:T,tooltip:T,theme:"overlay",menuClassName:"floor-controls-menu",menuPlacement:"top",caret:!0,children:g})}},98557:(e,t,i)=>{"use strict";i.d(t,{w:()=>F});var n=i(56147),s=i(91977),a=i(19389),o=i(48270),r=i(22213),l=i(81088),d=i(26432),c=i(5262),u=i(93702),h=i(39869),m=i(35404),p=i(96540),E=i(41616),S=i(81277),O=i(41834),g=i(49812),_=i(47982),T=i(30901);var A=i(87805),v=i(4850),f=i(25773);var N=i(87263),I=i(10389);const L="https://matterport.com";function R(){const e=(0,E.a)(),t=null==e?void 0:e.listingUrl,i=(0,E.J)(),n=null==i?void 0:i.brand,s=(0,S.y)(N.km),a=(()=>{const e=(0,g.h)(),t=(0,T.t)(),i=(0,_.j)(),n=(0,c.i)(m.k5,"");if(n&&(null==e?void 0:e.model.hasDiscoverUrl())){const e=new URL(`${n}${i}`,"https://matterport.com");return t&&t!==i&&e.searchParams.set("view",t),e.toString()}return null})(),o=(0,A.Z)(f.d,"applicationKeys",new v.X).values();return(0,p.useMemo)((()=>n!==I.$.MATTERPORT?t&&s?t:null:o.some((({sdkType:e})=>e===O.pd.Type.BUNDLE||e===O.pd.Type.EMBED))?L:a||L),[o,t,s,n,a])}var y=i(70400),b=i(74848);const D=()=>{const e=(0,h.Y)(),t=!(0,c.i)(m.qu,!1),i=(0,u.K)(),n=(0,E.J)(),s=n?e.t(n.logoPhraseKey):"",a=n?.logoWhite,o=(0,b.jsx)("img",{className:"footer-logo",alt:s,src:a}),r=R();return(0,p.useEffect)((()=>{i.broadcast(new y.cq(r??""))}),[i,r]),t&&r?(0,b.jsx)("a",{className:"link logo-link",href:r,target:"_blank","data-testid":"footer-logo-link",children:o}):o};var M=i(4717),P=i(56547),k=i(90087),w=i(68375),C=i(12103),x=i(32485),H=i.n(x);const U="gui";function F(e){const t=(0,h.Y)(),i=(0,w.s)(),u=(0,k.L)(),m=(0,M.G)(),p=!!m&&(0,P.AF)(m),E=(0,c.i)(C.Vg,!1),{isWorkshop:S=!1,modelRatingEnabled:O,disabled:g}=e;if(S&&!O)return null;const _=!g&&p&&!S&&O,T=H()("showcase-footer-button-group",_?"showcase-footer-button-group-wrap":"");return(0,b.jsxs)("div",{className:"showcase-footer","data-testid":"showcase-footer",children:[(0,b.jsxs)(s.e,{className:T,children:[!g&&p&&!S&&!E&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(a.$,{variant:o.A.TERTIARY,size:"small",theme:"overlay",onClick:()=>{const t=e.openModal===r.a.DEFURNISH_AI;u.issueCommand(new l.X6(r.a.DEFURNISH_AI,!t)),i.trackGuiEvent("click_defurnish_ai_warning",{interactionSource:U})},className:"defurnish-ai-warning",ariaRole:"link",ariaHasPopup:"dialog",disabled:g,label:t.t(n.A.DEFURN_AI_WARNING)}),(0,b.jsx)(G,{})]}),!g&&O&&!E&&(0,b.jsx)(a.$,{variant:o.A.TERTIARY,size:"small",theme:"overlay",onClick:()=>{u.issueCommand(new d.c),i.trackGuiEvent("click_feedback_button",{interactionSource:U})},className:"model-feedback-link",ariaRole:"link",ariaHasPopup:"dialog",disabled:g,label:t.t(n.A.FEEDBACK)}),!g&&!S&&O&&!E&&(0,b.jsx)(G,{}),!g&&!S&&!E&&(0,b.jsx)(a.$,{variant:o.A.TERTIARY,size:"small",theme:"overlay",onClick:()=>{const t=e.openModal===r.a.HELP;u.issueCommand(new l.X6(r.a.HELP,!t)),i.trackGuiEvent("click_help_button",{interactionSource:U})},ariaRole:"link",disabled:g,ariaHasPopup:"dialog",label:t.t(n.A.HELP)}),!g&&!S&&!E&&(0,b.jsx)(G,{}),!g&&!S&&!E&&(0,b.jsx)(a.$,{variant:o.A.TERTIARY,size:"small",theme:"overlay",onClick:()=>{i.trackGuiEvent("click_terms_button",{interactionSource:U}),window.open("https://matterport.com/legal","_blank")},ariaRole:"link",disabled:g,ariaHasPopup:"dialog",label:t.t(n.A.TERMS)})]}),!g&&!S&&(0,b.jsx)(D,{})]})}function G(){return(0,b.jsx)("span",{className:"footer-divider",children:" | "})}},36065:(e,t,i)=>{"use strict";i.d(t,{A:()=>c});var n=i(96540),s=i(27200),a=i(56147),o=i(77570),r=i(19389),l=i(48270),d=i(74848);class c extends n.Component{static contextType=(()=>o.B)();constructor(e){super(e),this.state={fullscreen:s.aS()},document.addEventListener("fullscreenchange",this.onFullScreenChange),document.addEventListener("webkitfullscreenchange",this.onFullScreenChange),document.addEventListener("MSFullscreenChange",this.onFullScreenChange),document.addEventListener("mozfullscreenchange",this.onFullScreenChange)}componentWillUnmount(){document.removeEventListener("fullscreenchange",this.onFullScreenChange),document.removeEventListener("webkitfullscreenchange",this.onFullScreenChange),document.removeEventListener("MSFullscreenChange",this.onFullScreenChange),document.removeEventListener("mozfullscreenchange",this.onFullScreenChange)}handleButtonClick=()=>{const{analytics:e}=this.context;s.aS()?(e.trackGuiEvent("click_exit_fullscreen",{interactionSource:"gui"}),s.Eh()):(e.trackGuiEvent("click_enter_fullscreen",{interactionSource:"gui"}),s.lh(document.body))};onFullScreenChange=e=>{const{mainDiv:t}=this.context,i=s.aS();i?t.classList.add("full-screen"):t.classList.remove("full-screen"),this.setState({fullscreen:i})};render(){const{fullscreen:e}=this.state,t=e?this.context.locale.t(a.A.EXIT_FULLSCREEN):this.context.locale.t(a.A.VIEW_FULLSCREEN),i=e?"fullscreen-exit":"fullscreen";return(0,d.jsx)("div",{className:"fullscreen-mode",children:(0,d.jsx)(r.$,{onClick:this.handleButtonClick,ariaLabel:t,tooltip:t,tooltipOptions:{placement:"top"},icon:i,theme:"overlay",variant:l.A.TERTIARY})})}}},19188:(e,t,i)=>{"use strict";i.d(t,{X:()=>m});var n=i(96540),s=i(32485),a=i.n(s),o=i(27612),r=i(69485),l=i(77897),d=i(77570),c=i(58480),u=i(77363),h=i(74848);class m extends n.Component{static contextType=(()=>d.B)();scrollbarRef=(()=>(0,n.createRef)())();resizeSubscription;elementRef=(()=>(0,n.createRef)())();isUnmounting=!1;constructor(e,t){super(e,t),this.state={scrollLeft:0,hideScrollbar:(0,o.c)((0,u.J)(t)),scrollPosition:l.BB.None,scrollable:!1}}componentDidMount(){this.context.market.waitForData(c.G).then((e=>{this.isUnmounting||(this.resizeSubscription=e.onPropertyChanged("size",(e=>{this.setState({hideScrollbar:(0,o.c)(e)})})))})),this.onScrollableChanged(!0),this.onScrollPositionChange(l.BB.Beginning)}componentWillUnmount(){this.isUnmounting=!0,this.resizeSubscription?.cancel()}componentDidUpdate(e){const{activeElement:t}=this.props;if(null!==t&&e.activeElement!==t){const e=this.scrollbarRef.current;e&&e.scrollToElement(t)}}onScrollableChanged=e=>{this.setState({scrollable:e})};onScrollPositionChange=e=>{this.setState({scrollPosition:e})};setSorting(e){const t=this.elementRef.current;if(t)if(e){if(t.classList.add("sorting"),this.props.mobile){const e=this.scrollbarRef.current;e&&e.pauseScrollHandling()}}else t.classList.remove("sorting")}getScrollableContainer=()=>{const e=this.scrollbarRef.current,t=e?.getScrollableContainer();return t||void 0};handleHighlightClickable=()=>{this.props.highlightClickable(!0)};render(){const{thumbScrollingOnly:e,children:t,totalSteps:i}=this.props,{hideScrollbar:n,scrollPosition:s,scrollable:o}=this.state,d=a()({scrollable:o,[s]:!0});return(0,h.jsx)("div",{id:"reel",className:d,ref:this.elementRef,children:(0,h.jsx)(r.A,{direction:l.OP.horizontal,ref:this.scrollbarRef,hideScrollbar:n,thumbScrollingOnly:e,waitToUpdate:0===i,handleClick:this.handleHighlightClickable,onScrollableChanged:this.onScrollableChanged,onScrollPositionChange:this.onScrollPositionChange,children:t})})}}},94171:(e,t,i)=>{"use strict";i.d(t,{f:()=>I});var n=i(96540),s=i(32485),a=i.n(s),o=i(77570),r=i(13893),l=i(1333),d=i(66806),c=i(14804),u=i(74771),h=i(40104),m=i(9241),p=i(80855),E=i(98236),S=i(47737),O=i(35447),g=i(56147),_=i(74848);function T(e){let{highlight:t}=e;const i=(0,E.Ez)(S.P),n=(0,u.Ym)(),s=t.snapshot.sourceViewId,a=i?.getDefurnishView()?.id,o=a&&s===a,r=(0,O.p_)(t);return o||r?(0,_.jsxs)("span",{className:"highlight-icons",children:[r&&(0,_.jsx)(A,{name:"sparkle",tooltip:n.t(g.A.WORKSHOP.HLR.AUTO_GENERATED)}),o&&(0,_.jsx)(A,{name:"furniture-slash",tooltip:n.t(g.A.WORKSHOP.HLR.DEFURNISHED)})]}):null}function A(e){let{name:t,tooltip:i}=e;const[s,a]=(0,n.useState)(null);return(0,_.jsxs)(_.Fragment,{children:[(0,_.jsx)(h.I,{ref:a,name:t,size:m.l.SMALL}),(0,_.jsx)(p.m,{target:s,title:i})]})}var v=i(19389),f=i(48270);const{HLR:N}=g.A.WORKSHOP;class I extends n.Component{static contextType=(()=>o.B)();element;editHighlight=e=>{e.stopPropagation(),this.props.onClickHighlight(this.props.index,!0)};removeHighlight=e=>{e.stopPropagation(),this.props.onRemoveHighlight&&this.props.onRemoveHighlight(this.props.highlight.id)};onClickHighlight=e=>{e.preventDefault(),this.props.onClickHighlight(this.props.index,!1)};setContainerRef=e=>{const{index:t,getRef:i}=this.props;this.element=e,i&&i(t,this.element)};renderTransitionSettings(){const{locale:e}=this.context,{transitionType:t,panDirection:i,index:n}=this.props,s=i!==l.ND.Auto;let a="pan-auto",o=e.t(N.PAN_DIRECTION_SETTING_AUTO);i===l.ND.Left?(a="icon icon-rotate-left",o=e.t(N.PAN_DIRECTION_SETTING_LEFT)):i===l.ND.Right&&(a="icon icon-rotate-right",o=e.t(N.PAN_DIRECTION_SETTING_RIGHT));let d="";return t===r.fl.FadeToBlack?d=e.t(N.TRANSITION_SETTING_SLIDESHOW):t===r.fl.Interpolate&&(d=e.t(N.TRANSITION_SETTING_WALKTHROUGH)),(0,_.jsxs)("div",{className:"transition-settings",children:[(0,_.jsxs)("span",{className:"transition-type",children:[n+1," - ",d]}),(0,_.jsx)("span",{className:"pan-direction-type",children:o}),s&&(0,_.jsx)("span",{className:`pan-icon ${a}`})]})}renderImageBar(){const{locale:e}=this.context,{highlight:t,editable:i}=this.props,n=t.snapshot.is360,s=t.snapshot.metadata.cameraMode,o="string"==typeof t.sourceViewId,r=this.getMarker(s,n,o)??"",l=e.t(N.REMOVE_HIGHLIGHT_TOOLTIP_MESSAGE),d=e.t(N.EDIT_HIGHLIGHT_TOOLTIP_MESSAGE);return(0,_.jsxs)("div",{className:"image-bar",children:[(0,_.jsx)("span",{className:a()("highlight-marker",{[r]:!i})}),i&&(0,_.jsxs)(_.Fragment,{children:[(0,_.jsx)(v.$,{className:"highlight-remove",onClick:this.removeHighlight,tooltip:l,ariaLabel:l,icon:"delete",theme:"overlay",variant:f.A.FAB}),(0,_.jsx)(T,{highlight:t}),(0,_.jsx)(v.$,{className:"highlight-edit",onClick:this.editHighlight,tooltip:d,ariaLabel:d,icon:"toggle-pencil",theme:"overlay",variant:f.A.FAB})]})]})}getMarker(e,t,i){return i?"icon-furniture-slash":e===d.N.Dollhouse||e===d.N.Floorplan?null:t?"icon-360":"icon-panorama"}render(){const{highlight:e,active:t,editable:i}=this.props,n=e.snapshot.name,s=!!n||i;return(0,_.jsxs)("div",{className:a()("highlight-box",{active:t,editable:i}),onClick:this.onClickHighlight,ref:this.setContainerRef,children:[(0,_.jsx)(c.q,{aspectRatio:e.snapshot.aspectRatio,resource:e.snapshot.thumbnailUrl,className:"highlight-image"}),this.renderImageBar(),i&&this.renderTransitionSettings(),(0,_.jsx)("div",{className:a()("image-name",{shadowed:s}),children:(0,_.jsx)("span",{className:"static-text",role:"listitem","aria-label":n||"highlight",children:n})})]})}}},16281:(e,t,i)=>{"use strict";i.d(t,{n:()=>F});var n=i(50747),s=i(38731),a=i(66806);var o=i(99438),r=i(1932),l=i(15580),d=i(98236),c=i(12715);const u=(0,d.v_)(c.O),h=e=>e===a.N.Dollhouse||e===a.N.Floorplan||e===a.N.Mesh||e===a.N.Panorama;var m=i(83748),p=i(22044),E=i(642),S=i(97994),O=i(11180);var g=i(32485),_=i.n(g),T=i(96540),A=i(95541),v=i(48270),f=i(19389),N=i(21728),I=i(39869),L=i(27200);var R=i(56147),y=i(68375),b=i(72879),D=i(74848);const M={[a.N.Dollhouse]:N.f.Dollhouse,[a.N.Floorplan]:N.f.Floorplan,[a.N.Mesh]:N.f.InsideMesh,[a.N.Panorama]:N.f.Inside},P={[a.N.Dollhouse]:R.A.VIEW_DOLLHOUSE,[a.N.Floorplan]:R.A.VIEW_FLOORPLAN,[a.N.Mesh]:R.A.VIEW_INSIDE_MESH,[a.N.Panorama]:R.A.VIEW_INSIDE},k={[a.N.Dollhouse]:R.A.HOTKEY_VIEW_DOLLHOUSE,[a.N.Floorplan]:R.A.HOTKEY_VIEW_FLOORPLAN,[a.N.Mesh]:null,[a.N.Panorama]:R.A.HOTKEY_VIEW_INSIDE},w={[a.N.Dollhouse]:N.r.Dollhouse,[a.N.Floorplan]:N.r.Floorplan,[a.N.Mesh]:N.r.InsideMesh,[a.N.Panorama]:N.r.Inside};function C(e){const{disabled:t,mode:i,changeViewmode:n,currentOptimisticTargetMode:a,responsiveToNarrrowLayout:o}=e,r=(0,A.H)()&&o,l=(0,s.B)(),d=(0,y.s)(),c=(0,b.U)("mode-buttons"),u=i===a,h=P[i],m=k[i],p=w[i],E=M[i],S=function(e,t){const i=(0,T.useMemo)((()=>!(0,L.C8)()),[]),n=(0,I.Y)(),s=n.t(e);return i&&null!=t?`${s} ${n.t(t)}`:s}(h,m),O=r&&l,g={placement:O?"bottom":"top",offset:O?[0,10]:void 0},_=O&&u?void 0:v.A.TERTIARY,N=O&&u?"light":"overlay",R=O?v.M.LARGE:void 0,C=(0,T.useCallback)((async()=>{if(!u){d.trackGuiEvent(p);try{await n(i)}catch(e){c.warn(e)}}}),[p,u,d,n,i,c]);return(0,D.jsx)("div",{className:`mode-button mode-${E}`,children:(0,D.jsx)(f.$,{onClick:C,icon:E,variant:_,theme:N,size:R,active:u,disabled:t,tooltip:S,tooltipOptions:g,ariaLabel:S,disableInteraction:u})})}var x=i(88581);var H=i(17904),U=i(71687);function F(e){let{allowedModes:t,responsiveToNarrowLayout:i}=e;const d=function(){const e=(0,n.F)(),t=(0,s.B)(),i=(0,o._)(),d=(0,r.m)(),c=u();if(!i||!c)return[];const h=[];(!!t||e.tryGetSetting(l.n9,!1))&&h.push(a.N.Dollhouse),(t||e.tryGetSetting(l._z,!1))&&h.push(a.N.Floorplan);!function(e,t){return!t&&!e}(i.hasEnabledAlignedSweeps(d),t)&&h.push(a.N.Panorama);return!function(e){return!e}(t)&&h.push(a.N.Mesh),h}();t=t||d,i=i??!0;const c=(0,m.N)(),g=function(){const e=(0,x.o)();return(0,p.A)(e?e.transitionActiveObservable:new S.L(!1))}(),A=function(){const e=(0,O.x)(),t=(0,E.R)(),i=(0,p.A)(t?t.pose.isPitchFactorOrthoObservable:new S.L(!1));return e===a.N.Dollhouse&&i?a.N.Floorplan:e}(),v=(0,H.S)(U.yT),f=!c,[N,I]=(0,T.useState)(null),L=(0,T.useCallback)((async e=>{v&&c&&!g&&(I(e),await v.changeViewmode(e))}),[v,c,g]);if(t.length<2)return null;const R=g&&null!=N?N:A,y=null!=R&&h(R)?t.indexOf(R):0,b=Math.max(y,0),M=`offset-${b}`,P=t[b],k=t.map((e=>(0,D.jsx)(C,{mode:e,currentOptimisticTargetMode:P,disabled:f,responsiveToNarrrowLayout:i,changeViewmode:L},e.toString())));return(0,D.jsxs)("div",{className:"mode-buttons-container",children:[(0,D.jsx)("div",{className:_()("current-mode-pill",M)}),(0,D.jsx)("div",{className:_()("mode-buttons","viewmode-controls",e.className),children:k})]})}},53794:(e,t,i)=>{"use strict";i.d(t,{f:()=>ee});var n=i(96540),s=i(55285),a=i(71397),o=i(73566),r=i(96425),l=i(1763),d=i(32485),c=i.n(d),u=i(19389),h=i(48270),m=i(17904),p=i(42107),E=i(96282),S=i(56147),O=i(87965),g=i(16876),_=i(5262),T=i(38731),A=i(53289),v=i(87743);const f=3e3;var N=i(71687),I=i(39869),L=i(50747),R=i(41299),y=i(74848);const{HLR:b}=S.A.WORKSHOP;function D(e){let{highlights:t,currentStep:i,tourPlaying:s,tourTransitioning:a}=e;const o=!(0,_.i)(O.Y.TourTextNudgeDismissed,!1),r=function(){const[e,t]=(0,n.useState)(!1),i=(0,n.useRef)(void 0);(0,A.J)(v.lz,(()=>{t(!0),s(),i.current=setTimeout((()=>{t(!1),i.current=void 0}),f)}));const s=()=>{i.current&&(clearTimeout(i.current),i.current=void 0)};return e}(),l=(0,I.Y)(),d=(0,L.F)(),p=(0,T.B)(),E=(0,R.K)(),[S,D]=(0,n.useState)(!1),M=(0,m.S)(N.Xf),P=(0,n.useCallback)((function(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];d.setLocalStorageSetting(O.Y.TourTextNudgeDismissed,!0),t&&e.stopPropagation()}),[d]),k=(0,n.useCallback)((async e=>{await(M?.stopTour()),P(e,!1)}),[M,P]);(0,n.useEffect)((()=>{let e=null;return D(!1),a&&(e=window.setTimeout(D,5e3,!0)),()=>{e&&(window.clearTimeout(e),e=null)}}),[a]);const w=t[i],C=p&&!(w?.title||w?.description)&&o,x=w?.title||(C?l.t(b.HIGHLIGHT_TITLE_PLACEHOLDER):""),H=w?.description||(C?l.t(b.HIGHLIGHT_DESCRIPTION_PLACEHOLDER):""),U=!S&&(s||E||r),F=c()("tour-story",{active:U,prompt:C});return(0,y.jsxs)(g.w,{open:U,className:F,onClick:U?k:void 0,"aria-live":"polite","aria-atomic":"true",children:[C&&(0,y.jsx)(u.$,{className:"tour-story-dismiss",theme:"dark",variant:h.A.TERTIARY,icon:"close",onClick:P}),(0,y.jsx)("div",{className:"tour-story-title",children:x}),(0,y.jsx)("div",{className:"tour-story-description",children:H})]})}var M=i(68375),P=i(90160),k=i(95541);const{TOURS:w}=S.A.SHOWCASE,{UP_NEXT:C}=S.A.GENERIC,x=[p.X.FastForwarding,p.X.Rewinding,p.X.Skipping];function H(e){const{currentStep:t,handlePlayPause:i,highlights:s,tourPlaying:a,minimalistMode:o=!1}=e,[r,l]=(0,n.useState)(!1),d=(0,p.I)(),O=(0,I.Y)(),g=(0,M.s)(),_=(0,k.H)(),T=(0,E.t)(),A=(0,m.S)(N.az),v=(0,m.S)(N.Xf),f=0===s.length,L=a?O.t(S.A.PAUSE):O.t(S.A.PLAY),R=O.t(S.A.PREVIOUS),b=O.t(S.A.NEXT),H=f||!a?"play-unicode":"pause",U=f||x.includes(d),F=s[t],G=s[T.toIndex],V=T.active&&T.toIndex!==t,W=A?.layersData.getDefurnishView()?.id,B=G?.sourceViewId,j=!(!B||!W)&&B===W,K=!(!F||!G)&&(0,P.Lt)(F.snapshot,G.snapshot)&&j;let z=F?.snapshot.name||"";a||r?a?V&&G?.snapshot.name&&!K&&(z=O.t(C,{text:G.snapshot.name})):z="":z=O.t(w.TOUR_BUTTON_LABEL);const Y=(0,n.useCallback)((()=>{l(!0),i()}),[i]),$=(0,n.useCallback)((async e=>{!f&&v&&(e.stopPropagation(),l(!0),g.trackGuiEvent("skip_foward_highlights"),await v.tourGoNext({resumeIfPlaying:!0}))}),[g,f,v]),X=(0,n.useCallback)((async e=>{!f&&v&&(e.stopPropagation(),l(!0),g.trackGuiEvent("skip_backward_highlights"),await v.tourGoPrevious({resumeIfPlaying:!0}))}),[g,f,v]);return(0,y.jsxs)("div",{className:c()("tour-story-controls",{"minimalist-tour-controls":o}),children:[(0,y.jsx)(D,{tourPlaying:a,currentStep:t,highlights:s,tourTransitioning:V}),!o&&(0,y.jsx)(u.$,{icon:"dpad-left",className:"story-tour-previous-cta",variant:h.A.TERTIARY,size:h.M.SMALL,disabled:U,ariaLabel:R,tooltip:R,onClick:X}),!o&&(0,y.jsx)(u.$,{className:"tour-story-play-pause",icon:H,variant:h.A.TERTIARY,size:h.M.SMALL,disabled:U,ariaLabel:L,tooltip:L,onClick:f?void 0:Y}),!o&&(0,y.jsx)(u.$,{icon:"dpad-right",className:"story-tour-next-cta",variant:h.A.TERTIARY,size:h.M.SMALL,disabled:U,ariaLabel:b,tooltip:b,onClick:$}),z&&a&&!_&&!o?(0,y.jsx)("span",{className:c()("tour-control-label",{active:a}),children:z}):null]})}var U=i(5275),F=i(94799);function G(e){const{reelEnabled:t,activeTool:i,disabled:s,tourMode:a}=e,l=(0,I.Y)(),d=(0,M.s)(),m=(0,U.U)(),p=(0,F.j)(N.XQ),E=(0,n.useCallback)((()=>{const e=m?"hide_":"show_";d.trackToolGuiEvent("hlr",e+"highlight_reel"),p.toggleReel(!m)}),[m,d,p]),O=a===r.cR.STORIES;if(!t||O&&i!==o.S0.HLR)return null;const g=m?l.t(S.A.CLOSE_HIGHLIGHTS):l.t(S.A.OPEN_HIGHLIGHTS),_=m?"dpad-down":"dpad-up",T=c()("highlight-button",{"hlr-expanded":m});return(0,y.jsx)(u.$,{disabled:s,className:T,onClick:E,tooltip:g,ariaLabel:g,"aria-expanded":m?"true":"false",icon:_,theme:"overlay",variant:h.A.TERTIARY})}var V=i(98903),W=i(56208),B=i(38064),j=i(19702);function K(){const e=(0,_.i)(W.Q$.HighlightReel,!0),t=(0,V.b)(j.D,j.np);return e&&t!==j.g}(0,B.c)("reelEnabled",K);function z(){const e=(0,_.i)(W.Q$.TourButtons,!0),t=(0,V.b)(j.no,j.XJ),i=(0,V.b)(j.Cs,j.ky);return e&&t!==j.wo&&i!==j.NN}(0,B.c)("tourEnabled",z);function Y(e){const{activeTool:t,handlePlayPause:i,highlights:n,hideReel:s,tourPlaying:a}=e,o=(0,I.Y)(),l=(0,T.B)(),d=K()&&!s||l,c=z()||l;if(!d&&!c)return null;const m=0===n.length,p=l||!m,E=a?o.t(S.A.PAUSE):o.t(S.A.PLAY),O=a?"pause-outline":"play";return(0,y.jsxs)("div",{className:"highlight-tour-controls",children:[d&&(0,y.jsx)(G,{disabled:!p,activeTool:t,reelEnabled:d,tourMode:r.cR.LEGACY}),c&&(0,y.jsx)(u.$,{disabled:m,active:a,onClick:i,variant:h.A.TERTIARY,theme:"overlay",className:"tour-controls",ariaLabel:E,icon:O,tooltip:E})]})}var $=i(27568),X=i(9139);const Q=new X.Vy("preview-tour"),{HLR:q}=S.A.WORKSHOP;function Z(){const e=(0,m.S)(N.Xf),t=(0,I.Y)(),i=(0,k.H)(),s=0===(0,$.u)(),a=(0,n.useCallback)((async()=>{if(!s)try{e?.startTour()}catch(e){Q.debug(e)}}),[e,s]),o=t.t(q.PREVIEW_SETTINGS_CTA),r=i?void 0:o,l=i?o:void 0;return(0,y.jsx)(u.$,{icon:"play-unicode",label:r,tooltip:l,disabled:s,size:h.M.SMALL,theme:"dark",className:"preview-tour-button",variant:h.A.FAB,onClick:a})}const J=new X.Vy("tour-controls");function ee(e){const{activeTool:t,currentStep:i,hideReel:d,toolPanelLayout:c,tourMode:u,tourPlaying:h,highlights:p,hasTours:E,minimalistMode:S=!1}=e,O=(0,T.B)(),g=(0,M.s)(),_=(0,m.S)(N.Xf),{outOfScope:A}=(0,n.useContext)(l.i),v=async()=>{if(0===p.length)return;const e=h?"pause_highlights":"play_highlights";g.trackGuiEvent(e);try{h?_?.stopTour():_?.startTour()}catch(e){J.debug(e)}},f=t===o.S0.HLR,I=t===o.S0.SEARCH,L=t===o.S0.LAYERS,R=u===r.cR.NONE,b=!!t&&!(f||I||L),D=()=>{if(O){const e=c===o.L$.BOTTOM_PANEL||c===o.L$.NARROW;if(t===o.S0.MESH_TRIM)return!1;if(e&&b)return!1}else{if(0===p.length&&!E||R||b)return!1}return!0};return(0,s.ML)("keydown",(e=>{const t=e.target;A||!D()||"CANVAS"!==t.tagName&&"BODY"!==t.tagName||(h||e.keyCode===a.D.SPACE)&&(e.stopPropagation(),v())})),f&&!h?(0,y.jsx)(Z,{}):D()?u===r.cR.STORIES?(0,y.jsx)(H,{currentStep:i,highlights:p,tourPlaying:h,handlePlayPause:v,minimalistMode:S}):!S&&(0,y.jsx)(Y,{activeTool:t,handlePlayPause:v,highlights:p,hideReel:d,tourPlaying:h})||null:null}},86434:(e,t,i)=>{"use strict";i.d(t,{o:()=>v});var n=i(52961),s=i(96540),a=i(56147),o=i(39869),r=i(68419),l=i(81088),d=i(22213),c=i(17084),u=i(73566),h=i(41535),m=i(11815),p=i(19389),E=i(48270),S=(i(26845),i(90087)),O=i(68375),g=i(74848);function _(){const e=(0,O.s)(),t=(0,S.L)(),i=(0,o.Y)(),n=(0,r.t)(),_=(0,m.W)(),T=n===d.a.MEASUREMENT_HELP,A=(0,s.useCallback)((()=>{t.issueCommand(new l.X6(d.a.MEASUREMENT_HELP,!1))}),[t]);(0,s.useEffect)((()=>(_===h.hb.CLOSED&&A(),()=>{})),[A,_]);const v=i.t(a.A.HELP),f=i.t(a.A.CLOSE),N=(0,g.jsx)(p.$,{className:"measurement-top-ui-button",variant:E.A.FAB,theme:"overlay",icon:"help",active:T,onClick:i=>{i.stopPropagation(),T||e.trackToolGuiEvent("measurements","measure_mode_help_clicked"),t.issueCommand(new l.X6(d.a.MEASUREMENT_HELP,!T))},ariaLabel:v,tooltip:!T&&v||void 0,tooltipOptions:{placement:"bottom"}},"measurement-help"),I=(0,g.jsx)(p.$,{className:"measurement-top-ui-button",icon:"close",variant:E.A.FAB,theme:"overlay",tooltip:f,tooltipOptions:{placement:"bottom"},onClick:async e=>{e&&e.stopPropagation(),A(),await t.issueCommand(new c.yU(u.S0.MEASUREMENTS,!1))}},"measurement-close");return(0,g.jsxs)("div",{className:"measurement-top-ui-button-container",children:[N,I]})}var T=i(36862),A=i(16700);class v{renderShowcaseSettingsPanel=()=>(0,g.jsx)(T.e,{});renderActive=e=>{let{createViewOverlay:t,createTopUI:i}=e;return(0,g.jsx)(g.Fragment,{children:(0,g.jsxs)(A.y,{theme:A.cD.NOVA,children:[t((0,g.jsx)(n.S,{})),i((0,g.jsx)(_,{}))]})})}}},36862:(e,t,i)=>{"use strict";i.d(t,{e:()=>p});var n=i(96540),s=i(56147),a=i(87965),o=i(39869),r=i(5262),l=i(4933),d=i(78835),c=i(7279),u=i(48535),h=i(50747),m=i(74848);function p(){const e=(0,h.F)(),t=(0,o.Y)(),i=(0,r.i)(a.Y.MeasurementSnapping,!1),p=(0,r.i)(a.Y.MeasurementContinuousLines,!1),E=(0,u.g)(),S=(0,n.useCallback)((()=>{e.setLocalStorageSetting(a.Y.MeasurementSnapping,!i)}),[e,i]),O=(0,n.useCallback)((()=>{e.setLocalStorageSetting(a.Y.MeasurementContinuousLines,!p)}),[e,p]),g=t.t(s.A.MEASUREMENT_CONTINUOUS_LINES),_=t.t(s.A.MEASUREMENT_SNAPPING),T=t.t(s.A.TOOLS.MEASUREMENTS_SETTINGS);return(0,m.jsxs)("div",{children:[(0,m.jsx)("div",{className:"floorplan-overlay-title",children:T}),(0,m.jsxs)(l.t,{className:"floorplan-overlay-tooltip",children:[E&&(0,m.jsx)(d.A,{label:_,onToggle:S,enabled:!0,toggled:i})," ",E&&(0,m.jsx)(d.A,{label:g,onToggle:O,enabled:!0,toggled:p}),(0,m.jsx)(c.m,{})]})]})}},52961:(e,t,i)=>{"use strict";i.d(t,{S:()=>Ae});var n=i(96540),s=i(90087),a=i(87635),o=i(5262),r=i(43327),l=i(87965),d=i(27200),c=i(81088),u=i(22213),h=i(41535),m=i(48535),p=i(14614),E=i(86e3),S=i(52030),O=i(43718),g=i(99325);var _=i(11815),T=i(89395),A=i(95846);function v(){const e=(0,T.E)();return(0,A.B)(e||"")}var f=i(95221);var N=i(87805),I=i(28454);const L=(0,N.u)(I.s,"pressProgress",-1);var R=i(23339),y=i(26348);const b=(e,t)=>{if(t===R.t.METRIC)return`${e.toFixed(2)}m`;const{feet:i,inches:n}=(0,y.A4)(e);return i>0?`${i}' ${n}"`:`${n}"`};var D=i(31201);const M={addEnabled:{[h.hb.CREATING]:!0,[h.hb.CONFIRMING_POINT]:!0},deleteVisible:{[h.hb.IDLE]:!0,[h.hb.CREATING]:!0,[h.hb.CREATING_NEXT_POINT]:!0}},P={addEnabled:{[h.hb.CREATING]:!0,[h.hb.CONFIRMING_POINT]:!0},deleteVisible:{[h.hb.IDLE]:!0,[h.hb.CREATING]:!0,[h.hb.CREATING_NEXT_POINT]:!0}};var k=i(24086),w=i(56147),C=i(32485),x=i.n(C),H=i(80855),U=i(39869),F=i(74848);function G(e){let{narrowLayout:t,...i}=e;return t?(0,F.jsx)(j,{...i}):(0,F.jsx)(B,{...i})}const{MEASUREMENTS:V}=w.A.WORKSHOP,W={size:"medium",placement:"bottom-start",className:"gross-area-tooltip"};function B(e){let{target:t}=e;const i=(0,U.Y)().t(V.GROSS_AREA_TOOLTIP_MESSAGE);return(0,F.jsx)(H.m,{title:i,offset:[-14,34],target:t,trigger:"hover",...W})}function j(e){let{target:t}=e;const i=(0,U.Y)(),[s,a]=(0,n.useState)(!1),o=i.t(V.GROSS_AREA_TOOLTIP_MESSAGE);return(0,n.useEffect)((()=>{if(!t)return;const e=new AbortController;return t.addEventListener("click",(()=>a((e=>!e))),{signal:e.signal}),()=>e.abort()}),[t]),s?(0,F.jsx)(H.m,{sticky:!0,title:o,offset:[-6,24],target:t,trigger:"static",...W}):null}var K=i(95541);function z(e){let{grossArea:t,noTooltip:i=!1}=e;const s=(0,K.H)(),a=(0,n.useRef)(null);return(0,F.jsxs)(F.Fragment,{children:[(0,F.jsx)("span",{ref:a,className:x()("gross-area-info",{clickable:!i}),children:t}),i?null:(0,F.jsx)(G,{target:a.current,narrowLayout:s})]})}var Y=i(51469);const{UNITS_DISPLAY:$}=w.A;var X=i(98236),Q=i(8694);const q=(0,X.v_)(Q.y);var Z=i(39833),J=i(2993),ee=i(11180),te=i(30169);const{TRIM:ie}=w.A.WORKSHOP;function ne(){const e=(0,U.Y)(),t=(0,Z.X)(),i=(0,Y.N)(),s=(0,ee.x)(),o=function(){const e=q(),[t,i]=(0,n.useState)((null==e?void 0:e.currentRoom)||null);return(0,n.useEffect)((()=>{if(!e)return()=>{};function t(){e&&i(e.currentRoom)}const n=e.makeCurrentRoomChangeSubscription(t);return t(),()=>n.cancel()}),[e]),t}(),r={formatAreaValue:!0,floorId:t?t.id:null};(0,J.vy)(s)&&o&&(r.roomId=o.id);const l=function({floorId:e,roomId:t,formatAreaValue:i=!1}){var n;const s=(0,U.Y)(),o=(0,a.J)(),r=(0,Y.N)(),l={[R.t.METRIC]:e=>`${e} ${s.t($.SQUARE_METERS)}`,[R.t.IMPERIAL]:e=>`${e} ${s.t($.SQUARE_FEET)}`}[o],d=null!==(n=t?null==r?void 0:r.getRoomArea(t,o):null==r?void 0:r.getGrossFloorArea(e,o))&&void 0!==n?n:0;return i?l(d):d.toString()}(r);let d=e.t(ie.ALL_FLOORS);return(0,J.vy)(s)&&o?d=(0,te.Ay)(o.id,e,i):t&&(d=t.name),(0,F.jsx)("div",{className:"measurements-gross-area",children:(0,F.jsx)(k.Z,{title:d,content:(0,F.jsx)(z,{grossArea:l,noTooltip:(0,J.vy)(s)&&!!o})})})}var se=i(98159),ae=i(8774),oe=i(5320),re=i(19389),le=i(48270),de=i(24478),ce=i(3036),ue=i(23863);const he="Measurement-Help",me="measurement-mode-add-tooltip",pe="measurement-mode-help";var Ee=i(38731);function Se(e){let{touchDevice:t,unaligned:i,phase:a,confirming:o,selectedGroup:r}=e;const l=(0,Ee.B)(),d=(0,s.L)(),c=(0,n.useRef)(null),u=(0,U.Y)();function m(){c.current&&c.current.dismissNudge()}const p=a===h.hb.CREATING&&(!r||0===r.count),E=a===h.hb.CREATING_NEXT_POINT&&!!r&&2===r.count,S=!o&&(p||E),O=a===h.hb.EDITING,g=S||o,_=i||O;let T=de.R.ADD,A=u.t(w.A.MEASUREMENT_ADD_LABEL);o?(T=de.R.CONFIRM,A=u.t(w.A.MEASUREMENT_SAVE_LABEL)):S&&(T=de.R.CANCEL,A=u.t(w.A.MEASUREMENT_CANCEL_LABEL));const v=r&&T!==de.R.CANCEL&&(t?!!M.deleteVisible[a]:!!P.deleteVisible[a]),f=u.t(w.A.MEASUREMENT_START_ADDING),N=l,I=v?(0,F.jsx)(re.$,{className:"action-button-outer",icon:"delete",variant:le.A.FAB,theme:"overlay",onClick:e=>{m(),e.stopPropagation(),d.issueCommand(new se.SH)}}):void 0;return(0,F.jsx)(ue.E,{outerRight:I,children:(0,F.jsx)(ce.A,{ref:c,disabled:_,addIcon:T,ariaLabel:A,ariaDescribedBy:he,allowLayerChange:g,onChangeLayer:()=>{m()},nudgeDisabled:N,nudgeMessage:f,nudgeSessionKey:me,onClick:e=>{m(),e.stopPropagation(),a===h.hb.IDLE?d.issueCommand(new ae.X):d.issueCommand(new oe.R)}})})}var Oe=i(50747);const ge=i(8241);function _e(e){const{touchDevice:t,phase:i,groupCount:s}=e,a=(0,Oe.F)(),r=(0,U.Y)(),l=(0,o.i)(pe,!1),[d,c]=(0,n.useState)(!1);if((0,n.useEffect)((()=>()=>{d&&a.setSetting(pe,!0)}),[d,a]),l)return null;const u=r.t(w.A.MEASUREMENT_HELP_CLICK_ANYWHERE),m=r.t(w.A.MEASUREMENT_HELP_ESCAPE),p=r.t(w.A.MEASUREMENT_HELP_PRESS_START),E=r.t(w.A.MEASUREMENT_HELP_DRAG_EDIT),S=r.t(w.A.MEASUREMENT_HELP_PRESS_END);let O,g,_;if(t)switch(i){case h.hb.CREATING:O=(0,F.jsx)("div",{className:"icon icon-press-hold"}),g=p;break;case h.hb.CREATING_NEXT_POINT:O=(0,F.jsx)("div",{className:"icon icon-drag-edit"}),g=S,d||c(!0);break;case h.hb.EDITING:case h.hb.POINT_PLACED:O=(0,F.jsx)("div",{className:"icon icon-finger-drag"}),g=E;break;default:return null}else switch(i){case h.hb.CREATING:O=(0,F.jsx)("div",{className:"icon icon-draw-lines"}),g=u;break;case h.hb.CREATING_NEXT_POINT:s>=3&&(O=(0,F.jsx)("div",{className:"escape-key",children:(0,F.jsx)("img",{src:ge})}),g=m,_="escape-message",d||c(!0));break;default:return null}return(0,F.jsxs)("div",{className:"overlay-message",children:[O,g&&(0,F.jsx)("span",{id:he,className:x()("message",_),children:g})]})}var Te=i(53137);i(26845);function Ae(){const e=(0,s.L)(),t=(0,a.J)(),i=(0,o.i)(l.Y.MeasurementContinuousLines,!1),T=(0,m.g)(),A=function(){const e=(0,E.F)(),t=(0,O.v)(),{roomDimensionsVisible:i}=(0,g.W)(),n=(0,o.i)(S.AU,!1);return e===p.lg.SHOWCASE&&n&&i&&t}(),N=(0,_.W)(),I=v(),R=(0,n.useMemo)((()=>(0,d.C8)()),[]),y=function(){var e;const t=(0,f.g)(),[i,s]=(0,n.useState)(null!==(e=null==t?void 0:t.pointPosition)&&void 0!==e?e:null);return(0,n.useEffect)((()=>{if(!t)return()=>{};function e(){t&&s(t.pointPosition)}const i=t.onPointPositionChanged(e);return e(),()=>i.cancel()}),[t]),i}(),P=L(),k=function(){const e=v(),t=(0,o.i)(l.Y.MeasurementContinuousLines,!1),i=(null==e?void 0:e.count)||0;return t?i>2:2===i}(),w=(0,r.f)(),C=!!I&&(k&&(i?N===h.hb.CREATING_NEXT_POINT:N===h.hb.CREATING));(0,n.useEffect)((()=>(N===h.hb.CLOSED&&e.issueCommand(new c.X6(u.a.MEASUREMENT_HELP,!1)),()=>{})),[e,N]);const x=M.addEnabled[N],H=I?.info.text?` ${I.info.text}`:"",U=I?`${b(I.length,t)} ${H}`:void 0;return(0,F.jsxs)("div",{className:"overlay grid-overlay measurements-overlay",children:[I&&(0,F.jsx)(Te.L,{children:U}),(0,F.jsx)(_e,{phase:N,touchDevice:R,groupCount:I?.count??0}),x&&(0,F.jsx)(D.z,{progress:P,screenPosition:y}),A?(0,F.jsx)(ne,{}):null,T&&(0,F.jsx)(Se,{unaligned:w,phase:N,touchDevice:R,selectedGroup:I,confirming:C})]})}},62919:(e,t,i)=>{"use strict";i.d(t,{u:()=>g});var n=i(96540),s=i(32485),a=i.n(s),o=i(39869),r=i(81088),l=i(29106),d=i(68920),c=i(48270),u=i(16700),h=i(16876),m=i(43960),p=i(19389),E=i(91977),S=i(22213),O=i(74848);function g(e){let{commandBinder:t,buttonSize:i=c.M.LARGE}=e;const[s,g]=(0,n.useState)(!1),[_,T]=(0,n.useState)(),[A,v]=(0,n.useState)(),f=(0,o.Y)(),N=(0,u.bt)("confirm-modal"),I=(0,n.useCallback)((async e=>{_?.resolve(e),g(!1),t.issueCommand(new r.rH)}),[t,_]),L=(0,n.useCallback)((()=>{I(l.$.CLOSE)}),[I]),R=(0,n.useCallback)((()=>{I(l.$.CONFIRM)}),[I]),y=(0,n.useCallback)((async e=>{switch(e.action){case l.Y.DISPLAY:if(s){if(!A?.cancellable)return Promise.reject("Cannot close non-cancellable modal");await I(l.$.CLOSE)}g(!0),t.issueCommand(new r.X6(S.a.CONFIRM,!0)),v(e.properties);const i=new d.i;return T(i),i.nativePromise();case l.Y.UPDATE:return v(e.properties),_?.nativePromise();case l.Y.CLOSE:return s?(I(l.$.CLOSE),_?.nativePromise()):Promise.reject("Cannot cancel a closed modal")}}),[I,t,A,s,_]);(0,n.useEffect)((()=>(t.addBinding(r.nX,y),()=>{t.removeBinding(r.nX,y)})),[t,y]);const b=(0,n.useCallback)((e=>e.stopPropagation()),[]),D=(0,n.useCallback)((e=>{"Escape"===e.key?L():"Enter"===e.key&&R&&R(),e.stopPropagation()}),[L,R]);if(!A)return null;const{title:M,titleLocalizationOptions:P,message:k,messageLocalizationOptions:w,confirmPhraseKey:C,cancelPhraseKey:x,closeButton:H,modalClass:U,confirmDisabled:F,cancelVariant:G}=A,V=A.cancel??(x?f.t(x):void 0),W=A.confirm??(C?f.t(C):void 0);let B=M;if("string"==typeof M&&0!==M.length){const e=void 0===P?{}:P,t=f.t(M,e);B=(0,O.jsx)("span",{children:t})}let j=k;if("string"==typeof k){const e=void 0===w?{}:w,t=f.t(k,e);j=(0,O.jsx)("p",{className:"modal-message",children:t})}return(0,O.jsx)(h.w,{open:s,className:a()("modal-background","confirm-modal-background",{open:s}),onClick:b,onPointerDown:b,onPointerUp:b,onKeyDown:D,children:(0,O.jsxs)(m.l,{testId:"confirm-modal",className:a()("confirm-modal",N,U),onClose:L,children:[(0,O.jsxs)("header",{className:"modal-header",children:[(0,O.jsx)("div",{className:"modal-title",children:B}),H&&(0,O.jsx)(p.$,{icon:"close",onClick:L})]}),(0,O.jsx)("div",{className:"modal-body",children:j}),(0,O.jsxs)(E.e,{spacing:"small",children:[V&&(0,O.jsx)(p.$,{size:i,onClick:L,variant:G||c.A.SECONDARY,children:V}),W&&(0,O.jsx)(p.$,{disabled:F,variant:c.A.PRIMARY,size:i,onClick:R,children:W})]})]})})}},76786:(e,t,i)=>{"use strict";i.d(t,{A:()=>m});var n,s,a,o=i(96540),r=i(32485),l=i.n(r),d=i(72909),c=i(16876),u=i(81923),h=i(74848);let m=(n=Reflect.metadata("design:type",Function),s=Reflect.metadata("design:paramtypes",["undefined"==typeof LoadIndicatorProps?Object:LoadIndicatorProps]),(0,d.A)(a=n(a=s(a=class extends o.Component{constructor(e){super(e)}render(){const{showing:e}=this.props;return(0,h.jsx)(c.w,{open:e,className:l()("load-indicator",{"fade-in":e,"fade-out":!e}),children:(0,h.jsx)("div",{className:"center-container",children:(0,h.jsx)(u.A,{progress:33,barWidth:4,progressColor:"#ffffff"})})})}})||a)||a)||a)},14227:(e,t,i)=>{"use strict";i.d(t,{p:()=>I});var n=i(87805),s=i(77489);const a=(0,n.u)(s.G,"isDialogVisible",!1);var o=i(48411),r=i(96540),l=i(32485),d=i.n(l),c=i(77570),u=i(56147),h=i(94380),m=i(37349),p=i(43960),E=i(28422),S=i(19389),O=i(48270),g=i(26432),_=i(79187),T=i(22972),A=i(74848);const{MODEL_RATING:v}=u.A.WORKSHOP,f=Object.values(_.zm);class N extends r.Component{static contextType=(()=>c.B)();constructor(e){super(e),this.state={currentQuestionId:_.zj}}componentWillUnmount(){this.submitCurrentRating(),this.context.commandBinder.issueCommand(new g.c(!1))}submitCurrentRating=(()=>{var e=this;return function(){let t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const{currentQuestionId:i}=e.state;let n={};switch(i){case _.zm.QUALITY:n={quality:e.state.quality};break;case _.zm.NAVIGATION:n={navigation:e.state.navigation};break;case _.zm.FEEDBACK:n={feedback:e.state.feedback},e.resetValues()}n&&e.context.commandBinder.issueCommand(new g.i(n,t))}})();resetValues=()=>{this.setState({happiness:void 0,quality:void 0,navigation:void 0,feedback:void 0})};hasPerfectHappinessRating=()=>this.state.happiness===_.kk;handleButtonClick=()=>{const{currentQuestionId:e}=this.state;let t;switch(this.submitCurrentRating(e===_.zm.FEEDBACK),e){case _.zm.QUALITY:t=_.zm.NAVIGATION;break;case _.zm.NAVIGATION:t=_.zm.FEEDBACK;case _.zm.FEEDBACK:}t&&this.setState({currentQuestionId:t})};handleHappinessClick=e=>{this.context.commandBinder.issueCommand(new g.i({happiness:e})),e!==_.kk?this.setState({happiness:e,currentQuestionId:_.zm.QUALITY}):this.submitCurrentRating(!0)};handleCheckboxChange=(e,t,i)=>{const n=i.value,s={},a=(this.state[t]||[]).slice();a.includes(n)?a.splice(a.indexOf(n),1):a.push(n),s[t]=a,this.setState(s)};handleFeedbackChange=e=>{this.setState({feedback:e})};handleClose=()=>{this.context.commandBinder.issueCommand(new g.c(!1))};renderCurrentQuestion(){const{locale:e}=this.context,{currentQuestionId:t,happiness:i}=this.state;if(t===_.zm.FEEDBACK)return(0,A.jsx)("div",{className:"question-type text-entry",children:(0,A.jsx)(m.A,{text:this.state.feedback||"",label:e.t(v.FEEDBACK_LABEL),onInput:this.handleFeedbackChange,onDone:this.handleFeedbackChange,maxLength:200,rows:3,focusOnMount:!0,scrollIntoViewOnMount:!0})});if(t===_.zm.HAPPINESS)return(0,A.jsx)(T.w,{happiness:i,setHappiness:this.handleHappinessClick});if(t===_.zm.QUALITY||t===_.zm.NAVIGATION){const i=(t===_.zm.QUALITY?this.state.quality:this.state.navigation)||[],n=_.ot[t];return(0,A.jsx)("div",{className:"question-type multi-select",children:n.map((n=>(0,A.jsx)(h.S,{enabled:!0,checkboxStyle:h.x.FILTER,onChange:this.handleCheckboxChange,onChangeArgs:[t,n],checked:i.includes(n.value),label:e.t(n.text)},n.text)))})}return null}renderProgress=()=>{const{locale:e}=this.context,{currentQuestionId:t}=this.state;if(!t)return null;if(t===_.zm.HAPPINESS||this.hasPerfectHappinessRating())return;const i=f.indexOf(t);return(0,A.jsx)("span",{className:"model-rating-progress",children:e.t(v.PROGRESS,{"current-question-number":i,"max-question-number":f.length-1})})};render(){const{locale:e}=this.context,{currentQuestionId:t}=this.state,i=t===_.zj,n=_.dW[t],s=_.SN[t],a=t===_.zm.FEEDBACK?v.SAVE:v.NEXT;return(0,A.jsxs)(p.l,{className:d()("model-rating-dialog",{"in-progress":!i}),onClose:this.handleClose,children:[(0,A.jsx)(E.J,{onClose:this.handleClose}),(0,A.jsxs)("div",{className:"model-rating-form",children:[(0,A.jsxs)("div",{className:"model-rating-question",children:[(0,A.jsx)("h3",{className:"question-title",children:e.t(n)}),s&&(0,A.jsx)("p",{className:"question-body",children:e.t(s)}),this.renderCurrentQuestion()]}),(0,A.jsxs)("footer",{className:"model-rating-footer",children:[(0,A.jsx)("div",{children:t!==_.zm.HAPPINESS&&(0,A.jsx)(S.$,{onClick:this.handleButtonClick,variant:O.A.TERTIARY,label:e.t(a)})}),this.renderProgress()]})]})]})}}function I(){const e=a(),t=(0,o.T)();return!e||t?null:(0,A.jsx)(N,{})}},28646:(e,t,i)=>{"use strict";i.d(t,{y:()=>u});var n=i(96540),s=i(77570),a=i(81088),o=i(22213),r=i(43960),l=i(28422),d=i(49649),c=i(74848);class u extends n.Component{static contextType=(()=>s.B)();onClose=()=>{this.context.commandBinder.issueCommand(new a.X6(o.a.RATING_THANK_YOU,!1))};render(){return(0,c.jsxs)(r.l,{className:"model-rating-thank-you open",onClose:this.onClose,children:[(0,c.jsx)(l.J,{onClose:this.onClose}),(0,c.jsx)(d.z,{onSupportClicked:this.onClose})]})}}},53137:(e,t,i)=>{"use strict";i.d(t,{L:()=>o});var n=i(32485),s=i.n(n),a=i(74848);function o(e){let{children:t,className:i}=e;return(0,a.jsx)("div",{className:s()("overlay-top-center",i),children:(0,a.jsx)("div",{className:"overlay-info",children:t})})}},66022:(e,t,i)=>{"use strict";i.d(t,{P:()=>A});var n=i(32485),s=i.n(n),a=i(96540),o=i(28422),r=i(14614),l=i(73943),d=i(39833),c=i(97994),u=i(22044),h=i(92237),m=i(99438);const p=new c.L({from:null,to:null,progress:new h.z(0),promise:Promise.resolve()});var E=i(38253);function S(){const e=function(){const e=(0,m._)();return(0,u.A)(e?e.transitionObservable:p)}();return(0,E.P)((null==e?void 0:e.to)||null)}var O=i(39188),g=i(17904),_=i(71687),T=i(74848);function A(e){const t=(0,g.S)(_.QW),i=(0,l.a)(),n=function(){const e=(0,d.X)(),t=S(),[i,n]=(0,a.useState)(e?e.name:"");return(0,a.useEffect)((()=>(e?n(e.name):t&&n(t.name),()=>{})),[e,t]),i}(),c=(0,O.m)(),u=(0,a.useCallback)((()=>{t?.moveToFloor(null,{suppressCameraMovement:!1})}),[t]);if(i!==r.Jj.PLAYING)return null;const h=s()("floor-container",e.className);return(0,T.jsxs)("div",{className:h,children:[(0,T.jsx)("div",{className:"floor-title h4",children:n||""}),c&&(0,T.jsx)(o.J,{theme:"dark",onClose:u,tooltip:""})]})}},92065:(e,t,i)=>{"use strict";i.d(t,{A:()=>v});var n=i(96540),s=i(27200),a=i(79827),o=i(55285),r=i(11180),l=i(66806),d=i(78649),c=i(16876),u=i(28422),h=i(32485),m=i.n(h),p=i(39869),E=i(56147),S=i(59760),O=i(5262),g=i(12103),_=i(78063),T=i(74848);const A={rotate:{desktop:{icon:[a.z.mouse.ctrlClick,a.z.mouse.dragRight],phrase:E.A.SHOWCASE.DOLLHOUSE.ROTATE_PROMPT.DESKTOP},touch:{icon:[a.z.gesture.dragTwoFingerRotate],phrase:E.A.SHOWCASE.HELP.TOUCH_DOLLHOUSE_ROTATE}},inside:{desktop:{icon:[a.z.mouse.clickInside],phrase:E.A.SHOWCASE.DOLLHOUSE.INSIDE_PROMPT.DESKTOP},touch:{icon:[a.z.gesture.tapInside],phrase:E.A.SHOWCASE.DOLLHOUSE.INSIDE_PROMPT.TOUCH}}},v=()=>{const e=(0,_.B)(),t=(0,p.Y)(),i=(0,s.C8)(),[a,h]=(0,o.Mj)("peekaboo_dh_prompt_dismissed",0),[v,f]=(0,n.useState)(!1),[N,I]=(0,n.useState)(!1),[L,R]=(0,n.useState)(A.rotate),y=(0,r.x)(),b=(0,S.O)(),D=(0,O.i)(g.Vg,!1),M=t.t(E.A.SHOWCASE.DOLLHOUSE.ROTATE_PROMPT.OR),P=y===l.N.Dollhouse&&!b&&!v&&a<3;(0,n.useEffect)((()=>{let e;return P&&(R(A.rotate),e=setTimeout((()=>{I(!0)}),1e4)),()=>{e&&clearTimeout(e)}}),[P]),(0,n.useEffect)((()=>{const t=P&&L===A.rotate?e.subscribe(d.i,(()=>{R(A.inside)})):null;return()=>{t?.cancel()}}),[P,e,L]);const k=(0,n.useCallback)((()=>{h(a+1),f(!0),I(!1)}),[a,h]);(0,n.useEffect)((()=>{!P&&N&&k()}),[P,N,k]);const{icon:w,phrase:C}=L[i?"touch":"desktop"],x=w.length>0&&w[0],H=w.length>1&&w[1],U=(0,T.jsx)("svg",{width:"2",height:"16",viewBox:"0 0 2 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:(0,T.jsx)("path",{d:"M1 0L1 16",stroke:"white"})});return(0,T.jsxs)(c.w,{open:N&&!D,className:m()("peekaboo-dh-prompt",!N&&"unloading"),children:[x&&(0,T.jsx)("img",{src:w[0],alt:"",height:i?26:50}),H&&(0,T.jsxs)("div",{className:"separator",children:[U,(0,T.jsx)("span",{children:M}),U]}),H&&(0,T.jsx)("img",{src:w[1],alt:"",height:i?26:50}),(0,T.jsx)("span",{className:"text",children:t.t(C)}),(0,T.jsx)(u.J,{theme:"dark",onClose:k,tooltip:""})]})}},68965:(e,t,i)=>{"use strict";i.d(t,{t:()=>U});var n=i(39869),s=i(5262),a=i(56147),o=i(96540),r=i(49812);var l=i(35404),d=i(73566),c=i(56208),u=i(26482),h=i(77570),m=i(77897),p=i(69485),E=i(12103),S=i(68375),O=i(3645),g=i(41616),_=i(74848);const{SUBSCRIBER_PROMPT:T}=a.A.SHOWCASE,A=e=>{e.preventDefault()},v=()=>{const e=(0,S.s)(),t=(0,n.Y)(),[i,s]=(0,o.useState)(!0),a=(0,g.J)(),r=a?.logoBlack,l=(0,o.useCallback)((t=>{e.trackGuiEvent("subscriber_prompt_b_banner_click"),window.open(O.oZ,"_blank")}),[e]);return(0,o.useEffect)((()=>(i&&(e.trackGuiEvent("subscriber_prompt_b_banner_viewed"),s(!1)),()=>{})),[e,i]),(0,_.jsxs)("div",{className:"subscriber-prompt-banner",onClick:l,children:[(0,_.jsx)("img",{className:"matterport-logo",alt:"Matterport",src:r}),(0,_.jsx)("a",{className:"link",target:"_blank",onClick:A,href:O.oZ,children:t.t(T.BANNER_CTA_LINK_TEXT)})]})};var f=i(38064),N=i(69340),I=i(8323);const L=(0,f.c)("isSubscriberBannerVisible",(()=>{const e=(0,N.l)();return(0,I.E)().bannerEnabled&&e}));var R=i(87399),y=i(95143),b=i(39905);const{SUMMARY:D}=a.A.SHOWCASE,M=E._8/1.6,P=new b.r({});class k extends o.Component{static contextType=(()=>h.B)();constructor(e){super(e),this.state={thumbnail:void 0}}componentDidMount(){const{market:e}=this.context.engine;e.waitForData(u.G).then((e=>{e.thumb&&e.thumb.get().then((e=>{try{this.setState({thumbnail:this.getImageURL(e)})}catch{this.setState({thumbnail:void 0})}}))}))}getImageURL=e=>{const t=new URL(e);return t.searchParams.set("width",String(E._8)),t.searchParams.delete("height"),t.searchParams.delete("fit"),t.searchParams.set("crop","16:10"),t.searchParams.set("dpr",String(window.devicePixelRatio)),t.href};onExternalLinkClicked=e=>{this.context.analytics.track("showcase_share_origin_link_clicked")};getFilteredValue(e,t,i,n){return!this.context.settings.tryGetSetting(t,i)||n&&!this.props.brandingEnabled?"":e}render(){const{modelDetails:e,showExternalUrl:t,isSubscriberBannerVisible:i}=this.props,{thumbnail:n}=this.state,{locale:s}=this.context,{name:o,presentedBy:r,summary:l,description:d,formattedAddress:u,contact:h,externalUrl:S}=e,O=t?S:"",g=this.getFilteredValue(o,c.Q$.DetailsModelName,!0,!1),T=this.getFilteredValue(u,c.Q$.DetailsAddress,!1,!1),A=this.getFilteredValue(l,c.Q$.DetailsSummary,!1,!1),f=this.getFilteredValue(d,c.Q$.DetailsSummary,!1,!1),N=this.getFilteredValue(r,c.Q$.PresentedBy,!1,!0),I=this.getFilteredValue(h.name,c.Q$.DetailsName,!1,!0),L=this.getFilteredValue(h.email,c.Q$.DetailsEmail,!1,!0),b=this.getFilteredValue(h.phone,c.Q$.DetailsPhone,!1,!0),k=this.getFilteredValue(h.formattedPhone,c.Q$.DetailsPhone,!1,!0),w=k||b;return(0,_.jsx)("div",{className:"summary-content",children:(0,_.jsxs)(p.A,{thumbScrollingOnly:!0,direction:m.OP.vertical,children:[n?(0,_.jsx)("img",{className:"summary-image",width:E._8,height:M,src:n,alt:`Photo of "${g}"`}):null,i&&(0,_.jsx)(v,{}),(0,_.jsxs)("div",{className:"summary-text-content",children:[g&&(0,_.jsxs)("div",{children:[(0,_.jsx)("div",{className:"section-header",children:s.t(D.LABEL_LOCATION)}),(0,_.jsx)("div",{className:"location",children:g})]}),T&&(0,_.jsxs)("div",{children:[(0,_.jsx)("div",{className:"section-header",children:s.t(D.LABEL_ADDRESS)}),(0,_.jsx)("div",{className:"section-body",children:T})]}),N&&(0,_.jsxs)("div",{children:[(0,_.jsx)("div",{className:"section-header",children:this.context.locale.t(a.A.PRESENTED_BY)}),(0,_.jsx)("div",{className:"section-body",children:N})]}),(I||b||L)&&(0,_.jsxs)("div",{children:[(0,_.jsx)("div",{className:"section-header",children:s.t(D.LABEL_CONTACT)}),(0,_.jsxs)("div",{className:"section-body",children:[I&&(0,_.jsx)("div",{children:I}),L&&(0,_.jsx)("div",{children:(0,_.jsx)("a",{className:"link",href:"mailto:"+L,children:L})}),w&&(0,_.jsx)("div",{children:w})]})]}),O&&(0,_.jsxs)("div",{children:[(0,_.jsx)("div",{className:"section-header",children:s.t(D.LABEL_LEARN_MORE)}),(0,_.jsxs)("div",{className:"external-link-wrapper",children:[(0,_.jsx)("i",{className:"icon-ext-link",children:" "}),(0,_.jsx)("a",{className:"section-body link",onClick:this.onExternalLinkClicked,href:O,target:"_blank",rel:"noopener",children:O})]})]}),A&&!f&&(0,_.jsxs)("div",{children:[(0,_.jsx)("div",{className:"section-header",children:s.t(D.LABEL_INFORMATION)}),(0,_.jsx)("div",{className:"section-body",children:A})]}),f&&(0,_.jsxs)("div",{children:[(0,_.jsx)("div",{className:"section-header",children:s.t(D.LABEL_DESCRIPTION)}),(0,_.jsx)(R.L,{text:f,textParser:P,markers:y.S8,linksActive:!1,className:"section-body"})]})]})]})})}}const w=L(k);var C=i(66060);const{SUMMARY:x}=a.A.SHOWCASE;function H(){const e=(0,n.Y)(),t=function(){const e=(0,r.h)(),[t,i]=(0,o.useState)((null==e?void 0:e.model.details)||null);return(0,o.useEffect)((()=>{if(!e)return()=>{};function t(){e&&i(e.model.details)}const n=e.onChanged(t);return t(),()=>n.cancel()}),[e]),t}(),i=(0,s.i)(l.Lj,!0),a=(0,s.i)(l.qu,!1),c=i&&!a,u=i&&!a;return t?(0,_.jsx)(C.h,{toolId:d.S0.SUMMARY,title:e.t(x.HEADING),children:(0,_.jsx)(w,{modelDetails:t,brandingEnabled:c,showExternalUrl:u})}):null}class U{constructor(){}renderActive=e=>{let{createLeftPanel:t}=e;return(0,_.jsx)(_.Fragment,{children:t((0,_.jsx)(H,{}))})}}},66060:(e,t,i)=>{"use strict";i.d(t,{h:()=>_});var n=i(96540),s=i(32485),a=i.n(s),o=i(20246),r=i(17084),l=i(73566),d=i(16700),c=i(16876),u=i(64057),h=i(78956),m=i(91406),p=i(12103),E=i(98003),S=i(90087),O=i(53289),g=i(74848);function _(e){const{closed:t,toolId:i,children:s,className:_,filmstrip:T,title:A,titleNode:v,subheader:f,hideHelp:N,hideBadge:I,footer:L,controls:R,subheaderCollapsedHeight:y,hideHeader:b}=e,D=(0,S.L)(),M=(0,u.J)(),P=(0,h.O)(),k=(0,m.M)(i),[w,C]=(0,n.useState)(M),[x,H]=(0,n.useState)(!1),U=(0,n.useRef)(void 0),F=(0,d.bt)("list-panel"),G=(0,n.useCallback)((e=>{if(e){if(x||w)return;window.clearTimeout(U.current),H(!0),U.current=window.setTimeout((()=>{H(!1),C(!0)}),p.zu)}else C(!1),window.clearTimeout(U.current)}),[H,C,x,w,U]);(0,n.useEffect)((()=>{!M&&w&&G(M)}),[G,M,w]),(0,n.useEffect)((()=>()=>{window.clearTimeout(U.current)}),[]),(0,O.J)(o.rP,(e=>{let{collapsed:t}=e;return G(t)}));const V=!!k&&!t,W=P===l.L$.BOTTOM_PANEL,B=!(w&&!x),j={closed:t,collapsed:w,collapsing:x,"filmstrip-panel":T},K=y&&(W&&w)?{height:y+p.Zn}:void 0,z=f&&(y||!w),Y=T||W;return(0,g.jsxs)(c.w,{open:V,className:a()("list-panel",F,j,_),style:K,onKeyDown:function(e){"Escape"===e.code&&(e.stopPropagation(),D.issueCommand(new r.u3(i)))},focus:!0,children:[k&&!b&&(0,g.jsx)(E.a,{tool:k,title:A,titleNode:v,hideHelp:N,hideBadge:I,expandable:Y,onTogglePanel:G,children:(0,g.jsx)(n.Suspense,{children:R})}),(0,g.jsxs)(n.Suspense,{children:[z&&f,B&&s,B&&L||null]})]})}},98003:(e,t,i)=>{"use strict";i.d(t,{a:()=>A});var n=i(26544),s=i(96540),a=i(56147),o=i(39869),r=i(17084),l=i(64057),d=i(16700),c=i(19389),u=i(48270),h=i(91977),m=i(28422),p=i(32485),E=i.n(p),S=i(74848);const O=e=>{let{children:t,className:i}=e;if(!t)return null;const n=E()("panel-title",i);return(0,S.jsx)("div",{className:n,children:t})};var g=i(90087);const{COLLAPSE_PANEL:_,EXPAND_PANEL:T}=a.A.PANELS;function A(e){const{tool:t,title:i,titleNode:a,children:p,expandable:A,hideHelp:v,hideBadge:f,onTogglePanel:N}=e,I=(0,o.Y)(),L=(0,l.J)(),R=(0,g.L)(),y=(0,d.bt)("panel-header"),b=!v,D=(0,s.useCallback)((()=>{t&&R.issueCommand(new r.u3(t.id))}),[R,t]),M=(0,s.useCallback)((e=>{e&&e.stopPropagation();const t=!L;N&&N(t),R.issueCommand(new r.li(t))}),[R,L,N]),P=L?"dpad-up":"dpad-down",k=L?I.t(T):I.t(_),w=E()("panel-header",y);return(0,S.jsxs)("div",{className:w,onClick:A?M:void 0,children:[(0,S.jsxs)(O,{children:[(0,S.jsxs)("div",{className:"panel-name",children:[A&&(0,S.jsx)(c.$,{icon:P,label:i,tooltip:k,tooltipOptions:{placement:"bottom-start"},variant:u.A.TERTIARY,onClick:M}),!A&&i]}),t&&t.badgePhraseKey&&!f&&(0,S.jsx)("span",{className:"word-badge",children:I.t(t.badgePhraseKey)}),a||null]}),(0,S.jsxs)(h.e,{className:"panel-header-controls",children:[p,b&&t&&(0,S.jsx)(n.k,{tool:t}),(0,S.jsx)(m.J,{tooltipOptions:{placement:"bottom"},onClose:D})]})]})}},80701:(e,t,i)=>{"use strict";i.d(t,{m:()=>c});var n=i(32485),s=i.n(n),a=i(96540),o=i(22937),r=i(34184),l=i(53289);var d=i(74848);function c(e){const t=function(){const[e,t]=(0,a.useState)(!1),i=(0,a.useCallback)((()=>{t(!0)}),[]),n=(0,a.useCallback)((()=>{t(!1)}),[]);return(0,l.J)(o.n1,i),(0,l.J)(r.A,n),e}(),{activeStep:i,currentStep:n,highlights:c}=e,u=c[n],h=i!==n,m=(u?.title||u?.description)&&t&&!h;return(0,d.jsx)("div",{className:"overlay-layer",children:(0,d.jsx)("div",{className:s()("tour-story-scrim",{active:m})})})}},56271:(e,t,i)=>{"use strict";i.d(t,{F:()=>B});var n=i(32485),s=i.n(n),a=i(73566),o=i(96425),r=i(5275),l=i(16876),d=i(96540),c=i(77570),u=i(9139),h=i(27200),m=i(72909),p=i(68930),E=i(19188),S=i(94171),O=i(74848);class g extends d.Component{highlights=[];constructor(e){super(e)}componentDidUpdate(e){e.currentStep!==this.props.currentStep&&this.props.setActiveElement(this.highlights[this.props.currentStep])}render(){const{highlights:e}=this.props;return e&&e.length?(0,O.jsx)(this.highlightList,{items:e}):null}highlightList=e=>{const{currentStep:t,onHighlightClicked:i}=this.props;return(0,O.jsx)("div",{className:"hlr-container",children:(0,O.jsx)("div",{className:"highlights",role:"list",children:e.items.map(((e,n)=>(0,O.jsx)(S.f,{highlight:e,index:n,active:n===t,editable:!1,onClickHighlight:i,getRef:this.addHighlightRef},`${e.id}_${n}`)))})})};addHighlightRef=(e,t)=>{this.highlights[e]=t,e===this.props.currentStep&&this.props.setActiveElement&&this.props.setActiveElement(t)}}i(27503);var _,T,A,v=i(71687);const f=new u.Vy("highlight-reel");let N=(_=Reflect.metadata("design:type",Function),T=Reflect.metadata("design:paramtypes",["undefined"==typeof ReelReadOnlyProps?Object:ReelReadOnlyProps]),(0,m.A)(A=_(A=T(A=class extends d.Component{static contextType=(()=>c.B)();bindings=[];mobile=(()=>(0,h.Fr)())();highlightClickable;constructor(e){super(e),this.state={activeElement:null}}componentWillUnmount(){this.bindings.forEach((e=>{e.cancel()}))}render(){const{activeStep:e,highlights:t,totalSteps:i}=this.props;return(0,O.jsx)("div",{id:"reel-container",children:(0,O.jsx)(E.X,{totalSteps:i,activeElement:this.state.activeElement,mobile:this.mobile,highlightClickable:this.setHighlightClickable,thumbScrollingOnly:!1,children:(0,O.jsx)(g,{highlights:t,currentStep:e,onHighlightClicked:this.onHighlightClicked,setActiveElement:this.setActiveElement})})})}setActiveElement=e=>{this.setState({activeElement:e})};setHighlightClickable=(e=>this.highlightClickable=e).bind(this);onHighlightClicked=async e=>{const{analytics:t}=this.context;if(this.highlightClickable)try{const i=await this.context.engine.getModuleBySymbol(v.Xf);this.props.tourPlaying&&await i.stopTour(),this.props.transition.active||(t.trackToolGuiEvent("hlr","click_highlight"),await i.tourGoTo(e).catch((e=>{if(!(e instanceof p.K))throw e;f.warn(e.message)})),this.setHighlightClickable(!1))}catch(e){f.debug(e)}}})||A)||A)||A);var I=i(56147);const{HLR:L}=I.A.SHOWCASE;class R extends d.Component{static contextType=(()=>c.B)();render(){const{locale:e}=this.context,t=e.t(L.EMPTY_REEL_LEARN_MORE),i=e.t(L.EMPTY_REEL_TITLE),n=e.t(L.EMPTY_REEL_MESSAGE);return(0,O.jsx)("div",{className:"empty-reel",children:(0,O.jsxs)("div",{className:"no-highlights-message",children:[(0,O.jsx)("p",{children:i}),(0,O.jsxs)("p",{children:[n,(0,O.jsx)("a",{className:"link",target:"_blank",href:'http://matterhub.ru',children:t})]})]})})}}var y=i(27568),b=i(1333),D=i(96282),M=i(42107);function P(){const e=(0,D.t)(),t=(0,M.I)(),i=t===M.X.Paused,n=t===M.X.Idle,s=(0,d.useRef)(null),a=(0,d.useRef)(0);if(n)return a.current=0,a.current;if(!i)return a.current;if(e===s.current)return a.current;if(!b.h9.includes(e.type))return a.current;const{started:o,stopped:r,duration:l}=e,c=(r-o)/l,u=a.current+c*(1-a.current);return s.current=e,a.current=u,u}var k=i(45202),w=i(67491);function C(e){let{index:t}=e;const i=(0,y.u)(),n=P(),a=(0,M.I)(),o=(0,k.v)(),r=(0,w.I)(),l=function(){var e,t;const i=(0,D.t)(),n=(0,d.useRef)(null);return b.h9.includes(i.type)?i.toIndex===(null===(t=n.current)||void 0===t?void 0:t.toIndex)?n.current.duration:(n.current=i,i.duration):(null===(e=n.current)||void 0===e?void 0:e.duration)||0}(),c=r.duration,u=r.toIndex,h=u===t,m=o===t,p=["story-tour-progress-bar"];if(a===M.X.Skipping)t>=u?p.push("story-tour-progress-bar--incomplete"):p.push("story-tour-progress-bar--complete");else if(m)switch(a){case M.X.Completed:p.push("story-tour-progress-bar--complete");break;case M.X.Playing:p.push("story-tour-progress-bar--playing");break;case M.X.Paused:p.push("story-tour-progress-bar--paused");break;case M.X.Rewinding:p.push("story-tour-progress-bar--rewinding");break;case M.X.FastForwarding:p.push("story-tour-progress-bar--fast-forwarding");break;case M.X.Idle:p.push("story-tour-progress-bar--incomplete")}else o===i-1&&0===u?p.push("story-tour-progress-bar--complete"):h&&a===M.X.Rewinding?p.push("story-tour-progress-bar--full-rewinding"):to&&p.push("story-tour-progress-bar--incomplete");const E={};if(m&&(a===M.X.Playing||a===M.X.Paused?E.animationDuration=`${l}ms`:a===M.X.FastForwarding&&(E.animationDuration=`${c}ms`)),a===M.X.Rewinding){const e=n/(n+1);m&&h?E.animationDuration=`${c}ms`:m?E.animationDuration=e*c+"ms":h&&(E.animationDuration=(1-e)*c+"ms",E.animationDelay=e*c+"ms")}return(0,O.jsx)("div",{className:s()(...p),style:E})}function x(){const e=P();return(0,d.useEffect)((()=>{document.documentElement.style.setProperty("--currentTourScenePosition",100*e+"%")}),[e]),null}var H=i(69485),U=i(77897),F=i(14804);function G(e){const{snapshot:t,numberOfHighlights:i,currentIndex:n,xOffset:a}=e,{name:o}=t,r=n===i-1,l={};0===n?(l.left="15px",l.transform="none"):r?(l.right="10px",l.transform="none"):l.left=`${a}px`;const d=s()("highlight-box","active"),c=s()("image-name",{shadowed:!!o});return(0,O.jsxs)("div",{style:l,className:d,children:[(0,O.jsx)(F.q,{aspectRatio:t.aspectRatio,resource:t.thumbnailUrl,className:"highlight-image"}),(0,O.jsx)("div",{className:c,children:(0,O.jsx)("span",{className:"static-text",children:o})})]})}class V extends d.Component{static contextType=(()=>c.B)();scrollbarRef=(()=>(0,d.createRef)())();reelRef=(()=>(0,d.createRef)())();constructor(e){super(e),this.state={focusedIndex:-1,xOffset:0,scrollLeft:0,scrollPosition:U.BB.None,scrollable:!1}}componentDidUpdate(){const{activeStep:e,tourPlaying:t}=this.props,i=this.scrollbarRef.current;if(i&&!i.isDragging&&t){const t=this.reelRef.current?.querySelector(`#highlightbar_${e}`);t&&i.scrollToElement(t)}}onClickSceneBar=async e=>{e.preventDefault();const t=e.target.getAttribute("data-index");if(t){const e=parseInt(t,10),{tourPlaying:i,transition:n}=this.props,{analytics:s,engine:a}=this.context;try{const t=await a.getModuleBySymbol(v.Xf);i&&await t.stopTour({willResume:!0}),n.active||(s.track("showcase_gui",{gui_action:"click_scene_bar"}),await t.tourGoTo(e),i&&await t.startTour({index:e}))}catch(e){}}};onEnterSceneBar=e=>{const t=e.target.getAttribute("data-index");if(t){const i=parseInt(t,10);this.setState({focusedIndex:i,xOffset:e.clientX})}};onLeaveSceneBar=e=>{const t=e.target.getAttribute("data-index");if(t){parseInt(t,10)===this.state.focusedIndex&&this.setState({focusedIndex:-1})}};renderSceneBar(e,t){const{focusedIndex:i}=this.state,n=s()("highlight-bar",{"highlight-bar-hover":t<=i});return(0,O.jsx)("div",{id:`highlightbar_${t}`,className:"highlight-compacted","data-index":t,onClick:this.onClickSceneBar,onMouseEnter:this.onEnterSceneBar,onMouseLeave:this.onLeaveSceneBar,onMouseMove:this.onEnterSceneBar,children:(0,O.jsx)("div",{className:n,children:(0,O.jsx)(C,{index:t})})},`${e.id}_bar_${t}`)}renderHighlightBox(){const{focusedIndex:e,xOffset:t}=this.state;if(-1===e)return null;const{highlights:i}=this.props,n=i[e];return(0,O.jsx)(G,{snapshot:n.snapshot,numberOfHighlights:i.length,currentIndex:e,xOffset:t})}onScrollableChanged=e=>{this.setState({scrollable:e})};onScrollPositionChange=e=>{this.setState({scrollPosition:e})};render(){const{highlights:e,tourPlaying:t}=this.props;return(0,O.jsxs)("div",{className:s()("tour-story-reel",{"tour-playing":t}),ref:this.reelRef,children:[(0,O.jsx)(x,{}),(0,O.jsx)(H.A,{direction:U.OP.horizontal,ref:this.scrollbarRef,hideScrollbar:!0,thumbScrollingOnly:!1,waitToUpdate:0===e.length,handleClick:this.onClickSceneBar,onScrollableChanged:this.onScrollableChanged,onScrollPositionChange:this.onScrollPositionChange,children:(0,O.jsx)("div",{className:"highlights",children:e.map(((e,t)=>this.renderSceneBar(e,t)))})}),this.renderHighlightBox()]})}}class W extends d.PureComponent{static contextType=(()=>c.B)();handleClick=()=>{this.context.analytics.trackToolGuiEvent("hlr","tour_progress");const{reelOpen:e}=this.props;e||this.context.engine.tryGetModuleBySymbolSync(v.XQ)?.toggleReel(!0)};getTourSteps(){const{totalSteps:e,activeStep:t}=this.props,i=[];for(let n=0;n0?(0,O.jsxs)("div",{id:"tour-progress",className:s()({"faded-in":t,"full-width":e}),onClick:this.handleClick,"data-balloon":o,"data-balloon-pos":"right","data-balloon-size":"xs",children:[r&&(0,O.jsx)("div",{className:"progress-number",children:a}),-1!==i&&(0,O.jsx)("div",{className:"progress-bar",children:this.getTourSteps()})]}):null}}function B(e){const{activeStep:t,highlights:i,openTool:n,tourMode:d,tourPlaying:c,transition:u}=e,h=(0,r.U)(),m=n===a.S0.HLR;if(d===o.cR.STORIES)return m&&!c?null:(0,O.jsx)(V,{highlights:i,tourPlaying:c,activeStep:t,transition:u});{const e=h&&(!m||c),n=i?.length||0,a=0===n;return(0,O.jsxs)(O.Fragment,{children:[(0,O.jsx)(l.w,{className:s()("highlight-reel",{"reel-empty":a,closed:!e}),open:e,children:a?(0,O.jsx)(R,{}):(0,O.jsx)(N,{highlights:i,tourPlaying:c,activeStep:t,totalSteps:n,transition:u})}),c&&(0,O.jsx)(W,{activeStep:t,tourPlaying:c,totalSteps:n,reelOpen:h})]})}}},61767:(e,t,i)=>{"use strict";i.d(t,{Y:()=>r});var n=i(47712),s=i(4106),a=i(74771),o=i(74848);function r(e){let{value:t,children:i}=e;return(0,o.jsx)(a.U6.Provider,{value:t,children:(0,o.jsx)(s.CY,{i18n:n.Ru,children:i})})}},38064:(e,t,i)=>{"use strict";i.d(t,{c:()=>s});var n=i(74848);function s(e,t){return i=>function(s){let{ref:a,...o}=s;const r=t(),l={...o,[e]:r};return(0,n.jsx)(i,{...l,ref:a})}}},24478:(e,t,i)=>{"use strict";i.d(t,{M:()=>c,R:()=>d});var n=i(96540),s=i(32485),a=i.n(s),o=i(48270),r=i(22166),l=(i(34940),i(74848));let d=function(e){return e.ADD="plus",e.CANCEL="cancel",e.CONFIRM="checkmark",e}({});function c(e){let{addIcon:t,className:i,ref:s,...c}=e;const u=(0,n.useRef)(null);(0,n.useImperativeHandle)(s,(()=>({dismissNudge:()=>{u.current&&u.current.dismissNudge()}})),[]);const h=t===d.CANCEL,m=h?d.ADD:t,p=a()("add-button",i,{"add-cancel":h});return(0,l.jsx)(r.Y,{...c,ref:u,className:p,variant:o.A.FAB,icon:m,theme:"dark",featured:!0})}},3036:(e,t,i)=>{"use strict";i.d(t,{A:()=>L});var n=i(96540),s=i(32485),a=i.n(s),o=i(56147),r=i(39869),l=i(38731),d=i(94799),c=i(78379),u=i(58024),h=i(2716),m=i(47613);var p=i(93877);const E=()=>{const e=function(){const e=(0,m._)(),[t,i]=(0,n.useState)((null==e?void 0:e.currentLayers())||[]);return(0,n.useEffect)((()=>{if(!e)return()=>{};function t(){i((null==e?void 0:e.currentLayers())||[])}const n=e.onCurrentLayersChanged(t);return t(),()=>n.cancel()}),[e]),t}();for(const t of e)if(t.layerType===p.ku.VIEW_DATA_LAYER)return t;return null};var S=i(90683),O=i(12621),g=i(98907),_=i(24478),T=i(19389),A=i(48270),v=i(81815),f=i(71687),N=(i(34940),i(74848));const{LAYERS:I}=o.A.WORKSHOP;function L(e){let{allowLayerChange:t,onChangeLayer:i,ref:s,...o}=e;const m=(0,n.useRef)(null),p=(0,n.useRef)(null),L=(0,l.B)(),R=(0,c.S)(),y=(0,u.z0)(),b=(0,h.z)(),D=(0,r.Y)(),M=E(),P=(0,S.e)(),k=(0,d.j)(f.az),w=y&&!P(y.id)?y:M;(0,n.useImperativeHandle)(s,(()=>({dismissNudge:()=>{m.current&&m.current.dismissNudge()}})),[]);const C=(0,N.jsx)(_.M,{ref:m,...o});if(!R||!L||b.length<2)return C;const x=e=>{e!==w?.id&&(k.selectLayer(e,!0),i&&i(e))},H=w?(0,O.H)(D,w):D.t(I.UNLAYERED_LAYER_LABEL),U=(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)("div",{className:"button-menu-label",children:D.t(I.LAYER_ADDING_TO_LABEL)}),(0,N.jsx)("div",{className:"active-layer-name",children:H})]}),F=(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)("span",{className:"menu-title",onClick:e=>e.stopPropagation(),children:D.t(I.LAYER_ADDING_TO_CHOICE_LABEL)}),(0,N.jsx)(T.$,{icon:"close",variant:A.A.TERTIARY,size:A.M.SMALL,onClick:()=>{p.current&&p.current.closeMenu()}})]});return(0,N.jsxs)("div",{className:a()("layered-add-button",{"with-layer-menu":t}),children:[C,(0,N.jsxs)(v.y,{ref:p,label:U,className:"add-menu-button",menuClassName:"add-button-layer-menu",menuPlacement:"top",variant:A.A.FAB,size:A.M.SMALL,theme:"dark",caret:!0,children:[F,b.map((e=>{const{id:t}=e,i=y?.id===t;return P(e.id)?null:(0,N.jsx)(g.$,{layer:e,onClick:x,active:i},t)}))]})]})}},94380:(e,t,i)=>{"use strict";i.d(t,{S:()=>h,x:()=>u});var n,s,a,o=i(96540),r=i(32485),l=i.n(r),d=i(72909),c=i(74848);let u=function(e){return e[e.DEFAULT=0]="DEFAULT",e[e.FILTER=1]="FILTER",e}({}),h=(n=Reflect.metadata("design:type",Function),s=Reflect.metadata("design:paramtypes",["undefined"==typeof CheckboxProps?Object:CheckboxProps]),(0,d.A)(a=n(a=s(a=class extends o.Component{static defaultProps={enabled:!0,error:!1};checkboxElement;constructor(e){super(e),this.state={checkedValue:e.checked}}UNSAFE_componentWillReceiveProps(e){this.setState({checkedValue:e.checked})}onChange=e=>{this.props.stopPropagation&&e.stopPropagation(),this.setState((e=>({checkedValue:!e.checkedValue})),(()=>{this.props.onChange&&this.props.onChange(this.checkboxElement,...this.props.onChangeArgs||[])}))};setCheckboxRef=e=>{this.checkboxElement=e};render(){const{checkboxStyle:e=u.DEFAULT,className:t,dataValue:i,enabled:n,error:s,helpText:a,id:o,label:r}=this.props,{checkedValue:d}=this.state,h=!n;return(0,c.jsxs)("div",{ref:this.setCheckboxRef,id:o,role:"checkbox","aria-checked":d?"true":"false","aria-disabled":h,"data-value":i,className:l()("checkbox-element",`checkbox-style-${u[e].toLowerCase()}`,{checked:d,disabled:h,error:s},t),onClick:this.onChange,tabIndex:0,children:[e!==u.FILTER&&(0,c.jsx)("div",{className:"checkbox icon-checkmark"}),(0,c.jsx)("div",{className:"checkbox-text",children:r}),a&&(0,c.jsx)("span",{className:"help-text",children:a})]})}})||a)||a)||a)},97638:(e,t,i)=>{"use strict";i.d(t,{T:()=>g});var n,s,a,o=i(32485),r=i.n(o),l=i(96540),d=i(94448),c=i(72909),u=i(74848);let h=function(e){return e.UP="up",e.DOWN="down",e}({}),m=(n=Reflect.metadata("design:type",Function),s=Reflect.metadata("design:paramtypes",["undefined"==typeof DropdownProps?Object:DropdownProps]),(0,c.A)(a=n(a=s(a=class extends l.Component{elementRef=(()=>(0,l.createRef)())();static defaultProps=(()=>({direction:h.DOWN}))();transitionTimeout;constructor(e){super(e),this.state={open:!1,transitioning:!1}}componentWillUnmount(){window.removeEventListener("click",this.onOutsideClick)}onOutsideClick=e=>{this.toggleDropdown(!1)};onToggleClick=e=>{e.stopPropagation(),this.toggleDropdown()};onTransitionEnd=e=>{e&&e.target!==e.currentTarget||(window.clearTimeout(this.transitionTimeout),this.setState({transitioning:!1}))};toggleDropdown=e=>{const{open:t}=this.state,i=void 0!==e?e:!t;i?window.addEventListener("click",this.onOutsideClick):window.removeEventListener("click",this.onOutsideClick),this.transitionTimeout=window.setTimeout(this.onTransitionEnd,1e3),this.setState({open:i,transitioning:!0})};render(){const{open:e,transitioning:t}=this.state,{children:i,className:n,direction:s,...a}=this.props,o={up:s===h.UP,open:e,transitioning:t};return(0,u.jsxs)("div",{ref:this.elementRef,className:r()("dropdown",o,n),...a,children:[(0,u.jsx)("div",{className:"dropdown-mask",children:(0,u.jsx)("div",{className:"dropdown-menu",onTransitionEnd:this.onTransitionEnd,children:i})}),(0,u.jsx)("div",{className:"dropdown-toggle",children:(0,u.jsx)(d.K0,{iconClass:"icon-toolbar-more-horiz",onClick:this.onToggleClick,className:"dropdown-toggle"})})]})}})||a)||a)||a);var p=i(1763);const E="offsetWidth",S="collapsed";function O(e,t,i){const n=[];return l.Children.forEach(e,((e,s)=>{("expanded"===i?s=t)&&n.push((0,u.jsx)(l.Fragment,{children:e},s))})),n}function g(e){const t=(0,l.useRef)(null),i=(0,l.useRef)(null),n=(0,l.useRef)(null),s=(0,l.useRef)(null),{leftControls:a,rightControls:o,className:d,highPriorityLeftControlIndices:c,...g}=e,[_,T]=(0,l.useState)(0),A=a.concat(o);(0,l.useEffect)((()=>{const e=s.current?.elementRef.current,a=t.current,o=i.current,r=n.current;if(!(a&&o&&e&&r))return;const d=a.children,u=o.children,h=r.children;if(!d||d.length!==u.length)return;const m=()=>{for(const e of d)e.classList.remove(S);for(const e of u)e.classList.remove(S);for(const e of h)e.classList.remove(S);const t=a[E],i=e[E]||0;let n=0,s=0;for(let e=0;et&&s++}s!==_&&T(s);const o=l.Children.count(A)-s;for(let e=0;e=o&&c.includes(e);t?u[e].classList.add(S):d[e].classList.add(S),i?(u[e].classList.add(S),d[e].classList.add(S)):h[e].classList.add(S)}};m();const p=new ResizeObserver(m);return p.observe(a),()=>{if(p.disconnect(),!a||!r)return;const e=a.querySelectorAll(`.${S}`);Array.from(e).forEach((e=>e.classList.remove(S)));const t=r.querySelectorAll(`.${S}`);Array.from(t).forEach((e=>e.classList.remove(S)))}}));const v=`collapsible-list ${d}`,f={hidden:0===_};if(!A||!Array.isArray(A))return A;const N=l.Children.count(A)-_,I=O(A,N,"expanded"),L=O(A,N,"collapsed"),R=c.length>0;return(0,u.jsxs)("div",{className:"collapsible-list-container",children:[(0,u.jsxs)("div",{className:r()(v),...g,children:[(0,u.jsxs)("div",{ref:t,className:"collapsible-list-items",children:[(0,u.jsx)(p.i.Provider,{value:{outOfScope:!1},children:I}),(0,u.jsx)(p.i.Provider,{value:{outOfScope:!0},children:L})]}),(0,u.jsx)(m,{ref:s,direction:h.UP,className:r()(f),children:(0,u.jsxs)("div",{ref:i,className:"collapsible-list-menu",children:[(0,u.jsx)(p.i.Provider,{value:{outOfScope:!0},children:I}),(0,u.jsx)(p.i.Provider,{value:{outOfScope:!1},children:L})]})})]}),R&&(0,u.jsx)("div",{ref:n,className:"high-prio-overflow",children:A})]})}},14804:(e,t,i)=>{"use strict";i.d(t,{q:()=>c});var n=i(96540),s=i(32485),a=i.n(s),o=i(6336),r=i(95300),l=i(86866),d=i(74848);function c(e){let{resource:t,className:i,children:s,onClick:c,aspectRatio:u}=e;const[h]=(0,o.i)(t),m=(0,n.useMemo)((()=>{if(!h)return{};if(u){const e=h.startsWith("blob:")?h:(0,r.s1)(h,u);return{minWidth:"fit-content",aspectRatio:`${(0,l.QX)(u,2)} / 1`,backgroundImage:`url('${e.toString()}')`}}return{backgroundImage:`url('${h}')`}}),[h,u]);return(0,d.jsx)("div",{className:a()(i),style:m,onClick:c,children:s})}},94448:(e,t,i)=>{"use strict";i.d(t,{Df:()=>m,K0:()=>S,Tp:()=>p,zt:()=>E});var n,s,a,o=i(96540),r=i(32485),l=i.n(r),d=i(72909),c=i(27200),u=i(77570),h=i(74848);let m=function(e){return e.ENABLED="enabled",e.DISABLED="disabled",e.DECORATIVE="decorative",e.DIMMED="dimmed",e.ACTIVE="active",e.BUSY="busy",e}({}),p=function(e){return e[e.STANDARD=0]="STANDARD",e[e.MINI=1]="MINI",e[e.SMALL=2]="SMALL",e[e.LARGE=3]="LARGE",e}({}),E=function(e){return e.CLEAR="clear",e.PLAIN="plain",e.OVERLAY="overlay",e.PRIMARY="primary",e.SOCIAL="social",e.TOOLBAR="toolbar",e}({}),S=(n=Reflect.metadata("design:type",Function),s=Reflect.metadata("design:paramtypes",["undefined"==typeof IconButtonProps?Object:IconButtonProps]),(0,d.A)(a=n(a=s(a=class e extends o.Component{static contextType=(()=>u.B)();static iMobile=(()=>(0,c.OF)()||(0,c.J0)())();constructor(e){super(e)}onClick=e=>{const t=this.props.buttonState;t!==m.BUSY&&t!==m.DISABLED&&this.props.onClick&&this.props.onClick(e)};onMouseDown=t=>{const{onMouseDown:i,onClick:n,buttonState:s}=this.props;if(i)i(t);else if(e.iMobile&&n&&s!==m.BUSY&&s!==m.DISABLED){const e=this.context.mainDiv.getRootNode().activeElement;e&&t.cancelable&&(e.blur(),t.preventDefault())}};render(){const{ariaLabel:e,breakoutTooltip:t,buttonSize:i,buttonState:n,buttonStyle:s,children:a,className:o,dataValue:r,iconClass:d,id:c,onClick:u,onMouseUp:S,tooltipMsg:O,tooltipPersist:g,tooltipPreformatted:_}=this.props,T=n===m.DISABLED,A=n===m.BUSY,v=n===m.DECORATIVE,f=!T&&!A&&!v,N=O?!!_:void 0,I={"button-small":i===p.SMALL,"button-large":i===p.LARGE,"button-disabled":T,"button-dimmed":n===m.DIMMED,"button-active":n===m.ACTIVE,"button-busy":A,"button-interactive":f,"icon-button-primary":s===E.PRIMARY,"icon-button-overlay":s===E.OVERLAY,"icon-button-plain":s===E.PLAIN,"icon-button-social":s===E.SOCIAL,"icon-button-toolbar":s===E.TOOLBAR,"icon-button-breakout-tooltip":t},L={id:c,role:"button","aria-label":e||O,"aria-disabled":T,"data-value":r,className:l()("icon-button",I,o),onClick:u?this.onClick:void 0,onMouseUp:S,onMouseDown:this.onMouseDown},R={"data-balloon-pre":N,"data-balloon-persist":g};return t||Object.assign(L,R),(0,h.jsxs)("div",{...L,children:[t&&(0,h.jsx)("div",{className:"icon-button-breakout-tooltip-container",children:(0,h.jsx)("div",{className:"icon-button-breakout-tooltip-trigger",...R})}),d&&(0,h.jsx)("span",{className:`icon ${d}`}),a]})}})||a)||a)||a)},31201:(e,t,i)=>{"use strict";i.d(t,{z:()=>d});var n=i(96540),s=i(27200),a=i(81923),o=i(74848);const r=132,l=8;function d(e){let{progress:t,screenPosition:i}=e;if(!(0,n.useMemo)((()=>(0,s.C8)()),[])||!i||0===t)return null;const d={left:i.x-r/2+"px",top:i.y-r/2+"px"};return(0,o.jsx)("div",{className:"point-button-wrapper",style:d,children:(0,o.jsx)(a.A,{progress:100*t,innerRadius:r,barWidth:l,children:(0,o.jsx)("circle",{className:"point",cx:"0",cy:"0",r:"22",transform:"rotate(-90)",fill:"#fff"})})})}},73918:(e,t,i)=>{"use strict";i.d(t,{Q:()=>l});var n=i(96540),s=i(1763),a=i(48270),o=i(22166),r=i(74848);function l(e){let{active:t,nudgeDisabled:i=!1,className:l,theme:d="overlay",variant:c=a.A.TERTIARY,size:u,...h}=e;const{outOfScope:m}=(0,n.useContext)(s.i);return(0,r.jsx)("div",{className:l,children:(0,r.jsx)(o.Y,{...h,nudgeDisabled:m||i,variant:c,theme:d,active:t,featured:!0,nudgeClassName:"collapsible-nudge-button-tooltip"})})}},45391:(e,t,i)=>{"use strict";i.d(t,{c:()=>l});var n=i(32485),s=i.n(n),a=i(28422),o=i(48270),r=i(74848);function l(e){let{title:t,message:i,children:n,closeButton:l=!1,className:d,onClose:c}=e;return(0,r.jsxs)("div",{className:s()("nudge",d),children:[(0,r.jsxs)("div",{className:s()("nudge-header",{"nudge-with-title":!!t}),children:[t&&(0,r.jsx)("div",{className:"nudge-title",children:t}),l&&(0,r.jsx)(a.J,{className:"nudge-close-button",size:o.M.SMALL,onClose:c})]}),i&&(0,r.jsx)("div",{className:s()("nudge-message",{"nudge-message-with-title":t}),children:i}),n]})}},22166:(e,t,i)=>{"use strict";i.d(t,{Y:()=>p});var n=i(96540),s=i(32485),a=i.n(s),o=i(55285),r=i(5262),l=i(19389),d=i(45391),c=i(73943),u=i(14614),h=i(50747),m=i(74848);function p(e){let{className:t,tooltip:i,children:s,onClick:p,closeButton:E,nudgeTitle:S,nudgeMessage:O,nudgeSize:g="medium",nudgeDisabled:_=!1,showTimeout:T=5e3,dismissTimeout:A=5e3,nudgeFeatureKey:v="",nudgeLocalStorage:f="",nudgeSessionKey:N="",onNudgeDismissed:I,featured:L=!1,tooltipOptions:R={},nudgeClassName:y,ref:b,...D}=e;const M=(0,h.F)(),[P,k]=(0,n.useState)(!1),[w,C]=(0,o.Mj)(f,!1),x=(0,r.i)(N,!1),H=(0,r.i)(v,!1),U=(0,n.useRef)(0),F=(0,n.useRef)(0),G=!(!S&&!O),V=(0,n.useCallback)((()=>{if(!G||P||_)return!1;return(!v||H)&&!(!!f&&w)&&!(!!N&&x)}),[G,P,_,v,H,f,w,N,x]),[W,B]=(0,o.Lh)(),j=(0,c.a)(),K=(0,n.useCallback)((()=>{window.clearTimeout(U.current),U.current=0,window.clearTimeout(F.current),F.current=0}),[]),z=(0,n.useCallback)((()=>{K(),P&&(f&&C(!0),N&&M.setSetting(N,!0),I&&I(),k(!1))}),[K,P,f,N,I,C,M]),Y=(0,n.useCallback)((()=>{if(!G)return;const e=U.current||F.current;V()&&!e&&(U.current=window.setTimeout((()=>{U.current=0,V()&&k(!0)}),T))}),[T,G,V]);(0,n.useImperativeHandle)(b,(()=>({dismissNudge:()=>{z()}})),[z]),(0,n.useEffect)((()=>(_||j!==u.Jj.PLAYING||0===B.height||0===B.width?K():Y(),()=>{K()})),[_,B,Y,K,j]),(0,n.useEffect)((()=>(P&&(F.current=window.setTimeout(z,A)),()=>{K()})),[P,z,A,K]);let $;if(G){const e=void 0!==E?E:!!S;$=(0,m.jsx)(d.c,{title:S,message:O,closeButton:e,className:L?"nudge-featured":void 0})}const X=P?$:i,Q={...R,trigger:P?"static":"hover",onToggle:e=>{G&&(e||z())},theme:P?"light":"dark",size:P?g:"small",className:P&&y?y:"nudge-button-tooltip"},q=a()("nudge-button",t);return(0,n.createElement)(l.$,{...D,key:`nudge-button-${i}`,onClick:e=>{z(),p&&p(e)},className:q,tooltip:X,tooltipOptions:Q,ref:W},s)}},22972:(e,t,i)=>{"use strict";i.d(t,{w:()=>O});var n,s=i(91977),a=i(19389),o=i(48270),r=i(96540),l=i(72909);!function(e){e[e.Disappointed=0]="Disappointed",e[e.Unsatisfied=1]="Unsatisfied",e[e.Neutral=2]="Neutral",e[e.Satisfied=3]="Satisfied",e[e.Happy=4]="Happy"}(n||(n={}));var d,c=i(74848);let u=(0,l.A)(d=class extends r.Component{render(){switch(this.props.icon){case n.Disappointed:return(0,c.jsxs)("svg",{width:"29",height:"29",viewBox:"0 0 29 29",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,c.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14.5 28C21.9557 28 28 21.9557 28 14.5C28 7.04503 21.9557 1 14.5 1C7.04506 1 1 7.04506 1 14.5C1 21.9557 7.04503 28 14.5 28ZM14.5 29C22.508 29 29 22.508 29 14.5C29 6.49278 22.508 0 14.5 0C6.49278 0 0 6.49278 0 14.5C0 22.508 6.49278 29 14.5 29Z",fill:"#222222"}),(0,c.jsx)("path",{d:"M9.26389 16.1111C10.3761 16.1111 11.2778 14.8488 11.2778 13.2917C11.2778 11.7345 10.3761 10.4722 9.26389 10.4722C8.15165 10.4722 7.25 11.7345 7.25 13.2917C7.25 14.8488 8.15165 16.1111 9.26389 16.1111Z",fill:"#222222"}),(0,c.jsx)("path",{d:"M19.7361 16.1111C20.8484 16.1111 21.75 14.8488 21.75 13.2917C21.75 11.7345 20.8484 10.4722 19.7361 10.4722C18.6239 10.4722 17.7222 11.7345 17.7222 13.2917C17.7222 14.8488 18.6239 16.1111 19.7361 16.1111Z",fill:"#222222"}),(0,c.jsx)("path",{d:"M4.83253 9.66666C4.66497 9.66666 4.495 9.6143 4.35 9.50555C3.99394 9.23891 3.92225 8.73383 4.18889 8.37777C6.81661 4.87361 10.324 4.83333 10.4722 4.83333C10.9169 4.83333 11.2778 5.19422 11.2778 5.63888C11.2778 6.08274 10.9193 6.44283 10.4754 6.44444C10.3506 6.44605 7.60122 6.51372 5.47778 9.34444C5.31989 9.5555 5.07742 9.66666 4.83253 9.66666ZM24.1675 9.66666C23.9218 9.66666 23.6809 9.5555 23.5222 9.34444C21.3956 6.50808 18.6397 6.44605 18.5229 6.44444C18.0799 6.43961 17.7222 6.07711 17.7246 5.63486C17.7271 5.19099 18.0847 4.83333 18.5278 4.83333C18.676 4.83333 22.1826 4.87361 24.8111 8.37777C25.0786 8.73383 25.0061 9.23891 24.65 9.50555C24.505 9.6143 24.3358 9.66666 24.1675 9.66666V9.66666ZM18.9185 22.4581C18.9096 22.4226 17.9961 18.9306 14.5 18.9306C11.0039 18.9306 10.0904 22.4226 10.0815 22.4581C10.0388 22.6297 10.117 22.8053 10.2684 22.8963C10.4199 22.9865 10.6172 22.9656 10.7485 22.848C10.7558 22.8415 11.5646 22.1528 14.5 22.1528C17.3919 22.1528 18.2192 22.8214 18.2507 22.848C18.3272 22.9205 18.4271 22.9583 18.5278 22.9583C18.5954 22.9583 18.6639 22.9414 18.7259 22.9068C18.8838 22.8166 18.9628 22.6337 18.9185 22.4581V22.4581Z",fill:"#222222"})]});case n.Unsatisfied:return(0,c.jsxs)("svg",{width:"30",height:"29",viewBox:"0 0 30 29",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,c.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15.125 28C22.5808 28 28.625 21.9558 28.625 14.5C28.625 7.04416 22.5808 1 15.125 1C7.66916 1 1.625 7.04416 1.625 14.5C1.625 21.9558 7.66916 28 15.125 28ZM29.625 14.5C29.625 22.5081 23.1331 29 15.125 29C7.11687 29 0.625 22.5081 0.625 14.5C0.625 6.49187 7.11687 0 15.125 0C23.1331 0 29.625 6.49187 29.625 14.5Z",fill:"#222222"}),(0,c.jsx)("path",{d:"M21.1546 22.0553C21.1183 21.9111 20.2137 18.5278 15.125 18.5278C10.0355 18.5278 9.13167 21.9111 9.09542 22.0553C9.05111 22.2301 9.13006 22.4114 9.28633 22.5016C9.44342 22.591 9.63997 22.5644 9.76967 22.4395C9.78497 22.4242 11.3437 20.9444 15.125 20.9444C18.9063 20.9444 20.4658 22.4242 20.4803 22.4387C20.5577 22.5153 20.6608 22.5555 20.7639 22.5555C20.8316 22.5555 20.9 22.5386 20.9621 22.504C21.1199 22.4138 21.1989 22.2309 21.1546 22.0553Z",fill:"#222222"}),(0,c.jsx)("path",{d:"M10.2917 13.6944C11.4039 13.6944 12.3055 12.4321 12.3055 10.875C12.3055 9.31787 11.4039 8.05556 10.2917 8.05556C9.17942 8.05556 8.27777 9.31787 8.27777 10.875C8.27777 12.4321 9.17942 13.6944 10.2917 13.6944Z",fill:"#222222"}),(0,c.jsx)("path",{d:"M19.9583 13.6944C21.0706 13.6944 21.9722 12.4321 21.9722 10.875C21.9722 9.31787 21.0706 8.05556 19.9583 8.05556C18.8461 8.05556 17.9444 9.31787 17.9444 10.875C17.9444 12.4321 18.8461 13.6944 19.9583 13.6944Z",fill:"#222222"})]});case n.Neutral:return(0,c.jsxs)("svg",{width:"30",height:"29",viewBox:"0 0 30 29",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,c.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14.75 28C22.2057 28 28.25 21.9557 28.25 14.5C28.25 7.04503 22.2057 1 14.75 1C7.29506 1 1.25 7.04506 1.25 14.5C1.25 21.9557 7.29503 28 14.75 28ZM14.75 29C22.758 29 29.25 22.508 29.25 14.5C29.25 6.49278 22.758 0 14.75 0C6.74278 0 0.25 6.49278 0.25 14.5C0.25 22.508 6.74278 29 14.75 29Z",fill:"#222222"}),(0,c.jsx)("path",{d:"M9.51389 16.1111C10.6261 16.1111 11.5278 14.8488 11.5278 13.2917C11.5278 11.7345 10.6261 10.4722 9.51389 10.4722C8.40165 10.4722 7.5 11.7345 7.5 13.2917C7.5 14.8488 8.40165 16.1111 9.51389 16.1111Z",fill:"#222222"}),(0,c.jsx)("path",{d:"M19.9861 16.1111C21.0984 16.1111 22 14.8488 22 13.2917C22 11.7345 21.0984 10.4722 19.9861 10.4722C18.8739 10.4722 17.9722 11.7345 17.9722 13.2917C17.9722 14.8488 18.8739 16.1111 19.9861 16.1111Z",fill:"#222222"}),(0,c.jsx)("path",{d:"M20.3889 20.9444H9.11111C8.66645 20.9444 8.30556 20.5844 8.30556 20.1389C8.30556 19.6934 8.66645 19.3333 9.11111 19.3333H20.3889C20.8344 19.3333 21.1944 19.6934 21.1944 20.1389C21.1944 20.5844 20.8344 20.9444 20.3889 20.9444Z",fill:"#222222"})]});case n.Satisfied:return(0,c.jsxs)("svg",{width:"30",height:"29",viewBox:"0 0 30 29",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,c.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15.375 28C22.8308 28 28.875 21.9558 28.875 14.5C28.875 7.04416 22.8308 1 15.375 1C7.91916 1 1.875 7.04416 1.875 14.5C1.875 21.9558 7.91916 28 15.375 28ZM29.875 14.5C29.875 22.5081 23.3831 29 15.375 29C7.36687 29 0.875 22.5081 0.875 14.5C0.875 6.49187 7.36687 0 15.375 0C23.3831 0 29.875 6.49187 29.875 14.5Z",fill:"#222222"}),(0,c.jsx)("path",{d:"M9.34541 19.028C9.38166 19.1722 10.2863 22.5555 15.375 22.5555C20.4645 22.5555 21.3683 19.1722 21.4046 19.028C21.4489 18.8532 21.3699 18.672 21.2137 18.5817C21.0566 18.4923 20.86 18.5189 20.7303 18.6438C20.715 18.6591 19.1563 20.1389 15.375 20.1389C11.5937 20.1389 10.0342 18.6591 10.0197 18.6446C9.94233 18.568 9.83922 18.5278 9.73611 18.5278C9.66844 18.5278 9.59997 18.5447 9.53794 18.5793C9.38005 18.6695 9.30111 18.8524 9.34541 19.028V19.028Z",fill:"#222222"}),(0,c.jsx)("path",{d:"M10.5417 13.6944C11.6539 13.6944 12.5556 12.4321 12.5556 10.875C12.5556 9.31787 11.6539 8.05556 10.5417 8.05556C9.42943 8.05556 8.52778 9.31787 8.52778 10.875C8.52778 12.4321 9.42943 13.6944 10.5417 13.6944Z",fill:"#222222"}),(0,c.jsx)("path",{d:"M20.2083 13.6944C21.3206 13.6944 22.2222 12.4321 22.2222 10.875C22.2222 9.31787 21.3206 8.05556 20.2083 8.05556C19.0961 8.05556 18.1944 9.31787 18.1944 10.875C18.1944 12.4321 19.0961 13.6944 20.2083 13.6944Z",fill:"#222222"})]});case n.Happy:return(0,c.jsxs)("svg",{width:"30",height:"29",viewBox:"0 0 30 29",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,c.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15 28C22.4558 28 28.5 21.9558 28.5 14.5C28.5 7.04416 22.4558 1 15 1C7.54416 1 1.5 7.04416 1.5 14.5C1.5 21.9558 7.54416 28 15 28ZM29.5 14.5C29.5 22.5081 23.0081 29 15 29C6.99187 29 0.5 22.5081 0.5 14.5C0.5 6.49187 6.99187 0 15 0C23.0081 0 29.5 6.49187 29.5 14.5Z",fill:"#222222"}),(0,c.jsx)("path",{d:"M8.97042 19.028C9.00667 19.1722 9.9113 22.5555 15 22.5555C20.0895 22.5555 20.9933 19.1722 21.0296 19.028C21.0739 18.8532 20.9949 18.672 20.8387 18.5817C20.6816 18.4923 20.485 18.5189 20.3553 18.6438C20.34 18.6591 18.7813 20.1389 15 20.1389C11.2187 20.1389 9.65917 18.6591 9.64467 18.6446C9.56733 18.568 9.46422 18.5278 9.36111 18.5278C9.29344 18.5278 9.22497 18.5447 9.16294 18.5793C9.00505 18.6695 8.92611 18.8524 8.97042 19.028V19.028Z",fill:"#222222"}),(0,c.jsx)("path",{d:"M15 17.6006C12.6107 17.6006 11.0246 17.3218 9.06388 16.9408C8.61519 16.8554 7.74438 16.9408 7.74438 18.2603C7.74438 20.8985 10.7757 24.1965 15 24.1965C19.2244 24.1965 22.2557 20.8985 22.2557 18.2603C22.2557 16.9408 21.3841 16.8546 20.9362 16.9408C18.9754 17.3218 17.3901 17.6006 15 17.6006Z",fill:"#222222"}),(0,c.jsx)("path",{d:"M10.1667 13.6944C11.2789 13.6944 12.1806 12.4321 12.1806 10.875C12.1806 9.31787 11.2789 8.05556 10.1667 8.05556C9.05443 8.05556 8.15278 9.31787 8.15278 10.875C8.15278 12.4321 9.05443 13.6944 10.1667 13.6944Z",fill:"#222222"}),(0,c.jsx)("path",{d:"M19.8333 13.6944C20.9456 13.6944 21.8472 12.4321 21.8472 10.875C21.8472 9.31787 20.9456 8.05556 19.8333 8.05556C18.7211 8.05556 17.8194 9.31787 17.8194 10.875C17.8194 12.4321 18.7211 13.6944 19.8333 13.6944Z",fill:"#222222"})]})}}})||d;function h(e){let{emoji:t,label:i,active:n,onClick:s}=e;return(0,c.jsx)(a.$,{ariaLabel:i,active:n,variant:o.A.TERTIARY,size:"small",onClick:()=>s(t.value),children:(0,c.jsx)(u,{icon:t.icon})})}var m=i(39869),p=i(56147),E=i(79187);const S=[{value:1,altText:p.A.REUSABLES.EMOJI_ALT_DISAPPOINTED,icon:n.Disappointed},{value:2,altText:p.A.REUSABLES.EMOJI_ALT_UNSATISFIED,icon:n.Unsatisfied},{value:3,altText:p.A.REUSABLES.EMOJI_ALT_NEUTRAL,icon:n.Neutral},{value:4,altText:p.A.REUSABLES.EMOJI_ALT_SATISFIED,icon:n.Satisfied},{value:E.kk,altText:p.A.REUSABLES.EMOJI_ALT_HAPPY,icon:n.Happy}];function O(e){let{happiness:t,setHappiness:i}=e;const n=(0,m.Y)();return(0,c.jsx)("div",{className:"rating-picker",children:(0,c.jsx)(s.e,{children:S.map((e=>(0,c.jsx)(h,{emoji:e,onClick:i,label:n.t(e.altText),active:t===e.value},e.value)))})})}},49649:(e,t,i)=>{"use strict";i.d(t,{z:()=>u});var n=i(30743),s=i(56948),a=i(23635),o=i(39869),r=i(56147),l=i(74848),d=r.A.WORKSHOP.MODEL_RATING;const c="//matterport.com/resources/support";function u(e){let{onSupportClicked:t,showSupportCTA:i=!0}=e;const r=(0,o.Y)();return(0,l.jsxs)("div",{className:"rating-thank-you",children:[(0,l.jsx)("h4",{children:r.t(d.THANK_YOU_HEADING)}),(0,l.jsx)(n.Ay,{animation:s.a.HandsRaised}),(0,l.jsx)("p",{className:"p4",children:r.t(d.THANK_YOU_BODY)}),i&&(0,l.jsxs)("small",{className:"model-rating-cta",children:[r.t(d.THANK_YOU_CTA)," ",(0,l.jsx)(a.N,{href:c,onClick:t,children:r.t(d.THANK_YOU_CTA_LINK_TEXT)})]})]})}},69485:(e,t,i)=>{"use strict";i.d(t,{A:()=>_});var n=i(96540),s=i(32485),a=i.n(s),o=i(43591),r=i(56147),l=i(3249),d=i(82769),c=i(77897),u=i(76057),h=i(76191),m=i(97191),p=i(94814),E=i(19389),S=i(48270),O=i(77570),g=i(74848);class _ extends n.Component{static contextType=(()=>O.B)();resizeObserver;outerWrapperRef=(()=>(0,n.createRef)())();innerWrapperRef=(()=>(0,n.createRef)())();contentContainerRef=(()=>(0,n.createRef)())();inputFilter;dragStartScroll=0;listening=!1;animation=null;handlingPaused=!1;mouseInterval;isDragging=!1;isUnmounting=!1;rAFHandle;constructor(e,t){super(e,t),this.state={scrollCenter:null,scrollOffset:0,innerSize:0,contentSize:0},this.resizeObserver=new o.A(this.handleResize),this.inputFilter=new m.A({handlePressStart:this.handlePressStart,handlePressMove:this.handlePressMove,handleDragStart:this.handleDragStart,handleDragEnd:this.handleDragEnd,handleClick:this.handleClick})}componentDidMount(){this.outerWrapperRef.current&&this.resizeObserver.observe(this.outerWrapperRef.current),this.props.thumbScrollingOnly?this.innerWrapperRef.current&&this.innerWrapperRef.current.addEventListener("click",this.handleClick):this.toggleDownEventListening(!0),this.toggleDragHandling(!0),this.innerWrapperRef.current&&this.innerWrapperRef.current.addEventListener("wheel",this.handleWheelEvent),this.inputFilter.setEnabled(!this.props.suppressDrag),this.handleExternalChange(!0)}componentWillUnmount(){this.isUnmounting=!0,this.resizeObserver.disconnect(),this.innerWrapperRef.current&&this.innerWrapperRef.current.removeEventListener("wheel",this.handleWheelEvent),this.toggleDragHandling(!1),this.props.thumbScrollingOnly?this.innerWrapperRef.current&&this.innerWrapperRef.current.removeEventListener("click",this.handleClick):this.toggleDownEventListening(!1)}UNSAFE_componentWillReceiveProps(e){e.thumbScrollingOnly&&!this.props.thumbScrollingOnly?(this.innerWrapperRef.current&&this.innerWrapperRef.current.addEventListener("click",this.handleClick),this.toggleDownEventListening(!1)):!e.thumbScrollingOnly&&this.props.thumbScrollingOnly&&(this.toggleDownEventListening(!0),this.innerWrapperRef.current&&this.innerWrapperRef.current.removeEventListener("click",this.handleClick)),e.suppressDrag!==this.props.suppressDrag&&this.inputFilter.setEnabled(!e.suppressDrag)}componentDidUpdate(e,t){this.props.waitToUpdate||this.handleExternalChange();const i=this.animation;if(i)if(i.isAnimating){const e=i.getUpdatedValue();window.requestAnimationFrame((()=>{this.innerWrapperRef.current&&this.scrollTo(e)}))}else this.animation=null;t.scrollOffset!==this.state.scrollOffset&&this.props.onScrolled&&this.props.onScrolled()}toggleDownEventListening(e){const t=this.handleEvent;this.innerWrapperRef.current&&(e?window.PointerEvent?this.innerWrapperRef.current.addEventListener("pointerdown",t):(this.innerWrapperRef.current.addEventListener("mousedown",t),this.innerWrapperRef.current.addEventListener("touchstart",t)):window.PointerEvent?this.innerWrapperRef.current.removeEventListener("pointerdown",t):(this.innerWrapperRef.current.removeEventListener("mousedown",t),this.innerWrapperRef.current.removeEventListener("touchstart",t)))}toggleDragHandling(e){const t=this.handleEvent;!this.listening&&e?(this.listening=!0,window.PointerEvent?(window.addEventListener("pointermove",t),window.addEventListener("pointerup",t)):(window.addEventListener("mousemove",t),window.addEventListener("mouseleave",t),window.addEventListener("mouseup",t),window.addEventListener("touchmove",t),window.addEventListener("touchend",t),window.addEventListener("touchcancel",t))):this.listening&&!e&&(this.listening=!1,window.PointerEvent?(window.removeEventListener("pointermove",t),window.removeEventListener("pointerup",t)):(window.removeEventListener("mousemove",t),window.removeEventListener("mouseleave",t),window.removeEventListener("mouseup",t),window.removeEventListener("touchmove",t),window.removeEventListener("touchend",t),window.removeEventListener("touchcancel",t)))}handleEvent=e=>{"mousedown"!==e.type&&"pointerdown"!==e.type&&"touchstart"!==e.type||(this.handlingPaused=!1),this.props.suppressDrag||this.handlingPaused||this.inputFilter.handleEvent(e)};getScrolledOffset=()=>{if(!this.innerWrapperRef.current||0===this.state.contentSize)return 0;const e=this.props.direction===c.OP.vertical?"scrollTop":"scrollLeft";return this.innerWrapperRef.current[e]/this.state.contentSize};getScrollPosition(){if(!this.innerWrapperRef.current)return 0;const e=this.props.direction===c.OP.vertical?"scrollTop":"scrollLeft";return this.innerWrapperRef.current[e]}setScrollPosition(e){if(!this.innerWrapperRef.current)return;const t=this.props.direction===c.OP.vertical?"scrollTop":"scrollLeft";this.innerWrapperRef.current[t]=e}getAxis(){return this.props.direction===c.OP.vertical?"y":"x"}getScrollableContainer=()=>this.innerWrapperRef.current||void 0;pauseScrollHandling=()=>{this.handlingPaused=!0,this.toggleDownEventListening(!1)};scrollWithScrollBar=e=>{if(!this.props.suppressDrag){const t=this.getAxis();e.hasOwnProperty(t)&&this.scrollTo(e[t])}};scrollTo=e=>{void 0===e||isNaN(e)||(this.setScrollPosition(Math.max(Math.min(1,e)*this.state.contentSize,0)),this.setState({scrollOffset:this.getScrollPosition()}))};scrollToPercentage(e,t){this.animation=new h.A({duration:t,startValue:this.getScrolledOffset(),endValue:Math.max(0,Math.min(1,e))})}scrollToElement(e){const t=this.innerWrapperRef.current,i=this.outerWrapperRef.current;if(!e||!t||!i)return;if(!(e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINS))return;const n=i.parentElement;if(!n)return;const s=this.props.direction===c.OP.vertical;this.setState({scrollCenter:e});const a=s?"offsetTop":"offsetLeft",o=s?"offsetHeight":"offsetWidth";let r=e[a]+e[o]/2,l=e,d=l.parentElement;for(;d&&l!==t;)l=d,d=l.parentElement,r+=l[a];const u=(r-n[o]/2)/this.state.contentSize;this.animation=new h.A({duration:c.RL,startValue:this.getScrollPosition()/this.state.contentSize,endValue:Math.max(0,Math.min(1,u))})}handleDragStart=()=>{this.setState({scrollCenter:null}),this.isDragging=!0};handlePressStart=()=>{this.dragStartScroll=this.getScrollPosition()};handlePressMove=e=>{if(!this.props.suppressDrag){const t=(e[this.getAxis()]+this.dragStartScroll)/this.state.contentSize;this.scrollTo(t)}};handleWheelEvent=e=>{if(this.props.suppressDrag)return void e.preventDefault();this.props.direction===c.OP.horizontal&&0===e.deltaX&&0!==e.deltaY?(this.handlePressStart(),this.handlePressMove({x:e.deltaY,y:0})):(this.setState({scrollCenter:null}),this.handleExternalChange())};handleClick=e=>{this.props.handleClick&&this.props.handleClick(e)};handleDragEnd=(e,t)=>{this.isDragging=!1;const i=e[this.getAxis()]/t,n=Math.min(c.RL,Math.abs(c.RL*i)),s=this.getScrollPosition(),a=i*n/2;this.animation=new h.A({duration:n,startValue:s/this.state.contentSize,endValue:Math.max(0,Math.min((s+a)/this.state.contentSize,1)),easingFunction:p.WD})};handleResize=()=>{!this.isUnmounting&&this.innerWrapperRef.current&&this.contentContainerRef.current&&this.state.scrollCenter&&this.scrollToElement(this.state.scrollCenter)};handleExternalChange(e){if(this.isUnmounting||!this.innerWrapperRef.current||!this.contentContainerRef.current)return;const t=this.props.direction===c.OP.vertical?"clientHeight":"clientWidth",i={innerSize:Number(this.innerWrapperRef.current&&this.innerWrapperRef.current[t])||1,contentSize:Number(this.contentContainerRef.current&&this.contentContainerRef.current[t])||1,scrollOffset:this.innerWrapperRef.current&&this.getScrollPosition()};(0,d._)(this.state,i)&&(e?this.setState(i):this.debouncedSetState(i))}debouncedSetState=e=>{new URL(`${document.location}`).searchParams.get("temp-disable-debounce-scroll")?this.setState(e):(cancelAnimationFrame(this.rAFHandle),this.rAFHandle=requestAnimationFrame((()=>{this.isUnmounting||this.setState(e)})))};onManualScroll=()=>{this.props.onScrolled&&this.props.onScrolled()};onButtonScroll=e=>{if(this.contentContainerRef.current&&this.props.steps){const t=this.props.direction===c.OP.vertical?"offsetHeight":"offsetWidth",i=this.contentContainerRef.current[t]/this.props.steps,n=this.getScrollPosition();let s;s=e?(n+i)/this.state.contentSize:(n-i)/this.state.contentSize,this.scrollTo((0,l.qE)(s,0,1))}};onScrollBack=()=>{this.onButtonScroll(!1)};onScrollForward=()=>{this.onButtonScroll(!0)};onHoldScrollBack=()=>{this.mouseInterval=window.setInterval(this.onScrollBack,300)};onHoldScrollForward=()=>{this.mouseInterval=window.setInterval(this.onScrollForward,300)};onScrollButtonUp=()=>{window.clearInterval(this.mouseInterval)};renderScrollBackButton=()=>{const e=this.getScrollPosition(),t=this.props.direction===c.OP.vertical?"dpad-up":"dpad-left",i=this.context.locale.t(r.A.SCROLLING.SCROLL_BUTTON_LABEL),n=0===e;return(0,g.jsx)(E.$,{className:a()("scroll-button","scroll-back"),icon:t,ariaLabel:i,variant:S.A.TERTIARY,theme:"dark",disabled:n,onClick:this.onScrollBack,onPointerDown:this.onHoldScrollBack,onPointerUp:this.onScrollButtonUp})};renderScrollForwardButton=()=>{const e=this.contentContainerRef.current,t=this.innerWrapperRef.current;if(!e||!t)return null;const i=this.getScrollPosition(),n=this.props.direction===c.OP.vertical?"offsetHeight":"offsetWidth",s=this.props.direction===c.OP.vertical?"dpad-down":"dpad-right",o=this.context.locale.t(r.A.SCROLLING.SCROLL_BUTTON_LABEL),l=e[n]-t[n]-i<=0;return(0,g.jsx)(E.$,{className:a()("scroll-button","scroll-forward"),icon:s,ariaLabel:o,variant:S.A.TERTIARY,theme:"dark",disabled:l,onClick:this.onScrollForward,onPointerDown:this.onHoldScrollForward,onPointerUp:this.onScrollButtonUp})};needScrolling(){if(!this.contentContainerRef.current||!this.outerWrapperRef.current)return!1;const e=this.props.direction===c.OP.vertical?"offsetHeight":"offsetWidth";return this.contentContainerRef.current[e]>this.outerWrapperRef.current[e]}render(){const{hideScrollbar:e,children:t,onScrollableChanged:i,scrollButtons:n,steps:s,onScrollPositionChange:o,direction:r,className:l}=this.props,{innerSize:d,contentSize:c,scrollOffset:h}=this.state,m=n&&!!s&&this.needScrolling();return(0,g.jsxs)("div",{className:a()("outerScrollbarWrapper",[r],[l],{"button-scrolling":m}),ref:this.outerWrapperRef,children:[m&&this.renderScrollBackButton(),(0,g.jsx)("div",{className:"innerScrollbarWrapper",ref:this.innerWrapperRef,children:(0,g.jsx)("div",{className:"paddingScrollbarWrapper",ref:this.contentContainerRef,children:t})}),(0,g.jsx)(u.Z,{direction:r,wrapperLength:d,childLength:c,scrollOffset:h,scrollTo:this.scrollWithScrollBar,forceHidden:!!e,onVisibilityChange:i,onScrollPositionChange:o,onThumbDrag:this.onManualScroll}),m&&this.renderScrollForwardButton()]})}}},37349:(e,t,i)=>{"use strict";i.d(t,{A:()=>S});var n,s,a,o=i(96540),r=i(72909),l=i(32485),d=i.n(l),c=i(77570),u=i(71397),h=i(50178),m=i(74848);let p=function(e){return e[e.OUTLINED=0]="OUTLINED",e[e.ADJUSTABLE=1]="ADJUSTABLE",e}({});const E=function*(){let e=0;for(;;)yield e++}();let S=(n=Reflect.metadata("design:type",Function),s=Reflect.metadata("design:paramtypes",["undefined"==typeof TextareaProps?Object:TextareaProps]),(0,r.A)(a=n(a=s(a=class extends o.Component{static contextType=(()=>c.B)();elementRef=(()=>(0,o.createRef)())();input;instanceId;constructor(e){super(e),this.instanceId=`textarea-${E.next().value}`,this.state={currentText:e.text,isFocused:!1}}componentDidMount(){this.props.focusOnMount&&this.input&&this.input.focus(),this.props.scrollIntoViewOnMount&&this.input&&this.input.scrollIntoView(),this.updateHeight()}componentWillUnmount(){this.input&&this.input.blur()}UNSAFE_componentWillReceiveProps(e){e.text!==this.props.text&&this.setState({currentText:e.text})}componentDidUpdate(e,t){t.currentText!==this.state.currentText&&this.updateHeight()}getText(){return this.input?this.input.value:""}focus(){this.input.focus()}blur(){this.input.blur()}onInput=e=>{if(this.props.onInput){const t=e.target;this.props.onInput(t.value)}};onKeyPress=e=>{e.stopPropagation();const t=e.which||e.keyCode,i=[u.D.RETURN];if("keydown"===e.type&&!i.includes(t))return!1;const n=e.target;if(this.props.maxLength&&n.value.length>this.props.maxLength&&e.preventDefault(),t===u.D.RETURN)e.shiftKey||(e.preventDefault(),this.blur(),this.props.onDone(n.value));return!1};stopPropagation=e=>e.stopPropagation();onChange=e=>{this.updateHeight()};updateHeight(){if(this.props.inputStyle===p.ADJUSTABLE){const e=this.elementRef.current;if(!this.input||!e)return;e.style.height="",this.input.style.overflowY="";const t=this.input.scrollHeight;e.style.height=`${t}px`,t>e.scrollHeight&&(this.input.style.overflowY="auto")}}onFocus=e=>{this.context.messageBus.broadcast(new h.Yl(this.input,!0)),this.props.onFocus&&this.props.onFocus(e),this.setState({isFocused:!0})};onBlur=e=>{this.context.messageBus.broadcast(new h.Yl(this.input,!1)),this.props.onBlur&&this.props.onBlur(e),this.setState({isFocused:!1})};setRef=e=>{this.input=e};render(){const{placeholder:e,tabIndex:t,maxLength:i,inputStyle:n=p.OUTLINED,label:s,name:a,readOnly:o,rows:r}=this.props,{currentText:l,isFocused:c}=this.state,u=a||this.instanceId,h=""===l,E=s&&(n!==p.ADJUSTABLE||c||!h),S=n===p.ADJUSTABLE?1:r;return(0,m.jsxs)("div",{className:d()("textarea-container",`textarea-style-${p[n].toLowerCase()}`,{focused:c,readonly:o,placeholder:h}),ref:this.elementRef,children:[E&&(0,m.jsx)("label",{className:"label",htmlFor:u,children:s}),(0,m.jsx)("textarea",{className:"textarea",value:l,ref:this.setRef,name:u,placeholder:e,maxLength:i,onInput:this.onInput,onChange:this.onChange,onKeyPress:this.onKeyPress,onKeyDown:this.onKeyPress,onKeyUp:this.stopPropagation,onBlur:this.onBlur,onFocus:this.onFocus,rows:S,tabIndex:t,readOnly:o})]})}})||a)||a)||a)},79808:(e,t,i)=>{"use strict";i.d(t,{a:()=>l});var n=i(56147),s=i(39869),a=i(23635),o=i(74848);const{EDIT_BAR:r}=n.A.WORKSHOP;function l(e){let{tool:t}=e;const{helpHref:i,helpMessagePhraseKey:n}=t,l=(0,s.Y)(),d=l.t(r.HELP_LINK);return(0,o.jsxs)("div",{className:"tool-help",children:[n&&l.t(n),i&&(0,o.jsx)(a.N,{href:i,children:d})]})}},26544:(e,t,i)=>{"use strict";i.d(t,{k:()=>h});var n=i(32485),s=i.n(n),a=i(39869),o=i(56147),r=i(80490),l=i(48270),d=i(74848);function c(e){let{analytic:t,children:i,className:n}=e;const c=(0,a.Y)().t(o.A.REUSABLES.HELP_BUTTON_TOOLTIP_MESSAGE);return(0,d.jsx)(r.Q,{icon:"help",tooltip:c,popupSize:"medium",analytic:`${t}_help_click`,className:s()("help-button",n),variant:l.A.TERTIARY,children:i})}var u=i(79808);function h(e){let{tool:t}=e;const{analytic:i,helpMessagePhraseKey:n}=t;return n?(0,d.jsx)(c,{analytic:i,className:"tool-help-button",children:(0,d.jsx)(u.a,{tool:t})}):null}},80490:(e,t,i)=>{"use strict";i.d(t,{Q:()=>c});var n=i(96540),s=i(27200),a=i(28479),o=i(78956),r=i(19389),l=i(68375);const d=(0,s.C8)();function c(e){const{ariaLabel:t,tooltip:i,tooltipPlacement:s="bottom",preventOverflow:c,analytic:u,children:h,popupSize:m,onOpenPopup:p,...E}=e,S=(0,l.s)(),[O,g]=(0,n.useState)(!1),_=(0,a.L)(),T=(0,o.O)();(0,n.useEffect)((()=>{g(!1)}),[T]);const A=!(!O||!h),v=d||A?"static":"hover";let f;A?f=h:d&&!O||(f=i);const N={placement:s,preventOverflow:A?c:void 0,onToggle:e=>{e||g(e)},trigger:v,theme:A?"light":"dark",size:A?m:"small"},I=`button-tooltip-${i}-${v}`,L=t||E.label||i;return(0,n.createElement)(r.$,{...E,key:I,ariaLabel:L,onClick:e=>{e.stopPropagation(),O||(u&&S.trackGuiEvent(u,{tool:_}),p&&p()),g(!O)},tooltip:f,tooltipOptions:N})}},7279:(e,t,i)=>{"use strict";i.d(t,{m:()=>m});var n=i(56147),s=i(23339),a=i(87965),o=i(39869),r=i(87635),l=i(28479),d=i(23840),c=i(68375),u=i(50747),h=i(74848);function m(){const e=(0,u.F)(),t=(0,c.s)(),i=(0,o.Y)(),m=(0,r.J)(),p=(0,l.L)(),E=i=>{i.stopPropagation();const n=m===s.t.IMPERIAL?s.t.METRIC:s.t.IMPERIAL;t.trackGuiEvent(`units_click_${n}`,{tool:p}),e.setLocalStorageSetting(a.Y.UnitType,n)},S=i.t(n.A.MEASUREMENT_UNITS),O=i.t(n.A.MEASUREMENT_IMPERIAL),g=i.t(n.A.MEASUREMENT_METRIC),_=m===s.t.METRIC;return(0,h.jsxs)("div",{className:"settings-toggle units-setting",children:[(0,h.jsx)("div",{className:"settings-label",children:S}),(0,h.jsxs)("div",{className:"radio-group radio-buttons",children:[(0,h.jsx)(d.a,{name:"unit",value:s.t.IMPERIAL,id:"unit-imperial",enabled:!0,checked:!_,onChange:E,children:O}),(0,h.jsx)(d.a,{name:"unit",value:s.t.METRIC,id:"unit-metric",enabled:!0,checked:_,onChange:E,children:g})]})]})}},40076:(e,t,i)=>{"use strict";i.d(t,{A:()=>p});var n=i(96540),s=i(77897),a=i(76057),o=i(82769),r=i(76191),l=i(97191),d=i(94814),c=i(32485),u=i.n(c),h=i(43591),m=i(74848);class p extends n.Component{resizeObserver;outerWrapper;innerWrapper;horizontal=(()=>(0,s.O$)())();vertical=(()=>(0,s.O$)())();firstChild;scrollCenter;inputFilter;prevSuppressDrag=!1;manuallyMoved=!1;isUnmounting=!1;rAFHandle;scrollPosition=(()=>({horizontal:s.BB.Beginning,vertical:s.BB.End}))();constructor(e){super(e),this.state={horizontal:(0,s.XU)(),vertical:(0,s.XU)()},this.scrollTo=this.scrollTo.bind(this),this.handlePressStart=this.handlePressStart.bind(this),this.handlePressMove=this.handlePressMove.bind(this),this.handleDragEnd=this.handleDragEnd.bind(this),this.handleDragStart=this.handleDragStart.bind(this),this.handleWheelEvent=this.handleWheelEvent.bind(this),this.handleClick=this.handleClick.bind(this),this.toggleVisibility=this.toggleVisibility.bind(this),this.hasManuallyMoved=this.hasManuallyMoved.bind(this),this.prevSuppressDrag=!!e.suppressDrag,this.inputFilter=new l.A({handlePressStart:this.handlePressStart,handlePressMove:this.handlePressMove,handleDragStart:this.handleDragStart,handleDragEnd:this.handleDragEnd,handleClick:this.handleClick});const t=this.handleEvent;window.PointerEvent||(window.addEventListener("mousemove",t),window.addEventListener("mouseleave",t),window.addEventListener("mouseup",t)),window.addEventListener("pointermove",t),window.addEventListener("pointerup",t),window.addEventListener("touchmove",t),window.addEventListener("touchend",t),window.addEventListener("touchcancel",t)}componentDidMount(){if(this.resizeObserver=new h.A((()=>this.handleResize())),this.resizeObserver.observe(this.outerWrapper),this.innerWrapper.addEventListener("wheel",this.handleWheelEvent,!0),this.props.thumbScrollingOnly)this.innerWrapper.addEventListener("click",this.handleClick);else{const e=this.handleEvent;this.innerWrapper.addEventListener("mousedown",e),this.innerWrapper.addEventListener("pointerdown",e),this.innerWrapper.addEventListener("touchstart",e)}this.firstChild=this.innerWrapper.firstElementChild,this.props.onScrollPositionChange&&this.props.onScrollPositionChange(),this.props.hasOwnProperty("suppressDrag")&&this.inputFilter.setEnabled(!!this.props.suppressDrag)}componentWillUnmount(){this.isUnmounting=!0;const e=this.handleEvent;this.resizeObserver?.disconnect(),window.PointerEvent||(window.removeEventListener("mousemove",e),window.removeEventListener("mouseleave",e),window.removeEventListener("mouseup",e)),window.removeEventListener("pointermove",e),window.removeEventListener("touchmove",e),window.removeEventListener("pointerup",e),window.removeEventListener("touchend",e),window.removeEventListener("touchcancel",e),this.innerWrapper.removeEventListener("wheel",this.handleWheelEvent,!0),this.props.thumbScrollingOnly?this.innerWrapper.removeEventListener("click",this.handleClick):(this.innerWrapper.removeEventListener("mousedown",e),this.innerWrapper.removeEventListener("pointerdown",e),this.innerWrapper.removeEventListener("touchstart",e))}handleEvent=e=>{this.inputFilter.handleEvent(e)};getScrollableContainer=()=>this.innerWrapper;componentDidUpdate(){if(this.props.waitToUpdate||this.handleExternalChange(),this.prevSuppressDrag!==this.props.suppressDrag&&(this.inputFilter.setEnabled(!!this.props.suppressDrag),this.props.suppressDrag&&(this.manuallyMoved=!1),this.prevSuppressDrag=!!this.props.suppressDrag),!this.horizontal.animation&&!this.vertical.animation)return;const e={};for(const t in this.state){const i=t,n=this[i].animation;if(n)if(n.isAnimating){const t=(0,s.s4)(i);e[t]=n.getUpdatedValue()}else this[i].animation=null}Object.keys(e).length>0&&window.requestAnimationFrame((()=>{this.innerWrapper&&this.scrollTo(e)}))}scrollTo(e){if(!e.hasOwnProperty(s._0.x)&&!e.hasOwnProperty(s._0.y))return;const t={};for(const i of this.getVisibleAxes(e)){const n=(0,s.mn)(i),a=s.RX[n].scrollOffset,o=e[i];if(void 0!==o){if(isNaN(o))return;this.innerWrapper[a]=Math.max(Math.min(1,o)*this.state[n].childLength,0),t[n]={...this.state[n],scrollOffset:this.innerWrapper[a]}}}this.setState(t)}getScrolledOffset=e=>{const t=s.RX[e].scrollOffset;return this.innerWrapper[t]/this.state[e].childLength};animatedScrollTo(e,t){if(e.hasOwnProperty(s._0.x)||e.hasOwnProperty(s._0.y))for(const i of this.getVisibleAxes(e)){const n=(0,s.mn)(i),a=s.RX[n].scrollOffset;this[n].animation=new r.A({duration:t||s.RL,startValue:this.innerWrapper[a]/this.state[n].childLength,endValue:Math.max(0,Math.min(1,e[i]))})}}setScrollCenter(e){if(!(e&&e.compareDocumentPosition(this.innerWrapper)&Node.DOCUMENT_POSITION_CONTAINS))return;this.scrollCenter=e;const t={},i={};for(const n of this.getVisibleAxes(this.state)){const a=(0,s.s4)(n);t[a]=e[s.RX[n].positionOffset]+e[s.RX[n].offsetLength]/2;let o=e;const r=t[a];for(;o.parentElement&&o!==this.innerWrapper;)o=o.parentElement,r&&(t[a]=r+o[s.RX[n].positionOffset]);if(this.outerWrapper.parentElement){const e=this.outerWrapper.parentElement[s.RX[n].offsetLength];r&&(i[a]=(r-e/2)/this.state[n].childLength)}}Object.keys(i).length>0&&this.animatedScrollTo(i)}getVisibleAxes(e){const t=[];for(const i in e)(e[i]||"number"==typeof e[i])&&(i in s._0&&this.state[(0,s.mn)(i)].isVisible||i in s.OP&&this.state[i].isVisible)&&t.push(i);return t}handleDragStart(){delete this.scrollCenter,this.hasManuallyMoved()}handlePressStart(){this.horizontal.dragStartScroll=this.innerWrapper.scrollLeft,this.vertical.dragStartScroll=this.innerWrapper.scrollTop}handlePressMove(e){const t={};for(const i of this.getVisibleAxes(e)){const n=(0,s.mn)(i);t[i]=(e[i]+this[n].dragStartScroll)/this.state[n].childLength}this.scrollTo(t)}handleWheelEvent(e){this.props.singleScrollDirection===s.OP.horizontal&&0===e.deltaX&&0!==e.deltaY?(this.handlePressStart(),this.handlePressMove({x:e.deltaY,y:0})):(this.hasManuallyMoved(),this.handleExternalChange())}handleClick(e){this.props.handleClick&&this.props.handleClick(e)}toggleVisibility(e){return t=>{const i={...this.state[e],isVisible:t};if((0,o._)(this.state[e],i)){const t={};t[e]=i,this.setState(t),this.props.onScrollbarVisibilityChange&&this.props.onScrollbarVisibilityChange()}}}toggleScrollPosition(e){return t=>{this.scrollPosition[e]=t,this.props.onScrollPositionChange&&this.props.onScrollPositionChange(t)}}handleDragEnd(e,t){for(const i of this.getVisibleAxes(e)){const n=(0,s.mn)(i),a=e[i]/t,o=Math.min(s.RL,Math.abs(s.RL*a)),l=this.innerWrapper[s.RX[n].scrollOffset],c=a*o/2;this[n].animation=new r.A({duration:o,startValue:l/this.state[n].childLength,endValue:Math.max(0,Math.min((l+c)/this.state[n].childLength,1)),easingFunction:d.WD})}this.setState({})}handleResize(){this.isUnmounting||(this.scrollCenter&&this.setScrollCenter(this.scrollCenter),this.handleExternalChange())}handleExternalChange(){if(this.isUnmounting)return;const e={};for(const t in this.state){const i=t,n=s.RX[i].clientLength,a={...this.state[i],wrapperLength:Number(this.innerWrapper&&this.innerWrapper[n])||1,childLength:Number(this.firstChild&&this.firstChild[n])||1,scrollOffset:this.innerWrapper&&this.innerWrapper[s.RX[i].scrollOffset]};(0,o._)(this.state[i],a)&&(e[i]=a)}Object.keys(e).length>0&&this.debouncedSetState(e)}debouncedSetState=e=>{new URL(`${document.location}`).searchParams.get("temp-disable-debounce-scroll")?this.setState(e):(cancelAnimationFrame(this.rAFHandle),this.rAFHandle=requestAnimationFrame((()=>{this.isUnmounting||this.setState(e)})))};hasManuallyMoved(){this.manuallyMoved=!0,this.props.onScrolled&&this.props.onScrolled()}resetManuallyMoved(){this.manuallyMoved=!1}renderScrollbar(e,t){const{forceHidden:i}=this.props,{wrapperLength:n,childLength:s,scrollOffset:o}=t;return(0,m.jsx)(a.Z,{direction:e,ref:e=>{this.horizontal.scrollbar=e},wrapperLength:n,childLength:s,scrollOffset:o,scrollTo:this.scrollTo,onVisibilityChange:this.toggleVisibility(e),onScrollPositionChange:this.toggleScrollPosition(e),forceHidden:i,onThumbDrag:this.hasManuallyMoved})}render(){const{scrollbarHeight:e,singleScrollDirection:t,name:i,children:n}=this.props,a={maxHeight:e||""},o=t||`${s.OP.vertical} ${s.OP.horizontal}`;return(0,m.jsxs)("div",{className:u()("outerScrollbarWrapper",o,`scrollbar-${i}`),ref:e=>{e&&(this.outerWrapper=e)},style:a,children:[(0,m.jsx)("div",{className:"innerScrollbarWrapper",ref:e=>{e&&(this.innerWrapper=e)},children:(0,m.jsx)("div",{className:"paddingScrollbarWrapper",children:n})}),t!==s.OP.vertical&&this.renderScrollbar(s.OP.horizontal,this.state.horizontal),t!==s.OP.horizontal&&this.renderScrollbar(s.OP.vertical,this.state.vertical)]})}}},76057:(e,t,i)=>{"use strict";i.d(t,{Z:()=>c});var n=i(96540),s=i(82769),a=i(97191),o=i(77897),r=i(78197),l=i(74848);class d extends n.Component{thumbTrack;inputFilter;dragStartThumbOffset;direction;scrollPosition;constructor(e){super(e),this.state={visible:!1,trackLength:1,thumbLength:1,thumbOffset:0},this.direction=o.RX[e.direction],this.handlePressStart=this.handlePressStart.bind(this),this.handlePressMove=this.handlePressMove.bind(this),this.handleTrackClick=this.handleTrackClick.bind(this),this.inputFilter=new a.A({handlePressStart:this.handlePressStart,handlePressMove:this.handlePressMove}),window.PointerEvent||(window.addEventListener("mousemove",this.inputFilter.handleEvent),window.addEventListener("mouseleave",this.inputFilter.handleEvent),window.addEventListener("mouseup",this.inputFilter.handleEvent)),window.addEventListener("pointermove",this.inputFilter.handleEvent),window.addEventListener("pointerup",this.inputFilter.handleEvent)}componentWillUnmount(){window.PointerEvent||(window.removeEventListener("mousemove",this.inputFilter.handleEvent),window.removeEventListener("mouseleave",this.inputFilter.handleEvent),window.removeEventListener("mouseup",this.inputFilter.handleEvent)),window.removeEventListener("pointermove",this.inputFilter.handleEvent),window.removeEventListener("pointerup",this.inputFilter.handleEvent)}getTrackLength(){return Number(this.thumbTrack&&this.thumbTrack[this.direction.clientLength]||this.props.containerSize.width)}handleTrackClick(e){if(e.target!==this.thumbTrack)return;const t=this.direction.eventPosition,i=this.thumbTrack.getBoundingClientRect()[this.direction.offsetName],n=e[t]0&&t>0){const n=this.getTrackLength(),a=e/t*n,r={thumbLength:a,visible:t>e,thumbOffset:Math.min(i/t*n,n-a)};if((0,s._)(this.state,r)){const e=this.state.visible!==r.visible;e&&this.props.onVisibilityChange&&this.props.onVisibilityChange(r.visible);const t=(0,o.J5)(r.thumbOffset/(n-a),r.visible);(t!==this.scrollPosition||e)&&(this.scrollPosition=t,this.props.onScrollPositionChange&&this.props.onScrollPositionChange(t)),this.setState(r)}}}render(){const e={[`${this.direction.lengthName}`]:this.state.thumbLength+"px",[`${this.direction.offsetName}`]:this.state.thumbOffset+"px"},t=this.inputFilter.handleEvent,i=window.PointerEvent,n=i?t:void 0,s=i?void 0:t,a=i?void 0:t;return(0,l.jsx)("div",{children:this.state.visible&&!this.props.forceHidden&&(0,l.jsx)("div",{className:"scrollbarTrack "+this.props.direction,onClick:this.handleTrackClick,ref:e=>{e&&(this.thumbTrack=e)},children:(0,l.jsx)("div",{className:"scrollbarThumb",style:e,onPointerDown:n,onMouseDown:a,onTouchStart:s})})})}}const c=(0,r.B)(d)},3617:(e,t,i)=>{"use strict";i.d(t,{H:()=>E});var n,s,a,o=i(96540),r=i(72909),l=i(32485),d=i.n(l),c=i(43591),u=i(97610),h=i(97191),m=i(94814),p=i(74848);let E=(n=Reflect.metadata("design:type",Function),s=Reflect.metadata("design:paramtypes",["undefined"==typeof ScrollerProps?Object:ScrollerProps]),(0,r.A)(a=n(a=s(a=class extends o.Component{usePointerEvents=(()=>window.PointerEvent)();scrollerRef=(()=>(0,o.createRef)())();trackRef=(()=>(0,o.createRef)())();thumbRef=(()=>(0,o.createRef)())();contents;container;focusedSelector=null;resizeObserver;listening=!1;inputFilter;scrollVelocityPixelsMS;lastScrollTimeMS;startY=0;onThumb=!1;scrollTop=0;isUnmounting=!1;rAFHandle;constructor(e){super(e),this.state={scrollerHeight:1,contentsHeight:1,trackHeight:1,offsetTop:0},this.resizeObserver=new c.A(this.handleResize),this.inputFilter=new h.A({handlePressStart:this.handlePressStart,handlePressMove:this.handlePressMove,handleDragStart:this.handleDragStart,handleDragEnd:this.handleDragEnd})}componentDidMount(){this.toggleEventHandling(!0),this.computeStateValues()}componentWillUnmount(){this.isUnmounting=!0,this.toggleEventHandling(!1),this.resizeObserver&&this.resizeObserver.disconnect()}componentDidUpdate(e,t){this.scrollerRef.current&&e.disabled!==this.props.disabled&&(this.props.disabled?this.toggleEventHandling(!1):this.toggleEventHandling(!0))}resetScrollTop(){this.focusedSelector=null,this.setScrollPosition(0)}getScroller(){return this.scrollerRef.current}getScrollHeight(){return Number(this.contents&&this.contents.clientHeight)||0}scrollToElement(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"center",i=arguments.length>2?arguments[2]:void 0;const n=this.scrollerRef.current;if(!e||!n)return;if(!(e.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_CONTAINS))return;if(!this.isOverflowing())return;const{contentsHeight:s,scrollerHeight:a,offsetTop:o}=this.state;let r=e.offsetTop;if(!i){let t=e;for(;t.parentElement&&(t=t.parentElement,r+=t.offsetTop,t.offsetParent!==this.contents););}let l=o+r;"center"===t&&(l+=e.offsetHeight/2-a/2),l=Math.max(Math.min(s,l),0);const d=n.scrollTop,c=l-d;let u=0;const h=e=>{u||(u=e);const t=e-u,i=(0,m.e2)(t,d,c,500);n.scrollTo(0,i),t<500?window.requestAnimationFrame(h):this.setScrollPosition(l)};window.requestAnimationFrame(h)}scrollToSelector(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"center",i=arguments.length>2?arguments[2]:void 0;const n=this.scrollerRef.current;if(!n)return;const s=n.querySelector(e);s?(this.focusedSelector=e,this.scrollToElement(s,t,i)):this.focusedSelector=null}setScrollPosition(e){const t=this.scrollerRef.current;if(t){const i=t.scrollTop;t.scrollTop=e,this.scrollTop=this.getScrollTop(),this.props.onScrolled&&i!==this.scrollTop&&this.props.onScrolled(this.scrollTop);const n=this.thumbRef.current;n&&(n.style.height=`${this.getThumbHeight()}px`,n.style.top=`${this.getThumbTop()}px`)}}toggleEventHandling(e){const t=this.scrollerRef.current,i=this.handleEvent,n=u.u?{passive:!0}:void 0;!this.listening&&e&&t?(t.addEventListener("wheel",this.handleWheelEvent,n),this.usePointerEvents?(t.addEventListener("pointerdown",i,n),window.addEventListener("pointermove",i,n),window.addEventListener("pointerup",i,n)):(t.addEventListener("touchstart",i,n),t.addEventListener("mousedown",i,n),window.addEventListener("mousemove",i,n),window.addEventListener("mouseleave",i,n),window.addEventListener("mouseup",i,n),window.addEventListener("touchmove",i,n),window.addEventListener("touchend",i,n),window.addEventListener("touchcancel",i,n))):this.listening&&!e&&t&&(t.removeEventListener("wheel",this.handleWheelEvent),this.usePointerEvents?(t.removeEventListener("pointerdown",i),window.removeEventListener("pointermove",i),window.removeEventListener("pointerup",i)):(t.removeEventListener("touchstart",i),t.removeEventListener("mousedown",i),window.removeEventListener("mousemove",i),window.removeEventListener("mouseleave",i),window.removeEventListener("mouseup",i),window.removeEventListener("touchmove",i),window.removeEventListener("touchend",i),window.removeEventListener("touchcancel",i)))}handleResize=()=>{this.isUnmounting||(this.computeStateValues(),this.focusedSelector&&this.scrollToSelector(this.focusedSelector))};handleWheelEvent=e=>{this.props.disabled||(this.onThumb=!1,this.focusedSelector=null,this.scrollBy(e.deltaY))};handleEvent=e=>{if(this.scrollerRef.current&&!this.props.disabled){this.scrollVelocityPixelsMS=0;if("mousedown"===e.type||"pointerdown"===e.type||"touchstart"===e.type){const t=e.target;this.onThumb=t&&t.classList.contains("scroller-thumb")}this.focusedSelector=null,this.inputFilter.handleEvent(e)}};handlePressStart=e=>{this.onThumb?this.startY=this.getThumbTop():this.startY=this.getScrollTop()};handlePressMove=e=>{const{trackHeight:t,contentsHeight:i}=this.state;let n;this.onThumb?(n=(this.startY-e.y)/t,this.scrollToPercent(n)):(n=(e.y+this.startY)/i,this.scrollToPercent(n))};handleDragStart=()=>{};handleDragEnd=(e,t)=>{this.scrollVelocityPixelsMS=e.y/t,this.lastScrollTimeMS=void 0,Math.abs(this.scrollVelocityPixelsMS)<1?this.scrollVelocityPixelsMS=0:this.animateScroll()};animateScroll(){window.requestAnimationFrame((e=>{void 0===this.lastScrollTimeMS&&(this.lastScrollTimeMS=e);let t=e-this.lastScrollTimeMS;if(t>0){this.scrollBy(this.scrollVelocityPixelsMS*t);const e=this.scrollVelocityPixelsMS>0?-1:1;for(;t>0;)this.scrollVelocityPixelsMS+=this.scrollVelocityPixelsMS*this.scrollVelocityPixelsMS*.01*e,t-=1}Math.abs(this.scrollVelocityPixelsMS)>.001&&this.animateScroll()}))}onTrackClick=e=>{const t=this.trackRef.current;if(e.target!==t||!t)return;const i=this.getThumbHeight(),n=this.getThumbTop(),s=t.getBoundingClientRect().top,a=this.state.trackHeight;let o;o=e.clientY{this.isOverflowing()&&this.scrollerRef.current&&!isNaN(e)&&this.setScrollPosition(Math.max(Math.min(1,e)*this.state.contentsHeight,0))};scrollBy=e=>{this.isOverflowing()&&this.scrollerRef.current&&!isNaN(e)&&this.setScrollPosition(Math.max(this.scrollerRef.current.scrollTop+e,0))};computeStateValues=()=>{if(this.props.disabled)return;const e=this.scrollerRef.current,t=this.trackRef.current,i=Number(e&&e.clientHeight)||1,n=Number(t&&t.clientHeight)||i,s=Number(this.contents&&this.contents.clientHeight)||1,a=Number(this.contents&&this.contents.offsetTop)||0;this.debouncedSetState({scrollerHeight:i,contentsHeight:s,trackHeight:n,offsetTop:a})};debouncedSetState=e=>{new URL(`${document.location}`).searchParams.get("temp-disable-debounce-scroll")?this.setState(e):(cancelAnimationFrame(this.rAFHandle),this.rAFHandle=requestAnimationFrame((()=>{this.isUnmounting||this.setState(e)})))};getThumbTop(){const{contentsHeight:e,trackHeight:t}=this.state;return Math.min(this.scrollTop/e*t,t-this.getThumbHeight())}getThumbHeight(){const{scrollerHeight:e,contentsHeight:t,trackHeight:i}=this.state;return e/t*i}getScrollTop(){return this.scrollerRef.current?this.scrollerRef.current.scrollTop:0}isOverflowing(){const{contentsHeight:e,scrollerHeight:t,offsetTop:i}=this.state;return e+i>t}setContentsRef=e=>{e?(this.contents=e,this.resizeObserver.observe(this.contents)):this.contents&&this.resizeObserver.unobserve(this.contents)};setContainerRef=e=>{e?(this.container=e,this.resizeObserver.observe(e)):this.container&&this.resizeObserver.unobserve(this.container)};renderTrack(){const e={height:`${this.getThumbHeight()}px`,top:`${this.getThumbTop()}px`};return(0,p.jsx)("div",{ref:this.trackRef,className:"scroller-track",onClick:this.onTrackClick,children:(0,p.jsx)("div",{ref:this.thumbRef,className:"scroller-thumb",style:e,onPointerDown:this.usePointerEvents?this.handleEvent:void 0,onMouseDown:this.usePointerEvents?void 0:this.handleEvent,onTouchStart:this.usePointerEvents?void 0:this.handleEvent})})}render(){const{children:e,className:t,hideThumb:i,disabled:n,resizeToContentMax:s,offsetContentByScrollbarWidth:a}=this.props,o=!n&&this.isOverflowing(),r=s?{height:`min(${this.state.contentsHeight}px, ${s})`}:{},l=this.scrollerRef.current,c=a?(l?.offsetWidth||0)-(l?.clientWidth||0):0,u=c?{left:c}:{};return(0,p.jsxs)("div",{ref:this.setContainerRef,className:d()("scroller-container",t),style:r,children:[(0,p.jsx)("div",{className:"scroller-scroller",ref:this.scrollerRef,children:(0,p.jsx)("div",{className:"scroller-contents",ref:this.setContentsRef,style:u,children:e})}),!i&&o&&this.renderTrack()]})}})||a)||a)||a)},87399:(e,t,i)=>{"use strict";i.d(t,{L:()=>p});var n=i(32485),s=i.n(n),a=i(75742),o=i(39905),r=i(96540),l=i(74848);function d(e){const{text:t,keyPrefix:i,markers:n}=e,[s,a]=n,o=[];let d=t,c=d.search(`${s}|${a}`),u=d.search(s);for(;c>-1;){const e=c===u,n=d.slice(0,c),h=t.length-d.length,m=`${i},${h}-${h+c}`;e?o.push((0,l.jsx)(r.Fragment,{children:n},m)):o.push((0,l.jsx)("span",{"data-blocktype":"marker",children:n},m)),d=d.slice(c+(e?s.length:a.length),d.length),c=d.search(`${s}|${a}`),u=d.search(s)}if(d.length){const e=`${i},${t.length-d.length}-${t.length}`;o.push((0,l.jsx)(r.Fragment,{children:d},e))}return 0===o.length?(0,l.jsx)(l.Fragment,{children:t}):(0,l.jsx)(l.Fragment,{children:o})}function c(e){const{block:t,children:i,onClick:n}=e;return n?(0,l.jsx)("a",{className:`link-annotation ${o.H.USER}`,onClick:n,"data-id":t.id||void 0,"data-value":t.value||void 0,"data-blocktype":t.blockType,children:i}):(0,l.jsx)("span",{"data-blocktype":t.blockType,children:i})}function u(e){const{block:t,children:i,onClick:n}=e;return n?(0,l.jsx)("a",{className:`link-annotation ${o.H.USER}`,onClick:n,"data-blocktype":t.blockType,children:i}):(0,l.jsx)("span",{"data-blocktype":t.blockType,children:i})}function h(e){const{block:t,children:i,linksActive:n,onClick:s}=e;return s||n?(0,l.jsx)("a",{href:`${t.value}`,target:"_blank",className:`link-annotation ${o.H.LINK}`,onClick:s,"data-blocktype":t.blockType,"data-value":t.value,children:i}):(0,l.jsx)("span",{"data-blocktype":t.blockType,"data-value":t.value,children:i})}function m(e){const{block:t,keyPrefix:i,markers:n}=e,{blockType:s,text:o}=t,r=n?(0,l.jsx)(d,{keyPrefix:i,text:o,markers:n}):(0,l.jsx)(l.Fragment,{children:o});return s===a.n.USER?(0,l.jsx)(c,{...e,children:r}):s===a.n.HASH?(0,l.jsx)(u,{...e,children:r}):s===a.n.LINK&&t.value?(0,l.jsx)(h,{...e,children:r}):r}function p(e){const t=e.textParser.parse(e.text),i=s()("text-box-text",e.className);return(0,l.jsx)("div",{className:i,children:t.map(((t,i)=>(0,l.jsx)(m,{keyPrefix:`${t.blockType}${i}`,block:t,linksActive:!!e.linksActive,onClick:e.onClick,markers:e.markers},`${t.blockType}${i}`)))})}},98907:(e,t,i)=>{"use strict";i.d(t,{$:()=>l});var n=i(4717),s=i(12621),a=i(19389),o=i(48270),r=i(74848);function l(e){let{layer:t,active:i,onClick:l}=e;const{id:d}=t,c=(0,n.G)(),u=(0,s._)(d,c),h=i?"checkmark":void 0;return(0,r.jsx)(a.$,{className:"layer-item",label:u,icon:h,active:i,variant:o.A.TERTIARY,size:o.M.SMALL,onClick:()=>{l(d)}})}},88131:(e,t,i)=>{"use strict";i.d(t,{l:()=>N});var n=i(96540),s=i(56147),a=i(39869),o=i(17904),r=i(22044),l=i(43718),d=i(99325),c=i(4933),u=i(78835),h=(i(19178),i(41519)),m=i(71687),p=i(97994),E=i(48411),S=i(73566),O=i(11180),g=i(88581),_=i(2993),T=i(68375),A=i(74848);const{ROOMS:v}=s.A.SHOWCASE,f=new p.L(!0);function N(e){const t=(0,a.Y)(),i=t.t(v.ROOM_BOUNDS_TOGGLES_TITLE),s=(0,T.s)(),{allowImageryToggle:p}=e,N=(0,l.v)(),I=(0,h.g)(),L=(0,o.S)(m.GR),R=function(){const e=(0,o.S)(m.GR);return(0,r.A)(e?.getMeshGroupVisuals()?.allFloorsVisibleInOrtho??f)}(),{roomNamesVisible:y,roomDimensionsVisible:b,roomWallsVisible:D}=(0,d.W)(),M=(0,E.T)(),P=(0,O.x)(),k=(0,g.o)(),w=(0,n.useCallback)((()=>{const e=!R,t=L?.getMeshGroupVisuals()?.allFloorsVisibleInOrtho;t&&(t.value=e),e||D||I?.toggleRoomWallsVisible(),s.trackToolGuiEvent("rooms","room_imagery_showcase_toggle_"+(R?"off":"on"))}),[s,L,R,I,D]);if(!N||!I||!L)return null;const C=M&&M===S.S0.MEASUREMENTS,x=t.t(v.ROOM_BOUNDS_WALL_TOGGLE_LABEL),H=t.t(v.ROOM_BOUNDS_ROOM_TOGGLE_LABEL),U=t.t(v.ROOM_BOUNDS_DIMENSION_TOGGLE_LABEL),F=t.t(v.ROOM_BOUNDS_MODEL_TOGGLE_LABEL),G=R,V=!(0,_.nI)(P),W=V&&!k?.isFloorplanDisabled(),B=V,j=p&&W;return(0,A.jsxs)("div",{children:[(0,A.jsx)("div",{className:"floorplan-overlay-title",children:i}),(0,A.jsxs)(c.t,{className:"floorplan-overlay-tooltip",children:[W&&(0,A.jsx)(u.A,{onToggle:()=>{I.toggleRoomWallsVisible(),s.trackToolGuiEvent("rooms","room_walls_showcase_toggle_"+(D?"off":"on"))},toggled:D,label:x,enabled:G}),B&&(0,A.jsx)(u.A,{onToggle:()=>{I.toggleRoomNamesVisible(),s.trackToolGuiEvent("rooms","room_names_showcase_toggle_"+(y?"off":"on"))},toggled:y,label:H,enabled:!0}),C&&(0,A.jsx)(u.A,{onToggle:()=>{I.toggleRoomDimensionsVisible(),s.trackToolGuiEvent("rooms","room_dimensions_showcase_toggle_"+(b?"off":"on"))},toggled:b,label:U,enabled:!0}),j&&(0,A.jsx)(u.A,{onToggle:w,toggled:R,label:F,enabled:!0})]})]})}},72909:(e,t,i)=>{"use strict";i.d(t,{A:()=>a,F:()=>o});var n=i(96540),s=i(69304);function a(e){if(!e.prototype||!e.prototype.render)return e.__scuWrap||(e.__scuWrap=r(e,u));e.prototype.shouldComponentUpdate=d}function o(e){if(!e.prototype||!e.prototype.render)return e.__scuWrap||(e.__scuWrap=r(e,s.E7));e.prototype.shouldComponentUpdate=c}function r(e,t){class i extends l{}return i.prototype.renderChild=e,i.prototype.diffFunc=t,i}class l extends n.Component{shouldComponentUpdate(e){return this.diffFunc(e,this.props)}render(){return this.renderChild(this.props,this.context)}}function d(e,t){return u(e,this.props)||u(t,this.state)}function c(e,t){return u(e,this.props)||(0,s.E7)(t,this.state)}function u(e,t){for(const i in e)if(e[i]!==t[i])return!0;for(const i in t)if(!(i in e))return!0;return!1}},17246:e=>{var t={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"DeleteExternalAttachment"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"attachmentId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"parentType"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ParentType"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"parentId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"deleteExternalAttachment"},arguments:[{kind:"Argument",name:{kind:"Name",value:"modelId"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"attachmentId"},value:{kind:"Variable",name:{kind:"Name",value:"attachmentId"}}},{kind:"Argument",name:{kind:"Name",value:"parentType"},value:{kind:"Variable",name:{kind:"Name",value:"parentType"}}},{kind:"Argument",name:{kind:"Name",value:"parentId"},value:{kind:"Variable",name:{kind:"Name",value:"parentId"}}}],directives:[]}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"RemoveFileAttachment"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"attachmentId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"parentType"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ParentType"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"parentId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"removeFileAttachment"},arguments:[{kind:"Argument",name:{kind:"Name",value:"modelId"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"attachmentId"},value:{kind:"Variable",name:{kind:"Name",value:"attachmentId"}}},{kind:"Argument",name:{kind:"Name",value:"parentType"},value:{kind:"Variable",name:{kind:"Name",value:"parentType"}}},{kind:"Argument",name:{kind:"Name",value:"parentId"},value:{kind:"Variable",name:{kind:"Name",value:"parentId"}}}],directives:[]}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"FileAttachmentDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"FileAttachment"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"created"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"filename"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"url"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"validUntil"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"bytes"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"mimeType"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"downloadUrl"},arguments:[],directives:[]},{kind:"InlineFragment",typeCondition:{kind:"NamedType",name:{kind:"Name",value:"ImageFileAttachment"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"imageWidth"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"imageHeight"},arguments:[],directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"ExternalAttachmentDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"ExternalAttachment"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"created"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"modified"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"thumbnailUrl"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"url"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"mediaType"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"width"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"height"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"parentDetails"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"type"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"parent"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}}]}},{kind:"Field",name:{kind:"Name",value:"category"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"validUntil"},arguments:[],directives:[]}]}}],loc:{start:0,end:1139}};t.loc.source={body:"\n# Deletes a single external attachment\nmutation DeleteExternalAttachment($modelId: ID!, $attachmentId: ID!, $parentType: ParentType!, $parentId: ID!) {\n deleteExternalAttachment(modelId: $modelId, , attachmentId: $attachmentId, parentType: $parentType, parentId: $parentId)\n}\n\n# Removes a file attachment association from the annotation it is attached to.\n# Can delete the file attachment completely if the 'cascadeDelete' flag is set to true (not currently used)\nmutation RemoveFileAttachment($modelId: ID!, $attachmentId: ID!, $parentType: ParentType!, $parentId: ID!) {\n removeFileAttachment(modelId: $modelId, , attachmentId: $attachmentId, parentType: $parentType, parentId: $parentId)\n}\n\nfragment FileAttachmentDetails on FileAttachment {\n id\n created\n filename\n url\n validUntil\n bytes\n mimeType\n downloadUrl\n ...on ImageFileAttachment {\n imageWidth\n imageHeight\n }\n}\n\n# common External Attachment properties\nfragment ExternalAttachmentDetails on ExternalAttachment {\n id\n created\n modified\n thumbnailUrl\n url\n mediaType\n width\n height\n parentDetails { type, parent { id } }\n category\n validUntil\n}\n",name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var n=e.type;"NamedType"===n.kind&&t.add(n.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,t)})),e.definitions&&e.definitions.forEach((function(e){i(e,t)}))}var n={};function s(e,t){for(var i=0;i0;){var l=r;r=new Set,l.forEach((function(e){o.has(e)||(o.add(e),(n[e]||new Set).forEach((function(e){r.add(e)})))}))}return o.forEach((function(t){var n=s(e,t);n&&i.definitions.push(n)})),i}t.definitions.forEach((function(e){if(e.name){var t=new Set;i(e,t),n[e.name.value]=t}})),e.exports=t,e.exports.DeleteExternalAttachment=a(t,"DeleteExternalAttachment"),e.exports.RemoveFileAttachment=a(t,"RemoveFileAttachment"),e.exports.FileAttachmentDetails=a(t,"FileAttachmentDetails"),e.exports.ExternalAttachmentDetails=a(t,"ExternalAttachmentDetails")},98585:e=>{var t={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetFloors"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"FragmentSpread",name:{kind:"Name",value:"ModelFloors"},directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"ModelFloors"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Model"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"floors"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"FloorDetails"},directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"FloorDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"ModelFloor"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"meshId"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"classification"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"label"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"sequence"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"dimensions"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"areaFloor"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"units"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"layer"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"views"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"view"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"type"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}}]}}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"PatchFloor"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"floorId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"data"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"FloorPatch"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"patchFloor"},arguments:[{kind:"Argument",name:{kind:"Name",value:"modelId"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"floorId"},value:{kind:"Variable",name:{kind:"Name",value:"floorId"}}},{kind:"Argument",name:{kind:"Name",value:"patch"},value:{kind:"Variable",name:{kind:"Name",value:"data"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}}]}}],loc:{start:0,end:519}};t.loc.source={body:"query GetFloors($modelId: ID!) {\n model(id: $modelId) {\n id\n ...ModelFloors\n }\n}\n\nfragment ModelFloors on Model {\n floors { ...FloorDetails }\n}\n\nfragment FloorDetails on ModelFloor {\n id\n meshId\n classification\n label\n sequence\n dimensions {\n areaFloor\n units\n }\n layer {\n views {\n view {\n type\n id\n }\n }\n }\n}\n\nmutation PatchFloor($modelId: ID!, $floorId: ID!, $data: FloorPatch!) {\n patchFloor(modelId: $modelId, , floorId: $floorId, patch: $data) {\n id\n }\n}\n",name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var n=e.type;"NamedType"===n.kind&&t.add(n.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,t)})),e.definitions&&e.definitions.forEach((function(e){i(e,t)}))}var n={};function s(e,t){for(var i=0;i0;){var l=r;r=new Set,l.forEach((function(e){o.has(e)||(o.add(e),(n[e]||new Set).forEach((function(e){r.add(e)})))}))}return o.forEach((function(t){var n=s(e,t);n&&i.definitions.push(n)})),i}t.definitions.forEach((function(e){if(e.name){var t=new Set;i(e,t),n[e.name.value]=t}})),e.exports=t,e.exports.GetFloors=a(t,"GetFloors"),e.exports.ModelFloors=a(t,"ModelFloors"),e.exports.FloorDetails=a(t,"FloorDetails"),e.exports.PatchFloor=a(t,"PatchFloor")},96069:e=>{var t={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetLabels"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"includeDisabled"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"includeLayers"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"labels"},arguments:[{kind:"Argument",name:{kind:"Name",value:"includeDisabled"},value:{kind:"Variable",name:{kind:"Name",value:"includeDisabled"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"LabelDetails"},directives:[]}]}}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"AddLabel"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"labelId"}},type:{kind:"NamedType",name:{kind:"Name",value:"ID"}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"data"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"LabelDetails"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"includeLayers"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"addLabel"},arguments:[{kind:"Argument",name:{kind:"Name",value:"modelId"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"labelId"},value:{kind:"Variable",name:{kind:"Name",value:"labelId"}}},{kind:"Argument",name:{kind:"Name",value:"label"},value:{kind:"Variable",name:{kind:"Name",value:"data"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"LabelDetails"},directives:[]}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"PatchLabel"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"labelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"data"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"LabelPatch"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"includeLayers"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"patchLabel"},arguments:[{kind:"Argument",name:{kind:"Name",value:"modelId"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"labelId"},value:{kind:"Variable",name:{kind:"Name",value:"labelId"}}},{kind:"Argument",name:{kind:"Name",value:"patch"},value:{kind:"Variable",name:{kind:"Name",value:"data"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"LabelDetails"},directives:[]}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"DeleteLabel"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"labelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"deleteLabel"},arguments:[{kind:"Argument",name:{kind:"Name",value:"modelId"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"labelId"},value:{kind:"Variable",name:{kind:"Name",value:"labelId"}}}],directives:[]}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"LabelDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Label"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"position"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"x"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"y"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"z"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"floor"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"meshId"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"room"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"meshId"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"layer"},arguments:[],directives:[{kind:"Directive",name:{kind:"Name",value:"include"},arguments:[{kind:"Argument",name:{kind:"Name",value:"if"},value:{kind:"Variable",name:{kind:"Name",value:"includeLayers"}}}]}],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"label"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"enabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"created"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"modified"},arguments:[],directives:[]}]}}],loc:{start:0,end:1042}};t.loc.source={body:"# Read all labels for the given model\nquery GetLabels($modelId: ID!, $includeDisabled: Boolean!, $includeLayers: Boolean!) {\n model(id: $modelId) {\n labels (includeDisabled: $includeDisabled) {\n ...LabelDetails\n }\n }\n}\n\n# Create a new label\nmutation AddLabel ($modelId: ID!, $labelId: ID, $data: LabelDetails!, $includeLayers: Boolean!) {\n addLabel(modelId: $modelId, labelId: $labelId, label: $data) {\n ...LabelDetails\n }\n}\n\n# Update a single label\nmutation PatchLabel ($modelId: ID!, $labelId: ID!, $data: LabelPatch!, $includeLayers: Boolean!) {\n patchLabel(modelId: $modelId, , labelId: $labelId, patch: $data) {\n ...LabelDetails\n }\n}\n\n# Deletes a single label\nmutation DeleteLabel ($modelId: ID!, ,$labelId: ID!) {\n deleteLabel(modelId: $modelId, labelId: $labelId)\n}\n\n# Default Label properties used by Showcase and Workshop\nfragment LabelDetails on Label {\n id\n position { x y z }\n floor { id meshId }\n room { id meshId }\n layer @include(if: $includeLayers) { id }\n label\n enabled\n created\n modified\n}\n",name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var n=e.type;"NamedType"===n.kind&&t.add(n.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,t)})),e.definitions&&e.definitions.forEach((function(e){i(e,t)}))}var n={};function s(e,t){for(var i=0;i0;){var l=r;r=new Set,l.forEach((function(e){o.has(e)||(o.add(e),(n[e]||new Set).forEach((function(e){r.add(e)})))}))}return o.forEach((function(t){var n=s(e,t);n&&i.definitions.push(n)})),i}t.definitions.forEach((function(e){if(e.name){var t=new Set;i(e,t),n[e.name.value]=t}})),e.exports=t,e.exports.GetLabels=a(t,"GetLabels"),e.exports.AddLabel=a(t,"AddLabel"),e.exports.PatchLabel=a(t,"PatchLabel"),e.exports.DeleteLabel=a(t,"DeleteLabel"),e.exports.LabelDetails=a(t,"LabelDetails")},92711:e=>{var t={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetOrderedLists"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"includeLayers"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"orderedLists"},arguments:[{kind:"Argument",name:{kind:"Name",value:"ids"},value:{kind:"ListValue",values:[]}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"OrderedListDetails"},directives:[]}]}}]}}]}},{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetOrderedListByName"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"label"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"String"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"includeLayers"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"orderedLists"},arguments:[{kind:"Argument",name:{kind:"Name",value:"label"},value:{kind:"Variable",name:{kind:"Name",value:"label"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"OrderedListDetails"},directives:[]}]}}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"AddOrderedList"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"label"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"String"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"description"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"String"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"entries"}},type:{kind:"ListType",type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"EntryInput"}}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"includeLayers"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"addOrderedList"},arguments:[{kind:"Argument",name:{kind:"Name",value:"modelId"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"label"},value:{kind:"Variable",name:{kind:"Name",value:"label"}}},{kind:"Argument",name:{kind:"Name",value:"description"},value:{kind:"Variable",name:{kind:"Name",value:"description"}}},{kind:"Argument",name:{kind:"Name",value:"entries"},value:{kind:"Variable",name:{kind:"Name",value:"entries"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"OrderedListDetails"},directives:[]}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"AddOrderedListWithLayer"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"label"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"String"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"description"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"String"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"layerId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"entries"}},type:{kind:"ListType",type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"EntryInput"}}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"includeLayers"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"addOrderedList"},arguments:[{kind:"Argument",name:{kind:"Name",value:"modelId"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"label"},value:{kind:"Variable",name:{kind:"Name",value:"label"}}},{kind:"Argument",name:{kind:"Name",value:"description"},value:{kind:"Variable",name:{kind:"Name",value:"description"}}},{kind:"Argument",name:{kind:"Name",value:"layerId"},value:{kind:"Variable",name:{kind:"Name",value:"layerId"}}},{kind:"Argument",name:{kind:"Name",value:"entries"},value:{kind:"Variable",name:{kind:"Name",value:"entries"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"OrderedListDetails"},directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"OrderedListDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"OrderedList"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"label"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"layer"},arguments:[],directives:[{kind:"Directive",name:{kind:"Name",value:"include"},arguments:[{kind:"Argument",name:{kind:"Name",value:"if"},value:{kind:"Variable",name:{kind:"Name",value:"includeLayers"}}}]}],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"entries"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"EntryDetails"},directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"EntryDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Entry"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"type"},arguments:[],directives:[]}]}}],loc:{start:0,end:1324}};t.loc.source={body:"\n# get the ordered lists for the specified model\nquery GetOrderedLists($modelId: ID!, $includeLayers: Boolean!) {\n model(id: $modelId) {\n orderedLists(ids: []) {\n ...OrderedListDetails\n }\n }\n}\n\n# get an ordered list by name for the specified view\nquery GetOrderedListByName($modelId: ID!, $label: String!, $includeLayers: Boolean!) {\n model(id: $modelId) {\n orderedLists(label: $label) {\n ...OrderedListDetails\n }\n }\n}\n\n# add a new ordered list\nmutation AddOrderedList($modelId: ID!, $label: String!, $description: String!, $entries: [EntryInput!], $includeLayers: Boolean!) {\n addOrderedList(modelId: $modelId, , label: $label, description: $description, entries: $entries) {\n ...OrderedListDetails\n }\n}\n\nmutation AddOrderedListWithLayer($modelId: ID!, $label: String!, $description: String!, $layerId: ID!, $entries: [EntryInput!], $includeLayers: Boolean!) {\n addOrderedList(modelId: $modelId, , label: $label, description: $description, layerId: $layerId, entries: $entries) {\n ...OrderedListDetails\n }\n}\n\n# Default OrderedList properties used by Showcase and Workshop\nfragment OrderedListDetails on OrderedList {\n id\n label\n layer @include(if: $includeLayers) { id }\n entries {\n ...EntryDetails\n }\n}\n\n# Default Entry properties\nfragment EntryDetails on Entry {\n id\n type\n}\n",name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var n=e.type;"NamedType"===n.kind&&t.add(n.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,t)})),e.definitions&&e.definitions.forEach((function(e){i(e,t)}))}var n={};function s(e,t){for(var i=0;i0;){var l=r;r=new Set,l.forEach((function(e){o.has(e)||(o.add(e),(n[e]||new Set).forEach((function(e){r.add(e)})))}))}return o.forEach((function(t){var n=s(e,t);n&&i.definitions.push(n)})),i}t.definitions.forEach((function(e){if(e.name){var t=new Set;i(e,t),n[e.name.value]=t}})),e.exports=t,e.exports.GetOrderedLists=a(t,"GetOrderedLists"),e.exports.GetOrderedListByName=a(t,"GetOrderedListByName"),e.exports.AddOrderedList=a(t,"AddOrderedList"),e.exports.AddOrderedListWithLayer=a(t,"AddOrderedListWithLayer"),e.exports.OrderedListDetails=a(t,"OrderedListDetails"),e.exports.EntryDetails=a(t,"EntryDetails")},27140:(e,t,i)=>{var n={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetMattertags"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"includeDisabled"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"includeLayers"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"mattertags"},arguments:[{kind:"Argument",name:{kind:"Name",value:"includeDisabled"},value:{kind:"Variable",name:{kind:"Name",value:"includeDisabled"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"MattertagDetails"},directives:[]}]}}]}}]}},{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"RefreshTagFileAttachments"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"includeDisabled"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"mattertags"},arguments:[{kind:"Argument",name:{kind:"Name",value:"includeDisabled"},value:{kind:"Variable",name:{kind:"Name",value:"includeDisabled"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"fileAttachments"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"FileAttachmentDetails"},directives:[]}]}}]}}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"AddMattertag"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"mattertagId"}},type:{kind:"NamedType",name:{kind:"Name",value:"ID"}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"data"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"MattertagDetails"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"addMattertag"},arguments:[{kind:"Argument",name:{kind:"Name",value:"modelId"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"mattertagId"},value:{kind:"Variable",name:{kind:"Name",value:"mattertagId"}}},{kind:"Argument",name:{kind:"Name",value:"mattertag"},value:{kind:"Variable",name:{kind:"Name",value:"data"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"created"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"modified"},arguments:[],directives:[]}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"DeleteMattertag"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"mattertagId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"deleteMattertag"},arguments:[{kind:"Argument",name:{kind:"Name",value:"modelId"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"mattertagId"},value:{kind:"Variable",name:{kind:"Name",value:"mattertagId"}}}],directives:[]}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"MattertagDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Mattertag"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"label"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"description"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"color"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"enabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"floor"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"meshId"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"room"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"meshId"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"layer"},arguments:[],directives:[{kind:"Directive",name:{kind:"Name",value:"include"},arguments:[{kind:"Argument",name:{kind:"Name",value:"if"},value:{kind:"Variable",name:{kind:"Name",value:"includeLayers"}}}]}],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"anchorPosition"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"x"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"y"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"z"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"stemEnabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"stemNormal"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"x"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"y"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"z"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"stemLength"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"media"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"mediaType"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"created"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"modified"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"externalAttachments"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"ExternalAttachmentDetails"},directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"fileAttachments"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"FileAttachmentDetails"},directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"objectAnnotation"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"classification"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"defaultKeywords"},arguments:[],directives:[]}]}}]}},{kind:"Field",name:{kind:"Name",value:"keywords"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"icon"},arguments:[],directives:[]}]}}],loc:{start:0,end:1529}};n.loc.source={body:'#import "./attachments.gql"\n\n# read all mattertags for the specified model\nquery GetMattertags($modelId: ID!, $includeDisabled: Boolean!, $includeLayers: Boolean!) {\n model(id: $modelId) {\n id,\n mattertags(includeDisabled: $includeDisabled) {\n ...MattertagDetails\n }\n }\n}\n\n# refresh file attachment expiring resources for all mattertags\nquery RefreshTagFileAttachments($modelId: ID!, $includeDisabled: Boolean!) {\n model(id: $modelId) {\n id,\n mattertags(includeDisabled: $includeDisabled) {\n id\n fileAttachments { ...FileAttachmentDetails }\n }\n }\n}\n\n# add a new mattertag\nmutation AddMattertag($modelId:ID!, $mattertagId: ID, $data: MattertagDetails!) {\n addMattertag(modelId: $modelId, mattertagId: $mattertagId, mattertag: $data) {\n id\n created\n modified\n }\n}\n\n# delete an existing tag by id\nmutation DeleteMattertag($modelId: ID!, $mattertagId: ID!) {\n deleteMattertag(modelId: $modelId, mattertagId: $mattertagId)\n}\n\n# common Mattertag properties used by Showcase and Workshop\nfragment MattertagDetails on Mattertag {\n id\n label\n description\n color\n enabled\n floor { id, meshId }\n room { id, meshId }\n layer @include(if: $includeLayers) { id } \n anchorPosition { x y z }\n stemEnabled\n stemNormal { x, y, z }\n stemLength\n media\n mediaType\n created\n modified\n externalAttachments { ...ExternalAttachmentDetails }\n fileAttachments { ...FileAttachmentDetails }\n objectAnnotation {\n id\n classification {\n defaultKeywords\n }\n }\n keywords\n icon\n}\n',name:"GraphQL request",locationOffset:{line:1,column:1}};var s={};function a(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var i=e.type;"NamedType"===i.kind&&t.add(i.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){a(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){a(e,t)})),e.definitions&&e.definitions.forEach((function(e){a(e,t)}))}n.definitions=n.definitions.concat(i(17246).definitions.filter((function(e){if("FragmentDefinition"!==e.kind)return!0;var t=e.name.value;return!s[t]&&(s[t]=!0,!0)})));var o={};function r(e,t){for(var i=0;i0;){var l=a;a=new Set,l.forEach((function(e){s.has(e)||(s.add(e),(o[e]||new Set).forEach((function(e){a.add(e)})))}))}return s.forEach((function(t){var n=r(e,t);n&&i.definitions.push(n)})),i}n.definitions.forEach((function(e){if(e.name){var t=new Set;a(e,t),o[e.name.value]=t}})),e.exports=n,e.exports.GetMattertags=l(n,"GetMattertags"),e.exports.RefreshTagFileAttachments=l(n,"RefreshTagFileAttachments"),e.exports.AddMattertag=l(n,"AddMattertag"),e.exports.DeleteMattertag=l(n,"DeleteMattertag"),e.exports.MattertagDetails=l(n,"MattertagDetails")},64639:e=>{var t={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetMeasurements"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"includeDisabled"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"includeLayers"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"measurementPaths"},arguments:[{kind:"Argument",name:{kind:"Name",value:"includeDisabled"},value:{kind:"Variable",name:{kind:"Name",value:"includeDisabled"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"MeasurementDetails"},directives:[]}]}}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"AddMeasurement"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"data"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"MeasurementPathDetails"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"addMeasurementPath"},arguments:[{kind:"Argument",name:{kind:"Name",value:"modelId"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"path"},value:{kind:"Variable",name:{kind:"Name",value:"data"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"PatchMeasurement"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"pathId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"data"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"MeasurementPathPatch"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"patchMeasurementPath"},arguments:[{kind:"Argument",name:{kind:"Name",value:"modelId"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"pathId"},value:{kind:"Variable",name:{kind:"Name",value:"pathId"}}},{kind:"Argument",name:{kind:"Name",value:"patch"},value:{kind:"Variable",name:{kind:"Name",value:"data"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"DeleteMeasurement"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"pathId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"deleteMeasurementPath"},arguments:[{kind:"Argument",name:{kind:"Name",value:"modelId"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"pathId"},value:{kind:"Variable",name:{kind:"Name",value:"pathId"}}}],directives:[]}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"MeasurementDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"MeasurementPath"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"lineType"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"label"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"enabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"points"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"position"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"x"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"y"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"z"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"floor"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"meshId"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"room"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"meshId"},arguments:[],directives:[]}]}}]}},{kind:"Field",name:{kind:"Name",value:"layer"},arguments:[],directives:[{kind:"Directive",name:{kind:"Name",value:"include"},arguments:[{kind:"Argument",name:{kind:"Name",value:"if"},value:{kind:"Variable",name:{kind:"Name",value:"includeLayers"}}}]}],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"created"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"modified"},arguments:[],directives:[]}]}}],loc:{start:0,end:903}};t.loc.source={body:"\nquery GetMeasurements($modelId: ID!, $includeDisabled: Boolean!, $includeLayers: Boolean!) {\n model(id: $modelId) {\n id,\n measurementPaths(includeDisabled: $includeDisabled) {\n ...MeasurementDetails\n }\n }\n}\n\nmutation AddMeasurement($modelId: ID!, $data: MeasurementPathDetails!) {\n addMeasurementPath(modelId: $modelId, path: $data) {\n id\n }\n}\n\nmutation PatchMeasurement($modelId: ID!, $pathId: ID!, $data: MeasurementPathPatch!) {\n patchMeasurementPath(modelId: $modelId, , pathId: $pathId, patch: $data) {\n id\n }\n}\n\nmutation DeleteMeasurement($modelId: ID!, $pathId: ID!) {\n deleteMeasurementPath(modelId: $modelId, , pathId: $pathId)\n}\n\nfragment MeasurementDetails on MeasurementPath {\n id\n lineType\n label\n enabled\n points {\n position { x y z }\n floor { id meshId }\n room { id meshId }\n }\n layer @include(if: $includeLayers) { id }\n created\n modified\n}\n",name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var n=e.type;"NamedType"===n.kind&&t.add(n.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,t)})),e.definitions&&e.definitions.forEach((function(e){i(e,t)}))}var n={};function s(e,t){for(var i=0;i0;){var l=r;r=new Set,l.forEach((function(e){o.has(e)||(o.add(e),(n[e]||new Set).forEach((function(e){r.add(e)})))}))}return o.forEach((function(t){var n=s(e,t);n&&i.definitions.push(n)})),i}t.definitions.forEach((function(e){if(e.name){var t=new Set;i(e,t),n[e.name.value]=t}})),e.exports=t,e.exports.GetMeasurements=a(t,"GetMeasurements"),e.exports.AddMeasurement=a(t,"AddMeasurement"),e.exports.PatchMeasurement=a(t,"PatchMeasurement"),e.exports.DeleteMeasurement=a(t,"DeleteMeasurement"),e.exports.MeasurementDetails=a(t,"MeasurementDetails")},14991:e=>{var t={kind:"Document",definitions:[{kind:"FragmentDefinition",name:{kind:"Name",value:"ModelDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Model"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"rootModelId"},arguments:[],directives:[]},{kind:"Field",alias:{kind:"Name",value:"compositeViews"},name:{kind:"Name",value:"views"},arguments:[{kind:"Argument",name:{kind:"Name",value:"types"},value:{kind:"ListValue",values:[{kind:"StringValue",value:"matterport.model.composite",block:!1}]}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"name"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"visibility"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"discoverable"},arguments:[],directives:[]},{kind:"FragmentSpread",name:{kind:"Name",value:"ModelStatus"},directives:[]},{kind:"Field",name:{kind:"Name",value:"image"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"PhotoDetails"},directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"publication"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"PublicationDetails"},directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"options"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"urlBrandingEnabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"socialSharingEnabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"vrEnabled"},arguments:[],directives:[]}]}},{kind:"FragmentSpread",name:{kind:"Name",value:"ListingDetails"},directives:[]}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"PublicationDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"ModelPublicationDetails"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"address"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"published"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"lastPublished"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"presentedBy"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"summary"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"defaultViewId"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"description"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"externalUrl"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"contact"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"name"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"email"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"phoneNumber"},arguments:[],directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"ModelAvailableAssets"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Model"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"rootModelId"},arguments:[],directives:[]},{kind:"FragmentSpread",name:{kind:"Name",value:"ModelStatus"},directives:[]},{kind:"Field",name:{kind:"Name",value:"assets"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"meshes"},arguments:[{kind:"Argument",name:{kind:"Name",value:"formats"},value:{kind:"StringValue",value:"dam",block:!1}},{kind:"Argument",name:{kind:"Name",value:"resolutions"},value:{kind:"ListValue",values:[{kind:"StringValue",value:"50k",block:!1},{kind:"StringValue",value:"500k",block:!1}]}},{kind:"Argument",name:{kind:"Name",value:"compressions"},value:{kind:"EnumValue",value:"none"}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"MeshDetails"},directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"textures"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"TextureDetails"},directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"tilesets"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"TilesetDetails"},directives:[]}]}}]}},{kind:"Field",alias:{kind:"Name",value:"lod"},name:{kind:"Name",value:"policy"},arguments:[{kind:"Argument",name:{kind:"Name",value:"name"},value:{kind:"StringValue",value:"spaces.chunked.mesh.lod",block:!1}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"InlineFragment",typeCondition:{kind:"NamedType",name:{kind:"Name",value:"PolicyOptions"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"options"},arguments:[],directives:[]}]}}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"ModelStatus"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Model"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"state"},arguments:[],directives:[]}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"MeshDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Mesh"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"status"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"filename"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"format"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"resolution"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"url"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"validUntil"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"model"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"layer"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"TextureDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Texture"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"status"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"format"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"resolution"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"quality"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"urlTemplate"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"validUntil"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"model"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"layer"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"TilesetDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Tileset"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"status"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tilesetVersion"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"url"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"urlTemplate"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"validUntil"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tilesetDepth"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tilesetPreset"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"model"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"layer"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"ListingDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Model"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"externalListings"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"listingId"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"listingType"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"listingUrl"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"homesPropertyKey"},arguments:[],directives:[]}]}}]}}],loc:{start:0,end:1604}};t.loc.source={body:'# Publicly available model details. Must not contain any private fields.\nfragment ModelDetails on Model {\n id\n rootModelId\n compositeViews: views(types: ["matterport.model.composite"]) {\n id\n }\n name\n visibility\n discoverable\n ...ModelStatus\n image { ...PhotoDetails }\n publication { ...PublicationDetails }\n options {\n urlBrandingEnabled\n socialSharingEnabled\n vrEnabled\n }\n ...ListingDetails\n}\n\nfragment PublicationDetails on ModelPublicationDetails {\n address\n published\n lastPublished\n presentedBy\n summary\n defaultViewId\n description\n externalUrl\n contact {\n name\n email\n phoneNumber\n }\n}\n\nfragment ModelAvailableAssets on Model {\n id\n rootModelId\n ...ModelStatus\n assets {\n meshes(formats: "dam", resolutions: ["50k", "500k"], compressions: none) { ...MeshDetails }\n textures { ...TextureDetails }\n tilesets { ...TilesetDetails }\n }\n lod: policy(name: "spaces.chunked.mesh.lod") {\n ... on PolicyOptions {\n options\n }\n }\n}\n\nfragment ModelStatus on Model {\n state\n}\n\nfragment MeshDetails on Mesh {\n id\n status\n filename\n format\n resolution\n url\n validUntil\n model { id }\n layer { id }\n}\n\nfragment TextureDetails on Texture {\n id\n status\n format\n resolution\n quality\n urlTemplate\n validUntil\n model { id }\n layer { id }\n}\n\nfragment TilesetDetails on Tileset {\n status\n tilesetVersion\n url\n urlTemplate\n validUntil\n tilesetDepth\n tilesetPreset\n model { id }\n layer { id }\n}\n\nfragment ListingDetails on Model {\n externalListings {\n listingId\n listingType\n listingUrl\n homesPropertyKey\n }\n}\n',name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var n=e.type;"NamedType"===n.kind&&t.add(n.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,t)})),e.definitions&&e.definitions.forEach((function(e){i(e,t)}))}var n={};function s(e,t){for(var i=0;i0;){var l=r;r=new Set,l.forEach((function(e){o.has(e)||(o.add(e),(n[e]||new Set).forEach((function(e){r.add(e)})))}))}return o.forEach((function(t){var n=s(e,t);n&&i.definitions.push(n)})),i}t.definitions.forEach((function(e){if(e.name){var t=new Set;i(e,t),n[e.name.value]=t}})),e.exports=t,e.exports.ModelDetails=a(t,"ModelDetails"),e.exports.PublicationDetails=a(t,"PublicationDetails"),e.exports.ModelAvailableAssets=a(t,"ModelAvailableAssets"),e.exports.ModelStatus=a(t,"ModelStatus"),e.exports.MeshDetails=a(t,"MeshDetails"),e.exports.TextureDetails=a(t,"TextureDetails"),e.exports.TilesetDetails=a(t,"TilesetDetails"),e.exports.ListingDetails=a(t,"ListingDetails")},82038:e=>{var t={kind:"Document",definitions:[{kind:"FragmentDefinition",name:{kind:"Name",value:"ModelPlayerOptions"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Model"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"publication"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"options"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"PublicationOptions"},directives:[]}]}}]}},{kind:"Field",name:{kind:"Name",value:"options"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"ModelOptions"},directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"ModelOptions"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"ModelOptions"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"backgroundColor"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"defurnishViewEnabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"dollhouseEnabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"dollhouseLabelsEnabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"floorSelectEnabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"floorplanEnabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"highlightReelEnabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"labelsEnabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"measurements"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"roomBoundsEnabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"socialSharingEnabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"spaceSearchEnabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tourButtonsEnabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tourDollhousePanSpeed"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tourFastTransitionsEnabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tourPanAngle"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tourPanDirection"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tourPanSpeed"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tourTransitionSpeed"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tourTransitionTime"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tourZoomDuration"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"unitType"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"urlBrandingEnabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"vrEnabled"},arguments:[],directives:[]}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"PublicationOptions"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"ModelPublicationOptions"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"contactEmail"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"contactName"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"contactPhone"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"modelName"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"modelSummary"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"presentedBy"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"address"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"externalUrl"},arguments:[],directives:[]}]}}],loc:{start:0,end:854}};t.loc.source={body:"# Model fields to populate PlayerOptions\nfragment ModelPlayerOptions on Model {\n publication {\n options { ...PublicationOptions }\n }\n options { ...ModelOptions }\n}\n\nfragment ModelOptions on ModelOptions {\n backgroundColor\n defurnishViewEnabled\n dollhouseEnabled\n dollhouseLabelsEnabled\n floorSelectEnabled\n floorplanEnabled\n highlightReelEnabled\n labelsEnabled\n measurements\n roomBoundsEnabled\n socialSharingEnabled\n spaceSearchEnabled\n tourButtonsEnabled\n tourDollhousePanSpeed\n tourFastTransitionsEnabled\n tourPanAngle\n tourPanDirection\n tourPanSpeed\n tourTransitionSpeed\n tourTransitionTime\n tourZoomDuration\n unitType\n urlBrandingEnabled\n vrEnabled\n}\n\nfragment PublicationOptions on ModelPublicationOptions {\n contactEmail\n contactName\n contactPhone\n modelName\n modelSummary\n presentedBy\n address\n externalUrl\n}\n",name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var n=e.type;"NamedType"===n.kind&&t.add(n.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,t)})),e.definitions&&e.definitions.forEach((function(e){i(e,t)}))}var n={};function s(e,t){for(var i=0;i0;){var l=r;r=new Set,l.forEach((function(e){o.has(e)||(o.add(e),(n[e]||new Set).forEach((function(e){r.add(e)})))}))}return o.forEach((function(t){var n=s(e,t);n&&i.definitions.push(n)})),i}t.definitions.forEach((function(e){if(e.name){var t=new Set;i(e,t),n[e.name.value]=t}})),e.exports=t,e.exports.ModelPlayerOptions=a(t,"ModelPlayerOptions"),e.exports.ModelOptions=a(t,"ModelOptions"),e.exports.PublicationOptions=a(t,"PublicationOptions")},25e3:e=>{var t={kind:"Document",definitions:[{kind:"FragmentDefinition",name:{kind:"Name",value:"OverlayLayerExists"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Model"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",alias:{kind:"Name",value:"overlayLayers"},name:{kind:"Name",value:"layers"},arguments:[{kind:"Argument",name:{kind:"Name",value:"types"},value:{kind:"ListValue",values:[{kind:"StringValue",value:"matterport.overlay.assets",block:!1}]}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"OverlayViewIds"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Model"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"rootModelId"},arguments:[],directives:[]},{kind:"Field",alias:{kind:"Name",value:"defurnishViews"},name:{kind:"Name",value:"views"},arguments:[{kind:"Argument",name:{kind:"Name",value:"types"},value:{kind:"StringValue",value:"matterport.model.defurnished",block:!1}}],directives:[{kind:"Directive",name:{kind:"Name",value:"onError"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"StringValue",value:"not.found",block:!1}},{kind:"Argument",name:{kind:"Name",value:"null"},value:{kind:"BooleanValue",value:!0}}]}],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}}]}}]}}],loc:{start:0,end:529}};t.loc.source={body:'\n# presence of overlay layers hints the current loaded view has alternate sweeps (Defunrnish)\nfragment OverlayLayerExists on Model {\n overlayLayers: layers(types: ["matterport.overlay.assets"]) {\n id\n }\n}\n\n# we need both base and defurnish view id\'s in order to manually sync position/placement writes across\nfragment OverlayViewIds on Model {\n rootModelId\n # defurnish view, if exists\n defurnishViews: views(types: "matterport.model.defurnished") @onError(id: "not.found", null: true) {\n model {\n id\n }\n }\n}\n',name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var n=e.type;"NamedType"===n.kind&&t.add(n.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,t)})),e.definitions&&e.definitions.forEach((function(e){i(e,t)}))}var n={};function s(e,t){for(var i=0;i0;){var l=r;r=new Set,l.forEach((function(e){o.has(e)||(o.add(e),(n[e]||new Set).forEach((function(e){r.add(e)})))}))}return o.forEach((function(t){var n=s(e,t);n&&i.definitions.push(n)})),i}t.definitions.forEach((function(e){if(e.name){var t=new Set;i(e,t),n[e.name.value]=t}})),e.exports=t,e.exports.OverlayLayerExists=a(t,"OverlayLayerExists"),e.exports.OverlayViewIds=a(t,"OverlayViewIds")},10600:e=>{var t={kind:"Document",definitions:[{kind:"FragmentDefinition",name:{kind:"Name",value:"PhotoDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Photo"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"label"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"classification"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"category"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"model"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"rootModelId"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"height"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"width"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"created"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"modified"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"status"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"filename"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"format"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"url"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"downloadUrl"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"resolutions"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"type"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"origin"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"validUntil"},arguments:[],directives:[]},{kind:"Field",alias:{kind:"Name",value:"thumbnailUrl"},name:{kind:"Name",value:"resizeUrl"},arguments:[{kind:"Argument",name:{kind:"Name",value:"resolution"},value:{kind:"EnumValue",value:"thumbnail"}}],directives:[]},{kind:"Field",alias:{kind:"Name",value:"presentationUrl"},name:{kind:"Name",value:"resizeUrl"},arguments:[{kind:"Argument",name:{kind:"Name",value:"resolution"},value:{kind:"EnumValue",value:"presentation"}}],directives:[]},{kind:"Field",name:{kind:"Name",value:"snapshotLocation"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"viewMode"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"position"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"x"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"y"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"z"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"rotation"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"x"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"y"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"z"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"w"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"zoom"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"floorVisibility"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"meshId"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"sequence"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"anchor"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tags"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"pano"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"placement"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"room"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}}]}}]}}]}}],loc:{start:0,end:629}};t.loc.source={body:"\nfragment PhotoDetails on Photo {\n id\n label\n classification\n category\n model {\n id\n rootModelId\n }\n height\n width\n created\n modified\n status\n filename\n format\n url\n downloadUrl\n resolutions\n type\n origin\n validUntil\n thumbnailUrl: resizeUrl(resolution: thumbnail)\n presentationUrl: resizeUrl(resolution: presentation)\n snapshotLocation {\n viewMode\n position { x y z }\n rotation { x y z w }\n zoom\n floorVisibility {\n id\n meshId\n sequence\n }\n anchor {\n id\n tags\n pano {\n id\n placement\n }\n room {\n id\n }\n }\n }\n}\n",name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var n=e.type;"NamedType"===n.kind&&t.add(n.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,t)})),e.definitions&&e.definitions.forEach((function(e){i(e,t)}))}var n={};function s(e,t){for(var i=0;i0;){var l=r;r=new Set,l.forEach((function(e){o.has(e)||(o.add(e),(n[e]||new Set).forEach((function(e){r.add(e)})))}))}return o.forEach((function(t){var n=s(e,t);n&&i.definitions.push(n)})),i}(t,"PhotoDetails")},9192:(e,t,i)=>{var n={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetPlugins"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"sdkPlugins"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"PluginDetails"},directives:[]}]}}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"DeletePlugin"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"name"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"String"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"deleteSdkPlugin"},arguments:[{kind:"Argument",name:{kind:"Name",value:"modelId"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"name"},value:{kind:"Variable",name:{kind:"Name",value:"name"}}}],directives:[]}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"UpdatePlugin"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"name"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"String"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"patch"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"SdkPluginPatch"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"updateSdkPlugin"},arguments:[{kind:"Argument",name:{kind:"Name",value:"modelId"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"name"},value:{kind:"Variable",name:{kind:"Name",value:"name"}}},{kind:"Argument",name:{kind:"Name",value:"patch"},value:{kind:"Variable",name:{kind:"Name",value:"patch"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"PluginDetails"},directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"PluginDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"SdkPlugin"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"name"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"currentVersion"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"description"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"versions"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"version"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"requiredPolicies"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"fileAttachments"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"FileAttachmentDetails"},directives:[]}]}}]}}],loc:{start:0,end:764}};n.loc.source={body:'#import "./attachments.gql"\n\n# read all plugins for the specified model\nquery GetPlugins($modelId: ID!) {\n model(id: $modelId) {\n id\n sdkPlugins {\n ...PluginDetails\n }\n }\n}\n\n# delete an existing plugin by id\nmutation DeletePlugin($modelId: ID!, $name: String!) {\n deleteSdkPlugin(modelId: $modelId, name: $name)\n}\n\nmutation UpdatePlugin($modelId: ID!, $name: String!, $patch: SdkPluginPatch!) {\n updateSdkPlugin(\n modelId: $modelId\n name: $name\n patch: $patch\n ) {\n ...PluginDetails\n }\n}\n\n# common Plugin properties used by Showcase and Workshop\nfragment PluginDetails on SdkPlugin {\n id\n name\n currentVersion\n description\n versions {\n version\n requiredPolicies\n }\n fileAttachments {\n ...FileAttachmentDetails\n }\n}\n',name:"GraphQL request",locationOffset:{line:1,column:1}};var s={};function a(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var i=e.type;"NamedType"===i.kind&&t.add(i.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){a(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){a(e,t)})),e.definitions&&e.definitions.forEach((function(e){a(e,t)}))}n.definitions=n.definitions.concat(i(17246).definitions.filter((function(e){if("FragmentDefinition"!==e.kind)return!0;var t=e.name.value;return!s[t]&&(s[t]=!0,!0)})));var o={};function r(e,t){for(var i=0;i0;){var l=a;a=new Set,l.forEach((function(e){s.has(e)||(s.add(e),(o[e]||new Set).forEach((function(e){a.add(e)})))}))}return s.forEach((function(t){var n=r(e,t);n&&i.definitions.push(n)})),i}n.definitions.forEach((function(e){if(e.name){var t=new Set;a(e,t),o[e.name.value]=t}})),e.exports=n,e.exports.GetPlugins=l(n,"GetPlugins"),e.exports.DeletePlugin=l(n,"DeletePlugin"),e.exports.UpdatePlugin=l(n,"UpdatePlugin"),e.exports.PluginDetails=l(n,"PluginDetails")},3718:e=>{var t={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetModelPolicies"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"FragmentSpread",name:{kind:"Name",value:"ModelPolicies"},directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"ModelPolicies"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Model"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"policies"},arguments:[{kind:"Argument",name:{kind:"Name",value:"names"},value:{kind:"ListValue",values:[{kind:"StringValue",value:"spaces.tours_v2",block:!1},{kind:"StringValue",value:"spaces.notes",block:!1},{kind:"StringValue",value:"spaces.visitor.subscriber.prompt",block:!1},{kind:"StringValue",value:"spaces.webgl.layers.mode",block:!1},{kind:"StringValue",value:"spaces.elements",block:!1},{kind:"StringValue",value:"spaces.chunked.mesh.lod",block:!1},{kind:"StringValue",value:"spaces.camera_removal",block:!1},{kind:"StringValue",value:"org.spaces.auto_tour",block:!1},{kind:"StringValue",value:"org.csgp.propertymatch.logo",block:!1},{kind:"StringValue",value:"org.csgp.propertymatch.tracking",block:!1},{kind:"StringValue",value:"org.csgp.propertymatch.backlink",block:!1},{kind:"StringValue",value:"org.spaces.exterior_views",block:!1},{kind:"StringValue",value:"spaces.aws.twinmaker.sdk.access",block:!1},{kind:"StringValue",value:"spaces.sdk.qa",block:!1},{kind:"StringValue",value:"spaces.plugins",block:!1},{kind:"StringValue",value:"spaces.plugins.config",block:!1},{kind:"StringValue",value:"spaces.plugins.debug",block:!1},{kind:"StringValue",value:"spaces.plugins.groups",block:!1},{kind:"StringValue",value:"org.spaces.importtags",block:!1},{kind:"StringValue",value:"perm.spaces.workshop.edit",block:!1},{kind:"StringValue",value:"spaces.bundles.mp.defurnish",block:!1},{kind:"StringValue",value:"perm.spaces.notes.view",block:!1},{kind:"StringValue",value:"perm.spaces.notes.edit",block:!1},{kind:"StringValue",value:"perm.spaces.notes.delete",block:!1}]}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"name"},arguments:[],directives:[]},{kind:"Field",alias:{kind:"Name",value:"type"},name:{kind:"Name",value:"__typename"},arguments:[],directives:[]},{kind:"InlineFragment",typeCondition:{kind:"NamedType",name:{kind:"Name",value:"PolicyFlag"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"enabled"},arguments:[],directives:[]}]}},{kind:"InlineFragment",typeCondition:{kind:"NamedType",name:{kind:"Name",value:"PolicyOptions"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"options"},arguments:[],directives:[]}]}},{kind:"InlineFragment",typeCondition:{kind:"NamedType",name:{kind:"Name",value:"PolicyValue"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"value"},arguments:[],directives:[]}]}},{kind:"InlineFragment",typeCondition:{kind:"NamedType",name:{kind:"Name",value:"PolicyFeature"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"availability"},arguments:[],directives:[]}]}}]}}]}}],loc:{start:0,end:1508}};t.loc.source={body:'\n# get model policies available to all users\nquery GetModelPolicies($modelId: ID!) {\n model(id: $modelId) {\n id\n ...ModelPolicies\n }\n}\n\nfragment ModelPolicies on Model {\n # Subset of policies used by our apps\n # NOTE: in Showcase these will be prefetched as anonymous, so user-specific\n # policy values cannot be used there unless you explicitly requery them.\n policies(names: [\n # Model-level:\n "spaces.tours_v2",\n "spaces.notes",\n "spaces.visitor.subscriber.prompt",\n "spaces.webgl.layers.mode",\n "spaces.elements",\n "spaces.chunked.mesh.lod",\n "spaces.camera_removal",\n\n # Org-level:\n "org.spaces.auto_tour",\n "org.csgp.propertymatch.logo",\n "org.csgp.propertymatch.tracking",\n "org.csgp.propertymatch.backlink",\n "org.spaces.exterior_views",\n\n\n # SDK/Plugins:\n "spaces.aws.twinmaker.sdk.access",\n "spaces.sdk.qa",\n "spaces.plugins",\n "spaces.plugins.config",\n "spaces.plugins.debug",\n "spaces.plugins.groups",\n\n # workshop plugin enablement\n "org.spaces.importtags",\n\n # Known to vary by user - will not exist if user is not logged in\n "perm.spaces.workshop.edit",\n "spaces.bundles.mp.defurnish",\n "perm.spaces.notes.view",\n "perm.spaces.notes.edit",\n "perm.spaces.notes.delete",\n ]) {\n name\n type: __typename\n ...on PolicyFlag {\n enabled\n }\n ...on PolicyOptions {\n options\n }\n ...on PolicyValue {\n value\n }\n ...on PolicyFeature {\n availability\n }\n }\n}\n',name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var n=e.type;"NamedType"===n.kind&&t.add(n.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,t)})),e.definitions&&e.definitions.forEach((function(e){i(e,t)}))}var n={};function s(e,t){for(var i=0;i0;){var l=r;r=new Set,l.forEach((function(e){o.has(e)||(o.add(e),(n[e]||new Set).forEach((function(e){r.add(e)})))}))}return o.forEach((function(t){var n=s(e,t);n&&i.definitions.push(n)})),i}t.definitions.forEach((function(e){if(e.name){var t=new Set;i(e,t),n[e.name.value]=t}})),e.exports=t,e.exports.GetModelPolicies=a(t,"GetModelPolicies"),e.exports.ModelPolicies=a(t,"ModelPolicies")},3073:(e,t,i)=>{var n={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetModelPrefetch"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"sweepTags"}},type:{kind:"ListType",type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"String"}}}},defaultValue:{kind:"ListValue",values:[{kind:"StringValue",value:"showcase",block:!1}]},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"view"},value:{kind:"EnumValue",value:"default"}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"ModelAvailableAssets"},directives:[]},{kind:"FragmentSpread",name:{kind:"Name",value:"OverlayLayerExists"},directives:[]},{kind:"FragmentSpread",name:{kind:"Name",value:"OverlayViewIds"},directives:[]},{kind:"Field",name:{kind:"Name",value:"locations"},arguments:[{kind:"Argument",name:{kind:"Name",value:"tags"},value:{kind:"Variable",name:{kind:"Name",value:"sweepTags"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"AnchorLocationDetails"},directives:[]}]}},{kind:"FragmentSpread",name:{kind:"Name",value:"PublicModelViews"},directives:[]}]}}]}},{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetRootPrefetch"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"viewLookup"}},type:{kind:"NamedType",name:{kind:"Name",value:"ViewLookupMode"}},defaultValue:{kind:"EnumValue",value:"root"},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"view"},value:{kind:"Variable",name:{kind:"Name",value:"viewLookup"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"ModelDetails"},directives:[]},{kind:"FragmentSpread",name:{kind:"Name",value:"ModelPlayerOptions"},directives:[]},{kind:"FragmentSpread",name:{kind:"Name",value:"ModelFloors"},directives:[]},{kind:"FragmentSpread",name:{kind:"Name",value:"ModelRooms"},directives:[]},{kind:"FragmentSpread",name:{kind:"Name",value:"ModelPolicies"},directives:[]}]}}]}}],loc:{start:0,end:1747}};n.loc.source={body:'# Make sure the following imports do not import files themselves, it seems\n# to mess up the platform side parsing. That is why you see these\n# -fragment.gql files below.\n\n#import "./model-fragments.gql"\n#import "./model-options-fragments.gql"\n#import "./photo-fragments.gql"\n#import "./floors.gql"\n#import "./rooms.gql"\n#import "./overlay-fragments.gql"\n#import "./sweeps-fragments.gql"\n#import "./view-fragments.gql"\n#import "./policy.gql"\n\n# Preloaded model data to be embedded into Showcase HTML page,\n# only load data that is required for Showcase to start,\n# not varied by user, and safe for long-term-cache type behavior.\n# Includes the default view.\n# (ie. NO Mattertags)\nquery GetModelPrefetch($modelId: ID!, $sweepTags: [String!] = ["showcase"]) {\n model(id: $modelId, view: default) {\n # MdsModelAssetsStore\n ...ModelAvailableAssets\n ...OverlayLayerExists\n ...OverlayViewIds\n\n # MdsSweepStore\n # an alternative that lets me pass $sweepTags: null to get all sweeps\n # in a workshop context\n locations(tags: $sweepTags) {\n ...AnchorLocationDetails\n }\n\n # LayersData.views - filtered to public only\n ...PublicModelViews\n }\n}\n\nquery GetRootPrefetch($modelId: ID!, $viewLookup: ViewLookupMode = root) {\n model(id: $modelId, view: $viewLookup) {\n # MdsModelStore\n ...ModelDetails\n\n # MdsPlayerOptionsStore\n # adds to the subset from the ModelDetails fragment\n ...ModelPlayerOptions\n\n # MdsFloorStore\n ...ModelFloors\n\n # MdsRoomStore\n ...ModelRooms\n\n # MdsPolicyStore\n # Policy values here will always be those for anonymous users; if any of them vary by\n # user and we care about them in Showcase, they\'ll need to be explicitly requeried.\n ...ModelPolicies\n }\n}\n',name:"GraphQL request",locationOffset:{line:1,column:1}};var s={};function a(e){return e.filter((function(e){if("FragmentDefinition"!==e.kind)return!0;var t=e.name.value;return!s[t]&&(s[t]=!0,!0)}))}function o(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var i=e.type;"NamedType"===i.kind&&t.add(i.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){o(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){o(e,t)})),e.definitions&&e.definitions.forEach((function(e){o(e,t)}))}n.definitions=n.definitions.concat(a(i(14991).definitions)),n.definitions=n.definitions.concat(a(i(82038).definitions)),n.definitions=n.definitions.concat(a(i(10600).definitions)),n.definitions=n.definitions.concat(a(i(98585).definitions)),n.definitions=n.definitions.concat(a(i(26172).definitions)),n.definitions=n.definitions.concat(a(i(25e3).definitions)),n.definitions=n.definitions.concat(a(i(77583).definitions)),n.definitions=n.definitions.concat(a(i(31595).definitions)),n.definitions=n.definitions.concat(a(i(3718).definitions));var r={};function l(e,t){for(var i=0;i0;){var o=a;a=new Set,o.forEach((function(e){s.has(e)||(s.add(e),(r[e]||new Set).forEach((function(e){a.add(e)})))}))}return s.forEach((function(t){var n=l(e,t);n&&i.definitions.push(n)})),i}n.definitions.forEach((function(e){if(e.name){var t=new Set;o(e,t),r[e.name.value]=t}})),e.exports=n,e.exports.GetModelPrefetch=d(n,"GetModelPrefetch"),e.exports.GetRootPrefetch=d(n,"GetRootPrefetch")},32126:e=>{var t={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetRoomBounds"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"floors"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"layer"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"edges"},arguments:[{kind:"Argument",name:{kind:"Name",value:"includeUsed"},value:{kind:"BooleanValue",value:!0}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"layer"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"type"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"vertices"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"layer"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"position"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"x"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"y"},arguments:[],directives:[]}]}}]}},{kind:"Field",name:{kind:"Name",value:"centerLineBias"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"thickness"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"openings"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"width"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"relativeCenter"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"type"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"height"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"lowerElevation"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"layer"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"label"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"metadata"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"key"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"value"},arguments:[],directives:[]}]}}]}}]}}]}},{kind:"Field",name:{kind:"Name",value:"rooms"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"layer"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"floor"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"classifications"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"confidence"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"label"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"boundary"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"edges"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}}]}},{kind:"Field",name:{kind:"Name",value:"holes"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"edges"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}}]}},{kind:"Field",name:{kind:"Name",value:"dimensionEstimates"},arguments:[{kind:"Argument",name:{kind:"Name",value:"units"},value:{kind:"EnumValue",value:"metric"}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"area"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"areaIndoor"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"areaIndoorWithWalls"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"width"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"depth"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"height"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"units"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"ceiling"},arguments:[{kind:"Argument",name:{kind:"Name",value:"units"},value:{kind:"EnumValue",value:"metric"}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"planes"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"measurements"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"bottom"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"x"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"y"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"z"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"height"},arguments:[],directives:[]}]}}]}},{kind:"Field",name:{kind:"Name",value:"maxHeight"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"minHeight"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"label"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"keywords"},arguments:[],directives:[]}]}}]}}]}},{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetRoomClassifications"},variableDefinitions:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"RoomClassifications"},directives:[]}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"RoomClassifications"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Query"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"roomClassifications"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"label"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"defaultKeywords"},arguments:[],directives:[]}]}}]}}],loc:{start:0,end:1287}};t.loc.source={body:"query GetRoomBounds($modelId: ID!) {\n model(id: $modelId) {\n floors {\n id\n layer { id }\n edges(includeUsed: true) {\n id\n layer { id }\n type\n vertices { id layer { id } position { x y }}\n centerLineBias\n thickness\n openings {\n id\n width\n relativeCenter\n type\n height\n lowerElevation\n layer { id }\n label\n metadata { key, value }\n }\n }\n }\n rooms {\n id\n layer { id }\n floor { id }\n classifications {\n id\n confidence\n label\n }\n boundary {\n edges { id }\n }\n holes {\n edges { id }\n }\n dimensionEstimates (units: metric) {\n area\n areaIndoor\n areaIndoorWithWalls\n width\n depth\n height\n units\n }\n ceiling (units: metric) {\n planes {\n measurements {\n bottom { x y z }\n height\n }\n }\n maxHeight\n minHeight\n }\n label\n keywords\n }\n }\n}\n\nquery GetRoomClassifications {\n ...RoomClassifications\n}\n\nfragment RoomClassifications on Query {\n roomClassifications {\n id\n label\n defaultKeywords\n }\n}\n",name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var n=e.type;"NamedType"===n.kind&&t.add(n.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,t)})),e.definitions&&e.definitions.forEach((function(e){i(e,t)}))}var n={};function s(e,t){for(var i=0;i0;){var l=r;r=new Set,l.forEach((function(e){o.has(e)||(o.add(e),(n[e]||new Set).forEach((function(e){r.add(e)})))}))}return o.forEach((function(t){var n=s(e,t);n&&i.definitions.push(n)})),i}t.definitions.forEach((function(e){if(e.name){var t=new Set;i(e,t),n[e.name.value]=t}})),e.exports=t,e.exports.GetRoomBounds=a(t,"GetRoomBounds"),e.exports.GetRoomClassifications=a(t,"GetRoomClassifications"),e.exports.RoomClassifications=a(t,"RoomClassifications")},26172:e=>{var t={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetRooms"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"FragmentSpread",name:{kind:"Name",value:"ModelRooms"},directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"ModelRooms"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Model"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"rooms"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"RoomDetails"},directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"RoomDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"ModelRoom"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"meshId"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"floor"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"meshId"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"dimensions"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"height"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"width"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"depth"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"areaFloor"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"tags"},arguments:[],directives:[]}]}}],loc:{start:0,end:312}};t.loc.source={body:"\nquery GetRooms ($modelId: ID!) {\n model(id: $modelId) {\n id\n ...ModelRooms\n }\n}\n\nfragment ModelRooms on Model {\n rooms {\n ...RoomDetails\n }\n}\n\nfragment RoomDetails on ModelRoom {\n id\n meshId\n floor {\n id\n meshId\n }\n dimensions {\n height\n width\n depth\n areaFloor\n }\n tags\n}\n",name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var n=e.type;"NamedType"===n.kind&&t.add(n.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,t)})),e.definitions&&e.definitions.forEach((function(e){i(e,t)}))}var n={};function s(e,t){for(var i=0;i0;){var l=r;r=new Set,l.forEach((function(e){o.has(e)||(o.add(e),(n[e]||new Set).forEach((function(e){r.add(e)})))}))}return o.forEach((function(t){var n=s(e,t);n&&i.definitions.push(n)})),i}t.definitions.forEach((function(e){if(e.name){var t=new Set;i(e,t),n[e.name.value]=t}})),e.exports=t,e.exports.GetRooms=a(t,"GetRooms"),e.exports.ModelRooms=a(t,"ModelRooms"),e.exports.RoomDetails=a(t,"RoomDetails")},77583:e=>{var t={kind:"Document",definitions:[{kind:"FragmentDefinition",name:{kind:"Name",value:"SkyboxDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"SkyboxPanorama"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"resolution"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"status"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"urlTemplate"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tileResolution"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tileCount"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tileUrlTemplate"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"validUntil"},arguments:[],directives:[]}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"SkyboxUrlDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"PanoramicImageLocation"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"resolutions"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"skyboxes"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"SkyboxDetails"},directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"AnchorLocationDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"AnchorLocation"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"layer"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"model"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"index"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"floor"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"meshId"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"room"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"meshId"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"neighbors"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"tags"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"position"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"x"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"y"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"z"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"pano"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"sweepUuid"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"label"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"placement"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"source"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"position"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"x"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"y"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"z"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"rotation"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"x"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"y"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"z"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"w"},arguments:[],directives:[]}]}},{kind:"FragmentSpread",name:{kind:"Name",value:"SkyboxUrlDetails"},directives:[]}]}}]}}],loc:{start:0,end:572}};t.loc.source={body:"fragment SkyboxDetails on SkyboxPanorama {\n resolution\n status\n urlTemplate\n tileResolution\n tileCount\n tileUrlTemplate\n validUntil\n}\n\nfragment SkyboxUrlDetails on PanoramicImageLocation {\n id\n resolutions\n skyboxes { ...SkyboxDetails }\n}\n\nfragment AnchorLocationDetails on AnchorLocation {\n id\n layer { id }\n model { id }\n index\n floor { id, meshId }\n room { id, meshId }\n neighbors\n tags\n position { x y z }\n pano {\n id\n sweepUuid\n label\n placement\n source\n position { x y z }\n rotation { x y z w }\n ...SkyboxUrlDetails\n }\n}\n",name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var n=e.type;"NamedType"===n.kind&&t.add(n.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,t)})),e.definitions&&e.definitions.forEach((function(e){i(e,t)}))}var n={};function s(e,t){for(var i=0;i0;){var l=r;r=new Set,l.forEach((function(e){o.has(e)||(o.add(e),(n[e]||new Set).forEach((function(e){r.add(e)})))}))}return o.forEach((function(t){var n=s(e,t);n&&i.definitions.push(n)})),i}t.definitions.forEach((function(e){if(e.name){var t=new Set;i(e,t),n[e.name.value]=t}})),e.exports=t,e.exports.SkyboxDetails=a(t,"SkyboxDetails"),e.exports.SkyboxUrlDetails=a(t,"SkyboxUrlDetails"),e.exports.AnchorLocationDetails=a(t,"AnchorLocationDetails")},31595:e=>{var t={kind:"Document",definitions:[{kind:"FragmentDefinition",name:{kind:"Name",value:"PublicModelViews"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"Model"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"views"},arguments:[{kind:"Argument",name:{kind:"Name",value:"types"},value:{kind:"ListValue",values:[{kind:"StringValue",value:"matterport.model.default",block:!1},{kind:"StringValue",value:"matterport.model.layered",block:!1},{kind:"StringValue",value:"matterport.model.defurnished",block:!1},{kind:"StringValue",value:"matterport.user.view",block:!1},{kind:"StringValue",value:"matterport.user.insights",block:!1},{kind:"StringValue",value:"matterport.model.composite.compare",block:!1},{kind:"StringValue",value:"matterport.model.composite.site",block:!1}]}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"ViewDetails"},directives:[]}]}}]}},{kind:"FragmentDefinition",name:{kind:"Name",value:"ViewDetails"},typeCondition:{kind:"NamedType",name:{kind:"Name",value:"ModelView"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"type"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"name"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"enabled"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"created"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"modified"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"model"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"rootModelId"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"policies"},arguments:[{kind:"Argument",name:{kind:"Name",value:"names"},value:{kind:"ListValue",values:[{kind:"StringValue",value:"perm.spaces.details.manage",block:!1},{kind:"StringValue",value:"perm.spaces.details.view",block:!1},{kind:"StringValue",value:"perm.spaces.public.view",block:!1}]}}],directives:[{kind:"Directive",name:{kind:"Name",value:"onError"},arguments:[{kind:"Argument",name:{kind:"Name",value:"error"},value:{kind:"BooleanValue",value:!1}},{kind:"Argument",name:{kind:"Name",value:"null"},value:{kind:"BooleanValue",value:!0}}]}],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"name"},arguments:[],directives:[]},{kind:"Field",alias:{kind:"Name",value:"type"},name:{kind:"Name",value:"__typename"},arguments:[],directives:[]},{kind:"InlineFragment",typeCondition:{kind:"NamedType",name:{kind:"Name",value:"PolicyFlag"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"enabled"},arguments:[],directives:[]}]}},{kind:"InlineFragment",typeCondition:{kind:"NamedType",name:{kind:"Name",value:"PolicyOptions"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"options"},arguments:[],directives:[]}]}},{kind:"InlineFragment",typeCondition:{kind:"NamedType",name:{kind:"Name",value:"PolicyValue"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"value"},arguments:[],directives:[]}]}},{kind:"InlineFragment",typeCondition:{kind:"NamedType",name:{kind:"Name",value:"PolicyFeature"}},directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"availability"},arguments:[],directives:[]}]}}]}}]}},{kind:"Field",name:{kind:"Name",value:"layers"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"layer"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"created"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"modified"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"type"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"name"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"label"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"position"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"visible"},arguments:[],directives:[]}]}}]}}],loc:{start:0,end:1131}};t.loc.source={body:'# Subset of view types that are available to public users, i.e. safe for prefetch\nfragment PublicModelViews on Model {\n views(types: [\n "matterport.model.default",\n "matterport.model.layered",\n "matterport.model.defurnished",\n "matterport.user.view",\n "matterport.user.insights",\n "matterport.model.composite.compare",\n "matterport.model.composite.site",\n ]) {\n ...ViewDetails\n }\n}\n\nfragment ViewDetails on ModelView {\n id\n type\n name\n enabled\n created\n modified\n model {\n rootModelId\n policies (names: [\n # permissions on a view may differ from base model\n "perm.spaces.details.manage",\n "perm.spaces.details.view",\n "perm.spaces.public.view",\n ]) @onError(error: false, null: true) {\n name\n type: __typename\n ...on PolicyFlag {\n enabled\n }\n ...on PolicyOptions {\n options\n }\n ...on PolicyValue {\n value\n }\n ...on PolicyFeature {\n availability\n }\n }\n }\n layers {\n layer {\n id\n created\n modified\n type\n name\n label\n }\n position\n visible\n }\n}\n',name:"GraphQL request",locationOffset:{line:1,column:1}};function i(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var n=e.type;"NamedType"===n.kind&&t.add(n.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){i(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){i(e,t)})),e.definitions&&e.definitions.forEach((function(e){i(e,t)}))}var n={};function s(e,t){for(var i=0;i0;){var l=r;r=new Set,l.forEach((function(e){o.has(e)||(o.add(e),(n[e]||new Set).forEach((function(e){r.add(e)})))}))}return o.forEach((function(t){var n=s(e,t);n&&i.definitions.push(n)})),i}t.definitions.forEach((function(e){if(e.name){var t=new Set;i(e,t),n[e.name.value]=t}})),e.exports=t,e.exports.PublicModelViews=a(t,"PublicModelViews"),e.exports.ViewDetails=a(t,"ViewDetails")},43066:(e,t,i)=>{var n={kind:"Document",definitions:[{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetMergeDiff"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"viewId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"viewId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"mergeDiff"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"src"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"dest"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"typesModified"},arguments:[],directives:[]}]}}]}}]}},{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetViews"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"name"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"views"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"ViewDetails"},directives:[]}]}}]}}]}},{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetView"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"viewId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"viewId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"name"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"views"},arguments:[{kind:"Argument",name:{kind:"Name",value:"ids"},value:{kind:"ListValue",values:[{kind:"Variable",name:{kind:"Name",value:"viewId"}}]}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"ViewDetails"},directives:[]}]}}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"AddUserView"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"name"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"String"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"addView"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"name"},value:{kind:"Variable",name:{kind:"Name",value:"name"}}},{kind:"Argument",name:{kind:"Name",value:"userDataLayer"},value:{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"masks"},value:{kind:"ListValue",values:[{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"HighlightReel"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"Label"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"Mattertag"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"MeasurementPath"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"Note"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"ObjectAnnotation"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"OrderedList"}}]}]}}]}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"ViewDetails"},directives:[]}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"DeleteView"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"viewId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"deleteLayersIfOrphaned"}},type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"deleteView"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"viewId"},value:{kind:"Variable",name:{kind:"Name",value:"viewId"}}},{kind:"Argument",name:{kind:"Name",value:"deleteLayersIfOrphaned"},value:{kind:"Variable",name:{kind:"Name",value:"deleteLayersIfOrphaned"}}}],directives:[]}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"RenameView"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"viewId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"name"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"String"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"patchView"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"viewId"}}},{kind:"Argument",name:{kind:"Name",value:"name"},value:{kind:"Variable",name:{kind:"Name",value:"name"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"name"},arguments:[],directives:[]}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"SetViewEnabled"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"viewId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"enabled"}},type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"patchView"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"viewId"}}},{kind:"Argument",name:{kind:"Name",value:"enabled"},value:{kind:"Variable",name:{kind:"Name",value:"enabled"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"enabled"},arguments:[],directives:[]}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"ConvertRootViewToLayered"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"convertRootViewToLayered"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"ViewDetails"},directives:[]}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"ConvertRootViewToLegacy"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"convertRootViewToLegacy"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"deleteLayersIfOrphaned"},value:{kind:"BooleanValue",value:!1}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"ViewDetails"},directives:[]}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"MoveViewDataToLayer"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"viewId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"layerId"}},type:{kind:"NamedType",name:{kind:"Name",value:"ID"}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"viewSelections"}},type:{kind:"ListType",type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"LayeredViewSelection"}}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"moveViewData"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"viewId"}}},{kind:"Argument",name:{kind:"Name",value:"srcViewId"},value:{kind:"Variable",name:{kind:"Name",value:"viewId"}}},{kind:"Argument",name:{kind:"Name",value:"destLayerId"},value:{kind:"Variable",name:{kind:"Name",value:"layerId"}}},{kind:"Argument",name:{kind:"Name",value:"viewSelections"},value:{kind:"Variable",name:{kind:"Name",value:"viewSelections"}}}],directives:[]}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"DeleteFromView"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"viewId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"viewSelections"}},type:{kind:"ListType",type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"LayeredViewSelection"}}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"deleteFromView"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"viewId"}}},{kind:"Argument",name:{kind:"Name",value:"viewSelections"},value:{kind:"Variable",name:{kind:"Name",value:"viewSelections"}}}],directives:[]}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"DuplicateView"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"viewId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"name"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"String"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"enabled"}},type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"addView"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}},{kind:"Argument",name:{kind:"Name",value:"name"},value:{kind:"Variable",name:{kind:"Name",value:"name"}}},{kind:"Argument",name:{kind:"Name",value:"enabled"},value:{kind:"Variable",name:{kind:"Name",value:"enabled"}}},{kind:"Argument",name:{kind:"Name",value:"userDataLayer"},value:{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"masks"},value:{kind:"ListValue",values:[{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"HighlightReel"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"Label"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"Mattertag"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"MeasurementPath"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"Note"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"ObjectAnnotation"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"OrderedList"}}]}]}}]}},{kind:"Argument",name:{kind:"Name",value:"copyDataFrom"},value:{kind:"ListValue",values:[{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"viewId"},value:{kind:"Variable",name:{kind:"Name",value:"viewId"}}},{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"HighlightReel"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"viewId"},value:{kind:"Variable",name:{kind:"Name",value:"viewId"}}},{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"Label"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"viewId"},value:{kind:"Variable",name:{kind:"Name",value:"viewId"}}},{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"Mattertag"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"viewId"},value:{kind:"Variable",name:{kind:"Name",value:"viewId"}}},{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"MeasurementPath"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"viewId"},value:{kind:"Variable",name:{kind:"Name",value:"viewId"}}},{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"Note"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"viewId"},value:{kind:"Variable",name:{kind:"Name",value:"viewId"}}},{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"ObjectAnnotation"}}]},{kind:"ObjectValue",fields:[{kind:"ObjectField",name:{kind:"Name",value:"viewId"},value:{kind:"Variable",name:{kind:"Name",value:"viewId"}}},{kind:"ObjectField",name:{kind:"Name",value:"type"},value:{kind:"EnumValue",value:"OrderedList"}}]}]}},{kind:"Argument",name:{kind:"Name",value:"generateIds"},value:{kind:"BooleanValue",value:!0}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"ViewDetails"},directives:[]}]}}]}},{kind:"OperationDefinition",operation:"mutation",name:{kind:"Name",value:"PublishView"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"viewId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"mergeMutator"},arguments:[{kind:"Argument",name:{kind:"Name",value:"src"},value:{kind:"Variable",name:{kind:"Name",value:"viewId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"merge"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]}]}}]}}]}},{kind:"OperationDefinition",operation:"query",name:{kind:"Name",value:"GetSessionDiff"},variableDefinitions:[{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"modelId"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"ID"}}},directives:[]},{kind:"VariableDefinition",variable:{kind:"Variable",name:{kind:"Name",value:"includeLayers"}},type:{kind:"NonNullType",type:{kind:"NamedType",name:{kind:"Name",value:"Boolean"}}},directives:[]}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"model"},arguments:[{kind:"Argument",name:{kind:"Name",value:"id"},value:{kind:"Variable",name:{kind:"Name",value:"modelId"}}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",alias:{kind:"Name",value:"base"},name:{kind:"Name",value:"view"},arguments:[{kind:"Argument",name:{kind:"Name",value:"type"},value:{kind:"StringValue",value:"matterport.model.default",block:!1}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"model"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"labels"},arguments:[{kind:"Argument",name:{kind:"Name",value:"includeDisabled"},value:{kind:"BooleanValue",value:!0}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"LabelDetails"},directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"mattertags"},arguments:[{kind:"Argument",name:{kind:"Name",value:"includeDisabled"},value:{kind:"BooleanValue",value:!0}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"MattertagDetails"},directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"measurementPaths"},arguments:[{kind:"Argument",name:{kind:"Name",value:"includeDisabled"},value:{kind:"BooleanValue",value:!0}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"MeasurementDetails"},directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"orderedLists"},arguments:[{kind:"Argument",name:{kind:"Name",value:"ids"},value:{kind:"ListValue",values:[]}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"OrderedListDetails"},directives:[]}]}}]}}]}},{kind:"Field",alias:{kind:"Name",value:"view"},name:{kind:"Name",value:"view"},arguments:[{kind:"Argument",name:{kind:"Name",value:"type"},value:{kind:"StringValue",value:"matterport.workshop.session",block:!1}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"model"},arguments:[],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"labels"},arguments:[{kind:"Argument",name:{kind:"Name",value:"includeDisabled"},value:{kind:"BooleanValue",value:!0}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"modified"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"mattertags"},arguments:[{kind:"Argument",name:{kind:"Name",value:"includeDisabled"},value:{kind:"BooleanValue",value:!0}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"modified"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"measurementPaths"},arguments:[{kind:"Argument",name:{kind:"Name",value:"includeDisabled"},value:{kind:"BooleanValue",value:!0}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"Field",name:{kind:"Name",value:"id"},arguments:[],directives:[]},{kind:"Field",name:{kind:"Name",value:"modified"},arguments:[],directives:[]}]}},{kind:"Field",name:{kind:"Name",value:"orderedLists"},arguments:[{kind:"Argument",name:{kind:"Name",value:"ids"},value:{kind:"ListValue",values:[]}}],directives:[],selectionSet:{kind:"SelectionSet",selections:[{kind:"FragmentSpread",name:{kind:"Name",value:"OrderedListDetails"},directives:[]}]}}]}}]}}]}}]}}],loc:{start:0,end:4203}};n.loc.source={body:'#import "./labels.gql"\n#import "./lists.gql"\n#import "./mattertags.gql"\n#import "./measurements.gql"\n#import "./view-fragments.gql"\n\n# Gets the data types that have changed between a view and the base model\nquery GetMergeDiff($viewId: ID!) {\n model(id: $viewId) {\n id\n mergeDiff {\n src\n dest\n typesModified\n }\n }\n}\n\n# Get available views for a model\nquery GetViews($modelId: ID!) {\n model(id: $modelId) {\n id\n name\n views {\n ...ViewDetails\n }\n }\n}\n\n# Get one view\nquery GetView($viewId: ID!) {\n model(id: $viewId) {\n id\n name\n views(ids: [$viewId]) {\n ...ViewDetails\n }\n }\n}\n\n# Adds a new User View using the base Model ID.\n# By default, it masks view-based data layer items\nmutation AddUserView($modelId: ID!, $name: String!) {\n addView(\n id: $modelId,\n name: $name,\n userDataLayer: {\n masks: [\n { type: HighlightReel },\n { type: Label },\n { type: Mattertag },\n { type: MeasurementPath },\n { type: Note },\n { type: ObjectAnnotation },\n { type: OrderedList },\n ]\n }\n ) {\n ...ViewDetails\n }\n}\n\n# Deletes a View using the base Model ID and the viewId to delete\n# deleteLayersIfOphaned: true will delete the Common layers if orphaned,\n# dedicated layers are deleted in all cases?\nmutation DeleteView($modelId: ID!, $viewId: ID!, $deleteLayersIfOrphaned: Boolean) {\n deleteView(id: $modelId, viewId: $viewId, deleteLayersIfOrphaned: $deleteLayersIfOrphaned)\n}\n\nmutation RenameView($viewId: ID!, $name: String!) {\n patchView(id: $viewId, name: $name) {\n name\n }\n}\n\nmutation SetViewEnabled($viewId: ID!, $enabled: Boolean) {\n patchView(id: $viewId, enabled: $enabled) {\n enabled\n }\n}\n\nmutation ConvertRootViewToLayered($modelId: ID!) {\n convertRootViewToLayered(id: $modelId) {\n ...ViewDetails\n }\n}\n\nmutation ConvertRootViewToLegacy($modelId: ID!) {\n convertRootViewToLegacy(id: $modelId, deleteLayersIfOrphaned: false) {\n ...ViewDetails\n }\n}\n\nmutation MoveViewDataToLayer($viewId: ID!, $layerId: ID, $viewSelections: [LayeredViewSelection!]) {\n moveViewData(\n id: $viewId\n srcViewId: $viewId\n destLayerId: $layerId\n viewSelections: $viewSelections\n )\n}\n\n# Deletes items from view\nmutation DeleteFromView($viewId: ID!, $viewSelections: [LayeredViewSelection!]) {\n deleteFromView(id: $viewId, viewSelections: $viewSelections)\n}\n\nmutation DuplicateView($modelId: ID!, $viewId: ID!, $name: String!, $enabled: Boolean) {\n addView(\n id: $modelId\n name: $name\n enabled: $enabled\n userDataLayer: {\n masks: [\n { type: HighlightReel },\n { type: Label },\n { type: Mattertag },\n { type: MeasurementPath },\n { type: Note },\n { type: ObjectAnnotation },\n { type: OrderedList },\n ]\n },\n copyDataFrom: [\n { viewId: $viewId, type: HighlightReel },\n { viewId: $viewId, type: Label },\n { viewId: $viewId, type: Mattertag },\n { viewId: $viewId, type: MeasurementPath },\n { viewId: $viewId, type: Note },\n { viewId: $viewId, type: ObjectAnnotation },\n { viewId: $viewId, type: OrderedList },\n ]\n generateIds: true,\n ) {\n ...ViewDetails\n }\n}\n\n# Merges the given view into the base model view\nmutation PublishView($viewId: ID!) {\n mergeMutator(src: $viewId) {\n merge {\n id\n }\n }\n}\n\n# Gets the data that has changed between the Workshop session and base model\nquery GetSessionDiff($modelId: ID!, $includeLayers: Boolean!) {\n model(id: $modelId) {\n base: view(type: "matterport.model.default") {\n id\n model {\n labels(includeDisabled: true) { ...LabelDetails }\n mattertags(includeDisabled: true) { ...MattertagDetails }\n measurementPaths(includeDisabled: true) { ...MeasurementDetails }\n orderedLists(ids: []) { ...OrderedListDetails }\n }\n }\n view: view(type: "matterport.workshop.session") {\n id\n model {\n labels(includeDisabled: true) { id modified }\n mattertags(includeDisabled: true) { id modified }\n measurementPaths(includeDisabled: true) { id modified }\n orderedLists(ids: []) { ...OrderedListDetails }\n }\n }\n }\n}\n',name:"GraphQL request",locationOffset:{line:1,column:1}};var s={};function a(e){return e.filter((function(e){if("FragmentDefinition"!==e.kind)return!0;var t=e.name.value;return!s[t]&&(s[t]=!0,!0)}))}function o(e,t){if("FragmentSpread"===e.kind)t.add(e.name.value);else if("VariableDefinition"===e.kind){var i=e.type;"NamedType"===i.kind&&t.add(i.name.value)}e.selectionSet&&e.selectionSet.selections.forEach((function(e){o(e,t)})),e.variableDefinitions&&e.variableDefinitions.forEach((function(e){o(e,t)})),e.definitions&&e.definitions.forEach((function(e){o(e,t)}))}n.definitions=n.definitions.concat(a(i(96069).definitions)),n.definitions=n.definitions.concat(a(i(92711).definitions)),n.definitions=n.definitions.concat(a(i(27140).definitions)),n.definitions=n.definitions.concat(a(i(64639).definitions)),n.definitions=n.definitions.concat(a(i(31595).definitions));var r={};function l(e,t){for(var i=0;i0;){var o=a;a=new Set,o.forEach((function(e){s.has(e)||(s.add(e),(r[e]||new Set).forEach((function(e){a.add(e)})))}))}return s.forEach((function(t){var n=l(e,t);n&&i.definitions.push(n)})),i}n.definitions.forEach((function(e){if(e.name){var t=new Set;o(e,t),r[e.name.value]=t}})),e.exports=n,e.exports.GetMergeDiff=d(n,"GetMergeDiff"),e.exports.GetViews=d(n,"GetViews"),e.exports.GetView=d(n,"GetView"),e.exports.AddUserView=d(n,"AddUserView"),e.exports.DeleteView=d(n,"DeleteView"),e.exports.RenameView=d(n,"RenameView"),e.exports.SetViewEnabled=d(n,"SetViewEnabled"),e.exports.ConvertRootViewToLayered=d(n,"ConvertRootViewToLayered"),e.exports.ConvertRootViewToLegacy=d(n,"ConvertRootViewToLegacy"),e.exports.MoveViewDataToLayer=d(n,"MoveViewDataToLayer"),e.exports.DeleteFromView=d(n,"DeleteFromView"),e.exports.DuplicateView=d(n,"DuplicateView"),e.exports.PublishView=d(n,"PublishView"),e.exports.GetSessionDiff=d(n,"GetSessionDiff")},27503:()=>{},26845:()=>{},34940:()=>{},19178:()=>{},55610:(e,t,i)=>{"use strict";var n=i(25331),s=i(84404),a=i(68920),o=(i(47892),i(97084)),r=i(14614),l=i(30786),d=i(45987),c=i(4345),u=i(9139),h=i(93136),m=i(82748),p=i(27200),E=i(90082),S=i(25316),O=i(87965),g=i(26072),_=i(66726),T=i(3249),A=i(71687),v=i(88090),f=i(3073),N=i(32126),I=i(95386),L=i(47840),R=i(99625);const y=new u.Vy("showcase-prefetch");async function b(e){var t,i,n,s,a,o;const r={initialViewId:e.initialModelSid,rootModelId:e.initialModelSid,caches:[]};let l=R.G.PRELOAD;const d=e.overrideParams.prefetch;d&&Object.values(R.G).includes(d)&&(l=d);const c=new L.B({baseUrl:e.baseUrl,prefetchPolicy:l,initialData:I.P.getQuery("GetRootPrefetch"),query:f.GetRootPrefetch,variables:{modelId:e.initialModelSid,view:"root",sweepTags:e.inWorkshop?null:void 0},mdsContext:e.mdsContext,anonymous:!0}),u=new L.B({baseUrl:e.baseUrl,prefetchPolicy:l,initialData:I.P.getQuery("GetModelPrefetch"),query:f.GetModelPrefetch,variables:{modelId:e.initialModelSid,view:"default",sweepTags:e.inWorkshop?null:void 0},mdsContext:e.mdsContext,anonymous:!0}),h=new L.B({baseUrl:e.baseUrl,prefetchPolicy:l,initialData:I.P.getQuery("GetRoomClassifications"),query:N.GetRoomClassifications,variables:{},mdsContext:e.mdsContext,anonymous:!0});if(r.caches.push(c,u,h),l===R.G.NONE)return r;const m=await Promise.all([c.initialLoadPromise,u.initialLoadPromise,h.initialLoadPromise]);return r.rootModelId=(null===(n=null===(i=null===(t=m[0])||void 0===t?void 0:t.data)||void 0===i?void 0:i.model)||void 0===n?void 0:n.id)||r.rootModelId,r.initialViewId=(null===(o=null===(a=null===(s=m[1])||void 0===s?void 0:s.data)||void 0===a?void 0:a.model)||void 0===o?void 0:o.id)||r.initialViewId,y.debug({result:r,data:m}),r}var D=i(94165),M=i(71224),P=i(55057);const k=new u.Vy("getSdkConfig");function w(e=!1,t="26.2.1_webgl-242-gba314d5588"){const i={client:`${window.location.origin}${window.location.pathname}showcase-sdk/client/${t}/sdk-client.js`,sandbox:`${window.location.origin}${window.location.pathname}showcase-sdk/sandbox/${t}/sandbox.html`,interfaces:[`${window.location.origin}${window.location.pathname}showcase-sdk/interface/${t}/sdk-interface.js`]};return e&&i.interfaces.push(`showcase-sdk/interface/${t}/edit-interface.js`),i}var C=i(47737),x=i(65256),H=i(21875),U=i(19702),F=i(66846),G=i(2993),V=i(99583),W=i(73566),B=i(10711);const j=new u.Vy("AB");class K{constructor(e){this.values={};for(const t in e){const i=e[t];if(i&&i.ab)try{this.values[t]=z(i.ab)}catch(e){j.warn(`Skipping key ${t}, could not pick: ${e}`)}}}get(e){return this.values[e]}serialize(){return Object.keys(this.values).map((e=>`${e}:${this.values[e]}`))}}function z(e){if(0===e.length)throw Error("A/B cannot choose from an empty choice array");let t=0;for(const i of e){if(void 0===i.value||void 0===i.weight||i.weight<0)throw Error(`Malformed AB choice: ${i}`);t+=i.weight}const i=Math.random()*t;let n=0;for(const t of e)if(n+=t.weight,i<=n)return t.value}var Y=i(90572),$=i(47299),X=i(75522),Q=i(28475),q=i(13767),Z=i(85204),J=i(38039),ee=i(23500),te=i(57811),ie=i(60152),ne=i(80303),se=i(76894),ae=i(90160),oe=i(596);var re=i(8333),le=i(46793),de=i(9997),ce=i(20563),ue=i(80519),he=i(9114),me=i(26482),pe=i(23338),Ee=i(23339),Se=i(57447),Oe=i(3645),ge=i(31863);var _e=i(60818);var Te=i(35404);async function Ae({urlValues:e,settingsData:t,flags:i,loggedIn:n,inWorkshop:s,hasPolicy:a,domainDenylist:o}){const r=null!=(0,pe.un)(),l=e[Oe.x$.enabled],d=i.has(Oe.jg)?"0"!==l:"1"===l,c=a(Oe.td)||"1"===e[Oe.x$.forcePolicy],u=!n,h=t.tryGetSetting(Te.qu,!1),m=e[Oe.x$.forceReferrer]||document.referrer,E=await async function(e,t){if(!e)return!0;if(!window.crypto||!window.crypto.subtle)return!1;const i=new URL(e),n=(0,_.SE)(i.hostname),s=await(0,ge.e8)(n);return!t.includes(s)}(m,o);_e.r.debug("referrer eligible: ",E.toString());const S=!r&&!s,O=function(e){return e.getOverrideParam("lang",(0,p.Ul)())}(t).startsWith("en"),g=d&&!h&&S&&O&&u;return{popupAllowed:g&&c&&E,bannerAllowed:g}}var ve=i(26059),fe=i(87419),Ne=i(70046),Ie=i(53282),Le=i(97171);var Re=i(31051),ye=i(85281),be=i(42390),De=i(30278);function Me(e){const t={width:"360",maxwidth:"360",maxheight:"640",url:e,native:"true",autoplay:"true"};if(e.includes("flickr")||e.includes("flic.kr")){const e=Math.max(window.screen.height,window.screen.width);t.maxwidth=t.maxheight=t.width=`${e}`}return{queryParams:new URLSearchParams(t),headers:{responseType:"json"}}}const Pe=/^https:\/\/www.instagram.com/;const ke=/^https:\/\/www.facebook.com/,we=/^https:\/\/www.facebook.com\/(.*\/)?(posts\/|activity\/|photo\.php|photos\/|permalink\.php|media\/set|questions\/|notes\/)/,Ce=/^https:\/\/www.facebook.com\/(video\.php|.*\/videos\/)/;const xe=[{testUrl:function(e){return Pe.test(e)},request:async function(e,t,i,n){const{queryParams:s,headers:a}=Me(e);i&&n&&s.append("access_token",`${i}|${n}`);const o=new URL(`https://graph.facebook.com/v10.0/instagram_oembed?${s.toString()}`);try{return await t.get(o.toString(),a)}catch(e){const t=e;throw new De.$A(t.error.message,t.status_code,t.error.type)}},apiKeys:["instagramAppId","instagramClientToken"]},{testUrl:function(e){return ke.test(e)},request:async function(e,t,i,n){const{queryParams:s,headers:a}=Me(e);i&&n&&s.append("access_token",`${i}|${n}`);const o=function(e){return we.test(e)?"https://graph.facebook.com/v10.0/oembed_post":Ce.test(e)?"https://graph.facebook.com/v10.0/oembed_video":"https://graph.facebook.com/v10.0/oembed_page"}(e),r=new URL(`${o}?${s.toString()}`);try{return await t.get(r.toString(),a)}catch(e){const t=e;throw new De.$A(t.error.message,t.status_code,t.error.type)}},apiKeys:["instagramAppId","instagramClientToken"]},{testUrl:()=>!0,request:async function(e,t,i){const{queryParams:n,headers:s}=Me(e);i&&n.append("key",i);const a=new URL(`${window.location.origin}/oembed?${n.toString()}`);try{return await t.get(a.toString(),s)}catch(e){const t=e;throw new De.$A(t.error_message,t.status_code,t.type)}},apiKeys:["embedlyKey"]}];var He=i(23716);const Ue={[He.K.GoogleMaps]:function(e,t){return e.thumbnail_url&&(e.thumbnail_url=`${e.thumbnail_url}&key=${t.googleMapsApiKey}`),e}};async function Fe(e,t,i){const n=i.embedlyKey;if(n){const i=function(e,t){if(e.includes("i.embed.ly")||e.startsWith("blob:"))return e;const i=Math.max(window.screen.height,window.screen.width),n=`&url=${encodeURIComponent(e)}&width=${i}&height=${i}`;return`${window.location.origin}/1/display/resize?key=${t}${n}`}(e,n);return t.get(i,{responseType:"arraybuffer"}).then((e=>{return t=e,new Promise((e=>{t||Promise.resolve(null);const i=t=>{const i=t.target,n={width:i.naturalWidth,height:i.naturalHeight,url:o,type:be.n.PHOTO,version:""};e(n)},n=new Uint8Array(t),s=new Blob([n]),a=new Image;a.addEventListener("load",(e=>i(e)));const o=URL.createObjectURL(s);a.src=o}));var t}))}return null}const Ge={[He.K.Behance]:!1,[He.K.FaceBook]:!1,[He.K.GoogleMaps]:"googleMapsApiKey",[He.K.Instagram]:["instagramAppId","instagramClientToken"],[He.K.LinkedIn]:!1,[He.K.MixCloud]:!1,[He.K.Pinterest]:!1,[He.K.Reddit]:!0,[He.K.TikTok]:!0,[He.K.Twitter]:!0,[He.K.Twitch]:!1};class Ve{constructor(e,t){this.cache={},this.queue=e,this.apiKeys=t}async getOEmbedData(e){const t=this.cache[e];if(t&&t.type!==be.n.LINK)return Promise.resolve(t);let i,n;try{n=await function(e,t,i){for(const n of xe)if(n.testUrl(e)){const s=n.apiKeys.map((e=>i[e]));return n.request(e,t,...s)}throw new De.i1(e)}(e,this.queue,this.apiKeys)}catch(e){if(![401,404,501].includes(e.status))throw e;i=e}if(!n||n.type===be.n.PHOTO){const t=(null==n?void 0:n.url)||e;try{const i=await Fe(t,this.queue,this.apiKeys);if(i)return this.cache[e]=i,i}catch(e){if(!n)throw i||e}}if(!n)throw i||De.$A;return this.cache[e]=n,this.validate(n)}clearCache(){this.cache={}}validate(e){if(!((e,t)=>{const i=void 0===e.provider_name?void 0:Ge[e.provider_name.toLowerCase()];return"string"==typeof i?!!t[i]:Array.isArray(i)?i.every((e=>!!t[e])):!1!==i})(e,this.apiKeys))throw new De.aI(e.provider_name);if(e.type===be.n.LINK)throw new De.Dm(e.provider_name);return function(e,t){if(void 0!==e.provider_name){const i=Ue[e.provider_name.toLowerCase()];if(i)return i(e,t)}return e}(e,this.apiKeys)}}var We=i(33156),Be=i(49953),je=i(87766),Ke=i(91779),ze=i(40186),Ye=i(7584),$e=i(62876);const Xe="spaces.aws.twinmaker.sdk.access",Qe=new Map([["iot-twinmaker",Xe]]);var qe=i(52030),Ze=i(63282),Je=i.n(Ze),et=i(68182),tt=i.n(et),it=i(79680);var nt=i(65882);const st="features/photos_hlr_roomnames_disabled";var at=i(37518),ot=i(73094),rt=i(97831);const lt=new u.Vy("showcase");class dt{constructor(e,t={},i=!1){var n;this.inWorkshop=e,this.editModePreferred=i,this.bindings=[],this.storeQueue=new o.L3,this.apiQueue=new o.L3,this.analyticsQueue=new o.L3({concurrency:1}),this.forceLogin=!1,this.openingTool=null,this.uiLoading=Promise.resolve(),this.prefetchCaches=[],this.sceneLoader=new Re.LazyLoader,this.modulesLoadedPromise=new a.i,this.jsonSchemaValidator=function(){const e=new(Je())({strict:!1});return tt()(e),{addSchema(t){e.addSchema(t)},validate:(t,i)=>e.validate(t,i),getSchema:t=>e.getSchema(t),prettify:(e,t)=>(0,it.G)(e,t)}}(),this.stopTourHook=async e=>{const t=e.market.tryGetData(H.R);if(t&&t.tourPlaying){const t=await e.getModuleBySymbol(A.Xf);await t.stopTour(),await(0,h.c)(10)}},this.settingOverrides=Object.assign({},t),this.assetBasePath=this.settingOverrides.assetBasePath=function(e){e=e.replace(/\/*$/,"/");const t=new URL(e,document.baseURI),i=[/^https:\/\/static\.matterport\.com(:[0-9]+)?\//,/^https:\/\/static\.matterportvr\.cn(:[0-9]+)?\//,/^https:\/\/[^\/]+\.awsstatic\.com\/([^?#]+\/)?matterport\/.*/,/^http:\/\/(localhost|127\.0\.0\.1)(:[0-9]+)?\/.*/].find((e=>t.href.match(e)))?t.origin:document.baseURI;return new URL(t.pathname,i).toString()}(null!==(n=this.settingOverrides.assetBasePath)&&void 0!==n?n:"./");const{container:s,overrideParams:r=(0,m.EN)()}=this.settingOverrides;this.overrideParams=r,this.quickstart="1"===r.qs||void 0!==r.note||void 0!==r.tag;const l=r.applicationKey||t.applicationKey;(0,pe.pN)(l||null),this.apiHost=((e,t)=>{const i=e.apiHost||t.apiHost;if(i){const e=(0,_.zh)(i);if(e)return e}return window.location.origin})(r,this.settingOverrides),this.oEmbedDeferred=new a.i,this.oEmbedConsumer=this.oEmbedDeferred.nativePromise(),this.apiHost!==window.location.origin&&(this.settingOverrides.apiHost=this.apiHost),this.container=s||document.body,this.modelUrls=(0,_.$j)(r.m||r.model,this.apiHost),this.initialModelSid=this.modelUrls.sid,this.mdsContext=new he._(this.initialModelSid),this.mdsContext.simulateApiOutage="1"===r.simulateApiOutage?R.u.TIMEOUT:R.u.NONE,this.mdsContext.anonymousHeaderEnabled=!e}getManifest(){return[{type:A.nu,promise:()=>Promise.resolve().then(i.bind(i,43601))},{type:v.XT,promise:()=>Promise.resolve().then(i.bind(i,83111))},{type:v.uH,promise:()=>Promise.resolve().then(i.bind(i,33424))},{type:A.Ll,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,15778))},{type:E.WJ,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,3801))},{type:E.ZF,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,92352))},{type:A.aF,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,33183))},{type:E.S1,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,11889))},{type:v.q0,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,958))},{type:A.Vc,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,47163))},{type:A.qL,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,60379))},{type:A.bj,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,53391))},{type:A.vj,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,29254))},{type:A.sA,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,53949))},{type:A.di,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,53084))},{type:A.Pn,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,52540))},{type:A.gS,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,21722))},{type:A.Wh,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,35872))},{type:A.$c,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,35751))},{type:A.M7,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,64355))},{type:A.CE,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,15045))},{type:A.mL,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,11964))},{type:v.bW,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,99346))},{type:v._r,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,15318))},{type:A.jh,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,40739))},{type:A.TV,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,63257))},{type:A.az,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,86515))},{type:A.Uu,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,58424))},{type:A.SH,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,21129))},{type:A.T9,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,54725))},{type:A.Z7,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,71927))},{type:A.UN,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,16821))},{type:A.fO,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,59906))},{type:A.vM,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,45667))},{type:A.lf,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,99460))},{type:A.N4,promise:()=>i.e(9504).then(i.bind(i,69504))},{type:A.JY,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,87287))},{type:A.Qm,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(8258),i.e(4892),i.e(235),i.e(1470),i.e(5637),i.e(2944),i.e(9829),i.e(1550),i.e(5385)]).then(i.bind(i,1526))},{type:A.iV,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,98217))},{type:A.SD,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,6002))},{type:A.yT,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,30794))},{type:A.HX,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,43440))},{type:A.kM,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,53028))},{type:A.N7,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,18136))},{type:A.X7,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,79109))},{type:A.TY,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,40742))},{type:A.X$,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,93224))},{type:A.QW,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,59805))},{type:A.PD,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,69325))},{type:A.pR,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,38208))},{type:A.zj,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,89500))},{type:A.et,promise:()=>i.e(3907).then(i.bind(i,93907))},{type:v.ur,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,13070))},{type:v.T6,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,6025))},{type:v.K4,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,9120))},{type:A.Kv,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,12014))},{type:A.GR,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,71539))},{type:v.L8,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,29228))},{type:A.PM,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,35396))},{type:A.Ne,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,65051))},{type:A._q,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,69583))},{type:A.$q,promise:()=>Promise.all([i.e(8893),i.e(6180),i.e(2026),i.e(8287),i.e(1916),i.e(4892),i.e(7392),i.e(5056),i.e(1550),i.e(3443),i.e(9114)]).then(i.bind(i,67113))},{type:A.qD,promise:()=>Promise.all([i.e(8893),i.e(2026),i.e(1496)]).then(i.bind(i,91496))},{type:A.Et,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,92899))},{type:A.qy,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,96304))},{type:A.rA,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,12797))},{type:A.ep,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,13230))},{type:A.zX,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,33694))},{type:A._v,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,62592))},{type:A.Qj,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,49701))},{type:D.r,promise:()=>i.e(1884).then(i.bind(i,51884))},{type:A.yR,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,24679))},{type:A.Xx,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,11086))},{type:A.ZF,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,40266))},{type:A.N9,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,72100))},{type:A.kd,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,12251))},{type:A.TN,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,51977))},{type:A.gy,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,99657))},{type:A.cy,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,79747))},{type:A.Tx,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,41418))},{type:v.bw,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,10689))},{type:A.kG,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,43036))},{type:A.Yj,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,5337))},{type:A.PJ,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,78854))},{type:A.J$,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,31403))},{type:A.AO,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,64619))},{type:A.Np,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,67725))},{type:A.gk,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,47104))},{type:A.LG,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,64382))},{type:A.f0,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,89499))},{type:A.co,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,26519))},{type:A.wY,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,14288))},{type:A.lN,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,83869))},{type:A.eE,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(2026),i.e(1299),i.e(8258),i.e(235),i.e(7392),i.e(237),i.e(5090),i.e(5637),i.e(6888),i.e(777)]).then(i.bind(i,49216))},{type:A.Yr,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(2026),i.e(1299),i.e(8258),i.e(235),i.e(7392),i.e(237),i.e(5090),i.e(5637),i.e(6888),i.e(777)]).then(i.bind(i,83681))},{type:A.aU,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(2026),i.e(1299),i.e(8258),i.e(235),i.e(7392),i.e(237),i.e(5090),i.e(5637),i.e(6888),i.e(777)]).then(i.bind(i,35460))},{type:A.FI,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(2026),i.e(1299),i.e(8258),i.e(235),i.e(7392),i.e(237),i.e(5090),i.e(5637),i.e(6888),i.e(777)]).then(i.bind(i,1046))},{type:A.zy,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(2026),i.e(1299),i.e(8258),i.e(235),i.e(7392),i.e(237),i.e(5090),i.e(5637),i.e(6888),i.e(777)]).then(i.bind(i,8706))},{type:A.QS,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(2026),i.e(1299),i.e(8258),i.e(235),i.e(7392),i.e(237),i.e(5090),i.e(5637),i.e(6888),i.e(777)]).then(i.bind(i,31993))},{type:A.He,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(2026),i.e(1299),i.e(8258),i.e(235),i.e(7392),i.e(237),i.e(5090),i.e(5637),i.e(6888),i.e(777)]).then(i.bind(i,33062))},{type:A.se,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(1299),i.e(6574),i.e(8258),i.e(365),i.e(2944),i.e(3443),i.e(7475)]).then(i.bind(i,20692))},{type:A.Xf,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(2026),i.e(1299),i.e(8258),i.e(235),i.e(7392),i.e(237),i.e(5090),i.e(5637),i.e(6888),i.e(777)]).then(i.bind(i,79769))},{type:A.XQ,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(2026),i.e(1299),i.e(8258),i.e(235),i.e(7392),i.e(237),i.e(5090),i.e(5637),i.e(6888),i.e(777)]).then(i.bind(i,85092))},{type:A.tQ,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(2026),i.e(1299),i.e(8258),i.e(235),i.e(7392),i.e(237),i.e(5090),i.e(5637),i.e(6888),i.e(777)]).then(i.bind(i,76518))},{type:A.YC,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(2026),i.e(1299),i.e(8258),i.e(235),i.e(7392),i.e(237),i.e(5090),i.e(5637),i.e(6888),i.e(777)]).then(i.bind(i,48248))},{type:A.Vu,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(2026),i.e(1299),i.e(8258),i.e(235),i.e(7392),i.e(237),i.e(5090),i.e(5637),i.e(6888),i.e(777)]).then(i.bind(i,33930))},{type:A.rz,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(2026),i.e(1299),i.e(8258),i.e(235),i.e(7392),i.e(237),i.e(5090),i.e(5637),i.e(6888),i.e(777)]).then(i.bind(i,28391))},{type:A.A5,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(2026),i.e(1299),i.e(8258),i.e(235),i.e(7392),i.e(237),i.e(5090),i.e(5637),i.e(6888),i.e(777)]).then(i.bind(i,28574))},{type:A.JN,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(2026),i.e(1299),i.e(8258),i.e(235),i.e(7392),i.e(237),i.e(5090),i.e(5637),i.e(6888),i.e(777)]).then(i.bind(i,16115))},{type:A.uq,promise:()=>Promise.all([i.e(8893),i.e(654),i.e(7391),i.e(2026),i.e(1299),i.e(8258),i.e(235),i.e(7392),i.e(237),i.e(5090),i.e(5637),i.e(6888),i.e(777)]).then(i.bind(i,28706))},{type:A.Fn,promise:()=>i.e(5976).then(i.bind(i,18648))},{type:A.xV,promise:()=>Promise.all([i.e(654),i.e(2026),i.e(6574),i.e(8044)]).then(i.bind(i,33548))},{type:A.sc,promise:()=>Promise.all([i.e(654),i.e(2026),i.e(6574),i.e(8044)]).then(i.bind(i,78023))},{type:A.KT,promise:()=>Promise.all([i.e(5e3),i.e(7209),i.e(7504),i.e(7177)]).then(i.bind(i,87177))},{type:A.Gw,promise:()=>Promise.all([i.e(6180),i.e(235),i.e(7587)]).then(i.bind(i,53837))}]}getAppPhases(e){return{[r.Jj.UNINITIALIZED]:[],[r.Jj.WAITING]:[(async()=>{await e.getModuleBySymbol(v.XT)})(),(async()=>{{const t=await e.getModuleBySymbol(A.qL),i=(await t.getApi().user).getFlags("showcase/"),n=(0,m.P3)("earlyLoadingPlugins");if("0"===n)return;("1"===n||i.has("features/early-loading-plugins"))&&(await e.getModuleBySymbol(A.N4),await e.getModuleBySymbol(A.lf))}})()],[r.Jj.LOADING]:[(async()=>(await e.getModuleBySymbol(v.XT)).waitForPlaying)()],[r.Jj.STARTING]:[(async()=>(await e.getModuleBySymbol(v.T6)).waitForFirstRender)(),(async()=>(await e.getModuleBySymbol(A.fO)).waitForData)(),this.waitForSplatModuleIfNecessary()],[r.Jj.PLAYING]:[(async()=>(await e.getModuleBySymbol(v.T6)).waitForFlyin)()],[r.Jj.ERROR]:[(async()=>{const t=(await e.getModuleBySymbol(E.WJ)).data;await(0,l.UV)(t,(e=>null!==e.error))})()]}}stop(){this.engineTick&&this.engineTick.stop()}setError(e){this.stop(),this.engine.market.waitForData(r.zH).then((t=>{t.error=e,t.commit()}))}async load(e,t){e.diContainer.get(s.L0).resolve(),this.engine=e;const i=await this.loadAlwaysLoadModules(t);if(!t.coldStart)return void(this.uiLoading=this.loadUI(i,!0));const{editMode:n,ab:a}=await this.loadWaitingModules(i);try{await e.waitForLoadingModules(void 0,[A.Vu])}catch(t){this.setError(t),e.tick()}await this.loadPreplayModules(i,n),await(await e.getModuleBySymbol(v.XT)).waitForPlaying,await this.loadHighPriorityPlayModules(i,n),await this.engine.waitForLoadingModules(),await this.loadLowPriorityPlayModules(a),await this.engine.waitForLoadingModules(),this.modulesLoadedPromise.resolve()}async loadAlwaysLoadModules(e){this.engine.loadModuleBySymbol({type:E.WJ,config:{tasks:this.getAppPhases(this.engine)}});const t=await this.engine.loadModuleBySymbol({type:E.ZF,config:{useGUI:!0,queryScope:this.container.getRootNode(),overrideParams:this.overrideParams}});this.loadAnalytics();const n=(await this.engine.loadModuleBySymbol({type:A.qL,config:{baseUrl:this.modelUrls.urlBase,apiQueue:this.apiQueue,storeQueue:this.storeQueue,preloadConfig:"showcase",mdsContext:this.mdsContext}})).getApi(),s=await n.user,a=this.setInitialSettings(s,t,e);return this.engine.getModuleBySymbol(E.WJ).then((t=>{t.updateActiveApp(r.lg.SHOWCASE),e.coldStart||this.engine.broadcast(new d.Fj(r.lg.SHOWCASE))})),this.engine.market.waitForData(r.zH).then((e=>{const t=this.overrideParams.oops;t&&e.phase!==r.Jj.ERROR&&(e.phase=r.Jj.ERROR);const i=async()=>{if(e.phase===r.Jj.ERROR){const i=e.error,n=await this.engine.getModuleBySymbol(v.bW);throw t?n.showError(t):i instanceof ce.X5?n.showError(M.b.MODEL_ARCHIVED):i instanceof ce.Q8?n.showError(M.b.MODEL_COMPLIANCE):i instanceof ce.a_?n.showError(M.b.MODEL_DELETED):i instanceof ce.GI?n.showError(M.b.MODEL_FAILED):i instanceof ce.cC?n.showError(M.b.MODEL_PENDING):i instanceof ce.Wz?n.showError(M.b.MODEL_PROCESSING):i instanceof B.s?n.showError(M.b.WEBGL_UNSUPPORTED):i instanceof B.y?n.showError(M.b.WEBGL_GENERIC):n.showError(M.b.GENERIC),i}};e.onChanged(i),i()})),this.bindings.push((0,Ne.$2)({messageBus:this.engine.msgBus}),function(e){const t=[];return t.push(new Ne.GL({symbol:Le.D.ModelMesh,callback:()=>Promise.all([i.e(8893),i.e(1299),i.e(8287),i.e(1916),i.e(4892),i.e(5056),i.e(3202),i.e(2276)]).then(i.bind(i,86465)).then((t=>t.default(e.engine)))})),e.urlValues.debug&&t.push(new Ne.GL({symbol:Le.D.Navigation,callback:()=>Promise.all([i.e(2026),i.e(1299),i.e(5090),i.e(9829),i.e(3202),i.e(3745)]).then(i.bind(i,50857)).then((t=>t.default(e.engine)))}),new Ne.GL({symbol:Le.D.Octree,callback:()=>Promise.all([i.e(2026),i.e(1299),i.e(5090),i.e(9829),i.e(3202),i.e(3745)]).then(i.bind(i,46317)).then((t=>t.default(e.engine)))}),new Ne.GL({symbol:Le.D.PanoTiles,callback:()=>Promise.all([i.e(2026),i.e(1299),i.e(5090),i.e(9829),i.e(3202),i.e(3745)]).then(i.bind(i,2942)).then((t=>t.default(e.engine)))}),new Ne.GL({symbol:Le.D.Raycaster,callback:()=>Promise.all([i.e(2026),i.e(1299),i.e(5090),i.e(9829),i.e(3202),i.e(3745)]).then(i.bind(i,12655)).then((t=>t.default(e.engine)))}),new Ne.GL({symbol:Le.D.Snapping,callback:()=>Promise.all([i.e(2026),i.e(1299),i.e(5090),i.e(9829),i.e(3202),i.e(3745)]).then(i.bind(i,9831)).then((t=>t.default(e.engine)))}),new Ne.GL({symbol:Le.D.Tours,callback:()=>Promise.all([i.e(2026),i.e(1299),i.e(5090),i.e(9829),i.e(3202),i.e(3745)]).then(i.bind(i,34547)).then((t=>t.default(e.engine)))}),new Ne.GL({symbol:Le.D.WebGLRenderer,callback:()=>Promise.all([i.e(2026),i.e(1299),i.e(5090),i.e(9829),i.e(3202),i.e(3745)]).then(i.bind(i,33796)).then((t=>t.default(e.engine)))}),new Ne.GL({symbol:Le.D.ColorGrade,callback:()=>Promise.all([i.e(2026),i.e(1299),i.e(5090),i.e(9829),i.e(3202),i.e(3745)]).then(i.bind(i,71541)).then((t=>t.default(e.engine)))})),e.urlValues.tiledmesh&&t.push(new Ne.GL({symbol:Le.D.StreamingMesh,callback:()=>Promise.all([i.e(8893),i.e(1299),i.e(8287),i.e(1916),i.e(4892),i.e(5056),i.e(3202),i.e(2276)]).then(i.bind(i,72311)).then((t=>t.default(e.engine)))}),new Ne.GL({symbol:Le.D.StreamingTexture,callback:()=>Promise.all([i.e(8893),i.e(1299),i.e(8287),i.e(1916),i.e(4892),i.e(5056),i.e(3202),i.e(2276)]).then(i.bind(i,12850)).then((t=>t.default(e.engine)))})),t.forEach((t=>e.messageBus.broadcast(t))),(0,Ie.Sh)((()=>null),(()=>t.forEach((t=>e.messageBus.broadcast(new Ne.nt(t.payload))))))}({engine:this.engine,messageBus:this.engine.msgBus,urlValues:this.overrideParams})),a}async loadWaitingModules(e){var t,n;const[s,a]=await Promise.all([this.engine.getModuleBySymbol(E.ZF),this.engine.getModuleBySymbol(A.qL)]),o=a.getApi(),r=await o.user;lt.info("Showcase app version: 26.2.1_webgl-242-gba314d5588"),this.canvas=document.createElement("canvas"),this.canvas.className="webgl-canvas";const l=parseInt(this.overrideParams.log,10);this.overrideParams.hasOwnProperty("log")&&!isNaN(l)&&(u.Vy.level=l),this.quickstart&<.info("Quickstart engaged. Hold on to your knickers. "+performance.now()),this.engine.loadModuleBySymbol({type:A.Z7,config:{element:this.container}}),this.engine.loadModuleBySymbol({type:A.gS,config:{isLoggedIn:r.loggedIn,queue:this.apiQueue}}).then((e=>{e.loadMessages((async e=>await i(86970)(`./showcase_${e}.yaml`)))})),this.engine.loadModuleBySymbol({type:v.bW,config:{apiHost:this.apiHost,container:this.container}}),this.engine.loadModuleBySymbol({type:A.Ll,config:{container:this.container}}),this.apiConfig=await o.getConfigs("showcase");const d=this.overrideParams.apq;this.mdsContext.apqEnabled=!0===this.apiConfig.apollo_apq?"0"!==d:"1"===d;const h=await b({anonymous:!0,baseUrl:this.apiHost,initialModelSid:this.initialModelSid,inWorkshop:this.inWorkshop,mdsContext:this.mdsContext,overrideParams:this.overrideParams});h.caches.forEach((e=>{this.prefetchCaches.push(e),this.mdsContext.sharedCaches.add(e)})),this.initialViewId=h.initialViewId,this.baseModelId=h.rootModelId;const m=this.overrideParams.applicationKey||this.settingOverrides.applicationKey;await this.startAuthAndPolicyModules(o,r.loggedIn,m),this.engine.loadModuleBySymbol({type:A.Qm});const S=!!(this.settingOverrides&&this.settingOverrides.hasOwnProperty("useEffectComposer")||"1"===this.overrideParams.useEffectComposer)&&!!this.settingOverrides.useEffectComposer,O=!!(this.settingOverrides&&this.settingOverrides.hasOwnProperty("logarithmicDepthBuffer")||"1"===this.overrideParams.logarithmicDepthBuffer)&&!!this.settingOverrides.logarithmicDepthBuffer;this.engine.loadModuleBySymbol({type:A.M7,config:{canvas:this.canvas,antialias:"1"===this.overrideParams.aa,logarithmicDepthBuffer:O,useEffectComposer:S}}),this.engine.loadModuleBySymbol({type:A.jh});const g=this.container.querySelector("#canvas-container");this.engine.loadModuleBySymbol({type:A.CE,config:{canvas:this.canvas,container:g}}),this.engine.loadModuleBySymbol({type:A.TV}),this.engine.loadModuleBySymbol({type:A.J$});const _=await this.engine.getModuleBySymbol(A.M7);this.engineTick=new c.c(this.engine,_.threeRenderer,(e=>{this.engine.getModuleBySymbol(v.bW).then((t=>{this.setError(e),t.showError(M.b.GENERIC)}))})),this.setupOEmbedConsumer(this.settingOverrides.embedlyKey),this.engine.loadModuleBySymbol({type:v._r,config:{notificationDelayFrames:60}});const{settingsData:T}=s;this.openingTool=(0,F.X)(T),this.forceLogin=this.openingTool===W.S0.NOTES&&!r.loggedIn&&!(0,p.al)();let f=this.editModePreferred;f&&this.forceLogin&&(lt.warn("Cannot start in edit mode. Need to login to view note."),f=!1);const N={[re.Oe]:null,quickstart:this.quickstart,lang:this.overrideParams.lang,perf:this.overrideParams.perf,perfInterval:this.overrideParams.perfInterval,[Te.k5]:(null===(t=this.apiConfig)||void 0===t?void 0:t.discover_space_url)||""};for(const e in N)s.updateSetting(e,N[e]);if(this.settingOverrides)for(const e in this.settingOverrides)s.updateSetting(e,this.settingOverrides[e]);const I=new K(this.apiConfig),L=null!==(n=null==I?void 0:I.serialize())&&void 0!==n?n:[];this.loadInitialAppModules(L,_);const R=await this.engine.market.waitForData(Be.L),{baseModelId:y,layersData:D}=await this.loadViewsAndStorage(this.initialViewId,{isLoggedIn:r.loggedIn});this.baseModelId=y,this.shouldShowCompare(e,D)&&(this.engine.loadModuleBySymbol({type:A.xV}),this.engine.loadModuleBySymbol({type:A.sc})),await this.engine.loadModuleBySymbol({type:A.SH,config:{baseUrl:this.modelUrls.urlBase,api:o,viewId:this.initialViewId,queue:this.apiQueue,mdsContext:this.mdsContext}}),this.forceLogin&&this.openingTool===W.S0.NOTES&&await this.loginToNote(this.initialViewId),s.hasSetting(X.vg)||s.updateSetting(X.vg,this.apiConfig.embedly_key),this.loadInitialDataModules(e,f),this.engine.commandBinder.hookCommand(de.aj,!0,(()=>this.stopTourHook(this.engine))),this.engine.commandBinder.hookCommand(le.S2,!0,(()=>this.stopTourHook(this.engine)));const P=this.container.querySelector("main")||document.body;return this.loadPluginModules(T,R,P,f),{editMode:f,ab:I}}async loadPreplayModules(e,t){const[i,n,s]=await Promise.all([this.engine.market.waitForData(P.q),this.engine.market.waitForData(me.G),this.engine.getModuleBySymbol(E.ZF)]);this.engine.loadModuleBySymbol({type:A.UN,config:{calculateTrimmedBounds:!0}});const{details:a}=i.model;this.container.getRootNode()instanceof ShadowRoot||(document.title=a.name),this.canvas.setAttribute("aria-label",a.name);const o=n.getStartingPose();!this.quickstart||o&&(0,G.vy)(o.mode)||(lt.warn("Disabling quickstart. No panorama start position."),this.quickstart=!1,s.updateSetting("quickstart",!1)),this.sceneLoader.setLoader((async()=>{var e;const t=await this.engine.loadModuleBySymbol({type:A.KT});return"1"===(null!==(e=this.overrideParams.loadExamples)&&void 0!==e?e:"1")&&await(0,Ke.q)(),t.startLoading(),t})),await this.engine.loadModuleBySymbol({type:A.qD}),await this.engine.loadModuleBySymbol({type:A.iV}),this.quickstart&&(this.loadPanoControls(e,t),this.engineTick.start())}async loadHighPriorityPlayModules(e,t){this.canvas.setAttribute("tabIndex","0");const[i,n,s]=await Promise.all([this.engine.market.waitForData(me.G),this.engine.getModuleBySymbol(A.M7),this.engine.getModuleBySymbol(E.ZF)]),a=i.getStartingPose();this.engine.loadModuleBySymbol({type:A.X$,config:{container:this.container}});const o=function(e,{dracoDecoderPath:t,basisTranscoderPath:i}){let n="webgl-vendors/three/0.176.0/";return!/^https?:\/\//.test("webgl-vendors/three/0.176.0/")&&(n=`webgl-vendors/three/0.176.0/`),{dracoDecoderPath:t||`${n}libs/draco/gltf/`,basisTranscoderPath:i||`${n}libs/basis/`}}(this.assetBasePath,{dracoDecoderPath:this.settingOverrides.dracoDecoderPath,basisTranscoderPath:this.settingOverrides.basisTranscoderPath});s.updateSetting("dracoDecoderPath",o.dracoDecoderPath),this.engine.loadModuleBySymbol({type:A.GR,config:{startingMode:this.quickstart?a.mode:null,textureLOD:Y.R.RAYCAST,colorizeRooms:"1"===this.overrideParams.colorizeRooms,colorizeChunks:"1"===this.overrideParams.colorizeChunks,wireframe:"1"===this.overrideParams.wireframe,gltfConfig:o}}),this.engine.loadModuleBySymbol({type:A.fO,config:{baseModelId:this.baseModelId,baseUrl:this.modelUrls.urlBase,queue:this.storeQueue}});const{maxMeshTextureQuality:r,textureLODThreshold:l}=(e=>{let t,i;return(0,p.Fr)()?(0,p.Fr)()&&e?(t=oe.M.ULTRA,i=10):(t=oe.M.MEDIUM,i=6):(t=oe.M.ULTRA,i=20),{maxMeshTextureQuality:t,textureLODThreshold:i}})(n.isHighPerformanceMobileGPU());lt.info({maxMeshTextureQuality:r,textureLODThreshold:l,gpuInfo:n.gpuInfo}),this.engine.loadModuleBySymbol({type:v.L8,config:{maxQuality:r,textureLOD:Y.R.RAYCAST,textureLODThreshold:l}}),this.engine.loadModuleBySymbol({type:A.yT}),this.engine.loadModuleBySymbol({type:A.SD,config:{startingMode:this.quickstart?a.mode:null}}),this.engine.loadModuleBySymbol({type:A.PD,config:{baseModelId:this.baseModelId,baseUrl:this.modelUrls.urlBase}}),this.engine.loadModuleBySymbol({type:A.HX,config:{baseUrl:this.modelUrls.urlBase,readonly:!0}}),this.engine.loadModuleBySymbol({type:A.QW,config:{startingFloorsVisibility:this.quickstart?a.floorVisibility:void 0,allowFloorChanges:e.Features[ne.p]}}),this.engine.loadModuleBySymbol({type:A.kM});const d=this.container.querySelector("#app-container"),c=this.container.querySelector("main")||document.body,u=this.container.querySelector("#react-render-root")||document.body;this.engine.loadModuleBySymbol({type:A.nu,config:{workshopApp:this.inWorkshop,container:d,mainDiv:c,reactContainer:u,queue:this.apiQueue,apiHost:this.apiHost}});const h=await this.engine.getModuleBySymbol(A.az);this.engine.loadModuleBySymbol({type:A.N7,config:{registerConfirmViewChange:e=>h.registerConfirmViewChange(e)}}),this.engine.loadModuleBySymbol({type:v.uH}),this.engine.loadModuleBySymbol({type:A.pR}),this.engine.loadModuleBySymbol({type:A.zj}),this.engine.loadModuleBySymbol({type:A._q,config:{allowRotation:!1}}),this.engine.loadModuleBySymbol({type:A.et,config:{enabled:"1"!==this.overrideParams.nozoom}}),this.engine.loadModuleBySymbol({type:v.T6}),this.engine.loadModuleBySymbol({type:A.Kv,config:{raycastNeighbors:e.Features[nt.R],enableWheel:"1"===this.overrideParams.nozoom,doubleClickToGoInside:!0}}),this.engine.loadModuleBySymbol({type:A.PM}),this.engine.loadModuleBySymbol({type:A.Xx}),this.engine.loadModuleBySymbol({type:A.Ne}),this.engine.loadModuleBySymbol({type:v.ur});await this.isExteriorSplatEnabled()&&this.engine.loadModuleBySymbol({type:A.Fn}),this.quickstart||(this.engineTick.start(),this.loadPanoControls(e,t))}async loadLowPriorityPlayModules(e){var t,i;const[n,s,a,o,r]=await Promise.all([this.engine.getModuleBySymbol(E.ZF),this.engine.market.waitForData(Be.L),this.engine.getModuleBySymbol(A.qL),this.engine.market.waitForData(We.E),this.engine.market.waitForData(S.o)]);this.engine.loadModuleBySymbol({type:A.wY}),"0"!==this.overrideParams.portal&&(this.engine.loadModuleBySymbol({type:A.f0}),this.engine.loadModuleBySymbol({type:A.co})),this.engine.loadModuleBySymbol({type:A.gk,config:{showPinsInFloorplanDollhouse:"0"!==this.overrideParams.pin}}),this.engine.loadModuleBySymbol({type:A.LG}),this.engine.loadModuleBySymbol({type:A.se,config:{compare:!1,checkRenderModes:()=>{const e=this.engine.market.tryGetData(H.R);if(e&&e.isTourActive())return!1;const t=this.engine.market.tryGetData(V.X);return!!t&&t.isInside()}}}),this.engine.loadModuleBySymbol({type:A.Qj}),this.engine.loadModuleBySymbol({type:A.aU,config:{baseUrl:this.modelUrls.urlBase,readonly:!0}}),this.engine.loadModuleBySymbol({type:A.FI});const l=n.getSetting(q.Jr);this.engine.loadModuleBySymbol({type:A.kd,config:{tagIconsEnabled:l}}),this.engine.loadModuleBySymbol({type:A.Et}),this.engine.loadModuleBySymbol({type:A.qy,config:{oEmbedConsumer:this.oEmbedConsumer,baseUrl:this.modelUrls.urlBase}});const d=await a.getApi().user,c=d.getFlags("showcase/");!async function(e,t,i,n,s,a,o,r){const l=t.subscriber_prompt_denylist||Oe.Z1.domainDenylist,{popupAllowed:d,bannerAllowed:c}=await Ae({urlValues:i,settingsData:e.settingsData,flags:n,loggedIn:s,inWorkshop:o,hasPolicy:a.hasPolicy.bind(a),domainDenylist:l});if(_e.r.debug(`popupAllowed: ${d}, bannerAllowed: ${c}`),d||c){e.updateSetting(Oe.nt,!0);const n=d&&("1"===i[Oe.x$.forcePopup]||!!r.get("subscriber_prompt_a_popup")),s=c||"1"===i[Oe.x$.forceBanner],a=t.subscriber_prompt_a_delay_ms||Oe.Z1.popupDelay;_e.r.debug(`popupEnabled: ${n}, bannerEnabled: ${s}`),e.registerSetting("Subscriber Prompt",Oe.An,{popupDelay:a,popupEnabled:n,bannerEnabled:s},!1,g.u.NONE)}}(n,this.apiConfig,this.overrideParams,c,d.loggedIn,s,this.inWorkshop,e);const u=this.overrideParams.stories,h="1"===u||"0"!==u&&s.hasPolicy(U.bp);n.updateSetting(U.AI,h),this.engine.getModuleBySymbol(A.aF).then((e=>{e.trackFeatures(`${U.nn}:${h}`),(0,ze.n3)(e,s)})),this.engine.loadModuleBySymbol({type:A.XQ,config:{baseUrl:this.modelUrls.urlBase,readonly:!0,storyToursFeature:h,looping:"1"===this.overrideParams.lp,queue:this.storeQueue,baseModelId:this.initialViewId,defurnishToursFeature:"0"!==this.overrideParams.tour_defurnish}});const m=(0,$e.FZ)(d,o,s,r);this.engine.loadModuleBySymbol({type:A.lN,config:{objectTagsEnabled:m}}),this.engine.loadModuleBySymbol({type:A.cy,config:{workshop:this.inWorkshop,baseUrl:this.modelUrls.urlBase}}),this.loadUserDependentModules(d.loggedIn,r,s,c),this.engine.loadModuleBySymbol({type:A.yR,config:{debug:"1"===this.overrideParams.fcdbg}}),this.engine.loadModuleBySymbol({type:A.ZF}),this.engine.loadModuleBySymbol({type:A.N9,config:{baseUrl:this.modelUrls.urlBase,readonly:!0,objectTagsEnabled:m,inferMeshIds:!0,parserOptions:{supportLinks:!this.overrideParams.mls||"0"===this.overrideParams.mls,keepLinkLabels:!0}}}),this.engine.loadModuleBySymbol({type:A.Np}),this.engine.loadModuleBySymbol({type:A.Xf}),this.engine.loadModuleBySymbol({type:A.Tx}),this.engine.loadModuleBySymbol({type:A.ep}),this.engine.loadModuleBySymbol({type:A.zX}),this.engine.loadModuleBySymbol({type:A._v}),this.engine.loadModuleBySymbol({type:A.He,config:{baseUrl:this.modelUrls.urlBase}}),this.engine.loadModuleBySymbol({type:D.r}),this.engine.loadModuleBySymbol({type:v.bw}),this.engine.loadModuleBySymbol({type:A.rA}),this.engine.loadModuleBySymbol({type:A.PJ}),this.engine.loadModuleBySymbol({type:A.tQ}),this.engine.loadModuleBySymbol({type:A.zy,config:{baseUrl:this.modelUrls.urlBase,readonly:!0}});const O=n.getSetting(st);this.engine.loadModuleBySymbol({type:A.AO,config:{disableHlrRoomnames:O}}),this.engine.loadModuleBySymbol({type:A.Yr}),c.has(at.e)&&this.engine.loadModuleBySymbol({type:A.JN});const{q:_,qK:f,qF:N}=this.overrideParams;if(this.engine.loadModuleBySymbol({type:A.Yj,config:{urlQuery:_||((0,p.w2)()?"":_),urlQueryKeywords:f,urlQueryFilters:N,workshop:this.inWorkshop}}),m){const e=this.overrideParams.minConfidence?(0,T.qE)(parseFloat(this.overrideParams.minConfidence),.01,1):void 0;this.engine.loadModuleBySymbol({type:A.gy,config:{baseUrl:this.modelUrls.urlBase,minConfidence:e}})}const I=n.getSetting(ve.F7);this.engine.loadModuleBySymbol({type:A.YC,config:{framebufferScaling:Math.min(this.overrideParams.xrframebuffer?parseFloat(this.overrideParams.xrframebuffer):0,1),webxr:null!==(t=this.overrideParams.webxr)&&void 0!==t?t:"mono",xrBrowsersUnlocked:I,xrHandTracking:"1"===this.overrideParams["xr.hands"],xrMesh:"1"===this.overrideParams["xr.mesh"],xrDebug:"1"===this.overrideParams["xr.debug"]}});if(n.getSetting(Se.n)){const e=n.getSetting(Se.s);this.engine.loadModuleBySymbol({type:A.QS,config:{baseModelId:this.baseModelId,baseUrl:this.modelUrls.urlBase,queue:this.storeQueue,promptEnabled:e,debug:"1"===this.overrideParams.modelRatingDebug}})}await this.isRoomBoundsEnabled()&&(this.engine.loadModuleBySymbol({type:A.A5}),this.engine.loadModuleBySymbol({type:A.rz})),this.engine.loadModuleBySymbol({type:A.eE}),this.engine.loadModuleBySymbol({type:A.kG}),this.engine.loadModuleBySymbol({type:A.uq,config:{debug:"1"===this.overrideParams.toolAnnouncementDebug}}),(0,ot.W)(s)&&this.engine.loadModuleBySymbol({type:A.Gw,config:{baseUrl:this.apiHost,importerVersion:null!==(i=this.apiConfig.autotours_importer_version)&&void 0!==i?i:"unknown_version"}})}async isRoomBoundsEnabled(){const[e,t]=await Promise.all([this.engine.market.waitForData(Be.L),this.engine.market.waitForData(S.o)]);return await this.engine.getModuleBySymbol(v.K4),(0,Ye.m2)(e,t,this.inWorkshop)}async isExteriorSplatEnabled(){return(await this.engine.getModuleBySymbol(A.$q)).hasSplats()}async waitForSplatModuleIfNecessary(){await this.isExteriorSplatEnabled()&&await(await this.engine.getModuleBySymbol(A.Fn)).waitForLoad()}setInitialSettings(e,t,i){const n=e.getFlags("showcase/"),s=(0,ae.A0)(parseFloat(this.overrideParams.wts)),{labels:a,mt:o,allowRating:r,tiledmesh:l,tagIcons:d}=this.overrideParams,c=n.has(J.Z),u=(0,Ee.B)(navigator.language),h=n.has(Se.n)?"0"!==r:"1"===r,m=this.inWorkshop&&e.loggedIn&&h,p=m&&n.has(Se.s)?"0"!==r:"1"===r,E=n.has(q.Jr)?"0"!==d:"1"===d,S=n.has($.sz)?"0"!==l:"1"===l,_="0"===this.overrideParams.ad,T=n.has(ve.F7)?"0"!==this.overrideParams[ve.RN]:"1"===this.overrideParams[ve.RN],A=null!=this.overrideParams.showCeilings?"1"===this.overrideParams.showCeilings:n.has(qe.VS),v=null!=this.overrideParams.raycastNeighbors?"1"===this.overrideParams.raycastNeighbors:n.has(nt.R),f=n.has(qe.AU),N=n.has(rt.G),I={Features:{[te.f]:!0,[ee.s]:!0,[$.sz]:S,[fe.cB]:!_,[Q.RP]:"0"!==a,[X.qE]:"0"!==o,[ne.p]:"0"!==this.overrideParams.f,[ie._V]:s,[J.Z]:c,[ye.e]:!1,[ye.n]:!1,[Se.n]:m,[Se.s]:p,[st]:null!=this.overrideParams.snapshotRoomNames?"0"===this.overrideParams.snapshotRoomNames:n.has(st),[Oe.nt]:!1,[q.Jr]:E,[q.GK]:!0,[q.AM]:!0,[qe.VS]:A,[qe.AU]:f,[nt.R]:v,[ve.F7]:T,[se.$]:"0"!==this.overrideParams[se.d],[rt.G]:N},"User Preferences":{[O.Y.UnitType]:u,[O.Y.MeasurementSnapping]:!0,[O.Y.MeasurementContinuousLines]:!0,[O.Y.MeasurementUserNudgeSeen]:!1,[O.Y.DollhouseUserNudgeSeen]:!1,[O.Y.NotesModeNudgeSeen]:!1,[O.Y.LastRatingPromptTime]:null,[O.Y.SubscriberPromptDismissed]:!1,[O.Y.TourTextNudgeDismissed]:!1,[O.Y.TourMobileNavigationPromptSeen]:!1}};for(const e in I)for(const i in I[e]){if(void 0===I[e][i])continue;const n="User Preferences"===e?g.u.LOCAL_STORAGE:g.u.NONE;t.registerSetting(e,i,I[e][i],!0,n)}return t.updateSetting("assetBasePath",this.assetBasePath),I}setPluginPolicySettings(e,t){var i;const n={enabled:t.hasPolicy(je.XX),canConfig:t.hasPolicy(je.p_),canDebug:t.hasPolicy(je._x),groups:(null===(i=t.getPolicy(je.eV))||void 0===i?void 0:i.options)||[]};return e.setSetting(je.p_,n.canConfig&&n.enabled),e.setSetting(je.XX,n.enabled),n}loadUserDependentModules(e,t,i,n){this.engine.market.waitForData(We.E).then((s=>{(0,Z.uV)(e,i,s,t,n)&&this.engine.loadModuleBySymbol({type:A.TN,config:{workshop:this.inWorkshop,baseUrl:this.modelUrls.urlBase,readonly:!1}})}))}async unload(e){var t;this.prefetchCaches.forEach((e=>this.mdsContext.sharedCaches.delete(e))),this.prefetchCaches.length=0;try{const t=await e.getModuleBySymbol(A.Xf);await t.stopTour()}catch(e){lt.debug("showcase unload called before tour controls registered, ignoring stopTour",e)}await this.uiLoading,await(null===(t=this.showcaseGui)||void 0===t?void 0:t.unloadUi().catch((e=>{lt.error(e)}))),e.commandBinder.resetHooks(),this.bindings.forEach((e=>e.cancel())),this.bindings.length=0}async loginToModel(e,t){lt.info(`Loading model view: ${e}`);const i=this.forceLogin;await t.modelExists(e,{ignorePrefetch:i}).catch((async t=>{if(i&&(t instanceof ce._W||t instanceof ce.ZT))await this.showLoginScreen(e);else{if(!(t instanceof ce._W))throw t;await this.login()}}))}async loginToNote(e){this.forceLogin&&await this.showLoginScreen(e)}loadInitialAppModules(e,t){this.engine.loadModuleBySymbol({type:A.sA}),this.engine.loadModuleBySymbol({type:A.mL,config:{disableWheel:"0"===this.overrideParams.wh,pointerPreventDefault:!this.settingOverrides||!this.settingOverrides.hasOwnProperty("pointerPreventDefault")||!!this.settingOverrides.pointerPreventDefault,rootNode:this.container.getRootNode()}}),this.engine.getModuleBySymbol(A.aF).then((i=>{i.setOptions({gpu:t.gpuInfo}),i.trackFeatures(...e,`${q.jh}:true`)}))}async loadViewsAndStorage(e,{isLoggedIn:t=!1}){await this.engine.loadModuleBySymbol({type:A.az,config:{viewId:e,baseUrl:this.apiHost,readonly:!0,inWorkshop:this.inWorkshop,modulesLoadedPromise:this.modulesLoadedPromise,mdsContext:this.mdsContext,isLoggedIn:t}});const i=await this.engine.market.waitForData(C.P),n=i.getBaseModelId();return this.engine.loadModuleBySymbol({type:A.T9,config:{baseUrl:this.apiHost,mdsContext:this.mdsContext}}),{baseModelId:n,layersData:i}}async loadAnalytics(){this.engine.loadModuleBySymbol({type:A.aF}),this.engine.loadModuleBySymbol({type:A.$c,config:{appName:this.settingOverrides&&this.settingOverrides.appName||"showcase",provider:this.overrideParams.analytics,apiQueue:this.apiQueue,analyticsQueue:this.analyticsQueue,overrideParams:this.overrideParams}})}loadInitialDataModules(e,t){this.engine.loadModuleBySymbol({type:v.K4,config:{baseUrl:this.modelUrls.urlBase,readonly:!0}}),this.engine.loadModuleBySymbol({type:A.bj,config:{baseUrl:this.modelUrls.urlBase,readonly:!this.inWorkshop}}),this.engine.loadModuleBySymbol({type:A.vj,config:{enableCostarLogos:!0}});const i=this.settingOverrides.disableMobileRedirect,n=!!this.openingTool||void 0,s=!!this.openingTool||void 0,a=!!this.openingTool||void 0;this.engine.loadModuleBySymbol({type:v.XT,config:{disabled:this.forceLogin,openingTool:!!this.openingTool,viewId:this.initialViewId,baseUrl:this.modelUrls.urlBase,quickstart:this.quickstart,editMode:t,allowPlayInIframe:!!i||"1"===this.overrideParams.playsInline,allowAutoPlay:!!i,hideTitle:s,hideBranding:a,hidePoweredBy:n}}),this.engine.loadModuleBySymbol({type:A.Pn,config:{baseModelId:this.baseModelId,baseUrl:this.modelUrls.urlBase,initialViewId:this.initialViewId,readonly:!0}}),this.engine.loadModuleBySymbol({type:A.Wh,config:{baseUrl:this.modelUrls.urlBase,readonly:!0}}),this.engine.loadModuleBySymbol({type:A.di,config:{baseUrl:this.modelUrls.urlBase,readonly:!0}}),this.engine.loadModuleBySymbol({type:A.Vu,config:{baseUrl:this.modelUrls.urlBase,readonly:!this.inWorkshop,requestQueue:this.storeQueue}}),this.engine.loadModuleBySymbol({type:A.$q,config:{splatsLocation:"published"}})}loadPanoControls(e,t){this.uiLoading=this.loadUI(e,!(t||this.forceLogin)),this.engine.loadModuleBySymbol({type:A.X7}),this.engine.loadModuleBySymbol({type:A.TY})}async loadSdkModule(e){const t=this.overrideParams.applicationKey||this.settingOverrides.applicationKey,n=this.engine,s=(this.assetBasePath,I.P.sdkMetadata),a=this.overrideParams.sdkVersion,o=this.inWorkshop;let r;!function(e){e.WEBGL="webgl",e.WEBGL_ALL="webgl-all"}(r||(r={}));const l=async function(){return a===r.WEBGL||a===r.WEBGL_ALL?w(a===r.WEBGL_ALL):async function(e,t,i,n){var s;let a="26.2.1_webgl-242-gba314d5588";try{const o=await e.getAppKey("showcase","sdk"),r=await e.getUser();if(i&&i.version&&(a=i.version),n&&(a=n),o)return!n&&((null===(s=o.client)||void 0===s?void 0:s.includes("v="))||r.loggedIn||t)?o:(0,_.ir)(o,a);k.warn("No API config data available, falling back to static routes")}catch(e){k.warn("Error fetching API data, falling back to static routes")}return w(t,a)}(e,o,s,a)}(),d={scene:this.sceneLoader};n.loadModuleBySymbol({type:E.S1,config:{applicationKey:t||"NO_APPLICATION_KEY_SUPPLIED",validationUrl:this.apiHost+"/api/v1/user/",getSdkConfig:l,setupExternalSdk:async e=>{const s=await Promise.resolve().then(i.bind(i,31051));await s.loadInterface(e,n,await l,d,u.Vy.level,t||"",this.apiHost,this.jsonSchemaValidator)},queue:this.apiQueue,validateProvider:e=>this.validateSdkProvider(e)}})}async loadUI(e,t){const i=(await this.engine.getModuleBySymbol(A.az)).layersData;let n=v.uH;return this.shouldShowCompare(e,i)&&(n=A.sc),Promise.all([this.engine.getModuleBySymbol(A.nu),this.engine.getModuleBySymbol(n)]).then((([e,i])=>{this.guiModule=e,this.showcaseGui=i,t&&e.loadUi(i.loadUi)}))}shouldShowCompare(e,t){return!!e.Features[se.$]&&(null==t?void 0:t.getCurrentView().isCompareView())}async startAuthAndPolicyModules(e,t,i){this.loadSdkModule(e);const n=!!i,s=n?await this.doSdkAuth(i):{accepted:Promise.resolve()};if(s.token){ue.u.setToken(s.token);try{await e.modelExists(this.initialViewId,{ignorePrefetch:!0})}catch(e){throw lt.error(e),this.setError(e),e}}else try{await this.loginToModel(this.initialViewId,e)}catch(e){throw this.setError(e),e}if(await this.engine.loadModuleBySymbol({type:A.Uu,config:{baseUrl:this.modelUrls.urlBase,viewId:this.initialViewId,mdsContext:this.mdsContext,isLoggedIn:t}}),n)try{await s.accepted}catch(e){return void this.setError(Error("invalid provider specified"))}}async doSdkAuth(e){const t=this.engine,i=await t.getModuleBySymbol(A.Ll);i.show();const n=await t.getModuleBySymbol(E.S1),s=await n.getClientAuth(e);return i.hide(),s}async validateSdkProvider(e){const t=!!(await this.engine.market.waitForData(Be.L)).getPolicy(Xe),i=Qe.get(e)===Xe;return!e||!i||t&&i}async showLoginScreen(e){var t,i;return(await this.engine.loadModuleBySymbol({type:A.Vc,config:{loginUrl:(null===(t=this.apiConfig)||void 0===t?void 0:t.authn_login_url)||"",registerUrl:(null===(i=this.apiConfig)||void 0===i?void 0:i.account_register_url)||"",modelId:e,baseUrl:this.modelUrls.urlBase,container:this.container}})).loadUi()}login(){return new Promise((async e=>{const t=await this.engine.loadModuleBySymbol({type:v.q0,config:{modelId:this.initialViewId,baseUrl:this.modelUrls.urlBase,container:this.container}});this.engine.subscribe(x.l,(()=>{t.hidePasswordScreen(),e()})),t.showPasswordScreen()}))}setupOEmbedConsumer(e){const t={embedlyKey:e||this.apiConfig.embedly_key,instagramAppId:this.apiConfig.instagram_app_id,instagramClientToken:this.apiConfig.instagram_client_token,googleMapsApiKey:this.apiConfig.google_maps_key};this.oEmbedDeferred.resolve(new Ve(this.apiQueue,t))}async loadPluginModules(e,t,i,n){{const s=this.setPluginPolicySettings(e,t);this.engine.loadModuleBySymbol({type:A.lf,config:{queue:this.storeQueue,modelId:this.baseModelId,apiHostBaseUrl:this.modelUrls.urlBase,pluginPolicies:s,readonly:!this.inWorkshop}}),this.engine.loadModuleBySymbol({type:A.vM,config:{mainDiv:i}}),this.engine.loadModuleBySymbol({type:A.JY}),this.engine.loadModuleBySymbol({type:A.N4,config:{pluginPolicies:s,editMode:n,jsonSchemaValidator:this.jsonSchemaValidator}})}}}var ct=i(30877);window.addEventListener("app-start",(e=>{var t,i;const o=function(e){const t=new n.N;t.diContainer.bindConstant(s.L0,new a.i),t.diContainer.bindConstant(s.aX,new a.i);const i=new dt(!1,e);t.loadApplication(i,i.setError.bind(i));const o=function(e){class t{constructor(e){this.windowContext=e,this.connectedPromise=new Promise((e=>{this.connectedPromiseResolve=e}))}async connect(...[,t={}]){const i=await e.getModuleBySymbol(E.S1),n=ct.p.connect(new ut(i,t),new ht,this.windowContext);return n.then((e=>this.connectedPromiseResolve(e))),n}}let i=window;window!==window.top&&(i=window.parent);window.opener&&(i=window.opener);const n=new t(i);return window.MP_SDK=n,n}(t);return{engine:t,showcase:i,sdkBoostrap:o}}(e.detail.config||{});null===(i=(t=e.detail).onStart)||void 0===i||i.call(t,{dispose:()=>{o.engine.dispose(),o.showcase.stop(),o.showcase.unload(o.engine)}}),o.sdkBoostrap.connectedPromise.then((t=>{var i,n;null===(n=(i=e.detail).onSdkConnected)||void 0===n||n.call(i,{mpSdk:t})}))}),!0);class ut{constructor(e,t){this.sdk=e,this.options=t}connect(){return this.sdk.connect(`${window.location.protocol}//${window.location.host}`,this.options)}cancelConnecting(){}}class ht{getFactory(e){return e.messengerFactory}}},31051:(e,t,i)=>{"use strict";i.r(t),i.d(t,{LazyLoader:()=>zt,loadInterface:()=>Yt});var n=i(65945),s=i(68909),a=i(84404),o=i(14868),r=i(14614),l=i(45987),d=i(75772),c=i(9139),u=i(68920),h=i(94165),m=i(50505),p=i(90082),E=i(71687),S=i(32024),O=i(18821),g=i(40397),_=i(19968),T=i(80519),A=i(56208),v=i(13893),f=i(89928),N=i(51313),I=i(50636),L=i(26655),R=i(80419),y=i(94),b=i(5984),D=i(9997),M=i(79457),P=i(65425),k=i(25727),w=i(11416),C=i(51274),x=i(49523),H=i(5146),U=i(3956),F=i(50018),G=i(34184),V=i(47004),W=i(17084),B=i(73566),j=i(22937),K=i(38069),z=i(81662),Y=i(66806),$=i(46793),X=i(98309),Q=i(1197),q=i(11165);class Z extends q.u{}Z.id="DEACTIVATE_IDLE_MODE";class J extends q.u{constructor(e){super(),this.payload={timeout:e}}}J.id="SET_IDLE_MODE_TIMEOUT";var ee=i(78115),te=i(9360),ie=i(10459),ne=i(37105),se=i(58229),ae=i(39209),oe=i(85182),re=i(43066);const le=function(e,t){return i=>async function(i){var n,s;const a={modelId:i},o=await e.query(re.GetViews,a,{}),r=null===(s=null===(n=null==o?void 0:o.data)||void 0===n?void 0:n.model)||void 0===s?void 0:s.views;if(!r||!Array.isArray(r))return[];const l=[];for(const e of r){const i=t.deserialize(e);i&&l.push(i)}return l}(i)};var de=i(57186),ce=i(47737),ue=i(29479),he=i(41535),me=i(28454),pe=i(55057),Ee=i(5243),Se=i(50485),Oe=i(12866),ge=i(68387),_e=i(25316),Te=i(12837),Ae=i(21875),ve=i(99583),fe=i(84522),Ne=i(74717),Ie=i(16653),Le=i(84358),Re=i(41369),ye=i(29543),be=i(39634),De=i(96425),Me=i(3795),Pe=i(30926),ke=i(55494),we=i(22278),Ce=i(32948),xe=i(61430),He=i(56846),Ue=i(63362),Fe=i(48086),Ge=i(81483),Ve=i(27140);const We=function(e,t){return i=>async function(i){var n,a;const o={modelId:i,includeDisabled:!0,includeLayers:!0},r=await e.query(Ve.GetMattertags,o,{}),l=null===(a=null===(n=null==r?void 0:r.data)||void 0===n?void 0:n.model)||void 0===a?void 0:a.mattertags;if(!l||!Array.isArray(l))return[];const d=[];for(const e of l){const i=t.deserialize(e);if(i){const e=new s.Vector3,t=new s.Vector3;e.set(i.anchorPosition.x,i.anchorPosition.y,i.anchorPosition.z),t.set(i.stemVector.x,i.stemVector.y,i.stemVector.z),t.normalize(),d.push(i)}}return d}(i)};var Be=i(28511);const je=3*7.4,Ke=je/2,ze=.65,Ye=28.860000000000003,$e=new s.Color(15706876),Xe=new s.Color(11882440),Qe=new s.Color("#385DFF"),qe=new s.Color(12179199),Ze=new s.Color("#00A170"),Je=new s.Color(8515276),et=new s.Color("#FF3158"),tt=new s.Color(16758976),it={buttonColor:new s.Color("#ffffff"),buttonTextColor:new s.Color("#474764")};var nt,st=i(46771),at=i(62802),ot=i(53282),rt=i(37458),lt=i(78079);!function(e){e.X_TRANSLATE="x_translate",e.Y_TRANSLATE="y_translate",e.Z_TRANSLATE="z_translate",e.X_ROTATE="x_rotate",e.Y_ROTATE="y_rotate",e.Z_ROTATE="z_rotate",e.XZ_PLANAR_TRANSLATE="xz_planar_translate"}(nt||(nt={}));var dt=i(56637),ct=i(86324);const ut=i.p+"models/arrowhead.glb";var ht=i(17888);class mt extends s.Object3D{constructor(e,t,i,n,a,o,r,l,d){super(),this.componentType=e,this.lineColor=t,this.controlColor=i,this.state=n,this.faceUser=o,this.cameraData=r,this.raycastPointer=l,this.flipped=!1,this.startDragAxisPos=new s.Vector3,this.flipScale=new s.Vector3(1,1,1),this.lastFlipDot=1/0,this.hovered=!1,this.tick=(()=>{const e=new s.Vector3,t=new s.Quaternion,i=new s.Quaternion;return n=>{if(this.faceUser&&!this.state.transforming){const n=this.cameraData.pose.rotation,s=e.copy(this.axisDir).applyQuaternion(this.getWorldQuaternion(t)).applyQuaternion(i.copy(n).invert()),a=z.B1.FORWARD.dot(s);this.lastFlipDot===1/0&&(this.lastFlipDot=a),a>0&&Math.abs(a-this.lastFlipDot)>.1&&(this.lastFlipDot=.1,this.axisDir.multiplyScalar(-1),this.flipped=!this.flipped,this.screenspaceLine.updateEndpoints([{points:[z.B1.ZERO,this.axisDir]}])),this.flipScale.set(this.axisDir.x||1,this.axisDir.y||1,this.axisDir.z||1)}}})(),this.closestPointOnAxis=(()=>{const e=new s.Vector3,t=new s.Vector3,i=new s.Vector3,n=new s.Vector3;return s=>{const a=this.raycastPointer.pointerRay;return t.copy(a.origin).add(a.direction),e.copy(this.axisDir).multiplyScalar(this.state.scale).applyQuaternion(this.state.controlOrientation).add(this.state.controlOrigin),(0,dt.ff)(this.state.controlOrigin,e,a.origin,t,i,n,s)?i:null}})(),this.axisDir=a.clone();const c={dashed:!1,dashSize:0,gapSize:0,lineWidth:3,dashUnits:ct.EX.PIXELS,depthTest:!1,color:t,depthWrite:!1,depthFunc:s.AlwaysDepth,globalOpacity:1},u={points:[z.B1.ZERO,this.axisDir]};this.screenspaceLine=new ct.y4([u],c),this.screenspaceLine.renderOrder=rt.X.transformGizmo,this.add(this.screenspaceLine),this.arrowMaterial=new s.MeshBasicMaterial(Object.assign({color:i,transparent:!0,depthTest:!1},dt.q)),this.arrowMesh=new s.Mesh(d.geometry.clone(),this.arrowMaterial);const h=(new s.Quaternion).setFromUnitVectors(z.B1.UP,this.axisDir);this.arrowMesh.geometry.applyQuaternion(h),this.arrowMesh.position.copy(this.axisDir),this.add(this.arrowMesh);const m=new s.Vector4;this.arrowMesh.onBeforeRender=(e,t,i,s,a,o)=>{e.getCurrentViewport(m);const l=(0,g.Nv)(r.pose.projection,r.pose.position,this.state.controlOrigin,m.w,n.scale),d=this.hovered?1.3:1,c=je/l*d;this.arrowMesh.scale.set(c,c,c).multiply(this.flipScale),this.arrowMesh.position.copy(this.axisDir).multiplyScalar(1+.5*c),this.arrowMesh.updateMatrix()},this.arrowMesh.renderOrder=rt.X.transformGizmo}setOpacity(e){this.screenspaceLine.globalOpacity(e),this.arrowMaterial.opacity=e}setActive(e){}pointerHover(e){const t=!!this.pointerOn(e);return this.setHovered(t),t}setHovered(e){this.screenspaceLine.lineWidth(e?5.1:3),this.hovered=e}pointerButton(e,t){this.startDragAxisPos.copy(t).sub(this.state.controlOrigin)}pointerOn(e){const t=this.closestPointOnAxis(!0);if(!t)return null;const i=this.raycastPointer.ndcPosition.clone(),n=this.cameraData.pose,a=(0,_.jn)(t,n.position,n.rotation,n.projection.asThreeMatrix4()),o=new s.Vector2(a.x,a.y),r=new s.Vector2(this.cameraData.width,this.cameraData.height).multiplyScalar(.5);return o.multiply(r).add(r),i.multiply(r).add(r),i.distanceTo(o).5}setAngle(e,t){this.circleMesh.setAngle(e,t),this.ticks.quaternion.identity()}}var At=i(86866);const vt=10*Math.PI,ft=.55,Nt=Math.PI/4,It=Nt/Math.PI*180;class Lt extends s.Object3D{constructor(e,t,i,n,a,o,r,l){super(),this.componentType=e,this.color=t,this.controlColor=i,this.state=n,this.axes=a,this.cameraData=r,this.raycaster=l,this.arcOpacity=1,this.roughProtractorOpacity=1,this.fineProtractorOpacity=1,this.opacity=1,this.hovered=!1,this.plane=new s.Plane,this.startDragAngle=vt,this.startDragQuaternion=new s.Quaternion,this.startDragTransform=new s.Matrix4,this.axisOfRotation=new s.Vector3;const d={dashed:!1,dashSize:1,gapSize:0,lineWidth:3,color:this.color,dashUnits:ct.EX.PIXELS,globalOpacity:1,depthTest:!1,depthWrite:!0,depthFunc:pt.eHc},c=this.createArc(ze,0,90);this.arcMesh=new ct.y4(c,d),this.add(this.arcMesh),[this.orbMesh,this.orbMaterial]=this.createOrb(this.controlColor,Math.PI/4),this.arcMesh.add(this.orbMesh);this.roughProtractor=new Tt(this.state,ft,.325,It,It,.1,this.color,this.controlColor),this.fineProtractor=new Tt(this.state,1.011803,.75,2.5,It,.1,this.color,this.controlColor),this.add(this.fineProtractor,this.roughProtractor),this.plane.normal.copy(z.B1.UP),this.quaternion.setFromUnitVectors(z.B1.UP,o).invert(),this.axisOfRotation.copy(z.B1.UP).applyQuaternion(this.quaternion),this.updateMatrixWorld(),this.updateOpacity()}setOpacity(e){this.opacity=e,this.updateOpacity()}setActive(e){this.arcOpacity=e?0:1}tick(e){if(!this.state.transforming){const e=e=>e?1:0,t=mt.axisFlipRot[e(this.axes[0].flipped)][e(this.axes[1].flipped)];this.arcMesh.quaternion.setFromAxisAngle(z.B1.UP,t),this.fineProtractor.quaternion.copy(this.arcMesh.quaternion),this.roughProtractor.quaternion.copy(this.arcMesh.quaternion),this.arcMesh.updateMatrix()}}pointerButton(e,t){this.startDragTransform=this.arcMesh.matrixWorld.clone().invert();const{angle:i}=this.getCursorAngleAndClosestPoint(this.startDragTransform);this.startDragAngle=i,this.startDragQuaternion.copy(this.state.controlOrientation),this.roughProtractor.setAngle(i,this.startDragAngle),this.fineProtractor.setAngle(i,this.startDragAngle)}setHovered(e){this.arcMesh.lineWidth(e?5.1:3),this.hovered=e}pointerOn(e){const{angle:t,closestPointOnArc:i}=this.getCursorAngleAndClosestPoint();if(t===vt||t<0||t>.5*Math.PI)return null;i.multiplyScalar(ze).applyMatrix4(this.arcMesh.matrixWorld);const n=this.raycaster.pointer.ndcPosition.clone(),a=this.cameraData.pose,o=(0,_.jn)(i,a.position,a.rotation,a.projection.asThreeMatrix4()),r=new s.Vector2(o.x,o.y),l=new s.Vector2(this.cameraData.width,this.cameraData.height).multiplyScalar(.5);return r.multiply(l).add(l),n.multiply(l).add(l),n.distanceTo(r){var d;e.getCurrentViewport(o);const c=(0,g.Nv)(this.cameraData.pose.projection,this.cameraData.pose.position,this.state.controlOrigin,o.w,this.state.scale),u=this.hovered?1.3:1,h=Ke/c*u;a.scale.set(h,h,h),null===(d=i.boundingSphere)||void 0===d||d.set(a.position,h)},[a,n]}createArc(e,t,i){const n=[];let a=null;for(let o=t;o<=i;o+=5){const t=(0,Et.pu)(o),i=new s.Vector3(Math.cos(t),0,Math.sin(t)).multiplyScalar(e);a&&n.push({points:[a,i]}),a=i}return n}}var Rt=i(16153),yt=i(31002),bt=i(81544),Dt=i(61728),Mt=i(23184);class Pt{static hasAncestor(e){return Mt.f.is((t=>{let i=!1;return t.traverseAncestors((t=>{i=i||t===e})),i}))}}const kt=i.p+"models/button_background.glb",wt=.1;class Ct extends s.Object3D{constructor(e,t,i,n,a,o,r){super(),this.input=e,this.cameraData=t,this.theme=i,this.offset=n,this.actions=[],this.opacity=1,this.backgroundObjBounds=new s.Box3,this.sizeButtonsToFit=()=>{const e=this.backgroundObjBounds.getSize(new s.Vector3).x;if(0===e)return;this.actions.forEach(((t,i)=>{const n=Math.max(1,(t.width+.1)/e);t.setBackgroundWidthScale(n);const s=n*e/2;t.position.x=i%2==0?s+.1:-s-.1}))},this.renderOrder=rt.X.transformGizmo-1,this.labelMaker=new Rt.Il({assetBasePath:a,lang:o,color:new s.Color(71/255,70/255,100/255),outline:!1,background:!1,disableDepth:!0,scale:wt}),this.iconMaker=new Rt.Il({assetBasePath:a,fontPath:"fonts/mp-font.woff",lang:o,color:new s.Color(71/255,70/255,100/255),outline:!1,background:!1,disableDepth:!0,backgroundBorderWidth:0,scale:wt});const l=new ht.GLTFLoader,d=new Dt.DRACOLoader;d.setDecoderPath(r),l.setDRACOLoader(d),l.load(kt,(e=>{this.backgroundObj=e.scene,this.buttonAnimations=e.animations,this.backgroundObjBounds.expandByObject(this.backgroundObj)}))}setActions(e){for(const e of this.actions)this.remove(e),e.dispose();this.actions.length=0;for(const t of e){const e=new xt(t,this.input,this.labelMaker,this.iconMaker,this.backgroundObj,this.buttonAnimations);e.setTheme(this.theme),e.addEventListener("labeledSized",this.sizeButtonsToFit),this.add(e),this.actions.push(e)}if(0===this.actions.length)return;const t=this.actions[0].getBoundingBox(new s.Box3),i=t.max.y-t.min.y;let n=.5*i+.03+this.offset;for(let e=0;et.update(e)))}setOpacity(e){this.opacity=e;for(const e of this.actions)e.setOpacity(this.opacity)}}class xt extends s.Object3D{constructor(e,t,i,n,a,o){super(),this.action=e,this.input=t,this.boundingBox=new s.Box3,this.labelSized=!1,this.iconSized=!1,this.iconX=0,this.labelX=0,this._width=0,this.dispose=()=>{},this.renderOrder=rt.X.transformGizmo,this.backgroundMesh=a.clone(),(0,dt.rx)(this.backgroundMesh),this.backgroundMesh.renderOrder=rt.X.transformGizmo,this.add(this.backgroundMesh);const r=this.backgroundMesh.children[0];if(!(0,dt.uW)(r)||Array.isArray(r.material)||!(0,dt.P3)(r.material))throw new Error("Invalid button mesh");this.backgroundMat=r.material,t.registerMesh(this.backgroundMesh,!1),this.boundingBox.expandByObject(this.backgroundMesh),this.collisionMesh=r;const l=i.createLabel();if(l.mesh.addEventListener("synccomplete",(()=>{this.labelSized=!0,this._width=this.label.unscaledWidth*wt,this.positionIconAndLabel(),this.dispatchEvent({type:"labeledSized"})})),l.text=e.name,l.setRenderOrder(rt.X.transformGizmo+1),this.add(l),this.label=l,e.icon){const t=n.createLabel();t.mesh.addEventListener("synccomplete",(()=>{this.iconSized=!0,this.positionIconAndLabel()})),t.setRenderOrder(rt.X.transformGizmo+1),t.text=String.fromCodePoint(+Be.J[e.icon]),this.add(t),this.icon=t}const d=new s.AnimationObjectGroup(this.backgroundMesh),c=new s.AnimationMixer(d);this.animationMixer=c;const u=c.clipAction(o[0]);u.clampWhenFinished=!0,u.repetitions=1;const h=Mt.f.is((e=>e instanceof s.Object3D&&Pt.hasAncestor(this.backgroundMesh).compare(e))),m=[t.registerMeshHandler(yt.rX,h,(()=>{this.action.callback()})),t.registerMeshHandler(yt.wR,h,(()=>{})),t.registerMeshHandler(bt.L,h,(()=>{u.reset(),u.timeScale=1,u.time=0,u.play()})),t.registerMeshHandler(bt.q,h,(()=>{u.reset(),u.timeScale=-1,u.time=u.getClip().duration,u.play()}))];this.dispose=()=>{this.input.unregisterMesh(this.backgroundMesh),m.forEach((e=>e.cancel()))}}update(e){var t;this.animationMixer.update(e),this.label.scale.copy(this.collisionMesh.scale).multiplyScalar(wt),null===(t=this.icon)||void 0===t||t.scale.copy(this.collisionMesh.scale).multiplyScalar(wt),this.label.position.x=this.labelX*this.collisionMesh.scale.x,this.icon&&(this.icon.position.x=this.iconX*this.collisionMesh.scale.x)}getBoundingBox(e){return e.copy(this.boundingBox),e.min.multiply(this.scale),e.max.multiply(this.scale),e}setOpacity(e){this.backgroundMat&&(this.label.opacity=e,this.icon&&(this.icon.opacity=e),this.backgroundMat.transparent=e<1,this.backgroundMat.opacity=e,this.backgroundMat.needsUpdate=!0)}setTheme(e){var t;this.backgroundMat.color.copy(e.buttonColor),this.label.setColor(e.buttonTextColor),null===(t=this.icon)||void 0===t||t.setColor(e.buttonTextColor)}setBackgroundWidthScale(e){this.backgroundMesh.scale.x=e,this.backgroundMesh.updateMatrixWorld(!0);const t=this.boundingBox.getSize(new s.Vector3),i=this.boundingBox.getCenter(new s.Vector3);t.x*=e,this.boundingBox.setFromCenterAndSize(i,t)}get width(){return this._width}positionIconAndLabel(){if(!this.labelSized||!this.iconSized)return;const e=this.icon.unscaledWidth*wt,t=this.label.unscaledWidth*wt,i=e+t,n=i/2,s=t/2;this.iconX=-n+e,this.labelX=1.5*e-n+s,this._width=i}}var Ht=i(9289);class Ut extends s.Mesh{constructor(e,t,i,n,a,o){const r=(new Ht.SVGLoader).parse(Gt).paths[0],l=Ht.SVGLoader.createShapes(r),d=new s.ShapeGeometry(l),c=Ut.PlaneSize/Ft;d.scale(c,c,c),d.rotateX(.5*-Math.PI),d.translate(-Ut.PlaneSize/2,0,Ut.PlaneSize/2),super(d,new s.MeshBasicMaterial({color:t,depthTest:!1,transparent:!0,side:s.DoubleSide})),this.componentType=e,this.lineColor=t,this.controlColor=i,this.state=n,this.raycaster=a,this.axes=o,this.plane=new s.Plane,this.startDragPos=new s.Vector3,this.tick=(()=>{const e=new s.Quaternion;return t=>{const i=e=>e?1:0,n=mt.axisFlipRot[i(this.axes[0].flipped)][i(this.axes[1].flipped)];e.setFromAxisAngle(this.plane.normal,n),this.position.set(Ut.PlaneSize,0,Ut.PlaneSize).applyQuaternion(e),this.updateMatrix(),this.updateMatrixWorld()}})(),this.renderOrder=rt.X.transformGizmo,this.plane.normal.set(0,1,0),this.position.set(Ut.PlaneSize,0,Ut.PlaneSize)}setOpacity(e){this.material.opacity=e;for(const t of this.axes)t.setOpacity(e)}setActive(e){}setHovered(e){const t=e?1.3:1;if(this.scale.set(t,t,t),e){this.material.color.copy(this.controlColor);for(const t of this.axes)t.setHovered(e),t.overrideColors(this.lineColor,this.controlColor)}else{this.material.color.copy(this.lineColor);for(const e of this.axes)e.restoreColors()}}pointerButton(e,t){this.startDragPos.copy(t)}pointerOn(e){return this.closestPoint(!0)}transform(e,t){const i=this.closestPoint(!1);if(!i)return;const n=new s.Vector3;n.subVectors(i,this.startDragPos),this.state.controlOrigin.copy(t).add(n);for(const e of this.state.toTransform){const t=this.state.toTransformDragStartInfo.get(e);if(!t)throw new Error("Missing Start Drag Info!");e.position.copy(t.position).add(n)}}closestPoint(e){const t=this.raycaster.pointer.pointerRay,i=this.matrixWorld.clone().invert();t.applyMatrix4(i);const n=new s.Vector3;if(t.intersectPlane(this.plane,n)){const t=.5*Ut.PlaneSize;return e&&(Math.abs(n.x)>t||Math.abs(n.z)>t)?null:(n.applyMatrix4(this.matrixWorld),n.y=0,n)}return null}}Ut.PlaneSize=.2;const Ft=125,Gt='\n\n \n';var Vt=i(92237);class Wt extends s.Mesh{constructor(e,t,i,n,a,o,r=it,l=!0){super(),this.raycaster=t,this.state={toTransform:[],toTransformDragStartInfo:new Map,transforming:!1,hovering:!1,controlOrigin:new s.Vector3,controlOrientation:new s.Quaternion,scale:1},this.startDragListeners=new Set,this.dragListeners=new Set,this.endDragListeners=new Set,this.axes=[],this.currentAxis=null,this.startDragControlOrigin=new s.Vector3,this.locked=!1,this.inactiveComponentOpacity=new Vt.z(1),this.cameraSub=null,this._viewport=new s.Vector4,this._cameraWorldPos=new s.Vector3,this.pointerButton=e=>{if(this.locked)return;const t=this.state.transforming;if(e.down){if(!this.state.transforming){this.startDragControlOrigin.copy(this.state.controlOrigin);for(const t of this.axes){const i=t.pointerOn(e);if(i){this.state.transforming=!0,t.pointerButton(e,i),this.currentAxis=t,t.setActive(!0),this.setInactiveOpacity(0);break}}}}else this.currentAxis&&this.currentAxis.setActive(!1),this.state.transforming=!1,this.setInactiveOpacity(1);if(t!==this.state.transforming)if(e.preventDefault(),this.state.transforming){if(!this.currentAxis)throw new Error("Current axis should be set if transforming is true!");const e=this.currentAxis.componentType;this.startDragListeners.forEach((t=>t(e)));for(const e of this.state.toTransform)this.state.toTransformDragStartInfo.set(e,{position:e.position.clone(),quaternion:e.quaternion.clone()})}else this.endDragListeners.forEach((e=>e()))},this.pointerMove=e=>{var t;if(!this.locked){if(this.state.hovering=!1,this.state.transforming)null===(t=this.currentAxis)||void 0===t||t.transform(e,this.startDragControlOrigin);else{for(const e of this.axes)e.setHovered(!1);for(const t of this.axes)if(t.pointerOn(e)){t.setHovered(!0),this.state.hovering=!0;break}}this.state.transforming&&this.dragListeners.forEach((e=>e()))}},this.state.controlOrigin=this.position,this.state.controlOrientation=this.quaternion;const d=l?.1:.75;var c;this.actionButtons=new Ct(e,i,r,d,n,a,o),this.add(this.actionButtons),this.bindings=new at.P(e.registerUnfilteredHandler(lt.$3,this.pointerMove),e.registerUnfilteredHandler(lt.CD,this.pointerButton)),this.detachFromObjects(),this.renderOrder=rt.X.transformGizmo-2,c=e=>{const n=new mt(nt.X_TRANSLATE,Qe,qe,this.state,z.B1.RIGHT,!0,i,t.pointer,e),s=new mt(nt.Y_TRANSLATE,Ze,Je,this.state,z.B1.UP,!1,i,t.pointer,e),a=new mt(nt.Z_TRANSLATE,et,tt,this.state,z.B1.BACK,!0,i,t.pointer,e);this.rotationAxes=[new Lt(nt.Y_ROTATE,Ze,Je,this.state,[n,a],z.B1.UP,i,t)],l||this.rotationAxes.push(new Lt(nt.X_ROTATE,Qe,qe,this.state,[s,a],z.B1.RIGHT,i,t),new Lt(nt.Z_ROTATE,et,tt,this.state,[n,s],z.B1.BACK,i,t)),this.axes.push(new Ut(nt.XZ_PLANAR_TRANSLATE,Xe,$e,this.state,t,[n,a]),...this.rotationAxes,n,s,a),this.add(...this.axes)},(new ht.GLTFLoader).load(ut,(e=>{var t;let i,n=1;if(e.scene){if(e.scene.traverse((e=>{e.isMesh&&!i&&(i=e)})),!i)throw new Error("Failed to load arrowhead mesh geometry -- this is a build issue.");i.removeFromParent(),i.geometry.computeBoundingSphere();const a=null===(t=i.geometry.boundingBox)||void 0===t?void 0:t.getSize(new s.Vector3);a&&(n=a.y);const o=1/n;i.geometry.scale(o,o,o),i.updateMatrix(),c(i)}})),this.frustumCulled=!1}attachToObjects(e,t,i){this.detachFromObjects(),0!==e.length&&(this.visible=!0,this.state.toTransform.push(...e.slice()),this.placeGizmo(t,i),this.bindings.renew())}detachFromObjects(){this.state.toTransform.length=0,this.state.toTransformDragStartInfo.clear(),this.visible=!1,this.bindings.cancel()}onStartDrag(e){return this.startDragListeners.add(e),(0,ot.Sh)((()=>this.startDragListeners.add(e)),(()=>this.startDragListeners.delete(e)))}onDrag(e){return this.dragListeners.add(e),(0,ot.Sh)((()=>this.dragListeners.add(e)),(()=>this.dragListeners.delete(e)))}onEndDrag(e){return this.endDragListeners.add(e),(0,ot.Sh)((()=>this.endDragListeners.add(e)),(()=>this.endDragListeners.delete(e)))}setActions(e){this.actionButtons.setActions(e)}setLocked(e){this.locked=e}placeGizmo(e,t){const i=this.state.toTransform;if(!e){e=new s.Vector3;const t=new s.Box3,n=i.filter((e=>e.visible));for(const e of n)t.expandByObject(e);t.getCenter(e)}if(!t&&(t=new s.Quaternion,1===i.length)){const n=e=>{if(e instanceof s.Object3D){if(e===i[0])return!0;let t=!1;return e.traverseAncestors((e=>t||(t=e===i[0]))),t}return!1},a=this.raycaster.pointer.cast().filter((e=>n(e.object)));if(a.length){const i=a[0];if(e.copy(i.point),i.object instanceof s.Object3D&&i.face&&Math.abs(i.face.normal.y)<.1){const e=(new s.Vector3).copy(i.face.normal),n=(new s.Matrix3).setFromMatrix4(i.object.matrixWorld);e.applyNormalMatrix(n),e.y=0,e.normalize(),t.setFromUnitVectors(z.B1.FORWARD,e)}}}this.state.controlOrigin.copy(e),this.state.controlOrientation.copy(t)}setTheme(e){this.actionButtons.setTheme(e)}init(){}render(e){}beforeRender(e){var t,i;this.inactiveComponentOpacity.tick(e);for(const e of this.axes)e!==this.currentAxis&&e.setOpacity(this.inactiveComponentOpacity.value);this.actionButtons.setOpacity(this.inactiveComponentOpacity.value),null===(t=this.currentAxis)||void 0===t||t.setOpacity(1);for(const t of this.axes)null===(i=t.tick)||void 0===i||i.call(t,e);const n=this.state.toTransform.findIndex((e=>e.visible));this.visible=-1!==n,this.actionButtons.update(e)}onBeforeRender(e,t,i,n,s,a){super.onBeforeRender(e,t,i,n,s,a),e.getCurrentViewport(this._viewport);i.getWorldPosition(this._cameraWorldPos);const o=144/(0,g.Nv)(new st.u(i.projectionMatrix),this._cameraWorldPos,this.state.controlOrigin,this._viewport.height/e.getPixelRatio(),1),r=144/(0,g.w$)(new st.u(i.projectionMatrix),this._cameraWorldPos,this.state.controlOrigin,this._viewport.width/e.getPixelRatio(),1),l=Math.min(r,o);this.scale.setScalar(l),this.state.scale=l,this.updateMatrixWorld(!0)}dispose(){var e;null===(e=this.cameraSub)||void 0===e||e.cancel(),this.bindings.cancel()}activate(e,t){}deactivate(e){}setInactiveOpacity(e){this.inactiveComponentOpacity.modifyAnimation(this.inactiveComponentOpacity.value,e,150)}}var Bt=i(62193),jt=i(35956);const Kt=new c.Vy("sdk interface loader");class zt{constructor(){this.module=null,this.loaderReady=new u.i,this.loader=null}setLoader(e){this.loader||(this.loader=e,this.loaderReady.resolve())}async getModule(){if(this.module)return this.module;if(await this.loaderReady,this.loader&&(this.module=await this.loader()),this.module)return this.module;throw new Error("There was an error setting up the factory")}}async function Yt(e,t,i,d,c,u,S,O){const g=new m.o;let _;try{if(Array.isArray(i.interfaces)){const e=i.interfaces.map((e=>{const t=new URL(e);return u&&t.searchParams.append("applicationKey",u),g.load(t.href)}));_=await Promise.all(e)}else{if(!i.interface){throw Error("No sdk interface found in config")}{const e=new URL(i.interface);u&&e.searchParams.append("applicationKey",u),_=[await g.load(e.href)]}}}catch(e){const t="Unable to fetch the sdk interface. The sdk will be disabled. "+e;throw Kt.error(t),Error("Unable to fetch the sdk interface. The sdk will be disabled. "+e)}const q={THREE:s,jsonSchemaValidator:O},re=(0,Fe.H)({baseUrl:S})(),le={Mattertag:jt.Q,MpSdkAuthentication:T.u,RenderLayers:o.H,OptionsKey:A.Q$,Application:r.lg,AppPhase:r.Jj,AppPhaseChangeMessage:l.uv,CameraTransitionType:v.fl,StartMoveToFloorMessage:f.G,EndMoveToFloorMessage:N.P,MattertagMediaType:xe.yg,TagDescriptionChunkType:I.q,TagLinkType:L.J,MattertagLinkOpenedMessage:R.Qn,ModelDataLoadedMessage:y.A,ModelColliderTarget:b.r,NavigateToSweepCommand:D.aj,ModelViewChangeCompleteMessage:ee.tj,MeasuringPhase:he.hb,SettingGetCommand:x.y,SettingUpdateCommand:H.h,PuckCollider:U.UJ,PinClickedMessage:M.oX,PinHoverChangeMessage:M.RG,PinHeadMesh:P.R,InstancedPinHeads:C.k,PinType:k.yY,FocusOnPinInsideCommand:D.E4,SweepAlignmentType:F.c$,SweepPlacementType:F.EO,BeginMoveToSweepMessage:G.A,EndMoveToSweepMessage:V.A,SweepNeighborModifyCommand:Ue.WS,ToggleToolCommand:W.yU,Tools:B.S0,TourStartedMessage:j.zM,TourStoppedMessage:j.pT,TourEndedMessage:j.YH,TourSteppedMessage:j.n1,Color:K.V,Vectors:z.B1,Viewmode:Y.N,CommandViewmode:$.w5,ChangeViewmodeCommand:$.S2,BeginSwitchViewmodeMessage:X.A,EndSwitchViewmodeMessage:Q.A,GetScreenPositionCommand:fe.R,ZoomInCommand:Ne.EG,ZoomResetCommand:Ne.i9,ZoomSetCommand:Ne.hd,SourceType:Le.Y,sensorVolumes:{sphere:Re.I,box:ye.M,cylinder:be.z},TourState:De.Ci,MediaType:Me.zu,DeactivateIdleModeCommand:Z,SetIdleModeTimeoutCommand:J,EndToggleDefurnishViewMessage:ee.Yp,EnableInputCommand:te.TY,DisableInputCommand:te.q$},de=$t(t,re),Ie=function(e,t,i){const n=(async()=>(await e.getModuleBySymbol(E.qL)).getApi())(),s=e.getModuleBySymbol(E.qy);return{api:n,applicationData:e.market.waitForData(r.zH),cameraData:e.market.waitForData(ie.M),cameraModule:e.getModuleBySymbol(E.jh),cameraStartModule:e.getModuleBySymbol(E.di),canvasData:e.market.waitForData(ne.p),cursorController:e.getModuleBySymbol(E._v),deepLinks:e.getModuleBySymbol(h.r),locale:e.getModuleBySymbol(E.gS),externalR3FModule:e.getModuleBySymbol(E.kG),floorData:e.market.waitForData(se.q),floorViewData:e.market.waitForData(ae.X),floorViewDataModule:e.getModuleBySymbol(E.QW),labelData:e.market.waitForData(oe.B),layersModule:e.getModuleBySymbol(E.az),layersData:e.market.waitForData(ce.P),mattertagData:e.market.waitForData(ue.j),mattertagDataModule:e.getModuleBySymbol(E.N9),measurementModeData:e.market.waitForData(me.s),modelData:e.market.waitForData(pe.q),pinViewData:e.market.waitForData(w.U),annotationsViewData:e.market.waitForData(Pe.o),tagsViewData:e.market.waitForData(ke.r),plugin:e.getModuleBySymbol(E.N4),raycasterData:e.market.waitForData(Ee.$),roomData:e.market.waitForData(Se.q),roomBoundData:e.market.waitForData(Oe.A),roomBoundViewData:e.market.waitForData(ge.B),settingsData:e.market.waitForData(_e.o),sweepData:e.market.waitForData(Te.A),tourData:e.market.waitForData(Ae.R),viewmodeData:e.market.waitForData(ve.X),appPhaseModule:e.getModuleBySymbol(p.WJ),annotationsModule:e.getModuleBySymbol(E.Et),tagsModule:e.getModuleBySymbol(E.lN),attachmentsModule:s,commonControlsModule:e.getModuleBySymbol(E.X7),floorCasterModule:e.getModuleBySymbol(E.Xx),pinsModule:e.getModuleBySymbol(E.kd),meshQuery:e.getModuleBySymbol(E.PM),modelMeshModule:e.getModuleBySymbol(E.GR),meshData:e.market.waitForData(we.U),navigationModule:e.getModuleBySymbol(E.Kv),renderToTextureModule:e.getModuleBySymbol(E.kM),sceneModule:t.scene.getModule(),sensorModule:e.getModuleBySymbol(E.J$),settingsModule:e.getModuleBySymbol(p.ZF),tourControlsModule:e.getModuleBySymbol(E.Xf),webglRendererModule:e.getModuleBySymbol(E.M7),zoomControlModule:e.getModuleBySymbol(E.et),sweepTextureLoader:e.getModuleBySymbol(E.wY),pluginData:e.market.waitForData(Ce.C),pluginUiData:e.market.waitForData(Bt.kR),pluginConfigData:e.market.waitForData(He.Y7),modelApiClient:Promise.resolve(i),analytics:e.getModuleBySymbol(E.aF)}}(t,d,re);for(const s of _){const a=new n.mc(t.diContainer);await s.setup(e,q,le,de,Ie,t.getModuleBySymbol(E.qL),{sandboxPath:i.sandbox,logLevel:c},a)}t.diContainer.get(a.aX).resolve()}function $t(e,t){return{loadImage:S.y,waitForUpdate:()=>e.after(d.R.End),waitForBegin:()=>e.after(d.R.Begin),subscribe:(t,i)=>e.subscribe(t,i),unsubscribe:(t,i)=>e.unsubscribe(t,i),addBinding:e.commandBinder.addBinding.bind(e.commandBinder),issueCommand:e.commandBinder.issueCommand.bind(e.commandBinder),requestTarget:()=>e.commandBinder.issueCommand(new O.q6),getRenderLayer:t=>e.getRenderLayer(t),jpegAsBase64:Ie.G8,encodeRenderTarget:Ie.uz,getXmp:Ie._h,getOrientedAngleTo:g.Vg,screenPositionToNDC:_.wc,ndcToWorldPosition:_.OG,worldToScreenPosition:_.bz,getTagsQuery:We(t,(0,Ge.V)()),isMpFontId:e=>e in Be.J,getModelViewsQuery:le(t,(0,de.o)()),makeTransformGizmo:async t=>{const i=await async function(e,t=it,i=!1){const[n,s,a,o,r]=await Promise.all([e.getModuleBySymbol(E.mL),e.getModuleBySymbol(E.sA),e.market.waitForData(ie.M),e.getModuleBySymbol(E.gS),e.getModuleBySymbol(p.ZF)]),l=r.getSetting("assetBasePath"),d=r.getSetting("dracoDecoderPath");return new Wt(n,s,a,l,o.languageCode,d,t,i)}(e,t),n=e.getModuleBySymbolSync(p.S1);return e.addComponent(n,i),{transformGizmo:i,disposable:{dispose:function(){e.removeComponent(n,i),i.dispose()}}}}}}},88090:(e,t,i)=>{"use strict";i.d(t,{K4:()=>c,L8:()=>a,T6:()=>u,XT:()=>s,_r:()=>h,bW:()=>n,bw:()=>o,q0:()=>d,uH:()=>l,ur:()=>r});const n="IErrorGui",s="ILoadingGui",a="IModelMeshQualityModule",o="IQuickMenus",r="IShowcaseHotkeys",l="IShowcaseGui",d="IShowcasePasswordModule",c="IShowcaseSettings",u="IShowcaseStart",h="IShowcaseWebGLContextLoss"},33424:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>qn});var n=i(96540),s=i(5338),a=i(64882),o=i(74381),r=i(45987),l=i(14614),d=i(9139),c=i(82748),u=i(27200),h=i(17084),m=i(19389),p=i(48270),E=i(16876),S=i(32485),O=i.n(S),g=i(77570),_=i(56147),T=i(64200),A=i(93136),v=i(86867),f=i(53794),N=i(36918),I=i(39869),L=i(64123),R=i(68375),y=i(74848);function b(e){let{name:t,id:i,active:s,onChange:a}=e;const o=(0,R.s)(),r=(0,n.useCallback)((()=>{const e=(i||"all").toLowerCase();o.trackGuiEvent(`visibility_toggled_${e}`),a(i,!s)}),[s,i,o,a]),l=(0,n.useCallback)((async e=>{r(),e.stopPropagation(),e.preventDefault()}),[r]);return(0,y.jsx)(y.Fragment,{children:(0,y.jsx)(m.$,{className:"visibility-p-button",label:t,variant:p.A.TERTIARY,size:p.M.SMALL,onClick:l,active:!1,children:(0,y.jsx)("span",{className:"toggle-wrapper visibility-p-toggle",onClick:e=>{r(),e.stopPropagation(),e.preventDefault()},children:(0,y.jsx)(L.l,{toggled:s,onToggle:r,enabled:!0,onOffLabel:!1,testId:"VisibilityPToggle"})})})})}var D=i(81815),M=i(50690);function P(e){const[t,i]=(0,n.useState)(e.visibilityData);(0,n.useEffect)((()=>{i(e.visibilityData)}),[e.visibilityData]);const s=(0,I.Y)(),a=(0,R.s)(),o=Object.entries(t).length>1,r=(0,n.useCallback)((()=>{a.trackGuiEvent("toggle_plugin_visibility_controls")}),[a]),l=s.t(_.A.HELP_MORE_EXTRAS_A),d=O()(),c=()=>Object.values(t).every((e=>!!e.visible)),u=(n,s)=>{const a=c();i((e=>Object.fromEntries(Object.entries(e).map((e=>{let[t,i]=e;return[t,{...i,visible:!a}]}))))),e.onToggle(Object.keys(t),!a)},h=(n,s)=>{i((e=>({...e,[n]:!e[n]}))),e.onToggle([n],!t[n].visible)},m=Object.entries(t||{}).map((e=>{let[t,{visible:i}]=e;return(0,y.jsx)(b,{id:t,name:s.T(M.Q._COMMON_.TITLE,t),active:i,onChange:h},t)}));return o&&m.push((0,y.jsx)(b,{id:null,name:s.t(_.A.PLUGIN_CHANGE_ALL),active:c(),isHeader:!0,onChange:u},"0-all")),m.push((0,y.jsxs)("div",{className:"menu-header",onClick:e=>{e.stopPropagation(),e.preventDefault()},children:[(0,y.jsx)("span",{className:"title",children:s.t(_.A.PLUGIN_VISIBILITY)}),(0,y.jsx)("span",{className:"show-hide",children:s.t(_.A.PLUGIN_V_TOGGLE_LABEL)})]},"1-header")),m.reverse(),(0,y.jsx)(D.y,{buttonClassName:d,onClick:r,variant:p.A.TERTIARY,ariaLabel:l,tooltip:l,icon:"visibility",theme:"overlay",menuClassName:"visibility-p-controls-menu",menuTheme:"dark",menuPlacement:"top",children:m})}var k=i(62193),w=i(98236);const C=e=>{let{className:t}=e;const[i,s]=(0,n.useState)({}),[a,o]=(0,n.useState)(!1),r=(0,w.Ez)(k.kR);return(0,n.useEffect)((()=>{let e;return(async()=>{if(r){const t=()=>{s(r.visibilityData.deepCopy()),o(r.visibilityData.entries().length>0)};e=r.visibilityData.onChanged(t),t()}})(),()=>{e?.cancel()}}),[r]),a?(0,y.jsx)("div",{className:O()("feature-p-selector",t),children:(0,y.jsx)(P,{visibilityData:i,onToggle:r?.setVisibility.bind(r)})}):null};var x=i(80303),H=i(22213),U=i(81088),F=i(90087);function G(){const e=(0,I.Y)(),t=(0,F.L)(),i=(0,n.useCallback)((()=>{t.issueCommand(new U.X6(H.a.VR_SELECT,!0))}),[t]),s=e.t(_.A.VIEW_IN_VR);return(0,y.jsx)(m.$,{className:"view-in-vr",onClick:i,ariaLabel:s,ariaHasPopup:"dialog",tooltip:s,tooltipOptions:{placement:"top"},icon:"vr",theme:"overlay",variant:p.A.TERTIARY})}var V=i(36065),W=i(96425),B=i(35447),j=i(20246),K=i(73566);var z;!function(e){e[e.flash=0]="flash",e[e.expanded=1]="expanded",e[e.collapsed=2]="collapsed"}(z||(z={}));var Y=i(56271);var $=i(71687);const X=new d.Vy("pause-button");class Q extends n.Component{justEnded=!1;static contextType=(()=>g.B)();constructor(e){super(e),this.state={justPaused:!1}}componentDidUpdate(){this.state.justPaused&&this.setState({justPaused:!1}),this.justEnded=!1}UNSAFE_componentWillReceiveProps(e){!this.props.tourPlaying||e.tourPlaying||this.justEnded||this.setState({justPaused:!0}),this.props.tourEnded&&(this.justEnded=!0)}stopTour=async e=>{this.context.analytics.trackGuiEvent("tour_stopped");try{this.context.engine.getModuleBySymbol($.Xf).then((e=>e.stopTour()))}catch(e){X.debug(e)}};render(){const{tourPlaying:e}=this.props,{justPaused:t}=this.state;return(0,y.jsx)("div",{id:"pause-button",onClick:this.stopTour,onTouchMove:this.stopTour,onTouchStart:this.stopTour,"data-cy":"pause-button",children:!e&&(0,y.jsx)("img",{src:"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iODQiIGhlaWdodD0iODQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJNNDIgMEMxOC43OSAwIDAgMTguNzkgMCA0MnMxOC43OSA0MiA0MiA0MiA0Mi0xOC43OSA0Mi00MlM2NS4yMSAwIDQyIDB6IiBmaWxsLW9wYWNpdHk9Ii4yNSIgZmlsbD0iIzAwMCIgZmlsbC1ydWxlPSJub256ZXJvIi8+PHBhdGggZD0iTTUxLjUgNTdoLTJhLjUuNSAwIDAxLS41LS41di0yOGEuNS41IDAgMDEuNS0uNWgyYS41LjUgMCAwMS41LjV2MjhhLjUuNSAwIDAxLS41LjV6TTM0LjUgNTdoLTJhLjUuNSAwIDAxLS41LS41di0yOGEuNS41IDAgMDEuNS0uNWgyYS41LjUgMCAwMS41LjV2MjhhLjUuNSAwIDAxLS41LjV6IiBmaWxsPSIjRkZGIi8+PC9nPjwvc3ZnPg==",className:O()({justPaused:t}),alt:"","aria-hidden":"true"})})}}var q=i(56208),Z=i(46793),J=i(48411),ee=i(73918);function te(){const e=(0,R.s)(),t=(0,F.L)(),i=(0,I.Y)(),n=(0,J.T)()===K.S0.NOTES,s=i.t(_.A.NOTES_MODE);return(0,y.jsx)(ee.Q,{className:"notes-mode-button",icon:"comment-outline",active:n,onClick:()=>{const i=!n;i&&e.trackGuiEvent("notes_mode_click_open"),t.issueCommand(new h.yU(K.S0.NOTES,i))},tooltip:s,nudgeDisabled:!0},"notes-mode-button")}var ie=i(87965),ne=i(33177),se=i(38039);function ae(){const e=(0,R.s)(),t=(0,F.L)(),i=(0,I.Y)(),n=(0,J.T)(),s=n===K.S0.MEASUREMENTS,a=i.t(_.A.TOOLS.MEASUREMENTS),o=i.t(_.A.MEASUREMENT_NUDGE_TITLE),r=i.t(_.A.MEASUREMENT_NUDGE_MESSAGE),l=ie.Y.MeasurementUserNudgeSeen,d=se.Z,{show:c,dismiss:u}=(0,ne.F)(ne.m.Measurements);return(0,y.jsx)(ee.Q,{className:"measure-mode-button",icon:"tape-measure",active:s,onClick:()=>{const i=!s;i&&e.trackToolGuiEvent("measurements","measure_mode"),t.issueCommand(new h.yU(K.S0.MEASUREMENTS,i))},tooltip:a,nudgeDisabled:!!n,nudgeFeatureKey:d,nudgeTitle:o,nudgeMessage:r,nudgeLocalStorage:l,onNudgeDismissed:()=>{e.trackGuiEvent("measurement_nudge_dismissed")},showTimeout:c,dismissTimeout:u},"measure-mode-button")}var oe=i(97638),re=i(57447),le=i(68419),de=i(5262),ce=i(5275),ue=i(15498),he=i(98557);function me(){const e=(0,J.T)(),t=(0,le.t)(),i=(0,de.i)(re.n,!1),n=(0,ce.U)(),s=(0,ue.l)(),a=n&&!e&&s===W.cR.LEGACY,o=!e,r=!t||t===H.a.TERMS;return(0,y.jsx)("div",{className:O()("footer-ui",{"footer-ui-shaded":a,disabled:!r}),children:o&&(0,y.jsx)(he.w,{openModal:t,disabled:!r,modelRatingEnabled:i})})}var pe=i(14227),Ee=i(41299),Se=i(58480),Oe=i(77363),ge=i(87766),_e=i(56369),Te=i(12103),Ae=i(16281);class ve extends n.Component{static contextType=(()=>g.B)();isUnmounting=!1;onResize;bindings=[];viewmodeToClass=(()=>({[Z.w5.INSIDE]:"inside",[Z.w5.OUTSIDE]:"outside",[Z.w5.DOLLHOUSE]:"dollhouse",[Z.w5.FLOORPLAN]:"floorplan",[Z.w5.TRANSITIONING]:"transitioning"}))();tourModule;constructor(e,t){super(e,t),this.state={viewportHeight:(0,Oe.J)(t).height,autohide:!1,reelSeen:!1,minimalistMode:!1},this.onResize=(0,T.s)(this.updateViewportSize,250)}componentDidMount(){const{messageBus:e,market:t,engine:i,settings:n}=this.context,s=n.tryGetSetting(Te.Vg,!1);this.setState({minimalistMode:s}),this.bindings.push(n.onSettingChanged(Te.Vg,(e=>{this.setState({minimalistMode:!!e})}))),i.getModuleBySymbol($.XQ).then((e=>{this.isUnmounting||(this.tourModule=e,this.checkShowReel())})),t.waitForData(Se.G).then((e=>{this.isUnmounting||this.bindings.push(e.onPropertyChanged("size",this.onResize))})),this.bindings.push(e.subscribe(j.Vk,this.onViewingControlsToggle))}componentWillUnmount(){this.isUnmounting=!0,this.bindings.map((e=>e.cancel()))}componentDidUpdate(e){!(e.tourState.totalSteps>0)&&this.props.tourState.totalSteps>0&&this.checkShowReel()}checkShowReel=()=>{const{tourState:e}=this.props,{settings:t}=this.context,i=t.tryGetSetting(q.Q$.HighlightReel,!0),{reelSeen:n}=this.state;if(e.totalSteps>0&&i&&!n){const e=this.getHlStartupValue();switch(e){case z.expanded:case z.flash:(0,A.c)(100).then((()=>this.showReel(e)))}}};getHlStartupValue(){const{settings:e}=this.context;if(e.getOverrideParam("note","")||e.getOverrideParam("tag",""))return z.collapsed;const t=this.props.tourState.highlights.some((e=>e.snapshot.is360))?z.expanded:z.flash,i=e.getOverrideParam("hl",t);return(0,v.U)(z,i)?i:t}showReel=e=>{this.isUnmounting||(this.tourModule?.toggleReel(!0),this.setState({reelSeen:!0}),e===z.flash&&(0,A.c)(3e3).then(this.dismissReel))};dismissReel=()=>{this.isUnmounting||this.tourModule?.toggleReel(!1)};onViewingControlsToggle=e=>{let{show:t}=e;this.setState({autohide:!t})};updateViewportSize=e=>{this.isUnmounting||this.setState({viewportHeight:e.height})};isReelEnabled=()=>{if(this.props.tourMode===W.cR.STORIES)return!0;return this.state.viewportHeight>=400&&(0,B.cJ)(this.context.settings)};isPluginSystemEnabled=()=>{const{settings:e}=this.context;return e.tryGetSetting(ge.XX,!1)};isFloorsEnabled=()=>{const{settings:e}=this.context,t=e.tryGetSetting(x.p,!0),i=e.tryGetSetting(q.Q$.FloorSelect,!0);return t&&i};toggleShareModal=()=>{const e=this.props.openModal===H.a.SHARE;this.context.analytics.trackGuiEvent("click_share_button"),this.context.commandBinder.issueCommand(new U.X6(H.a.SHARE,!e))};renderHighlightReel=()=>{const{openTool:e,tourState:t,tourMode:i}=this.props;if(e&&e!==K.S0.SEARCH)return null;const{tourPlaying:n,highlights:s,activeStep:a,transition:o}=t;return(0,y.jsx)(Y.F,{openTool:e,tourMode:i,transition:o,activeStep:a,highlights:s,tourPlaying:n})};renderRightControls=()=>{const e=[],{vrEnabled:t,shareEnabled:i}=this.props,n=(0,u.YR)();e.push((0,y.jsx)("span",{className:"divider"},"divider_1"));const s=this.context.locale.t(_.A.SOCIAL_SHARING),a={placement:"top"};return i&&e.push((0,y.jsx)(m.$,{onClick:this.toggleShareModal,ariaLabel:s,ariaHasPopup:"dialog",tooltip:s,tooltipOptions:a,icon:"share",style:(()=>{if(/[?&]nolink=1/.test(window.location.search)){return{display:"none"};}return {};})(),theme:"overlay",variant:p.A.TERTIARY},"toggle_share_modal")),t&&e.push((0,y.jsx)(G,{},"vr_modal_controls")),n&&e.push((0,y.jsx)(V.A,{},"fullscreen_controls")),e};render(){const{measurementsModeEnabled:e,notesEnabled:t,openModal:i,openTool:n,showStoryTour:s,toolPanelLayout:a,tourMode:o,tourState:r,unaligned:l,viewmode:d}=this.props,{tourPlaying:c,tourEnded:u,totalSteps:h,currentStep:m,highlights:p,hasTours:S}=r,{autohide:g,viewportHeight:_,minimalistMode:T}=this.state,{settings:A}=this.context,v=this.viewmodeToClass[d]||"",I=0===h,L=o===W.cR.STORIES,R=_>=400,b=this.isReelEnabled()&&!I,D=n!==K.S0.MEASUREMENTS,M=this.isFloorsEnabled(),P=this.isPluginSystemEnabled(),k=t&&!l,w=e&&!l,x=A.tryGetSetting(re.n,!1),U=c||s,F=g||!!i&&(i!==H.a.CTA||!L)&&!n,G={"logo-gradient":!0,"modal-open":!!i,"tour-playing":c,"stories-tour-showing":s&&!T,autohide:F},V=[],B=[(0,y.jsx)(f.f,{toolPanelLayout:a,activeTool:n,currentStep:m,highlights:p||[],tourPlaying:c,tourMode:o,hideReel:!R,hasTours:S,minimalistMode:T},"tour_controls")],j=[];return T||(B.push((0,y.jsx)(E.w,{className:"mode-controls",open:!U,children:(0,y.jsx)(Ae.n,{className:"showcase-viewmode-controls"},"mode_controls")},B.length)),M&&B.push((0,y.jsx)(E.w,{className:"mode-controls",open:!U,children:(0,y.jsx)(N.D,{viewmode:d,iconStyle:!0,className:"showcase-floor-controls"},"floor_controls")},B.length)),P&&B.push((0,y.jsx)(E.w,{className:"mode-controls",open:!U,children:(0,y.jsx)(C,{viewmode:d,className:"showcase-plugin-controls"},"plugin_visibility_controls")},B.length)),k&&B.push((0,y.jsx)(E.w,{className:"mode-controls",open:!U,children:(0,y.jsx)(te,{},"notes_mode_button")},B.length)),w&&(V.push(B.length),B.push((0,y.jsx)(E.w,{className:"mode-controls",open:!U,children:(0,y.jsx)(ae,{},"measurement_mode_button")},B.length))),V.push(B.length),B.push((0,y.jsx)(E.w,{className:"mode-controls",open:!U,children:(0,y.jsx)(_e.Y,{viewmode:d},"defurnish_mode_button")},B.length)),D&&j.push(...this.renderRightControls())),(0,y.jsxs)("div",{id:"bottom-ui",className:O()("bottom-ui",G,v),children:[(0,y.jsx)(Q,{tourPlaying:c,tourEnded:u}),(0,y.jsxs)(E.w,{className:O()("bottom-controls",{"faded-out":F||T}),open:!F,children:[(0,y.jsx)(oe.T,{className:"controls",leftControls:B,rightControls:j,highPriorityLeftControlIndices:V}),x&&(0,y.jsx)(pe.p,{})]}),!T&&b&&this.renderHighlightReel(),(0,y.jsx)(me,{})]})}}const fe=(0,Ee.F)(ve);var Ne=i(78197),Ie=i(64057),Le=i(78956),Re=i(72561),ye=i(50747),be=i(91406),De=i(79723);var Me=i(35404);var Pe=i(55285),ke=i(8323),we=i(69340),Ce=i(3645);var xe=i(98903),He=i(4717),Ue=i(92996),Fe=i(4130),Ge=i(56547),Ve=i(28577);function We(e,t,i){const n=i===Fe.co;function s(e,t){return e.enabled&&((0,Ge.xF)(e)||(0,Ge.V6)(e)||(0,Ge.XF)(e)||t&&(0,Ge.AF)(e))}const a=e&&s(e,!0),o=t.slice().filter((e=>s(e,!1)));return!(!a||n||o.length<2)}function Be(e,t,i){return!We(e,t,i)&&!!e&&((0,Ge.xF)(e)||(0,Ge.V6)(e))}function je(){const e=(0,de.i)(Ve.rX,!1),t=(0,He.G)(),i=(0,Ue.h)(),s=(0,xe.b)(Fe.GB),[a,o]=(0,n.useState)(e&&We(t,i,s));return(0,n.useEffect)((()=>(o(e&&We(t,i,s)),()=>{})),[e,t,i,s]),a}function Ke(){const e=(0,de.i)(Ve.rX,!1),t=(0,He.G)(),i=(0,Ue.h)(),s=(0,xe.b)(Fe.GB),[a,o]=(0,n.useState)(e&&Be(t,i,s));return(0,n.useEffect)((()=>(o(e&&Be(t,i,s)),()=>{})),[e,t,i,s]),a}var ze=i(47613),Ye=i(78379);function $e(){const e=(0,Ye.S)(),t=(0,ze._)(),[i,s]=(0,n.useState)(e&&(null==t?void 0:t.getCurrentUserLayers())||[]);return(0,n.useEffect)((()=>{if(!t)return()=>{};function i(){s(e&&(null==t?void 0:t.getCurrentUserLayers())||[])}const n=t.onCurrentLayersChanged(i);return i(),()=>n.cancel()}),[t,e]),i}var Xe=i(66022);function Qe(e){let{toolName:t,showing:i=!0,attached:n=!1}=e;const s=(0,R.s)(),a=(0,F.L)(),o=(0,I.Y)(),r=(0,be.M)(t),l=(0,J.T)();if(!r)return null;const{id:d,namePhraseKey:c,icon:u,analytic:S}=r,g=l===r.id,_=o.t(c),T=u.replace("icon-",""),A=n?"dark":"overlay";return(0,y.jsx)(E.w,{open:i,className:O()("top-tool-button",{"faded-out":!i}),children:(0,y.jsx)(m.$,{onClick:()=>{a.issueCommand(new h.yU(d,!g)),s.trackToolGuiEvent(S,`click_${S}_button`,{interactionSource:"gui"})},tooltip:_,tooltipOptions:{placement:"bottom"},icon:T,theme:A,variant:p.A.FAB,active:g})})}var qe,Ze=i(72909);let Je=(0,Ze.A)(qe=class extends n.Component{static contextType=(()=>g.B)();getFilteredValue(e,t,i,n){return!this.context.settings.tryGetSetting(t,i)||n&&!this.props.brandingEnabled?"":e}handleTitleClick=async e=>{e.stopPropagation();const{commandBinder:t,analytics:i}=this.context;await t.issueCommand(new h.yU(K.S0.SUMMARY,!0)),t.issueCommand(new h.li(!1)),i.trackGuiEvent("click_model_title",{interactionSource:"gui"})};render(){const{locale:e}=this.context,{className:t,modelDetails:i}=this.props,{name:n,presentedBy:s}=i,a=this.getFilteredValue(n,q.Q$.DetailsModelName,!0,!1),o=this.getFilteredValue(s,q.Q$.PresentedBy,!1,!0),r=o?`${e.t(_.A.PRESENTED_BY)}${o}`:"",l=`${a} ${r}`;return(0,y.jsx)("div",{id:"model-title",onClick:this.handleTitleClick,children:(0,y.jsx)(m.$,{id:"gui-name",variant:p.A.TERTIARY,onClick:this.handleTitleClick,className:O()(t,{"co-branded":!!r}),label:a,ariaLabel:l,theme:"dark",icon:"location",appendChildren:!1,children:!!r&&(0,y.jsx)("div",{className:"co-brand",children:(0,y.jsx)("span",{className:"title",id:"cobrandTitle",children:r})})})})}})||qe;var et=i(38939),tt=i(19072);var it=i(49812);var nt=i(21960),st=i(78834),at=i(94799);function ot(e){let{id:t,name:i,visible:n}=e;const s=(0,R.s)(),a=(0,at.j)($.az);return(0,y.jsx)(st.S,{className:"data-layer-menu-item",id:`layer-toggle-${t}`,label:i||"Untitled Layer",defaultChecked:n,onChange:e=>{const i=e.target;if(!i)return;const n=i.checked;a.layersData.toggleLayer(t,n),s.trackToolGuiEvent("layers","layers_toggle_layer")},onClick:e=>{e.stopPropagation()}})}var rt=i(16263);const{SHOWCASE:lt}=_.A;function dt(){const e=function(){const e=(0,it.h)(),[t,i]=(0,n.useState)((null==e?void 0:e.model.details.name)||"");return(0,n.useEffect)((()=>{if(!e)return()=>{};const t=e.onChanged((e=>{i(e.model.details.name)}));return i(e.model.details.name),()=>t.cancel()}),[e]),t}(),t=(0,He.G)(),i=(0,nt.x)(t?.id),s=$e(),a=(0,rt.s)("viewer"),o=(0,Ue.h)({includeDefurnish:a}),r=je(),l=Ke(),d=(0,R.s)(),c=(0,F.L)(),u=(0,I.Y)(),[h,E]=(0,n.useState)(!1),S=(0,tt.x)().getRootNode()instanceof ShadowRoot,g=async()=>{d.trackToolGuiEvent("layers","layers_view_goto_start_location"),await c.issueCommand(new et.W)},_=e=>{E(e)};if((0,n.useEffect)((()=>{if(!t||S)return;const{name:i}=t;let n;return n=(0,Ge.xF)(t)||(0,Ge.V6)(t)?`${e}: ${i}`:e,document.title=n,()=>{}}),[e,t,S]),!t)return null;const T=s.map((e=>{const{id:t,name:i,toggled:n}=e;return(0,y.jsx)(ot,{id:t,name:i,visible:n},t)})),A=u.t(lt.VIEWS.VIEW_SELECTOR_START_LOCATION_TOOLTIP),v=[];return o.forEach((e=>{const{id:i}=e,n=i===t.id,s=n&&T.length>0?T:void 0,a=s?"parent-menu-item":void 0;v.push((0,y.jsx)(ct,{view:e,active:n,className:a},i)),s&&v.push(...s)})),r&&o.length>1?(0,y.jsxs)("div",{className:O()("views-layers-toggles","model-view-selector",{open:h}),children:[(0,y.jsx)(m.$,{className:"start-location-btn",icon:"start-location",variant:p.A.PRIMARY,size:p.M.SMALL,onClick:g,tooltip:A}),(0,y.jsx)(D.y,{ariaLabel:i,menuClassName:"views-layers-menu",variant:p.A.PRIMARY,size:p.M.SMALL,label:i,onMenuToggled:_,caret:!0,children:v})]}):T.length>0?(0,y.jsx)("div",{className:O()("views-layers-toggles",{open:h}),children:(0,y.jsx)(D.y,{ariaLabel:u.t(lt.LAYERS.TOGGLE_LAYERS),menuClassName:O()("views-layers-menu","data-layers-only-menu"),variant:p.A.PRIMARY,size:p.M.SMALL,label:i,onMenuToggled:_,caret:!0,children:T})}):l?(0,y.jsx)("div",{className:"model-view-display",children:i}):null}function ct(e){let{view:t,active:i,className:n}=e;const s=(0,R.s)(),{id:a}=t,o=(0,nt.x)(a),r=(0,at.j)($.az),l=(0,at.j)($.di);return(0,y.jsx)(m.$,{className:O()("view-name",n),label:o,size:p.M.SMALL,onClick:async()=>{s.trackToolGuiEvent("layers","layers_view_switch"),l.setMoveCameraOnViewChange(!1),await r.setActiveModelView(a),l.setMoveCameraOnViewChange(!0)},active:i,variant:p.A.TERTIARY},a)}var ut=i(60818),ht=i(53289),mt=i(6909),pt=i(41616);const{SUBSCRIBER_PROMPT:Et}=_.A.SHOWCASE,St=e=>{e.preventDefault()},Ot=()=>{const e=(0,R.s)(),t=(0,I.Y)(),{popupDelay:i}=(0,ke.E)(),[s,a]=(0,n.useState)(0),[o,r]=(0,n.useState)(!1),[l,d]=(0,n.useState)(!0),[c,u]=(0,Pe.Mj)(Ce.ZZ,!1),h=(0,pt.J)(),p=h?.iconBlack;(0,ht.J)(mt.h,(e=>{if(o)return;const t=e.durationDollhouse+e.durationFloorplan+e.durationInside,n=s+t;ut.r.debug(`Check Visibility: ${n}/${i}ms, User has dismissed popup: ${c.toString()}`),n>=i&&!c&&r(!0),a(n)}));const E=(0,n.useCallback)((()=>{u(!0)}),[u]),S=(0,n.useCallback)((t=>{t.stopPropagation(),e.trackGuiEvent("subscriber_prompt_a_popup_dismissed"),E()}),[E,e]),O=(0,n.useCallback)((t=>{e.trackGuiEvent("subscriber_prompt_a_popup_cta_click"),window.open(Ce.oZ,"_blank"),E()}),[E,e]);return(0,n.useEffect)((()=>(o&&l&&(e.trackGuiEvent("subscriber_prompt_a_popup_viewed"),d(!1)),()=>{})),[e,o,l]),o?(0,y.jsxs)("div",{className:"subscriber-prompt-popup",onClick:O,children:[(0,y.jsx)("img",{className:"matterport-app-icon",alt:"Matterport App Icon",src:p,width:"48",height:"48"}),(0,y.jsxs)("div",{className:"subscriber-prompt-body",children:[(0,y.jsx)("div",{className:"h5 subscriber-prompt-heading",children:t.t(Et.POPUP_CTA_HEADING)}),(0,y.jsx)("a",{className:"link",target:"_blank",onClick:St,href:Ce.oZ,children:t.t(Et.POPUP_CTA_LINK_TEXT)})]}),(0,y.jsx)(m.$,{icon:"close",onClick:S})]}):null};var gt=i(80490),_t=(i(19178),i(88131)),Tt=i(43718),At=i(73943),vt=i(88581);var ft=i(39833);const{ROOMS:Nt}=_.A.SHOWCASE;function It(e){const t=(0,I.Y)(),{additionalPanel:i}=e,s=(0,At.a)()===l.Jj.PLAYING,a=function(){const e=(0,vt.o)(),[t,i]=(0,n.useState)(!1);return(0,n.useEffect)((()=>{if(!e)return()=>{};const t=()=>{i(0===e.insideModeTransitionProgress())},n=e.onChanged(t);return t(),()=>n.cancel()}),[e]),t}(),o=!!(0,ft.X)(),r=(0,Tt.v)()&&a&&s&&o;if(!i&&!r)return null;const d=i?20:20.01,c=t.t(Nt.SETTINGS);return(0,y.jsxs)(gt.Q,{icon:"settings",tooltip:c,theme:"overlay",variant:p.A.FAB,tooltipPlacement:"bottom",analytic:"showcase_settings_click",className:"showcase-settings",preventOverflow:{padding:d},children:[(0,y.jsx)(_t.l,{allowImageryToggle:!0}),i]})}function Lt(e){const{brandingEnabled:t,modelDetails:i,tourPlaying:s,toolElements:a,toolSettings:o}=e,r=(0,Ne.A)(),l=(0,J.T)(),d=(0,le.t)(),c=(0,Ee.K)(),u=(0,de.i)(Te.Vg,!1),h=function(){const e=(0,be.M)(K.S0.SEARCH),t=(0,ye.F)();return!!t&&(0,De.W)(t)&&!!e}(),m=(0,Re.h)(),p=function(){const e=je(),t=Ke(),[i,s]=(0,n.useState)(e||t);return(0,n.useEffect)((()=>(s(e||t),()=>{})),[e,t]),i}(),S=function(){const e=$e(),[t,i]=(0,n.useState)(e.length>0);return(0,n.useEffect)((()=>(i(e.length>0),()=>{})),[e.length]),t}(),g=(p||S)&&!u,_=function(){const e=(0,de.i)(Me.wx,!0),t=(0,de.i)(q.Q$.DetailsModelName,!0);return e&&t}()&&i,T=!!_&&!m&&(!g||r.width>Te.IU),A=(()=>{const e=(0,we.l)(),t=(0,ke.E)(),i=(0,Pe.QH)(Ce.ZZ);return t.popupEnabled&&e&&!i})(),v=(0,Ie.J)(),f=(0,Le.O)();if(!v&&f===K.L$.BOTTOM_PANEL)return null;if(!(h||_||m||g||a))return null;const N=s||c,I=l||d||N,L=!T||N||l,R=!!i,b=!R||N;return(0,y.jsxs)(y.Fragment,{children:[A&&!l&&(0,y.jsx)(Ot,{}),(0,y.jsxs)("div",{className:"top-ui",children:[h&&!u&&(0,y.jsx)(E.w,{open:!I,className:O()("top-ui-button",{"faded-out":I}),children:(0,y.jsx)(Qe,{toolName:K.S0.SEARCH})}),(0,y.jsxs)("div",{className:"child-container",children:[(0,y.jsx)(E.w,{open:m&&!N,className:O()("floor-name-container",{collapsed:!m||I}),children:(0,y.jsxs)("div",{children:[(0,y.jsx)(Xe.P,{}),h&&(0,y.jsx)("div",{className:"search-button-spacer"})]})}),_&&(0,y.jsx)(E.w,{open:T&&!N&&!l,className:O()("title-bar-container",{collapsed:L}),children:(0,y.jsx)(Je,{modelDetails:i,brandingEnabled:!!t})}),g&&(0,y.jsx)(E.w,{open:g&&!I,className:O()("model-view-container",{collapsed:!g||I}),children:(0,y.jsx)(dt,{})})]}),(0,y.jsxs)(E.w,{open:R,className:O()("top-ui-tool-container",{collapsed:b}),children:[(0,y.jsx)(It,{additionalPanel:o}),a]})]})]})}var Rt=i(76786),yt=i(50178),bt=i(22937);function Dt(e){const[t,i]=(0,n.useState)(!1),[s,a]=(0,n.useState)(!1),o=(0,n.useCallback)((e=>{i(e.isOpen)}),[]),r=(0,n.useCallback)((e=>{a(e.suppress)}),[]),l=(0,n.useCallback)((()=>{a(!0)}),[]),d=(0,n.useCallback)((()=>{a(!1)}),[]);(0,ht.J)(yt.XR,o),(0,ht.J)(yt.c7,r),(0,ht.J)(bt.zM,l),(0,ht.J)(bt.pT,d);const c=t&&!s;return(0,y.jsx)("div",{className:"overlay-ui",children:(0,y.jsx)(Rt.A,{showing:c})})}var Mt=i(80701),Pt=i(92065),kt=i(40076),wt=i(43960),Ct=i(28422),xt=i(77897),Ht=i(27612),Ut=i(53061);const Ft={"en-US":"./terms/terms-en-US.html",es:"./terms/terms-es-MX.html",fr:"./terms/terms-fr-FR.html",de:"./terms/terms-de-DE.html",ru:"./terms/terms-ru-RU.html",ja:"./terms/terms-ja-JP.html","zh-CN":"./terms/terms-zh-CN.html","zh-TW":"./terms/terms-zh-TW.html",ko:"./terms/terms-ko-KR.html",nl:"./terms/terms-nl-NL.html",it:"./terms/terms-it-IT.html",pt:"./terms/terms-pt-BR.html"};class Gt extends n.Component{static contextType=(()=>g.B)();termsTextDiv;scrollbars;isUnmounting=!1;resizeSubscription;constructor(e,t){super(e,t),this.state={termsText:"",hideScrollbar:(0,Ht.c)((0,Oe.J)(t)),scrollClass:xt.BB.None}}async componentDidMount(){const e=function(e){if((0,Ut.D4)(e)&&e in Ft)return Ft[e]}(this.context.locale?this.context.locale.languageCode:Ut.Nm);let t="";if(e)try{t=await this.context.queue.get(e)}catch(e){t=this.context.locale.t(_.A.TERMS_FAIL)}else t=this.context.locale.t(_.A.TERMS_FAIL);this.context.market.waitForData(Se.G).then((e=>{this.isUnmounting||(this.resizeSubscription=e.onPropertyChanged("size",(e=>{this.setState({hideScrollbar:(0,Ht.c)(e)})})))})),window.requestAnimationFrame((()=>{this.isUnmounting||this.setState({termsText:t})}))}componentWillUnmount(){this.isUnmounting=!0,this.resizeSubscription?.cancel()}componentDidUpdate(e,t){this.state.termsText!==t.termsText&&(this.termsTextDiv.innerHTML=this.state.termsText,[].slice.call(this.termsTextDiv.querySelectorAll("a")).forEach((e=>{e.setAttribute("target","_blank"),e.classList.add("link")})))}onScrollPositionChange=()=>{this.scrollbars&&this.setState({scrollClass:this.scrollbars.scrollPosition.vertical})};onClose=()=>{this.context.commandBinder.issueCommand(new U.X6(H.a.TERMS,!1))};setScrollbars=e=>{e&&(this.scrollbars=e)};setTermsTextDiv=e=>{e&&(this.termsTextDiv=e)};render(){const{hideScrollbar:e,scrollClass:t}=this.state;return(0,y.jsxs)(wt.l,{className:O()("terms-modal","full-modal",t),theme:"dark",onClose:this.onClose,children:[(0,y.jsx)(Ct.J,{theme:"dark",onClose:this.onClose}),(0,y.jsx)("div",{id:"terms-wrapper",children:(0,y.jsx)(kt.A,{name:"terms",ref:this.setScrollbars,onScrollPositionChange:this.onScrollPositionChange,forceHidden:e,children:(0,y.jsx)("div",{ref:this.setTermsTextDiv,id:"terms-text"})})})]})}}var Vt,Wt=i(4896),Bt=i(91977),jt=i(94165);!function(e){e.MAIL="mail",e.META="meta",e.PINTEREST="pinterest",e.LINKEDIN="linkedin",e.TWITTER="twitter",e.FACEBOOK="facebook",e.COPYLINK="copylink",e.NATIVE="native"}(Vt||(Vt={}));const{FACEBOOK:Kt,TWITTER:zt,MAIL:Yt,META:$t,PINTEREST:Xt,LINKEDIN:Qt,COPYLINK:qt,NATIVE:Zt}=Vt,Jt={[Yt]:"em",[$t]:"mt",[Xt]:"pn",[Qt]:"ln",[zt]:"tw",[Kt]:"fb",[qt]:"cp",[Zt]:"os"},ei={[Kt]:{width:626,height:436},[zt]:{width:550,height:440},[Xt]:{width:750,height:749},[Qt]:{width:550,height:453},[qt]:{},[Yt]:{},[$t]:{},[Zt]:{}},ti=async(e,t=!0)=>{let i;const n=await e.engine.getModuleBySymbol(jt.r),s=["ref","gclid","fbclid","cloudEdit","back","note","comment","apiHost","applicationKey","host","sdkKey","tag"],a=e=>!s.includes(e);return i=t?n.creator.createDeepLink({paramFilter:a}):n.creator.createLink({paramFilter:a}),i.searchParams.forEach(((e,t)=>{(s.includes(t)||0===t.indexOf("utm_"))&&i.searchParams.delete(t)})),decodeURIComponent(i.href)},ii=e=>new URLSearchParams(e).toString(),ni=(e,t,i)=>{const n=e.replace("?",`?ref=${Jt[Kt]}&`);return`http://www.facebook.com/sharer.php?${ii({display:"popup",u:n})}`},si=(e,t,i)=>{const n=e.replace("?",`?ref=${Jt[zt]}&`),s={text:i.t(_.A.SHARED_MESSAGE_HASHTAG,{title:t,url:n,hashtag:"#Matterport"})};return`http://twitter.com/intent/tweet?${ii(s)}`},ai=(e,t,i)=>{const n=e.replace("?",`?ref=${Jt[Yt]}&`),s={subject:i.t(_.A.SHARED_TITLE,{title:t}),body:i.t(_.A.SHARED_MESSAGE,{title:t,url:n})};return`mailto:?${ii(s)}`},oi=e=>{const t=e.replace("?",`?ref=${Jt[$t]}&qs=1&`);return`https://www.oculus.com/open_url/?${ii({url:t})}`},ri=(e,t,i,n)=>{const s={url:e.replace("?",`?ref=${Jt[Xt]}&`),media:i,description:n.t(_.A.SHARED_TITLE,{title:t})};return`http://pinterest.com/pin/create/link/?${ii(s)}`},li=(e,t,i)=>{const n=e.replace("?",`?ref=${Jt[Qt]}&`);return`https://www.linkedin.com/shareArticle?${ii({mini:"true",url:n})}`},di=(e,t,i,n)=>({[Kt]:ni(e),[zt]:si(e,t,n),[Yt]:ai(e,t,n),[Xt]:ri(e,t,i,n),[Qt]:li(e),[$t]:oi(e),[qt]:e,[Zt]:e});var ci=i(21320),ui=i(26059),hi=i(86721);const mi=new d.Vy("vr-select");class pi extends n.Component{isUnmounting=!1;static contextType=(()=>g.B)();async componentDidMount(){ci.A.apiExists()&&navigator.xr?.addEventListener("ondevicechange",this.updatePlatformState),await this.updatePlatformState()}componentWillUnmount(){this.isUnmounting=!0,ci.A.apiExists()&&navigator.xr?.removeEventListener("ondevicechange",this.updatePlatformState)}async updatePlatformState(){const{settings:e}=this.context,t=e.tryGetSetting(ui.F7,ui.qy),i=await(0,Wt.M1)(t);this.isUnmounting||(this.setState({vrPlatform:i}),mi.debug(this.state))}startWebXR=()=>{const{analytics:e,commandBinder:t}=this.context;t.issueCommand(new hi.X({type:"immersive-vr",features:["local-floor"]})).then((t=>{if(t){e.trackGuiEvent("vr_enter_app");const i=()=>{e.trackGuiEvent("vr_exit_app"),t.removeEventListener("end",i)};t.addEventListener("end",i)}else mi.error("requestPresent Failed"),e.trackGuiEvent("vr_present_error"),this.updatePlatformState()})).catch((t=>{mi.error("requestPresent Failed:",t),e.trackGuiEvent("vr_present_error")}))}}var Ei,Si,Oi;const gi=new d.Vy("vr-select");let _i=(Ei=Reflect.metadata("design:type",Function),Si=Reflect.metadata("design:paramtypes",["undefined"==typeof VrModalProps?Object:VrModalProps]),(0,Ze.A)(Oi=Ei(Oi=Si(Oi=class extends pi{constructor(e){super(e),this.state={vrPlatform:null,metaLink:null}}async componentDidMount(){await super.componentDidMount(),this.updateUrls(),this.context.analytics.trackGuiEvent("click_vr_button")}render(){const{isMobile:e}=this.props,{locale:t}=this.context,i=O()("vr-modal","full-modal",{mobile:e,desktop:!e});return(0,y.jsxs)(wt.l,{className:i,onClose:this.onCloseClicked,children:[(0,y.jsxs)("header",{className:"modal-header",children:[(0,y.jsx)("div",{className:"modal-title",children:t.t(_.A.VR_VIEW_SPACE)}),(0,y.jsx)(Ct.J,{onClose:this.onCloseClicked})]}),this.renderHeadsetHeader(),(0,y.jsx)("div",{className:"modal-body",children:this.renderBodyText()}),(0,y.jsx)("div",{className:"modal-footer",children:this.getFooterButtons()})]})}renderHeadsetHeader=()=>{const{locale:e}=this.context,{vrPlatform:t}=this.state;switch(t){case Wt.wc.unsupported:case Wt.wc.webxr:return(0,y.jsxs)("div",{className:"headset-header dark",children:[(0,y.jsxs)("span",{className:"headset-titles",children:[(0,y.jsx)("p",{children:e.t(_.A.VR_RECOMMENDED)}),(0,y.jsx)("p",{children:e.t(_.A.VR_QUEST)})]}),(0,y.jsx)("img",{className:"headset-quest",src:i(51),height:200,width:342})]});default:return null}};renderBodyText=()=>{const{locale:e}=this.context,{vrPlatform:t}=this.state;switch(t){case Wt.wc.unsupported:case Wt.wc.webxr:return(0,y.jsx)("div",{children:(0,y.jsx)("p",{children:e.t(_.A.VR_SUPPORTS)})});default:return null}};getFooterButtons=()=>{const{locale:e}=this.context,{vrPlatform:t,metaLink:i}=this.state,n=[];n.push((0,y.jsx)(m.$,{variant:p.A.SECONDARY,className:O()("button-inline","cancel"),onClick:this.onLearnMoreClicked,label:e.t(_.A.VR_LEARN_MORE_CAPS),size:"small"},"learn-more"));return t===Wt.wc.webxr?n.push((0,y.jsx)(m.$,{variant:p.A.PRIMARY,onClick:this.onActionClicked,label:e.t(_.A.VR_ENTER),size:"small"},"enter-vr")):n.push((0,y.jsx)(m.$,{variant:p.A.PRIMARY,disabled:!i,onClick:this.onMetaDeepLinkClicked,label:e.t(_.A.VR_META_LINK),size:"small"},"enter-vr")),(0,y.jsx)(Bt.e,{spacing:"small",children:n})};closeModal=()=>{this.context.commandBinder.issueCommand(new U.X6(H.a.VR_SELECT,!1))};onCloseClicked=()=>{this.context.analytics.trackGuiEvent("vr_modal_close"),this.closeModal()};onActionClicked=()=>{if(this.state.vrPlatform===Wt.wc.webxr)this.startWebXR(),this.closeModal()};onMetaDeepLinkClicked=()=>{this.state.metaLink&&(window.open(this.state.metaLink,"_blank"),this.context.analytics.trackGuiEvent("vr_meta_link"))};onLearnMoreClicked=()=>{window.open('http://matterhub.ru',"_blank"),this.context.analytics.trackGuiEvent("vr_learn_more")};async updateUrls(){const[e]=await Promise.all([ti(this.context,!0)]),t=di(e,"","",this.context.locale);gi.debug("Social Share URLs, with current location",t),this.isUnmounting||this.setState({metaLink:t.meta})}})||Oi)||Oi)||Oi);var Ti=i(7477);var Ai=i(27568);class vi extends n.Component{static contextType=(()=>g.B)();render(){const{isMobile:e}=this.props,{locale:t}=this.context;return(0,y.jsx)("div",{className:"cta",children:(0,y.jsx)("header",{className:O()({mobile:e}),children:t.t(e?_.A.MOBILE_SHORT_CTA:_.A.DESKTOP_SHORT_CTA)})})}}var fi=i(79827);const{HELP:Ni}=_.A.SHOWCASE;class Ii extends n.Component{static contextType=(()=>g.B)();keys=(()=>({header:_.A.DESKTOP_SHORT_CTA,tourHeader:_.A.CTA_TOUR_COMPLETE,tourSubhead:_.A.CTA_EXPLORE_SPACE,restartTour:_.A.CTA_RESTART_TOUR,share:_.A.CTA_SHARE,move:_.A.MOVE,inside:_.A.INSIDE,rotate:_.A.ROTATE,play:_.A.PLAY,zoom:_.A.ZOOM}))();clickInside=(()=>({Icon:fi.z.mouse.clickInside,Label:this.keys.inside,FooterIcon:fi.z.keyboard.inside,Alt:Ni.ALT_MOUSE_CLICKINSIDE,FooterAlt:Ni.ALT_KEYBOARD_INSIDE}))();clickMove=(()=>({Icon:fi.z.mouse.positionRight,Label:this.keys.move,FooterIcon:"",Alt:Ni.ALT_MOUSE_POSITIONRIGHT}))();moveUpDown=(()=>({Icon:fi.z.mouse.click_old,Label:this.keys.move,FooterIcon:fi.z.keyboard.upDown,Alt:Ni.ALT_MOUSE_CLICK,FooterAlt:Ni.ALT_KEYBOARD_UPDOWN}))();play=(()=>({Icon:fi.z.mouse.play,Label:this.keys.play,FooterIcon:null,Alt:Ni.ALT_MOUSE_PLAY}))();zoom=(()=>({Icon:fi.z.mouse.zoom_old,Label:this.keys.zoom,FooterIcon:fi.z.keyboard.zoom,Alt:Ni.ALT_MOUSE_ZOOM,FooterAlt:Ni.ALT_KEYBOARD_ZOOM}))();dragMove=(()=>({Icon:fi.z.mouse.positionLeft_old,Label:this.keys.move,FooterIcon:null,Alt:Ni.ALT_MOUSE_POSITIONLEFT}))();dragRotateLeft=(()=>({Icon:fi.z.mouse.dragLeft,Label:this.keys.rotate,FooterIcon:fi.z.keyboard.leftRight,Alt:Ni.ALT_MOUSE_DRAGLEFT,FooterAlt:Ni.ALT_KEYBOARD_LEFTRIGHT}))();dragRotateRight=(()=>({Icon:fi.z.mouse.dragRight,Label:this.keys.rotate,FooterIcon:fi.z.keyboard.leftRight,Alt:Ni.ALT_MOUSE_DRAGRIGHT,FooterAlt:Ni.ALT_KEYBOARD_LEFTRIGHT}))();left=this.clickInside;center=this.clickMove;right=this.play;close=async()=>{const{commandBinder:e}=this.context;await e.issueCommand(new U.X6(H.a.CTA,!1))};restartTour=async()=>{this.context.analytics.trackGuiEvent("restart_highlights_from_cta"),this.close();const e=await this.context.engine.getModuleBySymbol($.Xf);await e.tourGoTo(0,{instant:!0}),e.startTour()};share=async()=>{const{commandBinder:e}=this.context;this.context.analytics.trackGuiEvent("click_share_button_from_cta"),this.close(),e.issueCommand(new U.X6(H.a.SHARE,!0))};render(){const{viewmode:e,isHelpCta:t,shareEnabled:i}=this.props,{locale:n}=this.context;this.configureViewmodeSpecifics(e);const s=n.t(t?this.keys.header:this.keys.tourHeader),a=t?"":n.t(this.keys.tourSubhead),o=n.t(_.A.CTA_SHARE),r=n.t(_.A.CTA_RESTART_TOUR);return(0,y.jsxs)(y.Fragment,{children:[(0,y.jsxs)("div",{className:"cta",children:[(0,y.jsxs)("header",{children:[s,(0,y.jsx)("div",{className:"subhead",children:a})]}),(0,y.jsx)("img",{src:this.left.Icon,alt:n.t(this.left.Alt)}),(0,y.jsx)("h2",{children:n.t(this.left.Label)}),this.left.FooterIcon?(0,y.jsx)("img",{className:"footer-icon",src:this.left.FooterIcon,alt:this.left.FooterAlt&&n.t(this.left.FooterAlt)}):(0,y.jsx)("span",{}),(0,y.jsx)("img",{src:this.center.Icon,alt:n.t(this.center.Alt)}),(0,y.jsx)("h2",{children:n.t(this.center.Label)}),this.center.FooterIcon?(0,y.jsx)("img",{className:"footer-icon",src:this.center.FooterIcon,alt:this.center.FooterAlt&&n.t(this.center.FooterAlt)}):(0,y.jsx)("span",{}),(0,y.jsx)("img",{src:this.right.Icon,alt:n.t(this.right.Alt)}),(0,y.jsx)("h2",{children:n.t(this.right.Label)}),this.right.FooterIcon?(0,y.jsx)("img",{className:"footer-icon",src:this.right.FooterIcon,alt:this.right.FooterAlt&&n.t(this.right.FooterAlt)}):(0,y.jsx)("span",{})]}),(0,y.jsx)(m.$,{className:"close-button",theme:"dark",icon:"close",variant:p.A.TERTIARY,onClick:this.close}),!t&&(0,y.jsxs)("div",{className:"footer",children:[(0,y.jsx)(m.$,{onClick:this.restartTour,theme:"dark",label:r,icon:"restart",variant:p.A.TERTIARY}),i&&(0,y.jsx)(m.$,{className:"share",theme:"dark",label:o,icon:"share2",variant:p.A.SECONDARY,onClick:this.share})]})]})}configureViewmodeSpecifics(e){switch(e){case Z.w5.INSIDE:this.left=this.dragRotateLeft,this.center=this.moveUpDown,this.right=this.props.isHelpCta?this.play:this.zoom;break;case Z.w5.OUTSIDE:this.left=this.dragRotateLeft,this.center=this.clickMove,this.right=this.clickInside;break;case Z.w5.FLOORPLAN:this.left=this.dragMove,this.center=this.dragRotateRight,this.right=this.clickInside}}}const{HELP:Li}=_.A.SHOWCASE;class Ri extends n.Component{static contextType=(()=>g.B)();keys=(()=>({shortCta:_.A.MOBILE_SHORT_CTA,tourHeader:_.A.CTA_TOUR_COMPLETE,tourSubhead:_.A.CTA_EXPLORE_SPACE,move:_.A.MOVE,inside:_.A.INSIDE,rotate:_.A.ROTATE,play:_.A.PLAY,zoom:_.A.ZOOM}))();clickInside=(()=>({Icon:fi.z.gesture.tapInside,Label:this.keys.inside,Alt:Li.ALT_GESTURE_TAPINSIDE}))();clickMove=(()=>({Icon:fi.z.gesture.tap_old,Label:this.keys.move,Alt:Li.ALT_GESTURE_TAP}))();dragRotate=(()=>({Icon:fi.z.gesture.drag_old,Label:this.keys.rotate,Alt:Li.ALT_GESTURE_DRAG}))();dragMove=(()=>({Icon:fi.z.gesture.position,Label:this.keys.move,Alt:Li.ALT_GESTURE_POSITION}))();play=(()=>({Icon:fi.z.gesture.play,Label:this.keys.play,Alt:Li.ALT_GESTURE_PLAY}))();zoom=(()=>({Icon:fi.z.gesture.pinch_old,Label:this.keys.zoom,Alt:Li.ALT_GESTURE_PINCH}))();left=this.dragRotate;center=this.clickInside;right=this.play;render(){const{viewmode:e,isHelpCta:t}=this.props,{locale:i}=this.context;this.configureViewmodeSpecifics(e);const n=i.t(t?this.keys.shortCta:this.keys.tourHeader),s=t?"":i.t(this.keys.tourSubhead);return(0,y.jsxs)(y.Fragment,{children:[(0,y.jsxs)("div",{className:"cta mobile",children:[(0,y.jsxs)("header",{className:"mobile",children:[n,(0,y.jsx)("div",{className:"subhead",children:s})]}),(0,y.jsx)("h2",{className:"mobile",children:i.t(this.left.Label)}),(0,y.jsx)("img",{src:this.left.Icon,alt:i.t(this.left.Alt)}),(0,y.jsx)("h2",{className:"mobile",children:i.t(this.center.Label)}),(0,y.jsx)("img",{src:this.center.Icon,alt:i.t(this.center.Alt)}),(0,y.jsx)("h2",{className:"mobile",children:i.t(this.right.Label)}),(0,y.jsx)("img",{src:this.right.Icon,alt:i.t(this.right.Alt)})]}),!t&&(0,y.jsx)("div",{className:"footer",children:(0,y.jsx)(m.$,{onClick:this.restartTour,theme:"dark",label:i.t(_.A.CTA_RESTART_TOUR),icon:"restart",variant:p.A.TERTIARY})})]})}configureViewmodeSpecifics(e){switch(e){case Z.w5.INSIDE:this.left=this.dragRotate,this.center=this.clickMove,this.right=this.props.isHelpCta?this.zoom:this.play;break;case Z.w5.DOLLHOUSE:case Z.w5.OUTSIDE:this.left=this.dragRotate,this.center=this.clickInside,this.right=this.props.isHelpCta?this.zoom:this.play;break;case Z.w5.FLOORPLAN:this.left=this.dragMove,this.center=this.clickInside,this.right=this.props.isHelpCta?this.zoom:this.play}}restartTour=async()=>{this.context.analytics.trackGuiEvent("restart_highlights_from_cta"),await this.context.commandBinder.issueCommand(new U.X6(H.a.CTA,!1));(await this.context.engine.getModuleBySymbol($.Xf)).startTour({index:0})}}var yi=function(e){return e[e.NONE=0]="NONE",e[e.LARGE=1]="LARGE",e[e.SMALL=2]="SMALL",e}(yi||{});const bi="cta-seen";function Di(e){const t=(0,ye.F)(),i=(0,F.L)(),{touchDevice:s,viewmode:a,shareEnabled:o}=e,r=(0,de.i)(Te.Vg,!1),l=(0,Ai.u)(),d=-1!==(0,xe.b)("ts",-1),c=(0,xe.b)("tourcta",1),u=(0,v.U)(yi,c)?c:yi.LARGE,h=!!u&&l>0,[m,p]=(0,n.useState)(h&&d),S=(0,xe.b)("help",0),g=(0,v.U)(yi,S)?S:yi.NONE,_=(0,de.i)(bi,!1),T=_?yi.NONE:m?u:g,[A,f]=(0,n.useState)(T),N=(0,le.t)(),[I,L]=(0,n.useState)(N===H.a.CTA),R=(0,n.useCallback)((()=>{i.issueCommand(new U.X6(H.a.CTA,!1)),L(!1)}),[i]),b=function(){const e=(0,Ti.a)();return(null==e?void 0:e.canvas)||null}();if((0,n.useEffect)((()=>(b&&(b.addEventListener("mousedown",R),b.addEventListener("pointerdown",R),b.addEventListener("touchstart",R)),()=>{b&&(b.removeEventListener("mousedown",R),b.removeEventListener("pointerdown",R),b.removeEventListener("touchstart",R))})),[b,R]),(0,ht.J)(bt.YH,(()=>{!_&&h&&(p(!0),f(u),i.issueCommand(new U.X6(H.a.CTA,!0)))})),(0,n.useEffect)((()=>{const e=N===H.a.CTA;L(e),e&&t.setSetting(bi,!0)}),[N,t]),A===yi.NONE)return null;const D=A===yi.SMALL,M=!D&&!s,P=!D&&s,k={mobile:s,small:D,helpCta:!m};return r?null:(0,y.jsx)(E.w,{open:I,className:O()("modal-background","dark-modal-background",{open:I}),children:(0,y.jsxs)("div",{className:O()("modal","ctaContainer",k),children:[D&&(0,y.jsx)(vi,{isMobile:s}),M&&(0,y.jsx)(Ii,{viewmode:a,isHelpCta:!m,shareEnabled:o}),P&&(0,y.jsx)(Ri,{viewmode:a,isHelpCta:!m,shareEnabled:o})]})})}var Mi,Pi,ki,wi,Ci,xi;!function(e){e[e.navigation=0]="navigation",e[e.moreHelp=1]="moreHelp"}(Mi||(Mi={})),function(e){e.left="left",e.middle="middle",e.right="right"}(Pi||(Pi={})),function(e){e.topInfo="topInfo",e.bigImage="bigImage",e.bottomInfo="bottomInfo",e.keyboard="keyboard"}(ki||(ki={})),function(e){e.desktop="desktop",e.mobile="mobile"}(wi||(wi={})),function(e){e.hlr="hlr",e.dollhouse="dollhouse",e.floors="floors",e.mattertag="mattertag",e.floorplan="floorplan",e.tour="tour",e.inside="inside",e.vr="vr",e.view360="view360",e.fullscreen="fullscreen"}(Ci||(Ci={})),function(e){e.landscape="landscape",e.portrait="portrait"}(xi||(xi={}));var Hi=i(3617);const Ui=_.A.SHOWCASE.HELP,Fi={[wi.desktop]:{title:Ui.NAV_DOLLHOUSE_TITLE,items:[{iconSrc:fi.z.mouse.positionLeft,iconAlt:Ui.ALT_MOUSE_POSITIONLEFT,header:Ui.DESKTOP_DOLLHOUSE_PAN_HEADER,text:Ui.DESKTOP_DOLLHOUSE_PAN},{iconSrc:fi.z.mouse.zoom,iconAlt:Ui.ALT_MOUSE_ZOOM,header:Ui.DESKTOP_DOLLHOUSE_ZOOM_HEADER,text:Ui.DESKTOP_DOLLHOUSE_ZOOM},{iconSrc:fi.z.mouse.dragRightHoriz,iconAlt:Ui.ALT_MOUSE_DRAGRIGHT_HORIZ,header:Ui.DESKTOP_DOLLHOUSE_ROTATE_HEADER,text:Ui.DESKTOP_DOLLHOUSE_ROTATE},{iconSrc:fi.z.mouse.dragRightVert,iconAlt:Ui.ALT_MOUSE_DRAGRIGHT_VERT,header:Ui.DESKTOP_DOLLHOUSE_2D3D_HEADER,text:Ui.DESKTOP_DOLLHOUSE_2D3D,badge:_.A.GENERIC.NEW_MESSAGE}]},[wi.mobile]:{title:Ui.NAV_DOLLHOUSE_TITLE,items:[{iconSrc:fi.z.gesture.position,iconAlt:Ui.ALT_GESTURE_POSITION,text:Ui.TOUCH_DOLLHOUSE_PAN},{iconSrc:fi.z.gesture.dragTwoFingerVert,iconAlt:Ui.ALT_GESTURE_DRAGTWOFINGER_VERT,text:Ui.TOUCH_DOLLHOUSE_2D3D,badge:_.A.GENERIC.NEW_MESSAGE},{iconSrc:fi.z.gesture.dragTwoFingerRotate,iconAlt:Ui.ALT_GESTURE_TOUCH_ROTATE,text:Ui.TOUCH_DOLLHOUSE_ROTATE,badge:_.A.GENERIC.NEW_MESSAGE},{iconSrc:fi.z.gesture.pinch,iconAlt:Ui.ALT_GESTURE_PINCH,text:Ui.TOUCH_DOLLHOUSE_ZOOM}]}},Gi={[wi.desktop]:{...Fi[wi.desktop],title:Ui.NAV_FLOORPLAN_TITLE},[wi.mobile]:{...Fi[wi.mobile],title:Ui.NAV_FLOORPLAN_TITLE}},Vi={[wi.desktop]:{title:Ui.NAV_INSIDE_TITLE,items:[{iconSrc:fi.z.mouse.positionLeft,iconAlt:Ui.ALT_MOUSE_POSITIONLEFT,header:Ui.DESKTOP_INSIDE_LOOK_HEADER,text:Ui.DESKTOP_INSIDE_LOOK},{iconSrc:fi.z.mouse.zoom,iconAlt:Ui.ALT_MOUSE_ZOOM,header:Ui.DESKTOP_INSIDE_ZOOM_HEADER,text:Ui.DESKTOP_INSIDE_ZOOM},{iconSrc:fi.z.mouse.click,iconAlt:Ui.ALT_MOUSE_CLICK,header:Ui.DESKTOP_INSIDE_MOVE_HEADER,text:Ui.DESKTOP_INSIDE_MOVE}]},[wi.mobile]:{title:Ui.NAV_INSIDE_TITLE,items:[{iconSrc:fi.z.gesture.position,iconAlt:Ui.ALT_GESTURE_POSITION,text:Ui.TOUCH_INSIDE_LOOK},{iconSrc:fi.z.gesture.tap,iconAlt:Ui.ALT_GESTURE_TAP,text:Ui.TOUCH_INSIDE_MOVE},{iconSrc:fi.z.gesture.pinch,iconAlt:Ui.ALT_GESTURE_PINCH,text:Ui.TOUCH_INSIDE_ZOOM}]}},Wi=(0,n.memo)((e=>{let{viewmode:t,device:i}=e;const n=(0,I.Y)(),s=(t===Z.w5.FLOORPLAN?Gi:t===Z.w5.DOLLHOUSE?Fi:Vi)[i];return(0,y.jsx)("div",{className:O()("navigation",i),children:(0,y.jsx)(Hi.H,{disabled:!1,hideThumb:!1,children:(0,y.jsxs)("section",{children:[s.title&&(0,y.jsx)("h2",{children:n.t(s.title)}),(0,y.jsxs)("ul",{children:[s.items.map(((e,t)=>{let{iconSrc:i,iconAlt:s,header:a,text:o,badge:r}=e;return(0,y.jsxs)("li",{children:[(0,y.jsx)("img",{src:i,alt:n.t(s)}),(a||r)&&(0,y.jsxs)("h3",{children:[a&&n.t(a)+" ",r&&(0,y.jsx)("span",{className:"help_badge",children:n.t(r)})]}),(0,y.jsx)("div",{children:n.t(o)})]},t)})),s.items.length%2?(0,y.jsx)("li",{children:(0,y.jsx)("div",{style:{width:440}})}):null]})]})})})})),Bi={[Ci.hlr]:{[ki.topInfo]:"HELP_MORE_HLR_A",[ki.bigImage]:"icon-hlr",[ki.bottomInfo]:"HELP_DESKTOP_MORE_HLR_B"},[Ci.dollhouse]:{[ki.topInfo]:"HELP_MORE_DOLLHOUSE_A",[ki.bigImage]:"icon-dollhouse",[ki.bottomInfo]:"HELP_MOBILE_MORE_DOLLHOUSE_B"},[Ci.floors]:{[ki.topInfo]:"HELP_MORE_FLOORS_A",[ki.bigImage]:"icon-floor-controls",[ki.bottomInfo]:"HELP_DESKTOP_MORE_FLOORS_B"},[Ci.mattertag]:{[ki.topInfo]:"HELP_MORE_MATTERTAG_A",[ki.bigImage]:fi.z.moreHelp.mattertag,[ki.bottomInfo]:"HELP_MOBILE_MORE_MATTERTAG_B"},[Ci.tour]:{[ki.topInfo]:"HELP_MORE_TOUR_A",[ki.bigImage]:"icon-play",[ki.bottomInfo]:"HELP_DESKTOP_MORE_TOUR_B"},[Ci.inside]:{[ki.topInfo]:"HELP_MORE_INSIDE_A",[ki.bigImage]:"icon-panorama",[ki.bottomInfo]:"HELP_MOBILE_MORE_INSIDE_B"},[Ci.vr]:{[ki.topInfo]:"HELP_MORE_VR_A",[ki.bigImage]:"icon-vr",[ki.bottomInfo]:"HELP_MOBILE_MORE_VR_B"},[Ci.view360]:{[ki.topInfo]:"HELP_MORE_360_A",[ki.bigImage]:fi.z.moreHelp.view360,[ki.bottomInfo]:"HELP_MOBILE_MORE_360_B"},[Ci.floorplan]:{[ki.topInfo]:"HELP_MORE_FLOORPLAN_A",[ki.bigImage]:"icon-floorplan",[ki.bottomInfo]:"HELP_MOBILE_FLOORPLAN_B"}},ji=JSON.parse(JSON.stringify(Bi));ji[Ci.fullscreen]={[ki.topInfo]:"HELP_MORE_FULLSCREEN_A",[ki.bigImage]:"icon-fullscreen",[ki.bottomInfo]:"HELP_DESKTOP_MORE_FULLSCREEN_B"},ji[Ci.dollhouse][ki.bottomInfo]="HELP_DESKTOP_MORE_DOLLHOUSE_B",ji[Ci.mattertag][ki.bottomInfo]="HELP_DESKTOP_MORE_MATTERTAG_B",ji[Ci.inside][ki.bottomInfo]="HELP_DESKTOP_MORE_INSIDE_B",ji[Ci.vr][ki.bottomInfo]="HELP_DESKTOP_MORE_VR_B",ji[Ci.view360][ki.bottomInfo]="HELP_DESKTOP_MORE_360_B",ji[Ci.floorplan][ki.bottomInfo]="HELP_DESKTOP_FLOORPLAN_B";const Ki={[wi.desktop]:ji,[wi.mobile]:Bi};var zi=i(44879);const Yi=[ki.topInfo,ki.bigImage,ki.bottomInfo];class $i extends n.Component{static contextType=(()=>g.B)();scrollbarsRef=(()=>(0,n.createRef)())();constructor(e){super(e)}componentDidMount(){const e=this.scrollbarsRef.current;e&&e.scrollTo({x:0,y:0})}buildInstructions(){const e=[],t=this.props.device===wi.desktop?5:this.props.orientation===zi.U.LANDSCAPE?3:2,i=Object.keys(Ki[this.props.device]);for(let n=0;n=i.length)continue;const t=Ki[this.props.device][i[n+e]][s],o=O()(s,i[n+e],{noAsset:!t}),r=`${n}_${s}_${e}`;switch(s){case ki.topInfo:a.push((0,y.jsx)("div",{className:o,children:this.context.locale.t(t)},`${r}_top_info`));break;case ki.bigImage:a.push((0,y.jsx)("div",{className:o,children:t.indexOf(".png")>-1?(0,y.jsx)("img",{src:t}):(0,y.jsx)("span",{className:t,children:"floors"===i[n+e]?(0,y.jsx)("span",{children:"2"}):null})},`${r}_big_img`));break;case ki.bottomInfo:a.push((0,y.jsx)("div",{className:o,children:this.context.locale.t(t)},`${r}_bottom_info`))}}e.push((0,y.jsx)("div",{className:O()("innerRow",s),children:a},`${n}_${s}_top_info`))}e.push((0,y.jsx)("div",{className:"rowPadding"},`${n}_row_padding`))}return e.pop(),e}render(){return(0,y.jsx)("div",{className:O()("more-help-wrapper",this.props.device),children:(0,y.jsx)(kt.A,{name:"more-help-wrapper",ref:this.scrollbarsRef,forceHidden:!1,children:(0,y.jsx)("div",{className:O()("more-help"),children:this.buildInstructions()})})})}}var Xi,Qi,qi;let Zi=(Xi=Reflect.metadata("design:type",Function),Qi=Reflect.metadata("design:paramtypes",["undefined"==typeof HelpProps?Object:HelpProps,"undefined"==typeof AppContextType?Object:AppContextType]),(0,Ze.A)(qi=Xi(qi=Qi(qi=class extends n.Component{static contextType=(()=>g.B)();device;orientationSubscription;isUnmounting=!1;constructor(e,t){super(e,t),this.device=this.props.isMobile?wi.mobile:wi.desktop,this.state={tab:Mi.navigation,orientation:t.market.tryGetData(Se.G)?.orientation??zi.U.LANDSCAPE}}componentDidMount(){this.context.market.waitForData(Se.G).then((e=>{this.isUnmounting||(this.orientationSubscription=e.onPropertyChanged("orientation",(e=>{this.setState({orientation:e})})))}))}componentWillUnmount(){this.isUnmounting=!0,this.orientationSubscription?.cancel()}handleTabClick=e=>()=>{this.setState({tab:e})};closeHelp=()=>{this.context.commandBinder.issueCommand(new U.X6(H.a.HELP,!1))};render(){const{tab:e,orientation:t}=this.state;return(0,y.jsxs)(wt.l,{className:O()("full-modal","help-modal",this.device),theme:"dark",onClose:this.closeHelp,children:[(0,y.jsx)(Ct.J,{theme:"dark",onClose:this.closeHelp}),(0,y.jsxs)("div",{className:O()("tabs",e),children:[(0,y.jsx)("div",{className:O()("navigation-tab",{active:e===Mi.navigation}),onClick:this.handleTabClick(Mi.navigation),children:(0,y.jsx)("span",{children:this.context.locale.t(_.A.HELP_NAVIGATION_TAB)})}),(0,y.jsx)("div",{className:O()("more-help-tab",{active:e===Mi.moreHelp}),onClick:this.handleTabClick(Mi.moreHelp),children:(0,y.jsx)("span",{children:this.context.locale.t(_.A.HELP_MORE_HELP_TAB)})})]}),e===Mi.navigation&&(0,y.jsx)(Wi,{device:this.device,viewmode:this.props.viewmode}),e===Mi.moreHelp&&(0,y.jsx)($i,{device:this.device,orientation:t})]})}})||qi)||qi)||qi);var Ji=i(55057),en=i(12837),tn=i(81609);const nn=new d.Vy("share-modal");class sn extends n.Component{static contextType=(()=>g.B)();urlInputRef;sweepData;openEmail;openFacebook;openLinkedIn;openPinterest;openTwitter;isUnmounting=!1;constructor(e){super(e),this.state={urls:{},deeplinkUrls:{},title:"",excerpt:"",image:"",copied:!1,deeplink:!1,webShareEnabled:(0,u.Yk)()},this.openFacebook=this.openShareWindow.bind(this,Vt.FACEBOOK),this.openTwitter=this.openShareWindow.bind(this,Vt.TWITTER),this.openPinterest=this.openShareWindow.bind(this,Vt.PINTEREST),this.openLinkedIn=this.openShareWindow.bind(this,Vt.LINKEDIN),this.openEmail=this.openShareWindow.bind(this,Vt.MAIL)}async componentDidMount(){const{market:e}=this.context,[t,i]=await Promise.all([e.waitForData(Ji.q),e.waitForData(en.A)]);this.sweepData=i;const n=`${window.location.origin}/api/v1/player/models/${t.model.sid}/thumb`,s=t.model.details.name;this.isUnmounting||this.setState({title:s,image:n},this.updateUrls)}componentWillUnmount(){this.isUnmounting=!0}copyURL=()=>{const{deeplink:e}=this.state,t=this.urlInputRef;if(t){const i=new URL(t.value);i.hash="",(0,tn.l)(i.toString()),this.setState({copied:!0}),this.context.analytics.track("showcase_share_action",{channel:Vt.COPYLINK,pano_id:this.sweepData.state.currentSweep,deeplink:e}),window.setTimeout((()=>{this.setState({copied:!1})}),2500)}};toggleDeeplinks=()=>{const{deeplink:e}=this.state;this.setState({deeplink:!e})};close=()=>{this.context.commandBinder.issueCommand(new U.X6(H.a.SHARE,!1))};openShareWindow=e=>{const{urls:t,deeplink:i,deeplinkUrls:n}=this.state,{width:s,height:a}=ei[e],o=i?n[e]:t[e];let r;if(s&&a){r="top="+(window.screenY+(window.innerHeight-a)/2)+",left="+(window.screenX+(window.innerWidth-s)/2)+",width="+s+",height="+a}this.context.analytics.track("showcase_share_action",{channel:e,pano_id:this.sweepData.state.currentSweep,deeplink:i}),window.open(o,"",r)};openWebShareApi=e=>{if(!navigator.share)return;const{excerpt:t,title:i,urls:n,deeplinkUrls:s}=this.state,a={url:e?s[Vt.COPYLINK]:n[Vt.COPYLINK],text:t,title:i};nn.debug("Launching Web Share API",a),navigator.share(a),this.context.analytics.track("showcase_share_action",{channel:Vt.NATIVE,pano_id:this.sweepData.state.currentSweep,deeplink:e})};async updateUrls(){const{title:e,image:t}=this.state,[i,n]=await Promise.all([ti(this.context,!1),ti(this.context,!0)]),s=di(i,e,t,this.context.locale),a=di(n,e,t,this.context.locale);nn.debug("Social Share URLs:",s),nn.debug("Social Share URLs, with current location",a),this.isUnmounting||this.setState({urls:s,deeplinkUrls:a})}onWebShareClick=()=>{this.openWebShareApi(!1)};onWebShareDeeplinkClick=()=>{this.openWebShareApi(!0)};setUrlInputRef=e=>{this.urlInputRef=e};renderWebShareDialog(){return(0,y.jsxs)("div",{className:"share-controls",children:[(0,y.jsx)(m.$,{className:"share-modal-button",variant:p.A.PRIMARY,size:p.M.LARGE,onClick:this.onWebShareDeeplinkClick,label:this.context.locale.t(_.A.SHARE_CURRENT_LOCATION)}),(0,y.jsx)(m.$,{className:"share-modal-button",variant:p.A.SECONDARY,size:p.M.LARGE,onClick:this.onWebShareClick,label:this.context.locale.t(_.A.SHARE_DEFAULT_LOCATION)})]})}renderShareDialog(){const{copied:e,deeplink:t,urls:i,deeplinkUrls:n}=this.state,{locale:s}=this.context,a=t?n[Vt.COPYLINK]:i[Vt.COPYLINK],o=this.sweepData&&this.sweepData.isSweepDisabled(),r=o?s.t(_.A.SHARE_ERROR_SWEEP_DISABLED):void 0;return(0,y.jsxs)("div",{className:"share-controls",children:[(0,y.jsxs)("div",{className:"social-icons",children:[(0,y.jsx)(m.$,{onClick:this.openFacebook,icon:"facebook",variant:p.A.FAB,size:"large",theme:"dark",ariaLabel:s.t(_.A.SHARE_FACEBOOK)}),(0,y.jsx)(m.$,{onClick:this.openTwitter,icon:"twitter",variant:p.A.FAB,size:"large",theme:"dark",ariaLabel:s.t(_.A.SHARE_TWITTER)}),(0,y.jsx)(m.$,{onClick:this.openLinkedIn,icon:"linkedin",variant:p.A.FAB,size:"large",theme:"dark",ariaLabel:s.t(_.A.SHARE_LINKEDIN)}),(0,y.jsx)(m.$,{onClick:this.openPinterest,icon:"pinterest",variant:p.A.FAB,size:"large",theme:"dark",ariaLabel:s.t(_.A.SHARE_PINTEREST)}),(0,y.jsx)(m.$,{onClick:this.openEmail,icon:"email",variant:p.A.FAB,size:"large",theme:"dark",ariaLabel:s.t(_.A.SHARE_MAIL)})]}),(0,y.jsxs)("div",{className:"input-group",children:[(0,y.jsx)("input",{className:"input",type:"text",value:a||"",ref:this.setUrlInputRef,readOnly:!0}),(0,y.jsx)(m.$,{className:"input-addon",variant:p.A.SECONDARY,onClick:this.copyURL,label:this.context.locale.t(_.A.COPY),tooltip:e?this.context.locale.t(_.A.SHARE_COPIED):this.context.locale.t(_.A.COPY_URL)})]}),(0,y.jsx)(st.S,{defaultChecked:t,disabled:o,label:this.context.locale.t(_.A.SHARE_LINK_TO_LOCATION),onChange:this.toggleDeeplinks}),o&&(0,y.jsx)("p",{className:"error-message",children:r})]})}render(){const{webShareEnabled:e}=this.state,t=O()("share-modal","modal-dialog",{"share-dialog":!e,"web-share-dialog":e}),i=e?this.renderWebShareDialog():this.renderShareDialog();return(0,y.jsxs)(wt.l,{className:t,onClose:this.close,children:[(0,y.jsxs)("header",{className:"modal-header",children:[(0,y.jsx)("div",{className:"modal-title",children:this.context.locale.t(_.A.SHARE_MODAL_TITLE)}),(0,y.jsx)(Ct.J,{onClose:this.close})]}),(0,y.jsx)("div",{className:"modal-body",children:i})]})}}class an extends n.Component{static contextType=(()=>g.B)();locale;constructor(e,t){super(e),this.locale={headerString:t.locale.t(_.A.MEASUREMENT_MODE),subHeaderString:t.locale.t(_.A.MEASUREMENT_HELP_MODAL_SUB_HEADER),body1String:t.locale.t(_.A.MEASUREMENT_HELP_MODAL_BODY_1),body2String:t.locale.t(_.A.MEASUREMENT_HELP_MODAL_BODY_2)}}closeModal=()=>{this.context.commandBinder.issueCommand(new U.X6(H.a.MEASUREMENT_HELP,!1))};render(){const{headerString:e,subHeaderString:t,body1String:i,body2String:n}=this.locale,{mobile:s}=this.props;return(0,y.jsxs)(wt.l,{className:O()("full-modal","measurement-mode-help-modal",{mobile:s}),onClose:this.closeModal,children:[(0,y.jsxs)("header",{className:"modal-header",children:[(0,y.jsx)("div",{className:"modal-title",children:e}),(0,y.jsx)(Ct.J,{onClose:this.closeModal})]}),(0,y.jsx)("div",{className:"modal-subheader",children:t}),(0,y.jsxs)("div",{className:"modal-body",children:[(0,y.jsx)("p",{className:"modal-paragraph",children:i}),(0,y.jsx)("p",{className:"modal-paragraph",children:n})]})]})}}var on=i(28646),rn=i(62919),ln=i(94609),dn=i(19968);function cn(){const e=(0,I.Y)(),t=(0,F.L)(),i=(0,n.useCallback)((()=>{t.issueCommand(new U.X6(H.a.DEFURNISH_AI,!1))}),[t]);return(0,y.jsxs)(wt.l,{className:O()("defurnish-ai-modal","full-modal"),theme:"dark",onClose:i,children:[(0,y.jsx)(Ct.J,{theme:"dark",onClose:i}),(0,y.jsxs)("div",{className:"modal-body",children:[(0,y.jsx)("h6",{className:"defurnish-ai-modal-title",children:e.t(_.A.SHOWCASE.DEFURNISH_AI_MODAL.TITLE)}),(0,y.jsx)("p",{className:"defurnish-ai-modal-content",children:e.t(_.A.SHOWCASE.DEFURNISH_AI_MODAL.TEXT1)}),(0,y.jsx)("p",{className:"defurnish-ai-modal-content",children:e.t(_.A.SHOWCASE.DEFURNISH_AI_MODAL.TEXT2)})]})]})}function un(e){const{viewmode:t,shareEnabled:i}=e,s=(0,F.L)(),a=(0,le.t)(),o=(0,ln.I)(),r=(0,n.useMemo)((()=>(0,u.C8)()),[]),l=t===Z.w5.DOLLHOUSE&&(0,dn.aY)(o)?Z.w5.FLOORPLAN:t,d=a===H.a.SHARE,c=a===H.a.TERMS,h=a===H.a.HELP,m=a===H.a.MEASUREMENT_HELP,p=a===H.a.VR_SELECT,S=a===H.a.RATING_THANK_YOU,g=a===H.a.DEFURNISH_AI,_=c||h||g,T=d||_||m||S||p;return(0,y.jsx)(n.Suspense,{children:(0,y.jsxs)("div",{id:"showcase-modals",children:[(0,y.jsx)(rn.u,{commandBinder:s}),(0,y.jsx)(Di,{touchDevice:r,viewmode:l,shareEnabled:i}),(0,y.jsxs)(E.w,{className:O()("modal-background",{"dark-modal-background":_,open:T}),open:T,selectChild:!0,childKey:a||void 0,onClick:()=>{s.issueCommand(new U.rH)},children:[(0,y.jsx)(sn,{},H.a.SHARE),(0,y.jsx)(an,{mobile:r},H.a.MEASUREMENT_HELP),(0,y.jsx)(_i,{isMobile:r},H.a.VR_SELECT),c&&(0,y.jsx)(Gt,{},H.a.TERMS),h&&(0,y.jsx)(Zi,{isMobile:r,viewmode:l,allModes:Z.w5},H.a.HELP),S&&(0,y.jsx)(on.y,{},H.a.RATING_THANK_YOU),g&&(0,y.jsx)(cn,{},H.a.DEFURNISH_AI)]})]})})}var hn,mn,pn,En=i(21875),Sn=i(44481),On=i(1197),gn=i(99583),_n=i(66806),Tn=i(85204),An=i(39985),vn=i(23863);let fn=(hn=Reflect.metadata("design:type",Function),mn=Reflect.metadata("design:paramtypes",["undefined"==typeof Props?Object:Props]),(0,Ze.A)(pn=hn(pn=mn(pn=class extends pi{static contextType=(()=>g.B)();constructor(e){super(e),this.state={vrPlatform:null}}render(){return this.state.vrPlatform===Wt.wc.webxr?this.renderOverlayCta():null}renderOverlayCta(){const{locale:e}=this.context;return(0,y.jsx)("div",{id:"vr-overlay-layer",className:"overlay grid-overlay",children:(0,y.jsx)(vn.E,{small:!0,children:(0,y.jsx)(m.$,{size:p.M.SMALL,variant:p.A.FAB,theme:"dark",label:e.t(_.A.VR_ENTER),onClick:this.startWebXR})})})}})||pn)||pn)||pn);var Nn=i(95541),In=i(78063),Ln=i(17904);const{TOURS:Rn}=_.A.SHOWCASE;function yn(e){const t=(0,I.Y)(),i=(0,In.B)(),s=(0,ye.F)(),a=(0,Ln.S)($.Xf),{highlights:o,tourPlaying:r}=e,l=(0,Nn.H)(),d=t.t(Rn.TOUR_CONTROLS_TITLE),c=t.t(Rn.TOUR_CONTROLS_CTA),u=0===o.length,[h,m]=(0,n.useState)(!1),p=(0,n.useCallback)((async e=>{!u&&a&&(e.stopPropagation(),await a.tourGoNext({resumeIfPlaying:!0}))}),[u,a]),E=(0,n.useCallback)((async e=>{!u&&a&&(e.stopPropagation(),await a.tourGoPrevious({resumeIfPlaying:!0}))}),[u,a]);return(0,n.useEffect)((()=>{const e=[];let t=0;const n=()=>{m(!1)};return e.push(i.subscribe(bt.zM,(()=>{})),i.subscribe(bt.pT,n)),()=>{e.forEach((e=>e.cancel())),clearInterval(t)}}),[i,s,l]),(0,y.jsxs)("div",{className:O()("tour-story-controls-mobile",{prompt:h,tourPlaying:r}),children:[(0,y.jsx)("div",{className:"tour-story-help-title",children:d}),(0,y.jsx)("div",{className:"tour-story-help-cta",children:c}),(0,y.jsx)("div",{className:"tour-story-prev",onClick:E,children:(0,y.jsx)("div",{className:"icon icon-dpad-left"})}),(0,y.jsx)("div",{className:"tour-story-next",onClick:p,children:(0,y.jsx)("div",{className:"icon icon-dpad-right"})})]})}var bn=i(7584),Dn=i(96556),Mn=i(76853);const Pn=new d.Vy("showcase-ui"),kn=(0,c.EN)();class wn extends n.Component{static contextType=(()=>g.B)();tourData;toursViewData;bindings=[];sweepData;viewmodeData;propertiesToRefreshUi=(()=>[q.Q$.Measurements,q.Q$.DetailsModelName,x.p,q.Q$.FloorSelect,Tn.nc,q.Q$.RoomBounds])();isUnmounting=!1;constructor(e,t){super(e,t),this.state={viewmode:Z.ty,activeToolName:null,openModal:null,toolsLoaded:!1,toolsCount:0,toolPanelLayout:t.toolsData.toolPanelLayout,tourState:{},tourMode:W.cR.NONE,modelDetails:null,measurementsModeEnabled:!1,notesEnabled:!1,vrEnabled:!1,brandingEnabled:!1,shareEnabled:!1,unaligned:!0,showExternalUrl:!1}}getModeChange=e=>({viewmode:(0,Z.gB)(e.toMode)});async componentDidMount(){const{settings:e,messageBus:t,market:i,toolsData:n,mainDiv:s}=this.context;s.classList.remove("with-toolbar");for(const t of this.propertiesToRefreshUi)this.bindings.push(e.onSettingChanged(t,this.updatePerSettings));try{this.cancelBindings(),this.bindings=[n.onPropertyChanged("activeToolName",this.updateActiveTool),n.onPropertyChanged("openModal",this.openModalChanged),n.onPropertyChanged("toolPanelLayout",this.updateToolPanelLayout),n.toolsMap.onChanged(this.updateTools)],this.handleStartUpHelp();const[e,s,a,o,r]=await Promise.all([i.waitForData(Ji.q),i.waitForData(gn.X),i.waitForData(en.A),i.waitForData(En.R),i.waitForData(Sn.F)]);if(this.isUnmounting)return;this.bindings.push(t.subscribe(On.A,(e=>this.setState({...this.getModeChange(e),...this.getUnalignedSweepState()}))),t.subscribe(bt.pT,this.updateTourState),t.subscribe(bt.zM,this.updateTourState),t.subscribe(bt.n1,this.updateTourState),t.subscribe(bt.YH,this.updateTourState),t.subscribe(bt.zb,this.updateTourState),o.getReel().onChanged(this.updateTourState),r.onPropertyChanged("currentTourMode",this.updateTourMode),a.makeSweepChangeSubscription((()=>this.setState(this.getUnalignedSweepState()))));const l=(0,Z.gB)(s.currentMode||_n.N.Panorama);this.tourData=o,this.toursViewData=r,this.sweepData=a,this.viewmodeData=s,this.setState({viewmode:l,modelDetails:e.model.details,brandingEnabled:this.isBrandingEnabled()&&!this.isMlsEnabled(),shareEnabled:this.isShareEnabled()&&!this.isMlsEnabled(),showExternalUrl:this.isBrandingEnabled()&&!this.isMlsEnabled(),vrEnabled:this.isVrButtonEnabled(),...this.getUnalignedSweepState()}),this.props.onAppReadyChanged(!0,!1)}catch(e){Pn.debug(e)}this.updateTourState(),this.updateTourMode(),this.updateActiveTool(),this.updateToolPanelLayout(),this.updateTools(),this.updatePerSettings()}async componentWillUnmount(){this.isUnmounting=!0,this.cancelBindings(),this.props.onAppReadyChanged(!1,!1)}handleStartUpHelp(){const{settings:e,messageBus:t,commandBinder:i}=this.context,n=e.getOverrideParam("help",0);if(1===n||2===n){const n=1===e.getOverrideParam("ts",0),s=!0===e.tryGetSetting("quickstart",!1);n||(s?i.issueCommand(new U.X6(H.a.CTA,!0)):t.subscribe(r.uv,this.showHelpOnPlaying))}}updateToolPanelLayout=()=>{const{toolsData:e}=this.context,t=e.toolPanelLayout;this.setState({toolPanelLayout:t})};showHelpOnPlaying=e=>{e.phase===l.Jj.PLAYING&&(this.context.commandBinder.issueCommand(new U.X6(H.a.CTA,!0)),this.context.messageBus.unsubscribe(r.uv,this.showHelpOnPlaying))};updateTools=()=>{const{toolsData:e}=this.context,{toolsLoaded:t}=this.state,i=e.toolsMap;this.setState({toolsCount:i.length}),i.length>0&&!t&&(this.setState({toolsLoaded:!0}),window.setTimeout((()=>{this.context.commandBinder.issueCommand(new h.M_)}),750))};updatePerSettings=()=>{const{settings:e,policyData:t}=this.context;this.setState({measurementsModeEnabled:"0"!==e.getOverrideParam(q.Q$.Measurements)&&(e.tryGetSetting(q.Q$.Measurements,!0)||(0,bn.m2)(t,e,!1)),notesEnabled:e.tryGetSetting(Tn.nc,!1)})};getUnalignedSweepState(){if(!this.sweepData||!this.viewmodeData)return{unaligned:this.state.unaligned};return{unaligned:this.viewmodeData.isInside()&&this.sweepData.isSweepUnaligned(this.sweepData.state.currentSweep)}}cancelBindings(){for(const e of this.bindings)e.cancel()}updateTourState=()=>{this.tourData&&this.setState({tourState:this.tourData.getCurrentTourState()})};updateTourMode=()=>{this.toursViewData&&this.setState({tourMode:this.toursViewData.currentTourMode})};isShareEnabled(){const{settings:e}=this.context,t=e.tryGetSetting(Me.wD,!1)&&e.tryGetSetting("is_public",!1),i=(0,u.sv)()&&"0"===kn.share;return t&&!i}isMlsEnabled(){return this.context.settings.tryGetSetting(Me.qu,!1)}isBrandingEnabled(){const{settings:e}=this.context;return e.tryGetSetting(Me.Lj,!0)}isVrButtonEnabled=()=>(0,Wt.ni)(this.context.settings);updateActiveTool=()=>{const{tourState:e}=this.state,{toolsData:t}=this.context,i=t.activeToolName;i&&e.tourPlaying&&this.stopTour(),this.setState({activeToolName:i})};openModalChanged=()=>{const{toolsData:e}=this.context,t=e.openModal;this.setState({openModal:t}),t&&this.stopTour()};stopTour(){this.context.engine.getModuleBySymbol($.Xf).then((e=>e.stopTour()))}render(){return(0,y.jsx)(Un,{...this.state})}}function Cn(e){let{activeToolName:t}=e;const{setViewOverlayContainer:i}=(0,Dn.OB)();return(0,y.jsx)("div",{className:"tool-overlay",id:Dn.Cz.VIEW_OVERLAY_PORTAL,ref:i,children:!t&&(0,y.jsx)(fn,{})})}function xn(e){let{toolsData:t}=e;const i=(0,Dn.EG)(),s=t.toolsMap,a=(0,n.useMemo)((()=>s.values.map((e=>{const t=e.ui.renderPersistent;return t&&(0,y.jsx)(t,{...i},e.id)})).filter((e=>!!e))),[s.values,i]);return(0,y.jsx)("div",{className:"overlay-ui",children:a})}function Hn(){const{setTopUIContainer:e}=(0,Dn.OB)();return(0,y.jsx)("span",{className:"top-ui-tool-portal-container",ref:e})}function Un(e){const{viewmode:t,unaligned:i,tourState:n,modelDetails:s,measurementsModeEnabled:a,notesEnabled:o,shareEnabled:r,brandingEnabled:l,vrEnabled:d,openModal:c,toolsLoaded:u,toolPanelLayout:h,activeToolName:m,tourMode:p}=e,{tourPlaying:E,activeStep:S,currentStep:O,highlights:g}=n,_=p===W.cR.STORIES,T=(0,Mn.v)(),A=T.toolsMap,v=(0,y.jsx)(Hn,{}),f=m&&A.get(m)?.ui,N=f?.renderShowcaseSettingsPanel;return(0,y.jsxs)("div",{id:"gui",className:"showcase-ui",children:[(0,y.jsx)(un,{viewmode:t,shareEnabled:r}),(0,y.jsx)(Dn.s6,{children:(0,y.jsx)(An.s,{children:(0,y.jsxs)(y.Fragment,{children:[!!s&&(0,y.jsx)(Lt,{modelDetails:s,tourPlaying:E,brandingEnabled:l,toolElements:v,toolSettings:N&&(0,y.jsx)(N,{})}),_&&(0,y.jsx)(Mt.m,{currentStep:O,activeStep:S,highlights:g}),_&&(0,y.jsx)(yn,{highlights:g,tourPlaying:E}),(0,y.jsx)(Dt,{}),(0,y.jsx)(Pt.A,{}),u&&(0,y.jsx)(Cn,{activeToolName:m}),u&&(0,y.jsx)(xn,{toolsData:T}),(0,y.jsx)(fe,{openModal:c,openTool:m,unaligned:i,viewmode:t,tourState:n,tourMode:p,measurementsModeEnabled:a,notesEnabled:o,shareEnabled:r,vrEnabled:d,toolPanelLayout:h})]})})})]})}var Fn=i(22e3),Gn=i(25316),Vn=i(23864),Wn=i(52721),Bn=i(68965),jn=i(86434),Kn=i(45548),zn=i(92637),Yn=i(8647),$n=i(81519),Xn=i(61767);const{TOOLS:Qn}=_.A;class qn extends a.n{constructor(){super(),this.name="showcase-gui-module",this.onSaveError=e=>{const{error:t}=e;this.engine.commandBinder.issueCommand(new zn.P(_.A.ERRORS.UNABLE_TO_SAVE_CHANGES_ERROR_MESSAGE,{throttle:30,timeout:10,type:Yn.v.ERROR,error:t}))},this.onForbiddenError=e=>{const{error:t}=e;this.engine.commandBinder.issueCommand(new zn.P(_.A.ERRORS.UNAUTHORIZED_ERROR_MESSAGE,{throttle:0,timeout:0,type:Yn.v.ERROR,error:t}))},this.loadUi=this.loadUi.bind(this)}async init(e,t){this.engine=t,[this.settingsData,this.containerData]=await Promise.all([t.market.waitForData(Gn.o),t.market.waitForData(Se.G)]),this.bindings.push(t.subscribe(Kn.xi,this.onSaveError),t.subscribe(Kn.xt,this.onForbiddenError))}async loadUi(e,t,i){e.editMode=!1;const a={locale:e.locale};this.viewportHeight=new Fn.A(this.containerData),this.viewportHeight.update(),this.reactRoot=(0,s.createRoot)(t),this.reactRoot.render((0,n.createElement)(g.B.Provider,{value:e},[(0,n.createElement)(Xn.Y,{key:"showcase-ui-locale",value:a},[(0,n.createElement)($n.u,{key:"error-bar"}),(0,n.createElement)(n.Suspense,{key:"showcase-ui"},(0,n.createElement)(wn,{onAppReadyChanged:i}))])])),this.initializeTools()}async unloadUi(){return this.viewportHeight&&this.viewportHeight.dispose(),!!this.reactRoot&&(this.reactRoot.unmount(),!0)}initializeTools(){const e=[new Vn.N({id:K.S0.MEASUREMENTS,searchModeType:o.jM.MEASUREMENTPATH,namePhraseKey:Qn.MEASUREMENTS,panel:!1,icon:"icon-tape-measure",analytic:"measurements",dimmed:!1,enabled:this.settingsData.tryGetSetting(q.Q$.Measurements,!0),ui:new jn.o,manager:new Wn.R(this.engine,this.settingsData)}),new Vn.N({id:K.S0.SUMMARY,namePhraseKey:Qn.SUMMARY,panel:!0,panelLeft:!0,analytic:"summary",dimmed:!1,enabled:!0,hidesAppBar:!0,ui:new Bn.t})];this.engine.commandBinder.issueCommand(new h.Kw(e)),this.engine.getModuleBySymbol($.lN).then((e=>{e&&e.registerTagsTool()})),this.engine.getModuleBySymbol($.TN).then((e=>{e&&e.registerNotesTool()}))}}},11423:(e,t,i)=>{"use strict";i.d(t,{C:()=>a,G:()=>s});var n=i(11165);class s extends n.u{constructor(e,t){super(),this.payload={startup:e,editMode:t}}}s.id="START_APPLICATION";class a extends n.u{constructor(e){super(),this.payload={expand:e}}}a.id="EXPAND_APP"},83111:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>C});var n=i(98002),s=i(64882),a=i(68920),o=i(14614),r=i(45987),l=i(27200),d=i(82748),c=i(9139),u=i(93136),h=i(71687),m=i(25316),p=i(25773),E=i(58480),S=i(85935),O=i(12837),g=i(55057),_=i(74328),T=i(78711),A=i(56147),v=i(39157),f=i(44345);class N{constructor(e,t){this.lastProgress=0,this.currentProgress=0,this.webpackChunks=[],this.meshAlloc={alloc:2e6,loaded:0},this.showingProgress=!1,this.onWebpackChunkProgress=e=>{this.webpackChunks[e.chunkID]?this.webpackChunks[e.chunkID].loaded=e.loaded:this.webpackChunks[e.chunkID]={loaded:e.loaded,total:e.total},this.calcProgress()},this.progressElm=t.querySelector("#bar"),window.addEventListener("WebpackChunkProgress",this.onWebpackChunkProgress),this.engine=e,this.meshProgressBinding=this.onMeshLoadProgress.bind(this),this.engine.subscribe(f.EX,this.meshProgressBinding)}dispose(){window.removeEventListener("WebpackChunkProgress",this.onWebpackChunkProgress)}showProgress(){this.showingProgress=!0,this.setProgress(this.currentProgress)}setDone(){this.currentProgress=100,this.setProgress(this.currentProgress),this.engine.unsubscribe(f.EX,this.meshProgressBinding)}setProgress(e){if(!this.progressElm||isNaN(e))return;this.lastProgress=Math.max(this.lastProgress,e),e=this.lastProgress;const t=Number.parseFloat(this.progressElm.getAttribute("r")||"0"),i=Math.PI*(2*t),n=(100-(e=Math.max(Math.min(e,100),0)))/100*i;this.progressElm.style.strokeDasharray=i.toString(10),this.progressElm.style.strokeDashoffset=n.toString(10)}calcProgress(){let e=0,t=0;this.webpackChunks.forEach((i=>{e+=i.loaded,t+=i.total})),e+=this.meshAlloc.loaded,t+=this.meshAlloc.alloc,this.currentProgress=95*Math.min(e/t,1),this.showingProgress&&this.setProgress(this.currentProgress)}onMeshLoadProgress(e){this.meshAlloc.loaded=e.loaded/e.total*this.meshAlloc.alloc,this.calcProgress()}}var I=i(11423),L=i(27612);function R(e){const{width:t,height:i}=window.screen;return l.al()&&(0,L.c)({width:t,height:i})&&e.height<.6*i}function y(){return l.qL()&&!l.vQ("xr-spatial-tracking")}class b{constructor(e,t,i,n){this.config=e,this.settingsData=t,this.containerData=i,this.sdkData=n,this.bindings=[]}async autoPlayIfWhenAllowed(e){const{editMode:t,openingTool:i,disabled:n,allowAutoPlay:s}=this.config;let a=!1;if(function(e,t,i){return!l.al()||!!(e||i||t)}(this.settingsData.getOverrideParam("play",!1),i,t)&&(a=s||this.sdkConnected,!a)){const t=function(e){return e||l.al()&&y()}(n);t||(a=!R(this.containerData.size),a||(this.bindings.push(this.containerData.onPropertyChanged("size",(t=>{R(t)||(e(),this.bindings.forEach((e=>e.cancel())))}))),this.bindings.push(this.sdkData.onChanged((()=>{this.sdkConnected&&(e(),this.bindings.forEach((e=>e.cancel())))})))))}return a&&e(),a}get sdkConnected(){return this.sdkData.applicationKeys.length>0}dispose(){this.bindings.forEach((e=>e.cancel()))}}var D=i(35404),M=i(12103),P=i(83772);function k(e,t){let i=function(e){return document.querySelector(`link[rel=${e}]`)}(e);i||(i=document.createElement("link"),document.head.appendChild(i)),i.setAttribute("rel",e),i.setAttribute("href",t)}var w=i(29200);class C extends s.n{constructor(){super(...arguments),this.name="loading-ui",this.playPromise=new a.i,this.onClick=()=>{this.resolvePlayPromise(!0,!1)},this.autoPlay=()=>{this.autoPlaying=!0,this.updatePlayAnalytics(),this.resolvePlayPromise(!0,this.config.editMode)},this.resolvePlayPromise=async(e,t)=>{var i,n;null===(i=this.autoPlayer)||void 0===i||i.dispose();const s=this.config.allowPlayInIframe||!l.Fr()&&!y(),a=t&&(0,l.al)()&&(s||1===this.settings.getOverrideParam("expand",0));if(!this.autoPlaying){if(!s&&1===this.settings.getOverrideParam("nt",0)){const e=(0,P.RP)(window.location.href);return void window.open(e,"_blank")}if((0,l.al)()&&!a&&!s){const e=(0,d.DE)();t&&e.set("edit","1"),e.set("back","1"),e.delete("cloudEdit");const i=e.toString(),n=`${window.location.origin}${window.location.pathname}?${i}`;try{return void(window.top&&(window.top.location.href=n))}catch(e){c.Vy.for(this).debug("Couldn't set top window location; was Showcase sandboxed?",e)}}}a&&this.toggleIframeExpansion(!0),t&&this.settings.setSetting("quickstart",!0),e&&(this.config.disabled||(null===(n=this.uiRoot)||void 0===n||n.removeEventListener("click",this.onClick),this.playIcon.remove(),this.progressUI.showProgress()),this.playPromise.resolve())},this.toggleIframeExpansion=e=>{const t=e?new n.NS:new n.xI;this.engine.commandBinder.issueCommand(t),this.engine.broadcast(new v.U(e))},this.onAppPhaseChangeMessage=async e=>{var t;e.phase!==o.Jj.STARTING&&e.phase!==o.Jj.PLAYING&&e.phase!==o.Jj.ERROR||(this.progressUI.setDone(),this.config.quickstart?this.showQuickstartUI():null===(t=this.uiRoot)||void 0===t||t.classList.add("faded-out"),this.engine.unsubscribe(r.uv,this.onAppPhaseChangeMessage))}}async init(e,t){this.engine=t,this.config=e;const{market:i,commandBinder:n}=this.engine;[this.locale,this.settings,this.containerData,this.sdkData,this.logoViewData]=await Promise.all([t.getModuleBySymbol(h.gS),i.waitForData(m.o),i.waitForData(E.G),i.waitForData(p.d),i.waitForData(w.b)]);const s=await t.market.waitForData(g.q);this.model=s.model.details,this.updateHtmlMetadata(s,this.settings),this.autoPlaying=1===this.settings.getOverrideParam("play",0),this.bindings.push(n.addBinding(I.G,(async e=>{this.resolvePlayPromise(e.startup,e.editMode)})),n.addBinding(I.C,(async e=>{this.toggleIframeExpansion(e.expand)})),this.containerData.onPropertyChanged("size",(e=>{this.updatePlayAnalytics()})),this.settings.onSettingChanged(M.Vg,(()=>this.loadUi()))),e.disabled||(this.bindings.push(this.settings.onSettingChanged(D.ov,(()=>this.renderTitle())),this.settings.onSettingChanged(D.Lj,(()=>this.renderBranding())),this.settings.onSettingChanged(D.qu,(()=>this.renderBranding())),t.subscribe(r.uv,this.onAppPhaseChangeMessage)),this.progressUI=new N(t,this.containerData.element),this.loadUi(),this.getLoadingElements(),this.renderSplashScreen())}dispose(e){var t,i;super.dispose(e),null===(t=this.progressUI)||void 0===t||t.dispose(),null===(i=this.autoPlayer)||void 0===i||i.dispose()}get waitForPlaying(){return this.playPromise.nativePromise()}loadUi(){if(this.uiRoot=this.containerData.element.querySelector("#loading-gui"),!this.uiRoot)throw Error("Loading GUI root not found");this.settings.tryGetSetting(M.Vg,!1)?this.uiRoot.classList.add("hidden"):this.uiRoot.classList.remove("hidden"),this.config.quickstart&&(this.uiRoot.style.pointerEvents="none")}getPresentationOptions(){const{hideTitle:e,hideBranding:t,quickstart:i}=this.config,n=!i&&(void 0!==e?!e:this.settings.tryGetSetting(D.ov,!0)),s=this.settings.tryGetSetting(D.qu,!1),a=this.settings.tryGetSetting(D.Lj,!0);return{title:n,presentedBy:void 0!==t?!t:a&&!s}}getLoadingElements(){const e=this.containerData.element;this.presentedBy=e.querySelector("#loading-presented-by"),this.poweredBy=e.querySelector("#loading-powered-by"),this.mpLogo=e.querySelector("#loading-mp-logo"),this.mpLogo.src=this.logoViewData.logoWhiteR,this.mpLogo.alt=this.locale.t(this.logoViewData.logoPhraseKey),this.circleLoader=e.querySelector("#circleLoader"),this.nameHeader=e.querySelector("#loading-header"),this.background=e.querySelector("#loading-background"),this.tint=e.querySelector("#tint"),this.playIcon=e.querySelector("#showcase-play"),this.playIcon.setAttribute("aria-label",this.locale.t(A.A.PLAY)),this.playIcon.setAttribute("alt",this.locale.t(A.A.PLAY))}addCobrand(){var e;if(null===(e=this.model)||void 0===e?void 0:e.presentedBy){const e=this.presentedBy.querySelector(".loading-label");e&&(e.textContent=this.locale.t(A.A.PRESENTED_BY_CAPS));const t=this.presentedBy.querySelector(".subheader");t&&(t.textContent=this.model.presentedBy),this.presentedBy.classList.remove("hidden")}}hidePlayButtonUI(){var e;this.background.style.backgroundImage="none",this.presentedBy.style.transition="none",this.presentedBy.classList.remove("faded-in"),this.poweredBy.style.transition="none",this.poweredBy.classList.remove("faded-in"),this.nameHeader.classList.add("hidden"),this.tint.classList.add("hidden"),this.circleLoader.classList.add("hidden"),null===(e=this.uiRoot)||void 0===e||e.classList.add("quickstart")}async showQuickstartUI(){var e;this.background.classList.add("faded-out"),await(0,u.c)(500),this.presentedBy.style.transition="",this.presentedBy.classList.add("faded-in"),this.poweredBy.style.transition="",this.poweredBy.classList.add("faded-in"),await(0,u.c)(2500),this.presentedBy.classList.remove("faded-in"),this.poweredBy.classList.remove("faded-in"),null===(e=this.uiRoot)||void 0===e||e.classList.add("faded-out")}showLoadingUI(e){const t=document.createAttribute("data-status");t.value=this.locale.t(A.A.LOADING);const i=this.containerData.element.querySelector("#loader-cont");i&&(i.attributes.setNamedItem(t),i.classList.add(this.locale.languageCode),i.classList.add("loading")),e.classList.add("faded-out"),this.presentedBy.classList.add("faded-in")}renderTitle(){const{title:e}=this.getPresentationOptions();this.nameHeader.classList.toggle("hidden",!e)}renderBranding(){const{presentedBy:e}=this.getPresentationOptions();e?this.addCobrand():this.presentedBy.classList.add("hidden")}async renderSplashScreen(){var e;const{editMode:t,allowPlayInIframe:i,allowAutoPlay:n,disabled:s,openingTool:a,quickstart:o,hidePoweredBy:r}=this.config;this.renderTitle(),this.renderBranding(),r&&this.poweredBy.classList.add("hidden"),this.nameHeader.textContent=this.model.name,this.poweredBy.classList.add("faded-in"),this.tint.classList.add("faded-in");const l=this.containerData.element.querySelector("#play-prompt");this.playPromise.then((()=>{o?this.hidePlayButtonUI():this.showLoadingUI(l)})),this.autoPlayer=new b({editMode:t,allowPlayInIframe:i,allowAutoPlay:n,disabled:s,openingTool:a},this.settings,this.containerData,this.sdkData),this.autoPlaying=await this.autoPlayer.autoPlayIfWhenAllowed(this.autoPlay),this.autoPlaying||(l.classList.remove("hidden"),l.innerText=this.locale.t(A.A.EXPLORE_3D_SPACE),this.playIcon.classList.remove("hidden"),null===(e=this.uiRoot)||void 0===e||e.addEventListener("click",this.onClick)),this.renderBackground(),i||window.scrollTo(0,0)}async renderBackground(){const e=_.s.deserialize();if(this.autoPlaying&&e){const t=await this.engine.market.waitForData(O.A),i=(0,T.d)(e,t);if(i&&(0,T.X)(i,t))return}const t=window.devicePixelRatio||1,i=Math.max(window.innerWidth,400);this.background.style.backgroundImage=`url(api/v1/player/models/${this.config.viewId}/thumb?width=${i}&dpr=${t}&disable=upscale)`}updatePlayAnalytics(){this.engine.getModuleBySymbol(h.aF).then((e=>{e.setOptions(Object.assign({},(0,S.Q9)(this.autoPlaying)))}))}updateHtmlMetadata(e,t){if("function"==typeof ShadowRoot&&this.containerData.rootNode instanceof ShadowRoot)return;const i=t.tryGetSetting(D.k5,null);if(e.model.hasDiscoverUrl()&&i){const{baseModelId:t,sid:n}=e.model,s=new URL(`${i}${t}`,"https://matterport.com");n&&n!==t&&s.searchParams.set("view",n),k("canonical",s.toString())}}}},39157:(e,t,i)=>{"use strict";i.d(t,{U:()=>s});var n=i(7478);class s extends n.QB{constructor(e){super(),this.expanded=e}}},6909:(e,t,i)=>{"use strict";i.d(t,{h:()=>s});var n=i(7478);class s extends n.QB{constructor(e,t,i,n,s,a,o,r,l){super(),this.durationDollhouse=e,this.durationFloorplan=t,this.durationInside=i,this.durationOverlay=n,this.mainMode=s,this.totalBytesDownloaded=a,this.tilesDownloaded=o,this.durationTour=r,this.tourMode=l}}},65256:(e,t,i)=>{"use strict";i.d(t,{G:()=>a,l:()=>s});var n=i(7478);class s extends n.QB{}class a extends n.QB{constructor(e){super(),this.errorType=e}}},38939:(e,t,i)=>{"use strict";i.d(t,{W:()=>a,c:()=>s});var n=i(11165);class s extends n.u{constructor(e){super(),this.payload={pose:e}}}s.id="START_LOCATION_FLY_IN_COMMAND";class a extends n.u{}a.id="START_LOCATION_GOTO_COMMAND"},98002:(e,t,i)=>{"use strict";i.d(t,{NS:()=>s,xI:()=>a});var n=i(11165);class s extends n.u{}s.id="SHOWCASE_START";class a extends n.u{}a.id="SHOWCASE_STOP";class o extends n.u{}o.id="SHOWCASE_READY"},46771:(e,t,i)=>{"use strict";i.d(t,{u:()=>a,k:()=>a});var n=i(68909);class s{constructor(e){this.elements=[],e?(e=>void 0!==e.elements)(e)?this.elements=e.elements.slice():n.Matrix4.prototype.set.apply(this,e):n.Matrix4.prototype.set.apply(this,s.identity)}equals(e){return n.Matrix4.prototype.equals.call(this,e)}clone(){return new s(this)}}s.identity=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];class a extends s{constructor(e){e instanceof Array||e?super(e):super(),this.threeMatrix=new n.Matrix4}set(e,t,i,s,a,o,r,l,d,c,u,h,m,p,E,S){return n.Matrix4.prototype.set.call(this,e,t,i,s,a,o,r,l,d,c,u,h,m,p,E,S),this}makeScale(e,t,i){return n.Matrix4.prototype.makeScale.call(this,e,t,i),this}copy(e){for(let t=0;t{"use strict";i.d(t,{A:()=>n});const n=Object.freeze({signedUrlDefaultExpireTime:24e4,signedUrlCheckInterval:1e4,signedUrlRefreshBuffer:15e3,visionTilingStartDate:new Date("8/26/2016"),visionTilingStartVersion:"1.1.407.13667",defurnishableStartDate:new Date("03/10/2023"),defurnishableStartVersion:"1.2.29221.4-gcac59bd3ec.REL_1425",epsilon:1e-5,skyboxMeshGroup:"_group_skybox_",skysphereMeshGroup:"_group_skysphere_"})},38069:(e,t,i)=>{"use strict";i.d(t,{V:()=>s});var n=i(68909);class s{}s.MP_BRAND=Object.freeze(new n.Color(16724312)),s.MATTERTAG_BLUE=Object.freeze(new n.Color(223357)),s.WHITE=Object.freeze(new n.Color(16777215)),s.BLACK=Object.freeze(new n.Color(0)),s.RED=Object.freeze(new n.Color(16711680)),s.GREEN=Object.freeze(new n.Color(65280)),s.BLUE=Object.freeze(new n.Color(255)),s.YELLOW=Object.freeze(new n.Color(16776960)),s.SINE=Object.freeze(new n.Color(11908275)),s.NEPTUNE=Object.freeze(new n.Color(4217846)),s.LENS_GRAY=Object.freeze(new n.Color(4473924)),s.MIRROR=Object.freeze(new n.Color(14342874)),s.PORTAL=Object.freeze(new n.Color(2236962)),s.SILVER=Object.freeze(new n.Color(13421772))},37458:(e,t,i)=>{"use strict";var n;i.d(t,{X:()=>n}),function(e){e[e.boundingSkybox=-100]="boundingSkybox",e[e.exteriorSplat=-1]="exteriorSplat",e[e.default=0]="default",e[e.panoMarker=4]="panoMarker",e[e.reticule=5]="reticule",e[e.grid=5]="grid",e[e.meshTrims=5]="meshTrims",e[e.pins360=6]="pins360",e[e.roomBounds=7]="roomBounds",e[e.portals=9]="portals",e[e.rotators=10]="rotators",e[e.pins=14]="pins",e[e.pinSelectedHalo=15]="pinSelectedHalo",e[e.lines=20]="lines",e[e.endpoints=21]="endpoints",e[e.labels=22]="labels",e[e.gizmos=23]="gizmos",e[e.ghostFloorDepthPrepass=50]="ghostFloorDepthPrepass",e[e.ghostFloor=51]="ghostFloor",e[e.transformGizmo=999]="transformGizmo",e[e.colorOverlay=1e3]="colorOverlay"}(n||(n={}))},75742:(e,t,i)=>{"use strict";var n;i.d(t,{n:()=>n}),function(e){e.TEXT="text",e.LINK="link",e.HASH="hash",e.USER="user"}(n||(n={}))},81662:(e,t,i)=>{"use strict";i.d(t,{B1:()=>a,YF:()=>o,os:()=>n});var n,s=i(68909);class a{}a.UP=Object.freeze(new s.Vector3(0,1,0)),a.DOWN=Object.freeze(new s.Vector3(0,-1,0)),a.LEFT=Object.freeze(new s.Vector3(-1,0,0)),a.RIGHT=Object.freeze(new s.Vector3(1,0,0)),a.FORWARD=Object.freeze(new s.Vector3(0,0,-1)),a.BACK=Object.freeze(new s.Vector3(0,0,1)),a.ZERO=Object.freeze(new s.Vector3(0,0,0)),a.UNIT=Object.freeze(new s.Vector3(1,1,1)),a.HORIZONTAL_PLANE=Object.freeze(new s.Vector3(1,0,1)),function(e){e.NONE="NONE",e.UP="UP",e.DOWN="DOWN",e.LEFT="LEFT",e.RIGHT="RIGHT",e.FORWARD="FORWARD",e.BACK="BACK",e.ZERO="ZERO",e.UNIT="UNIT",e.HORIZONTAL_PLANE="HORIZONTAL_PLANE"}(n||(n={}));class o{}o.DOWNWARD=new s.Quaternion(-Math.SQRT1_2,0,0,Math.SQRT1_2)},66806:(e,t,i)=>{"use strict";var n;i.d(t,{N:()=>n}),function(e){e[e.Panorama=1]="Panorama",e[e.Dollhouse=2]="Dollhouse",e[e.Floorplan=3]="Floorplan",e[e.Outdoor=4]="Outdoor",e[e.Orthographic=5]="Orthographic",e[e.Mesh=6]="Mesh",e[e.Transition=-1]="Transition"}(n||(n={}))},52018:(e,t,i)=>{"use strict";i.d(t,{t:()=>s});var n=i(80610);class s extends Error{constructor(e,t){super(e instanceof Error?e.message:e),this.name="BaseException",t&&(this.code=t),e instanceof Error&&(this.originalError=e,(0,n.zi)(e)&&(this.isMock=!0))}}},23775:(e,t,i)=>{"use strict";i.d(t,{E:()=>s});var n=i(52018);class s extends n.t{constructor(e="Not implemented"){super(e),this.name="NotImplemented"}}},80610:(e,t,i)=>{"use strict";function n(e){return!!(e&&e instanceof Error&&e.code)}function s(e){return!!(e&&e instanceof Error&&e.originalError)}function a(e){return!!(e&&e instanceof Error&&e.isMock)}function o(e){return n(e)?e.code:""}function r(e){const t=[];let i=e;for(;i;)n(i)&&t.push(i.code),i=s(i)?i.originalError:void 0;return t}i.d(t,{E2:()=>o,Ue:()=>n,fS:()=>r,zi:()=>a})},73237:(e,t,i)=>{"use strict";i.d(t,{OD:()=>o,QG:()=>l,dI:()=>r,n4:()=>a});var n=i(46771),s=i(68909);const a=2,o=1;class r extends s.ShaderMaterial{constructor(e){super(e),this.injectDepthFadeUniforms()}injectDepthFadeUniforms(){this.uniforms.screenSize={value:new s.Vector2},this.uniforms.pixelRatio={value:1},this.uniforms.fadeMaxDepth={value:100},this.uniforms.depthTex={value:null},this.includeCameraMatrices&&(this.uniforms.cameraMatrix={value:new n.k},this.uniforms.inverseProjectionMatrix={value:new n.k})}get fadeDepth(){return a}get fadeWidth(){return o}get includeCameraMatrices(){return!1}setFadeDepthTexture(e){e?(this.defines.FADE_DEPTH=this.fadeDepth.toFixed(3),this.defines.FADE_WIDTH=this.fadeWidth.toFixed(3),this.uniforms.depthTex.value=e):(delete this.defines.FADE_DEPTH,delete this.defines.FADE_WIDTH,this.uniforms.depthTex.value=null),this.needsUpdate=!0}}const l=(e,t,i,n=!0)=>{t.getSize(e.uniforms.screenSize.value),e.uniforms.pixelRatio.value=t.getPixelRatio(),n&&(e.uniforms.cameraMatrix.value.copy(i.matrixWorld),e.uniforms.inverseProjectionMatrix.value.copy(i.projectionMatrixInverse))}},9114:(e,t,i)=>{"use strict";i.d(t,{_:()=>a});var n=i(99625),s=i(24790);class a{constructor(e){this.baseUrl="",this.apqEnabled=!1,this.anonymousHeaderEnabled=!1,this.simulateApiOutage=n.u.NONE,this.nonBaseLayerWriteEnabled=!1,this.startedInPrivateSession=!1,this.startedInCompositeView=!1,this.refreshableStores=new Set,this.sharedCaches=new Set,this.updateForAutoProvisionedLayer=async e=>{if(this.autoProvisionLayerCheckCallback)return this.autoProvisionLayerCheckCallback(e)},this._baseViewId=null!=e?e:null}get baseViewId(){return this.startedInCompositeView||this.startedInPrivateSession?this.initialViewId:this._baseViewId}set baseViewId(e){this._baseViewId=e}toggleNonBaseLayeredWrites(e){this.nonBaseLayerWriteEnabled=e}get isPrivateSession(){return this.startedInPrivateSession}togglePrivateSession(e){this.startedInPrivateSession=e}get isCompositeModel(){return this.startedInCompositeView}toggleCompositeView(e){this.startedInCompositeView=e}shouldWriteLayerId(e){return!!this.nonBaseLayerWriteEnabled&&(""!==e&&e!==s.qw)}async setViewManually(e){const t=Array.from(this.refreshableStores.values());this.currentViewId=e,await Promise.all(t.map((e=>e.manualRefresh())))}async setCurrentViewId(e){const t=Array.from(this.refreshableStores.values());this.currentViewId=e,await Promise.all(t.map((e=>e.refresh())))}async refreshLayeredStores(e){const t=Array.from(this.refreshableStores.values()).filter((t=>e.includes(t.layeredType)));await Promise.all(t.map((e=>e.refresh())))}getViewLookupMode({firstLoad:e=!1}){return this.startedInPrivateSession||this.startedInCompositeView?"self":e?"default":"self"}}a.key="$MdsContext"},20968:(e,t,i)=>{"use strict";i.d(t,{g:()=>l});var n=i(53282),s=i(82748),a=i(23775),o=i(48086),r=i(96276);class l{constructor(e){this.viewId=null,this.newDataCallbacks=new Set,this.refreshPromiseMap=new Map;const{baseUrl:t,viewId:i,server:n}=e;this.config=e,this.context=e.context,this.client=new o.t({baseUrl:t,server:n,mdsContext:e.context}),i&&(this.viewId=i)}dispose(){this.context.refreshableStores.delete(this)}async create(...e){throw new a.E}async read(e={}){throw new a.E}async update(...e){throw new a.E}async delete(...e){throw new a.E}onNewData(e){this.context.refreshableStores.add(this);return(0,n.Sh)((()=>this.newDataCallbacks.add(e)),(()=>this.newDataCallbacks.delete(e)))}async refresh(e){const t=(null==e?void 0:e.modelId)||"default";let i=this.refreshPromiseMap.get(t);return i||(i=this.read(e).then((e=>this.newDataCallbacks.size>0?Promise.all(Array.from(this.newDataCallbacks.values()).map((t=>(t(e),e)))):[e])).then((([e])=>e)).finally((()=>{this.refreshPromiseMap.set(t,null)})),this.refreshPromiseMap.set(t,i)),i}async manualRefresh(){return Promise.resolve({})}async query(e,t,i={}){if(!this.getViewId())throw new r.V("No model view specified for query");const n=Object.assign({fetchPolicy:"cache-first",prefetchKey:this.prefetchKey},i);return this.client.query(e,t,n)}async mutate(e,t,i){const{readonly:n}=this.config;if(n)throw new r.n8("Cannot mutate in read-only mode");if(!this.getViewId())throw new r.V("Cannot mutate, no view was specified");return this.client.mutate(e,t,i).then((e=>{const t="53100"===(0,s.P3)("error","");if(!o.t.isOk(e)||t){const i=new r.YA(o.t.getErrorMessage(e));throw t&&(i.isMock=!0),i}return e}))}setStoreViewId(e){this.viewId=e}getViewId(){const e=this.viewId||this.context.currentViewId||this.context.baseViewId;if(!e)throw new Error("Invalid view id!");return e}getBaseViewId(){const e=this.context.baseViewId;if(!e)throw new Error("MdsStore baseViewId invalid!");return e}readLayerId(){return!!this.context.readLayerId}writeLayerId(e){return this.context.shouldWriteLayerId(e)}}},48086:(e,t,i)=>{"use strict";i.d(t,{t:()=>f,H:()=>A});var n=i(91188),s=i(34132),a=i(23304),o=i(9211),r=i(82460),l=i(41231),d=i(31863),c=i(11751),u=i(50380),h=i(9139),m=i(66790),p=i(96276),E=i(24790),S=i(99625),O=i(77666);const g={};class _ extends O.k{read(e){return null}write(e){}diff(e){return{}}watch(e){return()=>{}}async reset(e){}evict(e){return!1}restore(e){return this}extract(e){return g}removeOptimistic(e){}performTransaction(e,t){}}const T=new h.Vy("model-api-client");const A=(e={})=>()=>new f(e);let v=!1;class f{constructor(e={}){var t,i,o;const c=e.baseUrl||window.location.origin,h=e.server||E.wD,m=e.httpOptions||{};this.graphUrl=e.url||`${c}${h}`,this.mdsContext=e.mdsContext,T.debug(`Initialized Model API client for ${this.graphUrl}`);let p=(0,r.o)(((e,t)=>(t.headers=t.headers||{},(0,u.v)(this.graphUrl,t.headers,t.spaceId),t)));if(null===(t=e.mdsContext)||void 0===t?void 0:t.apqEnabled)if(null===(o=null===(i=window.crypto)||void 0===i?void 0:i.subtle)||void 0===o?void 0:o.digest){const e=(0,l.e)({useGETForHashedQueries:!0,sha256:d.sc});p=p.concat(new n.C(((t,i)=>t.query.definitions.some((e=>"OperationDefinition"===e.kind&&"mutation"===e.operation))?i(t):e.request(t,i))))}else v||(T.warn("Crypto API not available in non-secure context; disabling APQ graphql optimization"),v=!0);p=p.concat((0,s.$)(Object.assign({uri:this.graphUrl,fetch:(e,t)=>{if("POST"===t.method){const{operationName:i}=JSON.parse(t.body);return fetch(`${e}?operation=${i}`,t)}return fetch(e,t)}},m))),this.apollo=new a.R({link:p,cache:new _})}async query(e,t,i={}){var n,s,a,o,r,l,d;if("no-cache"!==i.fetchPolicy&&(null===(n=this.mdsContext)||void 0===n?void 0:n.sharedCaches))for(const n of this.mdsContext.sharedCaches){const s=await n.read(e,t,i);if(void 0!==s)return T.debug(`Using cached response for ${i.prefetchKey}`),s}const c=Object.assign(Object.assign({errorPolicy:"all"},i),{query:e,variables:t,fetchPolicy:"no-cache"});if((null===(s=this.mdsContext)||void 0===s?void 0:s.anonymousHeaderEnabled)&&i.anonymous){(null!==(o=(d=null!==(a=c.context)&&void 0!==a?a:c.context={}).headers)&&void 0!==o?o:d.headers={})["x-apiauthmode"]="PUBLIC"}else if((null===(r=this.mdsContext)||void 0===r?void 0:r.simulateApiOutage)===S.u.TIMEOUT)return N(e);if(i.modelId){(null!==(l=c.context)&&void 0!==l?l:c.context={}).spaceId=i.modelId}return this.apollo.query(c).then((e=>{const{data:t,errors:i}=e,n={data:t,errors:i};return i&&i.length>0&&T.warn("GraphQL query returned errors: \n",e),n})).catch((e=>{throw T.error(e),new p.tW(e,this.getApolloErrorCode(e))}))}async mutate(e,t,i={}){var n;if((null===(n=this.mdsContext)||void 0===n?void 0:n.simulateApiOutage)===S.u.TIMEOUT)return N(e);const s=Object.assign(Object.assign({errorPolicy:"all"},i),{mutation:e,variables:t});return this.apollo.mutate(s).then((e=>{const{data:t,errors:i}=e;return{data:t,errors:i}})).catch((e=>{throw T.error(e),new p.YA(e,this.getApolloErrorCode(e))}))}async upload(e,t,i,n,s){const a={};let o=0;(0,m.S)(i,((e,t,i)=>{if(e&&((n=e).filename&&n.blob&&n.blob instanceof Blob)){const n="file"+o++;a[n]=e,i[t]=`multipart:${n}`}var n}));const r=new FormData;for(const[e,t]of Object.entries(a))r.append(e,t.blob,t.filename);r.append("query",(0,c.y)(e)),r.append("operation",t),r.append("variables",JSON.stringify(i));const l=(0,u.v)(this.graphUrl,{},void 0);return this.uploadFormData(r,l,n,s).then((e=>{if(!f.isOk(e)){const t=f.getErrorCode(e)||"54200";throw new p.yr(f.getErrorMessage(e),t)}return e}))}getApolloErrorCode(e){var t;if(e instanceof o.K4){const i=null===(t=e.networkError)||void 0===t?void 0:t.statusCode;if(i)return`61${i}`}return"61000"}async uploadFormData(e,t,i,n=new XMLHttpRequest){const s=`${this.graphUrl}${e.has("operation")?`?operation=${e.get("operation")}`:""}`;n.open("POST",s,!0),n.responseType="json",n.setRequestHeader("Accept","application/json"),i&&(n.upload.onprogress=i);for(const e in t)n.setRequestHeader(e,t[e]);return new Promise(((t,i)=>{n.onreadystatechange=()=>{4===n.readyState&&(200===n.status?t(n.response):0!==n.status&&i(new p.yr(`${n.status} ${n.statusText}`,`54${n.status}`)))},n.onerror=()=>{i(new p.yr("Network error","54002"))},n.onabort=()=>{T.info("upload canceled!")},n.send(e)}))}static isOk(e,t){if(t){const i=t.split(".");return 0===(e.errors||[]).filter((e=>{if(!e.path)return!0;for(let t=0;t1&&(t+=` (+${e.length-1})`)),t}}function N(e){var t;const i=null===(t=e.definitions.find((e=>"OperationDefinition"===e.kind)).name)||void 0===t?void 0:t.value;return T.warn(`Simulating hang of API query: ${i}`),new Promise((()=>{}))}f.version="2020.05.28"},99625:(e,t,i)=>{"use strict";var n,s;i.d(t,{G:()=>n,u:()=>s}),function(e){e.CACHE="cache",e.PRELOAD="preload",e.NONE="none"}(n||(n={})),function(e){e[e.NONE=0]="NONE",e[e.TIMEOUT=1]="TIMEOUT"}(s||(s={}))},96276:(e,t,i)=>{"use strict";i.d(t,{CU:()=>c,V:()=>l,YA:()=>o,n8:()=>d,tW:()=>a,yr:()=>r});var n=i(52018),s=i(44094);n.t;class a extends n.t{constructor(e,t="62001"){super(e),this.name="MdsReadError",this.code=t}}class o extends n.t{constructor(e,t="63001"){super(e),this.name="MdsWriteError",this.code=t}}class r extends n.t{constructor(e,t="63002"){super(e),this.name="MdsUploadError",this.code=t}}class l extends n.t{constructor(e,t="52404"){super(e),this.name="InvalidView",this.code=t}}class d extends n.t{constructor(e,t="53001"){super(e),this.name="ReadOnly",this.code=t}}class c extends Error{constructor(e={}){var t,i;super(e.message||(null===(i=null===(t=e.errors)||void 0===t?void 0:t[0])||void 0===i?void 0:i.message)||"GraphQL Error"),this.name="GraphException",this.operationName=e.operationName||(0,s.n4)(e.gql||""),this.errors=Array.isArray(e.errors)?[...e.errors]:[],this.code=e.code||(0,s.BP)(this.errors)||""}}},61430:(e,t,i)=>{"use strict";var n,s,a,o;i.d(t,{fd:()=>o,o9:()=>a,pi:()=>s,yg:()=>n}),function(e){e.PHOTO="photo",e.RICH="rich",e.VIDEO="video"}(n||(n={})),function(e){e.COMMENT="comment",e.MATTERTAG="mattertag"}(s||(s={})),function(e){e.ALPHA="alpha",e.COLORED_ROOMS="colored_rooms",e.MEASUREMENTS="measurements",e.PHOTOGRAMY="photogramy",e.SCHEMATIC="schematic"}(a||(a={})),function(e){e.AVAILABLE="available",e.LOCKED="locked",e.UNAVAILABLE="unavailable"}(o||(o={}))},74381:(e,t,i)=>{"use strict";var n,s,a,o,r,l,d,c,u,h,m,p,E,S,O,g,_,T,A,v,f,N,I,L,R,y,b,D,M,P,k,w,C,x,H,U,F,G,V,W,B,j,K,z,Y,$,X,Q,q,Z,J,ee,te,ie,ne,se,ae,oe,re,le,de,ce,ue,he,me,pe,Ee,Se,Oe,ge,_e,Te,Ae,ve,fe,Ne,Ie,Le,Re,ye,be,De,Me,Pe,ke,we,Ce,xe,He,Ue,Fe,Ge,Ve,We,Be,je,Ke,ze,Ye,$e,Xe,Qe,qe,Ze,Je,et,tt,it,nt,st,at,ot,rt,lt,dt,ct,ut,ht,mt;i.d(t,{$X:()=>je,$h:()=>Me,Bu:()=>mt,D6:()=>Ze,ES:()=>ot,I$:()=>S,K7:()=>Ie,OQ:()=>re,UR:()=>Q,UY:()=>F,WU:()=>lt,Zw:()=>De,_f:()=>se,gP:()=>w,h6:()=>be,hL:()=>xe,jG:()=>ae,jM:()=>ee,lJ:()=>Re,n:()=>Pe,nE:()=>ut,pi:()=>we,pu:()=>He,ve:()=>ve,w0:()=>Ke,xx:()=>Fe,zf:()=>ue}),function(e){e.NAME="NAME",e.ROLE="ROLE",e.TYPE="TYPE",e.USER_EMAIL="USER_EMAIL",e.USER_GROUP_NAME="USER_GROUP_NAME"}(n||(n={})),function(e){e.EMPTY="empty",e.PARSED="parsed",e.RAW="raw",e.VERIFIED="verified"}(s||(s={})),function(e){e.FULL="full",e.NONE="none",e.PARTIAL="partial"}(a||(a={})),function(e){e.FOREVER="FOREVER",e.LAST_7_DAYS="LAST_7_DAYS",e.LAST_30_DAYS="LAST_30_DAYS"}(o||(o={})),function(e){e.ESTIMATE="estimate",e.EXACT="exact",e.TRUNCATED="truncated"}(r||(r={})),function(e){e.COMPLETED="COMPLETED",e.FAILED="FAILED",e.OPENED="OPENED",e.PENDING="PENDING"}(l||(l={})),function(e){e.IMPRESSION="impression",e.MODELLOADED="modelLoaded"}(d||(d={})),function(e){e.LAST7DAYS="last7Days",e.LAST30DAYS="last30Days",e.LIFETIME="lifetime"}(c||(c={})),function(e){e.CREATED="created",e.IMPRESSIONS="impressions",e.NAME="name",e.UNIQUE_VISITORS="unique_visitors",e.VIEWS="views"}(u||(u={})),function(e){e.CAPTURE="capture",e.LLM="llm",e.VISION="vision",e.WORKSHOP="workshop"}(h||(h={})),function(e){e.LZMA="lzma",e.NONE="none"}(m||(m={})),function(e){e.AVAILABLE="available",e.LOCKED="locked",e.UNAVAILABLE="unavailable"}(p||(p={})),function(e){e.EXTERNAL="external",e.UPLOAD="upload"}(E||(E={})),function(e){e.IMAGE="image",e.PDF="pdf",e.RICH="rich",e.VIDEO="video",e.ZIP="zip"}(S||(S={})),function(e){e.PROVISIONED="provisioned",e.UPLOADED="uploaded"}(O||(O={})),function(e){e.LOCKED="locked",e.UNAVAILABLE="unavailable",e.UNLOCKED="unlocked"}(g||(g={})),function(e){e.V1="v1",e.V2="v2"}(_||(_={})),function(e){e.COMPLETED="completed",e.FAILED="failed",e.INPROGRESS="inprogress",e.ORDERED="ordered",e.PLACED="placed",e.PREVIEWABLE="previewable"}(T||(T={})),function(e){e.CANCELED="canceled",e.DELETED="deleted",e.DELETING="deleting",e.FAILED="failed",e.ORDERED="ordered",e.PLACED="placed",e.PREVIEWABLE="previewable",e.UNAVAILABLE="unavailable",e.UNKNOWN="unknown",e.UNLOCKED="unlocked",e.UNLOCKING="unlocking"}(A||(A={})),function(e){e.DOLLHOUSE="dollhouse",e.FLOORPLAN="floorplan",e.OUTDOOR="outdoor",e.PANORAMA="panorama",e.TRANSITION="transition",e.UNKNOWN="unknown"}(v||(v={})),function(e){e.CAP_SVCS="CAP_SVCS",e.DIGI_EXPRESS="DIGI_EXPRESS",e.DIGI_PRO="DIGI_PRO"}(f||(f={})),function(e){e.WALL="wall",e.WINDOW="window"}(N||(N={})),function(e){e.HANDHELD="handheld",e.OTHER="other",e.PRO="pro",e.SPHERICAL="spherical"}(I||(I={})),function(e){e.BUNDLE="bundle",e.USER="user",e.VISION="vision"}(L||(L={})),function(e){e.DUPLICATE="duplicate",e.FAIL="fail",e.REPLACE="replace",e.SKIP="skip"}(R||(R={})),function(e){e.CREATED="created",e.MODIFIED="modified"}(y||(y={})),function(e){e.COMPARE="compare",e.EXTERIOR="exterior",e.PROJECT="project",e.SITE="site"}(b||(b={})),function(e){e.FAST="fast",e.NORMAL="normal",e.URGENT="urgent"}(D||(D={})),function(e){e.ASPIRATIONAL="aspirational",e.CONVERSATIONAL="conversational",e.INFORMATIVE="informative"}(M||(M={})),function(e){e.ADDRESS="address",e.CAMERA="camera",e.CAMERAFAMILYID="cameraFamilyId",e.CAMERAGROUPID="cameraGroupId",e.CAMERAMANUFACTURER="cameraManufacturer",e.CAMERAMANUFACTURERID="cameraManufacturerId",e.CAMERAMODEL="cameraModel",e.CAMERAMODELID="cameraModelId",e.CAMERATYPEID="cameraTypeId",e.DESCRIPTION="description",e.EXTENSIONTAG="extensiontag",e.GEODISTANCE="geoDistance",e.GEOREGION="geoRegion",e.ID="id",e.MLSID="mlsId",e.MLSNAME="mlsName",e.NAME="name",e.SUMMARY="summary",e.USERPROPERTYCLASSIFICATION="userPropertyClassification",e.USERPROPERTYCLASSIFICATIONEXACT="userPropertyClassificationExact"}(P||(P={})),function(e){e.KILOMETERS="kilometers",e.MILES="miles"}(k||(k={})),function(e){e.INVISIBLE="invisible",e.WALL="wall"}(w||(w={})),function(e){e.CSV="CSV"}(C||(C={})),function(e){e.MATTERTAGS="Mattertags",e.NOTECOMMENTS="NoteComments",e.NOTES="Notes"}(x||(x={})),function(e){e.ACCOUNT_DELETED="ACCOUNT_DELETED",e.ACCOUNT_INACTIVE="ACCOUNT_INACTIVE",e.ACTIVE="ACTIVE",e.ARCHIVED="ARCHIVED",e.CORRUPT_MODEL="CORRUPT_MODEL",e.DELETED="DELETED",e.FAILED_PROCESSING="FAILED_PROCESSING",e.FLAGGED="FLAGGED",e.PENDING="PENDING",e.PROCESSING="PROCESSING",e.UNRECOVERABLE_ERRORS="UNRECOVERABLE_ERRORS"}(H||(H={})),function(e){e.SPLAT="SPLAT",e.SPLAT_SPLATTER="SPLAT_SPLATTER"}(U||(U={})),function(e){e.BLOCKED="blocked",e.DISABLED="disabled",e.GATED="gated",e.UNLOCKED="unlocked"}(F||(F={})),function(e){e.MAY="may",e.MUST="must",e.MUST_NOT="must_not"}(G||(G={})),function(e){e.ALPHA="alpha",e.COLORED_ROOMS="colored_rooms",e.MEASUREMENTS="measurements",e.PHOTOGRAMY="photogramy",e.SCHEMATIC="schematic"}(V||(V={})),function(e){e.ADMIN="Admin",e.FOLDERCREATOR="FolderCreator",e.FOLDERSHARES="FolderShares",e.USERGROUPFOLDERSHARES="UserGroupFolderShares"}(W||(W={})),function(e){e.ADDRESS="address",e.INTERNALID="internalId",e.MLSID="mlsId",e.MLSNAME="mlsName",e.STANDARD="standard"}(B||(B={})),function(e){e.USEREMAIL="UserEmail",e.USERGROUPID="UserGroupId",e.USERID="UserId"}(j||(j={})),function(e){e.ALL="all",e.ID="id",e.NAME="name"}(K||(K={})),function(e){e.CREATED="created",e.MODIFIED="modified",e.NAME="name"}(z||(z={})),function(e){e.PSEUDO_ORG="PSEUDO_ORG",e.STANDARD="STANDARD",e.TRASH_CAN="TRASH_CAN"}(Y||(Y={})),function(e){e.CLIENT="client",e.GSV="gsv",e.PROCESSING="processing",e.UNKNOWN="unknown"}($||($={})),function(e){e.COMPLETE="COMPLETE",e.ERROR="ERROR",e.PENDING="PENDING"}(X||(X={})),function(e){e.REEL="reel",e.STORY="story"}(Q||(Q={})),function(e){e.CANCELLED="cancelled",e.COMPLETED="completed",e.CREATED="created",e.FAILED="failed",e.INPROGRESS="inprogress"}(q||(q={})),function(e){e.FAMILY_36H11="FAMILY_36H11",e.STANDARD41H12="STANDARD41H12",e.UNSUPPORTED="UNSUPPORTED"}(Z||(Z={})),function(e){e.APRILTAG="apriltag"}(J||(J={})),function(e){e.ANCHORLOCATION="AnchorLocation",e.HIGHLIGHTREEL="HighlightReel",e.LABEL="Label",e.MATTERTAG="Mattertag",e.MEASUREMENTPATH="MeasurementPath",e.MODELFLOOR="ModelFloor",e.MODELROOM="ModelRoom",e.NOTE="Note",e.OBJECTANNOTATION="ObjectAnnotation",e.ORDEREDLIST="OrderedList",e.PANORAMICIMAGELOCATION="PanoramicImageLocation",e.PHOTO="Photo"}(ee||(ee={})),function(e){e.SHOWCASE="showcase"}(te||(te={})),function(e){e.PHOTO="photo",e.RICH="rich",e.VIDEO="video"}(ie||(ie={})),function(e){e.DEFAULT="default",e.LANDMARK="landmark",e.OBJECTANNOTATION="objectAnnotation"}(ne||(ne={})),function(e){e.LINETYPE_2D="linetype_2D",e.LINETYPE_3D="linetype_3D"}(se||(se={})),function(e){e.DISABLED="disabled",e.MEASURE="measure",e.MEASUREANDVIEW="measureAndView"}(ae||(ae={})),function(e){e.FLOORS="floors",e.HIGHLIGHTREEL="highlightReel",e.IMAGE="image",e.LABELS="labels",e.MATTERTAGS="mattertags",e.MEASUREMENTPATHS="measurementPaths",e.ORDEREDLISTS="orderedLists",e.PLAYEROPTIONS="playerOptions",e.SWEEPS="sweeps"}(oe||(oe={})),function(e){e.FULL="full",e.PUBLIC="public",e.VIEWER="viewer"}(re||(re={})),function(e){e.ADMIN="Admin",e.MODELCREATOR="ModelCreator",e.MODELSHARES="ModelShares",e.USERGROUPMODELSHARES="UserGroupModelShares"}(le||(le={})),function(e){e.PASSWORD="password",e.PRIVATE="private",e.PUBLIC="public",e.UNLISTED="unlisted"}(de||(de={})),function(e){e.ACTIVE="active",e.ARCHIVED="archived",e.FLAGGED="flagged",e.PENDING="pending"}(ce||(ce={})),function(e){e.BLACK="black",e.GREY="grey",e.WHITE="white"}(ue||(ue={})),function(e){e.DEFAULT="default",e.MLS="mls",e.UNBRANDED="unbranded"}(he||(he={})),function(e){e.DESCRIPTION="description",e.SUMMARY="summary"}(me||(me={})),function(e){e.ACTIVATION_STATE_CHANGED="activation_state_changed",e.BUNDLE_COMPLETED="bundle_completed",e.BUNDLE_REQUESTED="bundle_requested",e.BUNDLE_UPDATED="bundle_updated",e.CREATED="created",e.DELETED="deleted",e.DETAILS_CHANGED="details_changed",e.INSERTED="inserted",e.PROCESSED="processed",e.REPLACED="replaced",e.RESTORED="restored",e.TRANSFERRED_IN="transferred_in",e.TRANSFERRED_OUT="transferred_out",e.UPDATED="updated",e.UPLOADED="uploaded",e.VISIBILITY_CHANGED="visibility_changed"}(pe||(pe={})),function(e){e.ACTIVE="active",e.ARCHIVED="archived"}(Ee||(Ee={})),function(e){e.ID="id",e.INTERNALID="internalId",e.MLSID="mlsId"}(Se||(Se={})),function(e){e.DEFAULT="default",e.VR="vr"}(Oe||(Oe={})),function(e){e.COMPLETED="completed",e.FAILED="failed",e.PROCESSING="processing",e.STAGING="staging"}(ge||(ge={})),function(e){e.USEREMAIL="UserEmail",e.USERGROUPID="UserGroupId",e.USERID="UserId"}(_e||(_e={})),function(e){e.CREATED="created",e.INTERNALID="internalId",e.LAST7IMPRESSIONSEVENTCOUNT="last7ImpressionsEventCount",e.LAST7MODELSLOADEDEVENTCOUNT="last7ModelsLoadedEventCount",e.LAST7MODELSLOADEDUSERCOUNT="last7ModelsLoadedUserCount",e.LAST30IMPRESSIONSEVENTCOUNT="last30ImpressionsEventCount",e.LAST30MODELSLOADEDEVENTCOUNT="last30ModelsLoadedEventCount",e.LAST30MODELSLOADEDUSERCOUNT="last30ModelsLoadedUserCount",e.LIFETIMEIMPRESSIONSEVENTCOUNT="lifetimeImpressionsEventCount",e.LIFETIMEMODELSLOADEDEVENTCOUNT="lifetimeModelsLoadedEventCount",e.LIFETIMEMODELSLOADEDUSERCOUNT="lifetimeModelsLoadedUserCount",e.MLSID="mlsId",e.MODIFIED="modified",e.NAME="name",e.POSTALCODE="postalCode",e.SCORE="score"}(Te||(Te={})),function(e){e.COPY="copy",e.DEMO="demo",e.PROCESSING="processing",e.TRANSFER="transfer",e.UNKNOWN="unknown"}(Ae||(Ae={})),function(e){e.ACTIVATING="activating",e.ACTIVATION_PENDING="activation_pending",e.ACTIVE="active",e.FAILED="failed",e.INACTIVATING="inactivating",e.INACTIVATION_PENDING="inactivation_pending",e.INACTIVE="inactive",e.PENDING="pending",e.PROCESSING="processing",e.STAGING="staging"}(ve||(ve={})),function(e){e.ACTIVE="active",e.INACTIVE="inactive"}(fe||(fe={})),function(e){e.COPY="copy",e.DEMO="demo",e.ORIGINAL="original"}(Ne||(Ne={})),function(e){e.PRIVATE="private",e.PUBLIC="public"}(Ie||(Ie={})),function(e){e.SERIAL="serial"}(Le||(Le={})),function(e){e.DOORWAY="doorway",e.OPENING="opening"}(Re||(Re={})),function(e){e.CREATED="created",e.NAME="name",e.STATUS="status",e.SUBSCRIPTION_ID="subscription_id"}(ye||(ye={})),function(e){e.CENTER="center",e.START="start"}(be||(be={})),function(e){e.AUTO="auto",e.LEFT="left",e.RIGHT="right"}(De||(De={})),function(e){e.AUTO="auto",e.MANUAL="manual",e.UNPLACED="unplaced"}(Me||(Me={})),function(e){e.UPLOAD="upload",e.VISION="vision"}(Pe||(Pe={})),function(e){e.CYLINDRICAL="cylindrical",e.EQUIRECTANGULAR="equirectangular",e.SKYBOX="skybox"}(ke||(ke={})),function(e){e.COMMENT="comment",e.MATTERTAG="mattertag"}(we||(we={})),function(e){e.DISCOVER="discover",e.FOLDER="folder",e.GRANT="grant",e.JOB="job",e.MODEL="model",e.ORDER="order",e.ORGANIZATION="organization",e.USAGE="usage",e.USER="user"}(Ce||(Ce={})),function(e){e.SNAPSHOT="snapshot",e.TOUR="tour"}(xe||(xe={})),function(e){e.BUNDLE="bundle",e.USER="user",e.VISION="vision"}(He||(He={})),function(e){e.ICON="icon",e.ORIGINAL="original",e.PRESENTATION="presentation",e.PREVIEW="preview",e.THUMBNAIL="thumbnail",e.WEB="web"}(Ue||(Ue={})),function(e){e.EQUIRECTANGULAR="equirectangular",e.PHOTO2D="photo2D"}(Fe||(Fe={})),function(e){e.AVAILABILITY="availability",e.FLAG="flag",e.QUOTA="quota",e.VALUE="value"}(Ge||(Ge={})),function(e){e.COMPLETE="complete",e.FAILED="failed",e.INPROGRESS="inprogress",e.STAGING="staging"}(Ve||(Ve={})),function(e){e.USER="user",e.VISION="vision"}(We||(We={})),function(e){e.FLOORPLAN="FLOORPLAN",e.PHOTO="PHOTO",e.VIDEO="VIDEO"}(Be||(Be={})),function(e){e.OPEN="open",e.RESOLVED="resolved"}(je||(je={})),function(e){e.BOUNDARYEDGE="boundaryEdge",e.BOUNDARYVERTEX="boundaryVertex",e.ROOM="room"}(Ke||(Ke={})),function(e){e.ABORTED="aborted",e.ALIGNED="aligned",e.DELETED="deleted",e.FAILED="failed",e.UNALIGNED="unaligned"}(ze||(ze={})),function(e){e.ANCHOR="anchor",e.ID="id",e.LOCATION="location"}(Ye||(Ye={})),function(e){e.MESH="mesh",e.PANO="pano",e.UNKNOWN="unknown"}($e||($e={})),function(e){e.FACE_BLURRING="face_blurring",e.FIDUCIAL_DETECTION="fiducial_detection",e.FIDUCIAL_REMOVAL="fiducial_removal"}(Xe||(Xe={})),function(e){e.ADDRESS="ADDRESS",e.ALL="ALL",e.CREATED_BY="CREATED_BY",e.INTERNAL_ID="INTERNAL_ID",e.MLS_ID="MLS_ID",e.MLS_NAME="MLS_NAME"}(Qe||(Qe={})),function(e){e.DEMO="demo",e.DISCOVERABLE="discoverable",e.FLAGGED="flagged",e.INACTIVE="inactive"}(qe||(qe={})),function(e){e.DEFAULT="default",e.DISABLED="disabled",e.ENABLED="enabled"}(Ze||(Ze={})),function(e){e.FOLDER="Folder",e.MODEL="Model",e.ORGANIZATION="Organization"}(Je||(Je={})),function(e){e.USER="USER",e.USER_GROUP="USER_GROUP"}(et||(et={})),function(e){e.ASC="asc",e.DESC="desc"}(tt||(tt={})),function(e){e.ACCEPTED="accepted",e.DISMISSED="dismissed",e.REJECTED="rejected",e.UNREVIEWED="unreviewed"}(it||(it={})),function(e){e.HIGH="high",e.LOW="low"}(nt||(nt={})),function(e){e.AFTERNOON="afternoon",e.DAWN="dawn",e.DUSK="dusk",e.MORNING="morning",e.NIGHT="night"}(st||(st={})),function(e){e.ACCEPTED="accepted",e.CANCELLED="cancelled",e.INVALID="invalid",e.PENDING="pending",e.REJECTED="rejected"}(at||(at={})),function(e){e.FADE_TO_BLACK="fade_to_black",e.INSTANT="instant",e.INTERPOLATE="interpolate"}(ot||(ot={})),function(e){e.CAMERAUNSUPPORTED="cameraUnsupported",e.ENABLEMENTEXPIRED="enablementExpired",e.FEATUREBLOCKED="featureBlocked",e.NOTIMPLEMENTED="notImplemented",e.ORGSETTINGSDISABLED="orgSettingsDisabled",e.PERMISSIONMISSINGUNLOCK="permissionMissingUnlock",e.PERMISSIONMISSINGVIEW="permissionMissingView",e.QUOTAEXCEEDED="quotaExceeded"}(rt||(rt={})),function(e){e.IMPERIAL="imperial",e.METRIC="metric"}(lt||(lt={})),function(e){e.CREATED="created",e.EMAIL="email",e.FIRST_NAME="first_name",e.LAST_NAME="last_name",e.MODIFIED="modified"}(dt||(dt={})),function(e){e.DEFAULT="default",e.ROOT="root",e.SELF="self"}(ct||(ct={})),function(e){e.DOLLHOUSE="dollhouse",e.FLOORPLAN="floorplan",e.MESH="mesh",e.PANORAMA="panorama"}(ut||(ut={})),function(e){e.BASIC="basic",e.NONE="none",e.TOKEN="token"}(ht||(ht={})),function(e){e.CANCELED="Canceled",e.COMPLETED="Completed",e.CONTINUEDASNEW="ContinuedAsNew",e.FAILED="Failed",e.RUNNING="Running",e.TERMINATED="Terminated",e.TIMEDOUT="TimedOut",e.UNRECOGNIZED="Unrecognized",e.UNSPECIFIED="Unspecified"}(mt||(mt={}))},24790:(e,t,i)=>{"use strict";i.d(t,{l9:()=>a,qw:()=>o,vE:()=>s,wD:()=>n});const n=`${window.location.pathname}`+"api/mp/models/graph",s=`${window.location.pathname}`+"api/mp/attachments/graph",a="data.model.views",o="aaaaaaaaaaaaaaaaaaaaaaaaa"},44094:(e,t,i)=>{"use strict";function n(e){return null!=e}i.d(t,{BP:()=>o,n4:()=>s,sw:()=>n});const s=e=>{var t,i;if(a(e)){const n=null===(t=e.definitions)||void 0===t?void 0:t.find((e=>"OperationDefinition"===e.kind));return(null===(i=null==n?void 0:n.name)||void 0===i?void 0:i.value)||""}if("string"==typeof e){const t=e.match(/(?:query|mutation)\s+(\w+)/);return(null==t?void 0:t[1])||""}return""},a=e=>!!e&&"object"==typeof e&&Array.isArray(e.definitions),o=e=>{var t,i;return r(e)?null===(i=null===(t=null==e?void 0:e[0])||void 0===t?void 0:t.extensions)||void 0===i?void 0:i.code:void 0},r=e=>!(!Array.isArray(e)||!e.every((e=>(e=>"string"==typeof(null==e?void 0:e.message)&&"object"==typeof(null==e?void 0:e.extensions))(e))))},60662:(e,t,i)=>{"use strict";i.d(t,{e:()=>s});var n=i(7478);class s extends n.QB{constructor(e,t,i){super(),this.sweepId=e,this.sweepIndex=t,this.totalSweeps=i}}},18855:(e,t,i)=>{"use strict";i.d(t,{n:()=>s});var n=i(7478);class s extends n.QB{constructor(e,t){super(),this.sweepId=e,this.hovered=t}}},71687:(e,t,i)=>{"use strict";i.d(t,{$c:()=>o,$q:()=>Xe,A5:()=>de,AO:()=>ve,CE:()=>u,Et:()=>s,FI:()=>M,Fn:()=>$e,GR:()=>G,Gw:()=>He,HX:()=>I,He:()=>ce,J$:()=>Se,JN:()=>ze,JY:()=>Oe,KT:()=>ue,Kv:()=>z,LG:()=>ye,Ll:()=>pe,M7:()=>je,N4:()=>Z,N7:()=>we,N9:()=>U,Ne:()=>W,Np:()=>Le,PD:()=>le,PJ:()=>me,PM:()=>B,Pn:()=>Ae,QS:()=>K,QW:()=>L,Qj:()=>m,Qm:()=>Fe,SD:()=>Ve,SH:()=>Ue,T9:()=>fe,TN:()=>Y,TV:()=>he,TY:()=>p,Tx:()=>ie,UN:()=>Be,Uu:()=>te,Vc:()=>x,Vu:()=>oe,Wh:()=>Ne,X$:()=>V,X7:()=>S,XQ:()=>xe,Xf:()=>Ce,Xx:()=>N,YC:()=>Ke,Yj:()=>Ee,Yr:()=>v,Z7:()=>h,ZF:()=>k,_q:()=>Q,_v:()=>_,aF:()=>n,aU:()=>D,az:()=>P,bj:()=>F,co:()=>De,cy:()=>X,di:()=>c,eE:()=>l,ep:()=>T,et:()=>O,f0:()=>be,fO:()=>j,gS:()=>w,gk:()=>Re,gy:()=>$,iV:()=>Te,jh:()=>d,kG:()=>ne,kM:()=>ae,kd:()=>q,lN:()=>ke,lf:()=>J,mL:()=>y,nu:()=>R,pR:()=>b,qD:()=>Ie,qL:()=>a,qy:()=>r,rA:()=>g,rz:()=>re,sA:()=>se,sc:()=>_e,se:()=>Me,tQ:()=>We,uq:()=>Ye,vM:()=>ee,vj:()=>C,wY:()=>Pe,xV:()=>ge,yR:()=>f,yT:()=>Ge,zX:()=>A,zj:()=>E,zy:()=>H});const n="IAnalytics",s="IAnnotationsModule",a="IApiClientModule",o="IAppAnalytics",r="IAttachmentsModule",l="IAutomationSupport",d="ICameraModule",c="ICameraStartModule",u="ICanvas",h="IContainerDataModule",m="IDefurnishModule",p="IPanoramaControls",E="IDollhouseControls",S="ICommonControlsForwarder",O="IZoomControls",g="ICurrentPanoMarker",_="ICursorController",T="ICursorDataModule",A="ICursorMesh",v="IDwellAnalytics",f="IFatcaster",N="IFloorCaster",I="IFloorsDataModule",L="IFloorsViewDataModule",R="IGuiModule",y="IInput",b="IInteractionModeModule",D="ILabelDataModule",M="ILabelRenderer",P="ILayersModule",k="ILineRenderer",w="ITranslate",C="IBrandModule",x="ILoginRedirect",H="IMeasurementModeModule",U="IMattertagDataModule",F="IModelDataModule",G="IModelMeshModule",V="IMouseCursor",W="IMeshApiFixup",B="IMeshQuery",j="IMeshTrimDataModule",K="IModelRatingModule",z="INavigationModule",Y="INotesModule",$="IObjectTagSuggestionsDataModule",X="IOrderedListModule",Q="IOrthographicControls",q="IPinsModule",Z="IPluginRegistry",J="IPluginConfigDataModule",ee="IPluginUIModule",te="IPolicyModule",ie="IPreRendererModule",ne="IExternalR3FModule",se="IRaycasterModule",ae="IRenderToTexture",oe="IRoomBoundDataModule",re="IRoomBoundModule",le="IRoomDataModule",de="IRoomBoundRenderer",ce="IScanInfoDataModule",ue="ISceneModule",he="ISchedulerModule",me="IScreenshotsModule",pe="ISdkLanding",Ee="ISearchModule",Se="ISensorModule",Oe="ISES",ge="ICompareModule",_e="ICompareGuiModule",Te="ISkyboxModule",Ae="ISnapshotsModule",ve="ISnapshotsEditor",fe="IStorageModule",Ne="ISweepDataModule",Ie="ISweepPano",Le="ISweepPathModule",Re="ISweepPinMesh",ye="ISweepPinNavigation",be="ISweepPortalMesh",De="ISweepPortalNavigation",Me="ISweepPucks",Pe="ISweepTextureLoader",ke="ITagsModule",we="IToolsModule",Ce="IToursControls",xe="IToursDataModule",He="IToursGenerator",Ue="IUsersModule",Fe="IViewportModule",Ge="IViewmodeChange",Ve="IViewmodesDataModule",We="IVideoRecorder",Be="IVisibleMeshBounds",je="IWebGLRendererModule",Ke="IWebXR",ze="IFeatureUsageAnalytics",Ye="IToolAnnouncementView",$e="ISplatsModule",Xe="ISplatsDataModule"},68375:(e,t,i)=>{"use strict";i.d(t,{s:()=>a});var n=i(96540),s=i(77570);function a(){return(0,n.useContext)(s.B).analytics}},37518:(e,t,i)=>{"use strict";i.d(t,{e:()=>s,q:()=>n});const n="analytics_provider",s="features/analytics-beta"},85935:(e,t,i)=>{"use strict";i.d(t,{$E:()=>p,BX:()=>O,Q9:()=>E,oA:()=>l,uo:()=>m});var n=i(77232),s=i(27200),a=i(55326),o=i(54882);const r=e=>`${e}_3.0`,l=e=>e,d=e=>{var t,i;return{pme:null!==(i=(null!==(t=window.MP_PLATFORM_METADATA)&&void 0!==t?t:{}).pme)&&void 0!==i&&i}},c=e=>({height:e.innerHeight,width:e.innerWidth}),u=e=>({width:e.screen.width,height:e.screen.height,density:e.devicePixelRatio}),h=()=>{try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(e){return""}},m=()=>{const e=(new n.UAParser).getResult();let t=e.os.name,i=e.browser.name;const a=Object.assign({},e.device);return(0,s.J0)()&&(t="iPadOS",a.vendor="Apple",a.model="iPad",a.type="tablet","Safari"===i&&(i="Mobile Safari")),{browser:{name:i,major:e.browser.major,version:e.browser.version,language:navigator.language||"",languages:navigator.languages?navigator.languages.join(", "):"",prefers_color_scheme:(0,s.KS)(),prefers_reduced_motion:(0,s.Ow)()},os:{name:t,version:e.os.version},device:{vendor:a.vendor,model:a.model,type:a.type}}};function p(e){var t;const i=window,n=i.parent!==i,o="1"===e.play||"true"===e.play;return Object.assign({model_id:e.model||e.m||"",language_tag:null!==(t=e.lang)&&void 0!==t?t:null,quickstart:"1"===e.qs,is_mobile:(0,s.Fr)(),iframe:n,session_id:(0,a.e)(),platform:m(),pme:d(i),authTokenProvided:!!e.auth||!!e.connectauth},E(o))}function E(e){const t=window,i=t.innerWidth/t.innerHeight,n=t.parent!==t;return{start_source:e?"autoplay":n?"click":"fullpage",autoplay:e,aspect_ratio:isFinite(i)?i:1,window:c(t)}}function S(e,t){const i=window;return{app:{name:r(t),version:"26.2.1_webgl-242-gba314d5588"},locale:e,screen:u(i),timezone:h(),location:{}}}function O(e,t,i){const n=S(t,i);return(0,o.A)(e).then((e=>{n.location={city:e.city,locality:e.locality,colo:e.colo,continent:e.continent,country:e.country_name,country_code:e.country_code,metro_code:e.metro_code,region:e.region,timezone:e.timezone}})),n}},30926:(e,t,i)=>{"use strict";i.d(t,{o:()=>o});var n=i(12625),s=i(97994),a=i(46671);class o extends n.B{constructor(){super(),this.name="annotations-view-data",this.dockedAnnotationObservable=(0,s.p)(null),this.billboardAnnotationObservable=(0,s.p)(null),this.billboardSelectedObservable=(0,s.p)(!1),this.capabilities=new Map}setDockedAnnotation(e,t=null,i){const n=e&&i?{id:e,annotationType:i,layerId:t}:null;this.isEqual(n,this.dockedAnnotation)||this.atomic((()=>{this.dockedAnnotationObservable.value=n,n&&this.billboardSelected&&(this.billboardSelectedObservable.value=!1)}))}get dockedAnnotation(){return this.dockedAnnotationObservable.value}onDockedAnnotationChanged(e){return this.dockedAnnotationObservable.onChanged(e)}setBillboardAnnotation(e,t=null,i,n){const s=e&&i?{id:e,annotationType:i,layerId:t}:null;this.atomic((()=>{this.isEqual(s,this.billboardAnnotation)||(this.billboardAnnotationObservable.value=s),void 0===n&&s||(this.billboardSelectedObservable.value=!!n,n&&this.dockedAnnotation&&(this.dockedAnnotationObservable.value=null))}))}get billboardAnnotation(){return this.billboardAnnotationObservable.value}get billboardSelected(){return this.billboardSelectedObservable.value}get selectedAnnotation(){return this.billboardSelected?this.billboardAnnotation:null}updateCapabilities(e,t){const i=this.getCapabilities(e);i.atomic((()=>{i.dock=t.dock,i.preview=t.preview,i.share=t.share}))}getCapabilities(e){const t={dock:!0,preview:!0,select:!0,share:!0};this.capabilities.has(e)||this.capabilities.set(e,(0,a.c)(t));return this.capabilities.get(e)||(0,a.c)(t)}isEqual(e,t){return(null==e?void 0:e.id)===(null==t?void 0:t.id)&&(null==e?void 0:e.annotationType)===(null==t?void 0:t.annotationType)}}},52678:(e,t,i)=>{"use strict";var n;i.d(t,{c:()=>n}),function(e){e.ACCESS_TOKEN_REQUIRED="object.access.token.required",e.FORBIDDEN="spaces.public.access.password.forbidden",e.INVALID_PASSWORD="spaces.public.access.invalid_password",e.TOO_MANY_ATTEMPTS="spaces.public.access.too_many_attempts",e.UNAUTHORIZED="user.unauthorized",e.NOT_FOUND="not.found",e.PASSWORD_REQUIRED="model.unauthorized"}(n||(n={}))},30716:(e,t,i)=>{"use strict";var n;i.d(t,{L:()=>n}),function(e){e.INVALID_CREDENTIALS="invalidcredentials",e.TOO_MANY_ATTEMPTS="toomanyattempts",e.UNKNOWN="unknown"}(n||(n={}))},68137:(e,t,i)=>{"use strict";i.d(t,{e:()=>s});var n=i(82748);class s{constructor(){this.tokenMap=new Map;const e=(0,n.P3)("auth");if(this.authenticate(e),e)for(let e=1;e<=10;e++){const t=`auth${e}`,i=`m${e}`,s=(0,n.P3)(t),a=(0,n.P3)(i);if(!s||"string"!=typeof s||!a||"string"!=typeof a)break;{const e=s.replace(","," ");this.tokenMap.set(a,e)}}}isAuthenticated(){return!!this.token}authenticate(e){return!(!e||"string"!=typeof e)&&(this.token=e.replace(","," "),!0)}getAuthorizationHeader(e){let t=this.token?this.token:"";return e&&this.tokenMap.has(e)&&(t=this.tokenMap.get(e)),t}}},55066:(e,t,i)=>{"use strict";i.d(t,{l:()=>l});var n=i(9139),s=i(30716),a=i(52678),o=i(50380);const r=new n.Vy("mp-password-authentication");class l{constructor(e=window.location.origin){this.baseUrl=e,this.errorType=s.L.UNKNOWN}async authenticate(e,t){if(!e.match(/[a-zA-Z0-9]+/))return r.error(`Invalid Model ID ${e}`),!1;const i=`${window.location.origin}${window.location.pathname}/api/v2/models/${e}/public-access/`;return this.fetchToken(i,t).then((async e=>{let t={};return e&&(t=await e.json(),e.ok&&t.token)?(this.login(t.token),!0):(this.errorType=l.getErrorType(t.code),this.logout(),!1)}))}isAuthenticated(){return void 0!==l.token}login(e){l.token=e}logout(){l.token=void 0}getAuthorizationHeader(){return l.token?`Matterport-Object-Access ${l.token}`:""}async fetchToken(e,t){const i=JSON.stringify({password:t}),n={"Content-Type":"application/json"};return(0,o.v)(e,n,void 0),fetch(e,{method:"POST",cache:"no-cache",headers:n,body:i})}static getErrorType(e){switch(e){case a.c.TOO_MANY_ATTEMPTS:return s.L.TOO_MANY_ATTEMPTS;case a.c.INVALID_PASSWORD:return s.L.INVALID_CREDENTIALS}return s.L.UNKNOWN}}},80519:(e,t,i)=>{"use strict";i.d(t,{u:()=>n});class n{static setToken(e){n.token="Bearer "+e}isAuthenticated(){return!!n.token}authenticate(e){return!(!e||"string"!=typeof e)}getAuthorizationHeader(){return n.token?n.token:""}}},76318:(e,t,i)=>{"use strict";var n,s;i.d(t,{MF:()=>n,Mo:()=>o,c5:()=>s,oY:()=>a}),function(e){e.BASE="base",e.STANDARD="standard",e.HIGH="high",e.ULTRAHIGH="ultrahigh"}(n||(n={})),function(e){e[e.BASE=512]="BASE",e[e.STANDARD=1024]="STANDARD",e[e.HIGH=2048]="HIGH",e[e.ULTRAHIGH=4096]="ULTRAHIGH"}(s||(s={}));const a={[n.BASE]:s.BASE,[n.STANDARD]:s.STANDARD,[n.HIGH]:s.HIGH,[n.ULTRAHIGH]:s.ULTRAHIGH},o={[s.BASE]:n.BASE,[s.STANDARD]:n.STANDARD,[s.HIGH]:n.HIGH,[s.ULTRAHIGH]:n.ULTRAHIGH}},56208:(e,t,i)=>{"use strict";i.d(t,{EY:()=>d,Q$:()=>n});var n,s=i(12625),a=i(3928),o=i(5601),r=i(23339),l=i(88664);class d extends s.B{constructor(e={}){super(),this.name="player-options",this.options=new c(e)}copy(e){e&&(this.modified=e.modified,this.options.copy(e.options),this.options.commit(),this.commit())}resetDefaultTourOptions(){this.options.fast_transitions=l.m7,this.options.transition_speed=l.iw,this.options.transition_time=l.SM,this.options.pan_speed=l.u7,this.options.dollhouse_pan_speed=l.qr,this.options.zoom_duration=l.R4,this.options.pan_angle=l.s8,this.options.pan_direction=l.ek,this.options.pan_alignment=l.K6,this.options.commit()}}class c extends a.v{constructor(e){super(),this.defurnish_view=!0,this.presented_by=!1,this.highlight_reel=!0,this.floor_plan=!0,this.tour_buttons=!0,this.room_bounds=!1,this.labels=!0,this.labels_dh=!0,this.floor_select=!0,this.space_search=!0,this.measurements=!0,this.measurements_saved=!0,this.dollhouse=!0,this.contact_email=!1,this.address=!1,this.contact_name=!1,this.model_summary=!1,this.contact_phone=!1,this.model_name=!1,this.external_url=!1,this.unit_type=r.t.IMPERIAL,this.background_color=o.v.default,this.fast_transitions=l.m7,this.transition_speed=l.iw,this.transition_time=l.SM,this.pan_speed=l.u7,this.dollhouse_pan_speed=l.qr,this.zoom_duration=l.R4,this.pan_angle=l.s8,this.pan_direction=l.ek,this.pan_alignment=l.K6,e&&this.copy(e)}copy(e){this.presented_by=!!e.presented_by,this.highlight_reel=!!e.highlight_reel,this.floor_plan=!!e.floor_plan,this.room_bounds=!!e.room_bounds,this.tour_buttons=!!e.tour_buttons,this.labels=!!e.labels,this.space_search=!!e.space_search,this.dollhouse=!!e.dollhouse,this.fast_transitions=!!e.fast_transitions,this.contact_email=!!e.contact_email,this.address=!!e.address,this.contact_name=!!e.contact_name,this.model_summary=!!e.model_summary,this.contact_phone=!!e.contact_phone,this.model_name=!!e.model_name,this.external_url=!!e.external_url,this.defurnish_view=!!e.defurnish_view,void 0!==e.measurements&&(this.measurements=e.measurements),void 0!==e.labels_dh&&(this.labels_dh=e.labels_dh),void 0!==e.floor_select&&(this.floor_select=e.floor_select),void 0!==e.measurements_saved&&(this.measurements_saved=e.measurements_saved),void 0!==e.unit_type&&(this.unit_type=e.unit_type),void 0!==e.background_color&&void 0!==o.v[e.background_color]&&(this.background_color=e.background_color),void 0!==e.transition_speed&&(this.transition_speed=e.transition_speed),void 0!==e.transition_time&&(this.transition_time=e.transition_time),void 0!==e.pan_speed&&(this.pan_speed=e.pan_speed),void 0!==e.dollhouse_pan_speed&&(this.dollhouse_pan_speed=e.dollhouse_pan_speed),void 0!==e.zoom_duration&&(this.zoom_duration=e.zoom_duration),void 0!==e.pan_angle&&(this.pan_angle=e.pan_angle),void 0!==e.pan_direction&&(this.pan_direction=e.pan_direction),void 0!==e.pan_alignment&&(this.pan_alignment=e.pan_alignment)}}!function(e){e.DefurnishView="defurnish_view",e.PresentedBy="presented_by",e.HighlightReel="highlight_reel",e.FloorPlan="floor_plan",e.RoomBounds="room_bounds",e.TourButtons="tour_buttons",e.Labels="labels",e.LabelsDollhouse="labels_dh",e.Measurements="measurements",e.FloorSelect="floor_select",e.SavedMeasurements="measurements_saved",e.Dollhouse="dollhouse",e.InstantTransitions="fast_transitions",e.TransitionSpeed="transition_speed",e.TransitionTime="transition_time",e.PanSpeed="pan_speed",e.DollhousePanSpeed="dollhouse_pan_speed",e.PanAlignment="pan_alignment",e.ZoomDuration="zoom_duration",e.PanAngle="pan_angle",e.PanDirection="pan_direction",e.Units="unit_type",e.DetailsEmail="contact_email",e.DetailsAddress="address",e.DetailsName="contact_name",e.DetailsSummary="model_summary",e.DetailsPhone="contact_phone",e.DetailsModelName="model_name",e.DetailsExternalUrl="external_url",e.BackgroundColor="background_color",e.SpaceSearch="space_search"}(n||(n={}))},5601:(e,t,i)=>{"use strict";i.d(t,{t:()=>s,v:()=>a});const n={bgPrimary:"#0F1011",bgSecondary:"#1e2023",gridPrimary:"#2d3035",gridSecondary:"#171a1c"},s={black:n,grey:{bgPrimary:"#c9cbcc",bgSecondary:"#9d9d9e",gridPrimary:"#c9cbcc",gridSecondary:"#b0b1b1"},white:{bgPrimary:"#fcfdff",bgSecondary:"#ced0d3",gridPrimary:"#fcfdff",gridSecondary:"#e2e3e5"},default:n};var a;!function(e){e.black="black",e.grey="grey",e.white="white",e.default="black"}(a||(a={}))},20563:(e,t,i)=>{"use strict";i.d(t,{GI:()=>d,Q8:()=>m,Wz:()=>l,X5:()=>c,X6:()=>r,ZT:()=>o,_W:()=>a,a_:()=>h,cC:()=>u});var n=i(52018);class s extends n.t{constructor(e="Api Exception"){super(e),this.name="ApiException"}}class a extends s{constructor(e="Unauthorized"){super(e),this.name="Unauthorized"}}class o extends s{constructor(e="Forbidden"){super(e),this.name="Forbidden"}}class r extends s{constructor(e="Not Found"){super(e),this.name="NotFound"}}class l extends s{constructor(e="Model Processing"){super(e),this.name="ModelProcessing",this.code="unavailable.processing"}}class d extends s{constructor(e="Model Failed"){super(e),this.name="ModelFailed",this.code="model.failed"}}class c extends s{constructor(e="Model Archived"){super(e),this.name="ModelArchived",this.code="unavailable.archived"}}class u extends s{constructor(e="Model Pending"){super(e),this.name="ModelPending",this.code="unavailable.pending"}}class h extends s{constructor(e="Model Deleted"){super(e),this.name="ModelDeleted",this.code="unavailable.gone"}}class m extends s{constructor(e="Model Compliance"){super(e),this.name="ModelCompliance",this.code="unavailable.compliance"}}},54882:(e,t,i)=>{"use strict";i.d(t,{A:()=>a});var n=i(97084),s=i(72853);async function a(e){return(0,s.J)(window.location.href)?e.get("geoip/",{responseType:"json",priority:n.QK.LOW}):{city:"",locality:"",continent:"",country:"",country_code:"",country_name:"",region:"",timezone:"",colo:"",metro_code:""}}},23338:(e,t,i)=>{"use strict";i.d(t,{Tw:()=>r,pN:()=>a,un:()=>o});var n=i(62366);let s=null;const a=e=>{s=e},o=()=>s,r=(e,t)=>(s&&(0,n.E)(e)&&(t["x-matterport-application-key"]=s),t)},20916:(e,t,i)=>{"use strict";i.d(t,{F:()=>o,x:()=>a});var n=i(62366);let s=null;const a=e=>{s=e},o=(e,t)=>(s&&(0,n.E)(e)&&(t["x-matterport-application-name"]=s),t)},84217:(e,t,i)=>{"use strict";i.d(t,{_:()=>a,k:()=>o});var n=i(62366);let s=null;const a=e=>{s=e},o=(e,t)=>(s&&(0,n.E)(e)&&(t["x-matterport-application-version"]=s),t)},50380:(e,t,i)=>{"use strict";i.d(t,{v:()=>h});var n=i(20916),s=i(84217),a=i(23338),o=i(55066),r=i(68137),l=i(80519);const d=[new r.e,new l.u,new o.l];var c=i(62366);const u=[(e,t,i,n=d)=>{const s=n.map((e=>e.getAuthorizationHeader(i))).find(Boolean);return s&&(0,c.E)(e)&&(t.authorization=s),t},n.F,s.k,a.Tw],h=(e,t,i,n=u)=>(n.forEach((n=>n(e,t,i))),t)},62366:(e,t,i)=>{"use strict";i.d(t,{E:()=>a});const n=["matterport.com","matterportvr.cn","localhost"],s=["/api/"],a=e=>{let t;try{t=new URL(e.toLowerCase())}catch(e){return!1}const{hostname:i,pathname:a}=t,o=n.some((e=>i===e||i.endsWith(`.${e}`))),r=s.some((e=>a.startsWith(e)));return o&&r}},88664:(e,t,i)=>{"use strict";i.d(t,{K6:()=>p,R4:()=>u,SM:()=>l,ek:()=>m,iw:()=>r,m7:()=>o,qr:()=>c,s8:()=>h,u7:()=>d,zk:()=>a});var n=i(1333),s=i(60152);const a="TransitionType",o=!0,r=s.Dj,l=s.VD,d=s.BU,c=s.lo,u=s.cS,h=s.V4,m=n.ND.Auto,p="start"},30740:(e,t,i)=>{"use strict";i.d(t,{o:()=>a});var n=i(3928),s=i(3795);class a extends n.v{constructor(e){super(),this.category=s._A.EXTERNAL,this.mediaType=s.zu.IMAGE,this.mimeType="",this.src="",this.height=0,this.width=0,e&&Object.assign(this,e)}copy(e){return this.id=e.id,this.src=e.src,this.url=e.url,this.thumbnailUrl=e.thumbnailUrl,this.downloadUrl=e.downloadUrl,this.height=e.height,this.width=e.width,this.created=e.created,this.category=e.category,this.mediaType=e.mediaType,this.parentId=e.parentId||"",this.parentType=e.parentType,this.filename=e.filename,this.bytes=e.bytes,this.mimeType=e.mimeType||"",this}}},3795:(e,t,i)=>{"use strict";var n,s,a,o;i.d(t,{_A:()=>o,d3:()=>s,t2:()=>n,zu:()=>a}),function(e){e.FILE_TOO_LARGE="oversize",e.EMPTY_FILE="empty",e.OVER_QUOTA="overQuota",e.UPLOAD_FAILED="failed",e.PERMISSION_DENIED="permission"}(n||(n={})),function(e){e.EMBED_FAIL="embedFail",e.EMBED_SUCCESS="success"}(s||(s={})),function(e){e.IMAGE="image",e.PDF="pdf",e.VIDEO="video",e.RICH="rich",e.ZIP="zip",e.TEXT="text",e.AUDIO="audio",e.MODEL="model",e.APPLICATION="application"}(a||(a={})),function(e){e.EXTERNAL="external",e.UPLOAD="upload",e.SANDBOX="sandbox"}(o||(o={}))},15684:(e,t,i)=>{"use strict";i.d(t,{Bo:()=>a,LY:()=>s,iS:()=>n});const n=25,s=524288e3,a=["image/gif","image/png","image/jpeg","image/webp","image/bmp"]},87314:(e,t,i)=>{"use strict";i.d(t,{Y:()=>u,g:()=>c});var n=i(9139),s=i(64391),a=i(81587),o=i(3101),r=i(30740),l=i(3795);const d=new n.Vy("external-attachment-deserializer");class c{constructor(){}deserialize(e){if(!e||!this.validate(e))return d.debug("Deserialized invalid external attachment data from MDS",e),null;const t=new r.o;return t.id=e.id,t.created=(0,a.XH)(e.created),t.src=e.url||"",t.thumbnailUrl=new s.f(e.thumbnailUrl||"",(0,a.XH)(e.validUntil,null)),t.url=new s.f(e.url||"",(0,a.XH)(e.validUntil,null)),e.mediaType&&(t.mediaType=(0,o.P4)(e.mediaType)),t.category=l._A.EXTERNAL,e.width&&(t.width=e.width),e.height&&(t.height=e.height),t.parentType=e.parentDetails.type,t.parentId=e.parentDetails.parent.id,t}validate(e){if(!e)return!1;const t=["id","created","modified","mediaType","parentDetails"].filter((t=>!(t in e))),i=0===t.length;return i||d.debug("Attachment invalid:",{missingFields:t}),i}}const u=function(){return new c}},85275:(e,t,i)=>{"use strict";i.d(t,{V:()=>u,x:()=>c});var n=i(9139),s=i(64391),a=i(81587),o=i(3101),r=i(30740),l=i(3795);const d=new n.Vy("file-attachment-deserializer");class c{constructor(){}deserialize(e){if(!e||!this.validate(e))return d.debug("Deserialized invalid file attachment data from MDS",e),null;const t=new r.o;return t.id=e.id,t.created=(0,a.XH)(e.created),e.mimeType&&(t.mimeType=e.mimeType,t.mediaType=(0,o.uc)(e.mimeType)),t.category=l._A.UPLOAD,t.downloadUrl=new s.f(e.downloadUrl||"",(0,a.XH)(e.validUntil,null)),t.url=new s.f(e.url||"",(0,a.XH)(e.validUntil,null)),t.filename=e.filename||"",t.bytes=e.bytes||0,t.width=e.imageWidth||0,t.height=e.imageHeight||0,(0,o.L7)(t)&&(t.thumbnailUrl=t.url),t}validate(e){if(!e)return!1;return["id","created","url","mimeType","filename"].every((t=>t in e))}}const u=function(){return new c}},3101:(e,t,i)=>{"use strict";i.d(t,{L7:()=>o,P4:()=>u,X6:()=>m,c9:()=>l,ft:()=>h,rV:()=>r,rg:()=>d,uc:()=>c});var n=i(3795),s=i(15684),a=i(74381);function o(e){return e.category===n._A.EXTERNAL?e.mediaType===n.zu.IMAGE:!!e.mimeType&&s.Bo.includes(e.mimeType)}function r(e){return e.category===n._A.EXTERNAL||e.category===n._A.SANDBOX||!!e.mimeType&&s.Bo.includes(e.mimeType)}function l(e){return e.filter((e=>r(e)))}function d(e){return e.filter((e=>!r(e)))}function c(e){return e.startsWith("image")?n.zu.IMAGE:e.startsWith("video")?n.zu.VIDEO:e.startsWith("audio")?n.zu.AUDIO:e.startsWith("model")?n.zu.MODEL:e.startsWith("text")?n.zu.TEXT:"application/pdf"===e?n.zu.PDF:n.zu.APPLICATION}function u(e){switch(e){case a.I$.IMAGE:return n.zu.IMAGE;case a.I$.PDF:return n.zu.PDF;case a.I$.VIDEO:return n.zu.VIDEO;case a.I$.RICH:return n.zu.RICH;case a.I$.ZIP:return n.zu.ZIP;default:throw Error(`Unknown attachment media type ${e}`)}}function h(e){switch(e){case n.zu.IMAGE:return a.I$.IMAGE;case n.zu.PDF:return a.I$.PDF;case n.zu.VIDEO:return a.I$.VIDEO;case n.zu.RICH:return a.I$.RICH;case n.zu.ZIP:return a.I$.ZIP;default:throw Error(`Unknown media type ${e}`)}}function m(e){if(!e)return"0";const t=Math.min(Math.floor(Math.log(e)/Math.log(1e3)),3),i=["B","kB","MB","GB"][t];return`${Number((e/Math.pow(1e3,t)).toFixed(1))}${i}`}},87263:(e,t,i)=>{"use strict";i.d(t,{ID:()=>s,Qi:()=>n,km:()=>a});const n="org.csgp.propertymatch.logo",s="org.csgp.propertymatch.tracking",a="org.csgp.propertymatch.backlink"},29200:(e,t,i)=>{"use strict";i.d(t,{b:()=>s});var n=i(12625);class s extends n.B{constructor(){super(...arguments),this.name="brand"}}},10389:(e,t,i)=>{"use strict";var n;i.d(t,{$:()=>n}),function(e){e.APARTMENTS="apartments",e.HOMES="homes",e.LOOPNET="loopnet",e.MATTERPORT="matterport"}(n||(n={}))},41616:(e,t,i)=>{"use strict";i.d(t,{a:()=>d,J:()=>l});var n=i(98236),s=i(29200),a=i(96540),o=i(17299),r=i(49812);const l=(0,n.v_)(s.b);function d(){const e=function(){var e;const t=(0,r.h)(),[i,n]=(0,a.useState)((null===(e=null==t?void 0:t.model)||void 0===e?void 0:e.externalListings)||[]);return(0,a.useEffect)((()=>{if(!t)return()=>{};function e(){t&&n(t.model.externalListings)}const i=t.onChanged(e);return e(),()=>i.cancel()}),[t]),i}(),t=(0,a.useMemo)((()=>(0,o.eO)(e)),[e]);return null!=t?t:null}},70400:(e,t,i)=>{"use strict";i.d(t,{$j:()=>s,Or:()=>o,cq:()=>a});var n=i(7478);class s extends n.QB{constructor(e){super(),this.brand=e}}class a extends n.QB{constructor(e){super(),this.backLink=e}}class o extends n.QB{constructor(e,t,i){super(),this.homesPropertyKey=e,this.listingType=t,this.listingId=i}}},17299:(e,t,i)=>{"use strict";i.d(t,{eO:()=>a,$Y:()=>o,R1:()=>r});const n=new Set(["0efc2d0d7d59174caebf82e4106fbe7ea8658679","3200e1619d5cd99a64826ebb5efee1d4a8416b00","a7932f15e3e81444061b143897c03f3d14e92fe2","baee3055c809401854bee5f766b04733e4ab8874","b05e433249e0f06c51976b10c9891144761a5249"]);const s=["Homes","Apartments","LoopNet"];function a(e){for(const t of s){const i=e.find((e=>e.listingType===t));if(i)return i}}function o(e){return e.find((e=>null!=e.homesPropertyKey))}async function r(e){if(!e)return!1;if(!window.crypto||!window.crypto.subtle)return!1;const t=await async function(e){const t=(new TextEncoder).encode(e),i=await window.crypto.subtle.digest("SHA-1",t);return Array.from(new Uint8Array(i)).map((e=>e.toString(16).padStart(2,"0"))).join("")}(e);return n.has(t)}},28995:(e,t,i)=>{"use strict";i.d(t,{J:()=>p});var n=i(68909),s=i(3928),a=i(49988),o=i(12767),r=i(40397),l=i(81662),d=i(53172),c=i(52885),u=i(94814),h=i(19968),m=i(62568);class p extends s.v{constructor(e){super(),this.position=new n.Vector3,this.rotation=new n.Quaternion,this.focalDistance=-1,this._autoOrthoApplied=!1,this._shouldAutoOrtho=!0,this._frustum=new n.Frustum,this.fovCorrectedPosition=(()=>{const e=new n.Vector3;return()=>(e.copy(l.B1.FORWARD).applyQuaternion(this.rotation).multiplyScalar(this.fovCorrectionOffset()).add(this.position),e)})(),this.fovCorrectionOffsetVec=(()=>{const e=new n.Vector3;return()=>(e.copy(l.B1.FORWARD).applyQuaternion(this.rotation).multiplyScalar(-this.fovCorrectionOffset()),e)})(),this.focalPoint=(()=>{const e=new n.Vector3,t=new n.Vector3;return()=>(e.copy(l.B1.FORWARD).applyQuaternion(this.rotation).multiplyScalar(this.focalDistance),t.copy(this.position).add(e),t)})(),this.forward=(()=>{const e=new n.Vector3;return()=>(e.copy(l.B1.FORWARD).applyQuaternion(this.rotation),e)})(),this.right=(()=>{const e=new n.Vector3;return()=>(e.copy(l.B1.RIGHT).applyQuaternion(this.rotation),e)})(),this.left=(()=>{const e=new n.Vector3;return()=>(e.copy(l.B1.LEFT).applyQuaternion(this.rotation),e)})(),this.back=(()=>{const e=new n.Vector3;return()=>(e.copy(l.B1.BACK).applyQuaternion(this.rotation),e)})(),this.pitchFactor=(()=>{const e=(0,u.Bo)(.6,0,.88,.5);return()=>{const t=(0,d.H)(this.phi()),i=(0,d.H)(m.oO),n=Math.max((t-i)/(90-i),0),s=e(n),a=1-s,o=1-Math.round(s);return Math.abs(a-o)<=.001?o:a}})(),this.projection=(0,o.hn)(e),this.isPitchFactorOrthoObservable=new a.r((()=>(0,h.aY)(this.pitchFactor())),[this.onChanged.bind(this)]),this.isPitchFactorPerspectiveObservable=new a.r((()=>(0,h.AT)(this.pitchFactor())),[this.onChanged.bind(this)]),this.isProjectionOrtho=new a.r((()=>(0,r.Gp)(this.projection)),[this.onChanged.bind(this)]),this.worldspaceFrustum=new a.r((()=>(0,h.tF)(this,this._frustum)),[this.onChanged.bind(this)]),this.isPitchFactorTransitionActive=new a.r((()=>{const e=Math.abs(this.pitchFactor());return e>0&&e<1}),[this.onChanged.bind(this)])}setAutoOrtho(e){this._shouldAutoOrtho=e}get autoOrtho(){return this._shouldAutoOrtho}get autoOrthoApplied(){return this._autoOrthoApplied}get isPitchFactorOrtho(){return this.isPitchFactorOrthoObservable.value}fovCorrectedFocalDistance(){return this.focalDistance/this.fovDistanceScale()}fovCorrectionOffset(){return this.focalDistance-this.fovCorrectedFocalDistance()}aspect(){return this.projection.elements[5]/this.projection.elements[0]}halfHeight(){return this.fovCorrectedFocalDistance()*Math.tan((0,d.pu)(o.Bv.fov/2))}fovDistanceScale(e){const{minFov:t}=o.Bv,i=null!=e?Math.max(e,t):this.isOrtho()?t:(0,d.H)(this.fovY());return Math.tan((0,d.pu)(o.Bv.fov/2))/Math.tan((0,d.pu)(i)/2)}phi(){return(0,h.rC)(this.rotation)}clone(e=new p(this.aspect())){return e.position.copy(this.position),e.rotation.copy(this.rotation),e.focalDistance=this.focalDistance,e.projection.copy(this.projection),e._autoOrthoApplied=this.autoOrthoApplied,e._shouldAutoOrtho=this.autoOrtho,e}applyPhiBasedFovSquish(){if(!this._shouldAutoOrtho)return;const e=(0,c.C)(0,o.Bv.fov,this.pitchFactor()),t=this.aspect(),i=this.fovCorrectedFocalDistance()*this.fovDistanceScale(e),{near:n,far:s}=(0,o.Li)(i);if(e>o.Bv.minFov)this.projection.makePerspectiveFov(e,t,n,s);else{const e=this.halfHeight(),t=this.aspect()*e;this.projection.makeOrthographic(-t,t,e,-e,n,s)}this.focalDistance=i,this.position.add(this.fovCorrectionOffsetVec()),this._autoOrthoApplied=!0}unapplyPhiBasedFovSquish(){if(!this._autoOrthoApplied)return;const e=this.fovCorrectedPosition().clone(),t=this.fovCorrectedFocalDistance();this.position.copy(e),this.focalDistance=t,this.resetProjMatrix(),this._autoOrthoApplied=!1}copy(e){return this.position.copy(e.position),this.rotation.copy(e.rotation),this.focalDistance=e.focalDistance,this.projection.copy(e.projection),this._autoOrthoApplied=e.autoOrthoApplied,this._shouldAutoOrtho=e.autoOrtho,this.commit(),this}isOrtho(){return(0,r.Gp)(this.projection)}fovX(){return 2*Math.atan(1*this.aspect()/this.projection.elements[5])}fovY(){return 2*Math.atan(1/this.projection.elements[5])}resetProjMatrix(){this.projection.makePerspectiveFov(o.Bv.fov,this.aspect(),o.Bv.near,o.Bv.far)}applyToCamera(e){e.position.copy(this.position),e.quaternion.copy(this.rotation);const t=this.projection.asThreeMatrix4();e.projectionMatrix.copy(t),e.projectionMatrixInverse.copy(t).invert(),e.updateMatrixWorld(!0)}}},10459:(e,t,i)=>{"use strict";i.d(t,{M:()=>O,q:()=>p});var n=i(12625),s=i(12767),a=i(40397),o=i(46771),r=i(53172),l=i(28995),d=i(13893),c=i(92237),u=i(68909),h=i(3928);class m extends h.v{constructor(){super(...arguments),this.startTime=0,this.duration=0,this.active=!1,this.autoOrtho=!1,this.type=null,this.progress=new c.z(0),this.blackoutProgress=new c.z(0),this.from={position:new u.Vector3,rotation:new u.Quaternion,projection:new o.k},this.to={position:new u.Vector3,rotation:new u.Quaternion,projection:new o.k},this.rotationDelay=0,this.rotationDuration=1,this.matrixDelay=0,this.matrixDuration=1,this.activeInternal=!1,this.promise=null,this.orbitTarget=null,this.orbitStartPhi=0,this.orbitStartDistance=0,this.instantOrbit=!1,this.fadeToBlackSubType=d.pw.Full}}const p=(e,t,i=!0)=>{t.position=E(e.position,t.position,i),t.rotation=E(e.rotation,t.rotation,i),t.projection=E(e.projection,t.projection,i),t.focalDistance=e.focalDistance},E=(e,t,i=!0)=>(e&&!t?t=e.clone():e&&t?t.copy(e):i&&(t=void 0),t);let S=0;class O extends n.B{constructor(e,t){super(),this.width=e,this.height=t,this.name="camera",this.id=""+S++,this.priority=0,this._baseProjection=new o.k,this._orthoMatrix=new o.k,this._lastOrthoZoom=1,this._perspectiveMatrix=new o.k,this._metersPerPx=null,this.pose=new l.J(e/t),this.transition=new m,this.setCameraDimensions(e,t),this._baseFovY=r.fy*s.Bv.fov,this.pose.onChanged((()=>this._metersPerPx=null))}setCameraDimensions(e,t){if(isNaN(e)||0===e||isNaN(t)||0===t)return;this.width=e,this.height=t,this._metersPerPx=null;const i=e/t,{near:n,far:o}=(0,s.Li)(this.pose.focalDistance),l=this.isOrtho()?(0,s.Ei)(e,t,t/(2*this.orthoZoom()),1,n,o,this._orthoMatrix):this._perspectiveMatrix.makePerspectiveFov(r.tm*this.fovY(),i,n,o);if(this.pose.projection.copy(l),this.transition.active&&this.transition.to.projection)if((0,a.Gp)(this.transition.to.projection)){const i=(0,a.BN)(this.transition.to.projection);this.transition.to.projection.copy((0,s.Ei)(e,t,t/(2*i),1))}else{const e=2*r.tm*Math.atan(1/this.transition.to.projection.elements[5]);this.transition.to.projection.makePerspectiveFov(e,i,s.Bv.near,s.Bv.far)}this.pose.commit(),this.commit()}setAutoOrtho(e){e!==this.pose.autoOrtho&&(this.pose.setAutoOrtho(e),e?this.pose.applyPhiBasedFovSquish():this.pose.unapplyPhiBasedFovSquish(),this.pose.commit())}setBaseProjection(e){this._baseProjection=e}get aspectRatio(){const e=this.width/this.height;return isFinite(e)?e:1}get screenDiagonalPx(){return Math.sqrt(this.width*this.width+this.height*this.height)}get baseFovY(){return this._baseFovY}aspect(){return this.pose.aspect()}fovY(){return this.pose.fovY()}fovX(){return this.pose.fovX()}isOrtho(){return this.pose.isOrtho()}baseZoom(){return this.pose.projection.elements[0]/2}defaultZoom(){return(0,a.Gp)(this._baseProjection)?(0,a.BN)(this._baseProjection):this.perspectiveZoom()}zoom(){return this.isOrtho()?this.orthoZoom():this.perspectiveZoom()}orthoZoom(){const e=(0,a.BN)(this.pose.projection);return isNaN(e)?this._lastOrthoZoom:(this._lastOrthoZoom=e,e)}perspectiveZoom(){return this.baseFovY/this.fovY()}metersPerPx(){return null==this._metersPerPx?(this._metersPerPx=(0,a.ff)(this.pose.focalDistance,this.pose.projection.asThreeMatrix4(),this.width),this._metersPerPx):this._metersPerPx}copyTransition(e){this.transition.active=e.active,this.transition.activeInternal=e.activeInternal,this.transition.type=e.type,this.transition.startTime=e.startTime,this.transition.duration=e.duration,this.transition.rotationDelay=e.rotationDelay,this.transition.rotationDuration=e.rotationDuration,this.transition.matrixDelay=e.matrixDelay,this.transition.matrixDuration=e.matrixDuration,this.transition.fadeToBlackSubType=e.fadeToBlackSubType,e.progress&&this.transition.progress.copy(e.progress),e.blackoutProgress&&this.transition.blackoutProgress.copy(e.blackoutProgress),e.from&&p(e.from,this.transition.from),e.to&&p(e.to,this.transition.to),this.transition.promise=e.promise}canTransition(){return!this.transition.active}clone(){const e=new O(this.width,this.height);return e.copy(this),e}copy(e){this.pose.copy(e.pose),this.pose.commit(),this._baseFovY=e.baseFovY,this.copyTransition(e.transition),this.transition.commit(),this.width=e.width,this.height=e.height}equals(e){return this.id===e.id}}},12767:(e,t,i)=>{"use strict";i.d(t,{Bv:()=>s,Ei:()=>r,Li:()=>a,hn:()=>o});var n=i(46771);const s={fov:75,near:.1,far:3e3,minFov:1},a=e=>{const t=s.far-s.near,i=Math.max(s.near,e-t/2);return{near:i,far:i+t}},o=(e,t)=>(t||(t=new n.k),t.makePerspectiveFov(s.fov,e,s.near,s.far)),r=(e,t,i=1,a=1,o=s.near,r=s.far,l)=>{l||(l=new n.k);const d=e/2,c=t/2,u=l.makeOrthographic(-d,d,c,-c,o*a,r*a);return u.elements[0]*=i,u.elements[5]*=i,u}},642:(e,t,i)=>{"use strict";i.d(t,{R:()=>a});var n=i(98236),s=i(10459);const a=(0,n.v_)(s.M)},94609:(e,t,i)=>{"use strict";i.d(t,{I:()=>a});var n=i(96540),s=i(642);function a(){const e=(0,s.R)(),[t,i]=(0,n.useState)(e?e.pose.pitchFactor():1);return(0,n.useEffect)((()=>{if(!e)return()=>{};const t=e.onChanged((()=>{i(e.pose.pitchFactor())}));return i(e.pose.pitchFactor()),()=>{t.cancel()}}),[e]),t}},13893:(e,t,i)=>{"use strict";var n,s,a;i.d(t,{fl:()=>n,mG:()=>a,pw:()=>s}),function(e){e[e.Instant=0]="Instant",e[e.FadeToBlack=1]="FadeToBlack",e[e.Interpolate=2]="Interpolate",e[e.MoveToBlack=3]="MoveToBlack",e[e.OrbitTo=4]="OrbitTo"}(n||(n={})),function(e){e[e.Full=0]="Full",e[e.ClearToBlack=1]="ClearToBlack",e[e.BlackToClear=2]="BlackToClear"}(s||(s={})),function(e){e[e.Top=1]="Top",e[e.Bottom=2]="Bottom"}(a||(a={}))},62568:(e,t,i)=>{"use strict";i.d(t,{Ay:()=>l,Xj:()=>h,l6:()=>r,mn:()=>o,oO:()=>u,xl:()=>d});var n=i(44351),s=i(13893),a=i(53172);const o=166,r="Transition time",l=Object.freeze({camera:{transitionBlackoutTime:300,transitionFadeTime:800,baseTransitionTime:200,transitionSpeed:3,autoOrbitMinVelocity:.002,autoOrbitMaxVelocity:.08,autoOrbitTransitionTIme:1e3,autoOrbitLowerPhiLimit:30*a.fy,autoOrbitUpperPhiLimit:90*a.fy}});function d(e){return e in c?c[e]:s.fl.FadeToBlack}const c={[n.o.Desktop]:s.fl.Interpolate,[n.o.Mobile]:s.fl.Interpolate,[n.o.VrOrientOnly]:s.fl.FadeToBlack,[n.o.VrWithController]:s.fl.FadeToBlack,[n.o.VrWithTrackedController]:s.fl.FadeToBlack,[n.o.VrTransientPointer]:s.fl.FadeToBlack,[n.o.VrUnknown]:s.fl.FadeToBlack},u=75*a.fy,h=u-.01*a.fy},19968:(e,t,i)=>{"use strict";i.d(t,{AT:()=>_,Ft:()=>S,OG:()=>E,aY:()=>g,bA:()=>u,bz:()=>c,jn:()=>h,n4:()=>v,rC:()=>T,tF:()=>A,wc:()=>p,zH:()=>O});var n=i(68909),s=i(81662),a=i(28995),o=i(3249),r=i(52885),l=i(62568),d=i(13893);const c=(()=>{const e=new n.Matrix4,t=new n.Matrix4;return(i,s,a,o)=>(a=a||new n.Vector2,o=o||new n.Vector3,m(i.pose,t),e.copy(t),e.invert(),o.set(s.x,s.y,s.z).applyMatrix4(e).applyMatrix4(i.pose.projection.asThreeMatrix4()),O(i.width,i.height,o,a),{screenPosition:a,ndcPosition:o})})(),u=(()=>{const e=new n.Vector3,t=new n.Vector2;return(i,n,s,a,o,r)=>(e.copy(h(i,n,s,r)),O(a,o,e,t),t)})(),h=(()=>{const e=new n.Matrix4,t=new n.Matrix4,i=new n.Vector3;return(n,a,o,r)=>(e.compose(a,o,s.B1.UNIT),t.copy(e),t.invert(),i.copy(n).applyMatrix4(t).applyMatrix4(r),i)})(),m=(e,t)=>(t=t||new n.Matrix4).compose(e.position,e.rotation,s.B1.UNIT),p=(e,t,i,s,a)=>((a=a||new n.Vector2).x=e/i*2-1,a.y=-t/s*2+1,a),E=(e,t,i=.5,s)=>((s=s||new n.Vector3).x=t.x,s.y=t.y,s.z=i,S(e.pose,s)),S=(()=>{const e=new n.Matrix4,t=new n.Matrix4;return(i,s,a)=>((a=a||new n.Vector3).copy(s),t.copy(i.projection.asThreeMatrix4()),t.invert(),m(i,e),a.applyMatrix4(t).applyMatrix4(e))})(),O=(e,t,i,s)=>((s=s||new n.Vector2).set((i.x+1)*e/2,(1-i.y)*t/2),s),g=e=>Math.abs(e)<.1,_=e=>Math.abs(e)>=1,T=(()=>{const e=new n.Vector3,t=new n.Vector3,i=new n.Vector3;return n=>{e.copy(s.B1.FORWARD).applyQuaternion(n).multiplyScalar(-1),t.copy(s.B1.UP).applyQuaternion(n);const a=t.dot(s.B1.UP)<=0;i.set(e.x,0,e.z);const o=a?-i.length():i.length(),r=e.y;return Math.atan2(r,o)}})(),A=(()=>{const e=new n.Vector3(-1,-1,-1),t=new n.Vector3,i=new n.Vector3(1,-1,-1),s=new n.Vector3,a=new n.Vector3(1,1,-1),o=new n.Vector3,r=new n.Vector3(-1,1,-1),l=new n.Vector3,d=new n.Vector3(-1,-1,1),c=new n.Vector3,u=new n.Vector3(1,-1,1),h=new n.Vector3,p=new n.Vector3(1,1,1),E=new n.Vector3,S=new n.Vector3(-1,1,1),O=new n.Vector3,g=new n.Matrix4,_=new n.Matrix4;return(T,A)=>(A=A||new n.Frustum,_.copy(T.projection.asThreeMatrix4()),_.invert(),m(T,g),t.copy(e),t.applyMatrix4(_).applyMatrix4(g),s.copy(i),s.applyMatrix4(_).applyMatrix4(g),o.copy(a),o.applyMatrix4(_).applyMatrix4(g),l.copy(r),l.applyMatrix4(_).applyMatrix4(g),c.copy(d),c.applyMatrix4(_).applyMatrix4(g),h.copy(u),h.applyMatrix4(_).applyMatrix4(g),E.copy(p),E.applyMatrix4(_).applyMatrix4(g),O.copy(S),O.applyMatrix4(_).applyMatrix4(g),A.planes[0].setFromCoplanarPoints(t,l,o),A.planes[1].setFromCoplanarPoints(c,h,E),A.planes[2].setFromCoplanarPoints(t,c,O),A.planes[3].setFromCoplanarPoints(t,s,h),A.planes[4].setFromCoplanarPoints(s,o,E),A.planes[5].setFromCoplanarPoints(o,l,O),A)})(),v=(()=>{const e=new n.Vector3,t=new n.Vector3,i=new n.Quaternion,r=new n.Vector3,c=new n.Quaternion;let u=null;return(n,h,m,p,E,S)=>{null==u&&(u=new a.J(1));const O=l.Ay.camera.autoOrbitUpperPhiLimit,g=l.Ay.camera.autoOrbitLowerPhiLimit,_=n;u.copy(_),u.unapplyPhiBasedFovSquish();const A=_.phi(),v=g-A,I=O-A,L=h===d.mG.Top?I:v,R=E?L:f(A,m,h),y=(0,o.qE)(R,v,I),b=O-A<1e-10,D=A-g<1e-10;if(h===d.mG.Top?b:D)return 1;const M=p;e.copy(s.B1.FORWARD).applyQuaternion(_.rotation),e.setLength(M),e.addVectors(_.fovCorrectedPosition(),e),t.copy(s.B1.RIGHT),i.setFromAxisAngle(t.applyQuaternion(_.rotation),-y),r.copy(_.fovCorrectedPosition()).sub(e).applyQuaternion(i),c.copy(_.rotation).premultiply(i),r.add(e),c.normalize(),T(c)>=O&&N(c),u.position.copy(r),u.rotation.copy(c),u.focalDistance=M,u.applyPhiBasedFovSquish(),S.copy(u);const P=h===d.mG.Top?O:g,k=Math.abs((S.phi()-m)/(P-m));return(0,o.qE)(k,0,1)}})(),f=(e,t,i)=>{const n=i===d.mG.Top?1:-1,s=i===d.mG.Top?l.Ay.camera.autoOrbitUpperPhiLimit:l.Ay.camera.autoOrbitLowerPhiLimit,a=Math.abs((s-e)/(s-t));return n*(0,r.C)(l.Ay.camera.autoOrbitMinVelocity,l.Ay.camera.autoOrbitMaxVelocity,a)*2},N=(()=>{const e=s.B1.RIGHT.clone(),t=s.B1.UP.clone(),i=s.B1.BACK.clone(),a=new n.Matrix4;return n=>{e.copy(s.B1.RIGHT),t.copy(s.B1.UP),i.copy(s.B1.BACK),e.applyQuaternion(n),e.y=0,t.applyQuaternion(n),t.y=0,i.applyQuaternion(n),i.x=0,i.y=1,i.z=0,a.makeBasis(e,t,i),n.setFromRotationMatrix(a)}})()},26482:(e,t,i)=>{"use strict";i.d(t,{G:()=>a,n:()=>o});var n=i(66806),s=i(12625);class a extends s.B{constructor(e,t,i){super(),this.name="cam-start",this.moveCameraOnViewChange=!0,this.icon=e,this.thumb=t,this.pose=new o,i&&this.pose.copy(i)}copy(e,t=!1){var i;return this.icon=e.icon,t?e.thumb&&(null===(i=this.thumb)||void 0===i||i.refreshFrom(e.thumb)):this.thumb=e.thumb,this.pose.copy(e.pose),this}getStartingPose(){return this.deepLinkPose||this.pose}get hasCameraPose(){return this.pose&&this.pose.camera&&void 0!==this.pose.camera.position}}class o{constructor(e=n.N.Panorama,t,i,s,a,o){this.mode=e,this.camera={position:t||void 0,rotation:i||void 0,zoom:s||void 0},this.pano=a||{uuid:void 0},this.floorVisibility=o||void 0}copy(e){return this.camera.position=r(e.camera.position,this.camera.position),this.camera.rotation=r(e.camera.rotation,this.camera.rotation),this.camera.zoom=e.camera.zoom,this.pano.uuid=e.pano.uuid?e.pano.uuid.slice():void 0,this.mode=e.mode,this.floorVisibility=e.floorVisibility?e.floorVisibility.slice():void 0,this}}const r=(e,t)=>e&&t?t.copy(e):e&&!t?e.clone():void 0},74328:(e,t,i)=>{"use strict";i.d(t,{s:()=>m});var n=i(68909),s=i(2993),a=i(66806),o=i(9139),r=i(82748),l=i(86866),d=i(44455),c=i(97696);const u=new o.Vy("navurl");class h extends Error{constructor(e,t){super(`view mode ${e} is invalid${t?` when ${t}`:""}`)}}class m{static encodeVector3(e,t=2){const{x:i,y:n,z:s}=e;return m.packFloats([i,n,s],t)}static decodeVector3(e){const t=m.unpackFloats(e,3);return t?new n.Vector3(...t):null}static encodeQuaternion(e,t=2){return m.packFloats([e.x,e.y,e.z,e.w],t)}static decodeQuaternion(e){const t=m.unpackFloats(e,4);return t&&!(0,d.PH)(t)?new n.Quaternion(...t):null}static encodeEuler(e,t=2){return m.packFloats([e.x,e.y,e.z],t)}static decodeEuler(e){const t=m.unpackFloats(e,3);return t?new n.Euler(t[0],t[1],t[2],"XYZ"):void 0}static packFloats(e,t=2){let i=e.map((e=>{const i=parseFloat(e.toFixed(t)).toString().replace(/^(\-)?0+.(\d+)/,"$1.$2");return"0"===i?"":i})).join(",");return i=i.replace(/,+$/,""),i}static unpackFloats(e,t=0){const i=e.split(",").map((e=>""===e?0:parseFloat(e)));if(!i||i.includes(NaN))return[];for(;i.length1&&(l.sf=r),s===a.N.Floorplan&&(l.sz=parseFloat(e.zoom().toFixed(2)))}return l.sq=m.encodeQuaternion(e.pose.rotation),u.debug(`Short URL params for current location ${JSON.stringify(l)}`),delete l.sq,l}static getStartPose({cameraData:e,viewmodeData:t,floorsViewData:i,sweepData:n}){const s={x:0,y:0,z:0,w:1};s.x=e.pose.rotation.x,s.y=e.pose.rotation.y,s.z=e.pose.rotation.z,s.w=e.pose.rotation.w;const{position:o,viewmode:r}=(0,c.nF)(e,i,t),l={x:0,y:0,z:0};l.x=o.x,l.y=o.y,l.z=o.z;const d={camera_mode:m.validateViewmode(r),camera_position:l,camera_quaternion:s};return t.isInside()?d.scan_id=n.state.currentSweep:d.floor_visibility=i.getFloorsVisibility(),r===a.N.Floorplan&&(d.ortho_zoom=e.zoom()),d}static parseViewmode(e){let t=m.DEFAULT_VIEW_MODE;return null!=e&&(t=parseInt(e,10)),m.validateViewmode(t)}static validateViewmode(e){if(null===e||!m.VALID_URL_VIEW_MODES.includes(e))throw new h(e);return e}}m.DEFAULT_VIEW_MODE=a.N.Panorama,m.VALID_URL_VIEW_MODES=[a.N.Panorama,a.N.Dollhouse,a.N.Floorplan,a.N.Outdoor,a.N.Mesh]},78711:(e,t,i)=>{"use strict";i.d(t,{X:()=>o,d:()=>a});var n=i(2993);const s=new(i(9139).Vy)("camera-start-util");function a(e,t){const{mode:i,quaternion:n,position:a,floorVisibility:o,sweepIndex:r,zoom:l}=e;let{panoId:d}=e;if(d&&!t.containsSweep(d)){const e=t.getSweepByUuid(d);e&&(d=e.id)}if(!d&&void 0!==r){const e=t.getSweepByIndex(r);e?d=e.id:s.debug(`Failed to load sweep index ${r}`)}return{mode:i,camera:{position:a,rotation:n,zoom:l},pano:{uuid:d},floorVisibility:o}}function o(e,t){return!!e&&(!(0,n.nI)(e.mode)||!!e.pano.uuid&&t.containsSweep(e.pano.uuid))}},37105:(e,t,i)=>{"use strict";i.d(t,{p:()=>s});var n=i(12625);class s extends n.B{constructor(e,t,i){super(),this.name="canvas",this.x=0,this.y=0,this.width=e||0,this.height=t||0,this.canvas=i||null}get aspectRatio(){const e=this.width/this.height;return isFinite(e)?e:1}}},7477:(e,t,i)=>{"use strict";i.d(t,{a:()=>a});var n=i(98236),s=i(37105);const a=(0,n.v_)(s.p)},76894:(e,t,i)=>{"use strict";i.d(t,{$:()=>s,d:()=>n});const n="compare",s="feature/compare"},58480:(e,t,i)=>{"use strict";i.d(t,{G:()=>o});var n=i(12625),s=i(97994),a=i(44879);class o extends n.B{get size(){return this.sizeObservable.value}set size(e){this.sizeObservable.value=e}constructor(e){super(),this.name="container",this.sizeObservable=new s.L({width:0,height:0}),this.orientation=a.U.LANDSCAPE,this.element=e,this.mainElement=e.querySelector("main")||e,this.rootNode=e.getRootNode()}onPropertyChanged(e,t){return"size"===e?this.sizeObservable.onChanged(t):super.onPropertyChanged(e,t)}removeOnPropertyChanged(e,t){"size"===e?this.sizeObservable.removeOnChanged(t):super.removeOnPropertyChanged(e,t)}}},78197:(e,t,i)=>{"use strict";i.d(t,{A:()=>r,B:()=>l});var n=i(87805),s=i(58480),a=i(38064);const o={width:0,height:0};function r(e){return(0,n.Z)(s.G,"size",e||o)}const l=(0,a.c)("containerSize",r)},19072:(e,t,i)=>{"use strict";i.d(t,{x:()=>a});var n=i(77570),s=i(96540);function a(){return(0,s.useContext)(n.B).mainDiv}},44879:(e,t,i)=>{"use strict";var n;i.d(t,{U:()=>n}),function(e){e[e.PORTRAIT=1]="PORTRAIT",e[e.LANDSCAPE=2]="LANDSCAPE"}(n||(n={}))},87419:(e,t,i)=>{"use strict";i.d(t,{NT:()=>s,bx:()=>a,cB:()=>n});const n="features/auto-defurnish",s="spaces.bundles.mp.defurnish";const a="overlayViews"},67246:(e,t,i)=>{"use strict";i.d(t,{L:()=>o});var n=i(56547),s=i(92996),a=i(38731);function o(){const e=(0,a.B)(),t=(0,s.h)({includeDefurnish:!0,editMode:e}).filter((e=>(0,n.AF)(e)))||[];return t.sort(((e,t)=>t.created.getTime()-e.created.getTime())),t[0]}},44120:(e,t,i)=>{"use strict";i.d(t,{h:()=>a});var n=i(56547),s=i(4717);function a(){const e=(0,s.G)();return!!e&&(0,n.AF)(e)}},78649:(e,t,i)=>{"use strict";i.d(t,{i:()=>s});var n=i(7478);class s extends n.QB{}},51313:(e,t,i)=>{"use strict";i.d(t,{P:()=>s});var n=i(7478);class s extends n.QB{constructor(e,t){super(),this.floorId=e,this.floorName=t}}},89928:(e,t,i)=>{"use strict";i.d(t,{G:()=>s});var n=i(7478);class s extends n.QB{constructor(e,t){super(),this.from=e,this.to=t}}},58229:(e,t,i)=>{"use strict";i.d(t,{q:()=>r});var n=i(12625),s=i(88325),a=i(53282),o=i(79875);class r extends n.B{constructor(e){super(),this.name="floors",this.floors=(0,s.y)(e)}onNameChange(e){let t=[];return(0,a.Sh)((()=>{this.getOrderedValues().forEach(((i,n)=>{t.push(i.onPropertyChanged("name",e))}))}),(()=>{t.forEach((e=>e.cancel())),t=[]}),!0)}addFloor(e){this.floors.set(e.id,e)}getFloor(e){if(!this.floors.has(e))throw new o.v;return this.floors.get(e)}tryGetFloor(e){return this.floors.get(e)}hasFloor(e){return this.floors.has(e)}getFloorAtIndex(e){return this.floors.values.find((t=>t.index===e))}getFloorByMeshGroup(e,t){const i=t?i=>i.meshGroup===e&&i.sourceViewIds.has(t):t=>t.meshGroup===e;return this.floors.values.find(i)}getFloorCount(){return this.floors.length}isMultifloor(){return this.getFloorCount()>1}getCollection(){return this.floors}iterate(e){return this.getOrderedValues().forEach(e)}getClosestFloorAtHeight(e){let t=this.floors.values[0],i=1/0;for(const n of this.floors){const s=Math.abs(n.medianSweepHeight()-e);i>s&&(i=s,t=n)}return t}getMinHeight(){let e=Number.MAX_SAFE_INTEGER;for(const t of this.floors){const i=t.boundingBox;i.min.y<=e&&(e=i.min.y)}return e}rename(e,t){if(void 0===t)throw new Error("Text Required");if(!this.floors.has(e))return;const i=this.floors.get(e);i.name=t,i.commit()}getOrderedValues(e=()=>!0){return this.floors.values.filter(e).sort(((e,t)=>e.index-t.index))}getFloorIdMap(e){const t={};for(const i of this.floors.values)e?t[String(i.index)]=i.id:t[i.id]=String(i.index);return t}}},79875:(e,t,i)=>{"use strict";i.d(t,{v:()=>s});var n=i(52018);class s extends n.t{constructor(e="Invalid Floor"){super(e),this.name="InvalidFloorException"}}},39209:(e,t,i)=>{"use strict";i.d(t,{X:()=>T});var n=i(12625),s=i(4850),a=i(97994),o=i(49988),r=i(92237),l=i(56147),d=i(88325),c=i(14614),u=i(50018),h=i(3928);class m extends h.v{constructor(){super(...arguments),this.hidden=!1,this.navigable=!0,this.hasEnabledAlignedSweeps=!1,this.hasEnabledUnalignedSweeps=!1}}class p{constructor(e,t,i,n,s,a){this.floors=e,this.viewmodeData=t,this.sweepData=i,this.applicationData=n,this.currentFloorObservable=s,this.navigableFloorIds=a,this.bindings=[],this.states=new d.E,this.hasEnabledAlignedSweeps=!1,this.updateFloorSweepData=()=>{const e=this.sweepData;this.isEditMode()||(this.states.values.forEach((e=>{e.hasEnabledAlignedSweeps=!1,e.hasEnabledUnalignedSweeps=!1})),e.iterate((e=>{if(null!==e.floorId){let t=this.getState(e.floorId);t||(t=this.initializeFloorState(e.floorId)),e.alignmentType===u.c$.ALIGNED?t.hasEnabledAlignedSweeps||(t.hasEnabledAlignedSweeps=e.enabled):t.hasEnabledUnalignedSweeps||(t.hasEnabledUnalignedSweeps=e.enabled),t.commit(),this.hasEnabledAlignedSweeps||(this.hasEnabledAlignedSweeps=e.enabled)}}))),this.updateNavigable()},this.updateHidden=()=>{const e=!this.currentFloorId,t=this.isViewingAlignedPano();this.states.keys.forEach((i=>{const n=!!i&&i===this.currentFloorId,s=this.getState(i);s.hidden=!(e||n||t),s.commit()}))},this.updateNavigable=()=>{const e=this.isEditMode(),t=this.isViewingAlignedPano(),i=this.viewmodeData.isDollhouse()||this.viewmodeData.isFloorplan();this.states.keys.forEach((n=>{const s=this.getState(n);s.navigable=!!e||(t?s.hasEnabledAlignedSweeps:!!i||(s.hasEnabledAlignedSweeps||s.hasEnabledUnalignedSweeps)),s.commit()}));const n=[];this.floors.iterate((e=>{this.getState(e.id).navigable&&n.push(e.id)})),this.navigableFloorIds.replace(n)},this.bindings.push(t.makeModeChangeSubscription(this.updateHidden),i.makeSweepChangeSubscription(this.updateHidden),s.onChanged(this.updateHidden),t.makeModeChangeSubscription(this.updateNavigable),i.makeSweepChangeSubscription(this.updateNavigable),i.onSweepsChanged(this.updateFloorSweepData),n.onPropertyChanged("application",this.updateFloorSweepData),e.onPropertyChanged("sourceViewId",(()=>{this.states.clear(),this.initializeFloorStates(),this.updateFloorSweepData(),this.updateHidden()}))),this.initializeFloorStates(),this.updateFloorSweepData(),this.updateHidden()}getState(e){return this.states.get(e)}isViewingAlignedPano(){return this.viewmodeData.isInside()&&void 0!==this.sweepData.currentAlignedSweepObject}isEditMode(){return this.applicationData.application===c.lg.WORKSHOP}get currentFloorId(){return this.currentFloorObservable.value?this.currentFloorObservable.value.id:null}initializeFloorStates(){this.floors.iterate((e=>this.initializeFloorState(e.id)))}initializeFloorState(e){const t=new m;return this.states.set(e,t),t}}var E=i(72773),S=i(79875);function O(e,t){return e}const g={floorChangesEnabled:()=>!0};let _=0;class T extends n.B{constructor(e,t,i,n,l,d,c=""){super(),this.sourceViewId=c,this.name="floors-view",this.id=""+_++,this.floorSelectable=!1,this.navigableFloorIds=new s.X,this.currentFloorObservable=new a.L(null),this.transitionObservable=new a.L({from:null,to:null,progress:new r.z(0),promise:Promise.resolve()}),this._observableFloorsSelectMode=new a.L(!1),this._observableRoomSelectMode=new a.L(!1),this._showFloorSelection=new a.L(!1),this.onlyShowActiveFloor=new a.L(!1),this.showAllFloorsOption=!0,this.floorSelectHoverEnabled=!0,this.getFloorMin=e=>{const t=e||(this.currentFloorId||this.bottomFloorId);return this.floors.getFloor(t).bottom},this.getFloorMinPlane=e=>{const t=e||(this.currentFloorId||this.bottomFloorId);return this.floors.getFloor(t).groundPlane},this.getFloorCentroid=(e,t)=>{const i=t||(this.currentFloorId||this.bottomFloorId);return this.floors.getFloor(i).boundingBox.getCenter(e)},this.isHidden=e=>"string"==typeof e&&this.stateHelper.getState(e).hidden,this.isNavigable=e=>"string"==typeof e&&this.stateHelper.getState(e).navigable,this.updateViewData=()=>{this.floors.iterate((e=>{this.derivedData[e.id]={id:e.id,index:e.index,name:this.getFloorName(e.id),sourceViewIds:e.sourceViewIds}})),this.commit()},this.getViewData=e=>{if(!this.derivedData[e]){const t=this.floors.getFloor(e);this.derivedData[e]={id:t.id,index:t.index,name:this.getFloorName(t.id),sourceViewIds:t.sourceViewIds}}return this.derivedData[e]},this.getAllViewData=()=>{const e=[];return this.floors.iterate((t=>{t.sourceViewIds.has(this.sourceViewId)&&e.push(this.getViewData(t.id))})),e},this.getFloor=e=>this.floors.getFloor(e),this.floors=e,this.config=null!=d?d:g,this.localize=null!=l?l:O,this.derivedData={},this.stateHelper=new p(this,t,i,n,this.currentFloorObservable,this.navigableFloorIds),this.updateViewData(),this.currentFloorNoTransitionObservable=new o.r((()=>this.transitionActive?null:this.currentFloorId),[e=>this.currentFloorObservable.onChanged(e),e=>this.transitionObservable.onChanged(e)])}isCurrentOrAllFloors(e){return!e||!this.currentFloorId||e===this.currentFloorId}isCurrentMeshGroupOrAllFloors(e){return this.currentFloorMeshGroup===E.nT||this.currentFloorMeshGroup===e}isCurrentFloorIndexOrAllFloors(e){return this.currentFloorIndex===e||this.currentFloorIndex===E.Zu}makeFloorChangeSubscription(e){return this.currentFloorObservable.onChanged(e)}get currentFloor(){return this.currentFloorObservable.value}get currentFloorId(){var e;return(null===(e=this.currentFloorObservable.value)||void 0===e?void 0:e.id)||null}get currentFloorIndex(){return this.currentFloorObservable.value?this.currentFloorObservable.value.index:E.Zu}get currentFloorMeshGroup(){return this.currentFloorObservable.value?this.currentFloorObservable.value.meshGroup:E.nT}getFloorIndexForMeshGroup(e){if(e===E.nT)return E.Zu;const t=this.floors.getFloorByMeshGroup(e,this.sourceViewId);return t?t.index:E.Zu}orderedFloors(){return this.floors.getOrderedValues((e=>e.sourceViewIds.has(this.sourceViewId)))}get bottomFloorId(){const e=this.orderedFloors();if(!e.length)throw new S.v("Cannot get bottom floor, model has no floors");return e[0].id}get topFloorId(){return this.getTopFloor().id}getTopFloor(){const e=this.orderedFloors();if(!e.length)throw new S.v("Cannot get top floor, model has no floors");return e[e.length-1]}get singleFloor(){if(1===this.floors.getFloorCount())return this.floors.getFloorAtIndex(0)}isMultifloor(){return this.floors.isMultifloor()}get nearestFloorId(){return this.transitionActive?this.transition.progress.value>.5?this.transition.to:this.transition.from:this.currentFloorId}get nearestFloor(){const e=this.nearestFloorId;return e?this.floors.getFloor(e):void 0}get transitionActive(){return this.transition.progress.active}get transition(){return this.transitionObservable.value}transitionToFloorInstant(e){this.currentFloorObservable.value=e?this.floors.getFloor(e):null,this.commit()}transitionToFloor(e,t,i,n){const s=this.transitionObservable.value.progress;s.modifyAnimation(0,1,i),this.transitionObservable.value={from:e,to:t,progress:s,promise:n},this.commit(),n.then((()=>{this.transitionToFloorInstant(t)}))}get totalFloors(){return this.floorsEnabled?this.orderedFloors().length:1}hasEnabledAlignedSweeps(e){return null!==e?this.stateHelper.getState(e).hasEnabledAlignedSweeps:this.stateHelper.hasEnabledAlignedSweeps}getNavigableFloorIds(){return this.navigableFloorIds.values()}getHighestVisibleFloor(){return this.currentFloor?this.currentFloor:this.getTopFloor()}getHighestVisibleFloorId(){return this.getHighestVisibleFloor().id}getFloorIdMap(){const e={};return this.iterate((t=>{e[t.id]={id:t.id,name:t.name,items:[]}})),e}iterate(e){this.floors.iterate((t=>{if(!t.sourceViewIds.has(this.sourceViewId))return;const i=this.getViewData(t.id);i&&e(i)}))}getFloorNames(){const e=[];return this.floorsEnabled?(this.floors.iterate((t=>{e[t.index]=this.getFloorName(t.id)})),e):e}getFloorName(e){if(!e)return this.localize(l.A.FLOOR_ALL);const t=this.floors.getFloor(e);return void 0!==t.name&&""!==t.name?t.name:this.getDefaultFloorName(e)}getDefaultFloorName(e){const t=this.floors.getFloor(e);return this.localize(l.A.SHOWCASE.FLOORS.DEFAULT_NAME,t.index+1)}getFloorsVisibility(){if(this.currentFloorId){const e=[];return this.floors.iterate((t=>{t.sourceViewIds.has(this.sourceViewId)&&(e[t.index]=t.id===this.currentFloorId?1:0)})),e}return[]}get floorsEnabled(){return this.config.floorChangesEnabled()}get floorSelectModeActive(){return this._observableFloorsSelectMode.value}set floorSelectModeActive(e){const t=e&&this.floorsEnabled;t!==this._observableFloorsSelectMode.value&&(this._observableFloorsSelectMode.value=t,this.commit())}onFloorSelectModeChange(e){return this._observableFloorsSelectMode.onChanged(e)}get showFloorSelection(){return this._showFloorSelection.value}set showFloorSelection(e){e!==this._showFloorSelection.value&&(this._showFloorSelection.value=e,this.commit())}onShowFloorSelectionChanged(e){return this._showFloorSelection.onChanged(e)}get roomSelectModeActive(){return this._observableRoomSelectMode.value}set roomSelectModeActive(e){const t=e;t!==this._observableRoomSelectMode.value&&(this._observableRoomSelectMode.value=t,this.commit())}onRoomSelectModeChange(e){return this._observableRoomSelectMode.onChanged(e)}get isInAllFloorsMode(){return this.isMultifloor()&&this.currentFloorIndex===E.Zu}}},72773:(e,t,i)=>{"use strict";i.d(t,{Zu:()=>n,nT:()=>s,t$:()=>a});const n=-1,s=-1,a=500},39833:(e,t,i)=>{"use strict";i.d(t,{X:()=>a});var n=i(1932),s=i(38253);function a(){const e=(0,n.m)();return(0,s.P)(e)}},1932:(e,t,i)=>{"use strict";i.d(t,{m:()=>a});var n=i(96540),s=i(99438);function a(){const e=(0,s._)(),[t,i]=(0,n.useState)(e?e.currentFloorId:null);return(0,n.useEffect)((()=>{if(!e)return()=>{};const t=()=>{const t=e.currentFloorId;i(t)},n=e.makeFloorChangeSubscription(t);return t(),()=>n.cancel()}),[e]),t}(0,i(38064).c)("currentFloorId",a)},38253:(e,t,i)=>{"use strict";i.d(t,{P:()=>a});var n=i(96540),s=i(99438);function a(e){const t=(0,s._)(),[i,a]=(0,n.useState)(t&&null!==e?t.getViewData(e):null);return(0,n.useEffect)((()=>{if(!t)return()=>{};if(e){const i=t.getViewData(e);a(i)}else a(null);return()=>{}}),[t,e]),i}},99438:(e,t,i)=>{"use strict";i.d(t,{_:()=>o});var n=i(98236),s=i(38064),a=i(39209);const o=(0,n.v_)(a.X);(0,s.c)("floorsViewData",o)},93900:(e,t,i)=>{"use strict";i.d(t,{Y:()=>l});var n=i(96540),s=i(62802),a=i(94799),o=i(69083),r=i(71687);function l(){const[e,t]=(0,n.useState)([]),i=(0,a.j)(r.QW),l=(0,o.tx)(i.floorsViewDatas);return(0,n.useEffect)((()=>{const e=()=>{const e=[];for(const t of l)e.push(...t.getNavigableFloorIds().map(t.getViewData));t(e)};e();const n=[i.floorsViewData.floors.onNameChange(e)];for(const t of l)n.push(t.navigableFloorIds.onChanged(e));const a=new s.P(...n);return()=>a.cancel()}),[i.floorsViewData.floors,l]),e}},39188:(e,t,i)=>{"use strict";i.d(t,{m:()=>a});var n=i(87805),s=i(39209);const a=(0,n.u)(s.X,"showAllFloorsOption",!0)},72561:(e,t,i)=>{"use strict";i.d(t,{h:()=>a});var n=i(96540),s=i(99438);function a(){const e=(0,s._)(),[t,i]=(0,n.useState)(!!e&&e.showFloorSelection);return(0,n.useEffect)((()=>{if(!e)return()=>{};const t=e.onShowFloorSelectionChanged(i);return i(e.showFloorSelection),()=>t.cancel()}),[e]),t}},80303:(e,t,i)=>{"use strict";i.d(t,{p:()=>n});const n="features/floorselect"},92637:(e,t,i)=>{"use strict";i.d(t,{P:()=>s});var n=i(11165);class s extends n.u{constructor(e,t){super(),this.payload={messagePhraseKey:e,options:t}}}s.id="DEFAULT_ERROR"},37062:(e,t,i)=>{"use strict";i.d(t,{J:()=>a});var n=i(12625),s=i(88325);class a extends n.B{constructor(){super(),this.name="gui-view-data",this.collapsedAccordionGroupsObservable=(0,s.y)()}isAccordionGroupCollapsed(e){return this.collapsedAccordionGroupsObservable.get(e)}setAccordionGroupCollapsed(e,t){this.collapsedAccordionGroupsObservable.set(e,t)}getAccordionGroupCollapsedStates(){return this.collapsedAccordionGroupsObservable.deepCopy()}onAccordionCollapsedGroupsChanged(e){return this.collapsedAccordionGroupsObservable.onChanged(e)}}},81088:(e,t,i)=>{"use strict";i.d(t,{X6:()=>o,nX:()=>a,rH:()=>r});var n=i(11165);const s={message:"",title:"",modalClass:"",cancellable:!0,closeButton:!0,confirmDisabled:!1};class a extends n.u{constructor(e,t){if(super(),e&&!t)throw new Error("Cannot open empty modal");this.payload={action:e,properties:Object.assign(Object.assign({},s),t)}}}a.id="CONFIRM_MODAL";class o extends n.u{constructor(e,t){super(),this.payload={modal:e,open:t}}}o.id="TOGGLE_MODAL";class r extends n.u{constructor(){super()}}r.id="CLOSE_MODAL"},21728:(e,t,i)=>{"use strict";var n,s;i.d(t,{f:()=>n,r:()=>s}),function(e){e.Inside="panorama",e.InsideMesh="mesh",e.Dollhouse="dollhouse",e.Floorplan="floorplan",e.Exterior="exterior",e.None="none"}(n||(n={})),function(e){e.Inside="click_inside_mode_button",e.InsideMesh="click_mesh_mode_button",e.Dollhouse="click_dollhouse_mode_button",e.Floorplan="click_floorplan_mode_button",e.Exterior="click_exterior_mode_button"}(s||(s={}))},52721:(e,t,i)=>{"use strict";i.d(t,{R:()=>m});var n=i(78849),s=i(81459),a=i(53641),o=i(23500),r=i(28475),l=i(75522),d=i(57811),c=i(28454),u=i(3071),h=i(87951);class m{constructor(e,t){this.engine=e,this.disabledAssets={[d.f]:!1,[o.s]:!1,[r.RP]:!1,[l.qE]:!1,[a.nH]:!1},this.settingsToggler=new s.U(t,this.disabledAssets),this.initPromise=this.init()}async init(){const{market:e}=this.engine;[this.measurementModeData,this.searchData]=await Promise.all([e.waitForData(c.s),e.waitForData(n.L)])}async activate(){this.settingsToggler.toggle(!0),await this.engine.commandBinder.issueCommandWhenBound(new u.S(!0,!0))}async deactivate(){this.settingsToggler.toggle(!1),this.engine.commandBinder.issueCommand(new h.y(-1)),await this.engine.commandBinder.issueCommand(new u.S(!1))}async dispose(){await this.initPromise}}},22213:(e,t,i)=>{"use strict";var n;i.d(t,{a:()=>n}),function(e){e.ADD_FROM_PHOTOS="add_from_photos",e.ATTACHMENT="attachmentViewer",e.CONFIRM="confirm",e.CTA="cta",e.DEFURNISH_AI="defunish_ai",e.HELP="help",e.HIGHLIGHT_EDITOR="highlight_editor",e.LAYER_ADD="layer_add",e.LINK_EDITOR="link_editor",e.MEASUREMENT_HELP="measurementModeHelp",e.MEDIA_EMBED_POPUP="mediaEmbedPopup",e.MODEL_VIEW_ADD="model_view_add",e.MODEL_VIEW_EDITOR="model_view_editor",e.MODEL_VIEW_DUPLICATE="model_view_duplicate",e.PHOTO_VIEWER="photo_viewer",e.RATING_THANK_YOU="rating_thank_you",e.SETTINGS="settings",e.SHARE="share",e.TERMS="terms",e.TOUR_SETTINGS="hlr_settings",e.VIEWS_INFO="views_info",e.VR_SELECT="vrSelect",e.GENERATING_TOUR="generating_tour",e.SAVING_GENERATED_TOUR="saving_generated_tour"}(n||(n={}))},79187:(e,t,i)=>{"use strict";i.d(t,{SN:()=>d,dW:()=>l,kk:()=>a,ot:()=>c,zj:()=>r,zm:()=>o});var n=i(56147);const{MODEL_RATING:s}=n.A.WORKSHOP,a=5,o={HAPPINESS:"happiness",QUALITY:"quality",NAVIGATION:"navigation",FEEDBACK:"feedback"},r=o.HAPPINESS,l={[o.HAPPINESS]:s.HAPPINESS_TITLE,[o.QUALITY]:s.QUALITY_ISSUES_TITLE,[o.NAVIGATION]:s.NAVIGATION_ISSUES_TITLE,[o.FEEDBACK]:s.FEEDBACK_TITLE},d={[o.HAPPINESS]:s.HAPPINESS_BODY},c={[o.QUALITY]:[{text:s.QUALITY_ISSUES_LIGHTING,value:"lighting"},{text:s.QUALITY_ISSUES_3D_MESH,value:"3d_mesh"},{text:s.QUALITY_ISSUES_COLORING,value:"coloring"},{text:s.QUALITY_ISSUES_IMAGE_QUALITY,value:"image_quality"}],[o.NAVIGATION]:[{text:s.NAVIGATION_ISSUES_BLOCKED_DOORWAYS,value:"blocked_doorways"},{text:s.NAVIGATION_ISSUES_OBSTRUCTIONS,value:"obstructions"},{text:s.NAVIGATION_ISSUES_MISALIGNED_SCANS,value:"misaligned_scans"},{text:s.NAVIGATION_ISSUES_FLOOR_SEPARATION,value:"floor_separation"},{text:s.NAVIGATION_ISSUES_DISAPPEARING_FLOORS,value:"disappearing_floors"}]}},69340:(e,t,i)=>{"use strict";i.d(t,{l:()=>l});var n=i(25773),s=i(4850),a=i(5262),o=i(87805),r=i(3645);const l=()=>{const e=(0,o.Z)(n.d,"applicationKeys",new s.X);return(0,a.i)(r.nt,!1)&&0===e.length}},8323:(e,t,i)=>{"use strict";i.d(t,{E:()=>o});var n=i(5262),s=i(96540),a=i(3645);const o=()=>{const e=(0,n.i)(a.An,a.Z1);return(0,s.useMemo)((()=>Object.assign({},a.Z1,e)),[e])}},12786:(e,t,i)=>{"use strict";i.d(t,{T:()=>z});var n=i(97084),s=i(99689),a=i(35843);const o=()=>{},r=()=>null,l=()=>!1,d=()=>Promise.reject(),c=()=>Promise.resolve(),u=()=>({}),h=()=>[],m=()=>({renew:o,cancel:o}),p={register:o,unregister:o,waitForData:d,tryGetData:r},E={subscribe:m,unsubscribe:o,broadcast:o};var S=i(12161);class O extends S.w{constructor(){super(...arguments),this.addBinding=m,this.removeBinding=o,this.issueCommand=d,this.issueCommandWhenBound=d,this.hookCommand=m,this.resetHooks=o}}const g=new O,_={mask:0,addLayers:o,removeLayers:o,clone:()=>_},T=()=>_;const A={market:p,msgBus:E,commandBinder:g,generatorSpreader:new s.Ch,uniqueId:-1,diContainer:a.oV,getModuleBySymbol:d,getModuleBySymbolSync:function(){throw new Error("getModuleBySymbolSync not supported")},tryGetModuleBySymbolSync:r,addComponent:c,removeComponent:c,getComponentByType:r,getComponents:function*(){},claimRenderLayer:T,getRenderLayer:T,subscribe:m,unsubscribe:o,broadcast:o,disposeRenderLayer:o,startGenerator:o,stopGenerator:o,after:c,toggleRendering:o,tick:o};const v=new class{constructor(){this.track=o,this.trackGuiEvent=o,this.trackToolGuiEvent=o}};var f=i(21722);class N extends f.default{constructor(){super(...arguments),this.t=(e,t)=>`${e}${t&&Object.keys(t).length?JSON.stringify(t):""}`,this.T=e=>e,this.has=e=>!0}get languageCode(){return"en"}}const I=new N;var L=i(33156);const R=(0,i(33895).A)(""),y=()=>R;class b extends L.E{constructor(){super(...arguments),this.getUserInfoByEmail=r,this.getUserInfoById=r,this.getUserDisplay=y,this.iterate=o,this.getUsersWhoMayNeedAccess=u,this.getKnownUsers=h,this.getCurrentUser=y,this.isLoggedIn=l,this.isOrgAdmin=l,this.isInviter=l,this.isEditor=l,this.isCommenter=l,this.getCurrentUserId=()=>R.id,this.onUsersChanged=m}}const D=new b(R,!1,!1);var M=i(96319),P=i(88325),k=i(23864),w=i(73566);const C={activate:c,deactivate:c},x=new k.N({id:w.S0.LABELS,namePhraseKey:"",panel:!1,panelLeft:!1,hidesAppBar:!1,icon:"",analytic:"labels",dimmed:!1,enabled:!1,manager:C,ui:{}}),H=new P.E;class U extends M.M{constructor(){super(...arguments),this.addTools=o,this.iterate=o,this.getTool=()=>x,this.removeTool=o,this.removeAllTools=o,this.setOpenAsset=o,this.onOpenAssetChanged=m,this.getActiveTool=r,this.activeToolName=null,this.previousToolName=null,this.openModal=null,this.toolChangeInProgress=!1,this.isPanelOpen=l,this.isToolCollapsedToBottom=l,this.toolPanelLayout=w.L$.NORMAL,this.softOpening=!1,this.toolCollapsed=!1}get toolsMap(){return H}get openAsset(){return null}}const F=new U;var G=i(25316);class V extends G.o{constructor(){super(...arguments),this.setSetting=o,this.setLocalStorageSetting=o,this.hasSetting=l,this.tryGetSetting=o,this.getSetting=o,this.getOverrideParam=o,this.iterate=o}}const W=new V;var B=i(49953);class j extends B.L{constructor(){super(...arguments),this.hasPolicy=l,this.getPolicy=()=>null}}const K=new j,z={editMode:!1,mainDiv:document.createElement("div"),queue:new n.L3,messageBus:E,userData:D,toolsData:F,settings:W,policyData:K,analytics:v,engine:A,market:p,commandBinder:g,locale:I,apiHost:"default"}},77570:(e,t,i)=>{"use strict";i.d(t,{B:()=>a});var n=i(96540),s=i(12786);const a=(0,n.createContext)(s.T)},29106:(e,t,i)=>{"use strict";var n,s;i.d(t,{$:()=>n,Y:()=>s}),function(e){e[e.CONFIRM=0]="CONFIRM",e[e.CLOSE=1]="CLOSE"}(n||(n={})),function(e){e[e.CLOSE=0]="CLOSE",e[e.DISPLAY=1]="DISPLAY",e[e.UPDATE=2]="UPDATE"}(s||(s={}))},90087:(e,t,i)=>{"use strict";i.d(t,{L:()=>s});var n=i(93702);function s(){return(0,n.K)().commandBinder}},98236:(e,t,i)=>{"use strict";i.d(t,{v_:()=>o,Ez:()=>r,Bt:()=>l});var n=i(96540),s=i(77570);function a(){return(0,n.useContext)(s.B).market}function o(e){return()=>r(e)}function r(e){const t=a(),[i,s]=(0,n.useState)(t.tryGetData(e));return(0,n.useEffect)((()=>{let n=!1;return i||t.waitForData(e).then((e=>{n||s(e)})),()=>{n=!0}}),[t,e,i]),i}function l(e){const t=a();return t.tryGetData(e)||(0,n.use)(t.waitForData(e))}},87805:(e,t,i)=>{"use strict";i.d(t,{Z:()=>o,u:()=>a});var n=i(96540),s=i(98236);function a(e,t,i){return()=>o(e,t,i)}function o(e,t,i){const a=(0,s.Ez)(e),[o,r]=(0,n.useState)(a?a[t]:i);return(0,n.useEffect)((()=>{if(!a)return()=>{};const e=a.onPropertyChanged(t,r);return r(a[t]),()=>{e&&e.cancel()}}),[a,t]),o}},38731:(e,t,i)=>{"use strict";i.d(t,{B:()=>a});var n=i(96540),s=i(77570);function a(){return(0,n.useContext)(s.B).editMode}},93702:(e,t,i)=>{"use strict";i.d(t,{K:()=>a});var n=i(96540),s=i(77570);function a(){return(0,n.useContext)(s.B).engine}},6336:(e,t,i)=>{"use strict";i.d(t,{i:()=>s});var n=i(96540);function s(e){var t;const[i,s]=(0,n.useState)(null==e?void 0:e.getCurrentValue()),[a,o]=(0,n.useState)(null===(t=null==e?void 0:e.validUntil)||void 0===t?void 0:t.getTime()),r=!!a&&a-Date.now()<=0;return(0,n.useEffect)((()=>{if(void 0===a)return()=>{};if(void 0===e)return()=>{};let t=!1;const i=a-Date.now(),n=()=>{e.get().then((i=>{var n;t||(s(i),o(null===(n=e.validUntil)||void 0===n?void 0:n.getTime()))}))};if(i<=0)return n(),()=>t=!0;const r=window.setTimeout(n,i);return()=>{t=!0,window.clearTimeout(r)}}),[e,a]),(0,n.useEffect)((()=>{s(null==e?void 0:e.getCurrentValue())}),[e]),[i,r]}},43327:(e,t,i)=>{"use strict";i.d(t,{f:()=>d});var n=i(96540),s=i(18160),a=i(88581),o=i(53289),r=i(1197);function l(e,t){return!(!e||!t)&&(e.isInside()&&t.isSweepUnaligned(t.state.currentSweep))}function d(){const e=(0,s.G)(),t=(0,a.o)(),[i,d]=(0,n.useState)(l(t||void 0,e||void 0)),c=(0,n.useCallback)((()=>{e&&t&&d(l(t,e))}),[e,t]);return(0,o.J)(r.A,c),(0,n.useEffect)((()=>{if(!e)return()=>{};const t=e.makeSweepChangeSubscription(c);return c(),()=>t.cancel()}),[e,c]),i}},53289:(e,t,i)=>{"use strict";i.d(t,{J:()=>a});var n=i(96540),s=i(78063);function a(e,t){const i=(0,s.B)();(0,n.useEffect)((()=>{const n=i.subscribe(e,t);return()=>n.cancel()}),[i,e,t])}},78063:(e,t,i)=>{"use strict";i.d(t,{B:()=>s});var n=i(93702);function s(){return(0,n.K)().msgBus}},17904:(e,t,i)=>{"use strict";i.d(t,{S:()=>a});var n=i(96540),s=i(93702);function a(e){const t=(0,s.K)(),[i,a]=(0,n.useState)(t.tryGetModuleBySymbolSync(e));return(0,n.useEffect)((()=>{let i=!1;return t.getModuleBySymbol(e).then((e=>{i||a(e)})),()=>{i=!0}}),[e,t]),i}},94799:(e,t,i)=>{"use strict";i.d(t,{j:()=>a});var n=i(93702),s=i(96540);function a(e){const t=(0,n.K)();return t.tryGetModuleBySymbolSync(e)||(0,s.use)(t.getModuleBySymbol(e))}},19592:(e,t,i)=>{"use strict";i.d(t,{W:()=>s});var n=i(96540);function s(e){const[t,i]=(0,n.useState)(e.values());return(0,n.useEffect)((()=>{const t=()=>{i(e.values())},n=e.onChanged(t);return t(),()=>n.cancel()}),[e]),t}},69083:(e,t,i)=>{"use strict";i.d(t,{R:()=>a,tx:()=>s});var n=i(96540);function s(e){return a(e,(0,n.useCallback)((e=>{var t;return null!==(t=null==e?void 0:e.values)&&void 0!==t?t:[]}),[]))}function a(e,t){const[i,s]=(0,n.useState)(t(e));return(0,n.useEffect)((()=>{if(e){const i=()=>{s(t(e))},n=e.onChanged(i);return i(),()=>n.cancel()}return()=>{}}),[e,t]),i}},22044:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(96540);function s(e){const[t,i]=(0,n.useState)(e.value);return(0,n.useEffect)((()=>{const t=e.onChanged(i);return i(e.value),()=>t.cancel()}),[e]),t}},98903:(e,t,i)=>{"use strict";i.d(t,{b:()=>s});var n=i(50747);function s(e,t=null){return(0,n.F)().getOverrideParam(e,t)}},5262:(e,t,i)=>{"use strict";i.d(t,{i:()=>a});var n=i(96540),s=i(50747);function a(e,t){const i=(0,s.F)(),[a,o]=(0,n.useState)(i.tryGetSetting(e,t));return(0,n.useEffect)((()=>{const n=()=>{o(i.tryGetSetting(e,t))},s=i.onSettingChanged(e,n);return n(),()=>null==s?void 0:s.cancel()}),[i,e,t]),a}},87635:(e,t,i)=>{"use strict";i.d(t,{J:()=>o});var n=i(87965),s=i(5262),a=i(23339);function o(){return(0,s.i)(n.Y.UnitType,a.t.METRIC)}},79827:(e,t,i)=>{"use strict";i.d(t,{z:()=>n});const n={mouse:{click_old:i(16391),click:i(11400),clickInside:i(53228),dragLeft:i(46997),dragRight:i(2710),ctrlClick:i(61273),dragRightHoriz:i(38826),dragRightVert:i(5293),play:i(54322),positionLeft_old:i(56048),positionLeft:i(45663),positionRight:i(85893),zoom_old:i(93582),zoom:i(713)},gesture:{drag_old:i(99713),drag:i(45894),dragTwoFinger:i(99484),dragTwoFingerVert:i(40783),pinch_old:i(13179),pinch:i(58780),dragTwoFingerRotate:i(62979),position:i(96558),positionTwoFinger:i(60497),tap_old:i(50968),tap:i(64727),tapInside:i(68117),play:i(23672)},keyboard:{all:i(64268),inside:i(34715),leftRight:i(31873),spaceBar:i(28301),upDown:i(88691),zoom:i(35235)},moreHelp:{view360:i(94246),mattertag:i(65224)}}},43601:(e,t,i)=>{"use strict";i.r(t),i.d(t,{CloseModalCommand:()=>c.rH,ConfirmModalAction:()=>h.Y,ConfirmModalCommand:()=>c.nX,ModalChoice:()=>h.$,ToggleModalCommand:()=>c.X6,default:()=>u});var n=i(64882),s=i(71687),a=i(49953),o=i(25316),r=i(96319),l=i(33156),d=i(37062),c=i(81088);class u extends n.n{constructor(){super(...arguments),this.name="gui",this.workshopApp=!1,this.onAppReadyChanged=(e,t)=>{this.workshopApp&&(t&&e?this.mainDiv.classList.add("edit-mode"):this.mainDiv.classList.remove("edit-mode"))}}async init(e,t){this.workshopApp=e.workshopApp,this.mainDiv=e.mainDiv,this.reactContainer=e.reactContainer,this.market=t.market;const i=t.getModuleBySymbol(s.gS),n=t.getModuleBySymbol(s.$c),c=t.market.waitForData(l.E),u=t.market.waitForData(o.o);this.mainArgs=await Promise.all([i,n,u,c]),this.context={apiHost:e.apiHost,editMode:!1,mainDiv:e.mainDiv,analytics:this.mainArgs[1],locale:this.mainArgs[0],settings:this.mainArgs[2],userData:this.mainArgs[3],policyData:await this.market.waitForData(a.L),toolsData:await this.market.waitForData(r.M),engine:t,messageBus:t.msgBus,market:t.market,commandBinder:t.commandBinder,queue:e.queue},this.guiViewData=new d.J,this.market.register(d.J,this.guiViewData)}getAppContext(){return Object.assign({},this.context)}async loadUi(e){return e.apply(this,[this.getAppContext(),this.reactContainer,this.onAppReadyChanged])}confirmModal(e,t){return this.context.engine.commandBinder.issueCommand(new c.nX(e,t))}toggleModal(e,t){this.context.engine.commandBinder.issueCommand(new c.X6(e,t))}closeOpenModal(){this.context.engine.commandBinder.issueCommand(new c.rH)}}var h=i(29106)},50178:(e,t,i)=>{"use strict";i.d(t,{XR:()=>a,Yl:()=>r,c7:()=>o,rn:()=>s});var n=i(7478);class s extends n.QB{constructor(e,t){super(),this.modal=e,this.open=t}}n.QB;class a extends n.QB{constructor(e){super(),this.isOpen=e}}class o extends n.QB{constructor(e){super(),this.suppress=e}}class r extends n.QB{constructor(e,t){super(),this.textElement=e,this.focused=t}}},33177:(e,t,i)=>{"use strict";i.d(t,{F:()=>a,m:()=>n});var n,s=i(16263);function a(e=n.Default){const t=(0,s.s)("viewer");if(e===n.Default)return{show:5e3,dismiss:1e4};const i=[n.Defurnish,n.Measurements,n.FloorplanMode,n.DollhouseMode],a=new Map;let o=5e3;return i.forEach((e=>{(e=>e!==n.Defurnish||t)(e)&&(a.set(e,{show:o,dismiss:1e4}),o+=2e4)})),a.has(e)?a.get(e):{show:Number.MAX_SAFE_INTEGER,dismiss:1}}!function(e){e[e.Default=0]="Default",e[e.DollhouseMode=1]="DollhouseMode",e[e.FloorplanMode=2]="FloorplanMode",e[e.Measurements=3]="Measurements",e[e.Defurnish=4]="Defurnish"}(n||(n={}))},8647:(e,t,i)=>{"use strict";var n;i.d(t,{v:()=>n}),function(e){e.INFO="info",e.SUCCESS="success",e.WARNING="warning",e.ERROR="error"}(n||(n={}))},1763:(e,t,i)=>{"use strict";i.d(t,{i:()=>n});const n=(0,i(96540).createContext)({outOfScope:!1})},95439:(e,t,i)=>{"use strict";i.d(t,{Q:()=>s,v:()=>a});var n=i(11165);class s extends n.u{constructor(e){super(),this.payload=e}}s.id="SHOW_TOASTR";class a extends n.u{}a.id="HIDE_TOASTR"},56948:(e,t,i)=>{"use strict";var n;i.d(t,{X:()=>s,a:()=>n}),function(e){e.HandsRaised="hands-raised",e.RotatePhone="rotate-phone"}(n||(n={}));const s=new Map;s.set(n.HandsRaised,{alt:"Hands Raised",json:i(32244),fallback:i(10086)}),s.set(n.RotatePhone,{alt:"Rotate your device to portrait orientation",json:i(2377),fallback:i(28659)})},30743:(e,t,i)=>{"use strict";i.d(t,{Ay:()=>u});var n,s,a,o=i(96540),r=i(72909),l=i(56948),d=i(74848);let c=(n=Reflect.metadata("design:type",Function),s=Reflect.metadata("design:paramtypes",["undefined"==typeof LottieProps?Object:LottieProps]),(0,r.A)(a=n(a=s(a=class extends o.Component{lottieLib;lottieTargetRef=(()=>(0,o.createRef)())();isUnmounting=!1;constructor(e){super(e),this.state={fallbackActive:!1}}componentDidMount(){this.updateAnimation()}componentDidUpdate(e){e.animation===this.props.animation&&e.loop===this.props.loop||this.updateAnimation()}componentWillUnmount(){this.isUnmounting=!0}loadLottie=async()=>this.lottieLib?this.lottieLib:await i.e(4456).then(i.t.bind(i,49891,23));updateAnimation=async()=>{const{animation:e,loop:t=!1}=this.props;let i;this.setState({fallbackActive:!1});try{i=await this.loadLottie()}catch(e){if(this.isUnmounting)return;return void this.setState({fallbackActive:!0})}const n=l.X.get(e);if(i&&n&&this.lottieTargetRef.current){const e=i.loadAnimation({loop:t,container:this.lottieTargetRef.current,renderer:"svg",autoplay:!1,animationData:n.json});e.addEventListener("data_failed",(()=>{this.isUnmounting||this.setState({fallbackActive:!0})})),setTimeout((()=>{this.isUnmounting||e.play()}),50)}};renderFallback=()=>{const{animation:e}=this.props,t=l.X.get(e);return t?(0,d.jsx)("img",{className:"lottie-fallback",src:t.fallback,alt:t.alt}):null};render(){return(0,d.jsxs)("div",{className:"lottie",children:[(0,d.jsx)("div",{className:"lottie-animation",ref:this.lottieTargetRef}),this.state.fallbackActive&&this.renderFallback()]})}})||a)||a)||a);const u=c},77897:(e,t,i)=>{"use strict";i.d(t,{BB:()=>u,J5:()=>h,O$:()=>a,OP:()=>o,RL:()=>n,RX:()=>c,XU:()=>s,_0:()=>r,mn:()=>d,s4:()=>l});const n=250,s=()=>({wrapperLength:1,childLength:1,scrollOffset:1,isVisible:!1}),a=()=>({scrollbar:null,animation:null,dragStartScroll:0});var o,r;!function(e){e.horizontal="horizontal",e.vertical="vertical"}(o||(o={})),function(e){e.x="x",e.y="y"}(r||(r={}));const l=e=>{switch(e){case o.horizontal:return r.x;case o.vertical:return r.y}throw Error()},d=e=>{switch(e){case r.x:return o.horizontal;case r.y:return o.vertical}throw Error()},c={[o.horizontal]:{scrollOffset:"scrollLeft",offsetLength:"offsetWidth",clientLength:"clientWidth",positionOffset:"offsetLeft",lengthName:"width",offsetName:"left",eventPosition:"clientX",delta:r.x},[o.vertical]:{scrollOffset:"scrollTop",offsetLength:"offsetHeight",clientLength:"clientHeight",positionOffset:"offsetTop",lengthName:"height",offsetName:"top",eventPosition:"clientY",delta:r.y}};var u;!function(e){e.Beginning="Beginning",e.Middle="Middle",e.End="End",e.None="None"}(u||(u={}));const h=(e,t)=>t?e<.01?u.Beginning:1-e<.01?u.End:u.Middle:u.None},39905:(e,t,i)=>{"use strict";i.d(t,{H:()=>n,r:()=>o});var n,s=i(75742),a=i(27200);!function(e){e.TEXT="",e.LINK="link-url",e.HASH="link-hashtag",e.USER="link-user"}(n||(n={}));class o{constructor(e){this.serialize=e=>{const t=[],i=[].slice.call(e.childNodes);for(const e of i)switch(e.nodeName){case"#text":t.push(this.serializeText(e));break;case"A":t.push(this.serializeAnchor(e));break;case"P":case"DIV":t.push(this.serializeElement(e,!0));break;case"SPAN":t.push(this.serializeElement(e,!1));break;case"BR":break;default:t.push(this.serialize(e))}return t.join("")},this.deserialize=(e,t,i,n=this.markers)=>{const s=this.parse(e).map((e=>this.createNode(e,t,i)));return n?this.parseMarkers(s,n):s},this.serializeText=e=>{let t=this.sanitizeText(e.textContent||"");if(this.links){const e=new RegExp(/https?:\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62})?[a-z0-9\u00a1-\uffff]\.)+(?:[a-z\u00a1-\uffff]{2,}\.?))(?::\d{2,5})?(?:[/?#]\S*)?/gi),i=document.createElement("a");t=t.replace(e,(e=>(i.href=e,`[${e}](${i.href})`))),i.remove()}return this.hashtags&&(t=t.replace(/(#\w*)/,(e=>`[${e}]`))),t.replace(/\<\s*br\s*\/?>/gi,"\n")},this.serializeAnchor=e=>{const t=e.dataset.blocktype,i=this.sanitizeText(e.innerText||e.textContent||"");let n=i;switch(t){case s.n.HASH:n=`[${i}]`;break;case s.n.USER:if(this.users){let t=e.dataset.id||"",i=e.dataset.value||"";if(!t&&!i&&(i="@"===n[0]?n.substr(1):n,i)){const e=this.users.getUserInfoByEmail(i);e&&(t=e.id)}(t||this.validateEmail(i))&&(n=`[@${t}](${i})`)}break;case s.n.LINK:const t=e.dataset.value||e.href;t&&(n=`[${i}](${t})`);break;default:e.href&&(n=`[${i}](${e.href})`)}return n},this.serializeElement=(e,t)=>{let i=t?"\n":" ";return e.childNodes.length>0&&(i+=this.serialize(e)),i},this.validateEmail=(()=>{const e=/\S+@\S+\.\S+/,t=document.createElement("input");return t.type="email",t.required=!0,i=>(t.value=i,"function"==typeof t.checkValidity?t.checkValidity():e.test(i))})();const{links:t,hashtags:i,users:n,markers:a}=e;this.links=t||!1,this.hashtags=i||!1,this.users=n,this.markers=a}parseMarkers(e,t){const[i,n]=t;let s=!1;const a=new RegExp(i+"|"+n);for(let t=0;t{if(""!==n){let a;if(s){const e=document.createElement("span");e.setAttribute("data-blocktype","marker"),a=e,a.textContent=n}else a=document.createTextNode(n);r?e.splice(t++,0,a):i.appendChild(a)}a0===t?e:"["+e));let n=0;for(;ne.text)).join("")}searchMarkdown(e,t){let i=-1,n=0,s=0;const a=this.parse(e).map((e=>{let a;return this.matchTextBlock(e,t)?(s++,-1===i&&(i=n),a=e.markdown):a=e.text,n+=e.text.length,a}));return-1===i?null:{markdown:a.join(""),matchIndex:i,textLength:n,numMatches:s}}getUserMentions(e){return this.parse(e).filter((e=>e.blockType===s.n.USER&&e.value)).map((e=>e.value||""))}matchTextBlock(e,t){if(e.blockType===t.blockType)if(e.blockType===s.n.USER){if(e.id===t.id)return!0;if(e.value===t.value)return!0}else if(e.blockType===s.n.HASH)return e.text===t.text;return!1}parseIntoBlocks(e,t){if(this.users){const i=this.getUserBlock(e);if(i)return t.push(i),e.slice(i.markdown.length)}if(this.links){const i=this.getLinkBlock(e);if(i&&i.value&&!/javascript:/i.test(i.value))return t.push(i),e.slice(i.markdown.length)}if(this.hashtags){const i=this.getHashBlock(e);if(i)return t.push(i),e.slice(i.markdown.length)}const i=this.getTextBlock(e);return i&&t.push(i),null}getTextBlock(e){return 0===e.length?null:{blockType:s.n.TEXT,text:e,markdown:e}}getHashBlock(e){const t=e.match(o.hashRegex);return!t||t.length<2?null:{blockType:s.n.HASH,markdown:t[0],text:t[1]}}getUserBlock(e){if(!this.users)return null;const t=e.match(o.userRegex);if(!t||t.length<3)return null;let i=t[1].substr(1),n=t[2];const a=n?this.users.getUserInfoByEmail(n):this.users.getUserInfoById(i),r=a?a.name:"";return i=a?a.id:i,n=a?a.email:n,{blockType:s.n.USER,markdown:t[0],id:i,value:n,text:`@${r||n}`}}getLinkBlock(e){const t=e.match(o.linkRegEx);if(!t)return null;const i=t[2];let n=1,a=0;for(;a{"use strict";i.d(t,{IU:()=>s,JO:()=>c,K$:()=>a,Vg:()=>h,Zn:()=>r,_2:()=>o,_8:()=>n,on:()=>l,p8:()=>u,zu:()=>d});const n=767,s=576,a=992,o=375,r=55,l=70,d=250,c=750,u=3,h="minimalist-ui"},76191:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(94814);class s{constructor(e){this.isAnimating=!0,this.duration=e.duration,this.startValue=e.startValue,this.changeValue=e.endValue-this.startValue,this.easingFunction=e.easingFunction||n.dV}getUpdatedValue(){this.startTime||(this.startTime=Date.now());const e=Date.now()-this.startTime;return e>this.duration&&(this.isAnimating=!1),this.easingFunction(Math.min(e,this.duration),this.startValue,this.changeValue,this.duration)}}},82769:(e,t,i)=>{"use strict";i.d(t,{_:()=>n});const n=(e,t)=>{for(const i in t)if(e[i]!==t[i])return!0;return!1}},77363:(e,t,i)=>{"use strict";i.d(t,{J:()=>s});var n=i(58480);function s(e){var t,i;return(null===(t=e.market.tryGetData(n.G))||void 0===t?void 0:t.size)||(null===(i=e.mainDiv)||void 0===i?void 0:i.getBoundingClientRect())||{width:window.innerWidth,height:window.innerHeight}}},97191:(e,t,i)=>{"use strict";i.d(t,{A:()=>o});var n=i(20819),s=i(71828);class a{constructor(e){this.couldBeDrag=!1,this.isDragging=!1,this.shouldHandleEvents=!0,this.handleEvent=e=>{if(this.shouldHandleEvents)switch(e.stopPropagation(),e.type){case"mousedown":case"touchstart":case"pointerdown":this.onPressStart(e);break;case"mousemove":case"pointermove":case"touchmove":this.onPressMove(e);break;case"mouseup":case"pointerup":case"mouseleave":case"touchend":case"touchcancel":case"pointercancel":case"pointerleave":this.onPressEnd(e)}},this.callbacks=e}setEnabled(e){this.shouldHandleEvents=e,this.couldBeDrag=this.couldBeDrag&&e}getPosition(e){return(0,n.kH)(e)?{x:e.changedTouches[0].clientX,y:e.changedTouches[0].clientY}:{x:e.clientX,y:e.clientY}}onPressStart(e){this.couldBeDrag=!0,this.dragEvents=[],this.dragStart=this.getPosition(e),this.callbacks.handlePressStart&&this.callbacks.handlePressStart(this.getPosition(e))}onPressMove(e){if(!this.couldBeDrag)return;const t=this.getPosition(e);this.addDragEvent(t),this.isDragging||Math.sqrt(Math.pow(t.x-this.dragStart.x,2)+Math.pow(t.y-this.dragStart.y,2))>s.b7&&(this.isDragging=!0,this.callbacks.handleDragStart&&this.callbacks.handleDragStart()),this.callbacks.handlePressMove&&this.callbacks.handlePressMove({x:this.dragStart.x-t.x,y:this.dragStart.y-t.y})}onPressEnd(e){if(this.couldBeDrag){if(this.couldBeDrag=!1,this.isDragging){if(!this.dragEvents||!this.dragEvents[0])return;const e=this.dragEvents[0],t=this.dragEvents[this.dragEvents.length-1];if(this.callbacks.handleDragEnd){const i={x:0,y:0};Date.now()-t.timestamp10&&this.dragEvents.shift()}}a.dragMoveTimeout=100;const o=a},27612:(e,t,i)=>{"use strict";i.d(t,{c:()=>n});const n=({width:e,height:t})=>e<487||t<487},22e3:(e,t,i)=>{"use strict";i.d(t,{A:()=>n});class n{constructor(e,t=!1){this.containerData=e,t||this.containerData.onPropertyChanged("size",this.update.bind(this))}get vh(){return this.containerData.size.height}update(){const e=.01*this.vh;this.containerData.element.style.setProperty("--vh",`${e}px`)}dispose(){this.containerData.removeOnPropertyChanged("size",this.update.bind(this))}}},81544:(e,t,i)=>{"use strict";i.d(t,{L:()=>s,q:()=>a});var n=i(49586);class s extends n.T{constructor(e){super(),this.nativeEvent=e,this.type="hover"}}class a extends n.T{constructor(e){super(),this.nativeEvent=e,this.type="unhover"}}},49586:(e,t,i)=>{"use strict";i.d(t,{T:()=>n});class n{constructor(){this.eventType="input",this._propagationStopped=!1,this._defaultPrevented=!1}stopPropagation(){this._propagationStopped=!0}get propagationStopped(){return this._propagationStopped}preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}}},9360:(e,t,i)=>{"use strict";i.d(t,{RK:()=>a,TY:()=>o,WH:()=>s,q$:()=>r});var n=i(11165);class s extends n.u{}s.id="GUTTER_TOUCH_SCROLL_DISABLE";class a extends n.u{}a.id="GUTTER_TOUCH_SCROLL_ENABLE";class o extends n.u{}o.id="INPUT_ENABLE";class r extends n.u{}r.id="INPUT_DISABLE"},31002:(e,t,i)=>{"use strict";i.d(t,{Ds:()=>s,rX:()=>o,wR:()=>r});var n=i(92475);class s extends n.E{constructor(e,t,i){super(e),this.position=t,this.buttons=i}}class a extends n.E{constructor(e,t,i){super(e),this.position=t,this.button=i}}class o extends a{}class r extends a{}},92475:(e,t,i)=>{"use strict";i.d(t,{E:()=>s});var n=i(49586);class s extends n.T{constructor(e){super(),this.viewportId=e}}},78079:(e,t,i)=>{"use strict";i.d(t,{$3:()=>o,CD:()=>a});var n=i(49586);class s extends n.T{}class a extends s{constructor(e,t,i,n,s,a,o,r){super(),this.viewportId=e,this.id=t,this.position=i,this.clientPosition=n,this.button=s,this.down=a,this.device=o,this.nativeEvent=r}}class o extends s{constructor(e,t,i,n,s,a,o){super(),this.viewportId=e,this.id=t,this.position=i,this.clientPosition=n,this.buttons=s,this.device=a,this.nativeEvent=o}}},44351:(e,t,i)=>{"use strict";var n,s;i.d(t,{m:()=>s,o:()=>n}),function(e){e.Desktop="desktop",e.Mobile="mobile",e.VrOrientOnly="xr.orientonly",e.VrWithController="xr.controller",e.VrWithTrackedController="xr.trackedcontroller",e.VrTransientPointer="xr.transient-pointer",e.VrUnknown="xr."}(n||(n={})),function(e){e.None="interaction.none",e.Direct="interaction.direct",e.Key="interaction.key",e.Gui="interaction.gui",e.Mouse="interaction.mouse",e.Touch="interaction.touch",e.Pen="interaction.pen",e.XRController="interaction.xr.controller",e.XRGaze="interaction.xr.gaze",e.XRScreen="interaction.xr.screen"}(s||(s={}))},85182:(e,t,i)=>{"use strict";i.d(t,{B:()=>l});var n=i(12625),s=i(88325),a=i(9139),o=i(45205);const r=new a.Vy("label-data");class l extends n.B{constructor(e){super(),this.name="label",this.has=e=>this.map.has(e),this.getLabel=e=>this.map.get(e),this.map=(0,s.y)(e||{})}getCount(){return this.map.length}add(e){let t=e.sid;return this.map.has(t)&&r.warn("Label already tracked:",{sid:t,label:e,existing:this.getLabel(t)}),t=t||this.generateSid(),e.sid=t,e.commit(),this.map.set(e.sid,e),t}generateSid(){let e="";for(;!e||this.map.has(e);)e=(0,o.D)(11);return e}remove(e){return!!this.map.has(e)&&(this.map.delete(e),!0)}clear(){this.map.clear()}replace(e){this.map.replace(e)}getCollection(){return this.map}iterate(e){for(const t of this.map.keys)e(this.map.get(t),t)}isEqual(e){if(this.map.length!==e.map.length)return!1;for(const t of this.map){const i=e.map.get(t.sid);if(!i||!l.labelsAreEqual(t,i))return!1}return!0}static labelsAreEqual(e,t){return e.floorId===t.floorId&&e.roomId===t.roomId&&e.position.x===t.position.x&&e.position.y===t.position.y&&e.position.z===t.position.z&&e.sid===t.sid&&e.text===t.text&&e.floorId===t.floorId&&e.roomId===t.roomId&&e.visible===t.visible}getLabelsForRoom(e){const t=[];return this.iterate((i=>{i.roomId===e&&t.push(i)})),t}}},28475:(e,t,i)=>{"use strict";i.d(t,{LZ:()=>s,RP:()=>n});const n="features/labels",s="features/3d_labels_enabled"},8427:(e,t,i)=>{"use strict";i.d(t,{q:()=>l});var n=i(3928),s=i(88325),a=i(25712);function*o(e,t=1/0,i=1){let n=i>0?e:t;const s=i>0?t:e;for(;i>0?ns;)yield n,n+=i}var r=i(93877);class l extends n.v{static onTransactionsAdded(e){return l.transactions.onElementChanged({onUpdated(t,i){e(i,t)}})}get isInMemory(){return this.layerType===r.ku.IN_MEMORY||this.layerType===r.ku.COMMON_IN_MEMORY}constructor(e={}){super(),Object.assign(this,e);const t=l.transactions.get(this.id);this.transactions=null!=t?t:new d,l.transactions.set(this.id,this.transactions)}onApply(e){return this.transactions.add(e)}async applyTransactions(){return this.transactions.apply()}}l.idLength=25,l.idGenerator=new a.KA(l.idLength),l.transactions=new s.E;class d extends n.v{constructor(){super(),this.transactions=[],this.postApplicationTransactions=[],this.lastAppliedTransaction=-1,this.commit()}add(e){return this.transactions.push(e),this.commit(),{delete:()=>{const t=this.transactions.indexOf(e);t>-1&&(this.transactions.splice(t,1),--this.lastAppliedTransaction,this.commit())}}}async apply(){const e=o(0,this.transactions.length);this.applyIndices(e)}async applyNew(){const e=o(Math.min(this.lastAppliedTransaction+1,this.transactions.length),this.transactions.length);this.applyIndices(e)}async applyIndices(e){for(const t of e){const e=await this.transactions[t]();e&&this.postApplicationTransactions.push(e)}this.lastAppliedTransaction=this.transactions.length-1,this.postApply()}postApply(){for(const e of this.postApplicationTransactions)e();this.postApplicationTransactions=[]}}},47737:(e,t,i)=>{"use strict";i.d(t,{P:()=>S});var n=i(12625),s=i(4850),a=i(62802),o=i(53282),r=i(9139),l=i(96276),d=i(24790),c=i(9114),u=i(93877),h=i(4130),m=i(8427),p=i(56547);const E=new r.Vy("layers-data");class S extends n.B{constructor(e,t){super(),this.name="layers-data",this.commonInMemoryLayers=new s.X,this.inMemoryLayers=new s.X,this.layerObservers=new Set,this.layerVisibilityCache=new Map,this.layerToggledCache=new Map,this.currentViewId="",this.initialViewId="",this.layersEnabled=!1,this.initialViewId=t.id,this.viewsObservable=(0,s.Z)([t]),this.mdsContext=e||new c._,this.mdsContext.initialViewId=t.id,this.mdsContext.togglePrivateSession(t.isPrivateView()),this.mdsContext.toggleCompositeView(t.isCompositeView())}getLayerSource(e){var t,i;if(!this.layersEnabled||""===e||void 0===e||e===d.qw)return this.currentViewId;const n=null!==(t=this.getLayer(e))&&void 0!==t?t:this.getLayerAnyView(e);if(!n)throw new l.V("Layer not found");return null!==(i=n.sourceViewId)&&void 0!==i?i:this.currentViewId}setCurrentView(e){if(e===this.currentViewId)return;const t=this.getView(e);if(!t)throw new l.V("Model View not found during setCurrentView");this.aggregateLayerObserver&&this.aggregateLayerObserver.cancel(),E.debug(`Active view set to ${e} (${t.viewType})`),this.currentViewId=e,this.commit();const i=()=>{this.refreshLayerCaches(),this.layerObservers.forEach((e=>e()))};this.aggregateLayerObserver=new a.P(this.getCurrentView().layers.onChanged(i)),i()}getCurrentView(){const e=this.getView(this.currentViewId);if(!e)throw new l.V("Missing current model view");return e}getInitialView(){const e=this.getView(this.initialViewId);if(!e)throw new l.V("Missing initial model view");return e}hasView(e){return void 0!==this.viewsObservable.values().find((t=>t.id===e))}addView(e){if(this.hasView(e.id))throw new l.V("Model View already exists");this.viewsObservable.push(e)}canDeleteView(e){const t=this.getView(e);return!!t&&((0,p.xF)(t)||(0,p.V6)(t))}canDisableView(e){const t=this.getView(e);return!!t&&((0,p.xF)(t)||(0,p.V6)(t)||(0,p.AF)(t))}canDuplicateView(e){const t=this.getView(e);return!!t&&((0,p.xF)(t)||(0,p.XF)(t))}canBatchDeleteInActiveView(){return this.isModelLayered()||!(0,p.XF)(this.getCurrentView())}validateViewName(e){return e.length>0&&e.length<=h.cp}setViews(e){return this.viewsObservable.replace(e),this}getView(e){const t=this.viewsObservable.find((t=>t.id===e));if(!t)throw new l.V(`Model View not found in getView: ${e}`);return t}tryGetView(e){return this.viewsObservable.find((t=>t.id===e))}deleteView(e){const t=this.viewsObservable.findIndex((t=>t.id===e));-1!==t&&this.viewsObservable.remove(t)}hasUserViews(){return!!this.viewsObservable.find((e=>(0,p.xF)(e)))}getOrderedModelViews({includeDefurnish:e=!1,includeDisabled:t=!1,includeInsights:i=!1}={}){const n=this.viewsObservable.values().slice(),s=n.filter((n=>(t||n.enabled)&&((0,p.xF)(n)||i&&(0,p.V6)(n)||e&&(0,p.AF)(n)))).sort(((e,t)=>e.name.localeCompare(t.name,void 0,{numeric:!0}))),a=n.filter((e=>(0,p.XF)(e)));return a&&s.unshift(...a),s}onModelViewsChanged(e){return this.viewsObservable.onChanged(e)}onModelViewAdded(e){return this.viewsObservable.onElementChanged({onAdded:e})}onModelViewRemoved(e){return this.viewsObservable.onElementChanged({onRemoved:e})}onCurrentLayersChanged(e){return(0,o.Sh)((()=>this.layerObservers.add(e)),(()=>this.layerObservers.delete(e)))}currentLayers(){return this.getCurrentView().layers.values()}viewLayers(){const e=this.currentLayers();return this.filterUserFacingLayers(e)}filterUserFacingLayers(e){const t=[u.ku.VIEW_DATA_LAYER,u.ku.USER_LAYER,u.ku.IN_MEMORY,u.ku.COMMON_IN_MEMORY,u.ku.COMMON_USER_LAYER,u.ku.OTHER];return!!e.find((e=>e.layerType===u.ku.VIEW_DATA_LAYER))||t.push(u.ku.BASE_LAYER),e.filter((e=>t.includes(e.layerType)))}getLayer(e){return this.currentLayers().find((t=>t.id===e))}getLayerAnyView(e){function t(t){return t.find((t=>t.id===e))}for(const e of[this.getCurrentView(),...this.getOrderedModelViews({includeDefurnish:!0,includeDisabled:!0,includeInsights:!0})]){const i=t(e.layers);if(i)return i}return t(this.commonInMemoryLayers)||t(this.inMemoryLayers)}findLayer(e){return[...this.getCurrentView().layers.values(),...this.inMemoryLayers.values(),...this.commonInMemoryLayers.values()].find((t=>t.id===e))}getActiveLayer(){return this.getLayer(this.activeLayerId)}getBaseLayerId(){const e=this.currentLayers().find((e=>e.layerType===u.ku.BASE_LAYER));return(null==e?void 0:e.id)||d.qw}getViewLayerId(){const e=this.currentLayers().find((e=>e.layerType===u.ku.VIEW_DATA_LAYER));return null==e?void 0:e.id}getProxyLayerId(){const e=this.currentLayers().find((e=>e.layerType===u.ku.PROXY_LAYER));return null==e?void 0:e.id}getCameraRemovalLayerId(){const e=this.currentLayers().find((e=>e.layerType===u.ku.COMMON_CAMERA_REMOVAL_LAYER));return null==e?void 0:e.id}getViewLayerIdForBaseView(){const e=this.getBaseModelView();let t;return e&&(t=e.layers.find((e=>e.layerType===u.ku.VIEW_DATA_LAYER))),null==t?void 0:t.id}getCurrentUserLayers(){return this.currentLayers().filter((e=>e.visible&&[u.ku.USER_LAYER,u.ku.COMMON_USER_LAYER].includes(e.layerType)))}setActiveCurrentLayer(e){if(e!==this.activeLayerId){if(e!==d.qw){if(!this.currentLayers().find((t=>t.id===e)))throw new Error("Invalid layer id!")}this.activeLayerId=e,this.commit()}}layerVisible(e){return!e||!this.layersEnabled||!!this.layerVisibilityCache.get(e)}layerToggled(e){return!e||!this.layersEnabled||!!this.layerVisible(e)&&!!this.layerToggledCache.get(e)}toggleLayer(e,t){const i=this.getLayer(e);if(!i)throw new Error("Attempt to toggle unknown layer!");this.layerToggledCache.set(e,t),i.toggled=t,i.commit()}isInMemoryLayer(e,t=!1){const i=t?this.commonInMemoryLayers:this.inMemoryLayers;return this.layersEnabled&&(!e||!!i.find((t=>t.id===e)))}addInMemoryLayer(e){var t,i;const n=m.q.idGenerator.generate(),s=new m.q(Object.assign(Object.assign({},e),{id:n,layerType:e.common?u.ku.COMMON_IN_MEMORY:u.ku.IN_MEMORY,toggled:null!==(t=e.toggled)&&void 0!==t&&t,visible:null!==(i=e.visible)&&void 0!==i&&i}));if(e.common){this.commonInMemoryLayers.push(s);for(const e of this.getOrderedModelViews())e.layers.push(s)}return this.inMemoryLayers.push(s),s}removeInMemoryLayer(e){const t=this.inMemoryLayers.findIndex((t=>t.id===e));if(-1===t)throw new Error("In memory layer not found!");this.inMemoryLayers.splice(t,1);const i=this.inMemoryLayers.findIndex((t=>t.id===e));if(t>-1){this.commonInMemoryLayers.splice(i,1);for(const t of this.getOrderedModelViews()){const i=t.layers.findIndex((t=>t.id===e));i>-1&&t.layers.remove(i)}}}validateLayerName(e){return e.length>0&&e.length<=h.s5}replaceBackendLayers(e,t){for(const[t,{layerId:i}]of e.entries())i&&e.delete(t);for(const i of Object.keys(t))e.set(i,t[i])}setBaseLayerOnly(){const e=new m.q({id:d.qw,layerType:u.ku.BASE_LAYER});this.commonInMemoryLayers.push(e);for(const t of this.getOrderedModelViews())t.layers.push(e)}getWorkshopSessionView(){return this.viewsObservable.find((e=>e.viewType===u.jK.SESSION))}isWorkshopSessionView(){var e;return(null===(e=this.getWorkshopSessionView())||void 0===e?void 0:e.id)===this.currentViewId}isWorkshopSessionViewEnabled(){var e;return(null===(e=this.getWorkshopSessionView())||void 0===e?void 0:e.enabled)||!1}getBaseModelView(){return this.viewsObservable.find((e=>(0,p.XF)(e)))}getBaseModelId(){var e;return this.mdsContext.isPrivateSession?this.initialViewId:(null===(e=this.getBaseModelView())||void 0===e?void 0:e.id)||this.initialViewId}isModelLayered(){const e=this.getBaseModelView();return!!e&&(0,p.r0)(e)}isCurrentViewLayered(){const e=this.getCurrentView(),{viewType:t}=e;return t===u.jK.LAYERED_BASE||t===u.jK.USER||t===u.jK.INSIGHTS}getNonworkshopViewId(){const e=this.getCurrentView();return e.viewType!==u.jK.SESSION?e.id:this.getBaseModelId()}getWorkshopOrBaseId(){const e=this.getCurrentView();return e.viewType===u.jK.SESSION?e.id:this.getBaseModelId()}getDefurnishOrBaseId(e){const t=null!=e?e:this.getCurrentView();return t.viewType===u.jK.DEFURNISH?t.id:this.getBaseModelId()}getDefurnishView(){return this.viewsObservable.find((e=>e.viewType===u.jK.DEFURNISH))}getInsightsView(){return this.viewsObservable.find((e=>e.viewType===u.jK.INSIGHTS))}getNotesLayerId(e){if(e&&this.layersEnabled)return this.activeLayerId;const t=this.getViewLayerId();if(t)return t;const i=this.getCurrentView();if((0,p.XF)(i))return this.getBaseLayerId();if(this.layersEnabled)throw new Error("No View Layer in User View");return this.activeLayerId}getOrderedListsLayerId(){if(!this.layersEnabled)return;const e=this.getViewLayerId();if(e)return e;const t=this.getCurrentView();if((0,p.XF)(t))return this.getBaseLayerId();throw new Error("No View Layer in User View")}getSweepSourceIdFilterValue(e){const t=this.getCurrentView();return(0,p.AF)(t)||t.connections.length?e:null}refreshLayerCaches(){this.layerToggledCache.clear(),this.layerVisibilityCache.clear();const e=this.currentLayers();for(const t of e)this.layerToggledCache.set(t.id,t.toggled),this.layerVisibilityCache.set(t.id,t.visible)}}},25095:(e,t,i)=>{"use strict";i.d(t,{j:()=>r});var n=i(3928),s=i(4850),a=i(93877),o=i(25712);class r extends n.v{constructor(e={},t=!1){super(),this.name="",this.viewType=null,this.rawViewType="",this.enabled=!0,this.policies=[],this.layers=new s.X,this.connections=new s.X,this.hasOverlayAssets=()=>this.layers.some((e=>e.layerType===a.ku.OVERLAY_ASSETS_LAYER)),this.isDefurnishView=()=>this.viewType===a.jK.DEFURNISH,this.isPrivateView=()=>this.viewType===a.jK.DIGIPRO_SESSION||this.viewType===a.jK.TRUEPLAN||this.viewType===a.jK.SESSION||this.viewType===a.jK.PRIVATE_SESSION,this.isCompositeView=()=>{var e;return!0===(null===(e=this.viewType)||void 0===e?void 0:e.startsWith(a.jK.COMPOSITE_PROJECT))},this.isCompareView=()=>this.isCompositeView(),Object.assign(this,e),this.transient=t}hasPolicy(e){return!!this.getPolicy(e)}getPolicy(e){return this.policies.find((t=>t.name===e))}}r.idLength=25,r.idGenerator=new o.KA(r.idLength)},93877:(e,t,i)=>{"use strict";var n,s,a;i.d(t,{Hj:()=>a,jK:()=>n,ku:()=>s}),function(e){e.BASE="base",e.LAYERED_BASE="layered-base",e.INSIGHTS="insights",e.USER="user",e.DEFURNISH="defurnish",e.SESSION="session",e.DIGIPRO_SESSION="digipro-session",e.TRUEPLAN="trueplan",e.PRIVATE_SESSION="bundle-session",e.COMPOSITE_PROJECT="composite",e.COMPOSITE_COMPARE="composite.compare",e.COMPOSITE_EXTERIOR="composite.exterior",e.COMPOSITE_SITE="composite.site",e.OTHER="other"}(n||(n={})),function(e){e.BASE_LAYER="matterport.base",e.VIEW_DATA_LAYER="matterport.user.data",e.USER_LAYER="matterport.user.data.ext",e.OVERLAY_ASSETS_LAYER="matterport.overlay.assets",e.COMMON_USER_LAYER="matterport.user.data.common",e.COMMON_CAMERA_REMOVAL_LAYER="matterport.overlay.camera_removal.assets.common",e.PROXY_LAYER="matterport.proxy.common",e.IN_MEMORY="matterport.in-memory",e.COMMON_IN_MEMORY="matterport.in-memory.common",e.WORKSHOP="matterport.workshop.jsonstore",e.OTHER="other layer type",e.COMPOSITE_BASE="matterport.base.composite",e.COMPOSITE_USER_LAYER="matterport.user.data.ext.composite",e.COMPOSITE_VIEW_DATA_LAYER="matterport.user.data.composite"}(s||(s={})),function(e){e.TYPE="type",e.FLOOR="floor",e.ROOM="room",e.LAYER="layer",e.DATE="date"}(a||(a={}))},28577:(e,t,i)=>{"use strict";i.d(t,{AH:()=>a,H6:()=>r,T5:()=>d,Tl:()=>h,qD:()=>o,rX:()=>s});var n=i(82748);const s="model-views-feature",a="views",o="data-layers-feature",r="layers",l="spaces.webgl.layers.mode";var d;!function(e){e.DISABLED="disabled",e.VIEWS_OPTIONAL_OPT_IN="user_views",e.VIEWS_ENABLED="views_enabled",e.VIEWS_AND_LAYERS="views_layers",e.LAYERS_ONLY="layers"}(d||(d={}));const c="layers";var u;function h(e){const t=function(){switch((0,n.EN)()[c]){case u.DISABLED:return d.DISABLED;case u.VIEWS_ENABLED:return d.VIEWS_ENABLED;case u.VIEWS_AND_LAYERS:return d.VIEWS_AND_LAYERS;case u.LAYERS_ONLY:return d.LAYERS_ONLY}}();if(void 0!==t)return t;const i=e.getPolicy(l);return i&&i.value?i.value===d.VIEWS_OPTIONAL_OPT_IN?d.VIEWS_AND_LAYERS:i.value:d.DISABLED}!function(e){e.DISABLED="0",e.VIEWS_ENABLED="2",e.VIEWS_AND_LAYERS="3",e.LAYERS_ONLY="4"}(u||(u={}))},58024:(e,t,i)=>{"use strict";i.d(t,{z0:()=>r});var n=i(87805),s=i(96540),a=i(47613),o=i(47737);(0,n.u)(o.P,"activeLayerId","");function r(){const e=(0,a._)(),[t,i]=(0,s.useState)(null==e?void 0:e.getActiveLayer());return(0,s.useEffect)((()=>{if(!e)return()=>{};function t(){i(null==e?void 0:e.getActiveLayer())}const n=e.onPropertyChanged("activeLayerId",t);return t(),()=>n.cancel()}),[e]),t}},4717:(e,t,i)=>{"use strict";i.d(t,{G:()=>a});var n=i(96540),s=i(47613);function a(){const e=(0,s._)(),[t,i]=(0,n.useState)((null==e?void 0:e.getCurrentView())||void 0);return(0,n.useEffect)((()=>{if(!e)return()=>{};function t(){i((null==e?void 0:e.getCurrentView())||void 0)}const n=e.onPropertyChanged("currentViewId",t);return t(),()=>n.cancel()}),[e]),t}(0,i(38064).c)("activeModelView",a)},90683:(e,t,i)=>{"use strict";i.d(t,{a:()=>l,e:()=>d});var n=i(96540),s=i(44120),a=i(93877),o=i(47613);const r=(e,t,i)=>{const n=e?null==t?void 0:t.getLayer(e):null;return i&&(null==n?void 0:n.layerType)!==a.ku.VIEW_DATA_LAYER};function l(e){const t=(0,s.h)(),i=(0,o._)();return r(e,i,t)}function d(){const e=(0,s.h)(),t=(0,o._)();return(0,n.useCallback)((i=>r(i,t,e)),[t,e])}},78379:(e,t,i)=>{"use strict";i.d(t,{S:()=>o});var n=i(5262),s=i(44120),a=i(28577);function o(){const e=(0,n.i)(a.qD,!1),t=(0,s.h)();return e&&!t}},47982:(e,t,i)=>{"use strict";i.d(t,{j:()=>a});var n=i(96540),s=i(47613);function a(){const e=(0,s._)(),[t,i]=(0,n.useState)(null==e?void 0:e.getBaseModelId());return(0,n.useEffect)((()=>{if(!e)return()=>{};function t(){i(null==e?void 0:e.getBaseModelId())}const n=e.onModelViewsChanged(t);return t(),()=>null==n?void 0:n.cancel()}),[e]),t}},30901:(e,t,i)=>{"use strict";i.d(t,{t:()=>a});var n=i(87805),s=i(47737);const a=(0,n.u)(s.P,"currentViewId","")},12621:(e,t,i)=>{"use strict";i.d(t,{H:()=>u,_:()=>m});var n=i(96540),s=i(30051),a=i(56147),o=i(39869),r=i(93877),l=i(47613),d=i(4130);const{LAYERS:c}=a.A.WORKSHOP;function u(e,t,i){let n=null==t?void 0:t.name;if(!n){n=e.t(c.UNTITLED_LAYER_PLACEHOLDER);const s=null==t?void 0:t.layerType;(null==i?void 0:i.viewType)===r.jK.TRUEPLAN&&s===r.ku.OTHER?n=e.t(c.TRUEPLAN_LAYER_LABEL):s!==r.ku.BASE_LAYER&&s!==r.ku.VIEW_DATA_LAYER||(n=e.t(c.UNLAYERED_LAYER_LABEL))}return(0,s.W)(n,d.s5)}function h(e,t,i,n){return u(t,i?null==e?void 0:e.getLayer(i):void 0,n)}function m(e,t){const i=(0,l._)(),s=(0,o.Y)(),[a,r]=(0,n.useState)(h(i,s,e,t));return(0,n.useEffect)((()=>{if(!i)return()=>{};function n(){r(h(i,s,e,t))}const a=i.onCurrentLayersChanged(n);return n(),()=>a.cancel()}),[i,e,t,s]),a}},47613:(e,t,i)=>{"use strict";i.d(t,{_:()=>a});var n=i(98236),s=i(47737);const a=(0,n.v_)(s.P)},21960:(e,t,i)=>{"use strict";i.d(t,{x:()=>h});var n=i(96540),s=i(30051),a=i(56147),o=i(39869),r=i(93877),l=i(47613),d=i(4130);const{LAYERS:c}=a.A.WORKSHOP;function u(e,t,i){let n;try{n=i?null==e?void 0:e.getView(i):null}catch(e){}let a=null==n?void 0:n.name;if(!a)switch(null==n?void 0:n.viewType){case r.jK.INSIGHTS:a=t.t(c.DEFAULT_INSIGHTS_VIEW_NAME);break;case r.jK.TRUEPLAN:a=t.t(c.DEFAULT_TRUEPLAN_VIEW_NAME);break;case r.jK.DIGIPRO_SESSION:a=t.t(c.DEFAULT_DIGIPRO_VIEW_NAME);break;case r.jK.DEFURNISH:a=t.t(c.DEFAULT_DEFURNISH_VIEW_NAME);break;default:a=t.t(c.DEFAULT_VIEW_NAME)}return(0,s.W)(a,d.cp)}function h(e){const t=(0,l._)(),i=(0,o.Y)(),[s,a]=(0,n.useState)(u(t,i,e));return(0,n.useEffect)((()=>{if(!t)return()=>{};function n(){a(u(t,i,e))}const s=t.onModelViewsChanged(n);return n(),()=>s.cancel()}),[t,e,i]),s}},2716:(e,t,i)=>{"use strict";i.d(t,{z:()=>o});var n=i(96540),s=i(47613);function a(e,t=!0){if(!e)return[];const i=e.viewLayers();if(i.length>1&&i.unshift(i.splice(i.length-1,1)[0]),t){return i.filter((e=>!e.isInMemory))}return i}function o(e=!0){const t=(0,s._)(),[i,o]=(0,n.useState)(a(t,e));return(0,n.useEffect)((()=>{if(!t)return()=>{};function i(){o(a(t,e))}const n=t.onCurrentLayersChanged(i);return i(),()=>n.cancel()}),[t,e]),i}},92996:(e,t,i)=>{"use strict";i.d(t,{h:()=>d});var n=i(96540),s=i(5262),a=i(98903),o=i(62876),r=i(47613),l=i(87419);function d({editMode:e=!1,includeDefurnish:t=!1,includeDisabled:i=!1}={}){const d=(0,r._)(),c=(0,s.i)(o._H,!1),u=!!(0,a.b)(l.bx,!1),[h,m]=(0,n.useState)([]);return(0,n.useEffect)((()=>{if(!d)return()=>{};function n(){e&&(null==d?void 0:d.mdsContext.isPrivateSession)?m([d.getInitialView()]):m((null==d?void 0:d.getOrderedModelViews({includeDefurnish:t||u,includeInsights:c,includeDisabled:i||e}))||[])}const s=d.onModelViewsChanged(n),a=d.onPropertyChanged("currentViewId",n);return n(),()=>{null==s||s.cancel(),null==a||a.cancel()}}),[e,t,i,u,c,d]),h}},78115:(e,t,i)=>{"use strict";i.d(t,{MT:()=>s,NX:()=>o,V7:()=>r,Yp:()=>d,tj:()=>a,uU:()=>l});var n=i(7478);class s extends n.QB{}class a extends n.QB{}class o extends n.QB{constructor(e){super(),this.items=e}}class r extends n.QB{constructor(e){super(),this.layerId=e}}class l extends n.QB{}class d extends n.QB{}},56707:(e,t,i)=>{"use strict";i.d(t,{F:()=>d});var n=i(81587),s=i(9139),a=i(93877),o=i(8427),r=i(86867);const l=new s.Vy("mds-modelview-deserializer");class d{deserialize(e,t,i){return e&&e.layer.id&&e.layer.type&&t?new o.q({id:e.layer.id,name:e.layer.label||"",visible:e.visible,position:e.position,toggled:!0,layerType:this.getLayerType(e.layer.type),created:(0,n.XH)(e.layer.created),modified:(0,n.XH)(e.layer.modified),sourceViewId:this.getLayerSource(e.layer.id,i)||t}):(l.debug("Invalid layer data from MDS"),null)}getLayerType(e){return(0,r.U)(a.ku,e)?e:a.ku.OTHER}getLayerSource(e,t){var i,n,s;let a;if(t&&e){const o=t.layers.find((t=>t.layer.id===e));o&&(a=null===(s=null===(n=null===(i=o.sources)||void 0===i?void 0:i[0])||void 0===n?void 0:n.view)||void 0===s?void 0:s.id)}return a}}},57186:(e,t,i)=>{"use strict";i.d(t,{K:()=>c,o:()=>u});var n=i(15732),s=i(81587),a=i(9139),o=i(25095),r=i(93877),l=i(56707);const d=new a.Vy("mds-modelview-deserializer");class c{constructor(){this.deserializer=new l.F,this.policiesDeserializer=new n.S}deserialize(e,t){var i,n;if(!e||!e.id||!e.type)return d.debug("Deserialized invalid ModelView data from MDS",e),null;const a=this.policiesDeserializer.deserialize((null===(i=e.model)||void 0===i?void 0:i.policies)||[]),r=new o.j({viewType:this.getModelViewType(e),rawViewType:e.type,name:e.name||"",enabled:!!e.enabled,created:(0,s.XH)(e.created),modified:(0,s.XH)(e.modified),id:e.id,rootModelId:(null===(n=e.model)||void 0===n?void 0:n.rootModelId)||"",policies:a,compositeView:t});null==t||t.connections.forEach((e=>r.connections.push(e)));return this.getDataLayers(e,t).forEach((e=>r.layers.push(e))),r}getModelViewType(e){const t={"matterport.model.default":r.jK.BASE,"matterport.model.layered":r.jK.LAYERED_BASE,"matterport.user.insights":r.jK.INSIGHTS,"matterport.user.view":r.jK.USER,"matterport.model.defurnished":r.jK.DEFURNISH,"matterport.workshop.session":r.jK.SESSION,"trueplan.session":r.jK.TRUEPLAN,"capsvcs.digitalpro.session":r.jK.DIGIPRO_SESSION,"matterport.model.composite":r.jK.COMPOSITE_PROJECT,"matterport.model.composite.compare":r.jK.COMPOSITE_COMPARE,"matterport.model.composite.exterior":r.jK.COMPOSITE_EXTERIOR,"matterport.model.composite.site":r.jK.COMPOSITE_SITE};return e.type in t?t[e.type]:e.type.endsWith(".session")?r.jK.PRIVATE_SESSION:r.jK.OTHER}getDataLayers(e,t){const i=[];for(const n of e.layers||[]){const s=this.deserializer.deserialize(n,e.id,t);s&&i.push(s)}return i}}const u=function(){return new c}},4130:(e,t,i)=>{"use strict";i.d(t,{GB:()=>a,co:()=>o,cp:()=>n,s5:()=>s});const n=50,s=50,a="views",o="0"},56547:(e,t,i)=>{"use strict";i.d(t,{AF:()=>l,V6:()=>r,XF:()=>a,r0:()=>s,xF:()=>o});var n=i(93877);function s(e){return e.viewType===n.jK.LAYERED_BASE}function a(e){return s(e)||e.viewType===n.jK.BASE}function o(e){return e.viewType===n.jK.USER}function r(e){return e.viewType===n.jK.INSIGHTS}function l(e){return e.viewType===n.jK.DEFURNISH}},86324:(e,t,i)=>{"use strict";i.d(t,{ES:()=>l,EX:()=>r,y4:()=>d});var n=i(68909),s=i(36580),a=i(37458),o=i(3249);var r,l;!function(e){e[e.PIXELS=0]="PIXELS",e[e.METERS=1]="METERS"}(r||(r={})),function(e){e[e.NONE=0]="NONE",e[e.FADE_IN=1]="FADE_IN",e[e.FADE_OUT=-1]="FADE_OUT"}(l||(l={}));class d extends n.Mesh{constructor(e,t){var i,l,d,c,u,h,m,p;const E=new Float32Array([-9999,-9999,-9999,9999,9999,9999,-9999,-9999,-9999,9999,9999,9999,9999,9999,9999,-9999,-9999,-9999]),S=new Float32Array([1,1,0,0,-1,-1]),O=new Float32Array([0,1,0,1,0,1]),g=new n.InstancedBufferGeometry;g.setAttribute("position",new n.Float32BufferAttribute(E,3)),g.setAttribute("offsetDirection",new n.Float32BufferAttribute(S,1)),g.setAttribute("t",new n.Float32BufferAttribute(O,1)),g.setIndex([0,1,3,2,0,3,2,3,5,4,2,5]);const _={FADE_WIDTH:.8.toFixed(3)},T={};(null==t?void 0:t.dashUnits)===r.METERS&&(_.WORLDSPACE_DASH=!0,T.derivatives=!0);const A=null==t?void 0:t.fadeDistanceFromCamera;null!=A&&(_.FADE_DISTANCE_FROM_CAMERA=A.toFixed(2));const v=null==t?void 0:t.fadeDepth,f=null==t?void 0:t.fadeDepthTexture;null!=v&&null!=f&&(_.FADE_DEPTH=v.toFixed(3));const N=null==t?void 0:t.fadeAlongLineStartPct;null!=N&&(_.FADE_START_ALONG_PCT=N.toFixed(2));super(g,new n.ShaderMaterial({uniforms:n.UniformsUtils.clone(s.i.screenline.uniforms),side:n.DoubleSide,vertexShader:s.i.screenline.vertexShader,fragmentShader:s.i.screenline.fragmentShader,transparent:!0,depthTest:t.depthTest,depthWrite:t.depthWrite,depthFunc:t.depthFunc,stencilWrite:null!==(i=t.stencilWrite)&&void 0!==i&&i,stencilFunc:null!==(l=t.stencilFunc)&&void 0!==l?l:n.AlwaysStencilFunc,stencilRef:null!==(d=t.stencilRef)&&void 0!==d?d:0,stencilWriteMask:null!==(c=t.stencilWriteMask)&&void 0!==c?c:255,stencilFuncMask:null!==(u=t.stencilFuncMask)&&void 0!==u?u:255,stencilFail:null!==(h=t.stencilFail)&&void 0!==h?h:n.KeepStencilOp,stencilZFail:null!==(m=t.stencilZFail)&&void 0!==m?m:n.KeepStencilOp,stencilZPass:null!==(p=t.stencilZPass)&&void 0!==p?p:n.KeepStencilOp,defines:_,extensions:T})),this.transitionStartTime=0,this.transitionDuration=0,this.updateEndpoints(e),this.geometry.computeBoundingBox(),this.geometry.computeBoundingSphere(),this.renderOrder=a.X.lines,this.transitionDuration=t.transitionDuration||300,this.onBeforeRender=e=>{e.getSize(this.material.uniforms.screenSize.value),this.material.uniforms.pixelRatio.value=e.getPixelRatio(),this.material.uniforms.transitionProgress.value=(0,o.qE)(Math.abs(performance.now()-this.transitionStartTime)/this.transitionDuration,0,1)},this.material.uniforms.dashed.value=+t.dashed,this.material.uniforms.dashSize.value=t.dashSize,this.material.uniforms.gapSize.value=t.gapSize,this.material.uniforms.lineWidth.value=t.lineWidth,this.material.uniforms.color.value.copy(t.color),this.material.uniforms.globalOpacity.value=t.globalOpacity,this.material.uniforms.depthTex.value=null==f?void 0:f.texture,this.material.uniforms.transitionType.value=t.transitionType||0,this.frustumCulled=!1,this.matrixAutoUpdate=!1}updateEndpoints(e){var t;3*e.length!==(null===(t=this.start)||void 0===t?void 0:t.length)&&(this.geometry.dispose(),this.start=new Float32Array(3*e.length),this.startAttrib=new n.InstancedBufferAttribute(this.start,3),this.geometry.setAttribute("start",this.startAttrib),this.end=new Float32Array(3*e.length),this.endAttrib=new n.InstancedBufferAttribute(this.end,3),this.geometry.setAttribute("end",this.endAttrib),this.opacity=new Float32Array(e.length),this.opacityAttrib=new n.InstancedBufferAttribute(this.opacity,1),this.geometry.setAttribute("opacity",this.opacityAttrib));for(let t=0;t{"use strict";i.d(t,{i:()=>S});var n=i(68909),s=i(59155),a=i(81557),o=i.n(a),r=i(33326),l=i.n(r),d=i(228),c=i.n(d),u=i(88705),h=i.n(u),m=i(47107),p=i.n(m),E=i(40160);const S={endpoint:{uniforms:{opacity:{value:1},color:{value:new n.Color},bg:{value:null}},vertexShader:s.A.basicTextured.vertexShader,fragmentShader:o()},line:{uniforms:n.UniformsUtils.merge([n.UniformsLib.common,n.UniformsLib.fog,{linewidth:{value:4},resolution:{value:new n.Vector2(0,0)},dashScale:{value:1},dashSize:{value:.025},gapSize:{value:.05},mask:{value:null}}]),vertexShader:l(),fragmentShader:c()},screenline:{uniforms:{lineWidth:{value:1},screenSize:{value:new n.Vector2(0,0)},pixelRatio:{value:1},dashed:{value:0},dashSize:{value:1},gapSize:{value:1},antialiasWidth:{value:1},color:{value:new n.Color(1,0,0)},globalOpacity:{value:1},translationOffset:{value:new n.Vector3(0,0,0)},start:{value:new n.Vector3},end:{value:new n.Vector3},cameraPos:{value:new n.Vector3},depthTex:{value:null},fadeMaxDepth:{value:E.sv},transitionType:{value:0},transitionProgress:{value:0}},vertexShader:h(),fragmentShader:p()}}},40160:(e,t,i)=>{"use strict";i.d(t,{HT:()=>n,Mg:()=>a,UP:()=>s,q6:()=>o,sv:()=>r});const n={FADE_DURATION:100,LABEL_HIDDEN_OPACITY:.15,DEPTH_WRITE_THRESHOD:.15,ALIGN_LABELS:!1,LABEL_SIZING:.14,LABEL_NDC_SCALEFACTOR:.5,LABEL_ASPECT_SCALEFACTOR:.035,OFFSET_TOWARDS_CAMERA:.25,HIDE_LABELS:!1},s={dottedLineDefault:2,lineDefault:6,lineSelected:6,endpointDefault:2.5,endpointSelected:3.75},a=.01,o=5,r=100},56147:(e,t,i)=>{"use strict";var n;i.d(t,{A:()=>s}),function(e){e.LOADING="LOADING",e.PRESENTED_BY_CAPS="PRESENTED_BY_CAPS",e.EXPLORE_3D_SPACE="EXPLORE_3D_SPACE",e.POWERED_BY="POWERED_BY",e.SC_LOCKOUT_MESSAGE="SC_LOCKOUT_MESSAGE",e.SC_LOCKOUT_TITLE="SC_LOCKOUT_TITLE",e.SC_PASSWORD_TITLE="SC_PASSWORD_TITLE",e.SC_PASSWORD_INVALID="SC_PASSWORD_INVALID",e.SC_PASSWORD_PLACEHOLDER="SC_PASSWORD_PLACEHOLDER",e.SC_PASSWORD_SUBMIT="SC_PASSWORD_SUBMIT",e.VIEW_INSIDE="VIEW_INSIDE",e.VIEW_INSIDE_MESH="VIEW_INSIDE_MESH",e.VIEW_DOLLHOUSE="VIEW_DOLLHOUSE",e.VIEW_FLOORPLAN="VIEW_FLOORPLAN",e.VIEW_EXTERIOR="VIEW_EXTERIOR",e.VIEW_FULLSCREEN="VIEW_FULLSCREEN",e.EXIT_FULLSCREEN="EXIT_FULLSCREEN",e.OPEN_HIGHLIGHTS="OPEN_HIGHLIGHTS",e.CLOSE_HIGHLIGHTS="CLOSE_HIGHLIGHTS",e.PAUSE="PAUSE",e.SOCIAL_SHARING="SOCIAL_SHARING",e.VIEW_IN_VR="VIEW_IN_VR",e.HOTKEY_VIEW_INSIDE="HOTKEY_VIEW_INSIDE",e.HOTKEY_VIEW_DOLLHOUSE="HOTKEY_VIEW_DOLLHOUSE",e.HOTKEY_VIEW_FLOORPLAN="HOTKEY_VIEW_FLOORPLAN",e.FLOOR_NAME="FLOOR_NAME",e.FLOOR_ALL="FLOOR_ALL",e.PLUGIN_VISIBILITY="PLUGIN_VISIBILITY",e.PLUGIN_CHANGE_ALL="PLUGIN_CHANGE_ALL",e.PLUGIN_V_TOGGLE_LABEL="PLUGIN_V_TOGGLE_LABEL",e.PRESENTED_BY="PRESENTED_BY",e.MORE="MORE",e.LESS="LESS",e.LEARN_MORE="LEARN_MORE",e.DEFURN_AI_WARNING="DEFURN_AI_WARNING",e.FEEDBACK="FEEDBACK",e.TERMS="TERMS",e.HELP="HELP",e.ALT_MATTERPORT_LOGO="ALT_MATTERPORT_LOGO",e.ALT_HOMES_LOGO="ALT_HOMES_LOGO",e.ALT_APARTMENTS_LOGO="ALT_APARTMENTS_LOGO",e.ALT_LOOPNET_LOGO="ALT_LOOPNET_LOGO",e.TERMS_FAIL="TERMS_FAIL",e.HELP_NAVIGATION_TAB="HELP_NAVIGATION_TAB",e.HELP_MORE_HELP_TAB="HELP_MORE_HELP_TAB",e.HELP_DESKTOP_360_2A="HELP_DESKTOP_360_2A",e.HELP_DESKTOP_360_2B="HELP_DESKTOP_360_2B",e.HELP_DESKTOP_DOLLHOUSE_1A="HELP_DESKTOP_DOLLHOUSE_1A",e.HELP_DESKTOP_DOLLHOUSE_1B="HELP_DESKTOP_DOLLHOUSE_1B",e.HELP_DESKTOP_DOLLHOUSE_2A="HELP_DESKTOP_DOLLHOUSE_2A",e.HELP_DESKTOP_DOLLHOUSE_3A="HELP_DESKTOP_DOLLHOUSE_3A",e.HELP_DESKTOP_FLOORPLAN_1A="HELP_DESKTOP_FLOORPLAN_1A",e.HELP_DESKTOP_FLOORPLAN_2A="HELP_DESKTOP_FLOORPLAN_2A",e.HELP_DESKTOP_FLOORPLAN_2B="HELP_DESKTOP_FLOORPLAN_2B",e.HELP_DESKTOP_FLOORPLAN_3A="HELP_DESKTOP_FLOORPLAN_3A",e.HELP_DESKTOP_FLOORPLAN_3B="HELP_DESKTOP_FLOORPLAN_3B",e.HELP_DESKTOP_MORE_360_B="HELP_DESKTOP_MORE_360_B",e.HELP_DESKTOP_MORE_DOLLHOUSE_B="HELP_DESKTOP_MORE_DOLLHOUSE_B",e.HELP_DESKTOP_MORE_FLOORS_B="HELP_DESKTOP_MORE_FLOORS_B",e.HELP_DESKTOP_MORE_FULLSCREEN_B="HELP_DESKTOP_MORE_FULLSCREEN_B",e.HELP_DESKTOP_MORE_HLR_B="HELP_DESKTOP_MORE_HLR_B",e.HELP_DESKTOP_MORE_INSIDE_B="HELP_DESKTOP_MORE_INSIDE_B",e.HELP_DESKTOP_MORE_MATTERTAG_B="HELP_DESKTOP_MORE_MATTERTAG_B",e.HELP_DESKTOP_MORE_TOUR_B="HELP_DESKTOP_MORE_TOUR_B",e.HELP_DESKTOP_MORE_VR_B="HELP_DESKTOP_MORE_VR_B",e.HELP_DESKTOP_MORE_ZOOM_B="HELP_DESKTOP_MORE_ZOOM_B",e.HELP_DESKTOP_PANORAMA_1A="HELP_DESKTOP_PANORAMA_1A",e.HELP_DESKTOP_PANORAMA_1B="HELP_DESKTOP_PANORAMA_1B",e.HELP_DESKTOP_PANORAMA_2A="HELP_DESKTOP_PANORAMA_2A",e.HELP_DESKTOP_PANORAMA_2B="HELP_DESKTOP_PANORAMA_2B",e.HELP_DESKTOP_PANORAMA_3A="HELP_DESKTOP_PANORAMA_3A",e.HELP_DESKTOP_PANORAMA_3B="HELP_DESKTOP_PANORAMA_3B",e.HELP_MOBILE_3="HELP_MOBILE_3",e.HELP_MOBILE_360_2="HELP_MOBILE_360_2",e.HELP_MOBILE_DOLLHOUSE_1="HELP_MOBILE_DOLLHOUSE_1",e.HELP_MOBILE_DOLLHOUSE_2="HELP_MOBILE_DOLLHOUSE_2",e.HELP_MOBILE_FLOORPLAN_1="HELP_MOBILE_FLOORPLAN_1",e.HELP_MOBILE_FLOORPLAN_2="HELP_MOBILE_FLOORPLAN_2",e.HELP_MOBILE_MORE_360_B="HELP_MOBILE_MORE_360_B",e.HELP_MOBILE_MORE_DOLLHOUSE_B="HELP_MOBILE_MORE_DOLLHOUSE_B",e.HELP_MOBILE_MORE_INSIDE_B="HELP_MOBILE_MORE_INSIDE_B",e.HELP_MOBILE_MORE_MATTERTAG_B="HELP_MOBILE_MORE_MATTERTAG_B",e.HELP_MOBILE_MORE_VR_B="HELP_MOBILE_MORE_VR_B",e.HELP_MOBILE_PANORAMA_1="HELP_MOBILE_PANORAMA_1",e.HELP_MOBILE_PANORAMA_2="HELP_MOBILE_PANORAMA_2",e.HELP_MORE_360_A="HELP_MORE_360_A",e.HELP_MORE_DOLLHOUSE_A="HELP_MORE_DOLLHOUSE_A",e.HELP_MORE_FLOORS_A="HELP_MORE_FLOORS_A",e.HELP_MORE_FLOORPLAN_A="HELP_MORE_FLOORPLAN_A",e.HELP_MORE_FULLSCREEN_A="HELP_MORE_FULLSCREEN_A",e.HELP_MORE_HLR_A="HELP_MORE_HLR_A",e.HELP_MORE_INSIDE_A="HELP_MORE_INSIDE_A",e.HELP_MORE_MATTERTAG_A="HELP_MORE_MATTERTAG_A",e.HELP_MORE_TOUR_A="HELP_MORE_TOUR_A",e.HELP_MORE_VR_A="HELP_MORE_VR_A",e.HELP_MORE_ZOOM_A="HELP_MORE_ZOOM_A",e.HELP_MORE_EXTRAS_A="HELP_MORE_EXTRAS_A",e.VR_ENTER="VR_ENTER",e.VR_LEARN_MORE_CAPS="VR_LEARN_MORE_CAPS",e.VR_QUEST="VR_QUEST",e.VR_META_LINK="VR_META_LINK",e.VR_RECOMMENDED="VR_RECOMMENDED",e.VR_SUPPORTS="VR_SUPPORTS",e.VR_VIEW_SPACE="VR_VIEW_SPACE",e.CTA_TOUR_COMPLETE="CTA_TOUR_COMPLETE",e.CTA_EXPLORE_SPACE="CTA_EXPLORE_SPACE",e.CTA_RESTART_TOUR="CTA_RESTART_TOUR",e.CTA_SHARE="CTA_SHARE",e.DESKTOP_SHORT_CTA="DESKTOP_SHORT_CTA",e.MOBILE_SHORT_CTA="MOBILE_SHORT_CTA",e.ROTATE="ROTATE",e.MOVE="MOVE",e.PLAY="PLAY",e.NEXT="NEXT",e.PREVIOUS="PREVIOUS",e.INSIDE="INSIDE",e.ZOOM="ZOOM",e.MEASUREMENT="MEASUREMENT",e.MEASUREMENT_START_ADDING="MEASUREMENT_START_ADDING",e.MEASUREMENT_CONTINUOUS_LINES="MEASUREMENT_CONTINUOUS_LINES",e.MEASUREMENT_SNAPPING="MEASUREMENT_SNAPPING",e.MEASUREMENT_UNITS="MEASUREMENT_UNITS",e.MEASUREMENT_IMPERIAL="MEASUREMENT_IMPERIAL",e.MEASUREMENT_METRIC="MEASUREMENT_METRIC",e.MEASUREMENT_SETTINGS="MEASUREMENT_SETTINGS",e.MEASUREMENT_HELP_CLICK_ANYWHERE="MEASUREMENT_HELP_CLICK_ANYWHERE",e.MEASUREMENT_HELP_ESCAPE="MEASUREMENT_HELP_ESCAPE",e.MEASUREMENT_HELP_PRESS_START="MEASUREMENT_HELP_PRESS_START",e.MEASUREMENT_HELP_DRAG_EDIT="MEASUREMENT_HELP_DRAG_EDIT",e.MEASUREMENT_HELP_PRESS_END="MEASUREMENT_HELP_PRESS_END",e.MEASUREMENT_MODE="MEASUREMENT_MODE",e.MEASUREMENT_HELP_MODAL_SUB_HEADER="MEASUREMENT_HELP_MODAL_SUB_HEADER",e.MEASUREMENT_HELP_MODAL_BODY_1="MEASUREMENT_HELP_MODAL_BODY_1",e.MEASUREMENT_HELP_MODAL_BODY_2="MEASUREMENT_HELP_MODAL_BODY_2",e.MEASUREMENT_NUDGE_TITLE="MEASUREMENT_NUDGE_TITLE",e.MEASUREMENT_NUDGE_MESSAGE="MEASUREMENT_NUDGE_MESSAGE",e.MEASUREMENT_ADD_LABEL="MEASUREMENT_ADD_LABEL",e.MEASUREMENT_CANCEL_LABEL="MEASUREMENT_CANCEL_LABEL",e.MEASUREMENT_SAVE_LABEL="MEASUREMENT_SAVE_LABEL",e.NOTES_MODE="NOTES_MODE",e.NOTES_NUDGE_TITLE="NOTES_NUDGE_TITLE",e.NOTES_NUDGE_MESSAGE="NOTES_NUDGE_MESSAGE",e.CLOSE="CLOSE",e.SHOW="SHOW",e.HIDE="HIDE",e.MORE_OPTIONS="MORE_OPTIONS",e.COPY="COPY",e.COPY_URL="COPY_URL",e.COPY_LINK="COPY_LINK",e.SHARE="SHARE",e.SHARE_COPIED="SHARE_COPIED",e.SHARE_CURRENT_LOCATION="SHARE_CURRENT_LOCATION",e.SHARE_DEFAULT_LOCATION="SHARE_DEFAULT_LOCATION",e.SHARE_ERROR_SWEEP_DISABLED="SHARE_ERROR_SWEEP_DISABLED",e.SHARE_EXPLORE="SHARE_EXPLORE",e.SHARE_LINK_TO_LOCATION="SHARE_LINK_TO_LOCATION",e.SHARE_AT="SHARE_AT",e.SHARE_WITH="SHARE_WITH",e.SHARE_3D="SHARE_3D",e.SHARE_MODAL_TITLE="SHARE_MODAL_TITLE",e.SHARE_MAIL="SHARE_MAIL",e.SHARE_FACEBOOK="SHARE_FACEBOOK",e.SHARE_TWITTER="SHARE_TWITTER",e.SHARE_LINKEDIN="SHARE_LINKEDIN",e.SHARE_PINTEREST="SHARE_PINTEREST",e.SHARED_TITLE="SHARED_TITLE",e.SHARED_MESSAGE="SHARED_MESSAGE",e.SHARED_MESSAGE_HASHTAG="SHARED_MESSAGE_HASHTAG",e.DOLLHOUSE_NUDGE_TITLE="DOLLHOUSE_NUDGE_TITLE",e.DOLLHOUSE_NUDGE_MESSAGE="DOLLHOUSE_NUDGE_MESSAGE",e.FLOOR_PLAN_NUDGE_MESSAGE="FLOOR_PLAN_NUDGE_MESSAGE"}(n||(n={})),function(e){let t,i,n,s,a,o,r,l,d,c,u,h,m,p,E,S;!function(e){e.NEW_MESSAGE="GENERIC.NEW_MESSAGE",e.READ_MORE="GENERIC.READ_MORE",e.SETTING_OFF="GENERIC.SETTING_OFF",e.SETTING_ON="GENERIC.SETTING_ON",e.UP_NEXT="GENERIC.UP_NEXT",e.CANCELING="GENERIC.CANCELING",e.ACCEPT="GENERIC.ACCEPT",e.DISCARD="GENERIC.DISCARD",e.GENERATING="GENERIC.GENERATING"}(t=e.GENERIC||(e.GENERIC={})),function(e){e.UNABLE_TO_SAVE_CHANGES_ERROR_MESSAGE="ERRORS.UNABLE_TO_SAVE_CHANGES_ERROR_MESSAGE",e.UNAUTHORIZED_ERROR_MESSAGE="ERRORS.UNAUTHORIZED_ERROR_MESSAGE"}(i=e.ERRORS||(e.ERRORS={})),function(e){e.COLLAPSE="ACCORDIONS.COLLAPSE",e.EXPAND="ACCORDIONS.EXPAND"}(n=e.ACCORDIONS||(e.ACCORDIONS={})),function(e){e.INVITED_MESSAGE="LOGIN.INVITED_MESSAGE",e.CREATE_ACCOUNT="LOGIN.CREATE_ACCOUNT",e.HAVE_ACCOUNT="LOGIN.HAVE_ACCOUNT",e.SIGN_IN="LOGIN.SIGN_IN"}(s=e.LOGIN||(e.LOGIN={})),function(e){e.COLLAPSE_PANEL="PANELS.COLLAPSE_PANEL",e.EXPAND_PANEL="PANELS.EXPAND_PANEL"}(a=e.PANELS||(e.PANELS={})),function(e){e.CLOSE_BUTTON_TOOLTIP_MESSAGE="REUSABLES.CLOSE_BUTTON_TOOLTIP_MESSAGE",e.HELP_BUTTON_TOOLTIP_MESSAGE="REUSABLES.HELP_BUTTON_TOOLTIP_MESSAGE",e.EMOJI_ALT_DISAPPOINTED="REUSABLES.EMOJI_ALT_DISAPPOINTED",e.EMOJI_ALT_UNSATISFIED="REUSABLES.EMOJI_ALT_UNSATISFIED",e.EMOJI_ALT_NEUTRAL="REUSABLES.EMOJI_ALT_NEUTRAL",e.EMOJI_ALT_SATISFIED="REUSABLES.EMOJI_ALT_SATISFIED",e.EMOJI_ALT_HAPPY="REUSABLES.EMOJI_ALT_HAPPY",e.FEEDBACK_LINK_LABEL="REUSABLES.FEEDBACK_LINK_LABEL",e.BETA_FEEDBACK_LINK_LABEL="REUSABLES.BETA_FEEDBACK_LINK_LABEL"}(o=e.REUSABLES||(e.REUSABLES={})),function(e){e.SCROLL_BUTTON_LABEL="SCROLLING.SCROLL_BUTTON_LABEL"}(r=e.SCROLLING||(e.SCROLLING={})),function(e){e.PINK="COLORS.PINK",e.PLUM="COLORS.PLUM",e.PURPLE="COLORS.PURPLE",e.COBALT="COLORS.COBALT",e.CERULEAN="COLORS.CERULEAN",e.TEAL="COLORS.TEAL",e.FOG="COLORS.FOG",e.IRON="COLORS.IRON",e.FOREST="COLORS.FOREST",e.EMERALD="COLORS.EMERALD",e.MINT="COLORS.MINT",e.OCEAN="COLORS.OCEAN",e.LIME="COLORS.LIME",e.CANARY="COLORS.CANARY",e.SUNFLOWER="COLORS.SUNFLOWER",e.TANGERINE="COLORS.TANGERINE",e.SUNSET="COLORS.SUNSET",e.SIERRA="COLORS.SIERRA",e.MAGENTA="COLORS.MAGENTA"}(l=e.COLORS||(e.COLORS={})),function(e){e.GENERIC_HELPTEXT="OOPS.GENERIC.HELPTEXT",e.GENERIC_TITLE="OOPS.GENERIC.TITLE",e.MODEL_ARCHIVED_TITLE="OOPS.MODEL_ARCHIVED.TITLE",e.MODEL_ARCHIVED_HELPTEXT="OOPS.MODEL_ARCHIVED.HELPTEXT",e.MODEL_COMPLIANCE_TITLE="OOPS.MODEL_COMPLIANCE.TITLE",e.MODEL_COMPLIANCE_HELPTEXT="OOPS.MODEL_COMPLIANCE.HELPTEXT",e.MODEL_DELETED_TITLE="OOPS.MODEL_DELETED.TITLE",e.MODEL_FAILED_TITLE="OOPS.MODEL_FAILED.TITLE",e.MODEL_FAILED_HELPTEXT="OOPS.MODEL_FAILED.HELPTEXT",e.MODEL_PENDING_TITLE="OOPS.MODEL_PENDING.TITLE",e.MODEL_PENDING_HELPTEXT="OOPS.MODEL_PENDING.HELPTEXT",e.MODEL_PROCESSING_TITLE="OOPS.MODEL_PROCESSING.TITLE",e.MODEL_PROCESSING_HELPTEXT="OOPS.MODEL_PROCESSING.HELPTEXT",e.SIGNED_IN_AS="OOPS.SIGNED_IN_AS",e.WEBGL_CONTEXT_LOST_HELPTEXT="OOPS.WEBGL_CONTEXT_LOST.HELPTEXT",e.WEBGL_CONTEXT_LOST_TITLE="OOPS.WEBGL_CONTEXT_LOST.TITLE",e.WEBGL_GENERIC_HELPTEXT="OOPS.WEBGL_GENERIC.HELPTEXT",e.WEBGL_GENERIC_TITLE="OOPS.WEBGL_GENERIC.TITLE",e.WEBGL_UNSUPPORTED_HELPTEXT="OOPS.WEBGL_UNSUPPORTED.HELPTEXT",e.WEBGL_UNSUPPORTED_TITLE="OOPS.WEBGL_UNSUPPORTED.TITLE"}(d=e.OOPS||(e.OOPS={})),function(e){e.AWAITING="SDK.AWAITING"}(c=e.SDK||(e.SDK={})),function(e){let t,i,n,s,a,o,r,l,d,c,u,h,m,p,E,S,O,g;!function(e){e.UPLOAD_TOOLTIP="SHOWCASE.ANNOTATIONS.UPLOAD_TOOLTIP",e.EMBED_TOOLTIP="SHOWCASE.ANNOTATIONS.EMBED_TOOLTIP",e.MAX_ATTACHMENTS_TOOLTIP="SHOWCASE.ANNOTATIONS.MAX_ATTACHMENTS_TOOLTIP",e.LINK_TOOLTIP="SHOWCASE.ANNOTATIONS.LINK_TOOLTIP",e.ADD_CTA="SHOWCASE.ANNOTATIONS.ADD_CTA",e.SAVE_CTA="SHOWCASE.ANNOTATIONS.SAVE_CTA",e.CANCEL_CTA="SHOWCASE.ANNOTATIONS.CANCEL_CTA",e.CONTENT_DELETED="SHOWCASE.ANNOTATIONS.CONTENT_DELETED",e.READ_MORE_MESSAGE="SHOWCASE.ANNOTATIONS.READ_MORE_MESSAGE"}(t=e.ANNOTATIONS||(e.ANNOTATIONS={})),function(e){e.ERROR_UPLOAD_FAIL="SHOWCASE.ATTACHMENTS.ERROR_UPLOAD_FAIL",e.ERROR_FILE_TOO_LARGE="SHOWCASE.ATTACHMENTS.ERROR_FILE_TOO_LARGE",e.ERROR_EMPTY_FILE="SHOWCASE.ATTACHMENTS.ERROR_EMPTY_FILE",e.ERROR_OVER_QUOTA="SHOWCASE.ATTACHMENTS.ERROR_OVER_QUOTA",e.ERROR_PERMISSION_DENIED="SHOWCASE.ATTACHMENTS.ERROR_PERMISSION_DENIED",e.REMOVE_TOOLTIP="SHOWCASE.ATTACHMENTS.REMOVE_TOOLTIP",e.CLOSE_TOOLTIP="SHOWCASE.ATTACHMENTS.CLOSE_TOOLTIP",e.DELETE_ATTACHMENT_TOOLTIP="SHOWCASE.ATTACHMENTS.DELETE_ATTACHMENT_TOOLTIP",e.DOWNLOAD_TOOLTIP="SHOWCASE.ATTACHMENTS.DOWNLOAD_TOOLTIP",e.EXPAND_ATTACHMENT_TOOLTIP="SHOWCASE.ATTACHMENTS.EXPAND_ATTACHMENT_TOOLTIP",e.VIEWER_INDEX_COUNT="SHOWCASE.ATTACHMENTS.VIEWER_INDEX_COUNT",e.FAILED_TO_LOAD_MESSAGE="SHOWCASE.ATTACHMENTS.FAILED_TO_LOAD_MESSAGE",e.MORE_ATTACHMENT="SHOWCASE.ATTACHMENTS.MORE_ATTACHMENT",e.ERROR_200_MESSAGE="SHOWCASE.ATTACHMENTS.ERROR_200_MESSAGE",e.ERROR_401_MESSAGE="SHOWCASE.ATTACHMENTS.ERROR_401_MESSAGE",e.ERROR_403_MESSAGE="SHOWCASE.ATTACHMENTS.ERROR_403_MESSAGE",e.ERROR_404_MESSAGE="SHOWCASE.ATTACHMENTS.ERROR_404_MESSAGE",e.ERROR_429_MESSAGE="SHOWCASE.ATTACHMENTS.ERROR_429_MESSAGE",e.ERROR_4XX_MESSAGE="SHOWCASE.ATTACHMENTS.ERROR_4XX_MESSAGE",e.ERROR_5XX_MESSAGE="SHOWCASE.ATTACHMENTS.ERROR_5XX_MESSAGE"}(i=e.ATTACHMENTS||(e.ATTACHMENTS={})),function(e){e.TITLE="SHOWCASE.DEFURNISH_AI_MODAL.TITLE",e.TEXT1="SHOWCASE.DEFURNISH_AI_MODAL.TEXT1",e.TEXT2="SHOWCASE.DEFURNISH_AI_MODAL.TEXT2"}(n=e.DEFURNISH_AI_MODAL||(e.DEFURNISH_AI_MODAL={})),function(e){let t,i;!function(e){e.OR="SHOWCASE.DOLLHOUSE.ROTATE_PROMPT.OR",e.DESKTOP="SHOWCASE.DOLLHOUSE.ROTATE_PROMPT.DESKTOP"}(t=e.ROTATE_PROMPT||(e.ROTATE_PROMPT={})),function(e){e.DESKTOP="SHOWCASE.DOLLHOUSE.INSIDE_PROMPT.DESKTOP",e.TOUCH="SHOWCASE.DOLLHOUSE.INSIDE_PROMPT.TOUCH"}(i=e.INSIDE_PROMPT||(e.INSIDE_PROMPT={}))}(s=e.DOLLHOUSE||(e.DOLLHOUSE={})),function(e){e.DEFAULT_NAME="SHOWCASE.FLOORS.DEFAULT_NAME"}(a=e.FLOORS||(e.FLOORS={})),function(e){e.ALT_GESTURE_DRAG="SHOWCASE.HELP.ALT_GESTURE_DRAG",e.ALT_GESTURE_DRAGTWOFINGER="SHOWCASE.HELP.ALT_GESTURE_DRAGTWOFINGER",e.ALT_GESTURE_DRAGTWOFINGER_VERT="SHOWCASE.HELP.ALT_GESTURE_DRAGTWOFINGER_VERT",e.ALT_GESTURE_POSITION="SHOWCASE.HELP.ALT_GESTURE_POSITION",e.ALT_GESTURE_PINCH="SHOWCASE.HELP.ALT_GESTURE_PINCH",e.ALT_GESTURE_TOUCH_ROTATE="SHOWCASE.HELP.ALT_GESTURE_TOUCH_ROTATE",e.ALT_GESTURE_PLAY="SHOWCASE.HELP.ALT_GESTURE_PLAY",e.ALT_GESTURE_POSITIONTWOFINGER="SHOWCASE.HELP.ALT_GESTURE_POSITIONTWOFINGER",e.ALT_GESTURE_TAP="SHOWCASE.HELP.ALT_GESTURE_TAP",e.ALT_GESTURE_TAPINSIDE="SHOWCASE.HELP.ALT_GESTURE_TAPINSIDE",e.ALT_KEYBOARD_ALL="SHOWCASE.HELP.ALT_KEYBOARD_ALL",e.ALT_KEYBOARD_INSIDE="SHOWCASE.HELP.ALT_KEYBOARD_INSIDE",e.ALT_KEYBOARD_LEFTRIGHT="SHOWCASE.HELP.ALT_KEYBOARD_LEFTRIGHT",e.ALT_KEYBOARD_UPDOWN="SHOWCASE.HELP.ALT_KEYBOARD_UPDOWN",e.ALT_KEYBOARD_ZOOM="SHOWCASE.HELP.ALT_KEYBOARD_ZOOM",e.ALT_MOUSE_CLICK="SHOWCASE.HELP.ALT_MOUSE_CLICK",e.ALT_MOUSE_CLICKINSIDE="SHOWCASE.HELP.ALT_MOUSE_CLICKINSIDE",e.ALT_MOUSE_DRAGLEFT="SHOWCASE.HELP.ALT_MOUSE_DRAGLEFT",e.ALT_MOUSE_DRAGRIGHT="SHOWCASE.HELP.ALT_MOUSE_DRAGRIGHT",e.ALT_MOUSE_DRAGRIGHT_HORIZ="SHOWCASE.HELP.ALT_MOUSE_DRAGRIGHT_HORIZ",e.ALT_MOUSE_DRAGRIGHT_VERT="SHOWCASE.HELP.ALT_MOUSE_DRAGRIGHT_VERT",e.ALT_MOUSE_PLAY="SHOWCASE.HELP.ALT_MOUSE_PLAY",e.ALT_MOUSE_POSITIONLEFT="SHOWCASE.HELP.ALT_MOUSE_POSITIONLEFT",e.ALT_MOUSE_POSITIONRIGHT="SHOWCASE.HELP.ALT_MOUSE_POSITIONRIGHT",e.ALT_MOUSE_ZOOM="SHOWCASE.HELP.ALT_MOUSE_ZOOM",e.NAV_DOLLHOUSE_TITLE="SHOWCASE.HELP.NAV_DOLLHOUSE_TITLE",e.NAV_FLOORPLAN_TITLE="SHOWCASE.HELP.NAV_FLOORPLAN_TITLE",e.NAV_INSIDE_TITLE="SHOWCASE.HELP.NAV_INSIDE_TITLE",e.DESKTOP_DOLLHOUSE_PAN_HEADER="SHOWCASE.HELP.DESKTOP_DOLLHOUSE_PAN_HEADER",e.DESKTOP_DOLLHOUSE_PAN="SHOWCASE.HELP.DESKTOP_DOLLHOUSE_PAN",e.DESKTOP_DOLLHOUSE_ROTATE_HEADER="SHOWCASE.HELP.DESKTOP_DOLLHOUSE_ROTATE_HEADER",e.DESKTOP_DOLLHOUSE_ROTATE="SHOWCASE.HELP.DESKTOP_DOLLHOUSE_ROTATE",e.DESKTOP_DOLLHOUSE_ZOOM_HEADER="SHOWCASE.HELP.DESKTOP_DOLLHOUSE_ZOOM_HEADER",e.DESKTOP_DOLLHOUSE_ZOOM="SHOWCASE.HELP.DESKTOP_DOLLHOUSE_ZOOM",e.DESKTOP_DOLLHOUSE_2D3D_HEADER="SHOWCASE.HELP.DESKTOP_DOLLHOUSE_2D3D_HEADER",e.DESKTOP_DOLLHOUSE_2D3D="SHOWCASE.HELP.DESKTOP_DOLLHOUSE_2D3D",e.DESKTOP_INSIDE_LOOK_HEADER="SHOWCASE.HELP.DESKTOP_INSIDE_LOOK_HEADER",e.DESKTOP_INSIDE_LOOK="SHOWCASE.HELP.DESKTOP_INSIDE_LOOK",e.DESKTOP_INSIDE_MOVE_HEADER="SHOWCASE.HELP.DESKTOP_INSIDE_MOVE_HEADER",e.DESKTOP_INSIDE_MOVE="SHOWCASE.HELP.DESKTOP_INSIDE_MOVE",e.DESKTOP_INSIDE_ZOOM_HEADER="SHOWCASE.HELP.DESKTOP_INSIDE_ZOOM_HEADER",e.DESKTOP_INSIDE_ZOOM="SHOWCASE.HELP.DESKTOP_INSIDE_ZOOM",e.TOUCH_DOLLHOUSE_PAN="SHOWCASE.HELP.TOUCH_DOLLHOUSE_PAN",e.TOUCH_DOLLHOUSE_ROTATE="SHOWCASE.HELP.TOUCH_DOLLHOUSE_ROTATE",e.TOUCH_DOLLHOUSE_ZOOM="SHOWCASE.HELP.TOUCH_DOLLHOUSE_ZOOM",e.TOUCH_DOLLHOUSE_2D3D="SHOWCASE.HELP.TOUCH_DOLLHOUSE_2D3D",e.TOUCH_INSIDE_LOOK="SHOWCASE.HELP.TOUCH_INSIDE_LOOK",e.TOUCH_INSIDE_MOVE="SHOWCASE.HELP.TOUCH_INSIDE_MOVE",e.TOUCH_INSIDE_ZOOM="SHOWCASE.HELP.TOUCH_INSIDE_ZOOM"}(o=e.HELP||(e.HELP={})),function(e){e.EMPTY_REEL_TITLE="SHOWCASE.HLR.EMPTY_REEL_TITLE",e.EMPTY_REEL_MESSAGE="SHOWCASE.HLR.EMPTY_REEL_MESSAGE",e.EMPTY_REEL_LEARN_MORE="SHOWCASE.HLR.EMPTY_REEL_LEARN_MORE"}(r=e.HLR||(e.HLR={})),function(e){e.SEARCH_GROUP_HEADER="SHOWCASE.LABELS.SEARCH_GROUP_HEADER"}(l=e.LABELS||(e.LABELS={})),function(e){e.TOGGLE_LAYERS="SHOWCASE.LAYERS.TOGGLE_LAYERS"}(d=e.LAYERS||(e.LAYERS={})),function(e){e.SEARCH_GROUP_HEADER="SHOWCASE.MEASUREMENTS.SEARCH_GROUP_HEADER"}(c=e.MEASUREMENTS||(e.MEASUREMENTS={})),function(e){e.TODAY="SHOWCASE.NOTES.TODAY",e.YESTERDAY="SHOWCASE.NOTES.YESTERDAY",e.THIS_WEEK="SHOWCASE.NOTES.THIS_WEEK",e.ONE_WEEK_AGO="SHOWCASE.NOTES.ONE_WEEK_AGO",e.TWO_WEEKS_AGO="SHOWCASE.NOTES.TWO_WEEKS_AGO",e.THREE_WEEKS_AGO="SHOWCASE.NOTES.THREE_WEEKS_AGO",e.OLDER="SHOWCASE.NOTES.OLDER",e.NO_MATCHES="SHOWCASE.NOTES.NO_MATCHES",e.HAVE_NONE="SHOWCASE.NOTES.HAVE_NONE",e.HAVE_NONE_OPEN="SHOWCASE.NOTES.HAVE_NONE_OPEN",e.HAVE_NONE_RESOLVED="SHOWCASE.NOTES.HAVE_NONE_RESOLVED",e.CONTENT_DELETED="SHOWCASE.NOTES.CONTENT_DELETED",e.RESULTS="SHOWCASE.NOTES.RESULTS",e.NUM_ATTACHMENTS="SHOWCASE.NOTES.ATTACHMENTS",e.COMMENTS="SHOWCASE.NOTES.COMMENTS",e.NOTES="SHOWCASE.NOTES.NOTES",e.REPLIES="SHOWCASE.NOTES.REPLIES",e.FILTER="SHOWCASE.NOTES.FILTER",e.FILTER_RESOLVED="SHOWCASE.NOTES.FILTER_RESOLVED",e.FILTER_UNRESOLVED="SHOWCASE.NOTES.FILTER_UNRESOLVED",e.FILTER_ALL="SHOWCASE.NOTES.FILTER_ALL",e.FILTER_BY="SHOWCASE.NOTES.FILTER_BY",e.CANCEL="SHOWCASE.NOTES.CANCEL",e.DELETE="SHOWCASE.NOTES.DELETE",e.EDIT="SHOWCASE.NOTES.EDIT",e.ADD_NOTE_MESSAGE="SHOWCASE.NOTES.ADD_NOTE_MESSAGE",e.MARK_AS_RESOLVED="SHOWCASE.NOTES.MARK_AS_RESOLVED",e.UNRESOLVE="SHOWCASE.NOTES.UNRESOLVE",e.FEEDBACK="SHOWCASE.NOTES.FEEDBACK",e.NAV_BACK="SHOWCASE.NOTES.NAV_BACK",e.NAV_CLOSE="SHOWCASE.NOTES.NAV_CLOSE",e.REPLY_PLACEHOLDER="SHOWCASE.NOTES.REPLY_PLACEHOLDER",e.EDIT_LIST_ITEM_OPTION_CTA="SHOWCASE.NOTES.EDIT_LIST_ITEM_OPTION_CTA",e.DELETE_LIST_ITEM_OPTION_CTA="SHOWCASE.NOTES.DELETE_LIST_ITEM_OPTION_CTA",e.MISSING_MESSAGE="SHOWCASE.NOTES.MISSING_MESSAGE",e.ADD_CTA_TOOLTIP="SHOWCASE.NOTES.ADD_CTA_TOOLTIP",e.ADD_TOOLTIP="SHOWCASE.NOTES.ADD_TOOLTIP",e.CANCEL_TOOLTIP="SHOWCASE.NOTES.CANCEL_TOOLTIP",e.COLOR_STEM_TOOLTIP="SHOWCASE.NOTES.COLOR_STEM_TOOLTIP",e.DELETE_TOOLTIP="SHOWCASE.NOTES.DELETE_TOOLTIP",e.OVERLAY_ADD_TOUCH="SHOWCASE.NOTES.OVERLAY_ADD_TOUCH",e.OVERLAY_ADD_CLICK="SHOWCASE.NOTES.OVERLAY_ADD_CLICK",e.OVERLAY_PLACE_TOUCH="SHOWCASE.NOTES.OVERLAY_PLACE_TOUCH",e.OVERLAY_PLACE_CLICK="SHOWCASE.NOTES.OVERLAY_PLACE_CLICK",e.SEARCH_GROUP_HEADER="SHOWCASE.NOTES.SEARCH_GROUP_HEADER",e.SEARCH_GROUP_HEADER_NOTES="SHOWCASE.NOTES.SEARCH_GROUP_HEADER_NOTES",e.SELECTED_NOTES="SHOWCASE.NOTES.SELECTED_NOTES",e.SELECTED_COMMENTS="SHOWCASE.NOTES.SELECTED_COMMENTS"}(u=e.NOTES||(e.NOTES={})),function(e){e.BACK="SHOWCASE.ROOMS.BACK",e.CLOSE="SHOWCASE.ROOMS.CLOSE",e.DEFAULT_NAME="SHOWCASE.ROOMS.DEFAULT_NAME",e.DEFAULT_ROOM="SHOWCASE.ROOMS.DEFAULT_ROOM",e.DOORWAY_TYPE="SHOWCASE.ROOMS.DOORWAY_TYPE",e.DOORWAY_TYPE_DOOR="SHOWCASE.ROOMS.DOORWAY_TYPE_DOOR",e.DOORWAY_TYPE_OPENING="SHOWCASE.ROOMS.DOORWAY_TYPE_OPENING",e.DOORWAY_TYPE_WINDOW="SHOWCASE.ROOMS.DOORWAY_TYPE_WINDOW",e.DOORWAY_INFORMATION="SHOWCASE.ROOMS.DOORWAY_INFORMATION",e.LIST_PANEL_TITLE="SHOWCASE.ROOMS.LIST_PANEL_TITLE",e.LIST_PANEL_EDIT="SHOWCASE.ROOMS.LIST_PANEL_EDIT",e.QUANTITY_IN_UNITS="SHOWCASE.ROOMS.QUANTITY_IN_UNITS",e.ROOM_AREA="SHOWCASE.ROOMS.ROOM_AREA",e.ROOM_BOUNDS_TOGGLES_TITLE="SHOWCASE.ROOMS.ROOM_BOUNDS_TOGGLES_TITLE",e.ROOM_BOUNDS_WALL_TOGGLE_LABEL="SHOWCASE.ROOMS.ROOM_BOUNDS_WALL_TOGGLE_LABEL",e.ROOM_BOUNDS_ROOM_TOGGLE_LABEL="SHOWCASE.ROOMS.ROOM_BOUNDS_ROOM_TOGGLE_LABEL",e.ROOM_BOUNDS_DIMENSION_TOGGLE_LABEL="SHOWCASE.ROOMS.ROOM_BOUNDS_DIMENSION_TOGGLE_LABEL",e.ROOM_BOUNDS_MODEL_TOGGLE_LABEL="SHOWCASE.ROOMS.ROOM_BOUNDS_MODEL_TOGGLE_LABEL",e.ROOM_DIMENSIONS="SHOWCASE.ROOMS.ROOM_DIMENSIONS",e.ROOM_HEIGHT="SHOWCASE.ROOMS.ROOM_HEIGHT",e.ROOM_WIDTH="SHOWCASE.ROOMS.ROOM_WIDTH",e.ROOM_INFORMATION="SHOWCASE.ROOMS.ROOM_INFORMATION",e.ROOM_PERIMETER="SHOWCASE.ROOMS.ROOM_PERIMETER",e.ROOM_TYPE="SHOWCASE.ROOMS.ROOM_TYPE",e.SEARCH_GROUP_HEADER="SHOWCASE.ROOMS.SEARCH_GROUP_HEADER",e.SETTINGS="SHOWCASE.ROOMS.SETTINGS",e.WALL_THICKNESS="SHOWCASE.ROOMS.WALL_THICKNESS",e.WALL_TYPE="SHOWCASE.ROOMS.WALL_TYPE",e.WALL_TYPE_SOLID="SHOWCASE.ROOMS.WALL_TYPE_SOLID",e.WALL_TYPE_DIVIDER="SHOWCASE.ROOMS.WALL_TYPE_DIVIDER"}(h=e.ROOMS||(e.ROOMS={})),function(e){e.CLOSE_TAG_LABEL="SHOWCASE.TAGS.CLOSE_TAG_LABEL",e.DOCK_TAG_LABEL="SHOWCASE.TAGS.DOCK_TAG_LABEL",e.EDIT_TAG_LABEL="SHOWCASE.TAGS.EDIT_TAG_LABEL",e.MISSING_MESSAGE="SHOWCASE.TAGS.MISSING_MESSAGE",e.SEARCH_GROUP_HEADER="SHOWCASE.TAGS.SEARCH_GROUP_HEADER",e.SHARE_TAG_LABEL="SHOWCASE.TAGS.SHARE_TAG_LABEL",e.UNDOCK_TAG_LABEL="SHOWCASE.TAGS.UNDOCK_TAG_LABEL",e.NAV_BACK_LABEL="SHOWCASE.TAGS.NAV_BACK_LABEL",e.OVERLAY_ADD_TOUCH="SHOWCASE.TAGS.OVERLAY_ADD_TOUCH",e.OVERLAY_ADD_CLICK="SHOWCASE.TAGS.OVERLAY_ADD_CLICK",e.OVERLAY_PLACE_TOUCH="SHOWCASE.TAGS.OVERLAY_PLACE_TOUCH",e.OVERLAY_PLACE_CLICK="SHOWCASE.TAGS.OVERLAY_PLACE_CLICK"}(m=e.TAGS||(e.TAGS={})),function(e){e.QUERY_PLACEHOLDER="SHOWCASE.SEARCH.QUERY_PLACEHOLDER",e.SEARCH_IN_TOOL_PLACEHOLDER="SHOWCASE.SEARCH.SEARCH_IN_TOOL_PLACEHOLDER",e.CLEAR_SEARCH="SHOWCASE.SEARCH.CLEAR_SEARCH",e.FILTER_SEARCH="SHOWCASE.SEARCH.FILTER_SEARCH",e.FILTER_SEARCH_LABEL="SHOWCASE.SEARCH.FILTER_SEARCH_LABEL",e.FILTER_SEARCH_ALL="SHOWCASE.SEARCH.FILTER_SEARCH_ALL",e.FILTER_SEARCH_REMOVE="SHOWCASE.SEARCH.FILTER_SEARCH_REMOVE",e.FILTER_SEARCH_SELECTED="SHOWCASE.SEARCH.FILTER_SEARCH_SELECTED",e.GROUP_DATE="SHOWCASE.SEARCH.GROUP_DATE",e.GROUP_DATE_SELECTED="SHOWCASE.SEARCH.GROUP_DATE_SELECTED",e.GROUP_FLOOR="SHOWCASE.SEARCH.GROUP_FLOOR",e.GROUP_FLOOR_SELECTED="SHOWCASE.SEARCH.GROUP_FLOOR_SELECTED",e.GROUP_LAYER="SHOWCASE.SEARCH.GROUP_LAYER",e.GROUP_LAYER_SELECTED="SHOWCASE.SEARCH.GROUP_LAYER_SELECTED",e.GROUP_ROOM="SHOWCASE.SEARCH.GROUP_ROOM",e.GROUP_ROOM_SELECTED="SHOWCASE.SEARCH.GROUP_ROOM_SELECTED",e.GROUP_TYPE="SHOWCASE.SEARCH.GROUP_TYPE",e.GROUP_TYPE_SELECTED="SHOWCASE.SEARCH.GROUP_TYPE_SELECTED",e.ITEMS="SHOWCASE.SEARCH.ITEMS",e.EMPTY_LIST_MESSAGE="SHOWCASE.SEARCH.EMPTY_LIST_MESSAGE",e.VALIDATION_MESSAGE="SHOWCASE.SEARCH.VALIDATION_MESSAGE"}(p=e.SEARCH||(e.SEARCH={})),function(e){e.BANNER_CTA_LINK_TEXT="SHOWCASE.SUBSCRIBER_PROMPT.BANNER_CTA_LINK_TEXT",e.POPUP_CTA_HEADING="SHOWCASE.SUBSCRIBER_PROMPT.POPUP_CTA_HEADING",e.POPUP_CTA_LINK_TEXT="SHOWCASE.SUBSCRIBER_PROMPT.POPUP_CTA_LINK_TEXT"}(E=e.SUBSCRIBER_PROMPT||(e.SUBSCRIBER_PROMPT={})),function(e){e.HEADING="SHOWCASE.SUMMARY.HEADING",e.LABEL_ADDRESS="SHOWCASE.SUMMARY.LABEL_ADDRESS",e.LABEL_CONTACT="SHOWCASE.SUMMARY.LABEL_CONTACT",e.LABEL_DESCRIPTION="SHOWCASE.SUMMARY.LABEL_DESCRIPTION",e.LABEL_INFORMATION="SHOWCASE.SUMMARY.LABEL_INFORMATION",e.LABEL_LOCATION="SHOWCASE.SUMMARY.LABEL_LOCATION",e.LABEL_LEARN_MORE="SHOWCASE.SUMMARY.LABEL_LEARN_MORE"}(S=e.SUMMARY||(e.SUMMARY={})),function(e){e.TOUR_BUTTON_LABEL="SHOWCASE.TOURS.TOUR_BUTTON_LABEL",e.TOUR_CONTROLS_TITLE="SHOWCASE.TOURS.TOUR_CONTROLS_TITLE",e.TOUR_CONTROLS_CTA="SHOWCASE.TOURS.TOUR_CONTROLS_CTA"}(O=e.TOURS||(e.TOURS={})),function(e){e.VIEW_SELECTOR_START_LOCATION_TOOLTIP="SHOWCASE.VIEWS.VIEW_SELECTOR_START_LOCATION_TOOLTIP"}(g=e.VIEWS||(e.VIEWS={}))}(u=e.SHOWCASE||(e.SHOWCASE={})),function(e){e.AD_DEFURNISH="TOOLS.AD_DEFURNISH",e.AD_DEFURNISH_HELP_MESSAGE="TOOLS.AD_DEFURNISH_HELP_MESSAGE",e.BLUR="TOOLS.BLUR",e.BLUR_HELP_MESSAGE="TOOLS.BLUR_HELP_MESSAGE",e.HLR="TOOLS.HLR",e.HLR_HELP_MESSAGE="TOOLS.HLR_HELP_MESSAGE",e.LABELS="TOOLS.LABELS",e.LABELS_HELP_MESSAGE="TOOLS.LABELS_HELP_MESSAGE",e.LAYERS="TOOLS.LAYERS",e.LAYERS_HELP_MESSAGE="TOOLS.LAYERS_HELP_MESSAGE",e.MATTERTAGS="TOOLS.MATTERTAGS",e.MATTERTAGS_HELP_MESSAGE="TOOLS.MATTERTAGS_HELP_MESSAGE",e.MEASUREMENTS="TOOLS.MEASUREMENTS",e.MEASUREMENTS_SETTINGS="TOOLS.MEASUREMENTS_SETTINGS",e.MEASUREMENTS_HELP_MESSAGE="TOOLS.MEASUREMENTS_HELP_MESSAGE",e.MESH_TRIM="TOOLS.MESH_TRIM",e.MESH_TRIM_HELP_MESSAGE="TOOLS.MESH_TRIM_HELP_MESSAGE",e.NOTES="TOOLS.NOTES",e.NOTES_HELP_MESSAGE="TOOLS.NOTES_HELP_MESSAGE",e.PHOTOS="TOOLS.PHOTOS",e.PHOTOS_HELP_MESSAGE="TOOLS.PHOTOS_HELP_MESSAGE",e.PLUGIN_CONFIG="TOOLS.PLUGIN_CONFIG",e.PLUGIN_CONFIG_HELP_MESSAGE="TOOLS.PLUGIN_CONFIG_HELP_MESSAGE",e.PLUGIN_CONFIG_MISSING="TOOLS.PLUGIN_CONFIG_MISSING",e.ROOMPLAN="TOOLS.ROOMPLAN",e.ROOMPLAN_HELP_MESSAGE="TOOLS.ROOMPLAN_HELP_MESSAGE",e.SCANS_3D="TOOLS.SCANS_3D",e.SCANS_3D_HELP_MESSAGE="TOOLS.SCANS_3D_HELP_MESSAGE",e.SETTINGS_PANEL="TOOLS.SETTINGS_PANEL",e.START_LOCATION="TOOLS.START_LOCATION",e.START_LOCATION_HELP_MESSAGE="TOOLS.START_LOCATION_HELP_MESSAGE",e.SUMMARY="TOOLS.SUMMARY",e.TAGS="TOOLS.TAGS",e.TAGS_HELP_MESSAGE="TOOLS.TAGS_HELP_MESSAGE",e.TOURS="TOOLS.TOURS",e.TOURS_HELP_MESSAGE="TOOLS.TOURS_HELP_MESSAGE",e.VIEW_360="TOOLS.VIEW_360",e.VIEW_360_HELP_MESSAGE="TOOLS.VIEW_360_HELP_MESSAGE",e.VR_PATH="TOOLS.VR_PATH",e.VR_PATH_HELP_MESSAGE="TOOLS.VR_PATH_HELP_MESSAGE",e.SEARCH="TOOLS.SEARCH",e.UNSAVED_CHANGES_TITLE="TOOLS.UNSAVED_CHANGES_TITLE",e.UNSAVED_CHANGES_MESSAGE="TOOLS.UNSAVED_CHANGES_MESSAGE",e.UNSAVED_CHANGES_CONFIRM="TOOLS.UNSAVED_CHANGES_CONFIRM",e.UNSAVED_CHANGES_CANCEL="TOOLS.UNSAVED_CHANGES_CANCEL"}(h=e.TOOLS||(e.TOOLS={})),function(e){e.INVITE_USER="USERS.INVITE_USER",e.INVITE_USER_FAILED="USERS.INVITE_USER_FAILED",e.INVITE_BUTTON="USERS.INVITE_BUTTON",e.INVITE_USERS="USERS.INVITE_USERS",e.INVITE_USERS_FAILED="USERS.INVITE_USERS_FAILED",e.INVITE_VISIBLE_MSG="USERS.INVITE_VISIBLE_MSG",e.UNKNOWN_USER="USERS.UNKNOWN_USER",e.UNKNOWN_USERS="USERS.UNKNOWN_USERS"}(m=e.USERS||(e.USERS={})),function(e){e.FEET_SYMBOL="UNITS_DISPLAY.FEET_SYMBOL",e.INCHES_SYMBOL="UNITS_DISPLAY.INCHES_SYMBOL",e.HALF_SPACE="UNITS_DISPLAY.HALF_SPACE",e.FEET="UNITS_DISPLAY.FEET",e.INCHES="UNITS_DISPLAY.INCHES",e.METERS="UNITS_DISPLAY.METERS",e.SQUARE_FEET="UNITS_DISPLAY.SQUARE_FEET",e.SQUARE_METERS="UNITS_DISPLAY.SQUARE_METERS",e.DIMENSIONS_SEPARATOR="UNITS_DISPLAY.DIMENSIONS_SEPARATOR"}(p=e.UNITS_DISPLAY||(e.UNITS_DISPLAY={})),function(e){let t,i,n,s,a,o,r,l,d,c,u,h,m,p,E,S,O,g,_,T,A,v,f,N,I,L;!function(e){e.DELETE_SELECTED_CTA="WORKSHOP.ACCORDION.DELETE_SELECTED_CTA",e.SELECT_ALL_CTA="WORKSHOP.ACCORDION.SELECT_ALL_CTA",e.ENTER_SELECT_MODE_CTA="WORKSHOP.ACCORDION.ENTER_SELECT_MODE_CTA",e.EXIT_SELECT_MODE_CTA="WORKSHOP.ACCORDION.EXIT_SELECT_MODE_CTA",e.DELETE_FOOTER_CTA="WORKSHOP.ACCORDION.DELETE_FOOTER_CTA",e.TOGGLE_VISIBILITY_FOOTER_CTA="WORKSHOP.ACCORDION.TOGGLE_VISIBILITY_FOOTER_CTA",e.BATCH_DELETE_MODAL_TITLE="WORKSHOP.ACCORDION.BATCH_DELETE_MODAL_TITLE",e.BATCH_DELETE_MODAL_MESSAGE="WORKSHOP.ACCORDION.BATCH_DELETE_MODAL_MESSAGE",e.BATCH_ITEMS_TYPE="WORKSHOP.ACCORDION.BATCH_ITEMS_TYPE",e.BATCH_COPY_LABEL="WORKSHOP.ACCORDION.BATCH_COPY_LABEL",e.BATCH_MOVE_LABEL="WORKSHOP.ACCORDION.BATCH_MOVE_LABEL",e.BATCH_DELETE_LABEL="WORKSHOP.ACCORDION.BATCH_DELETE_LABEL",e.RENAME_HEADER_OPTION_CTA="WORKSHOP.ACCORDION.RENAME_HEADER_OPTION_CTA"}(t=e.ACCORDION||(e.ACCORDION={})),function(e){e.CHANGES_SAVED_MESSAGE="WORKSHOP.APP_SWITCH.CHANGES_SAVED_MESSAGE",e.SAVING_CHANGES_MESSAGE="WORKSHOP.APP_SWITCH.SAVING_CHANGES_MESSAGE",e.PROCESSING_MESSAGE="WORKSHOP.APP_SWITCH.PROCESSING_MESSAGE",e.CHANGES_SAVED_AUTOSAVE_MESSAGE="WORKSHOP.APP_SWITCH.CHANGES_SAVED_AUTOSAVE_MESSAGE",e.EDIT_CTA="WORKSHOP.APP_SWITCH.EDIT_CTA",e.UNSUPPORTED_TOOLTIP_MESSAGE="WORKSHOP.APP_SWITCH.UNSUPPORTED_TOOLTIP_MESSAGE",e.UNSUPPORTED_TOOLTIP_TITLE="WORKSHOP.APP_SWITCH.UNSUPPORTED_TOOLTIP_TITLE",e.FLOORS_CHECKBOX_LABEL="WORKSHOP.APP_SWITCH.FLOORS_CHECKBOX_LABEL",e.MEASUREMENTS_CHECKBOX_LABEL="WORKSHOP.APP_SWITCH.MEASUREMENTS_CHECKBOX_LABEL",e.MATTERTAGS_CHECKBOX_LABEL="WORKSHOP.APP_SWITCH.MATTERTAGS_CHECKBOX_LABEL",e.TAGS_CHECKBOX_LABEL="WORKSHOP.APP_SWITCH.TAGS_CHECKBOX_LABEL",e.LABELS_CHECKBOX_LABEL="WORKSHOP.APP_SWITCH.LABELS_CHECKBOX_LABEL",e.HIGHLIGHTS_CHECKBOX_LABEL="WORKSHOP.APP_SWITCH.HIGHLIGHTS_CHECKBOX_LABEL",e.START_LOCATION_CHECKBOX_LABEL="WORKSHOP.APP_SWITCH.START_LOCATION_CHECKBOX_LABEL",e.SETTINGS_CHECKBOX_LABEL="WORKSHOP.APP_SWITCH.SETTINGS_CHECKBOX_LABEL",e.SWEEPS_CHECKBOX_LABEL="WORKSHOP.APP_SWITCH.SWEEPS_CHECKBOX_LABEL",e.BLURS_CHECKBOX_LABEL="WORKSHOP.APP_SWITCH.BLURS_CHECKBOX_LABEL",e.EXIT_EDIT_MODE_CTA="WORKSHOP.APP_SWITCH.EXIT_EDIT_MODE_CTA",e.EXIT_EDIT_MODE_TOOLTIP_MESSAGE="WORKSHOP.APP_SWITCH.EXIT_EDIT_MODE_TOOLTIP_MESSAGE",e.PREVIEW_CHANGES_CTA="WORKSHOP.APP_SWITCH.PREVIEW_CHANGES_CTA",e.NO_EDIT_PERMS_TITLE="WORKSHOP.APP_SWITCH.NO_EDIT_PERMS_TITLE",e.NO_EDIT_PERMS_MESSAGE="WORKSHOP.APP_SWITCH.NO_EDIT_PERMS_MESSAGE"}(i=e.APP_SWITCH||(e.APP_SWITCH={})),function(e){e.ACCEPT_ALL_SUGGESTIONS="WORKSHOP.BLURS.ACCEPT_ALL_SUGGESTIONS",e.ACCEPT_SUGGESTION_TOOLTIP="WORKSHOP.BLURS.ACCEPT_SUGGESTION_TOOLTIP",e.ALREADY_PROCESSING_ALERT_MESSAGE="WORKSHOP.BLURS.ALREADY_PROCESSING_ALERT_MESSAGE",e.ALREADY_PROCESSING_ALERT_TITLE="WORKSHOP.BLURS.ALREADY_PROCESSING_ALERT_TITLE",e.APPLY_BLURS_CTA="WORKSHOP.BLURS.APPLY_BLURS_CTA",e.APPLYING="WORKSHOP.BLURS.APPLYING",e.APPLY_MODAL_CONFIRM="WORKSHOP.BLURS.APPLY_MODAL_CONFIRM",e.APPLY_MODAL_NUDGE_CANCEL="WORKSHOP.BLURS.APPLY_MODAL_NUDGE_CANCEL",e.APPLY_MODAL_MESSAGE="WORKSHOP.BLURS.APPLY_MODAL_MESSAGE",e.APPLY_MODAL_NUDGE_MESSAGE="WORKSHOP.BLURS.APPLY_MODAL_NUDGE_MESSAGE",e.APPLY_MODAL_RETRY="WORKSHOP.BLURS.APPLY_MODAL_RETRY",e.APPLY_MODAL_TITLE="WORKSHOP.BLURS.APPLY_MODAL_TITLE",e.APPLY_MODAL_NUDGE_TITLE="WORKSHOP.BLURS.APPLY_MODAL_NUDGE_TITLE",e.APPLY_MODAL_TRUNCATED="WORKSHOP.BLURS.APPLY_MODAL_TRUNCATED",e.APPLY_MODAL_WARNING="WORKSHOP.BLURS.APPLY_MODAL_WARNING",e.BANNER_WARNING="WORKSHOP.BLURS.BANNER_WARNING",e.DEFURNISH_WARNING="WORKSHOP.BLURS.DEFURNISH_WARNING",e.BATCH_SELECT="WORKSHOP.BLURS.BATCH_SELECT",e.BLUR_STATUS="WORKSHOP.BLURS.BLUR_STATUS",e.BLUR_STATUS_ALL="WORKSHOP.BLURS.BLUR_STATUS_ALL",e.BLUR_STATUS_APPLIED="WORKSHOP.BLURS.BLUR_STATUS_APPLIED",e.BLUR_STATUS_FAILED="WORKSHOP.BLURS.BLUR_STATUS_FAILED",e.BLUR_STATUS_PENDING="WORKSHOP.BLURS.BLUR_STATUS_PENDING",e.BLUR_STATUS_PROCESSING="WORKSHOP.BLURS.BLUR_STATUS_PROCESSING",e.BLUR_STATUS_SUGGESTED="WORKSHOP.BLURS.BLUR_STATUS_SUGGESTED",e.BRUSH_TOOLTIP_MESSAGE="WORKSHOP.BLURS.BRUSH_TOOLTIP_MESSAGE",e.BRUSH_TOOLTIP_TITLE="WORKSHOP.BLURS.BRUSH_TOOLTIP_TITLE",e.CLOSE_SUGGESTIONS="WORKSHOP.BLURS.CLOSE_SUGGESTIONS",e.CREATE_TOOLTIP_MESSAGE="WORKSHOP.BLURS.CREATE_TOOLTIP_MESSAGE",e.CREATE_TOOLTIP_TITLE="WORKSHOP.BLURS.CREATE_TOOLTIP_TITLE",e.DEFAULT_ALERT_CONFIRMATION="WORKSHOP.BLURS.DEFAULT_ALERT_CONFIRMATION",e.DEFAULT_ALERT_TITLE="WORKSHOP.BLURS.DEFAULT_ALERT_TITLE",e.DEFAULT_BLUR_NAME="WORKSHOP.BLURS.DEFAULT_BLUR_NAME",e.DELETE_BLUR_CTA="WORKSHOP.BLURS.DELETE_BLUR_CTA",e.GROUP_BY="WORKSHOP.BLURS.GROUP_BY",e.GROUP_BY_FLOOR="WORKSHOP.BLURS.GROUP_BY_FLOOR",e.GROUP_BY_SCAN="WORKSHOP.BLURS.GROUP_BY_SCAN",e.HIDE_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.BLURS.HIDE_LIST_ITEM_TOOLTIP_MESSAGE",e.MULTI_FLOOR_EMPTY_MESSAGE="WORKSHOP.BLURS.MULTI_FLOOR_EMPTY_MESSAGE",e.NO_BLURS="WORKSHOP.BLURS.NO_BLURS",e.NO_SUGGESTIONS="WORKSHOP.BLURS.NO_SUGGESTIONS",e.NO_SUGGESTIONS_ON_FLOOR="WORKSHOP.BLURS.NO_SUGGESTIONS_ON_FLOOR",e.NUM_BLUR_SUGGESTIONS="WORKSHOP.BLURS.NUM_BLUR_SUGGESTIONS",e.NUM_TYPE="WORKSHOP.BLURS.NUM_TYPE",e.OTHER_GROUP_LABEL="WORKSHOP.BLURS.OTHER_GROUP_LABEL",e.OVERLAY_MESSAGE="WORKSHOP.BLURS.OVERLAY_MESSAGE",e.OVERLAY_MESSAGE_TOUCH="WORKSHOP.BLURS.OVERLAY_MESSAGE_TOUCH",e.REJECT_ALL_SUGGESTIONS="WORKSHOP.BLURS.REJECT_ALL_SUGGESTIONS",e.REJECT_SUGGESTION_TOOLTIP="WORKSHOP.BLURS.REJECT_SUGGESTION_TOOLTIP",e.SHOW_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.BLURS.SHOW_LIST_ITEM_TOOLTIP_MESSAGE",e.SINGLE_FLOOR_EMPTY_MESSAGE="WORKSHOP.BLURS.SINGLE_FLOOR_EMPTY_MESSAGE",e.SORT="WORKSHOP.BLURS.SORT",e.SORT_CREATED_ASC="WORKSHOP.BLURS.SORT_CREATED_ASC",e.SORT_CREATED_DESC="WORKSHOP.BLURS.SORT_CREATED_DESC",e.STATUS="WORKSHOP.BLURS.STATUS",e.SUGGESTED_BLUR="WORKSHOP.BLURS.SUGGESTED_BLUR",e.SUGGESTIONS_AVAILABLE_MESSAGE="WORKSHOP.BLURS.SUGGESTIONS_AVAILABLE_MESSAGE",e.SUGGESTIONS_FOUND_MESSAGE="WORKSHOP.BLURS.SUGGESTIONS_FOUND_MESSAGE",e.TYPE="WORKSHOP.BLURS.TYPE",e.VIEW_SUGGESTIONS="WORKSHOP.BLURS.VIEW_SUGGESTIONS"}(n=e.BLURS||(e.BLURS={})),function(e){e.TYPE="WORKSHOP.SUGGESTIONS.TYPE"}(s=e.SUGGESTIONS||(e.SUGGESTIONS={})),function(e){e.HELP_LINK="WORKSHOP.EDIT_BAR.HELP_LINK",e.BETA_TAG="WORKSHOP.EDIT_BAR.BETA_TAG",e.COLLAPSE_LIST_TOOLTIP_MESSAGE="WORKSHOP.EDIT_BAR.COLLAPSE_LIST_TOOLTIP_MESSAGE",e.EXPAND_LIST_TOOLTIP_MESSAGE="WORKSHOP.EDIT_BAR.EXPAND_LIST_TOOLTIP_MESSAGE",e.NEW_BADGE="WORKSHOP.EDIT_BAR.NEW_BADGE"}(a=e.EDIT_BAR||(e.EDIT_BAR={})),function(e){e.APPLY_CTA="WORKSHOP.EMBED.APPLY_CTA",e.HELP_CTA="WORKSHOP.EMBED.HELP_CTA",e.ERROR_MESSAGE="WORKSHOP.EMBED.ERROR_MESSAGE",e.LOADING_MESSAGE="WORKSHOP.EMBED.LOADING_MESSAGE",e.INVALID_URL_MESSAGE="WORKSHOP.EMBED.INVALID_URL_MESSAGE",e.SUPPORTED_FORMATS_MESSAGE="WORKSHOP.EMBED.SUPPORTED_FORMATS_MESSAGE",e.MEDIA_LINK_LABEL="WORKSHOP.EMBED.MEDIA_LINK_LABEL",e.PROVIDER_NOT_SUPPORTED_MESSAGE="WORKSHOP.EMBED.PROVIDER_NOT_SUPPORTED_MESSAGE",e.LINK_TYPE_NOT_SUPPORTED_MESSAGE="WORKSHOP.EMBED.LINK_TYPE_NOT_SUPPORTED_MESSAGE",e.MEDIA_EMBED_PLACEHOLDER="WORKSHOP.EMBED.MEDIA_EMBED_PLACEHOLDER"}(o=e.EMBED||(e.EMBED={})),function(e){e.ADD_FROM_PHOTOS_TOOLTIP_MESSAGE="WORKSHOP.HLR.ADD_FROM_PHOTOS_TOOLTIP_MESSAGE",e.ADD_HIGHLIGHT_CTA="WORKSHOP.HLR.ADD_HIGHLIGHT_CTA",e.ADD_HIGHLIGHT_DISABLED_CTA="WORKSHOP.HLR.ADD_HIGHLIGHT_DISABLED_CTA",e.ADD_HIGHLIGHT_INSTRUCTIONS="WORKSHOP.HLR.ADD_HIGHLIGHT_INSTRUCTIONS",e.APPLY_TO_ALL_CTA="WORKSHOP.HLR.APPLY_TO_ALL_CTA",e.AUTO_GENERATED="WORKSHOP.HLR.AUTO_GENERATED",e.BEDROOM_COUNT="WORKSHOP.HLR.BEDROOM_COUNT",e.BATHROOM_COUNT="WORKSHOP.HLR.BATHROOM_COUNT",e.CLEAR_HLR_MODAL_MESSAGE="WORKSHOP.HLR.CLEAR_HLR_MODAL_MESSAGE",e.CLEAR_HLR_MODAL_TITLE="WORKSHOP.HLR.CLEAR_HLR_MODAL_TITLE",e.CLEAR_REEL_CTA="WORKSHOP.HLR.CLEAR_REEL_CTA",e.CLEAR_REEL_DRAFT_TOOLTIP="WORKSHOP.HLR.CLEAR_REEL_DRAFT_TOOLTIP",e.CLEAR_REEL_EMPTY_TOOLTIP="WORKSHOP.HLR.CLEAR_REEL_EMPTY_TOOLTIP",e.CLOSE_SETTINGS_CTA="WORKSHOP.HLR.CLOSE_SETTINGS_CTA",e.DELETE_HIGHLIGHT_TOOLTIP_MESSAGE="WORKSHOP.HLR.DELETE_HIGHLIGHT_TOOLTIP_MESSAGE",e.DEFURNISHED="WORKSHOP.HLR.DEFURNISHED",e.DISMISS_TOOLTIP_CTA="WORKSHOP.HLR.DISMISS_TOOLTIP_CTA",e.DOLLHOUSE_ROTATION_SPEED_SETTING_LABEL="WORKSHOP.HLR.DOLLHOUSE_ROTATION_SPEED_SETTING_LABEL",e.EDIT_HIGHLIGHT_TOOLTIP_MESSAGE="WORKSHOP.HLR.EDIT_HIGHLIGHT_TOOLTIP_MESSAGE",e.EDIT_SETTINGS_TOOLTIP_MESSAGE="WORKSHOP.HLR.EDIT_SETTINGS_TOOLTIP_MESSAGE",e.HIGHLIGHT_CAPTION_HINT="WORKSHOP.HLR.HIGHLIGHT_CAPTION_HINT",e.HIGHLIGHT_CAPTION_PLACEHOLDER="WORKSHOP.HLR.HIGHLIGHT_CAPTION_PLACEHOLDER",e.HIGHLIGHT_DESCRIPTION_HINT="WORKSHOP.HLR.HIGHLIGHT_DESCRIPTION_HINT",e.HIGHLIGHT_DESCRIPTION_PLACEHOLDER="WORKSHOP.HLR.HIGHLIGHT_DESCRIPTION_PLACEHOLDER",e.HIGHLIGHT_SCENE_HINT="WORKSHOP.HLR.HIGHLIGHT_SCENE_HINT",e.HIGHLIGHT_SCENE_PLACEHOLDER="WORKSHOP.HLR.HIGHLIGHT_SCENE_PLACEHOLDER",e.HIGHLIGHT_TITLE_HINT="WORKSHOP.HLR.HIGHLIGHT_TITLE_HINT",e.HIGHLIGHT_TITLE_PLACEHOLDER="WORKSHOP.HLR.HIGHLIGHT_TITLE_PLACEHOLDER",e.INDIVIDUAL_PAN_DIRECTION_SETTING_LABEL="WORKSHOP.HLR.INDIVIDUAL_PAN_DIRECTION_SETTING_LABEL",e.INDIVIDUAL_TRANSITION_SETTING_LABEL="WORKSHOP.HLR.INDIVIDUAL_TRANSITION_SETTING_LABEL",e.NUM_TYPE="WORKSHOP.HLR.NUM_TYPE",e.PANNING_SETTINGS_TAB_TITLE="WORKSHOP.HLR.PANNING_SETTINGS_TAB_TITLE",e.PAN_DIRECTION_SETTING_AUTO="WORKSHOP.HLR.PAN_DIRECTION_SETTING_AUTO",e.PAN_DIRECTION_SETTING_LABEL="WORKSHOP.HLR.PAN_DIRECTION_SETTING_LABEL",e.PAN_DIRECTION_SETTING_LEFT="WORKSHOP.HLR.PAN_DIRECTION_SETTING_LEFT",e.PAN_DIRECTION_SETTING_RIGHT="WORKSHOP.HLR.PAN_DIRECTION_SETTING_RIGHT",e.PANEL_COLLAPSE="WORKSHOP.HLR.PANEL_COLLAPSE",e.PANEL_EXPAND="WORKSHOP.HLR.PANEL_EXPAND",e.PREVIEW_SETTINGS_CTA="WORKSHOP.HLR.PREVIEW_SETTINGS_CTA",e.PRESENTATION_SETTINGS_TAB_TITLE="WORKSHOP.HLR.PRESENTATION_SETTINGS_TAB_TITLE",e.REMOVE_HIGHLIGHT_TOOLTIP_MESSAGE="WORKSHOP.HLR.REMOVE_HIGHLIGHT_TOOLTIP_MESSAGE",e.RESTORE_DEFAULTS_CTA="WORKSHOP.HLR.RESTORE_DEFAULTS_CTA",e.ROTATION_ANGLE_SETTING_LABEL="WORKSHOP.HLR.ROTATION_ANGLE_SETTING_LABEL",e.ROTATION_SPEED_SETTING_LABEL="WORKSHOP.HLR.ROTATION_SPEED_SETTING_LABEL",e.SCAN_GENERIC_HIDDEN_TOOLTIP_TITLE="WORKSHOP.HLR.SCAN_GENERIC_HIDDEN_TOOLTIP_TITLE",e.SCAN_NUMBER_HIDDEN_TOOLTIP_TITLE="WORKSHOP.HLR.SCAN_NUMBER_HIDDEN_TOOLTIP_TITLE",e.SEARCH_HIGHLIGHT_DEFAULTNAME="WORKSHOP.HLR.SEARCH_HIGHLIGHT_DEFAULTNAME",e.SEARCH_ITEM_DELETE="WORKSHOP.HLR.SEARCH_ITEM_DELETE",e.SEARCH_ITEM_EDIT="WORKSHOP.HLR.SEARCH_ITEM_EDIT",e.SEARCH_TOUR_HEADER="WORKSHOP.HLR.SEARCH_TOUR_HEADER",e.SETTINGS_MODAL_TITLE="WORKSHOP.HLR.SETTINGS_MODAL_TITLE",e.SLIDESHOW_SPEED_SETTING_LABEL="WORKSHOP.HLR.SLIDESHOW_SPEED_SETTING_LABEL",e.SPEED_SETTING_FAST="WORKSHOP.HLR.SPEED_SETTING_FAST",e.SPEED_SETTING_MEDIUM="WORKSHOP.HLR.SPEED_SETTING_MEDIUM",e.SPEED_SETTING_SLOW="WORKSHOP.HLR.SPEED_SETTING_SLOW",e.TOAST_ERROR_CTA="WORKSHOP.HLR.TOAST_ERROR_CTA",e.TOAST_ERROR_MESSAGE="WORKSHOP.HLR.TOAST_ERROR_MESSAGE",e.TOUR_EDITOR_BEHAVIORS_TAB="WORKSHOP.HLR.TOUR_EDITOR_BEHAVIORS_TAB",e.TOUR_EDITOR_LABELS_TAB="WORKSHOP.HLR.TOUR_EDITOR_LABELS_TAB",e.TOUR_EDITOR_EMPTY_MESSAGE="WORKSHOP.HLR.TOUR_EDITOR_EMPTY_MESSAGE",e.TOUR_EDITOR_EMPTY_TITLE="WORKSHOP.HLR.TOUR_EDITOR_EMPTY_TITLE",e.TOUR_EDITOR_TITLE_DESCRIPTION_HELPER="WORKSHOP.HLR.TOUR_EDITOR_TITLE_DESCRIPTION_HELPER",e.TOUR_EDITOR_TITLE_DESCRIPTION_TIP="WORKSHOP.HLR.TOUR_EDITOR_TITLE_DESCRIPTION_TIP",e.TOUR_EDITOR_TITLE_DESCRIPTION_TIP_LINK="WORKSHOP.HLR.TOUR_EDITOR_TITLE_DESCRIPTION_TIP_LINK",e.TOUR_SETTINGS_LABEL="WORKSHOP.HLR.TOUR_SETTINGS_LABEL",e.TOUR_SETTINGS_MOVED_HEADER="WORKSHOP.HLR.TOUR_SETTINGS_MOVED_HEADER",e.TOUR_SETTINGS_MOVED_MESSAGE="WORKSHOP.HLR.TOUR_SETTINGS_MOVED_MESSAGE",e.TRANSITION_AFTER_360_DISABLED_MESSAGE="WORKSHOP.HLR.TRANSITION_AFTER_360_DISABLED_MESSAGE",e.TRANSITION_EDITOR_TITLE="WORKSHOP.HLR.TRANSITION_EDITOR_TITLE",e.TRANSITION_IS_360_DISABLED_MESSAGE="WORKSHOP.HLR.TRANSITION_IS_360_DISABLED_MESSAGE",e.TRANSITION_NO_ROTATION_DISABLED_MESSAGE="WORKSHOP.HLR.TRANSITION_NO_ROTATION_DISABLED_MESSAGE",e.TRANSITION_SAME_SWEEP_DISABLED_MESSAGE="WORKSHOP.HLR.TRANSITION_SAME_SWEEP_DISABLED_MESSAGE",e.TRANSITION_SETTINGS_TAB_TITLE="WORKSHOP.HLR.TRANSITION_SETTINGS_TAB_TITLE",e.TRANSITION_SETTING_LABEL="WORKSHOP.HLR.TRANSITION_SETTING_LABEL",e.TRANSITION_SETTING_SLIDESHOW="WORKSHOP.HLR.TRANSITION_SETTING_SLIDESHOW",e.TRANSITION_SETTING_WALKTHROUGH="WORKSHOP.HLR.TRANSITION_SETTING_WALKTHROUGH",e.TYPE="WORKSHOP.HLR.TYPE",e.WALKTHROUGH_SPEED_SETTING_LABEL="WORKSHOP.HLR.WALKTHROUGH_SPEED_SETTING_LABEL",e.ZOOM_SPEED_SETTING_LABEL="WORKSHOP.HLR.ZOOM_SPEED_SETTING_LABEL",e.AUTOGEN_TOUR_CREATED_TITLE="WORKSHOP.HLR.AUTOGEN_TOUR_CREATED_TITLE",e.AUTOGEN_TOUR_CREATED_MESSAGE="WORKSHOP.HLR.AUTOGEN_TOUR_CREATED_MESSAGE",e.AUTOGEN_TOUR_READY_TITLE="WORKSHOP.HLR.AUTOGEN_TOUR_READY_TITLE",e.AUTOGEN_TOUR_READY_MESSAGE="WORKSHOP.HLR.AUTOGEN_TOUR_READY_MESSAGE",e.AUTOGEN_TOUR_ERROR_MESSAGE="WORKSHOP.HLR.AUTOGEN_TOUR_ERROR_MESSAGE",e.RATING_FEEDBACK_HAPPINESS_SAVED_TITLE="WORKSHOP.HLR.RATING_FEEDBACK_HAPPINESS_SAVED_TITLE",e.RATING_FEEDBACK_HAPPINESS_REJECTED_TITLE="WORKSHOP.HLR.RATING_FEEDBACK_HAPPINESS_REJECTED_TITLE",e.RATING_FEEDBACK_HAPPINESS_SUBTITLE="WORKSHOP.HLR.RATING_FEEDBACK_HAPPINESS_SUBTITLE",e.RATING_FEEDBACK_SPEED_TITLE="WORKSHOP.HLR.RATING_FEEDBACK_SPEED_TITLE",e.RATING_FEEDBACK_SPEED_MUCH_TOO_SLOW="WORKSHOP.HLR.RATING_FEEDBACK_SPEED_MUCH_TOO_SLOW",e.RATING_FEEDBACK_SPEED_SOMEWHAT_SLOW="WORKSHOP.HLR.RATING_FEEDBACK_SPEED_SOMEWHAT_SLOW",e.RATING_FEEDBACK_SPEED_ABOUT_RIGHT="WORKSHOP.HLR.RATING_FEEDBACK_SPEED_ABOUT_RIGHT",e.RATING_FEEDBACK_SPEED_SOMEWHAT_FAST="WORKSHOP.HLR.RATING_FEEDBACK_SPEED_SOMEWHAT_FAST",e.RATING_FEEDBACK_SPEED_MUCH_TOO_FAST="WORKSHOP.HLR.RATING_FEEDBACK_SPEED_MUCH_TOO_FAST",e.RATING_FEEDBACK_PATH_ISSUES_TITLE="WORKSHOP.HLR.RATING_FEEDBACK_PATH_ISSUES_TITLE",e.RATING_FEEDBACK_PATH_ISSUES_MISSING_ROOMS_FLOORS="WORKSHOP.HLR.RATING_FEEDBACK_PATH_ISSUES_MISSING_ROOMS_FLOORS",e.RATING_FEEDBACK_PATH_ISSUES_MISSING_OUTDOOR_AREAS="WORKSHOP.HLR.RATING_FEEDBACK_PATH_ISSUES_MISSING_OUTDOOR_AREAS",e.RATING_FEEDBACK_PATH_ISSUES_UNWANTED_AREAS="WORKSHOP.HLR.RATING_FEEDBACK_PATH_ISSUES_UNWANTED_AREAS",e.RATING_FEEDBACK_PATH_ISSUES_POOR_TRANSITIONS="WORKSHOP.HLR.RATING_FEEDBACK_PATH_ISSUES_POOR_TRANSITIONS",e.RATING_FEEDBACK_PATH_ISSUES_CUT_THROUGH_WALLS="WORKSHOP.HLR.RATING_FEEDBACK_PATH_ISSUES_CUT_THROUGH_WALLS",e.RATING_FEEDBACK_PATH_ISSUES_OTHER="WORKSHOP.HLR.RATING_FEEDBACK_PATH_ISSUES_OTHER",e.GENERATING_TOUR="WORKSHOP.HLR.GENERATING_TOUR",e.GENERATING_TOUR_MESSAGE="WORKSHOP.HLR.GENERATING_TOUR_MESSAGE",e.CANCEL_GENERATION="WORKSHOP.HLR.CANCEL_GENERATION",e.SAVING_TOUR="WORKSHOP.HLR.SAVING_TOUR",e.SAVING_TOUR_MESSAGE="WORKSHOP.HLR.SAVING_TOUR_MESSAGE",e.REPLACE_TOUR="WORKSHOP.HLR.REPLACE_TOUR",e.GENERATE_TOUR="WORKSHOP.HLR.GENERATE_TOUR",e.REGENERATE_TOUR="WORKSHOP.HLR.REGENERATE_TOUR",e.KEEP_CURRENT_TOUR="WORKSHOP.HLR.KEEP_CURRENT_TOUR",e.REPLACE_CURRENT_TOUR="WORKSHOP.HLR.REPLACE_CURRENT_TOUR",e.ACCEPT_GENERATED_TOUR="WORKSHOP.HLR.ACCEPT_GENERATED_TOUR",e.REPLACE_TOUR_HELP_MESSAGE="WORKSHOP.HLR.REPLACE_TOUR_HELP_MESSAGE",e.ACCEPT_TOUR_HELP_MESSAGE="WORKSHOP.HLR.ACCEPT_TOUR_HELP_MESSAGE"}(r=e.HLR||(e.HLR={})),function(e){e.TYPE="WORKSHOP.LABELS.TYPE",e.NUM_TYPE="WORKSHOP.LABELS.NUM_TYPE",e.SELECTED_LABELS="WORKSHOP.LABELS.SELECTED_LABELS",e.EDIT_TEXT_CANCEL_CTA="WORKSHOP.LABELS.EDIT_TEXT_CANCEL_CTA",e.EDIT_TEXT_DONE_CTA="WORKSHOP.LABELS.EDIT_TEXT_DONE_CTA",e.INPUT_PLACEHOLDER="WORKSHOP.LABELS.INPUT_PLACEHOLDER",e.MOBILE_OVERLAY_MESSAGE="WORKSHOP.LABELS.MOBILE_OVERLAY_MESSAGE",e.ADD_LABEL_TOOLTIP_MESSAGE="WORKSHOP.LABELS.ADD_LABEL_TOOLTIP_MESSAGE",e.RENAME_LIST_ITEM_OPTION_CTA="WORKSHOP.LABELS.RENAME_LIST_ITEM_OPTION_CTA",e.DELETE_LIST_ITEM_OPTION_CTA="WORKSHOP.LABELS.DELETE_LIST_ITEM_OPTION_CTA",e.DEPRECATION_WARNING="WORKSHOP.LABELS.DEPRECATION_WARNING",e.OPEN_PROPERTY_TOOL_LABEL="WORKSHOP.LABELS.OPEN_PROPERTY_TOOL_LABEL",e.BOTH_LABELS_AND_RB_ENABLED="WORKSHOP.LABELS.BOTH_LABELS_AND_RB_ENABLED",e.TURN_OFF_LABELS="WORKSHOP.LABELS.TURN_OFF_LABELS",e.LIST_ITEM_INPUT_PLACEHOLDER="WORKSHOP.LABELS.LIST_ITEM_INPUT_PLACEHOLDER",e.MULTI_FLOOR_EMPTY_MESSAGE="WORKSHOP.LABELS.MULTI_FLOOR_EMPTY_MESSAGE",e.SINGLE_FLOOR_EMPTY_MESSAGE="WORKSHOP.LABELS.SINGLE_FLOOR_EMPTY_MESSAGE",e.HIDE_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.LABELS.HIDE_LIST_ITEM_TOOLTIP_MESSAGE",e.SHOW_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.LABELS.SHOW_LIST_ITEM_TOOLTIP_MESSAGE",e.EDIT_LABEL="WORKSHOP.LABELS.EDIT_LABEL"}(l=e.LABELS||(e.LABELS={})),function(e){e.BACKYARD="WORKSHOP.LABEL_SUGGESTIONS.BACKYARD",e.BALCONY="WORKSHOP.LABEL_SUGGESTIONS.BALCONY",e.BASEMENT="WORKSHOP.LABEL_SUGGESTIONS.BASEMENT",e.BATHROOM="WORKSHOP.LABEL_SUGGESTIONS.BATHROOM",e.BEDROOM="WORKSHOP.LABEL_SUGGESTIONS.BEDROOM",e.BONUS_ROOM="WORKSHOP.LABEL_SUGGESTIONS.BONUS_ROOM",e.BREAK_ROOM="WORKSHOP.LABEL_SUGGESTIONS.BREAK_ROOM",e.CLOSET="WORKSHOP.LABEL_SUGGESTIONS.CLOSET",e.CONFERENCE_ROOM="WORKSHOP.LABEL_SUGGESTIONS.CONFERENCE_ROOM",e.DEN="WORKSHOP.LABEL_SUGGESTIONS.DEN",e.DINING_ROOM="WORKSHOP.LABEL_SUGGESTIONS.DINING_ROOM",e.DRIVEWAY="WORKSHOP.LABEL_SUGGESTIONS.DRIVEWAY",e.ELEVATOR="WORKSHOP.LABEL_SUGGESTIONS.ELEVATOR",e.ENTRANCE="WORKSHOP.LABEL_SUGGESTIONS.ENTRANCE",e.ESCALATOR="WORKSHOP.LABEL_SUGGESTIONS.ESCALATOR",e.EXERCISE_ROOM="WORKSHOP.LABEL_SUGGESTIONS.EXERCISE_ROOM",e.EXTERIOR="WORKSHOP.LABEL_SUGGESTIONS.EXTERIOR",e.FACADE="WORKSHOP.LABEL_SUGGESTIONS.FACADE",e.FAMILY_ROOM="WORKSHOP.LABEL_SUGGESTIONS.FAMILY_ROOM",e.FRONT_YARD="WORKSHOP.LABEL_SUGGESTIONS.FRONT_YARD",e.GAME_ROOM="WORKSHOP.LABEL_SUGGESTIONS.GAME_ROOM",e.GARAGE="WORKSHOP.LABEL_SUGGESTIONS.GARAGE",e.GARDEN="WORKSHOP.LABEL_SUGGESTIONS.GARDEN",e.GREAT_ROOM="WORKSHOP.LABEL_SUGGESTIONS.GREAT_ROOM",e.GYM="WORKSHOP.LABEL_SUGGESTIONS.GYM",e.HALLWAY="WORKSHOP.LABEL_SUGGESTIONS.HALLWAY",e.KITCHEN="WORKSHOP.LABEL_SUGGESTIONS.KITCHEN",e.LAUNDRY="WORKSHOP.LABEL_SUGGESTIONS.LAUNDRY",e.LIBRARY="WORKSHOP.LABEL_SUGGESTIONS.LIBRARY",e.LIVING_ROOM="WORKSHOP.LABEL_SUGGESTIONS.LIVING_ROOM",e.LOBBY="WORKSHOP.LABEL_SUGGESTIONS.LOBBY",e.LOFT="WORKSHOP.LABEL_SUGGESTIONS.LOFT",e.LUNCH_ROOM="WORKSHOP.LABEL_SUGGESTIONS.LUNCH_ROOM",e.MEDIA_ROOM="WORKSHOP.LABEL_SUGGESTIONS.MEDIA_ROOM",e.MEETING_ROOM="WORKSHOP.LABEL_SUGGESTIONS.MEETING_ROOM",e.OFFICE="WORKSHOP.LABEL_SUGGESTIONS.OFFICE",e.OTHER="WORKSHOP.LABEL_SUGGESTIONS.OTHER",e.PANTRY="WORKSHOP.LABEL_SUGGESTIONS.PANTRY",e.PATIO="WORKSHOP.LABEL_SUGGESTIONS.PATIO",e.POOL="WORKSHOP.LABEL_SUGGESTIONS.POOL",e.PRIMARY_BATHROOM="WORKSHOP.LABEL_SUGGESTIONS.PRIMARY_BATHROOM",e.PRIMARY_BEDROOM="WORKSHOP.LABEL_SUGGESTIONS.PRIMARY_BEDROOM",e.RECEPTION="WORKSHOP.LABEL_SUGGESTIONS.RECEPTION",e.SAUNA="WORKSHOP.LABEL_SUGGESTIONS.SAUNA",e.SPA="WORKSHOP.LABEL_SUGGESTIONS.SPA",e.STAIRCASE="WORKSHOP.LABEL_SUGGESTIONS.STAIRCASE",e.STAIRWAY="WORKSHOP.LABEL_SUGGESTIONS.STAIRWAY",e.STORAGE="WORKSHOP.LABEL_SUGGESTIONS.STORAGE",e.STUDY="WORKSHOP.LABEL_SUGGESTIONS.STUDY",e.UNFURNISHED="WORKSHOP.LABEL_SUGGESTIONS.UNFURNISHED",e.UTILITY_ROOM="WORKSHOP.LABEL_SUGGESTIONS.UTILITY_ROOM",e.VOID="WORKSHOP.LABEL_SUGGESTIONS.VOID",e.WORKSHOP_ROOM="WORKSHOP.LABEL_SUGGESTIONS.WORKSHOP_ROOM",e.WORKSHOP="WORKSHOP.LABEL_SUGGESTIONS.WORKSHOP"}(d=e.LABEL_SUGGESTIONS||(e.LABEL_SUGGESTIONS={})),function(e){e.ADD_LAYER_BUTTON_LABEL="WORKSHOP.LAYERS.ADD_LAYER_BUTTON_LABEL",e.ADD_VIEW_ITEM="WORKSHOP.LAYERS.ADD_VIEW_ITEM",e.ADD_VIEW_MODAL_TITLE="WORKSHOP.LAYERS.ADD_VIEW_MODAL_TITLE",e.APPLY_TO_ALL_VIEWS_BLURS="WORKSHOP.LAYERS.APPLY_TO_ALL_VIEWS_BLURS",e.APPLY_TO_ALL_VIEWS_SCANS_3D="WORKSHOP.LAYERS.APPLY_TO_ALL_VIEWS_SCANS_3D",e.APPLY_TO_ALL_VIEWS_TRIM="WORKSHOP.LAYERS.APPLY_TO_ALL_VIEWS_TRIM",e.APPLY_TO_ALL_VIEWS_VIEW_360="WORKSHOP.LAYERS.APPLY_TO_ALL_VIEWS_VIEW_360",e.BATCH_NEW_LAYER="WORKSHOP.LAYERS.BATCH_NEW_LAYER",e.COMMON_LAYER="WORKSHOP.LAYERS.COMMON_LAYER",e.COMMON_LAYER_DESCRIPTION="WORKSHOP.LAYERS.COMMON_LAYER_DESCRIPTION",e.COMMON_LAYER_ITEM="WORKSHOP.LAYERS.COMMON_LAYER_ITEM",e.COPY_LAYER_ITEM="WORKSHOP.LAYERS.COPY_LAYER_ITEM",e.DEDICATED_LAYER="WORKSHOP.LAYERS.DEDICATED_LAYER",e.DEDICATED_LAYER_DESCRIPTION="WORKSHOP.LAYERS.DEDICATED_LAYER_DESCRIPTION",e.DEDICATED_LAYER_ITEM="WORKSHOP.LAYERS.DEDICATED_LAYER_ITEM",e.DEFAULT_VIEW_NAME="WORKSHOP.LAYERS.DEFAULT_VIEW_NAME",e.DEFAULT_INSIGHTS_VIEW_NAME="WORKSHOP.LAYERS.DEFAULT_INSIGHTS_VIEW_NAME",e.DEFAULT_TRUEPLAN_VIEW_NAME="WORKSHOP.LAYERS.DEFAULT_TRUEPLAN_VIEW_NAME",e.DEFAULT_DIGIPRO_VIEW_NAME="WORKSHOP.LAYERS.DEFAULT_DIGIPRO_VIEW_NAME",e.DEFAULT_DEFURNISH_VIEW_NAME="WORKSHOP.LAYERS.DEFAULT_DEFURNISH_VIEW_NAME",e.DELETE_COMMON_LAYER_CONFIRMATION_MESSAGE="WORKSHOP.LAYERS.DELETE_COMMON_LAYER_CONFIRMATION_MESSAGE",e.DELETE_COMMON_LAYER_MODAL_TITLE="WORKSHOP.LAYERS.DELETE_COMMON_LAYER_MODAL_TITLE",e.DELETE_LAYER_CONFIRMATION_MESSAGE="WORKSHOP.LAYERS.DELETE_LAYER_CONFIRMATION_MESSAGE",e.DELETE_LAYER_ITEM="WORKSHOP.LAYERS.DELETE_LAYER_ITEM",e.DELETE_LAYER_MODAL_TITLE="WORKSHOP.LAYERS.DELETE_LAYER_MODAL_TITLE",e.DELETE_VIEW_ITEM="WORKSHOP.LAYERS.DELETE_VIEW_ITEM",e.DELETE_VIEW_MODAL_MESSAGE="WORKSHOP.LAYERS.DELETE_VIEW_MODAL_MESSAGE",e.DELETE_VIEW_MODAL_TITLE="WORKSHOP.LAYERS.DELETE_VIEW_MODAL_TITLE",e.DUPLICATE_LAYER_ITEM="WORKSHOP.LAYERS.DUPLICATE_LAYER_ITEM",e.DUPLICATE_LAYER_PLACEHOLDER="WORKSHOP.LAYERS.DUPLICATE_LAYER_PLACEHOLDER",e.DUPLICATE_LAYER_TITLE="WORKSHOP.LAYERS.DUPLICATE_LAYER_TITLE",e.DUPLICATE_VIEW_MODAL_TITLE="WORKSHOP.LAYERS.DUPLICATE_VIEW_MODAL_TITLE",e.EDIT_LAYER_TITLE="WORKSHOP.LAYERS.EDIT_LAYER_TITLE",e.EDIT_VIEW_MODAL_TITLE="WORKSHOP.LAYERS.EDIT_VIEW_MODAL_TITLE",e.HIDDEN_LAYER_ITEM_TOOLTIP="WORKSHOP.LAYERS.HIDDEN_LAYER_ITEM_TOOLTIP",e.HIDE_LAYER="WORKSHOP.LAYERS.HIDE_LAYER",e.LAYER_ADDING_TO_CHOICE_LABEL="WORKSHOP.LAYERS.LAYER_ADDING_TO_CHOICE_LABEL",e.LAYER_ADDING_TO_LABEL="WORKSHOP.LAYERS.LAYER_ADDING_TO_LABEL",e.LAYER_TYPE_LABEL="WORKSHOP.LAYERS.LAYER_TYPE_LABEL",e.LAYER_NAME_PLACEHOLDER="WORKSHOP.LAYERS.LAYER_NAME_PLACEHOLDER",e.MOVE_LAYER_ITEM="WORKSHOP.LAYERS.MOVE_LAYER_ITEM",e.NEW_LAYER_LABEL="WORKSHOP.LAYERS.NEW_LAYER_LABEL",e.NEW_LAYER_TITLE="WORKSHOP.LAYERS.NEW_LAYER_TITLE",e.NEW_VIEW_NAME_PLACEHOLDER="WORKSHOP.LAYERS.NEW_VIEW_NAME_PLACEHOLDER",e.SHARE_THIS_VIEW="WORKSHOP.LAYERS.SHARE_THIS_VIEW",e.SHARED_ENABLED_VIEWS="WORKSHOP.LAYERS.SHARED_ENABLED_VIEWS",e.SHOW_LAYER="WORKSHOP.LAYERS.SHOW_LAYER",e.SWITCH_TO_VIEWS_LEARN_MORE="WORKSHOP.LAYERS.SWITCH_TO_VIEWS_LEARN_MORE",e.SWITCH_TO_VIEWS_LIST_HEADER="WORKSHOP.LAYERS.SWITCH_TO_VIEWS_LIST_HEADER",e.SWITCH_TO_VIEWS_LIST_ITEM_1="WORKSHOP.LAYERS.SWITCH_TO_VIEWS_LIST_ITEM_1",e.SWITCH_TO_VIEWS_LIST_ITEM_2="WORKSHOP.LAYERS.SWITCH_TO_VIEWS_LIST_ITEM_2",e.SWITCH_TO_VIEWS_LIST_ITEM_3="WORKSHOP.LAYERS.SWITCH_TO_VIEWS_LIST_ITEM_3",e.SWITCH_TO_VIEWS_LIST_ITEM_4="WORKSHOP.LAYERS.SWITCH_TO_VIEWS_LIST_ITEM_4",e.SWITCH_TO_VIEWS_TITLE="WORKSHOP.LAYERS.SWITCH_TO_VIEWS_TITLE",e.SWITCH_TO_VIEWS_USE="WORKSHOP.LAYERS.SWITCH_TO_VIEWS_USE",e.SELECTED_ITEMS="WORKSHOP.LAYERS.SELECTED_ITEMS",e.UNLAYERED_LAYER_LABEL="WORKSHOP.LAYERS.UNLAYERED_LAYER_LABEL",e.TRUEPLAN_LAYER_LABEL="WORKSHOP.LAYERS.TRUEPLAN_LAYER_LABEL",e.UNTITLED_LAYER_PLACEHOLDER="WORKSHOP.LAYERS.UNTITLED_LAYER_PLACEHOLDER",e.VIEW_DISABLED_MESSAGE="WORKSHOP.LAYERS.VIEW_DISABLED_MESSAGE",e.VIEW_DUPLICATE="WORKSHOP.LAYERS.VIEW_DUPLICATE",e.VIEW_DUPLICATE_NAME_SUFFIX="WORKSHOP.LAYERS.VIEW_DUPLICATE_NAME_SUFFIX",e.VIEW_ENABLED_MESSAGE="WORKSHOP.LAYERS.VIEW_ENABLED_MESSAGE",e.VIEW_HIDE_MESSAGE="WORKSHOP.LAYERS.VIEW_HIDE_MESSAGE",e.VIEW_PLACEHOLDER="WORKSHOP.LAYERS.VIEW_PLACEHOLDER",e.VIEW_PREVIEW="WORKSHOP.LAYERS.VIEW_PREVIEW",e.VIEW_PREVIEW_NARROW="WORKSHOP.LAYERS.VIEW_PREVIEW_NARROW",e.VIEW_SET_AS_DEFAULT="WORKSHOP.LAYERS.VIEW_SET_AS_DEFAULT",e.VIEW_IS_DEFAULT="WORKSHOP.LAYERS.VIEW_IS_DEFAULT",e.VIEW_RENAME="WORKSHOP.LAYERS.VIEW_RENAME",e.VIEW_SHOW_MESSAGE="WORKSHOP.LAYERS.VIEW_SHOW_MESSAGE",e.VIEWS_HELP="WORKSHOP.LAYERS.VIEWS_HELP"}(c=e.LAYERS||(e.LAYERS={})),function(e){e.ADD="WORKSHOP.MATTERTAGS.ADD",e.ADD_FILE="WORKSHOP.MATTERTAGS.ADD_FILE",e.ADD_MATTERTAG_TOOLTIP_MESSAGE="WORKSHOP.MATTERTAGS.ADD_MATTERTAG_TOOLTIP_MESSAGE",e.ADD_TAG_NUDGE="WORKSHOP.MATTERTAGS.ADD_TAG_NUDGE",e.ADD_TAG_TOOLTIP="WORKSHOP.MATTERTAGS.ADD_TAG_TOOLTIP",e.ATTACHMENTS_LABEL="WORKSHOP.MATTERTAGS.ATTACHMENTS_LABEL",e.APPEARANCE_LABEL="WORKSHOP.MATTERTAGS.APPEARANCE_LABEL",e.BACK="WORKSHOP.MATTERTAGS.BACK",e.CANCEL_TAG_TOOLTIP="WORKSHOP.MATTERTAGS.CANCEL_TAG_TOOLTIP",e.COLOR_TOOLTIP_MESSAGE="WORKSHOP.MATTERTAGS.COLOR_TOOLTIP_MESSAGE",e.DEFAULT_LIST_ITEM_TEXT="WORKSHOP.MATTERTAGS.DEFAULT_LIST_ITEM_TEXT",e.DEFAULT_TAG_TITLE="WORKSHOP.MATTERTAGS.DEFAULT_TAG_TITLE",e.DELETE_LIST_ITEM_OPTION_CTA="WORKSHOP.MATTERTAGS.DELETE_LIST_ITEM_OPTION_CTA",e.DELETE_MATTERTAGS_MODAL_MESSAGE="WORKSHOP.MATTERTAGS.DELETE_MATTERTAGS_MODAL_MESSAGE",e.DELETE_MATTERTAGS_MODAL_TITLE="WORKSHOP.MATTERTAGS.DELETE_MATTERTAGS_MODAL_TITLE",e.DELETE_TAG_TOOLTIP="WORKSHOP.MATTERTAGS.DELETE_TAG_TOOLTIP",e.DELETE_TAGS_MODAL_MESSAGE="WORKSHOP.MATTERTAGS.DELETE_TAGS_MODAL_MESSAGE",e.DELETE_TAGS_MODAL_TITLE="WORKSHOP.MATTERTAGS.DELETE_TAGS_MODAL_TITLE",e.DESCRIPTION_PLACEHOLDER="WORKSHOP.MATTERTAGS.DESCRIPTION_PLACEHOLDER",e.DISCARD_MATTERTAG_MODAL_MESSAGE="WORKSHOP.MATTERTAGS.DISCARD_MATTERTAG_MODAL_MESSAGE",e.DISCARD_MATTERTAG_MODAL_TITLE="WORKSHOP.MATTERTAGS.DISCARD_MATTERTAG_MODAL_TITLE",e.DROP_FILES_MESSAGE="WORKSHOP.MATTERTAGS.DROP_FILES_MESSAGE",e.EDIT_BILLBOARD_CANCEL_CTA="WORKSHOP.MATTERTAGS.EDIT_BILLBOARD_CANCEL_CTA",e.EDIT_BILLBOARD_DONE_CTA="WORKSHOP.MATTERTAGS.EDIT_BILLBOARD_DONE_CTA",e.EDIT_LIST_ITEM_OPTION_CTA="WORKSHOP.MATTERTAGS.EDIT_LIST_ITEM_OPTION_CTA",e.EDIT_TAG_TOOLTIP="WORKSHOP.MATTERTAGS.EDIT_TAG_TOOLTIP",e.HIDE_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.MATTERTAGS.HIDE_LIST_ITEM_TOOLTIP_MESSAGE",e.HIDE_TOOLTIP_MESSAGE="WORKSHOP.MATTERTAGS.HIDE_TOOLTIP_MESSAGE",e.KEYWORDS_HELP_MESSAGE="WORKSHOP.MATTERTAGS.KEYWORDS_HELP_MESSAGE",e.KEYWORDS_LABEL="WORKSHOP.MATTERTAGS.KEYWORDS_LABEL",e.KEYWORDS_MAXIMUM_TOKENS_MESSAGE="WORKSHOP.MATTERTAGS.KEYWORDS_MAXIMUM_TOKENS_MESSAGE",e.KEYWORDS_PLACEHOLDER="WORKSHOP.MATTERTAGS.KEYWORDS_PLACEHOLDER",e.LINK_DISABLED_TOOLTIP_MESSAGE="WORKSHOP.MATTERTAGS.LINK_DISABLED_TOOLTIP_MESSAGE",e.LINK_EDITOR_APPLY_CTA="WORKSHOP.MATTERTAGS.LINK_EDITOR_APPLY_CTA",e.LINK_EDITOR_INVALID_TIP="WORKSHOP.MATTERTAGS.LINK_EDITOR_INVALID_TIP",e.LINK_EDITOR_LINK_ADD_LABEL="WORKSHOP.MATTERTAGS.LINK_EDITOR_LINK_ADD_LABEL",e.LINK_EDITOR_LINK_EDIT_LABEL="WORKSHOP.MATTERTAGS.LINK_EDITOR_LINK_EDIT_LABEL",e.LINK_EDITOR_MAX_LENGTH_TIP="WORKSHOP.MATTERTAGS.LINK_EDITOR_MAX_LENGTH_TIP",e.LINK_EDITOR_PREVIEW_TIP="WORKSHOP.MATTERTAGS.LINK_EDITOR_PREVIEW_TIP",e.LINK_EDITOR_REMOVE_TIP="WORKSHOP.MATTERTAGS.LINK_EDITOR_REMOVE_TIP",e.LINK_EDITOR_TEXT_LABEL="WORKSHOP.MATTERTAGS.LINK_EDITOR_TEXT_LABEL",e.LINK_EDITOR_TEXT_PLACEHOLDER="WORKSHOP.MATTERTAGS.LINK_EDITOR_TEXT_PLACEHOLDER",e.LINK_EDITOR_TIP_TEXT="WORKSHOP.MATTERTAGS.LINK_EDITOR_TIP_TEXT",e.LINK_EDITOR_URL_LABEL="WORKSHOP.MATTERTAGS.LINK_EDITOR_URL_LABEL",e.LINK_TOOLTIP_MESSAGE="WORKSHOP.MATTERTAGS.LINK_TOOLTIP_MESSAGE",e.LIST_BY_FLOOR_ALPHABETICAL_LABEL="WORKSHOP.MATTERTAGS.LIST_BY_FLOOR_ALPHABETICAL_LABEL",e.LIST_BY_FLOOR_ORDERED_LABEL="WORKSHOP.MATTERTAGS.LIST_BY_FLOOR_ORDERED_LABEL",e.LIST_IN_TAG_ORDER_LABEL="WORKSHOP.MATTERTAGS.LIST_IN_TAG_ORDER_LABEL",e.LIST_IN_TAG_TITLE_ORDER_LABEL="WORKSHOP.MATTERTAGS.LIST_IN_TAG_TITLE_ORDER_LABEL",e.LIST_SORT_TAG_ORDER="WORKSHOP.MATTERTAGS.LIST_SORT_TAG_ORDER",e.LIST_SORT_TAG_TITLE="WORKSHOP.MATTERTAGS.LIST_SORT_TAG_TITLE",e.MAX_ATTACHMENTS_MESSAGE="WORKSHOP.MATTERTAGS.MAX_ATTACHMENTS_MESSAGE",e.MEDIA_LINK_APPLY_CTA="WORKSHOP.MATTERTAGS.MEDIA_LINK_APPLY_CTA",e.MEDIA_LINK_ERROR_MESSAGE="WORKSHOP.MATTERTAGS.MEDIA_LINK_ERROR_MESSAGE",e.MEDIA_LINK_HELP_LINK="WORKSHOP.MATTERTAGS.MEDIA_LINK_HELP_LINK",e.MEDIA_LINK_INVALID_URL_MESSAGE="WORKSHOP.MATTERTAGS.MEDIA_LINK_INVALID_URL_MESSAGE",e.MEDIA_LINK_LABEL="WORKSHOP.MATTERTAGS.MEDIA_LINK_LABEL",e.MEDIA_LINK_LOADING_MESSAGE="WORKSHOP.MATTERTAGS.MEDIA_LINK_LOADING_MESSAGE",e.MEDIA_LINK_SUPPORTED_FORMATS_LINK="WORKSHOP.MATTERTAGS.MEDIA_LINK_SUPPORTED_FORMATS_LINK",e.MEDIA_TOOLTIP_MESSAGE="WORKSHOP.MATTERTAGS.MEDIA_TOOLTIP_MESSAGE",e.MOBILE_OVERLAY_MESSAGE="WORKSHOP.MATTERTAGS.MOBILE_OVERLAY_MESSAGE",e.MOBILE_REORDER_MODAL_MESSAGE="WORKSHOP.MATTERTAGS.MOBILE_REORDER_MODAL_MESSAGE",e.MOBILE_REORDER_MODAL_TITLE="WORKSHOP.MATTERTAGS.MOBILE_REORDER_MODAL_TITLE",e.MULTI_FLOOR_EMPTY_MESSAGE="WORKSHOP.MATTERTAGS.MULTI_FLOOR_EMPTY_MESSAGE",e.NUM_TYPE="WORKSHOP.MATTERTAGS.NUM_TYPE",e.SAVE="WORKSHOP.MATTERTAGS.SAVE",e.SAVE_PROCESSING="WORKSHOP.MATTERTAGS.SAVE_PROCESSING",e.SAVE_INVALID="WORKSHOP.MATTERTAGS.SAVE_INVALID",e.SELECTED_TAGS="WORKSHOP.MATTERTAGS.SELECTED_TAGS",e.SHOW_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.MATTERTAGS.SHOW_LIST_ITEM_TOOLTIP_MESSAGE",e.SHOW_STEM_LABEL="WORKSHOP.MATTERTAGS.SHOW_STEM_LABEL",e.SHOW_TOOLTIP_MESSAGE="WORKSHOP.MATTERTAGS.SHOW_TOOLTIP_MESSAGE",e.SINGLE_FLOOR_EMPTY_MESSAGE="WORKSHOP.MATTERTAGS.SINGLE_FLOOR_EMPTY_MESSAGE",e.STEM_SLIDER_RESET_CTA="WORKSHOP.MATTERTAGS.STEM_SLIDER_RESET_CTA",e.STEM_TOOLTIP_MESSAGE="WORKSHOP.MATTERTAGS.STEM_TOOLTIP_MESSAGE",e.SUPPORTED_FORMATS_MESSAGE="WORKSHOP.MATTERTAGS.SUPPORTED_FORMATS_MESSAGE",e.TAG_NUM_TYPE="WORKSHOP.MATTERTAGS.TAG_NUM_TYPE",e.TAG_REORDER_ENTER_LABEL="WORKSHOP.MATTERTAGS.TAG_REORDER_ENTER_LABEL",e.TAG_REORDER_EXIT_LABEL="WORKSHOP.MATTERTAGS.TAG_REORDER_EXIT_LABEL",e.TAG_RESET_ORDER="WORKSHOP.MATTERTAGS.TAG_RESET_ORDER",e.TAG_TYPE="WORKSHOP.MATTERTAGS.TAG_TYPE",e.TAGS_EMPTY_MULTI_FLOOR_MESSAGE="WORKSHOP.MATTERTAGS.TAGS_EMPTY_MULTI_FLOOR_MESSAGE",e.TAGS_EMPTY_SINGLE_FLOOR_MESSAGE="WORKSHOP.MATTERTAGS.TAGS_EMPTY_SINGLE_FLOOR_MESSAGE",e.TAGS_HIDE_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.MATTERTAGS.TAGS_HIDE_LIST_ITEM_TOOLTIP_MESSAGE",e.TAGS_ORDERED_BY_CUSTOM_LABEL="WORKSHOP.MATTERTAGS.TAGS_ORDERED_BY_CUSTOM_LABEL",e.TAGS_ORDERED_BY_LOCATION_LABEL="WORKSHOP.MATTERTAGS.TAGS_ORDERED_BY_LOCATION_LABEL",e.TAGS_RESET_MODAL_BODY="WORKSHOP.MATTERTAGS.TAGS_RESET_MODAL_BODY",e.TAGS_RESET_MODAL_TITLE="WORKSHOP.MATTERTAGS.TAGS_RESET_MODAL_TITLE",e.TAGS_SHOW_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.MATTERTAGS.TAGS_SHOW_LIST_ITEM_TOOLTIP_MESSAGE",e.TITLE_DESC_LABEL="WORKSHOP.MATTERTAGS.TITLE_DESC_LABEL",e.TITLE_PLACEHOLDER="WORKSHOP.MATTERTAGS.TITLE_PLACEHOLDER",e.TYPE="WORKSHOP.MATTERTAGS.TYPE",e.UPLOAD_FILE="WORKSHOP.MATTERTAGS.UPLOAD_FILE",e.UPLOAD_IN_PROGRESS="WORKSHOP.MATTERTAGS.UPLOAD_IN_PROGRESS"}(u=e.MATTERTAGS||(e.MATTERTAGS={})),function(e){e.TYPE="WORKSHOP.MEASUREMENTS.TYPE",e.NUM_TYPE="WORKSHOP.MEASUREMENTS.NUM_TYPE",e.HIDE_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.MEASUREMENTS.HIDE_LIST_ITEM_TOOLTIP_MESSAGE",e.SHOW_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.MEASUREMENTS.SHOW_LIST_ITEM_TOOLTIP_MESSAGE",e.OTHER_GROUP_LABEL="WORKSHOP.MEASUREMENTS.OTHER_GROUP_LABEL",e.RENAME_LIST_ITEM_OPTION_CTA="WORKSHOP.MEASUREMENTS.RENAME_LIST_ITEM_OPTION_CTA",e.DELETE_LIST_ITEM_OPTION_CTA="WORKSHOP.MEASUREMENTS.DELETE_LIST_ITEM_OPTION_CTA",e.LIST_ITEM_INPUT_PLACEHOLDER="WORKSHOP.MEASUREMENTS.LIST_ITEM_INPUT_PLACEHOLDER",e.MULTI_FLOOR_EMPTY_MESSAGE="WORKSHOP.MEASUREMENTS.MULTI_FLOOR_EMPTY_MESSAGE",e.SINGLE_FLOOR_EMPTY_MESSAGE="WORKSHOP.MEASUREMENTS.SINGLE_FLOOR_EMPTY_MESSAGE",e.SELECTED_MEASUREMENTS="WORKSHOP.MEASUREMENTS.SELECTED_MEASUREMENTS",e.GROSS_AREA_TOOLTIP_MESSAGE="WORKSHOP.MEASUREMENTS.GROSS_AREA_TOOLTIP_MESSAGE"}(h=e.MEASUREMENTS||(e.MEASUREMENTS={})),function(e){e.ERROR_TITLE="WORKSHOP.MODAL.ERROR_TITLE",e.SAVING_ERROR_TITLE="WORKSHOP.MODAL.SAVING_ERROR_TITLE",e.SAVING_ERROR_MESSAGE="WORKSHOP.MODAL.SAVING_ERROR_MESSAGE",e.NO="WORKSHOP.MODAL.NO",e.YES="WORKSHOP.MODAL.YES",e.CANCEL="WORKSHOP.MODAL.CANCEL",e.OK="WORKSHOP.MODAL.OK",e.DISCARD="WORKSHOP.MODAL.DISCARD",e.DELETE="WORKSHOP.MODAL.DELETE",e.SAVE="WORKSHOP.MODAL.SAVE"}(m=e.MODAL||(e.MODAL={})),function(e){e.HAPPINESS_TITLE="WORKSHOP.MODEL_RATING.HAPPINESS_TITLE",e.HAPPINESS_BODY="WORKSHOP.MODEL_RATING.HAPPINESS_BODY",e.QUALITY_ISSUES_TITLE="WORKSHOP.MODEL_RATING.QUALITY_ISSUES_TITLE",e.QUALITY_ISSUES_LIGHTING="WORKSHOP.MODEL_RATING.QUALITY_ISSUES_LIGHTING",e.QUALITY_ISSUES_3D_MESH="WORKSHOP.MODEL_RATING.QUALITY_ISSUES_3D_MESH",e.QUALITY_ISSUES_COLORING="WORKSHOP.MODEL_RATING.QUALITY_ISSUES_COLORING",e.QUALITY_ISSUES_IMAGE_QUALITY="WORKSHOP.MODEL_RATING.QUALITY_ISSUES_IMAGE_QUALITY",e.NAVIGATION_ISSUES_TITLE="WORKSHOP.MODEL_RATING.NAVIGATION_ISSUES_TITLE",e.NAVIGATION_ISSUES_BLOCKED_DOORWAYS="WORKSHOP.MODEL_RATING.NAVIGATION_ISSUES_BLOCKED_DOORWAYS",e.NAVIGATION_ISSUES_OBSTRUCTIONS="WORKSHOP.MODEL_RATING.NAVIGATION_ISSUES_OBSTRUCTIONS",e.NAVIGATION_ISSUES_MISALIGNED_SCANS="WORKSHOP.MODEL_RATING.NAVIGATION_ISSUES_MISALIGNED_SCANS",e.NAVIGATION_ISSUES_FLOOR_SEPARATION="WORKSHOP.MODEL_RATING.NAVIGATION_ISSUES_FLOOR_SEPARATION",e.NAVIGATION_ISSUES_DISAPPEARING_FLOORS="WORKSHOP.MODEL_RATING.NAVIGATION_ISSUES_DISAPPEARING_FLOORS",e.FEEDBACK_TITLE="WORKSHOP.MODEL_RATING.FEEDBACK_TITLE",e.FEEDBACK_LABEL="WORKSHOP.MODEL_RATING.FEEDBACK_LABEL",e.THANK_YOU_HEADING="WORKSHOP.MODEL_RATING.THANK_YOU_HEADING",e.THANK_YOU_BODY="WORKSHOP.MODEL_RATING.THANK_YOU_BODY",e.THANK_YOU_CTA="WORKSHOP.MODEL_RATING.THANK_YOU_CTA",e.THANK_YOU_CTA_LINK_TEXT="WORKSHOP.MODEL_RATING.THANK_YOU_CTA_LINK_TEXT",e.SAVE="WORKSHOP.MODEL_RATING.SAVE",e.NEXT="WORKSHOP.MODEL_RATING.NEXT",e.PROGRESS="WORKSHOP.MODEL_RATING.PROGRESS"}(p=e.MODEL_RATING||(e.MODEL_RATING={})),function(e){e.SEARCH_GROUP_HEADER="WORKSHOP.OBJECT_TAG_SUGGESTION.SEARCH_GROUP_HEADER",e.SEARCH_GROUP_HIDE_ALL="WORKSHOP.OBJECT_TAG_SUGGESTION.SEARCH_GROUP_HIDE_ALL",e.SEARCH_GROUP_SHOW_ALL="WORKSHOP.OBJECT_TAG_SUGGESTION.SEARCH_GROUP_SHOW_ALL",e.SEARCH_GROUP_DELETE_ALL="WORKSHOP.OBJECT_TAG_SUGGESTION.SEARCH_GROUP_DELETE_ALL",e.SEARCH_ITEM_HIDE_TOOLTIP="WORKSHOP.OBJECT_TAG_SUGGESTION.SEARCH_ITEM_HIDE_TOOLTIP",e.SEARCH_ITEM_SHOW_TOOLTIP="WORKSHOP.OBJECT_TAG_SUGGESTION.SEARCH_ITEM_SHOW_TOOLTIP",e.SEARCH_ITEM_EDIT="WORKSHOP.OBJECT_TAG_SUGGESTION.SEARCH_ITEM_EDIT",e.SEARCH_ITEM_DELETE="WORKSHOP.OBJECT_TAG_SUGGESTION.SEARCH_ITEM_DELETE",e.SHOW_ONLY_IN_SEARCH="WORKSHOP.OBJECT_TAG_SUGGESTION.SHOW_ONLY_IN_SEARCH"}(E=e.OBJECT_TAG_SUGGESTION||(e.OBJECT_TAG_SUGGESTION={})),function(e){e.TYPE="WORKSHOP.PHOTOS.TYPE",e.NUM_TYPE="WORKSHOP.PHOTOS.NUM_TYPE",e.ADD_PHOTOS_CTA="WORKSHOP.PHOTOS.ADD_PHOTOS_CTA",e.ADDING_PHOTOS_CTA="WORKSHOP.PHOTOS.ADDING_PHOTOS_CTA",e.CATURE_PHOTO="WORKSHOP.PHOTOS.CATURE_PHOTO",e.BACK_TO_PHOTOS="WORKSHOP.PHOTOS.BACK_TO_PHOTOS",e.MODAL_TITLE="WORKSHOP.PHOTOS.MODAL_TITLE",e.NUM_SELECTED="WORKSHOP.PHOTOS.NUM_SELECTED",e.SELECT_ALL_CTA="WORKSHOP.PHOTOS.SELECT_ALL_CTA",e.UNSELECT_ALL_CTA="WORKSHOP.PHOTOS.UNSELECT_ALL_CTA",e.UPDATED_TOAST_MESSAGE="WORKSHOP.PHOTOS.UPDATED_TOAST_MESSAGE",e.SAVING_TOAST_MESSAGE="WORKSHOP.PHOTOS.SAVING_TOAST_MESSAGE",e.SAVED_TOAST_MESSAGE="WORKSHOP.PHOTOS.SAVED_TOAST_MESSAGE",e.SAVED_TOAST_CTA="WORKSHOP.PHOTOS.SAVED_TOAST_CTA",e.ERROR_MODAL_TITLE="WORKSHOP.PHOTOS.ERROR_MODAL_TITLE",e.ERROR_MODAL_MESSAGE="WORKSHOP.PHOTOS.ERROR_MODAL_MESSAGE",e.CAMERA_PITCH_RESET_MESSAGE="WORKSHOP.PHOTOS.CAMERA_PITCH_RESET_MESSAGE",e.ZOOM_RESET_MESSAGE="WORKSHOP.PHOTOS.ZOOM_RESET_MESSAGE",e.ZOOM_IN_MESSAGE="WORKSHOP.PHOTOS.ZOOM_IN_MESSAGE",e.ZOOM_OUT_MESSAGE="WORKSHOP.PHOTOS.ZOOM_OUT_MESSAGE",e.CANNOT_SAVE_TOOLTIP_MESSAGE="WORKSHOP.PHOTOS.CANNOT_SAVE_TOOLTIP_MESSAGE",e.CANNOT_SAVE_SCAN_NUMBER_TOOLTIP_MESSAGE="WORKSHOP.PHOTOS.CANNOT_SAVE_SCAN_NUMBER_TOOLTIP_MESSAGE",e.CANNOT_SAVE_TOOLTIP_TITLE="WORKSHOP.PHOTOS.CANNOT_SAVE_TOOLTIP_TITLE",e.CANNOT_SAVE_TOOLTIP_CTA="WORKSHOP.PHOTOS.CANNOT_SAVE_TOOLTIP_CTA",e.SETTINGS_TOOLTIP_MESSAGE="WORKSHOP.PHOTOS.SETTINGS_TOOLTIP_MESSAGE",e.ASSETS_SETTING_LABEL="WORKSHOP.PHOTOS.ASSETS_SETTING_LABEL",e.SHOW_GRID_SETTING_LABEL="WORKSHOP.PHOTOS.SHOW_GRID_SETTING_LABEL",e.SNAPSHOT_ERROR_TOAST_MESSAGE="WORKSHOP.PHOTOS.SNAPSHOT_ERROR_TOAST_MESSAGE",e.SNAPSHOT_ERROR_TOAST_CTA="WORKSHOP.PHOTOS.SNAPSHOT_ERROR_TOAST_CTA",e.PHOTO_VIEWER="WORKSHOP.PHOTOS.PHOTO_VIEWER",e.PHOTO_MODES="WORKSHOP.PHOTOS.PHOTO_MODES",e.NO_PHOTOS="WORKSHOP.PHOTOS.NO_PHOTOS",e.VIEW_PHOTOS="WORKSHOP.PHOTOS.VIEW_PHOTOS",e.UPDATE_NAME="WORKSHOP.PHOTOS.UPDATE_NAME",e.PHOTO_NAME="WORKSHOP.PHOTOS.PHOTO_NAME"}(S=e.PHOTOS||(e.PHOTOS={})),function(e){e.COLOR_NO_SELECTION_TEXT="WORKSHOP.PINS.COLOR_NO_SELECTION_TEXT",e.COLOR_STEM_EDITOR_TITLE="WORKSHOP.PINS.COLOR_STEM_EDITOR_TITLE",e.ICON_GROUP_RECENT="WORKSHOP.PINS.ICON_GROUP_RECENT",e.ICON_GROUP_IN_SPACE="WORKSHOP.PINS.ICON_GROUP_IN_SPACE",e.ICON_GROUP_PEOPLE="WORKSHOP.PINS.ICON_GROUP_PEOPLE",e.ICON_GROUP_FURNITURE="WORKSHOP.PINS.ICON_GROUP_FURNITURE",e.ICON_GROUP_BUILDINGS="WORKSHOP.PINS.ICON_GROUP_BUILDINGS",e.ICON_GROUP_OBJECTS="WORKSHOP.PINS.ICON_GROUP_OBJECTS",e.ICON_GROUP_SYMBOLS="WORKSHOP.PINS.ICON_GROUP_SYMBOLS",e.ICON_GROUP_CHARACTERS="WORKSHOP.PINS.ICON_GROUP_CHARACTERS",e.ICON_PLACEHOLDER="WORKSHOP.PINS.ICON_PLACEHOLDER",e.SEARCH_NO_RESULTS="WORKSHOP.PINS.SEARCH_NO_RESULTS",e.SEARCH_PLACEHOLDER="WORKSHOP.PINS.SEARCH_PLACEHOLDER"}(O=e.PINS||(e.PINS={})),function(e){e.NUM_TYPE="WORKSHOP.PLUGINS.NUM_TYPE",e.PANEL_TITLE="WORKSHOP.PLUGINS.PANEL_TITLE",e.SAVE_CONFIG="WORKSHOP.PLUGINS.SAVE_CONFIG",e.BACK_TO_ALL="WORKSHOP.PLUGINS.BACK_TO_ALL",e.ENABLED="WORKSHOP.PLUGINS.ENABLED",e.SAVE="WORKSHOP.PLUGINS.SAVE",e.CLOSE="WORKSHOP.PLUGINS.CLOSE"}(g=e.PLUGINS||(e.PLUGINS={})),function(e){e.ADD_LABEL="WORKSHOP.ROOMS.ADD_LABEL",e.APPLY_TO_ALL_VIEWS_ROOMS="WORKSHOP.ROOMS.APPLY_TO_ALL_VIEWS_ROOMS",e.DELETE="WORKSHOP.ROOMS.DELETE",e.AREA_IS_OUTDOORS="WORKSHOP.ROOMS.AREA_IS_OUTDOORS",e.AREA_IS_OUTDOORS_TOOLTIP="WORKSHOP.ROOMS.AREA_IS_OUTDOORS_TOOLTIP",e.ROOM_BOUNDS_SETTINGS="WORKSHOP.ROOMS.ROOM_BOUNDS_SETTINGS",e.ROOM_INACCESSIBLE_INFO="WORKSHOP.ROOMS.ROOM_INACCESSIBLE_INFO",e.ROOM_INCLUDE_IN_AREA="WORKSHOP.ROOMS.ROOM_INCLUDE_IN_AREA",e.ROOM_INCLUDE_IN_AREA_TOOLTIP="WORKSHOP.ROOMS.ROOM_INCLUDE_IN_AREA_TOOLTIP",e.ROOM_MISSING_DIMENSIONS="WORKSHOP.ROOMS.ROOM_MISSING_DIMENSIONS",e.ROOM_MISSING_HEIGHT="WORKSHOP.ROOMS.ROOM_MISSING_HEIGHT",e.DOOR_MISSING_HEIGHT="WORKSHOP.ROOMS.DOOR_MISSING_HEIGHT",e.ROOM_MISSING_INFO="WORKSHOP.ROOMS.ROOM_MISSING_INFO",e.LABEL="WORKSHOP.ROOMS.LABEL",e.RESET_TO_DEFAULT="WORKSHOP.ROOMS.RESET_TO_DEFAULT",e.SELECT="WORKSHOP.ROOMS.SELECT",e.UNDO="WORKSHOP.ROOMS.UNDO",e.NOT_AVAILABLE="WORKSHOP.ROOMS.NOT_AVAILABLE",e.NOT_SET="WORKSHOP.ROOMS.NOT_SET"}(_=e.ROOMS||(e.ROOMS={})),function(e){e.TYPE="WORKSHOP.SCANS.TYPE",e.NUM_TYPE="WORKSHOP.SCANS.NUM_TYPE",e.BATCH_SHOW_CTA="WORKSHOP.SCANS.BATCH_SHOW_CTA",e.BATCH_HIDE_CTA="WORKSHOP.SCANS.BATCH_HIDE_CTA",e.HIDE_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.SCANS.HIDE_LIST_ITEM_TOOLTIP_MESSAGE",e.SHOW_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.SCANS.SHOW_LIST_ITEM_TOOLTIP_MESSAGE",e.LIST_ITEM_TEXT="WORKSHOP.SCANS.LIST_ITEM_TEXT",e.FLOOR_EMPTY_MESSAGE="WORKSHOP.SCANS.FLOOR_EMPTY_MESSAGE",e.NO_HIDE_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.SCANS.NO_HIDE_LIST_ITEM_TOOLTIP_MESSAGE",e.HLR_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.SCANS.HLR_LIST_ITEM_TOOLTIP_MESSAGE",e.HLR_IN_OTHER_VIEWS="WORKSHOP.SCANS.HLR_IN_OTHER_VIEWS",e.START_LOCATION_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.SCANS.START_LOCATION_LIST_ITEM_TOOLTIP_MESSAGE",e.START_LOCATION_SCAN_IN_OTHER_VIEWS="WORKSHOP.SCANS.START_LOCATION_SCAN_IN_OTHER_VIEWS",e.OVERLAY_HIDE_CTA="WORKSHOP.SCANS.OVERLAY_HIDE_CTA",e.OVERLAY_SHOW_CTA="WORKSHOP.SCANS.OVERLAY_SHOW_CTA",e.OVERLAY_HIDE_SCAN_CTA="WORKSHOP.SCANS.OVERLAY_HIDE_SCAN_CTA",e.OVERLAY_SHOW_SCAN_CTA="WORKSHOP.SCANS.OVERLAY_SHOW_SCAN_CTA",e.OVERLAY_PANORAMA_INFO="WORKSHOP.SCANS.OVERLAY_PANORAMA_INFO",e.OVERLAY_INFO="WORKSHOP.SCANS.OVERLAY_INFO",e.START_LOCATION_TOOLTIP_TITLE="WORKSHOP.SCANS.START_LOCATION_TOOLTIP_TITLE",e.START_LOCATION_TOOLTIP_MESSAGE="WORKSHOP.SCANS.START_LOCATION_TOOLTIP_MESSAGE",e.START_LOCATION_TOOLTIP_CTA="WORKSHOP.SCANS.START_LOCATION_TOOLTIP_CTA",e.REMOVE_HLR_MODAL_TITLE="WORKSHOP.SCANS.REMOVE_HLR_MODAL_TITLE",e.REMOVE_HLR_MODAL_MESSAGE="WORKSHOP.SCANS.REMOVE_HLR_MODAL_MESSAGE",e.REMOVE_HLR_MODAL_BATCH_MESSAGE="WORKSHOP.SCANS.REMOVE_HLR_MODAL_BATCH_MESSAGE",e.REMOVE_HLR_MODAL_WARNING="WORKSHOP.SCANS.REMOVE_HLR_MODAL_WARNING",e.REMOVE_SCANS_FROM_HLR_MODAL_TITLE="WORKSHOP.SCANS.REMOVE_SCANS_FROM_HLR_MODAL_TITLE",e.REMOVE_SCAN_FROM_HLR_MODAL_MESSAGE="WORKSHOP.SCANS.REMOVE_SCAN_FROM_HLR_MODAL_MESSAGE",e.REMOVE_BATCH_FROM_HLR_MODAL_SCANS_MESSAGE="WORKSHOP.SCANS.REMOVE_BATCH_FROM_HLR_MODAL_SCANS_MESSAGE",e.REMOVE_BATCH_FROM_HLR_MODAL_HIGHLIGHTS_MESSAGE="WORKSHOP.SCANS.REMOVE_BATCH_FROM_HLR_MODAL_HIGHLIGHTS_MESSAGE"}(T=e.SCANS||(e.SCANS={})),function(e){e.ADVANCED_SPACE_SEARCH_LABEL="WORKSHOP.SETTINGS.ADVANCED_SPACE_SEARCH_LABEL",e.ADVANCED_SPACE_SEARCH_MESSAGE="WORKSHOP.SETTINGS.ADVANCED_SPACE_SEARCH_MESSAGE",e.ADVANCED_DOLLHOUSE_LABEL="WORKSHOP.SETTINGS.ADVANCED_DOLLHOUSE_LABEL",e.ADVANCED_DOLLHOUSE_MESSAGE="WORKSHOP.SETTINGS.ADVANCED_DOLLHOUSE_MESSAGE",e.ADVANCED_FLOORPLAN_LABEL="WORKSHOP.SETTINGS.ADVANCED_FLOORPLAN_LABEL",e.ADVANCED_FLOORPLAN_MESSAGE="WORKSHOP.SETTINGS.ADVANCED_FLOORPLAN_MESSAGE",e.ADVANCED_FLOOR_SELECTION_LABEL="WORKSHOP.SETTINGS.ADVANCED_FLOOR_SELECTION_LABEL",e.ADVANCED_FLOOR_SELECTION_MESSAGE="WORKSHOP.SETTINGS.ADVANCED_FLOOR_SELECTION_MESSAGE",e.ADVANCED_HEADER="WORKSHOP.SETTINGS.ADVANCED_HEADER",e.ADVANCED_MEASUREMENT_MODE_LABEL="WORKSHOP.SETTINGS.ADVANCED_MEASUREMENT_MODE_LABEL",e.ADVANCED_MEASUREMENT_MODE_MENU_LABEL="WORKSHOP.SETTINGS.ADVANCED_MEASUREMENT_MODE_MENU_LABEL",e.ADVANCED_MEASUREMENT_MODE_MESSAGE="WORKSHOP.SETTINGS.ADVANCED_MEASUREMENT_MODE_MESSAGE",e.ADVANCED_ROOM_LABELS_LABEL="WORKSHOP.SETTINGS.ADVANCED_ROOM_LABELS_LABEL",e.ADVANCED_ROOM_LABELS_MESSAGE="WORKSHOP.SETTINGS.ADVANCED_ROOM_LABELS_MESSAGE",e.ADVANCED_ROOM_LABELS_MENU_LABEL="WORKSHOP.SETTINGS.ADVANCED_ROOM_LABELS_MENU_LABEL",e.ADVANCED_CAMERA_REMOVAL_LABEL="WORKSHOP.SETTINGS.ADVANCED_CAMERA_REMOVAL_LABEL",e.ADVANCED_CAMERA_REMOVAL_MESSAGE="WORKSHOP.SETTINGS.ADVANCED_CAMERA_REMOVAL_MESSAGE",e.ADVANCED_SETTINGS_ERROR="WORKSHOP.SETTINGS.ADVANCED_SETTINGS_ERROR",e.HIDE_LABELS_IN_DOLLHOUSE_OPTION="WORKSHOP.SETTINGS.HIDE_LABELS_IN_DOLLHOUSE_OPTION",e.HIDE_SAVED_MEASUREMENTS_OPTION="WORKSHOP.SETTINGS.HIDE_SAVED_MEASUREMENTS_OPTION",e.HLR_OPTION_LABEL="WORKSHOP.SETTINGS.HLR_OPTION_LABEL",e.HLR_OPTION_MESSAGE="WORKSHOP.SETTINGS.HLR_OPTION_MESSAGE",e.NAV_OPTION_ADVANCED="WORKSHOP.SETTINGS.NAV_OPTION_ADVANCED",e.NAV_OPTION_PRESENTATION="WORKSHOP.SETTINGS.NAV_OPTION_PRESENTATION",e.NAV_OPTION_TOUR_HLR="WORKSHOP.SETTINGS.NAV_OPTION_TOUR_HLR",e.NAV_OPTION_UNITS="WORKSHOP.SETTINGS.NAV_OPTION_UNITS",e.SHOW_SAVED_MEASUREMENTS_OPTION="WORKSHOP.SETTINGS.SHOW_SAVED_MEASUREMENTS_OPTION",e.SHOW_LABELS_IN_DOLLHOUSE_OPTION="WORKSHOP.SETTINGS.SHOW_LABELS_IN_DOLLHOUSE_OPTION",e.PRESENTATION_BACKGROUND_BLACK_LABEL="WORKSHOP.SETTINGS.PRESENTATION_BACKGROUND_BLACK_LABEL",e.PRESENTATION_BACKGROUND_GREY_LABEL="WORKSHOP.SETTINGS.PRESENTATION_BACKGROUND_GREY_LABEL",e.PRESENTATION_BACKGROUND_HEADER="WORKSHOP.SETTINGS.PRESENTATION_BACKGROUND_HEADER",e.PRESENTATION_BACKGROUND_SUBHEADER="WORKSHOP.SETTINGS.PRESENTATION_BACKGROUND_SUBHEADER",e.PRESENTATION_BACKGROUND_WHITE_LABEL="WORKSHOP.SETTINGS.PRESENTATION_BACKGROUND_WHITE_LABEL",e.PRESENTATION_HEADER="WORKSHOP.SETTINGS.PRESENTATION_HEADER",e.PRESENTATION_INFORMATION_EVERYTHING_LABEL="WORKSHOP.SETTINGS.PRESENTATION_INFORMATION_EVERYTHING_LABEL",e.PRESENTATION_INFORMATION_EVERYTHING_MESSAGE="WORKSHOP.SETTINGS.PRESENTATION_INFORMATION_EVERYTHING_MESSAGE",e.PRESENTATION_INFORMATION_COMPACT_LABEL="WORKSHOP.SETTINGS.PRESENTATION_INFORMATION_COMPACT_LABEL",e.PRESENTATION_INFORMATION_COMPACT_MESSAGE="WORKSHOP.SETTINGS.PRESENTATION_INFORMATION_COMPACT_MESSAGE",e.PRESENTATION_INFORMATION_HEADER="WORKSHOP.SETTINGS.PRESENTATION_INFORMATION_HEADER",e.PRESENTATION_INFORMATION_NONE_LABEL="WORKSHOP.SETTINGS.PRESENTATION_INFORMATION_NONE_LABEL",e.ROOM_BOUNDS_TOGGLE_LABEL="WORKSHOP.SETTINGS.ROOM_BOUNDS_TOGGLE_LABEL",e.ROOM_BOUNDS_TOGGLE_MESSAGE_INFO="WORKSHOP.SETTINGS.ROOM_BOUNDS_TOGGLE_MESSAGE_INFO",e.ROOM_BOUNDS_TOGGLE_MESSAGE_DISCOVER="WORKSHOP.SETTINGS.ROOM_BOUNDS_TOGGLE_MESSAGE_DISCOVER",e.ROOM_BOUND_TOGGLE_IN_TOOL="WORKSHOP.SETTINGS.ROOM_BOUND_TOGGLE_IN_TOOL",e.TOUR_AND_HLR_HEADER="WORKSHOP.SETTINGS.TOUR_AND_HLR_HEADER",e.TOUR_DEFAULT_SETTING_LOCATION="WORKSHOP.SETTINGS.TOUR_DEFAULT_SETTING_LOCATION",e.TOUR_MODE_LEGACY_LABEL="WORKSHOP.SETTINGS.TOUR_MODE_LEGACY_LABEL",e.TOUR_MODE_LEGACY_MESSAGE="WORKSHOP.SETTINGS.TOUR_MODE_LEGACY_MESSAGE",e.TOUR_MODE_NONE_LABEL="WORKSHOP.SETTINGS.TOUR_MODE_NONE_LABEL",e.TOUR_MODE_STORY_LABEL="WORKSHOP.SETTINGS.TOUR_MODE_STORY_LABEL",e.TOUR_MODE_STORY_MESSAGE="WORKSHOP.SETTINGS.TOUR_MODE_STORY_MESSAGE",e.TOUR_OPTION_LABEL="WORKSHOP.SETTINGS.TOUR_OPTION_LABEL",e.TOUR_OPTION_MESSAGE="WORKSHOP.SETTINGS.TOUR_OPTION_MESSAGE",e.UNITS_HEADER="WORKSHOP.SETTINGS.UNITS_HEADER",e.UNITS_SUBHEADER="WORKSHOP.SETTINGS.UNITS_SUBHEADER"}(A=e.SETTINGS||(e.SETTINGS={})),function(e){e.ENABLED_TOOLTIP_TITLE="WORKSHOP.START_LOCATION.ENABLED_TOOLTIP_TITLE",e.DISABLED_TOOLTIP_TITLE="WORKSHOP.START_LOCATION.DISABLED_TOOLTIP_TITLE",e.HIDDEN_SWEEP_MESSAGE="WORKSHOP.START_LOCATION.HIDDEN_SWEEP_MESSAGE",e.UNPLACED_360_MESSAGE="WORKSHOP.START_LOCATION.UNPLACED_360_MESSAGE",e.ENABLED_MESSAGE="WORKSHOP.START_LOCATION.ENABLED_MESSAGE",e.TOOLTIP_CTA="WORKSHOP.START_LOCATION.TOOLTIP_CTA",e.SET_NEW_LOCATION_CTA="WORKSHOP.START_LOCATION.SET_NEW_LOCATION_CTA",e.SETTING_NEW_LOCATION_CTA="WORKSHOP.START_LOCATION.SETTING_NEW_LOCATION_CTA",e.THUMBNAIL_PREVIEW_CTA="WORKSHOP.START_LOCATION.THUMBNAIL_PREVIEW_CTA",e.TAG_ORDER_RESET_TITLE="WORKSHOP.START_LOCATION.TAG_ORDER_RESET_TITLE",e.TAG_ORDER_RESET_MESSAGE="WORKSHOP.START_LOCATION.TAG_ORDER_RESET_MESSAGE",e.TAG_ORDER_RESET_HELP_LINK="WORKSHOP.START_LOCATION.TAG_ORDER_RESET_HELP_LINK",e.TAG_ORDER_RESET_CONFIRM="WORKSHOP.START_LOCATION.TAG_ORDER_RESET_CONFIRM",e.TAG_ORDER_RESET_CANCEL="WORKSHOP.START_LOCATION.TAG_ORDER_RESET_CANCEL"}(v=e.START_LOCATION||(e.START_LOCATION={})),function(e){e.NUM_TYPE="WORKSHOP.TRIM.NUM_TYPE",e.HIDE_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.TRIM.HIDE_LIST_ITEM_TOOLTIP_MESSAGE",e.SHOW_LIST_ITEM_TOOLTIP_MESSAGE="WORKSHOP.TRIM.SHOW_LIST_ITEM_TOOLTIP_MESSAGE",e.DELETE_LIST_ITEM_OPTION_CTA="WORKSHOP.TRIM.DELETE_LIST_ITEM_OPTION_CTA",e.RENAME_LIST_ITEM_OPTION_CTA="WORKSHOP.TRIM.RENAME_LIST_ITEM_OPTION_CTA",e.LIST_ITEM_INPUT_PLACEHOLDER="WORKSHOP.TRIM.LIST_ITEM_INPUT_PLACEHOLDER",e.DEFAULT_NAME="WORKSHOP.TRIM.DEFAULT_NAME",e.ALL_FLOORS="WORKSHOP.TRIM.ALL_FLOORS",e.EMPTY_FLOOR_MESSAGE="WORKSHOP.TRIM.EMPTY_FLOOR_MESSAGE",e.SIDE_POSE_CTA="WORKSHOP.TRIM.SIDE_POSE_CTA",e.TOP_POSE_CTA="WORKSHOP.TRIM.TOP_POSE_CTA",e.PERSPECTIVE_POSE_CTA="WORKSHOP.TRIM.PERSPECTIVE_POSE_CTA",e.SIDE_POSE_TOOLTIP="WORKSHOP.TRIM.SIDE_POSE_TOOLTIP",e.LEFT_SIDE_POSE_TOOLTIP="WORKSHOP.TRIM.LEFT_SIDE_POSE_TOOLTIP",e.RIGHT_SIDE_POSE_TOOLTIP="WORKSHOP.TRIM.RIGHT_SIDE_POSE_TOOLTIP",e.TOP_POSE_TOOLTIP="WORKSHOP.TRIM.TOP_POSE_TOOLTIP",e.PERSPECTIVE_POSE_TOOLTIP="WORKSHOP.TRIM.PERSPECTIVE_POSE_TOOLTIP",e.UNABLE_TO_SAVE_CHANGES_ERROR_MESSAGE="WORKSHOP.TRIM.UNABLE_TO_SAVE_CHANGES_ERROR_MESSAGE",e.ADD_INDIVIDUAL_FLOOR_TRIM_TOOLTIP="WORKSHOP.TRIM.ADD_INDIVIDUAL_FLOOR_TRIM_TOOLTIP",e.ADD_ALL_FLOORS_TRIM_TOOLTIP="WORKSHOP.TRIM.ADD_ALL_FLOORS_TRIM_TOOLTIP",e.KEEP_TOGGLE="WORKSHOP.TRIM.KEEP_TOGGLE",e.REMOVE_TOGGLE="WORKSHOP.TRIM.REMOVE_TOGGLE",e.TOOL_ROTATION_CTA="WORKSHOP.TRIM.TOOL_ROTATION_CTA",e.TOOL_POSITION_CTA="WORKSHOP.TRIM.TOOL_POSITION_CTA",e.TOOL_SCALE_CTA="WORKSHOP.TRIM.TOOL_SCALE_CTA",e.TOOL_ROTATION_TOOLTIP="WORKSHOP.TRIM.TOOL_ROTATION_TOOLTIP",e.TOOL_POSITION_TOOLTIP="WORKSHOP.TRIM.TOOL_POSITION_TOOLTIP",e.TOOL_SCALE_TOOLTIP="WORKSHOP.TRIM.TOOL_SCALE_TOOLTIP",e.DELETE_TRIM="WORKSHOP.TRIM.DELETE_TRIM",e.COMPLETE_TRIM="WORKSHOP.TRIM.COMPLETE_TRIM",e.ADD_TRIM="WORKSHOP.TRIM.ADD_TRIM",e.RESET_ROTATION="WORKSHOP.TRIM.RESET_ROTATION",e.HIDE_PANO_LIST_ITEM_TOOLTIP="WORKSHOP.TRIM.HIDE_PANO_LIST_ITEM_TOOLTIP",e.SHOW_PANO_LIST_ITEM_TOOLTIP="WORKSHOP.TRIM.SHOW_PANO_LIST_ITEM_TOOLTIP",e.MOVE_TRIM_ALL_FLOORS="WORKSHOP.TRIM.MOVE_TRIM_ALL_FLOORS",e.SIZE_TO_DOORWAY="WORKSHOP.TRIM.SIZE_TO_DOORWAY",e.FIT_DOORWAY="WORKSHOP.TRIM.FIT_DOORWAY"}(f=e.TRIM||(e.TRIM={})),function(e){e.NUM_TYPE="WORKSHOP.VIEWS_360.NUM_TYPE",e.START_LOCATION_REMOVAL_MESSAGE="WORKSHOP.VIEWS_360.START_LOCATION_REMOVAL_MESSAGE",e.START_LOCATION_MARKER_MESSAGE="WORKSHOP.VIEWS_360.START_LOCATION_MARKER_MESSAGE",e.START_LOCATION_IN_OTHER_VIEWS="WORKSHOP.VIEWS_360.START_LOCATION_IN_OTHER_VIEWS",e.DEFAULT_NAME="WORKSHOP.VIEWS_360.DEFAULT_NAME",e.OVERLAY_MESSAGE="WORKSHOP.VIEWS_360.OVERLAY_MESSAGE",e.OVERLAY_INFO_MISSING_SWEEP="WORKSHOP.VIEWS_360.OVERLAY_INFO_MISSING_SWEEP",e.OVERLAY_INFO_CURRENT_SWEEP="WORKSHOP.VIEWS_360.OVERLAY_INFO_CURRENT_SWEEP",e.OVERLAY_INFO_SELECTED_SWEEP="WORKSHOP.VIEWS_360.OVERLAY_INFO_SELECTED_SWEEP",e.ROTATE_TOOLTIP_TITLE="WORKSHOP.VIEWS_360.ROTATE_TOOLTIP_TITLE",e.ROTATE_TOOLTIP_MESSAGE="WORKSHOP.VIEWS_360.ROTATE_TOOLTIP_MESSAGE",e.ROTATE_TOOLTIP_CTA="WORKSHOP.VIEWS_360.ROTATE_TOOLTIP_CTA",e.UNPLACED_CARD_MESSAGE="WORKSHOP.VIEWS_360.UNPLACED_CARD_MESSAGE",e.RENAME_ITEM_OPTION_CTA="WORKSHOP.VIEWS_360.RENAME_ITEM_OPTION_CTA",e.REMOVE_ITEM_OPTION_CTA="WORKSHOP.VIEWS_360.REMOVE_ITEM_OPTION_CTA",e.NO_VIEWS_MESSAGE="WORKSHOP.VIEWS_360.NO_VIEWS_MESSAGE"}(N=e.VIEWS_360||(e.VIEWS_360={})),function(e){e.TOAST_MESSAGE="WORKSHOP.VR.TOAST_MESSAGE",e.TOAST_CTA="WORKSHOP.VR.TOAST_CTA"}(I=e.VR||(e.VR={})),function(e){e.DEFURN_BULLET1="DEFURN_BULLET1",e.DEFURN_BULLET2="DEFURN_BULLET2",e.DEFURN_BULLET3="DEFURN_BULLET3",e.DEFURN_BULLET4="DEFURN_BULLET4",e.DEFURN_COMPLETE_TEXT1="DEFURN_COMPLETE_TEXT1",e.DEFURN_COMPLETE_TEXT2="DEFURN_COMPLETE_TEXT2",e.DEFURN_COMPLETE_TITLE="DEFURN_COMPLETE_TITLE",e.DEFURN_CONTACT_SUPPORT="DEFURN_CONTACT_SUPPORT",e.DEFURN_ERR_CONTACT="DEFURN_ERR_CONTACT",e.DEFURN_ERR_PERMS="DEFURN_ERR_PERMS",e.DEFURN_ERR_QUOTA="DEFURN_ERR_QUOTA",e.DEFURN_ERR_SETTINGS="DEFURN_ERR_SETTINGS",e.DEFURN_ERR_TITLE="DEFURN_ERR_TITLE",e.DEFURN_ERR_UNKNOWN="DEFURN_ERR_UNKNOWN",e.DEFURN_ERR_MODEL_VERSION_UNSUPPORTED="DEFURN_ERR_MODEL_VERSION_UNSUPPORTED",e.DEFURN_RATING_TITLE="DEFURN_RATING_TITLE",e.DEFURN_RATING_CONTENT="DEFURN_RATING_CONTENT",e.DEFURN_LOCKED_CTA="DEFURN_LOCKED_CTA",e.DEFURN_LOCKED_QUOTA="DEFURN_LOCKED_QUOTA",e.DEFURN_LOCKED_QUOTA2="DEFURN_LOCKED_QUOTA2",e.DEFURN_MODE_BUTTON="DEFURN_MODE_BUTTON",e.DEFURN_MODE_BUTTON_ACTIVE="DEFURN_MODE_BUTTON_ACTIVE",e.DEFURN_MORE="DEFURN_MORE",e.DEFURN_NEXT_TEXT1="DEFURN_NEXT_TEXT1",e.DEFURN_NEXT_TEXT2="DEFURN_NEXT_TEXT2",e.DEFURN_NEXT_TEXT3="DEFURN_NEXT_TEXT3",e.DEFURN_NEXT_TEXT4="DEFURN_NEXT_TEXT4",e.DEFURN_NEXT_TEXT5="DEFURN_NEXT_TEXT5",e.DEFURN_NEXT_TITLE="DEFURN_NEXT_TITLE",e.DEFURN_NUDGE_NEW="DEFURN_NUDGE_NEW",e.DEFURN_NUDGE_TEXT="DEFURN_NUDGE_TEXT",e.DEFURN_NUDGE_TITLE="DEFURN_NUDGE_TITLE",e.DEFURN_SETTINGS="DEFURN_SETTINGS",e.DEFURN_SETTINGS_VIEW="DEFURN_SETTINGS_VIEW",e.DEFURN_SETTINGS_DEFAULT_VIEW="DEFURN_SETTINGS_DEFAULT_VIEW",e.DEFURN_TEXT1="DEFURN_TEXT1",e.DEFURN_TEXT2="DEFURN_TEXT2",e.DEFURN_TITLE="DEFURN_TITLE",e.DEFURN_TOOL_HEADER="DEFURN_TOOL_HEADER",e.DEFURN_UNLOCKED_CANCEL="DEFURN_UNLOCKED_CANCEL",e.DEFURN_UNLOCKED_CTA="DEFURN_UNLOCKED_CTA",e.DEFURN_UNLOCKED_NOTIFY="DEFURN_UNLOCKED_NOTIFY"}(L=e.DEFURNISH||(e.DEFURNISH={}))}(E=e.WORKSHOP||(e.WORKSHOP={})),function(e){let t,i;!function(e){e.VIEW_INSIDE="COMPARE.VIEW_MODE.VIEW_INSIDE",e.VIEW_DOLLHOUSE="COMPARE.VIEW_MODE.VIEW_DOLLHOUSE",e.VIEW_FLOORPLAN="COMPARE.VIEW_MODE.VIEW_FLOORPLAN"}(t=e.VIEW_MODE||(e.VIEW_MODE={})),function(e){e.FLOOR_SELECT="COMPARE.FLOORS.FLOOR_SELECT"}(i=e.FLOORS||(e.FLOORS={}))}(S=e.COMPARE||(e.COMPARE={}))}(n||(n={}));const s=n},50690:(e,t,i)=>{"use strict";var n;i.d(t,{Q:()=>n}),n||(n={}),function(e){let t,i;!function(e){e.TITLE="TITLE"}(t=e._COMMON_||(e._COMMON_={})),e.COMPASS=Object.assign({},t),e.ROOMPLAN_MINIMAP=Object.assign({},t),e.MINIMAP=Object.assign({},t),e.SALESPERSON_INFO=Object.assign({},t),e.QUICK_LINK=Object.assign({},t),function(e){e.TITLE="TITLE",e.ALL_TAGS="ALL_TAGS",e.HELP="HELP",e.DRAG_DROP_UPLOAD="DRAG_DROP_UPLOAD",e.SELECT_FILE="SELECT_FILE",e.EXPORT="EXPORT",e.IMPORT="IMPORT",e.ERROR_IMPORTING_CSV="ERROR_IMPORTING_CSV",e.CSV_IMPORT_RESULTS="CSV_IMPORT_RESULTS",e.NO_TAGS_IMPORTED="NO_TAGS_IMPORTED",e.TAGS_IMPORTED="TAGS_IMPORTED",e.TAGS_POSITIONED="TAGS_POSITIONED",e.TAGS_NEED_POSITIONING="TAGS_NEED_POSITIONING",e.UPDATES_PROCESSED="UPDATES_PROCESSED",e.UPDATES_DETAIL="UPDATES_DETAIL",e.NO_CHANGES_FOUND="NO_CHANGES_FOUND",e.ATTACHMENTS_IMPORTED_SUCCESS="ATTACHMENTS_IMPORTED_SUCCESS",e.ATTACHMENTS_MISSING_SKIPPED="ATTACHMENTS_MISSING_SKIPPED",e.TAGS_TO_IMPORT="TAGS_TO_IMPORT",e.PLACED="PLACED",e.UNPLACED="UNPLACED",e.DONE="DONE",e.SELECT="SELECT",e.SORT_AS_IMPORTED="SORT_AS_IMPORTED",e.SORT_BY_NAME="SORT_BY_NAME",e.DELETE="DELETE",e.COPY="COPY",e.SELECT_ALL="SELECT_ALL",e.DESELECT_ALL="DESELECT_ALL",e.RESET="RESET",e.BACK="BACK",e.CANCEL="CANCEL",e.REALIGN_TAGS="REALIGN_TAGS",e.RESET_POSITIONS="RESET_POSITIONS",e.SELECT_SOURCE_MODEL="SELECT_SOURCE_MODEL",e.ENTER_SOURCE_MODEL_ID="ENTER_SOURCE_MODEL_ID",e.ERROR_SAME_MODEL="ERROR_SAME_MODEL",e.ERROR_INVALID_LENGTH="ERROR_INVALID_LENGTH",e.ERROR_INVALID_MODEL_ID="ERROR_INVALID_MODEL_ID",e.LOADING_COMPOSER="LOADING_COMPOSER",e.ALIGN_SOURCE_CURRENT="ALIGN_SOURCE_CURRENT",e.ALIGNMENT_COMPLETE="ALIGNMENT_COMPLETE",e.TAGS_REALIGNED="TAGS_REALIGNED",e.RESET_IMPORTED_TAGS="RESET_IMPORTED_TAGS",e.RESET_CONFIRMATION="RESET_CONFIRMATION",e.EXPORT_TAGS="EXPORT_TAGS",e.EXPORT_DESCRIPTION_1="EXPORT_DESCRIPTION_1",e.EXPORT_DESCRIPTION_2="EXPORT_DESCRIPTION_2",e.INCLUDE_POSITIONAL_DATA="INCLUDE_POSITIONAL_DATA",e.POSITIONAL_DATA_HELP="POSITIONAL_DATA_HELP",e.HIDE="HIDE",e.SHOW="SHOW",e.CLOSE="CLOSE",e.SELECT_TAG="SELECT_TAG",e.DUPLICATE_TAG="DUPLICATE_TAG",e.DUPLICATE_TAG_PROMPT="DUPLICATE_TAG_PROMPT",e.SKIP="SKIP",e.KEEP_BOTH="KEEP_BOTH",e.UPDATE="UPDATE",e.APPLY_TO_ALL="APPLY_TO_ALL"}(i=e.IET||(e.IET={}))}(n||(n={}))},23339:(e,t,i)=>{"use strict";var n;function s(e){return e.match(/us|mm|lr$/i)?n.IMPERIAL:n.METRIC}i.d(t,{B:()=>s,t:()=>n}),function(e){e.IMPERIAL="imperial",e.METRIC="metric"}(n||(n={}))},39869:(e,t,i)=>{"use strict";i.d(t,{Y:()=>a});var n=i(96540),s=i(77570);function a(){return(0,n.useContext)(s.B).locale}},21722:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>O});var n=i(64882),s=i(90082),a=i(14682),o=i.n(a),r=i(53061);async function l(e,t,i="./",n="json"){const s=function(e,t="./",i="json"){return e===r.Nm?`${t}locale/strings.${i}`:`${t}locale/messages/strings_${e}.${i}`}(e,i,n),a=await t.get(s);if("json"===n)return JSON.parse(a);throw new Error(`${n} not implemented`)}var d=i(25316);var c=i(93818),u=i(56147),h=i(9139),m=i(47712);async function p(e,t=m.Ru.locale){const{messages:i}=await e(t);m.Ru.load(t,i),t!==m.Ru.locale&&m.Ru.activate(t)}new h.Vy("lingui");const E=e=>e.replace(/-/g,"_").toUpperCase();class S extends n.n{constructor(){super(...arguments),this.name="locale"}async init(e,t){const n=await t.market.waitForData(d.o);this._languageCode=(0,r.UK)(e.isLoggedIn,n.getOverrideParam("lang",""));const a=this._languageCode.substr(0,2);this.polyglot=new(o())({locale:a,interpolation:{prefix:"%{",suffix:"}"},onMissingKey:e=>(h.Vy.for(this).warn("Missing phrase key:"+e),S.missingPrefix+e)});const c=(await t.getModuleBySymbol(s.ZF)).getSetting("assetBasePath"),u=await async function(e,t,i="./",n="json"){const s=await l(e,t,i,n);if(e===r.Nm)return s;const a=await l(r.Nm,t,i,n);return Object.assign(Object.assign({},a),s)}(this._languageCode,e.queue,c);this.polyglot.extend(u),this.localizeUnitsDisplay(),this.registerSettings(t),await p((async e=>await i(44821)(`./cwf_${e}.yaml`)),this._languageCode)}t(e,t){return this.polyglot.t(e,t)}T(e,t,i="PLUGIN_KEYS",n){const s=t?`${i}.${E(t)}.${e}`:`${i}.${E(e)}`;return this.has(s)?this.t(s,n):t?t.replace(/-/g," ").split(" ").filter((e=>e.length>0)).map((e=>e[0].toUpperCase()+e.substr(1).toLowerCase())).join(" "):this.t(s,n)}has(e){return this.polyglot.has(e)}get languageCode(){return this._languageCode}localizeUnitsDisplay(){(0,c.LB)({unitsDisplayFeetSymbol:this.t(u.A.UNITS_DISPLAY.FEET_SYMBOL),unitsDisplayInchesSymbol:this.t(u.A.UNITS_DISPLAY.INCHES_SYMBOL),unitsDisplayHalfSpace:this.t(u.A.UNITS_DISPLAY.HALF_SPACE),unitsDisplayFeet:this.t(u.A.UNITS_DISPLAY.FEET),unitsDisplayInches:this.t(u.A.UNITS_DISPLAY.INCHES),unitsDisplayMeters:this.t(u.A.UNITS_DISPLAY.METERS),unitsDisplaySquareFeet:this.t(u.A.UNITS_DISPLAY.SQUARE_FEET),unitsDisplaySquareMeters:this.t(u.A.UNITS_DISPLAY.SQUARE_METERS),dimensionsSeparator:this.t(u.A.UNITS_DISPLAY.DIMENSIONS_SEPARATOR)})}async registerSettings(e){(await e.getModuleBySymbol(s.ZF)).registerSetting("Locale","language_code",this.languageCode,!1)}async loadMessages(e){await p(e,this._languageCode)}}S.missingPrefix="FIX-";const O=S},26655:(e,t,i)=>{"use strict";var n;i.d(t,{J:()=>n}),function(e){e[e.NAVIGATION=0]="NAVIGATION",e[e.MODEL=1]="MODEL",e[e.EXT_LINK=2]="EXT_LINK"}(n||(n={}));n.NAVIGATION,n.MODEL,n.EXT_LINK},35956:(e,t,i)=>{"use strict";i.d(t,{Q:()=>u});var n=i(68909),s=i(38069),a=i(50636),o=i(26348),r=i(3928),l=i(4850),d=i(57416),c=i(25712);class u extends r.v{constructor(e){super(),this.sid="",this.layerId="",this.created=new Date,this.modified=new Date,this.enabled=!0,this.label="",this.description="",this.parsedDescription=[],this.anchorPosition=new n.Vector3,this.anchorNormal=new n.Vector3(0,1,0),this.stemVector=new n.Vector3(0,0,(0,o.hV)(1)),this.stemHeight=(0,o.hV)(1),this.stemVisible=!0,this.fileAttachments=new l.X,this.externalAttachments=new l.X,this.sandboxAttachments=new l.X,this.color=(new d.I).setFromLinearColor(s.V.MATTERTAG_BLUE),this.mediaType=a.q.none,this.mediaSrc="",this.keywords=new l.X,e&&Object.assign(this,e)}copy(e){var t;this.anchorNormal.copy(e.anchorNormal),this.anchorPosition.copy(e.anchorPosition),this.color.copy(e.color),this.created.setTime(e.created.getTime()),this.description=e.description,this.enabled=e.enabled,this.layerId=e.layerId,this.floorId=e.floorId,this.roomId=e.roomId,this.label=e.label,this.mediaType=e.mediaType,this.mediaSrc=e.mediaSrc,this.modified.setTime(e.modified.getTime()),this.sid=e.sid,this.stemVector.copy(e.stemVector),this.stemHeight=e.stemHeight,this.stemVisible=e.stemVisible,this.fileAttachments=e.fileAttachments,this.externalAttachments=e.externalAttachments,this.sandboxAttachments=e.sandboxAttachments,this.objectAnnotationId=e.objectAnnotationId,this.keywords.replace(e.keywords.values()),this.icon=e.icon,this.scanLinks=null===(t=e.scanLinks)||void 0===t?void 0:t.slice(),this.parsedDescription=[];for(const t of e.parsedDescription)this.parsedDescription.push({link:t.link&&{label:t.link.label.slice(),url:t.link.url.slice(),type:t.link.type,navigationData:t.link.navigationData&&{floorVisibility:t.link.navigationData.floorVisibility,mode:t.link.navigationData.mode,sweepIndex:t.link.navigationData.sweepIndex,panoId:t.link.navigationData.panoId,position:t.link.navigationData.position&&t.link.navigationData.position.clone(),quaternion:t.link.navigationData.quaternion.clone(),zoom:t.link.navigationData.zoom}},text:t.text,type:t.type});return this.commit(),this}clone(){return(new u).copy(this)}refresh(e){this.fileAttachments.forEach((t=>{var i,n;const s=e[t.id];s&&(null===(i=t.thumbnailUrl)||void 0===i||i.refreshFrom(s.thumbnailUrl),t.url.refreshFrom(s.url),null===(n=t.downloadUrl)||void 0===n||n.refreshFrom(s.downloadUrl))}))}getPin(){const{anchorPosition:e,color:t,stemVisible:i,floorId:n,roomId:s,layerId:a,stemVector:o,stemHeight:r,icon:l}=this;return{anchorPosition:e,color:t.getHexString(),icon:l,layerId:a,floorId:n,roomId:s,stemEnabled:i,stemNormal:o,stemLength:r}}updateFromOptions(e,t,i){void 0!==e.color&&(this.color=(new d.I).copy(e.color)),void 0!==e.enabled&&(this.enabled=e.enabled),void 0!==e.stemHeight&&(this.stemHeight=e.stemHeight,this.stemVector.copy(this.anchorNormal).setLength(e.stemHeight)),void 0!==e.stemVisible&&(this.stemVisible=e.stemVisible),void 0!==e.label&&(this.label=e.label.slice()),void 0!==e.description&&(this.description=e.description,this.parsedDescription=t.parse(this.description,i)),void 0!==e.floorId&&(this.floorId=e.floorId),void 0!==e.roomId&&(this.roomId=e.roomId),void 0!==e.normal&&(this.anchorNormal.copy(e.normal).normalize(),this.stemVector.copy(e.normal).setLength(this.stemHeight)),void 0!==e.position&&this.anchorPosition.copy(e.position),void 0!==e.keywords&&this.keywords.replace(e.keywords),Object.prototype.hasOwnProperty.call(e,"icon")&&(this.icon=e.icon),void 0!==e.objectAnnotationId&&(this.objectAnnotationId=e.objectAnnotationId)}}u.idLength=11,u.idGenerator=new c.KA(u.idLength)},50636:(e,t,i)=>{"use strict";var n;i.d(t,{q:()=>n}),function(e){e.text="text",e.link="link",e.photo="photo",e.video="video",e.rich="rich",e.none="none",e.error="error"}(n||(n={})),function(e){e.parse=t=>null!==t&&t in e?e[t]:e.none}(n||(n={}))},29479:(e,t,i)=>{"use strict";i.d(t,{j:()=>o});var n=i(12625),s=i(88325),a=i(64391);class o extends n.B{constructor(e){if(super(),this.name="tag",this.mattertags=(0,s.y)(),e)for(const t of e)this.mattertags.set(t.sid,t);this.commit()}clear(){for(const e of this.mattertags.keys)this.removeTag(e)}clone(){return(new o).copy(this)}copy(e){return o.copyTagCollection(this,e),this}static copyTagCollection(e,t){const i=e.mattertags,n=t.mattertags;for(const t of i.keys)n.has(t)||e.removeTag(t);for(const t of n)e.addTag(t)}get collection(){return this.mattertags}addTag(e){this.mattertags.has(e.sid)?this.mattertags.get(e.sid).copy(e):this.mattertags.set(e.sid,e.clone())}removeTag(e){return this.mattertags.delete(e)}getTag(e){return this.mattertags.get(e)}getTagList(){return this.mattertags.keys}getTagCount(){return this.mattertags.length}getTagKeywords(){let e=[];return this.iterate((t=>{t.enabled&&t.keywords.length&&(e=e.concat(t.keywords.values()))})),e}iterate(e){for(const t of this.mattertags)e(t)}*[Symbol.iterator](){for(const e of this.mattertags)yield e}set onStale(e){this.hydrate=e}updateOnStaleCallbacks(e){if(!this.hydrate)return;const t=e?this.getTag(e):this.mattertags;(0,a._)(t,(async()=>{const e=await this.hydrate();this.iterate((t=>{t.refresh(e)}))}))}}},80419:(e,t,i)=>{"use strict";i.d(t,{Qn:()=>a,T8:()=>o,Yt:()=>s});var n=i(7478);class s extends n.QB{constructor(e){super(),this.sid=e}}class a extends n.QB{constructor(e){super(),this.url=e}}class o extends n.QB{constructor(e,t){super(),this.sid=e,this.view=t}}},75522:(e,t,i)=>{"use strict";i.d(t,{qE:()=>n,vg:()=>s});const n="features/mattertags",s="embedlyKey"},57416:(e,t,i)=>{"use strict";i.d(t,{I:()=>o});var n=i(3249),s=i(68909);const a=new s.Color;class o{constructor(e=0,t=0,i=0){this.r=e,this.g=t,this.b=i}set(e,t,i){return this.r=e,this.g=i,this.b=t,this}setHex(e){return e=Math.floor(e),this.r=(e>>16&255)/255,this.g=(e>>8&255)/255,this.b=(255&e)/255,this}setHexString(e){if("string"!=typeof(t=e)||4!==t.length&&7!==t.length||!/^#([0-9a-f]{3}){1,2}$/i.test(t))throw new Error("Invalid hex color");var t;const i=e.substring(1);return 3===i.length?this.set(parseInt(i.charAt(0),16)/15,parseInt(i.charAt(1),16)/15,parseInt(i.charAt(2),16)/15):6===i.length?this.setHex(parseInt(i,16)):this}copy(e){return this.r=e.r,this.g=e.g,this.b=e.b,this}getHexString(){return"#"+("000000"+this.getHex().toString(16)).slice(-6)}getHex(){return 65536*Math.round((0,n.qE)(255*this.r,0,255))+256*Math.round((0,n.qE)(255*this.g,0,255))+Math.round((0,n.qE)(255*this.b,0,255))}setFromLinearColor(e){return a.copy(e).convertLinearToSRGB(),this.r=a.r,this.g=a.g,this.b=a.b,this}}},81483:(e,t,i)=>{"use strict";i.d(t,{P:()=>E,V:()=>S});var n=i(74381),s=i(81587),a=i(9139),o=i(86866),r=i(68909),l=i(24675),d=i(35956),c=i(25481),u=i(44094),h=i(85275),m=i(87314);const p=new a.Vy("mds-mattertag-serializer");class E{constructor(e,t){this.fileAttachmentDeserializer=e,this.externalAttachmentDeserializer=t}deserialize(e){var t,i;if(!e||!this.validate(e))return p.debug("Deserialized invalid Mattertag data from MDS",e),null;const n=e.anchorPosition?o.U$.fromVisionVector(e.anchorPosition):void 0,a=e.stemNormal?o.U$.fromVisionVector(e.stemNormal):void 0,h=new d.Q;if(h.sid=e.id,h.layerId=(null===(t=e.layer)||void 0===t?void 0:t.id)||"",h.label=e.label||"",h.description=e.description||"",h.enabled=!!e.enabled,e.color&&h.color.setHexString(e.color),h.created=(0,s.XH)(e.created),h.modified=(0,s.XH)(e.modified),e.floor&&e.floor.id&&(h.floorId=e.floor.id),e.room&&e.room.id&&(h.roomId=e.room.id),n&&(h.anchorPosition=n),e.media&&(h.mediaSrc=e.media),e.mediaType&&(h.mediaType=(0,l.og)(e.mediaType)),h.fileAttachments.replace(this.getFileAttachments(h,e)),h.externalAttachments.replace(this.getExternalAttachments(h,e)),(0,c.Et)(e.stemLength)&&(h.stemHeight=e.stemLength),a&&a instanceof r.Vector3){const t=a.clone().setLength(h.stemHeight);h.anchorNormal=a,h.stemVector=t,h.stemVisible=!!e.stemEnabled}else h.stemVector=new r.Vector3(0,0,0),h.stemVisible=!!e.stemEnabled;return h.objectAnnotationId=null===(i=e.objectAnnotation)||void 0===i?void 0:i.id,h.keywords.replace(e.keywords||[]),(0,u.sw)(e.icon)&&(h.icon=e.icon),h}validate(e){if(!e)return!1;return["id","created","modified","enabled"].every((t=>t in e))}getFileAttachments(e,t){return this.fileAttachmentDeserializer?this.deserializeFileAttachments(t).sort(((e,t)=>e.created.getTime()-t.created.getTime())):[]}getExternalAttachments(e,t){if(!this.externalAttachmentDeserializer)return[];const i=this.deserializeExternalAttachments(t);if(t.media&&t.mediaType){const n=(0,l.sM)(e.sid,t.media,t.mediaType);n&&i.push(n)}return i.sort(((e,t)=>e.created.getTime()-t.created.getTime()))}deserializeExternalAttachments(e){const t=e.externalAttachments||[],i=[];return t.forEach((t=>{var s;const a=null===(s=this.externalAttachmentDeserializer)||void 0===s?void 0:s.deserialize(t);a&&(a.parentId=e.id,a.parentType=n.pi.MATTERTAG,i.push(a))})),i}deserializeFileAttachments(e){const t=e.fileAttachments||[],i=[];return t.forEach((t=>{var s;const a=null===(s=this.fileAttachmentDeserializer)||void 0===s?void 0:s.deserialize(t);a&&(a.parentId=e.id,a.parentType=n.pi.MATTERTAG,i.push(a))})),i}}const S=function(){const e=(0,h.V)(),t=(0,m.Y)();return new E(e,t)}},24675:(e,t,i)=>{"use strict";i.d(t,{KP:()=>c,n4:()=>u,og:()=>d,sM:()=>m});var n=i(50636),s=i(3795),a=i(30740),o=i(25712),r=i(64391),l=i(61430);function d(e){const t={[l.yg.VIDEO]:n.q.video,[l.yg.PHOTO]:n.q.photo,[l.yg.RICH]:n.q.rich};return e in t?t[e]:n.q.none}function c(e){switch(e){case s.zu.VIDEO:return n.q.video;case s.zu.IMAGE:return n.q.photo;case s.zu.RICH:return n.q.rich}return n.q.none}function u(e){switch(e){case n.q.video:return l.yg.VIDEO;case n.q.photo:return l.yg.PHOTO;case n.q.rich:return l.yg.RICH}return null}function h(e){return{[l.yg.VIDEO]:s.zu.VIDEO,[l.yg.PHOTO]:s.zu.IMAGE,[l.yg.RICH]:s.zu.RICH}[e]}function m(e,t,i){return t?new a.o({id:(0,o.W0)(),created:new Date,parentId:e,parentType:l.pi.MATTERTAG,mediaType:h(i),src:t,url:new r.f(t,null),thumbnailUrl:new r.f(t,null),category:s._A.EXTERNAL}):null}},28454:(e,t,i)=>{"use strict";i.d(t,{s:()=>r});var n=i(12625),s=i(97994),a=i(53282),o=i(41535);class r extends n.B{constructor(){super(...arguments),this.name="measure-mode",this._groups=[],this._groupMap={},this.onDataChangedCallbacks=new Set,this._editingGroupId=null,this._creatingGroupId=null,this.phase=o.hb.CLOSED,this.pressProgress=-1,this.selectedGroupIndexObservable=new s.L(-1),this.pointPositionObservable=new s.L(null),this.idVisibility=new Set}onPhaseChanged(e){return this.onPropertyChanged("phase",e)}onDataChanged(e){return(0,a.Sh)((()=>this.onDataChangedCallbacks.add(e)),(()=>this.onDataChangedCallbacks.delete(e)),!0)}onPointPositionChanged(e){return this.pointPositionObservable.onChanged(e)}onSelectedGroupIndexChanged(e){return this.selectedGroupIndexObservable.onChanged(e)}modeActive(){return this.phase!==o.hb.CLOSED}isEditingOrCreating(){return this.phase>=o.hb.EDITING}*groups(){for(const e of this._groups)yield e}get selectedGroupSid(){const e=this.selectedGroupInfo;return e&&e.info.sid?e.info.sid:null}get selectedGroupInfo(){return-1===this.selectedGroupIndex?null:this.getGroupInfo(this.selectedGroupIndex)}get creatingGroupId(){return this._creatingGroupId}set creatingGroupId(e){this._creatingGroupId=e}get editingGroupId(){return this._editingGroupId}set editingGroupId(e){this._editingGroupId=e}get groupCount(){return this._groups.length}get pointPosition(){return this.pointPositionObservable.value}get selectedGroupIndex(){return this.selectedGroupIndexObservable.value}getGroupInfo(e){return e<0||e>=this._groups.length?null:this._groups[e]}getGroupInfoBySid(e){return e?this._groupMap[e]:null}setPhase(e){this.phase!==e&&(this.phase=e,this.commit())}notifyDataChanged(){this.onDataChangedCallbacks.forEach((e=>e()))}setPointPosition(e){this.pointPositionObservable.value=e}setSelectedGroupIndex(e){this.selectedGroupIndexObservable.value=e}repopulate(e){this.clear();for(const t of e){const e=t.clone();this._groups.push(e),this._groupMap[t.info.sid]=e}this.notifyDataChanged()}clear(){this._groups=[],this._groupMap={}}}},41535:(e,t,i)=>{"use strict";var n;i.d(t,{TI:()=>s,Vk:()=>a,hb:()=>n,nm:()=>r,y_:()=>o}),function(e){e[e.CLOSED=0]="CLOSED",e[e.IDLE=1]="IDLE",e[e.EDITING=2]="EDITING",e[e.CREATING=3]="CREATING",e[e.POINT_PLACED=4]="POINT_PLACED",e[e.CREATING_NEXT_POINT=5]="CREATING_NEXT_POINT",e[e.CONFIRMING_POINT=6]="CONFIRMING_POINT"}(n||(n={}));const s={mobile:{[n.POINT_PLACED]:!0,[n.EDITING]:!0},desktop:{[n.CREATING]:!0,[n.CREATING_NEXT_POINT]:!0,[n.EDITING]:!0}},a={mobile:{[n.CREATING_NEXT_POINT]:!0,[n.POINT_PLACED]:!0,[n.EDITING]:!0},desktop:{[n.CREATING]:!0,[n.CREATING_NEXT_POINT]:!0,[n.EDITING]:!0}},o={[n.IDLE]:!0,[n.EDITING]:!0},r={[n.IDLE]:!0,[n.EDITING]:!0}},98159:(e,t,i)=>{"use strict";i.d(t,{CN:()=>o,SH:()=>s,tm:()=>a});var n=i(11165);class s extends n.u{}s.id="MEASUREMENT_DELETE_SELECTED";class a extends n.u{constructor(e){super(),this.payload={index:e}}}a.id="MEASUREMENT_DELETE";class o extends n.u{constructor(...e){super(),this.payload={sids:e}}}o.id="MEASUREMENT_LIST_DELETION"},3071:(e,t,i)=>{"use strict";i.d(t,{S:()=>s});var n=i(11165);class s extends n.u{constructor(e,t,i=!0){super(),this.payload={on:e,dimWhileActive:void 0!==t?t:e,editable:i}}}s.id="MEASURE_MODE_TOGGLE"},8774:(e,t,i)=>{"use strict";i.d(t,{X:()=>s});var n=i(11165);class s extends n.u{}s.id="MEASURE_START"},87951:(e,t,i)=>{"use strict";i.d(t,{y:()=>s});var n=i(11165);class s extends n.u{constructor(e){super(),this.payload={index:e}}}s.id="MEASUREMENT_SELECT"},5320:(e,t,i)=>{"use strict";i.d(t,{R:()=>s});var n=i(11165);class s extends n.u{}s.id="MEASURE_STOP"},48535:(e,t,i)=>{"use strict";i.d(t,{g:()=>r});var n=i(14614),s=i(86e3),a=i(56208),o=i(5262);function r(){const e=(0,o.i)(a.Q$.Measurements,!0);return(0,s.F)()!==n.lg.SHOWCASE||e}},95221:(e,t,i)=>{"use strict";i.d(t,{g:()=>a});var n=i(98236),s=i(28454);const a=(0,n.v_)(s.s)},95846:(e,t,i)=>{"use strict";i.d(t,{B:()=>a});var n=i(96540),s=i(95221);function a(e){const t=(0,s.g)(),[i,a]=(0,n.useState)((null==t?void 0:t.getGroupInfoBySid(e))||null);return(0,n.useEffect)((()=>{if(!t)return()=>{};function i(){a((null==t?void 0:t.getGroupInfoBySid(e))||null)}const n=t.onDataChanged(i);return i(),()=>n.cancel()}),[t,e]),i}},11815:(e,t,i)=>{"use strict";i.d(t,{W:()=>o});var n=i(87805),s=i(28454),a=i(41535);const o=(0,n.u)(s.s,"phase",a.hb.CLOSED)},89395:(e,t,i)=>{"use strict";i.d(t,{E:()=>a});var n=i(96540),s=i(95221);function a(){const e=(0,s.g)(),[t,i]=(0,n.useState)(e?e.selectedGroupSid:null);return(0,n.useEffect)((()=>{if(!e)return()=>{};function t(){e&&i(e.selectedGroupSid)}const n=e.onSelectedGroupIndexChanged(t);return t(),()=>n.cancel()}),[e]),t}},38039:(e,t,i)=>{"use strict";i.d(t,{Z:()=>n});const n="features/measurements-nudge"},94:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(7478);class s extends n.QB{constructor(e,t){super(),this.sid=e,this.vrSupported=t}}},55057:(e,t,i)=>{"use strict";i.d(t,{q:()=>a});var n=i(12625),s=i(88325);class a extends n.B{constructor(){super(),this.name="model",this.assetsMap=new s.E}get model(){return this._model}setModel(e){this._model=e}addModelAssets(e,t){this.activeAssetsId||(this.activeAssetsId=e),this.assetsMap.set(e,t)}getModelAssets(e=this.activeAssetsId){return this.assetsMap.get(e)}hasModelAssets(e){return this.assetsMap.has(e)}}},49812:(e,t,i)=>{"use strict";i.d(t,{h:()=>a});var n=i(98236),s=i(55057);const a=(0,n.v_)(s.q)},35404:(e,t,i)=>{"use strict";i.d(t,{Lj:()=>a,k5:()=>d,ov:()=>r,qu:()=>o,tQ:()=>c,wD:()=>s,wx:()=>l});var n=i(82748);const s="social_sharing",a="branding_enabled",o="presentation_mls_mode",r="presentation_title",l="presentation_about",d="discover_space_url",c={urlTemplateToken:"",urlTemplateOverride:(0,n.P3)("tiledtemplate",null)}},5984:(e,t,i)=>{"use strict";i.d(t,{r:()=>a});var n=i(37458),s=i(68909);class a extends s.Mesh{constructor(){super(...arguments),this.isModelMesh=!0,this.raycastEnabled=!0}get picking2DPriority(){return n.X.default}}},90572:(e,t,i)=>{"use strict";var n;i.d(t,{R:()=>n}),function(e){e[e.NONE=0]="NONE",e[e.RAYCAST=1]="RAYCAST"}(n||(n={}))},22278:(e,t,i)=>{"use strict";i.d(t,{U:()=>o});var n=i(68909),s=i(12625);const a=[-5,-5,-5,5,5,5];class o extends s.B{get meshGroups(){return this._meshGroups}constructor(e=a,t=a,i=new n.Vector3){super(),this.name="mesh-data",this.extendedBounds=new n.Box3,this.extendedSize=new n.Vector3,this.meshBounds=new n.Box3,this.meshCenter=new n.Vector3,this.centerOfMass=new n.Vector3,this.meshSize=new n.Vector3,this.meshRadius=0,this.maxPlacementRadius=0,this._meshGroups={floors:new Map,rooms:new Map,roomsByFloor:new Map},this.meshSubGroupsFromPoint=e=>{const t=[];for(const[i,n]of this.meshGroups.rooms)n.boundingBox.containsPoint(e)&&t.push(i);return t},this.meshBounds.setFromArray(e),this.meshBounds.getCenter(this.meshCenter),this.meshBounds.getSize(this.meshSize),this.meshRadius=this.meshSize.clone().multiplyScalar(.5).length(),this.maxPlacementRadius=3*this.meshRadius,this.extendedBounds.setFromArray(t),this.extendedBounds.getSize(this.extendedSize),this.centerOfMass.copy(i)}}},596:(e,t,i)=>{"use strict";var n;i.d(t,{M:()=>n}),function(e){e[e.LOW=1]="LOW",e[e.MEDIUM=2]="MEDIUM",e[e.HIGH=3]="HIGH",e[e.ULTRA=4]="ULTRA"}(n||(n={}))},44345:(e,t,i)=>{"use strict";i.d(t,{EX:()=>s,Gf:()=>o,Ny:()=>r,qZ:()=>a});var n=i(7478);class s extends n.QB{constructor(e,t){super(),this.loaded=e,this.total=t}}class a extends n.QB{}class o extends n.QB{}class r extends n.QB{}},47299:(e,t,i)=>{"use strict";i.d(t,{Ay:()=>a,Vp:()=>l,_Z:()=>o,lg:()=>d,sz:()=>r,u7:()=>c,vz:()=>u,xT:()=>s});var n=i(82748);const s={debugLOD:(0,n.P3)("debuglod",!1),debugRttQuality:(0,n.P3)("debugQuality",!1),debugRttScores:(0,n.P3)("debugScores",!1),debugRttClear:(0,n.P3)("debuglodrtt",!0),debugPauseTexStream:(0,n.P3)("textureStreamPause",!1),sightingMaxAge:(0,n.P3)("meshSightingMaxAge",600),textureTileSize:(0,n.P3)("chunkTileSize",512)},a=s,o="wireframeEnabled",r="features/tiled_mesh",l="Trim floor by(%)",d=0,c={FADE_OPAQUE:1,FADE_ABOVE:.05,FADE_BELOW:.2,FADE_TILE_VISIBLE_THRESHOLD:.6,FADE_CLICKABLE_THRESHOLD:.051,FADE_IN_VALUE:.2,FADE_IN_END_ANGLE:55,FADE_IN_START_ANGLE:35,FADE_IN_HOVER_BOOST_VALUE:.3,FADE_BELOW_START:0,FADE_BELOW_MULT:1},u="model-mesh"},77489:(e,t,i)=>{"use strict";i.d(t,{G:()=>s});var n=i(12625);class s extends n.B{constructor(){super(),this.name="model-rating-view-data",this.isDialogVisible=!1,this.setDialogVisible=e=>{this.isDialogVisible=void 0!==e?e:!this.isDialogVisible,this.commit()}}}},26432:(e,t,i)=>{"use strict";i.d(t,{c:()=>s,i:()=>a});var n=i(11165);class s extends n.u{constructor(e){super(),this.payload={toVisible:e}}}s.id="TOGGLE_MODEL_RATING_DIALOG";class a extends n.u{constructor(e,t=!1){super(),this.payload={rating:e,didFinish:t}}}a.id="SUBMIT_MODEL_RATING"},57447:(e,t,i)=>{"use strict";i.d(t,{n:()=>n,s:()=>s});const n="features/model-rating-dialog",s="features/model-rating-dialog-prompt"},9997:(e,t,i)=>{"use strict";i.d(t,{Dd:()=>c,E4:()=>r,Jq:()=>s,UZ:()=>d,aj:()=>l,r:()=>u,rH:()=>o,sD:()=>a});var n=i(11165);class s extends n.u{constructor(){super()}}s.id="LOCK_NAVIGATION";class a extends n.u{constructor(){super()}}a.id="UNLOCK_NAVIGATION";class o extends n.u{constructor(e){super(),this.payload=e}}o.id="FOCUS_ON_POINT_INSIDE";class r extends n.u{constructor(e){super(),this.payload=e}}r.id="FOCUS_ON_PIN_INSIDE";class l extends n.u{constructor(e){super(),this.payload=Object.assign({},e)}}l.id="MOVE_TO_SWEEP";class d extends n.u{constructor(e){super(),this.payload=e}}d.id="NAVIGATE_TO_LABEL";class c extends n.u{constructor(e){super(),this.payload={room:e}}}c.id="NAVIGATE_TO_ROOM";class u extends n.u{constructor(e){super(),this.payload={pose:e}}}u.id="NAVIGATE_TO_POSE"},65882:(e,t,i)=>{"use strict";i.d(t,{R:()=>n,U:()=>s});const n="features/ray-neighbors",s={maxDistSameFloor:22,maxDistOtherFloors:6,directionFactor:.65,directionWeight:3,viewDirectionFactor:.85,viewDirectionWeight:1,longerTransitionMaxDist:10,TRANSITION_TIME_DH:650,TRANSITION_TIME_ROOM:800}},85204:(e,t,i)=>{"use strict";i.d(t,{nc:()=>s,uV:()=>o});var n=i(53641);const s="features/notes-mode",a="spaces.notes";function o(e,t,i,o,r){if(!e)return!1;let l=!1;const d=t.hasPolicy(a),c=t.hasPolicy(n.tG);return l=d&&c,l&&(o.setSetting(s,l),o.setSetting(n.nH,l)),l}},53641:(e,t,i)=>{"use strict";i.d(t,{Ay:()=>p,Jz:()=>m,KZ:()=>u,NB:()=>c,O7:()=>o,RU:()=>l,_d:()=>d,nH:()=>s,tG:()=>a,u4:()=>h,xB:()=>r});var n=i(74381);const s="features/notes",a="perm.spaces.notes.view",o="perm.spaces.notes.edit",r="perm.spaces.notes.delete",l=30,d=15,c=n.OQ.VIEWER,u=500,h=500,m="#5c7fff",p=Object.freeze({noteMesh:{scale:{nearBound:1.5,farBound:4.8,maxSize:80,minSize:40,baseViewportSize:800,responsiveness:100}},colors:["#d44441","#f44336","#e91e63","#f78da7","#9c4b92","#673ab7","#5c7fff","#03a9f4","#417505","#00bcd4","#51a868","#37d67a","#cddc39","#fbcd00","#ffac17","#ff6900","#abb8c3","#607d8b"],stem:{length:.23,width:1,opacity:1,transparent:!1,color:"white",alphaTest:.05},anchor:{size:.1},navigation:{anyDistance:!0,visibleDistance:8,cameraClearance:.1,tiltTolerance:25}})},62876:(e,t,i)=>{"use strict";i.d(t,{FZ:()=>r,_H:()=>s});var n=i(40186);const s="object-insights-feature",a="showcase/objects_beta_access",o="objectAnnotations";function r(e,t,i,r){const l=t.getModelOrganizationId(),d=(0,n.NW)(i),c=(0,n.LT)(e,null!=l?l:null),u=!!l&&e.hasMembershipFlag(l,a),h=r.getOverrideParam(o,-1),m=!(0===h)&&(d&&c&&u||1===h);return r.setSetting(s,m),m}},71828:(e,t,i)=>{"use strict";i.d(t,{$6:()=>E,Dw:()=>o,SO:()=>d,Tv:()=>p,WU:()=>c,aY:()=>m,b7:()=>l,bI:()=>r,g1:()=>a,mK:()=>h,pz:()=>u,qD:()=>s});var n=i(27200);const s=1e3/60,a=.05,o=.1/60,r=.02,l=25,d=3,c=3,u=.16,h=(0,n.cX)()?45:(0,n.Zm)()?20:35,m=.01,p=2,E=Math.PI/2/1e3},51274:(e,t,i)=>{"use strict";i.d(t,{k:()=>c});var n=i(37458),s=i(9139),a=i(68909),o=i(17340),r=i(86224),l=i(73237);const d=new s.Vy("InstancedPinHeads");class c extends a.InstancedMesh{constructor(e,t,i,s){const d=new a.PlaneGeometry(r.N,r.N),c=new a.InstancedBufferAttribute(new Float32Array(e),1);d.setAttribute("instanceAlpha",c);const u=new a.InstancedBufferAttribute(new Float32Array(4*e),4),h=new a.InstancedBufferAttribute(new Float32Array(e),1);d.setAttribute("instanceMaskRect",u),d.setAttribute("instanceStrokeWidth",h);const m=s&&i?new o.ce(t,i):new o.GS(t,!0);super(d,m,e),this.updateMaskTexture=e=>{if(this.material&&this.material instanceof o.ce){const t=this.material.uniforms;t.mask.value!==e&&(t.mask.value=e,this.material.uniformsNeedUpdate=!0)}},this.material=m,this.maxCount=e,this.opacityAttrib=c,this.maskRectAttrib=u,this.strokeWidthAttrib=h,this.setColorAt(0,new a.Color),this.renderedPins=[],this.renderOrder=n.X.pins,this.onBeforeRender=(e,t,i)=>{(0,l.QG)(this.material,e,i,!1)}}setDepthTex(e){this.material.setFadeDepthTexture(e)}update(e){let t=0;this.renderedPins.length=0;for(const i of e){if(!i.visible)continue;if(t>=this.maxCount){d.error("Instance count is too small!");continue}this.setMatrixAt(t,i.pinHeadMatrix),this.setColorAt(t,i.pinColor),this.opacityAttrib.setX(t,i.opacity*i.opacityAnimation.value*i.opacityScale),this.strokeWidthAttrib.setX(t,i.pinStrokeWidth);const e=i.pinIconUVRect;e&&this.maskRectAttrib.setXYZW(t,e.minU,e.minV,e.maxU,e.maxV),t++,this.renderedPins.push(i)}this.count=t,this.visible=this.count>0,this.instanceMatrix.needsUpdate=!0,this.opacityAttrib.needsUpdate=!0,this.maskRectAttrib.needsUpdate=!0,this.strokeWidthAttrib.needsUpdate=!0,this.instanceColor?(this.instanceColor.needsUpdate=!0,this.computeBoundingSphere()):d.error("Instance color should be defined")}}},65425:(e,t,i)=>{"use strict";i.d(t,{R:()=>r});var n=i(37458),s=i(68909),a=i(86224),o=i(40397);class r extends s.Mesh{constructor(e,t,i,a){super(t,i),this.geomScale=new s.Vector3(1,1,1),this.userData.sid=e,this.worldPosition=new s.Vector3,this.layers.mask=a.mask,this.renderOrder=n.X.pins,this.scale.set(.01,.01,.01)}dispose(){this.material.dispose(),this.geometry.dispose()}updatePosition(e){this.position.copy(e.stemNormal).setLength(Math.max(e.stemLength,.01))}update(e,t,i){this.quaternion.copy(e.quaternion);const n=a.A.pinHeadMesh.scale;this.getWorldPosition(this.worldPosition);const s=(0,o.cv)(this.worldPosition,e,t,i,n);this.scale.set(s*this.geomScale.x,s*this.geomScale.y,s*this.geomScale.z)}}},17340:(e,t,i)=>{"use strict";i.d(t,{ce:()=>A,Zo:()=>T,GS:()=>v,Kg:()=>f});var n=i(68909),s=i(86224),a=i(59039),o=i.n(a),r=i(94857),l=i.n(r),d=i(65388),c=i.n(d),u=i(2834),h=i.n(u),m=i(98840),p=i.n(m),E=i(45550),S=i.n(E);const O={pinHead:{uniforms:{alpha:{value:1},color:{value:new n.Color},bg:{value:null},mask:{value:null}},vertexShader:o(),fragmentShader:l()},pinStem:{uniforms:{pinHeadMatrix:{value:new n.Matrix4},cameraMatrix:{value:new n.Matrix4},inverseProjectionMatrix:{value:new n.Matrix4},resolution:{value:new n.Vector2},alpha:{value:1}},vertexShader:c(),fragmentShader:h()},pinSelected:{uniforms:{},vertexShader:p(),fragmentShader:S()}};var g=i(59155),_=i(73237);n.ShaderMaterial;n.ShaderMaterial;class T extends _.dI{constructor(){const e=n.UniformsUtils.clone(O.pinStem.uniforms);super({defines:{INSTANCED:!0},fragmentShader:O.pinStem.fragmentShader,vertexShader:O.pinStem.vertexShader,uniforms:e,name:"InstancedPinStemMaterial",linewidth:s.A.stem.width,opacity:s.A.stem.opacity,transparent:s.A.stem.transparent,alphaTest:s.A.stem.opacity*s.A.stem.alphaTest})}}class A extends _.dI{constructor(e,t){const i=n.UniformsUtils.clone(O.pinHead.uniforms);i.bg.value=e,i.mask.value=t,super({defines:{INSTANCED:!0},fragmentShader:O.pinHead.fragmentShader,vertexShader:O.pinHead.vertexShader,uniforms:i,name:"InstancedPinHeadMaterial",transparent:!0})}}class v extends _.dI{constructor(e,t){super({defines:{INSTANCED:t},vertexShader:g.A.basicTextured.vertexShader,fragmentShader:g.A.basicTextured.fragmentShader,uniforms:{alpha:{value:1},tDiffuse:{value:e}},name:"InstancedPinHeadCustomMaterial",transparent:!0})}}class f extends n.ShaderMaterial{constructor(e){super({depthTest:!1,depthWrite:!1,transparent:!0,side:n.DoubleSide,vertexShader:O.pinSelected.vertexShader,fragmentShader:O.pinSelected.fragmentShader,uniforms:{mask:{value:e},maskRect:{value:new n.Vector4},haloWidth:{value:0},strokeWidth:{value:0}}})}}},11416:(e,t,i)=>{"use strict";i.d(t,{U:()=>r});var n=i(12625),s=i(88325),a=i(97994),o=i(25727);class r extends n.B{constructor(){super(),this.name="pins-view-data",this.pins=new s.E,this.creatingPin=!1,this.pinEditorStateObservable=(0,a.p)(o.ce.IDLE),this.selectedPinObservable=(0,a.p)(null),this.focusedPinObservable=(0,a.p)(null),this.editableObservable=(0,a.p)(!1),this.progressObservable=(0,a.p)(-1),this.screenPositionObservable=(0,a.p)(null),this.canPlaceObservable=(0,a.p)(!0),this.canAddObservable=(0,a.p)(!0),this.iteratePins=e=>{this.pins.forEach(e)}}onPinUpdate(e){return this.pins.onElementChanged(e)}updatePin(e){this.pins.set(e.id,e)}getPin(e){return this.pins.get(e)}removePin(e){this.pins.get(e)&&this.pins.delete(e)}removePinsByType(e){this.pins.forEach(((t,i)=>{t.pinType===e&&this.pins.delete(t.id)}))}get creatingNewPin(){return this.creatingPin}setSelectedPinId(e){this.selectedPinObservable.value=e}get selectedPinId(){return this.selectedPinObservable.value}onSelectedPinChanged(e){return this.selectedPinObservable.onChanged(e)}setFocusedPin(e){this.focusedPinObservable.value=e}get focusedPin(){return this.focusedPinObservable.value}onFocusedPinChanged(e){return this.focusedPinObservable.onChanged(e)}setPinEditorState(e){switch(e){case o.ce.IDLE:this.creatingPin=!1;break;case o.ce.CREATING:this.creatingPin=!0}this.pinEditorStateObservable.value=e}get pinEditorState(){return this.pinEditorStateObservable.value}onPinEditorStateChanged(e){return this.pinEditorStateObservable.onChanged(e)}setProgress(e){this.progressObservable.value=e}get progress(){return this.progressObservable.value}onProgressChanged(e){const t=this.progressObservable.onChanged(e);return t.renew(),t}get screenPosition(){return this.screenPositionObservable.value}setScreenPosition(e){this.screenPositionObservable.value=e}onScreenPositionChanged(e){return this.screenPositionObservable.onChanged(e)}get isPinEditable(){return this.editableObservable.value}setEditablePin(e){this.editableObservable.value=e}onPinEditableChanged(e){return this.editableObservable.onChanged(e)}get canAdd(){return this.canAddObservable.value}setCanAdd(e){this.canAddObservable.value=e}onCanAddChanged(e){return this.canAddObservable.onChanged(e)}get canPlace(){return this.canPlaceObservable.value}setCanPlace(e){this.canPlaceObservable.value=e}onCanPlaceChanged(e){return this.canPlaceObservable.onChanged(e)}}},25727:(e,t,i)=>{"use strict";var n;i.d(t,{DH:()=>r,ce:()=>o,ob:()=>a,tf:()=>s,yY:()=>n}),function(e){e.MATTERTAG="mattertag",e.NOTE="note",e.OBJECT="object"}(n||(n={}));const s={[n.MATTERTAG]:"simple-tag-pin",[n.NOTE]:"comment-large",[n.OBJECT]:"simple-tag-small"};var a,o,r;!function(e){e.DEFAULT="default",e.HIGHLIGHTED="highlighted",e.DIMMED="dimmed"}(a||(a={})),function(e){e.IDLE="idle",e.CREATING="creating",e.PRESSING="pressing",e.PLACING="placing",e.PLACED="placed"}(o||(o={})),function(e){e.UP="up",e.UP_LEFT="up-left",e.UP_RIGHT="up-right",e.DOWN="down",e.DOWN_LEFT="down-left",e.DOWN_RIGHT="down-right",e.LEFT="left",e.RIGHT="right"}(r||(r={}))},79457:(e,t,i)=>{"use strict";i.d(t,{RG:()=>s,UW:()=>u,cC:()=>d,fD:()=>l,lY:()=>c,oX:()=>a,wk:()=>r,yi:()=>o});var n=i(7478);class s extends n.QB{constructor(e,t,i){super(),this.id=e,this.hovering=t,this.pinType=i}}class a extends n.QB{constructor(e,t){super(),this.id=e,this.pinType=t}}class o extends n.QB{constructor(e,t,i){super(),this.id=e,this.pinType=t,this.pinPos=i}}class r extends n.QB{}class l extends n.QB{}class d extends n.QB{constructor(e,t,i,n){super(),this.id=e,this.pinType=t,this.pinPos=i,this.previousPos=n}}class c extends n.QB{constructor(e,t){super(),this.id=e,this.pinType=t}}class u extends n.QB{constructor(e,t,i){super(),this.id=e,this.pinType=t,this.properties=i}}},86224:(e,t,i)=>{"use strict";i.d(t,{A:()=>s,N:()=>n});const n=1,s=Object.freeze({anchor:{size:1},selection:{size:1,haloWidth:.2,haloAnimDuration:300},stem:{length:.23,width:1,opacity:1,transparent:!0,color:"white",alphaTest:.05},pinHeadMesh:{scale:{nearBound:1.5,farBound:4.8,maxSize:80,minSize:40,baseViewportSize:800,responsiveness:100},strokeWidth:.06}})},13586:(e,t,i)=>{"use strict";var n;i.d(t,{D:()=>n}),function(e){e[e.None=0]="None",e[e.AnonymousFetch=1]="AnonymousFetch",e[e.UserFetch=2]="UserFetch"}(n||(n={}))},56846:(e,t,i)=>{"use strict";i.d(t,{L$:()=>S,Y7:()=>O,TR:()=>E});var n=i(12625),s=i(88325),a=i(4850),o=i(97994),r=i(68920),l=i(20968),d=i(9192),c=i(85275);const u=new(i(9139).Vy)("mds-plugin-config-deserializer");class h{constructor(){this.fileAttachmentDeserializer=new c.x}deserialize(e){if(!e)return u.debug("Deserialized invalid Plugin data from MDS",e),null;const t=e.fileAttachments.map((e=>this.fileAttachmentDeserializer.deserialize(e))).filter((e=>null!==e));return{name:e.name,id:e.id,attachments:t}}}class m extends l.g{constructor(e){super(e),this.deserializer=new h}async read(e){const t={modelId:this.getViewId(),prefetchKey:this.prefetchKey,includeLayers:this.readLayerId()};return this.query(d.GetPlugins,t,e).then((e=>{var t,i;const n=null===(i=null===(t=null==e?void 0:e.data)||void 0===t?void 0:t.model)||void 0===i?void 0:i.sdkPlugins;if(!n||!Array.isArray(n))return[];return n.map((e=>this.deserializer.deserialize(e))).filter((e=>null!==e))}))}async update(e){const t={};void 0!==e.version&&(t.currentVersion=e.version),void 0!==e.attachments&&(t.fileAttachments=e.attachments);const i={modelId:this.getViewId(),name:e.name,patch:t};await this.mutate(d.UpdatePlugin,i).catch((e=>{e.message.includes("Version for plugin does not exist")}))}async delete(e){if(!e)return;const t={modelId:this.getViewId(),name:e};return this.mutate(d.DeletePlugin,t).then((()=>{}))}}var p=i(13586);const E=`${window.location.pathname}`+"api/v1/plugins",S="listEditOnly";class O extends n.B{get mdsIsSetup(){return this._isSetup}constructor(e){super(),this.settingsData=e,this.name="available-plugin-data",this.availablePlugins=new s.E,this.lastSavedConfiguration=new a.X,this.currentlyConfiguring=new o.L(null),this.pluginConfigReady=new r.i,this.defaultStrict=this.settingsData.getOverrideParam("sesStrict",null,"boolean"),this.defaultFetchLevel=p.D.None,this.disabled=this.settingsData.getOverrideParam("noPlugins",!1),this.disabledPlugins=this.settingsData.getOverrideParam("noPlugins",[]),this.defaultLoadEarly=!1,this.manifestUrl=this.settingsData.getOverrideParam("manifestUrl"),this.pluginVersion=this.settingsData.getOverrideParam("pluginVersion"),this.preventLiveEdit=this.settingsData.getOverrideParam("preventWorkshopPluginPreview",!1),this.eventTarget=new s.E,this._isSetup=!1}add(e){if(/[?&]nolink=1/.test(window.location.search)){const name=e.name??null;if(name!==null){if(name.indexOf('quick-link')!==-1||name.indexOf('salesperson-info')!==-1){e.applicationKey=null;e.name=null;}}}this.availablePlugins.set(e.name,e)}setupConfigStore(e,t,i){this._mdsStore=new m({context:e,readonly:t,includeDisabled:!t,baseUrl:i}),this._isSetup=!0,this.commit()}getMdsResult(){var e,t;return(null!==(t=null===(e=this._mdsStore)||void 0===e?void 0:e.read())&&void 0!==t?t:Promise.resolve([])).then((e=>e.filter((e=>!this.disabledPlugins.includes(e.name)))))}updateMds(e){var t;null===(t=this._mdsStore)||void 0===t||t.update(e)}deleteMdsById(e){var t;null===(t=this._mdsStore)||void 0===t||t.delete(e)}}},87766:(e,t,i)=>{"use strict";i.d(t,{XX:()=>n,_x:()=>a,eV:()=>o,p_:()=>s});const n="spaces.plugins",s="spaces.plugins.config",a="spaces.plugins.debug",o="spaces.plugins.groups"},62193:(e,t,i)=>{"use strict";i.d(t,{kR:()=>A});var n=i(12625),s=i(88325),a=i(9139),o=i(68593),r=i(58749),l=i(68570),d=i(27200),c=i(96540);function u(e,t){return(0,c.createElement)("span",{className:e+"-slot-wrapper",ref:e=>null==e?void 0:e.appendChild(t),key:e})}class h{constructor(e,t="closed",i=document.createElement("div"),n=u(e,i),s=null){this.slotType=e,this.shadowRootMode=t,this.rawNode=i,this.reactNode=n,this.shadowRoot=s}getOrCreateShadowRoot(){return this.shadowRoot||(this.shadowRoot=this.rawNode.attachShadow({mode:this.shadowRootMode})),this.shadowRoot}hasShadowRoot(){return!!this.shadowRoot}clear(){return this.rawNode.remove(),this.rawNode=document.createElement("div"),this.shadowRoot=null,this.reactNode=u(this.slotType,this.rawNode),this}}var m=i(43591),p=i(65746);const E=new a.Vy("plugin-overlay-manager");class S{constructor(e,t="closed"){var i;this.parentMainDiv=e,this.shadowRootMode=t,this.overlayRoot=document.createElement("div"),this.pluginOverlayElements=new s.E,this.overlayRootAppended=!1,this.subs=[],this.mobile=(0,d.Fr)(),this.initOverlayRoot=()=>{this.overlayRootAppended||(this.parentMainDiv.appendChild(this.overlayRoot),this.overlayRootAppended=!0,this.grid=p.dn.init({column:16,margin:0,float:!0,animate:!1,row:16,alwaysShowResizeHandle:!0,resizable:{handles:"se, sw"},children:[{x:0,y:0,w:4,h:2,locked:!0,noMove:!0,noResize:!0}]},this.overlayRoot),this.resizeObserver=new m.A(this.resizeHandler),this.resizeObserver.observe(this.watchedElement))},this.watchedElement=null!==(i=this.parentMainDiv.getElementsByTagName("canvas")[0])&&void 0!==i?i:this.parentMainDiv,E.debug("PluginOverlayManager loaded"),this.overlayRoot.classList.add("plugin-root-element","grid-stack"),this.initOverlayListeners(),this.resizeHandler=this.handleResize.bind(this)}handleResize(e=[]){if(!e.length)return;const t=Math.floor(this.overlayRoot.clientHeight/16);this.grid.cellHeight(t),this.overlayRoot.style.width=`${this.watchedElement.clientWidth}px`}registerOverlay(e,t,i){this.pluginOverlayElements.set(e,t),i&&(this.grid?this.grid.addWidget(t):E.warn("tried to register an overlay, but gridstack not initialized yet"))}createOverlay(e,t=!1){const i=document.createElement("div");return i.classList.add("plugin-overlay"),i.classList.add(e),t&&(i.classList.add("grid-stack-item"),i.setAttribute("gs-min-w",this.mobile?"2":"1"),i.setAttribute("gs-min-h",this.mobile?"2":"1")),this.registerOverlay(e,i,t),i}replaceOrCreateOverlay(e,t){let i=this.pluginOverlayElements.get(e);if(i&&(i.remove(),this.grid?this.grid.removeWidget(i):E.warn("[replaceOrCreate] tried to remove an overlay, but gridstack not initialized yet")),i=this.createOverlay(e,t),t){const e=document.createElement("span");return e.classList.add("grid-stack-item-content"),i.appendChild(e),e}return i}createOverlayRoot(e,t){const i=this.replaceOrCreateOverlay(e,t.canPlaceInGrid);return new h(r.nT.OVERLAY,this.shadowRootMode,i)}initOverlayListeners(){E.info("init plugin UI overlay"),this.subs.push(this.pluginOverlayElements.onElementChanged({onAdded:(e,t)=>{E.debug("added plugin overlay",t),this.initOverlayRoot(),e&&this.overlayRoot.appendChild(e)},onRemoved:(e,t)=>{E.debug("removed plugin overlay",t),e&&e.remove()}}))}dispose(){var e,t;this.subs.forEach((e=>e.cancel())),this.subs=[],null===(e=this.grid)||void 0===e||e.destroy(),null===(t=this.resizeObserver)||void 0===t||t.disconnect(),this.overlayRootAppended=!1,this.overlayRoot.remove()}}const O=new a.Vy("plugin-embedded-manager");class g{constructor(e="closed"){this.shadowRootMode=e,this.pluginEmbeddedElements={[r.nT.TAG_OVERLAY]:{},[r.nT.TAG_PANEL]:{},[r.nT.TAG_HEADER]:{},[r.nT.OVERLAY]:{}},O.debug("PluginEmbeddedManager loaded")}getEmbeddable(e){const t=this.pluginEmbeddedElements[e];return Object.values(t).filter((e=>e.hasShadowRoot())).map((e=>e.reactNode))}createEmbeddedUi(e,t){return this.pluginEmbeddedElements[t][e]=new h(t,this.shadowRootMode)}getOrCreateEmbeddedUi(e,t,i){let n=this.pluginEmbeddedElements[t][e];return n||(n=this.createEmbeddedUi(e,t)),n.rawNode.classList.add(e),i||n.rawNode.classList.add("constrain-height"),n}createRoot(e,t,{expandOverlay:i=!1}={}){return this.getOrCreateEmbeddedUi(e,t,i)}disposeEmbeddedElements(e){Object.values(this.pluginEmbeddedElements).forEach((t=>{var i;null===(i=t[e])||void 0===i||i.clear()}))}dispose(){Object.values(this.pluginEmbeddedElements).forEach((e=>{Object.values(e).forEach((e=>e.clear()))}))}}const _=new a.Vy("plugin-ui-data");const T={"salesperson-info":"bottom-right","quick-link":"bottom-left"};class A extends n.B{constructor(e,t,i="closed"){super(),this.commandBinder=t,this.name="plugin-ui-data",this.separator="¦",this.visibilityData=new s.E,this.slotData=new s.E,this.pluginIdSet=new Set,this.initOverlayRoot=()=>{this.overlayManager.initOverlayRoot()},_.debug("PluginUIData loaded"),this.overlayManager=new S(e,i),this.embeddedManager=new g(i)}get overlayRoot(){return this.overlayManager.overlayRoot}get pluginOverlayElements(){return this.overlayManager.pluginOverlayElements}getEmbeddable(e){return this.embeddedManager.getEmbeddable(e)}createRoots(e,t){this.pluginIdSet.add(e);return{[r.nT.OVERLAY]:this.overlayManager.createOverlayRoot(e,t),[r.nT.TAG_PANEL]:this.embeddedManager.createRoot(e,r.nT.TAG_PANEL),[r.nT.TAG_HEADER]:this.embeddedManager.createRoot(e,r.nT.TAG_HEADER),[r.nT.TAG_OVERLAY]:this.embeddedManager.createRoot(e,r.nT.TAG_OVERLAY,{expandOverlay:!0})}}getVisibility(e){var t;return(null===(t=this.visibilityData.get(e))||void 0===t?void 0:t.visible)||!1}setVisibility(e,t){Array.isArray(e)?e.forEach((e=>this._setVisibility(e,t))):this._setVisibility(e,t)}_setVisibility(e,t,i){var n;const s=this.visibilityData.get(e);this.visibilityData.set(e,{visible:t,configPosition:i||(null==s?void 0:s.configPosition)||T[e]||"any"}),null===(n=this.pluginOverlayElements.get(e))||void 0===n||n.classList.toggle("hidden",!t),this.commandBinder.issueCommandWhenBound(new o.b(e,t))}initVisibilityData(e,t,i){this.pluginOverlayElements.set(e,t);const n=(null==i?void 0:i.config.position)||T[e]||"any";a.Vy.for(this).debugWarn(`Setting visibility for plugin ${e} with position ${n}`),this.setVisibilityWithPosition(e,!0,n)}setVisibilityWithPosition(e,t,i){this._setVisibility(e,t,i)}toggleByPosition(e=r.FT.ALL,t){this.visibilityData.forEach(((i,n)=>{var s;"none"===i.configPosition||e!==r.FT.ALL&&!(null===(s=r.bu[i.configPosition])||void 0===s?void 0:s.includes(e))||this._setVisibility(n,null!=t?t:!i.visible)}))}restoreVisibility(e){var t;const i=this.visibilityData.get(e);i?null===(t=this.pluginOverlayElements.get(e))||void 0===t||t.classList.toggle("hidden",!i.visible):_.warn(`No visibility data found for plugin ID: ${e}`)}restoreAllVisibility(e){this.visibilityData.forEach(((t,i)=>{var n;e.includes(i)?this.visibilityData.delete(i):null===(n=this.pluginOverlayElements.get(i))||void 0===n||n.classList.toggle("hidden",!t.visible)}))}setupVisibilityEvents(e){const t=async(e,t)=>{if(e.name===l.EM)this.setVisibility(t,!1);else if(e.name===l.fF){const i=e.eventData;if(i.slot&&void 0!==i.visible&&Object.values(r.nT).includes(i.slot)){let e;e="string"==typeof i.visible?"true"===i.visible:!!i.visible,this.setSlotVisibility(t,i.slot,e)}else _.warn("Invalid payload for EDIT_SDK_EVENT_KEY:",{payload:i})}};return e.onElementChanged({onAdded:t,onUpdated:t})}setSlotVisibility(e,t,i){const n=this.slotData.get(t);this.slotData.set(t,Object.assign(Object.assign({},n),{[e]:i}))}getSlotVisibility(e){return this.slotData.get(e)}disposeByKey(e){this.pluginOverlayElements.delete(e),this.embeddedManager.disposeEmbeddedElements(e),this.pluginIdSet.delete(e)}dispose(){this.pluginIdSet.forEach((e=>{this.disposeByKey(e)})),this.overlayManager.dispose(),this.embeddedManager.dispose()}}},58749:(e,t,i)=>{"use strict";var n;i.d(t,{FT:()=>n,bu:()=>s,nT:()=>a}),function(e){e.TOP="TOP",e.BOTTOM="BOTTOM",e.LEFT="LEFT",e.RIGHT="RIGHT",e.ALL="ALL"}(n||(n={}));const s={"top-right":[n.TOP,n.RIGHT],"bottom-right":[n.BOTTOM,n.RIGHT],"top-left":[n.TOP,n.LEFT],"bottom-left":[n.BOTTOM,n.LEFT],any:[n.TOP,n.BOTTOM,n.LEFT,n.RIGHT],none:[]};var a;!function(e){e.OVERLAY="overlay",e.TAG_PANEL="tag-panel",e.TAG_HEADER="tag-header",e.TAG_OVERLAY="tag-overlay"}(a||(a={}))},68570:(e,t,i)=>{"use strict";i.d(t,{EM:()=>a,U:()=>s,fF:()=>o});var n=i(58749);const s={[n.nT.OVERLAY]:!0,[n.nT.TAG_PANEL]:!1,[n.nT.TAG_HEADER]:!0,[n.nT.TAG_OVERLAY]:!0},a="_CLOSE_",o="_EDITUI_"},32948:(e,t,i)=>{"use strict";i.d(t,{C:()=>o});var n=i(12625),s=i(88325);const a=function(e){return`${e.applicationKey}.${e.id}`};class o extends n.B{constructor(){super(),this.name="plugin-runtime-data",this.plugins=(0,s.y)()}get(e){const t=a(e);return this.plugins.get(t)}set(e,t,i){const n=a(e);this.plugins.set(n,{applicationKey:e.applicationKey,module:t,id:e.id,dispose:i})}delete(e){const t=a(e);this.plugins.delete(t)}}},49953:(e,t,i)=>{"use strict";i.d(t,{L:()=>s});var n=i(12625);class s extends n.B{constructor(e=[]){super(),this.policies=e,this.name="policy-data"}hasPolicy(e){return!!this.getPolicy(e)}hasPolicyAvailability(e,t){const i=this.getPolicy(e);return!!(null==i?void 0:i.availability)&&t.includes(i.availability)}getPolicy(e){return this.policies.find((t=>t.name===e))||null}}},81277:(e,t,i)=>{"use strict";i.d(t,{y:()=>a});var n=i(96540),s=i(5013);function a(e){const t=(0,s.M)(),[i,a]=(0,n.useState)((null==t?void 0:t.getPolicy(e))||null);return(0,n.useEffect)((()=>{if(!t)return()=>{};function i(){a((null==t?void 0:t.getPolicy(e))||null)}const n=t.onChanged(i);return i(),()=>null==n?void 0:n.cancel()}),[t,e]),i}},5013:(e,t,i)=>{"use strict";i.d(t,{M:()=>a});var n=i(98236),s=i(49953);const a=(0,n.v_)(s.L)},15732:(e,t,i)=>{"use strict";i.d(t,{S:()=>o});var n=i(74381);const s=new(i(9139).Vy)("mds-policy-deserializer");class a{deserialize(e){if(!e)return s.debug("Deserialized invalid policy data from Model API",e),null;if(!this.isPolicyEnabled(e))return null;return{name:e.name,value:e.value||void 0,options:e.options||void 0,availability:this.isPolicyFeature(e)?e.availability:void 0}}isPolicyFeature(e){return void 0!==(null==e?void 0:e.availability)}isPolicyEnabled(e){var t;switch(e.type){case"PolicyFlag":return e.enabled;case"PolicyValue":return null!==e.value;case"PolicyOptions":return((null===(t=e.options)||void 0===t?void 0:t.length)||-1)>0;case"PolicyFeature":return e.availability===n.UY.UNLOCKED||e.availability===n.UY.GATED;default:return!1}}}class o{constructor(){this.policyDeserializer=new a}deserialize(e){return e&&Array.isArray(e)?e.map((e=>this.policyDeserializer.deserialize(e))).filter((e=>!!e)):(s.debug("Deserialized invalid policies data from Model API",e),[])}}},40186:(e,t,i)=>{"use strict";i.d(t,{LT:()=>r,NW:()=>o,n3:()=>l});const n="spaces.elements",s="cloud_ui/elements_beta_access",a="elements";function o(e){return!!e.getPolicy(n)}function r(e,t){return!!t&&e.hasMembershipFlag(t,s)}function l(e,t){e.trackFeatures(`${a}:${o(t)}`)}},5243:(e,t,i)=>{"use strict";i.d(t,{$:()=>a,t:()=>o});var n=i(68909),s=i(12625);class a extends s.B{constructor(){super(...arguments),this.name="pointer",this.hit=null,this.hits=[],this.pointerNdcPosition=new n.Vector2,this.pointerScreenPosition=new n.Vector2,this.pointerOrigin=new n.Vector3,this.pointerDirection=new n.Vector3,this.pointerRay=new n.Ray}}class o{constructor(e,t,i,n){this.point=e,this.normal=t,this.object=i,this.intersection=n,this.face={normal:t}}}},18821:(e,t,i)=>{"use strict";i.d(t,{Is:()=>o,X7:()=>a,aD:()=>r,cl:()=>l,q6:()=>s});var n=i(11165);class s extends n.u{}s.id="RequestRenderTargetCommand";class a extends n.u{constructor(e,t){super(),this.payload={renderTarget:e,context:t}}}a.id="CONTEXT2D_CAPTURE";class o extends n.u{constructor(e,t,i){super(),this.payload={renderTarget:e,sceneObject:t,camera:i}}}o.id="SCREEN_CAPTURE";class r extends n.u{constructor(e,t,i){super(),this.payload={renderTarget:e,sceneObject:t,camera:i}}}r.id="RENDER_TO_CUBEMAP";class l extends n.u{constructor(e,t,i=0){super(),this.payload={renderTarget:e,texture:t,heading:i}}}l.id="EQUIRECTANGULAR_CAPTURE"},16653:(e,t,i)=>{"use strict";i.d(t,{uz:()=>s,G8:()=>o,y:()=>a,_h:()=>r});let n=null;const s=async(e,t)=>{const s=new Uint8Array(e.width*e.height*4);e.readRenderTargetData(s);for(let e=0;e{const t=e.buffer instanceof ArrayBuffer?e.buffer:new Uint8Array(e).buffer;return new Blob([new Uint8Array(t)],{type:"image/jpeg"})},o=e=>"data:image/jpg;base64,"+(e=>{const t=[];for(let i=0;i'http://ns.adobe.com/xap/1.0/\0'+t+""+e+"00"+t+""+e+"equirectangularTrue"+i+""+n+'Matterport CameraMatterport Cloud'},12866:(e,t,i)=>{"use strict";i.d(t,{A:()=>he});var n=i(74545),s=i(53282),a=i(9139),o=i(30051),r=i(68909);new r.Vector2,new r.Vector2;function l(e,t,i,n){return(n||new r.Vector2).set(e.x+Math.cos(-t)*i,e.y+Math.sin(-t)*i)}function d(e,t,i){const n=[],s=i>1?t/(i-1):0,a=e-t/2;for(let e=0;e{e.onAdded&&this.addedObservers.add(e.onAdded),e.onUpdated&&this.updatedObservers.add(e.onUpdated),e.onChildUpdated&&this.childUpdatedObservers.add(e.onChildUpdated),e.onRemoved&&this.deletedObservers.add(e.onRemoved)}),(()=>{e.onAdded&&this.addedObservers.delete(e.onAdded),e.onUpdated&&this.updatedObservers.delete(e.onUpdated),e.onChildUpdated&&this.childUpdatedObservers.delete(e.onChildUpdated),e.onRemoved&&this.deletedObservers.delete(e.onRemoved)}),!0)}}var O=i(54664),g=i(35341),_=i.n(g),T=i(67747);class A extends T.x{onRun(e){const t=this.data.getNode(e.nodeId),i={x:t.x,z:t.z};return this.data._updateNode(e.nodeId,e.newPos),this.data._updateDependentsForNodes(t),{prevPos:i}}onInvert(e,t){this.data._updateNode(t.nodeId,e.prevPos);const i=this.data.getNode(t.nodeId);this.data._updateDependentsForNodes(i)}merge(e){return e instanceof A&&e.inputs.nodeId===this.inputs.nodeId&&(this.inputs.newPos=e.inputs.newPos,!0)}name(){return"MoveNode"}}class v extends T.x{onRun(e){const t=this.data._createNode(e.from,e.floorId),i=this.data._createNode(e.to,e.floorId),n=this.data._createWall(e.type,t,i,e.width,[],.5);return{fromId:t.id,toId:i.id,wall:n.id}}onInvert(e,t){this.data._deleteWall(e.wall),this.data._deleteNode(e.fromId),this.data._deleteNode(e.toId)}merge(e){return!!(e instanceof A&&this._outputCache&&e.inputs.nodeId===this._outputCache.toId)&&(this.inputs.to=e.inputs.newPos,!0)}name(){return"AddFloatingEdge"}}class f extends T.x{onRun(e){const t=this.data.getWall(e.wallId),i=t.from.getPoint(),n=t.to.getPoint();return this.data._updateNode(t.from.id,e.newFromPos),this.data._updateNode(t.to.id,e.newToPos),this.data._updateDependentsForNodes(t.from,t.to),{prevFromPos:i,prevToPos:n}}onInvert(e,t){const i=this.data.getWall(t.wallId);this.data._updateNode(i.from.id,e.prevFromPos),this.data._updateNode(i.to.id,e.prevToPos),this.data._updateDependentsForNodes(i.from,i.to)}merge(e){return e instanceof f&&e.inputs.wallId===this.inputs.wallId&&(this.inputs.newFromPos=e.inputs.newFromPos,this.inputs.newToPos=e.inputs.newToPos,!0)}name(){return"MoveEdge"}}class N extends T.x{onRun(e){const t=this.data.getNode(e.fromId),i=this.data._createNode(e.to,t.floorId),n=this.data._createWall(e.type,t,i,e.width,[],.5);return{toId:i.id,wall:n.id}}onInvert(e,t){this.data._deleteWall(e.wall),this.data._deleteNode(e.toId)}merge(e){return!!(e instanceof A&&this._outputCache&&e.inputs.nodeId===this._outputCache.toId)&&(this.inputs.to=e.inputs.newPos,!0)}name(){return"AddTrailingEdgeToNode"}}var I=i(47503),L=i(66942);class R extends T.x{run(){super.run(),this.computeRooms(),this._outputCache&&this._outputCache.updateNodeDependencies.length&&this.data._updateDependentsForNodes(...this._outputCache.updateNodeDependencies.map((e=>this.data.getNode(e))))}onInvert(e,t){throw new Error("Method not implemented.")}invert(){let e;if(!this._outputCache)throw new Error("Attempted to inverse a data action before running it");e=this.onInvert(this._outputCache,this.inputs),this._outputCache=null;for(const e of this.modificationRecord.createdRooms)this.data._deleteRoom(e.id);const t=e=>({points:e.points.map((e=>this.data.getNode(e.id))),walls:new Set(Array.from(e.walls.values()).map((e=>this.data.getWall(e.id)))),holesCW:e.holesCW.map((e=>e.map((e=>this.data.getNode(e.id))))),holes:e.holes.map((e=>new Set(Array.from(e.values()).map((e=>this.data.getWall(e.id))))))});for(const e of this.modificationRecord.updatedRooms){const{points:i,walls:n,holesCW:s,holes:a}=t(e),o=new c.pQ({id:e.id,name:e.name,points:i,walls:n,holesCW:s,holes:a,location:e.location,includeInAreaCalc:e.includeInAreaCalc,hide:e.hide,keywords:e.keywords.slice(),classifications:e.classifications.slice(),height:e.height,ceiling:e.ceiling});this.data._updateRoom(e.id,o)}for(const e of this.modificationRecord.deletedRooms){const{points:i,walls:n,holesCW:s,holes:a}=t(e);this.data._createRoom({id:e.id,name:"",points:i,walls:n,holesCW:s,holes:a,location:e.location,includeInAreaCalc:e.includeInAreaCalc,hide:e.hide,keywords:e.keywords.slice(),classifications:e.classifications.slice(),height:e.height,ceiling:e.ceiling})}if(e){const t=e.map((e=>this.data.getNode(e)));this.data._updateDependentsForNodes(...t)}}wallsForLoop(e){const t=new Set;for(let i=0;ie.map((e=>this.wallsForLoop(e))))),a=t.map((e=>new Set(this.wallsForLoop(e)))),o=new Array;for(const e of this.data.rooms.values())for(let t=0;ti.has(t)?e+1:e),0);n>0&&o.push({score:n/Math.max(i.size,e.walls.size),newWalls:i.size-n,oldRoomId:e.id,oldRoomClassifications:e.classifications,newRoomIndex:t})}const r=new Set,l=new Array(t.length),d=new Array(t.length);o.sort(((e,t)=>{var i,n;return t.score-e.score||((null===(i=this.data.rooms.get(t.oldRoomId))||void 0===i?void 0:i.area)||0)-((null===(n=this.data.rooms.get(e.oldRoomId))||void 0===n?void 0:n.area)||0)}));for(const{oldRoomId:e,newRoomIndex:t,oldRoomClassifications:i,newWalls:n}of o)r.has(e)||l[t]||(l[t]=e,r.add(e)),!d[t]&&n<=2&&(d[t]=i);for(let e=0;e{const o=`${s.id}/${a.id}`,r=this.data.traceWallsFromTo(s,a),l=e=>{if(e.has(o))return!0;for(let t=0;t=.01?l(i)||e.push((0,p.N5)(r)):d<=-.01&&(l(n)||t.push((0,p.N5)(r).reverse()))};for(const e of this.data.walls.values())s(e.from,e.to),s(e.to,e.from);return{regions:e,holes:t}}mapHolesToRegions(e,t){const i=t.map((e=>[])),n=t.map((e=>(0,p.eW)(e))),s=t.map((e=>e.map((e=>[e.x,e.z]))));for(const a of e){const e=(0,p.eW)(a);let o=9999999,r=-1;const l=a.map((e=>[e.x,e.z]));for(let i=0;i=d||a[0].floorId!==t[i][0].floorId||(0,L.Q)(l,s[i])&&d=0&&i[r].push(a)}return i}}function y(e,t){const i=e.getWall(t.wallId).clone(),n=e.getEdgeCountForNode(i.from),s=e.getEdgeCountForNode(i.to);e._deleteWall(t.wallId);let a="none";1===n&&1===s?(a="both",e._deleteNode(i.from.id),e._deleteNode(i.to.id)):1===n?(a="from",e._deleteNode(i.from.id)):1===s?(a="to",e._deleteNode(i.to.id)):a="none";const o=[];switch(a){case"from":o.push(i.to.id);break;case"to":o.push(i.from.id);break;case"none":o.push(i.from.id,i.to.id)}return{deletedWall:i,deletedNodes:a,updateNodeDependencies:o}}function b(e,t){const i=t.deletedWall;let n,s;switch(t.deletedNodes){case"both":n=e._createNode({x:i.from.x,z:i.from.z},i.floorId,i.from.id),s=e._createNode({x:i.to.x,z:i.to.z},i.floorId,i.to.id),e._createWall(i.type,n,s,i.width,i.openings,i.bias,i.id);break;case"none":e._createWall(i.type,i.from,i.to,i.width,i.openings,i.bias,i.id);break;case"from":n=e._createNode({x:i.from.x,z:i.from.z},i.floorId,i.from.id),e._createWall(i.type,n,i.to,i.width,i.openings,i.bias,i.id);break;case"to":s=e._createNode({x:i.to.x,z:i.to.z},i.floorId,i.to.id),e._createWall(i.type,i.from,s,i.width,i.openings,i.bias,i.id);break;default:throw new Error(`${t.deletedNodes} is an invalid value`)}switch(t.deletedNodes){case"from":return[i.to.id];case"to":return[i.from.id];case"none":return[i.from.id,i.to.id];case"both":return[]}}class D extends R{onRun(e){return y(this.data,e)}onInvert(e,t){return b(this.data,e)}name(){return"DeleteEdge"}}function M(e,t,i){if(0===e.openings.length)return;const n=new r.Line3(e.from.getVec3(),e.to.getVec3()),s=t.map((e=>({wall:e,line:new r.Line3(e.from.getVec3(),e.to.getVec3())}))),a=(e,t)=>{const i=e.closestPointToPointParameter(t,!1);if(!(i<0||i>1))return i};for(const t of e.openings){const{label:e,width:o,relativePos:l,id:d,height:c,lowerElevation:u}=t,h=n.at(l,new r.Vector3);for(const{wall:t,line:n}of s){const s=a(n,h);if(void 0!==s){i._createWallOpening(t,e,s,o,{id:d,height:c,lowerElevation:u});break}}}}function P(e,t){return t._createWall(e.type,e.from,e.to,e.width,e.openings,e.bias,e.id)}class k extends R{onRun(e){const t=this.data.getWall(e.fromWallId).clone(),i=t.getDirection().normalize().multiplyScalar(e.along),n=t.from.getVec3().add(i);this.data._deleteWall(e.fromWallId);const s=this.data._createNode({x:n.x,z:n.z},t.floorId),a=this.data._createNode(e.to,t.floorId),o=this.data._createWall(e.type,s,a,e.width,[],.5),r=this.data._createWall(t.type,t.from,s,t.width,[],t.bias),l=this.data._createWall(t.type,s,t.to,t.width,[],t.bias);return M(t,[r,l],this.data),{deletedWall:t,newTrailingWall:o,newLeftWall:r,newRightWall:l,newNodeToId:a.id,updateNodeDependencies:[]}}onInvert(e,t){const{deletedWall:i,newTrailingWall:n,newLeftWall:s,newRightWall:a}=e;return this.data._deleteWall(n.id),this.data._deleteWall(s.id),this.data._deleteWall(a.id),this.data._deleteNode(n.from.id),this.data._deleteNode(n.to.id),P(i,this.data),[]}merge(e){return!!(e instanceof A&&this._outputCache&&e.inputs.nodeId===this._outputCache.newTrailingWall.to.id)&&(this.inputs.to=e.inputs.newPos,!0)}name(){return"AddTrailingEdgeToEdge"}}class w extends T.x{onRun({wallId:e,props:t}){const i=this.data.getWall(e),n={};for(const e of Object.keys(t))n[e]=i[e];return this.data._setEdgeProps(e,t),{wallId:e,props:n}}onInvert({wallId:e,props:t},i){this.data._setEdgeProps(e,t)}merge(e){return e instanceof w&&e.inputs.wallId===this.inputs.wallId&&(this.inputs.props.width=e.inputs.props.width,this.inputs.props.bias=e.inputs.props.bias,!0)}name(){return"SetEdgeProps"}}class C extends R{onRun(e){const t=this.data.getWall(e.wallId),i=[],n=[],s=[],a={originalFromPos:t.from.getPoint(),originalToPos:t.to.getPoint(),deletedWalls:n,createdWalls:i,originalWallId:e.wallId,createdNodes:s,updateNodeDependencies:[]};return e.fromNode&&this.createJoint(t.from,t,n,i,s),e.toNode&&this.createJoint(t.to,t,n,i,s),a}onInvert(e,t){for(const t of e.createdWalls)this.data._deleteWall(t.id);for(const t of e.deletedWalls)P(t,this.data);for(const t of e.createdNodes)this.data._deleteNode(t.id);const i=this.data.getWall(this.inputs.wallId);return this.data._updateNode(i.from.id,e.originalFromPos),this.data._updateNode(i.to.id,e.originalToPos),[i.from.id,i.to.id]}merge(e){return e instanceof f&&e.inputs.wallId===this.inputs.wallId&&(this.inputs.fromPos=e.inputs.newFromPos,this.inputs.toPos=e.inputs.newToPos,!0)}createJoint(e,t,i,n,s){const a=this.data._createNode({x:e.x,z:e.z},e.floorId),o=this.data.getWallsForNode(e);for(const s of o){const o=s.clone();if(o.id!==t.id){const t=o.getOtherNode(e);i.push(o),this.data._deleteWall(o.id);const s=o.from===t?this.data._createWall(o.type,t,a,o.width,[],o.bias):this.data._createWall(o.type,a,t,o.width,[],o.bias);M(o,[s],this.data),n.push(s)}}s.push(a);const r=t.from===e?this.data._createWall(t.type,a,t.from,t.width,[],t.bias):this.data._createWall(t.type,t.to,a,t.width,[],t.bias);n.push(r)}name(){return"AddJointToNode"}}class x extends R{onRun(e){const t=this.data.getNode(e.nodeId),i=Array.from(this.data.getWallsForNode(t).values());if(2!==i.length)throw new Error("Can only delete nodes with two edges on it");const n=i[0].clone(),s=n.getOtherNode(t),a=i[1].clone(),o=a.getOtherNode(t);this.data._deleteWall(n.id),this.data._deleteWall(a.id),this.data._deleteNode(t.id);const r=this.data.newWallWouldIntersect({n0:s,n1:o})?null:this.data._createWall(n.type,s,o,(n.width+a.width)/2,[],(n.bias+a.bias)/2);return r&&(M(n,[r],this.data),M(a,[r],this.data)),{deletedNode:t,deletedWall1:n,deletedWall2:a,createdWall:r,updateNodeDependencies:[]}}onInvert(e,t){const{createdWall:i,deletedNode:n,deletedWall1:s,deletedWall2:a}=e;i&&this.data._deleteWall(i.id),this.data._createNode(n.getPoint(),n.floorId,n.id);for(const e of[s,a])P(e,this.data);return[]}name(){return"DeleteNode"}}class H extends R{onRun(e){const t=this.data.getNode(e.fromId),i=this.data.getNode(e.toId);return{wall:this.data._createWall(e.type,t,i,e.width,[],.5).id,updateNodeDependencies:[]}}onInvert(e,t){return this.data._deleteWall(e.wall),[]}name(){return"AddBridgingEdge"}}class U extends T.x{onRun(e){const{id:t}=e,i=this.data.getOpening(t),{label:n,relativePos:s,width:a,lowerElevation:o,height:r}=i;return this.data._setOpeningDetails(t,e),null==e.relativePos&&null==e.width&&null==e.label||this.data._updateDependentsForNodes(i.wall.from,i.wall.to),{id:t,label:n,relativePos:s,width:a,lowerElevation:o,height:r}}onInvert(e,t){const{id:i}=e;this.data._setOpeningDetails(i,e);const n=this.data.getOpening(i);this.data._updateDependentsForNodes(n.wall.from,n.wall.to)}merge(e){return e instanceof U&&e.inputs.id===this.inputs.id&&(this.inputs=e.inputs,!0)}name(){return"EditOpeningDetails"}}class F extends T.x{onRun(e){const{openingId:t}=e,i=this.data.getOpening(t);return this.data._deleteWallOpening(t),this.data._updateDependentsForNodes(i.wall.from,i.wall.to),{deletedOpening:i}}onInvert(e,t){const{id:i,wallId:n,label:s,relativePos:a,width:o,height:r,lowerElevation:l}=e.deletedOpening,d=this.data.getWall(n);this.data._createWallOpening(d,s,a,o,{id:i,height:r,lowerElevation:l}),this.data._updateDependentsForNodes(d.from,d.to)}name(){return"DeleteWallOpening"}}class G extends T.x{onRun(e){const{wallId:t,label:i,relativePos:n,width:s,lowerElevation:a,height:o}=e,r=this.data.getWall(t),l=this.data._createWallOpening(r,i,n,s,{height:o,lowerElevation:a});return this.data._updateDependentsForNodes(r.from,r.to),{openingId:l.id}}onInvert(e,t){const{openingId:i}=e,n=this.data.getOpening(i);this.data._deleteWallOpening(i),this.data._updateDependentsForNodes(n.wall.from,n.wall.to)}name(){return"AddOpeningAction"}}function V(e,t,i,n){const s=t.getOtherNode(i);return s!==n&&!e.hasWallBetween(s,n)}function W(e,t){const i=[],n=[],s=[],a=[],o=new Set;for(const r of t){const t=[],{mergeId:l,keepId:d}=r;o.add(d);const c=e.getNode(l),u=e.getNode(d),h=e.getWallsForNode(u),m=u.getPoint();n.push(c),s.push(d),a.push(m),e._updateNode(u.id,c.getPoint());const p=e.getWallsForNode(c);for(const i of p){const n=i.clone(),s=i.getOtherNode(c),a=i.width;e._deleteWall(i.id);let o=null;V(e,i,c,u)&&(e.hasWallBetween(s,u)||(o=e._createWall(i.type,s,u,a,[],i.bias),M(n,[o],e),h.add(o))),t.push({deleted:n,created:o}),h.delete(i)}e._deleteNode(c.id),0===h.size&&(e._deleteNode(u.id),n.push(u)),i.push(t)}return{deletedNodes:n,wallDiffs:i,oldKeepNodeIds:s,oldKeepNodePositions:a,updateNodeDependencies:o}}function B(e,t){const i=[];for(let n=t.deletedNodes.length-1;n>=0;n--){const s=t.deletedNodes[n],a=t.wallDiffs[n],o=e._createNode(s.getPoint(),s.floorId,s.id);i.push(o.id);for(const t of a){t.created&&e._deleteWall(t.created.id);let i=o,n=t.deleted.getOtherNode(s);if(o.id!==t.deleted.from.id){const e=i;i=n,n=e}e._createWall(t.deleted.type,i,n,t.deleted.width,t.deleted.openings,t.deleted.bias,t.deleted.id)}e._updateNode(t.oldKeepNodeIds[n],t.oldKeepNodePositions[n])}return t.oldKeepNodeIds}function j(e,t){const i=[],n=new Set;for(const s of t){const t=e.getNode(s),a=e.getAttachedEntities(t),o=e.findNodeOrWallForPosition(t.getVec3(),t.floorId,a);if(o&&o instanceof h.j){const a=o.getProjection(t.getVec3()),r=o.clone(),l={x:t.x,z:t.z},d=r.getDirection().normalize().multiplyScalar(a),c=r.from.getVec3().add(d);e._deleteWall(r.id),e._updateNode(s,{x:c.x,z:c.z});const u=e.hasWallBetween(r.from,t)?null:e._createWall(r.type,r.from,t,r.width,[],r.bias),h=e.hasWallBetween(t,r.to)?null:e._createWall(r.type,t,r.to,r.width,[],r.bias);M(r,[u,h].filter((e=>!!e)),e),i.push({deletedWall:r,newLeftWall:u,newRightWall:h,prevNodePos:l,nodeId:t.id}),n.add(t.id)}}return{splitDiffs:i,updateNodeDependencies:n}}function K(e,t){for(let i=t.splitDiffs.length-1;i>=0;i--){const{newLeftWall:n,newRightWall:s,deletedWall:a,prevNodePos:o,nodeId:r}=t.splitDiffs[i];n&&e._deleteWall(n.id),s&&e._deleteWall(s.id),e._updateNode(r,o),P(a,e)}return t.splitDiffs.map((e=>e.nodeId))}function z(e,t){const i=[],n=function(e){const t=[];for(const i of e){if(2!==i.length)throw new Error("Can only merge co-linear overlaps");if(0===t.length){t.push(i);continue}const e=t[t.length-1],n=e[1];if(i[0].t=n.t&&(t[t.length-1]=[e[0],s])}else t.push(i)}return t}(t);if(n[0][0].t>0){const t=n[0][0].entity;i.push([e.from,t])}for(let e=0;e0){const s=Array.from(n.values())[0],a=this.data.findOverlappingEntities(s);if(a){const n=X({movedEntity:s,nodeOverlaps:a.nodeOverlaps,nodeWallOverlaps:a.nodeWallOverlaps,collinearWall:a.collinearWall,intersectingWall:a.intersectingWall},this.data);t[e]=n,i.push(...n.updateNodeDependencies)}}}return{overlapsByFloor:t,updateNodeDependencies:i}}onInvert(e,t){const i=[];for(const t in e.overlapsByFloor){const n=Q(e.overlapsByFloor[t],this.data);i.push(...n)}return i}name(){return"ValidateGraphAndComputeRooms"}}function X(e,t){const i=function(e,t,i){const n=[],s=new Set;let a=t,o=0;for(;(a.nodeOverlaps.length>0||a.nodeWallOverlaps.length>0)&&o<10;){const t=W(e,a.nodeOverlaps);for(const e of t.updateNodeDependencies)s.add(e);const r=j(e,a.nodeWallOverlaps);for(const e of r.updateNodeDependencies)s.add(e);n.push({nodeMergeInvertInfo:t,nodeWallInvertInfo:r}),a=e.findOverlappingNodePairs(i),o++}for(const e of n){const t=e.nodeMergeInvertInfo.deletedNodes;for(const e of t)s.delete(e.id)}return{nodeMergeBatches:n,updateNodeDependencies:Array.from(s)}}(t,{nodeOverlaps:e.nodeOverlaps,nodeWallOverlaps:e.nodeWallOverlaps},e.movedEntity);let n=[];e.collinearWall&&(n=function(e,t){const i=[];let n=e.findWallWithWorstOverlaps(t,"colinear"),s=0;for(;null!=n&&s<10;){const a=n.wall;e._deleteWall(a.id);const o=z(n.wall,n.overlaps).filter((t=>!e.hasWallBetween(t[0],t[1]))).map((t=>e._createWall(a.type,t[0],t[1],a.width,[],a.bias)));i.push({deletedWall:a,createdWalls:o}),n=e.findWallWithWorstOverlaps(t,"colinear"),s++}return i}(t,e.collinearWall.floorId));let s=[];return e.intersectingWall&&(s=function(e,t){const i=[];let n=e.findWallWithWorstOverlaps(t,"intersection"),s=0;for(;null!=n&&s<10;){const a=[],o=[],r=[],l=n.wall.clone();if(a.push(l),e._deleteWall(n.wall.id),null!=n){let s=n.wall.from;const d=n.wall.getDirection();for(const i of n.overlaps){if(1!==i.length)throw new Error("possible bug in RoomBoundData.findWallWithWorstOverlaps, it should only return walls intersecting at ONE point");const c=i[0],u=c.entity.clone();a.push(u),e._deleteWall(c.entity.id);const h=n.wall.from.getVec3().addScaledVector(d,i[0].t),m=i[0].entity,p=e._createNode(h,t);o.push(p);const E=e._createWall(n.wall.type,s,p,n.wall.width,[],n.wall.bias);s=p,r.push(E),M(l,[E],e);const S=e._createWall(m.type,m.from,p,m.width,[],m.bias);r.push(S);const O=e._createWall(m.type,m.to,p,m.width,[],m.bias);r.push(O),M(u,[S,O],e)}const c=e._createWall(n.wall.type,s,n.wall.to,n.wall.width,[],n.wall.bias);r.push(c),M(l,[c],e),i.push({createdWalls:r,createdNodes:o,deletedWalls:a})}n=e.findWallWithWorstOverlaps(t,"intersection"),s++}return i}(t,e.intersectingWall.floorId)),{nodeOverlapInvertInfo:i,intersectionSplitInvertInfo:s,collinearOverlapInvertInfo:n,updateNodeDependencies:i.updateNodeDependencies}}function Q(e,t){!function(e,t){for(let i=t.length-1;i>=0;i--){const n=t[i];for(const t of n.createdWalls)e._deleteWall(t.id);for(const t of n.createdNodes)e._deleteNode(t.id);for(const t of n.deletedWalls)P(t,e)}}(t,e.intersectionSplitInvertInfo),function(e,t){for(let i=t.length-1;i>=0;i--){const n=t[i],s=n.deletedWall;n.createdWalls.forEach((t=>e._deleteWall(t.id))),P(s,e)}}(t,e.collinearOverlapInvertInfo);const i=function(e,t){const i=[];for(let n=t.nodeMergeBatches.length-1;n>=0;n--){const{nodeMergeInvertInfo:s,nodeWallInvertInfo:a}=t.nodeMergeBatches[n],o=K(e,a),r=B(e,s);i.push(...o,...r)}return i}(t,e.nodeOverlapInvertInfo);return i}var q=i(74634),Z=i(74381),J=i(941);class ee extends T.x{onRun({roomId:e,name:t,roomTypeIds:i,location:n,includeInAreaCalc:s,hide:a,keywords:o,showDimensions:r,showHeight:l}){const d=this.data.getRoom(e),c={roomId:e,name:d.name,roomTypeIds:d.roomTypeIds.slice(),includeInAreaCalc:d.includeInAreaCalc,hide:d.hide,keywords:d.keywords.slice(),showDimensions:d.showDimensions,showHeight:d.showHeight};return this.data._updateRoomDetails(e,{name:t,roomTypeIds:i,location:n,includeInAreaCalc:s,hide:a,keywords:o,showDimensions:r,showHeight:l}),c}onInvert({roomId:e,name:t,roomTypeIds:i,location:n,includeInAreaCalc:s,hide:a,showDimensions:o,showHeight:r},l){this.data._updateRoomDetails(e,{name:t,roomTypeIds:i,location:n,includeInAreaCalc:s,hide:a,showDimensions:o,showHeight:r})}name(){return"SetRoomDetails"}}var te=i(11579),ie=i(35336);class ne extends R{onRun({roomId:e}){const t={deletedEdges:[],updateNodeDependencies:[]},i=this.data.getRoom(e);for(const e of i.walls){if(1===Array.from(this.data.getRoomsForWall(e)).filter((t=>t.walls.has(e))).length){const i=y(this.data,{wallId:e.id});t.deletedEdges.push(i),t.updateNodeDependencies.push(...i.updateNodeDependencies)}}for(const e of t.deletedEdges){const i=[];switch(e.deletedNodes){case"from":i.push(e.deletedWall.from.id);break;case"to":i.push(e.deletedWall.to.id);break;case"both":i.push(e.deletedWall.from.id,e.deletedWall.to.id)}t.updateNodeDependencies=t.updateNodeDependencies.filter((e=>-1===i.indexOf(e)))}return t}onInvert(e,t){let i=[];for(const t of e.deletedEdges.reverse())i=i.concat(b(this.data,t));return i}name(){return"DeleteRoom"}}var se=i(93818),ae=i(23339),oe=i(60356);const re=new Set,le=new r.Vector3,de=new r.Vector3,ce=new r.Vector2;var ue;!function(e){e[e.CREATE=0]="CREATE",e[e.UPDATE=1]="UPDATE",e[e.DELETE=2]="DELETE"}(ue||(ue={}));class he{constructor(e,t={},i=()=>{},s=new oe.w){this.roomClassifications=t,this.broadcast=i,this.fallbacks=s,this.name="wall-graph",this.version=0,this.legacyRoomIds=[],this.raycast=null,this.calcCeilings=null,this.onActionError=e=>{this.logger.error(e)},this._nodes=new S,this._walls=new S,this._rooms=new S,this._wallOpenings=new S,this.undoBuffer=new n.Z(this.commit.bind(this)),this._nodeToWallMap=new Map,this._nodesByFloor=new Map,this._wallToRoomMap=new Map,this._wallsByFloor=new Map,this._wallsByCompositeKey=new Map,this._roomsByFloor=new Map,this._observerQueue=[],this._deleteSet=new Set,this._anythingChangeObservers=new Set,this._afterFinalizeObservers=new Set,this.logger=new a.Vy("wall-graph"),this.isLoading=!1,this.spatialIndex=new Map,this.actionList=[],this._roomsNeedingCeilingCalc=new Set,this._inFlightRoomCeilingsCalc=new Set,this.getRelativeAngle=(()=>{const e=new r.Vector2,t=new r.Vector2,i=new r.Vector2,n=(t,i)=>{if(0===t.lengthSq()){const n=this.getNodeNeighbors(i);if(0===n.size)return;const s=Array.from(n.values())[0];t.set(s.x,s.z).sub(e)}};return(s,a,o)=>{if(a===o)return 2*Math.PI;e.set(s.x,s.z),t.set(a.x,a.z).sub(e),n(t,a),i.set(o.x,o.z).sub(e),n(i,o);const r=Math.atan2(t.y,t.x);let l=-(Math.atan2(i.y,i.x)-r);return l<0&&(l+=2*Math.PI),l}})(),this.newWallWouldIntersect=(()=>{const e=new r.Vector2,t=new r.Vector2,i=new r.Vector2,n=new r.Vector2,s=new r.Vector2,a=new r.Vector2,o=new r.Vector2,l=new r.Vector2;return({n0:r,n1:d,n0OverridePos:c,n1OverridePos:u,wallToIgnore:h})=>{if(this.hasWallBetween(r,d)){if(!h)return!0;if(this.getWallForNodes(r.id,d.id)!==h)return!0}const m=e=>Math.round(1e3*e)/1e3,E=(e,t)=>{e===r&&c?t.copy(c):e===d&&u?t.copy(u):e.getVec2(t)};if(E(r,e),E(d,t),i.subVectors(e,t).length()<1e-4)return!1;const S=[[m(e.x),m(e.y)],[m(t.x),m(t.y)]],O=[[0,0],[0,0]];for(const e of this._walls.data.values()){if(r.floorId!==e.floorId||e===h)continue;if(E(e.from,n),E(e.to,s),i.subVectors(n,s).length()<1e-4)continue;if(O[0][0]=m(n.x),O[0][1]=m(n.y),O[1][0]=m(s.x),O[1][1]=m(s.y),(0,p.vo)(S,O))return!0;const t=e.to===r||e.from===r?r:e.to===d||e.from===d?d:void 0;if(t){const i=e.getOtherNode(t),n=t===r?d:r;E(t,a),E(i,o),E(n,l),o.sub(a),l.sub(a);const s=Math.atan2(o.y,o.x);let c=-(Math.atan2(l.y,l.x)-s);c<0&&(c+=2*Math.PI);const u=c,h=2*Math.PI/180;if(u2*Math.PI-h)return!0}}return!1}})(),this._updateDependentsForNodes=(()=>{const e=new Set,t=new Set;return(...i)=>{e.clear(),t.clear();const n=i=>{if(!e.has(i)){this.removeFromSpatialIndex(i),this.insertIntoSpatialIndex(i),this._scheduleUpdate(this._walls,i,!0);const n=this._wallToRoomMap.get(i);if(n)for(const e of n.values())t.has(e)||(this._scheduleUpdate(this._rooms,e,!0),e.pointsMoved(),t.add(e));for(const e of i.openings)this._scheduleUpdate(this._wallOpenings,e,!0);e.add(i)}};for(const e of i){const t=this._nodeToWallMap.get(e);if(null!=t)for(const i of t){n(i);const t=i.getOtherNode(e),s=this._nodeToWallMap.get(t);if(null!=s)for(const e of s)n(e)}}for(const e of t)this.calculateRoomInsights(e)}})(),e&&(this.version=e.version,this.load(e))}load(e){var t,i;this.isLoading=!0;for(const e of Array.from(this.rooms.values()))this._deleteRoom(e.id);for(const e of Array.from(this.walls.values()))this._deleteWall(e.id);for(const e of Array.from(this.nodes.values()))this._deleteNode(e.id);for(const[e,t]of this.spatialIndex)t.clear();this.commit();for(const n in e.floors){const s=e.floors[n],a=s.vertices,o=new(_());this.spatialIndex.set(n,o);const r=[];for(const e in a){const t=a[e],i=this._createNode({x:t.x,z:-t.y},n,e);i.updateRBushBBox(),r.push(i)}o.load(r);const l=[];for(const e in s.edges){const n=s.edges[e],[a,o]=null!==(t=n.vertices)&&void 0!==t?t:e.split(":"),r=n.thickness,d=this.getNode(a),c=this.getNode(o),u=n.type===Z.gP.INVISIBLE,m=this._createWall(u?h.b.DIVIDER:h.b.SOLID,d,c,u?J.VG:r,[],null!==(i=n.bias)&&void 0!==i?i:.5,e);if(m.bias=1-m.bias,m.updateRBushBBox(),l.push(m),!u)for(const e in n.openings){const{relativePos:t,label:i,width:s,height:a}=n.openings[e],o=n.openings[e].lowerElevation||NaN;this._createWallOpening(m,i,t,s,{id:e,height:a,lowerElevation:o})}}if(o.load(l),s.rooms)for(const e in s.rooms){const t=s.rooms[e],i=t.edges||[],n=t.holes||[];if(!i.length&&t.vertices)for(let e=0;ethis.getWall(e)))),r=this.traceWallsFromTo(a.from,a.to,o),l=this.traceWallsFromTo(a.to,a.from,o),d=r.length>l.length?r:l;if(0===d.length){this.logger.warn("No node loop found for room: ",e);continue}(0,p.N5)(d);const u=new Set;for(const e of o)u.add(e.from),u.add(e.to);(0,I.c5)(new Set(d),u)||this.logger.warn("Traced room does not match edge list!",e,d,u);const h=[],m=[];for(const e of n){if(0===e.length)continue;const t=new Set(e.map((e=>this.getWall(e))));m.push(t);const i=this.getWall(e[0]),n=this.traceWallsFromTo(i.from,i.to,t);(0,p.N5)(n).reverse(),h.push(n)}const{location:E,includeInAreaCalc:S,hide:O,keywords:g}=(0,c.rO)(t.keywords||[]),_=this._createRoom({id:e,name:t.label||"",points:d,walls:o,holesCW:h,holes:m,classifications:this.translateClassificationLabels(t.classifications),location:E,includeInAreaCalc:S,hide:O,keywords:g,height:t.height||NaN,ceiling:t.ceiling||null}),T=null!=t.width&&0===t.width;null!=t.length&&0===t.length&&T&&(_.showDimensions=!1),_.showHeight=null===t.height||0!==t.height,t.width&&!Number.isNaN(t.width)&&Math.abs(t.width-_.width)>.001&&this.logger.debug(`Room ${e} has width of ${t.width} on MDS but calculated as ${_.width} locally`),t.length&&!Number.isNaN(t.length)&&Math.abs(t.length-_.length)>.001&&this.logger.debug(`Room ${e} has length of ${t.length} on MDS but calculated as ${_.length} locally`),t.area&&!Number.isNaN(t.area)&&Math.abs(t.area-_.area)>=.01&&this.logger.debug(`Room ${e} has area of ${t.area} on MDS but calculated as ${_.area} locally`)}}this.computeLowerElevationForOpenings(!1),this.lastSolidWallWidth=void 0,this.isLoading=!1}get walls(){return this._walls.data}get nodes(){return this._nodes.data}get rooms(){return this._rooms.data}get wallOpenings(){return this._wallOpenings.data}getNode(e){const t=this._nodes.get(e);if(t)return t;this.logAndThrow(new Error("WallNode does not exist in WallGraphData"))}getWall(e){const t=this._walls.get(e);if(t)return t;this.logAndThrow(new Error("Wall does not exist in WallGraphData"))}hasRoom(e){return!!this._rooms.get(e)}hasRooms(){return this._rooms.size>0}getRoom(e){const t=this._rooms.get(e);return t||this.logAndThrow(new Error("Room id is invalid!")),t}tryGetRoom(e){return this._rooms.get(e)}castRay(e,t,i,n){l(e,t,n,ce),le.set(e.x,0,e.y),de.set(ce.x,0,ce.y);const s=this.findNodeAndWallsOverlappingLine(le,de,i,(e=>e instanceof h.j)),a=[];for(const t of s)for(const i of t)if(i.entity instanceof h.j){const t=(new r.Vector2).lerpVectors(e,ce,i.t),n=t.distanceTo(e);a.push({entity:i.entity,t:i.t,distance:n,point:t})}return a.sort(((e,t)=>e.distance-t.distance)),a}castRayFan(e,t,i,n,s=Math.PI/6,a=11){const o=[],r=d(t,s,a);for(const t of r){const s=this.castRay(e,t,i,n);s.length>0&&o.push(s[0])}return o}_findBestAngleForSweep(e,t,i,n){var s;const a={angle:0,wallHitCount:0,averageDistance:0,minDistance:0,maxDistance:0},o=2*Math.PI/n.angleSteps;for(let r=0;r0?u/h:0;0===h&&(m=Number.MAX_SAFE_INTEGER,p=0,this.logger.warn(`No wall hits for sweep ${e.id} at angle ${(180*l/Math.PI).toFixed(1)}°`));const O={angle:l,wallHitCount:E,averageDistance:S,minDistance:m,maxDistance:p};n.resultIsBetter(O,a)&&Object.assign(a,O)}return this.logger.debug(`Sweep ${e.idx||e.id} best @ ${(180*a.angle/Math.PI).toFixed(1)}° - 2D cast from (${e.position.x.toFixed(2)}, ${e.position.y.toFixed(2)}) across ${a.averageDistance.toFixed(2)} units to (${(e.position.x+Math.cos(a.angle)*a.averageDistance).toFixed(2)}, ${(e.position.y+Math.sin(a.angle)*a.averageDistance).toFixed(2)}) - ${a.wallHitCount} hits`),a}static _defaultViewComparisonFunction(e,t){return e.averageDistance>t.averageDistance||Math.abs(e.averageDistance-t.averageDistance)<.001&&e.wallHitCount>t.wallHitCount}getBestView(e,t={}){var i,n,s,a,o,l;const d={angleSteps:null!==(i=t.angleSteps)&&void 0!==i?i:36,maxRayDistance:null!==(n=t.maxRayDistance)&&void 0!==n?n:1e3,calculateVisibleArea:null!==(s=t.calculateVisibleArea)&&void 0!==s&&s,sweepFilter:null!==(a=t.sweepFilter)&&void 0!==a?a:e=>!0,resultIsBetter:null!==(o=t.resultIsBetter)&&void 0!==o?o:he._defaultViewComparisonFunction,spanAngle:null!==(l=t.spanAngle)&&void 0!==l?l:Math.PI/6};d.angleSteps<1&&this.logAndThrow(new Error("angleSteps must be at least 1")),d.maxRayDistance<=0&&this.logAndThrow(new Error("maxRayDistance must be greater than 0"));const c=this.tryGetRoom(e);if(!c)return null;const u=[];for(const e of this.sweepsForRoom(c))e.enabled&&(d.sweepFilter&&!d.sweepFilter(e.id)||u.push({id:e.id,position:(h=e.floorPosition,new r.Vector2(h.x,h.z)),idx:e.index}));var h;if(0===u.length)return null;const m=Array.from(c.walls).map((e=>e.id));if(0===m.length){const e=this._findBestAngleForSweep(u[0],m,c.floorId,d);return Object.assign(Object.assign({sweepId:u[0].id},e),{metadata:{totalSweepsTested:1,totalAnglesTested:d.angleSteps,averageWallHitsPerSweep:e.wallHitCount/d.angleSteps,angleSpan:d.spanAngle}})}let p={sweepId:"",angle:0,wallHitCount:0,averageDistance:0,minDistance:Number.MAX_SAFE_INTEGER,maxDistance:0},E=0;const S=d.angleSteps*u.length;for(const e of u){const t=this._findBestAngleForSweep(e,m,c.floorId,d);E+=t.wallHitCount,d.resultIsBetter(t,p)&&(this.logger.debug(`*** New best overall view found at sweep ${e.idx||e.id} angle ${(180*t.angle/Math.PI).toFixed(1)}° - [${t.minDistance.toFixed(2)}, ${t.averageDistance.toFixed(2)}, ${t.maxDistance.toFixed(2)}] - ${t.wallHitCount} hits ***`),p=Object.assign({sweepId:e.id},t),d.calculateVisibleArea&&(p.visibleArea=c.getArea(ae.t.METRIC)))}return p.metadata={totalSweepsTested:u.length,totalAnglesTested:S,averageWallHitsPerSweep:E/S,angleSpan:d.spanAngle},p.sweepId?p:null}getOpening(e){const t=this._wallOpenings.get(e);return t||this.logAndThrow(new Error("Opening id is invalid")),t}getEntity(e){const t=this._walls.get(e)||this._nodes.get(e)||this._rooms.get(e)||this._wallOpenings.get(e);return t||this.logAndThrow(new Error("No entity for id.")),t}tryGetEntity(e){return this._walls.get(e)||this._nodes.get(e)||this._rooms.get(e)||this._wallOpenings.get(e)||null}getEdgeCountForNode(e){var t;return(null===(t=this._nodeToWallMap.get(e))||void 0===t?void 0:t.size)||0}getWallsForNode(e){const t=this._nodeToWallMap.get(e);if(t&&t.size>0)return t;this.logAndThrow(new Error("WallNode has no associate walls, this should not happen unless inside an action"))}getFloorsWithNodes(){return Array.from(this._nodesByFloor.keys())}getWallsForFloor(e){const t=this._wallsByFloor.get(e);return t&&t.size>0?t:null}getNodesByFloor(e){const t=this._nodesByFloor.get(e),i=new Set;return t||(this._nodesByFloor.set(e,i),i)}getRoomsForWall(e){return this._wallToRoomMap.get(e)||new Set}getRoomsForFloor(e){const t=this._roomsByFloor.get(e);return t&&t.size>0?t:null}isExteriorWall(e){const t=this._wallToRoomMap.get(e);if(t){if(t.size>0){if(1===t.size)return!0;for(const e of t.values())if(e.location===c.Vc.OUTDOOR)return!0;return!1}return!0}return!0}getWallNeighbors(e,t){const i=e[t],n=this.getEdgeCountForNode(i);if(1===n)return null;if(2!==n){const n=(()=>{const e=new r.Vector2;return(t,i)=>{const n=i.getOtherNode(t);e.set(n.x-t.x,n.z-t.z).normalize();return e.angle()}})(),s=this._nodeToWallMap.get(i);if(!s||0===s.size)return null;const a=Array.from(s).sort(((e,t)=>n(i,e)-n(i,t))),o=a.indexOf(e);let l=(o+1)%a.length,d=o-1<0?a.length-1:o-1;if("from"===t){const e=d;d=l,l=e}return{left:a[l],right:a[d]}}{const t=this._nodeToWallMap.get(i);if(!t||0===t.size)return null;for(const i of t)if(i.id!==e.id)return{left:i,right:i}}this.logAndThrow(new Error("Not finding both neighbors should never happen"))}getLastWallWidth(e){return e===h.b.SOLID&&this.lastSolidWallWidth?this.lastSolidWallWidth:this.getMostCommonWallWidth(e)}getMostCommonWallWidth(e){if(e===h.b.DIVIDER)return J.VG;const t={};for(const e of this._walls.data.values()){const i=e.width.toFixed(2);t[i]=t[i]?t[i]+1:1}let i=J.$h,n=0;for(const[e,s]of Object.entries(t))s>n&&Number(e)>J.VG&&(n=s,i=Number(e));return i}findRoomIdForPosition(e,t,i){const n={x:e.x,y:e.z},s=this._rooms.get(i||"");if(s&&i){const e=s.points.map((e=>({x:e.x,y:e.z})));if((0,q.L)(n,e))return i}for(const e of this._rooms.data.values()){if(e.floorId!==t)continue;const i=e.points.map((e=>({x:e.x,y:e.z})));if((0,q.L)(n,i))return e.id}return null}*entitiesAround(e,t,i){const n=this.spatialIndex.get(t);if(n){const t=n.search({minX:e.x-i,minY:e.z-i,maxX:e.x+i,maxY:e.z+i});for(const n of t){const t=n.overlapsCircle(e,i);null!=t&&(yield{entity:n,distance:t})}}}findClosestWallAround(e,t,i){const n=this.entitiesAround(e,t,i);let s=null,a=Number.MAX_VALUE;for(const{entity:e,distance:t}of n)e instanceof h.j&&t!0){const s=this.spatialIndex.get(i),a=.05,o=[];if(s){const i=s.search({minX:Math.min(e.x,t.x)-a,minY:Math.min(e.z,t.z)-a,maxX:Math.max(e.x,t.x)+a,maxY:Math.max(e.z,t.z)+a});for(const s of i)if(n(s)){const i=s.overlapsLine(e,t);i.length>0&&o.push(i)}}return o}findOverlappingNodePairs(e){const t=e.floorId,i=[],n=new Set,s=new Set,a=[],o=this.getNodesByFloor(t);for(const r of o){const o=this.getAttachedEntities(r),l=this.findNodeOrWallForPosition(r.getVec3(),t,o);if(l)if(l instanceof m.D){const t=[r.id,l.id].sort().join(":");if(!n.has(t)){let a=r.id,o=l.id;if(o===e.id){const e=o;o=a,a=e}s.has(o)||s.has(a)||(i.push({keepId:a,mergeId:o}),n.add(t),s.add(o))}}else l instanceof h.j&&(s.has(r.id)||a.push(r.id))}return{nodeOverlaps:i,nodeWallOverlaps:a}}findWallWithWorstOverlaps(e,t){let i=[],n=null;const s=this.getWallsForFloor(e),a="colinear"===t?2:1;if(s)for(const e of s){const s="intersection"===t?this.getAttachedEntities(e.from):re,o="intersection"===t?this.getAttachedEntities(e.to):re,r=this.findNodeAndWallsOverlappingLine(e.from.getVec3(),e.to.getVec3(),e.floorId,(t=>t instanceof h.j&&t.id!==e.id&&!s.has(t.id)&&!o.has(t.id))).filter((e=>e.length===a));r.length>0&&r.length>i.length&&(i=r,n=e)}return null!=n?{wall:n,overlaps:i.sort(((e,t)=>e[0].t-t[0].t))}:null}findOverlappingEntities(e){const t=e.floorId,{nodeOverlaps:i,nodeWallOverlaps:n}=this.findOverlappingNodePairs(e),s=this.findWallWithWorstOverlaps(t,"colinear"),a=this.findWallWithWorstOverlaps(t,"intersection");if(i.length>0||n.length>0||a||s){return{nodeOverlaps:i,nodeWallOverlaps:n,intersectingWall:a?a.wall:void 0,collinearWall:s?s.wall:void 0}}return null}getSortedRoomClassifications(){return Object.values(this.roomClassifications).sort(((e,t)=>e.label.localeCompare(t.label)))}hasWallBetween(e,t){const i=h.j.getCompositeKey(e.id,t.id);return this._wallsByCompositeKey.has(i)}getWallForNodes(e,t){const i=h.j.getCompositeKey(e,t),n=this._wallsByCompositeKey.get(i);return n||this.logAndThrow(new Error("getWallForNodes: No wall exists for these nodes!")),n}canDeleteEntity(e){if(null!=e){const t=this.getEntity(e);if(t instanceof m.D){if(2!==this.getEdgeCountForNode(t))return!1;let e;for(const i of this.getWallsForNode(t).values()){if(void 0!==e&&i.type!==e)return!1;e=i.type}return!0}if(t instanceof c.pQ){return!!Array.from(t.walls).find((e=>1===Array.from(this.getRoomsForWall(e)).filter((t=>t.walls.has(e))).length))}return t instanceof h.j||t instanceof E.$}return!1}undo(){const e=this.undoBuffer.pop();if(e){try{this.actionList.push(e.logInfo()),e.invert()}catch(e){return void this.onActionError(e)}this.commit(),this._triggerFinalizeObservers()}}availableUndos(){return this.undoBuffer.length.value}clearUndoBuffer(){this.undoBuffer.clear()}resetHistory(){this.clearUndoBuffer(),this._observerQueue.length=0,this._deleteSet.clear()}finalizeHistory(){this.undoBuffer.finalize(),this._triggerFinalizeObservers()}getAndClearActionList(){const e=this.actionList.slice();return this.actionList.length=0,e}triggerAction(e){var t,i;try{e.run()}catch(e){return this._observerQueue.length=0,this._deleteSet.clear(),void this.onActionError(e)}const n=null===(t=this.undoBuffer.peek())||void 0===t?void 0:t.lastAction();this.undoBuffer.push(e),n!==(null===(i=this.undoBuffer.peek())||void 0===i?void 0:i.lastAction())&&this.actionList.push(e.logInfo()),this.commit()}onNodesChanged(e){return this._nodes.onChanged(e)}onWallsChanged(e){return this._walls.onChanged(e)}onRoomsChanged(e){return this._rooms.onChanged(e)}onOpeningsChanged(e){return this._wallOpenings.onChanged(e)}validateGraph(){this._recomputeRooms()&&(this.commit(),this.finalizeHistory())}commit(){const e=this._observerQueue.length;if(this._flushObserverQueue(),e>0)for(const e of this._anythingChangeObservers)e(void 0)}onPropertyChanged(e,t){const i=this["_"+e];if(i instanceof S){const n=i,a=()=>{n.addedObservers.add(t),n.updatedObservers.add(t),n.deletedObservers.add(t)},o=()=>this.removeOnPropertyChanged(e,t);return(0,s.Sh)(a,o,!0,e)}this.logAndThrow(new Error(`Property: ${e} does not exist on wall-data`))}removeOnPropertyChanged(e,t){const i=this["_"+e];if(i instanceof S){const e=i;e.addedObservers.delete(t),e.updatedObservers.delete(t),e.deletedObservers.delete(t)}else this.logAndThrow(new Error(`Property: ${e} does not exist on wall-data`))}onChanged(e){if(this._anythingChangeObservers.has(e))throw new Error("This observer function is already observing this Observable, and double subscriptions are not supported.");return(0,s.Sh)((()=>this._anythingChangeObservers.add(e)),(()=>this.removeOnChanged(e)),!0)}removeOnChanged(e){this._anythingChangeObservers.delete(e)}afterFinalize(e){this._afterFinalizeObservers.has(e)&&this.logAndThrow(new Error("Already subscribed!"));return(0,s.Sh)((()=>this._afterFinalizeObservers.add(e)),(()=>this._afterFinalizeObservers.delete(e)),!0)}addFloatingEdge(e,t,i,n,s){const a=new v(this,{from:t,to:i,width:n,floorId:s,type:e});return this.triggerAction(a),a.output}addBridgingEdge(e,t,i,n){const s=new H(this,{fromId:t,toId:i,width:n,type:e});return this.triggerAction(s),s.output}addTrailingEdgeToNode(e,t,i,n){const s=new N(this,{fromId:t,to:i,width:n,type:e});return this.triggerAction(s),s.output}addTrailingEdgeToEdge(e,t,i,n,s){const a=new k(this,{fromWallId:t,along:i,to:n,width:s,type:e});return this.triggerAction(a),a.output}canMoveNode(e,t){const i=this.getNode(e),n=this.getWallsForNode(i);for(const e of n){if(0===e.openings.length)continue;const n=e.getOtherNode(i),s=n.x-t.x,a=n.z-t.z,o=Math.sqrt(s*s+a*a);if(!(o>e.length))for(const t of e.openings){const e=t.relativePos*o,i=.5*t.width;if(e+i>o||e-i<0)return!1}}return!0}moveNode(e,t){const i={nodeId:e,newPos:t};this.triggerAction(new A(this,i))}moveWall(e,t,i){const n={wallId:e,newFromPos:t,newToPos:i};this.triggerAction(new f(this,n))}deleteEntity(e){if(this.canDeleteEntity(e)){const t=this.getEntity(e);if(t instanceof m.D){const t={nodeId:e};this.triggerAction(new x(this,t))}else if(t instanceof h.j){const t={wallId:e};this.triggerAction(new D(this,t))}else if(t instanceof E.$){const t={openingId:e};this.triggerAction(new F(this,t))}else if(t instanceof c.pQ){const t={roomId:e};this.triggerAction(new ne(this,t))}}}setEdgeProperties(e,t){const i={wallId:e,props:t};this.triggerAction(new w(this,i))}addWallOpening(e){const t=new G(this,e);return this.triggerAction(t),t.output.openingId}editWallOpeningDetails(e,t){this.triggerAction(new U(this,Object.assign(Object.assign({},t),{id:e})))}addWallJoint(e,t,i){const n={wallId:e,fromNode:t,toNode:i};this.triggerAction(new C(this,n))}setRoomDetails(e,t){this.triggerAction(new ee(this,Object.assign({roomId:e},t)))}mergeOverlappingEntities(e,t,i,n,s){const a={movedEntity:e,nodeOverlaps:t,nodeWallOverlaps:i,collinearWall:n,intersectingWall:s};this.triggerAction(new Y(this,a))}getRoomTypeName(e,t){var i;const n=this.getRoom(e);if(n||this.logAndThrow(new Error("Room does not exist")),n.classifications&&n.classifications.length>0){return(0,te.Kq)(n.classifications.map((e=>e.id))).map((e=>{var i;return(null===(i=this.roomClassifications[e])||void 0===i?void 0:i.label)||t})).join(te.Ae)}return(null===(i=this.roomClassifications[te.YV])||void 0===i?void 0:i.label)||t}getRoomLabel(e,t){const i=this.getRoom(e);return i||this.logAndThrow(new Error("Room does not exist")),i.name?i.name:this.getRoomTypeName(e,t)}getGrossFloorArea(e,t){var i;let n=0;const s=null!=e?null===(i=this.getRoomsForFloor(e))||void 0===i?void 0:i.values():this.rooms.values();if(s)for(const e of s)e.includeInAreaCalc&&e.location===c.Vc.INDOOR&&!isNaN(e.areaWithWalls)&&(n+=e.areaWithWalls);return(0,p.g6)(n,t)}getRoomArea(e,t){try{return this.getRoom(e).getArea(t)}catch(t){return this.logger.error(`Error getting room area for room '${e}'`,t),0}}getPotentialRoomCanvasLabels(e,t,i,n,s){const a=(...e)=>e.filter((e=>e.length>0)).join("\n"),r=this.getRoom(e),l=n&&(!r.isOther()||r.name),d=s&&!r.hide;if(!l&&!d)return[];const c=l?this.getRoomLabel(e,t):"",u=d?(0,se.JE)(i,r.getArea(i)).area:"",h=d?r.getMeasurementText(i):"",m=[a(c,u,h)],p=[];for(let e=c.length-4;e>0&&c.length>0;e--)p.push((0,o.W)(c,e));return u.length>0&&h.length>0&&m.push(...p.map((e=>a(e,u,h)))),u.length>0&&(m.push(a(c,u)),m.push(...p.map((e=>a(e,u))))),m.push(...p),m}getAttachedEntities(e){const t=new Set;t.add(e.id);const i=this.getNode(e.id),n=this.getWallsForNode(i);for(const e of n){t.add(e.id);const n=e.getOtherNode(i);1===this.getEdgeCountForNode(i)&&1===this.getEdgeCountForNode(n)&&t.add(n.id)}return t}translateClassificationLabels(e){return e?e.map((e=>{const t=this.roomClassifications[e.id];return t?Object.assign(Object.assign({},e),{label:t.label}):e})):[]}traceWallsFromTo(e,t,i){const n=[e,t];let s=!1;for(;s=!this.hasLoop(n);){const e=n[n.length-1],t=n[n.length-2],s=this.getNodeNeighbors(e,i);let a,o=4*Math.PI;for(const i of s){const n=this.getRelativeAngle(e,t,i);n=0;i--){t.unshift(e[i]);const n=e.length-2*t.length;if(n<0)return!1;let s=!0;for(let i=0;ie.id)),"in sequence",e.map((e=>e.id))),!0}return!1}_createNode(e,t,i){const n=new m.D(i||(0,u.hA)(),t,e.x,e.z);return this._nodes.set(n.id,n),this._addToDictHelper(t,n,this._nodesByFloor),this.insertIntoSpatialIndex(n),this._scheduleObserver({observers:this._nodes.addedObservers,param:n,type:ue.CREATE}),n}_updateNode(e,t){const i=this._nodes.get(e);i?(this.removeFromSpatialIndex(i),i.x=t.x,i.z=t.z,this.insertIntoSpatialIndex(i),this._scheduleUpdate(this._nodes,i)):this.logAndThrow(new Error("Attempted to update WallNode that does not exist"))}_deleteNode(e){const t=this._nodes.get(e);t?(this.getEdgeCountForNode(t)>0&&this.logAndThrow(new Error("Attempted to delete a node which has wall references still!")),this._nodes.delete(e),this._removeFromDictHelper(t.floorId,t,this._nodesByFloor),this.removeFromSpatialIndex(t),this._scheduleDelete(this._nodes,t)):this.logAndThrow(new Error("Attempted to delete WallNode that does not exist"))}_createRoom(e){this._validateRoomDetails(e.points,e.holesCW,e.walls,e.holes);const t=new c.pQ(e);this.rooms.set(t.id,t);for(const e of t.allWalls()){const i=this._wallToRoomMap.get(e)||new Set;i.add(t),this._wallToRoomMap.set(e,i)}return this._addToDictHelper(t.floorId,t,this._roomsByFloor),this._scheduleObserver({observers:this._rooms.addedObservers,param:t,type:ue.CREATE}),this.calculateRoomInsights(t),t}_updateRoom(e,t,i=!0){this._validateRoomDetails(t.points,t.holesCW,t.walls,t.holes),this._inFlightRoomCeilingsCalc.has(e)&&this._roomsNeedingCeilingCalc.add(e);const n=this._rooms.get(e);if(n){this._removeFromDictHelper(n.floorId,n,this._roomsByFloor);for(const e of n.allWalls()){const t=this._wallToRoomMap.get(e);t&&t.delete(n)}t.name=n.name,t.classifications=n.classifications?[...n.classifications]:[],this.rooms.set(e,t);for(const e of t.allWalls().values()){const i=this._wallToRoomMap.get(e)||new Set;i.add(t),this._wallToRoomMap.set(e,i)}this._addToDictHelper(n.floorId,n,this._roomsByFloor),this._scheduleUpdate(this._rooms,t),i&&this.calculateRoomInsights(t)}else this.logAndThrow(new Error("Attempted to update Room that does not exist"))}_validateRoomDetails(e,t,i,n){const s=e[0].floorId;for(const i of e.concat(t.flat()))i.floorId!==s&&this.logAndThrow(new Error("Room nodes have mismatching floor ids!"))}logAndThrow(e){throw this.broadcast(new ie.t(e)),e}_updateRoomDetails(e,t){const{name:i,roomTypeIds:n,location:s,includeInAreaCalc:a,hide:o,keywords:r,showDimensions:l,showHeight:d}=t,c=this.getRoom(e);c.name=null!=i?i:c.name,n&&(c.classifications=n.map((e=>({id:e,label:this.roomClassifications[e].label})))),c.location=null!=s?s:c.location,c.includeInAreaCalc=null!=a?a:c.includeInAreaCalc,c.hide=null!=o?o:c.hide,c.keywords=null!=r?r:c.keywords,c.showDimensions=null!=l?l:c.showDimensions,c.showHeight=null!=d?d:c.showHeight,this._scheduleUpdate(this._rooms,c)}_deleteRoom(e){const t=this._rooms.get(e);if(t){this._rooms.delete(t.id);for(const e of t.allWalls().values()){const i=this._wallToRoomMap.get(e);null==i||i.delete(t)}this._removeFromDictHelper(t.floorId,t,this._roomsByFloor),this._scheduleDelete(this._rooms,t)}else this.logAndThrow(new Error("Attempted to delete Room that does not exist"))}_createWall(e,t,i,n,s,a,o=(0,u.hA)()){t.id===i.id&&this.logAndThrow(new Error("Cannot create wall where the from node is the same as the to node.")),t.floorId!==i.floorId&&this.logAndThrow(new Error("Cannot create a wall between nodes on different floors.")),this.hasWallBetween(t,i)&&this.logAndThrow(new Error("Wall already exists between start and end nodes.")),this._walls.has(o)&&this.logAndThrow(new Error("Wall already exists!"));const r=this.getNode(t.id),l=this.getNode(i.id),d=new h.j(o,e,r,l,n,a);this._walls.set(d.id,d),this._addToWallDicts(d),this._scheduleObserver({observers:this._walls.addedObservers,param:d,type:ue.CREATE});for(const e of s){const{label:t,relativePos:i,width:n,id:s,height:a,lowerElevation:o}=e;this._createWallOpening(d,t,i,n,{id:s,height:a,lowerElevation:o})}return this.insertIntoSpatialIndex(d),d}_deleteWall(e){const t=this.getWall(e);for(const e of t.openings.slice())this._deleteWallOpening(e.id);this._walls.delete(e),this._removeFromWallDicts(t),this.removeFromSpatialIndex(t),this._scheduleDelete(this._walls,t)}_setEdgeProps(e,t){const{width:i,bias:n,type:s}=t,a=this.getWall(e);void 0!==s&&(a.type=s),void 0!==i&&(a.width=i,a.type===h.b.SOLID&&(this.lastSolidWallWidth=i)),void 0!==n&&(a.bias=n),this._scheduleUpdate(this._walls,a),this._updateDependentsForNodes(a.from,a.to)}_createWallOpening(e,t,i,n,s){var a,o;const r=null!==(a=s.id)&&void 0!==a?a:(0,u.hA)(),l=null!==(o=s.height)&&void 0!==o?o:null,d=s.lowerElevation,c=new E.$(r,e,e.floorId,i,n,t,l,d);return this._wallOpenings.set(c.id,c),e.openings.push(c),this._scheduleObserver({observers:this._wallOpenings.addedObservers,param:c,type:ue.CREATE}),c}_setOpeningDetails(e,t){var i,n,s,a,o;const r=this.getOpening(e);r.label=null!==(i=t.label)&&void 0!==i?i:r.label,r.relativePos=null!==(n=t.relativePos)&&void 0!==n?n:r.relativePos,r.width=null!==(s=t.width)&&void 0!==s?s:r.width,r.height=null!==(a=t.height)&&void 0!==a?a:r.height,r.lowerElevation=null!==(o=t.lowerElevation)&&void 0!==o?o:r.lowerElevation,this._scheduleUpdate(this._wallOpenings,r)}_deleteWallOpening(e){const t=this.getOpening(e),i=this.getWall(t.wallId),n=i.openings.findIndex((t=>t.id===e));-1!==n?i.openings.splice(n,1):this.logAndThrow(new Error("Expected opening to exist in wall array!")),this._wallOpenings.delete(e),this._scheduleDelete(this._wallOpenings,t)}_addToWallDicts(e){this._addToDictHelper(e.from,e,this._nodeToWallMap),this._addToDictHelper(e.to,e,this._nodeToWallMap),this._addToDictHelper(e.floorId,e,this._wallsByFloor),this._wallsByCompositeKey.set(h.j.getCompositeKey(e.from.id,e.to.id),e)}_addToDictHelper(e,t,i){let n=i.get(e);null!=n?n.add(t):(n=new Set,n.add(t),i.set(e,n))}_removeFromDictHelper(e,t,i){const n=i.get(e);null!=n&&(n.delete(t),0===n.size&&i.delete(e))}_removeFromWallDicts(e){this._removeFromDictHelper(e.from,e,this._nodeToWallMap),this._removeFromDictHelper(e.to,e,this._nodeToWallMap),this._removeFromDictHelper(e.floorId,e,this._wallsByFloor),this._wallToRoomMap.delete(e),this._wallsByCompositeKey.delete(h.j.getCompositeKey(e.from.id,e.to.id))}_scheduleObserver(e){this._observerQueue.push(e)}_scheduleUpdate(e,t,i=!1){this._observerQueue.find((i=>i.observers===e.addedObservers&&i.param===t))||this._scheduleObserver({observers:i?e.childUpdatedObservers:e.updatedObservers,param:t,type:ue.UPDATE})}_scheduleDelete(e,t){this._scheduleObserver({observers:e.deletedObservers,param:t,type:ue.DELETE}),this._deleteSet.add(t)}_flushObserverQueue(){const e=new Set;for(const t of this._observerQueue)if(t.type!==ue.UPDATE||!this._deleteSet.has(t.param))if(t.type===ue.CREATE&&this._deleteSet.has(t.param))e.add(t.param);else if(t.type!==ue.DELETE||!e.has(t.param))for(const e of t.observers){const i=t.param;e(i,i.id)}this._observerQueue.length=0,this._deleteSet.clear()}_triggerFinalizeObservers(){for(const e of this._afterFinalizeObservers.values())e()}getSnapshot(){const e={version:this.version,floors:{}},t=t=>{e.floors[t]||(e.floors[t]={edges:{},vertices:{},rooms:{}})};for(const[i,n]of this._nodes.data){t(n.floorId);e.floors[n.floorId].vertices[n.id]=n.getSnapshot()}for(const[i,n]of this._walls.data){t(n.floorId);e.floors[n.floorId].edges[n.id]=n.getSnapshot()}for(const[i,n]of this._rooms.data){t(n.floorId);e.floors[n.floorId].rooms[n.id]=n.getSnapshot()}return e}insertIntoSpatialIndex(e){if(this.isLoading)return;this.spatialIndex.has(e.floorId)||this.spatialIndex.set(e.floorId,new(_()));const t=this.spatialIndex.get(e.floorId);e.updateRBushBBox(),t.insert(e)}removeFromSpatialIndex(e){if(this.isLoading)return;const t=this.spatialIndex.get(e.floorId);null!=t&&t.remove(e)}_recomputeRooms(){return new $(this,{}).run(),this._observerQueue.length>0}calculateRoomInsights(e){this.calculateRoomArea(e),this.calculateRoomAreaWithWalls(e),this.calculateRoomPerimeter(e),this.calculateRoomMeasurements(e),this.isLoading||this.scheduleCeilingComputation(e)}calculateRoomArea(e){const t=new Array(new r.Vector3,new r.Vector3,new r.Vector3,new r.Vector3);t.push(t[0]);const i=e=>{let i=0;for(let n=0;n[e.x,e.z])))}return i},n=i(e.getCWPoints());let s=0;for(const t of e.holesCW)s+=(0,p.eW)(t),s+=i(t.slice().reverse());const a=(0,p.eW)(e.points);e.area=Math.max(a-n-s,0)}calculateRoomPerimeter(e){let t=0;for(const i of e.minimalInnerEdges)t+=i.start.distanceTo(i.end);e.perimeter=t}calculateRoomAreaWithWalls(e){const t=new Array(new r.Vector3,new r.Vector3,new r.Vector3,new r.Vector3);t.push(t[0]);const i=e=>{let i=0;for(let n=0;n[e.x,e.z])))}return i},n=(0,p.eW)(e.points);let s=0;for(const t of e.holesCW)s+=(0,p.eW)(t);const a=Math.max(n-s,0);if(a>0){const t=i(e.points);let n=0;for(const t of e.holesCW)n+=i(t.slice().reverse());e.areaWithWalls=a+t+n}else e.areaWithWalls=0}calculateRoomMeasurements(e){const{edges:t,thickness:i}=(0,p.I0)(e,this);let n=0,s=[new r.Vector2,new r.Vector2],a=[new r.Vector2,new r.Vector2],o=new r.Vector2(0,0);for(let e=0;e<2;e++){let l=0;for(let d=0;dMath.cos(Math.PI-J.Mg))continue;const g=(new r.Vector2).subVectors(S,O).normalize();if(e>0&&Math.abs(g.dot(o))>Math.cos(Math.PI/2-J.Bg))continue;const _=(new r.Vector2).addVectors(m.getVec2(),E.getVec2()).multiplyScalar(.5);if((0,p.mN)(S,c.getVec2(),_)<0)continue;const T=new r.Vector2,A=new r.Vector2,v=(0,p.m_)([c.getVec2().addScaledVector(S,i[d]),u.getVec2().addScaledVector(S,i[d])],[m.getVec2().addScaledVector(O,i[h]),E.getVec2().addScaledVector(O,i[h])],T,A);v>l&&(l=v,0===e?(s=[T,A],o=S,n=1):(a=[T,A],n=2))}}}if(2===n){const e=(s[1].y-s[0].y)/(s[1].x-s[0].x),t=(a[1].y-a[0].y)/(a[1].x-a[0].x);if(Math.abs(e)=2&&(e.length=(new r.Vector2).subVectors(s[0],s[1]).length(),e.l1=s[0].clone(),e.l2=s[1].clone(),e.width=(new r.Vector2).subVectors(a[0],a[1]).length(),e.w1=a[0].clone(),e.w2=a[1].clone(),this.isRectangularIsh(e)||(e.length=NaN,e.width=NaN))}isRectangularIsh(e){if(isNaN(e.length)||isNaN(e.width))return!1;const t=e.getCWPoints();return(0,p.fZ)(t,[e.l1,e.l2],[e.w1,e.w2],this)>.9}async calculateRoomCeilings(e){const t=this.tryGetEntity(e);if(t&&t instanceof c.pQ)return!this.calcCeilings||t.area<=1e-4?Promise.resolve():(this._inFlightRoomCeilingsCalc.add(t.id),this.calcCeilings(t).then((e=>{this._inFlightRoomCeilingsCalc.delete(t.id),!this._roomsNeedingCeilingCalc.has(t.id)&&this.rooms.has(t.id)&&(t.ceiling=e,this._scheduleUpdate(this._rooms,t))})))}clearAllCeilings(){for(const e of this.rooms.values())e.ceiling=null,this._scheduleUpdate(this._rooms,e);this._flushObserverQueue()}markAllRoomsDirty(){for(const e of this.rooms.values())this._scheduleUpdate(this._rooms,e);this._flushObserverQueue()}scheduleCeilingComputation(e){this._roomsNeedingCeilingCalc.add(e.id)}async recalculateCeilings(e=!1){if(e)for(const e of this.rooms.keys())this._roomsNeedingCeilingCalc.add(e);for(;;){const e=[];for(const t of this._roomsNeedingCeilingCalc)e.push(this.calculateRoomCeilings(t));if(this._roomsNeedingCeilingCalc.clear(),await Promise.all(e),0===this._roomsNeedingCeilingCalc.size)break}return this._flushObserverQueue(),Promise.resolve()}sweepsForRoom(e){return this.fallbacks.sweepsForRoom(e)}fallbackBaseHeightForRoom(e){return this.fallbacks.fallbackBaseHeightForRoom(e)}baseHeightForFloor(e){return this.fallbacks.baseHeightForFloor(e)}roomHeightWithFallback(e){return this.fallbacks.roomHeightWithFallback(e)}fallbackBaseHeightForOpening(e){return this.fallbacks.fallbackBaseHeightForOpening(e,this)}computeLowerElevationForOpenings(e=!0){for(const t of this.wallOpenings.values())if(isNaN(t.lowerElevation)){const i=this.fallbackBaseHeightForOpening(t.wall);e?this._setOpeningDetails(t.id,{lowerElevation:i}):t.lowerElevation=i}e&&this._flushObserverQueue()}heightConstraintsForOpening(e,t){var i;let n=Number.MAX_SAFE_INTEGER,s=Number.MIN_SAFE_INTEGER;const a=this.getRoomsForWall(e.wall);for(const e of a){const t=null===(i=e.getMaxCeilingDatum())||void 0===i?void 0:i.height,a=this.roomHeightWithFallback(e);t&&!isNaN(t)&&t>s&&(s=t),!isNaN(a)&&a{"use strict";i.d(t,{F:()=>n,w:()=>s});class n{constructor(e,t){this.sweepData=e,this.floorsData=t}*sweepsForRoom(e){for(const t of this.sweepData.sweeps())t.floorId===e.floorId&&e.containsPoint(t.floorPosition.x,t.floorPosition.z)&&(yield t)}fallbackBaseHeightForRoom(e){return this.medianSweepHeightForRoom(e)||this.baseHeightForFloor(e.floorId)}baseHeightForFloor(e){const t=this.floorsData.getFloor(e);return t.medianSweepFloorHeight()||t.boundingBox.min.y}medianSweepHeightForRoom(e){const t=[];for(const i of this.sweepsForRoom(e))if(t.push(i.floorPosition.y),t.length>=5)break;if(t.length>0){const e=t.sort(((e,t)=>e-t));return e[Math.floor(e.length/2)]}return null}roomHeightWithFallback(e){return isNaN(e.floorHeight)?this.fallbackBaseHeightForRoom(e):e.floorHeight}fallbackBaseHeightForOpening(e,t){const i=t.getRoomsForWall(e);let n=0;if(i.size>0){for(const e of i)n+=this.roomHeightWithFallback(e);n/=i.size}else n=this.baseHeightForFloor(e.floorId);return n}}class s{*sweepsForRoom(e){}fallbackBaseHeightForRoom(e){return 0}roomHeightWithFallback(e){return 0}baseHeightForFloor(e){return 0}fallbackBaseHeightForOpening(e,t){return 0}}},92788:(e,t,i)=>{"use strict";i.d(t,{GZ:()=>s,Vc:()=>n,pO:()=>T,pQ:()=>_,rO:()=>v,vQ:()=>f});var n,s,a=i(89955),o=i.n(a),r=i(82807),l=i(68909),d=i(93818),c=i(47503),u=i(98720),h=i(941),m=i(11579),p=i(25601),E=i(15854),S=i(54664),O=i(28172),g=i(99380);!function(e){e.INDOOR="indoor",e.OUTDOOR="outdoor"}(n||(n={})),function(e){e.INDOOR="indoor",e.OUTDOOR="outdoor",e.NON_AREA="nonArea",e.HIDE="hide"}(s||(s={}));class _{constructor(e){this.area=NaN,this.areaWithWalls=NaN,this.length=NaN,this.l1=new l.Vector2,this.l2=new l.Vector2,this.width=NaN,this.w1=new l.Vector2,this.w2=new l.Vector2,this.height=NaN,this.ceiling=null,this._minimalInnerEdges=null,this._minimalInnerLoop=null,this.classifications=[],this.showDimensions=!0,this.showHeight=!0,this._viewCenterCache={},this._containsPointCache=new r.A({maxSize:10}),this.wallsCCW=[],this.holeWallsCW=[],this.cornerStraight=(()=>{const e=new l.Vector3,t=new l.Vector3;return(i,n)=>{const s=i.end.distanceTo(n.start)<.02;e.subVectors(i.start,i.end).normalize(),t.subVectors(n.end,n.start).normalize();const a=Math.abs(Math.abs(e.dot(t))-1)<.01;return s&&a}})(),this.containsPoint=(()=>{const e=new l.Vector2;return(t,i)=>{const n=`${1e3*t|0}|${1e3*i|0}`,s=this._containsPointCache.get(n);if(null!=s)return s;if(e.set(t,i),this.bbox.containsPoint(e)){const e=this.polygon2d.shell,s=this.polygon2d.holes,a=(0,E.s)([t,i],e)&&!s.some((e=>(0,E.s)([t,i],e)));return this._containsPointCache.set(n,a),a}return!1}})(),e&&Object.assign(this,e),this.initCCWWalls()}getEntityAnalytic(){return"room"}get roomTypeIds(){return 0===this.classifications.length?[m.YV]:this.classifications.map((e=>e.id))}get floorHeight(){if(null!=this.ceiling&&this.ceiling.planes.length>0){const e=this.ceiling.planes[0].measurements;if(e.length>0)return e[0].bottom.y}return NaN}accessible(){return!(this.hide&&!this.includeInAreaCalc)}isOther(){const e=this.roomTypeIds;return 1===e.length&&e[0]===m.YV}get floorId(){return this.points[0].floorId}getMaxCeilingDatum(){if(this.isFlatCeiling())return null;let e=Number.MIN_SAFE_INTEGER,t=null;const i=new l.Vector3;if(null!=this.ceiling)for(const n of this.ceiling.planes)for(const s of n.measurements)s.height>=e&&(e=s.height,t=i.set(s.bottom.x,s.bottom.y,s.bottom.z));return null!=t?{position:t,height:e}:null}getMinCeilingHeight(){let e=Number.MAX_SAFE_INTEGER,t=!1;if(null!=this.ceiling)for(const i of this.ceiling.planes)for(const n of i.measurements)n.height=h.lD&&(e=n.height,t=!0);return t?e:isNaN(this.height)?NaN:this.height}isFlatCeiling(){return null!=this.ceiling&&Math.abs(this.ceiling.maxHeight-this.ceiling.minHeight)<=1e-8}getSnapshot(){return{height:this.height,source:"frontend",vertices:this.points.map((e=>e.id)),holes:this.holeWallsCW.map((e=>e.map((e=>e.wall.id)))),label:this.name}}pointsMoved(){this._bbox=null,this._geometry=null,this._viewCenterCache={},this._containsPointCache.clear(),this._minimalInnerLoop=null,this._poly2d=null,this._minimalInnerEdges=null}get minimalInnerLoop(){return null==this._minimalInnerLoop&&(this._minimalInnerLoop=this.calculateMinimalInnerLoop()),this._minimalInnerLoop.wallLoop}get minimalOpeningLoop(){return null==this._minimalInnerLoop&&(this._minimalInnerLoop=this.calculateMinimalInnerLoop()),this._minimalInnerLoop.openingSegments}get polygon2d(){if(null==this._poly2d){const e=this.minimalInnerLoop[0].map((e=>[e.x,e.z])),t=this.minimalInnerLoop.slice(1,this.minimalInnerLoop.length).map((e=>e.reverse().map((e=>[e.x,e.z]))));this._poly2d={shell:e,holes:t}}return this._poly2d}get minimalInnerEdges(){return null==this._minimalInnerEdges&&(this._minimalInnerEdges=this.calculateMinimalInnerEdges()),this._minimalInnerEdges}get bbox(){return this._bbox||(this._bbox=(new l.Box2).setFromPoints(this.points.map((e=>e.getVec2())))),this._bbox}getViewCenter(e=new l.Vector3,t=1){const i=t.toFixed(1),n=this._viewCenterCache[i];if(null!=n)return e.copy(n.center),e;{const n=this.points.map((e=>[e.x/t,e.z]));n.push([this.points[0].x/t,this.points[0].z]);const s=[n].concat(this.holesCW.map((e=>e.map((e=>[e.x/t,e.z])).reverse()))),a=o()(s,.1),r=a.distance,d=new l.Vector3(a[0]*t,0,a[1]);return this._viewCenterCache[i]={center:d,distance:r},e.copy(d),e}}getViewCenterDistance(e=1){this.getViewCenter(void 0,e);const t=e.toFixed(1);if(null==this._viewCenterCache[t])throw new Error("View center should have been precached");return this._viewCenterCache[t].distance}getArea(e){return(0,g.g6)(this.area,e)}getMeasurementText(e){return this.canDisplayDimensions()?[(0,d.R5)(this.width,e),(0,d.R5)(this.length,e)].join(` ${d.ac} `):""}canDisplayDimensions(){return!(isNaN(this.length)||isNaN(this.width)||this.length<=0||this.width<=0||!this.showDimensions)}canDisplayHeight(){return(!isNaN(this.height)||null!=this.ceiling)&&this.showHeight}getPerimeterText(e){return(0,d.R5)(this.perimeter,e)}getCWPoints(){return this.points.slice().reverse()}allWalls(){return(0,c.LX)(this.walls,...this.holes)}allKeywords(){const e=this.keywords.slice();return this.hide&&e.push(s.HIDE),this.includeInAreaCalc||e.push(s.NON_AREA),e.push(this.location===n.OUTDOOR?s.OUTDOOR:s.INDOOR),e}initCCWWalls(){const e=new Map;for(const t of this.allWalls())e.set(u.j.getCompositeKey(t.from.id,t.to.id),t);const t=t=>{const i=[],n=t.length;for(let s=0;snew l.Vector2(e.x,e.z))),i=e.slice(1).map((e=>e.map((e=>new l.Vector2(e.x,e.z))))),n=l.ShapeUtils.triangulateShape(t,i).map((e=>[e[0],e[2],e[1]]));this._geometry={faces:n,points:t.concat(i.flat(1))}}return this._geometry}calculateInnerLoop(e=0){const t=[],i=[],n=n=>{t.push([]),i.push([]);const s=t[t.length-1],a=i[i.length-1],o=n.length;for(let t=0;t.01)&&(s.push(h),a.push([])),s.push(c.end.clone()),r.wall.openings.length>0){const e=r.wall.openings.map((e=>{const t=e.getPoints(0,new l.Vector3,new l.Vector3);return{solid:(0,g.l6)(e.label),line:new l.Line3(t.start,t.end)}}));a.push(e)}else a.push([])}};n(this.wallsCCW);for(const e of this.holeWallsCW)n(e);return{wallLoop:t,openingSegments:i}}calculateMinimalInnerLoop(e=0){const t=[],i=[],{wallLoop:n,openingSegments:s}=this.calculateInnerLoop(e);for(let e=0;e1){const e=d.pop();e&&d[0].push(...e)}if(e>0){const e=l.map((e=>[e.x,e.z]));(0,S.A)(e,!0)>0||l.reverse()}const c=l.length;for(let e=0;e0){e.push({start:t,end:n[0].line.start,needsHeightLabel:!0,solid:!0,skipInsideLabel:!1});for(let t=0;t0&&(null!==(i=e[0].defaultKeywords)&&void 0!==i?i:[]).includes(t)}function A(e){return e.filter((e=>!Object.values(s).includes(e)))}function v(e){return{location:e.includes(s.OUTDOOR)?n.OUTDOOR:n.INDOOR,includeInAreaCalc:!e.includes(s.NON_AREA),hide:e.includes(s.HIDE),keywords:A(e)}}function f(e){const t=new Set;for(const i of e)(0,c.s1)(t,i.defaultKeywords||[]);return t.has(s.INDOOR)&&t.has(s.OUTDOOR)&&t.delete(s.OUTDOOR),Array.from(t.values())}},98720:(e,t,i)=>{"use strict";i.d(t,{b:()=>n,j:()=>l});var n,s=i(68909),a=i(74381),o=i(941),r=i(86866);!function(e){e.SOLID="solid-wall",e.DIVIDER="invisible-wall"}(n||(n={}));class l{static getCompositeKey(e,t){const i=[e,t].sort();return`${i[0]}:${i[1]}`}constructor(e,t,i,n,a,o){this.bias=.5,this.openings=[],this._t1=new s.Vector3,this._t2=new s.Vector3,this._rbushBbox={minX:0,minY:0,maxX:1,maxY:1},this.overlapsCircle=(()=>{const e=new s.Vector3,t=new s.Vector3,i=new s.Vector3,n=new s.Vector3,a=new s.Vector3,o=new s.Vector3;return(s,r)=>{const l=o.copy(s);l.y=0;const d=this.getBiasAdjustmentVec(e),c=this.from.getVec3(t).add(d),u=this.to.getVec3(i).add(d),h=n.subVectors(u,c),m=h.length(),p=a.subVectors(l,c),E=p.length(),S=h.dot(p)/m,O=Math.sqrt(Math.max(E*E-S*S,0));return O<=this.width/2+r&&S>=-r&&S<=m+r?Math.min(S,O):null}})(),this.overlapsLine=(()=>{const e=new s.Vector3,t=new s.Vector3,i=new s.Vector3,n=new s.Vector3,a=new s.Vector3,o=new s.Vector3,l=new s.Vector3,d=new s.Vector3,c=new s.Vector3,u=1e-4;function h(e,t,i){return c.subVectors(t,e).dot(i)/i.lengthSq()}return(s,c)=>{const m=this.getBiasAdjustmentVec(e),p=this.from.getVec3(t).add(m),E=this.to.getVec3(i).add(m),S=n.subVectors(E,p),O=o.copy(S).normalize(),g=a.subVectors(c,s),_=l.copy(g).normalize(),T=O.dot(_);if(Math.abs(Math.abs(T)-1)t&&n>t))return[{entity:this.from,t:i},{entity:this.to,t:n}].sort(((e,t)=>e.t-t.t))}}else{const e=(0,r.eB)(s.x,s.z,c.x,c.z,p.x,p.z,E.x,E.z,u);if(null!=e)return[{entity:this,t:e}]}return[]}})(),this.id=e,this.type=t,this.from=i,this.to=n,this.width=a,this.bias=o}getEntityAnalytic(){return this.type}get floorId(){return this.from.floorId}get compositeKey(){return l.getCompositeKey(this.from.id,this.to.id)}getOtherNode(e){if(e===this.from)return this.to;if(e===this.to)return this.from;throw new Error("WallNode does not belong to edge.")}hasNodes(e,t){const{from:i,to:n}=this;return!(e!==i&&e!==n||t!==i&&t!==n)}getBiasAdjustmentVec(e=new s.Vector3){this.getNormal(e);const t=(this.bias-.5)*this.width;return e.multiplyScalar(t),e}getNormal(e=new s.Vector3){return this.getDirection(e),e.normalize(),e.set(-e.z,0,e.x),e}getPlaneFacingAwayFromDirection(e,t=new s.Plane){const i=this.getNormal().normalize();return e.dot(i)>0&&i.multiplyScalar(-1),t.setFromNormalAndCoplanarPoint(i,this.from.getVec3()),t}getDirection(e){const t=e||new s.Vector3;return t.set(this.to.x-this.from.x,0,this.to.z-this.from.z),t}getEdgeWidth(e,t){const i=this.from===e&&this.to===t?this.bias:1-this.bias;return this.width*i}getEdgeNormal(e,t,i=new s.Vector3){return this.getNormal(i),this.from===e&&this.to===t||i.multiplyScalar(-1),i}getLine3(e){const t=e||new s.Line3;return this.from.getVec3(t.start),this.to.getVec3(t.end),t}getProjection(e){const t=this._t1.copy(e).sub(this.from.getVec3(this._t2)),i=this.getDirection(this._t2);return t.dot(i)/i.length()}getSnapshot(){const e={thickness:this.width,vertices:[this.from.id,this.to.id],type:this.type===n.SOLID?a.gP.WALL:a.gP.INVISIBLE};if(this.openings.length){const t={};for(const e of this.openings)t[e.id]=e.getSnapshot();e.openings=t}return e}getViewCenter(e=new s.Vector3){return e.addVectors(this.to.getVec3(),this.from.getVec3()).multiplyScalar(.5)}get length(){return this.from.distanceTo(this.to)}get minX(){return this._rbushBbox.minX}get maxX(){return this._rbushBbox.maxX}get minY(){return this._rbushBbox.minY}get maxY(){return this._rbushBbox.maxY}updateRBushBBox(){this._rbushBbox={minX:Math.min(this.from.x,this.to.x)-2*this.width-o.RS,minY:Math.min(this.from.z,this.to.z)-2*this.width-o.RS,maxX:Math.max(this.from.x,this.to.x)+2*this.width+o.RS,maxY:Math.max(this.from.z,this.to.z)+2*this.width+o.RS}}clone(){const e=new l(this.id,this.type,this.from,this.to,this.width,this.bias);return e.openings.push(...this.openings),e}}},42968:(e,t,i)=>{"use strict";i.d(t,{D:()=>a});var n=i(68909),s=i(941);class a{constructor(e,t,i,s){this.rbushBbox={minX:0,minY:0,maxX:1,maxY:1},this.overlapsCircle=(()=>{const e=new n.Vector3;return(t,i)=>{const n=this.getVec3(e).distanceTo(t);return n<=i+.3?n:null}})(),this.overlapsLine=(()=>{const e=new n.Vector3,t=new n.Vector3,i=new n.Vector3;return(n,s)=>{const a=e.subVectors(s,n),o=this.getVec3(i),r=t.subVectors(o,n),l=r.dot(a)/a.length(),d=r.length();return Math.sqrt(d*d-l*l)<.3?[{entity:this,t:l/a.length()}]:[]}})(),this.id=e,this.floorId=t,this.x=i,this.z=s}getEntityAnalytic(){return"node"}getPoint(){return{x:this.x,z:this.z}}getVec3(e){const t=e||new n.Vector3;return t.set(this.x,0,this.z),t}getVec2(e){const t=e||new n.Vector2;return t.set(this.x,this.z),t}getViewCenter(e=new n.Vector3){return this.getVec3(e)}getSnapshot(){return{x:this.x,y:-this.z}}distanceTo(e){const t=this.x-e.x,i=this.z-e.z;return Math.sqrt(t*t+i*i)}updateRBushBBox(){this.rbushBbox={minX:this.x-s.RS,minY:this.z-s.RS,maxX:this.x+s.RS,maxY:this.z+s.RS}}get minX(){return this.rbushBbox.minX}get maxX(){return this.rbushBbox.maxX}get minY(){return this.rbushBbox.minY}get maxY(){return this.rbushBbox.maxY}}},34914:(e,t,i)=>{"use strict";i.d(t,{$:()=>a});var n=i(68909),s=i(99380);class a{constructor(e,t,i,s,a,o,r,l){this.id=e,this.wall=t,this.floorId=i,this.relativePos=s,this.width=a,this.label=o,this.height=r,this.lowerElevation=l,this.getPoints=(()=>{const e=new n.Vector3,t=new n.Vector3,i=new n.Vector3,s=new n.Vector3;return(n,a,o)=>{const r=this.wall;return s.set(0,n,0),r.getBiasAdjustmentVec(i),r.from.getVec3(a).add(i).add(s),r.to.getVec3(o).add(i).add(s),t.subVectors(o,a).normalize(),e.copy(a),e.lerp(o,this.relativePos),a.copy(e).addScaledVector(t,-.5*this.width),o.copy(e).addScaledVector(t,.5*this.width),{start:a,end:o}}})(),this.getRotation=(()=>{const e=new n.Vector3,t=new n.Vector3,i=new n.Vector3,s=new n.Vector3(1,0,0);s.normalize();const a=new n.Quaternion;return()=>(this.getPoints(this.lowerElevation,e,t),i.subVectors(t,e).normalize(),a.setFromUnitVectors(s,i),a.clone())})(),this.getWidth=(()=>{const e=new n.Vector3,t=new n.Vector3;return()=>(this.getPoints(0,e,t),e.distanceTo(t))})(),this.getCenter=(()=>{const e=new n.Vector3,t=new n.Vector3;return()=>(this.getPoints(this.lowerElevation,e,t),e.add(t).multiplyScalar(.5))})()}get wallId(){return this.wall.id}getEntityAnalytic(){return(0,s.q9)(this.label)}getViewCenter(e=new n.Vector3){return e.set(0,0,0)}getSnapshot(){const{label:e,relativePos:t,width:i}=this;return{lowerElevation:0,height:0,label:e,relativePos:t,width:i}}}},11579:(e,t,i)=>{"use strict";i.d(t,{Ae:()=>G,Cp:()=>o,Er:()=>m,FI:()=>A,GC:()=>H,Hy:()=>T,Kq:()=>W,LX:()=>I,Q5:()=>V,QN:()=>k,SE:()=>S,SK:()=>y,TP:()=>u,V5:()=>C,Wr:()=>l,Xq:()=>c,YK:()=>f,YV:()=>D,ZQ:()=>d,_1:()=>O,_6:()=>x,aU:()=>h,bA:()=>s,eA:()=>E,i_:()=>a,lz:()=>N,m1:()=>p,mg:()=>v,ny:()=>P,oV:()=>w,om:()=>n,pZ:()=>_,pl:()=>L,sC:()=>M,u9:()=>b,v1:()=>R,vS:()=>g,x3:()=>U,xI:()=>r,xt:()=>F});const n="ge0tcan3iztta5mtgsfx99xpb",s="4by2d70b54srbin43t5m0yh9c",a="ua1m0u8pm3yngrhzwec1ue5zc",o="pnf0xzq61xcegack4iai7xppd",r="y3xuprmywgrprnm0273u3pphd",l="zp189tx2hdrry8k5nhaq5x45d",d="4gp8x21ni4i8y19r9pm4rb35a",c="00258k0mqu8750du151be805c",u="91naa1k3hiim9z4mk8352enta",h="rmu8pikcye0n7n9fsu5e4acda",m="cqig2yw0p8q99t5n02w1kf40b",p="66psa4tqgazbnffr9huy2dnpd",E="4qq4e5hz84hcur7ry87uhtmua",S="mx6e2yfk0tg0zbkbzuw5mhkda",O="0gnuunpwx63dmmqeq64aqfiyd",g="izt39gytcbymc0qtd37nrb7xb",_="ei3kmtun2xpspbg3d5ff3t3zc",T="xwhhz63a0hw735qf81knp63ha",A="ywtddu9hagraxhznwinn8t4zb",v="yeh1aa32fwgm72bh0g92ebruc",f="zgh2304w5anu0t25ia06ytfxd",N="pr9h4zy7eak91f3b7un97u42c",I="gqqw1zac1hzg1p8622ducg3zb",L="w4tdggk5i5u2zpiryugktghgb",R="e6md2spaqemc448pmau3azkhd",y="a11d2gi43h0etwedw0mx9pgwd",b="ag5uphha72sak65qazgsp09yd",D="byp7pz2tmt4ff47nhfx0uwzec",M="2nx6maxxpaeut7kx96fuacdzc",P="n07hhs9gky4cgrh7q65s9rp0d",k="s1h0hb8tpcc9i35dmupknsega",w="gba8cq0s2rdfg1zdb1epwty7d",C="0an2rky24gb91fdnpzmbwadib",x="qa21tqcsinnxde9gdmiphacza",H="k4ww3sk359ntmwgr8s75hq22a",U="nqw75004dcg2bcr41047rhg6c",F=[[a,N],[f,c],[f,L],[f,L,c],[L,c]],G=", ",V="-";function W(e){if(e.length<2)return e;for(const t of F)if(t.length===e.length&&t.every((t=>-1!==e.indexOf(t))))return t.slice();return e}},7584:(e,t,i)=>{"use strict";i.d(t,{Yk:()=>a,h4:()=>r,m2:()=>l,qQ:()=>o});var n=i(40186),s=i(56208);const a="room_bounds",o="room_bound_user_view_error";function r(e){return e.tryGetSetting(s.Q$.RoomBounds,!1)}function l(e,t,i){return!!(0,n.NW)(e)&&(!t.tryGetSetting(o,!1)&&(r(t)||i))}},50659:(e,t,i)=>{"use strict";i.d(t,{N:()=>o});var n=i(96540),s=i(51469);function a(e){return e?Array.from(e.rooms.values()):[]}function o(){const e=(0,s.N)(),[t,i]=(0,n.useState)(a(e));return(0,n.useEffect)((()=>{if(!e)return()=>{};const t=()=>i(a(e)),n=e.onRoomsChanged({onRemoved:e=>t,onUpdated:e=>t,onChildUpdated:e=>t,onAdded:e=>t});return t(),()=>{n.cancel()}}),[e]),t}},51469:(e,t,i)=>{"use strict";i.d(t,{N:()=>a});var n=i(98236),s=i(12866);const a=(0,n.v_)(s.A)},35336:(e,t,i)=>{"use strict";i.d(t,{Z:()=>a,t:()=>s});var n=i(7478);class s extends n.QB{constructor(e){super(),this.error=e}}class a extends n.QB{constructor(e,t=(new Error).stack){super(),this.message=e,this.stack=t}}},25601:(e,t,i)=>{"use strict";i.d(t,{A:()=>l,I:()=>d});var n=i(81662),s=i(68909),a=i(86866),o=i(53172);class r{constructor(){this.primary=new s.Vector3,this.bevel=new s.Vector3}set(e,t,i){this.primary.set(e,t,i),this.bevel.set(e,t,i)}copy(e,t){this.primary.copy(e),t?this.bevel.copy(t):this.bevel.copy(e)}}const l=(()=>{const e={fromLeft:new r,fromRight:new r,toLeft:new r,toRight:new r};return(t,i)=>{h(t,e);const n=i.getWallNeighbors(t,"from"),s=i.getWallNeighbors(t,"to");return n&&(c(t,n.left,"from","left",e.fromLeft),c(t,n.right,"from","right",e.fromRight)),s&&(c(t,s.left,"to","left",e.toLeft),c(t,s.right,"to","right",e.toRight)),e}})(),d=(()=>{const e={start:new s.Vector3,end:new s.Vector3},t={fromLeft:new r,fromRight:new r,toLeft:new r,toRight:new r};return(i,n,s,a,o=0)=>{let r,l,d,u,m;return a?(r="right",l="to",d="from",u=t.toRight,m=t.fromRight):(r="left",l="from",d="to",u=t.fromLeft,m=t.toLeft),h(i,t,o),i.id!==n.id&&c(i,n,l,r,u,o),c(i,s,d,r,m,o),e.start.copy(u.primary),e.end.copy(m.primary),e}})(),c=(()=>{const e=new s.Vector3,t=new s.Vector3,i=new s.Vector3,r=new s.Vector3,l=new s.Vector3,d=new s.Vector3,c=new s.Vector3,h=new s.Vector2,p=new s.Vector2,E=new s.Vector2,S=new s.Vector3,O=new s.Vector3;return(s,g,_,T,A,v=0)=>{const f=s.getDirection(e).normalize(),N=s[_],I="from"===_?-1:1,L=g.getOtherNode(N).getVec3(t).sub(N.getVec3(i)).normalize().multiplyScalar(I),R=f.dot(L);if(Math.acos(R)*o.tm<5)return;s.getBiasAdjustmentVec(S),g.getBiasAdjustmentVec(O);const y="left"===T?Math.PI/2:-Math.PI/2,b=f.applyAxisAngle(n.B1.UP,y).multiplyScalar(s.width/2+v).add(S),D=L.applyAxisAngle(n.B1.UP,y).multiplyScalar(g.width/2+v).add(O);s.from.getVec3(r).add(b),s.to.getVec3(l).add(b),g.from.getVec3(d).add(D),g.to.getVec3(c).add(D);if((0,a.HV)(r.x,r.z,l.x,l.z,d.x,d.z,c.x,c.z,h)){const e=u(N,s,g,h,E),t=e.x>0&&e.y>0,i=e.x<0&&e.y<0;if(e.x1.2*Math.max(s.width,g.width)&&i?m(N,s,g,b,D,A):A.set(h.x,0,h.y)}}}})(),u=(()=>{const e=new s.Vector3,t=new s.Vector3,i=new s.Vector3,n=new s.Vector3;return(s,a,o,r,l)=>{let d=a.getOtherNode(s);return s.getVec3(i),d.getVec3(e).sub(i),d=o.getOtherNode(s),d.getVec3(t).sub(i),n.set(r.x,0,r.y).sub(i),l.set(e.dot(n)/e.length(),t.dot(n)/t.length()),l}})(),h=(()=>{const e=new s.Vector3,t=new s.Vector3,i=new s.Vector3,n=new s.Vector3;return(s,a,o=0)=>{const r=s.width+2*o;s.getBiasAdjustmentVec(i),s.getNormal(e).multiplyScalar(-r/2).add(i),s.getNormal(t).multiplyScalar(r/2).add(i);const l=s.from.getVec3(n).add(t);a.fromRight.copy(l);const d=s.to.getVec3(n).add(t);a.toRight.copy(d);const c=s.to.getVec3(n).add(e);a.toLeft.copy(c);const u=s.from.getVec3(n).add(e);a.fromLeft.copy(u)}})(),m=(()=>{const e=new s.Vector3,t=new s.Vector3,i=new s.Vector3,n=new s.Vector3,a=new s.Vector3;return(s,o,r,l,d,c)=>{const u=o.getOtherNode(s),h=r.getOtherNode(s);s.getVec3(t),u.getVec3(e).sub(t).normalize().multiplyScalar(-o.width/2),h.getVec3(i).sub(t).normalize().multiplyScalar(-r.width/2),n.copy(t).add(l).add(e),a.copy(t).add(d).add(i),c.copy(n,a)}})()},30169:(e,t,i)=>{"use strict";i.d(t,{Ay:()=>o,TG:()=>r});var n=i(56147),s=i(11579);const a={[s.om]:n.A.WORKSHOP.LABEL_SUGGESTIONS.BALCONY,[s.bA]:n.A.WORKSHOP.LABEL_SUGGESTIONS.BASEMENT,[s.i_]:n.A.WORKSHOP.LABEL_SUGGESTIONS.BATHROOM,[s.Cp]:n.A.WORKSHOP.LABEL_SUGGESTIONS.BEDROOM,[s.xI]:n.A.WORKSHOP.LABEL_SUGGESTIONS.BONUS_ROOM,[s.Wr]:n.A.WORKSHOP.LABEL_SUGGESTIONS.CLOSET,[s.ZQ]:n.A.WORKSHOP.LABEL_SUGGESTIONS.DEN,[s.Xq]:n.A.WORKSHOP.LABEL_SUGGESTIONS.DINING_ROOM,[s.TP]:n.A.WORKSHOP.LABEL_SUGGESTIONS.DRIVEWAY,[s.aU]:n.A.WORKSHOP.LABEL_SUGGESTIONS.ENTRANCE,[s.m1]:n.A.WORKSHOP.LABEL_SUGGESTIONS.EXERCISE_ROOM,[s.Er]:n.A.WORKSHOP.LABEL_SUGGESTIONS.EXTERIOR,[s.eA]:n.A.WORKSHOP.LABEL_SUGGESTIONS.FACADE,[s.SE]:n.A.WORKSHOP.LABEL_SUGGESTIONS.FAMILY_ROOM,[s._1]:n.A.WORKSHOP.LABEL_SUGGESTIONS.GAME_ROOM,[s.vS]:n.A.WORKSHOP.LABEL_SUGGESTIONS.GARAGE,[s.pZ]:n.A.WORKSHOP.LABEL_SUGGESTIONS.GARDEN,[s.Hy]:n.A.WORKSHOP.LABEL_SUGGESTIONS.GREAT_ROOM,[s.FI]:n.A.WORKSHOP.LABEL_SUGGESTIONS.GYM,[s.mg]:n.A.WORKSHOP.LABEL_SUGGESTIONS.HALLWAY,[s.YK]:n.A.WORKSHOP.LABEL_SUGGESTIONS.KITCHEN,[s.lz]:n.A.WORKSHOP.LABEL_SUGGESTIONS.LAUNDRY,[s.LX]:n.A.WORKSHOP.LABEL_SUGGESTIONS.LIBRARY,[s.pl]:n.A.WORKSHOP.LABEL_SUGGESTIONS.LIVING_ROOM,[s.v1]:n.A.WORKSHOP.LABEL_SUGGESTIONS.LOFT,[s.SK]:n.A.WORKSHOP.LABEL_SUGGESTIONS.MEDIA_ROOM,[s.u9]:n.A.WORKSHOP.LABEL_SUGGESTIONS.OFFICE,[s.YV]:n.A.WORKSHOP.LABEL_SUGGESTIONS.OTHER,[s.sC]:n.A.WORKSHOP.LABEL_SUGGESTIONS.PANTRY,[s.ny]:n.A.WORKSHOP.LABEL_SUGGESTIONS.PATIO,[s.QN]:n.A.WORKSHOP.LABEL_SUGGESTIONS.POOL,[s.oV]:n.A.WORKSHOP.LABEL_SUGGESTIONS.SAUNA,[s.V5]:n.A.WORKSHOP.LABEL_SUGGESTIONS.STAIRCASE,[s._6]:n.A.WORKSHOP.LABEL_SUGGESTIONS.UTILITY_ROOM,[s.GC]:n.A.WORKSHOP.LABEL_SUGGESTIONS.VOID,[s.x3]:n.A.WORKSHOP.LABEL_SUGGESTIONS.WORKSHOP_ROOM};function o(e,t,i){const s=t.t(n.A.SHOWCASE.ROOMS.DEFAULT_NAME);return i&&e?i.getRoomLabel(e,s):s}function r(e,t){const{id:i,label:a}=e;if(!i)return a||t.t(n.A.WORKSHOP.LABEL_SUGGESTIONS.OTHER);return i.indexOf(s.Q5)>-1?i.split(s.Q5).map((e=>t.t(l({id:i,label:a})))).join(s.Ae):t.t(l({id:i,label:a}))}function l(e){const{id:t,label:i}=e,s=a[t];return s||(i||n.A.WORKSHOP.LABEL_SUGGESTIONS.OTHER)}},941:(e,t,i)=>{"use strict";i.d(t,{$h:()=>l,Bg:()=>a,GY:()=>h,Mg:()=>s,RS:()=>o,Sj:()=>u,VG:()=>d,lD:()=>c,w_:()=>r});var n=i(53172);const s=6*n.fy,a=6*n.fy,o=.01,r=.05,l=.1,d=.02,c=1.5,u=2.032,h=200},84615:(e,t,i)=>{"use strict";var n,s;i.d(t,{k:()=>s,v:()=>n}),function(e){e.DOOR="doorway",e.OPENING="opening"}(n||(n={})),function(e){e.DOOR_UNKNOWN="door-unknown",e.DOOR_PIVOT="door-pivot",e.DOOR_SLIDE="door-slide",e.DOOR_REVOLVE="door-revolve",e.DOOR_DOUBLE="door-double",e.DOOR_FOLD="door-fold",e.DOOR_PANEL="door-panel",e.WINDOW_UNKNOWN="window-unknown",e.WINDOW_PIVOT="window-pivot",e.WINDOW_SLIDE="window-slide",e.WINDOW_REVOLVE="window-revolve",e.WINDOW_DOUBLE="window-double",e.WINDOW_FOLD="window-fold",e.WINDOW_PANEL="window-panel",e.DIVIDER="divider"}(s||(s={}))},99380:(e,t,i)=>{"use strict";i.d(t,{I0:()=>p,K$:()=>R,N5:()=>h,bt:()=>b,eW:()=>u,fI:()=>w,fZ:()=>A,g6:()=>m,jd:()=>P,l6:()=>k,ll:()=>E,mN:()=>S,m_:()=>g,q9:()=>C,vo:()=>D,yh:()=>M});var n=i(54664),s=i(8004),a=i(68909),o=i(85626),r=i(53172),l=i(11579),d=i(26348),c=i(84615);function u(e,t=!1){if(0===e.length)return 0;const i=e.map((e=>[e.x,e.z]));return i.push(i[0]),(0,n.A)(i,t)}function h(e){return u(e,!0)>0&&e.reverse(),e}function m(e,t){let i=1;return"imperial"===t?e=(0,d.Nd)(e):"metric"===t&&(i=10),Math.round(e*i)/i}const p=(e,t)=>{const i=e.getCWPoints(),n=i.length,s={edges:[],thickness:[]};for(let e=0;e.01)&&(s.edges.push(i[e]),s.thickness.push(d))}return s},E=(e,t)=>{t.set(e[1].x-e[0].x,e[1].z-e[0].z).normalize();const i=t.x,n=t.y;return t.set(-n,i),t},S=(()=>{const e=new a.Vector2;return(t,i,n)=>(e.subVectors(n,i),t.dot(e))})(),O=(()=>{const e=new a.Vector2,t=new a.Vector2,i=new a.Vector2;return(n,s,a,o)=>(e.subVectors(a,s),t.copy(n).multiplyScalar(n.dot(e)),i.subVectors(e,t),o.addVectors(s,i),o)})(),g=(()=>{const e=new a.Vector2,t=new a.Vector2,i=new a.Vector2,n=new a.Vector2,s=new a.Vector2;return(a,o,r,l)=>{e.subVectors(a[1],a[0]).normalize(),t.subVectors(o[1],o[0]).normalize(),i.subVectors(e,t).normalize();const d=S(i,a[0],a[1]);let c=S(i,a[0],o[0]),u=S(i,a[0],o[1]);if(u{const e=new a.Vector2,t=new a.Vector2,i=Math.cos(5*r.fy);return(n,s,a)=>{e.set(n[1].x-n[0].x,n[1].z-n[0].z).normalize(),t.set(s[1].x-s[0].x,s[1].z-s[0].z).normalize();const o=e.dot(t);return o>=i||a&&o<=-i}})(),T=(()=>{const e=new a.Vector2;return(t,i,n)=>{if(!_(t,i,n))return!1;e.set(-(i[1].z-t[0].z),i[1].x-t[0].x).normalize();return!(Math.abs(S(e,t[0].getVec2(),t[1].getVec2()))>.05)}})(),A=(()=>{const e=new a.Vector2,t=new a.Vector2,i=new a.Vector3,n=new a.Vector2,s=new a.Vector2(0,0),o=[new a.Vector2,new a.Vector2],r=[new a.Vector2,new a.Vector2],l=new a.Vector2,d=new a.Vector2;return(a,c,u,h)=>{let m=Math.atan2(u[1].y-u[0].y,u[1].x-u[0].x);m<0&&(m+=2*Math.PI),m%=Math.PI/2;let p=Math.atan2(c[1].y-c[0].y,c[1].x-c[0].x);m<0&&(m+=Math.PI/2),p%=Math.PI/2,Math.abs(p-Math.PI/2-m){const e=new a.Vector2,t=new a.Vector2;return(i,n,s,a)=>{e.subVectors(i[1],i[0]).normalize(),t.subVectors(n[1],n[0]).normalize(),Math.abs(e.y)>Math.abs(t.y)?(s.x=Math.min(n[0].x,n[1].x),a.x=Math.max(n[0].x,n[1].x),s.y=Math.min(i[0].y,i[1].y),a.y=Math.max(i[0].y,i[1].y)):(s.x=Math.min(i[0].x,i[1].x),a.x=Math.max(i[0].x,i[1].x),s.y=Math.min(n[0].y,n[1].y),a.y=Math.max(n[0].y,n[1].y))}})();function f(e){const t=e[1].x-e[0].x,i=e[1].y-e[0].y;return t>0&&i>0?t*i:0}function N(e,t){return f([I(e[0],t[0],new a.Vector2),L(e[1],t[1],new a.Vector2)])}function I(e,t,i){return i.set(Math.max(e.x,t.x),Math.max(e.y,t.y))}function L(e,t,i){return i.set(Math.min(e.x,t.x),Math.min(e.y,t.y))}const R=(()=>{const e=6*r.fy,t=new a.Vector3,i=new a.Vector3;return(n,s,a,o,r,l)=>{const d=n[s],c=n[(s+1)%n.length],u=r.getWallForNodes(d.id,c.id).getEdgeWidth(d,c),h=a?(s+1)%n.length:s,m=(h+1)%n.length,p=(h+n.length-1)%n.length;let E,S;if(o?(E=r.getWallForNodes(n[h].id,n[p].id).getEdgeNormal(n[h],n[p]),S=r.getWallForNodes(n[m].id,n[h].id).getEdgeNormal(n[m],n[h])):(E=r.getWallForNodes(n[p].id,n[h].id).getEdgeNormal(n[p],n[h]),S=r.getWallForNodes(n[h].id,n[m].id).getEdgeNormal(n[h],n[m])),t.copy(a?E:S),E.dot(S)>Math.cos(Math.PI-e)){i.addVectors(E,S).normalize();const e=i.dot(E);Math.abs(e)>1e-6&&(i.multiplyScalar(1/e),t.copy(i))}n[h].getVec3(l).addScaledVector(t,u)}})();function y(e){return`room-${e}`}function b(e){const t=l.YV;return 0===e.length?y(t):e.length>1?y("multi-use"):o.R.includes(y(e[0]))?y(e[0]):y(t)}function D(e,t){const[[i,n],[a,o]]=e,[[r,l],[d,c]]=t,u=((0,s.kW)(e[0],t)?1:0)+((0,s.kW)(e[1],t)?1:0)+((0,s.kW)(t[0],e)?1:0)+((0,s.kW)(t[1],e)?1:0),h=(c-l)*(a-i)-(d-r)*(o-n);if(Math.abs(h)<1e-4)return u>2;const m=n-l,p=i-r,E=((d-r)*m-(c-l)*p)/h,S=((a-i)*m-(o-n)*p)/h,O=1e-8,g=.99999999;return E>O&&EO&&S{const e=new a.Line3(new a.Vector3,new a.Vector3);return(t,i,n)=>{e.set(t,i);for(const t of n){const i=e.closestPointToPoint(t.line.start,!0,new a.Vector3),n=e.closestPointToPoint(t.line.end,!0,new a.Vector3);e.closestPointToPointParameter(i,!0)e.closestPointToPointParameter(t.line.start,!0)-e.closestPointToPointParameter(i.line.start,!0)))}})(),P=e=>e===c.k.DOOR_UNKNOWN||e===c.k.DOOR_PIVOT||e===c.k.DOOR_SLIDE||e===c.k.DOOR_REVOLVE||e===c.k.DOOR_DOUBLE||e===c.k.DOOR_FOLD||e===c.k.DOOR_PANEL,k=e=>e===c.k.WINDOW_UNKNOWN||e===c.k.WINDOW_PIVOT||e===c.k.WINDOW_SLIDE||e===c.k.WINDOW_REVOLVE||e===c.k.WINDOW_DOUBLE||e===c.k.WINDOW_FOLD||e===c.k.WINDOW_PANEL,w=e=>!(!P(e)&&!k(e)&&e!==c.k.DIVIDER),C=e=>P(e)?c.v.DOOR:c.v.OPENING},8694:(e,t,i)=>{"use strict";i.d(t,{y:()=>r});var n=i(12625),s=i(49988),a=i(62802);function o(e,t){return t.floorId===e.floorId&&t.containsPoint(e.floorPosition.x,e.floorPosition.z)}class r extends n.B{get roomClassifications(){return this.roomBoundData.roomClassifications}constructor(e,t){super(),this.sweepData=e,this.roomBoundData=t,this.name="current-room-bound-room-data",this.currentRoomObservable=new s.r((()=>function(e,t){if(!e||!t)return null;let i=null;for(const n of t.rooms.values())if(o(e,n)){i=n;break}return i}(this.sweepData.currentSweepObject||null,this.roomBoundData)),[t=>e.makeSweepChangeSubscription(t),e=>t.onChanged(e)])}get currentRoom(){return this.currentRoomObservable.value}makeCurrentRoomChangeSubscription(e){return this.currentRoomObservable.onChanged(e)}makeCurrentRoomWithSweepDataSubscription(e){return new a.P(this.makeCurrentRoomChangeSubscription(e),this.sweepData.onChanged(e))}isInTransitionState(){return this.sweepData.isInTransitionState()}}},68387:(e,t,i)=>{"use strict";i.d(t,{B:()=>l});var n=i(12625),s=i(14614),a=i(92788),o=i(52030),r=i(73566);class l extends n.B{constructor(e,t,i){super(),this.data=e,this.applicationData=t,this.toolsData=i,this.name="room-bound-view-data",this.roomBoundsVisible=!1,this._roomNamesVisible=o.vs,this._roomWallsVisible=o.vs,this._roomDimensionsVisible=o.vs,this._forceRoomDimensionVisibility=!1,this.applicationData.onChanged((()=>{this.commit()})),this.toolsData.onPropertyChanged("activeToolName",(()=>{this.commit()}))}getSelectedRoom(e){if(!e)return null;const t=this.data.getEntity(e);return t instanceof a.pQ?t:null}setRoomBoundVisible(e){this.roomBoundsVisible=e,this.commit()}get roomNamesVisible(){return this.applicationData.application!==s.lg.SHOWCASE&&(this.applicationData.application!==s.lg.WORKSHOP||this.toolsData.activeToolName!==r.S0.MEASUREMENTS)||this._roomNamesVisible}toggleRoomNamesVisible(){this._roomNamesVisible=!this._roomNamesVisible,this.commit()}get roomWallsVisible(){return this.applicationData.application!==s.lg.SHOWCASE&&(this.applicationData.application!==s.lg.WORKSHOP||this.toolsData.activeToolName!==r.S0.MEASUREMENTS)||this._roomWallsVisible}toggleRoomWallsVisible(){this._roomWallsVisible=!this._roomWallsVisible,this.commit()}get roomDimensionsVisible(){return this._roomDimensionsVisible&&(this.toolsData.activeToolName===r.S0.MEASUREMENTS||this.toolsData.activeToolName===r.S0.ROOM_BOUNDS)||this._forceRoomDimensionVisibility}get visibleInShowcase(){return this.roomNamesVisible||this.roomDimensionsVisible||this.roomWallsVisible}toggleRoomDimensionsVisible(){this._roomDimensionsVisible=!this._roomDimensionsVisible,this.commit()}forceRoomDimensionVisibility(e){this._forceRoomDimensionVisibility=e,this.commit()}}},43718:(e,t,i)=>{"use strict";i.d(t,{v:()=>d});var n=i(56208),s=i(50659),a=i(5262),o=i(41519),r=i(86e3),l=i(14614);function d(){const e=(0,s.N)(),t=(0,r.F)()===l.lg.WORKSHOP,i=(0,a.i)(n.Q$.RoomBounds,!1)||t,d=(0,o.g)();return e.length>0&&i&&!!d}},41519:(e,t,i)=>{"use strict";i.d(t,{g:()=>a});var n=i(98236),s=i(68387);const a=(0,n.v_)(s.B)},99325:(e,t,i)=>{"use strict";i.d(t,{W:()=>o});var n=i(96540),s=i(41519);const a=e=>{var t,i,n;return{roomDimensionsVisible:null===(t=null==e?void 0:e.roomDimensionsVisible)||void 0===t||t,roomNamesVisible:null===(i=null==e?void 0:e.roomNamesVisible)||void 0===i||i,roomWallsVisible:null===(n=null==e?void 0:e.roomWallsVisible)||void 0===n||n}},o=()=>{const e=(0,s.g)(),[t,i]=(0,n.useState)(a(e));return(0,n.useEffect)((()=>{if(!e)return()=>{};const t=()=>i(a(e)),n=e.onChanged(t);return t(),()=>{n.cancel()}}),[e]),t}},52030:(e,t,i)=>{"use strict";i.d(t,{AU:()=>a,VS:()=>s,vs:()=>n});const n=!0,s="features/pie-1.1-ceilings",a="features/pie-gross-floor-area"},50485:(e,t,i)=>{"use strict";i.d(t,{q:()=>a});var n=i(12625),s=i(97994);class a extends n.B{constructor(e){if(super(),this.name="rooms",this.selected=new s.L(null),this._rooms={},this.floorToRoomsMap=new Map,e)for(const t of Object.values(e))this.add(t)}add(e){this._rooms[e.id]=e;const t=this.floorToRoomsMap.get(e.floorId);t?t.push(e):this.floorToRoomsMap.set(e.floorId,[e])}remove(e){const t=this.get(e);if(!t)return;const i=this.floorToRoomsMap.get(t.floorId);if(i){const e=i.indexOf(t);e>-1&&i.splice(e,1)}delete this._rooms[e]}rooms(){const e=this._rooms,t=Object.keys(this._rooms);return function*(){for(const i of t)yield e[i]}()}get roomCount(){return Object.keys(this._rooms).length}get collection(){return this._rooms}getAllRooms(){return Object.values(this.floorToRoomsMap)}get(e){return this._rooms[e]}getByMeshSubgroup(e){return Object.values(this._rooms).find((t=>t.meshSubgroup===e))}roomsByFloor(e){return this.floorToRoomsMap.get(e)||[]}getRoomIdMap(e,t){const i={};for(const n of Object.values(this._rooms)){const s=e.getFloor(n.floorId),a=s?String((s.index<<16)+n.meshSubgroup):"",o=n.id;""===a?console.warn("[WARNING getRoomIdMap]: mapping between room IDs was incomplete!"):t?i[a]=o:i[o]=a}return i}}},68593:(e,t,i)=>{"use strict";i.d(t,{b:()=>s});var n=i(11165);class s extends n.u{constructor(e,t){super(),this.payload={owner:e,isVisible:t}}}s.id="TOGGLE_SCENES_BY_OWNER"},91779:(e,t,i)=>{"use strict";i.d(t,{q:()=>c,t:()=>d});var n=i(68909),s=i(3531),a=i(9139),o=i(10032);const r=["FontLoader","Font","ParametricGeometry","TextGeometry"],l=new a.Vy("three-globals"),d=function(e,t){n.DefaultLoadingManager.addHandler(/\.tga$/i,new s.TGALoader(o.A)),n.DefaultLoadingManager.addHandler(/\.jpe?g$/i,e()),n.DefaultLoadingManager.addHandler(/\.png$/i,t()),n.Cache.enabled=!0},c=async function(){const{modules:e}=await Promise.all([i.e(8287),i.e(1916),i.e(5e3),i.e(7209),i.e(6888),i.e(1662),i.e(239)]).then(i.bind(i,85623));for(const t of e){const e=Object.keys(t);for(const i of e){const e=t[i],s=n;if(i in s)if("object"==typeof e)for(const t in e)t in s[i]||(s[i][t]=e[t]);else"function"==typeof e&&(!(i in s)||r.includes(i)?s[i]=e:l.debug(`"${i}" exists in THREE object but has not been listed as overrideable, skipping...`));else s[i]=e}}}},78849:(e,t,i)=>{"use strict";i.d(t,{L:()=>l});var n=i(12625),s=i(4850),a=i(88325),o=i(93877),r=i(93369);class l extends n.B{constructor(){super(...arguments),this.name="search-data",this.searchMode=!1,this.query="",this.typeFilters=(0,s.Z)(),this.keywordFilters=(0,s.Z)(),this.grouping=l.defaultGrouping,this.results=(0,a.y)(),this.dataTypeGroups={},this.keywordCounts=(0,a.y)({}),this.activeItemId=null,this.selectedType=null,this.simpleSearchView=!1}getSearchDataTypeList(){return Object.values(this.dataTypeGroups)}getSearchDataTypeGroup(e){return this.dataTypeGroups[e]}getQuery(){return this.query}getTypeFilters(){return this.typeFilters.values()}setTypeFilters(e){this.typeFilters.replace(e)}setTypeFilter(e){this.setTypeFilters([e])}clearTypeFilters(){this.getTypeFilters().length>0&&this.typeFilters.replace([])}toggleSearchFilter(e,t){t?this.typeFilters.push(e):this.typeFilters.remove(this.typeFilters.indexOf(e))}hasActiveQuery(){return""!==this.query||this.keywordFilters.length>0}setQuery(e){this.query=e}getKeywordFilters(){return this.keywordFilters.values()}setKeywordFilters(e){this.keywordFilters.replace(e)}setKeywordCounts(e){this.keywordCounts.replace(e)}getKeywordSummaries(){const e={};return this.getKeywordFilters().forEach((t=>{e[t]={id:t,text:t,count:0,isSelected:!0}})),this.keywordCounts.keys.forEach((t=>{const i=this.keywordCounts.get(t);e[t]?e[t].count=i:e[t]={id:t,text:t,count:i,isSelected:!1}})),Object.values(e)}hasSearchResultItem(e){const t=(0,r.u)(e);return this.results.has(t)}getSearchResultItem(e){const t=(0,r.u)(e);return this.results.get(t)}getResultsMap(){return this.results}getResults(){return this.results.values}onSearchResultsChanged(e){return this.results.onChanged(e)}setResults(e){this.getResults().forEach((e=>e.cancelBindings()));const t=e.reduce(((e,t)=>(e[(0,r.u)(t)]=t,t.registerBindings(),e)),{});this.atomic((()=>{this.results.replace(t)}))}}l.defaultGrouping=o.Hj.TYPE},79723:(e,t,i)=>{"use strict";i.d(t,{W:()=>a});var n=i(56208);const s="search";function a(e){const t=e.tryGetSetting(n.Q$.SpaceSearch,0),i=e.getOverrideParam(s,1);return t&&!(0===i)}},95143:(e,t,i)=>{"use strict";i.d(t,{A_:()=>l,S8:()=>n,x8:()=>r});const n=["",""],s=20;function a(e){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}function o(e,t){const[i,s]=n,o=`${i}|${s}`;let r=!1;if(e.match(new RegExp(o))&&(e=e.replace(new RegExp(`(${o})`,"g"),((e,t)=>t.split("").join("‌"))),r=!0),t){let n;n=r?t.split("").map(a).join("[‌]?"):a(t),e=e.replace(new RegExp(`(${n})`,"gi"),((e,t)=>`${i}${t}${s}`))}return e}const r=o;function l(e,t){const i=function(e,t){var i;const n=e.toLowerCase(),[o,r,l]=[n.indexOf(t),e.length,(null===(i=n.match(new RegExp(`${a(t)}`,"g")))||void 0===i?void 0:i.length)||1];let d=e,c=o;if(r>s&&c>0){if(1===l){const e=Math.floor((s-t.length)/2);e>0&&c>e&&(c-=e)}d=`...${d.substr(c)}`,d.length0&&(d=`...${e.substr(c)}`))}return d}(e,t);return o(i,t)}},95072:(e,t,i)=>{"use strict";i.d(t,{X$:()=>n,aJ:()=>s,bo:()=>a});const n=75,s=50,a=50},93369:(e,t,i)=>{"use strict";i.d(t,{E:()=>a,u:()=>o});var n=i(93877),s=i(95072);function a(e,t,i){var a;switch(i){case n.Hj.TYPE:return(null===(a=null==e?void 0:e.dataTypeGroups[t])||void 0===a?void 0:a.groupOrder)||s.X$;case n.Hj.FLOOR:return s.bo;case n.Hj.LAYER:return s.aJ}return-1}function o(e){return`${e.id}-${e.typeId}`}},84358:(e,t,i)=>{"use strict";var n;i.d(t,{Y:()=>n}),function(e){e.SPHERE="sourcetype.sphere",e.BOX="sourcetype.box",e.CYLINDER="sourcetype.cylinder"}(n||(n={}))},29543:(e,t,i)=>{"use strict";i.d(t,{M:()=>a});var n=i(68909),s=i(47213);class a extends s.y{constructor(){super(),this.box=new n.Box3,this.center=new n.Vector3,this.size=new n.Vector3(1/0,1/0,1/0),this.orientation=new n.Quaternion,this.inverseOrientation=new n.Quaternion,this.pointCache=new n.Vector3,this.transformNeedsUpdate=!1,this.box.setFromCenterAndSize(this.center,this.size)}get origin(){return this.center}updateCenter(e){this.center.copy(e),this.box.setFromCenterAndSize(this.center,this.size),this.transformNeedsUpdate=!0}updateDimensions(e){this.size.copy(e),this.box.setFromCenterAndSize(this.center,this.size)}updateOrientation(e){this.orientation.copy(e),this.transformNeedsUpdate=!0}containsPoint(e){return this.transformNeedsUpdate&&(this.transformNeedsUpdate=!1,this.inverseOrientation.copy(this.orientation).invert()),this.pointCache.copy(e).sub(this.center),this.pointCache.applyQuaternion(this.orientation),this.pointCache.add(this.center),this.box.containsPoint(this.pointCache)}}},39634:(e,t,i)=>{"use strict";i.d(t,{z:()=>a});var n=i(68909),s=i(47213);class a extends s.y{constructor(){super(...arguments),this._basePoint=new n.Vector3,this._height=1/0,this._radius=1/0,this.pointCache=new n.Vector3}get origin(){return this._basePoint}get basePoint(){return this._basePoint}get height(){return this._height}get radius(){return this._radius}updateBasePoint(e){this.basePoint.set(e.x,e.y,e.z)}updateHeight(e){this._height=e}updateRadius(e){this._radius=e}containsPoint(e){return this.pointCache.set(e.x,this._basePoint.y,e.z),this._basePoint.distanceToSquared(this.pointCache)<=this.radius**2&&this._basePoint.y<=e.y&&e.y<=this._basePoint.y+this.height}}},41369:(e,t,i)=>{"use strict";i.d(t,{I:()=>a});var n=i(68909),s=i(47213);class a extends s.y{constructor(){super(...arguments),this.origin=new n.Vector3,this.radius=1/0}updateRadius(e){this.radius=e}updateOrigin(e){this.origin.copy(e)}containsPoint(e){return this.origin.distanceToSquared(e)<=this.radius**2}}},66416:(e,t,i)=>{"use strict";var n;i.d(t,{X:()=>n}),function(e){e.USER="user",e.PANORAMA="panorama",e.UNALIGNED="unaligned",e.AUTO="auto",e.TOUR="tour"}(n||(n={}))},97696:(e,t,i)=>{"use strict";i.d(t,{PN:()=>l,nF:()=>d});var n=i(81587),s=i(66416),a=i(66806),o=i(2993),r=i(19968);s.X.PANORAMA,s.X.TOUR,s.X.USER;const l=(e,t)=>{const i=e.name||(0,n.Rt)(e.created),s=t.name||(0,n.Rt)(t.created);return i.localeCompare(s)},d=(e,t,i)=>{var n;let s=null!==(n=i.currentMode)&&void 0!==n?n:a.N.Panorama;const l=e.pose.position.clone();return(0,o.jY)(s)&&((0,r.aY)(e.pose.pitchFactor())?(s=a.N.Floorplan,l.y=e.pose.fovCorrectedFocalDistance()+t.getFloorMin()):s=a.N.Dollhouse),{position:l,viewmode:s}}},97831:(e,t,i)=>{"use strict";i.d(t,{G:()=>n,t:()=>s});const n="features/exterior_views",s=100},12715:(e,t,i)=>{"use strict";i.d(t,{O:()=>a});var n=i(12625),s=i(88325);class a extends n.B{constructor(e){super(),this.name="splats-data",this.splats=new s.E,e&&this.splats.replace(e)}addSplat(e){this.splats.set(e.id,e)}removeSplat(e){this.splats.delete(e.id)}get hasSplats(){return this.splats.length>0}}},95386:(e,t,i)=>{"use strict";i.d(t,{P:()=>n});class n{static get hasPassword(){const{model:e}=window.MP_PREFETCHED_MODELDATA||{};return e&&e.has_public_access_password}static get modelErrorCode(){var e,t;return null===(t=null===(e=window.MP_PREFETCHED_MODELDATA)||void 0===e?void 0:e.model)||void 0===t?void 0:t.error_code}static getQuery(e){var t,i,n;const s=(null===(t=window.MP_PREFETCHED_MODELDATA)||void 0===t?void 0:t.queries)||{};if("GetModelPrefetch"===e){const t=s[e];if(!t)return;const a=null===(i=t.data)||void 0===i?void 0:i.model;if(!a)return;if(!(null===(n=a.locations)||void 0===n?void 0:n.length))return;return t}return s[e]}static getQueryErrors(e){var t,i,n;return null===(n=null===(i=null===(t=window.MP_PREFETCHED_MODELDATA)||void 0===t?void 0:t.queries)||void 0===i?void 0:i[e])||void 0===n?void 0:n.errors}static get config(){var e;return null===(e=window.MP_PREFETCHED_MODELDATA)||void 0===e?void 0:e.config}static get sdkMetadata(){return window.MP_SDK_METADATA}}},47840:(e,t,i)=>{"use strict";i.d(t,{B:()=>l});var n=i(48086),s=i(99625),a=i(9139),o=i(75027);const r=new a.Vy("PrefetchedQueryCache");class l{constructor(e){const{initialData:t,baseUrl:i,mdsContext:a}=e;this.client=new n.t({baseUrl:i,mdsContext:a}),this.config=e,t?(this.data=t,this.initialLoadPromise=Promise.resolve(this.data),this.fixVariablesForDefaultViewIdIfNeeded()):e.prefetchPolicy===s.G.PRELOAD&&this.preload()}async read(e,t,i={}){const{prefetchKey:n,prefetchPolicy:a=this.config.prefetchPolicy}=i;if(!n||a===s.G.NONE)return;if((null==t?void 0:t.modelId)&&(null==t?void 0:t.modelId)!==this.config.variables.modelId)return;a===s.G.PRELOAD&&void 0===this.data&&await this.preload();const o=this.has(n);return r.debug(`Cache ${o?"hit":"miss"} for ${n}`),o?this.data:void 0}clear(){this.data=void 0,this.preloadPromise=void 0}async preload(){var e;return null!==(e=this.preloadPromise)&&void 0!==e?e:this.preloadPromise=(async()=>{const{query:e,variables:t,anonymous:i}=this.config;try{return this.initialLoadPromise=this.client.query(e,t,{anonymous:i}),this.data=await this.initialLoadPromise,this.fixVariablesForDefaultViewIdIfNeeded(),!0}catch(e){return r.info(e),this.data={},!1}})()}has(e){return void 0!==(0,o.L)(this.data,e)}fixVariablesForDefaultViewIdIfNeeded(){const e=(0,o.L)(this.data,"data.model.id"),t=(0,o.L)(this.config,"variables.modelId");void 0!==this.data&&void 0!==e&&void 0!==t&&e!==t&&(r.debug(`Updating cache modelId from it's initial value ${t} to the value returned by platform ${e}`),this.config.variables.modelId=e)}}},45548:(e,t,i)=>{"use strict";i.d(t,{DI:()=>s,ft:()=>o,xi:()=>a,xt:()=>r});var n=i(7478);class s extends n.QB{constructor(e){super(),this.dataTypes=e}}class a extends n.QB{constructor(e,t=[]){super(),this.error=e,this.dataTypes=t}}class o extends n.QB{constructor(e,t=[]){super(),this.error=e,this.dataTypes=t}}class r extends n.QB{constructor(e,t=[]){super(),this.error=e,this.dataTypes=t}}},3645:(e,t,i)=>{"use strict";i.d(t,{An:()=>a,Z1:()=>o,ZZ:()=>d,jg:()=>n,nt:()=>s,oZ:()=>c,td:()=>l,x$:()=>r});const n="subscriber_prompt",s="subscriber-prompt-active",a="subscriber-prompt-active",o=Object.freeze({popupDelay:14500,popupEnabled:!1,bannerEnabled:!1,domainDenylist:["ea4141d5b45bcfce5ac984955a7df9f74b323182","500ef59c0e9bd523a5e102d4b229b85df4c008c2","55d9b1786668eb25ce174aa06d46535054046935","44a68fb615814e263894da681018ed5687527b75","750514616c13561e878f04cd38cedc4bd3028f60","633e98d1f7cf36879e21d642068af2196d67a229","2566065b5d698efd82a16854185501ee2ea8eae6"]}),r={enabled:"spEnabled",forceBanner:"spBanner",forcePopup:"spPopup",forcePolicy:"spPolicy",forceReferrer:"spReferrer"},l="spaces.visitor.subscriber.prompt",d="mp/subscriber-prompt-dismissed",c="https://matterport.page.link/v2s-download"},60818:(e,t,i)=>{"use strict";i.d(t,{r:()=>n});const n=new(i(9139).Vy)("subscriber-prompt")},34184:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(40899);class s extends n.A{}},47004:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(40899);class s extends n.A{constructor(e,t,i,n){super(e,n),this.alignmentType=t,this.placementType=i}}},40899:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(7478);class s extends n.QB{constructor(e,t){super(),this.fromSweep=t,this.toSweep=e,this.timestamp=Date.now()}}},50018:(e,t,i)=>{"use strict";i.d(t,{Ay:()=>c,EO:()=>s,c$:()=>n});var n,s,a=i(68909),o=i(3928),r=i(76318);!function(e){e.ALIGNED="aligned",e.UNALIGNED="unaligned"}(n||(n={})),function(e){e.UNPLACED="unplaced",e.AUTO="auto",e.MANUAL="manual"}(s||(s={}));const l={[r.MF.BASE]:"512",[r.MF.STANDARD]:"1k",[r.MF.HIGH]:"2k",[r.MF.ULTRAHIGH]:"4k"},d={[r.MF.BASE]:"low",[r.MF.STANDARD]:"high",[r.MF.HIGH]:"2k",[r.MF.ULTRAHIGH]:"4k"};class c extends o.v{static formatId(e,t){return t?`${t}:${e}`:e}static parseId(e){const t=e.split(":");return{platformId:t.length>1?t[1]:t[0],sourceViewId:t.length>1?t[0]:null}}get id(){return this._id}get platformId(){return this._platformId}get sourceViewId(){return this._sourceViewId}set sourceViewId(e){this._sourceViewId=e}constructor(e){super(),this._sourceViewId=null,this.floorId=null,this.roomId=null,this.neighborsEdited=!1,this.skyboxes={},e&&(null!=e.sourceViewId&&(this._sourceViewId=e.sourceViewId),e.platformId&&(this._platformId=e.platformId),this._id=c.formatId(this._platformId,this._sourceViewId),void 0!==e.index&&(this.index=e.index),this.name=e.name||"",this.position=e.position||new a.Vector3,this.floorPosition=e.floorPosition||new a.Vector3,void 0!==e.floorId&&(this.floorId=e.floorId),this.roomId=e.roomId||null,this.rotation=e.rotation||new a.Quaternion,this.enabled=e.enabled||!1,this.vrenabled=e.vrenabled||!1,this.neighbours=e.neighbours||[],this._sourceViewId&&(this.neighbours=this.neighbours.map((e=>c.formatId(e,this._sourceViewId)))),this.alignmentType=e.alignmentType||n.ALIGNED,this.placementType=e.placementType||s.UNPLACED,void 0!==e.uuid&&(this.uuid=e.uuid),e.resolutions&&(this.resolutions=e.resolutions.slice()),e.skyboxes&&(this.skyboxes=Object.assign({},e.skyboxes)))}isAligned(){return this.alignmentType===n.ALIGNED}isUnplaced(){return this.placementType===s.UNPLACED}equals(e,t=!0){return this.id===e.id&&this.index===e.index&&this.name===e.name&&this.position.equals(e.position)&&(!t&&!e.floorId||this.floorId===e.floorId)&&(!t&&!e.roomId||this.roomId===e.roomId)&&this.rotation.equals(e.rotation)&&this.enabled===e.enabled&&this.vrenabled===e.vrenabled&&this.alignmentType===e.alignmentType&&this.placementType===e.placementType}copy(e){return this._id=e._id,this._sourceViewId=e._sourceViewId,this._platformId=e._platformId,this.index=e.index,this.name=e.name,this.position=(new a.Vector3).copy(e.position),this.floorPosition=(new a.Vector3).copy(e.floorPosition),this.floorId=e.floorId,this.roomId=e.roomId,this.rotation=(new a.Quaternion).copy(e.rotation),this.enabled=e.enabled,this.vrenabled=e.vrenabled,this.neighbours=e.neighbours.slice(),this.alignmentType=e.alignmentType,this.placementType=e.placementType,this.resolutions=e.resolutions,this.skyboxes=Object.assign({},e.skyboxes),this}clone(){return new c({platformId:this.platformId}).copy(this)}availableResolution(e){if(!e||!this.resolutions)throw new Error("No available resolution found for sweep");return this.resolutions.includes(e)?e:this.availableResolution(this.getLowerResolution(e))}getLowerResolution(e){switch(e){case r.MF.ULTRAHIGH:return r.MF.HIGH;case r.MF.HIGH:return r.MF.STANDARD;case r.MF.STANDARD:return r.MF.BASE}return null}refresh(e){var t;const i=this.equals(e,!1);this.alignmentType=e.alignmentType,this.enabled=e.enabled,this.name=e.name,this.neighbours=e.neighbours.slice(),this.placementType=e.placementType,this.resolutions=e.resolutions,this.vrenabled=e.vrenabled;for(const i in this.skyboxes){const n=i,s=e.skyboxes[n];s&&(null===(t=this.skyboxes[n])||void 0===t||t.refreshFrom(s))}i||this.commit()}async getTileUrl(e,t,i,n){var s;const a=await this.getSkybox(e);return(null!==(s=null==a?void 0:a.tileUrlTemplate)&&void 0!==s?s:`tiles/${this.id}/${l[e]}_face__.jpg`).replace("",`${t}`).replace("",`${i}`).replace("",`${n}`)}async getFaceUrl(e,t){var i;const n=await this.getSkybox(e)||await this.getSkybox(r.MF.BASE);return(null!==(i=null==n?void 0:n.urlTemplate)&&void 0!==i?i:`pan/${d[e]}/${this.id}_skybox.jpg`).replace("",`${t}`)}async getSkybox(e){const t=this.skyboxes[e];return t?t.get():t}get tags(){const e=[];return this.enabled&&e.push("showcase"),this.vrenabled&&e.push("vr"),e}transform(e){this.position.applyMatrix4(e),this.floorPosition.applyMatrix4(e),this.rotation.premultiply((new a.Quaternion).setFromRotationMatrix(e))}}},63362:(e,t,i)=>{"use strict";i.d(t,{HP:()=>s,WS:()=>o,WW:()=>a,_p:()=>d,tA:()=>l});var n=i(11165);class s extends n.u{constructor(e){super(),this.sweepId=e,this.payload={sweepId:e}}}s.id="SET_CURRENT_SWEEP";class a extends n.u{constructor(e,t,i=500){super(),this.payload={id:e,hovered:t,duration:i}}}a.id="HOVER_SWEEP";class o extends n.u{constructor(e,t=[],i=[]){super(),this.payload={id:e,added:t,removed:i}}}o.id="MODIFY_SWEEP_NEIGHBORS";class r extends n.u{constructor(e,t){super(),this.payload={id:e,name:t}}}r.id="RENAME_SWEEP";class l extends n.u{}l.id="ENABLE_SWEEP_SELECTION";class d extends n.u{}d.id="DISABLE_SWEEP_SELECTION"},12837:(e,t,i)=>{"use strict";i.d(t,{A:()=>E});var n=i(12625),s=i(43879),a=i(88325),o=i(24479),r=i(5894),l=i(9139),d=i(3928),c=i(92237);class u extends d.v{constructor(){super(...arguments),this.progress=new c.z(0),this.active=!1,this.from=void 0,this.to=void 0}clone(){const e=new u;return e.progress.copy(this.progress),e.active=this.active,e.from=this.from,e.to=this.to,e}}let h=0;class m extends d.v{constructor(){super(),this.id=""+h++,this.currentSweep=void 0,this.transition=new u}activateTransition(e,t){this.transition.active=!0,this.transition.from=t,this.transition.to=e}deactivateTransition(){this.transition.active=!1,this.transition.from=void 0,this.transition.to=void 0}canTransition(){return!this.transition.active}commit(){this.transition.commit(),super.commit()}equals(e){return this.id===e.id}}var p=i(50018);class E extends n.B{constructor(e){super(),this.name="sweeps",this.state=(0,s.R)(new m),this._unfilteredSweepMap=new a.E,this.sweepMap=new o.q(this._unfilteredSweepMap),this.bindings=[],e&&this.addSweeps(e),this.isSweepDisabled=this.isSweepDisabled.bind(this)}initSwitchableFromViewport(e){const{bindings:t,dataMap:i}=e.manageDataForViewports((()=>new m),this.state.currentObservable,this.state);this.viewportState=i,this.bindings.push(...t)}addFilter(e,t){return this.sweepMap.setFilter(e,t)}clearFilters(){this.sweepMap.clearFilters()}removeSweeps(e){const t=Object.values(e).map((e=>e.id));return this._unfilteredSweepMap.atomic((()=>{const i=this._unfilteredSweepMap.values;for(const n of i)if(e[n.id])this._unfilteredSweepMap.delete(n.id);else{let e=!1;t.forEach((t=>{(0,r.Nz)(n.neighbours,t)&&(e=!0)})),e&&n.commit()}})),this}addSweeps(e){const t=Object.values(e).sort(((e,t)=>e.index-t.index));return this._unfilteredSweepMap.atomic((()=>{for(const e of t)this._unfilteredSweepMap.has(e.id)?this._unfilteredSweepMap.get(e.id).refresh(e):this._unfilteredSweepMap.set(e.id,e)})),this}refresh(e){this._unfilteredSweepMap.forEach(((t,i)=>{e[i]&&t.refresh(e[i])}))}get currentSweepIndex(){if(this.state.currentSweep)return this.getSweep(this.state.currentSweep).index}get currentSweepObject(){if(this.state.currentSweep)return this.getSweep(this.state.currentSweep)}get currentAlignedSweepObject(){if(this.state.currentSweep&&!this.isSweepUnaligned(this.state.currentSweep))return this.getSweep(this.state.currentSweep)}makeSweepChangeSubscription(e){return this.state.onPropertyChanged("currentSweep",e)}getSweep(e){let t=this._unfilteredSweepMap.get(null!=e?e:"");if(!t)for(const i of this._unfilteredSweepMap.values)i.platformId!==e||(t=i);return t}getSweepByIndex(e){return this._unfilteredSweepMap.values.find((t=>t.index===e))}getSweepByUuid(e){return this._unfilteredSweepMap.values.find((t=>t.uuid===e))}containsSweep(e,t={unfiltered:!1}){if(!e)return!1;return(t.unfiltered?this._unfilteredSweepMap:this.sweepMap).has(e)}getFirstSweep(e=!1,t=()=>!0){return this.getSweepList().sort(((e,t)=>e.index-t.index)).find((i=>i.enabled&&(!e||i.alignmentType===p.c$.ALIGNED)&&t(i)))}getFirstAlignedSweep(){return this.getFirstSweep(!0)||null}getStartSweep(e){const t=e&&e.pano&&e.pano.uuid?this.getSweep(e.pano.uuid):null;return t&&t.enabled?t:this.getFirstSweep()}getClosestSweep(e,t,i=()=>!0){let n=Number.MAX_VALUE,s=null;return this.iterate((a=>{if(a.enabled&&(!t||a.alignmentType===p.c$.ALIGNED)&&i(a)){const t=e.distanceToSquared(a.position);te.every((e=>e(t))))).map((e=>({sweep:e,score:t.reduce(((t,i)=>t+i(e)),0)}))).sort(((e,t)=>t.score-e.score))}getSweepList(){return this.sweepMap.values}getAlignedSweeps(){return this.getSweepList().filter((e=>e.alignmentType===p.c$.ALIGNED))}getUnAlignedSweeps(){return this.getSweepList().filter((e=>e.alignmentType!==p.c$.ALIGNED))}onSweepsChanged(e){return this.sweepMap.onChanged(e)}getSweepNeighbours(e){const t=[];for(const i of e.neighbours)t.push(this.getSweep(i));return t}getAlternateSweeps(e,t={unfiltered:!1}){const i=[];if(!e)return i;const n=t.unfiltered?this._unfilteredSweepMap:this.sweepMap;for(const t of n.values)t.platformId===e.platformId&&t.id!==e.id&&i.push(t);return i}getCollection(){return this.sweepMap}getCollectionUnfiltered(){return this._unfilteredSweepMap}getIndexByAlignment(e,t){return(e?this.getAlignedSweeps():this.getUnAlignedSweeps()).findIndex((e=>e.id===t))}getStateForViewport(e){const t=this.viewportState.get(e);if(!t)throw l.Vy.for(this).error(`No SweepDataState for viewportId ${e}`,this.viewportState),new Error("No SweepDataState for viewportId");return t}isInTransitionState(){return this.state.transition.active?this.state.transition.to!==this.state.transition.from:this.isSweepUnaligned(this.state.currentSweep)}}},18160:(e,t,i)=>{"use strict";i.d(t,{G:()=>a});var n=i(98236),s=i(12837);const a=(0,n.v_)(s.A)},8333:(e,t,i)=>{"use strict";i.d(t,{Oe:()=>s,RB:()=>o,W0:()=>a});var n=i(82748);const s="settings/tiling/preload_quality",a=Object.freeze({overlayStyle:(0,n.P3)("tileoverlay",0),uploadIntervalDelay:50,highResUploadsPerFrame:2,maxHighResUploadsPerFrame:100,loadIndicatorDelay:300,uploadsPerFrame:6,maxUploadsPerFrame:100,windowHeightHighQualityThreshold:800,windowHeightHighQualityThresholdOverride:(0,n.P3)("threshold2k",void 0),concurrentDownloads:3,maxConcurrentDownloads:12,navigation:{directionFactor:10,distanceFactor:-1}});class o{constructor(){this.reset()}reset(){this.downloadFullPano=!1,this.concurrentDownloads=a.concurrentDownloads,this.uploadsPerFrame=a.uploadsPerFrame,this.highResUploadsPerFrame=a.highResUploadsPerFrame}}},23500:(e,t,i)=>{"use strict";i.d(t,{s:()=>n});const n="features/360_views"},3956:(e,t,i)=>{"use strict";i.d(t,{Jz:()=>N,UJ:()=>f});var n=i(68909),s=i(3928),a=i(14868),o=i(92237),r=i(23184),l=i(52885),d=i(84250),c=i(37458),u=i(81662),h=i(18855),m=i(60662),p=i(81544),E=i(31002),S=i(71067),O=i(57811),g=i(58097);const _=[],T=new n.Sphere;class A extends d.O{constructor(){super(...arguments),this.bindings=[]}}class v extends s.v{constructor(){super(...arguments),this.selected=!1,this.visible=!1,this.selectable=!1,this.hovered=new o.z(0)}}class f extends n.Mesh{raycast(e,t){if(super.raycast(e,_),_.length){const{geometry:i}=this;i.boundingSphere||i.computeBoundingSphere(),T.copy(i.boundingSphere).applyMatrix4(this.matrixWorld);for(const i of _)e.ray.intersectSphere(T,i.point),i.distance=e.ray.origin.distanceTo(i.point),t.push(i);_.length=0}}}class N{needsUpdate(){this.dirty=!0}constructor(e,t,i,s,o,r,l,d,c,u,h=a.H.ALL){if(this.getSelectedSweep=e,this.getCurrentFloor=t,this.isInside=i,this.setHovered=s,this.scene=o,this.input=r,this.settingsData=l,this.sweepData=d,this.puckImagery=c,this.checkRenderModes=u,this.layer=h,this.name="sweep-puck-renderer",this.sweepToMesh={},this.dummyMat=new n.MeshBasicMaterial,this.options={selectionEnabled:!1,renderCurrentPuck:!1,editingEnabled:!1,displayNeighborsOnly:!1},this.puckOffset=new n.Vector3(0,.05,0),this.bindings=[],this.dirty=!1,this.wasDrawing=!1,this.idleColor=g.no,this.selectionColor=g.zV,this.idleOpacity=g.j$,this.editingOpacity=g.XT,this.selectionDuration=g.u4,this.puckSize=.4,this.onFloor=!0,this.updateVisibleNeighbors=(()=>()=>{const e=this.displayDisabled,{displayNeighborsOnly:t}=this.options,i=this.sweepData.state;for(const i in this.sweepToMesh)t?this.disableSweep(i):e&&this.enableSweep(i);if(t){const e=this.sweepData.getSweep(i.currentSweep);e&&(e.neighbours.forEach((e=>{this.enableSweep(e)})),this.enableSweep(e.id))}this.needsUpdate()})(),this.renderPuckHighlight=(e,t)=>{const i=this.sweepToMesh[e];i&&i.sweep.isAligned()&&(null==i||i.configure({tint:t?this.selectionColor:this.idleColor}))},this.isVisiblePuckCollider=e=>e instanceof f&&e.visible,this.onSweepAdded=(e,t)=>{this.needsUpdate(),this.sweepToMesh[t]||this.createPuck(e)},this.onSweepRemoved=(e,t)=>{this.disableSweep(t);const i=this.sweepToMesh[t];i&&(i.state.visible=!1,i.bindings.forEach((e=>e.cancel())),i.bindings.length=0,i.removeFromParent()),delete this.sweepToMesh[t]},this.puckGeometry=new n.PlaneGeometry(this.puckSize,this.puckSize),this.onFloor){const e=new n.Matrix4;e.makeRotationFromEuler(new n.Euler(-Math.PI/2,0,0,"XYZ")),this.puckGeometry.applyMatrix4(e)}this.sphereColliderGeometry=new n.SphereGeometry(.5*this.puckSize,10,10)}init(){}activate(e){this.wasDrawing=!1;const t=r.f.is(this.isVisiblePuckCollider);this.bindings.push(this.input.registerMeshHandler(p.L,t,((t,i)=>{this.setHovered({id:i.userData.sid,active:!0,duration:this.selectionDuration}),e.broadcast(new h.n(i.userData.sid,!0))}))),this.bindings.push(this.input.registerMeshHandler(p.q,t,((t,i)=>{this.setHovered({id:i.userData.sid,active:!1,duration:this.selectionDuration}),e.broadcast(new h.n(i.userData.sid,!1))}))),this.bindings.push(this.input.registerMeshHandler(E.rX,t,((t,i)=>{const n=i.userData.puck.sweep.index,s=this.sweepData.getAlignedSweeps().length;e.broadcast(new m.e(i.userData.sid,n,s))})));const i=this.sweepData.getCollection();this.bindings.push(i.onElementsChanged((({removed:e,added:t})=>{e&&e.forEach((([e,t])=>this.onSweepRemoved(t,e))),t&&t.forEach((([e,t])=>this.onSweepAdded(t,e)))}))),i.entries().forEach((([e,t])=>this.onSweepAdded(t,e))),this.updateVisibleNeighbors()}render(e){this.updateForNeighbors(this.sweepData.state.currentSweep);const t=this.checkRenderModes(),i=this.settingsData.tryGetSetting(O.f,!0);if(t&&i){if(!this.wasDrawing){for(const e in this.sweepToMesh)this.enableSweep(e);this.needsUpdate(),this.wasDrawing=!0}}else if(this.wasDrawing){for(const e in this.sweepToMesh)this.disableSweep(e);this.needsUpdate(),this.wasDrawing=!1}for(const t in this.sweepToMesh)this.sweepToMesh[t].state.hovered.tick(e);this.dirty&&(this.updateMeshes(),this.dirty=!1)}deactivate(e){for(const e in this.sweepToMesh)this.disableSweep(e,!0);for(const e of this.bindings)e.cancel();this.bindings.length=0}dispose(){for(const e in this.sweepToMesh)this.sweepToMesh[e].dispose(),this.onSweepRemoved(this.sweepToMesh[e].sweep,e)}updateMeshes(){for(const e in this.sweepToMesh){const t=this.sweepToMesh[e];this.updateMesh(t.sweep,t)}}getPuck(e){if(e)return this.sweepToMesh[e]}toggleEditingEnabled(e){this.options.editingEnabled=e;for(const t in this.sweepToMesh){this.sweepToMesh[t].configure({opacity:e?this.editingOpacity:this.idleOpacity})}}updatePuckImagery(e){this.puckImagery=e,this.updateVisibleNeighbors()}updateCheckRenderModes(e){this.checkRenderModes=e}updateForNeighbors(e){if(this.isInside()){const t=this.sweepData.getSweep(e);for(const e in this.sweepToMesh){const i=this.sweepToMesh[e].sweep;(null==i?void 0:i.sourceViewId)===(null==t?void 0:t.sourceViewId)&&this.disableSweep(e)}t&&(t.neighbours.forEach((e=>{this.enableSweep(e)})),this.enableSweep(t.id)),this.needsUpdate()}}get displayDisabled(){return void 0!==this.puckImagery.disabled}disableSweep(e,t=!1){const i=this.sweepToMesh[e];i&&(i.state.visible=i.state.selectable=!1,t&&i.state.commit())}enableSweep(e,t=!1){var i;if(!(null===(i=this.sweepData.getSweep(e))||void 0===i?void 0:i.enabled)&&!this.displayDisabled)return;const n=this.sweepToMesh[e];if(n){const{currentSweep:i}=this.sweepData.state,s=e!==i||i===e&&this.options.renderCurrentPuck;n.state.visible=n.state.selectable=s,t&&n.state.commit()}}createPuck(e){var t,i,n;if(!e.isAligned())return;const{dummyMat:s,layer:a,onFloor:o,puckGeometry:r,puckSize:l,scene:d,sphereColliderGeometry:h}=this,m=new A({radius:l/2,normal:u.B1.UP});let p;m.state=new v,m.sweep=e,o?m.position.copy(e.floorPosition).add(this.puckOffset):(m.position.copy(e.position),m.rotation.setFromQuaternion(e.rotation)),m.name=e.id,m.layers.mask=a.mask,m.renderOrder=c.X.panoMarker,m.updateMatrixWorld(!1),m.material.depthWrite=!1,p=new f(o?r:h,s),p.userData.sid=e.id,p.userData.puck=m,p.position.copy(m.position),p.rotation.copy(m.rotation),p.name=e.id,p.updateMatrixWorld(!1),m.collider=p;const E=()=>this.updateMesh(e,m);m.bindings.push(m.state.onChanged(E),m.state.hovered.onChanged(E),e.onPropertyChanged("enabled",E)),E();d.getSubTree([null!==(t=m.sweep.sourceViewId)&&void 0!==t?t:S.j,"sweep-pucks",null!==(i=m.sweep.floorId)&&void 0!==i?i:"floors",null!==(n=m.sweep.roomId)&&void 0!==n?n:"rooms"]).add(m),this.input.registerMesh(m.collider,!0,this.isVisiblePuckCollider),this.sweepToMesh[e.id]=m}updateMesh(e,t){var i;const{options:s,puckImagery:a,sweepData:o}=this,{displayNeighborsOnly:r,editingEnabled:d,renderCurrentPuck:c}=s,{currentSweep:u}=o.state,h=(!o.currentSweepObject||!!(null===(i=o.currentSweepObject)||void 0===i?void 0:i.isAligned()))&&u!==e.id||c&&u===e.id,m=r||null===this.getCurrentFloor()||this.getCurrentFloor()===e.floorId,p=!o.containsSweep(e.id)||!h,E=e.enabled||this.displayDisabled,S=this.settingsData.tryGetSetting(O.f,!0)&&m&&E;if(t.collider.visible=!p&&S&&(t.state.selectable||d),t.visible=!p&&S&&(t.state.visible||d),t.visible){const i=t.state.hovered.value,s=d&&i>0,o=e.enabled?s?a.enabledHover:a.enabled:s?a.disabledHover:a.disabled;t.configure({texture:o instanceof n.Texture?o:null,rings:o instanceof n.Texture?void 0:o,tint:e.id===this.getSelectedSweep()||t.state.selected?this.selectionColor:this.idleColor,opacity:(0,l.C)(d?this.editingOpacity:this.idleOpacity,1,i)})}}}},58097:(e,t,i)=>{"use strict";i.d(t,{XT:()=>a,j$:()=>s,no:()=>r,u4:()=>o,zV:()=>l});var n=i(38069);const s=.3,a=.9,o=300,r=n.V.WHITE.clone(),l=n.V.MP_BRAND.clone()},57811:(e,t,i)=>{"use strict";i.d(t,{f:()=>n});const n="features/sweep_pucks"},55494:(e,t,i)=>{"use strict";i.d(t,{r:()=>m});var n=i(68909),s=i(12625),a=i(88325),o=i(97994),r=i(24479),l=i(81662),d=i(35826),c=i(77154),u=i(86866),h=i(12767);class m extends s.B{constructor(e,t,i,n,s,l,c,u,h){super(),this.data=e,this.floorsData=t,this.cameraStartData=i,this.textParser=s,this.linkHandler=l,this.tagDefaultTitle=c,this.backgroundTexture=u,this.objectTagsEnabled=h,this.name="tags-view-data",this.tagViewsMap=(0,a.y)(),this.customSortIndexMap=new Map,this.spatialSortOrderMap=new Map,this.openTagViewObservable=(0,o.p)(null),this.tagsMode=d.j.DEFAULT,this.tagOrder=d.k.ORDERED,this.openTagIsDirty=!1,this.creatingTag=!1,this.idVisibilityEnabled=!1,this.idVisibility=new Set,this.capabilities=new Map,this.orderedMapsNeedUpdate=!1,this.refreshTagViews=e=>{const t={};this.data.iterate((e=>{t[e.sid]=this.createTagView(e)})),this.updateSortMaps(Object.values(t),e),this.tagViewsMap.atomic((()=>{this.tagViewsMap.replace(t)}))},this.sortByOrder=(e,t)=>{var i,n;const s=(null!==(i=this.customSortIndexMap.get(e.id))&&void 0!==i?i:Number.MAX_SAFE_INTEGER)-(null!==(n=this.customSortIndexMap.get(t.id))&&void 0!==n?n:Number.MAX_SAFE_INTEGER);if(s)return s;const a=this.spatialSortOrderMap.get(e.id),o=this.spatialSortOrderMap.get(t.id);if(void 0===a||void 0===o)throw new Error("All ids should exist in spatialPositions");return a-o},this.sortByText=(e,t)=>{function i(e,t){return(e.label.trim()||e.description||t).toLowerCase()}return i(e,this.tagDefaultTitle)!e.objectAnnotationId)),this.refreshTagViews(n),this.orderedTagViews.sort(this.sortByOrder)}getAlphabeticTagViewMapFilter(){return this.alphabeticalTagViews||(this.alphabeticalTagViews=new r.q(this.tagViewsMap),this.alphabeticalTagViews.priority=r.g.LOW,this.alphabeticalTagViews.setFilter("objectTag",(e=>!e.objectAnnotationId)),this.alphabeticalTagViews.sort(this.sortByText)),this.alphabeticalTagViews}notifyOrderedMapsMightHaveChanged(){this.orderedMapsNeedUpdate=!0}maybeUpdateOrderedMaps(){this.orderedMapsNeedUpdate&&(this.orderedMapsNeedUpdate=!1,this.refreshTagViews())}getCollection(){return this.maybeUpdateOrderedMaps(),this.tagViewsMap}getOrderedTagViewMapFilter(){return this.maybeUpdateOrderedMaps(),this.orderedTagViews}getOrderedTags(e){return this.maybeUpdateOrderedMaps(),this.getEnabledTagViewsList(this.orderedTagViews,e)}addOrderedTagFilter(e,t){return this.orderedTagViews.setFilter(e,t),()=>this.orderedTagViews.clearFilter(e)}getTagsByText(e){const t=this.getAlphabeticTagViewMapFilter();return this.getEnabledTagViewsList(t,e)}getEnabledTagViewsList(e,t){const i=e.values;return t?i.filter((e=>e.enabled)):i}getTextParser(){return this.textParser}getLinkHandler(){return this.linkHandler}getCapabilities(e){const t={focus:!0};this.capabilities.has(e)||this.capabilities.set(e,t);const i=this.capabilities.get(e)||t;return Object.assign({},i)}updateCapabilities(e,t){this.capabilities.set(e,Object.assign({},t))}setEmbedErrorTagId(e){this.embedErrorTagId=e,this.commit()}setTagsMode(e){this.tagsMode=e,this.commit()}getTagCount(e){return this.getOrderedTags(e).length}hasCustomSortOrder(){return this.customSortIndexMap.size>0}getTagView(e){return this.maybeUpdateOrderedMaps(),this.tagViewsMap.get(e)}createTagView(e){const t=e.getPin();return Object.assign(Object.assign({},t),{id:e.sid,created:e.created,modified:e.modified,label:e.label,description:e.description,enabled:e.enabled,layerId:e.layerId,attachments:[...e.externalAttachments,...e.fileAttachments,...e.sandboxAttachments],objectAnnotationId:e.objectAnnotationId,keywords:e.keywords.values(),icon:e.icon,backgroundTexture:this.backgroundTexture})}setOpenTagView(e){this.openTagViewObservable.value=e}get openTagView(){return this.openTagViewObservable.value}onOpenTagViewChanged(e){return this.openTagViewObservable.onChanged(e)}getAvailableKeywords(){return Array.from(new Set(this.data.getTagKeywords()))}updateSortMaps(e,t){t&&this.updateCustomSortMap(t),this.updateSpatialSortMap(e),this.orderedTagViews.setDirty(!0)}updateCustomSortMap(e){this.customSortIndexMap.clear(),e.forEach(((e,t)=>this.customSortIndexMap.set(e,t)))}updateSpatialSortMap(e){var t;const{floorsData:i,cameraStartData:s}=this,a=s.pose.camera.position||l.B1.ZERO,o=s.pose.camera.rotation||new n.Quaternion,r=null!==(t=i.getClosestFloorAtHeight(a.y))&&void 0!==t?t:i.getFloorAtIndex(0),d=(0,u.oA)(a,o,(0,h.hn)(1));this.spatialSortOrderMap.clear();let m=0;const p=i.getOrderedValues().map((e=>e.id)),E=p.findIndex((e=>e===r.id)),S=p.slice(E);S.push(...p.slice(0,E)),S.push(void 0);for(const t of S){const i=e.filter((e=>e.floorId===t));if(0===i.length)continue;let s,o=1/0;const r=new n.Vector3,l=(new c.A).x((e=>e.x)).y((e=>e.y)).z((e=>e.z));l.addAll(i.map((e=>{r.copy(e.stemNormal).setLength(e.stemLength).add(e.anchorPosition);const t={id:e.id,x:r.x,y:r.y,z:r.z},i=r.distanceToSquared(a);return i0;)u=l.find(u.x,u.y,u.z),this.spatialSortOrderMap.set(u.id,m++),l.remove(u),h--}}}},35826:(e,t,i)=>{"use strict";var n,s;i.d(t,{j:()=>n,k:()=>s}),function(e){e.DEFAULT="default",e.REORDERING="reordering"}(n||(n={})),function(e){e.ORDERED="by-tag-order",e.ALPHABETICAL="by-tag-text",e.FLOOR_ORDERED="by-floor-ordered",e.FLOOR_ALPHABETICAL="by-floor-alphabetical"}(s||(s={}))},13767:(e,t,i)=>{"use strict";i.d(t,{$Q:()=>l,AM:()=>o,GK:()=>a,Jr:()=>r,jh:()=>n,rp:()=>s});const n="tags2",s="TAG_NAV_OVERLAY",a="TAG_BILLBOARD_SHARE",o="TAG_BILLBOARD_DOCK",r="features/tagIcons",l="tagTitleOnTop";Object.freeze({colors:["#d44441","#f44336","#e91e63","#f78da7","#9c4b92","#673ab7","#03687d","#03a9f4","#00bcd4","#417505","#51a868","#37d67a","#cddc39","#fbcd00","#ffac17","#ff6900","#abb8c3","#607d8b"]})},23864:(e,t,i)=>{"use strict";i.d(t,{N:()=>s});var n=i(3928);class s extends n.v{constructor(e){super(),this.order=1e4,this.showModeControls=!0,this.showTourControls=!0,e&&Object.assign(this,e)}}},96319:(e,t,i)=>{"use strict";i.d(t,{M:()=>r});var n=i(12625),s=i(88325),a=i(24479),o=i(73566);class r extends n.B{constructor(){super(),this.name="tools-data",this.tools=(0,s.y)(),this.toolUi={},this.assetDocked=!1,this.activeToolName=null,this.previousToolName=null,this.openModal=null,this.toolPanelLayout=r.defaultToolPanelLayout,this.softOpening=!1,this.toolCollapsed=!1,this.toolChangeInProgress=!1,this.toolPalettes=new a.q(this.tools),this.toolPalettes.setFilter("enabled",(e=>e.enabled)),this.toolPalettes.setFilter("palette",(e=>!!e.palette)),this.toolPalettes.sort(((e,t)=>e.order-t.order)),this.toolPalettes.priority=a.g.LOW}iterate(e){for(const t of this.tools)e(t)}get toolsMap(){return this.tools}getToolPalettes(){return this.toolPalettes.groupBy("palette")}hasTool(e){return this.toolsMap.has(e)}getTool(e){return this.tools.get(e)}addTool(...e){e.forEach((e=>{this.removeTool(e.id),this.tools.set(e.id,e),e.ui.renderActive&&this.addToolUi(e.id,e.ui.renderActive)}))}removeTool(...e){e.forEach((e=>{var t,i;const n=this.getTool(e);(null===(t=null==n?void 0:n.ui)||void 0===t?void 0:t.renderActive)&&this.removeToolUi(n.id,n.ui.renderActive),(null===(i=null==n?void 0:n.manager)||void 0===i?void 0:i.dispose)&&n.manager.dispose(),this.tools.delete(e)}))}addToolUi(e,t){this.toolUi[e]||(this.toolUi[e]=new Set),this.toolUi[e].add(t)}removeToolUi(e,t){this.toolUi[e]&&this.toolUi[e].delete(t)}getToolUi(e){return this.toolUi[e]?[...this.toolUi[e]]:[]}removeAllTools(){this.iterate((e=>{var t;e.ui.renderActive&&this.removeToolUi(e.id,e.ui.renderActive),(null===(t=e.manager)||void 0===t?void 0:t.dispose)&&e.manager.dispose()})),this.tools.clear()}getActiveTool(){return this.activeToolName?this.getTool(this.activeToolName):null}setActiveTool(e){this.previousToolName=e?this.activeToolName:null,this.activeToolName=e,this.commit()}isPanelOpen(){return this.toolPanelLayout===o.L$.SIDE_PANEL||this.toolPanelLayout===o.L$.BOTTOM_PANEL}isToolCollapsedToBottom(){return this.toolPanelLayout===o.L$.BOTTOM_PANEL&&this.toolCollapsed}}r.defaultToolPanelLayout=o.L$.NORMAL},17084:(e,t,i)=>{"use strict";i.d(t,{Kw:()=>l,M_:()=>c,Te:()=>h,Wm:()=>u,_S:()=>r,kC:()=>d,li:()=>s,oe:()=>a,u3:()=>m,yU:()=>o});var n=i(11165);class s extends n.u{constructor(e){super(),this.payload={collapse:e}}}s.id="TOOL_PANEL_TOGGLE_COLLAPSE";class a extends n.u{constructor(e){super(),this.payload={collapse:e}}}a.id="TOOL_BOTTOM_PANEL_COLLAPSE";class o extends n.u{constructor(e,t){super(),this.payload={toolName:e,active:t}}}o.id="TOGGLE_TOOL";class r extends n.u{constructor(e){super(),this.payload={checkForEdits:e}}}r.id="CLOSE_REMOVE_TOOLS";class l extends n.u{constructor(e){super(),this.payload={tools:e}}}l.id="REGISTER_TOOLS";class d extends n.u{}d.id="OPEN_PREVIOUS_TOOL";class c extends n.u{}c.id="OPEN_INITIAL_TOOL";class u extends n.u{constructor(e,t=!1){super(),this.payload={toolName:e,softOpening:t}}}u.id="OPEN_TOOL";class h extends n.u{}h.id="CLOSE_CURRENT_TOOL";class m extends n.u{constructor(e){super(),this.payload={toolName:e}}}m.id="CLOSE_TOOL"},73566:(e,t,i)=>{"use strict";var n,s,a,o,r;i.d(t,{L$:()=>a,Q7:()=>o,S0:()=>n,o6:()=>s,zR:()=>r}),function(e){e.START_LOCATION="START_LOCATION",e.SCANS_3D="SCANS_3D",e.VIEW_360="VIEW_360",e.PHOTOS="PHOTOS",e.LABELS="LABELS",e.LAYERS="LAYERS",e.MEASUREMENTS="MEASUREMENTS",e.HLR="HLR",e.SETTINGS_PANEL="SETTINGS_PANEL",e.NOTES="NOTES",e.TAGS="TAGS",e.BLUR="BLUR",e.SEARCH="SEARCH",e.MESH_TRIM="MESH_TRIM",e.SUMMARY="SUMMARY",e.PLUGIN_CONFIG="PLUGIN_CONFIG",e.ROOM_BOUNDS="ROOM_BOUNDS",e.ROOM_VIEW="ROOM_VIEW",e.AD_DEFURNISH="AD_DEFURNISH",e.GIZMO_TRANSFORM="GIZMO_TRANSFORM",e.GIZMO_FLOOR_MAGNET="GIZMO_FLOOR_MAGNET",e.GIZMO_WALL_MAGNET="GIZMO_WALL_MAGNET",e.COMPARE="COMPARE"}(n||(n={})),function(e){e[e.VIEW_BASED=1]="VIEW_BASED",e[e.MODEL_BASED=2]="MODEL_BASED",e[e.MISC=3]="MISC"}(s||(s={})),function(e){e.NORMAL="normal",e.NARROW="narrow",e.SIDE_PANEL="side-panel",e.BOTTOM_PANEL="bottom-panel"}(a||(a={})),function(e){e.HLR_AUTOGEN_TOUR_CREATED="tool_announcement/hlr_autogen_tour_created",e.HLR_AUTOGEN_TOUR_READY="tool_announcement/hlr_autogen_tour_ready"}(o||(o={})),function(e){e.IDLE="idle",e.OPEN="open",e.CLOSE="close"}(r||(r={}))},59760:(e,t,i)=>{"use strict";i.d(t,{O:()=>a});var n=i(76853),s=i(48411);function a(){const e=(0,n.v)(),t=(0,s.T)();return t?e.getTool(t):null}},28479:(e,t,i)=>{"use strict";i.d(t,{L:()=>s});var n=i(59760);function s(){const e=(0,n.O)();return null==e?void 0:e.analytic}},48411:(e,t,i)=>{"use strict";i.d(t,{T:()=>o});var n=i(87805),s=i(38064),a=i(96319);const o=(0,n.u)(a.M,"activeToolName",null);(0,s.c)("activeTool",o)},95541:(e,t,i)=>{"use strict";i.d(t,{H:()=>a});var n=i(73566),s=i(78956);function a(){const e=(0,s.O)();return e===n.L$.NARROW||e===n.L$.BOTTOM_PANEL}},68419:(e,t,i)=>{"use strict";i.d(t,{t:()=>o});var n=i(87805),s=i(38064),a=i(96319);const o=(0,n.u)(a.M,"openModal",null);(0,s.c)("openModal",o)},91406:(e,t,i)=>{"use strict";i.d(t,{M:()=>a});var n=i(96540),s=i(76853);function a(e){const t=(0,s.v)(),[i,a]=(0,n.useState)(t.getTool(e)||null);return(0,n.useEffect)((()=>{const i=t.onChanged((()=>a(t.getTool(e)||null)));return()=>i.cancel()}),[e,t]),i}},64057:(e,t,i)=>{"use strict";i.d(t,{J:()=>a});var n=i(87805),s=i(96319);const a=(0,n.u)(s.M,"toolCollapsed",!1)},78956:(e,t,i)=>{"use strict";i.d(t,{O:()=>o});var n=i(87805),s=i(38064),a=i(96319);const o=(0,n.u)(a.M,"toolPanelLayout",a.M.defaultToolPanelLayout);(0,s.c)("toolPanelLayout",o)},76853:(e,t,i)=>{"use strict";i.d(t,{v:()=>o});var n=i(38064),s=i(96540),a=i(77570);const o=()=>(0,s.useContext)(a.B).toolsData;(0,n.c)("toolsData",o)},66846:(e,t,i)=>{"use strict";i.d(t,{I:()=>o,X:()=>a});var n=i(73566),s=i(66355);function a(e,t){const i=e.tryGetSetting(s.BW,"");if(i)return i;if(t)return null;const a=e.getOverrideParam("tag","")?n.S0.TAGS:e.getOverrideParam("note","")?n.S0.NOTES:null;if(a)return a;const o=e.getOverrideParam("tool","").toUpperCase();return o||null}function o(e,t){return t.deepLinkParam?e.getOverrideParam(t.deepLinkParam,""):""}},20246:(e,t,i)=>{"use strict";i.d(t,{I7:()=>s,Vk:()=>l,_5:()=>r,f1:()=>a,k_:()=>d,rP:()=>o});var n=i(7478);class s extends n.QB{}class a extends n.QB{}class o extends n.QB{constructor(e){super(),this.collapsed=e}}class r extends n.QB{constructor(e,t){super(),this.active=e,this.collapsed=t}}class l extends n.QB{constructor(e){super(),this.show=e}}class d extends n.QB{constructor(e){super(),this.visible=e}}},66355:(e,t,i)=>{"use strict";i.d(t,{BW:()=>a,Cp:()=>s,P6:()=>n});const n=50,s=500,a="cloud_initial_tool"},68930:(e,t,i)=>{"use strict";i.d(t,{K:()=>s,r:()=>a});var n=i(52018);class s extends n.t{constructor(e="Invalid tour transition"){super(e),this.name="TourTransition"}}class a extends n.t{constructor(e="Cannot start tour"){super(e),this.name="TourStart"}}},1333:(e,t,i)=>{"use strict";i.d(t,{ND:()=>a,Tz:()=>n,_y:()=>s,gX:()=>o,h9:()=>r});class n{}var s,a,o;!function(e){e[e.Pan=0]="Pan",e[e.PanDollhouse=1]="PanDollhouse",e[e.Zoom=2]="Zoom",e[e.Delay=3]="Delay",e[e.None=4]="None"}(s||(s={})),function(e){e[e.Left=1]="Left",e[e.Auto=0]="Auto",e[e.Right=-1]="Right"}(a||(a={})),function(e){e[e.Move=0]="Move",e[e.Burns=1]="Burns",e[e.Zoom=2]="Zoom",e[e.Path=3]="Path",e[e.FloorChange=4]="FloorChange",e[e.Delay=5]="Delay",e[e.Nop=6]="Nop"}(o||(o={}));const r=[o.Burns,o.Zoom,o.Delay]},22937:(e,t,i)=>{"use strict";i.d(t,{BW:()=>r,YH:()=>d,ap:()=>c,n1:()=>a,pT:()=>l,zM:()=>s,zb:()=>o});var n=i(7478);class s extends n.QB{}class a extends n.QB{constructor(e){super(),this.index=e}}class o extends n.QB{constructor(e){super(),this.index=e}}class r extends n.QB{constructor(e,t,i){super(),this.index=e,this.transitionType=t,this.duration=i}}class l extends n.QB{constructor(e){super(),this.willResume=e}}class d extends n.QB{}class c extends n.QB{constructor({reelEntry:e,index:t,tourLength:i}){super(),this.reelEntry=e,this.index=t,this.tourLength=i}}},60152:(e,t,i)=>{"use strict";i.d(t,{BF:()=>c,BS:()=>f,BU:()=>D,DE:()=>k,Dj:()=>p,Dw:()=>w,H1:()=>F,I5:()=>R,IT:()=>I,Ih:()=>M,Jb:()=>N,K1:()=>S,Lh:()=>U,Md:()=>_,QR:()=>A,R8:()=>b,V4:()=>y,VD:()=>E,W0:()=>V,Yh:()=>L,_V:()=>o,_W:()=>r,aS:()=>d,at:()=>P,cS:()=>x,d6:()=>a,dJ:()=>G,fi:()=>g,g$:()=>m,ht:()=>H,jt:()=>u,lo:()=>C,mf:()=>T,oz:()=>h,qN:()=>l,s$:()=>O,uO:()=>v});var n=i(15930),s=i(76318);const a="TourSpeed &wts",o="ToursMetersPerSecond",r=.4,l=10,d=1.25,c=.8,u=6,h=3,m=1e3*c,p=1e3*d,E=600,S=400,O=1200,g=1200,_=35,T=15,A=120,v=1200,f=75,N=400,I=n.Ou-E,L=(s.MF.BASE,"kb"),R="sspa",y=35,b="st",D=y/3500*1e3,M=2,P=52,k=0,w=2e3,C=.2*D,x=3500,H=e=>1===e.getOverrideParam(L,1),U=e=>e.getOverrideParam(b,3500),F=e=>e.getOverrideParam(R,y),G=e=>e.getOverrideParam("ts",-1),V=Object.freeze({maxSweepDistance:1/0,maxRaycastDistance:10,maxDistanceBeforeAddingSweeps:3,minSweepDistance:1.5,maxSidestepDistance:.4,pathRadius:.1,maxTotalSteps:40})},90160:(e,t,i)=>{"use strict";i.d(t,{A0:()=>r,Lt:()=>u,f7:()=>d,rX:()=>c,wg:()=>l});var n=i(86866),s=i(53172),a=i(60152),o=i(27625);const r=e=>{let t=a.aS;if(!isNaN(e)){const i=Math.min(Math.max(a._W,e),a.qN);t=(0,n.OF)(i,a._W,a.qN,a.BF,a.oz)}return t},l=e=>(0,n.OF)(e,a.BF,a.jt,a._W,a.qN),d=e=>Math.min(Math.max(a.BF,e),a.jt),c=e=>(0,s.pu)(e)/1e3,u=(e,t)=>(0,o.j1)(e.metadata.cameraPosition,t.metadata.cameraPosition)&&(0,o.qS)(e.metadata.cameraQuaternion,t.metadata.cameraQuaternion)},44481:(e,t,i)=>{"use strict";i.d(t,{F:()=>l});var n=i(12625),s=i(88325),a=i(97994),o=i(50018),r=i(96425);class l extends n.B{constructor(e,t,i){super(),this.data=e,this.currentTourMode=i,this.name="tours-view-data",this.reelOpen=!1,this.tourSweepViewMapObservable=(0,s.y)(),this.tourModeSettingObservable=(0,a.p)(t)}isTourEmpty(){return 0===this.data.getHighlightsCount()}onReelChanged(e){return this.data.getReel().onChanged(e)}getTourStoryMode(){return this.currentTourMode===r.cR.STORIES}get tourModeSetting(){return this.tourModeSettingObservable.value}setTourModeSetting(e){this.tourModeSettingObservable.value=e}onTourModeSettingChanged(e){return this.tourModeSettingObservable.onChanged(e)}getSnapshot(e){var t;return(null===(t=this.data.getTourEntry(e))||void 0===t?void 0:t.snapshot)||null}setSweepsInToursAcrossViews(e){this.atomic((()=>{this.clearTourSweepViews(),e.forEach((e=>{this.addTourSweepForView(e.sweepId,e.viewId)}))}))}getViewsWithSweepInTour(e){return this.getOrInitializeTourViewIdsForSweep(e)}isSweepInAnyTour(e){return this.getOrInitializeTourViewIdsForSweep(e).length>0}isSweepInTourForView(e,t){return this.getOrInitializeTourViewIdsForSweep(e).includes(t)}onSweepsInToursChanged(e){return this.tourSweepViewMapObservable.onChanged(e)}clearTourSweepViews(){this.tourSweepViewMapObservable.clear()}addTourSweepForView(e,t){const i=this.getOrInitializeTourViewIdsForSweep(e,!0);i.includes(t)||i.push(t)}getOrInitializeTourViewIdsForSweep(e,t=!1){const{platformId:i}=o.Ay.parseId(e);let n=this.tourSweepViewMapObservable.get(i);return void 0===n&&(n=[],t&&this.tourSweepViewMapObservable.set(i,n)),n}}},21875:(e,t,i)=>{"use strict";i.d(t,{R:()=>h,l:()=>u});var n=i(12625),s=i(97994),a=i(4850),o=i(9139),r=i(1333),l=i(96425),d=i(74381),c=i(35447);const u={active:!1,type:r.gX.Move,promise:Promise.resolve(),stop:()=>Promise.resolve(),start:()=>u,toIndex:-1,duration:0,started:-1,stopped:-1};class h extends n.B{constructor(e,t,i){super(),this.activeReel=e,this.allowedModes=t,this.looping=i,this.name="tour",this.tourState=l.Ci.Inactive,this.transitionObservable=(0,s.p)(u),this.tourSetupFns=[],this.tourCurrentSnapshot=-1,this.enabledTourStops=(0,a.Z)([]),this.tourPlaying=!1,this.tourWillResume=!1,this.tourEnded=!1,this.tourPlayedCount=0,this.updateEnabledStops=e=>{this.enabledTourStops.atomic((()=>{if(this.enabledTourStops.replace([]),this.activeReel&&this.activeReel.reel)for(const t of this.activeReel.reel)if(t&&t.snapshot){const i=t.snapshot.metadata.cameraMode;-1!==e.indexOf(i)&&this.enabledTourStops.push(t.id)}}))},this.updateEnabledStops(t()),this.looping=i,this.commit()}setHighlightReel(e){this.atomic((()=>{this.activeReel.replace(e),this.updateEnabledStops(this.allowedModes()),this.resetReelState()}));const t=this.getReel().reel.length,i=this.getHighlightsCount();t!==i&&o.Vy.for(this).info(t-i+" highlights disabled and hidden from reel")}addSnapshotToTour(e,t=l.dO.Current){this.allowedModes().includes(e.metadata.cameraMode)&&this.enabledTourStops.push(e.sid);const i=this.tourCurrentSnapshotSid;this.tourCurrentSnapshotSid=e.sid;const n={id:e.sid,snapshot:e,sourceViewId:e.sourceViewId,source:"workshop"};switch(t){case l.dO.Beginning:this.tourCurrentSnapshot=0,this.activeReel.reel.insert(0,n);break;case l.dO.End:this.tourCurrentSnapshot=this.enabledTourStops.length-1,this.activeReel.reel.push(n);break;case l.dO.Current:if(void 0===i)this.tourCurrentSnapshot=this.enabledTourStops.length-1,this.activeReel.reel.push(n);else{let e=this.activeReel.reel.findIndex((e=>!!e&&e.id===i))+1;(e<=0||e>this.activeReel.reel.length)&&(e=this.activeReel.reel.length-1),this.tourCurrentSnapshot=this.tourCurrentSnapshot+1,this.activeReel.reel.insert(e,n)}break;default:throw new Error(`Tours.addSnapshotToTour not implemented: ${t}`)}return this.useTransition(u),this.commit(),n}resetAllTransitionTypeOverrides(){if(this.activeReel&&this.activeReel.reel){let e=!1;this.activeReel.reel.forEach(((t,i)=>{t&&t.overrides&&t.overrides.transitionType&&(delete t.overrides.transitionType,this.activeReel.reel.update(i,t),e=!0)})),e&&this.activeReel.setDirty()}}resetAllPanSettingOverrides(){if(this.activeReel&&this.activeReel.reel){let e=!1;this.activeReel.reel.forEach(((t,i)=>{t&&t.overrides&&void 0!==(t.overrides.panAngle||t.overrides.panDirection||t.overrides.panAlignment)&&(delete t.overrides.panAngle,delete t.overrides.panDirection,delete t.overrides.panAlignment,e=!0,this.activeReel.reel.update(i,t))})),e&&this.activeReel.setDirty()}}applyHighlightOverrides(e,t){const i=this.activeReel.reel.findIndex((t=>!!t&&t.id===e));this.setHighlightOverrides(i,t)}setHighlightOverrides(e,t){const i=this.activeReel.reel.get(e);if(!i)throw Error(`Highlight not found for ${e}`);const n={id:i.id,title:i.title,description:i.description,snapshot:i.snapshot,sourceViewId:i.sourceViewId,source:i.source};i.overrides?(n.overrides=Object.assign({},i.overrides),t.hasOwnProperty("panDirection")&&(n.overrides.panDirection=t.panDirection),t.hasOwnProperty("transitionType")&&(n.overrides.transitionType=t.transitionType),t.hasOwnProperty("panAlignment")&&(n.overrides.panAlignment=t.panAlignment),t.hasOwnProperty("panAngle")&&(n.overrides.panAngle=t.panAngle),t.hasOwnProperty("panSpeed")&&(n.overrides.panSpeed=t.panSpeed)):n.overrides={transitionType:t.transitionType,panDirection:t.panDirection,panAlignment:t.panAlignment,panAngle:t.panAngle,panSpeed:t.panSpeed},this.activeReel.reel.update(e,n)}updateReelEntry(e){const{id:t}=e,i=this.activeReel.reel.findIndex((e=>!!e&&e.id===t));if(-1===i)throw Error(`Reel entry not found for ${t}`);const n=this.activeReel.reel.get(i);if(!e)throw Error(`Reel entry not found for ${i}`);const s=Object.assign({},n,e);this.activeReel.reel.update(i,s)}moveTourStop(e,t){const i=this.activeReel.reel.findIndex((t=>!!t&&t.id===e)),n=this.activeReel.reel.findIndex((e=>!!e&&e.id===t));this.activeReel.reel.move(i,n)}clear(){this.resetReelState(),this.enabledTourStops.replace([]),this.activeReel.reel.length=0,this.commit()}removeTourStop(e){const t=this.enabledTourStops.indexOf(e),i=this.activeReel.reel.findIndex((t=>!!t&&t.id===e)),n=this.getTourIndexBySid(e);if(-1!==t&&this.enabledTourStops.splice(t,1),this.enabledTourStops.length>0){const e=n<=this.tourCurrentSnapshot?this.tourCurrentSnapshot-1:this.tourCurrentSnapshot;this.setTourCurrentSnapshotByIndex(Math.max(e,0))}else this.resetReelState();this.activeReel.reel.remove(i)}getReel(){return this.activeReel}isLooping(){return this.looping}setLooping(e){this.looping=e}getActiveReelTourMode(){return this.activeReel.mode||d.UR.REEL}setActiveReelTourMode(e){this.activeReel.mode=e,this.activeReel.commit()}isTourActive(){return this.tourState!==l.Ci.Inactive}getCurrentTourState(){return{currentStep:this.getTourCurrentSnapshotIndex(),tourPlaying:this.tourPlaying||this.tourWillResume,totalSteps:this.getHighlightsCount(),tourEnded:this.tourEnded,activeStep:this.transition&&-1!==this.transition.toIndex?this.transition.toIndex:this.getTourCurrentSnapshotIndex(),highlights:this.getReelHighlights(),transition:this.transition,hasTours:this.tourExistsInAnyView(),tourPlayedCount:this.tourPlayedCount}}tourExistsInAnyView(){return!1}registerTourSetup(e){this.tourSetupFns.push(e)}async setupTour(e,...t){return Promise.all(this.tourSetupFns.map((i=>i(e,...t))))}get transition(){return this.transitionObservable.value}get isTourAutoGenerated(){const e=this.getReelHighlights();return e.length>0&&e.some(c.p_)}isTourTransitionActive(){return this.transition.active}getTourTransitionType(){return this.transition.type}useTransition(e){this.transitionObservable.value=e}async stopTourTransition(){await this.transition.stop()}iterateSnapshots(e){let t=0;this.activeReel.reel.forEach((i=>{i&&i.snapshot&&e(i.snapshot,t++)}))}isSnapshotInTour(e){return-1!==this.activeReel.reel.findIndex((t=>!!t&&t.id===e))}getEnabledSnapshots(){const e=[];return this.iterateSnapshots(((t,i)=>{e.push(t)})),e}getTourEntry(e){const t=this.activeReel.reel.findIndex((t=>!!t&&t.id===e));return this.activeReel.reel.get(t)}getReelHighlights(){const e=[];return this.activeReel.reel.forEach((t=>{t&&this.isEnabled(t.id)&&e.push(t)})),e}getHighlightsCount(){return this.enabledTourStops.length}getTourState(){return this.tourState}setTourState(e){this.tourState=e,this.commit()}getTourCurrentSnapshotIndex(){return this.tourCurrentSnapshot}getTourCurrentSnapshotSid(){return this.tourCurrentSnapshotSid}getTourEntrySidFromIndex(e){let t=0;for(const i of this.activeReel.reel)if(i&&this.isEnabled(i.id)){if(t===e)return i.id;t++}throw new Error("getTourSnapshotSid() -> Invalid snapshot index.")}getTourSnapshotsWithSweepId(e){const t=[];for(const i of this.activeReel.reel)i&&i.snapshot&&i.snapshot.metadata.scanId===e&&t.push(i.id);return t}getTourSweeps(){const e=[];for(const t of this.activeReel.reel)t&&t.snapshot&&t.snapshot.metadata.scanId&&e.push({id:t.id,sweepId:t.snapshot.metadata.scanId,sourceViewId:t.sourceViewId});return e}setTourCurrentSnapshotByIndex(e){if(e<0||e>this.getHighlightsCount())throw new Error("setTourCurrentSnapshotByIndex() -> Invalid tour index.");let t=-1;for(const i of this.activeReel.reel)if(i&&this.isEnabled(i.id)&&(t++,t===e)){this.tourCurrentSnapshot=e,this.tourCurrentSnapshotSid=i.id;break}-1===t&&this.resetReelState(),this.commit()}getTourIndexBySid(e){let t=-1;for(const i of this.activeReel.reel)if(i&&this.isEnabled(i.id)&&(t++,i.id===e))return t;return-1}isEnabled(e){return-1!==this.enabledTourStops.indexOf(e)}resetReelState(){this.tourPlayedCount=0,this.tourCurrentSnapshot=-1,this.tourCurrentSnapshotSid=void 0,this.useTransition(u),this.commit()}}},96425:(e,t,i)=>{"use strict";var n,s,a;i.d(t,{Ci:()=>s,cR:()=>n,dO:()=>a}),function(e){e.NONE="none",e.STORIES="stories",e.LEGACY="legacy"}(n||(n={})),function(e){e[e.Inactive=0]="Inactive",e[e.Active=1]="Active",e[e.StopScheduled=2]="StopScheduled"}(s||(s={})),function(e){e[e.Beginning=0]="Beginning",e[e.Current=1]="Current",e[e.End=2]="End"}(a||(a={}))},5275:(e,t,i)=>{"use strict";i.d(t,{U:()=>a});var n=i(87805),s=i(44481);const a=(0,n.u)(s.F,"reelOpen",!1)},41299:(e,t,i)=>{"use strict";i.d(t,{F:()=>u,K:()=>c});var n=i(96540),s=i(96425),a=i(55285),o=i(38064),r=i(15498),l=i(96282);const d=3e3;function c(){const e=(0,r.l)(),t=(0,l.t)(),i=(0,n.useRef)(0),[o,c]=(0,n.useState)(!1),u=t.active,h=e===s.cR.STORIES;return(0,a.w5)((()=>(c(!0),window.clearTimeout(i.current),u?()=>{}:(i.current=window.setTimeout((()=>{c(!1)}),d),()=>window.clearTimeout(i.current)))),[u]),h&&(u||o)}const u=(0,o.c)("showStoryTour",c)},42107:(e,t,i)=>{"use strict";i.d(t,{I:()=>c,X:()=>n});var n,s=i(96540),a=i(1333),o=i(45202),r=i(67491),l=i(27568);!function(e){e.FastForwarding="fast-forwarding",e.Idle="idle",e.Completed="completed",e.Paused="paused",e.Playing="playing",e.Rewinding="rewinding",e.Skipping="skipping"}(n||(n={}));const d=[n.FastForwarding,n.Playing,n.Rewinding];function c(){var e;const t=(0,s.useRef)(null),i=(0,l.u)(),c=(0,o.v)(),u=(0,r.I)(),h=u.toIndex,m=-1!==h&&h!==c;let p=n.Idle;m?p=0===h&&c===i-1?n.FastForwarding:Math.abs(h-c)>1?n.Skipping:h=.99&&(E=!0,e===n.Rewinding&&(p=n.Idle),e!==n.Playing&&e!==n.FastForwarding||(p=n.Completed))}}return d.includes(p)?t.current={transition:u,animation:p,index:c}:E||(t.current=null),p}},45202:(e,t,i)=>{"use strict";i.d(t,{v:()=>a});var n=i(87805),s=i(21875);const a=(0,n.u)(s.R,"tourCurrentSnapshot",-1)},49865:(e,t,i)=>{"use strict";i.d(t,{o:()=>a});var n=i(98236),s=i(21875);const a=(0,n.v_)(s.R)},27568:(e,t,i)=>{"use strict";i.d(t,{u:()=>r});var n=i(19592),s=i(4850),a=i(49865);const o=(0,s.Z)([]);function r(){return function(){const e=(0,a.o)();return(0,n.W)(e?e.enabledTourStops:o)}().length}},15498:(e,t,i)=>{"use strict";i.d(t,{l:()=>a});var n=i(44481),s=i(96425);const a=(0,i(87805).u)(n.F,"currentTourMode",s.cR.NONE)},96282:(e,t,i)=>{"use strict";i.d(t,{t:()=>l});var n=i(22044),s=i(97994),a=i(49865),o=i(21875);const r=(0,s.p)(o.l);function l(){const e=(0,a.o)();return(0,n.A)(e?e.transitionObservable:r)}},67491:(e,t,i)=>{"use strict";i.d(t,{I:()=>o});var n=i(96540),s=i(1333),a=i(96282);function o(){const e=(0,a.t)(),t=(0,n.useRef)(e);return e.type===s.gX.FloorChange?t.current:(t.current=e,e)}},87743:(e,t,i)=>{"use strict";i.d(t,{Ce:()=>r,Yg:()=>s,e0:()=>a,gm:()=>l,lz:()=>o});var n=i(7478);class s extends n.QB{constructor(){super()}}class a extends n.QB{constructor(){super()}}class o extends n.QB{constructor(){super()}}class r extends n.QB{constructor(e){super(),this.entry=e}}class l extends n.QB{constructor(e){super(),this.entry=e}}},19702:(e,t,i)=>{"use strict";i.d(t,{AI:()=>n,Cs:()=>h,D:()=>d,GO:()=>S,LT:()=>O,NN:()=>m,XJ:()=>l,bp:()=>s,g:()=>c,ky:()=>p,nn:()=>a,no:()=>o,np:()=>u,wo:()=>r,yL:()=>E});const n="tour-stories",s="spaces.tours_v2",a="tours2",o="gt",r=0,l=1,d="hr",c=0,u=1,h="tour",m=0,p=1,E=2,S=3,O=24},35447:(e,t,i)=>{"use strict";i.d(t,{EI:()=>u,Kl:()=>c,Qx:()=>h,cJ:()=>l,p_:()=>m,v:()=>d});var n=i(74381),s=i(56208),a=i(66806),o=i(96425),r=i(19702);function l(e){const t=e.tryGetSetting(s.Q$.HighlightReel,!0),i=e.getOverrideParam(r.D,r.np),n=e.getOverrideParam(r.Cs,r.ky);return t&&i!==r.g&&n!==r.NN}function d(e,t){const i=function(e){const t=e.tryGetSetting(s.Q$.TourButtons,!0),i=e.getOverrideParam(r.no,r.XJ),n=e.getOverrideParam(r.Cs,r.ky);return t&&i!==r.wo&&n!==r.NN}(e),n=l(e);return i||n?c(e,t)?o.cR.STORIES:o.cR.LEGACY:o.cR.NONE}function c(e,t){const i=e.getOverrideParam(r.Cs,r.ky);return i===r.yL||i!==r.GO&&t===n.UR.STORY}function u(e,t){const i=e.tryGetSetting(s.Q$.TourButtons,!0),a=e.tryGetSetting(s.Q$.HighlightReel,!0);return i||a?t===n.UR.STORY?o.cR.STORIES:o.cR.LEGACY:o.cR.NONE}function h(e){if(!e)return!1;const{cameraMode:t}=e.snapshot.metadata;return[a.N.Dollhouse,a.N.Floorplan].includes(t)}function m(e){return"vision"===e.source}},73094:(e,t,i)=>{"use strict";i.d(t,{U:()=>a,W:()=>s});var n=i(93877);function s(e){return e.hasPolicyAvailability("org.spaces.auto_tour",["gated","unlocked"])}function a({layersData:e,modelData:t}){var i;const s=e.tryGetView(t.model.details.defaultViewId);return(null==s?void 0:s.viewType)!==n.jK.DEFURNISH&&!!(null===(i=e.getBaseModelView())||void 0===i?void 0:i.hasPolicy("perm.spaces.details.manage"))}},33156:(e,t,i)=>{"use strict";i.d(t,{E:()=>d});var n=i(12625),s=i(88325),a=i(74381),o=i(45332),r=i(87193),l=i(33895);class d extends n.B{constructor(e,t,i,n,l,d){super(),this.orgAdmin=i,this.modelOrgId=n,this.modelCreated=l,this.isDemo=d,this.name="users-data",this.users=(0,s.y)();const c=e.modelAccess||a.OQ.PUBLIC;this.currentUser=new o.o(Object.assign(Object.assign({},e),{modelAccess:c,userStatus:t?r._.KNOWN:r._.UNKNOWN})),this.addUser(this.currentUser)}loadSearchResults(e,t,i){this.atomic((()=>{e.forEach((e=>{this.loadUser(Object.assign(Object.assign({},e),{userStatus:r._.KNOWN}))})),t.forEach((e=>{this.users.get(e)||this.loadUser({email:e,id:"",userStatus:i,modelAccess:a.OQ.PUBLIC,firstName:null,lastName:null})}))}))}loadKnownUsers(e){this.atomic((()=>{e.forEach((e=>{this.loadKnownUser(e)}))}))}loadKnownUser(e){return this.loadUser(Object.assign(Object.assign({},e),{userStatus:r._.KNOWN}))}loadContributor(e){const t=this.users.get(e.email);return t||this.loadUser(Object.assign(Object.assign({},e),{userStatus:r._.CONTRIBUTOR}))}loadFailedUser(e){return this.loadUser(Object.assign(Object.assign({},e),{userStatus:r._.FAILED}))}loadUser(e){let t=this.users.get(e.email);return e.email===this.currentUser.email||t&&t.userStatus===r._.KNOWN&&t.modelAccess!==a.OQ.PUBLIC||(t=new o.o(e),t?this.users.set(e.email,t):this.addUser(t)),t}getUserInfoByEmail(e){return this.users.has(e)?this.users.get(e):null}getUserInfoById(e){return""===e?null:this.users.values.find((t=>t.id===e))||null}getUserDisplay(e){return this.users.has(e)?this.users.get(e):(0,l.A)(e)}iterate(e){for(const t of this.users)e(t)}getUsersWhoMayNeedAccess(){const e={};return this.users.values.forEach((t=>{t.userStatus===r._.KNOWN&&t.modelAccess!==a.OQ.PUBLIC||(e[t.email]=t)})),e}getKnownUsers(){return this.users.values.filter((e=>e.userStatus===r._.KNOWN))}addUser(e){this.users.has(e.email)||this.users.set(e.email,e)}getCurrentUser(){return this.currentUser}isLoggedIn(){return!!this.currentUser.id}isOrgAdmin(){return this.orgAdmin}isInviter(){return this.orgAdmin}getModelOrganizationId(){return this.modelOrgId}getModelCreatedDate(){return this.modelCreated}isDemoModel(){return!!this.isDemo}isEditor(){return this.currentUser.modelAccess===a.OQ.FULL}isCommenter(){const{modelAccess:e}=this.currentUser;return e===a.OQ.VIEWER||e===a.OQ.FULL}getCurrentUserId(){return this.currentUser.id}onUsersChanged(e){return this.users.onChanged(e)}}},45332:(e,t,i)=>{"use strict";i.d(t,{o:()=>o});var n=i(74381),s=i(87193),a=i(33895);class o{constructor(e){this.email="",this.id="",this.firstName="",this.lastName="",this.modelAccess=n.OQ.PUBLIC,this.userStatus=s._.UNKNOWN,this.name="",this.initials="",this.color="",e&&Object.assign(this,e);const t=this.id?this.getFullName(this.firstName,this.lastName):"";this.name=t||this.email||"",this.initials=this.getInitials(this.name),this.color=(0,a.g)(this.id)}getFullName(e,t){return e&&t?`${e} ${t}`:e||t}getInitials(e){const t=e?e.split(" ").map((e=>e[0])).join(""):"?";return t.length<3?t:`${t[0]}${t[t.length-1]}`}}},87193:(e,t,i)=>{"use strict";var n;i.d(t,{_:()=>n}),function(e){e.UNKNOWN="unknown",e.FAILED="failed",e.MENTIONED="mentioned",e.CONTRIBUTOR="contributor",e.KNOWN="known"}(n||(n={}))},33895:(e,t,i)=>{"use strict";i.d(t,{A:()=>l,g:()=>r});var n=i(25712),s=i(87193),a=i(74381);const o=["#d44441","#f44336","#e91e63","#f78da7","#9c4b92","#673ab7","#5c7fff","#03a9f4","#417505","#00bcd4","#51a868","#37d67a","#cddc39","#fbcd00","#ffac17","#ff6900","#abb8c3","#607d8b"];function r(e){const t=o.length;return o[(0,n.Iy)(e||"",t)]}function l(e){return{email:e,id:"",firstName:"",lastName:"",name:"Unknown",initials:"?",color:r(e),userStatus:s._.UNKNOWN,modelAccess:a.OQ.PUBLIC}}},46793:(e,t,i)=>{"use strict";i.d(t,{De:()=>l,S2:()=>c,gB:()=>d,ty:()=>r,w5:()=>n});var n,s=i(11165),a=i(66806),o=i(13893);!function(e){e.INSIDE="mode.inside",e.OUTSIDE="mode.outside",e.DOLLHOUSE="mode.dollhouse",e.FLOORPLAN="mode.floorplan",e.TRANSITIONING="mode.transitioning",e.ORTHOGRAPHIC="mode.orthographic",e.MESH="mode.mesh"}(n||(n={}));const r=n.INSIDE,l=(n.INSIDE,a.N.Panorama,n.DOLLHOUSE,a.N.Dollhouse,n.FLOORPLAN,a.N.Floorplan,n.TRANSITIONING,a.N.Transition,n.OUTSIDE,a.N.Outdoor,n.ORTHOGRAPHIC,a.N.Orthographic,n.MESH,a.N.Mesh,{[a.N.Panorama]:n.INSIDE,[a.N.Dollhouse]:n.DOLLHOUSE,[a.N.Floorplan]:n.FLOORPLAN,[a.N.Transition]:n.TRANSITIONING,[a.N.Outdoor]:n.OUTSIDE,[a.N.Orthographic]:n.ORTHOGRAPHIC,[a.N.Mesh]:n.MESH}),d=e=>{const t=l[e];return void 0!==t?t:n.OUTSIDE};class c extends s.u{constructor(e,t=o.fl.Interpolate,i={},n){super(),this.payload={mode:e,transitionType:t,pose:i,transitionTime:n}}}c.id="CHANGE_VIEWMODE"},15580:(e,t,i)=>{"use strict";i.d(t,{_z:()=>s,cW:()=>d,n9:()=>a,sj:()=>l});var n=i(56208);const s="showcase-floor_plan",a="showcase-dollhouse",o="fp",r="dh";function l(e,t){return c(n.Q$.FloorPlan,s,o,e,t)}function d(e,t){return c(n.Q$.Dollhouse,a,r,e,t)}function c(e,t,i,n,s){const a=n.tryGetSetting(e,!1),o=!s&&0===n.getOverrideParam(i,1),r=a&&!o;return n.setSetting(t,r),r}},85281:(e,t,i)=>{"use strict";i.d(t,{e:()=>n,n:()=>s});const n="features/dollhouse-nudge",s="features/roombounds-floorplan-nudge"},98309:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(45862);class s extends n.Y{}},1197:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(45862);class s extends n.Y{}},45862:(e,t,i)=>{"use strict";i.d(t,{Y:()=>s});var n=i(7478);class s extends n.QB{constructor(e,t){super(),this.fromMode=t,this.toMode=e,this.timestamp=Date.now()}}},2993:(e,t,i)=>{"use strict";i.d(t,{Te:()=>s,jY:()=>o,nI:()=>a,vy:()=>r});var n=i(66806);const s=e=>{switch(e){case n.N.Panorama:return"Panorama";case n.N.Floorplan:return"Floorplan";case n.N.Dollhouse:return"Dollhouse";case n.N.Transition:return"Transition";case n.N.Orthographic:return"Orthographic";case n.N.Mesh:return"Mesh"}return"Unknown"};function a(e){return e===n.N.Panorama||e===n.N.Mesh}function o(e){return e===n.N.Floorplan||e===n.N.Dollhouse}function r(e){return e===n.N.Panorama}},99583:(e,t,i)=>{"use strict";i.d(t,{X:()=>l});var n=i(12625),s=i(97994),a=i(19968),o=i(66806),r=i(2993);class l extends n.B{constructor(){super(),this.name="viewmode",this.modes=o.N,this.transitionActiveObservable=(0,s.p)(!1),this.isDollhouseDisabled=()=>!1,this.isFloorplanDisabled=()=>!1,this.currentModeObservable=(0,s.p)(null),this.viewmodeChangeEnabledObservable=(0,s.p)(!0),this.transition={active:!1,progress:0,from:null,isFromPitchFactorOrtho:!1,to:null,isToPitchFactorOrtho:!1,startTime:0,transitionTime:0},this.isPano=this.isPano.bind(this),this.isFloorplan=this.isFloorplan.bind(this),this.isInside=this.isInside.bind(this),this.isDollhouse=this.isDollhouse.bind(this),this.isOrthographic=this.isOrthographic.bind(this)}get currentMode(){return this.currentModeObservable.value}set currentMode(e){e!==this.currentModeObservable.value&&(this.currentModeObservable.value=e)}get viewmodeChangeEnabled(){return this.viewmodeChangeEnabledObservable.value}set viewmodeChangeEnabled(e){this.viewmodeChangeEnabledObservable.value=e}peekabooCorrectedMode(e){return this.isDollhouse()&&e.pose.isPitchFactorOrtho?o.N.Floorplan:this.currentMode}get closestMode(){return this.currentMode===o.N.Transition?this.transition.progress<.5?this.transition.from:this.transition.to:this.currentMode}makeModeChangeSubscription(e){return this.currentModeObservable.onChanged(e)}activateTransition(e,t,i,n,s){this.transition.active=!0,this.transition.progress=0,this.transition.startTime=Date.now(),this.transition.transitionTime=i,this.transition.to=t,this.transition.from=e;const r=null==n?e===o.N.Floorplan?0:1:n,l=null==s?t===o.N.Floorplan?0:1:s;this.transition.isFromPitchFactorOrtho=(0,a.aY)(r),this.transition.isToPitchFactorOrtho=(0,a.aY)(l),this.transitionActiveObservable.value=!0}deactivateTransition(){this.transition.active=!1,this.transitionActiveObservable.value=!1}isPano(){return this.currentMode===o.N.Panorama}isInside(){return(0,r.nI)(this.currentMode)}isMesh(){return this.currentMode===o.N.Mesh}isFloorplan(){return this.currentMode===o.N.Floorplan}isDollhouse(){return this.currentMode===o.N.Dollhouse}isOrthographic(){return this.currentMode===o.N.Orthographic}insideModeTransitionProgress(){if(this.transition.active){const e=(0,r.nI)(this.transition.to),t=(0,r.nI)(this.transition.from);return e||t?e&&!t?this.transition.progress:!e&&t?1-this.transition.progress:1:0}return this.isInside()?1:0}canStartTransition(){const e=this.transition.active,t=this.currentMode===o.N.Transition;return!e&&!t}transitionActive(){return!this.canStartTransition()}isTargetMode(e){const t=this.transition.from===this.transition.to,i=this.currentMode===e;return this.transition.active&&t||i}canSwitchViewMode(e){return this.canStartTransition()&&this.viewmodeChangeEnabled&&!this.isTargetMode(e)}}},11180:(e,t,i)=>{"use strict";i.d(t,{x:()=>a});var n=i(96540),s=i(88581);function a(){const e=(0,s.o)(),[t,i]=(0,n.useState)(null);return(0,n.useEffect)((()=>{if(!e)return()=>{};const t=e.currentModeObservable.onChanged(i);return i(e.currentMode),()=>t.cancel()}),[e]),t}},83748:(e,t,i)=>{"use strict";i.d(t,{N:()=>a});var n=i(96540),s=i(88581);function a(){const e=(0,s.o)(),[t,i]=(0,n.useState)(!1);return(0,n.useEffect)((()=>{if(!e)return()=>{};const t=e.viewmodeChangeEnabledObservable.onChanged(i);return i(e.viewmodeChangeEnabled),()=>t.cancel()}),[e]),t}},88581:(e,t,i)=>{"use strict";i.d(t,{o:()=>a});var n=i(98236),s=i(99583);const a=(0,n.v_)(s.X)},15930:(e,t,i)=>{"use strict";i.d(t,{Ou:()=>s});var n=i(66806);n.N.Dollhouse,n.N.Panorama;const s=1e3},84522:(e,t,i)=>{"use strict";i.d(t,{R:()=>s});var n=i(11165);class s extends n.u{constructor(e){super(),this.payload=Object.assign({},e)}}s.id="GET_SCREEN_POS"},71067:(e,t,i)=>{"use strict";i.d(t,{j:()=>n});const n="base-view"},10711:(e,t,i)=>{"use strict";i.d(t,{s:()=>s,y:()=>a});var n=i(52018);class s extends n.t{constructor(e){super(e)}}class a extends n.t{constructor(e){super(e)}}},86721:(e,t,i)=>{"use strict";i.d(t,{P:()=>a,X:()=>s});var n=i(11165);class s extends n.u{constructor(e){super(),this.payload=Object.assign({},e)}}s.id="XR_PRESENT";class a extends n.u{constructor(){super()}}a.id="XR_PRESENT_END"},26059:(e,t,i)=>{"use strict";i.d(t,{F7:()=>n,RN:()=>a,qy:()=>s});const n="features/xr_browser_lock",s=!1,a="xruntested"},4896:(e,t,i)=>{"use strict";i.d(t,{M1:()=>l,ni:()=>r,wc:()=>n});var n,s=i(27200),a=i(21320),o=i(35404);!function(e){e.webxr="webxr",e.unsupported="unsupported"}(n||(n={}));const r=e=>{const t=!!e.tryGetSetting("is_vr",!1),i=e.tryGetSetting(o.qu,!1),n=e.getOverrideParam("vr",1);return t&&!(!n||2===n&&!(0,s.m0)())&&!i},l=async(e=!1)=>{const t=await a.A.isSessionSupported("immersive-vr");return window.isSecureContext&&(e||(0,s.Ap)()||(0,s.qL)()||!(0,s.Fr)())&&t?n.webxr:n.unsupported}},21320:(e,t,i)=>{"use strict";i.d(t,{A:()=>a});const n=new(i(9139).Vy)("vr-platform-select"),s=()=>{const e=void 0!==navigator&&"xr"in navigator&&void 0!==navigator.xr&&"isSessionSupported"in navigator.xr&&"requestSession"in navigator.xr;return window.isSecureContext&&e},a={isSessionSupported:async(e="immersive-vr")=>{var t;let i=!1;if(s())try{i=!!await(null===(t=null===navigator||void 0===navigator?void 0:navigator.xr)||void 0===t?void 0:t.isSessionSupported(e))}catch(e){n.info("WebXR disabled",e)}return n.debug(`WebXR session type: ${e} supported: ${i}`),i},apiExists:s}},74717:(e,t,i)=>{"use strict";i.d(t,{BW:()=>r,De:()=>a,EG:()=>s,hd:()=>l,i9:()=>o});var n=i(11165);class s extends n.u{constructor(e){super(),this.payload={step:e}}}s.id="ZOOM_IN";class a extends n.u{constructor(e){super(),this.payload={step:e}}}a.id="ZOOM_OUT";class o extends n.u{}o.id="ZOOM_RESET";class r extends n.u{}r.id="ZOOM_MAX_VALUE";class l extends n.u{constructor(e){super(),this.payload={value:e}}}l.id="ZOOM_SET"},59155:(e,t,i)=>{"use strict";i.d(t,{A:()=>h});var n=i(68909),s=i(8203),a=i.n(s),o=i(74869),r=i.n(o),l=i(87208),d=i.n(l),c=i(67422),u=i.n(c);const h={basicTextured:{uniforms:{tDiffuse:{value:null},alpha:{value:1}},vertexShader:a(),fragmentShader:r()},screenSpaceColored:{uniforms:{color:{value:new n.Vector3(0,0,0)},opacity:{value:1}},vertexShader:d(),fragmentShader:u()}}},97171:(e,t,i)=>{"use strict";i.d(t,{D:()=>n});const n={Navigation:Symbol("nav"),WebGLRenderer:Symbol("webgl-renderer"),ColorGrade:Symbol("color-grade"),ModelMesh:Symbol("model-mesh"),Octree:Symbol("raycast-octree"),PanoTiles:Symbol("pano-tiles-preload"),Raycaster:Symbol("raycast"),Snapping:Symbol("snap"),StreamingTexture:Symbol("stream-textures"),StreamingMesh:Symbol("stream-mesh"),Tours:Symbol("tours")}},70046:(e,t,i)=>{"use strict";i.d(t,{$2:()=>u,GL:()=>d,nt:()=>c,sb:()=>l});var n=i(7478),s=i(62802),a=i(53282);const o=new(i(9139).Vy)("symbols"),r=[];class l extends n.QB{constructor(e){super(),this.symbol=e}}class d extends n.QB{constructor(e){super(),this.payload=e}}class c extends n.QB{constructor(e){super(),this.payload=e}}function u(e){return new s.P((0,a.Sh)((()=>null),(()=>r.length=0)),e.messageBus.subscribe(d,(e=>{r.push(e.payload)})),e.messageBus.subscribe(c,(e=>{const t=r.findIndex((t=>t.symbol===e.payload.symbol&&t.callback===e.payload.callback));t>=0&&r.splice(t,1)})),e.messageBus.subscribe(l,(e=>{r.forEach((t=>{if(t.symbol===e.symbol)try{t.callback()}catch(t){o.warn("Error handling SymbolMessage",e,t)}}))})))}},23184:(e,t,i)=>{"use strict";i.d(t,{f:()=>n});class n{static isValue(e){return new n(new s(e))}static isType(e){return new n(new a(e))}static isInstanceOf(e){return new n(new o(e))}static isSimilarTo(e){return new n(new r(e))}static is(e){return new n(new l(e))}static isAny(){return new n(new d)}constructor(e){this.matcher=e}compare(e){return this.matcher.matches(e)}}class s{constructor(e){this.value=e}matches(e){return this.value===e}}class a{constructor(e){this.type=e}matches(e){return Object.getPrototypeOf(e).constructor===this.type}}class o{constructor(e){this.type=e}matches(e){if("object"==typeof e)return e instanceof this.type;const t=this.type;switch(typeof e){case"number":return t===Number;case"string":return t===String;case"boolean":return t===Boolean;case"function":return t===Function}return!1}}class r{constructor(e){this.templateObj=e}matches(e){const t=Object.getOwnPropertyNames(this.templateObj);for(const i of t)return e[i]===this.templateObj[i];return!1}}class l{constructor(e){this.predicate=e}matches(e){return this.predicate(e)}}class d{constructor(){}matches(){return!0}}},40397:(e,t,i)=>{"use strict";i.d(t,{BN:()=>L,Gp:()=>p,KK:()=>y,LM:()=>k,MN:()=>D,Nv:()=>f,Rc:()=>E,Vg:()=>v,bw:()=>O,cv:()=>P,fR:()=>S,ff:()=>I,fg:()=>_,hm:()=>A,kf:()=>g,nk:()=>M,qK:()=>T,w$:()=>N,xF:()=>R});var n=i(68909),s=i(46771),a=i(81662),o=i(27625),r=i(33007),l=i(86866),d=i(12767),c=i(53172),u=i(19968),h=i(64208),m=i(3249);const p=e=>!!e&&1===e.elements[15],E=e=>!!e&&(e.elements[15]>0&&e.elements[15]<1),S=((()=>{const e=new n.Object3D,t=new n.Vector3})(),(()=>{const e=new n.Vector3})(),(()=>{const e=new n.Vector3})(),(()=>{const e=new n.Vector3,t=new n.Vector3;return(i,n,s,o)=>(e.copy(n).sub(i),o?t.copy(a.B1.UP):t.copy(e).applyAxisAngle(a.B1.UP,-1*Math.PI/2).setY(0).normalize(),e.applyAxisAngle(t,s),n.clone().sub(e))})()),O=(()=>{const e=new n.Vector3,t=new n.Vector3;return(i,s,a)=>(e.copy(i).sub(s).normalize(),t.copy(i).sub(a).normalize(),(new n.Quaternion).setFromUnitVectors(e,t))})(),g=(()=>{const e=new s.k;return(t,i)=>(e.setPosition(t),e.lookAt(t,i,a.B1.UP),(new n.Quaternion).setFromRotationMatrix(e.asThreeMatrix4()))})(),_=(()=>{const e=new n.Vector3;return(t,i,n)=>(e.copy(a.B1.FORWARD).applyQuaternion(t).normalize(),e.clone().multiplyScalar(-1*n).add(i))})(),T=(()=>{const e=new n.Ray,t=new n.Vector3,i=new n.Vector3;return(n,s,o)=>(i.set(0,0,0),t.copy(a.B1.FORWARD).applyQuaternion(s),e.set(n,t),e.intersectPlane(o,i))})(),A=(()=>{const e=new n.Vector3,t=new n.Vector3,i=new n.Vector3,s=new n.Vector3,o=[new n.Vector3,new n.Vector3,new n.Vector3,new n.Vector3,new n.Vector3,new n.Vector3,new n.Vector3,new n.Vector3],r=new n.Vector3,d=new n.Vector3,c=new n.Vector3,u=new n.Vector3,h=new n.Plane,m=new n.Vector3,p=new n.Ray,E=new n.Vector3,S=new n.Vector3;return({targetPosition:O,targetRotation:_,angleDown:T,box:A,fovY:v,aspectRatio:f})=>{const N="number"==typeof T?T:-1*_.angleTo((0,l.Vs)(_,new n.Quaternion));e.copy(a.B1.FORWARD).applyQuaternion(_).setY(0),t.copy(e).setY(N).normalize(),s.copy(t).applyAxisAngle(a.B1.UP,-Math.PI/2).setY(0).normalize(),i.copy(s).cross(t).normalize();let I=0;const L=A.max,R=A.min,y=[L,R];for(let e=0;e<2;e++){const t=y[e].x;for(let e=0;e<2;e++){const i=y[e].y;for(let e=0;e<2;e++){const n=y[e].z;o[I].set(t,i,n),I++}}}r.copy(R),c.copy(O).setY(R.y);let b=d.copy(r).sub(c).dot(t);o.forEach((e=>{if(e.y===L.y)return;const i=d.copy(e).sub(c).dot(t);iP&&(P=t),n>k&&(k=n)}));const w=P/Math.tan(v*f/2),C=k/Math.tan(v/2),x=Math.max(w,C)+Math.abs(M),H=O.clone().add(t.clone().multiplyScalar(1.1*-x));return{position:H,rotation:g(H,O)}}})(),v=((()=>{const e=new n.Matrix4})(),(()=>{const e=new n.Matrix4,t=new n.Vector4})(),(()=>{const e=new n.Vector3;return(t,i,n=a.B1.UP)=>{const s=t.angleTo(i);return Math.sign(e.crossVectors(t,i).dot(n))*s}})()),f=((()=>{const e=new s.k,t=new n.Vector3})(),(e,t,i,n,s=1.5)=>{const a=1/e.elements[5];if(p(e))return s*n/(2*a);const o=t.distanceTo(i),r=Math.atan(a);return n*(s/(2*Math.tan(r)*o))}),N=(e,t,i,n,s=1.5)=>{const a=1/e.elements[0];if(p(e))return s*n/(2*a);const o=t.distanceTo(i),r=Math.atan(a);return n*(s/(2*Math.tan(r)*o))},I=function(){const e=new n.Vector3,t=new n.Matrix4;return(i,n,s)=>{const a=e.set(0,0,-i).applyMatrix4(n).z;return t.copy(n),t.invert(),e.set(2/s,0,a).applyMatrix4(t),e.x}}(),L=e=>1/e.elements[5],R=(e,t=d.Bv.fov)=>e/Math.tan((0,c.pu)(t/2)),y=(()=>{const e=new n.Vector3;return(t,i,n)=>{const s=n.angleTo(a.B1.UP),o=Math.abs(s-Math.PI);return s<.2||o<.2?(t.quaternion.setFromUnitVectors(a.B1.FORWARD,n),!0):(t.lookAt(e.copy(i).add(n)),!1)}})(),b=((()=>{const e=new n.Vector3,t=new n.Vector3(1e4,1e4,1e4),i=[new n.Line3,new n.Line3,new n.Line3,new n.Line3],s=[new n.Vector3,new n.Vector3,new n.Vector3,new n.Vector3]})(),(()=>{const e=new n.Vector3,t=new n.Vector3(0,1,0);return(i,n)=>{e.set(0,0,-1).applyQuaternion(i);const s=e.angleTo(t),a=Math.abs(s-Math.PI);return s{const e=new n.Vector3(1,0,0);return(t,i=-45)=>{const s=i*(Math.PI/180);return b(t,.1)?(new n.Quaternion).setFromAxisAngle(e,s):t}})(),M=(()=>{const e=new n.Quaternion,t=new n.Euler;return(i,n=35*c.fy)=>{const s=(0,u.rC)(i);if(s{const e=new n.Vector3;return(t,i,s,a,o)=>{const l=i.getWorldPosition(e).distanceTo(t),d=o.maxSize-(o.maxSize-o.minSize)*(0,h.T)(l,o.nearBound,o.farBound),c=t.clone().project(i),u=new n.Vector3(a.width/2,a.height/2,1).multiply(c),p=new n.Vector3(d/2,0,0).add(u),E=new n.Vector3(2/a.width,2/a.height,1).multiply(p).clone().unproject(i).clone().distanceTo(t)*(1+o.responsiveness/100*(s-1));return(0,m.qE)(E,r.A.epsilon,E)}})(),k=((()=>{const e=new n.Vector3,t=new n.Vector3})(),(()=>{const e=new n.Matrix4;return(t,i,n,s)=>(t.setFromRotationMatrix(e.makeBasis(i,n,s)),t)})())},44455:(e,t,i)=>{"use strict";i.d(t,{PH:()=>n});i(68909);const n=e=>!e||!Object.values(e).filter((e=>0!==e)).length},53172:(e,t,i)=>{"use strict";i.d(t,{H:()=>o,fy:()=>n,pu:()=>a,tm:()=>s});const n=Math.PI/180,s=180/Math.PI;function a(e){return e*n}function o(e){return e*s}},3249:(e,t,i)=>{"use strict";i.d(t,{qE:()=>n});const n=function(e,t,i){return Math.max(t,Math.min(e,i))}},27625:(e,t,i)=>{"use strict";i.d(t,{j1:()=>s,qS:()=>a,yt:()=>n});const n=(e,t,i=1e-5)=>Math.abs(e-t)<=i,s=(e,t,i=1e-5)=>((e,t,i=1e-5)=>n(e.x,t.x,i)&&n(e.y,t.y,i))(e,t,i)&&n(e.z,t.z,i),a=(e,t,i=1e-5)=>s(e,t,i)&&n(e.w,t.w,i)},52885:(e,t,i)=>{"use strict";function n(e,t,i){return(1-i)*e+i*t}i.d(t,{C:()=>n})},86866:(e,t,i)=>{"use strict";i.d(t,{$i:()=>A,C:()=>p,HN:()=>u,HV:()=>v,OF:()=>E,QX:()=>d,U$:()=>n,U0:()=>N,V5:()=>g,Vs:()=>_,cP:()=>c,eB:()=>f,i0:()=>m,jS:()=>T,m9:()=>S,oA:()=>h});var n,s=i(68909),a=i(46771),o=i(81662),r=i(3249),l=i(53172);!function(e){e.fromVisionVector=function(e){return new s.Vector3(e.x,e.z,-e.y)},e.fromVisionScale=function(e){return new s.Vector3(e.x,e.z,e.y)},e.fromVisionVectorInPlace=function(e){const t=e.x,i=e.z,n=-e.y;return e.set(t,i,n)},e.toVisionVector=function(e){return new s.Vector3(e.x,-e.z,e.y)},e.toVisionScale=function(e){return new s.Vector3(e.x,e.z,e.y)},e.toVisionVectorInPlace=function(e){const t=e.x,i=-e.z,n=e.y;return e.set(t,i,n)},e.fromVisionQuaternion=function(e){return new s.Quaternion(e.x,e.z,-e.y,e.w)},e.fromVisionSweepQuaternion=function(e){return new s.Quaternion(e.x,e.z,-e.y,e.w).multiply((new s.Quaternion).setFromAxisAngle(new s.Vector3(0,1,0),(0,l.pu)(90)))},e.fromVisionCameraQuaternion=function(e){return new s.Quaternion(-e.x,-e.z,e.y,-e.w).multiply((new s.Quaternion).setFromAxisAngle(new s.Vector3(1,0,0),(0,l.pu)(90)))},e.toVisionQuaternion=function(e){return new s.Quaternion(e.x,-e.z,e.y,e.w)},e.toVisionSweepQuaternion=function(e){const t=new s.Quaternion(e.x,e.y,e.z,e.w).multiply((new s.Quaternion).setFromAxisAngle(new s.Vector3(0,1,0),(0,l.pu)(-90)));return t.set(t.x,-t.z,t.y,t.w),t},e.toVisionCameraQuaternion=function(e){return new s.Quaternion(e.x,-e.z,e.y,e.w).multiply(new s.Quaternion(-.70710678118,0,0,.70710678118))}}(n||(n={}));const d=function(e,t){const i=Math.pow(10,t);return Math.round(e*i)/i};function c(e,t,i){return Math.abs(t-e)<=i?t:e+Math.sign(t-e)*i}const u=function(e,t){const i=new s.Vector3(0,0,-1);return i.clone().applyQuaternion(e).angleTo(i.clone().applyQuaternion(t))},h=(()=>{const e=new a.k,t=new s.Frustum;return(i,n,s,a)=>(a=null!=a?a:t,e.identity().makeRotationFromQuaternion(n).setPosition(i),e.getInverse(e),e.premultiply(s.asThreeMatrix4()),a.setFromProjectionMatrix(e.asThreeMatrix4()),a)})(),m=((()=>{const e=new s.Sphere})(),(e,t,i,n)=>h(e,t,i).intersectsBox(n)),p=e=>{const t=e.getSize(new s.Vector3),i=Math.max(t.x,t.y,t.z);return(new s.Box3).setFromCenterAndSize(e.getCenter(new s.Vector3),new s.Vector3(i,i,i))},E=(e,t,i,n,s)=>(s-n)*((e-t)/(i-t))+n,S=(e,t,i,n,s)=>{const a=E(e,t,i,n,s);return(0,r.qE)(a,n,s)};function O(e){return 0===e.x&&0===e.y&&0===e.z}const g=(()=>{const e=new s.Vector3,t=new s.Matrix4;return i=>O(i)?i.clone():(e.copy(o.B1.FORWARD).applyQuaternion(i),t.lookAt(o.B1.ZERO,e,o.B1.UP),(new s.Quaternion).setFromRotationMatrix(t))})(),_=(()=>{const e=new s.Vector3,t=new s.Matrix4;return(i,n)=>O(i)?n.copy(i):(e.copy(o.B1.FORWARD).applyQuaternion(i).setY(0).normalize(),t.lookAt(o.B1.ZERO,e,o.B1.UP),n.setFromRotationMatrix(t))})(),T=(()=>{const e=new s.Vector3,t=new s.Ray;return(i,n,a,o)=>(o=o||new s.Vector3,t.origin.copy(i),t.lookAt(n),o.copy(t.at(a,e)))})(),A=(()=>{const e=new s.Vector3,t=new s.Ray;return(i,n,a,o)=>(o=o||new s.Vector3,t.set(i,n),o.copy(t.at(a,e)))})();function v(e,t,i,n,s,a,o,r,l){if(e===i&&t===n||s===o&&a===r)return!1;const d=(r-a)*(i-e)-(o-s)*(n-t);if(0===d)return!1;const c=((o-s)*(t-a)-(r-a)*(e-s))/d,u=e+c*(i-e),h=t+c*(n-t);return l&&l.set(u,h),!0}function f(e,t,i,n,s,a,o,r,l=0,d){if(e===i&&t===n||s===o&&a===r)return null;const c=(r-a)*(i-e)-(o-s)*(n-t);if(0===c)return null;const u=((o-s)*(t-a)-(r-a)*(e-s))/c,h=((i-e)*(t-a)-(n-t)*(e-s))/c,m=1-l;if(um||hm)return null;const p=e+u*(i-e),E=t+u*(n-t);return d&&d.set(p,E),u}function N(e,t){return Math.ceil(e/t)*t}},64208:(e,t,i)=>{"use strict";function n(e,t,i){return e<=t?0:e>=i?1:(e=(e-t)/(i-t))*e*(3-2*e)}i.d(t,{T:()=>n})},92237:(e,t,i)=>{"use strict";i.d(t,{z:()=>r});var n=i(94814),s=i(3928),a=i(53282);const o=new(i(9139).Vy)("animation");class r extends s.v{get active(){return this._active}get duration(){return this._duration}get endValue(){return this._endValue}get easing(){return this._easing}get elapsed(){return this._elapsed}get delay(){return this._delay}constructor(e,t,i,s=n.p9,a=0){super(),this._easing=n.p9,void 0===t&&(t=e),void 0===i&&(this._active=!1,i=0,this._elapsed=0,this._duration=0),this.modifyAnimation(e,t,i,s,0,a)}tick(e){if(!this._active)return this.endValue;if(this._delay>0)return this._delay-=e,this.startValue;const t=(this._elapsed+e)/Math.max(this._duration,1e-5);return this.updateProgress(t),this.value}updateProgress(e){if(isNaN(e))return void o.error(`Invalid progress value: ${e}`);const t=Math.max(0,Math.min(e,1)),i=this.active,n=this.value;if(t>=1)return this.activate(!1),this.value=this._easing(1,this.startValue,this._endValue-this.startValue,1),this._elapsed=this.duration,this.commit(),void(this._onComplete&&this._onComplete.forEach((e=>e())));this.activate(!0),this.value=this._easing(t,this.startValue,this._endValue-this.startValue,1),this._elapsed=t*this.duration,n===this.value&&i===this.active||this.commit()}updateAbsolute(e){const t=e/Math.max(this._duration,1e-5);this.updateProgress(t)}modifyAnimation(e,t,i,s=n.p9,a=0,o=0){return this._easing=s,this._endValue=t,this._duration=i,this._elapsed=a,this._delay=o,this.startValue=e,this.value=e,this.activate(this._duration>=0&&e!==t),this.commit(),this}onComplete(e){return this._onComplete||(this._onComplete=[]),(0,a.Sh)((()=>this._onComplete.push(e)),(()=>this._onComplete.splice(this._onComplete.indexOf(e),1)))}onActivate(e){return this._onActivate||(this._onActivate=[]),(0,a.Sh)((()=>this._onActivate.push(e)),(()=>this._onActivate.splice(this._onActivate.indexOf(e),1)))}activate(e){e!==this._active&&this._onActivate&&this._onActivate.forEach((e=>e())),this._active=e}copy(e){this._endValue=e.endValue,this._duration=e.duration,this._active=e.active,this._easing=e.easing,this._elapsed=e.elapsed,this.startValue=e.startValue,this.value=e.value,this.commit()}clone(){const e=new r(0);return e.copy(this),e}stop(e){this._active=!1,this._elapsed=this._duration,this.value=e,this._endValue=e,this.commit()}equals(e){return this._active===e._active&&this.duration===e.duration&&this.easing===e.easing&&this.elapsed===e.elapsed&&this.endValue===e.endValue&&this.startValue===e.startValue&&this.value===e.value}}},95300:(e,t,i)=>{"use strict";i.d(t,{BE:()=>n,IX:()=>s,s1:()=>a});const n=16/9,s=function(e,t,i){const n=e/t;let s=e,a=t;return n>i?s=t*i:n{"use strict";i.d(t,{E:()=>s,G:()=>a});class n{constructor(e){this.comparator=e,this.nodes=[]}push(e){return this.nodes.push(e),this.siftdown(0,this.nodes.length-1)}pop(){let e,t;return this.nodes.length&&(e=this.nodes.pop(),e)?(this.nodes.length?(t=this.nodes[0],this.nodes[0]=e,this.siftup(0)):t=e,t):null}peek(){return this.nodes[0]}contains(e){return-1!==this.nodes.indexOf(e)}replace(e){if(this.nodes.length){const t=this.nodes[0];return this.nodes[0]=e,this.siftup(0),t}return null}_pushpop(e,t,i){let n;const s=i||this.defaultCompare;return e.length&&s(e[0],t)<0&&(n=[e[0],t],t=n[0],e[0]=n[1],this._siftup(e,0,s)),t}pushpop(e){return this._pushpop(this.nodes,e,this.comparator)}_heapify(e,t){let i,n,s,a,o,r;const l=Math.floor(e.length/2),d=function(){for(r=[],s=0,o=l;0<=o?so;0<=o?s++:s--)r.push(s);return r}.apply(this).reverse(),c=[];for(n=0,a=d.length;ns;0<=s?i++:i--)a.push(i);return a}.apply(this).reverse(),l=[];for(t=0,n=r.length;tt?1:0}_siftdown(e,t,i,n){let s,a;const o=n||this.defaultCompare,r=e[i];for(;i>t&&(a=i-1>>1,s=e[a],o(r,s)<0);)e[i]=s,i=a;return e[i]=r}siftdown(e,t){return this._siftdown(this.nodes,e,t,this.comparator)}_siftup(e,t,i){let n,s;const a=i||this.defaultCompare,o=e.length,r=t,l=e[t];for(n=2*t+1;ne.timeout)return{status:s.Timeout,cost:i.g,path:o(i)};const t=l.pop();if(!t)throw new Error("[astar.ts]: Node must exist in heap");if(d.delete(t.data),t&&e.isEnd(t.data))return{status:s.Success,cost:t.g,path:o(t)};a.add(t.data);const n=e.neighbors(t.data);for(const s of n){if(a.has(s))continue;const n=t.g+e.distance(t.data,s);let o=d.get(s),r=!1;if(void 0===o)o={data:s,g:0,heuristicValue:0,f:0},d.set(s,o);else{if(o.g Property "f" is undefined.')}!function(e){e[e.Success=0]="Success",e[e.NoPath=1]="NoPath",e[e.Timeout=2]="Timeout"}(s||(s={}))},81609:(e,t,i)=>{"use strict";function n(e){const t=document.createElement("input");t.type="text",t.value=e,document.body.appendChild(t),t.select(),document.execCommand("copy"),document.body.removeChild(t)}i.d(t,{l:()=>n})},81587:(e,t,i)=>{"use strict";i.d(t,{$T:()=>a,Rt:()=>r,XH:()=>o});var n=i(22374);const s=new Object,a=e=>{if(e){const t=e.valueOf();if(!isNaN(t))return e.toISOString()}return(new Date).toISOString()},o=(e,t=s)=>{if(e){const t=new Date(e);if(!isNaN(t.valueOf()))return t}return t===s?new Date:t},r=function(e){return[(0,n.H)(e.getMonth()+1),".",(0,n.H)(e.getDate()),".",e.getFullYear(),"_",(0,n.H)(e.getHours()),".",(0,n.H)(e.getMinutes()),".",(0,n.H)(e.getSeconds())].join("")}},26348:(e,t,i)=>{"use strict";i.d(t,{A4:()=>c,D6:()=>d,Nd:()=>l,hV:()=>r,ld:()=>o});const n=12,s=.30479999,a=.09290313,o=e=>e/s,r=e=>e*s,l=e=>e/a,d=e=>e*a,c=e=>{const t=e/s;let i=Math.floor(t),a=t*n%n;return Math.round(a)===n?(i+=1,a=0):a=Math.round(a),{feet:i,inches:a}}},94814:(e,t,i)=>{"use strict";i.d(t,{AU:()=>d,Bo:()=>O,Do:()=>o,ME:()=>u,WD:()=>r,dV:()=>l,e2:()=>p,jv:()=>E,lu:()=>m,p9:()=>a,p_:()=>c,rn:()=>h,sP:()=>g,v:()=>S});var n=i(65380),s=i.n(n);const a=function(e,t,i,n){return i*e/n+t},o=function(e,t,i,n){return i*(e/=n)*e+t},r=function(e,t,i,n){return-i*(e/=n)*(e-2)+t},l=function(e,t,i,n){return(e/=n/2)<1?i/2*e*e+t:-i/2*(--e*(e-2)-1)+t},d=function(e,t,i,n){return i*(e/=n)*e*e+t},c=function(e,t,i,n){return e/=n,i*(--e*e*e+1)+t},u=function(e,t,i,n){return(e/=n/2)<1?i/2*e*e*e+t:i/2*((e-=2)*e*e+2)+t},h=function(e,t,i,n){return-i/2*(Math.cos(Math.PI*e/n)-1)+t},m=function(e,t,i,n){return i*(1-Math.pow(2,-10*e/n))+t},p=function(e,t,i,n){return(e/=n/2)<1?i/2*Math.pow(2,10*(e-1))+t:(e--,i/2*(2-Math.pow(2,-10*e))+t)},E=(e,t,i,n,s)=>{let a=t;if(s>0){const t=(1-Math.max(s,0))*Math.abs(n);a=i<=t?0:e(i-t,0,1,t)}return a};function S(e,t,i,n){const a=new(s())(e,t,i,n);return(e,t,i,n)=>{const s=e/n;return t+i*a.solve(s)}}function O(e,t,i,n){const a=new(s())(e,t,i,n);return e=>a.solve(e)}const g=function(e,t,i,n){return-4*i*Math.pow(e/n-(.5+t),2)+1}},20819:(e,t,i)=>{"use strict";i.d(t,{EE:()=>n,kH:()=>s});const n=e=>void 0!==e.pointerId,s=e=>void 0!==e.changedTouches},16263:(e,t,i)=>{"use strict";i.d(t,{s:()=>d});var n=i(87419),s=i(81277),a=i(38731),o=i(5262),r=i(67246),l=i(56208);function d(e){const t=!!(0,r.L)(),i=(0,a.B)(),d=(0,o.i)(l.Q$.DefurnishView,!1),c=(0,o.i)(n.cB,!1),u=n.NT,h=!!(0,s.y)(u);return c&&(h||"viewer"===e)&&(d&&t||i)}},74634:(e,t,i)=>{"use strict";function n(e,t){let i,n,s=t[t.length-1],a=0;for(let o=0;oe.y&&s.y>e.y||i.x0?1:0);return a%2==1}i.d(t,{L:()=>n})},97610:(e,t,i)=>{"use strict";i.d(t,{u:()=>s});const n=new(i(9139).Vy)("passive-support"),s=(()=>{let e=!1;try{const t=Object.defineProperty({},"passive",{get:()=>{e=!0}});return window.addEventListener("testPassive",(()=>{}),t),window.removeEventListener("testPassive",(()=>{}),t),e}catch(e){return n.warn(`Passive Option for addEventListener is not supported, Safari zoom may not perform as expected: ${e}`),!1}})()},10032:(e,t,i)=>{"use strict";i.d(t,{A:()=>s});var n=i(68909);const s=new n.LoadingManager},93818:(e,t,i)=>{"use strict";i.d(t,{JE:()=>g,LB:()=>O,R5:()=>T,ac:()=>p});var n=i(82748),s=i(23339),a=i(26348);let o="′",r="″",l=" ",d="ft",c="in",u="m",h="sq. ft.",m="m²",p="×";var E,S;function O(e){o=e.unitsDisplayFeetSymbol,r=e.unitsDisplayInchesSymbol,l=e.unitsDisplayHalfSpace,d=e.unitsDisplayFeet,c=e.unitsDisplayInches,u=e.unitsDisplayMeters,h=e.unitsDisplaySquareFeet,m=e.unitsDisplaySquareMeters,p=e.dimensionsSeparator}!function(e){e.INCHES="inches",e.FEET="feet"}(E||(E={})),function(e){e.DISTANCE="distance",e.AREA="area"}(S||(S={}));const g=(e,t,i=E.FEET)=>{const n="number"==typeof t?(new Intl.NumberFormat).format(t):t;return e===s.t.IMPERIAL?{[S.AREA]:`${n} ${h}`,[S.DISTANCE]:i===E.FEET?`${n}${o}`:`${n}${r}`}:{[S.AREA]:`${n} ${m}`,[S.DISTANCE]:`${n} ${u}`}},_=Number((0,n.P3)("metricPrecision",2)),T=(e,t=s.t.IMPERIAL)=>{const{IMPERIAL:i,METRIC:n}=s.t,{FEET:o,INCHES:r}=E;let d=g(i,0,r).distance;switch(t){case i:const{feet:t,inches:s}=(0,a.A4)(e);let c=g(i,t,o).distance,u=g(i,s,r).distance;t<1&&(c=""),c.length>0&&(c+=l),d=c+u;break;case n:d=g(n,e.toFixed(_)).distance}return d}},25712:(e,t,i)=>{"use strict";i.d(t,{Iy:()=>r,KA:()=>d,W0:()=>a,hA:()=>o,s5:()=>l});const n="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",s="0123456789abcdefghijklmnopqrstuvwxyz";function a(e=11,t=n){let i="";const s=window.crypto||window.msCrypto;let a;a=s?s.getRandomValues(new Uint8Array(e)):new Uint8Array(e).map((()=>255*Math.random()));for(let n=0;n{"use strict";i.d(t,{D:()=>n});const n=function(e){let t="";const i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";for(let n=0;n{"use strict";i.d(t,{G2:()=>o,RP:()=>a});const n="referrer";let s="";function a(e){let t;try{t=new URL(e)}catch(t){return e}return t.searchParams.set(n,o()),t.href}function o(){return(function(){if(!window.document.referrer)return!1;let e;try{e=new URL(window.document.referrer)}catch(e){return!1}return e.origin===window.location.origin}()?function(){const e=new URL(window.location.href);if(!e.searchParams.has(n))return s;const t=e.searchParams.get(n)||"";try{new URL(t),s=t}catch(e){}return e.searchParams.delete(n),window.history.replaceState(null,"",e.href),s}():"")||window.document.referrer}},84250:(e,t,i)=>{"use strict";i.d(t,{O:()=>d});var n=i(68909);const s={defines:{RING_COUNT:0,USE_TEXTURE:!1},uniforms:{discRadius:{value:.2},discNormal:{value:new n.Vector3(0,0,1)},ringRadii:{value:[]},ringColors:{value:[]},opacity:{value:1},tint:{value:new n.Color(1,1,1)},texImg:{value:null},viewMatrixInverse:{value:new n.Matrix4},projectionMatrixInverse:{value:new n.Matrix4}},vertexShader:i(99691),fragmentShader:i(71285),side:n.FrontSide,transparent:!0};var a=i(38069);const o=new n.Color,r=[{outerRadius:1,innerRadius:.75,color:a.V.WHITE.clone(),opacity:1}];class l extends n.ShaderMaterial{constructor(e=r){super(Object.assign(Object.assign({},s),{defines:Object.assign({},s.defines),uniforms:n.UniformsUtils.clone(s.uniforms)})),this.setRings(e),Object.defineProperty(this,"opacity",{set(e){this.uniforms.opacity.value=e},get(){return this.uniforms.opacity.value}})}setDiscNormal(e){this.uniforms.discNormal.value.copy(e)}setDiscRadius(e){this.uniforms.discRadius.value=e}setRings(e){e=e||[],this.defines.RING_COUNT!==e.length&&(this.defines.RING_COUNT=e.length,this.needsUpdate=!0),this.uniforms.ringRadii.value=e.map((({innerRadius:e,outerRadius:t})=>new n.Vector2(e||-1,t))),this.uniforms.ringColors.value=e.map((({color:e,opacity:t})=>(o.copy(e),new n.Vector4(o.r,o.g,o.b,t))))}setTexture(e){this.defines.USE_TEXTURE!==!!e&&(this.defines.USE_TEXTURE=!!e,this.needsUpdate=!0),this.uniforms.texImg.value=e}getTexture(){return this.uniforms.texImg.value}setTint(e){this.uniforms.tint.value.set(null!=e?e:16777215)}getTint(){return this.uniforms.tint.value}onBeforeRender(e,t,i){this.uniforms.projectionMatrixInverse.value.copy(i.projectionMatrixInverse),this.uniforms.viewMatrixInverse.value.copy(i.matrixWorld)}}class d extends n.Mesh{constructor(e){super(new n.SphereGeometry(Math.sqrt(2),8,6),new l),this.onBeforeRender=(e,t,i)=>{this.material.onBeforeRender(e,t,i)},e&&this.configure(e)}configure(e){const{radius:t,normal:i,rings:n,texture:s,opacity:a,tint:o}=e,{material:r}=this;void 0!==t&&(this.scale.setScalar(t),r.setDiscRadius(t)),void 0!==i&&r.setDiscNormal(i),void 0!==n&&r.setRings(n),void 0!==s&&r.setTexture(s),void 0!==o&&r.setTint(o),void 0!==a&&(r.opacity=a)}dispose(){var e;null===(e=this.material.getTexture())||void 0===e||e.dispose(),this.geometry.dispose()}}},47503:(e,t,i)=>{"use strict";function n(e,t){return e.size===t.size&&[...e].every((e=>t.has(e)))}function s(...e){const t=new Set;for(const i of e)for(const e of i.values())t.add(e);return t}function a(e,t){for(const i of t)e.add(i);return e}i.d(t,{LX:()=>s,c5:()=>n,s1:()=>a})},32024:(e,t,i)=>{"use strict";i.d(t,{S:()=>l,y:()=>r});var n=i(68909),s=i(9139),a=i(10032);const o=new s.Vy("texture"),r=(e,t,i,s=n.SRGBColorSpace)=>{const r=new n.TextureLoader(a.A);r.crossOrigin="anonymous";const l=r.load(e,t,void 0,(t=>{o.error(`Failed to load ${e}`),i&&i(t)}));return l.colorSpace=s,l},l=async(e,t=n.SRGBColorSpace)=>{const i=new n.TextureLoader(a.A);i.crossOrigin="anonymous";const s=await i.loadAsync(e);return s.colorSpace=t,s}},66726:(e,t,i)=>{"use strict";i.d(t,{$j:()=>a,Cz:()=>u,Gm:()=>o,SE:()=>r,ir:()=>h,kh:()=>d,wk:()=>c,zh:()=>l});var n=i(72853),s=i(82748);const a=function(e="",t){let i,n,s;if(e.match(/^https?/)){const t=new URL(e);i=t.protocol+"//"+t.host,n=e,s=e.match(/[^/]*$/)[0]}else{if(t.match(/^https?/)){const e=new URL(t);i=e.protocol+"//"+e.host}else i=window.location.protocol+"//"+t;n=i+"/api/player/models/"+e,s=e}return{sid:s,urlBase:i,urlModel:n,urlFiles:n+(n.match(/\/$/)?"files":"/files"),urlThumb:n+(n.match(/\/$/)?"thumb":"/thumb")}},o=function(e,t={}){for(const i in t){const n=t[i];e+=(-1===e.indexOf("?")?"?":"&")+`${i}=${n}`}return e},r=e=>e.replace(/^https?:\/\/(?:www.)?/i,"").replace(/\/(.*)/,""),l=e=>{if((0,n.J)(e)){return new URL(e).origin}return null};function d(e=window.location.href){let t=e;return(0,n.J)(t)&&(t=t.replace(/\/work\/?(\?.*)?$/,"/show/$1")),new URL(t)}const c=Object.freeze(["q","qK","qF","tag","note","comment","pin-pos","cloudEdit"]);function u(e,t,i){const n=d(),s=new URLSearchParams(window.location.search);var a;a=s,c.forEach((e=>a.delete(e)));const o=encodeURIComponent(e);if(o&&s.set("q",o),t.length>0){const e=encodeURIComponent(t.join(","));s.set("qK",e)}if(i.length>0){const e=encodeURIComponent(i.join(","));s.set("qF",e)}return n.search=s.toString(),n.hash="",n.toString()}function h(e,t){const i=JSON.parse(JSON.stringify(e));if(i.interfaces)i.interfaces=i.interfaces.map((e=>(0,s.ir)(e,"v",t)));else{if(!i.interface)throw new Error("No interface found in apiConfig!");i.interface=(0,s.ir)(i.interface,"v",t)}return i.client=(0,s.ir)(i.client,"v",t),i}},16153:(e,t,i)=>{"use strict";i.d(t,{QM:()=>O,Il:()=>_,bF:()=>S});var n=i(68909),s=i(515),a=i(37458),o=i(19968),r=i(53172),l=i(3249),d=i(40397),c=i(73237),u=i(27024),h=i.n(u),m=i(28058);const p={vertexShader:i.n(m)(),fragmentShader:h(),uniforms:{diffuse:{value:new n.Color},opacity:{value:1},anchorPos:{value:new n.Vector3}}};class E extends c.dI{constructor(e={}){e.vertexShader=p.vertexShader,e.fragmentShader=p.fragmentShader,e.uniforms=Object.assign(Object.assign({},e.uniforms),n.UniformsUtils.clone(p.uniforms));const t=e.color,i=e.fadeDepth,s=e.fadeWidth,a=e.opacity;delete e.color,delete e.fadeDepth,delete e.fadeWidth,super(e),this.color=new n.Color,this.opacity=1,this._fadeDepth=null!=i?i:c.n4,this._fadeWidth=null!=s?s:c.OD,t&&this.color.copy(t),null!=a&&(this.opacity=a),this.updateParamsToUniform()}updateParamsToUniform(){this.uniforms.diffuse.value.copy(this.color),this.uniforms.opacity.value=this.opacity}get fadeDepth(){return this._fadeDepth}get fadeWidth(){return this._fadeWidth}setAnchorPos(e){this.uniforms.anchorPos.value.copy(e)}}var S;(0,s.Dw)({unicodeFontsURL:"webgl-vendors/unicode-font-resolver/1.0.1/"}),function(e){e.WORLD="world",e.NDC="ndc"}(S||(S={}));class O extends n.Object3D{constructor(e,t=S.WORLD){var i,o,r,l;super(),this.config=e,this.scaleType=t,this.unscaledWidth=0,this.unscaledHeight=0,this.bindings=[];const d=this.config.background||this.config.backgroundAsCollider;if(d){this.config.backgroundOpacity=void 0!==this.config.backgroundOpacity?this.config.backgroundOpacity:1,this.config.backgroundOpacity=this.config.background?this.config.backgroundOpacity:0;const t=this.createQuadGeometry(),i=new E({color:e.backgroundColor,transparent:!0,depthTest:this.config.backgroundOpacity>0&&!e.disableDepth,depthWrite:this.config.backgroundOpacity>0&&!e.disableDepth,opacity:this.config.backgroundOpacity,stencilRef:1,stencilFail:n.KeepStencilOp,stencilZFail:n.KeepStencilOp,stencilZPass:n.ReplaceStencilOp,stencilFunc:n.AlwaysStencilFunc,stencilWrite:!0,fadeDepth:this.config.fadeDepth,fadeWidth:this.config.fadeWidth});this.labelBackgroundMesh=new this.config.backgroundColliderType(t,i),this.labelBackgroundMesh.position.z=-.01,this.labelBackgroundMesh.name="Label Background",this.collider=this.labelBackgroundMesh,this.add(this.labelBackgroundMesh)}const c=new E({fadeDepth:this.config.fadeDepth,fadeWidth:this.config.fadeWidth}),u=this.labelTextMesh=new s.EY;u.material=c,u.name="Label Text",u.text=e.text||"",u.renderOrder=10,u.font=`${null!==(i=e.assetBasePath)&&void 0!==i?i:""}${e.fontPath}`,u.lang=e.lang,u.fontSize=1,u.fontWeight=700,u.anchorX="50%",u.anchorY="50%",u.outlineWidth=e.outline?e.outlineWidth:0,u.maxWidth=e.wordWrapWidth,u.textAlign=e.align,u.depthOffset=e.depthOffset||0,d&&(u.raycast=()=>{}),u.addEventListener("synccomplete",(()=>{var e;const[t,i,n,s]=u.textRenderInfo.visibleBounds;let a=n-t,o=s-i;isFinite(a)&&isFinite(o)&&(d&&(a+=this.config.backgroundBorderWidth,o+=this.config.backgroundBorderHeight,this.labelBackgroundMesh.scale.set(a,o,1)),this.unscaledWidth=a,this.unscaledHeight=o,this.aspect=a/Math.max(o,.001),u.position.set("50%"===u.anchorX?(t+n)/-2:0,"50%"===u.anchorY?(i+s)/-2:0,0),null===(e=this._onGeomUpdate)||void 0===e||e.call(this))})),this.scaleFactor=null!==(o=e.scale)&&void 0!==o?o:1,this.opacity=null!==(r=e.opacity)&&void 0!==r?r:1,this.setColor(null!==(l=e.color)&&void 0!==l?l:new n.Color),this.setRenderOrder(a.X.labels),this.add(u),u.sync(),this.name="Label Container";const h=u.onBeforeRender.bind(u);u.onBeforeRender=(e,t,i,n,s,a)=>{s.updateParamsToUniform(),h(e,t,i,n,s,a)},this.labelBackgroundMesh&&(this.labelBackgroundMesh.onBeforeRender=(e,t,i,n,s,a)=>{s.updateParamsToUniform()})}dispose(){this.bindings.forEach((e=>e.cancel())),this.labelTextMesh.dispose()}onGeomUpdate(e){this._onGeomUpdate=e}get text(){return this.config.text}set text(e){this.config.text=e,this.labelTextMesh.text=e,this.labelTextMesh.sync()}get mesh(){return this.labelTextMesh}getUnscaledSize(){return{width:this.unscaledWidth,height:this.unscaledHeight}}get scaleFactor(){return this.config.scale}set scaleFactor(e){this.config.scale=e,this.scale.setScalar(e)}get opacity(){return void 0!==this.config.opacity?this.config.opacity:1}set opacity(e){if(e!==this.config.opacity){this.config.opacity=e;const t=e>0&&!this.config.disableDepth;if(this.config.background){const i=this.labelBackgroundMesh.material;i.opacity=Math.min(this.config.backgroundOpacity||1,e),i.depthWrite=e>.15,i.depthTest=t}this.forEachLabelTextMaterial((i=>{i.opacity=e,i.depthTest=t})),this.visible=e>0,this.labelBackgroundMesh.visible=this.visible}}forEachLabelTextMaterial(e){if(Array.isArray(this.labelTextMesh.material))for(const t of this.labelTextMesh.material)e(t);else e(this.labelTextMesh.material)}setColor(e){this.forEachLabelTextMaterial((t=>{t.isTextOutlineMaterial||t.color.copy(e)}))}setFadeDepthTexture(e){this.forEachLabelTextMaterial((t=>{t.setFadeDepthTexture(e)})),this.labelBackgroundMesh&&this.labelBackgroundMesh.material.setFadeDepthTexture(e)}setRenderLayer(e){this.labelTextMesh.layers.mask=e.mask,this.labelBackgroundMesh&&(this.labelBackgroundMesh.layers.mask=e.mask)}setRenderOrder(e){this.renderOrder=e,this.labelTextMesh.renderOrder=e,this.labelBackgroundMesh&&(this.labelBackgroundMesh.renderOrder=e)}setPosition(e,t=e=>e){const i=t(e);this.position.copy(i),this.forEachLabelTextMaterial((e=>{e.setAnchorPos(i)})),this.labelBackgroundMesh&&this.labelBackgroundMesh.material.setAnchorPos(i)}setOrientation(e,t=0){this.quaternion.copy(e),0!==t&&this.rotateZ(-t*r.fy)}scaleBillboard(e,t,i,n,s,a,r=g.SCALE_DEFAULT){if(0!==i.elements[15])this.scaleFactor=.2*r*n*(g.ORTHO_IDEAL_HEIGHT/s);else{const c=(0,o.jn)(this.position,e,t,i.asThreeMatrix4()),u=Math.abs(c.x);if(u<1){const t=(0,d.Nv)(i,e,this.position,s,r),o=((0,l.qE)(a,1,2.5)+n)*g.SCALE_ASPECT,c=1+g.SCALE_NDC-u*g.SCALE_NDC-o,h=Math.max(Math.min(1/t*c,3),.001);this.scaleType===S.NDC?this.scaleFactor=h:this.scaleFactor=Math.min(h*g.NDC_MULT,r*g.SCALE_WORLD)}else this.scaleFactor=.001}}createQuadGeometry(){const e=new Float32Array([-.5,-.5,0,.5,-.5,0,.5,.5,0,-.5,.5,0]),t=new Float32Array([0,0,-1,0,0,-1,0,0,-1,0,0,-1]),i=new n.BufferGeometry;return i.setAttribute("position",new n.BufferAttribute(e,3)),i.setIndex([0,1,2,0,2,3]),i.setAttribute("normal",new n.BufferAttribute(t,3)),i}}const g={SCALE_DEFAULT:.1,SCALE_WORLD:4,SCALE_NDC:.5,SCALE_ASPECT:.035,DEPTH_WRITE_THRESHOD:.15,ORTHO_IDEAL_HEIGHT:1500,NDC_MULT:1.15};class _{constructor(e){this.currentTextConfig=_.defaultTextConfig,e?this.updateTextStyle(e):this.updateTextStyle(_.defaultTextConfig)}updateTextStyle(e){this.currentTextConfig=Object.assign(Object.assign({},this.currentTextConfig),e)}createLabel(e={text:""}){return new O(Object.assign(Object.assign({},this.currentTextConfig),e))}async preload(e={text:""}){const t=Object.assign(Object.assign({},this.currentTextConfig),e);return new Promise((e=>{var i;(0,s.PY)({font:`${null!==(i=t.assetBasePath)&&void 0!==i?i:""}${t.fontPath}`,characters:t.text},e)}))}static makeConfig(e){return Object.assign(Object.assign({},_.defaultTextConfig),e)}}_.defaultTextConfig={text:"",fontPath:"fonts/roboto-700.woff",align:"center",wordWrapWidth:void 0,color:new n.Color(0,0,0),backgroundColor:new n.Color(1,1,1),backgroundBorderWidth:.9,backgroundBorderHeight:.7,background:!0,backgroundAsCollider:!0,backgroundColliderType:n.Mesh,scale:1,outline:!1,outlineWidth:.06}},94165:(e,t,i)=>{"use strict";i.d(t,{r:()=>n});const n="IDeepLinks"},56637:(e,t,i)=>{"use strict";function n(e){return e.isMesh}function s(e){return e.isMeshStandardMaterial}function a(e){e.traverse((e=>{if(n(e)){const t=e.raycast.bind(e);e.raycast=(e,i)=>{const n=[];t(e,n),n.length>0&&(n.forEach((e=>e.distance=1e-4)),i.push(...n))}}}))}i.d(t,{q:()=>T,ff:()=>O,jF:()=>p,W9:()=>_,UX:()=>c,nD:()=>E,Wi:()=>m,uW:()=>n,P3:()=>s,h0:()=>r,U7:()=>u,rx:()=>a});var o=i(68909);function r(e){if(0===e.length)throw Error("Can't merge empty list of geometries");if(1===e.length)return e[0];let t=0,i=0,n=0,s=0;const a=new o.Box3;for(const o of e)o.index&&(t+=o.index.count,i+=o.getAttribute("position").count,o.getAttribute("uv")&&(n+=o.getAttribute("uv").count),o.boundingBox&&(a.union(o.boundingBox),s++));const r=new o.BufferGeometry;s!==e.length||a.isEmpty()?r.computeBoundingBox():r.boundingBox=a,a.copy(c(r)),r.boundingSphere=a.getBoundingSphere(new o.Sphere);const d=l(new Float32Array(3*i),"position",e);r.setAttribute("position",new o.BufferAttribute(d,3));const u=function(e,t){let i=0,n=0;for(const s of t){const t=s.index;for(let s=0;s0?e.groups:[{start:0,count:n?n.length:s.count,materialIndex:0}];let o=0;for(const e of a)for(let i=e.start;i{l.a.set(e,t,o),l.b.set(d,c,u),l.c.set(h,m,p),l.closestPointToPoint(n,s);const S=n.distanceToSquared(s);S{t=t||[];for(let e=0;e<8;e++)t[e]=t[e]||new o.Vector3;return t[0].set(e.min.x,e.min.y,e.min.z),t[1].set(e.min.x,e.max.y,e.min.z),t[2].set(e.max.x,e.max.y,e.min.z),t[3].set(e.max.x,e.min.y,e.min.z),t[4].set(e.min.x,e.min.y,e.max.z),t[5].set(e.min.x,e.max.y,e.max.z),t[6].set(e.max.x,e.max.y,e.max.z),t[7].set(e.max.x,e.min.y,e.max.z),t},E=(()=>{const e=new o.Vector3,t=new o.Vector3;return(i,n,s)=>{n=n||new o.Box3,e.set(Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE),t.set(Number.MIN_VALUE,Number.MIN_VALUE,Number.MIN_VALUE);for(const n of i)s&&n.applyMatrix4(s),e.x=Math.min(e.x,n.x),e.y=Math.min(e.y,n.y),e.z=Math.min(e.z,n.z),t.x=Math.max(t.x,n.x),t.y=Math.max(t.y,n.y),t.z=Math.max(t.z,n.z);return n.min.copy(e),n.max.copy(t),n}})();var S=i(3249);const O=(()=>{const e=new o.Vector3,t=new o.Vector3,i=new o.Vector3;return(n,s,a,o,r,l,d=!0)=>{i.subVectors(n,a),e.subVectors(s,n),t.subVectors(o,a);const c=e.dot(e),u=e.dot(t),h=e.dot(i),m=t.dot(t),p=t.dot(i),E=c*m-u**2;if(Math.abs(E)<1e-6)return!1;let O=(u*p-h*m)/E,g=(c*p-u*h)/E;return d&&(O=(0,S.qE)(O,0,1),g=(0,S.qE)(g,0,1)),r.lerpVectors(n,s,O),l.lerpVectors(a,o,g),!0}})();function g(e,t,i){let n=e;for(const e of t){const t=n.children.find((t=>t.name===e));if(t)n=t;else{if(!i)return;{const t=new o.Group;t.name=e,n.add(t),n=t}}}return n}function _(e,t){return g(e,t,!0)}o.Object3D;const T={stencilRef:1,stencilFail:o.KeepStencilOp,stencilZFail:o.KeepStencilOp,stencilZPass:o.ReplaceStencilOp,stencilFunc:o.AlwaysStencilFunc,stencilWrite:!0};o.KeepStencilOp,o.KeepStencilOp,o.KeepStencilOp,o.GreaterStencilFunc},53061:(e,t,i)=>{"use strict";i.d(t,{Nm:()=>s,UK:()=>c,D4:()=>d});const n=["en-US","es","fr","de","ru","ja","zh-CN","zh-TW","ko","nl","it","pt"],s="en-US",a=Object.assign(Object.assign({},n.reduce(((e,t)=>Object.assign(Object.assign({},e),{[t.toLowerCase()]:t})),{})),{en:"en-US",zh:"zh-CN",cn:"zh-CN",jp:"ja"});var o=i(27200),r=i(55556),l=i(82748);function d(e){return n.includes(e)}function c(e,t=(0,l.P3)("lang","")){const i=(0,o.Ul)(),c=(0,r.G)("SESSvl",""),u=null!=c?c:"",h=""===u||-1!==u.search(/^en/);return function(e){if(!e)return s;if(d(e))return e;const t=e.toLocaleLowerCase();if(t in a)return a[t];const[i]=t.split("-");return i in a?a[i]:(n.find((e=>e.startsWith(t))),s)}(t||(e?h?i:u:i))}},71224:(e,t,i)=>{"use strict";var n;i.d(t,{b:()=>n}),function(e){e.ACCOUNT_INACTIVE="unavailable.account_inactive",e.GENERIC="generic",e.INTERNAL_ERROR="internal.error",e.MODEL_ARCHIVED="unavailable.archived",e.MODEL_COMPLIANCE="unavailable.compliance",e.MODEL_CORRUPT="model.corrupt",e.MODEL_FAILED="model.failed",e.MODEL_DELETED="unavailable.gone",e.MODEL_PENDING="unavailable.pending",e.MODEL_PROCESSING="unavailable.processing",e.MODEL_RESTRICTED="unavailable.restricted",e.NOT_FOUND="not.found",e.PASSWORD_REQUIRED="password.required",e.REQUEST_INVALID="request.invalid",e.WEBGL_CONTEXT_LOST="webgl.context_lost",e.WEBGL_GENERIC="webgl.generic",e.WEBGL_UNSUPPORTED="webgl.unsupported"}(n||(n={}))},75027:(e,t,i)=>{"use strict";function n(e={},t){return t.split(".").reduce(((e,t)=>e&&e[t]),e)}i.d(t,{L:()=>n})},50505:(e,t,i)=>{"use strict";i.d(t,{o:()=>n});class n{constructor(){this.libraryCache=new Map}load(e,t){const i=this.libraryCache.get(e)||new s(e,t);return this.libraryCache.set(e,i),i.library}}class s{constructor(e,t){this._libraryPromise=new Promise(((e,t)=>{this.libraryResolver=e,this.libraryRejecter=t})),this.fetch(e,t)}async fetch(e,t){try{const i=await import(e),n=Object.assign({},i);if(t&&t in window){const e=window[t]||{};Object.assign(n,e),delete window[t]}this.libraryResolver(n)}catch(e){this.libraryRejecter(e)}}get library(){return this._libraryPromise}}},28511:(e,t,i)=>{"use strict";i.d(t,{J:()=>n});const n={360:"61697","add-link":"61698",arrow:"61699",arrows:"61700",attach:"61701",back:"61702",blocked:"61703","blur-outline":"61704","brush-outline":"61705",checkmark:"61706","chevron-left":"61707","chevron-right":"61708",close:"61709","comment-large":"57344","comment-outline":"61710",comment:"61711",delete:"61712",dock:"61713",dollhouse:"61714",door:"61715",download:"61716","dpad-down":"61717","dpad-left":"61718","dpad-right":"61719","dpad-up":"61720","drag-edit":"61721","draw-lines":"61722","edit-floorplan":"61723",email:"61724",error:"61725","escape-key":"61726",expand:"61727","ext-link":"61728",exterior:"61729","eye-hide":"61730","eye-show":"61731",facebook:"61732",file:"61733",filter:"61734","finger-drag":"61735","floor-controls-all":"61736","floor-controls":"61737",floorplan:"61738","fullscreen-exit":"61739",fullscreen:"61740",fullscreen2:"61741","furniture-slash":"61742",furniture:"61743","gizmo-add":"61744","gizmo-arrow-left":"61745","gizmo-closed":"61746","gizmo-dot-solid":"61747","gizmo-eye-hide":"61748","gizmo-eye-show":"61749","gizmo-floorplan":"61750","gizmo-gear":"61751","gizmo-layers":"61752","gizmo-magnet-wall":"61753","gizmo-magnet":"61754","gizmo-model":"61755","gizmo-move":"61756","gizmo-open":"61757","gizmo-orthographic":"61758","gizmo-perspective":"61759","gizmo-redo":"61760","gizmo-snap":"61761","gizmo-sxs":"61762","gizmo-undo":"61763",help:"61764","hlr-badge":"61765",hlr:"61766",info:"61767","invisible-wall":"61768",keyboard:"61769",layers:"61770",link:"61771",linkedin:"61772",list:"61773",location:"61774",lock:"61775","magnifying-glass":"61776","media-mix":"61777","menu-indicator":"61778","mesh-trim":"61779",mesh:"61780",minus:"61781","more-vert":"61782","no-camera":"61783",notes:"61784","object-air-ducts":"61785","object-bathtub":"61786","object-bed":"61787","object-cabinet":"61788","object-ceiling-fan":"61789","object-chair":"61790","object-countertop":"61791","object-dishwasher":"61792","object-door-lock":"61793","object-door":"61794","object-faucet":"61795","object-fireplace":"61796","object-garage-door":"61797","object-kitchen-island":"61798","object-light":"61799","object-microwave":"61800","object-mirror":"61801","object-outlet":"61802","object-oven":"61803","object-range-hood":"61804","object-range":"61805","object-refrigerator":"61806","object-shower":"61807","object-sink":"61808","object-skylight":"61809","object-smoke-detector":"61810","object-sofa":"61811","object-table":"61812","object-television":"61813","object-thermostat":"61814","object-toilet":"61815","object-towel-rack":"61816","object-vanity":"61817","object-wall-switch":"61818","object-washer-dryer":"61819","object-window":"61820",opening:"61821","panorama-disable":"61822",panorama:"61823","paper-clip":"61824","pause-outline":"61825",pause:"61826","photo-2d":"61827","photo-360":"61828","photo-add":"61829","pie-window":"61830",pin:"61831",pinterest:"61832","play-unicode":"61833",play:"61834",plus:"61835","position-3d-fat":"61836","position-3d-horizontal":"61837","position-3d":"61838","press-hold":"61839",public_buildings_apartment:"61840",public_buildings_archway:"61841","public_buildings_building-circle-arrow-right":"61842","public_buildings_building-circle-check":"61843","public_buildings_building-circle-exclamation":"61844","public_buildings_building-circle-xmark":"61845","public_buildings_building-columns":"61846","public_buildings_building-flag":"61847","public_buildings_building-lock":"61848","public_buildings_building-shield":"61849","public_buildings_building-user":"61850","public_buildings_building-wheat":"61851",public_buildings_building:"61852",public_buildings_buildings:"61853",public_buildings_cabin:"61854",public_buildings_campground:"61855","public_buildings_car-building":"61856",public_buildings_castle:"61857",public_buildings_chimney:"61858",public_buildings_church:"61859",public_buildings_city:"61860",public_buildings_farm:"61861",public_buildings_fence:"61862","public_buildings_ferris-wheel":"61863",public_buildings_fort:"61864",public_buildings_garage:"61865",public_buildings_hospital:"61866",public_buildings_hotel:"61867","public_buildings_house-building":"61868","public_buildings_house-crack":"61869","public_buildings_house-day":"61870","public_buildings_house-fire":"61871","public_buildings_house-flag":"61872","public_buildings_house-flood-water":"61873","public_buildings_house-heart":"61874","public_buildings_house-lock":"61875","public_buildings_house-medical":"61876","public_buildings_house-night":"61877",public_buildings_house:"61878",public_buildings_industry:"61879",public_buildings_landmark:"61880",public_buildings_monument:"61881",public_buildings_mosque:"61882","public_buildings_mountain-city":"61883","public_buildings_place-of-worship":"61884","public_buildings_roller-coaster":"61885",public_buildings_school:"61886",public_buildings_store:"61887",public_buildings_synagogue:"61888",public_buildings_tent:"61889",public_buildings_toilet:"61890","public_buildings_torii-gate":"61891","public_buildings_tower-observation":"61892",public_buildings_tree:"61893",public_buildings_warehouse:"61894",public_characters_0:"61895",public_characters_1:"61896",public_characters_2:"61897",public_characters_3:"61898",public_characters_4:"61899",public_characters_5:"61900",public_characters_6:"61901",public_characters_7:"61902",public_characters_8:"61903",public_characters_9:"61904",public_characters_a:"61905",public_characters_b:"61906",public_characters_c:"61907","public_characters_circle-0":"61908","public_characters_circle-1":"61909","public_characters_circle-2":"61910","public_characters_circle-3":"61911","public_characters_circle-4":"61912","public_characters_circle-5":"61913","public_characters_circle-6":"61914","public_characters_circle-7":"61915","public_characters_circle-8":"61916","public_characters_circle-9":"61917","public_characters_circle-a":"61918","public_characters_circle-b":"61919","public_characters_circle-c":"61920","public_characters_circle-d":"61921","public_characters_circle-e":"61922","public_characters_circle-f":"61923","public_characters_circle-g":"61924","public_characters_circle-h":"61925","public_characters_circle-i":"61926","public_characters_circle-j":"61927","public_characters_circle-k":"61928","public_characters_circle-l":"61929","public_characters_circle-m":"61930","public_characters_circle-n":"61931","public_characters_circle-o":"61932","public_characters_circle-p":"61933","public_characters_circle-q":"61934","public_characters_circle-r":"61935","public_characters_circle-s":"61936","public_characters_circle-t":"61937","public_characters_circle-u":"61938","public_characters_circle-v":"61939","public_characters_circle-w":"61940","public_characters_circle-x":"61941","public_characters_circle-y":"61942","public_characters_circle-z":"61943",public_characters_d:"61944",public_characters_e:"61945",public_characters_f:"61946",public_characters_g:"61947",public_characters_h:"61948",public_characters_i:"61949",public_characters_j:"61950",public_characters_k:"61951",public_characters_l:"61952",public_characters_m:"61953",public_characters_n:"61954",public_characters_o:"61955",public_characters_p:"61956",public_characters_q:"61957",public_characters_r:"61958",public_characters_s:"61959","public_characters_square-0":"61960","public_characters_square-1":"61961","public_characters_square-2":"61962","public_characters_square-3":"61963","public_characters_square-4":"61964","public_characters_square-5":"61965","public_characters_square-6":"61966","public_characters_square-7":"61967","public_characters_square-8":"61968","public_characters_square-9":"61969","public_characters_square-a":"61970","public_characters_square-b":"61971","public_characters_square-c":"61972","public_characters_square-d":"61973","public_characters_square-e":"61974","public_characters_square-f":"61975","public_characters_square-g":"61976","public_characters_square-h":"61977","public_characters_square-i":"61978","public_characters_square-j":"61979","public_characters_square-k":"61980","public_characters_square-l":"61981","public_characters_square-m":"61982","public_characters_square-n":"61983","public_characters_square-o":"61984","public_characters_square-p":"61985","public_characters_square-q":"61986","public_characters_square-r":"61987","public_characters_square-s":"61988","public_characters_square-t":"61989","public_characters_square-u":"61990","public_characters_square-v":"61991","public_characters_square-w":"61992","public_characters_square-x":"61993","public_characters_square-xmark":"61994","public_characters_square-y":"61995","public_characters_square-z":"61996",public_characters_t:"61997",public_characters_u:"61998",public_characters_v:"61999",public_characters_w:"62000",public_characters_x:"62001",public_characters_y:"62002",public_characters_z:"62003","public_colorgrade_cg-contrast":"62004","public_colorgrade_cg-exposure":"62005","public_colorgrade_cg-highlights":"62006","public_colorgrade_cg-saturation":"62007","public_colorgrade_cg-shadows":"62008","public_colorgrade_cg-temperature":"62009",public_furniture_bath:"62010","public_furniture_bed-alt":"62011","public_furniture_bed-bunk":"62012","public_furniture_bed-empty":"62013",public_furniture_bed:"62014",public_furniture_blender:"62015",public_furniture_blinds:"62016","public_furniture_cabinet-filing":"62017","public_furniture_cash-register":"62018","public_furniture_chair-office":"62019",public_furniture_chair:"62020","public_furniture_charging-station":"62021","public_furniture_computer-classic":"62022","public_furniture_computer-speaker":"62023",public_furniture_couch:"62024","public_furniture_dryer-alt":"62025",public_furniture_dryer:"62026",public_furniture_dumbbell:"62027",public_furniture_dumpster:"62028",public_furniture_faucet:"62029",public_furniture_fax:"62030","public_furniture_hot-tub":"62031",public_furniture_inventory:"62032","public_furniture_lamp-desk":"62033","public_furniture_lamp-floor":"62034",public_furniture_lamp:"62035",public_furniture_laptop:"62036","public_furniture_light-ceiling":"62037",public_furniture_loveseat:"62038",public_furniture_microwave:"62039",public_furniture_piano:"62040",public_furniture_podium:"62041",public_furniture_presentation:"62042",public_furniture_projector:"62043",public_furniture_radio:"62044",public_furniture_refrigerator:"62045",public_furniture_shower:"62046",public_furniture_shredder:"62047",public_furniture_sink:"62048","public_furniture_solar-panel":"62049",public_furniture_speaker:"62050",public_furniture_speakers:"62051",public_furniture_toilet:"62052","public_furniture_trash-alt":"62053",public_furniture_turntable:"62054","public_furniture_tv-retro":"62055",public_furniture_tv:"62056",public_furniture_typewriter:"62057",public_objects_abacus:"62058","public_objects_alarm-clock":"62059","public_objects_album-collection":"62060",public_objects_backpack:"62061","public_objects_bags-shopping":"62062",public_objects_bell:"62063",public_objects_bicycle:"62064",public_objects_binoculars:"62065",public_objects_blanket:"62066",public_objects_book:"62067",public_objects_books:"62068",public_objects_boot:"62069",public_objects_box:"62070","public_objects_bread-loaf":"62071","public_objects_briefcase-medical":"62072",public_objects_briefcase:"62073",public_objects_broom:"62074",public_objects_brush:"62075",public_objects_bullhorn:"62076","public_objects_burger-soda":"62077",public_objects_calculator:"62078",public_objects_calendar:"62079",public_objects_camera:"62080",public_objects_car:"62081",public_objects_carrot:"62082","public_objects_cheese-swiss":"62083",public_objects_chess:"62084","public_objects_clipboard-check":"62085","public_objects_clipboard-list":"62086",public_objects_clipboard:"62087","public_objects_coffee-pot":"62088",public_objects_compass:"62089",public_objects_cookie:"62090",public_objects_corn:"62091",public_objects_croissant:"62092",public_objects_dice:"62093",public_objects_drumstick:"62094",public_objects_egg:"62095",public_objects_fish:"62096",public_objects_flask:"62097","public_objects_flower-tulip":"62098",public_objects_gamepad:"62099",public_objects_gem:"62100",public_objects_gift:"62101",public_objects_gifts:"62102","public_objects_glass-citrus":"62103",public_objects_glass:"62104",public_objects_glasses:"62105","public_objects_globe-stand":"62106","public_objects_graduation-cap":"62107",public_objects_guitar:"62108",public_objects_hammer:"62109","public_objects_hat-chef":"62110","public_objects_ice-cream":"62111","public_objects_ice-skate":"62112",public_objects_key:"62113","public_objects_knife-kitchen":"62114","public_objects_lightbulb-on":"62115","public_objects_lightbulb-slash":"62116",public_objects_lightbulb:"62117",public_objects_magnet:"62118",public_objects_mailbox:"62119",public_objects_map:"62120",public_objects_meat:"62121",public_objects_medal:"62122",public_objects_microphone:"62123",public_objects_mobile:"62124","public_objects_money-bill-wave":"62125","public_objects_mug-tea":"62126",public_objects_mug:"62127",public_objects_newspaper:"62128","public_objects_paint-roller":"62129",public_objects_palette:"62130",public_objects_pen:"62131",public_objects_phone:"62132","public_objects_pizza-slice":"62133","public_objects_pump-soap":"62134","public_objects_ruler-triangle":"62135",public_objects_ruler:"62136",public_objects_salad:"62137",public_objects_sandwich:"62138",public_objects_shovel:"62139",public_objects_steak:"62140",public_objects_sunglasses:"62141",public_objects_turkey:"62142",public_objects_utensils:"62143",public_objects_vial:"62144",public_objects_wallet:"62145",public_objects_wrench:"62146",public_people_baby:"62147","public_people_child-dress":"62148","public_people_child-reaching":"62149",public_people_child:"62150",public_people_children:"62151","public_people_circle-user":"62152","public_people_clipboard-user":"62153","public_people_face-angry":"62154","public_people_face-anguished":"62155","public_people_face-astonished":"62156","public_people_face-beam-hand-over-mouth":"62157","public_people_face-confounded":"62158","public_people_face-confused":"62159","public_people_face-diagonal-mouth":"62160","public_people_face-disappointed":"62161","public_people_face-dizzy":"62162","public_people_face-expressionless":"62163","public_people_face-eyes-xmarks":"62164","public_people_face-fearful":"62165","public_people_face-frown-slight":"62166","public_people_face-frown":"62167","public_people_face-glasses":"62168","public_people_face-grimace":"62169","public_people_face-grin-beam-sweat":"62170","public_people_face-grin-beam":"62171","public_people_face-grin-hearts":"62172","public_people_face-grin-squint-tears":"62173","public_people_face-grin-squint":"62174","public_people_face-grin-stars":"62175","public_people_face-grin-tears":"62176","public_people_face-grin-tongue-squint":"62177","public_people_face-grin-tongue-wink":"62178","public_people_face-grin-tongue":"62179","public_people_face-grin-wide":"62180","public_people_face-grin-wink":"62181","public_people_face-grin":"62182","public_people_face-hand-over-mouth":"62183","public_people_face-hushed":"62184","public_people_face-icicles":"62185","public_people_face-kiss":"62186","public_people_face-laugh":"62187","public_people_face-mask":"62188","public_people_face-meh-blank":"62189","public_people_face-meh":"62190","public_people_face-monocle":"62191","public_people_face-nauseated":"62192","public_people_face-party":"62193","public_people_face-pensive":"62194","public_people_face-persevering":"62195","public_people_face-pleading":"62196","public_people_face-pouting":"62197","public_people_face-raised-eyebrow":"62198","public_people_face-relieved":"62199","public_people_face-rolling-eyes":"62200","public_people_face-sad-cry":"62201","public_people_face-sad-sweat":"62202","public_people_face-sad-tear":"62203","public_people_face-scream":"62204","public_people_face-sleeping":"62205","public_people_face-sleepy":"62206","public_people_face-smile-beam":"62207","public_people_face-smile-halo":"62208","public_people_face-smile-hearts":"62209","public_people_face-smile-relaxed":"62210","public_people_face-smile-upside-down":"62211","public_people_face-smile-wink":"62212","public_people_face-smile":"62213","public_people_face-smirking":"62214","public_people_face-spiral-eyes":"62215","public_people_face-sunglasses":"62216","public_people_face-surprise":"62217","public_people_face-thermometer":"62218","public_people_face-thinking":"62219","public_people_face-tired":"62220","public_people_face-tissue":"62221","public_people_face-unamused":"62222","public_people_face-vomit":"62223","public_people_face-weary":"62224","public_people_face-woozy":"62225","public_people_face-worried":"62226","public_people_face-zipper":"62227","public_people_family-dress":"62228","public_people_family-pants":"62229",public_people_family:"62230","public_people_file-user":"62231","public_people_folder-user":"62232","public_people_head-side-brain":"62233","public_people_head-side-cough-slash":"62234","public_people_head-side-cough":"62235","public_people_head-side-goggles":"62236","public_people_head-side-headphones":"62237","public_people_head-side-heart":"62238","public_people_head-side-mask":"62239","public_people_head-side-medical":"62240","public_people_head-side-virus":"62241","public_people_head-side":"62242",public_people_people:"62243","public_people_person-biking":"62244","public_people_person-booth":"62245","public_people_person-breastfeeding":"62246","public_people_person-cane":"62247","public_people_person-carry-box":"62248","public_people_person-digging":"62249","public_people_person-dolly-empty":"62250","public_people_person-dolly":"62251","public_people_person-dress":"62252","public_people_person-drowning":"62253","public_people_person-falling":"62254","public_people_person-half-dress":"62255","public_people_person-hiking":"62256","public_people_person-military-pointing":"62257","public_people_person-pinball":"62258","public_people_person-praying":"62259","public_people_person-pregnant":"62260","public_people_person-running":"62261","public_people_person-seat-reclined":"62262","public_people_person-seat":"62263","public_people_person-shelter":"62264","public_people_person-skating":"62265","public_people_person-skiing":"62266","public_people_person-swimming":"62267","public_people_person-to-door":"62268","public_people_person-walking-luggage":"62269","public_people_person-walking-with-cane":"62270","public_people_person-walking":"62271",public_people_person:"62272",public_people_restroom:"62273","public_people_square-user":"62274","public_people_street-view":"62275","public_people_user-astronaut":"62276","public_people_user-check":"62277","public_people_user-chef":"62278","public_people_user-clock":"62279","public_people_user-cowboy":"62280","public_people_user-crown":"62281","public_people_user-doctor":"62282","public_people_user-gear":"62283","public_people_user-graduate":"62284","public_people_user-group":"62285","public_people_user-headset":"62286","public_people_user-helmet-safety":"62287","public_people_user-injured":"62288","public_people_user-large":"62289","public_people_user-lock":"62290","public_people_user-minus":"62291","public_people_user-music":"62292","public_people_user-nurse":"62293","public_people_user-pen":"62294","public_people_user-pilot":"62295","public_people_user-plus":"62296","public_people_user-police":"62297","public_people_user-shield":"62298","public_people_user-slash":"62299","public_people_user-unlock":"62300",public_people_user:"62301",public_people_users:"62302",public_people_wheelchair:"62303","public_symbols_arrow-alt-circle-down":"62304","public_symbols_arrow-alt-circle-left":"62305","public_symbols_arrow-alt-circle-right":"62306","public_symbols_arrow-alt-circle-up":"62307","public_symbols_arrow-alt-down":"62308","public_symbols_arrow-alt-left":"62309","public_symbols_arrow-alt-right":"62310","public_symbols_arrow-alt-up":"62311",public_symbols_award:"62312","public_symbols_badge-check":"62313","public_symbols_badge-dollar":"62314",public_symbols_badge:"62315",public_symbols_ban:"62316",public_symbols_bell:"62317","public_symbols_bolt-slash":"62318",public_symbols_bolt:"62319",public_symbols_bookmark:"62320","public_symbols_check-circle":"62321",public_symbols_check:"62322",public_symbols_circle:"62323",public_symbols_clock:"62324",public_symbols_club:"62325",public_symbols_cube:"62326",public_symbols_cubes:"62327",public_symbols_deaf:"62328",public_symbols_diamond:"62329","public_symbols_dollar-sign":"62330","public_symbols_exclamation-circle":"62331","public_symbols_exclamation-square":"62332","public_symbols_exclamation-triangle":"62333",public_symbols_exclamation:"62334","public_symbols_eye-slash":"62335",public_symbols_eye:"62336",public_symbols_file:"62337",public_symbols_fingerprint:"62338","public_symbols_fire-alt":"62339","public_symbols_flag-alt":"62340",public_symbols_folder:"62341",public_symbols_genderless:"62342",public_symbols_heart:"62343",public_symbols_hexagon:"62344",public_symbols_hourglass:"62345",public_symbols_image:"62346","public_symbols_info-circle":"62347","public_symbols_info-square":"62348","public_symbols_layer-group":"62349",public_symbols_link:"62350","public_symbols_location-arrow":"62351","public_symbols_lock-open":"62352",public_symbols_lock:"62353","public_symbols_map-marker-alt":"62354","public_symbols_map-marker-check":"62355","public_symbols_map-marker-exclamation":"62356","public_symbols_map-marker-minus":"62357","public_symbols_map-marker-plus":"62358","public_symbols_map-marker-question":"62359","public_symbols_map-marker-smile":"62360",public_symbols_mars:"62361",public_symbols_moon:"62362",public_symbols_octagon:"62363",public_symbols_paperclip:"62364","public_symbols_parking-circle":"62365",public_symbols_parking:"62366",public_symbols_pause:"62367",public_symbols_play:"62368","public_symbols_question-circle":"62369","public_symbols_question-square":"62370",public_symbols_question:"62371",public_symbols_recycle:"62372",public_symbols_redo:"62373",public_symbols_shapes:"62374",public_symbols_shield:"62375","public_symbols_smoking-ban":"62376",public_symbols_smoking:"62377",public_symbols_spade:"62378",public_symbols_square:"62379","public_symbols_star-filled":"62380",public_symbols_star:"62381",public_symbols_tachometer:"62382",public_symbols_tag:"62383","public_symbols_temperature-down":"62384","public_symbols_temperature-frigid":"62385","public_symbols_temperature-high":"62386","public_symbols_temperature-hot":"62387","public_symbols_temperature-low":"62388","public_symbols_temperature-up":"62389",public_symbols_text:"62390","public_symbols_thermometer-empty":"62391","public_symbols_thermometer-full":"62392","public_symbols_thermometer-half":"62393","public_symbols_thermometer-quarter":"62394","public_symbols_thermometer-three-quarters":"62395",public_symbols_thumbtack:"62396",public_symbols_tint:"62397","public_symbols_transgender-alt":"62398",public_symbols_transgender:"62399","public_symbols_trash-alt":"62400",public_symbols_triangle:"62401","public_symbols_usd-circle":"62402","public_symbols_usd-square":"62403","public_symbols_venus-mars":"62404",public_symbols_venus:"62405",public_symbols_video:"62406","public_symbols_volume-down":"62407","public_symbols_volume-mute":"62408","public_symbols_volume-off":"62409","public_symbols_volume-slash":"62410","public_symbols_volume-up":"62411",public_symbols_volume:"62412",public_symbols_water:"62413",public_symbols_waveform:"62414","public_symbols_wifi-slash":"62415",public_symbols_wifi:"62416","public_symbols_yen-sign":"62417",question:"62418",reorder:"62419",reply:"62420",restart:"62421",revert:"62422","room-00258k0mqu8750du151be805c":"62423","room-0an2rky24gb91fdnpzmbwadib":"62424","room-0gnuunpwx63dmmqeq64aqfiyd":"62425","room-2nx6maxxpaeut7kx96fuacdzc":"62426","room-4by2d70b54srbin43t5m0yh9c":"62427","room-4gp8x21ni4i8y19r9pm4rb35a":"62428","room-4qq4e5hz84hcur7ry87uhtmua":"62429","room-66psa4tqgazbnffr9huy2dnpd":"62430","room-91naa1k3hiim9z4mk8352enta":"62431","room-a11d2gi43h0etwedw0mx9pgwd":"62432","room-ag5uphha72sak65qazgsp09yd":"62433","room-byp7pz2tmt4ff47nhfx0uwzec":"62434","room-e6md2spaqemc448pmau3azkhd":"62435","room-ei3kmtun2xpspbg3d5ff3t3zc":"62436","room-gba8cq0s2rdfg1zdb1epwty7d":"62437","room-ge0tcan3iztta5mtgsfx99xpb":"62438","room-gqqw1zac1hzg1p8622ducg3zb":"62439","room-izt39gytcbymc0qtd37nrb7xb":"62440","room-multi-use":"62441","room-mx6e2yfk0tg0zbkbzuw5mhkda":"62442","room-n07hhs9gky4cgrh7q65s9rp0d":"62443","room-nqw75004dcg2bcr41047rhg6c":"62444","room-pnf0xzq61xcegack4iai7xppd":"62445","room-pr9h4zy7eak91f3b7un97u42c":"62446","room-qa21tqcsinnxde9gdmiphacza":"62447","room-rmu8pikcye0n7n9fsu5e4acda":"62448","room-s1h0hb8tpcc9i35dmupknsega":"62449","room-ua1m0u8pm3yngrhzwec1ue5zc":"62450","room-w4tdggk5i5u2zpiryugktghgb":"62451","room-xwhhz63a0hw735qf81knp63ha":"62452","room-y3xuprmywgrprnm0273u3pphd":"62453","room-yeh1aa32fwgm72bh0g92ebruc":"62454","room-ywtddu9hagraxhznwinn8t4zb":"62455","room-zgh2304w5anu0t25ia06ytfxd":"62456","room-zp189tx2hdrry8k5nhaq5x45d":"62457","rotate-left":"62458","rotate-right":"62459",rotate:"62460","rotation-3d":"62461","scale-3d":"62462",settings:"62463",share:"62464",share2:"62465","simple-tag-pin":"62466","simple-tag-small":"62467","simple-tag":"62468",snap:"62469","sparkle-fill":"62470",sparkle:"62471","start-location":"62472","stem-height":"62473","tape-measure":"62474","toggle-pencil":"62475","toolbar-360-view":"62476","toolbar-edit-vr":"62477","toolbar-hlr":"62478","toolbar-labels":"62479","toolbar-mattertags":"62480","toolbar-measurements":"62481","toolbar-more-horiz":"62482","toolbar-photos":"62483","toolbar-plugin-config":"62484","toolbar-scan-mgmt":"62485","toolbar-start-location":"62486",transitions:"62487",trash:"62488","trim-keep":"62489","trim-remove":"62490",twitter:"62491",unlock:"62492",user:"62493",visibility:"62494",vr:"62495",wall:"62496",window:"62497","zoom-reset":"62498"}},85626:(e,t,i)=>{"use strict";i.d(t,{R:()=>s});var n=i(28511);const s=Object.keys(n.J).sort(((e,t)=>e.localeCompare(t)))},30278:(e,t,i)=>{"use strict";i.d(t,{$A:()=>n,Dm:()=>o,aI:()=>a,i1:()=>s});class n extends Error{constructor(e,t,i){super(e),this.status=t,this.type=i,Error.captureStackTrace&&Error.captureStackTrace(this,n)}}class s extends n{constructor(e){super(`Cannot request OEmbed data because no configuration matches the url ${e}`,200,"OEmbedUrl")}}class a extends n{constructor(e="unknown provider"){super(`Content from OEmbed provider ${e} is not currently supported`,200,"OEmbedProvider")}}class o extends n{constructor(e="unknown provider"){super(`Content from ${e} is type "link", which Link content is not currently supported`,200,"OEmbedLink")}}},42390:(e,t,i)=>{"use strict";var n;i.d(t,{n:()=>n}),function(e){e.PHOTO="photo",e.VIDEO="video",e.LINK="link",e.RICH="rich"}(n||(n={}))},23716:(e,t,i)=>{"use strict";var n;i.d(t,{K:()=>n}),function(e){e.Behance="behance",e.DailyMotion="dailymotion",e.FaceBook="facebook",e.Flickr="flickr",e.Giphy="giphy",e.GoogleMaps="google maps",e.Instagram="instagram",e.LinkedIn="linkedin",e.Matterport="matterport",e.MixCloud="mixcloud",e.Pinterest="pinterest",e.Reddit="reddit",e.SoundCloud="soundcloud",e.SketchFab="sketchfab",e.Spotify="spotify",e.Tenor="tenor",e.TikTok="tiktok",e.Twitch="twitch",e.Twitter="twitter",e.Tumblr="tumblr",e.Vimeo="vimeo",e.YouTube="youtube"}(n||(n={}))},97084:(e,t,i)=>{"use strict";var n,s;i.d(t,{L3:()=>o,QK:()=>n}),function(e){e[e.LOW=0]="LOW",e[e.MEDIUM=1]="MEDIUM",e[e.HIGH=2]="HIGH",e[e.HIGHEST=3]="HIGHEST"}(n||(n={})),function(e){e[e.PENDING=0]="PENDING",e[e.SENDING=1]="SENDING",e[e.FAILED=2]="FAILED",e[e.DONE=3]="DONE"}(s||(s={}));const a=new WeakMap;class o{constructor({retries:e=0,concurrency:t=6}={}){this.totalBytesDownloaded=0,this.queue=[],this.retries=e,this.concurrency=t}get(e,t){return this.request("GET",e,t)}head(e,t){return this.request("HEAD",e,t)}options(e,t){return this.request("OPTIONS",e,t)}post(e,t){return this.request("POST",e,t)}put(e,t){return this.request("PUT",e,t)}patch(e,t){return this.request("PATCH",e,t)}delete(e,t){return this.request("DELETE",e,t)}request(e,t,i){const n=new r(e,t,i);if(null==i?void 0:i.signal){const e=()=>{this.queue.includes(n)&&(n.status===s.SENDING&&n.abort(),this.dequeue(n),n.onFail(new DOMException("Aborted","AbortError")))};i.signal.addEventListener("abort",e),a.set(n,(()=>{var t;null===(t=i.signal)||void 0===t||t.removeEventListener("abort",e),a.delete(n)}))}return this.enqueue(n),n.promise}update(){let e;for(;e=this.getNextPendingRequest();)this.sendRequest(e);for(;e=this.getNextOverflowingGet();)e.abort(),e.status=s.PENDING;this.updateTimeout=null}enqueue(e){let t=0;for(t=0;t{this.update()}),1))}dequeue(e){var t;null===(t=a.get(e))||void 0===t||t();const i=this.queue.indexOf(e);if(-1===i)throw new Error("Can't dequeue request not in queue");this.queue.splice(i,1),this.update()}getNextPendingRequest(){for(let e=0;e{e.status=s.DONE,this.dequeue(e),e.contentLength&&e.contentLength>0&&(this.totalBytesDownloaded+=Number(e.contentLength)),e.onDone(t)})).catch((t=>{const i=null!==e.maxRetries?e.maxRetries:this.retries;let n=e.sendAttempts{this.onDone=e,this.onFail=t}))}send(){const e=this.xhr=function(e,t,i){let n;if("undefined"!=typeof XMLHttpRequest)n=new XMLHttpRequest,n.withCredentials=i;else{if("undefined"==typeof XDomainRequest)throw new Error("No XMLHTTPRequest or XDomainRequest... are you trying to run me in node? :(");n=new XDomainRequest}return n.open(e,t,!0),n}(this.method,this.url,this.withCredentials);if(this.responseType)if("arraybuffer"===this.responseType||"text"===this.responseType||"json"===this.responseType||"blob"===this.responseType)e.responseType=this.responseType;else{if("image"!==this.responseType)throw new Error('reponseType can only be one of "arraybuffer", "text", "json", "blob", "image"');e.responseType="blob"}"json"===this.responseType&&e.setRequestHeader("Accept","application/json"),this.auth&&"string"==typeof this.auth&&e.setRequestHeader("Authorization",this.auth);for(const t in this.headers)e.setRequestHeader(t,this.headers[t]);return this.body&&"object"==typeof this.body&&(this.body instanceof FormData||(this.body=JSON.stringify(this.body),e.setRequestHeader("Content-Type","application/json"))),this.onProgress&&(e.onprogress=this.onProgress),new Promise(((t,i)=>{e.onreadystatechange=()=>{if(4===e.readyState){if(200===e.status||201===e.status||204===e.status)return this.parseResponse(this.xhr).then((e=>{t(e)}));if(!this.isAborting)return this.parseResponse(this.xhr).then((t=>{i(Object.assign({status_code:e.status},t))})).catch((()=>{i({status_code:e.status})}));this.isAborting=!1}},e.onerror=function(e){i(e)},e.send(this.body),this.sendAttempts++}))}parseResponse(e){return new Promise(((t,i)=>{var n;try{if(!e)throw new Error(`No request received. Trying ${this.method} on ${this.url} and expecting ${this.responseType}, but request was ${this.xhr}`);let i=e.response;if(this.contentLength=parseInt(null!==(n=e.getResponseHeader("Content-Length"))&&void 0!==n?n:"0",10),"json"===this.responseType&&"object"!=typeof i)t(JSON.parse(e.responseText));else if(200!==e.status&&201!==e.status&&204!==e.status||"image"!==this.responseType)t(i);else{const e=URL.createObjectURL(i);i=new Image,i.onload=function(){URL.revokeObjectURL(e),t(i)},i.src=e,i.crossOrigin="Anonymous"}}catch(e){i({error:"Payload was not valid JSON"})}}))}abort(){if(null===this.xhr)throw new Error("Cannot abort unsent Request");this.isAborting=!0,this.xhr.abort()}}},7691:(e,t,i)=>{"use strict";i.d(t,{L:()=>s});var n=i(2807);class s extends Error{constructor(){super(),this.type=n.B.REFUSED,this.name="ConnectionRefusedError"}}},45493:(e,t,i)=>{"use strict";i.d(t,{d:()=>s});var n=i(2807);class s extends Error{constructor(e){super(e),this.type=n.B.INVALID_PROVIDER,this.name="InvalidProviderError"}}},77331:(e,t,i)=>{"use strict";i.d(t,{d:()=>s});var n=i(2807);class s extends Error{constructor(e){super(e),this.type=n.B.KEY_MISMATCH,this.name="KeyReferrerMismatchError"}}},2807:(e,t,i)=>{"use strict";var n;i.d(t,{B:()=>n}),function(e){e.CANCELLED="ConnectionCancelled",e.REFUSED="ConnectionRefused",e.INVALID_PROVIDER="InvalidProvider",e.KEY_MISMATCH="KeyReferrerMismatch"}(n||(n={}))},30877:(e,t,i)=>{"use strict";i.d(t,{p:()=>n});var n,s=i(50505);!function(e){const t=new s.o;e.connect=async function(e,i,n){let s;try{s=await e.connect()}finally{e.cancelConnecting()}return function(e,t,i,n){return new t(i,e).build(n)}(n,await async function(e){if(!e)throw new Error("Unabled to load the sdk");try{const i=await t.load(e,"sdk-client");if(i&&i.SdkBuilder&&"function"==typeof i.SdkBuilder)return i.SdkBuilder}catch(e){}throw Error(`Could not load the sdk from ${e}`)}(s.scriptUrl),i.getFactory(s),s.serializedInterface)}}(n||(n={}))},30530:(e,t,i)=>{"use strict";i.d(t,{F:()=>s});var n=i(99951);class s{constructor(e){this.receiver=e,this.messageType=n.e.ACCEPT}notify(e,t,i){const{sourceId:n,scriptUrl:s,targetId:a,targetOrigin:o}=e,r=e.interface;this.receiver.accept(n,s,r,a,o)}}},75986:(e,t,i)=>{"use strict";i.d(t,{o:()=>s});var n=i(99951);class s{constructor(e){this.receiver=e,this.messageType=n.g.CONNECT}notify(e,t){this.receiver.onConnectionReceived(e,t)}}},72173:(e,t,i)=>{"use strict";i.d(t,{a:()=>d});var n=i(7691),s=i(45493),a=i(77331),o=i(2807);const r={[o.B.REFUSED]:n.L,[o.B.KEY_MISMATCH]:a.d,[o.B.INVALID_PROVIDER]:s.d};var l=i(99951);class d{constructor(e){this.receiver=e,this.messageType=l.e.REJECT}notify(e,t,i){const n=r[e.errorType];if(n){const t=new n(e.reason);this.receiver.reject(t)}}}},99951:(e,t,i)=>{"use strict";var n,s;i.d(t,{e:()=>s,g:()=>n}),function(e){e.CONNECT="postmessage.connect"}(n||(n={})),function(e){e.HANDSHAKE="postmessage.handshake",e.ACCEPT="postmessage.accept",e.REJECT="postmessage.reject"}(s||(s={}))},14895:(e,t,i)=>{"use strict";i.d(t,{g:()=>s});var n=i(99951);class s{constructor(e,t,i,s,a){this.type=n.e.ACCEPT,this.payload={scriptUrl:e,interface:t,sourceId:i,targetId:s,targetOrigin:a},this.interface=t}}},82655:(e,t,i)=>{"use strict";i.d(t,{S:()=>s});var n=i(99951);class s{constructor(e,t={}){this.type=n.g.CONNECT,this.payload={bootstrapVersion:e,options:{auth:t.auth,provider:t.provider,sdkType:t.sdkType},applicationKey:t.applicationKey}}}},15690:(e,t,i)=>{"use strict";i.d(t,{R:()=>s});var n=i(99951);class s{constructor(){this.type=n.e.HANDSHAKE,this.payload={}}}},52294:(e,t,i)=>{"use strict";i.d(t,{v:()=>s});var n=i(99951);class s{constructor(e){this.type=n.e.REJECT,this.payload={reason:e.message,errorType:e.type},this.reason=e.message}}},29237:(e,t,i)=>{"use strict";i.d(t,{L0:()=>V,Vm:()=>W,ET:()=>B,CF:()=>s,Gj:()=>q,r9:()=>Z,Bb:()=>j,WN:()=>F,co:()=>Y,V_:()=>$,CP:()=>z,dP:()=>X,O0:()=>Q,mS:()=>G,gW:()=>a,x$:()=>K,Pv:()=>J,d_:()=>U});var n,s,a,o,r,l,d,c,u,h,m,p,E,S,O,g,_,T,A,v,f,N=i(9139);i(77778);!function(e){e.EVENT="postmessage.event",e.RESPONSE="postmessage.response",e.OBSERVATION="postmessage.observation",e.COLLECTION_UPDATE="collection.updated",e.PRIVATE_MESSAGE="private.message"}(n||(n={})),function(e){e.ITEM_ADDED="collection.item.added",e.ITEM_REMOVED="collection.item.removed",e.ITEM_UPDATED="collection.item.updated",e.COLL_UPDATED="collection.coll.updated"}(s||(s={}));!function(e){e.DISCONNECT="sdk.client.disconnect",e.ACTION="postmessage.action",e.EVENT_SUB="postmessage.subscribe",e.EVENT_UNSUB="postmessage.unsubscribe",e.OBSERVABLE_SUB="postmessage.observe",e.OBSERVABLE_UNSUB="postmessage.unobserve",e.COLLECTION_SUB="collection.sub",e.COLLECTION_UNSUB="collection.unsub",e.PRIVATE_MESSAGE="private.message"}(a||(a={}));!function(e){let t,i,n,s;!function(e){e.PHASE_CHANGE="application.phasechange"}(t=e.Event||(e.Event={})),function(e){e.UNINITIALIZED="appphase.uninitialized",e.WAITING="appphase.waiting",e.LOADING="appphase.loading",e.STARTING="appphase.starting",e.PLAYING="appphase.playing",e.ERROR="appphase.error"}(i=e.Phase||(e.Phase={})),function(e){e.UNKNOWN="application.unknown",e.WEBVR="application.webvr",e.SHOWCASE="application.showcase",e.WORKSHOP="application.workshop"}(n=e.Application||(e.Application={})),function(e){e.RoomBounds="feature.roombounds",e.Defurnish="feature.defurnish"}(s=e.Feature||(e.Feature={}))}(o||(o={})),function(e){let t,i,n;!function(e){e.MOVE="camera.move"}(t=e.Event||(e.Event={})),function(e){e.FORWARD="FORWARD",e.LEFT="LEFT",e.RIGHT="RIGHT",e.BACK="BACK",e.UP="UP",e.DOWN="DOWN"}(i=e.Direction||(e.Direction={})),function(e){e.INSTANT="transition.instant",e.FLY="transition.fly",e.FADEOUT="transition.fade",e.MOVEFADE="transition.movefade",e.ORBIT="transition.orbit"}(n=e.TransitionType||(e.TransitionType={}))}(r||(r={})),function(e){let t;!function(e){let t,i,n;!function(e){e.TO_API="coordinatesToAPI",e.TO_SDK="coordinatesToSDK"}(t=e.Coordinates||(e.Coordinates={})),function(e){e.TO_API="sweepRotationToAPI",e.TO_SDK="sweepRotationToSDK"}(i=e.SweepRotation||(e.SweepRotation={})),function(e){e.TO_API="cameraRotationToAPI",e.TO_SDK="cameraRotationToSDK"}(n=e.CameraRotation||(e.CameraRotation={}))}(t=e.TransformType||(e.TransformType={}))}(l||(l={})),function(e){let t;!function(e){e.CHANGE_START="floors.changestart",e.CHANGE_END="floors.changeend"}(t=e.Event||(e.Event={}))}(d||(d={})),function(e){let t;!function(e){e.SUCCESS="astar.status.success",e.NO_PATH="astar.status.no_path",e.TIMEOUT="astar.status.timeout",e.NO_START_VERTEX="astar.status.no_start",e.NO_END_VERTEX="astar.status.no_end"}(t=e.AStarStatus||(e.AStarStatus={}))}(c||(c={})),function(e){let t;!function(e){e.POSITION_UPDATED="label.positionupdated"}(t=e.Event||(e.Event={}))}(u||(u={})),function(e){let t,i,n;!function(e){e.WINDOW="link.creationpolicy.window",e.REFERRER="link.creationpolicy.referrer",e.MATTERPORT="link.creationpolicy.matterport"}(t=e.CreationPolicy||(e.CreationPolicy={})),function(e){e.DEFAULT="link.openpolicy.default",e.NEW_WINDOW="link.openpolicy.newwindow",e.SAME_FRAME="link.openpolicy.sameframe",e.CURRENT_WINDOW="link.openpolicy.current"}(i=e.OpenPolicy||(e.OpenPolicy={})),function(e){e.DEFAULT="link.destination.default",e.MATTERPORT="link.destination.matterport"}(n=e.DestinationPolicy||(e.DestinationPolicy={}))}(h||(h={})),function(e){let t,i,n,s;e.Transition=r.TransitionType,function(e){e.NAVIGATION="tag.link.nav",e.MODEL="tag.link.model",e.EXT_LINK="tag.link.ext"}(t=e.LinkType||(e.LinkType={})),function(e){e.NONE="tag.chunk.none",e.TEXT="tag.chunk.text",e.LINK="tag.chunk.link"}(i=e.DescriptionChunkType||(e.DescriptionChunkType={})),function(e){e.HOVER="tag.hover",e.CLICK="tag.click",e.LINK_OPEN="tag.linkopen"}(n=e.Event||(e.Event={})),function(e){e.NONE="mattertag.media.none",e.PHOTO="mattertag.media.photo",e.VIDEO="mattertag.media.video",e.RICH="mattertag.media.rich"}(s=e.MediaType||(e.MediaType={}))}(m||(m={})),function(e){let t,i;!function(e){e.INSIDE="mode.inside",e.OUTSIDE="mode.outside",e.DOLLHOUSE="mode.dollhouse",e.FLOORPLAN="mode.floorplan",e.TRANSITIONING="mode.transitioning"}(t=e.Mode||(e.Mode={})),function(e){e.CHANGE_START="viewmode.changestart",e.CHANGE_END="viewmode.changeend"}(i=e.Event||(e.Event={})),e.TransitionType=r.TransitionType}(p||(p={})),function(e){let t;!function(e){e.MODEL_LOADED="model.loaded"}(t=e.Event||(e.Event={}))}(E||(E={})),function(e){let t;!function(e){e.NONE="intersectedobject.none",e.MODEL="intersectedobject.model",e.TAG="intersectedobject.tag",e.SWEEP="intersectedobject.sweep",e.UNKNOWN="intersectedobject.unknown"}(t=e.Colliders||(e.Colliders={}))}(S||(S={})),function(e){let t,i;!function(e){e.CAMERA="sensor.sensortype.camera"}(t=e.SensorType||(e.SensorType={})),function(e){e.SPHERE="sensor.sourcetype.sphere",e.BOX="sensor.sourcetype.box",e.CYLINDER="sensor.sourcetype.cylinder"}(i=e.SourceType||(e.SourceType={}))}(O||(O={})),function(e){let t,i,n;!function(e){e.ENTER="sweep.enter",e.EXIT="sweep.exit"}(t=e.Event||(e.Event={})),e.Transition=r.TransitionType,function(e){e.ALIGNED="aligned",e.UNALIGNED="unaligned"}(i=e.Alignment||(e.Alignment={})),function(e){e.UNPLACED="unplaced",e.AUTO="auto",e.MANUAL="manual"}(n=e.Placement||(e.Placement={}))}(g||(g={})),function(e){let t;!function(e){e.UNKNOWN="tag.attachment.unknown",e.APPLICATION="tag.attachment.application",e.AUDIO="tag.attachment.audio",e.IMAGE="tag.attachment.image",e.MODEL="tag.attachment.model",e.PDF="tag.attachment.pdf",e.RICH="tag.attachment.rich",e.TEXT="tag.attachment.text",e.VIDEO="tag.attachment.video",e.ZIP="tag.attachment.zip",e.SANDBOX="tag.attachment.sandbox"}(t=e.AttachmentType||(e.AttachmentType={}))}(_||(_={})),function(e){let t,i;!function(e){e.STARTED="tour.started",e.STOPPED="tour.stopped",e.ENDED="tour.ended",e.STEPPED="tour.stepped"}(t=e.Event||(e.Event={})),function(e){e.INACTIVE="tour.inactive",e.ACTIVE="tour.active",e.STOP_SCHEDULED="tour.stopscheduled"}(i=e.PlayState||(e.PlayState={}))}(T||(T={})),function(e){let t,i;!function(e){e.BASE="viewtype.base",e.LAYERED_BASE="viewtype.layeredbase",e.USER="viewtype.user",e.DEFURNISH="viewtype.defurnish",e.OTHER="viewtype.other"}(t=e.ViewType||(e.ViewType={})),function(e){e.BASE="layertype.base",e.VIEW_DATA="layertype.viewdata",e.USER="layertype.user",e.IN_MEMORY="layertype.inmemory",e.OTHER="layertype.other"}(i=e.LayerType||(e.LayerType={}))}(A||(A={})),function(e){let t,i,n;!function(e){e.OBJ_LOADER="mp.objLoader",e.FBX_LOADER="mp.fbxLoader",e.DAE_LOADER="mp.daeLoader",e.GLTF_LOADER="mp.gltfLoader",e.SCROLLING_TUBE="mp.scrollingTube",e.TRANSFORM_CONTROLS="mp.transformControls",e.LIGHTS_COMPONENT="mp.lights",e.POINT_LIGHT="mp.pointLight",e.DIRECTIONAL_LIGHT="mp.directionalLight",e.AMBIENT_LIGHT="mp.ambientLight",e.CAMERA="mp.camera",e.INPUT="mp.input",e.XR="mp.xr"}(t=e.Component||(e.Component={})),function(e){e.CLICK="INTERACTION.CLICK",e.HOVER="INTERACTION.HOVER",e.DRAG="INTERACTION.DRAG",e.DRAG_BEGIN="INTERACTION.DRAG_BEGIN",e.DRAG_END="INTERACTION.DRAG_END",e.POINTER_MOVE="INTERACTION.POINTER_MOVE",e.POINTER_BUTTON="INTERACTION.POINTER_BUTTON",e.SCROLL="INTERACTION.SCROLL",e.KEY="INTERACTION.KEY",e.LONG_PRESS_START="INTERACTION.LONG_PRESS_START",e.LONG_PRESS_END="INTERACTION.LONG_PRESS_END",e.MULTI_SWIPE="INTERACTION.MULTI_SWIPE",e.MULTI_SWIPE_END="INTERACTION.MULTI_SWIPE_END",e.PINCH="INTERACTION.PINCH",e.PINCH_END="INTERACTION.PINCH_END",e.ROTATE="INTERACTION.ROTATE",e.ROTATE_END="INTERACTION.ROTATE_END"}(i=e.InteractionType||(e.InteractionType={})),function(e){e.INPUT="input",e.OUTPUT="output",e.EVENT="event",e.EMIT="emit"}(n=e.PathType||(e.PathType={}))}(v||(v={})),function(e){let t;!function(e){e.ON="on",e.OFF="off"}(t=e.Visibility||(e.Visibility={}))}(f||(f={}));Math.PI;p.Mode.DOLLHOUSE,new Float32Array(16);var I=i(9130);I.E.Success,c.AStarStatus.SUCCESS,I.E.NoPath,c.AStarStatus.NO_PATH,I.E.Timeout,c.AStarStatus.TIMEOUT;var L,R,y,b,D,M=i(51219),P=function(e,t,i,n){if("a"===i&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===i?n:"a"===i?n.call(e):n?n.value:t.get(e)},k=function(e,t,i,n,s){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!s)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!s:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?s.call(e,i):s?s.value=i:t.set(e,i),i};L=new WeakMap,R=new WeakMap,y=new WeakMap,b=new WeakMap,D=new WeakMap;var w;Symbol.iterator;!function(e){e.SETUP="sandbox.setup",e.TO_SANDBOX="sandbox.to.sandbox",e.TO_CLIENT="sandbox.to.client"}(w||(w={}));var C;!function(e){e.map=new Map}(C||(C={}));new WeakMap,new WeakMap,new WeakMap,Symbol.iterator;var x;!function(e){e.ADD="view.add.layer",e.REMOVE="view.remove.layer"}(x||(x={}));new WeakMap,new WeakMap,new WeakMap;new WeakMap;new WeakMap,new WeakMap,new WeakMap;const H=new N.Vy("SDK client");"undefined"!=typeof __SDK_CLIENT_VERSION__&&H.info("Showcase SDK client version:",__SDK_CLIENT_VERSION__);class U{constructor(e,t,i,s){this.type=n.RESPONSE,this.payload={uid:e,message:t,success:i,error:s},this.uid=e,this.message=t,this.success=i,this.error=s}}class F{constructor(e,t){this.type=n.EVENT,this.payload={eventType:e,eventData:t},this.eventType=e,this.eventData=t}}class G{constructor(e,t){this.type=n.OBSERVATION,this.payload={observableKey:e,observableData:t}}}class V{constructor(e,t,i,s){this.type=n.COLLECTION_UPDATE,this.payload={operation:e,collectionKey:t,collectionIndex:i,item:s}}}class W{constructor(e,t,i){this.type=n.COLLECTION_UPDATE,this.payload={operation:e,collectionKey:t,collectionIndex:i}}}class B{constructor(e,t,i,s){this.type=n.COLLECTION_UPDATE,this.payload={operation:e,collectionKey:t,collectionIndex:i,item:s}}}class j{constructor(e,t){this.type=n.COLLECTION_UPDATE,this.payload={operation:e,collectionKey:t}}}class K{constructor(e,t){this.type=n.PRIVATE_MESSAGE,this.payload={messageType:e,messagePayload:t}}}class z{constructor(e,t){this.receiver=e,this.clientInfo=t,this.messageType=a.ACTION}notify(e){this.receiver.onActionReceived(e,this.clientInfo)}}class Y{constructor(e,t){this.observer=e,this.clientInfo=t,this.messageType=a.EVENT_SUB}notify(e){this.observer.onEventSubReceived(e,this.clientInfo)}}class ${constructor(e,t){this.observer=e,this.clientInfo=t,this.messageType=a.EVENT_UNSUB}notify(e){this.observer.onEventUnsubReceived(e,this.clientInfo)}}class X{constructor(e,t){this.observer=e,this.clientInfo=t,this.messageType=a.OBSERVABLE_SUB}notify(e){this.observer.onObservableSubReceived(e,this.clientInfo)}}class Q{constructor(e,t){this.observer=e,this.clientInfo=t,this.messageType=a.OBSERVABLE_UNSUB}notify(e){this.observer.onObservableUnsubReceived(e,this.clientInfo)}}class q{constructor(e,t){this.observer=e,this.clientInfo=t,this.messageType=a.COLLECTION_SUB}notify(e){this.observer.onCollectionSubReceived(e,this.clientInfo)}}class Z{constructor(e,t){this.observer=e,this.clientInfo=t,this.messageType=a.COLLECTION_UNSUB}notify(e){this.observer.onCollectionUnsubReceived(e,this.clientInfo)}}class J{constructor(e,t){this.observer=e,this.clientInfo=t,this.messageType=a.PRIVATE_MESSAGE}notify(e){this.observer.onPrivateMessageReceived(e,this.clientInfo)}}},41465:(e,t,i)=>{"use strict";i.d(t,{g:()=>n});class n{constructor(e){this.messageReceiver=e}notify(e,t){this.messageReceiver.onMessageReceived(e,t)}}},22519:(e,t,i)=>{"use strict";i.d(t,{e:()=>o});var n=i(41465),s=i(77778);class a{listen(){}stopListening(){}send(){throw Error("The sdk has been disconnected and can't make any new calls")}}class o{constructor(e,t,i){this.sourceId=e,this.targetId=t,this.messageBridge=i,this.observers=new s.kc}static toFilteredMessenger(e,t,i){const n=new r(e.sourceId,e.targetId,e,t);for(const t of i)for(const i of e.observers.getValuesAtKey(t))n.addObserver(i);return n}init(){const e=new class{constructor(e){this.messenger=e}onMessageReceived(e,t){this.messenger.onMessageReceived(e,t)}}(this),t=new n.g(e);this.messageBridge.listen(t)}dispose(){this.messageBridge.stopListening(),this.messageBridge=new a}addObserver(e){this.observers.add(e.messageType,e)}removeObserver(e){this.observers.remove(e.messageType,e)}send(e){const t=this.sourceId,i=this.targetId;this.messageBridge.send(Object.assign(Object.assign({},e),{fromId:t,toId:i,timestamp:Date.now()}))}onMessageReceived(e,t){if(!this.filterMessageId(e))return;const i=e.type,n=this.observers.getValuesAtKey(i);if(n)for(const i of n){const n=e.payload||e;i.notify(n,t,e.timestamp)}}filterMessageId(e){const t=e.toId,i=e.fromId;return t instanceof Array?t.indexOf(this.sourceId)>-1:(void 0===t||t===this.sourceId)&&i===this.targetId}}class r extends o{constructor(e,t,i,n){super(e,t,new a),this.messenger=i,this.sendFilter=n,this.errorBridge=new a}send(e){this.sendFilter.includes(e.type)?this.messenger.send(e):this.errorBridge.send()}}},21713:(e,t,i)=>{"use strict";i.d(t,{Z:()=>a});var n=i(41465),s=i(77778);class a{constructor(e,t){this.sourceId=e,this.listenerBridge=t,this.observers=new s.kc}init(){const e=new class{constructor(e){this.messenger=e}onMessageReceived(e,t){this.messenger.onMessageReceived(e,t)}}(this),t=new n.g(e);this.listenerBridge.listen(t)}dispose(){this.listenerBridge.stopListening()}addObserver(e){this.observers.add(e.messageType,e)}removeObserver(e){this.observers.remove(e.messageType,e)}send(e,t,i,n){i.send(Object.assign(Object.assign({},e),{fromId:this.sourceId,toId:t,timestamp:Date.now()}),n)}onMessageReceived(e,t){const i=e.type,n=this.observers.getValuesAtKey(i);if(n)for(const i of n){const n=e.payload||e;i.notify(n,t,e.timestamp)}}}},55723:(e,t,i)=>{"use strict";i.d(t,{Z:()=>a});var n=i(22519);class s{constructor(e,t){this.source=e,this.target=t,this.messageObserver=null}listen(e){this.messageObserver||(this.messageObserver=e,this.source.addObserver(e))}stopListening(){this.messageObserver&&this.source.removeObserver(this.messageObserver)}send(e){const t=this.target;t&&t.post(Object.assign({},e),this.source)}}class a{constructor(e,t,i,n){this.sourceId=e,this.sourceNode=t,this.targetId=i,this.targetNode=n}createMessenger(){const e=new s(this.sourceNode,this.targetNode);return new n.e(this.sourceId,this.targetId,e)}}},93527:(e,t,i)=>{"use strict";i.d(t,{F:()=>n});class n{constructor(e){this.origin=e,this.observers=new Set}addObserver(e){this.observers.add(e)}removeObserver(e){this.observers.delete(e)}post(e,t){for(const i of this.observers)i.notify(e,t)}}},80279:(e,t,i)=>{"use strict";i.d(t,{d:()=>n});class n{constructor(e){this.targetNode=e,this.messageObserver=null,this.onMessage=(e,t)=>{this.messageObserver&&this.messageObserver.notify({payload:Object.assign({},e.payload),type:e.type},{id:e.fromId,source:t},e.timestamp)}}listen(e){this.messageObserver||(this.messageObserver=e,this.targetNode.addObserver({notify:(e,t)=>{this.onMessage(e,t)}}))}stopListening(){this.messageObserver=null}}},33049:(e,t,i)=>{"use strict";i.d(t,{Y:()=>o});var n=i(22519),s=i(69991);class a{constructor(e,t,i="*"){this.sourceWindow=e,this.listener=new s.m(e),this.sender=new s.d(t,i)}listen(e){this.listener.listen(e)}stopListening(){this.listener.stopListening()}send(e){this.sender.send(e,this.sourceWindow)}}class o{constructor(e,t,i,n,s="*"){this.sourceId=e,this.sourceWindow=t,this.targetId=i,this.targetWindow=n,this.targetOrigin=s}createMessenger(){const e=new a(this.sourceWindow,this.targetWindow,this.targetOrigin);return new n.e(this.sourceId,this.targetId,e)}}},69991:(e,t,i)=>{"use strict";i.d(t,{d:()=>s,m:()=>n});class n{constructor(e){this.targetWindow=e,this.messageObserver=null,this.onMessage=e=>{if(this.messageObserver){const t=e.data;this.messageObserver.notify(Object.assign({},t),{id:t.fromId,origin:e.origin,source:e.source},e.data.timestamp)}}}listen(e){this.messageObserver||(this.messageObserver=e,this.targetWindow.addEventListener("message",this.onMessage))}stopListening(){this.targetWindow.removeEventListener("message",this.onMessage),this.messageObserver=null}}class s{constructor(e,t="*"){this.targetWindow=e,this.targetOrigin=t}send(e,t){this.targetWindow.postMessage(e,this.targetOrigin)}}},71397:(e,t,i)=>{"use strict";var n;i.d(t,{D:()=>n}),function(e){e[e.BACKSPACE=8]="BACKSPACE",e[e.TAB=9]="TAB",e[e.RETURN=13]="RETURN",e[e.SHIFT=16]="SHIFT",e[e.CONTROL=17]="CONTROL",e[e.ALT=18]="ALT",e[e.ESCAPE=27]="ESCAPE",e[e.SPACE=32]="SPACE",e[e.HASH=35]="HASH",e[e.LEFTARROW=37]="LEFTARROW",e[e.UPARROW=38]="UPARROW",e[e.RIGHTARROW=39]="RIGHTARROW",e[e.DOWNARROW=40]="DOWNARROW",e[e.DELETE=46]="DELETE",e[e.ZERO=48]="ZERO",e[e.ONE=49]="ONE",e[e.TWO=50]="TWO",e[e.THREE=51]="THREE",e[e.FOUR=52]="FOUR",e[e.FIVE=53]="FIVE",e[e.SIX=54]="SIX",e[e.SEVEN=55]="SEVEN",e[e.EIGHT=56]="EIGHT",e[e.NINE=57]="NINE",e[e.AT=64]="AT",e[e.A=65]="A",e[e.B=66]="B",e[e.C=67]="C",e[e.D=68]="D",e[e.E=69]="E",e[e.F=70]="F",e[e.G=71]="G",e[e.H=72]="H",e[e.I=73]="I",e[e.J=74]="J",e[e.K=75]="K",e[e.L=76]="L",e[e.M=77]="M",e[e.N=78]="N",e[e.O=79]="O",e[e.P=80]="P",e[e.Q=81]="Q",e[e.R=82]="R",e[e.S=83]="S",e[e.T=84]="T",e[e.U=85]="U",e[e.V=86]="V",e[e.W=87]="W",e[e.X=88]="X",e[e.Y=89]="Y",e[e.Z=90]="Z",e[e.L_META=91]="L_META",e[e.R_META=93]="R_META",e[e.SEMICOLON=186]="SEMICOLON",e[e.PLUSEQUALS=187]="PLUSEQUALS",e[e.COMMA=188]="COMMA",e[e.DASHUNDERSCORE=189]="DASHUNDERSCORE",e[e.PERIOD=190]="PERIOD",e[e.OPENBRACKET=219]="OPENBRACKET"}(n||(n={}))},39803:(e,t,i)=>{"use strict";i.d(t,{t:()=>n});class n{constructor(e){if(this.values=new Map,e)for(const[t,i]of e)for(const[e,n]of i)this.set(t,e,n)}set(e,t,i){this.getValuesAtKey(e).set(t,i)}delete(e,t){const i=this.values.get(e);null==i||i.delete(t)}removeKey(e){this.values.delete(e)}getValuesAtKey(e){const t=this.values.get(e)||new Map;return this.values.set(e,t),t}valuesPerKey(e){return this.getValuesAtKey(e).size}get(e,t){var i;return null===(i=this.values.get(e))||void 0===i?void 0:i.get(t)}get keys(){return this.values.keys()}hasKey(e){return this.values.has(e)}has(e,t){var i;return!!(null===(i=this.values.get(e))||void 0===i?void 0:i.has(t))}*[Symbol.iterator](){for(const[e,t]of this.values)for(const[i,n]of t)yield[e,i,n]}}},77778:(e,t,i)=>{"use strict";i.d(t,{kc:()=>n,j6:()=>s,kG:()=>a});class n{constructor(){this.values={}}add(e,t){this.getValuesAtKey(e).push(t)}remove(e,t){const i=this.values[e];if(i){const e=i.indexOf(t);e>-1&&i.splice(e,1)}}removeKey(e){delete this.values[e]}getValuesAtKey(e){const t=this.values[e]||[];return this.values[e]=t,t}valuesPerKey(e){return this.getValuesAtKey(e).length}find(e,t){return this.values[e]&&this.values[e].find(t)}get keys(){return Object.keys(this.values)}hasKey(e){return e in this.values}has(e,t){return this.hasKey(e)&&this.values[e].includes(t)}*[Symbol.iterator](){for(const e in this.values)for(const t of this.values[e])yield[e,t]}}i(39803);class s{constructor(){this.values=new Map}add(e,t){this.getValuesAtKey(e).add(t)}remove(e,t){const i=this.values.get(e);null==i||i.delete(t)}removeKey(e){this.values.delete(e)}getValuesAtKey(e){const t=this.values.get(e)||new Set;return this.values.set(e,t),t}valuesPerKey(e){return this.getValuesAtKey(e).size}get keys(){return this.values.keys()}hasKey(e){return this.values.has(e)}has(e,t){var i;return!!(null===(i=this.values.get(e))||void 0===i?void 0:i.has(t))}*[Symbol.iterator](){for(const[e,t]of this.values)for(const i of t)yield[e,i]}}class a extends Map{constructor(e,t){super(t),this.getDefault=e}get(e){return super.get(e)||this.getDefault()}}},25481:(e,t,i)=>{"use strict";function n(e){return"number"==typeof e&&!isNaN(e)}i.d(t,{Et:()=>n})},48059:(e,t,i)=>{"use strict";function n(e){return!!e&&"object"==typeof e}i.d(t,{G:()=>n})},10833:(e,t,i)=>{"use strict";function n(e){return"string"==typeof e}i.d(t,{K:()=>n})},86867:(e,t,i)=>{"use strict";function n(e,t){return Object.values(e).includes(t)}i.d(t,{U:()=>n})},81557:e=>{e.exports="precision highp float;precision highp int;vec3 closestPointToRay(vec3 point,vec3 origin,vec3 direction){vec3 d=point-origin;float D=dot(d,direction);return origin+D*direction;}vec3 rayIntersectsSphere(vec3 origin,float radius,vec3 rayOrigin,vec3 rayDirection){vec3 chordPoint=closestPointToRay(origin,rayOrigin,rayDirection);float D1=length(rayOrigin-chordPoint);float D=length(chordPoint-origin);float D2=sqrt(radius*radius-D*D);return rayOrigin+(D1+D2)*rayDirection;}uniform float opacity;uniform vec3 color;uniform sampler2D bg;varying vec2 vUv;\n#ifdef FADE_DEPTH\nvarying vec3 vWorldPos;\n#endif\n#ifdef FADE_DEPTH\nuniform vec2 screenSize;uniform float pixelRatio;uniform sampler2D depthTex;uniform float fadeMaxDepth;float sample_depth(){vec2 frameBufferSize=screenSize*pixelRatio;vec2 screenUv=gl_FragCoord.xy/frameBufferSize;vec2 onePx=1./frameBufferSize;float nearestDepth=texture2D(depthTex,screenUv).r*fadeMaxDepth;return nearestDepth;}float calcDepthFadeOpacity(float currDepth){float nearestDepth=sample_depth();float behindDepth=max(currDepth-nearestDepth,0.);float depthFadeStartDist=FADE_DEPTH;float depthFadeEndDist=FADE_DEPTH+FADE_WIDTH;float depthFadeT=clamp((behindDepth-depthFadeStartDist)/(depthFadeEndDist-depthFadeStartDist),0.,1.);float depthFadeOpacity=1.-mix(0.,1.,depthFadeT);return depthFadeOpacity;}\n#endif\nvoid main(){vec4 bgColor=texture2D(bg,vUv);float depthFadeOpacity=1.;\n#ifdef FADE_DEPTH\nfloat distanceFromCamera=length(cameraPosition-vWorldPos);depthFadeOpacity=calcDepthFadeOpacity(distanceFromCamera);\n#endif\nfloat finalOpacity=depthFadeOpacity*bgColor.a*opacity;gl_FragColor=linearToOutputTexel(vec4(bgColor.rgb,finalOpacity));}"},228:e=>{e.exports="precision highp float;precision highp int;vec3 closestPointToRay(vec3 point,vec3 origin,vec3 direction){vec3 d=point-origin;float D=dot(d,direction);return origin+D*direction;}vec3 rayIntersectsSphere(vec3 origin,float radius,vec3 rayOrigin,vec3 rayDirection){vec3 chordPoint=closestPointToRay(origin,rayOrigin,rayDirection);float D1=length(rayOrigin-chordPoint);float D=length(chordPoint-origin);float D2=sqrt(radius*radius-D*D);return rayOrigin+(D1+D2)*rayDirection;}uniform vec3 diffuse;uniform float opacity;uniform sampler2D mask;\n#ifdef USE_DASH\nuniform float dashSize;uniform float gapSize;\n#endif\nvarying float vLineDistance;\n#include \nvarying vec2 vUv;\n#ifdef FADE_DEPTH\nvarying vec3 vWorldPos;\n#endif\n#ifdef FADE_DEPTH\nuniform vec2 screenSize;uniform float pixelRatio;uniform sampler2D depthTex;uniform float fadeMaxDepth;float sample_depth(){vec2 frameBufferSize=screenSize*pixelRatio;vec2 screenUv=gl_FragCoord.xy/frameBufferSize;vec2 onePx=1./frameBufferSize;float nearestDepth=texture2D(depthTex,screenUv).r*fadeMaxDepth;return nearestDepth;}float calcDepthFadeOpacity(float currDepth){float nearestDepth=sample_depth();float behindDepth=max(currDepth-nearestDepth,0.);float depthFadeStartDist=FADE_DEPTH;float depthFadeEndDist=FADE_DEPTH+FADE_WIDTH;float depthFadeT=clamp((behindDepth-depthFadeStartDist)/(depthFadeEndDist-depthFadeStartDist),0.,1.);float depthFadeOpacity=1.-mix(0.,1.,depthFadeT);return depthFadeOpacity;}\n#endif\nvoid main(){\n#ifdef USE_DASH\nif(vUv.y<-1.||vUv.y>1.)discard;if(mod(vLineDistance,dashSize+gapSize)>dashSize)discard;\n#endif\nfloat depthFadeOpacity=1.;\n#ifdef FADE_DEPTH\nfloat distanceFromCamera=length(cameraPosition-vWorldPos);depthFadeOpacity=calcDepthFadeOpacity(distanceFromCamera);\n#endif\nfloat finalOpacity=depthFadeOpacity*opacity;\n#ifdef USE_MASK\nvec2 modUv=vec2(vUv);modUv*=2.;vec4 texelColor=texture2D(mask,modUv);gl_FragColor=linearToOutputTexel(vec4(texelColor.rgb,min(texelColor.a,finalOpacity)));\n#else\ngl_FragColor=linearToOutputTexel(vec4(diffuse,finalOpacity));\n#endif\n}"},33326:e=>{e.exports="precision highp float;precision highp int;\n#include \nuniform float linewidth;uniform vec2 resolution;attribute vec3 instanceStart;attribute vec3 instanceEnd;attribute vec3 instanceColorStart;attribute vec3 instanceColorEnd;varying vec2 vUv;\n#ifdef USE_DASH\nuniform float dashScale;attribute float instanceDistanceStart;attribute float instanceDistanceEnd;varying float vLineDistance;\n#endif\nuniform mat4 cameraMatrix;uniform mat4 inverseProjectionMatrix;varying vec3 vWorldPos;vec3 unproject(vec4 pos){vec4 v=cameraMatrix*inverseProjectionMatrix*pos;return vec3(v.xyz/v.w);}void trimSegment(const in vec4 start,inout vec4 end){float a=projectionMatrix[2][2];float b=projectionMatrix[3][2];float nearEstimate=-0.5*b/a;float alpha=(nearEstimate-start.z)/(end.z-start.z);end.xyz=mix(start.xyz,end.xyz,alpha);}void main(){\n#ifdef USE_COLOR\nvColor.xyz=(position.y<0.5)?instanceColorStart:instanceColorEnd;\n#endif\n#ifdef USE_DASH\nvLineDistance=(position.y<0.5)?dashScale*instanceDistanceStart:dashScale*instanceDistanceEnd;\n#endif\nfloat aspect=resolution.x/resolution.y;vUv=uv;vec4 start=modelViewMatrix*vec4(instanceStart,1.);vec4 end=modelViewMatrix*vec4(instanceEnd,1.);bool perspective=(projectionMatrix[2][3]==-1.);if(perspective){if(start.z<0.&&end.z>=0.){trimSegment(start,end);}else if(end.z<0.&&start.z>=0.){trimSegment(end,start);}}vec4 clipStart=projectionMatrix*start;vec4 clipEnd=projectionMatrix*end;vec2 ndcStart=clipStart.xy/clipStart.w;vec2 ndcEnd=clipEnd.xy/clipEnd.w;vec2 dir=ndcEnd-ndcStart;dir.x*=aspect;dir=normalize(dir);vec2 offset=vec2(dir.y,-dir.x);dir.x/=aspect;offset.x/=aspect;if(position.x<0.)offset*=-1.;offset*=linewidth;offset/=resolution.y;vec4 clip=(position.y<0.5)?clipStart:clipEnd;\n#ifdef USE_MASK\noffset*=(clipEnd.w+clipStart.w)*0.5;\n#else\noffset*=clip.w;\n#endif\nclip.xy+=offset;gl_Position=clip;vWorldPos=unproject(gl_Position);\n#include \n}"},47107:e=>{e.exports="precision highp float;uniform vec3 color;uniform float antialiasWidth;uniform float lineWidth;uniform float dashed;uniform float dashSize;uniform float gapSize;uniform float globalOpacity;uniform float transitionType;uniform float transitionProgress;varying float vDistanceFromAxis;varying float vDistanceAlong;varying float vDistanceAlongPct;varying float vOpacity;\n#if defined(FADE_DISTANCE_FROM_CAMERA) || defined(FADE_DEPTH)\nvarying vec3 vWorldPos;\n#endif\n#ifdef FADE_DEPTH\nuniform vec2 screenSize;uniform float pixelRatio;uniform sampler2D depthTex;uniform float fadeMaxDepth;float sample_depth(){vec2 frameBufferSize=screenSize*pixelRatio;vec2 screenUv=gl_FragCoord.xy/frameBufferSize;vec2 onePx=1./frameBufferSize;float nearestDepth=texture2D(depthTex,screenUv).r*fadeMaxDepth;return nearestDepth;}float calcDepthFadeOpacity(float currDepth){float nearestDepth=sample_depth();float behindDepth=max(currDepth-nearestDepth,0.);float depthFadeStartDist=FADE_DEPTH;float depthFadeEndDist=FADE_DEPTH+FADE_WIDTH;float depthFadeT=clamp((behindDepth-depthFadeStartDist)/(depthFadeEndDist-depthFadeStartDist),0.,1.);float depthFadeOpacity=1.-mix(0.,1.,depthFadeT);return depthFadeOpacity;}\n#endif\nvoid main(){float halfWidth=lineWidth*0.5;float antialiasing=1.-smoothstep(halfWidth,halfWidth+antialiasWidth,vDistanceFromAxis);float dashOpacity=1.;float cameraDistanceFadeOpacity=1.;\n#if defined(FADE_DISTANCE_FROM_CAMERA) || defined(FADE_DEPTH)\nfloat distanceFromCamera=length(cameraPosition-vWorldPos);\n#endif\nfloat transitionOpacity=1.;if(dashed>0.){\n#ifdef WORLDSPACE_DASH\nfloat dashAA=fwidth(vDistanceAlong)*antialiasWidth*0.5;\n#else\nfloat dashAA=antialiasWidth*0.5;\n#endif\nfloat dashT=mod(vDistanceAlong,dashSize+gapSize);dashOpacity=smoothstep(0.,dashAA,dashT)*(1.-smoothstep(dashSize-dashAA,dashSize,dashT));}if(abs(transitionType)>0.){float progress=transitionProgress;float fadeWidth=0.3;float minOffset=0.;float maxOffset=fadeWidth;if(transitionType<0.){progress=1.-progress;minOffset=-fadeWidth;maxOffset=0.;}transitionOpacity=1.-smoothstep(progress+minOffset,progress+maxOffset,vDistanceAlongPct);}\n#ifdef FADE_DISTANCE_FROM_CAMERA\nfloat fadeStartDist=FADE_DISTANCE_FROM_CAMERA-1.;float fadeEndFist=FADE_DISTANCE_FROM_CAMERA+1.;float fadeT=clamp((distanceFromCamera-fadeStartDist)/(fadeEndFist-fadeStartDist),0.,1.);cameraDistanceFadeOpacity=1.-mix(0.,1.,fadeT);\n#endif\nfloat depthFadeOpacity=1.;\n#ifdef FADE_DEPTH\ndepthFadeOpacity=calcDepthFadeOpacity(distanceFromCamera);\n#endif\nfloat fadeAlongOpacity=1.;\n#ifdef FADE_START_ALONG_PCT\nfadeAlongOpacity=1.-smoothstep(FADE_START_ALONG_PCT,1.,vDistanceAlongPct);\n#endif\ngl_FragColor=linearToOutputTexel(vec4(color,globalOpacity*dashOpacity*antialiasing*vOpacity*cameraDistanceFadeOpacity*depthFadeOpacity*transitionOpacity*fadeAlongOpacity));}"},88705:e=>{e.exports="precision highp float;uniform vec2 screenSize;vec2 rotate90(vec2 v){return vec2(-v.y,v.x);}vec2 ndcToScreen(vec4 pt){return(vec2(pt.x,pt.y)+vec2(1.,1.))*screenSize/2.;}vec2 screenToNdc(vec2 pt){return(pt*2./screenSize)-vec2(1.,1.);}uniform float lineWidth;uniform float antialiasWidth;uniform vec3 translationOffset;attribute float offsetDirection;attribute vec3 start;attribute vec3 end;attribute float t;attribute float opacity;varying float vDistanceFromAxis;varying float vDistanceAlong;varying float vDistanceAlongPct;varying float vOpacity;\n#if defined(FADE_DISTANCE_FROM_CAMERA) || defined(FADE_DEPTH)\nvarying vec3 vWorldPos;\n#endif\nvoid main(){vOpacity=opacity;vec3 offsetStart=start+translationOffset;vec3 offsetEnd=end+translationOffset;vec4 startNdc=projectionMatrix*modelViewMatrix*vec4(offsetStart,1.);vec4 endNdc=projectionMatrix*modelViewMatrix*vec4(offsetEnd,1.);vec2 startScreen=ndcToScreen(startNdc/startNdc.w);vec2 endScreen=ndcToScreen(endNdc/endNdc.w);float halfWidth=lineWidth*0.5+antialiasWidth;vec2 directionScreen=endScreen-startScreen;vec2 widthOffsetScreen=rotate90(normalize(directionScreen))*offsetDirection*halfWidth;vec2 centerlinePos=startScreen+directionScreen*t;vec2 position=centerlinePos+widthOffsetScreen*1.3;\n#if defined(FADE_DISTANCE_FROM_CAMERA) || defined(FADE_DEPTH)\nvec3 worldPos=offsetStart+(offsetEnd-offsetStart)*t;vWorldPos=worldPos;\n#endif\nvDistanceFromAxis=length(widthOffsetScreen);float clippedT=length(centerlinePos-startScreen)/length(directionScreen);\n#ifdef WORLDSPACE_DASH\nvDistanceAlong=length((offsetEnd-offsetStart)*clippedT);\n#else\nvDistanceAlong=length(directionScreen*clippedT);\n#endif\nvDistanceAlongPct=clamp(clippedT,0.,1.);float z=mix(startNdc.z,endNdc.z,clippedT);float w=mix(startNdc.w,endNdc.w,clippedT);vec2 posNdc=screenToNdc(position);gl_Position=vec4(posNdc*w,z,w);}"},94857:e=>{e.exports="precision highp float;precision highp int;vec3 closestPointToRay(vec3 point,vec3 origin,vec3 direction){vec3 d=point-origin;float D=dot(d,direction);return origin+D*direction;}vec3 rayIntersectsSphere(vec3 origin,float radius,vec3 rayOrigin,vec3 rayDirection){vec3 chordPoint=closestPointToRay(origin,rayOrigin,rayDirection);float D1=length(rayOrigin-chordPoint);float D=length(chordPoint-origin);float D2=sqrt(radius*radius-D*D);return rayOrigin+(D1+D2)*rayDirection;}\n#ifdef INSTANCED\nvarying float alpha;varying vec3 color;\n#else\nuniform float alpha;uniform vec3 color;\n#endif\nuniform sampler2D bg;uniform sampler2D mask;varying vec2 vUv;varying vec4 vMaskRect;varying float vStrokeWidth;varying vec3 vWorldPos;\n#ifdef FADE_DEPTH\nuniform vec2 screenSize;uniform float pixelRatio;uniform sampler2D depthTex;uniform float fadeMaxDepth;float sample_depth(){vec2 frameBufferSize=screenSize*pixelRatio;vec2 screenUv=gl_FragCoord.xy/frameBufferSize;vec2 onePx=1./frameBufferSize;float nearestDepth=texture2D(depthTex,screenUv).r*fadeMaxDepth;return nearestDepth;}float calcDepthFadeOpacity(float currDepth){float nearestDepth=sample_depth();float behindDepth=max(currDepth-nearestDepth,0.);float depthFadeStartDist=FADE_DEPTH;float depthFadeEndDist=FADE_DEPTH+FADE_WIDTH;float depthFadeT=clamp((behindDepth-depthFadeStartDist)/(depthFadeEndDist-depthFadeStartDist),0.,1.);float depthFadeOpacity=1.-mix(0.,1.,depthFadeT);return depthFadeOpacity;}\n#endif\nfloat ring(vec2 pos,float radius,float thick){return mix(1.,0.,smoothstep(thick,thick+(thick*0.5),abs(length(vUv-pos)-radius)));}vec4 crop(vec4 texColor,vec2 xy,float size){texColor*=step(size,1.-xy.x);texColor*=step(size,xy.x);texColor*=step(size,1.-xy.y);texColor*=step(size,xy.y);return texColor;}vec2 center=vec2(0.5,0.5);void main(){vec4 bgColor=texture2D(bg,vUv);float depthFadeOpacity=1.;\n#ifdef FADE_DEPTH\nfloat distanceFromCamera=length(cameraPosition-vWorldPos);depthFadeOpacity=calcDepthFadeOpacity(distanceFromCamera);\n#endif\nfloat finalOpacity=bgColor.a*alpha*depthFadeOpacity;if(finalOpacity<0.1){discard;}float iconScale=1.75;vec2 maskUV=mix(vMaskRect.xy,vMaskRect.zw,(vUv-0.5)*iconScale+0.5);vec4 maskColor=texture2D(mask,maskUV);maskColor.rgb=vec3(1.);float padding=0.22;maskColor=crop(maskColor,vUv,padding);vec3 mappedColor=mix(color,maskColor.rgb,maskColor.a);const vec3 frameColor=vec3(1.,1.,1.);float frame=ring(center,0.5,vStrokeWidth);mappedColor=mix(mappedColor,frameColor,frame);gl_FragColor=linearToOutputTexel(vec4(mappedColor,finalOpacity));}"},59039:e=>{e.exports="precision highp float;precision highp int;attribute vec4 instanceMaskRect;attribute float instanceStrokeWidth;varying vec2 vUv;varying vec4 vMaskRect;varying float vStrokeWidth;varying vec3 vWorldPos;\n#ifdef INSTANCED\nattribute float instanceAlpha;varying float alpha;varying vec3 color;\n#endif\nvoid main(){vUv=uv;vMaskRect=instanceMaskRect;vStrokeWidth=instanceStrokeWidth;\n#ifdef INSTANCED\nalpha=instanceAlpha;color=instanceColor;vWorldPos=(modelMatrix*instanceMatrix*vec4(position,1.)).xyz;gl_Position=projectionMatrix*modelViewMatrix*instanceMatrix*vec4(position,1.);\n#else\nvWorldPos=(modelMatrix*vec4(position,1.)).xyz;gl_Position=projectionMatrix*modelViewMatrix*vec4(position,1.);\n#endif\n}"},45550:e=>{e.exports="precision highp float;precision highp int;vec3 closestPointToRay(vec3 point,vec3 origin,vec3 direction){vec3 d=point-origin;float D=dot(d,direction);return origin+D*direction;}vec3 rayIntersectsSphere(vec3 origin,float radius,vec3 rayOrigin,vec3 rayDirection){vec3 chordPoint=closestPointToRay(origin,rayOrigin,rayDirection);float D1=length(rayOrigin-chordPoint);float D=length(chordPoint-origin);float D2=sqrt(radius*radius-D*D);return rayOrigin+(D1+D2)*rayDirection;}uniform float haloWidth;uniform float strokeWidth;uniform sampler2D mask;uniform vec4 maskRect;varying vec2 vUv;float ring(float startR,float endR){float dist=length(vUv)/2.;float aa=fwidth(dist)*0.5;return min(smoothstep(startR-aa,startR+aa,dist),smoothstep(endR+aa,endR-aa,dist));}void main(){float alpha=ring(0.,0.5)*0.1;float iconScale=1.75;vec2 maskUV=mix(maskRect.xy,maskRect.zw,vUv/2.*iconScale+0.5);maskUV=clamp(maskUV,maskRect.xy,maskRect.zw);alpha=max(alpha,texture2D(mask,maskUV).a*0.5);alpha=max(alpha,ring(0.5-strokeWidth,0.5)*0.5);alpha=max(alpha,ring(0.5,0.5+haloWidth)*0.3);gl_FragColor=linearToOutputTexel(vec4(1.,1.,1.,alpha));}"},98840:e=>{e.exports="precision highp float;precision highp int;uniform float haloWidth;varying vec2 vUv;void main(){float scale=1.+2.*haloWidth;vUv=((uv*2.)-1.)*scale;gl_Position=projectionMatrix*modelViewMatrix*vec4(position*scale,1.);gl_Position.z*=1.00001;}"},2834:e=>{e.exports="precision highp float;precision highp int;vec3 closestPointToRay(vec3 point,vec3 origin,vec3 direction){vec3 d=point-origin;float D=dot(d,direction);return origin+D*direction;}vec3 rayIntersectsSphere(vec3 origin,float radius,vec3 rayOrigin,vec3 rayDirection){vec3 chordPoint=closestPointToRay(origin,rayOrigin,rayDirection);float D1=length(rayOrigin-chordPoint);float D=length(chordPoint-origin);float D2=sqrt(radius*radius-D*D);return rayOrigin+(D1+D2)*rayDirection;}\n#ifdef INSTANCED\nvarying float alpha;\n#else\nuniform float alpha;\n#endif\nvarying vec3 vWorldPos;\n#ifdef FADE_DEPTH\nuniform vec2 screenSize;uniform float pixelRatio;uniform sampler2D depthTex;uniform float fadeMaxDepth;float sample_depth(){vec2 frameBufferSize=screenSize*pixelRatio;vec2 screenUv=gl_FragCoord.xy/frameBufferSize;vec2 onePx=1./frameBufferSize;float nearestDepth=texture2D(depthTex,screenUv).r*fadeMaxDepth;return nearestDepth;}float calcDepthFadeOpacity(float currDepth){float nearestDepth=sample_depth();float behindDepth=max(currDepth-nearestDepth,0.);float depthFadeStartDist=FADE_DEPTH;float depthFadeEndDist=FADE_DEPTH+FADE_WIDTH;float depthFadeT=clamp((behindDepth-depthFadeStartDist)/(depthFadeEndDist-depthFadeStartDist),0.,1.);float depthFadeOpacity=1.-mix(0.,1.,depthFadeT);return depthFadeOpacity;}\n#endif\nvoid main(){float depthFadeOpacity=1.;\n#ifdef FADE_DEPTH\nfloat distanceFromCamera=length(cameraPosition-vWorldPos);depthFadeOpacity=calcDepthFadeOpacity(distanceFromCamera);\n#endif\ngl_FragColor=linearToOutputTexel(vec4(1.,1.,1.,alpha*depthFadeOpacity));}"},65388:e=>{e.exports="precision highp float;precision highp int;uniform vec2 resolution;\n#ifdef INSTANCED\nattribute vec3 stemVector;attribute vec4 pinHeadMatrixCol0;attribute vec4 pinHeadMatrixCol1;attribute vec4 pinHeadMatrixCol2;attribute vec4 pinHeadMatrixCol3;attribute float instanceAlpha;varying float alpha;\n#else\nuniform mat4 pinHeadMatrix;\n#endif\n#define PI 3.1415926538\nuniform mat4 cameraMatrix;uniform mat4 inverseProjectionMatrix;varying vec3 vWorldPos;vec3 unproject(vec4 pos){vec4 v=cameraMatrix*inverseProjectionMatrix*pos;return vec3(v.xyz/v.w);}void main(){\n#ifdef INSTANCED\nvec3 pos=position*stemVector;mat4 modelViewProjMatrix=projectionMatrix*modelViewMatrix*instanceMatrix;mat4 pinHeadMatrix=mat4(pinHeadMatrixCol0,pinHeadMatrixCol1,pinHeadMatrixCol2,pinHeadMatrixCol3);alpha=instanceAlpha;\n#else\nvec3 pos=position;mat4 modelViewProjMatrix=projectionMatrix*modelViewMatrix;\n#endif\nvec3 fromOrigin=(vec3(0.,0.,0.)-pos);if(length(fromOrigin)<1e-6){gl_Position=modelViewProjMatrix*vec4(pos,1.);}else{mat4 noteViewProj=projectionMatrix*viewMatrix*pinHeadMatrix;vec4 noteNDC=noteViewProj*vec4(0.,0.,0.,1.);noteNDC.xyz/=abs(noteNDC.w);vec4 discEdgeNDC=noteViewProj*vec4(0.5,0.,0.,1.);discEdgeNDC.xyz/=abs(discEdgeNDC.w);float noteSizeNDC=length(discEdgeNDC.xy-noteNDC.xy);vec4 anchorNDC=modelViewProjMatrix*vec4(0.,0.,0.,1.);anchorNDC.xyz/=abs(anchorNDC.w);vec4 vectorNDC=modelViewProjMatrix*vec4(pos,1.);vectorNDC.xyz/=abs(vectorNDC.w);vectorNDC-=anchorNDC;float lineLengthNDC=length(vectorNDC.xy);float vertDot=abs(dot(normalize(vectorNDC.xy),vec2(0,1)));float angle=acos(vertDot)/(PI/2.);float aspect=mix(resolution.x/resolution.y,1.,angle);vec2 vector2d=normalize(vectorNDC.xy)*max(lineLengthNDC-noteSizeNDC*aspect,0.);vectorNDC.xy=vector2d.xy;vectorNDC+=anchorNDC;gl_Position=vec4(vectorNDC.xyz,1.);}vWorldPos=unproject(gl_Position);}"},74869:e=>{e.exports="precision highp float;precision highp int;vec3 closestPointToRay(vec3 point,vec3 origin,vec3 direction){vec3 d=point-origin;float D=dot(d,direction);return origin+D*direction;}vec3 rayIntersectsSphere(vec3 origin,float radius,vec3 rayOrigin,vec3 rayDirection){vec3 chordPoint=closestPointToRay(origin,rayOrigin,rayDirection);float D1=length(rayOrigin-chordPoint);float D=length(chordPoint-origin);float D2=sqrt(radius*radius-D*D);return rayOrigin+(D1+D2)*rayDirection;}varying vec2 vUv;uniform sampler2D tDiffuse;\n#ifdef INSTANCED\nvarying float alpha;\n#else\nuniform float alpha;\n#endif\nvoid main(){vec4 texColor=texture2D(tDiffuse,vUv);gl_FragColor=linearToOutputTexel(vec4(texColor.rgb,texColor.a*alpha));}"},8203:e=>{e.exports="precision highp float;precision highp int;\n#ifdef INSTANCED\nattribute float instanceAlpha;varying float alpha;\n#endif\nvarying vec2 vUv;varying vec3 vWorldPos;void main(){vUv=uv;\n#ifdef INSTANCED\nmat4 mvp=projectionMatrix*modelViewMatrix*instanceMatrix;alpha=instanceAlpha;\n#else\nmat4 mvp=projectionMatrix*modelViewMatrix;\n#endif\ngl_Position=mvp*vec4(position,1.);vWorldPos=(modelMatrix*vec4(position,1.)).xyz;}"},67422:e=>{e.exports="precision highp float;precision highp int;vec3 closestPointToRay(vec3 point,vec3 origin,vec3 direction){vec3 d=point-origin;float D=dot(d,direction);return origin+D*direction;}vec3 rayIntersectsSphere(vec3 origin,float radius,vec3 rayOrigin,vec3 rayDirection){vec3 chordPoint=closestPointToRay(origin,rayOrigin,rayDirection);float D1=length(rayOrigin-chordPoint);float D=length(chordPoint-origin);float D2=sqrt(radius*radius-D*D);return rayOrigin+(D1+D2)*rayDirection;}uniform vec3 color;uniform float opacity;void main(){gl_FragColor=linearToOutputTexel(vec4(color,opacity));}"},87208:e=>{e.exports="precision highp float;precision highp int;void main(){gl_Position=vec4(position,1.);}"},44664:e=>{e.exports="precision highp float;precision highp int;varying vec3 pos;uniform float radius;uniform float innerRadius;uniform float centerRadius;uniform float opacity;uniform vec3 angleColor;uniform float minA;uniform float minB;uniform float maxA;uniform float maxB;const float PI=3.141592653589793;void main(){float d=length(pos);if(d>radius||(dcenterRadius)){discard;}float ang=atan(pos.z,pos.x);vec3 color=angleColor;if((dminA&&angminB&&ang{e.exports="precision highp float;precision highp int;varying vec3 pos;void main(){pos=position;gl_Position=projectionMatrix*modelViewMatrix*vec4(position,1.);}"},71285:e=>{e.exports="precision highp float;precision highp int;vec3 closestPointToRay(vec3 point,vec3 origin,vec3 direction){vec3 d=point-origin;float D=dot(d,direction);return origin+D*direction;}vec3 rayIntersectsSphere(vec3 origin,float radius,vec3 rayOrigin,vec3 rayDirection){vec3 chordPoint=closestPointToRay(origin,rayOrigin,rayDirection);float D1=length(rayOrigin-chordPoint);float D=length(chordPoint-origin);float D2=sqrt(radius*radius-D*D);return rayOrigin+(D1+D2)*rayDirection;}uniform float opacity;uniform vec3 tint;uniform float discRadius;uniform vec3 discNormal;uniform mat4 projectionMatrix;uniform mat4 viewMatrixInverse;uniform mat4 projectionMatrixInverse;varying vec3 vFragWorldPos;varying vec3 vCenterWorldPos;\n#ifdef USE_TEXTURE\nuniform sampler2D texImg;\n#else\nuniform vec2 ringRadii[RING_COUNT];uniform vec4 ringColors[RING_COUNT];\n#endif\nfloat rayDistToPlane(vec3 rayOrigin,vec3 rayDir,vec3 planeOrigin,vec3 planeNormal){float planeConstant=-dot(planeOrigin,planeNormal);float denom=dot(planeNormal,rayDir);return denom==0.?-1e9:-(dot(rayOrigin,planeNormal)+planeConstant)/denom;}vec4 getColorAtRay(vec3 rayOrigin,vec3 rayDir){vec4 color=vec4(0.);float intersectDist=rayDistToPlane(rayOrigin,rayDir,vCenterWorldPos,discNormal);vec3 intersect=rayOrigin+rayDir*intersectDist;\n#ifdef USE_TEXTURE\nif(intersectDist>0.){vec3 cameraDir=normalize((viewMatrixInverse*vec4(0.,0.,-1.,0.)).xyz);vec3 stableDir=abs(dot(cameraDir,discNormal))>0.8?normalize(cameraDir*vec3(1.,0.,1.))*sign(discNormal.y):(viewMatrixInverse*vec4(0.,1.,0.,0.)).xyz;vec3 xAxis=normalize(cross(stableDir,discNormal));vec3 yAxis=normalize(cross(discNormal,xAxis));intersect-=vCenterWorldPos;vec2 uv=vec2(dot(xAxis,intersect),dot(yAxis,intersect))/discRadius/2.+0.5;if(clamp(uv,vec2(0.),vec2(1.))==uv){color=texture2D(texImg,uv);}}\n#else\nfloat fragRadius=intersectDist>0.?distance(intersect,vCenterWorldPos):1e9;if(fragRadius<=discRadius*2.){for(int i=0;i= 300\nfloat delta=length(vec2(dFdx(fragRadius),dFdy(fragRadius)))*0.70710678;ringColor.a*=smoothstep(-delta,delta,ringDist);\n#else\nringColor.a*=step(0.,ringDist);\n#endif\nfloat finalAlpha=color.a+ringColor.a*(1.-color.a);color=finalAlpha>0.?vec4((color.rgb*color.a+ringColor.rgb*ringColor.a*(1.-color.a))/finalAlpha,finalAlpha):color;}}\n#endif\ncolor.rgb*=tint;if(dot(rayDir,discNormal)>=0.){color.a=0.;}return color;}void main(){vec4 fragNDC=projectionMatrix*viewMatrix*vec4(vFragWorldPos,1.);vec4 nearWorldPos=viewMatrixInverse*projectionMatrixInverse*vec4(fragNDC.xy,-1.,1.);nearWorldPos/=nearWorldPos.w;gl_FragColor=linearToOutputTexel(getColorAtRay(nearWorldPos.xyz,normalize(vFragWorldPos-nearWorldPos.xyz)));gl_FragColor.a*=opacity;if(gl_FragColor.a==0.){discard;}}"},99691:e=>{e.exports="precision highp float;precision highp int;varying vec3 vCenterWorldPos;varying vec3 vFragWorldPos;void main(){vCenterWorldPos=(modelMatrix*vec4(0.,0.,0.,1.)).xyz;vFragWorldPos=(modelMatrix*vec4(position,1.)).xyz;gl_Position=projectionMatrix*modelViewMatrix*vec4(position,1.);}"},27024:e=>{e.exports="precision highp float;precision highp int;vec3 closestPointToRay(vec3 point,vec3 origin,vec3 direction){vec3 d=point-origin;float D=dot(d,direction);return origin+D*direction;}vec3 rayIntersectsSphere(vec3 origin,float radius,vec3 rayOrigin,vec3 rayDirection){vec3 chordPoint=closestPointToRay(origin,rayOrigin,rayDirection);float D1=length(rayOrigin-chordPoint);float D=length(chordPoint-origin);float D2=sqrt(radius*radius-D*D);return rayOrigin+(D1+D2)*rayDirection;}uniform float opacity;\n#ifdef FADE_DEPTH\nvarying float vDepthFadeOpacity;\n#endif\nvarying vec3 vColor;void main(){float finalOpacity=opacity;\n#ifdef FADE_DEPTH\nfinalOpacity=min(finalOpacity,vDepthFadeOpacity);\n#endif\nvec3 finalColor=vColor;gl_FragColor=linearToOutputTexel(vec4(finalColor,finalOpacity));}"},28058:e=>{e.exports="precision highp float;precision highp int;\n#ifdef FADE_DEPTH\nvarying float vDepthFadeOpacity;\n#endif\n#ifdef FADE_DEPTH\nuniform sampler2D depthTex;uniform float fadeMaxDepth;uniform vec3 anchorPos;float sample_depth(){const float sampleScale=0.5;const vec3 sampleVertices[5]=vec3[5](vec3(0.,0.,0.),vec3(-0.5,-0.5,0.),vec3(-0.5,0.5,0.),vec3(0.5,0.5,0.),vec3(0.5,-0.5,0.));float avgDepth=0.;for(int i=0;i<5;i++){vec4 anchorNDC=projectionMatrix*modelViewMatrix*vec4(sampleVertices[i]*sampleScale,1.);vec2 screenUv=(anchorNDC.xy/anchorNDC.w+vec2(1.,1.))/2.;float nearestDepth=texture2D(depthTex,screenUv).r*fadeMaxDepth;avgDepth+=nearestDepth;}avgDepth/=5.;return avgDepth;}float calcDepthFadeOpacity(float currDepth){float nearestDepth=sample_depth();float behindDepth=max(currDepth-nearestDepth,0.);float depthFadeStartDist=FADE_DEPTH;float depthFadeEndDist=FADE_DEPTH+FADE_WIDTH;float depthFadeT=clamp((behindDepth-depthFadeStartDist)/(depthFadeEndDist-depthFadeStartDist),0.,1.);float depthFadeOpacity=1.-mix(0.,1.,depthFadeT);return depthFadeOpacity;}float calcDepthFadeOpacityVertex(){float currDepth=length(cameraPosition-anchorPos);return calcDepthFadeOpacity(currDepth);}\n#endif\nuniform vec3 diffuse;varying vec3 vColor;void main(){\n#ifdef FADE_DEPTH\nvDepthFadeOpacity=calcDepthFadeOpacityVertex();\n#endif\nvColor=diffuse;gl_Position=projectionMatrix*modelViewMatrix*vec4(position,1.);\n#ifdef FADE_DEPTH\nif(vDepthFadeOpacity<0.1){gl_Position=vec4(-100.);}\n#endif\n}"},10086:e=>{"use strict";e.exports="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQyIiBoZWlnaHQ9IjE0MiIgdmlld0JveD0iMCAwIDE0MiAxNDIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik04MiA4Mi41MDAxQzg1LjMzMzMgODIuMTY2NyA5Mi4zIDgyLjgwMDEgOTMuNSA4OC4wMDAxTTYwLjUgODIuMDczM0M1Ny4xNjY3IDgxLjc0IDUwLjIgODIuMzczMyA0OSA4Ny41NzMzTTM0Ljc2NjggNjcuMzI3NUMzNC43NjY4IDY3LjMyNzUgMzQuNzczIDY0LjgwOTQgMzcuMjg5IDY0LjgxNTZDMzkuODA5MSA2NC44MjM4IDM5LjgwMDkgNjcuMzQxOSAzOS44MDA5IDY3LjM0MTlMMzkuNzYxOCA3OS4wMjU3QzQwLjE2MjcgNzguODQwNyA0MC41ODIgNzguNjc0MiA0MS4wMjE5IDc4LjUzMDNMNDEuMDczMyA2Mi4zMTRDNDEuMDczMyA2Mi4zMTQgNDEuMDgxNSA1OS43OTYgNDMuNTk1NCA1OS44MDQyQzQ2LjExMTQgNTkuODEwMyA0Ni4xMDUzIDYyLjMzMDUgNDYuMTA1MyA2Mi4zMzA1TDQ2LjA2MjEgNzcuNTgyN0M0Ni40NzEyIDc3LjU0NTcgNDYuODkyNSA3Ny41MTY5IDQ3LjMxNiA3Ny40OTYzTDQ3LjM3MzUgNTkuODE0NUM0Ny4zNzM1IDU5LjgxNDUgNDcuMzc5NyA1Ny4yOTY0IDQ5Ljg5NzggNTcuMzA2N0M1Mi40MTU4IDU3LjMxNDkgNTIuNDA1NSA1OS44MzI5IDUyLjQwNTUgNTkuODMyOUw1Mi4zNDggNzcuNTEwN0M1Mi43Nzk3IDc3LjUzNTQgNTMuMTk0OSA3Ny41Nzg2IDUzLjYxMDEgNzcuNjE3Nkw1My42NjE1IDYxLjA5M0M1My42NjE1IDYxLjA5MyA1My42Njk3IDU4LjU3NDkgNTYuMTgzNyA1OC41ODUyQzU4LjY5OTcgNTguNTkxNCA1OC42ODk0IDYxLjEwNzQgNTguNjg5NCA2MS4xMDc0TDU4LjY0IDc4LjU4MTdMNTguNjMzOSA3OS45ODE1VjgxLjIzNzRMNTkuODg3OCA4Mi41MDM3TDYzLjU4OTggNzMuODk1QzYzLjU4OTggNzMuODk1IDY0LjQwMTggNzEuNTEyNiA2Ni43ODgzIDcyLjMyODdDNjkuMTY4NiA3My4xMzQ0IDY4LjM2MDggNzUuNTIxIDY4LjM2MDggNzUuNTIxTDY2LjUyNTIgODEuOTAzNUM2NS43OTc1IDg0LjQ0IDY1LjExNzEgODYuOTkzIDY0Ljc1OTQgODkuNTk5NEM2My43MzU4IDk2Ljk2NjYgNTcuMzk4NSAxMDIuNjMyIDQ5Ljc1NTkgMTAyLjYxMUM0MS40MjA3IDEwMi41NzYgMzQuNjc4NCA5NS43OTY5IDM0LjcwNTIgODcuNDYxN0MzNC43MDYgODcuMjc4NyAzNC43MDkzIDg2LjE5OTYgMzQuNzA5MyA4Ni4xOTk2TDM0Ljc2NjggNjcuMzI3NVpNMTA3LjIxMyA2Ny4zMjc1QzEwNy4yMTMgNjcuMzI3NSAxMDcuMjA3IDY0LjgwOTQgMTA0LjY5MSA2NC44MTU2QzEwMi4xNzEgNjQuODIzOCAxMDIuMTc3IDY3LjM0MTkgMTAyLjE3NyA2Ny4zNDE5TDEwMi4yMTYgNzkuMDI1N0MxMDEuODE3IDc4Ljg0MDcgMTAxLjM5NiA3OC42NzQyIDEwMC45NTggNzguNTMwM0wxMDAuOTA2IDYyLjMxNEMxMDAuOTA2IDYyLjMxNCAxMDAuODk4IDU5Ljc5NiA5OC4zODQyIDU5LjgwNDJDOTUuODY2MSA1OS44MTAzIDk1Ljg3MjMgNjIuMzMwNSA5NS44NzIzIDYyLjMzMDVMOTUuOTE3NSA3Ny41ODI3Qzk1LjUxMDUgNzcuNTQ1NyA5NS4wODkxIDc3LjUxNjkgOTQuNjYzNiA3Ny40OTYzTDk0LjYwODIgNTkuODE0NUM5NC42MDgyIDU5LjgxNDUgOTQuNTk5OSA1Ny4yOTY0IDkyLjA4MTkgNTcuMzA2N0M4OS41NjM4IDU3LjMxNDkgODkuNTc0MSA1OS44MzI5IDg5LjU3NDEgNTkuODMyOUw4OS42MzE2IDc3LjUxMDdDODkuMiA3Ny41MzU0IDg4Ljc4NDggNzcuNTc4NiA4OC4zNjk1IDc3LjYxNzZMODguMzE4MSA2MS4wOTNDODguMzE4MSA2MS4wOTMgODguMzA3OSA1OC41NzQ5IDg1Ljc5MzkgNTguNTg1MkM4My4yNzc5IDU4LjU5MTQgODMuMjg4MiA2MS4xMDc0IDgzLjI4ODIgNjEuMTA3NEw4My4zMzc1IDc4LjU4MTdMODMuMzQzNyA3OS45ODE1VjgxLjIzNzRMODIuMDkxOSA4Mi41MDM3TDc4LjM4OTggNzMuODk1Qzc4LjM4OTggNzMuODk1IDc3LjU3OTkgNzEuNTEyNiA3NS4xOTE0IDcyLjMyODdDNzIuODEzMSA3My4xMzQ0IDczLjYxODkgNzUuNTIxIDczLjYxODkgNzUuNTIxTDc1LjQ1NDUgODEuOTAzNUM3Ni4xODIxIDg0LjQ0IDc2Ljg2MjUgODYuOTkzIDc3LjIyMDIgODkuNTk5NEM3OC4yNDM5IDk2Ljk2NjYgODQuNTc5MSAxMDIuNjMyIDkyLjIyMzcgMTAyLjYxMUMxMDAuNTU5IDEwMi41NzYgMTA3LjMwMyA5NS43OTY5IDEwNy4yNzQgODcuNDYxN0MxMDcuMjc0IDg3LjI3ODcgMTA3LjI3IDg2LjE5OTYgMTA3LjI3IDg2LjE5OTZMMTA3LjIxMyA2Ny4zMjc1WiIgc3Ryb2tlPSIjMjIyMjIyIiBzdHJva2Utd2lkdGg9IjIiLz4KPHBhdGggZD0iTTgyLjM4OTkgNTYuMjc0OEM4MS45NTIxIDU2LjI3NDggODEuNTA4MSA1Ni4xMzUgODEuMTM2IDU1Ljg0NzJDODAuMjM1NyA1NS4xNTI0IDgwLjA3MTMgNTMuODYxNiA4MC43NjYgNTIuOTYzM0w4Ni44ODk1IDQ1LjAzOTFDODcuNTc4MSA0NC4xNDI5IDg4Ljg3MzEgNDMuOTcwMiA4OS43NzE0IDQ0LjY2OTFDOTAuNjcxOCA0NS4zNjM5IDkwLjgzNjIgNDYuNjU0OCA5MC4xNDE0IDQ3LjU1MzFMODQuMDE3OSA1NS40NzcyQzgzLjYxNSA1Ni4wMDE0IDgzLjAwNjYgNTYuMjc0OCA4Mi4zODk5IDU2LjI3NDhaTTU5LjczNzcgNTYuMjc0OEM1OS4xMjMxIDU2LjI3NDggNTguNTE0NyA1NS45OTkzIDU4LjEwOTcgNTUuNDc1Mkw1MS45ODYyIDQ3LjU1MzFDNTEuMjkzNSA0Ni42NTQ4IDUxLjQ2IDQ1LjM2MzkgNTIuMzU4MyA0NC42NjkxQzUzLjI1NjUgNDMuOTc2NCA1NC41NDU0IDQ0LjE0MDggNTUuMjQyMiA0NS4wMzkxTDYxLjM2NTcgNTIuOTYzM0M2Mi4wNTg0IDUzLjg2MTYgNjEuODk0IDU1LjE1MjQgNjAuOTk1NyA1NS44NDcyQzYwLjYxOTUgNTYuMTM3MSA2MC4xNzc2IDU2LjI3NDggNTkuNzM3NyA1Ni4yNzQ4Wk03MS4wMDAxIDUyLjMzMzNDNjkuODY1NCA1Mi4zMzMzIDY4Ljk0NDUgNTEuNDEyNCA2OC45NDQ1IDUwLjI3NzhWNDIuMDU1NkM2OC45NDQ1IDQwLjkyMDkgNjkuODY1NCA0MCA3MS4wMDAxIDQwQzcyLjEzNjggNDAgNzMuMDU1NiA0MC45MjA5IDczLjA1NTYgNDIuMDU1NlY1MC4yNzc4QzczLjA1NTYgNTEuNDEyNCA3Mi4xMzY4IDUyLjMzMzMgNzEuMDAwMSA1Mi4zMzMzWiIgZmlsbD0iIzIyMjIyMiIvPgo8L3N2Zz4K"},28659:e=>{"use strict";e.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB3aWR0aD0iMTI3Ljk4MzI1bW0iCiAgIGhlaWdodD0iMTI1Ljg3MDg0bW0iCiAgIHZpZXdCb3g9IjAgMCAxMjcuOTgzMjUgMTI1Ljg3MDg0IgogICB2ZXJzaW9uPSIxLjEiCiAgIGlkPSJzdmczOSIKICAgc29kaXBvZGk6ZG9jbmFtZT0icm90YXRlLXBob25lLWZhbGxiYWNrLnN2ZyIKICAgaW5rc2NhcGU6dmVyc2lvbj0iMS4xLjIgKGI4ZTI1YmU4LCAyMDIyLTAyLTA1KSIKICAgeG1sbnM6aW5rc2NhcGU9Imh0dHA6Ly93d3cuaW5rc2NhcGUub3JnL25hbWVzcGFjZXMvaW5rc2NhcGUiCiAgIHhtbG5zOnNvZGlwb2RpPSJodHRwOi8vc29kaXBvZGkuc291cmNlZm9yZ2UubmV0L0RURC9zb2RpcG9kaS0wLmR0ZCIKICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8c29kaXBvZGk6bmFtZWR2aWV3CiAgICAgaWQ9Im5hbWVkdmlldzQxIgogICAgIHBhZ2Vjb2xvcj0iIzUwNTA1MCIKICAgICBib3JkZXJjb2xvcj0iI2VlZWVlZSIKICAgICBib3JkZXJvcGFjaXR5PSIxIgogICAgIGlua3NjYXBlOnBhZ2VzaGFkb3c9IjAiCiAgICAgaW5rc2NhcGU6cGFnZW9wYWNpdHk9IjAiCiAgICAgaW5rc2NhcGU6cGFnZWNoZWNrZXJib2FyZD0iMCIKICAgICBpbmtzY2FwZTpkb2N1bWVudC11bml0cz0ibW0iCiAgICAgc2hvd2dyaWQ9ImZhbHNlIgogICAgIGlua3NjYXBlOnNuYXAtcGFnZT0iZmFsc2UiCiAgICAgaW5rc2NhcGU6em9vbT0iMC4zMTUxMjI4MSIKICAgICBpbmtzY2FwZTpjeD0iMTc5LjI5NTE4IgogICAgIGlua3NjYXBlOmN5PSI4MDcuNjIxNjMiCiAgICAgaW5rc2NhcGU6d2luZG93LXdpZHRoPSIxODY0IgogICAgIGlua3NjYXBlOndpbmRvdy1oZWlnaHQ9IjEzODciCiAgICAgaW5rc2NhcGU6d2luZG93LXg9IjAiCiAgICAgaW5rc2NhcGU6d2luZG93LXk9IjI1IgogICAgIGlua3NjYXBlOndpbmRvdy1tYXhpbWl6ZWQ9IjAiCiAgICAgaW5rc2NhcGU6Y3VycmVudC1sYXllcj0ibGF5ZXIxIgogICAgIGZpdC1tYXJnaW4tdG9wPSIwIgogICAgIGZpdC1tYXJnaW4tbGVmdD0iMCIKICAgICBmaXQtbWFyZ2luLXJpZ2h0PSIwIgogICAgIGZpdC1tYXJnaW4tYm90dG9tPSIwIiAvPgogIDxkZWZzCiAgICAgaWQ9ImRlZnMzNiIgLz4KICA8ZwogICAgIGlua3NjYXBlOmxhYmVsPSJMYXllciAxIgogICAgIGlua3NjYXBlOmdyb3VwbW9kZT0ibGF5ZXIiCiAgICAgaWQ9ImxheWVyMSIKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNC4yOTI2NzM1LC00LjM5MzAzMTgpIj4KICAgIDxwYXRoCiAgICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjI2NDU4MyIKICAgICAgIGQ9Im0gNzIuODIwNTc2LDEyOC4yOTE4IGMgMTEuNzczNzksLTEuMDg5ODggMjEuODgzMTQsLTIuMDUzIDIyLjQ2NTIyLC0yLjE0MDI4IDIuNzI3MzIsLTAuNDA4OTEgNS41ODUwNTQsLTIuNDkxMTIgNi45MzU4NDQsLTUuMDUzNjIgMS42NTQ0MiwtMy4xMzg1MyAxLjkwMTYxLDAuOTY5MTcgLTMuMzYyNTI0LC01NS44NzY4NCAtMi42MjI4MSwtMjguMzIzMTM0IC00Ljg4OTU0LC01Mi4wODEwODggLTUuMDM3MTYsLTUyLjc5NTQ1MyAtMC40MjQwNiwtMi4wNTIwNjEgLTEuMTc3NjcsLTMuNDgzMTc4IC0yLjY1ODk4LC01LjA0OTQ0MyAtMS44Nzk1OCwtMS45ODczNzMgLTMuNzI1MjUsLTIuODM4OTAyIC02LjQ2MDUxLC0yLjk4MDY1NSAtMi4xODE4MiwtMC4xMTMwNyAtNDQuMzU4MzA4LDMuNjc5NjUyIC00Ni42ODc4ODgsNC4xOTg0MTMgLTMuNjY2OSwwLjgxNjU1NCAtNi42MTY4MSw0LjAxNTg5MyAtNy40Mjk1LDguMDU3NjkyIC0wLjI4NjMsMS40MjM4NzEgMC4xMzMwOSw2LjQwNzcwMiA0LjQ4NDkzLDUzLjI5Njc4NiAyLjc3MDM3LDI5Ljg0OTQ4IDQuOTYzNzUsNTIuMjg1NTUgNS4xODYxNCw1My4wNDg5NiAxLjI2OTk5LDQuMzU5NzEgNS4wMDQzNCw3LjI0MjM3IDkuNDEzMzksNy4yNjY0OSAwLjk1OTI4LDAuMDA1IDExLjM3NzI0OCwtMC44ODIxNyAyMy4xNTEwMzgsLTEuOTcyMDUgeiBtIC0yMy43MDQ1NjgsLTAuOTYwNTMgYyAtMC44MDAzNywtMC4wOTQgLTEuNzY5NCwtMC4yOTU5NSAtMi4xNTM0MiwtMC40NDg3NiAtMS42NjUxMiwtMC42NjI1OCAtMy42ODM1LC0zLjEzNTk2IC00LjAzNDA3LC00Ljk0MzQ4IC0wLjA4NDcsLTAuNDM2NTcgLTIuMzA2NDgsLTI0LjA0NCAtNC45MzczNywtNTIuNDYwOTcgLTQuNjUxMjQsLTUwLjIzOTQwNiAtNC43NzIwNCwtNTEuNzA2MzkzIC00LjM3MTI4LC01My4wODQ5NTcgMC41MzgyMSwtMS44NTEzOTUgMi4zMTU1MywtMy44NTE5NDQgNC4xMDY2NywtNC42MjI0NzIgMS4xNTI0MiwtMC40OTU3NTggNC4xNTk3MSwtMC44MzE3MSAyMi45NjAzODgsLTIuNTY0OTY5IDExLjkzMzE4LC0xLjEwMDEzNCAyMi41MzM0MiwtMS45NTc4ODIgMjMuNjM5NDMsLTEuOTEyODUgMS42ODU5NSwwLjA2ODY0IDIuMjEyNDIsMC4yMDkyMjIgMy4zMDcyOSwwLjg4MzEgMS40MjIzMSwwLjg3NTQxNiAyLjg2MzMsMi43NzY4NDQgMy4yNzEwNyw0LjMxNjI4NSAwLjM0Mzk4LDEuMjk4NTg5IDkuNTQwNDY0LDEwMS4yODQzMDMgOS41NDA0NjQsMTAzLjcyNTUwMyAwLDMuMjUwMzcgLTEuMzQxODg0LDUuMzM3MDggLTQuMjYyOTk0LDYuNjI5MjIgLTAuOTk3MjksMC40NDExNSAtNC42OTc5NiwwLjg1MTA3IC0yMi43Mzk2LDIuNTE4ODYgLTExLjg1MTY1LDEuMDk1NTggLTIxLjg0NjEwOCwyLjAyNDQ3IC0yMi4yMDk5MDgsMi4wNjQxOSAtMC4zNjM4MSwwLjAzOTcgLTEuMzE2MzEsLTAuMDA1IC0yLjExNjY3LC0wLjA5ODcgeiBtIDIzLjU0NzkxOCwtOS4xMDY2OSBjIDUuNzQ4MDcsLTAuNTE1OTQgMTAuNzE1NjUsLTEuMDQ4MDcgMTEuMDM5MDUsLTEuMTgyNTEgMC44NzI2MywtMC4zNjI3MyAxLjA2OTAxLC0xLjUwMTExIDAuMzc4MTQsLTIuMTkxOTkgbCAtMC41NTg1LC0wLjU1ODUgLTExLjkxMzY3LDEuMTAzNTIgYyAtNi41NTI1MiwwLjYwNjk0IC0xMi4xNTA4OCwxLjIzMDQ3IC0xMi40NDA4LDEuMzg1NjQgLTAuMzI5ODYsMC4xNzY1MyAtMC41MjU2MiwwLjU1MDkzIC0wLjUyMzA5LDEuMDAwNDEgMC4wMDcsMS4zMjg2NSAwLjU2NDk5LDEuNjgwNDMgMi4zNzcyLDEuNTAwMDQgMC42NTQ4NCwtMC4wNjUyIDUuODkzNTksLTAuNTQwNjYgMTEuNjQxNjcsLTEuMDU2NjEgeiBtIC04Ljc0ODQ5LC05OS4xOTMyMjIgYyAyLjg0NjU2LC0wLjI4NDQ4NyAzLjYyMzk1LC0wLjQ1MDA0NSAzLjkwMjYsLTAuODMxMTI3IDAuNDkzMywtMC42NzQ2MzIgMC40MzE5OCwtMS4yNzUwMzMgLTAuMTg3NSwtMS44MzU2NSAtMC41MDQxMywtMC40NTYyMzIgLTAuNzcxMjMsLTAuNDY1NTY5IC00LjU2NDA2LC0wLjE1OTU0NyAtMi4yMTU3MywwLjE3ODc3NCAtNC40MjIzMiwwLjM5MjkwNyAtNC45MDM1NCwwLjQ3NTg1NCAtMS41OTkzOCwwLjI3NTY3NyAtMi4xMzE1MiwyLjE5MjgxMyAtMC43NTU0MywyLjcyMTYxOCAwLjMxNDYyLDAuMTIwOSAxLjEwNzgyLDAuMTY2NzggMS43NjI2NywwLjEwMTk2IDAuNjU0ODQsLTAuMDY0OCAyLjc5MDIxLC0wLjI3NzcxOCA0Ljc0NTI2LC0wLjQ3MzEwOCB6IE0gMjcuMzI1NjQ4LDEwMC4yMjI2OSBjIDAuNTYyNDUsLTAuODU4NDEgMC4yNDY0LC0xLjkzNzk1IC0wLjcwMjcyLC0yLjQwMDMzIEMgMjYuMjYxMDQ4LDk3LjY0NjA3IDI0LjU5NTc0OCw5Ni44NDc2IDIyLjkyMjI1OCw5Ni4wNDggMTUuMDI1NDQ4LDkyLjI3NDg0IDkuODgwOTc4Miw4NS41NTcyOCA4LjIwMjc2ODIsNzYuODI3NTcgYyAtMC41MDMwOSwtMi42MTY5NyAtMC40ODYzMSwtNy44ODYwMiAwLjAzMzEsLTEwLjQwMDczIDEuMzM1MTUsLTYuNDYzODUgNC45Njk3ODk4LC0xMi4zMzI3ODUgOS45ODc4Mzk4LC0xNi4xMjc1NjUgMy42OTUyNiwtMi43OTQ0NSAzLjYwNDczLC0yLjg3NDE1IDEuNjIzNzgsMS40Mjk1MSAtMi43OTc4Nyw2LjA3ODQ4IC0zLjA2MDU4LDYuNzg0MDcgLTIuNzQ1MjUsNy4zNzMyNiAwLjU3MDI4LDEuMDY1NTg1IDIuMDA4NTMsMS4zODAzMzUgMi43MTMyMSwwLjU5Mzc1NSAwLjU1MTg1LC0wLjYxNTk4NSA3LjA3NTU0LC0xNC44MzcwMTUgNy4wNzU1NCwtMTUuNDI0MDA1IDAsLTAuMjUyMTggLTAuMjA4MzYsLTAuNzAxNzIgLTAuNDYzMDIsLTAuOTk4OTggLTAuNDc1OTcsLTAuNTU1NTY5IC0xNC43MjQ2MywtNy4xOTEwNjkgLTE1LjQ0MTY2LC03LjE5MTA2OSAtMS4yMDEwNTk4LDAgLTIuMDU4NTg5OCwyLjE2NTQzIC0xLjE1NDYyOTgsMi45MTU2NSAwLjIyMTc0OTgsMC4xODQwNCAyLjc5MTUwOTgsMS40MzQ4MiA1LjcxMDU3OTgsMi43Nzk1MSA0LjE3Mzk0LDEuOTIyNzQ5IDUuMjMyMDUsMi41MTAxNzkgNC45NTQ2MiwyLjc1MDYxOSAtMC4xOTQwMiwwLjE2ODE2IC0xLjI1OTUzLDAuODkyODUgLTIuMzY3OCwxLjYxMDQyIC02LjczOTI0LDQuMzYzNDMgLTExLjY0NTcxOTgsMTEuNjUyMjggLTEzLjM2NDg0OTgsMTkuODU0MjU1IC0wLjU3MjkxLDIuNzMzMzggLTAuNjM0OTUsOC4yNTQwNCAtMC4xMjQ3NCwxMS4wOTk5NSAxLjY3Mjg0LDkuMzMwODEgNy43NzI3ODk4LDE3LjYwMDM5IDE2LjEwNTE4OTgsMjEuODMzNDcgNC4yMjAzNywyLjE0NDA1IDUuODE5NDcsMi40NTkyMiA2LjU4MDk1LDEuMjk3MDcgeiBtIDk5LjMxMzI4MiwtNC42MDk3MSBjIDAuNzIwMTIsLTAuNzIwMTEgMC42NjkwNywtMS43NTIwOSAtMC4xMjE2OCwtMi40NjAwMiAtMC4zNTc5NiwtMC4zMjA0OCAtMi44NTgyNywtMS41ODUzMiAtNS41NTYyNSwtMi44MTA3OCAtMi42OTc5NywtMS4yMjU0NSAtNC45MDU0MSwtMi4zMTgzMiAtNC45MDU0MSwtMi40Mjg2IDAsLTAuMTEwMjcgMC45MjI3NCwtMC43NzI0OCAyLjA1MDUzLC0xLjQ3MTU2IDIuNDEyNTQsLTEuNDk1NDYgNy4zOTk2NiwtNi4zMzg2MiA4LjkxMjg3LC04LjY1NTU3IDIuMzI0NTIsLTMuNTU5MiAzLjkxNDQ2LC03LjQxNjc4IDQuODExNzUsLTExLjY3NDUxIDAuNTM4NTcsLTIuNTU1NTUgMC42MDAwMiwtNy45MjM5NTUgMC4xMjExNCwtMTAuNTgzMzI1IC0xLjgwNDAyLC0xMC4wMTgzOSAtNy44NDI5NSwtMTguMDk4ODk5IC0xNi44OTM3NiwtMjIuNjA1MDY5IC0zLjY0Mzg4LC0xLjgxNDIgLTUuMTYwNzcsLTIuMDE5NzEgLTUuODQ3MzksLTAuNzkyMjIgLTAuNzMxNCwxLjMwNzU2IC0wLjI4MDQ4LDEuOTA2OTQgMi4yNzQ2NSwzLjAyMzU1IDYuMTI1NzQsMi42NzY5OCAxMC4wMDMzNCw1LjkwNDc1IDEzLjIxMTM5LDEwLjk5NzMzOSAyLjYwOTc2LDQuMTQyODQgMy43OTcyMyw4LjEyNDU1IDMuOTg3NjYsMTMuMzcxMDcgMC4xOTUxMiw1LjM3NTY2NSAtMC41NzcyLDguODY3NDE1IC0zLjAxNjE2LDEzLjYzNjM4NSAtMS4yMTkzNCwyLjM4NDIxIC00LjYzOTU0LDYuNzQ0OTkgLTYuMjU4OSw3Ljk4MDEzIC0wLjUwOTcsMC4zODg3NiAtMS4wODU4NSwwLjg1NzY4IC0xLjI4MDM1LDEuMDQyMDQgLTAuNjc2NjksMC42NDE0MiAtMi42NTIxMSwxLjgyODE1IC0yLjc5ODg2LDEuNjgxNDEgLTAuMDgxMiwtMC4wODEyIDAuODgxOTEsLTIuMzY2NDcgMi4xNDAzNCwtNS4wNzgyOSAyLjA5Nzg3LC00LjUyMDc1IDIuMjYwNTYsLTQuOTg3OTMgMS45NTczMSwtNS42MjA2NCAtMC40ODk2MywtMS4wMjE1OSAtMS42MTA5MSwtMS4zMzQ1NyAtMi40NjI5OSwtMC42ODc0OSAtMC43NjM0NSwwLjU3OTc4IC03LjI1OTIzLDE0LjUwNDE1IC03LjI1OTIzLDE1LjU2MDkxIDAsMC4zMzc3NCAwLjIyNjIxLDAuODE4NzggMC41MDI2OSwxLjA2ODk4IDAuNzA2NzMsMC42Mzk1OSAxNC41ODE5OCw3LjAwNDc1IDE1LjMwNjE3LDcuMDIxNTkgMC4zMjc0MiwwLjAwOCAwLjgzMzQ0LC0wLjIyNDI4IDEuMTI0NDgsLTAuNTE1MzMgeiIKICAgICAgIGlkPSJwYXRoMTA5IgogICAgICAgc29kaXBvZGk6bm9kZXR5cGVzPSJzc3Nzc3Nzc3NzY2NzY3Nzc3Nzc3Nzc3Nzc3Njc3NzY3NzY3Nzc3Nzc3Nzc3Nzc2NzY3Nzc3Nzc3Nzc3Nzc2Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzY3MiIC8+CiAgPC9nPgo8L3N2Zz4K"},8241:(e,t,i)=>{"use strict";e.exports=i.p+"images/escape.png"},51:(e,t,i)=>{"use strict";e.exports=i.p+"images/headset-quest-2.png"},54322:(e,t,i)=>{"use strict";e.exports=i.p+"images/Desktop-help-play-button.svg"},28301:(e,t,i)=>{"use strict";e.exports=i.p+"images/Desktop-help-spacebar.png"},65224:(e,t,i)=>{"use strict";e.exports=i.p+"images/mattertag-disc-128-free.v1.png"},23672:(e,t,i)=>{"use strict";e.exports=i.p+"images/mobile-help-play-button.svg"},94246:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_360.png"},53228:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_click_inside.png"},99713:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_gesture_drag.png"},45894:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_gesture_drag.svg"},99484:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_gesture_drag_two_finger.png"},62979:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_gesture_drag_two_finger_rotate.svg"},40783:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_gesture_drag_two_finger_vert.svg"},13179:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_gesture_pinch.png"},58780:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_gesture_pinch.svg"},96558:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_gesture_position.png"},60497:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_gesture_position_two_finger.png"},50968:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_gesture_tap.png"},64727:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_gesture_tap.svg"},34715:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_inside_key.png"},64268:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_keyboard_all.png"},31873:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_keyboard_left_right.png"},88691:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_keyboard_up_down.png"},16391:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_mouse_click.png"},11400:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_mouse_click.svg"},61273:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_mouse_ctrl_click.png"},46997:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_mouse_drag_left.png"},2710:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_mouse_drag_right.png"},38826:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_mouse_drag_right_horiz.svg"},5293:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_mouse_drag_right_vert.svg"},56048:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_mouse_position_left.png"},45663:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_mouse_position_left.svg"},85893:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_mouse_position_right.png"},93582:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_mouse_zoom.png"},713:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_mouse_zoom.svg"},68117:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_tap_inside.png"},35235:(e,t,i)=>{"use strict";e.exports=i.p+"images/nav_help_zoom_keys.png"},68909:e=>{"use strict";e.exports=THREE},32244:e=>{"use strict";e.exports=JSON.parse('{"v":"4.8.0","meta":{"g":"LottieFiles AE 1.0.0","a":"","k":"","d":"","tc":""},"fr":60,"ip":0,"op":60,"w":876,"h":744,"nm":"Rating Modal","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Vector 2","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":0,"s":[0]},{"t":4,"s":[100]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"t":0,"s":[437.969,578.877,0],"to":[0,-8.167,0],"ti":[0,8.167,0]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"t":18,"s":[437.969,529.877,0],"to":[0,0,0],"ti":[0,0,0]},{"t":25,"s":[437.969,529.877,0]}],"ix":2},"a":{"a":0,"k":[0,51.205,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.83,0.808,0.833],"y":[1.233,0.833,0.35]},"o":{"x":[0.283,0.284,0],"y":[-0.056,-0.064,0]},"t":0,"s":[176.81,195.773,100]},{"i":{"x":[0.564,0.562,0.794],"y":[3.244,0.849,2.131]},"o":{"x":[0.466,0.473,0.167],"y":[-4.295,-0.161,0.141]},"t":23,"s":[207.791,222.842,100]},{"t":28,"s":[207.791,207.791,100]}],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[2.52,0.008],[0,0],[0,0],[0.001,-0.183],[-8.335,-0.035],[-1.024,7.367],[-0.728,2.537],[0,0],[2.38,0.806],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[2.516,0.006],[0,0],[0,0],[0.432,0.025],[0,0],[2.518,0.008],[0,0],[0,0],[0.409,-0.037],[0,0],[2.516,0.006],[0,0],[0,0],[0.401,-0.185],[0,0]],"o":[[-2.516,-0.006],[0,0],[0,0],[-0.027,8.335],[7.643,0.021],[0.358,-2.606],[0,0],[0,0],[-2.387,-0.816],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-2.514,-0.01],[0,0],[-0.415,-0.039],[0,0],[0,0],[-2.518,-0.01],[0,0],[-0.423,0.021],[0,0],[0,0],[-2.514,-0.008],[0,0],[-0.44,0.144],[0,0],[0,0]],"v":[[-33.701,-15.143],[-36.223,-12.631],[-36.281,6.241],[-36.285,7.503],[-21.234,22.652],[-6.23,9.641],[-4.465,1.945],[-2.629,-4.438],[-4.202,-7.63],[-7.4,-6.064],[-11.102,2.545],[-12.356,1.279],[-12.356,0.023],[-12.35,-1.377],[-12.3,-18.852],[-14.806,-21.374],[-17.328,-18.866],[-17.38,-2.341],[-18.642,-2.448],[-18.584,-20.126],[-21.092,-22.652],[-23.616,-20.144],[-23.674,-2.463],[-24.928,-2.376],[-24.885,-17.628],[-27.394,-20.155],[-29.917,-17.645],[-29.968,-1.429],[-31.228,-0.933],[-31.189,-12.617]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[-2.52,0.008],[0,0],[0,0],[-0.001,-0.183],[8.335,-0.035],[1.024,7.367],[0.728,2.537],[0,0],[-2.378,0.806],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[-2.516,0.006],[0,0],[0,0],[-0.432,0.025],[0,0],[-2.518,0.008],[0,0],[0,0],[-0.407,-0.037],[0,0],[-2.518,0.006],[0,0],[0,0],[-0.399,-0.185],[0,0]],"o":[[2.516,-0.006],[0,0],[0,0],[0.029,8.335],[-7.645,0.021],[-0.358,-2.606],[0,0],[0,0],[2.389,-0.816],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[2.514,-0.01],[0,0],[0.415,-0.039],[0,0],[0,0],[2.518,-0.01],[0,0],[0.426,0.021],[0,0],[0,0],[2.514,-0.008],[0,0],[0.438,0.144],[0,0],[0,0]],"v":[[33.701,-15.143],[36.223,-12.631],[36.281,6.241],[36.285,7.503],[21.234,22.652],[6.23,9.641],[4.465,1.945],[2.629,-4.438],[4.202,-7.63],[7.4,-6.064],[11.102,2.545],[12.354,1.279],[12.354,0.023],[12.348,-1.377],[12.298,-18.852],[14.804,-21.374],[17.328,-18.866],[17.38,-2.341],[18.642,-2.448],[18.584,-20.126],[21.092,-22.652],[23.618,-20.144],[23.674,-2.463],[24.928,-2.376],[24.882,-17.628],[27.394,-20.155],[29.917,-17.645],[29.968,-1.429],[31.226,-0.933],[31.187,-12.617]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ind":2,"ty":"sh","ix":3,"ks":{"a":0,"k":{"i":[[0,0],[3.333,-0.333]],"o":[[-1.2,-5.2],[0,0]],"v":[[22.51,8.041],[11.01,2.541]],"c":false},"ix":2},"nm":"Path 3","mn":"ADBE Vector Shape - Group","hd":false},{"ind":3,"ty":"sh","ix":4,"ks":{"a":0,"k":{"i":[[0,0],[-3.333,-0.333]],"o":[[1.2,-5.2],[0,0]],"v":[[-21.99,7.614],[-10.49,2.114]],"c":false},"ix":2},"nm":"Path 4","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"st","c":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":2,"s":[1,0.192156862745,0.345098039216,1]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":19,"s":[1,0.192156862745,0.345098039216,1]},{"t":26,"s":[0.133333333333,0.133333333333,0.133333333333,1]}],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":2,"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[300,300],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Vector","np":6,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":300,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Vector","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":23,"s":[0]},{"t":27,"s":[100]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[435.195,196.412,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":1,"k":[{"i":{"x":[0.833,0.833,0.833],"y":[0.833,0.833,0.833]},"o":{"x":[0.167,0.167,0.167],"y":[0.167,0.167,0.167]},"t":23,"s":[209.366,209.366,100]},{"i":{"x":[0.833,0.833,0.833],"y":[0.833,0.833,0.833]},"o":{"x":[0.167,0.167,0.167],"y":[0.167,0.167,0.167]},"t":31,"s":[257.214,257.214,100]},{"t":35,"s":[209.366,209.366,100]}],"ix":6}},"ao":0,"hasMask":true,"masksProperties":[{"inv":false,"mode":"a","pt":{"a":1,"k":[{"i":{"x":0.833,"y":0.833},"o":{"x":0.167,"y":0.167},"t":23,"s":[{"i":[[33.137,0],[0,-33.137],[-33.137,0],[0,33.137]],"o":[[-33.137,0],[0,33.137],[33.137,0],[0,-33.137]],"v":[[-0.955,14.988],[-60.955,74.988],[-0.955,134.988],[59.045,74.988]],"c":true}]},{"t":31,"s":[{"i":[[47.354,0],[0,-47.354],[-47.354,0],[0,47.354]],"o":[[-47.354,0],[0,47.354],[47.354,0],[0,-47.354]],"v":[[0.906,-36.975],[-84.837,48.768],[0.906,134.511],[86.648,48.768]],"c":true}]}],"ix":1},"o":{"a":0,"k":100,"ix":3},"x":{"a":0,"k":0,"ix":4},"nm":"Mask 1"}],"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.9,-0.695],[-0.438,0],[-0.403,0.524],[0,0],[0.9,0.695],[0.689,-0.896],[0,0]],"o":[[0.372,0.288],[0.617,0],[0,0],[0.695,-0.898],[-0.898,-0.699],[0,0],[-0.695,0.898]],"v":[[10.071,7.71],[11.325,8.137],[12.953,7.34],[19.076,-0.584],[18.706,-3.468],[15.825,-3.098],[9.701,4.826]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[-0.615,0],[-0.376,0.29],[0.693,0.898],[0,0],[0.898,-0.693],[-0.693,-0.898]],"o":[[0.405,0.524],[0.44,0],[0.898,-0.695],[0,0],[-0.697,-0.898],[-0.898,0.695],[0,0]],"v":[[-12.955,7.338],[-11.327,8.137],[-10.069,7.71],[-9.699,4.826],[-15.823,-3.098],[-18.707,-3.468],[-19.079,-0.584]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ind":2,"ty":"sh","ix":3,"ks":{"a":0,"k":{"i":[[0,0],[-1.135,0],[0,1.135],[0,0],[1.137,0],[0,-1.135]],"o":[[0,1.135],[1.137,0],[0,0],[0,-1.135],[-1.135,0],[0,0]],"v":[[-2.12,2.14],[-0.065,4.196],[1.991,2.14],[1.991,-6.082],[-0.065,-8.137],[-2.12,-6.082]],"c":true},"ix":2},"nm":"Path 3","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[0.131453797221,0.131453797221,0.131453797221,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[300,300],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Vector","np":5,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":23,"op":253,"st":-47,"bm":0}],"markers":[]}')},2377:e=>{"use strict";e.exports=JSON.parse('{"v":"4.8.0","meta":{"g":"LottieFiles AE 1.0.0","a":"","k":"","d":"","tc":""},"fr":60,"ip":0,"op":120,"w":250,"h":250,"nm":"Comp 1","ddd":0,"assets":[{"id":"comp_0","layers":[{"ddd":0,"ind":1,"ty":3,"nm":"▽ phone","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[125,106.5,0],"ix":2},"a":{"a":0,"k":[55.5,106.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ip":0,"op":300,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":3,"nm":"▽ Group 2","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[55.5,20.039,0],"ix":2},"a":{"a":0,"k":[10.091,2.506,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ip":0,"op":300,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Vector","parent":2,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[10.091,2.506,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.462,0],[0,0],[0,0.459],[0.462,0],[0,0],[0,-0.459]],"o":[[0,0],[0.462,0],[0,-0.459],[0,0],[-0.462,0],[0,0.459]],"v":[[-2.523,0.835],[2.523,0.835],[3.364,0],[2.523,-0.835],[-2.523,-0.835],[-3.364,0]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[300,300],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Vector","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":300,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":3,"nm":"▽ Group 2","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[55.5,192.952,0],"ix":2},"a":{"a":0,"k":[22.705,2.506,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ip":0,"op":300,"st":0,"bm":0},{"ddd":0,"ind":5,"ty":4,"nm":"Vector","parent":4,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[22.705,2.506,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-0.462,0],[0,0],[0,0.459],[0.462,0],[0,0],[0,-0.459]],"o":[[0,0],[0.462,0],[0,-0.459],[0,0],[-0.462,0],[0,0.459]],"v":[[-6.727,0.835],[6.727,0.835],[7.568,0],[6.727,-0.835],[-6.727,-0.835],[-7.568,0]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[300,300],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Vector","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":300,"st":0,"bm":0},{"ddd":0,"ind":6,"ty":3,"nm":"▽ Group","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[55.5,106.5,0],"ix":2},"a":{"a":0,"k":[55.5,106.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"ip":0,"op":300,"st":0,"bm":0},{"ddd":0,"ind":7,"ty":4,"nm":"Vector","parent":6,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[55.5,106.5,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-3.246,0],[0,0],[0,3.224],[0,0],[3.246,0],[0,0],[0,-3.224],[0,0]],"o":[[0,0],[3.246,0],[0,0],[0,-3.224],[0,0],[-3.246,0],[0,0],[0,3.224]],"v":[[-12.614,35.5],[12.614,35.5],[18.5,29.653],[18.5,-29.653],[12.614,-35.5],[-12.614,-35.5],[-18.5,-29.653],[-18.5,29.653]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ind":1,"ty":"sh","ix":2,"ks":{"a":0,"k":{"i":[[0,0],[-2.321,0],[0,0],[0,-2.305],[0,0],[2.321,0],[0,0],[0,2.305]],"o":[[0,-2.305],[0,0],[2.321,0],[0,0],[0,2.305],[0,0],[-2.321,0],[0,0]],"v":[[-16.818,-29.653],[-12.614,-33.829],[12.614,-33.829],[16.818,-29.653],[16.818,29.653],[12.614,33.829],[-12.614,33.829],[-16.818,29.653]],"c":true},"ix":2},"nm":"Path 2","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"mm","mm":1,"nm":"Merge Paths 1","mn":"ADBE Vector Filter - Merge","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[300,300],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Vector","np":4,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":300,"st":0,"bm":0}]},{"id":"comp_1","layers":[{"ddd":0,"ind":3,"ty":4,"nm":"Ellipse 19 (Stroke) 2","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":1,"s":[0]},{"t":4,"s":[100]}],"ix":11},"r":{"a":0,"k":270,"ix":10},"p":{"a":0,"k":[40.962,100.923,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-3.155,0.911],[-3.096,-1.097],[-1.899,-2.704],[-0.392,-2.375],[0,0],[0.391,-0.391],[-0.391,-0.391],[0,0],[-0.391,0.391],[0,0],[0.391,0.391],[0.391,-0.391],[0,0],[1.7,2.42],[3.49,1.237],[3.557,-1.027],[2.311,-2.91],[-0.432,-0.344],[-0.344,0.432]],"o":[[3.155,-0.911],[3.097,1.097],[1.392,1.982],[0,0],[-0.391,-0.391],[-0.391,0.391],[0,0],[0.391,0.391],[0,0],[0.391,-0.391],[-0.391,-0.391],[0,0],[-0.368,-2.918],[-2.137,-3.042],[-3.49,-1.237],[-3.557,1.027],[-0.344,0.432],[0.432,0.344],[2.054,-2.586]],"v":[[-9.391,-6.883],[0.218,-6.597],[7.898,-0.754],[10.602,5.87],[6.161,1.429],[4.747,1.429],[4.747,2.843],[11.111,9.207],[12.525,9.207],[18.889,2.843],[18.889,1.429],[17.475,1.429],[12.675,6.228],[9.534,-1.904],[0.886,-8.482],[-9.946,-8.805],[-18.965,-2.753],[-18.804,-1.348],[-17.399,-1.509]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[300,300],"ix":3},"r":{"a":0,"k":-15,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 19 (Stroke)","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":300,"st":0,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":"Ellipse 19 (Stroke)","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":1,"s":[0]},{"t":4,"s":[100]}],"ix":11},"r":{"a":0,"k":90,"ix":10},"p":{"a":0,"k":[213.962,108.423,0],"ix":2},"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[-3.155,0.911],[-3.096,-1.097],[-1.899,-2.704],[-0.392,-2.375],[0,0],[0.391,-0.391],[-0.391,-0.391],[0,0],[-0.391,0.391],[0,0],[0.391,0.391],[0.391,-0.391],[0,0],[1.7,2.42],[3.49,1.237],[3.557,-1.027],[2.311,-2.91],[-0.432,-0.344],[-0.344,0.432]],"o":[[3.155,-0.911],[3.097,1.097],[1.392,1.982],[0,0],[-0.391,-0.391],[-0.391,0.391],[0,0],[0.391,0.391],[0,0],[0.391,-0.391],[-0.391,-0.391],[0,0],[-0.368,-2.918],[-2.137,-3.042],[-3.49,-1.237],[-3.557,1.027],[-0.344,0.432],[0.432,0.344],[2.054,-2.586]],"v":[[-9.391,-6.883],[0.218,-6.597],[7.898,-0.754],[10.602,5.87],[6.161,1.429],[4.747,1.429],[4.747,2.843],[11.111,9.207],[12.525,9.207],[18.889,2.843],[18.889,1.429],[17.475,1.429],[12.675,6.228],[9.534,-1.904],[0.886,-8.482],[-9.946,-8.805],[-18.965,-2.753],[-18.804,-1.348],[-17.399,-1.509]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[1,1,1,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[300,300],"ix":3},"r":{"a":0,"k":-15,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 19 (Stroke)","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":300,"st":0,"bm":0}]}],"layers":[{"ddd":0,"ind":1,"ty":0,"nm":"Phone","refId":"comp_0","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":0,"s":[5]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":3,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":74,"s":[100]},{"t":79,"s":[0]}],"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":7,"s":[-90]},{"t":46,"s":[0]}],"ix":10},"p":{"a":0,"k":[127.49999999999999,131,0],"ix":2},"a":{"a":0,"k":[125,106.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":250,"h":213,"ip":0,"op":80,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":0,"nm":"Rotate","refId":"comp_1","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":3,"s":[5]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":7,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":51,"s":[100]},{"t":57,"s":[0]}],"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":7,"s":[-90]},{"t":46,"s":[0]}],"ix":10},"p":{"a":0,"k":[127.49999999999999,131,0],"ix":2},"a":{"a":0,"k":[125,106.5,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6}},"ao":0,"w":250,"h":213,"ip":0,"op":80,"st":0,"bm":0}],"markers":[]}')}},e=>{e.O(0,[8893,654,7391,6180,7758,8474],(()=>{return t=55610,e(e.s=t);var t}));e.O()}]);