react-iiif-vault 1.5.4 → 1.5.6
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.
- package/dist/bundle.d.ts +1 -1
- package/dist/bundle.global.js +18 -18
- package/dist/canvas-panel.cjs +5 -5
- package/dist/canvas-panel.d.cts +1 -1
- package/dist/canvas-panel.d.ts +1 -1
- package/dist/canvas-panel.js +1 -1
- package/dist/chunk-H3DSFUR2.js +48 -0
- package/dist/{index-CMSk5Jbz.d.cts → index-BJveLrlu.d.cts} +1 -1
- package/dist/{index-CWeYvmxZ.d.ts → index-CrfymD6m.d.ts} +1 -1
- package/dist/index.cjs +5 -5
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1 -1
- package/package.json +2 -2
- package/dist/chunk-YF4SEMKW.js +0 -48
package/dist/bundle.global.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
"use strict";var ReactIIIFVault=(()=>{var Lb=Object.create;var Fl=Object.defineProperty;var zb=Object.getOwnPropertyDescriptor;var Fb=Object.getOwnPropertyNames;var Nb=Object.getPrototypeOf,Bb=Object.prototype.hasOwnProperty;var St=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Db=(e,t)=>{for(var i in t)Fl(e,i,{get:t[i],enumerable:!0})},_y=(e,t,i,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Fb(t))!Bb.call(e,r)&&r!==i&&Fl(e,r,{get:()=>t[r],enumerable:!(n=zb(t,r))||n.enumerable});return e};var R=(e,t,i)=>(i=e!=null?Lb(Nb(e)):{},_y(t||!e||!e.__esModule?Fl(i,"default",{value:e,enumerable:!0}):i,e)),jb=e=>_y(Fl({},"__esModule",{value:!0}),e);var q=St((eT,My)=>{"use strict";My.exports=React});var Hy=St((oT,Wy)=>{"use strict";var By=!1,Nr,gh,yh,Dl,jl,Dy,Vl,vh,xh,Sh,jy,wh,bh,Vy,Uy;function fi(){if(!By){By=!0;var e=navigator.userAgent,t=/(?:MSIE.(\d+\.\d+))|(?:(?:Firefox|GranParadiso|Iceweasel).(\d+\.\d+))|(?:Opera(?:.+Version.|.)(\d+\.\d+))|(?:AppleWebKit.(\d+(?:\.\d+)?))|(?:Trident\/\d+\.\d+.*rv:(\d+\.\d+))/.exec(e),i=/(Mac OS X)|(Windows)|(Linux)/.exec(e);if(wh=/\b(iPhone|iP[ao]d)/.exec(e),bh=/\b(iP[ao]d)/.exec(e),Sh=/Android/i.exec(e),Vy=/FBAN\/\w+;/i.exec(e),Uy=/Mobile/i.exec(e),jy=!!/Win64/.exec(e),t){Nr=t[1]?parseFloat(t[1]):t[5]?parseFloat(t[5]):NaN,Nr&&document&&document.documentMode&&(Nr=document.documentMode);var n=/(?:Trident\/(\d+.\d+))/.exec(e);Dy=n?parseFloat(n[1])+4:Nr,gh=t[2]?parseFloat(t[2]):NaN,yh=t[3]?parseFloat(t[3]):NaN,Dl=t[4]?parseFloat(t[4]):NaN,Dl?(t=/(?:Chrome\/(\d+\.\d+))/.exec(e),jl=t&&t[1]?parseFloat(t[1]):NaN):jl=NaN}else Nr=gh=yh=jl=Dl=NaN;if(i){if(i[1]){var r=/(?:Mac OS X (\d+(?:[._]\d+)?))/.exec(e);Vl=r?parseFloat(r[1].replace("_",".")):!0}else Vl=!1;vh=!!i[2],xh=!!i[3]}else Vl=vh=xh=!1}}var Ch={ie:function(){return fi()||Nr},ieCompatibilityMode:function(){return fi()||Dy>Nr},ie64:function(){return Ch.ie()&&jy},firefox:function(){return fi()||gh},opera:function(){return fi()||yh},webkit:function(){return fi()||Dl},safari:function(){return Ch.webkit()},chrome:function(){return fi()||jl},windows:function(){return fi()||vh},osx:function(){return fi()||Vl},linux:function(){return fi()||xh},iphone:function(){return fi()||wh},mobile:function(){return fi()||wh||bh||Sh||Uy},nativeApp:function(){return fi()||Vy},android:function(){return fi()||Sh},ipad:function(){return fi()||bh}};Wy.exports=Ch});var Qy=St((sT,qy)=>{"use strict";var Ul=!!(typeof window<"u"&&window.document&&window.document.createElement),qb={canUseDOM:Ul,canUseWorkers:typeof Worker<"u",canUseEventListeners:Ul&&!!(window.addEventListener||window.attachEvent),canUseViewport:Ul&&!!window.screen,isInWorker:!Ul};qy.exports=qb});var Xy=St((aT,Yy)=>{"use strict";var $y=Qy(),Gy;$y.canUseDOM&&(Gy=document.implementation&&document.implementation.hasFeature&&document.implementation.hasFeature("","")!==!0);function Qb(e,t){if(!$y.canUseDOM||t&&!("addEventListener"in document))return!1;var i="on"+e,n=i in document;if(!n){var r=document.createElement("div");r.setAttribute(i,"return;"),n=typeof r[i]=="function"}return!n&&Gy&&e==="wheel"&&(n=document.implementation.hasFeature("Events.wheel","3.0")),n}Yy.exports=Qb});var iv=St((lT,tv)=>{"use strict";var $b=Hy(),Gb=Xy(),Ky=10,Zy=40,Jy=800;function ev(e){var t=0,i=0,n=0,r=0;return"detail"in e&&(i=e.detail),"wheelDelta"in e&&(i=-e.wheelDelta/120),"wheelDeltaY"in e&&(i=-e.wheelDeltaY/120),"wheelDeltaX"in e&&(t=-e.wheelDeltaX/120),"axis"in e&&e.axis===e.HORIZONTAL_AXIS&&(t=i,i=0),n=t*Ky,r=i*Ky,"deltaY"in e&&(r=e.deltaY),"deltaX"in e&&(n=e.deltaX),(n||r)&&e.deltaMode&&(e.deltaMode==1?(n*=Zy,r*=Zy):(n*=Jy,r*=Jy)),n&&!t&&(t=n<1?-1:1),r&&!i&&(i=r<1?-1:1),{spinX:t,spinY:i,pixelX:n,pixelY:r}}ev.getEventType=function(){return $b.firefox()?"DOMMouseScroll":Gb("wheel")?"wheel":"mousewheel"};tv.exports=ev});var rv=St((uT,nv)=>{"use strict";nv.exports=iv()});var sv=St(Wl=>{"use strict";var Yb=q(),Xb=Symbol.for("react.element"),Kb=Symbol.for("react.fragment"),Zb=Object.prototype.hasOwnProperty,Jb=Yb.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,eC={key:!0,ref:!0,__self:!0,__source:!0};function ov(e,t,i){var n,r={},a=null,l=null;i!==void 0&&(a=""+i),t.key!==void 0&&(a=""+t.key),t.ref!==void 0&&(l=t.ref);for(n in t)Zb.call(t,n)&&!eC.hasOwnProperty(n)&&(r[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps,t)r[n]===void 0&&(r[n]=t[n]);return{$$typeof:Xb,type:e,key:a,ref:l,props:r,_owner:Jb.current}}Wl.Fragment=Kb;Wl.jsx=ov;Wl.jsxs=ov});var B=St((dT,av)=>{"use strict";av.exports=sv()});var uv=St((hT,lv)=>{"use strict";function Ph(e,t,i){var n,r,a,l,c;t==null&&(t=100);function p(){var h=Date.now()-l;h<t&&h>=0?n=setTimeout(p,t-h):(n=null,i||(c=e.apply(a,r),a=r=null))}var m=function(){a=this,r=arguments,l=Date.now();var h=i&&!n;return n||(n=setTimeout(p,t)),h&&(c=e.apply(a,r),a=r=null),c};return m.clear=function(){n&&(clearTimeout(n),n=null)},m.flush=function(){n&&(c=e.apply(a,r),a=r=null,clearTimeout(n),n=null)},m}Ph.debounce=Ph;lv.exports=Ph});var Sv=St(Ye=>{"use strict";function Th(e,t){var i=e.length;e.push(t);e:for(;0<i;){var n=i-1>>>1,r=e[n];if(0<ql(r,t))e[n]=t,e[i]=r,i=n;else break e}}function Ji(e){return e.length===0?null:e[0]}function $l(e){if(e.length===0)return null;var t=e[0],i=e.pop();if(i!==t){e[0]=i;e:for(var n=0,r=e.length,a=r>>>1;n<a;){var l=2*(n+1)-1,c=e[l],p=l+1,m=e[p];if(0>ql(c,i))p<r&&0>ql(m,c)?(e[n]=m,e[p]=i,n=p):(e[n]=c,e[l]=i,n=l);else if(p<r&&0>ql(m,i))e[n]=m,e[p]=i,n=p;else break e}}return t}function ql(e,t){var i=e.sortIndex-t.sortIndex;return i!==0?i:e.id-t.id}typeof performance=="object"&&typeof performance.now=="function"?(dv=performance,Ye.unstable_now=function(){return dv.now()}):(Ah=Date,hv=Ah.now(),Ye.unstable_now=function(){return Ah.now()-hv});var dv,Ah,hv,yn=[],ar=[],oC=1,Bi=null,Yt=3,Gl=!1,Br=!1,Bs=!1,mv=typeof setTimeout=="function"?setTimeout:null,gv=typeof clearTimeout=="function"?clearTimeout:null,pv=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function _h(e){for(var t=Ji(ar);t!==null;){if(t.callback===null)$l(ar);else if(t.startTime<=e)$l(ar),t.sortIndex=t.expirationTime,Th(yn,t);else break;t=Ji(ar)}}function Mh(e){if(Bs=!1,_h(e),!Br)if(Ji(yn)!==null)Br=!0,Oh(kh);else{var t=Ji(ar);t!==null&&Lh(Mh,t.startTime-e)}}function kh(e,t){Br=!1,Bs&&(Bs=!1,gv(Ds),Ds=-1),Gl=!0;var i=Yt;try{for(_h(t),Bi=Ji(yn);Bi!==null&&(!(Bi.expirationTime>t)||e&&!xv());){var n=Bi.callback;if(typeof n=="function"){Bi.callback=null,Yt=Bi.priorityLevel;var r=n(Bi.expirationTime<=t);t=Ye.unstable_now(),typeof r=="function"?Bi.callback=r:Bi===Ji(yn)&&$l(yn),_h(t)}else $l(yn);Bi=Ji(yn)}if(Bi!==null)var a=!0;else{var l=Ji(ar);l!==null&&Lh(Mh,l.startTime-t),a=!1}return a}finally{Bi=null,Yt=i,Gl=!1}}var Yl=!1,Ql=null,Ds=-1,yv=5,vv=-1;function xv(){return!(Ye.unstable_now()-vv<yv)}function Ih(){if(Ql!==null){var e=Ye.unstable_now();vv=e;var t=!0;try{t=Ql(!0,e)}finally{t?Ns():(Yl=!1,Ql=null)}}else Yl=!1}var Ns;typeof pv=="function"?Ns=function(){pv(Ih)}:typeof MessageChannel<"u"?(Rh=new MessageChannel,fv=Rh.port2,Rh.port1.onmessage=Ih,Ns=function(){fv.postMessage(null)}):Ns=function(){mv(Ih,0)};var Rh,fv;function Oh(e){Ql=e,Yl||(Yl=!0,Ns())}function Lh(e,t){Ds=mv(function(){e(Ye.unstable_now())},t)}Ye.unstable_IdlePriority=5;Ye.unstable_ImmediatePriority=1;Ye.unstable_LowPriority=4;Ye.unstable_NormalPriority=3;Ye.unstable_Profiling=null;Ye.unstable_UserBlockingPriority=2;Ye.unstable_cancelCallback=function(e){e.callback=null};Ye.unstable_continueExecution=function(){Br||Gl||(Br=!0,Oh(kh))};Ye.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):yv=0<e?Math.floor(1e3/e):5};Ye.unstable_getCurrentPriorityLevel=function(){return Yt};Ye.unstable_getFirstCallbackNode=function(){return Ji(yn)};Ye.unstable_next=function(e){switch(Yt){case 1:case 2:case 3:var t=3;break;default:t=Yt}var i=Yt;Yt=t;try{return e()}finally{Yt=i}};Ye.unstable_pauseExecution=function(){};Ye.unstable_requestPaint=function(){};Ye.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var i=Yt;Yt=e;try{return t()}finally{Yt=i}};Ye.unstable_scheduleCallback=function(e,t,i){var n=Ye.unstable_now();switch(typeof i=="object"&&i!==null?(i=i.delay,i=typeof i=="number"&&0<i?n+i:n):i=n,e){case 1:var r=-1;break;case 2:r=250;break;case 5:r=1073741823;break;case 4:r=1e4;break;default:r=5e3}return r=i+r,e={id:oC++,callback:t,priorityLevel:e,startTime:i,expirationTime:r,sortIndex:-1},i>n?(e.sortIndex=i,Th(ar,e),Ji(yn)===null&&e===Ji(ar)&&(Bs?(gv(Ds),Ds=-1):Bs=!0,Lh(Mh,i-n))):(e.sortIndex=r,Th(yn,e),Br||Gl||(Br=!0,Oh(kh))),e};Ye.unstable_shouldYield=xv;Ye.unstable_wrapCallback=function(e){var t=Yt;return function(){var i=Yt;Yt=t;try{return e.apply(this,arguments)}finally{Yt=i}}}});var bv=St((gT,wv)=>{"use strict";wv.exports=Sv()});var Pv=St((yT,Cv)=>{"use strict";Cv.exports=function(t){var i={},n=q(),r=bv(),a=Object.assign;function l(o){for(var s="https://reactjs.org/docs/error-decoder.html?invariant="+o,u=1;u<arguments.length;u++)s+="&args[]="+encodeURIComponent(arguments[u]);return"Minified React error #"+o+"; visit "+s+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var c=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,p=Symbol.for("react.element"),m=Symbol.for("react.portal"),h=Symbol.for("react.fragment"),y=Symbol.for("react.strict_mode"),S=Symbol.for("react.profiler"),w=Symbol.for("react.provider"),v=Symbol.for("react.context"),x=Symbol.for("react.forward_ref"),A=Symbol.for("react.suspense"),C=Symbol.for("react.suspense_list"),I=Symbol.for("react.memo"),E=Symbol.for("react.lazy");Symbol.for("react.scope"),Symbol.for("react.debug_trace_mode");var L=Symbol.for("react.offscreen");Symbol.for("react.legacy_hidden"),Symbol.for("react.cache"),Symbol.for("react.tracing_marker");var z=Symbol.iterator;function M(o){return o===null||typeof o!="object"?null:(o=z&&o[z]||o["@@iterator"],typeof o=="function"?o:null)}function Q(o){if(o==null)return null;if(typeof o=="function")return o.displayName||o.name||null;if(typeof o=="string")return o;switch(o){case h:return"Fragment";case m:return"Portal";case S:return"Profiler";case y:return"StrictMode";case A:return"Suspense";case C:return"SuspenseList"}if(typeof o=="object")switch(o.$$typeof){case v:return(o.displayName||"Context")+".Consumer";case w:return(o._context.displayName||"Context")+".Provider";case x:var s=o.render;return o=o.displayName,o||(o=s.displayName||s.name||"",o=o!==""?"ForwardRef("+o+")":"ForwardRef"),o;case I:return s=o.displayName||null,s!==null?s:Q(o.type)||"Memo";case E:s=o._payload,o=o._init;try{return Q(o(s))}catch{}}return null}function V(o){var s=o.type;switch(o.tag){case 24:return"Cache";case 9:return(s.displayName||"Context")+".Consumer";case 10:return(s._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return o=s.render,o=o.displayName||o.name||"",s.displayName||(o!==""?"ForwardRef("+o+")":"ForwardRef");case 7:return"Fragment";case 5:return s;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return Q(s);case 8:return s===y?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof s=="function")return s.displayName||s.name||null;if(typeof s=="string")return s}return null}function J(o){var s=o,u=o;if(o.alternate)for(;s.return;)s=s.return;else{o=s;do s=o,s.flags&4098&&(u=s.return),o=s.return;while(o)}return s.tag===3?u:null}function U(o){if(J(o)!==o)throw Error(l(188))}function W(o){var s=o.alternate;if(!s){if(s=J(o),s===null)throw Error(l(188));return s!==o?null:o}for(var u=o,d=s;;){var f=u.return;if(f===null)break;var g=f.alternate;if(g===null){if(d=f.return,d!==null){u=d;continue}break}if(f.child===g.child){for(g=f.child;g;){if(g===u)return U(f),o;if(g===d)return U(f),s;g=g.sibling}throw Error(l(188))}if(u.return!==d.return)u=f,d=g;else{for(var b=!1,T=f.child;T;){if(T===u){b=!0,u=f,d=g;break}if(T===d){b=!0,d=f,u=g;break}T=T.sibling}if(!b){for(T=g.child;T;){if(T===u){b=!0,u=g,d=f;break}if(T===d){b=!0,d=g,u=f;break}T=T.sibling}if(!b)throw Error(l(189))}}if(u.alternate!==d)throw Error(l(190))}if(u.tag!==3)throw Error(l(188));return u.stateNode.current===u?o:s}function ee(o){return o=W(o),o!==null?Me(o):null}function Me(o){if(o.tag===5||o.tag===6)return o;for(o=o.child;o!==null;){var s=Me(o);if(s!==null)return s;o=o.sibling}return null}function pe(o){if(o.tag===5||o.tag===6)return o;for(o=o.child;o!==null;){if(o.tag!==4){var s=pe(o);if(s!==null)return s}o=o.sibling}return null}var Re=Array.isArray,ke=t.getPublicInstance,He=t.getRootHostContext,qe=t.getChildHostContext,$=t.prepareForCommit,ve=t.resetAfterCommit,it=t.createInstance,Qe=t.appendInitialChild,$e=t.finalizeInitialChildren,N=t.prepareUpdate,G=t.shouldSetTextContent,de=t.createTextInstance,ye=t.scheduleTimeout,ge=t.cancelTimeout,Ve=t.noTimeout,ze=t.isPrimaryRenderer,Pe=t.supportsMutation,ne=t.supportsPersistence,he=t.supportsHydration,Oe=t.getInstanceFromNode,ot=t.preparePortalMount,Ri=t.getCurrentEventPriority,Dt=t.detachDeletedInstance,Wt=t.supportsMicrotasks,ps=t.scheduleMicrotask,Ti=t.supportsTestSelectors,Xc=t.findFiberRoot,Ua=t.getBoundingRect,fs=t.getTextContent,ln=t.isHiddenSubtree,ms=t.matchAccessibilityRole,Kc=t.setFocusIfFocusable,Y=t.setupIntersectionObserver,k=t.appendChild,X=t.appendChildToContainer,K=t.commitTextUpdate,be=t.commitMount,Ae=t.commitUpdate,je=t.insertBefore,j=t.insertInContainerBefore,H=t.removeChild,ue=t.removeChildFromContainer,oe=t.resetTextContent,se=t.hideInstance,Ie=t.hideTextInstance,Xe=t.unhideInstance,Ke=t.unhideTextInstance,Ue=t.clearContainer,Et=t.cloneInstance,st=t.createContainerChildSet,At=t.appendChildToContainerChildSet,Gn=t.finalizeContainerChildren,Qi=t.replaceContainerChildren,Ar=t.cloneHiddenInstance,gs=t.cloneHiddenTextInstance,Wa=t.canHydrateInstance,P1=t.canHydrateTextInstance,E1=t.canHydrateSuspenseInstance,$m=t.isSuspenseInstancePending,Zc=t.isSuspenseInstanceFallback,A1=t.getSuspenseInstanceFallbackErrorDetails,I1=t.registerSuspenseInstanceRetry,Ha=t.getNextHydratableSibling,R1=t.getFirstHydratableChild,T1=t.getFirstHydratableChildWithinContainer,_1=t.getFirstHydratableChildWithinSuspenseInstance,M1=t.hydrateInstance,k1=t.hydrateTextInstance,O1=t.hydrateSuspenseInstance,L1=t.getNextHydratableInstanceAfterSuspenseInstance,z1=t.commitHydratedContainer,F1=t.commitHydratedSuspenseInstance,N1=t.clearSuspenseBoundary,B1=t.clearSuspenseBoundaryFromContainer,D1=t.shouldDeleteUnhydratedTailInstances,j1=t.didNotMatchHydratedContainerTextInstance,V1=t.didNotMatchHydratedTextInstance,Jc;function ys(o){if(Jc===void 0)try{throw Error()}catch(u){var s=u.stack.trim().match(/\n( *(at )?)/);Jc=s&&s[1]||""}return`
|
|
1
|
+
"use strict";var ReactIIIFVault=(()=>{var Ob=Object.create;var Fl=Object.defineProperty;var Lb=Object.getOwnPropertyDescriptor;var zb=Object.getOwnPropertyNames;var Fb=Object.getPrototypeOf,Nb=Object.prototype.hasOwnProperty;var Tt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Bb=(e,t)=>{for(var i in t)Fl(e,i,{get:t[i],enumerable:!0})},Ry=(e,t,i,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of zb(t))!Nb.call(e,r)&&r!==i&&Fl(e,r,{get:()=>t[r],enumerable:!(n=Lb(t,r))||n.enumerable});return e};var T=(e,t,i)=>(i=e!=null?Ob(Fb(e)):{},Ry(t||!e||!e.__esModule?Fl(i,"default",{value:e,enumerable:!0}):i,e)),Db=e=>Ry(Fl({},"__esModule",{value:!0}),e);var H=Tt((eR,_y)=>{"use strict";_y.exports=React});var Wy=Tt((oR,Uy)=>{"use strict";var Ny=!1,Nr,gh,yh,Dl,jl,By,Vl,vh,xh,Sh,Dy,wh,bh,jy,Vy;function fi(){if(!Ny){Ny=!0;var e=navigator.userAgent,t=/(?:MSIE.(\d+\.\d+))|(?:(?:Firefox|GranParadiso|Iceweasel).(\d+\.\d+))|(?:Opera(?:.+Version.|.)(\d+\.\d+))|(?:AppleWebKit.(\d+(?:\.\d+)?))|(?:Trident\/\d+\.\d+.*rv:(\d+\.\d+))/.exec(e),i=/(Mac OS X)|(Windows)|(Linux)/.exec(e);if(wh=/\b(iPhone|iP[ao]d)/.exec(e),bh=/\b(iP[ao]d)/.exec(e),Sh=/Android/i.exec(e),jy=/FBAN\/\w+;/i.exec(e),Vy=/Mobile/i.exec(e),Dy=!!/Win64/.exec(e),t){Nr=t[1]?parseFloat(t[1]):t[5]?parseFloat(t[5]):NaN,Nr&&document&&document.documentMode&&(Nr=document.documentMode);var n=/(?:Trident\/(\d+.\d+))/.exec(e);By=n?parseFloat(n[1])+4:Nr,gh=t[2]?parseFloat(t[2]):NaN,yh=t[3]?parseFloat(t[3]):NaN,Dl=t[4]?parseFloat(t[4]):NaN,Dl?(t=/(?:Chrome\/(\d+\.\d+))/.exec(e),jl=t&&t[1]?parseFloat(t[1]):NaN):jl=NaN}else Nr=gh=yh=jl=Dl=NaN;if(i){if(i[1]){var r=/(?:Mac OS X (\d+(?:[._]\d+)?))/.exec(e);Vl=r?parseFloat(r[1].replace("_",".")):!0}else Vl=!1;vh=!!i[2],xh=!!i[3]}else Vl=vh=xh=!1}}var Ch={ie:function(){return fi()||Nr},ieCompatibilityMode:function(){return fi()||By>Nr},ie64:function(){return Ch.ie()&&Dy},firefox:function(){return fi()||gh},opera:function(){return fi()||yh},webkit:function(){return fi()||Dl},safari:function(){return Ch.webkit()},chrome:function(){return fi()||jl},windows:function(){return fi()||vh},osx:function(){return fi()||Vl},linux:function(){return fi()||xh},iphone:function(){return fi()||wh},mobile:function(){return fi()||wh||bh||Sh||Vy},nativeApp:function(){return fi()||jy},android:function(){return fi()||Sh},ipad:function(){return fi()||bh}};Uy.exports=Ch});var qy=Tt((sR,Hy)=>{"use strict";var Ul=!!(typeof window<"u"&&window.document&&window.document.createElement),Hb={canUseDOM:Ul,canUseWorkers:typeof Worker<"u",canUseEventListeners:Ul&&!!(window.addEventListener||window.attachEvent),canUseViewport:Ul&&!!window.screen,isInWorker:!Ul};Hy.exports=Hb});var Yy=Tt((aR,Gy)=>{"use strict";var Qy=qy(),$y;Qy.canUseDOM&&($y=document.implementation&&document.implementation.hasFeature&&document.implementation.hasFeature("","")!==!0);function qb(e,t){if(!Qy.canUseDOM||t&&!("addEventListener"in document))return!1;var i="on"+e,n=i in document;if(!n){var r=document.createElement("div");r.setAttribute(i,"return;"),n=typeof r[i]=="function"}return!n&&$y&&e==="wheel"&&(n=document.implementation.hasFeature("Events.wheel","3.0")),n}Gy.exports=qb});var tv=Tt((lR,ev)=>{"use strict";var Qb=Wy(),$b=Yy(),Xy=10,Ky=40,Zy=800;function Jy(e){var t=0,i=0,n=0,r=0;return"detail"in e&&(i=e.detail),"wheelDelta"in e&&(i=-e.wheelDelta/120),"wheelDeltaY"in e&&(i=-e.wheelDeltaY/120),"wheelDeltaX"in e&&(t=-e.wheelDeltaX/120),"axis"in e&&e.axis===e.HORIZONTAL_AXIS&&(t=i,i=0),n=t*Xy,r=i*Xy,"deltaY"in e&&(r=e.deltaY),"deltaX"in e&&(n=e.deltaX),(n||r)&&e.deltaMode&&(e.deltaMode==1?(n*=Ky,r*=Ky):(n*=Zy,r*=Zy)),n&&!t&&(t=n<1?-1:1),r&&!i&&(i=r<1?-1:1),{spinX:t,spinY:i,pixelX:n,pixelY:r}}Jy.getEventType=function(){return Qb.firefox()?"DOMMouseScroll":$b("wheel")?"wheel":"mousewheel"};ev.exports=Jy});var nv=Tt((uR,iv)=>{"use strict";iv.exports=tv()});var ov=Tt(Wl=>{"use strict";var Gb=H(),Yb=Symbol.for("react.element"),Xb=Symbol.for("react.fragment"),Kb=Object.prototype.hasOwnProperty,Zb=Gb.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,Jb={key:!0,ref:!0,__self:!0,__source:!0};function rv(e,t,i){var n,r={},a=null,l=null;i!==void 0&&(a=""+i),t.key!==void 0&&(a=""+t.key),t.ref!==void 0&&(l=t.ref);for(n in t)Kb.call(t,n)&&!Jb.hasOwnProperty(n)&&(r[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps,t)r[n]===void 0&&(r[n]=t[n]);return{$$typeof:Yb,type:e,key:a,ref:l,props:r,_owner:Zb.current}}Wl.Fragment=Xb;Wl.jsx=rv;Wl.jsxs=rv});var B=Tt((dR,sv)=>{"use strict";sv.exports=ov()});var vv=Tt(Ye=>{"use strict";function Ih(e,t){var i=e.length;e.push(t);e:for(;0<i;){var n=i-1>>>1,r=e[n];if(0<ql(r,t))e[n]=t,e[i]=r,i=n;else break e}}function Ji(e){return e.length===0?null:e[0]}function $l(e){if(e.length===0)return null;var t=e[0],i=e.pop();if(i!==t){e[0]=i;e:for(var n=0,r=e.length,a=r>>>1;n<a;){var l=2*(n+1)-1,c=e[l],p=l+1,m=e[p];if(0>ql(c,i))p<r&&0>ql(m,c)?(e[n]=m,e[p]=i,n=p):(e[n]=c,e[l]=i,n=l);else if(p<r&&0>ql(m,i))e[n]=m,e[p]=i,n=p;else break e}}return t}function ql(e,t){var i=e.sortIndex-t.sortIndex;return i!==0?i:e.id-t.id}typeof performance=="object"&&typeof performance.now=="function"?(uv=performance,Ye.unstable_now=function(){return uv.now()}):(Ph=Date,cv=Ph.now(),Ye.unstable_now=function(){return Ph.now()-cv});var uv,Ph,cv,yn=[],ar=[],rC=1,Bi=null,Yt=3,Gl=!1,Br=!1,Ds=!1,pv=typeof setTimeout=="function"?setTimeout:null,fv=typeof clearTimeout=="function"?clearTimeout:null,dv=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function Th(e){for(var t=Ji(ar);t!==null;){if(t.callback===null)$l(ar);else if(t.startTime<=e)$l(ar),t.sortIndex=t.expirationTime,Ih(yn,t);else break;t=Ji(ar)}}function Rh(e){if(Ds=!1,Th(e),!Br)if(Ji(yn)!==null)Br=!0,Mh(_h);else{var t=Ji(ar);t!==null&&kh(Rh,t.startTime-e)}}function _h(e,t){Br=!1,Ds&&(Ds=!1,fv(js),js=-1),Gl=!0;var i=Yt;try{for(Th(t),Bi=Ji(yn);Bi!==null&&(!(Bi.expirationTime>t)||e&&!yv());){var n=Bi.callback;if(typeof n=="function"){Bi.callback=null,Yt=Bi.priorityLevel;var r=n(Bi.expirationTime<=t);t=Ye.unstable_now(),typeof r=="function"?Bi.callback=r:Bi===Ji(yn)&&$l(yn),Th(t)}else $l(yn);Bi=Ji(yn)}if(Bi!==null)var a=!0;else{var l=Ji(ar);l!==null&&kh(Rh,l.startTime-t),a=!1}return a}finally{Bi=null,Yt=i,Gl=!1}}var Yl=!1,Ql=null,js=-1,mv=5,gv=-1;function yv(){return!(Ye.unstable_now()-gv<mv)}function Eh(){if(Ql!==null){var e=Ye.unstable_now();gv=e;var t=!0;try{t=Ql(!0,e)}finally{t?Bs():(Yl=!1,Ql=null)}}else Yl=!1}var Bs;typeof dv=="function"?Bs=function(){dv(Eh)}:typeof MessageChannel<"u"?(Ah=new MessageChannel,hv=Ah.port2,Ah.port1.onmessage=Eh,Bs=function(){hv.postMessage(null)}):Bs=function(){pv(Eh,0)};var Ah,hv;function Mh(e){Ql=e,Yl||(Yl=!0,Bs())}function kh(e,t){js=pv(function(){e(Ye.unstable_now())},t)}Ye.unstable_IdlePriority=5;Ye.unstable_ImmediatePriority=1;Ye.unstable_LowPriority=4;Ye.unstable_NormalPriority=3;Ye.unstable_Profiling=null;Ye.unstable_UserBlockingPriority=2;Ye.unstable_cancelCallback=function(e){e.callback=null};Ye.unstable_continueExecution=function(){Br||Gl||(Br=!0,Mh(_h))};Ye.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):mv=0<e?Math.floor(1e3/e):5};Ye.unstable_getCurrentPriorityLevel=function(){return Yt};Ye.unstable_getFirstCallbackNode=function(){return Ji(yn)};Ye.unstable_next=function(e){switch(Yt){case 1:case 2:case 3:var t=3;break;default:t=Yt}var i=Yt;Yt=t;try{return e()}finally{Yt=i}};Ye.unstable_pauseExecution=function(){};Ye.unstable_requestPaint=function(){};Ye.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var i=Yt;Yt=e;try{return t()}finally{Yt=i}};Ye.unstable_scheduleCallback=function(e,t,i){var n=Ye.unstable_now();switch(typeof i=="object"&&i!==null?(i=i.delay,i=typeof i=="number"&&0<i?n+i:n):i=n,e){case 1:var r=-1;break;case 2:r=250;break;case 5:r=1073741823;break;case 4:r=1e4;break;default:r=5e3}return r=i+r,e={id:rC++,callback:t,priorityLevel:e,startTime:i,expirationTime:r,sortIndex:-1},i>n?(e.sortIndex=i,Ih(ar,e),Ji(yn)===null&&e===Ji(ar)&&(Ds?(fv(js),js=-1):Ds=!0,kh(Rh,i-n))):(e.sortIndex=r,Ih(yn,e),Br||Gl||(Br=!0,Mh(_h))),e};Ye.unstable_shouldYield=yv;Ye.unstable_wrapCallback=function(e){var t=Yt;return function(){var i=Yt;Yt=t;try{return e.apply(this,arguments)}finally{Yt=i}}}});var Sv=Tt((mR,xv)=>{"use strict";xv.exports=vv()});var bv=Tt((gR,wv)=>{"use strict";wv.exports=function(t){var i={},n=H(),r=Sv(),a=Object.assign;function l(o){for(var s="https://reactjs.org/docs/error-decoder.html?invariant="+o,u=1;u<arguments.length;u++)s+="&args[]="+encodeURIComponent(arguments[u]);return"Minified React error #"+o+"; visit "+s+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var c=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,p=Symbol.for("react.element"),m=Symbol.for("react.portal"),h=Symbol.for("react.fragment"),y=Symbol.for("react.strict_mode"),S=Symbol.for("react.profiler"),w=Symbol.for("react.provider"),v=Symbol.for("react.context"),x=Symbol.for("react.forward_ref"),A=Symbol.for("react.suspense"),C=Symbol.for("react.suspense_list"),I=Symbol.for("react.memo"),E=Symbol.for("react.lazy");Symbol.for("react.scope"),Symbol.for("react.debug_trace_mode");var O=Symbol.for("react.offscreen");Symbol.for("react.legacy_hidden"),Symbol.for("react.cache"),Symbol.for("react.tracing_marker");var L=Symbol.iterator;function M(o){return o===null||typeof o!="object"?null:(o=L&&o[L]||o["@@iterator"],typeof o=="function"?o:null)}function Q(o){if(o==null)return null;if(typeof o=="function")return o.displayName||o.name||null;if(typeof o=="string")return o;switch(o){case h:return"Fragment";case m:return"Portal";case S:return"Profiler";case y:return"StrictMode";case A:return"Suspense";case C:return"SuspenseList"}if(typeof o=="object")switch(o.$$typeof){case v:return(o.displayName||"Context")+".Consumer";case w:return(o._context.displayName||"Context")+".Provider";case x:var s=o.render;return o=o.displayName,o||(o=s.displayName||s.name||"",o=o!==""?"ForwardRef("+o+")":"ForwardRef"),o;case I:return s=o.displayName||null,s!==null?s:Q(o.type)||"Memo";case E:s=o._payload,o=o._init;try{return Q(o(s))}catch{}}return null}function V(o){var s=o.type;switch(o.tag){case 24:return"Cache";case 9:return(s.displayName||"Context")+".Consumer";case 10:return(s._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return o=s.render,o=o.displayName||o.name||"",s.displayName||(o!==""?"ForwardRef("+o+")":"ForwardRef");case 7:return"Fragment";case 5:return s;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return Q(s);case 8:return s===y?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof s=="function")return s.displayName||s.name||null;if(typeof s=="string")return s}return null}function J(o){var s=o,u=o;if(o.alternate)for(;s.return;)s=s.return;else{o=s;do s=o,s.flags&4098&&(u=s.return),o=s.return;while(o)}return s.tag===3?u:null}function U(o){if(J(o)!==o)throw Error(l(188))}function q(o){var s=o.alternate;if(!s){if(s=J(o),s===null)throw Error(l(188));return s!==o?null:o}for(var u=o,d=s;;){var f=u.return;if(f===null)break;var g=f.alternate;if(g===null){if(d=f.return,d!==null){u=d;continue}break}if(f.child===g.child){for(g=f.child;g;){if(g===u)return U(f),o;if(g===d)return U(f),s;g=g.sibling}throw Error(l(188))}if(u.return!==d.return)u=f,d=g;else{for(var b=!1,R=f.child;R;){if(R===u){b=!0,u=f,d=g;break}if(R===d){b=!0,d=f,u=g;break}R=R.sibling}if(!b){for(R=g.child;R;){if(R===u){b=!0,u=g,d=f;break}if(R===d){b=!0,d=g,u=f;break}R=R.sibling}if(!b)throw Error(l(189))}}if(u.alternate!==d)throw Error(l(190))}if(u.tag!==3)throw Error(l(188));return u.stateNode.current===u?o:s}function ee(o){return o=q(o),o!==null?Me(o):null}function Me(o){if(o.tag===5||o.tag===6)return o;for(o=o.child;o!==null;){var s=Me(o);if(s!==null)return s;o=o.sibling}return null}function pe(o){if(o.tag===5||o.tag===6)return o;for(o=o.child;o!==null;){if(o.tag!==4){var s=pe(o);if(s!==null)return s}o=o.sibling}return null}var Te=Array.isArray,ke=t.getPublicInstance,He=t.getRootHostContext,qe=t.getChildHostContext,$=t.prepareForCommit,ve=t.resetAfterCommit,it=t.createInstance,Qe=t.appendInitialChild,$e=t.finalizeInitialChildren,N=t.prepareUpdate,G=t.shouldSetTextContent,de=t.createTextInstance,ye=t.scheduleTimeout,ge=t.cancelTimeout,Ve=t.noTimeout,ze=t.isPrimaryRenderer,Pe=t.supportsMutation,ne=t.supportsPersistence,he=t.supportsHydration,Oe=t.getInstanceFromNode,ot=t.preparePortalMount,Ti=t.getCurrentEventPriority,Dt=t.detachDeletedInstance,Wt=t.supportsMicrotasks,fs=t.scheduleMicrotask,Ri=t.supportsTestSelectors,Xc=t.findFiberRoot,Ua=t.getBoundingRect,ms=t.getTextContent,ln=t.isHiddenSubtree,gs=t.matchAccessibilityRole,Kc=t.setFocusIfFocusable,Y=t.setupIntersectionObserver,k=t.appendChild,X=t.appendChildToContainer,K=t.commitTextUpdate,be=t.commitMount,Ae=t.commitUpdate,je=t.insertBefore,j=t.insertInContainerBefore,W=t.removeChild,ue=t.removeChildFromContainer,oe=t.resetTextContent,se=t.hideInstance,Ie=t.hideTextInstance,Xe=t.unhideInstance,Ke=t.unhideTextInstance,Ue=t.clearContainer,Pt=t.cloneInstance,st=t.createContainerChildSet,Et=t.appendChildToContainerChildSet,Gn=t.finalizeContainerChildren,Qi=t.replaceContainerChildren,Ar=t.cloneHiddenInstance,ys=t.cloneHiddenTextInstance,Wa=t.canHydrateInstance,C1=t.canHydrateTextInstance,P1=t.canHydrateSuspenseInstance,Qm=t.isSuspenseInstancePending,Zc=t.isSuspenseInstanceFallback,E1=t.getSuspenseInstanceFallbackErrorDetails,A1=t.registerSuspenseInstanceRetry,Ha=t.getNextHydratableSibling,I1=t.getFirstHydratableChild,T1=t.getFirstHydratableChildWithinContainer,R1=t.getFirstHydratableChildWithinSuspenseInstance,_1=t.hydrateInstance,M1=t.hydrateTextInstance,k1=t.hydrateSuspenseInstance,O1=t.getNextHydratableInstanceAfterSuspenseInstance,L1=t.commitHydratedContainer,z1=t.commitHydratedSuspenseInstance,F1=t.clearSuspenseBoundary,N1=t.clearSuspenseBoundaryFromContainer,B1=t.shouldDeleteUnhydratedTailInstances,D1=t.didNotMatchHydratedContainerTextInstance,j1=t.didNotMatchHydratedTextInstance,Jc;function vs(o){if(Jc===void 0)try{throw Error()}catch(u){var s=u.stack.trim().match(/\n( *(at )?)/);Jc=s&&s[1]||""}return`
|
|
2
2
|
`+Jc+o}var ed=!1;function td(o,s){if(!o||ed)return"";ed=!0;var u=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(s)if(s=function(){throw Error()},Object.defineProperty(s.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(s,[])}catch(Z){var d=Z}Reflect.construct(o,[],s)}else{try{s.call()}catch(Z){d=Z}o.call(s.prototype)}else{try{throw Error()}catch(Z){d=Z}o()}}catch(Z){if(Z&&d&&typeof Z.stack=="string"){for(var f=Z.stack.split(`
|
|
3
3
|
`),g=d.stack.split(`
|
|
4
|
-
`),b=f.length-1,
|
|
5
|
-
`+f[b].replace(" at new "," at ");return o.displayName&&F.includes("<anonymous>")&&(F=F.replace("<anonymous>",o.displayName)),F}while(1<=b&&0<=T);break}}}finally{ed=!1,Error.prepareStackTrace=u}return(o=o?o.displayName||o.name:"")?ys(o):""}var U1=Object.prototype.hasOwnProperty,id=[],mo=-1;function Yn(o){return{current:o}}function Ze(o){0>mo||(o.current=id[mo],id[mo]=null,mo--)}function Ge(o,s){mo++,id[mo]=o.current,o.current=s}var Xn={},Ht=Yn(Xn),ai=Yn(!1),Ir=Xn;function go(o,s){var u=o.type.contextTypes;if(!u)return Xn;var d=o.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===s)return d.__reactInternalMemoizedMaskedChildContext;var f={},g;for(g in u)f[g]=s[g];return d&&(o=o.stateNode,o.__reactInternalMemoizedUnmaskedChildContext=s,o.__reactInternalMemoizedMaskedChildContext=f),f}function li(o){return o=o.childContextTypes,o!=null}function qa(){Ze(ai),Ze(Ht)}function Gm(o,s,u){if(Ht.current!==Xn)throw Error(l(168));Ge(Ht,s),Ge(ai,u)}function Ym(o,s,u){var d=o.stateNode;if(s=s.childContextTypes,typeof d.getChildContext!="function")return u;d=d.getChildContext();for(var f in d)if(!(f in s))throw Error(l(108,V(o)||"Unknown",f));return a({},u,d)}function Qa(o){return o=(o=o.stateNode)&&o.__reactInternalMemoizedMergedChildContext||Xn,Ir=Ht.current,Ge(Ht,o),Ge(ai,ai.current),!0}function Xm(o,s,u){var d=o.stateNode;if(!d)throw Error(l(169));u?(o=Ym(o,s,Ir),d.__reactInternalMemoizedMergedChildContext=o,Ze(ai),Ze(Ht),Ge(Ht,o)):Ze(ai),Ge(ai,u)}var $i=Math.clz32?Math.clz32:q1,W1=Math.log,H1=Math.LN2;function q1(o){return o>>>=0,o===0?32:31-(W1(o)/H1|0)|0}var $a=64,Ga=4194304;function vs(o){switch(o&-o){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return o&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return o&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return o}}function Ya(o,s){var u=o.pendingLanes;if(u===0)return 0;var d=0,f=o.suspendedLanes,g=o.pingedLanes,b=u&268435455;if(b!==0){var T=b&~f;T!==0?d=vs(T):(g&=b,g!==0&&(d=vs(g)))}else b=u&~f,b!==0?d=vs(b):g!==0&&(d=vs(g));if(d===0)return 0;if(s!==0&&s!==d&&!(s&f)&&(f=d&-d,g=s&-s,f>=g||f===16&&(g&4194240)!==0))return s;if(d&4&&(d|=u&16),s=o.entangledLanes,s!==0)for(o=o.entanglements,s&=d;0<s;)u=31-$i(s),f=1<<u,d|=o[u],s&=~f;return d}function Q1(o,s){switch(o){case 1:case 2:case 4:return s+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return s+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function $1(o,s){for(var u=o.suspendedLanes,d=o.pingedLanes,f=o.expirationTimes,g=o.pendingLanes;0<g;){var b=31-$i(g),T=1<<b,F=f[b];F===-1?(!(T&u)||T&d)&&(f[b]=Q1(T,s)):F<=s&&(o.expiredLanes|=T),g&=~T}}function nd(o){return o=o.pendingLanes&-1073741825,o!==0?o:o&1073741824?1073741824:0}function Km(){var o=$a;return $a<<=1,!($a&4194240)&&($a=64),o}function rd(o){for(var s=[],u=0;31>u;u++)s.push(o);return s}function xs(o,s,u){o.pendingLanes|=s,s!==536870912&&(o.suspendedLanes=0,o.pingedLanes=0),o=o.eventTimes,s=31-$i(s),o[s]=u}function G1(o,s){var u=o.pendingLanes&~s;o.pendingLanes=s,o.suspendedLanes=0,o.pingedLanes=0,o.expiredLanes&=s,o.mutableReadLanes&=s,o.entangledLanes&=s,s=o.entanglements;var d=o.eventTimes;for(o=o.expirationTimes;0<u;){var f=31-$i(u),g=1<<f;s[f]=0,d[f]=-1,o[f]=-1,u&=~g}}function od(o,s){var u=o.entangledLanes|=s;for(o=o.entanglements;u;){var d=31-$i(u),f=1<<d;f&s|o[d]&s&&(o[d]|=s),u&=~f}}var Fe=0;function Zm(o){return o&=-o,1<o?4<o?o&268435455?16:536870912:4:1}var sd=r.unstable_scheduleCallback,Jm=r.unstable_cancelCallback,Y1=r.unstable_shouldYield,X1=r.unstable_requestPaint,Mt=r.unstable_now,ad=r.unstable_ImmediatePriority,K1=r.unstable_UserBlockingPriority,ld=r.unstable_NormalPriority,Z1=r.unstable_IdlePriority,Xa=null,un=null;function J1(o){if(un&&typeof un.onCommitFiberRoot=="function")try{un.onCommitFiberRoot(Xa,o,void 0,(o.current.flags&128)===128)}catch{}}function eb(o,s){return o===s&&(o!==0||1/o===1/s)||o!==o&&s!==s}var Gi=typeof Object.is=="function"?Object.is:eb,An=null,Ka=!1,ud=!1;function eg(o){An===null?An=[o]:An.push(o)}function tb(o){Ka=!0,eg(o)}function cn(){if(!ud&&An!==null){ud=!0;var o=0,s=Fe;try{var u=An;for(Fe=1;o<u.length;o++){var d=u[o];do d=d(!0);while(d!==null)}An=null,Ka=!1}catch(f){throw An!==null&&(An=An.slice(o+1)),sd(ad,cn),f}finally{Fe=s,ud=!1}}return null}var yo=[],vo=0,Za=null,Ja=0,_i=[],Mi=0,Rr=null,In=1,Rn="";function Tr(o,s){yo[vo++]=Ja,yo[vo++]=Za,Za=o,Ja=s}function tg(o,s,u){_i[Mi++]=In,_i[Mi++]=Rn,_i[Mi++]=Rr,Rr=o;var d=In;o=Rn;var f=32-$i(d)-1;d&=~(1<<f),u+=1;var g=32-$i(s)+f;if(30<g){var b=f-f%5;g=(d&(1<<b)-1).toString(32),d>>=b,f-=b,In=1<<32-$i(s)+f|u<<f|d,Rn=g+o}else In=1<<g|u<<f|d,Rn=o}function cd(o){o.return!==null&&(Tr(o,1),tg(o,1,0))}function dd(o){for(;o===Za;)Za=yo[--vo],yo[vo]=null,Ja=yo[--vo],yo[vo]=null;for(;o===Rr;)Rr=_i[--Mi],_i[Mi]=null,Rn=_i[--Mi],_i[Mi]=null,In=_i[--Mi],_i[Mi]=null}var xi=null,ki=null,nt=!1,Ss=!1,Yi=null;function ig(o,s){var u=Ni(5,null,null,0);u.elementType="DELETED",u.stateNode=s,u.return=o,s=o.deletions,s===null?(o.deletions=[u],o.flags|=16):s.push(u)}function ng(o,s){switch(o.tag){case 5:return s=Wa(s,o.type,o.pendingProps),s!==null?(o.stateNode=s,xi=o,ki=R1(s),!0):!1;case 6:return s=P1(s,o.pendingProps),s!==null?(o.stateNode=s,xi=o,ki=null,!0):!1;case 13:if(s=E1(s),s!==null){var u=Rr!==null?{id:In,overflow:Rn}:null;return o.memoizedState={dehydrated:s,treeContext:u,retryLane:1073741824},u=Ni(18,null,null,0),u.stateNode=s,u.return=o,o.child=u,xi=o,ki=null,!0}return!1;default:return!1}}function hd(o){return(o.mode&1)!==0&&(o.flags&128)===0}function pd(o){if(nt){var s=ki;if(s){var u=s;if(!ng(o,s)){if(hd(o))throw Error(l(418));s=Ha(u);var d=xi;s&&ng(o,s)?ig(d,u):(o.flags=o.flags&-4097|2,nt=!1,xi=o)}}else{if(hd(o))throw Error(l(418));o.flags=o.flags&-4097|2,nt=!1,xi=o}}}function rg(o){for(o=o.return;o!==null&&o.tag!==5&&o.tag!==3&&o.tag!==13;)o=o.return;xi=o}function el(o){if(!he||o!==xi)return!1;if(!nt)return rg(o),nt=!0,!1;if(o.tag!==3&&(o.tag!==5||D1(o.type)&&!G(o.type,o.memoizedProps))){var s=ki;if(s){if(hd(o))throw og(),Error(l(418));for(;s;)ig(o,s),s=Ha(s)}}if(rg(o),o.tag===13){if(!he)throw Error(l(316));if(o=o.memoizedState,o=o!==null?o.dehydrated:null,!o)throw Error(l(317));ki=L1(o)}else ki=xi?Ha(o.stateNode):null;return!0}function og(){for(var o=ki;o;)o=Ha(o)}function xo(){he&&(ki=xi=null,Ss=nt=!1)}function fd(o){Yi===null?Yi=[o]:Yi.push(o)}var ib=c.ReactCurrentBatchConfig;function tl(o,s){if(Gi(o,s))return!0;if(typeof o!="object"||o===null||typeof s!="object"||s===null)return!1;var u=Object.keys(o),d=Object.keys(s);if(u.length!==d.length)return!1;for(d=0;d<u.length;d++){var f=u[d];if(!U1.call(s,f)||!Gi(o[f],s[f]))return!1}return!0}function nb(o){switch(o.tag){case 5:return ys(o.type);case 16:return ys("Lazy");case 13:return ys("Suspense");case 19:return ys("SuspenseList");case 0:case 2:case 15:return o=td(o.type,!1),o;case 11:return o=td(o.type.render,!1),o;case 1:return o=td(o.type,!0),o;default:return""}}function Xi(o,s){if(o&&o.defaultProps){s=a({},s),o=o.defaultProps;for(var u in o)s[u]===void 0&&(s[u]=o[u]);return s}return s}var il=Yn(null),nl=null,So=null,md=null;function gd(){md=So=nl=null}function sg(o,s,u){ze?(Ge(il,s._currentValue),s._currentValue=u):(Ge(il,s._currentValue2),s._currentValue2=u)}function yd(o){var s=il.current;Ze(il),ze?o._currentValue=s:o._currentValue2=s}function vd(o,s,u){for(;o!==null;){var d=o.alternate;if((o.childLanes&s)!==s?(o.childLanes|=s,d!==null&&(d.childLanes|=s)):d!==null&&(d.childLanes&s)!==s&&(d.childLanes|=s),o===u)break;o=o.return}}function wo(o,s){nl=o,md=So=null,o=o.dependencies,o!==null&&o.firstContext!==null&&(o.lanes&s&&(ui=!0),o.firstContext=null)}function Oi(o){var s=ze?o._currentValue:o._currentValue2;if(md!==o)if(o={context:o,memoizedValue:s,next:null},So===null){if(nl===null)throw Error(l(308));So=o,nl.dependencies={lanes:0,firstContext:o}}else So=So.next=o;return s}var _r=null;function xd(o){_r===null?_r=[o]:_r.push(o)}function ag(o,s,u,d){var f=s.interleaved;return f===null?(u.next=u,xd(s)):(u.next=f.next,f.next=u),s.interleaved=u,dn(o,d)}function dn(o,s){o.lanes|=s;var u=o.alternate;for(u!==null&&(u.lanes|=s),u=o,o=o.return;o!==null;)o.childLanes|=s,u=o.alternate,u!==null&&(u.childLanes|=s),u=o,o=o.return;return u.tag===3?u.stateNode:null}var Kn=!1;function Sd(o){o.updateQueue={baseState:o.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function lg(o,s){o=o.updateQueue,s.updateQueue===o&&(s.updateQueue={baseState:o.baseState,firstBaseUpdate:o.firstBaseUpdate,lastBaseUpdate:o.lastBaseUpdate,shared:o.shared,effects:o.effects})}function Tn(o,s){return{eventTime:o,lane:s,tag:0,payload:null,callback:null,next:null}}function Zn(o,s,u){var d=o.updateQueue;if(d===null)return null;if(d=d.shared,Te&2){var f=d.pending;return f===null?s.next=s:(s.next=f.next,f.next=s),d.pending=s,dn(o,u)}return f=d.interleaved,f===null?(s.next=s,xd(d)):(s.next=f.next,f.next=s),d.interleaved=s,dn(o,u)}function rl(o,s,u){if(s=s.updateQueue,s!==null&&(s=s.shared,(u&4194240)!==0)){var d=s.lanes;d&=o.pendingLanes,u|=d,s.lanes=u,od(o,u)}}function ug(o,s){var u=o.updateQueue,d=o.alternate;if(d!==null&&(d=d.updateQueue,u===d)){var f=null,g=null;if(u=u.firstBaseUpdate,u!==null){do{var b={eventTime:u.eventTime,lane:u.lane,tag:u.tag,payload:u.payload,callback:u.callback,next:null};g===null?f=g=b:g=g.next=b,u=u.next}while(u!==null);g===null?f=g=s:g=g.next=s}else f=g=s;u={baseState:d.baseState,firstBaseUpdate:f,lastBaseUpdate:g,shared:d.shared,effects:d.effects},o.updateQueue=u;return}o=u.lastBaseUpdate,o===null?u.firstBaseUpdate=s:o.next=s,u.lastBaseUpdate=s}function ol(o,s,u,d){var f=o.updateQueue;Kn=!1;var g=f.firstBaseUpdate,b=f.lastBaseUpdate,T=f.shared.pending;if(T!==null){f.shared.pending=null;var F=T,Z=F.next;F.next=null,b===null?g=Z:b.next=Z,b=F;var le=o.alternate;le!==null&&(le=le.updateQueue,T=le.lastBaseUpdate,T!==b&&(T===null?le.firstBaseUpdate=Z:T.next=Z,le.lastBaseUpdate=F))}if(g!==null){var Se=f.baseState;b=0,le=Z=F=null,T=g;do{var te=T.lane,Je=T.eventTime;if((d&te)===te){le!==null&&(le=le.next={eventTime:Je,lane:0,tag:T.tag,payload:T.payload,callback:T.callback,next:null});e:{var We=o,hi=T;switch(te=s,Je=u,hi.tag){case 1:if(We=hi.payload,typeof We=="function"){Se=We.call(Je,Se,te);break e}Se=We;break e;case 3:We.flags=We.flags&-65537|128;case 0:if(We=hi.payload,te=typeof We=="function"?We.call(Je,Se,te):We,te==null)break e;Se=a({},Se,te);break e;case 2:Kn=!0}}T.callback!==null&&T.lane!==0&&(o.flags|=64,te=f.effects,te===null?f.effects=[T]:te.push(T))}else Je={eventTime:Je,lane:te,tag:T.tag,payload:T.payload,callback:T.callback,next:null},le===null?(Z=le=Je,F=Se):le=le.next=Je,b|=te;if(T=T.next,T===null){if(T=f.shared.pending,T===null)break;te=T,T=te.next,te.next=null,f.lastBaseUpdate=te,f.shared.pending=null}}while(!0);if(le===null&&(F=Se),f.baseState=F,f.firstBaseUpdate=Z,f.lastBaseUpdate=le,s=f.shared.interleaved,s!==null){f=s;do b|=f.lane,f=f.next;while(f!==s)}else g===null&&(f.shared.lanes=0);kr|=b,o.lanes=b,o.memoizedState=Se}}function cg(o,s,u){if(o=s.effects,s.effects=null,o!==null)for(s=0;s<o.length;s++){var d=o[s],f=d.callback;if(f!==null){if(d.callback=null,d=u,typeof f!="function")throw Error(l(191,f));f.call(d)}}}var dg=new n.Component().refs;function wd(o,s,u,d){s=o.memoizedState,u=u(d,s),u=u==null?s:a({},s,u),o.memoizedState=u,o.lanes===0&&(o.updateQueue.baseState=u)}var sl={isMounted:function(o){return(o=o._reactInternals)?J(o)===o:!1},enqueueSetState:function(o,s,u){o=o._reactInternals;var d=Gt(),f=tr(o),g=Tn(d,f);g.payload=s,u!=null&&(g.callback=u),s=Zn(o,g,f),s!==null&&(Fi(s,o,f,d),rl(s,o,f))},enqueueReplaceState:function(o,s,u){o=o._reactInternals;var d=Gt(),f=tr(o),g=Tn(d,f);g.tag=1,g.payload=s,u!=null&&(g.callback=u),s=Zn(o,g,f),s!==null&&(Fi(s,o,f,d),rl(s,o,f))},enqueueForceUpdate:function(o,s){o=o._reactInternals;var u=Gt(),d=tr(o),f=Tn(u,d);f.tag=2,s!=null&&(f.callback=s),s=Zn(o,f,d),s!==null&&(Fi(s,o,d,u),rl(s,o,d))}};function hg(o,s,u,d,f,g,b){return o=o.stateNode,typeof o.shouldComponentUpdate=="function"?o.shouldComponentUpdate(d,g,b):s.prototype&&s.prototype.isPureReactComponent?!tl(u,d)||!tl(f,g):!0}function pg(o,s,u){var d=!1,f=Xn,g=s.contextType;return typeof g=="object"&&g!==null?g=Oi(g):(f=li(s)?Ir:Ht.current,d=s.contextTypes,g=(d=d!=null)?go(o,f):Xn),s=new s(u,g),o.memoizedState=s.state!==null&&s.state!==void 0?s.state:null,s.updater=sl,o.stateNode=s,s._reactInternals=o,d&&(o=o.stateNode,o.__reactInternalMemoizedUnmaskedChildContext=f,o.__reactInternalMemoizedMaskedChildContext=g),s}function fg(o,s,u,d){o=s.state,typeof s.componentWillReceiveProps=="function"&&s.componentWillReceiveProps(u,d),typeof s.UNSAFE_componentWillReceiveProps=="function"&&s.UNSAFE_componentWillReceiveProps(u,d),s.state!==o&&sl.enqueueReplaceState(s,s.state,null)}function bd(o,s,u,d){var f=o.stateNode;f.props=u,f.state=o.memoizedState,f.refs=dg,Sd(o);var g=s.contextType;typeof g=="object"&&g!==null?f.context=Oi(g):(g=li(s)?Ir:Ht.current,f.context=go(o,g)),f.state=o.memoizedState,g=s.getDerivedStateFromProps,typeof g=="function"&&(wd(o,s,g,u),f.state=o.memoizedState),typeof s.getDerivedStateFromProps=="function"||typeof f.getSnapshotBeforeUpdate=="function"||typeof f.UNSAFE_componentWillMount!="function"&&typeof f.componentWillMount!="function"||(s=f.state,typeof f.componentWillMount=="function"&&f.componentWillMount(),typeof f.UNSAFE_componentWillMount=="function"&&f.UNSAFE_componentWillMount(),s!==f.state&&sl.enqueueReplaceState(f,f.state,null),ol(o,u,f,d),f.state=o.memoizedState),typeof f.componentDidMount=="function"&&(o.flags|=4194308)}function ws(o,s,u){if(o=u.ref,o!==null&&typeof o!="function"&&typeof o!="object"){if(u._owner){if(u=u._owner,u){if(u.tag!==1)throw Error(l(309));var d=u.stateNode}if(!d)throw Error(l(147,o));var f=d,g=""+o;return s!==null&&s.ref!==null&&typeof s.ref=="function"&&s.ref._stringRef===g?s.ref:(s=function(b){var T=f.refs;T===dg&&(T=f.refs={}),b===null?delete T[g]:T[g]=b},s._stringRef=g,s)}if(typeof o!="string")throw Error(l(284));if(!u._owner)throw Error(l(290,o))}return o}function al(o,s){throw o=Object.prototype.toString.call(s),Error(l(31,o==="[object Object]"?"object with keys {"+Object.keys(s).join(", ")+"}":o))}function mg(o){var s=o._init;return s(o._payload)}function gg(o){function s(O,_){if(o){var D=O.deletions;D===null?(O.deletions=[_],O.flags|=16):D.push(_)}}function u(O,_){if(!o)return null;for(;_!==null;)s(O,_),_=_.sibling;return null}function d(O,_){for(O=new Map;_!==null;)_.key!==null?O.set(_.key,_):O.set(_.index,_),_=_.sibling;return O}function f(O,_){return O=nr(O,_),O.index=0,O.sibling=null,O}function g(O,_,D){return O.index=D,o?(D=O.alternate,D!==null?(D=D.index,D<_?(O.flags|=2,_):D):(O.flags|=2,_)):(O.flags|=1048576,_)}function b(O){return o&&O.alternate===null&&(O.flags|=2),O}function T(O,_,D,ie){return _===null||_.tag!==6?(_=uh(D,O.mode,ie),_.return=O,_):(_=f(_,D),_.return=O,_)}function F(O,_,D,ie){var me=D.type;return me===h?le(O,_,D.props.children,ie,D.key):_!==null&&(_.elementType===me||typeof me=="object"&&me!==null&&me.$$typeof===E&&mg(me)===_.type)?(ie=f(_,D.props),ie.ref=ws(O,_,D),ie.return=O,ie):(ie=Ol(D.type,D.key,D.props,null,O.mode,ie),ie.ref=ws(O,_,D),ie.return=O,ie)}function Z(O,_,D,ie){return _===null||_.tag!==4||_.stateNode.containerInfo!==D.containerInfo||_.stateNode.implementation!==D.implementation?(_=ch(D,O.mode,ie),_.return=O,_):(_=f(_,D.children||[]),_.return=O,_)}function le(O,_,D,ie,me){return _===null||_.tag!==7?(_=Fr(D,O.mode,ie,me),_.return=O,_):(_=f(_,D),_.return=O,_)}function Se(O,_,D){if(typeof _=="string"&&_!==""||typeof _=="number")return _=uh(""+_,O.mode,D),_.return=O,_;if(typeof _=="object"&&_!==null){switch(_.$$typeof){case p:return D=Ol(_.type,_.key,_.props,null,O.mode,D),D.ref=ws(O,null,_),D.return=O,D;case m:return _=ch(_,O.mode,D),_.return=O,_;case E:var ie=_._init;return Se(O,ie(_._payload),D)}if(Re(_)||M(_))return _=Fr(_,O.mode,D,null),_.return=O,_;al(O,_)}return null}function te(O,_,D,ie){var me=_!==null?_.key:null;if(typeof D=="string"&&D!==""||typeof D=="number")return me!==null?null:T(O,_,""+D,ie);if(typeof D=="object"&&D!==null){switch(D.$$typeof){case p:return D.key===me?F(O,_,D,ie):null;case m:return D.key===me?Z(O,_,D,ie):null;case E:return me=D._init,te(O,_,me(D._payload),ie)}if(Re(D)||M(D))return me!==null?null:le(O,_,D,ie,null);al(O,D)}return null}function Je(O,_,D,ie,me){if(typeof ie=="string"&&ie!==""||typeof ie=="number")return O=O.get(D)||null,T(_,O,""+ie,me);if(typeof ie=="object"&&ie!==null){switch(ie.$$typeof){case p:return O=O.get(ie.key===null?D:ie.key)||null,F(_,O,ie,me);case m:return O=O.get(ie.key===null?D:ie.key)||null,Z(_,O,ie,me);case E:var Ee=ie._init;return Je(O,_,D,Ee(ie._payload),me)}if(Re(ie)||M(ie))return O=O.get(D)||null,le(_,O,ie,me,null);al(_,ie)}return null}function We(O,_,D,ie){for(var me=null,Ee=null,we=_,Ne=_=0,Lt=null;we!==null&&Ne<D.length;Ne++){we.index>Ne?(Lt=we,we=null):Lt=we.sibling;var Be=te(O,we,D[Ne],ie);if(Be===null){we===null&&(we=Lt);break}o&&we&&Be.alternate===null&&s(O,we),_=g(Be,_,Ne),Ee===null?me=Be:Ee.sibling=Be,Ee=Be,we=Lt}if(Ne===D.length)return u(O,we),nt&&Tr(O,Ne),me;if(we===null){for(;Ne<D.length;Ne++)we=Se(O,D[Ne],ie),we!==null&&(_=g(we,_,Ne),Ee===null?me=we:Ee.sibling=we,Ee=we);return nt&&Tr(O,Ne),me}for(we=d(O,we);Ne<D.length;Ne++)Lt=Je(we,O,Ne,D[Ne],ie),Lt!==null&&(o&&Lt.alternate!==null&&we.delete(Lt.key===null?Ne:Lt.key),_=g(Lt,_,Ne),Ee===null?me=Lt:Ee.sibling=Lt,Ee=Lt);return o&&we.forEach(function(rr){return s(O,rr)}),nt&&Tr(O,Ne),me}function hi(O,_,D,ie){var me=M(D);if(typeof me!="function")throw Error(l(150));if(D=me.call(D),D==null)throw Error(l(151));for(var Ee=me=null,we=_,Ne=_=0,Lt=null,Be=D.next();we!==null&&!Be.done;Ne++,Be=D.next()){we.index>Ne?(Lt=we,we=null):Lt=we.sibling;var rr=te(O,we,Be.value,ie);if(rr===null){we===null&&(we=Lt);break}o&&we&&rr.alternate===null&&s(O,we),_=g(rr,_,Ne),Ee===null?me=rr:Ee.sibling=rr,Ee=rr,we=Lt}if(Be.done)return u(O,we),nt&&Tr(O,Ne),me;if(we===null){for(;!Be.done;Ne++,Be=D.next())Be=Se(O,Be.value,ie),Be!==null&&(_=g(Be,_,Ne),Ee===null?me=Be:Ee.sibling=Be,Ee=Be);return nt&&Tr(O,Ne),me}for(we=d(O,we);!Be.done;Ne++,Be=D.next())Be=Je(we,O,Ne,Be.value,ie),Be!==null&&(o&&Be.alternate!==null&&we.delete(Be.key===null?Ne:Be.key),_=g(Be,_,Ne),Ee===null?me=Be:Ee.sibling=Be,Ee=Be);return o&&we.forEach(function(Ob){return s(O,Ob)}),nt&&Tr(O,Ne),me}function kn(O,_,D,ie){if(typeof D=="object"&&D!==null&&D.type===h&&D.key===null&&(D=D.props.children),typeof D=="object"&&D!==null){switch(D.$$typeof){case p:e:{for(var me=D.key,Ee=_;Ee!==null;){if(Ee.key===me){if(me=D.type,me===h){if(Ee.tag===7){u(O,Ee.sibling),_=f(Ee,D.props.children),_.return=O,O=_;break e}}else if(Ee.elementType===me||typeof me=="object"&&me!==null&&me.$$typeof===E&&mg(me)===Ee.type){u(O,Ee.sibling),_=f(Ee,D.props),_.ref=ws(O,Ee,D),_.return=O,O=_;break e}u(O,Ee);break}else s(O,Ee);Ee=Ee.sibling}D.type===h?(_=Fr(D.props.children,O.mode,ie,D.key),_.return=O,O=_):(ie=Ol(D.type,D.key,D.props,null,O.mode,ie),ie.ref=ws(O,_,D),ie.return=O,O=ie)}return b(O);case m:e:{for(Ee=D.key;_!==null;){if(_.key===Ee)if(_.tag===4&&_.stateNode.containerInfo===D.containerInfo&&_.stateNode.implementation===D.implementation){u(O,_.sibling),_=f(_,D.children||[]),_.return=O,O=_;break e}else{u(O,_);break}else s(O,_);_=_.sibling}_=ch(D,O.mode,ie),_.return=O,O=_}return b(O);case E:return Ee=D._init,kn(O,_,Ee(D._payload),ie)}if(Re(D))return We(O,_,D,ie);if(M(D))return hi(O,_,D,ie);al(O,D)}return typeof D=="string"&&D!==""||typeof D=="number"?(D=""+D,_!==null&&_.tag===6?(u(O,_.sibling),_=f(_,D),_.return=O,O=_):(u(O,_),_=uh(D,O.mode,ie),_.return=O,O=_),b(O)):u(O,_)}return kn}var bo=gg(!0),yg=gg(!1),bs={},Li=Yn(bs),Cs=Yn(bs),Co=Yn(bs);function hn(o){if(o===bs)throw Error(l(174));return o}function Cd(o,s){Ge(Co,s),Ge(Cs,o),Ge(Li,bs),o=He(s),Ze(Li),Ge(Li,o)}function Po(){Ze(Li),Ze(Cs),Ze(Co)}function vg(o){var s=hn(Co.current),u=hn(Li.current);s=qe(u,o.type,s),u!==s&&(Ge(Cs,o),Ge(Li,s))}function Pd(o){Cs.current===o&&(Ze(Li),Ze(Cs))}var at=Yn(0);function ll(o){for(var s=o;s!==null;){if(s.tag===13){var u=s.memoizedState;if(u!==null&&(u=u.dehydrated,u===null||$m(u)||Zc(u)))return s}else if(s.tag===19&&s.memoizedProps.revealOrder!==void 0){if(s.flags&128)return s}else if(s.child!==null){s.child.return=s,s=s.child;continue}if(s===o)break;for(;s.sibling===null;){if(s.return===null||s.return===o)return null;s=s.return}s.sibling.return=s.return,s=s.sibling}return null}var Ed=[];function Ad(){for(var o=0;o<Ed.length;o++){var s=Ed[o];ze?s._workInProgressVersionPrimary=null:s._workInProgressVersionSecondary=null}Ed.length=0}var ul=c.ReactCurrentDispatcher,Id=c.ReactCurrentBatchConfig,Mr=0,lt=null,It=null,kt=null,cl=!1,Ps=!1,Es=0,rb=0;function qt(){throw Error(l(321))}function Rd(o,s){if(s===null)return!1;for(var u=0;u<s.length&&u<o.length;u++)if(!Gi(o[u],s[u]))return!1;return!0}function Td(o,s,u,d,f,g){if(Mr=g,lt=s,s.memoizedState=null,s.updateQueue=null,s.lanes=0,ul.current=o===null||o.memoizedState===null?lb:ub,o=u(d,f),Ps){g=0;do{if(Ps=!1,Es=0,25<=g)throw Error(l(301));g+=1,kt=It=null,s.updateQueue=null,ul.current=cb,o=u(d,f)}while(Ps)}if(ul.current=pl,s=It!==null&&It.next!==null,Mr=0,kt=It=lt=null,cl=!1,s)throw Error(l(300));return o}function _d(){var o=Es!==0;return Es=0,o}function pn(){var o={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return kt===null?lt.memoizedState=kt=o:kt=kt.next=o,kt}function zi(){if(It===null){var o=lt.alternate;o=o!==null?o.memoizedState:null}else o=It.next;var s=kt===null?lt.memoizedState:kt.next;if(s!==null)kt=s,It=o;else{if(o===null)throw Error(l(310));It=o,o={memoizedState:It.memoizedState,baseState:It.baseState,baseQueue:It.baseQueue,queue:It.queue,next:null},kt===null?lt.memoizedState=kt=o:kt=kt.next=o}return kt}function As(o,s){return typeof s=="function"?s(o):s}function Md(o){var s=zi(),u=s.queue;if(u===null)throw Error(l(311));u.lastRenderedReducer=o;var d=It,f=d.baseQueue,g=u.pending;if(g!==null){if(f!==null){var b=f.next;f.next=g.next,g.next=b}d.baseQueue=f=g,u.pending=null}if(f!==null){g=f.next,d=d.baseState;var T=b=null,F=null,Z=g;do{var le=Z.lane;if((Mr&le)===le)F!==null&&(F=F.next={lane:0,action:Z.action,hasEagerState:Z.hasEagerState,eagerState:Z.eagerState,next:null}),d=Z.hasEagerState?Z.eagerState:o(d,Z.action);else{var Se={lane:le,action:Z.action,hasEagerState:Z.hasEagerState,eagerState:Z.eagerState,next:null};F===null?(T=F=Se,b=d):F=F.next=Se,lt.lanes|=le,kr|=le}Z=Z.next}while(Z!==null&&Z!==g);F===null?b=d:F.next=T,Gi(d,s.memoizedState)||(ui=!0),s.memoizedState=d,s.baseState=b,s.baseQueue=F,u.lastRenderedState=d}if(o=u.interleaved,o!==null){f=o;do g=f.lane,lt.lanes|=g,kr|=g,f=f.next;while(f!==o)}else f===null&&(u.lanes=0);return[s.memoizedState,u.dispatch]}function kd(o){var s=zi(),u=s.queue;if(u===null)throw Error(l(311));u.lastRenderedReducer=o;var d=u.dispatch,f=u.pending,g=s.memoizedState;if(f!==null){u.pending=null;var b=f=f.next;do g=o(g,b.action),b=b.next;while(b!==f);Gi(g,s.memoizedState)||(ui=!0),s.memoizedState=g,s.baseQueue===null&&(s.baseState=g),u.lastRenderedState=g}return[g,d]}function xg(){}function Sg(o,s){var u=lt,d=zi(),f=s(),g=!Gi(d.memoizedState,f);if(g&&(d.memoizedState=f,ui=!0),d=d.queue,Od(Cg.bind(null,u,d,o),[o]),d.getSnapshot!==s||g||kt!==null&&kt.memoizedState.tag&1){if(u.flags|=2048,Is(9,bg.bind(null,u,d,f,s),void 0,null),Ot===null)throw Error(l(349));Mr&30||wg(u,s,f)}return f}function wg(o,s,u){o.flags|=16384,o={getSnapshot:s,value:u},s=lt.updateQueue,s===null?(s={lastEffect:null,stores:null},lt.updateQueue=s,s.stores=[o]):(u=s.stores,u===null?s.stores=[o]:u.push(o))}function bg(o,s,u,d){s.value=u,s.getSnapshot=d,Pg(s)&&Eg(o)}function Cg(o,s,u){return u(function(){Pg(s)&&Eg(o)})}function Pg(o){var s=o.getSnapshot;o=o.value;try{var u=s();return!Gi(o,u)}catch{return!0}}function Eg(o){var s=dn(o,1);s!==null&&Fi(s,o,1,-1)}function Ag(o){var s=pn();return typeof o=="function"&&(o=o()),s.memoizedState=s.baseState=o,o={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:As,lastRenderedState:o},s.queue=o,o=o.dispatch=ab.bind(null,lt,o),[s.memoizedState,o]}function Is(o,s,u,d){return o={tag:o,create:s,destroy:u,deps:d,next:null},s=lt.updateQueue,s===null?(s={lastEffect:null,stores:null},lt.updateQueue=s,s.lastEffect=o.next=o):(u=s.lastEffect,u===null?s.lastEffect=o.next=o:(d=u.next,u.next=o,o.next=d,s.lastEffect=o)),o}function Ig(){return zi().memoizedState}function dl(o,s,u,d){var f=pn();lt.flags|=o,f.memoizedState=Is(1|s,u,void 0,d===void 0?null:d)}function hl(o,s,u,d){var f=zi();d=d===void 0?null:d;var g=void 0;if(It!==null){var b=It.memoizedState;if(g=b.destroy,d!==null&&Rd(d,b.deps)){f.memoizedState=Is(s,u,g,d);return}}lt.flags|=o,f.memoizedState=Is(1|s,u,g,d)}function Rg(o,s){return dl(8390656,8,o,s)}function Od(o,s){return hl(2048,8,o,s)}function Tg(o,s){return hl(4,2,o,s)}function _g(o,s){return hl(4,4,o,s)}function Mg(o,s){if(typeof s=="function")return o=o(),s(o),function(){s(null)};if(s!=null)return o=o(),s.current=o,function(){s.current=null}}function kg(o,s,u){return u=u!=null?u.concat([o]):null,hl(4,4,Mg.bind(null,s,o),u)}function Ld(){}function Og(o,s){var u=zi();s=s===void 0?null:s;var d=u.memoizedState;return d!==null&&s!==null&&Rd(s,d[1])?d[0]:(u.memoizedState=[o,s],o)}function Lg(o,s){var u=zi();s=s===void 0?null:s;var d=u.memoizedState;return d!==null&&s!==null&&Rd(s,d[1])?d[0]:(o=o(),u.memoizedState=[o,s],o)}function zg(o,s,u){return Mr&21?(Gi(u,s)||(u=Km(),lt.lanes|=u,kr|=u,o.baseState=!0),s):(o.baseState&&(o.baseState=!1,ui=!0),o.memoizedState=u)}function ob(o,s){var u=Fe;Fe=u!==0&&4>u?u:4,o(!0);var d=Id.transition;Id.transition={};try{o(!1),s()}finally{Fe=u,Id.transition=d}}function Fg(){return zi().memoizedState}function sb(o,s,u){var d=tr(o);if(u={lane:d,action:u,hasEagerState:!1,eagerState:null,next:null},Ng(o))Bg(s,u);else if(u=ag(o,s,u,d),u!==null){var f=Gt();Fi(u,o,d,f),Dg(u,s,d)}}function ab(o,s,u){var d=tr(o),f={lane:d,action:u,hasEagerState:!1,eagerState:null,next:null};if(Ng(o))Bg(s,f);else{var g=o.alternate;if(o.lanes===0&&(g===null||g.lanes===0)&&(g=s.lastRenderedReducer,g!==null))try{var b=s.lastRenderedState,T=g(b,u);if(f.hasEagerState=!0,f.eagerState=T,Gi(T,b)){var F=s.interleaved;F===null?(f.next=f,xd(s)):(f.next=F.next,F.next=f),s.interleaved=f;return}}catch{}finally{}u=ag(o,s,f,d),u!==null&&(f=Gt(),Fi(u,o,d,f),Dg(u,s,d))}}function Ng(o){var s=o.alternate;return o===lt||s!==null&&s===lt}function Bg(o,s){Ps=cl=!0;var u=o.pending;u===null?s.next=s:(s.next=u.next,u.next=s),o.pending=s}function Dg(o,s,u){if(u&4194240){var d=s.lanes;d&=o.pendingLanes,u|=d,s.lanes=u,od(o,u)}}var pl={readContext:Oi,useCallback:qt,useContext:qt,useEffect:qt,useImperativeHandle:qt,useInsertionEffect:qt,useLayoutEffect:qt,useMemo:qt,useReducer:qt,useRef:qt,useState:qt,useDebugValue:qt,useDeferredValue:qt,useTransition:qt,useMutableSource:qt,useSyncExternalStore:qt,useId:qt,unstable_isNewReconciler:!1},lb={readContext:Oi,useCallback:function(o,s){return pn().memoizedState=[o,s===void 0?null:s],o},useContext:Oi,useEffect:Rg,useImperativeHandle:function(o,s,u){return u=u!=null?u.concat([o]):null,dl(4194308,4,Mg.bind(null,s,o),u)},useLayoutEffect:function(o,s){return dl(4194308,4,o,s)},useInsertionEffect:function(o,s){return dl(4,2,o,s)},useMemo:function(o,s){var u=pn();return s=s===void 0?null:s,o=o(),u.memoizedState=[o,s],o},useReducer:function(o,s,u){var d=pn();return s=u!==void 0?u(s):s,d.memoizedState=d.baseState=s,o={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:o,lastRenderedState:s},d.queue=o,o=o.dispatch=sb.bind(null,lt,o),[d.memoizedState,o]},useRef:function(o){var s=pn();return o={current:o},s.memoizedState=o},useState:Ag,useDebugValue:Ld,useDeferredValue:function(o){return pn().memoizedState=o},useTransition:function(){var o=Ag(!1),s=o[0];return o=ob.bind(null,o[1]),pn().memoizedState=o,[s,o]},useMutableSource:function(){},useSyncExternalStore:function(o,s,u){var d=lt,f=pn();if(nt){if(u===void 0)throw Error(l(407));u=u()}else{if(u=s(),Ot===null)throw Error(l(349));Mr&30||wg(d,s,u)}f.memoizedState=u;var g={value:u,getSnapshot:s};return f.queue=g,Rg(Cg.bind(null,d,g,o),[o]),d.flags|=2048,Is(9,bg.bind(null,d,g,u,s),void 0,null),u},useId:function(){var o=pn(),s=Ot.identifierPrefix;if(nt){var u=Rn,d=In;u=(d&~(1<<32-$i(d)-1)).toString(32)+u,s=":"+s+"R"+u,u=Es++,0<u&&(s+="H"+u.toString(32)),s+=":"}else u=rb++,s=":"+s+"r"+u.toString(32)+":";return o.memoizedState=s},unstable_isNewReconciler:!1},ub={readContext:Oi,useCallback:Og,useContext:Oi,useEffect:Od,useImperativeHandle:kg,useInsertionEffect:Tg,useLayoutEffect:_g,useMemo:Lg,useReducer:Md,useRef:Ig,useState:function(){return Md(As)},useDebugValue:Ld,useDeferredValue:function(o){var s=zi();return zg(s,It.memoizedState,o)},useTransition:function(){var o=Md(As)[0],s=zi().memoizedState;return[o,s]},useMutableSource:xg,useSyncExternalStore:Sg,useId:Fg,unstable_isNewReconciler:!1},cb={readContext:Oi,useCallback:Og,useContext:Oi,useEffect:Od,useImperativeHandle:kg,useInsertionEffect:Tg,useLayoutEffect:_g,useMemo:Lg,useReducer:kd,useRef:Ig,useState:function(){return kd(As)},useDebugValue:Ld,useDeferredValue:function(o){var s=zi();return It===null?s.memoizedState=o:zg(s,It.memoizedState,o)},useTransition:function(){var o=kd(As)[0],s=zi().memoizedState;return[o,s]},useMutableSource:xg,useSyncExternalStore:Sg,useId:Fg,unstable_isNewReconciler:!1};function Eo(o,s){try{var u="",d=s;do u+=nb(d),d=d.return;while(d);var f=u}catch(g){f=`
|
|
4
|
+
`),b=f.length-1,R=g.length-1;1<=b&&0<=R&&f[b]!==g[R];)R--;for(;1<=b&&0<=R;b--,R--)if(f[b]!==g[R]){if(b!==1||R!==1)do if(b--,R--,0>R||f[b]!==g[R]){var F=`
|
|
5
|
+
`+f[b].replace(" at new "," at ");return o.displayName&&F.includes("<anonymous>")&&(F=F.replace("<anonymous>",o.displayName)),F}while(1<=b&&0<=R);break}}}finally{ed=!1,Error.prepareStackTrace=u}return(o=o?o.displayName||o.name:"")?vs(o):""}var V1=Object.prototype.hasOwnProperty,id=[],go=-1;function Yn(o){return{current:o}}function Ze(o){0>go||(o.current=id[go],id[go]=null,go--)}function Ge(o,s){go++,id[go]=o.current,o.current=s}var Xn={},Ht=Yn(Xn),ai=Yn(!1),Ir=Xn;function yo(o,s){var u=o.type.contextTypes;if(!u)return Xn;var d=o.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===s)return d.__reactInternalMemoizedMaskedChildContext;var f={},g;for(g in u)f[g]=s[g];return d&&(o=o.stateNode,o.__reactInternalMemoizedUnmaskedChildContext=s,o.__reactInternalMemoizedMaskedChildContext=f),f}function li(o){return o=o.childContextTypes,o!=null}function qa(){Ze(ai),Ze(Ht)}function $m(o,s,u){if(Ht.current!==Xn)throw Error(l(168));Ge(Ht,s),Ge(ai,u)}function Gm(o,s,u){var d=o.stateNode;if(s=s.childContextTypes,typeof d.getChildContext!="function")return u;d=d.getChildContext();for(var f in d)if(!(f in s))throw Error(l(108,V(o)||"Unknown",f));return a({},u,d)}function Qa(o){return o=(o=o.stateNode)&&o.__reactInternalMemoizedMergedChildContext||Xn,Ir=Ht.current,Ge(Ht,o),Ge(ai,ai.current),!0}function Ym(o,s,u){var d=o.stateNode;if(!d)throw Error(l(169));u?(o=Gm(o,s,Ir),d.__reactInternalMemoizedMergedChildContext=o,Ze(ai),Ze(Ht),Ge(Ht,o)):Ze(ai),Ge(ai,u)}var $i=Math.clz32?Math.clz32:H1,U1=Math.log,W1=Math.LN2;function H1(o){return o>>>=0,o===0?32:31-(U1(o)/W1|0)|0}var $a=64,Ga=4194304;function xs(o){switch(o&-o){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return o&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return o&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return o}}function Ya(o,s){var u=o.pendingLanes;if(u===0)return 0;var d=0,f=o.suspendedLanes,g=o.pingedLanes,b=u&268435455;if(b!==0){var R=b&~f;R!==0?d=xs(R):(g&=b,g!==0&&(d=xs(g)))}else b=u&~f,b!==0?d=xs(b):g!==0&&(d=xs(g));if(d===0)return 0;if(s!==0&&s!==d&&!(s&f)&&(f=d&-d,g=s&-s,f>=g||f===16&&(g&4194240)!==0))return s;if(d&4&&(d|=u&16),s=o.entangledLanes,s!==0)for(o=o.entanglements,s&=d;0<s;)u=31-$i(s),f=1<<u,d|=o[u],s&=~f;return d}function q1(o,s){switch(o){case 1:case 2:case 4:return s+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return s+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Q1(o,s){for(var u=o.suspendedLanes,d=o.pingedLanes,f=o.expirationTimes,g=o.pendingLanes;0<g;){var b=31-$i(g),R=1<<b,F=f[b];F===-1?(!(R&u)||R&d)&&(f[b]=q1(R,s)):F<=s&&(o.expiredLanes|=R),g&=~R}}function nd(o){return o=o.pendingLanes&-1073741825,o!==0?o:o&1073741824?1073741824:0}function Xm(){var o=$a;return $a<<=1,!($a&4194240)&&($a=64),o}function rd(o){for(var s=[],u=0;31>u;u++)s.push(o);return s}function Ss(o,s,u){o.pendingLanes|=s,s!==536870912&&(o.suspendedLanes=0,o.pingedLanes=0),o=o.eventTimes,s=31-$i(s),o[s]=u}function $1(o,s){var u=o.pendingLanes&~s;o.pendingLanes=s,o.suspendedLanes=0,o.pingedLanes=0,o.expiredLanes&=s,o.mutableReadLanes&=s,o.entangledLanes&=s,s=o.entanglements;var d=o.eventTimes;for(o=o.expirationTimes;0<u;){var f=31-$i(u),g=1<<f;s[f]=0,d[f]=-1,o[f]=-1,u&=~g}}function od(o,s){var u=o.entangledLanes|=s;for(o=o.entanglements;u;){var d=31-$i(u),f=1<<d;f&s|o[d]&s&&(o[d]|=s),u&=~f}}var Fe=0;function Km(o){return o&=-o,1<o?4<o?o&268435455?16:536870912:4:1}var sd=r.unstable_scheduleCallback,Zm=r.unstable_cancelCallback,G1=r.unstable_shouldYield,Y1=r.unstable_requestPaint,Mt=r.unstable_now,ad=r.unstable_ImmediatePriority,X1=r.unstable_UserBlockingPriority,ld=r.unstable_NormalPriority,K1=r.unstable_IdlePriority,Xa=null,un=null;function Z1(o){if(un&&typeof un.onCommitFiberRoot=="function")try{un.onCommitFiberRoot(Xa,o,void 0,(o.current.flags&128)===128)}catch{}}function J1(o,s){return o===s&&(o!==0||1/o===1/s)||o!==o&&s!==s}var Gi=typeof Object.is=="function"?Object.is:J1,An=null,Ka=!1,ud=!1;function Jm(o){An===null?An=[o]:An.push(o)}function eb(o){Ka=!0,Jm(o)}function cn(){if(!ud&&An!==null){ud=!0;var o=0,s=Fe;try{var u=An;for(Fe=1;o<u.length;o++){var d=u[o];do d=d(!0);while(d!==null)}An=null,Ka=!1}catch(f){throw An!==null&&(An=An.slice(o+1)),sd(ad,cn),f}finally{Fe=s,ud=!1}}return null}var vo=[],xo=0,Za=null,Ja=0,_i=[],Mi=0,Tr=null,In=1,Tn="";function Rr(o,s){vo[xo++]=Ja,vo[xo++]=Za,Za=o,Ja=s}function eg(o,s,u){_i[Mi++]=In,_i[Mi++]=Tn,_i[Mi++]=Tr,Tr=o;var d=In;o=Tn;var f=32-$i(d)-1;d&=~(1<<f),u+=1;var g=32-$i(s)+f;if(30<g){var b=f-f%5;g=(d&(1<<b)-1).toString(32),d>>=b,f-=b,In=1<<32-$i(s)+f|u<<f|d,Tn=g+o}else In=1<<g|u<<f|d,Tn=o}function cd(o){o.return!==null&&(Rr(o,1),eg(o,1,0))}function dd(o){for(;o===Za;)Za=vo[--xo],vo[xo]=null,Ja=vo[--xo],vo[xo]=null;for(;o===Tr;)Tr=_i[--Mi],_i[Mi]=null,Tn=_i[--Mi],_i[Mi]=null,In=_i[--Mi],_i[Mi]=null}var xi=null,ki=null,nt=!1,ws=!1,Yi=null;function tg(o,s){var u=Ni(5,null,null,0);u.elementType="DELETED",u.stateNode=s,u.return=o,s=o.deletions,s===null?(o.deletions=[u],o.flags|=16):s.push(u)}function ig(o,s){switch(o.tag){case 5:return s=Wa(s,o.type,o.pendingProps),s!==null?(o.stateNode=s,xi=o,ki=I1(s),!0):!1;case 6:return s=C1(s,o.pendingProps),s!==null?(o.stateNode=s,xi=o,ki=null,!0):!1;case 13:if(s=P1(s),s!==null){var u=Tr!==null?{id:In,overflow:Tn}:null;return o.memoizedState={dehydrated:s,treeContext:u,retryLane:1073741824},u=Ni(18,null,null,0),u.stateNode=s,u.return=o,o.child=u,xi=o,ki=null,!0}return!1;default:return!1}}function hd(o){return(o.mode&1)!==0&&(o.flags&128)===0}function pd(o){if(nt){var s=ki;if(s){var u=s;if(!ig(o,s)){if(hd(o))throw Error(l(418));s=Ha(u);var d=xi;s&&ig(o,s)?tg(d,u):(o.flags=o.flags&-4097|2,nt=!1,xi=o)}}else{if(hd(o))throw Error(l(418));o.flags=o.flags&-4097|2,nt=!1,xi=o}}}function ng(o){for(o=o.return;o!==null&&o.tag!==5&&o.tag!==3&&o.tag!==13;)o=o.return;xi=o}function el(o){if(!he||o!==xi)return!1;if(!nt)return ng(o),nt=!0,!1;if(o.tag!==3&&(o.tag!==5||B1(o.type)&&!G(o.type,o.memoizedProps))){var s=ki;if(s){if(hd(o))throw rg(),Error(l(418));for(;s;)tg(o,s),s=Ha(s)}}if(ng(o),o.tag===13){if(!he)throw Error(l(316));if(o=o.memoizedState,o=o!==null?o.dehydrated:null,!o)throw Error(l(317));ki=O1(o)}else ki=xi?Ha(o.stateNode):null;return!0}function rg(){for(var o=ki;o;)o=Ha(o)}function So(){he&&(ki=xi=null,ws=nt=!1)}function fd(o){Yi===null?Yi=[o]:Yi.push(o)}var tb=c.ReactCurrentBatchConfig;function tl(o,s){if(Gi(o,s))return!0;if(typeof o!="object"||o===null||typeof s!="object"||s===null)return!1;var u=Object.keys(o),d=Object.keys(s);if(u.length!==d.length)return!1;for(d=0;d<u.length;d++){var f=u[d];if(!V1.call(s,f)||!Gi(o[f],s[f]))return!1}return!0}function ib(o){switch(o.tag){case 5:return vs(o.type);case 16:return vs("Lazy");case 13:return vs("Suspense");case 19:return vs("SuspenseList");case 0:case 2:case 15:return o=td(o.type,!1),o;case 11:return o=td(o.type.render,!1),o;case 1:return o=td(o.type,!0),o;default:return""}}function Xi(o,s){if(o&&o.defaultProps){s=a({},s),o=o.defaultProps;for(var u in o)s[u]===void 0&&(s[u]=o[u]);return s}return s}var il=Yn(null),nl=null,wo=null,md=null;function gd(){md=wo=nl=null}function og(o,s,u){ze?(Ge(il,s._currentValue),s._currentValue=u):(Ge(il,s._currentValue2),s._currentValue2=u)}function yd(o){var s=il.current;Ze(il),ze?o._currentValue=s:o._currentValue2=s}function vd(o,s,u){for(;o!==null;){var d=o.alternate;if((o.childLanes&s)!==s?(o.childLanes|=s,d!==null&&(d.childLanes|=s)):d!==null&&(d.childLanes&s)!==s&&(d.childLanes|=s),o===u)break;o=o.return}}function bo(o,s){nl=o,md=wo=null,o=o.dependencies,o!==null&&o.firstContext!==null&&(o.lanes&s&&(ui=!0),o.firstContext=null)}function Oi(o){var s=ze?o._currentValue:o._currentValue2;if(md!==o)if(o={context:o,memoizedValue:s,next:null},wo===null){if(nl===null)throw Error(l(308));wo=o,nl.dependencies={lanes:0,firstContext:o}}else wo=wo.next=o;return s}var _r=null;function xd(o){_r===null?_r=[o]:_r.push(o)}function sg(o,s,u,d){var f=s.interleaved;return f===null?(u.next=u,xd(s)):(u.next=f.next,f.next=u),s.interleaved=u,dn(o,d)}function dn(o,s){o.lanes|=s;var u=o.alternate;for(u!==null&&(u.lanes|=s),u=o,o=o.return;o!==null;)o.childLanes|=s,u=o.alternate,u!==null&&(u.childLanes|=s),u=o,o=o.return;return u.tag===3?u.stateNode:null}var Kn=!1;function Sd(o){o.updateQueue={baseState:o.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function ag(o,s){o=o.updateQueue,s.updateQueue===o&&(s.updateQueue={baseState:o.baseState,firstBaseUpdate:o.firstBaseUpdate,lastBaseUpdate:o.lastBaseUpdate,shared:o.shared,effects:o.effects})}function Rn(o,s){return{eventTime:o,lane:s,tag:0,payload:null,callback:null,next:null}}function Zn(o,s,u){var d=o.updateQueue;if(d===null)return null;if(d=d.shared,Re&2){var f=d.pending;return f===null?s.next=s:(s.next=f.next,f.next=s),d.pending=s,dn(o,u)}return f=d.interleaved,f===null?(s.next=s,xd(d)):(s.next=f.next,f.next=s),d.interleaved=s,dn(o,u)}function rl(o,s,u){if(s=s.updateQueue,s!==null&&(s=s.shared,(u&4194240)!==0)){var d=s.lanes;d&=o.pendingLanes,u|=d,s.lanes=u,od(o,u)}}function lg(o,s){var u=o.updateQueue,d=o.alternate;if(d!==null&&(d=d.updateQueue,u===d)){var f=null,g=null;if(u=u.firstBaseUpdate,u!==null){do{var b={eventTime:u.eventTime,lane:u.lane,tag:u.tag,payload:u.payload,callback:u.callback,next:null};g===null?f=g=b:g=g.next=b,u=u.next}while(u!==null);g===null?f=g=s:g=g.next=s}else f=g=s;u={baseState:d.baseState,firstBaseUpdate:f,lastBaseUpdate:g,shared:d.shared,effects:d.effects},o.updateQueue=u;return}o=u.lastBaseUpdate,o===null?u.firstBaseUpdate=s:o.next=s,u.lastBaseUpdate=s}function ol(o,s,u,d){var f=o.updateQueue;Kn=!1;var g=f.firstBaseUpdate,b=f.lastBaseUpdate,R=f.shared.pending;if(R!==null){f.shared.pending=null;var F=R,Z=F.next;F.next=null,b===null?g=Z:b.next=Z,b=F;var le=o.alternate;le!==null&&(le=le.updateQueue,R=le.lastBaseUpdate,R!==b&&(R===null?le.firstBaseUpdate=Z:R.next=Z,le.lastBaseUpdate=F))}if(g!==null){var Se=f.baseState;b=0,le=Z=F=null,R=g;do{var te=R.lane,Je=R.eventTime;if((d&te)===te){le!==null&&(le=le.next={eventTime:Je,lane:0,tag:R.tag,payload:R.payload,callback:R.callback,next:null});e:{var We=o,hi=R;switch(te=s,Je=u,hi.tag){case 1:if(We=hi.payload,typeof We=="function"){Se=We.call(Je,Se,te);break e}Se=We;break e;case 3:We.flags=We.flags&-65537|128;case 0:if(We=hi.payload,te=typeof We=="function"?We.call(Je,Se,te):We,te==null)break e;Se=a({},Se,te);break e;case 2:Kn=!0}}R.callback!==null&&R.lane!==0&&(o.flags|=64,te=f.effects,te===null?f.effects=[R]:te.push(R))}else Je={eventTime:Je,lane:te,tag:R.tag,payload:R.payload,callback:R.callback,next:null},le===null?(Z=le=Je,F=Se):le=le.next=Je,b|=te;if(R=R.next,R===null){if(R=f.shared.pending,R===null)break;te=R,R=te.next,te.next=null,f.lastBaseUpdate=te,f.shared.pending=null}}while(!0);if(le===null&&(F=Se),f.baseState=F,f.firstBaseUpdate=Z,f.lastBaseUpdate=le,s=f.shared.interleaved,s!==null){f=s;do b|=f.lane,f=f.next;while(f!==s)}else g===null&&(f.shared.lanes=0);kr|=b,o.lanes=b,o.memoizedState=Se}}function ug(o,s,u){if(o=s.effects,s.effects=null,o!==null)for(s=0;s<o.length;s++){var d=o[s],f=d.callback;if(f!==null){if(d.callback=null,d=u,typeof f!="function")throw Error(l(191,f));f.call(d)}}}var cg=new n.Component().refs;function wd(o,s,u,d){s=o.memoizedState,u=u(d,s),u=u==null?s:a({},s,u),o.memoizedState=u,o.lanes===0&&(o.updateQueue.baseState=u)}var sl={isMounted:function(o){return(o=o._reactInternals)?J(o)===o:!1},enqueueSetState:function(o,s,u){o=o._reactInternals;var d=Gt(),f=tr(o),g=Rn(d,f);g.payload=s,u!=null&&(g.callback=u),s=Zn(o,g,f),s!==null&&(Fi(s,o,f,d),rl(s,o,f))},enqueueReplaceState:function(o,s,u){o=o._reactInternals;var d=Gt(),f=tr(o),g=Rn(d,f);g.tag=1,g.payload=s,u!=null&&(g.callback=u),s=Zn(o,g,f),s!==null&&(Fi(s,o,f,d),rl(s,o,f))},enqueueForceUpdate:function(o,s){o=o._reactInternals;var u=Gt(),d=tr(o),f=Rn(u,d);f.tag=2,s!=null&&(f.callback=s),s=Zn(o,f,d),s!==null&&(Fi(s,o,d,u),rl(s,o,d))}};function dg(o,s,u,d,f,g,b){return o=o.stateNode,typeof o.shouldComponentUpdate=="function"?o.shouldComponentUpdate(d,g,b):s.prototype&&s.prototype.isPureReactComponent?!tl(u,d)||!tl(f,g):!0}function hg(o,s,u){var d=!1,f=Xn,g=s.contextType;return typeof g=="object"&&g!==null?g=Oi(g):(f=li(s)?Ir:Ht.current,d=s.contextTypes,g=(d=d!=null)?yo(o,f):Xn),s=new s(u,g),o.memoizedState=s.state!==null&&s.state!==void 0?s.state:null,s.updater=sl,o.stateNode=s,s._reactInternals=o,d&&(o=o.stateNode,o.__reactInternalMemoizedUnmaskedChildContext=f,o.__reactInternalMemoizedMaskedChildContext=g),s}function pg(o,s,u,d){o=s.state,typeof s.componentWillReceiveProps=="function"&&s.componentWillReceiveProps(u,d),typeof s.UNSAFE_componentWillReceiveProps=="function"&&s.UNSAFE_componentWillReceiveProps(u,d),s.state!==o&&sl.enqueueReplaceState(s,s.state,null)}function bd(o,s,u,d){var f=o.stateNode;f.props=u,f.state=o.memoizedState,f.refs=cg,Sd(o);var g=s.contextType;typeof g=="object"&&g!==null?f.context=Oi(g):(g=li(s)?Ir:Ht.current,f.context=yo(o,g)),f.state=o.memoizedState,g=s.getDerivedStateFromProps,typeof g=="function"&&(wd(o,s,g,u),f.state=o.memoizedState),typeof s.getDerivedStateFromProps=="function"||typeof f.getSnapshotBeforeUpdate=="function"||typeof f.UNSAFE_componentWillMount!="function"&&typeof f.componentWillMount!="function"||(s=f.state,typeof f.componentWillMount=="function"&&f.componentWillMount(),typeof f.UNSAFE_componentWillMount=="function"&&f.UNSAFE_componentWillMount(),s!==f.state&&sl.enqueueReplaceState(f,f.state,null),ol(o,u,f,d),f.state=o.memoizedState),typeof f.componentDidMount=="function"&&(o.flags|=4194308)}function bs(o,s,u){if(o=u.ref,o!==null&&typeof o!="function"&&typeof o!="object"){if(u._owner){if(u=u._owner,u){if(u.tag!==1)throw Error(l(309));var d=u.stateNode}if(!d)throw Error(l(147,o));var f=d,g=""+o;return s!==null&&s.ref!==null&&typeof s.ref=="function"&&s.ref._stringRef===g?s.ref:(s=function(b){var R=f.refs;R===cg&&(R=f.refs={}),b===null?delete R[g]:R[g]=b},s._stringRef=g,s)}if(typeof o!="string")throw Error(l(284));if(!u._owner)throw Error(l(290,o))}return o}function al(o,s){throw o=Object.prototype.toString.call(s),Error(l(31,o==="[object Object]"?"object with keys {"+Object.keys(s).join(", ")+"}":o))}function fg(o){var s=o._init;return s(o._payload)}function mg(o){function s(z,_){if(o){var D=z.deletions;D===null?(z.deletions=[_],z.flags|=16):D.push(_)}}function u(z,_){if(!o)return null;for(;_!==null;)s(z,_),_=_.sibling;return null}function d(z,_){for(z=new Map;_!==null;)_.key!==null?z.set(_.key,_):z.set(_.index,_),_=_.sibling;return z}function f(z,_){return z=nr(z,_),z.index=0,z.sibling=null,z}function g(z,_,D){return z.index=D,o?(D=z.alternate,D!==null?(D=D.index,D<_?(z.flags|=2,_):D):(z.flags|=2,_)):(z.flags|=1048576,_)}function b(z){return o&&z.alternate===null&&(z.flags|=2),z}function R(z,_,D,ie){return _===null||_.tag!==6?(_=uh(D,z.mode,ie),_.return=z,_):(_=f(_,D),_.return=z,_)}function F(z,_,D,ie){var me=D.type;return me===h?le(z,_,D.props.children,ie,D.key):_!==null&&(_.elementType===me||typeof me=="object"&&me!==null&&me.$$typeof===E&&fg(me)===_.type)?(ie=f(_,D.props),ie.ref=bs(z,_,D),ie.return=z,ie):(ie=Ol(D.type,D.key,D.props,null,z.mode,ie),ie.ref=bs(z,_,D),ie.return=z,ie)}function Z(z,_,D,ie){return _===null||_.tag!==4||_.stateNode.containerInfo!==D.containerInfo||_.stateNode.implementation!==D.implementation?(_=ch(D,z.mode,ie),_.return=z,_):(_=f(_,D.children||[]),_.return=z,_)}function le(z,_,D,ie,me){return _===null||_.tag!==7?(_=Fr(D,z.mode,ie,me),_.return=z,_):(_=f(_,D),_.return=z,_)}function Se(z,_,D){if(typeof _=="string"&&_!==""||typeof _=="number")return _=uh(""+_,z.mode,D),_.return=z,_;if(typeof _=="object"&&_!==null){switch(_.$$typeof){case p:return D=Ol(_.type,_.key,_.props,null,z.mode,D),D.ref=bs(z,null,_),D.return=z,D;case m:return _=ch(_,z.mode,D),_.return=z,_;case E:var ie=_._init;return Se(z,ie(_._payload),D)}if(Te(_)||M(_))return _=Fr(_,z.mode,D,null),_.return=z,_;al(z,_)}return null}function te(z,_,D,ie){var me=_!==null?_.key:null;if(typeof D=="string"&&D!==""||typeof D=="number")return me!==null?null:R(z,_,""+D,ie);if(typeof D=="object"&&D!==null){switch(D.$$typeof){case p:return D.key===me?F(z,_,D,ie):null;case m:return D.key===me?Z(z,_,D,ie):null;case E:return me=D._init,te(z,_,me(D._payload),ie)}if(Te(D)||M(D))return me!==null?null:le(z,_,D,ie,null);al(z,D)}return null}function Je(z,_,D,ie,me){if(typeof ie=="string"&&ie!==""||typeof ie=="number")return z=z.get(D)||null,R(_,z,""+ie,me);if(typeof ie=="object"&&ie!==null){switch(ie.$$typeof){case p:return z=z.get(ie.key===null?D:ie.key)||null,F(_,z,ie,me);case m:return z=z.get(ie.key===null?D:ie.key)||null,Z(_,z,ie,me);case E:var Ee=ie._init;return Je(z,_,D,Ee(ie._payload),me)}if(Te(ie)||M(ie))return z=z.get(D)||null,le(_,z,ie,me,null);al(_,ie)}return null}function We(z,_,D,ie){for(var me=null,Ee=null,we=_,Ne=_=0,Lt=null;we!==null&&Ne<D.length;Ne++){we.index>Ne?(Lt=we,we=null):Lt=we.sibling;var Be=te(z,we,D[Ne],ie);if(Be===null){we===null&&(we=Lt);break}o&&we&&Be.alternate===null&&s(z,we),_=g(Be,_,Ne),Ee===null?me=Be:Ee.sibling=Be,Ee=Be,we=Lt}if(Ne===D.length)return u(z,we),nt&&Rr(z,Ne),me;if(we===null){for(;Ne<D.length;Ne++)we=Se(z,D[Ne],ie),we!==null&&(_=g(we,_,Ne),Ee===null?me=we:Ee.sibling=we,Ee=we);return nt&&Rr(z,Ne),me}for(we=d(z,we);Ne<D.length;Ne++)Lt=Je(we,z,Ne,D[Ne],ie),Lt!==null&&(o&&Lt.alternate!==null&&we.delete(Lt.key===null?Ne:Lt.key),_=g(Lt,_,Ne),Ee===null?me=Lt:Ee.sibling=Lt,Ee=Lt);return o&&we.forEach(function(rr){return s(z,rr)}),nt&&Rr(z,Ne),me}function hi(z,_,D,ie){var me=M(D);if(typeof me!="function")throw Error(l(150));if(D=me.call(D),D==null)throw Error(l(151));for(var Ee=me=null,we=_,Ne=_=0,Lt=null,Be=D.next();we!==null&&!Be.done;Ne++,Be=D.next()){we.index>Ne?(Lt=we,we=null):Lt=we.sibling;var rr=te(z,we,Be.value,ie);if(rr===null){we===null&&(we=Lt);break}o&&we&&rr.alternate===null&&s(z,we),_=g(rr,_,Ne),Ee===null?me=rr:Ee.sibling=rr,Ee=rr,we=Lt}if(Be.done)return u(z,we),nt&&Rr(z,Ne),me;if(we===null){for(;!Be.done;Ne++,Be=D.next())Be=Se(z,Be.value,ie),Be!==null&&(_=g(Be,_,Ne),Ee===null?me=Be:Ee.sibling=Be,Ee=Be);return nt&&Rr(z,Ne),me}for(we=d(z,we);!Be.done;Ne++,Be=D.next())Be=Je(we,z,Ne,Be.value,ie),Be!==null&&(o&&Be.alternate!==null&&we.delete(Be.key===null?Ne:Be.key),_=g(Be,_,Ne),Ee===null?me=Be:Ee.sibling=Be,Ee=Be);return o&&we.forEach(function(kb){return s(z,kb)}),nt&&Rr(z,Ne),me}function kn(z,_,D,ie){if(typeof D=="object"&&D!==null&&D.type===h&&D.key===null&&(D=D.props.children),typeof D=="object"&&D!==null){switch(D.$$typeof){case p:e:{for(var me=D.key,Ee=_;Ee!==null;){if(Ee.key===me){if(me=D.type,me===h){if(Ee.tag===7){u(z,Ee.sibling),_=f(Ee,D.props.children),_.return=z,z=_;break e}}else if(Ee.elementType===me||typeof me=="object"&&me!==null&&me.$$typeof===E&&fg(me)===Ee.type){u(z,Ee.sibling),_=f(Ee,D.props),_.ref=bs(z,Ee,D),_.return=z,z=_;break e}u(z,Ee);break}else s(z,Ee);Ee=Ee.sibling}D.type===h?(_=Fr(D.props.children,z.mode,ie,D.key),_.return=z,z=_):(ie=Ol(D.type,D.key,D.props,null,z.mode,ie),ie.ref=bs(z,_,D),ie.return=z,z=ie)}return b(z);case m:e:{for(Ee=D.key;_!==null;){if(_.key===Ee)if(_.tag===4&&_.stateNode.containerInfo===D.containerInfo&&_.stateNode.implementation===D.implementation){u(z,_.sibling),_=f(_,D.children||[]),_.return=z,z=_;break e}else{u(z,_);break}else s(z,_);_=_.sibling}_=ch(D,z.mode,ie),_.return=z,z=_}return b(z);case E:return Ee=D._init,kn(z,_,Ee(D._payload),ie)}if(Te(D))return We(z,_,D,ie);if(M(D))return hi(z,_,D,ie);al(z,D)}return typeof D=="string"&&D!==""||typeof D=="number"?(D=""+D,_!==null&&_.tag===6?(u(z,_.sibling),_=f(_,D),_.return=z,z=_):(u(z,_),_=uh(D,z.mode,ie),_.return=z,z=_),b(z)):u(z,_)}return kn}var Co=mg(!0),gg=mg(!1),Cs={},Li=Yn(Cs),Ps=Yn(Cs),Po=Yn(Cs);function hn(o){if(o===Cs)throw Error(l(174));return o}function Cd(o,s){Ge(Po,s),Ge(Ps,o),Ge(Li,Cs),o=He(s),Ze(Li),Ge(Li,o)}function Eo(){Ze(Li),Ze(Ps),Ze(Po)}function yg(o){var s=hn(Po.current),u=hn(Li.current);s=qe(u,o.type,s),u!==s&&(Ge(Ps,o),Ge(Li,s))}function Pd(o){Ps.current===o&&(Ze(Li),Ze(Ps))}var at=Yn(0);function ll(o){for(var s=o;s!==null;){if(s.tag===13){var u=s.memoizedState;if(u!==null&&(u=u.dehydrated,u===null||Qm(u)||Zc(u)))return s}else if(s.tag===19&&s.memoizedProps.revealOrder!==void 0){if(s.flags&128)return s}else if(s.child!==null){s.child.return=s,s=s.child;continue}if(s===o)break;for(;s.sibling===null;){if(s.return===null||s.return===o)return null;s=s.return}s.sibling.return=s.return,s=s.sibling}return null}var Ed=[];function Ad(){for(var o=0;o<Ed.length;o++){var s=Ed[o];ze?s._workInProgressVersionPrimary=null:s._workInProgressVersionSecondary=null}Ed.length=0}var ul=c.ReactCurrentDispatcher,Id=c.ReactCurrentBatchConfig,Mr=0,lt=null,At=null,kt=null,cl=!1,Es=!1,As=0,nb=0;function qt(){throw Error(l(321))}function Td(o,s){if(s===null)return!1;for(var u=0;u<s.length&&u<o.length;u++)if(!Gi(o[u],s[u]))return!1;return!0}function Rd(o,s,u,d,f,g){if(Mr=g,lt=s,s.memoizedState=null,s.updateQueue=null,s.lanes=0,ul.current=o===null||o.memoizedState===null?ab:lb,o=u(d,f),Es){g=0;do{if(Es=!1,As=0,25<=g)throw Error(l(301));g+=1,kt=At=null,s.updateQueue=null,ul.current=ub,o=u(d,f)}while(Es)}if(ul.current=pl,s=At!==null&&At.next!==null,Mr=0,kt=At=lt=null,cl=!1,s)throw Error(l(300));return o}function _d(){var o=As!==0;return As=0,o}function pn(){var o={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return kt===null?lt.memoizedState=kt=o:kt=kt.next=o,kt}function zi(){if(At===null){var o=lt.alternate;o=o!==null?o.memoizedState:null}else o=At.next;var s=kt===null?lt.memoizedState:kt.next;if(s!==null)kt=s,At=o;else{if(o===null)throw Error(l(310));At=o,o={memoizedState:At.memoizedState,baseState:At.baseState,baseQueue:At.baseQueue,queue:At.queue,next:null},kt===null?lt.memoizedState=kt=o:kt=kt.next=o}return kt}function Is(o,s){return typeof s=="function"?s(o):s}function Md(o){var s=zi(),u=s.queue;if(u===null)throw Error(l(311));u.lastRenderedReducer=o;var d=At,f=d.baseQueue,g=u.pending;if(g!==null){if(f!==null){var b=f.next;f.next=g.next,g.next=b}d.baseQueue=f=g,u.pending=null}if(f!==null){g=f.next,d=d.baseState;var R=b=null,F=null,Z=g;do{var le=Z.lane;if((Mr&le)===le)F!==null&&(F=F.next={lane:0,action:Z.action,hasEagerState:Z.hasEagerState,eagerState:Z.eagerState,next:null}),d=Z.hasEagerState?Z.eagerState:o(d,Z.action);else{var Se={lane:le,action:Z.action,hasEagerState:Z.hasEagerState,eagerState:Z.eagerState,next:null};F===null?(R=F=Se,b=d):F=F.next=Se,lt.lanes|=le,kr|=le}Z=Z.next}while(Z!==null&&Z!==g);F===null?b=d:F.next=R,Gi(d,s.memoizedState)||(ui=!0),s.memoizedState=d,s.baseState=b,s.baseQueue=F,u.lastRenderedState=d}if(o=u.interleaved,o!==null){f=o;do g=f.lane,lt.lanes|=g,kr|=g,f=f.next;while(f!==o)}else f===null&&(u.lanes=0);return[s.memoizedState,u.dispatch]}function kd(o){var s=zi(),u=s.queue;if(u===null)throw Error(l(311));u.lastRenderedReducer=o;var d=u.dispatch,f=u.pending,g=s.memoizedState;if(f!==null){u.pending=null;var b=f=f.next;do g=o(g,b.action),b=b.next;while(b!==f);Gi(g,s.memoizedState)||(ui=!0),s.memoizedState=g,s.baseQueue===null&&(s.baseState=g),u.lastRenderedState=g}return[g,d]}function vg(){}function xg(o,s){var u=lt,d=zi(),f=s(),g=!Gi(d.memoizedState,f);if(g&&(d.memoizedState=f,ui=!0),d=d.queue,Od(bg.bind(null,u,d,o),[o]),d.getSnapshot!==s||g||kt!==null&&kt.memoizedState.tag&1){if(u.flags|=2048,Ts(9,wg.bind(null,u,d,f,s),void 0,null),Ot===null)throw Error(l(349));Mr&30||Sg(u,s,f)}return f}function Sg(o,s,u){o.flags|=16384,o={getSnapshot:s,value:u},s=lt.updateQueue,s===null?(s={lastEffect:null,stores:null},lt.updateQueue=s,s.stores=[o]):(u=s.stores,u===null?s.stores=[o]:u.push(o))}function wg(o,s,u,d){s.value=u,s.getSnapshot=d,Cg(s)&&Pg(o)}function bg(o,s,u){return u(function(){Cg(s)&&Pg(o)})}function Cg(o){var s=o.getSnapshot;o=o.value;try{var u=s();return!Gi(o,u)}catch{return!0}}function Pg(o){var s=dn(o,1);s!==null&&Fi(s,o,1,-1)}function Eg(o){var s=pn();return typeof o=="function"&&(o=o()),s.memoizedState=s.baseState=o,o={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Is,lastRenderedState:o},s.queue=o,o=o.dispatch=sb.bind(null,lt,o),[s.memoizedState,o]}function Ts(o,s,u,d){return o={tag:o,create:s,destroy:u,deps:d,next:null},s=lt.updateQueue,s===null?(s={lastEffect:null,stores:null},lt.updateQueue=s,s.lastEffect=o.next=o):(u=s.lastEffect,u===null?s.lastEffect=o.next=o:(d=u.next,u.next=o,o.next=d,s.lastEffect=o)),o}function Ag(){return zi().memoizedState}function dl(o,s,u,d){var f=pn();lt.flags|=o,f.memoizedState=Ts(1|s,u,void 0,d===void 0?null:d)}function hl(o,s,u,d){var f=zi();d=d===void 0?null:d;var g=void 0;if(At!==null){var b=At.memoizedState;if(g=b.destroy,d!==null&&Td(d,b.deps)){f.memoizedState=Ts(s,u,g,d);return}}lt.flags|=o,f.memoizedState=Ts(1|s,u,g,d)}function Ig(o,s){return dl(8390656,8,o,s)}function Od(o,s){return hl(2048,8,o,s)}function Tg(o,s){return hl(4,2,o,s)}function Rg(o,s){return hl(4,4,o,s)}function _g(o,s){if(typeof s=="function")return o=o(),s(o),function(){s(null)};if(s!=null)return o=o(),s.current=o,function(){s.current=null}}function Mg(o,s,u){return u=u!=null?u.concat([o]):null,hl(4,4,_g.bind(null,s,o),u)}function Ld(){}function kg(o,s){var u=zi();s=s===void 0?null:s;var d=u.memoizedState;return d!==null&&s!==null&&Td(s,d[1])?d[0]:(u.memoizedState=[o,s],o)}function Og(o,s){var u=zi();s=s===void 0?null:s;var d=u.memoizedState;return d!==null&&s!==null&&Td(s,d[1])?d[0]:(o=o(),u.memoizedState=[o,s],o)}function Lg(o,s,u){return Mr&21?(Gi(u,s)||(u=Xm(),lt.lanes|=u,kr|=u,o.baseState=!0),s):(o.baseState&&(o.baseState=!1,ui=!0),o.memoizedState=u)}function rb(o,s){var u=Fe;Fe=u!==0&&4>u?u:4,o(!0);var d=Id.transition;Id.transition={};try{o(!1),s()}finally{Fe=u,Id.transition=d}}function zg(){return zi().memoizedState}function ob(o,s,u){var d=tr(o);if(u={lane:d,action:u,hasEagerState:!1,eagerState:null,next:null},Fg(o))Ng(s,u);else if(u=sg(o,s,u,d),u!==null){var f=Gt();Fi(u,o,d,f),Bg(u,s,d)}}function sb(o,s,u){var d=tr(o),f={lane:d,action:u,hasEagerState:!1,eagerState:null,next:null};if(Fg(o))Ng(s,f);else{var g=o.alternate;if(o.lanes===0&&(g===null||g.lanes===0)&&(g=s.lastRenderedReducer,g!==null))try{var b=s.lastRenderedState,R=g(b,u);if(f.hasEagerState=!0,f.eagerState=R,Gi(R,b)){var F=s.interleaved;F===null?(f.next=f,xd(s)):(f.next=F.next,F.next=f),s.interleaved=f;return}}catch{}finally{}u=sg(o,s,f,d),u!==null&&(f=Gt(),Fi(u,o,d,f),Bg(u,s,d))}}function Fg(o){var s=o.alternate;return o===lt||s!==null&&s===lt}function Ng(o,s){Es=cl=!0;var u=o.pending;u===null?s.next=s:(s.next=u.next,u.next=s),o.pending=s}function Bg(o,s,u){if(u&4194240){var d=s.lanes;d&=o.pendingLanes,u|=d,s.lanes=u,od(o,u)}}var pl={readContext:Oi,useCallback:qt,useContext:qt,useEffect:qt,useImperativeHandle:qt,useInsertionEffect:qt,useLayoutEffect:qt,useMemo:qt,useReducer:qt,useRef:qt,useState:qt,useDebugValue:qt,useDeferredValue:qt,useTransition:qt,useMutableSource:qt,useSyncExternalStore:qt,useId:qt,unstable_isNewReconciler:!1},ab={readContext:Oi,useCallback:function(o,s){return pn().memoizedState=[o,s===void 0?null:s],o},useContext:Oi,useEffect:Ig,useImperativeHandle:function(o,s,u){return u=u!=null?u.concat([o]):null,dl(4194308,4,_g.bind(null,s,o),u)},useLayoutEffect:function(o,s){return dl(4194308,4,o,s)},useInsertionEffect:function(o,s){return dl(4,2,o,s)},useMemo:function(o,s){var u=pn();return s=s===void 0?null:s,o=o(),u.memoizedState=[o,s],o},useReducer:function(o,s,u){var d=pn();return s=u!==void 0?u(s):s,d.memoizedState=d.baseState=s,o={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:o,lastRenderedState:s},d.queue=o,o=o.dispatch=ob.bind(null,lt,o),[d.memoizedState,o]},useRef:function(o){var s=pn();return o={current:o},s.memoizedState=o},useState:Eg,useDebugValue:Ld,useDeferredValue:function(o){return pn().memoizedState=o},useTransition:function(){var o=Eg(!1),s=o[0];return o=rb.bind(null,o[1]),pn().memoizedState=o,[s,o]},useMutableSource:function(){},useSyncExternalStore:function(o,s,u){var d=lt,f=pn();if(nt){if(u===void 0)throw Error(l(407));u=u()}else{if(u=s(),Ot===null)throw Error(l(349));Mr&30||Sg(d,s,u)}f.memoizedState=u;var g={value:u,getSnapshot:s};return f.queue=g,Ig(bg.bind(null,d,g,o),[o]),d.flags|=2048,Ts(9,wg.bind(null,d,g,u,s),void 0,null),u},useId:function(){var o=pn(),s=Ot.identifierPrefix;if(nt){var u=Tn,d=In;u=(d&~(1<<32-$i(d)-1)).toString(32)+u,s=":"+s+"R"+u,u=As++,0<u&&(s+="H"+u.toString(32)),s+=":"}else u=nb++,s=":"+s+"r"+u.toString(32)+":";return o.memoizedState=s},unstable_isNewReconciler:!1},lb={readContext:Oi,useCallback:kg,useContext:Oi,useEffect:Od,useImperativeHandle:Mg,useInsertionEffect:Tg,useLayoutEffect:Rg,useMemo:Og,useReducer:Md,useRef:Ag,useState:function(){return Md(Is)},useDebugValue:Ld,useDeferredValue:function(o){var s=zi();return Lg(s,At.memoizedState,o)},useTransition:function(){var o=Md(Is)[0],s=zi().memoizedState;return[o,s]},useMutableSource:vg,useSyncExternalStore:xg,useId:zg,unstable_isNewReconciler:!1},ub={readContext:Oi,useCallback:kg,useContext:Oi,useEffect:Od,useImperativeHandle:Mg,useInsertionEffect:Tg,useLayoutEffect:Rg,useMemo:Og,useReducer:kd,useRef:Ag,useState:function(){return kd(Is)},useDebugValue:Ld,useDeferredValue:function(o){var s=zi();return At===null?s.memoizedState=o:Lg(s,At.memoizedState,o)},useTransition:function(){var o=kd(Is)[0],s=zi().memoizedState;return[o,s]},useMutableSource:vg,useSyncExternalStore:xg,useId:zg,unstable_isNewReconciler:!1};function Ao(o,s){try{var u="",d=s;do u+=ib(d),d=d.return;while(d);var f=u}catch(g){f=`
|
|
6
6
|
Error generating stack: `+g.message+`
|
|
7
|
-
`+g.stack}return{value:o,source:s,stack:f,digest:null}}function zd(o,s,u){return{value:o,source:null,stack:u??null,digest:s??null}}function Fd(o,s){try{console.error(s.value)}catch(u){setTimeout(function(){throw u})}}var db=typeof WeakMap=="function"?WeakMap:Map;function jg(o,s,u){u=Tn(-1,u),u.tag=3,u.payload={element:null};var d=s.value;return u.callback=function(){Il||(Il=!0,ih=d),Fd(o,s)},u}function Vg(o,s,u){u=Tn(-1,u),u.tag=3;var d=o.type.getDerivedStateFromError;if(typeof d=="function"){var f=s.value;u.payload=function(){return d(f)},u.callback=function(){Fd(o,s)}}var g=o.stateNode;return g!==null&&typeof g.componentDidCatch=="function"&&(u.callback=function(){Fd(o,s),typeof d!="function"&&(Jn===null?Jn=new Set([this]):Jn.add(this));var b=s.stack;this.componentDidCatch(s.value,{componentStack:b!==null?b:""})}),u}function Ug(o,s,u){var d=o.pingCache;if(d===null){d=o.pingCache=new db;var f=new Set;d.set(s,f)}else f=d.get(s),f===void 0&&(f=new Set,d.set(s,f));f.has(u)||(f.add(u),o=Eb.bind(null,o,s,u),s.then(o,o))}function Wg(o){do{var s;if((s=o.tag===13)&&(s=o.memoizedState,s=s!==null?s.dehydrated!==null:!0),s)return o;o=o.return}while(o!==null);return null}function Hg(o,s,u,d,f){return o.mode&1?(o.flags|=65536,o.lanes=f,o):(o===s?o.flags|=65536:(o.flags|=128,u.flags|=131072,u.flags&=-52805,u.tag===1&&(u.alternate===null?u.tag=17:(s=Tn(-1,1),s.tag=2,Zn(u,s,1))),u.lanes|=1),o)}var hb=c.ReactCurrentOwner,ui=!1;function Kt(o,s,u,d){s.child=o===null?yg(s,null,u,d):bo(s,o.child,u,d)}function qg(o,s,u,d,f){u=u.render;var g=s.ref;return wo(s,f),d=Td(o,s,u,d,g,f),u=_d(),o!==null&&!ui?(s.updateQueue=o.updateQueue,s.flags&=-2053,o.lanes&=~f,_n(o,s,f)):(nt&&u&&cd(s),s.flags|=1,Kt(o,s,d,f),s.child)}function Qg(o,s,u,d,f){if(o===null){var g=u.type;return typeof g=="function"&&!lh(g)&&g.defaultProps===void 0&&u.compare===null&&u.defaultProps===void 0?(s.tag=15,s.type=g,$g(o,s,g,d,f)):(o=Ol(u.type,null,d,s,s.mode,f),o.ref=s.ref,o.return=s,s.child=o)}if(g=o.child,!(o.lanes&f)){var b=g.memoizedProps;if(u=u.compare,u=u!==null?u:tl,u(b,d)&&o.ref===s.ref)return _n(o,s,f)}return s.flags|=1,o=nr(g,d),o.ref=s.ref,o.return=s,s.child=o}function $g(o,s,u,d,f){if(o!==null){var g=o.memoizedProps;if(tl(g,d)&&o.ref===s.ref)if(ui=!1,s.pendingProps=d=g,(o.lanes&f)!==0)o.flags&131072&&(ui=!0);else return s.lanes=o.lanes,_n(o,s,f)}return Nd(o,s,u,d,f)}function Gg(o,s,u){var d=s.pendingProps,f=d.children,g=o!==null?o.memoizedState:null;if(d.mode==="hidden")if(!(s.mode&1))s.memoizedState={baseLanes:0,cachePool:null,transitions:null},Ge(Io,Si),Si|=u;else{if(!(u&1073741824))return o=g!==null?g.baseLanes|u:u,s.lanes=s.childLanes=1073741824,s.memoizedState={baseLanes:o,cachePool:null,transitions:null},s.updateQueue=null,Ge(Io,Si),Si|=o,null;s.memoizedState={baseLanes:0,cachePool:null,transitions:null},d=g!==null?g.baseLanes:u,Ge(Io,Si),Si|=d}else g!==null?(d=g.baseLanes|u,s.memoizedState=null):d=u,Ge(Io,Si),Si|=d;return Kt(o,s,f,u),s.child}function Yg(o,s){var u=s.ref;(o===null&&u!==null||o!==null&&o.ref!==u)&&(s.flags|=512,s.flags|=2097152)}function Nd(o,s,u,d,f){var g=li(u)?Ir:Ht.current;return g=go(s,g),wo(s,f),u=Td(o,s,u,d,g,f),d=_d(),o!==null&&!ui?(s.updateQueue=o.updateQueue,s.flags&=-2053,o.lanes&=~f,_n(o,s,f)):(nt&&d&&cd(s),s.flags|=1,Kt(o,s,u,f),s.child)}function Xg(o,s,u,d,f){if(li(u)){var g=!0;Qa(s)}else g=!1;if(wo(s,f),s.stateNode===null)ml(o,s),pg(s,u,d),bd(s,u,d,f),d=!0;else if(o===null){var b=s.stateNode,T=s.memoizedProps;b.props=T;var F=b.context,Z=u.contextType;typeof Z=="object"&&Z!==null?Z=Oi(Z):(Z=li(u)?Ir:Ht.current,Z=go(s,Z));var le=u.getDerivedStateFromProps,Se=typeof le=="function"||typeof b.getSnapshotBeforeUpdate=="function";Se||typeof b.UNSAFE_componentWillReceiveProps!="function"&&typeof b.componentWillReceiveProps!="function"||(T!==d||F!==Z)&&fg(s,b,d,Z),Kn=!1;var te=s.memoizedState;b.state=te,ol(s,d,b,f),F=s.memoizedState,T!==d||te!==F||ai.current||Kn?(typeof le=="function"&&(wd(s,u,le,d),F=s.memoizedState),(T=Kn||hg(s,u,T,d,te,F,Z))?(Se||typeof b.UNSAFE_componentWillMount!="function"&&typeof b.componentWillMount!="function"||(typeof b.componentWillMount=="function"&&b.componentWillMount(),typeof b.UNSAFE_componentWillMount=="function"&&b.UNSAFE_componentWillMount()),typeof b.componentDidMount=="function"&&(s.flags|=4194308)):(typeof b.componentDidMount=="function"&&(s.flags|=4194308),s.memoizedProps=d,s.memoizedState=F),b.props=d,b.state=F,b.context=Z,d=T):(typeof b.componentDidMount=="function"&&(s.flags|=4194308),d=!1)}else{b=s.stateNode,lg(o,s),T=s.memoizedProps,Z=s.type===s.elementType?T:Xi(s.type,T),b.props=Z,Se=s.pendingProps,te=b.context,F=u.contextType,typeof F=="object"&&F!==null?F=Oi(F):(F=li(u)?Ir:Ht.current,F=go(s,F));var Je=u.getDerivedStateFromProps;(le=typeof Je=="function"||typeof b.getSnapshotBeforeUpdate=="function")||typeof b.UNSAFE_componentWillReceiveProps!="function"&&typeof b.componentWillReceiveProps!="function"||(T!==Se||te!==F)&&fg(s,b,d,F),Kn=!1,te=s.memoizedState,b.state=te,ol(s,d,b,f);var We=s.memoizedState;T!==Se||te!==We||ai.current||Kn?(typeof Je=="function"&&(wd(s,u,Je,d),We=s.memoizedState),(Z=Kn||hg(s,u,Z,d,te,We,F)||!1)?(le||typeof b.UNSAFE_componentWillUpdate!="function"&&typeof b.componentWillUpdate!="function"||(typeof b.componentWillUpdate=="function"&&b.componentWillUpdate(d,We,F),typeof b.UNSAFE_componentWillUpdate=="function"&&b.UNSAFE_componentWillUpdate(d,We,F)),typeof b.componentDidUpdate=="function"&&(s.flags|=4),typeof b.getSnapshotBeforeUpdate=="function"&&(s.flags|=1024)):(typeof b.componentDidUpdate!="function"||T===o.memoizedProps&&te===o.memoizedState||(s.flags|=4),typeof b.getSnapshotBeforeUpdate!="function"||T===o.memoizedProps&&te===o.memoizedState||(s.flags|=1024),s.memoizedProps=d,s.memoizedState=We),b.props=d,b.state=We,b.context=F,d=Z):(typeof b.componentDidUpdate!="function"||T===o.memoizedProps&&te===o.memoizedState||(s.flags|=4),typeof b.getSnapshotBeforeUpdate!="function"||T===o.memoizedProps&&te===o.memoizedState||(s.flags|=1024),d=!1)}return Bd(o,s,u,d,g,f)}function Bd(o,s,u,d,f,g){Yg(o,s);var b=(s.flags&128)!==0;if(!d&&!b)return f&&Xm(s,u,!1),_n(o,s,g);d=s.stateNode,hb.current=s;var T=b&&typeof u.getDerivedStateFromError!="function"?null:d.render();return s.flags|=1,o!==null&&b?(s.child=bo(s,o.child,null,g),s.child=bo(s,null,T,g)):Kt(o,s,T,g),s.memoizedState=d.state,f&&Xm(s,u,!0),s.child}function Kg(o){var s=o.stateNode;s.pendingContext?Gm(o,s.pendingContext,s.pendingContext!==s.context):s.context&&Gm(o,s.context,!1),Cd(o,s.containerInfo)}function Zg(o,s,u,d,f){return xo(),fd(f),s.flags|=256,Kt(o,s,u,d),s.child}var Dd={dehydrated:null,treeContext:null,retryLane:0};function jd(o){return{baseLanes:o,cachePool:null,transitions:null}}function Jg(o,s,u){var d=s.pendingProps,f=at.current,g=!1,b=(s.flags&128)!==0,T;if((T=b)||(T=o!==null&&o.memoizedState===null?!1:(f&2)!==0),T?(g=!0,s.flags&=-129):(o===null||o.memoizedState!==null)&&(f|=1),Ge(at,f&1),o===null)return pd(s),o=s.memoizedState,o!==null&&(o=o.dehydrated,o!==null)?(s.mode&1?Zc(o)?s.lanes=8:s.lanes=1073741824:s.lanes=1,null):(b=d.children,o=d.fallback,g?(d=s.mode,g=s.child,b={mode:"hidden",children:b},!(d&1)&&g!==null?(g.childLanes=0,g.pendingProps=b):g=Ll(b,d,0,null),o=Fr(o,d,u,null),g.return=s,o.return=s,g.sibling=o,s.child=g,s.child.memoizedState=jd(u),s.memoizedState=Dd,o):Vd(s,b));if(f=o.memoizedState,f!==null&&(T=f.dehydrated,T!==null))return pb(o,s,b,d,T,f,u);if(g){g=d.fallback,b=s.mode,f=o.child,T=f.sibling;var F={mode:"hidden",children:d.children};return!(b&1)&&s.child!==f?(d=s.child,d.childLanes=0,d.pendingProps=F,s.deletions=null):(d=nr(f,F),d.subtreeFlags=f.subtreeFlags&14680064),T!==null?g=nr(T,g):(g=Fr(g,b,u,null),g.flags|=2),g.return=s,d.return=s,d.sibling=g,s.child=d,d=g,g=s.child,b=o.child.memoizedState,b=b===null?jd(u):{baseLanes:b.baseLanes|u,cachePool:null,transitions:b.transitions},g.memoizedState=b,g.childLanes=o.childLanes&~u,s.memoizedState=Dd,d}return g=o.child,o=g.sibling,d=nr(g,{mode:"visible",children:d.children}),!(s.mode&1)&&(d.lanes=u),d.return=s,d.sibling=null,o!==null&&(u=s.deletions,u===null?(s.deletions=[o],s.flags|=16):u.push(o)),s.child=d,s.memoizedState=null,d}function Vd(o,s){return s=Ll({mode:"visible",children:s},o.mode,0,null),s.return=o,o.child=s}function fl(o,s,u,d){return d!==null&&fd(d),bo(s,o.child,null,u),o=Vd(s,s.pendingProps.children),o.flags|=2,s.memoizedState=null,o}function pb(o,s,u,d,f,g,b){if(u)return s.flags&256?(s.flags&=-257,d=zd(Error(l(422))),fl(o,s,b,d)):s.memoizedState!==null?(s.child=o.child,s.flags|=128,null):(g=d.fallback,f=s.mode,d=Ll({mode:"visible",children:d.children},f,0,null),g=Fr(g,f,b,null),g.flags|=2,d.return=s,g.return=s,d.sibling=g,s.child=d,s.mode&1&&bo(s,o.child,null,b),s.child.memoizedState=jd(b),s.memoizedState=Dd,g);if(!(s.mode&1))return fl(o,s,b,null);if(Zc(f))return d=A1(f).digest,g=Error(l(419)),d=zd(g,d,void 0),fl(o,s,b,d);if(u=(b&o.childLanes)!==0,ui||u){if(d=Ot,d!==null){switch(b&-b){case 4:f=2;break;case 16:f=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:f=32;break;case 536870912:f=268435456;break;default:f=0}f=f&(d.suspendedLanes|b)?0:f,f!==0&&f!==g.retryLane&&(g.retryLane=f,dn(o,f),Fi(d,o,f,-1))}return ah(),d=zd(Error(l(421))),fl(o,s,b,d)}return $m(f)?(s.flags|=128,s.child=o.child,s=Ab.bind(null,o),I1(f,s),null):(o=g.treeContext,he&&(ki=_1(f),xi=s,nt=!0,Yi=null,Ss=!1,o!==null&&(_i[Mi++]=In,_i[Mi++]=Rn,_i[Mi++]=Rr,In=o.id,Rn=o.overflow,Rr=s)),s=Vd(s,d.children),s.flags|=4096,s)}function ey(o,s,u){o.lanes|=s;var d=o.alternate;d!==null&&(d.lanes|=s),vd(o.return,s,u)}function Ud(o,s,u,d,f){var g=o.memoizedState;g===null?o.memoizedState={isBackwards:s,rendering:null,renderingStartTime:0,last:d,tail:u,tailMode:f}:(g.isBackwards=s,g.rendering=null,g.renderingStartTime=0,g.last=d,g.tail=u,g.tailMode=f)}function ty(o,s,u){var d=s.pendingProps,f=d.revealOrder,g=d.tail;if(Kt(o,s,d.children,u),d=at.current,d&2)d=d&1|2,s.flags|=128;else{if(o!==null&&o.flags&128)e:for(o=s.child;o!==null;){if(o.tag===13)o.memoizedState!==null&&ey(o,u,s);else if(o.tag===19)ey(o,u,s);else if(o.child!==null){o.child.return=o,o=o.child;continue}if(o===s)break e;for(;o.sibling===null;){if(o.return===null||o.return===s)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}d&=1}if(Ge(at,d),!(s.mode&1))s.memoizedState=null;else switch(f){case"forwards":for(u=s.child,f=null;u!==null;)o=u.alternate,o!==null&&ll(o)===null&&(f=u),u=u.sibling;u=f,u===null?(f=s.child,s.child=null):(f=u.sibling,u.sibling=null),Ud(s,!1,f,u,g);break;case"backwards":for(u=null,f=s.child,s.child=null;f!==null;){if(o=f.alternate,o!==null&&ll(o)===null){s.child=f;break}o=f.sibling,f.sibling=u,u=f,f=o}Ud(s,!0,u,null,g);break;case"together":Ud(s,!1,null,null,void 0);break;default:s.memoizedState=null}return s.child}function ml(o,s){!(s.mode&1)&&o!==null&&(o.alternate=null,s.alternate=null,s.flags|=2)}function _n(o,s,u){if(o!==null&&(s.dependencies=o.dependencies),kr|=s.lanes,!(u&s.childLanes))return null;if(o!==null&&s.child!==o.child)throw Error(l(153));if(s.child!==null){for(o=s.child,u=nr(o,o.pendingProps),s.child=u,u.return=s;o.sibling!==null;)o=o.sibling,u=u.sibling=nr(o,o.pendingProps),u.return=s;u.sibling=null}return s.child}function fb(o,s,u){switch(s.tag){case 3:Kg(s),xo();break;case 5:vg(s);break;case 1:li(s.type)&&Qa(s);break;case 4:Cd(s,s.stateNode.containerInfo);break;case 10:sg(s,s.type._context,s.memoizedProps.value);break;case 13:var d=s.memoizedState;if(d!==null)return d.dehydrated!==null?(Ge(at,at.current&1),s.flags|=128,null):u&s.child.childLanes?Jg(o,s,u):(Ge(at,at.current&1),o=_n(o,s,u),o!==null?o.sibling:null);Ge(at,at.current&1);break;case 19:if(d=(u&s.childLanes)!==0,o.flags&128){if(d)return ty(o,s,u);s.flags|=128}var f=s.memoizedState;if(f!==null&&(f.rendering=null,f.tail=null,f.lastEffect=null),Ge(at,at.current),d)break;return null;case 22:case 23:return s.lanes=0,Gg(o,s,u)}return _n(o,s,u)}function fn(o){o.flags|=4}function iy(o,s){if(o!==null&&o.child===s.child)return!0;if(s.flags&16)return!1;for(o=s.child;o!==null;){if(o.flags&12854||o.subtreeFlags&12854)return!1;o=o.sibling}return!0}var Rs,Ts,gl,yl;if(Pe)Rs=function(o,s){for(var u=s.child;u!==null;){if(u.tag===5||u.tag===6)Qe(o,u.stateNode);else if(u.tag!==4&&u.child!==null){u.child.return=u,u=u.child;continue}if(u===s)break;for(;u.sibling===null;){if(u.return===null||u.return===s)return;u=u.return}u.sibling.return=u.return,u=u.sibling}},Ts=function(){},gl=function(o,s,u,d,f){if(o=o.memoizedProps,o!==d){var g=s.stateNode,b=hn(Li.current);u=N(g,u,o,d,f,b),(s.updateQueue=u)&&fn(s)}},yl=function(o,s,u,d){u!==d&&fn(s)};else if(ne){Rs=function(o,s,u,d){for(var f=s.child;f!==null;){if(f.tag===5){var g=f.stateNode;u&&d&&(g=Ar(g,f.type,f.memoizedProps,f)),Qe(o,g)}else if(f.tag===6)g=f.stateNode,u&&d&&(g=gs(g,f.memoizedProps,f)),Qe(o,g);else if(f.tag!==4){if(f.tag===22&&f.memoizedState!==null)g=f.child,g!==null&&(g.return=f),Rs(o,f,!0,!0);else if(f.child!==null){f.child.return=f,f=f.child;continue}}if(f===s)break;for(;f.sibling===null;){if(f.return===null||f.return===s)return;f=f.return}f.sibling.return=f.return,f=f.sibling}};var ny=function(o,s,u,d){for(var f=s.child;f!==null;){if(f.tag===5){var g=f.stateNode;u&&d&&(g=Ar(g,f.type,f.memoizedProps,f)),At(o,g)}else if(f.tag===6)g=f.stateNode,u&&d&&(g=gs(g,f.memoizedProps,f)),At(o,g);else if(f.tag!==4){if(f.tag===22&&f.memoizedState!==null)g=f.child,g!==null&&(g.return=f),ny(o,f,!0,!0);else if(f.child!==null){f.child.return=f,f=f.child;continue}}if(f===s)break;for(;f.sibling===null;){if(f.return===null||f.return===s)return;f=f.return}f.sibling.return=f.return,f=f.sibling}};Ts=function(o,s){var u=s.stateNode;if(!iy(o,s)){o=u.containerInfo;var d=st(o);ny(d,s,!1,!1),u.pendingChildren=d,fn(s),Gn(o,d)}},gl=function(o,s,u,d,f){var g=o.stateNode,b=o.memoizedProps;if((o=iy(o,s))&&b===d)s.stateNode=g;else{var T=s.stateNode,F=hn(Li.current),Z=null;b!==d&&(Z=N(T,u,b,d,f,F)),o&&Z===null?s.stateNode=g:(g=Et(g,Z,u,b,d,s,o,T),$e(g,u,d,f,F)&&fn(s),s.stateNode=g,o?fn(s):Rs(g,s,!1,!1))}},yl=function(o,s,u,d){u!==d?(o=hn(Co.current),u=hn(Li.current),s.stateNode=de(d,o,u,s),fn(s)):s.stateNode=o.stateNode}}else Ts=function(){},gl=function(){},yl=function(){};function _s(o,s){if(!nt)switch(o.tailMode){case"hidden":s=o.tail;for(var u=null;s!==null;)s.alternate!==null&&(u=s),s=s.sibling;u===null?o.tail=null:u.sibling=null;break;case"collapsed":u=o.tail;for(var d=null;u!==null;)u.alternate!==null&&(d=u),u=u.sibling;d===null?s||o.tail===null?o.tail=null:o.tail.sibling=null:d.sibling=null}}function Qt(o){var s=o.alternate!==null&&o.alternate.child===o.child,u=0,d=0;if(s)for(var f=o.child;f!==null;)u|=f.lanes|f.childLanes,d|=f.subtreeFlags&14680064,d|=f.flags&14680064,f.return=o,f=f.sibling;else for(f=o.child;f!==null;)u|=f.lanes|f.childLanes,d|=f.subtreeFlags,d|=f.flags,f.return=o,f=f.sibling;return o.subtreeFlags|=d,o.childLanes=u,s}function mb(o,s,u){var d=s.pendingProps;switch(dd(s),s.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Qt(s),null;case 1:return li(s.type)&&qa(),Qt(s),null;case 3:return u=s.stateNode,Po(),Ze(ai),Ze(Ht),Ad(),u.pendingContext&&(u.context=u.pendingContext,u.pendingContext=null),(o===null||o.child===null)&&(el(s)?fn(s):o===null||o.memoizedState.isDehydrated&&!(s.flags&256)||(s.flags|=1024,Yi!==null&&(oh(Yi),Yi=null))),Ts(o,s),Qt(s),null;case 5:Pd(s),u=hn(Co.current);var f=s.type;if(o!==null&&s.stateNode!=null)gl(o,s,f,d,u),o.ref!==s.ref&&(s.flags|=512,s.flags|=2097152);else{if(!d){if(s.stateNode===null)throw Error(l(166));return Qt(s),null}if(o=hn(Li.current),el(s)){if(!he)throw Error(l(175));o=M1(s.stateNode,s.type,s.memoizedProps,u,o,s,!Ss),s.updateQueue=o,o!==null&&fn(s)}else{var g=it(f,d,u,o,s);Rs(g,s,!1,!1),s.stateNode=g,$e(g,f,d,u,o)&&fn(s)}s.ref!==null&&(s.flags|=512,s.flags|=2097152)}return Qt(s),null;case 6:if(o&&s.stateNode!=null)yl(o,s,o.memoizedProps,d);else{if(typeof d!="string"&&s.stateNode===null)throw Error(l(166));if(o=hn(Co.current),u=hn(Li.current),el(s)){if(!he)throw Error(l(176));if(o=s.stateNode,u=s.memoizedProps,(d=k1(o,u,s,!Ss))&&(f=xi,f!==null))switch(f.tag){case 3:j1(f.stateNode.containerInfo,o,u,(f.mode&1)!==0);break;case 5:V1(f.type,f.memoizedProps,f.stateNode,o,u,(f.mode&1)!==0)}d&&fn(s)}else s.stateNode=de(d,o,u,s)}return Qt(s),null;case 13:if(Ze(at),d=s.memoizedState,o===null||o.memoizedState!==null&&o.memoizedState.dehydrated!==null){if(nt&&ki!==null&&s.mode&1&&!(s.flags&128))og(),xo(),s.flags|=98560,f=!1;else if(f=el(s),d!==null&&d.dehydrated!==null){if(o===null){if(!f)throw Error(l(318));if(!he)throw Error(l(344));if(f=s.memoizedState,f=f!==null?f.dehydrated:null,!f)throw Error(l(317));O1(f,s)}else xo(),!(s.flags&128)&&(s.memoizedState=null),s.flags|=4;Qt(s),f=!1}else Yi!==null&&(oh(Yi),Yi=null),f=!0;if(!f)return s.flags&65536?s:null}return s.flags&128?(s.lanes=u,s):(u=d!==null,u!==(o!==null&&o.memoizedState!==null)&&u&&(s.child.flags|=8192,s.mode&1&&(o===null||at.current&1?Rt===0&&(Rt=3):ah())),s.updateQueue!==null&&(s.flags|=4),Qt(s),null);case 4:return Po(),Ts(o,s),o===null&&ot(s.stateNode.containerInfo),Qt(s),null;case 10:return yd(s.type._context),Qt(s),null;case 17:return li(s.type)&&qa(),Qt(s),null;case 19:if(Ze(at),f=s.memoizedState,f===null)return Qt(s),null;if(d=(s.flags&128)!==0,g=f.rendering,g===null)if(d)_s(f,!1);else{if(Rt!==0||o!==null&&o.flags&128)for(o=s.child;o!==null;){if(g=ll(o),g!==null){for(s.flags|=128,_s(f,!1),o=g.updateQueue,o!==null&&(s.updateQueue=o,s.flags|=4),s.subtreeFlags=0,o=u,u=s.child;u!==null;)d=u,f=o,d.flags&=14680066,g=d.alternate,g===null?(d.childLanes=0,d.lanes=f,d.child=null,d.subtreeFlags=0,d.memoizedProps=null,d.memoizedState=null,d.updateQueue=null,d.dependencies=null,d.stateNode=null):(d.childLanes=g.childLanes,d.lanes=g.lanes,d.child=g.child,d.subtreeFlags=0,d.deletions=null,d.memoizedProps=g.memoizedProps,d.memoizedState=g.memoizedState,d.updateQueue=g.updateQueue,d.type=g.type,f=g.dependencies,d.dependencies=f===null?null:{lanes:f.lanes,firstContext:f.firstContext}),u=u.sibling;return Ge(at,at.current&1|2),s.child}o=o.sibling}f.tail!==null&&Mt()>th&&(s.flags|=128,d=!0,_s(f,!1),s.lanes=4194304)}else{if(!d)if(o=ll(g),o!==null){if(s.flags|=128,d=!0,o=o.updateQueue,o!==null&&(s.updateQueue=o,s.flags|=4),_s(f,!0),f.tail===null&&f.tailMode==="hidden"&&!g.alternate&&!nt)return Qt(s),null}else 2*Mt()-f.renderingStartTime>th&&u!==1073741824&&(s.flags|=128,d=!0,_s(f,!1),s.lanes=4194304);f.isBackwards?(g.sibling=s.child,s.child=g):(o=f.last,o!==null?o.sibling=g:s.child=g,f.last=g)}return f.tail!==null?(s=f.tail,f.rendering=s,f.tail=s.sibling,f.renderingStartTime=Mt(),s.sibling=null,o=at.current,Ge(at,d?o&1|2:o&1),s):(Qt(s),null);case 22:case 23:return sh(),u=s.memoizedState!==null,o!==null&&o.memoizedState!==null!==u&&(s.flags|=8192),u&&s.mode&1?Si&1073741824&&(Qt(s),Pe&&s.subtreeFlags&6&&(s.flags|=8192)):Qt(s),null;case 24:return null;case 25:return null}throw Error(l(156,s.tag))}function gb(o,s){switch(dd(s),s.tag){case 1:return li(s.type)&&qa(),o=s.flags,o&65536?(s.flags=o&-65537|128,s):null;case 3:return Po(),Ze(ai),Ze(Ht),Ad(),o=s.flags,o&65536&&!(o&128)?(s.flags=o&-65537|128,s):null;case 5:return Pd(s),null;case 13:if(Ze(at),o=s.memoizedState,o!==null&&o.dehydrated!==null){if(s.alternate===null)throw Error(l(340));xo()}return o=s.flags,o&65536?(s.flags=o&-65537|128,s):null;case 19:return Ze(at),null;case 4:return Po(),null;case 10:return yd(s.type._context),null;case 22:case 23:return sh(),null;case 24:return null;default:return null}}var vl=!1,$t=!1,yb=typeof WeakSet=="function"?WeakSet:Set,ae=null;function Ao(o,s){var u=o.ref;if(u!==null)if(typeof u=="function")try{u(null)}catch(d){rt(o,s,d)}else u.current=null}function Wd(o,s,u){try{u()}catch(d){rt(o,s,d)}}var ry=!1;function vb(o,s){for($(o.containerInfo),ae=s;ae!==null;)if(o=ae,s=o.child,(o.subtreeFlags&1028)!==0&&s!==null)s.return=o,ae=s;else for(;ae!==null;){o=ae;try{var u=o.alternate;if(o.flags&1024)switch(o.tag){case 0:case 11:case 15:break;case 1:if(u!==null){var d=u.memoizedProps,f=u.memoizedState,g=o.stateNode,b=g.getSnapshotBeforeUpdate(o.elementType===o.type?d:Xi(o.type,d),f);g.__reactInternalSnapshotBeforeUpdate=b}break;case 3:Pe&&Ue(o.stateNode.containerInfo);break;case 5:case 6:case 4:case 17:break;default:throw Error(l(163))}}catch(T){rt(o,o.return,T)}if(s=o.sibling,s!==null){s.return=o.return,ae=s;break}ae=o.return}return u=ry,ry=!1,u}function Ms(o,s,u){var d=s.updateQueue;if(d=d!==null?d.lastEffect:null,d!==null){var f=d=d.next;do{if((f.tag&o)===o){var g=f.destroy;f.destroy=void 0,g!==void 0&&Wd(s,u,g)}f=f.next}while(f!==d)}}function xl(o,s){if(s=s.updateQueue,s=s!==null?s.lastEffect:null,s!==null){var u=s=s.next;do{if((u.tag&o)===o){var d=u.create;u.destroy=d()}u=u.next}while(u!==s)}}function Hd(o){var s=o.ref;if(s!==null){var u=o.stateNode;switch(o.tag){case 5:o=ke(u);break;default:o=u}typeof s=="function"?s(o):s.current=o}}function oy(o){var s=o.alternate;s!==null&&(o.alternate=null,oy(s)),o.child=null,o.deletions=null,o.sibling=null,o.tag===5&&(s=o.stateNode,s!==null&&Dt(s)),o.stateNode=null,o.return=null,o.dependencies=null,o.memoizedProps=null,o.memoizedState=null,o.pendingProps=null,o.stateNode=null,o.updateQueue=null}function sy(o){return o.tag===5||o.tag===3||o.tag===4}function ay(o){e:for(;;){for(;o.sibling===null;){if(o.return===null||sy(o.return))return null;o=o.return}for(o.sibling.return=o.return,o=o.sibling;o.tag!==5&&o.tag!==6&&o.tag!==18;){if(o.flags&2||o.child===null||o.tag===4)continue e;o.child.return=o,o=o.child}if(!(o.flags&2))return o.stateNode}}function qd(o,s,u){var d=o.tag;if(d===5||d===6)o=o.stateNode,s?j(u,o,s):X(u,o);else if(d!==4&&(o=o.child,o!==null))for(qd(o,s,u),o=o.sibling;o!==null;)qd(o,s,u),o=o.sibling}function Qd(o,s,u){var d=o.tag;if(d===5||d===6)o=o.stateNode,s?je(u,o,s):k(u,o);else if(d!==4&&(o=o.child,o!==null))for(Qd(o,s,u),o=o.sibling;o!==null;)Qd(o,s,u),o=o.sibling}var jt=null,Ki=!1;function mn(o,s,u){for(u=u.child;u!==null;)$d(o,s,u),u=u.sibling}function $d(o,s,u){if(un&&typeof un.onCommitFiberUnmount=="function")try{un.onCommitFiberUnmount(Xa,u)}catch{}switch(u.tag){case 5:$t||Ao(u,s);case 6:if(Pe){var d=jt,f=Ki;jt=null,mn(o,s,u),jt=d,Ki=f,jt!==null&&(Ki?ue(jt,u.stateNode):H(jt,u.stateNode))}else mn(o,s,u);break;case 18:Pe&&jt!==null&&(Ki?B1(jt,u.stateNode):N1(jt,u.stateNode));break;case 4:Pe?(d=jt,f=Ki,jt=u.stateNode.containerInfo,Ki=!0,mn(o,s,u),jt=d,Ki=f):(ne&&(d=u.stateNode.containerInfo,f=st(d),Qi(d,f)),mn(o,s,u));break;case 0:case 11:case 14:case 15:if(!$t&&(d=u.updateQueue,d!==null&&(d=d.lastEffect,d!==null))){f=d=d.next;do{var g=f,b=g.destroy;g=g.tag,b!==void 0&&(g&2||g&4)&&Wd(u,s,b),f=f.next}while(f!==d)}mn(o,s,u);break;case 1:if(!$t&&(Ao(u,s),d=u.stateNode,typeof d.componentWillUnmount=="function"))try{d.props=u.memoizedProps,d.state=u.memoizedState,d.componentWillUnmount()}catch(T){rt(u,s,T)}mn(o,s,u);break;case 21:mn(o,s,u);break;case 22:u.mode&1?($t=(d=$t)||u.memoizedState!==null,mn(o,s,u),$t=d):mn(o,s,u);break;default:mn(o,s,u)}}function ly(o){var s=o.updateQueue;if(s!==null){o.updateQueue=null;var u=o.stateNode;u===null&&(u=o.stateNode=new yb),s.forEach(function(d){var f=Ib.bind(null,o,d);u.has(d)||(u.add(d),d.then(f,f))})}}function Zi(o,s){var u=s.deletions;if(u!==null)for(var d=0;d<u.length;d++){var f=u[d];try{var g=o,b=s;if(Pe){var T=b;e:for(;T!==null;){switch(T.tag){case 5:jt=T.stateNode,Ki=!1;break e;case 3:jt=T.stateNode.containerInfo,Ki=!0;break e;case 4:jt=T.stateNode.containerInfo,Ki=!0;break e}T=T.return}if(jt===null)throw Error(l(160));$d(g,b,f),jt=null,Ki=!1}else $d(g,b,f);var F=f.alternate;F!==null&&(F.return=null),f.return=null}catch(Z){rt(f,s,Z)}}if(s.subtreeFlags&12854)for(s=s.child;s!==null;)uy(s,o),s=s.sibling}function uy(o,s){var u=o.alternate,d=o.flags;switch(o.tag){case 0:case 11:case 14:case 15:if(Zi(s,o),gn(o),d&4){try{Ms(3,o,o.return),xl(3,o)}catch(te){rt(o,o.return,te)}try{Ms(5,o,o.return)}catch(te){rt(o,o.return,te)}}break;case 1:Zi(s,o),gn(o),d&512&&u!==null&&Ao(u,u.return);break;case 5:if(Zi(s,o),gn(o),d&512&&u!==null&&Ao(u,u.return),Pe){if(o.flags&32){var f=o.stateNode;try{oe(f)}catch(te){rt(o,o.return,te)}}if(d&4&&(f=o.stateNode,f!=null)){var g=o.memoizedProps;if(u=u!==null?u.memoizedProps:g,d=o.type,s=o.updateQueue,o.updateQueue=null,s!==null)try{Ae(f,s,d,u,g,o)}catch(te){rt(o,o.return,te)}}}break;case 6:if(Zi(s,o),gn(o),d&4&&Pe){if(o.stateNode===null)throw Error(l(162));f=o.stateNode,g=o.memoizedProps,u=u!==null?u.memoizedProps:g;try{K(f,u,g)}catch(te){rt(o,o.return,te)}}break;case 3:if(Zi(s,o),gn(o),d&4){if(Pe&&he&&u!==null&&u.memoizedState.isDehydrated)try{z1(s.containerInfo)}catch(te){rt(o,o.return,te)}if(ne){f=s.containerInfo,g=s.pendingChildren;try{Qi(f,g)}catch(te){rt(o,o.return,te)}}}break;case 4:if(Zi(s,o),gn(o),d&4&&ne){g=o.stateNode,f=g.containerInfo,g=g.pendingChildren;try{Qi(f,g)}catch(te){rt(o,o.return,te)}}break;case 13:Zi(s,o),gn(o),f=o.child,f.flags&8192&&(g=f.memoizedState!==null,f.stateNode.isHidden=g,!g||f.alternate!==null&&f.alternate.memoizedState!==null||(eh=Mt())),d&4&&ly(o);break;case 22:var b=u!==null&&u.memoizedState!==null;if(o.mode&1?($t=(u=$t)||b,Zi(s,o),$t=u):Zi(s,o),gn(o),d&8192){if(u=o.memoizedState!==null,(o.stateNode.isHidden=u)&&!b&&o.mode&1)for(ae=o,d=o.child;d!==null;){for(s=ae=d;ae!==null;){b=ae;var T=b.child;switch(b.tag){case 0:case 11:case 14:case 15:Ms(4,b,b.return);break;case 1:Ao(b,b.return);var F=b.stateNode;if(typeof F.componentWillUnmount=="function"){var Z=b,le=b.return;try{var Se=Z;F.props=Se.memoizedProps,F.state=Se.memoizedState,F.componentWillUnmount()}catch(te){rt(Z,le,te)}}break;case 5:Ao(b,b.return);break;case 22:if(b.memoizedState!==null){hy(s);continue}}T!==null?(T.return=b,ae=T):hy(s)}d=d.sibling}if(Pe){e:if(d=null,Pe)for(s=o;;){if(s.tag===5){if(d===null){d=s;try{f=s.stateNode,u?se(f):Xe(s.stateNode,s.memoizedProps)}catch(te){rt(o,o.return,te)}}}else if(s.tag===6){if(d===null)try{g=s.stateNode,u?Ie(g):Ke(g,s.memoizedProps)}catch(te){rt(o,o.return,te)}}else if((s.tag!==22&&s.tag!==23||s.memoizedState===null||s===o)&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===o)break e;for(;s.sibling===null;){if(s.return===null||s.return===o)break e;d===s&&(d=null),s=s.return}d===s&&(d=null),s.sibling.return=s.return,s=s.sibling}}}break;case 19:Zi(s,o),gn(o),d&4&&ly(o);break;case 21:break;default:Zi(s,o),gn(o)}}function gn(o){var s=o.flags;if(s&2){try{if(Pe){e:{for(var u=o.return;u!==null;){if(sy(u)){var d=u;break e}u=u.return}throw Error(l(160))}switch(d.tag){case 5:var f=d.stateNode;d.flags&32&&(oe(f),d.flags&=-33);var g=ay(o);Qd(o,g,f);break;case 3:case 4:var b=d.stateNode.containerInfo,T=ay(o);qd(o,T,b);break;default:throw Error(l(161))}}}catch(F){rt(o,o.return,F)}o.flags&=-3}s&4096&&(o.flags&=-4097)}function xb(o,s,u){ae=o,cy(o,s,u)}function cy(o,s,u){for(var d=(o.mode&1)!==0;ae!==null;){var f=ae,g=f.child;if(f.tag===22&&d){var b=f.memoizedState!==null||vl;if(!b){var T=f.alternate,F=T!==null&&T.memoizedState!==null||$t;T=vl;var Z=$t;if(vl=b,($t=F)&&!Z)for(ae=f;ae!==null;)b=ae,F=b.child,b.tag===22&&b.memoizedState!==null?py(f):F!==null?(F.return=b,ae=F):py(f);for(;g!==null;)ae=g,cy(g,s,u),g=g.sibling;ae=f,vl=T,$t=Z}dy(o,s,u)}else f.subtreeFlags&8772&&g!==null?(g.return=f,ae=g):dy(o,s,u)}}function dy(o){for(;ae!==null;){var s=ae;if(s.flags&8772){var u=s.alternate;try{if(s.flags&8772)switch(s.tag){case 0:case 11:case 15:$t||xl(5,s);break;case 1:var d=s.stateNode;if(s.flags&4&&!$t)if(u===null)d.componentDidMount();else{var f=s.elementType===s.type?u.memoizedProps:Xi(s.type,u.memoizedProps);d.componentDidUpdate(f,u.memoizedState,d.__reactInternalSnapshotBeforeUpdate)}var g=s.updateQueue;g!==null&&cg(s,g,d);break;case 3:var b=s.updateQueue;if(b!==null){if(u=null,s.child!==null)switch(s.child.tag){case 5:u=ke(s.child.stateNode);break;case 1:u=s.child.stateNode}cg(s,b,u)}break;case 5:var T=s.stateNode;u===null&&s.flags&4&&be(T,s.type,s.memoizedProps,s);break;case 6:break;case 4:break;case 12:break;case 13:if(he&&s.memoizedState===null){var F=s.alternate;if(F!==null){var Z=F.memoizedState;if(Z!==null){var le=Z.dehydrated;le!==null&&F1(le)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(l(163))}$t||s.flags&512&&Hd(s)}catch(Se){rt(s,s.return,Se)}}if(s===o){ae=null;break}if(u=s.sibling,u!==null){u.return=s.return,ae=u;break}ae=s.return}}function hy(o){for(;ae!==null;){var s=ae;if(s===o){ae=null;break}var u=s.sibling;if(u!==null){u.return=s.return,ae=u;break}ae=s.return}}function py(o){for(;ae!==null;){var s=ae;try{switch(s.tag){case 0:case 11:case 15:var u=s.return;try{xl(4,s)}catch(F){rt(s,u,F)}break;case 1:var d=s.stateNode;if(typeof d.componentDidMount=="function"){var f=s.return;try{d.componentDidMount()}catch(F){rt(s,f,F)}}var g=s.return;try{Hd(s)}catch(F){rt(s,g,F)}break;case 5:var b=s.return;try{Hd(s)}catch(F){rt(s,b,F)}}}catch(F){rt(s,s.return,F)}if(s===o){ae=null;break}var T=s.sibling;if(T!==null){T.return=s.return,ae=T;break}ae=s.return}}var Sl=0,wl=1,bl=2,Cl=3,Pl=4;if(typeof Symbol=="function"&&Symbol.for){var ks=Symbol.for;Sl=ks("selector.component"),wl=ks("selector.has_pseudo_class"),bl=ks("selector.role"),Cl=ks("selector.test_id"),Pl=ks("selector.text")}function Gd(o){var s=Oe(o);if(s!=null){if(typeof s.memoizedProps["data-testname"]!="string")throw Error(l(364));return s}if(o=Xc(o),o===null)throw Error(l(362));return o.stateNode.current}function Yd(o,s){switch(s.$$typeof){case Sl:if(o.type===s.value)return!0;break;case wl:e:{s=s.value,o=[o,0];for(var u=0;u<o.length;){var d=o[u++],f=o[u++],g=s[f];if(d.tag!==5||!ln(d)){for(;g!=null&&Yd(d,g);)f++,g=s[f];if(f===s.length){s=!0;break e}else for(d=d.child;d!==null;)o.push(d,f),d=d.sibling}}s=!1}return s;case bl:if(o.tag===5&&ms(o.stateNode,s.value))return!0;break;case Pl:if((o.tag===5||o.tag===6)&&(o=fs(o),o!==null&&0<=o.indexOf(s.value)))return!0;break;case Cl:if(o.tag===5&&(o=o.memoizedProps["data-testname"],typeof o=="string"&&o.toLowerCase()===s.value.toLowerCase()))return!0;break;default:throw Error(l(365))}return!1}function Xd(o){switch(o.$$typeof){case Sl:return"<"+(Q(o.value)||"Unknown")+">";case wl:return":has("+(Xd(o)||"")+")";case bl:return'[role="'+o.value+'"]';case Pl:return'"'+o.value+'"';case Cl:return'[data-testname="'+o.value+'"]';default:throw Error(l(365))}}function fy(o,s){var u=[];o=[o,0];for(var d=0;d<o.length;){var f=o[d++],g=o[d++],b=s[g];if(f.tag!==5||!ln(f)){for(;b!=null&&Yd(f,b);)g++,b=s[g];if(g===s.length)u.push(f);else for(f=f.child;f!==null;)o.push(f,g),f=f.sibling}}return u}function Kd(o,s){if(!Ti)throw Error(l(363));o=Gd(o),o=fy(o,s),s=[],o=Array.from(o);for(var u=0;u<o.length;){var d=o[u++];if(d.tag===5)ln(d)||s.push(d.stateNode);else for(d=d.child;d!==null;)o.push(d),d=d.sibling}return s}var Sb=Math.ceil,El=c.ReactCurrentDispatcher,Zd=c.ReactCurrentOwner,yt=c.ReactCurrentBatchConfig,Te=0,Ot=null,xt=null,Vt=0,Si=0,Io=Yn(0),Rt=0,Os=null,kr=0,Al=0,Jd=0,Ls=null,ci=null,eh=0,th=1/0,Mn=null;function Ro(){th=Mt()+500}var Il=!1,ih=null,Jn=null,Rl=!1,er=null,Tl=0,zs=0,nh=null,_l=-1,Ml=0;function Gt(){return Te&6?Mt():_l!==-1?_l:_l=Mt()}function tr(o){return o.mode&1?Te&2&&Vt!==0?Vt&-Vt:ib.transition!==null?(Ml===0&&(Ml=Km()),Ml):(o=Fe,o!==0?o:Ri()):1}function Fi(o,s,u,d){if(50<zs)throw zs=0,nh=null,Error(l(185));xs(o,u,d),(!(Te&2)||o!==Ot)&&(o===Ot&&(!(Te&2)&&(Al|=u),Rt===4&&ir(o,Vt)),di(o,d),u===1&&Te===0&&!(s.mode&1)&&(Ro(),Ka&&cn()))}function di(o,s){var u=o.callbackNode;$1(o,s);var d=Ya(o,o===Ot?Vt:0);if(d===0)u!==null&&Jm(u),o.callbackNode=null,o.callbackPriority=0;else if(s=d&-d,o.callbackPriority!==s){if(u!=null&&Jm(u),s===1)o.tag===0?tb(gy.bind(null,o)):eg(gy.bind(null,o)),Wt?ps(function(){!(Te&6)&&cn()}):sd(ad,cn),u=null;else{switch(Zm(d)){case 1:u=ad;break;case 4:u=K1;break;case 16:u=ld;break;case 536870912:u=Z1;break;default:u=ld}u=Ey(u,my.bind(null,o))}o.callbackPriority=s,o.callbackNode=u}}function my(o,s){if(_l=-1,Ml=0,Te&6)throw Error(l(327));var u=o.callbackNode;if(zr()&&o.callbackNode!==u)return null;var d=Ya(o,o===Ot?Vt:0);if(d===0)return null;if(d&30||d&o.expiredLanes||s)s=kl(o,d);else{s=d;var f=Te;Te|=2;var g=xy();(Ot!==o||Vt!==s)&&(Mn=null,Ro(),Or(o,s));do try{Cb();break}catch(T){vy(o,T)}while(!0);gd(),El.current=g,Te=f,xt!==null?s=0:(Ot=null,Vt=0,s=Rt)}if(s!==0){if(s===2&&(f=nd(o),f!==0&&(d=f,s=rh(o,f))),s===1)throw u=Os,Or(o,0),ir(o,d),di(o,Mt()),u;if(s===6)ir(o,d);else{if(f=o.current.alternate,!(d&30)&&!wb(f)&&(s=kl(o,d),s===2&&(g=nd(o),g!==0&&(d=g,s=rh(o,g))),s===1))throw u=Os,Or(o,0),ir(o,d),di(o,Mt()),u;switch(o.finishedWork=f,o.finishedLanes=d,s){case 0:case 1:throw Error(l(345));case 2:Lr(o,ci,Mn);break;case 3:if(ir(o,d),(d&130023424)===d&&(s=eh+500-Mt(),10<s)){if(Ya(o,0)!==0)break;if(f=o.suspendedLanes,(f&d)!==d){Gt(),o.pingedLanes|=o.suspendedLanes&f;break}o.timeoutHandle=ye(Lr.bind(null,o,ci,Mn),s);break}Lr(o,ci,Mn);break;case 4:if(ir(o,d),(d&4194240)===d)break;for(s=o.eventTimes,f=-1;0<d;){var b=31-$i(d);g=1<<b,b=s[b],b>f&&(f=b),d&=~g}if(d=f,d=Mt()-d,d=(120>d?120:480>d?480:1080>d?1080:1920>d?1920:3e3>d?3e3:4320>d?4320:1960*Sb(d/1960))-d,10<d){o.timeoutHandle=ye(Lr.bind(null,o,ci,Mn),d);break}Lr(o,ci,Mn);break;case 5:Lr(o,ci,Mn);break;default:throw Error(l(329))}}}return di(o,Mt()),o.callbackNode===u?my.bind(null,o):null}function rh(o,s){var u=Ls;return o.current.memoizedState.isDehydrated&&(Or(o,s).flags|=256),o=kl(o,s),o!==2&&(s=ci,ci=u,s!==null&&oh(s)),o}function oh(o){ci===null?ci=o:ci.push.apply(ci,o)}function wb(o){for(var s=o;;){if(s.flags&16384){var u=s.updateQueue;if(u!==null&&(u=u.stores,u!==null))for(var d=0;d<u.length;d++){var f=u[d],g=f.getSnapshot;f=f.value;try{if(!Gi(g(),f))return!1}catch{return!1}}}if(u=s.child,s.subtreeFlags&16384&&u!==null)u.return=s,s=u;else{if(s===o)break;for(;s.sibling===null;){if(s.return===null||s.return===o)return!0;s=s.return}s.sibling.return=s.return,s=s.sibling}}return!0}function ir(o,s){for(s&=~Jd,s&=~Al,o.suspendedLanes|=s,o.pingedLanes&=~s,o=o.expirationTimes;0<s;){var u=31-$i(s),d=1<<u;o[u]=-1,s&=~d}}function gy(o){if(Te&6)throw Error(l(327));zr();var s=Ya(o,0);if(!(s&1))return di(o,Mt()),null;var u=kl(o,s);if(o.tag!==0&&u===2){var d=nd(o);d!==0&&(s=d,u=rh(o,d))}if(u===1)throw u=Os,Or(o,0),ir(o,s),di(o,Mt()),u;if(u===6)throw Error(l(345));return o.finishedWork=o.current.alternate,o.finishedLanes=s,Lr(o,ci,Mn),di(o,Mt()),null}function yy(o){er!==null&&er.tag===0&&!(Te&6)&&zr();var s=Te;Te|=1;var u=yt.transition,d=Fe;try{if(yt.transition=null,Fe=1,o)return o()}finally{Fe=d,yt.transition=u,Te=s,!(Te&6)&&cn()}}function sh(){Si=Io.current,Ze(Io)}function Or(o,s){o.finishedWork=null,o.finishedLanes=0;var u=o.timeoutHandle;if(u!==Ve&&(o.timeoutHandle=Ve,ge(u)),xt!==null)for(u=xt.return;u!==null;){var d=u;switch(dd(d),d.tag){case 1:d=d.type.childContextTypes,d!=null&&qa();break;case 3:Po(),Ze(ai),Ze(Ht),Ad();break;case 5:Pd(d);break;case 4:Po();break;case 13:Ze(at);break;case 19:Ze(at);break;case 10:yd(d.type._context);break;case 22:case 23:sh()}u=u.return}if(Ot=o,xt=o=nr(o.current,null),Vt=Si=s,Rt=0,Os=null,Jd=Al=kr=0,ci=Ls=null,_r!==null){for(s=0;s<_r.length;s++)if(u=_r[s],d=u.interleaved,d!==null){u.interleaved=null;var f=d.next,g=u.pending;if(g!==null){var b=g.next;g.next=f,d.next=b}u.pending=d}_r=null}return o}function vy(o,s){do{var u=xt;try{if(gd(),ul.current=pl,cl){for(var d=lt.memoizedState;d!==null;){var f=d.queue;f!==null&&(f.pending=null),d=d.next}cl=!1}if(Mr=0,kt=It=lt=null,Ps=!1,Es=0,Zd.current=null,u===null||u.return===null){Rt=1,Os=s,xt=null;break}e:{var g=o,b=u.return,T=u,F=s;if(s=Vt,T.flags|=32768,F!==null&&typeof F=="object"&&typeof F.then=="function"){var Z=F,le=T,Se=le.tag;if(!(le.mode&1)&&(Se===0||Se===11||Se===15)){var te=le.alternate;te?(le.updateQueue=te.updateQueue,le.memoizedState=te.memoizedState,le.lanes=te.lanes):(le.updateQueue=null,le.memoizedState=null)}var Je=Wg(b);if(Je!==null){Je.flags&=-257,Hg(Je,b,T,g,s),Je.mode&1&&Ug(g,Z,s),s=Je,F=Z;var We=s.updateQueue;if(We===null){var hi=new Set;hi.add(F),s.updateQueue=hi}else We.add(F);break e}else{if(!(s&1)){Ug(g,Z,s),ah();break e}F=Error(l(426))}}else if(nt&&T.mode&1){var kn=Wg(b);if(kn!==null){!(kn.flags&65536)&&(kn.flags|=256),Hg(kn,b,T,g,s),fd(Eo(F,T));break e}}g=F=Eo(F,T),Rt!==4&&(Rt=2),Ls===null?Ls=[g]:Ls.push(g),g=b;do{switch(g.tag){case 3:g.flags|=65536,s&=-s,g.lanes|=s;var O=jg(g,F,s);ug(g,O);break e;case 1:T=F;var _=g.type,D=g.stateNode;if(!(g.flags&128)&&(typeof _.getDerivedStateFromError=="function"||D!==null&&typeof D.componentDidCatch=="function"&&(Jn===null||!Jn.has(D)))){g.flags|=65536,s&=-s,g.lanes|=s;var ie=Vg(g,T,s);ug(g,ie);break e}}g=g.return}while(g!==null)}wy(u)}catch(me){s=me,xt===u&&u!==null&&(xt=u=u.return);continue}break}while(!0)}function xy(){var o=El.current;return El.current=pl,o===null?pl:o}function ah(){(Rt===0||Rt===3||Rt===2)&&(Rt=4),Ot===null||!(kr&268435455)&&!(Al&268435455)||ir(Ot,Vt)}function kl(o,s){var u=Te;Te|=2;var d=xy();(Ot!==o||Vt!==s)&&(Mn=null,Or(o,s));do try{bb();break}catch(f){vy(o,f)}while(!0);if(gd(),Te=u,El.current=d,xt!==null)throw Error(l(261));return Ot=null,Vt=0,Rt}function bb(){for(;xt!==null;)Sy(xt)}function Cb(){for(;xt!==null&&!Y1();)Sy(xt)}function Sy(o){var s=Py(o.alternate,o,Si);o.memoizedProps=o.pendingProps,s===null?wy(o):xt=s,Zd.current=null}function wy(o){var s=o;do{var u=s.alternate;if(o=s.return,s.flags&32768){if(u=gb(u,s),u!==null){u.flags&=32767,xt=u;return}if(o!==null)o.flags|=32768,o.subtreeFlags=0,o.deletions=null;else{Rt=6,xt=null;return}}else if(u=mb(u,s,Si),u!==null){xt=u;return}if(s=s.sibling,s!==null){xt=s;return}xt=s=o}while(s!==null);Rt===0&&(Rt=5)}function Lr(o,s,u){var d=Fe,f=yt.transition;try{yt.transition=null,Fe=1,Pb(o,s,u,d)}finally{yt.transition=f,Fe=d}return null}function Pb(o,s,u,d){do zr();while(er!==null);if(Te&6)throw Error(l(327));u=o.finishedWork;var f=o.finishedLanes;if(u===null)return null;if(o.finishedWork=null,o.finishedLanes=0,u===o.current)throw Error(l(177));o.callbackNode=null,o.callbackPriority=0;var g=u.lanes|u.childLanes;if(G1(o,g),o===Ot&&(xt=Ot=null,Vt=0),!(u.subtreeFlags&2064)&&!(u.flags&2064)||Rl||(Rl=!0,Ey(ld,function(){return zr(),null})),g=(u.flags&15990)!==0,u.subtreeFlags&15990||g){g=yt.transition,yt.transition=null;var b=Fe;Fe=1;var T=Te;Te|=4,Zd.current=null,vb(o,u),uy(u,o),ve(o.containerInfo),o.current=u,xb(u,o,f),X1(),Te=T,Fe=b,yt.transition=g}else o.current=u;if(Rl&&(Rl=!1,er=o,Tl=f),g=o.pendingLanes,g===0&&(Jn=null),J1(u.stateNode,d),di(o,Mt()),s!==null)for(d=o.onRecoverableError,u=0;u<s.length;u++)f=s[u],d(f.value,{componentStack:f.stack,digest:f.digest});if(Il)throw Il=!1,o=ih,ih=null,o;return Tl&1&&o.tag!==0&&zr(),g=o.pendingLanes,g&1?o===nh?zs++:(zs=0,nh=o):zs=0,cn(),null}function zr(){if(er!==null){var o=Zm(Tl),s=yt.transition,u=Fe;try{if(yt.transition=null,Fe=16>o?16:o,er===null)var d=!1;else{if(o=er,er=null,Tl=0,Te&6)throw Error(l(331));var f=Te;for(Te|=4,ae=o.current;ae!==null;){var g=ae,b=g.child;if(ae.flags&16){var T=g.deletions;if(T!==null){for(var F=0;F<T.length;F++){var Z=T[F];for(ae=Z;ae!==null;){var le=ae;switch(le.tag){case 0:case 11:case 15:Ms(8,le,g)}var Se=le.child;if(Se!==null)Se.return=le,ae=Se;else for(;ae!==null;){le=ae;var te=le.sibling,Je=le.return;if(oy(le),le===Z){ae=null;break}if(te!==null){te.return=Je,ae=te;break}ae=Je}}}var We=g.alternate;if(We!==null){var hi=We.child;if(hi!==null){We.child=null;do{var kn=hi.sibling;hi.sibling=null,hi=kn}while(hi!==null)}}ae=g}}if(g.subtreeFlags&2064&&b!==null)b.return=g,ae=b;else e:for(;ae!==null;){if(g=ae,g.flags&2048)switch(g.tag){case 0:case 11:case 15:Ms(9,g,g.return)}var O=g.sibling;if(O!==null){O.return=g.return,ae=O;break e}ae=g.return}}var _=o.current;for(ae=_;ae!==null;){b=ae;var D=b.child;if(b.subtreeFlags&2064&&D!==null)D.return=b,ae=D;else e:for(b=_;ae!==null;){if(T=ae,T.flags&2048)try{switch(T.tag){case 0:case 11:case 15:xl(9,T)}}catch(me){rt(T,T.return,me)}if(T===b){ae=null;break e}var ie=T.sibling;if(ie!==null){ie.return=T.return,ae=ie;break e}ae=T.return}}if(Te=f,cn(),un&&typeof un.onPostCommitFiberRoot=="function")try{un.onPostCommitFiberRoot(Xa,o)}catch{}d=!0}return d}finally{Fe=u,yt.transition=s}}return!1}function by(o,s,u){s=Eo(u,s),s=jg(o,s,1),o=Zn(o,s,1),s=Gt(),o!==null&&(xs(o,1,s),di(o,s))}function rt(o,s,u){if(o.tag===3)by(o,o,u);else for(;s!==null;){if(s.tag===3){by(s,o,u);break}else if(s.tag===1){var d=s.stateNode;if(typeof s.type.getDerivedStateFromError=="function"||typeof d.componentDidCatch=="function"&&(Jn===null||!Jn.has(d))){o=Eo(u,o),o=Vg(s,o,1),s=Zn(s,o,1),o=Gt(),s!==null&&(xs(s,1,o),di(s,o));break}}s=s.return}}function Eb(o,s,u){var d=o.pingCache;d!==null&&d.delete(s),s=Gt(),o.pingedLanes|=o.suspendedLanes&u,Ot===o&&(Vt&u)===u&&(Rt===4||Rt===3&&(Vt&130023424)===Vt&&500>Mt()-eh?Or(o,0):Jd|=u),di(o,s)}function Cy(o,s){s===0&&(o.mode&1?(s=Ga,Ga<<=1,!(Ga&130023424)&&(Ga=4194304)):s=1);var u=Gt();o=dn(o,s),o!==null&&(xs(o,s,u),di(o,u))}function Ab(o){var s=o.memoizedState,u=0;s!==null&&(u=s.retryLane),Cy(o,u)}function Ib(o,s){var u=0;switch(o.tag){case 13:var d=o.stateNode,f=o.memoizedState;f!==null&&(u=f.retryLane);break;case 19:d=o.stateNode;break;default:throw Error(l(314))}d!==null&&d.delete(s),Cy(o,u)}var Py;Py=function(o,s,u){if(o!==null)if(o.memoizedProps!==s.pendingProps||ai.current)ui=!0;else{if(!(o.lanes&u)&&!(s.flags&128))return ui=!1,fb(o,s,u);ui=!!(o.flags&131072)}else ui=!1,nt&&s.flags&1048576&&tg(s,Ja,s.index);switch(s.lanes=0,s.tag){case 2:var d=s.type;ml(o,s),o=s.pendingProps;var f=go(s,Ht.current);wo(s,u),f=Td(null,s,d,o,f,u);var g=_d();return s.flags|=1,typeof f=="object"&&f!==null&&typeof f.render=="function"&&f.$$typeof===void 0?(s.tag=1,s.memoizedState=null,s.updateQueue=null,li(d)?(g=!0,Qa(s)):g=!1,s.memoizedState=f.state!==null&&f.state!==void 0?f.state:null,Sd(s),f.updater=sl,s.stateNode=f,f._reactInternals=s,bd(s,d,o,u),s=Bd(null,s,d,!0,g,u)):(s.tag=0,nt&&g&&cd(s),Kt(null,s,f,u),s=s.child),s;case 16:d=s.elementType;e:{switch(ml(o,s),o=s.pendingProps,f=d._init,d=f(d._payload),s.type=d,f=s.tag=Tb(d),o=Xi(d,o),f){case 0:s=Nd(null,s,d,o,u);break e;case 1:s=Xg(null,s,d,o,u);break e;case 11:s=qg(null,s,d,o,u);break e;case 14:s=Qg(null,s,d,Xi(d.type,o),u);break e}throw Error(l(306,d,""))}return s;case 0:return d=s.type,f=s.pendingProps,f=s.elementType===d?f:Xi(d,f),Nd(o,s,d,f,u);case 1:return d=s.type,f=s.pendingProps,f=s.elementType===d?f:Xi(d,f),Xg(o,s,d,f,u);case 3:e:{if(Kg(s),o===null)throw Error(l(387));d=s.pendingProps,g=s.memoizedState,f=g.element,lg(o,s),ol(s,d,null,u);var b=s.memoizedState;if(d=b.element,he&&g.isDehydrated)if(g={element:d,isDehydrated:!1,cache:b.cache,pendingSuspenseBoundaries:b.pendingSuspenseBoundaries,transitions:b.transitions},s.updateQueue.baseState=g,s.memoizedState=g,s.flags&256){f=Eo(Error(l(423)),s),s=Zg(o,s,d,u,f);break e}else if(d!==f){f=Eo(Error(l(424)),s),s=Zg(o,s,d,u,f);break e}else for(he&&(ki=T1(s.stateNode.containerInfo),xi=s,nt=!0,Yi=null,Ss=!1),u=yg(s,null,d,u),s.child=u;u;)u.flags=u.flags&-3|4096,u=u.sibling;else{if(xo(),d===f){s=_n(o,s,u);break e}Kt(o,s,d,u)}s=s.child}return s;case 5:return vg(s),o===null&&pd(s),d=s.type,f=s.pendingProps,g=o!==null?o.memoizedProps:null,b=f.children,G(d,f)?b=null:g!==null&&G(d,g)&&(s.flags|=32),Yg(o,s),Kt(o,s,b,u),s.child;case 6:return o===null&&pd(s),null;case 13:return Jg(o,s,u);case 4:return Cd(s,s.stateNode.containerInfo),d=s.pendingProps,o===null?s.child=bo(s,null,d,u):Kt(o,s,d,u),s.child;case 11:return d=s.type,f=s.pendingProps,f=s.elementType===d?f:Xi(d,f),qg(o,s,d,f,u);case 7:return Kt(o,s,s.pendingProps,u),s.child;case 8:return Kt(o,s,s.pendingProps.children,u),s.child;case 12:return Kt(o,s,s.pendingProps.children,u),s.child;case 10:e:{if(d=s.type._context,f=s.pendingProps,g=s.memoizedProps,b=f.value,sg(s,d,b),g!==null)if(Gi(g.value,b)){if(g.children===f.children&&!ai.current){s=_n(o,s,u);break e}}else for(g=s.child,g!==null&&(g.return=s);g!==null;){var T=g.dependencies;if(T!==null){b=g.child;for(var F=T.firstContext;F!==null;){if(F.context===d){if(g.tag===1){F=Tn(-1,u&-u),F.tag=2;var Z=g.updateQueue;if(Z!==null){Z=Z.shared;var le=Z.pending;le===null?F.next=F:(F.next=le.next,le.next=F),Z.pending=F}}g.lanes|=u,F=g.alternate,F!==null&&(F.lanes|=u),vd(g.return,u,s),T.lanes|=u;break}F=F.next}}else if(g.tag===10)b=g.type===s.type?null:g.child;else if(g.tag===18){if(b=g.return,b===null)throw Error(l(341));b.lanes|=u,T=b.alternate,T!==null&&(T.lanes|=u),vd(b,u,s),b=g.sibling}else b=g.child;if(b!==null)b.return=g;else for(b=g;b!==null;){if(b===s){b=null;break}if(g=b.sibling,g!==null){g.return=b.return,b=g;break}b=b.return}g=b}Kt(o,s,f.children,u),s=s.child}return s;case 9:return f=s.type,d=s.pendingProps.children,wo(s,u),f=Oi(f),d=d(f),s.flags|=1,Kt(o,s,d,u),s.child;case 14:return d=s.type,f=Xi(d,s.pendingProps),f=Xi(d.type,f),Qg(o,s,d,f,u);case 15:return $g(o,s,s.type,s.pendingProps,u);case 17:return d=s.type,f=s.pendingProps,f=s.elementType===d?f:Xi(d,f),ml(o,s),s.tag=1,li(d)?(o=!0,Qa(s)):o=!1,wo(s,u),pg(s,d,f),bd(s,d,f,u),Bd(null,s,d,!0,o,u);case 19:return ty(o,s,u);case 22:return Gg(o,s,u)}throw Error(l(156,s.tag))};function Ey(o,s){return sd(o,s)}function Rb(o,s,u,d){this.tag=o,this.key=u,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=s,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=d,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ni(o,s,u,d){return new Rb(o,s,u,d)}function lh(o){return o=o.prototype,!(!o||!o.isReactComponent)}function Tb(o){if(typeof o=="function")return lh(o)?1:0;if(o!=null){if(o=o.$$typeof,o===x)return 11;if(o===I)return 14}return 2}function nr(o,s){var u=o.alternate;return u===null?(u=Ni(o.tag,s,o.key,o.mode),u.elementType=o.elementType,u.type=o.type,u.stateNode=o.stateNode,u.alternate=o,o.alternate=u):(u.pendingProps=s,u.type=o.type,u.flags=0,u.subtreeFlags=0,u.deletions=null),u.flags=o.flags&14680064,u.childLanes=o.childLanes,u.lanes=o.lanes,u.child=o.child,u.memoizedProps=o.memoizedProps,u.memoizedState=o.memoizedState,u.updateQueue=o.updateQueue,s=o.dependencies,u.dependencies=s===null?null:{lanes:s.lanes,firstContext:s.firstContext},u.sibling=o.sibling,u.index=o.index,u.ref=o.ref,u}function Ol(o,s,u,d,f,g){var b=2;if(d=o,typeof o=="function")lh(o)&&(b=1);else if(typeof o=="string")b=5;else e:switch(o){case h:return Fr(u.children,f,g,s);case y:b=8,f|=8;break;case S:return o=Ni(12,u,s,f|2),o.elementType=S,o.lanes=g,o;case A:return o=Ni(13,u,s,f),o.elementType=A,o.lanes=g,o;case C:return o=Ni(19,u,s,f),o.elementType=C,o.lanes=g,o;case L:return Ll(u,f,g,s);default:if(typeof o=="object"&&o!==null)switch(o.$$typeof){case w:b=10;break e;case v:b=9;break e;case x:b=11;break e;case I:b=14;break e;case E:b=16,d=null;break e}throw Error(l(130,o==null?o:typeof o,""))}return s=Ni(b,u,s,f),s.elementType=o,s.type=d,s.lanes=g,s}function Fr(o,s,u,d){return o=Ni(7,o,d,s),o.lanes=u,o}function Ll(o,s,u,d){return o=Ni(22,o,d,s),o.elementType=L,o.lanes=u,o.stateNode={isHidden:!1},o}function uh(o,s,u){return o=Ni(6,o,null,s),o.lanes=u,o}function ch(o,s,u){return s=Ni(4,o.children!==null?o.children:[],o.key,s),s.lanes=u,s.stateNode={containerInfo:o.containerInfo,pendingChildren:null,implementation:o.implementation},s}function _b(o,s,u,d,f){this.tag=s,this.containerInfo=o,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=Ve,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=rd(0),this.expirationTimes=rd(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=rd(0),this.identifierPrefix=d,this.onRecoverableError=f,he&&(this.mutableSourceEagerHydrationData=null)}function Ay(o,s,u,d,f,g,b,T,F){return o=new _b(o,s,u,T,F),s===1?(s=1,g===!0&&(s|=8)):s=0,g=Ni(3,null,null,s),o.current=g,g.stateNode=o,g.memoizedState={element:d,isDehydrated:u,cache:null,transitions:null,pendingSuspenseBoundaries:null},Sd(g),o}function Iy(o){if(!o)return Xn;o=o._reactInternals;e:{if(J(o)!==o||o.tag!==1)throw Error(l(170));var s=o;do{switch(s.tag){case 3:s=s.stateNode.context;break e;case 1:if(li(s.type)){s=s.stateNode.__reactInternalMemoizedMergedChildContext;break e}}s=s.return}while(s!==null);throw Error(l(171))}if(o.tag===1){var u=o.type;if(li(u))return Ym(o,u,s)}return s}function Ry(o){var s=o._reactInternals;if(s===void 0)throw typeof o.render=="function"?Error(l(188)):(o=Object.keys(o).join(","),Error(l(268,o)));return o=ee(s),o===null?null:o.stateNode}function Ty(o,s){if(o=o.memoizedState,o!==null&&o.dehydrated!==null){var u=o.retryLane;o.retryLane=u!==0&&u<s?u:s}}function zl(o,s){Ty(o,s),(o=o.alternate)&&Ty(o,s)}function Mb(o){return o=ee(o),o===null?null:o.stateNode}function kb(){return null}return i.attemptContinuousHydration=function(o){if(o.tag===13){var s=dn(o,134217728);if(s!==null){var u=Gt();Fi(s,o,134217728,u)}zl(o,134217728)}},i.attemptDiscreteHydration=function(o){if(o.tag===13){var s=dn(o,1);if(s!==null){var u=Gt();Fi(s,o,1,u)}zl(o,1)}},i.attemptHydrationAtCurrentPriority=function(o){if(o.tag===13){var s=tr(o),u=dn(o,s);if(u!==null){var d=Gt();Fi(u,o,s,d)}zl(o,s)}},i.attemptSynchronousHydration=function(o){switch(o.tag){case 3:var s=o.stateNode;if(s.current.memoizedState.isDehydrated){var u=vs(s.pendingLanes);u!==0&&(od(s,u|1),di(s,Mt()),!(Te&6)&&(Ro(),cn()))}break;case 13:yy(function(){var d=dn(o,1);if(d!==null){var f=Gt();Fi(d,o,1,f)}}),zl(o,1)}},i.batchedUpdates=function(o,s){var u=Te;Te|=1;try{return o(s)}finally{Te=u,Te===0&&(Ro(),Ka&&cn())}},i.createComponentSelector=function(o){return{$$typeof:Sl,value:o}},i.createContainer=function(o,s,u,d,f,g,b){return Ay(o,s,!1,null,u,d,f,g,b)},i.createHasPseudoClassSelector=function(o){return{$$typeof:wl,value:o}},i.createHydrationContainer=function(o,s,u,d,f,g,b,T,F){return o=Ay(u,d,!0,o,f,g,b,T,F),o.context=Iy(null),u=o.current,d=Gt(),f=tr(u),g=Tn(d,f),g.callback=s??null,Zn(u,g,f),o.current.lanes=f,xs(o,f,d),di(o,d),o},i.createPortal=function(o,s,u){var d=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:m,key:d==null?null:""+d,children:o,containerInfo:s,implementation:u}},i.createRoleSelector=function(o){return{$$typeof:bl,value:o}},i.createTestNameSelector=function(o){return{$$typeof:Cl,value:o}},i.createTextSelector=function(o){return{$$typeof:Pl,value:o}},i.deferredUpdates=function(o){var s=Fe,u=yt.transition;try{return yt.transition=null,Fe=16,o()}finally{Fe=s,yt.transition=u}},i.discreteUpdates=function(o,s,u,d,f){var g=Fe,b=yt.transition;try{return yt.transition=null,Fe=1,o(s,u,d,f)}finally{Fe=g,yt.transition=b,Te===0&&Ro()}},i.findAllNodes=Kd,i.findBoundingRects=function(o,s){if(!Ti)throw Error(l(363));s=Kd(o,s),o=[];for(var u=0;u<s.length;u++)o.push(Ua(s[u]));for(s=o.length-1;0<s;s--){u=o[s];for(var d=u.x,f=d+u.width,g=u.y,b=g+u.height,T=s-1;0<=T;T--)if(s!==T){var F=o[T],Z=F.x,le=Z+F.width,Se=F.y,te=Se+F.height;if(d>=Z&&g>=Se&&f<=le&&b<=te){o.splice(s,1);break}else if(d!==Z||u.width!==F.width||te<g||Se>b){if(!(g!==Se||u.height!==F.height||le<d||Z>f)){Z>d&&(F.width+=Z-d,F.x=d),le<f&&(F.width=f-Z),o.splice(s,1);break}}else{Se>g&&(F.height+=Se-g,F.y=g),te<b&&(F.height=b-Se),o.splice(s,1);break}}}return o},i.findHostInstance=Ry,i.findHostInstanceWithNoPortals=function(o){return o=W(o),o=o!==null?pe(o):null,o===null?null:o.stateNode},i.findHostInstanceWithWarning=function(o){return Ry(o)},i.flushControlled=function(o){var s=Te;Te|=1;var u=yt.transition,d=Fe;try{yt.transition=null,Fe=1,o()}finally{Fe=d,yt.transition=u,Te=s,Te===0&&(Ro(),cn())}},i.flushPassiveEffects=zr,i.flushSync=yy,i.focusWithin=function(o,s){if(!Ti)throw Error(l(363));for(o=Gd(o),s=fy(o,s),s=Array.from(s),o=0;o<s.length;){var u=s[o++];if(!ln(u)){if(u.tag===5&&Kc(u.stateNode))return!0;for(u=u.child;u!==null;)s.push(u),u=u.sibling}}return!1},i.getCurrentUpdatePriority=function(){return Fe},i.getFindAllNodesFailureDescription=function(o,s){if(!Ti)throw Error(l(363));var u=0,d=[];o=[Gd(o),0];for(var f=0;f<o.length;){var g=o[f++],b=o[f++],T=s[b];if((g.tag!==5||!ln(g))&&(Yd(g,T)&&(d.push(Xd(T)),b++,b>u&&(u=b)),b<s.length))for(g=g.child;g!==null;)o.push(g,b),g=g.sibling}if(u<s.length){for(o=[];u<s.length;u++)o.push(Xd(s[u]));return`findAllNodes was able to match part of the selector:
|
|
7
|
+
`+g.stack}return{value:o,source:s,stack:f,digest:null}}function zd(o,s,u){return{value:o,source:null,stack:u??null,digest:s??null}}function Fd(o,s){try{console.error(s.value)}catch(u){setTimeout(function(){throw u})}}var cb=typeof WeakMap=="function"?WeakMap:Map;function Dg(o,s,u){u=Rn(-1,u),u.tag=3,u.payload={element:null};var d=s.value;return u.callback=function(){Il||(Il=!0,ih=d),Fd(o,s)},u}function jg(o,s,u){u=Rn(-1,u),u.tag=3;var d=o.type.getDerivedStateFromError;if(typeof d=="function"){var f=s.value;u.payload=function(){return d(f)},u.callback=function(){Fd(o,s)}}var g=o.stateNode;return g!==null&&typeof g.componentDidCatch=="function"&&(u.callback=function(){Fd(o,s),typeof d!="function"&&(Jn===null?Jn=new Set([this]):Jn.add(this));var b=s.stack;this.componentDidCatch(s.value,{componentStack:b!==null?b:""})}),u}function Vg(o,s,u){var d=o.pingCache;if(d===null){d=o.pingCache=new cb;var f=new Set;d.set(s,f)}else f=d.get(s),f===void 0&&(f=new Set,d.set(s,f));f.has(u)||(f.add(u),o=Pb.bind(null,o,s,u),s.then(o,o))}function Ug(o){do{var s;if((s=o.tag===13)&&(s=o.memoizedState,s=s!==null?s.dehydrated!==null:!0),s)return o;o=o.return}while(o!==null);return null}function Wg(o,s,u,d,f){return o.mode&1?(o.flags|=65536,o.lanes=f,o):(o===s?o.flags|=65536:(o.flags|=128,u.flags|=131072,u.flags&=-52805,u.tag===1&&(u.alternate===null?u.tag=17:(s=Rn(-1,1),s.tag=2,Zn(u,s,1))),u.lanes|=1),o)}var db=c.ReactCurrentOwner,ui=!1;function Kt(o,s,u,d){s.child=o===null?gg(s,null,u,d):Co(s,o.child,u,d)}function Hg(o,s,u,d,f){u=u.render;var g=s.ref;return bo(s,f),d=Rd(o,s,u,d,g,f),u=_d(),o!==null&&!ui?(s.updateQueue=o.updateQueue,s.flags&=-2053,o.lanes&=~f,_n(o,s,f)):(nt&&u&&cd(s),s.flags|=1,Kt(o,s,d,f),s.child)}function qg(o,s,u,d,f){if(o===null){var g=u.type;return typeof g=="function"&&!lh(g)&&g.defaultProps===void 0&&u.compare===null&&u.defaultProps===void 0?(s.tag=15,s.type=g,Qg(o,s,g,d,f)):(o=Ol(u.type,null,d,s,s.mode,f),o.ref=s.ref,o.return=s,s.child=o)}if(g=o.child,!(o.lanes&f)){var b=g.memoizedProps;if(u=u.compare,u=u!==null?u:tl,u(b,d)&&o.ref===s.ref)return _n(o,s,f)}return s.flags|=1,o=nr(g,d),o.ref=s.ref,o.return=s,s.child=o}function Qg(o,s,u,d,f){if(o!==null){var g=o.memoizedProps;if(tl(g,d)&&o.ref===s.ref)if(ui=!1,s.pendingProps=d=g,(o.lanes&f)!==0)o.flags&131072&&(ui=!0);else return s.lanes=o.lanes,_n(o,s,f)}return Nd(o,s,u,d,f)}function $g(o,s,u){var d=s.pendingProps,f=d.children,g=o!==null?o.memoizedState:null;if(d.mode==="hidden")if(!(s.mode&1))s.memoizedState={baseLanes:0,cachePool:null,transitions:null},Ge(To,Si),Si|=u;else{if(!(u&1073741824))return o=g!==null?g.baseLanes|u:u,s.lanes=s.childLanes=1073741824,s.memoizedState={baseLanes:o,cachePool:null,transitions:null},s.updateQueue=null,Ge(To,Si),Si|=o,null;s.memoizedState={baseLanes:0,cachePool:null,transitions:null},d=g!==null?g.baseLanes:u,Ge(To,Si),Si|=d}else g!==null?(d=g.baseLanes|u,s.memoizedState=null):d=u,Ge(To,Si),Si|=d;return Kt(o,s,f,u),s.child}function Gg(o,s){var u=s.ref;(o===null&&u!==null||o!==null&&o.ref!==u)&&(s.flags|=512,s.flags|=2097152)}function Nd(o,s,u,d,f){var g=li(u)?Ir:Ht.current;return g=yo(s,g),bo(s,f),u=Rd(o,s,u,d,g,f),d=_d(),o!==null&&!ui?(s.updateQueue=o.updateQueue,s.flags&=-2053,o.lanes&=~f,_n(o,s,f)):(nt&&d&&cd(s),s.flags|=1,Kt(o,s,u,f),s.child)}function Yg(o,s,u,d,f){if(li(u)){var g=!0;Qa(s)}else g=!1;if(bo(s,f),s.stateNode===null)ml(o,s),hg(s,u,d),bd(s,u,d,f),d=!0;else if(o===null){var b=s.stateNode,R=s.memoizedProps;b.props=R;var F=b.context,Z=u.contextType;typeof Z=="object"&&Z!==null?Z=Oi(Z):(Z=li(u)?Ir:Ht.current,Z=yo(s,Z));var le=u.getDerivedStateFromProps,Se=typeof le=="function"||typeof b.getSnapshotBeforeUpdate=="function";Se||typeof b.UNSAFE_componentWillReceiveProps!="function"&&typeof b.componentWillReceiveProps!="function"||(R!==d||F!==Z)&&pg(s,b,d,Z),Kn=!1;var te=s.memoizedState;b.state=te,ol(s,d,b,f),F=s.memoizedState,R!==d||te!==F||ai.current||Kn?(typeof le=="function"&&(wd(s,u,le,d),F=s.memoizedState),(R=Kn||dg(s,u,R,d,te,F,Z))?(Se||typeof b.UNSAFE_componentWillMount!="function"&&typeof b.componentWillMount!="function"||(typeof b.componentWillMount=="function"&&b.componentWillMount(),typeof b.UNSAFE_componentWillMount=="function"&&b.UNSAFE_componentWillMount()),typeof b.componentDidMount=="function"&&(s.flags|=4194308)):(typeof b.componentDidMount=="function"&&(s.flags|=4194308),s.memoizedProps=d,s.memoizedState=F),b.props=d,b.state=F,b.context=Z,d=R):(typeof b.componentDidMount=="function"&&(s.flags|=4194308),d=!1)}else{b=s.stateNode,ag(o,s),R=s.memoizedProps,Z=s.type===s.elementType?R:Xi(s.type,R),b.props=Z,Se=s.pendingProps,te=b.context,F=u.contextType,typeof F=="object"&&F!==null?F=Oi(F):(F=li(u)?Ir:Ht.current,F=yo(s,F));var Je=u.getDerivedStateFromProps;(le=typeof Je=="function"||typeof b.getSnapshotBeforeUpdate=="function")||typeof b.UNSAFE_componentWillReceiveProps!="function"&&typeof b.componentWillReceiveProps!="function"||(R!==Se||te!==F)&&pg(s,b,d,F),Kn=!1,te=s.memoizedState,b.state=te,ol(s,d,b,f);var We=s.memoizedState;R!==Se||te!==We||ai.current||Kn?(typeof Je=="function"&&(wd(s,u,Je,d),We=s.memoizedState),(Z=Kn||dg(s,u,Z,d,te,We,F)||!1)?(le||typeof b.UNSAFE_componentWillUpdate!="function"&&typeof b.componentWillUpdate!="function"||(typeof b.componentWillUpdate=="function"&&b.componentWillUpdate(d,We,F),typeof b.UNSAFE_componentWillUpdate=="function"&&b.UNSAFE_componentWillUpdate(d,We,F)),typeof b.componentDidUpdate=="function"&&(s.flags|=4),typeof b.getSnapshotBeforeUpdate=="function"&&(s.flags|=1024)):(typeof b.componentDidUpdate!="function"||R===o.memoizedProps&&te===o.memoizedState||(s.flags|=4),typeof b.getSnapshotBeforeUpdate!="function"||R===o.memoizedProps&&te===o.memoizedState||(s.flags|=1024),s.memoizedProps=d,s.memoizedState=We),b.props=d,b.state=We,b.context=F,d=Z):(typeof b.componentDidUpdate!="function"||R===o.memoizedProps&&te===o.memoizedState||(s.flags|=4),typeof b.getSnapshotBeforeUpdate!="function"||R===o.memoizedProps&&te===o.memoizedState||(s.flags|=1024),d=!1)}return Bd(o,s,u,d,g,f)}function Bd(o,s,u,d,f,g){Gg(o,s);var b=(s.flags&128)!==0;if(!d&&!b)return f&&Ym(s,u,!1),_n(o,s,g);d=s.stateNode,db.current=s;var R=b&&typeof u.getDerivedStateFromError!="function"?null:d.render();return s.flags|=1,o!==null&&b?(s.child=Co(s,o.child,null,g),s.child=Co(s,null,R,g)):Kt(o,s,R,g),s.memoizedState=d.state,f&&Ym(s,u,!0),s.child}function Xg(o){var s=o.stateNode;s.pendingContext?$m(o,s.pendingContext,s.pendingContext!==s.context):s.context&&$m(o,s.context,!1),Cd(o,s.containerInfo)}function Kg(o,s,u,d,f){return So(),fd(f),s.flags|=256,Kt(o,s,u,d),s.child}var Dd={dehydrated:null,treeContext:null,retryLane:0};function jd(o){return{baseLanes:o,cachePool:null,transitions:null}}function Zg(o,s,u){var d=s.pendingProps,f=at.current,g=!1,b=(s.flags&128)!==0,R;if((R=b)||(R=o!==null&&o.memoizedState===null?!1:(f&2)!==0),R?(g=!0,s.flags&=-129):(o===null||o.memoizedState!==null)&&(f|=1),Ge(at,f&1),o===null)return pd(s),o=s.memoizedState,o!==null&&(o=o.dehydrated,o!==null)?(s.mode&1?Zc(o)?s.lanes=8:s.lanes=1073741824:s.lanes=1,null):(b=d.children,o=d.fallback,g?(d=s.mode,g=s.child,b={mode:"hidden",children:b},!(d&1)&&g!==null?(g.childLanes=0,g.pendingProps=b):g=Ll(b,d,0,null),o=Fr(o,d,u,null),g.return=s,o.return=s,g.sibling=o,s.child=g,s.child.memoizedState=jd(u),s.memoizedState=Dd,o):Vd(s,b));if(f=o.memoizedState,f!==null&&(R=f.dehydrated,R!==null))return hb(o,s,b,d,R,f,u);if(g){g=d.fallback,b=s.mode,f=o.child,R=f.sibling;var F={mode:"hidden",children:d.children};return!(b&1)&&s.child!==f?(d=s.child,d.childLanes=0,d.pendingProps=F,s.deletions=null):(d=nr(f,F),d.subtreeFlags=f.subtreeFlags&14680064),R!==null?g=nr(R,g):(g=Fr(g,b,u,null),g.flags|=2),g.return=s,d.return=s,d.sibling=g,s.child=d,d=g,g=s.child,b=o.child.memoizedState,b=b===null?jd(u):{baseLanes:b.baseLanes|u,cachePool:null,transitions:b.transitions},g.memoizedState=b,g.childLanes=o.childLanes&~u,s.memoizedState=Dd,d}return g=o.child,o=g.sibling,d=nr(g,{mode:"visible",children:d.children}),!(s.mode&1)&&(d.lanes=u),d.return=s,d.sibling=null,o!==null&&(u=s.deletions,u===null?(s.deletions=[o],s.flags|=16):u.push(o)),s.child=d,s.memoizedState=null,d}function Vd(o,s){return s=Ll({mode:"visible",children:s},o.mode,0,null),s.return=o,o.child=s}function fl(o,s,u,d){return d!==null&&fd(d),Co(s,o.child,null,u),o=Vd(s,s.pendingProps.children),o.flags|=2,s.memoizedState=null,o}function hb(o,s,u,d,f,g,b){if(u)return s.flags&256?(s.flags&=-257,d=zd(Error(l(422))),fl(o,s,b,d)):s.memoizedState!==null?(s.child=o.child,s.flags|=128,null):(g=d.fallback,f=s.mode,d=Ll({mode:"visible",children:d.children},f,0,null),g=Fr(g,f,b,null),g.flags|=2,d.return=s,g.return=s,d.sibling=g,s.child=d,s.mode&1&&Co(s,o.child,null,b),s.child.memoizedState=jd(b),s.memoizedState=Dd,g);if(!(s.mode&1))return fl(o,s,b,null);if(Zc(f))return d=E1(f).digest,g=Error(l(419)),d=zd(g,d,void 0),fl(o,s,b,d);if(u=(b&o.childLanes)!==0,ui||u){if(d=Ot,d!==null){switch(b&-b){case 4:f=2;break;case 16:f=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:f=32;break;case 536870912:f=268435456;break;default:f=0}f=f&(d.suspendedLanes|b)?0:f,f!==0&&f!==g.retryLane&&(g.retryLane=f,dn(o,f),Fi(d,o,f,-1))}return ah(),d=zd(Error(l(421))),fl(o,s,b,d)}return Qm(f)?(s.flags|=128,s.child=o.child,s=Eb.bind(null,o),A1(f,s),null):(o=g.treeContext,he&&(ki=R1(f),xi=s,nt=!0,Yi=null,ws=!1,o!==null&&(_i[Mi++]=In,_i[Mi++]=Tn,_i[Mi++]=Tr,In=o.id,Tn=o.overflow,Tr=s)),s=Vd(s,d.children),s.flags|=4096,s)}function Jg(o,s,u){o.lanes|=s;var d=o.alternate;d!==null&&(d.lanes|=s),vd(o.return,s,u)}function Ud(o,s,u,d,f){var g=o.memoizedState;g===null?o.memoizedState={isBackwards:s,rendering:null,renderingStartTime:0,last:d,tail:u,tailMode:f}:(g.isBackwards=s,g.rendering=null,g.renderingStartTime=0,g.last=d,g.tail=u,g.tailMode=f)}function ey(o,s,u){var d=s.pendingProps,f=d.revealOrder,g=d.tail;if(Kt(o,s,d.children,u),d=at.current,d&2)d=d&1|2,s.flags|=128;else{if(o!==null&&o.flags&128)e:for(o=s.child;o!==null;){if(o.tag===13)o.memoizedState!==null&&Jg(o,u,s);else if(o.tag===19)Jg(o,u,s);else if(o.child!==null){o.child.return=o,o=o.child;continue}if(o===s)break e;for(;o.sibling===null;){if(o.return===null||o.return===s)break e;o=o.return}o.sibling.return=o.return,o=o.sibling}d&=1}if(Ge(at,d),!(s.mode&1))s.memoizedState=null;else switch(f){case"forwards":for(u=s.child,f=null;u!==null;)o=u.alternate,o!==null&&ll(o)===null&&(f=u),u=u.sibling;u=f,u===null?(f=s.child,s.child=null):(f=u.sibling,u.sibling=null),Ud(s,!1,f,u,g);break;case"backwards":for(u=null,f=s.child,s.child=null;f!==null;){if(o=f.alternate,o!==null&&ll(o)===null){s.child=f;break}o=f.sibling,f.sibling=u,u=f,f=o}Ud(s,!0,u,null,g);break;case"together":Ud(s,!1,null,null,void 0);break;default:s.memoizedState=null}return s.child}function ml(o,s){!(s.mode&1)&&o!==null&&(o.alternate=null,s.alternate=null,s.flags|=2)}function _n(o,s,u){if(o!==null&&(s.dependencies=o.dependencies),kr|=s.lanes,!(u&s.childLanes))return null;if(o!==null&&s.child!==o.child)throw Error(l(153));if(s.child!==null){for(o=s.child,u=nr(o,o.pendingProps),s.child=u,u.return=s;o.sibling!==null;)o=o.sibling,u=u.sibling=nr(o,o.pendingProps),u.return=s;u.sibling=null}return s.child}function pb(o,s,u){switch(s.tag){case 3:Xg(s),So();break;case 5:yg(s);break;case 1:li(s.type)&&Qa(s);break;case 4:Cd(s,s.stateNode.containerInfo);break;case 10:og(s,s.type._context,s.memoizedProps.value);break;case 13:var d=s.memoizedState;if(d!==null)return d.dehydrated!==null?(Ge(at,at.current&1),s.flags|=128,null):u&s.child.childLanes?Zg(o,s,u):(Ge(at,at.current&1),o=_n(o,s,u),o!==null?o.sibling:null);Ge(at,at.current&1);break;case 19:if(d=(u&s.childLanes)!==0,o.flags&128){if(d)return ey(o,s,u);s.flags|=128}var f=s.memoizedState;if(f!==null&&(f.rendering=null,f.tail=null,f.lastEffect=null),Ge(at,at.current),d)break;return null;case 22:case 23:return s.lanes=0,$g(o,s,u)}return _n(o,s,u)}function fn(o){o.flags|=4}function ty(o,s){if(o!==null&&o.child===s.child)return!0;if(s.flags&16)return!1;for(o=s.child;o!==null;){if(o.flags&12854||o.subtreeFlags&12854)return!1;o=o.sibling}return!0}var Rs,_s,gl,yl;if(Pe)Rs=function(o,s){for(var u=s.child;u!==null;){if(u.tag===5||u.tag===6)Qe(o,u.stateNode);else if(u.tag!==4&&u.child!==null){u.child.return=u,u=u.child;continue}if(u===s)break;for(;u.sibling===null;){if(u.return===null||u.return===s)return;u=u.return}u.sibling.return=u.return,u=u.sibling}},_s=function(){},gl=function(o,s,u,d,f){if(o=o.memoizedProps,o!==d){var g=s.stateNode,b=hn(Li.current);u=N(g,u,o,d,f,b),(s.updateQueue=u)&&fn(s)}},yl=function(o,s,u,d){u!==d&&fn(s)};else if(ne){Rs=function(o,s,u,d){for(var f=s.child;f!==null;){if(f.tag===5){var g=f.stateNode;u&&d&&(g=Ar(g,f.type,f.memoizedProps,f)),Qe(o,g)}else if(f.tag===6)g=f.stateNode,u&&d&&(g=ys(g,f.memoizedProps,f)),Qe(o,g);else if(f.tag!==4){if(f.tag===22&&f.memoizedState!==null)g=f.child,g!==null&&(g.return=f),Rs(o,f,!0,!0);else if(f.child!==null){f.child.return=f,f=f.child;continue}}if(f===s)break;for(;f.sibling===null;){if(f.return===null||f.return===s)return;f=f.return}f.sibling.return=f.return,f=f.sibling}};var iy=function(o,s,u,d){for(var f=s.child;f!==null;){if(f.tag===5){var g=f.stateNode;u&&d&&(g=Ar(g,f.type,f.memoizedProps,f)),Et(o,g)}else if(f.tag===6)g=f.stateNode,u&&d&&(g=ys(g,f.memoizedProps,f)),Et(o,g);else if(f.tag!==4){if(f.tag===22&&f.memoizedState!==null)g=f.child,g!==null&&(g.return=f),iy(o,f,!0,!0);else if(f.child!==null){f.child.return=f,f=f.child;continue}}if(f===s)break;for(;f.sibling===null;){if(f.return===null||f.return===s)return;f=f.return}f.sibling.return=f.return,f=f.sibling}};_s=function(o,s){var u=s.stateNode;if(!ty(o,s)){o=u.containerInfo;var d=st(o);iy(d,s,!1,!1),u.pendingChildren=d,fn(s),Gn(o,d)}},gl=function(o,s,u,d,f){var g=o.stateNode,b=o.memoizedProps;if((o=ty(o,s))&&b===d)s.stateNode=g;else{var R=s.stateNode,F=hn(Li.current),Z=null;b!==d&&(Z=N(R,u,b,d,f,F)),o&&Z===null?s.stateNode=g:(g=Pt(g,Z,u,b,d,s,o,R),$e(g,u,d,f,F)&&fn(s),s.stateNode=g,o?fn(s):Rs(g,s,!1,!1))}},yl=function(o,s,u,d){u!==d?(o=hn(Po.current),u=hn(Li.current),s.stateNode=de(d,o,u,s),fn(s)):s.stateNode=o.stateNode}}else _s=function(){},gl=function(){},yl=function(){};function Ms(o,s){if(!nt)switch(o.tailMode){case"hidden":s=o.tail;for(var u=null;s!==null;)s.alternate!==null&&(u=s),s=s.sibling;u===null?o.tail=null:u.sibling=null;break;case"collapsed":u=o.tail;for(var d=null;u!==null;)u.alternate!==null&&(d=u),u=u.sibling;d===null?s||o.tail===null?o.tail=null:o.tail.sibling=null:d.sibling=null}}function Qt(o){var s=o.alternate!==null&&o.alternate.child===o.child,u=0,d=0;if(s)for(var f=o.child;f!==null;)u|=f.lanes|f.childLanes,d|=f.subtreeFlags&14680064,d|=f.flags&14680064,f.return=o,f=f.sibling;else for(f=o.child;f!==null;)u|=f.lanes|f.childLanes,d|=f.subtreeFlags,d|=f.flags,f.return=o,f=f.sibling;return o.subtreeFlags|=d,o.childLanes=u,s}function fb(o,s,u){var d=s.pendingProps;switch(dd(s),s.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Qt(s),null;case 1:return li(s.type)&&qa(),Qt(s),null;case 3:return u=s.stateNode,Eo(),Ze(ai),Ze(Ht),Ad(),u.pendingContext&&(u.context=u.pendingContext,u.pendingContext=null),(o===null||o.child===null)&&(el(s)?fn(s):o===null||o.memoizedState.isDehydrated&&!(s.flags&256)||(s.flags|=1024,Yi!==null&&(oh(Yi),Yi=null))),_s(o,s),Qt(s),null;case 5:Pd(s),u=hn(Po.current);var f=s.type;if(o!==null&&s.stateNode!=null)gl(o,s,f,d,u),o.ref!==s.ref&&(s.flags|=512,s.flags|=2097152);else{if(!d){if(s.stateNode===null)throw Error(l(166));return Qt(s),null}if(o=hn(Li.current),el(s)){if(!he)throw Error(l(175));o=_1(s.stateNode,s.type,s.memoizedProps,u,o,s,!ws),s.updateQueue=o,o!==null&&fn(s)}else{var g=it(f,d,u,o,s);Rs(g,s,!1,!1),s.stateNode=g,$e(g,f,d,u,o)&&fn(s)}s.ref!==null&&(s.flags|=512,s.flags|=2097152)}return Qt(s),null;case 6:if(o&&s.stateNode!=null)yl(o,s,o.memoizedProps,d);else{if(typeof d!="string"&&s.stateNode===null)throw Error(l(166));if(o=hn(Po.current),u=hn(Li.current),el(s)){if(!he)throw Error(l(176));if(o=s.stateNode,u=s.memoizedProps,(d=M1(o,u,s,!ws))&&(f=xi,f!==null))switch(f.tag){case 3:D1(f.stateNode.containerInfo,o,u,(f.mode&1)!==0);break;case 5:j1(f.type,f.memoizedProps,f.stateNode,o,u,(f.mode&1)!==0)}d&&fn(s)}else s.stateNode=de(d,o,u,s)}return Qt(s),null;case 13:if(Ze(at),d=s.memoizedState,o===null||o.memoizedState!==null&&o.memoizedState.dehydrated!==null){if(nt&&ki!==null&&s.mode&1&&!(s.flags&128))rg(),So(),s.flags|=98560,f=!1;else if(f=el(s),d!==null&&d.dehydrated!==null){if(o===null){if(!f)throw Error(l(318));if(!he)throw Error(l(344));if(f=s.memoizedState,f=f!==null?f.dehydrated:null,!f)throw Error(l(317));k1(f,s)}else So(),!(s.flags&128)&&(s.memoizedState=null),s.flags|=4;Qt(s),f=!1}else Yi!==null&&(oh(Yi),Yi=null),f=!0;if(!f)return s.flags&65536?s:null}return s.flags&128?(s.lanes=u,s):(u=d!==null,u!==(o!==null&&o.memoizedState!==null)&&u&&(s.child.flags|=8192,s.mode&1&&(o===null||at.current&1?It===0&&(It=3):ah())),s.updateQueue!==null&&(s.flags|=4),Qt(s),null);case 4:return Eo(),_s(o,s),o===null&&ot(s.stateNode.containerInfo),Qt(s),null;case 10:return yd(s.type._context),Qt(s),null;case 17:return li(s.type)&&qa(),Qt(s),null;case 19:if(Ze(at),f=s.memoizedState,f===null)return Qt(s),null;if(d=(s.flags&128)!==0,g=f.rendering,g===null)if(d)Ms(f,!1);else{if(It!==0||o!==null&&o.flags&128)for(o=s.child;o!==null;){if(g=ll(o),g!==null){for(s.flags|=128,Ms(f,!1),o=g.updateQueue,o!==null&&(s.updateQueue=o,s.flags|=4),s.subtreeFlags=0,o=u,u=s.child;u!==null;)d=u,f=o,d.flags&=14680066,g=d.alternate,g===null?(d.childLanes=0,d.lanes=f,d.child=null,d.subtreeFlags=0,d.memoizedProps=null,d.memoizedState=null,d.updateQueue=null,d.dependencies=null,d.stateNode=null):(d.childLanes=g.childLanes,d.lanes=g.lanes,d.child=g.child,d.subtreeFlags=0,d.deletions=null,d.memoizedProps=g.memoizedProps,d.memoizedState=g.memoizedState,d.updateQueue=g.updateQueue,d.type=g.type,f=g.dependencies,d.dependencies=f===null?null:{lanes:f.lanes,firstContext:f.firstContext}),u=u.sibling;return Ge(at,at.current&1|2),s.child}o=o.sibling}f.tail!==null&&Mt()>th&&(s.flags|=128,d=!0,Ms(f,!1),s.lanes=4194304)}else{if(!d)if(o=ll(g),o!==null){if(s.flags|=128,d=!0,o=o.updateQueue,o!==null&&(s.updateQueue=o,s.flags|=4),Ms(f,!0),f.tail===null&&f.tailMode==="hidden"&&!g.alternate&&!nt)return Qt(s),null}else 2*Mt()-f.renderingStartTime>th&&u!==1073741824&&(s.flags|=128,d=!0,Ms(f,!1),s.lanes=4194304);f.isBackwards?(g.sibling=s.child,s.child=g):(o=f.last,o!==null?o.sibling=g:s.child=g,f.last=g)}return f.tail!==null?(s=f.tail,f.rendering=s,f.tail=s.sibling,f.renderingStartTime=Mt(),s.sibling=null,o=at.current,Ge(at,d?o&1|2:o&1),s):(Qt(s),null);case 22:case 23:return sh(),u=s.memoizedState!==null,o!==null&&o.memoizedState!==null!==u&&(s.flags|=8192),u&&s.mode&1?Si&1073741824&&(Qt(s),Pe&&s.subtreeFlags&6&&(s.flags|=8192)):Qt(s),null;case 24:return null;case 25:return null}throw Error(l(156,s.tag))}function mb(o,s){switch(dd(s),s.tag){case 1:return li(s.type)&&qa(),o=s.flags,o&65536?(s.flags=o&-65537|128,s):null;case 3:return Eo(),Ze(ai),Ze(Ht),Ad(),o=s.flags,o&65536&&!(o&128)?(s.flags=o&-65537|128,s):null;case 5:return Pd(s),null;case 13:if(Ze(at),o=s.memoizedState,o!==null&&o.dehydrated!==null){if(s.alternate===null)throw Error(l(340));So()}return o=s.flags,o&65536?(s.flags=o&-65537|128,s):null;case 19:return Ze(at),null;case 4:return Eo(),null;case 10:return yd(s.type._context),null;case 22:case 23:return sh(),null;case 24:return null;default:return null}}var vl=!1,$t=!1,gb=typeof WeakSet=="function"?WeakSet:Set,ae=null;function Io(o,s){var u=o.ref;if(u!==null)if(typeof u=="function")try{u(null)}catch(d){rt(o,s,d)}else u.current=null}function Wd(o,s,u){try{u()}catch(d){rt(o,s,d)}}var ny=!1;function yb(o,s){for($(o.containerInfo),ae=s;ae!==null;)if(o=ae,s=o.child,(o.subtreeFlags&1028)!==0&&s!==null)s.return=o,ae=s;else for(;ae!==null;){o=ae;try{var u=o.alternate;if(o.flags&1024)switch(o.tag){case 0:case 11:case 15:break;case 1:if(u!==null){var d=u.memoizedProps,f=u.memoizedState,g=o.stateNode,b=g.getSnapshotBeforeUpdate(o.elementType===o.type?d:Xi(o.type,d),f);g.__reactInternalSnapshotBeforeUpdate=b}break;case 3:Pe&&Ue(o.stateNode.containerInfo);break;case 5:case 6:case 4:case 17:break;default:throw Error(l(163))}}catch(R){rt(o,o.return,R)}if(s=o.sibling,s!==null){s.return=o.return,ae=s;break}ae=o.return}return u=ny,ny=!1,u}function ks(o,s,u){var d=s.updateQueue;if(d=d!==null?d.lastEffect:null,d!==null){var f=d=d.next;do{if((f.tag&o)===o){var g=f.destroy;f.destroy=void 0,g!==void 0&&Wd(s,u,g)}f=f.next}while(f!==d)}}function xl(o,s){if(s=s.updateQueue,s=s!==null?s.lastEffect:null,s!==null){var u=s=s.next;do{if((u.tag&o)===o){var d=u.create;u.destroy=d()}u=u.next}while(u!==s)}}function Hd(o){var s=o.ref;if(s!==null){var u=o.stateNode;switch(o.tag){case 5:o=ke(u);break;default:o=u}typeof s=="function"?s(o):s.current=o}}function ry(o){var s=o.alternate;s!==null&&(o.alternate=null,ry(s)),o.child=null,o.deletions=null,o.sibling=null,o.tag===5&&(s=o.stateNode,s!==null&&Dt(s)),o.stateNode=null,o.return=null,o.dependencies=null,o.memoizedProps=null,o.memoizedState=null,o.pendingProps=null,o.stateNode=null,o.updateQueue=null}function oy(o){return o.tag===5||o.tag===3||o.tag===4}function sy(o){e:for(;;){for(;o.sibling===null;){if(o.return===null||oy(o.return))return null;o=o.return}for(o.sibling.return=o.return,o=o.sibling;o.tag!==5&&o.tag!==6&&o.tag!==18;){if(o.flags&2||o.child===null||o.tag===4)continue e;o.child.return=o,o=o.child}if(!(o.flags&2))return o.stateNode}}function qd(o,s,u){var d=o.tag;if(d===5||d===6)o=o.stateNode,s?j(u,o,s):X(u,o);else if(d!==4&&(o=o.child,o!==null))for(qd(o,s,u),o=o.sibling;o!==null;)qd(o,s,u),o=o.sibling}function Qd(o,s,u){var d=o.tag;if(d===5||d===6)o=o.stateNode,s?je(u,o,s):k(u,o);else if(d!==4&&(o=o.child,o!==null))for(Qd(o,s,u),o=o.sibling;o!==null;)Qd(o,s,u),o=o.sibling}var jt=null,Ki=!1;function mn(o,s,u){for(u=u.child;u!==null;)$d(o,s,u),u=u.sibling}function $d(o,s,u){if(un&&typeof un.onCommitFiberUnmount=="function")try{un.onCommitFiberUnmount(Xa,u)}catch{}switch(u.tag){case 5:$t||Io(u,s);case 6:if(Pe){var d=jt,f=Ki;jt=null,mn(o,s,u),jt=d,Ki=f,jt!==null&&(Ki?ue(jt,u.stateNode):W(jt,u.stateNode))}else mn(o,s,u);break;case 18:Pe&&jt!==null&&(Ki?N1(jt,u.stateNode):F1(jt,u.stateNode));break;case 4:Pe?(d=jt,f=Ki,jt=u.stateNode.containerInfo,Ki=!0,mn(o,s,u),jt=d,Ki=f):(ne&&(d=u.stateNode.containerInfo,f=st(d),Qi(d,f)),mn(o,s,u));break;case 0:case 11:case 14:case 15:if(!$t&&(d=u.updateQueue,d!==null&&(d=d.lastEffect,d!==null))){f=d=d.next;do{var g=f,b=g.destroy;g=g.tag,b!==void 0&&(g&2||g&4)&&Wd(u,s,b),f=f.next}while(f!==d)}mn(o,s,u);break;case 1:if(!$t&&(Io(u,s),d=u.stateNode,typeof d.componentWillUnmount=="function"))try{d.props=u.memoizedProps,d.state=u.memoizedState,d.componentWillUnmount()}catch(R){rt(u,s,R)}mn(o,s,u);break;case 21:mn(o,s,u);break;case 22:u.mode&1?($t=(d=$t)||u.memoizedState!==null,mn(o,s,u),$t=d):mn(o,s,u);break;default:mn(o,s,u)}}function ay(o){var s=o.updateQueue;if(s!==null){o.updateQueue=null;var u=o.stateNode;u===null&&(u=o.stateNode=new gb),s.forEach(function(d){var f=Ab.bind(null,o,d);u.has(d)||(u.add(d),d.then(f,f))})}}function Zi(o,s){var u=s.deletions;if(u!==null)for(var d=0;d<u.length;d++){var f=u[d];try{var g=o,b=s;if(Pe){var R=b;e:for(;R!==null;){switch(R.tag){case 5:jt=R.stateNode,Ki=!1;break e;case 3:jt=R.stateNode.containerInfo,Ki=!0;break e;case 4:jt=R.stateNode.containerInfo,Ki=!0;break e}R=R.return}if(jt===null)throw Error(l(160));$d(g,b,f),jt=null,Ki=!1}else $d(g,b,f);var F=f.alternate;F!==null&&(F.return=null),f.return=null}catch(Z){rt(f,s,Z)}}if(s.subtreeFlags&12854)for(s=s.child;s!==null;)ly(s,o),s=s.sibling}function ly(o,s){var u=o.alternate,d=o.flags;switch(o.tag){case 0:case 11:case 14:case 15:if(Zi(s,o),gn(o),d&4){try{ks(3,o,o.return),xl(3,o)}catch(te){rt(o,o.return,te)}try{ks(5,o,o.return)}catch(te){rt(o,o.return,te)}}break;case 1:Zi(s,o),gn(o),d&512&&u!==null&&Io(u,u.return);break;case 5:if(Zi(s,o),gn(o),d&512&&u!==null&&Io(u,u.return),Pe){if(o.flags&32){var f=o.stateNode;try{oe(f)}catch(te){rt(o,o.return,te)}}if(d&4&&(f=o.stateNode,f!=null)){var g=o.memoizedProps;if(u=u!==null?u.memoizedProps:g,d=o.type,s=o.updateQueue,o.updateQueue=null,s!==null)try{Ae(f,s,d,u,g,o)}catch(te){rt(o,o.return,te)}}}break;case 6:if(Zi(s,o),gn(o),d&4&&Pe){if(o.stateNode===null)throw Error(l(162));f=o.stateNode,g=o.memoizedProps,u=u!==null?u.memoizedProps:g;try{K(f,u,g)}catch(te){rt(o,o.return,te)}}break;case 3:if(Zi(s,o),gn(o),d&4){if(Pe&&he&&u!==null&&u.memoizedState.isDehydrated)try{L1(s.containerInfo)}catch(te){rt(o,o.return,te)}if(ne){f=s.containerInfo,g=s.pendingChildren;try{Qi(f,g)}catch(te){rt(o,o.return,te)}}}break;case 4:if(Zi(s,o),gn(o),d&4&&ne){g=o.stateNode,f=g.containerInfo,g=g.pendingChildren;try{Qi(f,g)}catch(te){rt(o,o.return,te)}}break;case 13:Zi(s,o),gn(o),f=o.child,f.flags&8192&&(g=f.memoizedState!==null,f.stateNode.isHidden=g,!g||f.alternate!==null&&f.alternate.memoizedState!==null||(eh=Mt())),d&4&&ay(o);break;case 22:var b=u!==null&&u.memoizedState!==null;if(o.mode&1?($t=(u=$t)||b,Zi(s,o),$t=u):Zi(s,o),gn(o),d&8192){if(u=o.memoizedState!==null,(o.stateNode.isHidden=u)&&!b&&o.mode&1)for(ae=o,d=o.child;d!==null;){for(s=ae=d;ae!==null;){b=ae;var R=b.child;switch(b.tag){case 0:case 11:case 14:case 15:ks(4,b,b.return);break;case 1:Io(b,b.return);var F=b.stateNode;if(typeof F.componentWillUnmount=="function"){var Z=b,le=b.return;try{var Se=Z;F.props=Se.memoizedProps,F.state=Se.memoizedState,F.componentWillUnmount()}catch(te){rt(Z,le,te)}}break;case 5:Io(b,b.return);break;case 22:if(b.memoizedState!==null){dy(s);continue}}R!==null?(R.return=b,ae=R):dy(s)}d=d.sibling}if(Pe){e:if(d=null,Pe)for(s=o;;){if(s.tag===5){if(d===null){d=s;try{f=s.stateNode,u?se(f):Xe(s.stateNode,s.memoizedProps)}catch(te){rt(o,o.return,te)}}}else if(s.tag===6){if(d===null)try{g=s.stateNode,u?Ie(g):Ke(g,s.memoizedProps)}catch(te){rt(o,o.return,te)}}else if((s.tag!==22&&s.tag!==23||s.memoizedState===null||s===o)&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===o)break e;for(;s.sibling===null;){if(s.return===null||s.return===o)break e;d===s&&(d=null),s=s.return}d===s&&(d=null),s.sibling.return=s.return,s=s.sibling}}}break;case 19:Zi(s,o),gn(o),d&4&&ay(o);break;case 21:break;default:Zi(s,o),gn(o)}}function gn(o){var s=o.flags;if(s&2){try{if(Pe){e:{for(var u=o.return;u!==null;){if(oy(u)){var d=u;break e}u=u.return}throw Error(l(160))}switch(d.tag){case 5:var f=d.stateNode;d.flags&32&&(oe(f),d.flags&=-33);var g=sy(o);Qd(o,g,f);break;case 3:case 4:var b=d.stateNode.containerInfo,R=sy(o);qd(o,R,b);break;default:throw Error(l(161))}}}catch(F){rt(o,o.return,F)}o.flags&=-3}s&4096&&(o.flags&=-4097)}function vb(o,s,u){ae=o,uy(o,s,u)}function uy(o,s,u){for(var d=(o.mode&1)!==0;ae!==null;){var f=ae,g=f.child;if(f.tag===22&&d){var b=f.memoizedState!==null||vl;if(!b){var R=f.alternate,F=R!==null&&R.memoizedState!==null||$t;R=vl;var Z=$t;if(vl=b,($t=F)&&!Z)for(ae=f;ae!==null;)b=ae,F=b.child,b.tag===22&&b.memoizedState!==null?hy(f):F!==null?(F.return=b,ae=F):hy(f);for(;g!==null;)ae=g,uy(g,s,u),g=g.sibling;ae=f,vl=R,$t=Z}cy(o,s,u)}else f.subtreeFlags&8772&&g!==null?(g.return=f,ae=g):cy(o,s,u)}}function cy(o){for(;ae!==null;){var s=ae;if(s.flags&8772){var u=s.alternate;try{if(s.flags&8772)switch(s.tag){case 0:case 11:case 15:$t||xl(5,s);break;case 1:var d=s.stateNode;if(s.flags&4&&!$t)if(u===null)d.componentDidMount();else{var f=s.elementType===s.type?u.memoizedProps:Xi(s.type,u.memoizedProps);d.componentDidUpdate(f,u.memoizedState,d.__reactInternalSnapshotBeforeUpdate)}var g=s.updateQueue;g!==null&&ug(s,g,d);break;case 3:var b=s.updateQueue;if(b!==null){if(u=null,s.child!==null)switch(s.child.tag){case 5:u=ke(s.child.stateNode);break;case 1:u=s.child.stateNode}ug(s,b,u)}break;case 5:var R=s.stateNode;u===null&&s.flags&4&&be(R,s.type,s.memoizedProps,s);break;case 6:break;case 4:break;case 12:break;case 13:if(he&&s.memoizedState===null){var F=s.alternate;if(F!==null){var Z=F.memoizedState;if(Z!==null){var le=Z.dehydrated;le!==null&&z1(le)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(l(163))}$t||s.flags&512&&Hd(s)}catch(Se){rt(s,s.return,Se)}}if(s===o){ae=null;break}if(u=s.sibling,u!==null){u.return=s.return,ae=u;break}ae=s.return}}function dy(o){for(;ae!==null;){var s=ae;if(s===o){ae=null;break}var u=s.sibling;if(u!==null){u.return=s.return,ae=u;break}ae=s.return}}function hy(o){for(;ae!==null;){var s=ae;try{switch(s.tag){case 0:case 11:case 15:var u=s.return;try{xl(4,s)}catch(F){rt(s,u,F)}break;case 1:var d=s.stateNode;if(typeof d.componentDidMount=="function"){var f=s.return;try{d.componentDidMount()}catch(F){rt(s,f,F)}}var g=s.return;try{Hd(s)}catch(F){rt(s,g,F)}break;case 5:var b=s.return;try{Hd(s)}catch(F){rt(s,b,F)}}}catch(F){rt(s,s.return,F)}if(s===o){ae=null;break}var R=s.sibling;if(R!==null){R.return=s.return,ae=R;break}ae=s.return}}var Sl=0,wl=1,bl=2,Cl=3,Pl=4;if(typeof Symbol=="function"&&Symbol.for){var Os=Symbol.for;Sl=Os("selector.component"),wl=Os("selector.has_pseudo_class"),bl=Os("selector.role"),Cl=Os("selector.test_id"),Pl=Os("selector.text")}function Gd(o){var s=Oe(o);if(s!=null){if(typeof s.memoizedProps["data-testname"]!="string")throw Error(l(364));return s}if(o=Xc(o),o===null)throw Error(l(362));return o.stateNode.current}function Yd(o,s){switch(s.$$typeof){case Sl:if(o.type===s.value)return!0;break;case wl:e:{s=s.value,o=[o,0];for(var u=0;u<o.length;){var d=o[u++],f=o[u++],g=s[f];if(d.tag!==5||!ln(d)){for(;g!=null&&Yd(d,g);)f++,g=s[f];if(f===s.length){s=!0;break e}else for(d=d.child;d!==null;)o.push(d,f),d=d.sibling}}s=!1}return s;case bl:if(o.tag===5&&gs(o.stateNode,s.value))return!0;break;case Pl:if((o.tag===5||o.tag===6)&&(o=ms(o),o!==null&&0<=o.indexOf(s.value)))return!0;break;case Cl:if(o.tag===5&&(o=o.memoizedProps["data-testname"],typeof o=="string"&&o.toLowerCase()===s.value.toLowerCase()))return!0;break;default:throw Error(l(365))}return!1}function Xd(o){switch(o.$$typeof){case Sl:return"<"+(Q(o.value)||"Unknown")+">";case wl:return":has("+(Xd(o)||"")+")";case bl:return'[role="'+o.value+'"]';case Pl:return'"'+o.value+'"';case Cl:return'[data-testname="'+o.value+'"]';default:throw Error(l(365))}}function py(o,s){var u=[];o=[o,0];for(var d=0;d<o.length;){var f=o[d++],g=o[d++],b=s[g];if(f.tag!==5||!ln(f)){for(;b!=null&&Yd(f,b);)g++,b=s[g];if(g===s.length)u.push(f);else for(f=f.child;f!==null;)o.push(f,g),f=f.sibling}}return u}function Kd(o,s){if(!Ri)throw Error(l(363));o=Gd(o),o=py(o,s),s=[],o=Array.from(o);for(var u=0;u<o.length;){var d=o[u++];if(d.tag===5)ln(d)||s.push(d.stateNode);else for(d=d.child;d!==null;)o.push(d),d=d.sibling}return s}var xb=Math.ceil,El=c.ReactCurrentDispatcher,Zd=c.ReactCurrentOwner,yt=c.ReactCurrentBatchConfig,Re=0,Ot=null,xt=null,Vt=0,Si=0,To=Yn(0),It=0,Ls=null,kr=0,Al=0,Jd=0,zs=null,ci=null,eh=0,th=1/0,Mn=null;function Ro(){th=Mt()+500}var Il=!1,ih=null,Jn=null,Tl=!1,er=null,Rl=0,Fs=0,nh=null,_l=-1,Ml=0;function Gt(){return Re&6?Mt():_l!==-1?_l:_l=Mt()}function tr(o){return o.mode&1?Re&2&&Vt!==0?Vt&-Vt:tb.transition!==null?(Ml===0&&(Ml=Xm()),Ml):(o=Fe,o!==0?o:Ti()):1}function Fi(o,s,u,d){if(50<Fs)throw Fs=0,nh=null,Error(l(185));Ss(o,u,d),(!(Re&2)||o!==Ot)&&(o===Ot&&(!(Re&2)&&(Al|=u),It===4&&ir(o,Vt)),di(o,d),u===1&&Re===0&&!(s.mode&1)&&(Ro(),Ka&&cn()))}function di(o,s){var u=o.callbackNode;Q1(o,s);var d=Ya(o,o===Ot?Vt:0);if(d===0)u!==null&&Zm(u),o.callbackNode=null,o.callbackPriority=0;else if(s=d&-d,o.callbackPriority!==s){if(u!=null&&Zm(u),s===1)o.tag===0?eb(my.bind(null,o)):Jm(my.bind(null,o)),Wt?fs(function(){!(Re&6)&&cn()}):sd(ad,cn),u=null;else{switch(Km(d)){case 1:u=ad;break;case 4:u=X1;break;case 16:u=ld;break;case 536870912:u=K1;break;default:u=ld}u=Py(u,fy.bind(null,o))}o.callbackPriority=s,o.callbackNode=u}}function fy(o,s){if(_l=-1,Ml=0,Re&6)throw Error(l(327));var u=o.callbackNode;if(zr()&&o.callbackNode!==u)return null;var d=Ya(o,o===Ot?Vt:0);if(d===0)return null;if(d&30||d&o.expiredLanes||s)s=kl(o,d);else{s=d;var f=Re;Re|=2;var g=vy();(Ot!==o||Vt!==s)&&(Mn=null,Ro(),Or(o,s));do try{bb();break}catch(R){yy(o,R)}while(!0);gd(),El.current=g,Re=f,xt!==null?s=0:(Ot=null,Vt=0,s=It)}if(s!==0){if(s===2&&(f=nd(o),f!==0&&(d=f,s=rh(o,f))),s===1)throw u=Ls,Or(o,0),ir(o,d),di(o,Mt()),u;if(s===6)ir(o,d);else{if(f=o.current.alternate,!(d&30)&&!Sb(f)&&(s=kl(o,d),s===2&&(g=nd(o),g!==0&&(d=g,s=rh(o,g))),s===1))throw u=Ls,Or(o,0),ir(o,d),di(o,Mt()),u;switch(o.finishedWork=f,o.finishedLanes=d,s){case 0:case 1:throw Error(l(345));case 2:Lr(o,ci,Mn);break;case 3:if(ir(o,d),(d&130023424)===d&&(s=eh+500-Mt(),10<s)){if(Ya(o,0)!==0)break;if(f=o.suspendedLanes,(f&d)!==d){Gt(),o.pingedLanes|=o.suspendedLanes&f;break}o.timeoutHandle=ye(Lr.bind(null,o,ci,Mn),s);break}Lr(o,ci,Mn);break;case 4:if(ir(o,d),(d&4194240)===d)break;for(s=o.eventTimes,f=-1;0<d;){var b=31-$i(d);g=1<<b,b=s[b],b>f&&(f=b),d&=~g}if(d=f,d=Mt()-d,d=(120>d?120:480>d?480:1080>d?1080:1920>d?1920:3e3>d?3e3:4320>d?4320:1960*xb(d/1960))-d,10<d){o.timeoutHandle=ye(Lr.bind(null,o,ci,Mn),d);break}Lr(o,ci,Mn);break;case 5:Lr(o,ci,Mn);break;default:throw Error(l(329))}}}return di(o,Mt()),o.callbackNode===u?fy.bind(null,o):null}function rh(o,s){var u=zs;return o.current.memoizedState.isDehydrated&&(Or(o,s).flags|=256),o=kl(o,s),o!==2&&(s=ci,ci=u,s!==null&&oh(s)),o}function oh(o){ci===null?ci=o:ci.push.apply(ci,o)}function Sb(o){for(var s=o;;){if(s.flags&16384){var u=s.updateQueue;if(u!==null&&(u=u.stores,u!==null))for(var d=0;d<u.length;d++){var f=u[d],g=f.getSnapshot;f=f.value;try{if(!Gi(g(),f))return!1}catch{return!1}}}if(u=s.child,s.subtreeFlags&16384&&u!==null)u.return=s,s=u;else{if(s===o)break;for(;s.sibling===null;){if(s.return===null||s.return===o)return!0;s=s.return}s.sibling.return=s.return,s=s.sibling}}return!0}function ir(o,s){for(s&=~Jd,s&=~Al,o.suspendedLanes|=s,o.pingedLanes&=~s,o=o.expirationTimes;0<s;){var u=31-$i(s),d=1<<u;o[u]=-1,s&=~d}}function my(o){if(Re&6)throw Error(l(327));zr();var s=Ya(o,0);if(!(s&1))return di(o,Mt()),null;var u=kl(o,s);if(o.tag!==0&&u===2){var d=nd(o);d!==0&&(s=d,u=rh(o,d))}if(u===1)throw u=Ls,Or(o,0),ir(o,s),di(o,Mt()),u;if(u===6)throw Error(l(345));return o.finishedWork=o.current.alternate,o.finishedLanes=s,Lr(o,ci,Mn),di(o,Mt()),null}function gy(o){er!==null&&er.tag===0&&!(Re&6)&&zr();var s=Re;Re|=1;var u=yt.transition,d=Fe;try{if(yt.transition=null,Fe=1,o)return o()}finally{Fe=d,yt.transition=u,Re=s,!(Re&6)&&cn()}}function sh(){Si=To.current,Ze(To)}function Or(o,s){o.finishedWork=null,o.finishedLanes=0;var u=o.timeoutHandle;if(u!==Ve&&(o.timeoutHandle=Ve,ge(u)),xt!==null)for(u=xt.return;u!==null;){var d=u;switch(dd(d),d.tag){case 1:d=d.type.childContextTypes,d!=null&&qa();break;case 3:Eo(),Ze(ai),Ze(Ht),Ad();break;case 5:Pd(d);break;case 4:Eo();break;case 13:Ze(at);break;case 19:Ze(at);break;case 10:yd(d.type._context);break;case 22:case 23:sh()}u=u.return}if(Ot=o,xt=o=nr(o.current,null),Vt=Si=s,It=0,Ls=null,Jd=Al=kr=0,ci=zs=null,_r!==null){for(s=0;s<_r.length;s++)if(u=_r[s],d=u.interleaved,d!==null){u.interleaved=null;var f=d.next,g=u.pending;if(g!==null){var b=g.next;g.next=f,d.next=b}u.pending=d}_r=null}return o}function yy(o,s){do{var u=xt;try{if(gd(),ul.current=pl,cl){for(var d=lt.memoizedState;d!==null;){var f=d.queue;f!==null&&(f.pending=null),d=d.next}cl=!1}if(Mr=0,kt=At=lt=null,Es=!1,As=0,Zd.current=null,u===null||u.return===null){It=1,Ls=s,xt=null;break}e:{var g=o,b=u.return,R=u,F=s;if(s=Vt,R.flags|=32768,F!==null&&typeof F=="object"&&typeof F.then=="function"){var Z=F,le=R,Se=le.tag;if(!(le.mode&1)&&(Se===0||Se===11||Se===15)){var te=le.alternate;te?(le.updateQueue=te.updateQueue,le.memoizedState=te.memoizedState,le.lanes=te.lanes):(le.updateQueue=null,le.memoizedState=null)}var Je=Ug(b);if(Je!==null){Je.flags&=-257,Wg(Je,b,R,g,s),Je.mode&1&&Vg(g,Z,s),s=Je,F=Z;var We=s.updateQueue;if(We===null){var hi=new Set;hi.add(F),s.updateQueue=hi}else We.add(F);break e}else{if(!(s&1)){Vg(g,Z,s),ah();break e}F=Error(l(426))}}else if(nt&&R.mode&1){var kn=Ug(b);if(kn!==null){!(kn.flags&65536)&&(kn.flags|=256),Wg(kn,b,R,g,s),fd(Ao(F,R));break e}}g=F=Ao(F,R),It!==4&&(It=2),zs===null?zs=[g]:zs.push(g),g=b;do{switch(g.tag){case 3:g.flags|=65536,s&=-s,g.lanes|=s;var z=Dg(g,F,s);lg(g,z);break e;case 1:R=F;var _=g.type,D=g.stateNode;if(!(g.flags&128)&&(typeof _.getDerivedStateFromError=="function"||D!==null&&typeof D.componentDidCatch=="function"&&(Jn===null||!Jn.has(D)))){g.flags|=65536,s&=-s,g.lanes|=s;var ie=jg(g,R,s);lg(g,ie);break e}}g=g.return}while(g!==null)}Sy(u)}catch(me){s=me,xt===u&&u!==null&&(xt=u=u.return);continue}break}while(!0)}function vy(){var o=El.current;return El.current=pl,o===null?pl:o}function ah(){(It===0||It===3||It===2)&&(It=4),Ot===null||!(kr&268435455)&&!(Al&268435455)||ir(Ot,Vt)}function kl(o,s){var u=Re;Re|=2;var d=vy();(Ot!==o||Vt!==s)&&(Mn=null,Or(o,s));do try{wb();break}catch(f){yy(o,f)}while(!0);if(gd(),Re=u,El.current=d,xt!==null)throw Error(l(261));return Ot=null,Vt=0,It}function wb(){for(;xt!==null;)xy(xt)}function bb(){for(;xt!==null&&!G1();)xy(xt)}function xy(o){var s=Cy(o.alternate,o,Si);o.memoizedProps=o.pendingProps,s===null?Sy(o):xt=s,Zd.current=null}function Sy(o){var s=o;do{var u=s.alternate;if(o=s.return,s.flags&32768){if(u=mb(u,s),u!==null){u.flags&=32767,xt=u;return}if(o!==null)o.flags|=32768,o.subtreeFlags=0,o.deletions=null;else{It=6,xt=null;return}}else if(u=fb(u,s,Si),u!==null){xt=u;return}if(s=s.sibling,s!==null){xt=s;return}xt=s=o}while(s!==null);It===0&&(It=5)}function Lr(o,s,u){var d=Fe,f=yt.transition;try{yt.transition=null,Fe=1,Cb(o,s,u,d)}finally{yt.transition=f,Fe=d}return null}function Cb(o,s,u,d){do zr();while(er!==null);if(Re&6)throw Error(l(327));u=o.finishedWork;var f=o.finishedLanes;if(u===null)return null;if(o.finishedWork=null,o.finishedLanes=0,u===o.current)throw Error(l(177));o.callbackNode=null,o.callbackPriority=0;var g=u.lanes|u.childLanes;if($1(o,g),o===Ot&&(xt=Ot=null,Vt=0),!(u.subtreeFlags&2064)&&!(u.flags&2064)||Tl||(Tl=!0,Py(ld,function(){return zr(),null})),g=(u.flags&15990)!==0,u.subtreeFlags&15990||g){g=yt.transition,yt.transition=null;var b=Fe;Fe=1;var R=Re;Re|=4,Zd.current=null,yb(o,u),ly(u,o),ve(o.containerInfo),o.current=u,vb(u,o,f),Y1(),Re=R,Fe=b,yt.transition=g}else o.current=u;if(Tl&&(Tl=!1,er=o,Rl=f),g=o.pendingLanes,g===0&&(Jn=null),Z1(u.stateNode,d),di(o,Mt()),s!==null)for(d=o.onRecoverableError,u=0;u<s.length;u++)f=s[u],d(f.value,{componentStack:f.stack,digest:f.digest});if(Il)throw Il=!1,o=ih,ih=null,o;return Rl&1&&o.tag!==0&&zr(),g=o.pendingLanes,g&1?o===nh?Fs++:(Fs=0,nh=o):Fs=0,cn(),null}function zr(){if(er!==null){var o=Km(Rl),s=yt.transition,u=Fe;try{if(yt.transition=null,Fe=16>o?16:o,er===null)var d=!1;else{if(o=er,er=null,Rl=0,Re&6)throw Error(l(331));var f=Re;for(Re|=4,ae=o.current;ae!==null;){var g=ae,b=g.child;if(ae.flags&16){var R=g.deletions;if(R!==null){for(var F=0;F<R.length;F++){var Z=R[F];for(ae=Z;ae!==null;){var le=ae;switch(le.tag){case 0:case 11:case 15:ks(8,le,g)}var Se=le.child;if(Se!==null)Se.return=le,ae=Se;else for(;ae!==null;){le=ae;var te=le.sibling,Je=le.return;if(ry(le),le===Z){ae=null;break}if(te!==null){te.return=Je,ae=te;break}ae=Je}}}var We=g.alternate;if(We!==null){var hi=We.child;if(hi!==null){We.child=null;do{var kn=hi.sibling;hi.sibling=null,hi=kn}while(hi!==null)}}ae=g}}if(g.subtreeFlags&2064&&b!==null)b.return=g,ae=b;else e:for(;ae!==null;){if(g=ae,g.flags&2048)switch(g.tag){case 0:case 11:case 15:ks(9,g,g.return)}var z=g.sibling;if(z!==null){z.return=g.return,ae=z;break e}ae=g.return}}var _=o.current;for(ae=_;ae!==null;){b=ae;var D=b.child;if(b.subtreeFlags&2064&&D!==null)D.return=b,ae=D;else e:for(b=_;ae!==null;){if(R=ae,R.flags&2048)try{switch(R.tag){case 0:case 11:case 15:xl(9,R)}}catch(me){rt(R,R.return,me)}if(R===b){ae=null;break e}var ie=R.sibling;if(ie!==null){ie.return=R.return,ae=ie;break e}ae=R.return}}if(Re=f,cn(),un&&typeof un.onPostCommitFiberRoot=="function")try{un.onPostCommitFiberRoot(Xa,o)}catch{}d=!0}return d}finally{Fe=u,yt.transition=s}}return!1}function wy(o,s,u){s=Ao(u,s),s=Dg(o,s,1),o=Zn(o,s,1),s=Gt(),o!==null&&(Ss(o,1,s),di(o,s))}function rt(o,s,u){if(o.tag===3)wy(o,o,u);else for(;s!==null;){if(s.tag===3){wy(s,o,u);break}else if(s.tag===1){var d=s.stateNode;if(typeof s.type.getDerivedStateFromError=="function"||typeof d.componentDidCatch=="function"&&(Jn===null||!Jn.has(d))){o=Ao(u,o),o=jg(s,o,1),s=Zn(s,o,1),o=Gt(),s!==null&&(Ss(s,1,o),di(s,o));break}}s=s.return}}function Pb(o,s,u){var d=o.pingCache;d!==null&&d.delete(s),s=Gt(),o.pingedLanes|=o.suspendedLanes&u,Ot===o&&(Vt&u)===u&&(It===4||It===3&&(Vt&130023424)===Vt&&500>Mt()-eh?Or(o,0):Jd|=u),di(o,s)}function by(o,s){s===0&&(o.mode&1?(s=Ga,Ga<<=1,!(Ga&130023424)&&(Ga=4194304)):s=1);var u=Gt();o=dn(o,s),o!==null&&(Ss(o,s,u),di(o,u))}function Eb(o){var s=o.memoizedState,u=0;s!==null&&(u=s.retryLane),by(o,u)}function Ab(o,s){var u=0;switch(o.tag){case 13:var d=o.stateNode,f=o.memoizedState;f!==null&&(u=f.retryLane);break;case 19:d=o.stateNode;break;default:throw Error(l(314))}d!==null&&d.delete(s),by(o,u)}var Cy;Cy=function(o,s,u){if(o!==null)if(o.memoizedProps!==s.pendingProps||ai.current)ui=!0;else{if(!(o.lanes&u)&&!(s.flags&128))return ui=!1,pb(o,s,u);ui=!!(o.flags&131072)}else ui=!1,nt&&s.flags&1048576&&eg(s,Ja,s.index);switch(s.lanes=0,s.tag){case 2:var d=s.type;ml(o,s),o=s.pendingProps;var f=yo(s,Ht.current);bo(s,u),f=Rd(null,s,d,o,f,u);var g=_d();return s.flags|=1,typeof f=="object"&&f!==null&&typeof f.render=="function"&&f.$$typeof===void 0?(s.tag=1,s.memoizedState=null,s.updateQueue=null,li(d)?(g=!0,Qa(s)):g=!1,s.memoizedState=f.state!==null&&f.state!==void 0?f.state:null,Sd(s),f.updater=sl,s.stateNode=f,f._reactInternals=s,bd(s,d,o,u),s=Bd(null,s,d,!0,g,u)):(s.tag=0,nt&&g&&cd(s),Kt(null,s,f,u),s=s.child),s;case 16:d=s.elementType;e:{switch(ml(o,s),o=s.pendingProps,f=d._init,d=f(d._payload),s.type=d,f=s.tag=Tb(d),o=Xi(d,o),f){case 0:s=Nd(null,s,d,o,u);break e;case 1:s=Yg(null,s,d,o,u);break e;case 11:s=Hg(null,s,d,o,u);break e;case 14:s=qg(null,s,d,Xi(d.type,o),u);break e}throw Error(l(306,d,""))}return s;case 0:return d=s.type,f=s.pendingProps,f=s.elementType===d?f:Xi(d,f),Nd(o,s,d,f,u);case 1:return d=s.type,f=s.pendingProps,f=s.elementType===d?f:Xi(d,f),Yg(o,s,d,f,u);case 3:e:{if(Xg(s),o===null)throw Error(l(387));d=s.pendingProps,g=s.memoizedState,f=g.element,ag(o,s),ol(s,d,null,u);var b=s.memoizedState;if(d=b.element,he&&g.isDehydrated)if(g={element:d,isDehydrated:!1,cache:b.cache,pendingSuspenseBoundaries:b.pendingSuspenseBoundaries,transitions:b.transitions},s.updateQueue.baseState=g,s.memoizedState=g,s.flags&256){f=Ao(Error(l(423)),s),s=Kg(o,s,d,u,f);break e}else if(d!==f){f=Ao(Error(l(424)),s),s=Kg(o,s,d,u,f);break e}else for(he&&(ki=T1(s.stateNode.containerInfo),xi=s,nt=!0,Yi=null,ws=!1),u=gg(s,null,d,u),s.child=u;u;)u.flags=u.flags&-3|4096,u=u.sibling;else{if(So(),d===f){s=_n(o,s,u);break e}Kt(o,s,d,u)}s=s.child}return s;case 5:return yg(s),o===null&&pd(s),d=s.type,f=s.pendingProps,g=o!==null?o.memoizedProps:null,b=f.children,G(d,f)?b=null:g!==null&&G(d,g)&&(s.flags|=32),Gg(o,s),Kt(o,s,b,u),s.child;case 6:return o===null&&pd(s),null;case 13:return Zg(o,s,u);case 4:return Cd(s,s.stateNode.containerInfo),d=s.pendingProps,o===null?s.child=Co(s,null,d,u):Kt(o,s,d,u),s.child;case 11:return d=s.type,f=s.pendingProps,f=s.elementType===d?f:Xi(d,f),Hg(o,s,d,f,u);case 7:return Kt(o,s,s.pendingProps,u),s.child;case 8:return Kt(o,s,s.pendingProps.children,u),s.child;case 12:return Kt(o,s,s.pendingProps.children,u),s.child;case 10:e:{if(d=s.type._context,f=s.pendingProps,g=s.memoizedProps,b=f.value,og(s,d,b),g!==null)if(Gi(g.value,b)){if(g.children===f.children&&!ai.current){s=_n(o,s,u);break e}}else for(g=s.child,g!==null&&(g.return=s);g!==null;){var R=g.dependencies;if(R!==null){b=g.child;for(var F=R.firstContext;F!==null;){if(F.context===d){if(g.tag===1){F=Rn(-1,u&-u),F.tag=2;var Z=g.updateQueue;if(Z!==null){Z=Z.shared;var le=Z.pending;le===null?F.next=F:(F.next=le.next,le.next=F),Z.pending=F}}g.lanes|=u,F=g.alternate,F!==null&&(F.lanes|=u),vd(g.return,u,s),R.lanes|=u;break}F=F.next}}else if(g.tag===10)b=g.type===s.type?null:g.child;else if(g.tag===18){if(b=g.return,b===null)throw Error(l(341));b.lanes|=u,R=b.alternate,R!==null&&(R.lanes|=u),vd(b,u,s),b=g.sibling}else b=g.child;if(b!==null)b.return=g;else for(b=g;b!==null;){if(b===s){b=null;break}if(g=b.sibling,g!==null){g.return=b.return,b=g;break}b=b.return}g=b}Kt(o,s,f.children,u),s=s.child}return s;case 9:return f=s.type,d=s.pendingProps.children,bo(s,u),f=Oi(f),d=d(f),s.flags|=1,Kt(o,s,d,u),s.child;case 14:return d=s.type,f=Xi(d,s.pendingProps),f=Xi(d.type,f),qg(o,s,d,f,u);case 15:return Qg(o,s,s.type,s.pendingProps,u);case 17:return d=s.type,f=s.pendingProps,f=s.elementType===d?f:Xi(d,f),ml(o,s),s.tag=1,li(d)?(o=!0,Qa(s)):o=!1,bo(s,u),hg(s,d,f),bd(s,d,f,u),Bd(null,s,d,!0,o,u);case 19:return ey(o,s,u);case 22:return $g(o,s,u)}throw Error(l(156,s.tag))};function Py(o,s){return sd(o,s)}function Ib(o,s,u,d){this.tag=o,this.key=u,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=s,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=d,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ni(o,s,u,d){return new Ib(o,s,u,d)}function lh(o){return o=o.prototype,!(!o||!o.isReactComponent)}function Tb(o){if(typeof o=="function")return lh(o)?1:0;if(o!=null){if(o=o.$$typeof,o===x)return 11;if(o===I)return 14}return 2}function nr(o,s){var u=o.alternate;return u===null?(u=Ni(o.tag,s,o.key,o.mode),u.elementType=o.elementType,u.type=o.type,u.stateNode=o.stateNode,u.alternate=o,o.alternate=u):(u.pendingProps=s,u.type=o.type,u.flags=0,u.subtreeFlags=0,u.deletions=null),u.flags=o.flags&14680064,u.childLanes=o.childLanes,u.lanes=o.lanes,u.child=o.child,u.memoizedProps=o.memoizedProps,u.memoizedState=o.memoizedState,u.updateQueue=o.updateQueue,s=o.dependencies,u.dependencies=s===null?null:{lanes:s.lanes,firstContext:s.firstContext},u.sibling=o.sibling,u.index=o.index,u.ref=o.ref,u}function Ol(o,s,u,d,f,g){var b=2;if(d=o,typeof o=="function")lh(o)&&(b=1);else if(typeof o=="string")b=5;else e:switch(o){case h:return Fr(u.children,f,g,s);case y:b=8,f|=8;break;case S:return o=Ni(12,u,s,f|2),o.elementType=S,o.lanes=g,o;case A:return o=Ni(13,u,s,f),o.elementType=A,o.lanes=g,o;case C:return o=Ni(19,u,s,f),o.elementType=C,o.lanes=g,o;case O:return Ll(u,f,g,s);default:if(typeof o=="object"&&o!==null)switch(o.$$typeof){case w:b=10;break e;case v:b=9;break e;case x:b=11;break e;case I:b=14;break e;case E:b=16,d=null;break e}throw Error(l(130,o==null?o:typeof o,""))}return s=Ni(b,u,s,f),s.elementType=o,s.type=d,s.lanes=g,s}function Fr(o,s,u,d){return o=Ni(7,o,d,s),o.lanes=u,o}function Ll(o,s,u,d){return o=Ni(22,o,d,s),o.elementType=O,o.lanes=u,o.stateNode={isHidden:!1},o}function uh(o,s,u){return o=Ni(6,o,null,s),o.lanes=u,o}function ch(o,s,u){return s=Ni(4,o.children!==null?o.children:[],o.key,s),s.lanes=u,s.stateNode={containerInfo:o.containerInfo,pendingChildren:null,implementation:o.implementation},s}function Rb(o,s,u,d,f){this.tag=s,this.containerInfo=o,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=Ve,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=rd(0),this.expirationTimes=rd(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=rd(0),this.identifierPrefix=d,this.onRecoverableError=f,he&&(this.mutableSourceEagerHydrationData=null)}function Ey(o,s,u,d,f,g,b,R,F){return o=new Rb(o,s,u,R,F),s===1?(s=1,g===!0&&(s|=8)):s=0,g=Ni(3,null,null,s),o.current=g,g.stateNode=o,g.memoizedState={element:d,isDehydrated:u,cache:null,transitions:null,pendingSuspenseBoundaries:null},Sd(g),o}function Ay(o){if(!o)return Xn;o=o._reactInternals;e:{if(J(o)!==o||o.tag!==1)throw Error(l(170));var s=o;do{switch(s.tag){case 3:s=s.stateNode.context;break e;case 1:if(li(s.type)){s=s.stateNode.__reactInternalMemoizedMergedChildContext;break e}}s=s.return}while(s!==null);throw Error(l(171))}if(o.tag===1){var u=o.type;if(li(u))return Gm(o,u,s)}return s}function Iy(o){var s=o._reactInternals;if(s===void 0)throw typeof o.render=="function"?Error(l(188)):(o=Object.keys(o).join(","),Error(l(268,o)));return o=ee(s),o===null?null:o.stateNode}function Ty(o,s){if(o=o.memoizedState,o!==null&&o.dehydrated!==null){var u=o.retryLane;o.retryLane=u!==0&&u<s?u:s}}function zl(o,s){Ty(o,s),(o=o.alternate)&&Ty(o,s)}function _b(o){return o=ee(o),o===null?null:o.stateNode}function Mb(){return null}return i.attemptContinuousHydration=function(o){if(o.tag===13){var s=dn(o,134217728);if(s!==null){var u=Gt();Fi(s,o,134217728,u)}zl(o,134217728)}},i.attemptDiscreteHydration=function(o){if(o.tag===13){var s=dn(o,1);if(s!==null){var u=Gt();Fi(s,o,1,u)}zl(o,1)}},i.attemptHydrationAtCurrentPriority=function(o){if(o.tag===13){var s=tr(o),u=dn(o,s);if(u!==null){var d=Gt();Fi(u,o,s,d)}zl(o,s)}},i.attemptSynchronousHydration=function(o){switch(o.tag){case 3:var s=o.stateNode;if(s.current.memoizedState.isDehydrated){var u=xs(s.pendingLanes);u!==0&&(od(s,u|1),di(s,Mt()),!(Re&6)&&(Ro(),cn()))}break;case 13:gy(function(){var d=dn(o,1);if(d!==null){var f=Gt();Fi(d,o,1,f)}}),zl(o,1)}},i.batchedUpdates=function(o,s){var u=Re;Re|=1;try{return o(s)}finally{Re=u,Re===0&&(Ro(),Ka&&cn())}},i.createComponentSelector=function(o){return{$$typeof:Sl,value:o}},i.createContainer=function(o,s,u,d,f,g,b){return Ey(o,s,!1,null,u,d,f,g,b)},i.createHasPseudoClassSelector=function(o){return{$$typeof:wl,value:o}},i.createHydrationContainer=function(o,s,u,d,f,g,b,R,F){return o=Ey(u,d,!0,o,f,g,b,R,F),o.context=Ay(null),u=o.current,d=Gt(),f=tr(u),g=Rn(d,f),g.callback=s??null,Zn(u,g,f),o.current.lanes=f,Ss(o,f,d),di(o,d),o},i.createPortal=function(o,s,u){var d=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:m,key:d==null?null:""+d,children:o,containerInfo:s,implementation:u}},i.createRoleSelector=function(o){return{$$typeof:bl,value:o}},i.createTestNameSelector=function(o){return{$$typeof:Cl,value:o}},i.createTextSelector=function(o){return{$$typeof:Pl,value:o}},i.deferredUpdates=function(o){var s=Fe,u=yt.transition;try{return yt.transition=null,Fe=16,o()}finally{Fe=s,yt.transition=u}},i.discreteUpdates=function(o,s,u,d,f){var g=Fe,b=yt.transition;try{return yt.transition=null,Fe=1,o(s,u,d,f)}finally{Fe=g,yt.transition=b,Re===0&&Ro()}},i.findAllNodes=Kd,i.findBoundingRects=function(o,s){if(!Ri)throw Error(l(363));s=Kd(o,s),o=[];for(var u=0;u<s.length;u++)o.push(Ua(s[u]));for(s=o.length-1;0<s;s--){u=o[s];for(var d=u.x,f=d+u.width,g=u.y,b=g+u.height,R=s-1;0<=R;R--)if(s!==R){var F=o[R],Z=F.x,le=Z+F.width,Se=F.y,te=Se+F.height;if(d>=Z&&g>=Se&&f<=le&&b<=te){o.splice(s,1);break}else if(d!==Z||u.width!==F.width||te<g||Se>b){if(!(g!==Se||u.height!==F.height||le<d||Z>f)){Z>d&&(F.width+=Z-d,F.x=d),le<f&&(F.width=f-Z),o.splice(s,1);break}}else{Se>g&&(F.height+=Se-g,F.y=g),te<b&&(F.height=b-Se),o.splice(s,1);break}}}return o},i.findHostInstance=Iy,i.findHostInstanceWithNoPortals=function(o){return o=q(o),o=o!==null?pe(o):null,o===null?null:o.stateNode},i.findHostInstanceWithWarning=function(o){return Iy(o)},i.flushControlled=function(o){var s=Re;Re|=1;var u=yt.transition,d=Fe;try{yt.transition=null,Fe=1,o()}finally{Fe=d,yt.transition=u,Re=s,Re===0&&(Ro(),cn())}},i.flushPassiveEffects=zr,i.flushSync=gy,i.focusWithin=function(o,s){if(!Ri)throw Error(l(363));for(o=Gd(o),s=py(o,s),s=Array.from(s),o=0;o<s.length;){var u=s[o++];if(!ln(u)){if(u.tag===5&&Kc(u.stateNode))return!0;for(u=u.child;u!==null;)s.push(u),u=u.sibling}}return!1},i.getCurrentUpdatePriority=function(){return Fe},i.getFindAllNodesFailureDescription=function(o,s){if(!Ri)throw Error(l(363));var u=0,d=[];o=[Gd(o),0];for(var f=0;f<o.length;){var g=o[f++],b=o[f++],R=s[b];if((g.tag!==5||!ln(g))&&(Yd(g,R)&&(d.push(Xd(R)),b++,b>u&&(u=b)),b<s.length))for(g=g.child;g!==null;)o.push(g,b),g=g.sibling}if(u<s.length){for(o=[];u<s.length;u++)o.push(Xd(s[u]));return`findAllNodes was able to match part of the selector:
|
|
8
8
|
`+(d.join(" > ")+`
|
|
9
9
|
|
|
10
10
|
No matching component was found for:
|
|
11
|
-
`)+o.join(" > ")}return null},i.getPublicRootInstance=function(o){if(o=o.current,!o.child)return null;switch(o.child.tag){case 5:return ke(o.child.stateNode);default:return o.child.stateNode}},i.injectIntoDevTools=function(o){if(o={bundleType:o.bundleType,version:o.version,rendererPackageName:o.rendererPackageName,rendererConfig:o.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:c.ReactCurrentDispatcher,findHostInstanceByFiber:Mb,findFiberByHostInstance:o.findFiberByHostInstance||kb,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.2.0"},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")o=!1;else{var s=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(s.isDisabled||!s.supportsFiber)o=!0;else{try{Xa=s.inject(o),un=s}catch{}o=!!s.checkDCE}}return o},i.isAlreadyRendering=function(){return!1},i.observeVisibleRects=function(o,s,u,d){if(!Ti)throw Error(l(363));o=Kd(o,s);var f=Y(o,u,d).disconnect;return{disconnect:function(){f()}}},i.registerMutableSourceForHydration=function(o,s){var u=s._getVersion;u=u(s._source),o.mutableSourceEagerHydrationData==null?o.mutableSourceEagerHydrationData=[s,u]:o.mutableSourceEagerHydrationData.push(s,u)},i.runWithPriority=function(o,s){var u=Fe;try{return Fe=o,s()}finally{Fe=u}},i.shouldError=function(){return null},i.shouldSuspend=function(){return!1},i.updateContainer=function(o,s,u,d){var f=s.current,g=Gt(),b=tr(f);return u=Iy(u),s.context===null?s.context=u:s.pendingContext=u,s=Tn(g,b),s.payload={element:o},d=d===void 0?null:d,d!==null&&(s.callback=d),o=Zn(f,s,b),o!==null&&(Fi(o,f,b,g),rl(o,f,b)),b},i}});var Av=St((vT,Ev)=>{"use strict";Ev.exports=Pv()});var Ws=St((YT,Sx)=>{"use strict";Sx.exports=ReactDOM});var bx=St(Ap=>{"use strict";var wx=Ws();Ap.createRoot=wx.createRoot,Ap.hydrateRoot=wx.hydrateRoot;var XT});var SS=St(xS=>{"use strict";var Ko=q();function DA(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var jA=typeof Object.is=="function"?Object.is:DA,VA=Ko.useState,UA=Ko.useEffect,WA=Ko.useLayoutEffect,HA=Ko.useDebugValue;function qA(e,t){var i=t(),n=VA({inst:{value:i,getSnapshot:t}}),r=n[0].inst,a=n[1];return WA(function(){r.value=i,r.getSnapshot=t,Cf(r)&&a({inst:r})},[e,i,t]),UA(function(){return Cf(r)&&a({inst:r}),e(function(){Cf(r)&&a({inst:r})})},[e]),HA(i),i}function Cf(e){var t=e.getSnapshot;e=e.value;try{var i=t();return!jA(e,i)}catch{return!0}}function QA(e,t){return t()}var $A=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?QA:qA;xS.useSyncExternalStore=Ko.useSyncExternalStore!==void 0?Ko.useSyncExternalStore:$A});var bS=St((xk,wS)=>{"use strict";wS.exports=SS()});var PS=St(CS=>{"use strict";var ac=q(),GA=bS();function YA(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var XA=typeof Object.is=="function"?Object.is:YA,KA=GA.useSyncExternalStore,ZA=ac.useRef,JA=ac.useEffect,eI=ac.useMemo,tI=ac.useDebugValue;CS.useSyncExternalStoreWithSelector=function(e,t,i,n,r){var a=ZA(null);if(a.current===null){var l={hasValue:!1,value:null};a.current=l}else l=a.current;a=eI(function(){function p(w){if(!m){if(m=!0,h=w,w=n(w),r!==void 0&&l.hasValue){var v=l.value;if(r(v,w))return y=v}return y=w}if(v=y,XA(h,w))return v;var x=n(w);return r!==void 0&&r(v,x)?v:(h=w,y=x)}var m=!1,h,y,S=i===void 0?null:i;return[function(){return p(t())},S===null?void 0:function(){return p(S())}]},[t,i,n,r]);var c=KA(e,a[0],a[1]);return JA(function(){l.hasValue=!0,l.value=c},[c]),tI(c),c}});var AS=St((wk,ES)=>{"use strict";ES.exports=PS()});var i1=St((RD,t1)=>{"use strict";(()=>{var e={296:(r,a,l)=>{var c=/^\s+|\s+$/g,p=/^[-+]0x[0-9a-f]+$/i,m=/^0b[01]+$/i,h=/^0o[0-7]+$/i,y=parseInt,S=typeof l.g=="object"&&l.g&&l.g.Object===Object&&l.g,w=typeof self=="object"&&self&&self.Object===Object&&self,v=S||w||Function("return this")(),x=Object.prototype.toString,A=Math.max,C=Math.min,I=function(){return v.Date.now()};function E(z){var M=typeof z;return!!z&&(M=="object"||M=="function")}function L(z){if(typeof z=="number")return z;if(function(V){return typeof V=="symbol"||function(J){return!!J&&typeof J=="object"}(V)&&x.call(V)=="[object Symbol]"}(z))return NaN;if(E(z)){var M=typeof z.valueOf=="function"?z.valueOf():z;z=E(M)?M+"":M}if(typeof z!="string")return z===0?z:+z;z=z.replace(c,"");var Q=m.test(z);return Q||h.test(z)?y(z.slice(2),Q?2:8):p.test(z)?NaN:+z}r.exports=function(z,M,Q){var V,J,U,W,ee,Me,pe=0,Re=!1,ke=!1,He=!0;if(typeof z!="function")throw new TypeError("Expected a function");function qe($e){var N=V,G=J;return V=J=void 0,pe=$e,W=z.apply(G,N)}function $($e){var N=$e-Me;return Me===void 0||N>=M||N<0||ke&&$e-pe>=U}function ve(){var $e=I();if($($e))return it($e);ee=setTimeout(ve,function(N){var G=M-(N-Me);return ke?C(G,U-(N-pe)):G}($e))}function it($e){return ee=void 0,He&&V?qe($e):(V=J=void 0,W)}function Qe(){var $e=I(),N=$($e);if(V=arguments,J=this,Me=$e,N){if(ee===void 0)return function(G){return pe=G,ee=setTimeout(ve,M),Re?qe(G):W}(Me);if(ke)return ee=setTimeout(ve,M),qe(Me)}return ee===void 0&&(ee=setTimeout(ve,M)),W}return M=L(M)||0,E(Q)&&(Re=!!Q.leading,U=(ke="maxWait"in Q)?A(L(Q.maxWait)||0,M):U,He="trailing"in Q?!!Q.trailing:He),Qe.cancel=function(){ee!==void 0&&clearTimeout(ee),pe=0,V=Me=J=ee=void 0},Qe.flush=function(){return ee===void 0?W:it(I())},Qe}},96:(r,a,l)=>{var c="Expected a function",p=NaN,m="[object Symbol]",h=/^\s+|\s+$/g,y=/^[-+]0x[0-9a-f]+$/i,S=/^0b[01]+$/i,w=/^0o[0-7]+$/i,v=parseInt,x=typeof l.g=="object"&&l.g&&l.g.Object===Object&&l.g,A=typeof self=="object"&&self&&self.Object===Object&&self,C=x||A||Function("return this")(),I=Object.prototype.toString,E=Math.max,L=Math.min,z=function(){return C.Date.now()};function M(V){var J=typeof V;return!!V&&(J=="object"||J=="function")}function Q(V){if(typeof V=="number")return V;if(function(W){return typeof W=="symbol"||function(ee){return!!ee&&typeof ee=="object"}(W)&&I.call(W)==m}(V))return p;if(M(V)){var J=typeof V.valueOf=="function"?V.valueOf():V;V=M(J)?J+"":J}if(typeof V!="string")return V===0?V:+V;V=V.replace(h,"");var U=S.test(V);return U||w.test(V)?v(V.slice(2),U?2:8):y.test(V)?p:+V}r.exports=function(V,J,U){var W=!0,ee=!0;if(typeof V!="function")throw new TypeError(c);return M(U)&&(W="leading"in U?!!U.leading:W,ee="trailing"in U?!!U.trailing:ee),function(Me,pe,Re){var ke,He,qe,$,ve,it,Qe=0,$e=!1,N=!1,G=!0;if(typeof Me!="function")throw new TypeError(c);function de(Pe){var ne=ke,he=He;return ke=He=void 0,Qe=Pe,$=Me.apply(he,ne)}function ye(Pe){var ne=Pe-it;return it===void 0||ne>=pe||ne<0||N&&Pe-Qe>=qe}function ge(){var Pe=z();if(ye(Pe))return Ve(Pe);ve=setTimeout(ge,function(ne){var he=pe-(ne-it);return N?L(he,qe-(ne-Qe)):he}(Pe))}function Ve(Pe){return ve=void 0,G&&ke?de(Pe):(ke=He=void 0,$)}function ze(){var Pe=z(),ne=ye(Pe);if(ke=arguments,He=this,it=Pe,ne){if(ve===void 0)return function(he){return Qe=he,ve=setTimeout(ge,pe),$e?de(he):$}(it);if(N)return ve=setTimeout(ge,pe),de(it)}return ve===void 0&&(ve=setTimeout(ge,pe)),$}return pe=Q(pe)||0,M(Re)&&($e=!!Re.leading,qe=(N="maxWait"in Re)?E(Q(Re.maxWait)||0,pe):qe,G="trailing"in Re?!!Re.trailing:G),ze.cancel=function(){ve!==void 0&&clearTimeout(ve),Qe=0,ke=it=He=ve=void 0},ze.flush=function(){return ve===void 0?$:Ve(z())},ze}(V,J,{leading:W,maxWait:J,trailing:ee})}},703:(r,a,l)=>{"use strict";var c=l(414);function p(){}function m(){}m.resetWarningCache=p,r.exports=function(){function h(w,v,x,A,C,I){if(I!==c){var E=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw E.name="Invariant Violation",E}}function y(){return h}h.isRequired=h;var S={array:h,bigint:h,bool:h,func:h,number:h,object:h,string:h,symbol:h,any:h,arrayOf:y,element:h,elementType:h,instanceOf:y,node:h,objectOf:y,oneOf:y,oneOfType:y,shape:y,exact:y,checkPropTypes:m,resetWarningCache:p};return S.PropTypes=S,S}},697:(r,a,l)=>{r.exports=l(703)()},414:r=>{"use strict";r.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"}},t={};function i(r){var a=t[r];if(a!==void 0)return a.exports;var l=t[r]={exports:{}};return e[r](l,l.exports,i),l.exports}i.n=r=>{var a=r&&r.__esModule?()=>r.default:()=>r;return i.d(a,{a}),a},i.d=(r,a)=>{for(var l in a)i.o(a,l)&&!i.o(r,l)&&Object.defineProperty(r,l,{enumerable:!0,get:a[l]})},i.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}(),i.o=(r,a)=>Object.prototype.hasOwnProperty.call(r,a),i.r=r=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(r,"__esModule",{value:!0})};var n={};(()=>{"use strict";i.r(n),i.d(n,{LazyLoadComponent:()=>Oe,LazyLoadImage:()=>Kc,trackWindowScroll:()=>it});let r=q();var a=i.n(r),l=i(697);let c=Ws();var p=i.n(c);function m(){return typeof window<"u"&&"IntersectionObserver"in window&&"isIntersecting"in window.IntersectionObserverEntry.prototype}function h(Y){return h=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(k){return typeof k}:function(k){return k&&typeof Symbol=="function"&&k.constructor===Symbol&&k!==Symbol.prototype?"symbol":typeof k},h(Y)}function y(Y,k){var X=Object.keys(Y);if(Object.getOwnPropertySymbols){var K=Object.getOwnPropertySymbols(Y);k&&(K=K.filter(function(be){return Object.getOwnPropertyDescriptor(Y,be).enumerable})),X.push.apply(X,K)}return X}function S(Y,k,X){return(k=v(k))in Y?Object.defineProperty(Y,k,{value:X,enumerable:!0,configurable:!0,writable:!0}):Y[k]=X,Y}function w(Y,k){for(var X=0;X<k.length;X++){var K=k[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Y,v(K.key),K)}}function v(Y){var k=function(X,K){if(h(X)!=="object"||X===null)return X;var be=X[Symbol.toPrimitive];if(be!==void 0){var Ae=be.call(X,"string");if(h(Ae)!=="object")return Ae;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(X)}(Y);return h(k)==="symbol"?k:String(k)}function x(Y,k){return x=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},x(Y,k)}function A(Y){return A=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(k){return k.__proto__||Object.getPrototypeOf(k)},A(Y)}var C=function(Y){Y.forEach(function(k){k.isIntersecting&&k.target.onVisible()})},I={},E=function(Y){(function(j,H){if(typeof H!="function"&&H!==null)throw new TypeError("Super expression must either be null or a function");j.prototype=Object.create(H&&H.prototype,{constructor:{value:j,writable:!0,configurable:!0}}),Object.defineProperty(j,"prototype",{writable:!1}),H&&x(j,H)})(je,Y);var k,X,K,be,Ae=(K=je,be=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}(),function(){var j,H=A(K);if(be){var ue=A(this).constructor;j=Reflect.construct(H,arguments,ue)}else j=H.apply(this,arguments);return function(oe,se){if(se&&(h(se)==="object"||typeof se=="function"))return se;if(se!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Ie){if(Ie===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Ie}(oe)}(this,j)});function je(j){var H;if(function(oe,se){if(!(oe instanceof se))throw new TypeError("Cannot call a class as a function")}(this,je),(H=Ae.call(this,j)).supportsObserver=!j.scrollPosition&&j.useIntersectionObserver&&m(),H.supportsObserver){var ue=j.threshold;H.observer=function(oe){return I[oe]=I[oe]||new IntersectionObserver(C,{rootMargin:oe+"px"}),I[oe]}(ue)}return H}return k=je,X=[{key:"componentDidMount",value:function(){this.placeholder&&this.observer&&(this.placeholder.onVisible=this.props.onVisible,this.observer.observe(this.placeholder)),this.supportsObserver||this.updateVisibility()}},{key:"componentWillUnmount",value:function(){this.observer&&this.placeholder&&this.observer.unobserve(this.placeholder)}},{key:"componentDidUpdate",value:function(){this.supportsObserver||this.updateVisibility()}},{key:"getPlaceholderBoundingBox",value:function(){var j=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.props.scrollPosition,H=this.placeholder.getBoundingClientRect(),ue=p().findDOMNode(this.placeholder).style,oe=parseInt(ue.getPropertyValue("margin-left"),10)||0,se=parseInt(ue.getPropertyValue("margin-top"),10)||0;return{bottom:j.y+H.bottom+se,left:j.x+H.left+oe,right:j.x+H.right+oe,top:j.y+H.top+se}}},{key:"isPlaceholderInViewport",value:function(){if(typeof window>"u"||!this.placeholder)return!1;var j=this.props,H=j.scrollPosition,ue=j.threshold,oe=this.getPlaceholderBoundingBox(H),se=H.y+window.innerHeight,Ie=H.x,Xe=H.x+window.innerWidth,Ke=H.y;return Ke-ue<=oe.bottom&&se+ue>=oe.top&&Ie-ue<=oe.right&&Xe+ue>=oe.left}},{key:"updateVisibility",value:function(){this.isPlaceholderInViewport()&&this.props.onVisible()}},{key:"render",value:function(){var j=this,H=this.props,ue=H.className,oe=H.height,se=H.placeholder,Ie=H.style,Xe=H.width;if(se&&typeof se.type!="function")return a().cloneElement(se,{ref:function(Ue){return j.placeholder=Ue}});var Ke=function(Ue){for(var Et=1;Et<arguments.length;Et++){var st=arguments[Et]!=null?arguments[Et]:{};Et%2?y(Object(st),!0).forEach(function(At){S(Ue,At,st[At])}):Object.getOwnPropertyDescriptors?Object.defineProperties(Ue,Object.getOwnPropertyDescriptors(st)):y(Object(st)).forEach(function(At){Object.defineProperty(Ue,At,Object.getOwnPropertyDescriptor(st,At))})}return Ue}({display:"inline-block"},Ie);return Xe!==void 0&&(Ke.width=Xe),oe!==void 0&&(Ke.height=oe),a().createElement("span",{className:ue,ref:function(Ue){return j.placeholder=Ue},style:Ke},se)}}],X&&w(k.prototype,X),Object.defineProperty(k,"prototype",{writable:!1}),je}(a().Component);E.propTypes={onVisible:l.PropTypes.func.isRequired,className:l.PropTypes.string,height:l.PropTypes.oneOfType([l.PropTypes.number,l.PropTypes.string]),placeholder:l.PropTypes.element,threshold:l.PropTypes.number,useIntersectionObserver:l.PropTypes.bool,scrollPosition:l.PropTypes.shape({x:l.PropTypes.number.isRequired,y:l.PropTypes.number.isRequired}),width:l.PropTypes.oneOfType([l.PropTypes.number,l.PropTypes.string])},E.defaultProps={className:"",placeholder:null,threshold:100,useIntersectionObserver:!0};let L=E;var z=i(296),M=i.n(z),Q=i(96),V=i.n(Q),J=function(Y){var k=getComputedStyle(Y,null);return k.getPropertyValue("overflow")+k.getPropertyValue("overflow-y")+k.getPropertyValue("overflow-x")};let U=function(Y){if(!(Y instanceof HTMLElement))return window;for(var k=Y;k&&k instanceof HTMLElement;){if(/(scroll|auto)/.test(J(k)))return k;k=k.parentNode}return window};function W(Y){return W=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(k){return typeof k}:function(k){return k&&typeof Symbol=="function"&&k.constructor===Symbol&&k!==Symbol.prototype?"symbol":typeof k},W(Y)}var ee=["delayMethod","delayTime"];function Me(){return Me=Object.assign?Object.assign.bind():function(Y){for(var k=1;k<arguments.length;k++){var X=arguments[k];for(var K in X)Object.prototype.hasOwnProperty.call(X,K)&&(Y[K]=X[K])}return Y},Me.apply(this,arguments)}function pe(Y,k){for(var X=0;X<k.length;X++){var K=k[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Y,(be=function(Ae,je){if(W(Ae)!=="object"||Ae===null)return Ae;var j=Ae[Symbol.toPrimitive];if(j!==void 0){var H=j.call(Ae,"string");if(W(H)!=="object")return H;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Ae)}(K.key),W(be)==="symbol"?be:String(be)),K)}var be}function Re(Y,k){return Re=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},Re(Y,k)}function ke(Y,k){if(k&&(W(k)==="object"||typeof k=="function"))return k;if(k!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return He(Y)}function He(Y){if(Y===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Y}function qe(Y){return qe=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(k){return k.__proto__||Object.getPrototypeOf(k)},qe(Y)}var $=function(){return typeof window>"u"?0:window.scrollX||window.pageXOffset},ve=function(){return typeof window>"u"?0:window.scrollY||window.pageYOffset};let it=function(Y){var k=function(X){(function(ue,oe){if(typeof oe!="function"&&oe!==null)throw new TypeError("Super expression must either be null or a function");ue.prototype=Object.create(oe&&oe.prototype,{constructor:{value:ue,writable:!0,configurable:!0}}),Object.defineProperty(ue,"prototype",{writable:!1}),oe&&Re(ue,oe)})(H,X);var K,be,Ae,je,j=(Ae=H,je=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}(),function(){var ue,oe=qe(Ae);if(je){var se=qe(this).constructor;ue=Reflect.construct(oe,arguments,se)}else ue=oe.apply(this,arguments);return ke(this,ue)});function H(ue){var oe;if(function(Ie,Xe){if(!(Ie instanceof Xe))throw new TypeError("Cannot call a class as a function")}(this,H),(oe=j.call(this,ue)).useIntersectionObserver=ue.useIntersectionObserver&&m(),oe.useIntersectionObserver)return ke(oe);var se=oe.onChangeScroll.bind(He(oe));return ue.delayMethod==="debounce"?oe.delayedScroll=M()(se,ue.delayTime):ue.delayMethod==="throttle"&&(oe.delayedScroll=V()(se,ue.delayTime)),oe.state={scrollPosition:{x:$(),y:ve()}},oe.baseComponentRef=a().createRef(),oe}return K=H,(be=[{key:"componentDidMount",value:function(){this.addListeners()}},{key:"componentWillUnmount",value:function(){this.removeListeners()}},{key:"componentDidUpdate",value:function(){typeof window>"u"||this.useIntersectionObserver||U(p().findDOMNode(this.baseComponentRef.current))!==this.scrollElement&&(this.removeListeners(),this.addListeners())}},{key:"addListeners",value:function(){typeof window>"u"||this.useIntersectionObserver||(this.scrollElement=U(p().findDOMNode(this.baseComponentRef.current)),this.scrollElement.addEventListener("scroll",this.delayedScroll,{passive:!0}),window.addEventListener("resize",this.delayedScroll,{passive:!0}),this.scrollElement!==window&&window.addEventListener("scroll",this.delayedScroll,{passive:!0}))}},{key:"removeListeners",value:function(){typeof window>"u"||this.useIntersectionObserver||(this.scrollElement.removeEventListener("scroll",this.delayedScroll),window.removeEventListener("resize",this.delayedScroll),this.scrollElement!==window&&window.removeEventListener("scroll",this.delayedScroll))}},{key:"onChangeScroll",value:function(){this.useIntersectionObserver||this.setState({scrollPosition:{x:$(),y:ve()}})}},{key:"render",value:function(){var ue=this.props,oe=(ue.delayMethod,ue.delayTime,function(Ie,Xe){if(Ie==null)return{};var Ke,Ue,Et=function(At,Gn){if(At==null)return{};var Qi,Ar,gs={},Wa=Object.keys(At);for(Ar=0;Ar<Wa.length;Ar++)Qi=Wa[Ar],Gn.indexOf(Qi)>=0||(gs[Qi]=At[Qi]);return gs}(Ie,Xe);if(Object.getOwnPropertySymbols){var st=Object.getOwnPropertySymbols(Ie);for(Ue=0;Ue<st.length;Ue++)Ke=st[Ue],Xe.indexOf(Ke)>=0||Object.prototype.propertyIsEnumerable.call(Ie,Ke)&&(Et[Ke]=Ie[Ke])}return Et}(ue,ee)),se=this.useIntersectionObserver?null:this.state.scrollPosition;return a().createElement(Y,Me({forwardRef:this.baseComponentRef,scrollPosition:se},oe))}}])&&pe(K.prototype,be),Object.defineProperty(K,"prototype",{writable:!1}),H}(a().Component);return k.propTypes={delayMethod:l.PropTypes.oneOf(["debounce","throttle"]),delayTime:l.PropTypes.number,useIntersectionObserver:l.PropTypes.bool},k.defaultProps={delayMethod:"throttle",delayTime:300,useIntersectionObserver:!0},k};function Qe(Y){return Qe=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(k){return typeof k}:function(k){return k&&typeof Symbol=="function"&&k.constructor===Symbol&&k!==Symbol.prototype?"symbol":typeof k},Qe(Y)}function $e(Y,k){for(var X=0;X<k.length;X++){var K=k[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Y,(be=function(Ae,je){if(Qe(Ae)!=="object"||Ae===null)return Ae;var j=Ae[Symbol.toPrimitive];if(j!==void 0){var H=j.call(Ae,"string");if(Qe(H)!=="object")return H;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Ae)}(K.key),Qe(be)==="symbol"?be:String(be)),K)}var be}function N(Y,k){return N=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},N(Y,k)}function G(Y){return G=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(k){return k.__proto__||Object.getPrototypeOf(k)},G(Y)}var de=function(Y){(function(j,H){if(typeof H!="function"&&H!==null)throw new TypeError("Super expression must either be null or a function");j.prototype=Object.create(H&&H.prototype,{constructor:{value:j,writable:!0,configurable:!0}}),Object.defineProperty(j,"prototype",{writable:!1}),H&&N(j,H)})(je,Y);var k,X,K,be,Ae=(K=je,be=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}(),function(){var j,H=G(K);if(be){var ue=G(this).constructor;j=Reflect.construct(H,arguments,ue)}else j=H.apply(this,arguments);return function(oe,se){if(se&&(Qe(se)==="object"||typeof se=="function"))return se;if(se!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Ie){if(Ie===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Ie}(oe)}(this,j)});function je(j){return function(H,ue){if(!(H instanceof ue))throw new TypeError("Cannot call a class as a function")}(this,je),Ae.call(this,j)}return k=je,(X=[{key:"render",value:function(){return a().createElement(L,this.props)}}])&&$e(k.prototype,X),Object.defineProperty(k,"prototype",{writable:!1}),je}(a().Component);let ye=it(de);function ge(Y){return ge=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(k){return typeof k}:function(k){return k&&typeof Symbol=="function"&&k.constructor===Symbol&&k!==Symbol.prototype?"symbol":typeof k},ge(Y)}function Ve(Y,k){for(var X=0;X<k.length;X++){var K=k[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Y,(be=function(Ae,je){if(ge(Ae)!=="object"||Ae===null)return Ae;var j=Ae[Symbol.toPrimitive];if(j!==void 0){var H=j.call(Ae,"string");if(ge(H)!=="object")return H;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Ae)}(K.key),ge(be)==="symbol"?be:String(be)),K)}var be}function ze(Y,k){return ze=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},ze(Y,k)}function Pe(Y){if(Y===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Y}function ne(Y){return ne=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(k){return k.__proto__||Object.getPrototypeOf(k)},ne(Y)}var he=function(Y){(function(j,H){if(typeof H!="function"&&H!==null)throw new TypeError("Super expression must either be null or a function");j.prototype=Object.create(H&&H.prototype,{constructor:{value:j,writable:!0,configurable:!0}}),Object.defineProperty(j,"prototype",{writable:!1}),H&&ze(j,H)})(je,Y);var k,X,K,be,Ae=(K=je,be=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}(),function(){var j,H=ne(K);if(be){var ue=ne(this).constructor;j=Reflect.construct(H,arguments,ue)}else j=H.apply(this,arguments);return function(oe,se){if(se&&(ge(se)==="object"||typeof se=="function"))return se;if(se!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Pe(oe)}(this,j)});function je(j){var H;(function(Xe,Ke){if(!(Xe instanceof Ke))throw new TypeError("Cannot call a class as a function")})(this,je),H=Ae.call(this,j);var ue=j.afterLoad,oe=j.beforeLoad,se=j.scrollPosition,Ie=j.visibleByDefault;return H.state={visible:Ie},Ie&&(oe(),ue()),H.onVisible=H.onVisible.bind(Pe(H)),H.isScrollTracked=!!(se&&Number.isFinite(se.x)&&se.x>=0&&Number.isFinite(se.y)&&se.y>=0),H}return k=je,(X=[{key:"componentDidUpdate",value:function(j,H){H.visible!==this.state.visible&&this.props.afterLoad()}},{key:"onVisible",value:function(){this.props.beforeLoad(),this.setState({visible:!0})}},{key:"render",value:function(){if(this.state.visible)return this.props.children;var j=this.props,H=j.className,ue=j.delayMethod,oe=j.delayTime,se=j.height,Ie=j.placeholder,Xe=j.scrollPosition,Ke=j.style,Ue=j.threshold,Et=j.useIntersectionObserver,st=j.width;return this.isScrollTracked||Et&&m()?a().createElement(L,{className:H,height:se,onVisible:this.onVisible,placeholder:Ie,scrollPosition:Xe,style:Ke,threshold:Ue,useIntersectionObserver:Et,width:st}):a().createElement(ye,{className:H,delayMethod:ue,delayTime:oe,height:se,onVisible:this.onVisible,placeholder:Ie,style:Ke,threshold:Ue,width:st})}}])&&Ve(k.prototype,X),Object.defineProperty(k,"prototype",{writable:!1}),je}(a().Component);he.propTypes={afterLoad:l.PropTypes.func,beforeLoad:l.PropTypes.func,useIntersectionObserver:l.PropTypes.bool,visibleByDefault:l.PropTypes.bool},he.defaultProps={afterLoad:function(){return{}},beforeLoad:function(){return{}},useIntersectionObserver:!0,visibleByDefault:!1};let Oe=he;function ot(Y){return ot=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(k){return typeof k}:function(k){return k&&typeof Symbol=="function"&&k.constructor===Symbol&&k!==Symbol.prototype?"symbol":typeof k},ot(Y)}var Ri=["afterLoad","beforeLoad","delayMethod","delayTime","effect","placeholder","placeholderSrc","scrollPosition","threshold","useIntersectionObserver","visibleByDefault","wrapperClassName","wrapperProps"];function Dt(Y,k){var X=Object.keys(Y);if(Object.getOwnPropertySymbols){var K=Object.getOwnPropertySymbols(Y);k&&(K=K.filter(function(be){return Object.getOwnPropertyDescriptor(Y,be).enumerable})),X.push.apply(X,K)}return X}function Wt(Y){for(var k=1;k<arguments.length;k++){var X=arguments[k]!=null?arguments[k]:{};k%2?Dt(Object(X),!0).forEach(function(K){ps(Y,K,X[K])}):Object.getOwnPropertyDescriptors?Object.defineProperties(Y,Object.getOwnPropertyDescriptors(X)):Dt(Object(X)).forEach(function(K){Object.defineProperty(Y,K,Object.getOwnPropertyDescriptor(X,K))})}return Y}function ps(Y,k,X){return(k=Ua(k))in Y?Object.defineProperty(Y,k,{value:X,enumerable:!0,configurable:!0,writable:!0}):Y[k]=X,Y}function Ti(){return Ti=Object.assign?Object.assign.bind():function(Y){for(var k=1;k<arguments.length;k++){var X=arguments[k];for(var K in X)Object.prototype.hasOwnProperty.call(X,K)&&(Y[K]=X[K])}return Y},Ti.apply(this,arguments)}function Xc(Y,k){for(var X=0;X<k.length;X++){var K=k[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Y,Ua(K.key),K)}}function Ua(Y){var k=function(X,K){if(ot(X)!=="object"||X===null)return X;var be=X[Symbol.toPrimitive];if(be!==void 0){var Ae=be.call(X,"string");if(ot(Ae)!=="object")return Ae;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(X)}(Y);return ot(k)==="symbol"?k:String(k)}function fs(Y,k){return fs=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},fs(Y,k)}function ln(Y){return ln=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(k){return k.__proto__||Object.getPrototypeOf(k)},ln(Y)}var ms=function(Y){(function(j,H){if(typeof H!="function"&&H!==null)throw new TypeError("Super expression must either be null or a function");j.prototype=Object.create(H&&H.prototype,{constructor:{value:j,writable:!0,configurable:!0}}),Object.defineProperty(j,"prototype",{writable:!1}),H&&fs(j,H)})(je,Y);var k,X,K,be,Ae=(K=je,be=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}(),function(){var j,H=ln(K);if(be){var ue=ln(this).constructor;j=Reflect.construct(H,arguments,ue)}else j=H.apply(this,arguments);return function(oe,se){if(se&&(ot(se)==="object"||typeof se=="function"))return se;if(se!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Ie){if(Ie===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Ie}(oe)}(this,j)});function je(j){var H;return function(ue,oe){if(!(ue instanceof oe))throw new TypeError("Cannot call a class as a function")}(this,je),(H=Ae.call(this,j)).state={loaded:!1},H}return k=je,(X=[{key:"onImageLoad",value:function(){var j=this;return this.state.loaded?null:function(H){j.props.onLoad(H),j.props.afterLoad(),j.setState({loaded:!0})}}},{key:"getImg",value:function(){var j=this.props,H=(j.afterLoad,j.beforeLoad,j.delayMethod,j.delayTime,j.effect,j.placeholder,j.placeholderSrc,j.scrollPosition,j.threshold,j.useIntersectionObserver,j.visibleByDefault,j.wrapperClassName,j.wrapperProps,function(ue,oe){if(ue==null)return{};var se,Ie,Xe=function(Ue,Et){if(Ue==null)return{};var st,At,Gn={},Qi=Object.keys(Ue);for(At=0;At<Qi.length;At++)st=Qi[At],Et.indexOf(st)>=0||(Gn[st]=Ue[st]);return Gn}(ue,oe);if(Object.getOwnPropertySymbols){var Ke=Object.getOwnPropertySymbols(ue);for(Ie=0;Ie<Ke.length;Ie++)se=Ke[Ie],oe.indexOf(se)>=0||Object.prototype.propertyIsEnumerable.call(ue,se)&&(Xe[se]=ue[se])}return Xe}(j,Ri));return a().createElement("img",Ti({},H,{onLoad:this.onImageLoad()}))}},{key:"getLazyLoadImage",value:function(){var j=this.props,H=j.beforeLoad,ue=j.className,oe=j.delayMethod,se=j.delayTime,Ie=j.height,Xe=j.placeholder,Ke=j.scrollPosition,Ue=j.style,Et=j.threshold,st=j.useIntersectionObserver,At=j.visibleByDefault,Gn=j.width;return a().createElement(Oe,{beforeLoad:H,className:ue,delayMethod:oe,delayTime:se,height:Ie,placeholder:Xe,scrollPosition:Ke,style:Ue,threshold:Et,useIntersectionObserver:st,visibleByDefault:At,width:Gn},this.getImg())}},{key:"getWrappedLazyLoadImage",value:function(j){var H=this.props,ue=H.effect,oe=H.height,se=H.placeholderSrc,Ie=H.width,Xe=H.wrapperClassName,Ke=H.wrapperProps,Ue=this.state.loaded,Et=Ue?" lazy-load-image-loaded":"",st=Ue||!se?{}:{backgroundImage:"url(".concat(se,")"),backgroundSize:"100% 100%"};return a().createElement("span",Ti({className:Xe+" lazy-load-image-background "+ue+Et,style:Wt(Wt({},st),{},{color:"transparent",display:"inline-block",height:oe,width:Ie})},Ke),j)}},{key:"render",value:function(){var j=this.props,H=j.effect,ue=j.placeholderSrc,oe=j.visibleByDefault,se=j.wrapperClassName,Ie=j.wrapperProps,Xe=this.getLazyLoadImage();return(H||ue)&&!oe||se||Ie?this.getWrappedLazyLoadImage(Xe):Xe}}])&&Xc(k.prototype,X),Object.defineProperty(k,"prototype",{writable:!1}),je}(a().Component);ms.propTypes={onLoad:l.PropTypes.func,afterLoad:l.PropTypes.func,beforeLoad:l.PropTypes.func,delayMethod:l.PropTypes.string,delayTime:l.PropTypes.number,effect:l.PropTypes.string,placeholderSrc:l.PropTypes.string,threshold:l.PropTypes.number,useIntersectionObserver:l.PropTypes.bool,visibleByDefault:l.PropTypes.bool,wrapperClassName:l.PropTypes.string,wrapperProps:l.PropTypes.object},ms.defaultProps={onLoad:function(){},afterLoad:function(){return{}},beforeLoad:function(){return{}},delayMethod:"throttle",delayTime:300,effect:"",placeholderSrc:null,threshold:100,useIntersectionObserver:!0,visibleByDefault:!1,wrapperClassName:""};let Kc=ms})(),t1.exports=n})()});var ZR={};Db(ZR,{AnnotationContext:()=>jR,AnnotationPageContext:()=>VR,AnnotationStyleProvider:()=>uR,Auth:()=>kf,AuthProvider:()=>_f,AuthRContext:()=>to,AuthReactContext:()=>OS,AuthReactContextActions:()=>LS,CanvasAnnotations:()=>KI,CanvasContext:()=>Vi,CanvasPanel:()=>Bt,CanvasStrategyProvider:()=>cm,CanvasWorldObject:()=>dm,CollectionContext:()=>UR,CombinedMetadata:()=>ZI,ComplexTimelineProvider:()=>gm,ContextBridge:()=>Bf,ControlsReactContext:()=>_a,CreateCustomShape:()=>Hm,CustomContextBridge:()=>qS,CustomContextBridgeProvider:()=>pI,EventsProvider:()=>hI,Image:()=>Jw,ImageService:()=>BR,ImageServiceLoaderContext:()=>jw,InnerViewerProvider:()=>jS,LanguageProvider:()=>VI,LanguageString:()=>Mw,LocaleString:()=>Ii,ManifestContext:()=>xf,ManifestMetadata:()=>eR,MediaPlayerProvider:()=>Oa,Metadata:()=>Da,PolygonSelector:()=>NR,RangeContext:()=>Sf,ReactEventContext:()=>io,ReactVaultContext:()=>mr,Render3DModelStrategy:()=>bm,RenderAccompanyingCanvas:()=>Im,RenderAnnotationStrategy:()=>Cm,RenderAudioStrategy:()=>Am,RenderComplexTimelineStrategy:()=>ym,RenderEmptyStrategy:()=>hm,RenderImageStrategy:()=>Sm,RenderSvgEditorControls:()=>oR,RenderTextualContentStrategy:()=>vm,RenderVideoStrategy:()=>Tm,RenderYouTubeStrategy:()=>_m,ResourceProvider:()=>ei,ResourceReactContext:()=>Js,SelectorControllerProvider:()=>sR,SequenceThumbnails:()=>nR,SimpleViewerProvider:()=>Lf,SimpleViewerReactContext:()=>ts,SingleCanvasThumbnail:()=>Om,StrategyReactContext:()=>Ta,ThumbnailFallbackImage:()=>ho,TranslationProvider:()=>jI,TransliterationProvider:()=>UI,VaultProvider:()=>Kr,ViewerPresetContext:()=>Ui,VirtualAnnotationProvider:()=>Uf,VisibleCanvasReactContext:()=>Jr,authDetailsForResource:()=>If,createAuthStateStore:()=>Ef,createProbe:()=>Af,defaultEmitter:()=>US,emptyActions:()=>Jf,emptyStrategy:()=>em,expandTarget:()=>Nt,findAllCanvasesInRange:()=>oc,findFirstCanvasFromRange:()=>mS,findManifestSelectedRange:()=>NA,findSelectedRange:()=>wf,flattenAnnotationPageIds:()=>tm,formatTime:()=>Pc,get3dStrategy:()=>rm,getComplexTimelineStrategy:()=>om,getDefaultAnnotationStyles:()=>Fm,getImageStrategy:()=>Aa,getManifestSequence:()=>sc,getParsedTargetSelector:()=>wa,getRenderingStrategy:()=>am,getTextualContentStrategy:()=>Ia,getVideoStrategy:()=>Ra,getVisibleCanvasesFromCanvasId:()=>BA,hasAuth:()=>oI,isImageApiSelector:()=>mc,makeAccessServiceRequest:()=>Pf,makeAccessTokenRequest:()=>lc,parseRotation:()=>gc,parseSelector:()=>Wn,parseSpecificResource:()=>kI,svgThemes:()=>v1,unknownResponse:()=>ba,unsupportedStrategy:()=>et,useAnnotation:()=>xa,useAnnotationPage:()=>Gf,useAnnotationPageManager:()=>Pa,useAnnotationStyles:()=>Bm,useAnnotationsAtTime:()=>WR,useAuthActions:()=>zS,useAuthService:()=>FS,useAuthStore:()=>Jo,useAuthToken:()=>aI,useAuthTokens:()=>Rf,useCanvas:()=>Ce,useCanvasChoices:()=>HR,useCanvasClock:()=>qR,useCanvasSequence:()=>bf,useCanvasStartTime:()=>La,useCanvasSubset:()=>QR,useClosestLanguage:()=>Ow,useCollection:()=>$R,useComplexTimeline:()=>qI,useContextBridge:()=>Nf,useCreateLocaleString:()=>WI,useCurrentAuth:()=>sI,useCustomContextBridge:()=>Ff,useDispatch:()=>Df,useEventEmitter:()=>pa,useEventListener:()=>GR,useExistingVault:()=>Zr,useExternalCollection:()=>YR,useExternalManifest:()=>vf,useExternalResource:()=>aa,useIIIFLanguage:()=>Ec,useImage:()=>Bc,useImageService:()=>Qm,useImageServiceLoader:()=>ka,useImageTile:()=>XR,useIsAuthEnabled:()=>Mf,useLoadImageService:()=>Ea,useLocaleString:()=>Lw,useManifest:()=>vt,useMediaActions:()=>$I,useMediaElements:()=>GI,useMediaState:()=>QI,usePaintables:()=>nm,usePaintingAnnotations:()=>oo,usePolygonHelper:()=>Um,useRange:()=>la,useRenderControls:()=>ni,useRenderingStrategy:()=>lm,useResourceContext:()=>Xt,useResourceEvents:()=>ga,useResources:()=>im,useSearchService:()=>Of,useSelectorController:()=>zm,useSelectorEmitter:()=>aR,useSelectorEvents:()=>Lm,useSelectorHelper:()=>lR,useSimpleMediaPlayer:()=>ao,useSimpleViewer:()=>ha,useStrategy:()=>pt,useStyleHelper:()=>KR,useStyles:()=>ro,useSvgEditor:()=>Wm,useThumbnail:()=>Qn,useTranslations:()=>fm,useTransliteration:()=>pm,useVault:()=>_e,useVaultEffect:()=>xm,useVaultSelector:()=>De,useViewerPreset:()=>fa,useVirtualAnnotationPage:()=>jf,useVirtualAnnotationPageContext:()=>Vf,useVisibleCanvases:()=>eo});var Na=R(q(),1);var ii=R(q(),1);var or=(e,t,i)=>{let n=e.length,r=i||re(n);for(let a=0;a<n;a++)r[a]=a%5===0?e[a+1]<t[3]&&e[a+3]>t[1]&&e[a+2]<t[4]&&e[a+4]>t[2]?1:0:e[a];return r};function re(e,t,i){return new Float32Array(e,t,i)}var ky=(e,t,i)=>{let n=e[1]<=t[3]&&e[3]>=t[1]&&e[2]<=t[4]&&e[4]>=t[2],r=i||re(5);return n?(r[0]=1,r[1]=Math.max(e[1],t[1]),r[2]=Math.max(e[2],t[2]),r[3]=Math.min(e[3],t[3]),r[4]=Math.min(e[4],t[4]),r):(r[0]=0,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r)},Oy=e=>e.length/5;var pi=(e,t,i)=>{let n=i||re(9);return n[0]=e[0]*t[0]+e[1]*t[3]+e[2]*t[6],n[1]=e[0]*t[1]+e[1]*t[4]+e[2]*t[7],n[2]=e[0]*t[2]+e[1]*t[5]+e[2]*t[8],n[3]=e[3]*t[0]+e[4]*t[3]+e[5]*t[6],n[4]=e[3]*t[1]+e[4]*t[4]+e[5]*t[7],n[5]=e[3]*t[2]+e[4]*t[5]+e[5]*t[8],n[6]=e[6]*t[0]+e[7]*t[3]+e[8]*t[6],n[7]=e[6]*t[1]+e[7]*t[4]+e[8]*t[7],n[8]=e[6]*t[2]+e[7]*t[5]+e[8]*t[8],n},xe=class e{constructor(t){this.index=0,this.length=t,this.points=re(this.length)}static grid(t=1,i=1){return new e(5*t*i)}static point(t,i){let n=re(5);return n[0]=1,n[1]=t,n[2]=i,n[3]=t,n[4]=i,n}static positionPair(t){let i=re(5);return i[0]=1,i[1]=t.x1,i[2]=t.y1,i[3]=t.x2,i[4]=t.y2,i}static projection(t){return e.singleBox(t.width,t.height,t.x,t.y)}static singleBox(t,i,n=0,r=0){let a=re(5);return a[0]=1,a[1]=n,a[2]=r,a[3]=t+n,a[4]=i+r,a}row(t){return t(this)}addPoints(t,i,n,r){return this.points[this.index]=1,this.points[1+this.index]=t,this.points[2+this.index]=i,this.points[3+this.index]=n,this.points[4+this.index]=r,this.index+=5,this}addBox(t,i,n,r){return this.addPoints(t,i,t+n,i+r),this}build(){return this.points}};var Zt=(e,t)=>{let i=e.length;for(let n=0;n<i;n++)e[n]=n%5===0?t[6]*e[n+1]+t[7]*e[n+2]+t[8]*e[n]:n%5%2===1?t[0]*e[n]+t[1]*e[n+1]+t[2]:t[3]*e[n-1]+t[4]*e[n]+t[5];return e},wi=e=>{let t=re(9);return t[0]=e,t[4]=e,t[8]=1,t},ut=(e,t)=>{let i=re(9);return i[0]=1,i[2]=e,i[4]=1,i[5]=t,i[8]=1,i},On=(e,t,i)=>pi(ut((1-e)*t,(1-e)*i),wi(e)),bi=(e,t,i)=>{let n=e.length,r=i&&i.length>=n?i.slice(0,n):re(n);for(let a=0;a<n;a++)r[a]=a%5===0?t[6]*e[a+1]+t[7]*e[a+2]+t[8]*e[a]:a%5%2===1?t[0]*e[a]+t[1]*e[a+1]+t[2]:t[3]*e[a-1]+t[4]*e[a]+t[5];return r};var Fs=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,Vb=typeof AbortController=="function",Nl=Vb?AbortController:class{constructor(){this.signal=new Ly}abort(t=new Error("This operation was aborted")){this.signal.reason=this.signal.reason||t,this.signal.aborted=!0,this.signal.dispatchEvent({type:"abort",target:this.signal})}},Ub=typeof AbortSignal=="function",Wb=typeof Nl.AbortSignal=="function",Ly=Ub?AbortSignal:Wb?Nl.AbortController:class{constructor(){this.reason=void 0,this.aborted=!1,this._listeners=[]}dispatchEvent(t){t.type==="abort"&&(this.aborted=!0,this.onabort(t),this._listeners.forEach(i=>i(t),this))}onabort(){}addEventListener(t,i){t==="abort"&&this._listeners.push(i)}removeEventListener(t,i){t==="abort"&&(this._listeners=this._listeners.filter(n=>n!==i))}},fh=new Set,dh=(e,t)=>{let i=`LRU_CACHE_OPTION_${e}`;Bl(i)&&mh(i,`${e} option`,`options.${t}`,_o)},hh=(e,t)=>{let i=`LRU_CACHE_METHOD_${e}`;if(Bl(i)){let{prototype:n}=_o,{get:r}=Object.getOwnPropertyDescriptor(n,e);mh(i,`${e} method`,`cache.${t}()`,r)}},Hb=(e,t)=>{let i=`LRU_CACHE_PROPERTY_${e}`;if(Bl(i)){let{prototype:n}=_o,{get:r}=Object.getOwnPropertyDescriptor(n,e);mh(i,`${e} property`,`cache.${t}`,r)}},zy=(...e)=>{typeof process=="object"&&process&&typeof process.emitWarning=="function"?process.emitWarning(...e):console.error(...e)},Bl=e=>!fh.has(e),mh=(e,t,i,n)=>{fh.add(e);let r=`The ${t} is deprecated. Please use ${i} instead.`;zy(r,"DeprecationWarning",e,n)},sr=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e),Fy=e=>sr(e)?e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?To:null:null,To=class extends Array{constructor(t){super(t),this.fill(0)}},ph=class{constructor(t){if(t===0)return[];let i=Fy(t);this.heap=new i(t),this.length=0}push(t){this.heap[this.length++]=t}pop(){return this.heap[--this.length]}},_o=class e{constructor(t={}){let{max:i=0,ttl:n,ttlResolution:r=1,ttlAutopurge:a,updateAgeOnGet:l,updateAgeOnHas:c,allowStale:p,dispose:m,disposeAfter:h,noDisposeOnSet:y,noUpdateTTL:S,maxSize:w=0,maxEntrySize:v=0,sizeCalculation:x,fetchMethod:A,fetchContext:C,noDeleteOnFetchRejection:I,noDeleteOnStaleGet:E,allowStaleOnFetchRejection:L,allowStaleOnFetchAbort:z,ignoreFetchAbort:M}=t,{length:Q,maxAge:V,stale:J}=t instanceof e?{}:t;if(i!==0&&!sr(i))throw new TypeError("max option must be a nonnegative integer");let U=i?Fy(i):Array;if(!U)throw new Error("invalid max value: "+i);if(this.max=i,this.maxSize=w,this.maxEntrySize=v||this.maxSize,this.sizeCalculation=x||Q,this.sizeCalculation){if(!this.maxSize&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(this.fetchMethod=A||null,this.fetchMethod&&typeof this.fetchMethod!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.fetchContext=C,!this.fetchMethod&&C!==void 0)throw new TypeError("cannot set fetchContext without fetchMethod");if(this.keyMap=new Map,this.keyList=new Array(i).fill(null),this.valList=new Array(i).fill(null),this.next=new U(i),this.prev=new U(i),this.head=0,this.tail=0,this.free=new ph(i),this.initialFill=1,this.size=0,typeof m=="function"&&(this.dispose=m),typeof h=="function"?(this.disposeAfter=h,this.disposed=[]):(this.disposeAfter=null,this.disposed=null),this.noDisposeOnSet=!!y,this.noUpdateTTL=!!S,this.noDeleteOnFetchRejection=!!I,this.allowStaleOnFetchRejection=!!L,this.allowStaleOnFetchAbort=!!z,this.ignoreFetchAbort=!!M,this.maxEntrySize!==0){if(this.maxSize!==0&&!sr(this.maxSize))throw new TypeError("maxSize must be a positive integer if specified");if(!sr(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.initializeSizeTracking()}if(this.allowStale=!!p||!!J,this.noDeleteOnStaleGet=!!E,this.updateAgeOnGet=!!l,this.updateAgeOnHas=!!c,this.ttlResolution=sr(r)||r===0?r:1,this.ttlAutopurge=!!a,this.ttl=n||V||0,this.ttl){if(!sr(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.initializeTTLTracking()}if(this.max===0&&this.ttl===0&&this.maxSize===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.max&&!this.maxSize){let W="LRU_CACHE_UNBOUNDED";Bl(W)&&(fh.add(W),zy("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",W,e))}J&&dh("stale","allowStale"),V&&dh("maxAge","ttl"),Q&&dh("length","sizeCalculation")}getRemainingTTL(t){return this.has(t,{updateAgeOnHas:!1})?1/0:0}initializeTTLTracking(){this.ttls=new To(this.max),this.starts=new To(this.max),this.setItemTTL=(n,r,a=Fs.now())=>{if(this.starts[n]=r!==0?a:0,this.ttls[n]=r,r!==0&&this.ttlAutopurge){let l=setTimeout(()=>{this.isStale(n)&&this.delete(this.keyList[n])},r+1);l.unref&&l.unref()}},this.updateItemAge=n=>{this.starts[n]=this.ttls[n]!==0?Fs.now():0},this.statusTTL=(n,r)=>{n&&(n.ttl=this.ttls[r],n.start=this.starts[r],n.now=t||i(),n.remainingTTL=n.now+n.ttl-n.start)};let t=0,i=()=>{let n=Fs.now();if(this.ttlResolution>0){t=n;let r=setTimeout(()=>t=0,this.ttlResolution);r.unref&&r.unref()}return n};this.getRemainingTTL=n=>{let r=this.keyMap.get(n);return r===void 0?0:this.ttls[r]===0||this.starts[r]===0?1/0:this.starts[r]+this.ttls[r]-(t||i())},this.isStale=n=>this.ttls[n]!==0&&this.starts[n]!==0&&(t||i())-this.starts[n]>this.ttls[n]}updateItemAge(t){}statusTTL(t,i){}setItemTTL(t,i,n){}isStale(t){return!1}initializeSizeTracking(){this.calculatedSize=0,this.sizes=new To(this.max),this.removeItemSize=t=>{this.calculatedSize-=this.sizes[t],this.sizes[t]=0},this.requireSize=(t,i,n,r)=>{if(this.isBackgroundFetch(i))return 0;if(!sr(n))if(r){if(typeof r!="function")throw new TypeError("sizeCalculation must be a function");if(n=r(i,t),!sr(n))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return n},this.addItemSize=(t,i,n)=>{if(this.sizes[t]=i,this.maxSize){let r=this.maxSize-this.sizes[t];for(;this.calculatedSize>r;)this.evict(!0)}this.calculatedSize+=this.sizes[t],n&&(n.entrySize=i,n.totalCalculatedSize=this.calculatedSize)}}removeItemSize(t){}addItemSize(t,i){}requireSize(t,i,n,r){if(n||r)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache")}*indexes({allowStale:t=this.allowStale}={}){if(this.size)for(let i=this.tail;!(!this.isValidIndex(i)||((t||!this.isStale(i))&&(yield i),i===this.head));)i=this.prev[i]}*rindexes({allowStale:t=this.allowStale}={}){if(this.size)for(let i=this.head;!(!this.isValidIndex(i)||((t||!this.isStale(i))&&(yield i),i===this.tail));)i=this.next[i]}isValidIndex(t){return t!==void 0&&this.keyMap.get(this.keyList[t])===t}*entries(){for(let t of this.indexes())this.valList[t]!==void 0&&this.keyList[t]!==void 0&&!this.isBackgroundFetch(this.valList[t])&&(yield[this.keyList[t],this.valList[t]])}*rentries(){for(let t of this.rindexes())this.valList[t]!==void 0&&this.keyList[t]!==void 0&&!this.isBackgroundFetch(this.valList[t])&&(yield[this.keyList[t],this.valList[t]])}*keys(){for(let t of this.indexes())this.keyList[t]!==void 0&&!this.isBackgroundFetch(this.valList[t])&&(yield this.keyList[t])}*rkeys(){for(let t of this.rindexes())this.keyList[t]!==void 0&&!this.isBackgroundFetch(this.valList[t])&&(yield this.keyList[t])}*values(){for(let t of this.indexes())this.valList[t]!==void 0&&!this.isBackgroundFetch(this.valList[t])&&(yield this.valList[t])}*rvalues(){for(let t of this.rindexes())this.valList[t]!==void 0&&!this.isBackgroundFetch(this.valList[t])&&(yield this.valList[t])}[Symbol.iterator](){return this.entries()}find(t,i){for(let n of this.indexes()){let r=this.valList[n],a=this.isBackgroundFetch(r)?r.__staleWhileFetching:r;if(a!==void 0&&t(a,this.keyList[n],this))return this.get(this.keyList[n],i)}}forEach(t,i=this){for(let n of this.indexes()){let r=this.valList[n],a=this.isBackgroundFetch(r)?r.__staleWhileFetching:r;a!==void 0&&t.call(i,a,this.keyList[n],this)}}rforEach(t,i=this){for(let n of this.rindexes()){let r=this.valList[n],a=this.isBackgroundFetch(r)?r.__staleWhileFetching:r;a!==void 0&&t.call(i,a,this.keyList[n],this)}}get prune(){return hh("prune","purgeStale"),this.purgeStale}purgeStale(){let t=!1;for(let i of this.rindexes({allowStale:!0}))this.isStale(i)&&(this.delete(this.keyList[i]),t=!0);return t}dump(){let t=[];for(let i of this.indexes({allowStale:!0})){let n=this.keyList[i],r=this.valList[i],a=this.isBackgroundFetch(r)?r.__staleWhileFetching:r;if(a===void 0)continue;let l={value:a};if(this.ttls){l.ttl=this.ttls[i];let c=Fs.now()-this.starts[i];l.start=Math.floor(Date.now()-c)}this.sizes&&(l.size=this.sizes[i]),t.unshift([n,l])}return t}load(t){this.clear();for(let[i,n]of t){if(n.start){let r=Date.now()-n.start;n.start=Fs.now()-r}this.set(i,n.value,n)}}dispose(t,i,n){}set(t,i,{ttl:n=this.ttl,start:r,noDisposeOnSet:a=this.noDisposeOnSet,size:l=0,sizeCalculation:c=this.sizeCalculation,noUpdateTTL:p=this.noUpdateTTL,status:m}={}){if(l=this.requireSize(t,i,l,c),this.maxEntrySize&&l>this.maxEntrySize)return m&&(m.set="miss",m.maxEntrySizeExceeded=!0),this.delete(t),this;let h=this.size===0?void 0:this.keyMap.get(t);if(h===void 0)h=this.newIndex(),this.keyList[h]=t,this.valList[h]=i,this.keyMap.set(t,h),this.next[this.tail]=h,this.prev[h]=this.tail,this.tail=h,this.size++,this.addItemSize(h,l,m),m&&(m.set="add"),p=!1;else{this.moveToTail(h);let y=this.valList[h];if(i!==y){if(this.isBackgroundFetch(y)?y.__abortController.abort(new Error("replaced")):a||(this.dispose(y,t,"set"),this.disposeAfter&&this.disposed.push([y,t,"set"])),this.removeItemSize(h),this.valList[h]=i,this.addItemSize(h,l,m),m){m.set="replace";let S=y&&this.isBackgroundFetch(y)?y.__staleWhileFetching:y;S!==void 0&&(m.oldValue=S)}}else m&&(m.set="update")}if(n!==0&&this.ttl===0&&!this.ttls&&this.initializeTTLTracking(),p||this.setItemTTL(h,n,r),this.statusTTL(m,h),this.disposeAfter)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return this}newIndex(){return this.size===0?this.tail:this.size===this.max&&this.max!==0?this.evict(!1):this.free.length!==0?this.free.pop():this.initialFill++}pop(){if(this.size){let t=this.valList[this.head];return this.evict(!0),t}}evict(t){let i=this.head,n=this.keyList[i],r=this.valList[i];return this.isBackgroundFetch(r)?r.__abortController.abort(new Error("evicted")):(this.dispose(r,n,"evict"),this.disposeAfter&&this.disposed.push([r,n,"evict"])),this.removeItemSize(i),t&&(this.keyList[i]=null,this.valList[i]=null,this.free.push(i)),this.head=this.next[i],this.keyMap.delete(n),this.size--,i}has(t,{updateAgeOnHas:i=this.updateAgeOnHas,status:n}={}){let r=this.keyMap.get(t);if(r!==void 0)if(this.isStale(r))n&&(n.has="stale",this.statusTTL(n,r));else return i&&this.updateItemAge(r),n&&(n.has="hit"),this.statusTTL(n,r),!0;else n&&(n.has="miss");return!1}peek(t,{allowStale:i=this.allowStale}={}){let n=this.keyMap.get(t);if(n!==void 0&&(i||!this.isStale(n))){let r=this.valList[n];return this.isBackgroundFetch(r)?r.__staleWhileFetching:r}}backgroundFetch(t,i,n,r){let a=i===void 0?void 0:this.valList[i];if(this.isBackgroundFetch(a))return a;let l=new Nl;n.signal&&n.signal.addEventListener("abort",()=>l.abort(n.signal.reason));let c={signal:l.signal,options:n,context:r},p=(w,v=!1)=>{let{aborted:x}=l.signal,A=n.ignoreFetchAbort&&w!==void 0;return n.status&&(x&&!v?(n.status.fetchAborted=!0,n.status.fetchError=l.signal.reason,A&&(n.status.fetchAbortIgnored=!0)):n.status.fetchResolved=!0),x&&!A&&!v?h(l.signal.reason):(this.valList[i]===S&&(w===void 0?S.__staleWhileFetching?this.valList[i]=S.__staleWhileFetching:this.delete(t):(n.status&&(n.status.fetchUpdated=!0),this.set(t,w,c.options))),w)},m=w=>(n.status&&(n.status.fetchRejected=!0,n.status.fetchError=w),h(w)),h=w=>{let{aborted:v}=l.signal,x=v&&n.allowStaleOnFetchAbort,A=x||n.allowStaleOnFetchRejection,C=A||n.noDeleteOnFetchRejection;if(this.valList[i]===S&&(!C||S.__staleWhileFetching===void 0?this.delete(t):x||(this.valList[i]=S.__staleWhileFetching)),A)return n.status&&S.__staleWhileFetching!==void 0&&(n.status.returnedStale=!0),S.__staleWhileFetching;if(S.__returned===S)throw w},y=(w,v)=>{this.fetchMethod(t,a,c).then(x=>w(x),v),l.signal.addEventListener("abort",()=>{(!n.ignoreFetchAbort||n.allowStaleOnFetchAbort)&&(w(),n.allowStaleOnFetchAbort&&(w=x=>p(x,!0)))})};n.status&&(n.status.fetchDispatched=!0);let S=new Promise(y).then(p,m);return S.__abortController=l,S.__staleWhileFetching=a,S.__returned=null,i===void 0?(this.set(t,S,{...c.options,status:void 0}),i=this.keyMap.get(t)):this.valList[i]=S,S}isBackgroundFetch(t){return t&&typeof t=="object"&&typeof t.then=="function"&&Object.prototype.hasOwnProperty.call(t,"__staleWhileFetching")&&Object.prototype.hasOwnProperty.call(t,"__returned")&&(t.__returned===t||t.__returned===null)}async fetch(t,{allowStale:i=this.allowStale,updateAgeOnGet:n=this.updateAgeOnGet,noDeleteOnStaleGet:r=this.noDeleteOnStaleGet,ttl:a=this.ttl,noDisposeOnSet:l=this.noDisposeOnSet,size:c=0,sizeCalculation:p=this.sizeCalculation,noUpdateTTL:m=this.noUpdateTTL,noDeleteOnFetchRejection:h=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:y=this.allowStaleOnFetchRejection,ignoreFetchAbort:S=this.ignoreFetchAbort,allowStaleOnFetchAbort:w=this.allowStaleOnFetchAbort,fetchContext:v=this.fetchContext,forceRefresh:x=!1,status:A,signal:C}={}){if(!this.fetchMethod)return A&&(A.fetch="get"),this.get(t,{allowStale:i,updateAgeOnGet:n,noDeleteOnStaleGet:r,status:A});let I={allowStale:i,updateAgeOnGet:n,noDeleteOnStaleGet:r,ttl:a,noDisposeOnSet:l,size:c,sizeCalculation:p,noUpdateTTL:m,noDeleteOnFetchRejection:h,allowStaleOnFetchRejection:y,allowStaleOnFetchAbort:w,ignoreFetchAbort:S,status:A,signal:C},E=this.keyMap.get(t);if(E===void 0){A&&(A.fetch="miss");let L=this.backgroundFetch(t,E,I,v);return L.__returned=L}else{let L=this.valList[E];if(this.isBackgroundFetch(L)){let J=i&&L.__staleWhileFetching!==void 0;return A&&(A.fetch="inflight",J&&(A.returnedStale=!0)),J?L.__staleWhileFetching:L.__returned=L}let z=this.isStale(E);if(!x&&!z)return A&&(A.fetch="hit"),this.moveToTail(E),n&&this.updateItemAge(E),this.statusTTL(A,E),L;let M=this.backgroundFetch(t,E,I,v),Q=M.__staleWhileFetching!==void 0,V=Q&&i;return A&&(A.fetch=Q&&z?"stale":"refresh",V&&z&&(A.returnedStale=!0)),V?M.__staleWhileFetching:M.__returned=M}}get(t,{allowStale:i=this.allowStale,updateAgeOnGet:n=this.updateAgeOnGet,noDeleteOnStaleGet:r=this.noDeleteOnStaleGet,status:a}={}){let l=this.keyMap.get(t);if(l!==void 0){let c=this.valList[l],p=this.isBackgroundFetch(c);return this.statusTTL(a,l),this.isStale(l)?(a&&(a.get="stale"),p?(a&&(a.returnedStale=i&&c.__staleWhileFetching!==void 0),i?c.__staleWhileFetching:void 0):(r||this.delete(t),a&&(a.returnedStale=i),i?c:void 0)):(a&&(a.get="hit"),p?c.__staleWhileFetching:(this.moveToTail(l),n&&this.updateItemAge(l),c))}else a&&(a.get="miss")}connect(t,i){this.prev[i]=t,this.next[t]=i}moveToTail(t){t!==this.tail&&(t===this.head?this.head=this.next[t]:this.connect(this.prev[t],this.next[t]),this.connect(this.tail,t),this.tail=t)}get del(){return hh("del","delete"),this.delete}delete(t){let i=!1;if(this.size!==0){let n=this.keyMap.get(t);if(n!==void 0)if(i=!0,this.size===1)this.clear();else{this.removeItemSize(n);let r=this.valList[n];this.isBackgroundFetch(r)?r.__abortController.abort(new Error("deleted")):(this.dispose(r,t,"delete"),this.disposeAfter&&this.disposed.push([r,t,"delete"])),this.keyMap.delete(t),this.keyList[n]=null,this.valList[n]=null,n===this.tail?this.tail=this.prev[n]:n===this.head?this.head=this.next[n]:(this.next[this.prev[n]]=this.next[n],this.prev[this.next[n]]=this.prev[n]),this.size--,this.free.push(n)}}if(this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return i}clear(){for(let t of this.rindexes({allowStale:!0})){let i=this.valList[t];if(this.isBackgroundFetch(i))i.__abortController.abort(new Error("deleted"));else{let n=this.keyList[t];this.dispose(i,n,"delete"),this.disposeAfter&&this.disposed.push([i,n,"delete"])}}if(this.keyMap.clear(),this.valList.fill(null),this.keyList.fill(null),this.ttls&&(this.ttls.fill(0),this.starts.fill(0)),this.sizes&&this.sizes.fill(0),this.head=0,this.tail=0,this.initialFill=1,this.free.length=0,this.calculatedSize=0,this.size=0,this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift())}get reset(){return hh("reset","clear"),this.clear}get length(){return Hb("length","size"),this.size}static get AbortController(){return Nl}static get AbortSignal(){return Ly}},Ny=_o;var Wx=R(rv(),1);var dt=R(q(),1),Au=R(q(),1),IP=R(B(),1);var Ci=R(q()),Eh=R(uv());function Hl(e){let{debounce:t,scroll:i,polyfill:n,offsetSize:r}=e===void 0?{debounce:0,scroll:!1,offsetSize:!1}:e,a=n||(typeof window>"u"?class{}:window.ResizeObserver);if(!a)throw new Error("This browser does not support ResizeObserver out of the box. See: https://github.com/react-spring/react-use-measure/#resize-observer-polyfills");let[l,c]=(0,Ci.useState)({left:0,top:0,width:0,height:0,bottom:0,right:0,x:0,y:0}),p=(0,Ci.useRef)({element:null,scrollContainers:null,resizeObserver:null,lastBounds:l}),m=t?typeof t=="number"?t:t.scroll:null,h=t?typeof t=="number"?t:t.resize:null,y=(0,Ci.useRef)(!1);(0,Ci.useEffect)(()=>(y.current=!0,()=>void(y.current=!1)));let[S,w,v]=(0,Ci.useMemo)(()=>{let I=()=>{if(!p.current.element)return;let{left:E,top:L,width:z,height:M,bottom:Q,right:V,x:J,y:U}=p.current.element.getBoundingClientRect(),W={left:E,top:L,width:z,height:M,bottom:Q,right:V,x:J,y:U};p.current.element instanceof HTMLElement&&r&&(W.height=p.current.element.offsetHeight,W.width=p.current.element.offsetWidth),Object.freeze(W),y.current&&!rC(p.current.lastBounds,W)&&c(p.current.lastBounds=W)};return[I,h?(0,Eh.default)(I,h):I,m?(0,Eh.default)(I,m):I]},[c,r,m,h]);function x(){p.current.scrollContainers&&(p.current.scrollContainers.forEach(I=>I.removeEventListener("scroll",v,!0)),p.current.scrollContainers=null),p.current.resizeObserver&&(p.current.resizeObserver.disconnect(),p.current.resizeObserver=null)}function A(){p.current.element&&(p.current.resizeObserver=new a(v),p.current.resizeObserver.observe(p.current.element),i&&p.current.scrollContainers&&p.current.scrollContainers.forEach(I=>I.addEventListener("scroll",v,{capture:!0,passive:!0})))}let C=I=>{!I||I===p.current.element||(x(),p.current.element=I,p.current.scrollContainers=cv(I),A())};return iC(v,!!i),tC(w),(0,Ci.useEffect)(()=>{x(),A()},[i,v,w]),(0,Ci.useEffect)(()=>x,[]),[C,l,S]}function tC(e){(0,Ci.useEffect)(()=>{let t=e;return window.addEventListener("resize",t),()=>void window.removeEventListener("resize",t)},[e])}function iC(e,t){(0,Ci.useEffect)(()=>{if(t){let i=e;return window.addEventListener("scroll",i,{capture:!0,passive:!0}),()=>void window.removeEventListener("scroll",i,!0)}},[e,t])}function cv(e){let t=[];if(!e||e===document.body)return t;let{overflow:i,overflowX:n,overflowY:r}=window.getComputedStyle(e);return[i,n,r].some(a=>a==="auto"||a==="scroll")&&t.push(e),[...t,...cv(e.parentElement)]}var nC=["x","y","top","bottom","left","right","width","height"],rC=(e,t)=>nC.every(i=>e[i]===t[i]);var Lp=R(q(),1),wn=R(q(),1),qx=R(Av(),1),Qx=R(q(),1),Tu=R(q(),1),Lo=R(B(),1),Di=R(q(),1),i0=R(q(),1),n0=R(q(),1),r0=R(B(),1),Jt=R(B(),1),_u=R(q(),1);var Ks=R(B(),1),Fp=R(q(),1),s0=R(q(),1),qP=R(q(),1),a0=R(q(),1),u0=R(q(),1),Sn=R(q(),1),c0=R(q(),1),_p=R(B(),1),d0=R(q(),1),xn=R(q(),1),_t=R(q(),1),h0=R(q(),1),Lu=R(q(),1),wt=R(B(),1),Mp=R(B(),1),kp=R(q(),1),Vr=R(B(),1),f0=R(q(),1);var sC=Object.defineProperty,aC=(e,t,i)=>t in e?sC(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,Xl=(e,t,i)=>(aC(e,typeof t!="symbol"?t+"":t,i),i);function Dr(e){return e.endsWith("info.json")?e:e.endsWith("/")?`${e}info.json`:`${e}/info.json`}var lC="http://library.stanford.edu/iiif/image-api/compliance.html#level0",_v="http://library.stanford.edu/iiif/image-api/compliance.html#level1",Mv="http://library.stanford.edu/iiif/image-api/compliance.html#level2",uC="http://library.stanford.edu/iiif/image-api/conformance.html#level0",kv="http://library.stanford.edu/iiif/image-api/conformance.html#level1",Ov="http://library.stanford.edu/iiif/image-api/conformance.html#level2",cC="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level0",Lv="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level1",zv="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2",dC="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level0",Fv="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level1",Nv="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level2",hC="http://iiif.io/api/image/1/level0.json",pC="http://iiif.io/api/image/1/profiles/level0.json",Bv="http://iiif.io/api/image/1/level1.json",Dv="http://iiif.io/api/image/1/profiles/level1.json",jv="http://iiif.io/api/image/1/level2.json",Vv="http://iiif.io/api/image/1/profiles/level2.json",fC="http://iiif.io/api/image/2/level0.json",mC="http://iiif.io/api/image/2/profiles/level0.json",Uv="http://iiif.io/api/image/2/level1.json",Wv="http://iiif.io/api/image/2/profiles/level1.json",Hv="http://iiif.io/api/image/2/level2.json",qv="http://iiif.io/api/image/2/profiles/level2.json",gC="level0",Qv="level1",$v="level2",yC="http://iiif.io/api/image/2/level0",Gv="http://iiif.io/api/image/2/level1",Yv="http://iiif.io/api/image/2/level2",Xv=[Yv,Mv,Ov,zv,Nv,jv,Vv,Hv,qv,$v],Kv=[...Xv,Gv,_v,kv,Lv,Fv,Bv,Dv,Uv,Wv,Qv],vC=[yC,Gv,Yv,lC,_v,Mv,uC,kv,Ov,cC,Lv,zv,dC,Fv,Nv,hC,pC,Bv,Dv,jv,Vv,fC,mC,Uv,Wv,Hv,qv,gC,Qv,$v];var xC={extraFormats:["jpg"],extraQualities:["default"],extraFeatures:["sizeByWhListed"]},SC={extraFormats:["jpg"],extraQualities:["default"],extraFeatures:["baseUriRedirect","cors","jsonldMediaType","regionByPx","regionSquare","sizeByWhListed","sizeByH","sizeByW","sizeByWh"]},wC={extraFormats:["jpg","png"],extraQualities:["default"],extraFeatures:["baseUriRedirect","cors","jsonldMediaType","regionByPct","regionByPx","regionSquare","rotationBy90s","sizeByWhListed","sizeByConfinedWh","sizeByH","sizeByPct","sizeByW","sizeByWh"]};function bC(e){return Xv.indexOf(e)!==-1?wC:Kv.indexOf(e)!==-1?SC:xC}function CC(e){let t=e?Array.isArray(e.profile)?e.profile:[e.profile]:[],i={extraQualities:[],extraFormats:[],extraFeatures:[]};for(let n of t)if(typeof n=="string"&&(n=bC(n)),!!n){if(n.formats)for(let r of n.formats)i.extraFormats.indexOf(r)===-1&&i.extraFormats.push(r);if(n.qualities)for(let r of n.qualities)i.extraQualities.indexOf(r)===-1&&i.extraQualities.push(r);if(n.supports)for(let r of n.supports)i.extraFeatures.indexOf(r)===-1&&i.extraFeatures.push(r);if(n.maxHeight&&(i.maxHeight=n.maxHeight),n.maxWidth&&(i.maxWidth=n.maxWidth),n.maxArea&&(i.maxArea=n.maxArea),n.extraFormats)for(let r of n.extraFormats)i.extraFormats.indexOf(r)===-1&&i.extraFormats.push(r);if(n.extraQualities)for(let r of n.extraQualities)i.extraQualities.indexOf(r)===-1&&i.extraQualities.push(r);if(n.extraFeatures)for(let r of n.extraFeatures)i.extraFeatures.indexOf(r)===-1&&i.extraFeatures.push(r);n.maxHeight&&(i.maxHeight=n.maxHeight),n.maxWidth&&(i.maxWidth=n.maxWidth),n.maxArea&&(i.maxArea=n.maxArea)}if(e.extraFormats)for(let n of e.extraFormats)i.extraFormats.indexOf(n)===-1&&i.extraFormats.push(n);if(e.extraFeatures)for(let n of e.extraFeatures)i.extraFeatures.indexOf(n)===-1&&i.extraFeatures.push(n);if(e.extraQualities)for(let n of e.extraQualities)i.extraQualities.indexOf(n)===-1&&i.extraQualities.push(n);return i}function PC(e){try{if(e==="full")return{full:!0};if(e==="square")return{square:!0};let t=e.startsWith("pct:"),i=e.substr(t?4:0).split(",").map(n=>parseFloat(n));return{x:i[0],y:i[1],w:i[2],h:i[3],percent:t}}catch{throw new Error("Expected 'full', 'square' or 'x,y,w,h'. Found "+e)}}function EC(e){let t={upscaled:!1,max:!1,confined:!1};if(e[0]==="^"&&(t.upscaled=!0,e=e.slice(1)),e==="max"||e==="full")return t.max=!0,t.serialiseAsFull=e==="full",t;if(e[0]==="!"&&(t.confined=!0,e=e.slice(1)),e[0]==="p")return t.percentScale=parseFloat(e.slice(4)),t;let i=e.split(",").map(n=>n.trim());return i.length&&typeof i[0]<"u"&&(i[0]!==""&&(t.width=parseInt(i[0],10)),typeof i[1]<"u"&&i[1]!==""?(t.height=parseInt(i[1],10),t.version=2):t.version=3),t}function AC(e){let t={angle:0};if(e[0]==="!"&&(t.mirror=!0,e=e.substr(1)),t.angle=parseFloat(e)%360,Number.isNaN(t.angle))throw new Error(`Invalid rotation ${e}`);return t}function IC(e,t=""){let i=e.match(/^(([a-zA-Z]+):\/\/([^/]+))?((.*)+)/);if(!i)throw new Error(`Invalid or unknown input ${e}`);let n=i[2],r=i[3],a=i[4];if(a[0]==="/"&&(a=a.substring(1)),t.length>0){if(t[0]==="/"&&(t=t.substring(1)),t!==a.substring(0,t.length))throw new Error(`Path does not start with prefix (path: ${a}, prefix: ${t})`);a=a.substring(t.length)}return{scheme:n,server:r,path:a,prefix:t}}function RC(e,t=""){let{path:i,scheme:n,server:r,prefix:a}=IC(e,t),l=(i||"").split("/").reverse(),[c,p,m,h,...y]=l,S=y.reverse().filter(Boolean).join("/");if(l.length===1||c==="")return{type:"base",scheme:n,server:r,prefix:a,identifier:S};if(c==="info.json"){let[,...v]=l;return{type:"info",scheme:n,server:r,prefix:a,identifier:v.reverse().filter(Boolean).join("/")}}let w=(c||"").split(".");if(typeof w[1]>"u"||typeof w[0]>"u"||typeof h>"u"||typeof m>"u"||typeof p>"u")throw new Error("Invalid image request");return{type:"image",scheme:n,server:r,prefix:a,identifier:S,originalPath:i,region:PC(h),size:EC(m),rotation:AC(p),quality:w[0],format:w[1]}}function TC(e){let t=RC(Dr(e.id));if(t.type!=="info")throw new Error("Invalid service URL");let i=CC(e);return{identifier:t.identifier,originalPath:"",server:t.server,prefix:t.prefix,scheme:t.scheme,type:"image",quality:i.extraQualities.indexOf("default")===-1?i.extraQualities[0]:"default",region:{full:!0},size:{max:!0,upscaled:!1,confined:!1},format:"jpg",rotation:{angle:0}}}function _C(e,t,i){let n=i.length,r=[];for(let a=0;a<n;a++){let l=i[a];if(l){let c=l.width;r.push(e/c)}}return r}function MC(e,t,i){let n=i.length,r=[];for(let a=0;a<n;a++){let l=i[a];l&&r.push({width:Math.floor(e/l),height:Math.floor(t/l)})}return r}function ft(e){if(e["@id"])return e["@id"];if(e.id)return e.id}function Zl(e){if(!e||!e.profile||!ft(e))return!1;let t=Array.isArray(e.profile)?e.profile:[e.profile];for(let i of t)if(typeof i=="string"&&vC.indexOf(i)!==-1)return!0;return!1}function kC(e){if(!Zl(e))return!1;let t=Array.isArray(e.profile)?e.profile:[e.profile];for(let i of t)if(typeof i=="string"){if(Kv.indexOf(i)!==-1)return!0}else{let n=[...i.supports||[],...i.extraFeatures||[]];if(n.indexOf("regionByPx")!==-1&&(n.indexOf("sizeByW")!==-1||n.indexOf("sizeByWh")!==-1))return!0}return!1}function Kl(e,t){if(t&&t.profile){let i=t.profile;if(i){let n=Array.isArray(i)?i:[i];return n.includes(`level${e}`)||n.includes(`http://iiif.io/api/image/2/level${e}.json`)||n.includes(`http://iiif.io/api/image/1/level${e}.json`)||n.includes(`http://iiif.io/api/image/1/profiles/level${e}.json`)}}return!1}function Fh(e){return Zl(e)?Kl(0,e)?0:Kl(1,e)?1:Kl(2,e)?2:null:null}function Zv(e){return(e["@context"]?Array.isArray(e["@context"])?e["@context"]:[e["@context"]]:[]).indexOf("http://iiif.io/api/image/3/context.json")!==-1}function OC(e){if(!kC(e))return[];let t=[],i=Array.isArray(e.profile)?e.profile:[e.profile],n=i.length;for(let r=0;r<n;r++){let a=i[r];if(a&&typeof a!="string"&&(a.maxHeight||a.maxWidth))return[{id:ft(e),type:"variable",minWidth:0,minHeight:0,maxHeight:a.maxHeight||a.maxWidth,maxWidth:a.maxWidth||a.maxHeight,level:Fh(e),version:e["@context"]==="http://iiif.io/api/image/3/context.json"?3:2}]}if(e.tiles){let r=e.tiles.length;for(let a=0;a<r;a++){let l=e.tiles[a];l&&(l.height||l.width)&&t.push({id:ft(e),type:"variable",minHeight:0,minWidth:0,maxHeight:l.height||l.width,maxWidth:l.width,level:Fh(e),version:Zv(e)?3:2})}}return t}function Iv(e){let t=/^.*\/(full)\/(((\d+),(\d+)?)|max)\/(\d+)\/default\.(jpg|png|jpeg)$/,i=e.match(t);if(i&&i[4]&&i[5]){let n=i[1],r=parseInt(i[4],10),a=parseInt(i[5],10),l=i[7];if((n==="max"||n==="full")&&r&&a&&l)return{type:"fixed",id:e,height:a,width:r}}return{type:"unknown",id:e}}function LC(e){if(e["@type"])return e["@type"];if(e.type)return e.type}function zC(e){if(typeof e=="string")return Iv(e);let t=LC(e);if(t!=="Image"&&t!=="sc:Image")return null;let i=e,n=ft(i);return n?n&&i.width&&i.height?{id:n,type:"fixed",width:i.width,height:i.height,unsafe:!0}:Iv(n):null}function FC(e){return Zl(e)?(e&&e.sizes?e.sizes:[]).map(t=>({id:ft(e),type:"fixed-service",height:t.height,width:t.width,level:Fh(e),version:Zv(e)?3:2})):[]}function Rv(e){let t=[],i=e.length;for(let n=0;n<i;n++){let r=e[n];if(!r)continue;let a=FC(r);a.length&&t.push(...a);let l=OC(r);l.length&&t.push(...l)}return t}function Jv(e){let t=e.service?Array.isArray(e.service)?e.service:[e.service]:[],i=t.length,n=[];for(let r=0;r<i;r++)Zl(t[r])&&n.push(t[r]);return n}function NC(e,t=!0,i){let n=[],r=zC(e);if(r===null)return n;let a=e;if(n.push(r),t&&a&&a.width&&a.height){let l=[],c=Jv(a);for(let p of c){let m={id:ft(p),width:a.width,height:a.height};if(i.canLoadSync(m)){let h=i.loadServiceSync(m);h&&(h.height||(h.height=a.height),h.width||(h.width=a.width),l.push(...Rv([h])))}}if(l.length)return n.push(...l),n}return a.service&&n.push(...Rv(a.service)),n}function BC({x:e=0,y:t=0,w:i,h:n,full:r,square:a,percent:l}){if(r)return"full";if(a)return"square";if(typeof i>"u"||typeof n>"u")throw new Error("RegionParameter: invalid region");let c=`${e},${t},${i},${n}`;return l?`pct:${c}`:c}function DC({max:e,percentScale:t,upscaled:i,confined:n,width:r,height:a,serialiseAsFull:l,version:c}){let p=[];return i&&p.push("^"),e?(p.push(l?"full":"max"),p.join("")):(n&&p.push("!"),t&&p.push(`pct:${t}`),r&&p.push(`${r}`),p.push(","),a&&c===3&&p.push(`${a}`),p.join(""))}function jC(e){return`${e.mirror?"!":""}${(e.angle||0)%360}`}function VC(e,t){let i=e.prefix.startsWith("/")?e.prefix.substr(1):e.prefix,n=`${e.scheme}://${e.server}/${i?`${i}/`:""}${e.identifier}`;if(e.type==="base")return n;if(e.type==="info")return`${n}/info.json`;let{size:r}=e,{region:a,rotation:l,format:c,quality:p}=e;if(t){let m=t["@context"]?Array.isArray(t["@context"])?t["@context"]:[t["@context"]]:[],h=m.indexOf("http://iiif.io/api/image/2/context.json")!==-1,y=m.indexOf("http://iiif.io/api/image/3/context.json")!==-1;if((r.width===t.width&&!r.height||r.height===t.height&&!r.width||r.width===t.width&&r.height===t.height)&&(r={...r,max:!0}),h&&(r.max&&!r.serialiseAsFull&&(r={...r,serialiseAsFull:!0}),!r.max&&r.width&&r.height&&(r={...r,height:void 0}),r={...r,version:2}),y){if(r.max&&r.serialiseAsFull&&(r={...r,serialiseAsFull:!1}),r.width&&!r.height&&t.width&&t.height){let S=t.height/t.width;r={...r,height:Math.ceil(r.width*S)}}r={...r,version:3}}}return[n,BC(a),DC(r),jC(l),`${p}.${c}`].filter(Boolean).join("/")}function zh(e,t,i){let n=TC({"@context":e.version===3?"http://iiif.io/api/image/3/context.json":"http://iiif.io/api/image/2/context.json",id:Dr(ft(e)),profile:e.level===null||typeof e.level>"u"?"level0":`level${e.level}`,type:e.version===3?"ImageService3":"ImageService2"});if(n.type!=="image")throw new Error("Invalid service");return n.size.max=!1,n.size.width=t,n.size.height=i,{id:VC(n),type:"fixed",width:t,height:i||e.height/(e.width||1)*t,unsafe:e.width>t}}function Mo(e){let t=e.replace(/(https?:\/\/)?(www.)?/i,"");return t.indexOf("/")!==-1?t.split("/")[0]:t}function UC(e,t,i){let n=e.width?e.width:e.maxWidth;return i.height<=e.maxHeight&&i.width<=e.maxWidth&&i.height>=e.minHeight&&i.width>=e.minWidth&&(!t||Math.abs(i.width-n)<Math.abs(t.width-n))}function WC(e,t){let i=[],n=Object.assign({unsafeImageService:!1,atAnyCost:!0,fallback:!0,minHeight:64,minWidth:64,maxHeight:1/0,maxWidth:1/0,returnAllOptions:!1,preferFixedSize:!1,allowUnsafe:!1,explain:!1,height:0,width:0},e),r=(h,y=0)=>n.explain?i.push(new Array(y).fill(0).map(S=>" ").join("")+h().trim()):void 0,a=[],l=[],c=null;r(()=>`Using configuration: ${JSON.stringify(n,null,2)}`);let p=(h,y)=>{if(r(()=>"Swapping choice",3),UC(n,y,h)){if(n.preferFixedSize&&h.unsafe){r(()=>`We found an image that was marked as unsafe, but it was the best size. (${h.id})`,4),l.push(h);return}n.returnAllOptions&&y&&l.push(y),r(()=>`We found a new image that was the best size. (${h.id})`,4),c=h}else n.returnAllOptions&&l.push(h)};r(()=>`The input shows we have ${t.length} list(s) of candidates to choose from.`);let m=t.length;for(let h=0;h<m;h++){let y=t[h]();r(()=>`Candidate group ${h}: ${JSON.stringify(y,null,2)}`,1);let S=y.length;r(()=>`Checking candidate list number ${h} and found ${S} potential ways of creating image(s)`,1);for(let w=0;w<S;w++){let v=y[w];if(r(()=>`-> Checking candidate ${w}`,1),v.type==="unknown"&&n.atAnyCost&&(r(()=>`We've found an unknown image type, adding this to the "last resort" list`,2),a.push(v)),v.type==="fixed"&&(v.unsafe?(r(()=>`We've found an unsafe fixed image type, adding this to the "last resort" list`,2),a.push(v)):(r(()=>"We've found a fixed size image, checking if it matches the request",2),p(v,c))),v.type==="fixed-service")if(n.unsafeImageService){r(()=>"Checking for an image from the tile source, without calculating the right height and width (unsafeImageService)",2);let x=zh(v,n.width,n.height);p(x,c)}else{r(()=>"Checking for an image from the tile source 3",2);let x=zh(v,v.width,v.height);p(x,c)}if(v.type==="variable"&&v.maxWidth){let x=zh({id:v.id,type:"fixed-service",width:v.maxWidth,height:v.maxWidth,level:v.level,version:v.version},v.maxWidth);p(x,c)}}if(c&&!n.returnAllOptions){if(c.unsafe||n.allowUnsafe)continue;r(()=>`We found a match in choice list number ${h}, no searching any more`);break}}return n.atAnyCost&&l.length===0?(r(()=>c?`We found an image! ${c.id} of type ${c.type}`:'We found no images, but "atAnyCost" is set, so returning that'),{best:c||a[0]||null,fallback:a.slice(1),log:i}):n.returnAllOptions?(r(()=>"Returning all options that we have found"),{best:(n.atAnyCost?c||l[0]||a[0]:c||l[0])||null,fallback:[...l,...a],log:i}):(r(()=>"Returning the best image that we found, and a fallback"),{best:c||l[0]||null,fallback:c?l:l.slice(1),log:i})}function HC(e,t,i){let n=e>t?e:t,r=i.length,a=[];for(let l=0;l<r;l++){let c=i[l];if(!c||c.scaleFactors.length===0)continue;let p=c.scaleFactors[0];if(!p)continue;let m=n/p,h=[p];for(;m>=c.width;)p=p*2,h.push(p),m=m/2;a.push({...c,scaleFactors:h})}return a}function qC(e,t){if(e.length!==t.length)return!1;if(e.length===0&&t.length===0)return!0;let i=e.length,n=!0;for(let a=0;a<i;a++){let l=e[a],c=t[a];if(l.width!==c.width||l.height!==c.height){n=!1;break}}if(n)return!0;let r=0;for(let a=0;a<i;a++)for(let l=0;l<i;l++)if(e[a].width===t[l].width&&e[a].height===t[l].height){r++;break}return r===i}function Tv(e){return Kl(0,e)}var ex=class{constructor(e={}){Xl(this,"config",{verificationsRequired:1,approximateServices:!1,enableFetching:!0,disableThrottling:!1}),Xl(this,"fetchingCount",0),Xl(this,"imageServices",{}),Xl(this,"knownImageServers",{}),this.config=Object.assign(this.config,e)}setConfig(e){Object.assign(this.config,e)}sample(e,t,i=!0){let n=Mo(ft(e)),r=Dr(ft(e)),a=this.knownImageServers[n];return this.imageServices[r]=Object.assign(e,{real:!0}),!a&&e.tiles&&!Tv(e)?(this.knownImageServers[n]={verifications:0,malformed:!1,root:n,preLoaded:i,sampledId:ft(e),verified:!1,server:null,result:{context:e["@context"]||[],sampledProfile:e.profile,resourceServiceRatio:t&&e.height?t.height/e.height:1,sampledSizes:e.sizes||[],sizeRatios:_C(e.width,e.height,e.sizes||[]),sampledTiles:e.tiles||[]}},!0):this.verify(e)}preLoad(e,t=!0){this.knownImageServers[e.root]=e,t&&(this.knownImageServers[e.root].malformed=!1,this.knownImageServers[e.root].verifications=this.config.verificationsRequired)}predict(e,t=!1,i=!1){let n=e?.source,r=Mo(ft(e)),a=this.knownImageServers[r],l=Dr(ft(e));return this.imageServices[l]?this.imageServices[l]||null:!this.config.approximateServices||!a||!a.result||!(n?.height||e.height)||!(n?.width||e.width)||!i&&(a.malformed||a.verifications<this.config.verificationsRequired)||Tv(e.source)?null:(this.imageServices[l]||(this.imageServices[l]={"@context":a.result.context,"@id":ft(e),id:ft(e),protocol:"http://iiif.io/api/image",tiles:n?.tiles||HC(e.width,e.height,a.result.sampledTiles),sizes:n?.sizes||MC(Math.round(e.width/a.result.resourceServiceRatio),Math.round(e.height/a.result.resourceServiceRatio),a.result.sizeRatios),profile:n?.profile||a.result.sampledProfile,height:n?.height||e.height,width:n?.width||e.width,real:!1}),this.imageServices[l]||null)}async getThumbnailFromResource(e,t,i=!0,n=[]){let r=e?await this.getImageCandidates(e,i):[];return WC(t,[()=>n,()=>r])}async getImageCandidates(e,t=!0){let i=e;if(t&&i&&i.height&&i.width){let n=Jv(i);for(let r of n){let a={id:ft(r),width:r.width?r.width:i.width,height:r.height?r.height:i.height,source:r};await this.loadService(a)}}return NC(e,t,this)}async verify(e){let t=this.predict(e,!1,!0),i=await this.fetchService(ft(e));if(!t)return!1;let n=t.height===i.height&&t.width===i.width&&t["@context"]===i["@context"]&&qC(t.sizes||[],i.sizes||[]);if(n){let r=Mo(ft(e)),a=this.knownImageServers[r];a&&(a.verifications+=1,a.verifications>=this.config.verificationsRequired&&(a.verified=!0))}return n}canLoadSync(e){let t=typeof e=="string"?e:ft(e),i=Dr(t);if(this.imageServices[i])return!0;let n=this.knownImageServers[Mo(t)];return!!(n&&!n.malformed&&n.verifications>=this.config.verificationsRequired)}async markAsMalformed(e){return this.knownImageServers[Mo(ft(e))].malformed=!0,this.loadService(e,!0)}async fetchService(e,t=!1){let i=Dr(e),n=this.imageServices[i];if(n&&(!t||n.real))return n;if(!this.config.enableFetching)throw new Error("Fetching is not enabled");let r=await this.fetch(i).then(a=>a.json());return!r.id&&r["@id"]&&(r.id=r["@id"]),r.id!==e&&(r.id=e,r["@id"]&&(r["@id"]=e)),this.imageServices[i]=Object.assign(r,{real:!0}),this.imageServices[i]}async fetch(e,t){return fetch(e,t)}async loadService(e,t=!1){if(!this.config.disableThrottling){let r=!0;for(;r;)if(this.fetchingCount>=this.config.verificationsRequired)await new Promise(a=>setTimeout(a,500));else{r=!1;break}}let i=this.knownImageServers[Mo(ft(e))];if(i&&!i.malformed&&!t){await i.result;let r=this.loadServiceSync(e);if(r)return r}this.fetchingCount++;let n=await this.fetchService(ft(e),t);return this.fetchingCount--,n.real&&this.sample(n,e),n}loadServiceSync(e){let t=Dr(ft(e));return this.imageServices[t]?this.imageServices[t]:this.config.approximateServices?this.predict(e):null}},xT=new ex;function Jl(e){return{all:e=e||new Map,on:function(t,i){var n=e.get(t);n?n.push(i):e.set(t,[i])},off:function(t,i){var n=e.get(t);n&&(i?n.splice(n.indexOf(i)>>>0,1):e.set(t,[]))},emit:function(t,i){var n=e.get(t);n&&n.slice().map(function(r){r(i)}),(n=e.get("*"))&&n.slice().map(function(r){r(t,i)})}}}var ix={},tx=e=>{let t,i=new Set,n=(h,y)=>{let S=typeof h=="function"?h(t):h;if(!Object.is(S,t)){let w=t;t=y??(typeof S!="object"||S===null)?S:Object.assign({},t,S),i.forEach(v=>v(t,w))}},r=()=>t,p={setState:n,getState:r,getInitialState:()=>m,subscribe:h=>(i.add(h),()=>i.delete(h)),destroy:()=>{(ix.env?ix.env.MODE:void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),i.clear()}},m=t=e(n,r,p);return p},eu=e=>e?tx(e):tx;var QC=Object.create,Nh=Object.defineProperty,$C=Object.getOwnPropertyDescriptor,nx=Object.getOwnPropertyNames,GC=Object.getPrototypeOf,YC=Object.prototype.hasOwnProperty,XC=(e,t,i)=>t in e?Nh(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,Bh=(e,t)=>function(){return t||(0,e[nx(e)[0]])((t={exports:{}}).exports,t),t.exports},KC=(e,t,i,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of nx(t))!YC.call(e,r)&&r!==i&&Nh(e,r,{get:()=>t[r],enumerable:!(n=$C(t,r))||n.enumerable});return e},Dh=(e,t,i)=>(i=e!=null?QC(GC(e)):{},KC(t||!e||!e.__esModule?Nh(i,"default",{value:e,enumerable:!0}):i,e)),Tt=(e,t,i)=>(XC(e,typeof t!="symbol"?t+"":t,i),i);var jh="http://library.stanford.edu/iiif/image-api/compliance.html#level0",Vh="http://library.stanford.edu/iiif/image-api/compliance.html#level1",Uh="http://library.stanford.edu/iiif/image-api/compliance.html#level2",Wh="http://library.stanford.edu/iiif/image-api/conformance.html#level0",Hh="http://library.stanford.edu/iiif/image-api/conformance.html#level1",qh="http://library.stanford.edu/iiif/image-api/conformance.html#level2",Qh="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level0",$h="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level1",Gh="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2",Yh="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level0",Xh="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level1",Kh="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level2",Zh="http://iiif.io/api/image/1/level0.json",Jh="http://iiif.io/api/image/1/profiles/level0.json",ep="http://iiif.io/api/image/1/level1.json",tp="http://iiif.io/api/image/1/profiles/level1.json",ip="http://iiif.io/api/image/1/level2.json",np="http://iiif.io/api/image/1/profiles/level2.json",rp="http://iiif.io/api/image/2/level0.json",op="http://iiif.io/api/image/2/profiles/level0.json",sp="http://iiif.io/api/image/2/level1.json",ap="http://iiif.io/api/image/2/profiles/level1.json",lp="http://iiif.io/api/image/2/level2.json",up="http://iiif.io/api/image/2/profiles/level2.json",cp="level0",dp="level1",hp="level2",pp="http://iiif.io/api/image/2/level0",fp="http://iiif.io/api/image/2/level1",mp="http://iiif.io/api/image/2/level2",ko=[mp,Uh,qh,Gh,Kh,ip,np,lp,up,hp],tu=[...ko,fp,Vh,Hh,$h,Xh,ep,tp,sp,ap,dp],gp=[pp,fp,mp,jh,Vh,Uh,Wh,Hh,qh,Qh,$h,Gh,Yh,Xh,Kh,Zh,Jh,ep,tp,ip,np,rp,op,sp,ap,lp,up,cp,dp,hp],yp=gp,vp=[pp,jh,Wh,Qh,Yh,Zh,Jh,rp,op,cp],rx={extraFormats:["jpg"],extraQualities:["default"],extraFeatures:["sizeByWhListed"]},ox={extraFormats:["jpg"],extraQualities:["default"],extraFeatures:["baseUriRedirect","cors","jsonldMediaType","regionByPx","regionSquare","sizeByWhListed","sizeByH","sizeByW","sizeByWh"]},sx={extraFormats:["jpg","png"],extraQualities:["default"],extraFeatures:["baseUriRedirect","cors","jsonldMediaType","regionByPct","regionByPx","regionSquare","rotationBy90s","sizeByWhListed","sizeByConfinedWh","sizeByH","sizeByPct","sizeByW","sizeByWh"]};var ZC=Object.defineProperty,JC=(e,t,i)=>t in e?ZC(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,vn=(e,t,i)=>(JC(e,typeof t!="symbol"?t+"":t,i),i);function eP(e){try{if(e==="full")return{full:!0};if(e==="square")return{square:!0};let t=e.startsWith("pct:"),i=e.substr(t?4:0).split(",").map(n=>parseFloat(n));return{x:i[0],y:i[1],w:i[2],h:i[3],percent:t}}catch{throw new Error("Expected 'full', 'square' or 'x,y,w,h'. Found "+e)}}function tP(e){let t={upscaled:!1,max:!1,confined:!1};if(e[0]==="^"&&(t.upscaled=!0,e=e.slice(1)),e==="max"||e==="full")return t.max=!0,t.serialiseAsFull=e==="full",t;if(e[0]==="!"&&(t.confined=!0,e=e.slice(1)),e[0]==="p")return t.percentScale=parseFloat(e.slice(4)),t;let i=e.split(",").map(n=>n.trim());return i.length&&(i[0]!==""&&(t.width=parseInt(i[0],10)),i[1]!==""&&(t.height=parseInt(i[1],10))),t}function iP(e){let t={angle:0};if(e[0]==="!"&&(t.mirror=!0,e=e.substr(1)),t.angle=parseFloat(e)%360,Number.isNaN(t.angle))throw new Error(`Invalid rotation ${e}`);return t}function nP(e,t=""){let i=e.match(/^(([a-zA-Z]+):\/\/([^/]+))?((.*)+)/);if(!i)throw new Error(`Invalid or unknown input ${e}`);let n=i[2],r=i[3],a=i[4];if(a[0]==="/"&&(a=a.substring(1)),t.length>0){if(t[0]==="/"&&(t=t.substring(1)),t!==a.substring(0,t.length))throw new Error(`Path does not start with prefix (path: ${a}, prefix: ${t})`);a=a.substring(t.length)}return{scheme:n,server:r,path:a,prefix:t}}function rP(e,t=""){let{path:i,scheme:n,server:r,prefix:a}=nP(e,t),l=i.split("/").reverse(),[c,p,m,h,...y]=l,S=y.reverse().filter(Boolean).join("/");if(l.length===1||c==="")return{type:"base",scheme:n,server:r,prefix:a,identifier:S};if(c==="info.json"){let[,...x]=l;return{type:"info",scheme:n,server:r,prefix:a,identifier:x.reverse().filter(Boolean).join("/")}}if(typeof n>"u"||typeof r>"u"||typeof i>"u"||typeof h>"u"||typeof m>"u"||typeof p>"u"||typeof c>"u")throw new Error("Invalid image service URL");let[w="",v=""]=c.split(".");return{type:"image",scheme:n,server:r,prefix:a,identifier:S,originalPath:i,region:eP(h),size:tP(m),rotation:iP(p),quality:w,format:v}}function oP(e){return ko.indexOf(e)!==-1?sx:tu.indexOf(e)!==-1?ox:rx}function sP(e){let t=e?Array.isArray(e.profile)?e.profile:[e.profile]:[],i={extraQualities:[],extraFormats:[],extraFeatures:[]};for(let n of t)if(typeof n=="string"&&(n=oP(n)),!!n){if(n.formats)for(let r of n.formats)i.extraFormats.indexOf(r)===-1&&i.extraFormats.push(r);if(n.qualities)for(let r of n.qualities)i.extraQualities.indexOf(r)===-1&&i.extraQualities.push(r);if(n.supports)for(let r of n.supports)i.extraFeatures.indexOf(r)===-1&&i.extraFeatures.push(r);if(n.maxHeight&&(i.maxHeight=n.maxHeight),n.maxWidth&&(i.maxWidth=n.maxWidth),n.maxArea&&(i.maxArea=n.maxArea),n.extraFormats)for(let r of n.extraFormats)i.extraFormats.indexOf(r)===-1&&i.extraFormats.push(r);if(n.extraQualities)for(let r of n.extraQualities)i.extraQualities.indexOf(r)===-1&&i.extraQualities.push(r);if(n.extraFeatures)for(let r of n.extraFeatures)i.extraFeatures.indexOf(r)===-1&&i.extraFeatures.push(r);n.maxHeight&&(i.maxHeight=n.maxHeight),n.maxWidth&&(i.maxWidth=n.maxWidth),n.maxArea&&(i.maxArea=n.maxArea)}if(e.extraFormats)for(let n of e.extraFormats)i.extraFormats.indexOf(n)===-1&&i.extraFormats.push(n);if(e.extraFeatures)for(let n of e.extraFeatures)i.extraFeatures.indexOf(n)===-1&&i.extraFeatures.push(n);if(e.extraQualities)for(let n of e.extraQualities)i.extraQualities.indexOf(n)===-1&&i.extraQualities.push(n);return i}function Sp(e){let t=Array.isArray(e.profile)?e.profile:[e.profile];for(let i of t)if(typeof i=="string"&&vp.indexOf(i)!==-1)return!0;return!1}function Le(e){if(e["@id"])return e["@id"];if(e.id)return e.id}function js(e){if(!e||!e.profile||!Le(e))return!1;let t=Array.isArray(e.profile)?e.profile:[e.profile];for(let i of t)if(typeof i=="string"&&gp.indexOf(i)!==-1)return!0;return!1}function ax(e){if(!js(e))return!1;let t=Array.isArray(e.profile)?e.profile:[e.profile];for(let i of t)if(typeof i=="string"){if(tu.indexOf(i)!==-1)return!0}else{let n=[...i.supports||[],...i.extraFeatures||[]];if(n.indexOf("regionByPx")!==-1&&(n.indexOf("sizeByW")!==-1||n.indexOf("sizeByWh")!==-1))return!0}return!1}function aP({x:e=0,y:t=0,w:i,h:n,full:r,square:a,percent:l}){if(r)return"full";if(a)return"square";if(typeof i>"u"||typeof n>"u")throw new Error("RegionParameter: invalid region");let c=`${e},${t},${i},${n}`;return l?`pct:${c}`:c}function lP({max:e,percentScale:t,upscaled:i,confined:n,width:r,height:a,serialiseAsFull:l,version:c}){let p=[];return i&&p.push("^"),e?(p.push(l?"full":"max"),p.join("")):(n&&p.push("!"),t&&p.push(`pct:${t}`),r&&p.push(`${r}`),p.push(","),a&&c===3&&p.push(`${a}`),p.join(""))}function uP(e){return`${e.mirror?"!":""}${(e.angle||0)%360}`}function iu(e,t){let i=e.prefix.startsWith("/")?e.prefix.substring(1):e.prefix,n=`${e.scheme}://${e.server}/${i?`${i}/`:""}${e.identifier}`;if(e.type==="base")return n;if(e.type==="info")return`${n}/info.json`;let{size:r}=e,{region:a,rotation:l,format:c,quality:p}=e;if(t){let m=t["@context"]?Array.isArray(t["@context"])?t["@context"]:[t["@context"]]:[],h=m.indexOf("http://iiif.io/api/image/2/context.json")!==-1,y=m.indexOf("http://iiif.io/api/image/3/context.json")!==-1;if((r.width===t.width&&!r.height||r.height===t.height&&!r.width||r.width===t.width&&r.height===t.height)&&(r={...r,max:!0}),h&&(r.max&&!r.serialiseAsFull&&(r={...r,serialiseAsFull:!0}),!r.max&&r.width&&r.height&&(r={...r,height:void 0}),r={...r,version:2}),y){if(r.max&&r.serialiseAsFull&&(r={...r,serialiseAsFull:!1}),r.width&&!r.height&&t.width&&t.height){let S=t.height/t.width;r={...r,height:Math.ceil(r.width*S)}}r={...r,version:3}}}return[n,aP(a),lP(r),uP(l),`${p}.${c}`].filter(Boolean).join("/")}function Ln(e){return e.endsWith("info.json")?e:e.endsWith("/")?`${e}info.json`:`${e}/info.json`}function nu(e){let t=rP(Ln(e.id));if(t.type!=="info")throw new Error("Invalid service URL");let i=sP(e);return{identifier:t.identifier,originalPath:"",server:t.server,prefix:t.prefix,scheme:t.scheme,type:"image",quality:i.extraQualities.indexOf("default")===-1?i.extraQualities[0]:"default",region:{full:!0},size:{max:!0,upscaled:!1,confined:!1},format:"jpg",rotation:{angle:0}}}function lx(e,t,i){let n=i.length,r=[];for(let a=0;a<n;a++){let l=i[a];if(!l)continue;let c=l.width;r.push(e/c)}return r}function ux(e,t,i){let n=i.length,r=[];for(let a=0;a<n;a++){let l=i[a];l&&r.push({width:Math.floor(e/l),height:Math.floor(t/l)})}return r}function xp(e,t){if(t&&t.profile){let i=t.profile;if(i){let n=Array.isArray(i)?i:[i];if(n.includes(`level${e}`)||n.includes(`http://iiif.io/api/image/2/level${e}.json`)||n.includes(`http://iiif.io/api/image/1/level${e}.json`)||n.includes(`http://iiif.io/api/image/1/profiles/level${e}.json`))return!0;if(e===2){for(let r of n)if(ko.includes(r))return!0}if(e===1){for(let r of n)if(tu.includes(r))return!0}if(e===0){for(let r of n)if(vp.includes(r))return!0}}}return!1}function Vs(e){return js(e)?xp(0,e)?0:xp(1,e)?1:xp(2,e)?2:null:null}function zn(e){let t=e.service?Array.isArray(e.service)?e.service:[e.service]:[],i=t.length,n=[];for(let r=0;r<i;r++)js(t[r])&&n.push(t[r]);return n}function cx(e){if(e["@type"])return e["@type"];if(e.type)return e.type}function jr(e){let t=e.replace(/(https?:\/\/)?(www.)?/i,"");return t.indexOf("/")!==-1?t.split("/")[0]:t}function dx(e,t,i){let n=e>t?e:t,r=i.length,a=[];for(let l=0;l<r;l++){let c=i[l];if(!c||c.scaleFactors.length===0)continue;let p=c.scaleFactors[0];if(!p)continue;let m=n/p,h=[p];for(;m>=c.width;)p=p*2,h.push(p),m=m/2;a.push({...c,scaleFactors:h})}return a}function ru(e,t,i){let n=nu({"@context":e.version===3?"http://iiif.io/api/image/3/context.json":"http://iiif.io/api/image/2/context.json",id:Ln(Le(e)),profile:e.level===null||typeof e.level>"u"?"level0":`level${e.level}`,type:e.version===3?"ImageService3":"ImageService2"});if(n.type!=="image")throw new Error("Invalid service");return n.size.max=!1,n.size.width=t,n.size.height=i,{id:iu(n),type:"fixed",width:t,height:i||e.height/(e.width||1)*t,unsafe:e.width>t}}function hx(e,t,i){let n=e.width?e.width:e.maxWidth;return i.height<=e.maxHeight&&i.width<=e.maxWidth&&i.height>=e.minHeight&&i.width>=e.minWidth&&(!t||Math.abs(i.width-n)<Math.abs(t.width-n))}function px(e,t){let i=[],n=Object.assign({unsafeImageService:!1,atAnyCost:!0,fallback:!0,minHeight:64,minWidth:64,maxHeight:1/0,maxWidth:1/0,returnAllOptions:!1,preferFixedSize:!1,allowUnsafe:!1,explain:!1,height:0,width:0},e),r=(h,y=0)=>n.explain?i.push(new Array(y).fill(0).map(S=>" ").join("")+h().trim()):void 0,a=[],l=[],c=null;r(()=>`Using configuration: ${JSON.stringify(n,null,2)}`);let p=(h,y)=>{if(r(()=>"Swapping choice",3),hx(n,y,h)){if(n.preferFixedSize&&h.unsafe){r(()=>`We found an image that was marked as unsafe, but it was the best size. (${h.id})`,4),l.push(h);return}n.returnAllOptions&&y&&l.push(y),r(()=>`We found a new image that was the best size. (${h.id})`,4),c=h}else n.returnAllOptions&&l.push(h)};r(()=>`The input shows we have ${t.length} list(s) of candidates to choose from.`);let m=t.length;for(let h=0;h<m;h++){let y=t[h]();r(()=>`Candidate group ${h}: ${JSON.stringify(y,null,2)}`,1);let S=y.length;r(()=>`Checking candidate list number ${h} and found ${S} potential ways of creating image(s)`,1);for(let w=0;w<S;w++){let v=y[w];if(r(()=>`-> Checking candidate ${w}`,1),v.type==="unknown"&&n.atAnyCost&&(r(()=>`We've found an unknown image type, adding this to the "last resort" list`,2),a.push(v)),v.type==="fixed"&&(v.unsafe?(r(()=>`We've found an unsafe fixed image type, adding this to the "last resort" list`,2),a.push(v)):(r(()=>"We've found a fixed size image, checking if it matches the request",2),p(v,c))),v.type==="fixed-service")if(n.unsafeImageService){r(()=>"Checking for an image from the tile source, without calculating the right height and width (unsafeImageService)",2);let x=ru(v,n.width,n.height);p(x,c)}else{r(()=>"Checking for an image from the tile source 3",2);let x=ru(v,v.width,v.height);p(x,c)}if(v.type==="variable"&&v.maxWidth){let x=ru({id:v.id,type:"fixed-service",width:v.maxWidth,height:v.maxWidth,level:v.level,version:v.version},v.maxWidth);p(x,c)}}if(c&&!n.returnAllOptions){if(c.unsafe||n.allowUnsafe)continue;r(()=>`We found a match in choice list number ${h}, no searching any more`);break}}return n.atAnyCost&&l.length===0?(r(()=>c?`We found an image! ${c.id} of type ${c.type}`:'We found no images, but "atAnyCost" is set, so returning that'),{best:c||a[0]||null,fallback:a.slice(1),log:i}):n.returnAllOptions?(r(()=>"Returning all options that we have found"),{best:(n.atAnyCost?c||l[0]||a[0]:c||l[0])||null,fallback:[...l,...a],log:i}):(r(()=>"Returning the best image that we found, and a fallback"),{best:c||l[0]||null,fallback:c?l:l.slice(1),log:i})}function Cp(e){return(e["@context"]?Array.isArray(e["@context"])?e["@context"]:[e["@context"]]:[]).indexOf("http://iiif.io/api/image/3/context.json")!==-1}function fx(e){return js(e)?(e&&e.sizes?e.sizes:[]).map(t=>({id:Le(e),type:"fixed-service",height:t.height,width:t.width,level:Vs(e),version:Cp(e)?3:2})):[]}function mx(e){if(!ax(e))return[];let t=[],i=Array.isArray(e.profile)?e.profile:[e.profile],n=i.length;for(let r=0;r<n;r++){let a=i[r];if(a&&typeof a!="string"&&(a.maxHeight||a.maxWidth))return[{id:Le(e),type:"variable",minWidth:0,minHeight:0,maxHeight:a.maxHeight||a.maxWidth,maxWidth:a.maxWidth||a.maxHeight,level:Vs(e),version:e["@context"]==="http://iiif.io/api/image/3/context.json"?3:2}]}if(e.tiles){let r=e.tiles.length;for(let a=0;a<r;a++){let l=e.tiles[a];l&&(l.height||l.width)&&t.push({id:Le(e),type:"variable",minHeight:0,minWidth:0,maxHeight:l.height||l.width,maxWidth:l.width,level:Vs(e),version:Cp(e)?3:2})}}return t}function wp(e){let t=[],i=e.length;for(let n=0;n<i;n++){let r=e[n];if(!r)continue;let a=fx(r);a.length&&t.push(...a);let l=mx(r);l.length&&t.push(...l)}return t}function bp(e){let t=/^.*\/(full)\/(((\d+),(\d+)?)|max)\/(\d+)\/default\.(jpg|png|jpeg)$/,i=e.match(t);if(i&&i[4]&&i[5]){let n=i[1],r=parseInt(i[4],10),a=parseInt(i[5],10),l=i[7];if((n==="max"||n==="full")&&r&&a&&l)return{type:"fixed",id:e,height:a,width:r}}return{type:"unknown",id:e}}function Us(e){if(typeof e=="string")return bp(e);let t=cx(e);if(t!=="Image"&&t!=="sc:Image")return null;let i=e,n=Le(i);return n?n&&i.width&&i.height?{id:n,type:"fixed",width:i.width,height:i.height,unsafe:!0}:bp(n):null}function gx(e,t=!0,i){let n=[],r=Us(e);if(r===null)return n;let a=e;if(n.push(r),t&&a&&a.width&&a.height){let l=[],c=zn(a);for(let p of c){let m={id:Le(p),width:a.width,height:a.height};if(i.canLoadSync(m)){let h=i.loadServiceSync(m);h&&(h.height||(h.height=a.height),h.width||(h.width=a.width),l.push(...wp([h])))}}if(l.length)return n.push(...l),n}return a.service&&n.push(...wp(a.service)),n}function yx(e,t){if(e.length!==t.length)return!1;if(e.length===0&&t.length===0)return!0;let i=e.length,n=!0;for(let a=0;a<i;a++){let l=e[a],c=t[a];if(l.width!==c.width||l.height!==c.height){n=!1;break}}if(n)return!0;let r=0;for(let a=0;a<i;a++)for(let l=0;l<i;l++)if(e[a].width===t[l].width&&e[a].height===t[l].height){r++;break}return r===i}var Oo=class{constructor(e={}){Tt(this,"config",{verificationsRequired:1,approximateServices:!1,enableFetching:!0,disableThrottling:!1}),Tt(this,"fetchingCount",0),Tt(this,"imageServices",{}),Tt(this,"knownImageServers",{}),this.config=Object.assign(this.config,e)}setConfig(e){Object.assign(this.config,e)}sample(e,t,i=!0){let n=jr(Le(e)),r=Ln(Le(e)),a=this.knownImageServers[n];return this.imageServices[r]=Object.assign(e,{real:!0}),!a&&e.tiles&&!Sp(e)?(this.knownImageServers[n]={verifications:0,malformed:!1,root:n,preLoaded:i,sampledId:Le(e),verified:!1,server:null,result:{context:e["@context"]||[],sampledProfile:e.profile,resourceServiceRatio:t&&e.height?t.height/e.height:1,sampledSizes:e.sizes||[],sizeRatios:lx(e.width,e.height,e.sizes||[]),sampledTiles:e.tiles||[]}},!0):this.verify(e)}preLoad(e,t=!0){this.knownImageServers[e.root]=e,t&&(this.knownImageServers[e.root].malformed=!1,this.knownImageServers[e.root].verifications=this.config.verificationsRequired)}predict(e,t=!1,i=!1){let n=e?.source,r=jr(Le(e)),a=this.knownImageServers[r],l=Ln(Le(e));return this.imageServices[l]?this.imageServices[l]||null:!this.config.approximateServices||!a||!a.result||!(n?.height||e.height)||!(n?.width||e.width)||!i&&(a.malformed||a.verifications<this.config.verificationsRequired)||e.source&&Sp(e.source)?null:(this.imageServices[l]||(this.imageServices[l]={"@context":a.result.context,"@id":Le(e),id:Le(e),protocol:"http://iiif.io/api/image",tiles:n?.tiles||dx(e.width,e.height,a.result.sampledTiles),sizes:n?.sizes||ux(Math.round(e.width/a.result.resourceServiceRatio),Math.round(e.height/a.result.resourceServiceRatio),a.result.sizeRatios),profile:n?.profile||a.result.sampledProfile,height:n?.height||e.height,width:n?.width||e.width,real:!1}),this.imageServices[l]||null)}async getThumbnailFromResource(e,t,i=!0,n=[]){let r=e?await this.getImageCandidates(e,i):[];return px(t,[()=>n,()=>r])}async getImageCandidates(e,t=!0){let i=e;if(t&&i&&i.height&&i.width){let n=zn(i);for(let r of n){let a={id:Le(r),width:r.width?r.width:i.width,height:r.height?r.height:i.height,source:r};await this.loadService(a)}}return gx(e,t,this)}async verify(e){let t=this.predict(e,!1,!0),i=await this.fetchService(Le(e));if(!t)return!1;let n=t.height===i.height&&t.width===i.width&&t["@context"]===i["@context"]&&yx(t.sizes||[],i.sizes||[]);if(n){let r=jr(Le(e)),a=this.knownImageServers[r];a&&(a.verifications+=1,a.verifications>=this.config.verificationsRequired&&(a.verified=!0))}return n}canLoadSync(e){let t=typeof e=="string"?e:Le(e),i=Ln(t);if(this.imageServices[i])return!0;let n=this.knownImageServers[jr(t)];return!!(n&&!n.malformed&&n.verifications>=this.config.verificationsRequired)}async markAsMalformed(e){return this.knownImageServers[jr(Le(e))].malformed=!0,this.loadService(e,!0)}async fetchService(e,t=!1){let i=Ln(e),n=this.imageServices[i];if(n&&(!t||n.real))return n;if(!this.config.enableFetching)throw new Error("Fetching is not enabled");let r=await this.fetch(i).then(a=>a.json());return!r.id&&r["@id"]&&(r.id=r["@id"]),r.id!==e&&(r.id=e,r["@id"]&&(r["@id"]=e)),this.imageServices[i]=Object.assign(r,{real:!0}),this.imageServices[i]}async fetch(e,t){return fetch(e,t)}async loadService(e,t=!1){if(!this.config.disableThrottling){let r=!0;for(;r;)if(this.fetchingCount>=this.config.verificationsRequired)await new Promise(a=>setTimeout(a,500));else{r=!1;break}}let i=this.knownImageServers[jr(Le(e))];if(i&&!i.malformed&&!t){await i.result;let r=this.loadServiceSync(e);if(r)return r}this.fetchingCount++;let n=await this.fetchService(Le(e),t);return this.fetchingCount--,n.real&&this.sample(n,e),n}loadServiceSync(e){let t=Ln(Le(e));return this.imageServices[t]?this.imageServices[t]:this.config.approximateServices?this.predict(e):null}};function vx(e={}){let t=e.events||Jl(),i=e.loader||new Oo;return{store:eu((r,a)=>({loaded:{},loadServiceSync:(l,c,p)=>{let m=l.id||l["@id"],h=a().loaded[m];if(h&&h.status==="done")return h.service;if(h&&h.status==="loading")return null;if(h&&h.status==="error")throw new Error("Failed to load image service");let y={id:Le(l),width:l.width||c?.width||0,height:l.height||c?.height||0,source:l},S=i.loadServiceSync(y);return S?(r(w=>({loaded:{...w.loaded,[m]:{status:"done",service:S,real:!0}}})),t.emit("image-service.loaded",{id:m,service:S})):p&&a().loadService(l,c).then(()=>{}),S},loadService:async(l,c)=>{let p=l.id||l["@id"],m=a().loaded[p];if(m&&m.status==="done")return m.service;if(m&&m.status==="loading")return new Promise((h,y)=>{let S=w=>{w.id===p&&(t.off("image-service.loaded",S),h(w.service||l))};t.on("image-service.loaded",S)});if(m&&m.status==="error"&&!c?.force)throw new Error("Failed to load image service");t.emit("image-service.loading",{id:p});try{let h={id:Le(l),width:l.width||0,height:l.height||0,source:l},y=await i.loadService(h,c?.force);return r(S=>({loaded:{...S.loaded,[p]:{status:"done",service:y,real:y.real}}})),t.emit("image-service.loaded",{id:p,service:y}),y}catch(h){throw t.emit("image-service.error",{id:p,error:h}),h}}})),events:t}}var Pp=vx();var ou={},Fn={get(e){return e},setMetaValue([e,t,i],n){let r=Fn.getResourceMeta(e,t),a=r?r[i]:void 0,l=typeof n=="function"?n(a):n;ou[e]={...ou[e]||{},[t]:{...(ou[e]||{})[t]||{},[i]:l}}},getResourceMeta:(e,t)=>{let i=ou[e];if(i)return t?i[t]:i},async load(e){let t=typeof e=="string"?e:e.id;return fetch(t).then(i=>i.json())},requestStatus(e){}};var xx=new Oo;function Ep(e=Fn,t={}){let i=t.imageServiceLoader||xx;async function n(r,a,l=!1,c=[],p){let m=()=>i.getThumbnailFromResource(void 0,a,l,c);if(!r)return await i.getThumbnailFromResource(void 0,a,l,c);if(typeof r=="string"){let S=Us(r);return S&&c.push(S),await i.getThumbnailFromResource(void 0,a,l,c)}let h=e.get(r,{skipSelfReturn:!1});if(typeof h=="string")return{best:Us(h),fallback:[],log:[]};if(!h)return await m();switch(await(async S=>{if(S&&S.thumbnail&&S.thumbnail.length){let w=e.get(S.thumbnail[0]),v=await i.getImageCandidates(w,l);v&&v.length&&c.push(...v)}})(h),h.type){case"Annotation":{let S=Array.isArray(h.body)?h.body:[h.body],w=e.get(S[0]);return p&&!w.width&&(w.width=p.width,w.height=p.height),await i.getThumbnailFromResource(w,a,l,c)}case"Canvas":{let S=h;return n(S.items[0],a,l,c,{width:S.width,height:S.height})}case"AnnotationPage":return n(h.items[0],a,l,c,p);case"Choice":{let S=h;return!S.items||S.items[0]?await m():n(S.items[0],a,l,c,p)}case"Collection":{let w=h.items[0];return w?n(w,a,l,c,p):await m()}case"Manifest":{let w=h.items[0];return w?n(w,a,l,c,p):await m()}case"SpecificResource":case"Image":case"Dataset":case"Sound":case"Text":case"TextualBody":case"Video":return p&&!h.width&&(h.width=p.width,h.height=p.height),i.getThumbnailFromResource(h,a,l,c)}return await m()}return{getBestThumbnailAtSize:n}}var KP=R(B(),1),ZP=R(q(),1),Zs=R(q(),1),JP=R(B(),1),eE=R(q(),1),m0=R(q(),1),cP=Object.defineProperty,dP=(e,t,i)=>t in e?cP(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,P=(e,t,i)=>(dP(e,typeof t!="symbol"?t+"":t,i),i),bu=["onMouseDown","onMouseEnter","onMouseLeave","onMouseMove","onMouseOut","onMouseOver","onMouseUp","onTouchCancel","onTouchEnd","onTouchMove","onTouchStart","onPointerDown","onPointerMove","onPointerUp","onPointerCancel","onPointerEnter","onPointerLeave","onPointerOver","onPointerOut","onScroll","onWheel","onClick","onDragStart","onDragEnd","onDragEnter","onDragExit","onDrag","onDragOver"];function hP(){return bu.reduce((e,t)=>(e[t]=[],e),{})}var zo=bu.reduce((e,t)=>(e[t.slice(2).toLowerCase()]=t,e[t]=t,e),{}),pP="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",Cu=(e=21)=>{let t="",i=crypto.getRandomValues(new Uint8Array(e));for(;e--;)t+=pP[i[e]&63];return t},bn=class{constructor(){P(this,"__id"),P(this,"__revision",0),P(this,"__host"),P(this,"__onCreate"),P(this,"__parent"),P(this,"__owner",{value:void 0}),P(this,"__state",{}),P(this,"eventHandlers"),P(this,"scale",1),P(this,"layers",[]),P(this,"time",[]),P(this,"_crop"),P(this,"cropData"),P(this,"id"),P(this,"addEventListener",(e,t,i)=>{let n=zo[e];if(!this.eventHandlers[n])throw new Error(`Unknown event ${n}`);this.eventHandlers[n].indexOf(t)===-1&&this.eventHandlers[n].push(t)}),P(this,"removeEventListener",(e,t)=>{let i=zo[e];if(!this.eventHandlers[i]){console.warn(`Unknown event ${i}`);return}this.eventHandlers[i].indexOf(t)!==-1&&(this.eventHandlers[i]=this.eventHandlers[i].filter(n=>n!==t))}),this.id=this.__id=Cu(),this.eventHandlers=hP()}get crop(){return this._crop}set crop(e){this._crop=e}getObjectsAt(e){return[]}getAllPointsAt(e,t,i){return[]}getScheduledUpdates(e,t){return[]}dispatchEvent(e,t){let i=this.eventHandlers[e],n=i?i.length:0,r=!1;if(n)for(let a=0;a<n;a++)try{i[a](t),r=!0}catch(l){console.error(e,l)}return r}get x(){return this.points[1]}get y(){return this.points[2]}get width(){return this.points[3]-this.points[1]}get height(){return this.points[4]-this.points[2]}translate(e,t){Zt(this.points,ut(e,t))}atScale(e){Zt(this.points,On(e,this.x,this.y)),this.scale*=e}transform(e){Zt(this.points,e)}applyProps(e){this.__revision++}appendChild(e){}removeChild(e){}insertBefore(e,t){}hideInstance(){}},cr=class Ip extends bn{constructor(t){if(super(),P(this,"type","spacial-content"),P(this,"id"),P(this,"uri"),P(this,"display"),P(this,"points"),P(this,"priority"),P(this,"style",{opacity:1}),!t)this.id="",this.uri="",this.display={x:0,y:0,scale:1,width:0,height:0,points:re(5)},this.points=re(5);else{let i=t.scale||1;this.id=t.id||t.uri,this.uri=t.uri,this.points=xe.singleBox(t.width,t.height,t.x,t.y),this.display={x:0,y:0,scale:i,width:t.width/i,height:t.height/i,points:xe.singleBox(t.width/i,t.height/i),rotation:t?.rotation}}}applyProps(t){let i=t.display?t.display.width:t.target.width,n=t.target.width/i;if(this.id=t.id||t.uri,this.uri=t.uri,this.points.set(xe.singleBox(t.target.width,t.target.height,t.target.x,t.target.y)),t.style&&typeof t.style.opacity<"u"&&(this.style.opacity=t.style.opacity),t.crop){this.cropData=t.crop;let r=xe.singleBox(t.crop.width,t.crop.height,t.crop.x,t.crop.y);Zt(r,ut(-t.crop.x,-t.crop.y)),this.crop?this.crop.set(r):this.crop=re(r)}t.display?(this.display.scale=n,this.display.width=t.display.width,this.display.height=t.display.height,this.display.rotation=t.display.rotation,this.display.points=xe.singleBox(t.display.width,t.display.height)):(this.display.scale=n,this.display.width=t.target.width/n,this.display.height=t.target.height/n,this.display.points=xe.singleBox(t.target.width/n,t.target.height/n))}getAllPointsAt(t,i,n){return[[this,this.crop||this.points,i]]}static fromSvg(t,i,n,r){return Ip.fromImage("data:image/svg+xml;base64,"+btoa(t),i,n,r)}static fromImage(t,i,n,r){let a=new Ip;return a.applyProps({uri:t,id:r,display:n,target:i}),a}getImageUrl(){return this.uri}},Rp=class extends bn{constructor(e){if(super(),P(this,"type","spacial-content"),P(this,"id"),P(this,"uri"),P(this,"display"),P(this,"points"),P(this,"getTexture"),this.getTexture=()=>({source:void 0,hash:-1}),!e)this.id="",this.uri="",this.display={x:0,y:0,scale:1,width:0,height:0,points:re(5)},this.points=re(5);else{let t=e.scale||1;this.id=e.id||e.uri,this.uri=e.uri,this.points=xe.singleBox(e.width,e.height),this.display={x:0,y:0,scale:t,width:e.width/t,height:e.height/t,points:t!==1?xe.singleBox(e.width/t,e.height/t):this.points}}}applyProps(e){let t=e.display?e.display.width:e.target.width,i=e.target.width/t;this.id=e.id,this.points.set(xe.singleBox(e.target.width,e.target.height)),this.display.scale=i,this.display.width=e.target.width/i,this.display.height=e.target.height/i,this.getTexture=e.getTexture,this.display.points=i!==1?xe.singleBox(e.target.width/i,e.target.height/i):this.points}getAllPointsAt(e,t,i){return[[this,this.points,t]]}};function fP(e,t,i=1){let n=t.length;if(n===0)throw new Error("No resources passed in.");let r=0;for(let a=0;a<n&&!(!t[a]||!t[a].display);a++)r=Math.abs(t[a].display.scale-e)*i<Math.abs(t[r].display.scale-e)?a:r;return r}function Cx(e,t){return Math.abs(e-t)}function vu(e,t){let i=Cx(e.x,t.x),n=Cx(e.y,t.y);return Math.sqrt(Math.pow(i,2)+Math.pow(n,2))}function mP(e){let t=e.length;return e.indexOf("/info.json")===t-10?e.slice(0,-10):e}function su(e,t,i){return Math.min(Math.max(e,t),i)}var Xs=class Bx extends bn{constructor(t){super(),P(this,"id"),P(this,"type","spacial-content"),P(this,"display"),P(this,"tileWidth"),P(this,"style",{opacity:1}),P(this,"points"),P(this,"service"),P(this,"format","jpg"),P(this,"crop2"),P(this,"tileUrl"),this.tileUrl=mP(t.url),this.id=t.id||`${this.tileUrl}--${t.scaleFactor}`,this.points=t.displayPoints?t.displayPoints:bi(t.points,wi(t.scaleFactor)),this.tileWidth=t.tileWidth,this.display={x:0,y:0,width:t.width/t.scaleFactor,height:t.height/t.scaleFactor,points:t.points,scale:t.scaleFactor},t.format&&(this.format=t.format)}applyProps(t){if(t.style&&typeof t.style.opacity<"u"&&(this.style.opacity=t.style.opacity),t.service!==this.service&&(this.service=t.service),t.format?this.format=t.format:this.format="jpg",t.crop){this.cropData=t.crop;let i=re([...this.points]),n=i.length/5,r=t.crop.x||0,a=t.crop.y||0,l=t.crop.x+t.crop.width,c=t.crop.y+t.crop.height;for(let p=0;p<n;p++){let m=p*5;i[m+1]<l&&i[m+3]>r&&i[m+2]<c&&i[m+4]>a?(i[m+1]=su(i[m+1],r,l),i[m+3]=su(i[m+3],r,l),i[m+2]=su(i[m+2],a,c),i[m+4]=su(i[m+4],a,c)):i[m]=0}Zt(i,ut(-t.crop.x,-t.crop.y)),this.crop?this.crop.set(i):this.crop=i}}static fromTile(t,i,n,r,a,l){n.height=n.height?n.height:n.width;let c=Math.ceil(i.width/r),p=Math.ceil(i.height/r),m=Math.ceil(c/n.width),h=Math.ceil(p/n.height),y=xe.grid(m,h),S=xe.grid(m,h);for(let v=0;v<h;v++)for(let x=0;x<m;x++){let A=x*n.width,C=v*n.height;S.addPoints(A*r,C*r,x===m-1?i.width:(A+n.width)*r,v===h-1?i.height:(C+n.height)*r),y.addPoints(A,C,x===m-1?c:A+n.width,v===h-1?p:C+n.height)}let w=new Bx({url:t,scaleFactor:r,points:y.build(),displayPoints:S.build(),width:i.width,height:i.height,tileWidth:n.width,format:l});return w.applyProps({service:a}),w}getImageUrl(t){let i=this.points.slice(t*5,t*5+5),n=i[3]-i[1],r=i[4]-i[2],a=Math.ceil(n/this.display.scale);return`${this.tileUrl}/${i[1]},${i[2]},${n},${r}/${a>this.tileWidth?this.tileWidth:a},/0/default.${this.format||"jpg"}`}getAllPointsAt(t,i,n){let r=or(this.crop||this.points,t);return[[this,r,i]]}transform(t){Zt(this.points,t)}getScheduledUpdates(t,i){return[]}},gP=class extends bn{constructor(){super(...arguments),P(this,"type","spacial-content")}getAllPointsAt(e,t,i){return[[this,this.points,t]]}},yP=class extends gP{constructor(e){super(),P(this,"id"),P(this,"display"),P(this,"points"),P(this,"images",[]),P(this,"allImages",[]),P(this,"scaleFactors",[]),P(this,"aggregateBuffer",re(9)),P(this,"lazyLoader"),P(this,"isFullyLoaded",!1),P(this,"maxScaleFactor",0),P(this,"renderOptions"),P(this,"_scheduleSortByScales",!1),P(this,"_sortByScales",()=>{this._scheduleSortByScales=!1,this.allImages.sort((i,n)=>n.display.width-i.display.width),this.images=[];let t=.1;for(let i of this.allImages)if(!(i.display.width<this.renderOptions.minSize&&i.display.height<this.renderOptions.minSize&&!i.priority||i instanceof cr&&(i.display.width>this.renderOptions.maxImageSize||i.display.height>this.renderOptions.maxImageSize)&&!i.priority)){if(Math.abs(i.display.scale-t)<.25||i.priority){let n=this.images.pop();n&&(n instanceof cr||n.priority)?(i.priority&&this.images.push(i),this.images.push(n)):i&&this.images.push(i)}else i&&this.images.push(i);t=i.display.scale}this.images.length===0&&(this.images=[...this.allImages]),this.scaleFactors=this.images.map(i=>i.display.scale),this.maxScaleFactor=Math.max(...this.scaleFactors)}),P(this,"loadFullResource",async()=>{if(!this.isFullyLoaded&&this.lazyLoader){this.isFullyLoaded=!0;let t=await this.lazyLoader();this.addImages(t)}}),P(this,"fallback",[this.loadFullResource]),this.id=e.id,this.points=xe.singleBox(e.width,e.height),this.lazyLoader=e.loadFullImages,e.loadFullImages||(this.isFullyLoaded=!0),this.display={x:0,y:0,points:xe.singleBox(e.width,e.height),height:e.height,width:e.width,scale:1},this.renderOptions={renderSmallestFallback:!0,renderLayers:2,minSize:255,maxImageSize:1024,quality:1.75,...e.renderOptions||{}},this.addImages(e.images)}applyProps(e){typeof e.renderSmallestFallback<"u"&&e.renderSmallestFallback!==this.renderOptions.renderSmallestFallback&&(this.renderOptions.renderSmallestFallback=e.renderSmallestFallback),typeof e.renderLayers<"u"&&e.renderLayers!==this.renderOptions.renderLayers&&(this.renderOptions.renderLayers=e.renderLayers),typeof e.minSize<"u"&&e.minSize!==this.renderOptions.minSize&&(this.renderOptions.minSize=e.minSize),typeof e.maxImageSize<"u"&&e.maxImageSize!==this.renderOptions.maxImageSize&&(this.renderOptions.maxImageSize=e.maxImageSize),typeof e.quality<"u"&&e.quality!==this.renderOptions.quality&&(this.renderOptions.quality=e.quality)}appendChild(e){this.addImages([e])}removeChild(e){this.images.indexOf(e)!==-1&&(this.images=this.images.filter(t=>t!==e),this.sortByScales())}insertBefore(e,t){this.addImages([e])}hideInstance(){}addImages(e){for(let t of e)t.__parent=this,t.__owner=this.__owner;this.allImages.push(...e.filter(Boolean)),this.sortByScales()}sortByScales(){this._scheduleSortByScales=!0}getScheduledUpdates(e,t){return this._scheduleSortByScales?[this._sortByScales]:this.isFullyLoaded?[]:t>1/this.maxScaleFactor?this.fallback:[]}getAllPointsAt(e,t,i){if(this.images.length===0)return[];let n=fP(1/(i||1)/(window.devicePixelRatio||1),this.images,this.renderOptions.quality),r=this.images.length,a=t?pi(t,ut(this.x,this.y)):ut(this.x,this.y);if(n!==this.images.length-1&&this.images[n+1]){let l=[];for(let m=r-1;m>=n;m--)l.push(m);let c=l[0];this.renderOptions.renderLayers&&(l=l.slice(-Math.min(l.length,this.renderOptions.renderLayers))),this.renderOptions.renderSmallestFallback&&l.indexOf(c)===-1&&l.unshift(c);let p=[];for(let m=0;m<l.length;m++)p.push(...this.images[l[m]].getAllPointsAt(e,a,i));return p}return this.images[n].getAllPointsAt(e,a,i)}};function au(e,t,i,n,r){let a=Math.PI/180*r,l=Math.cos(a),c=Math.sin(a),p=l*(i-e)+c*(n-t)+e,m=l*(n-t)-c*(i-e)+t;return[p,m]}var Op=class Dx extends bn{constructor(t,i){super(),P(this,"id"),P(this,"type","world-object"),P(this,"scale"),P(this,"layers"),P(this,"points"),P(this,"worldPoints"),P(this,"intersectionBuffer",re(5)),P(this,"aggregateBuffer",re(9)),P(this,"invertedBuffer",re(9)),P(this,"rotation",0),P(this,"filteredPointsBuffer"),P(this,"_updatedList",[]),P(this,"geometry");let{x:n=0,y:r=0}=i||{};t?(this.id=t.id||"",this.scale=1,this.layers=t.layers,this.points=re([1,n,r,n+t.width,r+t.height]),this.worldPoints=re([1,n,r,n+t.width,r+t.height]),this.filteredPointsBuffer=re(t.layers.length*5)):(this.id="",this.scale=1,this.layers=[],this.points=re(5),this.worldPoints=re(5),this.filteredPointsBuffer=re(5))}static createWithProps(t){let i=new Dx;return i.applyProps(t),i}applyProps(t){let i=t.x||0,n=t.y||0;this.id=t.id;let r=typeof t.scale<"u"?t.scale:this.scale;this.points[0]=1,this.points[1]=i,this.points[2]=n,this.points[3]=i+t.width,this.points[4]=n+t.height,this.rotation=t.rotation||0,this.worldPoints[3]=this.worldPoints[1]+t.width,this.worldPoints[4]=this.worldPoints[2]+t.height,t.scale&&t.scale!==1&&this.atScale(r),this.scale=r}appendChild(t){t.points[0]===0&&t.points.set(this.points),t.__owner.value=this,this.addLayers([t])}removeChild(t){this.layers=this.layers.filter(i=>i!==t),this.filteredPointsBuffer=re(this.layers.length*5)}insertBefore(t,i){let n=this.layers.indexOf(i);if(n===-1||this.layers.indexOf(t)!==-1)return;let r=this.layers.slice(0,n),a=this.layers.slice(n);this.layers=[...r,t,...a]}hideInstance(){console.warn("hideInstance: not yet implemented")}getObjectsAt(t,i){if(this.rotation&&(t=this.applyRotation(t)),or(this.points,t,this.filteredPointsBuffer)[0]===0)return[];let n=this.layers.length,r=[];for(let a=0;a<n;a++){let l=this.layers[a];if(i&&l.isShape){let c=bi(l.points,ut(this.x,this.y));if(!l.intersects([t[1]-c[1],t[2]-c[2]]))continue}if(or(bi(l.points,ut(this.x,this.y)),t,this.filteredPointsBuffer)[0]!==0&&r.push(l),i){let c=l;r.push(...c.getObjectsAt(t,i))}}return r}applyRotation(t){if(this.rotation){let i={x:t[1],y:t[2]},n={x:t[1],y:t[4]},r={x:t[3],y:t[2]},a={x:t[3],y:t[4]},l=this.points[1]+(this.points[3]-this.points[1])/2,c=this.points[2]+(this.points[4]-this.points[2])/2,[p,m]=au(l,c,i.x,i.y,this.rotation),[h,y]=au(l,c,n.x,n.y,this.rotation),[S,w]=au(l,c,r.x,r.y,this.rotation),[v,x]=au(l,c,a.x,a.y,this.rotation),A=Math.min(p,h,S,v),C=Math.max(p,h,S,v),I=Math.min(m,y,w,x),E=Math.max(m,y,w,x);return re([t[0],A,I,C,E])}return t}getAllPointsAt(t,i,n){let r=pi(ut(this.x,this.y),wi(this.scale),this.aggregateBuffer);this.rotation&&(t=this.applyRotation(t));let a=ky(t,this.points,this.intersectionBuffer),l=this.layers.length,c=[],p=bi(a,pi(wi(1/this.scale),ut(-this.x,-this.y),this.invertedBuffer)),m=i?pi(i,r,this.aggregateBuffer):r,h=n*this.scale;for(let y=0;y<l;y++)c.push(...this.layers[y].getAllPointsAt(p,m,h));return c}addLayers(t){let i=[];for(let n of t)this.layers.indexOf(n)===-1&&(i.push(n),n.points.length===5&&(n.points[1]<this.worldPoints[1]/this.scale||n.points[2]<this.worldPoints[2]/this.scale||n.points[3]>this.worldPoints[3]/this.scale||n.points[4]>this.worldPoints[4]/this.scale)&&(n.crop=n.crop||re([1,Math.max(this.worldPoints[1]/this.scale,n.points[1]),Math.max(this.worldPoints[2]/this.scale,n.points[2]),Math.min(this.worldPoints[3]/this.scale,n.points[3]),Math.min(this.worldPoints[4]/this.scale,n.points[4])])));this.layers=this.layers.concat(i),this.filteredPointsBuffer=re(this.layers.length*5)}getScheduledUpdates(t,i){let n=this.layers.length;this._updatedList=[];let r=i*this.scale;for(let a=0;a<n;a++){let l=this.layers[a].getScheduledUpdates(t,r);l&&this._updatedList.push(...l)}return this._updatedList}},Pu=class jx extends bn{constructor(t=0,i=0,n=100,r="left-to-right"){super(),P(this,"id","world"),P(this,"_width"),P(this,"_height"),P(this,"aspectRatio"),P(this,"viewingDirection"),P(this,"aggregateBuffer",re(9)),P(this,"isDirty",!1),P(this,"zones",[]),P(this,"filteredPointsBuffer"),P(this,"selectedZone"),P(this,"triggerQueue",[]),P(this,"activatedEvents",[]),P(this,"_updatedList",[]),P(this,"translationBuffer",re(9)),P(this,"needsRecalculate",!0),P(this,"emptyPaintables",[]),P(this,"renderOrder",[]),P(this,"points"),P(this,"objects",[]),P(this,"subscriptions",[]),P(this,"_propagateEventTargets",[]),P(this,"_alreadyFlushed",[]),this._width=t,this._height=i,this.aspectRatio=Number.isNaN(t/i)?1:t/i,this.viewingDirection=r,this.points=re(n*5),this.filteredPointsBuffer=re(n*5)}get x(){return 0}get y(){return 0}get width(){return this._width}get height(){return this._height}static withProps(t){let i=new jx;return i.applyProps(t),i}applyProps(t){typeof t.width<"u"&&typeof t.height<"u"&&(t.width!==this._width||t.height!==this._height)&&this.resize(t.width,t.height),t.viewingDirection!==this.viewingDirection&&(this.viewingDirection=t.viewingDirection,this.triggerRepaint())}propagateTouchEvent(t,i,n){let r=[];for(let a of n)if(a.x&&a.y){let l=xe.singleBox(1,1,a.x,a.y);r.push(this.getObjectsAt(l,!0).reverse())}return r.map(a=>this.propagateEvent(t,i,a,{bubbles:!0,cancelable:!0}))}propagatePointerEvent(t,i,n,r,a={}){let l=xe.singleBox(1,1,n,r),c=this.getObjectsAt(l,!0).reverse();return this.propagateEvent(t,i,c,a)}propagateEvent(t,i,n,{bubbles:r=!1,cancelable:a=!1}={}){i.atlasTarget=this,this._propagateEventTargets.length=1,this._propagateEventTargets[0]=this;let l=!1;i.stopPropagation=()=>{l=!0};let c=n.length;for(let h=c-1;h>=0;h--){this._propagateEventTargets.unshift(n[h][0]);let y=n[h][1].length;if(y)for(let S=0;S<y;S++)this._propagateEventTargets.unshift(n[h][1][S])}let p=this._propagateEventTargets.length,m=!1;for(let h=0;h<p&&(i.atlasTarget=this._propagateEventTargets[h],i.atlasWorld=this,m=this._propagateEventTargets[h].dispatchEvent(t,i)||m,!l);h++);return m&&this.triggerRepaint(),this._propagateEventTargets}appendChild(t){let i=this.appendWorldObject(t);this.renderOrder.push(i/5)}removeChild(t){let i=this.objects.indexOf(t);if(i===-1){for(let n of this.objects)if(n&&n.id===t.id){this.removeChild(n);return}return}this.objects[i]=null,this.renderOrder=this.renderOrder.filter(n=>n!==i),this.points[i*5]=0,this.triggerRepaint(),this.needsRecalculate=!0}insertBefore(t,i){let n=this.objects.indexOf(i);if(n===-1)return;let r=this.appendWorldObject(t);this.renderOrder.splice(n-1,0,r/5)}hideInstance(){}asWorldObject(){return null}addZone(t){this.zones.push(t)}selectZone(t){if(typeof t=="string"){let i=this.zones.length;for(let n=0;n<i;n++)if(this.zones[n].id===t){this.selectedZone=n,this.trigger("zone-changed");return}}else this.zones[t]&&(this.selectedZone=t,this.trigger("zone-changed"))}deselectZone(){this.selectedZone=void 0}getActiveZone(){if(this.selectedZone)return this.zones[this.selectedZone]}hasActiveZone(){return typeof this.selectedZone<"u"}checkResizeInternalBuffer(){if(Oy(this.points)===this.objects.length){let t=this.points,i=re(this.points.length*2);i.set(t,0),this.points=i}}appendWorldObject(t){this.checkResizeInternalBuffer();let i=this.objects.length*5,n=t.points;return t.points=this.points.subarray(this.objects.length*5,this.objects.length*5+5),t.points[1]=n[1],t.points[2]=n[2],t.points[3]=n[3],t.points[4]=n[4],this.objects.push(t),this.filteredPointsBuffer=re(this.objects.length*5),this.needsRecalculate=!0,this.triggerRepaint(),i}recalculateWorldSize(){let t=!1;if(this.needsRecalculate){let i=new Int32Array(this.objects.length),n=new Int32Array(this.objects.length),r=this.renderOrder.length;for(let c=0;c<r;c++){let p=this.renderOrder[c];this.objects[p]&&(i[c]=this.points[p*5+3],n[c]=this.points[p*5+4])}let a=Math.max(...i);a!==this._width&&(this._width=a,t=!0);let l=Math.max(...n);l!==this._height&&(this._height=l,t=!0),t&&this.trigger("recalculate-world-size",{width:a,height:l}),this.needsRecalculate=!1}return t}addObjectAt(t,i){i.width&&!i.height?i.height=i.width/t.width*t.height:i.height&&!i.width&&(i.width=i.height/t.height*t.width),(!i||!i.width||!i.height)&&(i.width=t.width,i.height=t.height);let{width:n,x:r,y:a}=i,l=n/t.width;this.checkResizeInternalBuffer(),this.points.set(xe.singleBox(t.width,t.height,0,0),this.objects.length*5);let c=new Op(t);return c.points=this.points.subarray(this.objects.length*5,this.objects.length*5+5),this.objects.push(c),this.scaleWorldObject(this.objects.length-1,l),this.translateWorldObject(this.objects.length-1,r,a),this.filteredPointsBuffer=re(this.points.length*2),this.triggerRepaint(),this.needsRecalculate=!0,c}scaleWorldObject(t,i){Zt(this.points.subarray(t*5,t*5+5),On(i,this.points[t*5+1],this.points[t*5+2]));let n=this.objects[t];n&&(n.atScale(i),this.triggerRepaint())}translateWorldObject(t,i,n){Zt(this.points.subarray(t*5,t*5+5),ut(i,n));let r=this.objects[t];r&&(r.translate(i,n),this.triggerRepaint())}resize(t,i){return this._width=t,this._height=i,this.aspectRatio=t/i,this.triggerRepaint(),this}getObjects(){return this.objects}getPoints(){return this.points}getPointsFromViewer(t,i){let n=xe.singleBox(t.width,t.height,t.x,t.y);return this.getPointsAt(n,i,t.scale)}addLayoutSubscriber(t){return this.subscriptions.push(t),()=>{this.subscriptions.splice(this.subscriptions.indexOf(t),1)}}getScheduledUpdates(t,i){let n=or(this.points,t,this.filteredPointsBuffer),r=this.objects.length;this._updatedList=[];for(let a=0;a<r;a++)if(n[a*5]!==0){if(!this.objects[a])continue;this._updatedList.push(...this.objects[a].getScheduledUpdates(t,i))}return this._updatedList}getObjectsAt(t,i=!1){let n=this.getActiveZone(),r=or(this.points,t,this.filteredPointsBuffer),a=this.renderOrder.length,l=[];for(let c=0;c<a;c++){let p=this.renderOrder[c];if(r[p*5]!==0){let m=this.objects[p];if(!m||n&&n.objects.indexOf(m)===-1)continue;if(m.type!=="world-object"){l.push([m,[m]]);continue}i?l.push([m,m.getObjectsAt(t,i)]):l.push([m,this.emptyPaintables])}}return l}getPointsAt(t,i,n=1){let r=this.getObjectsAt(t),a=pi(wi(n),ut(-t[1],-t[2]),this.translationBuffer),l=i?pi(i,a,this.aggregateBuffer):a,c=r.length,p=[];for(let m=0;m<c;m++)r[m]&&p.push(...r[m][0].getAllPointsAt(t,l,n));return p}flushSubscriptions(){if(this.triggerQueue.length){this._alreadyFlushed=[];let t=this.triggerQueue.length;for(let i=0;i<t;i++){if(this._alreadyFlushed.indexOf(this.triggerQueue[i][0])!==-1)continue;typeof this.triggerQueue[i][1]>"u"&&this._alreadyFlushed.push(this.triggerQueue[i][0]);let n=this.subscriptions.length;for(let r=0;r<n;r++)this.subscriptions[r].apply(null,this.triggerQueue[i])}this.triggerQueue=[]}}trigger(t,i){this.triggerQueue.push([t,i])}triggerEventActivation(){this.trigger("event-activation")}triggerRepaint(){this.trigger("repaint")}gotoRegion(t){this.trigger("goto-region",t)}goHome(t=!1){this.trigger("go-home",{immediate:t})}zoomTo(t,i,n){this.trigger("zoom-to",{point:i,factor:t,stream:n})}zoomIn(t){this.trigger("zoom-to",{point:t,factor:.5})}zoomOut(t){this.trigger("zoom-to",{point:t,factor:2})}constraintBounds(t){this.trigger("constrain-bounds",{immediate:t})}};var lu=/([0-9]+(px|em)\s+)+(solid)\s+(.*)/g,uu={},vP=["backgroundColor","opacity","boxShadow","borderColor","borderWidth","borderStyle","outlineColor","outlineWidth","outlineOffset","outlineStyle"],Qs=class extends bn{constructor(){super(),P(this,"id"),P(this,"type","spacial-content"),P(this,"points"),P(this,"hoverEvents",!1),P(this,"activeEvents",!1),P(this,"display",{x:0,y:0,scale:1,width:-1,height:-1,points:re(5)}),P(this,"_parsed",{border:{id:null,match:[]},outline:{id:null,match:[]}}),P(this,"hovering"),P(this,"pressing"),P(this,"props",{}),P(this,"addHover",()=>{this.hovering=!0,this.__revision++}),P(this,"removeHover",()=>{this.hovering=!1,this.pressing=!1,this.__revision++}),P(this,"addPress",()=>{this.pressing=!0,this.__revision++}),P(this,"removePress",()=>{this.pressing=!1,this.__revision++}),this.id=Cu(12),this.points=re(5)}getAllPointsAt(e,t){return[[this,this.points,t]]}applyProps(e={}){let t=!1;if(e.interactive!==this.props.interactive&&(t=!0,this.props.interactive=e.interactive),e.style){let i=e.border||e.style.border;if(i!==this._parsed.border.id)if(!i)this._parsed.border.id=null,this._parsed.border.match=[];else{let n=uu[i]||lu.exec(i)||lu.exec(i);n&&(this._parsed.border.id=i,this._parsed.border.match=uu[i]=n)}if(this._parsed.border.id&&(e.style.borderWidth=this._parsed.border.match[1],e.style.borderStyle="solid",e.style.borderColor=this._parsed.border.match[4]),e.style.outline!==this._parsed.outline.id)if(!e.style.outline)this._parsed.outline.id=null,this._parsed.outline.match=[];else{let n=uu[e.style.outline]||lu.exec(e.style.outline)||lu.exec(e.style.outline);n&&(this._parsed.outline.id=e.style.outline,this._parsed.outline.match=uu[e.style.outline]=n)}this._parsed.outline.id&&(e.style.outlineWidth=this._parsed.outline.match[1],e.style.outlineStyle="solid",e.style.outlineColor=this._parsed.outline.match[4]),this.props.style=e.style,e.backgroundColor&&!this.props.style.backgroundColor&&(this.props.style.backgroundColor=e.backgroundColor,t=!0),e.style.background&&!this.props.style.backgroundColor&&(this.props.style.backgroundColor=e.style.background,t=!0);for(let n of vP)if(this.props.style[n]!==e.style[n]){t=!0;break}e.style[":hover"]!==this.props.hoverStyles&&(this.props.hoverStyles=e.style[":hover"],this.hoverEvents||(this.hoverEvents=!0,this.addEventListener("pointerenter",this.addHover),this.addEventListener("pointerleave",this.removeHover)),t=!0),e.style[":active"]!==this.props.pressStyles&&(this.props.pressStyles=e.style[":active"],this.activeEvents||(this.activeEvents=!0,this.addEventListener("mousedown",this.addPress),this.addEventListener("mouseup",this.removePress)),t=!0)}e.href!==this.props.href&&(this.props.href=e.href,t=!0),e.hrefTarget!==this.props.hrefTarget&&(this.props.hrefTarget=e.hrefTarget,t=!0),e.title!==this.props.title&&(this.props.title=e.title,t=!0),e.className!==this.props.className&&(this.props.className=e.className,e.className&&!this.hoverEvents&&(this.hoverEvents=!0,this.addEventListener("pointerenter",this.addHover),this.addEventListener("pointerleave",this.removeHover)),e.className&&!this.activeEvents&&(this.activeEvents=!0,this.addEventListener("mousedown",this.addPress),this.addEventListener("mouseup",this.removePress)),t=!0),e.relativeSize!==this.props.relativeSize&&(this.props.relativeSize=e.relativeSize,t=!0),e.relativeStyle!==this.props.relativeStyle&&(this.props.relativeStyle=e.relativeStyle,t=!0),e.html!==this.props.html&&(this.props.html=e.html,t=!0),e.target&&(e.target.width!==this.display.width||e.target.height!==this.display.height||e.target.x!==this.points[1]||e.target.y!==this.points[2])&&(t=!0,this.points=xe.singleBox(e.target.width,e.target.height,e.target.x,e.target.y),this.display.points=xe.singleBox(e.target.width,e.target.height,e.target.x,e.target.y),this.display.width=e.target.width,this.display.height=e.target.height),t&&this.__revision++}},gu=class extends bn{constructor(){super(),P(this,"type","spacial-content"),P(this,"id"),P(this,"points"),P(this,"color","#000"),P(this,"backgroundColor"),P(this,"hovering"),P(this,"pressing"),P(this,"text",""),P(this,"display",{x:0,y:0,scale:1,width:100,height:100,points:re(5)}),P(this,"className"),P(this,"html"),P(this,"interactive",!1),P(this,"props",{font:"18px Arial, sans-serif",lineHeight:1,textAlign:"left",verticalAlign:"top",paddingX:0,paddingY:0,fitParent:!1,lineBreak:"auto",strokeText:!1,sizeToFill:!1,maxFontSizeToFill:void 0,allowNewLine:!0,justifyLines:!1,renderHDPI:!1,textDecoration:"none",interactive:!1,relativeSize:!1}),this.id="",this.points=re(5)}getAllPointsAt(e,t){return[[this,this.points,t]]}applyProps({id:e,target:t,text:i,color:n,backgroundColor:r,fontSize:a=18,interactive:l,fontFamily:c="Arial, sans-serif",...p}){p.font=`${a}px ${c}`,this.interactive=l||!1,typeof i<"u"&&(this.text=i||""),n&&(this.color=n),r&&(this.backgroundColor=r),e&&(this.id=e),t&&(this.points=xe.singleBox(t.width,t.height,t.x,t.y),this.display.points=this.points,this.display.width=t.width,this.display.height=t.height),this.props={...this.props,...p},this.__revision++}},ct=Math.pow,cu=Math.sqrt,Hs=Math.sin,Px=Math.cos,$s=Math.PI,xu=1.70158,du=xu*1.525,Ex=xu+1,Ax=2*$s/3,Ix=2*$s/4.5,hu=function(e){return e<1/2.75?7.5625*e*e:e<2/2.75?7.5625*(e-=1.5/2.75)*e+.75:e<2.5/2.75?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375},ur={linear:e=>e,easeInQuad:function(e){return e*e},easeOutQuad:function(e){return 1-(1-e)*(1-e)},easeInOutQuad:function(e){return e<.5?2*e*e:1-ct(-2*e+2,2)/2},easeInCubic:function(e){return e*e*e},easeOutCubic:function(e){return 1-ct(1-e,3)},easeInOutCubic:function(e){return e<.5?4*e*e*e:1-ct(-2*e+2,3)/2},easeInQuart:function(e){return e*e*e*e},easeOutQuart:function(e){return 1-ct(1-e,4)},easeInOutQuart:function(e){return e<.5?8*e*e*e*e:1-ct(-2*e+2,4)/2},easeInQuint:function(e){return e*e*e*e*e},easeOutQuint:function(e){return 1-ct(1-e,5)},easeInOutQuint:function(e){return e<.5?16*e*e*e*e*e:1-ct(-2*e+2,5)/2},easeInSine:function(e){return 1-Px(e*$s/2)},easeOutSine:function(e){return Hs(e*$s/2)},easeInOutSine:function(e){return-(Px($s*e)-1)/2},easeInExpo:function(e){return e===0?0:ct(2,10*e-10)},easeOutExpo:function(e){return e===1?1:1-ct(2,-10*e)},easeInOutExpo:function(e){return e===0?0:e===1?1:e<.5?ct(2,20*e-10)/2:(2-ct(2,-20*e+10))/2},easeInCirc:function(e){return 1-cu(1-ct(e,2))},easeOutCirc:function(e){return cu(1-ct(e-1,2))},easeInOutCirc:function(e){return e<.5?(1-cu(1-ct(2*e,2)))/2:(cu(1-ct(-2*e+2,2))+1)/2},easeInBack:function(e){return Ex*e*e*e-xu*e*e},easeOutBack:function(e){return 1+Ex*ct(e-1,3)+xu*ct(e-1,2)},easeInOutBack:function(e){return e<.5?ct(2*e,2)*((du+1)*2*e-du)/2:(ct(2*e-2,2)*((du+1)*(e*2-2)+du)+2)/2},easeInElastic:function(e){return e===0?0:e===1?1:-ct(2,10*e-10)*Hs((e*10-10.75)*Ax)},easeOutElastic:function(e){return e===0?0:e===1?1:ct(2,-10*e)*Hs((e*10-.75)*Ax)+1},easeInOutElastic:function(e){return e===0?0:e===1?1:e<.5?-(ct(2,20*e-10)*Hs((20*e-11.125)*Ix))/2:ct(2,-20*e+10)*Hs((20*e-11.125)*Ix)/2+1},easeInBounce:function(e){return 1-hu(1-e)},easeOutBounce:hu,easeInOutBounce:function(e){return e<.5?(1-hu(1-2*e))/2:(1+hu(2*e-1))/2}},xP=class{constructor(e){P(this,"runtime"),P(this,"pendingTransition"),this.runtime=e,this.pendingTransition={from:re(5),to:re(5),elapsed_time:0,done:!0,total_time:0,timingFunction:ur.easeInOutQuad,constrain:!1}}hasPending(){return!this.pendingTransition.done}getPendingTransition(){return this.pendingTransition}getPendingFrom(){return this.pendingTransition.from}customTransition(e){e(this.pendingTransition)}stopTransition(){this.pendingTransition.from=re(this.runtime.target),this.pendingTransition.to=re(this.runtime.target),this.pendingTransition.done=!0,this.pendingTransition.elapsed_time=0,this.pendingTransition.total_time=0}runTransition(e,t){if(!this.pendingTransition.done){let i=this.pendingTransition,n=i.total_time===0?0:(i.elapsed_time+t)/i.total_time,r=i.total_time===0?1:n===0?0:i.timingFunction(n);e[1]=i.from[1]+(i.to[1]-i.from[1])*r,e[2]=i.from[2]+(i.to[2]-i.from[2])*r,e[3]=i.from[3]+(i.to[3]-i.from[3])*r,e[4]=i.from[4]+(i.to[4]-i.from[4])*r,this.pendingTransition.elapsed_time+=t,this.pendingTransition.elapsed_time>=this.pendingTransition.total_time&&(this.pendingTransition.done=!0,this.pendingTransition.constrain&&this.constrainBounds({transition:{duration:this.pendingTransition.total_time===0?0:500,easing:ur.easeOutExpo}}))}}zoomTo(e,{origin:t,stream:i=!1,transition:n}={}){let r=this.runtime.getZoomedPosition(e,{origin:t}),a=Math.abs(1-e);this.applyTransition(r,n,{duration:2e3*a,easing:ur.easeOutExpo,constrain:!0},{stream:!1})}constrainBounds({transition:e,panPadding:t=0}={}){let[i,n]=this.runtime.constrainBounds(this.runtime.target,{panPadding:t});i&&(this.applyTransition(n,e,{duration:500,easing:ur.easeOutQuart,constrain:!1}),this.runtime.updateNextFrame())}applyTransition(e,t,i,{stream:n}={}){this.pendingTransition.from=re(this.runtime.target),this.pendingTransition.to=e,n||(this.pendingTransition.elapsed_time=0),this.pendingTransition.done=!1,this.pendingTransition.total_time=typeof t?.duration<"u"?t.duration:typeof i?.duration<"u"?i.duration:1e3,this.pendingTransition.constrain=typeof t?.constrain<"u"?t.constrain:typeof i?.constrain<"u"?i.constrain:!1,this.pendingTransition.timingFunction=t?.easing||i?.easing||ur.easeInOutSine}goToRegion(e,{transition:t}={}){let i=this.runtime.clampRegion(e);this.applyTransition(xe.singleBox(i.width,i.height,i.x,i.y),t,{duration:1e3,easing:ur.easeOutExpo,constrain:!0}),this.runtime.updateNextFrame()}},c_=Number.MIN_VALUE+1,Eu=class{constructor(e,t,i,n=[],r){P(this,"id",Cu()),P(this,"ready",!1),P(this,"renderer"),P(this,"world"),P(this,"target"),P(this,"homePosition"),P(this,"manualHomePosition"),P(this,"manualFocalPosition"),P(this,"focalPosition"),P(this,"transitionManager"),P(this,"aggregate"),P(this,"transformBuffer",re(500)),P(this,"lastTarget",re(5)),P(this,"zoomBuffer",re(5)),P(this,"logNextRender",!1),P(this,"pendingUpdate",!0),P(this,"isCommitting",!1),P(this,"firstRender",!0),P(this,"lastTime"),P(this,"stopId"),P(this,"mode","explore"),P(this,"controllers",[]),P(this,"controllersRunning",!1),P(this,"controllerStopFunctions",[]),P(this,"maxScaleFactor",1),P(this,"_viewerToWorld",{x:0,y:0}),P(this,"_lastGoodScale",1),P(this,"hooks",{useFrame:[],useBeforeFrame:[],useAfterPaint:[],useAfterFrame:[]}),P(this,"fpsLimit"),P(this,"options"),P(this,"hookOptions",{filters:{grayscale:0,contrast:0,brightness:0,saturate:0,sepia:0,invert:0,hueRotate:0,blur:0}}),P(this,"_viewport",{x:0,y:0,width:0,height:0}),P(this,"setViewport",a=>{let l=Math.round(typeof a.x>"u"?this.target[1]:a.x),c=Math.round(typeof a.y>"u"?this.target[2]:a.y);a.width?this.target[3]=l+a.width:this.target[3]=this.target[3]-this.target[1]+l,a.height?this.target[4]=c+a.height:this.target[4]=this.target[4]-this.target[2]+c,Math.abs(this.target[1]-l)>.01&&(this.target[1]=l),Math.abs(this.target[2]-c)>.01&&(this.target[2]=c),this.pendingUpdate=!0}),P(this,"render",a=>{let l=a-this.lastTime;if(this.isCommitting||this.fpsLimit&&l<1e3/this.fpsLimit){this.stopId=window.requestAnimationFrame(this.render);return}this.lastTime=a,this.world.flushSubscriptions(),this.stopId=window.requestAnimationFrame(this.render),this.hook("useFrame",l);let c=this.pendingUpdate,p=this.renderer.pendingUpdate();if(this.transitionManager.hasPending()&&(this.transitionManager.runTransition(this.target,l),this.pendingUpdate=!0,this.updateControllerPosition()),!this.firstRender&&!c&&!p&&this.target[0]===this.lastTarget[0]&&this.target[1]===this.lastTarget[1]&&this.target[2]===this.lastTarget[2]&&this.target[3]===this.lastTarget[3]&&this.target[4]===this.lastTarget[4])return;this.hook("useBeforeFrame",l),this.renderer.beforeFrame(this.world,l,this.target,this.hookOptions);let m=this.getScaleFactor(),h=this.renderer.getPointsAt(this.world,this.target,this.aggregate,m),y=h.length;for(let v=0;v<y;v++){let x=h[v][0],A=h[v][1],C=h[v][2],I=C?bi(A,C,this.transformBuffer):A;this.renderer.prepareLayer(x,x.__parent&&C?bi(x.__parent.crop||x.__parent.points,C):I);let E=I.length/5;for(let L=0;L<E;L++){let z=L*5;I[z]!==0&&(this.renderer.paint(x,L,I[z+1],I[z+2],I[z+3]-I[z+1],I[z+4]-I[z+2]),this.hook("useAfterPaint",x))}this.renderer.finishLayer(x,A)}this.renderer.afterFrame(this.world,l,this.target,this.hookOptions),this.hook("useAfterFrame",l),this.lastTarget[0]=this.target[0],this.lastTarget[1]=this.target[1],this.lastTarget[2]=this.target[2],this.lastTarget[3]=this.target[3],this.lastTarget[4]=this.target[4],this.firstRender=!1,this.pendingUpdate=!1,this.logNextRender=!1,this.renderer.isReady()&&(this.ready=!0,this.world.trigger("ready")),this.world.flushSubscriptions();let S=this.world.getScheduledUpdates(this.target,m),w=S.length;if(w>0)for(let v=0;v<w;v++){let x=S[w-v-1]();x?x.then(()=>{this.pendingUpdate=!0}):this.pendingUpdate=!0}}),this.renderer=e,this.world=t,this.options={maxOverZoom:1,maxUnderZoom:1,visibilityRatio:1.5,...r||{}},this.target=xe.projection(i),this.manualHomePosition=!1,this.pendingUpdate=!0,this.homePosition=xe.projection(this.world),this.manualFocalPosition=!1,this.focalPosition=this.target,this.updateFocalPosition(),this.transitionManager=new xP(this),this.aggregate=wi(1),this.world.addLayoutSubscriber(a=>{a==="repaint"&&(this.pendingUpdate=!0),a==="recalculate-world-size"&&(this.manualHomePosition||(this.setHomePosition(),this.goHome()),this.updateFocalPosition())}),this.lastTime=performance.now(),this.controllers=n,this.render(this.lastTime),this.startControllers()}get x(){return this.target[1]}set x(e){this.target[1]=e}get y(){return this.target[2]}set y(e){this.target[2]=e}get x2(){return this.target[3]}set x2(e){this.target[3]=e}get y2(){return this.target[4]}set y2(e){this.target[4]=e}get width(){return this.target[3]-this.target[1]}set width(e){this.target[3]=this.target[1]+e}get height(){return this.target[4]-this.target[2]}set height(e){this.target[4]=this.target[2]=e}setHomePosition(e){this.homePosition.set(xe.projection(e||this.world)),this.pendingUpdate=!0}startControllers(){if(!this.controllersRunning){for(let e of this.controllers)this.controllerStopFunctions.push(e.start(this));this.controllersRunning=!0}}stopControllers(){if(this.controllersRunning){for(let e of this.controllerStopFunctions)e();this.controllersRunning=!1,this.controllerStopFunctions=[]}}updateControllerPosition(){for(let e of this.controllers)e.updatePosition(this.x,this.y,this.width,this.height)}triggerResize(){this.renderer.triggerResize&&this.renderer.triggerResize(),this.pendingUpdate=!0}addController(e){this.controllers.push(e),this.controllersRunning&&e.start(this),this.pendingUpdate=!0}cover(){return this.goHome({cover:!0})}getRendererScreenPosition(){return this.renderer.getRendererScreenPosition()}updateRendererScreenPosition(){this.pendingUpdate=!0,this.renderer.resize()}setOptions(e){this.options={...this.options,...e}}goHome(e={}){if(this.world.width<=0||this.world.height<=0)return;let t=this.getScaleFactor(),i=e.position?{x:e.position[1],y:e.position[2],width:e.position[3]-e.position[1],height:e.position[4]-e.position[2]}:{x:this.homePosition[1],y:this.homePosition[2],width:this.homePosition[3]-this.homePosition[1],height:this.homePosition[4]-this.homePosition[2]},n=this.width*t,r=this.height*t,a=i.width/n,l=i.height/r,c=n/r;if(e.cover?a>l:a<l){let p=c*i.height,m=(p-i.width)/2;this.target[1]=Math.round(-m+i.x),this.target[2]=Math.round(i.y),this.target[3]=Math.round(p-m+i.x),this.target[4]=Math.round(i.height+i.y)}else{let p=i.width/c,m=(p-i.height)/2;this.target[1]=Math.round(i.x),this.target[2]=Math.round(i.y-m),this.target[3]=Math.round(i.x+i.width),this.target[4]=Math.round(i.y+p-m)}this.constrainBounds(this.target),this.updateControllerPosition()}resize(e,t,i,n){this.updateFocalPosition(e-t,i-n);let r=t/e,a=n/i;this.target[3]=this.target[1]+(this.target[3]-this.target[1])*r,this.target[4]=this.target[2]+(this.target[4]-this.target[2])*a,this.goHome({position:this.focalPosition}),this.renderer.resize(t,n),this.pendingUpdate=!0}updateFocalPosition(e,t){if(!this.manualFocalPosition){let i=this.width,n=this.height,r=Math.min(i,n),a=0,l=0,c=this.x+a,p=this.y+l;if(i<n){let m=this.height-this.width;this.focalPosition=xe.projection({x:c,y:p+m/2,width:r-a*2,height:r-l*2}),this.pendingUpdate=!0}else{let m=this.width-this.height;this.focalPosition=xe.projection({x:c+m/2,y:p,width:r-a*2,height:r-l*2}),this.pendingUpdate=!0}}}getViewport(){return this._viewport.x=this.target[1],this._viewport.y=this.target[2],this._viewport.width=this.target[3]-this.target[1],this._viewport.height=this.target[4]-this.target[2],this._viewport}constrainBounds(e,{panPadding:t=0,ref:i=!1}={}){let{minX:n,maxX:r,minY:a,maxY:l}=this.getBounds({target:e,padding:t}),c=!1,p=i?e:re(e),m=Math.round(e[3]-e[1]),h=Math.round(e[4]-e[2]);return n>e[1]&&(c=!0,p[1]=n,p[3]=n+m),a>e[2]&&(c=!0,p[2]=a,p[4]=a+h),r<e[1]&&(c=!0,p[1]=r,p[3]=r+m),l<e[2]&&(c=!0,p[2]=l,p[4]=l+h),[c,p]}getBounds(e){let t=e.target||this.target,i=e.padding,n=this.options.visibilityRatio,r=Math.abs(1-n);if(this.world.hasActiveZone()){let C=this.world.getActiveZone();if(C){let I=t[3]-t[1]<C.points[3]-C.points[1],E=t[4]-t[2]<C.points[4]-C.points[2];return{minX:I?C.points[1]-i:C.points[1]+(C.points[3]-C.points[1])/2-(t[3]-t[1])/2,maxX:E?C.points[2]-i:C.points[2]+(C.points[4]-C.points[2])/2-(t[4]-t[2])/2,minY:I?C.points[3]+i:C.points[1]+(C.points[3]-C.points[1])/2-(t[3]-t[1])/2,maxY:E?C.points[4]+i:C.points[2]+(C.points[4]-C.points[2])/2-(t[4]-t[2])/2}}}let a=t[3]-t[1],l=this.world.width,c=-a*r,p=l-a-c,m=t[4]-t[2],h=this.world.height,y=-m*r,S=h-m-y,w=Math.round(Math.max(c,p)),v=Math.round(Math.min(c,p)),x=Math.round(Math.max(y,S)),A=Math.round(Math.min(y,S));return{minX:v,maxX:w,minY:A,maxY:x}}getScaleFactor(e=!1){let t=this.renderer.getScale(this.target[3]-this.target[1],this.target[4]-this.target[2],e);return t===0?this._lastGoodScale:(this._lastGoodScale=t,t)}getZoomedPosition(e,{origin:t,fromPos:i}){let n=i?{width:i[3]-i[1],height:i[4]-i[2]}:void 0,r=n?this.renderer.getScale(n.width,n.height):this.getScaleFactor(),a=n?n.width:this.width,l=n?n.height:this.height,c=this.getRendererScreenPosition()?.width,p=this.world.width,m=c?c/p:1,h=this.options.maxUnderZoom,y=Math.max(m||1,this.options.maxOverZoom),S=1/e,w=r*S;if(S<1){let x=a*r,A=l*r,C=this.world.width/x,I=this.world.height/A;if(C>I){let E=this.world.width*w,L=~~(a*r)*h;E<L&&(e=this.world.width*r/(a*r*h))}else{let E=this.world.height*w,L=~~(l*r)*h;E<L&&(e=this.world.height*r/(l*r*h))}}else w>y&&(e=r/y);let v=bi(this.target,On(e,t?t.x:this.target[1]+(this.target[3]-this.target[1])/2,t?t.y:this.target[2]+(this.target[4]-this.target[2])/2),this.zoomBuffer);return this.constrainBounds(v,{ref:!0,panPadding:100}),v}clampRegion({x:e,y:t,width:i,height:n,padding:r=0}){let a=this.width,l=this.height,c=i/a<n/l,p=e-r,m=t-r,h=i+r*2,y=n+r*2;if(c){let w=y/l*a;return{x:p-(w-h)/2,y:m,width:w,height:y}}let S=h/a*l;return{x:p,y:m-(S-y)/2,width:h,height:S}}viewerToWorld(e,t){let i=this.getScaleFactor();return this._viewerToWorld.x=this.target[1]+e/i,this._viewerToWorld.y=this.target[2]+t/i,this._viewerToWorld}worldToViewer(e,t,i,n){let r=xe.singleBox(i,n,e,t);return Zt(r,pi(wi(this.getScaleFactor()),ut(-this.target[1],-this.target[2]))),{x:r[1],y:r[2],width:r[3]-r[1],height:r[4]-r[2],strand:r}}setScale(e,t){Zt(this.target,On(e,t?t.x:this.target[1]+(this.target[3]-this.target[1])/2,t?t.y:this.target[2]+(this.target[4]-this.target[2])/2)),this.pendingUpdate=!0}syncTo(e){let t=this.target;return this.target=e.target,this.pendingUpdate=!0,()=>{this.target=t}}stop(){return typeof this.stopId<"u"&&(window.cancelAnimationFrame(this.stopId),this.stopId=void 0),()=>{this.render(performance.now())}}reset(){this.renderer.reset()}selectZone(e){this.world.selectZone(e),this.pendingUpdate=!0}deselectZone(){this.world.deselectZone(),this.pendingUpdate=!0}hook(e,t){let i=this.hooks[e].length;if(i!==0)for(let n=0;n<i;n++)this.hooks[e][n](t)}registerHook(e,t){return this.hooks[e].push(t),()=>{this.hooks[e]=this.hooks[e].filter(i=>i!==t)}}updateNextFrame(){this.pendingUpdate=!0}},pu=/([0-9]+(px|em)\s+)+(solid)\s+(.*)/g,fu={},SP=["backgroundColor","opacity","boxShadow","borderColor","borderWidth","borderStyle","outlineColor","outlineWidth","outlineOffset","outlineStyle"],Vx=class extends bn{constructor(){super(),P(this,"id"),P(this,"type","spacial-content"),P(this,"isShape",!0),P(this,"points"),P(this,"hoverEvents",!1),P(this,"activeEvents",!1),P(this,"display",{x:0,y:0,scale:1,width:-1,height:-1,points:re(5)}),P(this,"boundingBox",null),P(this,"_parsed",{border:{id:null,match:[]},outline:{id:null,match:[]}}),P(this,"hovering"),P(this,"pressing"),P(this,"props",{}),P(this,"shape",{type:"none"}),P(this,"addHover",()=>{this.hovering=!0,this.__revision++}),P(this,"removeHover",()=>{this.hovering=!1,this.pressing=!1,this.__revision++}),P(this,"addPress",()=>{this.pressing=!0,this.__revision++}),P(this,"removePress",()=>{this.pressing=!1,this.__revision++}),this.id=Cu(12),this.points=re(5),this.shape={type:"none"}}updateBoundingBox(){if(this.shape.type==="none")return;let e=this.shape.points;if(this.shape.points.length>2){let t=Math.min(...e.map(a=>a[0])),i=Math.min(...e.map(a=>a[1])),n=Math.max(0,...e.map(a=>a[0])),r=Math.max(0,...e.map(a=>a[1]));this.boundingBox={x:t,y:i,width:n-t,height:r-i};return}this.boundingBox=null}intersects(e){if(!e||this.shape.type==="none")return!1;let[t,i]=e,n=this.shape.points,r=this.boundingBox;if(r||(this.updateBoundingBox(),r=this.boundingBox),!r||t<r.x||t>r.x+r.width||i<r.y||i>r.height+r.y)return!1;let a=!1;for(let l=0,c=n.length-1;l<n.length;c=l++)n[l][1]>i!=n[c][1]>i&&t<(n[c][0]-n[l][0])*(i-n[l][1])/(n[c][1]-n[l][1])+n[l][0]&&(a=!a);return a}getAllPointsAt(e,t){return e[3]-e[1]===1&&e[4]-e[2]===1?this.intersects([e[1],e[2]])?[[this,this.points,t]]:[]:[[this,this.points,t]]}applyProps(e={}){let t=!1;if(e.points)if(this.shape.type!=="polygon"||this.shape.points.length!==e.points.length)this.shape={type:"polygon",points:e.points,open:e.open},this.updateBoundingBox();else{let i=!1,n=e.points.length;for(let r=0;r<n;r++)if(e.points[r][0]!==this.shape.points[r][0]||e.points[r][1]!==this.shape.points[r][1]){i=!0;break}i&&(this.shape={type:"polygon",points:e.points,open:e.open},this.updateBoundingBox())}if(e.interactive!==this.props.interactive&&(t=!0,this.props.interactive=e.interactive),(e.open||e.open===!1)&&(t=!0,this.shape.open=e.open),e.style){let i=e.border||e.style.border;if(i!==this._parsed.border.id)if(!i)this._parsed.border.id=null,this._parsed.border.match=[];else{let n=fu[i]||pu.exec(i)||pu.exec(i);n&&(this._parsed.border.id=i,this._parsed.border.match=fu[i]=n)}if(this._parsed.border.id&&(e.style.borderWidth=this._parsed.border.match[1],e.style.borderStyle="solid",e.style.borderColor=this._parsed.border.match[4]),e.style.outline!==this._parsed.outline.id)if(!e.style.outline)this._parsed.outline.id=null,this._parsed.outline.match=[];else{let n=fu[e.style.outline]||pu.exec(e.style.outline)||pu.exec(e.style.outline);n&&(this._parsed.outline.id=e.style.outline,this._parsed.outline.match=fu[e.style.outline]=n)}this._parsed.outline.id&&(e.style.outlineWidth=this._parsed.outline.match[1],e.style.outlineStyle="solid",e.style.outlineColor=this._parsed.outline.match[4]),this.props.style=e.style,e.backgroundColor&&!this.props.style.backgroundColor&&(this.props.style.backgroundColor=e.backgroundColor,t=!0),e.style.background&&!this.props.style.backgroundColor&&(this.props.style.backgroundColor=e.style.background,t=!0);for(let n of SP)if(this.props.style[n]!==e.style[n]){t=!0;break}e.style[":hover"]!==this.props.hoverStyles&&(this.props.hoverStyles=e.style[":hover"],this.hoverEvents||(this.hoverEvents=!0,this.addEventListener("pointerenter",this.addHover),this.addEventListener("pointerleave",this.removeHover)),t=!0),e.style[":active"]!==this.props.pressStyles&&(this.props.pressStyles=e.style[":active"],this.activeEvents||(this.activeEvents=!0,this.addEventListener("mousedown",this.addPress),this.addEventListener("mouseup",this.removePress)),t=!0)}e.href!==this.props.href&&(this.props.href=e.href,t=!0),e.hrefTarget!==this.props.hrefTarget&&(this.props.hrefTarget=e.hrefTarget,t=!0),e.title!==this.props.title&&(this.props.title=e.title,t=!0),e.className!==this.props.className&&(this.props.className=e.className,e.className&&!this.hoverEvents&&(this.hoverEvents=!0,this.addEventListener("pointerenter",this.addHover),this.addEventListener("pointerleave",this.removeHover)),e.className&&!this.activeEvents&&(this.activeEvents=!0,this.addEventListener("mousedown",this.addPress),this.addEventListener("mouseup",this.removePress)),t=!0),e.relativeSize!==this.props.relativeSize&&(this.props.relativeSize=e.relativeSize,t=!0),e.relativeStyle!==this.props.relativeStyle&&(this.props.relativeStyle=e.relativeStyle,t=!0),e.html!==this.props.html&&(this.props.html=e.html,t=!0),e.target&&(e.target.width!==this.display.width||e.target.height!==this.display.height||e.target.x!==this.points[1]||e.target.y!==this.points[2])&&(t=!0,this.points=xe.singleBox(e.target.width,e.target.height,e.target.x,e.target.y),this.display.points=xe.singleBox(e.target.width,e.target.height,e.target.x,e.target.y),this.display.width=e.target.width,this.display.height=e.target.height),t&&this.__revision++}},Rx=/(-?[0-9]+(px|em)\s+|0\s+)(-?[0-9]+(px|em)\s+|0\s+)(-?[0-9]+(px|em)\s+|0\s+)?(-?[0-9]+(px|em)\s+|0\s+)?(.*)/g,Tx={},wP=typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes("firefox"),mu={},bP=class{constructor(e,t){P(this,"canvas"),P(this,"ctx"),P(this,"options"),P(this,"imagesPending",0),P(this,"imagesLoaded",0),P(this,"imageIdsLoaded",[]),P(this,"frameIsRendering",!1),P(this,"pendingDrawCall",!1),P(this,"firstMeaningfulPaint",!1),P(this,"parallelTasks",8),P(this,"frameTasks",0),P(this,"loadingQueueOrdered",!0),P(this,"loadingQueue",[]),P(this,"currentTask",Promise.resolve()),P(this,"tasksRunning",0),P(this,"stats"),P(this,"averageJobTime",64),P(this,"lastKnownScale",1),P(this,"visible",[]),P(this,"previousVisible",[]),P(this,"rendererPosition"),P(this,"dpi"),P(this,"drawCalls",[]),P(this,"lastPaintedObject"),P(this,"hostCache"),P(this,"invalidated",[]),P(this,"_worker",()=>{if(this.loadingQueue.length){let i=this.loadingQueue.pop();i&&(this.tasksRunning++,this.frameTasks++,this.currentTask=i.task().then(()=>{this.tasksRunning--}).catch(()=>{this.tasksRunning--}))}}),P(this,"_scheduled",0),P(this,"_doWork",()=>{this.loadingQueue.length===0&&this.tasksRunning===0&&this._scheduled&&(clearInterval(this._scheduled),this._scheduled=0);let i=this.parallelTasks||1;!this.firstMeaningfulPaint&&this.loadingQueue.length&&(i=this.loadingQueue.length);for(let n=0;n<=i;n++)this._worker()}),this.canvas=e,this.rendererPosition=e.getBoundingClientRect(),this.ctx=e.getContext("2d",{alpha:!0}),this.ctx.imageSmoothingEnabled=!0,this.options=t||{},this.canvas.style.opacity="0",this.canvas.style.transition="opacity .3s",this.dpi=t?.dpi||1,this.hostCache=t?.lruCache?new Ny({maxSize:1024*512*512,dispose:(i,n,r)=>{this.invalidated.push(n),i.width=0,i.height=0},sizeCalculation:(i,n)=>i.width*i.height}):{store:{},get(i){return this.store[i]},set(i,n){this.store[i]=n}}}getCanvasDims(){return{width:this.canvas.width/this.dpi,height:this.canvas.height/this.dpi}}resize(){this.rendererPosition=this.canvas.getBoundingClientRect()}isReady(){return this.firstMeaningfulPaint}afterFrame(e){if(this.clearTransform(),this.lastPaintedObject=void 0,this.frameIsRendering=!1,this.imagesPending=Math.max(0,this.imagesPending-this.imagesLoaded),this.imagesLoaded=0,this.loadingQueueOrdered||(this.loadingQueue=this.loadingQueue.sort((t,i)=>t.network&&t.scale===i.scale?i.distance-t.distance:t.scale<i.scale?-1:1),this.loadingQueueOrdered=!0),this.previousVisible=this.visible,this.pendingDrawCall=!!this.drawCalls.length,this.pendingDrawCall)for(let t=0;t<this.drawCalls.length;t++){let i=this.drawCalls.shift();i&&i()}this.doOffscreenWork(),this.options.debug&&this.stats&&this.stats.end()}doOffscreenWork(){this.frameTasks=0,this.loadingQueue.length&&(this._worker(),this.loadingQueue.length&&(this._scheduled||(this._scheduled=setInterval(this._doWork,0))))}getScale(e,t,i){if(Number.isNaN(e)||Number.isNaN(t))return this.lastKnownScale;let n=this.getCanvasDims(),r=n.width/e,a=n.height/t,l=(r<a?a:r)*(i&&this.dpi||1);return Number.isNaN(l)||(this.lastKnownScale=l),this.lastKnownScale}beforeFrame(e,t,i,n){this.options.debug&&this.stats&&this.stats.begin(),this.frameIsRendering=!0,this.visible=[],this.options.beforeFrame&&this.options.beforeFrame(t);let r=this.getCanvasDims();if(this.ctx.globalAlpha=1,this.ctx.fillStyle=this.canvas.dataset.background??"rgb(0, 0, 0)",this.ctx.fillRect(0,0,r.width,r.height),n.enableFilters&&(n.filters.brightness||n.filters.contrast||n.filters.grayscale||n.filters.invert||n.filters.sepia||n.filters.saturate||n.filters.hueRotate||n.filters.blur)){let a="";n.filters.brightness&&(a+=`brightness(${~~(100+n.filters.brightness*100)}%) `),n.filters.contrast&&(a+=`contrast(${~~(100+n.filters.contrast*100)}%) `),n.filters.grayscale&&(a+=`grayscale(${~~(n.filters.grayscale*100)}%) `),n.filters.invert&&(a+=`invert(${~~(n.filters.invert*100)}%) `),n.filters.sepia&&(a+=`sepia(${~~(n.filters.sepia*100)}%) `),n.filters.saturate&&(a+=`saturate(${~~(100+n.filters.saturate*100)}%) `),n.filters.hueRotate&&(a+=`hue-rotate(${n.filters.hueRotate}deg) `),n.filters.blur&&(a+=`blur(${n.filters.blur}px) `),this.ctx.filter=a}else this.ctx.filter="none"}applyTransform(e,t,i,n,r){let a=e.__owner.value;if(a&&a.rotation){this.ctx.save();let l=t+n/2,c=i+r/2;this.ctx.translate(l,c),this.ctx.rotate(a.rotation*Math.PI/180),this.ctx.translate(-l,-c),this.lastPaintedObject=a}}clearTransform(){this.lastPaintedObject&&(this.lastPaintedObject.rotation&&this.ctx.restore(),this.lastPaintedObject=void 0)}paint(e,t,i,n,r,a){let l=this.ctx.globalAlpha;if(e instanceof cr||e instanceof Xs){if(e.display.rotation){this.ctx.save();let m=i+r/2,h=n+a/2;e.crop&&(m-=e.crop[t*5+1],h-=e.crop[t*5+2]),this.ctx.translate(m,h),this.ctx.rotate(e.display.rotation*Math.PI/180),this.ctx.translate(-m,-h)}if(this.visible.push(e),typeof e.style&&e.style.opacity!=="undefined"){if(!e.style.opacity)return;this.ctx.globalAlpha=e.style.opacity}try{let m=e.__host.canvas,h=this.getCanvasDims();if((m.indices.indexOf(t)===-1||this.invalidated.indexOf(m.canvases[t])!==-1)&&this.schedulePaintToCanvas(m,e,t,vu({x:i+r/2,y:n+r/2},{x:h.width/2,y:h.height/2})),!this.firstMeaningfulPaint)return;let y=this.hostCache.get(m.canvases[t]);if(y)if(e.crop&&e.cropData){if(e.crop[t*5]){let S=[e.crop[t*5+1]/e.display.scale-e.display.points[t*5+1],e.crop[t*5+2]/e.display.scale-e.display.points[t*5+2],1+(e.crop[t*5+3]-e.crop[t*5+1])/e.display.scale,1+(e.crop[t*5+4]-e.crop[t*5+2])/e.display.scale];S[0]+=e.cropData.x/e.display.scale,S[1]+=e.cropData.y/e.display.scale;let w=e.x*this.lastKnownScale,v=e.y*this.lastKnownScale,x=[i+w,n+v,r,a];x[0]+=w,x[1]+=v,this.ctx.drawImage(y,S[0],S[1],S[2],S[3],x[0],x[1],x[2]+1,x[3]+1)}}else wP?this.ctx.drawImage(y,0,0,e.display.points[t*5+3]-e.display.points[t*5+1],e.display.points[t*5+4]-e.display.points[t*5+2],i,n,r+1,a+1):this.ctx.drawImage(y,0,0,e.display.points[t*5+3]-e.display.points[t*5+1],e.display.points[t*5+4]-e.display.points[t*5+2],i,n,r+Number.MIN_VALUE+.5,a+Number.MIN_VALUE+.5)}catch{}e.display.rotation&&this.ctx.restore()}let c=e instanceof Qs&&this.options.box,p=e instanceof Vx&&this.options.polygon;if((c||p)&&!e.props.className&&!e.props.html&&!e.props.href){if(this.visible.push(e),e.props.style){let m=Object.assign({},e.props.style||{},e.hovering?e.props.hoverStyles:{},e.pressing?e.props.pressStyles:{}),h=e.props.relativeStyle?1:r/e.width;typeof m.opacity<"u"&&(this.ctx.globalAlpha=m.opacity);let y=0;typeof m.borderWidth<"u"&&(y=parseInt(m.borderWidth,10)*h);let S=0;typeof m.outlineWidth<"u"&&(S=parseInt(m.outlineWidth,10)*h);let w=0;if(typeof m.outlineOffset<"u"&&(w=parseInt(m.outlineOffset,10)*h),m.borderColor&&(this.ctx.strokeStyle=m.borderColor),m.boxShadow){let v=m.boxShadow.split(/,(?![^(]*\))/);for(let x of v){let A=Tx[x]||Rx.exec(x)||Rx.exec(x);Tx[x]=A,A&&(this.ctx.save(),this.ctx.shadowOffsetX=parseInt(A[1])*this.dpi*h,this.ctx.shadowOffsetY=parseInt(A[3])*this.dpi*h,this.ctx.shadowBlur=parseInt(A[5])*this.dpi*h,this.ctx.shadowColor=A[9],this.ctx.fillStyle="rgba(0,0,0,1)",this.ctx.fillRect(i+y,n+y,r,a),this.ctx.restore())}}if(this.ctx.fillStyle=m.backgroundColor||"transparent",this.ctx.lineWidth=y,p){let v=e.shape,x=v.points||[],A=x.length;this.ctx.beginPath();for(let C=0;C<A;C++)this.ctx.lineTo(i+x[C][0]*this.lastKnownScale,n+x[C][1]*this.lastKnownScale);v.open||this.ctx.closePath(),y&&this.ctx.stroke(),v.open||this.ctx.fill()}else y&&this.ctx.strokeRect(i+y/2,n+y/2,r+y,a+y),this.ctx.fillRect(i+y,n+y,r,a);S&&(m.outlineColor&&(this.ctx.strokeStyle=m.outlineColor),this.ctx.lineWidth=S,this.ctx.strokeRect(i-S/2-w,n-S/2-w,r+y*2+S+w*2,a+y*2+S+w*2))}this.ctx.globalAlpha=l}}loadImage(e,t,i,n=!1){if(mu[e]&&mu[e].naturalWidth>0){t(mu[e]);return}try{let r=!1;n||setTimeout(()=>{r||this.loadImage(e,t,i,!0)},3e3);let a=document.createElement("img");a.decoding="auto",a.onload=function(){r=!0,t(a),mu[e]=a,a.onload=null},this.options.crossOrigin&&(a.crossOrigin="anonymous"),a.src=e,a.complete&&a.onload({}),a.width}catch(r){console.log("image error",r),i(r)}}schedulePaintToCanvas(e,t,i,n){this.imagesPending++,e.indices.push(i);let r=`${t.id}--${t.display.scale}-${i}`,a=this.invalidated.indexOf(r);a!==-1&&this.invalidated.splice(a,1),e.canvases[i]=r,t.__host.canvas.loading=!0,this.loadingQueueOrdered=!1,this.loadingQueue.push({id:r,scale:t.display.scale,network:!0,distance:n,task:()=>new Promise(l=>{if(this.visible.indexOf(t)===-1){this.imagesPending--,e.indices.splice(e.indices.indexOf(i),1),l();return}let c=t.getImageUrl(i);this.loadImage(c,p=>{this.loadingQueue.push({id:r,scale:t.display.scale,distance:n,task:()=>new Promise(m=>{this.imageIdsLoaded.includes(r)||(this.imagesLoaded++,this.imageIdsLoaded.push(r)),e.loaded.push(i),e.loaded.length===e.indices.length&&(e.loading=!1);let h=t.display.points.slice(i*5,i*5+5),y=document.createElement("canvas"),S=y.getContext("2d");y.width=h[3]-h[1],y.height=h[4]-h[2],this.hostCache.set(e.canvases[i],y),this.drawCalls.push(()=>{S.drawImage(p,0,0,h[3]-h[1],h[4]-h[2]),m()})})}),l()},p=>{this.imagesPending--,e.indices.splice(e.indices.indexOf(i),1),l()})})})}afterPaintLayer(e,t){}prepareLayer(e,t){if(e.__owner.value)if(e.cropData){let i=this.lastKnownScale*(1/e.display.scale);this.applyTransform(e,t[1],t[2],t[3]-t[1],t[4]-t[2])}else this.applyTransform(e,t[1],t[2],t[3]-t[1],t[4]-t[2]);(!e.__host||!e.__host.canvas)&&(e instanceof cr||e instanceof Xs)&&this.createImageHost(e)}finishLayer(){this.lastPaintedObject&&this.clearTransform()}createImageHost(e){e.__host=e.__host?e.__host:{},e.__host.canvas={canvas:void 0,canvases:[],indices:[],loaded:[],loading:!1}}getPointsAt(e,t,i,n){return e.getPointsAt(t,i,n)}getViewportBounds(e,t,i){let n=e.getActiveZone();if(n){let r=t[3]-t[1]<n.points[3]-n.points[1],a=t[4]-t[2]<n.points[4]-n.points[2];return{x1:r?n.points[1]-i:n.points[1]+(n.points[3]-n.points[1])/2-(t[3]-t[1])/2,y1:a?n.points[2]-i:n.points[2]+(n.points[4]-n.points[2])/2-(t[4]-t[2])/2,x2:r?n.points[3]+i:n.points[1]+(n.points[3]-n.points[1])/2-(t[3]-t[1])/2,y2:a?n.points[4]+i:n.points[2]+(n.points[4]-n.points[2])/2-(t[4]-t[2])/2}}return null}pendingUpdate(){let e=!this.pendingDrawCall&&this.drawCalls.length===0&&this.imagesPending===0&&this.loadingQueue.length===0&&this.tasksRunning===0;return!e&&this.visible.length===0&&setTimeout(()=>{this.canvas.style.opacity="1",this.firstMeaningfulPaint=!0},500),!this.firstMeaningfulPaint&&e&&this.visible.length?(this.canvas.style.opacity="1",this.firstMeaningfulPaint=e,!0):this.options.debug?!0:!e}getRendererScreenPosition(){return this.rendererPosition}reset(){this.loadingQueue=[],this.drawCalls=[]}},Ux=class{constructor(e){P(this,"renderers",[]),P(this,"length");for(let t of e)t&&this.renderers.push(t);this.length=this.renderers.length}afterFrame(e,t,i,n){for(let r=0;r<this.length;r++)this.renderers[r].afterFrame(e,t,i,n)}afterPaintLayer(e,t){for(let i=0;i<this.length;i++)this.renderers[i].afterPaintLayer(e,t)}beforeFrame(e,t,i,n){for(let r=0;r<this.length;r++)this.renderers[r].beforeFrame(e,t,i,n)}triggerResize(){for(let e=0;e<this.length;e++){let t=this.renderers[e];t.triggerResize&&t.triggerResize()}}getPointsAt(e,t,i,n){return this.renderers[0].getPointsAt(e,t,i,n)}getScale(e,t){return this.renderers[0].getScale(e,t)}getViewportBounds(e,t,i){return this.renderers[0].getViewportBounds(e,t,i)}getRendererScreenPosition(){return this.renderers[0].getRendererScreenPosition()}isReady(){for(let e=0;e<this.length;e++)if(!this.renderers[e].isReady())return!1;return!0}paint(e,t,i,n,r,a){for(let l=0;l<this.length;l++)this.renderers[l].paint(e,t,i,n,r,a)}pendingUpdate(){for(let e=0;e<this.length;e++)if(this.renderers[e].pendingUpdate())return!0;return!1}prepareLayer(e,t){for(let i=0;i<this.length;i++)this.renderers[i].prepareLayer(e,t)}finishLayer(e,t){for(let i=0;i<this.length;i++)this.renderers[i].finishLayer(e,t)}resize(e,t){for(let i=0;i<this.length;i++)this.renderers[i].resize(e,t)}reset(){for(let e=0;e<this.length;e++)this.renderers[e].reset()}},CP=class{constructor(e){P(this,"canvas"),P(this,"context"),P(this,"heightRatio",1),P(this,"widthRatio",1),P(this,"target",new Float32Array(5)),P(this,"initialWidth"),P(this,"initialHeight"),P(this,"bounds"),P(this,"aggregate"),P(this,"delta",0),P(this,"renderNextFrame",!0),this.canvas=e,this.initialWidth=e.width,this.initialHeight=e.height,this.context=e.getContext("2d"),this.context.globalAlpha=.5,this.aggregate=wi(1)}isReady(){return!0}resize(){this.initialWidth=this.canvas.width,this.initialHeight=this.canvas.height,this.renderNextFrame=!0}afterFrame(e,t,i){if(this.renderNextFrame){this.context.clearRect(0,0,this.canvas.width,this.canvas.height);let n=this.initialWidth/e.width,r=this.initialHeight/e.height,a=this.widthRatio>this.heightRatio?n:r;if(this.target=i,this.bounds){let l=e.getPointsAt(this.bounds,this.aggregate,a);for(let[c,p]of l)if(c instanceof cr&&c.__host.canvas){let m=p.length/5;for(let h=0;h<m;h++)if(c.__host.canvas.canvases[h]){let y={x1:p[h+1]*a,y1:p[h+2]*a,width:(p[h+3]-p[h+1])*a,height:(p[h+4]-p[h+2])*a}}}}e.getPoints().forEach((l,c,p)=>{if(c%5===0&&l){let m={x1:p[c+1]*a,y1:p[c+2]*a,x2:p[c+3]*a,y2:p[c+4]*a,width:(p[c+3]-p[c+1])*a,height:(p[c+4]-p[c+2])*a};this.context.strokeStyle="red",this.context.strokeRect(m.x1,m.y1,m.width,m.height)}}),i&&(this.context.strokeStyle="red",this.context.lineWidth=window.devicePixelRatio||1,this.context.strokeRect(i[1]*a,i[2]*a,(i[3]-i[1])*a,(i[4]-i[2])*a))}}getActiveZone(e){return null}getPointsAt(e,t,i,n){return e.getPointsAt(t,i,n)}getScale(e,t){return 1}beforeFrame(e,t){this.bounds=xe.singleBox(e.width,e.height)}drawImage(){}afterPaintLayer(e,t){}paint(e,t,i,n,r,a){this.renderNextFrame=!0}prepareLayer(e){}pendingUpdate(){return!1}hasActiveZone(){return!1}getViewportBounds(e,t,i){return null}getRendererScreenPosition(){return this.canvas.getBoundingClientRect()}finishLayer(){}reset(){}};function PP(e){return{x:e[1],y:e[2],width:e[3]-e[1],height:e[4]-e[2]}}var _x="pan",Mx="scroll",EP="gesture",AP={zoomOutFactor:.8,zoomInFactor:1.25,maxZoomFactor:1,minZoomFactor:.05,zoomDuration:300,zoomWheelConstant:20,zoomClamp:.6,panBounceStiffness:120,panBounceDamping:15,panTimeConstant:240,panPower:.1,nudgeDistance:100,panPadding:0,devicePixelRatio:1,enableWheel:!0,enableClickToZoom:!0,ignoreSingleFingerTouch:!1,enablePanOnWait:!1,requireMetaKeyForWheelZoom:!1,panOnWaitDelay:40,onPanInSketchMode:()=>{},parentElement:null},Hx=(e={})=>({start:function(t){let{zoomWheelConstant:i,enableWheel:n,enableClickToZoom:r,ignoreSingleFingerTouch:a,enablePanOnWait:l,panOnWaitDelay:c,parentElement:p,requireMetaKeyForWheelZoom:m}={...AP,...e},h={pointerStart:{x:0,y:0},isPressing:!1,mousemoveBuffer:re(5),multiTouch:{distance:0}};t.world.activatedEvents.push("onMouseUp","onMouseDown","onMouseMove","onTouchStart","onTouchEnd","onTouchMove");function y(){x=0,C="",E(),E(void 0,"notice"),A=0}function S(){t.world.constraintBounds(),y()}function w(U){if(U.which>1){h.isPressing=!1;return}t.mode==="explore"&&(U.preventDefault(),h.pointerStart.x=U.atlas.x,h.pointerStart.y=U.atlas.y,t.transitionManager.stopTransition(),h.isPressing=!0)}function v(){y(),h.isPressing&&(t.mode==="explore"&&t.world.constraintBounds(),h.isPressing=!1)}let x=0,A=0,C="";function I(U){if(t.mode==="explore"){if(U.atlasTouches.length===1&&(A=performance.now(),a==!1&&U.preventDefault(),h.pointerStart.x=U.atlasTouches[0].x,h.pointerStart.y=U.atlasTouches[0].y),U.atlasTouches.length===2){C=EP,U.preventDefault();let W=U.atlasTouches[0].x,ee=U.atlasTouches[1].x;h.pointerStart.x=(W+ee)/2;let Me=U.atlasTouches[0].y,pe=U.atlasTouches[1].y;h.pointerStart.y=(Me+pe)/2,x=vu({x:U.touches[0].clientX,y:U.touches[0].clientY},{x:U.touches[1].clientX,y:U.touches[1].clientY})}t.transitionManager.stopTransition(),h.isPressing=!0}}function E(U,W="intent"){p&&(p.dataset[W]=U)}function L(U){let W=null,ee=null,Me=!1,pe=0;if(h.isPressing&&U.touches.length===2){let Re=U.touches[0].clientX,ke=U.touches[1].clientX;W=(Re+ke)/2;let He=U.touches[0].clientY,qe=U.touches[1].clientY;ee=(He+qe)/2,pe=vu({x:U.touches[0].clientX,y:U.touches[0].clientY},{x:U.touches[1].clientX,y:U.touches[1].clientY}),Me=!0}if(E(C),h.isPressing&&U.touches.length===1){if(l&&(performance.now()-A<c&&C==""&&(C=Mx),C==""&&(C=_x)),E(C),C==""&&a==!0||C==Mx){E("require-two-finger","notice");return}let Re=U.touches[0];W=Re.clientX,ee=Re.clientY}if(W!==null&&ee!==null){let Re=t.getRendererScreenPosition();if(Re){let{x:ke,y:He}=t.viewerToWorld(W-Re.x,ee-Re.y),qe=pe&&x?pe/x:1;t.transitionManager.customTransition($=>{$.from=re(t.target),$.to=bi($.from,pi(ut(h.pointerStart.x-ke,h.pointerStart.y-He),On(1/qe,ke,He)),h.mousemoveBuffer),$.elapsed_time=0,$.total_time=0,$.timingFunction=ur.easeInOutExpo,$.done=!1})}x=pe}C==_x&&U.preventDefault()}function z(U){if(h.isPressing){let W=t.getRendererScreenPosition();if(W){let{x:ee,y:Me}=t.viewerToWorld(U.clientX-W.x,U.clientY-W.y);t.transitionManager.customTransition(pe=>{pe.from=re(t.target),pe.to=bi(pe.from,ut(h.pointerStart.x-ee,h.pointerStart.y-Me),h.mousemoveBuffer),pe.elapsed_time=0,pe.total_time=0,pe.timingFunction=ur.easeInOutExpo,pe.done=!1})}}}function M(U){t.mode==="explore"&&t.world.zoomIn(U.atlas)}function Q(U){let W=1+(0,Wx.default)(U).spinY/i;t.world.zoomTo(W,U.atlas,!0)}function V(U){return m&&U.metaKey==!1?(E("meta-required","notice"),U.stopPropagation(),!1):!0}t.world.addEventListener("mouseup",S),t.world.addEventListener("touchend",S),t.world.addEventListener("touchstart",I),t.world.addEventListener("mousedown",w),window.addEventListener("touchend",v),window.addEventListener("mouseup",v),window.addEventListener("mousemove",z),p&&p.addEventListener("touchmove",L),r&&(t.world.activatedEvents.push("onClick"),t.world.addEventListener("click",M)),n&&(t.world.activatedEvents.push("onWheel"),m&&p?.addEventListener("wheel",V,{passive:!0,capture:!0}),t.world.addEventListener("wheel",Q));let J=t.world.addLayoutSubscriber((U,W)=>{if(U==="zone-changed"&&t.transitionManager.constrainBounds({transition:{duration:0}}),U==="zoom-to"&&W&&t.transitionManager.zoomTo(W.factor,{origin:W.point,stream:W.stream}),U==="go-home"){let ee=W.immediate?{duration:0}:void 0;t.transitionManager.goToRegion(PP(t.homePosition),{transition:ee})}if(U==="goto-region"&&W){let ee=W.immediate?{duration:0}:{};t.transitionManager.goToRegion(W,{transition:ee})}U==="constrain-bounds"&&t.transitionManager.constrainBounds({transition:W?.immediate?{duration:0}:void 0})});return()=>{t.world.removeEventListener("mouseup",S),t.world.removeEventListener("touchend",S),t.world.removeEventListener("touchstart",I),t.world.removeEventListener("mousedown",w),window.removeEventListener("touchend",v),window.removeEventListener("mouseup",v),t.world.removeEventListener("mousemove",z),p&&(p.removeEventListener("touchmove",z),p.removeEventListener("wheel",V,{passive:!0,capture:!0})),r&&t.world.removeEventListener("click",M),n&&t.world.removeEventListener("wheel",Q),J()}},updatePosition(){}}),Fo=Au.default.createContext("explore");Fo.displayName="Mode";var RP=()=>(0,Au.useContext)(Fo);var Iu=Lp.default.createContext(null);Iu.displayName="Atlas";var Ru=Lp.default.createContext(null);Ru.displayName="Bounds";var Su,TP=typeof performance=="object"&&typeof performance.now=="function";if(TP){let e=performance;Su=()=>e.now()}else{let e=Date,t=e.now();Su=()=>e.now()-t}var _P=16;function kx(e,t){e&&e.appendChild&&t&&e.appendChild(t)}function $x(e,t){e&&e.removeChild&&t&&e.removeChild(t)}function MP(e,t){return $x(e.world,t)}function kP(e,t,i){return Gx(e.world,t,i)}function Gx(e,t,i){e&&e instanceof Eu&&(e=e.world),e&&e.insertBefore&&e.insertBefore(t,i)}function Yx(e,t,i){if(i&&(e.applyProps&&e.applyProps(i),e instanceof bn))for(let n of bu){let r=n.slice(2).toLowerCase();i[n]!==t[n]&&(t[n]&&e.removeEventListener(r,t[n]),e.addEventListener(r,i[n]))}}function Xx(e,t){let i=Object.keys(t),n=!1;for(let r of i)if(bu.indexOf(r)!==-1){let a=zo[r];if(a){if(e.activatedEvents.indexOf(a)!==-1)continue;n=!0,e.activatedEvents.push(a)}}n&&e.triggerEventActivation()}var wu=new Map,Ox={};function OP(e,{args:t=[],...i},n,r,a){if(!(n instanceof Eu)&&a){let p=m=>m.return?p(m.return):m.stateNode&&m.stateNode.containerInfo;n=p(a)}let l,c=n.world;switch(e){case"world":l=Pu.withProps({width:i.width,height:i.height,viewingDirection:"left-to-right"}),l.activatedEvents=c.activatedEvents,l.eventHandlers=c.eventHandlers,l.subscriptions=c.subscriptions,l.triggerEventActivation(),c=l;break;case"box":l=new Qs;break;case"shape":l=new Vx;break;case"worldObject":case"world-object":l=new Op;break;case"worldImage":case"world-image":l=new cr;break;case"texture":l=new Rp;break;case"compositeImage":case"composite-image":l=new yP({id:i.id,width:i.width,height:i.height,images:[],renderOptions:i.renderOptions});break;case"tiledImage":case"tiled-image":l=Xs.fromTile(i.uri,i.display,i.tile,i.scaleFactor,void 0,i.format);break;case"paragraph":l=new gu,l.text=i.children;break;default:return}return Xx(c,i),Yx(l,{},i),l}function LP(e,t){if(t instanceof Pu)e.world=t;else if(t instanceof Op)e.world.appendChild(t);else if(t)throw new Error("Invalid root")}var Gs=(0,qx.default)({unstable_now:Su,now:Su,createInstance:OP,removeChild:$x,appendChild:kx,appendInitialChild:kx,insertBefore:Gx,warnsIfNotActing:!0,supportsMutation:!0,isPrimaryRenderer:!1,scheduleTimeout:typeof setTimeout<"u"?setTimeout:void 0,cancelTimeout:typeof clearTimeout<"u"?clearTimeout:void 0,setTimeout:typeof setTimeout<"u"?setTimeout:void 0,clearTimeout:typeof clearTimeout<"u"?clearTimeout:void 0,noTimeout:-1,appendChildToContainer:LP,removeChildFromContainer:MP,createTextInstance(){},insertInContainerBefore:kP,prepareUpdate(e,t,i,n,r){return Xx(r.world,n),n},commitUpdate(e,t,i,n,r,a){e.applyProps&&t&&Yx(e,n,t)},finalizeInitialChildren(e){return e?.__handlers},getChildHostContext(){return Ox},getRootHostContext(){return Ox},prepareForCommit(e){return e.isCommitting=!0,null},preparePortalMount(){},hideInstance(e){e&&e.points&&(e.points[0]=0)},unhideInstance(e,t){e&&e.points&&(e.points[0]=1)},getPublicInstance(e){return e},hideTextInstance(){throw new Error("Text is not allowed in the react-three-fibre tree. You may have extraneous whitespace between components.")},resetAfterCommit(e){e.isCommitting=!1,e.pendingUpdate=!0,e.world&&e.world.needsRecalculate&&(e.world.recalculateWorldSize(),e.world.triggerRepaint())},shouldSetTextContent(){return!1},clearContainer(){return!1},supportsHydration:!1,supportsPersistence:!1,detachDeletedInstance(e){},afterActiveInstanceBlur(){},beforeActiveInstanceBlur(){},getCurrentEventPriority(){return console.log("getCurrentEventPriority"),_P},getInstanceFromNode(e){throw console.log("getInstanceFromNode",e),new Error("Not implemented")},getInstanceFromScope(e){throw console.log("getInstanceFromScope",e),new Error("Not implemented")},prepareScopeUpdate(e,t){throw console.log("prepareScopeUpdate",e,t),new Error("Not implemented")},logRecoverableError(){},requestPostPaintCallback(){}});Gs.injectIntoDevTools({bundleType:0,version:Qx.version,rendererPackageName:"@atlas-viewer/atlas"});function zp(e,t){let i=wu.get(e);i&&Gs.updateContainer(null,i,null,()=>{wu.delete(e),t&&t(e)})}var Lx={render(e,t){let i=wu.get(t);if(i)Gs.updateContainer(e,i,null);else{let n=Gs.createContainer(t,0,null,!1,null,"",()=>{},null);Gs.updateContainer(e,n,null),wu.set(t,n)}},unmountComponentAtNode(e,t){zp(e,t)}},Ys=typeof window<"u"&&(window.document?.createElement||window.navigator?.product==="ReactNative")?Tu.useLayoutEffect:Tu.useEffect,zP=wn.default.memo(({children:e,setIsReady:t,onCreated:i,bounds:n,preset:r,mode:a="explore"})=>{let l=(0,wn.useCallback)(function(c){let p=(0,wn.useRef)(!1),m=()=>{t(!0)};return(0,wn.useEffect)(()=>{if(r&&!p.current){r.runtime.goHome();let h=i&&i(r);return void(h&&h.then?h.then(m):m())}return()=>{}},[]),(0,wn.useEffect)(()=>{p.current=!0},[]),c.children},[r]);return Ys(()=>{if(r){let c=r.runtime;a!==c.mode&&(c.mode=a),Lx.render((0,Lo.jsx)(wn.default.StrictMode,{children:(0,Lo.jsx)(l,{children:(0,Lo.jsx)(Ru.Provider,{value:n,children:(0,Lo.jsx)(Fo.Provider,{value:a,children:(0,Lo.jsx)(Iu.Provider,{value:r,children:e})})})})}),c)}},[r,a,e]),Ys(()=>{if(r){let c=r.runtime;return()=>{Lx.unmountComponentAtNode(c)}}return()=>{}},[r]),null}),FP=class{constructor(e,t){P(this,"canvas"),P(this,"gl"),P(this,"program"),P(this,"fragmentShader"),P(this,"vertexShader"),P(this,"rectBuffer"),P(this,"fragmentShaderSource",`
|
|
11
|
+
`)+o.join(" > ")}return null},i.getPublicRootInstance=function(o){if(o=o.current,!o.child)return null;switch(o.child.tag){case 5:return ke(o.child.stateNode);default:return o.child.stateNode}},i.injectIntoDevTools=function(o){if(o={bundleType:o.bundleType,version:o.version,rendererPackageName:o.rendererPackageName,rendererConfig:o.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:c.ReactCurrentDispatcher,findHostInstanceByFiber:_b,findFiberByHostInstance:o.findFiberByHostInstance||Mb,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.2.0"},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")o=!1;else{var s=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(s.isDisabled||!s.supportsFiber)o=!0;else{try{Xa=s.inject(o),un=s}catch{}o=!!s.checkDCE}}return o},i.isAlreadyRendering=function(){return!1},i.observeVisibleRects=function(o,s,u,d){if(!Ri)throw Error(l(363));o=Kd(o,s);var f=Y(o,u,d).disconnect;return{disconnect:function(){f()}}},i.registerMutableSourceForHydration=function(o,s){var u=s._getVersion;u=u(s._source),o.mutableSourceEagerHydrationData==null?o.mutableSourceEagerHydrationData=[s,u]:o.mutableSourceEagerHydrationData.push(s,u)},i.runWithPriority=function(o,s){var u=Fe;try{return Fe=o,s()}finally{Fe=u}},i.shouldError=function(){return null},i.shouldSuspend=function(){return!1},i.updateContainer=function(o,s,u,d){var f=s.current,g=Gt(),b=tr(f);return u=Ay(u),s.context===null?s.context=u:s.pendingContext=u,s=Rn(g,b),s.payload={element:o},d=d===void 0?null:d,d!==null&&(s.callback=d),o=Zn(f,s,b),o!==null&&(Fi(o,f,b,g),rl(o,f,b)),b},i}});var Pv=Tt((yR,Cv)=>{"use strict";Cv.exports=bv()});var Hs=Tt((GR,Sx)=>{"use strict";Sx.exports=ReactDOM});var bx=Tt(Pp=>{"use strict";var wx=Hs();Pp.createRoot=wx.createRoot,Pp.hydrateRoot=wx.hydrateRoot;var YR});var xS=Tt(vS=>{"use strict";var Zo=H();function DA(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var jA=typeof Object.is=="function"?Object.is:DA,VA=Zo.useState,UA=Zo.useEffect,WA=Zo.useLayoutEffect,HA=Zo.useDebugValue;function qA(e,t){var i=t(),n=VA({inst:{value:i,getSnapshot:t}}),r=n[0].inst,a=n[1];return WA(function(){r.value=i,r.getSnapshot=t,bf(r)&&a({inst:r})},[e,i,t]),UA(function(){return bf(r)&&a({inst:r}),e(function(){bf(r)&&a({inst:r})})},[e]),HA(i),i}function bf(e){var t=e.getSnapshot;e=e.value;try{var i=t();return!jA(e,i)}catch{return!0}}function QA(e,t){return t()}var $A=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?QA:qA;vS.useSyncExternalStore=Zo.useSyncExternalStore!==void 0?Zo.useSyncExternalStore:$A});var wS=Tt((vk,SS)=>{"use strict";SS.exports=xS()});var CS=Tt(bS=>{"use strict";var ac=H(),GA=wS();function YA(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var XA=typeof Object.is=="function"?Object.is:YA,KA=GA.useSyncExternalStore,ZA=ac.useRef,JA=ac.useEffect,eI=ac.useMemo,tI=ac.useDebugValue;bS.useSyncExternalStoreWithSelector=function(e,t,i,n,r){var a=ZA(null);if(a.current===null){var l={hasValue:!1,value:null};a.current=l}else l=a.current;a=eI(function(){function p(w){if(!m){if(m=!0,h=w,w=n(w),r!==void 0&&l.hasValue){var v=l.value;if(r(v,w))return y=v}return y=w}if(v=y,XA(h,w))return v;var x=n(w);return r!==void 0&&r(v,x)?v:(h=w,y=x)}var m=!1,h,y,S=i===void 0?null:i;return[function(){return p(t())},S===null?void 0:function(){return p(S())}]},[t,i,n,r]);var c=KA(e,a[0],a[1]);return JA(function(){l.hasValue=!0,l.value=c},[c]),tI(c),c}});var ES=Tt((Sk,PS)=>{"use strict";PS.exports=CS()});var t1=Tt((bD,e1)=>{"use strict";(()=>{var e={296:(r,a,l)=>{var c=/^\s+|\s+$/g,p=/^[-+]0x[0-9a-f]+$/i,m=/^0b[01]+$/i,h=/^0o[0-7]+$/i,y=parseInt,S=typeof l.g=="object"&&l.g&&l.g.Object===Object&&l.g,w=typeof self=="object"&&self&&self.Object===Object&&self,v=S||w||Function("return this")(),x=Object.prototype.toString,A=Math.max,C=Math.min,I=function(){return v.Date.now()};function E(L){var M=typeof L;return!!L&&(M=="object"||M=="function")}function O(L){if(typeof L=="number")return L;if(function(V){return typeof V=="symbol"||function(J){return!!J&&typeof J=="object"}(V)&&x.call(V)=="[object Symbol]"}(L))return NaN;if(E(L)){var M=typeof L.valueOf=="function"?L.valueOf():L;L=E(M)?M+"":M}if(typeof L!="string")return L===0?L:+L;L=L.replace(c,"");var Q=m.test(L);return Q||h.test(L)?y(L.slice(2),Q?2:8):p.test(L)?NaN:+L}r.exports=function(L,M,Q){var V,J,U,q,ee,Me,pe=0,Te=!1,ke=!1,He=!0;if(typeof L!="function")throw new TypeError("Expected a function");function qe($e){var N=V,G=J;return V=J=void 0,pe=$e,q=L.apply(G,N)}function $($e){var N=$e-Me;return Me===void 0||N>=M||N<0||ke&&$e-pe>=U}function ve(){var $e=I();if($($e))return it($e);ee=setTimeout(ve,function(N){var G=M-(N-Me);return ke?C(G,U-(N-pe)):G}($e))}function it($e){return ee=void 0,He&&V?qe($e):(V=J=void 0,q)}function Qe(){var $e=I(),N=$($e);if(V=arguments,J=this,Me=$e,N){if(ee===void 0)return function(G){return pe=G,ee=setTimeout(ve,M),Te?qe(G):q}(Me);if(ke)return ee=setTimeout(ve,M),qe(Me)}return ee===void 0&&(ee=setTimeout(ve,M)),q}return M=O(M)||0,E(Q)&&(Te=!!Q.leading,U=(ke="maxWait"in Q)?A(O(Q.maxWait)||0,M):U,He="trailing"in Q?!!Q.trailing:He),Qe.cancel=function(){ee!==void 0&&clearTimeout(ee),pe=0,V=Me=J=ee=void 0},Qe.flush=function(){return ee===void 0?q:it(I())},Qe}},96:(r,a,l)=>{var c="Expected a function",p=NaN,m="[object Symbol]",h=/^\s+|\s+$/g,y=/^[-+]0x[0-9a-f]+$/i,S=/^0b[01]+$/i,w=/^0o[0-7]+$/i,v=parseInt,x=typeof l.g=="object"&&l.g&&l.g.Object===Object&&l.g,A=typeof self=="object"&&self&&self.Object===Object&&self,C=x||A||Function("return this")(),I=Object.prototype.toString,E=Math.max,O=Math.min,L=function(){return C.Date.now()};function M(V){var J=typeof V;return!!V&&(J=="object"||J=="function")}function Q(V){if(typeof V=="number")return V;if(function(q){return typeof q=="symbol"||function(ee){return!!ee&&typeof ee=="object"}(q)&&I.call(q)==m}(V))return p;if(M(V)){var J=typeof V.valueOf=="function"?V.valueOf():V;V=M(J)?J+"":J}if(typeof V!="string")return V===0?V:+V;V=V.replace(h,"");var U=S.test(V);return U||w.test(V)?v(V.slice(2),U?2:8):y.test(V)?p:+V}r.exports=function(V,J,U){var q=!0,ee=!0;if(typeof V!="function")throw new TypeError(c);return M(U)&&(q="leading"in U?!!U.leading:q,ee="trailing"in U?!!U.trailing:ee),function(Me,pe,Te){var ke,He,qe,$,ve,it,Qe=0,$e=!1,N=!1,G=!0;if(typeof Me!="function")throw new TypeError(c);function de(Pe){var ne=ke,he=He;return ke=He=void 0,Qe=Pe,$=Me.apply(he,ne)}function ye(Pe){var ne=Pe-it;return it===void 0||ne>=pe||ne<0||N&&Pe-Qe>=qe}function ge(){var Pe=L();if(ye(Pe))return Ve(Pe);ve=setTimeout(ge,function(ne){var he=pe-(ne-it);return N?O(he,qe-(ne-Qe)):he}(Pe))}function Ve(Pe){return ve=void 0,G&&ke?de(Pe):(ke=He=void 0,$)}function ze(){var Pe=L(),ne=ye(Pe);if(ke=arguments,He=this,it=Pe,ne){if(ve===void 0)return function(he){return Qe=he,ve=setTimeout(ge,pe),$e?de(he):$}(it);if(N)return ve=setTimeout(ge,pe),de(it)}return ve===void 0&&(ve=setTimeout(ge,pe)),$}return pe=Q(pe)||0,M(Te)&&($e=!!Te.leading,qe=(N="maxWait"in Te)?E(Q(Te.maxWait)||0,pe):qe,G="trailing"in Te?!!Te.trailing:G),ze.cancel=function(){ve!==void 0&&clearTimeout(ve),Qe=0,ke=it=He=ve=void 0},ze.flush=function(){return ve===void 0?$:Ve(L())},ze}(V,J,{leading:q,maxWait:J,trailing:ee})}},703:(r,a,l)=>{"use strict";var c=l(414);function p(){}function m(){}m.resetWarningCache=p,r.exports=function(){function h(w,v,x,A,C,I){if(I!==c){var E=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw E.name="Invariant Violation",E}}function y(){return h}h.isRequired=h;var S={array:h,bigint:h,bool:h,func:h,number:h,object:h,string:h,symbol:h,any:h,arrayOf:y,element:h,elementType:h,instanceOf:y,node:h,objectOf:y,oneOf:y,oneOfType:y,shape:y,exact:y,checkPropTypes:m,resetWarningCache:p};return S.PropTypes=S,S}},697:(r,a,l)=>{r.exports=l(703)()},414:r=>{"use strict";r.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"}},t={};function i(r){var a=t[r];if(a!==void 0)return a.exports;var l=t[r]={exports:{}};return e[r](l,l.exports,i),l.exports}i.n=r=>{var a=r&&r.__esModule?()=>r.default:()=>r;return i.d(a,{a}),a},i.d=(r,a)=>{for(var l in a)i.o(a,l)&&!i.o(r,l)&&Object.defineProperty(r,l,{enumerable:!0,get:a[l]})},i.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}(),i.o=(r,a)=>Object.prototype.hasOwnProperty.call(r,a),i.r=r=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(r,"__esModule",{value:!0})};var n={};(()=>{"use strict";i.r(n),i.d(n,{LazyLoadComponent:()=>Oe,LazyLoadImage:()=>Kc,trackWindowScroll:()=>it});let r=H();var a=i.n(r),l=i(697);let c=Hs();var p=i.n(c);function m(){return typeof window<"u"&&"IntersectionObserver"in window&&"isIntersecting"in window.IntersectionObserverEntry.prototype}function h(Y){return h=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(k){return typeof k}:function(k){return k&&typeof Symbol=="function"&&k.constructor===Symbol&&k!==Symbol.prototype?"symbol":typeof k},h(Y)}function y(Y,k){var X=Object.keys(Y);if(Object.getOwnPropertySymbols){var K=Object.getOwnPropertySymbols(Y);k&&(K=K.filter(function(be){return Object.getOwnPropertyDescriptor(Y,be).enumerable})),X.push.apply(X,K)}return X}function S(Y,k,X){return(k=v(k))in Y?Object.defineProperty(Y,k,{value:X,enumerable:!0,configurable:!0,writable:!0}):Y[k]=X,Y}function w(Y,k){for(var X=0;X<k.length;X++){var K=k[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Y,v(K.key),K)}}function v(Y){var k=function(X,K){if(h(X)!=="object"||X===null)return X;var be=X[Symbol.toPrimitive];if(be!==void 0){var Ae=be.call(X,"string");if(h(Ae)!=="object")return Ae;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(X)}(Y);return h(k)==="symbol"?k:String(k)}function x(Y,k){return x=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},x(Y,k)}function A(Y){return A=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(k){return k.__proto__||Object.getPrototypeOf(k)},A(Y)}var C=function(Y){Y.forEach(function(k){k.isIntersecting&&k.target.onVisible()})},I={},E=function(Y){(function(j,W){if(typeof W!="function"&&W!==null)throw new TypeError("Super expression must either be null or a function");j.prototype=Object.create(W&&W.prototype,{constructor:{value:j,writable:!0,configurable:!0}}),Object.defineProperty(j,"prototype",{writable:!1}),W&&x(j,W)})(je,Y);var k,X,K,be,Ae=(K=je,be=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}(),function(){var j,W=A(K);if(be){var ue=A(this).constructor;j=Reflect.construct(W,arguments,ue)}else j=W.apply(this,arguments);return function(oe,se){if(se&&(h(se)==="object"||typeof se=="function"))return se;if(se!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Ie){if(Ie===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Ie}(oe)}(this,j)});function je(j){var W;if(function(oe,se){if(!(oe instanceof se))throw new TypeError("Cannot call a class as a function")}(this,je),(W=Ae.call(this,j)).supportsObserver=!j.scrollPosition&&j.useIntersectionObserver&&m(),W.supportsObserver){var ue=j.threshold;W.observer=function(oe){return I[oe]=I[oe]||new IntersectionObserver(C,{rootMargin:oe+"px"}),I[oe]}(ue)}return W}return k=je,X=[{key:"componentDidMount",value:function(){this.placeholder&&this.observer&&(this.placeholder.onVisible=this.props.onVisible,this.observer.observe(this.placeholder)),this.supportsObserver||this.updateVisibility()}},{key:"componentWillUnmount",value:function(){this.observer&&this.placeholder&&this.observer.unobserve(this.placeholder)}},{key:"componentDidUpdate",value:function(){this.supportsObserver||this.updateVisibility()}},{key:"getPlaceholderBoundingBox",value:function(){var j=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.props.scrollPosition,W=this.placeholder.getBoundingClientRect(),ue=p().findDOMNode(this.placeholder).style,oe=parseInt(ue.getPropertyValue("margin-left"),10)||0,se=parseInt(ue.getPropertyValue("margin-top"),10)||0;return{bottom:j.y+W.bottom+se,left:j.x+W.left+oe,right:j.x+W.right+oe,top:j.y+W.top+se}}},{key:"isPlaceholderInViewport",value:function(){if(typeof window>"u"||!this.placeholder)return!1;var j=this.props,W=j.scrollPosition,ue=j.threshold,oe=this.getPlaceholderBoundingBox(W),se=W.y+window.innerHeight,Ie=W.x,Xe=W.x+window.innerWidth,Ke=W.y;return Ke-ue<=oe.bottom&&se+ue>=oe.top&&Ie-ue<=oe.right&&Xe+ue>=oe.left}},{key:"updateVisibility",value:function(){this.isPlaceholderInViewport()&&this.props.onVisible()}},{key:"render",value:function(){var j=this,W=this.props,ue=W.className,oe=W.height,se=W.placeholder,Ie=W.style,Xe=W.width;if(se&&typeof se.type!="function")return a().cloneElement(se,{ref:function(Ue){return j.placeholder=Ue}});var Ke=function(Ue){for(var Pt=1;Pt<arguments.length;Pt++){var st=arguments[Pt]!=null?arguments[Pt]:{};Pt%2?y(Object(st),!0).forEach(function(Et){S(Ue,Et,st[Et])}):Object.getOwnPropertyDescriptors?Object.defineProperties(Ue,Object.getOwnPropertyDescriptors(st)):y(Object(st)).forEach(function(Et){Object.defineProperty(Ue,Et,Object.getOwnPropertyDescriptor(st,Et))})}return Ue}({display:"inline-block"},Ie);return Xe!==void 0&&(Ke.width=Xe),oe!==void 0&&(Ke.height=oe),a().createElement("span",{className:ue,ref:function(Ue){return j.placeholder=Ue},style:Ke},se)}}],X&&w(k.prototype,X),Object.defineProperty(k,"prototype",{writable:!1}),je}(a().Component);E.propTypes={onVisible:l.PropTypes.func.isRequired,className:l.PropTypes.string,height:l.PropTypes.oneOfType([l.PropTypes.number,l.PropTypes.string]),placeholder:l.PropTypes.element,threshold:l.PropTypes.number,useIntersectionObserver:l.PropTypes.bool,scrollPosition:l.PropTypes.shape({x:l.PropTypes.number.isRequired,y:l.PropTypes.number.isRequired}),width:l.PropTypes.oneOfType([l.PropTypes.number,l.PropTypes.string])},E.defaultProps={className:"",placeholder:null,threshold:100,useIntersectionObserver:!0};let O=E;var L=i(296),M=i.n(L),Q=i(96),V=i.n(Q),J=function(Y){var k=getComputedStyle(Y,null);return k.getPropertyValue("overflow")+k.getPropertyValue("overflow-y")+k.getPropertyValue("overflow-x")};let U=function(Y){if(!(Y instanceof HTMLElement))return window;for(var k=Y;k&&k instanceof HTMLElement;){if(/(scroll|auto)/.test(J(k)))return k;k=k.parentNode}return window};function q(Y){return q=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(k){return typeof k}:function(k){return k&&typeof Symbol=="function"&&k.constructor===Symbol&&k!==Symbol.prototype?"symbol":typeof k},q(Y)}var ee=["delayMethod","delayTime"];function Me(){return Me=Object.assign?Object.assign.bind():function(Y){for(var k=1;k<arguments.length;k++){var X=arguments[k];for(var K in X)Object.prototype.hasOwnProperty.call(X,K)&&(Y[K]=X[K])}return Y},Me.apply(this,arguments)}function pe(Y,k){for(var X=0;X<k.length;X++){var K=k[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Y,(be=function(Ae,je){if(q(Ae)!=="object"||Ae===null)return Ae;var j=Ae[Symbol.toPrimitive];if(j!==void 0){var W=j.call(Ae,"string");if(q(W)!=="object")return W;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Ae)}(K.key),q(be)==="symbol"?be:String(be)),K)}var be}function Te(Y,k){return Te=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},Te(Y,k)}function ke(Y,k){if(k&&(q(k)==="object"||typeof k=="function"))return k;if(k!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return He(Y)}function He(Y){if(Y===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Y}function qe(Y){return qe=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(k){return k.__proto__||Object.getPrototypeOf(k)},qe(Y)}var $=function(){return typeof window>"u"?0:window.scrollX||window.pageXOffset},ve=function(){return typeof window>"u"?0:window.scrollY||window.pageYOffset};let it=function(Y){var k=function(X){(function(ue,oe){if(typeof oe!="function"&&oe!==null)throw new TypeError("Super expression must either be null or a function");ue.prototype=Object.create(oe&&oe.prototype,{constructor:{value:ue,writable:!0,configurable:!0}}),Object.defineProperty(ue,"prototype",{writable:!1}),oe&&Te(ue,oe)})(W,X);var K,be,Ae,je,j=(Ae=W,je=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}(),function(){var ue,oe=qe(Ae);if(je){var se=qe(this).constructor;ue=Reflect.construct(oe,arguments,se)}else ue=oe.apply(this,arguments);return ke(this,ue)});function W(ue){var oe;if(function(Ie,Xe){if(!(Ie instanceof Xe))throw new TypeError("Cannot call a class as a function")}(this,W),(oe=j.call(this,ue)).useIntersectionObserver=ue.useIntersectionObserver&&m(),oe.useIntersectionObserver)return ke(oe);var se=oe.onChangeScroll.bind(He(oe));return ue.delayMethod==="debounce"?oe.delayedScroll=M()(se,ue.delayTime):ue.delayMethod==="throttle"&&(oe.delayedScroll=V()(se,ue.delayTime)),oe.state={scrollPosition:{x:$(),y:ve()}},oe.baseComponentRef=a().createRef(),oe}return K=W,(be=[{key:"componentDidMount",value:function(){this.addListeners()}},{key:"componentWillUnmount",value:function(){this.removeListeners()}},{key:"componentDidUpdate",value:function(){typeof window>"u"||this.useIntersectionObserver||U(p().findDOMNode(this.baseComponentRef.current))!==this.scrollElement&&(this.removeListeners(),this.addListeners())}},{key:"addListeners",value:function(){typeof window>"u"||this.useIntersectionObserver||(this.scrollElement=U(p().findDOMNode(this.baseComponentRef.current)),this.scrollElement.addEventListener("scroll",this.delayedScroll,{passive:!0}),window.addEventListener("resize",this.delayedScroll,{passive:!0}),this.scrollElement!==window&&window.addEventListener("scroll",this.delayedScroll,{passive:!0}))}},{key:"removeListeners",value:function(){typeof window>"u"||this.useIntersectionObserver||(this.scrollElement.removeEventListener("scroll",this.delayedScroll),window.removeEventListener("resize",this.delayedScroll),this.scrollElement!==window&&window.removeEventListener("scroll",this.delayedScroll))}},{key:"onChangeScroll",value:function(){this.useIntersectionObserver||this.setState({scrollPosition:{x:$(),y:ve()}})}},{key:"render",value:function(){var ue=this.props,oe=(ue.delayMethod,ue.delayTime,function(Ie,Xe){if(Ie==null)return{};var Ke,Ue,Pt=function(Et,Gn){if(Et==null)return{};var Qi,Ar,ys={},Wa=Object.keys(Et);for(Ar=0;Ar<Wa.length;Ar++)Qi=Wa[Ar],Gn.indexOf(Qi)>=0||(ys[Qi]=Et[Qi]);return ys}(Ie,Xe);if(Object.getOwnPropertySymbols){var st=Object.getOwnPropertySymbols(Ie);for(Ue=0;Ue<st.length;Ue++)Ke=st[Ue],Xe.indexOf(Ke)>=0||Object.prototype.propertyIsEnumerable.call(Ie,Ke)&&(Pt[Ke]=Ie[Ke])}return Pt}(ue,ee)),se=this.useIntersectionObserver?null:this.state.scrollPosition;return a().createElement(Y,Me({forwardRef:this.baseComponentRef,scrollPosition:se},oe))}}])&&pe(K.prototype,be),Object.defineProperty(K,"prototype",{writable:!1}),W}(a().Component);return k.propTypes={delayMethod:l.PropTypes.oneOf(["debounce","throttle"]),delayTime:l.PropTypes.number,useIntersectionObserver:l.PropTypes.bool},k.defaultProps={delayMethod:"throttle",delayTime:300,useIntersectionObserver:!0},k};function Qe(Y){return Qe=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(k){return typeof k}:function(k){return k&&typeof Symbol=="function"&&k.constructor===Symbol&&k!==Symbol.prototype?"symbol":typeof k},Qe(Y)}function $e(Y,k){for(var X=0;X<k.length;X++){var K=k[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Y,(be=function(Ae,je){if(Qe(Ae)!=="object"||Ae===null)return Ae;var j=Ae[Symbol.toPrimitive];if(j!==void 0){var W=j.call(Ae,"string");if(Qe(W)!=="object")return W;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Ae)}(K.key),Qe(be)==="symbol"?be:String(be)),K)}var be}function N(Y,k){return N=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},N(Y,k)}function G(Y){return G=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(k){return k.__proto__||Object.getPrototypeOf(k)},G(Y)}var de=function(Y){(function(j,W){if(typeof W!="function"&&W!==null)throw new TypeError("Super expression must either be null or a function");j.prototype=Object.create(W&&W.prototype,{constructor:{value:j,writable:!0,configurable:!0}}),Object.defineProperty(j,"prototype",{writable:!1}),W&&N(j,W)})(je,Y);var k,X,K,be,Ae=(K=je,be=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}(),function(){var j,W=G(K);if(be){var ue=G(this).constructor;j=Reflect.construct(W,arguments,ue)}else j=W.apply(this,arguments);return function(oe,se){if(se&&(Qe(se)==="object"||typeof se=="function"))return se;if(se!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Ie){if(Ie===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Ie}(oe)}(this,j)});function je(j){return function(W,ue){if(!(W instanceof ue))throw new TypeError("Cannot call a class as a function")}(this,je),Ae.call(this,j)}return k=je,(X=[{key:"render",value:function(){return a().createElement(O,this.props)}}])&&$e(k.prototype,X),Object.defineProperty(k,"prototype",{writable:!1}),je}(a().Component);let ye=it(de);function ge(Y){return ge=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(k){return typeof k}:function(k){return k&&typeof Symbol=="function"&&k.constructor===Symbol&&k!==Symbol.prototype?"symbol":typeof k},ge(Y)}function Ve(Y,k){for(var X=0;X<k.length;X++){var K=k[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Y,(be=function(Ae,je){if(ge(Ae)!=="object"||Ae===null)return Ae;var j=Ae[Symbol.toPrimitive];if(j!==void 0){var W=j.call(Ae,"string");if(ge(W)!=="object")return W;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Ae)}(K.key),ge(be)==="symbol"?be:String(be)),K)}var be}function ze(Y,k){return ze=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},ze(Y,k)}function Pe(Y){if(Y===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Y}function ne(Y){return ne=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(k){return k.__proto__||Object.getPrototypeOf(k)},ne(Y)}var he=function(Y){(function(j,W){if(typeof W!="function"&&W!==null)throw new TypeError("Super expression must either be null or a function");j.prototype=Object.create(W&&W.prototype,{constructor:{value:j,writable:!0,configurable:!0}}),Object.defineProperty(j,"prototype",{writable:!1}),W&&ze(j,W)})(je,Y);var k,X,K,be,Ae=(K=je,be=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}(),function(){var j,W=ne(K);if(be){var ue=ne(this).constructor;j=Reflect.construct(W,arguments,ue)}else j=W.apply(this,arguments);return function(oe,se){if(se&&(ge(se)==="object"||typeof se=="function"))return se;if(se!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Pe(oe)}(this,j)});function je(j){var W;(function(Xe,Ke){if(!(Xe instanceof Ke))throw new TypeError("Cannot call a class as a function")})(this,je),W=Ae.call(this,j);var ue=j.afterLoad,oe=j.beforeLoad,se=j.scrollPosition,Ie=j.visibleByDefault;return W.state={visible:Ie},Ie&&(oe(),ue()),W.onVisible=W.onVisible.bind(Pe(W)),W.isScrollTracked=!!(se&&Number.isFinite(se.x)&&se.x>=0&&Number.isFinite(se.y)&&se.y>=0),W}return k=je,(X=[{key:"componentDidUpdate",value:function(j,W){W.visible!==this.state.visible&&this.props.afterLoad()}},{key:"onVisible",value:function(){this.props.beforeLoad(),this.setState({visible:!0})}},{key:"render",value:function(){if(this.state.visible)return this.props.children;var j=this.props,W=j.className,ue=j.delayMethod,oe=j.delayTime,se=j.height,Ie=j.placeholder,Xe=j.scrollPosition,Ke=j.style,Ue=j.threshold,Pt=j.useIntersectionObserver,st=j.width;return this.isScrollTracked||Pt&&m()?a().createElement(O,{className:W,height:se,onVisible:this.onVisible,placeholder:Ie,scrollPosition:Xe,style:Ke,threshold:Ue,useIntersectionObserver:Pt,width:st}):a().createElement(ye,{className:W,delayMethod:ue,delayTime:oe,height:se,onVisible:this.onVisible,placeholder:Ie,style:Ke,threshold:Ue,width:st})}}])&&Ve(k.prototype,X),Object.defineProperty(k,"prototype",{writable:!1}),je}(a().Component);he.propTypes={afterLoad:l.PropTypes.func,beforeLoad:l.PropTypes.func,useIntersectionObserver:l.PropTypes.bool,visibleByDefault:l.PropTypes.bool},he.defaultProps={afterLoad:function(){return{}},beforeLoad:function(){return{}},useIntersectionObserver:!0,visibleByDefault:!1};let Oe=he;function ot(Y){return ot=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(k){return typeof k}:function(k){return k&&typeof Symbol=="function"&&k.constructor===Symbol&&k!==Symbol.prototype?"symbol":typeof k},ot(Y)}var Ti=["afterLoad","beforeLoad","delayMethod","delayTime","effect","placeholder","placeholderSrc","scrollPosition","threshold","useIntersectionObserver","visibleByDefault","wrapperClassName","wrapperProps"];function Dt(Y,k){var X=Object.keys(Y);if(Object.getOwnPropertySymbols){var K=Object.getOwnPropertySymbols(Y);k&&(K=K.filter(function(be){return Object.getOwnPropertyDescriptor(Y,be).enumerable})),X.push.apply(X,K)}return X}function Wt(Y){for(var k=1;k<arguments.length;k++){var X=arguments[k]!=null?arguments[k]:{};k%2?Dt(Object(X),!0).forEach(function(K){fs(Y,K,X[K])}):Object.getOwnPropertyDescriptors?Object.defineProperties(Y,Object.getOwnPropertyDescriptors(X)):Dt(Object(X)).forEach(function(K){Object.defineProperty(Y,K,Object.getOwnPropertyDescriptor(X,K))})}return Y}function fs(Y,k,X){return(k=Ua(k))in Y?Object.defineProperty(Y,k,{value:X,enumerable:!0,configurable:!0,writable:!0}):Y[k]=X,Y}function Ri(){return Ri=Object.assign?Object.assign.bind():function(Y){for(var k=1;k<arguments.length;k++){var X=arguments[k];for(var K in X)Object.prototype.hasOwnProperty.call(X,K)&&(Y[K]=X[K])}return Y},Ri.apply(this,arguments)}function Xc(Y,k){for(var X=0;X<k.length;X++){var K=k[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Y,Ua(K.key),K)}}function Ua(Y){var k=function(X,K){if(ot(X)!=="object"||X===null)return X;var be=X[Symbol.toPrimitive];if(be!==void 0){var Ae=be.call(X,"string");if(ot(Ae)!=="object")return Ae;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(X)}(Y);return ot(k)==="symbol"?k:String(k)}function ms(Y,k){return ms=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},ms(Y,k)}function ln(Y){return ln=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(k){return k.__proto__||Object.getPrototypeOf(k)},ln(Y)}var gs=function(Y){(function(j,W){if(typeof W!="function"&&W!==null)throw new TypeError("Super expression must either be null or a function");j.prototype=Object.create(W&&W.prototype,{constructor:{value:j,writable:!0,configurable:!0}}),Object.defineProperty(j,"prototype",{writable:!1}),W&&ms(j,W)})(je,Y);var k,X,K,be,Ae=(K=je,be=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}(),function(){var j,W=ln(K);if(be){var ue=ln(this).constructor;j=Reflect.construct(W,arguments,ue)}else j=W.apply(this,arguments);return function(oe,se){if(se&&(ot(se)==="object"||typeof se=="function"))return se;if(se!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Ie){if(Ie===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Ie}(oe)}(this,j)});function je(j){var W;return function(ue,oe){if(!(ue instanceof oe))throw new TypeError("Cannot call a class as a function")}(this,je),(W=Ae.call(this,j)).state={loaded:!1},W}return k=je,(X=[{key:"onImageLoad",value:function(){var j=this;return this.state.loaded?null:function(W){j.props.onLoad(W),j.props.afterLoad(),j.setState({loaded:!0})}}},{key:"getImg",value:function(){var j=this.props,W=(j.afterLoad,j.beforeLoad,j.delayMethod,j.delayTime,j.effect,j.placeholder,j.placeholderSrc,j.scrollPosition,j.threshold,j.useIntersectionObserver,j.visibleByDefault,j.wrapperClassName,j.wrapperProps,function(ue,oe){if(ue==null)return{};var se,Ie,Xe=function(Ue,Pt){if(Ue==null)return{};var st,Et,Gn={},Qi=Object.keys(Ue);for(Et=0;Et<Qi.length;Et++)st=Qi[Et],Pt.indexOf(st)>=0||(Gn[st]=Ue[st]);return Gn}(ue,oe);if(Object.getOwnPropertySymbols){var Ke=Object.getOwnPropertySymbols(ue);for(Ie=0;Ie<Ke.length;Ie++)se=Ke[Ie],oe.indexOf(se)>=0||Object.prototype.propertyIsEnumerable.call(ue,se)&&(Xe[se]=ue[se])}return Xe}(j,Ti));return a().createElement("img",Ri({},W,{onLoad:this.onImageLoad()}))}},{key:"getLazyLoadImage",value:function(){var j=this.props,W=j.beforeLoad,ue=j.className,oe=j.delayMethod,se=j.delayTime,Ie=j.height,Xe=j.placeholder,Ke=j.scrollPosition,Ue=j.style,Pt=j.threshold,st=j.useIntersectionObserver,Et=j.visibleByDefault,Gn=j.width;return a().createElement(Oe,{beforeLoad:W,className:ue,delayMethod:oe,delayTime:se,height:Ie,placeholder:Xe,scrollPosition:Ke,style:Ue,threshold:Pt,useIntersectionObserver:st,visibleByDefault:Et,width:Gn},this.getImg())}},{key:"getWrappedLazyLoadImage",value:function(j){var W=this.props,ue=W.effect,oe=W.height,se=W.placeholderSrc,Ie=W.width,Xe=W.wrapperClassName,Ke=W.wrapperProps,Ue=this.state.loaded,Pt=Ue?" lazy-load-image-loaded":"",st=Ue||!se?{}:{backgroundImage:"url(".concat(se,")"),backgroundSize:"100% 100%"};return a().createElement("span",Ri({className:Xe+" lazy-load-image-background "+ue+Pt,style:Wt(Wt({},st),{},{color:"transparent",display:"inline-block",height:oe,width:Ie})},Ke),j)}},{key:"render",value:function(){var j=this.props,W=j.effect,ue=j.placeholderSrc,oe=j.visibleByDefault,se=j.wrapperClassName,Ie=j.wrapperProps,Xe=this.getLazyLoadImage();return(W||ue)&&!oe||se||Ie?this.getWrappedLazyLoadImage(Xe):Xe}}])&&Xc(k.prototype,X),Object.defineProperty(k,"prototype",{writable:!1}),je}(a().Component);gs.propTypes={onLoad:l.PropTypes.func,afterLoad:l.PropTypes.func,beforeLoad:l.PropTypes.func,delayMethod:l.PropTypes.string,delayTime:l.PropTypes.number,effect:l.PropTypes.string,placeholderSrc:l.PropTypes.string,threshold:l.PropTypes.number,useIntersectionObserver:l.PropTypes.bool,visibleByDefault:l.PropTypes.bool,wrapperClassName:l.PropTypes.string,wrapperProps:l.PropTypes.object},gs.defaultProps={onLoad:function(){},afterLoad:function(){return{}},beforeLoad:function(){return{}},delayMethod:"throttle",delayTime:300,effect:"",placeholderSrc:null,threshold:100,useIntersectionObserver:!0,visibleByDefault:!1,wrapperClassName:""};let Kc=gs})(),e1.exports=n})()});var ZT={};Bb(ZT,{AnnotationContext:()=>jT,AnnotationPageContext:()=>VT,AnnotationStyleProvider:()=>uT,Auth:()=>Mf,AuthProvider:()=>Rf,AuthRContext:()=>to,AuthReactContext:()=>kS,AuthReactContextActions:()=>OS,CanvasAnnotations:()=>KI,CanvasContext:()=>Vi,CanvasPanel:()=>Bt,CanvasStrategyProvider:()=>um,CanvasWorldObject:()=>cm,CollectionContext:()=>UT,CombinedMetadata:()=>ZI,ComplexTimelineProvider:()=>mm,ContextBridge:()=>Nf,ControlsReactContext:()=>Ma,CreateCustomShape:()=>Wm,CustomContextBridge:()=>HS,CustomContextBridgeProvider:()=>pI,EventsProvider:()=>hI,Image:()=>Zw,ImageService:()=>BT,ImageServiceLoaderContext:()=>Dw,InnerViewerProvider:()=>DS,LanguageProvider:()=>VI,LanguageString:()=>_w,LocaleString:()=>Ii,ManifestContext:()=>vf,ManifestMetadata:()=>eT,MediaPlayerProvider:()=>La,Metadata:()=>Da,PolygonSelector:()=>NT,RangeContext:()=>xf,ReactEventContext:()=>io,ReactVaultContext:()=>mr,Render3DModelStrategy:()=>wm,RenderAccompanyingCanvas:()=>Am,RenderAnnotationStrategy:()=>bm,RenderAudioStrategy:()=>Em,RenderComplexTimelineStrategy:()=>gm,RenderEmptyStrategy:()=>dm,RenderImageStrategy:()=>xm,RenderSvgEditorControls:()=>oT,RenderTextualContentStrategy:()=>ym,RenderVideoStrategy:()=>Tm,RenderYouTubeStrategy:()=>Rm,ResourceProvider:()=>ei,ResourceReactContext:()=>ea,SelectorControllerProvider:()=>sT,SequenceThumbnails:()=>nT,SimpleViewerProvider:()=>Of,SimpleViewerReactContext:()=>is,SingleCanvasThumbnail:()=>km,StrategyReactContext:()=>_a,ThumbnailFallbackImage:()=>ho,TranslationProvider:()=>jI,TransliterationProvider:()=>UI,VaultProvider:()=>Kr,ViewerPresetContext:()=>Ui,VirtualAnnotationProvider:()=>Vf,VisibleCanvasReactContext:()=>Jr,authDetailsForResource:()=>Af,createAuthStateStore:()=>Pf,createProbe:()=>Ef,defaultEmitter:()=>VS,emptyActions:()=>Zf,emptyStrategy:()=>Jf,expandTarget:()=>Nt,findAllCanvasesInRange:()=>oc,findFirstCanvasFromRange:()=>fS,findManifestSelectedRange:()=>NA,findSelectedRange:()=>Sf,flattenAnnotationPageIds:()=>em,formatTime:()=>Pc,get3dStrategy:()=>nm,getComplexTimelineStrategy:()=>rm,getDefaultAnnotationStyles:()=>zm,getImageStrategy:()=>Ia,getManifestSequence:()=>sc,getParsedTargetSelector:()=>ba,getRenderingStrategy:()=>sm,getTextualContentStrategy:()=>Ta,getVideoStrategy:()=>Ra,getVisibleCanvasesFromCanvasId:()=>BA,hasAuth:()=>oI,isImageApiSelector:()=>mc,makeAccessServiceRequest:()=>Cf,makeAccessTokenRequest:()=>lc,parseRotation:()=>gc,parseSelector:()=>Wn,parseSpecificResource:()=>kI,svgThemes:()=>y1,unknownResponse:()=>Ca,unsupportedStrategy:()=>et,useAnnotation:()=>Sa,useAnnotationPage:()=>$f,useAnnotationPageManager:()=>Ea,useAnnotationStyles:()=>Nm,useAnnotationsAtTime:()=>WT,useAuthActions:()=>LS,useAuthService:()=>zS,useAuthStore:()=>es,useAuthToken:()=>aI,useAuthTokens:()=>If,useCanvas:()=>Ce,useCanvasChoices:()=>HT,useCanvasClock:()=>qT,useCanvasSequence:()=>wf,useCanvasStartTime:()=>za,useCanvasSubset:()=>QT,useClosestLanguage:()=>kw,useCollection:()=>$T,useComplexTimeline:()=>qI,useContextBridge:()=>Ff,useCreateLocaleString:()=>WI,useCurrentAuth:()=>sI,useCustomContextBridge:()=>zf,useDispatch:()=>Bf,useEventEmitter:()=>fa,useEventListener:()=>GT,useExistingVault:()=>Zr,useExternalCollection:()=>YT,useExternalManifest:()=>yf,useExternalResource:()=>la,useIIIFLanguage:()=>Ec,useImage:()=>Bc,useImageService:()=>qm,useImageServiceLoader:()=>Oa,useImageTile:()=>XT,useIsAuthEnabled:()=>_f,useLoadImageService:()=>Aa,useLocaleString:()=>Ow,useManifest:()=>vt,useMediaActions:()=>$I,useMediaElements:()=>GI,useMediaState:()=>QI,usePaintables:()=>im,usePaintingAnnotations:()=>oo,usePolygonHelper:()=>Vm,useRange:()=>ua,useRenderControls:()=>ni,useRenderingStrategy:()=>am,useResourceContext:()=>Xt,useResourceEvents:()=>ya,useResources:()=>tm,useSearchService:()=>kf,useSelectorController:()=>Lm,useSelectorEmitter:()=>aT,useSelectorEvents:()=>Om,useSelectorHelper:()=>lT,useSimpleMediaPlayer:()=>ao,useSimpleViewer:()=>pa,useStrategy:()=>pt,useStyleHelper:()=>KT,useStyles:()=>ro,useSvgEditor:()=>Um,useThumbnail:()=>Qn,useTranslations:()=>pm,useTransliteration:()=>hm,useVault:()=>_e,useVaultEffect:()=>vm,useVaultSelector:()=>De,useViewerPreset:()=>ma,useVirtualAnnotationPage:()=>Df,useVirtualAnnotationPageContext:()=>jf,useVisibleCanvases:()=>eo});var mo=T(H(),1);var ii=T(H(),1);var or=(e,t,i)=>{let n=e.length,r=i||re(n);for(let a=0;a<n;a++)r[a]=a%5===0?e[a+1]<t[3]&&e[a+3]>t[1]&&e[a+2]<t[4]&&e[a+4]>t[2]?1:0:e[a];return r};function re(e,t,i){return new Float32Array(e,t,i)}var My=(e,t,i)=>{let n=e[1]<=t[3]&&e[3]>=t[1]&&e[2]<=t[4]&&e[4]>=t[2],r=i||re(5);return n?(r[0]=1,r[1]=Math.max(e[1],t[1]),r[2]=Math.max(e[2],t[2]),r[3]=Math.min(e[3],t[3]),r[4]=Math.min(e[4],t[4]),r):(r[0]=0,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r)},ky=e=>e.length/5;var pi=(e,t,i)=>{let n=i||re(9);return n[0]=e[0]*t[0]+e[1]*t[3]+e[2]*t[6],n[1]=e[0]*t[1]+e[1]*t[4]+e[2]*t[7],n[2]=e[0]*t[2]+e[1]*t[5]+e[2]*t[8],n[3]=e[3]*t[0]+e[4]*t[3]+e[5]*t[6],n[4]=e[3]*t[1]+e[4]*t[4]+e[5]*t[7],n[5]=e[3]*t[2]+e[4]*t[5]+e[5]*t[8],n[6]=e[6]*t[0]+e[7]*t[3]+e[8]*t[6],n[7]=e[6]*t[1]+e[7]*t[4]+e[8]*t[7],n[8]=e[6]*t[2]+e[7]*t[5]+e[8]*t[8],n},xe=class e{constructor(t){this.index=0,this.length=t,this.points=re(this.length)}static grid(t=1,i=1){return new e(5*t*i)}static point(t,i){let n=re(5);return n[0]=1,n[1]=t,n[2]=i,n[3]=t,n[4]=i,n}static positionPair(t){let i=re(5);return i[0]=1,i[1]=t.x1,i[2]=t.y1,i[3]=t.x2,i[4]=t.y2,i}static projection(t){return e.singleBox(t.width,t.height,t.x,t.y)}static singleBox(t,i,n=0,r=0){let a=re(5);return a[0]=1,a[1]=n,a[2]=r,a[3]=t+n,a[4]=i+r,a}row(t){return t(this)}addPoints(t,i,n,r){return this.points[this.index]=1,this.points[1+this.index]=t,this.points[2+this.index]=i,this.points[3+this.index]=n,this.points[4+this.index]=r,this.index+=5,this}addBox(t,i,n,r){return this.addPoints(t,i,t+n,i+r),this}build(){return this.points}};var Zt=(e,t)=>{let i=e.length;for(let n=0;n<i;n++)e[n]=n%5===0?t[6]*e[n+1]+t[7]*e[n+2]+t[8]*e[n]:n%5%2===1?t[0]*e[n]+t[1]*e[n+1]+t[2]:t[3]*e[n-1]+t[4]*e[n]+t[5];return e},wi=e=>{let t=re(9);return t[0]=e,t[4]=e,t[8]=1,t},ut=(e,t)=>{let i=re(9);return i[0]=1,i[2]=e,i[4]=1,i[5]=t,i[8]=1,i},On=(e,t,i)=>pi(ut((1-e)*t,(1-e)*i),wi(e)),bi=(e,t,i)=>{let n=e.length,r=i&&i.length>=n?i.slice(0,n):re(n);for(let a=0;a<n;a++)r[a]=a%5===0?t[6]*e[a+1]+t[7]*e[a+2]+t[8]*e[a]:a%5%2===1?t[0]*e[a]+t[1]*e[a+1]+t[2]:t[3]*e[a-1]+t[4]*e[a]+t[5];return r};var Ns=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,jb=typeof AbortController=="function",Nl=jb?AbortController:class{constructor(){this.signal=new Oy}abort(t=new Error("This operation was aborted")){this.signal.reason=this.signal.reason||t,this.signal.aborted=!0,this.signal.dispatchEvent({type:"abort",target:this.signal})}},Vb=typeof AbortSignal=="function",Ub=typeof Nl.AbortSignal=="function",Oy=Vb?AbortSignal:Ub?Nl.AbortController:class{constructor(){this.reason=void 0,this.aborted=!1,this._listeners=[]}dispatchEvent(t){t.type==="abort"&&(this.aborted=!0,this.onabort(t),this._listeners.forEach(i=>i(t),this))}onabort(){}addEventListener(t,i){t==="abort"&&this._listeners.push(i)}removeEventListener(t,i){t==="abort"&&(this._listeners=this._listeners.filter(n=>n!==i))}},fh=new Set,dh=(e,t)=>{let i=`LRU_CACHE_OPTION_${e}`;Bl(i)&&mh(i,`${e} option`,`options.${t}`,Mo)},hh=(e,t)=>{let i=`LRU_CACHE_METHOD_${e}`;if(Bl(i)){let{prototype:n}=Mo,{get:r}=Object.getOwnPropertyDescriptor(n,e);mh(i,`${e} method`,`cache.${t}()`,r)}},Wb=(e,t)=>{let i=`LRU_CACHE_PROPERTY_${e}`;if(Bl(i)){let{prototype:n}=Mo,{get:r}=Object.getOwnPropertyDescriptor(n,e);mh(i,`${e} property`,`cache.${t}`,r)}},Ly=(...e)=>{typeof process=="object"&&process&&typeof process.emitWarning=="function"?process.emitWarning(...e):console.error(...e)},Bl=e=>!fh.has(e),mh=(e,t,i,n)=>{fh.add(e);let r=`The ${t} is deprecated. Please use ${i} instead.`;Ly(r,"DeprecationWarning",e,n)},sr=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e),zy=e=>sr(e)?e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?_o:null:null,_o=class extends Array{constructor(t){super(t),this.fill(0)}},ph=class{constructor(t){if(t===0)return[];let i=zy(t);this.heap=new i(t),this.length=0}push(t){this.heap[this.length++]=t}pop(){return this.heap[--this.length]}},Mo=class e{constructor(t={}){let{max:i=0,ttl:n,ttlResolution:r=1,ttlAutopurge:a,updateAgeOnGet:l,updateAgeOnHas:c,allowStale:p,dispose:m,disposeAfter:h,noDisposeOnSet:y,noUpdateTTL:S,maxSize:w=0,maxEntrySize:v=0,sizeCalculation:x,fetchMethod:A,fetchContext:C,noDeleteOnFetchRejection:I,noDeleteOnStaleGet:E,allowStaleOnFetchRejection:O,allowStaleOnFetchAbort:L,ignoreFetchAbort:M}=t,{length:Q,maxAge:V,stale:J}=t instanceof e?{}:t;if(i!==0&&!sr(i))throw new TypeError("max option must be a nonnegative integer");let U=i?zy(i):Array;if(!U)throw new Error("invalid max value: "+i);if(this.max=i,this.maxSize=w,this.maxEntrySize=v||this.maxSize,this.sizeCalculation=x||Q,this.sizeCalculation){if(!this.maxSize&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(this.fetchMethod=A||null,this.fetchMethod&&typeof this.fetchMethod!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.fetchContext=C,!this.fetchMethod&&C!==void 0)throw new TypeError("cannot set fetchContext without fetchMethod");if(this.keyMap=new Map,this.keyList=new Array(i).fill(null),this.valList=new Array(i).fill(null),this.next=new U(i),this.prev=new U(i),this.head=0,this.tail=0,this.free=new ph(i),this.initialFill=1,this.size=0,typeof m=="function"&&(this.dispose=m),typeof h=="function"?(this.disposeAfter=h,this.disposed=[]):(this.disposeAfter=null,this.disposed=null),this.noDisposeOnSet=!!y,this.noUpdateTTL=!!S,this.noDeleteOnFetchRejection=!!I,this.allowStaleOnFetchRejection=!!O,this.allowStaleOnFetchAbort=!!L,this.ignoreFetchAbort=!!M,this.maxEntrySize!==0){if(this.maxSize!==0&&!sr(this.maxSize))throw new TypeError("maxSize must be a positive integer if specified");if(!sr(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.initializeSizeTracking()}if(this.allowStale=!!p||!!J,this.noDeleteOnStaleGet=!!E,this.updateAgeOnGet=!!l,this.updateAgeOnHas=!!c,this.ttlResolution=sr(r)||r===0?r:1,this.ttlAutopurge=!!a,this.ttl=n||V||0,this.ttl){if(!sr(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.initializeTTLTracking()}if(this.max===0&&this.ttl===0&&this.maxSize===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.max&&!this.maxSize){let q="LRU_CACHE_UNBOUNDED";Bl(q)&&(fh.add(q),Ly("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",q,e))}J&&dh("stale","allowStale"),V&&dh("maxAge","ttl"),Q&&dh("length","sizeCalculation")}getRemainingTTL(t){return this.has(t,{updateAgeOnHas:!1})?1/0:0}initializeTTLTracking(){this.ttls=new _o(this.max),this.starts=new _o(this.max),this.setItemTTL=(n,r,a=Ns.now())=>{if(this.starts[n]=r!==0?a:0,this.ttls[n]=r,r!==0&&this.ttlAutopurge){let l=setTimeout(()=>{this.isStale(n)&&this.delete(this.keyList[n])},r+1);l.unref&&l.unref()}},this.updateItemAge=n=>{this.starts[n]=this.ttls[n]!==0?Ns.now():0},this.statusTTL=(n,r)=>{n&&(n.ttl=this.ttls[r],n.start=this.starts[r],n.now=t||i(),n.remainingTTL=n.now+n.ttl-n.start)};let t=0,i=()=>{let n=Ns.now();if(this.ttlResolution>0){t=n;let r=setTimeout(()=>t=0,this.ttlResolution);r.unref&&r.unref()}return n};this.getRemainingTTL=n=>{let r=this.keyMap.get(n);return r===void 0?0:this.ttls[r]===0||this.starts[r]===0?1/0:this.starts[r]+this.ttls[r]-(t||i())},this.isStale=n=>this.ttls[n]!==0&&this.starts[n]!==0&&(t||i())-this.starts[n]>this.ttls[n]}updateItemAge(t){}statusTTL(t,i){}setItemTTL(t,i,n){}isStale(t){return!1}initializeSizeTracking(){this.calculatedSize=0,this.sizes=new _o(this.max),this.removeItemSize=t=>{this.calculatedSize-=this.sizes[t],this.sizes[t]=0},this.requireSize=(t,i,n,r)=>{if(this.isBackgroundFetch(i))return 0;if(!sr(n))if(r){if(typeof r!="function")throw new TypeError("sizeCalculation must be a function");if(n=r(i,t),!sr(n))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return n},this.addItemSize=(t,i,n)=>{if(this.sizes[t]=i,this.maxSize){let r=this.maxSize-this.sizes[t];for(;this.calculatedSize>r;)this.evict(!0)}this.calculatedSize+=this.sizes[t],n&&(n.entrySize=i,n.totalCalculatedSize=this.calculatedSize)}}removeItemSize(t){}addItemSize(t,i){}requireSize(t,i,n,r){if(n||r)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache")}*indexes({allowStale:t=this.allowStale}={}){if(this.size)for(let i=this.tail;!(!this.isValidIndex(i)||((t||!this.isStale(i))&&(yield i),i===this.head));)i=this.prev[i]}*rindexes({allowStale:t=this.allowStale}={}){if(this.size)for(let i=this.head;!(!this.isValidIndex(i)||((t||!this.isStale(i))&&(yield i),i===this.tail));)i=this.next[i]}isValidIndex(t){return t!==void 0&&this.keyMap.get(this.keyList[t])===t}*entries(){for(let t of this.indexes())this.valList[t]!==void 0&&this.keyList[t]!==void 0&&!this.isBackgroundFetch(this.valList[t])&&(yield[this.keyList[t],this.valList[t]])}*rentries(){for(let t of this.rindexes())this.valList[t]!==void 0&&this.keyList[t]!==void 0&&!this.isBackgroundFetch(this.valList[t])&&(yield[this.keyList[t],this.valList[t]])}*keys(){for(let t of this.indexes())this.keyList[t]!==void 0&&!this.isBackgroundFetch(this.valList[t])&&(yield this.keyList[t])}*rkeys(){for(let t of this.rindexes())this.keyList[t]!==void 0&&!this.isBackgroundFetch(this.valList[t])&&(yield this.keyList[t])}*values(){for(let t of this.indexes())this.valList[t]!==void 0&&!this.isBackgroundFetch(this.valList[t])&&(yield this.valList[t])}*rvalues(){for(let t of this.rindexes())this.valList[t]!==void 0&&!this.isBackgroundFetch(this.valList[t])&&(yield this.valList[t])}[Symbol.iterator](){return this.entries()}find(t,i){for(let n of this.indexes()){let r=this.valList[n],a=this.isBackgroundFetch(r)?r.__staleWhileFetching:r;if(a!==void 0&&t(a,this.keyList[n],this))return this.get(this.keyList[n],i)}}forEach(t,i=this){for(let n of this.indexes()){let r=this.valList[n],a=this.isBackgroundFetch(r)?r.__staleWhileFetching:r;a!==void 0&&t.call(i,a,this.keyList[n],this)}}rforEach(t,i=this){for(let n of this.rindexes()){let r=this.valList[n],a=this.isBackgroundFetch(r)?r.__staleWhileFetching:r;a!==void 0&&t.call(i,a,this.keyList[n],this)}}get prune(){return hh("prune","purgeStale"),this.purgeStale}purgeStale(){let t=!1;for(let i of this.rindexes({allowStale:!0}))this.isStale(i)&&(this.delete(this.keyList[i]),t=!0);return t}dump(){let t=[];for(let i of this.indexes({allowStale:!0})){let n=this.keyList[i],r=this.valList[i],a=this.isBackgroundFetch(r)?r.__staleWhileFetching:r;if(a===void 0)continue;let l={value:a};if(this.ttls){l.ttl=this.ttls[i];let c=Ns.now()-this.starts[i];l.start=Math.floor(Date.now()-c)}this.sizes&&(l.size=this.sizes[i]),t.unshift([n,l])}return t}load(t){this.clear();for(let[i,n]of t){if(n.start){let r=Date.now()-n.start;n.start=Ns.now()-r}this.set(i,n.value,n)}}dispose(t,i,n){}set(t,i,{ttl:n=this.ttl,start:r,noDisposeOnSet:a=this.noDisposeOnSet,size:l=0,sizeCalculation:c=this.sizeCalculation,noUpdateTTL:p=this.noUpdateTTL,status:m}={}){if(l=this.requireSize(t,i,l,c),this.maxEntrySize&&l>this.maxEntrySize)return m&&(m.set="miss",m.maxEntrySizeExceeded=!0),this.delete(t),this;let h=this.size===0?void 0:this.keyMap.get(t);if(h===void 0)h=this.newIndex(),this.keyList[h]=t,this.valList[h]=i,this.keyMap.set(t,h),this.next[this.tail]=h,this.prev[h]=this.tail,this.tail=h,this.size++,this.addItemSize(h,l,m),m&&(m.set="add"),p=!1;else{this.moveToTail(h);let y=this.valList[h];if(i!==y){if(this.isBackgroundFetch(y)?y.__abortController.abort(new Error("replaced")):a||(this.dispose(y,t,"set"),this.disposeAfter&&this.disposed.push([y,t,"set"])),this.removeItemSize(h),this.valList[h]=i,this.addItemSize(h,l,m),m){m.set="replace";let S=y&&this.isBackgroundFetch(y)?y.__staleWhileFetching:y;S!==void 0&&(m.oldValue=S)}}else m&&(m.set="update")}if(n!==0&&this.ttl===0&&!this.ttls&&this.initializeTTLTracking(),p||this.setItemTTL(h,n,r),this.statusTTL(m,h),this.disposeAfter)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return this}newIndex(){return this.size===0?this.tail:this.size===this.max&&this.max!==0?this.evict(!1):this.free.length!==0?this.free.pop():this.initialFill++}pop(){if(this.size){let t=this.valList[this.head];return this.evict(!0),t}}evict(t){let i=this.head,n=this.keyList[i],r=this.valList[i];return this.isBackgroundFetch(r)?r.__abortController.abort(new Error("evicted")):(this.dispose(r,n,"evict"),this.disposeAfter&&this.disposed.push([r,n,"evict"])),this.removeItemSize(i),t&&(this.keyList[i]=null,this.valList[i]=null,this.free.push(i)),this.head=this.next[i],this.keyMap.delete(n),this.size--,i}has(t,{updateAgeOnHas:i=this.updateAgeOnHas,status:n}={}){let r=this.keyMap.get(t);if(r!==void 0)if(this.isStale(r))n&&(n.has="stale",this.statusTTL(n,r));else return i&&this.updateItemAge(r),n&&(n.has="hit"),this.statusTTL(n,r),!0;else n&&(n.has="miss");return!1}peek(t,{allowStale:i=this.allowStale}={}){let n=this.keyMap.get(t);if(n!==void 0&&(i||!this.isStale(n))){let r=this.valList[n];return this.isBackgroundFetch(r)?r.__staleWhileFetching:r}}backgroundFetch(t,i,n,r){let a=i===void 0?void 0:this.valList[i];if(this.isBackgroundFetch(a))return a;let l=new Nl;n.signal&&n.signal.addEventListener("abort",()=>l.abort(n.signal.reason));let c={signal:l.signal,options:n,context:r},p=(w,v=!1)=>{let{aborted:x}=l.signal,A=n.ignoreFetchAbort&&w!==void 0;return n.status&&(x&&!v?(n.status.fetchAborted=!0,n.status.fetchError=l.signal.reason,A&&(n.status.fetchAbortIgnored=!0)):n.status.fetchResolved=!0),x&&!A&&!v?h(l.signal.reason):(this.valList[i]===S&&(w===void 0?S.__staleWhileFetching?this.valList[i]=S.__staleWhileFetching:this.delete(t):(n.status&&(n.status.fetchUpdated=!0),this.set(t,w,c.options))),w)},m=w=>(n.status&&(n.status.fetchRejected=!0,n.status.fetchError=w),h(w)),h=w=>{let{aborted:v}=l.signal,x=v&&n.allowStaleOnFetchAbort,A=x||n.allowStaleOnFetchRejection,C=A||n.noDeleteOnFetchRejection;if(this.valList[i]===S&&(!C||S.__staleWhileFetching===void 0?this.delete(t):x||(this.valList[i]=S.__staleWhileFetching)),A)return n.status&&S.__staleWhileFetching!==void 0&&(n.status.returnedStale=!0),S.__staleWhileFetching;if(S.__returned===S)throw w},y=(w,v)=>{this.fetchMethod(t,a,c).then(x=>w(x),v),l.signal.addEventListener("abort",()=>{(!n.ignoreFetchAbort||n.allowStaleOnFetchAbort)&&(w(),n.allowStaleOnFetchAbort&&(w=x=>p(x,!0)))})};n.status&&(n.status.fetchDispatched=!0);let S=new Promise(y).then(p,m);return S.__abortController=l,S.__staleWhileFetching=a,S.__returned=null,i===void 0?(this.set(t,S,{...c.options,status:void 0}),i=this.keyMap.get(t)):this.valList[i]=S,S}isBackgroundFetch(t){return t&&typeof t=="object"&&typeof t.then=="function"&&Object.prototype.hasOwnProperty.call(t,"__staleWhileFetching")&&Object.prototype.hasOwnProperty.call(t,"__returned")&&(t.__returned===t||t.__returned===null)}async fetch(t,{allowStale:i=this.allowStale,updateAgeOnGet:n=this.updateAgeOnGet,noDeleteOnStaleGet:r=this.noDeleteOnStaleGet,ttl:a=this.ttl,noDisposeOnSet:l=this.noDisposeOnSet,size:c=0,sizeCalculation:p=this.sizeCalculation,noUpdateTTL:m=this.noUpdateTTL,noDeleteOnFetchRejection:h=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:y=this.allowStaleOnFetchRejection,ignoreFetchAbort:S=this.ignoreFetchAbort,allowStaleOnFetchAbort:w=this.allowStaleOnFetchAbort,fetchContext:v=this.fetchContext,forceRefresh:x=!1,status:A,signal:C}={}){if(!this.fetchMethod)return A&&(A.fetch="get"),this.get(t,{allowStale:i,updateAgeOnGet:n,noDeleteOnStaleGet:r,status:A});let I={allowStale:i,updateAgeOnGet:n,noDeleteOnStaleGet:r,ttl:a,noDisposeOnSet:l,size:c,sizeCalculation:p,noUpdateTTL:m,noDeleteOnFetchRejection:h,allowStaleOnFetchRejection:y,allowStaleOnFetchAbort:w,ignoreFetchAbort:S,status:A,signal:C},E=this.keyMap.get(t);if(E===void 0){A&&(A.fetch="miss");let O=this.backgroundFetch(t,E,I,v);return O.__returned=O}else{let O=this.valList[E];if(this.isBackgroundFetch(O)){let J=i&&O.__staleWhileFetching!==void 0;return A&&(A.fetch="inflight",J&&(A.returnedStale=!0)),J?O.__staleWhileFetching:O.__returned=O}let L=this.isStale(E);if(!x&&!L)return A&&(A.fetch="hit"),this.moveToTail(E),n&&this.updateItemAge(E),this.statusTTL(A,E),O;let M=this.backgroundFetch(t,E,I,v),Q=M.__staleWhileFetching!==void 0,V=Q&&i;return A&&(A.fetch=Q&&L?"stale":"refresh",V&&L&&(A.returnedStale=!0)),V?M.__staleWhileFetching:M.__returned=M}}get(t,{allowStale:i=this.allowStale,updateAgeOnGet:n=this.updateAgeOnGet,noDeleteOnStaleGet:r=this.noDeleteOnStaleGet,status:a}={}){let l=this.keyMap.get(t);if(l!==void 0){let c=this.valList[l],p=this.isBackgroundFetch(c);return this.statusTTL(a,l),this.isStale(l)?(a&&(a.get="stale"),p?(a&&(a.returnedStale=i&&c.__staleWhileFetching!==void 0),i?c.__staleWhileFetching:void 0):(r||this.delete(t),a&&(a.returnedStale=i),i?c:void 0)):(a&&(a.get="hit"),p?c.__staleWhileFetching:(this.moveToTail(l),n&&this.updateItemAge(l),c))}else a&&(a.get="miss")}connect(t,i){this.prev[i]=t,this.next[t]=i}moveToTail(t){t!==this.tail&&(t===this.head?this.head=this.next[t]:this.connect(this.prev[t],this.next[t]),this.connect(this.tail,t),this.tail=t)}get del(){return hh("del","delete"),this.delete}delete(t){let i=!1;if(this.size!==0){let n=this.keyMap.get(t);if(n!==void 0)if(i=!0,this.size===1)this.clear();else{this.removeItemSize(n);let r=this.valList[n];this.isBackgroundFetch(r)?r.__abortController.abort(new Error("deleted")):(this.dispose(r,t,"delete"),this.disposeAfter&&this.disposed.push([r,t,"delete"])),this.keyMap.delete(t),this.keyList[n]=null,this.valList[n]=null,n===this.tail?this.tail=this.prev[n]:n===this.head?this.head=this.next[n]:(this.next[this.prev[n]]=this.next[n],this.prev[this.next[n]]=this.prev[n]),this.size--,this.free.push(n)}}if(this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift());return i}clear(){for(let t of this.rindexes({allowStale:!0})){let i=this.valList[t];if(this.isBackgroundFetch(i))i.__abortController.abort(new Error("deleted"));else{let n=this.keyList[t];this.dispose(i,n,"delete"),this.disposeAfter&&this.disposed.push([i,n,"delete"])}}if(this.keyMap.clear(),this.valList.fill(null),this.keyList.fill(null),this.ttls&&(this.ttls.fill(0),this.starts.fill(0)),this.sizes&&this.sizes.fill(0),this.head=0,this.tail=0,this.initialFill=1,this.free.length=0,this.calculatedSize=0,this.size=0,this.disposed)for(;this.disposed.length;)this.disposeAfter(...this.disposed.shift())}get reset(){return hh("reset","clear"),this.clear}get length(){return Wb("length","size"),this.size}static get AbortController(){return Nl}static get AbortSignal(){return Oy}},Fy=Mo;var Ux=T(nv(),1);var dt=T(H(),1),Au=T(H(),1),IP=T(B(),1);var Ci=T(H(),1);function av(e,t){let i;return(...n)=>{window.clearTimeout(i),i=window.setTimeout(()=>e(...n),t)}}function Hl({debounce:e,scroll:t,polyfill:i,offsetSize:n}={debounce:0,scroll:!1,offsetSize:!1}){let r=i||(typeof window>"u"?class{}:window.ResizeObserver);if(!r)throw new Error("This browser does not support ResizeObserver out of the box. See: https://github.com/react-spring/react-use-measure/#resize-observer-polyfills");let[a,l]=(0,Ci.useState)({left:0,top:0,width:0,height:0,bottom:0,right:0,x:0,y:0}),c=(0,Ci.useRef)({element:null,scrollContainers:null,resizeObserver:null,lastBounds:a,orientationHandler:null}),p=e?typeof e=="number"?e:e.scroll:null,m=e?typeof e=="number"?e:e.resize:null,h=(0,Ci.useRef)(!1);(0,Ci.useEffect)(()=>(h.current=!0,()=>void(h.current=!1)));let[y,S,w]=(0,Ci.useMemo)(()=>{let C=()=>{if(!c.current.element)return;let{left:I,top:E,width:O,height:L,bottom:M,right:Q,x:V,y:J}=c.current.element.getBoundingClientRect(),U={left:I,top:E,width:O,height:L,bottom:M,right:Q,x:V,y:J};c.current.element instanceof HTMLElement&&n&&(U.height=c.current.element.offsetHeight,U.width=c.current.element.offsetWidth),Object.freeze(U),h.current&&!nC(c.current.lastBounds,U)&&l(c.current.lastBounds=U)};return[C,m?av(C,m):C,p?av(C,p):C]},[l,n,p,m]);function v(){c.current.scrollContainers&&(c.current.scrollContainers.forEach(C=>C.removeEventListener("scroll",w,!0)),c.current.scrollContainers=null),c.current.resizeObserver&&(c.current.resizeObserver.disconnect(),c.current.resizeObserver=null),c.current.orientationHandler&&("orientation"in screen&&"removeEventListener"in screen.orientation?screen.orientation.removeEventListener("change",c.current.orientationHandler):"onorientationchange"in window&&window.removeEventListener("orientationchange",c.current.orientationHandler))}function x(){c.current.element&&(c.current.resizeObserver=new r(w),c.current.resizeObserver.observe(c.current.element),t&&c.current.scrollContainers&&c.current.scrollContainers.forEach(C=>C.addEventListener("scroll",w,{capture:!0,passive:!0})),c.current.orientationHandler=()=>{w()},"orientation"in screen&&"addEventListener"in screen.orientation?screen.orientation.addEventListener("change",c.current.orientationHandler):"onorientationchange"in window&&window.addEventListener("orientationchange",c.current.orientationHandler))}let A=C=>{!C||C===c.current.element||(v(),c.current.element=C,c.current.scrollContainers=lv(C),x())};return tC(w,!!t),eC(S),(0,Ci.useEffect)(()=>{v(),x()},[t,w,S]),(0,Ci.useEffect)(()=>v,[]),[A,a,y]}function eC(e){(0,Ci.useEffect)(()=>{let t=e;return window.addEventListener("resize",t),()=>void window.removeEventListener("resize",t)},[e])}function tC(e,t){(0,Ci.useEffect)(()=>{if(t){let i=e;return window.addEventListener("scroll",i,{capture:!0,passive:!0}),()=>void window.removeEventListener("scroll",i,!0)}},[e,t])}function lv(e){let t=[];if(!e||e===document.body)return t;let{overflow:i,overflowX:n,overflowY:r}=window.getComputedStyle(e);return[i,n,r].some(a=>a==="auto"||a==="scroll")&&t.push(e),[...t,...lv(e.parentElement)]}var iC=["x","y","top","bottom","left","right","width","height"],nC=(e,t)=>iC.every(i=>e[i]===t[i]);var Op=T(H(),1),wn=T(H(),1),Hx=T(Pv(),1),qx=T(H(),1),Ru=T(H(),1),zo=T(B(),1),Di=T(H(),1),t0=T(H(),1),i0=T(H(),1),n0=T(B(),1),Jt=T(B(),1),_u=T(H(),1);var Zs=T(B(),1),zp=T(H(),1),o0=T(H(),1),qP=T(H(),1),s0=T(H(),1),l0=T(H(),1),Sn=T(H(),1),u0=T(H(),1),Rp=T(B(),1),c0=T(H(),1),xn=T(H(),1),_t=T(H(),1),d0=T(H(),1),Lu=T(H(),1),St=T(B(),1),_p=T(B(),1),Mp=T(H(),1),Vr=T(B(),1),p0=T(H(),1);var oC=Object.defineProperty,sC=(e,t,i)=>t in e?oC(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,Xl=(e,t,i)=>(sC(e,typeof t!="symbol"?t+"":t,i),i);function Dr(e){return e.endsWith("info.json")?e:e.endsWith("/")?`${e}info.json`:`${e}/info.json`}var aC="http://library.stanford.edu/iiif/image-api/compliance.html#level0",Tv="http://library.stanford.edu/iiif/image-api/compliance.html#level1",Rv="http://library.stanford.edu/iiif/image-api/compliance.html#level2",lC="http://library.stanford.edu/iiif/image-api/conformance.html#level0",_v="http://library.stanford.edu/iiif/image-api/conformance.html#level1",Mv="http://library.stanford.edu/iiif/image-api/conformance.html#level2",uC="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level0",kv="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level1",Ov="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2",cC="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level0",Lv="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level1",zv="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level2",dC="http://iiif.io/api/image/1/level0.json",hC="http://iiif.io/api/image/1/profiles/level0.json",Fv="http://iiif.io/api/image/1/level1.json",Nv="http://iiif.io/api/image/1/profiles/level1.json",Bv="http://iiif.io/api/image/1/level2.json",Dv="http://iiif.io/api/image/1/profiles/level2.json",pC="http://iiif.io/api/image/2/level0.json",fC="http://iiif.io/api/image/2/profiles/level0.json",jv="http://iiif.io/api/image/2/level1.json",Vv="http://iiif.io/api/image/2/profiles/level1.json",Uv="http://iiif.io/api/image/2/level2.json",Wv="http://iiif.io/api/image/2/profiles/level2.json",mC="level0",Hv="level1",qv="level2",gC="http://iiif.io/api/image/2/level0",Qv="http://iiif.io/api/image/2/level1",$v="http://iiif.io/api/image/2/level2",yC="https://iiif.io/api/image/1.1/compliance/#level0",Gv="https://iiif.io/api/image/1.1/compliance/#level1",Yv="https://iiif.io/api/image/1.1/compliance/#level2",Xv=[$v,Rv,Mv,Ov,zv,Bv,Dv,Uv,Wv,qv,Yv],Kv=[...Xv,Qv,Tv,_v,kv,Lv,Fv,Nv,jv,Vv,Hv,Gv],vC=[gC,Qv,$v,aC,Tv,Rv,lC,_v,Mv,uC,kv,Ov,cC,Lv,zv,dC,hC,Fv,Nv,Bv,Dv,pC,fC,jv,Vv,Uv,Wv,mC,Hv,qv,yC,Gv,Yv];var xC={extraFormats:["jpg"],extraQualities:["default"],extraFeatures:["sizeByWhListed"]},SC={extraFormats:["jpg"],extraQualities:["default"],extraFeatures:["baseUriRedirect","cors","jsonldMediaType","regionByPx","regionSquare","sizeByWhListed","sizeByH","sizeByW","sizeByWh"]},wC={extraFormats:["jpg","png"],extraQualities:["default"],extraFeatures:["baseUriRedirect","cors","jsonldMediaType","regionByPct","regionByPx","regionSquare","rotationBy90s","sizeByWhListed","sizeByConfinedWh","sizeByH","sizeByPct","sizeByW","sizeByWh"]};function bC(e){return Xv.indexOf(e)!==-1?wC:Kv.indexOf(e)!==-1?SC:xC}function CC(e){let t=e?Array.isArray(e.profile)?e.profile:[e.profile]:[],i={extraQualities:[],extraFormats:[],extraFeatures:[]};for(let n of t)if(typeof n=="string"&&(n=bC(n)),!!n){if(n.formats)for(let r of n.formats)i.extraFormats.indexOf(r)===-1&&i.extraFormats.push(r);if(n.qualities)for(let r of n.qualities)i.extraQualities.indexOf(r)===-1&&i.extraQualities.push(r);if(n.supports)for(let r of n.supports)i.extraFeatures.indexOf(r)===-1&&i.extraFeatures.push(r);if(n.maxHeight&&(i.maxHeight=n.maxHeight),n.maxWidth&&(i.maxWidth=n.maxWidth),n.maxArea&&(i.maxArea=n.maxArea),n.extraFormats)for(let r of n.extraFormats)i.extraFormats.indexOf(r)===-1&&i.extraFormats.push(r);if(n.extraQualities)for(let r of n.extraQualities)i.extraQualities.indexOf(r)===-1&&i.extraQualities.push(r);if(n.extraFeatures)for(let r of n.extraFeatures)i.extraFeatures.indexOf(r)===-1&&i.extraFeatures.push(r);n.maxHeight&&(i.maxHeight=n.maxHeight),n.maxWidth&&(i.maxWidth=n.maxWidth),n.maxArea&&(i.maxArea=n.maxArea)}if(e.extraFormats)for(let n of e.extraFormats)i.extraFormats.indexOf(n)===-1&&i.extraFormats.push(n);if(e.extraFeatures)for(let n of e.extraFeatures)i.extraFeatures.indexOf(n)===-1&&i.extraFeatures.push(n);if(e.extraQualities)for(let n of e.extraQualities)i.extraQualities.indexOf(n)===-1&&i.extraQualities.push(n);return i}function PC(e){try{if(e==="full")return{full:!0};if(e==="square")return{square:!0};let t=e.startsWith("pct:"),i=e.substr(t?4:0).split(",").map(n=>parseFloat(n));return{x:i[0],y:i[1],w:i[2],h:i[3],percent:t}}catch{throw new Error("Expected 'full', 'square' or 'x,y,w,h'. Found "+e)}}function EC(e){let t={upscaled:!1,max:!1,confined:!1};if(e[0]==="^"&&(t.upscaled=!0,e=e.slice(1)),e==="max"||e==="full")return t.max=!0,t.serialiseAsFull=e==="full",t;if(e[0]==="!"&&(t.confined=!0,e=e.slice(1)),e[0]==="p")return t.percentScale=parseFloat(e.slice(4)),t;let i=e.split(",").map(n=>n.trim());return i.length&&typeof i[0]<"u"&&(i[0]!==""&&(t.width=parseInt(i[0],10)),typeof i[1]<"u"&&i[1]!==""?(t.height=parseInt(i[1],10),t.version=2):t.version=3),t}function AC(e){let t={angle:0};if(e[0]==="!"&&(t.mirror=!0,e=e.substr(1)),t.angle=parseFloat(e)%360,Number.isNaN(t.angle))throw new Error(`Invalid rotation ${e}`);return t}function IC(e,t=""){let i=e.match(/^(([a-zA-Z]+):\/\/([^/]+))?((.*)+)/);if(!i)throw new Error(`Invalid or unknown input ${e}`);let n=i[2],r=i[3],a=i[4];if(a[0]==="/"&&(a=a.substring(1)),t.length>0){if(t[0]==="/"&&(t=t.substring(1)),t!==a.substring(0,t.length))throw new Error(`Path does not start with prefix (path: ${a}, prefix: ${t})`);a=a.substring(t.length)}return{scheme:n,server:r,path:a,prefix:t}}function TC(e,t=""){let{path:i,scheme:n,server:r,prefix:a}=IC(e,t),l=(i||"").split("/").reverse(),[c,p,m,h,...y]=l,S=y.reverse().filter(Boolean).join("/");if(l.length===1||c==="")return{type:"base",scheme:n,server:r,prefix:a,identifier:S};if(c==="info.json"){let[,...v]=l;return{type:"info",scheme:n,server:r,prefix:a,identifier:v.reverse().filter(Boolean).join("/")}}let w=(c||"").split(".");if(typeof w[1]>"u"||typeof w[0]>"u"||typeof h>"u"||typeof m>"u"||typeof p>"u")throw new Error("Invalid image request");return{type:"image",scheme:n,server:r,prefix:a,identifier:S,originalPath:i,region:PC(h),size:EC(m),rotation:AC(p),quality:w[0],format:w[1]}}function RC(e){let t=TC(Dr(e.id));if(t.type!=="info")throw new Error("Invalid service URL");let i=CC(e);return{identifier:t.identifier,originalPath:"",server:t.server,prefix:t.prefix,scheme:t.scheme,type:"image",quality:i.extraQualities.indexOf("default")===-1?i.extraQualities[0]:"default",region:{full:!0},size:{max:!0,upscaled:!1,confined:!1},format:"jpg",rotation:{angle:0}}}function _C(e,t,i){let n=i.length,r=[];for(let a=0;a<n;a++){let l=i[a];if(l){let c=l.width;r.push(e/c)}}return r}function MC(e,t,i){let n=i.length,r=[];for(let a=0;a<n;a++){let l=i[a];l&&r.push({width:Math.floor(e/l),height:Math.floor(t/l)})}return r}function ft(e){if(e["@id"])return e["@id"];if(e.id)return e.id}function Zl(e){if(!e||!e.profile||!ft(e))return!1;let t=Array.isArray(e.profile)?e.profile:[e.profile];for(let i of t)if(typeof i=="string"&&vC.indexOf(i)!==-1)return!0;return!1}function kC(e){if(!Zl(e))return!1;let t=Array.isArray(e.profile)?e.profile:[e.profile];for(let i of t)if(typeof i=="string"){if(Kv.indexOf(i)!==-1)return!0}else{let n=[...i.supports||[],...i.extraFeatures||[]];if(n.indexOf("regionByPx")!==-1&&(n.indexOf("sizeByW")!==-1||n.indexOf("sizeByWh")!==-1))return!0}return!1}function Kl(e,t){if(t&&t.profile){let i=t.profile;if(i){let n=Array.isArray(i)?i:[i];return n.includes(`level${e}`)||n.includes(`http://iiif.io/api/image/2/level${e}.json`)||n.includes(`http://iiif.io/api/image/1/level${e}.json`)||n.includes(`http://iiif.io/api/image/1/profiles/level${e}.json`)}}return!1}function Lh(e){return Zl(e)?Kl(0,e)?0:Kl(1,e)?1:Kl(2,e)?2:null:null}function Zv(e){return(e["@context"]?Array.isArray(e["@context"])?e["@context"]:[e["@context"]]:[]).indexOf("http://iiif.io/api/image/3/context.json")!==-1}function OC(e){if(!kC(e))return[];let t=[],i=Array.isArray(e.profile)?e.profile:[e.profile],n=i.length;for(let r=0;r<n;r++){let a=i[r];if(a&&typeof a!="string"&&(a.maxHeight||a.maxWidth))return[{id:ft(e),type:"variable",minWidth:0,minHeight:0,maxHeight:a.maxHeight||a.maxWidth,maxWidth:a.maxWidth||a.maxHeight,level:Lh(e),version:e["@context"]==="http://iiif.io/api/image/3/context.json"?3:2}]}if(e.tiles){let r=e.tiles.length;for(let a=0;a<r;a++){let l=e.tiles[a];l&&(l.height||l.width)&&t.push({id:ft(e),type:"variable",minHeight:0,minWidth:0,maxHeight:l.height||l.width,maxWidth:l.width,level:Lh(e),version:Zv(e)?3:2})}}return t}function Ev(e){let t=/^.*\/(full)\/(((\d+),(\d+)?)|max)\/(\d+)\/default\.(jpg|png|jpeg)$/,i=e.match(t);if(i&&i[4]&&i[5]){let n=i[1],r=parseInt(i[4],10),a=parseInt(i[5],10),l=i[7];if((n==="max"||n==="full")&&r&&a&&l)return{type:"fixed",id:e,height:a,width:r}}return{type:"unknown",id:e}}function LC(e){if(e["@type"])return e["@type"];if(e.type)return e.type}function zC(e){if(typeof e=="string")return Ev(e);let t=LC(e);if(t!=="Image"&&t!=="sc:Image")return null;let i=e,n=ft(i);return n?n&&i.width&&i.height?{id:n,type:"fixed",width:i.width,height:i.height,unsafe:!0}:Ev(n):null}function FC(e){return Zl(e)?(e&&e.sizes?e.sizes:[]).map(t=>({id:ft(e),type:"fixed-service",height:t.height,width:t.width,level:Lh(e),version:Zv(e)?3:2})):[]}function Av(e){let t=[],i=e.length;for(let n=0;n<i;n++){let r=e[n];if(!r)continue;let a=FC(r);a.length&&t.push(...a);let l=OC(r);l.length&&t.push(...l)}return t}function Jv(e){let t=e.service?Array.isArray(e.service)?e.service:[e.service]:[],i=t.length,n=[];for(let r=0;r<i;r++)Zl(t[r])&&n.push(t[r]);return n}function NC(e,t=!0,i){let n=[],r=zC(e);if(r===null)return n;let a=e;if(n.push(r),t&&a&&a.width&&a.height){let l=[],c=Jv(a);for(let p of c){let m={id:ft(p),width:a.width,height:a.height};if(i.canLoadSync(m)){let h=i.loadServiceSync(m);h&&(h.height||(h.height=a.height),h.width||(h.width=a.width),l.push(...Av([h])))}}if(l.length)return n.push(...l),n}return a.service&&n.push(...Av(a.service)),n}function BC({x:e=0,y:t=0,w:i,h:n,full:r,square:a,percent:l}){if(r)return"full";if(a)return"square";if(typeof i>"u"||typeof n>"u")throw new Error("RegionParameter: invalid region");let c=`${e},${t},${i},${n}`;return l?`pct:${c}`:c}function DC({max:e,percentScale:t,upscaled:i,confined:n,width:r,height:a,serialiseAsFull:l,version:c}){let p=[];return i&&p.push("^"),e?(p.push(l?"full":"max"),p.join("")):(n&&p.push("!"),t&&p.push(`pct:${t}`),r&&p.push(`${r}`),p.push(","),a&&c===3&&p.push(`${a}`),p.join(""))}function jC(e){return`${e.mirror?"!":""}${(e.angle||0)%360}`}function VC(e,t){let i=e.prefix.startsWith("/")?e.prefix.substr(1):e.prefix,n=`${e.scheme}://${e.server}/${i?`${i}/`:""}${e.identifier}`;if(e.type==="base")return n;if(e.type==="info")return`${n}/info.json`;let{size:r}=e,{region:a,rotation:l,format:c,quality:p}=e;if(t){let m=t["@context"]?Array.isArray(t["@context"])?t["@context"]:[t["@context"]]:[],h=t.profile,y=m.indexOf("http://iiif.io/api/image/2/context.json")!==-1||h==="level2",S=m.indexOf("http://iiif.io/api/image/3/context.json")!==-1;if((r.width===t.width&&!r.height||r.height===t.height&&!r.width||r.width===t.width&&r.height===t.height)&&(r={...r,max:!0}),y&&(r.max&&!r.serialiseAsFull&&(r={...r,serialiseAsFull:!0}),!r.max&&r.width&&r.height&&(r={...r,height:void 0}),r={...r,version:2}),S){if(r.max&&r.serialiseAsFull&&(r={...r,serialiseAsFull:!1}),r.width&&!r.height&&t.width&&t.height){let w=t.height/t.width;r={...r,height:Math.ceil(r.width*w)}}r={...r,version:3}}}return[n,BC(a),DC(r),jC(l),`${p}.${c}`].filter(Boolean).join("/")}function Oh(e,t,i){let n=RC({"@context":e.version===3?"http://iiif.io/api/image/3/context.json":"http://iiif.io/api/image/2/context.json",id:Dr(ft(e)),profile:e.level===null||typeof e.level>"u"?"level0":`level${e.level}`,type:e.version===3?"ImageService3":"ImageService2"});if(n.type!=="image")throw new Error("Invalid service");return n.size.max=!1,n.size.width=t,n.size.height=i,{id:VC(n),type:"fixed",width:t,height:i||e.height/(e.width||1)*t,unsafe:e.width>t}}function ko(e){let t=e.replace(/(https?:\/\/)?(www.)?/i,"");return t.indexOf("/")!==-1?t.split("/")[0]:t}function UC(e,t,i){let n=e.width?e.width:e.maxWidth;return i.height<=e.maxHeight&&i.width<=e.maxWidth&&i.height>=e.minHeight&&i.width>=e.minWidth&&(!t||Math.abs(i.width-n)<Math.abs(t.width-n))}function WC(e,t){let i=[],n=Object.assign({unsafeImageService:!1,atAnyCost:!0,fallback:!0,minHeight:64,minWidth:64,maxHeight:1/0,maxWidth:1/0,returnAllOptions:!1,preferFixedSize:!1,allowUnsafe:!1,explain:!1,height:0,width:0},e),r=(h,y=0)=>n.explain?i.push(new Array(y).fill(0).map(S=>" ").join("")+h().trim()):void 0,a=[],l=[],c=null;r(()=>`Using configuration: ${JSON.stringify(n,null,2)}`);let p=(h,y)=>{if(r(()=>"Swapping choice",3),UC(n,y,h)){if(n.preferFixedSize&&h.unsafe){r(()=>`We found an image that was marked as unsafe, but it was the best size. (${h.id})`,4),l.push(h);return}n.returnAllOptions&&y&&l.push(y),r(()=>`We found a new image that was the best size. (${h.id})`,4),c=h}else n.returnAllOptions&&l.push(h)};r(()=>`The input shows we have ${t.length} list(s) of candidates to choose from.`);let m=t.length;for(let h=0;h<m;h++){let y=t[h]();r(()=>`Candidate group ${h}: ${JSON.stringify(y,null,2)}`,1);let S=y.length;r(()=>`Checking candidate list number ${h} and found ${S} potential ways of creating image(s)`,1);for(let w=0;w<S;w++){let v=y[w];if(r(()=>`-> Checking candidate ${w}`,1),v.type==="unknown"&&n.atAnyCost&&(r(()=>`We've found an unknown image type, adding this to the "last resort" list`,2),a.push(v)),v.type==="fixed"&&(v.unsafe?(r(()=>`We've found an unsafe fixed image type, adding this to the "last resort" list`,2),a.push(v)):(r(()=>"We've found a fixed size image, checking if it matches the request",2),p(v,c))),v.type==="fixed-service")if(n.unsafeImageService){r(()=>"Checking for an image from the tile source, without calculating the right height and width (unsafeImageService)",2);let x=Oh(v,n.width,n.height);p(x,c)}else{r(()=>"Checking for an image from the tile source 3",2);let x=Oh(v,v.width,v.height);p(x,c)}if(v.type==="variable"&&v.maxWidth){let x=Oh({id:v.id,type:"fixed-service",width:v.maxWidth,height:v.maxWidth,level:v.level,version:v.version},v.maxWidth);p(x,c)}}if(c&&!n.returnAllOptions){if(c.unsafe||n.allowUnsafe)continue;r(()=>`We found a match in choice list number ${h}, no searching any more`);break}}return n.atAnyCost&&l.length===0?(r(()=>c?`We found an image! ${c.id} of type ${c.type}`:'We found no images, but "atAnyCost" is set, so returning that'),{best:c||a[0]||null,fallback:a.slice(1),log:i}):n.returnAllOptions?(r(()=>"Returning all options that we have found"),{best:(n.atAnyCost?c||l[0]||a[0]:c||l[0])||null,fallback:[...l,...a],log:i}):(r(()=>"Returning the best image that we found, and a fallback"),{best:c||l[0]||null,fallback:c?l:l.slice(1),log:i})}function HC(e,t,i){let n=e>t?e:t,r=i.length,a=[];for(let l=0;l<r;l++){let c=i[l];if(!c||c.scaleFactors.length===0)continue;let p=c.scaleFactors[0];if(!p)continue;let m=n/p,h=[p];for(;m>=c.width;)p=p*2,h.push(p),m=m/2;a.push({...c,scaleFactors:h})}return a}function qC(e,t){if(e.length!==t.length)return!1;if(e.length===0&&t.length===0)return!0;let i=e.length,n=!0;for(let a=0;a<i;a++){let l=e[a],c=t[a];if(l.width!==c.width||l.height!==c.height){n=!1;break}}if(n)return!0;let r=0;for(let a=0;a<i;a++)for(let l=0;l<i;l++)if(e[a].width===t[l].width&&e[a].height===t[l].height){r++;break}return r===i}function Iv(e){return Kl(0,e)}var ex=class{constructor(e={}){Xl(this,"config",{verificationsRequired:1,approximateServices:!1,enableFetching:!0,disableThrottling:!1}),Xl(this,"fetchingCount",0),Xl(this,"imageServices",{}),Xl(this,"knownImageServers",{}),this.config=Object.assign(this.config,e)}setConfig(e){Object.assign(this.config,e)}sample(e,t,i=!0){let n=ko(ft(e)),r=Dr(ft(e)),a=this.knownImageServers[n];return this.imageServices[r]=Object.assign(e,{real:!0}),!a&&e.tiles&&!Iv(e)?(this.knownImageServers[n]={verifications:0,malformed:!1,root:n,preLoaded:i,sampledId:ft(e),verified:!1,server:null,result:{context:e["@context"]||[],sampledProfile:e.profile,resourceServiceRatio:t&&e.height?t.height/e.height:1,sampledSizes:e.sizes||[],sizeRatios:_C(e.width,e.height,e.sizes||[]),sampledTiles:e.tiles||[]}},!0):this.verify(e)}preLoad(e,t=!0){this.knownImageServers[e.root]=e,t&&(this.knownImageServers[e.root].malformed=!1,this.knownImageServers[e.root].verifications=this.config.verificationsRequired)}predict(e,t=!1,i=!1){let n=e?.source,r=ko(ft(e)),a=this.knownImageServers[r],l=Dr(ft(e));return this.imageServices[l]?this.imageServices[l]||null:!this.config.approximateServices||!a||!a.result||!(n?.height||e.height)||!(n?.width||e.width)||!i&&(a.malformed||a.verifications<this.config.verificationsRequired)||Iv(e.source)?null:(this.imageServices[l]||(this.imageServices[l]={"@context":a.result.context,"@id":ft(e),id:ft(e),protocol:"http://iiif.io/api/image",tiles:n?.tiles||HC(e.width,e.height,a.result.sampledTiles),sizes:n?.sizes||MC(Math.round(e.width/a.result.resourceServiceRatio),Math.round(e.height/a.result.resourceServiceRatio),a.result.sizeRatios),profile:n?.profile||a.result.sampledProfile,height:n?.height||e.height,width:n?.width||e.width,real:!1}),this.imageServices[l]||null)}async getThumbnailFromResource(e,t,i=!0,n=[]){let r=e?await this.getImageCandidates(e,i):[];return WC(t,[()=>n,()=>r])}async getImageCandidates(e,t=!0){let i=e;if(t&&i&&i.height&&i.width){let n=Jv(i);for(let r of n){let a={id:ft(r),width:r.width?r.width:i.width,height:r.height?r.height:i.height,source:r};await this.loadService(a)}}return NC(e,t,this)}async verify(e){let t=this.predict(e,!1,!0),i=await this.fetchService(ft(e));if(!t)return!1;let n=t.height===i.height&&t.width===i.width&&t["@context"]===i["@context"]&&qC(t.sizes||[],i.sizes||[]);if(n){let r=ko(ft(e)),a=this.knownImageServers[r];a&&(a.verifications+=1,a.verifications>=this.config.verificationsRequired&&(a.verified=!0))}return n}canLoadSync(e){let t=typeof e=="string"?e:ft(e),i=Dr(t);if(this.imageServices[i])return!0;let n=this.knownImageServers[ko(t)];return!!(n&&!n.malformed&&n.verifications>=this.config.verificationsRequired)}async markAsMalformed(e){return this.knownImageServers[ko(ft(e))].malformed=!0,this.loadService(e,!0)}async fetchService(e,t=!1){let i=Dr(e),n=this.imageServices[i];if(n&&(!t||n.real))return n;if(!this.config.enableFetching)throw new Error("Fetching is not enabled");let r=await this.fetch(i).then(a=>a.json());return!r.id&&r["@id"]&&(r.id=r["@id"]),r.id!==e&&(r.id=e,r["@id"]&&(r["@id"]=e)),this.imageServices[i]=Object.assign(r,{real:!0}),this.imageServices[i]}async fetch(e,t){return fetch(e,t)}async loadService(e,t=!1){if(!this.config.disableThrottling){let r=!0;for(;r;)if(this.fetchingCount>=this.config.verificationsRequired)await new Promise(a=>setTimeout(a,500));else{r=!1;break}}let i=this.knownImageServers[ko(ft(e))];if(i&&!i.malformed&&!t){await i.result;let r=this.loadServiceSync(e);if(r)return r}this.fetchingCount++;let n=await this.fetchService(ft(e),t);return this.fetchingCount--,n.real&&this.sample(n,e),n}loadServiceSync(e){let t=Dr(ft(e));return this.imageServices[t]?this.imageServices[t]:this.config.approximateServices?this.predict(e):null}},vR=new ex;function Jl(e){return{all:e=e||new Map,on:function(t,i){var n=e.get(t);n?n.push(i):e.set(t,[i])},off:function(t,i){var n=e.get(t);n&&(i?n.splice(n.indexOf(i)>>>0,1):e.set(t,[]))},emit:function(t,i){var n=e.get(t);n&&n.slice().map(function(r){r(i)}),(n=e.get("*"))&&n.slice().map(function(r){r(t,i)})}}}var ix={},tx=e=>{let t,i=new Set,n=(h,y)=>{let S=typeof h=="function"?h(t):h;if(!Object.is(S,t)){let w=t;t=y??(typeof S!="object"||S===null)?S:Object.assign({},t,S),i.forEach(v=>v(t,w))}},r=()=>t,p={setState:n,getState:r,getInitialState:()=>m,subscribe:h=>(i.add(h),()=>i.delete(h)),destroy:()=>{(ix.env?ix.env.MODE:void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),i.clear()}},m=t=e(n,r,p);return p},eu=e=>e?tx(e):tx;var QC=Object.create,zh=Object.defineProperty,$C=Object.getOwnPropertyDescriptor,nx=Object.getOwnPropertyNames,GC=Object.getPrototypeOf,YC=Object.prototype.hasOwnProperty,XC=(e,t,i)=>t in e?zh(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,Fh=(e,t)=>function(){return t||(0,e[nx(e)[0]])((t={exports:{}}).exports,t),t.exports},KC=(e,t,i,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of nx(t))!YC.call(e,r)&&r!==i&&zh(e,r,{get:()=>t[r],enumerable:!(n=$C(t,r))||n.enumerable});return e},Nh=(e,t,i)=>(i=e!=null?QC(GC(e)):{},KC(t||!e||!e.__esModule?zh(i,"default",{value:e,enumerable:!0}):i,e)),Rt=(e,t,i)=>(XC(e,typeof t!="symbol"?t+"":t,i),i);var Bh="http://library.stanford.edu/iiif/image-api/compliance.html#level0",Dh="http://library.stanford.edu/iiif/image-api/compliance.html#level1",jh="http://library.stanford.edu/iiif/image-api/compliance.html#level2",Vh="http://library.stanford.edu/iiif/image-api/conformance.html#level0",Uh="http://library.stanford.edu/iiif/image-api/conformance.html#level1",Wh="http://library.stanford.edu/iiif/image-api/conformance.html#level2",Hh="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level0",qh="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level1",Qh="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2",$h="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level0",Gh="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level1",Yh="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level2",Xh="http://iiif.io/api/image/1/level0.json",Kh="http://iiif.io/api/image/1/profiles/level0.json",Zh="http://iiif.io/api/image/1/level1.json",Jh="http://iiif.io/api/image/1/profiles/level1.json",ep="http://iiif.io/api/image/1/level2.json",tp="http://iiif.io/api/image/1/profiles/level2.json",ip="http://iiif.io/api/image/2/level0.json",np="http://iiif.io/api/image/2/profiles/level0.json",rp="http://iiif.io/api/image/2/level1.json",op="http://iiif.io/api/image/2/profiles/level1.json",sp="http://iiif.io/api/image/2/level2.json",ap="http://iiif.io/api/image/2/profiles/level2.json",lp="level0",up="level1",cp="level2",dp="http://iiif.io/api/image/2/level0",hp="http://iiif.io/api/image/2/level1",pp="http://iiif.io/api/image/2/level2",Oo=[pp,jh,Wh,Qh,Yh,ep,tp,sp,ap,cp],tu=[...Oo,hp,Dh,Uh,qh,Gh,Zh,Jh,rp,op,up],fp=[dp,hp,pp,Bh,Dh,jh,Vh,Uh,Wh,Hh,qh,Qh,$h,Gh,Yh,Xh,Kh,Zh,Jh,ep,tp,ip,np,rp,op,sp,ap,lp,up,cp],mp=fp,gp=[dp,Bh,Vh,Hh,$h,Xh,Kh,ip,np,lp],rx={extraFormats:["jpg"],extraQualities:["default"],extraFeatures:["sizeByWhListed"]},ox={extraFormats:["jpg"],extraQualities:["default"],extraFeatures:["baseUriRedirect","cors","jsonldMediaType","regionByPx","regionSquare","sizeByWhListed","sizeByH","sizeByW","sizeByWh"]},sx={extraFormats:["jpg","png"],extraQualities:["default"],extraFeatures:["baseUriRedirect","cors","jsonldMediaType","regionByPct","regionByPx","regionSquare","rotationBy90s","sizeByWhListed","sizeByConfinedWh","sizeByH","sizeByPct","sizeByW","sizeByWh"]};var ZC=Object.defineProperty,JC=(e,t,i)=>t in e?ZC(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,vn=(e,t,i)=>(JC(e,typeof t!="symbol"?t+"":t,i),i);function eP(e){try{if(e==="full")return{full:!0};if(e==="square")return{square:!0};let t=e.startsWith("pct:"),i=e.substr(t?4:0).split(",").map(n=>parseFloat(n));return{x:i[0],y:i[1],w:i[2],h:i[3],percent:t}}catch{throw new Error("Expected 'full', 'square' or 'x,y,w,h'. Found "+e)}}function tP(e){let t={upscaled:!1,max:!1,confined:!1};if(e[0]==="^"&&(t.upscaled=!0,e=e.slice(1)),e==="max"||e==="full")return t.max=!0,t.serialiseAsFull=e==="full",t;if(e[0]==="!"&&(t.confined=!0,e=e.slice(1)),e[0]==="p")return t.percentScale=parseFloat(e.slice(4)),t;let i=e.split(",").map(n=>n.trim());return i.length&&(i[0]!==""&&(t.width=parseInt(i[0],10)),i[1]!==""&&(t.height=parseInt(i[1],10))),t}function iP(e){let t={angle:0};if(e[0]==="!"&&(t.mirror=!0,e=e.substr(1)),t.angle=parseFloat(e)%360,Number.isNaN(t.angle))throw new Error(`Invalid rotation ${e}`);return t}function nP(e,t=""){let i=e.match(/^(([a-zA-Z]+):\/\/([^/]+))?((.*)+)/);if(!i)throw new Error(`Invalid or unknown input ${e}`);let n=i[2],r=i[3],a=i[4];if(a[0]==="/"&&(a=a.substring(1)),t.length>0){if(t[0]==="/"&&(t=t.substring(1)),t!==a.substring(0,t.length))throw new Error(`Path does not start with prefix (path: ${a}, prefix: ${t})`);a=a.substring(t.length)}return{scheme:n,server:r,path:a,prefix:t}}function rP(e,t=""){let{path:i,scheme:n,server:r,prefix:a}=nP(e,t),l=i.split("/").reverse(),[c,p,m,h,...y]=l,S=y.reverse().filter(Boolean).join("/");if(l.length===1||c==="")return{type:"base",scheme:n,server:r,prefix:a,identifier:S};if(c==="info.json"){let[,...x]=l;return{type:"info",scheme:n,server:r,prefix:a,identifier:x.reverse().filter(Boolean).join("/")}}if(typeof n>"u"||typeof r>"u"||typeof i>"u"||typeof h>"u"||typeof m>"u"||typeof p>"u"||typeof c>"u")throw new Error("Invalid image service URL");let[w="",v=""]=c.split(".");return{type:"image",scheme:n,server:r,prefix:a,identifier:S,originalPath:i,region:eP(h),size:tP(m),rotation:iP(p),quality:w,format:v}}function oP(e){return Oo.indexOf(e)!==-1?sx:tu.indexOf(e)!==-1?ox:rx}function sP(e){let t=e?Array.isArray(e.profile)?e.profile:[e.profile]:[],i={extraQualities:[],extraFormats:[],extraFeatures:[]};for(let n of t)if(typeof n=="string"&&(n=oP(n)),!!n){if(n.formats)for(let r of n.formats)i.extraFormats.indexOf(r)===-1&&i.extraFormats.push(r);if(n.qualities)for(let r of n.qualities)i.extraQualities.indexOf(r)===-1&&i.extraQualities.push(r);if(n.supports)for(let r of n.supports)i.extraFeatures.indexOf(r)===-1&&i.extraFeatures.push(r);if(n.maxHeight&&(i.maxHeight=n.maxHeight),n.maxWidth&&(i.maxWidth=n.maxWidth),n.maxArea&&(i.maxArea=n.maxArea),n.extraFormats)for(let r of n.extraFormats)i.extraFormats.indexOf(r)===-1&&i.extraFormats.push(r);if(n.extraQualities)for(let r of n.extraQualities)i.extraQualities.indexOf(r)===-1&&i.extraQualities.push(r);if(n.extraFeatures)for(let r of n.extraFeatures)i.extraFeatures.indexOf(r)===-1&&i.extraFeatures.push(r);n.maxHeight&&(i.maxHeight=n.maxHeight),n.maxWidth&&(i.maxWidth=n.maxWidth),n.maxArea&&(i.maxArea=n.maxArea)}if(e.extraFormats)for(let n of e.extraFormats)i.extraFormats.indexOf(n)===-1&&i.extraFormats.push(n);if(e.extraFeatures)for(let n of e.extraFeatures)i.extraFeatures.indexOf(n)===-1&&i.extraFeatures.push(n);if(e.extraQualities)for(let n of e.extraQualities)i.extraQualities.indexOf(n)===-1&&i.extraQualities.push(n);return i}function vp(e){let t=Array.isArray(e.profile)?e.profile:[e.profile];for(let i of t)if(typeof i=="string"&&gp.indexOf(i)!==-1)return!0;return!1}function Le(e){if(e["@id"])return e["@id"];if(e.id)return e.id}function Vs(e){if(!e||!e.profile||!Le(e))return!1;let t=Array.isArray(e.profile)?e.profile:[e.profile];for(let i of t)if(typeof i=="string"&&fp.indexOf(i)!==-1)return!0;return!1}function ax(e){if(!Vs(e))return!1;let t=Array.isArray(e.profile)?e.profile:[e.profile];for(let i of t)if(typeof i=="string"){if(tu.indexOf(i)!==-1)return!0}else{let n=[...i.supports||[],...i.extraFeatures||[]];if(n.indexOf("regionByPx")!==-1&&(n.indexOf("sizeByW")!==-1||n.indexOf("sizeByWh")!==-1))return!0}return!1}function aP({x:e=0,y:t=0,w:i,h:n,full:r,square:a,percent:l}){if(r)return"full";if(a)return"square";if(typeof i>"u"||typeof n>"u")throw new Error("RegionParameter: invalid region");let c=`${e},${t},${i},${n}`;return l?`pct:${c}`:c}function lP({max:e,percentScale:t,upscaled:i,confined:n,width:r,height:a,serialiseAsFull:l,version:c}){let p=[];return i&&p.push("^"),e?(p.push(l?"full":"max"),p.join("")):(n&&p.push("!"),t&&p.push(`pct:${t}`),r&&p.push(`${r}`),p.push(","),a&&c===3&&p.push(`${a}`),p.join(""))}function uP(e){return`${e.mirror?"!":""}${(e.angle||0)%360}`}function iu(e,t){let i=e.prefix.startsWith("/")?e.prefix.substring(1):e.prefix,n=`${e.scheme}://${e.server}/${i?`${i}/`:""}${e.identifier}`;if(e.type==="base")return n;if(e.type==="info")return`${n}/info.json`;let{size:r}=e,{region:a,rotation:l,format:c,quality:p}=e;if(t){let m=t["@context"]?Array.isArray(t["@context"])?t["@context"]:[t["@context"]]:[],h=m.indexOf("http://iiif.io/api/image/2/context.json")!==-1,y=m.indexOf("http://iiif.io/api/image/3/context.json")!==-1;if((r.width===t.width&&!r.height||r.height===t.height&&!r.width||r.width===t.width&&r.height===t.height)&&(r={...r,max:!0}),h&&(r.max&&!r.serialiseAsFull&&(r={...r,serialiseAsFull:!0}),!r.max&&r.width&&r.height&&(r={...r,height:void 0}),r={...r,version:2}),y){if(r.max&&r.serialiseAsFull&&(r={...r,serialiseAsFull:!1}),r.width&&!r.height&&t.width&&t.height){let S=t.height/t.width;r={...r,height:Math.ceil(r.width*S)}}r={...r,version:3}}}return[n,aP(a),lP(r),uP(l),`${p}.${c}`].filter(Boolean).join("/")}function Ln(e){return e.endsWith("info.json")?e:e.endsWith("/")?`${e}info.json`:`${e}/info.json`}function nu(e){let t=rP(Ln(e.id));if(t.type!=="info")throw new Error("Invalid service URL");let i=sP(e);return{identifier:t.identifier,originalPath:"",server:t.server,prefix:t.prefix,scheme:t.scheme,type:"image",quality:i.extraQualities.indexOf("default")===-1?i.extraQualities[0]:"default",region:{full:!0},size:{max:!0,upscaled:!1,confined:!1},format:"jpg",rotation:{angle:0}}}function lx(e,t,i){let n=i.length,r=[];for(let a=0;a<n;a++){let l=i[a];if(!l)continue;let c=l.width;r.push(e/c)}return r}function ux(e,t,i){let n=i.length,r=[];for(let a=0;a<n;a++){let l=i[a];l&&r.push({width:Math.floor(e/l),height:Math.floor(t/l)})}return r}function yp(e,t){if(t&&t.profile){let i=t.profile;if(i){let n=Array.isArray(i)?i:[i];if(n.includes(`level${e}`)||n.includes(`http://iiif.io/api/image/2/level${e}.json`)||n.includes(`http://iiif.io/api/image/1/level${e}.json`)||n.includes(`http://iiif.io/api/image/1/profiles/level${e}.json`))return!0;if(e===2){for(let r of n)if(Oo.includes(r))return!0}if(e===1){for(let r of n)if(tu.includes(r))return!0}if(e===0){for(let r of n)if(gp.includes(r))return!0}}}return!1}function Us(e){return Vs(e)?yp(0,e)?0:yp(1,e)?1:yp(2,e)?2:null:null}function zn(e){let t=e.service?Array.isArray(e.service)?e.service:[e.service]:[],i=t.length,n=[];for(let r=0;r<i;r++)Vs(t[r])&&n.push(t[r]);return n}function cx(e){if(e["@type"])return e["@type"];if(e.type)return e.type}function jr(e){let t=e.replace(/(https?:\/\/)?(www.)?/i,"");return t.indexOf("/")!==-1?t.split("/")[0]:t}function dx(e,t,i){let n=e>t?e:t,r=i.length,a=[];for(let l=0;l<r;l++){let c=i[l];if(!c||c.scaleFactors.length===0)continue;let p=c.scaleFactors[0];if(!p)continue;let m=n/p,h=[p];for(;m>=c.width;)p=p*2,h.push(p),m=m/2;a.push({...c,scaleFactors:h})}return a}function ru(e,t,i){let n=nu({"@context":e.version===3?"http://iiif.io/api/image/3/context.json":"http://iiif.io/api/image/2/context.json",id:Ln(Le(e)),profile:e.level===null||typeof e.level>"u"?"level0":`level${e.level}`,type:e.version===3?"ImageService3":"ImageService2"});if(n.type!=="image")throw new Error("Invalid service");return n.size.max=!1,n.size.width=t,n.size.height=i,{id:iu(n),type:"fixed",width:t,height:i||e.height/(e.width||1)*t,unsafe:e.width>t}}function hx(e,t,i){let n=e.width?e.width:e.maxWidth;return i.height<=e.maxHeight&&i.width<=e.maxWidth&&i.height>=e.minHeight&&i.width>=e.minWidth&&(!t||Math.abs(i.width-n)<Math.abs(t.width-n))}function px(e,t){let i=[],n=Object.assign({unsafeImageService:!1,atAnyCost:!0,fallback:!0,minHeight:64,minWidth:64,maxHeight:1/0,maxWidth:1/0,returnAllOptions:!1,preferFixedSize:!1,allowUnsafe:!1,explain:!1,height:0,width:0},e),r=(h,y=0)=>n.explain?i.push(new Array(y).fill(0).map(S=>" ").join("")+h().trim()):void 0,a=[],l=[],c=null;r(()=>`Using configuration: ${JSON.stringify(n,null,2)}`);let p=(h,y)=>{if(r(()=>"Swapping choice",3),hx(n,y,h)){if(n.preferFixedSize&&h.unsafe){r(()=>`We found an image that was marked as unsafe, but it was the best size. (${h.id})`,4),l.push(h);return}n.returnAllOptions&&y&&l.push(y),r(()=>`We found a new image that was the best size. (${h.id})`,4),c=h}else n.returnAllOptions&&l.push(h)};r(()=>`The input shows we have ${t.length} list(s) of candidates to choose from.`);let m=t.length;for(let h=0;h<m;h++){let y=t[h]();r(()=>`Candidate group ${h}: ${JSON.stringify(y,null,2)}`,1);let S=y.length;r(()=>`Checking candidate list number ${h} and found ${S} potential ways of creating image(s)`,1);for(let w=0;w<S;w++){let v=y[w];if(r(()=>`-> Checking candidate ${w}`,1),v.type==="unknown"&&n.atAnyCost&&(r(()=>`We've found an unknown image type, adding this to the "last resort" list`,2),a.push(v)),v.type==="fixed"&&(v.unsafe?(r(()=>`We've found an unsafe fixed image type, adding this to the "last resort" list`,2),a.push(v)):(r(()=>"We've found a fixed size image, checking if it matches the request",2),p(v,c))),v.type==="fixed-service")if(n.unsafeImageService){r(()=>"Checking for an image from the tile source, without calculating the right height and width (unsafeImageService)",2);let x=ru(v,n.width,n.height);p(x,c)}else{r(()=>"Checking for an image from the tile source 3",2);let x=ru(v,v.width,v.height);p(x,c)}if(v.type==="variable"&&v.maxWidth){let x=ru({id:v.id,type:"fixed-service",width:v.maxWidth,height:v.maxWidth,level:v.level,version:v.version},v.maxWidth);p(x,c)}}if(c&&!n.returnAllOptions){if(c.unsafe||n.allowUnsafe)continue;r(()=>`We found a match in choice list number ${h}, no searching any more`);break}}return n.atAnyCost&&l.length===0?(r(()=>c?`We found an image! ${c.id} of type ${c.type}`:'We found no images, but "atAnyCost" is set, so returning that'),{best:c||a[0]||null,fallback:a.slice(1),log:i}):n.returnAllOptions?(r(()=>"Returning all options that we have found"),{best:(n.atAnyCost?c||l[0]||a[0]:c||l[0])||null,fallback:[...l,...a],log:i}):(r(()=>"Returning the best image that we found, and a fallback"),{best:c||l[0]||null,fallback:c?l:l.slice(1),log:i})}function wp(e){return(e["@context"]?Array.isArray(e["@context"])?e["@context"]:[e["@context"]]:[]).indexOf("http://iiif.io/api/image/3/context.json")!==-1}function fx(e){return Vs(e)?(e&&e.sizes?e.sizes:[]).map(t=>({id:Le(e),type:"fixed-service",height:t.height,width:t.width,level:Us(e),version:wp(e)?3:2})):[]}function mx(e){if(!ax(e))return[];let t=[],i=Array.isArray(e.profile)?e.profile:[e.profile],n=i.length;for(let r=0;r<n;r++){let a=i[r];if(a&&typeof a!="string"&&(a.maxHeight||a.maxWidth))return[{id:Le(e),type:"variable",minWidth:0,minHeight:0,maxHeight:a.maxHeight||a.maxWidth,maxWidth:a.maxWidth||a.maxHeight,level:Us(e),version:e["@context"]==="http://iiif.io/api/image/3/context.json"?3:2}]}if(e.tiles){let r=e.tiles.length;for(let a=0;a<r;a++){let l=e.tiles[a];l&&(l.height||l.width)&&t.push({id:Le(e),type:"variable",minHeight:0,minWidth:0,maxHeight:l.height||l.width,maxWidth:l.width,level:Us(e),version:wp(e)?3:2})}}return t}function xp(e){let t=[],i=e.length;for(let n=0;n<i;n++){let r=e[n];if(!r)continue;let a=fx(r);a.length&&t.push(...a);let l=mx(r);l.length&&t.push(...l)}return t}function Sp(e){let t=/^.*\/(full)\/(((\d+),(\d+)?)|max)\/(\d+)\/default\.(jpg|png|jpeg)$/,i=e.match(t);if(i&&i[4]&&i[5]){let n=i[1],r=parseInt(i[4],10),a=parseInt(i[5],10),l=i[7];if((n==="max"||n==="full")&&r&&a&&l)return{type:"fixed",id:e,height:a,width:r}}return{type:"unknown",id:e}}function Ws(e){if(typeof e=="string")return Sp(e);let t=cx(e);if(t!=="Image"&&t!=="sc:Image")return null;let i=e,n=Le(i);return n?n&&i.width&&i.height?{id:n,type:"fixed",width:i.width,height:i.height,unsafe:!0}:Sp(n):null}function gx(e,t=!0,i){let n=[],r=Ws(e);if(r===null)return n;let a=e;if(n.push(r),t&&a&&a.width&&a.height){let l=[],c=zn(a);for(let p of c){let m={id:Le(p),width:a.width,height:a.height};if(i.canLoadSync(m)){let h=i.loadServiceSync(m);h&&(h.height||(h.height=a.height),h.width||(h.width=a.width),l.push(...xp([h])))}}if(l.length)return n.push(...l),n}return a.service&&n.push(...xp(a.service)),n}function yx(e,t){if(e.length!==t.length)return!1;if(e.length===0&&t.length===0)return!0;let i=e.length,n=!0;for(let a=0;a<i;a++){let l=e[a],c=t[a];if(l.width!==c.width||l.height!==c.height){n=!1;break}}if(n)return!0;let r=0;for(let a=0;a<i;a++)for(let l=0;l<i;l++)if(e[a].width===t[l].width&&e[a].height===t[l].height){r++;break}return r===i}var Lo=class{constructor(e={}){Rt(this,"config",{verificationsRequired:1,approximateServices:!1,enableFetching:!0,disableThrottling:!1}),Rt(this,"fetchingCount",0),Rt(this,"imageServices",{}),Rt(this,"knownImageServers",{}),this.config=Object.assign(this.config,e)}setConfig(e){Object.assign(this.config,e)}sample(e,t,i=!0){let n=jr(Le(e)),r=Ln(Le(e)),a=this.knownImageServers[n];return this.imageServices[r]=Object.assign(e,{real:!0}),!a&&e.tiles&&!vp(e)?(this.knownImageServers[n]={verifications:0,malformed:!1,root:n,preLoaded:i,sampledId:Le(e),verified:!1,server:null,result:{context:e["@context"]||[],sampledProfile:e.profile,resourceServiceRatio:t&&e.height?t.height/e.height:1,sampledSizes:e.sizes||[],sizeRatios:lx(e.width,e.height,e.sizes||[]),sampledTiles:e.tiles||[]}},!0):this.verify(e)}preLoad(e,t=!0){this.knownImageServers[e.root]=e,t&&(this.knownImageServers[e.root].malformed=!1,this.knownImageServers[e.root].verifications=this.config.verificationsRequired)}predict(e,t=!1,i=!1){let n=e?.source,r=jr(Le(e)),a=this.knownImageServers[r],l=Ln(Le(e));return this.imageServices[l]?this.imageServices[l]||null:!this.config.approximateServices||!a||!a.result||!(n?.height||e.height)||!(n?.width||e.width)||!i&&(a.malformed||a.verifications<this.config.verificationsRequired)||e.source&&vp(e.source)?null:(this.imageServices[l]||(this.imageServices[l]={"@context":a.result.context,"@id":Le(e),id:Le(e),protocol:"http://iiif.io/api/image",tiles:n?.tiles||dx(e.width,e.height,a.result.sampledTiles),sizes:n?.sizes||ux(Math.round(e.width/a.result.resourceServiceRatio),Math.round(e.height/a.result.resourceServiceRatio),a.result.sizeRatios),profile:n?.profile||a.result.sampledProfile,height:n?.height||e.height,width:n?.width||e.width,real:!1}),this.imageServices[l]||null)}async getThumbnailFromResource(e,t,i=!0,n=[]){let r=e?await this.getImageCandidates(e,i):[];return px(t,[()=>n,()=>r])}async getImageCandidates(e,t=!0){let i=e;if(t&&i&&i.height&&i.width){let n=zn(i);for(let r of n){let a={id:Le(r),width:r.width?r.width:i.width,height:r.height?r.height:i.height,source:r};await this.loadService(a)}}return gx(e,t,this)}async verify(e){let t=this.predict(e,!1,!0),i=await this.fetchService(Le(e));if(!t)return!1;let n=t.height===i.height&&t.width===i.width&&t["@context"]===i["@context"]&&yx(t.sizes||[],i.sizes||[]);if(n){let r=jr(Le(e)),a=this.knownImageServers[r];a&&(a.verifications+=1,a.verifications>=this.config.verificationsRequired&&(a.verified=!0))}return n}canLoadSync(e){let t=typeof e=="string"?e:Le(e),i=Ln(t);if(this.imageServices[i])return!0;let n=this.knownImageServers[jr(t)];return!!(n&&!n.malformed&&n.verifications>=this.config.verificationsRequired)}async markAsMalformed(e){return this.knownImageServers[jr(Le(e))].malformed=!0,this.loadService(e,!0)}async fetchService(e,t=!1){let i=Ln(e),n=this.imageServices[i];if(n&&(!t||n.real))return n;if(!this.config.enableFetching)throw new Error("Fetching is not enabled");let r=await this.fetch(i).then(a=>a.json());return!r.id&&r["@id"]&&(r.id=r["@id"]),r.id!==e&&(r.id=e,r["@id"]&&(r["@id"]=e)),this.imageServices[i]=Object.assign(r,{real:!0}),this.imageServices[i]}async fetch(e,t){return fetch(e,t)}async loadService(e,t=!1){if(!this.config.disableThrottling){let r=!0;for(;r;)if(this.fetchingCount>=this.config.verificationsRequired)await new Promise(a=>setTimeout(a,500));else{r=!1;break}}let i=this.knownImageServers[jr(Le(e))];if(i&&!i.malformed&&!t){await i.result;let r=this.loadServiceSync(e);if(r)return r}this.fetchingCount++;let n=await this.fetchService(Le(e),t);return this.fetchingCount--,n.real&&this.sample(n,e),n}loadServiceSync(e){let t=Ln(Le(e));return this.imageServices[t]?this.imageServices[t]:this.config.approximateServices?this.predict(e):null}};function vx(e={}){let t=e.events||Jl(),i=e.loader||new Lo;return{store:eu((r,a)=>({loaded:{},loadServiceSync:(l,c,p)=>{let m=l.id||l["@id"],h=a().loaded[m];if(h&&h.status==="done")return h.service;if(h&&h.status==="loading")return null;if(h&&h.status==="error")throw new Error("Failed to load image service");let y={id:Le(l),width:l.width||c?.width||0,height:l.height||c?.height||0,source:l},S=i.loadServiceSync(y);return S?(r(w=>({loaded:{...w.loaded,[m]:{status:"done",service:S,real:!0}}})),t.emit("image-service.loaded",{id:m,service:S})):p&&a().loadService(l,c).then(()=>{}),S},loadService:async(l,c)=>{let p=l.id||l["@id"],m=a().loaded[p];if(m&&m.status==="done")return m.service;if(m&&m.status==="loading")return new Promise((h,y)=>{let S=w=>{w.id===p&&(t.off("image-service.loaded",S),h(w.service||l))};t.on("image-service.loaded",S)});if(m&&m.status==="error"&&!c?.force)throw new Error("Failed to load image service");t.emit("image-service.loading",{id:p});try{let h={id:Le(l),width:l.width||0,height:l.height||0,source:l},y=await i.loadService(h,c?.force);return r(S=>({loaded:{...S.loaded,[p]:{status:"done",service:y,real:y.real}}})),t.emit("image-service.loaded",{id:p,service:y}),y}catch(h){throw t.emit("image-service.error",{id:p,error:h}),h}}})),events:t}}var bp=vx();var ou={},Fn={get(e){return e},setMetaValue([e,t,i],n){let r=Fn.getResourceMeta(e,t),a=r?r[i]:void 0,l=typeof n=="function"?n(a):n;ou[e]={...ou[e]||{},[t]:{...(ou[e]||{})[t]||{},[i]:l}}},getResourceMeta:(e,t)=>{let i=ou[e];if(i)return t?i[t]:i},async load(e){let t=typeof e=="string"?e:e.id;return fetch(t).then(i=>i.json())},requestStatus(e){}};var xx=new Lo;function Cp(e=Fn,t={}){let i=t.imageServiceLoader||xx;async function n(r,a,l=!1,c=[],p){let m=()=>i.getThumbnailFromResource(void 0,a,l,c);if(!r)return await i.getThumbnailFromResource(void 0,a,l,c);if(typeof r=="string"){let S=Ws(r);return S&&c.push(S),await i.getThumbnailFromResource(void 0,a,l,c)}let h=e.get(r,{skipSelfReturn:!1});if(typeof h=="string")return{best:Ws(h),fallback:[],log:[]};if(!h)return await m();switch(await(async S=>{if(S&&S.thumbnail&&S.thumbnail.length){let w=e.get(S.thumbnail[0]),v=await i.getImageCandidates(w,l);v&&v.length&&c.push(...v)}})(h),h.type){case"Annotation":{let S=Array.isArray(h.body)?h.body:[h.body],w=e.get(S[0]);return p&&!w.width&&(w.width=p.width,w.height=p.height),await i.getThumbnailFromResource(w,a,l,c)}case"Canvas":{let S=h;return n(S.items[0],a,l,c,{width:S.width,height:S.height})}case"AnnotationPage":return n(h.items[0],a,l,c,p);case"Choice":{let S=h;return!S.items||S.items[0]?await m():n(S.items[0],a,l,c,p)}case"Collection":{let w=h.items[0];return w?n(w,a,l,c,p):await m()}case"Manifest":{let w=h.items[0];return w?n(w,a,l,c,p):await m()}case"SpecificResource":case"Image":case"Dataset":case"Sound":case"Text":case"TextualBody":case"Video":return p&&!h.width&&(h.width=p.width,h.height=p.height),i.getThumbnailFromResource(h,a,l,c)}return await m()}return{getBestThumbnailAtSize:n}}var KP=T(B(),1),ZP=T(H(),1),Js=T(H(),1),JP=T(B(),1),eE=T(H(),1),f0=T(H(),1),cP=Object.defineProperty,dP=(e,t,i)=>t in e?cP(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,P=(e,t,i)=>(dP(e,typeof t!="symbol"?t+"":t,i),i),bu=["onMouseDown","onMouseEnter","onMouseLeave","onMouseMove","onMouseOut","onMouseOver","onMouseUp","onTouchCancel","onTouchEnd","onTouchMove","onTouchStart","onPointerDown","onPointerMove","onPointerUp","onPointerCancel","onPointerEnter","onPointerLeave","onPointerOver","onPointerOut","onScroll","onWheel","onClick","onDragStart","onDragEnd","onDragEnter","onDragExit","onDrag","onDragOver"];function hP(){return bu.reduce((e,t)=>(e[t]=[],e),{})}var Fo=bu.reduce((e,t)=>(e[t.slice(2).toLowerCase()]=t,e[t]=t,e),{}),pP="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",Cu=(e=21)=>{let t="",i=crypto.getRandomValues(new Uint8Array(e));for(;e--;)t+=pP[i[e]&63];return t},bn=class{constructor(){P(this,"__id"),P(this,"__revision",0),P(this,"__host"),P(this,"__onCreate"),P(this,"__parent"),P(this,"__owner",{value:void 0}),P(this,"__state",{}),P(this,"eventHandlers"),P(this,"scale",1),P(this,"layers",[]),P(this,"time",[]),P(this,"_crop"),P(this,"cropData"),P(this,"id"),P(this,"addEventListener",(e,t,i)=>{let n=Fo[e];if(!this.eventHandlers[n])throw new Error(`Unknown event ${n}`);this.eventHandlers[n].indexOf(t)===-1&&this.eventHandlers[n].push(t)}),P(this,"removeEventListener",(e,t)=>{let i=Fo[e];if(!this.eventHandlers[i]){console.warn(`Unknown event ${i}`);return}this.eventHandlers[i].indexOf(t)!==-1&&(this.eventHandlers[i]=this.eventHandlers[i].filter(n=>n!==t))}),this.id=this.__id=Cu(),this.eventHandlers=hP()}get crop(){return this._crop}set crop(e){this._crop=e}getObjectsAt(e){return[]}getAllPointsAt(e,t,i){return[]}getScheduledUpdates(e,t){return[]}dispatchEvent(e,t){let i=this.eventHandlers[e],n=i?i.length:0,r=!1;if(n)for(let a=0;a<n;a++)try{i[a](t),r=!0}catch(l){console.error(e,l)}return r}get x(){return this.points[1]}get y(){return this.points[2]}get width(){return this.points[3]-this.points[1]}get height(){return this.points[4]-this.points[2]}translate(e,t){Zt(this.points,ut(e,t))}atScale(e){Zt(this.points,On(e,this.x,this.y)),this.scale*=e}transform(e){Zt(this.points,e)}applyProps(e){this.__revision++}appendChild(e){}removeChild(e){}insertBefore(e,t){}hideInstance(){}},cr=class Ep extends bn{constructor(t){if(super(),P(this,"type","spacial-content"),P(this,"id"),P(this,"uri"),P(this,"display"),P(this,"points"),P(this,"priority"),P(this,"style",{opacity:1}),!t)this.id="",this.uri="",this.display={x:0,y:0,scale:1,width:0,height:0,points:re(5)},this.points=re(5);else{let i=t.scale||1;this.id=t.id||t.uri,this.uri=t.uri,this.points=xe.singleBox(t.width,t.height,t.x,t.y),this.display={x:0,y:0,scale:i,width:t.width/i,height:t.height/i,points:xe.singleBox(t.width/i,t.height/i),rotation:t?.rotation}}}applyProps(t){let i=t.display?t.display.width:t.target.width,n=t.target.width/i;if(this.id=t.id||t.uri,this.uri=t.uri,this.points.set(xe.singleBox(t.target.width,t.target.height,t.target.x,t.target.y)),t.style&&typeof t.style.opacity<"u"&&(this.style.opacity=t.style.opacity),t.crop){this.cropData=t.crop;let r=xe.singleBox(t.crop.width,t.crop.height,t.crop.x,t.crop.y);Zt(r,ut(-t.crop.x,-t.crop.y)),this.crop?this.crop.set(r):this.crop=re(r)}t.display?(this.display.scale=n,this.display.width=t.display.width,this.display.height=t.display.height,this.display.rotation=t.display.rotation,this.display.points=xe.singleBox(t.display.width,t.display.height)):(this.display.scale=n,this.display.width=t.target.width/n,this.display.height=t.target.height/n,this.display.points=xe.singleBox(t.target.width/n,t.target.height/n))}getAllPointsAt(t,i,n){return[[this,this.crop||this.points,i]]}static fromSvg(t,i,n,r){return Ep.fromImage("data:image/svg+xml;base64,"+btoa(t),i,n,r)}static fromImage(t,i,n,r){let a=new Ep;return a.applyProps({uri:t,id:r,display:n,target:i}),a}getImageUrl(){return this.uri}},Ap=class extends bn{constructor(e){if(super(),P(this,"type","spacial-content"),P(this,"id"),P(this,"uri"),P(this,"display"),P(this,"points"),P(this,"getTexture"),this.getTexture=()=>({source:void 0,hash:-1}),!e)this.id="",this.uri="",this.display={x:0,y:0,scale:1,width:0,height:0,points:re(5)},this.points=re(5);else{let t=e.scale||1;this.id=e.id||e.uri,this.uri=e.uri,this.points=xe.singleBox(e.width,e.height),this.display={x:0,y:0,scale:t,width:e.width/t,height:e.height/t,points:t!==1?xe.singleBox(e.width/t,e.height/t):this.points}}}applyProps(e){let t=e.display?e.display.width:e.target.width,i=e.target.width/t;this.id=e.id,this.points.set(xe.singleBox(e.target.width,e.target.height)),this.display.scale=i,this.display.width=e.target.width/i,this.display.height=e.target.height/i,this.getTexture=e.getTexture,this.display.points=i!==1?xe.singleBox(e.target.width/i,e.target.height/i):this.points}getAllPointsAt(e,t,i){return[[this,this.points,t]]}};function fP(e,t,i=1){let n=t.length;if(n===0)throw new Error("No resources passed in.");let r=0,a=1/0;for(let l=0;l<n&&!(!t[l]||!t[l].display);l++){let c=Ip(t[l].display.scale,e/(i||1));c<a&&(a=c,r=l)}return r}function Ip(e,t){return Math.abs(e-t)}function vu(e,t){let i=Ip(e.x,t.x),n=Ip(e.y,t.y);return Math.sqrt(Math.pow(i,2)+Math.pow(n,2))}function mP(e){let t=e.length;return e.indexOf("/info.json")===t-10?e.slice(0,-10):e}function su(e,t,i){return Math.min(Math.max(e,t),i)}var Ks=class Nx extends bn{constructor(t){super(),P(this,"id"),P(this,"type","spacial-content"),P(this,"display"),P(this,"tileWidth"),P(this,"style",{opacity:1}),P(this,"points"),P(this,"service"),P(this,"format","jpg"),P(this,"crop2"),P(this,"tileUrl"),this.tileUrl=mP(t.url),this.id=t.id||`${this.tileUrl}--${t.scaleFactor}`,this.points=t.displayPoints?t.displayPoints:bi(t.points,wi(t.scaleFactor)),this.tileWidth=t.tileWidth,this.display={x:0,y:0,width:t.width/t.scaleFactor,height:t.height/t.scaleFactor,points:t.points,scale:t.scaleFactor},t.format&&(this.format=t.format)}applyProps(t){if(t.style&&typeof t.style.opacity<"u"&&(this.style.opacity=t.style.opacity),t.service!==this.service&&(this.service=t.service),t.format?this.format=t.format:this.format="jpg",t.crop){this.cropData=t.crop;let i=re([...this.points]),n=i.length/5,r=t.crop.x||0,a=t.crop.y||0,l=t.crop.x+t.crop.width,c=t.crop.y+t.crop.height;for(let p=0;p<n;p++){let m=p*5;i[m+1]<l&&i[m+3]>r&&i[m+2]<c&&i[m+4]>a?(i[m+1]=su(i[m+1],r,l),i[m+3]=su(i[m+3],r,l),i[m+2]=su(i[m+2],a,c),i[m+4]=su(i[m+4],a,c)):i[m]=0}Zt(i,ut(-t.crop.x,-t.crop.y)),this.crop?this.crop.set(i):this.crop=i}}static fromTile(t,i,n,r,a,l,c){n.height=n.height?n.height:n.width;let p=c?Math.floor(i.width/r):Math.ceil(i.width/r),m=c?Math.floor(i.height/r):Math.ceil(i.height/r),h=Math.ceil(p/n.width),y=Math.ceil(m/n.height),S=xe.grid(h,y),w=xe.grid(h,y);for(let x=0;x<y;x++)for(let A=0;A<h;A++){let C=A*n.width,I=x*n.height;w.addPoints(C*r,I*r,A===h-1?i.width:(C+n.width)*r,x===y-1?i.height:(I+n.height)*r),S.addPoints(C,I,A===h-1?p:C+n.width,x===y-1?m:I+n.height)}let v=new Nx({url:t,scaleFactor:r,points:S.build(),displayPoints:w.build(),width:i.width,height:i.height,tileWidth:n.width,format:l});return v.applyProps({service:a}),v}getImageUrl(t){let i=this.points.slice(t*5,t*5+5),n=i[3]-i[1],r=i[4]-i[2],a=Math.ceil(n/this.display.scale);return`${this.tileUrl}/${i[1]},${i[2]},${n},${r}/${a>this.tileWidth?this.tileWidth:a},/0/default.${this.format||"jpg"}`}getAllPointsAt(t,i,n){let r=or(this.crop||this.points,t);return[[this,r,i]]}transform(t){Zt(this.points,t)}getScheduledUpdates(t,i){return[]}},gP=class extends bn{constructor(){super(...arguments),P(this,"type","spacial-content")}getAllPointsAt(e,t,i){return[[this,this.points,t]]}},yP=class extends gP{constructor(e){super(),P(this,"id"),P(this,"display"),P(this,"points"),P(this,"images",[]),P(this,"allImages",[]),P(this,"scaleFactors",[]),P(this,"aggregateBuffer",re(9)),P(this,"lazyLoader"),P(this,"isFullyLoaded",!1),P(this,"maxScaleFactor",0),P(this,"renderOptions"),P(this,"_scheduleSortByScales",!1),P(this,"_sortByScales",()=>{this._scheduleSortByScales=!1,this.allImages.sort((i,n)=>n.display.width-i.display.width),this.images=[];let t=.1;for(let i of this.allImages)if(!(i.display.width<this.renderOptions.minSize&&i.display.height<this.renderOptions.minSize&&!i.priority||i instanceof cr&&(i.display.width>this.renderOptions.maxImageSize||i.display.height>this.renderOptions.maxImageSize)&&!i.priority)){if(Math.abs(i.display.scale-t)<.25||i.priority){let n=this.images.pop();n&&(n instanceof cr||n.priority)?(i.priority&&this.images.push(i),this.images.push(n)):i&&this.images.push(i)}else i&&this.images.push(i);t=i.display.scale}this.images.length===0&&(this.images=[...this.allImages]),this.scaleFactors=this.images.map(i=>i.display.scale),this.maxScaleFactor=Math.max(...this.scaleFactors)}),P(this,"loadFullResource",async()=>{if(!this.isFullyLoaded&&this.lazyLoader){this.isFullyLoaded=!0;let t=await this.lazyLoader();this.addImages(t)}}),P(this,"fallback",[this.loadFullResource]),this.id=e.id,this.points=xe.singleBox(e.width,e.height),this.lazyLoader=e.loadFullImages,e.loadFullImages||(this.isFullyLoaded=!0),this.display={x:0,y:0,points:xe.singleBox(e.width,e.height),height:e.height,width:e.width,scale:1},this.renderOptions={renderSmallestFallback:!0,renderLayers:2,minSize:255,maxImageSize:1024,quality:1.75,...e.renderOptions||{}},this.addImages(e.images)}applyProps(e){typeof e.renderSmallestFallback<"u"&&e.renderSmallestFallback!==this.renderOptions.renderSmallestFallback&&(this.renderOptions.renderSmallestFallback=e.renderSmallestFallback),typeof e.renderLayers<"u"&&e.renderLayers!==this.renderOptions.renderLayers&&(this.renderOptions.renderLayers=e.renderLayers),typeof e.minSize<"u"&&e.minSize!==this.renderOptions.minSize&&(this.renderOptions.minSize=e.minSize),typeof e.maxImageSize<"u"&&e.maxImageSize!==this.renderOptions.maxImageSize&&(this.renderOptions.maxImageSize=e.maxImageSize),typeof e.quality<"u"&&e.quality!==this.renderOptions.quality&&(this.renderOptions.quality=e.quality)}appendChild(e){this.addImages([e])}removeChild(e){this.images.indexOf(e)!==-1&&(this.images=this.images.filter(t=>t!==e),this.sortByScales())}insertBefore(e,t){this.addImages([e])}hideInstance(){}addImages(e){for(let t of e)t.__parent=this,t.__owner=this.__owner;this.allImages.push(...e.filter(Boolean)),this.sortByScales()}sortByScales(){this._scheduleSortByScales=!0}getScheduledUpdates(e,t){return this._scheduleSortByScales?[this._sortByScales]:this.isFullyLoaded?[]:t>1/this.maxScaleFactor?this.fallback:[]}getAllPointsAt(e,t,i){if(this.images.length===0)return[];let n=fP(1/(i||1)/(window.devicePixelRatio||1),this.images,this.renderOptions.quality),r=this.images.length,a=t?pi(t,ut(this.x,this.y)):ut(this.x,this.y);if(n!==this.images.length-1&&this.images[n+1]){let l=[];for(let m=r-1;m>=n;m--)l.push(m);let c=l[0];this.renderOptions.renderLayers&&(l=l.slice(-Math.min(l.length,this.renderOptions.renderLayers))),this.renderOptions.renderSmallestFallback&&l.indexOf(c)===-1&&l.unshift(c);let p=[];for(let m=0;m<l.length;m++)p.push(...this.images[l[m]].getAllPointsAt(e,a,i));return p}return this.images[n].getAllPointsAt(e,a,i)}};function au(e,t,i,n,r){let a=Math.PI/180*r,l=Math.cos(a),c=Math.sin(a),p=l*(i-e)+c*(n-t)+e,m=l*(n-t)-c*(i-e)+t;return[p,m]}var kp=class Bx extends bn{constructor(t,i){super(),P(this,"id"),P(this,"type","world-object"),P(this,"scale"),P(this,"layers"),P(this,"points"),P(this,"worldPoints"),P(this,"intersectionBuffer",re(5)),P(this,"aggregateBuffer",re(9)),P(this,"invertedBuffer",re(9)),P(this,"rotation",0),P(this,"filteredPointsBuffer"),P(this,"_updatedList",[]),P(this,"geometry");let{x:n=0,y:r=0}=i||{};t?(this.id=t.id||"",this.scale=1,this.layers=t.layers,this.points=re([1,n,r,n+t.width,r+t.height]),this.worldPoints=re([1,n,r,n+t.width,r+t.height]),this.filteredPointsBuffer=re(t.layers.length*5)):(this.id="",this.scale=1,this.layers=[],this.points=re(5),this.worldPoints=re(5),this.filteredPointsBuffer=re(5))}static createWithProps(t){let i=new Bx;return i.applyProps(t),i}applyProps(t){let i=t.x||0,n=t.y||0;this.id=t.id;let r=typeof t.scale<"u"?t.scale:this.scale;this.points[0]=1,this.points[1]=i,this.points[2]=n,this.points[3]=i+t.width,this.points[4]=n+t.height,this.rotation=t.rotation||0,this.worldPoints[3]=this.worldPoints[1]+t.width,this.worldPoints[4]=this.worldPoints[2]+t.height,t.scale&&t.scale!==1&&this.atScale(r),this.scale=r}appendChild(t){t.points[0]===0&&t.points.set(this.points),t.__owner.value=this,this.addLayers([t])}removeChild(t){this.layers=this.layers.filter(i=>i!==t),this.filteredPointsBuffer=re(this.layers.length*5)}insertBefore(t,i){let n=this.layers.indexOf(i);if(n===-1||this.layers.indexOf(t)!==-1)return;let r=this.layers.slice(0,n),a=this.layers.slice(n);this.layers=[...r,t,...a]}hideInstance(){console.warn("hideInstance: not yet implemented")}getObjectsAt(t,i){if(this.rotation&&(t=this.applyRotation(t)),or(this.points,t,this.filteredPointsBuffer)[0]===0)return[];let n=this.layers.length,r=[];for(let a=0;a<n;a++){let l=this.layers[a];if(i&&l.isShape){let c=bi(l.points,ut(this.x,this.y));if(!l.intersects([t[1]-c[1],t[2]-c[2]]))continue}if(or(bi(l.points,ut(this.x,this.y)),t,this.filteredPointsBuffer)[0]!==0&&r.push(l),i){let c=l;r.push(...c.getObjectsAt(t,i))}}return r}applyRotation(t){if(this.rotation){let i={x:t[1],y:t[2]},n={x:t[1],y:t[4]},r={x:t[3],y:t[2]},a={x:t[3],y:t[4]},l=this.points[1]+(this.points[3]-this.points[1])/2,c=this.points[2]+(this.points[4]-this.points[2])/2,[p,m]=au(l,c,i.x,i.y,this.rotation),[h,y]=au(l,c,n.x,n.y,this.rotation),[S,w]=au(l,c,r.x,r.y,this.rotation),[v,x]=au(l,c,a.x,a.y,this.rotation),A=Math.min(p,h,S,v),C=Math.max(p,h,S,v),I=Math.min(m,y,w,x),E=Math.max(m,y,w,x);return re([t[0],A,I,C,E])}return t}getAllPointsAt(t,i,n){let r=pi(ut(this.x,this.y),wi(this.scale),this.aggregateBuffer);this.rotation&&(t=this.applyRotation(t));let a=My(t,this.points,this.intersectionBuffer),l=this.layers.length,c=[],p=bi(a,pi(wi(1/this.scale),ut(-this.x,-this.y),this.invertedBuffer)),m=i?pi(i,r,this.aggregateBuffer):r,h=n*this.scale;for(let y=0;y<l;y++)c.push(...this.layers[y].getAllPointsAt(p,m,h));return c}addLayers(t){let i=[];for(let n of t)this.layers.indexOf(n)===-1&&(i.push(n),n.points.length===5&&(n.points[1]<this.worldPoints[1]/this.scale||n.points[2]<this.worldPoints[2]/this.scale||n.points[3]>this.worldPoints[3]/this.scale||n.points[4]>this.worldPoints[4]/this.scale)&&(n.crop=n.crop||re([1,Math.max(this.worldPoints[1]/this.scale,n.points[1]),Math.max(this.worldPoints[2]/this.scale,n.points[2]),Math.min(this.worldPoints[3]/this.scale,n.points[3]),Math.min(this.worldPoints[4]/this.scale,n.points[4])])));this.layers=this.layers.concat(i),this.filteredPointsBuffer=re(this.layers.length*5)}getScheduledUpdates(t,i){let n=this.layers.length;this._updatedList=[];let r=i*this.scale;for(let a=0;a<n;a++){let l=this.layers[a].getScheduledUpdates(t,r);l&&this._updatedList.push(...l)}return this._updatedList}},Pu=class Dx extends bn{constructor(t=0,i=0,n=100,r="left-to-right"){super(),P(this,"id","world"),P(this,"_width"),P(this,"_height"),P(this,"aspectRatio"),P(this,"viewingDirection"),P(this,"aggregateBuffer",re(9)),P(this,"isDirty",!1),P(this,"zones",[]),P(this,"filteredPointsBuffer"),P(this,"selectedZone"),P(this,"triggerQueue",[]),P(this,"activatedEvents",[]),P(this,"_updatedList",[]),P(this,"translationBuffer",re(9)),P(this,"needsRecalculate",!0),P(this,"emptyPaintables",[]),P(this,"renderOrder",[]),P(this,"points"),P(this,"objects",[]),P(this,"subscriptions",[]),P(this,"_propagateEventTargets",[]),P(this,"_alreadyFlushed",[]),this._width=t,this._height=i,this.aspectRatio=Number.isNaN(t/i)?1:t/i,this.viewingDirection=r,this.points=re(n*5),this.filteredPointsBuffer=re(n*5)}get x(){return 0}get y(){return 0}get width(){return this._width}get height(){return this._height}static withProps(t){let i=new Dx;return i.applyProps(t),i}applyProps(t){typeof t.width<"u"&&typeof t.height<"u"&&(t.width!==this._width||t.height!==this._height)&&this.resize(t.width,t.height),t.viewingDirection!==this.viewingDirection&&(this.viewingDirection=t.viewingDirection,this.triggerRepaint())}propagateTouchEvent(t,i,n){let r=[];for(let a of n)if(a.x&&a.y){let l=xe.singleBox(1,1,a.x,a.y);r.push(this.getObjectsAt(l,!0).reverse())}return r.map(a=>this.propagateEvent(t,i,a,{bubbles:!0,cancelable:!0}))}propagatePointerEvent(t,i,n,r,a={}){let l=xe.singleBox(1,1,n,r),c=this.getObjectsAt(l,!0).reverse();return this.propagateEvent(t,i,c,a)}propagateEvent(t,i,n,{bubbles:r=!1,cancelable:a=!1}={}){i.atlasTarget=this,this._propagateEventTargets.length=1,this._propagateEventTargets[0]=this;let l=!1;i.stopPropagation=()=>{l=!0};let c=n.length;for(let h=c-1;h>=0;h--){this._propagateEventTargets.unshift(n[h][0]);let y=n[h][1].length;if(y)for(let S=0;S<y;S++)this._propagateEventTargets.unshift(n[h][1][S])}let p=this._propagateEventTargets.length,m=!1;for(let h=0;h<p&&(i.atlasTarget=this._propagateEventTargets[h],i.atlasWorld=this,m=this._propagateEventTargets[h].dispatchEvent(t,i)||m,!l);h++);return m&&this.triggerRepaint(),this._propagateEventTargets}appendChild(t){let i=this.appendWorldObject(t);this.renderOrder.push(i/5)}removeChild(t){let i=this.objects.indexOf(t);if(i===-1){for(let n of this.objects)if(n&&n.id===t.id){this.removeChild(n);return}return}this.objects[i]=null,this.renderOrder=this.renderOrder.filter(n=>n!==i),this.points[i*5]=0,this.triggerRepaint(),this.needsRecalculate=!0}insertBefore(t,i){let n=this.objects.indexOf(i);if(n===-1)return;let r=this.appendWorldObject(t);this.renderOrder.splice(n-1,0,r/5)}hideInstance(){}asWorldObject(){return null}addZone(t){this.zones.push(t)}selectZone(t){if(typeof t=="string"){let i=this.zones.length;for(let n=0;n<i;n++)if(this.zones[n].id===t){this.selectedZone=n,this.trigger("zone-changed");return}}else this.zones[t]&&(this.selectedZone=t,this.trigger("zone-changed"))}deselectZone(){this.selectedZone=void 0}getActiveZone(){if(this.selectedZone)return this.zones[this.selectedZone]}hasActiveZone(){return typeof this.selectedZone<"u"}checkResizeInternalBuffer(){if(ky(this.points)===this.objects.length){let t=this.points,i=re(this.points.length*2);i.set(t,0),this.points=i}}appendWorldObject(t){this.checkResizeInternalBuffer();let i=this.objects.length*5,n=t.points;return t.points=this.points.subarray(this.objects.length*5,this.objects.length*5+5),t.points[1]=n[1],t.points[2]=n[2],t.points[3]=n[3],t.points[4]=n[4],this.objects.push(t),this.filteredPointsBuffer=re(this.objects.length*5),this.needsRecalculate=!0,this.triggerRepaint(),i}recalculateWorldSize(){let t=!1;if(this.needsRecalculate){let i=new Int32Array(this.objects.length),n=new Int32Array(this.objects.length),r=this.renderOrder.length;for(let c=0;c<r;c++){let p=this.renderOrder[c];this.objects[p]&&(i[c]=this.points[p*5+3],n[c]=this.points[p*5+4])}let a=Math.max(...i);a!==this._width&&(this._width=a,t=!0);let l=Math.max(...n);l!==this._height&&(this._height=l,t=!0),t&&this.trigger("recalculate-world-size",{width:a,height:l}),this.needsRecalculate=!1}return t}addObjectAt(t,i){i.width&&!i.height?i.height=i.width/t.width*t.height:i.height&&!i.width&&(i.width=i.height/t.height*t.width),(!i||!i.width||!i.height)&&(i.width=t.width,i.height=t.height);let{width:n,x:r,y:a}=i,l=n/t.width;this.checkResizeInternalBuffer(),this.points.set(xe.singleBox(t.width,t.height,0,0),this.objects.length*5);let c=new kp(t);return c.points=this.points.subarray(this.objects.length*5,this.objects.length*5+5),this.objects.push(c),this.scaleWorldObject(this.objects.length-1,l),this.translateWorldObject(this.objects.length-1,r,a),this.filteredPointsBuffer=re(this.points.length*2),this.triggerRepaint(),this.needsRecalculate=!0,c}scaleWorldObject(t,i){Zt(this.points.subarray(t*5,t*5+5),On(i,this.points[t*5+1],this.points[t*5+2]));let n=this.objects[t];n&&(n.atScale(i),this.triggerRepaint())}translateWorldObject(t,i,n){Zt(this.points.subarray(t*5,t*5+5),ut(i,n));let r=this.objects[t];r&&(r.translate(i,n),this.triggerRepaint())}resize(t,i){return this._width=t,this._height=i,this.aspectRatio=t/i,this.triggerRepaint(),this}getObjects(){return this.objects}getPoints(){return this.points}getPointsFromViewer(t,i){let n=xe.singleBox(t.width,t.height,t.x,t.y);return this.getPointsAt(n,i,t.scale)}addLayoutSubscriber(t){return this.subscriptions.push(t),()=>{this.subscriptions.splice(this.subscriptions.indexOf(t),1)}}getScheduledUpdates(t,i){let n=or(this.points,t,this.filteredPointsBuffer),r=this.objects.length;this._updatedList=[];for(let a=0;a<r;a++)if(n[a*5]!==0){if(!this.objects[a])continue;this._updatedList.push(...this.objects[a].getScheduledUpdates(t,i))}return this._updatedList}getObjectsAt(t,i=!1){let n=this.getActiveZone(),r=or(this.points,t,this.filteredPointsBuffer),a=this.renderOrder.length,l=[];for(let c=0;c<a;c++){let p=this.renderOrder[c];if(r[p*5]!==0){let m=this.objects[p];if(!m||n&&n.objects.indexOf(m)===-1)continue;if(m.type!=="world-object"){l.push([m,[m]]);continue}i?l.push([m,m.getObjectsAt(t,i)]):l.push([m,this.emptyPaintables])}}return l}getPointsAt(t,i,n=1){let r=this.getObjectsAt(t),a=pi(wi(n),ut(-t[1],-t[2]),this.translationBuffer),l=i?pi(i,a,this.aggregateBuffer):a,c=r.length,p=[];for(let m=0;m<c;m++)r[m]&&p.push(...r[m][0].getAllPointsAt(t,l,n));return p}flushSubscriptions(){if(this.triggerQueue.length){this._alreadyFlushed=[];let t=this.triggerQueue.length;for(let i=0;i<t;i++){if(this._alreadyFlushed.indexOf(this.triggerQueue[i][0])!==-1)continue;typeof this.triggerQueue[i][1]>"u"&&this._alreadyFlushed.push(this.triggerQueue[i][0]);let n=this.subscriptions.length;for(let r=0;r<n;r++)this.subscriptions[r].apply(null,this.triggerQueue[i])}this.triggerQueue=[]}}trigger(t,i){this.triggerQueue.push([t,i])}triggerEventActivation(){this.trigger("event-activation")}triggerRepaint(){this.trigger("repaint")}gotoRegion(t){this.trigger("goto-region",t)}goHome(t=!1){this.trigger("go-home",{immediate:t})}zoomTo(t,i,n){this.trigger("zoom-to",{point:i,factor:t,stream:n})}zoomIn(t){this.trigger("zoom-to",{point:t,factor:.5})}zoomOut(t){this.trigger("zoom-to",{point:t,factor:2})}constraintBounds(t){this.trigger("constrain-bounds",{immediate:t})}};var lu=/([0-9]+(px|em)\s+)+(solid)\s+(.*)/g,uu={},vP=["backgroundColor","opacity","boxShadow","borderColor","borderWidth","borderStyle","outlineColor","outlineWidth","outlineOffset","outlineStyle"],$s=class extends bn{constructor(){super(),P(this,"id"),P(this,"type","spacial-content"),P(this,"points"),P(this,"hoverEvents",!1),P(this,"activeEvents",!1),P(this,"display",{x:0,y:0,scale:1,width:-1,height:-1,points:re(5)}),P(this,"_parsed",{border:{id:null,match:[]},outline:{id:null,match:[]}}),P(this,"hovering"),P(this,"pressing"),P(this,"props",{}),P(this,"addHover",()=>{this.hovering=!0,this.__revision++}),P(this,"removeHover",()=>{this.hovering=!1,this.pressing=!1,this.__revision++}),P(this,"addPress",()=>{this.pressing=!0,this.__revision++}),P(this,"removePress",()=>{this.pressing=!1,this.__revision++}),this.id=Cu(12),this.points=re(5)}getAllPointsAt(e,t){return[[this,this.points,t]]}applyProps(e={}){let t=!1;if(e.interactive!==this.props.interactive&&(t=!0,this.props.interactive=e.interactive),e.style){let i=e.border||e.style.border;if(i!==this._parsed.border.id)if(!i)this._parsed.border.id=null,this._parsed.border.match=[];else{let n=uu[i]||lu.exec(i)||lu.exec(i);n&&(this._parsed.border.id=i,this._parsed.border.match=uu[i]=n)}if(this._parsed.border.id&&(e.style.borderWidth=this._parsed.border.match[1],e.style.borderStyle="solid",e.style.borderColor=this._parsed.border.match[4]),e.style.outline!==this._parsed.outline.id)if(!e.style.outline)this._parsed.outline.id=null,this._parsed.outline.match=[];else{let n=uu[e.style.outline]||lu.exec(e.style.outline)||lu.exec(e.style.outline);n&&(this._parsed.outline.id=e.style.outline,this._parsed.outline.match=uu[e.style.outline]=n)}this._parsed.outline.id&&(e.style.outlineWidth=this._parsed.outline.match[1],e.style.outlineStyle="solid",e.style.outlineColor=this._parsed.outline.match[4]),this.props.style=e.style,e.backgroundColor&&!this.props.style.backgroundColor&&(this.props.style.backgroundColor=e.backgroundColor,t=!0),e.style.background&&!this.props.style.backgroundColor&&(this.props.style.backgroundColor=e.style.background,t=!0);for(let n of vP)if(this.props.style[n]!==e.style[n]){t=!0;break}e.style[":hover"]!==this.props.hoverStyles&&(this.props.hoverStyles=e.style[":hover"],this.hoverEvents||(this.hoverEvents=!0,this.addEventListener("pointerenter",this.addHover),this.addEventListener("pointerleave",this.removeHover)),t=!0),e.style[":active"]!==this.props.pressStyles&&(this.props.pressStyles=e.style[":active"],this.activeEvents||(this.activeEvents=!0,this.addEventListener("mousedown",this.addPress),this.addEventListener("mouseup",this.removePress)),t=!0)}e.href!==this.props.href&&(this.props.href=e.href,t=!0),e.hrefTarget!==this.props.hrefTarget&&(this.props.hrefTarget=e.hrefTarget,t=!0),e.title!==this.props.title&&(this.props.title=e.title,t=!0),e.className!==this.props.className&&(this.props.className=e.className,e.className&&!this.hoverEvents&&(this.hoverEvents=!0,this.addEventListener("pointerenter",this.addHover),this.addEventListener("pointerleave",this.removeHover)),e.className&&!this.activeEvents&&(this.activeEvents=!0,this.addEventListener("mousedown",this.addPress),this.addEventListener("mouseup",this.removePress)),t=!0),e.relativeSize!==this.props.relativeSize&&(this.props.relativeSize=e.relativeSize,t=!0),e.relativeStyle!==this.props.relativeStyle&&(this.props.relativeStyle=e.relativeStyle,t=!0),e.html!==this.props.html&&(this.props.html=e.html,t=!0),e.target&&(e.target.width!==this.display.width||e.target.height!==this.display.height||e.target.x!==this.points[1]||e.target.y!==this.points[2])&&(t=!0,this.points=xe.singleBox(e.target.width,e.target.height,e.target.x,e.target.y),this.display.points=xe.singleBox(e.target.width,e.target.height,e.target.x,e.target.y),this.display.width=e.target.width,this.display.height=e.target.height),t&&this.__revision++}},gu=class extends bn{constructor(){super(),P(this,"type","spacial-content"),P(this,"id"),P(this,"points"),P(this,"color","#000"),P(this,"backgroundColor"),P(this,"hovering"),P(this,"pressing"),P(this,"text",""),P(this,"display",{x:0,y:0,scale:1,width:100,height:100,points:re(5)}),P(this,"className"),P(this,"html"),P(this,"interactive",!1),P(this,"props",{font:"18px Arial, sans-serif",lineHeight:1,textAlign:"left",verticalAlign:"top",paddingX:0,paddingY:0,fitParent:!1,lineBreak:"auto",strokeText:!1,sizeToFill:!1,maxFontSizeToFill:void 0,allowNewLine:!0,justifyLines:!1,renderHDPI:!1,textDecoration:"none",interactive:!1,relativeSize:!1}),this.id="",this.points=re(5)}getAllPointsAt(e,t){return[[this,this.points,t]]}applyProps({id:e,target:t,text:i,color:n,backgroundColor:r,fontSize:a=18,interactive:l,fontFamily:c="Arial, sans-serif",...p}){p.font=`${a}px ${c}`,this.interactive=l||!1,typeof i<"u"&&(this.text=i||""),n&&(this.color=n),r&&(this.backgroundColor=r),e&&(this.id=e),t&&(this.points=xe.singleBox(t.width,t.height,t.x,t.y),this.display.points=this.points,this.display.width=t.width,this.display.height=t.height),this.props={...this.props,...p},this.__revision++}},ct=Math.pow,cu=Math.sqrt,qs=Math.sin,Cx=Math.cos,Gs=Math.PI,xu=1.70158,du=xu*1.525,Px=xu+1,Ex=2*Gs/3,Ax=2*Gs/4.5,hu=function(e){return e<1/2.75?7.5625*e*e:e<2/2.75?7.5625*(e-=1.5/2.75)*e+.75:e<2.5/2.75?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375},ur={linear:e=>e,easeInQuad:function(e){return e*e},easeOutQuad:function(e){return 1-(1-e)*(1-e)},easeInOutQuad:function(e){return e<.5?2*e*e:1-ct(-2*e+2,2)/2},easeInCubic:function(e){return e*e*e},easeOutCubic:function(e){return 1-ct(1-e,3)},easeInOutCubic:function(e){return e<.5?4*e*e*e:1-ct(-2*e+2,3)/2},easeInQuart:function(e){return e*e*e*e},easeOutQuart:function(e){return 1-ct(1-e,4)},easeInOutQuart:function(e){return e<.5?8*e*e*e*e:1-ct(-2*e+2,4)/2},easeInQuint:function(e){return e*e*e*e*e},easeOutQuint:function(e){return 1-ct(1-e,5)},easeInOutQuint:function(e){return e<.5?16*e*e*e*e*e:1-ct(-2*e+2,5)/2},easeInSine:function(e){return 1-Cx(e*Gs/2)},easeOutSine:function(e){return qs(e*Gs/2)},easeInOutSine:function(e){return-(Cx(Gs*e)-1)/2},easeInExpo:function(e){return e===0?0:ct(2,10*e-10)},easeOutExpo:function(e){return e===1?1:1-ct(2,-10*e)},easeInOutExpo:function(e){return e===0?0:e===1?1:e<.5?ct(2,20*e-10)/2:(2-ct(2,-20*e+10))/2},easeInCirc:function(e){return 1-cu(1-ct(e,2))},easeOutCirc:function(e){return cu(1-ct(e-1,2))},easeInOutCirc:function(e){return e<.5?(1-cu(1-ct(2*e,2)))/2:(cu(1-ct(-2*e+2,2))+1)/2},easeInBack:function(e){return Px*e*e*e-xu*e*e},easeOutBack:function(e){return 1+Px*ct(e-1,3)+xu*ct(e-1,2)},easeInOutBack:function(e){return e<.5?ct(2*e,2)*((du+1)*2*e-du)/2:(ct(2*e-2,2)*((du+1)*(e*2-2)+du)+2)/2},easeInElastic:function(e){return e===0?0:e===1?1:-ct(2,10*e-10)*qs((e*10-10.75)*Ex)},easeOutElastic:function(e){return e===0?0:e===1?1:ct(2,-10*e)*qs((e*10-.75)*Ex)+1},easeInOutElastic:function(e){return e===0?0:e===1?1:e<.5?-(ct(2,20*e-10)*qs((20*e-11.125)*Ax))/2:ct(2,-20*e+10)*qs((20*e-11.125)*Ax)/2+1},easeInBounce:function(e){return 1-hu(1-e)},easeOutBounce:hu,easeInOutBounce:function(e){return e<.5?(1-hu(1-2*e))/2:(1+hu(2*e-1))/2}},xP=class{constructor(e){P(this,"runtime"),P(this,"pendingTransition"),this.runtime=e,this.pendingTransition={from:re(5),to:re(5),elapsed_time:0,done:!0,total_time:0,timingFunction:ur.easeInOutQuad,constrain:!1}}hasPending(){return!this.pendingTransition.done}getPendingTransition(){return this.pendingTransition}getPendingFrom(){return this.pendingTransition.from}customTransition(e){e(this.pendingTransition)}stopTransition(){this.pendingTransition.from=re(this.runtime.target),this.pendingTransition.to=re(this.runtime.target),this.pendingTransition.done=!0,this.pendingTransition.elapsed_time=0,this.pendingTransition.total_time=0}runTransition(e,t){if(!this.pendingTransition.done){let i=this.pendingTransition,n=i.total_time===0?0:(i.elapsed_time+t)/i.total_time,r=i.total_time===0?1:n===0?0:i.timingFunction(n);e[1]=i.from[1]+(i.to[1]-i.from[1])*r,e[2]=i.from[2]+(i.to[2]-i.from[2])*r,e[3]=i.from[3]+(i.to[3]-i.from[3])*r,e[4]=i.from[4]+(i.to[4]-i.from[4])*r,this.pendingTransition.elapsed_time+=t,this.pendingTransition.elapsed_time>=this.pendingTransition.total_time&&(this.pendingTransition.done=!0,this.pendingTransition.constrain&&this.constrainBounds({transition:{duration:this.pendingTransition.total_time===0?0:500,easing:ur.easeOutExpo}}))}}zoomTo(e,{origin:t,stream:i=!1,transition:n}={}){let r=this.runtime.getZoomedPosition(e,{origin:t}),a=Math.abs(1-e);this.applyTransition(r,n,{duration:2e3*a,easing:ur.easeOutExpo,constrain:!0},{stream:!1})}constrainBounds({transition:e,panPadding:t=0}={}){let[i,n]=this.runtime.constrainBounds(this.runtime.target,{panPadding:t});i&&(this.applyTransition(n,e,{duration:500,easing:ur.easeOutQuart,constrain:!1}),this.runtime.updateNextFrame())}applyTransition(e,t,i,{stream:n}={}){this.pendingTransition.from=re(this.runtime.target),this.pendingTransition.to=e,n||(this.pendingTransition.elapsed_time=0),this.pendingTransition.done=!1,this.pendingTransition.total_time=typeof t?.duration<"u"?t.duration:typeof i?.duration<"u"?i.duration:1e3,this.pendingTransition.constrain=typeof t?.constrain<"u"?t.constrain:typeof i?.constrain<"u"?i.constrain:!1,this.pendingTransition.timingFunction=t?.easing||i?.easing||ur.easeInOutSine}goToRegion(e,{transition:t}={}){let i=this.runtime.clampRegion(e);this.applyTransition(xe.singleBox(i.width,i.height,i.x,i.y),t,{duration:1e3,easing:ur.easeOutExpo,constrain:!0}),this.runtime.updateNextFrame()}},u_=Number.MIN_VALUE+1,Eu=class{constructor(e,t,i,n=[],r){P(this,"id",Cu()),P(this,"ready",!1),P(this,"renderer"),P(this,"world"),P(this,"target"),P(this,"homePosition"),P(this,"manualHomePosition"),P(this,"manualFocalPosition"),P(this,"focalPosition"),P(this,"transitionManager"),P(this,"aggregate"),P(this,"transformBuffer",re(500)),P(this,"lastTarget",re(5)),P(this,"zoomBuffer",re(5)),P(this,"logNextRender",!1),P(this,"pendingUpdate",!0),P(this,"isCommitting",!1),P(this,"firstRender",!0),P(this,"lastTime"),P(this,"stopId"),P(this,"mode","explore"),P(this,"controllers",[]),P(this,"controllersRunning",!1),P(this,"controllerStopFunctions",[]),P(this,"maxScaleFactor",1),P(this,"_viewerToWorld",{x:0,y:0}),P(this,"_lastGoodScale",1),P(this,"hooks",{useFrame:[],useBeforeFrame:[],useAfterPaint:[],useAfterFrame:[]}),P(this,"fpsLimit"),P(this,"options"),P(this,"hookOptions",{filters:{grayscale:0,contrast:0,brightness:0,saturate:0,sepia:0,invert:0,hueRotate:0,blur:0}}),P(this,"_viewport",{x:0,y:0,width:0,height:0}),P(this,"setViewport",a=>{let l=Math.round(typeof a.x>"u"?this.target[1]:a.x),c=Math.round(typeof a.y>"u"?this.target[2]:a.y);a.width?this.target[3]=l+a.width:this.target[3]=this.target[3]-this.target[1]+l,a.height?this.target[4]=c+a.height:this.target[4]=this.target[4]-this.target[2]+c,Math.abs(this.target[1]-l)>.01&&(this.target[1]=l),Math.abs(this.target[2]-c)>.01&&(this.target[2]=c),this.pendingUpdate=!0}),P(this,"render",a=>{let l=a-this.lastTime;if(this.isCommitting||this.fpsLimit&&l<1e3/this.fpsLimit){this.stopId=window.requestAnimationFrame(this.render);return}this.lastTime=a,this.world.flushSubscriptions(),this.stopId=window.requestAnimationFrame(this.render),this.hook("useFrame",l);let c=this.pendingUpdate,p=this.renderer.pendingUpdate();if(this.transitionManager.hasPending()&&(this.transitionManager.runTransition(this.target,l),this.pendingUpdate=!0,this.updateControllerPosition()),!this.firstRender&&!c&&!p&&this.target[0]===this.lastTarget[0]&&this.target[1]===this.lastTarget[1]&&this.target[2]===this.lastTarget[2]&&this.target[3]===this.lastTarget[3]&&this.target[4]===this.lastTarget[4])return;this.hook("useBeforeFrame",l),this.renderer.beforeFrame(this.world,l,this.target,this.hookOptions);let m=this.getScaleFactor(),h=this.renderer.getPointsAt(this.world,this.target,this.aggregate,m),y=h.length;for(let v=0;v<y;v++){let x=h[v][0],A=h[v][1],C=h[v][2],I=C?bi(A,C,this.transformBuffer):A;this.renderer.prepareLayer(x,x.__parent&&C?bi(x.__parent.crop||x.__parent.points,C):I);let E=I.length/5;for(let O=0;O<E;O++){let L=O*5;I[L]!==0&&(this.renderer.paint(x,O,I[L+1],I[L+2],I[L+3]-I[L+1],I[L+4]-I[L+2]),this.hook("useAfterPaint",x))}this.renderer.finishLayer(x,A)}this.renderer.afterFrame(this.world,l,this.target,this.hookOptions),this.hook("useAfterFrame",l),this.lastTarget[0]=this.target[0],this.lastTarget[1]=this.target[1],this.lastTarget[2]=this.target[2],this.lastTarget[3]=this.target[3],this.lastTarget[4]=this.target[4],this.firstRender=!1,this.pendingUpdate=!1,this.logNextRender=!1,this.renderer.isReady()&&(this.ready=!0,this.world.trigger("ready")),this.world.flushSubscriptions();let S=this.world.getScheduledUpdates(this.target,m),w=S.length;if(w>0)for(let v=0;v<w;v++){let x=S[w-v-1]();x?x.then(()=>{this.pendingUpdate=!0}):this.pendingUpdate=!0}}),this.renderer=e,this.world=t,this.options={maxOverZoom:1,maxUnderZoom:1,visibilityRatio:1.5,...r||{}},this.target=xe.projection(i),this.manualHomePosition=!1,this.pendingUpdate=!0,this.homePosition=xe.projection(this.world),this.manualFocalPosition=!1,this.focalPosition=this.target,this.updateFocalPosition(),this.transitionManager=new xP(this),this.aggregate=wi(1),this.world.addLayoutSubscriber(a=>{a==="repaint"&&(this.pendingUpdate=!0),a==="recalculate-world-size"&&(this.manualHomePosition||(this.setHomePosition(),this.goHome()),this.updateFocalPosition())}),this.lastTime=performance.now(),this.controllers=n,this.render(this.lastTime),this.startControllers()}get x(){return this.target[1]}set x(e){this.target[1]=e}get y(){return this.target[2]}set y(e){this.target[2]=e}get x2(){return this.target[3]}set x2(e){this.target[3]=e}get y2(){return this.target[4]}set y2(e){this.target[4]=e}get width(){return this.target[3]-this.target[1]}set width(e){this.target[3]=this.target[1]+e}get height(){return this.target[4]-this.target[2]}set height(e){this.target[4]=this.target[2]=e}setHomePosition(e){this.homePosition.set(xe.projection(e||this.world)),this.pendingUpdate=!0}startControllers(){if(!this.controllersRunning){for(let e of this.controllers)this.controllerStopFunctions.push(e.start(this));this.controllersRunning=!0}}stopControllers(){if(this.controllersRunning){for(let e of this.controllerStopFunctions)e();this.controllersRunning=!1,this.controllerStopFunctions=[]}}updateControllerPosition(){for(let e of this.controllers)e.updatePosition(this.x,this.y,this.width,this.height)}triggerResize(){this.renderer.triggerResize&&this.renderer.triggerResize(),this.pendingUpdate=!0}addController(e){this.controllers.push(e),this.controllersRunning&&e.start(this),this.pendingUpdate=!0}cover(){return this.goHome({cover:!0})}getRendererScreenPosition(){return this.renderer.getRendererScreenPosition()}updateRendererScreenPosition(){this.pendingUpdate=!0,this.renderer.resize()}setOptions(e){this.options={...this.options,...e}}goHome(e={}){if(this.world.width<=0||this.world.height<=0)return;let t=this.getScaleFactor(),i=e.position?{x:e.position[1],y:e.position[2],width:e.position[3]-e.position[1],height:e.position[4]-e.position[2]}:{x:this.homePosition[1],y:this.homePosition[2],width:this.homePosition[3]-this.homePosition[1],height:this.homePosition[4]-this.homePosition[2]},n=this.width*t,r=this.height*t,a=i.width/n,l=i.height/r,c=n/r;if(e.cover?a>l:a<l){let p=c*i.height,m=(p-i.width)/2;this.target[1]=Math.round(-m+i.x),this.target[2]=Math.round(i.y),this.target[3]=Math.round(p-m+i.x),this.target[4]=Math.round(i.height+i.y)}else{let p=i.width/c,m=(p-i.height)/2;this.target[1]=Math.round(i.x),this.target[2]=Math.round(i.y-m),this.target[3]=Math.round(i.x+i.width),this.target[4]=Math.round(i.y+p-m)}this.constrainBounds(this.target),this.updateControllerPosition()}resize(e,t,i,n){this.updateFocalPosition(e-t,i-n);let r=t/e,a=n/i;this.target[3]=this.target[1]+(this.target[3]-this.target[1])*r,this.target[4]=this.target[2]+(this.target[4]-this.target[2])*a,this.goHome({position:this.focalPosition}),this.renderer.resize(t,n),this.pendingUpdate=!0}updateFocalPosition(e,t){if(!this.manualFocalPosition){let i=this.width,n=this.height,r=Math.min(i,n),a=0,l=0,c=this.x+a,p=this.y+l;if(i<n){let m=this.height-this.width;this.focalPosition=xe.projection({x:c,y:p+m/2,width:r-a*2,height:r-l*2}),this.pendingUpdate=!0}else{let m=this.width-this.height;this.focalPosition=xe.projection({x:c+m/2,y:p,width:r-a*2,height:r-l*2}),this.pendingUpdate=!0}}}getViewport(){return this._viewport.x=this.target[1],this._viewport.y=this.target[2],this._viewport.width=this.target[3]-this.target[1],this._viewport.height=this.target[4]-this.target[2],this._viewport}constrainBounds(e,{panPadding:t=0,ref:i=!1}={}){let{minX:n,maxX:r,minY:a,maxY:l}=this.getBounds({target:e,padding:t}),c=!1,p=i?e:re(e),m=Math.round(e[3]-e[1]),h=Math.round(e[4]-e[2]);return n>e[1]&&(c=!0,p[1]=n,p[3]=n+m),a>e[2]&&(c=!0,p[2]=a,p[4]=a+h),r<e[1]&&(c=!0,p[1]=r,p[3]=r+m),l<e[2]&&(c=!0,p[2]=l,p[4]=l+h),[c,p]}getBounds(e){let t=e.target||this.target,i=e.padding,n=this.options.visibilityRatio,r=Math.abs(1-n);if(this.world.hasActiveZone()){let C=this.world.getActiveZone();if(C){let I=t[3]-t[1]<C.points[3]-C.points[1],E=t[4]-t[2]<C.points[4]-C.points[2];return{minX:I?C.points[1]-i:C.points[1]+(C.points[3]-C.points[1])/2-(t[3]-t[1])/2,maxX:E?C.points[2]-i:C.points[2]+(C.points[4]-C.points[2])/2-(t[4]-t[2])/2,minY:I?C.points[3]+i:C.points[1]+(C.points[3]-C.points[1])/2-(t[3]-t[1])/2,maxY:E?C.points[4]+i:C.points[2]+(C.points[4]-C.points[2])/2-(t[4]-t[2])/2}}}let a=t[3]-t[1],l=this.world.width,c=-a*r,p=l-a-c,m=t[4]-t[2],h=this.world.height,y=-m*r,S=h-m-y,w=Math.round(Math.max(c,p)),v=Math.round(Math.min(c,p)),x=Math.round(Math.max(y,S)),A=Math.round(Math.min(y,S));return{minX:v,maxX:w,minY:A,maxY:x}}getScaleFactor(e=!1){let t=this.renderer.getScale(this.target[3]-this.target[1],this.target[4]-this.target[2],e);return t===0?this._lastGoodScale:(this._lastGoodScale=t,t)}getZoomedPosition(e,{origin:t,fromPos:i}){let n=i?{width:i[3]-i[1],height:i[4]-i[2]}:void 0,r=n?this.renderer.getScale(n.width,n.height):this.getScaleFactor(),a=n?n.width:this.width,l=n?n.height:this.height,c=this.getRendererScreenPosition()?.width,p=this.world.width,m=c?c/p:1,h=this.options.maxUnderZoom,y=Math.max(m||1,this.options.maxOverZoom),S=1/e,w=r*S;if(S<1){let x=a*r,A=l*r,C=this.world.width/x,I=this.world.height/A;if(C>I){let E=this.world.width*w,O=~~(a*r)*h;E<O&&(e=this.world.width*r/(a*r*h))}else{let E=this.world.height*w,O=~~(l*r)*h;E<O&&(e=this.world.height*r/(l*r*h))}}else w>y&&(e=r/y);let v=bi(this.target,On(e,t?t.x:this.target[1]+(this.target[3]-this.target[1])/2,t?t.y:this.target[2]+(this.target[4]-this.target[2])/2),this.zoomBuffer);return this.constrainBounds(v,{ref:!0,panPadding:100}),v}clampRegion({x:e,y:t,width:i,height:n,padding:r=0}){let a=this.width,l=this.height,c=i/a<n/l,p=e-r,m=t-r,h=i+r*2,y=n+r*2;if(c){let w=y/l*a;return{x:p-(w-h)/2,y:m,width:w,height:y}}let S=h/a*l;return{x:p,y:m-(S-y)/2,width:h,height:S}}viewerToWorld(e,t){let i=this.getScaleFactor();return this._viewerToWorld.x=this.target[1]+e/i,this._viewerToWorld.y=this.target[2]+t/i,this._viewerToWorld}worldToViewer(e,t,i,n){let r=xe.singleBox(i,n,e,t);return Zt(r,pi(wi(this.getScaleFactor()),ut(-this.target[1],-this.target[2]))),{x:r[1],y:r[2],width:r[3]-r[1],height:r[4]-r[2],strand:r}}setScale(e,t){Zt(this.target,On(e,t?t.x:this.target[1]+(this.target[3]-this.target[1])/2,t?t.y:this.target[2]+(this.target[4]-this.target[2])/2)),this.pendingUpdate=!0}syncTo(e){let t=this.target;return this.target=e.target,this.pendingUpdate=!0,()=>{this.target=t}}stop(){return typeof this.stopId<"u"&&(window.cancelAnimationFrame(this.stopId),this.stopId=void 0),()=>{this.render(performance.now())}}reset(){this.renderer.reset()}selectZone(e){this.world.selectZone(e),this.pendingUpdate=!0}deselectZone(){this.world.deselectZone(),this.pendingUpdate=!0}hook(e,t){let i=this.hooks[e].length;if(i!==0)for(let n=0;n<i;n++)this.hooks[e][n](t)}registerHook(e,t){return this.hooks[e].push(t),()=>{this.hooks[e]=this.hooks[e].filter(i=>i!==t)}}updateNextFrame(){this.pendingUpdate=!0}},pu=/([0-9]+(px|em)\s+)+(solid)\s+(.*)/g,fu={},SP=["backgroundColor","opacity","boxShadow","borderColor","borderWidth","borderStyle","outlineColor","outlineWidth","outlineOffset","outlineStyle"],jx=class extends bn{constructor(){super(),P(this,"id"),P(this,"type","spacial-content"),P(this,"isShape",!0),P(this,"points"),P(this,"hoverEvents",!1),P(this,"activeEvents",!1),P(this,"display",{x:0,y:0,scale:1,width:-1,height:-1,points:re(5)}),P(this,"boundingBox",null),P(this,"_parsed",{border:{id:null,match:[]},outline:{id:null,match:[]}}),P(this,"hovering"),P(this,"pressing"),P(this,"props",{}),P(this,"shape",{type:"none"}),P(this,"addHover",()=>{this.hovering=!0,this.__revision++}),P(this,"removeHover",()=>{this.hovering=!1,this.pressing=!1,this.__revision++}),P(this,"addPress",()=>{this.pressing=!0,this.__revision++}),P(this,"removePress",()=>{this.pressing=!1,this.__revision++}),this.id=Cu(12),this.points=re(5),this.shape={type:"none"}}updateBoundingBox(){if(this.shape.type==="none")return;let e=this.shape.points;if(this.shape.points.length>2){let t=Math.min(...e.map(a=>a[0])),i=Math.min(...e.map(a=>a[1])),n=Math.max(0,...e.map(a=>a[0])),r=Math.max(0,...e.map(a=>a[1]));this.boundingBox={x:t,y:i,width:n-t,height:r-i};return}this.boundingBox=null}intersects(e){if(!e||this.shape.type==="none")return!1;let[t,i]=e,n=this.shape.points,r=this.boundingBox;if(r||(this.updateBoundingBox(),r=this.boundingBox),!r||t<r.x||t>r.x+r.width||i<r.y||i>r.height+r.y)return!1;let a=!1;for(let l=0,c=n.length-1;l<n.length;c=l++)n[l][1]>i!=n[c][1]>i&&t<(n[c][0]-n[l][0])*(i-n[l][1])/(n[c][1]-n[l][1])+n[l][0]&&(a=!a);return a}getAllPointsAt(e,t){return e[3]-e[1]===1&&e[4]-e[2]===1?this.intersects([e[1],e[2]])?[[this,this.points,t]]:[]:[[this,this.points,t]]}applyProps(e={}){let t=!1;if(e.points)if(this.shape.type!=="polygon"||this.shape.points.length!==e.points.length)this.shape={type:"polygon",points:e.points,open:e.open},this.updateBoundingBox();else{let i=!1,n=e.points.length;for(let r=0;r<n;r++)if(e.points[r][0]!==this.shape.points[r][0]||e.points[r][1]!==this.shape.points[r][1]){i=!0;break}i&&(this.shape={type:"polygon",points:e.points,open:e.open},this.updateBoundingBox())}if(e.interactive!==this.props.interactive&&(t=!0,this.props.interactive=e.interactive),(e.open||e.open===!1)&&(t=!0,this.shape.open=e.open),e.style){let i=e.border||e.style.border;if(i!==this._parsed.border.id)if(!i)this._parsed.border.id=null,this._parsed.border.match=[];else{let n=fu[i]||pu.exec(i)||pu.exec(i);n&&(this._parsed.border.id=i,this._parsed.border.match=fu[i]=n)}if(this._parsed.border.id&&(e.style.borderWidth=this._parsed.border.match[1],e.style.borderStyle="solid",e.style.borderColor=this._parsed.border.match[4]),e.style.outline!==this._parsed.outline.id)if(!e.style.outline)this._parsed.outline.id=null,this._parsed.outline.match=[];else{let n=fu[e.style.outline]||pu.exec(e.style.outline)||pu.exec(e.style.outline);n&&(this._parsed.outline.id=e.style.outline,this._parsed.outline.match=fu[e.style.outline]=n)}this._parsed.outline.id&&(e.style.outlineWidth=this._parsed.outline.match[1],e.style.outlineStyle="solid",e.style.outlineColor=this._parsed.outline.match[4]),this.props.style=e.style,e.backgroundColor&&!this.props.style.backgroundColor&&(this.props.style.backgroundColor=e.backgroundColor,t=!0),e.style.background&&!this.props.style.backgroundColor&&(this.props.style.backgroundColor=e.style.background,t=!0);for(let n of SP)if(this.props.style[n]!==e.style[n]){t=!0;break}e.style[":hover"]!==this.props.hoverStyles&&(this.props.hoverStyles=e.style[":hover"],this.hoverEvents||(this.hoverEvents=!0,this.addEventListener("pointerenter",this.addHover),this.addEventListener("pointerleave",this.removeHover)),t=!0),e.style[":active"]!==this.props.pressStyles&&(this.props.pressStyles=e.style[":active"],this.activeEvents||(this.activeEvents=!0,this.addEventListener("mousedown",this.addPress),this.addEventListener("mouseup",this.removePress)),t=!0)}e.href!==this.props.href&&(this.props.href=e.href,t=!0),e.hrefTarget!==this.props.hrefTarget&&(this.props.hrefTarget=e.hrefTarget,t=!0),e.title!==this.props.title&&(this.props.title=e.title,t=!0),e.className!==this.props.className&&(this.props.className=e.className,e.className&&!this.hoverEvents&&(this.hoverEvents=!0,this.addEventListener("pointerenter",this.addHover),this.addEventListener("pointerleave",this.removeHover)),e.className&&!this.activeEvents&&(this.activeEvents=!0,this.addEventListener("mousedown",this.addPress),this.addEventListener("mouseup",this.removePress)),t=!0),e.relativeSize!==this.props.relativeSize&&(this.props.relativeSize=e.relativeSize,t=!0),e.relativeStyle!==this.props.relativeStyle&&(this.props.relativeStyle=e.relativeStyle,t=!0),e.html!==this.props.html&&(this.props.html=e.html,t=!0),e.target&&(e.target.width!==this.display.width||e.target.height!==this.display.height||e.target.x!==this.points[1]||e.target.y!==this.points[2])&&(t=!0,this.points=xe.singleBox(e.target.width,e.target.height,e.target.x,e.target.y),this.display.points=xe.singleBox(e.target.width,e.target.height,e.target.x,e.target.y),this.display.width=e.target.width,this.display.height=e.target.height),t&&this.__revision++}},Ix=/(-?[0-9]+(px|em)\s+|0\s+)(-?[0-9]+(px|em)\s+|0\s+)(-?[0-9]+(px|em)\s+|0\s+)?(-?[0-9]+(px|em)\s+|0\s+)?(.*)/g,Tx={},wP=typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes("firefox"),mu={},bP=class{constructor(e,t){P(this,"canvas"),P(this,"ctx"),P(this,"options"),P(this,"imagesPending",0),P(this,"imagesLoaded",0),P(this,"imageIdsLoaded",[]),P(this,"frameIsRendering",!1),P(this,"pendingDrawCall",!1),P(this,"firstMeaningfulPaint",!1),P(this,"parallelTasks",8),P(this,"frameTasks",0),P(this,"loadingQueueOrdered",!0),P(this,"loadingQueue",[]),P(this,"currentTask",Promise.resolve()),P(this,"tasksRunning",0),P(this,"stats"),P(this,"averageJobTime",64),P(this,"lastKnownScale",1),P(this,"visible",[]),P(this,"previousVisible",[]),P(this,"rendererPosition"),P(this,"dpi"),P(this,"drawCalls",[]),P(this,"lastPaintedObject"),P(this,"hostCache"),P(this,"invalidated",[]),P(this,"_worker",()=>{if(this.loadingQueue.length){let i=this.loadingQueue.pop();i&&(this.tasksRunning++,this.frameTasks++,this.currentTask=i.task().then(()=>{this.tasksRunning--}).catch(()=>{this.tasksRunning--}))}}),P(this,"_scheduled",0),P(this,"_doWork",()=>{this.loadingQueue.length===0&&this.tasksRunning===0&&this._scheduled&&(clearInterval(this._scheduled),this._scheduled=0);let i=this.parallelTasks||1;!this.firstMeaningfulPaint&&this.loadingQueue.length&&(i=this.loadingQueue.length);for(let n=0;n<=i;n++)this._worker()}),this.canvas=e,this.rendererPosition=e.getBoundingClientRect(),this.ctx=e.getContext("2d",{alpha:!0}),this.ctx.imageSmoothingEnabled=!0,this.options=t||{},this.canvas.style.opacity="0",this.canvas.style.transition="opacity .3s",this.dpi=t?.dpi||1,this.hostCache=t?.lruCache?new Fy({maxSize:1024*512*512,dispose:(i,n,r)=>{this.invalidated.push(n),i.width=0,i.height=0},sizeCalculation:(i,n)=>i.width*i.height}):{store:{},get(i){return this.store[i]},set(i,n){this.store[i]=n}}}getCanvasDims(){return{width:this.canvas.width/this.dpi,height:this.canvas.height/this.dpi}}resize(){this.rendererPosition=this.canvas.getBoundingClientRect()}isReady(){return this.firstMeaningfulPaint}afterFrame(e){if(this.clearTransform(),this.lastPaintedObject=void 0,this.frameIsRendering=!1,this.imagesPending=Math.max(0,this.imagesPending-this.imagesLoaded),this.imagesLoaded=0,this.loadingQueueOrdered||(this.loadingQueue=this.loadingQueue.sort((t,i)=>t.network&&t.scale===i.scale?i.distance-t.distance:t.scale<i.scale?-1:1),this.loadingQueueOrdered=!0),this.previousVisible=this.visible,this.pendingDrawCall=!!this.drawCalls.length,this.pendingDrawCall)for(let t=0;t<this.drawCalls.length;t++){let i=this.drawCalls.shift();i&&i()}this.doOffscreenWork(),this.options.debug&&this.stats&&this.stats.end()}doOffscreenWork(){this.frameTasks=0,this.loadingQueue.length&&(this._worker(),this.loadingQueue.length&&(this._scheduled||(this._scheduled=setInterval(this._doWork,0))))}getScale(e,t,i){if(Number.isNaN(e)||Number.isNaN(t))return this.lastKnownScale;let n=this.getCanvasDims(),r=n.width/e,a=n.height/t,l=(r<a?a:r)*(i&&this.dpi||1);return Number.isNaN(l)||(this.lastKnownScale=l),this.lastKnownScale}beforeFrame(e,t,i,n){this.options.debug&&this.stats&&this.stats.begin(),this.frameIsRendering=!0,this.visible=[],this.options.beforeFrame&&this.options.beforeFrame(t);let r=this.getCanvasDims();if(this.ctx.globalAlpha=1,this.ctx.fillStyle=this.canvas.dataset.background??"rgb(0, 0, 0)",this.ctx.fillRect(0,0,r.width,r.height),n.enableFilters&&(n.filters.brightness||n.filters.contrast||n.filters.grayscale||n.filters.invert||n.filters.sepia||n.filters.saturate||n.filters.hueRotate||n.filters.blur)){let a="";n.filters.brightness&&(a+=`brightness(${~~(100+n.filters.brightness*100)}%) `),n.filters.contrast&&(a+=`contrast(${~~(100+n.filters.contrast*100)}%) `),n.filters.grayscale&&(a+=`grayscale(${~~(n.filters.grayscale*100)}%) `),n.filters.invert&&(a+=`invert(${~~(n.filters.invert*100)}%) `),n.filters.sepia&&(a+=`sepia(${~~(n.filters.sepia*100)}%) `),n.filters.saturate&&(a+=`saturate(${~~(100+n.filters.saturate*100)}%) `),n.filters.hueRotate&&(a+=`hue-rotate(${n.filters.hueRotate}deg) `),n.filters.blur&&(a+=`blur(${n.filters.blur}px) `),this.ctx.filter=a}else this.ctx.filter="none"}applyTransform(e,t,i,n,r){let a=e.__owner.value;if(a&&a.rotation){this.ctx.save();let l=t+n/2,c=i+r/2;this.ctx.translate(l,c),this.ctx.rotate(a.rotation*Math.PI/180),this.ctx.translate(-l,-c),this.lastPaintedObject=a}}clearTransform(){this.lastPaintedObject&&(this.lastPaintedObject.rotation&&this.ctx.restore(),this.lastPaintedObject=void 0)}paint(e,t,i,n,r,a){let l=this.ctx.globalAlpha;if(e instanceof cr||e instanceof Ks){if(e.display.rotation){this.ctx.save();let m=i+r/2,h=n+a/2;e.crop&&(m-=e.crop[t*5+1],h-=e.crop[t*5+2]),this.ctx.translate(m,h),this.ctx.rotate(e.display.rotation*Math.PI/180),this.ctx.translate(-m,-h)}if(this.visible.push(e),typeof e.style&&e.style.opacity!=="undefined"){if(!e.style.opacity)return;this.ctx.globalAlpha=e.style.opacity}try{let m=e.__host.canvas,h=this.getCanvasDims();if((m.indices.indexOf(t)===-1||this.invalidated.indexOf(m.canvases[t])!==-1)&&this.schedulePaintToCanvas(m,e,t,vu({x:i+r/2,y:n+r/2},{x:h.width/2,y:h.height/2})),!this.firstMeaningfulPaint)return;let y=this.hostCache.get(m.canvases[t]);if(y)if(e.crop&&e.cropData){if(e.crop[t*5]){let S=[e.crop[t*5+1]/e.display.scale-e.display.points[t*5+1],e.crop[t*5+2]/e.display.scale-e.display.points[t*5+2],1+(e.crop[t*5+3]-e.crop[t*5+1])/e.display.scale,1+(e.crop[t*5+4]-e.crop[t*5+2])/e.display.scale];S[0]+=e.cropData.x/e.display.scale,S[1]+=e.cropData.y/e.display.scale;let w=e.x*this.lastKnownScale,v=e.y*this.lastKnownScale,x=[i+w,n+v,r,a];x[0]+=w,x[1]+=v,this.ctx.drawImage(y,S[0],S[1],S[2],S[3],x[0],x[1],x[2]+1,x[3]+1)}}else wP?this.ctx.drawImage(y,0,0,e.display.points[t*5+3]-e.display.points[t*5+1],e.display.points[t*5+4]-e.display.points[t*5+2],i,n,r+1,a+1):this.ctx.drawImage(y,0,0,e.display.points[t*5+3]-e.display.points[t*5+1],e.display.points[t*5+4]-e.display.points[t*5+2],i,n,r+Number.MIN_VALUE+.5,a+Number.MIN_VALUE+.5)}catch{}e.display.rotation&&this.ctx.restore()}let c=e instanceof $s&&this.options.box,p=e instanceof jx&&this.options.polygon;if((c||p)&&!e.props.className&&!e.props.html&&!e.props.href){if(this.visible.push(e),e.props.style){let m=Object.assign({},e.props.style||{},e.hovering?e.props.hoverStyles:{},e.pressing?e.props.pressStyles:{}),h=e.props.relativeStyle?1:r/e.width;typeof m.opacity<"u"&&(this.ctx.globalAlpha=m.opacity);let y=0;typeof m.borderWidth<"u"&&(y=parseInt(m.borderWidth,10)*h);let S=0;typeof m.outlineWidth<"u"&&(S=parseInt(m.outlineWidth,10)*h);let w=0;if(typeof m.outlineOffset<"u"&&(w=parseInt(m.outlineOffset,10)*h),m.borderColor&&(this.ctx.strokeStyle=m.borderColor),m.boxShadow){let v=m.boxShadow.split(/,(?![^(]*\))/);for(let x of v){let A=Tx[x]||Ix.exec(x)||Ix.exec(x);Tx[x]=A,A&&(this.ctx.save(),this.ctx.shadowOffsetX=parseInt(A[1])*this.dpi*h,this.ctx.shadowOffsetY=parseInt(A[3])*this.dpi*h,this.ctx.shadowBlur=parseInt(A[5])*this.dpi*h,this.ctx.shadowColor=A[9],this.ctx.fillStyle="rgba(0,0,0,1)",this.ctx.fillRect(i+y,n+y,r,a),this.ctx.restore())}}if(this.ctx.fillStyle=m.backgroundColor||"transparent",this.ctx.lineWidth=y,p){let v=e.shape,x=v.points||[],A=x.length;this.ctx.beginPath();for(let C=0;C<A;C++)this.ctx.lineTo(i+x[C][0]*this.lastKnownScale,n+x[C][1]*this.lastKnownScale);v.open||this.ctx.closePath(),y&&this.ctx.stroke(),v.open||this.ctx.fill()}else y&&this.ctx.strokeRect(i+y/2,n+y/2,r+y,a+y),this.ctx.fillRect(i+y,n+y,r,a);S&&(m.outlineColor&&(this.ctx.strokeStyle=m.outlineColor),this.ctx.lineWidth=S,this.ctx.strokeRect(i-S/2-w,n-S/2-w,r+y*2+S+w*2,a+y*2+S+w*2))}this.ctx.globalAlpha=l}}loadImage(e,t,i,n=!1){if(mu[e]&&mu[e].naturalWidth>0){t(mu[e]);return}try{let r=!1;n||setTimeout(()=>{r||this.loadImage(e,t,i,!0)},3e3);let a=document.createElement("img");a.decoding="auto",a.onload=function(){r=!0,t(a),mu[e]=a,a.onload=null},this.options.crossOrigin&&(a.crossOrigin="anonymous"),a.src=e,a.complete&&a.onload({}),a.width}catch(r){console.log("image error",r),i(r)}}schedulePaintToCanvas(e,t,i,n){this.imagesPending++,e.indices.push(i);let r=`${t.id}--${t.display.scale}-${i}`,a=this.invalidated.indexOf(r);a!==-1&&this.invalidated.splice(a,1),e.canvases[i]=r,t.__host.canvas.loading=!0,this.loadingQueueOrdered=!1,this.loadingQueue.push({id:r,scale:t.display.scale,network:!0,distance:n,task:()=>new Promise(l=>{if(this.visible.indexOf(t)===-1){this.imagesPending--,e.indices.splice(e.indices.indexOf(i),1),l();return}let c=t.getImageUrl(i);this.loadImage(c,p=>{this.loadingQueue.push({id:r,scale:t.display.scale,distance:n,task:()=>new Promise(m=>{this.imageIdsLoaded.includes(r)||(this.imagesLoaded++,this.imageIdsLoaded.push(r)),e.loaded.push(i),e.loaded.length===e.indices.length&&(e.loading=!1);let h=t.display.points.slice(i*5,i*5+5),y=document.createElement("canvas"),S=y.getContext("2d");y.width=h[3]-h[1],y.height=h[4]-h[2],this.hostCache.set(e.canvases[i],y),this.drawCalls.push(()=>{S.drawImage(p,0,0,h[3]-h[1],h[4]-h[2]),m()})})}),l()},p=>{this.imagesPending--,e.indices.splice(e.indices.indexOf(i),1),l()})})})}afterPaintLayer(e,t){}prepareLayer(e,t){if(e.__owner.value)if(e.cropData){let i=this.lastKnownScale*(1/e.display.scale);this.applyTransform(e,t[1],t[2],t[3]-t[1],t[4]-t[2])}else this.applyTransform(e,t[1],t[2],t[3]-t[1],t[4]-t[2]);(!e.__host||!e.__host.canvas)&&(e instanceof cr||e instanceof Ks)&&this.createImageHost(e)}finishLayer(){this.lastPaintedObject&&this.clearTransform()}createImageHost(e){e.__host=e.__host?e.__host:{},e.__host.canvas={canvas:void 0,canvases:[],indices:[],loaded:[],loading:!1}}getPointsAt(e,t,i,n){return e.getPointsAt(t,i,n)}getViewportBounds(e,t,i){let n=e.getActiveZone();if(n){let r=t[3]-t[1]<n.points[3]-n.points[1],a=t[4]-t[2]<n.points[4]-n.points[2];return{x1:r?n.points[1]-i:n.points[1]+(n.points[3]-n.points[1])/2-(t[3]-t[1])/2,y1:a?n.points[2]-i:n.points[2]+(n.points[4]-n.points[2])/2-(t[4]-t[2])/2,x2:r?n.points[3]+i:n.points[1]+(n.points[3]-n.points[1])/2-(t[3]-t[1])/2,y2:a?n.points[4]+i:n.points[2]+(n.points[4]-n.points[2])/2-(t[4]-t[2])/2}}return null}pendingUpdate(){let e=!this.pendingDrawCall&&this.drawCalls.length===0&&this.imagesPending===0&&this.loadingQueue.length===0&&this.tasksRunning===0;return!e&&this.visible.length===0&&setTimeout(()=>{this.canvas.style.opacity="1",this.firstMeaningfulPaint=!0},500),!this.firstMeaningfulPaint&&e&&this.visible.length?(this.canvas.style.opacity="1",this.firstMeaningfulPaint=e,!0):this.options.debug?!0:!e}getRendererScreenPosition(){return this.rendererPosition}reset(){this.loadingQueue=[],this.drawCalls=[]}},Vx=class{constructor(e){P(this,"renderers",[]),P(this,"length");for(let t of e)t&&this.renderers.push(t);this.length=this.renderers.length}afterFrame(e,t,i,n){for(let r=0;r<this.length;r++)this.renderers[r].afterFrame(e,t,i,n)}afterPaintLayer(e,t){for(let i=0;i<this.length;i++)this.renderers[i].afterPaintLayer(e,t)}beforeFrame(e,t,i,n){for(let r=0;r<this.length;r++)this.renderers[r].beforeFrame(e,t,i,n)}triggerResize(){for(let e=0;e<this.length;e++){let t=this.renderers[e];t.triggerResize&&t.triggerResize()}}getPointsAt(e,t,i,n){return this.renderers[0].getPointsAt(e,t,i,n)}getScale(e,t){return this.renderers[0].getScale(e,t)}getViewportBounds(e,t,i){return this.renderers[0].getViewportBounds(e,t,i)}getRendererScreenPosition(){return this.renderers[0].getRendererScreenPosition()}isReady(){for(let e=0;e<this.length;e++)if(!this.renderers[e].isReady())return!1;return!0}paint(e,t,i,n,r,a){for(let l=0;l<this.length;l++)this.renderers[l].paint(e,t,i,n,r,a)}pendingUpdate(){for(let e=0;e<this.length;e++)if(this.renderers[e].pendingUpdate())return!0;return!1}prepareLayer(e,t){for(let i=0;i<this.length;i++)this.renderers[i].prepareLayer(e,t)}finishLayer(e,t){for(let i=0;i<this.length;i++)this.renderers[i].finishLayer(e,t)}resize(e,t){for(let i=0;i<this.length;i++)this.renderers[i].resize(e,t)}reset(){for(let e=0;e<this.length;e++)this.renderers[e].reset()}},CP=class{constructor(e){P(this,"canvas"),P(this,"context"),P(this,"heightRatio",1),P(this,"widthRatio",1),P(this,"target",new Float32Array(5)),P(this,"initialWidth"),P(this,"initialHeight"),P(this,"bounds"),P(this,"aggregate"),P(this,"delta",0),P(this,"renderNextFrame",!0),this.canvas=e,this.initialWidth=e.width,this.initialHeight=e.height,this.context=e.getContext("2d"),this.context.globalAlpha=.5,this.aggregate=wi(1)}isReady(){return!0}resize(){this.initialWidth=this.canvas.width,this.initialHeight=this.canvas.height,this.renderNextFrame=!0}afterFrame(e,t,i){if(this.renderNextFrame){this.context.clearRect(0,0,this.canvas.width,this.canvas.height);let n=this.initialWidth/e.width,r=this.initialHeight/e.height,a=this.widthRatio>this.heightRatio?n:r;if(this.target=i,this.bounds){let l=e.getPointsAt(this.bounds,this.aggregate,a);for(let[c,p]of l)if(c instanceof cr&&c.__host.canvas){let m=p.length/5;for(let h=0;h<m;h++)if(c.__host.canvas.canvases[h]){let y={x1:p[h+1]*a,y1:p[h+2]*a,width:(p[h+3]-p[h+1])*a,height:(p[h+4]-p[h+2])*a}}}}e.getPoints().forEach((l,c,p)=>{if(c%5===0&&l){let m={x1:p[c+1]*a,y1:p[c+2]*a,x2:p[c+3]*a,y2:p[c+4]*a,width:(p[c+3]-p[c+1])*a,height:(p[c+4]-p[c+2])*a};this.context.strokeStyle="red",this.context.strokeRect(m.x1,m.y1,m.width,m.height)}}),i&&(this.context.strokeStyle="red",this.context.lineWidth=window.devicePixelRatio||1,this.context.strokeRect(i[1]*a,i[2]*a,(i[3]-i[1])*a,(i[4]-i[2])*a))}}getActiveZone(e){return null}getPointsAt(e,t,i,n){return e.getPointsAt(t,i,n)}getScale(e,t){return 1}beforeFrame(e,t){this.bounds=xe.singleBox(e.width,e.height)}drawImage(){}afterPaintLayer(e,t){}paint(e,t,i,n,r,a){this.renderNextFrame=!0}prepareLayer(e){}pendingUpdate(){return!1}hasActiveZone(){return!1}getViewportBounds(e,t,i){return null}getRendererScreenPosition(){return this.canvas.getBoundingClientRect()}finishLayer(){}reset(){}};function PP(e){return{x:e[1],y:e[2],width:e[3]-e[1],height:e[4]-e[2]}}var Rx="pan",_x="scroll",EP="gesture",AP={zoomOutFactor:.8,zoomInFactor:1.25,maxZoomFactor:1,minZoomFactor:.05,zoomDuration:300,zoomWheelConstant:20,zoomClamp:.6,panBounceStiffness:120,panBounceDamping:15,panTimeConstant:240,panPower:.1,nudgeDistance:100,panPadding:0,devicePixelRatio:1,enableWheel:!0,enableClickToZoom:!0,ignoreSingleFingerTouch:!1,enablePanOnWait:!1,requireMetaKeyForWheelZoom:!1,panOnWaitDelay:40,onPanInSketchMode:()=>{},parentElement:null},Wx=(e={})=>({start:function(t){let{zoomWheelConstant:i,enableWheel:n,enableClickToZoom:r,ignoreSingleFingerTouch:a,enablePanOnWait:l,panOnWaitDelay:c,parentElement:p,requireMetaKeyForWheelZoom:m}={...AP,...e},h={pointerStart:{x:0,y:0},isPressing:!1,mousemoveBuffer:re(5),multiTouch:{distance:0}};t.world.activatedEvents.push("onMouseUp","onMouseDown","onMouseMove","onTouchStart","onTouchEnd","onTouchMove");function y(){x=0,C="",E(),E(void 0,"notice"),A=0}function S(){t.world.constraintBounds(),y()}function w(U){if(U.which>1){h.isPressing=!1;return}t.mode==="explore"&&(U.preventDefault(),h.pointerStart.x=U.atlas.x,h.pointerStart.y=U.atlas.y,t.transitionManager.stopTransition(),h.isPressing=!0)}function v(){y(),h.isPressing&&(t.mode==="explore"&&t.world.constraintBounds(),h.isPressing=!1)}let x=0,A=0,C="";function I(U){if(t.mode==="explore"){if(U.atlasTouches.length===1&&(A=performance.now(),a==!1&&U.preventDefault(),h.pointerStart.x=U.atlasTouches[0].x,h.pointerStart.y=U.atlasTouches[0].y),U.atlasTouches.length===2){C=EP,U.preventDefault();let q=U.atlasTouches[0].x,ee=U.atlasTouches[1].x;h.pointerStart.x=(q+ee)/2;let Me=U.atlasTouches[0].y,pe=U.atlasTouches[1].y;h.pointerStart.y=(Me+pe)/2,x=vu({x:U.touches[0].clientX,y:U.touches[0].clientY},{x:U.touches[1].clientX,y:U.touches[1].clientY})}t.transitionManager.stopTransition(),h.isPressing=!0}}function E(U,q="intent"){p&&(p.dataset[q]=U)}function O(U){let q=null,ee=null,Me=!1,pe=0;if(h.isPressing&&U.touches.length===2){let Te=U.touches[0].clientX,ke=U.touches[1].clientX;q=(Te+ke)/2;let He=U.touches[0].clientY,qe=U.touches[1].clientY;ee=(He+qe)/2,pe=vu({x:U.touches[0].clientX,y:U.touches[0].clientY},{x:U.touches[1].clientX,y:U.touches[1].clientY}),Me=!0}if(E(C),h.isPressing&&U.touches.length===1){if(l&&(performance.now()-A<c&&C==""&&(C=_x),C==""&&(C=Rx)),E(C),C==""&&a==!0||C==_x){E("require-two-finger","notice");return}let Te=U.touches[0];q=Te.clientX,ee=Te.clientY}if(q!==null&&ee!==null){let Te=t.getRendererScreenPosition();if(Te){let{x:ke,y:He}=t.viewerToWorld(q-Te.x,ee-Te.y),qe=pe&&x?pe/x:1;t.transitionManager.customTransition($=>{$.from=re(t.target),$.to=bi($.from,pi(ut(h.pointerStart.x-ke,h.pointerStart.y-He),On(1/qe,ke,He)),h.mousemoveBuffer),$.elapsed_time=0,$.total_time=0,$.timingFunction=ur.easeInOutExpo,$.done=!1})}x=pe}C==Rx&&U.preventDefault()}function L(U){if(h.isPressing){let q=t.getRendererScreenPosition();if(q){let{x:ee,y:Me}=t.viewerToWorld(U.clientX-q.x,U.clientY-q.y);t.transitionManager.customTransition(pe=>{pe.from=re(t.target),pe.to=bi(pe.from,ut(h.pointerStart.x-ee,h.pointerStart.y-Me),h.mousemoveBuffer),pe.elapsed_time=0,pe.total_time=0,pe.timingFunction=ur.easeInOutExpo,pe.done=!1})}}}function M(U){t.mode==="explore"&&t.world.zoomIn(U.atlas)}function Q(U){let q=1+(0,Ux.default)(U).spinY/i;t.world.zoomTo(q,U.atlas,!0)}function V(U){return m&&U.metaKey==!1?(E("meta-required","notice"),U.stopPropagation(),!1):!0}t.world.addEventListener("mouseup",S),t.world.addEventListener("touchend",S),t.world.addEventListener("touchstart",I),t.world.addEventListener("mousedown",w),window.addEventListener("touchend",v),window.addEventListener("mouseup",v),window.addEventListener("mousemove",L),p&&p.addEventListener("touchmove",O),r&&(t.world.activatedEvents.push("onClick"),t.world.addEventListener("click",M)),n&&(t.world.activatedEvents.push("onWheel"),m&&p?.addEventListener("wheel",V,{passive:!0,capture:!0}),t.world.addEventListener("wheel",Q));let J=t.world.addLayoutSubscriber((U,q)=>{if(U==="zone-changed"&&t.transitionManager.constrainBounds({transition:{duration:0}}),U==="zoom-to"&&q&&t.transitionManager.zoomTo(q.factor,{origin:q.point,stream:q.stream}),U==="go-home"){let ee=q.immediate?{duration:0}:void 0;t.transitionManager.goToRegion(PP(t.homePosition),{transition:ee})}if(U==="goto-region"&&q){let ee=q.immediate?{duration:0}:{};t.transitionManager.goToRegion(q,{transition:ee})}U==="constrain-bounds"&&t.transitionManager.constrainBounds({transition:q?.immediate?{duration:0}:void 0})});return()=>{t.world.removeEventListener("mouseup",S),t.world.removeEventListener("touchend",S),t.world.removeEventListener("touchstart",I),t.world.removeEventListener("mousedown",w),window.removeEventListener("touchend",v),window.removeEventListener("mouseup",v),t.world.removeEventListener("mousemove",L),p&&(p.removeEventListener("touchmove",L),p.removeEventListener("wheel",V,{passive:!0,capture:!0})),r&&t.world.removeEventListener("click",M),n&&t.world.removeEventListener("wheel",Q),J()}},updatePosition(){}}),No=Au.default.createContext("explore");No.displayName="Mode";var TP=()=>(0,Au.useContext)(No);var Iu=Op.default.createContext(null);Iu.displayName="Atlas";var Tu=Op.default.createContext(null);Tu.displayName="Bounds";var Su,RP=typeof performance=="object"&&typeof performance.now=="function";if(RP){let e=performance;Su=()=>e.now()}else{let e=Date,t=e.now();Su=()=>e.now()-t}var _P=16;function Mx(e,t){e&&e.appendChild&&t&&e.appendChild(t)}function Qx(e,t){e&&e.removeChild&&t&&e.removeChild(t)}function MP(e,t){return Qx(e.world,t)}function kP(e,t,i){return $x(e.world,t,i)}function $x(e,t,i){e&&e instanceof Eu&&(e=e.world),e&&e.insertBefore&&e.insertBefore(t,i)}function Gx(e,t,i){if(i&&(e.applyProps&&e.applyProps(i),e instanceof bn))for(let n of bu){let r=n.slice(2).toLowerCase();i[n]!==t[n]&&(t[n]&&e.removeEventListener(r,t[n]),e.addEventListener(r,i[n]))}}function Yx(e,t){let i=Object.keys(t),n=!1;for(let r of i)if(bu.indexOf(r)!==-1){let a=Fo[r];if(a){if(e.activatedEvents.indexOf(a)!==-1)continue;n=!0,e.activatedEvents.push(a)}}n&&e.triggerEventActivation()}var wu=new Map,kx={};function OP(e,{args:t=[],...i},n,r,a){if(!(n instanceof Eu)&&a){let p=m=>m.return?p(m.return):m.stateNode&&m.stateNode.containerInfo;n=p(a)}let l,c=n.world;switch(e){case"world":l=Pu.withProps({width:i.width,height:i.height,viewingDirection:"left-to-right"}),l.activatedEvents=c.activatedEvents,l.eventHandlers=c.eventHandlers,l.subscriptions=c.subscriptions,l.triggerEventActivation(),c=l;break;case"box":l=new $s;break;case"shape":l=new jx;break;case"worldObject":case"world-object":l=new kp;break;case"worldImage":case"world-image":l=new cr;break;case"texture":l=new Ap;break;case"compositeImage":case"composite-image":l=new yP({id:i.id,width:i.width,height:i.height,images:[],renderOptions:i.renderOptions});break;case"tiledImage":case"tiled-image":l=Ks.fromTile(i.uri,i.display,i.tile,i.scaleFactor,void 0,i.format);break;case"paragraph":l=new gu,l.text=i.children;break;default:return}return Yx(c,i),Gx(l,{},i),l}function LP(e,t){if(t instanceof Pu)e.world=t;else if(t instanceof kp)e.world.appendChild(t);else if(t)throw new Error("Invalid root")}var Ys=(0,Hx.default)({unstable_now:Su,now:Su,createInstance:OP,removeChild:Qx,appendChild:Mx,appendInitialChild:Mx,insertBefore:$x,warnsIfNotActing:!0,supportsMutation:!0,isPrimaryRenderer:!1,scheduleTimeout:typeof setTimeout<"u"?setTimeout:void 0,cancelTimeout:typeof clearTimeout<"u"?clearTimeout:void 0,setTimeout:typeof setTimeout<"u"?setTimeout:void 0,clearTimeout:typeof clearTimeout<"u"?clearTimeout:void 0,noTimeout:-1,appendChildToContainer:LP,removeChildFromContainer:MP,createTextInstance(){},insertInContainerBefore:kP,prepareUpdate(e,t,i,n,r){return Yx(r.world,n),n},commitUpdate(e,t,i,n,r,a){e.applyProps&&t&&Gx(e,n,t)},finalizeInitialChildren(e){return e?.__handlers},getChildHostContext(){return kx},getRootHostContext(){return kx},prepareForCommit(e){return e.isCommitting=!0,null},preparePortalMount(){},hideInstance(e){e&&e.points&&(e.points[0]=0)},unhideInstance(e,t){e&&e.points&&(e.points[0]=1)},getPublicInstance(e){return e},hideTextInstance(){throw new Error("Text is not allowed in the react-three-fibre tree. You may have extraneous whitespace between components.")},resetAfterCommit(e){e.isCommitting=!1,e.pendingUpdate=!0,e.world&&e.world.needsRecalculate&&(e.world.recalculateWorldSize(),e.world.triggerRepaint())},shouldSetTextContent(){return!1},clearContainer(){return!1},supportsHydration:!1,supportsPersistence:!1,detachDeletedInstance(e){},afterActiveInstanceBlur(){},beforeActiveInstanceBlur(){},getCurrentEventPriority(){return console.log("getCurrentEventPriority"),_P},getInstanceFromNode(e){throw console.log("getInstanceFromNode",e),new Error("Not implemented")},getInstanceFromScope(e){throw console.log("getInstanceFromScope",e),new Error("Not implemented")},prepareScopeUpdate(e,t){throw console.log("prepareScopeUpdate",e,t),new Error("Not implemented")},logRecoverableError(){},requestPostPaintCallback(){}});Ys.injectIntoDevTools({bundleType:0,version:qx.version,rendererPackageName:"@atlas-viewer/atlas"});function Lp(e,t){let i=wu.get(e);i&&Ys.updateContainer(null,i,null,()=>{wu.delete(e),t&&t(e)})}var Ox={render(e,t){let i=wu.get(t);if(i)Ys.updateContainer(e,i,null);else{let n=Ys.createContainer(t,0,null,!1,null,"",()=>{},null);Ys.updateContainer(e,n,null),wu.set(t,n)}},unmountComponentAtNode(e,t){Lp(e,t)}},Xs=typeof window<"u"&&(window.document?.createElement||window.navigator?.product==="ReactNative")?Ru.useLayoutEffect:Ru.useEffect,zP=wn.default.memo(({children:e,setIsReady:t,onCreated:i,bounds:n,preset:r,mode:a="explore"})=>{let l=(0,wn.useCallback)(function(c){let p=(0,wn.useRef)(!1),m=()=>{t(!0)};return(0,wn.useEffect)(()=>{if(r&&!p.current){r.runtime.goHome();let h=i&&i(r);return void(h&&h.then?h.then(m):m())}return()=>{}},[]),(0,wn.useEffect)(()=>{p.current=!0},[]),c.children},[r]);return Xs(()=>{if(r){let c=r.runtime;a!==c.mode&&(c.mode=a),Ox.render((0,zo.jsx)(wn.default.StrictMode,{children:(0,zo.jsx)(l,{children:(0,zo.jsx)(Tu.Provider,{value:n,children:(0,zo.jsx)(No.Provider,{value:a,children:(0,zo.jsx)(Iu.Provider,{value:r,children:e})})})})}),c)}},[r,a,e]),Xs(()=>{if(r){let c=r.runtime;return()=>{Ox.unmountComponentAtNode(c)}}return()=>{}},[r]),null}),FP=class{constructor(e,t){P(this,"canvas"),P(this,"gl"),P(this,"program"),P(this,"fragmentShader"),P(this,"vertexShader"),P(this,"rectBuffer"),P(this,"fragmentShaderSource",`
|
|
12
12
|
precision mediump float;
|
|
13
13
|
|
|
14
14
|
uniform sampler2D u_image;
|
|
@@ -41,14 +41,14 @@ No matching component was found for:
|
|
|
41
41
|
|
|
42
42
|
v_texCoord = a_texCoord;
|
|
43
43
|
}
|
|
44
|
-
`),P(this,"attributes"),P(this,"uniforms"),P(this,"buffers"),P(this,"rendererPosition"),P(this,"dpi"),P(this,"lastResize",0),P(this,"lastKnownScale",1),this.canvas=e,this.rendererPosition=e.getBoundingClientRect(),this.gl=e.getContext("webgl2"),this.fragmentShader=this.createShader(this.gl.FRAGMENT_SHADER,this.fragmentShaderSource),this.vertexShader=this.createShader(this.gl.VERTEX_SHADER,this.vertexShaderSource),this.program=this.createProgram(this.vertexShader,this.fragmentShader),this.dpi=t?.dpi||1,this.attributes={position:this.gl.getAttribLocation(this.program,"a_position"),texCoord:this.gl.getAttribLocation(this.program,"a_texCoord")},this.uniforms={resolution:this.gl.getUniformLocation(this.program,"u_resolution"),texture:this.gl.getUniformLocation(this.program,"u_texture")},this.buffers={position:this.createArrayBuffer(),texCoord:this.createArrayBuffer(new Float32Array([0,0,1,0,0,1,0,1,1,0,1,1]))},this.rectBuffer=new Float32Array(12),this.resize(),this.gl.viewport(0,0,this.gl.canvas.width,this.gl.canvas.height),this.gl.clearColor(0,0,0,0),this.gl.clear(this.gl.COLOR_BUFFER_BIT),this.gl.useProgram(this.program),this.gl.enableVertexAttribArray(this.attributes.position)}resize(){this.resizeCanvasToDisplaySize(),this.gl.viewport(0,0,this.gl.canvas.width,this.gl.canvas.height),this.rendererPosition=this.canvas.getBoundingClientRect()}isReady(){return!0}beforeFrame(e,t,i){this.gl.clearColor(0,0,0,0),this.gl.clear(this.gl.COLOR_BUFFER_BIT),this.gl.vertexAttribPointer(this.attributes.position,2,this.gl.FLOAT,!1,0,0),this.gl.uniform2f(this.uniforms.resolution,this.gl.canvas.width,this.gl.canvas.height),this.lastResize>1e3&&(this.lastResize=0,this.resizeCanvasToDisplaySize()),this.lastResize+=t}prepareLayer(e){(!e.__host||!e.__host.webgl)&&((e instanceof cr||e instanceof
|
|
44
|
+
`),P(this,"attributes"),P(this,"uniforms"),P(this,"buffers"),P(this,"rendererPosition"),P(this,"dpi"),P(this,"lastResize",0),P(this,"lastKnownScale",1),this.canvas=e,this.rendererPosition=e.getBoundingClientRect(),this.gl=e.getContext("webgl2"),this.fragmentShader=this.createShader(this.gl.FRAGMENT_SHADER,this.fragmentShaderSource),this.vertexShader=this.createShader(this.gl.VERTEX_SHADER,this.vertexShaderSource),this.program=this.createProgram(this.vertexShader,this.fragmentShader),this.dpi=t?.dpi||1,this.attributes={position:this.gl.getAttribLocation(this.program,"a_position"),texCoord:this.gl.getAttribLocation(this.program,"a_texCoord")},this.uniforms={resolution:this.gl.getUniformLocation(this.program,"u_resolution"),texture:this.gl.getUniformLocation(this.program,"u_texture")},this.buffers={position:this.createArrayBuffer(),texCoord:this.createArrayBuffer(new Float32Array([0,0,1,0,0,1,0,1,1,0,1,1]))},this.rectBuffer=new Float32Array(12),this.resize(),this.gl.viewport(0,0,this.gl.canvas.width,this.gl.canvas.height),this.gl.clearColor(0,0,0,0),this.gl.clear(this.gl.COLOR_BUFFER_BIT),this.gl.useProgram(this.program),this.gl.enableVertexAttribArray(this.attributes.position)}resize(){this.resizeCanvasToDisplaySize(),this.gl.viewport(0,0,this.gl.canvas.width,this.gl.canvas.height),this.rendererPosition=this.canvas.getBoundingClientRect()}isReady(){return!0}beforeFrame(e,t,i){this.gl.clearColor(0,0,0,0),this.gl.clear(this.gl.COLOR_BUFFER_BIT),this.gl.vertexAttribPointer(this.attributes.position,2,this.gl.FLOAT,!1,0,0),this.gl.uniform2f(this.uniforms.resolution,this.gl.canvas.width,this.gl.canvas.height),this.lastResize>1e3&&(this.lastResize=0,this.resizeCanvasToDisplaySize()),this.lastResize+=t}prepareLayer(e){(!e.__host||!e.__host.webgl)&&((e instanceof cr||e instanceof Ks)&&this.createImageHost(e),e instanceof Ap&&this.createTextureHost(e))}createTextureHost(e){e.__host=e.__host?e.__host:{};let t=this.gl,i=this.gl.createTexture();t.bindTexture(t.TEXTURE_2D,i),t.pixelStorei(t.UNPACK_FLIP_Y_WEBGL,!1);let n;if(e instanceof Ap){let r=e.getTexture();r.source&&t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,r.source),n=r}t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),e.__host.webgl={height:e.height,width:e.width,texture:i,lastImage:n}}createImageHost(e){let t=[...new Array(e.points.length/5)];e.__host=e.__host?e.__host:{},e.__host.webgl={height:e.height,width:e.width,textures:t,loading:[],loaded:[],lastLevelRendered:-1,onLoad:(i,n)=>{let r=this.gl,a=this.gl.createTexture();r.bindTexture(r.TEXTURE_2D,a),r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!1),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,r.RGBA,r.UNSIGNED_BYTE,n),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,r.LINEAR),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,r.LINEAR),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,r.CLAMP_TO_EDGE),r.bindTexture(r.TEXTURE_2D,null),e.__host.webgl.textures[i]=a,e.__host.webgl.loaded.push(i)}}}paint(e,t,i,n,r,a){if(e.type==="spacial-content"&&e.__host&&e.__host.webgl){if(e.getTexture){let c=e?.getTexture();if(c&&e.__host.webgl.lastImage!==c.hash&&c.source&&!e.__host.webgl.error)try{let p=this.gl.RGBA,m=this.gl.RGBA,h=this.gl.UNSIGNED_BYTE;this.gl.bindTexture(this.gl.TEXTURE_2D,e.__host.webgl.texture),this.gl.texImage2D(this.gl.TEXTURE_2D,0,p,m,h,c.source),e.__host.webgl.lastImage=c.hash}catch(p){e.__host.webgl.error=p}}if(e.__host.webgl.loading&&e.__host.webgl.loading.indexOf(t)===-1&&e.getImageUrl){e.__host.webgl.loading.push(t);let c=document.createElement("img");c.decoding="async",c.crossOrigin="anonymous",c.src=e.getImageUrl(t),c.onload=()=>(c.onload=null,e.__host.webgl.onLoad(t,c))}let l=e.__host.webgl.texture?e.__host.webgl.texture:e.__host.webgl.textures[t];l&&(this.gl.enableVertexAttribArray(this.attributes.texCoord),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.buffers.texCoord),this.gl.enableVertexAttribArray(this.attributes.texCoord),this.gl.vertexAttribPointer(this.attributes.texCoord,2,this.gl.FLOAT,!1,0,0),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.buffers.position),this.gl.enableVertexAttribArray(this.attributes.position),this.gl.vertexAttribPointer(this.attributes.position,2,this.gl.FLOAT,!1,0,0),this.gl.bindTexture(this.gl.TEXTURE_2D,l),this.gl.uniform1i(this.uniforms.texture,0),this.setRectangle(i,n,r,a),this.gl.drawArrays(this.gl.TRIANGLES,0,6))}}afterPaintLayer(e,t){}pendingUpdate(){return!0}getPointsAt(e,t,i,n){return e.getPointsAt(t,i,n)}afterFrame(){}getScale(e,t,i){if(Number.isNaN(e)||Number.isNaN(t))return this.lastKnownScale;let n=this.getCanvasDims(),r=n.width/e,a=n.height/t,l=(r<a?a:r)*(i&&this.dpi||1);return Number.isNaN(l)||(this.lastKnownScale=l),this.lastKnownScale}getCanvasDims(){return{width:this.canvas.width/this.dpi,height:this.canvas.height/this.dpi}}getViewportBounds(e,t,i){return null}createShader(e,t){let i=this.gl.createShader(e);if(i){if(this.gl.shaderSource(i,t),this.gl.compileShader(i),this.gl.getShaderParameter(i,this.gl.COMPILE_STATUS))return i;let n=this.gl.getShaderInfoLog(i);if(this.gl.deleteShader(i),n)throw new Error(n)}throw new Error("Invalid shader")}createProgram(e,t){let i=this.gl.createProgram();if(i){if(this.gl.attachShader(i,e),this.gl.attachShader(i,t),this.gl.linkProgram(i),this.gl.getProgramParameter(i,this.gl.LINK_STATUS))return i;let n=this.gl.getProgramInfoLog(i);if(this.gl.deleteProgram(i),n)throw new Error(n)}throw new Error("Invalid program")}resizeCanvasToDisplaySize(){let e=this.gl.canvas,t=e.clientWidth,i=e.clientHeight,n=e.width!==t||e.height!==i;return n&&(e.width=t,e.height=i),n}createArrayBuffer(e){let t=this.gl.createBuffer();if(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,t),e&&this.gl.bufferData(this.gl.ARRAY_BUFFER,e,this.gl.STATIC_DRAW),!t)throw new Error("Cannot create buffer");return t}setRectangle(e,t,i,n){this.gl.bufferData(this.gl.ARRAY_BUFFER,this.getRectangle(e,t,i,n),this.gl.STATIC_DRAW)}getRectangle(e,t,i,n){let r=e,a=e+i,l=t,c=t+n;return this.rectBuffer.set([r,l,a,l,r,c,r,c,a,l,a,c]),this.rectBuffer}getRendererScreenPosition(){return this.rendererPosition}finishLayer(){}reset(){}};function Tp(e,t){let i=t?e:JSON.stringify(e),n=5381,r=i.length;for(;r;)n=n*33^i.charCodeAt(--r);let a=(n>>>0).toString(16);return a.length%2?"0"+a:a}var Xx=class{constructor(e){P(this,"$element"),P(this,"stylesheetClasses"),P(this,"activeStylesheetClasses"),P(this,"sheetsDidUpdate"),P(this,"sheetPrefix"),P(this,"stylesheetEntries"),this.sheetPrefix=e?.sheetPrefix||"a-",this.$element=document.createElement("style"),this.stylesheetClasses=[],this.activeStylesheetClasses=[],this.sheetsDidUpdate=!1,this.stylesheetEntries={}}getElement(){return this.$element}addStylesheet(e){let t=e.replace(/\s\s+/g," ").replace(/: /g,":").replace(/; /g,";").trim(),i=this.sheetPrefix+Tp(t,!0);return this.stylesheetClasses.indexOf(i)!==-1||(this.stylesheetClasses.push(i),this.activeStylesheetClasses.push(i),this.stylesheetEntries[i]=t,this.sheetsDidUpdate=!0),i}removeStylesheet(e){let t=this.sheetPrefix+Tp(e,!0);this.stylesheetClasses.indexOf(t)&&(this.stylesheetClasses=this.stylesheetClasses.filter(i=>i!==t)),this.sheetsDidUpdate=!0}clearClasses(){this.activeStylesheetClasses=[]}didUpdateActive(){if(this.activeStylesheetClasses.length){for(let e of this.activeStylesheetClasses)if(this.stylesheetClasses.indexOf(e)===-1)return!0;for(let e of this.stylesheetClasses)if(this.activeStylesheetClasses.indexOf(e)===-1)return!0}return!1}updateSheet(){(this.sheetsDidUpdate||this.didUpdateActive())&&(this.$element.innerText=this.activeStylesheetClasses.map(e=>`.${e}{${this.stylesheetEntries[e]}}`).join(""),this.sheetsDidUpdate=!1,this.stylesheetClasses=[...this.activeStylesheetClasses])}},Kx=class{constructor(e,t){P(this,"htmlContainer"),P(this,"visible",[]),P(this,"previousVisible",[]),P(this,"htmlIds",[]),P(this,"firstMeaningfulPaint",!1),P(this,"rendererPosition"),P(this,"stylesheet"),P(this,"options"),P(this,"paintTx",1),P(this,"zIndex",0),P(this,"classes"),this.htmlContainer=e,this.htmlContainer.innerHTML="",this.rendererPosition=this.htmlContainer.getBoundingClientRect(),this.options={triggerResize:()=>{},box:!1,text:!1,sheetPrefix:"",inlineStyles:!1,background:"",...t||{}},this.stylesheet=new Xx({sheetPrefix:this.options.sheetPrefix}),this.options.inlineStyles||this.htmlContainer.appendChild(this.stylesheet.getElement()),this.options.background&&this.htmlContainer.classList.add(this.stylesheet.addStylesheet(`
|
|
45
45
|
background: ${this.options.background};
|
|
46
46
|
`)),this.classes={hostClassName:this.stylesheet.addStylesheet(`
|
|
47
47
|
position: absolute;
|
|
48
48
|
transform-origin: 0px 0px;
|
|
49
|
-
`),interactive:this.stylesheet.addStylesheet("pointer-events: all"),nonInteractive:this.stylesheet.addStylesheet("pointer-events: none")},this.stylesheet.updateSheet()}createHtmlHost(e){if(this.htmlContainer&&(this.options.box||e.props.className||e.props.html||e.props.href)){let t=document.createElement(e.props.href?"a":"div");if(e.props.href){t.style.display="block",t.href=e.props.href;let i=e.props.hrefTarget||"_blank";t.target=i,i!=="_self"&&(t.rel="noopener noreferrer")}t.title=e.props.title||"",this.options.inlineStyles?(t.style.display="block",t.style.position="absolute",t.style.overflow="hidden",t.style.transformOrigin="0px 0px"):t.classList.add(this.classes.hostClassName),e.__host={element:t,revision:null,relative:!1},this.updateHtmlHost(e,e.width,e.height),e.__onCreate&&e.__onCreate()}}triggerResize(){this.options.triggerResize()}updateHtmlHost(e,t,i){if(e.__revision!==e.__host.revision){let n=e.__host.element,r=[this.classes.hostClassName];if(e.props.interactive?this.options.inlineStyles?n.style.pointerEvents="all":r.push(this.classes.interactive):this.options.inlineStyles?n.style.pointerEvents="none":r.push(this.classes.nonInteractive),e.props.href){n.style.display="block",n.href=e.props.href;let l=e.props.hrefTarget||"_blank";n.target=l,l!=="_self"?n.rel="noopener noreferrer":n.rel=""}else n.href&&n.removeAttribute("href");if(e.props.title&&(n.title=e.props.title||""),e.props.className&&(r.push(e.props.className),e.hovering&&r.push(`${e.props.className}--hover`),e.pressing&&r.push(`${e.props.className}--active`)),e.props.relativeStyle?(n.style.width=`${t||e.width}px`,n.style.height=`${i||e.height}px`):(n.style.width=`${e.width}px`,n.style.height=`${e.height}px`),e.props.style){Object.assign(n.style,e.props.style||{},e.hovering?e.props.hoverStyles||{}:{},e.pressing?e.props.pressStyles||{}:{});return}if(this.options.text&&e instanceof gu){e.text&&(n.innerText=e.text),e.backgroundColor&&(n.style.backgroundColor=e.backgroundColor),e.color&&(n.style.color=e.color),e.props.font&&(n.style.font=e.props.font),e.props.textAlign&&(n.style.textAlign=e.props.textAlign),e.__host.revision=e.__revision;let l=r.join(" ");n.className=l,n.part=l}e instanceof Qs&&(this.options.box||e.props.className||e.props.html)&&(e.props.backgroundColor&&(n.style.backgroundColor=e.props.backgroundColor),e.props.border!==n.style.border&&(n.style.border=e.props.border));let a=r.join(" ");n.className=a,n.part=a}}afterFrame(e,t,i){this.stylesheet.updateSheet();for(let n of this.previousVisible)this.visible.indexOf(n)===-1&&this.htmlContainer&&n.__id&&this.htmlIds.indexOf(n.__id)!==-1&&this.htmlContainer.removeChild(n.__host.element);this.previousVisible=this.visible}afterPaintLayer(e,t){}beforeFrame(e,t,i){this.stylesheet.clearClasses(),this.paintTx++,this.zIndex=0,this.visible=[]}getPointsAt(e,t,i,n){return e.getPointsAt(t,i,n)}getScale(e,t){let i=this.rendererPosition.width/e,n=this.rendererPosition.height/t;return i<n?n:i}getViewportBounds(e,t,i){return null}isReady(){return!1}paint(e,t,i,n,r,a){if(this.zIndex++,(this.options.text&&e instanceof gu||e instanceof Qs&&(this.options.box||e.props.className||e.props.html))&&e.__host.tx!==this.paintTx&&(this.visible.push(e),e.__host.tx=this.paintTx,this.htmlContainer)){this.updateHtmlHost(e,r,a);let l=r/e.width,c=e.__host.element;c.style.zIndex=`${this.zIndex}`,e.props.relativeStyle?c.style.transform=`translate(${Math.round(i)}px, ${Math.round(n)}px)`:c.style.transform=`translate(${Math.round(i)}px, ${Math.round(n)}px) scale(${l})`,this.previousVisible.indexOf(e)===-1&&this.htmlContainer.appendChild(c),this.htmlIds.indexOf(e.__id)===-1&&this.htmlIds.push(e.__id)}}pendingUpdate(){return!1}prepareLayer(e){e.__host||(e instanceof gu||e instanceof Qs)&&this.createHtmlHost(e)}resize(e,t){typeof e<"u"&&typeof t<"u"&&(this.htmlContainer.style.width=`${e}px`,this.htmlContainer.style.height=`${t}px`),this.rendererPosition=this.htmlContainer.getBoundingClientRect()}getRendererScreenPosition(){return this.rendererPosition}finishLayer(){}reset(){}},Jx=class yu{constructor(t,i,n){P(this,"element"),P(this,"runtime"),P(this,"unsubscribe"),P(this,"activatedEvents",[]),P(this,"eventHandlers",[]),P(this,"bounds"),P(this,"listening"),P(this,"pointerMoveEvent"),P(this,"pointerEventState",{isClicking:!1,isDragging:!1,isPressed:!1,mousedOver:[],itemsBeingDragged:[],mouseDownStart:{x:0,y:0},lastTouches:[]}),P(this,"options"),P(this,"_realPointerMove",a=>{this.pointerMoveEvent=a}),P(this,"onWheelEvent",a=>{a.preventDefault(),this.onPointerEvent(a)}),P(this,"onTouchEvent",a=>{let l=zo[a.type],c=[],p=a.touches.length;for(let m=0;m<p;m++){let h=a.touches.item(m);if(!h)continue;let{x:y,y:S}=this.runtime.viewerToWorld(h.clientX-this.bounds.left,h.clientY-this.bounds.top),w={id:h.identifier,x:y,y:S};c.push(w)}c.length&&this.assignToEvent(a,c[0].x,c[0].y),l!=="onTouchEnd"?(this.pointerEventState.lastTouches=c,a.atlasTouches=c,this.runtime.world.propagateTouchEvent(l,a,c)):(a.atlasTouches=[],this.runtime.world.propagateTouchEvent(l,a,this.pointerEventState.lastTouches),this.pointerEventState.lastTouches=[])}),P(this,"onPointerEvent",a=>{let l=zo[a.type];if(l&&this.runtime.world.activatedEvents.indexOf(l)!==-1){let{x:c,y:p}=this.runtime.viewerToWorld(a.clientX-this.bounds.left,a.clientY-this.bounds.top);this.assignToEvent(a,c,p),this.runtime.world.propagatePointerEvent(l,a,c,p)}}),P(this,"onPointerDown",a=>{this.pointerEventState.isPressed=!0,this.pointerEventState.isClicking=!0,this.pointerEventState.mouseDownStart.x=a.clientX,this.pointerEventState.mouseDownStart.y=a.clientY,setTimeout(()=>{this.runtime&&(this.pointerEventState.isClicking=!1)},250),setTimeout(()=>{if(this.runtime&&this.pointerEventState.isPressed&&!this.pointerEventState.isDragging){let l=this.runtime.viewerToWorld(this.pointerEventState.mouseDownStart.x-this.bounds.left,this.pointerEventState.mouseDownStart.y-this.bounds.top);this.pointerEventState.isDragging=!0,this.pointerEventState.itemsBeingDragged=this.runtime.world.propagatePointerEvent("onDragStart",a,l.x,l.y)}},800),this.onPointerEvent(a)}),P(this,"onPointerUp",a=>{if(this.pointerEventState.isClicking){let{x:l,y:c}=this.runtime.viewerToWorld(a.clientX-this.bounds.left,a.clientY-this.bounds.top);this.assignToEvent(a,l,c),this.runtime.world.propagatePointerEvent("onClick",a,l,c)}if(this.pointerEventState.isDragging){for(let l of this.pointerEventState.itemsBeingDragged)l.dispatchEvent("onDragEnd",a);this.pointerEventState.isDragging=!1}this.pointerEventState.isClicking=!1,this.pointerEventState.isPressed=!1,this.pointerEventState.itemsBeingDragged=[],this.onPointerEvent(a)}),P(this,"onPointerMove",a=>{this.pointerMoveEvent=void 0;let{x:l,y:c}=this.runtime.viewerToWorld(a.clientX-this.bounds.left,a.clientY-this.bounds.top);if(Number.isNaN(l)||Number.isNaN(c))return;this.assignToEvent(a,l,c),this.runtime.world.propagatePointerEvent("onPointerMove",a,l,c);let p=this.runtime.world.propagatePointerEvent("onMouseMove",a,l,c),m=[],h=[];for(let y of p)m.push(y.id),h.push(y),this.pointerEventState.mousedOver.indexOf(y)===-1&&(y.dispatchEvent("onMouseEnter",a),y.dispatchEvent("onPointerEnter",a),y.dispatchEvent("onMouseOver",a),y.dispatchEvent("onPointerOver",a));for(let y of this.pointerEventState.mousedOver)m.indexOf(y.id)===-1&&(y.dispatchEvent("onMouseLeave",a),y.dispatchEvent("onPointerLeave",a),y.dispatchEvent("onMouseOut",a),y.dispatchEvent("onPointerOut",a));if(this.pointerEventState.isDragging)for(let y of this.pointerEventState.itemsBeingDragged)y.dispatchEvent("onDrag",a);if(this.pointerEventState.isPressed&&!this.pointerEventState.isDragging&&vu(this.pointerEventState.mouseDownStart,{x:a.clientX,y:a.clientY})>50){let y=this.runtime.viewerToWorld(this.pointerEventState.mouseDownStart.x-this.bounds.left,this.pointerEventState.mouseDownStart.y-this.bounds.top);this.pointerEventState.isDragging=!0,this.pointerEventState.itemsBeingDragged=this.runtime.world.propagatePointerEvent("onDragStart",{...a,atlas:{x:y.x,y:y.y}},y.x,y.y)}this.pointerEventState.mousedOver=h}),this.element=t,this.runtime=i,this.unsubscribe=i.world.addLayoutSubscriber(this.layoutSubscriber.bind(this)),this.bounds=t.getBoundingClientRect(),this.listening=!1,this.options={simulationRate:0,...n||{}};let r=0;i.registerHook("useFrame",a=>{r+=a,r>this.options.simulationRate&&this.pointerMoveEvent&&(r=0,i.updateNextFrame())}),i.registerHook("useBeforeFrame",()=>{this.pointerMoveEvent&&this.onPointerMove(this.pointerMoveEvent)}),this.activateEvents()}updateBounds(){this.bounds=this.element.getBoundingClientRect(),this.runtime.updateRendererScreenPosition()}layoutSubscriber(t){t==="event-activation"&&this.listening==!1&&this.activateEvents()}assignToEvent(t,i,n){yu.eventPool.atlas.x=i,yu.eventPool.atlas.y=n,t.atlas=yu.eventPool.atlas}activateEvents(){this.listening=!0,this.element.addEventListener("pointermove",this._realPointerMove),this.element.addEventListener("pointerup",this.onPointerUp),this.element.addEventListener("pointerdown",this.onPointerDown),this.element.addEventListener("mousedown",this.onPointerEvent),this.element.addEventListener("mouseup",this.onPointerEvent),this.element.addEventListener("pointercancel",this.onPointerEvent),this.element.addEventListener("wheel",this.onWheelEvent),this.element.addEventListener("touchstart",this.onTouchEvent),this.element.addEventListener("touchcancel",this.onTouchEvent),this.element.addEventListener("touchend",this.onTouchEvent),this.element.addEventListener("touchmove",this.onTouchEvent)}normalizeEventName(t){return t.startsWith("on")?t.slice(2).toLowerCase():t.toLowerCase()}stop(){this.listening=!1,this.element.removeEventListener("pointermove",this._realPointerMove),this.element.removeEventListener("pointerup",this.onPointerUp),this.element.removeEventListener("pointerdown",this.onPointerDown),this.element.removeEventListener("mousedown",this.onPointerEvent),this.element.removeEventListener("mouseup",this.onPointerEvent),this.element.removeEventListener("pointercancel",this.onPointerEvent),this.element.removeEventListener("wheel",this.onWheelEvent),this.element.removeEventListener("touchstart",this.onTouchEvent),this.element.removeEventListener("touchcancel",this.onTouchEvent),this.element.removeEventListener("touchend",this.onTouchEvent),this.element.removeEventListener("touchmove",this.onTouchEvent),this.unsubscribe();for(let[t,i]of this.eventHandlers)this.element.removeEventListener(this.normalizeEventName(t),i)}};P(Jx,"eventPool",{atlas:{x:0,y:0}});var e0=Jx;function t0({interactive:e=!0,viewport:t,forceRefresh:i,canvasElement:n,overlayElement:r,controllerConfig:a,unstable_webglRenderer:l,dpi:c,debug:p,canvasBox:m=!0,polygon:h=!0,navigatorElement:y,runtimeOptions:S}){if(!n)throw new Error("Invalid container");n.style.userSelect="none";let w=e?Hx({minZoomFactor:.5,maxZoomFactor:3,enableClickToZoom:!1,parentElement:n,...a||{}}):void 0,v=new Ux([l?new FP(n,{dpi:c}):new bP(n,{dpi:c,debug:p,box:m,polygon:h}),r?new Zx(r,{box:l||!m,text:!0,triggerResize:i}):void 0,y?new CP(y):void 0]),x=new Eu(v,new Pu(1024,1024),t,w?[w]:[],S),A=new e0(n,x);return{name:"default-preset",em:A,runtime:x,renderer:v,controller:w,canvas:n,navigator:y,unmount(){zp(x),x.stopControllers(),x.stop(),x.reset(),A&&A.stop()}}}var lr=1+Number.MIN_VALUE,NP=class{constructor(e,t){P(this,"container"),P(this,"width"),P(this,"height"),P(this,"pending",!0),P(this,"options"),P(this,"stylesheet"),P(this,"zIndex",0),P(this,"lastKnownScale",1),P(this,"rendererPosition"),P(this,"currentlyVisible",[]),P(this,"previouslyVisible",[]),this.container=e,this.rendererPosition=e.getBoundingClientRect();let{width:i,height:n}=this.rendererPosition;this.width=i,this.height=n,this.options={addPart:!1,setDraggableFalse:!1,imageClass:"",widthStylesheet:!1,sheetPrefix:"position-",background:"#000",...t||{}},this.stylesheet=new Kx({sheetPrefix:this.options.sheetPrefix}),this.container.classList.add(this.stylesheet.addStylesheet(`
|
|
49
|
+
`),interactive:this.stylesheet.addStylesheet("pointer-events: all"),nonInteractive:this.stylesheet.addStylesheet("pointer-events: none")},this.stylesheet.updateSheet()}createHtmlHost(e){if(this.htmlContainer&&(this.options.box||e.props.className||e.props.html||e.props.href)){let t=document.createElement(e.props.href?"a":"div");if(e.props.href){t.style.display="block",t.href=e.props.href;let i=e.props.hrefTarget||"_blank";t.target=i,i!=="_self"&&(t.rel="noopener noreferrer")}t.title=e.props.title||"",this.options.inlineStyles?(t.style.display="block",t.style.position="absolute",t.style.overflow="hidden",t.style.transformOrigin="0px 0px"):t.classList.add(this.classes.hostClassName),e.__host={element:t,revision:null,relative:!1},this.updateHtmlHost(e,e.width,e.height),e.__onCreate&&e.__onCreate()}}triggerResize(){this.options.triggerResize()}updateHtmlHost(e,t,i){if(e.__revision!==e.__host.revision){let n=e.__host.element,r=[this.classes.hostClassName];if(e.props.interactive?this.options.inlineStyles?n.style.pointerEvents="all":r.push(this.classes.interactive):this.options.inlineStyles?n.style.pointerEvents="none":r.push(this.classes.nonInteractive),e.props.href){n.style.display="block",n.href=e.props.href;let l=e.props.hrefTarget||"_blank";n.target=l,l!=="_self"?n.rel="noopener noreferrer":n.rel=""}else n.href&&n.removeAttribute("href");if(e.props.title&&(n.title=e.props.title||""),e.props.className&&(r.push(e.props.className),e.hovering&&r.push(`${e.props.className}--hover`),e.pressing&&r.push(`${e.props.className}--active`)),e.props.relativeStyle?(n.style.width=`${t||e.width}px`,n.style.height=`${i||e.height}px`):(n.style.width=`${e.width}px`,n.style.height=`${e.height}px`),e.props.style){Object.assign(n.style,e.props.style||{},e.hovering?e.props.hoverStyles||{}:{},e.pressing?e.props.pressStyles||{}:{});return}if(this.options.text&&e instanceof gu){e.text&&(n.innerText=e.text),e.backgroundColor&&(n.style.backgroundColor=e.backgroundColor),e.color&&(n.style.color=e.color),e.props.font&&(n.style.font=e.props.font),e.props.textAlign&&(n.style.textAlign=e.props.textAlign),e.__host.revision=e.__revision;let l=r.join(" ");n.className=l,n.part=l}e instanceof $s&&(this.options.box||e.props.className||e.props.html)&&(e.props.backgroundColor&&(n.style.backgroundColor=e.props.backgroundColor),e.props.border!==n.style.border&&(n.style.border=e.props.border));let a=r.join(" ");n.className=a,n.part=a}}afterFrame(e,t,i){this.stylesheet.updateSheet();for(let n of this.previousVisible)this.visible.indexOf(n)===-1&&this.htmlContainer&&n.__id&&this.htmlIds.indexOf(n.__id)!==-1&&this.htmlContainer.removeChild(n.__host.element);this.previousVisible=this.visible}afterPaintLayer(e,t){}beforeFrame(e,t,i){this.stylesheet.clearClasses(),this.paintTx++,this.zIndex=0,this.visible=[]}getPointsAt(e,t,i,n){return e.getPointsAt(t,i,n)}getScale(e,t){let i=this.rendererPosition.width/e,n=this.rendererPosition.height/t;return i<n?n:i}getViewportBounds(e,t,i){return null}isReady(){return!1}paint(e,t,i,n,r,a){if(this.zIndex++,(this.options.text&&e instanceof gu||e instanceof $s&&(this.options.box||e.props.className||e.props.html))&&e.__host.tx!==this.paintTx&&(this.visible.push(e),e.__host.tx=this.paintTx,this.htmlContainer)){this.updateHtmlHost(e,r,a);let l=r/e.width,c=e.__host.element;c.style.zIndex=`${this.zIndex}`,e.props.relativeStyle?c.style.transform=`translate(${Math.round(i)}px, ${Math.round(n)}px)`:c.style.transform=`translate(${Math.round(i)}px, ${Math.round(n)}px) scale(${l})`,this.previousVisible.indexOf(e)===-1&&this.htmlContainer.appendChild(c),this.htmlIds.indexOf(e.__id)===-1&&this.htmlIds.push(e.__id)}}pendingUpdate(){return!1}prepareLayer(e){e.__host||(e instanceof gu||e instanceof $s)&&this.createHtmlHost(e)}resize(e,t){typeof e<"u"&&typeof t<"u"&&(this.htmlContainer.style.width=`${e}px`,this.htmlContainer.style.height=`${t}px`),this.rendererPosition=this.htmlContainer.getBoundingClientRect()}getRendererScreenPosition(){return this.rendererPosition}finishLayer(){}reset(){}},Zx=class yu{constructor(t,i,n){P(this,"element"),P(this,"runtime"),P(this,"unsubscribe"),P(this,"activatedEvents",[]),P(this,"eventHandlers",[]),P(this,"bounds"),P(this,"listening"),P(this,"pointerMoveEvent"),P(this,"pointerEventState",{isClicking:!1,isDragging:!1,isPressed:!1,mousedOver:[],itemsBeingDragged:[],mouseDownStart:{x:0,y:0},lastTouches:[]}),P(this,"options"),P(this,"_realPointerMove",a=>{this.pointerMoveEvent=a}),P(this,"onWheelEvent",a=>{a.preventDefault(),this.onPointerEvent(a)}),P(this,"onTouchEvent",a=>{let l=Fo[a.type],c=[],p=a.touches.length;for(let m=0;m<p;m++){let h=a.touches.item(m);if(!h)continue;let{x:y,y:S}=this.runtime.viewerToWorld(h.clientX-this.bounds.left,h.clientY-this.bounds.top),w={id:h.identifier,x:y,y:S};c.push(w)}c.length&&this.assignToEvent(a,c[0].x,c[0].y),l!=="onTouchEnd"?(this.pointerEventState.lastTouches=c,a.atlasTouches=c,this.runtime.world.propagateTouchEvent(l,a,c)):(a.atlasTouches=[],this.runtime.world.propagateTouchEvent(l,a,this.pointerEventState.lastTouches),this.pointerEventState.lastTouches=[])}),P(this,"onPointerEvent",a=>{let l=Fo[a.type];if(l&&this.runtime.world.activatedEvents.indexOf(l)!==-1){let{x:c,y:p}=this.runtime.viewerToWorld(a.clientX-this.bounds.left,a.clientY-this.bounds.top);this.assignToEvent(a,c,p),this.runtime.world.propagatePointerEvent(l,a,c,p)}}),P(this,"onPointerDown",a=>{this.pointerEventState.isPressed=!0,this.pointerEventState.isClicking=!0,this.pointerEventState.mouseDownStart.x=a.clientX,this.pointerEventState.mouseDownStart.y=a.clientY,setTimeout(()=>{this.runtime&&(this.pointerEventState.isClicking=!1)},250),setTimeout(()=>{if(this.runtime&&this.pointerEventState.isPressed&&!this.pointerEventState.isDragging){let l=this.runtime.viewerToWorld(this.pointerEventState.mouseDownStart.x-this.bounds.left,this.pointerEventState.mouseDownStart.y-this.bounds.top);this.pointerEventState.isDragging=!0,this.pointerEventState.itemsBeingDragged=this.runtime.world.propagatePointerEvent("onDragStart",a,l.x,l.y)}},800),this.onPointerEvent(a)}),P(this,"onPointerUp",a=>{if(this.pointerEventState.isClicking){let{x:l,y:c}=this.runtime.viewerToWorld(a.clientX-this.bounds.left,a.clientY-this.bounds.top);this.assignToEvent(a,l,c),this.runtime.world.propagatePointerEvent("onClick",a,l,c)}if(this.pointerEventState.isDragging){for(let l of this.pointerEventState.itemsBeingDragged)l.dispatchEvent("onDragEnd",a);this.pointerEventState.isDragging=!1}this.pointerEventState.isClicking=!1,this.pointerEventState.isPressed=!1,this.pointerEventState.itemsBeingDragged=[],this.onPointerEvent(a)}),P(this,"onPointerMove",a=>{this.pointerMoveEvent=void 0;let{x:l,y:c}=this.runtime.viewerToWorld(a.clientX-this.bounds.left,a.clientY-this.bounds.top);if(Number.isNaN(l)||Number.isNaN(c))return;this.assignToEvent(a,l,c),this.runtime.world.propagatePointerEvent("onPointerMove",a,l,c);let p=this.runtime.world.propagatePointerEvent("onMouseMove",a,l,c),m=[],h=[];for(let y of p)m.push(y.id),h.push(y),this.pointerEventState.mousedOver.indexOf(y)===-1&&(y.dispatchEvent("onMouseEnter",a),y.dispatchEvent("onPointerEnter",a),y.dispatchEvent("onMouseOver",a),y.dispatchEvent("onPointerOver",a));for(let y of this.pointerEventState.mousedOver)m.indexOf(y.id)===-1&&(y.dispatchEvent("onMouseLeave",a),y.dispatchEvent("onPointerLeave",a),y.dispatchEvent("onMouseOut",a),y.dispatchEvent("onPointerOut",a));if(this.pointerEventState.isDragging)for(let y of this.pointerEventState.itemsBeingDragged)y.dispatchEvent("onDrag",a);if(this.pointerEventState.isPressed&&!this.pointerEventState.isDragging&&vu(this.pointerEventState.mouseDownStart,{x:a.clientX,y:a.clientY})>50){let y=this.runtime.viewerToWorld(this.pointerEventState.mouseDownStart.x-this.bounds.left,this.pointerEventState.mouseDownStart.y-this.bounds.top);this.pointerEventState.isDragging=!0,this.pointerEventState.itemsBeingDragged=this.runtime.world.propagatePointerEvent("onDragStart",{...a,atlas:{x:y.x,y:y.y}},y.x,y.y)}this.pointerEventState.mousedOver=h}),this.element=t,this.runtime=i,this.unsubscribe=i.world.addLayoutSubscriber(this.layoutSubscriber.bind(this)),this.bounds=t.getBoundingClientRect(),this.listening=!1,this.options={simulationRate:0,...n||{}};let r=0;i.registerHook("useFrame",a=>{r+=a,r>this.options.simulationRate&&this.pointerMoveEvent&&(r=0,i.updateNextFrame())}),i.registerHook("useBeforeFrame",()=>{this.pointerMoveEvent&&this.onPointerMove(this.pointerMoveEvent)}),this.activateEvents()}updateBounds(){this.bounds=this.element.getBoundingClientRect(),this.runtime.updateRendererScreenPosition()}layoutSubscriber(t){t==="event-activation"&&this.listening==!1&&this.activateEvents()}assignToEvent(t,i,n){yu.eventPool.atlas.x=i,yu.eventPool.atlas.y=n,t.atlas=yu.eventPool.atlas}activateEvents(){this.listening=!0,this.element.addEventListener("pointermove",this._realPointerMove),this.element.addEventListener("pointerup",this.onPointerUp),this.element.addEventListener("pointerdown",this.onPointerDown),this.element.addEventListener("mousedown",this.onPointerEvent),this.element.addEventListener("mouseup",this.onPointerEvent),this.element.addEventListener("pointercancel",this.onPointerEvent),this.element.addEventListener("wheel",this.onWheelEvent),this.element.addEventListener("touchstart",this.onTouchEvent),this.element.addEventListener("touchcancel",this.onTouchEvent),this.element.addEventListener("touchend",this.onTouchEvent),this.element.addEventListener("touchmove",this.onTouchEvent)}normalizeEventName(t){return t.startsWith("on")?t.slice(2).toLowerCase():t.toLowerCase()}stop(){this.listening=!1,this.element.removeEventListener("pointermove",this._realPointerMove),this.element.removeEventListener("pointerup",this.onPointerUp),this.element.removeEventListener("pointerdown",this.onPointerDown),this.element.removeEventListener("mousedown",this.onPointerEvent),this.element.removeEventListener("mouseup",this.onPointerEvent),this.element.removeEventListener("pointercancel",this.onPointerEvent),this.element.removeEventListener("wheel",this.onWheelEvent),this.element.removeEventListener("touchstart",this.onTouchEvent),this.element.removeEventListener("touchcancel",this.onTouchEvent),this.element.removeEventListener("touchend",this.onTouchEvent),this.element.removeEventListener("touchmove",this.onTouchEvent),this.unsubscribe();for(let[t,i]of this.eventHandlers)this.element.removeEventListener(this.normalizeEventName(t),i)}};P(Zx,"eventPool",{atlas:{x:0,y:0}});var Jx=Zx;function e0({interactive:e=!0,viewport:t,forceRefresh:i,canvasElement:n,overlayElement:r,controllerConfig:a,unstable_webglRenderer:l,dpi:c,debug:p,canvasBox:m=!0,polygon:h=!0,navigatorElement:y,runtimeOptions:S}){if(!n)throw new Error("Invalid container");n.style.userSelect="none";let w=e?Wx({minZoomFactor:.5,maxZoomFactor:3,enableClickToZoom:!1,parentElement:n,...a||{}}):void 0,v=new Vx([l?new FP(n,{dpi:c}):new bP(n,{dpi:c,debug:p,box:m,polygon:h}),r?new Kx(r,{box:l||!m,text:!0,triggerResize:i}):void 0,y?new CP(y):void 0]),x=new Eu(v,new Pu(1024,1024),t,w?[w]:[],S),A=new Jx(n,x);return{name:"default-preset",em:A,runtime:x,renderer:v,controller:w,canvas:n,navigator:y,unmount(){Lp(x),x.stopControllers(),x.stop(),x.reset(),A&&A.stop()}}}var lr=1+Number.MIN_VALUE,NP=class{constructor(e,t){P(this,"container"),P(this,"width"),P(this,"height"),P(this,"pending",!0),P(this,"options"),P(this,"stylesheet"),P(this,"zIndex",0),P(this,"lastKnownScale",1),P(this,"rendererPosition"),P(this,"currentlyVisible",[]),P(this,"previouslyVisible",[]),this.container=e,this.rendererPosition=e.getBoundingClientRect();let{width:i,height:n}=this.rendererPosition;this.width=i,this.height=n,this.options={addPart:!1,setDraggableFalse:!1,imageClass:"",widthStylesheet:!1,sheetPrefix:"position-",background:"#000",...t||{}},this.stylesheet=new Xx({sheetPrefix:this.options.sheetPrefix}),this.container.classList.add(this.stylesheet.addStylesheet(`
|
|
50
50
|
background: ${this.options.background};
|
|
51
|
-
`)),this.options.widthStylesheet&&this.container.appendChild(this.stylesheet.getElement())}isReady(){return!0}resize(){this.rendererPosition=this.container.getBoundingClientRect(),this.width=this.rendererPosition.width,this.height=this.rendererPosition.height}getRendererScreenPosition(){return this.rendererPosition}afterFrame(e,t,i){this.stylesheet.updateSheet();for(let n of this.previouslyVisible)this.currentlyVisible.indexOf(n)===-1&&this.container.removeChild(n);for(let n of this.currentlyVisible)this.previouslyVisible.indexOf(n)===-1&&this.container.appendChild(n);this.previouslyVisible=this.currentlyVisible,this.currentlyVisible=[]}afterPaintLayer(e,t){}beforeFrame(e,t,i){this.stylesheet.clearClasses(),this.zIndex=0}getPointsAt(e,t,i,n){return e.getPointsAt(t,i,n)}getScale(e,t){if(Number.isNaN(e)||Number.isNaN(t))return this.lastKnownScale;let i=this.width/e,n=this.height/t,r=i<n?n:i;return Number.isNaN(r)||(this.lastKnownScale=r),this.lastKnownScale}getViewportBounds(e,t,i){return null}createImage(){let e=document.createElement("img");return this.options.imageClass?(e.className=this.options.imageClass,this.options.addPart&&e.setAttribute("part",this.options.imageClass)):(e.style.position="absolute",e.style.pointerEvents="none",e.style.userSelect="none"),this.options.setDraggableFalse&&e.setAttribute("draggable","false"),e}paint(e,t,i,n,r,a){if(this.pending=!1,this.zIndex++,e instanceof cr){if(!e.__host){let c=this.createImage();c.src=e.uri,e.__host=c,this.container.appendChild(e.__host)}let l=e.__host;this.currentlyVisible.push(l),l.style.zIndex=`${this.zIndex}`,l.style.opacity=`${e.style.opacity}`,this.options.widthStylesheet?l.className=this.options.imageClass+" "+this.stylesheet.addStylesheet(`width:${(r+lr).toFixed(2)}px;height:${(a+lr).toFixed(2)}px;`):(l.style.width=`${r+lr}px`,l.style.height=`${a+lr}px`),l.style.transform=`translate(${i}px, ${n}px)`}if(e instanceof Xs){if(e.__host||(e.__host={images:[]}),!e.__host.images[t]){let c=e.getImageUrl(t),p=this.createImage();p.src=c,e.__host.images[t]=p,this.container.appendChild(p)}let l=e.__host.images[t];l.style.zIndex=`${this.zIndex}`,l.style.opacity=`${e.style.opacity}`,this.currentlyVisible.push(l),this.options.widthStylesheet?l.className=this.options.imageClass+" "+this.stylesheet.addStylesheet(`width:${(r+lr).toFixed(2)}px;height:${(a+lr).toFixed(2)}px;`):(l.style.width=`${r+lr}px`,l.style.height=`${a+lr}px`),l.style.transform=`translate(${i}px, ${n}px)`}}pendingUpdate(){return this.pending}prepareLayer(e){}finishLayer(e){}reset(){}};function BP({interactive:e,viewport:t,forceRefresh:i,containerElement:n,overlayElement:r,controllerConfig:a}){if(!n)throw new Error("Invalid container");n.style.userSelect="none";let l=e?Hx({minZoomFactor:.5,maxZoomFactor:3,enableClickToZoom:!1,parentElement:n,...a||{}}):void 0,c=new NP(n,{addPart:!1,setDraggableFalse:!1,imageClass:"atlas-static-image"}),p=r?new Ux([c,new Zx(r,{box:!0,text:!0,triggerResize:i})]):c,m=new Eu(p,new Pu(1024,1024),t,l?[l]:[]),h=new e0(n,m);return{name:"static-preset",em:h,runtime:m,renderer:p,controller:l,container:n,overlay:r,unmount(){zp(m),m.stopControllers(),m.stop(),h&&h.stop()}}}var DP={"default-preset":t0,"static-preset":BP},jP={};function VP(e,t){let i=(0,Di.useRef)(),n=(0,Di.useRef)(),r=(0,Di.useRef)(),a=(0,Di.useRef)(),l=(0,Di.useRef)({width:t.width,height:t.height,didUpdate:!0}),[c="default-preset",p=jP]=Array.isArray(e)?e||[]:[e],[m,h]=(0,Di.useState)(null);(0,Di.useLayoutEffect)(()=>{let S=n.current,w=a.current,v=i.current,x=r.current,A=(DP[c]||t0)({containerElement:w,canvasElement:S,overlayElement:v,navigatorElement:x,viewport:l.current,dpi:window.devicePixelRatio||1,forceRefresh:t.forceRefresh,unstable_webglRenderer:t.unstable_webglRenderer,...p||{}});return h(A),()=>{A&&(A.unmount(),S&&(S.height=0,S.width=0),v&&(v.innerHTML=""),x&&(x.height=0,x.width=0))}},[c,p]);let y=(0,Di.useMemo)(()=>({canvas:n,overlay:i,container:a,navigator:r}),[]);return[c,m,l,y]}function UP(e){return(0,i0.useMemo)(()=>Tp(e),e)}var qs=n0.default.forwardRef((e,t)=>(0,r0.jsx)("div",{...e,ref:t,part:e.className})),zx=["brightness","contrast","grayscale","hueRotate","invert","saturate","sepia","blur"],WP=({htmlChildren:e,renderPreset:t,onCreated:i,mode:n="explore",resetWorldOnChange:r=!0,unstable_webglRenderer:a=!1,unstable_noReconciler:l=!1,hideInlineStyle:c=!1,controllerConfig:p,children:m,overlayStyle:h,containerStyle:y,enableNavigator:S,className:w,containerProps:v={},homePosition:x,homeOnResize:A,homeCover:C,background:I,runtimeOptions:E,debug:L,filters:z,...M})=>{let[Q,V]=(0,dt.useState)(n),[J,U]=(0,dt.useState)(!1),W=(0,dt.useRef)(!1),ee=(0,dt.useMemo)(()=>(typeof t=="string"&&(t=[t,{}]),L?t?[t[0],{debug:L,...t[1]||{}}]:["default-preset",{debug:L}]:t||"default-preset"),[t,L]),[Me,pe,Re]=Hl({scroll:!0}),ke=(0,dt.useRef)(),He=ne=>{ke.current=ne,Me(ne)},[qe,$,ve,it]=VP(ee,{width:M.width,height:M.height,forceRefresh:Re,unstable_webglRenderer:a}),[Qe,$e]=(0,dt.useState)("");(0,dt.useEffect)(()=>{V(n)},[n]),(0,dt.useEffect)(()=>{$&&$.em&&$.em.updateBounds()},[$,pe]),(0,dt.useEffect)(()=>{$?.runtime.setOptions(E||{})},[E]),(0,dt.useEffect)(()=>{$&&$.runtime&&($.runtime.mode=Q),J&&$&&($.ready=!0)},[$,J,Q]),(0,dt.useEffect)(()=>{$&&(C||($.runtime.manualHomePosition=!!x,$.runtime.setHomePosition(x)))},[$,C,x]),(0,dt.useEffect)(()=>{if($){let ne=$.runtime;ne.resize(ve.current.width,M.width,ve.current.height,M.height),ve.current.width=M.width,ve.current.height=M.height,ne.updateNextFrame(),ve.current.didUpdate=!0}},[$,M.width,M.height]),(0,dt.useEffect)(()=>{if(z&&$){let ne=$.runtime,he=!1;ne.hookOptions.enableFilters=!0;for(let Oe of zx)z[Oe]?z[Oe]!==$.runtime.hookOptions.filters[Oe]&&(ne.hookOptions.filters[Oe]=z[Oe],he=!0):ne.hookOptions.filters[Oe]&&(ne.hookOptions.filters[Oe]=0,he=!0);he&&ne.updateNextFrame()}else if($){let ne=$.runtime;for(let he of zx)ne.hookOptions.filters[he]=0;ne.hookOptions.enableFilters=!1,ne.updateNextFrame()}},[$,z]),Ys(()=>{if($&&($.overlay&&($.overlay.style.width=`${pe.width}px`,$.overlay.style.height=`${pe.height}px`),$.container&&($.container.style.width=`${pe.width}px`,$.container.style.height=`${pe.height}px`),C)){let ne=$.runtime.world.width,he=$.runtime.world.height,Oe=ne/he,ot=ve.current.width,Ri=ve.current.height,Dt=ot/Ri;if(Oe>Dt){Dt=Ri/ot,$.runtime.manualHomePosition=!0;let Wt=(ne-he/Dt)/2;C==="start"&&(Wt=0),C==="end"&&(Wt=ne-he/Dt),$.runtime.setHomePosition({x:Wt,y:0,width:he/Dt,height:he})}else{let Wt=(he-ne/Dt)/2;C==="start"&&(Wt=0),C==="end"&&(Wt=he-ne/Dt),$.runtime.manualHomePosition=!0,$.runtime.setHomePosition({x:0,y:Wt,width:ne,height:ne/Dt})}A&&$.runtime.goHome({})}},[$,pe.height,pe.width,C]),Ys(()=>{let ne=()=>{if($){let he=$.runtime;ve.current.width!==M.width&&ve.current.height!==M.height&&(he.resize(ve.current.width,M.width,ve.current.height,M.height),ve.current.width=M.width,ve.current.height=M.height,he.updateNextFrame(),ve.current.didUpdate=!0)}};return window.addEventListener("resize",ne),()=>window.removeEventListener("resize",ne)},[$,M.height,M.width]);let N={width:120},G=()=>{if($&&$.navigator){let ne=$.runtime.world.height,he=$.runtime.world.width,Oe=window.devicePixelRatio||1,ot=N.width,Ri=N.width/he*ne;$.navigator.width=ot*Oe,$.navigator.height=Ri*Oe,$.navigator.style.width=ot+"px",$.navigator.style.height=Ri+"px"}};Ys(()=>{if($){G();let ne=$.runtime;return ne.world.addLayoutSubscriber(he=>{he==="recalculate-world-size"&&(G(),ne.resize(ve.current.width,M.width,ve.current.height,M.height))})}return()=>{}},[$,M.width,M.height]);let de=(0,dt.useCallback)(function(ne){let he=()=>{U(!0)};return(0,dt.useEffect)(()=>{if($){$.runtime.goHome();let Oe=i&&i($);return void(Oe&&Oe.then?Oe.then(he):he())}else throw new Error("Invalid configuration - no runtime found")},[]),ne.children},[$]);(0,dt.useEffect)(()=>{if($){let ne=$.runtime;if(r)return ne.world.addLayoutSubscriber(he=>{he==="recalculate-world-size"&&ne.goHome()})}return()=>{}},[$,r]),(0,dt.useEffect)(()=>$?$.runtime.registerHook("useBeforeFrame",()=>{if(ve.current.didUpdate&&$.canvas){let ne=window.devicePixelRatio||1,he=ve.current.width,Oe=ve.current.height;$.canvas.width=he*ne,$.canvas.height=Oe*ne,$.canvas.style.width=he+"px",$.canvas.style.height=Oe+"px",$.canvas.getContext("2d")?.scale(ne,ne),$&&$.em&&$.em.updateBounds(),ve.current.didUpdate=!1}}):()=>{},[$,r]),(0,dt.useEffect)(()=>{let ne=()=>{$&&(V("sketch"),$e("mode-sketch")),window.removeEventListener("keyup",ne)},he=Oe=>{if(Oe.code==="Space"&&$&&$.runtime.mode==="sketch"){if(Oe.target&&Oe.target.tagName&&Oe.target.tagName.toLowerCase()==="input")return;Oe.preventDefault(),V("explore"),$e("mode-explore"),window.addEventListener("keyup",ne)}};return window.addEventListener("keydown",he),()=>{window.removeEventListener("keydown",he),window.removeEventListener("keyup",ne)}},[$]),W.current=!0;let{height:ye,width:ge,...Ve}=M,ze=UP([M.width,M.height]),Pe=!0;return ee&&Array.isArray(ee)&&ee.length>1&&ee[1].interactive===!1&&(Pe=!1),I=I??"#000",ke.current&&(I=getComputedStyle(ke.current).getPropertyValue("--atlas-background")||I),(0,Jt.jsxs)(qs,{ref:He,className:["atlas",c?"":`atlas-width-${ze}`,Qe,w,`atlas-${qe}`].filter(Boolean).join(" ").trim(),style:{...y,...c?{}:{width:M.width,height:M.height}},children:[qe==="static-preset"?(0,Jt.jsx)(qs,{className:"atlas-static-container",ref:it.container,tabIndex:0,...v}):(0,Jt.jsx)("canvas",{className:"atlas-canvas",part:"atlas-canvas",tabIndex:0,...Ve,...v,ref:it.canvas,"data-background":I}),(0,Jt.jsx)(qs,{className:["atlas-overlay",Pe?"atlas-overlay--interactive":""].filter(Boolean).join(" ").trim(),style:{...h||{}},ref:it.overlay,children:l?(0,Jt.jsx)(de,{children:(0,Jt.jsx)(Ru.Provider,{value:pe,children:(0,Jt.jsx)(Fo.Provider,{value:Q,children:(0,Jt.jsx)(Iu.Provider,{value:$,children:m})})})}):(0,Jt.jsx)(zP,{bounds:pe,preset:$,mode:Q,setIsReady:U,onCreated:i,children:m})}),S?(0,Jt.jsx)(qs,{className:"atlas-navigator",children:(0,Jt.jsx)("canvas",{className:"atlas-navigator-canvas",part:"atlas-navigator-canvas",ref:it.navigator})}):null,c?(0,Jt.jsx)("style",{children:`.atlas-width-${ze} { width: ${M.width}px; height: ${M.height}px; }`}):(0,Jt.jsx)("style",{children:`
|
|
51
|
+
`)),this.options.widthStylesheet&&this.container.appendChild(this.stylesheet.getElement())}isReady(){return!0}resize(){this.rendererPosition=this.container.getBoundingClientRect(),this.width=this.rendererPosition.width,this.height=this.rendererPosition.height}getRendererScreenPosition(){return this.rendererPosition}afterFrame(e,t,i){this.stylesheet.updateSheet();for(let n of this.previouslyVisible)this.currentlyVisible.indexOf(n)===-1&&this.container.removeChild(n);for(let n of this.currentlyVisible)this.previouslyVisible.indexOf(n)===-1&&this.container.appendChild(n);this.previouslyVisible=this.currentlyVisible,this.currentlyVisible=[]}afterPaintLayer(e,t){}beforeFrame(e,t,i){this.stylesheet.clearClasses(),this.zIndex=0}getPointsAt(e,t,i,n){return e.getPointsAt(t,i,n)}getScale(e,t){if(Number.isNaN(e)||Number.isNaN(t))return this.lastKnownScale;let i=this.width/e,n=this.height/t,r=i<n?n:i;return Number.isNaN(r)||(this.lastKnownScale=r),this.lastKnownScale}getViewportBounds(e,t,i){return null}createImage(){let e=document.createElement("img");return this.options.imageClass?(e.className=this.options.imageClass,this.options.addPart&&e.setAttribute("part",this.options.imageClass)):(e.style.position="absolute",e.style.pointerEvents="none",e.style.userSelect="none"),this.options.setDraggableFalse&&e.setAttribute("draggable","false"),e}paint(e,t,i,n,r,a){if(this.pending=!1,this.zIndex++,e instanceof cr){if(!e.__host){let c=this.createImage();c.src=e.uri,e.__host=c,this.container.appendChild(e.__host)}let l=e.__host;this.currentlyVisible.push(l),l.style.zIndex=`${this.zIndex}`,l.style.opacity=`${e.style.opacity}`,this.options.widthStylesheet?l.className=this.options.imageClass+" "+this.stylesheet.addStylesheet(`width:${(r+lr).toFixed(2)}px;height:${(a+lr).toFixed(2)}px;`):(l.style.width=`${r+lr}px`,l.style.height=`${a+lr}px`),l.style.transform=`translate(${i}px, ${n}px)`}if(e instanceof Ks){if(e.__host||(e.__host={images:[]}),!e.__host.images[t]){let c=e.getImageUrl(t),p=this.createImage();p.src=c,e.__host.images[t]=p,this.container.appendChild(p)}let l=e.__host.images[t];l.style.zIndex=`${this.zIndex}`,l.style.opacity=`${e.style.opacity}`,this.currentlyVisible.push(l),this.options.widthStylesheet?l.className=this.options.imageClass+" "+this.stylesheet.addStylesheet(`width:${(r+lr).toFixed(2)}px;height:${(a+lr).toFixed(2)}px;`):(l.style.width=`${r+lr}px`,l.style.height=`${a+lr}px`),l.style.transform=`translate(${i}px, ${n}px)`}}pendingUpdate(){return this.pending}prepareLayer(e){}finishLayer(e){}reset(){}};function BP({interactive:e,viewport:t,forceRefresh:i,containerElement:n,overlayElement:r,controllerConfig:a}){if(!n)throw new Error("Invalid container");n.style.userSelect="none";let l=e?Wx({minZoomFactor:.5,maxZoomFactor:3,enableClickToZoom:!1,parentElement:n,...a||{}}):void 0,c=new NP(n,{addPart:!1,setDraggableFalse:!1,imageClass:"atlas-static-image"}),p=r?new Vx([c,new Kx(r,{box:!0,text:!0,triggerResize:i})]):c,m=new Eu(p,new Pu(1024,1024),t,l?[l]:[]),h=new Jx(n,m);return{name:"static-preset",em:h,runtime:m,renderer:p,controller:l,container:n,overlay:r,unmount(){Lp(m),m.stopControllers(),m.stop(),h&&h.stop()}}}var DP={"default-preset":e0,"static-preset":BP},jP={};function VP(e,t){let i=(0,Di.useRef)(),n=(0,Di.useRef)(),r=(0,Di.useRef)(),a=(0,Di.useRef)(),l=(0,Di.useRef)({width:t.width,height:t.height,didUpdate:!0}),[c="default-preset",p=jP]=Array.isArray(e)?e||[]:[e],[m,h]=(0,Di.useState)(null);(0,Di.useLayoutEffect)(()=>{let S=n.current,w=a.current,v=i.current,x=r.current,A=(DP[c]||e0)({containerElement:w,canvasElement:S,overlayElement:v,navigatorElement:x,viewport:l.current,dpi:window.devicePixelRatio||1,forceRefresh:t.forceRefresh,unstable_webglRenderer:t.unstable_webglRenderer,...p||{}});return h(A),()=>{A&&(A.unmount(),S&&(S.height=0,S.width=0),v&&(v.innerHTML=""),x&&(x.height=0,x.width=0))}},[c,p]);let y=(0,Di.useMemo)(()=>({canvas:n,overlay:i,container:a,navigator:r}),[]);return[c,m,l,y]}function UP(e){return(0,t0.useMemo)(()=>Tp(e),e)}var Qs=i0.default.forwardRef((e,t)=>(0,n0.jsx)("div",{...e,ref:t,part:e.className})),Lx=["brightness","contrast","grayscale","hueRotate","invert","saturate","sepia","blur"],WP=({htmlChildren:e,renderPreset:t,onCreated:i,mode:n="explore",resetWorldOnChange:r=!0,unstable_webglRenderer:a=!1,unstable_noReconciler:l=!1,hideInlineStyle:c=!1,controllerConfig:p,children:m,overlayStyle:h,containerStyle:y,enableNavigator:S,className:w,containerProps:v={},homePosition:x,homeOnResize:A,homeCover:C,background:I,runtimeOptions:E,debug:O,filters:L,...M})=>{let[Q,V]=(0,dt.useState)(n),[J,U]=(0,dt.useState)(!1),q=(0,dt.useRef)(!1),ee=(0,dt.useMemo)(()=>(typeof t=="string"&&(t=[t,{}]),O?t?[t[0],{debug:O,...t[1]||{}}]:["default-preset",{debug:O}]:t||"default-preset"),[t,O]),[Me,pe,Te]=Hl({scroll:!0}),ke=(0,dt.useRef)(),He=ne=>{ke.current=ne,Me(ne)},[qe,$,ve,it]=VP(ee,{width:M.width,height:M.height,forceRefresh:Te,unstable_webglRenderer:a}),[Qe,$e]=(0,dt.useState)("");(0,dt.useEffect)(()=>{V(n)},[n]),(0,dt.useEffect)(()=>{$&&$.em&&$.em.updateBounds()},[$,pe]),(0,dt.useEffect)(()=>{$?.runtime.setOptions(E||{})},[E]),(0,dt.useEffect)(()=>{$&&$.runtime&&($.runtime.mode=Q),J&&$&&($.ready=!0)},[$,J,Q]),(0,dt.useEffect)(()=>{$&&(C||($.runtime.manualHomePosition=!!x,$.runtime.setHomePosition(x)))},[$,C,x]),(0,dt.useEffect)(()=>{if($){let ne=$.runtime;ne.resize(ve.current.width,M.width,ve.current.height,M.height),ve.current.width=M.width,ve.current.height=M.height,ne.updateNextFrame(),ve.current.didUpdate=!0}},[$,M.width,M.height]),(0,dt.useEffect)(()=>{if(L&&$){let ne=$.runtime,he=!1;ne.hookOptions.enableFilters=!0;for(let Oe of Lx)L[Oe]?L[Oe]!==$.runtime.hookOptions.filters[Oe]&&(ne.hookOptions.filters[Oe]=L[Oe],he=!0):ne.hookOptions.filters[Oe]&&(ne.hookOptions.filters[Oe]=0,he=!0);he&&ne.updateNextFrame()}else if($){let ne=$.runtime;for(let he of Lx)ne.hookOptions.filters[he]=0;ne.hookOptions.enableFilters=!1,ne.updateNextFrame()}},[$,L]),Xs(()=>{if($&&($.overlay&&($.overlay.style.width=`${pe.width}px`,$.overlay.style.height=`${pe.height}px`),$.container&&($.container.style.width=`${pe.width}px`,$.container.style.height=`${pe.height}px`),C)){let ne=$.runtime.world.width,he=$.runtime.world.height,Oe=ne/he,ot=ve.current.width,Ti=ve.current.height,Dt=ot/Ti;if(Oe>Dt){Dt=Ti/ot,$.runtime.manualHomePosition=!0;let Wt=(ne-he/Dt)/2;C==="start"&&(Wt=0),C==="end"&&(Wt=ne-he/Dt),$.runtime.setHomePosition({x:Wt,y:0,width:he/Dt,height:he})}else{let Wt=(he-ne/Dt)/2;C==="start"&&(Wt=0),C==="end"&&(Wt=he-ne/Dt),$.runtime.manualHomePosition=!0,$.runtime.setHomePosition({x:0,y:Wt,width:ne,height:ne/Dt})}A&&$.runtime.goHome({})}},[$,pe.height,pe.width,C]),Xs(()=>{let ne=()=>{if($){let he=$.runtime;ve.current.width!==M.width&&ve.current.height!==M.height&&(he.resize(ve.current.width,M.width,ve.current.height,M.height),ve.current.width=M.width,ve.current.height=M.height,he.updateNextFrame(),ve.current.didUpdate=!0)}};return window.addEventListener("resize",ne),()=>window.removeEventListener("resize",ne)},[$,M.height,M.width]);let N={width:120},G=()=>{if($&&$.navigator){let ne=$.runtime.world.height,he=$.runtime.world.width,Oe=window.devicePixelRatio||1,ot=N.width,Ti=N.width/he*ne;$.navigator.width=ot*Oe,$.navigator.height=Ti*Oe,$.navigator.style.width=ot+"px",$.navigator.style.height=Ti+"px"}};Xs(()=>{if($){G();let ne=$.runtime;return ne.world.addLayoutSubscriber(he=>{he==="recalculate-world-size"&&(G(),ne.resize(ve.current.width,M.width,ve.current.height,M.height))})}return()=>{}},[$,M.width,M.height]);let de=(0,dt.useCallback)(function(ne){let he=()=>{U(!0)};return(0,dt.useEffect)(()=>{if($){$.runtime.goHome();let Oe=i&&i($);return void(Oe&&Oe.then?Oe.then(he):he())}else throw new Error("Invalid configuration - no runtime found")},[]),ne.children},[$]);(0,dt.useEffect)(()=>{if($){let ne=$.runtime;if(r)return ne.world.addLayoutSubscriber(he=>{he==="recalculate-world-size"&&ne.goHome()})}return()=>{}},[$,r]),(0,dt.useEffect)(()=>$?$.runtime.registerHook("useBeforeFrame",()=>{if(ve.current.didUpdate&&$.canvas){let ne=window.devicePixelRatio||1,he=ve.current.width,Oe=ve.current.height;$.canvas.width=he*ne,$.canvas.height=Oe*ne,$.canvas.style.width=he+"px",$.canvas.style.height=Oe+"px",$.canvas.getContext("2d")?.scale(ne,ne),$&&$.em&&$.em.updateBounds(),ve.current.didUpdate=!1}}):()=>{},[$,r]),(0,dt.useEffect)(()=>{let ne=()=>{$&&(V("sketch"),$e("mode-sketch")),window.removeEventListener("keyup",ne)},he=Oe=>{if(Oe.code==="Space"&&$&&$.runtime.mode==="sketch"){if(Oe.target&&Oe.target.tagName&&Oe.target.tagName.toLowerCase()==="input")return;Oe.preventDefault(),V("explore"),$e("mode-explore"),window.addEventListener("keyup",ne)}};return window.addEventListener("keydown",he),()=>{window.removeEventListener("keydown",he),window.removeEventListener("keyup",ne)}},[$]),q.current=!0;let{height:ye,width:ge,...Ve}=M,ze=UP([M.width,M.height]),Pe=!0;return ee&&Array.isArray(ee)&&ee.length>1&&ee[1].interactive===!1&&(Pe=!1),I=I??"#000",ke.current&&(I=getComputedStyle(ke.current).getPropertyValue("--atlas-background")||I),(0,Jt.jsxs)(Qs,{ref:He,className:["atlas",c?"":`atlas-width-${ze}`,Qe,w,`atlas-${qe}`].filter(Boolean).join(" ").trim(),style:{...y,...c?{}:{width:M.width,height:M.height}},children:[qe==="static-preset"?(0,Jt.jsx)(Qs,{className:"atlas-static-container",ref:it.container,tabIndex:0,...v}):(0,Jt.jsx)("canvas",{className:"atlas-canvas",part:"atlas-canvas",tabIndex:0,...Ve,...v,ref:it.canvas,"data-background":I}),(0,Jt.jsx)(Qs,{className:["atlas-overlay",Pe?"atlas-overlay--interactive":""].filter(Boolean).join(" ").trim(),style:{...h||{}},ref:it.overlay,children:l?(0,Jt.jsx)(de,{children:(0,Jt.jsx)(Tu.Provider,{value:pe,children:(0,Jt.jsx)(No.Provider,{value:Q,children:(0,Jt.jsx)(Iu.Provider,{value:$,children:m})})})}):(0,Jt.jsx)(zP,{bounds:pe,preset:$,mode:Q,setIsReady:U,onCreated:i,children:m})}),S?(0,Jt.jsx)(Qs,{className:"atlas-navigator",children:(0,Jt.jsx)("canvas",{className:"atlas-navigator-canvas",part:"atlas-navigator-canvas",ref:it.navigator})}):null,c?(0,Jt.jsx)("style",{children:`.atlas-width-${ze} { width: ${M.width}px; height: ${M.height}px; }`}):(0,Jt.jsx)("style",{children:`
|
|
52
52
|
.atlas { position: relative; display: flex; background: ${I}; z-index: var(--atlas-z-index, 10); -webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
|
|
53
53
|
.atlas-width-${ze} { width: ${M.width}px; height: ${M.height}px; }
|
|
54
54
|
.atlas-canvas { flex: 1 1 0px; }
|
|
@@ -62,22 +62,22 @@ No matching component was found for:
|
|
|
62
62
|
.atlas-static-image { position: absolute; user-select: none; transform-origin: 0px 0px; }
|
|
63
63
|
.atlas-navigator { position: absolute; top: var(--atlas-navigator-top, 10px); right: var(--atlas-navigator-bottom, 10px); left: var(--atlas-navigator-left); bottom: var(--atlas-navigator-bottom); opacity: .8 }
|
|
64
64
|
.atlas-navigator-canvas { width: 100%; }
|
|
65
|
-
`}),e]})};function HP(e){return Number(e)==e?`${e}px`:e}var
|
|
65
|
+
`}),e]})};function HP(e){return Number(e)==e?`${e}px`:e}var r0=({resizeHash:e,aspectRatio:t,containerProps:i={},...n})=>{let[r,a,l]=Hl(),{height:c,width:p,...m}=n;(0,_u.useEffect)(()=>{l()},[p,c,e,l]);let h=(0,_u.useMemo)(()=>t?{width:a.width,height:a.width*(1/t)}:a,[a,t]);return(0,Zs.jsxs)(Qs,{ref:r,className:"atlas-container",...i,children:[h.width?(0,Zs.jsx)(WP,{width:h.width||100,height:h.height||100,...m,children:n.children}):null,n.hideInlineStyle?null:(0,Zs.jsx)("style",{children:`
|
|
66
66
|
.atlas-container {
|
|
67
67
|
display: var(--atlas-container-display, block);
|
|
68
68
|
flex: var(--atlas-container-flex, none);
|
|
69
69
|
width: var(--atlas-container-width, ${p?`${p}px`:"100%"});
|
|
70
70
|
height: var(--atlas-container-height, ${HP(c||(t?h.height:512))})
|
|
71
71
|
}
|
|
72
|
-
`}),n.htmlChildren]})},Mu=()=>(0,s0.useContext)(Iu),ku=()=>{let e=Mu();return e?e.runtime:void 0};var l0=(e,t=[])=>{let i=ku();(0,a0.useEffect)(()=>i?i.registerHook("useFrame",e):()=>{},t)},Ou=()=>{let e=Mu();return e&&e.canvas?e.canvas:void 0};function QP(){return(0,u0.useContext)(Ru)}async function $P(e,t,i){if(c0.version.startsWith("18.")){let n=await Promise.resolve().then(()=>R(bx(),1)),r=n.default?n.default.createRoot:n.createRoot;i.current||(i.current=r(e)),i.current.render(t)}else if(typeof ReactDOM<"u"){let{render:n,unmountComponentAtNode:r}=ReactDOM;n(t,e),i.current={unmount(){r(e)}}}else{let n=await Promise.resolve().then(()=>R(Ws(),1)),r=n.default?n.default.render:n.render,a=n.default?n.default.unmountComponentAtNode:n.unmountComponentAtNode;r(t,e),i.current={unmount(){a(e)}}}}var Cn=Sn.default.forwardRef(({children:e,...t},i)=>{let n=(0,Sn.useRef)(),r=ku(),a=(0,Sn.useRef)(0),l=(0,Sn.useRef)(),c=(0,Sn.useRef)();return l0(()=>{if(t.relative){let p=n.current;if(p&&r){let m=r.getScaleFactor();a.current!==m&&(a.current=m,p.style.transformOrigin="0 0",p.style.transform=`scale(${1/a.current})`,p.style.width=`${a.current*100}%`,p.style.height=`${a.current*100}%`,n.current&&l.current?.__owner.value?.rotation&&(p.style.transform=`scale(${1/a.current}) translate(50%, 50%) rotate(${l.current?.__owner.value?.rotation||0}deg) translate(-50%, -50%)`))}}},[t.relative]),(0,Sn.useLayoutEffect)(()=>{let p=l.current;i&&p&&(typeof i=="function"?i(p):i.current=p);async function m(){if(p&&p.__host){let h=t.relative?(0,_p.jsx)("div",{ref:n,children:e}):e;await $P(p.__host.element,h,c)}}p&&p.__host?m():p&&(p.__onCreate=m)},[i,e,l,t.relative]),(0,Sn.useLayoutEffect)(()=>()=>{c.current&&setTimeout(()=>{c.current.unmount()},0)},[]),(0,_p.jsx)("box",{html:!0,...t,ref:l})});Cn.displayName="HTMLPortal";var Fx=(e,t,i=[])=>{let n=ku(),r=n?n.world:void 0;(0,h0.useEffect)(()=>{if(n){let a=t,l=zo[e];n.world.activatedEvents.push(l);let c=l.slice(2).toLowerCase();return n.world.addEventListener(c,a),()=>{n.world.removeEventListener(c,a)}}return()=>{}},[r,e,...i])};function Nx(e,t){if(e===0)return[0,1];if(t===0)return[1,0];let i=Math.abs(e)/Math.abs(t);return[i,1-i]}function GP(){let e=(0,Lu.useRef)({ctrl:!1,shift:!1,alt:!1});return(0,Lu.useLayoutEffect)(()=>{function t(n){n.key==="Shift"&&(e.current.shift=!0),n.key==="Control"&&(e.current.ctrl=!0),n.key==="Alt"&&(e.current.alt=!0)}function i(n){n.key==="Shift"&&(e.current.shift=!1),n.key==="Control"&&(e.current.ctrl=!1),n.key==="Alt"&&(e.current.alt=!1)}return window.addEventListener("keydown",t),window.addEventListener("keyup",i),()=>{window.removeEventListener("keydown",t),window.removeEventListener("keyup",i)}},[]),e}var YP=(e,t)=>{let i=RP(),n=ku(),r=QP(),a=(0,_t.useRef)(),l=(0,_t.useRef)(null),c=(0,_t.useRef)(),[p,m]=(0,_t.useState)(!1),h=(0,_t.useRef)(!1),y=(0,_t.useRef)({north:0,south:0,east:0,west:0}),S=GP(),w=(0,_t.useCallback)(I=>E=>{if(h.current=!0,m(!0),r&&n){let{top:L,left:z}=r,M=n.viewerToWorld(E.pageX-z,E.pageY-L);c.current={x:M.x,y:M.y},a.current=I}},[r,n]),v=(0,_t.useMemo)(()=>e.width/e.height,[e.width,e.height]),x=(0,_t.useCallback)(I=>{if(!Math.abs(I.north-I.south+(I.east-I.west)))return;let E=-I.west+I.east,L=-I.north+I.south,z=e.width+E,M=e.height+L;if(z/M>=v){let Q=M*v,V=z-Q,[J,U]=Nx(I.east,I.west);I.west=I.west+V*U,I.east=I.east-V*J}else{let Q=z/v,V=M-Q,[J,U]=Nx(I.north,I.south);I.north=I.north+V*J,I.south=I.south-V*U}},[e.width,e.height,v]);l0(()=>{c&&n&&n.updateNextFrame()}),(0,_t.useEffect)(()=>{n&&n.updateNextFrame()},[n,p]);let A=(0,_t.useCallback)(I=>{if(!n||!r||n.mode!=="sketch")return;let{top:E,left:L}=r,z=n.viewerToWorld(I.pageX-L,I.pageY-E),M=l.current,Q=!e.maintainAspectRatio&&S.current.alt,V=!Q&&S.current.shift&&a.current?.indexOf("-")!==-1;if((a.current==="translate"||a.current==="east"||a.current==="north-east"||a.current==="south-east")&&(y.current.east=z.x-(c.current?c.current.x:0),Q&&(y.current.west=-y.current.east)),(a.current==="translate"||a.current==="west"||a.current==="north-west"||a.current==="south-west")&&(y.current.west=z.x-(c.current?c.current.x:0),Q&&(y.current.east=-y.current.west)),(a.current==="translate"||a.current==="north"||a.current==="north-east"||a.current==="north-west")&&(y.current.north=z.y-(c.current?c.current.y:0),Q&&(y.current.south=-y.current.north)),(a.current==="translate"||a.current==="south"||a.current==="south-west"||a.current==="south-east")&&(y.current.south=z.y-(c.current?c.current.y:0),Q&&(y.current.north=-y.current.south)),(e.maintainAspectRatio||V)&&x(y.current),M){let J=y.current.west,U=y.current.north,W=e.width+y.current.east,ee=e.height+y.current.south;M.points[1]=Math.min(J,W),M.points[2]=Math.min(U,ee),M.points[3]=Math.max(J,W),M.points[4]=Math.max(U,ee),n.updateNextFrame()}},[n,e.width,e.height,e.maintainAspectRatio,r]);Fx("mousemove",A,[e.width,e.height,r]),Fx("pointermove",A,[e.width,e.height,r]);let C=(0,_t.useRef)();return(0,_t.useEffect)(()=>{C.current=()=>{if(h.current){let I=y.current.west,E=y.current.north,L=e.width+y.current.east,z=e.height+y.current.south,M=Math.min(I,L),Q=Math.min(E,z),V=Math.max(I,L),J=Math.max(E,z),U={x:(e.x||0)+M,y:(e.y||0)+Q,width:V-M||1,height:J-Q||1};e.maintainAspectRatio,t(U),a.current=void 0,c.current=void 0,y.current.east=0,y.current.west=0,y.current.north=0,y.current.south=0,h.current=!1,m(!1)}}},[t,e.height,e.width,e.x,e.y]),(0,_t.useEffect)(()=>{let I=()=>{C.current&&C.current()};return window.addEventListener("pointerup",I),window.addEventListener("touchend",I),()=>{window.removeEventListener("pointerup",I),window.removeEventListener("touchend",I)}},[]),{portalRef:l,mode:i,mouseEvent:w,onPointerMoveCallback:A,isEditing:p}};function XP({handleSize:e,resizable:t,onSave:i,children:n,maintainAspectRatio:r,disableCardinalControls:a,...l}){let c=typeof e>"u"?r?10:8:e,{portalRef:p,mode:m,mouseEvent:h,isEditing:y}=YP({x:l.x||0,y:l.y||0,width:l.width,height:l.height,maintainAspectRatio:r},i),S=(0,xn.useMemo)(()=>h("translate"),[h]),w=(0,xn.useMemo)(()=>h("east"),[h]),v=(0,xn.useMemo)(()=>h("west"),[h]),x=(0,xn.useMemo)(()=>h("south"),[h]),A=(0,xn.useMemo)(()=>h("north"),[h]),C=(0,xn.useMemo)(()=>h("south-east"),[h]),I=(0,xn.useMemo)(()=>h("south-west"),[h]),E=(0,xn.useMemo)(()=>h("north-east"),[h]),L=(0,xn.useMemo)(()=>h("north-west"),[h]),z=m==="sketch",M={zIndex:999,boxShadow:"0px 2px 3px 0 rgba(0,0,0,0.2)",border:"1px solid rgba(155,155,155,.7)",borderRadius:r||a?"50%":2,position:"absolute",background:"#fff",pointerEvents:y?"none":z?"initial":"none"};return(0,wt.jsx)(wt.Fragment,{children:(0,wt.jsxs)("world-object",{...l,children:[n,z&&t?(0,wt.jsx)(Cn,{ref:p,target:{x:0,y:0,height:l.height,width:l.width},relative:!0,interactive:!1,children:z&&t?(0,wt.jsxs)(wt.Fragment,{children:[(0,wt.jsx)("div",{onMouseDown:S,onTouchStart:S,style:{display:"block",width:"100%",height:"100%",position:"relative",border:"1px solid rgba(155,155,155, .7)",boxSizing:"border-box",pointerEvents:y?"none":z?"initial":"none"}}),r?null:(0,wt.jsxs)(wt.Fragment,{children:[(0,wt.jsx)("div",{title:"east",onTouchStart:w,onMouseDown:w,style:{...M,cursor:"e-resize",height:c*2,width:c,right:0,top:"50%",opacity:a?0:1,transform:`translate(${c/2}px, -${c}px)`}}),(0,wt.jsx)("div",{title:"west",onMouseDown:v,style:{...M,cursor:"w-resize",position:"absolute",height:c*2,width:c,left:0,top:"50%",opacity:a?0:1,transform:`translate(-${c/2}px, -${c}px)`}}),(0,wt.jsx)("div",{title:"north",onMouseDown:A,style:{...M,cursor:"n-resize",position:"absolute",height:c,width:c*2,left:"50%",top:0,opacity:a?0:1,transform:`translate(-${c}px, -${c/2}px)`}}),(0,wt.jsx)("div",{title:"south",onMouseDown:x,style:{...M,cursor:"s-resize",position:"absolute",height:c,width:c*2,left:"50%",bottom:0,opacity:a?0:1,transform:`translate(-${c}px, ${c/2}px)`}})]}),(0,wt.jsx)("div",{title:"north-east",onMouseDown:E,style:{...M,cursor:"ne-resize",position:"absolute",height:c,width:c,right:0,top:0,transform:`translate(${c/2}px, -${c/2}px)`}}),(0,wt.jsx)("div",{title:"south-east",onMouseDown:C,style:{...M,cursor:"se-resize",position:"absolute",height:c,width:c,bottom:0,right:0,transform:`translate(${c/2}px, ${c/2}px)`}}),(0,wt.jsx)("div",{title:"south-west",onMouseDown:I,style:{...M,cursor:"sw-resize",position:"absolute",height:c,width:c,bottom:0,left:0,transform:`translate(-${c/2}px, ${c/2}px)`}}),(0,wt.jsx)("div",{title:"north-west",onMouseDown:L,style:{...M,cursor:"nw-resize",position:"absolute",height:c,width:c,top:0,left:0,transform:`translate(-${c/2}px, -${c/2}px)`}})]}):null}):null]})})}function p0({interactive:e,region:t,onClick:i,onSave:n,maintainAspectRatio:r,disableCardinalControls:a,isEditing:l,rotation:c,style:p={backgroundColor:"rgba(0,0,0,.5)"}}){let m=(0,d0.useCallback)(h=>{n({id:t.id,x:t.x,y:t.y,height:t.height,width:t.width,...h})},[n,t.id,t.x,t.y,t.height,t.width]);return(0,Mp.jsx)(XP,{x:t.x,y:t.y,rotation:c,width:t.width,height:t.height,resizable:l,onSave:m,maintainAspectRatio:r,disableCardinalControls:a,children:(0,Mp.jsx)("box",{interactive:e,onClick:h=>{h.preventDefault(),h.stopPropagation(),i(t)},target:{x:0,y:0,width:t.width,height:t.height},style:p})})}var Np=e=>{let t=e.width/(e.crop?.width||e.tiles.width),i=e.tiles.imageService.sizes||[],n=e.enableThumbnail,r=e.enableSizes,a=(0,kp.useMemo)(()=>{let c=e.tiles.imageService.id||e.tiles.imageService["@id"];return c&&c.endsWith("/info.json")?c.slice(0,-1*10):c},[e.tiles.imageService.id]),l=(0,kp.useMemo)(()=>{let c=e.tiles.imageService.tiles||[];if(!c.length){let p=e.width,m=[1],h=1;for(;Math.pow(2,h)<p;)h=h*2,m.push(h);return[{width:256,height:256,scaleFactors:[1,2,4,8]}]}return c},[e.tiles.imageService]);return(0,Vr.jsx)("world-object",{rotation:e.rotation,scale:t,height:e.crop?.height||e.tiles.height,width:e.crop?.width||e.tiles.width,x:e.x,y:e.y,onClick:e.onClick,children:(0,Vr.jsxs)("composite-image",{id:e.tiles.imageService.id,width:e.crop?.width||e.tiles.width,height:e.crop?.height||e.tiles.height,crop:e.crop,renderOptions:e.renderOptions,children:[n&&e.tiles.thumbnail?(0,Vr.jsx)("world-image",{priority:!0,uri:e.tiles.thumbnail.id,target:{width:e.tiles.width,height:e.tiles.height},display:{width:e.tiles.thumbnail.width,height:e.tiles.thumbnail.height},crop:e.crop}):null,r&&i.map((c,p)=>(0,Vr.jsx)("world-image",{uri:`${a}/full/${c.width},${c.height}/0/default.jpg`,target:{width:e.tiles.width,height:e.tiles.height},display:{width:c.width,height:c.height},crop:e.crop},p)),l.map(c=>(c.scaleFactors||[]).map(p=>(0,Vr.jsx)("tiled-image",{uri:e.tiles.imageService.id,display:{width:e.tiles.width,height:e.tiles.height},tile:c,scaleFactor:p,crop:e.crop},`${e.tiles.imageService.id}-tile-${p}`)))]},e.tiles.imageService.id)},e.tiles.imageService.id)};function g0(e,t){return e?t?{...e,...t||{},":hover":e[":hover"]?Object.assign(e[":hover"]||{},t[":hover"]||{}):t[":hover"],":active":e[":active"]?Object.assign(e[":active"]||{},t[":active"]||{}):t[":hover"]}:e:t}var Pi=R(q()),tE=(0,Pi.createContext)(null),Bp={didCatch:!1,error:null},No=class extends Pi.Component{constructor(t){super(t),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=Bp}static getDerivedStateFromError(t){return{didCatch:!0,error:t}}resetErrorBoundary(){let{error:t}=this.state;if(t!==null){for(var i,n,r=arguments.length,a=new Array(r),l=0;l<r;l++)a[l]=arguments[l];(i=(n=this.props).onReset)===null||i===void 0||i.call(n,{args:a,reason:"imperative-api"}),this.setState(Bp)}}componentDidCatch(t,i){var n,r;(n=(r=this.props).onError)===null||n===void 0||n.call(r,t,i)}componentDidUpdate(t,i){let{didCatch:n}=this.state,{resetKeys:r}=this.props;if(n&&i.error!==null&&iE(t.resetKeys,r)){var a,l;(a=(l=this.props).onReset)===null||a===void 0||a.call(l,{next:r,prev:t.resetKeys,reason:"keys"}),this.setState(Bp)}}render(){let{children:t,fallbackRender:i,FallbackComponent:n,fallback:r}=this.props,{didCatch:a,error:l}=this.state,c=t;if(a){let p={error:l,resetErrorBoundary:this.resetErrorBoundary};if(typeof i=="function")c=i(p);else if(n)c=(0,Pi.createElement)(n,p);else if(r===null||(0,Pi.isValidElement)(r))c=r;else throw l}return(0,Pi.createElement)(tE.Provider,{value:{didCatch:a,error:l,resetErrorBoundary:this.resetErrorBoundary}},c)}};function iE(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return e.length!==t.length||e.some((i,n)=>!Object.is(i,t[n]))}var Ai=R(q(),1);var Bo=R(q(),1),y0=R(B(),1),nE={collection:void 0,manifest:void 0,range:void 0,canvas:void 0,annotation:void 0,annotationPage:void 0},Js=Bo.default.createContext(nE),Xt=()=>(0,Bo.useContext)(Js);function ei({value:e,children:t}){let i=Xt(),n=(0,Bo.useMemo)(()=>({...i,...e}),[e,i]);return(0,y0.jsx)(Js.Provider,{value:n,children:t})}var nc=R(q(),1);var ht=function(t){return function(){let i={type:t,getType:()=>t,toString:()=>t};return(n,r)=>({...i,...n!==void 0&&{payload:n},...r!==void 0&&{meta:r}})}},zu="@iiif/IMPORT_ENTITIES",Fu="@iiif/MODIFY_ENTITY_FIELD",Nu="@iiif/REORDER_ENTITY_FIELD",Bu="@iiif/ADD_REFERENCE",ea="@iiif/UPDATE_REFERENCE",Du="@iiif/REMOVE_REFERENCE",ju="@iiif/ADD_METADATA",Vu="@iiif/REMOVE_METADATA",ta="@iiif/UPDATE_METADATA",Uu="@iiif/REORDER_METADATA",Wu=ht(zu)(),v0=ht(Fu)(),x0=ht(Nu)(),S0=ht(Bu)(),w0=ht(Du)(),b0=ht(ea)(),C0=ht(ju)(),P0=ht(ta)(),E0=ht(Vu)(),A0=ht(Uu)(),Ur={importEntities:Wu,modifyEntityField:v0,reorderEntityField:x0,addReference:S0,removeReference:w0,updateReference:b0,addMetadata:C0,removeMetadata:E0,updateMetadata:P0,reorderMetadata:A0},Hu="@iiif/ADD_MAPPING",qu="@iiif/ADD_MAPPINGS",Dp=ht(Hu)(),jp=ht(qu)();var Do="RESOURCE_ERROR",ia="RESOURCE_LOADING",jo="RESOURCE_READY",Qu="@iiif/REQUEST_RESOURCE",$u="@iiif/REQUEST_ERROR",Gu="@iiif/REQUEST_MISMATCH",Yu="@iiif/REQUEST_COMPLETE",Xu="@iiif/REQUEST_OFFLINE_RESOURCE",Vp=ht(Qu)(),na=ht($u)(),Up=ht(Gu)(),Wp=ht(Yu)(),rE=ht(Xu)();var Vo="@iiif/BATCH",Ku="@iiif/BATCH_IMPORT",Uo=ht(Vo)(),oE=ht(Ku)();function en(e){for(let t in e)(typeof e[t]>"u"||e[t]===null)&&delete e[t];return e}function Nn(e){return Array.isArray(e)?e:e?[e]:[]}var I0=["sc:Collection","sc:Manifest","sc:Canvas","sc:AnnotationList","oa:Annotation","sc:Range","sc:Layer","sc:Sequence","oa:Choice","Service","ContentResource"];function sE(e){if(typeof e>"u"||e===null)throw new Error("Null or undefined is not a valid entity.");if(Array.isArray(e))throw new Error("Array is not a valid entity");if(typeof e!="object")throw new Error(`${typeof e} is not a valid entity`);if(typeof e["@type"]=="string"){let t=I0.indexOf(e["@type"]);if(t!==-1)return I0[t]}if(e.profile)return"Service";if(e.format||e["@type"])return"ContentResource";throw new Error("Resource type is not known")}var aE=class M0{constructor(t,i={}){vn(this,"traversals"),vn(this,"options"),this.traversals={collection:[],manifest:[],canvas:[],annotationList:[],sequence:[],annotation:[],contentResource:[],choice:[],range:[],service:[],layer:[],...t},this.options={convertPropsToArray:!0,mergeMemberProperties:!0,allowUndefinedReturn:!1,...i}}static all(t){return new M0({collection:[t],manifest:[t],canvas:[t],annotationList:[t],sequence:[t],annotation:[t],contentResource:[t],choice:[t],range:[t],service:[t],layer:[t]})}traverseCollection(t){return this.traverseType(this.traverseDescriptive(this.traverseLinking(this.traverseCollectionItems(t))),this.traversals.collection)}traverseCollectionItems(t){if(this.options.mergeMemberProperties){let i=[...(t.manifests||[]).map(n=>typeof n=="string"?{"@id":n,"@type":"sc:Manifest"}:n),...(t.collections||[]).map(n=>typeof n=="string"?{"@id":n,"@type":"sc:Collection"}:n),...t.members||[]];delete t.collections,delete t.manifests,t.members=i}return t.manifests&&(t.manifests=t.manifests.map(i=>this.traverseManifest(typeof i=="string"?{"@id":i,"@type":"sc:Manifest"}:i))),t.collections&&(t.collections=t.collections.map(i=>this.traverseCollection(typeof i=="string"?{"@id":i,"@type":"sc:Collection"}:i))),t.members&&(t.members=t.members.map(i=>typeof i=="string"?i:this.traverseUnknown(i))),t}traverseManifest(t){return this.traverseType(this.traverseDescriptive(this.traverseLinking(this.traverseManifestItems(t))),this.traversals.manifest)}traverseManifestItems(t){return t.sequences&&(t.sequences=t.sequences.map(i=>this.traverseSequence(i))),t.structures&&(t.structures=t.structures.map(i=>this.traverseRange(i))),t}traverseSequence(t){return this.traverseType(this.traverseDescriptive(this.traverseLinking(this.traverseSequenceItems(t))),this.traversals.sequence)}traverseSequenceItems(t){return t.canvases&&(t.canvases=t.canvases.map(i=>this.traverseCanvas(i))),t}traverseCanvas(t){return this.traverseType(this.traverseDescriptive(this.traverseLinking(this.traverseCanvasItems(t))),this.traversals.canvas)}traverseCanvasItems(t){return t.images&&(t.images=t.images.map(i=>this.traverseAnnotation(i))),t.otherContent&&(t.otherContent=t.otherContent.map(i=>this.traverseAnnotationList(i))),t}traverseRange(t){return this.traverseType(this.traverseDescriptive(this.traverseLinking(this.traverseRangeItems(t))),this.traversals.range)}traverseRangeItems(t){if(this.options.mergeMemberProperties){let i=[...(t.ranges||[]).map(n=>typeof n=="string"?{"@id":n,"@type":"sc:Range"}:n),...(t.canvases||[]).map(n=>typeof n=="string"?{"@id":n,"@type":"sc:Canvas"}:n),...t.members||[]];delete t.ranges,delete t.canvases,t.members=i.length?i.map(n=>this.traverseUnknown(n)):void 0}return t}traverseAnnotationList(t){let i=typeof t=="string"?{"@id":t,"@type":"sc:AnnotationList"}:t;return this.traverseType(this.traverseDescriptive(this.traverseAnnotationListItems(i)),this.traversals.annotationList)}traverseAnnotationListItems(t){return t.resources&&(t.resources=t.resources.map(i=>this.traverseAnnotation(i))),t}traverseAnnotation(t){return this.traverseType(this.traverseDescriptive(this.traverseLinking(this.traverseAnnotationItems(t))),this.traversals.annotation)}traverseAnnotationItems(t){return t.resource&&(Array.isArray(t.resource)?t.resource=t.resource.map(i=>this.traverseContentResource(i)):t.resource=this.traverseContentResource(t.resource)),t.on,t}traverseLayer(t){return this.traverseType(this.traverseLinking(this.traverseLayerItems(t)),this.traversals.layer)}traverseLayerItems(t){return t.otherContent&&(t.otherContent=t.otherContent.map(i=>this.traverseAnnotationList(i))),t}traverseChoice(t){return this.traverseType(this.traverseChoiceItems(t),this.traversals.choice)}traverseChoiceItems(t){return t.default&&t.default!=="rdf:nil"&&(t.default=this.traverseContentResource(t.default)),t.item&&t.item!=="rdf:nil"&&(t.item=t.item.map(i=>this.traverseContentResource(i))),t}traverseService(t){return this.traverseType(this.traverseLinking(t),this.traversals.service)}traverseContentResource(t){return t["@type"]==="oa:Choice"?this.traverseChoice(t):this.traverseType(this.traverseDescriptive(this.traverseLinking(t)),this.traversals.contentResource)}traverseUnknown(t){if(!t["@type"]||typeof t=="string")return t;switch(sE(t)){case"sc:Collection":return this.traverseCollection(t);case"sc:Manifest":return this.traverseManifest(t);case"sc:Canvas":return this.traverseCanvas(t);case"sc:Sequence":return this.traverseSequence(t);case"sc:Range":return this.traverseRange(t);case"oa:Annotation":return this.traverseAnnotation(t);case"sc:AnnotationList":return this.traverseAnnotationList(t);case"sc:Layer":return this.traverseLayer(t);case"Service":return this.traverseService(t);case"oa:Choice":return this.traverseChoice(t);case"ContentResource":return this.traverseContentResource(t)}return t.profile?this.traverseService(t):t}traverseImageResource(t){let i=Array.isArray(t),n=Array.isArray(t)?t:[t],r=[];for(let a of n)typeof a=="string"?r.push(this.traverseContentResource({"@id":a,"@type":"dctypes:Image"})):r.push(this.traverseContentResource(a));return!i&&!this.options.convertPropsToArray?r[0]:r}traverseDescriptive(t){return t.thumbnail&&(t.thumbnail=this.traverseImageResource(t.thumbnail)),t.logo&&(t.logo=this.traverseImageResource(t.logo)),t}traverseOneOrMoreServices(t){let i=Array.isArray(t),n=Array.isArray(t)?t:[t],r=[];for(let a of n)r.push(this.traverseService(a));return!i&&!this.options.convertPropsToArray?r[0]:r}traverseLinking(t){return t.related&&(t.related=this.traverseOneOrManyType(t.related,this.traversals.contentResource)),t.rendering&&(t.rendering=this.traverseOneOrManyType(t.rendering,this.traversals.contentResource)),t.service&&(t.service=this.traverseOneOrMoreServices(t.service)),t.seeAlso&&(t.seeAlso=this.traverseOneOrManyType(t.seeAlso,this.traversals.contentResource)),t.within&&(typeof t.within=="string"||(t.within=this.traverseOneOrManyType(t.within,this.traversals.contentResource))),t.startCanvas&&(typeof t.startCanvas=="string"?t.startCanvas=this.traverseType({"@id":t.startCanvas,"@type":"sc:Canvas"},this.traversals.canvas):t.startCanvas&&this.traverseType(t.startCanvas,this.traversals.canvas)),t.contentLayer&&(typeof t.contentLayer=="string"?t.contentLayer=this.traverseLayer({"@id":t.contentLayer,"@type":"sc:Layer"}):t.contentLayer=this.traverseLayer(t.contentLayer)),t}traverseOneOrManyType(t,i){if(!Array.isArray(t))if(this.options.convertPropsToArray)t=[t];else return this.traverseType(t,i);return t.map(n=>this.traverseType(n,i))}traverseType(t,i){return i.reduce((n,r)=>{let a=r(n);return typeof a>"u"&&!this.options.allowUndefinedReturn?n:a},t)}},lE="http://library.stanford.edu/iiif/image-api/compliance.html#level1",uE="http://library.stanford.edu/iiif/image-api/compliance.html#level2",cE="http://library.stanford.edu/iiif/image-api/conformance.html#level1",dE="http://library.stanford.edu/iiif/image-api/conformance.html#level2",hE="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level1",pE="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2",fE="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level1",mE="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level2",gE="http://iiif.io/api/image/1/level1.json",yE="http://iiif.io/api/image/1/profiles/level1.json",vE="http://iiif.io/api/image/1/level2.json",xE="http://iiif.io/api/image/1/profiles/level2.json",SE="http://iiif.io/api/image/2/level1.json",wE="http://iiif.io/api/image/2/profiles/level1.json",bE="http://iiif.io/api/image/2/level2.json",CE="http://iiif.io/api/image/2/profiles/level2.json",PE="level1",EE="level2",AE="http://iiif.io/api/image/2/level1",IE="http://iiif.io/api/image/2/level2",RE=[AE,IE,lE,uE,cE,dE,hE,pE,fE,mE,gE,yE,vE,xE,SE,wE,bE,CE,PE,EE],Hp={attributionLabel:"Attribution",lang:"none",providerId:"http://example.org/provider",providerName:"Unknown"};function TE(e){if(typeof e=="string")return[e];if(!e)return[];let t=Array.isArray(e)?e:[e],i=[];for(let n of t){if(typeof n=="string"){i.push(n);continue}i.push({"@language":n["@language"]||n.language,"@value":n["@value"]||n.value})}return i}function Wr(e,t="none"){if(!e)return{none:[""]};let i=TE(e),n={};for(let r of i){if(typeof r=="string"){n[t]=n[t]?n[t]:[],n[t].push(r||"");continue}if(!r["@language"]){n[t]=n[t]?n[t]:[],n[t].push(r["@value"]||"");continue}let a=r["@language"];n[a]=n[a]?n[a]:[],n[a].push(r["@value"]||"")}return Object.keys(n).length===0?{none:[""]}:n}function k0(e){if(Array.isArray(e))return k0(e.find(t=>typeof t=="string"));if(ko.indexOf(e)!==-1)return"level2";if(RE.indexOf(e)!==-1)return"level1";if(yp.indexOf(e)!==-1)return"level0";if(typeof e=="string")return e}function _E(e){let t=Array.isArray(e)?e:[e];for(let i of t)switch(i){case"http://iiif.io/api/image/2/context.json":case"http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2":return"ImageService2";case"http://iiif.io/api/image/1/context.json":case"http://library.stanford.edu/iiif/image-api/1.1/context.json":return"ImageService1";case"http://iiif.io/api/annex/openannotation/context.json":return"ImageApiSelector"}}function ME(e){switch(e){case"http://iiif.io/api/image/2/level0.json":case"http://iiif.io/api/image/2/level1.json":case"http://iiif.io/api/image/2/level2.json":return"ImageService2";case"http://iiif.io/api/auth/1/kiosk":case"http://iiif.io/api/auth/1/login":case"http://iiif.io/api/auth/1/clickthrough":case"http://iiif.io/api/auth/1/external":case"http://iiif.io/api/auth/0/kiosk":case"http://iiif.io/api/auth/0/login":case"http://iiif.io/api/auth/0/clickthrough":case"http://iiif.io/api/auth/0/external":return"AuthCookieService1";case"http://iiif.io/api/auth/1/token":case"http://iiif.io/api/auth/0/token":return"AuthTokenService1";case"http://iiif.io/api/auth/1/logout":case"http://iiif.io/api/auth/0/logout":return"AuthLogoutService1";case"http://iiif.io/api/search/1/search":case"http://iiif.io/api/search/0/search":return"SearchService1";case"http://iiif.io/api/search/1/autocomplete":case"http://iiif.io/api/search/0/autocomplete":return"AutoCompleteService1"}}function R0(e){for(let t of["sc","oa","dcterms","dctypes","iiif"])if(e.startsWith(`${t}:`))return e.slice(t.length+1);return e}var kE=["Collection","Manifest","Annotation","AnnotationPage","Range","Service"];function Qp(e){let t=e["@id"]||e.id,i=e["@type"]||e.type,n=e.profile||void 0,r=e["@context"]||void 0;if(n){let a=ME(n);if(a)return a}if(r){let a=_E(r);if(a)return a}if(i){if(Array.isArray(i)){if(i.indexOf("oa:CssStylesheet")!==-1)return"CssStylesheet";if(i.indexOf("cnt:ContentAsText")!==-1)return"TextualBody";i=i[0]}for(let a of["sc","oa","dcterms","dctypes","iiif"])if(i.startsWith(`${a}:`)){i=i.slice(a.length+1);break}switch(i){case"Layer":return"AnnotationCollection";case"AnnotationList":return"AnnotationPage";case"cnt:ContentAsText":return"TextualBody"}}if(i&&kE.indexOf(i)!==-1)return i;if(e.format){if(e.format.startsWith("image/"))return"Image";if(e.format.startsWith("text/")||e.format==="application/pdf")return"Text";if(e.format.startsWith("application/"))return"Dataset"}return t&&(t.endsWith(".jpg")||t.endsWith(".png")||t.endsWith(".jpeg"))?"Image":i||"unknown"}var OE=/http(s)?:\/\/(creativecommons.org|rightsstatements.org)[^"'\\<\n]+/gm;function LE(e){let t=e.match(OE);return t?t[0]:e}function zE(e,t="Rights/License",i="none"){let n=null,r=[],a=Array.isArray(e)?e:[e];for(let l of a){let c=l?LE(l):void 0;if(c&&(c.indexOf("creativecommons.org")!==-1||c.indexOf("rightsstatements.org")!==-1)){c.startsWith("https://")?n=`http://${c.slice(8)}`:n=c;continue}c&&r.push({label:{[i]:[t]},value:{[i]:[c]}})}return[n,r]}var FE=["http://iiif.io/api/presentation/2/context.json","http://iiif.io/api/image/2/context.json","http://iiif.io/api/image/1/context.json","http://library.stanford.edu/iiif/image-api/1.1/context.json","http://iiif.io/api/search/1/context.json","http://iiif.io/api/search/0/context.json","http://iiif.io/api/auth/1/context.json","http://iiif.io/api/auth/0/context.json","http://iiif.io/api/annex/openannotation/context.json"];function NE(e){if(e){let t=Array.isArray(e)?e:[e],i=[];for(let n of t)n==="http://iiif.io/api/presentation/2/context.json"&&i.push("http://iiif.io/api/presentation/3/context.json"),FE.indexOf(n)===-1&&i.push(n);if(t.length)return i.length===1?i[0]:i}}function BE(e){return e?e.map(t=>({label:Wr(t.label),value:Wr(t.value)})):[]}var T0=0;function O0(e,t){let i=encodeURI(e.id||e["@id"]||"").trim();return i&&t?`${i}/${t}`:i||(T0++,`http://example.org/${e["@type"]}${t?`/${t}`:""}/${T0}`)}function Bn(e){let t=[...e.behavior||[]];e.viewingHint&&t.push(e.viewingHint);let i;return Array.isArray(e.motivation)?i=e.motivation.map(R0):e.motivation&&(i=R0(e.motivation)),{"@context":e["@context"]?NE(e["@context"]):void 0,id:(e["@id"]||O0(e)).trim(),type:Qp(e),behavior:t.length?t:void 0,height:e.height?e.height:void 0,width:e.width?e.width:void 0,motivation:i,viewingDirection:e.viewingDirection,profile:e.profile,format:e.format?e.format:void 0,duration:void 0,timeMode:void 0}}function Dn(e){let[t,i]=zE(e.license),n=[...e.metadata?BE(e.metadata):[],...i];return{rights:t,metadata:n.length?n:void 0,label:e.label?Wr(e.label):void 0,requiredStatement:e.attribution?{label:Wr(Hp.attributionLabel),value:Wr(e.attribution)}:void 0,navDate:e.navDate,summary:e.description?Wr(e.description):void 0,thumbnail:DE(e.thumbnail)}}function DE(e){return e&&(Array.isArray(e)?e:[e]).map(t=>typeof t=="string"?{id:t,type:"Image"}:(t.type==="unknown"&&(t.type="Image"),t))}function jE(e){if(!e.within)return;let t=Array.isArray(e.within)?e.within:[e.within],i=[];for(let n of t)if(typeof n=="string"){if(n)switch(e["@type"]){case"sc:Manifest":i.push({id:n,type:"Collection"});break}}else n["@id"]&&i.push({id:n["@id"],type:Qp(n)});return i.length?i:void 0}function dr(e){let t=e.related?Array.isArray(e.related)?e.related:[e.related]:[],i=e.contentLayer;return{provider:e.logo||t.length?[{id:Hp.providerId,type:"Agent",homepage:t.length?[t[0]]:void 0,logo:e.logo?Array.isArray(e.logo)?e.logo:[e.logo]:void 0,label:Wr(Hp.providerName)}]:void 0,partOf:jE(e),rendering:e.rendering,seeAlso:e.seeAlso,start:e.startCanvas,service:e.service?Nn(e.service):void 0,supplementary:i?[i]:void 0}}function VE(e){return{chars:e.chars,format:e.format?e.format:void 0,language:e.language}}function UE(e){return en({...Bn(e),...Dn(e),...dr(e),items:e.members})}function WE(e){let t=[],i=[],n;for(let a of e.sequences||[])a.canvases.length&&t.push(...a.canvases),a.behavior&&i.push(...a.behavior),a.startCanvas&&(n=a.startCanvas);let r=Bn(e);return i.length&&(r.behavior?r.behavior.push(...i):r.behavior=i),en({...r,...Dn(e),...dr(e),start:n,items:t,structures:HE(e.structures)})}function HE(e){if(!e)return e;let t=new Map;for(let n of e)t.set(n.id,n);let i=[];for(let n of e)if(n.items){let r=n.items.map(a=>typeof a=="string"?(i.push(a),t.get(a)||a):a&&a.id?(i.push(a.id),t.get(a.id)||a):a);n.items=r}return e.filter(n=>i.indexOf(n.id)===-1)}function qE(e){return en({...Bn(e),...Dn(e),...dr(e),annotations:e.otherContent&&e.otherContent.length?e.otherContent:void 0,items:e.images&&e.images.length?[{id:O0(e,"annotation-page"),type:"AnnotationPage",items:e.images}]:void 0})}function QE(e){return en({...Bn(e),...Dn(e),...dr(e),items:e.resources&&e.resources.length?e.resources:void 0})}function $E(e){return!e.canvases||e.canvases.length===0?{canvases:[],behavior:[]}:{canvases:e.canvases,behavior:e.viewingHint?[e.viewingHint]:[],startCanvas:e.startCanvas}}function GE(e){function t(i){if(Array.isArray(i)){if(i.length>1)return{type:"List",items:i.map(t)};i=i[0]}if(typeof i=="string")return encodeURI(i).trim();if("@type"in i){let n;if(typeof i.full=="string")n=i.full;else if(i.full["@type"]==="dctypes:Image")n={id:i.full["@id"],type:"Image"};else if(i.full["@type"]==="sc:Canvas")n={id:i.full["@id"],type:"Canvas"};else throw new Error(`Unsupported source type on annotation: ${i.full["@type"]}`);return{type:"SpecificResource",source:n,selector:qp(i.selector)}}else return encodeURI(i["@id"]).trim()}return en({...Bn(e),...Dn(e),...dr(e),target:t(e.on),body:Array.isArray(e.resource)?e.resource.map(_0):_0(e.resource)})}function _0(e){return e.type==="Choice"?e:L0(e)}function L0(e){let t=e;return en({...Bn(t),...Dn(t),...dr(t),...VE(t)})}function YE(e){let t=[];return e.default&&e.default!=="rdf:nil"&&t.push(e.default),e.item&&e.item!=="rdf:nil"&&t.push(...e.item),en({...Bn(e),...Dn(e),items:t})}function XE(e){return en({...Bn(e),...Dn(e),...dr(e),items:e.members})}function KE(e){let{"@id":t,"@type":i,"@context":n,profile:r,...a}=e,l={};return t&&(l["@id"]=t),l["@type"]=Qp(e),l["@type"]==="unknown"&&(n&&n.length&&(l["@context"]=n),l["@type"]="Service"),r&&(l.profile=k0(r)),en({...l,...a})}function ZE(e){return en({...Bn(e),...Dn(e),...dr(e)})}var JE=new aE({collection:[UE],manifest:[WE],canvas:[qE],annotationList:[QE],sequence:[$E],annotation:[GE],contentResource:[L0],choice:[YE],range:[XE],service:[KE],layer:[ZE]});function z0(e){return e&&e["@context"]&&(e["@context"]==="http://iiif.io/api/presentation/2/context.json"||e["@context"].indexOf("http://iiif.io/api/presentation/2/context.json")!==-1||e["@context"]==="http://www.shared-canvas.org/ns/context.json")||e["@context"]==="http://iiif.io/api/image/2/context.json"?JE.traverseUnknown(e):e}function qp(e){if((Array.isArray(e["@type"])&&e["@type"].includes("oa:SvgSelector")||e["@type"]=="oa:SvgSelector")&&("chars"in e||"value"in e))return{type:"SvgSelector",value:"chars"in e?e.chars:e.value};if(e["@type"]==="oa:FragmentSelector")return{type:"FragmentSelector",value:e.value};if(e["@type"]==="oa:Choice")return[qp(e.default),...(Array.isArray(e.item)?e.item:[e.item]).map(qp)];if(e["@type"]=="iiif:ImageApiSelector")return{type:"ImageApiSelector",region:"region"in e?e.region:void 0,rotation:"rotation"in e?e.rotation:void 0};throw new Error(`Unsupported selector type: ${e["@type"]}`)}function tn(e){return typeof e=="string"?!1:e&&!e.type&&"source"in e?(e.type="SpecificResource",!0):!!e&&e.type==="SpecificResource"}function Zu(...e){return t=>e.reduce((i,n)=>n(i),t)}var $p=["Collection","Manifest","Canvas","AnnotationPage","AnnotationCollection","Annotation","ContentResource","Range","Service","Selector","Agent"];function F0(e,t){if(typeof e>"u"||e===null)throw new Error("Null or undefined is not a valid entity.");if(Array.isArray(e))throw new Error("Array is not a valid entity");if(typeof e!="object"){if(t)return t;throw new Error(`${typeof e} is not a valid entity`)}if(typeof e.type=="string"){let i=$p.indexOf(e.type);if(i!==-1)return $p[i]}if(e.profile)return"Service";throw new Error("Resource type is not known")}var Gp=class N0{constructor(t,i={}){vn(this,"traversals"),vn(this,"options"),vn(this,"_traverseManifest",Zu(this.traverseManifestItems.bind(this),this.traverseLinking.bind(this),this.traverseDescriptive.bind(this),this.traverseLinkedCanvases.bind(this),this.traverseManifestStructures.bind(this),this.traverseInlineAnnotationPages.bind(this))),vn(this,"_traverseCanvas",Zu(this.traverseCanvasItems.bind(this),this.traverseLinking.bind(this),this.traverseDescriptive.bind(this),this.traverseLinkedCanvases.bind(this),this.traverseInlineAnnotationPages.bind(this))),vn(this,"_traverseAnnotationPage",Zu(this.traverseAnnotationPageItems.bind(this),this.traverseLinking.bind(this),this.traverseDescriptive.bind(this))),vn(this,"_traverseRange",Zu(this.traverseRangeRanges.bind(this),this.traverseLinking.bind(this),this.traverseDescriptive.bind(this),this.traverseLinkedCanvases.bind(this))),this.traversals={collection:[],manifest:[],canvas:[],annotationCollection:[],annotationPage:[],annotation:[],contentResource:[],choice:[],range:[],service:[],agent:[],specificResource:[],geoJson:[],...t},this.options={allowUndefinedReturn:!1,...i}}static all(t){return new N0({collection:[t],manifest:[t],canvas:[t],annotationCollection:[t],annotationPage:[t],annotation:[t],contentResource:[t],choice:[t],range:[t],service:[t],geoJson:[t],specificResource:[t],agent:[t]})}traverseDescriptive(t){return t.thumbnail&&(t.thumbnail=Nn(t.thumbnail).map(i=>this.traverseType(i,{parent:t},this.traversals.contentResource))),t.provider&&(t.provider=t.provider.map(i=>this.traverseAgent(i,t))),t}traverseLinking(t){return t.seeAlso&&(t.seeAlso=t.seeAlso.map(i=>this.traverseType(i,{parent:t},this.traversals.contentResource))),t.service&&(t.service=Nn(t.service).map(i=>this.traverseService(i))),t.services&&(t.services=Nn(t.services).map(i=>this.traverseService(i,t))),t.logo&&(t.logo=t.logo.map(i=>this.traverseType(i,{parent:t},this.traversals.contentResource))),t.homepage&&(t.homepage=Nn(t.homepage).map(i=>this.traverseType(i,{parent:t},this.traversals.contentResource))),t.partOf&&(t.partOf=t.partOf.map(i=>typeof i=="string"||!i.type?this.traverseType(i,{parent:t},this.traversals.contentResource):i.type==="Canvas"?this.traverseType(i,{parent:t},this.traversals.canvas):i.type==="AnnotationCollection"?this.traverseType(i,{parent:t},this.traversals.annotationCollection):i.type==="Collection"?this.traverseType(i,{parent:t},this.traversals.collection):this.traverseType(i,{parent:t},this.traversals.contentResource))),t.start&&(tn(t.start)?t.start=this.traverseSpecificResource(t.start,"Canvas",t):t.start=this.traverseType(t.start,{parent:t},this.traversals.canvas)),t.rendering&&(t.rendering=t.rendering.map(i=>this.traverseType(i,{parent:t},this.traversals.contentResource))),t.supplementary&&(t.supplementary=t.supplementary.map(i=>this.traverseType(i,{parent:t},this.traversals.contentResource))),t}traverseCollectionItems(t){return t.items&&t.items.map(i=>i.type==="Collection"?this.traverseCollection(i):this.traverseManifest(i)),t}traverseCollection(t,i){return this.traverseType(this.traverseDescriptive(this.traverseInlineAnnotationPages(this.traverseLinking(this.traverseLinkedCanvases(this.traverseCollectionItems(t))))),{parent:i},this.traversals.collection)}traverseGeoJson(t,i){return this.traverseType(t,{parent:i},this.traversals.geoJson)}traverseNavPlace(t){return t.navPlace&&(t.navPlace=this.traverseGeoJson(t.navPlace,t)),t}traverseManifestItems(t){return t.items&&(t.items=t.items.map(i=>this.traverseCanvas(i))),t}traverseManifestStructures(t){return t.structures&&(t.structures=t.structures.map(i=>this.traverseRange(i))),t}traverseManifest(t,i){return this.traverseType(this._traverseManifest(t),{parent:i},this.traversals.manifest)}traverseCanvasItems(t){return t.items=(t.items||[]).map(i=>this.traverseAnnotationPage(i,t)),t}traverseInlineAnnotationPages(t){return typeof t=="string"||!t||t.annotations&&(t.annotations=t.annotations.map(i=>this.traverseAnnotationPage(i,t))),t}traverseCanvas(t,i){return this.traverseType(this._traverseCanvas(t),{parent:i},this.traversals.canvas)}traverseAnnotationPageItems(t){return t.items&&(t.items=t.items.map(i=>this.traverseAnnotation(i,t))),t}traverseAnnotationPage(t,i){return this.traverseType(this._traverseAnnotationPage(t),{parent:i},this.traversals.annotationPage)}traverseAnnotationBody(t){return Array.isArray(t.body)?t.body=t.body.map(i=>this.traverseContentResource(i,t)):t.body&&(t.body=this.traverseContentResource(t.body,t)),t}traverseLinkedCanvases(t){return t.placeholderCanvas&&(t.placeholderCanvas=this.traverseCanvas(t.placeholderCanvas)),t.accompanyingCanvas&&(t.accompanyingCanvas=this.traverseCanvas(t.accompanyingCanvas)),t}traverseAnnotation(t,i){return this.traverseType(this.traverseLinking(this.traverseAnnotationBody(this.traverseDescriptive(t))),{parent:i},this.traversals.annotation)}traverseContentResourceLinking(t){return typeof t=="string"||!t||t&&t.service&&(t.service=Nn(t.service||[]).map(i=>this.traverseService(i,t))),t}traverseContentResource(t,i){return t.type==="Choice"&&(t.items=t.items.map(n=>this.traverseContentResource(n,t))),tn(t)?this.traverseSpecificResource(t,"ContentResource"):this.traverseType(this.traverseInlineAnnotationPages(this.traverseContentResourceLinking(t)),{parent:i},this.traversals.contentResource)}traverseSpecificResource(t,i,n){let r=t.source;return typeof t.source=="string"&&(r={id:t.source,type:i||"unknown"}),this.traverseType({...t,source:i==="Canvas"||r.type==="Canvas"?this.traverseType(r,{parent:n},this.traversals.canvas):i==="ContentResource"?this.traverseContentResource(r,{parent:n}):this.traverseUnknown(r,{parent:n,typeHint:i})},{parent:n},this.traversals.specificResource)}traverseRangeRanges(t){return t.items&&(t.items=t.items.map(i=>typeof i=="string"?this.traverseCanvas({id:i,type:"Canvas"},t):tn(i)?this.traverseSpecificResource(i,"Canvas",t):i.type==="Manifest"?this.traverseManifest(i,t):this.traverseRange(i,t))),t}traverseRange(t,i){return this.traverseType(this._traverseRange(t),{parent:i},this.traversals.range)}traverseAgent(t,i){return this.traverseType(this.traverseDescriptive(this.traverseLinking(t)),{parent:i},this.traversals.agent)}traverseType(t,i,n){return n.reduce((r,a)=>{let l=a(r,i);return typeof l>"u"&&!this.options.allowUndefinedReturn?r:l},t)}traverseService(t,i){let n=Object.assign({},t);return n&&n.service&&(n.service=Nn(n.service).map(r=>this.traverseService(r))),this.traverseType(n,{parent:i},this.traversals.service)}traverseUnknown(t,{parent:i,typeHint:n}={}){let r=F0(t,n);switch(r){case"Collection":return this.traverseCollection(t,i);case"Manifest":return this.traverseManifest(t,i);case"Canvas":return this.traverseCanvas(t,i);case"AnnotationPage":return this.traverseAnnotationPage(t,i);case"Annotation":return this.traverseAnnotation(t,i);case"ContentResource":return this.traverseContentResource(t,i);case"Range":return this.traverseRange(t,i);case"Service":return this.traverseService(t,i);case"Agent":return this.traverseAgent(t,i);default:throw new Error(`Unknown or unsupported resource type of ${r}`)}}};function Kp(e,t){let i=t||"unknown";if(!e)return;if(typeof e=="string")return{id:e,type:i};if(tn(e))return Kp(e.source,t);let n=i&&i!=="unknown"?i:e.type||e["@type"],r=e.id||e["@id"];if(n&&n.indexOf(":")!==-1&&(n=n.split(":").pop()),r&&n)return{id:r,type:n}}var Ho={},mt="iiif-parser:hasPart",Ei="iiif-parser:partOf",qo="iiif-parser:isExternal",ji="__$UNSET$__",Zp="__$UNWRAP$__",ce=[];Object.freeze(ce);Object.freeze(Ho);function D0(e){if(e===Ho||Object.keys(e).length===0)return!0;for(let t in e)return!1;return!0}function $o(e,t){if(t&&t["@explicit"]){let i={},n=Object.keys(t);for(let r of n)r===Ei||r==="@explicit"||(D0(t[r])?i[r]=e[r]:i[r]=t[r]);return i}return e}function Jp(e,t,i){let n=Kp(t);if(!n)return[void 0,void 0];let r=e.requests[n.id],a=n.type||e.mapping[n.id];if(!a||r&&r.resourceUri&&(!e.entities[a]||!e.entities[a][r.resourceUri]))return[void 0,void 0];let l=e.entities[a][r?r.resourceUri:n.id];if(n.type&&!l)return Jp(e,{id:n.id},i);if(l&&l[mt]){let c=l[mt].find(p=>i?p[Ei]===i.id:p[Ei]===l.id);return[$o(l,c),l]}return[l,l]}var j0={id:"https://iiif-parser/annotation-page",type:"AnnotationPage",behavior:ce,label:null,thumbnail:ce,summary:null,requiredStatement:null,metadata:ce,rights:null,provider:ce,items:ce,seeAlso:ce,homepage:ce,rendering:ce,service:ce},V0={id:"https://iiif-parser/empty-canvas",type:"Canvas",label:null,behavior:ce,thumbnail:ce,accompanyingCanvas:null,placeholderCanvas:null,summary:null,requiredStatement:null,metadata:ce,rights:null,navDate:null,provider:ce,items:ce,annotations:ce,seeAlso:ce,homepage:ce,partOf:ce,rendering:ce,service:ce,duration:0,height:0,width:0},U0={id:"https://iiif-parser/empty-collection",type:"Collection",label:null,viewingDirection:"left-to-right",behavior:ce,thumbnail:ce,accompanyingCanvas:null,placeholderCanvas:null,summary:null,requiredStatement:null,metadata:ce,rights:null,navDate:null,provider:ce,items:ce,annotations:ce,seeAlso:ce,homepage:ce,partOf:ce,rendering:ce,service:ce,services:ce},W0={id:"https://iiif-parser/empty-manifest",type:"Manifest",annotations:ce,behavior:ce,homepage:ce,items:ce,label:null,metadata:ce,navDate:null,provider:ce,partOf:ce,accompanyingCanvas:null,placeholderCanvas:null,rendering:ce,requiredStatement:null,rights:null,seeAlso:ce,service:ce,services:ce,start:null,structures:ce,summary:null,thumbnail:ce,viewingDirection:"left-to-right"},H0={id:"https://iiif-parser/empty-canvas",type:"Range",label:null,behavior:ce,thumbnail:ce,accompanyingCanvas:null,placeholderCanvas:null,summary:null,requiredStatement:null,metadata:ce,rights:null,navDate:null,provider:ce,items:ce,annotations:ce,seeAlso:ce,homepage:ce,partOf:ce,rendering:ce,service:ce,start:null,supplementary:null,viewingDirection:"left-to-right"},q0={id:"https://iiif-parser/empty-agent",type:"Agent",label:{},logo:ce,seeAlso:ce,homepage:ce},Q0={id:"https://iiif-parser/empty-service",type:"UnknownService"};function Xp(e,t={}){if(Array.isArray(e))return Xp(e[0]);if(typeof e=="string"){let[i,n]=e.split("#");return n?{type:"SpecificResource",source:{id:i,type:t.typeHint||"Unknown"},selector:{type:"FragmentSelector",value:n}}:{type:"SpecificResource",source:{id:i,type:t.typeMap&&t.typeMap[i]||t.typeHint||"Unknown"}}}if(e.type==="Choice"||e.type==="List"||e.type==="Composite"||e.type==="Independents")return Xp(e.items[0]);if(!e.type&&"source"in e&&(e.type="SpecificResource"),e.type==="SpecificResource")return e.source.type==="Canvas"&&e.source.partOf&&typeof e.source.partOf=="string"&&(e.source.partOf=[{id:e.source.partOf,type:"Manifest"}]),e.selector?{type:"SpecificResource",source:e.source,selector:e.selector}:{type:"SpecificResource",source:e.source};if(e.id){e.type==="Canvas"&&e.partOf&&typeof e.partOf=="string"&&(e.partOf=[{id:e.partOf,type:"Manifest"}]);let[i,n]=e.id.split("#");return n?{type:"SpecificResource",source:{...e,id:i},selector:{type:"FragmentSelector",value:n}}:{type:"SpecificResource",source:{...e,id:i}}}return{type:"SpecificResource",source:e}}function $0(){return{Collection:{},Manifest:{},Canvas:{},AnnotationPage:{},AnnotationCollection:{},Annotation:{},ContentResource:{},Range:{},Service:{},Selector:{},Agent:{}}}function G0(e,t){if(typeof e=="string")return{id:e,type:t};if(!e.id)throw new Error(`Invalid resource does not have an ID (${JSON.stringify(e)}, ${t})`);return e}function eA(e,t){return(i,n)=>{let r=e[i]?e[i]:{};return(a,l)=>{let c=G0(a,n||i);return c&&c.id&&i?(r[c.id]=r[c.id]?tc(r[c.id],c,{parent:l.parent,isTopLevel:t.id===c.id}):tc({id:c.id,type:c.type},c,{parent:l.parent,isTopLevel:t.id===c.id}),{id:c.id,type:i==="ContentResource"?i:c.type}):c}}}function ec(e,t,i){if(!t)return e;if(Array.isArray(e)){if(!Array.isArray(t))throw new Error("Cannot merge array with non-array");let n=[...e];for(let r of t)if(r["@id"]&&!r.id&&(r.id=r["@id"]),r["@type"]&&!r.type&&(r.type=r["@type"]),r!=null)if(Array.isArray(r))n.push(r);else if(typeof r=="object"&&r.id&&r.type){let a=n.findIndex(l=>l.id===r.id&&l.type===r.type);a>=0&&(n[a]=ec(n[a],r))}else e.indexOf(r)===-1&&n.push(r);return n}else if(typeof e=="object"){if(Array.isArray(t)||typeof t!="object")throw new Error("Cannot merge object with non-object");let n={...e},r=[],a=[],l=Object.keys(e).filter(m=>m!==mt&&m!=="id"&&m!=="type"),c={},p={};for(let[m,h]of Object.entries(t)){if(m===mt||m==="id"||m==="type")continue;let y=n[m];y===h?a.push(m):y===ce||!y?(r.push(m),n[m]=h):(y&&h&&(c[m]=y,p[m]=h),n[m]=ec(y,h),n[m]===c[m]&&(a.push(m),delete c[m]))}if(i&&(i.parent&&i.parent.id||i.isTopLevel)){let m=[],h={};if(i.parent?h[Ei]=i.parent.id:i.isTopLevel&&(h[Ei]=e.id),n[mt]&&n[mt].length){let y=!(n[mt]||[]).find(w=>w["@explicit"]),S=r.length>0||a.length!==l.length;if(y&&S)for(let w of n[mt]){let v={...w},x=Object.keys(c);if(v){v["@explicit"]=!0;for(let A of l)A!==mt&&(v[A]=Ho);for(let A of x)v[A]=c[A]}m.push(v)}else m.push(...n[mt]);if(S){let w=Object.keys(p);h["@explicit"]=!0;for(let v of r)h[v]=Ho;for(let v of a)h[v]=Ho;for(let v of w)h[v]=p[v]}}h.id=n.id,h.type=n.type,m.push(h),n[mt]=m}return n}else if(e)return e;return t}function tc(e,t,i){if(typeof e=="string")return e;if(t.id!==e.id||t.type!==e.type){if(t.type==="ImageService3")return t;if(e.type==="ImageService3")return e;throw new Error(`Can only merge entities with identical identifiers and type! ${t.type}(${t.id}) => ${e.type}(${e.id})`)}return ec({...e},t,i)}function tA(e){return(t,i)=>n=>{let{id:r,type:a}=G0(n,i||t);if(typeof r>"u")throw new Error("Found invalid entity without an ID.");return t==="ContentResource"||t==="Service"?e[r]=t:e[r]=a,n}}function iA(e){let t=Object.assign({},e);if(t["@id"]&&(t.id=t["@id"]),t["@type"]&&(t.type=t["@type"]),t.service){let i=[];t.service=Array.isArray(t.service)?t.service:[t.service];for(let n of t.service)i.push({id:n["@id"]||n.id,type:n["@type"]||n.type});t.service=i}return Object.assign({},Q0,t)}function nA(e){return t=>{e.Service=e.Service?e.Service:{};let i=t.id||t["@id"],n=iA(t);return n&&n.id&&(e.Service[n.id]?e.Service[i]=tc(e.Service[i],n):e.Service[i]=n),t}}function rA(e){let t=JSON.stringify(e),i=5381,n=t.length;for(;n;)i=i*33^t.charCodeAt(--n);let r=(i>>>0).toString(16);return r.length%2?"0"+r:r}function Yp(e){return t=>typeof t=="string"?{id:t,type:e}:t.id?t.type?t:{type:e,...t}:{id:`vault://${rA(t)}`,type:e,...t}}function Wo(e){return t=>({...e,...t})}function ra(e){return Array.isArray(e)?e:[e]}function oA(e){return e.body&&(e.body=ra(e.body)),e.seeAlso&&(e.seeAlso=ra(e.seeAlso)),e.audience&&(e.audience=ra(e.audience)),e.accessibility&&(e.accessibility=ra(e.accessibility)),e.motivation&&(e.motivation=ra(e.motivation)),e}function Y0(e,{typeHint:t,partOfTypeHint:i}={}){if(typeof e=="string"&&(e={id:e,type:t||"unknown"}),tn(e))return typeof e.source=="string"&&(e.source={id:e.source,type:t||"unknown"}),e.source.type==="Canvas"&&e.source.partOf&&typeof e.source.partOf=="string"&&(e.source.partOf=[{id:e.source.partOf,type:i||"Manifest"}]),e;let n;if((e.id||"").indexOf("#")!==-1){let[r,a]=(e.id||"").split("#");e.id=r,a&&(n={type:"FragmentSelector",value:a})}return{type:"SpecificResource",source:e,selector:n}}function sA(e){let t=Object.assign({},e);return e&&e.items&&(t.items=e.items.map(i=>typeof i=="string"||i.type==="Canvas"?Y0(i):i)),t}function aA(e){let t=Object.assign({},e);return t.start?(t.start=Y0(t.start,{typeHint:"Canvas"}),t):e}function lA(e){let t=Object.assign({},e);return t.target?(t.target=Xp(t.target,{typeHint:"Canvas"}),t):e}function X0(e){return e}function Ju(e){return typeof e.items>"u"&&(e[qo]=!0),e}function ef(e){let t=z0(e),i=$0(),n={},r=eA(i,t),a=tA(n),l=new Gp({collection:[Ju,Wo(U0),a("Collection"),r("Collection")],manifest:[Ju,Wo(W0),aA,a("Manifest"),r("Manifest")],canvas:[Wo(V0),a("Canvas"),r("Canvas")],annotationPage:[Ju,Yp("AnnotationPage"),Wo(j0),a("AnnotationPage"),r("AnnotationPage")],annotation:[Yp("Annotation"),oA,lA,a("Annotation"),r("Annotation")],contentResource:[Yp("ContentResource"),a("ContentResource"),r("ContentResource")],range:[Wo(H0),sA,a("Range","Canvas"),r("Range","Canvas")],agent:[Wo(q0),a("Agent"),r("Agent")],specificResource:[X0],service:[nA(i)]}).traverseUnknown(t);return{entities:i,resource:l,mapping:n}}function K0(e){let t={};for(let[i,n]of e){if(i===Zp&&n!==ji)return n;n!==ji&&typeof n<"u"&&n!==null&&(t[i]=n)}return t}function tf(e,t,i){if(!t.type||!t.id)throw new Error("Unknown entity");if(!i[t.type])throw new Error(`Serializer not found for ${t.type}`);function n(r,a,l=0){let c=i[r.type];if(!c)return ji;if(l>20)throw new Error("Circular reference: "+r.id+" "+r.type);let[p,m]=Jp(e,r.type?r:r.id,a)||(r.id&&r.type?r:null);if(!p)return ji;let h=c(p,e,{parent:a,isTopLevel:t.id===r.id,fullResource:m}),y=h.next();for(;!y.done;){let S=y.value,w=ji;if(S)if(Array.isArray(S)){let v=[];for(let x of S)v.push(n(x,r,l+1));w=v}else w=n(S,r,l+1);y=h.next(w)}return y.value===ji?ji:K0(y.value)}return n(t)}function Qo(e,{allowSourceString:t=!0,allowString:i=!1,allowedStringType:n}={}){let r=a=>{if(t&&a&&a.source&&typeof a.source!="string"){let l=Object.keys(a.source);if(a.source.id&&a.source.type&&l.length===2)return{...a,source:a.source.id}}return a};if(e){if(e.source&&e.source.partOf)return r(e);let a=Object.keys(e);if(a.length===2&&e.type&&e.source||a.length===3&&e.type&&e.source&&a.indexOf("selector")!==-1&&!e.selector)return i&&(!n||n===e.source.type)?e.source.id:e.source.type==="ContentResource"?{type:"SpecificResource",source:e.source.id}:e.source;if(e.selector&&!Array.isArray(e.selector)&&typeof e.selector!="string"&&e.selector.type==="FragmentSelector"){let l=`${e.source.id}#${e.selector.value}`;return i?l:{id:l,type:e.source.type}}}return r(e)}function $r(e){if(!e)return;let t=Object.keys(e);if(t.length!==0){if(t.length===1){let i=t[0];if(!i)return"";let n=(e[i]||[]).join("");return i==="@none"||i==="none"||i==="en"?n:{"@language":i,"@value":n}}return t.map(i=>({"@language":i,"@value":(e[i]||[]).join("")}))}}function Z0(e){return Array.isArray(e)?e.map(t=>Z0(t)):typeof e=="string"?e:e.type&&e.type==="Canvas"?e.id:e}function fr(e,t=!1){if(e)return e.length>1&&!t?e:e[0]||void 0}function uA(e){if(e){if(typeof e=="string")return{"@id":e};if("@id"in e){let t={...e};return delete t["@type"],t}return{"@context":"http://iiif.io/api/image/2/context.json","@id":e.id,profile:`http://iiif.io/api/image/2/profiles/${e.profile}.json`}}}function Hr(e,t){return[["@id",e.id],["@type",t],["format",e.format],["height",e.height],["width",e.width],["viewingDirection",e.viewingDirection!=="left-to-right"?e.viewingDirection:void 0],["license",e.license?e.license:void 0]]}function*qr(e){let t=e.provider?yield e.provider[0]:void 0;return[["label",$r(e.label)],["metadata",e.metadata&&e.metadata.length?e.metadata.map(i=>({label:$r(i.label)||"",value:$r(i.value)||""})):void 0],["description",$r(e.summary)],["thumbnail",fr(yield e.thumbnail)],["navDate",e.navDate],["logo",t?fr(t.logo):void 0],["homepage",t?t.homepage:void 0],["attribution",e.requiredStatement?$r(e.requiredStatement.value):void 0]]}function*oa(e){let t=e.start&&e.start.type&&e.start.type==="SpecificResource"?Qo(e.start):e.start;return[["seeAlso",fr(yield e.seeAlso)],["service",fr((e.service||[]).map(uA))],["rendering",fr(yield e.rendering)],["startCanvas",t?t.id:void 0]]}function cA(e){return e.type==="SpecificResource"}function dA(e){return e&&e.type==="FragmentSelector"}function hA(e){if(e&&cA(e)){let t=e.id,i=e.selector?Array.isArray(e.selector)?e.selector[0]:e.selector:void 0;return dA(i)&&(t+="#"+i.value),t}return e?.id}var nf={Manifest:function*(e,t,{isTopLevel:i}){return[...i?[["@context","http://iiif.io/api/presentation/2/context.json"]]:[],...Hr(e,"sc:Manifest"),...yield*qr(e),...yield*oa(e),["sequences",[{"@id":`${e.id}/sequence0`,"@type":"sc:Sequence",canvases:yield e.items}]],["structures",yield e.structures]]},Canvas:function*(e){let t=(yield e.items)[0];return[...Hr(e,"sc:Canvas"),...yield*qr(e),...yield*oa(e),["images",t?[t.resources]:void 0],["annotations",e.annotations&&e.annotations.length?fr(yield e.annotations):void 0]]},AnnotationPage:function*(e){return[...Hr(e,"sc:AnnotationList"),...yield*qr(e),["resources",e.items&&e.items.length?fr(yield e.items):void 0]]},Annotation:function*(e){return[["@id",e.id],["@type","oa:Annotation"],["motivation","sc:painting"],["on",Z0(e.target)],["resource",fr(yield e.body,!0)]]},ContentResource:function*(e){switch(e.type){case"Image":return[...Hr(e,"dctypes:Image"),...yield*qr(e),...yield*oa(e)];case"Text":case"Dataset":default:return[...Hr(e,void 0),...yield*qr(e)]}},AnnotationCollection:function*(e){return[["@id",e.id],["@type","sc:Layer"],["label",$r(e.label)]]},Collection:function*(e){return[...Hr(e,"sc:Collection"),...yield*qr(e),...yield*oa(e),["members",yield*e.items]]},Range:function*(e){let t=[],i=[];if(e.items)for(let n of e.items){let r=n.type==="SpecificResource"?n.source:n;if(r){let a=yield r;t.push({"@id":hA(n),"@type":r.type,label:a?a.label:void 0,within:e.id}),r.type==="Canvas"&&i.push(r.id)}}return[...Hr(e,"sc:Range"),...yield*qr(e),...yield*oa(e),["canvases",i.length===t.length?i:void 0],["members",i.length!==t.length?t:void 0]]}};function Qr(e){return[["id",e.id?.startsWith("vault://")?void 0:e.id],["type",e.type],["format",e.format],["profile",e.profile],["height",e.height||void 0],["width",e.width||void 0],["duration",e.duration||void 0],["viewingDirection",e.viewingDirection!=="left-to-right"?e.viewingDirection:void 0],["behavior",e.behavior&&e.behavior.length?e.behavior:void 0],["timeMode",e.timeMode],["motivation",Array.isArray(e.motivation)?e.motivation[0]:e.motivation],[mt,ji]]}function bt(e){if(e===ji||!e||e.length===0)return;let t=e.filter(i=>i!==ji);if(t.length!==0)return t}function J0(e){if(e&&e.type&&e.type==="ImageService2"){let{id:t,type:i,profile:n,...r}=e,a=typeof n=="string"?n:Array.isArray(n)?n.find(l=>typeof l=="string"):"";return{"@id":t,"@type":i,profile:a?a.startsWith("http")?a:`http://iiif.io/api/image/2/${a}.json`:"http://iiif.io/api/image/2/level0.json",...r}}return e}function B0(e){if(Array.isArray(e)||(e=e?[e]:[]),!(!e||e.length===0))return e.map(J0)}function*hr(e){return[["label",e.label],["metadata",bt(e.metadata)],["summary",e.summary],["requiredStatement",e.requiredStatement],["rights",Array.isArray(e.rights)?e.rights[0]||void 0:e.rights||void 0],["navDate",e.navDate],["language",e.language],["thumbnail",bt(yield e.thumbnail)],["placeholderCanvas",yield e.placeholderCanvas],["accompanyingCanvas",yield e.accompanyingCanvas],["provider",bt(yield e.provider)]]}function*pr(e,t){let i=[];for(let n of e.partOf||[])n.type==="Manifest"&&t.type==="Manifest"||i.push(yield n);return[["seeAlso",bt(yield e.seeAlso)],["service",bt(B0(e.service))],["services",bt(B0(e.services))],["rendering",bt(yield e.rendering)],["supplementary",bt(yield e.supplementary)],["homepage",bt(yield e.homepage)],["logo",bt(yield e.logo)],["partOf",bt(i)],["start",e.start?Qo(e.start):e.start]]}var rf={Manifest:function*(e,t,{isTopLevel:i}){return i?[["@context",e["@context"]?e["@context"]:"http://iiif.io/api/presentation/3/context.json"],...Qr(e),...yield*hr(e),...yield*pr(e),["items",yield e.items],["structures",bt(yield e.structures)],["annotations",bt(yield e.annotations)],["navPlace",e.navPlace]]:[...Qr(e),...yield*hr(e)]},Canvas:function*(e,t,{parent:i}){return i&&i.type!=="Manifest"&&i.type!=="Canvas"?[["id",e.id]]:[...Qr(e),...yield*hr(e),...yield*pr(e,i),["items",yield e.items],["annotations",bt(yield e.annotations)],["navPlace",e.navPlace]]},Agent:function*(e){return[["id",e.id],["type","Agent"],["label",e.label],...yield*pr(e)]},AnnotationPage:function*(e){let t=Object.entries(e).map(([n,r])=>[n,Array.isArray(r)?bt(r):r]).filter(([n,r])=>n!=="items"&&n!=="id"&&n!==mt&&n!==Ei&&n!==qo),i=yield e.items;return[["id",e.id?.startsWith("vault://")?void 0:e.id],...t,...yield*pr(e),["items",i.length||e[qo]===!1?i:ji]]},Service:function*(e){return[[Zp,J0(e)]]},Annotation:function*(e){let t=Object.entries(e).map(([n,r])=>n==="motivation"?[n,Array.isArray(r)?r[0]:r]:n==="target"?[n,Qo(r,{allowString:!0,allowSourceString:!0,allowedStringType:"Canvas"})]:[n,Array.isArray(r)?bt(r):r]).filter(([n])=>n!=="body"&&n!==mt&&n!==qo),i;if(Array.isArray(e.body)){let n=[];for(let r of e.body)if(r&&tn(r)){let a={...r};r.source.type!=="Canvas"?a.source=yield r.source:a.source=r.source,n.push(Qo(a,{allowSourceString:!0}))}else n.push(yield r);i=n}else e.body&&tn(e.body)?(i={...e.body},i.source=yield e.body.source):i=yield e.body;return[...t,...yield*hr(e),...yield*pr(e),["body",i.length===1?i[0]:i]]},ContentResource:function*(e){return pA([...Qr(e),...yield*hr(e),...yield*pr(e),["annotations",bt(yield e.annotations)],["items",bt(yield e.items)]],e)},AnnotationCollection:function*(e){return[["id",e.id],["type","AnnotationCollection"],["label",e.label]]},Collection:function*(e,t,{isTopLevel:i}){return i?[["@context","http://iiif.io/api/presentation/3/context.json"],...Qr(e),...yield*hr(e),...yield*pr(e),["items",bt(yield e.items)],["navPlace",e.navPlace]]:[...Qr(e),...yield*hr(e)]},Range:function*(e){let t=[];for(let i of e.items)i.type==="Range"?t.push(yield i):i&&i.type==="SpecificResource"?t.push(Qo(i)):t.push(i);return[...Qr(e),...yield*hr(e),...yield*pr(e),["items",t],["annotations",bt(yield e.annotations)],["navPlace",e.navPlace]]}};function pA(e,t){let i=Object.keys(t),n=e.map(([r])=>r);for(let r of i)r===mt||r===qo||n.indexOf(r)===-1&&typeof t[r]<"u"&&e.push([r,t[r]]);return e}var fA=(e,t)=>{let{entities:i,resource:n,mapping:r}=ef(t);if(n.id===void 0)return[na({id:e,message:"ID is not defined in resource."})];let a=[Wu({entities:i}),jp({mapping:r})];return n.id!==e&&(a.push(Dp({id:e,type:n.type})),a.push(Up({requestId:e,actualId:n.id}))),a.push(Wp({id:e})),a},eS=Number.isNaN||function(t){return typeof t=="number"&&t!==t};function mA(e,t){return!!(e===t||eS(e)&&eS(t))}function sf(e,t){if(!Array.isArray(e)||!Array.isArray(t))return e===t;if(e.length!==t.length)return!1;for(let i=0;i<e.length;i++)if(!mA(e[i],t[i]))return!1;return!0}function of(e,t,i){let n=e.iiif.requests[t],r=e.iiif.mapping[t];if(!r||!e.iiif.entities[r][n.resourceUri])return;let a=e.iiif.entities[r][n.resourceUri];if(a&&a[mt]){let l=a[mt].find(c=>i?c[Ei]===i.id:c[Ei]===a.id);return $o(a,l)}return a}function gA(e){return e&&typeof e.then=="function"}function af(e,t,{waitTimeout:i=30}={}){return(n,r)=>{let a=e.getStore(),l=a.getState(),c=l.iiif.requests[n];if(c){if(c.loadingState===jo){let m=of(l,n);if(m)return m}switch(c.loadingState){case Do:break;case ia:return(async()=>{let m,h=!1;try{let y=await Promise.race([new Promise((S,w)=>{h||(m=a.subscribe(()=>{let v=a.getState();if(v.iiif.requests[n].loadingState===Do){w();return}if(v.iiif.requests[n].loadingState===jo){let x=of(v,n);x?S(x):w()}}))}),new Promise((S,w)=>setTimeout(()=>{h=!0,w()},i*60*1e3))]);if(m&&m(),y)return y}catch{m&&m()}})()}}e.dispatch(Vp({id:n}));let p=m=>{if(!m)return;!m.id&&!m["@id"]&&(m["@type"]&&(m["@id"]=n),m.id=n);let h=fA(n,m);return e.dispatch(Uo({actions:h})),of(a.getState(),n)};try{let m=t(n,r);return gA(m)?(async()=>{try{return p(await m)}catch(h){throw e.dispatch(na({id:n,message:h.toString()})),h}})():p(m)}catch(m){throw e.dispatch(na({id:n,message:m.toString()})),m}}}var lf="@iiif/SET_META_VALUE",uf="@iiif/SET_META_VALUE_DYNAMIC",cf="@iiif/UNSET_META_VALUE",yA=ht(lf)(),vA=ht(uf)(),xA=ht(cf)(),df={setMetaValue:yA,setMetaValueDynamic:vA,unsetMetaValue:xA};function hf(){return{Collection:{},Manifest:{},Canvas:{},AnnotationPage:{},AnnotationCollection:{},Annotation:{},ContentResource:{},Range:{},Service:{},Selector:{},Agent:{}}}var Go={},SA=(e,t)=>(i,n,r)=>(r.dispatch=a=>(i(l=>e(l,a),!1,a),a),r.dispatchFromDevtools=!0,{dispatch:(...a)=>r.dispatch(...a),...t}),wA=SA,gf=new Map,ic=e=>{let t=gf.get(e);return t?Object.fromEntries(Object.entries(t.stores).map(([i,n])=>[i,n.getState()])):{}},bA=(e,t,i)=>{if(e===void 0)return{type:"untracked",connection:t.connect(i)};let n=gf.get(i.name);if(n)return{type:"tracked",store:e,...n};let r={connection:t.connect(i),stores:{}};return gf.set(i.name,r),{type:"tracked",store:e,...r}},CA=(e,t={})=>(i,n,r)=>{let{enabled:a,anonymousActionType:l,store:c,...p}=t,m;try{m=(a??(Go.env?Go.env.MODE:void 0)!=="production")&&window.__REDUX_DEVTOOLS_EXTENSION__}catch{}if(!m)return(Go.env?Go.env.MODE:void 0)!=="production"&&a&&console.warn("[zustand devtools middleware] Please install/enable Redux devtools extension"),e(i,n,r);let{connection:h,...y}=bA(c,m,p),S=!0;r.setState=(x,A,C)=>{let I=i(x,A);if(!S)return I;let E=C===void 0?{type:l||"anonymous"}:typeof C=="string"?{type:C}:C;return c===void 0?(h?.send(E,n()),I):(h?.send({...E,type:`${c}/${E.type}`},{...ic(p.name),[c]:r.getState()}),I)};let w=(...x)=>{let A=S;S=!1,i(...x),S=A},v=e(r.setState,n,r);if(y.type==="untracked"?h?.init(v):(y.stores[y.store]=r,h?.init(Object.fromEntries(Object.entries(y.stores).map(([x,A])=>[x,x===y.store?v:A.getState()])))),r.dispatchFromDevtools&&typeof r.dispatch=="function"){let x=!1,A=r.dispatch;r.dispatch=(...C)=>{(Go.env?Go.env.MODE:void 0)!=="production"&&C[0].type==="__setState"&&!x&&(console.warn('[zustand devtools middleware] "__setState" action type is reserved to set state from the devtools. Avoid using it.'),x=!0),A(...C)}}return h.subscribe(x=>{var A;switch(x.type){case"ACTION":if(typeof x.payload!="string"){console.error("[zustand devtools middleware] Unsupported action format");return}return pf(x.payload,C=>{if(C.type==="__setState"){if(c===void 0){w(C.state);return}Object.keys(C.state).length!==1&&console.error(`
|
|
72
|
+
`}),n.htmlChildren]})},Mu=()=>(0,o0.useContext)(Iu),ku=()=>{let e=Mu();return e?e.runtime:void 0};var a0=(e,t=[])=>{let i=ku();(0,s0.useEffect)(()=>i?i.registerHook("useFrame",e):()=>{},t)},Ou=()=>{let e=Mu();return e&&e.canvas?e.canvas:void 0};function QP(){return(0,l0.useContext)(Tu)}async function $P(e,t,i){if(u0.version.startsWith("18.")){let n=await Promise.resolve().then(()=>T(bx(),1)),r=n.default?n.default.createRoot:n.createRoot;i.current||(i.current=r(e)),i.current.render(t)}else if(typeof ReactDOM<"u"){let{render:n,unmountComponentAtNode:r}=ReactDOM;n(t,e),i.current={unmount(){r(e)}}}else{let n=await Promise.resolve().then(()=>T(Hs(),1)),r=n.default?n.default.render:n.render,a=n.default?n.default.unmountComponentAtNode:n.unmountComponentAtNode;r(t,e),i.current={unmount(){a(e)}}}}var Cn=Sn.default.forwardRef(({children:e,...t},i)=>{let n=(0,Sn.useRef)(),r=ku(),a=(0,Sn.useRef)(0),l=(0,Sn.useRef)(),c=(0,Sn.useRef)();return a0(()=>{if(t.relative){let p=n.current;if(p&&r){let m=r.getScaleFactor();a.current!==m&&(a.current=m,p.style.transformOrigin="0 0",p.style.transform=`scale(${1/a.current})`,p.style.width=`${a.current*100}%`,p.style.height=`${a.current*100}%`,n.current&&l.current?.__owner.value?.rotation&&(p.style.transform=`scale(${1/a.current}) translate(50%, 50%) rotate(${l.current?.__owner.value?.rotation||0}deg) translate(-50%, -50%)`))}}},[t.relative]),(0,Sn.useLayoutEffect)(()=>{let p=l.current;i&&p&&(typeof i=="function"?i(p):i.current=p);async function m(){if(p&&p.__host){let h=t.relative?(0,Rp.jsx)("div",{ref:n,children:e}):e;await $P(p.__host.element,h,c)}}p&&p.__host?m():p&&(p.__onCreate=m)},[i,e,l,t.relative]),(0,Sn.useLayoutEffect)(()=>()=>{c.current&&setTimeout(()=>{c.current.unmount()},0)},[]),(0,Rp.jsx)("box",{html:!0,...t,ref:l})});Cn.displayName="HTMLPortal";var zx=(e,t,i=[])=>{let n=ku(),r=n?n.world:void 0;(0,d0.useEffect)(()=>{if(n){let a=t,l=Fo[e];n.world.activatedEvents.push(l);let c=l.slice(2).toLowerCase();return n.world.addEventListener(c,a),()=>{n.world.removeEventListener(c,a)}}return()=>{}},[r,e,...i])};function Fx(e,t){if(e===0)return[0,1];if(t===0)return[1,0];let i=Math.abs(e)/Math.abs(t);return[i,1-i]}function GP(){let e=(0,Lu.useRef)({ctrl:!1,shift:!1,alt:!1});return(0,Lu.useLayoutEffect)(()=>{function t(n){n.key==="Shift"&&(e.current.shift=!0),n.key==="Control"&&(e.current.ctrl=!0),n.key==="Alt"&&(e.current.alt=!0)}function i(n){n.key==="Shift"&&(e.current.shift=!1),n.key==="Control"&&(e.current.ctrl=!1),n.key==="Alt"&&(e.current.alt=!1)}return window.addEventListener("keydown",t),window.addEventListener("keyup",i),()=>{window.removeEventListener("keydown",t),window.removeEventListener("keyup",i)}},[]),e}var YP=(e,t)=>{let i=TP(),n=ku(),r=QP(),a=(0,_t.useRef)(),l=(0,_t.useRef)(null),c=(0,_t.useRef)(),[p,m]=(0,_t.useState)(!1),h=(0,_t.useRef)(!1),y=(0,_t.useRef)({north:0,south:0,east:0,west:0}),S=GP(),w=(0,_t.useCallback)(I=>E=>{if(h.current=!0,m(!0),r&&n){let{top:O,left:L}=r,M=n.viewerToWorld(E.pageX-L,E.pageY-O);c.current={x:M.x,y:M.y},a.current=I}},[r,n]),v=(0,_t.useMemo)(()=>e.width/e.height,[e.width,e.height]),x=(0,_t.useCallback)(I=>{if(!Math.abs(I.north-I.south+(I.east-I.west)))return;let E=-I.west+I.east,O=-I.north+I.south,L=e.width+E,M=e.height+O;if(L/M>=v){let Q=M*v,V=L-Q,[J,U]=Fx(I.east,I.west);I.west=I.west+V*U,I.east=I.east-V*J}else{let Q=L/v,V=M-Q,[J,U]=Fx(I.north,I.south);I.north=I.north+V*J,I.south=I.south-V*U}},[e.width,e.height,v]);a0(()=>{c&&n&&n.updateNextFrame()}),(0,_t.useEffect)(()=>{n&&n.updateNextFrame()},[n,p]);let A=(0,_t.useCallback)(I=>{if(!n||!r||n.mode!=="sketch")return;let{top:E,left:O}=r,L=n.viewerToWorld(I.pageX-O,I.pageY-E),M=l.current,Q=!e.maintainAspectRatio&&S.current.alt,V=!Q&&S.current.shift&&a.current?.indexOf("-")!==-1;if((a.current==="translate"||a.current==="east"||a.current==="north-east"||a.current==="south-east")&&(y.current.east=L.x-(c.current?c.current.x:0),Q&&(y.current.west=-y.current.east)),(a.current==="translate"||a.current==="west"||a.current==="north-west"||a.current==="south-west")&&(y.current.west=L.x-(c.current?c.current.x:0),Q&&(y.current.east=-y.current.west)),(a.current==="translate"||a.current==="north"||a.current==="north-east"||a.current==="north-west")&&(y.current.north=L.y-(c.current?c.current.y:0),Q&&(y.current.south=-y.current.north)),(a.current==="translate"||a.current==="south"||a.current==="south-west"||a.current==="south-east")&&(y.current.south=L.y-(c.current?c.current.y:0),Q&&(y.current.north=-y.current.south)),(e.maintainAspectRatio||V)&&x(y.current),M){let J=y.current.west,U=y.current.north,q=e.width+y.current.east,ee=e.height+y.current.south;M.points[1]=Math.min(J,q),M.points[2]=Math.min(U,ee),M.points[3]=Math.max(J,q),M.points[4]=Math.max(U,ee),n.updateNextFrame()}},[n,e.width,e.height,e.maintainAspectRatio,r]);zx("mousemove",A,[e.width,e.height,r]),zx("pointermove",A,[e.width,e.height,r]);let C=(0,_t.useRef)();return(0,_t.useEffect)(()=>{C.current=()=>{if(h.current){let I=y.current.west,E=y.current.north,O=e.width+y.current.east,L=e.height+y.current.south,M=Math.min(I,O),Q=Math.min(E,L),V=Math.max(I,O),J=Math.max(E,L),U={x:(e.x||0)+M,y:(e.y||0)+Q,width:V-M||1,height:J-Q||1};e.maintainAspectRatio,t(U),a.current=void 0,c.current=void 0,y.current.east=0,y.current.west=0,y.current.north=0,y.current.south=0,h.current=!1,m(!1)}}},[t,e.height,e.width,e.x,e.y]),(0,_t.useEffect)(()=>{let I=()=>{C.current&&C.current()};return window.addEventListener("pointerup",I),window.addEventListener("touchend",I),()=>{window.removeEventListener("pointerup",I),window.removeEventListener("touchend",I)}},[]),{portalRef:l,mode:i,mouseEvent:w,onPointerMoveCallback:A,isEditing:p}};function XP({handleSize:e,resizable:t,onSave:i,children:n,maintainAspectRatio:r,disableCardinalControls:a,...l}){let c=typeof e>"u"?r?10:8:e,{portalRef:p,mode:m,mouseEvent:h,isEditing:y}=YP({x:l.x||0,y:l.y||0,width:l.width,height:l.height,maintainAspectRatio:r},i),S=(0,xn.useMemo)(()=>h("translate"),[h]),w=(0,xn.useMemo)(()=>h("east"),[h]),v=(0,xn.useMemo)(()=>h("west"),[h]),x=(0,xn.useMemo)(()=>h("south"),[h]),A=(0,xn.useMemo)(()=>h("north"),[h]),C=(0,xn.useMemo)(()=>h("south-east"),[h]),I=(0,xn.useMemo)(()=>h("south-west"),[h]),E=(0,xn.useMemo)(()=>h("north-east"),[h]),O=(0,xn.useMemo)(()=>h("north-west"),[h]),L=m==="sketch",M={zIndex:999,boxShadow:"0px 2px 3px 0 rgba(0,0,0,0.2)",border:"1px solid rgba(155,155,155,.7)",borderRadius:r||a?"50%":2,position:"absolute",background:"#fff",pointerEvents:y?"none":L?"initial":"none"};return(0,St.jsx)(St.Fragment,{children:(0,St.jsxs)("world-object",{...l,children:[n,L&&t?(0,St.jsx)(Cn,{ref:p,target:{x:0,y:0,height:l.height,width:l.width},relative:!0,interactive:!1,children:L&&t?(0,St.jsxs)(St.Fragment,{children:[(0,St.jsx)("div",{onMouseDown:S,onTouchStart:S,style:{display:"block",width:"100%",height:"100%",position:"relative",border:"1px solid rgba(155,155,155, .7)",boxSizing:"border-box",pointerEvents:y?"none":L?"initial":"none"}}),r?null:(0,St.jsxs)(St.Fragment,{children:[(0,St.jsx)("div",{title:"east",onTouchStart:w,onMouseDown:w,style:{...M,cursor:"e-resize",height:c*2,width:c,right:0,top:"50%",opacity:a?0:1,transform:`translate(${c/2}px, -${c}px)`}}),(0,St.jsx)("div",{title:"west",onMouseDown:v,style:{...M,cursor:"w-resize",position:"absolute",height:c*2,width:c,left:0,top:"50%",opacity:a?0:1,transform:`translate(-${c/2}px, -${c}px)`}}),(0,St.jsx)("div",{title:"north",onMouseDown:A,style:{...M,cursor:"n-resize",position:"absolute",height:c,width:c*2,left:"50%",top:0,opacity:a?0:1,transform:`translate(-${c}px, -${c/2}px)`}}),(0,St.jsx)("div",{title:"south",onMouseDown:x,style:{...M,cursor:"s-resize",position:"absolute",height:c,width:c*2,left:"50%",bottom:0,opacity:a?0:1,transform:`translate(-${c}px, ${c/2}px)`}})]}),(0,St.jsx)("div",{title:"north-east",onMouseDown:E,style:{...M,cursor:"ne-resize",position:"absolute",height:c,width:c,right:0,top:0,transform:`translate(${c/2}px, -${c/2}px)`}}),(0,St.jsx)("div",{title:"south-east",onMouseDown:C,style:{...M,cursor:"se-resize",position:"absolute",height:c,width:c,bottom:0,right:0,transform:`translate(${c/2}px, ${c/2}px)`}}),(0,St.jsx)("div",{title:"south-west",onMouseDown:I,style:{...M,cursor:"sw-resize",position:"absolute",height:c,width:c,bottom:0,left:0,transform:`translate(-${c/2}px, ${c/2}px)`}}),(0,St.jsx)("div",{title:"north-west",onMouseDown:O,style:{...M,cursor:"nw-resize",position:"absolute",height:c,width:c,top:0,left:0,transform:`translate(-${c/2}px, -${c/2}px)`}})]}):null}):null]})})}function h0({interactive:e,region:t,onClick:i,onSave:n,maintainAspectRatio:r,disableCardinalControls:a,isEditing:l,rotation:c,style:p={backgroundColor:"rgba(0,0,0,.5)"}}){let m=(0,c0.useCallback)(h=>{n({id:t.id,x:t.x,y:t.y,height:t.height,width:t.width,...h})},[n,t.id,t.x,t.y,t.height,t.width]);return(0,_p.jsx)(XP,{x:t.x,y:t.y,rotation:c,width:t.width,height:t.height,resizable:l,onSave:m,maintainAspectRatio:r,disableCardinalControls:a,children:(0,_p.jsx)("box",{interactive:e,onClick:h=>{h.preventDefault(),h.stopPropagation(),i(t)},target:{x:0,y:0,width:t.width,height:t.height},style:p})})}var Fp=e=>{let t=e.width/(e.crop?.width||e.tiles.width),i=e.tiles.imageService.sizes||[],n=e.enableThumbnail,r=e.enableSizes,a=(0,Mp.useMemo)(()=>{let c=e.tiles.imageService.id||e.tiles.imageService["@id"];return c&&c.endsWith("/info.json")?c.slice(0,-1*10):c},[e.tiles.imageService.id]),l=(0,Mp.useMemo)(()=>{let c=e.tiles.imageService.tiles||[];if(!c.length){let p=e.width,m=[1],h=1;for(;Math.pow(2,h)<p;)h=h*2,m.push(h);return[{width:256,height:256,scaleFactors:[1,2,4,8]}]}return c},[e.tiles.imageService]);return(0,Vr.jsx)("world-object",{rotation:e.rotation,scale:t,height:e.crop?.height||e.tiles.height,width:e.crop?.width||e.tiles.width,x:e.x,y:e.y,onClick:e.onClick,children:(0,Vr.jsxs)("composite-image",{id:e.tiles.imageService.id,width:e.crop?.width||e.tiles.width,height:e.crop?.height||e.tiles.height,crop:e.crop,renderOptions:e.renderOptions,children:[n&&e.tiles.thumbnail?(0,Vr.jsx)("world-image",{priority:!0,uri:e.tiles.thumbnail.id,target:{width:e.tiles.width,height:e.tiles.height},display:{width:e.tiles.thumbnail.width,height:e.tiles.thumbnail.height},crop:e.crop}):null,r&&i.map((c,p)=>(0,Vr.jsx)("world-image",{uri:`${a}/full/${c.width},${c.height}/0/default.jpg`,target:{width:e.tiles.width,height:e.tiles.height},display:{width:c.width,height:c.height},crop:e.crop},p)),l.map(c=>(c.scaleFactors||[]).map(p=>(0,Vr.jsx)("tiled-image",{uri:e.tiles.imageService.id,display:{width:e.tiles.width,height:e.tiles.height},tile:c,scaleFactor:p,crop:e.crop},`${e.tiles.imageService.id}-tile-${p}`)))]},e.tiles.imageService.id)},e.tiles.imageService.id)};function m0(e,t){return e?t?{...e,...t||{},":hover":e[":hover"]?Object.assign(e[":hover"]||{},t[":hover"]||{}):t[":hover"],":active":e[":active"]?Object.assign(e[":active"]||{},t[":active"]||{}):t[":hover"]}:e:t}var Pi=T(H()),tE=(0,Pi.createContext)(null),Np={didCatch:!1,error:null},Bo=class extends Pi.Component{constructor(t){super(t),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=Np}static getDerivedStateFromError(t){return{didCatch:!0,error:t}}resetErrorBoundary(){let{error:t}=this.state;if(t!==null){for(var i,n,r=arguments.length,a=new Array(r),l=0;l<r;l++)a[l]=arguments[l];(i=(n=this.props).onReset)===null||i===void 0||i.call(n,{args:a,reason:"imperative-api"}),this.setState(Np)}}componentDidCatch(t,i){var n,r;(n=(r=this.props).onError)===null||n===void 0||n.call(r,t,i)}componentDidUpdate(t,i){let{didCatch:n}=this.state,{resetKeys:r}=this.props;if(n&&i.error!==null&&iE(t.resetKeys,r)){var a,l;(a=(l=this.props).onReset)===null||a===void 0||a.call(l,{next:r,prev:t.resetKeys,reason:"keys"}),this.setState(Np)}}render(){let{children:t,fallbackRender:i,FallbackComponent:n,fallback:r}=this.props,{didCatch:a,error:l}=this.state,c=t;if(a){let p={error:l,resetErrorBoundary:this.resetErrorBoundary};if(typeof i=="function")c=i(p);else if(n)c=(0,Pi.createElement)(n,p);else if(r===null||(0,Pi.isValidElement)(r))c=r;else throw l}return(0,Pi.createElement)(tE.Provider,{value:{didCatch:a,error:l,resetErrorBoundary:this.resetErrorBoundary}},c)}};function iE(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return e.length!==t.length||e.some((i,n)=>!Object.is(i,t[n]))}var Ai=T(H(),1);var Do=T(H(),1),g0=T(B(),1),nE={collection:void 0,manifest:void 0,range:void 0,canvas:void 0,annotation:void 0,annotationPage:void 0},ea=Do.default.createContext(nE),Xt=()=>(0,Do.useContext)(ea);function ei({value:e,children:t}){let i=Xt(),n=(0,Do.useMemo)(()=>({...i,...e}),[e,i]);return(0,g0.jsx)(ea.Provider,{value:n,children:t})}var nc=T(H(),1);var ht=function(t){return function(){let i={type:t,getType:()=>t,toString:()=>t};return(n,r)=>({...i,...n!==void 0&&{payload:n},...r!==void 0&&{meta:r}})}},zu="@iiif/IMPORT_ENTITIES",Fu="@iiif/MODIFY_ENTITY_FIELD",Nu="@iiif/REORDER_ENTITY_FIELD",Bu="@iiif/ADD_REFERENCE",ta="@iiif/UPDATE_REFERENCE",Du="@iiif/REMOVE_REFERENCE",ju="@iiif/ADD_METADATA",Vu="@iiif/REMOVE_METADATA",ia="@iiif/UPDATE_METADATA",Uu="@iiif/REORDER_METADATA",Wu=ht(zu)(),y0=ht(Fu)(),v0=ht(Nu)(),x0=ht(Bu)(),S0=ht(Du)(),w0=ht(ta)(),b0=ht(ju)(),C0=ht(ia)(),P0=ht(Vu)(),E0=ht(Uu)(),Ur={importEntities:Wu,modifyEntityField:y0,reorderEntityField:v0,addReference:x0,removeReference:S0,updateReference:w0,addMetadata:b0,removeMetadata:P0,updateMetadata:C0,reorderMetadata:E0},Hu="@iiif/ADD_MAPPING",qu="@iiif/ADD_MAPPINGS",Bp=ht(Hu)(),Dp=ht(qu)();var jo="RESOURCE_ERROR",na="RESOURCE_LOADING",Vo="RESOURCE_READY",Qu="@iiif/REQUEST_RESOURCE",$u="@iiif/REQUEST_ERROR",Gu="@iiif/REQUEST_MISMATCH",Yu="@iiif/REQUEST_COMPLETE",Xu="@iiif/REQUEST_OFFLINE_RESOURCE",jp=ht(Qu)(),ra=ht($u)(),Vp=ht(Gu)(),Up=ht(Yu)(),rE=ht(Xu)();var Uo="@iiif/BATCH",Ku="@iiif/BATCH_IMPORT",Wo=ht(Uo)(),oE=ht(Ku)();function en(e){for(let t in e)(typeof e[t]>"u"||e[t]===null)&&delete e[t];return e}function Nn(e){return Array.isArray(e)?e:e?[e]:[]}var A0=["sc:Collection","sc:Manifest","sc:Canvas","sc:AnnotationList","oa:Annotation","sc:Range","sc:Layer","sc:Sequence","oa:Choice","Service","ContentResource"];function sE(e){if(typeof e>"u"||e===null)throw new Error("Null or undefined is not a valid entity.");if(Array.isArray(e))throw new Error("Array is not a valid entity");if(typeof e!="object")throw new Error(`${typeof e} is not a valid entity`);if(typeof e["@type"]=="string"){let t=A0.indexOf(e["@type"]);if(t!==-1)return A0[t]}if(e.profile)return"Service";if(e.format||e["@type"])return"ContentResource";throw new Error("Resource type is not known")}var aE=class _0{constructor(t,i={}){vn(this,"traversals"),vn(this,"options"),this.traversals={collection:[],manifest:[],canvas:[],annotationList:[],sequence:[],annotation:[],contentResource:[],choice:[],range:[],service:[],layer:[],...t},this.options={convertPropsToArray:!0,mergeMemberProperties:!0,allowUndefinedReturn:!1,...i}}static all(t){return new _0({collection:[t],manifest:[t],canvas:[t],annotationList:[t],sequence:[t],annotation:[t],contentResource:[t],choice:[t],range:[t],service:[t],layer:[t]})}traverseCollection(t){return this.traverseType(this.traverseDescriptive(this.traverseLinking(this.traverseCollectionItems(t))),this.traversals.collection)}traverseCollectionItems(t){if(this.options.mergeMemberProperties){let i=[...(t.manifests||[]).map(n=>typeof n=="string"?{"@id":n,"@type":"sc:Manifest"}:n),...(t.collections||[]).map(n=>typeof n=="string"?{"@id":n,"@type":"sc:Collection"}:n),...t.members||[]];delete t.collections,delete t.manifests,t.members=i}return t.manifests&&(t.manifests=t.manifests.map(i=>this.traverseManifest(typeof i=="string"?{"@id":i,"@type":"sc:Manifest"}:i))),t.collections&&(t.collections=t.collections.map(i=>this.traverseCollection(typeof i=="string"?{"@id":i,"@type":"sc:Collection"}:i))),t.members&&(t.members=t.members.map(i=>typeof i=="string"?i:this.traverseUnknown(i))),t}traverseManifest(t){return this.traverseType(this.traverseDescriptive(this.traverseLinking(this.traverseManifestItems(t))),this.traversals.manifest)}traverseManifestItems(t){return t.sequences&&(t.sequences=t.sequences.map(i=>this.traverseSequence(i))),t.structures&&(t.structures=t.structures.map(i=>this.traverseRange(i))),t}traverseSequence(t){return this.traverseType(this.traverseDescriptive(this.traverseLinking(this.traverseSequenceItems(t))),this.traversals.sequence)}traverseSequenceItems(t){return t.canvases&&(t.canvases=t.canvases.map(i=>this.traverseCanvas(i))),t}traverseCanvas(t){return this.traverseType(this.traverseDescriptive(this.traverseLinking(this.traverseCanvasItems(t))),this.traversals.canvas)}traverseCanvasItems(t){return t.images&&(t.images=t.images.map(i=>this.traverseAnnotation(i))),t.otherContent&&(t.otherContent=t.otherContent.map(i=>this.traverseAnnotationList(i))),t}traverseRange(t){return this.traverseType(this.traverseDescriptive(this.traverseLinking(this.traverseRangeItems(t))),this.traversals.range)}traverseRangeItems(t){if(this.options.mergeMemberProperties){let i=[...(t.ranges||[]).map(n=>typeof n=="string"?{"@id":n,"@type":"sc:Range"}:n),...(t.canvases||[]).map(n=>typeof n=="string"?{"@id":n,"@type":"sc:Canvas"}:n),...t.members||[]];delete t.ranges,delete t.canvases,t.members=i.length?i.map(n=>this.traverseUnknown(n)):void 0}return t}traverseAnnotationList(t){let i=typeof t=="string"?{"@id":t,"@type":"sc:AnnotationList"}:t;return this.traverseType(this.traverseDescriptive(this.traverseAnnotationListItems(i)),this.traversals.annotationList)}traverseAnnotationListItems(t){return t.resources&&(t.resources=t.resources.map(i=>this.traverseAnnotation(i))),t}traverseAnnotation(t){return this.traverseType(this.traverseDescriptive(this.traverseLinking(this.traverseAnnotationItems(t))),this.traversals.annotation)}traverseAnnotationItems(t){return t.resource&&(Array.isArray(t.resource)?t.resource=t.resource.map(i=>this.traverseContentResource(i)):t.resource=this.traverseContentResource(t.resource)),t.on,t}traverseLayer(t){return this.traverseType(this.traverseLinking(this.traverseLayerItems(t)),this.traversals.layer)}traverseLayerItems(t){return t.otherContent&&(t.otherContent=t.otherContent.map(i=>this.traverseAnnotationList(i))),t}traverseChoice(t){return this.traverseType(this.traverseChoiceItems(t),this.traversals.choice)}traverseChoiceItems(t){return t.default&&t.default!=="rdf:nil"&&(t.default=this.traverseContentResource(t.default)),t.item&&t.item!=="rdf:nil"&&(t.item=t.item.map(i=>this.traverseContentResource(i))),t}traverseService(t){return this.traverseType(this.traverseLinking(t),this.traversals.service)}traverseContentResource(t){return t["@type"]==="oa:Choice"?this.traverseChoice(t):this.traverseType(this.traverseDescriptive(this.traverseLinking(t)),this.traversals.contentResource)}traverseUnknown(t){if(!t["@type"]||typeof t=="string")return t;switch(sE(t)){case"sc:Collection":return this.traverseCollection(t);case"sc:Manifest":return this.traverseManifest(t);case"sc:Canvas":return this.traverseCanvas(t);case"sc:Sequence":return this.traverseSequence(t);case"sc:Range":return this.traverseRange(t);case"oa:Annotation":return this.traverseAnnotation(t);case"sc:AnnotationList":return this.traverseAnnotationList(t);case"sc:Layer":return this.traverseLayer(t);case"Service":return this.traverseService(t);case"oa:Choice":return this.traverseChoice(t);case"ContentResource":return this.traverseContentResource(t)}return t.profile?this.traverseService(t):t}traverseImageResource(t){let i=Array.isArray(t),n=Array.isArray(t)?t:[t],r=[];for(let a of n)typeof a=="string"?r.push(this.traverseContentResource({"@id":a,"@type":"dctypes:Image"})):r.push(this.traverseContentResource(a));return!i&&!this.options.convertPropsToArray?r[0]:r}traverseDescriptive(t){return t.thumbnail&&(t.thumbnail=this.traverseImageResource(t.thumbnail)),t.logo&&(t.logo=this.traverseImageResource(t.logo)),t}traverseOneOrMoreServices(t){let i=Array.isArray(t),n=Array.isArray(t)?t:[t],r=[];for(let a of n)r.push(this.traverseService(a));return!i&&!this.options.convertPropsToArray?r[0]:r}traverseLinking(t){return t.related&&(t.related=this.traverseOneOrManyType(t.related,this.traversals.contentResource)),t.rendering&&(t.rendering=this.traverseOneOrManyType(t.rendering,this.traversals.contentResource)),t.service&&(t.service=this.traverseOneOrMoreServices(t.service)),t.seeAlso&&(t.seeAlso=this.traverseOneOrManyType(t.seeAlso,this.traversals.contentResource)),t.within&&(typeof t.within=="string"||(t.within=this.traverseOneOrManyType(t.within,this.traversals.contentResource))),t.startCanvas&&(typeof t.startCanvas=="string"?t.startCanvas=this.traverseType({"@id":t.startCanvas,"@type":"sc:Canvas"},this.traversals.canvas):t.startCanvas&&this.traverseType(t.startCanvas,this.traversals.canvas)),t.contentLayer&&(typeof t.contentLayer=="string"?t.contentLayer=this.traverseLayer({"@id":t.contentLayer,"@type":"sc:Layer"}):t.contentLayer=this.traverseLayer(t.contentLayer)),t}traverseOneOrManyType(t,i){if(!Array.isArray(t))if(this.options.convertPropsToArray)t=[t];else return this.traverseType(t,i);return t.map(n=>this.traverseType(n,i))}traverseType(t,i){return i.reduce((n,r)=>{let a=r(n);return typeof a>"u"&&!this.options.allowUndefinedReturn?n:a},t)}},lE="http://library.stanford.edu/iiif/image-api/compliance.html#level1",uE="http://library.stanford.edu/iiif/image-api/compliance.html#level2",cE="http://library.stanford.edu/iiif/image-api/conformance.html#level1",dE="http://library.stanford.edu/iiif/image-api/conformance.html#level2",hE="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level1",pE="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2",fE="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level1",mE="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level2",gE="http://iiif.io/api/image/1/level1.json",yE="http://iiif.io/api/image/1/profiles/level1.json",vE="http://iiif.io/api/image/1/level2.json",xE="http://iiif.io/api/image/1/profiles/level2.json",SE="http://iiif.io/api/image/2/level1.json",wE="http://iiif.io/api/image/2/profiles/level1.json",bE="http://iiif.io/api/image/2/level2.json",CE="http://iiif.io/api/image/2/profiles/level2.json",PE="level1",EE="level2",AE="http://iiif.io/api/image/2/level1",IE="http://iiif.io/api/image/2/level2",TE=[AE,IE,lE,uE,cE,dE,hE,pE,fE,mE,gE,yE,vE,xE,SE,wE,bE,CE,PE,EE],Wp={attributionLabel:"Attribution",lang:"none",providerId:"http://example.org/provider",providerName:"Unknown"};function RE(e){if(typeof e=="string")return[e];if(!e)return[];let t=Array.isArray(e)?e:[e],i=[];for(let n of t){if(typeof n=="string"){i.push(n);continue}i.push({"@language":n["@language"]||n.language,"@value":n["@value"]||n.value})}return i}function Wr(e,t="none"){if(!e)return{none:[""]};let i=RE(e),n={};for(let r of i){if(typeof r=="string"){n[t]=n[t]?n[t]:[],n[t].push(r||"");continue}if(!r["@language"]){n[t]=n[t]?n[t]:[],n[t].push(r["@value"]||"");continue}let a=r["@language"];n[a]=n[a]?n[a]:[],n[a].push(r["@value"]||"")}return Object.keys(n).length===0?{none:[""]}:n}function M0(e){if(Array.isArray(e))return M0(e.find(t=>typeof t=="string"));if(Oo.indexOf(e)!==-1)return"level2";if(TE.indexOf(e)!==-1)return"level1";if(mp.indexOf(e)!==-1)return"level0";if(typeof e=="string")return e}function _E(e){let t=Array.isArray(e)?e:[e];for(let i of t)switch(i){case"http://iiif.io/api/image/2/context.json":case"http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2":return"ImageService2";case"http://iiif.io/api/image/1/context.json":case"http://library.stanford.edu/iiif/image-api/1.1/context.json":return"ImageService1";case"http://iiif.io/api/annex/openannotation/context.json":return"ImageApiSelector"}}function ME(e){switch(e){case"http://iiif.io/api/image/2/level0.json":case"http://iiif.io/api/image/2/level1.json":case"http://iiif.io/api/image/2/level2.json":return"ImageService2";case"http://iiif.io/api/auth/1/kiosk":case"http://iiif.io/api/auth/1/login":case"http://iiif.io/api/auth/1/clickthrough":case"http://iiif.io/api/auth/1/external":case"http://iiif.io/api/auth/0/kiosk":case"http://iiif.io/api/auth/0/login":case"http://iiif.io/api/auth/0/clickthrough":case"http://iiif.io/api/auth/0/external":return"AuthCookieService1";case"http://iiif.io/api/auth/1/token":case"http://iiif.io/api/auth/0/token":return"AuthTokenService1";case"http://iiif.io/api/auth/1/logout":case"http://iiif.io/api/auth/0/logout":return"AuthLogoutService1";case"http://iiif.io/api/search/1/search":case"http://iiif.io/api/search/0/search":return"SearchService1";case"http://iiif.io/api/search/1/autocomplete":case"http://iiif.io/api/search/0/autocomplete":return"AutoCompleteService1"}}function I0(e){for(let t of["sc","oa","dcterms","dctypes","iiif"])if(e.startsWith(`${t}:`))return e.slice(t.length+1);return e}var kE=["Collection","Manifest","Annotation","AnnotationPage","Range","Service"];function qp(e){let t=e["@id"]||e.id,i=e["@type"]||e.type,n=e.profile||void 0,r=e["@context"]||void 0;if(n){let a=ME(n);if(a)return a}if(r){let a=_E(r);if(a)return a}if(i){if(Array.isArray(i)){if(i.indexOf("oa:CssStylesheet")!==-1)return"CssStylesheet";if(i.indexOf("cnt:ContentAsText")!==-1)return"TextualBody";i=i[0]}for(let a of["sc","oa","dcterms","dctypes","iiif"])if(i.startsWith(`${a}:`)){i=i.slice(a.length+1);break}switch(i){case"Layer":return"AnnotationCollection";case"AnnotationList":return"AnnotationPage";case"cnt:ContentAsText":return"TextualBody"}}if(i&&kE.indexOf(i)!==-1)return i;if(e.format){if(e.format.startsWith("image/"))return"Image";if(e.format.startsWith("text/")||e.format==="application/pdf")return"Text";if(e.format.startsWith("application/"))return"Dataset"}return t&&(t.endsWith(".jpg")||t.endsWith(".png")||t.endsWith(".jpeg"))?"Image":i||"unknown"}var OE=/http(s)?:\/\/(creativecommons.org|rightsstatements.org)[^"'\\<\n]+/gm;function LE(e){let t=e.match(OE);return t?t[0]:e}function zE(e,t="Rights/License",i="none"){let n=null,r=[],a=Array.isArray(e)?e:[e];for(let l of a){let c=l?LE(l):void 0;if(c&&(c.indexOf("creativecommons.org")!==-1||c.indexOf("rightsstatements.org")!==-1)){c.startsWith("https://")?n=`http://${c.slice(8)}`:n=c;continue}c&&r.push({label:{[i]:[t]},value:{[i]:[c]}})}return[n,r]}var FE=["http://iiif.io/api/presentation/2/context.json","http://iiif.io/api/image/2/context.json","http://iiif.io/api/image/1/context.json","http://library.stanford.edu/iiif/image-api/1.1/context.json","http://iiif.io/api/search/1/context.json","http://iiif.io/api/search/0/context.json","http://iiif.io/api/auth/1/context.json","http://iiif.io/api/auth/0/context.json","http://iiif.io/api/annex/openannotation/context.json"];function NE(e){if(e){let t=Array.isArray(e)?e:[e],i=[];for(let n of t)n==="http://iiif.io/api/presentation/2/context.json"&&i.push("http://iiif.io/api/presentation/3/context.json"),FE.indexOf(n)===-1&&i.push(n);if(t.length)return i.length===1?i[0]:i}}function BE(e){return e?e.map(t=>({label:Wr(t.label),value:Wr(t.value)})):[]}var T0=0;function k0(e,t){let i=encodeURI(e.id||e["@id"]||"").trim();return i&&t?`${i}/${t}`:i||(T0++,`http://example.org/${e["@type"]}${t?`/${t}`:""}/${T0}`)}function Bn(e){let t=[...e.behavior||[]];e.viewingHint&&t.push(e.viewingHint);let i;return Array.isArray(e.motivation)?i=e.motivation.map(I0):e.motivation&&(i=I0(e.motivation)),{"@context":e["@context"]?NE(e["@context"]):void 0,id:(e["@id"]||k0(e)).trim(),type:qp(e),behavior:t.length?t:void 0,height:e.height?e.height:void 0,width:e.width?e.width:void 0,motivation:i,viewingDirection:e.viewingDirection,profile:e.profile,format:e.format?e.format:void 0,duration:void 0,timeMode:void 0}}function Dn(e){let[t,i]=zE(e.license),n=[...e.metadata?BE(e.metadata):[],...i];return{rights:t,metadata:n.length?n:void 0,label:e.label?Wr(e.label):void 0,requiredStatement:e.attribution?{label:Wr(Wp.attributionLabel),value:Wr(e.attribution)}:void 0,navDate:e.navDate,summary:e.description?Wr(e.description):void 0,thumbnail:DE(e.thumbnail)}}function DE(e){return e&&(Array.isArray(e)?e:[e]).map(t=>typeof t=="string"?{id:t,type:"Image"}:(t.type==="unknown"&&(t.type="Image"),t))}function jE(e){if(!e.within)return;let t=Array.isArray(e.within)?e.within:[e.within],i=[];for(let n of t)if(typeof n=="string"){if(n)switch(e["@type"]){case"sc:Manifest":i.push({id:n,type:"Collection"});break}}else n["@id"]&&i.push({id:n["@id"],type:qp(n)});return i.length?i:void 0}function dr(e){let t=e.related?Array.isArray(e.related)?e.related:[e.related]:[],i=e.contentLayer;return{provider:e.logo||t.length?[{id:Wp.providerId,type:"Agent",homepage:t.length?[t[0]]:void 0,logo:e.logo?Array.isArray(e.logo)?e.logo:[e.logo]:void 0,label:Wr(Wp.providerName)}]:void 0,partOf:jE(e),rendering:e.rendering,seeAlso:e.seeAlso,start:e.startCanvas,service:e.service?Nn(e.service):void 0,supplementary:i?[i]:void 0}}function VE(e){return{chars:e.chars,format:e.format?e.format:void 0,language:e.language}}function UE(e){return en({...Bn(e),...Dn(e),...dr(e),items:e.members})}function WE(e){let t=[],i=[],n,r;for(let l of e.sequences||[])console.log(l),l.canvases.length&&t.push(...l.canvases),l.behavior&&i.push(...l.behavior),l.viewingDirection&&(r=l.viewingDirection),l.startCanvas&&(n=l.startCanvas);let a=Bn(e);return i.length&&(a.behavior?a.behavior.push(...i):a.behavior=i),en({...a,...Dn(e),...dr(e),viewingDirection:r,start:n,items:t,structures:HE(e.structures)})}function HE(e){if(!e)return e;let t=new Map;for(let n of e)t.set(n.id,n);let i=[];for(let n of e)if(n.items){let r=n.items.map(a=>typeof a=="string"?(i.push(a),t.get(a)||a):a&&a.id?(i.push(a.id),t.get(a.id)||a):a);n.items=r}return e.filter(n=>i.indexOf(n.id)===-1)}function qE(e){return en({...Bn(e),...Dn(e),...dr(e),annotations:e.otherContent&&e.otherContent.length?e.otherContent:void 0,items:e.images&&e.images.length?[{id:k0(e,"annotation-page"),type:"AnnotationPage",items:e.images}]:void 0})}function QE(e){return en({...Bn(e),...Dn(e),...dr(e),items:e.resources&&e.resources.length?e.resources:void 0})}function $E(e){return!e.canvases||e.canvases.length===0?{canvases:[],behavior:[]}:{canvases:e.canvases,behavior:e.viewingHint?[e.viewingHint]:[],viewingDirection:e.viewingDirection,startCanvas:e.startCanvas}}function GE(e){function t(i){if(Array.isArray(i)){if(i.length>1)return{type:"List",items:i.map(t)};i=i[0]}if(typeof i=="string")return encodeURI(i).trim();if("@type"in i){let n;if(typeof i.full=="string")n=i.full;else if(i.full["@type"]==="dctypes:Image")n={id:i.full["@id"],type:"Image"};else if(i.full["@type"]==="sc:Canvas")n={id:i.full["@id"],type:"Canvas"};else throw new Error(`Unsupported source type on annotation: ${i.full["@type"]}`);return{type:"SpecificResource",source:n,selector:Hp(i.selector)}}else return encodeURI(i["@id"]).trim()}return en({...Bn(e),...Dn(e),...dr(e),target:t(e.on),body:Array.isArray(e.resource)?e.resource.map(R0):R0(e.resource)})}function R0(e){return e.type==="Choice"?e:O0(e)}function O0(e){let t=e;return en({...Bn(t),...Dn(t),...dr(t),...VE(t)})}function YE(e){let t=[];return e.default&&e.default!=="rdf:nil"&&t.push(e.default),e.item&&e.item!=="rdf:nil"&&t.push(...e.item),en({...Bn(e),...Dn(e),items:t})}function XE(e){return en({...Bn(e),...Dn(e),...dr(e),items:e.members})}function KE(e){let{"@id":t,"@type":i,"@context":n,profile:r,...a}=e,l={};return t&&(l["@id"]=t),l["@type"]=qp(e),l["@type"]==="unknown"&&(n&&n.length&&(l["@context"]=n),l["@type"]="Service"),r&&(l.profile=M0(r)),en({...l,...a})}function ZE(e){return en({...Bn(e),...Dn(e),...dr(e)})}var JE=new aE({collection:[UE],manifest:[WE],canvas:[qE],annotationList:[QE],sequence:[$E],annotation:[GE],contentResource:[O0],choice:[YE],range:[XE],service:[KE],layer:[ZE]});function L0(e){return e&&e["@context"]&&(e["@context"]==="http://iiif.io/api/presentation/2/context.json"||e["@context"].indexOf("http://iiif.io/api/presentation/2/context.json")!==-1||e["@context"]==="http://www.shared-canvas.org/ns/context.json")||e["@context"]==="http://iiif.io/api/image/2/context.json"?JE.traverseUnknown(e):e}function Hp(e){if((Array.isArray(e["@type"])&&e["@type"].includes("oa:SvgSelector")||e["@type"]=="oa:SvgSelector")&&("chars"in e||"value"in e))return{type:"SvgSelector",value:"chars"in e?e.chars:e.value};if(e["@type"]==="oa:FragmentSelector")return{type:"FragmentSelector",value:e.value};if(e["@type"]==="oa:Choice")return[Hp(e.default),...(Array.isArray(e.item)?e.item:[e.item]).map(Hp)];if(e["@type"]=="iiif:ImageApiSelector")return{type:"ImageApiSelector",region:"region"in e?e.region:void 0,rotation:"rotation"in e?e.rotation:void 0};throw new Error(`Unsupported selector type: ${e["@type"]}`)}function tn(e){return typeof e=="string"?!1:e&&!e.type&&"source"in e?(e.type="SpecificResource",!0):!!e&&e.type==="SpecificResource"}function Zu(...e){return t=>e.reduce((i,n)=>n(i),t)}var Qp=["Collection","Manifest","Canvas","AnnotationPage","AnnotationCollection","Annotation","ContentResource","Range","Service","Selector","Agent"];function z0(e,t){if(typeof e>"u"||e===null)throw new Error("Null or undefined is not a valid entity.");if(Array.isArray(e))throw new Error("Array is not a valid entity");if(typeof e!="object"){if(t)return t;throw new Error(`${typeof e} is not a valid entity`)}if(typeof e.type=="string"){let i=Qp.indexOf(e.type);if(i!==-1)return Qp[i]}if(e.profile)return"Service";throw new Error("Resource type is not known")}var $p=class F0{constructor(t,i={}){vn(this,"traversals"),vn(this,"options"),vn(this,"_traverseManifest",Zu(this.traverseManifestItems.bind(this),this.traverseLinking.bind(this),this.traverseDescriptive.bind(this),this.traverseLinkedCanvases.bind(this),this.traverseManifestStructures.bind(this),this.traverseInlineAnnotationPages.bind(this))),vn(this,"_traverseCanvas",Zu(this.traverseCanvasItems.bind(this),this.traverseLinking.bind(this),this.traverseDescriptive.bind(this),this.traverseLinkedCanvases.bind(this),this.traverseInlineAnnotationPages.bind(this))),vn(this,"_traverseAnnotationPage",Zu(this.traverseAnnotationPageItems.bind(this),this.traverseLinking.bind(this),this.traverseDescriptive.bind(this))),vn(this,"_traverseRange",Zu(this.traverseRangeRanges.bind(this),this.traverseLinking.bind(this),this.traverseDescriptive.bind(this),this.traverseLinkedCanvases.bind(this))),this.traversals={collection:[],manifest:[],canvas:[],annotationCollection:[],annotationPage:[],annotation:[],contentResource:[],choice:[],range:[],service:[],agent:[],specificResource:[],geoJson:[],...t},this.options={allowUndefinedReturn:!1,...i}}static all(t){return new F0({collection:[t],manifest:[t],canvas:[t],annotationCollection:[t],annotationPage:[t],annotation:[t],contentResource:[t],choice:[t],range:[t],service:[t],geoJson:[t],specificResource:[t],agent:[t]})}traverseDescriptive(t){return t.thumbnail&&(t.thumbnail=Nn(t.thumbnail).map(i=>this.traverseType(i,{parent:t},this.traversals.contentResource))),t.provider&&(t.provider=t.provider.map(i=>this.traverseAgent(i,t))),t}traverseLinking(t){return t.seeAlso&&(t.seeAlso=t.seeAlso.map(i=>this.traverseType(i,{parent:t},this.traversals.contentResource))),t.service&&(t.service=Nn(t.service).map(i=>this.traverseService(i))),t.services&&(t.services=Nn(t.services).map(i=>this.traverseService(i,t))),t.logo&&(t.logo=t.logo.map(i=>this.traverseType(i,{parent:t},this.traversals.contentResource))),t.homepage&&(t.homepage=Nn(t.homepage).map(i=>this.traverseType(i,{parent:t},this.traversals.contentResource))),t.partOf&&(t.partOf=t.partOf.map(i=>typeof i=="string"||!i.type?this.traverseType(i,{parent:t},this.traversals.contentResource):i.type==="Canvas"?this.traverseType(i,{parent:t},this.traversals.canvas):i.type==="AnnotationCollection"?this.traverseType(i,{parent:t},this.traversals.annotationCollection):i.type==="Collection"?this.traverseType(i,{parent:t},this.traversals.collection):this.traverseType(i,{parent:t},this.traversals.contentResource))),t.start&&(tn(t.start)?t.start=this.traverseSpecificResource(t.start,"Canvas",t):t.start=this.traverseType(t.start,{parent:t},this.traversals.canvas)),t.rendering&&(t.rendering=t.rendering.map(i=>this.traverseType(i,{parent:t},this.traversals.contentResource))),t.supplementary&&(t.supplementary=t.supplementary.map(i=>this.traverseType(i,{parent:t},this.traversals.contentResource))),t}traverseCollectionItems(t){return t.items&&t.items.map(i=>i.type==="Collection"?this.traverseCollection(i):this.traverseManifest(i)),t}traverseCollection(t,i){return this.traverseType(this.traverseDescriptive(this.traverseInlineAnnotationPages(this.traverseLinking(this.traverseLinkedCanvases(this.traverseCollectionItems(t))))),{parent:i},this.traversals.collection)}traverseGeoJson(t,i){return this.traverseType(t,{parent:i},this.traversals.geoJson)}traverseNavPlace(t){return t.navPlace&&(t.navPlace=this.traverseGeoJson(t.navPlace,t)),t}traverseManifestItems(t){return t.items&&(t.items=t.items.map(i=>this.traverseCanvas(i))),t}traverseManifestStructures(t){return t.structures&&(t.structures=t.structures.map(i=>this.traverseRange(i))),t}traverseManifest(t,i){return this.traverseType(this._traverseManifest(t),{parent:i},this.traversals.manifest)}traverseCanvasItems(t){return t.items=(t.items||[]).map(i=>this.traverseAnnotationPage(i,t)),t}traverseInlineAnnotationPages(t){return typeof t=="string"||!t||t.annotations&&(t.annotations=t.annotations.map(i=>this.traverseAnnotationPage(i,t))),t}traverseCanvas(t,i){return this.traverseType(this._traverseCanvas(t),{parent:i},this.traversals.canvas)}traverseAnnotationPageItems(t){return t.items&&(t.items=t.items.map(i=>this.traverseAnnotation(i,t))),t}traverseAnnotationPage(t,i){return this.traverseType(this._traverseAnnotationPage(t),{parent:i},this.traversals.annotationPage)}traverseAnnotationBody(t){return Array.isArray(t.body)?t.body=t.body.map(i=>this.traverseContentResource(i,t)):t.body&&(t.body=this.traverseContentResource(t.body,t)),t}traverseLinkedCanvases(t){return t.placeholderCanvas&&(t.placeholderCanvas=this.traverseCanvas(t.placeholderCanvas)),t.accompanyingCanvas&&(t.accompanyingCanvas=this.traverseCanvas(t.accompanyingCanvas)),t}traverseAnnotation(t,i){return this.traverseType(this.traverseLinking(this.traverseAnnotationBody(this.traverseDescriptive(t))),{parent:i},this.traversals.annotation)}traverseContentResourceLinking(t){return typeof t=="string"||!t||t&&t.service&&(t.service=Nn(t.service||[]).map(i=>this.traverseService(i,t))),t}traverseContentResource(t,i){return t.type==="Choice"&&(t.items=t.items.map(n=>this.traverseContentResource(n,t))),tn(t)?this.traverseSpecificResource(t,"ContentResource"):this.traverseType(this.traverseInlineAnnotationPages(this.traverseContentResourceLinking(t)),{parent:i},this.traversals.contentResource)}traverseSpecificResource(t,i,n){let r=t.source;return typeof t.source=="string"&&(r={id:t.source,type:i||"unknown"}),this.traverseType({...t,source:i==="Canvas"||r.type==="Canvas"?this.traverseType(r,{parent:n},this.traversals.canvas):i==="ContentResource"?this.traverseContentResource(r,{parent:n}):this.traverseUnknown(r,{parent:n,typeHint:i})},{parent:n},this.traversals.specificResource)}traverseRangeRanges(t){return t.items&&(t.items=t.items.map(i=>typeof i=="string"?this.traverseCanvas({id:i,type:"Canvas"},t):tn(i)?this.traverseSpecificResource(i,"Canvas",t):i.type==="Manifest"?this.traverseManifest(i,t):this.traverseRange(i,t))),t}traverseRange(t,i){return this.traverseType(this._traverseRange(t),{parent:i},this.traversals.range)}traverseAgent(t,i){return this.traverseType(this.traverseDescriptive(this.traverseLinking(t)),{parent:i},this.traversals.agent)}traverseType(t,i,n){return n.reduce((r,a)=>{let l=a(r,i);return typeof l>"u"&&!this.options.allowUndefinedReturn?r:l},t)}traverseService(t,i){let n=Object.assign({},t);return n&&n.service&&(n.service=Nn(n.service).map(r=>this.traverseService(r))),this.traverseType(n,{parent:i},this.traversals.service)}traverseUnknown(t,{parent:i,typeHint:n}={}){let r=z0(t,n);switch(r){case"Collection":return this.traverseCollection(t,i);case"Manifest":return this.traverseManifest(t,i);case"Canvas":return this.traverseCanvas(t,i);case"AnnotationPage":return this.traverseAnnotationPage(t,i);case"Annotation":return this.traverseAnnotation(t,i);case"ContentResource":return this.traverseContentResource(t,i);case"Range":return this.traverseRange(t,i);case"Service":return this.traverseService(t,i);case"Agent":return this.traverseAgent(t,i);default:throw new Error(`Unknown or unsupported resource type of ${r}`)}}};function Xp(e,t){let i=t||"unknown";if(!e)return;if(typeof e=="string")return{id:e,type:i};if(tn(e))return Xp(e.source,t);let n=i&&i!=="unknown"?i:e.type||e["@type"],r=e.id||e["@id"];if(n&&n.indexOf(":")!==-1&&(n=n.split(":").pop()),r&&n)return{id:r,type:n}}var qo={},mt="iiif-parser:hasPart",Ei="iiif-parser:partOf",Qo="iiif-parser:isExternal",ji="__$UNSET$__",Kp="__$UNWRAP$__",ce=[];Object.freeze(ce);Object.freeze(qo);function B0(e){if(e===qo||Object.keys(e).length===0)return!0;for(let t in e)return!1;return!0}function Go(e,t){if(t&&t["@explicit"]){let i={},n=Object.keys(t);for(let r of n)r===Ei||r==="@explicit"||(B0(t[r])?i[r]=e[r]:i[r]=t[r]);return i}return e}function Zp(e,t,i){let n=Xp(t);if(!n)return[void 0,void 0];let r=e.requests[n.id],a=n.type||e.mapping[n.id];if(!a||r&&r.resourceUri&&(!e.entities[a]||!e.entities[a][r.resourceUri]))return[void 0,void 0];let l=e.entities[a][r?r.resourceUri:n.id];if(n.type&&!l)return Zp(e,{id:n.id},i);if(l&&l[mt]){let c=l[mt].find(p=>i?p[Ei]===i.id:p[Ei]===l.id);return[Go(l,c),l]}return[l,l]}var D0={id:"https://iiif-parser/annotation-page",type:"AnnotationPage",behavior:ce,label:null,thumbnail:ce,summary:null,requiredStatement:null,metadata:ce,rights:null,provider:ce,items:ce,seeAlso:ce,homepage:ce,rendering:ce,service:ce},j0={id:"https://iiif-parser/empty-canvas",type:"Canvas",label:null,behavior:ce,thumbnail:ce,accompanyingCanvas:null,placeholderCanvas:null,summary:null,requiredStatement:null,metadata:ce,rights:null,navDate:null,provider:ce,items:ce,annotations:ce,seeAlso:ce,homepage:ce,partOf:ce,rendering:ce,service:ce,duration:0,height:0,width:0},V0={id:"https://iiif-parser/empty-collection",type:"Collection",label:null,viewingDirection:"left-to-right",behavior:ce,thumbnail:ce,accompanyingCanvas:null,placeholderCanvas:null,summary:null,requiredStatement:null,metadata:ce,rights:null,navDate:null,provider:ce,items:ce,annotations:ce,seeAlso:ce,homepage:ce,partOf:ce,rendering:ce,service:ce,services:ce},U0={id:"https://iiif-parser/empty-manifest",type:"Manifest",annotations:ce,behavior:ce,homepage:ce,items:ce,label:null,metadata:ce,navDate:null,provider:ce,partOf:ce,accompanyingCanvas:null,placeholderCanvas:null,rendering:ce,requiredStatement:null,rights:null,seeAlso:ce,service:ce,services:ce,start:null,structures:ce,summary:null,thumbnail:ce,viewingDirection:"left-to-right"},W0={id:"https://iiif-parser/empty-canvas",type:"Range",label:null,behavior:ce,thumbnail:ce,accompanyingCanvas:null,placeholderCanvas:null,summary:null,requiredStatement:null,metadata:ce,rights:null,navDate:null,provider:ce,items:ce,annotations:ce,seeAlso:ce,homepage:ce,partOf:ce,rendering:ce,service:ce,start:null,supplementary:null,viewingDirection:"left-to-right"},H0={id:"https://iiif-parser/empty-agent",type:"Agent",label:{},logo:ce,seeAlso:ce,homepage:ce},q0={id:"https://iiif-parser/empty-service",type:"UnknownService"};function Yp(e,t={}){if(Array.isArray(e))return Yp(e[0]);if(typeof e=="string"){let[i,n]=e.split("#");return n?{type:"SpecificResource",source:{id:i,type:t.typeHint||"Unknown"},selector:{type:"FragmentSelector",value:n}}:{type:"SpecificResource",source:{id:i,type:t.typeMap&&t.typeMap[i]||t.typeHint||"Unknown"}}}if(e.type==="Choice"||e.type==="List"||e.type==="Composite"||e.type==="Independents")return Yp(e.items[0]);if(!e.type&&"source"in e&&(e.type="SpecificResource"),e.type==="SpecificResource")return e.source.type==="Canvas"&&e.source.partOf&&typeof e.source.partOf=="string"&&(e.source.partOf=[{id:e.source.partOf,type:"Manifest"}]),e.selector?{type:"SpecificResource",source:e.source,selector:e.selector}:{type:"SpecificResource",source:e.source};if(e.id){e.type==="Canvas"&&e.partOf&&typeof e.partOf=="string"&&(e.partOf=[{id:e.partOf,type:"Manifest"}]);let[i,n]=e.id.split("#");return n?{type:"SpecificResource",source:{...e,id:i},selector:{type:"FragmentSelector",value:n}}:{type:"SpecificResource",source:{...e,id:i}}}return{type:"SpecificResource",source:e}}function Q0(){return{Collection:{},Manifest:{},Canvas:{},AnnotationPage:{},AnnotationCollection:{},Annotation:{},ContentResource:{},Range:{},Service:{},Selector:{},Agent:{}}}function $0(e,t){if(typeof e=="string")return{id:e,type:t};if(!e.id)throw new Error(`Invalid resource does not have an ID (${JSON.stringify(e)}, ${t})`);return e}function eA(e,t){return(i,n)=>{let r=e[i]?e[i]:{};return(a,l)=>{let c=$0(a,n||i);return c&&c.id&&i?(r[c.id]=r[c.id]?tc(r[c.id],c,{parent:l.parent,isTopLevel:t.id===c.id}):tc({id:c.id,type:c.type},c,{parent:l.parent,isTopLevel:t.id===c.id}),{id:c.id,type:i==="ContentResource"?i:c.type}):c}}}function ec(e,t,i){if(!t)return e;if(Array.isArray(e)){if(!Array.isArray(t))throw new Error("Cannot merge array with non-array");let n=[...e];for(let r of t)if(r["@id"]&&!r.id&&(r.id=r["@id"]),r["@type"]&&!r.type&&(r.type=r["@type"]),r!=null)if(Array.isArray(r))n.push(r);else if(typeof r=="object"&&r.id&&r.type){let a=n.findIndex(l=>l.id===r.id&&l.type===r.type);a>=0&&(n[a]=ec(n[a],r))}else e.indexOf(r)===-1&&n.push(r);return n}else if(typeof e=="object"){if(Array.isArray(t)||typeof t!="object")throw new Error("Cannot merge object with non-object");let n={...e},r=[],a=[],l=Object.keys(e).filter(m=>m!==mt&&m!=="id"&&m!=="type"),c={},p={};for(let[m,h]of Object.entries(t)){if(m===mt||m==="id"||m==="type")continue;let y=n[m];y===h?a.push(m):y===ce||!y?(r.push(m),n[m]=h):(y&&h&&(c[m]=y,p[m]=h),n[m]=ec(y,h),n[m]===c[m]&&(a.push(m),delete c[m]))}if(i&&(i.parent&&i.parent.id||i.isTopLevel)){let m=[],h={};if(i.parent?h[Ei]=i.parent.id:i.isTopLevel&&(h[Ei]=e.id),n[mt]&&n[mt].length){let y=!(n[mt]||[]).find(w=>w["@explicit"]),S=r.length>0||a.length!==l.length;if(y&&S)for(let w of n[mt]){let v={...w},x=Object.keys(c);if(v){v["@explicit"]=!0;for(let A of l)A!==mt&&(v[A]=qo);for(let A of x)v[A]=c[A]}m.push(v)}else m.push(...n[mt]);if(S){let w=Object.keys(p);h["@explicit"]=!0;for(let v of r)h[v]=qo;for(let v of a)h[v]=qo;for(let v of w)h[v]=p[v]}}h.id=n.id,h.type=n.type,m.push(h),n[mt]=m}return n}else if(e)return e;return t}function tc(e,t,i){if(typeof e=="string")return e;if(t.id!==e.id||t.type!==e.type){if(t.type==="ImageService3")return t;if(e.type==="ImageService3")return e;throw new Error(`Can only merge entities with identical identifiers and type! ${t.type}(${t.id}) => ${e.type}(${e.id})`)}return ec({...e},t,i)}function tA(e){return(t,i)=>n=>{let{id:r,type:a}=$0(n,i||t);if(typeof r>"u")throw new Error("Found invalid entity without an ID.");return t==="ContentResource"||t==="Service"?e[r]=t:e[r]=a,n}}function iA(e){let t=Object.assign({},e);if(t["@id"]&&(t.id=t["@id"]),t["@type"]&&(t.type=t["@type"]),t.service){let i=[];t.service=Array.isArray(t.service)?t.service:[t.service];for(let n of t.service)i.push({id:n["@id"]||n.id,type:n["@type"]||n.type});t.service=i}return Object.assign({},q0,t)}function nA(e){return t=>{e.Service=e.Service?e.Service:{};let i=t.id||t["@id"],n=iA(t);return n&&n.id&&(e.Service[n.id]?e.Service[i]=tc(e.Service[i],n):e.Service[i]=n),t}}function rA(e){let t=JSON.stringify(e),i=5381,n=t.length;for(;n;)i=i*33^t.charCodeAt(--n);let r=(i>>>0).toString(16);return r.length%2?"0"+r:r}function Gp(e){return t=>typeof t=="string"?{id:t,type:e}:t.id?t.type?t:{type:e,...t}:{id:`vault://${rA(t)}`,type:e,...t}}function Ho(e){return t=>({...e,...t})}function oa(e){return Array.isArray(e)?e:[e]}function oA(e){return e.body&&(e.body=oa(e.body)),e.seeAlso&&(e.seeAlso=oa(e.seeAlso)),e.audience&&(e.audience=oa(e.audience)),e.accessibility&&(e.accessibility=oa(e.accessibility)),e.motivation&&(e.motivation=oa(e.motivation)),e}function G0(e,{typeHint:t,partOfTypeHint:i}={}){if(typeof e=="string"&&(e={id:e,type:t||"unknown"}),tn(e))return typeof e.source=="string"&&(e.source={id:e.source,type:t||"unknown"}),e.source.type==="Canvas"&&e.source.partOf&&typeof e.source.partOf=="string"&&(e.source.partOf=[{id:e.source.partOf,type:i||"Manifest"}]),e;let n;if((e.id||"").indexOf("#")!==-1){let[r,a]=(e.id||"").split("#");e.id=r,a&&(n={type:"FragmentSelector",value:a})}return{type:"SpecificResource",source:e,selector:n}}function sA(e){let t=Object.assign({},e);return e&&e.items&&(t.items=e.items.map(i=>typeof i=="string"||i.type==="Canvas"?G0(i):i)),t}function aA(e){let t=Object.assign({},e);return t.start?(t.start=G0(t.start,{typeHint:"Canvas"}),t):e}function lA(e){let t=Object.assign({},e);return t.target?(t.target=Yp(t.target,{typeHint:"Canvas"}),t):e}function Y0(e){return e}function Ju(e){return typeof e.items>"u"&&(e[Qo]=!0),e}function Jp(e){let t=L0(e),i=Q0(),n={},r=eA(i,t),a=tA(n),l=new $p({collection:[Ju,Ho(V0),a("Collection"),r("Collection")],manifest:[Ju,Ho(U0),aA,a("Manifest"),r("Manifest")],canvas:[Ho(j0),a("Canvas"),r("Canvas")],annotationPage:[Ju,Gp("AnnotationPage"),Ho(D0),a("AnnotationPage"),r("AnnotationPage")],annotation:[Gp("Annotation"),oA,lA,a("Annotation"),r("Annotation")],contentResource:[Gp("ContentResource"),a("ContentResource"),r("ContentResource")],range:[Ho(W0),sA,a("Range","Canvas"),r("Range","Canvas")],agent:[Ho(H0),a("Agent"),r("Agent")],specificResource:[Y0],service:[nA(i)]}).traverseUnknown(t);return{entities:i,resource:l,mapping:n}}function X0(e){let t={};for(let[i,n]of e){if(i===Kp&&n!==ji)return n;n!==ji&&typeof n<"u"&&n!==null&&(t[i]=n)}return t}function ef(e,t,i){if(!t.type||!t.id)throw new Error("Unknown entity");if(!i[t.type])throw new Error(`Serializer not found for ${t.type}`);function n(r,a,l=0){let c=i[r.type];if(!c)return ji;if(l>20)throw new Error("Circular reference: "+r.id+" "+r.type);let[p,m]=Zp(e,r.type?r:r.id,a)||(r.id&&r.type?r:null);if(!p)return ji;let h=c(p,e,{parent:a,isTopLevel:t.id===r.id,fullResource:m}),y=h.next();for(;!y.done;){let S=y.value,w=ji;if(S)if(Array.isArray(S)){let v=[];for(let x of S)v.push(n(x,r,l+1));w=v}else w=n(S,r,l+1);y=h.next(w)}return y.value===ji?ji:X0(y.value)}return n(t)}function $o(e,{allowSourceString:t=!0,allowString:i=!1,allowedStringType:n}={}){let r=a=>{if(t&&a&&a.source&&typeof a.source!="string"){let l=Object.keys(a.source);if(a.source.id&&a.source.type&&l.length===2)return{...a,source:a.source.id}}return a};if(e){if(e.source&&e.source.partOf)return r(e);let a=Object.keys(e);if(a.length===2&&e.type&&e.source||a.length===3&&e.type&&e.source&&a.indexOf("selector")!==-1&&!e.selector)return i&&(!n||n===e.source.type)?e.source.id:e.source.type==="ContentResource"?{type:"SpecificResource",source:e.source.id}:e.source;if(e.selector&&!Array.isArray(e.selector)&&typeof e.selector!="string"&&e.selector.type==="FragmentSelector"){let l=`${e.source.id}#${e.selector.value}`;return i?l:{id:l,type:e.source.type}}}return r(e)}function $r(e){if(!e)return;let t=Object.keys(e);if(t.length!==0){if(t.length===1){let i=t[0];if(!i)return"";let n=(e[i]||[]).join("");return i==="@none"||i==="none"||i==="en"?n:{"@language":i,"@value":n}}return t.map(i=>({"@language":i,"@value":(e[i]||[]).join("")}))}}function K0(e){return Array.isArray(e)?e.map(t=>K0(t)):typeof e=="string"?e:e.type&&e.type==="Canvas"?e.id:e}function fr(e,t=!1){if(e)return e.length>1&&!t?e:e[0]||void 0}function uA(e){if(e){if(typeof e=="string")return{"@id":e};if("@id"in e){let t={...e};return delete t["@type"],t}return{"@context":"http://iiif.io/api/image/2/context.json","@id":e.id,profile:`http://iiif.io/api/image/2/profiles/${e.profile}.json`}}}function Hr(e,t){return[["@id",e.id],["@type",t],["format",e.format],["height",e.height],["width",e.width],["viewingDirection",e.viewingDirection!=="left-to-right"?e.viewingDirection:void 0],["license",e.license?e.license:void 0]]}function*qr(e){let t=e.provider?yield e.provider[0]:void 0;return[["label",$r(e.label)],["metadata",e.metadata&&e.metadata.length?e.metadata.map(i=>({label:$r(i.label)||"",value:$r(i.value)||""})):void 0],["description",$r(e.summary)],["thumbnail",fr(yield e.thumbnail)],["navDate",e.navDate],["logo",t?fr(t.logo):void 0],["homepage",t?t.homepage:void 0],["attribution",e.requiredStatement?$r(e.requiredStatement.value):void 0]]}function*sa(e){let t=e.start&&e.start.type&&e.start.type==="SpecificResource"?$o(e.start):e.start;return[["seeAlso",fr(yield e.seeAlso)],["service",fr((e.service||[]).map(uA))],["rendering",fr(yield e.rendering)],["startCanvas",t?t.id:void 0]]}function cA(e){return e.type==="SpecificResource"}function dA(e){return e&&e.type==="FragmentSelector"}function hA(e){if(e&&cA(e)){let t=e.id,i=e.selector?Array.isArray(e.selector)?e.selector[0]:e.selector:void 0;return dA(i)&&(t+="#"+i.value),t}return e?.id}var tf={Manifest:function*(e,t,{isTopLevel:i}){return[...i?[["@context","http://iiif.io/api/presentation/2/context.json"]]:[],...Hr(e,"sc:Manifest"),...yield*qr(e),...yield*sa(e),["sequences",[{"@id":`${e.id}/sequence0`,"@type":"sc:Sequence",canvases:yield e.items}]],["structures",yield e.structures]]},Canvas:function*(e){let t=(yield e.items)[0];return[...Hr(e,"sc:Canvas"),...yield*qr(e),...yield*sa(e),["images",t?[t.resources]:void 0],["annotations",e.annotations&&e.annotations.length?fr(yield e.annotations):void 0]]},AnnotationPage:function*(e){return[...Hr(e,"sc:AnnotationList"),...yield*qr(e),["resources",e.items&&e.items.length?fr(yield e.items):void 0]]},Annotation:function*(e){return[["@id",e.id],["@type","oa:Annotation"],["motivation","sc:painting"],["on",K0(e.target)],["resource",fr(yield e.body,!0)]]},ContentResource:function*(e){switch(e.type){case"Image":return[...Hr(e,"dctypes:Image"),...yield*qr(e),...yield*sa(e)];case"Text":case"Dataset":default:return[...Hr(e,void 0),...yield*qr(e)]}},AnnotationCollection:function*(e){return[["@id",e.id],["@type","sc:Layer"],["label",$r(e.label)]]},Collection:function*(e){return[...Hr(e,"sc:Collection"),...yield*qr(e),...yield*sa(e),["members",yield*e.items]]},Range:function*(e){let t=[],i=[];if(e.items)for(let n of e.items){let r=n.type==="SpecificResource"?n.source:n;if(r){let a=yield r;t.push({"@id":hA(n),"@type":r.type,label:a?a.label:void 0,within:e.id}),r.type==="Canvas"&&i.push(r.id)}}return[...Hr(e,"sc:Range"),...yield*qr(e),...yield*sa(e),["canvases",i.length===t.length?i:void 0],["members",i.length!==t.length?t:void 0]]}};function Qr(e){return[["id",e.id?.startsWith("vault://")?void 0:e.id],["type",e.type],["format",e.format],["profile",e.profile],["height",e.height||void 0],["width",e.width||void 0],["duration",e.duration||void 0],["viewingDirection",e.viewingDirection!=="left-to-right"?e.viewingDirection:void 0],["behavior",e.behavior&&e.behavior.length?e.behavior:void 0],["timeMode",e.timeMode],["motivation",Array.isArray(e.motivation)?e.motivation[0]:e.motivation],[mt,ji]]}function wt(e){if(e===ji||!e||e.length===0)return;let t=e.filter(i=>i!==ji);if(t.length!==0)return t}function Z0(e){if(e&&e.type&&e.type==="ImageService2"){let{id:t,type:i,profile:n,...r}=e,a=typeof n=="string"?n:Array.isArray(n)?n.find(l=>typeof l=="string"):"";return{"@id":t,"@type":i,profile:a?a.startsWith("http")?a:`http://iiif.io/api/image/2/${a}.json`:"http://iiif.io/api/image/2/level0.json",...r}}return e}function N0(e){if(Array.isArray(e)||(e=e?[e]:[]),!(!e||e.length===0))return e.map(Z0)}function*hr(e){return[["label",e.label],["metadata",wt(e.metadata)],["summary",e.summary],["requiredStatement",e.requiredStatement],["rights",Array.isArray(e.rights)?e.rights[0]||void 0:e.rights||void 0],["navDate",e.navDate],["language",e.language],["thumbnail",wt(yield e.thumbnail)],["placeholderCanvas",yield e.placeholderCanvas],["accompanyingCanvas",yield e.accompanyingCanvas],["provider",wt(yield e.provider)]]}function*pr(e,t){let i=[];for(let n of e.partOf||[])n.type==="Manifest"&&t.type==="Manifest"||i.push(yield n);return[["seeAlso",wt(yield e.seeAlso)],["service",wt(N0(e.service))],["services",wt(N0(e.services))],["rendering",wt(yield e.rendering)],["supplementary",wt(yield e.supplementary)],["homepage",wt(yield e.homepage)],["logo",wt(yield e.logo)],["partOf",wt(i)],["start",e.start?$o(e.start):e.start]]}var nf={Manifest:function*(e,t,{isTopLevel:i}){return i?[["@context",e["@context"]?e["@context"]:"http://iiif.io/api/presentation/3/context.json"],...Qr(e),...yield*hr(e),...yield*pr(e),["items",yield e.items],["structures",wt(yield e.structures)],["annotations",wt(yield e.annotations)],["navPlace",e.navPlace]]:[...Qr(e),...yield*hr(e)]},Canvas:function*(e,t,{parent:i}){return i&&i.type!=="Manifest"&&i.type!=="Canvas"?[["id",e.id]]:[...Qr(e),...yield*hr(e),...yield*pr(e,i),["items",yield e.items],["annotations",wt(yield e.annotations)],["navPlace",e.navPlace]]},Agent:function*(e){return[["id",e.id],["type","Agent"],["label",e.label],...yield*pr(e)]},AnnotationPage:function*(e){let t=Object.entries(e).map(([n,r])=>[n,Array.isArray(r)?wt(r):r]).filter(([n,r])=>n!=="items"&&n!=="id"&&n!==mt&&n!==Ei&&n!==Qo),i=yield e.items;return[["id",e.id?.startsWith("vault://")?void 0:e.id],...t,...yield*pr(e),["items",i.length||e[Qo]===!1?i:ji]]},Service:function*(e){return[[Kp,Z0(e)]]},Annotation:function*(e){let t=Object.entries(e).map(([n,r])=>n==="motivation"?[n,Array.isArray(r)?r[0]:r]:n==="target"?[n,$o(r,{allowString:!0,allowSourceString:!0,allowedStringType:"Canvas"})]:[n,Array.isArray(r)?wt(r):r]).filter(([n])=>n!=="body"&&n!==mt&&n!==Qo),i;if(Array.isArray(e.body)){let n=[];for(let r of e.body)if(r&&tn(r)){let a={...r};r.source.type!=="Canvas"?a.source=yield r.source:a.source=r.source,n.push($o(a,{allowSourceString:!0}))}else n.push(yield r);i=n}else e.body&&tn(e.body)?(i={...e.body},i.source=yield e.body.source):i=yield e.body;return[...t,...yield*hr(e),...yield*pr(e),["body",i.length===1?i[0]:i]]},ContentResource:function*(e){return pA([...Qr(e),...yield*hr(e),...yield*pr(e),["annotations",wt(yield e.annotations)],["items",wt(yield e.items)]],e)},AnnotationCollection:function*(e){return[["id",e.id],["type","AnnotationCollection"],["label",e.label]]},Collection:function*(e,t,{isTopLevel:i}){return i?[["@context","http://iiif.io/api/presentation/3/context.json"],...Qr(e),...yield*hr(e),...yield*pr(e),["items",wt(yield e.items)],["navPlace",e.navPlace]]:[...Qr(e),...yield*hr(e)]},Range:function*(e){let t=[];for(let i of e.items)i.type==="Range"?t.push(yield i):i&&i.type==="SpecificResource"?t.push($o(i)):t.push(i);return[...Qr(e),...yield*hr(e),...yield*pr(e),["items",t],["annotations",wt(yield e.annotations)],["navPlace",e.navPlace]]}};function pA(e,t){let i=Object.keys(t),n=e.map(([r])=>r);for(let r of i)r===mt||r===Qo||n.indexOf(r)===-1&&typeof t[r]<"u"&&e.push([r,t[r]]);return e}var fA=(e,t)=>{let{entities:i,resource:n,mapping:r}=Jp(t);if(n.id===void 0)return[ra({id:e,message:"ID is not defined in resource."})];let a=[Wu({entities:i}),Dp({mapping:r})];return n.id!==e&&(a.push(Bp({id:e,type:n.type})),a.push(Vp({requestId:e,actualId:n.id}))),a.push(Up({id:e})),a},J0=Number.isNaN||function(t){return typeof t=="number"&&t!==t};function mA(e,t){return!!(e===t||J0(e)&&J0(t))}function of(e,t){if(!Array.isArray(e)||!Array.isArray(t))return e===t;if(e.length!==t.length)return!1;for(let i=0;i<e.length;i++)if(!mA(e[i],t[i]))return!1;return!0}function rf(e,t,i){let n=e.iiif.requests[t],r=e.iiif.mapping[t];if(!r||!e.iiif.entities[r][n.resourceUri])return;let a=e.iiif.entities[r][n.resourceUri];if(a&&a[mt]){let l=a[mt].find(c=>i?c[Ei]===i.id:c[Ei]===a.id);return Go(a,l)}return a}function gA(e){return e&&typeof e.then=="function"}function sf(e,t,{waitTimeout:i=30}={}){return(n,r)=>{let a=e.getStore(),l=a.getState(),c=l.iiif.requests[n];if(c){if(c.loadingState===Vo){let m=rf(l,n);if(m)return m}switch(c.loadingState){case jo:break;case na:return(async()=>{let m,h=!1;try{let y=await Promise.race([new Promise((S,w)=>{h||(m=a.subscribe(()=>{let v=a.getState();if(v.iiif.requests[n].loadingState===jo){w();return}if(v.iiif.requests[n].loadingState===Vo){let x=rf(v,n);x?S(x):w()}}))}),new Promise((S,w)=>setTimeout(()=>{h=!0,w()},i*60*1e3))]);if(m&&m(),y)return y}catch{m&&m()}})()}}e.dispatch(jp({id:n}));let p=m=>{if(!m)return;!m.id&&!m["@id"]&&(m["@type"]&&(m["@id"]=n),m.id=n);let h=fA(n,m);return e.dispatch(Wo({actions:h})),rf(a.getState(),n)};try{let m=t(n,r);return gA(m)?(async()=>{try{return p(await m)}catch(h){throw e.dispatch(ra({id:n,message:h.toString()})),h}})():p(m)}catch(m){throw e.dispatch(ra({id:n,message:m.toString()})),m}}}var af="@iiif/SET_META_VALUE",lf="@iiif/SET_META_VALUE_DYNAMIC",uf="@iiif/UNSET_META_VALUE",yA=ht(af)(),vA=ht(lf)(),xA=ht(uf)(),cf={setMetaValue:yA,setMetaValueDynamic:vA,unsetMetaValue:xA};function df(){return{Collection:{},Manifest:{},Canvas:{},AnnotationPage:{},AnnotationCollection:{},Annotation:{},ContentResource:{},Range:{},Service:{},Selector:{},Agent:{}}}var Yo={},SA=(e,t)=>(i,n,r)=>(r.dispatch=a=>(i(l=>e(l,a),!1,a),a),r.dispatchFromDevtools=!0,{dispatch:(...a)=>r.dispatch(...a),...t}),wA=SA,mf=new Map,ic=e=>{let t=mf.get(e);return t?Object.fromEntries(Object.entries(t.stores).map(([i,n])=>[i,n.getState()])):{}},bA=(e,t,i)=>{if(e===void 0)return{type:"untracked",connection:t.connect(i)};let n=mf.get(i.name);if(n)return{type:"tracked",store:e,...n};let r={connection:t.connect(i),stores:{}};return mf.set(i.name,r),{type:"tracked",store:e,...r}},CA=(e,t={})=>(i,n,r)=>{let{enabled:a,anonymousActionType:l,store:c,...p}=t,m;try{m=(a??(Yo.env?Yo.env.MODE:void 0)!=="production")&&window.__REDUX_DEVTOOLS_EXTENSION__}catch{}if(!m)return(Yo.env?Yo.env.MODE:void 0)!=="production"&&a&&console.warn("[zustand devtools middleware] Please install/enable Redux devtools extension"),e(i,n,r);let{connection:h,...y}=bA(c,m,p),S=!0;r.setState=(x,A,C)=>{let I=i(x,A);if(!S)return I;let E=C===void 0?{type:l||"anonymous"}:typeof C=="string"?{type:C}:C;return c===void 0?(h?.send(E,n()),I):(h?.send({...E,type:`${c}/${E.type}`},{...ic(p.name),[c]:r.getState()}),I)};let w=(...x)=>{let A=S;S=!1,i(...x),S=A},v=e(r.setState,n,r);if(y.type==="untracked"?h?.init(v):(y.stores[y.store]=r,h?.init(Object.fromEntries(Object.entries(y.stores).map(([x,A])=>[x,x===y.store?v:A.getState()])))),r.dispatchFromDevtools&&typeof r.dispatch=="function"){let x=!1,A=r.dispatch;r.dispatch=(...C)=>{(Yo.env?Yo.env.MODE:void 0)!=="production"&&C[0].type==="__setState"&&!x&&(console.warn('[zustand devtools middleware] "__setState" action type is reserved to set state from the devtools. Avoid using it.'),x=!0),A(...C)}}return h.subscribe(x=>{var A;switch(x.type){case"ACTION":if(typeof x.payload!="string"){console.error("[zustand devtools middleware] Unsupported action format");return}return hf(x.payload,C=>{if(C.type==="__setState"){if(c===void 0){w(C.state);return}Object.keys(C.state).length!==1&&console.error(`
|
|
73
73
|
[zustand devtools middleware] Unsupported __setState action format.
|
|
74
74
|
When using 'store' option in devtools(), the 'state' should have only one key, which is a value of 'store' that was passed in devtools(),
|
|
75
75
|
and value of this only key should be a state object. Example: { "type": "__setState", "state": { "abc123Store": { "foo": "bar" } } }
|
|
76
|
-
`);let I=C.state[c];if(I==null)return;JSON.stringify(r.getState())!==JSON.stringify(I)&&w(I);return}r.dispatchFromDevtools&&typeof r.dispatch=="function"&&r.dispatch(C)});case"DISPATCH":switch(x.payload.type){case"RESET":return w(v),c===void 0?h?.init(r.getState()):h?.init(ic(p.name));case"COMMIT":if(c===void 0){h?.init(r.getState());return}return h?.init(ic(p.name));case"ROLLBACK":return pf(x.state,C=>{if(c===void 0){w(C),h?.init(r.getState());return}w(C[c]),h?.init(ic(p.name))});case"JUMP_TO_STATE":case"JUMP_TO_ACTION":return pf(x.state,C=>{if(c===void 0){w(C);return}JSON.stringify(r.getState())!==JSON.stringify(C[c])&&w(C[c])});case"IMPORT_STATE":{let{nextLiftedState:C}=x.payload,I=(A=C.computedStates.slice(-1)[0])==null?void 0:A.state;if(!I)return;w(c===void 0?I:I[c]),h?.send(null,C);return}case"PAUSE_RECORDING":return S=!S}return}}),v},PA=CA,pf=(e,t)=>{let i;try{i=JSON.parse(e)}catch(n){console.error("[zustand devtools middleware] Could not parse the received json",n)}i!==void 0&&t(i)},EA=e=>(t,i,n)=>{let r=n.subscribe;return n.subscribe=(l,c,p)=>{let m=l;if(c){let h=p?.equalityFn||Object.is,y=l(n.getState());m=S=>{let w=l(S);if(!h(y,w)){let v=y;c(y=w,v)}},p?.fireImmediately&&c(y,y)}return r(m)},e(t,i,n)},AA=EA,IA=(e={},t)=>{switch(t.type){case Hu:return{...e,[t.payload.id]:t.payload.type};case qu:return{...e,...t.payload.mapping};default:return e}};function ff(e,t,i,n){return!(!e[i]||!e[i][t]||!e[i][t][n]||!Array.isArray(e[i][t][n]))}function RA(e,t){let i={},n=[];for(let[r,a]of Object.entries(e||{})){n.push(r);let l=(t||{})[r];if(!l||l.length===0){i[r]=a;continue}i[r]=l}for(let[r,a]of Object.entries(t||{}))n.indexOf(r)===-1&&(i[r]=a);return i}function fe(e){return e.payload}function mf(e,t){return typeof e>"u"?t:e}var TA=(e=hf(),t)=>{let i=(n,r)=>({...e,[fe(t).type]:{...e[fe(t).type],[fe(t).id]:{...n,...r}}});switch(t.type){case Fu:{if(!e[fe(t).type]||!e[fe(t).type][fe(t).id])return e;let n=e[fe(t).type][fe(t).id];return typeof n=="string"?e:i(n,{[fe(t).key]:fe(t).value})}case Nu:{if(!ff(e,fe(t).id,fe(t).type,fe(t).key))return e;let n=e[fe(t).type][fe(t).id];if(typeof n=="string")return e;let r=Array.from(n[fe(t).key]),[a]=r.splice(fe(t).startIndex,1);return r.splice(fe(t).endIndex,0,a),i(n,{[fe(t).key]:r})}case zu:{let n=Object.keys(fe(t).entities),r={...e};for(let a of n){let l=fe(t).entities[a],c={...e[a]||{}},p=!1,m=Object.keys(l||{})||[];if(l&&m){for(let h of m)p=!0,c[h]=e[a][h]?RA(e[a][h],l[h]):l[h];p&&(r[a]=c)}}return r}case Bu:{if(!ff(e,fe(t).id,fe(t).type,fe(t).key))return e;let n=e[fe(t).type][fe(t).id],r=Array.from(n[fe(t).key]);return r.splice(mf(fe(t).index,r.length+1),0,fe(t).reference),i(n,{[fe(t).key]:r})}case ea:case Du:{if(!ff(e,fe(t).id,fe(t).type,fe(t).key))return e;let n=e[fe(t).type][fe(t).id],r=Array.from(n[fe(t).key]),a=mf(fe(t).index,r.findIndex(l=>l&&l.id===fe(t).reference.id));return a===-1||r[a]?.id!==fe(t).reference.id?e:(t.type===ea?r.splice(a,1,fe(t).reference):r.splice(a,1),i(n,{[fe(t).key]:r}))}case ju:{let n=e[fe(t).type][fe(t).id];if(!n)return e;let r=Array.from(n.metadata||[]),a=fe(t);return r.splice(mf(t.payload.beforeIndex,r.length+1),0,{label:a.label,value:a.label}),i(n,{metadata:r})}case Uu:{let n=e[fe(t).type][fe(t).id];if(typeof n=="string"||!n)return e;let r=Array.from(n.metadata||[]),[a]=r.splice(fe(t).startIndex,1);return r.splice(fe(t).endIndex,0,a),i(n,{metadata:r})}case ta:case Vu:{let n=e[fe(t).type][fe(t).id],r=Array.from(n.metadata||[]),a=fe(t).atIndex;return typeof a>"u"||a===-1||!r[a]?e:(t.type===ta?r.splice(a,1,{label:fe(t).label,value:fe(t).value}):r.splice(a,1),i(n,{metadata:r}))}default:return e}},_A=(e={},t)=>{switch(t.type){case Qu:case Xu:return{...e,[t.payload.id]:{requestUri:t.payload.id,loadingState:ia,uriMismatch:!1,resourceUri:t.payload.id}};case Gu:return{...e,[t.payload.requestId]:{...e[t.payload.requestId]||{},uriMismatch:!0,resourceUri:t.payload.actualId},[t.payload.actualId]:{requestUri:t.payload.requestId,loadingState:e[t.payload.requestId].loadingState,uriMismatch:!0,resourceUri:t.payload.actualId}};case $u:return{...e,[t.payload.id]:{...e[t.payload.id]||{},loadingState:Do,error:t.payload.message}};case Yu:return{...e,[t.payload.id]:{...e[t.payload.id]||{},loadingState:jo,error:void 0}}}return e},MA=(e={},t)=>{let{id:i,updateValue:n,value:r,meta:a,key:l}=t&&t.payload||{};switch(t.type){case lf:return{...e,[i]:{...e[i]||{},[a]:{...e[i]?e[i][a]||{}:{},[l]:r}}};case uf:return{...e,[i]:{...e[i]||{},[a]:{...e[i]?e[i][a]||{}:{},[l]:e[i]&&e[i][a]?n(e[i][a][l]):n(void 0)}}};case cf:return e[i]&&e[i][a]&&e[i][a][l]?{...e,[i]:{...e[i]||{},[a]:{...e[i]?e[i][a]||{}:{},[l]:void 0}}}:e;default:return e}};function tS(e={}){let t=Object.keys(e);return function(n={},r){let a=!1,l={};for(let c=0;c<t.length;c++){let p=t[c];l[p]=e[p](n[p],r),a=a||l[p]!==n[p]}return a?l:n}}function kA(e){return(t,i)=>i&&i.type===Vo?i.payload.actions.reduce(e,t):i&&i.type===Ku?{...t,iiif:{...t.iiif,...i.payload.state}}:e(t,i)}var OA=tS({mapping:IA,entities:TA,requests:_A,meta:MA});function LA(){return{iiif:{entities:hf(),meta:{},mapping:{},requests:{}}}}function iS(e={}){let{enableDevtools:t=!1,iiifStoreName:i="iiif",defaultState:n=LA(),customReducers:r={}}=e,a=kA(tS({[i]:OA,...r})),c=!!(typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION__)?PA:(p,m)=>p;return eu(AA(c(wA(a,n),{enabled:t})))}function ti(e,t,i,n=!0){t[Yo]=t[Yo]||[],t[Yo].push(e);let r=new Map;Object.defineProperty(t,e,{enumerable:n,get(){if(typeof t[Yr][e]>"u")return;let a=t[Yr][e];if(!a)return a;let l=i.get(t[Yr][e],{parent:this.id?{id:this.id,type:this.type}:void 0});return r.has(l)||(r.clear(),r.set(l,Xr(l,i))),r.get(l)},set(a){t[Yr][e]!==a&&(this[Gr]?i.modifyEntityField({id:this.id,type:this.type},e,oS(a)):this[Yr][e]=a)}})}var Yr=Symbol.for("_refs_"),Gr=Symbol.for("_reactive_"),Yo=Symbol.for("_defined_"),nS=Symbol.for("_parent_");function zA(e,t=!1,i){let n={id:"",type:"unknown",[Yo]:[],[Yr]:{},[nS]:i||null,[Gr]:null,is(r){return typeof r=="string"?this.id===r:r.id?r.id===this.id:!1},reactive(){if(!this[Gr])return this[Gr]=this.subscribe(()=>this.refresh(),!0),()=>{this.unreactive()}},refresh(){if(this.id){let r=this.unwrap();for(let a of Object.keys(r||{}))this[Yo].includes(a)?this[Yr][a]=r[a]:this[a]=r[a]}},unreactive(){this[Gr]&&(this[Gr](),this[Gr]=null)},unwrap(){if(!this.id)throw new Error("Invalid object");let r=this[nS];return e.get(this.id,{parent:r?{id:r,type:"unknown"}:void 0})},toPresentation3(){return e.toPresentation3(this.unwrap())},toPresentation2(){return e.toPresentation2(this.unwrap())},valueOf(){return this.unwrap()},toJSON(){let r=this;return{...r,items:r.items,annotations:r.annotations,structures:r.structures,seeAlso:r.seeAlso,service:r.service,services:r.services,rendering:r.rendering,partOf:r.partOf,start:r.start,supplementary:r.supplementary,homepage:r.homepage,thumbnail:r.thumbnail,placeholderCanvas:r.placeholderCanvas,accompanyingCanvas:r.accompanyingCanvas,provider:r.provider}},subscribe(r,a=!0){return e.subscribe(()=>this.id?e.get(this.id):null,r,a)}};return ti("items",n,e),ti("annotations",n,e),ti("structures",n,e),ti("seeAlso",n,e),ti("rendering",n,e),ti("partOf",n,e),ti("start",n,e,!1),ti("supplementary",n,e),ti("homepage",n,e),ti("thumbnail",n,e),ti("placeholderCanvas",n,e,!1),ti("accompanyingCanvas",n,e,!1),ti("provider",n,e),ti("body",n,e),ti("logo",n,e),n}function FA(e){return!!e[Yo]}function oS(e){return Array.isArray(e)?e.map(t=>oS(t)):!e||!e.type?e:{id:e.id,type:e.type}}function Xr(e,t,i=!1,n){if(Array.isArray(e))return e.map(c=>Xr(c,t,i));if(!e||!e.type||!e.id)return e;let r=zA(t,i),a=Object.create(r),l=Object.assign(a,e);return i&&l.reactive(),l}function rS(e){switch(e){case"Image":case"Video":case"Sound":case"Dataset":case"Text":case"Composite":case"List":case"Independents":case"Audience":return"ContentResource";case"ImageService1":case"ImageService2":case"ImageService3":return"Service"}return e}var Xo=class{constructor(e,t){Tt(this,"options"),Tt(this,"store"),Tt(this,"emitter"),Tt(this,"isBatching",!1),Tt(this,"batchQueue",[]),Tt(this,"remoteFetcher"),Tt(this,"staticFetcher"),Tt(this,"defaultFetcher",i=>fetch(i).then(n=>{if(n.status===200)return n.json();{let r=new Error(`${n.status} ${n.statusText}`);throw r.name="HTTPError",r}})),this.options=Object.assign({reducers:{},customFetcher:this.defaultFetcher,enableDevtools:!0},e||{}),this.store=t||iS({customReducers:this.options.reducers,defaultState:this.options.defaultState,enableDevtools:this.options.enableDevtools}),this.emitter=Jl(),this.remoteFetcher=af(this,this.options.customFetcher),this.staticFetcher=af(this,(i,n)=>n)}batch(e){this.isBatching=!0;try{e(this),this.isBatching=!1,this.dispatch(Uo({actions:this.batchQueue}))}catch(t){throw this.batchQueue=[],this.isBatching=!1,t}this.batchQueue=[]}async asyncBatch(e){this.isBatching=!0;try{await e(this),this.isBatching=!1,this.dispatch(Uo({actions:this.batchQueue}))}catch(t){throw this.batchQueue=[],this.isBatching=!1,t}this.batchQueue=[]}modifyEntityField(e,t,i){this.dispatch(Ur.modifyEntityField({id:e.id,type:e.type,key:t,value:i}))}dispatch(e){if(this.isBatching)this.batchQueue.push(e);else{if(e.type===Vo){for(let n of e.payload.actions)this.emitter.emit(n.type,{action:n,state:this.store.getState()});this.store.dispatch(e);let i=this.getState();for(let n of e.payload.actions)this.emitter.emit(`after:${n.type}`,{action:n,state:i});return}this.emitter.emit(e.type,{action:e,state:this.store.getState()}),this.store.dispatch(e);let t=this.store.getState();this.emitter.emit(`after:${e.type}`,{action:e,state:t});return}}on(e,t){return this.emitter.on(e,t),()=>{this.emitter.off(e,t)}}serialize(e,t){return tf(this.getState().iiif,e,t)}toPresentation2(e){return this.serialize(e,nf)}toPresentation3(e){return this.serialize(e,rf)}hydrate(e,t,i={}){return this.get(e,t,{...i,skipSelfReturn:!1})}get(e,t,i={}){typeof t!="string"&&(i=t||{},t=void 0);let{skipSelfReturn:n=!0}=i||{},r=i.parent?typeof i.parent=="string"?i.parent:i.parent.id:void 0;if(Array.isArray(e))return e.map(h=>this.get(h,i));let a=this.getState();if(tn(e)&&!i.preserveSpecificResources&&(e=e.source),typeof e=="string"){let h=rS(t||a.iiif.mapping[e]);if(!h)return n?null:{id:e,type:"unknown"};e={id:e,type:h}}if(e&&e.partOf&&!r&&!i.skipPartOfCheck){let h=Array.isArray(e.partOf)?e.partOf[0]:e.partOf;h&&(typeof h=="string"&&(r=h),typeof h.id=="string"&&(r=h.id))}let l=rS(t||e?.type),c=e?.id,p=a.iiif.entities[l];if(!p){let h=a.iiif.requests[c];return h&&h.resourceUri!==c?this.get(h.resourceUri,i):n?null:e}let m=p[e.id];if(m&&m[mt]){let h=m[mt].find(y=>r?y[Ei]===r:y[Ei]===m.id);return $o(m,h)}return p[e.id]||(n?null:e)}select(e){return e(this.getState())}getStore(){return this.store}getState(){return this.store.getState()}deep(e,t){if(typeof e>"u")return this.get(t,{skipSelfReturn:!1});if(typeof e=="function")try{let n=e(this.get(t,{skipSelfReturn:!1})),r=a=>this.deep(a,n);return r.size=Array.isArray(n)?n.length:1,r}catch{let r=a=>this.deep(a,void 0);return r.size=0,r}let i=n=>this.deep(n,e);return i.size=Array.isArray(e)?e.length:1,i}loadManifest(e,t){let i=typeof e=="string"?e:e.id;return this.load(i,t)}loadCollection(e,t){let i=typeof e=="string"?e:e.id;return this.load(i,t)}load(e,t){let i=typeof e=="string"?e:e.id;return t?Promise.resolve(this.staticFetcher(i,t)):Promise.resolve(this.remoteFetcher(i))}loadSync(e,t){let i=typeof e=="string"?e:e.id;return this.staticFetcher(i,t)}loadManifestSync(e,t){let i=typeof e=="string"?e:e.id;return this.loadSync(i,t)}loadCollectionSync(e,t){let i=typeof e=="string"?e:e.id;return this.loadSync(i,t)}areInputsEqual(e,t){return sf(e,t)}subscribe(e,t,i){return typeof i>"u"&&(typeof t>"u"||t===!1||t===!0)&&(i=t,t=e,e=n=>n),this.store.subscribe(e,n=>t(n,this),{equalityFn:sf,fireImmediately:!i})}async ensureLoaded(e){let t=typeof e=="string"?e:e.id;this.requestStatus(t)||await this.load(t)}requestStatus(e){return this.select(t=>t.iiif.requests[e])}getResourceMeta(e,t){let i=this.getState().iiif.meta[e];if(i)return t?i[t]:i}getObject(e,t,i={}){let{reactive:n,...r}=i;return Xr(this.get(e,t,r),this,n)}async loadObject(e,t){return Xr(await this.load(e,t),this)}async loadManifestObject(e,t){return Xr(await this.loadManifest(e,t),this)}async loadCollectionObject(e,t){return Xr(await this.loadCollection(e,t),this)}wrapObject(e){return Xr(this.get(e,{skipSelfReturn:!1}),this)}isWrapped(e){return FA(e)}setMetaValue([e,t,i],n){this.dispatch(typeof n=="function"?df.setMetaValueDynamic({id:e,meta:t,key:i,updateValue:n}):df.setMetaValue({id:e,meta:t,key:i,value:n}))}};function sS(){return typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}function sa(e){let t=sS();try{let n=t.IIIF_VAULT;if(n)return n}catch{}let i=new Xo(e);try{t.IIIF_VAULT=i}catch{}return i}var yf=R(B(),1),mr=nc.default.createContext({vault:null,setVaultInstance:e=>{}});function Kr({vault:e,vaultOptions:t,useGlobal:i,resources:n,children:r}){let[a,l]=(0,nc.useState)(()=>e||(i?sa(t):t?new Xo(t):new Xo));return(0,yf.jsx)(mr.Provider,{value:{vault:a,setVaultInstance:l},children:(0,yf.jsx)(ei,{value:n||{},children:r})})}var DS=R(q(),1),cc=R(q(),1);var aS=R(q(),1);function Zr(e){let t=(0,aS.useContext)(mr);return e||(t&&t.vault?t.vault:sa())}var gr=R(q(),1);function aa(e,{noCache:t=!1}={}){let i=typeof e=="string"?e:e.id,n=Zr(),[r,a]=(0,gr.useState)(i),[l,c]=(0,gr.useState)(void 0),p=(0,gr.useMemo)(()=>n.get(i,{skipSelfReturn:!0})||void 0,[i,n]),[m,h]=(0,gr.useState)(p);return(0,gr.useEffect)(()=>{(async()=>{try{let y=p&&!t?p:await n.load(i),S=y?y.id||y["@id"]:null;y&&r!==S&&a(S),h(y)}catch(y){c(y)}})()},[i,t]),{isLoaded:!!m,id:r,requestId:i,error:l,resource:m,cached:!!(m&&m===p)}}function vf(e,t){let{id:i,isLoaded:n,error:r,resource:a,requestId:l,cached:c}=aa(e,t);return{id:i,isLoaded:n,error:r,manifest:a,requestId:l,cached:c}}var lS=R(B(),1);function xf({manifest:e,children:t}){return(0,lS.jsx)(ei,{value:{manifest:e},children:t})}var uS=R(B(),1);function Vi({canvas:e,children:t}){return(0,uS.jsx)(ei,{value:{canvas:e},children:t})}var dS=R(q(),1),hS=R(q(),1);var cS=R(q(),1),_e=()=>{let{vault:e}=(0,cS.useContext)(mr);if(e===null)throw new Error("Vault not found. Ensure you have your provider set up correctly.");return e};var rc=R(q(),1);function De(e,t=[]){let i=_e(),[n,r]=(0,rc.useState)(()=>e(i.getState(),i));return(0,rc.useEffect)(()=>i.subscribe(a=>e(a,i),a=>{r(a)},!1),t),n}var Jr=hS.default.createContext([]);function eo(){let e=(0,dS.useContext)(Jr);return De(t=>e.map(i=>t.iiif.entities.Canvas[i]).filter(Boolean),[e])}var pS=R(q(),1);function vt(e={},t=[]){let{id:i,selector:n}=e,r=Xt(),a=_e(),l=i||r.manifest,c=De(p=>l?p.iiif.entities.Manifest[l]:void 0,[l]);return(0,pS.useMemo)(()=>{if(c)return n?n(c):c},[c,n,...t])}var fS=R(B(),1);function Sf({range:e,children:t}){return(0,fS.jsx)(ei,{value:{range:e},children:t})}function mS(e,t){for(let i of t.items){if(i.type==="Canvas")return i;if(i.type==="SpecificResource")return i.source;if(i.type==="Range"){let n=mS(e,e.get(i));if(n)return n}}return null}function oc(e,t){let i=[];for(let n of t.items)if(n.type==="SpecificResource"&&n.source?.type==="Canvas"&&(n.source.id.indexOf("#")!==-1?i.push({id:n.source.id.split("#")[0],type:"Canvas"}):i.push(n.source)),n.type==="Range"&&i.push(...oc(e,e.get(n))),n.type==="SpecificResource"){let r=typeof n.source=="string"?n.source:n.source.id;i.push({id:r,type:"Canvas"})}return i}function NA(e,t,i){for(let n of t.structures){let r=wf(e,e.get(n),i);if(r)return r}return null}function wf(e,t,i){for(let n of t.items){let r=n?.source?.id?.split("#")[0];if(n.type==="SpecificResource"&&n.source===i||n.type==="SpecificResource"&&n.source?.type==="Canvas"&&i===r)return t;if(n.type==="Range"){let a=wf(e,e.get(n),i);if(a)return a}}return null}function BA(e,t,i,n=!1){let r=t.behavior,a=i?e.get(i):null;if(!a)return[];let l=a.behavior,c=n?!1:r.includes("paged"),p=c?!1:r.includes("continuous"),m=c||p?!1:r.includes("individuals"),h=l.includes("facing-pages"),y=l.includes("non-paged");if(h||y||m||n)return[{id:a.id,type:"Canvas"}];let[S,w]=sc(e,t);if(p)return S;let v=S.findIndex(x=>x.id===i);if(v===-1)return[];for(let x of w)if(x.includes(v))return x.map(A=>S[A]);return[{id:a.id,type:"Canvas"}]}function sc(e,t,{disablePaging:i,skipNonPaged:n}={}){let r=t.behavior,a=r.includes("paged"),l=a?!1:r.includes("continuous"),c=a||l?!1:r.includes("individuals"),p=t.type==="Manifest"?t.items:oc(e,t);if(l)return[p,[p.map((v,x)=>x)]];if(c||!a||i)return[p,p.map((v,x)=>[x])];let m=[],h=[],y=()=>{h.length&&(m.push([...h]),h=[])},S=0,w=!1;for(let v=0;v<p.length;v++){let x=e.get(p[v]);if(x.behavior.includes("non-paged")){v===S&&S++,n||(y(),m.push([v]),y());continue}if(v===S||x.behavior.includes("facing-pages")){h.length&&(w=!0),y(),m.push([v]),y();continue}if(h.push(v),w){y(),w=!1;continue}h.length>1&&y()}return h.length&&y(),[p,m]}var nn=R(q(),1);var gS=R(q(),1);function la(e={},t=[]){let{id:i,selector:n}=e,r=Xt(),a=i||r.range,l=De(c=>a?c.iiif.entities.Range[a]:void 0,[a]);return(0,gS.useMemo)(()=>{if(l)return n?n(l):l},[l,n,...t])}function bf({startCanvas:e,disablePaging:t}){let i=_e(),n=vt(),r=la(),[a,l]=(0,nn.useState)(void 0),c=r||n;if(!c)throw new Error("Nothing selected");let[p,m]=(0,nn.useMemo)(()=>sc(i,c,{disablePaging:t}),[i,c,t]),h=(0,nn.useRef)(m);if(h.current!==m){let A=h.current[a][0],C=m.findIndex(I=>I.includes(A));h.current=m,l(C)}let y=(0,nn.useCallback)(x=>{let A=m.findIndex(C=>C.includes(x));l(A===-1?0:A)},[p,m]),S=(0,nn.useCallback)(x=>{let A=p.findIndex(C=>C.id===x);A!==-1?y(A):l(0)},[p,m]),w=(0,nn.useCallback)(()=>{l(x=>x>=m.length-1?x:x+1)},[m]),v=(0,nn.useCallback)(()=>{l(x=>x<=0?0:x-1)},[m]);return typeof a>"u"&&(e?S(e):l(0)),{visibleItems:m[a]?.map(x=>p[x].id)||[],cursor:a,items:p,sequence:m,hasPrevious:a>0,hasNext:a<m.length-1,setSequenceIndex:l,setCanvasIndex:y,setCanvasId:S,next:w,previous:v}}var on=R(q(),1);var vS={},yS=e=>{let t,i=new Set,n=(h,y)=>{let S=typeof h=="function"?h(t):h;if(!Object.is(S,t)){let w=t;t=y??(typeof S!="object"||S===null)?S:Object.assign({},t,S),i.forEach(v=>v(t,w))}},r=()=>t,p={setState:n,getState:r,getInitialState:()=>m,subscribe:h=>(i.add(h),()=>i.delete(h)),destroy:()=>{(vS.env?vS.env.MODE:void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),i.clear()}},m=t=e(n,r,p);return p},jn=e=>e?yS(e):yS;var TS=R(q(),1),_S=R(AS(),1),RS={},{useDebugValue:iI}=TS.default,{useSyncExternalStoreWithSelector:nI}=_S.default,IS=!1,rI=e=>e;function zt(e,t=rI,i){(RS.env?RS.env.MODE:void 0)!=="production"&&i&&!IS&&(console.warn("[DEPRECATED] Use `createWithEqualityFn` instead of `create` or use `useStoreWithEqualityFn` instead of `useStore`. They can be imported from 'zustand/traditional'. https://github.com/pmndrs/zustand/discussions/1937"),IS=!0);let n=nI(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,i);return iI(n),n}function oI(e){let t=e.service||e.services||[];for(let i of t)if(i.type==="AuthProbeService2")return!0;return!1}function rn(e,t,i){let n=t.findIndex(l=>l.service.id===e);if(n===-1)return t;let r=[...t],a=i(r[n]);return a===r[n]?t:(r[n]=a,r)}var Ef=()=>jn((e,t)=>({currentAuth:-1,authItems:[],login:()=>{let i=t().authItems[t().currentAuth];if(!i||i.isPending||i.isLoggedIn)return;if(i.type!=="active")throw new Error("Cannot login to non-active service");let n=i.service.service.find(r=>r.type==="AuthAccessTokenService2");if(!n)throw new Error("Token service not found");e(()=>({authItems:rn(i.id,t().authItems,r=>({...r,isPending:!0}))})),Pf(i.service).then(()=>{lc(n).then(r=>{let a=r.expiresIn,l=Date.now()+a*1e3;e(()=>({authItems:rn(i.id,t().authItems,c=>({...c,isLoggedIn:!0,isPending:!1,session:{token:r.accessToken,expires:l}}))}))}).catch(r=>{e(()=>({authItems:rn(i.id,t().authItems,a=>({...a,isLoggedIn:!1,isPending:!1,error:r.message}))}))})})},logout:()=>{let i=t().authItems[t().currentAuth];if(!i||i.isPending||!i.isLoggedIn)return;if(i.type!=="active")throw new Error("Cannot logout of non-active service");let n=i.service.service.find(l=>l.type==="AuthLogoutService2");if(!n)return;let r=`${n.id}?origin=${MS()}`,a=window.open(r);e(()=>({authItems:rn(i.id,t().authItems,l=>({...l,isLoggedIn:!1,session:null,isPending:!1}))}))},nextAuth:()=>{let i=t().authItems.length,n=t().currentAuth+1;n>=i||e(()=>({currentAuth:n}))},previousAuth:()=>{let i=t().currentAuth-1;i<0||e(()=>({currentAuth:i}))},setAuth:i=>{i!==-1&&(i<0||i>=t().authItems.length)||e(()=>({currentAuth:i}))},addService:(i,n)=>{if(!i.service)return;let r=i.service.find(c=>c.type==="AuthAccessTokenService2"),a=i;if(t().authItems.find(c=>c.service.id===i.id)){e(()=>({authItems:rn(i.id,t().authItems,c=>({...c,instances:c.instances+1}))}));return}if(e(()=>({currentAuth:a.profile==="active"?0:t().currentAuth,authItems:[{id:i.id,type:i.profile,service:i,probeId:n,canAuthenticate:!0,instances:1,isPending:!1,isLoggedIn:!1,session:null},...t().authItems]})),i.profile==="external"){if(!r)throw new Error("Token service not found");lc(r).then(c=>{e(()=>({authItems:rn(i.id,t().authItems,p=>({...p,isLoggedIn:!0,isPending:!1,session:{token:c.accessToken,expires:c.expiresIn}}))}))}).catch(c=>{e(()=>({authItems:rn(i.id,t().authItems,p=>({...p,isLoggedIn:!1,isPending:!1,canAuthenticate:!1,error:c.message}))}))})}if(i.profile==="kiosk"){if(!r)throw new Error("Token service not found");e(()=>({authItems:rn(i.id,t().authItems,c=>({...c,isPending:!0}))})),Pf(a).then(()=>{lc(r).then(c=>{e(()=>({authItems:rn(i.id,t().authItems,p=>({...p,isLoggedIn:!0,isPending:!1,session:{token:c.accessToken,expires:c.expiresIn}}))}))}).catch(c=>{e(()=>({authItems:rn(i.id,t().authItems,p=>({...p,isLoggedIn:!1,isPending:!1,error:c.message}))}))})})}i.profile},removeService:(i,n)=>{let r=t().currentAuth===t().authItems.findIndex(l=>l.service.id===i.id),a=t().currentAuth;if(r){let l=t().authItems.find(p=>p.service.id===i.id);l&&l.instances>1||(a=t().authItems.findIndex(m=>m.service.id!==i.id&&m.instances>0))}e(()=>({authItems:rn(i.id,t().authItems,l=>({...l,instances:l.instances-1})),currentAuth:a}))}})),Af=(e,t)=>jn((i,n)=>({service:e,status:e?"unknown":"success",shouldRedirect:!1,redirectResource:null,shouldSubstitute:!1,substituteResource:null,error:null,errorHeading:null,errorNote:null,shouldDisplayResource:!1,token:t||null,async probe(){if(!n().service)return;let r=n().service?.id;if(!r){i({status:"error",error:"Service ID not found",errorHeading:{en:["Service ID not found"]}});return}i({status:"probing"});let a=n().token;try{let l=await fetch(r,{headers:a?{Authorization:`Bearer ${n().token}`,Accept:"application/json"}:{Accept:"application/json"}}).then(c=>c.json());if(l.status===200)i({status:"success",shouldDisplayResource:!0,error:null,errorHeading:null,errorNote:null,shouldSubstitute:!1,shouldRedirect:!1});else if(l.status<400&&l.status>=300){if(!l.location)throw new Error("Redirect location not found");i({status:"error",shouldDisplayResource:!1,shouldRedirect:!0,redirectResource:l.location||null})}else if(l.status===401)i({status:"error",shouldDisplayResource:!1,shouldRedirect:!1,shouldSubstitute:!!l.substitute,substituteResource:l.substitute||null,error:"Unauthorized",errorHeading:l.heading||{en:["Unauthorized"]},errorNote:l.note||null});else throw new Error("Unknown error")}catch(l){i({status:"error",error:l.message,errorHeading:{en:["Unknown error"]}})}},setToken(r){i({token:r})}}));function If(e){let t=e.service||e.services||[],i={hasAuth:!1,services:{}};for(let n of t)if(n.type==="AuthProbeService2"){i.services.probe=n,i.hasAuth=!0;let r=n.service.filter(a=>a.type==="AuthAccessService2");r[0]&&(i.services.access=r[0])}return i}async function lc(e,{strict:t=!0}={}){return new Promise((i,n)=>{let r=Math.random().toString(36).substring(7),a=`${e.id}?messageId=${r}&origin=${window.location.origin}`,l=m=>{let h=m.data;if(h.messageId===r){if(t&&h.type!=="AuthAccessToken2"){c(),n("Invalid response, expected type=AuthAccessToken2");return}if(!h.accessToken){c(),n("Invalid response, expected accessToken");return}c(),i(h)}},c=()=>window.removeEventListener("message",l),p=document.createElement("iframe");p.src=a,p.style.display="none",document.body.appendChild(p),window.addEventListener("message",l)})}function MS(e){let t=window.location;if(e){let i=document.createElement("a");return i.href=e,i.protocol+"//"+i.hostname+(i.port?":"+i.port:"")}return t.protocol+"//"+t.hostname+(t.port?":"+t.port:"")}async function Pf(e){let t=`${e.id}?origin=${MS()}`,i=window.open(t);if(!i)throw new Error("Failed to open window");return new Promise((n,r)=>{let a=setInterval(()=>{i.closed&&(clearInterval(a),n())},500)})}var Zo=R(q(),1);function kS(e){let t=(0,Zo.useMemo)(()=>If(e),[e]),i=Rf(t.services.access?.id),n=(0,Zo.useMemo)(()=>Af(t.services.probe,i),[t.services.probe]),r=zt(n);return(0,Zo.useEffect)(()=>{r.status==="unknown"&&!i&&r.probe()},[t.services.probe,r.status]),(0,Zo.useEffect)(()=>{i&&(r.setToken(i),r.probe())},[i]),[e,r,t.hasAuth]}var ua=R(B(),1),to=(0,on.createContext)(null),OS=(0,on.createContext)(null);OS.displayName="CurrentAuth";var LS=(0,on.createContext)(null);LS.displayName="AuthActions";function _f({children:e}){let t=(0,on.useMemo)(()=>Ef(),[]);return(0,ua.jsx)(to.Provider,{value:t,children:e})}function Mf(){return!!(0,on.useContext)(to)}function Jo(){let e=(0,on.useContext)(to);if(!e)throw new Error("useAuthActions must be used within a AuthProvider");return e}function zS(){let e=Jo();return zt(e,i=>({login:i.login,logout:i.logout,nextAuth:i.nextAuth,previousAuth:i.previousAuth,setAuth:i.setAuth,addService:i.addService,removeService:i.removeService}))}function sI(){let e=Jo();return zt(e,t=>t)}function FS(e){let t=Jo();return zt(t,n=>n.authItems.find(r=>r.service.id===e))}function Rf(e){let t=Jo();return zt(t,n=>n.authItems.find(r=>r.id===e)?.session?.token)}function aI(e){let t=Jo();return zt(t,n=>{let r=n.authItems.find(a=>a.service.id===e);return!r||!r.isLoggedIn||!r.session?null:r.session?.token||null})}function lI(e){let t=zS(),i=FS(e.service.id);return(0,on.useEffect)(()=>(t?.addService(e.service,e.probeId),()=>{t?.removeService(e.service,e.probeId)}),[e.service]),i?(i.error||!i.isLoggedIn,e.children):null}function Tf(){return null}function kf(e){let[t,i,n]=kS(e.resource),r=e.fallbackComponent||Tf,a=e.loadingComponent||Tf,l=e.errorComponent||Tf,c=i.service,p=null;if(!n||!c)return e.children(t);let m=c.service.filter(h=>h.type==="AuthAccessService2");i.status==="error"&&(p=(0,ua.jsx)(l,{resource:e.resource,error:i.error||"",heading:i.errorHeading,note:i.errorNote,extra:e.extra})),(i.status==="unknown"||i.status==="probing")&&(p=(0,ua.jsx)(a,{})),i.status==="success"&&(p=e.children(t));for(let h of m)p=(0,ua.jsx)(lI,{service:h,probeId:c.id,children:p},h.id);return p}var ca=R(q(),1);var uI=e=>e.id||e["@id"];function cI(e){return(Array.isArray(e.service)?e.service:[e.service]).find(i=>i.profile==="http://iiif.io/api/search/0/autocomplete"||i.profile==="http://iiif.io/api/search/1/autocomplete"||i.profile==="AutoCompleteService1")}var NS=e=>{let t;typeof e=="string"?t={"@context":"http://iiif.io/api/search/1/context.json",profile:"http://iiif.io/api/search/1/search","@id":e,id:e,service:[]}:t=e;let i=t?uI(t):void 0,n=null;return jn((r,a)=>({service:t,resources:[],lastQuery:{},loading:!1,error:!1,highlight:null,hasSearch:!!t,hasAutocomplete:t?!!cI(t):!1,errorMessage:"",search(l,c={}){if(!i)throw new Error("No search service found.");n&&!n.signal.aborted&&n.abort(),n=new AbortController;let p=new URLSearchParams;l.q&&p.set("q",l.q),l.motivation&&p.set("motivation",l.motivation),l.date&&p.set("date",l.date),l.user&&p.set("user",l.user),r({loading:!0}),fetch(`${i}?${p.toString()}`,{signal:n.signal,headers:{"Content-Type":"application/json",Accept:"application/json",...c.headers||{}}}).then(async m=>{if(!n?.signal.aborted)if(m.ok){let h=await m.json();r({resources:h.resources,error:!1,errorMessage:""})}else r({resources:[],error:!0,errorMessage:m.statusText})})},clearSearch(){r({resources:[],error:!1,errorMessage:""})},highlightResult(l){let c=a().resources.find(p=>p["@id"]===l);r({highlight:c})},nextResult(){let l=a().resources,c=a().highlight;if(!c){r({highlight:l[0]||null});return}let p=l.findIndex(m=>m["@id"]===c["@id"]);if(p===-1){r({highlight:l[0]||null});return}r({highlight:l[p+1]||l[0]||null})},previousResult(){let l=a().resources,c=a().highlight;if(!c){r({highlight:l[l.length-1]||null});return}let p=l.findIndex(m=>m["@id"]===c["@id"]);if(p===-1){r({highlight:l[l.length-1]||null});return}if(p===0){r({highlight:l[l.length-1]||null});return}r({highlight:l[p-1]||l[l.length-1]||null})}}))};function Of(){let e=vt();return e?e.service.find(t=>t.profile==="SearchService1"||t.profile==="http://iiif.io/api/search/1/search"):void 0}var uc=R(B(),1),es=(0,ca.createContext)(null);es.displayName="Search";function BS(e){let t=Of();return e.store?(0,uc.jsx)(es.Provider,{value:e.store,children:e.children}):(0,uc.jsx)(dI,{service:t,children:e.children})}function dI({service:e,children:t}){let i=(0,ca.useMemo)(()=>NS(e),[e]);return(0,uc.jsx)(es.Provider,{value:i,children:t})}var mi=R(B(),1),da=()=>{},ts=(0,cc.createContext)({setCurrentCanvasId:da,setCurrentCanvasIndex:da,nextCanvas:da,previousCanvas:da,items:[],sequence:[],setSequenceIndex:da,currentSequenceIndex:0,hasNext:!1,hasPrevious:!1});function jS(e){let t=vt(),{cursor:i,visibleItems:n,next:r,sequence:a,items:l,setCanvasIndex:c,setCanvasId:p,previous:m,setSequenceIndex:h,hasNext:y,hasPrevious:S}=bf({startCanvas:e.startCanvas,disablePaging:e.pagingEnabled===!1}),w=(0,cc.useMemo)(()=>({sequence:a,items:l,setCurrentCanvasId:p,nextCanvas:r,previousCanvas:m,totalCanvases:l.length,setCurrentCanvasIndex:c,setSequenceIndex:h,currentSequenceIndex:i,hasNext:y,hasPrevious:S}),[a,l,p,r,m,l,c,h,i]);return t?n.length===0?null:(0,mi.jsx)(ts.Provider,{value:w,children:(0,mi.jsx)(Jr.Provider,{value:n,children:(0,mi.jsx)(Vi,{canvas:n[0],children:e.children})})}):(console.warn("The manifest passed to the provider is not a valid IIIF manifest."),(0,mi.jsx)("div",{children:"Sorry, something went wrong."}))}function Lf(e){let t=Zr(e.vault),i=vf(e.manifest);if(!i)return console.warn("The manifest passed to the provider is not a valid IIIF manifest."),(0,mi.jsx)("div",{children:"Sorry, something went wrong."});if(i.error)return(0,mi.jsx)("div",{children:i.error.toString()});if(!i.isLoaded)return(0,mi.jsx)("div",{children:"Loading..."});let n=(0,mi.jsx)(jS,{...e,children:e.children});return(0,mi.jsx)(Kr,{vault:t,children:(0,mi.jsx)(xf,{manifest:i.id,children:(0,mi.jsx)(_f,{children:(0,mi.jsx)(BS,{children:e.rangeId?(0,mi.jsx)(Sf,{range:e.rangeId,children:n}):n})})})})}function ha(){return(0,DS.useContext)(ts)}var VS=R(q(),1),dc=R(q(),1);function Vn(e){return{all:e=e||new Map,on:function(t,i){var n=e.get(t);n?n.push(i):e.set(t,[i])},off:function(t,i){var n=e.get(t);n&&(i?n.splice(n.indexOf(i)>>>0,1):e.set(t,[]))},emit:function(t,i){var n=e.get(t);n&&n.slice().map(function(r){r(i)}),(n=e.get("*"))&&n.slice().map(function(r){r(t,i)})}}}var WS=R(B(),1),US=Vn(),io=(0,dc.createContext)({emitter:US});io.displayName="Events";function pa(){return VS.default.useContext(io).emitter}function hI({emitter:e,children:t}){return(0,WS.jsx)(io.Provider,{value:(0,dc.useMemo)(()=>({emitter:e}),[e]),children:t})}var HS=R(q(),1),Pn=R(B(),1),zf=HS.default.createContext({});function Ff(){let e=(0,Ai.useContext)(zf),t=Object.keys(e),i={};for(let n of t)e[n].Provider&&(i[n]={value:(0,Ai.useContext)(e[n]),Provider:e[n].Provider});return i}function qS(e){let t=Object.keys(e),i=e.children;for(let n of t){if(n==="children")continue;let{value:r,Provider:a}=e[n];i=(0,Pn.jsx)(a,{value:r,children:i})}return i}function pI(e){let t=(0,Ai.useContext)(zf),i=(0,Ai.useMemo)(()=>({...t,...e.providers}),[e.providers]);return(0,Pn.jsx)(zf.Provider,{value:i,children:e.children})}function Nf(){return{VaultContext:(0,Ai.useContext)(mr),ResourceContext:(0,Ai.useContext)(Js),SimpleViewerReactContext:(0,Ai.useContext)(ts),VisibleCanvasReactContext:(0,Ai.useContext)(Jr),AuthRContext:(0,Ai.useContext)(to),SearchReactContext:(0,Ai.useContext)(es),ReactEventContext:(0,Ai.useContext)(io)}}function Bf(e){return(0,Pn.jsx)(Kr,{vault:e.bridge.VaultContext.vault||void 0,resources:e.bridge.ResourceContext,children:(0,Pn.jsx)(Jr.Provider,{value:e.bridge.VisibleCanvasReactContext,children:(0,Pn.jsx)(ts.Provider,{value:e.bridge.SimpleViewerReactContext,children:(0,Pn.jsx)(io.Provider,{value:e.bridge.ReactEventContext,children:(0,Pn.jsx)(to.Provider,{value:e.bridge.AuthRContext,children:(0,Pn.jsx)(es.Provider,{value:e.bridge.SearchReactContext,children:e.custom?(0,Pn.jsx)(qS,{...e.custom,children:e.children}):e.children})})})})})})}var is=R(q(),1);var Un=R(q(),1);var QS=R(q(),1);function Df(){let t=_e().getStore();return(0,QS.useMemo)(()=>i=>t.dispatch(i),[t])}function $S(e){return typeof e!="string"&&e&&e.bindToVault}function jf(){let e=_e(),t=(0,Un.useRef)([]),i=Df(),n=(0,Un.useMemo)(()=>`vault://annotation-page/${new Date().getTime()}/${Math.round(Math.random()*1e9).toString(16)}`,[]);(0,Un.useLayoutEffect)(()=>{let c={id:n,type:"AnnotationPage",behavior:[],label:null,thumbnail:[],summary:null,requiredStatement:null,metadata:[],rights:null,provider:[],items:[],seeAlso:[],homepage:[],rendering:[],service:[]};i(Ur.importEntities({entities:{AnnotationPage:{[c.id]:c}}}))},[n]);let r=De(c=>n&&c.iiif.entities.AnnotationPage[n]||null,[n]),a=(0,Un.useCallback)((c,p)=>{if(n){if($S(c)){let y=c;y.__vault||y.bindToVault(e),c=typeof y.source=="string"?y.source:y.source.id,t.current[c]=y}else typeof c!="string"&&(c=c.id);let m=e.get({id:n,type:"AnnotationPage"}),h=e.get({id:c,type:"Annotation"});m&&h&&(m.items.find(y=>y.id===h.id)||i(Ur.addReference({id:n,type:"AnnotationPage",key:"items",reference:{id:c,type:"Annotation"},index:p})))}},[n]),l=(0,Un.useCallback)(c=>{n&&($S(c)?c=typeof c.source=="string"?c.source:c.source.id:typeof c!="string"&&(c=c.id),t.current[c]&&t.current[c].beforeRemove(),e.get({id:n,type:"AnnotationPage"})&&i(Ur.removeReference({id:n,type:"AnnotationPage",key:"items",reference:{id:c,type:"Annotation"}})))},[n]);return[r,{addAnnotation:a,removeAnnotation:l}]}var YS=R(B(),1),GS=(0,is.createContext)(null);function Vf(){let e=(0,is.useContext)(GS);return[e.fullPage,{addAnnotation:e.addAnnotation,removeAnnotation:e.removeAnnotation}]}function Uf({children:e}){let[t,{addAnnotation:i,removeAnnotation:n}]=jf();return(0,YS.jsx)(GS.Provider,{value:(0,is.useMemo)(()=>({fullPage:t,addAnnotation:i,removeAnnotation:n}),[t]),children:e})}var ns=R(B(),1);function hc({width:e,style:t,height:i,error:n,resetErrorBoundary:r}){return(0,ns.jsxs)("div",{style:{width:e,height:i,minHeight:500,...t||{},background:"#f9f9f9"},children:[(0,ns.jsx)("h3",{children:"Error occurred"}),(0,ns.jsx)("p",{children:n.message}),(0,ns.jsx)("button",{type:"button",onClick:r,children:"Reset"})]})}var pc=R(q(),1),Ui=(0,pc.createContext)(null);function fa(){return(0,pc.useContext)(Ui)}var no=R(q(),1),Wf=(0,no.createContext)(()=>{}),Hf=(0,no.createContext)(()=>{});function Ft(e,t,i,n,r=[]){let a=(0,no.useContext)(e==="portal"?Hf:Wf);(0,no.useEffect)(()=>(e!=="none"&&a(t,i,n),()=>{a(t,null)}),[t,e,a,...r])}var rs=R(q(),1);var XS=R(q(),1);function Ce(e={},t=[]){let{id:i,selector:n}=e,r=Xt(),a=i||r.canvas,l=De(c=>a?c.iiif.entities.Canvas[a]:void 0,[a]);return(0,XS.useMemo)(()=>{if(l)return n?n(l):l},[l,n,...t])}var qf=(0,rs.createContext)(()=>{});function KS(e){let t=Ce(),i=(0,rs.useContext)(qf);(0,rs.useEffect)(()=>t&&t.id?(i(t.id,e),()=>i(t.id,-1)):()=>{},[t,e])}var Ct=R(B(),1);function fc({children:e,errorFallback:t,outerContainerProps:i={},worldScale:n,...r}){let[a,l]=(0,ii.useState)(),c=Ff(),p=Nf(),m=t||hc,[h,y]=(0,ii.useState)({}),S=Object.entries(h),[w,v]=(0,ii.useState)({}),x=Object.entries(w),[A,C]=(0,ii.useState)({}),I=(0,ii.useMemo)(()=>n||Math.max(...Object.values(A)),[A]),E=(0,ii.useMemo)(()=>({maxOverZoom:I||1,...r.runtimeOptions||{}}),[I,r.runtimeOptions]),L=(0,ii.useCallback)((Q,V)=>{C(J=>{if(V===-1){let{[Q]:U,...W}=J;return W}return{...J,[Q]:V}})},[]),z=(0,ii.useCallback)((Q,V,J)=>{y(({[Q]:U,...W})=>V?{...W,[Q]:{element:V,props:J}}:W)},[]),M=(0,ii.useCallback)((Q,V,J)=>{v(({[Q]:U,...W})=>V?{...W,[Q]:{element:V,props:J}}:W)},[]);return(0,Ct.jsxs)(No,{resetKeys:[],fallbackRender:Q=>(0,Ct.jsx)(m,{...r,...Q}),children:[(0,Ct.jsx)(o0,{...r,containerProps:{style:{position:"relative"},...r.containerProps||{}},htmlChildren:(0,Ct.jsx)(Ct.Fragment,{children:S.map(([Q,{element:V,props:J}])=>(0,Ct.jsx)(ii.default.Fragment,{children:(0,Ct.jsx)(V,{...J||{}})},Q))}),onCreated:Q=>{l(Q),r.onCreated&&r.onCreated(Q)},runtimeOptions:E,children:(0,Ct.jsx)(Ui.Provider,{value:a,children:(0,Ct.jsx)(qf.Provider,{value:L,children:(0,Ct.jsx)(Wf.Provider,{value:z,children:(0,Ct.jsx)(Hf.Provider,{value:M,children:(0,Ct.jsx)(Bf,{bridge:p,custom:c,children:(0,Ct.jsx)(Fo.Provider,{value:r.mode||"explore",children:(0,Ct.jsx)(Uf,{children:e})})})})})})})}),(0,Ct.jsx)("div",{children:x.map(([Q,{element:V,props:J}])=>(0,Ct.jsx)(ii.default.Fragment,{children:(0,Ct.jsx)(V,{...J||{}})},Q))})]})}var Qf=R(q(),1);function ma(e=Fn){return{addEventListener(t,i,n,r){if(t)return e.setMetaValue([t.id,"eventManager",i],a=>{let l=a||[];for(let c of l)if(c.callback===n)return l;return[...l,{callback:n,scope:r}]}),n},removeEventListener(t,i,n){t&&e.setMetaValue([t.id,"eventManager",i],r=>(r||[]).filter(a=>a.callback!==n))},getListenersAsProps(t,i){let n=typeof t=="string"?{id:t}:t;if(!n||!n.id)return{};let r=e.getResourceMeta(n.id,"eventManager"),a={};if(r&&n)for(let l of Object.keys(r))a[l]=c=>{let p=e.get(n);for(let{callback:m,scope:h}of r[l]||[])(!h||i&&h.indexOf(i)!==-1)&&m(c,p)};return a}}}function ga(e,t){let i=_e(),n=(0,Qf.useMemo)(()=>ma(i),[i]),r=De(()=>e&&e.id?i.getResourceMeta(e.id,"eventManager"):null,[e]);return(0,Qf.useMemo)(()=>e?n.getListenersAsProps(e,t):{},[r,e,i,t])}var ZS=R(q(),1);function yr(e=Fn){return{applyStyles(t,i,n){let r=typeof t=="string"?t:t.id;return e.setMetaValue([r,"styles",i],n)},getAppliedStyles(t){let i=typeof t=="string"?t:t.id;return e.getResourceMeta(i,"styles")}}}function ro(e,t){let i=_e(),n=(0,ZS.useMemo)(()=>yr(i),[i]);return De(()=>{if(!e)return null;let r=n.getAppliedStyles(e.id);return r?t?r[t]:r:void 0},[e,t])}var sw=R(q(),1);var ow=R(q(),1);var fI=Bh({"node_modules/.pnpm/parse-svg-path@0.1.2/node_modules/parse-svg-path/index.js"(e,t){"use strict";t.exports=r;var i={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},n=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function r(c){var p=[];return c.replace(n,function(m,h,y){var S=h.toLowerCase();for(y=l(y),S=="m"&&y.length>2&&(p.push([h].concat(y.splice(0,2))),S="l",h=h=="m"?"l":"L");;){if(y.length==i[S])return y.unshift(h),p.push(y);if(y.length<i[S])throw new Error("malformed path data");p.push([h].concat(y.splice(0,i[S])))}}),p}var a=/-?[0-9]*\.?[0-9]+(?:e[-+]?\d+)?/ig;function l(c){var p=c.match(a);return p?p.map(Number):[]}}}),mI=Bh({"node_modules/.pnpm/abs-svg-path@0.1.1/node_modules/abs-svg-path/index.js"(e,t){"use strict";t.exports=i;function i(n){var r=0,a=0,l=0,c=0;return n.map(function(p){p=p.slice();var m=p[0],h=m.toUpperCase();if(m!=h)switch(p[0]=h,m){case"a":p[6]+=l,p[7]+=c;break;case"v":p[1]+=c;break;case"h":p[1]+=l;break;default:for(var y=1;y<p.length;)p[y++]+=l,p[y++]+=c}switch(h){case"Z":l=r,c=a;break;case"H":l=p[1];break;case"V":c=p[1];break;case"M":l=r=p[1],c=a=p[2];break;default:l=p[p.length-2],c=p[p.length-1]}return p})}}}),gI=function(){function e(t,i){var n=[],r=!0,a=!1,l=void 0;try{for(var c=t[Symbol.iterator](),p;!(r=(p=c.next()).done)&&(n.push(p.value),!(i&&n.length===i));r=!0);}catch(m){a=!0,l=m}finally{try{!r&&c.return&&c.return()}finally{if(a)throw l}}return n}return function(t,i){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),ya=Math.PI*2,$f=function(t,i,n,r,a,l,c){var p=t.x,m=t.y;p*=i,m*=n;var h=r*p-a*m,y=a*p+r*m;return{x:h+l,y:y+c}},yI=function(t,i){var n=i===1.5707963267948966?.551915024494:i===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(i/4),r=Math.cos(t),a=Math.sin(t),l=Math.cos(t+i),c=Math.sin(t+i);return[{x:r-a*n,y:a+r*n},{x:l+c*n,y:c-l*n},{x:l,y:c}]},JS=function(t,i,n,r){var a=t*r-i*n<0?-1:1,l=t*n+i*r;return l>1&&(l=1),l<-1&&(l=-1),a*Math.acos(l)},vI=function(t,i,n,r,a,l,c,p,m,h,y,S){var w=Math.pow(a,2),v=Math.pow(l,2),x=Math.pow(y,2),A=Math.pow(S,2),C=w*v-w*A-v*x;C<0&&(C=0),C/=w*A+v*x,C=Math.sqrt(C)*(c===p?-1:1);var I=C*a/l*S,E=C*-l/a*y,L=h*I-m*E+(t+n)/2,z=m*I+h*E+(i+r)/2,M=(y-I)/a,Q=(S-E)/l,V=(-y-I)/a,J=(-S-E)/l,U=JS(1,0,M,Q),W=JS(M,Q,V,J);return p===0&&W>0&&(W-=ya),p===1&&W<0&&(W+=ya),[L,z,U,W]},xI=function(t){var i=t.px,n=t.py,r=t.cx,a=t.cy,l=t.rx,c=t.ry,p=t.xAxisRotation,m=p===void 0?0:p,h=t.largeArcFlag,y=h===void 0?0:h,S=t.sweepFlag,w=S===void 0?0:S,v=[];if(l===0||c===0)return[];var x=Math.sin(m*ya/360),A=Math.cos(m*ya/360),C=A*(i-r)/2+x*(n-a)/2,I=-x*(i-r)/2+A*(n-a)/2;if(C===0&&I===0)return[];l=Math.abs(l),c=Math.abs(c);var E=Math.pow(C,2)/Math.pow(l,2)+Math.pow(I,2)/Math.pow(c,2);E>1&&(l*=Math.sqrt(E),c*=Math.sqrt(E));var L=vI(i,n,r,a,l,c,y,w,x,A,C,I),z=gI(L,4),M=z[0],Q=z[1],V=z[2],J=z[3],U=Math.abs(J)/(ya/4);Math.abs(1-U)<1e-7&&(U=1);var W=Math.max(Math.ceil(U),1);J/=W;for(var ee=0;ee<W;ee++)v.push(yI(V,J)),V+=J;return v.map(function(Me){var pe=$f(Me[0],l,c,A,x,M,Q),Re=pe.x,ke=pe.y,He=$f(Me[1],l,c,A,x,M,Q),qe=He.x,$=He.y,ve=$f(Me[2],l,c,A,x,M,Q),it=ve.x,Qe=ve.y;return{x1:Re,y1:ke,x2:qe,y2:$,x:it,y:Qe}})},SI=xI,wI=Dh(fI(),1),bI=Dh(mI(),1);function CI(e){let t=(0,wI.default)(e),i=(0,bI.default)(t),n,r=0,a=0,l=0,c=0,p,m,h=0,y=0,S=[];for(let w=0;w<i.length;w++){let v=i[w],x=v[0];switch(x){case"M":r=v[1],a=v[2];break;case"H":v=["L",v[1],a];break;case"V":v=["L",r,v[1]];break;case"S":{let A=h,C=y;(n==="C"||n=="S")&&(A+=A-l,C+=C-c),v=["C",A,C,v[1],v[2],v[3],v[4]]}break;case"T":n==="Q"||n=="T"?(p=h*2-p,m=y*2-m):(p=h,m=y),v=["Q",p,m,v[1],v[2]];break;case"Q":p=v[1],m=v[2];break;case"A":{let A=SI({px:h,py:y,cx:v[6],cy:v[7],rx:v[1],ry:v[2],xAxisRotation:v[3],largeArcFlag:v[4],sweepFlag:v[5]});if(!A.length)continue;for(let[C,I]of A.entries())v=["C",I.x1,I.y1,I.x2,I.y2,I.x,I.y],C<A.length-1&&S.push(v);v=v}break;case"Z":v=["L",r,a];break}n=x,h=v[v.length-2],y=v[v.length-1],["C","Q","A"].indexOf(x)>-1?(l=v[v.length-4],c=v[v.length-3]):(l=h,c=y),S.push(v)}return S}function PI(e,t,i,n=1){return new iw(e,t,i).subdivide(n)}function EI(e,t,i,n,r=1){return new II(new Float64Array([e.x,e.y,t.x,t.y,i.x,i.y,n.x,n.y])).subdivide(r)}function AI(e){return e.x*e.x+e.y*e.y}function va(e){return e/(1-.67+Math.pow(Math.pow(.67,4)+.25*e*e,.25))}function os(e){return e*(1-.39+Math.sqrt(.39*.39+.25*e*e))}var iw=class{constructor(e,t,i){Tt(this,"start"),Tt(this,"control"),Tt(this,"end"),this.start=e,this.control=t,this.end=i}eval(e){let t=1-e;return{x:this.start.x*t*t+2*this.control.x*t*e+this.end.x*e*e,y:this.start.y*t*t+2*this.control.y*t*e+this.end.y*e*e}}mapToBasic(){let{x:e,y:t}=this.start,{x:i,y:n}=this.control,{x:r,y:a}=this.end,l=2*i-e-r,c=2*n-t-a,p=(i-e)*l+(n-t)*c,m=(r-i)*l+(a-n)*c,h=(r-e)*c-(a-t)*l,y=p/h,S=m/h,w=Math.abs(h)/(Math.hypot(l,c)*Math.abs(S-y));return{x0:e,x2:r,scale:w,cross:h}}subdivide(e){let t=this.mapToBasic(),i=va(t.x0),n=va(t.x2),r=.5*Math.abs(n-i)*Math.sqrt(t.scale/e),a=Math.ceil(r),l=os(i),c=os(n),p=[0];for(let m=1;m<a;m++){let y=(os(i+(n-i)*m/a)-l)/(c-l);p.push(y)}return p.push(1),p.map(m=>this.eval(m))}},II=class nw{constructor(t){Tt(this,"c"),this.c=t}weightsum(t,i,n,r){let a=t*this.c[0]+i*this.c[2]+n*this.c[4]+r*this.c[6],l=t*this.c[1]+i*this.c[3]+n*this.c[5]+r*this.c[7];return{x:a,y:l}}eval(t){let i=1-t,n=i*i*i,r=3*i*i*t,a=3*i*t*t,l=t*t*t;return this.weightsum(n,r,a,l)}deriv(t){let i=1-t,n=-3*i*i,r=3*t*t,a=-6*t*i-n,l=6*t*i-r;return this.weightsum(n,a,l,r)}midpoint_quadbez(){let t=this.weightsum(-.25,.75,.75,-.25);return new iw({x:this.c[0],y:this.c[1]},t,{x:this.c[6],y:this.c[7]})}subsegment(t,i){let n=new Float64Array(8),r=this.eval(t),a=this.eval(i);n[0]=r.x,n[1]=r.y;let l=(i-t)/3,c=this.deriv(t);n[2]=r.x+l*c.x,n[3]=r.y+l*c.y;let p=this.deriv(i);return n[4]=a.x-l*p.x,n[5]=a.y-l*p.y,n[6]=a.x,n[7]=a.y,new nw(n)}subdivide(t){let i=.1*t,n=t-i,r=Math.sqrt(n),a=AI(this.weightsum(1,-3,3,-1)),l=Math.ceil(Math.pow(a/(432*i*i),1/6)),c=[],p=0;for(let v=0;v<l;v++){let x=v/l,A=(v+1)/l,C=this.subsegment(x,A).midpoint_quadbez(),I=C.mapToBasic(),E=va(I.x0),L=va(I.x2),z=Math.sqrt(I.scale),M=Math.abs(L-E)*z;if(Math.sign(I.x0)!=Math.sign(I.x2)){let Q=r/z,V=r*Math.abs(L-E)/va(Q);M=Math.max(M,V)}c.push({quad:C,a0:E,a2:L,val:M}),p+=M}let m=.5*p/r,h=Math.ceil(m),y=[{x:this.c[0],y:this.c[1]}],S=0,w=0;for(let v=1;v<h;v++){let x=p*v/h;for(;S+c[w].val<x;)S+=c[w].val,w++;let A=c[w].a0,C=c[w].a2,I=os(A),E=os(C),L=A+(C-A)*(x-S)/c[w].val,M=(os(L)-I)/(E-I);y.push(c[w].quad.eval(M))}return y.push({x:this.c[6],y:this.c[7]}),y}},RI=/&?(xywh=)?(pixel:|percent:|pct:)?([0-9]+(?:\.[0-9]+)?),([0-9]+(?:\.[0-9]+)?),([0-9]+(?:\.[0-9]+)?),([0-9]+(?:\.[0-9]+)?)/,ew=/&?(t=)(npt:)?([0-9]+(\.[0-9]+)?)?(,([0-9]+(\.[0-9]+)?))?/,tw=/^rgba\((\d+),(\d+),(\d+),([0-9.]+)\)$/;function Wn(e,{domParser:t,svgPreprocessor:i,iiifRenderingHints:n}={}){if(Array.isArray(e))return Wi(e.reduce((r,a)=>{let{selector:l,selectors:c,iiifRenderingHints:p}=Wn(a,{domParser:t,svgPreprocessor:i,iiifRenderingHints:n});return l&&(r.selector||(r.selector=l),r.selectors.push(...c)),p&&(r.iiifRenderingHints=r.iiifRenderingHints||{type:"ImageApiSelector"},Object.assign(r.iiifRenderingHints,p)),r},{selector:null,selectors:[],iiifRenderingHints:n}));if(!e)return Wi({selector:null,selectors:[],iiifRenderingHints:n});if(typeof e=="string"){let[r,a]=e.split("#");return a?Wn({type:"FragmentSelector",value:a},{svgPreprocessor:i,iiifRenderingHints:n,domParser:t}):Wi({selector:null,selectors:[],iiifRenderingHints:n})}if(e.type){if(e.type==="PointSelector"&&(e.t||e.t===0)){let r={type:"TemporalSelector",temporal:{startTime:e.t}};return Wi({selector:r,selectors:[r],iiifRenderingHints:n})}if(e.type==="PointSelector"&&e.x&&e.y){let r={type:"PointSelector",spatial:{x:e.x,y:e.y}};return Wi({selector:r,selectors:[r],iiifRenderingHints:n})}}if(mc(e)){let r=[];if(e.region){let a=Wn({type:"FragmentSelector",value:"xywh="+e.region},{domParser:t,svgPreprocessor:i,iiifRenderingHints:n});r.push(...a.selectors)}return Wi({selector:r[0],selectors:r,iiifRenderingHints:n?{...n,...e}:e})}if(e.type==="FragmentSelector"){let r=RI.exec(e.value);if(r){let l={type:"BoxSelector",spatial:{unit:r[2]==="percent:"||r[2]==="pct:"?"percent":"pixel",x:parseFloat(r[3]),y:parseFloat(r[4]),width:parseFloat(r[5]),height:parseFloat(r[6])}},c=e.value.match(ew);return c&&(l={type:"TemporalBoxSelector",spatial:l.spatial,temporal:{startTime:c[3]?parseFloat(c[3]):0,endTime:c[6]?parseFloat(c[6]):void 0}}),Wi({selector:l,selectors:[l],iiifRenderingHints:n})}let a=e.value.match(ew);if(a){let l={type:"TemporalSelector",temporal:{startTime:a[3]?parseFloat(a[3]):0,endTime:a[6]?parseFloat(a[6]):void 0}};return Wi({selector:l,selectors:[l],iiifRenderingHints:n})}return Wi({selector:null,selectors:[],iiifRenderingHints:n})}if(e.type==="SvgSelector"&&"value"in e){t||(typeof window<"u"?t=new window.DOMParser:console.warn("No DOMParser available, cannot parse SVG selector, `points`, `spatial` and `style` will be unavailable and the SVG will not be normalized."));let r=[],a,l,c=i?.(e.value)??e.value,p;if(t){let h=t.parseFromString(e.value,"image/svg+xml").querySelector("svg");if(!h)return console.warn(`Illegal SVG selector: ${e.value}`),Wi({selector:null,selectors:[],iiifRenderingHints:n});let y=rw(h);y&&(r=y.points,p=y.shapeType,a=[Math.min(...r.map(S=>S[0])),Math.min(...r.map(S=>S[1])),Math.max(...r.map(S=>S[0])),Math.max(...r.map(S=>S[1]))],{style:l,svg:c}=MI(y.element)??{svg:c})}let m={type:"SvgSelector",svg:c,svgShape:p,style:l,points:r.length?r:void 0,spatial:a?{unit:"pixel",x:a[0],y:a[1],width:a[2]-a[0],height:a[3]-a[1]}:void 0};return Wi({selector:m,selectors:[m],iiifRenderingHints:n})}return Wi({selector:null,selectors:[],iiifRenderingHints:n})}function TI(e){let t=e.map(n=>n[0]).reduce((n,r)=>(n[r]+=1,n),{C:0,Q:0,L:0,M:0}),i=new Set(e.map(n=>n[0]));if(t.C>0||t.Q>0)return"path";if(t.L>0&&(i.size===1||i.size===2&&i.has("M"))){if(t.L===4)return"rect";let n=e.slice(-1)[0];return e[0][0]==="M"&&n[0]==="L"&&n[1]==e[0][1]&&n[2]===e[0][2]||n[1]===0&&n[2]===0?"polygon":"polyline"}return"path"}function rw(e){for(let t of Array.from(e.children))switch(t?.tagName.toLowerCase()){case"g":{let i=rw(t);if(i)return i}continue;case"path":{let i=t.getAttribute("d");if(!i)continue;let n=CI(i);return{element:t,points:_I(n),shapeType:TI(n)}}case"circle":{let i=parseFloat(t.getAttribute("cx")??"0"),n=parseFloat(t.getAttribute("cy")??"0"),r=parseFloat(t.getAttribute("r")??"0");if(!r)continue;let a=[];for(let l=0;l<=360;l+=12){let c=l*Math.PI/180;a.push([i+r*Math.cos(c),n+r*Math.sin(c)])}return{element:t,points:a,shapeType:"circle"}}case"ellipse":{let i=parseFloat(t.getAttribute("cx")??"0"),n=parseFloat(t.getAttribute("cy")??"0"),r=parseFloat(t.getAttribute("rx")??"0"),a=parseFloat(t.getAttribute("ry")??"0");if(!r&&!a)continue;let l=[];for(let c=0;c<=360;c+=12){let p=Math.tan(c/360*Math.PI),m=r*(1-p**2)/(1+p**2),h=a*2*p/(1+p**2);l.push([i+m,n+h])}return{element:t,points:l,shapeType:"ellipse"}}case"line":{let i=parseFloat(t.getAttribute("x0")??"0"),n=parseFloat(t.getAttribute("y0")??"0"),r=parseFloat(t.getAttribute("x1")??"0"),a=parseFloat(t.getAttribute("y1")??"0");if(i===r&&n===a)continue;return{element:t,points:[[i,n],[r,a]],shapeType:"polyline"}}case"polygon":case"polyline":{let i=t.getAttribute("points")?.split(" ").map(r=>r.split(",").map(parseFloat))??[];if(!i.length)continue;let n="polyline";return t.tagName.toLowerCase()==="polygon"&&(i.push(i[0]),n="polygon"),{element:t,points:i,shapeType:n}}case"rect":{let i=parseFloat(t.getAttribute("x")??"0"),n=parseFloat(t.getAttribute("y")??"0"),r=parseFloat(t.getAttribute("width")??"0"),a=parseFloat(t.getAttribute("height")??"0");if(!r||!a)continue;return{element:t,points:[[i,n],[i+r,n],[i+r,n+a],[i,n+a],[i,n]],shapeType:"rect"}}default:continue}return null}function _I(e){let t=[];for(let i=0;i<e.length;i++){let n=t[t.length-1]??[0,0],r=e[i];switch(r[0]){case"M":case"L":t.push([r[1],r[2]]);continue;case"C":t.push(...EI({x:n[0],y:n[1]},{x:r[1],y:r[2]},{x:r[3],y:r[4]},{x:r[5],y:r[6]}).map(a=>[a.x,a.y]).slice(1));continue;case"Q":t.push(...PI({x:n[0],y:n[1]},{x:r[1],y:r[2]},{x:r[3],y:r[4]}).map(a=>[a.x,a.y]).slice(1));continue}}return t}function MI(e){let t={};if(e.hasAttribute("fill")?(t.fill=e.getAttribute("fill"),e.removeAttribute("fill")):e.style&&e.style.fill&&(t.fill=e.style.fill),t.fill){let n=tw.exec(t.fill);n&&(t.fillOpacity=parseFloat(n[4]),t.fill=`rgb(${n[1]}, ${n[2]}, ${n[3]})`)}if(e.hasAttribute("fill-opacity")?(t.fillOpacity=parseFloat(e.getAttribute("fill-opacity")),e.removeAttribute("fill-opacity")):e.style&&e.style.fillOpacity&&(t.fillOpacity=parseFloat(e.style.fillOpacity)),e.hasAttribute("stroke")?(t.stroke=e.getAttribute("stroke"),e.removeAttribute("stroke")):e.style&&e.style.stroke&&(t.stroke=e.style.stroke),t.stroke){let n=tw.exec(t.stroke);n&&(t.strokeOpacity=parseFloat(n[4]),t.stroke=`rgb(${n[1]}, ${n[2]}, ${n[3]})`)}e.hasAttribute("stroke-opacity")?(t.strokeOpacity=parseFloat(e.getAttribute("stroke-opacity")),e.removeAttribute("stroke-opacity")):e.style&&e.style.strokeOpacity&&(t.strokeOpacity=parseFloat(e.style.strokeOpacity)),e.hasAttribute("stroke-width")?(t.strokeWidth=e.getAttribute("stroke-width"),e.removeAttribute("stroke-width")):e.style&&e.style.strokeWidth&&(t.strokeWidth=e.style.strokeWidth),e.hasAttribute("stroke-dasharray")?(t.strokeDasharray=e.getAttribute("stroke-dasharray"),e.removeAttribute("stroke-dasharray")):e.style&&e.style.strokeDasharray&&(t.strokeDasharray=e.style.strokeDasharray);let i=e;for(;i.tagName.toLowerCase()!=="svg";)if(i=i.parentElement,i===null)throw new Error("Could not find root SVG element");return{svg:i.outerHTML,style:Object.keys(t).length>0?t:void 0}}function mc(e){return!!e&&e.type==="iiif:ImageApiSelector"&&e.type==="iiif:ImageApiSelector"}function Wi(e){if(e.iiifRenderingHints){let t=e.iiifRenderingHints;if(t.rotation){let i=gc(`${t.rotation}`);if(i)if(e.selectors.length)for(let n of e.selectors)n.rotation=i;else e.selectors.push({type:"RotationSelector",rotation:i})}}else delete e.iiifRenderingHints;return e}function gc(e){let t=parseFloat(e);return t&&e.startsWith("!")&&(t=360-t),t&&(t=t%360),t!==t?0:t||0}function Nt(e,t={}){if(Array.isArray(e))return Nt(e[0]);if(typeof e=="string"){let[i,n]=e.split("#");return n?Nt({type:"SpecificResource",source:{id:i,type:"Unknown"},selector:{type:"FragmentSelector",value:n}}):{type:"SpecificResource",source:{id:i,type:t.typeMap&&t.typeMap[i]||"Unknown"},selector:null,selectors:[]}}if(e.type==="Choice"||e.type==="List"||e.type==="Composite"||e.type==="Independents")return Nt(e.items[0]);if(!e.type&&"source"in e&&(e.type="SpecificResource"),e.type==="SpecificResource"){e.source.type==="Canvas"&&e.source.partOf&&typeof e.source.partOf=="string"&&(e.source.partOf=[{id:e.source.partOf,type:"Manifest"}]);let{selector:i,selectors:n}=e.selector?Wn(e.selector,t):{selector:null,selectors:[]};return{type:"SpecificResource",source:e.source,selector:i,selectors:n}}if(e.id){e.type==="Canvas"&&e.partOf&&typeof e.partOf=="string"&&(e.partOf=[{id:e.partOf,type:"Manifest"}]);let[i,n]=e.id.split("#");return n?Nt({type:"SpecificResource",source:{...e,id:i},selector:{type:"FragmentSelector",value:n}}):{type:"SpecificResource",source:{...e,id:i},selector:null,selectors:[]}}return{type:"SpecificResource",source:e,selector:null,selectors:[]}}function xa(e={},t=[]){let{id:i,selector:n}=e,r=Xt(),a=_e(),l=i||r.annotation,c=De(m=>l?m.iiif.entities.Annotation[l]:void 0,[l]),p=De(m=>c&&c.body?c.body.map(h=>h?h.type==="SpecificResource"?{...h,source:a.get(h)}:h?m.iiif.entities[h.type][h.id]:null:null).filter(Boolean):[],[c]);return(0,ow.useMemo)(()=>{if(!c)return;let m={...c,body:p,target:Nt(c.target,{typeMap:a.getState().iiif.mapping})};return n?n(m):m},[c,n,p,...t])}var aw=R(B(),1),yc=({id:e,style:t,className:i,interactive:n})=>{let r=xa({id:e}),a=ro(r,"atlas"),l=ro(r,"html"),c=ga(r,["atlas"]),p=Ce(),m=(0,sw.useMemo)(()=>g0(t,a),[t,a]);return p&&r&&r.target&&r.target.selector&&r.target.selector.type==="BoxSelector"&&r.target.source&&(r.target.source.id===p.id||r.target.source===p.id)?(0,aw.jsx)(p0,{id:r.id,isEditing:!0,region:r.target.selector.spatial,style:m,className:l?.className||i,interactive:!!(l?.href||n),href:l?.href||null,title:l?.title||null,hrefTarget:l?.target||null,onClick:()=>{},...c}):null};var uw=R(q(),1);var lw=R(q(),1);function Gf(e={},t=[]){let{id:i,selector:n}=e,r=Xt(),a=i||r.annotationPage,l=De(c=>a?c.iiif.entities.AnnotationPage[a]:void 0,[a]);return(0,lw.useMemo)(()=>{if(l)return n?n(l):l},[l,...t])}var Yf=R(B(),1),Sa=({className:e,page:t})=>{let i=Gf({id:t.id})||t,n=ro(i,"atlas"),r=ro(i,"html");return De(a=>i.id?a.iiif.entities.AnnotationPage[i.id]:null,[]),(0,Yf.jsx)(uw.Fragment,{children:i.items?.map(a=>(0,Yf.jsx)(yc,{id:a.id,style:n,className:r?.className||e},a.id))})};var vr=R(q(),1);var as=R(q(),1);function cw(e){return e.type==="SpecificResource"?[e.source,{selector:e.selector}]:[e,{selector:null}]}function Xf(e=Fn){function t(r){let a=r?typeof r=="string"?e.get(r):r:null;if(!a)return[];let l=e.get(a.items,{parent:a}),c=[];for(let p of l)c.push(...e.get(p.items,{parent:p}));return c}function i(r,a=[]){let l=Array.isArray(r)?r:t(r),c=[],p={items:[],type:"complex-choice"},m=[];for(let h of l){if(h.type!=="Annotation")throw new Error("getPaintables() accept either a canvas or list of annotations");let y=Array.from(Array.isArray(h.body)?h.body:[h.body]);for(let S of y){let[w,{selector:v}]=cw(S),x=e.get(w),A=(x.type||"unknown").toLowerCase();if(A==="choice"){let C=e.get(x.items,{parent:x.id}),I=a.length?a.map(E=>C.find(L=>L.id===E)).filter(Boolean):[C[0]];I.length===0&&I.push(C[0]),p.items.push({type:"single-choice",items:C.map(E=>({id:E.id,label:E.label,selected:I.indexOf(E)!==-1})),label:w.label}),y.push(...I);continue}c.indexOf(A)===-1&&c.push(A),m.push({type:A,annotationId:h.id,annotation:h,resource:x,target:h.target,selector:v})}}return{types:c,items:m,choice:p.items.length<2?p.items[0]||null:p,allChoices:p.items.length?p:null}}function n(r){let{choice:a}=i(r);return a}return{getAllPaintingAnnotations:t,getPaintables:i,extractChoices:n}}function dw(e,t,i=[],n=!1,r=[]){if(r.length&&(t=t.filter(l=>r.indexOf(l)===-1)),!t||t.length===0)return;if(t.length===1)return t[0];if(!e)return t.indexOf("none")!==-1?"none":t[0];if(t.indexOf(e)!==-1)return e;let a=e.indexOf("-")!==-1?e.slice(0,e.indexOf("-")):null;if(a&&t.indexOf(a)!==-1)return a;for(let l of i)if(t.indexOf(l)!==-1)return l;if(!n&&e){let c=t.map(p=>p.indexOf("-")!==-1?p.slice(0,p.indexOf("-")):null).indexOf(e);if(c!==-1)return t[c];for(let p of i){let m=p.indexOf("-")!==-1?p.slice(0,p.indexOf("-")):null,h=m?t.indexOf(m):-1;if(h!==-1)return t[h]}}return t.indexOf("none")!==-1?"none":t.indexOf("@none")!==-1?"@none":t[0]}function Kf(e,t,i={}){let{strictFallback:n=!1,defaultText:r="",separator:a=`
|
|
77
|
-
`,fallbackLanguages:l=[],closest:c,skipLanguages:p}=i,m=Object.keys(e||{}),h=c?t:dw(t,m,l,n,p);if(!e)return r;if(typeof e=="string")return e;let y=h?e[h]:void 0;if(y&&h){if(typeof y=="string")return y;if(y.length===1&&y[0]===""){let S=i.skipLanguages||[];return Kf(e,t,{...i,skipLanguages:[...S,h]})}return y.join(a)}return""}function Zf(e,t={}){return Kf(e,t.language||(typeof navigator<"u"?navigator.language:"en"),t)}function kI(e){return e.type==="SpecificResource"?[e.source,{selector:e.selector}]:[e,{selector:null}]}function wa(e,t){let{selector:i,source:n}=Nt(t);if(n.id!==e.id)return[null,n];let r={type:"BoxSelector",spatial:{x:0,y:0,width:Number(e.width),height:Number(e.height)}};return[i?i.type==="TemporalSelector"?{type:"TemporalBoxSelector",temporal:i.temporal,spatial:r.spatial}:i:null,n]}var Jf={makeChoice:()=>{}},ba={type:"unknown"},et=e=>({type:"unknown",reason:e,annotations:{pages:[]}}),em=(e,t)=>({type:"empty",width:e,height:t,annotations:{pages:[]},image:null,images:[]});var Ca=R(q(),1);function OI(e,t){let i=e?.iiif?.meta[t];return i?i.annotationPageManager:null}function hw(e,t){return De(i=>{let n=[];if(!e)return n;let r=Object.keys(i.iiif.entities.AnnotationPage);for(let a of r)if(!t||t.indexOf(a)!==-1){let l=OI(i,a);l&&l.views&&l.views[e]&&n.push(a)}return n},[e,t])}function tm({canvas:e,manifest:t,all:i,canvases:n}){let r=[];if(t)for(let a of t.annotations)r.indexOf(a.id)===-1&&r.push(a.id);if(i){if(n&&n.length)for(let a of n)for(let l of a.annotations)r.indexOf(l.id)===-1&&r.push(l.id)}else if(e)for(let a of e.annotations)r.indexOf(a.id)===-1&&r.push(a.id);return r}function LI(e,t){let i=e?.iiif?.meta[t];return i?i.annotationPageManager:null}function Pa(e,t={}){let i=_e(),n=vt(),r=Ce(),a=eo(),l=(0,Ca.useMemo)(()=>tm({all:t.all,manifest:n,canvas:r,canvases:a}),[t.all,r,a,n]),c=hw(e,t.all?void 0:l),p=(0,Ca.useCallback)(h=>{e&&i.setMetaValue([h,"annotationPageManager","views"],y=>y&&!y[e]?y:{...y||{},[e]:!1})},[e,i]),m=(0,Ca.useCallback)((h,y={})=>{if(!e)return;let S=i.getState(),w=[];if(y?.deselectOthers){let v=Object.keys(S.iiif.entities.AnnotationPage);for(let x of v){let A=LI(S,x);A&&A.views&&A.views[e]&&w.push(x)}}for(let v of w)p(v);i.setMetaValue([h,"annotationPageManager","views"],v=>v&&v[e]?v:{...v||{},[e]:!0})},[e,p,i]);return{availablePageIds:l,enabledPageIds:c,setPageEnabled:m,setPageDisabled:p}}function im(e,t){return De((i,n)=>n.get(e.map(r=>({id:r,type:t}))),[e,t])}var yw=R(q(),1);var vc=R(q(),1);var pw=vc.default.createContext(Pp.store);pw.displayName="ImageServicesHelper";function xc(){return(0,vc.useContext)(pw)}function fw(e){let t=xc();return zt(t,({loaded:i})=>i[e])}function ss(){let e=xc();return zt(e,({loadServiceSync:t})=>t)}function mw(){let e=xc();return zt(e,({loaded:t})=>t)}function gw(){let e=xc();return zt(e,({loadService:t})=>t)}var zI=jn((e,t)=>({loaded:{},setLoaded:(i,n="done")=>{e(r=>({loaded:{...r.loaded,[i]:n}}))}})),FI=Vn();FI.on("loaded",e=>{zI.getState().setLoaded(e.imageServiceId)});function Ea(){let e=ss(),t=mw();return[(0,yw.useCallback)((n,{height:r,width:a})=>n&&e(n,{height:r,width:a},!0),[e]),t]}var so=R(q(),1);function oo(e={}){let t=xa(),i=Ce(e.canvasId?{id:e.canvasId}:void 0);return De((n,r)=>{if(!i)return[];if(t&&e.enableSingleAnnotation)return[t];let a=r.get(i.items),l=[];for(let c of a)l.push(...r.get(c.items));return l},[i])}function nm(e,t=[]){let i=_e(),n=(0,so.useMemo)(()=>Xf(i),[]),r=oo({enableSingleAnnotation:e?.enableSingleAnnotation}),[a,l]=(0,so.useState)(e?.defaultChoices||[]),c=(0,so.useMemo)(()=>n.getPaintables(r,a),[i,r,a,...t]),m={makeChoice:(0,so.useCallback)((h,{deselectOthers:y=!0,deselect:S=!1}={})=>{c.choice&&l(w=>{if(S){let x=w.filter(A=>A!==h);if(x.length===0){let A=c.items[0].resource.id;return A?[A]:[]}return x}if(y)return[h];let v=[...w];if(v.length===0&&c.items.length){let x=c.items[0].resource.id;x&&v.push(x)}return w.indexOf(h)!==-1?w:[...w,h]})},[c.choice])};return[c,m]}var NI=["model/gltf-binary"];function rm(e,t){let i=t.items[0],n=i.resource;return n.format?NI.indexOf(n.format)===-1?et(`3D format: ${n.format} is unsupported`):{type:"3d-model",model:n,annotationId:i.annotationId,annotation:i.annotation}:et("Unknown format")}function vw(e,t){let i=t.items,n=i[0];if(i.length===0||!n)return et("No audio");if(!e.duration)return et("No duration on canvas");if(i.length>1)return et("Only one audio source supported");let r=n.resource;return r?"format"in r?{type:"media",media:{annotationId:n.annotationId,annotation:n.annotation,duration:e.duration,url:r.id,type:"Sound",target:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}},format:r.format,selector:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}}},annotations:{pages:[]}}:et("Audio does not have format"):et("Unknown audio")}function Aa(e,t,i){let n=[];for(let r of t.items){let a=r.resource&&r.resource.type==="SpecificResource"?r.resource.source:r.resource;if(!a.id)return et("No resource Identifier");let l;if(a.service){let x=zn(a);x[0]&&(l=i(x[0],e))}let c={type:"BoxSelector",spatial:{x:0,y:0,width:Number(e.width),height:Number(e.height)}},[p,m]=wa(e,r.target),h=e.id?.split("?")[0]||"";if(!(m.id===e.id||decodeURIComponent(m.id||"")===(e.id||"")||m.id===h||decodeURIComponent(m.id||"")===h))continue;let y=r.resource.width&&r.resource.height?{type:"BoxSelector",spatial:{x:0,y:0,width:r.resource.width,height:r.resource.height}}:void 0,S=r.resource.type==="SpecificResource"?Nt(r.resource):null;if(r.selector){let x=Nt({type:"SpecificResource",source:r.resource,selector:r.selector});x&&(S=x)}let w=S&&S.selector&&(S.selector.type==="BoxSelector"||S.selector.type==="TemporalBoxSelector")?{type:"BoxSelector",spatial:{x:S.selector.spatial.x,y:S.selector.spatial.y,width:S.selector.spatial.width,height:S.selector.spatial.height}}:void 0;l&&!l.id&&(l.id=l["@id"]);let v={id:a.id,type:"Image",annotationId:r.annotationId,annotation:r.annotation,width:Number(p||w?a.width:e.width),height:Number(p||w?a.height:e.height),service:l,sizes:l&&l.sizes?l.sizes:a.width&&a.height?[{width:a.width,height:a.height}]:[],target:p&&p.type!=="PointSelector"?p:c,selector:w||{type:"BoxSelector",spatial:{x:0,y:0,width:Number(e.width),height:Number(e.height)}}};n.push(v)}return{type:"images",image:n[0],images:n,choice:t.choice}}function xw(e,t={},i){let n=e.language||i||"none";switch(e.type){case"TextualBody":{typeof e.value<"u"&&(t[n]=[e.value]);break}case"List":case"Composite":case"Choice":e.items&&e.items.forEach(r=>xw(r,t,n))}return t}function Ia(e,t){let i=[];return t.items.forEach(n=>{if(n.resource){let[r]=wa(e,n.target);i.push({type:"Text",annotationId:n.annotationId,annotation:n.annotation,text:xw(n.resource),target:r})}}),{type:"textual-content",items:i}}var BI=/^.*(?:(?:youtu\.be\/|v\/|vi\/|u\/\w\/|embed\/|shorts\/)|(?:(?:watch)?\?vi?=|&vi?=))([^#&?]*).*/;function Ra(e,t,i){let n=t.items.filter(w=>w.type==="video"),r=n[0],a=!1;if(e.duration||(a=!0),n.length>1||!r)return et("Only one video source supported");let l=n[0]?.resource,c=!!(l.service||[]).find(w=>(w.profile||"").includes("youtube.com"));if(!c&&a)return et("Video does not have duration");if(!l)return et("Unknown video");if((!l.format||l.format==="text/html")&&!c)return et("Video does not have format");let p=[],m=i.get(e.annotations||[]);for(let w of m){let v=i.get(w.items||[]);for(let x of v)if((x.motivation?Array.isArray(x.motivation||"")?x.motivation:[x.motivation]:[]).includes("supplementing")){let C=i.get(x.body||[]);for(let I of C){let E=I;if(E.type==="Choice")for(let L of E.items){let z=i.get(L);z.format==="text/vtt"&&p.push({id:z.id,type:"Text",format:"text/vtt",label:z.label,language:z.language})}else E.format==="text/vtt"&&p.push({id:E.id,type:"Text",format:"text/vtt",label:E.label,language:E.language})}}}let h={annotationId:r.annotationId,annotation:r.annotation,duration:e.duration,url:l.id,type:"Video",target:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}},format:l.format,selector:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}}},y=Nt(r.target);y.selector&&y.selector.type==="TemporalBoxSelector"&&(h.target=y.selector);let{selector:S}=Wn(r.selector);if(S===null){let w=h.target.temporal.startTime,x=(h.target.temporal.endTime||e.duration)-w;h.selector={type:"TemporalSelector",temporal:{startTime:0,endTime:x}}}else S.type==="TemporalSelector"&&(h.selector=S);if(c){h.type="VideoYouTube";let w=l.id.match(BI);if(!w[1])return et("Video is not known youtube video");h.youTubeId=w[1]}return{type:"media",media:h,annotations:{pages:[]},captions:p}}function om(e,t,i,n){let r={type:"complex-timeline",items:[],keyframes:[],duration:e.duration||0},a={type:"complex-choice",items:[]};function l(m){m.choice&&(m.choice.type==="complex-choice"?a.items.push(...m.choice.items):a.items.push(m.choice))}for(let m of t.items){if(m.type==="image"){let h=Aa(e,{choice:null,allChoices:null,types:["image"],items:[m]},i);if(h.type==="images"){l(h),r.items.push(h.image);let y={id:h.image.annotationId,type:"enter",resourceType:"image",time:h.image.target?.temporal?.startTime||0};r.keyframes.push(y);let S={id:h.image.annotationId,type:"exit",resourceType:"image",time:h.image.target?.temporal?.endTime||e.duration||0};r.keyframes.push(S)}}if(m.type==="textualbody"){let h=Ia(e,{choice:null,allChoices:null,types:["textualbody"],items:[m]});if(h.type==="textual-content"){l(h);let y=h.items[0];r.items.push(y);let S=y.target,w={id:y.annotationId,type:"enter",resourceType:"text",time:S.temporal?.startTime||0};r.keyframes.push(w);let v={id:y.annotationId,type:"exit",resourceType:"text",time:S.temporal?.endTime||e.duration||0};r.keyframes.push(v)}}if(m.type==="video"){let h=Ra(e,{choice:null,allChoices:null,types:["video"],items:[m]},n);if(h.type==="media"){l(h);let y=h.media;r.items.push(y);let S={id:y.annotationId,type:"enter",resourceType:"video",time:y.target?.temporal?.startTime||0};r.keyframes.push(S);let w={id:y.annotationId,type:"exit",resourceType:"video",time:y.target?.temporal?.endTime||e.duration||0};r.keyframes.push(w)}}}r.keyframes.sort((m,h)=>m.time-h.time);let c=[],p=[];for(let m of r.keyframes){if(m.resourceType==="image"||m.resourceType==="text"){p.push(m);continue}if(m.type==="enter"){c.length===0&&(m.isPrime=!0),c.push(m),p.push(m);continue}if(m.type==="exit"&&(p.push(m),c=c.filter(h=>h.id!==m.id),c.length!==0)){let h=c[0],y={id:h.id,type:"change",isPrime:!0,resourceType:h.resourceType,time:m.time};p.push(y)}}return r.keyframes=p,a.items.length&&(r.choice=a),r}var Sc={},sm={get(e){return e},setMetaValue([e,t,i],n){let r=sm.getResourceMeta(e,t),a=r?r[i]:void 0,l=typeof n=="function"?n(a):n;Sc[e]={...Sc[e]||{},[t]:{...(Sc[e]||{})[t]||{},[i]:l}}},getResourceMeta:(e,t)=>{let i=Sc[e];if(i)return t?i[t]:i},async load(e){let t=typeof e=="string"?e:e.id;return fetch(t).then(i=>i.json())},requestStatus(e){}};function am({canvas:e,paintables:t,supports:i,loadImageService:n,vault:r=sm}){if(!e)return ba;if(t.types.length===0)return i.indexOf("empty")!==-1?em(e.width,e.height):ba;if(t.types.length!==1)if(t.types.length===2&&t.types.indexOf("text")!==-1)t.types=t.types.filter(l=>l!=="text");else return i.indexOf("complex-timeline")===-1?et("Complex timeline not supported"):om(e,t,n,r);let a=t.types[0];return a==="image"?i.indexOf("images")===-1?et("Image not supported"):Aa(e,t,n):a==="Model"||a==="model"?i.indexOf("3d-model")===-1?et("3D not supported"):rm(e,t):a==="textualbody"?i.indexOf("textual-content")===-1?et("Textual content not supported"):Ia(e,t):a==="sound"||a==="audio"?i.indexOf("media")===-1?et("Media not supported"):vw(e,t):a==="video"?i.indexOf("media")===-1?et("Media not supported"):Ra(e,t,r):ba}function lm(e){let t=vt(),i=Ce(),n=_e(),r=pa(),a=e?.emitter||r,[l,c]=Ea(),{enabledPageIds:p}=Pa(e?.annotationPageManagerId||t?.id||i?.id,{all:!1}),m=im(p,"AnnotationPage"),h=e?.strategies||["empty","images","media","textual-content","complex-timeline"],[y,S]=nm(e,[c]);(0,as.useEffect)(()=>{let v=x=>{S.makeChoice(x.choiceId,{deselectOthers:x.deselectOthers,deselect:x.deselect})};return a.on("make-choice",v),()=>{a.off("make-choice",v)}},[]);let w=(0,as.useMemo)(()=>am({canvas:i,paintables:y,supports:h,loadImageService:l,vault:n}),[i,y,n,S.makeChoice]);return(0,as.useEffect)(()=>{let v=y.allChoices,x={canvasId:i?.id,manifestId:t?.id};v&&a.emit("choice-change",{choice:v,partOf:x})},[i?.id,y.allChoices]),(0,as.useMemo)(()=>w.type==="unknown"?[w,Jf]:[{...w,annotations:{pages:m}},S],[w,m])}var wc=R(q(),1),Ta=(0,wc.createContext)(null);Ta.displayName="Strategy";function pt(){let e=(0,wc.useContext)(Ta);if(!e)throw new Error("useStrategy must be used within a StrategyProvider");return e}var bc=R(q(),1),_a=(0,bc.createContext)(null);_a.displayName="Controls";function ni(){let e=(0,bc.useContext)(_a);if(!e)throw new Error("useStrategy must be used within a StrategyProvider");return e}var um=R(B(),1);function cm({strategies:e,registerActions:t,defaultChoices:i,onChoiceChange:n,mediaControlsDeps:r,renderMediaControls:a,renderViewerControls:l,viewControlsDeps:c,renderComplexTimelineControls:p,complexTimelineControlsDeps:m,throwOnUnknown:h,children:y}){let S=Ce(),w=_e(),v=(0,vr.useMemo)(()=>yr(w),[w]),[x,A]=lm({strategies:e||["images"],defaultChoices:i?.map(({id:L})=>L)}),C="choice"in x?x.choice:void 0;if((0,vr.useEffect)(()=>{t&&t(A)},[x.annotations]),(0,vr.useEffect)(()=>{n&&n(C)},[C]),(0,vr.useEffect)(()=>{if(i)for(let L of i)typeof L.opacity<"u"&&v.applyStyles({id:L.id},"atlas",{opacity:L.opacity})},[i]),x.type==="unknown"&&h)throw new Error(x.reason||"Unknown strategy");let I=(0,vr.useMemo)(()=>({renderMediaControls:a,mediaControlsDeps:r||[],renderViewerControls:l,viewControlsDeps:c||[],renderComplexTimelineControls:p,complexTimelineControlsDeps:m||[]}),[r,a,l,c,p,m]),E=(0,vr.useMemo)(()=>({strategy:x,actions:A,choices:"choice"in x?x.choice:[]}),[x,S]);return(0,um.jsx)(_a.Provider,{value:I,children:(0,um.jsx)(Ta.Provider,{value:E,children:y})})}var Sw=R(q(),1);var ww=R(B(),1);function dm({x:e=0,y:t=0,keepCanvasScale:i,children:n}){let{strategy:r}=pt(),a=Ce(),l=ga(a,["deep-zoom"]),c=(0,Sw.useMemo)(()=>i?1:Math.max(1,...r.type==="images"?r.images.map(m=>(m.width||0)/m.target?.spatial.width):[]),[i,r]);KS(c);let p=r.type==="images"?r.images.length:0;return a?(0,ww.jsx)("world-object",{height:a.height,width:a.width,x:e,y:t,...l,children:n},`${a.id}/${r.type}/${p}`):null}var bw=R(B(),1);function Cc({style:e}){let t=Ce();return!t||!t.height||!t.width?null:(0,bw.jsx)("box",{interactive:!1,target:{x:0,y:0,width:Number(t.width),height:Number(t.height)},style:e})}var Cw=R(B(),1);function hm({backgroundStyle:e,alwaysShowBackground:t}){let{strategy:i}=pt();return i.type!=="empty"&&!t?null:(0,Cw.jsx)(Cc,{style:e})}var Rc=R(q(),1);var gt=R(q(),1);function Pw(e){return{isMuted:!1,playRequested:!1,isPlaying:!1,isFinished:!1,volume:100,duration:e}}function DI(e,t){switch(t.type){case"RESET":return t.state;case"FINISHED":return{...e,isFinished:!0,isPlaying:!1,playRequested:!1};case"PLAY_PAUSE":return{...e,isFinished:!1,isPlaying:!e.isPlaying};case"PLAY_REQUESTED":return{...e,isFinished:!1,playRequested:!0};case"PAUSE":return{...e,isPlaying:!1};case"PLAY":return{...e,isFinished:!1,playRequested:!1,isPlaying:!0};case"MUTE":return{...e,isMuted:!0};case"SET_VOLUME":return{...e,volume:t.volume,isMuted:t.volume===0};case"TOGGLE_MUTE":return{...e,isMuted:!e.isMuted};case"UNMUTE":return{...e,isMuted:!1}}return e}function Pc(e){let t=Math.round(e);return`${Math.floor(t/60)}:${`${t%60}`.padStart(2,"0")}`}function ao(e){let[t,i]=(0,gt.useReducer)(DI,Pw(e.duration));(0,gt.useEffect)(()=>{i({type:"RESET",state:Pw(e.duration)})},[e.duration]);let n=(0,gt.useRef)(null),r=(0,gt.useRef)(null),a=(0,gt.useRef)(null),l=(0,gt.useRef)(!1),c=(0,gt.useCallback)(()=>{r.current&&n.current&&(r.current.innerHTML=Pc(n.current.currentTime),a.current&&(a.current.style.width=`${n.current.currentTime/e.duration*100}%`),l.current!==n.current.muted&&(l.current=n.current.muted,i(n.current.muted?{type:"MUTE"}:{type:"UNMUTE"})))},[e.duration]),p=(0,gt.useCallback)(()=>{n.current&&(i({type:"PLAY_REQUESTED"}),n.current.play().then(()=>{i({type:"PLAY"})}),c())},[c]),m=(0,gt.useCallback)(()=>{n.current&&(n.current.duration>0&&n.current.paused?p():h())},[c]),h=(0,gt.useCallback)(()=>{n.current&&(n.current.pause(),i({type:"PAUSE"}),c())},[c]),y=(0,gt.useCallback)(()=>{n.current&&(n.current.muted=!n.current.muted,i(n.current.muted?{type:"MUTE"}:{type:"UNMUTE"}))},[]),S=(0,gt.useCallback)(()=>{n.current&&(n.current.muted=!0,i({type:"MUTE"}))},[]),w=(0,gt.useCallback)(()=>{n.current&&(n.current.muted=!1,i({type:"UNMUTE"}))},[]),v=(0,gt.useCallback)(C=>{n.current&&(n.current.muted=!1,n.current.volume=C/100,i({type:"SET_VOLUME",volume:C}))},[]),x=(0,gt.useCallback)(C=>{n.current&&(n.current.currentTime=Math.max(0,Math.min(C*e.duration,e.duration)),c())},[]),A=(0,gt.useCallback)(C=>{if(n.current){let I=typeof C=="function"?C(n.current.currentTime):C;n.current.currentTime=Math.max(0,Math.min(I,e.duration)),c()}},[]);return(0,gt.useEffect)(()=>{let C=setInterval(()=>{c()},350);return()=>clearInterval(C)},[c,e.duration]),(0,gt.useEffect)(()=>{let C=()=>{i({type:"FINISHED"})},I=n.current;return I?.addEventListener("ended",C),()=>I?.removeEventListener("ended",C)},[]),[{element:n,currentTime:r,progress:a},t,{play:p,pause:h,playPause:m,mute:S,unmute:w,toggleMute:y,setVolume:v,setDurationPercent:x,setTime:A}]}function Ew({currentKeyFrameIndex:e,keyframes:t,targetTime:i,currentTime:n}){if(n<=i){let r=t.findIndex(c=>c.time>i);if(r===-1)return[e,[]];let a={},l=t.slice(e,r);for(let c of l)c.type==="enter"&&(a[c.id]=c),c.type==="exit"&&(a[c.id]?delete a[c.id]:a[c.id]=c);return[r,Object.values(a)]}return[e,[]]}function Aw({complexTimeline:e,startTime:t=0}){let i=Vn(),n={},r={progress:null,currentTime:null},a=0,l=null,c=0,p=null;function m(){let I=A.getState().visibleElements,E=n,L=[],z=Object.keys(E);for(let M of z){let Q=E[M],V=I[M];Q&&V&&L.push(Q)}return L}function h(){return Object.keys(n).map(I=>n[I])}function y(C){r.currentTime&&(r.currentTime.innerHTML=Pc(C),r.progress&&(r.progress.style.width=`${C/e.duration*100}%`))}let S=()=>{let C=A.getState(),I=C.currentPrime;if(!I)return;let E=n,L=C.visibleElements,z=Object.keys(E);for(let M of z){let Q=E[M],V=L[M];if(Q&&M!==I.id&&V){let J=c-V.time*1e3;Math.abs(c-V.time*1e3-Q.currentTime*1e3)>300&&(Q.currentTime=J/1e3)}}},w=(C=0)=>{let I=C-a,E=A.getState();if(E.isPlaying){let L=E.currentPrime;if(L){let V=n[L.id];V&&(V.paused?c+=I:c=(L.time+V.currentTime)*1e3)}else c+=I;let z=c/1e3;if(z>E.duration){A.getState().setTime(0),A.setState({isPlaying:!1}),v(),y(0);return}y(z);let[M,Q]=Ew({currentTime:z,currentKeyFrameIndex:E.nextKeyframeIndex,keyframes:E.complexTimeline.keyframes,targetTime:z});Q.length&&E.applyKeyframes(M,Q)}a=C,l=requestAnimationFrame(w)},v=()=>{l&&cancelAnimationFrame(l)},x=(C,I)=>{},A=jn((C,I)=>({complexTimeline:e,elements:{},visibleElements:{},isBuffering:!1,bufferMap:{},isMuted:!1,playRequested:!1,isPlaying:!1,isFinished:!1,isReady:!1,volume:100,duration:e.duration,clockStartRequests:0,clockStartTime:0,primeTime:0,currentPrime:null,clockRunning:!1,nextKeyframeIndex:0,startClock:()=>{I().clockRunning||(w(),p=setInterval(S,500)),C({clockRunning:!0,clockStartRequests:I().clockStartRequests+1})},applyKeyframes(E,L){let z=I(),M={...z.visibleElements},Q=z.currentPrime;for(let V of L)V.type==="enter"&&(M[V.id]=V,i.emit("complex-timeline.enter",{id:V.id})),V.type==="exit"&&(M[V.id]=null,i.emit("complex-timeline.exit",{id:V.id})),V.isPrime&&(Q=V);C({nextKeyframeIndex:E,visibleElements:M,currentPrime:Q})},stopClock:()=>{let E=I().clockStartRequests;if(E!==0){if(E===1){v(),p&&clearInterval(p),C({clockRunning:!1,clockStartRequests:0});return}C({clockStartRequests:E-1})}},setElement:(E,L)=>{n[E]=L;let z=Object.keys(n),M=I().complexTimeline;x(L,E),M.items.filter(V=>V.type!=="Image"&&V.type!=="Text").every(V=>z.includes(V.annotationId))&&!I().isReady&&(i.emit("complex-timeline.ready",{complexTimeline:M}),C({isReady:!0}))},removeElement:E=>{delete n[E]},mute(){for(let E of h())E.muted=!0;C({isMuted:!0})},unmute(){for(let E of h())E.muted=!1;C({isMuted:!1})},play(){if(!I().isPlaying){for(let L of m())L.play();C({isPlaying:!0})}},pause(){if(I().isPlaying){for(let L of m())L.pause();C({isPlaying:!1})}},playPause(){let E=I();E.isPlaying?E.pause():E.play()},setDurationPercent(E){let z=I().duration*E;I().setTime(z)},setTime(E){let L=I(),z=c/1e3,M=typeof E=="function"?E(z):E,Q=L.nextKeyframeIndex;if(z>M){C({visibleElements:{},currentPrime:null});let pe=Object.keys(L.visibleElements);for(let Re of pe)i.emit("complex-timeline.exit",{id:Re});z=0,Q=0}let[V,J]=Ew({currentTime:z,currentKeyFrameIndex:Q,keyframes:L.complexTimeline.keyframes,targetTime:M});L.applyKeyframes(V,J),c=M*1e3;let W=A.getState().visibleElements,ee=n,Me=Object.keys(W);for(let pe of Me){let Re=W[pe];if(Re){let ke=ee[pe];ke&&(ke.currentTime=(c-Re.time*1e3)/1e3)}}y(M)},setVolume(E){for(let L of h())L.volume=Math.min(1,Math.max(0,E/100));C({volume:E})},toggleMute(){let E=I();E.isMuted?(E.unmute(),C({isMuted:!1})):(E.mute(),C({isMuted:!0}))},clearProgressElement(){r.progress=null},setProgressElement(E){r.progress=E},setCurrentTimeElement(E){r.currentTime=E},clearCurrentTimeElement(){r.currentTime=null}}));return i.on("complex-timeline.enter",C=>{let I=A.getState(),E=C.id,L=n[E];L&&I.isPlaying&&L.play()}),i.on("complex-timeline.exit",C=>{let I=A.getState(),E=C.id,L=n[E];L&&(L.currentTime=0,L.pause())}),A.getState().setTime(t),{store:A,emitter:i}}var Ma=R(q(),1);var an=R(q(),1),sn=R(B(),1),Rw=an.default.createContext("en"),Tw=an.default.createContext({}),_w=an.default.createContext(null);function jI(e){return(0,sn.jsx)(Tw.Provider,{value:e.translations,children:e.children})}function VI(e){return(0,sn.jsx)(Rw.Provider,{value:e.language,children:e.children})}function UI(e){return(0,sn.jsx)(_w.Provider,{value:e.convert,children:e.children})}function pm(){return an.default.useContext(_w)}function Ec(){return an.default.useContext(Rw)}function fm(){return an.default.useContext(Tw)}function Iw(e){return e.indexOf("-")!==-1?e.slice(0,e.indexOf("-")):e}function Mw({as:e,language:t,children:i,viewingDirection:n,...r}){let a=Ec();return(0,an.useMemo)(()=>Iw(a)===Iw(t),[a,t])?e?(0,sn.jsx)(e,{...r,children:i}):(0,sn.jsx)("span",{...r,children:i}):e?(0,sn.jsx)(e,{...r,lang:t,dir:n,children:i}):(0,sn.jsx)("span",{...r,lang:t,dir:n,children:i})}function kw(e,t,i){if(t.length===0)return;if(t.length===1)return t[0];if(t.indexOf(e)!==-1)return e;let n=e.indexOf("-")!==-1?e.slice(0,e.indexOf("-")):null;if(n&&t.indexOf(n)!==-1)return n;for(let r of i)if(t.indexOf(r)!==-1)return r;return t.indexOf("none")!==-1?"none":t.indexOf("@none")!==-1?"@none":t[0]}var Ow=(e,t=[])=>{let i=Ec();return(0,an.useMemo)(()=>{let n=e();return kw(i,n,[])},[i,...t])};function lo(e,t,i,n){return t?i?i(e[t]||t,n||"none"):e[t]||t:""}function Lw(e,t,i=`
|
|
78
|
-
`,n={}){let r=
|
|
79
|
-
`,c=t){let p=Object.keys(r||{}),m=
|
|
80
|
-
`):""}}function Ii({as:e,defaultText:t,enableDangerouslySetInnerHTML:i,children:n,separator:r,...a}){let l=
|
|
76
|
+
`);let I=C.state[c];if(I==null)return;JSON.stringify(r.getState())!==JSON.stringify(I)&&w(I);return}r.dispatchFromDevtools&&typeof r.dispatch=="function"&&r.dispatch(C)});case"DISPATCH":switch(x.payload.type){case"RESET":return w(v),c===void 0?h?.init(r.getState()):h?.init(ic(p.name));case"COMMIT":if(c===void 0){h?.init(r.getState());return}return h?.init(ic(p.name));case"ROLLBACK":return hf(x.state,C=>{if(c===void 0){w(C),h?.init(r.getState());return}w(C[c]),h?.init(ic(p.name))});case"JUMP_TO_STATE":case"JUMP_TO_ACTION":return hf(x.state,C=>{if(c===void 0){w(C);return}JSON.stringify(r.getState())!==JSON.stringify(C[c])&&w(C[c])});case"IMPORT_STATE":{let{nextLiftedState:C}=x.payload,I=(A=C.computedStates.slice(-1)[0])==null?void 0:A.state;if(!I)return;w(c===void 0?I:I[c]),h?.send(null,C);return}case"PAUSE_RECORDING":return S=!S}return}}),v},PA=CA,hf=(e,t)=>{let i;try{i=JSON.parse(e)}catch(n){console.error("[zustand devtools middleware] Could not parse the received json",n)}i!==void 0&&t(i)},EA=e=>(t,i,n)=>{let r=n.subscribe;return n.subscribe=(l,c,p)=>{let m=l;if(c){let h=p?.equalityFn||Object.is,y=l(n.getState());m=S=>{let w=l(S);if(!h(y,w)){let v=y;c(y=w,v)}},p?.fireImmediately&&c(y,y)}return r(m)},e(t,i,n)},AA=EA,IA=(e={},t)=>{switch(t.type){case Hu:return{...e,[t.payload.id]:t.payload.type};case qu:return{...e,...t.payload.mapping};default:return e}};function pf(e,t,i,n){return!(!e[i]||!e[i][t]||!e[i][t][n]||!Array.isArray(e[i][t][n]))}function TA(e,t){let i={},n=[];for(let[r,a]of Object.entries(e||{})){n.push(r);let l=(t||{})[r];if(!l||l.length===0){i[r]=a;continue}i[r]=l}for(let[r,a]of Object.entries(t||{}))n.indexOf(r)===-1&&(i[r]=a);return i}function fe(e){return e.payload}function ff(e,t){return typeof e>"u"?t:e}var RA=(e=df(),t)=>{let i=(n,r)=>({...e,[fe(t).type]:{...e[fe(t).type],[fe(t).id]:{...n,...r}}});switch(t.type){case Fu:{if(!e[fe(t).type]||!e[fe(t).type][fe(t).id])return e;let n=e[fe(t).type][fe(t).id];return typeof n=="string"?e:i(n,{[fe(t).key]:fe(t).value})}case Nu:{if(!pf(e,fe(t).id,fe(t).type,fe(t).key))return e;let n=e[fe(t).type][fe(t).id];if(typeof n=="string")return e;let r=Array.from(n[fe(t).key]),[a]=r.splice(fe(t).startIndex,1);return r.splice(fe(t).endIndex,0,a),i(n,{[fe(t).key]:r})}case zu:{let n=Object.keys(fe(t).entities),r={...e};for(let a of n){let l=fe(t).entities[a],c={...e[a]||{}},p=!1,m=Object.keys(l||{})||[];if(l&&m){for(let h of m)p=!0,c[h]=e[a][h]?TA(e[a][h],l[h]):l[h];p&&(r[a]=c)}}return r}case Bu:{if(!pf(e,fe(t).id,fe(t).type,fe(t).key))return e;let n=e[fe(t).type][fe(t).id],r=Array.from(n[fe(t).key]);return r.splice(ff(fe(t).index,r.length+1),0,fe(t).reference),i(n,{[fe(t).key]:r})}case ta:case Du:{if(!pf(e,fe(t).id,fe(t).type,fe(t).key))return e;let n=e[fe(t).type][fe(t).id],r=Array.from(n[fe(t).key]),a=ff(fe(t).index,r.findIndex(l=>l&&l.id===fe(t).reference.id));return a===-1||r[a]?.id!==fe(t).reference.id?e:(t.type===ta?r.splice(a,1,fe(t).reference):r.splice(a,1),i(n,{[fe(t).key]:r}))}case ju:{let n=e[fe(t).type][fe(t).id];if(!n)return e;let r=Array.from(n.metadata||[]),a=fe(t);return r.splice(ff(t.payload.beforeIndex,r.length+1),0,{label:a.label,value:a.label}),i(n,{metadata:r})}case Uu:{let n=e[fe(t).type][fe(t).id];if(typeof n=="string"||!n)return e;let r=Array.from(n.metadata||[]),[a]=r.splice(fe(t).startIndex,1);return r.splice(fe(t).endIndex,0,a),i(n,{metadata:r})}case ia:case Vu:{let n=e[fe(t).type][fe(t).id],r=Array.from(n.metadata||[]),a=fe(t).atIndex;return typeof a>"u"||a===-1||!r[a]?e:(t.type===ia?r.splice(a,1,{label:fe(t).label,value:fe(t).value}):r.splice(a,1),i(n,{metadata:r}))}default:return e}},_A=(e={},t)=>{switch(t.type){case Qu:case Xu:return{...e,[t.payload.id]:{requestUri:t.payload.id,loadingState:na,uriMismatch:!1,resourceUri:t.payload.id}};case Gu:return{...e,[t.payload.requestId]:{...e[t.payload.requestId]||{},uriMismatch:!0,resourceUri:t.payload.actualId},[t.payload.actualId]:{requestUri:t.payload.requestId,loadingState:e[t.payload.requestId].loadingState,uriMismatch:!0,resourceUri:t.payload.actualId}};case $u:return{...e,[t.payload.id]:{...e[t.payload.id]||{},loadingState:jo,error:t.payload.message}};case Yu:return{...e,[t.payload.id]:{...e[t.payload.id]||{},loadingState:Vo,error:void 0}}}return e},MA=(e={},t)=>{let{id:i,updateValue:n,value:r,meta:a,key:l}=t&&t.payload||{};switch(t.type){case af:return{...e,[i]:{...e[i]||{},[a]:{...e[i]?e[i][a]||{}:{},[l]:r}}};case lf:return{...e,[i]:{...e[i]||{},[a]:{...e[i]?e[i][a]||{}:{},[l]:e[i]&&e[i][a]?n(e[i][a][l]):n(void 0)}}};case uf:return e[i]&&e[i][a]&&e[i][a][l]?{...e,[i]:{...e[i]||{},[a]:{...e[i]?e[i][a]||{}:{},[l]:void 0}}}:e;default:return e}};function eS(e={}){let t=Object.keys(e);return function(n={},r){let a=!1,l={};for(let c=0;c<t.length;c++){let p=t[c];l[p]=e[p](n[p],r),a=a||l[p]!==n[p]}return a?l:n}}function kA(e){return(t,i)=>i&&i.type===Uo?i.payload.actions.reduce(e,t):i&&i.type===Ku?{...t,iiif:{...t.iiif,...i.payload.state}}:e(t,i)}var OA=eS({mapping:IA,entities:RA,requests:_A,meta:MA});function LA(){return{iiif:{entities:df(),meta:{},mapping:{},requests:{}}}}function tS(e={}){let{enableDevtools:t=!1,iiifStoreName:i="iiif",defaultState:n=LA(),customReducers:r={}}=e,a=kA(eS({[i]:OA,...r})),c=!!(typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION__)?PA:(p,m)=>p;return eu(AA(c(wA(a,n),{enabled:t})))}function ti(e,t,i,n=!0){t[Xo]=t[Xo]||[],t[Xo].push(e);let r=new Map;Object.defineProperty(t,e,{enumerable:n,get(){if(typeof t[Yr][e]>"u")return;let a=t[Yr][e];if(!a)return a;let l=i.get(t[Yr][e],{parent:this.id?{id:this.id,type:this.type}:void 0});return r.has(l)||(r.clear(),r.set(l,Xr(l,i))),r.get(l)},set(a){t[Yr][e]!==a&&(this[Gr]?i.modifyEntityField({id:this.id,type:this.type},e,rS(a)):this[Yr][e]=a)}})}var Yr=Symbol.for("_refs_"),Gr=Symbol.for("_reactive_"),Xo=Symbol.for("_defined_"),iS=Symbol.for("_parent_");function zA(e,t=!1,i){let n={id:"",type:"unknown",[Xo]:[],[Yr]:{},[iS]:i||null,[Gr]:null,is(r){return typeof r=="string"?this.id===r:r.id?r.id===this.id:!1},reactive(){if(!this[Gr])return this[Gr]=this.subscribe(()=>this.refresh(),!0),()=>{this.unreactive()}},refresh(){if(this.id){let r=this.unwrap();for(let a of Object.keys(r||{}))this[Xo].includes(a)?this[Yr][a]=r[a]:this[a]=r[a]}},unreactive(){this[Gr]&&(this[Gr](),this[Gr]=null)},unwrap(){if(!this.id)throw new Error("Invalid object");let r=this[iS];return e.get(this.id,{parent:r?{id:r,type:"unknown"}:void 0})},toPresentation3(){return e.toPresentation3(this.unwrap())},toPresentation2(){return e.toPresentation2(this.unwrap())},valueOf(){return this.unwrap()},toJSON(){let r=this;return{...r,items:r.items,annotations:r.annotations,structures:r.structures,seeAlso:r.seeAlso,service:r.service,services:r.services,rendering:r.rendering,partOf:r.partOf,start:r.start,supplementary:r.supplementary,homepage:r.homepage,thumbnail:r.thumbnail,placeholderCanvas:r.placeholderCanvas,accompanyingCanvas:r.accompanyingCanvas,provider:r.provider}},subscribe(r,a=!0){return e.subscribe(()=>this.id?e.get(this.id):null,r,a)}};return ti("items",n,e),ti("annotations",n,e),ti("structures",n,e),ti("seeAlso",n,e),ti("rendering",n,e),ti("partOf",n,e),ti("start",n,e,!1),ti("supplementary",n,e),ti("homepage",n,e),ti("thumbnail",n,e),ti("placeholderCanvas",n,e,!1),ti("accompanyingCanvas",n,e,!1),ti("provider",n,e),ti("body",n,e),ti("logo",n,e),n}function FA(e){return!!e[Xo]}function rS(e){return Array.isArray(e)?e.map(t=>rS(t)):!e||!e.type?e:{id:e.id,type:e.type}}function Xr(e,t,i=!1,n){if(Array.isArray(e))return e.map(c=>Xr(c,t,i));if(!e||!e.type||!e.id)return e;let r=zA(t,i),a=Object.create(r),l=Object.assign(a,e);return i&&l.reactive(),l}function nS(e){switch(e){case"Image":case"Video":case"Sound":case"Dataset":case"Text":case"Composite":case"List":case"Independents":case"Audience":return"ContentResource";case"ImageService1":case"ImageService2":case"ImageService3":return"Service"}return e}var Ko=class{constructor(e,t){Rt(this,"options"),Rt(this,"store"),Rt(this,"emitter"),Rt(this,"isBatching",!1),Rt(this,"batchQueue",[]),Rt(this,"remoteFetcher"),Rt(this,"staticFetcher"),Rt(this,"defaultFetcher",i=>fetch(i).then(n=>{if(n.status===200)return n.json();{let r=new Error(`${n.status} ${n.statusText}`);throw r.name="HTTPError",r}})),this.options=Object.assign({reducers:{},customFetcher:this.defaultFetcher,enableDevtools:!0},e||{}),this.store=t||tS({customReducers:this.options.reducers,defaultState:this.options.defaultState,enableDevtools:this.options.enableDevtools}),this.emitter=Jl(),this.remoteFetcher=sf(this,this.options.customFetcher),this.staticFetcher=sf(this,(i,n)=>n)}batch(e){this.isBatching=!0;try{e(this),this.isBatching=!1,this.dispatch(Wo({actions:this.batchQueue}))}catch(t){throw this.batchQueue=[],this.isBatching=!1,t}this.batchQueue=[]}async asyncBatch(e){this.isBatching=!0;try{await e(this),this.isBatching=!1,this.dispatch(Wo({actions:this.batchQueue}))}catch(t){throw this.batchQueue=[],this.isBatching=!1,t}this.batchQueue=[]}modifyEntityField(e,t,i){this.dispatch(Ur.modifyEntityField({id:e.id,type:e.type,key:t,value:i}))}dispatch(e){if(this.isBatching)this.batchQueue.push(e);else{if(e.type===Uo){for(let n of e.payload.actions)this.emitter.emit(n.type,{action:n,state:this.store.getState()});this.store.dispatch(e);let i=this.getState();for(let n of e.payload.actions)this.emitter.emit(`after:${n.type}`,{action:n,state:i});return}this.emitter.emit(e.type,{action:e,state:this.store.getState()}),this.store.dispatch(e);let t=this.store.getState();this.emitter.emit(`after:${e.type}`,{action:e,state:t});return}}on(e,t){return this.emitter.on(e,t),()=>{this.emitter.off(e,t)}}serialize(e,t){return ef(this.getState().iiif,e,t)}toPresentation2(e){return this.serialize(e,tf)}toPresentation3(e){return this.serialize(e,nf)}hydrate(e,t,i={}){return this.get(e,t,{...i,skipSelfReturn:!1})}get(e,t,i={}){typeof t!="string"&&(i=t||{},t=void 0);let{skipSelfReturn:n=!0}=i||{},r=i.parent?typeof i.parent=="string"?i.parent:i.parent.id:void 0;if(Array.isArray(e))return e.map(h=>this.get(h,i));let a=this.getState();if(tn(e)&&!i.preserveSpecificResources&&(e=e.source),typeof e=="string"){let h=nS(t||a.iiif.mapping[e]);if(!h)return n?null:{id:e,type:"unknown"};e={id:e,type:h}}if(e&&e.partOf&&!r&&!i.skipPartOfCheck){let h=Array.isArray(e.partOf)?e.partOf[0]:e.partOf;h&&(typeof h=="string"&&(r=h),typeof h.id=="string"&&(r=h.id))}let l=nS(t||e?.type),c=e?.id,p=a.iiif.entities[l];if(!p){let h=a.iiif.requests[c];return h&&h.resourceUri!==c?this.get(h.resourceUri,i):n?null:e}let m=p[e.id];if(m&&m[mt]){let h=m[mt].find(y=>r?y[Ei]===r:y[Ei]===m.id);return Go(m,h)}return p[e.id]||(n?null:e)}select(e){return e(this.getState())}getStore(){return this.store}getState(){return this.store.getState()}deep(e,t){if(typeof e>"u")return this.get(t,{skipSelfReturn:!1});if(typeof e=="function")try{let n=e(this.get(t,{skipSelfReturn:!1})),r=a=>this.deep(a,n);return r.size=Array.isArray(n)?n.length:1,r}catch{let r=a=>this.deep(a,void 0);return r.size=0,r}let i=n=>this.deep(n,e);return i.size=Array.isArray(e)?e.length:1,i}loadManifest(e,t){let i=typeof e=="string"?e:e.id;return this.load(i,t)}loadCollection(e,t){let i=typeof e=="string"?e:e.id;return this.load(i,t)}load(e,t){let i=typeof e=="string"?e:e.id;return t?Promise.resolve(this.staticFetcher(i,t)):Promise.resolve(this.remoteFetcher(i))}loadSync(e,t){let i=typeof e=="string"?e:e.id;return this.staticFetcher(i,t)}loadManifestSync(e,t){let i=typeof e=="string"?e:e.id;return this.loadSync(i,t)}loadCollectionSync(e,t){let i=typeof e=="string"?e:e.id;return this.loadSync(i,t)}areInputsEqual(e,t){return of(e,t)}subscribe(e,t,i){return typeof i>"u"&&(typeof t>"u"||t===!1||t===!0)&&(i=t,t=e,e=n=>n),this.store.subscribe(e,n=>t(n,this),{equalityFn:of,fireImmediately:!i})}async ensureLoaded(e){let t=typeof e=="string"?e:e.id;this.requestStatus(t)||await this.load(t)}requestStatus(e){return this.select(t=>t.iiif.requests[e])}getResourceMeta(e,t){let i=this.getState().iiif.meta[e];if(i)return t?i[t]:i}getObject(e,t,i={}){let{reactive:n,...r}=i;return Xr(this.get(e,t,r),this,n)}async loadObject(e,t){return Xr(await this.load(e,t),this)}async loadManifestObject(e,t){return Xr(await this.loadManifest(e,t),this)}async loadCollectionObject(e,t){return Xr(await this.loadCollection(e,t),this)}wrapObject(e){return Xr(this.get(e,{skipSelfReturn:!1}),this)}isWrapped(e){return FA(e)}setMetaValue([e,t,i],n){this.dispatch(typeof n=="function"?cf.setMetaValueDynamic({id:e,meta:t,key:i,updateValue:n}):cf.setMetaValue({id:e,meta:t,key:i,value:n}))}};function oS(){return typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}function aa(e){let t=oS();try{let n=t.IIIF_VAULT;if(n)return n}catch{}let i=new Ko(e);try{t.IIIF_VAULT=i}catch{}return i}var gf=T(B(),1),mr=nc.default.createContext({vault:null,setVaultInstance:e=>{}});function Kr({vault:e,vaultOptions:t,useGlobal:i,resources:n,children:r}){let[a,l]=(0,nc.useState)(()=>e||(i?aa(t):t?new Ko(t):new Ko));return(0,gf.jsx)(mr.Provider,{value:{vault:a,setVaultInstance:l},children:(0,gf.jsx)(ei,{value:n||{},children:r})})}var BS=T(H(),1),cc=T(H(),1);var sS=T(H(),1);function Zr(e){let t=(0,sS.useContext)(mr);return e||(t&&t.vault?t.vault:aa())}var gr=T(H(),1);function la(e,{noCache:t=!1}={}){let i=typeof e=="string"?e:e.id,n=Zr(),[r,a]=(0,gr.useState)(i),[l,c]=(0,gr.useState)(void 0),p=(0,gr.useMemo)(()=>n.get(i,{skipSelfReturn:!0})||void 0,[i,n]),[m,h]=(0,gr.useState)(p);return(0,gr.useEffect)(()=>{(async()=>{try{let y=p&&!t?p:await n.load(i),S=y?y.id||y["@id"]:null;y&&r!==S&&a(S),h(y)}catch(y){c(y)}})()},[i,t]),{isLoaded:!!m,id:r,requestId:i,error:l,resource:m,cached:!!(m&&m===p)}}function yf(e,t){let{id:i,isLoaded:n,error:r,resource:a,requestId:l,cached:c}=la(e,t);return{id:i,isLoaded:n,error:r,manifest:a,requestId:l,cached:c}}var aS=T(B(),1);function vf({manifest:e,children:t}){return(0,aS.jsx)(ei,{value:{manifest:e},children:t})}var lS=T(B(),1);function Vi({canvas:e,children:t}){return(0,lS.jsx)(ei,{value:{canvas:e},children:t})}var cS=T(H(),1),dS=T(H(),1);var uS=T(H(),1),_e=()=>{let{vault:e}=(0,uS.useContext)(mr);if(e===null)throw new Error("Vault not found. Ensure you have your provider set up correctly.");return e};var rc=T(H(),1);function De(e,t=[]){let i=_e(),[n,r]=(0,rc.useState)(()=>e(i.getState(),i));return(0,rc.useEffect)(()=>i.subscribe(a=>e(a,i),a=>{r(a)},!1),t),n}var Jr=dS.default.createContext([]);function eo(){let e=(0,cS.useContext)(Jr);return De(t=>e.map(i=>t.iiif.entities.Canvas[i]).filter(Boolean),[e])}var hS=T(H(),1);function vt(e={},t=[]){let{id:i,selector:n}=e,r=Xt(),a=_e(),l=i||r.manifest,c=De(p=>l?p.iiif.entities.Manifest[l]:void 0,[l]);return(0,hS.useMemo)(()=>{if(c)return n?n(c):c},[c,n,...t])}var pS=T(B(),1);function xf({range:e,children:t}){return(0,pS.jsx)(ei,{value:{range:e},children:t})}function fS(e,t){for(let i of t.items){if(i.type==="Canvas")return i;if(i.type==="SpecificResource")return i.source;if(i.type==="Range"){let n=fS(e,e.get(i));if(n)return n}}return null}function oc(e,t){let i=[];for(let n of t.items)if(n.type==="SpecificResource"&&n.source?.type==="Canvas"&&(n.source.id.indexOf("#")!==-1?i.push({id:n.source.id.split("#")[0],type:"Canvas"}):i.push(n.source)),n.type==="Range"&&i.push(...oc(e,e.get(n))),n.type==="SpecificResource"){let r=typeof n.source=="string"?n.source:n.source.id;i.push({id:r,type:"Canvas"})}return i}function NA(e,t,i){for(let n of t.structures){let r=Sf(e,e.get(n),i);if(r)return r}return null}function Sf(e,t,i){for(let n of t.items){let r=n?.source?.id?.split("#")[0];if(n.type==="SpecificResource"&&n.source===i||n.type==="SpecificResource"&&n.source?.type==="Canvas"&&i===r)return t;if(n.type==="Range"){let a=Sf(e,e.get(n),i);if(a)return a}}return null}function BA(e,t,i,n=!1){let r=t.behavior,a=i?e.get(i):null;if(!a)return[];let l=a.behavior,c=n?!1:r.includes("paged"),p=c?!1:r.includes("continuous"),m=c||p?!1:r.includes("individuals"),h=l.includes("facing-pages"),y=l.includes("non-paged");if(h||y||m||n)return[{id:a.id,type:"Canvas"}];let[S,w]=sc(e,t);if(p)return S;let v=S.findIndex(x=>x.id===i);if(v===-1)return[];for(let x of w)if(x.includes(v))return x.map(A=>S[A]);return[{id:a.id,type:"Canvas"}]}function sc(e,t,{disablePaging:i,skipNonPaged:n}={}){let r=t.behavior,a=r.includes("paged"),l=a?!1:r.includes("continuous"),c=a||l?!1:r.includes("individuals"),p=t.type==="Manifest"?t.items:oc(e,t);if(l)return[p,[p.map((v,x)=>x)]];if(c||!a||i)return[p,p.map((v,x)=>[x])];let m=[],h=[],y=()=>{h.length&&(m.push([...h]),h=[])},S=0,w=!1;for(let v=0;v<p.length;v++){let x=e.get(p[v]);if(x.behavior.includes("non-paged")){v===S&&S++,n||(y(),m.push([v]),y());continue}if(v===S||x.behavior.includes("facing-pages")){h.length&&(w=!0),y(),m.push([v]),y();continue}if(h.push(v),w){y(),w=!1;continue}h.length>1&&y()}return h.length&&y(),[p,m]}var nn=T(H(),1);var mS=T(H(),1);function ua(e={},t=[]){let{id:i,selector:n}=e,r=Xt(),a=i||r.range,l=De(c=>a?c.iiif.entities.Range[a]:void 0,[a]);return(0,mS.useMemo)(()=>{if(l)return n?n(l):l},[l,n,...t])}function wf({startCanvas:e,disablePaging:t}){let i=_e(),n=vt(),r=ua(),[a,l]=(0,nn.useState)(void 0),c=r||n;if(!c)throw new Error("Nothing selected");let[p,m]=(0,nn.useMemo)(()=>sc(i,c,{disablePaging:t}),[i,c,t]),h=(0,nn.useRef)(m);if(h.current!==m){let A=h.current[a][0],C=m.findIndex(I=>I.includes(A));h.current=m,l(C)}let y=(0,nn.useCallback)(x=>{let A=m.findIndex(C=>C.includes(x));l(A===-1?0:A)},[p,m]),S=(0,nn.useCallback)(x=>{let A=p.findIndex(C=>C.id===x);A!==-1?y(A):l(0)},[p,m]),w=(0,nn.useCallback)(()=>{l(x=>x>=m.length-1?x:x+1)},[m]),v=(0,nn.useCallback)(()=>{l(x=>x<=0?0:x-1)},[m]);return typeof a>"u"&&(e?S(e):l(0)),{visibleItems:m[a]?.map(x=>p[x].id)||[],cursor:a,items:p,sequence:m,hasPrevious:a>0,hasNext:a<m.length-1,setSequenceIndex:l,setCanvasIndex:y,setCanvasId:S,next:w,previous:v}}var on=T(H(),1);var yS={},gS=e=>{let t,i=new Set,n=(h,y)=>{let S=typeof h=="function"?h(t):h;if(!Object.is(S,t)){let w=t;t=y??(typeof S!="object"||S===null)?S:Object.assign({},t,S),i.forEach(v=>v(t,w))}},r=()=>t,p={setState:n,getState:r,getInitialState:()=>m,subscribe:h=>(i.add(h),()=>i.delete(h)),destroy:()=>{(yS.env?yS.env.MODE:void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),i.clear()}},m=t=e(n,r,p);return p},jn=e=>e?gS(e):gS;var TS=T(H(),1),RS=T(ES(),1),IS={},{useDebugValue:iI}=TS.default,{useSyncExternalStoreWithSelector:nI}=RS.default,AS=!1,rI=e=>e;function zt(e,t=rI,i){(IS.env?IS.env.MODE:void 0)!=="production"&&i&&!AS&&(console.warn("[DEPRECATED] Use `createWithEqualityFn` instead of `create` or use `useStoreWithEqualityFn` instead of `useStore`. They can be imported from 'zustand/traditional'. https://github.com/pmndrs/zustand/discussions/1937"),AS=!0);let n=nI(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,i);return iI(n),n}function oI(e){let t=e.service||e.services||[];for(let i of t)if(i.type==="AuthProbeService2")return!0;return!1}function rn(e,t,i){let n=t.findIndex(l=>l.service.id===e);if(n===-1)return t;let r=[...t],a=i(r[n]);return a===r[n]?t:(r[n]=a,r)}var Pf=()=>jn((e,t)=>({currentAuth:-1,authItems:[],login:()=>{let i=t().authItems[t().currentAuth];if(!i||i.isPending||i.isLoggedIn)return;if(i.type!=="active")throw new Error("Cannot login to non-active service");let n=i.service.service.find(r=>r.type==="AuthAccessTokenService2");if(!n)throw new Error("Token service not found");e(()=>({authItems:rn(i.id,t().authItems,r=>({...r,isPending:!0}))})),Cf(i.service).then(()=>{lc(n).then(r=>{let a=r.expiresIn,l=Date.now()+a*1e3;e(()=>({authItems:rn(i.id,t().authItems,c=>({...c,isLoggedIn:!0,isPending:!1,session:{token:r.accessToken,expires:l}}))}))}).catch(r=>{e(()=>({authItems:rn(i.id,t().authItems,a=>({...a,isLoggedIn:!1,isPending:!1,error:r.message}))}))})})},logout:()=>{let i=t().authItems[t().currentAuth];if(!i||i.isPending||!i.isLoggedIn)return;if(i.type!=="active")throw new Error("Cannot logout of non-active service");let n=i.service.service.find(l=>l.type==="AuthLogoutService2");if(!n)return;let r=`${n.id}?origin=${_S()}`,a=window.open(r);e(()=>({authItems:rn(i.id,t().authItems,l=>({...l,isLoggedIn:!1,session:null,isPending:!1}))}))},nextAuth:()=>{let i=t().authItems.length,n=t().currentAuth+1;n>=i||e(()=>({currentAuth:n}))},previousAuth:()=>{let i=t().currentAuth-1;i<0||e(()=>({currentAuth:i}))},setAuth:i=>{i!==-1&&(i<0||i>=t().authItems.length)||e(()=>({currentAuth:i}))},addService:(i,n)=>{if(!i.service)return;let r=i.service.find(c=>c.type==="AuthAccessTokenService2"),a=i;if(t().authItems.find(c=>c.service.id===i.id)){e(()=>({authItems:rn(i.id,t().authItems,c=>({...c,instances:c.instances+1}))}));return}if(e(()=>({currentAuth:a.profile==="active"?0:t().currentAuth,authItems:[{id:i.id,type:i.profile,service:i,probeId:n,canAuthenticate:!0,instances:1,isPending:!1,isLoggedIn:!1,session:null},...t().authItems]})),i.profile==="external"){if(!r)throw new Error("Token service not found");lc(r).then(c=>{e(()=>({authItems:rn(i.id,t().authItems,p=>({...p,isLoggedIn:!0,isPending:!1,session:{token:c.accessToken,expires:c.expiresIn}}))}))}).catch(c=>{e(()=>({authItems:rn(i.id,t().authItems,p=>({...p,isLoggedIn:!1,isPending:!1,canAuthenticate:!1,error:c.message}))}))})}if(i.profile==="kiosk"){if(!r)throw new Error("Token service not found");e(()=>({authItems:rn(i.id,t().authItems,c=>({...c,isPending:!0}))})),Cf(a).then(()=>{lc(r).then(c=>{e(()=>({authItems:rn(i.id,t().authItems,p=>({...p,isLoggedIn:!0,isPending:!1,session:{token:c.accessToken,expires:c.expiresIn}}))}))}).catch(c=>{e(()=>({authItems:rn(i.id,t().authItems,p=>({...p,isLoggedIn:!1,isPending:!1,error:c.message}))}))})})}i.profile},removeService:(i,n)=>{let r=t().currentAuth===t().authItems.findIndex(l=>l.service.id===i.id),a=t().currentAuth;if(r){let l=t().authItems.find(p=>p.service.id===i.id);l&&l.instances>1||(a=t().authItems.findIndex(m=>m.service.id!==i.id&&m.instances>0))}e(()=>({authItems:rn(i.id,t().authItems,l=>({...l,instances:l.instances-1})),currentAuth:a}))}})),Ef=(e,t)=>jn((i,n)=>({service:e,status:e?"unknown":"success",shouldRedirect:!1,redirectResource:null,shouldSubstitute:!1,substituteResource:null,error:null,errorHeading:null,errorNote:null,shouldDisplayResource:!1,token:t||null,async probe(){if(!n().service)return;let r=n().service?.id;if(!r){i({status:"error",error:"Service ID not found",errorHeading:{en:["Service ID not found"]}});return}i({status:"probing"});let a=n().token;try{let l=await fetch(r,{headers:a?{Authorization:`Bearer ${n().token}`,Accept:"application/json"}:{Accept:"application/json"}}).then(c=>c.json());if(l.status===200)i({status:"success",shouldDisplayResource:!0,error:null,errorHeading:null,errorNote:null,shouldSubstitute:!1,shouldRedirect:!1});else if(l.status<400&&l.status>=300){if(!l.location)throw new Error("Redirect location not found");i({status:"error",shouldDisplayResource:!1,shouldRedirect:!0,redirectResource:l.location||null})}else if(l.status===401)i({status:"error",shouldDisplayResource:!1,shouldRedirect:!1,shouldSubstitute:!!l.substitute,substituteResource:l.substitute||null,error:"Unauthorized",errorHeading:l.heading||{en:["Unauthorized"]},errorNote:l.note||null});else throw new Error("Unknown error")}catch(l){i({status:"error",error:l.message,errorHeading:{en:["Unknown error"]}})}},setToken(r){i({token:r})}}));function Af(e){let t=e.service||e.services||[],i={hasAuth:!1,services:{}};for(let n of t)if(n.type==="AuthProbeService2"){i.services.probe=n,i.hasAuth=!0;let r=n.service.filter(a=>a.type==="AuthAccessService2");r[0]&&(i.services.access=r[0])}return i}async function lc(e,{strict:t=!0}={}){return new Promise((i,n)=>{let r=Math.random().toString(36).substring(7),a=`${e.id}?messageId=${r}&origin=${window.location.origin}`,l=m=>{let h=m.data;if(h.messageId===r){if(t&&h.type!=="AuthAccessToken2"){c(),n("Invalid response, expected type=AuthAccessToken2");return}if(!h.accessToken){c(),n("Invalid response, expected accessToken");return}c(),i(h)}},c=()=>window.removeEventListener("message",l),p=document.createElement("iframe");p.src=a,p.style.display="none",document.body.appendChild(p),window.addEventListener("message",l)})}function _S(e){let t=window.location;if(e){let i=document.createElement("a");return i.href=e,i.protocol+"//"+i.hostname+(i.port?":"+i.port:"")}return t.protocol+"//"+t.hostname+(t.port?":"+t.port:"")}async function Cf(e){let t=`${e.id}?origin=${_S()}`,i=window.open(t);if(!i)throw new Error("Failed to open window");return new Promise((n,r)=>{let a=setInterval(()=>{i.closed&&(clearInterval(a),n())},500)})}var Jo=T(H(),1);function MS(e){let t=(0,Jo.useMemo)(()=>Af(e),[e]),i=If(t.services.access?.id),n=(0,Jo.useMemo)(()=>Ef(t.services.probe,i),[t.services.probe]),r=zt(n);return(0,Jo.useEffect)(()=>{r.status==="unknown"&&!i&&r.probe()},[t.services.probe,r.status]),(0,Jo.useEffect)(()=>{i&&(r.setToken(i),r.probe())},[i]),[e,r,t.hasAuth]}var ca=T(B(),1),to=(0,on.createContext)(null),kS=(0,on.createContext)(null);kS.displayName="CurrentAuth";var OS=(0,on.createContext)(null);OS.displayName="AuthActions";function Rf({children:e}){let t=(0,on.useMemo)(()=>Pf(),[]);return(0,ca.jsx)(to.Provider,{value:t,children:e})}function _f(){return!!(0,on.useContext)(to)}function es(){let e=(0,on.useContext)(to);if(!e)throw new Error("useAuthActions must be used within a AuthProvider");return e}function LS(){let e=es();return zt(e,i=>({login:i.login,logout:i.logout,nextAuth:i.nextAuth,previousAuth:i.previousAuth,setAuth:i.setAuth,addService:i.addService,removeService:i.removeService}))}function sI(){let e=es();return zt(e,t=>t)}function zS(e){let t=es();return zt(t,n=>n.authItems.find(r=>r.service.id===e))}function If(e){let t=es();return zt(t,n=>n.authItems.find(r=>r.id===e)?.session?.token)}function aI(e){let t=es();return zt(t,n=>{let r=n.authItems.find(a=>a.service.id===e);return!r||!r.isLoggedIn||!r.session?null:r.session?.token||null})}function lI(e){let t=LS(),i=zS(e.service.id);return(0,on.useEffect)(()=>(t?.addService(e.service,e.probeId),()=>{t?.removeService(e.service,e.probeId)}),[e.service]),i?(i.error||!i.isLoggedIn,e.children):null}function Tf(){return null}function Mf(e){let[t,i,n]=MS(e.resource),r=e.fallbackComponent||Tf,a=e.loadingComponent||Tf,l=e.errorComponent||Tf,c=i.service,p=null;if(!n||!c)return e.children(t);let m=c.service.filter(h=>h.type==="AuthAccessService2");i.status==="error"&&(p=(0,ca.jsx)(l,{resource:e.resource,error:i.error||"",heading:i.errorHeading,note:i.errorNote,extra:e.extra})),(i.status==="unknown"||i.status==="probing")&&(p=(0,ca.jsx)(a,{})),i.status==="success"&&(p=e.children(t));for(let h of m)p=(0,ca.jsx)(lI,{service:h,probeId:c.id,children:p},h.id);return p}var da=T(H(),1);var uI=e=>e.id||e["@id"];function cI(e){return(Array.isArray(e.service)?e.service:[e.service]).find(i=>i.profile==="http://iiif.io/api/search/0/autocomplete"||i.profile==="http://iiif.io/api/search/1/autocomplete"||i.profile==="AutoCompleteService1")}var FS=e=>{let t;typeof e=="string"?t={"@context":"http://iiif.io/api/search/1/context.json",profile:"http://iiif.io/api/search/1/search","@id":e,id:e,service:[]}:t=e;let i=t?uI(t):void 0,n=null;return jn((r,a)=>({service:t,resources:[],lastQuery:{},loading:!1,error:!1,highlight:null,hasSearch:!!t,hasAutocomplete:t?!!cI(t):!1,errorMessage:"",search(l,c={}){if(!i)throw new Error("No search service found.");n&&!n.signal.aborted&&n.abort(),n=new AbortController;let p=new URLSearchParams;l.q&&p.set("q",l.q),l.motivation&&p.set("motivation",l.motivation),l.date&&p.set("date",l.date),l.user&&p.set("user",l.user),r({loading:!0}),fetch(`${i}?${p.toString()}`,{signal:n.signal,headers:{"Content-Type":"application/json",Accept:"application/json",...c.headers||{}}}).then(async m=>{if(!n?.signal.aborted)if(m.ok){let h=await m.json();r({resources:h.resources,error:!1,errorMessage:""})}else r({resources:[],error:!0,errorMessage:m.statusText})})},clearSearch(){r({resources:[],error:!1,errorMessage:""})},highlightResult(l){let c=a().resources.find(p=>p["@id"]===l);r({highlight:c})},nextResult(){let l=a().resources,c=a().highlight;if(!c){r({highlight:l[0]||null});return}let p=l.findIndex(m=>m["@id"]===c["@id"]);if(p===-1){r({highlight:l[0]||null});return}r({highlight:l[p+1]||l[0]||null})},previousResult(){let l=a().resources,c=a().highlight;if(!c){r({highlight:l[l.length-1]||null});return}let p=l.findIndex(m=>m["@id"]===c["@id"]);if(p===-1){r({highlight:l[l.length-1]||null});return}if(p===0){r({highlight:l[l.length-1]||null});return}r({highlight:l[p-1]||l[l.length-1]||null})}}))};function kf(){let e=vt();return e?e.service.find(t=>t.profile==="SearchService1"||t.profile==="http://iiif.io/api/search/1/search"):void 0}var uc=T(B(),1),ts=(0,da.createContext)(null);ts.displayName="Search";function NS(e){let t=kf();return e.store?(0,uc.jsx)(ts.Provider,{value:e.store,children:e.children}):(0,uc.jsx)(dI,{service:t,children:e.children})}function dI({service:e,children:t}){let i=(0,da.useMemo)(()=>FS(e),[e]);return(0,uc.jsx)(ts.Provider,{value:i,children:t})}var mi=T(B(),1),ha=()=>{},is=(0,cc.createContext)({setCurrentCanvasId:ha,setCurrentCanvasIndex:ha,nextCanvas:ha,previousCanvas:ha,items:[],sequence:[],setSequenceIndex:ha,currentSequenceIndex:0,hasNext:!1,hasPrevious:!1});function DS(e){let t=vt(),{cursor:i,visibleItems:n,next:r,sequence:a,items:l,setCanvasIndex:c,setCanvasId:p,previous:m,setSequenceIndex:h,hasNext:y,hasPrevious:S}=wf({startCanvas:e.startCanvas,disablePaging:e.pagingEnabled===!1}),w=(0,cc.useMemo)(()=>({sequence:a,items:l,setCurrentCanvasId:p,nextCanvas:r,previousCanvas:m,totalCanvases:l.length,setCurrentCanvasIndex:c,setSequenceIndex:h,currentSequenceIndex:i,hasNext:y,hasPrevious:S}),[a,l,p,r,m,l,c,h,i]);return t?n.length===0?null:(0,mi.jsx)(is.Provider,{value:w,children:(0,mi.jsx)(Jr.Provider,{value:n,children:(0,mi.jsx)(Vi,{canvas:n[0],children:e.children})})}):(console.warn("The manifest passed to the provider is not a valid IIIF manifest."),(0,mi.jsx)("div",{children:"Sorry, something went wrong."}))}function Of(e){let t=Zr(e.vault),i=yf(e.manifest);if(!i)return console.warn("The manifest passed to the provider is not a valid IIIF manifest."),(0,mi.jsx)("div",{children:"Sorry, something went wrong."});if(i.error)return(0,mi.jsx)("div",{children:i.error.toString()});if(!i.isLoaded)return(0,mi.jsx)("div",{children:"Loading..."});let n=(0,mi.jsx)(DS,{...e,children:e.children});return(0,mi.jsx)(Kr,{vault:t,children:(0,mi.jsx)(vf,{manifest:i.id,children:(0,mi.jsx)(Rf,{children:(0,mi.jsx)(NS,{children:e.rangeId?(0,mi.jsx)(xf,{range:e.rangeId,children:n}):n})})})})}function pa(){return(0,BS.useContext)(is)}var jS=T(H(),1),dc=T(H(),1);function Vn(e){return{all:e=e||new Map,on:function(t,i){var n=e.get(t);n?n.push(i):e.set(t,[i])},off:function(t,i){var n=e.get(t);n&&(i?n.splice(n.indexOf(i)>>>0,1):e.set(t,[]))},emit:function(t,i){var n=e.get(t);n&&n.slice().map(function(r){r(i)}),(n=e.get("*"))&&n.slice().map(function(r){r(t,i)})}}}var US=T(B(),1),VS=Vn(),io=(0,dc.createContext)({emitter:VS});io.displayName="Events";function fa(){return jS.default.useContext(io).emitter}function hI({emitter:e,children:t}){return(0,US.jsx)(io.Provider,{value:(0,dc.useMemo)(()=>({emitter:e}),[e]),children:t})}var WS=T(H(),1),Pn=T(B(),1),Lf=WS.default.createContext({});function zf(){let e=(0,Ai.useContext)(Lf),t=Object.keys(e),i={};for(let n of t)e[n].Provider&&(i[n]={value:(0,Ai.useContext)(e[n]),Provider:e[n].Provider});return i}function HS(e){let t=Object.keys(e),i=e.children;for(let n of t){if(n==="children")continue;let{value:r,Provider:a}=e[n];i=(0,Pn.jsx)(a,{value:r,children:i})}return i}function pI(e){let t=(0,Ai.useContext)(Lf),i=(0,Ai.useMemo)(()=>({...t,...e.providers}),[e.providers]);return(0,Pn.jsx)(Lf.Provider,{value:i,children:e.children})}function Ff(){return{VaultContext:(0,Ai.useContext)(mr),ResourceContext:(0,Ai.useContext)(ea),SimpleViewerReactContext:(0,Ai.useContext)(is),VisibleCanvasReactContext:(0,Ai.useContext)(Jr),AuthRContext:(0,Ai.useContext)(to),SearchReactContext:(0,Ai.useContext)(ts),ReactEventContext:(0,Ai.useContext)(io)}}function Nf(e){return(0,Pn.jsx)(Kr,{vault:e.bridge.VaultContext.vault||void 0,resources:e.bridge.ResourceContext,children:(0,Pn.jsx)(Jr.Provider,{value:e.bridge.VisibleCanvasReactContext,children:(0,Pn.jsx)(is.Provider,{value:e.bridge.SimpleViewerReactContext,children:(0,Pn.jsx)(io.Provider,{value:e.bridge.ReactEventContext,children:(0,Pn.jsx)(to.Provider,{value:e.bridge.AuthRContext,children:(0,Pn.jsx)(ts.Provider,{value:e.bridge.SearchReactContext,children:e.custom?(0,Pn.jsx)(HS,{...e.custom,children:e.children}):e.children})})})})})})}var ns=T(H(),1);var Un=T(H(),1);var qS=T(H(),1);function Bf(){let t=_e().getStore();return(0,qS.useMemo)(()=>i=>t.dispatch(i),[t])}function QS(e){return typeof e!="string"&&e&&e.bindToVault}function Df(){let e=_e(),t=(0,Un.useRef)([]),i=Bf(),n=(0,Un.useMemo)(()=>`vault://annotation-page/${new Date().getTime()}/${Math.round(Math.random()*1e9).toString(16)}`,[]);(0,Un.useLayoutEffect)(()=>{let c={id:n,type:"AnnotationPage",behavior:[],label:null,thumbnail:[],summary:null,requiredStatement:null,metadata:[],rights:null,provider:[],items:[],seeAlso:[],homepage:[],rendering:[],service:[]};i(Ur.importEntities({entities:{AnnotationPage:{[c.id]:c}}}))},[n]);let r=De(c=>n&&c.iiif.entities.AnnotationPage[n]||null,[n]),a=(0,Un.useCallback)((c,p)=>{if(n){if(QS(c)){let y=c;y.__vault||y.bindToVault(e),c=typeof y.source=="string"?y.source:y.source.id,t.current[c]=y}else typeof c!="string"&&(c=c.id);let m=e.get({id:n,type:"AnnotationPage"}),h=e.get({id:c,type:"Annotation"});m&&h&&(m.items.find(y=>y.id===h.id)||i(Ur.addReference({id:n,type:"AnnotationPage",key:"items",reference:{id:c,type:"Annotation"},index:p})))}},[n]),l=(0,Un.useCallback)(c=>{n&&(QS(c)?c=typeof c.source=="string"?c.source:c.source.id:typeof c!="string"&&(c=c.id),t.current[c]&&t.current[c].beforeRemove(),e.get({id:n,type:"AnnotationPage"})&&i(Ur.removeReference({id:n,type:"AnnotationPage",key:"items",reference:{id:c,type:"Annotation"}})))},[n]);return[r,{addAnnotation:a,removeAnnotation:l}]}var GS=T(B(),1),$S=(0,ns.createContext)(null);function jf(){let e=(0,ns.useContext)($S);return[e.fullPage,{addAnnotation:e.addAnnotation,removeAnnotation:e.removeAnnotation}]}function Vf({children:e}){let[t,{addAnnotation:i,removeAnnotation:n}]=Df();return(0,GS.jsx)($S.Provider,{value:(0,ns.useMemo)(()=>({fullPage:t,addAnnotation:i,removeAnnotation:n}),[t]),children:e})}var rs=T(B(),1);function hc({width:e,style:t,height:i,error:n,resetErrorBoundary:r}){return(0,rs.jsxs)("div",{style:{width:e,height:i,minHeight:500,...t||{},background:"#f9f9f9"},children:[(0,rs.jsx)("h3",{children:"Error occurred"}),(0,rs.jsx)("p",{children:n.message}),(0,rs.jsx)("button",{type:"button",onClick:r,children:"Reset"})]})}var pc=T(H(),1),Ui=(0,pc.createContext)(null);function ma(){return(0,pc.useContext)(Ui)}var no=T(H(),1),Uf=(0,no.createContext)(()=>{}),Wf=(0,no.createContext)(()=>{});function Ft(e,t,i,n,r=[]){let a=(0,no.useContext)(e==="portal"?Wf:Uf);(0,no.useEffect)(()=>(e!=="none"&&a(t,i,n),()=>{a(t,null)}),[t,e,a,...r])}var os=T(H(),1);var YS=T(H(),1);function Ce(e={},t=[]){let{id:i,selector:n}=e,r=Xt(),a=i||r.canvas,l=De(c=>a?c.iiif.entities.Canvas[a]:void 0,[a]);return(0,YS.useMemo)(()=>{if(l)return n?n(l):l},[l,n,...t])}var Hf=(0,os.createContext)(()=>{});function XS(e){let t=Ce(),i=(0,os.useContext)(Hf);(0,os.useEffect)(()=>t&&t.id?(i(t.id,e),()=>i(t.id,-1)):()=>{},[t,e])}var bt=T(B(),1);function fc({children:e,errorFallback:t,outerContainerProps:i={},worldScale:n,...r}){let[a,l]=(0,ii.useState)(),c=zf(),p=Ff(),m=t||hc,[h,y]=(0,ii.useState)({}),S=Object.entries(h),[w,v]=(0,ii.useState)({}),x=Object.entries(w),[A,C]=(0,ii.useState)({}),I=(0,ii.useMemo)(()=>n||Math.max(...Object.values(A)),[A]),E=(0,ii.useMemo)(()=>({maxOverZoom:I||1,...r.runtimeOptions||{}}),[I,r.runtimeOptions]),O=(0,ii.useCallback)((Q,V)=>{C(J=>{if(V===-1){let{[Q]:U,...q}=J;return q}return{...J,[Q]:V}})},[]),L=(0,ii.useCallback)((Q,V,J)=>{y(({[Q]:U,...q})=>V?{...q,[Q]:{element:V,props:J}}:q)},[]),M=(0,ii.useCallback)((Q,V,J)=>{v(({[Q]:U,...q})=>V?{...q,[Q]:{element:V,props:J}}:q)},[]);return(0,bt.jsxs)(Bo,{resetKeys:[],fallbackRender:Q=>(0,bt.jsx)(m,{...r,...Q}),children:[(0,bt.jsx)(r0,{...r,containerProps:{style:{position:"relative"},...r.containerProps||{}},htmlChildren:(0,bt.jsx)(bt.Fragment,{children:S.map(([Q,{element:V,props:J}])=>(0,bt.jsx)(ii.default.Fragment,{children:(0,bt.jsx)(V,{...J||{}})},Q))}),onCreated:Q=>{l(Q),r.onCreated&&r.onCreated(Q)},runtimeOptions:E,children:(0,bt.jsx)(Ui.Provider,{value:a,children:(0,bt.jsx)(Hf.Provider,{value:O,children:(0,bt.jsx)(Uf.Provider,{value:L,children:(0,bt.jsx)(Wf.Provider,{value:M,children:(0,bt.jsx)(Nf,{bridge:p,custom:c,children:(0,bt.jsx)(No.Provider,{value:r.mode||"explore",children:(0,bt.jsx)(Vf,{children:e})})})})})})})}),(0,bt.jsx)("div",{children:x.map(([Q,{element:V,props:J}])=>(0,bt.jsx)(ii.default.Fragment,{children:(0,bt.jsx)(V,{...J||{}})},Q))})]})}var qf=T(H(),1);function ga(e=Fn){return{addEventListener(t,i,n,r){if(t)return e.setMetaValue([t.id,"eventManager",i],a=>{let l=a||[];for(let c of l)if(c.callback===n)return l;return[...l,{callback:n,scope:r}]}),n},removeEventListener(t,i,n){t&&e.setMetaValue([t.id,"eventManager",i],r=>(r||[]).filter(a=>a.callback!==n))},getListenersAsProps(t,i){let n=typeof t=="string"?{id:t}:t;if(!n||!n.id)return{};let r=e.getResourceMeta(n.id,"eventManager"),a={};if(r&&n)for(let l of Object.keys(r))a[l]=c=>{let p=e.get(n);for(let{callback:m,scope:h}of r[l]||[])(!h||i&&h.indexOf(i)!==-1)&&m(c,p)};return a}}}function ya(e,t){let i=_e(),n=(0,qf.useMemo)(()=>ga(i),[i]),r=De(()=>e&&e.id?i.getResourceMeta(e.id,"eventManager"):null,[e]);return(0,qf.useMemo)(()=>e?n.getListenersAsProps(e,t):{},[r,e,i,t])}var KS=T(H(),1);function yr(e=Fn){return{applyStyles(t,i,n){let r=typeof t=="string"?t:t.id;return e.setMetaValue([r,"styles",i],n)},getAppliedStyles(t){let i=typeof t=="string"?t:t.id;return e.getResourceMeta(i,"styles")}}}function ro(e,t){let i=_e(),n=(0,KS.useMemo)(()=>yr(i),[i]);return De(()=>{if(!e)return null;let r=n.getAppliedStyles(e.id);return r?t?r[t]:r:void 0},[e,t])}var ow=T(H(),1);var rw=T(H(),1);var fI=Fh({"node_modules/.pnpm/parse-svg-path@0.1.2/node_modules/parse-svg-path/index.js"(e,t){"use strict";t.exports=r;var i={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},n=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function r(c){var p=[];return c.replace(n,function(m,h,y){var S=h.toLowerCase();for(y=l(y),S=="m"&&y.length>2&&(p.push([h].concat(y.splice(0,2))),S="l",h=h=="m"?"l":"L");;){if(y.length==i[S])return y.unshift(h),p.push(y);if(y.length<i[S])throw new Error("malformed path data");p.push([h].concat(y.splice(0,i[S])))}}),p}var a=/-?[0-9]*\.?[0-9]+(?:e[-+]?\d+)?/ig;function l(c){var p=c.match(a);return p?p.map(Number):[]}}}),mI=Fh({"node_modules/.pnpm/abs-svg-path@0.1.1/node_modules/abs-svg-path/index.js"(e,t){"use strict";t.exports=i;function i(n){var r=0,a=0,l=0,c=0;return n.map(function(p){p=p.slice();var m=p[0],h=m.toUpperCase();if(m!=h)switch(p[0]=h,m){case"a":p[6]+=l,p[7]+=c;break;case"v":p[1]+=c;break;case"h":p[1]+=l;break;default:for(var y=1;y<p.length;)p[y++]+=l,p[y++]+=c}switch(h){case"Z":l=r,c=a;break;case"H":l=p[1];break;case"V":c=p[1];break;case"M":l=r=p[1],c=a=p[2];break;default:l=p[p.length-2],c=p[p.length-1]}return p})}}}),gI=function(){function e(t,i){var n=[],r=!0,a=!1,l=void 0;try{for(var c=t[Symbol.iterator](),p;!(r=(p=c.next()).done)&&(n.push(p.value),!(i&&n.length===i));r=!0);}catch(m){a=!0,l=m}finally{try{!r&&c.return&&c.return()}finally{if(a)throw l}}return n}return function(t,i){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),va=Math.PI*2,Qf=function(t,i,n,r,a,l,c){var p=t.x,m=t.y;p*=i,m*=n;var h=r*p-a*m,y=a*p+r*m;return{x:h+l,y:y+c}},yI=function(t,i){var n=i===1.5707963267948966?.551915024494:i===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(i/4),r=Math.cos(t),a=Math.sin(t),l=Math.cos(t+i),c=Math.sin(t+i);return[{x:r-a*n,y:a+r*n},{x:l+c*n,y:c-l*n},{x:l,y:c}]},ZS=function(t,i,n,r){var a=t*r-i*n<0?-1:1,l=t*n+i*r;return l>1&&(l=1),l<-1&&(l=-1),a*Math.acos(l)},vI=function(t,i,n,r,a,l,c,p,m,h,y,S){var w=Math.pow(a,2),v=Math.pow(l,2),x=Math.pow(y,2),A=Math.pow(S,2),C=w*v-w*A-v*x;C<0&&(C=0),C/=w*A+v*x,C=Math.sqrt(C)*(c===p?-1:1);var I=C*a/l*S,E=C*-l/a*y,O=h*I-m*E+(t+n)/2,L=m*I+h*E+(i+r)/2,M=(y-I)/a,Q=(S-E)/l,V=(-y-I)/a,J=(-S-E)/l,U=ZS(1,0,M,Q),q=ZS(M,Q,V,J);return p===0&&q>0&&(q-=va),p===1&&q<0&&(q+=va),[O,L,U,q]},xI=function(t){var i=t.px,n=t.py,r=t.cx,a=t.cy,l=t.rx,c=t.ry,p=t.xAxisRotation,m=p===void 0?0:p,h=t.largeArcFlag,y=h===void 0?0:h,S=t.sweepFlag,w=S===void 0?0:S,v=[];if(l===0||c===0)return[];var x=Math.sin(m*va/360),A=Math.cos(m*va/360),C=A*(i-r)/2+x*(n-a)/2,I=-x*(i-r)/2+A*(n-a)/2;if(C===0&&I===0)return[];l=Math.abs(l),c=Math.abs(c);var E=Math.pow(C,2)/Math.pow(l,2)+Math.pow(I,2)/Math.pow(c,2);E>1&&(l*=Math.sqrt(E),c*=Math.sqrt(E));var O=vI(i,n,r,a,l,c,y,w,x,A,C,I),L=gI(O,4),M=L[0],Q=L[1],V=L[2],J=L[3],U=Math.abs(J)/(va/4);Math.abs(1-U)<1e-7&&(U=1);var q=Math.max(Math.ceil(U),1);J/=q;for(var ee=0;ee<q;ee++)v.push(yI(V,J)),V+=J;return v.map(function(Me){var pe=Qf(Me[0],l,c,A,x,M,Q),Te=pe.x,ke=pe.y,He=Qf(Me[1],l,c,A,x,M,Q),qe=He.x,$=He.y,ve=Qf(Me[2],l,c,A,x,M,Q),it=ve.x,Qe=ve.y;return{x1:Te,y1:ke,x2:qe,y2:$,x:it,y:Qe}})},SI=xI,wI=Nh(fI(),1),bI=Nh(mI(),1);function CI(e){let t=(0,wI.default)(e),i=(0,bI.default)(t),n,r=0,a=0,l=0,c=0,p,m,h=0,y=0,S=[];for(let w=0;w<i.length;w++){let v=i[w],x=v[0];switch(x){case"M":r=v[1],a=v[2];break;case"H":v=["L",v[1],a];break;case"V":v=["L",r,v[1]];break;case"S":{let A=h,C=y;(n==="C"||n=="S")&&(A+=A-l,C+=C-c),v=["C",A,C,v[1],v[2],v[3],v[4]]}break;case"T":n==="Q"||n=="T"?(p=h*2-p,m=y*2-m):(p=h,m=y),v=["Q",p,m,v[1],v[2]];break;case"Q":p=v[1],m=v[2];break;case"A":{let A=SI({px:h,py:y,cx:v[6],cy:v[7],rx:v[1],ry:v[2],xAxisRotation:v[3],largeArcFlag:v[4],sweepFlag:v[5]});if(!A.length)continue;for(let[C,I]of A.entries())v=["C",I.x1,I.y1,I.x2,I.y2,I.x,I.y],C<A.length-1&&S.push(v);v=v}break;case"Z":v=["L",r,a];break}n=x,h=v[v.length-2],y=v[v.length-1],["C","Q","A"].indexOf(x)>-1?(l=v[v.length-4],c=v[v.length-3]):(l=h,c=y),S.push(v)}return S}function PI(e,t,i,n=1){return new tw(e,t,i).subdivide(n)}function EI(e,t,i,n,r=1){return new II(new Float64Array([e.x,e.y,t.x,t.y,i.x,i.y,n.x,n.y])).subdivide(r)}function AI(e){return e.x*e.x+e.y*e.y}function xa(e){return e/(1-.67+Math.pow(Math.pow(.67,4)+.25*e*e,.25))}function ss(e){return e*(1-.39+Math.sqrt(.39*.39+.25*e*e))}var tw=class{constructor(e,t,i){Rt(this,"start"),Rt(this,"control"),Rt(this,"end"),this.start=e,this.control=t,this.end=i}eval(e){let t=1-e;return{x:this.start.x*t*t+2*this.control.x*t*e+this.end.x*e*e,y:this.start.y*t*t+2*this.control.y*t*e+this.end.y*e*e}}mapToBasic(){let{x:e,y:t}=this.start,{x:i,y:n}=this.control,{x:r,y:a}=this.end,l=2*i-e-r,c=2*n-t-a,p=(i-e)*l+(n-t)*c,m=(r-i)*l+(a-n)*c,h=(r-e)*c-(a-t)*l,y=p/h,S=m/h,w=Math.abs(h)/(Math.hypot(l,c)*Math.abs(S-y));return{x0:e,x2:r,scale:w,cross:h}}subdivide(e){let t=this.mapToBasic(),i=xa(t.x0),n=xa(t.x2),r=.5*Math.abs(n-i)*Math.sqrt(t.scale/e),a=Math.ceil(r),l=ss(i),c=ss(n),p=[0];for(let m=1;m<a;m++){let y=(ss(i+(n-i)*m/a)-l)/(c-l);p.push(y)}return p.push(1),p.map(m=>this.eval(m))}},II=class iw{constructor(t){Rt(this,"c"),this.c=t}weightsum(t,i,n,r){let a=t*this.c[0]+i*this.c[2]+n*this.c[4]+r*this.c[6],l=t*this.c[1]+i*this.c[3]+n*this.c[5]+r*this.c[7];return{x:a,y:l}}eval(t){let i=1-t,n=i*i*i,r=3*i*i*t,a=3*i*t*t,l=t*t*t;return this.weightsum(n,r,a,l)}deriv(t){let i=1-t,n=-3*i*i,r=3*t*t,a=-6*t*i-n,l=6*t*i-r;return this.weightsum(n,a,l,r)}midpoint_quadbez(){let t=this.weightsum(-.25,.75,.75,-.25);return new tw({x:this.c[0],y:this.c[1]},t,{x:this.c[6],y:this.c[7]})}subsegment(t,i){let n=new Float64Array(8),r=this.eval(t),a=this.eval(i);n[0]=r.x,n[1]=r.y;let l=(i-t)/3,c=this.deriv(t);n[2]=r.x+l*c.x,n[3]=r.y+l*c.y;let p=this.deriv(i);return n[4]=a.x-l*p.x,n[5]=a.y-l*p.y,n[6]=a.x,n[7]=a.y,new iw(n)}subdivide(t){let i=.1*t,n=t-i,r=Math.sqrt(n),a=AI(this.weightsum(1,-3,3,-1)),l=Math.ceil(Math.pow(a/(432*i*i),1/6)),c=[],p=0;for(let v=0;v<l;v++){let x=v/l,A=(v+1)/l,C=this.subsegment(x,A).midpoint_quadbez(),I=C.mapToBasic(),E=xa(I.x0),O=xa(I.x2),L=Math.sqrt(I.scale),M=Math.abs(O-E)*L;if(Math.sign(I.x0)!=Math.sign(I.x2)){let Q=r/L,V=r*Math.abs(O-E)/xa(Q);M=Math.max(M,V)}c.push({quad:C,a0:E,a2:O,val:M}),p+=M}let m=.5*p/r,h=Math.ceil(m),y=[{x:this.c[0],y:this.c[1]}],S=0,w=0;for(let v=1;v<h;v++){let x=p*v/h;for(;S+c[w].val<x;)S+=c[w].val,w++;let A=c[w].a0,C=c[w].a2,I=ss(A),E=ss(C),O=A+(C-A)*(x-S)/c[w].val,M=(ss(O)-I)/(E-I);y.push(c[w].quad.eval(M))}return y.push({x:this.c[6],y:this.c[7]}),y}},TI=/&?(xywh=)?(pixel:|percent:|pct:)?([0-9]+(?:\.[0-9]+)?),([0-9]+(?:\.[0-9]+)?),([0-9]+(?:\.[0-9]+)?),([0-9]+(?:\.[0-9]+)?)/,JS=/&?(t=)(npt:)?([0-9]+(\.[0-9]+)?)?(,([0-9]+(\.[0-9]+)?))?/,ew=/^rgba\((\d+),(\d+),(\d+),([0-9.]+)\)$/;function Wn(e,{domParser:t,svgPreprocessor:i,iiifRenderingHints:n}={}){if(Array.isArray(e))return Wi(e.reduce((r,a)=>{let{selector:l,selectors:c,iiifRenderingHints:p}=Wn(a,{domParser:t,svgPreprocessor:i,iiifRenderingHints:n});return l&&(r.selector||(r.selector=l),r.selectors.push(...c)),p&&(r.iiifRenderingHints=r.iiifRenderingHints||{type:"ImageApiSelector"},Object.assign(r.iiifRenderingHints,p)),r},{selector:null,selectors:[],iiifRenderingHints:n}));if(!e)return Wi({selector:null,selectors:[],iiifRenderingHints:n});if(typeof e=="string"){let[r,a]=e.split("#");return a?Wn({type:"FragmentSelector",value:a},{svgPreprocessor:i,iiifRenderingHints:n,domParser:t}):Wi({selector:null,selectors:[],iiifRenderingHints:n})}if(e.type){if(e.type==="PointSelector"&&(e.t||e.t===0)){let r={type:"TemporalSelector",temporal:{startTime:e.t}};return Wi({selector:r,selectors:[r],iiifRenderingHints:n})}if(e.type==="PointSelector"&&e.x&&e.y){let r={type:"PointSelector",spatial:{x:e.x,y:e.y}};return Wi({selector:r,selectors:[r],iiifRenderingHints:n})}}if(mc(e)){let r=[];if(e.region){let a=Wn({type:"FragmentSelector",value:"xywh="+e.region},{domParser:t,svgPreprocessor:i,iiifRenderingHints:n});r.push(...a.selectors)}return Wi({selector:r[0],selectors:r,iiifRenderingHints:n?{...n,...e}:e})}if(e.type==="FragmentSelector"){let r=TI.exec(e.value);if(r){let l={type:"BoxSelector",spatial:{unit:r[2]==="percent:"||r[2]==="pct:"?"percent":"pixel",x:parseFloat(r[3]),y:parseFloat(r[4]),width:parseFloat(r[5]),height:parseFloat(r[6])}},c=e.value.match(JS);return c&&(l={type:"TemporalBoxSelector",spatial:l.spatial,temporal:{startTime:c[3]?parseFloat(c[3]):0,endTime:c[6]?parseFloat(c[6]):void 0}}),Wi({selector:l,selectors:[l],iiifRenderingHints:n})}let a=e.value.match(JS);if(a){let l={type:"TemporalSelector",temporal:{startTime:a[3]?parseFloat(a[3]):0,endTime:a[6]?parseFloat(a[6]):void 0}};return Wi({selector:l,selectors:[l],iiifRenderingHints:n})}return Wi({selector:null,selectors:[],iiifRenderingHints:n})}if(e.type==="SvgSelector"&&"value"in e){t||(typeof window<"u"?t=new window.DOMParser:console.warn("No DOMParser available, cannot parse SVG selector, `points`, `spatial` and `style` will be unavailable and the SVG will not be normalized."));let r=[],a,l,c=i?.(e.value)??e.value,p;if(t){let h=t.parseFromString(e.value,"image/svg+xml").querySelector("svg");if(!h)return console.warn(`Illegal SVG selector: ${e.value}`),Wi({selector:null,selectors:[],iiifRenderingHints:n});let y=nw(h);y&&(r=y.points,p=y.shapeType,a=[Math.min(...r.map(S=>S[0])),Math.min(...r.map(S=>S[1])),Math.max(...r.map(S=>S[0])),Math.max(...r.map(S=>S[1]))],{style:l,svg:c}=MI(y.element)??{svg:c})}let m={type:"SvgSelector",svg:c,svgShape:p,style:l,points:r.length?r:void 0,spatial:a?{unit:"pixel",x:a[0],y:a[1],width:a[2]-a[0],height:a[3]-a[1]}:void 0};return Wi({selector:m,selectors:[m],iiifRenderingHints:n})}return Wi({selector:null,selectors:[],iiifRenderingHints:n})}function RI(e){let t=e.map(n=>n[0]).reduce((n,r)=>(n[r]+=1,n),{C:0,Q:0,L:0,M:0}),i=new Set(e.map(n=>n[0]));if(t.C>0||t.Q>0)return"path";if(t.L>0&&(i.size===1||i.size===2&&i.has("M"))){if(t.L===4)return"rect";let n=e.slice(-1)[0];return e[0][0]==="M"&&n[0]==="L"&&n[1]==e[0][1]&&n[2]===e[0][2]||n[1]===0&&n[2]===0?"polygon":"polyline"}return"path"}function nw(e){for(let t of Array.from(e.children))switch(t?.tagName.toLowerCase()){case"g":{let i=nw(t);if(i)return i}continue;case"path":{let i=t.getAttribute("d");if(!i)continue;let n=CI(i);return{element:t,points:_I(n),shapeType:RI(n)}}case"circle":{let i=parseFloat(t.getAttribute("cx")??"0"),n=parseFloat(t.getAttribute("cy")??"0"),r=parseFloat(t.getAttribute("r")??"0");if(!r)continue;let a=[];for(let l=0;l<=360;l+=12){let c=l*Math.PI/180;a.push([i+r*Math.cos(c),n+r*Math.sin(c)])}return{element:t,points:a,shapeType:"circle"}}case"ellipse":{let i=parseFloat(t.getAttribute("cx")??"0"),n=parseFloat(t.getAttribute("cy")??"0"),r=parseFloat(t.getAttribute("rx")??"0"),a=parseFloat(t.getAttribute("ry")??"0");if(!r&&!a)continue;let l=[];for(let c=0;c<=360;c+=12){let p=Math.tan(c/360*Math.PI),m=r*(1-p**2)/(1+p**2),h=a*2*p/(1+p**2);l.push([i+m,n+h])}return{element:t,points:l,shapeType:"ellipse"}}case"line":{let i=parseFloat(t.getAttribute("x0")??"0"),n=parseFloat(t.getAttribute("y0")??"0"),r=parseFloat(t.getAttribute("x1")??"0"),a=parseFloat(t.getAttribute("y1")??"0");if(i===r&&n===a)continue;return{element:t,points:[[i,n],[r,a]],shapeType:"polyline"}}case"polygon":case"polyline":{let i=t.getAttribute("points")?.split(" ").map(r=>r.split(",").map(parseFloat))??[];if(!i.length)continue;let n="polyline";return t.tagName.toLowerCase()==="polygon"&&(i.push(i[0]),n="polygon"),{element:t,points:i,shapeType:n}}case"rect":{let i=parseFloat(t.getAttribute("x")??"0"),n=parseFloat(t.getAttribute("y")??"0"),r=parseFloat(t.getAttribute("width")??"0"),a=parseFloat(t.getAttribute("height")??"0");if(!r||!a)continue;return{element:t,points:[[i,n],[i+r,n],[i+r,n+a],[i,n+a],[i,n]],shapeType:"rect"}}default:continue}return null}function _I(e){let t=[];for(let i=0;i<e.length;i++){let n=t[t.length-1]??[0,0],r=e[i];switch(r[0]){case"M":case"L":t.push([r[1],r[2]]);continue;case"C":t.push(...EI({x:n[0],y:n[1]},{x:r[1],y:r[2]},{x:r[3],y:r[4]},{x:r[5],y:r[6]}).map(a=>[a.x,a.y]).slice(1));continue;case"Q":t.push(...PI({x:n[0],y:n[1]},{x:r[1],y:r[2]},{x:r[3],y:r[4]}).map(a=>[a.x,a.y]).slice(1));continue}}return t}function MI(e){let t={};if(e.hasAttribute("fill")?(t.fill=e.getAttribute("fill"),e.removeAttribute("fill")):e.style&&e.style.fill&&(t.fill=e.style.fill),t.fill){let n=ew.exec(t.fill);n&&(t.fillOpacity=parseFloat(n[4]),t.fill=`rgb(${n[1]}, ${n[2]}, ${n[3]})`)}if(e.hasAttribute("fill-opacity")?(t.fillOpacity=parseFloat(e.getAttribute("fill-opacity")),e.removeAttribute("fill-opacity")):e.style&&e.style.fillOpacity&&(t.fillOpacity=parseFloat(e.style.fillOpacity)),e.hasAttribute("stroke")?(t.stroke=e.getAttribute("stroke"),e.removeAttribute("stroke")):e.style&&e.style.stroke&&(t.stroke=e.style.stroke),t.stroke){let n=ew.exec(t.stroke);n&&(t.strokeOpacity=parseFloat(n[4]),t.stroke=`rgb(${n[1]}, ${n[2]}, ${n[3]})`)}e.hasAttribute("stroke-opacity")?(t.strokeOpacity=parseFloat(e.getAttribute("stroke-opacity")),e.removeAttribute("stroke-opacity")):e.style&&e.style.strokeOpacity&&(t.strokeOpacity=parseFloat(e.style.strokeOpacity)),e.hasAttribute("stroke-width")?(t.strokeWidth=e.getAttribute("stroke-width"),e.removeAttribute("stroke-width")):e.style&&e.style.strokeWidth&&(t.strokeWidth=e.style.strokeWidth),e.hasAttribute("stroke-dasharray")?(t.strokeDasharray=e.getAttribute("stroke-dasharray"),e.removeAttribute("stroke-dasharray")):e.style&&e.style.strokeDasharray&&(t.strokeDasharray=e.style.strokeDasharray);let i=e;for(;i.tagName.toLowerCase()!=="svg";)if(i=i.parentElement,i===null)throw new Error("Could not find root SVG element");return{svg:i.outerHTML,style:Object.keys(t).length>0?t:void 0}}function mc(e){return!!e&&e.type==="iiif:ImageApiSelector"&&e.type==="iiif:ImageApiSelector"}function Wi(e){if(e.iiifRenderingHints){let t=e.iiifRenderingHints;if(t.rotation){let i=gc(`${t.rotation}`);if(i)if(e.selectors.length)for(let n of e.selectors)n.rotation=i;else e.selectors.push({type:"RotationSelector",rotation:i})}}else delete e.iiifRenderingHints;return e}function gc(e){let t=parseFloat(e);return t&&e.startsWith("!")&&(t=360-t),t&&(t=t%360),t!==t?0:t||0}function Nt(e,t={}){if(Array.isArray(e))return Nt(e[0]);if(typeof e=="string"){let[i,n]=e.split("#");return n?Nt({type:"SpecificResource",source:{id:i,type:"Unknown"},selector:{type:"FragmentSelector",value:n}}):{type:"SpecificResource",source:{id:i,type:t.typeMap&&t.typeMap[i]||"Unknown"},selector:null,selectors:[]}}if(e.type==="Choice"||e.type==="List"||e.type==="Composite"||e.type==="Independents")return Nt(e.items[0]);if(!e.type&&"source"in e&&(e.type="SpecificResource"),e.type==="SpecificResource"){e.source.type==="Canvas"&&e.source.partOf&&typeof e.source.partOf=="string"&&(e.source.partOf=[{id:e.source.partOf,type:"Manifest"}]);let{selector:i,selectors:n}=e.selector?Wn(e.selector,t):{selector:null,selectors:[]};return{type:"SpecificResource",source:e.source,selector:i,selectors:n}}if(e.id){e.type==="Canvas"&&e.partOf&&typeof e.partOf=="string"&&(e.partOf=[{id:e.partOf,type:"Manifest"}]);let[i,n]=e.id.split("#");return n?Nt({type:"SpecificResource",source:{...e,id:i},selector:{type:"FragmentSelector",value:n}}):{type:"SpecificResource",source:{...e,id:i},selector:null,selectors:[]}}return{type:"SpecificResource",source:e,selector:null,selectors:[]}}function Sa(e={},t=[]){let{id:i,selector:n}=e,r=Xt(),a=_e(),l=i||r.annotation,c=De(m=>l?m.iiif.entities.Annotation[l]:void 0,[l]),p=De(m=>c&&c.body?c.body.map(h=>h?h.type==="SpecificResource"?{...h,source:a.get(h)}:h?m.iiif.entities[h.type][h.id]:null:null).filter(Boolean):[],[c]);return(0,rw.useMemo)(()=>{if(!c)return;let m={...c,body:p,target:Nt(c.target,{typeMap:a.getState().iiif.mapping})};return n?n(m):m},[c,n,p,...t])}var sw=T(B(),1),yc=({id:e,style:t,className:i,interactive:n})=>{let r=Sa({id:e}),a=ro(r,"atlas"),l=ro(r,"html"),c=ya(r,["atlas"]),p=Ce(),m=(0,ow.useMemo)(()=>m0(t,a),[t,a]);return p&&r&&r.target&&r.target.selector&&r.target.selector.type==="BoxSelector"&&r.target.source&&(r.target.source.id===p.id||r.target.source===p.id)?(0,sw.jsx)(h0,{id:r.id,isEditing:!0,region:r.target.selector.spatial,style:m,className:l?.className||i,interactive:!!(l?.href||n),href:l?.href||null,title:l?.title||null,hrefTarget:l?.target||null,onClick:()=>{},...c}):null};var lw=T(H(),1);var aw=T(H(),1);function $f(e={},t=[]){let{id:i,selector:n}=e,r=Xt(),a=i||r.annotationPage,l=De(c=>a?c.iiif.entities.AnnotationPage[a]:void 0,[a]);return(0,aw.useMemo)(()=>{if(l)return n?n(l):l},[l,...t])}var Gf=T(B(),1),wa=({className:e,page:t})=>{let i=$f({id:t.id})||t,n=ro(i,"atlas"),r=ro(i,"html");return De(a=>i.id?a.iiif.entities.AnnotationPage[i.id]:null,[]),(0,Gf.jsx)(lw.Fragment,{children:i.items?.map(a=>(0,Gf.jsx)(yc,{id:a.id,style:n,className:r?.className||e},a.id))})};var vr=T(H(),1);var ls=T(H(),1);function uw(e){return e.type==="SpecificResource"?[e.source,{selector:e.selector}]:[e,{selector:null}]}function Yf(e=Fn){function t(r){let a=r?typeof r=="string"?e.get(r):r:null;if(!a)return[];let l=e.get(a.items,{parent:a}),c=[];for(let p of l)c.push(...e.get(p.items,{parent:p}));return c}function i(r,a=[]){let l=Array.isArray(r)?r:t(r),c=[],p={items:[],type:"complex-choice"},m=[];for(let h of l){if(h.type!=="Annotation")throw new Error("getPaintables() accept either a canvas or list of annotations");let y=Array.from(Array.isArray(h.body)?h.body:[h.body]);for(let S of y){let[w,{selector:v}]=uw(S),x=e.get(w),A=(x.type||"unknown").toLowerCase();if(A==="choice"){let C=e.get(x.items,{parent:x.id}),I=a.length?a.map(E=>C.find(O=>O.id===E)).filter(Boolean):[C[0]];I.length===0&&I.push(C[0]),p.items.push({type:"single-choice",items:C.map(E=>({id:E.id,label:E.label,selected:I.indexOf(E)!==-1})),label:w.label}),y.push(...I);continue}c.indexOf(A)===-1&&c.push(A),m.push({type:A,annotationId:h.id,annotation:h,resource:x,target:h.target,selector:v})}}return{types:c,items:m,choice:p.items.length<2?p.items[0]||null:p,allChoices:p.items.length?p:null}}function n(r){let{choice:a}=i(r);return a}return{getAllPaintingAnnotations:t,getPaintables:i,extractChoices:n}}function cw(e,t,i=[],n=!1,r=[]){if(r.length&&(t=t.filter(l=>r.indexOf(l)===-1)),!t||t.length===0)return;if(t.length===1)return t[0];if(!e)return t.indexOf("none")!==-1?"none":t[0];if(t.indexOf(e)!==-1)return e;let a=e.indexOf("-")!==-1?e.slice(0,e.indexOf("-")):null;if(a&&t.indexOf(a)!==-1)return a;for(let l of i)if(t.indexOf(l)!==-1)return l;if(!n&&e){let c=t.map(p=>p.indexOf("-")!==-1?p.slice(0,p.indexOf("-")):null).indexOf(e);if(c!==-1)return t[c];for(let p of i){let m=p.indexOf("-")!==-1?p.slice(0,p.indexOf("-")):null,h=m?t.indexOf(m):-1;if(h!==-1)return t[h]}}return t.indexOf("none")!==-1?"none":t.indexOf("@none")!==-1?"@none":t[0]}function Xf(e,t,i={}){let{strictFallback:n=!1,defaultText:r="",separator:a=`
|
|
77
|
+
`,fallbackLanguages:l=[],closest:c,skipLanguages:p}=i,m=Object.keys(e||{}),h=c?t:cw(t,m,l,n,p);if(!e)return r;if(typeof e=="string")return e;let y=h?e[h]:void 0;if(y&&h){if(typeof y=="string")return y;if(y.length===1&&y[0]===""){let S=i.skipLanguages||[];return Xf(e,t,{...i,skipLanguages:[...S,h]})}return y.join(a)}return""}function Kf(e,t={}){return Xf(e,t.language||(typeof navigator<"u"?navigator.language:"en"),t)}function kI(e){return e.type==="SpecificResource"?[e.source,{selector:e.selector}]:[e,{selector:null}]}function ba(e,t){let{selector:i,source:n}=Nt(t);if(n.id!==e.id)return[null,n];let r={type:"BoxSelector",spatial:{x:0,y:0,width:Number(e.width),height:Number(e.height)}};return[i?i.type==="TemporalSelector"?{type:"TemporalBoxSelector",temporal:i.temporal,spatial:r.spatial}:i:null,n]}var Zf={makeChoice:()=>{}},Ca={type:"unknown"},et=e=>({type:"unknown",reason:e,annotations:{pages:[]}}),Jf=(e,t)=>({type:"empty",width:e,height:t,annotations:{pages:[]},image:null,images:[]});var Pa=T(H(),1);function OI(e,t){let i=e?.iiif?.meta[t];return i?i.annotationPageManager:null}function dw(e,t){return De(i=>{let n=[];if(!e)return n;let r=Object.keys(i.iiif.entities.AnnotationPage);for(let a of r)if(!t||t.indexOf(a)!==-1){let l=OI(i,a);l&&l.views&&l.views[e]&&n.push(a)}return n},[e,t])}function em({canvas:e,manifest:t,all:i,canvases:n}){let r=[];if(t)for(let a of t.annotations)r.indexOf(a.id)===-1&&r.push(a.id);if(i){if(n&&n.length)for(let a of n)for(let l of a.annotations)r.indexOf(l.id)===-1&&r.push(l.id)}else if(e)for(let a of e.annotations)r.indexOf(a.id)===-1&&r.push(a.id);return r}function LI(e,t){let i=e?.iiif?.meta[t];return i?i.annotationPageManager:null}function Ea(e,t={}){let i=_e(),n=vt(),r=Ce(),a=eo(),l=(0,Pa.useMemo)(()=>em({all:t.all,manifest:n,canvas:r,canvases:a}),[t.all,r,a,n]),c=dw(e,t.all?void 0:l),p=(0,Pa.useCallback)(h=>{e&&i.setMetaValue([h,"annotationPageManager","views"],y=>y&&!y[e]?y:{...y||{},[e]:!1})},[e,i]),m=(0,Pa.useCallback)((h,y={})=>{if(!e)return;let S=i.getState(),w=[];if(y?.deselectOthers){let v=Object.keys(S.iiif.entities.AnnotationPage);for(let x of v){let A=LI(S,x);A&&A.views&&A.views[e]&&w.push(x)}}for(let v of w)p(v);i.setMetaValue([h,"annotationPageManager","views"],v=>v&&v[e]?v:{...v||{},[e]:!0})},[e,p,i]);return{availablePageIds:l,enabledPageIds:c,setPageEnabled:m,setPageDisabled:p}}function tm(e,t){return De((i,n)=>n.get(e.map(r=>({id:r,type:t}))),[e,t])}var gw=T(H(),1);var vc=T(H(),1);var hw=vc.default.createContext(bp.store);hw.displayName="ImageServicesHelper";function xc(){return(0,vc.useContext)(hw)}function pw(e){let t=xc();return zt(t,({loaded:i})=>i[e])}function as(){let e=xc();return zt(e,({loadServiceSync:t})=>t)}function fw(){let e=xc();return zt(e,({loaded:t})=>t)}function mw(){let e=xc();return zt(e,({loadService:t})=>t)}var zI=jn((e,t)=>({loaded:{},setLoaded:(i,n="done")=>{e(r=>({loaded:{...r.loaded,[i]:n}}))}})),FI=Vn();FI.on("loaded",e=>{zI.getState().setLoaded(e.imageServiceId)});function Aa(){let e=as(),t=fw();return[(0,gw.useCallback)((n,{height:r,width:a})=>n&&e(n,{height:r,width:a},!0),[e]),t]}var so=T(H(),1);function oo(e={}){let t=Sa(),i=Ce(e.canvasId?{id:e.canvasId}:void 0);return De((n,r)=>{if(!i)return[];if(t&&e.enableSingleAnnotation)return[t];let a=r.get(i.items),l=[];for(let c of a)l.push(...r.get(c.items));return l},[i])}function im(e,t=[]){let i=_e(),n=(0,so.useMemo)(()=>Yf(i),[]),r=oo({enableSingleAnnotation:e?.enableSingleAnnotation}),[a,l]=(0,so.useState)(e?.defaultChoices||[]),c=(0,so.useMemo)(()=>n.getPaintables(r,a),[i,r,a,...t]),m={makeChoice:(0,so.useCallback)((h,{deselectOthers:y=!0,deselect:S=!1}={})=>{c.choice&&l(w=>{if(S){let x=w.filter(A=>A!==h);if(x.length===0){let A=c.items[0].resource.id;return A?[A]:[]}return x}if(y)return[h];let v=[...w];if(v.length===0&&c.items.length){let x=c.items[0].resource.id;x&&v.push(x)}return w.indexOf(h)!==-1?w:[...w,h]})},[c.choice])};return[c,m]}var NI=["model/gltf-binary"];function nm(e,t){let i=t.items[0],n=i.resource;return n.format?NI.indexOf(n.format)===-1?et(`3D format: ${n.format} is unsupported`):{type:"3d-model",model:n,annotationId:i.annotationId,annotation:i.annotation}:et("Unknown format")}function yw(e,t){let i=t.items,n=i[0];if(i.length===0||!n)return et("No audio");if(!e.duration)return et("No duration on canvas");if(i.length>1)return et("Only one audio source supported");let r=n.resource;return r?"format"in r?{type:"media",media:{annotationId:n.annotationId,annotation:n.annotation,duration:e.duration,url:r.id,type:"Sound",target:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}},format:r.format,selector:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}}},annotations:{pages:[]}}:et("Audio does not have format"):et("Unknown audio")}function Ia(e,t,i){let n=[];for(let r of t.items){let a=r.resource&&r.resource.type==="SpecificResource"?r.resource.source:r.resource;if(!a.id)return et("No resource Identifier");let l;if(a.service){let x=zn(a);x[0]&&(l=i(x[0],e))}let c={type:"BoxSelector",spatial:{x:0,y:0,width:Number(e.width),height:Number(e.height)}},[p,m]=ba(e,r.target),h=e.id?.split("?")[0]||"";if(!(m.id===e.id||decodeURIComponent(m.id||"")===(e.id||"")||m.id===h||decodeURIComponent(m.id||"")===h))continue;let y=r.resource.width&&r.resource.height?{type:"BoxSelector",spatial:{x:0,y:0,width:r.resource.width,height:r.resource.height}}:void 0,S=r.resource.type==="SpecificResource"?Nt(r.resource):null;if(r.selector){let x=Nt({type:"SpecificResource",source:r.resource,selector:r.selector});x&&(S=x)}let w=S&&S.selector&&(S.selector.type==="BoxSelector"||S.selector.type==="TemporalBoxSelector")?{type:"BoxSelector",spatial:{x:S.selector.spatial.x,y:S.selector.spatial.y,width:S.selector.spatial.width,height:S.selector.spatial.height}}:void 0;l&&!l.id&&(l.id=l["@id"]);let v={id:a.id,type:"Image",annotationId:r.annotationId,annotation:r.annotation,width:Number(p||w?a.width:e.width),height:Number(p||w?a.height:e.height),service:l,sizes:l&&l.sizes?l.sizes:a.width&&a.height?[{width:a.width,height:a.height}]:[],target:p&&p.type!=="PointSelector"?p:c,selector:w||{type:"BoxSelector",spatial:{x:0,y:0,width:Number(e.width),height:Number(e.height)}}};n.push(v)}return{type:"images",image:n[0],images:n,choice:t.choice}}function vw(e,t={},i){let n=e.language||i||"none";switch(e.type){case"TextualBody":{typeof e.value<"u"&&(t[n]=[e.value]);break}case"List":case"Composite":case"Choice":e.items&&e.items.forEach(r=>vw(r,t,n))}return t}function Ta(e,t){let i=[];return t.items.forEach(n=>{if(n.resource){let[r]=ba(e,n.target);i.push({type:"Text",annotationId:n.annotationId,annotation:n.annotation,text:vw(n.resource),target:r})}}),{type:"textual-content",items:i}}var BI=/^.*(?:(?:youtu\.be\/|v\/|vi\/|u\/\w\/|embed\/|shorts\/)|(?:(?:watch)?\?vi?=|&vi?=))([^#&?]*).*/;function Ra(e,t,i){let n=t.items.filter(w=>w.type==="video"),r=n[0],a=!1;if(e.duration||(a=!0),n.length>1||!r)return et("Only one video source supported");let l=n[0]?.resource,c=!!(l.service||[]).find(w=>(w.profile||"").includes("youtube.com"));if(!c&&a)return et("Video does not have duration");if(!l)return et("Unknown video");if((!l.format||l.format==="text/html")&&!c)return et("Video does not have format");let p=[],m=i.get(e.annotations||[]);for(let w of m){let v=i.get(w.items||[]);for(let x of v)if((x.motivation?Array.isArray(x.motivation||"")?x.motivation:[x.motivation]:[]).includes("supplementing")){let C=i.get(x.body||[]);for(let I of C){let E=I;if(E.type==="Choice")for(let O of E.items){let L=i.get(O);L.format==="text/vtt"&&p.push({id:L.id,type:"Text",format:"text/vtt",label:L.label,language:L.language})}else E.format==="text/vtt"&&p.push({id:E.id,type:"Text",format:"text/vtt",label:E.label,language:E.language})}}}let h={annotationId:r.annotationId,annotation:r.annotation,duration:e.duration,url:l.id,type:"Video",target:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}},format:l.format,selector:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}}},y=Nt(r.target);y.selector&&y.selector.type==="TemporalBoxSelector"&&(h.target=y.selector);let{selector:S}=Wn(r.selector);if(S===null){let w=h.target.temporal.startTime,x=(h.target.temporal.endTime||e.duration)-w;h.selector={type:"TemporalSelector",temporal:{startTime:0,endTime:x}}}else S.type==="TemporalSelector"&&(h.selector=S);if(c){h.type="VideoYouTube";let w=l.id.match(BI);if(!w[1])return et("Video is not known youtube video");h.youTubeId=w[1]}return{type:"media",media:h,annotations:{pages:[]},captions:p}}function rm(e,t,i,n){let r={type:"complex-timeline",items:[],keyframes:[],duration:e.duration||0},a={type:"complex-choice",items:[]};function l(m){m.choice&&(m.choice.type==="complex-choice"?a.items.push(...m.choice.items):a.items.push(m.choice))}for(let m of t.items){if(m.type==="image"){let h=Ia(e,{choice:null,allChoices:null,types:["image"],items:[m]},i);if(h.type==="images"){l(h),r.items.push(h.image);let y={id:h.image.annotationId,type:"enter",resourceType:"image",time:h.image.target?.temporal?.startTime||0};r.keyframes.push(y);let S={id:h.image.annotationId,type:"exit",resourceType:"image",time:h.image.target?.temporal?.endTime||e.duration||0};r.keyframes.push(S)}}if(m.type==="textualbody"){let h=Ta(e,{choice:null,allChoices:null,types:["textualbody"],items:[m]});if(h.type==="textual-content"){l(h);let y=h.items[0];r.items.push(y);let S=y.target,w={id:y.annotationId,type:"enter",resourceType:"text",time:S.temporal?.startTime||0};r.keyframes.push(w);let v={id:y.annotationId,type:"exit",resourceType:"text",time:S.temporal?.endTime||e.duration||0};r.keyframes.push(v)}}if(m.type==="video"){let h=Ra(e,{choice:null,allChoices:null,types:["video"],items:[m]},n);if(h.type==="media"){l(h);let y=h.media;r.items.push(y);let S={id:y.annotationId,type:"enter",resourceType:"video",time:y.target?.temporal?.startTime||0};r.keyframes.push(S);let w={id:y.annotationId,type:"exit",resourceType:"video",time:y.target?.temporal?.endTime||e.duration||0};r.keyframes.push(w)}}}r.keyframes.sort((m,h)=>m.time-h.time);let c=[],p=[];for(let m of r.keyframes){if(m.resourceType==="image"||m.resourceType==="text"){p.push(m);continue}if(m.type==="enter"){c.length===0&&(m.isPrime=!0),c.push(m),p.push(m);continue}if(m.type==="exit"&&(p.push(m),c=c.filter(h=>h.id!==m.id),c.length!==0)){let h=c[0],y={id:h.id,type:"change",isPrime:!0,resourceType:h.resourceType,time:m.time};p.push(y)}}return r.keyframes=p,a.items.length&&(r.choice=a),r}var Sc={},om={get(e){return e},setMetaValue([e,t,i],n){let r=om.getResourceMeta(e,t),a=r?r[i]:void 0,l=typeof n=="function"?n(a):n;Sc[e]={...Sc[e]||{},[t]:{...(Sc[e]||{})[t]||{},[i]:l}}},getResourceMeta:(e,t)=>{let i=Sc[e];if(i)return t?i[t]:i},async load(e){let t=typeof e=="string"?e:e.id;return fetch(t).then(i=>i.json())},requestStatus(e){}};function sm({canvas:e,paintables:t,supports:i,loadImageService:n,vault:r=om}){if(!e)return Ca;if(t.types.length===0)return i.indexOf("empty")!==-1?Jf(e.width,e.height):Ca;if(t.types.length!==1)if(t.types.length===2&&t.types.indexOf("text")!==-1)t.types=t.types.filter(l=>l!=="text");else return i.indexOf("complex-timeline")===-1?et("Complex timeline not supported"):rm(e,t,n,r);let a=t.types[0];return a==="image"?i.indexOf("images")===-1?et("Image not supported"):Ia(e,t,n):a==="Model"||a==="model"?i.indexOf("3d-model")===-1?et("3D not supported"):nm(e,t):a==="textualbody"?i.indexOf("textual-content")===-1?et("Textual content not supported"):Ta(e,t):a==="sound"||a==="audio"?i.indexOf("media")===-1?et("Media not supported"):yw(e,t):a==="video"?i.indexOf("media")===-1?et("Media not supported"):Ra(e,t,r):Ca}function am(e){let t=vt(),i=Ce(),n=_e(),r=fa(),a=e?.emitter||r,[l,c]=Aa(),{enabledPageIds:p}=Ea(e?.annotationPageManagerId||t?.id||i?.id,{all:!1}),m=tm(p,"AnnotationPage"),h=e?.strategies||["empty","images","media","textual-content","complex-timeline"],[y,S]=im(e,[c]);(0,ls.useEffect)(()=>{let v=x=>{S.makeChoice(x.choiceId,{deselectOthers:x.deselectOthers,deselect:x.deselect})};return a.on("make-choice",v),()=>{a.off("make-choice",v)}},[]);let w=(0,ls.useMemo)(()=>sm({canvas:i,paintables:y,supports:h,loadImageService:l,vault:n}),[i,y,n,S.makeChoice]);return(0,ls.useEffect)(()=>{let v=y.allChoices,x={canvasId:i?.id,manifestId:t?.id};v&&a.emit("choice-change",{choice:v,partOf:x})},[i?.id,y.allChoices]),(0,ls.useMemo)(()=>w.type==="unknown"?[w,Zf]:[{...w,annotations:{pages:m}},S],[w,m])}var wc=T(H(),1),_a=(0,wc.createContext)(null);_a.displayName="Strategy";function pt(){let e=(0,wc.useContext)(_a);if(!e)throw new Error("useStrategy must be used within a StrategyProvider");return e}var bc=T(H(),1),Ma=(0,bc.createContext)(null);Ma.displayName="Controls";function ni(){let e=(0,bc.useContext)(Ma);if(!e)throw new Error("useStrategy must be used within a StrategyProvider");return e}var lm=T(B(),1);function um({strategies:e,registerActions:t,defaultChoices:i,onChoiceChange:n,mediaControlsDeps:r,renderMediaControls:a,renderViewerControls:l,viewControlsDeps:c,renderComplexTimelineControls:p,complexTimelineControlsDeps:m,throwOnUnknown:h,children:y}){let S=Ce(),w=_e(),v=(0,vr.useMemo)(()=>yr(w),[w]),[x,A]=am({strategies:e||["images"],defaultChoices:i?.map(({id:O})=>O)}),C="choice"in x?x.choice:void 0;if((0,vr.useEffect)(()=>{t&&t(A)},[x.annotations]),(0,vr.useEffect)(()=>{n&&n(C)},[C]),(0,vr.useEffect)(()=>{if(i)for(let O of i)typeof O.opacity<"u"&&v.applyStyles({id:O.id},"atlas",{opacity:O.opacity})},[i]),x.type==="unknown"&&h)throw new Error(x.reason||"Unknown strategy");let I=(0,vr.useMemo)(()=>({renderMediaControls:a,mediaControlsDeps:r||[],renderViewerControls:l,viewControlsDeps:c||[],renderComplexTimelineControls:p,complexTimelineControlsDeps:m||[]}),[r,a,l,c,p,m]),E=(0,vr.useMemo)(()=>({strategy:x,actions:A,choices:"choice"in x?x.choice:[]}),[x,S]);return(0,lm.jsx)(Ma.Provider,{value:I,children:(0,lm.jsx)(_a.Provider,{value:E,children:y})})}var xw=T(H(),1);var Sw=T(B(),1);function cm({x:e=0,y:t=0,keepCanvasScale:i,children:n}){let{strategy:r}=pt(),a=Ce(),l=ya(a,["deep-zoom"]),c=(0,xw.useMemo)(()=>i?1:Math.max(1,...r.type==="images"?r.images.map(m=>(m.width||0)/m.target?.spatial.width):[]),[i,r]);XS(c);let p=r.type==="images"?r.images.length:0;return a?(0,Sw.jsx)("world-object",{height:a.height,width:a.width,x:e,y:t,...l,children:n},`${a.id}/${r.type}/${p}`):null}var ww=T(B(),1);function Cc({style:e}){let t=Ce();return!t||!t.height||!t.width?null:(0,ww.jsx)("box",{interactive:!1,target:{x:0,y:0,width:Number(t.width),height:Number(t.height)},style:e})}var bw=T(B(),1);function dm({backgroundStyle:e,alwaysShowBackground:t}){let{strategy:i}=pt();return i.type!=="empty"&&!t?null:(0,bw.jsx)(Cc,{style:e})}var Tc=T(H(),1);var gt=T(H(),1);function Cw(e){return{isMuted:!1,playRequested:!1,isPlaying:!1,isFinished:!1,volume:100,duration:e}}function DI(e,t){switch(t.type){case"RESET":return t.state;case"FINISHED":return{...e,isFinished:!0,isPlaying:!1,playRequested:!1};case"PLAY_PAUSE":return{...e,isFinished:!1,isPlaying:!e.isPlaying};case"PLAY_REQUESTED":return{...e,isFinished:!1,playRequested:!0};case"PAUSE":return{...e,isPlaying:!1};case"PLAY":return{...e,isFinished:!1,playRequested:!1,isPlaying:!0};case"MUTE":return{...e,isMuted:!0};case"SET_VOLUME":return{...e,volume:t.volume,isMuted:t.volume===0};case"TOGGLE_MUTE":return{...e,isMuted:!e.isMuted};case"UNMUTE":return{...e,isMuted:!1}}return e}function Pc(e){let t=Math.round(e);return`${Math.floor(t/60)}:${`${t%60}`.padStart(2,"0")}`}function ao(e){let[t,i]=(0,gt.useReducer)(DI,Cw(e.duration));(0,gt.useEffect)(()=>{i({type:"RESET",state:Cw(e.duration)})},[e.duration]);let n=(0,gt.useRef)(null),r=(0,gt.useRef)(null),a=(0,gt.useRef)(null),l=(0,gt.useRef)(!1),c=(0,gt.useCallback)(()=>{r.current&&n.current&&(r.current.innerHTML=Pc(n.current.currentTime),a.current&&(a.current.style.width=`${n.current.currentTime/e.duration*100}%`),l.current!==n.current.muted&&(l.current=n.current.muted,i(n.current.muted?{type:"MUTE"}:{type:"UNMUTE"})))},[e.duration]),p=(0,gt.useCallback)(()=>{n.current&&(i({type:"PLAY_REQUESTED"}),n.current.play().then(()=>{i({type:"PLAY"})}),c())},[c]),m=(0,gt.useCallback)(()=>{n.current&&(n.current.duration>0&&n.current.paused?p():h())},[c]),h=(0,gt.useCallback)(()=>{n.current&&(n.current.pause(),i({type:"PAUSE"}),c())},[c]),y=(0,gt.useCallback)(()=>{n.current&&(n.current.muted=!n.current.muted,i(n.current.muted?{type:"MUTE"}:{type:"UNMUTE"}))},[]),S=(0,gt.useCallback)(()=>{n.current&&(n.current.muted=!0,i({type:"MUTE"}))},[]),w=(0,gt.useCallback)(()=>{n.current&&(n.current.muted=!1,i({type:"UNMUTE"}))},[]),v=(0,gt.useCallback)(C=>{n.current&&(n.current.muted=!1,n.current.volume=C/100,i({type:"SET_VOLUME",volume:C}))},[]),x=(0,gt.useCallback)(C=>{n.current&&(n.current.currentTime=Math.max(0,Math.min(C*e.duration,e.duration)),c())},[]),A=(0,gt.useCallback)(C=>{if(n.current){let I=typeof C=="function"?C(n.current.currentTime):C;n.current.currentTime=Math.max(0,Math.min(I,e.duration)),c()}},[]);return(0,gt.useEffect)(()=>{let C=setInterval(()=>{c()},350);return()=>clearInterval(C)},[c,e.duration]),(0,gt.useEffect)(()=>{let C=()=>{i({type:"FINISHED"})},I=n.current;return I?.addEventListener("ended",C),()=>I?.removeEventListener("ended",C)},[]),[{element:n,currentTime:r,progress:a},t,{play:p,pause:h,playPause:m,mute:S,unmute:w,toggleMute:y,setVolume:v,setDurationPercent:x,setTime:A}]}function Pw({currentKeyFrameIndex:e,keyframes:t,targetTime:i,currentTime:n}){if(n<=i){let r=t.findIndex(c=>c.time>i);if(r===-1)return[e,[]];let a={},l=t.slice(e,r);for(let c of l)c.type==="enter"&&(a[c.id]=c),c.type==="exit"&&(a[c.id]?delete a[c.id]:a[c.id]=c);return[r,Object.values(a)]}return[e,[]]}function Ew({complexTimeline:e,startTime:t=0}){let i=Vn(),n={},r={progress:null,currentTime:null},a=0,l=null,c=0,p=null;function m(){let I=A.getState().visibleElements,E=n,O=[],L=Object.keys(E);for(let M of L){let Q=E[M],V=I[M];Q&&V&&O.push(Q)}return O}function h(){return Object.keys(n).map(I=>n[I])}function y(C){r.currentTime&&(r.currentTime.innerHTML=Pc(C),r.progress&&(r.progress.style.width=`${C/e.duration*100}%`))}let S=()=>{let C=A.getState(),I=C.currentPrime;if(!I)return;let E=n,O=C.visibleElements,L=Object.keys(E);for(let M of L){let Q=E[M],V=O[M];if(Q&&M!==I.id&&V){let J=c-V.time*1e3;Math.abs(c-V.time*1e3-Q.currentTime*1e3)>300&&(Q.currentTime=J/1e3)}}},w=(C=0)=>{let I=C-a,E=A.getState();if(E.isPlaying){let O=E.currentPrime;if(O){let V=n[O.id];V&&(V.paused?c+=I:c=(O.time+V.currentTime)*1e3)}else c+=I;let L=c/1e3;if(L>E.duration){A.getState().setTime(0),A.setState({isPlaying:!1}),v(),y(0);return}y(L);let[M,Q]=Pw({currentTime:L,currentKeyFrameIndex:E.nextKeyframeIndex,keyframes:E.complexTimeline.keyframes,targetTime:L});Q.length&&E.applyKeyframes(M,Q)}a=C,l=requestAnimationFrame(w)},v=()=>{l&&cancelAnimationFrame(l)},x=(C,I)=>{},A=jn((C,I)=>({complexTimeline:e,elements:{},visibleElements:{},isBuffering:!1,bufferMap:{},isMuted:!1,playRequested:!1,isPlaying:!1,isFinished:!1,isReady:!1,volume:100,duration:e.duration,clockStartRequests:0,clockStartTime:0,primeTime:0,currentPrime:null,clockRunning:!1,nextKeyframeIndex:0,startClock:()=>{I().clockRunning||(w(),p=setInterval(S,500)),C({clockRunning:!0,clockStartRequests:I().clockStartRequests+1})},applyKeyframes(E,O){let L=I(),M={...L.visibleElements},Q=L.currentPrime;for(let V of O)V.type==="enter"&&(M[V.id]=V,i.emit("complex-timeline.enter",{id:V.id})),V.type==="exit"&&(M[V.id]=null,i.emit("complex-timeline.exit",{id:V.id})),V.isPrime&&(Q=V);C({nextKeyframeIndex:E,visibleElements:M,currentPrime:Q})},stopClock:()=>{let E=I().clockStartRequests;if(E!==0){if(E===1){v(),p&&clearInterval(p),C({clockRunning:!1,clockStartRequests:0});return}C({clockStartRequests:E-1})}},setElement:(E,O)=>{n[E]=O;let L=Object.keys(n),M=I().complexTimeline;x(O,E),M.items.filter(V=>V.type!=="Image"&&V.type!=="Text").every(V=>L.includes(V.annotationId))&&!I().isReady&&(i.emit("complex-timeline.ready",{complexTimeline:M}),C({isReady:!0}))},removeElement:E=>{delete n[E]},mute(){for(let E of h())E.muted=!0;C({isMuted:!0})},unmute(){for(let E of h())E.muted=!1;C({isMuted:!1})},play(){if(!I().isPlaying){for(let O of m())O.play();C({isPlaying:!0})}},pause(){if(I().isPlaying){for(let O of m())O.pause();C({isPlaying:!1})}},playPause(){let E=I();E.isPlaying?E.pause():E.play()},setDurationPercent(E){let L=I().duration*E;I().setTime(L)},setTime(E){let O=I(),L=c/1e3,M=typeof E=="function"?E(L):E,Q=O.nextKeyframeIndex;if(L>M){C({visibleElements:{},currentPrime:null});let pe=Object.keys(O.visibleElements);for(let Te of pe)i.emit("complex-timeline.exit",{id:Te});L=0,Q=0}let[V,J]=Pw({currentTime:L,currentKeyFrameIndex:Q,keyframes:O.complexTimeline.keyframes,targetTime:M});O.applyKeyframes(V,J),c=M*1e3;let q=A.getState().visibleElements,ee=n,Me=Object.keys(q);for(let pe of Me){let Te=q[pe];if(Te){let ke=ee[pe];ke&&(ke.currentTime=(c-Te.time*1e3)/1e3)}}y(M)},setVolume(E){for(let O of h())O.volume=Math.min(1,Math.max(0,E/100));C({volume:E})},toggleMute(){let E=I();E.isMuted?(E.unmute(),C({isMuted:!1})):(E.mute(),C({isMuted:!0}))},clearProgressElement(){r.progress=null},setProgressElement(E){r.progress=E},setCurrentTimeElement(E){r.currentTime=E},clearCurrentTimeElement(){r.currentTime=null}}));return i.on("complex-timeline.enter",C=>{let I=A.getState(),E=C.id,O=n[E];O&&I.isPlaying&&O.play()}),i.on("complex-timeline.exit",C=>{let I=A.getState(),E=C.id,O=n[E];O&&(O.currentTime=0,O.pause())}),A.getState().setTime(t),{store:A,emitter:i}}var ka=T(H(),1);var an=T(H(),1),sn=T(B(),1),Iw=an.default.createContext("en"),Tw=an.default.createContext({}),Rw=an.default.createContext(null);function jI(e){return(0,sn.jsx)(Tw.Provider,{value:e.translations,children:e.children})}function VI(e){return(0,sn.jsx)(Iw.Provider,{value:e.language,children:e.children})}function UI(e){return(0,sn.jsx)(Rw.Provider,{value:e.convert,children:e.children})}function hm(){return an.default.useContext(Rw)}function Ec(){return an.default.useContext(Iw)}function pm(){return an.default.useContext(Tw)}function Aw(e){return e.indexOf("-")!==-1?e.slice(0,e.indexOf("-")):e}function _w({as:e,language:t,children:i,viewingDirection:n,...r}){let a=Ec();return(0,an.useMemo)(()=>Aw(a)===Aw(t),[a,t])?e?(0,sn.jsx)(e,{...r,children:i}):(0,sn.jsx)("span",{...r,children:i}):e?(0,sn.jsx)(e,{...r,lang:t,dir:n,children:i}):(0,sn.jsx)("span",{...r,lang:t,dir:n,children:i})}function Mw(e,t,i){if(t.length===0)return;if(t.length===1)return t[0];if(t.indexOf(e)!==-1)return e;let n=e.indexOf("-")!==-1?e.slice(0,e.indexOf("-")):null;if(n&&t.indexOf(n)!==-1)return n;for(let r of i)if(t.indexOf(r)!==-1)return r;return t.indexOf("none")!==-1?"none":t.indexOf("@none")!==-1?"@none":t[0]}var kw=(e,t=[])=>{let i=Ec();return(0,an.useMemo)(()=>{let n=e();return Mw(i,n,[])},[i,...t])};function lo(e,t,i,n){return t?i?i(e[t]||t,n||"none"):e[t]||t:""}function Ow(e,t,i=`
|
|
78
|
+
`,n={}){let r=hm(),a=kw(()=>Object.keys(e||{}),[e]);return[(0,an.useMemo)(()=>{if(!e)return lo(n,t,r)||"";if(typeof e=="string")return lo(n,e,r);let l=a?e[a]:void 0;return l?typeof l=="string"?l:l.map(c=>lo(n,c,r,a)).join(i):""},[a,t,e]),a]}function WI(){let e=Ec(),t=pm(),i=hm();return function(r,a="",l=`
|
|
79
|
+
`,c=t){let p=Object.keys(r||{}),m=Mw(e,p,[]);if(!r)return lo(c,a,i)||"";if(typeof r=="string")return lo(c,r,i);let h=m?r[m]:void 0;return h?typeof h=="string"?lo(c,h,i,m):h.map(y=>lo(c,y,i,m)).join(typeof l<"u"?l:`
|
|
80
|
+
`):""}}function Ii({as:e,defaultText:t,enableDangerouslySetInnerHTML:i,children:n,separator:r,...a}){let l=pm(),[c,p]=Ow(n,t,r,l);return p?(0,sn.jsx)(_w,{...a,as:e,language:p,title:i?void 0:c,dangerouslySetInnerHTML:i?{__html:c}:void 0,children:i?void 0:c}):e?(0,sn.jsx)(e,{...a,children:c}):(0,sn.jsx)("span",{...a,title:i?void 0:c,dangerouslySetInnerHTML:i?{__html:c}:void 0,children:i?void 0:c})}var Hi=T(B(),1);function HI({resource:e,heading:t,note:i,extra:n}){return n?(0,Hi.jsx)(Cn,{target:{x:0,y:0,width:n.target?.spatial.width,height:n.target?.spatial.height},backgroundColor:"#333",relative:!0,children:(0,Hi.jsx)("div",{style:{display:"flex",alignContent:"center",justifyContent:"center",alignItems:"center",height:"100%",width:"100%",background:"#444",color:"#BBB"},children:(0,Hi.jsxs)("div",{children:[(0,Hi.jsx)(Ii,{children:t||"Not authorised"}),i&&(0,Hi.jsx)("p",{children:(0,Hi.jsx)(Ii,{children:i})}),(0,Hi.jsx)("p",{children:e.id||e["@id"]||"unknown"})]})})}):null}function Lw({image:e,thumbnail:t,crop:i,enableSizes:n,enableThumbnail:r,renderOptions:a}){let l=_f(),c=Le(e.service),p=pw(c),m=as(),h=p?.service;m(e.service,e);let y=h&&p?.status==="done",S=t&&t.type==="fixed"&&t.id&&!t.id.includes("/full/full/")&&!t.id.includes("/max/")?t:void 0;if(y===!1)return null;if(!l){let w=e.service,v=w.width||e.width||0,x=w.height||e.height||0;return(0,Hi.jsx)(Fp,{enableThumbnail:r,renderOptions:a,tiles:{id:w.id||w["@id"]||"unknown",height:x,width:v,imageService:w,thumbnail:S},enableSizes:n,x:0,y:0,width:e.target?.spatial.width,height:e.target?.spatial.height,crop:i})}return(0,Hi.jsx)(Mf,{resource:e.service,errorComponent:HI,extra:e,children:w=>{let v=w.width||e.width||0,x=w.height||e.height||0;return(0,Hi.jsx)(Fp,{enableThumbnail:r,renderOptions:a,tiles:{id:w.id||w["@id"]||"unknown",height:x,width:v,imageService:w,thumbnail:S},enableSizes:n,x:0,y:0,width:e.target?.spatial.width,height:e.target?.spatial.height,crop:i})}},e.id)}var uo=T(B(),1);function xr({id:e,image:t,thumbnail:i,isStatic:n,x:r=0,y:a=0,children:l,selector:c,onClick:p,enableSizes:m}){let h=(0,ka.useMemo)(()=>{if(!(!c||c.spatial.x===0&&c.spatial.y===0))return c.spatial},[c]);return(0,uo.jsx)("world-object",{x:r+t.target.spatial.x,y:a+t.target.spatial.y,width:t.target.spatial.width,height:t.target.spatial.height,onClick:p,children:t.service?(0,uo.jsxs)(ka.Fragment,{children:[(0,uo.jsx)(Lw,{image:t,thumbnail:i,crop:h,enableSizes:m}),l]},"service"):(0,uo.jsxs)(ka.Fragment,{children:[(0,uo.jsx)("world-image",{onClick:p,uri:t.id,target:{x:0,y:0,width:t.target.spatial.width,height:t.target.spatial.height},display:t.width&&t.height?{width:t.width,height:t.height}:void 0,crop:h}),l]},"no-service")},e+(t.service?"server":"no-service"))}var Ac=T(H(),1);var zw=T(B(),1),fm=(0,Ac.createContext)(null);fm.displayName="ComplexTimeline";function mm({children:e,store:t}){return(0,zw.jsx)(fm.Provider,{value:t,children:e})}function qI(e){let t=(0,Ac.useContext)(fm);if(!t)throw new Error("useComplexTimeline must be used within a ComplexTimelineProvider");return zt(t,e)}var Hn=T(B(),1);function Ic({strategy:e,onClickPaintingAnnotation:t}){return(0,Hn.jsx)(Hn.Fragment,{children:e.items.map((i,n)=>(0,Hn.jsx)(Hn.Fragment,{children:(0,Hn.jsx)(Cn,{onClick:t?r=>{r.stopPropagation(),t(i.annotationId,i,r)}:void 0,target:i.target?.spatial||void 0,children:(0,Hn.jsx)("div",{"data-textual-content":!0,children:(0,Hn.jsx)(Ii,{enableDangerouslySetInnerHTML:!0,children:i.text})})},n)}))})}var qn=T(B(),1);function Fw({strategy:e,children:t}){let{store:i}=(0,Tc.useMemo)(()=>Ew({complexTimeline:e}),[e]),n=zt(i,l=>l.isReady),r=zt(i,l=>l.visibleElements);function a(l){return c=>{c&&i.getState().setElement(l,c)}}return(0,Tc.useLayoutEffect)(()=>{if(n){let{startClock:l,stopClock:c}=i.getState();return l(),()=>{c()}}},[e,n]),Ft("portal","custom-controls",mm,{store:i,children:t},[n]),(0,qn.jsxs)(qn.Fragment,{children:[e.items.map(l=>l.type!=="Image"||!r[l.annotationId]?null:(0,qn.jsx)(xr,{image:l,id:l.annotationId},l.id)),e.items.map((l,c)=>l.type!=="Text"||!r[l.annotationId]?null:(0,qn.jsx)(Ic,{strategy:{type:"textual-content",items:[l]}},c)),e.items.map((l,c)=>l.type!=="Video"||!l.target.spatial?null:(0,qn.jsx)(Cn,{target:l.target.spatial,children:(0,qn.jsx)("video",{ref:a(l.annotationId),src:l.url,style:{height:"100%",width:"100%",opacity:r[l.annotationId]?1:0}})},c))]})}var Nw=T(B(),1);function gm(){let{strategy:e}=pt(),{renderComplexTimelineControls:t}=ni();return e.type!=="complex-timeline"?null:(0,Nw.jsx)(Fw,{strategy:e,children:t?t(e):null})}var us=T(B(),1);function ym({onClickPaintingAnnotation:e,children:t}){let{strategy:i}=pt(),{renderViewerControls:n,viewControlsDeps:r}=ni(),a=ma(),l=Ce();return Ft(a&&i.type==="textual-content"&&n?"overlay":"none",`canvas-portal-controls-${l?.id}`,Ui.Provider,n?{value:a||null,children:n(i)}:{},[l,a,i,...r||[]]),i.type!=="textual-content"?null:(0,us.jsxs)(us.Fragment,{children:[(0,us.jsx)(Ic,{strategy:i,onClickPaintingAnnotation:e}),t]})}var Sr=T(H(),1);var Bw=T(H(),1),vm=(e,t=[])=>{let i=_e();(0,Bw.useEffect)(()=>{e(i)},[i,...t])};var Rc=T(H(),1);var Dw=Rc.default.createContext(new Lo);function Oa(){return(0,Rc.useContext)(Dw)}function Qn(e,t,{canvasId:i,manifestId:n}={}){let r=_e(),a=Oa(),l=(0,Sr.useMemo)(()=>Cp(r,{imageServiceLoader:a}),[r,a]),[c,p]=(0,Sr.useState)(),m=vt(n?{id:n}:void 0),h=Ce(i?{id:i}:void 0),y=h||m,S=(0,Sr.useRef)(!1);if((0,Sr.useEffect)(()=>(S.current=!1,()=>{S.current=!0}),[]),!y)throw new Error("Must be called under a manifest or canvas context.");return vm(w=>{l.getBestThumbnailAtSize(y,e,t).then(v=>{v.best&&!S.current&&p(v.best)})},[y]),c}var cs=T(B(),1);function xm({isStatic:e=!1,enableSizes:t=!1,onClickPaintingAnnotation:i,children:n}){let{strategy:r}=pt(),{renderViewerControls:a,viewControlsDeps:l}=ni(),c=Ce(),p=ma(),m=Qn({maxWidth:256,maxHeight:256});return Ft(p&&r.type==="images"&&a?"overlay":"none",`canvas-portal-controls-${c?.id}`,Ui.Provider,a?{value:p||null,children:a(r)}:{},[c,p,r,...l||[]]),r.type!=="images"?null:(0,cs.jsxs)(cs.Fragment,{children:[r.images.map((h,y)=>(0,cs.jsx)(xr,{isStatic:e,image:h,id:h.id,thumbnail:y===0?m:void 0,selector:h.selector,enableSizes:t,onClick:i?S=>{i(h.annotationId,h,S)}:void 0},h.id+y)),n]})}var wr=T(B(),1);function Sm({model:e}){return(0,wr.jsxs)(wr.Fragment,{children:[(0,wr.jsx)("style",{children:`
|
|
81
81
|
.model-container {
|
|
82
82
|
position: absolute;
|
|
83
83
|
top: 0;
|
|
@@ -90,7 +90,7 @@ No matching component was found for:
|
|
|
90
90
|
justify-content: center;
|
|
91
91
|
pointer-events: visible;
|
|
92
92
|
}
|
|
93
|
-
`}),(0,wr.jsx)("div",{className:"model-container",children:(0,wr.jsx)("model-viewer",{"interaction-prompt":"none",style:{width:"100%",height:"100%"},"camera-controls":"","ar-status":"not-presenting",src:e.id})})]})}function _c({model:e,name:t}){return Ft("overlay",`model-${t}`,
|
|
93
|
+
`}),(0,wr.jsx)("div",{className:"model-container",children:(0,wr.jsx)("model-viewer",{"interaction-prompt":"none",style:{width:"100%",height:"100%"},"camera-controls":"","ar-status":"not-presenting",src:e.id})})]})}function _c({model:e,name:t}){return Ft("overlay",`model-${t}`,Sm,{model:e},[e]),null}var jw=T(B(),1);function wm(){let{strategy:e}=pt();return e.type!=="3d-model"?null:(0,jw.jsx)(_c,{model:e.model})}var co=T(B(),1);function bm({children:e}){let{strategy:t}=pt(),[i]=jf();return t.type!=="images"?null:(0,co.jsxs)(co.Fragment,{children:[i?(0,co.jsx)(wa,{page:i}):null,t.annotations&&t.annotations.pages?t.annotations.pages.map(n=>(0,co.jsx)(wa,{page:n},n.id)):null,e]})}var br=T(H(),1),Mc=T(B(),1),Vw=(0,br.createContext)(null),Uw=(0,br.createContext)(null),Ww=(0,br.createContext)(null);function QI(){let e=(0,br.useContext)(Vw);if(!e)throw new Error("Ctx not found");return e}function $I(){let e=(0,br.useContext)(Uw);if(!e)throw new Error("Ctx not found");return e}function GI(){let e=(0,br.useContext)(Ww);if(!e)throw new Error("Ctx not found");return e}function La({actions:e,state:t,children:i,currentTime:n,progress:r,element:a}){return(0,Mc.jsx)(Ww.Provider,{value:{currentTime:n,progress:r,element:a},children:(0,Mc.jsx)(Uw.Provider,{value:e,children:(0,Mc.jsx)(Vw.Provider,{value:t,children:i})})})}var Hw=T(H(),1);function za(){let e=vt(),t=Ce();return(0,Hw.useMemo)(()=>{if(!e||!t||!e.start)return null;let i=Nt(e.start);return!i||i.source.id!==t.id||!i||!i.selector||i.selector.type!=="TemporalSelector"?null:i.selector.temporal},[e,t])}var Oc=T(B(),1);function Cm({media:e,startTime:t,children:i}){let[{element:n,currentTime:r,progress:a},l,c]=ao({duration:e.duration}),p=t?`${e.url}#t=${t}`:e.url;return(0,Oc.jsxs)(La,{state:l,actions:c,currentTime:r,progress:a,element:n,children:[(0,Oc.jsx)("audio",{ref:n,src:p}),i]},e.url)}function kc({media:e,mediaControlsDeps:t,audioCopmonent:i=Cm,children:n}){let r=za();return Ft("portal","audio",i,{media:e,startTime:r?r.startTime:null,children:n},[e,r,...t||[]]),null}var Pm=T(B(),1);function ho({x:e=0,y:t=0}){let i=Ce(),n=Qn({maxWidth:256,maxHeight:256});return!i||!n||n.type!=="fixed"?null:(0,Pm.jsx)("world-object",{height:i.height,width:i.width,x:e,y:t,children:(0,Pm.jsx)("world-image",{uri:n.id,target:{x:0,y:0,width:i.width,height:i.height},display:n.width&&n.height?{width:n.width,height:n.height}:void 0,crop:void 0})})}var po=T(B(),1);function Em({as:e}){let{strategy:t}=pt(),{renderMediaControls:i,mediaControlsDeps:n}=ni();return t.type!=="media"||t.media.type!=="Sound"?null:(0,po.jsx)(po.Fragment,{children:(0,po.jsxs)(kc,{media:t.media,mediaControlsDeps:n,audioCopmonent:e,children:[(0,po.jsx)(ho,{}),i?i(t):null]},t.media.url)})}var $n=T(B(),1);function Am(){let{strategy:e}=pt(),{renderViewerControls:t,viewControlsDeps:i}=ni(),n=Ce(),r=n?.accompanyingCanvas,a=n?.placeholderCanvas;return(0,$n.jsxs)($n.Fragment,{children:[e.type==="media"&&e.media.type==="Sound"&&r?(0,$n.jsx)(Vi,{canvas:r.id,children:(0,$n.jsx)(fo,{renderViewerControls:t,viewControlsDeps:i})}):null,e.type==="media"&&e.media.type==="Sound"&&a&&!r?(0,$n.jsx)(Vi,{canvas:a.id,children:(0,$n.jsx)(fo,{renderViewerControls:t,viewControlsDeps:i})}):null]})}var Fa=T(B(),1);function Im({element:e,media:t,startTime:i,playPause:n,poster:r}){let a="div",l=i?`${t.url}#t=${i}`:t.url;return(0,Fa.jsxs)(a,{className:"video-container",part:"video-container",onClick:n,children:[(0,Fa.jsx)("style",{children:`
|
|
94
94
|
.video-container {
|
|
95
95
|
position: absolute;
|
|
96
96
|
top: 0;
|
|
@@ -103,7 +103,7 @@ No matching component was found for:
|
|
|
103
103
|
justify-content: center;
|
|
104
104
|
pointer-events: visible;
|
|
105
105
|
}
|
|
106
|
-
`}),(0,
|
|
106
|
+
`}),(0,Fa.jsx)("video",{poster:r,ref:e,src:l,style:{width:"100%",objectFit:"contain"}})]})}function Lc({media:e,mediaControlsDeps:t,children:i,videoComponent:n=Im,captions:r}){let a=Ce(),l=za(),c=a&&a.placeholderCanvas&&a.placeholderCanvas.id||void 0,p=Qn({},!1,{canvasId:c}),[{element:m,currentTime:h,progress:y},S,w]=ao({duration:e.duration});return Ft("overlay","video-element",n,{element:m,media:e,playPause:w.playPause,poster:p?.id,canvas:a,startTime:l?l.startTime:null,captions:r},[p]),Ft("portal","custom-controls",La,{state:S,actions:w,currentTime:h,progress:y,element:m,children:i},[h,S,e,...t||[]]),null}var zc=T(B(),1);function Tm({as:e}){let{strategy:t}=pt(),{renderMediaControls:i,mediaControlsDeps:n}=ni();return t.type!=="media"||t.media.type!=="Video"?null:(0,zc.jsxs)(Lc,{captions:t.captions,media:t.media,mediaControlsDeps:n,videoComponent:e,children:[(0,zc.jsx)(ho,{}),i?i(t):null]},t.media.url)}var qw=T(H(),1),Na=T(B(),1);function YI({element:e,media:t,playPause:i}){let n=(0,qw.useRef)(null);return t.youTubeId?(0,Na.jsxs)("div",{className:"video-container",part:"video-container",onClick:i,children:[(0,Na.jsx)("style",{children:`
|
|
107
107
|
.video-container {
|
|
108
108
|
position: absolute;
|
|
109
109
|
top: 0;
|
|
@@ -121,7 +121,7 @@ No matching component was found for:
|
|
|
121
121
|
width: 100%;
|
|
122
122
|
object-fit: contain;
|
|
123
123
|
}
|
|
124
|
-
`}),(0,Fa.jsx)("iframe",{className:"video-yt",ref:n,src:`https://www.youtube.com/embed/${t.youTubeId}?enablejsapi=1&origin=${window.location.host}`,referrerPolicy:"no-referrer",sandbox:"allow-scripts allow-same-origin allow-presentation"})]}):null}function $w({media:e,mediaControlsDeps:t,children:i}){let[{element:n,currentTime:r,progress:a},l,c]=ao({duration:e.duration});return Ft("overlay","video-element",YI,{element:n,media:e,playPause:c.playPause}),null}var Fc=R(B(),1);function _m(){let{strategy:e}=pt(),{renderMediaControls:t,mediaControlsDeps:i}=ni();return e.type!=="media"||e.media.type!=="VideoYouTube"?null:(0,Fc.jsxs)($w,{media:e.media,mediaControlsDeps:i,children:[(0,Fc.jsx)(ho,{}),t?t(e):null]})}var gi=R(B(),1);function fo({x:e,y:t,onChoiceChange:i,registerActions:n,defaultChoices:r,isStatic:a,renderViewerControls:l,renderMediaControls:c,renderComplexTimelineControls:p,complexTimelineControlsDeps:m,viewControlsDeps:h,mediaControlsDeps:y,strategies:S,throwOnUnknown:w,backgroundStyle:v,alwaysShowBackground:x,keepCanvasScale:A=!1,enableSizes:C=!1,enableYouTube:I=!0,onClickPaintingAnnotation:E,components:L={},children:z}){return(0,gi.jsxs)(cm,{throwOnUnknown:w,onChoiceChange:i,registerActions:n,strategies:S,defaultChoices:r,mediaControlsDeps:y,renderMediaControls:c,renderViewerControls:l,renderComplexTimelineControls:p,complexTimelineControlsDeps:m,viewControlsDeps:h,children:[(0,gi.jsxs)(dm,{keepCanvasScale:A,x:e,y:t,children:[(0,gi.jsx)(hm,{alwaysShowBackground:x,backgroundStyle:v}),(0,gi.jsx)(ym,{}),(0,gi.jsx)(vm,{}),(0,gi.jsx)(Sm,{isStatic:a,enableSizes:C,onClickPaintingAnnotation:E}),(0,gi.jsx)(Cm,{}),(0,gi.jsx)(bm,{}),(0,gi.jsx)(Am,{as:L.Audio}),(0,gi.jsx)(Tm,{as:L.Video}),I?(0,gi.jsx)(_m,{}):null,z]}),(0,gi.jsx)(Im,{})]})}var Mm=R(B(),1);function Gw(e){let t=Ce();return!t||!t.placeholderCanvas?null:(0,Mm.jsx)(Vi,{canvas:t.placeholderCanvas.id,children:(0,Mm.jsx)(fo,{renderViewerControls:e.renderViewerControls})})}var ri=R(B(),1),XI=(0,Na.forwardRef)(function(t,i){let n=vt(),r=eo(),a=ha(),{ViewerControls:l,MediaControls:c,ComplexTimelineControls:p}=t.components||{};if((0,Na.useImperativeHandle)(i,()=>a,[a]),!n)return(0,ri.jsx)("div",{});let m=0;return(0,ri.jsxs)(ri.Fragment,{children:[t.header,(0,ri.jsx)(Bt.Viewer,{height:t.height,mode:t.mode,renderPreset:t.renderPreset,runtimeOptions:t.runtimeOptions,children:r.map((h,y)=>{let S=m;return m+=h.width+(t.spacing||0),(0,ri.jsx)(Vi,{canvas:h.id,children:(0,ri.jsx)(Bt.RenderCanvas,{strategies:["3d-model","media","images","empty","textual-content","complex-timeline"],renderViewerControls:y===0&&l?()=>(0,ri.jsx)(l,{}):void 0,renderMediaControls:y===0&&c?()=>(0,ri.jsx)(c,{}):void 0,renderComplexTimelineControls:y===0&&p?()=>(0,ri.jsx)(p,{}):void 0,x:S,...t.canvasProps||{},children:t.annotations},h.id)},h.id)})},t.reuseAtlas?"":a.currentSequenceIndex),t.children]})}),Bt=(0,Na.forwardRef)(function({children:t,height:i,annotations:n,canvasProps:r,spacing:a,header:l,components:c,mode:p,reuseAtlas:m,renderPreset:h,runtimeOptions:y,...S},w){let v=Zr();return(0,ri.jsx)(Kr,{vault:v,children:(0,ri.jsx)(Lf,{...S,children:(0,ri.jsx)(XI,{ref:w,height:i,components:c,spacing:a,canvasProps:r,annotations:n,header:l,mode:p,reuseAtlas:m,renderPreset:h,runtimeOptions:y,children:t})})})});Bt.RenderImage=xr;Bt.RenderCanvas=fo;Bt.RenderAnnotationPage=Sa;Bt.RenderAnnotation=yc;Bt.Viewer=fc;Bt.CanvasBackground=Cc;Bt.Audio=kc;Bt.Video=Lc;Bt.Model=_c;Bt.AudioHTML=Pm;Bt.VideoHTML=Rm;Bt.ModelHTML=wm;Bt.PlaceholderCanvas=Gw;var Nc=R(q(),1),Ba=R(B(),1),KI=(0,Nc.forwardRef)(function({canvasId:t},i){let n=Ou(),r=Pa(t||n?.id),a=_e();return(0,Nc.useImperativeHandle)(i,()=>r,[t,n]),!n||r.enabledPageIds.length===0?null:(0,Ba.jsx)(Ba.Fragment,{children:r.enabledPageIds.map(l=>(0,Ba.jsx)(Bt.RenderAnnotationPage,{page:a.get(l)},l))})});var Xw=R(q(),1);var Yw=R(q(),1);var Pt=R(B(),1);function Da({metadata:e=[],config:t,labelWidth:i=16,showEmptyMessage:n=!0,allowHtml:r,emptyFallback:a,classes:l={},emptyMessage:c="No metadata available",emptyValueFallback:p="No value",emptyLabelFallback:m="",separator:h,tableFooter:y,tableHeader:S}){let w=(0,Yw.useMemo)(()=>{let x=(t||[]).reduce((C,I)=>[...C,...I.keys],[]),A={};for(let C of e){let I=C&&C.label?Object.values(C.label):[];for(let E of I)if(E&&E.length&&(x.indexOf(`metadata.${E[0]}`)!==-1||x.length===0)&&C){let L=`metadata.${E[0]}`;A[L]=A[L]?A[L]:[],A[L].push(C);break}}return A},[t,e]);return Object.keys(w).length===0&&n?(0,Pt.jsx)(Pt.Fragment,{children:a})||(0,Pt.jsx)("div",{className:l.empty,children:c}):t&&t.length?(0,Pt.jsxs)("table",{className:l.container,children:[S,(0,Pt.jsx)("tbody",{children:t.map((x,A)=>{let C=[];for(let I of x.keys)for(let E of w[I]||[])C.push((0,Pt.jsx)(Ii,{enableDangerouslySetInnerHTML:r,defaultText:p,separator:h,children:E.value},A+"__"+I));return C.length===0?null:(0,Pt.jsxs)("tr",{className:l.row,children:[(0,Pt.jsx)("td",{className:l.label,style:i?{minWidth:i}:{},children:(0,Pt.jsx)(Ii,{enableDangerouslySetInnerHTML:r,separator:h,defaultText:m,children:x.label})}),(0,Pt.jsx)("td",{className:l.value,children:C})]},A)})}),y]}):(0,Pt.jsxs)("table",{className:l.container,children:[S,(0,Pt.jsx)("tbody",{children:e&&e.length?e.map((x,A)=>x?(0,Pt.jsxs)("tr",{className:l.row,children:[(0,Pt.jsx)("td",{className:l.label,style:i?{minWidth:i}:{},children:(0,Pt.jsx)(Ii,{enableDangerouslySetInnerHTML:r,defaultText:p,separator:h,children:x.label})}),(0,Pt.jsx)("td",{className:l.value,children:(0,Pt.jsx)(Ii,{enableDangerouslySetInnerHTML:r,defaultText:p,separator:h,children:x.value})})]},A):null):null}),y]})}var Kw=R(B(),1);function ZI(e){let t=vt(),i=Ce(),n=la(),r=(0,Xw.useMemo)(()=>{let a=t?.metadata||[],l=i?.metadata||[],c=n?.metadata||[];return[...a,...l,...c]},[t,i,n]);return(0,Kw.jsx)(Da,{metadata:r,...e})}var Dc=R(q(),1);var Zw=R(q(),1);function Bc(e,t={},i=[]){return(0,Zw.useMemo)(()=>{if(!e)return null;let n=t.quality;e&&e.extraQualities&&t.quality&&(e.extraQualities.includes(t.quality)||(n="default"));let r=nu(e);return iu({identifier:r.identifier,server:r.server,scheme:r.scheme,type:"image",size:{max:!t.size?.width&&!t.size?.height,confined:!1,upscaled:!1,...t.size||{}},format:t.format||"jpg",region:t.region||{full:!0},rotation:t?.rotation?Number.isInteger(t.rotation)?{angle:t.rotation}:t.rotation:{angle:0},quality:n||"default",prefix:r.prefix,originalPath:r.originalPath})},[...i])}var ja=R(B(),1);function JI(e){let t=typeof e.src=="string"?e.src:e.src.id,i=ka(),[n,r]=(0,Dc.useState)(!1),a;if(t){let c=i.loadServiceSync({id:t});c&&(a=c)}!a&&!n&&i.loadService({id:t}).then(()=>{r(!0)});let l=Bc(a,{size:e.size,selector:e.region,rotation:e.rotation,format:e.format,region:e.region,quality:e.quality},[n,e.src,e.size,e.region,e.rotation,e.format,e.region,e.quality]);return(0,Dc.useEffect)(()=>()=>{r(!1)},[t]),l?(0,ja.jsx)("img",{src:l,alt:e.alt,className:e.className,style:e.style}):(0,ja.jsx)(Jw,{...e,fetchImageService:!1})}function Jw(e){if(e.fetchImageService)return(0,ja.jsx)(JI,{...e});let t=typeof e.src=="string"?{id:e.src,profile:"level0"}:e.src,i=Bc(t,{size:e.size,selector:e.region,rotation:e.rotation,format:e.format,region:e.region,quality:e.quality},[e.src,e.size,e.region,e.rotation,e.format,e.region,e.quality]);return i?(0,ja.jsx)("img",{src:i,alt:e.alt,className:e.className,style:e.style}):null}var e1=R(B(),1);function eR(e){let t=vt();return(0,e1.jsx)(Da,{metadata:t?.metadata||[],...e})}var jc=R(q(),1);var km=R(i1(),1);var yi=R(B(),1),{LazyLoadComponent:tR}=km||km.default;function Om(e){let{size:t,visible:i,classes:n,canvasId:r,figure:a}=e,l=t?.width||128,c=t?.height||t?.width||128,p=(0,yi.jsx)(iR,{...e}),m=(0,yi.jsx)(tR,{threshold:300,style:{height:c,width:l},visibleByDefault:i,children:r?(0,yi.jsx)(Vi,{canvas:r,children:p}):p});return a?(0,yi.jsx)("figure",{className:n?.figure,children:m}):m}function iR({fallback:e,size:t,classes:i,showLabel:n,alt:r,dereference:a=!1}){let l=Ce(),c=t?.width||128,p=t?.height||t?.width||128,m=r||Zf(l?.label)||"",h=Qn({width:c,height:p,allowUnsafe:!0},a);return!h||h.type!=="fixed"?(0,yi.jsx)(yi.Fragment,{children:e}):(0,yi.jsxs)(yi.Fragment,{children:[(0,yi.jsx)("div",{className:i?.imageWrapper,children:(0,yi.jsx)("img",{className:i?.img,src:h.id,alt:m})}),n?(0,yi.jsx)(Ii,{as:"figcaption",className:i?.label,children:l?.label}):null]})}var cs=R(B(),1);function nR({scrollBehaviour:e,dereference:t,flat:i,size:n,classes:r={},showLabel:a,figure:l,fallback:c}){let p=(0,jc.useRef)(null),{items:m,sequence:h,currentSequenceIndex:y,setSequenceIndex:S}=ha(),w={row:r.selected?.row||r.row,item:r.selected?.item||r.item,figure:r.selected?.figure||r.figure,img:r.selected?.img||r.img,label:r.selected?.label||r.label,imageWrapper:r.selected?.imageWrapper||r.imageWrapper};(0,jc.useLayoutEffect)(()=>{if(!p.current)return;let x=p.current.querySelector("[data-selected=true]");x&&x.scrollIntoView({behavior:e||"instant",block:"nearest",inline:"center"})},[y]);let v=[];for(let x of h){let A=[],C=h[y]===x;for(let I of x){let E=m[I];A.push((0,cs.jsx)("div",{className:C?w.item:r.item,children:(0,cs.jsx)(Om,{classes:C?w:r,canvasId:E.id,size:n,dereference:t,showLabel:a,figure:l,placeholder:(0,cs.jsx)("div",{style:{height:128,width:128}}),fallback:c})},I))}if(i){v.push(A);continue}v.push((0,cs.jsx)("div",{onClick:I=>{S(h.indexOf(x))},"data-selected":C,className:C?w.row:r.row,children:A},x.join("-")))}return(0,cs.jsx)("div",{ref:p,className:r.container,children:v})}var oi=R(B(),1),rR={draw:!0,polygon:!0,line:!0,lineBox:!0,square:!0,triangle:!0,hexagon:!0,circle:!0,delete:!0};function oR({helper:e,showShapes:t,state:i,enabled:n=rR,classNames:r={},icons:a={}}){return(0,oi.jsxs)(oi.Fragment,{children:[t?(0,oi.jsxs)(oi.Fragment,{children:[n.draw&&(0,oi.jsx)("button",{className:r.button,onClick:()=>{e.stamps.clear(),e.draw.enable()},"data-active":!i.lineMode&&!i.selectedStamp&&t&&i.drawMode,children:a.DrawIcon||"Draw"}),n.polygon&&(0,oi.jsx)("button",{className:r.button,"data-active":!i.lineMode&&!i.selectedStamp&&t&&!i.drawMode,onClick:()=>{e.stamps.clear(),e.draw.disable(),e.modes.disableLineBoxMode(),e.modes.disableLineMode()},children:a.PolygonIcon||"Polygon"}),n.line&&(0,oi.jsx)("button",{className:r.button,"data-active":i.lineMode&&!i.lineBoxMode,onClick:()=>{e.modes.enableLineMode()},children:a.LineIcon||"Line"}),n.lineBox&&(0,oi.jsx)("button",{className:r.button,"data-active":i.lineBoxMode,onClick:()=>{e.modes.enableLineBoxMode()},children:a.LineBoxIcon||"LineBox"}),n.square&&(0,oi.jsx)("button",{className:r.button,"data-active":i.selectedStamp?.id==="square",onClick:()=>{e.stamps.square()},children:a.SquareIcon||"Square"}),n.triangle&&(0,oi.jsx)("button",{className:r.button,"data-active":i.selectedStamp?.id==="triangle",onClick:()=>{e.stamps.triangle()},children:a.TriangleIcon||"Triangle"}),n.hexagon&&(0,oi.jsx)("button",{className:r.button,"data-active":i.selectedStamp?.id==="hexagon",onClick:()=>{e.stamps.hexagon()},children:a.HexagonIcon||"Hexagon"})]}):null,i.showBoundingBox&&n.delete&&(0,oi.jsx)("button",{className:r.button,onClick:()=>e.key.down("Backspace"),children:a.DeleteForeverIcon||"Delete"})]})}var Ut=R(q(),1);var n1=R(B(),1),Vc=(0,Ut.createContext)(Vn());Vc.displayName="SelectorHelper";function sR({children:e}){return(0,n1.jsx)(Vc.Provider,{value:(0,Ut.useMemo)(()=>Vn(),[]),children:e})}function aR(){return(0,Ut.useContext)(Vc)}function Lm(e){let t=zm(),[i,n]=(0,Ut.useState)(!1);(0,Ut.useEffect)(()=>t.withSelector(e).on("highlight",()=>{n(!0)}),[t,e]),(0,Ut.useEffect)(()=>t.withSelector(e).on("clear-highlight",()=>{n(!1)}),[t,e]);let r=(0,Ut.useCallback)(l=>{t.emit("click",{selectorId:e,event:l})},[e,t]),a=(0,Ut.useCallback)(l=>{t.emit("hover",{selectorId:e,event:l})},[e,t]);return{controller:t,onClick:r,onHover:a,isHighlighted:i}}function zm(){let e=(0,Ut.useContext)(Vc);return(0,Ut.useMemo)(()=>({withSelector(t){return{on(i,n){let r=a=>{a&&a.selectorId===t&&n(a)};return e.on(i,r),()=>{e.off(i,r)}},emit(i,n){e.emit(i,{...n,selectorId:t})}}},on(t,i){return e.on(t,i),()=>{e.off(t,i)}},emit(t,i){e.emit(t,i)}}),[e])}function lR(){let e=zm();return(0,Ut.useMemo)(()=>({withSelector(t){return{highlight(){e.emit("highlight",{selectorId:t})},clearHighlight(){e.emit("clear-highlight",{selectorId:t})},zoomTo(){e.emit("zoom-to",{selectorId:t})},addEventListener(i,n){return e.emit("event-listener",{selectorId:t,name:i,callback:n}),()=>{e.emit("remove-event-listener",{selectorId:t,name:i,callback:n})}},getImagePreview(){return new Promise((i,n)=>{e.emit("image-preview-request",{selectorId:t,resolve:i,reject:n})})},on(i,n){return e.withSelector(t).on(i,n)}}},highlight(t){e.emit("highlight",{selectorId:t})},clearHighlight(t){e.emit("clear-highlight",{selectorId:t})},zoomTo(t){e.emit("zoom-to",{selectorId:t})},addEventListener(t,i,n){return e.emit("event-listener",{selectorId:t,name:i,callback:n}),()=>{e.emit("remove-event-listener",{selectorId:t,name:i,callback:n})}},getImagePreview(t){return new Promise((i,n)=>{e.emit("image-preview-request",{selectorId:t,resolve:i,reject:n})})},on(t,i){return e.on(t,i)}}),[e])}var ds=R(q(),1),r1=R(B(),1);function Fm(){return{default:{backgroundColor:"rgba(0,0,0,0)",borderWidth:"2px",borderColor:"rgba(252,0,98, .5)"},highlighted:{backgroundColor:"rgba(75, 103, 225, 0.4)",borderWidth:"1px",borderColor:"rgba(75,103,225,0.99)"},hidden:{borderWidth:"0px",borderColor:"rgba(0,0,0,0)",backgroundColor:"rgba(0,0,0,0)",hidden:!0}}}var Nm=(0,ds.createContext)(Fm());Nm.displayName="AnnotationStyle";function Bm(){return(0,ds.useContext)(Nm)}function uR({theme:e,children:t}){let i=(0,ds.useMemo)(()=>e||Fm(),[e]);return(0,r1.jsx)(Nm.Provider,{value:i,children:t})}var si=R(q(),1);var hs=R(q(),1);function l1(e){let t=e.points.length,i=!1,n=[];if(t>1){e.iedges=[];let r=e.points[t-1];for(let a=0;a<t;a++){let l=r;if(r=e.points[a],r.length===6){let m=r[2],h=r[3],y=r[4],S=r[5];n.push([a,[r[0]+m,r[1]+h],[r[0]+y,r[1]+S]]),i=!0}let c=[r[0]-l[0],r[1]-l[1]],p=c[0]*c[0]+c[1]*c[1];p>0?e.iedges.push([c[0]/p,c[1]/p]):e.iedges.push([0,0])}}else t===1?e.iedges=[[0,0]]:e.iedges=null;e.isBezier=i,e.bezierLines=n}function cR(e,t){let i=1/0,n=null,r=-1,a=e.points.length;if(a<=1)return[null,i,r];let l=e.points[a-1];for(let c=0;c<a;c++){let p=l;l=e.points[c];let m=p[0]-t[0],h=p[1]-t[1],y=m*m+h*h;y<i&&(n=p,i=y,r=c===0?a-1:c-1)}return[n,i,r]}function qc(e){if(e.points.length>2){let t=Math.min(...e.points.map(a=>a[0])),i=Math.min(...e.points.map(a=>a[1])),n=Math.max(0,...e.points.map(a=>a[0])),r=Math.max(0,...e.points.map(a=>a[1]));e.boundingBox={x:t,y:i,width:n-t,height:r-i};return}e.boundingBox=null}function dR(e){return e[0]*e[0]+e[1]*e[1]}function o1(e,t){let i=1/0,n=null,r=-1,a=[],l=e.points.length;if(l<=1)return[null,i,a,r];if(e.iedges===null&&(l1(e),!e.iedges))return[null,i,a,r];let c=e.points[l-1];for(let p=0;p<l;p++){let m=c;c=e.points[p];let h=(t[0]-m[0])*e.iedges[p][0]+(t[1]-m[1])*e.iedges[p][1],y;h<=0?y=m:h<1?y=[(1-h)*m[0]+h*c[0],(1-h)*m[1]+h*c[1]]:y=c;let S=dR([y[0]-t[0],y[1]-t[1]]);S<i&&(n=y,i=S,a=[m,c],r=p===0?l-1:p-1)}return[n,i,a,r]}var u1={type:"move-bounding-box",label:"Move bounding box",isValid(e,t,i){let n=t.polygon.points.length,r=n===t.selectedPoints.length,a=t.polygon.boundingBox;if(n<1||!r||!a)return!1;let l=e[0],c=l[0],p=l[1];return c>=a.x&&c<=a.x+a.width&&p>=a.y&&p<=a.y+a.height},transition(e,t,i){let n=t.transitionOrigin,r=t.polygon.boundingBox,a=e[0],l=a[0]-n[0],c=a[1]-n[1];t.transitionPoints=t.polygon.points.map(p=>p.length===6?[p[0]+l,p[1]+c,p[2],p[3],p[4],p[5]]:[p[0]+l,p[1]+c]),r&&(t.transitionBoundingBox={x:r.x+l,y:r.y+c,width:r.width,height:r.height})},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{points:n}}},c1={type:"move-shape",label:"Move shape",isValid(e,t,i){return i.Shift?!1:t.slowState.pointerInsideShape&&(!t.isOpen||t.line===null)},transition(e,t,i){u1.transition(e,t,i)},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{points:n}}};function s1(e,t){return Math.abs(e-t)}function qi(e,t){let i=s1(e[0],t[0]),n=s1(e[1],t[1]);return Math.sqrt(Math.pow(i,2)+Math.pow(n,2))}function Dm(e,t){return[e[0]-t[0],e[1]-t[1]]}function hR(e,t){return e[0]*t[0]+e[1]*t[1]}function d1(e){return e[0]*e[0]+e[1]*e[1]}function Uc(e,t){return d1(Dm(e,t))}function h1(e,t){let i,n,r,a;var l=function(v,x,A,C,I){if(C<=A+1)return;let E=A,L=0,z=v*v;i=[x[A],x[C]],n=Dm(i[1],i[0]);let M=d1(n),Q,V,J,U,W;for(let ee=A+1;ee<C;ee++)Q=Dm(x[ee],i[0]),U=hR(Q,n),U<=0?W=Uc(x[ee],i[0]):M<=U?W=Uc(x[ee],i[1]):(J=U/M,V=[i[0][0]+J*n[0],i[0][1]+J*n[1]],W=Uc(x[ee],V)),!(W<=L)&&(E=ee,L=W);L>z&&(I[E]=1,l(v,x,A,E,I),l(v,x,E,C,I))};let c=e.length,p=[],m,h,y,S,w=t*t;for(r=[],a=[],r[0]=e[0],m=h=1,S=0;m<c;m++)Uc(e[m],e[S])<w||(r[h++]=e[m],S=m);for(S<c-1&&(r[h++]=e[c-1]),a[0]=a[h-1]=1,l(t,r,0,h-1,a),m=y=0;m<h;m++)a[m]&&(p[y++]=r[m]);return p}var pR={type:"move-point",label:"Move point",modifiers:{Shift:"Constrain to axis"},isValid(e,t,i){if(i.Alt)return!1;let n=i.proximity,[r,a]=e[0],l=t.polygon.points,c=t.selectedPoints;for(let p=0;p<l.length;p++){let m=l[p],h=m[0]-r,y=m[1]-a;if(h*h+y*y<n*n)return!0}return!1},start(e,t,i){if(t.selectedPoints.length<2){let[n,r,a]=cR(t.polygon,e[0]);return{selectedPoints:[a]}}if(t.slowState.closestPoint&&!t.selectedPoints.includes(t.slowState.closestPoint))return{selectedPoints:[t.slowState.closestPoint]}},transition(e,t,i){let n=t.transitionOrigin,[r,a]=e[0],l=t.polygon.points,c=t.selectedPoints;if(t.slowState.closestPoint){let y=t.slowState.closestPoint;c.indexOf(y)===-1&&(c=[y])}let p=[],m=r-n[0],h=a-n[1];i.Shift&&(Math.abs(m)>Math.abs(h)?h=0:m=0);for(let y=0;y<l.length;y++){let S=c.indexOf(y)!==-1,w=l[y];S?w.length===6?p.push([w[0]+m,w[1]+h,w[2],w[3],w[4],w[5]]):p.push([w[0]+m,w[1]+h]):p.push(w)}t.transitionPoints=p},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{points:n}}},a1=10,fR={type:"select-point",label:"Select point",trigger:{type:"click"},modifiers:{Shift:"Add to selection"},isValid(e,t,i){let n=-1;if(t.selectedPoints.length===1){let c=t.selectedPoints[0];c===0&&(n=t.polygon.points.length-1),c===t.polygon.points.length-1&&(n=0)}let[r,a]=e[0],l=t.polygon.points;for(let c=0;c<l.length;c++){let p=l[c],m=p[0]-r,h=p[1]-a;if(m*m+h*h<a1*a1)return n!==c}return!1},commit(e,t,i){let n=i.Shift?[...t.selectedPoints]:[],[r,a]=e[0],l=t.polygon.points.map((c,p)=>{let m=c[0]-r,h=c[1]-a;return[m*m+h*h,p]}).sort((c,p)=>c[0]-p[0])[0];if(t.line=null,!n.includes(l[1]))n.push(l[1]);else if(i.Shift)return{selectedPoints:n.filter(c=>c!==l[1])};return{selectedPoints:n}}},p1={type:"split-line",label:"Split line",isValid(e,t,i){return i.Meta||t.slowState.lineMode?!1:!!(t.closestLinePoint&&t.closestLineDistance<i.proximity)},transition(e,t,i){let n=t.transitionOrigin,[r,a]=e[0],l=t.polygon.points,c=[],p=r-n[0],m=a-n[1];for(let h=0;h<l.length;h++)if(c.push(l[h]),t.closestLineIndex===h){let y=t.closestLinePoint;c.push([y[0]+p,y[1]+m])}t.transitionPoints=c},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{selectedPoints:[t.closestLineIndex+1],points:n}}},mR={type:"add-open-point",label:"Add point",trigger:{type:"click"},isValid(e,t,i){if(!t.isOpen)return!1;if(t.polygon.points.length===0)return!0;if(t.selectedPoints.length!==1||t.polygon.points.length>=2&&t.slowState.lineMode)return!1;let n=t.selectedPoints[0];return n===0||n===t.polygon.points.length-1},commit(e,t,i){let n=t.line?t.line[1]:e[0],r=t.polygon.points;return r.length===0?{selectedPoints:[0],points:[e[0]]}:(i.Shift,t.selectedPoints[0]===0?{selectedPoints:t.slowState.lineMode?[]:[0],points:[n,...r]}:(t.line=null,{selectedPoints:t.slowState.lineMode?[]:[r.length],points:[...r,n]}))}},f1={type:"close-shape",label:"Close shape",trigger:{type:"click"},isValid(e,t,i){if(!t.isOpen||t.selectedPoints.length!==1||t.polygon.points.length<2||i.Meta)return!1;let n=t.selectedPoints[0];if(n===0){let r=t.polygon.points[t.polygon.points.length-1];return qi(e[0],r)<i.proximity}if(n===t.polygon.points.length-1){let r=t.polygon.points[0];return qi(e[0],r)<i.proximity}return!1},commit(e,t,i){let n=t.selectedPoints[0];if(t.line=null,n===0)return{selectedPoints:[],points:t.polygon.points.slice(0).reverse(),isOpen:!1};if(n===t.polygon.points.length-1)return{selectedPoints:[],isOpen:!1}}},gR={type:"deselect-draw",label:"Deselect draw",trigger:{type:"key",key:"Escape"},isValid(e,t,i){return!0},commit(e,t,i){return{selectedPoints:[]}}},yR={type:"select-shape",label:"Select shape",trigger:{type:"click"},isValid(e,t,i){return c1.isValid(e,t,i)},commit(e,t,i){return{selectedPoints:t.polygon.points.map((n,r)=>r)}}},vR={type:"deselect-bounding-box",label:"Deselect bounding box",trigger:{type:"click"},isValid(e,t,i){return!t.isOpen&&t.selectedPoints.length>2&&t.selectedPoints.length===t.polygon.points.length},commit(e,t,i){return{selectedPoints:[]}}},xR={type:"bounding-box-corners",label:"Drag to resize",modifiers:{Shift:"Maintain aspect ratio",Alt:"Scale from center",Meta:"Rotate"},isValid(e,t,i){if(t.transitionDirection=null,t.transitionRotate=!1,t.isOpen||t.selectedPoints.length!==t.polygon.points.length||!t.polygon.boundingBox)return!1;let n=i.proximity*.5,r=i.proximity*3,a=e[0],l=t.polygon.boundingBox,c=l.x+n,p=l.x+l.width-n*2,m=l.y+n,h=l.y+l.height-n*2;if(a[0]>c&&a[0]<p&&a[1]>m&&a[1]<h)return!1;let y=[l.x+l.width,l.y+l.height],S=[l.x,l.y],w=[l.x+l.width,l.y],v=[l.x,l.y+l.height],x=["ne","nw","se","sw"],A=[qi(e[0],w),qi(e[0],S),qi(e[0],y),qi(e[0],v)],C=Math.min(...A);if(A[0]<r||A[1]<r||A[2]<r||A[3]<r){(C>i.proximity||i.Meta)&&(t.transitionRotate=!0);let I=A.indexOf(Math.min(...A));return t.transitionDirection=I!==-1?x[I]:null,!0}return!1},start(e,t,i){let n=e[0],r=t.polygon.boundingBox,a=[r.x+r.width,r.y+r.height],l=[r.x,r.y],c=[r.x+r.width,r.y],p=[r.x,r.y+r.height],m=["ne","nw","se","sw"],h=[qi(e[0],c),qi(e[0],l),qi(e[0],a),qi(e[0],p)],y=Math.min(...h),S=h.indexOf(y);t.transitionDirection=S!==-1?m[S]:null,y>i.proximity&&(t.transitionRotate=!0)},transition(e,t,i){let n=t.polygon.boundingBox,r=[n.x,n.y],a=t.transitionOrigin||e[0],[l,c]=e[0];if(i.Meta||t.transitionRotate){r=[n.x+n.width/2,n.y+n.height/2];let v=Math.atan2(a[1]-r[1],a[0]-r[0]),x=Math.atan2(c-r[1],l-r[0]),A=i.Shift,C=Math.PI/(i.Alt?4:12),I=x-v;A&&(I=Math.round(I/C)*C);let E=Math.cos(I),L=Math.sin(I),z=[];for(let M of t.polygon.points){let Q=M[0]-r[0],V=M[1]-r[1],J=Q*E-V*L,U=Q*L+V*E,W=J+r[0],ee=U+r[1];if(M.length===6){z.push([W,ee,M[2],M[3],M[4],M[5]]);continue}z.push([W,ee])}t.transitionPoints=z,qc({points:z,iedges:null,boundingBox:null,isBezier:!1,bezierLines:[]}),t.transitionBoundingBox=t.polygon.boundingBox?{...t.polygon.boundingBox,rotation:I}:null;return}let p=0,m=0;switch(t.transitionDirection){case"se":{r=[n.x,n.y],p=l-a[0],m=c-a[1];break}case"sw":{r=[n.x+n.width,n.y],p=a[0]-l,m=c-a[1];break}case"ne":{r=[n.x,n.y+n.height],p=l-a[0],m=a[1]-c;break}case"nw":{r=[n.x+n.width,n.y+n.height],p=a[0]-l,m=a[1]-c;break}}if(i.Alt&&(r=[n.x+n.width/2,n.y+n.height/2],p*=2,m*=2),i.Shift){let v=n.width/n.height;Math.abs(n.width/p)>Math.abs(n.height/m)?m=p/v:p=m*v}let h=(n.width+p)/n.width,y=(n.height+m)/n.height,S=[];for(let v of t.polygon.points){let x=v[0]-r[0],A=v[1]-r[1],C=x*h,I=A*y,E=C+r[0],L=I+r[1];if(v.length===6){S.push([E,L,v[2],v[3],v[4],v[5]]);continue}S.push([E,L])}t.transitionPoints=S;let w={points:S,iedges:null,boundingBox:null,bezierLines:[],isBezier:!1};qc(w),t.transitionBoundingBox=w.boundingBox},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,t.transitionRotate=!1,{points:n}}},SR={type:"cut-line",label:"Add new point",trigger:{type:"click"},modifiers:{Shift:"Cut line"},isValid(e,t,i){return p1.isValid(e,t,i)},commit(e,t,i){if(i.Shift&&!t.isOpen){let a=t.polygon.points,l=[],c=[],p=!1;for(let m=0;m<a.length;m++)p?c.push(a[m]):l.push(a[m]),t.closestLineIndex===m&&(p=!0);return{isOpen:!0,points:[...c,...l]}}let n=t.polygon.points,r=[];for(let a=0;a<n.length;a++)if(r.push(n[a]),t.closestLineIndex===a){let l=t.closestLinePoint;r.push(l)}return{points:r}}},wR={type:"select-multiple-points",label:"Drag to select multiple points",isValid(e,t,i){return t.slowState.lineMode&&t.polygon.points.length>=2?!0:!t.line},transition(e,t,i){if(!t.transitionOrigin)return;let n=t.transitionOrigin[0],r=t.transitionOrigin[1],a=e[0][0],l=e[0][1],c=Math.min(n,a),p=Math.min(r,l),m=Math.abs(n-a),h=Math.abs(r-l);t.selectionBox={x:c,y:p,width:m,height:h}},commit(e,t,i){if(t.selectionBox){let n=[];i.Shift&&n.push(...t.selectedPoints);for(let r=0;r<t.polygon.points.length;r++){let a=t.polygon.points[r];a[0]>=t.selectionBox.x&&a[0]<=t.selectionBox.x+t.selectionBox.width&&a[1]>=t.selectionBox.y&&a[1]<=t.selectionBox.y+t.selectionBox.height&&n.push(r)}return{selectedPoints:n}}}},bR={type:"deselect-points",label:"Deselect points",trigger:{type:"click"},isValid(e,t,i){return t.selectedPoints.length>0},commit(e,t,i){return{selectedPoints:[]}}},Qc=4,CR={type:"nudge-right",label:"Nudge right",trigger:{type:"key",key:"ArrowRight"},modifiers:{Shift:"Nudge right more"},isValid(e,t,i){return t.selectedPoints.length>0},commit(e,t,i){let n=i.proximity*.3,r=t.polygon.points,a=t.selectedPoints;return{points:r.map((l,c)=>a.includes(c)?[l[0]+(i.Shift?Qc*n:1),l[1]]:l)}}},PR={type:"nudge-left",label:"Nudge left",trigger:{type:"key",key:"ArrowLeft"},modifiers:{Shift:"Nudge left more"},isValid(e,t,i){return t.selectedPoints.length>0},commit(e,t,i){let n=i.proximity*.3,r=t.polygon.points,a=t.selectedPoints;return{points:r.map((l,c)=>a.includes(c)?[Math.max(0,l[0]-(i.Shift?Qc*n:1)),l[1]]:l)}}},ER={type:"nudge-up",label:"Nudge up",trigger:{type:"key",key:"ArrowUp"},modifiers:{Shift:"Nudge up more"},isValid(e,t,i){return t.selectedPoints.length>0},commit(e,t,i){let n=i.proximity*.3,r=t.polygon.points,a=t.selectedPoints;return{points:r.map((l,c)=>{if(a.includes(c)){let p=l[0],m=Math.max(0,l[1]-(i.Shift?Qc*n:1));return l.length===6?[p,m,l[2],l[3],l[4],l[5]]:[p,m]}return l})}}},AR={type:"nudge-down",label:"Nudge down",trigger:{type:"key",key:"ArrowDown"},modifiers:{Shift:"Nudge down more"},isValid(e,t,i){return t.selectedPoints.length>0},commit(e,t,i){let n=i.proximity*.3,r=t.polygon.points,a=t.selectedPoints;return{points:r.map((l,c)=>{let p=l[0],m=Math.max(0,l[1]-(i.Shift?Qc*n:1));return a.includes(c)?l.length===6?[p,m,l[2],l[3],l[4],l[5]]:[p,m]:l})}}},IR={type:"delete-point",label:"Delete point",trigger:{type:"key",key:"Backspace"},isValid(e,t,i){return t.selectedPoints.length>0},commit(e,t,i){let n=t.polygon.points.filter((r,a)=>!t.selectedPoints.includes(a));return{isOpen:n.length<3,selectedPoints:[],points:n}}},RR={type:"draw-shape",label:"Draw shape",isValid(e,t,i){let n=i.Alt||t.slowState.drawMode;return!!(t.isOpen&&(t.line||t.polygon.points.length===0)&&n)},start(e,t,i){t.transitionDraw=[]},transition(e,t,i){t.transitionDraw.push(e[0])},commit(e,t,i){let n=h1(t.transitionDraw,t.scale*3);return t.transitionDraw=[],t.selectedPoints[0]===0?{isOpen:!1,points:[...n,...t.polygon.points.slice(0).reverse()]}:{isOpen:!1,points:[...t.polygon.points,...n]}}},TR={type:"stamp-shape",label:"Stamp shape",modifiers:{Shift:"Maintain aspect ratio"},isValid(e,t,i){return t.slowState.selectedStamp!==null},start(e,t,i){let n=e[0];if(n&&t.slowState.selectedStamp){let r=t.slowState.selectedStamp,a=n[0],l=n[1],c=[],p=Math.min(...r.points.map(x=>x[0])),m=Math.min(...r.points.map(x=>x[1])),h=Math.max(...r.points.map(x=>x[0]))-p,y=Math.max(...r.points.map(x=>x[1]))-m,S=h/32;y/32>S&&(S=y/32);let w=[],v=0;for(let x of r.points)w.push(v),c.push([a+(x[0]-p)/S,l+(x[1]-m)/S]),v++;return t.transitionPoints=c,{isOpen:!1,selectedPoints:w,points:c}}},transition(e,t,i){if(!t.transitionOrigin)return;let n=t.polygon.boundingBox,r=[n.x,n.y],a=t.transitionOrigin||e[0],[l,c]=e[0],p=t.transitionOrigin[0],m=t.transitionOrigin[1],h=e[0][0],y=e[0][1],S=h-p-32,w=y-m-32;if(i.Shift){let I=n.width/n.height;Math.abs(n.width/S)>Math.abs(n.height/w)?w=S/I:S=w*I}let v=(n.width+S)/n.width,x=(n.height+w)/n.height,A=[];for(let I of t.polygon.points){let E=I[0]-r[0],L=I[1]-r[1],z=E*v,M=L*x,Q=z+r[0],V=M+r[1];if(I.length===6){A.push([Q,V,I[2],I[3],I[4],I[5]]);continue}A.push([Q,V])}t.transitionPoints=A;let C={points:A,iedges:null,boundingBox:null,bezierLines:[],isBezier:!1};qc(C),t.transitionBoundingBox=C.boundingBox},commit(e,t,i){return{isOpen:!1,points:t.transitionPoints}}},_R={type:"close-shape-line",label:"Close shape line",trigger:{type:"click"},isValid(e,t,i){return!t.isOpen||t.polygon.points.length<3||!t.closestLinePoint||t.closestLineDistance>=i.proximity?!1:(t.closestLineIndex===0||(t.closestLineIndex,t.polygon.points.length-2),!0)},commit(e,t,i){return f1.commit(e,t,i)}},MR={type:"stamp-fixed-size-shape",label:"Stamp fixed size shape",trigger:{type:"click"},isValid(e,t,i){return t.slowState.selectedStamp!==null},commit(e,t,i){let n=e[0],r=t.slowState.selectedStamp;if(!n||!r)return;let a=n[0],l=n[1],c=[],p=Math.min(...r.points.map(x=>x[0])),m=Math.min(...r.points.map(x=>x[1])),h=Math.max(...r.points.map(x=>x[0]))-p,y=Math.max(...r.points.map(x=>x[1]))-m,S=4*i.proximity,w=h/S;y/S>w&&(w=y/S),a-=h/w/2,l-=y/w/2;let v=0;for(let x of r.points)c.push([a+(x[0]-p)/w,l+(x[1]-m)/w]),v++;return{isOpen:!1,points:c}}},kR={type:"move-line",label:"Move line",isValid(e,t,i){return t.slowState.lineMode?!!(t.closestLinePoint&&t.closestLineDistance<i.proximity):!1},transition(e,t){let i=t.transitionOrigin,n=t.polygon.boundingBox,r=e[0],a=r[0]-i[0],l=r[1]-i[1];t.transitionPoints=t.polygon.points.map(c=>c.length===6?[c[0]+a,c[1]+l,c[2],c[3],c[4],c[5]]:[c[0]+a,c[1]+l])},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{points:n}}},OR={type:"close-line-box",label:"Close Line Box",trigger:{type:"click"},isValid(e,t,i){return t.slowState.lineBoxMode===!0&&t.polygon.points.length===2&&t.lineBox!==null},commit(e,t,i){return t.lineBox?{isOpen:!1,points:t.lineBox}:{}}};function m1(e={}){let t=e.proximityThreshold||10,i=e.closestLinePointFill||{selected:"#fff",unselected:"rgba(255, 255, 255, .5)"},n=e.closestLinePointStroke||{selected:"#000",unselected:"rgba(0, 0, 0, .5)"};function r(v,x,A){v&&x.transitionBoundingBox&&A.transitioning&&(v.setAttribute("x",""+x.transitionBoundingBox.x),v.setAttribute("y",""+x.transitionBoundingBox.y),v.setAttribute("width",""+x.transitionBoundingBox.width),v.setAttribute("height",""+x.transitionBoundingBox.height))}function a(v,x,A){v&&x.polygon.boundingBox&&A.showBoundingBox&&(v.setAttribute("x",""+x.polygon.boundingBox.x),v.setAttribute("y",""+x.polygon.boundingBox.y),v.setAttribute("width",""+x.polygon.boundingBox.width),v.setAttribute("height",""+x.polygon.boundingBox.height))}function l(v,x,A){if(v&&x.polygon.boundingBox&&A.showBoundingBox){let C=x.transitionBoundingBox||x.polygon.boundingBox;C.rotation?(v.style.transformOrigin=`${C.x+C.width/2}px ${C.y+C.height/2}px`,v.style.transform=`rotate(${Math.round(100*C.rotation*(180/Math.PI))/100}deg)`):v.style.transform="",v.setAttribute("points",[[C.x,C.y],[C.x+C.width,C.y],[C.x+C.width,C.y+C.height],[C.x,C.y+C.height]].map(I=>I.join(",")).join(" "))}}function c(v,x,A){v&&x.transitionPoints&&A.transitioning&&v.setAttribute("points",x.transitionPoints.map(C=>C.join(",")).join(" "))}function p(v,x,A){v&&x.closestLinePoint&&A.hasClosestLine&&(v.setAttribute("cx",""+x.closestLinePoint[0]),v.setAttribute("cy",""+x.closestLinePoint[1]),v.setAttribute("fill",x.closestLineDistance<t?i.selected:i.unselected),v.setAttribute("stroke",x.closestLineDistance<t?n.selected:n.unselected))}function m(v,x,A){v&&x.closestLinePoint&&A.hasClosestLine&&v.setAttribute("transform",`translate(${x.closestLinePoint[0]}, ${x.closestLinePoint[1]})`)}function h(v,x,A){v&&x.selectionBox&&A.transitionIntentType==="select-multiple-points"&&(v.setAttribute("x",""+x.selectionBox.x),v.setAttribute("y",""+x.selectionBox.y),v.setAttribute("width",""+x.selectionBox.width),v.setAttribute("height",""+x.selectionBox.height))}function y(v,x,A){if(v&&x.pointer&&x.selectedPoints.length)if(A.actionIntentType==="close-shape"||A.actionIntentType==="close-shape-line"){let C=x.polygon.points[0],I=x.polygon.points[x.polygon.points.length-1];C&&I&&v.setAttribute("points",`${C.join(",")} ${I.join(",")}`)}else if(x.line)v.setAttribute("points",`${x.line[0].join(",")} ${x.line[1].join(",")}`);else{let C=x.polygon.points[x.selectedPoints[0]];C&&C.length&&v.setAttribute("points",`${x.pointer[0]},${x.pointer[1]} ${C.join(",")}`)}}function S(v,x,A,C=3){v&&x.transitionDraw.length&&v.setAttribute("points",h1(x.transitionDraw,C*3).map(I=>I.join(",")).join(" "))}function w(v,x){v&&x.lineBox&&v.setAttribute("points",x.lineBox.map(A=>A.join(",")).join(" "))}return{updateTransitionBoundingBox:r,updateClosestLinePointTransform:m,updateBoundingBoxPolygon:l,updateBoundingBox:a,updateTransitionShape:c,updateClosestLinePoint:p,updateSelectBox:h,updatePointLine:y,updateDrawPreview:S,updateLineBox:w}}var LR=typeof window<"u"?window.requestAnimationFrame:e=>setTimeout(e,16),zR=typeof window<"u"?window.cancelAnimationFrame:e=>clearTimeout(e),Vm=[TR,xR,pR,kR,p1,c1,u1,RR,wR],FR=Vm.length,jm=[OR,MR,f1,fR,_R,SR,mR,yR,vR,bR],Hc=[gR,CR,PR,ER,AR,IR],Va={};Vm.forEach(e=>{Va[e.type]=e});jm.forEach(e=>{Va[e.type]=e});Hc.forEach(e=>{Va[e.type]=e});var Wc=20;function g1(e,t){let i={shapeId:e?.id||null,noShape:e===null,transitioning:!1,actionIntentType:null,transitionIntentType:null,selectedPoints:[],hasClosestLine:!1,modifiers:{Alt:!1,Shift:!1,Meta:!1,proximity:Wc},showBoundingBox:!1,currentModifiers:{},validIntentKeys:{},pointerInsideShape:!1,closestPoint:null,transitionModifiers:null,selectedStamp:null,lineMode:!1,lineBoxMode:!1,drawMode:!1,bezierLines:[]},n={isOpen:e?e.open:!1,polygon:{points:e?.points||[],iedges:null,boundingBox:null,isBezier:null,bezierLines:[]},scale:1,selectedPoints:[],pointer:null,line:null,lineBox:null,transitionPoints:null,transitionOrigin:null,transitionBoundingBox:null,closestLinePoint:null,closestLineDistance:0,closestLineIndex:-1,transitionRotate:!1,transitionDirection:null,transitionBezierLine:null,selectionBox:null,slowState:i,transitionDraw:[]},r={startTime:0,time:0,shouldUpdate:!1,nextSlowState:null,renderFunc:()=>{},setStateFunc:()=>{},animationFrame:0,actionIntent:null,transitionIntent:null,undoStack:[],undoStackPointer:-1},a={isPressed:!1,isClicking:!1,lastPress:null,pressTimeout:0,noTransition:!1};function l(N){l1(N),N.isBezier&&c({bezierLines:N.bezierLines}),qc(N),r.shouldUpdate=!0}l(n.polygon);function c(N){let G=Object.keys(N);if(G.length===0)return;let de=r.nextSlowState||n.slowState,ye=!1;if(G.length===1&&G[0]==="validIntentKeys"&&de.validIntentKeys){let ge=Object.keys(de.validIntentKeys),Ve=Object.keys(N.validIntentKeys||{});if(ge.length===Ve.length){for(let ze of ge)de.validIntentKeys[ze]!==N.validIntentKeys[ze]&&(ye=!0);if(!ye)return}}if(!(G.length===1&&G.includes("hasClosestLine")&&N.hasClosestLine===de.hasClosestLine)){if(r.nextSlowState){r.nextSlowState={...r.nextSlowState,...N};return}r.nextSlowState={...n.slowState,...N}}}function p(N,G=!1){r.time+=N,m(),h(),C(),A(),x(),I(),L(),E(),r.renderFunc(n,n.slowState,N),!G&&(r.animationFrame=LR(p))}function m(){if(r.shouldUpdate&&(t({id:n.slowState.shapeId||void 0,open:n.isOpen,points:n.polygon.points}),r.shouldUpdate=!1),r.nextSlowState&&r.nextSlowState!==n.slowState){let N=Object.keys(n.slowState),G={},de=!1;for(let ye of N){let ge=n.slowState[ye],Ve=r.nextSlowState[ye];ge!==Ve?(de=!0,G[ye]=Ve):G[ye]=ge}de&&(n.slowState=G,r.nextSlowState=null,r.setStateFunc(n.slowState))}}function h(){n.slowState.showBoundingBox?(n.slowState.noShape||n.selectedPoints.length===0||n.selectedPoints.length!==n.polygon.points.length)&&c({showBoundingBox:!1}):!n.slowState.noShape&&n.polygon.points.length&&n.selectedPoints.length===n.polygon.points.length&&c({showBoundingBox:!0})}function y(N){n.selectedPoints=N.selectedPoints,c({selectedPoints:N.selectedPoints}),n.polygon.points=N.points,n.polygon.boundingBox=null,n.polygon.iedges=null,n.polygon.isBezier=null,l(n.polygon),c({closestPoint:null}),(N.isOpen===!0||N.isOpen===!1)&&(n.isOpen=N.isOpen,r.shouldUpdate=!0)}function S(){if(r.undoStackPointer===-1)return;r.undoStackPointer--;let N=r.undoStack[r.undoStackPointer];y(N)}function w(){if(r.undoStackPointer===r.undoStack.length-1)return;r.undoStackPointer++;let N=r.undoStack[r.undoStackPointer];y(N)}function v(N){r.undoStackPointer++,r.undoStack[r.undoStackPointer]=N,r.undoStack.length>15&&(r.undoStack.shift(),r.undoStackPointer--)}function x(){if(!n.pointer||n.slowState.noShape){c({pointerInsideShape:!1});return}let[N,G]=n.pointer,de=n.polygon.points,ye=n.polygon.boundingBox;if(!ye){c({pointerInsideShape:!1});return}if(N<ye.x||N>ye.x+ye.width||G<ye.y||G>ye.height+ye.y){c({pointerInsideShape:!1});return}let ge=!1;for(let Ve=0,ze=de.length-1;Ve<de.length;ze=Ve++)de[Ve][1]>G!=de[ze][1]>G&&N<(de[ze][0]-de[Ve][0])*(G-de[Ve][1])/(de[ze][1]-de[Ve][1])+de[Ve][0]&&(ge=!ge);c({pointerInsideShape:ge})}function A(){if(n.slowState.noShape||!n.pointer||n.slowState.transitioning||!n.polygon.points||n.polygon.points.length===0)return;let[N,G]=n.pointer,de=n.polygon.points.map((ye,ge)=>{let Ve=ye[0]-N,ze=ye[1]-G;return[Ve*Ve+ze*ze,ge]}).sort((ye,ge)=>ye[0]-ge[0]);de.length&&c({closestPoint:de[0][1]})}function C(){if(!n.pointer||n.slowState.transitioning)return;if(n.slowState.noShape){n.closestLineIndex=-1,n.closestLinePoint=null,n.closestLineDistance=0;return}let[N,G,de,ye]=o1(n.polygon,n.pointer),ge=pe()*pe();G<ge&&(!n.isOpen||n.slowState.lineMode||n.polygon.points.length-1!==ye)?(n.closestLinePoint=N,n.closestLineDistance=Math.sqrt(G),n.closestLineIndex=ye,c({hasClosestLine:!0})):(n.closestLinePoint=null,n.closestLineDistance=0,n.closestLineIndex=-1,c({hasClosestLine:!1}))}function I(){if(!n.pointer||n.slowState.transitioning||n.slowState.noShape)return;let N=!1;for(let ye=0;ye<FR;ye++){let ge=Vm[ye];if(ge.isValid(a.isPressed?[a.lastPress]:[n.pointer],n,z())){if(r.transitionIntent===ge){N=!0;break}c({transitionIntentType:ge.type}),r.transitionIntent=ge,N=!0;break}}N||r.transitionIntent&&(r.transitionIntent=null,c({transitionIntentType:null}));let G=!1;for(let ye=0;ye<jm.length;ye++){let ge=jm[ye];if(Q(ge)){if(r.actionIntent===ge){G=!0;break}c({actionIntentType:ge.type}),r.actionIntent=ge,G=!0;break}}G||r.actionIntent&&(r.actionIntent=null,c({actionIntentType:null}));let de={};for(let ye=0;ye<Hc.length;ye++){let ge=Hc[ye];ge.trigger.type==="key"&&Q(ge)&&(de[ge.trigger.key]=ge.label)}c({validIntentKeys:de})}function E(){let N=n.pointer;if(n.lineBox=null,!N||J()||n.polygon.points.length!==2)return;let[G,de]=N,[ye,ge]=n.polygon.points[0],[Ve,ze]=n.polygon.points[1],[Pe,ne,he,Oe]=o1(n.polygon,N);if(!Pe)return;let ot=G-Pe[0],Ri=de-Pe[1],Dt=[ye,ge],Wt=[Ve,ze],ps=[Wt[0]+ot,Wt[1]+Ri],Ti=[Dt[0]+ot,Dt[1]+Ri];n.lineBox=[Dt,Wt,ps,Ti]}function L(){let N=n.pointer;if(!N||!J()||n.slowState.noShape)return;let G=n.selectedPoints[0];if(n.line=[n.polygon.points[G],N],n.slowState.modifiers.Shift){let de=0;if(n.polygon.points.length>1){let ot=n.selectedPoints[0];ot===0?de=Math.atan2(n.polygon.points[1][1]-n.polygon.points[0][1],n.polygon.points[1][0]-n.polygon.points[0][0]):de=Math.atan2(n.polygon.points[ot-1][1]-n.polygon.points[ot][1],n.polygon.points[ot-1][0]-n.polygon.points[ot][0])}let ye=N[0]-n.polygon.points[G][0],ge=N[1]-n.polygon.points[G][1],Ve=Math.atan2(ge,ye),ze=Math.PI/4,Pe=Math.round((Ve-de)/ze)*ze+de,ne=qi(n.polygon.points[G],N),he=Math.cos(Pe)*ne+n.polygon.points[G][0],Oe=Math.sin(Pe)*ne+n.polygon.points[G][1];n.line[1]=[he,Oe]}}function z(){return n.slowState.modifiers}function M(N){let G=N.commit([a.lastPress],n,z());G&&(G.selectedPoints&&(n.selectedPoints=G.selectedPoints,c({selectedPoints:G.selectedPoints})),G.points&&(n.polygon.points=G.points,n.polygon.boundingBox=null,n.polygon.iedges=null,n.polygon.isBezier=null,n.transitionBoundingBox=null,l(n.polygon),c({closestPoint:null,selectedStamp:null})),(G.isOpen===!0||G.isOpen===!1)&&(n.isOpen=G.isOpen,r.shouldUpdate=!0),v({isOpen:n.isOpen,points:n.polygon.points,selectedPoints:n.selectedPoints})),c({transitionModifiers:null})}function Q(N){return N.isValid(n.pointer?[n.pointer]:[],n,z())}function V(N){N==="Delete"&&(N="Backspace");for(let G of Hc)if(!(G.trigger.type!=="key"||G.trigger.key!==N)&&Q(G))return M(G),!0}function J(){let N=n.polygon.points,G=n.pointer;if(!n.isOpen||!N.length||n.selectedPoints.length!==1||!G)return!1;let de=n.selectedPoints[0],ye=de===0,ge=de===N.length-1;return ye||ge}let U={reset(){c({modifiers:{Alt:!1,Shift:!1,Meta:!1,proximity:Wc}})},getForType(N){let G={};if(!N)return G;let de=Va[N];return!de||!de.modifiers?G:de.modifiers},set(N){N!=="Shift"&&N!=="Alt"&&N!=="Meta"||c({modifiers:{...r.nextSlowState?.modifiers||n.slowState.modifiers,[N]:!0}})},unset(N){N!=="Shift"&&N!=="Alt"&&N!=="Meta"||c({modifiers:{...r.nextSlowState?.modifiers||n.slowState.modifiers,[N]:!1}})}},W={set(N){c({selectedStamp:N})},clear(){c({selectedStamp:null})},square(){c({selectedStamp:{id:"square",open:!1,points:[[0,0],[0,100],[100,100],[100,0]]}})},triangle(){c({selectedStamp:{id:"triangle",open:!1,points:[[50,0],[0,100],[100,100]]}})},pentagon(){c({selectedStamp:{id:"pentagon",open:!1,points:[[0,0],[0,100],[100,100],[100,0],[50,-50]]}})},hexagon(){c({selectedStamp:{id:"hexagon",open:!1,points:[[0,0],[0,100],[50,150],[100,100],[100,0],[50,-50]]}})}},ee={down(N){return N=="Shift"||N=="Alt"||N=="Meta"?(U.set(N),!0):N==="Control"?(U.set("Meta"),!0):N==="z"&&n.slowState.modifiers.Meta?(n.slowState.modifiers.Shift?w():S(),!0):V(N)},up(N){if(N==="Control"){U.unset("Meta");return}N!=="Shift"&&N!=="Alt"&&N!=="Meta"||U.unset(N)}};function Me(N){n.scale=N,c({modifiers:{...r.nextSlowState?.modifiers||n.slowState.modifiers,proximity:N*Wc}})}function pe(){return Wc*n.scale}let Re={set:N=>{r.renderFunc=N},start:(N,G)=>{r.startTime=performance.now(),r.time=0,N&&(r.renderFunc=N),G&&(G(n.slowState),r.setStateFunc=G),p(0)},stop:()=>{r.animationFrame&&(zR(r.animationFrame),r.animationFrame=0)},step:(N=16)=>{p(N)}};function ke(N){let G=N[0];if(!(!G||!G[0]&&G[0]!==0||!G[1]&&G[1]!==0)&&!(Number.isNaN(G[0])||Number.isNaN(G[1]))){if(n.pointer=G||null,n.slowState.transitioning)r.transitionIntent&&r.transitionIntent.transition(N,n,z());else if(a.isPressed&&!a.noTransition&&(!a.isClicking||qi(a.lastPress,n.pointer)>10))if(clearTimeout(a.pressTimeout),a.isClicking=!1,r.transitionIntent){if(n.transitionOrigin=a.lastPress,c({transitioning:!0}),r.transitionIntent.start){let de=r.transitionIntent.start([a.lastPress],n,z());de&&(de.selectedPoints&&(n.selectedPoints=de.selectedPoints,c({selectedPoints:de.selectedPoints})),(de.isOpen===!0||de.isOpen===!1)&&(n.isOpen=de.isOpen,r.shouldUpdate=!0),de.points&&(n.polygon.points=de.points,n.polygon.boundingBox=null,n.polygon.iedges=null,l(n.polygon),c({closestPoint:null})))}c({transitionModifiers:r.transitionIntent.modifiers||null}),r.transitionIntent.transition([a.lastPress],n,z())}else a.noTransition=!0}}function He(){n.pointer=null,n.slowState.transitioning||(a.isPressed=!1,a.isClicking=!1,a.lastPress=null,c({transitionIntentType:null,actionIntentType:null}),r.transitionIntent=null,r.actionIntent=null)}function qe(){a.isClicking=!0,a.isPressed=!0,a.lastPress=n.pointer,a.pressTimeout=setTimeout(()=>{a.isPressed&&(a.isClicking=!1)},250)}function $(){n.slowState.transitioning?(c({transitioning:!1}),r.transitionIntent&&M(r.transitionIntent),r.transitionIntent=null,c({transitionIntentType:null})):a.isClicking&&(r.actionIntent&&M(r.actionIntent),r.actionIntent=null,c({actionIntentType:null})),a.isPressed=!1,a.isClicking=!1,a.lastPress=null,a.noTransition=!1,clearTimeout(a.pressTimeout)}function ve(N){n.polygon.points=N?.points||[],n.polygon.boundingBox=null,n.polygon.iedges=null,n.isOpen=N?.open||!1,l(n.polygon),r.nextSlowState=null,r.undoStack=[],r.undoStackPointer=-1,n.lineBox=null,n.line=null,a.pressTimeout&&clearTimeout(a.pressTimeout),c({noShape:N===null,shapeId:N?.id||null,transitioning:!1,actionIntentType:null,transitionIntentType:null,selectedPoints:[],hasClosestLine:!1,modifiers:{Alt:!1,Shift:!1,Meta:!1,proximity:n.slowState.modifiers.proximity},showBoundingBox:!1,currentModifiers:{},validIntentKeys:{},selectedStamp:null,drawMode:!1,closestPoint:null,pointerInsideShape:!1,lineBoxMode:!1,lineMode:!1}),m()}function it(N){if(!N)return"";let G=Va[N];return!G||!G.modifiers?G.label||"":n.slowState.modifiers.Shift&&G.modifiers.Shift?G.modifiers.Shift:n.slowState.modifiers.Alt&&G.modifiers.Alt?G.modifiers.Alt:n.slowState.modifiers.Meta&&G.modifiers.Meta?G.modifiers.Meta:G.label}function Qe(){n.slowState.lineMode?c({lineMode:!1,lineBoxMode:!1,drawMode:!1}):c({lineMode:!0,lineBoxMode:!1,drawMode:!1})}function $e(){n.slowState.lineBoxMode?c({lineMode:!1,lineBoxMode:!1,drawMode:!1}):c({lineBoxMode:!0,lineMode:!0,drawMode:!1})}return{draw:{enable(){c({drawMode:!0,lineMode:!1,lineBoxMode:!1})},disable(){c({drawMode:!1})},toggle(){c({drawMode:!n.slowState.drawMode,lineMode:!1,lineBoxMode:!1})}},state:n,modifiers:U,stamps:W,key:ee,setScale:Me,clock:Re,pointer:ke,blur:He,pointerDown:qe,pointerUp:$,setShape:ve,modes:{toggleLineBoxMode:$e,toggleLineMode:Qe,enableLineMode(){c({lineMode:!0,lineBoxMode:!1,drawMode:!1})},disableLineMode(){c({lineMode:!1,lineBoxMode:!1,drawMode:!1})},enableLineBoxMode(){c({lineMode:!0,lineBoxMode:!0,drawMode:!1})},disableLineBoxMode(){c({lineMode:!1,lineBoxMode:!1,drawMode:!1})}},label:it}}function Um(e,t,i){let[n,r]=(0,hs.useState)({}),a=(0,hs.useMemo)(()=>g1(e,i),[]);return(0,hs.useEffect)(()=>(a.clock.start(t,r),()=>{a.clock.stop()}),[]),{state:n,helper:a}}var tt=R(B(),1),Cr=m1();function Wm(e,t){let{image:i,currentShape:n,onChange:r,hideShapeLines:a}=e,l=(0,si.useRef)(),c=(0,si.useRef)(),p=(0,si.useRef)(),m=(0,si.useRef)(),h=(0,si.useRef)(),y=(0,si.useRef)(),S=(0,si.useRef)(),w=(0,si.useRef)(),[v,x]=(0,si.useState)(null),[A,C]=(0,si.useState)(!1),{helper:I,state:E}=Um(n,(W,ee)=>{Cr.updateTransitionBoundingBox(c.current,W,ee),Cr.updateBoundingBoxPolygon(l.current,W,ee),Cr.updateTransitionShape(y.current,W,ee),Cr.updateClosestLinePointTransform(m.current,W,ee),Cr.updateSelectBox(p.current,W,ee),Cr.updatePointLine(S.current,W,ee),Cr.updateDrawPreview(h.current,W,ee,3),Cr.updateLineBox(w.current,W),x(W.transitionDirection),C(W.transitionRotate)},r);(0,si.useEffect)(()=>{I.setShape(n||null)},t),(0,si.useEffect)(()=>{let W=()=>{I.modifiers.reset()};return document.addEventListener("mouseleave",W),()=>{document.removeEventListener("mouseleave",W)}},[]);let L=(0,tt.jsxs)(tt.Fragment,{children:[(0,tt.jsx)("marker",{id:"dot",viewBox:"0 0 10 10",refX:"5",refY:"5",markerWidth:"5",markerHeight:"5",children:(0,tt.jsx)("circle",{cx:"5",cy:"5",r:"4",className:"marker"})}),(0,tt.jsx)("marker",{id:"selected",viewBox:"0 0 10 10",refX:"5",refY:"5",markerWidth:"5",markerHeight:"5",children:(0,tt.jsx)("circle",{cx:"5",cy:"5",r:"4",fill:"#FAFF00"})}),(0,tt.jsx)("marker",{id:"resizer",viewBox:"0 0 10 10",refX:"5",refY:"5",markerWidth:"5",markerHeight:"5",children:(0,tt.jsx)("rect",{width:"10",height:"10",stroke:"#FF0DCB",fill:"#fff",strokeWidth:2})})]}),z=n?n.open?"polyline":"polygon":null,M=!E.showBoundingBox&&E.closestPoint!==null&&E.actionIntentType==="select-point",Q=E.actionIntentType==="add-open-point",V=E.transitionIntentType==="split-line",J=E.transitioning&&E.selectedStamp&&E.transitionIntentType==="stamp-shape",U=n&&z?(0,tt.jsxs)(tt.Fragment,{children:[(0,tt.jsx)(z,{fill:!E.transitioning&&E.showBoundingBox?"rgba(255, 0, 0, .5)":"none",strokeWidth:J?0:2,stroke:a?"transparent":"#000",points:n.points.map(W=>W.join(",")).join(" "),vectorEffect:"non-scaling-stroke",markerStart:E.showBoundingBox?void 0:"url(#dot)",markerMid:E.showBoundingBox?void 0:"url(#dot)",markerEnd:E.showBoundingBox?void 0:"url(#dot)",style:{pointerEvents:"none"}}),E.lineBoxMode&&E.actionIntentType==="close-line-box"?(0,tt.jsx)("polygon",{fill:"rgba(255, 0, 0, .4)",ref:w,stroke:"#000",strokeWidth:2,vectorEffect:"non-scaling-stroke"}):null,E.transitionIntentType==="draw-shape"&&E.transitioning?(0,tt.jsx)("polyline",{ref:h,fill:"none",stroke:"rgba(255, 0, 0, .5)",strokeWidth:2,vectorEffect:"non-scaling-stroke"}):null,!E.showBoundingBox&&E.selectedPoints&&E.selectedPoints.length?(0,tt.jsx)("polyline",{strokeWidth:2,vectorEffect:"non-scaling-stroke",stroke:"transparent",markerStart:"url(#selected)",markerMid:"url(#selected)",markerEnd:"url(#selected)",fill:"transparent",points:n.points.filter((W,ee)=>E.selectedPoints?.includes(ee)).map(W=>W.join(",")).join(" ")}):null,M&&E.closestPoint!==null&&n.points[E.closestPoint]?(0,tt.jsx)("polyline",{strokeWidth:2,vectorEffect:"non-scaling-stroke",stroke:"transparent",markerStart:"url(#selected)",markerMid:"url(#selected)",markerEnd:"url(#selected)",fill:"transparent",points:`${n.points[E.closestPoint][0]},${n.points[E.closestPoint][1]}`}):null,!E.transitioning&&(E.actionIntentType==="add-open-point"||E.actionIntentType==="close-shape"||E.actionIntentType==="close-shape-line")?(0,tt.jsx)("polyline",{stroke:"#000",ref:S,strokeWidth:E.actionIntentType==="close-shape"?2:1,vectorEffect:"non-scaling-stroke"}):null,E.hasClosestLine&&(!E.transitionIntentType||E.transitionIntentType==="split-line")?(0,tt.jsx)("g",{ref:m,children:(0,tt.jsx)("polyline",{style:{opacity:.5},markerStart:"url(#dot)",points:"0,0 10,10",vectorEffect:"non-scaling-stroke",fill:"transparent",strokeWidth:2})}):null,E.transitioning?(0,tt.jsx)(z,{ref:y,fill:n.open?"none":"rgba(255, 0, 0, .5)",stroke:"rgba(255, 0, 0, .5)",strokeWidth:n.open?2:0}):null,E.transitioning&&E.transitionIntentType==="select-multiple-points"?(0,tt.jsx)("rect",{ref:p,fill:"rgba(255, 255, 255, .3)",strokeWidth:1,stroke:"rgba(0,0,0,.2)",vectorEffect:"non-scaling-stroke"}):null,E.showBoundingBox?null:(0,tt.jsx)("g",{name:"controls",children:!1}),E.showBoundingBox&&!J?(0,tt.jsx)("polygon",{ref:l,strokeWidth:2,stroke:"#FF0DCB",fill:"none",markerStart:"url(#resizer)",markerMid:"url(#resizer)",markerEnd:"url(#resizer)",vectorEffect:"non-scaling-stroke"}):null]}):null;return{helper:I,state:E,isAddingPoint:Q,isSplitting:V,isStamping:J,isHoveringPoint:M,transitionDirection:v,transitionRotate:A,defs:L,editor:U}}var $c=R(q(),1),y1=R(Ws(),1),vi=R(B(),1),v1=[{name:"Default",outer:{borderWidth:4,borderColor:"rgba(255, 255, 255, .4)"},inner:{borderWidth:2,borderColor:"#000"}},{name:"High contrast",outer:{borderWidth:3,borderColor:"#fff"},inner:{borderWidth:1,borderColor:"#000"}},{name:"Lightsaber",outer:{borderWidth:"4",borderColor:"rgba(56,68,255,0.64)"},inner:{borderWidth:"2",borderColor:"#fff"}},{name:"Bright",outer:{borderWidth:"6",borderColor:"#25d527"},inner:{borderWidth:"3",borderColor:"#a916ff"}},{name:"pink",outer:{borderWidth:"4",borderColor:"#ff00ff"},inner:{borderWidth:"2",borderColor:"#ffffff"}},{name:"fine (dark)",outer:{borderWidth:"1",borderColor:"#000000"},inner:{}},{name:"fine (light)",outer:{borderWidth:"1",borderColor:"#FFF"},inner:{}}];function Hm(e){let t=e.theme||v1[0],i=Mu(),{image:n}=e,{helper:r,defs:a,editor:l,state:c,transitionDirection:p,isSplitting:m,transitionRotate:h,isHoveringPoint:y,isAddingPoint:S,isStamping:w}=Wm({currentShape:e.shape||null,onChange:e.updateShape,image:e.image,hideShapeLines:!0},[]),v=E=>{r.pointer([[~~E.atlas.x,~~E.atlas.y]])};(0,$c.useEffect)(()=>{let E=L=>{r.key.up(L.key)};return document.addEventListener("keyup",E),()=>{document.removeEventListener("keyup",E)}},[]),(0,$c.useEffect)(()=>{let E=L=>{r.key.down(L.key)};return document.addEventListener("keydown",E),()=>{document.removeEventListener("keydown",E)}},[]),(0,$c.useEffect)(()=>{let E=[];return p&&E.push(`atlas-cursor-${p}`),c.actionIntentType==="cut-line"&&c.modifiers?.Shift&&E.push("atlas-cursor-cut"),(y||c.transitionIntentType==="move-shape"||c.transitionIntentType==="move-point")&&E.push("atlas-cursor-move"),S&&E.push("atlas-cursor-crosshair"),m&&E.push("atlas-cursor-copy"),h&&E.push("atlas-cursor-rotate"),c.transitionIntentType==="draw-shape"&&E.push("atlas-cursor-draw"),i?.canvas&&i.canvas.classList.add(...E),()=>{i?.canvas&&i.canvas.classList.remove(...E)}},[i?.canvas,S,y,m,c.modifiers?.Shift,c.actionIntentType,c.transitionIntentType,p,h]);let x=e.shape&&e.shape?.points.length===0,A=e.renderControls?e.renderControls(r,c,x):null,C=document.getElementById(e.controlsHtmlId||"atlas-controls"),I="shape";return(0,vi.jsx)(vi.Fragment,{children:(0,vi.jsxs)("world-object",{height:n.height,width:n.width,onMouseMove:v,onMouseDown:r.pointerDown,onMouseUp:r.pointerUp,onMouseLeave:r.blur,children:[e.shape?(0,vi.jsxs)(vi.Fragment,{children:[(0,vi.jsx)(I,{open:e.shape.open,points:e.shape.points,relativeStyle:!0,style:w?{}:t.outer}),(0,vi.jsx)(I,{open:e.shape.open,points:e.shape.points,relativeStyle:!0,style:w?{}:t.inner})]}):null,(0,vi.jsxs)(Cn,{relative:!0,interactive:!1,children:[(0,vi.jsx)("div",{style:{position:"absolute",top:0,right:0,left:0,bottom:0},children:(0,vi.jsxs)("svg",{width:"100%",height:"100%",viewBox:`0 0 ${n.width} ${n.height}`,tabIndex:-1,children:[(0,vi.jsx)("defs",{children:a}),l]})}),C?(0,y1.createPortal)(A,C,"controls"):null]})]})})}var qm=R(B(),1);function NR(e){let t=Ce(),i=e.annotationBucket,n=e.readOnly,r=e.id,{onClick:a,isHighlighted:l}=Lm(e.id),c=Bm(),p=l?c.highlighted:c[i||"hidden"]||c.hidden;if(!t)return null;if(n){let m="shape",h=e.polygon,y=h.open;return h?(0,qm.jsx)(m,{id:`shape-${r}`,points:h.points,open:y,onClick:a,relativeStyle:!0,target:{x:0,y:0,width:t.width,height:t.height},style:p}):null}return(0,qm.jsx)(Hm,{image:t,shape:e.polygon||{id:e.id,open:!0,points:[]},updateShape:e.updatePolygon,theme:e.theme,controlsHtmlId:e.controlsHtmlId,renderControls:e.renderControls})}var Gc=R(q(),1);var Pr=R(B(),1);function BR({src:e,errorFallback:t,interactive:i,skipSizes:n,children:r,renderViewerControls:a,viewControlsDeps:l,fluid:c,x:p,y:m,...h}){let[y,S]=(0,Gc.useState)(),w=t||hc,[v,x]=Ea(),A=(0,Gc.useMemo)(()=>{let I=x[e]?.status,E=v({id:e},{});return E?.height&&E.width&&I!=="loading"?{id:e,width:E.width,height:E.height,service:E,type:"Image",selector:{type:"BoxSelector",spatial:{x:0,y:0,width:E.width,height:E.height}},target:{type:"BoxSelector",spatial:{x:0,y:0,width:E.width,height:E.height}}}:null},[v,e,x]);if(Ft(y&&a?"overlay":"none",`canvas-portal-controls-${e}`,Ui.Provider,a&&A?{value:y||null,children:a({image:A,images:[A],type:"images"})}:{},[e,A,y,...l||[]]),!A||!A.height||!A.width)return null;let C=c?void 0:h.homePosition?h.homePosition.width/h.homePosition.height:A.width/A.height;return console.log("here",C),(0,Pr.jsx)(No,{resetKeys:[],fallbackRender:I=>(0,Pr.jsx)(w,{...h,...I}),children:(0,Pr.jsx)(fc,{...h,aspectRatio:C,containerProps:{style:{position:"relative"},...h.containerProps||{}},onCreated:I=>{S(I),h.onCreated&&h.onCreated(I)},children:(0,Pr.jsxs)(Ui.Provider,{value:y,children:[(0,Pr.jsx)(xr,{image:A,id:A.id,isStatic:!i,x:p,y:m},A.id),(0,Pr.jsx)(DR,{viewerPreset:y,renderViewerControls:a,image:A,src:e,viewControlsDeps:l}),r]})})})}function DR({viewerPreset:e,renderViewerControls:t,image:i,src:n,viewControlsDeps:r}){return Ft(e&&t?"overlay":"none",`canvas-portal-controls-${n}`,Ui.Provider,t&&i?{value:e||null,children:t({image:i,images:[i],type:"images"})}:{},[n,e,...r||[]]),null}var x1=R(B(),1);function jR({annotation:e,children:t}){return(0,x1.jsx)(ei,{value:{annotation:e},children:t})}var S1=R(B(),1);function VR({annotationPage:e,children:t}){return(0,S1.jsx)(ei,{value:{annotationPage:e},children:t})}var w1=R(B(),1);function UR({collection:e,children:t}){return(0,w1.jsx)(ei,{value:{collection:e},children:t})}function WR(e,t={}){return oo(t)}var Er=R(q(),1);function HR({canvasId:e}={}){let t=Ou(),i=eo(),n=(0,Er.useMemo)(()=>e?[e]:t?[t.id]:i.map(m=>m.id),[e,t,i]),[r,a]=(0,Er.useState)({}),l=pa();(0,Er.useEffect)(()=>{let m=h=>{let y=h.partOf.canvasId;y&&a(S=>({...S,[y]:h.choice}))};return l.on("choice-change",m),()=>{l.off("choice-change",m)}},[]);let c=(0,Er.useMemo)(()=>{let m=[];for(let h of n){let y=r[h];y&&m.push({canvasId:h,choice:y})}return m},[n,r]),p=(0,Er.useMemo)(()=>({makeChoice:(m,h)=>{l.emit("make-choice",{choiceId:m,...h})}}),[l]);return{choices:c,actions:p}}function qR(e,t=!1){}function QR(e){let i=Xt().manifest,n=e?e.map(r=>typeof r=="string"?r:r?.id):[];return De(r=>{let a=i?r.iiif.entities.Manifest[i]:void 0,l=a?.items||[];if(typeof e>"u")return l;let c=[];for(let p of a?.items||[])n.indexOf(p.id)!==-1&&c.push(p);return c},[n.join("/")])}var b1=R(q(),1);function $R(e,t=[]){let{id:i,selector:n}=e,r=Xt(),a=i||r.collection,l=De(c=>a?c.iiif.entities.Collection[a]:void 0,[a]);return(0,b1.useMemo)(()=>{if(l)return n?n(l):l},[l,n,...t])}var Yc=R(q(),1);function GR(e,t,i,n,r=[]){let a=_e(),l=(0,Yc.useMemo)(()=>ma(a),[a]);(0,Yc.useEffect)(()=>{let c=e;return c?(l.addEventListener(c,t,i,n),()=>{l.removeEventListener(c,t,i)}):()=>{}},[l,e,t,...r])}function YR(e,t){let{id:i,isLoaded:n,error:r,resource:a,requestId:l,cached:c}=aa(e,t);return{id:i,isLoaded:n,error:r,manifest:a,requestId:l,cached:c}}var En=R(q(),1);function Qm({cacheKey:e}={}){let t=Ce(),i=oo(),n=_e(),r=ss(),a=gw(),[l,c]=(0,En.useState)(void 0),[p,m]=(0,En.useState)(!1),[h,y]=(0,En.useState)("idle"),[S,w]=(0,En.useState)(void 0),v=t?t.id:"undefined",x=(0,En.useMemo)(()=>{try{if(t&&i.length){let C=i[0],I=n.get(C.body[0]),L=zn(I)[0];return L&&r(L,{width:L.width||t.width,height:L.height||t.height},!0)||void 0}}catch(C){console.error(C)}},[v,e,t]),A=h==="success"&&l?l:x;return(0,En.useEffect)(()=>{(async()=>{try{if(t&&i.length){let C=i[0],I=n.get(C.body[0]),L=zn(I)[0];if(!L)return;m(!0),y("loading");try{let z=await a(L,{width:L.width||t.width,height:L.height||t.height})||void 0;c(z),y("success"),m(!1)}catch(z){y("error"),w(z)}}}catch(C){y("error"),w(C)}})()},[v,e]),(0,En.useMemo)(()=>({data:A,isFetching:p,status:h,error:S}),[A,p,h,S])}function XR(){let e=Qm();return{isLoading:e.isFetching,tile:e.data?{id:e.data.id||e.data["@id"],width:e.data.width,height:e.data.height,imageService:e.data,thumbnail:void 0}:null}}var C1=R(q(),1);function KR(){let e=_e();return(0,C1.useMemo)(()=>yr(e),[e])}return jb(ZR);})();
|
|
124
|
+
`}),(0,Na.jsx)("iframe",{className:"video-yt",ref:n,src:`https://www.youtube.com/embed/${t.youTubeId}?enablejsapi=1&origin=${window.location.host}`,referrerPolicy:"no-referrer",sandbox:"allow-scripts allow-same-origin allow-presentation"})]}):null}function Qw({media:e,mediaControlsDeps:t,children:i}){let[{element:n,currentTime:r,progress:a},l,c]=ao({duration:e.duration});return Ft("overlay","video-element",YI,{element:n,media:e,playPause:c.playPause}),null}var Fc=T(B(),1);function Rm(){let{strategy:e}=pt(),{renderMediaControls:t,mediaControlsDeps:i}=ni();return e.type!=="media"||e.media.type!=="VideoYouTube"?null:(0,Fc.jsxs)(Qw,{media:e.media,mediaControlsDeps:i,children:[(0,Fc.jsx)(ho,{}),t?t(e):null]})}var gi=T(B(),1);function fo({x:e,y:t,onChoiceChange:i,registerActions:n,defaultChoices:r,isStatic:a,renderViewerControls:l,renderMediaControls:c,renderComplexTimelineControls:p,complexTimelineControlsDeps:m,viewControlsDeps:h,mediaControlsDeps:y,strategies:S,throwOnUnknown:w,backgroundStyle:v,alwaysShowBackground:x,keepCanvasScale:A=!1,enableSizes:C=!1,enableYouTube:I=!0,onClickPaintingAnnotation:E,components:O={},children:L}){return(0,gi.jsxs)(um,{throwOnUnknown:w,onChoiceChange:i,registerActions:n,strategies:S,defaultChoices:r,mediaControlsDeps:y,renderMediaControls:c,renderViewerControls:l,renderComplexTimelineControls:p,complexTimelineControlsDeps:m,viewControlsDeps:h,children:[(0,gi.jsxs)(cm,{keepCanvasScale:A,x:e,y:t,children:[(0,gi.jsx)(dm,{alwaysShowBackground:x,backgroundStyle:v}),(0,gi.jsx)(gm,{}),(0,gi.jsx)(ym,{}),(0,gi.jsx)(xm,{isStatic:a,enableSizes:C,onClickPaintingAnnotation:E}),(0,gi.jsx)(bm,{}),(0,gi.jsx)(wm,{}),(0,gi.jsx)(Em,{as:O.Audio}),(0,gi.jsx)(Tm,{as:O.Video}),I?(0,gi.jsx)(Rm,{}):null,L]}),(0,gi.jsx)(Am,{})]})}var _m=T(B(),1);function $w(e){let t=Ce();return!t||!t.placeholderCanvas?null:(0,_m.jsx)(Vi,{canvas:t.placeholderCanvas.id,children:(0,_m.jsx)(fo,{renderViewerControls:e.renderViewerControls})})}var ri=T(B(),1),XI=(0,mo.forwardRef)(function(t,i){let n=vt(),r=eo(),a=pa(),{ViewerControls:l,MediaControls:c,ComplexTimelineControls:p}=t.components||{};if((0,mo.useImperativeHandle)(i,()=>a,[a]),!n)return(0,ri.jsx)("div",{});let m=0,h=n.viewingDirection==="top-to-bottom",y=n.viewingDirection==="bottom-to-top",S=n.viewingDirection==="left-to-right",w=n.viewingDirection==="right-to-left",x=n.behavior.includes("continuous")?0:t.spacing||0,A=y||w,C=(0,mo.useMemo)(()=>A?[...r].reverse():r,[r,A]);return(0,ri.jsxs)(ri.Fragment,{children:[t.header,(0,ri.jsx)(Bt.Viewer,{height:t.height,mode:t.mode,renderPreset:t.renderPreset,runtimeOptions:t.runtimeOptions,children:C.map((I,E)=>{let O=0,L=0;return h?(O=m,m+=I.width+x):(L=m,m+=I.height+x),(0,ri.jsx)(Vi,{canvas:I.id,children:(0,ri.jsx)(Bt.RenderCanvas,{strategies:["3d-model","media","images","empty","textual-content","complex-timeline"],renderViewerControls:E===0&&l?()=>(0,ri.jsx)(l,{}):void 0,renderMediaControls:E===0&&c?()=>(0,ri.jsx)(c,{}):void 0,renderComplexTimelineControls:E===0&&p?()=>(0,ri.jsx)(p,{}):void 0,x:O,y:L,...t.canvasProps||{},children:t.annotations},I.id)},I.id)})},t.reuseAtlas?"":a.currentSequenceIndex),t.children]})}),Bt=(0,mo.forwardRef)(function({children:t,height:i,annotations:n,canvasProps:r,spacing:a,header:l,components:c,mode:p,reuseAtlas:m,renderPreset:h,runtimeOptions:y,...S},w){let v=Zr();return(0,ri.jsx)(Kr,{vault:v,children:(0,ri.jsx)(Of,{...S,children:(0,ri.jsx)(XI,{ref:w,height:i,components:c,spacing:a,canvasProps:r,annotations:n,header:l,mode:p,reuseAtlas:m,renderPreset:h,runtimeOptions:y,children:t})})})});Bt.RenderImage=xr;Bt.RenderCanvas=fo;Bt.RenderAnnotationPage=wa;Bt.RenderAnnotation=yc;Bt.Viewer=fc;Bt.CanvasBackground=Cc;Bt.Audio=kc;Bt.Video=Lc;Bt.Model=_c;Bt.AudioHTML=Cm;Bt.VideoHTML=Im;Bt.ModelHTML=Sm;Bt.PlaceholderCanvas=$w;var Nc=T(H(),1),Ba=T(B(),1),KI=(0,Nc.forwardRef)(function({canvasId:t},i){let n=Ou(),r=Ea(t||n?.id),a=_e();return(0,Nc.useImperativeHandle)(i,()=>r,[t,n]),!n||r.enabledPageIds.length===0?null:(0,Ba.jsx)(Ba.Fragment,{children:r.enabledPageIds.map(l=>(0,Ba.jsx)(Bt.RenderAnnotationPage,{page:a.get(l)},l))})});var Yw=T(H(),1);var Gw=T(H(),1);var Ct=T(B(),1);function Da({metadata:e=[],config:t,labelWidth:i=16,showEmptyMessage:n=!0,allowHtml:r,emptyFallback:a,classes:l={},emptyMessage:c="No metadata available",emptyValueFallback:p="No value",emptyLabelFallback:m="",separator:h,tableFooter:y,tableHeader:S}){let w=(0,Gw.useMemo)(()=>{let x=(t||[]).reduce((C,I)=>[...C,...I.keys],[]),A={};for(let C of e){let I=C&&C.label?Object.values(C.label):[];for(let E of I)if(E&&E.length&&(x.indexOf(`metadata.${E[0]}`)!==-1||x.length===0)&&C){let O=`metadata.${E[0]}`;A[O]=A[O]?A[O]:[],A[O].push(C);break}}return A},[t,e]);return Object.keys(w).length===0&&n?(0,Ct.jsx)(Ct.Fragment,{children:a})||(0,Ct.jsx)("div",{className:l.empty,children:c}):t&&t.length?(0,Ct.jsxs)("table",{className:l.container,children:[S,(0,Ct.jsx)("tbody",{children:t.map((x,A)=>{let C=[];for(let I of x.keys)for(let E of w[I]||[])C.push((0,Ct.jsx)(Ii,{enableDangerouslySetInnerHTML:r,defaultText:p,separator:h,children:E.value},A+"__"+I));return C.length===0?null:(0,Ct.jsxs)("tr",{className:l.row,children:[(0,Ct.jsx)("td",{className:l.label,style:i?{minWidth:i}:{},children:(0,Ct.jsx)(Ii,{enableDangerouslySetInnerHTML:r,separator:h,defaultText:m,children:x.label})}),(0,Ct.jsx)("td",{className:l.value,children:C})]},A)})}),y]}):(0,Ct.jsxs)("table",{className:l.container,children:[S,(0,Ct.jsx)("tbody",{children:e&&e.length?e.map((x,A)=>x?(0,Ct.jsxs)("tr",{className:l.row,children:[(0,Ct.jsx)("td",{className:l.label,style:i?{minWidth:i}:{},children:(0,Ct.jsx)(Ii,{enableDangerouslySetInnerHTML:r,defaultText:p,separator:h,children:x.label})}),(0,Ct.jsx)("td",{className:l.value,children:(0,Ct.jsx)(Ii,{enableDangerouslySetInnerHTML:r,defaultText:p,separator:h,children:x.value})})]},A):null):null}),y]})}var Xw=T(B(),1);function ZI(e){let t=vt(),i=Ce(),n=ua(),r=(0,Yw.useMemo)(()=>{let a=t?.metadata||[],l=i?.metadata||[],c=n?.metadata||[];return[...a,...l,...c]},[t,i,n]);return(0,Xw.jsx)(Da,{metadata:r,...e})}var Dc=T(H(),1);var Kw=T(H(),1);function Bc(e,t={},i=[]){return(0,Kw.useMemo)(()=>{if(!e)return null;let n=t.quality;e&&e.extraQualities&&t.quality&&(e.extraQualities.includes(t.quality)||(n="default"));let r=nu(e);return iu({identifier:r.identifier,server:r.server,scheme:r.scheme,type:"image",size:{max:!t.size?.width&&!t.size?.height,confined:!1,upscaled:!1,...t.size||{}},format:t.format||"jpg",region:t.region||{full:!0},rotation:t?.rotation?Number.isInteger(t.rotation)?{angle:t.rotation}:t.rotation:{angle:0},quality:n||"default",prefix:r.prefix,originalPath:r.originalPath})},[...i])}var ja=T(B(),1);function JI(e){let t=typeof e.src=="string"?e.src:e.src.id,i=Oa(),[n,r]=(0,Dc.useState)(!1),a;if(t){let c=i.loadServiceSync({id:t});c&&(a=c)}!a&&!n&&i.loadService({id:t}).then(()=>{r(!0)});let l=Bc(a,{size:e.size,selector:e.region,rotation:e.rotation,format:e.format,region:e.region,quality:e.quality},[n,e.src,e.size,e.region,e.rotation,e.format,e.region,e.quality]);return(0,Dc.useEffect)(()=>()=>{r(!1)},[t]),l?(0,ja.jsx)("img",{src:l,alt:e.alt,className:e.className,style:e.style}):(0,ja.jsx)(Zw,{...e,fetchImageService:!1})}function Zw(e){if(e.fetchImageService)return(0,ja.jsx)(JI,{...e});let t=typeof e.src=="string"?{id:e.src,profile:"level0"}:e.src,i=Bc(t,{size:e.size,selector:e.region,rotation:e.rotation,format:e.format,region:e.region,quality:e.quality},[e.src,e.size,e.region,e.rotation,e.format,e.region,e.quality]);return i?(0,ja.jsx)("img",{src:i,alt:e.alt,className:e.className,style:e.style}):null}var Jw=T(B(),1);function eT(e){let t=vt();return(0,Jw.jsx)(Da,{metadata:t?.metadata||[],...e})}var jc=T(H(),1);var Mm=T(t1(),1);var yi=T(B(),1),{LazyLoadComponent:tT}=Mm||Mm.default;function km(e){let{size:t,visible:i,classes:n,canvasId:r,figure:a}=e,l=t?.width||128,c=t?.height||t?.width||128,p=(0,yi.jsx)(iT,{...e}),m=(0,yi.jsx)(tT,{threshold:300,style:{height:c,width:l},visibleByDefault:i,children:r?(0,yi.jsx)(Vi,{canvas:r,children:p}):p});return a?(0,yi.jsx)("figure",{className:n?.figure,children:m}):m}function iT({fallback:e,size:t,classes:i,showLabel:n,alt:r,dereference:a=!1}){let l=Ce(),c=t?.width||128,p=t?.height||t?.width||128,m=r||Kf(l?.label)||"",h=Qn({width:c,height:p,allowUnsafe:!0},a);return!h||h.type!=="fixed"?(0,yi.jsx)(yi.Fragment,{children:e}):(0,yi.jsxs)(yi.Fragment,{children:[(0,yi.jsx)("div",{className:i?.imageWrapper,children:(0,yi.jsx)("img",{className:i?.img,src:h.id,alt:m})}),n?(0,yi.jsx)(Ii,{as:"figcaption",className:i?.label,children:l?.label}):null]})}var ds=T(B(),1);function nT({scrollBehaviour:e,dereference:t,flat:i,size:n,classes:r={},showLabel:a,figure:l,fallback:c}){let p=(0,jc.useRef)(null),{items:m,sequence:h,currentSequenceIndex:y,setSequenceIndex:S}=pa(),w={row:r.selected?.row||r.row,item:r.selected?.item||r.item,figure:r.selected?.figure||r.figure,img:r.selected?.img||r.img,label:r.selected?.label||r.label,imageWrapper:r.selected?.imageWrapper||r.imageWrapper};(0,jc.useLayoutEffect)(()=>{if(!p.current)return;let x=p.current.querySelector("[data-selected=true]");x&&x.scrollIntoView({behavior:e||"instant",block:"nearest",inline:"center"})},[y]);let v=[];for(let x of h){let A=[],C=h[y]===x;for(let I of x){let E=m[I];A.push((0,ds.jsx)("div",{className:C?w.item:r.item,children:(0,ds.jsx)(km,{classes:C?w:r,canvasId:E.id,size:n,dereference:t,showLabel:a,figure:l,placeholder:(0,ds.jsx)("div",{style:{height:128,width:128}}),fallback:c})},I))}if(i){v.push(A);continue}v.push((0,ds.jsx)("div",{onClick:I=>{S(h.indexOf(x))},"data-selected":C,className:C?w.row:r.row,children:A},x.join("-")))}return(0,ds.jsx)("div",{ref:p,className:r.container,children:v})}var oi=T(B(),1),rT={draw:!0,polygon:!0,line:!0,lineBox:!0,square:!0,triangle:!0,hexagon:!0,circle:!0,delete:!0};function oT({helper:e,showShapes:t,state:i,enabled:n=rT,classNames:r={},icons:a={}}){return(0,oi.jsxs)(oi.Fragment,{children:[t?(0,oi.jsxs)(oi.Fragment,{children:[n.draw&&(0,oi.jsx)("button",{className:r.button,onClick:()=>{e.stamps.clear(),e.draw.enable()},"data-active":!i.lineMode&&!i.selectedStamp&&t&&i.drawMode,children:a.DrawIcon||"Draw"}),n.polygon&&(0,oi.jsx)("button",{className:r.button,"data-active":!i.lineMode&&!i.selectedStamp&&t&&!i.drawMode,onClick:()=>{e.stamps.clear(),e.draw.disable(),e.modes.disableLineBoxMode(),e.modes.disableLineMode()},children:a.PolygonIcon||"Polygon"}),n.line&&(0,oi.jsx)("button",{className:r.button,"data-active":i.lineMode&&!i.lineBoxMode,onClick:()=>{e.modes.enableLineMode()},children:a.LineIcon||"Line"}),n.lineBox&&(0,oi.jsx)("button",{className:r.button,"data-active":i.lineBoxMode,onClick:()=>{e.modes.enableLineBoxMode()},children:a.LineBoxIcon||"LineBox"}),n.square&&(0,oi.jsx)("button",{className:r.button,"data-active":i.selectedStamp?.id==="square",onClick:()=>{e.stamps.square()},children:a.SquareIcon||"Square"}),n.triangle&&(0,oi.jsx)("button",{className:r.button,"data-active":i.selectedStamp?.id==="triangle",onClick:()=>{e.stamps.triangle()},children:a.TriangleIcon||"Triangle"}),n.hexagon&&(0,oi.jsx)("button",{className:r.button,"data-active":i.selectedStamp?.id==="hexagon",onClick:()=>{e.stamps.hexagon()},children:a.HexagonIcon||"Hexagon"})]}):null,i.showBoundingBox&&n.delete&&(0,oi.jsx)("button",{className:r.button,onClick:()=>e.key.down("Backspace"),children:a.DeleteForeverIcon||"Delete"})]})}var Ut=T(H(),1);var i1=T(B(),1),Vc=(0,Ut.createContext)(Vn());Vc.displayName="SelectorHelper";function sT({children:e}){return(0,i1.jsx)(Vc.Provider,{value:(0,Ut.useMemo)(()=>Vn(),[]),children:e})}function aT(){return(0,Ut.useContext)(Vc)}function Om(e){let t=Lm(),[i,n]=(0,Ut.useState)(!1);(0,Ut.useEffect)(()=>t.withSelector(e).on("highlight",()=>{n(!0)}),[t,e]),(0,Ut.useEffect)(()=>t.withSelector(e).on("clear-highlight",()=>{n(!1)}),[t,e]);let r=(0,Ut.useCallback)(l=>{t.emit("click",{selectorId:e,event:l})},[e,t]),a=(0,Ut.useCallback)(l=>{t.emit("hover",{selectorId:e,event:l})},[e,t]);return{controller:t,onClick:r,onHover:a,isHighlighted:i}}function Lm(){let e=(0,Ut.useContext)(Vc);return(0,Ut.useMemo)(()=>({withSelector(t){return{on(i,n){let r=a=>{a&&a.selectorId===t&&n(a)};return e.on(i,r),()=>{e.off(i,r)}},emit(i,n){e.emit(i,{...n,selectorId:t})}}},on(t,i){return e.on(t,i),()=>{e.off(t,i)}},emit(t,i){e.emit(t,i)}}),[e])}function lT(){let e=Lm();return(0,Ut.useMemo)(()=>({withSelector(t){return{highlight(){e.emit("highlight",{selectorId:t})},clearHighlight(){e.emit("clear-highlight",{selectorId:t})},zoomTo(){e.emit("zoom-to",{selectorId:t})},addEventListener(i,n){return e.emit("event-listener",{selectorId:t,name:i,callback:n}),()=>{e.emit("remove-event-listener",{selectorId:t,name:i,callback:n})}},getImagePreview(){return new Promise((i,n)=>{e.emit("image-preview-request",{selectorId:t,resolve:i,reject:n})})},on(i,n){return e.withSelector(t).on(i,n)}}},highlight(t){e.emit("highlight",{selectorId:t})},clearHighlight(t){e.emit("clear-highlight",{selectorId:t})},zoomTo(t){e.emit("zoom-to",{selectorId:t})},addEventListener(t,i,n){return e.emit("event-listener",{selectorId:t,name:i,callback:n}),()=>{e.emit("remove-event-listener",{selectorId:t,name:i,callback:n})}},getImagePreview(t){return new Promise((i,n)=>{e.emit("image-preview-request",{selectorId:t,resolve:i,reject:n})})},on(t,i){return e.on(t,i)}}),[e])}var hs=T(H(),1),n1=T(B(),1);function zm(){return{default:{backgroundColor:"rgba(0,0,0,0)",borderWidth:"2px",borderColor:"rgba(252,0,98, .5)"},highlighted:{backgroundColor:"rgba(75, 103, 225, 0.4)",borderWidth:"1px",borderColor:"rgba(75,103,225,0.99)"},hidden:{borderWidth:"0px",borderColor:"rgba(0,0,0,0)",backgroundColor:"rgba(0,0,0,0)",hidden:!0}}}var Fm=(0,hs.createContext)(zm());Fm.displayName="AnnotationStyle";function Nm(){return(0,hs.useContext)(Fm)}function uT({theme:e,children:t}){let i=(0,hs.useMemo)(()=>e||zm(),[e]);return(0,n1.jsx)(Fm.Provider,{value:i,children:t})}var si=T(H(),1);var ps=T(H(),1);function a1(e){let t=e.points.length,i=!1,n=[];if(t>1){e.iedges=[];let r=e.points[t-1];for(let a=0;a<t;a++){let l=r;if(r=e.points[a],r.length===6){let m=r[2],h=r[3],y=r[4],S=r[5];n.push([a,[r[0]+m,r[1]+h],[r[0]+y,r[1]+S]]),i=!0}let c=[r[0]-l[0],r[1]-l[1]],p=c[0]*c[0]+c[1]*c[1];p>0?e.iedges.push([c[0]/p,c[1]/p]):e.iedges.push([0,0])}}else t===1?e.iedges=[[0,0]]:e.iedges=null;e.isBezier=i,e.bezierLines=n}function cT(e,t){let i=1/0,n=null,r=-1,a=e.points.length;if(a<=1)return[null,i,r];let l=e.points[a-1];for(let c=0;c<a;c++){let p=l;l=e.points[c];let m=p[0]-t[0],h=p[1]-t[1],y=m*m+h*h;y<i&&(n=p,i=y,r=c===0?a-1:c-1)}return[n,i,r]}function qc(e){if(e.points.length>2){let t=Math.min(...e.points.map(a=>a[0])),i=Math.min(...e.points.map(a=>a[1])),n=Math.max(0,...e.points.map(a=>a[0])),r=Math.max(0,...e.points.map(a=>a[1]));e.boundingBox={x:t,y:i,width:n-t,height:r-i};return}e.boundingBox=null}function dT(e){return e[0]*e[0]+e[1]*e[1]}function r1(e,t){let i=1/0,n=null,r=-1,a=[],l=e.points.length;if(l<=1)return[null,i,a,r];if(e.iedges===null&&(a1(e),!e.iedges))return[null,i,a,r];let c=e.points[l-1];for(let p=0;p<l;p++){let m=c;c=e.points[p];let h=(t[0]-m[0])*e.iedges[p][0]+(t[1]-m[1])*e.iedges[p][1],y;h<=0?y=m:h<1?y=[(1-h)*m[0]+h*c[0],(1-h)*m[1]+h*c[1]]:y=c;let S=dT([y[0]-t[0],y[1]-t[1]]);S<i&&(n=y,i=S,a=[m,c],r=p===0?l-1:p-1)}return[n,i,a,r]}var l1={type:"move-bounding-box",label:"Move bounding box",isValid(e,t,i){let n=t.polygon.points.length,r=n===t.selectedPoints.length,a=t.polygon.boundingBox;if(n<1||!r||!a)return!1;let l=e[0],c=l[0],p=l[1];return c>=a.x&&c<=a.x+a.width&&p>=a.y&&p<=a.y+a.height},transition(e,t,i){let n=t.transitionOrigin,r=t.polygon.boundingBox,a=e[0],l=a[0]-n[0],c=a[1]-n[1];t.transitionPoints=t.polygon.points.map(p=>p.length===6?[p[0]+l,p[1]+c,p[2],p[3],p[4],p[5]]:[p[0]+l,p[1]+c]),r&&(t.transitionBoundingBox={x:r.x+l,y:r.y+c,width:r.width,height:r.height})},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{points:n}}},u1={type:"move-shape",label:"Move shape",isValid(e,t,i){return i.Shift?!1:t.slowState.pointerInsideShape&&(!t.isOpen||t.line===null)},transition(e,t,i){l1.transition(e,t,i)},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{points:n}}};function o1(e,t){return Math.abs(e-t)}function qi(e,t){let i=o1(e[0],t[0]),n=o1(e[1],t[1]);return Math.sqrt(Math.pow(i,2)+Math.pow(n,2))}function Bm(e,t){return[e[0]-t[0],e[1]-t[1]]}function hT(e,t){return e[0]*t[0]+e[1]*t[1]}function c1(e){return e[0]*e[0]+e[1]*e[1]}function Uc(e,t){return c1(Bm(e,t))}function d1(e,t){let i,n,r,a;var l=function(v,x,A,C,I){if(C<=A+1)return;let E=A,O=0,L=v*v;i=[x[A],x[C]],n=Bm(i[1],i[0]);let M=c1(n),Q,V,J,U,q;for(let ee=A+1;ee<C;ee++)Q=Bm(x[ee],i[0]),U=hT(Q,n),U<=0?q=Uc(x[ee],i[0]):M<=U?q=Uc(x[ee],i[1]):(J=U/M,V=[i[0][0]+J*n[0],i[0][1]+J*n[1]],q=Uc(x[ee],V)),!(q<=O)&&(E=ee,O=q);O>L&&(I[E]=1,l(v,x,A,E,I),l(v,x,E,C,I))};let c=e.length,p=[],m,h,y,S,w=t*t;for(r=[],a=[],r[0]=e[0],m=h=1,S=0;m<c;m++)Uc(e[m],e[S])<w||(r[h++]=e[m],S=m);for(S<c-1&&(r[h++]=e[c-1]),a[0]=a[h-1]=1,l(t,r,0,h-1,a),m=y=0;m<h;m++)a[m]&&(p[y++]=r[m]);return p}var pT={type:"move-point",label:"Move point",modifiers:{Shift:"Constrain to axis"},isValid(e,t,i){if(i.Alt)return!1;let n=i.proximity,[r,a]=e[0],l=t.polygon.points,c=t.selectedPoints;for(let p=0;p<l.length;p++){let m=l[p],h=m[0]-r,y=m[1]-a;if(h*h+y*y<n*n)return!0}return!1},start(e,t,i){if(t.selectedPoints.length<2){let[n,r,a]=cT(t.polygon,e[0]);return{selectedPoints:[a]}}if(t.slowState.closestPoint&&!t.selectedPoints.includes(t.slowState.closestPoint))return{selectedPoints:[t.slowState.closestPoint]}},transition(e,t,i){let n=t.transitionOrigin,[r,a]=e[0],l=t.polygon.points,c=t.selectedPoints;if(t.slowState.closestPoint){let y=t.slowState.closestPoint;c.indexOf(y)===-1&&(c=[y])}let p=[],m=r-n[0],h=a-n[1];i.Shift&&(Math.abs(m)>Math.abs(h)?h=0:m=0);for(let y=0;y<l.length;y++){let S=c.indexOf(y)!==-1,w=l[y];S?w.length===6?p.push([w[0]+m,w[1]+h,w[2],w[3],w[4],w[5]]):p.push([w[0]+m,w[1]+h]):p.push(w)}t.transitionPoints=p},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{points:n}}},s1=10,fT={type:"select-point",label:"Select point",trigger:{type:"click"},modifiers:{Shift:"Add to selection"},isValid(e,t,i){let n=-1;if(t.selectedPoints.length===1){let c=t.selectedPoints[0];c===0&&(n=t.polygon.points.length-1),c===t.polygon.points.length-1&&(n=0)}let[r,a]=e[0],l=t.polygon.points;for(let c=0;c<l.length;c++){let p=l[c],m=p[0]-r,h=p[1]-a;if(m*m+h*h<s1*s1)return n!==c}return!1},commit(e,t,i){let n=i.Shift?[...t.selectedPoints]:[],[r,a]=e[0],l=t.polygon.points.map((c,p)=>{let m=c[0]-r,h=c[1]-a;return[m*m+h*h,p]}).sort((c,p)=>c[0]-p[0])[0];if(t.line=null,!n.includes(l[1]))n.push(l[1]);else if(i.Shift)return{selectedPoints:n.filter(c=>c!==l[1])};return{selectedPoints:n}}},h1={type:"split-line",label:"Split line",isValid(e,t,i){return i.Meta||t.slowState.lineMode?!1:!!(t.closestLinePoint&&t.closestLineDistance<i.proximity)},transition(e,t,i){let n=t.transitionOrigin,[r,a]=e[0],l=t.polygon.points,c=[],p=r-n[0],m=a-n[1];for(let h=0;h<l.length;h++)if(c.push(l[h]),t.closestLineIndex===h){let y=t.closestLinePoint;c.push([y[0]+p,y[1]+m])}t.transitionPoints=c},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{selectedPoints:[t.closestLineIndex+1],points:n}}},mT={type:"add-open-point",label:"Add point",trigger:{type:"click"},isValid(e,t,i){if(!t.isOpen)return!1;if(t.polygon.points.length===0)return!0;if(t.selectedPoints.length!==1||t.polygon.points.length>=2&&t.slowState.lineMode)return!1;let n=t.selectedPoints[0];return n===0||n===t.polygon.points.length-1},commit(e,t,i){let n=t.line?t.line[1]:e[0],r=t.polygon.points;return r.length===0?{selectedPoints:[0],points:[e[0]]}:(i.Shift,t.selectedPoints[0]===0?{selectedPoints:t.slowState.lineMode?[]:[0],points:[n,...r]}:(t.line=null,{selectedPoints:t.slowState.lineMode?[]:[r.length],points:[...r,n]}))}},p1={type:"close-shape",label:"Close shape",trigger:{type:"click"},isValid(e,t,i){if(!t.isOpen||t.selectedPoints.length!==1||t.polygon.points.length<2||i.Meta)return!1;let n=t.selectedPoints[0];if(n===0){let r=t.polygon.points[t.polygon.points.length-1];return qi(e[0],r)<i.proximity}if(n===t.polygon.points.length-1){let r=t.polygon.points[0];return qi(e[0],r)<i.proximity}return!1},commit(e,t,i){let n=t.selectedPoints[0];if(t.line=null,n===0)return{selectedPoints:[],points:t.polygon.points.slice(0).reverse(),isOpen:!1};if(n===t.polygon.points.length-1)return{selectedPoints:[],isOpen:!1}}},gT={type:"deselect-draw",label:"Deselect draw",trigger:{type:"key",key:"Escape"},isValid(e,t,i){return!0},commit(e,t,i){return{selectedPoints:[]}}},yT={type:"select-shape",label:"Select shape",trigger:{type:"click"},isValid(e,t,i){return u1.isValid(e,t,i)},commit(e,t,i){return{selectedPoints:t.polygon.points.map((n,r)=>r)}}},vT={type:"deselect-bounding-box",label:"Deselect bounding box",trigger:{type:"click"},isValid(e,t,i){return!t.isOpen&&t.selectedPoints.length>2&&t.selectedPoints.length===t.polygon.points.length},commit(e,t,i){return{selectedPoints:[]}}},xT={type:"bounding-box-corners",label:"Drag to resize",modifiers:{Shift:"Maintain aspect ratio",Alt:"Scale from center",Meta:"Rotate"},isValid(e,t,i){if(t.transitionDirection=null,t.transitionRotate=!1,t.isOpen||t.selectedPoints.length!==t.polygon.points.length||!t.polygon.boundingBox)return!1;let n=i.proximity*.5,r=i.proximity*3,a=e[0],l=t.polygon.boundingBox,c=l.x+n,p=l.x+l.width-n*2,m=l.y+n,h=l.y+l.height-n*2;if(a[0]>c&&a[0]<p&&a[1]>m&&a[1]<h)return!1;let y=[l.x+l.width,l.y+l.height],S=[l.x,l.y],w=[l.x+l.width,l.y],v=[l.x,l.y+l.height],x=["ne","nw","se","sw"],A=[qi(e[0],w),qi(e[0],S),qi(e[0],y),qi(e[0],v)],C=Math.min(...A);if(A[0]<r||A[1]<r||A[2]<r||A[3]<r){(C>i.proximity||i.Meta)&&(t.transitionRotate=!0);let I=A.indexOf(Math.min(...A));return t.transitionDirection=I!==-1?x[I]:null,!0}return!1},start(e,t,i){let n=e[0],r=t.polygon.boundingBox,a=[r.x+r.width,r.y+r.height],l=[r.x,r.y],c=[r.x+r.width,r.y],p=[r.x,r.y+r.height],m=["ne","nw","se","sw"],h=[qi(e[0],c),qi(e[0],l),qi(e[0],a),qi(e[0],p)],y=Math.min(...h),S=h.indexOf(y);t.transitionDirection=S!==-1?m[S]:null,y>i.proximity&&(t.transitionRotate=!0)},transition(e,t,i){let n=t.polygon.boundingBox,r=[n.x,n.y],a=t.transitionOrigin||e[0],[l,c]=e[0];if(i.Meta||t.transitionRotate){r=[n.x+n.width/2,n.y+n.height/2];let v=Math.atan2(a[1]-r[1],a[0]-r[0]),x=Math.atan2(c-r[1],l-r[0]),A=i.Shift,C=Math.PI/(i.Alt?4:12),I=x-v;A&&(I=Math.round(I/C)*C);let E=Math.cos(I),O=Math.sin(I),L=[];for(let M of t.polygon.points){let Q=M[0]-r[0],V=M[1]-r[1],J=Q*E-V*O,U=Q*O+V*E,q=J+r[0],ee=U+r[1];if(M.length===6){L.push([q,ee,M[2],M[3],M[4],M[5]]);continue}L.push([q,ee])}t.transitionPoints=L,qc({points:L,iedges:null,boundingBox:null,isBezier:!1,bezierLines:[]}),t.transitionBoundingBox=t.polygon.boundingBox?{...t.polygon.boundingBox,rotation:I}:null;return}let p=0,m=0;switch(t.transitionDirection){case"se":{r=[n.x,n.y],p=l-a[0],m=c-a[1];break}case"sw":{r=[n.x+n.width,n.y],p=a[0]-l,m=c-a[1];break}case"ne":{r=[n.x,n.y+n.height],p=l-a[0],m=a[1]-c;break}case"nw":{r=[n.x+n.width,n.y+n.height],p=a[0]-l,m=a[1]-c;break}}if(i.Alt&&(r=[n.x+n.width/2,n.y+n.height/2],p*=2,m*=2),i.Shift){let v=n.width/n.height;Math.abs(n.width/p)>Math.abs(n.height/m)?m=p/v:p=m*v}let h=(n.width+p)/n.width,y=(n.height+m)/n.height,S=[];for(let v of t.polygon.points){let x=v[0]-r[0],A=v[1]-r[1],C=x*h,I=A*y,E=C+r[0],O=I+r[1];if(v.length===6){S.push([E,O,v[2],v[3],v[4],v[5]]);continue}S.push([E,O])}t.transitionPoints=S;let w={points:S,iedges:null,boundingBox:null,bezierLines:[],isBezier:!1};qc(w),t.transitionBoundingBox=w.boundingBox},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,t.transitionRotate=!1,{points:n}}},ST={type:"cut-line",label:"Add new point",trigger:{type:"click"},modifiers:{Shift:"Cut line"},isValid(e,t,i){return h1.isValid(e,t,i)},commit(e,t,i){if(i.Shift&&!t.isOpen){let a=t.polygon.points,l=[],c=[],p=!1;for(let m=0;m<a.length;m++)p?c.push(a[m]):l.push(a[m]),t.closestLineIndex===m&&(p=!0);return{isOpen:!0,points:[...c,...l]}}let n=t.polygon.points,r=[];for(let a=0;a<n.length;a++)if(r.push(n[a]),t.closestLineIndex===a){let l=t.closestLinePoint;r.push(l)}return{points:r}}},wT={type:"select-multiple-points",label:"Drag to select multiple points",isValid(e,t,i){return t.slowState.lineMode&&t.polygon.points.length>=2?!0:!t.line},transition(e,t,i){if(!t.transitionOrigin)return;let n=t.transitionOrigin[0],r=t.transitionOrigin[1],a=e[0][0],l=e[0][1],c=Math.min(n,a),p=Math.min(r,l),m=Math.abs(n-a),h=Math.abs(r-l);t.selectionBox={x:c,y:p,width:m,height:h}},commit(e,t,i){if(t.selectionBox){let n=[];i.Shift&&n.push(...t.selectedPoints);for(let r=0;r<t.polygon.points.length;r++){let a=t.polygon.points[r];a[0]>=t.selectionBox.x&&a[0]<=t.selectionBox.x+t.selectionBox.width&&a[1]>=t.selectionBox.y&&a[1]<=t.selectionBox.y+t.selectionBox.height&&n.push(r)}return{selectedPoints:n}}}},bT={type:"deselect-points",label:"Deselect points",trigger:{type:"click"},isValid(e,t,i){return t.selectedPoints.length>0},commit(e,t,i){return{selectedPoints:[]}}},Qc=4,CT={type:"nudge-right",label:"Nudge right",trigger:{type:"key",key:"ArrowRight"},modifiers:{Shift:"Nudge right more"},isValid(e,t,i){return t.selectedPoints.length>0},commit(e,t,i){let n=i.proximity*.3,r=t.polygon.points,a=t.selectedPoints;return{points:r.map((l,c)=>a.includes(c)?[l[0]+(i.Shift?Qc*n:1),l[1]]:l)}}},PT={type:"nudge-left",label:"Nudge left",trigger:{type:"key",key:"ArrowLeft"},modifiers:{Shift:"Nudge left more"},isValid(e,t,i){return t.selectedPoints.length>0},commit(e,t,i){let n=i.proximity*.3,r=t.polygon.points,a=t.selectedPoints;return{points:r.map((l,c)=>a.includes(c)?[Math.max(0,l[0]-(i.Shift?Qc*n:1)),l[1]]:l)}}},ET={type:"nudge-up",label:"Nudge up",trigger:{type:"key",key:"ArrowUp"},modifiers:{Shift:"Nudge up more"},isValid(e,t,i){return t.selectedPoints.length>0},commit(e,t,i){let n=i.proximity*.3,r=t.polygon.points,a=t.selectedPoints;return{points:r.map((l,c)=>{if(a.includes(c)){let p=l[0],m=Math.max(0,l[1]-(i.Shift?Qc*n:1));return l.length===6?[p,m,l[2],l[3],l[4],l[5]]:[p,m]}return l})}}},AT={type:"nudge-down",label:"Nudge down",trigger:{type:"key",key:"ArrowDown"},modifiers:{Shift:"Nudge down more"},isValid(e,t,i){return t.selectedPoints.length>0},commit(e,t,i){let n=i.proximity*.3,r=t.polygon.points,a=t.selectedPoints;return{points:r.map((l,c)=>{let p=l[0],m=Math.max(0,l[1]-(i.Shift?Qc*n:1));return a.includes(c)?l.length===6?[p,m,l[2],l[3],l[4],l[5]]:[p,m]:l})}}},IT={type:"delete-point",label:"Delete point",trigger:{type:"key",key:"Backspace"},isValid(e,t,i){return t.selectedPoints.length>0},commit(e,t,i){let n=t.polygon.points.filter((r,a)=>!t.selectedPoints.includes(a));return{isOpen:n.length<3,selectedPoints:[],points:n}}},TT={type:"draw-shape",label:"Draw shape",isValid(e,t,i){let n=i.Alt||t.slowState.drawMode;return!!(t.isOpen&&(t.line||t.polygon.points.length===0)&&n)},start(e,t,i){t.transitionDraw=[]},transition(e,t,i){t.transitionDraw.push(e[0])},commit(e,t,i){let n=d1(t.transitionDraw,t.scale*3);return t.transitionDraw=[],t.selectedPoints[0]===0?{isOpen:!1,points:[...n,...t.polygon.points.slice(0).reverse()]}:{isOpen:!1,points:[...t.polygon.points,...n]}}},RT={type:"stamp-shape",label:"Stamp shape",modifiers:{Shift:"Maintain aspect ratio"},isValid(e,t,i){return t.slowState.selectedStamp!==null},start(e,t,i){let n=e[0];if(n&&t.slowState.selectedStamp){let r=t.slowState.selectedStamp,a=n[0],l=n[1],c=[],p=Math.min(...r.points.map(x=>x[0])),m=Math.min(...r.points.map(x=>x[1])),h=Math.max(...r.points.map(x=>x[0]))-p,y=Math.max(...r.points.map(x=>x[1]))-m,S=h/32;y/32>S&&(S=y/32);let w=[],v=0;for(let x of r.points)w.push(v),c.push([a+(x[0]-p)/S,l+(x[1]-m)/S]),v++;return t.transitionPoints=c,{isOpen:!1,selectedPoints:w,points:c}}},transition(e,t,i){if(!t.transitionOrigin)return;let n=t.polygon.boundingBox,r=[n.x,n.y],a=t.transitionOrigin||e[0],[l,c]=e[0],p=t.transitionOrigin[0],m=t.transitionOrigin[1],h=e[0][0],y=e[0][1],S=h-p-32,w=y-m-32;if(i.Shift){let I=n.width/n.height;Math.abs(n.width/S)>Math.abs(n.height/w)?w=S/I:S=w*I}let v=(n.width+S)/n.width,x=(n.height+w)/n.height,A=[];for(let I of t.polygon.points){let E=I[0]-r[0],O=I[1]-r[1],L=E*v,M=O*x,Q=L+r[0],V=M+r[1];if(I.length===6){A.push([Q,V,I[2],I[3],I[4],I[5]]);continue}A.push([Q,V])}t.transitionPoints=A;let C={points:A,iedges:null,boundingBox:null,bezierLines:[],isBezier:!1};qc(C),t.transitionBoundingBox=C.boundingBox},commit(e,t,i){return{isOpen:!1,points:t.transitionPoints}}},_T={type:"close-shape-line",label:"Close shape line",trigger:{type:"click"},isValid(e,t,i){return!t.isOpen||t.polygon.points.length<3||!t.closestLinePoint||t.closestLineDistance>=i.proximity?!1:(t.closestLineIndex===0||(t.closestLineIndex,t.polygon.points.length-2),!0)},commit(e,t,i){return p1.commit(e,t,i)}},MT={type:"stamp-fixed-size-shape",label:"Stamp fixed size shape",trigger:{type:"click"},isValid(e,t,i){return t.slowState.selectedStamp!==null},commit(e,t,i){let n=e[0],r=t.slowState.selectedStamp;if(!n||!r)return;let a=n[0],l=n[1],c=[],p=Math.min(...r.points.map(x=>x[0])),m=Math.min(...r.points.map(x=>x[1])),h=Math.max(...r.points.map(x=>x[0]))-p,y=Math.max(...r.points.map(x=>x[1]))-m,S=4*i.proximity,w=h/S;y/S>w&&(w=y/S),a-=h/w/2,l-=y/w/2;let v=0;for(let x of r.points)c.push([a+(x[0]-p)/w,l+(x[1]-m)/w]),v++;return{isOpen:!1,points:c}}},kT={type:"move-line",label:"Move line",isValid(e,t,i){return t.slowState.lineMode?!!(t.closestLinePoint&&t.closestLineDistance<i.proximity):!1},transition(e,t){let i=t.transitionOrigin,n=t.polygon.boundingBox,r=e[0],a=r[0]-i[0],l=r[1]-i[1];t.transitionPoints=t.polygon.points.map(c=>c.length===6?[c[0]+a,c[1]+l,c[2],c[3],c[4],c[5]]:[c[0]+a,c[1]+l])},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{points:n}}},OT={type:"close-line-box",label:"Close Line Box",trigger:{type:"click"},isValid(e,t,i){return t.slowState.lineBoxMode===!0&&t.polygon.points.length===2&&t.lineBox!==null},commit(e,t,i){return t.lineBox?{isOpen:!1,points:t.lineBox}:{}}};function f1(e={}){let t=e.proximityThreshold||10,i=e.closestLinePointFill||{selected:"#fff",unselected:"rgba(255, 255, 255, .5)"},n=e.closestLinePointStroke||{selected:"#000",unselected:"rgba(0, 0, 0, .5)"};function r(v,x,A){v&&x.transitionBoundingBox&&A.transitioning&&(v.setAttribute("x",""+x.transitionBoundingBox.x),v.setAttribute("y",""+x.transitionBoundingBox.y),v.setAttribute("width",""+x.transitionBoundingBox.width),v.setAttribute("height",""+x.transitionBoundingBox.height))}function a(v,x,A){v&&x.polygon.boundingBox&&A.showBoundingBox&&(v.setAttribute("x",""+x.polygon.boundingBox.x),v.setAttribute("y",""+x.polygon.boundingBox.y),v.setAttribute("width",""+x.polygon.boundingBox.width),v.setAttribute("height",""+x.polygon.boundingBox.height))}function l(v,x,A){if(v&&x.polygon.boundingBox&&A.showBoundingBox){let C=x.transitionBoundingBox||x.polygon.boundingBox;C.rotation?(v.style.transformOrigin=`${C.x+C.width/2}px ${C.y+C.height/2}px`,v.style.transform=`rotate(${Math.round(100*C.rotation*(180/Math.PI))/100}deg)`):v.style.transform="",v.setAttribute("points",[[C.x,C.y],[C.x+C.width,C.y],[C.x+C.width,C.y+C.height],[C.x,C.y+C.height]].map(I=>I.join(",")).join(" "))}}function c(v,x,A){v&&x.transitionPoints&&A.transitioning&&v.setAttribute("points",x.transitionPoints.map(C=>C.join(",")).join(" "))}function p(v,x,A){v&&x.closestLinePoint&&A.hasClosestLine&&(v.setAttribute("cx",""+x.closestLinePoint[0]),v.setAttribute("cy",""+x.closestLinePoint[1]),v.setAttribute("fill",x.closestLineDistance<t?i.selected:i.unselected),v.setAttribute("stroke",x.closestLineDistance<t?n.selected:n.unselected))}function m(v,x,A){v&&x.closestLinePoint&&A.hasClosestLine&&v.setAttribute("transform",`translate(${x.closestLinePoint[0]}, ${x.closestLinePoint[1]})`)}function h(v,x,A){v&&x.selectionBox&&A.transitionIntentType==="select-multiple-points"&&(v.setAttribute("x",""+x.selectionBox.x),v.setAttribute("y",""+x.selectionBox.y),v.setAttribute("width",""+x.selectionBox.width),v.setAttribute("height",""+x.selectionBox.height))}function y(v,x,A){if(v&&x.pointer&&x.selectedPoints.length)if(A.actionIntentType==="close-shape"||A.actionIntentType==="close-shape-line"){let C=x.polygon.points[0],I=x.polygon.points[x.polygon.points.length-1];C&&I&&v.setAttribute("points",`${C.join(",")} ${I.join(",")}`)}else if(x.line)v.setAttribute("points",`${x.line[0].join(",")} ${x.line[1].join(",")}`);else{let C=x.polygon.points[x.selectedPoints[0]];C&&C.length&&v.setAttribute("points",`${x.pointer[0]},${x.pointer[1]} ${C.join(",")}`)}}function S(v,x,A,C=3){v&&x.transitionDraw.length&&v.setAttribute("points",d1(x.transitionDraw,C*3).map(I=>I.join(",")).join(" "))}function w(v,x){v&&x.lineBox&&v.setAttribute("points",x.lineBox.map(A=>A.join(",")).join(" "))}return{updateTransitionBoundingBox:r,updateClosestLinePointTransform:m,updateBoundingBoxPolygon:l,updateBoundingBox:a,updateTransitionShape:c,updateClosestLinePoint:p,updateSelectBox:h,updatePointLine:y,updateDrawPreview:S,updateLineBox:w}}var LT=typeof window<"u"?window.requestAnimationFrame:e=>setTimeout(e,16),zT=typeof window<"u"?window.cancelAnimationFrame:e=>clearTimeout(e),jm=[RT,xT,pT,kT,h1,u1,l1,TT,wT],FT=jm.length,Dm=[OT,MT,p1,fT,_T,ST,mT,yT,vT,bT],Hc=[gT,CT,PT,ET,AT,IT],Va={};jm.forEach(e=>{Va[e.type]=e});Dm.forEach(e=>{Va[e.type]=e});Hc.forEach(e=>{Va[e.type]=e});var Wc=20;function m1(e,t){let i={shapeId:e?.id||null,noShape:e===null,transitioning:!1,actionIntentType:null,transitionIntentType:null,selectedPoints:[],hasClosestLine:!1,modifiers:{Alt:!1,Shift:!1,Meta:!1,proximity:Wc},showBoundingBox:!1,currentModifiers:{},validIntentKeys:{},pointerInsideShape:!1,closestPoint:null,transitionModifiers:null,selectedStamp:null,lineMode:!1,lineBoxMode:!1,drawMode:!1,bezierLines:[]},n={isOpen:e?e.open:!1,polygon:{points:e?.points||[],iedges:null,boundingBox:null,isBezier:null,bezierLines:[]},scale:1,selectedPoints:[],pointer:null,line:null,lineBox:null,transitionPoints:null,transitionOrigin:null,transitionBoundingBox:null,closestLinePoint:null,closestLineDistance:0,closestLineIndex:-1,transitionRotate:!1,transitionDirection:null,transitionBezierLine:null,selectionBox:null,slowState:i,transitionDraw:[]},r={startTime:0,time:0,shouldUpdate:!1,nextSlowState:null,renderFunc:()=>{},setStateFunc:()=>{},animationFrame:0,actionIntent:null,transitionIntent:null,undoStack:[],undoStackPointer:-1},a={isPressed:!1,isClicking:!1,lastPress:null,pressTimeout:0,noTransition:!1};function l(N){a1(N),N.isBezier&&c({bezierLines:N.bezierLines}),qc(N),r.shouldUpdate=!0}l(n.polygon);function c(N){let G=Object.keys(N);if(G.length===0)return;let de=r.nextSlowState||n.slowState,ye=!1;if(G.length===1&&G[0]==="validIntentKeys"&&de.validIntentKeys){let ge=Object.keys(de.validIntentKeys),Ve=Object.keys(N.validIntentKeys||{});if(ge.length===Ve.length){for(let ze of ge)de.validIntentKeys[ze]!==N.validIntentKeys[ze]&&(ye=!0);if(!ye)return}}if(!(G.length===1&&G.includes("hasClosestLine")&&N.hasClosestLine===de.hasClosestLine)){if(r.nextSlowState){r.nextSlowState={...r.nextSlowState,...N};return}r.nextSlowState={...n.slowState,...N}}}function p(N,G=!1){r.time+=N,m(),h(),C(),A(),x(),I(),O(),E(),r.renderFunc(n,n.slowState,N),!G&&(r.animationFrame=LT(p))}function m(){if(r.shouldUpdate&&(t({id:n.slowState.shapeId||void 0,open:n.isOpen,points:n.polygon.points}),r.shouldUpdate=!1),r.nextSlowState&&r.nextSlowState!==n.slowState){let N=Object.keys(n.slowState),G={},de=!1;for(let ye of N){let ge=n.slowState[ye],Ve=r.nextSlowState[ye];ge!==Ve?(de=!0,G[ye]=Ve):G[ye]=ge}de&&(n.slowState=G,r.nextSlowState=null,r.setStateFunc(n.slowState))}}function h(){n.slowState.showBoundingBox?(n.slowState.noShape||n.selectedPoints.length===0||n.selectedPoints.length!==n.polygon.points.length)&&c({showBoundingBox:!1}):!n.slowState.noShape&&n.polygon.points.length&&n.selectedPoints.length===n.polygon.points.length&&c({showBoundingBox:!0})}function y(N){n.selectedPoints=N.selectedPoints,c({selectedPoints:N.selectedPoints}),n.polygon.points=N.points,n.polygon.boundingBox=null,n.polygon.iedges=null,n.polygon.isBezier=null,l(n.polygon),c({closestPoint:null}),(N.isOpen===!0||N.isOpen===!1)&&(n.isOpen=N.isOpen,r.shouldUpdate=!0)}function S(){if(r.undoStackPointer===-1)return;r.undoStackPointer--;let N=r.undoStack[r.undoStackPointer];y(N)}function w(){if(r.undoStackPointer===r.undoStack.length-1)return;r.undoStackPointer++;let N=r.undoStack[r.undoStackPointer];y(N)}function v(N){r.undoStackPointer++,r.undoStack[r.undoStackPointer]=N,r.undoStack.length>15&&(r.undoStack.shift(),r.undoStackPointer--)}function x(){if(!n.pointer||n.slowState.noShape){c({pointerInsideShape:!1});return}let[N,G]=n.pointer,de=n.polygon.points,ye=n.polygon.boundingBox;if(!ye){c({pointerInsideShape:!1});return}if(N<ye.x||N>ye.x+ye.width||G<ye.y||G>ye.height+ye.y){c({pointerInsideShape:!1});return}let ge=!1;for(let Ve=0,ze=de.length-1;Ve<de.length;ze=Ve++)de[Ve][1]>G!=de[ze][1]>G&&N<(de[ze][0]-de[Ve][0])*(G-de[Ve][1])/(de[ze][1]-de[Ve][1])+de[Ve][0]&&(ge=!ge);c({pointerInsideShape:ge})}function A(){if(n.slowState.noShape||!n.pointer||n.slowState.transitioning||!n.polygon.points||n.polygon.points.length===0)return;let[N,G]=n.pointer,de=n.polygon.points.map((ye,ge)=>{let Ve=ye[0]-N,ze=ye[1]-G;return[Ve*Ve+ze*ze,ge]}).sort((ye,ge)=>ye[0]-ge[0]);de.length&&c({closestPoint:de[0][1]})}function C(){if(!n.pointer||n.slowState.transitioning)return;if(n.slowState.noShape){n.closestLineIndex=-1,n.closestLinePoint=null,n.closestLineDistance=0;return}let[N,G,de,ye]=r1(n.polygon,n.pointer),ge=pe()*pe();G<ge&&(!n.isOpen||n.slowState.lineMode||n.polygon.points.length-1!==ye)?(n.closestLinePoint=N,n.closestLineDistance=Math.sqrt(G),n.closestLineIndex=ye,c({hasClosestLine:!0})):(n.closestLinePoint=null,n.closestLineDistance=0,n.closestLineIndex=-1,c({hasClosestLine:!1}))}function I(){if(!n.pointer||n.slowState.transitioning||n.slowState.noShape)return;let N=!1;for(let ye=0;ye<FT;ye++){let ge=jm[ye];if(ge.isValid(a.isPressed?[a.lastPress]:[n.pointer],n,L())){if(r.transitionIntent===ge){N=!0;break}c({transitionIntentType:ge.type}),r.transitionIntent=ge,N=!0;break}}N||r.transitionIntent&&(r.transitionIntent=null,c({transitionIntentType:null}));let G=!1;for(let ye=0;ye<Dm.length;ye++){let ge=Dm[ye];if(Q(ge)){if(r.actionIntent===ge){G=!0;break}c({actionIntentType:ge.type}),r.actionIntent=ge,G=!0;break}}G||r.actionIntent&&(r.actionIntent=null,c({actionIntentType:null}));let de={};for(let ye=0;ye<Hc.length;ye++){let ge=Hc[ye];ge.trigger.type==="key"&&Q(ge)&&(de[ge.trigger.key]=ge.label)}c({validIntentKeys:de})}function E(){let N=n.pointer;if(n.lineBox=null,!N||J()||n.polygon.points.length!==2)return;let[G,de]=N,[ye,ge]=n.polygon.points[0],[Ve,ze]=n.polygon.points[1],[Pe,ne,he,Oe]=r1(n.polygon,N);if(!Pe)return;let ot=G-Pe[0],Ti=de-Pe[1],Dt=[ye,ge],Wt=[Ve,ze],fs=[Wt[0]+ot,Wt[1]+Ti],Ri=[Dt[0]+ot,Dt[1]+Ti];n.lineBox=[Dt,Wt,fs,Ri]}function O(){let N=n.pointer;if(!N||!J()||n.slowState.noShape)return;let G=n.selectedPoints[0];if(n.line=[n.polygon.points[G],N],n.slowState.modifiers.Shift){let de=0;if(n.polygon.points.length>1){let ot=n.selectedPoints[0];ot===0?de=Math.atan2(n.polygon.points[1][1]-n.polygon.points[0][1],n.polygon.points[1][0]-n.polygon.points[0][0]):de=Math.atan2(n.polygon.points[ot-1][1]-n.polygon.points[ot][1],n.polygon.points[ot-1][0]-n.polygon.points[ot][0])}let ye=N[0]-n.polygon.points[G][0],ge=N[1]-n.polygon.points[G][1],Ve=Math.atan2(ge,ye),ze=Math.PI/4,Pe=Math.round((Ve-de)/ze)*ze+de,ne=qi(n.polygon.points[G],N),he=Math.cos(Pe)*ne+n.polygon.points[G][0],Oe=Math.sin(Pe)*ne+n.polygon.points[G][1];n.line[1]=[he,Oe]}}function L(){return n.slowState.modifiers}function M(N){let G=N.commit([a.lastPress],n,L());G&&(G.selectedPoints&&(n.selectedPoints=G.selectedPoints,c({selectedPoints:G.selectedPoints})),G.points&&(n.polygon.points=G.points,n.polygon.boundingBox=null,n.polygon.iedges=null,n.polygon.isBezier=null,n.transitionBoundingBox=null,l(n.polygon),c({closestPoint:null,selectedStamp:null})),(G.isOpen===!0||G.isOpen===!1)&&(n.isOpen=G.isOpen,r.shouldUpdate=!0),v({isOpen:n.isOpen,points:n.polygon.points,selectedPoints:n.selectedPoints})),c({transitionModifiers:null})}function Q(N){return N.isValid(n.pointer?[n.pointer]:[],n,L())}function V(N){N==="Delete"&&(N="Backspace");for(let G of Hc)if(!(G.trigger.type!=="key"||G.trigger.key!==N)&&Q(G))return M(G),!0}function J(){let N=n.polygon.points,G=n.pointer;if(!n.isOpen||!N.length||n.selectedPoints.length!==1||!G)return!1;let de=n.selectedPoints[0],ye=de===0,ge=de===N.length-1;return ye||ge}let U={reset(){c({modifiers:{Alt:!1,Shift:!1,Meta:!1,proximity:Wc}})},getForType(N){let G={};if(!N)return G;let de=Va[N];return!de||!de.modifiers?G:de.modifiers},set(N){N!=="Shift"&&N!=="Alt"&&N!=="Meta"||c({modifiers:{...r.nextSlowState?.modifiers||n.slowState.modifiers,[N]:!0}})},unset(N){N!=="Shift"&&N!=="Alt"&&N!=="Meta"||c({modifiers:{...r.nextSlowState?.modifiers||n.slowState.modifiers,[N]:!1}})}},q={set(N){c({selectedStamp:N})},clear(){c({selectedStamp:null})},square(){c({selectedStamp:{id:"square",open:!1,points:[[0,0],[0,100],[100,100],[100,0]]}})},triangle(){c({selectedStamp:{id:"triangle",open:!1,points:[[50,0],[0,100],[100,100]]}})},pentagon(){c({selectedStamp:{id:"pentagon",open:!1,points:[[0,0],[0,100],[100,100],[100,0],[50,-50]]}})},hexagon(){c({selectedStamp:{id:"hexagon",open:!1,points:[[0,0],[0,100],[50,150],[100,100],[100,0],[50,-50]]}})}},ee={down(N){return N=="Shift"||N=="Alt"||N=="Meta"?(U.set(N),!0):N==="Control"?(U.set("Meta"),!0):N==="z"&&n.slowState.modifiers.Meta?(n.slowState.modifiers.Shift?w():S(),!0):V(N)},up(N){if(N==="Control"){U.unset("Meta");return}N!=="Shift"&&N!=="Alt"&&N!=="Meta"||U.unset(N)}};function Me(N){n.scale=N,c({modifiers:{...r.nextSlowState?.modifiers||n.slowState.modifiers,proximity:N*Wc}})}function pe(){return Wc*n.scale}let Te={set:N=>{r.renderFunc=N},start:(N,G)=>{r.startTime=performance.now(),r.time=0,N&&(r.renderFunc=N),G&&(G(n.slowState),r.setStateFunc=G),p(0)},stop:()=>{r.animationFrame&&(zT(r.animationFrame),r.animationFrame=0)},step:(N=16)=>{p(N)}};function ke(N){let G=N[0];if(!(!G||!G[0]&&G[0]!==0||!G[1]&&G[1]!==0)&&!(Number.isNaN(G[0])||Number.isNaN(G[1]))){if(n.pointer=G||null,n.slowState.transitioning)r.transitionIntent&&r.transitionIntent.transition(N,n,L());else if(a.isPressed&&!a.noTransition&&(!a.isClicking||qi(a.lastPress,n.pointer)>10))if(clearTimeout(a.pressTimeout),a.isClicking=!1,r.transitionIntent){if(n.transitionOrigin=a.lastPress,c({transitioning:!0}),r.transitionIntent.start){let de=r.transitionIntent.start([a.lastPress],n,L());de&&(de.selectedPoints&&(n.selectedPoints=de.selectedPoints,c({selectedPoints:de.selectedPoints})),(de.isOpen===!0||de.isOpen===!1)&&(n.isOpen=de.isOpen,r.shouldUpdate=!0),de.points&&(n.polygon.points=de.points,n.polygon.boundingBox=null,n.polygon.iedges=null,l(n.polygon),c({closestPoint:null})))}c({transitionModifiers:r.transitionIntent.modifiers||null}),r.transitionIntent.transition([a.lastPress],n,L())}else a.noTransition=!0}}function He(){n.pointer=null,n.slowState.transitioning||(a.isPressed=!1,a.isClicking=!1,a.lastPress=null,c({transitionIntentType:null,actionIntentType:null}),r.transitionIntent=null,r.actionIntent=null)}function qe(){a.isClicking=!0,a.isPressed=!0,a.lastPress=n.pointer,a.pressTimeout=setTimeout(()=>{a.isPressed&&(a.isClicking=!1)},250)}function $(){n.slowState.transitioning?(c({transitioning:!1}),r.transitionIntent&&M(r.transitionIntent),r.transitionIntent=null,c({transitionIntentType:null})):a.isClicking&&(r.actionIntent&&M(r.actionIntent),r.actionIntent=null,c({actionIntentType:null})),a.isPressed=!1,a.isClicking=!1,a.lastPress=null,a.noTransition=!1,clearTimeout(a.pressTimeout)}function ve(N){n.polygon.points=N?.points||[],n.polygon.boundingBox=null,n.polygon.iedges=null,n.isOpen=N?.open||!1,l(n.polygon),r.nextSlowState=null,r.undoStack=[],r.undoStackPointer=-1,n.lineBox=null,n.line=null,a.pressTimeout&&clearTimeout(a.pressTimeout),c({noShape:N===null,shapeId:N?.id||null,transitioning:!1,actionIntentType:null,transitionIntentType:null,selectedPoints:[],hasClosestLine:!1,modifiers:{Alt:!1,Shift:!1,Meta:!1,proximity:n.slowState.modifiers.proximity},showBoundingBox:!1,currentModifiers:{},validIntentKeys:{},selectedStamp:null,drawMode:!1,closestPoint:null,pointerInsideShape:!1,lineBoxMode:!1,lineMode:!1}),m()}function it(N){if(!N)return"";let G=Va[N];return!G||!G.modifiers?G.label||"":n.slowState.modifiers.Shift&&G.modifiers.Shift?G.modifiers.Shift:n.slowState.modifiers.Alt&&G.modifiers.Alt?G.modifiers.Alt:n.slowState.modifiers.Meta&&G.modifiers.Meta?G.modifiers.Meta:G.label}function Qe(){n.slowState.lineMode?c({lineMode:!1,lineBoxMode:!1,drawMode:!1}):c({lineMode:!0,lineBoxMode:!1,drawMode:!1})}function $e(){n.slowState.lineBoxMode?c({lineMode:!1,lineBoxMode:!1,drawMode:!1}):c({lineBoxMode:!0,lineMode:!0,drawMode:!1})}return{draw:{enable(){c({drawMode:!0,lineMode:!1,lineBoxMode:!1})},disable(){c({drawMode:!1})},toggle(){c({drawMode:!n.slowState.drawMode,lineMode:!1,lineBoxMode:!1})}},state:n,modifiers:U,stamps:q,key:ee,setScale:Me,clock:Te,pointer:ke,blur:He,pointerDown:qe,pointerUp:$,setShape:ve,modes:{toggleLineBoxMode:$e,toggleLineMode:Qe,enableLineMode(){c({lineMode:!0,lineBoxMode:!1,drawMode:!1})},disableLineMode(){c({lineMode:!1,lineBoxMode:!1,drawMode:!1})},enableLineBoxMode(){c({lineMode:!0,lineBoxMode:!0,drawMode:!1})},disableLineBoxMode(){c({lineMode:!1,lineBoxMode:!1,drawMode:!1})}},label:it}}function Vm(e,t,i){let[n,r]=(0,ps.useState)({}),a=(0,ps.useMemo)(()=>m1(e,i),[]);return(0,ps.useEffect)(()=>(a.clock.start(t,r),()=>{a.clock.stop()}),[]),{state:n,helper:a}}var tt=T(B(),1),Cr=f1();function Um(e,t){let{image:i,currentShape:n,onChange:r,hideShapeLines:a}=e,l=(0,si.useRef)(),c=(0,si.useRef)(),p=(0,si.useRef)(),m=(0,si.useRef)(),h=(0,si.useRef)(),y=(0,si.useRef)(),S=(0,si.useRef)(),w=(0,si.useRef)(),[v,x]=(0,si.useState)(null),[A,C]=(0,si.useState)(!1),{helper:I,state:E}=Vm(n,(q,ee)=>{Cr.updateTransitionBoundingBox(c.current,q,ee),Cr.updateBoundingBoxPolygon(l.current,q,ee),Cr.updateTransitionShape(y.current,q,ee),Cr.updateClosestLinePointTransform(m.current,q,ee),Cr.updateSelectBox(p.current,q,ee),Cr.updatePointLine(S.current,q,ee),Cr.updateDrawPreview(h.current,q,ee,3),Cr.updateLineBox(w.current,q),x(q.transitionDirection),C(q.transitionRotate)},r);(0,si.useEffect)(()=>{I.setShape(n||null)},t),(0,si.useEffect)(()=>{let q=()=>{I.modifiers.reset()};return document.addEventListener("mouseleave",q),()=>{document.removeEventListener("mouseleave",q)}},[]);let O=(0,tt.jsxs)(tt.Fragment,{children:[(0,tt.jsx)("marker",{id:"dot",viewBox:"0 0 10 10",refX:"5",refY:"5",markerWidth:"5",markerHeight:"5",children:(0,tt.jsx)("circle",{cx:"5",cy:"5",r:"4",className:"marker"})}),(0,tt.jsx)("marker",{id:"selected",viewBox:"0 0 10 10",refX:"5",refY:"5",markerWidth:"5",markerHeight:"5",children:(0,tt.jsx)("circle",{cx:"5",cy:"5",r:"4",fill:"#FAFF00"})}),(0,tt.jsx)("marker",{id:"resizer",viewBox:"0 0 10 10",refX:"5",refY:"5",markerWidth:"5",markerHeight:"5",children:(0,tt.jsx)("rect",{width:"10",height:"10",stroke:"#FF0DCB",fill:"#fff",strokeWidth:2})})]}),L=n?n.open?"polyline":"polygon":null,M=!E.showBoundingBox&&E.closestPoint!==null&&E.actionIntentType==="select-point",Q=E.actionIntentType==="add-open-point",V=E.transitionIntentType==="split-line",J=E.transitioning&&E.selectedStamp&&E.transitionIntentType==="stamp-shape",U=n&&L?(0,tt.jsxs)(tt.Fragment,{children:[(0,tt.jsx)(L,{fill:!E.transitioning&&E.showBoundingBox?"rgba(255, 0, 0, .5)":"none",strokeWidth:J?0:2,stroke:a?"transparent":"#000",points:n.points.map(q=>q.join(",")).join(" "),vectorEffect:"non-scaling-stroke",markerStart:E.showBoundingBox?void 0:"url(#dot)",markerMid:E.showBoundingBox?void 0:"url(#dot)",markerEnd:E.showBoundingBox?void 0:"url(#dot)",style:{pointerEvents:"none"}}),E.lineBoxMode&&E.actionIntentType==="close-line-box"?(0,tt.jsx)("polygon",{fill:"rgba(255, 0, 0, .4)",ref:w,stroke:"#000",strokeWidth:2,vectorEffect:"non-scaling-stroke"}):null,E.transitionIntentType==="draw-shape"&&E.transitioning?(0,tt.jsx)("polyline",{ref:h,fill:"none",stroke:"rgba(255, 0, 0, .5)",strokeWidth:2,vectorEffect:"non-scaling-stroke"}):null,!E.showBoundingBox&&E.selectedPoints&&E.selectedPoints.length?(0,tt.jsx)("polyline",{strokeWidth:2,vectorEffect:"non-scaling-stroke",stroke:"transparent",markerStart:"url(#selected)",markerMid:"url(#selected)",markerEnd:"url(#selected)",fill:"transparent",points:n.points.filter((q,ee)=>E.selectedPoints?.includes(ee)).map(q=>q.join(",")).join(" ")}):null,M&&E.closestPoint!==null&&n.points[E.closestPoint]?(0,tt.jsx)("polyline",{strokeWidth:2,vectorEffect:"non-scaling-stroke",stroke:"transparent",markerStart:"url(#selected)",markerMid:"url(#selected)",markerEnd:"url(#selected)",fill:"transparent",points:`${n.points[E.closestPoint][0]},${n.points[E.closestPoint][1]}`}):null,!E.transitioning&&(E.actionIntentType==="add-open-point"||E.actionIntentType==="close-shape"||E.actionIntentType==="close-shape-line")?(0,tt.jsx)("polyline",{stroke:"#000",ref:S,strokeWidth:E.actionIntentType==="close-shape"?2:1,vectorEffect:"non-scaling-stroke"}):null,E.hasClosestLine&&(!E.transitionIntentType||E.transitionIntentType==="split-line")?(0,tt.jsx)("g",{ref:m,children:(0,tt.jsx)("polyline",{style:{opacity:.5},markerStart:"url(#dot)",points:"0,0 10,10",vectorEffect:"non-scaling-stroke",fill:"transparent",strokeWidth:2})}):null,E.transitioning?(0,tt.jsx)(L,{ref:y,fill:n.open?"none":"rgba(255, 0, 0, .5)",stroke:"rgba(255, 0, 0, .5)",strokeWidth:n.open?2:0}):null,E.transitioning&&E.transitionIntentType==="select-multiple-points"?(0,tt.jsx)("rect",{ref:p,fill:"rgba(255, 255, 255, .3)",strokeWidth:1,stroke:"rgba(0,0,0,.2)",vectorEffect:"non-scaling-stroke"}):null,E.showBoundingBox?null:(0,tt.jsx)("g",{name:"controls",children:!1}),E.showBoundingBox&&!J?(0,tt.jsx)("polygon",{ref:l,strokeWidth:2,stroke:"#FF0DCB",fill:"none",markerStart:"url(#resizer)",markerMid:"url(#resizer)",markerEnd:"url(#resizer)",vectorEffect:"non-scaling-stroke"}):null]}):null;return{helper:I,state:E,isAddingPoint:Q,isSplitting:V,isStamping:J,isHoveringPoint:M,transitionDirection:v,transitionRotate:A,defs:O,editor:U}}var $c=T(H(),1),g1=T(Hs(),1),vi=T(B(),1),y1=[{name:"Default",outer:{borderWidth:4,borderColor:"rgba(255, 255, 255, .4)"},inner:{borderWidth:2,borderColor:"#000"}},{name:"High contrast",outer:{borderWidth:3,borderColor:"#fff"},inner:{borderWidth:1,borderColor:"#000"}},{name:"Lightsaber",outer:{borderWidth:"4",borderColor:"rgba(56,68,255,0.64)"},inner:{borderWidth:"2",borderColor:"#fff"}},{name:"Bright",outer:{borderWidth:"6",borderColor:"#25d527"},inner:{borderWidth:"3",borderColor:"#a916ff"}},{name:"pink",outer:{borderWidth:"4",borderColor:"#ff00ff"},inner:{borderWidth:"2",borderColor:"#ffffff"}},{name:"fine (dark)",outer:{borderWidth:"1",borderColor:"#000000"},inner:{}},{name:"fine (light)",outer:{borderWidth:"1",borderColor:"#FFF"},inner:{}}];function Wm(e){let t=e.theme||y1[0],i=Mu(),{image:n}=e,{helper:r,defs:a,editor:l,state:c,transitionDirection:p,isSplitting:m,transitionRotate:h,isHoveringPoint:y,isAddingPoint:S,isStamping:w}=Um({currentShape:e.shape||null,onChange:e.updateShape,image:e.image,hideShapeLines:!0},[]),v=E=>{r.pointer([[~~E.atlas.x,~~E.atlas.y]])};(0,$c.useEffect)(()=>{let E=O=>{r.key.up(O.key)};return document.addEventListener("keyup",E),()=>{document.removeEventListener("keyup",E)}},[]),(0,$c.useEffect)(()=>{let E=O=>{r.key.down(O.key)};return document.addEventListener("keydown",E),()=>{document.removeEventListener("keydown",E)}},[]),(0,$c.useEffect)(()=>{let E=[];return p&&E.push(`atlas-cursor-${p}`),c.actionIntentType==="cut-line"&&c.modifiers?.Shift&&E.push("atlas-cursor-cut"),(y||c.transitionIntentType==="move-shape"||c.transitionIntentType==="move-point")&&E.push("atlas-cursor-move"),S&&E.push("atlas-cursor-crosshair"),m&&E.push("atlas-cursor-copy"),h&&E.push("atlas-cursor-rotate"),c.transitionIntentType==="draw-shape"&&E.push("atlas-cursor-draw"),i?.canvas&&i.canvas.classList.add(...E),()=>{i?.canvas&&i.canvas.classList.remove(...E)}},[i?.canvas,S,y,m,c.modifiers?.Shift,c.actionIntentType,c.transitionIntentType,p,h]);let x=e.shape&&e.shape?.points.length===0,A=e.renderControls?e.renderControls(r,c,x):null,C=document.getElementById(e.controlsHtmlId||"atlas-controls"),I="shape";return(0,vi.jsx)(vi.Fragment,{children:(0,vi.jsxs)("world-object",{height:n.height,width:n.width,onMouseMove:v,onMouseDown:r.pointerDown,onMouseUp:r.pointerUp,onMouseLeave:r.blur,children:[e.shape?(0,vi.jsxs)(vi.Fragment,{children:[(0,vi.jsx)(I,{open:e.shape.open,points:e.shape.points,relativeStyle:!0,style:w?{}:t.outer}),(0,vi.jsx)(I,{open:e.shape.open,points:e.shape.points,relativeStyle:!0,style:w?{}:t.inner})]}):null,(0,vi.jsxs)(Cn,{relative:!0,interactive:!1,children:[(0,vi.jsx)("div",{style:{position:"absolute",top:0,right:0,left:0,bottom:0},children:(0,vi.jsxs)("svg",{width:"100%",height:"100%",viewBox:`0 0 ${n.width} ${n.height}`,tabIndex:-1,children:[(0,vi.jsx)("defs",{children:a}),l]})}),C?(0,g1.createPortal)(A,C,"controls"):null]})]})})}var Hm=T(B(),1);function NT(e){let t=Ce(),i=e.annotationBucket,n=e.readOnly,r=e.id,{onClick:a,isHighlighted:l}=Om(e.id),c=Nm(),p=l?c.highlighted:c[i||"hidden"]||c.hidden;if(!t)return null;if(n){let m="shape",h=e.polygon,y=h.open;return h?(0,Hm.jsx)(m,{id:`shape-${r}`,points:h.points,open:y,onClick:a,relativeStyle:!0,target:{x:0,y:0,width:t.width,height:t.height},style:p}):null}return(0,Hm.jsx)(Wm,{image:t,shape:e.polygon||{id:e.id,open:!0,points:[]},updateShape:e.updatePolygon,theme:e.theme,controlsHtmlId:e.controlsHtmlId,renderControls:e.renderControls})}var Gc=T(H(),1);var Pr=T(B(),1);function BT({src:e,errorFallback:t,interactive:i,skipSizes:n,children:r,renderViewerControls:a,viewControlsDeps:l,fluid:c,x:p,y:m,...h}){let[y,S]=(0,Gc.useState)(),w=t||hc,[v,x]=Aa(),A=(0,Gc.useMemo)(()=>{let I=x[e]?.status,E=v({id:e},{});return E?.height&&E.width&&I!=="loading"?{id:e,width:E.width,height:E.height,service:E,type:"Image",selector:{type:"BoxSelector",spatial:{x:0,y:0,width:E.width,height:E.height}},target:{type:"BoxSelector",spatial:{x:0,y:0,width:E.width,height:E.height}}}:null},[v,e,x]);if(Ft(y&&a?"overlay":"none",`canvas-portal-controls-${e}`,Ui.Provider,a&&A?{value:y||null,children:a({image:A,images:[A],type:"images"})}:{},[e,A,y,...l||[]]),!A||!A.height||!A.width)return null;let C=c?void 0:h.homePosition?h.homePosition.width/h.homePosition.height:A.width/A.height;return(0,Pr.jsx)(Bo,{resetKeys:[],fallbackRender:I=>(0,Pr.jsx)(w,{...h,...I}),children:(0,Pr.jsx)(fc,{...h,aspectRatio:C,containerProps:{style:{position:"relative"},...h.containerProps||{}},onCreated:I=>{S(I),h.onCreated&&h.onCreated(I)},children:(0,Pr.jsxs)(Ui.Provider,{value:y,children:[(0,Pr.jsx)(xr,{image:A,id:A.id,isStatic:!i,x:p,y:m},A.id),(0,Pr.jsx)(DT,{viewerPreset:y,renderViewerControls:a,image:A,src:e,viewControlsDeps:l}),r]})})})}function DT({viewerPreset:e,renderViewerControls:t,image:i,src:n,viewControlsDeps:r}){return Ft(e&&t?"overlay":"none",`canvas-portal-controls-${n}`,Ui.Provider,t&&i?{value:e||null,children:t({image:i,images:[i],type:"images"})}:{},[n,e,...r||[]]),null}var v1=T(B(),1);function jT({annotation:e,children:t}){return(0,v1.jsx)(ei,{value:{annotation:e},children:t})}var x1=T(B(),1);function VT({annotationPage:e,children:t}){return(0,x1.jsx)(ei,{value:{annotationPage:e},children:t})}var S1=T(B(),1);function UT({collection:e,children:t}){return(0,S1.jsx)(ei,{value:{collection:e},children:t})}function WT(e,t={}){return oo(t)}var Er=T(H(),1);function HT({canvasId:e}={}){let t=Ou(),i=eo(),n=(0,Er.useMemo)(()=>e?[e]:t?[t.id]:i.map(m=>m.id),[e,t,i]),[r,a]=(0,Er.useState)({}),l=fa();(0,Er.useEffect)(()=>{let m=h=>{let y=h.partOf.canvasId;y&&a(S=>({...S,[y]:h.choice}))};return l.on("choice-change",m),()=>{l.off("choice-change",m)}},[]);let c=(0,Er.useMemo)(()=>{let m=[];for(let h of n){let y=r[h];y&&m.push({canvasId:h,choice:y})}return m},[n,r]),p=(0,Er.useMemo)(()=>({makeChoice:(m,h)=>{l.emit("make-choice",{choiceId:m,...h})}}),[l]);return{choices:c,actions:p}}function qT(e,t=!1){}function QT(e){let i=Xt().manifest,n=e?e.map(r=>typeof r=="string"?r:r?.id):[];return De(r=>{let a=i?r.iiif.entities.Manifest[i]:void 0,l=a?.items||[];if(typeof e>"u")return l;let c=[];for(let p of a?.items||[])n.indexOf(p.id)!==-1&&c.push(p);return c},[n.join("/")])}var w1=T(H(),1);function $T(e,t=[]){let{id:i,selector:n}=e,r=Xt(),a=i||r.collection,l=De(c=>a?c.iiif.entities.Collection[a]:void 0,[a]);return(0,w1.useMemo)(()=>{if(l)return n?n(l):l},[l,n,...t])}var Yc=T(H(),1);function GT(e,t,i,n,r=[]){let a=_e(),l=(0,Yc.useMemo)(()=>ga(a),[a]);(0,Yc.useEffect)(()=>{let c=e;return c?(l.addEventListener(c,t,i,n),()=>{l.removeEventListener(c,t,i)}):()=>{}},[l,e,t,...r])}function YT(e,t){let{id:i,isLoaded:n,error:r,resource:a,requestId:l,cached:c}=la(e,t);return{id:i,isLoaded:n,error:r,manifest:a,requestId:l,cached:c}}var En=T(H(),1);function qm({cacheKey:e}={}){let t=Ce(),i=oo(),n=_e(),r=as(),a=mw(),[l,c]=(0,En.useState)(void 0),[p,m]=(0,En.useState)(!1),[h,y]=(0,En.useState)("idle"),[S,w]=(0,En.useState)(void 0),v=t?t.id:"undefined",x=(0,En.useMemo)(()=>{try{if(t&&i.length){let C=i[0],I=n.get(C.body[0]),O=zn(I)[0];return O&&r(O,{width:O.width||t.width,height:O.height||t.height},!0)||void 0}}catch(C){console.error(C)}},[v,e,t]),A=h==="success"&&l?l:x;return(0,En.useEffect)(()=>{(async()=>{try{if(t&&i.length){let C=i[0],I=n.get(C.body[0]),O=zn(I)[0];if(!O)return;m(!0),y("loading");try{let L=await a(O,{width:O.width||t.width,height:O.height||t.height})||void 0;c(L),y("success"),m(!1)}catch(L){y("error"),w(L)}}}catch(C){y("error"),w(C)}})()},[v,e]),(0,En.useMemo)(()=>({data:A,isFetching:p,status:h,error:S}),[A,p,h,S])}function XT(){let e=qm();return{isLoading:e.isFetching,tile:e.data?{id:e.data.id||e.data["@id"],width:e.data.width,height:e.data.height,imageService:e.data,thumbnail:void 0}:null}}var b1=T(H(),1);function KT(){let e=_e();return(0,b1.useMemo)(()=>yr(e),[e])}return Db(ZT);})();
|
|
125
125
|
/*! Bundled license information:
|
|
126
126
|
|
|
127
127
|
normalize-wheel/src/isEventSupported.js:
|