UNPKG

v-viewer-picture

Version:

Image viewer component for vue, supports rotation, scale, zoom and so on, based on viewer.js

9 lines 52.6 kB
(function(L,A){typeof exports=="object"&&typeof module<"u"?A(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],A):(L=typeof globalThis<"u"?globalThis:L||self,A(L.VueViewer={},L.Vue))})(this,function(L,A){"use strict";var Qe=typeof global=="object"&&global&&global.Object===Object&&global;const Yt=Qe;var ti=typeof self=="object"&&self&&self.Object===Object&&self,ei=Yt||ti||Function("return this")();const dt=ei;var ii=dt.Symbol;const gt=ii;var Xt=Object.prototype,ni=Xt.hasOwnProperty,ri=Xt.toString,at=gt?gt.toStringTag:void 0;function ai(e){var t=ni.call(e,at),i=e[at];try{e[at]=void 0;var n=!0}catch{}var r=ri.call(e);return n&&(t?e[at]=i:delete e[at]),r}var oi=Object.prototype,si=oi.toString;function li(e){return si.call(e)}var ui="[object Null]",ci="[object Undefined]",Ut=gt?gt.toStringTag:void 0;function mt(e){return e==null?e===void 0?ci:ui:Ut&&Ut in Object(e)?ai(e):li(e)}function vt(e){return e!=null&&typeof e=="object"}var hi="[object Symbol]";function fi(e){return typeof e=="symbol"||vt(e)&&mt(e)==hi}var di=Array.isArray;const gi=di;var mi=/\s/;function vi(e){for(var t=e.length;t--&&mi.test(e.charAt(t)););return t}var pi=/^\s+/;function bi(e){return e&&e.slice(0,vi(e)+1).replace(pi,"")}function B(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Ht=0/0,wi=/^[-+]0x[0-9a-f]+$/i,yi=/^0b[01]+$/i,Ti=/^0o[0-7]+$/i,Ei=parseInt;function Bt(e){if(typeof e=="number")return e;if(fi(e))return Ht;if(B(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=B(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=bi(e);var i=yi.test(e);return i||Ti.test(e)?Ei(e.slice(2),i?2:8):wi.test(e)?Ht:+e}function qt(e){return e}var Oi="[object AsyncFunction]",Si="[object Function]",Ai="[object GeneratorFunction]",Ii="[object Proxy]";function Kt(e){if(!B(e))return!1;var t=mt(e);return t==Si||t==Ai||t==Oi||t==Ii}var _i=dt["__core-js_shared__"];const _t=_i;var Gt=function(){var e=/[^.]+$/.exec(_t&&_t.keys&&_t.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function xi(e){return!!Gt&&Gt in e}var Di=Function.prototype,Ni=Di.toString;function Ci(e){if(e!=null){try{return Ni.call(e)}catch{}try{return e+""}catch{}}return""}var Pi=/[\\^$.*+?()[\]{}|]/g,Li=/^\[object .+?Constructor\]$/,zi=Function.prototype,ki=Object.prototype,Vi=zi.toString,Mi=ki.hasOwnProperty,$i=RegExp("^"+Vi.call(Mi).replace(Pi,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Ri(e){if(!B(e)||xi(e))return!1;var t=Kt(e)?$i:Li;return t.test(Ci(e))}function ji(e,t){return e==null?void 0:e[t]}function Fi(e,t){var i=ji(e,t);return Ri(i)?i:void 0}function Wi(e,t,i){switch(i.length){case 0:return e.call(t);case 1:return e.call(t,i[0]);case 2:return e.call(t,i[0],i[1]);case 3:return e.call(t,i[0],i[1],i[2])}return e.apply(t,i)}var Yi=800,Xi=16,Ui=Date.now;function Hi(e){var t=0,i=0;return function(){var n=Ui(),r=Xi-(n-i);if(i=n,r>0){if(++t>=Yi)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function Bi(e){return function(){return e}}var qi=function(){try{var e=Fi(Object,"defineProperty");return e({},"",{}),e}catch{}}();const pt=qi;var Ki=pt?function(e,t){return pt(e,"toString",{configurable:!0,enumerable:!1,value:Bi(t),writable:!0})}:qt,Gi=Hi(Ki);const Zi=Gi;var Ji=9007199254740991,Qi=/^(?:0|[1-9]\d*)$/;function Zt(e,t){var i=typeof e;return t=t==null?Ji:t,!!t&&(i=="number"||i!="symbol"&&Qi.test(e))&&e>-1&&e%1==0&&e<t}function Jt(e,t,i){t=="__proto__"&&pt?pt(e,t,{configurable:!0,enumerable:!0,value:i,writable:!0}):e[t]=i}function xt(e,t){return e===t||e!==e&&t!==t}var tn=Object.prototype,en=tn.hasOwnProperty;function Qt(e,t,i){var n=e[t];(!(en.call(e,t)&&xt(n,i))||i===void 0&&!(t in e))&&Jt(e,t,i)}function nn(e,t,i,n){var r=!i;i||(i={});for(var a=-1,o=t.length;++a<o;){var l=t[a],c=n?n(i[l],e[l],l,i,e):void 0;c===void 0&&(c=e[l]),r?Jt(i,l,c):Qt(i,l,c)}return i}var te=Math.max;function rn(e,t,i){return t=te(t===void 0?e.length-1:t,0),function(){for(var n=arguments,r=-1,a=te(n.length-t,0),o=Array(a);++r<a;)o[r]=n[t+r];r=-1;for(var l=Array(t+1);++r<t;)l[r]=n[r];return l[t]=i(o),Wi(e,this,l)}}function ee(e,t){return Zi(rn(e,t,qt),e+"")}var an=9007199254740991;function ie(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=an}function bt(e){return e!=null&&ie(e.length)&&!Kt(e)}function ne(e,t,i){if(!B(i))return!1;var n=typeof t;return(n=="number"?bt(i)&&Zt(t,i.length):n=="string"&&t in i)?xt(i[t],e):!1}function on(e){return ee(function(t,i){var n=-1,r=i.length,a=r>1?i[r-1]:void 0,o=r>2?i[2]:void 0;for(a=e.length>3&&typeof a=="function"?(r--,a):void 0,o&&ne(i[0],i[1],o)&&(a=r<3?void 0:a,r=1),t=Object(t);++n<r;){var l=i[n];l&&e(t,l,n,a)}return t})}var sn=Object.prototype;function Dt(e){var t=e&&e.constructor,i=typeof t=="function"&&t.prototype||sn;return e===i}function ln(e,t){for(var i=-1,n=Array(e);++i<e;)n[i]=t(i);return n}var un="[object Arguments]";function re(e){return vt(e)&&mt(e)==un}var ae=Object.prototype,cn=ae.hasOwnProperty,hn=ae.propertyIsEnumerable,fn=re(function(){return arguments}())?re:function(e){return vt(e)&&cn.call(e,"callee")&&!hn.call(e,"callee")};const dn=fn;function gn(){return!1}var oe=typeof L=="object"&&L&&!L.nodeType&&L,se=oe&&typeof module=="object"&&module&&!module.nodeType&&module,mn=se&&se.exports===oe,le=mn?dt.Buffer:void 0,vn=le?le.isBuffer:void 0,pn=vn||gn;const bn=pn;var wn="[object Arguments]",yn="[object Array]",Tn="[object Boolean]",En="[object Date]",On="[object Error]",Sn="[object Function]",An="[object Map]",In="[object Number]",_n="[object Object]",xn="[object RegExp]",Dn="[object Set]",Nn="[object String]",Cn="[object WeakMap]",Pn="[object ArrayBuffer]",Ln="[object DataView]",zn="[object Float32Array]",kn="[object Float64Array]",Vn="[object Int8Array]",Mn="[object Int16Array]",$n="[object Int32Array]",Rn="[object Uint8Array]",jn="[object Uint8ClampedArray]",Fn="[object Uint16Array]",Wn="[object Uint32Array]",O={};O[zn]=O[kn]=O[Vn]=O[Mn]=O[$n]=O[Rn]=O[jn]=O[Fn]=O[Wn]=!0,O[wn]=O[yn]=O[Pn]=O[Tn]=O[Ln]=O[En]=O[On]=O[Sn]=O[An]=O[In]=O[_n]=O[xn]=O[Dn]=O[Nn]=O[Cn]=!1;function Yn(e){return vt(e)&&ie(e.length)&&!!O[mt(e)]}function Xn(e){return function(t){return e(t)}}var ue=typeof L=="object"&&L&&!L.nodeType&&L,ot=ue&&typeof module=="object"&&module&&!module.nodeType&&module,Un=ot&&ot.exports===ue,Nt=Un&&Yt.process,Hn=function(){try{var e=ot&&ot.require&&ot.require("util").types;return e||Nt&&Nt.binding&&Nt.binding("util")}catch{}}();const ce=Hn;var he=ce&&ce.isTypedArray,Bn=he?Xn(he):Yn;const qn=Bn;var Kn=Object.prototype,Gn=Kn.hasOwnProperty;function fe(e,t){var i=gi(e),n=!i&&dn(e),r=!i&&!n&&bn(e),a=!i&&!n&&!r&&qn(e),o=i||n||r||a,l=o?ln(e.length,String):[],c=l.length;for(var s in e)(t||Gn.call(e,s))&&!(o&&(s=="length"||r&&(s=="offset"||s=="parent")||a&&(s=="buffer"||s=="byteLength"||s=="byteOffset")||Zt(s,c)))&&l.push(s);return l}function Zn(e,t){return function(i){return e(t(i))}}var Jn=Zn(Object.keys,Object);const Qn=Jn;var tr=Object.prototype,er=tr.hasOwnProperty;function ir(e){if(!Dt(e))return Qn(e);var t=[];for(var i in Object(e))er.call(e,i)&&i!="constructor"&&t.push(i);return t}function nr(e){return bt(e)?fe(e):ir(e)}var rr=Object.prototype,ar=rr.hasOwnProperty,or=on(function(e,t){if(Dt(t)||bt(t)){nn(t,nr(t),e);return}for(var i in t)ar.call(t,i)&&Qt(e,i,t[i])});const sr=or;function lr(e){var t=[];if(e!=null)for(var i in Object(e))t.push(i);return t}var ur=Object.prototype,cr=ur.hasOwnProperty;function hr(e){if(!B(e))return lr(e);var t=Dt(e),i=[];for(var n in e)n=="constructor"&&(t||!cr.call(e,n))||i.push(n);return i}function fr(e){return bt(e)?fe(e,!0):hr(e)}var dr=function(){return dt.Date.now()};const Ct=dr;var gr="Expected a function",mr=Math.max,vr=Math.min;function pr(e,t,i){var n,r,a,o,l,c,s=0,h=!1,u=!1,f=!0;if(typeof e!="function")throw new TypeError(gr);t=Bt(t)||0,B(i)&&(h=!!i.leading,u="maxWait"in i,a=u?mr(Bt(i.maxWait)||0,t):a,f="trailing"in i?!!i.trailing:f);function g(S){var M=n,k=r;return n=r=void 0,s=S,o=e.apply(k,M),o}function p(S){return s=S,l=setTimeout(V,t),h?g(S):o}function b(S){var M=S-c,k=S-s,H=t-M;return u?vr(H,a-k):H}function P(S){var M=S-c,k=S-s;return c===void 0||M>=t||M<0||u&&k>=a}function V(){var S=Ct();if(P(S))return z(S);l=setTimeout(V,b(S))}function z(S){return l=void 0,f&&n?g(S):(n=r=void 0,o)}function N(){l!==void 0&&clearTimeout(l),s=0,n=c=r=l=void 0}function C(){return l===void 0?o:z(Ct())}function _(){var S=Ct(),M=P(S);if(n=arguments,r=this,c=S,M){if(l===void 0)return p(c);if(u)return clearTimeout(l),l=setTimeout(V,t),g(c)}return l===void 0&&(l=setTimeout(V,t)),o}return _.cancel=N,_.flush=C,_}var de=Object.prototype,br=de.hasOwnProperty,wr=ee(function(e,t){e=Object(e);var i=-1,n=t.length,r=n>2?t[2]:void 0;for(r&&ne(t[0],t[1],r)&&(n=1);++i<n;)for(var a=t[i],o=fr(a),l=-1,c=o.length;++l<c;){var s=o[l],h=e[s];(h===void 0||xt(h,de[s])&&!br.call(e,s))&&(e[s]=a[s])}return e});const yr=wr;/*! * ViewerVue.js v1.1.8 * https://alibaba4184hub.github.io/viewerjs * * Copyright 2015-present Chen Fengyuan * Released under the MIT license * * Date: 2025-05-28T03:41:22.274Z */function Tr(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function ge(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,ve(n.key),n)}}function Er(e,t,i){return t&&ge(e.prototype,t),i&&ge(e,i),Object.defineProperty(e,"prototype",{writable:!1}),e}function Or(e,t,i){return(t=ve(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function me(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),i.push.apply(i,n)}return i}function Pt(e){for(var t=1;t<arguments.length;t++){var i=arguments[t]!=null?arguments[t]:{};t%2?me(Object(i),!0).forEach(function(n){Or(e,n,i[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):me(Object(i)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(i,n))})}return e}function Sr(e,t){if(typeof e!="object"||!e)return e;var i=e[Symbol.toPrimitive];if(i!==void 0){var n=i.call(e,t||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ve(e){var t=Sr(e,"string");return typeof t=="symbol"?t:t+""}function Lt(e){return Lt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Lt(e)}var pe={backdrop:!0,button:!0,navbar:!0,title:!0,toolbar:!0,className:"",container:"body",filter:null,fullscreen:!0,inheritedAttributes:["crossOrigin","decoding","isMap","loading","referrerPolicy","sizes","srcset","useMap"],initialCoverage:.9,initialViewIndex:0,inline:!1,interval:5e3,keyboard:!0,focus:!0,loading:!0,loop:!0,minWidth:200,minHeight:100,movable:!0,rotatable:!0,scalable:!0,zoomable:!0,zoomOnTouch:!0,zoomOnWheel:!0,slideOnTouch:!0,toggleOnDblclick:!0,tooltip:!0,transition:!0,zIndex:2015,zIndexInline:0,zoomRatio:.1,minZoomRatio:.01,maxZoomRatio:100,url:"src",ready:null,show:null,shown:null,hide:null,hidden:null,view:null,viewed:null,move:null,moved:null,rotate:null,rotated:null,scale:null,scaled:null,zoom:null,zoomed:null,play:null,stop:null},Ar='<div class="viewer-container" tabindex="-1" touch-action="none"><div class="viewer-canvas"></div><div class="viewer-footer"><div class="viewer-title viewer-relative"><span class="viewer-title-tooltip"></span><span class="viewer-title-bubble"></span></div><div class="viewer-toolbar"></div><div class="viewer-navbar"><ul class="viewer-list" role="navigation"></ul></div></div><div class="viewer-tooltip" role="alert" aria-hidden="true"></div><div class="viewer-button" data-viewer-action="mix" role="button"></div><div class="viewer-player"></div></div>',wt=typeof window<"u"&&typeof window.document<"u",X=wt?window:{},J=wt&&X.document.documentElement?"ontouchstart"in X.document.documentElement:!1,zt=wt?"PointerEvent"in X:!1,v="viewer",yt="move",be="switch",st="zoom",Tt="".concat(v,"-active"),we="".concat(v,"-close"),Et="".concat(v,"-fade"),kt="".concat(v,"-fixed"),ye="".concat(v,"-fullscreen-exit"),U="".concat(v,"-hide"),Ir="".concat(v,"-hide-md-down"),_r="".concat(v,"-hide-sm-down"),xr="".concat(v,"-hide-xs-down"),R="".concat(v,"-in"),lt="".concat(v,"-invisible"),Q="".concat(v,"-loading"),Dr="".concat(v,"-move"),Te="".concat(v,"-open"),q="".concat(v,"-show"),x="".concat(v,"-transition"),K="click",Vt="dblclick",Ee="dragstart",Oe="focusin",Se="keydown",j="load",G="error",Nr=J?"touchend touchcancel":"mouseup",Cr=J?"touchmove":"mousemove",Pr=J?"touchstart":"mousedown",Ae=zt?"pointerdown":Pr,Ie=zt?"pointermove":Cr,_e=zt?"pointerup pointercancel":Nr,xe="resize",F="transitionend",De="wheel",Ne="ready",Ce="show",Pe="shown",Le="hide",ze="hidden",ke="view",ut="viewed",Ve="move",Me="moved",$e="rotate",Re="rotated",je="scale",Fe="scaled",We="zoom",Ye="zoomed",Xe="play",Ue="stop",Ot="".concat(v,"Action"),Mt=/\s\s*/,ct=["zoom-in","zoom-out","one-to-one","reset","prev","play","next","rotate-left","rotate-right","flip-horizontal","flip-vertical","full-screen-modal","download"],Lr={"zoom-in":"\u653E\u5927","zoom-out":"\u7F29\u5C0F","one-to-one":"100%\u663E\u793A",reset:"\u91CD\u7F6E",prev:"\u4E0A\u4E00\u5F20",play:"\u4EE5\u5E7B\u706F\u7247\u5F62\u5F0F\u64AD\u653E",next:"\u4E0B\u4E00\u5F20","rotate-left":"\u5411\u5DE6\u65CB\u8F6C90\xB0","rotate-right":"\u5411\u53F3\u65CB\u8F6C90\xB0","flip-horizontal":"\u6C34\u5E73\u7FFB\u8F6C","flip-vertical":"\u5782\u76F4\u7FFB\u8F6C","full-screen-modal":"\u5168\u5C4F",download:"\u4E0B\u8F7D"};function ht(e){return typeof e=="string"}var zr=Number.isNaN||X.isNaN;function I(e){return typeof e=="number"&&!zr(e)}function tt(e){return typeof e>"u"}function et(e){return Lt(e)==="object"&&e!==null}var kr=Object.prototype.hasOwnProperty;function it(e){if(!et(e))return!1;try{var t=e.constructor,i=t.prototype;return t&&i&&kr.call(i,"isPrototypeOf")}catch{return!1}}function y(e){return typeof e=="function"}function E(e,t){if(e&&y(t))if(Array.isArray(e)||I(e.length)){var i=e.length,n;for(n=0;n<i&&t.call(e,e[n],n,e)!==!1;n+=1);}else et(e)&&Object.keys(e).forEach(function(r){t.call(e,e[r],r,e)});return e}var $=Object.assign||function(t){for(var i=arguments.length,n=new Array(i>1?i-1:0),r=1;r<i;r++)n[r-1]=arguments[r];return et(t)&&n.length>0&&n.forEach(function(a){et(a)&&Object.keys(a).forEach(function(o){t[o]=a[o]})}),t},Vr=/^(?:width|height|left|top|marginLeft|marginTop)$/;function W(e,t){var i=e.style;E(t,function(n,r){Vr.test(r)&&I(n)&&(n+="px"),i[r]=n})}function He(e){return ht(e)?e.replace(/&(?!amp;|quot;|#39;|lt;|gt;)/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;"):e}function nt(e,t){return!e||!t?!1:e.classList?e.classList.contains(t):e.className.indexOf(t)>-1}function d(e,t){if(!(!e||!t)){if(I(e.length)){E(e,function(n){d(n,t)});return}if(e.classList){e.classList.add(t);return}var i=e.className.trim();i?i.indexOf(t)<0&&(e.className="".concat(i," ").concat(t)):e.className=t}}function w(e,t){if(!(!e||!t)){if(I(e.length)){E(e,function(i){w(i,t)});return}if(e.classList){e.classList.remove(t);return}e.className.indexOf(t)>=0&&(e.className=e.className.replace(t,""))}}function ft(e,t,i){if(!!t){if(I(e.length)){E(e,function(n){ft(n,t,i)});return}i?d(e,t):w(e,t)}}var Mr=/([a-z\d])([A-Z])/g;function $t(e){return e.replace(Mr,"$1-$2").toLowerCase()}function rt(e,t){return et(e[t])?e[t]:e.dataset?e.dataset[t]:e.getAttribute("data-".concat($t(t)))}function Rt(e,t,i){et(i)?e[t]=i:e.dataset?e.dataset[t]=i:e.setAttribute("data-".concat($t(t)),i)}var Be=function(){var e=!1;if(wt){var t=!1,i=function(){},n=Object.defineProperty({},"once",{get:function(){return e=!0,t},set:function(a){t=a}});X.addEventListener("test",i,n),X.removeEventListener("test",i,n)}return e}();function T(e,t,i){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},r=i;t.trim().split(Mt).forEach(function(a){if(!Be){var o=e.listeners;o&&o[a]&&o[a][i]&&(r=o[a][i],delete o[a][i],Object.keys(o[a]).length===0&&delete o[a],Object.keys(o).length===0&&delete e.listeners)}e.removeEventListener(a,r,n)})}function m(e,t,i){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},r=i;t.trim().split(Mt).forEach(function(a){if(n.once&&!Be){var o=e.listeners,l=o===void 0?{}:o;r=function(){delete l[a][i],e.removeEventListener(a,r,n);for(var s=arguments.length,h=new Array(s),u=0;u<s;u++)h[u]=arguments[u];i.apply(e,h)},l[a]||(l[a]={}),l[a][i]&&e.removeEventListener(a,l[a][i],n),l[a][i]=r,e.listeners=l}e.addEventListener(a,r,n)})}function D(e,t,i,n){var r;return y(Event)&&y(CustomEvent)?r=new CustomEvent(t,Pt({bubbles:!0,cancelable:!0,detail:i},n)):(r=document.createEvent("CustomEvent"),r.initCustomEvent(t,!0,!0,i)),e.dispatchEvent(r)}function $r(e){var t=e.getBoundingClientRect();return{left:t.left+(window.pageXOffset-document.documentElement.clientLeft),top:t.top+(window.pageYOffset-document.documentElement.clientTop)}}function St(e){var t=e.rotate,i=e.scaleX,n=e.scaleY,r=e.translateX,a=e.translateY,o=[];I(r)&&r!==0&&o.push("translateX(".concat(r,"px)")),I(a)&&a!==0&&o.push("translateY(".concat(a,"px)")),I(t)&&t!==0&&o.push("rotate(".concat(t,"deg)")),I(i)&&i!==1&&o.push("scaleX(".concat(i,")")),I(n)&&n!==1&&o.push("scaleY(".concat(n,")"));var l=o.length?o.join(" "):"none";return{WebkitTransform:l,msTransform:l,transform:l}}function Rr(e){return ht(e)?decodeURIComponent(e.replace(/^.*\//,"").replace(/[?&#].*$/,"")):""}var jt=X.navigator&&/Version\/\d+(\.\d+)+?\s+Safari/i.test(X.navigator.userAgent);function qe(e,t,i){var n=document.createElement("img");if(e.naturalWidth&&!jt)return i(e.naturalWidth,e.naturalHeight),n;var r=document.body||document.documentElement;return n.onload=function(){i(n.width,n.height),jt||r.removeChild(n)},E(t.inheritedAttributes,function(a){var o=e.getAttribute(a);o!==null&&n.setAttribute(a,o)}),n.src=e.src,jt||(n.style.cssText="left:0;max-height:none!important;max-width:none!important;min-height:0!important;min-width:0!important;opacity:0;position:absolute;top:0;z-index:-1;",r.appendChild(n)),n}function At(e){switch(e){case 2:return xr;case 3:return _r;case 4:return Ir;default:return""}}function jr(e){var t=Pt({},e),i=[];return E(e,function(n,r){delete t[r],E(t,function(a){var o=Math.abs(n.startX-a.startX),l=Math.abs(n.startY-a.startY),c=Math.abs(n.endX-a.endX),s=Math.abs(n.endY-a.endY),h=Math.sqrt(o*o+l*l),u=Math.sqrt(c*c+s*s),f=(u-h)/h;i.push(f)})}),i.sort(function(n,r){return Math.abs(n)<Math.abs(r)}),i[0]}function It(e,t){var i=e.pageX,n=e.pageY,r={endX:i,endY:n};return t?r:Pt({timeStamp:Date.now(),startX:i,startY:n},r)}function Fr(e){var t=0,i=0,n=0;return E(e,function(r){var a=r.startX,o=r.startY;t+=a,i+=o,n+=1}),t/=n,i/=n,{pageX:t,pageY:i}}function Wr(e){var t=document,i=t.activeElement;if(!i)return!1;if(i.tagName==="INPUT"||i.tagName==="TEXTAREA"||i.isContentEditable)return!0;for(var n=e.target;n;){if(n.tagName==="INPUT"||n.tagName==="TEXTAREA"||n.isContentEditable)return!0;n=n.parentElement}return!1}var Yr={render:function(){this.initContainer(),this.initViewer(),this.initList(),this.renderViewer()},initBody:function(){var t=this.element.ownerDocument,i=t.body||t.documentElement;this.body=i,this.scrollbarWidth=window.innerWidth-t.documentElement.clientWidth,this.initialBodyPaddingRight=i.style.paddingRight,this.initialBodyComputedPaddingRight=window.getComputedStyle(i).paddingRight},initContainer:function(){this.containerData={width:window.innerWidth,height:window.innerHeight}},initViewer:function(){var t=this.options,i=this.parent,n;t.inline&&(n={width:Math.max(i.offsetWidth,t.minWidth),height:Math.max(i.offsetHeight,t.minHeight)},this.parentData=n),!t.inline&&(this.fulled||!n)&&(n=this.containerData),this.viewerData=$({},n)},renderViewer:function(){this.options.inline&&!this.fulled&&W(this.viewer,this.viewerData)},initList:function(){var t=this,i=this.element,n=this.options,r=this.list,a=[];r.innerHTML="",E(this.images,function(o,l){var c=o.src,s=o.alt||Rr(c),h=t.getImageURL(o);if(c||h){var u=document.createElement("li"),f=document.createElement("img");E(n.inheritedAttributes,function(g){var p=o.getAttribute(g);p!==null&&f.setAttribute(g,p)}),n.navbar&&(f.src=c||h),f.alt=s,f.setAttribute("data-original-url",h||c),u.setAttribute("data-index",l),u.setAttribute("data-viewer-action","view"),u.setAttribute("role","button"),n.keyboard&&u.setAttribute("tabindex",0),u.appendChild(f),r.appendChild(u),a.push(u)}}),this.items=a,E(a,function(o){var l=o.firstElementChild,c,s;Rt(l,"filled",!0),n.loading&&d(o,Q),m(l,j,c=function(u){T(l,G,s),n.loading&&w(o,Q),t.loadImage(u)},{once:!0}),m(l,G,s=function(){T(l,j,c),n.loading&&w(o,Q)},{once:!0})}),n.transition&&m(i,ut,function(){d(r,x)},{once:!0})},renderList:function(){var t=this.index,i=this.items[t];if(!!i){var n=i.nextElementSibling,r=parseInt(window.getComputedStyle(n||i).marginLeft,10),a=i.offsetWidth,o=a+r;W(this.list,$({width:o*this.length-r},St({translateX:(this.viewerData.width-a)/2-o*t})))}},resetList:function(){var t=this.list;t.innerHTML="",w(t,x),W(t,$({width:0},St({translateX:0})))},initImage:function(t){var i=this,n=this.options,r=this.image,a=this.viewerData,o=this.footer.offsetHeight,l=a.width,c=Math.max(a.height-o,o),s=this.imageData||{},h;this.imageInitializing={abort:function(){h.onload=null}},h=qe(r,n,function(u,f){var g=u/f,p=Math.max(0,Math.min(1,n.initialCoverage)),b=l,P=c;i.imageInitializing=!1,c*g>l?P=l/g:b=c*g,p=I(p)?p:.9,b=Math.min(b*p,u),P=Math.min(P*p,f);var V=(l-b)/2,z=(c-P)/2,N={left:V,top:z,x:V,y:z,width:b,height:P,oldRatio:1,ratio:b/u,aspectRatio:g,naturalWidth:u,naturalHeight:f},C=$({},N);n.rotatable&&(N.rotate=s.rotate||0,C.rotate=0),n.scalable&&(N.scaleX=s.scaleX||1,N.scaleY=s.scaleY||1,C.scaleX=1,C.scaleY=1),i.imageData=N,i.initialImageData=C,t&&t()})},renderImage:function(t){var i=this,n=this.image,r=this.imageData;if(W(n,$({width:r.width,height:r.height,marginLeft:r.x,marginTop:r.y},St(r))),t)if((this.viewing||this.moving||this.rotating||this.scaling||this.zooming)&&this.options.transition&&nt(n,x)){var a=function(){i.imageRendering=!1,t()};this.imageRendering={abort:function(){T(n,F,a)}},m(n,F,a,{once:!0})}else t()},resetImage:function(){var t=this.image;t&&(this.viewing&&this.viewing.abort(),t.parentNode.removeChild(t),this.image=null,this.title.innerHTML="")}},Xr={bind:function(){var t=this.options,i=this.viewer,n=this.canvas,r=this.element.ownerDocument;m(i,K,this.onClick=this.click.bind(this)),m(i,Ee,this.onDragStart=this.dragstart.bind(this)),m(n,Ae,this.onPointerDown=this.pointerdown.bind(this)),m(r,Ie,this.onPointerMove=this.pointermove.bind(this)),m(r,_e,this.onPointerUp=this.pointerup.bind(this)),m(r,Se,this.onKeyDown=this.keydown.bind(this)),m(window,xe,this.onResize=this.resize.bind(this)),t.zoomable&&t.zoomOnWheel&&m(i,De,this.onWheel=this.wheel.bind(this),{passive:!1,capture:!0}),t.toggleOnDblclick&&m(n,Vt,this.onDblclick=this.dblclick.bind(this))},unbind:function(){var t=this.options,i=this.viewer,n=this.canvas,r=this.element.ownerDocument;T(i,K,this.onClick),T(i,Ee,this.onDragStart),T(n,Ae,this.onPointerDown),T(r,Ie,this.onPointerMove),T(r,_e,this.onPointerUp),T(r,Se,this.onKeyDown),T(window,xe,this.onResize),t.zoomable&&t.zoomOnWheel&&T(i,De,this.onWheel,{passive:!1,capture:!0}),t.toggleOnDblclick&&T(n,Vt,this.onDblclick)}},Ur={click:function(t){var i=this.options,n=this.imageData,r=t.target,a=rt(r,Ot);switch(!a&&r.localName==="img"&&r.parentElement.localName==="li"&&(r=r.parentElement,a=rt(r,Ot)),J&&t.isTrusted&&r===this.canvas&&clearTimeout(this.clickCanvasTimeout),a){case"mix":this.played?this.stop():i.inline?this.hide(!0):this.hide();break;case"hide":this.pointerMoved||this.hide();break;case"view":this.view(rt(r,"index"));break;case"zoom-in":this.zoom(.1,!0);break;case"zoom-out":this.zoom(-.1,!0);break;case"one-to-one":this.toggle();break;case"reset":this.reset();break;case"prev":this.prev(i.loop);break;case"play":this.play(i.fullscreen);break;case"next":this.next(i.loop);break;case"rotate-left":this.rotate(-90);break;case"rotate-right":this.rotate(90);break;case"flip-horizontal":this.scaleX(-n.scaleX||-1);break;case"flip-vertical":this.scaleY(-n.scaleY||-1);break;case"fullscreen-modal":this.play(i.toolbar.fullscreenModal);break;case"download":this.download();break;default:this.played&&this.stop()}},dblclick:function(t){t.preventDefault(),this.viewed&&t.target===this.image&&(J&&t.isTrusted&&clearTimeout(this.doubleClickImageTimeout),this.toggle(t.isTrusted?t:t.detail&&t.detail.originalEvent))},load:function(){var t=this;this.timeout&&(clearTimeout(this.timeout),this.timeout=!1);var i=this.element,n=this.options,r=this.image,a=this.index,o=this.viewerData;w(r,lt),n.loading&&w(this.canvas,Q),r.style.cssText="height:0;"+"margin-left:".concat(o.width/2,"px;")+"margin-top:".concat(o.height/2,"px;")+"max-width:none!important;position:relative;width:0;",this.initImage(function(){ft(r,Dr,n.movable),ft(r,x,n.transition),t.renderImage(function(){t.viewed=!0,t.viewing=!1,y(n.viewed)&&m(i,ut,n.viewed,{once:!0}),D(i,ut,{originalImage:t.images[a],index:a,image:r},{cancelable:!1})})})},loadImage:function(t){var i=t.target,n=i.parentNode,r=n.offsetWidth||30,a=n.offsetHeight||50,o=!!rt(i,"filled");qe(i,this.options,function(l,c){var s=l/c,h=r,u=a;a*s>r?o?h=a*s:u=r/s:o?u=r/s:h=a*s,W(i,$({width:h,height:u},St({translateX:(r-h)/2,translateY:(a-u)/2})))})},keydown:function(t){var i=this.options;if(!!i.keyboard&&!Wr(t)){var n=t.keyCode||t.which||t.charCode;switch(n){case 13:this.viewer.contains(t.target)&&this.click(t);break}if(!!this.fulled)switch(n){case 27:this.played?this.stop():i.inline?this.fulled&&this.exit():this.hide();break;case 32:this.played&&this.stop();break;case 37:this.played&&this.playing?this.playing.prev():this.prev(i.loop);break;case 38:t.preventDefault(),this.zoom(i.zoomRatio,!0);break;case 39:this.played&&this.playing?this.playing.next():this.next(i.loop);break;case 40:t.preventDefault(),this.zoom(-i.zoomRatio,!0);break;case 48:case 49:t.ctrlKey&&(t.preventDefault(),this.toggle());break}}},dragstart:function(t){t.target.localName==="img"&&t.preventDefault()},pointerdown:function(t){var i=this.options,n=this.pointers,r=t.buttons,a=t.button;if(this.pointerMoved=!1,!(!this.viewed||this.showing||this.viewing||this.hiding||(t.type==="mousedown"||t.type==="pointerdown"&&t.pointerType==="mouse")&&(I(r)&&r!==1||I(a)&&a!==0||t.ctrlKey))){t.preventDefault(),t.changedTouches?E(t.changedTouches,function(l){n[l.identifier]=It(l)}):n[t.pointerId||0]=It(t);var o=i.movable?yt:!1;i.zoomOnTouch&&i.zoomable&&Object.keys(n).length>1?o=st:i.slideOnTouch&&(t.pointerType==="touch"||t.type==="touchstart")&&this.isSwitchable()&&(o=be),i.transition&&(o===yt||o===st)&&w(this.image,x),this.action=o}},pointermove:function(t){var i=this.pointers,n=this.action;!this.viewed||!n||(t.preventDefault(),t.changedTouches?E(t.changedTouches,function(r){$(i[r.identifier]||{},It(r,!0))}):$(i[t.pointerId||0]||{},It(t,!0)),this.change(t))},pointerup:function(t){var i=this,n=this.options,r=this.action,a=this.pointers,o;t.changedTouches?E(t.changedTouches,function(l){o=a[l.identifier],delete a[l.identifier]}):(o=a[t.pointerId||0],delete a[t.pointerId||0]),r&&(t.preventDefault(),n.transition&&(r===yt||r===st)&&d(this.image,x),this.action=!1,J&&r!==st&&o&&Date.now()-o.timeStamp<500&&(clearTimeout(this.clickCanvasTimeout),clearTimeout(this.doubleClickImageTimeout),n.toggleOnDblclick&&this.viewed&&t.target===this.image?this.imageClicked?(this.imageClicked=!1,this.doubleClickImageTimeout=setTimeout(function(){D(i.image,Vt,{originalEvent:t})},50)):(this.imageClicked=!0,this.doubleClickImageTimeout=setTimeout(function(){i.imageClicked=!1},500)):(this.imageClicked=!1,n.backdrop&&n.backdrop!=="static"&&t.target===this.canvas&&(this.clickCanvasTimeout=setTimeout(function(){D(i.canvas,K,{originalEvent:t})},50)))))},resize:function(){var t=this;if(!(!this.isShown||this.hiding)&&(this.fulled&&(this.close(),this.initBody(),this.open()),this.initContainer(),this.initViewer(),this.renderViewer(),this.renderList(),this.viewed&&this.initImage(function(){t.renderImage()}),this.played)){if(this.options.fullscreen&&this.fulled&&!(document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement)){this.stop();return}E(this.player.getElementsByTagName("img"),function(i){m(i,j,t.loadImage.bind(t),{once:!0}),D(i,j)})}},wheel:function(t){var i=this;if(!!this.viewed&&(t.preventDefault(),!this.wheeling)){this.wheeling=!0,setTimeout(function(){i.wheeling=!1},50);var n=Number(this.options.zoomRatio)||.1,r=1;t.deltaY?r=t.deltaY>0?1:-1:t.wheelDelta?r=-t.wheelDelta/120:t.detail&&(r=t.detail>0?1:-1),this.zoom(-r*n,!0,null,t)}}},Hr={show:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,i=this.element,n=this.options;if(this.showing||this.isShown||this.showing)return this;if(!this.ready)return this.build(),this.ready&&this.show(t),this;if(y(n.show)&&m(i,Ce,n.show,{once:!0}),D(i,Ce)===!1||!this.ready)return this;this.hiding&&this.transitioning.abort(),this.showing=!0,this.open();var r=this.viewer;if(w(r,U),r.setAttribute("role","dialog"),r.setAttribute("aria-labelledby",this.title.id),r.setAttribute("aria-modal",!0),r.removeAttribute("aria-hidden"),n.transition&&!t){var a=this.shown.bind(this);this.transitioning={abort:function(){T(r,F,a),w(r,R)}},d(r,x),r.initialOffsetWidth=r.offsetWidth,m(r,F,a,{once:!0}),d(r,R)}else d(r,R),this.shown();return this},hide:function(){var t=this,i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,n=this.element,r=this.options;if(this.hiding||!(this.isShown||this.showing))return this;if(y(r.hide)&&m(n,Le,r.hide,{once:!0}),D(n,Le)===!1)return this;this.showing&&this.transitioning.abort(),this.hiding=!0,this.played?this.stop():this.viewing&&this.viewing.abort();var a=this.viewer,o=this.image,l=function(){w(a,R),t.hidden()};if(r.transition&&!i){var c=function(u){u&&u.target===a&&(T(a,F,c),t.hidden())},s=function(){nt(a,x)?(m(a,F,c),w(a,R)):l()};this.transitioning={abort:function(){t.viewed&&nt(o,x)?T(o,F,s):nt(a,x)&&T(a,F,c)}},this.viewed&&nt(o,x)?(m(o,F,s,{once:!0}),this.zoomTo(0,!1,null,null,!0)):s()}else l();return this},view:function(){var t=this,i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.options.initialViewIndex;if(i=Number(i)||0,this.hiding||this.played||i<0||i>=this.length||this.viewed&&i===this.index)return this;if(!this.isShown){this.index=i;var n=this.options.inline;return this.show(n)}this.viewing&&this.viewing.abort();var r=this.element,a=this.options,o=this.title,l=this.titleBubble,c=this.canvas,s=this.items[i],h=s.querySelector("img"),u=rt(h,"originalUrl"),f=h.getAttribute("alt"),g=document.createElement("img");if(E(a.inheritedAttributes,function(z){var N=h.getAttribute(z);N!==null&&g.setAttribute(z,N)}),g.src=u,g.alt=f,y(a.view)&&m(r,ke,a.view,{once:!0}),D(r,ke,{originalImage:this.images[i],index:i,image:g})===!1||!this.isShown||this.hiding||this.played)return this;var p=this.items[this.index];p&&(w(p,Tt),p.removeAttribute("aria-selected")),d(s,Tt),s.setAttribute("aria-selected",!0),a.focus&&s.focus(),this.image=g,this.viewed=!1,this.index=i,this.imageData={},d(g,lt),a.loading&&d(c,Q),c.innerHTML="",c.appendChild(g),this.renderList(),o.innerHTML="";var b=function(){var N=t.imageData,C=Array.isArray(a.title)?a.title[1]:a.title;l.innerHTML=He(y(C)?C.call(t,g,N):"".concat(f)),o.innerHTML=He(y(C)?C.call(t,g,N):"".concat(f))},P,V;return m(r,ut,b,{once:!0}),this.viewing={abort:function(){T(r,ut,b),g.complete?t.imageRendering?t.imageRendering.abort():t.imageInitializing&&t.imageInitializing.abort():(g.src="",T(g,j,P),t.timeout&&clearTimeout(t.timeout))}},g.complete?this.load():(m(g,j,P=function(){T(g,G,V),t.load()},{once:!0}),m(g,G,V=function(){T(g,j,P),t.timeout&&(clearTimeout(t.timeout),t.timeout=!1),w(g,lt),a.loading&&w(t.canvas,Q)},{once:!0}),this.timeout&&clearTimeout(this.timeout),this.timeout=setTimeout(function(){w(g,lt),t.timeout=!1},1e3)),this},prev:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,i=this.index-1;return i<0&&(i=t?this.length-1:0),this.view(i),this},next:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,i=this.length-1,n=this.index+1;return n>i&&(n=t?0:i),this.view(n),this},move:function(t){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:t,n=this.imageData;return this.moveTo(tt(t)?t:n.x+Number(t),tt(i)?i:n.y+Number(i)),this},moveTo:function(t){var i=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:t,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,a=this.element,o=this.options,l=this.imageData;if(t=Number(t),n=Number(n),this.viewed&&!this.played&&o.movable){var c=l.x,s=l.y,h=!1;if(I(t)?h=!0:t=c,I(n)?h=!0:n=s,h){if(y(o.move)&&m(a,Ve,o.move,{once:!0}),D(a,Ve,{x:t,y:n,oldX:c,oldY:s,originalEvent:r})===!1)return this;l.x=t,l.y=n,l.left=t,l.top=n,this.moving=!0,this.renderImage(function(){i.moving=!1,y(o.moved)&&m(a,Me,o.moved,{once:!0}),D(a,Me,{x:t,y:n,oldX:c,oldY:s,originalEvent:r},{cancelable:!1})})}}return this},rotate:function(t){return this.rotateTo((this.imageData.rotate||0)+Number(t)),this},rotateTo:function(t){var i=this,n=this.element,r=this.options,a=this.imageData;if(t=Number(t),I(t)&&this.viewed&&!this.played&&r.rotatable){var o=a.rotate;if(y(r.rotate)&&m(n,$e,r.rotate,{once:!0}),D(n,$e,{degree:t,oldDegree:o})===!1)return this;a.rotate=t,this.rotating=!0,this.renderImage(function(){i.rotating=!1,y(r.rotated)&&m(n,Re,r.rotated,{once:!0}),D(n,Re,{degree:t,oldDegree:o},{cancelable:!1})})}return this},scaleX:function(t){return this.scale(t,this.imageData.scaleY),this},scaleY:function(t){return this.scale(this.imageData.scaleX,t),this},scale:function(t){var i=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:t,r=this.element,a=this.options,o=this.imageData;if(t=Number(t),n=Number(n),this.viewed&&!this.played&&a.scalable){var l=o.scaleX,c=o.scaleY,s=!1;if(I(t)?s=!0:t=l,I(n)?s=!0:n=c,s){if(y(a.scale)&&m(r,je,a.scale,{once:!0}),D(r,je,{scaleX:t,scaleY:n,oldScaleX:l,oldScaleY:c})===!1)return this;o.scaleX=t,o.scaleY=n,this.scaling=!0,this.renderImage(function(){i.scaling=!1,y(a.scaled)&&m(r,Fe,a.scaled,{once:!0}),D(r,Fe,{scaleX:t,scaleY:n,oldScaleX:l,oldScaleY:c},{cancelable:!1})})}}return this},zoom:function(t){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,a=this.imageData;return t=Number(t),t<0?t=1/(1-t):t=1+t,this.zoomTo(a.width*t/a.naturalWidth,i,n,r),this},zoomTo:function(t){var i=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null,o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1,l=this.element,c=this.options,s=this.pointers,h=this.imageData,u=h.x,f=h.y,g=h.width,p=h.height,b=h.naturalWidth,P=h.naturalHeight;if(t=Math.max(0,t),I(t)&&this.viewed&&!this.played&&(o||c.zoomable)){if(!o){var V=Math.max(.01,c.minZoomRatio),z=Math.min(100,c.maxZoomRatio);t=Math.min(Math.max(t,V),z)}if(a)switch(a.type){case"wheel":c.zoomRatio>=.055&&t>.95&&t<1.05&&(t=1);break;case"pointermove":case"touchmove":case"mousemove":t>.99&&t<1.01&&(t=1);break}var N=b*t,C=P*t,_=N-g,S=C-p,M=h.ratio;if(y(c.zoom)&&m(l,We,c.zoom,{once:!0}),D(l,We,{ratio:t,oldRatio:M,originalEvent:a})===!1)return this;if(this.zooming=!0,a){var k=$r(this.viewer),H=s&&Object.keys(s).length>0?Fr(s):{pageX:a.pageX,pageY:a.pageY};h.x-=_*((H.pageX-k.left-u)/g),h.y-=S*((H.pageY-k.top-f)/p)}else it(r)&&I(r.x)&&I(r.y)?(h.x-=_*((r.x-u)/g),h.y-=S*((r.y-f)/p)):(h.x-=_/2,h.y-=S/2);h.left=h.x,h.top=h.y,h.width=N,h.height=C,h.oldRatio=M,h.ratio=t,this.renderImage(function(){i.zooming=!1,y(c.zoomed)&&m(l,Ye,c.zoomed,{once:!0}),D(l,Ye,{ratio:t,oldRatio:M,originalEvent:a},{cancelable:!1})}),n&&this.tooltip()}return this},play:function(){var t=this,i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;if(!this.isShown||this.played)return this;var n=this.element,r=this.options;if(y(r.play)&&m(n,Xe,r.play,{once:!0}),D(n,Xe)===!1)return this;var a=this.player,o=this.loadImage.bind(this),l=[],c=0,s=0;if(this.played=!0,this.onLoadWhenPlay=o,i&&this.requestFullscreen(i),d(a,q),E(this.items,function(f,g){var p=f.querySelector("img"),b=document.createElement("img");b.src=rt(p,"originalUrl"),b.alt=p.getAttribute("alt"),b.referrerPolicy=p.referrerPolicy,c+=1,d(b,Et),ft(b,x,r.transition),nt(f,Tt)&&(d(b,R),s=g),l.push(b),m(b,j,o,{once:!0}),a.appendChild(b)}),I(r.interval)&&r.interval>0){var h=function(){clearTimeout(t.playing.timeout),w(l[s],R),s-=1,s=s>=0?s:c-1,d(l[s],R),t.playing.timeout=setTimeout(h,r.interval)},u=function(){clearTimeout(t.playing.timeout),w(l[s],R),s+=1,s=s<c?s:0,d(l[s],R),t.playing.timeout=setTimeout(u,r.interval)};c>1&&(this.playing={prev:h,next:u,timeout:setTimeout(u,r.interval)})}return this},stop:function(){var t=this;if(!this.played)return this;var i=this.element,n=this.options;if(y(n.stop)&&m(i,Ue,n.stop,{once:!0}),D(i,Ue)===!1)return this;var r=this.player;return clearTimeout(this.playing.timeout),this.playing=!1,this.played=!1,E(r.getElementsByTagName("img"),function(a){T(a,j,t.onLoadWhenPlay)}),w(r,q),r.innerHTML="",this.exitFullscreen(),this},full:function(){var t=this,i=this.options,n=this.viewer,r=this.image,a=this.list;return!this.isShown||this.played||this.fulled||!i.inline?this:(this.fulled=!0,this.open(),d(this.button,ye),i.transition&&(w(a,x),this.viewed&&w(r,x)),d(n,kt),n.setAttribute("role","dialog"),n.setAttribute("aria-labelledby",this.title.id),n.setAttribute("aria-modal",!0),n.removeAttribute("style"),W(n,{zIndex:i.zIndex}),i.focus&&this.enforceFocus(),this.initContainer(),this.viewerData=$({},this.containerData),this.renderList(),this.viewed&&this.initImage(function(){t.renderImage(function(){i.transition&&setTimeout(function(){d(r,x),d(a,x)},0)})}),this)},exit:function(){var t=this,i=this.options,n=this.viewer,r=this.image,a=this.list;return!this.isShown||this.played||!this.fulled||!i.inline?this:(this.fulled=!1,this.close(),w(this.button,ye),i.transition&&(w(a,x),this.viewed&&w(r,x)),i.focus&&this.clearEnforceFocus(),n.removeAttribute("role"),n.removeAttribute("aria-labelledby"),n.removeAttribute("aria-modal"),w(n,kt),W(n,{zIndex:i.zIndexInline}),this.viewerData=$({},this.parentData),this.renderViewer(),this.renderList(),this.viewed&&this.initImage(function(){t.renderImage(function(){i.transition&&setTimeout(function(){d(r,x),d(a,x)},0)})}),this)},tooltip:function(){var t=this,i=this.options,n=this.tooltipBox,r=this.imageData;return!this.viewed||this.played||!i.tooltip?this:(n.textContent="".concat(Math.round(r.ratio*100),"%"),this.tooltipping?clearTimeout(this.tooltipping):i.transition?(this.fading&&D(n,F),d(n,q),d(n,Et),d(n,x),n.removeAttribute("aria-hidden"),n.initialOffsetWidth=n.offsetWidth,d(n,R)):(d(n,q),n.removeAttribute("aria-hidden")),this.tooltipping=setTimeout(function(){i.transition?(m(n,F,function(){w(n,q),w(n,Et),w(n,x),n.setAttribute("aria-hidden",!0),t.fading=!1},{once:!0}),w(n,R),t.fading=!0):(w(n,q),n.setAttribute("aria-hidden",!0)),t.tooltipping=!1},1e3),this)},toggle:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null;return this.imageData.ratio===1?this.zoomTo(this.imageData.oldRatio,!0,null,t):this.zoomTo(1,!0,null,t),this},reset:function(){return this.viewed&&!this.played&&(this.imageData=$({},this.initialImageData),this.renderImage()),this},update:function(){var t=this,i=this.element,n=this.options,r=this.isImg;if(r&&!i.parentNode)return this.destroy();var a=[];if(E(r?[i]:i.querySelectorAll("img"),function(s){y(n.filter)?n.filter.call(t,s)&&a.push(s):t.getImageURL(s)&&a.push(s)}),!a.length)return this;if(this.images=a,this.length=a.length,this.ready){var o=[];if(E(this.items,function(s,h){var u=s.querySelector("img"),f=a[h];f&&u?(f.src!==u.src||f.alt!==u.alt)&&o.push(h):o.push(h)}),W(this.list,{width:"auto"}),this.initList(),this.isShown)if(this.length){if(this.viewed){var l=o.indexOf(this.index);if(l>=0)this.viewed=!1,this.view(Math.max(Math.min(this.index-l,this.length-1),0));else{var c=this.items[this.index];d(c,Tt),c.setAttribute("aria-selected",!0)}}}else this.image=null,this.viewed=!1,this.index=0,this.imageData={},this.canvas.innerHTML="",this.title.innerHTML=""}else this.build();return this},download:function(){var t=this.options,i=this.images,n=this.index,r=i[n].getAttribute(t.url),a=i[n].getAttribute("alt"),o=document.createElement("a");o.href=r,o.download=a,document.body.appendChild(o),o.click(),document.body.removeChild(o)},destroy:function(){var t=this.element,i=this.options;return t[v]?(this.destroyed=!0,this.ready?(this.played&&this.stop(),i.inline?(this.fulled&&this.exit(),this.unbind()):this.isShown?(this.viewing&&(this.imageRendering?this.imageRendering.abort():this.imageInitializing&&this.imageInitializing.abort()),this.hiding&&this.transitioning.abort(),this.hidden()):this.showing&&(this.transitioning.abort(),this.hidden()),this.ready=!1,this.viewer.parentNode.removeChild(this.viewer)):i.inline&&(this.delaying?this.delaying.abort():this.initializing&&this.initializing.abort()),i.inline||T(t,K,this.onStart),t[v]=void 0,this):this}},Br={getImageURL:function(t){var i=this.options.url;return ht(i)?i=t.getAttribute(i):y(i)?i=i.call(this,t):i="",i},enforceFocus:function(){var t=this;this.clearEnforceFocus(),m(document,Oe,this.onFocusin=function(i){var n=t.viewer,r=i.target;if(!(r===document||r===n||n.contains(r))){for(;r;){if(r.getAttribute("tabindex")!==null||r.getAttribute("aria-modal")==="true")return;r=r.parentElement}n.focus()}})},clearEnforceFocus:function(){this.onFocusin&&(T(document,Oe,this.onFocusin),this.onFocusin=null)},open:function(){var t=this.body;d(t,Te),this.scrollbarWidth>0&&(t.style.paddingRight="".concat(this.scrollbarWidth+(parseFloat(this.initialBodyComputedPaddingRight)||0),"px"))},close:function(){var t=this.body;w(t,Te),this.scrollbarWidth>0&&(t.style.paddingRight=this.initialBodyPaddingRight)},shown:function(){var t=this.element,i=this.options,n=this.viewer;this.fulled=!0,this.isShown=!0,this.render(),this.bind(),this.showing=!1,i.focus&&(n.focus(),this.enforceFocus()),y(i.shown)&&m(t,Pe,i.shown,{once:!0}),D(t,Pe)!==!1&&this.ready&&this.isShown&&!this.hiding&&this.view(this.index)},hidden:function(){var t=this.element,i=this.options,n=this.viewer;i.fucus&&this.clearEnforceFocus(),this.close(),this.unbind(),d(n,U),n.removeAttribute("role"),n.removeAttribute("aria-labelledby"),n.removeAttribute("aria-modal"),n.setAttribute("aria-hidden",!0),this.resetList(),this.resetImage(),this.fulled=!1,this.viewed=!1,this.isShown=!1,this.hiding=!1,this.destroyed||(y(i.hidden)&&m(t,ze,i.hidden,{once:!0}),D(t,ze,null,{cancelable:!1}))},requestFullscreen:function(t){var i=this.element.ownerDocument;if(this.fulled&&!(i.fullscreenElement||i.webkitFullscreenElement||i.mozFullScreenElement||i.msFullscreenElement)){var n=i.documentElement;n.requestFullscreen?it(t)?n.requestFullscreen(t):n.requestFullscreen():n.webkitRequestFullscreen?n.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):n.mozRequestFullScreen?n.mozRequestFullScreen():n.msRequestFullscreen&&n.msRequestFullscreen()}},exitFullscreen:function(){var t=this.element.ownerDocument;this.fulled&&(t.fullscreenElement||t.webkitFullscreenElement||t.mozFullScreenElement||t.msFullscreenElement)&&(t.exitFullscreen?t.exitFullscreen():t.webkitExitFullscreen?t.webkitExitFullscreen():t.mozCancelFullScreen?t.mozCancelFullScreen():t.msExitFullscreen&&t.msExitFullscreen())},change:function(t){var i=this.options,n=this.pointers,r=n[Object.keys(n)[0]];if(!!r){var a=r.endX-r.startX,o=r.endY-r.startY;switch(this.action){case yt:(a!==0||o!==0)&&(this.pointerMoved=!0,this.move(a,o,t));break;case st:this.zoom(jr(n),!1,null,t);break;case be:{this.action="switched";var l=Math.abs(a);l>1&&l>Math.abs(o)&&(this.pointers={},a>1?this.prev(i.loop):a<-1&&this.next(i.loop));break}}E(n,function(c){c.startX=c.endX,c.startY=c.endY})}},isSwitchable:function(){var t=this.imageData,i=this.viewerData;return this.length>1&&t.x>=0&&t.y>=0&&t.width<=i.width&&t.height<=i.height}},qr=X.Viewer,Kr=function(e){return function(){return e+=1,e}}(-1),Z=function(){function e(t){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(Tr(this,e),!t||t.nodeType!==1)throw new Error("The first argument is required and must be an element.");this.element=t,this.options=$({},pe,it(i)&&i),this.action=!1,this.fading=!1,this.fulled=!1,this.hiding=!1,this.imageClicked=!1,this.imageData={},this.index=this.options.initialViewIndex,this.isImg=!1,this.isShown=!1,this.length=0,this.moving=!1,this.played=!1,this.playing=!1,this.pointers={},this.ready=!1,this.rotating=!1,this.scaling=!1,this.showing=!1,this.timeout=!1,this.tooltipping=!1,this.viewed=!1,this.viewing=!1,this.wheeling=!1,this.zooming=!1,this.pointerMoved=!1,this.id=Kr(),this.init()}return Er(e,[{key:"init",value:function(){var i=this,n=this.element,r=this.options;if(!n[v]){n[v]=this,r.focus&&!r.keyboard&&(r.focus=!1);var a=n.localName==="img",o=[];if(E(a?[n]:n.querySelectorAll("img"),function(s){y(r.filter)?r.filter.call(i,s)&&o.push(s):i.getImageURL(s)&&o.push(s)}),this.isImg=a,this.length=o.length,this.images=o,this.initBody(),tt(document.createElement(v).style.transition)&&(r.transition=!1),r.inline){var l=0,c=function(){if(l+=1,l===i.length){var h;i.initializing=!1,i.delaying={abort:function(){clearTimeout(h)}},h=setTimeout(function(){i.delaying=!1,i.build()},0)}};this.initializing={abort:function(){E(o,function(h){h.complete||(T(h,j,c),T(h,G,c))})}},E(o,function(s){if(s.complete)c();else{var h,u;m(s,j,h=function(){T(s,G,u),c()},{once:!0}),m(s,G,u=function(){T(s,j,h),c()},{once:!0})}}),m(n,K,this.onStart=function(s){var h=s.target;h.localName==="img"&&(!y(r.filter)||r.filter.call(i,h))&&(w(i.viewer,U),d(i.viewer,q),i.view(i.images.indexOf(h)))})}else m(n,K,this.onStart=function(s){var h=s.target;h.localName==="img"&&(!y(r.filter)||r.filter.call(i,h))&&i.view(i.images.indexOf(h))})}}},{key:"build",value:function(){if(!this.ready){var i=this.element,n=this.options,r=i.parentNode,a=document.createElement("div");a.innerHTML=Ar;var o=a.querySelector(".".concat(v,"-container")),l=o.querySelector(".".concat(v,"-title >.").concat(v,"-title-tooltip")),c=o.querySelector(".".concat(v,"-toolbar")),s=o.querySelector(".".concat(v,"-navbar")),h=o.querySelector(".".concat(v,"-button")),u=o.querySelector(".".concat(v,"-canvas")),f=o.querySelector(".".concat(v,"-title >.").concat(v,"-title-bubble"));if(this.parent=r,this.viewer=o,this.title=l,this.titleBubble=f,this.toolbar=c,this.navbar=s,this.button=h,this.canvas=u,this.footer=o.querySelector(".".concat(v,"-footer")),this.tooltipBox=o.querySelector(".".concat(v,"-tooltip")),this.player=o.querySelector(".".concat(v,"-player")),this.list=o.querySelector(".".concat(v,"-list")),o.id="".concat(v).concat(this.id),l.id="".concat(v,"Title").concat(this.id),d(l,n.title?At(Array.isArray(n.title)?n.title[0]:n.title):U),d(s,n.navbar?At(n.navbar):U),ft(h,U,!n.button),n.keyboard&&h.setAttribute("tabindex",0),n.backdrop&&(d(o,"".concat(v,"-backdrop")),!n.inline&&n.backdrop!=="static"&&Rt(u,Ot,"hide")),ht(n.className)&&n.className&&n.className.split(Mt).forEach(function(_){d(o,_)}),n.toolbar){var g=document.createElement("ul"),p=it(n.toolbar),b=ct.slice(0,3),P=ct.slice(7,9),V=ct.slice(9,11),z=ct.slice(11,12);p||d(c,At(n.toolbar)),E(p?n.toolbar:ct,function(_,S){var M=p&&it(_),k=p?$t(S):_,H=M&&!tt(_.show)?_.show:_;if(!(!H||!n.zoomable&&b.indexOf(k)!==-1||!n.rotatable&&P.indexOf(k)!==-1||!n.scalable&&V.indexOf(k)!==-1||!n.fullscreen&&z.indexOf(k)!==-1)){var Je=M&&!tt(_.size)?_.size:_,Ft=M&&!tt(_.click)?_.click:_,Y=document.createElement("li"),Wt=document.createElement("span");d(Wt,"".concat(v,"-action-tip")),Wt.innerText=Lr[k],n.keyboard&&Y.setAttribute("tabindex",0),Y.setAttribute("role","button"),d(Y,"".concat(v,"-").concat(k)),d(Y,"".concat(v,"-relative")),y(Ft)||Rt(Y,Ot,k),I(H)&&d(Y,At(H)),["small","large"].indexOf(Je)!==-1?d(Y,"".concat(v,"-").concat(Je)):k==="play"&&d(Y,"".concat(v,"-large")),y(Ft)&&m(Y,K,Ft),Y.appendChild(Wt),g.appendChild(Y)}}),c.appendChild(g)}else d(c,U);if(!n.rotatable){var N=c.querySelectorAll('li[class*="rotate"]');d(N,lt),E(N,function(_){c.appendChild(_)})}if(n.inline)d(h,we),d(o,U),W(o,{zIndex:n.zIndexInline}),window.getComputedStyle(r).position==="static"&&W(r,{position:"relative"}),r.insertBefore(o,i.nextSibling);else{d(h,we),d(o,kt),d(o,Et),d(o,U),W(o,{zIndex:n.zIndex});var C=n.container;ht(C)&&(C=i.ownerDocument.querySelector(C)),C||(C=this.body),C.appendChild(o)}n.inline,this.ready=!0,y(n.ready)&&m(i,Ne,n.ready,{once:!0}),D(i,Ne)===!1&&(this.ready=!1)}}}],[{key:"noConflict",value:function(){return window.Viewer=qr,e}},{key:"setDefaults",value:function(i){$(pe,it(i)&&i)}}])}();$(Z.prototype,Yr,Xr,Ur,Hr,Br);const Ke=({images:e=[],options:t})=>{t=sr(t,{inline:!1});const i=document.createElement("div"),n=A.h("div",{style:{display:"none"},class:["__viewer-token"]},e.map(l=>A.h("img",typeof l=="string"?{src:l}:l)));A.render(n,i);const r=i.firstElementChild;document.body.appendChild(r);const a=new Z(r,t),o=a.destroy.bind(a);return a.destroy=function(){return o(),A.render(null,i),a},a.show(),r.addEventListener("hidden",function(){this.viewer===a&&a.destroy()}),a},Ge=({name:e="viewer",debug:t=!1}={})=>{async function i(u,f,g=!1,p=!1){await A.nextTick(),!(p&&!n(u))&&(g||!u[`$${e}`]?(o(u),u[`$${e}`]=new Z(u,f),s("Viewer created")):(u[`$${e}`].update(),s("Viewer updated")))}function n(u){const f=u.innerHTML.match(/<img([\w\W]+?)[\\/]?>/g),g=f?f.join(""):void 0;return u.__viewerImageDiffCache===g?(s("Element change detected, but image(