vistaview 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -37,7 +37,7 @@ class h extends y {
37
37
  const { width: m, height: d } = this.getFullSizeDim();
38
38
  if (this.fullH = d, this.fullW = m, this.minW = this.fullW * 0.5, this.maxW = this.fullW, this.element.style.width = `${m}px`, this.element.style.height = `${d}px`, this.setSizes({ stableSize: !1, initDimension: !0 }), this.pos === 0) {
39
39
  const o = document.createElement("iframe");
40
- o.frameBorder = "0", o.allow = "autoplay; fullscreen; picture-in-picture", o.allowFullscreen = !0, o.width = "100%", o.height = "100%", o.style.position = "absolute", o.style.top = "0", o.style.left = "0", o.style.backgroundColor = "transparent", o.style.opacity = "0", o.style.transition = "opacity 1s ease", o.src = `https://www.dailymotion.com/embed/video/${r(n)}?autoplay=1`, l.appendChild(o), o.onload = () => {
40
+ o.frameBorder = "0", o.allow = "autoplay; fullscreen; picture-in-picture", o.allowFullscreen = !0, o.width = "100%", o.height = "100%", o.style.position = "absolute", o.style.top = "0", o.style.left = "0", o.style.opacity = "0", o.style.transition = "opacity 333ms ease", o.src = `https://www.dailymotion.com/embed/video/${r(n)}?autoplay=1`, l.appendChild(o), o.onload = () => {
41
41
  o.style.opacity = "1", s.classList.remove("vvw--pulsing");
42
42
  };
43
43
  }
@@ -1 +1 @@
1
- (function(m,f){typeof exports=="object"&&typeof module<"u"?f(exports):typeof define=="function"&&define.amd?define(["exports"],f):(m=typeof globalThis<"u"?globalThis:m||self,f(m.VistaView=m.VistaView||{}))})(this,(function(m){"use strict";var F=Object.defineProperty;var P=(m,f,w)=>f in m?F(m,f,{enumerable:!0,configurable:!0,writable:!0,value:w}):m[f]=w;var h=(m,f,w)=>P(m,typeof f!="symbol"?f+"":f,w);function f(c){const i=window.getComputedStyle(c).objectFit||"",{width:s,height:a}=c.getBoundingClientRect(),e=c.naturalWidth,n=c.naturalHeight;if(!i)return{width:s,height:a};if(!e||!n)return{width:s,height:a};const d=e/n,r=s/a;switch(i){case"fill":return{width:s,height:a};case"none":return{width:e,height:n};case"contain":return d>r?{width:s,height:s/d}:{width:a*d,height:a};case"cover":return d<r?{width:s,height:s/d}:{width:a*d,height:a};case"scale-down":{const o={width:e,height:n},u=d>r?{width:s,height:s/d}:{width:a*d,height:a};return u.width<=o.width&&u.height<=o.height?u:o}}return{width:s,height:a}}class w{static ease(t,i,s){const a=i-t,e=t+a*.2;return Math.abs(a)<s?i:e}static play(t,i,s){if(s()){requestAnimationFrame(()=>{this.play(t,i,s)});return}this.map.get(t)&&(t.element.classList.contains("vvw--load-cancelled")||requestAnimationFrame(()=>{var u,l,g,y,x,b,W,_,C,R;const a=this.map.get(t);if(!a||!t.element||t.element.classList.contains("vvw--load-cancelled"))return;const{current:e,target:n,log:d}=a;let r={};n.width!==void 0&&(r.width=this.ease(e._width,n.width,1)),n.height!==void 0&&(r.height=this.ease(e._height,n.height,1)),((u=n.transform)==null?void 0:u.x)!==void 0&&(r.transform=r.transform||{},r.transform.x=this.ease(e._transform.x,n.transform.x,1)),((l=n.transform)==null?void 0:l.y)!==void 0&&(r.transform=r.transform||{},r.transform.y=this.ease(e._transform.y,n.transform.y,1)),((g=n.transform)==null?void 0:g.scale)!==void 0&&(r.transform=r.transform||{},r.transform.scale=this.ease(e._transform.scale,n.transform.scale,.005)),((y=n.translate)==null?void 0:y.x)!==void 0&&(r.translate=r.translate||{},r.translate.x=this.ease(e._translate.x,n.translate.x,1)),((x=n.translate)==null?void 0:x.y)!==void 0&&(r.translate=r.translate||{},r.translate.y=this.ease(e._translate.y,n.translate.y,1)),r.width!==void 0&&(e.width=r.width),r.height!==void 0&&(e.height=r.height),r.translate&&(e.translate={...e.translate,...r.translate}),r.transform&&(e.transform={...e.transform,...r.transform}),(n.width===void 0||e._width===n.width)&&(n.height===void 0||e._height===n.height)&&(((b=n.transform)==null?void 0:b.x)===void 0||e._transform.x===n.transform.x)&&(((W=n.transform)==null?void 0:W.y)===void 0||e._transform.y===n.transform.y)&&(((_=n.transform)==null?void 0:_.scale)===void 0||e._transform.scale===n.transform.scale)&&(((C=n.translate)==null?void 0:C.x)===void 0||e._translate.x===n.translate.x)&&(((R=n.translate)==null?void 0:R.y)===void 0||e._translate.y===n.translate.y)?(this.map.delete(t),i()):(this.map.set(t,{current:e,target:n,log:d}),this.play(t,i,s))}))}static stop(t){const i=this.map.get(t);return this.map.delete(t),i}static start({vistaImage:t,target:i,onComplete:s,shouldWait:a}){this.stop(t),this.map.set(t,{current:t.state,target:i}),this.play(t,s,a)}}h(w,"map",new Map);class L{constructor(t){h(this,"state");h(this,"parsedSrcSet");h(this,"isReady",!1);h(this,"isThrowing",!1);h(this,"thumb",null);h(this,"pos");h(this,"index");h(this,"config");h(this,"origin");h(this,"initH",0);h(this,"initW",0);h(this,"fullH",0);h(this,"fullW",0);h(this,"maxW",0);h(this,"minW",0);h(this,"defaultWH",200);h(this,"isZoomedIn",!1);h(this,"isCancelled",!1);h(this,"isLoadedResolved",null);h(this,"isLoadedRejected",null);h(this,"isLoaded",new Promise((t,i)=>{this.isLoadedResolved=t,this.isLoadedRejected=i}));h(this,"replacement",null);h(this,"originalParent",null);h(this,"originalNextSibling",null);h(this,"originalStyle","");h(this,"thumbImage",null);h(this,"originRect",{width:this.defaultWH,height:this.defaultWH,top:0,left:0});h(this,"fittedSize",null);h(this,"maxZoomLevel");h(this,"vistaView");h(this,"transitionState",null);h(this,"transitionShouldWait",()=>!1);h(this,"initPointerCenter",{x:0,y:0});h(this,"onScale");var s,a,e;this.state=this.createState(),this.pos=t.pos,this.index=t.index,this.config=t.elm.config,this.parsedSrcSet=t.elm.parsedSrcSet,this.origin=t.elm.origin,this.maxZoomLevel=t.maxZoomLevel,this.vistaView=t.vistaView,this.onScale=t.onScale,t.transitionState&&(this.transitionState=t.transitionState),t.transitionShouldWait&&(this.transitionShouldWait=t.transitionShouldWait),this.initPointerCenter={x:window.innerWidth/2,y:window.innerHeight/2};const i=this.pos===0?(s=this.origin)==null?void 0:s.image:null;if(this.originalParent=(i==null?void 0:i.parentElement)||null,this.originalNextSibling=(i==null?void 0:i.nextSibling)||null,this.originRect=((e=((a=this.origin)==null?void 0:a.anchor)||i)==null?void 0:e.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0},i&&this.originalParent){this.originalStyle=i.style.cssText,this.thumbImage=i;const n=i.cloneNode(!0);this.originalParent.insertBefore(n,i),this.replacement=n,this.thumb=document.createElement("div"),this.thumb.classList.add("vvw-img-lo");const{width:d,height:r}=this.thumbImage?f(this.thumbImage):{width:0,height:0};this.fittedSize={width:d,height:r},this.thumb.appendChild(i),i.style.width="100%",i.style.height="100%",i.style.objectFit=this.origin.objectFit}}createState(){const t=this;return{_t:this,_width:0,_height:0,_transform:{x:0,y:0,scale:1},_translate:{x:0,y:0},_lessThanMinWidth:!1,get width(){return this._width},set width(i){this._width=i,t.onWidthChange(i)},get height(){return this._height},set height(i){this._height=i,t.onHeightChange(i)},get transform(){return this._transform},set transform(i){this._transform=i,t.onTransformChange(i)},get translate(){return this._translate},set translate(i){this._translate=i,t.onTranslateChange(i)},get lessThanMinWidth(){return this._lessThanMinWidth},set lessThanMinWidth(i){this._lessThanMinWidth=i,t.onLessThanMinWidthChange(i)}}}onLessThanMinWidthChange(t){t?this.element.style.opacity="0.5":this.element.style.opacity=""}onTranslateChange(t){this.element.style.translate=`calc(-50% + ${t.x}px) calc(-50% + ${t.y}px)`}onTransformChange(t){const i=`translate3d(${t.x}px, ${t.y}px, 0px) scale3d(${t.scale}, ${t.scale}, 1)`;this.element.style.transform=i}onWidthChange(t){this.element.style.width=`${t}px`}onHeightChange(t){this.element.style.height=`${t}px`}onImageReady(){}animateZoom(t,i){}scaleMove(t,i,s){}momentumThrow(t){return()=>{}}async init(){await this.isLoaded;const t=this.element;this.transitionState&&this.transitionState.current.width&&this.transitionState.current.height?(this.state.width=this.transitionState.current.width,this.state.height=this.transitionState.current.height):t.classList.contains("vvw--loaded")||(this.state.width=this.initW,this.state.height=this.initH);const i=()=>{this.isCancelled||w.start({vistaImage:this,target:{width:this.fullW,height:this.fullH},onComplete:()=>{this.isCancelled||(this.isReady=!0,t.classList.add("vvw--ready"),this.onImageReady())},shouldWait:this.transitionShouldWait})};this.pos<-1||this.pos>1?(this.state.width=this.fullW,this.state.height=this.fullH,t.classList.add("vvw--loaded"),t.classList.add("vvw--ready"),this.isReady=!0):t.classList.contains("vvw--loaded")?t.classList.contains("vvw--ready")?(this.isReady=!0,this.onImageReady()):i():(t.classList.add("vvw--loaded"),setTimeout(()=>{this.isCancelled||i()},333))}getFullSizeDim(){const{width:t,height:i}=this.thumb.getBoundingClientRect(),s=t/i;let a=window.innerWidth,e=window.innerHeight;return s>window.innerWidth/window.innerHeight?e=a/s:a=e*s,{width:a,height:e}}setSizes(t={}){var d,r,o,u;const{stableSize:i=!0,initDimension:s}=t;if(!this.origin)return;const a=this.thumb;s||(this.originRect=((r=((d=this.origin)==null?void 0:d.anchor)||this.replacement)==null?void 0:r.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0});let e=this.originRect;if(a){const l=a.style;l.width=e.width+"px",l.height=e.height+"px",l.top="50%",l.left="50%",l.translate="-50% -50%",l.position="fixed",l.objectFit=this.origin.objectFit,l.borderRadius=this.origin.borderRadius;const g=Math.min(Math.max(e.left,-e.width),window.innerWidth+e.width)-window.innerWidth/2+e.width/2,y=Math.min(Math.max(e.top,-e.height),window.innerHeight+e.height)-window.innerHeight/2+e.height/2;l.setProperty("--vvw-init-radius",l.borderRadius),l.setProperty("--vvw-pulse-radius",`calc(1.3 * ${l.borderRadius})`),l.setProperty("--vvw-init-x",`${g}px`),l.setProperty("--vvw-init-y",`${y}px`),s&&(l.setProperty("--vvw-current-x",`${g}px`),l.setProperty("--vvw-current-y",`${y}px`))}if(!s){const{width:l,height:g}=this.thumbImage?f(this.thumbImage):{width:0,height:0};this.fittedSize={width:l,height:g}}const n=this.element;if(this.initW=Math.min(((o=this.fittedSize)==null?void 0:o.width)??0,e.width),this.initH=Math.min(((u=this.fittedSize)==null?void 0:u.height)??0,e.height),n.style.setProperty("--vvw-init-w",this.initW+"px"),n.style.setProperty("--vvw-init-h",this.initH+"px"),n.style.setProperty("--vvw-init-radius",this.origin.borderRadius),n.style.objectFit="cover",!s){if(this.isReady&&!this.isCancelled){const{width:l,height:g}=this.getFullSizeDim();this.fullH=g,this.fullW=l,this.minW=this.fullW*.5}!this.isZoomedIn&&i&&this.normalize()}}normalize(){this.state.transform={x:0,y:0,scale:1},this.state.translate={x:0,y:0},this.state.width=this.fullW,this.state.height=this.fullH,this.isZoomedIn=!1}getFromParsedSrcSet(t){if(!this.parsedSrcSet||this.parsedSrcSet.length===0)return null;const i=t*(window.devicePixelRatio||1);let s=this.parsedSrcSet[this.parsedSrcSet.length-1];for(const a of this.parsedSrcSet)if(a.width>=i){s=a;break}return s.src}prepareClose(){w.stop(this),this.setFinalTransform()}cancelPendingLoad(){var t;this.isCancelled=!0,(t=this.element)==null||t.classList.add("vvw--load-cancelled")}setInitialCenter(t){this.initPointerCenter=t}destroy(){var t,i;this.originalParent&&this.thumbImage&&(this.thumbImage.style.cssText=this.originalStyle,this.originalNextSibling?this.originalParent.insertBefore(this.thumbImage,this.originalNextSibling):this.originalParent.appendChild(this.thumbImage)),this.originalParent=null,this.originalNextSibling=null,this.originalStyle="",this.thumbImage=null,this.replacement&&(this.replacement.remove(),this.replacement=null),(t=this.thumb)==null||t.remove(),(i=this.element)==null||i.remove(),this.thumb=null,this.origin=void 0,this.config={src:"",alt:""}}cloneStyleFrom(t,i){t!=null&&t.element&&(i&&(this.transitionState=i||null),t.element.classList.contains("vvw--loaded")&&(this.element.classList.add("vvw--loaded"),this.state.width=t.state.width,this.state.height=t.state.height),t.element.classList.contains("vvw--ready")&&this.element.classList.add("vvw--ready"))}toObject(){return structuredClone({config:{src:this.config.src,alt:this.config.alt,srcSet:this.config.srcSet},origin:this.origin?{src:this.origin.src,srcSet:this.origin.srcSet,borderRadius:this.origin.borderRadius,objectFit:this.origin.objectFit}:null,parsedSrcSet:this.parsedSrcSet,element:"src"in this.element?this.element.src:this.element.toString(),thumb:void 0,index:this.index,pos:this.pos,state:{width:this.state._width,height:this.state._height,transform:this.state._transform,translate:this.state._translate}})}setFinalTransform(t={}){const{propagateEvent:i=!0}=t;if(this.isReady){if(this.state.translate.x+=this.state.transform.x,this.state.translate.y+=this.state.transform.y,this.state.width*=this.state.transform.scale,this.state.height*=this.state.transform.scale,Math.abs(this.state.width-this.fullW)<1&&(this.state.width=this.fullW,this.state.height=this.fullH),Math.abs(this.state.translate.x)<1&&(this.state.translate.x=0),Math.abs(this.state.translate.y)<1&&(this.state.translate.y=0),this.state.translate={...this.state.translate},this.state.transform={x:0,y:0,scale:1},i){const s=this.toObject();this.vistaView.options.onContentChange&&this.vistaView.options.onContentChange(s,this.vistaView),this.vistaView.state.extensions.forEach(a=>{a.onContentChange&&a.onContentChange(s,this.vistaView)})}return{close:!0,cancel:()=>{}}}}}function p(c){if(!c)return null;const t=[/dailymotion\.com\/video\/([a-zA-Z0-9]+)/,/dai\.ly\/([a-zA-Z0-9]+)/,/dailymotion\.com\/embed\/video\/([a-zA-Z0-9]+)/];for(const i of t){const s=c.match(i);if(s&&s[1])return s[1]}return null}function S(c){const t=p(c);if(!t)throw new Error("Invalid Dailymotion video URL");return`https://www.dailymotion.com/thumbnail/video/${t}`}class v extends L{constructor(i){var r;super(i);h(this,"element");h(this,"url");const s=i.elm.config.src;this.url=s;const a=document.createElement("div");a.style.position="relative";const e=document.createElement("img");a.appendChild(e),e.src=((r=this.origin)==null?void 0:r.image.src)||S(s),e.style.width="100%",e.style.height="100%",e.style.objectFit="cover",e.classList.add("vvw--pulsing"),this.element=a,this.element.classList.add("vvw-img-hi");const{width:n,height:d}=this.getFullSizeDim();if(this.fullH=d,this.fullW=n,this.minW=this.fullW*.5,this.maxW=this.fullW,this.element.style.width=`${n}px`,this.element.style.height=`${d}px`,this.setSizes({stableSize:!1,initDimension:!0}),this.pos===0){const o=document.createElement("iframe");o.frameBorder="0",o.allow="autoplay; fullscreen; picture-in-picture",o.allowFullscreen=!0,o.width="100%",o.height="100%",o.style.position="absolute",o.style.top="0",o.style.left="0",o.style.backgroundColor="transparent",o.style.opacity="0",o.style.transition="opacity 1s ease",o.src=`https://www.dailymotion.com/embed/video/${p(s)}?autoplay=1`,a.appendChild(o),o.onload=()=>{o.style.opacity="1",e.classList.remove("vvw--pulsing")}}this.isLoadedResolved(!0)}getFullSizeDim(){const i=Math.min(window.innerWidth,800);return{width:i,height:i*9/16}}setFinalTransform(){return super.setFinalTransform({propagateEvent:!1})}}function H(){return{name:"dailymotionVideo",onInitializeImage:c=>{const t=c.elm.config.src;if(p(t))return new v(c)},onImageView:async(c,t)=>{const i=c.images.to[Math.floor(c.images.to.length/2)];i instanceof v&&t.deactivateUi(["download","zoomIn","zoomOut"],i)}}}m.VistaDailymotionVideo=v,m.dailymotionVideo=H,m.getDailymotionThumbnail=S,m.parseDailymotionVideoId=p,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})}));
1
+ (function(m,f){typeof exports=="object"&&typeof module<"u"?f(exports):typeof define=="function"&&define.amd?define(["exports"],f):(m=typeof globalThis<"u"?globalThis:m||self,f(m.VistaView=m.VistaView||{}))})(this,(function(m){"use strict";var F=Object.defineProperty;var P=(m,f,w)=>f in m?F(m,f,{enumerable:!0,configurable:!0,writable:!0,value:w}):m[f]=w;var h=(m,f,w)=>P(m,typeof f!="symbol"?f+"":f,w);function f(c){const i=window.getComputedStyle(c).objectFit||"",{width:s,height:a}=c.getBoundingClientRect(),e=c.naturalWidth,n=c.naturalHeight;if(!i)return{width:s,height:a};if(!e||!n)return{width:s,height:a};const d=e/n,r=s/a;switch(i){case"fill":return{width:s,height:a};case"none":return{width:e,height:n};case"contain":return d>r?{width:s,height:s/d}:{width:a*d,height:a};case"cover":return d<r?{width:s,height:s/d}:{width:a*d,height:a};case"scale-down":{const l={width:e,height:n},u=d>r?{width:s,height:s/d}:{width:a*d,height:a};return u.width<=l.width&&u.height<=l.height?u:l}}return{width:s,height:a}}class w{static ease(t,i,s){const a=i-t,e=t+a*.2;return Math.abs(a)<s?i:e}static play(t,i,s){if(s()){requestAnimationFrame(()=>{this.play(t,i,s)});return}this.map.get(t)&&(t.element.classList.contains("vvw--load-cancelled")||requestAnimationFrame(()=>{var u,o,g,y,x,b,W,_,C,R;const a=this.map.get(t);if(!a||!t.element||t.element.classList.contains("vvw--load-cancelled"))return;const{current:e,target:n,log:d}=a;let r={};n.width!==void 0&&(r.width=this.ease(e._width,n.width,1)),n.height!==void 0&&(r.height=this.ease(e._height,n.height,1)),((u=n.transform)==null?void 0:u.x)!==void 0&&(r.transform=r.transform||{},r.transform.x=this.ease(e._transform.x,n.transform.x,1)),((o=n.transform)==null?void 0:o.y)!==void 0&&(r.transform=r.transform||{},r.transform.y=this.ease(e._transform.y,n.transform.y,1)),((g=n.transform)==null?void 0:g.scale)!==void 0&&(r.transform=r.transform||{},r.transform.scale=this.ease(e._transform.scale,n.transform.scale,.005)),((y=n.translate)==null?void 0:y.x)!==void 0&&(r.translate=r.translate||{},r.translate.x=this.ease(e._translate.x,n.translate.x,1)),((x=n.translate)==null?void 0:x.y)!==void 0&&(r.translate=r.translate||{},r.translate.y=this.ease(e._translate.y,n.translate.y,1)),r.width!==void 0&&(e.width=r.width),r.height!==void 0&&(e.height=r.height),r.translate&&(e.translate={...e.translate,...r.translate}),r.transform&&(e.transform={...e.transform,...r.transform}),(n.width===void 0||e._width===n.width)&&(n.height===void 0||e._height===n.height)&&(((b=n.transform)==null?void 0:b.x)===void 0||e._transform.x===n.transform.x)&&(((W=n.transform)==null?void 0:W.y)===void 0||e._transform.y===n.transform.y)&&(((_=n.transform)==null?void 0:_.scale)===void 0||e._transform.scale===n.transform.scale)&&(((C=n.translate)==null?void 0:C.x)===void 0||e._translate.x===n.translate.x)&&(((R=n.translate)==null?void 0:R.y)===void 0||e._translate.y===n.translate.y)?(this.map.delete(t),i()):(this.map.set(t,{current:e,target:n,log:d}),this.play(t,i,s))}))}static stop(t){const i=this.map.get(t);return this.map.delete(t),i}static start({vistaImage:t,target:i,onComplete:s,shouldWait:a}){this.stop(t),this.map.set(t,{current:t.state,target:i}),this.play(t,s,a)}}h(w,"map",new Map);class L{constructor(t){h(this,"state");h(this,"parsedSrcSet");h(this,"isReady",!1);h(this,"isThrowing",!1);h(this,"thumb",null);h(this,"pos");h(this,"index");h(this,"config");h(this,"origin");h(this,"initH",0);h(this,"initW",0);h(this,"fullH",0);h(this,"fullW",0);h(this,"maxW",0);h(this,"minW",0);h(this,"defaultWH",200);h(this,"isZoomedIn",!1);h(this,"isCancelled",!1);h(this,"isLoadedResolved",null);h(this,"isLoadedRejected",null);h(this,"isLoaded",new Promise((t,i)=>{this.isLoadedResolved=t,this.isLoadedRejected=i}));h(this,"replacement",null);h(this,"originalParent",null);h(this,"originalNextSibling",null);h(this,"originalStyle","");h(this,"thumbImage",null);h(this,"originRect",{width:this.defaultWH,height:this.defaultWH,top:0,left:0});h(this,"fittedSize",null);h(this,"maxZoomLevel");h(this,"vistaView");h(this,"transitionState",null);h(this,"transitionShouldWait",()=>!1);h(this,"initPointerCenter",{x:0,y:0});h(this,"onScale");var s,a,e;this.state=this.createState(),this.pos=t.pos,this.index=t.index,this.config=t.elm.config,this.parsedSrcSet=t.elm.parsedSrcSet,this.origin=t.elm.origin,this.maxZoomLevel=t.maxZoomLevel,this.vistaView=t.vistaView,this.onScale=t.onScale,t.transitionState&&(this.transitionState=t.transitionState),t.transitionShouldWait&&(this.transitionShouldWait=t.transitionShouldWait),this.initPointerCenter={x:window.innerWidth/2,y:window.innerHeight/2};const i=this.pos===0?(s=this.origin)==null?void 0:s.image:null;if(this.originalParent=(i==null?void 0:i.parentElement)||null,this.originalNextSibling=(i==null?void 0:i.nextSibling)||null,this.originRect=((e=((a=this.origin)==null?void 0:a.anchor)||i)==null?void 0:e.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0},i&&this.originalParent){this.originalStyle=i.style.cssText,this.thumbImage=i;const n=i.cloneNode(!0);this.originalParent.insertBefore(n,i),this.replacement=n,this.thumb=document.createElement("div"),this.thumb.classList.add("vvw-img-lo");const{width:d,height:r}=this.thumbImage?f(this.thumbImage):{width:0,height:0};this.fittedSize={width:d,height:r},this.thumb.appendChild(i),i.style.width="100%",i.style.height="100%",i.style.objectFit=this.origin.objectFit}}createState(){const t=this;return{_t:this,_width:0,_height:0,_transform:{x:0,y:0,scale:1},_translate:{x:0,y:0},_lessThanMinWidth:!1,get width(){return this._width},set width(i){this._width=i,t.onWidthChange(i)},get height(){return this._height},set height(i){this._height=i,t.onHeightChange(i)},get transform(){return this._transform},set transform(i){this._transform=i,t.onTransformChange(i)},get translate(){return this._translate},set translate(i){this._translate=i,t.onTranslateChange(i)},get lessThanMinWidth(){return this._lessThanMinWidth},set lessThanMinWidth(i){this._lessThanMinWidth=i,t.onLessThanMinWidthChange(i)}}}onLessThanMinWidthChange(t){t?this.element.style.opacity="0.5":this.element.style.opacity=""}onTranslateChange(t){this.element.style.translate=`calc(-50% + ${t.x}px) calc(-50% + ${t.y}px)`}onTransformChange(t){const i=`translate3d(${t.x}px, ${t.y}px, 0px) scale3d(${t.scale}, ${t.scale}, 1)`;this.element.style.transform=i}onWidthChange(t){this.element.style.width=`${t}px`}onHeightChange(t){this.element.style.height=`${t}px`}onImageReady(){}animateZoom(t,i){}scaleMove(t,i,s){}momentumThrow(t){return()=>{}}async init(){await this.isLoaded;const t=this.element;this.transitionState&&this.transitionState.current.width&&this.transitionState.current.height?(this.state.width=this.transitionState.current.width,this.state.height=this.transitionState.current.height):t.classList.contains("vvw--loaded")||(this.state.width=this.initW,this.state.height=this.initH);const i=()=>{this.isCancelled||w.start({vistaImage:this,target:{width:this.fullW,height:this.fullH},onComplete:()=>{this.isCancelled||(this.isReady=!0,t.classList.add("vvw--ready"),this.onImageReady())},shouldWait:this.transitionShouldWait})};this.pos<-1||this.pos>1?(this.state.width=this.fullW,this.state.height=this.fullH,t.classList.add("vvw--loaded"),t.classList.add("vvw--ready"),this.isReady=!0):t.classList.contains("vvw--loaded")?t.classList.contains("vvw--ready")?(this.isReady=!0,this.onImageReady()):i():(t.classList.add("vvw--loaded"),setTimeout(()=>{this.isCancelled||i()},333))}getFullSizeDim(){const{width:t,height:i}=this.thumb.getBoundingClientRect(),s=t/i;let a=window.innerWidth,e=window.innerHeight;return s>window.innerWidth/window.innerHeight?e=a/s:a=e*s,{width:a,height:e}}setSizes(t={}){var d,r,l,u;const{stableSize:i=!0,initDimension:s}=t;if(!this.origin)return;const a=this.thumb;s||(this.originRect=((r=((d=this.origin)==null?void 0:d.anchor)||this.replacement)==null?void 0:r.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0});let e=this.originRect;if(a){const o=a.style;o.width=e.width+"px",o.height=e.height+"px",o.top="50%",o.left="50%",o.translate="-50% -50%",o.position="fixed",o.objectFit=this.origin.objectFit,o.borderRadius=this.origin.borderRadius;const g=Math.min(Math.max(e.left,-e.width),window.innerWidth+e.width)-window.innerWidth/2+e.width/2,y=Math.min(Math.max(e.top,-e.height),window.innerHeight+e.height)-window.innerHeight/2+e.height/2;o.setProperty("--vvw-init-radius",o.borderRadius),o.setProperty("--vvw-pulse-radius",`calc(1.3 * ${o.borderRadius})`),o.setProperty("--vvw-init-x",`${g}px`),o.setProperty("--vvw-init-y",`${y}px`),s&&(o.setProperty("--vvw-current-x",`${g}px`),o.setProperty("--vvw-current-y",`${y}px`))}if(!s){const{width:o,height:g}=this.thumbImage?f(this.thumbImage):{width:0,height:0};this.fittedSize={width:o,height:g}}const n=this.element;if(this.initW=Math.min(((l=this.fittedSize)==null?void 0:l.width)??0,e.width),this.initH=Math.min(((u=this.fittedSize)==null?void 0:u.height)??0,e.height),n.style.setProperty("--vvw-init-w",this.initW+"px"),n.style.setProperty("--vvw-init-h",this.initH+"px"),n.style.setProperty("--vvw-init-radius",this.origin.borderRadius),n.style.objectFit="cover",!s){if(this.isReady&&!this.isCancelled){const{width:o,height:g}=this.getFullSizeDim();this.fullH=g,this.fullW=o,this.minW=this.fullW*.5}!this.isZoomedIn&&i&&this.normalize()}}normalize(){this.state.transform={x:0,y:0,scale:1},this.state.translate={x:0,y:0},this.state.width=this.fullW,this.state.height=this.fullH,this.isZoomedIn=!1}getFromParsedSrcSet(t){if(!this.parsedSrcSet||this.parsedSrcSet.length===0)return null;const i=t*(window.devicePixelRatio||1);let s=this.parsedSrcSet[this.parsedSrcSet.length-1];for(const a of this.parsedSrcSet)if(a.width>=i){s=a;break}return s.src}prepareClose(){w.stop(this),this.setFinalTransform()}cancelPendingLoad(){var t;this.isCancelled=!0,(t=this.element)==null||t.classList.add("vvw--load-cancelled")}setInitialCenter(t){this.initPointerCenter=t}destroy(){var t,i;this.originalParent&&this.thumbImage&&(this.thumbImage.style.cssText=this.originalStyle,this.originalNextSibling?this.originalParent.insertBefore(this.thumbImage,this.originalNextSibling):this.originalParent.appendChild(this.thumbImage)),this.originalParent=null,this.originalNextSibling=null,this.originalStyle="",this.thumbImage=null,this.replacement&&(this.replacement.remove(),this.replacement=null),(t=this.thumb)==null||t.remove(),(i=this.element)==null||i.remove(),this.thumb=null,this.origin=void 0,this.config={src:"",alt:""}}cloneStyleFrom(t,i){t!=null&&t.element&&(i&&(this.transitionState=i||null),t.element.classList.contains("vvw--loaded")&&(this.element.classList.add("vvw--loaded"),this.state.width=t.state.width,this.state.height=t.state.height),t.element.classList.contains("vvw--ready")&&this.element.classList.add("vvw--ready"))}toObject(){return structuredClone({config:{src:this.config.src,alt:this.config.alt,srcSet:this.config.srcSet},origin:this.origin?{src:this.origin.src,srcSet:this.origin.srcSet,borderRadius:this.origin.borderRadius,objectFit:this.origin.objectFit}:null,parsedSrcSet:this.parsedSrcSet,element:"src"in this.element?this.element.src:this.element.toString(),thumb:void 0,index:this.index,pos:this.pos,state:{width:this.state._width,height:this.state._height,transform:this.state._transform,translate:this.state._translate}})}setFinalTransform(t={}){const{propagateEvent:i=!0}=t;if(this.isReady){if(this.state.translate.x+=this.state.transform.x,this.state.translate.y+=this.state.transform.y,this.state.width*=this.state.transform.scale,this.state.height*=this.state.transform.scale,Math.abs(this.state.width-this.fullW)<1&&(this.state.width=this.fullW,this.state.height=this.fullH),Math.abs(this.state.translate.x)<1&&(this.state.translate.x=0),Math.abs(this.state.translate.y)<1&&(this.state.translate.y=0),this.state.translate={...this.state.translate},this.state.transform={x:0,y:0,scale:1},i){const s=this.toObject();this.vistaView.options.onContentChange&&this.vistaView.options.onContentChange(s,this.vistaView),this.vistaView.state.extensions.forEach(a=>{a.onContentChange&&a.onContentChange(s,this.vistaView)})}return{close:!0,cancel:()=>{}}}}}function p(c){if(!c)return null;const t=[/dailymotion\.com\/video\/([a-zA-Z0-9]+)/,/dai\.ly\/([a-zA-Z0-9]+)/,/dailymotion\.com\/embed\/video\/([a-zA-Z0-9]+)/];for(const i of t){const s=c.match(i);if(s&&s[1])return s[1]}return null}function S(c){const t=p(c);if(!t)throw new Error("Invalid Dailymotion video URL");return`https://www.dailymotion.com/thumbnail/video/${t}`}class v extends L{constructor(i){var r;super(i);h(this,"element");h(this,"url");const s=i.elm.config.src;this.url=s;const a=document.createElement("div");a.style.position="relative";const e=document.createElement("img");a.appendChild(e),e.src=((r=this.origin)==null?void 0:r.image.src)||S(s),e.style.width="100%",e.style.height="100%",e.style.objectFit="cover",e.classList.add("vvw--pulsing"),this.element=a,this.element.classList.add("vvw-img-hi");const{width:n,height:d}=this.getFullSizeDim();if(this.fullH=d,this.fullW=n,this.minW=this.fullW*.5,this.maxW=this.fullW,this.element.style.width=`${n}px`,this.element.style.height=`${d}px`,this.setSizes({stableSize:!1,initDimension:!0}),this.pos===0){const l=document.createElement("iframe");l.frameBorder="0",l.allow="autoplay; fullscreen; picture-in-picture",l.allowFullscreen=!0,l.width="100%",l.height="100%",l.style.position="absolute",l.style.top="0",l.style.left="0",l.style.opacity="0",l.style.transition="opacity 333ms ease",l.src=`https://www.dailymotion.com/embed/video/${p(s)}?autoplay=1`,a.appendChild(l),l.onload=()=>{l.style.opacity="1",e.classList.remove("vvw--pulsing")}}this.isLoadedResolved(!0)}getFullSizeDim(){const i=Math.min(window.innerWidth,800);return{width:i,height:i*9/16}}setFinalTransform(){return super.setFinalTransform({propagateEvent:!1})}}function H(){return{name:"dailymotionVideo",onInitializeImage:c=>{const t=c.elm.config.src;if(p(t))return new v(c)},onImageView:async(c,t)=>{const i=c.images.to[Math.floor(c.images.to.length/2)];i instanceof v&&t.deactivateUi(["download","zoomIn","zoomOut"],i)}}}m.VistaDailymotionVideo=v,m.dailymotionVideo=H,m.getDailymotionThumbnail=S,m.parseDailymotionVideoId=p,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})}));
@@ -14,18 +14,18 @@ function f(s) {
14
14
  };
