1import{f as e,a,g as s,h as t,M as i,j as o,i as l,k as n,l as d,r,I as c,m,P as p,V as u,o as v,p as f,q as h,s as j,t as x}from"./bootstrap-YcGq5d07.js";import{u as b}from"./state-DCJ-GHTM.js";import{r as w,u as y}from"./i18n-CBvvWIm0.js";import{g as N,c as g}from"./index-BPdJYlZx.js";import"./phone-input-DMd9JE98.js";const C=({typeView:n,onChangeTypeView:d,onlyVisualizer:r=!1,property:c,handleFavorite:m,handleOpenContact:p,handleOpenShare:u,handleCloseModal:v})=>{const{isFavorite:f,selectedPropertyMLS:h}=e(),{favoriteIcon:j}=a(),{data:x}=s({mls_num:h},{skip:!h}),{width:b}=t(),y=w.useMemo(()=>{if(b&&b<i.TABLET)return!0},[b])||r;return o.jsx("div",{className:"ms-sf-modal-header",children:o.jsxs("div",{className:"ms-sf-flex",children:[o.jsx("h3",{className:"ms-sf-title ms-sf-ellipsis",children:!y&&c&&o.jsxs(o.Fragment,{children:[c.address_short,o.jsx("span",{children:c.address_large})]})}),o.jsxs("div",{className:"ms-sf-action-buttons",children:[!l&&!y&&o.jsx("div",{className:"ms-sf-item",children:o.jsx("button",{className:"ms-sf-btn -favorite "+(f?"active":""),"aria-label":"Favorite",type:"button","data-tool":"tooltip","data-tool-detail":"Save","data-tool-position":"bottom",onClick:e=>{e.stopPropagation(),m?.()},children:o.jsx("i",{className:`sf-icon-${j}`})})}),!y&&o.jsx("div",{className:"ms-sf-item",children:o.jsx("button",{className:"ms-sf-btn -circle -standard "+("view-slider"===n?"active":""),"aria-label":"Photos","data-tool":"tooltip","data-tool-detail":"Photos","data-tool-position":"bottom","data-view":"view-slider","data-parent":"#fullScreenMediaContent",onClick:()=>d("view-slider"),children:o.jsx("i",{className:"sf-icon-camera"})})}),!y&&o.jsx("div",{className:"ms-sf-item",children:o.jsx("button",{className:"ms-sf-btn -circle -standard "+("view-map"===n?"active":""),"aria-label":"Map","data-tool":"tooltip","data-tool-detail":"Map","data-tool-position":"bottom","data-view":"view-map","data-parent":"#fullScreenMediaContent",onClick:()=>d("view-map"),children:o.jsx("i",{className:"sf-icon-map"})})}),!y&&!!x?.url_video&&o.jsx("div",{className:"ms-sf-item",children:o.jsx("button",{className:"ms-sf-btn -circle -standard "+("view-video"===n?"active":""),"aria-label":"Video","data-tool":"tooltip","data-tool-detail":"Video","data-tool-position":"bottom","data-view":"view-video","data-parent":"#fullScreenMediaContent",onClick:()=>d("view-video"),children:o.jsx("i",{className:"sf-icon-play"})})}),!l&&!y&&o.jsx("div",{className:"ms-sf-item",children:o.jsx("button",{className:"ms-sf-btn -circle -standard","aria-label":"Contact Agent","data-id":"#contactModal","data-tool":"tooltip","data-tool-detail":"Contact Agent","data-tool-position":"bottom",onClick:p,children:o.jsx("i",{className:"sf-icon-envelope-active"})})}),!l&&!y&&o.jsx("div",{className:"ms-sf-item",children:o.jsx("button",{className:"ms-sf-btn -circle -standard","data-id":"#shareModal","aria-label":"Share","data-tool":"tooltip","data-tool-detail":"Share","data-tool-position":"bottom",onClick:u,children:o.jsx("i",{className:"sf-icon-shared"})})}),o.jsx("div",{className:"ms-sf-item",children:o.jsx("button",{className:"ms-sf-btn -circle -standard js-close-st-modal","data-id":"#galleryModal","aria-label":"Close Modal","data-tool":"tooltip","data-tool-detail":"Close","data-tool-position":"bottom",onClick:v,children:o.jsx("i",{className:"sf-icon-close"})})})]})]})})},M=()=>{const e=b(),{t:a}=y(),{width:l}=t(),M=w.useMemo(()=>{if(l&&l<i.TABLET)return!0},[l])&&/iPhone|iPod/.test(navigator.userAgent)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1,_=document.getElementById("wpadminbar"),S=_?.offsetHeight,[V,k]=w.useState(!1),[E,T]=w.useState(null),[I]=n(),[P,L]=w.useState(!1),[A,F]=w.useState(E?.initialTypeView||"view-slider"),{data:z}=s({mls_num:E?.property?.mls_num||""},{skip:!E?.property?.mls_num}),B=!!z?.url_video;w.useEffect(()=>{const e=e=>{const a=e.detail;a&&(T(a),F(a.initialTypeView||"view-slider"),k(!0))},a=()=>{k(!1),T(null)};return window.addEventListener(N,e),window.addEventListener(g,a),()=>{window.removeEventListener(N,e),window.removeEventListener(g,a)}},[e]);const O=w.useCallback(()=>{L(!1),F("view-slider"),setTimeout(()=>{d()},300)},[e]);if(w.useEffect(()=>{V&&setTimeout(()=>L(!0),100)},[V]),!V||!E)return null;const $=document.getElementById("gallery-modal")||document.createElement("div");return $.id||($.id="gallery-modal",document.body.appendChild($)),r.createPortal(o.jsx("div",{className:`ms-sf-modal active ${P?"in":""}
1 ${v?"-watermark-visible":""}`,tabIndex:-1,role:"dialog",id:"galleryModal",children:o.jsx("div",{className:"ms-sf-modal-dialog",role:"document",children:o.jsxs("div",{className:"ms-sf-modal-content "+(P?"active":""),style:{top:S},children:[o.jsx(C,{typeView:A,onChangeTypeView:e=>F(e),onlyVisualizer:E.onlyVisualizer,property:E.property,handleFavorite:function(){E?.property&&x()&&I(E?.property.mls_num)},handleOpenContact:function(){e(j(!0))},handleOpenShare:function(){if(!E?.property)return;const e=f(E?.property,a);h(e)},handleCloseModal:O}),o.jsx("div",{className:"ms-sf-modal-body",children:o.jsxs("div",{className:`ms-sf-media ${A}`,id:"fullScreenMediaContent",children:[o.jsx("div",{className:"ms-sf-wrapper-slider",children:E.image_urls&&o.jsx(c,{thumbnail:E.image_urls[0],images:E.image_urls,showControls:!0,selectedItem:E.selected_image_pos,infiniteLoop:!0})}),!E.onlyVisualizer&&o.jsx("div",{className:"ms-sf-wrapper-map",children:o.jsx(w.Suspense,{fallback:null,children:o.jsx(m,{strategy:"onInteraction",enabled:!0,children:o.jsx(p,{lat:Number(E.property?.lat),lng:Number(E.property?.lng),address:E.property?.address_large||"",id:"propertyViewerMapGallery"})})})}),o.jsx("div",{className:"ms-sf-wrapper-video",children:B&&o.jsx(u,{videoUrl:z.url_video,autoplay:"view-video"===A,controls:!0,muted:M,loop:!1,playsInline:!0,style:{position:"absolute",top:0,left:0,width:"100%",height:"100%"}})})]})})]})})}),$)};export{M as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.