15
15
  const o = t.searchParams.get("q");
16
16
  if (o) {
17
- const i = o.match(/(-?\d+\.?\d*),\s*(-?\d+\.?\d*)/);
18
- return i ? {
19
- lat: parseFloat(i[1]),
20
- lng: parseFloat(i[2]),
17
+ const a = o.match(/(-?\d+\.?\d*),\s*(-?\d+\.?\d*)/);
18
+ return a ? {
19
+ lat: parseFloat(a[1]),
20
+ lng: parseFloat(a[2]),
21
21
  query: o
22
22
  } : { lat: 0, lng: 0, query: o };
23
23
  }
24
24
  const n = t.searchParams.get("ll");
25
25
  if (n) {
26
- const [i, l] = n.split(",").map(parseFloat);
27
- if (!isNaN(i) && !isNaN(l))
28
- return { lat: i, lng: l };
26
+ const [a, l] = n.split(",").map(parseFloat);
27
+ if (!isNaN(a) && !isNaN(l))
28
+ return { lat: a, lng: l };
29
29
  }
30
30
  } catch (t) {
31
31
  console.error("Failed to parse Google Maps URL:", t);
@@ -35,8 +35,8 @@ function f(s) {
35
35
  function w(s, t) {
36
36
  if (!t.apiKey)
37
37
  throw new Error("Google Maps API key is required");
38
- const e = s.zoom || t.zoom || 15, o = t.width || 800, n = t.height || 600, i = t.mapType || "roadmap", l = s.query || `${s.lat},${s.lng}`, r = s.query ? "" : `&markers=color:red|${s.lat},${s.lng}`;
39
- return `https://maps.googleapis.com/maps/api/staticmap?center=${encodeURIComponent(l)}&zoom=${e}&size=${o}x${n}&maptype=${i}${r}&key=${t.apiKey}`;
38
+ const e = s.zoom || t.zoom || 15, o = t.width || 800, n = t.height || 600, a = t.mapType || "roadmap", l = s.query || `${s.lat},${s.lng}`, r = s.query ? "" : `&markers=color:red|${s.lat},${s.lng}`;
39
+ return `https://maps.googleapis.com/maps/api/staticmap?center=${encodeURIComponent(l)}&zoom=${e}&size=${o}x${n}&maptype=${a}${r}&key=${t.apiKey}`;
40
40
  }
41
41
  class d extends y {
42
42
  constructor(e, o, n) {
@@ -46,17 +46,17 @@ class d extends y {
46
46
  m(this, "mapsConfig");
47
47
  m(this, "location");
48
48
  this.mapsConfig = n || {}, this.location = o;
49
- const i = document.createElement("div");
50
- i.style.position = "relative";
49
+ const a = document.createElement("div");
50
+ a.style.position = "relative";
51
51
  const l = document.createElement("img");
52
- i.appendChild(l), l.src = ((c = this.origin) == null ? void 0 : c.image.src) || (n && n.apiKey ? w(o, n) : ""), l.style.width = "100%", l.style.height = "100%", l.style.objectFit = "cover", l.classList.add("vvw--pulsing"), this.element = i, this.element.classList.add("vvw-img-hi");
52
+ a.appendChild(l), l.src = ((c = this.origin) == null ? void 0 : c.image.src) || (n && n.apiKey ? w(o, n) : ""), l.style.width = "100%", l.style.height = "100%", l.style.objectFit = "cover", l.classList.add("vvw--pulsing"), this.element = a, this.element.classList.add("vvw-img-hi");
53
53
  const { width: r, height: p } = this.getFullSizeDim();
54
54
  if (this.fullH = p, this.fullW = r, this.minW = this.fullW * 0.5, this.maxW = this.fullW, this.element.style.width = `${r}px`, this.element.style.height = `${p}px`, this.setSizes({ stableSize: !1, initDimension: !0 }), this.pos === 0) {
55
- const a = document.createElement("iframe");
56
- a.frameBorder = "0", a.allow = "geolocation", a.allowFullscreen = !0, a.width = "100%", a.height = "100%", a.style.position = "absolute", a.style.top = "0", a.style.left = "0", a.style.backgroundColor = "transparent", a.style.opacity = "0", a.style.transition = "opacity 1s ease";
55
+ const i = document.createElement("iframe");
56
+ i.frameBorder = "0", i.allow = "geolocation", i.allowFullscreen = !0, i.width = "100%", i.height = "100%", i.style.position = "absolute", i.style.top = "0", i.style.left = "0", i.style.opacity = "0", i.style.transition = "opacity 1s ease";
57
57
  let h;
58
- this.location.query ? h = `https://www.google.com/maps?q=${encodeURIComponent(this.location.query)}&output=embed` : h = `https://www.google.com/maps?q=${this.location.lat},${this.location.lng}&output=embed`, a.src = h, i.appendChild(a), a.onload = () => {
59
- a.style.opacity = "1", l.classList.remove("vvw--pulsing");
58
+ this.location.query ? h = `https://www.google.com/maps?q=${encodeURIComponent(this.location.query)}&output=embed` : h = `https://www.google.com/maps?q=${this.location.lat},${this.location.lng}&output=embed`, i.src = h, a.appendChild(i), i.onload = () => {
59
+ i.style.opacity = "1", l.classList.remove("vvw--pulsing");
60
60
  };
61
61
  }
62
62
  this.isLoadedResolved(!0);
@@ -1 +1 @@
1
- (function(m,g){typeof exports=="object"&&typeof module<"u"?g(exports):typeof define=="function"&&define.amd?define(["exports"],g):(m=typeof globalThis<"u"?globalThis:m||self,g(m.VistaView=m.VistaView||{}))})(this,(function(m){"use strict";var F=Object.defineProperty;var H=(m,g,w)=>g in m?F(m,g,{enumerable:!0,configurable:!0,writable:!0,value:w}):m[g]=w;var h=(m,g,w)=>H(m,typeof g!="symbol"?g+"":g,w);function g(d){const e=window.getComputedStyle(d).objectFit||"",{width:n,height:a}=d.getBoundingClientRect(),i=d.naturalWidth,s=d.naturalHeight;if(!e)return{width:n,height:a};if(!i||!s)return{width:n,height:a};const c=i/s,r=n/a;switch(e){case"fill":return{width:n,height:a};case"none":return{width:i,height:s};case"contain":return c>r?{width:n,height:n/c}:{width:a*c,height:a};case"cover":return c<r?{width:n,height:n/c}:{width:a*c,height:a};case"scale-down":{const f={width:i,height:s},l=c>r?{width:n,height:n/c}:{width:a*c,height:a};return l.width<=f.width&&l.height<=f.height?l:f}}return{width:n,height:a}}class w{static ease(t,e,n){const a=e-t,i=t+a*.2;return Math.abs(a)<n?e:i}static play(t,e,n){if(n()){requestAnimationFrame(()=>{this.play(t,e,n)});return}this.map.get(t)&&(t.element.classList.contains("vvw--load-cancelled")||requestAnimationFrame(()=>{var l,o,u,p,x,b,W,C,_,R;const a=this.map.get(t);if(!a||!t.element||t.element.classList.contains("vvw--load-cancelled"))return;const{current:i,target:s,log:c}=a;let r={};s.width!==void 0&&(r.width=this.ease(i._width,s.width,1)),s.height!==void 0&&(r.height=this.ease(i._height,s.height,1)),((l=s.transform)==null?void 0:l.x)!==void 0&&(r.transform=r.transform||{},r.transform.x=this.ease(i._transform.x,s.transform.x,1)),((o=s.transform)==null?void 0:o.y)!==void 0&&(r.transform=r.transform||{},r.transform.y=this.ease(i._transform.y,s.transform.y,1)),((u=s.transform)==null?void 0:u.scale)!==void 0&&(r.transform=r.transform||{},r.transform.scale=this.ease(i._transform.scale,s.transform.scale,.005)),((p=s.translate)==null?void 0:p.x)!==void 0&&(r.translate=r.translate||{},r.translate.x=this.ease(i._translate.x,s.translate.x,1)),((x=s.translate)==null?void 0:x.y)!==void 0&&(r.translate=r.translate||{},r.translate.y=this.ease(i._translate.y,s.translate.y,1)),r.width!==void 0&&(i.width=r.width),r.height!==void 0&&(i.height=r.height),r.translate&&(i.translate={...i.translate,...r.translate}),r.transform&&(i.transform={...i.transform,...r.transform}),(s.width===void 0||i._width===s.width)&&(s.height===void 0||i._height===s.height)&&(((b=s.transform)==null?void 0:b.x)===void 0||i._transform.x===s.transform.x)&&(((W=s.transform)==null?void 0:W.y)===void 0||i._transform.y===s.transform.y)&&(((C=s.transform)==null?void 0:C.scale)===void 0||i._transform.scale===s.transform.scale)&&(((_=s.translate)==null?void 0:_.x)===void 0||i._translate.x===s.translate.x)&&(((R=s.translate)==null?void 0:R.y)===void 0||i._translate.y===s.translate.y)?(this.map.delete(t),e()):(this.map.set(t,{current:i,target:s,log:c}),this.play(t,e,n))}))}static stop(t){const e=this.map.get(t);return this.map.delete(t),e}static start({vistaImage:t,target:e,onComplete:n,shouldWait:a}){this.stop(t),this.map.set(t,{current:t.state,target:e}),this.play(t,n,a)}}h(w,"map",new Map);class L{constructor(t){h(this,"state");h(this,"parsedSrcSet");h(this,"isReady",!1);h(this,"isThrowing",!1);h(this,"thumb",null);h(this,"pos");h(this,"index");h(this,"config");h(this,"origin");h(this,"initH",0);h(this,"initW",0);h(this,"fullH",0);h(this,"fullW",0);h(this,"maxW",0);h(this,"minW",0);h(this,"defaultWH",200);h(this,"isZoomedIn",!1);h(this,"isCancelled",!1);h(this,"isLoadedResolved",null);h(this,"isLoadedRejected",null);h(this,"isLoaded",new Promise((t,e)=>{this.isLoadedResolved=t,this.isLoadedRejected=e}));h(this,"replacement",null);h(this,"originalParent",null);h(this,"originalNextSibling",null);h(this,"originalStyle","");h(this,"thumbImage",null);h(this,"originRect",{width:this.defaultWH,height:this.defaultWH,top:0,left:0});h(this,"fittedSize",null);h(this,"maxZoomLevel");h(this,"vistaView");h(this,"transitionState",null);h(this,"transitionShouldWait",()=>!1);h(this,"initPointerCenter",{x:0,y:0});h(this,"onScale");var n,a,i;this.state=this.createState(),this.pos=t.pos,this.index=t.index,this.config=t.elm.config,this.parsedSrcSet=t.elm.parsedSrcSet,this.origin=t.elm.origin,this.maxZoomLevel=t.maxZoomLevel,this.vistaView=t.vistaView,this.onScale=t.onScale,t.transitionState&&(this.transitionState=t.transitionState),t.transitionShouldWait&&(this.transitionShouldWait=t.transitionShouldWait),this.initPointerCenter={x:window.innerWidth/2,y:window.innerHeight/2};const e=this.pos===0?(n=this.origin)==null?void 0:n.image:null;if(this.originalParent=(e==null?void 0:e.parentElement)||null,this.originalNextSibling=(e==null?void 0:e.nextSibling)||null,this.originRect=((i=((a=this.origin)==null?void 0:a.anchor)||e)==null?void 0:i.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0},e&&this.originalParent){this.originalStyle=e.style.cssText,this.thumbImage=e;const s=e.cloneNode(!0);this.originalParent.insertBefore(s,e),this.replacement=s,this.thumb=document.createElement("div"),this.thumb.classList.add("vvw-img-lo");const{width:c,height:r}=this.thumbImage?g(this.thumbImage):{width:0,height:0};this.fittedSize={width:c,height:r},this.thumb.appendChild(e),e.style.width="100%",e.style.height="100%",e.style.objectFit=this.origin.objectFit}}createState(){const t=this;return{_t:this,_width:0,_height:0,_transform:{x:0,y:0,scale:1},_translate:{x:0,y:0},_lessThanMinWidth:!1,get width(){return this._width},set width(e){this._width=e,t.onWidthChange(e)},get height(){return this._height},set height(e){this._height=e,t.onHeightChange(e)},get transform(){return this._transform},set transform(e){this._transform=e,t.onTransformChange(e)},get translate(){return this._translate},set translate(e){this._translate=e,t.onTranslateChange(e)},get lessThanMinWidth(){return this._lessThanMinWidth},set lessThanMinWidth(e){this._lessThanMinWidth=e,t.onLessThanMinWidthChange(e)}}}onLessThanMinWidthChange(t){t?this.element.style.opacity="0.5":this.element.style.opacity=""}onTranslateChange(t){this.element.style.translate=`calc(-50% + ${t.x}px) calc(-50% + ${t.y}px)`}onTransformChange(t){const e=`translate3d(${t.x}px, ${t.y}px, 0px) scale3d(${t.scale}, ${t.scale}, 1)`;this.element.style.transform=e}onWidthChange(t){this.element.style.width=`${t}px`}onHeightChange(t){this.element.style.height=`${t}px`}onImageReady(){}animateZoom(t,e){}scaleMove(t,e,n){}momentumThrow(t){return()=>{}}async init(){await this.isLoaded;const t=this.element;this.transitionState&&this.transitionState.current.width&&this.transitionState.current.height?(this.state.width=this.transitionState.current.width,this.state.height=this.transitionState.current.height):t.classList.contains("vvw--loaded")||(this.state.width=this.initW,this.state.height=this.initH);const e=()=>{this.isCancelled||w.start({vistaImage:this,target:{width:this.fullW,height:this.fullH},onComplete:()=>{this.isCancelled||(this.isReady=!0,t.classList.add("vvw--ready"),this.onImageReady())},shouldWait:this.transitionShouldWait})};this.pos<-1||this.pos>1?(this.state.width=this.fullW,this.state.height=this.fullH,t.classList.add("vvw--loaded"),t.classList.add("vvw--ready"),this.isReady=!0):t.classList.contains("vvw--loaded")?t.classList.contains("vvw--ready")?(this.isReady=!0,this.onImageReady()):e():(t.classList.add("vvw--loaded"),setTimeout(()=>{this.isCancelled||e()},333))}getFullSizeDim(){const{width:t,height:e}=this.thumb.getBoundingClientRect(),n=t/e;let a=window.innerWidth,i=window.innerHeight;return n>window.innerWidth/window.innerHeight?i=a/n:a=i*n,{width:a,height:i}}setSizes(t={}){var c,r,f,l;const{stableSize:e=!0,initDimension:n}=t;if(!this.origin)return;const a=this.thumb;n||(this.originRect=((r=((c=this.origin)==null?void 0:c.anchor)||this.replacement)==null?void 0:r.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0});let i=this.originRect;if(a){const o=a.style;o.width=i.width+"px",o.height=i.height+"px",o.top="50%",o.left="50%",o.translate="-50% -50%",o.position="fixed",o.objectFit=this.origin.objectFit,o.borderRadius=this.origin.borderRadius;const u=Math.min(Math.max(i.left,-i.width),window.innerWidth+i.width)-window.innerWidth/2+i.width/2,p=Math.min(Math.max(i.top,-i.height),window.innerHeight+i.height)-window.innerHeight/2+i.height/2;o.setProperty("--vvw-init-radius",o.borderRadius),o.setProperty("--vvw-pulse-radius",`calc(1.3 * ${o.borderRadius})`),o.setProperty("--vvw-init-x",`${u}px`),o.setProperty("--vvw-init-y",`${p}px`),n&&(o.setProperty("--vvw-current-x",`${u}px`),o.setProperty("--vvw-current-y",`${p}px`))}if(!n){const{width:o,height:u}=this.thumbImage?g(this.thumbImage):{width:0,height:0};this.fittedSize={width:o,height:u}}const s=this.element;if(this.initW=Math.min(((f=this.fittedSize)==null?void 0:f.width)??0,i.width),this.initH=Math.min(((l=this.fittedSize)==null?void 0:l.height)??0,i.height),s.style.setProperty("--vvw-init-w",this.initW+"px"),s.style.setProperty("--vvw-init-h",this.initH+"px"),s.style.setProperty("--vvw-init-radius",this.origin.borderRadius),s.style.objectFit="cover",!n){if(this.isReady&&!this.isCancelled){const{width:o,height:u}=this.getFullSizeDim();this.fullH=u,this.fullW=o,this.minW=this.fullW*.5}!this.isZoomedIn&&e&&this.normalize()}}normalize(){this.state.transform={x:0,y:0,scale:1},this.state.translate={x:0,y:0},this.state.width=this.fullW,this.state.height=this.fullH,this.isZoomedIn=!1}getFromParsedSrcSet(t){if(!this.parsedSrcSet||this.parsedSrcSet.length===0)return null;const e=t*(window.devicePixelRatio||1);let n=this.parsedSrcSet[this.parsedSrcSet.length-1];for(const a of this.parsedSrcSet)if(a.width>=e){n=a;break}return n.src}prepareClose(){w.stop(this),this.setFinalTransform()}cancelPendingLoad(){var t;this.isCancelled=!0,(t=this.element)==null||t.classList.add("vvw--load-cancelled")}setInitialCenter(t){this.initPointerCenter=t}destroy(){var t,e;this.originalParent&&this.thumbImage&&(this.thumbImage.style.cssText=this.originalStyle,this.originalNextSibling?this.originalParent.insertBefore(this.thumbImage,this.originalNextSibling):this.originalParent.appendChild(this.thumbImage)),this.originalParent=null,this.originalNextSibling=null,this.originalStyle="",this.thumbImage=null,this.replacement&&(this.replacement.remove(),this.replacement=null),(t=this.thumb)==null||t.remove(),(e=this.element)==null||e.remove(),this.thumb=null,this.origin=void 0,this.config={src:"",alt:""}}cloneStyleFrom(t,e){t!=null&&t.element&&(e&&(this.transitionState=e||null),t.element.classList.contains("vvw--loaded")&&(this.element.classList.add("vvw--loaded"),this.state.width=t.state.width,this.state.height=t.state.height),t.element.classList.contains("vvw--ready")&&this.element.classList.add("vvw--ready"))}toObject(){return structuredClone({config:{src:this.config.src,alt:this.config.alt,srcSet:this.config.srcSet},origin:this.origin?{src:this.origin.src,srcSet:this.origin.srcSet,borderRadius:this.origin.borderRadius,objectFit:this.origin.objectFit}:null,parsedSrcSet:this.parsedSrcSet,element:"src"in this.element?this.element.src:this.element.toString(),thumb:void 0,index:this.index,pos:this.pos,state:{width:this.state._width,height:this.state._height,transform:this.state._transform,translate:this.state._translate}})}setFinalTransform(t={}){const{propagateEvent:e=!0}=t;if(this.isReady){if(this.state.translate.x+=this.state.transform.x,this.state.translate.y+=this.state.transform.y,this.state.width*=this.state.transform.scale,this.state.height*=this.state.transform.scale,Math.abs(this.state.width-this.fullW)<1&&(this.state.width=this.fullW,this.state.height=this.fullH),Math.abs(this.state.translate.x)<1&&(this.state.translate.x=0),Math.abs(this.state.translate.y)<1&&(this.state.translate.y=0),this.state.translate={...this.state.translate},this.state.transform={x:0,y:0,scale:1},e){const n=this.toObject();this.vistaView.options.onContentChange&&this.vistaView.options.onContentChange(n,this.vistaView),this.vistaView.state.extensions.forEach(a=>{a.onContentChange&&a.onContentChange(n,this.vistaView)})}return{close:!0,cancel:()=>{}}}}}function v(d){if(!d)return null;try{const t=new URL(d),e=d.match(/@(-?\d+\.?\d*),(-?\d+\.?\d*),?(\d+\.?\d*)?z?/);if(e)return{lat:parseFloat(e[1]),lng:parseFloat(e[2]),zoom:e[3]?parseFloat(e[3]):void 0};const n=t.searchParams.get("q");if(n){const i=n.match(/(-?\d+\.?\d*),\s*(-?\d+\.?\d*)/);return i?{lat:parseFloat(i[1]),lng:parseFloat(i[2]),query:n}:{lat:0,lng:0,query:n}}const a=t.searchParams.get("ll");if(a){const[i,s]=a.split(",").map(parseFloat);if(!isNaN(i)&&!isNaN(s))return{lat:i,lng:s}}}catch(t){console.error("Failed to parse Google Maps URL:",t)}return null}function S(d,t){if(!t.apiKey)throw new Error("Google Maps API key is required");const e=d.zoom||t.zoom||15,n=t.width||800,a=t.height||600,i=t.mapType||"roadmap",s=d.query||`${d.lat},${d.lng}`,c=d.query?"":`&markers=color:red|${d.lat},${d.lng}`;return`https://maps.googleapis.com/maps/api/staticmap?center=${encodeURIComponent(s)}&zoom=${e}&size=${n}x${a}&maptype=${i}${c}&key=${t.apiKey}`}class y extends L{constructor(e,n,a){var f;super(e);h(this,"element");h(this,"mapsConfig");h(this,"location");this.mapsConfig=a||{},this.location=n;const i=document.createElement("div");i.style.position="relative";const s=document.createElement("img");i.appendChild(s),s.src=((f=this.origin)==null?void 0:f.image.src)||(a&&a.apiKey?S(n,a):""),s.style.width="100%",s.style.height="100%",s.style.objectFit="cover",s.classList.add("vvw--pulsing"),this.element=i,this.element.classList.add("vvw-img-hi");const{width:c,height:r}=this.getFullSizeDim();if(this.fullH=r,this.fullW=c,this.minW=this.fullW*.5,this.maxW=this.fullW,this.element.style.width=`${c}px`,this.element.style.height=`${r}px`,this.setSizes({stableSize:!1,initDimension:!0}),this.pos===0){const l=document.createElement("iframe");l.frameBorder="0",l.allow="geolocation",l.allowFullscreen=!0,l.width="100%",l.height="100%",l.style.position="absolute",l.style.top="0",l.style.left="0",l.style.backgroundColor="transparent",l.style.opacity="0",l.style.transition="opacity 1s ease";let o;this.location.query?o=`https://www.google.com/maps?q=${encodeURIComponent(this.location.query)}&output=embed`:o=`https://www.google.com/maps?q=${this.location.lat},${this.location.lng}&output=embed`,l.src=o,i.appendChild(l),l.onload=()=>{l.style.opacity="1",s.classList.remove("vvw--pulsing")}}this.isLoadedResolved(!0)}getFullSizeDim(){const e=Math.min(window.innerWidth,this.mapsConfig.width||800);return{width:e,height:e*9/16}}setFinalTransform(){return super.setFinalTransform({propagateEvent:!1})}}function M(d){return{name:"googleMaps",onInitializeImage:t=>{const e=t.elm.config.src,n=v(e);if(n)return new y(t,n,d)},onImageView:async(t,e)=>{const n=t.images.to[Math.floor(t.images.to.length/2)];n instanceof y&&e.deactivateUi(["download","zoomIn","zoomOut"],n)}}}m.VistaGoogleMaps=y,m.getGoogleMapsStaticImage=S,m.googleMaps=M,m.parseGoogleMapsLocation=v,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})}));
1
+ (function(m,g){typeof exports=="object"&&typeof module<"u"?g(exports):typeof define=="function"&&define.amd?define(["exports"],g):(m=typeof globalThis<"u"?globalThis:m||self,g(m.VistaView=m.VistaView||{}))})(this,(function(m){"use strict";var F=Object.defineProperty;var H=(m,g,w)=>g in m?F(m,g,{enumerable:!0,configurable:!0,writable:!0,value:w}):m[g]=w;var h=(m,g,w)=>H(m,typeof g!="symbol"?g+"":g,w);function g(d){const e=window.getComputedStyle(d).objectFit||"",{width:n,height:a}=d.getBoundingClientRect(),i=d.naturalWidth,s=d.naturalHeight;if(!e)return{width:n,height:a};if(!i||!s)return{width:n,height:a};const c=i/s,r=n/a;switch(e){case"fill":return{width:n,height:a};case"none":return{width:i,height:s};case"contain":return c>r?{width:n,height:n/c}:{width:a*c,height:a};case"cover":return c<r?{width:n,height:n/c}:{width:a*c,height:a};case"scale-down":{const f={width:i,height:s},l=c>r?{width:n,height:n/c}:{width:a*c,height:a};return l.width<=f.width&&l.height<=f.height?l:f}}return{width:n,height:a}}class w{static ease(t,e,n){const a=e-t,i=t+a*.2;return Math.abs(a)<n?e:i}static play(t,e,n){if(n()){requestAnimationFrame(()=>{this.play(t,e,n)});return}this.map.get(t)&&(t.element.classList.contains("vvw--load-cancelled")||requestAnimationFrame(()=>{var l,o,u,p,x,b,W,C,_,R;const a=this.map.get(t);if(!a||!t.element||t.element.classList.contains("vvw--load-cancelled"))return;const{current:i,target:s,log:c}=a;let r={};s.width!==void 0&&(r.width=this.ease(i._width,s.width,1)),s.height!==void 0&&(r.height=this.ease(i._height,s.height,1)),((l=s.transform)==null?void 0:l.x)!==void 0&&(r.transform=r.transform||{},r.transform.x=this.ease(i._transform.x,s.transform.x,1)),((o=s.transform)==null?void 0:o.y)!==void 0&&(r.transform=r.transform||{},r.transform.y=this.ease(i._transform.y,s.transform.y,1)),((u=s.transform)==null?void 0:u.scale)!==void 0&&(r.transform=r.transform||{},r.transform.scale=this.ease(i._transform.scale,s.transform.scale,.005)),((p=s.translate)==null?void 0:p.x)!==void 0&&(r.translate=r.translate||{},r.translate.x=this.ease(i._translate.x,s.translate.x,1)),((x=s.translate)==null?void 0:x.y)!==void 0&&(r.translate=r.translate||{},r.translate.y=this.ease(i._translate.y,s.translate.y,1)),r.width!==void 0&&(i.width=r.width),r.height!==void 0&&(i.height=r.height),r.translate&&(i.translate={...i.translate,...r.translate}),r.transform&&(i.transform={...i.transform,...r.transform}),(s.width===void 0||i._width===s.width)&&(s.height===void 0||i._height===s.height)&&(((b=s.transform)==null?void 0:b.x)===void 0||i._transform.x===s.transform.x)&&(((W=s.transform)==null?void 0:W.y)===void 0||i._transform.y===s.transform.y)&&(((C=s.transform)==null?void 0:C.scale)===void 0||i._transform.scale===s.transform.scale)&&(((_=s.translate)==null?void 0:_.x)===void 0||i._translate.x===s.translate.x)&&(((R=s.translate)==null?void 0:R.y)===void 0||i._translate.y===s.translate.y)?(this.map.delete(t),e()):(this.map.set(t,{current:i,target:s,log:c}),this.play(t,e,n))}))}static stop(t){const e=this.map.get(t);return this.map.delete(t),e}static start({vistaImage:t,target:e,onComplete:n,shouldWait:a}){this.stop(t),this.map.set(t,{current:t.state,target:e}),this.play(t,n,a)}}h(w,"map",new Map);class L{constructor(t){h(this,"state");h(this,"parsedSrcSet");h(this,"isReady",!1);h(this,"isThrowing",!1);h(this,"thumb",null);h(this,"pos");h(this,"index");h(this,"config");h(this,"origin");h(this,"initH",0);h(this,"initW",0);h(this,"fullH",0);h(this,"fullW",0);h(this,"maxW",0);h(this,"minW",0);h(this,"defaultWH",200);h(this,"isZoomedIn",!1);h(this,"isCancelled",!1);h(this,"isLoadedResolved",null);h(this,"isLoadedRejected",null);h(this,"isLoaded",new Promise((t,e)=>{this.isLoadedResolved=t,this.isLoadedRejected=e}));h(this,"replacement",null);h(this,"originalParent",null);h(this,"originalNextSibling",null);h(this,"originalStyle","");h(this,"thumbImage",null);h(this,"originRect",{width:this.defaultWH,height:this.defaultWH,top:0,left:0});h(this,"fittedSize",null);h(this,"maxZoomLevel");h(this,"vistaView");h(this,"transitionState",null);h(this,"transitionShouldWait",()=>!1);h(this,"initPointerCenter",{x:0,y:0});h(this,"onScale");var n,a,i;this.state=this.createState(),this.pos=t.pos,this.index=t.index,this.config=t.elm.config,this.parsedSrcSet=t.elm.parsedSrcSet,this.origin=t.elm.origin,this.maxZoomLevel=t.maxZoomLevel,this.vistaView=t.vistaView,this.onScale=t.onScale,t.transitionState&&(this.transitionState=t.transitionState),t.transitionShouldWait&&(this.transitionShouldWait=t.transitionShouldWait),this.initPointerCenter={x:window.innerWidth/2,y:window.innerHeight/2};const e=this.pos===0?(n=this.origin)==null?void 0:n.image:null;if(this.originalParent=(e==null?void 0:e.parentElement)||null,this.originalNextSibling=(e==null?void 0:e.nextSibling)||null,this.originRect=((i=((a=this.origin)==null?void 0:a.anchor)||e)==null?void 0:i.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0},e&&this.originalParent){this.originalStyle=e.style.cssText,this.thumbImage=e;const s=e.cloneNode(!0);this.originalParent.insertBefore(s,e),this.replacement=s,this.thumb=document.createElement("div"),this.thumb.classList.add("vvw-img-lo");const{width:c,height:r}=this.thumbImage?g(this.thumbImage):{width:0,height:0};this.fittedSize={width:c,height:r},this.thumb.appendChild(e),e.style.width="100%",e.style.height="100%",e.style.objectFit=this.origin.objectFit}}createState(){const t=this;return{_t:this,_width:0,_height:0,_transform:{x:0,y:0,scale:1},_translate:{x:0,y:0},_lessThanMinWidth:!1,get width(){return this._width},set width(e){this._width=e,t.onWidthChange(e)},get height(){return this._height},set height(e){this._height=e,t.onHeightChange(e)},get transform(){return this._transform},set transform(e){this._transform=e,t.onTransformChange(e)},get translate(){return this._translate},set translate(e){this._translate=e,t.onTranslateChange(e)},get lessThanMinWidth(){return this._lessThanMinWidth},set lessThanMinWidth(e){this._lessThanMinWidth=e,t.onLessThanMinWidthChange(e)}}}onLessThanMinWidthChange(t){t?this.element.style.opacity="0.5":this.element.style.opacity=""}onTranslateChange(t){this.element.style.translate=`calc(-50% + ${t.x}px) calc(-50% + ${t.y}px)`}onTransformChange(t){const e=`translate3d(${t.x}px, ${t.y}px, 0px) scale3d(${t.scale}, ${t.scale}, 1)`;this.element.style.transform=e}onWidthChange(t){this.element.style.width=`${t}px`}onHeightChange(t){this.element.style.height=`${t}px`}onImageReady(){}animateZoom(t,e){}scaleMove(t,e,n){}momentumThrow(t){return()=>{}}async init(){await this.isLoaded;const t=this.element;this.transitionState&&this.transitionState.current.width&&this.transitionState.current.height?(this.state.width=this.transitionState.current.width,this.state.height=this.transitionState.current.height):t.classList.contains("vvw--loaded")||(this.state.width=this.initW,this.state.height=this.initH);const e=()=>{this.isCancelled||w.start({vistaImage:this,target:{width:this.fullW,height:this.fullH},onComplete:()=>{this.isCancelled||(this.isReady=!0,t.classList.add("vvw--ready"),this.onImageReady())},shouldWait:this.transitionShouldWait})};this.pos<-1||this.pos>1?(this.state.width=this.fullW,this.state.height=this.fullH,t.classList.add("vvw--loaded"),t.classList.add("vvw--ready"),this.isReady=!0):t.classList.contains("vvw--loaded")?t.classList.contains("vvw--ready")?(this.isReady=!0,this.onImageReady()):e():(t.classList.add("vvw--loaded"),setTimeout(()=>{this.isCancelled||e()},333))}getFullSizeDim(){const{width:t,height:e}=this.thumb.getBoundingClientRect(),n=t/e;let a=window.innerWidth,i=window.innerHeight;return n>window.innerWidth/window.innerHeight?i=a/n:a=i*n,{width:a,height:i}}setSizes(t={}){var c,r,f,l;const{stableSize:e=!0,initDimension:n}=t;if(!this.origin)return;const a=this.thumb;n||(this.originRect=((r=((c=this.origin)==null?void 0:c.anchor)||this.replacement)==null?void 0:r.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0});let i=this.originRect;if(a){const o=a.style;o.width=i.width+"px",o.height=i.height+"px",o.top="50%",o.left="50%",o.translate="-50% -50%",o.position="fixed",o.objectFit=this.origin.objectFit,o.borderRadius=this.origin.borderRadius;const u=Math.min(Math.max(i.left,-i.width),window.innerWidth+i.width)-window.innerWidth/2+i.width/2,p=Math.min(Math.max(i.top,-i.height),window.innerHeight+i.height)-window.innerHeight/2+i.height/2;o.setProperty("--vvw-init-radius",o.borderRadius),o.setProperty("--vvw-pulse-radius",`calc(1.3 * ${o.borderRadius})`),o.setProperty("--vvw-init-x",`${u}px`),o.setProperty("--vvw-init-y",`${p}px`),n&&(o.setProperty("--vvw-current-x",`${u}px`),o.setProperty("--vvw-current-y",`${p}px`))}if(!n){const{width:o,height:u}=this.thumbImage?g(this.thumbImage):{width:0,height:0};this.fittedSize={width:o,height:u}}const s=this.element;if(this.initW=Math.min(((f=this.fittedSize)==null?void 0:f.width)??0,i.width),this.initH=Math.min(((l=this.fittedSize)==null?void 0:l.height)??0,i.height),s.style.setProperty("--vvw-init-w",this.initW+"px"),s.style.setProperty("--vvw-init-h",this.initH+"px"),s.style.setProperty("--vvw-init-radius",this.origin.borderRadius),s.style.objectFit="cover",!n){if(this.isReady&&!this.isCancelled){const{width:o,height:u}=this.getFullSizeDim();this.fullH=u,this.fullW=o,this.minW=this.fullW*.5}!this.isZoomedIn&&e&&this.normalize()}}normalize(){this.state.transform={x:0,y:0,scale:1},this.state.translate={x:0,y:0},this.state.width=this.fullW,this.state.height=this.fullH,this.isZoomedIn=!1}getFromParsedSrcSet(t){if(!this.parsedSrcSet||this.parsedSrcSet.length===0)return null;const e=t*(window.devicePixelRatio||1);let n=this.parsedSrcSet[this.parsedSrcSet.length-1];for(const a of this.parsedSrcSet)if(a.width>=e){n=a;break}return n.src}prepareClose(){w.stop(this),this.setFinalTransform()}cancelPendingLoad(){var t;this.isCancelled=!0,(t=this.element)==null||t.classList.add("vvw--load-cancelled")}setInitialCenter(t){this.initPointerCenter=t}destroy(){var t,e;this.originalParent&&this.thumbImage&&(this.thumbImage.style.cssText=this.originalStyle,this.originalNextSibling?this.originalParent.insertBefore(this.thumbImage,this.originalNextSibling):this.originalParent.appendChild(this.thumbImage)),this.originalParent=null,this.originalNextSibling=null,this.originalStyle="",this.thumbImage=null,this.replacement&&(this.replacement.remove(),this.replacement=null),(t=this.thumb)==null||t.remove(),(e=this.element)==null||e.remove(),this.thumb=null,this.origin=void 0,this.config={src:"",alt:""}}cloneStyleFrom(t,e){t!=null&&t.element&&(e&&(this.transitionState=e||null),t.element.classList.contains("vvw--loaded")&&(this.element.classList.add("vvw--loaded"),this.state.width=t.state.width,this.state.height=t.state.height),t.element.classList.contains("vvw--ready")&&this.element.classList.add("vvw--ready"))}toObject(){return structuredClone({config:{src:this.config.src,alt:this.config.alt,srcSet:this.config.srcSet},origin:this.origin?{src:this.origin.src,srcSet:this.origin.srcSet,borderRadius:this.origin.borderRadius,objectFit:this.origin.objectFit}:null,parsedSrcSet:this.parsedSrcSet,element:"src"in this.element?this.element.src:this.element.toString(),thumb:void 0,index:this.index,pos:this.pos,state:{width:this.state._width,height:this.state._height,transform:this.state._transform,translate:this.state._translate}})}setFinalTransform(t={}){const{propagateEvent:e=!0}=t;if(this.isReady){if(this.state.translate.x+=this.state.transform.x,this.state.translate.y+=this.state.transform.y,this.state.width*=this.state.transform.scale,this.state.height*=this.state.transform.scale,Math.abs(this.state.width-this.fullW)<1&&(this.state.width=this.fullW,this.state.height=this.fullH),Math.abs(this.state.translate.x)<1&&(this.state.translate.x=0),Math.abs(this.state.translate.y)<1&&(this.state.translate.y=0),this.state.translate={...this.state.translate},this.state.transform={x:0,y:0,scale:1},e){const n=this.toObject();this.vistaView.options.onContentChange&&this.vistaView.options.onContentChange(n,this.vistaView),this.vistaView.state.extensions.forEach(a=>{a.onContentChange&&a.onContentChange(n,this.vistaView)})}return{close:!0,cancel:()=>{}}}}}function v(d){if(!d)return null;try{const t=new URL(d),e=d.match(/@(-?\d+\.?\d*),(-?\d+\.?\d*),?(\d+\.?\d*)?z?/);if(e)return{lat:parseFloat(e[1]),lng:parseFloat(e[2]),zoom:e[3]?parseFloat(e[3]):void 0};const n=t.searchParams.get("q");if(n){const i=n.match(/(-?\d+\.?\d*),\s*(-?\d+\.?\d*)/);return i?{lat:parseFloat(i[1]),lng:parseFloat(i[2]),query:n}:{lat:0,lng:0,query:n}}const a=t.searchParams.get("ll");if(a){const[i,s]=a.split(",").map(parseFloat);if(!isNaN(i)&&!isNaN(s))return{lat:i,lng:s}}}catch(t){console.error("Failed to parse Google Maps URL:",t)}return null}function S(d,t){if(!t.apiKey)throw new Error("Google Maps API key is required");const e=d.zoom||t.zoom||15,n=t.width||800,a=t.height||600,i=t.mapType||"roadmap",s=d.query||`${d.lat},${d.lng}`,c=d.query?"":`&markers=color:red|${d.lat},${d.lng}`;return`https://maps.googleapis.com/maps/api/staticmap?center=${encodeURIComponent(s)}&zoom=${e}&size=${n}x${a}&maptype=${i}${c}&key=${t.apiKey}`}class y extends L{constructor(e,n,a){var f;super(e);h(this,"element");h(this,"mapsConfig");h(this,"location");this.mapsConfig=a||{},this.location=n;const i=document.createElement("div");i.style.position="relative";const s=document.createElement("img");i.appendChild(s),s.src=((f=this.origin)==null?void 0:f.image.src)||(a&&a.apiKey?S(n,a):""),s.style.width="100%",s.style.height="100%",s.style.objectFit="cover",s.classList.add("vvw--pulsing"),this.element=i,this.element.classList.add("vvw-img-hi");const{width:c,height:r}=this.getFullSizeDim();if(this.fullH=r,this.fullW=c,this.minW=this.fullW*.5,this.maxW=this.fullW,this.element.style.width=`${c}px`,this.element.style.height=`${r}px`,this.setSizes({stableSize:!1,initDimension:!0}),this.pos===0){const l=document.createElement("iframe");l.frameBorder="0",l.allow="geolocation",l.allowFullscreen=!0,l.width="100%",l.height="100%",l.style.position="absolute",l.style.top="0",l.style.left="0",l.style.opacity="0",l.style.transition="opacity 1s ease";let o;this.location.query?o=`https://www.google.com/maps?q=${encodeURIComponent(this.location.query)}&output=embed`:o=`https://www.google.com/maps?q=${this.location.lat},${this.location.lng}&output=embed`,l.src=o,i.appendChild(l),l.onload=()=>{l.style.opacity="1",s.classList.remove("vvw--pulsing")}}this.isLoadedResolved(!0)}getFullSizeDim(){const e=Math.min(window.innerWidth,this.mapsConfig.width||800);return{width:e,height:e*9/16}}setFinalTransform(){return super.setFinalTransform({propagateEvent:!1})}}function M(d){return{name:"googleMaps",onInitializeImage:t=>{const e=t.elm.config.src,n=v(e);if(n)return new y(t,n,d)},onImageView:async(t,e)=>{const n=t.images.to[Math.floor(t.images.to.length/2)];n instanceof y&&e.deactivateUi(["download","zoomIn","zoomOut"],n)}}}m.VistaGoogleMaps=y,m.getGoogleMapsStaticImage=S,m.googleMaps=M,m.parseGoogleMapsLocation=v,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})}));
@@ -33,7 +33,7 @@ class d extends p {
33
33
  const { width: m, height: c } = this.getFullSizeDim();
34
34
  if (this.fullH = c, this.fullW = m, this.minW = this.fullW * 0.5, this.maxW = this.fullW, this.element.style.width = `${m}px`, this.element.style.height = `${c}px`, this.setSizes({ stableSize: !1, initDimension: !0 }), this.pos === 0) {
35
35
  const s = document.createElement("iframe");
36
- s.frameBorder = "0", s.allow = "autoplay; fullscreen", s.allowFullscreen = !0, s.width = "100%", s.height = "100%", s.style.position = "absolute", s.style.top = "0", s.style.left = "0", s.style.backgroundColor = "transparent", s.style.opacity = "0", s.style.transition = "opacity 1s ease", s.src = `https://streamable.com/e/${r(l)}?autoplay=1`, a.appendChild(s), s.onload = () => {
36
+ s.frameBorder = "0", s.allow = "autoplay; fullscreen", s.allowFullscreen = !0, s.width = "100%", s.height = "100%", s.style.position = "absolute", s.style.top = "0", s.style.left = "0", s.style.opacity = "0", s.style.transition = "opacity 333ms ease", s.src = `https://streamable.com/e/${r(l)}?autoplay=1`, a.appendChild(s), s.onload = () => {
37
37
  s.style.opacity = "1", n.classList.remove("vvw--pulsing");
38
38
  };
39
39
  }
@@ -1 +1 @@
1
- (function(m,f){typeof exports=="object"&&typeof module<"u"?f(exports):typeof define=="function"&&define.amd?define(["exports"],f):(m=typeof globalThis<"u"?globalThis:m||self,f(m.VistaView=m.VistaView||{}))})(this,(function(m){"use strict";var F=Object.defineProperty;var P=(m,f,w)=>f in m?F(m,f,{enumerable:!0,configurable:!0,writable:!0,value:w}):m[f]=w;var h=(m,f,w)=>P(m,typeof f!="symbol"?f+"":f,w);function f(c){const e=window.getComputedStyle(c).objectFit||"",{width:s,height:a}=c.getBoundingClientRect(),i=c.naturalWidth,n=c.naturalHeight;if(!e)return{width:s,height:a};if(!i||!n)return{width:s,height:a};const d=i/n,r=s/a;switch(e){case"fill":return{width:s,height:a};case"none":return{width:i,height:n};case"contain":return d>r?{width:s,height:s/d}:{width:a*d,height:a};case"cover":return d<r?{width:s,height:s/d}:{width:a*d,height:a};case"scale-down":{const o={width:i,height:n},g=d>r?{width:s,height:s/d}:{width:a*d,height:a};return g.width<=o.width&&g.height<=o.height?g:o}}return{width:s,height:a}}class w{static ease(t,e,s){const a=e-t,i=t+a*.2;return Math.abs(a)<s?e:i}static play(t,e,s){if(s()){requestAnimationFrame(()=>{this.play(t,e,s)});return}this.map.get(t)&&(t.element.classList.contains("vvw--load-cancelled")||requestAnimationFrame(()=>{var g,l,u,p,b,x,W,_,C,R;const a=this.map.get(t);if(!a||!t.element||t.element.classList.contains("vvw--load-cancelled"))return;const{current:i,target:n,log:d}=a;let r={};n.width!==void 0&&(r.width=this.ease(i._width,n.width,1)),n.height!==void 0&&(r.height=this.ease(i._height,n.height,1)),((g=n.transform)==null?void 0:g.x)!==void 0&&(r.transform=r.transform||{},r.transform.x=this.ease(i._transform.x,n.transform.x,1)),((l=n.transform)==null?void 0:l.y)!==void 0&&(r.transform=r.transform||{},r.transform.y=this.ease(i._transform.y,n.transform.y,1)),((u=n.transform)==null?void 0:u.scale)!==void 0&&(r.transform=r.transform||{},r.transform.scale=this.ease(i._transform.scale,n.transform.scale,.005)),((p=n.translate)==null?void 0:p.x)!==void 0&&(r.translate=r.translate||{},r.translate.x=this.ease(i._translate.x,n.translate.x,1)),((b=n.translate)==null?void 0:b.y)!==void 0&&(r.translate=r.translate||{},r.translate.y=this.ease(i._translate.y,n.translate.y,1)),r.width!==void 0&&(i.width=r.width),r.height!==void 0&&(i.height=r.height),r.translate&&(i.translate={...i.translate,...r.translate}),r.transform&&(i.transform={...i.transform,...r.transform}),(n.width===void 0||i._width===n.width)&&(n.height===void 0||i._height===n.height)&&(((x=n.transform)==null?void 0:x.x)===void 0||i._transform.x===n.transform.x)&&(((W=n.transform)==null?void 0:W.y)===void 0||i._transform.y===n.transform.y)&&(((_=n.transform)==null?void 0:_.scale)===void 0||i._transform.scale===n.transform.scale)&&(((C=n.translate)==null?void 0:C.x)===void 0||i._translate.x===n.translate.x)&&(((R=n.translate)==null?void 0:R.y)===void 0||i._translate.y===n.translate.y)?(this.map.delete(t),e()):(this.map.set(t,{current:i,target:n,log:d}),this.play(t,e,s))}))}static stop(t){const e=this.map.get(t);return this.map.delete(t),e}static start({vistaImage:t,target:e,onComplete:s,shouldWait:a}){this.stop(t),this.map.set(t,{current:t.state,target:e}),this.play(t,s,a)}}h(w,"map",new Map);class L{constructor(t){h(this,"state");h(this,"parsedSrcSet");h(this,"isReady",!1);h(this,"isThrowing",!1);h(this,"thumb",null);h(this,"pos");h(this,"index");h(this,"config");h(this,"origin");h(this,"initH",0);h(this,"initW",0);h(this,"fullH",0);h(this,"fullW",0);h(this,"maxW",0);h(this,"minW",0);h(this,"defaultWH",200);h(this,"isZoomedIn",!1);h(this,"isCancelled",!1);h(this,"isLoadedResolved",null);h(this,"isLoadedRejected",null);h(this,"isLoaded",new Promise((t,e)=>{this.isLoadedResolved=t,this.isLoadedRejected=e}));h(this,"replacement",null);h(this,"originalParent",null);h(this,"originalNextSibling",null);h(this,"originalStyle","");h(this,"thumbImage",null);h(this,"originRect",{width:this.defaultWH,height:this.defaultWH,top:0,left:0});h(this,"fittedSize",null);h(this,"maxZoomLevel");h(this,"vistaView");h(this,"transitionState",null);h(this,"transitionShouldWait",()=>!1);h(this,"initPointerCenter",{x:0,y:0});h(this,"onScale");var s,a,i;this.state=this.createState(),this.pos=t.pos,this.index=t.index,this.config=t.elm.config,this.parsedSrcSet=t.elm.parsedSrcSet,this.origin=t.elm.origin,this.maxZoomLevel=t.maxZoomLevel,this.vistaView=t.vistaView,this.onScale=t.onScale,t.transitionState&&(this.transitionState=t.transitionState),t.transitionShouldWait&&(this.transitionShouldWait=t.transitionShouldWait),this.initPointerCenter={x:window.innerWidth/2,y:window.innerHeight/2};const e=this.pos===0?(s=this.origin)==null?void 0:s.image:null;if(this.originalParent=(e==null?void 0:e.parentElement)||null,this.originalNextSibling=(e==null?void 0:e.nextSibling)||null,this.originRect=((i=((a=this.origin)==null?void 0:a.anchor)||e)==null?void 0:i.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0},e&&this.originalParent){this.originalStyle=e.style.cssText,this.thumbImage=e;const n=e.cloneNode(!0);this.originalParent.insertBefore(n,e),this.replacement=n,this.thumb=document.createElement("div"),this.thumb.classList.add("vvw-img-lo");const{width:d,height:r}=this.thumbImage?f(this.thumbImage):{width:0,height:0};this.fittedSize={width:d,height:r},this.thumb.appendChild(e),e.style.width="100%",e.style.height="100%",e.style.objectFit=this.origin.objectFit}}createState(){const t=this;return{_t:this,_width:0,_height:0,_transform:{x:0,y:0,scale:1},_translate:{x:0,y:0},_lessThanMinWidth:!1,get width(){return this._width},set width(e){this._width=e,t.onWidthChange(e)},get height(){return this._height},set height(e){this._height=e,t.onHeightChange(e)},get transform(){return this._transform},set transform(e){this._transform=e,t.onTransformChange(e)},get translate(){return this._translate},set translate(e){this._translate=e,t.onTranslateChange(e)},get lessThanMinWidth(){return this._lessThanMinWidth},set lessThanMinWidth(e){this._lessThanMinWidth=e,t.onLessThanMinWidthChange(e)}}}onLessThanMinWidthChange(t){t?this.element.style.opacity="0.5":this.element.style.opacity=""}onTranslateChange(t){this.element.style.translate=`calc(-50% + ${t.x}px) calc(-50% + ${t.y}px)`}onTransformChange(t){const e=`translate3d(${t.x}px, ${t.y}px, 0px) scale3d(${t.scale}, ${t.scale}, 1)`;this.element.style.transform=e}onWidthChange(t){this.element.style.width=`${t}px`}onHeightChange(t){this.element.style.height=`${t}px`}onImageReady(){}animateZoom(t,e){}scaleMove(t,e,s){}momentumThrow(t){return()=>{}}async init(){await this.isLoaded;const t=this.element;this.transitionState&&this.transitionState.current.width&&this.transitionState.current.height?(this.state.width=this.transitionState.current.width,this.state.height=this.transitionState.current.height):t.classList.contains("vvw--loaded")||(this.state.width=this.initW,this.state.height=this.initH);const e=()=>{this.isCancelled||w.start({vistaImage:this,target:{width:this.fullW,height:this.fullH},onComplete:()=>{this.isCancelled||(this.isReady=!0,t.classList.add("vvw--ready"),this.onImageReady())},shouldWait:this.transitionShouldWait})};this.pos<-1||this.pos>1?(this.state.width=this.fullW,this.state.height=this.fullH,t.classList.add("vvw--loaded"),t.classList.add("vvw--ready"),this.isReady=!0):t.classList.contains("vvw--loaded")?t.classList.contains("vvw--ready")?(this.isReady=!0,this.onImageReady()):e():(t.classList.add("vvw--loaded"),setTimeout(()=>{this.isCancelled||e()},333))}getFullSizeDim(){const{width:t,height:e}=this.thumb.getBoundingClientRect(),s=t/e;let a=window.innerWidth,i=window.innerHeight;return s>window.innerWidth/window.innerHeight?i=a/s:a=i*s,{width:a,height:i}}setSizes(t={}){var d,r,o,g;const{stableSize:e=!0,initDimension:s}=t;if(!this.origin)return;const a=this.thumb;s||(this.originRect=((r=((d=this.origin)==null?void 0:d.anchor)||this.replacement)==null?void 0:r.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0});let i=this.originRect;if(a){const l=a.style;l.width=i.width+"px",l.height=i.height+"px",l.top="50%",l.left="50%",l.translate="-50% -50%",l.position="fixed",l.objectFit=this.origin.objectFit,l.borderRadius=this.origin.borderRadius;const u=Math.min(Math.max(i.left,-i.width),window.innerWidth+i.width)-window.innerWidth/2+i.width/2,p=Math.min(Math.max(i.top,-i.height),window.innerHeight+i.height)-window.innerHeight/2+i.height/2;l.setProperty("--vvw-init-radius",l.borderRadius),l.setProperty("--vvw-pulse-radius",`calc(1.3 * ${l.borderRadius})`),l.setProperty("--vvw-init-x",`${u}px`),l.setProperty("--vvw-init-y",`${p}px`),s&&(l.setProperty("--vvw-current-x",`${u}px`),l.setProperty("--vvw-current-y",`${p}px`))}if(!s){const{width:l,height:u}=this.thumbImage?f(this.thumbImage):{width:0,height:0};this.fittedSize={width:l,height:u}}const n=this.element;if(this.initW=Math.min(((o=this.fittedSize)==null?void 0:o.width)??0,i.width),this.initH=Math.min(((g=this.fittedSize)==null?void 0:g.height)??0,i.height),n.style.setProperty("--vvw-init-w",this.initW+"px"),n.style.setProperty("--vvw-init-h",this.initH+"px"),n.style.setProperty("--vvw-init-radius",this.origin.borderRadius),n.style.objectFit="cover",!s){if(this.isReady&&!this.isCancelled){const{width:l,height:u}=this.getFullSizeDim();this.fullH=u,this.fullW=l,this.minW=this.fullW*.5}!this.isZoomedIn&&e&&this.normalize()}}normalize(){this.state.transform={x:0,y:0,scale:1},this.state.translate={x:0,y:0},this.state.width=this.fullW,this.state.height=this.fullH,this.isZoomedIn=!1}getFromParsedSrcSet(t){if(!this.parsedSrcSet||this.parsedSrcSet.length===0)return null;const e=t*(window.devicePixelRatio||1);let s=this.parsedSrcSet[this.parsedSrcSet.length-1];for(const a of this.parsedSrcSet)if(a.width>=e){s=a;break}return s.src}prepareClose(){w.stop(this),this.setFinalTransform()}cancelPendingLoad(){var t;this.isCancelled=!0,(t=this.element)==null||t.classList.add("vvw--load-cancelled")}setInitialCenter(t){this.initPointerCenter=t}destroy(){var t,e;this.originalParent&&this.thumbImage&&(this.thumbImage.style.cssText=this.originalStyle,this.originalNextSibling?this.originalParent.insertBefore(this.thumbImage,this.originalNextSibling):this.originalParent.appendChild(this.thumbImage)),this.originalParent=null,this.originalNextSibling=null,this.originalStyle="",this.thumbImage=null,this.replacement&&(this.replacement.remove(),this.replacement=null),(t=this.thumb)==null||t.remove(),(e=this.element)==null||e.remove(),this.thumb=null,this.origin=void 0,this.config={src:"",alt:""}}cloneStyleFrom(t,e){t!=null&&t.element&&(e&&(this.transitionState=e||null),t.element.classList.contains("vvw--loaded")&&(this.element.classList.add("vvw--loaded"),this.state.width=t.state.width,this.state.height=t.state.height),t.element.classList.contains("vvw--ready")&&this.element.classList.add("vvw--ready"))}toObject(){return structuredClone({config:{src:this.config.src,alt:this.config.alt,srcSet:this.config.srcSet},origin:this.origin?{src:this.origin.src,srcSet:this.origin.srcSet,borderRadius:this.origin.borderRadius,objectFit:this.origin.objectFit}:null,parsedSrcSet:this.parsedSrcSet,element:"src"in this.element?this.element.src:this.element.toString(),thumb:void 0,index:this.index,pos:this.pos,state:{width:this.state._width,height:this.state._height,transform:this.state._transform,translate:this.state._translate}})}setFinalTransform(t={}){const{propagateEvent:e=!0}=t;if(this.isReady){if(this.state.translate.x+=this.state.transform.x,this.state.translate.y+=this.state.transform.y,this.state.width*=this.state.transform.scale,this.state.height*=this.state.transform.scale,Math.abs(this.state.width-this.fullW)<1&&(this.state.width=this.fullW,this.state.height=this.fullH),Math.abs(this.state.translate.x)<1&&(this.state.translate.x=0),Math.abs(this.state.translate.y)<1&&(this.state.translate.y=0),this.state.translate={...this.state.translate},this.state.transform={x:0,y:0,scale:1},e){const s=this.toObject();this.vistaView.options.onContentChange&&this.vistaView.options.onContentChange(s,this.vistaView),this.vistaView.state.extensions.forEach(a=>{a.onContentChange&&a.onContentChange(s,this.vistaView)})}return{close:!0,cancel:()=>{}}}}}function y(c){if(!c)return null;const t=[/streamable\.com\/e\/([a-zA-Z0-9]+)/,/streamable\.com\/([a-zA-Z0-9]+)/];for(const e of t){const s=c.match(e);if(s&&s[1])return s[1]}return null}function S(c){const t=y(c);if(!t)throw new Error("Invalid Streamable video URL");return`https://cdn-cf-east.streamable.com/image/${t}.jpg`}class v extends L{constructor(e){var r;super(e);h(this,"element");h(this,"url");const s=e.elm.config.src;this.url=s;const a=document.createElement("div");a.style.position="relative";const i=document.createElement("img");a.appendChild(i),i.src=((r=this.origin)==null?void 0:r.image.src)||S(s),i.style.width="100%",i.style.height="100%",i.style.objectFit="cover",i.classList.add("vvw--pulsing"),this.element=a,this.element.classList.add("vvw-img-hi");const{width:n,height:d}=this.getFullSizeDim();if(this.fullH=d,this.fullW=n,this.minW=this.fullW*.5,this.maxW=this.fullW,this.element.style.width=`${n}px`,this.element.style.height=`${d}px`,this.setSizes({stableSize:!1,initDimension:!0}),this.pos===0){const o=document.createElement("iframe");o.frameBorder="0",o.allow="autoplay; fullscreen",o.allowFullscreen=!0,o.width="100%",o.height="100%",o.style.position="absolute",o.style.top="0",o.style.left="0",o.style.backgroundColor="transparent",o.style.opacity="0",o.style.transition="opacity 1s ease",o.src=`https://streamable.com/e/${y(s)}?autoplay=1`,a.appendChild(o),o.onload=()=>{o.style.opacity="1",i.classList.remove("vvw--pulsing")}}this.isLoadedResolved(!0)}getFullSizeDim(){const e=Math.min(window.innerWidth,800);return{width:e,height:e*9/16}}setFinalTransform(){return super.setFinalTransform({propagateEvent:!1})}}function H(){return{name:"streamableVideo",onInitializeImage:c=>{const t=c.elm.config.src;if(y(t))return new v(c)},onImageView:async(c,t)=>{const e=c.images.to[Math.floor(c.images.to.length/2)];e instanceof v&&t.deactivateUi(["download","zoomIn","zoomOut"],e)}}}m.VistaStreamableVideo=v,m.getStreamableThumbnail=S,m.parseStreamableVideoId=y,m.streamableVideo=H,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})}));
1
+ (function(m,f){typeof exports=="object"&&typeof module<"u"?f(exports):typeof define=="function"&&define.amd?define(["exports"],f):(m=typeof globalThis<"u"?globalThis:m||self,f(m.VistaView=m.VistaView||{}))})(this,(function(m){"use strict";var F=Object.defineProperty;var P=(m,f,w)=>f in m?F(m,f,{enumerable:!0,configurable:!0,writable:!0,value:w}):m[f]=w;var h=(m,f,w)=>P(m,typeof f!="symbol"?f+"":f,w);function f(c){const e=window.getComputedStyle(c).objectFit||"",{width:s,height:a}=c.getBoundingClientRect(),i=c.naturalWidth,n=c.naturalHeight;if(!e)return{width:s,height:a};if(!i||!n)return{width:s,height:a};const d=i/n,r=s/a;switch(e){case"fill":return{width:s,height:a};case"none":return{width:i,height:n};case"contain":return d>r?{width:s,height:s/d}:{width:a*d,height:a};case"cover":return d<r?{width:s,height:s/d}:{width:a*d,height:a};case"scale-down":{const o={width:i,height:n},g=d>r?{width:s,height:s/d}:{width:a*d,height:a};return g.width<=o.width&&g.height<=o.height?g:o}}return{width:s,height:a}}class w{static ease(t,e,s){const a=e-t,i=t+a*.2;return Math.abs(a)<s?e:i}static play(t,e,s){if(s()){requestAnimationFrame(()=>{this.play(t,e,s)});return}this.map.get(t)&&(t.element.classList.contains("vvw--load-cancelled")||requestAnimationFrame(()=>{var g,l,u,p,b,x,W,_,C,R;const a=this.map.get(t);if(!a||!t.element||t.element.classList.contains("vvw--load-cancelled"))return;const{current:i,target:n,log:d}=a;let r={};n.width!==void 0&&(r.width=this.ease(i._width,n.width,1)),n.height!==void 0&&(r.height=this.ease(i._height,n.height,1)),((g=n.transform)==null?void 0:g.x)!==void 0&&(r.transform=r.transform||{},r.transform.x=this.ease(i._transform.x,n.transform.x,1)),((l=n.transform)==null?void 0:l.y)!==void 0&&(r.transform=r.transform||{},r.transform.y=this.ease(i._transform.y,n.transform.y,1)),((u=n.transform)==null?void 0:u.scale)!==void 0&&(r.transform=r.transform||{},r.transform.scale=this.ease(i._transform.scale,n.transform.scale,.005)),((p=n.translate)==null?void 0:p.x)!==void 0&&(r.translate=r.translate||{},r.translate.x=this.ease(i._translate.x,n.translate.x,1)),((b=n.translate)==null?void 0:b.y)!==void 0&&(r.translate=r.translate||{},r.translate.y=this.ease(i._translate.y,n.translate.y,1)),r.width!==void 0&&(i.width=r.width),r.height!==void 0&&(i.height=r.height),r.translate&&(i.translate={...i.translate,...r.translate}),r.transform&&(i.transform={...i.transform,...r.transform}),(n.width===void 0||i._width===n.width)&&(n.height===void 0||i._height===n.height)&&(((x=n.transform)==null?void 0:x.x)===void 0||i._transform.x===n.transform.x)&&(((W=n.transform)==null?void 0:W.y)===void 0||i._transform.y===n.transform.y)&&(((_=n.transform)==null?void 0:_.scale)===void 0||i._transform.scale===n.transform.scale)&&(((C=n.translate)==null?void 0:C.x)===void 0||i._translate.x===n.translate.x)&&(((R=n.translate)==null?void 0:R.y)===void 0||i._translate.y===n.translate.y)?(this.map.delete(t),e()):(this.map.set(t,{current:i,target:n,log:d}),this.play(t,e,s))}))}static stop(t){const e=this.map.get(t);return this.map.delete(t),e}static start({vistaImage:t,target:e,onComplete:s,shouldWait:a}){this.stop(t),this.map.set(t,{current:t.state,target:e}),this.play(t,s,a)}}h(w,"map",new Map);class L{constructor(t){h(this,"state");h(this,"parsedSrcSet");h(this,"isReady",!1);h(this,"isThrowing",!1);h(this,"thumb",null);h(this,"pos");h(this,"index");h(this,"config");h(this,"origin");h(this,"initH",0);h(this,"initW",0);h(this,"fullH",0);h(this,"fullW",0);h(this,"maxW",0);h(this,"minW",0);h(this,"defaultWH",200);h(this,"isZoomedIn",!1);h(this,"isCancelled",!1);h(this,"isLoadedResolved",null);h(this,"isLoadedRejected",null);h(this,"isLoaded",new Promise((t,e)=>{this.isLoadedResolved=t,this.isLoadedRejected=e}));h(this,"replacement",null);h(this,"originalParent",null);h(this,"originalNextSibling",null);h(this,"originalStyle","");h(this,"thumbImage",null);h(this,"originRect",{width:this.defaultWH,height:this.defaultWH,top:0,left:0});h(this,"fittedSize",null);h(this,"maxZoomLevel");h(this,"vistaView");h(this,"transitionState",null);h(this,"transitionShouldWait",()=>!1);h(this,"initPointerCenter",{x:0,y:0});h(this,"onScale");var s,a,i;this.state=this.createState(),this.pos=t.pos,this.index=t.index,this.config=t.elm.config,this.parsedSrcSet=t.elm.parsedSrcSet,this.origin=t.elm.origin,this.maxZoomLevel=t.maxZoomLevel,this.vistaView=t.vistaView,this.onScale=t.onScale,t.transitionState&&(this.transitionState=t.transitionState),t.transitionShouldWait&&(this.transitionShouldWait=t.transitionShouldWait),this.initPointerCenter={x:window.innerWidth/2,y:window.innerHeight/2};const e=this.pos===0?(s=this.origin)==null?void 0:s.image:null;if(this.originalParent=(e==null?void 0:e.parentElement)||null,this.originalNextSibling=(e==null?void 0:e.nextSibling)||null,this.originRect=((i=((a=this.origin)==null?void 0:a.anchor)||e)==null?void 0:i.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0},e&&this.originalParent){this.originalStyle=e.style.cssText,this.thumbImage=e;const n=e.cloneNode(!0);this.originalParent.insertBefore(n,e),this.replacement=n,this.thumb=document.createElement("div"),this.thumb.classList.add("vvw-img-lo");const{width:d,height:r}=this.thumbImage?f(this.thumbImage):{width:0,height:0};this.fittedSize={width:d,height:r},this.thumb.appendChild(e),e.style.width="100%",e.style.height="100%",e.style.objectFit=this.origin.objectFit}}createState(){const t=this;return{_t:this,_width:0,_height:0,_transform:{x:0,y:0,scale:1},_translate:{x:0,y:0},_lessThanMinWidth:!1,get width(){return this._width},set width(e){this._width=e,t.onWidthChange(e)},get height(){return this._height},set height(e){this._height=e,t.onHeightChange(e)},get transform(){return this._transform},set transform(e){this._transform=e,t.onTransformChange(e)},get translate(){return this._translate},set translate(e){this._translate=e,t.onTranslateChange(e)},get lessThanMinWidth(){return this._lessThanMinWidth},set lessThanMinWidth(e){this._lessThanMinWidth=e,t.onLessThanMinWidthChange(e)}}}onLessThanMinWidthChange(t){t?this.element.style.opacity="0.5":this.element.style.opacity=""}onTranslateChange(t){this.element.style.translate=`calc(-50% + ${t.x}px) calc(-50% + ${t.y}px)`}onTransformChange(t){const e=`translate3d(${t.x}px, ${t.y}px, 0px) scale3d(${t.scale}, ${t.scale}, 1)`;this.element.style.transform=e}onWidthChange(t){this.element.style.width=`${t}px`}onHeightChange(t){this.element.style.height=`${t}px`}onImageReady(){}animateZoom(t,e){}scaleMove(t,e,s){}momentumThrow(t){return()=>{}}async init(){await this.isLoaded;const t=this.element;this.transitionState&&this.transitionState.current.width&&this.transitionState.current.height?(this.state.width=this.transitionState.current.width,this.state.height=this.transitionState.current.height):t.classList.contains("vvw--loaded")||(this.state.width=this.initW,this.state.height=this.initH);const e=()=>{this.isCancelled||w.start({vistaImage:this,target:{width:this.fullW,height:this.fullH},onComplete:()=>{this.isCancelled||(this.isReady=!0,t.classList.add("vvw--ready"),this.onImageReady())},shouldWait:this.transitionShouldWait})};this.pos<-1||this.pos>1?(this.state.width=this.fullW,this.state.height=this.fullH,t.classList.add("vvw--loaded"),t.classList.add("vvw--ready"),this.isReady=!0):t.classList.contains("vvw--loaded")?t.classList.contains("vvw--ready")?(this.isReady=!0,this.onImageReady()):e():(t.classList.add("vvw--loaded"),setTimeout(()=>{this.isCancelled||e()},333))}getFullSizeDim(){const{width:t,height:e}=this.thumb.getBoundingClientRect(),s=t/e;let a=window.innerWidth,i=window.innerHeight;return s>window.innerWidth/window.innerHeight?i=a/s:a=i*s,{width:a,height:i}}setSizes(t={}){var d,r,o,g;const{stableSize:e=!0,initDimension:s}=t;if(!this.origin)return;const a=this.thumb;s||(this.originRect=((r=((d=this.origin)==null?void 0:d.anchor)||this.replacement)==null?void 0:r.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0});let i=this.originRect;if(a){const l=a.style;l.width=i.width+"px",l.height=i.height+"px",l.top="50%",l.left="50%",l.translate="-50% -50%",l.position="fixed",l.objectFit=this.origin.objectFit,l.borderRadius=this.origin.borderRadius;const u=Math.min(Math.max(i.left,-i.width),window.innerWidth+i.width)-window.innerWidth/2+i.width/2,p=Math.min(Math.max(i.top,-i.height),window.innerHeight+i.height)-window.innerHeight/2+i.height/2;l.setProperty("--vvw-init-radius",l.borderRadius),l.setProperty("--vvw-pulse-radius",`calc(1.3 * ${l.borderRadius})`),l.setProperty("--vvw-init-x",`${u}px`),l.setProperty("--vvw-init-y",`${p}px`),s&&(l.setProperty("--vvw-current-x",`${u}px`),l.setProperty("--vvw-current-y",`${p}px`))}if(!s){const{width:l,height:u}=this.thumbImage?f(this.thumbImage):{width:0,height:0};this.fittedSize={width:l,height:u}}const n=this.element;if(this.initW=Math.min(((o=this.fittedSize)==null?void 0:o.width)??0,i.width),this.initH=Math.min(((g=this.fittedSize)==null?void 0:g.height)??0,i.height),n.style.setProperty("--vvw-init-w",this.initW+"px"),n.style.setProperty("--vvw-init-h",this.initH+"px"),n.style.setProperty("--vvw-init-radius",this.origin.borderRadius),n.style.objectFit="cover",!s){if(this.isReady&&!this.isCancelled){const{width:l,height:u}=this.getFullSizeDim();this.fullH=u,this.fullW=l,this.minW=this.fullW*.5}!this.isZoomedIn&&e&&this.normalize()}}normalize(){this.state.transform={x:0,y:0,scale:1},this.state.translate={x:0,y:0},this.state.width=this.fullW,this.state.height=this.fullH,this.isZoomedIn=!1}getFromParsedSrcSet(t){if(!this.parsedSrcSet||this.parsedSrcSet.length===0)return null;const e=t*(window.devicePixelRatio||1);let s=this.parsedSrcSet[this.parsedSrcSet.length-1];for(const a of this.parsedSrcSet)if(a.width>=e){s=a;break}return s.src}prepareClose(){w.stop(this),this.setFinalTransform()}cancelPendingLoad(){var t;this.isCancelled=!0,(t=this.element)==null||t.classList.add("vvw--load-cancelled")}setInitialCenter(t){this.initPointerCenter=t}destroy(){var t,e;this.originalParent&&this.thumbImage&&(this.thumbImage.style.cssText=this.originalStyle,this.originalNextSibling?this.originalParent.insertBefore(this.thumbImage,this.originalNextSibling):this.originalParent.appendChild(this.thumbImage)),this.originalParent=null,this.originalNextSibling=null,this.originalStyle="",this.thumbImage=null,this.replacement&&(this.replacement.remove(),this.replacement=null),(t=this.thumb)==null||t.remove(),(e=this.element)==null||e.remove(),this.thumb=null,this.origin=void 0,this.config={src:"",alt:""}}cloneStyleFrom(t,e){t!=null&&t.element&&(e&&(this.transitionState=e||null),t.element.classList.contains("vvw--loaded")&&(this.element.classList.add("vvw--loaded"),this.state.width=t.state.width,this.state.height=t.state.height),t.element.classList.contains("vvw--ready")&&this.element.classList.add("vvw--ready"))}toObject(){return structuredClone({config:{src:this.config.src,alt:this.config.alt,srcSet:this.config.srcSet},origin:this.origin?{src:this.origin.src,srcSet:this.origin.srcSet,borderRadius:this.origin.borderRadius,objectFit:this.origin.objectFit}:null,parsedSrcSet:this.parsedSrcSet,element:"src"in this.element?this.element.src:this.element.toString(),thumb:void 0,index:this.index,pos:this.pos,state:{width:this.state._width,height:this.state._height,transform:this.state._transform,translate:this.state._translate}})}setFinalTransform(t={}){const{propagateEvent:e=!0}=t;if(this.isReady){if(this.state.translate.x+=this.state.transform.x,this.state.translate.y+=this.state.transform.y,this.state.width*=this.state.transform.scale,this.state.height*=this.state.transform.scale,Math.abs(this.state.width-this.fullW)<1&&(this.state.width=this.fullW,this.state.height=this.fullH),Math.abs(this.state.translate.x)<1&&(this.state.translate.x=0),Math.abs(this.state.translate.y)<1&&(this.state.translate.y=0),this.state.translate={...this.state.translate},this.state.transform={x:0,y:0,scale:1},e){const s=this.toObject();this.vistaView.options.onContentChange&&this.vistaView.options.onContentChange(s,this.vistaView),this.vistaView.state.extensions.forEach(a=>{a.onContentChange&&a.onContentChange(s,this.vistaView)})}return{close:!0,cancel:()=>{}}}}}function y(c){if(!c)return null;const t=[/streamable\.com\/e\/([a-zA-Z0-9]+)/,/streamable\.com\/([a-zA-Z0-9]+)/];for(const e of t){const s=c.match(e);if(s&&s[1])return s[1]}return null}function S(c){const t=y(c);if(!t)throw new Error("Invalid Streamable video URL");return`https://cdn-cf-east.streamable.com/image/${t}.jpg`}class v extends L{constructor(e){var r;super(e);h(this,"element");h(this,"url");const s=e.elm.config.src;this.url=s;const a=document.createElement("div");a.style.position="relative";const i=document.createElement("img");a.appendChild(i),i.src=((r=this.origin)==null?void 0:r.image.src)||S(s),i.style.width="100%",i.style.height="100%",i.style.objectFit="cover",i.classList.add("vvw--pulsing"),this.element=a,this.element.classList.add("vvw-img-hi");const{width:n,height:d}=this.getFullSizeDim();if(this.fullH=d,this.fullW=n,this.minW=this.fullW*.5,this.maxW=this.fullW,this.element.style.width=`${n}px`,this.element.style.height=`${d}px`,this.setSizes({stableSize:!1,initDimension:!0}),this.pos===0){const o=document.createElement("iframe");o.frameBorder="0",o.allow="autoplay; fullscreen",o.allowFullscreen=!0,o.width="100%",o.height="100%",o.style.position="absolute",o.style.top="0",o.style.left="0",o.style.opacity="0",o.style.transition="opacity 333ms ease",o.src=`https://streamable.com/e/${y(s)}?autoplay=1`,a.appendChild(o),o.onload=()=>{o.style.opacity="1",i.classList.remove("vvw--pulsing")}}this.isLoadedResolved(!0)}getFullSizeDim(){const e=Math.min(window.innerWidth,800);return{width:e,height:e*9/16}}setFinalTransform(){return super.setFinalTransform({propagateEvent:!1})}}function H(){return{name:"streamableVideo",onInitializeImage:c=>{const t=c.elm.config.src;if(y(t))return new v(c)},onImageView:async(c,t)=>{const e=c.images.to[Math.floor(c.images.to.length/2)];e instanceof v&&t.deactivateUi(["download","zoomIn","zoomOut"],e)}}}m.VistaStreamableVideo=v,m.getStreamableThumbnail=S,m.parseStreamableVideoId=y,m.streamableVideo=H,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})}));
@@ -34,7 +34,7 @@ class m extends w {
34
34
  const { width: r, height: d } = this.getFullSizeDim();
35
35
  if (this.fullH = d, this.fullW = r, this.minW = this.fullW * 0.5, this.maxW = this.fullW, this.element.style.width = `${r}px`, this.element.style.height = `${d}px`, this.setSizes({ stableSize: !1, initDimension: !0 }), this.pos === 0) {
36
36
  const n = document.createElement("iframe");
37
- n.frameBorder = "0", n.allow = "autoplay; fullscreen", n.allowFullscreen = !0, n.width = "100%", n.height = "100%", n.style.position = "absolute", n.style.top = "0", n.style.left = "0", n.style.backgroundColor = "transparent", n.style.opacity = "0", n.style.transition = "opacity 1s ease";
37
+ n.frameBorder = "0", n.allow = "autoplay; fullscreen", n.allowFullscreen = !0, n.width = "100%", n.height = "100%", n.style.position = "absolute", n.style.top = "0", n.style.left = "0", n.style.opacity = "0", n.style.transition = "opacity 333ms ease";
38
38
  const s = h(l);
39
39
  (s == null ? void 0 : s.type) === "channel" ? n.src = `https://player.twitch.tv/?channel=${s.id}&parent=${window.location.hostname}&autoplay=false` : (s == null ? void 0 : s.type) === "video" && (n.src = `https://player.twitch.tv/?video=${s.id}&parent=${window.location.hostname}&autoplay=true`), a.appendChild(n), n.onload = () => {
40
40
  n.style.opacity = "1", o.classList.remove("vvw--pulsing");
@@ -37,7 +37,7 @@ class m extends f {
37
37
  const { width: d, height: c } = this.getFullSizeDim();
38
38
  if (this.fullH = c, this.fullW = d, this.minW = this.fullW * 0.5, this.maxW = this.fullW, this.element.style.width = `${d}px`, this.element.style.height = `${c}px`, this.setSizes({ stableSize: !1, initDimension: !0 }), this.pos === 0) {
39
39
  const s = document.createElement("iframe");
40
- s.frameBorder = "0", s.allow = "autoplay; fullscreen", s.allowFullscreen = !0, s.width = "100%", s.height = "100%", s.style.position = "absolute", s.style.top = "0", s.style.left = "0", s.style.backgroundColor = "transparent", s.style.opacity = "0", s.style.transition = "opacity 1s ease", s.src = `https://play.vidyard.com/${r(n)}?autoplay=1`, a.appendChild(s), s.onload = () => {
40
+ s.frameBorder = "0", s.allow = "autoplay; fullscreen", s.allowFullscreen = !0, s.width = "100%", s.height = "100%", s.style.position = "absolute", s.style.top = "0", s.style.left = "0", s.style.opacity = "0", s.style.transition = "opacity 333ms ease", s.src = `https://play.vidyard.com/${r(n)}?autoplay=1`, a.appendChild(s), s.onload = () => {
41
41
  s.style.opacity = "1", o.classList.remove("vvw--pulsing");
42
42
  };
43
43
  }
@@ -1 +1 @@
1
- (function(f,m){typeof exports=="object"&&typeof module<"u"?m(exports):typeof define=="function"&&define.amd?define(["exports"],m):(f=typeof globalThis<"u"?globalThis:f||self,m(f.VistaView=f.VistaView||{}))})(this,(function(f){"use strict";var V=Object.defineProperty;var F=(f,m,w)=>m in f?V(f,m,{enumerable:!0,configurable:!0,writable:!0,value:w}):f[m]=w;var h=(f,m,w)=>F(f,typeof m!="symbol"?m+"":m,w);function m(c){const i=window.getComputedStyle(c).objectFit||"",{width:s,height:a}=c.getBoundingClientRect(),e=c.naturalWidth,n=c.naturalHeight;if(!i)return{width:s,height:a};if(!e||!n)return{width:s,height:a};const d=e/n,r=s/a;switch(i){case"fill":return{width:s,height:a};case"none":return{width:e,height:n};case"contain":return d>r?{width:s,height:s/d}:{width:a*d,height:a};case"cover":return d<r?{width:s,height:s/d}:{width:a*d,height:a};case"scale-down":{const o={width:e,height:n},g=d>r?{width:s,height:s/d}:{width:a*d,height:a};return g.width<=o.width&&g.height<=o.height?g:o}}return{width:s,height:a}}class w{static ease(t,i,s){const a=i-t,e=t+a*.2;return Math.abs(a)<s?i:e}static play(t,i,s){if(s()){requestAnimationFrame(()=>{this.play(t,i,s)});return}this.map.get(t)&&(t.element.classList.contains("vvw--load-cancelled")||requestAnimationFrame(()=>{var g,l,u,y,x,b,W,_,C,R;const a=this.map.get(t);if(!a||!t.element||t.element.classList.contains("vvw--load-cancelled"))return;const{current:e,target:n,log:d}=a;let r={};n.width!==void 0&&(r.width=this.ease(e._width,n.width,1)),n.height!==void 0&&(r.height=this.ease(e._height,n.height,1)),((g=n.transform)==null?void 0:g.x)!==void 0&&(r.transform=r.transform||{},r.transform.x=this.ease(e._transform.x,n.transform.x,1)),((l=n.transform)==null?void 0:l.y)!==void 0&&(r.transform=r.transform||{},r.transform.y=this.ease(e._transform.y,n.transform.y,1)),((u=n.transform)==null?void 0:u.scale)!==void 0&&(r.transform=r.transform||{},r.transform.scale=this.ease(e._transform.scale,n.transform.scale,.005)),((y=n.translate)==null?void 0:y.x)!==void 0&&(r.translate=r.translate||{},r.translate.x=this.ease(e._translate.x,n.translate.x,1)),((x=n.translate)==null?void 0:x.y)!==void 0&&(r.translate=r.translate||{},r.translate.y=this.ease(e._translate.y,n.translate.y,1)),r.width!==void 0&&(e.width=r.width),r.height!==void 0&&(e.height=r.height),r.translate&&(e.translate={...e.translate,...r.translate}),r.transform&&(e.transform={...e.transform,...r.transform}),(n.width===void 0||e._width===n.width)&&(n.height===void 0||e._height===n.height)&&(((b=n.transform)==null?void 0:b.x)===void 0||e._transform.x===n.transform.x)&&(((W=n.transform)==null?void 0:W.y)===void 0||e._transform.y===n.transform.y)&&(((_=n.transform)==null?void 0:_.scale)===void 0||e._transform.scale===n.transform.scale)&&(((C=n.translate)==null?void 0:C.x)===void 0||e._translate.x===n.translate.x)&&(((R=n.translate)==null?void 0:R.y)===void 0||e._translate.y===n.translate.y)?(this.map.delete(t),i()):(this.map.set(t,{current:e,target:n,log:d}),this.play(t,i,s))}))}static stop(t){const i=this.map.get(t);return this.map.delete(t),i}static start({vistaImage:t,target:i,onComplete:s,shouldWait:a}){this.stop(t),this.map.set(t,{current:t.state,target:i}),this.play(t,s,a)}}h(w,"map",new Map);class L{constructor(t){h(this,"state");h(this,"parsedSrcSet");h(this,"isReady",!1);h(this,"isThrowing",!1);h(this,"thumb",null);h(this,"pos");h(this,"index");h(this,"config");h(this,"origin");h(this,"initH",0);h(this,"initW",0);h(this,"fullH",0);h(this,"fullW",0);h(this,"maxW",0);h(this,"minW",0);h(this,"defaultWH",200);h(this,"isZoomedIn",!1);h(this,"isCancelled",!1);h(this,"isLoadedResolved",null);h(this,"isLoadedRejected",null);h(this,"isLoaded",new Promise((t,i)=>{this.isLoadedResolved=t,this.isLoadedRejected=i}));h(this,"replacement",null);h(this,"originalParent",null);h(this,"originalNextSibling",null);h(this,"originalStyle","");h(this,"thumbImage",null);h(this,"originRect",{width:this.defaultWH,height:this.defaultWH,top:0,left:0});h(this,"fittedSize",null);h(this,"maxZoomLevel");h(this,"vistaView");h(this,"transitionState",null);h(this,"transitionShouldWait",()=>!1);h(this,"initPointerCenter",{x:0,y:0});h(this,"onScale");var s,a,e;this.state=this.createState(),this.pos=t.pos,this.index=t.index,this.config=t.elm.config,this.parsedSrcSet=t.elm.parsedSrcSet,this.origin=t.elm.origin,this.maxZoomLevel=t.maxZoomLevel,this.vistaView=t.vistaView,this.onScale=t.onScale,t.transitionState&&(this.transitionState=t.transitionState),t.transitionShouldWait&&(this.transitionShouldWait=t.transitionShouldWait),this.initPointerCenter={x:window.innerWidth/2,y:window.innerHeight/2};const i=this.pos===0?(s=this.origin)==null?void 0:s.image:null;if(this.originalParent=(i==null?void 0:i.parentElement)||null,this.originalNextSibling=(i==null?void 0:i.nextSibling)||null,this.originRect=((e=((a=this.origin)==null?void 0:a.anchor)||i)==null?void 0:e.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0},i&&this.originalParent){this.originalStyle=i.style.cssText,this.thumbImage=i;const n=i.cloneNode(!0);this.originalParent.insertBefore(n,i),this.replacement=n,this.thumb=document.createElement("div"),this.thumb.classList.add("vvw-img-lo");const{width:d,height:r}=this.thumbImage?m(this.thumbImage):{width:0,height:0};this.fittedSize={width:d,height:r},this.thumb.appendChild(i),i.style.width="100%",i.style.height="100%",i.style.objectFit=this.origin.objectFit}}createState(){const t=this;return{_t:this,_width:0,_height:0,_transform:{x:0,y:0,scale:1},_translate:{x:0,y:0},_lessThanMinWidth:!1,get width(){return this._width},set width(i){this._width=i,t.onWidthChange(i)},get height(){return this._height},set height(i){this._height=i,t.onHeightChange(i)},get transform(){return this._transform},set transform(i){this._transform=i,t.onTransformChange(i)},get translate(){return this._translate},set translate(i){this._translate=i,t.onTranslateChange(i)},get lessThanMinWidth(){return this._lessThanMinWidth},set lessThanMinWidth(i){this._lessThanMinWidth=i,t.onLessThanMinWidthChange(i)}}}onLessThanMinWidthChange(t){t?this.element.style.opacity="0.5":this.element.style.opacity=""}onTranslateChange(t){this.element.style.translate=`calc(-50% + ${t.x}px) calc(-50% + ${t.y}px)`}onTransformChange(t){const i=`translate3d(${t.x}px, ${t.y}px, 0px) scale3d(${t.scale}, ${t.scale}, 1)`;this.element.style.transform=i}onWidthChange(t){this.element.style.width=`${t}px`}onHeightChange(t){this.element.style.height=`${t}px`}onImageReady(){}animateZoom(t,i){}scaleMove(t,i,s){}momentumThrow(t){return()=>{}}async init(){await this.isLoaded;const t=this.element;this.transitionState&&this.transitionState.current.width&&this.transitionState.current.height?(this.state.width=this.transitionState.current.width,this.state.height=this.transitionState.current.height):t.classList.contains("vvw--loaded")||(this.state.width=this.initW,this.state.height=this.initH);const i=()=>{this.isCancelled||w.start({vistaImage:this,target:{width:this.fullW,height:this.fullH},onComplete:()=>{this.isCancelled||(this.isReady=!0,t.classList.add("vvw--ready"),this.onImageReady())},shouldWait:this.transitionShouldWait})};this.pos<-1||this.pos>1?(this.state.width=this.fullW,this.state.height=this.fullH,t.classList.add("vvw--loaded"),t.classList.add("vvw--ready"),this.isReady=!0):t.classList.contains("vvw--loaded")?t.classList.contains("vvw--ready")?(this.isReady=!0,this.onImageReady()):i():(t.classList.add("vvw--loaded"),setTimeout(()=>{this.isCancelled||i()},333))}getFullSizeDim(){const{width:t,height:i}=this.thumb.getBoundingClientRect(),s=t/i;let a=window.innerWidth,e=window.innerHeight;return s>window.innerWidth/window.innerHeight?e=a/s:a=e*s,{width:a,height:e}}setSizes(t={}){var d,r,o,g;const{stableSize:i=!0,initDimension:s}=t;if(!this.origin)return;const a=this.thumb;s||(this.originRect=((r=((d=this.origin)==null?void 0:d.anchor)||this.replacement)==null?void 0:r.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0});let e=this.originRect;if(a){const l=a.style;l.width=e.width+"px",l.height=e.height+"px",l.top="50%",l.left="50%",l.translate="-50% -50%",l.position="fixed",l.objectFit=this.origin.objectFit,l.borderRadius=this.origin.borderRadius;const u=Math.min(Math.max(e.left,-e.width),window.innerWidth+e.width)-window.innerWidth/2+e.width/2,y=Math.min(Math.max(e.top,-e.height),window.innerHeight+e.height)-window.innerHeight/2+e.height/2;l.setProperty("--vvw-init-radius",l.borderRadius),l.setProperty("--vvw-pulse-radius",`calc(1.3 * ${l.borderRadius})`),l.setProperty("--vvw-init-x",`${u}px`),l.setProperty("--vvw-init-y",`${y}px`),s&&(l.setProperty("--vvw-current-x",`${u}px`),l.setProperty("--vvw-current-y",`${y}px`))}if(!s){const{width:l,height:u}=this.thumbImage?m(this.thumbImage):{width:0,height:0};this.fittedSize={width:l,height:u}}const n=this.element;if(this.initW=Math.min(((o=this.fittedSize)==null?void 0:o.width)??0,e.width),this.initH=Math.min(((g=this.fittedSize)==null?void 0:g.height)??0,e.height),n.style.setProperty("--vvw-init-w",this.initW+"px"),n.style.setProperty("--vvw-init-h",this.initH+"px"),n.style.setProperty("--vvw-init-radius",this.origin.borderRadius),n.style.objectFit="cover",!s){if(this.isReady&&!this.isCancelled){const{width:l,height:u}=this.getFullSizeDim();this.fullH=u,this.fullW=l,this.minW=this.fullW*.5}!this.isZoomedIn&&i&&this.normalize()}}normalize(){this.state.transform={x:0,y:0,scale:1},this.state.translate={x:0,y:0},this.state.width=this.fullW,this.state.height=this.fullH,this.isZoomedIn=!1}getFromParsedSrcSet(t){if(!this.parsedSrcSet||this.parsedSrcSet.length===0)return null;const i=t*(window.devicePixelRatio||1);let s=this.parsedSrcSet[this.parsedSrcSet.length-1];for(const a of this.parsedSrcSet)if(a.width>=i){s=a;break}return s.src}prepareClose(){w.stop(this),this.setFinalTransform()}cancelPendingLoad(){var t;this.isCancelled=!0,(t=this.element)==null||t.classList.add("vvw--load-cancelled")}setInitialCenter(t){this.initPointerCenter=t}destroy(){var t,i;this.originalParent&&this.thumbImage&&(this.thumbImage.style.cssText=this.originalStyle,this.originalNextSibling?this.originalParent.insertBefore(this.thumbImage,this.originalNextSibling):this.originalParent.appendChild(this.thumbImage)),this.originalParent=null,this.originalNextSibling=null,this.originalStyle="",this.thumbImage=null,this.replacement&&(this.replacement.remove(),this.replacement=null),(t=this.thumb)==null||t.remove(),(i=this.element)==null||i.remove(),this.thumb=null,this.origin=void 0,this.config={src:"",alt:""}}cloneStyleFrom(t,i){t!=null&&t.element&&(i&&(this.transitionState=i||null),t.element.classList.contains("vvw--loaded")&&(this.element.classList.add("vvw--loaded"),this.state.width=t.state.width,this.state.height=t.state.height),t.element.classList.contains("vvw--ready")&&this.element.classList.add("vvw--ready"))}toObject(){return structuredClone({config:{src:this.config.src,alt:this.config.alt,srcSet:this.config.srcSet},origin:this.origin?{src:this.origin.src,srcSet:this.origin.srcSet,borderRadius:this.origin.borderRadius,objectFit:this.origin.objectFit}:null,parsedSrcSet:this.parsedSrcSet,element:"src"in this.element?this.element.src:this.element.toString(),thumb:void 0,index:this.index,pos:this.pos,state:{width:this.state._width,height:this.state._height,transform:this.state._transform,translate:this.state._translate}})}setFinalTransform(t={}){const{propagateEvent:i=!0}=t;if(this.isReady){if(this.state.translate.x+=this.state.transform.x,this.state.translate.y+=this.state.transform.y,this.state.width*=this.state.transform.scale,this.state.height*=this.state.transform.scale,Math.abs(this.state.width-this.fullW)<1&&(this.state.width=this.fullW,this.state.height=this.fullH),Math.abs(this.state.translate.x)<1&&(this.state.translate.x=0),Math.abs(this.state.translate.y)<1&&(this.state.translate.y=0),this.state.translate={...this.state.translate},this.state.transform={x:0,y:0,scale:1},i){const s=this.toObject();this.vistaView.options.onContentChange&&this.vistaView.options.onContentChange(s,this.vistaView),this.vistaView.state.extensions.forEach(a=>{a.onContentChange&&a.onContentChange(s,this.vistaView)})}return{close:!0,cancel:()=>{}}}}}function p(c){if(!c)return null;const t=[/video\.vidyard\.com\/watch\/([a-zA-Z0-9]+)/,/play\.vidyard\.com\/([a-zA-Z0-9]+)/,/share\.vidyard\.com\/watch\/([a-zA-Z0-9]+)/];for(const i of t){const s=c.match(i);if(s&&s[1])return s[1]}return null}function S(c){const t=p(c);if(!t)throw new Error("Invalid Vidyard video URL");return`https://play.vidyard.com/${t}.jpg`}class v extends L{constructor(i){var r;super(i);h(this,"element");h(this,"url");const s=i.elm.config.src;this.url=s;const a=document.createElement("div");a.style.position="relative";const e=document.createElement("img");a.appendChild(e),e.src=((r=this.origin)==null?void 0:r.image.src)||S(s),e.style.width="100%",e.style.height="100%",e.style.objectFit="cover",e.classList.add("vvw--pulsing"),this.element=a,this.element.classList.add("vvw-img-hi");const{width:n,height:d}=this.getFullSizeDim();if(this.fullH=d,this.fullW=n,this.minW=this.fullW*.5,this.maxW=this.fullW,this.element.style.width=`${n}px`,this.element.style.height=`${d}px`,this.setSizes({stableSize:!1,initDimension:!0}),this.pos===0){const o=document.createElement("iframe");o.frameBorder="0",o.allow="autoplay; fullscreen",o.allowFullscreen=!0,o.width="100%",o.height="100%",o.style.position="absolute",o.style.top="0",o.style.left="0",o.style.backgroundColor="transparent",o.style.opacity="0",o.style.transition="opacity 1s ease",o.src=`https://play.vidyard.com/${p(s)}?autoplay=1`,a.appendChild(o),o.onload=()=>{o.style.opacity="1",e.classList.remove("vvw--pulsing")}}this.isLoadedResolved(!0)}getFullSizeDim(){const i=Math.min(window.innerWidth,800);return{width:i,height:i*9/16}}setFinalTransform(){return super.setFinalTransform({propagateEvent:!1})}}function H(){return{name:"vidyardVideo",onInitializeImage:c=>{const t=c.elm.config.src;if(p(t))return new v(c)},onImageView:async(c,t)=>{const i=c.images.to[Math.floor(c.images.to.length/2)];i instanceof v&&t.deactivateUi(["download","zoomIn","zoomOut"],i)}}}f.VistaVidyardVideo=v,f.getVidyardThumbnail=S,f.parseVidyardVideoId=p,f.vidyardVideo=H,Object.defineProperty(f,Symbol.toStringTag,{value:"Module"})}));
1
+ (function(f,m){typeof exports=="object"&&typeof module<"u"?m(exports):typeof define=="function"&&define.amd?define(["exports"],m):(f=typeof globalThis<"u"?globalThis:f||self,m(f.VistaView=f.VistaView||{}))})(this,(function(f){"use strict";var V=Object.defineProperty;var F=(f,m,w)=>m in f?V(f,m,{enumerable:!0,configurable:!0,writable:!0,value:w}):f[m]=w;var h=(f,m,w)=>F(f,typeof m!="symbol"?m+"":m,w);function m(c){const i=window.getComputedStyle(c).objectFit||"",{width:s,height:a}=c.getBoundingClientRect(),e=c.naturalWidth,n=c.naturalHeight;if(!i)return{width:s,height:a};if(!e||!n)return{width:s,height:a};const d=e/n,r=s/a;switch(i){case"fill":return{width:s,height:a};case"none":return{width:e,height:n};case"contain":return d>r?{width:s,height:s/d}:{width:a*d,height:a};case"cover":return d<r?{width:s,height:s/d}:{width:a*d,height:a};case"scale-down":{const l={width:e,height:n},g=d>r?{width:s,height:s/d}:{width:a*d,height:a};return g.width<=l.width&&g.height<=l.height?g:l}}return{width:s,height:a}}class w{static ease(t,i,s){const a=i-t,e=t+a*.2;return Math.abs(a)<s?i:e}static play(t,i,s){if(s()){requestAnimationFrame(()=>{this.play(t,i,s)});return}this.map.get(t)&&(t.element.classList.contains("vvw--load-cancelled")||requestAnimationFrame(()=>{var g,o,u,y,x,b,W,_,C,R;const a=this.map.get(t);if(!a||!t.element||t.element.classList.contains("vvw--load-cancelled"))return;const{current:e,target:n,log:d}=a;let r={};n.width!==void 0&&(r.width=this.ease(e._width,n.width,1)),n.height!==void 0&&(r.height=this.ease(e._height,n.height,1)),((g=n.transform)==null?void 0:g.x)!==void 0&&(r.transform=r.transform||{},r.transform.x=this.ease(e._transform.x,n.transform.x,1)),((o=n.transform)==null?void 0:o.y)!==void 0&&(r.transform=r.transform||{},r.transform.y=this.ease(e._transform.y,n.transform.y,1)),((u=n.transform)==null?void 0:u.scale)!==void 0&&(r.transform=r.transform||{},r.transform.scale=this.ease(e._transform.scale,n.transform.scale,.005)),((y=n.translate)==null?void 0:y.x)!==void 0&&(r.translate=r.translate||{},r.translate.x=this.ease(e._translate.x,n.translate.x,1)),((x=n.translate)==null?void 0:x.y)!==void 0&&(r.translate=r.translate||{},r.translate.y=this.ease(e._translate.y,n.translate.y,1)),r.width!==void 0&&(e.width=r.width),r.height!==void 0&&(e.height=r.height),r.translate&&(e.translate={...e.translate,...r.translate}),r.transform&&(e.transform={...e.transform,...r.transform}),(n.width===void 0||e._width===n.width)&&(n.height===void 0||e._height===n.height)&&(((b=n.transform)==null?void 0:b.x)===void 0||e._transform.x===n.transform.x)&&(((W=n.transform)==null?void 0:W.y)===void 0||e._transform.y===n.transform.y)&&(((_=n.transform)==null?void 0:_.scale)===void 0||e._transform.scale===n.transform.scale)&&(((C=n.translate)==null?void 0:C.x)===void 0||e._translate.x===n.translate.x)&&(((R=n.translate)==null?void 0:R.y)===void 0||e._translate.y===n.translate.y)?(this.map.delete(t),i()):(this.map.set(t,{current:e,target:n,log:d}),this.play(t,i,s))}))}static stop(t){const i=this.map.get(t);return this.map.delete(t),i}static start({vistaImage:t,target:i,onComplete:s,shouldWait:a}){this.stop(t),this.map.set(t,{current:t.state,target:i}),this.play(t,s,a)}}h(w,"map",new Map);class L{constructor(t){h(this,"state");h(this,"parsedSrcSet");h(this,"isReady",!1);h(this,"isThrowing",!1);h(this,"thumb",null);h(this,"pos");h(this,"index");h(this,"config");h(this,"origin");h(this,"initH",0);h(this,"initW",0);h(this,"fullH",0);h(this,"fullW",0);h(this,"maxW",0);h(this,"minW",0);h(this,"defaultWH",200);h(this,"isZoomedIn",!1);h(this,"isCancelled",!1);h(this,"isLoadedResolved",null);h(this,"isLoadedRejected",null);h(this,"isLoaded",new Promise((t,i)=>{this.isLoadedResolved=t,this.isLoadedRejected=i}));h(this,"replacement",null);h(this,"originalParent",null);h(this,"originalNextSibling",null);h(this,"originalStyle","");h(this,"thumbImage",null);h(this,"originRect",{width:this.defaultWH,height:this.defaultWH,top:0,left:0});h(this,"fittedSize",null);h(this,"maxZoomLevel");h(this,"vistaView");h(this,"transitionState",null);h(this,"transitionShouldWait",()=>!1);h(this,"initPointerCenter",{x:0,y:0});h(this,"onScale");var s,a,e;this.state=this.createState(),this.pos=t.pos,this.index=t.index,this.config=t.elm.config,this.parsedSrcSet=t.elm.parsedSrcSet,this.origin=t.elm.origin,this.maxZoomLevel=t.maxZoomLevel,this.vistaView=t.vistaView,this.onScale=t.onScale,t.transitionState&&(this.transitionState=t.transitionState),t.transitionShouldWait&&(this.transitionShouldWait=t.transitionShouldWait),this.initPointerCenter={x:window.innerWidth/2,y:window.innerHeight/2};const i=this.pos===0?(s=this.origin)==null?void 0:s.image:null;if(this.originalParent=(i==null?void 0:i.parentElement)||null,this.originalNextSibling=(i==null?void 0:i.nextSibling)||null,this.originRect=((e=((a=this.origin)==null?void 0:a.anchor)||i)==null?void 0:e.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0},i&&this.originalParent){this.originalStyle=i.style.cssText,this.thumbImage=i;const n=i.cloneNode(!0);this.originalParent.insertBefore(n,i),this.replacement=n,this.thumb=document.createElement("div"),this.thumb.classList.add("vvw-img-lo");const{width:d,height:r}=this.thumbImage?m(this.thumbImage):{width:0,height:0};this.fittedSize={width:d,height:r},this.thumb.appendChild(i),i.style.width="100%",i.style.height="100%",i.style.objectFit=this.origin.objectFit}}createState(){const t=this;return{_t:this,_width:0,_height:0,_transform:{x:0,y:0,scale:1},_translate:{x:0,y:0},_lessThanMinWidth:!1,get width(){return this._width},set width(i){this._width=i,t.onWidthChange(i)},get height(){return this._height},set height(i){this._height=i,t.onHeightChange(i)},get transform(){return this._transform},set transform(i){this._transform=i,t.onTransformChange(i)},get translate(){return this._translate},set translate(i){this._translate=i,t.onTranslateChange(i)},get lessThanMinWidth(){return this._lessThanMinWidth},set lessThanMinWidth(i){this._lessThanMinWidth=i,t.onLessThanMinWidthChange(i)}}}onLessThanMinWidthChange(t){t?this.element.style.opacity="0.5":this.element.style.opacity=""}onTranslateChange(t){this.element.style.translate=`calc(-50% + ${t.x}px) calc(-50% + ${t.y}px)`}onTransformChange(t){const i=`translate3d(${t.x}px, ${t.y}px, 0px) scale3d(${t.scale}, ${t.scale}, 1)`;this.element.style.transform=i}onWidthChange(t){this.element.style.width=`${t}px`}onHeightChange(t){this.element.style.height=`${t}px`}onImageReady(){}animateZoom(t,i){}scaleMove(t,i,s){}momentumThrow(t){return()=>{}}async init(){await this.isLoaded;const t=this.element;this.transitionState&&this.transitionState.current.width&&this.transitionState.current.height?(this.state.width=this.transitionState.current.width,this.state.height=this.transitionState.current.height):t.classList.contains("vvw--loaded")||(this.state.width=this.initW,this.state.height=this.initH);const i=()=>{this.isCancelled||w.start({vistaImage:this,target:{width:this.fullW,height:this.fullH},onComplete:()=>{this.isCancelled||(this.isReady=!0,t.classList.add("vvw--ready"),this.onImageReady())},shouldWait:this.transitionShouldWait})};this.pos<-1||this.pos>1?(this.state.width=this.fullW,this.state.height=this.fullH,t.classList.add("vvw--loaded"),t.classList.add("vvw--ready"),this.isReady=!0):t.classList.contains("vvw--loaded")?t.classList.contains("vvw--ready")?(this.isReady=!0,this.onImageReady()):i():(t.classList.add("vvw--loaded"),setTimeout(()=>{this.isCancelled||i()},333))}getFullSizeDim(){const{width:t,height:i}=this.thumb.getBoundingClientRect(),s=t/i;let a=window.innerWidth,e=window.innerHeight;return s>window.innerWidth/window.innerHeight?e=a/s:a=e*s,{width:a,height:e}}setSizes(t={}){var d,r,l,g;const{stableSize:i=!0,initDimension:s}=t;if(!this.origin)return;const a=this.thumb;s||(this.originRect=((r=((d=this.origin)==null?void 0:d.anchor)||this.replacement)==null?void 0:r.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0});let e=this.originRect;if(a){const o=a.style;o.width=e.width+"px",o.height=e.height+"px",o.top="50%",o.left="50%",o.translate="-50% -50%",o.position="fixed",o.objectFit=this.origin.objectFit,o.borderRadius=this.origin.borderRadius;const u=Math.min(Math.max(e.left,-e.width),window.innerWidth+e.width)-window.innerWidth/2+e.width/2,y=Math.min(Math.max(e.top,-e.height),window.innerHeight+e.height)-window.innerHeight/2+e.height/2;o.setProperty("--vvw-init-radius",o.borderRadius),o.setProperty("--vvw-pulse-radius",`calc(1.3 * ${o.borderRadius})`),o.setProperty("--vvw-init-x",`${u}px`),o.setProperty("--vvw-init-y",`${y}px`),s&&(o.setProperty("--vvw-current-x",`${u}px`),o.setProperty("--vvw-current-y",`${y}px`))}if(!s){const{width:o,height:u}=this.thumbImage?m(this.thumbImage):{width:0,height:0};this.fittedSize={width:o,height:u}}const n=this.element;if(this.initW=Math.min(((l=this.fittedSize)==null?void 0:l.width)??0,e.width),this.initH=Math.min(((g=this.fittedSize)==null?void 0:g.height)??0,e.height),n.style.setProperty("--vvw-init-w",this.initW+"px"),n.style.setProperty("--vvw-init-h",this.initH+"px"),n.style.setProperty("--vvw-init-radius",this.origin.borderRadius),n.style.objectFit="cover",!s){if(this.isReady&&!this.isCancelled){const{width:o,height:u}=this.getFullSizeDim();this.fullH=u,this.fullW=o,this.minW=this.fullW*.5}!this.isZoomedIn&&i&&this.normalize()}}normalize(){this.state.transform={x:0,y:0,scale:1},this.state.translate={x:0,y:0},this.state.width=this.fullW,this.state.height=this.fullH,this.isZoomedIn=!1}getFromParsedSrcSet(t){if(!this.parsedSrcSet||this.parsedSrcSet.length===0)return null;const i=t*(window.devicePixelRatio||1);let s=this.parsedSrcSet[this.parsedSrcSet.length-1];for(const a of this.parsedSrcSet)if(a.width>=i){s=a;break}return s.src}prepareClose(){w.stop(this),this.setFinalTransform()}cancelPendingLoad(){var t;this.isCancelled=!0,(t=this.element)==null||t.classList.add("vvw--load-cancelled")}setInitialCenter(t){this.initPointerCenter=t}destroy(){var t,i;this.originalParent&&this.thumbImage&&(this.thumbImage.style.cssText=this.originalStyle,this.originalNextSibling?this.originalParent.insertBefore(this.thumbImage,this.originalNextSibling):this.originalParent.appendChild(this.thumbImage)),this.originalParent=null,this.originalNextSibling=null,this.originalStyle="",this.thumbImage=null,this.replacement&&(this.replacement.remove(),this.replacement=null),(t=this.thumb)==null||t.remove(),(i=this.element)==null||i.remove(),this.thumb=null,this.origin=void 0,this.config={src:"",alt:""}}cloneStyleFrom(t,i){t!=null&&t.element&&(i&&(this.transitionState=i||null),t.element.classList.contains("vvw--loaded")&&(this.element.classList.add("vvw--loaded"),this.state.width=t.state.width,this.state.height=t.state.height),t.element.classList.contains("vvw--ready")&&this.element.classList.add("vvw--ready"))}toObject(){return structuredClone({config:{src:this.config.src,alt:this.config.alt,srcSet:this.config.srcSet},origin:this.origin?{src:this.origin.src,srcSet:this.origin.srcSet,borderRadius:this.origin.borderRadius,objectFit:this.origin.objectFit}:null,parsedSrcSet:this.parsedSrcSet,element:"src"in this.element?this.element.src:this.element.toString(),thumb:void 0,index:this.index,pos:this.pos,state:{width:this.state._width,height:this.state._height,transform:this.state._transform,translate:this.state._translate}})}setFinalTransform(t={}){const{propagateEvent:i=!0}=t;if(this.isReady){if(this.state.translate.x+=this.state.transform.x,this.state.translate.y+=this.state.transform.y,this.state.width*=this.state.transform.scale,this.state.height*=this.state.transform.scale,Math.abs(this.state.width-this.fullW)<1&&(this.state.width=this.fullW,this.state.height=this.fullH),Math.abs(this.state.translate.x)<1&&(this.state.translate.x=0),Math.abs(this.state.translate.y)<1&&(this.state.translate.y=0),this.state.translate={...this.state.translate},this.state.transform={x:0,y:0,scale:1},i){const s=this.toObject();this.vistaView.options.onContentChange&&this.vistaView.options.onContentChange(s,this.vistaView),this.vistaView.state.extensions.forEach(a=>{a.onContentChange&&a.onContentChange(s,this.vistaView)})}return{close:!0,cancel:()=>{}}}}}function p(c){if(!c)return null;const t=[/video\.vidyard\.com\/watch\/([a-zA-Z0-9]+)/,/play\.vidyard\.com\/([a-zA-Z0-9]+)/,/share\.vidyard\.com\/watch\/([a-zA-Z0-9]+)/];for(const i of t){const s=c.match(i);if(s&&s[1])return s[1]}return null}function S(c){const t=p(c);if(!t)throw new Error("Invalid Vidyard video URL");return`https://play.vidyard.com/${t}.jpg`}class v extends L{constructor(i){var r;super(i);h(this,"element");h(this,"url");const s=i.elm.config.src;this.url=s;const a=document.createElement("div");a.style.position="relative";const e=document.createElement("img");a.appendChild(e),e.src=((r=this.origin)==null?void 0:r.image.src)||S(s),e.style.width="100%",e.style.height="100%",e.style.objectFit="cover",e.classList.add("vvw--pulsing"),this.element=a,this.element.classList.add("vvw-img-hi");const{width:n,height:d}=this.getFullSizeDim();if(this.fullH=d,this.fullW=n,this.minW=this.fullW*.5,this.maxW=this.fullW,this.element.style.width=`${n}px`,this.element.style.height=`${d}px`,this.setSizes({stableSize:!1,initDimension:!0}),this.pos===0){const l=document.createElement("iframe");l.frameBorder="0",l.allow="autoplay; fullscreen",l.allowFullscreen=!0,l.width="100%",l.height="100%",l.style.position="absolute",l.style.top="0",l.style.left="0",l.style.opacity="0",l.style.transition="opacity 333ms ease",l.src=`https://play.vidyard.com/${p(s)}?autoplay=1`,a.appendChild(l),l.onload=()=>{l.style.opacity="1",e.classList.remove("vvw--pulsing")}}this.isLoadedResolved(!0)}getFullSizeDim(){const i=Math.min(window.innerWidth,800);return{width:i,height:i*9/16}}setFinalTransform(){return super.setFinalTransform({propagateEvent:!1})}}function H(){return{name:"vidyardVideo",onInitializeImage:c=>{const t=c.elm.config.src;if(p(t))return new v(c)},onImageView:async(c,t)=>{const i=c.images.to[Math.floor(c.images.to.length/2)];i instanceof v&&t.deactivateUi(["download","zoomIn","zoomOut"],i)}}}f.VistaVidyardVideo=v,f.getVidyardThumbnail=S,f.parseVidyardVideoId=p,f.vidyardVideo=H,Object.defineProperty(f,Symbol.toStringTag,{value:"Module"})}));
@@ -1,7 +1,7 @@
1
1
  var u = Object.defineProperty;
2
- var p = (e, t, i) => t in e ? u(e, t, { enumerable: !0, configurable: !0, writable: !0, value: i }) : e[t] = i;
3
- var r = (e, t, i) => p(e, typeof t != "symbol" ? t + "" : t, i);
4
- import { V as f } from "../vista-box-zG6ZgBcI.js";
2
+ var f = (e, t, i) => t in e ? u(e, t, { enumerable: !0, configurable: !0, writable: !0, value: i }) : e[t] = i;
3
+ var r = (e, t, i) => f(e, typeof t != "symbol" ? t + "" : t, i);
4
+ import { V as p } from "../vista-box-zG6ZgBcI.js";
5
5
  function a(e) {
6
6
  if (!e) return null;
7
7
  const t = [/vimeo\.com\/(\d+)/, /player\.vimeo\.com\/video\/(\d+)/];
@@ -18,7 +18,7 @@ function v(e) {
18
18
  throw new Error("Invalid Vimeo video URL");
19
19
  return `https://vumbnail.com/${t}.jpg`;
20
20
  }
21
- class h extends f {
21
+ class h extends p {
22
22
  constructor(i) {
23
23
  var d;
24
24
  super(i);
@@ -33,7 +33,7 @@ class h extends f {
33
33
  const { width: m, height: c } = this.getFullSizeDim();
34
34
  if (this.fullH = c, this.fullW = m, this.minW = this.fullW * 0.5, this.maxW = this.fullW, this.element.style.width = `${m}px`, this.element.style.height = `${c}px`, this.setSizes({ stableSize: !1, initDimension: !0 }), this.pos === 0) {
35
35
  const o = document.createElement("iframe");
36
- o.frameBorder = "0", o.allow = "autoplay; fullscreen; picture-in-picture", o.allowFullscreen = !0, o.width = "100%", o.height = "100%", o.style.position = "absolute", o.style.top = "0", o.style.left = "0", o.style.backgroundColor = "transparent", o.style.opacity = "0", o.style.transition = "opacity 1s ease", o.src = `https://player.vimeo.com/video/${a(s)}?autoplay=1`, l.appendChild(o), o.onload = () => {
36
+ o.frameBorder = "0", o.allow = "autoplay; fullscreen; picture-in-picture", o.allowFullscreen = !0, o.width = "100%", o.height = "100%", o.style.position = "absolute", o.style.top = "0", o.style.left = "0", o.style.opacity = "0", o.style.transition = "opacity 333ms ease", o.src = `https://player.vimeo.com/video/${a(s)}?autoplay=1`, l.appendChild(o), o.onload = () => {
37
37
  o.style.opacity = "1", n.classList.remove("vvw--pulsing");
38
38
  };
39
39
  }
@@ -1 +1 @@
1
- (function(m,f){typeof exports=="object"&&typeof module<"u"?f(exports):typeof define=="function"&&define.amd?define(["exports"],f):(m=typeof globalThis<"u"?globalThis:m||self,f(m.VistaView=m.VistaView||{}))})(this,(function(m){"use strict";var V=Object.defineProperty;var F=(m,f,w)=>f in m?V(m,f,{enumerable:!0,configurable:!0,writable:!0,value:w}):m[f]=w;var h=(m,f,w)=>F(m,typeof f!="symbol"?f+"":f,w);function f(c){const i=window.getComputedStyle(c).objectFit||"",{width:s,height:a}=c.getBoundingClientRect(),e=c.naturalWidth,n=c.naturalHeight;if(!i)return{width:s,height:a};if(!e||!n)return{width:s,height:a};const d=e/n,r=s/a;switch(i){case"fill":return{width:s,height:a};case"none":return{width:e,height:n};case"contain":return d>r?{width:s,height:s/d}:{width:a*d,height:a};case"cover":return d<r?{width:s,height:s/d}:{width:a*d,height:a};case"scale-down":{const o={width:e,height:n},u=d>r?{width:s,height:s/d}:{width:a*d,height:a};return u.width<=o.width&&u.height<=o.height?u:o}}return{width:s,height:a}}class w{static ease(t,i,s){const a=i-t,e=t+a*.2;return Math.abs(a)<s?i:e}static play(t,i,s){if(s()){requestAnimationFrame(()=>{this.play(t,i,s)});return}this.map.get(t)&&(t.element.classList.contains("vvw--load-cancelled")||requestAnimationFrame(()=>{var u,l,g,p,x,b,W,_,C,R;const a=this.map.get(t);if(!a||!t.element||t.element.classList.contains("vvw--load-cancelled"))return;const{current:e,target:n,log:d}=a;let r={};n.width!==void 0&&(r.width=this.ease(e._width,n.width,1)),n.height!==void 0&&(r.height=this.ease(e._height,n.height,1)),((u=n.transform)==null?void 0:u.x)!==void 0&&(r.transform=r.transform||{},r.transform.x=this.ease(e._transform.x,n.transform.x,1)),((l=n.transform)==null?void 0:l.y)!==void 0&&(r.transform=r.transform||{},r.transform.y=this.ease(e._transform.y,n.transform.y,1)),((g=n.transform)==null?void 0:g.scale)!==void 0&&(r.transform=r.transform||{},r.transform.scale=this.ease(e._transform.scale,n.transform.scale,.005)),((p=n.translate)==null?void 0:p.x)!==void 0&&(r.translate=r.translate||{},r.translate.x=this.ease(e._translate.x,n.translate.x,1)),((x=n.translate)==null?void 0:x.y)!==void 0&&(r.translate=r.translate||{},r.translate.y=this.ease(e._translate.y,n.translate.y,1)),r.width!==void 0&&(e.width=r.width),r.height!==void 0&&(e.height=r.height),r.translate&&(e.translate={...e.translate,...r.translate}),r.transform&&(e.transform={...e.transform,...r.transform}),(n.width===void 0||e._width===n.width)&&(n.height===void 0||e._height===n.height)&&(((b=n.transform)==null?void 0:b.x)===void 0||e._transform.x===n.transform.x)&&(((W=n.transform)==null?void 0:W.y)===void 0||e._transform.y===n.transform.y)&&(((_=n.transform)==null?void 0:_.scale)===void 0||e._transform.scale===n.transform.scale)&&(((C=n.translate)==null?void 0:C.x)===void 0||e._translate.x===n.translate.x)&&(((R=n.translate)==null?void 0:R.y)===void 0||e._translate.y===n.translate.y)?(this.map.delete(t),i()):(this.map.set(t,{current:e,target:n,log:d}),this.play(t,i,s))}))}static stop(t){const i=this.map.get(t);return this.map.delete(t),i}static start({vistaImage:t,target:i,onComplete:s,shouldWait:a}){this.stop(t),this.map.set(t,{current:t.state,target:i}),this.play(t,s,a)}}h(w,"map",new Map);class L{constructor(t){h(this,"state");h(this,"parsedSrcSet");h(this,"isReady",!1);h(this,"isThrowing",!1);h(this,"thumb",null);h(this,"pos");h(this,"index");h(this,"config");h(this,"origin");h(this,"initH",0);h(this,"initW",0);h(this,"fullH",0);h(this,"fullW",0);h(this,"maxW",0);h(this,"minW",0);h(this,"defaultWH",200);h(this,"isZoomedIn",!1);h(this,"isCancelled",!1);h(this,"isLoadedResolved",null);h(this,"isLoadedRejected",null);h(this,"isLoaded",new Promise((t,i)=>{this.isLoadedResolved=t,this.isLoadedRejected=i}));h(this,"replacement",null);h(this,"originalParent",null);h(this,"originalNextSibling",null);h(this,"originalStyle","");h(this,"thumbImage",null);h(this,"originRect",{width:this.defaultWH,height:this.defaultWH,top:0,left:0});h(this,"fittedSize",null);h(this,"maxZoomLevel");h(this,"vistaView");h(this,"transitionState",null);h(this,"transitionShouldWait",()=>!1);h(this,"initPointerCenter",{x:0,y:0});h(this,"onScale");var s,a,e;this.state=this.createState(),this.pos=t.pos,this.index=t.index,this.config=t.elm.config,this.parsedSrcSet=t.elm.parsedSrcSet,this.origin=t.elm.origin,this.maxZoomLevel=t.maxZoomLevel,this.vistaView=t.vistaView,this.onScale=t.onScale,t.transitionState&&(this.transitionState=t.transitionState),t.transitionShouldWait&&(this.transitionShouldWait=t.transitionShouldWait),this.initPointerCenter={x:window.innerWidth/2,y:window.innerHeight/2};const i=this.pos===0?(s=this.origin)==null?void 0:s.image:null;if(this.originalParent=(i==null?void 0:i.parentElement)||null,this.originalNextSibling=(i==null?void 0:i.nextSibling)||null,this.originRect=((e=((a=this.origin)==null?void 0:a.anchor)||i)==null?void 0:e.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0},i&&this.originalParent){this.originalStyle=i.style.cssText,this.thumbImage=i;const n=i.cloneNode(!0);this.originalParent.insertBefore(n,i),this.replacement=n,this.thumb=document.createElement("div"),this.thumb.classList.add("vvw-img-lo");const{width:d,height:r}=this.thumbImage?f(this.thumbImage):{width:0,height:0};this.fittedSize={width:d,height:r},this.thumb.appendChild(i),i.style.width="100%",i.style.height="100%",i.style.objectFit=this.origin.objectFit}}createState(){const t=this;return{_t:this,_width:0,_height:0,_transform:{x:0,y:0,scale:1},_translate:{x:0,y:0},_lessThanMinWidth:!1,get width(){return this._width},set width(i){this._width=i,t.onWidthChange(i)},get height(){return this._height},set height(i){this._height=i,t.onHeightChange(i)},get transform(){return this._transform},set transform(i){this._transform=i,t.onTransformChange(i)},get translate(){return this._translate},set translate(i){this._translate=i,t.onTranslateChange(i)},get lessThanMinWidth(){return this._lessThanMinWidth},set lessThanMinWidth(i){this._lessThanMinWidth=i,t.onLessThanMinWidthChange(i)}}}onLessThanMinWidthChange(t){t?this.element.style.opacity="0.5":this.element.style.opacity=""}onTranslateChange(t){this.element.style.translate=`calc(-50% + ${t.x}px) calc(-50% + ${t.y}px)`}onTransformChange(t){const i=`translate3d(${t.x}px, ${t.y}px, 0px) scale3d(${t.scale}, ${t.scale}, 1)`;this.element.style.transform=i}onWidthChange(t){this.element.style.width=`${t}px`}onHeightChange(t){this.element.style.height=`${t}px`}onImageReady(){}animateZoom(t,i){}scaleMove(t,i,s){}momentumThrow(t){return()=>{}}async init(){await this.isLoaded;const t=this.element;this.transitionState&&this.transitionState.current.width&&this.transitionState.current.height?(this.state.width=this.transitionState.current.width,this.state.height=this.transitionState.current.height):t.classList.contains("vvw--loaded")||(this.state.width=this.initW,this.state.height=this.initH);const i=()=>{this.isCancelled||w.start({vistaImage:this,target:{width:this.fullW,height:this.fullH},onComplete:()=>{this.isCancelled||(this.isReady=!0,t.classList.add("vvw--ready"),this.onImageReady())},shouldWait:this.transitionShouldWait})};this.pos<-1||this.pos>1?(this.state.width=this.fullW,this.state.height=this.fullH,t.classList.add("vvw--loaded"),t.classList.add("vvw--ready"),this.isReady=!0):t.classList.contains("vvw--loaded")?t.classList.contains("vvw--ready")?(this.isReady=!0,this.onImageReady()):i():(t.classList.add("vvw--loaded"),setTimeout(()=>{this.isCancelled||i()},333))}getFullSizeDim(){const{width:t,height:i}=this.thumb.getBoundingClientRect(),s=t/i;let a=window.innerWidth,e=window.innerHeight;return s>window.innerWidth/window.innerHeight?e=a/s:a=e*s,{width:a,height:e}}setSizes(t={}){var d,r,o,u;const{stableSize:i=!0,initDimension:s}=t;if(!this.origin)return;const a=this.thumb;s||(this.originRect=((r=((d=this.origin)==null?void 0:d.anchor)||this.replacement)==null?void 0:r.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0});let e=this.originRect;if(a){const l=a.style;l.width=e.width+"px",l.height=e.height+"px",l.top="50%",l.left="50%",l.translate="-50% -50%",l.position="fixed",l.objectFit=this.origin.objectFit,l.borderRadius=this.origin.borderRadius;const g=Math.min(Math.max(e.left,-e.width),window.innerWidth+e.width)-window.innerWidth/2+e.width/2,p=Math.min(Math.max(e.top,-e.height),window.innerHeight+e.height)-window.innerHeight/2+e.height/2;l.setProperty("--vvw-init-radius",l.borderRadius),l.setProperty("--vvw-pulse-radius",`calc(1.3 * ${l.borderRadius})`),l.setProperty("--vvw-init-x",`${g}px`),l.setProperty("--vvw-init-y",`${p}px`),s&&(l.setProperty("--vvw-current-x",`${g}px`),l.setProperty("--vvw-current-y",`${p}px`))}if(!s){const{width:l,height:g}=this.thumbImage?f(this.thumbImage):{width:0,height:0};this.fittedSize={width:l,height:g}}const n=this.element;if(this.initW=Math.min(((o=this.fittedSize)==null?void 0:o.width)??0,e.width),this.initH=Math.min(((u=this.fittedSize)==null?void 0:u.height)??0,e.height),n.style.setProperty("--vvw-init-w",this.initW+"px"),n.style.setProperty("--vvw-init-h",this.initH+"px"),n.style.setProperty("--vvw-init-radius",this.origin.borderRadius),n.style.objectFit="cover",!s){if(this.isReady&&!this.isCancelled){const{width:l,height:g}=this.getFullSizeDim();this.fullH=g,this.fullW=l,this.minW=this.fullW*.5}!this.isZoomedIn&&i&&this.normalize()}}normalize(){this.state.transform={x:0,y:0,scale:1},this.state.translate={x:0,y:0},this.state.width=this.fullW,this.state.height=this.fullH,this.isZoomedIn=!1}getFromParsedSrcSet(t){if(!this.parsedSrcSet||this.parsedSrcSet.length===0)return null;const i=t*(window.devicePixelRatio||1);let s=this.parsedSrcSet[this.parsedSrcSet.length-1];for(const a of this.parsedSrcSet)if(a.width>=i){s=a;break}return s.src}prepareClose(){w.stop(this),this.setFinalTransform()}cancelPendingLoad(){var t;this.isCancelled=!0,(t=this.element)==null||t.classList.add("vvw--load-cancelled")}setInitialCenter(t){this.initPointerCenter=t}destroy(){var t,i;this.originalParent&&this.thumbImage&&(this.thumbImage.style.cssText=this.originalStyle,this.originalNextSibling?this.originalParent.insertBefore(this.thumbImage,this.originalNextSibling):this.originalParent.appendChild(this.thumbImage)),this.originalParent=null,this.originalNextSibling=null,this.originalStyle="",this.thumbImage=null,this.replacement&&(this.replacement.remove(),this.replacement=null),(t=this.thumb)==null||t.remove(),(i=this.element)==null||i.remove(),this.thumb=null,this.origin=void 0,this.config={src:"",alt:""}}cloneStyleFrom(t,i){t!=null&&t.element&&(i&&(this.transitionState=i||null),t.element.classList.contains("vvw--loaded")&&(this.element.classList.add("vvw--loaded"),this.state.width=t.state.width,this.state.height=t.state.height),t.element.classList.contains("vvw--ready")&&this.element.classList.add("vvw--ready"))}toObject(){return structuredClone({config:{src:this.config.src,alt:this.config.alt,srcSet:this.config.srcSet},origin:this.origin?{src:this.origin.src,srcSet:this.origin.srcSet,borderRadius:this.origin.borderRadius,objectFit:this.origin.objectFit}:null,parsedSrcSet:this.parsedSrcSet,element:"src"in this.element?this.element.src:this.element.toString(),thumb:void 0,index:this.index,pos:this.pos,state:{width:this.state._width,height:this.state._height,transform:this.state._transform,translate:this.state._translate}})}setFinalTransform(t={}){const{propagateEvent:i=!0}=t;if(this.isReady){if(this.state.translate.x+=this.state.transform.x,this.state.translate.y+=this.state.transform.y,this.state.width*=this.state.transform.scale,this.state.height*=this.state.transform.scale,Math.abs(this.state.width-this.fullW)<1&&(this.state.width=this.fullW,this.state.height=this.fullH),Math.abs(this.state.translate.x)<1&&(this.state.translate.x=0),Math.abs(this.state.translate.y)<1&&(this.state.translate.y=0),this.state.translate={...this.state.translate},this.state.transform={x:0,y:0,scale:1},i){const s=this.toObject();this.vistaView.options.onContentChange&&this.vistaView.options.onContentChange(s,this.vistaView),this.vistaView.state.extensions.forEach(a=>{a.onContentChange&&a.onContentChange(s,this.vistaView)})}return{close:!0,cancel:()=>{}}}}}function y(c){if(!c)return null;const t=[/vimeo\.com\/(\d+)/,/player\.vimeo\.com\/video\/(\d+)/];for(const i of t){const s=c.match(i);if(s&&s[1])return s[1]}return null}function S(c){const t=y(c);if(!t)throw new Error("Invalid Vimeo video URL");return`https://vumbnail.com/${t}.jpg`}class v extends L{constructor(i){var r;super(i);h(this,"element");h(this,"url");const s=i.elm.config.src;this.url=s;const a=document.createElement("div");a.style.position="relative";const e=document.createElement("img");a.appendChild(e),e.src=((r=this.origin)==null?void 0:r.image.src)||S(s),e.style.width="100%",e.style.height="100%",e.style.objectFit="cover",e.classList.add("vvw--pulsing"),this.element=a,this.element.classList.add("vvw-img-hi");const{width:n,height:d}=this.getFullSizeDim();if(this.fullH=d,this.fullW=n,this.minW=this.fullW*.5,this.maxW=this.fullW,this.element.style.width=`${n}px`,this.element.style.height=`${d}px`,this.setSizes({stableSize:!1,initDimension:!0}),this.pos===0){const o=document.createElement("iframe");o.frameBorder="0",o.allow="autoplay; fullscreen; picture-in-picture",o.allowFullscreen=!0,o.width="100%",o.height="100%",o.style.position="absolute",o.style.top="0",o.style.left="0",o.style.backgroundColor="transparent",o.style.opacity="0",o.style.transition="opacity 1s ease",o.src=`https://player.vimeo.com/video/${y(s)}?autoplay=1`,a.appendChild(o),o.onload=()=>{o.style.opacity="1",e.classList.remove("vvw--pulsing")}}this.isLoadedResolved(!0)}getFullSizeDim(){const i=Math.min(window.innerWidth,800);return{width:i,height:i*9/16}}setFinalTransform(){return super.setFinalTransform({propagateEvent:!1})}}function H(){return{name:"vimeoVideo",onInitializeImage:c=>{const t=c.elm.config.src;if(y(t))return new v(c)},onImageView:async(c,t)=>{const i=c.images.to[Math.floor(c.images.to.length/2)];i instanceof v&&t.deactivateUi(["download","zoomIn","zoomOut"],i)}}}m.VistaVimeoVideo=v,m.getVimeoThumbnail=S,m.parseVimeoVideoId=y,m.vimeoVideo=H,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})}));
1
+ (function(m,f){typeof exports=="object"&&typeof module<"u"?f(exports):typeof define=="function"&&define.amd?define(["exports"],f):(m=typeof globalThis<"u"?globalThis:m||self,f(m.VistaView=m.VistaView||{}))})(this,(function(m){"use strict";var V=Object.defineProperty;var F=(m,f,w)=>f in m?V(m,f,{enumerable:!0,configurable:!0,writable:!0,value:w}):m[f]=w;var h=(m,f,w)=>F(m,typeof f!="symbol"?f+"":f,w);function f(c){const i=window.getComputedStyle(c).objectFit||"",{width:s,height:a}=c.getBoundingClientRect(),e=c.naturalWidth,n=c.naturalHeight;if(!i)return{width:s,height:a};if(!e||!n)return{width:s,height:a};const d=e/n,r=s/a;switch(i){case"fill":return{width:s,height:a};case"none":return{width:e,height:n};case"contain":return d>r?{width:s,height:s/d}:{width:a*d,height:a};case"cover":return d<r?{width:s,height:s/d}:{width:a*d,height:a};case"scale-down":{const l={width:e,height:n},u=d>r?{width:s,height:s/d}:{width:a*d,height:a};return u.width<=l.width&&u.height<=l.height?u:l}}return{width:s,height:a}}class w{static ease(t,i,s){const a=i-t,e=t+a*.2;return Math.abs(a)<s?i:e}static play(t,i,s){if(s()){requestAnimationFrame(()=>{this.play(t,i,s)});return}this.map.get(t)&&(t.element.classList.contains("vvw--load-cancelled")||requestAnimationFrame(()=>{var u,o,g,p,x,b,W,_,C,R;const a=this.map.get(t);if(!a||!t.element||t.element.classList.contains("vvw--load-cancelled"))return;const{current:e,target:n,log:d}=a;let r={};n.width!==void 0&&(r.width=this.ease(e._width,n.width,1)),n.height!==void 0&&(r.height=this.ease(e._height,n.height,1)),((u=n.transform)==null?void 0:u.x)!==void 0&&(r.transform=r.transform||{},r.transform.x=this.ease(e._transform.x,n.transform.x,1)),((o=n.transform)==null?void 0:o.y)!==void 0&&(r.transform=r.transform||{},r.transform.y=this.ease(e._transform.y,n.transform.y,1)),((g=n.transform)==null?void 0:g.scale)!==void 0&&(r.transform=r.transform||{},r.transform.scale=this.ease(e._transform.scale,n.transform.scale,.005)),((p=n.translate)==null?void 0:p.x)!==void 0&&(r.translate=r.translate||{},r.translate.x=this.ease(e._translate.x,n.translate.x,1)),((x=n.translate)==null?void 0:x.y)!==void 0&&(r.translate=r.translate||{},r.translate.y=this.ease(e._translate.y,n.translate.y,1)),r.width!==void 0&&(e.width=r.width),r.height!==void 0&&(e.height=r.height),r.translate&&(e.translate={...e.translate,...r.translate}),r.transform&&(e.transform={...e.transform,...r.transform}),(n.width===void 0||e._width===n.width)&&(n.height===void 0||e._height===n.height)&&(((b=n.transform)==null?void 0:b.x)===void 0||e._transform.x===n.transform.x)&&(((W=n.transform)==null?void 0:W.y)===void 0||e._transform.y===n.transform.y)&&(((_=n.transform)==null?void 0:_.scale)===void 0||e._transform.scale===n.transform.scale)&&(((C=n.translate)==null?void 0:C.x)===void 0||e._translate.x===n.translate.x)&&(((R=n.translate)==null?void 0:R.y)===void 0||e._translate.y===n.translate.y)?(this.map.delete(t),i()):(this.map.set(t,{current:e,target:n,log:d}),this.play(t,i,s))}))}static stop(t){const i=this.map.get(t);return this.map.delete(t),i}static start({vistaImage:t,target:i,onComplete:s,shouldWait:a}){this.stop(t),this.map.set(t,{current:t.state,target:i}),this.play(t,s,a)}}h(w,"map",new Map);class L{constructor(t){h(this,"state");h(this,"parsedSrcSet");h(this,"isReady",!1);h(this,"isThrowing",!1);h(this,"thumb",null);h(this,"pos");h(this,"index");h(this,"config");h(this,"origin");h(this,"initH",0);h(this,"initW",0);h(this,"fullH",0);h(this,"fullW",0);h(this,"maxW",0);h(this,"minW",0);h(this,"defaultWH",200);h(this,"isZoomedIn",!1);h(this,"isCancelled",!1);h(this,"isLoadedResolved",null);h(this,"isLoadedRejected",null);h(this,"isLoaded",new Promise((t,i)=>{this.isLoadedResolved=t,this.isLoadedRejected=i}));h(this,"replacement",null);h(this,"originalParent",null);h(this,"originalNextSibling",null);h(this,"originalStyle","");h(this,"thumbImage",null);h(this,"originRect",{width:this.defaultWH,height:this.defaultWH,top:0,left:0});h(this,"fittedSize",null);h(this,"maxZoomLevel");h(this,"vistaView");h(this,"transitionState",null);h(this,"transitionShouldWait",()=>!1);h(this,"initPointerCenter",{x:0,y:0});h(this,"onScale");var s,a,e;this.state=this.createState(),this.pos=t.pos,this.index=t.index,this.config=t.elm.config,this.parsedSrcSet=t.elm.parsedSrcSet,this.origin=t.elm.origin,this.maxZoomLevel=t.maxZoomLevel,this.vistaView=t.vistaView,this.onScale=t.onScale,t.transitionState&&(this.transitionState=t.transitionState),t.transitionShouldWait&&(this.transitionShouldWait=t.transitionShouldWait),this.initPointerCenter={x:window.innerWidth/2,y:window.innerHeight/2};const i=this.pos===0?(s=this.origin)==null?void 0:s.image:null;if(this.originalParent=(i==null?void 0:i.parentElement)||null,this.originalNextSibling=(i==null?void 0:i.nextSibling)||null,this.originRect=((e=((a=this.origin)==null?void 0:a.anchor)||i)==null?void 0:e.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0},i&&this.originalParent){this.originalStyle=i.style.cssText,this.thumbImage=i;const n=i.cloneNode(!0);this.originalParent.insertBefore(n,i),this.replacement=n,this.thumb=document.createElement("div"),this.thumb.classList.add("vvw-img-lo");const{width:d,height:r}=this.thumbImage?f(this.thumbImage):{width:0,height:0};this.fittedSize={width:d,height:r},this.thumb.appendChild(i),i.style.width="100%",i.style.height="100%",i.style.objectFit=this.origin.objectFit}}createState(){const t=this;return{_t:this,_width:0,_height:0,_transform:{x:0,y:0,scale:1},_translate:{x:0,y:0},_lessThanMinWidth:!1,get width(){return this._width},set width(i){this._width=i,t.onWidthChange(i)},get height(){return this._height},set height(i){this._height=i,t.onHeightChange(i)},get transform(){return this._transform},set transform(i){this._transform=i,t.onTransformChange(i)},get translate(){return this._translate},set translate(i){this._translate=i,t.onTranslateChange(i)},get lessThanMinWidth(){return this._lessThanMinWidth},set lessThanMinWidth(i){this._lessThanMinWidth=i,t.onLessThanMinWidthChange(i)}}}onLessThanMinWidthChange(t){t?this.element.style.opacity="0.5":this.element.style.opacity=""}onTranslateChange(t){this.element.style.translate=`calc(-50% + ${t.x}px) calc(-50% + ${t.y}px)`}onTransformChange(t){const i=`translate3d(${t.x}px, ${t.y}px, 0px) scale3d(${t.scale}, ${t.scale}, 1)`;this.element.style.transform=i}onWidthChange(t){this.element.style.width=`${t}px`}onHeightChange(t){this.element.style.height=`${t}px`}onImageReady(){}animateZoom(t,i){}scaleMove(t,i,s){}momentumThrow(t){return()=>{}}async init(){await this.isLoaded;const t=this.element;this.transitionState&&this.transitionState.current.width&&this.transitionState.current.height?(this.state.width=this.transitionState.current.width,this.state.height=this.transitionState.current.height):t.classList.contains("vvw--loaded")||(this.state.width=this.initW,this.state.height=this.initH);const i=()=>{this.isCancelled||w.start({vistaImage:this,target:{width:this.fullW,height:this.fullH},onComplete:()=>{this.isCancelled||(this.isReady=!0,t.classList.add("vvw--ready"),this.onImageReady())},shouldWait:this.transitionShouldWait})};this.pos<-1||this.pos>1?(this.state.width=this.fullW,this.state.height=this.fullH,t.classList.add("vvw--loaded"),t.classList.add("vvw--ready"),this.isReady=!0):t.classList.contains("vvw--loaded")?t.classList.contains("vvw--ready")?(this.isReady=!0,this.onImageReady()):i():(t.classList.add("vvw--loaded"),setTimeout(()=>{this.isCancelled||i()},333))}getFullSizeDim(){const{width:t,height:i}=this.thumb.getBoundingClientRect(),s=t/i;let a=window.innerWidth,e=window.innerHeight;return s>window.innerWidth/window.innerHeight?e=a/s:a=e*s,{width:a,height:e}}setSizes(t={}){var d,r,l,u;const{stableSize:i=!0,initDimension:s}=t;if(!this.origin)return;const a=this.thumb;s||(this.originRect=((r=((d=this.origin)==null?void 0:d.anchor)||this.replacement)==null?void 0:r.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0});let e=this.originRect;if(a){const o=a.style;o.width=e.width+"px",o.height=e.height+"px",o.top="50%",o.left="50%",o.translate="-50% -50%",o.position="fixed",o.objectFit=this.origin.objectFit,o.borderRadius=this.origin.borderRadius;const g=Math.min(Math.max(e.left,-e.width),window.innerWidth+e.width)-window.innerWidth/2+e.width/2,p=Math.min(Math.max(e.top,-e.height),window.innerHeight+e.height)-window.innerHeight/2+e.height/2;o.setProperty("--vvw-init-radius",o.borderRadius),o.setProperty("--vvw-pulse-radius",`calc(1.3 * ${o.borderRadius})`),o.setProperty("--vvw-init-x",`${g}px`),o.setProperty("--vvw-init-y",`${p}px`),s&&(o.setProperty("--vvw-current-x",`${g}px`),o.setProperty("--vvw-current-y",`${p}px`))}if(!s){const{width:o,height:g}=this.thumbImage?f(this.thumbImage):{width:0,height:0};this.fittedSize={width:o,height:g}}const n=this.element;if(this.initW=Math.min(((l=this.fittedSize)==null?void 0:l.width)??0,e.width),this.initH=Math.min(((u=this.fittedSize)==null?void 0:u.height)??0,e.height),n.style.setProperty("--vvw-init-w",this.initW+"px"),n.style.setProperty("--vvw-init-h",this.initH+"px"),n.style.setProperty("--vvw-init-radius",this.origin.borderRadius),n.style.objectFit="cover",!s){if(this.isReady&&!this.isCancelled){const{width:o,height:g}=this.getFullSizeDim();this.fullH=g,this.fullW=o,this.minW=this.fullW*.5}!this.isZoomedIn&&i&&this.normalize()}}normalize(){this.state.transform={x:0,y:0,scale:1},this.state.translate={x:0,y:0},this.state.width=this.fullW,this.state.height=this.fullH,this.isZoomedIn=!1}getFromParsedSrcSet(t){if(!this.parsedSrcSet||this.parsedSrcSet.length===0)return null;const i=t*(window.devicePixelRatio||1);let s=this.parsedSrcSet[this.parsedSrcSet.length-1];for(const a of this.parsedSrcSet)if(a.width>=i){s=a;break}return s.src}prepareClose(){w.stop(this),this.setFinalTransform()}cancelPendingLoad(){var t;this.isCancelled=!0,(t=this.element)==null||t.classList.add("vvw--load-cancelled")}setInitialCenter(t){this.initPointerCenter=t}destroy(){var t,i;this.originalParent&&this.thumbImage&&(this.thumbImage.style.cssText=this.originalStyle,this.originalNextSibling?this.originalParent.insertBefore(this.thumbImage,this.originalNextSibling):this.originalParent.appendChild(this.thumbImage)),this.originalParent=null,this.originalNextSibling=null,this.originalStyle="",this.thumbImage=null,this.replacement&&(this.replacement.remove(),this.replacement=null),(t=this.thumb)==null||t.remove(),(i=this.element)==null||i.remove(),this.thumb=null,this.origin=void 0,this.config={src:"",alt:""}}cloneStyleFrom(t,i){t!=null&&t.element&&(i&&(this.transitionState=i||null),t.element.classList.contains("vvw--loaded")&&(this.element.classList.add("vvw--loaded"),this.state.width=t.state.width,this.state.height=t.state.height),t.element.classList.contains("vvw--ready")&&this.element.classList.add("vvw--ready"))}toObject(){return structuredClone({config:{src:this.config.src,alt:this.config.alt,srcSet:this.config.srcSet},origin:this.origin?{src:this.origin.src,srcSet:this.origin.srcSet,borderRadius:this.origin.borderRadius,objectFit:this.origin.objectFit}:null,parsedSrcSet:this.parsedSrcSet,element:"src"in this.element?this.element.src:this.element.toString(),thumb:void 0,index:this.index,pos:this.pos,state:{width:this.state._width,height:this.state._height,transform:this.state._transform,translate:this.state._translate}})}setFinalTransform(t={}){const{propagateEvent:i=!0}=t;if(this.isReady){if(this.state.translate.x+=this.state.transform.x,this.state.translate.y+=this.state.transform.y,this.state.width*=this.state.transform.scale,this.state.height*=this.state.transform.scale,Math.abs(this.state.width-this.fullW)<1&&(this.state.width=this.fullW,this.state.height=this.fullH),Math.abs(this.state.translate.x)<1&&(this.state.translate.x=0),Math.abs(this.state.translate.y)<1&&(this.state.translate.y=0),this.state.translate={...this.state.translate},this.state.transform={x:0,y:0,scale:1},i){const s=this.toObject();this.vistaView.options.onContentChange&&this.vistaView.options.onContentChange(s,this.vistaView),this.vistaView.state.extensions.forEach(a=>{a.onContentChange&&a.onContentChange(s,this.vistaView)})}return{close:!0,cancel:()=>{}}}}}function y(c){if(!c)return null;const t=[/vimeo\.com\/(\d+)/,/player\.vimeo\.com\/video\/(\d+)/];for(const i of t){const s=c.match(i);if(s&&s[1])return s[1]}return null}function S(c){const t=y(c);if(!t)throw new Error("Invalid Vimeo video URL");return`https://vumbnail.com/${t}.jpg`}class v extends L{constructor(i){var r;super(i);h(this,"element");h(this,"url");const s=i.elm.config.src;this.url=s;const a=document.createElement("div");a.style.position="relative";const e=document.createElement("img");a.appendChild(e),e.src=((r=this.origin)==null?void 0:r.image.src)||S(s),e.style.width="100%",e.style.height="100%",e.style.objectFit="cover",e.classList.add("vvw--pulsing"),this.element=a,this.element.classList.add("vvw-img-hi");const{width:n,height:d}=this.getFullSizeDim();if(this.fullH=d,this.fullW=n,this.minW=this.fullW*.5,this.maxW=this.fullW,this.element.style.width=`${n}px`,this.element.style.height=`${d}px`,this.setSizes({stableSize:!1,initDimension:!0}),this.pos===0){const l=document.createElement("iframe");l.frameBorder="0",l.allow="autoplay; fullscreen; picture-in-picture",l.allowFullscreen=!0,l.width="100%",l.height="100%",l.style.position="absolute",l.style.top="0",l.style.left="0",l.style.opacity="0",l.style.transition="opacity 333ms ease",l.src=`https://player.vimeo.com/video/${y(s)}?autoplay=1`,a.appendChild(l),l.onload=()=>{l.style.opacity="1",e.classList.remove("vvw--pulsing")}}this.isLoadedResolved(!0)}getFullSizeDim(){const i=Math.min(window.innerWidth,800);return{width:i,height:i*9/16}}setFinalTransform(){return super.setFinalTransform({propagateEvent:!1})}}function H(){return{name:"vimeoVideo",onInitializeImage:c=>{const t=c.elm.config.src;if(y(t))return new v(c)},onImageView:async(c,t)=>{const i=c.images.to[Math.floor(c.images.to.length/2)];i instanceof v&&t.deactivateUi(["download","zoomIn","zoomOut"],i)}}}m.VistaVimeoVideo=v,m.getVimeoThumbnail=S,m.parseVimeoVideoId=y,m.vimeoVideo=H,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})}));
@@ -27,9 +27,9 @@ async function y(e) {
27
27
  throw console.error("Failed to fetch Wistia thumbnail:", t), new Error("Failed to fetch Wistia thumbnail");
28
28
  }
29
29
  }
30
- class m extends p {
30
+ class d extends p {
31
31
  constructor(t) {
32
- var d;
32
+ var m;
33
33
  super(t);
34
34
  l(this, "element");
35
35
  l(this, "url");
@@ -38,11 +38,11 @@ class m extends p {
38
38
  const a = document.createElement("div");
39
39
  a.style.position = "relative", a.style.overflow = "hidden", a.style.borderRadius = "14px";
40
40
  const n = document.createElement("img");
41
- a.appendChild(n), n.style.width = "100%", n.style.height = "100%", n.style.objectFit = "cover", n.src = ((d = this.origin) == null ? void 0 : d.image.src) || "", n.classList.add("vvw--pulsing"), this.element = a, this.element.classList.add("vvw-img-hi");
41
+ a.appendChild(n), n.style.width = "100%", n.style.height = "100%", n.style.objectFit = "cover", n.src = ((m = this.origin) == null ? void 0 : m.image.src) || "", n.classList.add("vvw--pulsing"), this.element = a, this.element.classList.add("vvw-img-hi");
42
42
  const { width: c, height: h } = this.getFullSizeDim();
43
43
  if (this.fullH = h, this.fullW = c, this.minW = this.fullW * 0.5, this.maxW = this.fullW, this.element.style.width = `${c}px`, this.element.style.height = `${h}px`, this.setSizes({ stableSize: !1, initDimension: !0 }), this.pos === 0) {
44
44
  const s = document.createElement("iframe");
45
- s.frameBorder = "0", s.allow = "autoplay; fullscreen", s.allowFullscreen = !0, s.width = "100%", s.height = "100%", s.style.position = "absolute", s.style.top = "0", s.style.left = "0", s.style.backgroundColor = "transparent", s.style.opacity = "0", s.style.transition = "opacity 1s ease", s.src = `https://fast.wistia.net/embed/iframe/${r(o)}?autoPlay=1`, a.appendChild(s), s.onload = () => {
45
+ s.frameBorder = "0", s.allow = "autoplay; fullscreen", s.allowFullscreen = !0, s.width = "100%", s.height = "100%", s.style.position = "absolute", s.style.top = "0", s.style.left = "0", s.style.opacity = "0", s.style.transition = "opacity 333ms ease", s.src = `https://fast.wistia.net/embed/iframe/${r(o)}?autoPlay=1`, a.appendChild(s), s.onload = () => {
46
46
  s.style.opacity = "1", n.classList.remove("vvw--pulsing");
47
47
  };
48
48
  }
@@ -69,16 +69,16 @@ function v() {
69
69
  onInitializeImage: (e) => {
70
70
  const i = e.elm.config.src;
71
71
  if (r(i))
72
- return new m(e);
72
+ return new d(e);
73
73
  },
74
74
  onImageView: async (e, i) => {
75
75
  const t = e.images.to[Math.floor(e.images.to.length / 2)];
76
- t instanceof m && i.deactivateUi(["download", "zoomIn", "zoomOut"], t);
76
+ t instanceof d && i.deactivateUi(["download", "zoomIn", "zoomOut"], t);
77
77
  }
78
78
  };
79
79
  }
80
80
  export {
81
- m as VistaWistiaVideo,
81
+ d as VistaWistiaVideo,
82
82
  y as getWistiaThumbnail,
83
83
  r as parseWistiaVideoId,
84
84
  v as wistiaVideo
@@ -1 +1 @@
1
- (function(f,m){typeof exports=="object"&&typeof module<"u"?m(exports):typeof define=="function"&&define.amd?define(["exports"],m):(f=typeof globalThis<"u"?globalThis:f||self,m(f.VistaView=f.VistaView||{}))})(this,(function(f){"use strict";var F=Object.defineProperty;var P=(f,m,w)=>m in f?F(f,m,{enumerable:!0,configurable:!0,writable:!0,value:w}):f[m]=w;var h=(f,m,w)=>P(f,typeof m!="symbol"?m+"":m,w);function m(c){const i=window.getComputedStyle(c).objectFit||"",{width:s,height:a}=c.getBoundingClientRect(),e=c.naturalWidth,n=c.naturalHeight;if(!i)return{width:s,height:a};if(!e||!n)return{width:s,height:a};const d=e/n,r=s/a;switch(i){case"fill":return{width:s,height:a};case"none":return{width:e,height:n};case"contain":return d>r?{width:s,height:s/d}:{width:a*d,height:a};case"cover":return d<r?{width:s,height:s/d}:{width:a*d,height:a};case"scale-down":{const o={width:e,height:n},u=d>r?{width:s,height:s/d}:{width:a*d,height:a};return u.width<=o.width&&u.height<=o.height?u:o}}return{width:s,height:a}}class w{static ease(t,i,s){const a=i-t,e=t+a*.2;return Math.abs(a)<s?i:e}static play(t,i,s){if(s()){requestAnimationFrame(()=>{this.play(t,i,s)});return}this.map.get(t)&&(t.element.classList.contains("vvw--load-cancelled")||requestAnimationFrame(()=>{var u,l,g,p,x,S,b,W,_,C;const a=this.map.get(t);if(!a||!t.element||t.element.classList.contains("vvw--load-cancelled"))return;const{current:e,target:n,log:d}=a;let r={};n.width!==void 0&&(r.width=this.ease(e._width,n.width,1)),n.height!==void 0&&(r.height=this.ease(e._height,n.height,1)),((u=n.transform)==null?void 0:u.x)!==void 0&&(r.transform=r.transform||{},r.transform.x=this.ease(e._transform.x,n.transform.x,1)),((l=n.transform)==null?void 0:l.y)!==void 0&&(r.transform=r.transform||{},r.transform.y=this.ease(e._transform.y,n.transform.y,1)),((g=n.transform)==null?void 0:g.scale)!==void 0&&(r.transform=r.transform||{},r.transform.scale=this.ease(e._transform.scale,n.transform.scale,.005)),((p=n.translate)==null?void 0:p.x)!==void 0&&(r.translate=r.translate||{},r.translate.x=this.ease(e._translate.x,n.translate.x,1)),((x=n.translate)==null?void 0:x.y)!==void 0&&(r.translate=r.translate||{},r.translate.y=this.ease(e._translate.y,n.translate.y,1)),r.width!==void 0&&(e.width=r.width),r.height!==void 0&&(e.height=r.height),r.translate&&(e.translate={...e.translate,...r.translate}),r.transform&&(e.transform={...e.transform,...r.transform}),(n.width===void 0||e._width===n.width)&&(n.height===void 0||e._height===n.height)&&(((S=n.transform)==null?void 0:S.x)===void 0||e._transform.x===n.transform.x)&&(((b=n.transform)==null?void 0:b.y)===void 0||e._transform.y===n.transform.y)&&(((W=n.transform)==null?void 0:W.scale)===void 0||e._transform.scale===n.transform.scale)&&(((_=n.translate)==null?void 0:_.x)===void 0||e._translate.x===n.translate.x)&&(((C=n.translate)==null?void 0:C.y)===void 0||e._translate.y===n.translate.y)?(this.map.delete(t),i()):(this.map.set(t,{current:e,target:n,log:d}),this.play(t,i,s))}))}static stop(t){const i=this.map.get(t);return this.map.delete(t),i}static start({vistaImage:t,target:i,onComplete:s,shouldWait:a}){this.stop(t),this.map.set(t,{current:t.state,target:i}),this.play(t,s,a)}}h(w,"map",new Map);class R{constructor(t){h(this,"state");h(this,"parsedSrcSet");h(this,"isReady",!1);h(this,"isThrowing",!1);h(this,"thumb",null);h(this,"pos");h(this,"index");h(this,"config");h(this,"origin");h(this,"initH",0);h(this,"initW",0);h(this,"fullH",0);h(this,"fullW",0);h(this,"maxW",0);h(this,"minW",0);h(this,"defaultWH",200);h(this,"isZoomedIn",!1);h(this,"isCancelled",!1);h(this,"isLoadedResolved",null);h(this,"isLoadedRejected",null);h(this,"isLoaded",new Promise((t,i)=>{this.isLoadedResolved=t,this.isLoadedRejected=i}));h(this,"replacement",null);h(this,"originalParent",null);h(this,"originalNextSibling",null);h(this,"originalStyle","");h(this,"thumbImage",null);h(this,"originRect",{width:this.defaultWH,height:this.defaultWH,top:0,left:0});h(this,"fittedSize",null);h(this,"maxZoomLevel");h(this,"vistaView");h(this,"transitionState",null);h(this,"transitionShouldWait",()=>!1);h(this,"initPointerCenter",{x:0,y:0});h(this,"onScale");var s,a,e;this.state=this.createState(),this.pos=t.pos,this.index=t.index,this.config=t.elm.config,this.parsedSrcSet=t.elm.parsedSrcSet,this.origin=t.elm.origin,this.maxZoomLevel=t.maxZoomLevel,this.vistaView=t.vistaView,this.onScale=t.onScale,t.transitionState&&(this.transitionState=t.transitionState),t.transitionShouldWait&&(this.transitionShouldWait=t.transitionShouldWait),this.initPointerCenter={x:window.innerWidth/2,y:window.innerHeight/2};const i=this.pos===0?(s=this.origin)==null?void 0:s.image:null;if(this.originalParent=(i==null?void 0:i.parentElement)||null,this.originalNextSibling=(i==null?void 0:i.nextSibling)||null,this.originRect=((e=((a=this.origin)==null?void 0:a.anchor)||i)==null?void 0:e.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0},i&&this.originalParent){this.originalStyle=i.style.cssText,this.thumbImage=i;const n=i.cloneNode(!0);this.originalParent.insertBefore(n,i),this.replacement=n,this.thumb=document.createElement("div"),this.thumb.classList.add("vvw-img-lo");const{width:d,height:r}=this.thumbImage?m(this.thumbImage):{width:0,height:0};this.fittedSize={width:d,height:r},this.thumb.appendChild(i),i.style.width="100%",i.style.height="100%",i.style.objectFit=this.origin.objectFit}}createState(){const t=this;return{_t:this,_width:0,_height:0,_transform:{x:0,y:0,scale:1},_translate:{x:0,y:0},_lessThanMinWidth:!1,get width(){return this._width},set width(i){this._width=i,t.onWidthChange(i)},get height(){return this._height},set height(i){this._height=i,t.onHeightChange(i)},get transform(){return this._transform},set transform(i){this._transform=i,t.onTransformChange(i)},get translate(){return this._translate},set translate(i){this._translate=i,t.onTranslateChange(i)},get lessThanMinWidth(){return this._lessThanMinWidth},set lessThanMinWidth(i){this._lessThanMinWidth=i,t.onLessThanMinWidthChange(i)}}}onLessThanMinWidthChange(t){t?this.element.style.opacity="0.5":this.element.style.opacity=""}onTranslateChange(t){this.element.style.translate=`calc(-50% + ${t.x}px) calc(-50% + ${t.y}px)`}onTransformChange(t){const i=`translate3d(${t.x}px, ${t.y}px, 0px) scale3d(${t.scale}, ${t.scale}, 1)`;this.element.style.transform=i}onWidthChange(t){this.element.style.width=`${t}px`}onHeightChange(t){this.element.style.height=`${t}px`}onImageReady(){}animateZoom(t,i){}scaleMove(t,i,s){}momentumThrow(t){return()=>{}}async init(){await this.isLoaded;const t=this.element;this.transitionState&&this.transitionState.current.width&&this.transitionState.current.height?(this.state.width=this.transitionState.current.width,this.state.height=this.transitionState.current.height):t.classList.contains("vvw--loaded")||(this.state.width=this.initW,this.state.height=this.initH);const i=()=>{this.isCancelled||w.start({vistaImage:this,target:{width:this.fullW,height:this.fullH},onComplete:()=>{this.isCancelled||(this.isReady=!0,t.classList.add("vvw--ready"),this.onImageReady())},shouldWait:this.transitionShouldWait})};this.pos<-1||this.pos>1?(this.state.width=this.fullW,this.state.height=this.fullH,t.classList.add("vvw--loaded"),t.classList.add("vvw--ready"),this.isReady=!0):t.classList.contains("vvw--loaded")?t.classList.contains("vvw--ready")?(this.isReady=!0,this.onImageReady()):i():(t.classList.add("vvw--loaded"),setTimeout(()=>{this.isCancelled||i()},333))}getFullSizeDim(){const{width:t,height:i}=this.thumb.getBoundingClientRect(),s=t/i;let a=window.innerWidth,e=window.innerHeight;return s>window.innerWidth/window.innerHeight?e=a/s:a=e*s,{width:a,height:e}}setSizes(t={}){var d,r,o,u;const{stableSize:i=!0,initDimension:s}=t;if(!this.origin)return;const a=this.thumb;s||(this.originRect=((r=((d=this.origin)==null?void 0:d.anchor)||this.replacement)==null?void 0:r.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0});let e=this.originRect;if(a){const l=a.style;l.width=e.width+"px",l.height=e.height+"px",l.top="50%",l.left="50%",l.translate="-50% -50%",l.position="fixed",l.objectFit=this.origin.objectFit,l.borderRadius=this.origin.borderRadius;const g=Math.min(Math.max(e.left,-e.width),window.innerWidth+e.width)-window.innerWidth/2+e.width/2,p=Math.min(Math.max(e.top,-e.height),window.innerHeight+e.height)-window.innerHeight/2+e.height/2;l.setProperty("--vvw-init-radius",l.borderRadius),l.setProperty("--vvw-pulse-radius",`calc(1.3 * ${l.borderRadius})`),l.setProperty("--vvw-init-x",`${g}px`),l.setProperty("--vvw-init-y",`${p}px`),s&&(l.setProperty("--vvw-current-x",`${g}px`),l.setProperty("--vvw-current-y",`${p}px`))}if(!s){const{width:l,height:g}=this.thumbImage?m(this.thumbImage):{width:0,height:0};this.fittedSize={width:l,height:g}}const n=this.element;if(this.initW=Math.min(((o=this.fittedSize)==null?void 0:o.width)??0,e.width),this.initH=Math.min(((u=this.fittedSize)==null?void 0:u.height)??0,e.height),n.style.setProperty("--vvw-init-w",this.initW+"px"),n.style.setProperty("--vvw-init-h",this.initH+"px"),n.style.setProperty("--vvw-init-radius",this.origin.borderRadius),n.style.objectFit="cover",!s){if(this.isReady&&!this.isCancelled){const{width:l,height:g}=this.getFullSizeDim();this.fullH=g,this.fullW=l,this.minW=this.fullW*.5}!this.isZoomedIn&&i&&this.normalize()}}normalize(){this.state.transform={x:0,y:0,scale:1},this.state.translate={x:0,y:0},this.state.width=this.fullW,this.state.height=this.fullH,this.isZoomedIn=!1}getFromParsedSrcSet(t){if(!this.parsedSrcSet||this.parsedSrcSet.length===0)return null;const i=t*(window.devicePixelRatio||1);let s=this.parsedSrcSet[this.parsedSrcSet.length-1];for(const a of this.parsedSrcSet)if(a.width>=i){s=a;break}return s.src}prepareClose(){w.stop(this),this.setFinalTransform()}cancelPendingLoad(){var t;this.isCancelled=!0,(t=this.element)==null||t.classList.add("vvw--load-cancelled")}setInitialCenter(t){this.initPointerCenter=t}destroy(){var t,i;this.originalParent&&this.thumbImage&&(this.thumbImage.style.cssText=this.originalStyle,this.originalNextSibling?this.originalParent.insertBefore(this.thumbImage,this.originalNextSibling):this.originalParent.appendChild(this.thumbImage)),this.originalParent=null,this.originalNextSibling=null,this.originalStyle="",this.thumbImage=null,this.replacement&&(this.replacement.remove(),this.replacement=null),(t=this.thumb)==null||t.remove(),(i=this.element)==null||i.remove(),this.thumb=null,this.origin=void 0,this.config={src:"",alt:""}}cloneStyleFrom(t,i){t!=null&&t.element&&(i&&(this.transitionState=i||null),t.element.classList.contains("vvw--loaded")&&(this.element.classList.add("vvw--loaded"),this.state.width=t.state.width,this.state.height=t.state.height),t.element.classList.contains("vvw--ready")&&this.element.classList.add("vvw--ready"))}toObject(){return structuredClone({config:{src:this.config.src,alt:this.config.alt,srcSet:this.config.srcSet},origin:this.origin?{src:this.origin.src,srcSet:this.origin.srcSet,borderRadius:this.origin.borderRadius,objectFit:this.origin.objectFit}:null,parsedSrcSet:this.parsedSrcSet,element:"src"in this.element?this.element.src:this.element.toString(),thumb:void 0,index:this.index,pos:this.pos,state:{width:this.state._width,height:this.state._height,transform:this.state._transform,translate:this.state._translate}})}setFinalTransform(t={}){const{propagateEvent:i=!0}=t;if(this.isReady){if(this.state.translate.x+=this.state.transform.x,this.state.translate.y+=this.state.transform.y,this.state.width*=this.state.transform.scale,this.state.height*=this.state.transform.scale,Math.abs(this.state.width-this.fullW)<1&&(this.state.width=this.fullW,this.state.height=this.fullH),Math.abs(this.state.translate.x)<1&&(this.state.translate.x=0),Math.abs(this.state.translate.y)<1&&(this.state.translate.y=0),this.state.translate={...this.state.translate},this.state.transform={x:0,y:0,scale:1},i){const s=this.toObject();this.vistaView.options.onContentChange&&this.vistaView.options.onContentChange(s,this.vistaView),this.vistaView.state.extensions.forEach(a=>{a.onContentChange&&a.onContentChange(s,this.vistaView)})}return{close:!0,cancel:()=>{}}}}}function y(c){if(!c)return null;const t=[/wistia\.com\/medias\/([a-zA-Z0-9]+)/,/wistia\.net\/embed\/iframe\/([a-zA-Z0-9]+)/];for(const i of t){const s=c.match(i);if(s&&s[1])return s[1]}return null}async function L(c){const t=y(c);if(!t)throw new Error("Invalid Wistia video URL");try{return(await(await fetch(`https://fast.wistia.com/oembed?url=https://home.wistia.com/medias/${t}`)).json()).thumbnail_url}catch(i){throw console.error("Failed to fetch Wistia thumbnail:",i),new Error("Failed to fetch Wistia thumbnail")}}class v extends R{constructor(i){var r;super(i);h(this,"element");h(this,"url");const s=i.elm.config.src;this.url=s;const a=document.createElement("div");a.style.position="relative",a.style.overflow="hidden",a.style.borderRadius="14px";const e=document.createElement("img");a.appendChild(e),e.style.width="100%",e.style.height="100%",e.style.objectFit="cover",e.src=((r=this.origin)==null?void 0:r.image.src)||"",e.classList.add("vvw--pulsing"),this.element=a,this.element.classList.add("vvw-img-hi");const{width:n,height:d}=this.getFullSizeDim();if(this.fullH=d,this.fullW=n,this.minW=this.fullW*.5,this.maxW=this.fullW,this.element.style.width=`${n}px`,this.element.style.height=`${d}px`,this.setSizes({stableSize:!1,initDimension:!0}),this.pos===0){const o=document.createElement("iframe");o.frameBorder="0",o.allow="autoplay; fullscreen",o.allowFullscreen=!0,o.width="100%",o.height="100%",o.style.position="absolute",o.style.top="0",o.style.left="0",o.style.backgroundColor="transparent",o.style.opacity="0",o.style.transition="opacity 1s ease",o.src=`https://fast.wistia.net/embed/iframe/${y(s)}?autoPlay=1`,a.appendChild(o),o.onload=()=>{o.style.opacity="1",e.classList.remove("vvw--pulsing")}}this.isLoadedResolved(!0)}getFullSizeDim(){const i=Math.min(window.innerWidth,800);return{width:i,height:i*9/16}}setFinalTransform(){return super.setFinalTransform({propagateEvent:!1})}}function H(){return{name:"wistiaVideo",onInitializeImage:c=>{const t=c.elm.config.src;if(y(t))return new v(c)},onImageView:async(c,t)=>{const i=c.images.to[Math.floor(c.images.to.length/2)];i instanceof v&&t.deactivateUi(["download","zoomIn","zoomOut"],i)}}}f.VistaWistiaVideo=v,f.getWistiaThumbnail=L,f.parseWistiaVideoId=y,f.wistiaVideo=H,Object.defineProperty(f,Symbol.toStringTag,{value:"Module"})}));
1
+ (function(f,m){typeof exports=="object"&&typeof module<"u"?m(exports):typeof define=="function"&&define.amd?define(["exports"],m):(f=typeof globalThis<"u"?globalThis:f||self,m(f.VistaView=f.VistaView||{}))})(this,(function(f){"use strict";var F=Object.defineProperty;var P=(f,m,w)=>m in f?F(f,m,{enumerable:!0,configurable:!0,writable:!0,value:w}):f[m]=w;var h=(f,m,w)=>P(f,typeof m!="symbol"?m+"":m,w);function m(c){const i=window.getComputedStyle(c).objectFit||"",{width:s,height:a}=c.getBoundingClientRect(),e=c.naturalWidth,n=c.naturalHeight;if(!i)return{width:s,height:a};if(!e||!n)return{width:s,height:a};const d=e/n,r=s/a;switch(i){case"fill":return{width:s,height:a};case"none":return{width:e,height:n};case"contain":return d>r?{width:s,height:s/d}:{width:a*d,height:a};case"cover":return d<r?{width:s,height:s/d}:{width:a*d,height:a};case"scale-down":{const l={width:e,height:n},u=d>r?{width:s,height:s/d}:{width:a*d,height:a};return u.width<=l.width&&u.height<=l.height?u:l}}return{width:s,height:a}}class w{static ease(t,i,s){const a=i-t,e=t+a*.2;return Math.abs(a)<s?i:e}static play(t,i,s){if(s()){requestAnimationFrame(()=>{this.play(t,i,s)});return}this.map.get(t)&&(t.element.classList.contains("vvw--load-cancelled")||requestAnimationFrame(()=>{var u,o,g,p,x,S,b,W,_,C;const a=this.map.get(t);if(!a||!t.element||t.element.classList.contains("vvw--load-cancelled"))return;const{current:e,target:n,log:d}=a;let r={};n.width!==void 0&&(r.width=this.ease(e._width,n.width,1)),n.height!==void 0&&(r.height=this.ease(e._height,n.height,1)),((u=n.transform)==null?void 0:u.x)!==void 0&&(r.transform=r.transform||{},r.transform.x=this.ease(e._transform.x,n.transform.x,1)),((o=n.transform)==null?void 0:o.y)!==void 0&&(r.transform=r.transform||{},r.transform.y=this.ease(e._transform.y,n.transform.y,1)),((g=n.transform)==null?void 0:g.scale)!==void 0&&(r.transform=r.transform||{},r.transform.scale=this.ease(e._transform.scale,n.transform.scale,.005)),((p=n.translate)==null?void 0:p.x)!==void 0&&(r.translate=r.translate||{},r.translate.x=this.ease(e._translate.x,n.translate.x,1)),((x=n.translate)==null?void 0:x.y)!==void 0&&(r.translate=r.translate||{},r.translate.y=this.ease(e._translate.y,n.translate.y,1)),r.width!==void 0&&(e.width=r.width),r.height!==void 0&&(e.height=r.height),r.translate&&(e.translate={...e.translate,...r.translate}),r.transform&&(e.transform={...e.transform,...r.transform}),(n.width===void 0||e._width===n.width)&&(n.height===void 0||e._height===n.height)&&(((S=n.transform)==null?void 0:S.x)===void 0||e._transform.x===n.transform.x)&&(((b=n.transform)==null?void 0:b.y)===void 0||e._transform.y===n.transform.y)&&(((W=n.transform)==null?void 0:W.scale)===void 0||e._transform.scale===n.transform.scale)&&(((_=n.translate)==null?void 0:_.x)===void 0||e._translate.x===n.translate.x)&&(((C=n.translate)==null?void 0:C.y)===void 0||e._translate.y===n.translate.y)?(this.map.delete(t),i()):(this.map.set(t,{current:e,target:n,log:d}),this.play(t,i,s))}))}static stop(t){const i=this.map.get(t);return this.map.delete(t),i}static start({vistaImage:t,target:i,onComplete:s,shouldWait:a}){this.stop(t),this.map.set(t,{current:t.state,target:i}),this.play(t,s,a)}}h(w,"map",new Map);class R{constructor(t){h(this,"state");h(this,"parsedSrcSet");h(this,"isReady",!1);h(this,"isThrowing",!1);h(this,"thumb",null);h(this,"pos");h(this,"index");h(this,"config");h(this,"origin");h(this,"initH",0);h(this,"initW",0);h(this,"fullH",0);h(this,"fullW",0);h(this,"maxW",0);h(this,"minW",0);h(this,"defaultWH",200);h(this,"isZoomedIn",!1);h(this,"isCancelled",!1);h(this,"isLoadedResolved",null);h(this,"isLoadedRejected",null);h(this,"isLoaded",new Promise((t,i)=>{this.isLoadedResolved=t,this.isLoadedRejected=i}));h(this,"replacement",null);h(this,"originalParent",null);h(this,"originalNextSibling",null);h(this,"originalStyle","");h(this,"thumbImage",null);h(this,"originRect",{width:this.defaultWH,height:this.defaultWH,top:0,left:0});h(this,"fittedSize",null);h(this,"maxZoomLevel");h(this,"vistaView");h(this,"transitionState",null);h(this,"transitionShouldWait",()=>!1);h(this,"initPointerCenter",{x:0,y:0});h(this,"onScale");var s,a,e;this.state=this.createState(),this.pos=t.pos,this.index=t.index,this.config=t.elm.config,this.parsedSrcSet=t.elm.parsedSrcSet,this.origin=t.elm.origin,this.maxZoomLevel=t.maxZoomLevel,this.vistaView=t.vistaView,this.onScale=t.onScale,t.transitionState&&(this.transitionState=t.transitionState),t.transitionShouldWait&&(this.transitionShouldWait=t.transitionShouldWait),this.initPointerCenter={x:window.innerWidth/2,y:window.innerHeight/2};const i=this.pos===0?(s=this.origin)==null?void 0:s.image:null;if(this.originalParent=(i==null?void 0:i.parentElement)||null,this.originalNextSibling=(i==null?void 0:i.nextSibling)||null,this.originRect=((e=((a=this.origin)==null?void 0:a.anchor)||i)==null?void 0:e.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0},i&&this.originalParent){this.originalStyle=i.style.cssText,this.thumbImage=i;const n=i.cloneNode(!0);this.originalParent.insertBefore(n,i),this.replacement=n,this.thumb=document.createElement("div"),this.thumb.classList.add("vvw-img-lo");const{width:d,height:r}=this.thumbImage?m(this.thumbImage):{width:0,height:0};this.fittedSize={width:d,height:r},this.thumb.appendChild(i),i.style.width="100%",i.style.height="100%",i.style.objectFit=this.origin.objectFit}}createState(){const t=this;return{_t:this,_width:0,_height:0,_transform:{x:0,y:0,scale:1},_translate:{x:0,y:0},_lessThanMinWidth:!1,get width(){return this._width},set width(i){this._width=i,t.onWidthChange(i)},get height(){return this._height},set height(i){this._height=i,t.onHeightChange(i)},get transform(){return this._transform},set transform(i){this._transform=i,t.onTransformChange(i)},get translate(){return this._translate},set translate(i){this._translate=i,t.onTranslateChange(i)},get lessThanMinWidth(){return this._lessThanMinWidth},set lessThanMinWidth(i){this._lessThanMinWidth=i,t.onLessThanMinWidthChange(i)}}}onLessThanMinWidthChange(t){t?this.element.style.opacity="0.5":this.element.style.opacity=""}onTranslateChange(t){this.element.style.translate=`calc(-50% + ${t.x}px) calc(-50% + ${t.y}px)`}onTransformChange(t){const i=`translate3d(${t.x}px, ${t.y}px, 0px) scale3d(${t.scale}, ${t.scale}, 1)`;this.element.style.transform=i}onWidthChange(t){this.element.style.width=`${t}px`}onHeightChange(t){this.element.style.height=`${t}px`}onImageReady(){}animateZoom(t,i){}scaleMove(t,i,s){}momentumThrow(t){return()=>{}}async init(){await this.isLoaded;const t=this.element;this.transitionState&&this.transitionState.current.width&&this.transitionState.current.height?(this.state.width=this.transitionState.current.width,this.state.height=this.transitionState.current.height):t.classList.contains("vvw--loaded")||(this.state.width=this.initW,this.state.height=this.initH);const i=()=>{this.isCancelled||w.start({vistaImage:this,target:{width:this.fullW,height:this.fullH},onComplete:()=>{this.isCancelled||(this.isReady=!0,t.classList.add("vvw--ready"),this.onImageReady())},shouldWait:this.transitionShouldWait})};this.pos<-1||this.pos>1?(this.state.width=this.fullW,this.state.height=this.fullH,t.classList.add("vvw--loaded"),t.classList.add("vvw--ready"),this.isReady=!0):t.classList.contains("vvw--loaded")?t.classList.contains("vvw--ready")?(this.isReady=!0,this.onImageReady()):i():(t.classList.add("vvw--loaded"),setTimeout(()=>{this.isCancelled||i()},333))}getFullSizeDim(){const{width:t,height:i}=this.thumb.getBoundingClientRect(),s=t/i;let a=window.innerWidth,e=window.innerHeight;return s>window.innerWidth/window.innerHeight?e=a/s:a=e*s,{width:a,height:e}}setSizes(t={}){var d,r,l,u;const{stableSize:i=!0,initDimension:s}=t;if(!this.origin)return;const a=this.thumb;s||(this.originRect=((r=((d=this.origin)==null?void 0:d.anchor)||this.replacement)==null?void 0:r.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0});let e=this.originRect;if(a){const o=a.style;o.width=e.width+"px",o.height=e.height+"px",o.top="50%",o.left="50%",o.translate="-50% -50%",o.position="fixed",o.objectFit=this.origin.objectFit,o.borderRadius=this.origin.borderRadius;const g=Math.min(Math.max(e.left,-e.width),window.innerWidth+e.width)-window.innerWidth/2+e.width/2,p=Math.min(Math.max(e.top,-e.height),window.innerHeight+e.height)-window.innerHeight/2+e.height/2;o.setProperty("--vvw-init-radius",o.borderRadius),o.setProperty("--vvw-pulse-radius",`calc(1.3 * ${o.borderRadius})`),o.setProperty("--vvw-init-x",`${g}px`),o.setProperty("--vvw-init-y",`${p}px`),s&&(o.setProperty("--vvw-current-x",`${g}px`),o.setProperty("--vvw-current-y",`${p}px`))}if(!s){const{width:o,height:g}=this.thumbImage?m(this.thumbImage):{width:0,height:0};this.fittedSize={width:o,height:g}}const n=this.element;if(this.initW=Math.min(((l=this.fittedSize)==null?void 0:l.width)??0,e.width),this.initH=Math.min(((u=this.fittedSize)==null?void 0:u.height)??0,e.height),n.style.setProperty("--vvw-init-w",this.initW+"px"),n.style.setProperty("--vvw-init-h",this.initH+"px"),n.style.setProperty("--vvw-init-radius",this.origin.borderRadius),n.style.objectFit="cover",!s){if(this.isReady&&!this.isCancelled){const{width:o,height:g}=this.getFullSizeDim();this.fullH=g,this.fullW=o,this.minW=this.fullW*.5}!this.isZoomedIn&&i&&this.normalize()}}normalize(){this.state.transform={x:0,y:0,scale:1},this.state.translate={x:0,y:0},this.state.width=this.fullW,this.state.height=this.fullH,this.isZoomedIn=!1}getFromParsedSrcSet(t){if(!this.parsedSrcSet||this.parsedSrcSet.length===0)return null;const i=t*(window.devicePixelRatio||1);let s=this.parsedSrcSet[this.parsedSrcSet.length-1];for(const a of this.parsedSrcSet)if(a.width>=i){s=a;break}return s.src}prepareClose(){w.stop(this),this.setFinalTransform()}cancelPendingLoad(){var t;this.isCancelled=!0,(t=this.element)==null||t.classList.add("vvw--load-cancelled")}setInitialCenter(t){this.initPointerCenter=t}destroy(){var t,i;this.originalParent&&this.thumbImage&&(this.thumbImage.style.cssText=this.originalStyle,this.originalNextSibling?this.originalParent.insertBefore(this.thumbImage,this.originalNextSibling):this.originalParent.appendChild(this.thumbImage)),this.originalParent=null,this.originalNextSibling=null,this.originalStyle="",this.thumbImage=null,this.replacement&&(this.replacement.remove(),this.replacement=null),(t=this.thumb)==null||t.remove(),(i=this.element)==null||i.remove(),this.thumb=null,this.origin=void 0,this.config={src:"",alt:""}}cloneStyleFrom(t,i){t!=null&&t.element&&(i&&(this.transitionState=i||null),t.element.classList.contains("vvw--loaded")&&(this.element.classList.add("vvw--loaded"),this.state.width=t.state.width,this.state.height=t.state.height),t.element.classList.contains("vvw--ready")&&this.element.classList.add("vvw--ready"))}toObject(){return structuredClone({config:{src:this.config.src,alt:this.config.alt,srcSet:this.config.srcSet},origin:this.origin?{src:this.origin.src,srcSet:this.origin.srcSet,borderRadius:this.origin.borderRadius,objectFit:this.origin.objectFit}:null,parsedSrcSet:this.parsedSrcSet,element:"src"in this.element?this.element.src:this.element.toString(),thumb:void 0,index:this.index,pos:this.pos,state:{width:this.state._width,height:this.state._height,transform:this.state._transform,translate:this.state._translate}})}setFinalTransform(t={}){const{propagateEvent:i=!0}=t;if(this.isReady){if(this.state.translate.x+=this.state.transform.x,this.state.translate.y+=this.state.transform.y,this.state.width*=this.state.transform.scale,this.state.height*=this.state.transform.scale,Math.abs(this.state.width-this.fullW)<1&&(this.state.width=this.fullW,this.state.height=this.fullH),Math.abs(this.state.translate.x)<1&&(this.state.translate.x=0),Math.abs(this.state.translate.y)<1&&(this.state.translate.y=0),this.state.translate={...this.state.translate},this.state.transform={x:0,y:0,scale:1},i){const s=this.toObject();this.vistaView.options.onContentChange&&this.vistaView.options.onContentChange(s,this.vistaView),this.vistaView.state.extensions.forEach(a=>{a.onContentChange&&a.onContentChange(s,this.vistaView)})}return{close:!0,cancel:()=>{}}}}}function y(c){if(!c)return null;const t=[/wistia\.com\/medias\/([a-zA-Z0-9]+)/,/wistia\.net\/embed\/iframe\/([a-zA-Z0-9]+)/];for(const i of t){const s=c.match(i);if(s&&s[1])return s[1]}return null}async function L(c){const t=y(c);if(!t)throw new Error("Invalid Wistia video URL");try{return(await(await fetch(`https://fast.wistia.com/oembed?url=https://home.wistia.com/medias/${t}`)).json()).thumbnail_url}catch(i){throw console.error("Failed to fetch Wistia thumbnail:",i),new Error("Failed to fetch Wistia thumbnail")}}class v extends R{constructor(i){var r;super(i);h(this,"element");h(this,"url");const s=i.elm.config.src;this.url=s;const a=document.createElement("div");a.style.position="relative",a.style.overflow="hidden",a.style.borderRadius="14px";const e=document.createElement("img");a.appendChild(e),e.style.width="100%",e.style.height="100%",e.style.objectFit="cover",e.src=((r=this.origin)==null?void 0:r.image.src)||"",e.classList.add("vvw--pulsing"),this.element=a,this.element.classList.add("vvw-img-hi");const{width:n,height:d}=this.getFullSizeDim();if(this.fullH=d,this.fullW=n,this.minW=this.fullW*.5,this.maxW=this.fullW,this.element.style.width=`${n}px`,this.element.style.height=`${d}px`,this.setSizes({stableSize:!1,initDimension:!0}),this.pos===0){const l=document.createElement("iframe");l.frameBorder="0",l.allow="autoplay; fullscreen",l.allowFullscreen=!0,l.width="100%",l.height="100%",l.style.position="absolute",l.style.top="0",l.style.left="0",l.style.opacity="0",l.style.transition="opacity 333ms ease",l.src=`https://fast.wistia.net/embed/iframe/${y(s)}?autoPlay=1`,a.appendChild(l),l.onload=()=>{l.style.opacity="1",e.classList.remove("vvw--pulsing")}}this.isLoadedResolved(!0)}getFullSizeDim(){const i=Math.min(window.innerWidth,800);return{width:i,height:i*9/16}}setFinalTransform(){return super.setFinalTransform({propagateEvent:!1})}}function H(){return{name:"wistiaVideo",onInitializeImage:c=>{const t=c.elm.config.src;if(y(t))return new v(c)},onImageView:async(c,t)=>{const i=c.images.to[Math.floor(c.images.to.length/2)];i instanceof v&&t.deactivateUi(["download","zoomIn","zoomOut"],i)}}}f.VistaWistiaVideo=v,f.getWistiaThumbnail=L,f.parseWistiaVideoId=y,f.wistiaVideo=H,Object.defineProperty(f,Symbol.toStringTag,{value:"Module"})}));
@@ -2,7 +2,7 @@ var h = Object.defineProperty;
2
2
  var p = (t, i, e) => i in t ? h(t, i, { enumerable: !0, configurable: !0, writable: !0, value: e }) : t[i] = e;
3
3
  var a = (t, i, e) => p(t, typeof i != "symbol" ? i + "" : i, e);
4
4
  import { V as f } from "../vista-box-zG6ZgBcI.js";
5
- function r(t) {
5
+ function u(t) {
6
6
  if (!t) return null;
7
7
  const i = [
8
8
  /(?:youtube\.com\/watch\?v=|youtu\.be\/)([a-zA-Z0-9_-]{11})/,
@@ -25,7 +25,7 @@ function g(t, i = "hq") {
25
25
  mq: "mqdefault.jpg",
26
26
  sd: "sddefault.jpg",
27
27
  default: "default.jpg"
28
- }, s = r(t);
28
+ }, s = u(t);
29
29
  if (!s)
30
30
  throw new Error("Invalid YouTube video URL");
31
31
  return `https://img.youtube.com/vi/${s}/${e[i]}`;
@@ -42,10 +42,10 @@ class d extends f {
42
42
  l.style.position = "relative";
43
43
  const n = document.createElement("img");
44
44
  l.appendChild(n), n.src = ((m = this.origin) == null ? void 0 : m.image.src) || g(s, "hq"), n.style.width = "100%", n.style.height = "100%", n.style.objectFit = "cover", n.classList.add("vvw--pulsing"), this.element = l, this.element.classList.add("vvw-img-hi");
45
- const { width: u, height: c } = this.getFullSizeDim();
46
- if (this.fullH = c, this.fullW = u, this.minW = this.fullW * 0.5, this.maxW = this.fullW, this.element.style.width = `${u}px`, this.element.style.height = `${c}px`, this.setSizes({ stableSize: !1, initDimension: !0 }), this.pos === 0) {
45
+ const { width: r, height: c } = this.getFullSizeDim();
46
+ if (this.fullH = c, this.fullW = r, this.minW = this.fullW * 0.5, this.maxW = this.fullW, this.element.style.width = `${r}px`, this.element.style.height = `${c}px`, this.setSizes({ stableSize: !1, initDimension: !0 }), this.pos === 0) {
47
47
  const o = document.createElement("iframe");
48
- o.frameBorder = "0", o.allow = "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share", o.allowFullscreen = !0, o.width = "100%", o.height = "100%", o.style.position = "absolute", o.style.top = "0", o.style.left = "0", o.style.backgroundColor = "transparent", o.style.opacity = "0", o.style.transition = "opacity 1s ease", o.src = `https://www.youtube.com/embed/${r(s)}?autoplay=1&rel=0`, l.appendChild(o), o.onload = () => {
48
+ o.frameBorder = "0", o.allow = "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share", o.allowFullscreen = !0, o.width = "100%", o.height = "100%", o.style.position = "absolute", o.style.top = "0", o.style.left = "0", o.style.opacity = "0", o.style.transition = "opacity 333ms ease", o.src = `https://www.youtube.com/embed/${u(s)}?autoplay=1&rel=0`, l.appendChild(o), o.onload = () => {
49
49
  o.style.opacity = "1", n.classList.remove("vvw--pulsing");
50
50
  };
51
51
  }
@@ -71,7 +71,7 @@ function w() {
71
71
  name: "ytVideo",
72
72
  onInitializeImage: (t) => {
73
73
  const i = t.elm.config.src;
74
- if (r(i))
74
+ if (u(i))
75
75
  return new d(t);
76
76
  },
77
77
  onImageView: async (t, i) => {
@@ -83,6 +83,6 @@ function w() {
83
83
  export {
84
84
  d as VistaYoutubeVideo,
85
85
  g as getYouTubeThumbnail,
86
- r as parseYouTubeVideoId,
86
+ u as parseYouTubeVideoId,
87
87
  w as youtubeVideo
88
88
  };
@@ -1 +1 @@
1
- (function(u,f){typeof exports=="object"&&typeof module<"u"?f(exports):typeof define=="function"&&define.amd?define(["exports"],f):(u=typeof globalThis<"u"?globalThis:u||self,f(u.VistaView=u.VistaView||{}))})(this,(function(u){"use strict";var T=Object.defineProperty;var F=(u,f,w)=>f in u?T(u,f,{enumerable:!0,configurable:!0,writable:!0,value:w}):u[f]=w;var h=(u,f,w)=>F(u,typeof f!="symbol"?f+"":f,w);function f(c){const e=window.getComputedStyle(c).objectFit||"",{width:s,height:a}=c.getBoundingClientRect(),i=c.naturalWidth,n=c.naturalHeight;if(!e)return{width:s,height:a};if(!i||!n)return{width:s,height:a};const d=i/n,r=s/a;switch(e){case"fill":return{width:s,height:a};case"none":return{width:i,height:n};case"contain":return d>r?{width:s,height:s/d}:{width:a*d,height:a};case"cover":return d<r?{width:s,height:s/d}:{width:a*d,height:a};case"scale-down":{const o={width:i,height:n},m=d>r?{width:s,height:s/d}:{width:a*d,height:a};return m.width<=o.width&&m.height<=o.height?m:o}}return{width:s,height:a}}class w{static ease(t,e,s){const a=e-t,i=t+a*.2;return Math.abs(a)<s?e:i}static play(t,e,s){if(s()){requestAnimationFrame(()=>{this.play(t,e,s)});return}this.map.get(t)&&(t.element.classList.contains("vvw--load-cancelled")||requestAnimationFrame(()=>{var m,l,g,y,x,S,W,_,C,R;const a=this.map.get(t);if(!a||!t.element||t.element.classList.contains("vvw--load-cancelled"))return;const{current:i,target:n,log:d}=a;let r={};n.width!==void 0&&(r.width=this.ease(i._width,n.width,1)),n.height!==void 0&&(r.height=this.ease(i._height,n.height,1)),((m=n.transform)==null?void 0:m.x)!==void 0&&(r.transform=r.transform||{},r.transform.x=this.ease(i._transform.x,n.transform.x,1)),((l=n.transform)==null?void 0:l.y)!==void 0&&(r.transform=r.transform||{},r.transform.y=this.ease(i._transform.y,n.transform.y,1)),((g=n.transform)==null?void 0:g.scale)!==void 0&&(r.transform=r.transform||{},r.transform.scale=this.ease(i._transform.scale,n.transform.scale,.005)),((y=n.translate)==null?void 0:y.x)!==void 0&&(r.translate=r.translate||{},r.translate.x=this.ease(i._translate.x,n.translate.x,1)),((x=n.translate)==null?void 0:x.y)!==void 0&&(r.translate=r.translate||{},r.translate.y=this.ease(i._translate.y,n.translate.y,1)),r.width!==void 0&&(i.width=r.width),r.height!==void 0&&(i.height=r.height),r.translate&&(i.translate={...i.translate,...r.translate}),r.transform&&(i.transform={...i.transform,...r.transform}),(n.width===void 0||i._width===n.width)&&(n.height===void 0||i._height===n.height)&&(((S=n.transform)==null?void 0:S.x)===void 0||i._transform.x===n.transform.x)&&(((W=n.transform)==null?void 0:W.y)===void 0||i._transform.y===n.transform.y)&&(((_=n.transform)==null?void 0:_.scale)===void 0||i._transform.scale===n.transform.scale)&&(((C=n.translate)==null?void 0:C.x)===void 0||i._translate.x===n.translate.x)&&(((R=n.translate)==null?void 0:R.y)===void 0||i._translate.y===n.translate.y)?(this.map.delete(t),e()):(this.map.set(t,{current:i,target:n,log:d}),this.play(t,e,s))}))}static stop(t){const e=this.map.get(t);return this.map.delete(t),e}static start({vistaImage:t,target:e,onComplete:s,shouldWait:a}){this.stop(t),this.map.set(t,{current:t.state,target:e}),this.play(t,s,a)}}h(w,"map",new Map);class L{constructor(t){h(this,"state");h(this,"parsedSrcSet");h(this,"isReady",!1);h(this,"isThrowing",!1);h(this,"thumb",null);h(this,"pos");h(this,"index");h(this,"config");h(this,"origin");h(this,"initH",0);h(this,"initW",0);h(this,"fullH",0);h(this,"fullW",0);h(this,"maxW",0);h(this,"minW",0);h(this,"defaultWH",200);h(this,"isZoomedIn",!1);h(this,"isCancelled",!1);h(this,"isLoadedResolved",null);h(this,"isLoadedRejected",null);h(this,"isLoaded",new Promise((t,e)=>{this.isLoadedResolved=t,this.isLoadedRejected=e}));h(this,"replacement",null);h(this,"originalParent",null);h(this,"originalNextSibling",null);h(this,"originalStyle","");h(this,"thumbImage",null);h(this,"originRect",{width:this.defaultWH,height:this.defaultWH,top:0,left:0});h(this,"fittedSize",null);h(this,"maxZoomLevel");h(this,"vistaView");h(this,"transitionState",null);h(this,"transitionShouldWait",()=>!1);h(this,"initPointerCenter",{x:0,y:0});h(this,"onScale");var s,a,i;this.state=this.createState(),this.pos=t.pos,this.index=t.index,this.config=t.elm.config,this.parsedSrcSet=t.elm.parsedSrcSet,this.origin=t.elm.origin,this.maxZoomLevel=t.maxZoomLevel,this.vistaView=t.vistaView,this.onScale=t.onScale,t.transitionState&&(this.transitionState=t.transitionState),t.transitionShouldWait&&(this.transitionShouldWait=t.transitionShouldWait),this.initPointerCenter={x:window.innerWidth/2,y:window.innerHeight/2};const e=this.pos===0?(s=this.origin)==null?void 0:s.image:null;if(this.originalParent=(e==null?void 0:e.parentElement)||null,this.originalNextSibling=(e==null?void 0:e.nextSibling)||null,this.originRect=((i=((a=this.origin)==null?void 0:a.anchor)||e)==null?void 0:i.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0},e&&this.originalParent){this.originalStyle=e.style.cssText,this.thumbImage=e;const n=e.cloneNode(!0);this.originalParent.insertBefore(n,e),this.replacement=n,this.thumb=document.createElement("div"),this.thumb.classList.add("vvw-img-lo");const{width:d,height:r}=this.thumbImage?f(this.thumbImage):{width:0,height:0};this.fittedSize={width:d,height:r},this.thumb.appendChild(e),e.style.width="100%",e.style.height="100%",e.style.objectFit=this.origin.objectFit}}createState(){const t=this;return{_t:this,_width:0,_height:0,_transform:{x:0,y:0,scale:1},_translate:{x:0,y:0},_lessThanMinWidth:!1,get width(){return this._width},set width(e){this._width=e,t.onWidthChange(e)},get height(){return this._height},set height(e){this._height=e,t.onHeightChange(e)},get transform(){return this._transform},set transform(e){this._transform=e,t.onTransformChange(e)},get translate(){return this._translate},set translate(e){this._translate=e,t.onTranslateChange(e)},get lessThanMinWidth(){return this._lessThanMinWidth},set lessThanMinWidth(e){this._lessThanMinWidth=e,t.onLessThanMinWidthChange(e)}}}onLessThanMinWidthChange(t){t?this.element.style.opacity="0.5":this.element.style.opacity=""}onTranslateChange(t){this.element.style.translate=`calc(-50% + ${t.x}px) calc(-50% + ${t.y}px)`}onTransformChange(t){const e=`translate3d(${t.x}px, ${t.y}px, 0px) scale3d(${t.scale}, ${t.scale}, 1)`;this.element.style.transform=e}onWidthChange(t){this.element.style.width=`${t}px`}onHeightChange(t){this.element.style.height=`${t}px`}onImageReady(){}animateZoom(t,e){}scaleMove(t,e,s){}momentumThrow(t){return()=>{}}async init(){await this.isLoaded;const t=this.element;this.transitionState&&this.transitionState.current.width&&this.transitionState.current.height?(this.state.width=this.transitionState.current.width,this.state.height=this.transitionState.current.height):t.classList.contains("vvw--loaded")||(this.state.width=this.initW,this.state.height=this.initH);const e=()=>{this.isCancelled||w.start({vistaImage:this,target:{width:this.fullW,height:this.fullH},onComplete:()=>{this.isCancelled||(this.isReady=!0,t.classList.add("vvw--ready"),this.onImageReady())},shouldWait:this.transitionShouldWait})};this.pos<-1||this.pos>1?(this.state.width=this.fullW,this.state.height=this.fullH,t.classList.add("vvw--loaded"),t.classList.add("vvw--ready"),this.isReady=!0):t.classList.contains("vvw--loaded")?t.classList.contains("vvw--ready")?(this.isReady=!0,this.onImageReady()):e():(t.classList.add("vvw--loaded"),setTimeout(()=>{this.isCancelled||e()},333))}getFullSizeDim(){const{width:t,height:e}=this.thumb.getBoundingClientRect(),s=t/e;let a=window.innerWidth,i=window.innerHeight;return s>window.innerWidth/window.innerHeight?i=a/s:a=i*s,{width:a,height:i}}setSizes(t={}){var d,r,o,m;const{stableSize:e=!0,initDimension:s}=t;if(!this.origin)return;const a=this.thumb;s||(this.originRect=((r=((d=this.origin)==null?void 0:d.anchor)||this.replacement)==null?void 0:r.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0});let i=this.originRect;if(a){const l=a.style;l.width=i.width+"px",l.height=i.height+"px",l.top="50%",l.left="50%",l.translate="-50% -50%",l.position="fixed",l.objectFit=this.origin.objectFit,l.borderRadius=this.origin.borderRadius;const g=Math.min(Math.max(i.left,-i.width),window.innerWidth+i.width)-window.innerWidth/2+i.width/2,y=Math.min(Math.max(i.top,-i.height),window.innerHeight+i.height)-window.innerHeight/2+i.height/2;l.setProperty("--vvw-init-radius",l.borderRadius),l.setProperty("--vvw-pulse-radius",`calc(1.3 * ${l.borderRadius})`),l.setProperty("--vvw-init-x",`${g}px`),l.setProperty("--vvw-init-y",`${y}px`),s&&(l.setProperty("--vvw-current-x",`${g}px`),l.setProperty("--vvw-current-y",`${y}px`))}if(!s){const{width:l,height:g}=this.thumbImage?f(this.thumbImage):{width:0,height:0};this.fittedSize={width:l,height:g}}const n=this.element;if(this.initW=Math.min(((o=this.fittedSize)==null?void 0:o.width)??0,i.width),this.initH=Math.min(((m=this.fittedSize)==null?void 0:m.height)??0,i.height),n.style.setProperty("--vvw-init-w",this.initW+"px"),n.style.setProperty("--vvw-init-h",this.initH+"px"),n.style.setProperty("--vvw-init-radius",this.origin.borderRadius),n.style.objectFit="cover",!s){if(this.isReady&&!this.isCancelled){const{width:l,height:g}=this.getFullSizeDim();this.fullH=g,this.fullW=l,this.minW=this.fullW*.5}!this.isZoomedIn&&e&&this.normalize()}}normalize(){this.state.transform={x:0,y:0,scale:1},this.state.translate={x:0,y:0},this.state.width=this.fullW,this.state.height=this.fullH,this.isZoomedIn=!1}getFromParsedSrcSet(t){if(!this.parsedSrcSet||this.parsedSrcSet.length===0)return null;const e=t*(window.devicePixelRatio||1);let s=this.parsedSrcSet[this.parsedSrcSet.length-1];for(const a of this.parsedSrcSet)if(a.width>=e){s=a;break}return s.src}prepareClose(){w.stop(this),this.setFinalTransform()}cancelPendingLoad(){var t;this.isCancelled=!0,(t=this.element)==null||t.classList.add("vvw--load-cancelled")}setInitialCenter(t){this.initPointerCenter=t}destroy(){var t,e;this.originalParent&&this.thumbImage&&(this.thumbImage.style.cssText=this.originalStyle,this.originalNextSibling?this.originalParent.insertBefore(this.thumbImage,this.originalNextSibling):this.originalParent.appendChild(this.thumbImage)),this.originalParent=null,this.originalNextSibling=null,this.originalStyle="",this.thumbImage=null,this.replacement&&(this.replacement.remove(),this.replacement=null),(t=this.thumb)==null||t.remove(),(e=this.element)==null||e.remove(),this.thumb=null,this.origin=void 0,this.config={src:"",alt:""}}cloneStyleFrom(t,e){t!=null&&t.element&&(e&&(this.transitionState=e||null),t.element.classList.contains("vvw--loaded")&&(this.element.classList.add("vvw--loaded"),this.state.width=t.state.width,this.state.height=t.state.height),t.element.classList.contains("vvw--ready")&&this.element.classList.add("vvw--ready"))}toObject(){return structuredClone({config:{src:this.config.src,alt:this.config.alt,srcSet:this.config.srcSet},origin:this.origin?{src:this.origin.src,srcSet:this.origin.srcSet,borderRadius:this.origin.borderRadius,objectFit:this.origin.objectFit}:null,parsedSrcSet:this.parsedSrcSet,element:"src"in this.element?this.element.src:this.element.toString(),thumb:void 0,index:this.index,pos:this.pos,state:{width:this.state._width,height:this.state._height,transform:this.state._transform,translate:this.state._translate}})}setFinalTransform(t={}){const{propagateEvent:e=!0}=t;if(this.isReady){if(this.state.translate.x+=this.state.transform.x,this.state.translate.y+=this.state.transform.y,this.state.width*=this.state.transform.scale,this.state.height*=this.state.transform.scale,Math.abs(this.state.width-this.fullW)<1&&(this.state.width=this.fullW,this.state.height=this.fullH),Math.abs(this.state.translate.x)<1&&(this.state.translate.x=0),Math.abs(this.state.translate.y)<1&&(this.state.translate.y=0),this.state.translate={...this.state.translate},this.state.transform={x:0,y:0,scale:1},e){const s=this.toObject();this.vistaView.options.onContentChange&&this.vistaView.options.onContentChange(s,this.vistaView),this.vistaView.state.extensions.forEach(a=>{a.onContentChange&&a.onContentChange(s,this.vistaView)})}return{close:!0,cancel:()=>{}}}}}function p(c){if(!c)return null;const t=[/(?:youtube\.com\/watch\?v=|youtu\.be\/)([a-zA-Z0-9_-]{11})/,/youtube\.com\/embed\/([a-zA-Z0-9_-]{11})/,/youtube\.com\/v\/([a-zA-Z0-9_-]{11})/,/youtube\.com\/live\/([a-zA-Z0-9_-]{11})/,/youtube\.com\/shorts\/([a-zA-Z0-9_-]{11})/];for(const e of t){const s=c.match(e);if(s&&s[1])return s[1]}return null}function b(c,t="hq"){const e={maxres:"maxresdefault.jpg",hq:"hqdefault.jpg",mq:"mqdefault.jpg",sd:"sddefault.jpg",default:"default.jpg"},s=p(c);if(!s)throw new Error("Invalid YouTube video URL");return`https://img.youtube.com/vi/${s}/${e[t]}`}class v extends L{constructor(e){var r;super(e);h(this,"element");h(this,"url");const s=e.elm.config.src;this.url=s;const a=document.createElement("div");a.style.position="relative";const i=document.createElement("img");a.appendChild(i),i.src=((r=this.origin)==null?void 0:r.image.src)||b(s,"hq"),i.style.width="100%",i.style.height="100%",i.style.objectFit="cover",i.classList.add("vvw--pulsing"),this.element=a,this.element.classList.add("vvw-img-hi");const{width:n,height:d}=this.getFullSizeDim();if(this.fullH=d,this.fullW=n,this.minW=this.fullW*.5,this.maxW=this.fullW,this.element.style.width=`${n}px`,this.element.style.height=`${d}px`,this.setSizes({stableSize:!1,initDimension:!0}),this.pos===0){const o=document.createElement("iframe");o.frameBorder="0",o.allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",o.allowFullscreen=!0,o.width="100%",o.height="100%",o.style.position="absolute",o.style.top="0",o.style.left="0",o.style.backgroundColor="transparent",o.style.opacity="0",o.style.transition="opacity 1s ease",o.src=`https://www.youtube.com/embed/${p(s)}?autoplay=1&rel=0`,a.appendChild(o),o.onload=()=>{o.style.opacity="1",i.classList.remove("vvw--pulsing")}}this.isLoadedResolved(!0)}getFullSizeDim(){const e=Math.min(window.innerWidth,800);return{width:e,height:e*9/16}}setFinalTransform(){return super.setFinalTransform({propagateEvent:!1})}}function H(){return{name:"ytVideo",onInitializeImage:c=>{const t=c.elm.config.src;if(p(t))return new v(c)},onImageView:async(c,t)=>{const e=c.images.to[Math.floor(c.images.to.length/2)];e instanceof v&&t.deactivateUi(["download","zoomIn","zoomOut"],e)}}}u.VistaYoutubeVideo=v,u.getYouTubeThumbnail=b,u.parseYouTubeVideoId=p,u.youtubeVideo=H,Object.defineProperty(u,Symbol.toStringTag,{value:"Module"})}));
1
+ (function(u,f){typeof exports=="object"&&typeof module<"u"?f(exports):typeof define=="function"&&define.amd?define(["exports"],f):(u=typeof globalThis<"u"?globalThis:u||self,f(u.VistaView=u.VistaView||{}))})(this,(function(u){"use strict";var T=Object.defineProperty;var F=(u,f,w)=>f in u?T(u,f,{enumerable:!0,configurable:!0,writable:!0,value:w}):u[f]=w;var h=(u,f,w)=>F(u,typeof f!="symbol"?f+"":f,w);function f(c){const e=window.getComputedStyle(c).objectFit||"",{width:s,height:a}=c.getBoundingClientRect(),i=c.naturalWidth,n=c.naturalHeight;if(!e)return{width:s,height:a};if(!i||!n)return{width:s,height:a};const d=i/n,r=s/a;switch(e){case"fill":return{width:s,height:a};case"none":return{width:i,height:n};case"contain":return d>r?{width:s,height:s/d}:{width:a*d,height:a};case"cover":return d<r?{width:s,height:s/d}:{width:a*d,height:a};case"scale-down":{const l={width:i,height:n},m=d>r?{width:s,height:s/d}:{width:a*d,height:a};return m.width<=l.width&&m.height<=l.height?m:l}}return{width:s,height:a}}class w{static ease(t,e,s){const a=e-t,i=t+a*.2;return Math.abs(a)<s?e:i}static play(t,e,s){if(s()){requestAnimationFrame(()=>{this.play(t,e,s)});return}this.map.get(t)&&(t.element.classList.contains("vvw--load-cancelled")||requestAnimationFrame(()=>{var m,o,g,y,x,S,W,_,C,R;const a=this.map.get(t);if(!a||!t.element||t.element.classList.contains("vvw--load-cancelled"))return;const{current:i,target:n,log:d}=a;let r={};n.width!==void 0&&(r.width=this.ease(i._width,n.width,1)),n.height!==void 0&&(r.height=this.ease(i._height,n.height,1)),((m=n.transform)==null?void 0:m.x)!==void 0&&(r.transform=r.transform||{},r.transform.x=this.ease(i._transform.x,n.transform.x,1)),((o=n.transform)==null?void 0:o.y)!==void 0&&(r.transform=r.transform||{},r.transform.y=this.ease(i._transform.y,n.transform.y,1)),((g=n.transform)==null?void 0:g.scale)!==void 0&&(r.transform=r.transform||{},r.transform.scale=this.ease(i._transform.scale,n.transform.scale,.005)),((y=n.translate)==null?void 0:y.x)!==void 0&&(r.translate=r.translate||{},r.translate.x=this.ease(i._translate.x,n.translate.x,1)),((x=n.translate)==null?void 0:x.y)!==void 0&&(r.translate=r.translate||{},r.translate.y=this.ease(i._translate.y,n.translate.y,1)),r.width!==void 0&&(i.width=r.width),r.height!==void 0&&(i.height=r.height),r.translate&&(i.translate={...i.translate,...r.translate}),r.transform&&(i.transform={...i.transform,...r.transform}),(n.width===void 0||i._width===n.width)&&(n.height===void 0||i._height===n.height)&&(((S=n.transform)==null?void 0:S.x)===void 0||i._transform.x===n.transform.x)&&(((W=n.transform)==null?void 0:W.y)===void 0||i._transform.y===n.transform.y)&&(((_=n.transform)==null?void 0:_.scale)===void 0||i._transform.scale===n.transform.scale)&&(((C=n.translate)==null?void 0:C.x)===void 0||i._translate.x===n.translate.x)&&(((R=n.translate)==null?void 0:R.y)===void 0||i._translate.y===n.translate.y)?(this.map.delete(t),e()):(this.map.set(t,{current:i,target:n,log:d}),this.play(t,e,s))}))}static stop(t){const e=this.map.get(t);return this.map.delete(t),e}static start({vistaImage:t,target:e,onComplete:s,shouldWait:a}){this.stop(t),this.map.set(t,{current:t.state,target:e}),this.play(t,s,a)}}h(w,"map",new Map);class L{constructor(t){h(this,"state");h(this,"parsedSrcSet");h(this,"isReady",!1);h(this,"isThrowing",!1);h(this,"thumb",null);h(this,"pos");h(this,"index");h(this,"config");h(this,"origin");h(this,"initH",0);h(this,"initW",0);h(this,"fullH",0);h(this,"fullW",0);h(this,"maxW",0);h(this,"minW",0);h(this,"defaultWH",200);h(this,"isZoomedIn",!1);h(this,"isCancelled",!1);h(this,"isLoadedResolved",null);h(this,"isLoadedRejected",null);h(this,"isLoaded",new Promise((t,e)=>{this.isLoadedResolved=t,this.isLoadedRejected=e}));h(this,"replacement",null);h(this,"originalParent",null);h(this,"originalNextSibling",null);h(this,"originalStyle","");h(this,"thumbImage",null);h(this,"originRect",{width:this.defaultWH,height:this.defaultWH,top:0,left:0});h(this,"fittedSize",null);h(this,"maxZoomLevel");h(this,"vistaView");h(this,"transitionState",null);h(this,"transitionShouldWait",()=>!1);h(this,"initPointerCenter",{x:0,y:0});h(this,"onScale");var s,a,i;this.state=this.createState(),this.pos=t.pos,this.index=t.index,this.config=t.elm.config,this.parsedSrcSet=t.elm.parsedSrcSet,this.origin=t.elm.origin,this.maxZoomLevel=t.maxZoomLevel,this.vistaView=t.vistaView,this.onScale=t.onScale,t.transitionState&&(this.transitionState=t.transitionState),t.transitionShouldWait&&(this.transitionShouldWait=t.transitionShouldWait),this.initPointerCenter={x:window.innerWidth/2,y:window.innerHeight/2};const e=this.pos===0?(s=this.origin)==null?void 0:s.image:null;if(this.originalParent=(e==null?void 0:e.parentElement)||null,this.originalNextSibling=(e==null?void 0:e.nextSibling)||null,this.originRect=((i=((a=this.origin)==null?void 0:a.anchor)||e)==null?void 0:i.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0},e&&this.originalParent){this.originalStyle=e.style.cssText,this.thumbImage=e;const n=e.cloneNode(!0);this.originalParent.insertBefore(n,e),this.replacement=n,this.thumb=document.createElement("div"),this.thumb.classList.add("vvw-img-lo");const{width:d,height:r}=this.thumbImage?f(this.thumbImage):{width:0,height:0};this.fittedSize={width:d,height:r},this.thumb.appendChild(e),e.style.width="100%",e.style.height="100%",e.style.objectFit=this.origin.objectFit}}createState(){const t=this;return{_t:this,_width:0,_height:0,_transform:{x:0,y:0,scale:1},_translate:{x:0,y:0},_lessThanMinWidth:!1,get width(){return this._width},set width(e){this._width=e,t.onWidthChange(e)},get height(){return this._height},set height(e){this._height=e,t.onHeightChange(e)},get transform(){return this._transform},set transform(e){this._transform=e,t.onTransformChange(e)},get translate(){return this._translate},set translate(e){this._translate=e,t.onTranslateChange(e)},get lessThanMinWidth(){return this._lessThanMinWidth},set lessThanMinWidth(e){this._lessThanMinWidth=e,t.onLessThanMinWidthChange(e)}}}onLessThanMinWidthChange(t){t?this.element.style.opacity="0.5":this.element.style.opacity=""}onTranslateChange(t){this.element.style.translate=`calc(-50% + ${t.x}px) calc(-50% + ${t.y}px)`}onTransformChange(t){const e=`translate3d(${t.x}px, ${t.y}px, 0px) scale3d(${t.scale}, ${t.scale}, 1)`;this.element.style.transform=e}onWidthChange(t){this.element.style.width=`${t}px`}onHeightChange(t){this.element.style.height=`${t}px`}onImageReady(){}animateZoom(t,e){}scaleMove(t,e,s){}momentumThrow(t){return()=>{}}async init(){await this.isLoaded;const t=this.element;this.transitionState&&this.transitionState.current.width&&this.transitionState.current.height?(this.state.width=this.transitionState.current.width,this.state.height=this.transitionState.current.height):t.classList.contains("vvw--loaded")||(this.state.width=this.initW,this.state.height=this.initH);const e=()=>{this.isCancelled||w.start({vistaImage:this,target:{width:this.fullW,height:this.fullH},onComplete:()=>{this.isCancelled||(this.isReady=!0,t.classList.add("vvw--ready"),this.onImageReady())},shouldWait:this.transitionShouldWait})};this.pos<-1||this.pos>1?(this.state.width=this.fullW,this.state.height=this.fullH,t.classList.add("vvw--loaded"),t.classList.add("vvw--ready"),this.isReady=!0):t.classList.contains("vvw--loaded")?t.classList.contains("vvw--ready")?(this.isReady=!0,this.onImageReady()):e():(t.classList.add("vvw--loaded"),setTimeout(()=>{this.isCancelled||e()},333))}getFullSizeDim(){const{width:t,height:e}=this.thumb.getBoundingClientRect(),s=t/e;let a=window.innerWidth,i=window.innerHeight;return s>window.innerWidth/window.innerHeight?i=a/s:a=i*s,{width:a,height:i}}setSizes(t={}){var d,r,l,m;const{stableSize:e=!0,initDimension:s}=t;if(!this.origin)return;const a=this.thumb;s||(this.originRect=((r=((d=this.origin)==null?void 0:d.anchor)||this.replacement)==null?void 0:r.getBoundingClientRect())||{width:this.defaultWH,height:this.defaultWH,top:0,left:0});let i=this.originRect;if(a){const o=a.style;o.width=i.width+"px",o.height=i.height+"px",o.top="50%",o.left="50%",o.translate="-50% -50%",o.position="fixed",o.objectFit=this.origin.objectFit,o.borderRadius=this.origin.borderRadius;const g=Math.min(Math.max(i.left,-i.width),window.innerWidth+i.width)-window.innerWidth/2+i.width/2,y=Math.min(Math.max(i.top,-i.height),window.innerHeight+i.height)-window.innerHeight/2+i.height/2;o.setProperty("--vvw-init-radius",o.borderRadius),o.setProperty("--vvw-pulse-radius",`calc(1.3 * ${o.borderRadius})`),o.setProperty("--vvw-init-x",`${g}px`),o.setProperty("--vvw-init-y",`${y}px`),s&&(o.setProperty("--vvw-current-x",`${g}px`),o.setProperty("--vvw-current-y",`${y}px`))}if(!s){const{width:o,height:g}=this.thumbImage?f(this.thumbImage):{width:0,height:0};this.fittedSize={width:o,height:g}}const n=this.element;if(this.initW=Math.min(((l=this.fittedSize)==null?void 0:l.width)??0,i.width),this.initH=Math.min(((m=this.fittedSize)==null?void 0:m.height)??0,i.height),n.style.setProperty("--vvw-init-w",this.initW+"px"),n.style.setProperty("--vvw-init-h",this.initH+"px"),n.style.setProperty("--vvw-init-radius",this.origin.borderRadius),n.style.objectFit="cover",!s){if(this.isReady&&!this.isCancelled){const{width:o,height:g}=this.getFullSizeDim();this.fullH=g,this.fullW=o,this.minW=this.fullW*.5}!this.isZoomedIn&&e&&this.normalize()}}normalize(){this.state.transform={x:0,y:0,scale:1},this.state.translate={x:0,y:0},this.state.width=this.fullW,this.state.height=this.fullH,this.isZoomedIn=!1}getFromParsedSrcSet(t){if(!this.parsedSrcSet||this.parsedSrcSet.length===0)return null;const e=t*(window.devicePixelRatio||1);let s=this.parsedSrcSet[this.parsedSrcSet.length-1];for(const a of this.parsedSrcSet)if(a.width>=e){s=a;break}return s.src}prepareClose(){w.stop(this),this.setFinalTransform()}cancelPendingLoad(){var t;this.isCancelled=!0,(t=this.element)==null||t.classList.add("vvw--load-cancelled")}setInitialCenter(t){this.initPointerCenter=t}destroy(){var t,e;this.originalParent&&this.thumbImage&&(this.thumbImage.style.cssText=this.originalStyle,this.originalNextSibling?this.originalParent.insertBefore(this.thumbImage,this.originalNextSibling):this.originalParent.appendChild(this.thumbImage)),this.originalParent=null,this.originalNextSibling=null,this.originalStyle="",this.thumbImage=null,this.replacement&&(this.replacement.remove(),this.replacement=null),(t=this.thumb)==null||t.remove(),(e=this.element)==null||e.remove(),this.thumb=null,this.origin=void 0,this.config={src:"",alt:""}}cloneStyleFrom(t,e){t!=null&&t.element&&(e&&(this.transitionState=e||null),t.element.classList.contains("vvw--loaded")&&(this.element.classList.add("vvw--loaded"),this.state.width=t.state.width,this.state.height=t.state.height),t.element.classList.contains("vvw--ready")&&this.element.classList.add("vvw--ready"))}toObject(){return structuredClone({config:{src:this.config.src,alt:this.config.alt,srcSet:this.config.srcSet},origin:this.origin?{src:this.origin.src,srcSet:this.origin.srcSet,borderRadius:this.origin.borderRadius,objectFit:this.origin.objectFit}:null,parsedSrcSet:this.parsedSrcSet,element:"src"in this.element?this.element.src:this.element.toString(),thumb:void 0,index:this.index,pos:this.pos,state:{width:this.state._width,height:this.state._height,transform:this.state._transform,translate:this.state._translate}})}setFinalTransform(t={}){const{propagateEvent:e=!0}=t;if(this.isReady){if(this.state.translate.x+=this.state.transform.x,this.state.translate.y+=this.state.transform.y,this.state.width*=this.state.transform.scale,this.state.height*=this.state.transform.scale,Math.abs(this.state.width-this.fullW)<1&&(this.state.width=this.fullW,this.state.height=this.fullH),Math.abs(this.state.translate.x)<1&&(this.state.translate.x=0),Math.abs(this.state.translate.y)<1&&(this.state.translate.y=0),this.state.translate={...this.state.translate},this.state.transform={x:0,y:0,scale:1},e){const s=this.toObject();this.vistaView.options.onContentChange&&this.vistaView.options.onContentChange(s,this.vistaView),this.vistaView.state.extensions.forEach(a=>{a.onContentChange&&a.onContentChange(s,this.vistaView)})}return{close:!0,cancel:()=>{}}}}}function p(c){if(!c)return null;const t=[/(?:youtube\.com\/watch\?v=|youtu\.be\/)([a-zA-Z0-9_-]{11})/,/youtube\.com\/embed\/([a-zA-Z0-9_-]{11})/,/youtube\.com\/v\/([a-zA-Z0-9_-]{11})/,/youtube\.com\/live\/([a-zA-Z0-9_-]{11})/,/youtube\.com\/shorts\/([a-zA-Z0-9_-]{11})/];for(const e of t){const s=c.match(e);if(s&&s[1])return s[1]}return null}function b(c,t="hq"){const e={maxres:"maxresdefault.jpg",hq:"hqdefault.jpg",mq:"mqdefault.jpg",sd:"sddefault.jpg",default:"default.jpg"},s=p(c);if(!s)throw new Error("Invalid YouTube video URL");return`https://img.youtube.com/vi/${s}/${e[t]}`}class v extends L{constructor(e){var r;super(e);h(this,"element");h(this,"url");const s=e.elm.config.src;this.url=s;const a=document.createElement("div");a.style.position="relative";const i=document.createElement("img");a.appendChild(i),i.src=((r=this.origin)==null?void 0:r.image.src)||b(s,"hq"),i.style.width="100%",i.style.height="100%",i.style.objectFit="cover",i.classList.add("vvw--pulsing"),this.element=a,this.element.classList.add("vvw-img-hi");const{width:n,height:d}=this.getFullSizeDim();if(this.fullH=d,this.fullW=n,this.minW=this.fullW*.5,this.maxW=this.fullW,this.element.style.width=`${n}px`,this.element.style.height=`${d}px`,this.setSizes({stableSize:!1,initDimension:!0}),this.pos===0){const l=document.createElement("iframe");l.frameBorder="0",l.allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",l.allowFullscreen=!0,l.width="100%",l.height="100%",l.style.position="absolute",l.style.top="0",l.style.left="0",l.style.opacity="0",l.style.transition="opacity 333ms ease",l.src=`https://www.youtube.com/embed/${p(s)}?autoplay=1&rel=0`,a.appendChild(l),l.onload=()=>{l.style.opacity="1",i.classList.remove("vvw--pulsing")}}this.isLoadedResolved(!0)}getFullSizeDim(){const e=Math.min(window.innerWidth,800);return{width:e,height:e*9/16}}setFinalTransform(){return super.setFinalTransform({propagateEvent:!1})}}function H(){return{name:"ytVideo",onInitializeImage:c=>{const t=c.elm.config.src;if(p(t))return new v(c)},onImageView:async(c,t)=>{const e=c.images.to[Math.floor(c.images.to.length/2)];e instanceof v&&t.deactivateUi(["download","zoomIn","zoomOut"],e)}}}u.VistaYoutubeVideo=v,u.getYouTubeThumbnail=b,u.parseYouTubeVideoId=p,u.youtubeVideo=H,Object.defineProperty(u,Symbol.toStringTag,{value:"Module"})}));
@@ -1 +1 @@
1
- {"version":3,"file":"dailymotion-video.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/dailymotion-video.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkBlE;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQhE;AAED,qBAAa,qBAAsB,SAAQ,QAAQ;IACjD,OAAO,EAAE,cAAc,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;gBAEA,GAAG,EAAE,gBAAgB;IA2DjC,SAAS,CAAC,cAAc,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAU7D,iBAAiB;;;;CAGlB;AAED,wBAAgB,gBAAgB,IAAI,cAAc,CAiBjD"}
1
+ {"version":3,"file":"dailymotion-video.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/dailymotion-video.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkBlE;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQhE;AAED,qBAAa,qBAAsB,SAAQ,QAAQ;IACjD,OAAO,EAAE,cAAc,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;gBAEA,GAAG,EAAE,gBAAgB;IA0DjC,SAAS,CAAC,cAAc,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAU7D,iBAAiB;;;;CAGlB;AAED,wBAAgB,gBAAgB,IAAI,cAAc,CAiBjD"}
@@ -1 +1 @@
1
- {"version":3,"file":"google-maps.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/google-maps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;CAC1D;AAED,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,GAAG,IAAI,CA4C9E;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,gBAAgB,GACvB,MAAM,CAcR;AAED,qBAAa,eAAgB,SAAQ,QAAQ;IAC3C,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,QAAQ,CAAqB;gBAEzB,GAAG,EAAE,gBAAgB,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,gBAAgB;IAoE1F,SAAS,CAAC,cAAc,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAS7D,iBAAiB;;;;CAGlB;AAED,wBAAgB,UAAU,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,cAAc,CAiBpE"}
1
+ {"version":3,"file":"google-maps.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/google-maps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;CAC1D;AAED,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,GAAG,IAAI,CA4C9E;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,gBAAgB,GACvB,MAAM,CAcR;AAED,qBAAa,eAAgB,SAAQ,QAAQ;IAC3C,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,QAAQ,CAAqB;gBAEzB,GAAG,EAAE,gBAAgB,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,gBAAgB;IAmE1F,SAAS,CAAC,cAAc,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAS7D,iBAAiB;;;;CAGlB;AAED,wBAAgB,UAAU,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,cAAc,CAiBpE"}
@@ -1 +1 @@
1
- {"version":3,"file":"streamable-video.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/streamable-video.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAcjE;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAO/D;AAED,qBAAa,oBAAqB,SAAQ,QAAQ;IAChD,OAAO,EAAE,cAAc,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;gBAEA,GAAG,EAAE,gBAAgB;IA2DjC,SAAS,CAAC,cAAc,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAU7D,iBAAiB;;;;CAGlB;AAED,wBAAgB,eAAe,IAAI,cAAc,CAiBhD"}
1
+ {"version":3,"file":"streamable-video.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/streamable-video.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAcjE;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAO/D;AAED,qBAAa,oBAAqB,SAAQ,QAAQ;IAChD,OAAO,EAAE,cAAc,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;gBAEA,GAAG,EAAE,gBAAgB;IA0DjC,SAAS,CAAC,cAAc,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAU7D,iBAAiB;;;;CAGlB;AAED,wBAAgB,eAAe,IAAI,cAAc,CAiBhD"}
@@ -1 +1 @@
1
- {"version":3,"file":"twitch-video.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/twitch-video.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,GACV;IAAE,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAsBpE;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAkBtD;AAED,qBAAa,gBAAiB,SAAQ,QAAQ;IAC5C,OAAO,EAAE,cAAc,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;gBAEA,GAAG,EAAE,gBAAgB;IAiEjC,SAAS,CAAC,cAAc,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAU7D,iBAAiB;;;;CAGlB;AAED,wBAAgB,WAAW,IAAI,cAAc,CAiB5C"}
1
+ {"version":3,"file":"twitch-video.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/twitch-video.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,GACV;IAAE,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAsBpE;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAkBtD;AAED,qBAAa,gBAAiB,SAAQ,QAAQ;IAC5C,OAAO,EAAE,cAAc,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;gBAEA,GAAG,EAAE,gBAAgB;IAgEjC,SAAS,CAAC,cAAc,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAU7D,iBAAiB;;;;CAGlB;AAED,wBAAgB,WAAW,IAAI,cAAc,CAiB5C"}
@@ -1 +1 @@
1
- {"version":3,"file":"vidyard-video.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/vidyard-video.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkB9D;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAO5D;AAED,qBAAa,iBAAkB,SAAQ,QAAQ;IAC7C,OAAO,EAAE,cAAc,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;gBAEA,GAAG,EAAE,gBAAgB;IA2DjC,SAAS,CAAC,cAAc,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAU7D,iBAAiB;;;;CAGlB;AAED,wBAAgB,YAAY,IAAI,cAAc,CAiB7C"}
1
+ {"version":3,"file":"vidyard-video.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/vidyard-video.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkB9D;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAO5D;AAED,qBAAa,iBAAkB,SAAQ,QAAQ;IAC7C,OAAO,EAAE,cAAc,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;gBAEA,GAAG,EAAE,gBAAgB;IA0DjC,SAAS,CAAC,cAAc,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAU7D,iBAAiB;;;;CAGlB;AAED,wBAAgB,YAAY,IAAI,cAAc,CAiB7C"}
@@ -1 +1 @@
1
- {"version":3,"file":"wistia-video.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/wistia-video.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAiB7D;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAkB1E;AAED,qBAAa,gBAAiB,SAAQ,QAAQ;IAC5C,OAAO,EAAE,cAAc,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;gBAEA,GAAG,EAAE,gBAAgB;IA6DjC,SAAS,CAAC,cAAc,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAU7D,iBAAiB;;;;CAGlB;AAED,wBAAgB,WAAW,IAAI,cAAc,CAiB5C"}
1
+ {"version":3,"file":"wistia-video.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/wistia-video.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAiB7D;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAkB1E;AAED,qBAAa,gBAAiB,SAAQ,QAAQ;IAC5C,OAAO,EAAE,cAAc,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;gBAEA,GAAG,EAAE,gBAAgB;IA4DjC,SAAS,CAAC,cAAc,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAU7D,iBAAiB;;;;CAGlB;AAED,wBAAgB,WAAW,IAAI,cAAc,CAiB5C"}
@@ -1 +1 @@
1
- {"version":3,"file":"youtube-video.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/youtube-video.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAoB9D;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,SAAgB,GACxD,MAAM,CAeR;AAED,qBAAa,iBAAkB,SAAQ,QAAQ;IAC7C,OAAO,EAAE,cAAc,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;gBAEA,GAAG,EAAE,gBAAgB;IA2DjC,SAAS,CAAC,cAAc,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAU7D,iBAAiB;;;;CAGlB;AAED,wBAAgB,YAAY,IAAI,cAAc,CAiB7C"}
1
+ {"version":3,"file":"youtube-video.d.ts","sourceRoot":"","sources":["../../../src/lib/extensions/youtube-video.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAoB9D;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,QAAQ,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,SAAgB,GACxD,MAAM,CAeR;AAED,qBAAa,iBAAkB,SAAQ,QAAQ;IAC7C,OAAO,EAAE,cAAc,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;gBAEA,GAAG,EAAE,gBAAgB;IA0DjC,SAAS,CAAC,cAAc,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAU7D,iBAAiB;;;;CAGlB;AAED,wBAAgB,YAAY,IAAI,cAAc,CAiB7C"}
package/dist/react.js CHANGED
@@ -1,13 +1,13 @@
1
1
  "use client";
2
- import { jsx as v } from "react/jsx-runtime";
2
+ import { jsx as p } from "react/jsx-runtime";
3
3
  import { useRef as s, useEffect as a, useCallback as t, useId as I, useImperativeHandle as g } from "react";
4
- import { vistaView as d } from "./vistaview.js";
5
- function V(c) {
4
+ import { vistaView as m } from "./vistaview.js";
5
+ function V(u) {
6
6
  const r = s(null);
7
- return a(() => (r.current = d(c), () => {
7
+ return a(() => (r.current = m(u), () => {
8
8
  var e;
9
9
  (e = r.current) == null || e.destroy(), r.current = null;
10
- }), []), {
10
+ }), [u]), {
11
11
  open: t((e = 0) => {
12
12
  var n;
13
13
  return (n = r.current) == null ? void 0 : n.open(e);
@@ -50,18 +50,18 @@ function V(c) {
50
50
  }, [])
51
51
  };
52
52
  }
53
- function z({ children: c, selector: r = "> a", options: e, id: n, ref: m, ...f }) {
54
- const i = s(null), u = s(null), p = I(), o = n || `vvw-gallery-${p.replace(/:/g, "")}`;
55
- return g(m, () => u.current, []), a(() => {
56
- if (i.current)
57
- return u.current = d({
53
+ function z({ children: u, selector: r = "> a", options: e, id: n, ref: d, ...f }) {
54
+ const l = s(null), c = s(null), v = I(), o = n || `vvw-gallery-${v.replace(/:/g, "")}`;
55
+ return g(d, () => c.current, []), a(() => {
56
+ if (l.current)
57
+ return c.current = m({
58
58
  ...e,
59
59
  elements: `#${o} ${r}`
60
60
  }), () => {
61
- var l;
62
- (l = u.current) == null || l.destroy(), u.current = null;
61
+ var i;
62
+ (i = c.current) == null || i.destroy(), c.current = null;
63
63
  };
64
- }, [o, r]), /* @__PURE__ */ v("div", { ref: i, ...f, id: o, children: c });
64
+ }, [o, r, e, u]), /* @__PURE__ */ p("div", { ref: l, ...f, id: o, children: u });
65
65
  }
66
66
  export {
67
67
  z as VistaView,
@@ -1 +1 @@
1
- {"version":3,"file":"solid.d.ts","sourceRoot":"","sources":["../src/solid.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE/D,wBAAgB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,cAAc,CAmBjE"}
1
+ {"version":3,"file":"solid.d.ts","sourceRoot":"","sources":["../src/solid.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE/D,wBAAgB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,cAAc,CAwBjE"}
package/dist/solid.js CHANGED
@@ -1,8 +1,10 @@
1
- import { onCleanup as m } from "solid-js";
1
+ import { createEffect as m, onCleanup as u } from "solid-js";
2
2
  import { vistaView as p } from "./vistaview.js";
3
- function d(e) {
4
- const o = p(e);
3
+ function v(e) {
4
+ let o = null;
5
5
  return m(() => {
6
+ o == null || o.destroy(), o = p(e);
7
+ }), u(() => {
6
8
  o == null || o.destroy();
7
9
  }), {
8
10
  open: (r = 0) => o == null ? void 0 : o.open(r),
@@ -18,5 +20,5 @@ function d(e) {
18
20
  };
19
21
  }
20
22
  export {
21
- d as useVistaView
23
+ v as useVistaView
22
24
  };
@@ -1 +1 @@
1
- {"version":3,"file":"svelte.d.ts","sourceRoot":"","sources":["../src/svelte.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE/D,wBAAgB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,cAAc,CA8BjE"}
1
+ {"version":3,"file":"svelte.d.ts","sourceRoot":"","sources":["../src/svelte.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE/D,wBAAgB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,cAAc,CAmBjE"}
package/dist/svelte.js CHANGED
@@ -1,52 +1,22 @@
1
- import { onDestroy as s } from "svelte";
2
- import { vistaView as u } from "./vistaview.js";
3
- function i(n) {
4
- let o = null;
5
- const r = () => (o || (o = u(n)), o);
6
- return s(() => {
7
- o == null || o.destroy(), o = null;
1
+ import { onDestroy as m } from "svelte";
2
+ import { vistaView as p } from "./vistaview.js";
3
+ function d(e) {
4
+ const o = p(e);
5
+ return m(() => {
6
+ o == null || o.destroy();
8
7
  }), {
9
- open: (e = 0) => {
10
- var t;
11
- return (t = r()) == null ? void 0 : t.open(e);
12
- },
13
- close: () => {
14
- var e;
15
- return ((e = r()) == null ? void 0 : e.close()) ?? Promise.resolve();
16
- },
17
- reset: () => {
18
- var e;
19
- return (e = r()) == null ? void 0 : e.reset();
20
- },
21
- next: () => {
22
- var e;
23
- return (e = r()) == null ? void 0 : e.next();
24
- },
25
- prev: () => {
26
- var e;
27
- return (e = r()) == null ? void 0 : e.prev();
28
- },
29
- zoomIn: () => {
30
- var e;
31
- return (e = r()) == null ? void 0 : e.zoomIn();
32
- },
33
- zoomOut: () => {
34
- var e;
35
- return (e = r()) == null ? void 0 : e.zoomOut();
36
- },
37
- getCurrentIndex: () => {
38
- var e;
39
- return ((e = r()) == null ? void 0 : e.getCurrentIndex()) ?? -1;
40
- },
41
- view: (e) => {
42
- var t;
43
- return (t = r()) == null ? void 0 : t.view(e);
44
- },
45
- destroy: () => {
46
- o == null || o.destroy(), o = null;
47
- }
8
+ open: (r = 0) => o == null ? void 0 : o.open(r),
9
+ close: () => (o == null ? void 0 : o.close()) ?? Promise.resolve(),
10
+ reset: () => o == null ? void 0 : o.reset(),
11
+ next: () => o == null ? void 0 : o.next(),
12
+ prev: () => o == null ? void 0 : o.prev(),
13
+ zoomIn: () => o == null ? void 0 : o.zoomIn(),
14
+ zoomOut: () => o == null ? void 0 : o.zoomOut(),
15
+ getCurrentIndex: () => (o == null ? void 0 : o.getCurrentIndex()) ?? -1,
16
+ view: (r) => o == null ? void 0 : o.view(r),
17
+ destroy: () => o == null ? void 0 : o.destroy()
48
18
  };
49
19
  }
50
20
  export {
51
- i as useVistaView
21
+ d as useVistaView
52
22
  };
package/dist/vue.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"vue.d.ts","sourceRoot":"","sources":["../src/vue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmD,KAAK,QAAQ,EAAE,MAAM,KAAK,CAAC;AAErF,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEzE,wBAAgB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,cAAc,CAwBjE;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,QAAQ,CAAC;CACpB;AAED,eAAO,MAAM,SAAS;;;;;aAQC,QAAQ,CAAC,QAAQ,CAAC;;;;;;;;aAAlB,QAAQ,CAAC,QAAQ,CAAC;;;4EAsCvC,CAAC"}
1
+ {"version":3,"file":"vue.d.ts","sourceRoot":"","sources":["../src/vue.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0D,KAAK,QAAQ,EAAE,MAAM,KAAK,CAAC;AAE5F,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEzE,wBAAgB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,cAAc,CAiCjE;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,QAAQ,CAAC;CACpB;AAED,eAAO,MAAM,SAAS;;;;;aAQC,QAAQ,CAAC,QAAQ,CAAC;;;;;;;;aAAlB,QAAQ,CAAC,QAAQ,CAAC;;;4EAkDvC,CAAC"}
package/dist/vue.js CHANGED
@@ -1,13 +1,19 @@
1
- import { defineComponent as i, ref as v, onMounted as f, onUnmounted as p, h as w } from "vue";
2
- import { vistaView as g } from "./vistaview.js";
3
- function n(t) {
1
+ import { defineComponent as V, ref as f, onMounted as y, watch as w, onUnmounted as g, h as p } from "vue";
2
+ import { vistaView as l } from "./vistaview.js";
3
+ function I(r) {
4
4
  let e = null;
5
- return f(() => {
6
- e = g(t);
7
- }), p(() => {
5
+ return y(() => {
6
+ e = l(r);
7
+ }), w(
8
+ () => r,
9
+ () => {
10
+ e == null || e.destroy(), e = l(r);
11
+ },
12
+ { deep: !0 }
13
+ ), g(() => {
8
14
  e == null || e.destroy(), e = null;
9
15
  }), {
10
- open: (o) => e == null ? void 0 : e.open(o),
16
+ open: (u) => e == null ? void 0 : e.open(u),
11
17
  close: () => (e == null ? void 0 : e.close()) ?? Promise.resolve(),
12
18
  reset: () => e == null ? void 0 : e.reset(),
13
19
  next: () => e == null ? void 0 : e.next(),
@@ -15,11 +21,11 @@ function n(t) {
15
21
  zoomIn: () => e == null ? void 0 : e.zoomIn(),
16
22
  zoomOut: () => e == null ? void 0 : e.zoomOut(),
17
23
  getCurrentIndex: () => (e == null ? void 0 : e.getCurrentIndex()) ?? -1,
18
- view: (o) => e == null ? void 0 : e.view(o),
24
+ view: (u) => e == null ? void 0 : e.view(u),
19
25
  destroy: () => e == null ? void 0 : e.destroy()
20
26
  };
21
27
  }
22
- const x = i({
28
+ const $ = V({
23
29
  name: "VistaView",
24
30
  inheritAttrs: !1,
25
31
  props: {
@@ -29,35 +35,45 @@ const x = i({
29
35
  },
30
36
  options: Object
31
37
  },
32
- setup(t, { slots: e, expose: o, attrs: l }) {
33
- const d = v(null), u = v(null), m = l.id || `vvw-gallery-${Math.random().toString(36).substr(2, 9)}`;
34
- return f(() => {
35
- d.value && (u.value = g({
36
- ...t.options,
37
- elements: `#${m} ${t.selector}`
38
+ setup(r, { slots: e, expose: u, attrs: v }) {
39
+ const m = f(null), t = f(null), d = v.id || `vvw-gallery-${Math.random().toString(36).substr(2, 9)}`;
40
+ return y(() => {
41
+ m.value && (t.value = l({
42
+ ...r.options,
43
+ elements: `#${d} ${r.selector}`
38
44
  }));
39
- }), p(() => {
40
- var r;
41
- (r = u.value) == null || r.destroy(), u.value = null;
42
- }), o({
45
+ }), w(
46
+ () => [r.options, r.selector, e.default],
47
+ () => {
48
+ var o;
49
+ (o = t.value) == null || o.destroy(), t.value = l({
50
+ ...r.options,
51
+ elements: `#${d} ${r.selector}`
52
+ });
53
+ },
54
+ { deep: !0 }
55
+ ), g(() => {
56
+ var o;
57
+ (o = t.value) == null || o.destroy(), t.value = null;
58
+ }), u({
43
59
  get instance() {
44
- return u.value;
60
+ return t.value;
45
61
  }
46
62
  }), () => {
47
- var r;
48
- return w(
63
+ var o;
64
+ return p(
49
65
  "div",
50
66
  {
51
- ref: d,
52
- ...l,
53
- id: m
67
+ ref: m,
68
+ ...v,
69
+ id: d
54
70
  },
55
- (r = e.default) == null ? void 0 : r.call(e)
71
+ (o = e.default) == null ? void 0 : o.call(e)
56
72
  );
57
73
  };
58
74
  }
59
75
  });
60
76
  export {
61
- x as VistaView,
62
- n as useVistaView
77
+ $ as VistaView,
78
+ I as useVistaView
63
79
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vistaview",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "description": "A lightweight, zero-dependency image lightbox library with smooth animations and touch support",
5
5
  "keywords": [
6
6
  "image",