react-iiif-vault 1.2.7 → 1.3.2

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.
@@ -1,14 +1,14 @@
1
- "use strict";var ReactIIIFVault=(()=>{var zw=Object.create;var ul=Object.defineProperty;var Nw=Object.getOwnPropertyDescriptor;var Fw=Object.getOwnPropertyNames;var Bw=Object.getPrototypeOf,Dw=Object.prototype.hasOwnProperty;var xt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),jw=(e,t)=>{for(var i in t)ul(e,i,{get:t[i],enumerable:!0})},Hm=(e,t,i,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Fw(t))!Dw.call(e,o)&&o!==i&&ul(e,o,{get:()=>t[o],enumerable:!(n=Nw(t,o))||n.enumerable});return e};var A=(e,t,i)=>(i=e!=null?zw(Bw(e)):{},Hm(t||!e||!e.__esModule?ul(i,"default",{value:e,enumerable:!0}):i,e)),Vw=e=>Hm(ul({},"__esModule",{value:!0}),e);var q=xt(($A,Wm)=>{"use strict";Wm.exports=React});var ng=xt((eR,ig)=>{"use strict";var Km=!1,Pr,Rh,Th,dl,pl,Zm,fl,Ih,_h,Mh,Jm,Oh,kh,eg,tg;function li(){if(!Km){Km=!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(Oh=/\b(iPhone|iP[ao]d)/.exec(e),kh=/\b(iP[ao]d)/.exec(e),Mh=/Android/i.exec(e),eg=/FBAN\/\w+;/i.exec(e),tg=/Mobile/i.exec(e),Jm=!!/Win64/.exec(e),t){Pr=t[1]?parseFloat(t[1]):t[5]?parseFloat(t[5]):NaN,Pr&&document&&document.documentMode&&(Pr=document.documentMode);var n=/(?:Trident\/(\d+.\d+))/.exec(e);Zm=n?parseFloat(n[1])+4:Pr,Rh=t[2]?parseFloat(t[2]):NaN,Th=t[3]?parseFloat(t[3]):NaN,dl=t[4]?parseFloat(t[4]):NaN,dl?(t=/(?:Chrome\/(\d+\.\d+))/.exec(e),pl=t&&t[1]?parseFloat(t[1]):NaN):pl=NaN}else Pr=Rh=Th=pl=dl=NaN;if(i){if(i[1]){var o=/(?:Mac OS X (\d+(?:[._]\d+)?))/.exec(e);fl=o?parseFloat(o[1].replace("_",".")):!0}else fl=!1;Ih=!!i[2],_h=!!i[3]}else fl=Ih=_h=!1}}var Lh={ie:function(){return li()||Pr},ieCompatibilityMode:function(){return li()||Zm>Pr},ie64:function(){return Lh.ie()&&Jm},firefox:function(){return li()||Rh},opera:function(){return li()||Th},webkit:function(){return li()||dl},safari:function(){return Lh.webkit()},chrome:function(){return li()||pl},windows:function(){return li()||Ih},osx:function(){return li()||fl},linux:function(){return li()||_h},iphone:function(){return li()||Oh},mobile:function(){return li()||Oh||kh||Mh||tg},nativeApp:function(){return li()||eg},android:function(){return li()||Mh},ipad:function(){return li()||kh}};ig.exports=Lh});var og=xt((tR,rg)=>{"use strict";var ml=!!(typeof window<"u"&&window.document&&window.document.createElement),Qw={canUseDOM:ml,canUseWorkers:typeof Worker<"u",canUseEventListeners:ml&&!!(window.addEventListener||window.attachEvent),canUseViewport:ml&&!!window.screen,isInWorker:!ml};rg.exports=Qw});var ug=xt((iR,lg)=>{"use strict";var sg=og(),ag;sg.canUseDOM&&(ag=document.implementation&&document.implementation.hasFeature&&document.implementation.hasFeature("","")!==!0);function Yw(e,t){if(!sg.canUseDOM||t&&!("addEventListener"in document))return!1;var i="on"+e,n=i in document;if(!n){var o=document.createElement("div");o.setAttribute(i,"return;"),n=typeof o[i]=="function"}return!n&&ag&&e==="wheel"&&(n=document.implementation.hasFeature("Events.wheel","3.0")),n}lg.exports=Yw});var mg=xt((nR,fg)=>{"use strict";var Gw=ng(),$w=ug(),cg=10,hg=40,dg=800;function pg(e){var t=0,i=0,n=0,o=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*cg,o=i*cg,"deltaY"in e&&(o=e.deltaY),"deltaX"in e&&(n=e.deltaX),(n||o)&&e.deltaMode&&(e.deltaMode==1?(n*=hg,o*=hg):(n*=dg,o*=dg)),n&&!t&&(t=n<1?-1:1),o&&!i&&(i=o<1?-1:1),{spinX:t,spinY:i,pixelX:n,pixelY:o}}pg.getEventType=function(){return Gw.firefox()?"DOMMouseScroll":$w("wheel")?"wheel":"mousewheel"};fg.exports=pg});var yg=xt((rR,gg)=>{"use strict";gg.exports=mg()});var xg=xt(gl=>{"use strict";var Xw=q(),Kw=Symbol.for("react.element"),Zw=Symbol.for("react.fragment"),Jw=Object.prototype.hasOwnProperty,e1=Xw.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,t1={key:!0,ref:!0,__self:!0,__source:!0};function vg(e,t,i){var n,o={},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)Jw.call(t,n)&&!t1.hasOwnProperty(n)&&(o[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps,t)o[n]===void 0&&(o[n]=t[n]);return{$$typeof:Kw,type:e,key:a,ref:l,props:o,_owner:e1.current}}gl.Fragment=Zw;gl.jsx=vg;gl.jsxs=vg});var Y=xt((sR,Sg)=>{"use strict";Sg.exports=xg()});var bg=xt((aR,wg)=>{"use strict";function zh(e,t,i){var n,o,a,l,c;t==null&&(t=100);function p(){var f=Date.now()-l;f<t&&f>=0?n=setTimeout(p,t-f):(n=null,i||(c=e.apply(a,o),a=o=null))}var m=function(){a=this,o=arguments,l=Date.now();var f=i&&!n;return n||(n=setTimeout(p,t)),f&&(c=e.apply(a,o),a=o=null),c};return m.clear=function(){n&&(clearTimeout(n),n=null)},m.flush=function(){n&&(c=e.apply(a,o),a=o=null,clearTimeout(n),n=null)},m}zh.debounce=zh;wg.exports=zh});var kg=xt(Ge=>{"use strict";function jh(e,t){var i=e.length;e.push(t);e:for(;0<i;){var n=i-1>>>1,o=e[n];if(0<vl(o,t))e[n]=t,e[i]=o,i=n;else break e}}function Yi(e){return e.length===0?null:e[0]}function Sl(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,o=e.length,a=o>>>1;n<a;){var l=2*(n+1)-1,c=e[l],p=l+1,m=e[p];if(0>vl(c,i))p<o&&0>vl(m,c)?(e[n]=m,e[p]=i,n=p):(e[n]=c,e[l]=i,n=l);else if(p<o&&0>vl(m,i))e[n]=m,e[p]=i,n=p;else break e}}return t}function vl(e,t){var i=e.sortIndex-t.sortIndex;return i!==0?i:e.id-t.id}typeof performance=="object"&&typeof performance.now=="function"?(Cg=performance,Ge.unstable_now=function(){return Cg.now()}):(Fh=Date,Eg=Fh.now(),Ge.unstable_now=function(){return Fh.now()-Eg});var Cg,Fh,Eg,dn=[],Qn=[],s1=1,ki=null,Ht=3,wl=!1,Cr=!1,ws=!1,Tg=typeof setTimeout=="function"?setTimeout:null,Ig=typeof clearTimeout=="function"?clearTimeout:null,Ag=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function Vh(e){for(var t=Yi(Qn);t!==null;){if(t.callback===null)Sl(Qn);else if(t.startTime<=e)Sl(Qn),t.sortIndex=t.expirationTime,jh(dn,t);else break;t=Yi(Qn)}}function Uh(e){if(ws=!1,Vh(e),!Cr)if(Yi(dn)!==null)Cr=!0,Wh(Hh);else{var t=Yi(Qn);t!==null&&qh(Uh,t.startTime-e)}}function Hh(e,t){Cr=!1,ws&&(ws=!1,Ig(bs),bs=-1),wl=!0;var i=Ht;try{for(Vh(t),ki=Yi(dn);ki!==null&&(!(ki.expirationTime>t)||e&&!Og());){var n=ki.callback;if(typeof n=="function"){ki.callback=null,Ht=ki.priorityLevel;var o=n(ki.expirationTime<=t);t=Ge.unstable_now(),typeof o=="function"?ki.callback=o:ki===Yi(dn)&&Sl(dn),Vh(t)}else Sl(dn);ki=Yi(dn)}if(ki!==null)var a=!0;else{var l=Yi(Qn);l!==null&&qh(Uh,l.startTime-t),a=!1}return a}finally{ki=null,Ht=i,wl=!1}}var bl=!1,xl=null,bs=-1,_g=5,Mg=-1;function Og(){return!(Ge.unstable_now()-Mg<_g)}function Bh(){if(xl!==null){var e=Ge.unstable_now();Mg=e;var t=!0;try{t=xl(!0,e)}finally{t?Ss():(bl=!1,xl=null)}}else bl=!1}var Ss;typeof Ag=="function"?Ss=function(){Ag(Bh)}:typeof MessageChannel<"u"?(Dh=new MessageChannel,Rg=Dh.port2,Dh.port1.onmessage=Bh,Ss=function(){Rg.postMessage(null)}):Ss=function(){Tg(Bh,0)};var Dh,Rg;function Wh(e){xl=e,bl||(bl=!0,Ss())}function qh(e,t){bs=Tg(function(){e(Ge.unstable_now())},t)}Ge.unstable_IdlePriority=5;Ge.unstable_ImmediatePriority=1;Ge.unstable_LowPriority=4;Ge.unstable_NormalPriority=3;Ge.unstable_Profiling=null;Ge.unstable_UserBlockingPriority=2;Ge.unstable_cancelCallback=function(e){e.callback=null};Ge.unstable_continueExecution=function(){Cr||wl||(Cr=!0,Wh(Hh))};Ge.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"):_g=0<e?Math.floor(1e3/e):5};Ge.unstable_getCurrentPriorityLevel=function(){return Ht};Ge.unstable_getFirstCallbackNode=function(){return Yi(dn)};Ge.unstable_next=function(e){switch(Ht){case 1:case 2:case 3:var t=3;break;default:t=Ht}var i=Ht;Ht=t;try{return e()}finally{Ht=i}};Ge.unstable_pauseExecution=function(){};Ge.unstable_requestPaint=function(){};Ge.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var i=Ht;Ht=e;try{return t()}finally{Ht=i}};Ge.unstable_scheduleCallback=function(e,t,i){var n=Ge.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 o=-1;break;case 2:o=250;break;case 5:o=1073741823;break;case 4:o=1e4;break;default:o=5e3}return o=i+o,e={id:s1++,callback:t,priorityLevel:e,startTime:i,expirationTime:o,sortIndex:-1},i>n?(e.sortIndex=i,jh(Qn,e),Yi(dn)===null&&e===Yi(Qn)&&(ws?(Ig(bs),bs=-1):ws=!0,qh(Uh,i-n))):(e.sortIndex=o,jh(dn,e),Cr||wl||(Cr=!0,Wh(Hh))),e};Ge.unstable_shouldYield=Og;Ge.unstable_wrapCallback=function(e){var t=Ht;return function(){var i=Ht;Ht=t;try{return e.apply(this,arguments)}finally{Ht=i}}}});var zg=xt((hR,Lg)=>{"use strict";Lg.exports=kg()});var Fg=xt((dR,Ng)=>{"use strict";Ng.exports=function(t){var i={},n=q(),o=zg(),a=Object.assign;function l(r){for(var s="https://reactjs.org/docs/error-decoder.html?invariant="+r,u=1;u<arguments.length;u++)s+="&args[]="+encodeURIComponent(arguments[u]);return"Minified React error #"+r+"; 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"),f=Symbol.for("react.fragment"),y=Symbol.for("react.strict_mode"),w=Symbol.for("react.profiler"),P=Symbol.for("react.provider"),v=Symbol.for("react.context"),x=Symbol.for("react.forward_ref"),C=Symbol.for("react.suspense"),E=Symbol.for("react.suspense_list"),T=Symbol.for("react.memo"),R=Symbol.for("react.lazy");Symbol.for("react.scope"),Symbol.for("react.debug_trace_mode");var G=Symbol.for("react.offscreen");Symbol.for("react.legacy_hidden"),Symbol.for("react.cache"),Symbol.for("react.tracing_marker");var V=Symbol.iterator;function O(r){return r===null||typeof r!="object"?null:(r=V&&r[V]||r["@@iterator"],typeof r=="function"?r:null)}function L(r){if(r==null)return null;if(typeof r=="function")return r.displayName||r.name||null;if(typeof r=="string")return r;switch(r){case f:return"Fragment";case m:return"Portal";case w:return"Profiler";case y:return"StrictMode";case C:return"Suspense";case E:return"SuspenseList"}if(typeof r=="object")switch(r.$$typeof){case v:return(r.displayName||"Context")+".Consumer";case P:return(r._context.displayName||"Context")+".Provider";case x:var s=r.render;return r=r.displayName,r||(r=s.displayName||s.name||"",r=r!==""?"ForwardRef("+r+")":"ForwardRef"),r;case T:return s=r.displayName||null,s!==null?s:L(r.type)||"Memo";case R:s=r._payload,r=r._init;try{return L(r(s))}catch{}}return null}function F(r){var s=r.type;switch(r.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 r=s.render,r=r.displayName||r.name||"",s.displayName||(r!==""?"ForwardRef("+r+")":"ForwardRef");case 7:return"Fragment";case 5:return s;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return L(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(r){var s=r,u=r;if(r.alternate)for(;s.return;)s=s.return;else{r=s;do s=r,s.flags&4098&&(u=s.return),r=s.return;while(r)}return s.tag===3?u:null}function J(r){if(j(r)!==r)throw Error(l(188))}function $(r){var s=r.alternate;if(!s){if(s=j(r),s===null)throw Error(l(188));return s!==r?null:r}for(var u=r,h=s;;){var d=u.return;if(d===null)break;var g=d.alternate;if(g===null){if(h=d.return,h!==null){u=h;continue}break}if(d.child===g.child){for(g=d.child;g;){if(g===u)return J(d),r;if(g===h)return J(d),s;g=g.sibling}throw Error(l(188))}if(u.return!==h.return)u=d,h=g;else{for(var S=!1,I=d.child;I;){if(I===u){S=!0,u=d,h=g;break}if(I===h){S=!0,h=d,u=g;break}I=I.sibling}if(!S){for(I=g.child;I;){if(I===u){S=!0,u=g,h=d;break}if(I===h){S=!0,h=g,u=d;break}I=I.sibling}if(!S)throw Error(l(189))}}if(u.alternate!==h)throw Error(l(190))}if(u.tag!==3)throw Error(l(188));return u.stateNode.current===u?r:s}function ne(r){return r=$(r),r!==null?Ce(r):null}function Ce(r){if(r.tag===5||r.tag===6)return r;for(r=r.child;r!==null;){var s=Ce(r);if(s!==null)return s;r=r.sibling}return null}function Me(r){if(r.tag===5||r.tag===6)return r;for(r=r.child;r!==null;){if(r.tag!==4){var s=Me(r);if(s!==null)return s}r=r.sibling}return null}var ke=Array.isArray,ve=t.getPublicInstance,it=t.getRootHostContext,$e=t.getChildHostContext,yt=t.prepareForCommit,de=t.resetAfterCommit,H=t.createInstance,ye=t.appendInitialChild,He=t.finalizeInitialChildren,N=t.prepareUpdate,W=t.shouldSetTextContent,he=t.createTextInstance,fe=t.scheduleTimeout,me=t.cancelTimeout,Ve=t.noTimeout,Ue=t.isPrimaryRenderer,Ae=t.supportsMutation,We=t.supportsPersistence,ee=t.supportsHydration,Re=t.getInstanceFromNode,Se=t.preparePortalMount,Pi=t.getCurrentEventPriority,ei=t.detachDeletedInstance,Lt=t.supportsMicrotasks,fi=t.scheduleMicrotask,Ci=t.supportsTestSelectors,ac=t.findFiberRoot,ma=t.getBoundingRect,Ko=t.getTextContent,nn=t.isHiddenSubtree,Zo=t.matchAccessibilityRole,lc=t.setFocusIfFocusable,Q=t.setupIntersectionObserver,M=t.appendChild,X=t.appendChildToContainer,K=t.commitTextUpdate,Pe=t.commitMount,Te=t.commitUpdate,Be=t.insertBefore,D=t.insertInContainerBefore,U=t.removeChild,ue=t.removeChildFromContainer,oe=t.resetTextContent,se=t.hideInstance,Ie=t.hideTextInstance,Xe=t.unhideInstance,Ke=t.unhideTextInstance,qe=t.clearContainer,Ct=t.cloneInstance,st=t.createContainerChildSet,Et=t.appendChildToContainerChildSet,kn=t.finalizeContainerChildren,ji=t.replaceContainerChildren,dr=t.cloneHiddenInstance,Jo=t.cloneHiddenTextInstance,ga=t.canHydrateInstance,ES=t.canHydrateTextInstance,AS=t.canHydrateSuspenseInstance,sf=t.isSuspenseInstancePending,uc=t.isSuspenseInstanceFallback,RS=t.getSuspenseInstanceFallbackErrorDetails,TS=t.registerSuspenseInstanceRetry,ya=t.getNextHydratableSibling,IS=t.getFirstHydratableChild,_S=t.getFirstHydratableChildWithinContainer,MS=t.getFirstHydratableChildWithinSuspenseInstance,OS=t.hydrateInstance,kS=t.hydrateTextInstance,LS=t.hydrateSuspenseInstance,zS=t.getNextHydratableInstanceAfterSuspenseInstance,NS=t.commitHydratedContainer,FS=t.commitHydratedSuspenseInstance,BS=t.clearSuspenseBoundary,DS=t.clearSuspenseBoundaryFromContainer,jS=t.shouldDeleteUnhydratedTailInstances,VS=t.didNotMatchHydratedContainerTextInstance,US=t.didNotMatchHydratedTextInstance,cc;function es(r){if(cc===void 0)try{throw Error()}catch(u){var s=u.stack.trim().match(/\n( *(at )?)/);cc=s&&s[1]||""}return`
2
- `+cc+r}var hc=!1;function dc(r,s){if(!r||hc)return"";hc=!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 h=Z}Reflect.construct(r,[],s)}else{try{s.call()}catch(Z){h=Z}r.call(s.prototype)}else{try{throw Error()}catch(Z){h=Z}r()}}catch(Z){if(Z&&h&&typeof Z.stack=="string"){for(var d=Z.stack.split(`
3
- `),g=h.stack.split(`
4
- `),S=d.length-1,I=g.length-1;1<=S&&0<=I&&d[S]!==g[I];)I--;for(;1<=S&&0<=I;S--,I--)if(d[S]!==g[I]){if(S!==1||I!==1)do if(S--,I--,0>I||d[S]!==g[I]){var z=`
5
- `+d[S].replace(" at new "," at ");return r.displayName&&z.includes("<anonymous>")&&(z=z.replace("<anonymous>",r.displayName)),z}while(1<=S&&0<=I);break}}}finally{hc=!1,Error.prepareStackTrace=u}return(r=r?r.displayName||r.name:"")?es(r):""}var HS=Object.prototype.hasOwnProperty,pc=[],eo=-1;function Ln(r){return{current:r}}function Ze(r){0>eo||(r.current=pc[eo],pc[eo]=null,eo--)}function Ye(r,s){eo++,pc[eo]=r.current,r.current=s}var zn={},Bt=Ln(zn),ti=Ln(!1),pr=zn;function to(r,s){var u=r.type.contextTypes;if(!u)return zn;var h=r.stateNode;if(h&&h.__reactInternalMemoizedUnmaskedChildContext===s)return h.__reactInternalMemoizedMaskedChildContext;var d={},g;for(g in u)d[g]=s[g];return h&&(r=r.stateNode,r.__reactInternalMemoizedUnmaskedChildContext=s,r.__reactInternalMemoizedMaskedChildContext=d),d}function ii(r){return r=r.childContextTypes,r!=null}function va(){Ze(ti),Ze(Bt)}function af(r,s,u){if(Bt.current!==zn)throw Error(l(168));Ye(Bt,s),Ye(ti,u)}function lf(r,s,u){var h=r.stateNode;if(s=s.childContextTypes,typeof h.getChildContext!="function")return u;h=h.getChildContext();for(var d in h)if(!(d in s))throw Error(l(108,F(r)||"Unknown",d));return a({},u,h)}function xa(r){return r=(r=r.stateNode)&&r.__reactInternalMemoizedMergedChildContext||zn,pr=Bt.current,Ye(Bt,r),Ye(ti,ti.current),!0}function uf(r,s,u){var h=r.stateNode;if(!h)throw Error(l(169));u?(r=lf(r,s,pr),h.__reactInternalMemoizedMergedChildContext=r,Ze(ti),Ze(Bt),Ye(Bt,r)):Ze(ti),Ye(ti,u)}var Vi=Math.clz32?Math.clz32:QS,WS=Math.log,qS=Math.LN2;function QS(r){return r>>>=0,r===0?32:31-(WS(r)/qS|0)|0}var Sa=64,wa=4194304;function ts(r){switch(r&-r){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 r&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return r&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return r}}function ba(r,s){var u=r.pendingLanes;if(u===0)return 0;var h=0,d=r.suspendedLanes,g=r.pingedLanes,S=u&268435455;if(S!==0){var I=S&~d;I!==0?h=ts(I):(g&=S,g!==0&&(h=ts(g)))}else S=u&~d,S!==0?h=ts(S):g!==0&&(h=ts(g));if(h===0)return 0;if(s!==0&&s!==h&&!(s&d)&&(d=h&-h,g=s&-s,d>=g||d===16&&(g&4194240)!==0))return s;if(h&4&&(h|=u&16),s=r.entangledLanes,s!==0)for(r=r.entanglements,s&=h;0<s;)u=31-Vi(s),d=1<<u,h|=r[u],s&=~d;return h}function YS(r,s){switch(r){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 GS(r,s){for(var u=r.suspendedLanes,h=r.pingedLanes,d=r.expirationTimes,g=r.pendingLanes;0<g;){var S=31-Vi(g),I=1<<S,z=d[S];z===-1?(!(I&u)||I&h)&&(d[S]=YS(I,s)):z<=s&&(r.expiredLanes|=I),g&=~I}}function fc(r){return r=r.pendingLanes&-1073741825,r!==0?r:r&1073741824?1073741824:0}function cf(){var r=Sa;return Sa<<=1,!(Sa&4194240)&&(Sa=64),r}function mc(r){for(var s=[],u=0;31>u;u++)s.push(r);return s}function is(r,s,u){r.pendingLanes|=s,s!==536870912&&(r.suspendedLanes=0,r.pingedLanes=0),r=r.eventTimes,s=31-Vi(s),r[s]=u}function $S(r,s){var u=r.pendingLanes&~s;r.pendingLanes=s,r.suspendedLanes=0,r.pingedLanes=0,r.expiredLanes&=s,r.mutableReadLanes&=s,r.entangledLanes&=s,s=r.entanglements;var h=r.eventTimes;for(r=r.expirationTimes;0<u;){var d=31-Vi(u),g=1<<d;s[d]=0,h[d]=-1,r[d]=-1,u&=~g}}function gc(r,s){var u=r.entangledLanes|=s;for(r=r.entanglements;u;){var h=31-Vi(u),d=1<<h;d&s|r[h]&s&&(r[h]|=s),u&=~d}}var Le=0;function hf(r){return r&=-r,1<r?4<r?r&268435455?16:536870912:4:1}var yc=o.unstable_scheduleCallback,df=o.unstable_cancelCallback,XS=o.unstable_shouldYield,KS=o.unstable_requestPaint,It=o.unstable_now,vc=o.unstable_ImmediatePriority,ZS=o.unstable_UserBlockingPriority,xc=o.unstable_NormalPriority,JS=o.unstable_IdlePriority,Pa=null,rn=null;function ew(r){if(rn&&typeof rn.onCommitFiberRoot=="function")try{rn.onCommitFiberRoot(Pa,r,void 0,(r.current.flags&128)===128)}catch{}}function tw(r,s){return r===s&&(r!==0||1/r===1/s)||r!==r&&s!==s}var Ui=typeof Object.is=="function"?Object.is:tw,Sn=null,Ca=!1,Sc=!1;function pf(r){Sn===null?Sn=[r]:Sn.push(r)}function iw(r){Ca=!0,pf(r)}function on(){if(!Sc&&Sn!==null){Sc=!0;var r=0,s=Le;try{var u=Sn;for(Le=1;r<u.length;r++){var h=u[r];do h=h(!0);while(h!==null)}Sn=null,Ca=!1}catch(d){throw Sn!==null&&(Sn=Sn.slice(r+1)),yc(vc,on),d}finally{Le=s,Sc=!1}}return null}var io=[],no=0,Ea=null,Aa=0,Ei=[],Ai=0,fr=null,wn=1,bn="";function mr(r,s){io[no++]=Aa,io[no++]=Ea,Ea=r,Aa=s}function ff(r,s,u){Ei[Ai++]=wn,Ei[Ai++]=bn,Ei[Ai++]=fr,fr=r;var h=wn;r=bn;var d=32-Vi(h)-1;h&=~(1<<d),u+=1;var g=32-Vi(s)+d;if(30<g){var S=d-d%5;g=(h&(1<<S)-1).toString(32),h>>=S,d-=S,wn=1<<32-Vi(s)+d|u<<d|h,bn=g+r}else wn=1<<g|u<<d|h,bn=r}function wc(r){r.return!==null&&(mr(r,1),ff(r,1,0))}function bc(r){for(;r===Ea;)Ea=io[--no],io[no]=null,Aa=io[--no],io[no]=null;for(;r===fr;)fr=Ei[--Ai],Ei[Ai]=null,bn=Ei[--Ai],Ei[Ai]=null,wn=Ei[--Ai],Ei[Ai]=null}var mi=null,Ri=null,nt=!1,ns=!1,Hi=null;function mf(r,s){var u=Oi(5,null,null,0);u.elementType="DELETED",u.stateNode=s,u.return=r,s=r.deletions,s===null?(r.deletions=[u],r.flags|=16):s.push(u)}function gf(r,s){switch(r.tag){case 5:return s=ga(s,r.type,r.pendingProps),s!==null?(r.stateNode=s,mi=r,Ri=IS(s),!0):!1;case 6:return s=ES(s,r.pendingProps),s!==null?(r.stateNode=s,mi=r,Ri=null,!0):!1;case 13:if(s=AS(s),s!==null){var u=fr!==null?{id:wn,overflow:bn}:null;return r.memoizedState={dehydrated:s,treeContext:u,retryLane:1073741824},u=Oi(18,null,null,0),u.stateNode=s,u.return=r,r.child=u,mi=r,Ri=null,!0}return!1;default:return!1}}function Pc(r){return(r.mode&1)!==0&&(r.flags&128)===0}function Cc(r){if(nt){var s=Ri;if(s){var u=s;if(!gf(r,s)){if(Pc(r))throw Error(l(418));s=ya(u);var h=mi;s&&gf(r,s)?mf(h,u):(r.flags=r.flags&-4097|2,nt=!1,mi=r)}}else{if(Pc(r))throw Error(l(418));r.flags=r.flags&-4097|2,nt=!1,mi=r}}}function yf(r){for(r=r.return;r!==null&&r.tag!==5&&r.tag!==3&&r.tag!==13;)r=r.return;mi=r}function Ra(r){if(!ee||r!==mi)return!1;if(!nt)return yf(r),nt=!0,!1;if(r.tag!==3&&(r.tag!==5||jS(r.type)&&!W(r.type,r.memoizedProps))){var s=Ri;if(s){if(Pc(r))throw vf(),Error(l(418));for(;s;)mf(r,s),s=ya(s)}}if(yf(r),r.tag===13){if(!ee)throw Error(l(316));if(r=r.memoizedState,r=r!==null?r.dehydrated:null,!r)throw Error(l(317));Ri=zS(r)}else Ri=mi?ya(r.stateNode):null;return!0}function vf(){for(var r=Ri;r;)r=ya(r)}function ro(){ee&&(Ri=mi=null,ns=nt=!1)}function Ec(r){Hi===null?Hi=[r]:Hi.push(r)}var nw=c.ReactCurrentBatchConfig;function Ta(r,s){if(Ui(r,s))return!0;if(typeof r!="object"||r===null||typeof s!="object"||s===null)return!1;var u=Object.keys(r),h=Object.keys(s);if(u.length!==h.length)return!1;for(h=0;h<u.length;h++){var d=u[h];if(!HS.call(s,d)||!Ui(r[d],s[d]))return!1}return!0}function rw(r){switch(r.tag){case 5:return es(r.type);case 16:return es("Lazy");case 13:return es("Suspense");case 19:return es("SuspenseList");case 0:case 2:case 15:return r=dc(r.type,!1),r;case 11:return r=dc(r.type.render,!1),r;case 1:return r=dc(r.type,!0),r;default:return""}}function Wi(r,s){if(r&&r.defaultProps){s=a({},s),r=r.defaultProps;for(var u in r)s[u]===void 0&&(s[u]=r[u]);return s}return s}var Ia=Ln(null),_a=null,oo=null,Ac=null;function Rc(){Ac=oo=_a=null}function xf(r,s,u){Ue?(Ye(Ia,s._currentValue),s._currentValue=u):(Ye(Ia,s._currentValue2),s._currentValue2=u)}function Tc(r){var s=Ia.current;Ze(Ia),Ue?r._currentValue=s:r._currentValue2=s}function Ic(r,s,u){for(;r!==null;){var h=r.alternate;if((r.childLanes&s)!==s?(r.childLanes|=s,h!==null&&(h.childLanes|=s)):h!==null&&(h.childLanes&s)!==s&&(h.childLanes|=s),r===u)break;r=r.return}}function so(r,s){_a=r,Ac=oo=null,r=r.dependencies,r!==null&&r.firstContext!==null&&(r.lanes&s&&(ni=!0),r.firstContext=null)}function Ti(r){var s=Ue?r._currentValue:r._currentValue2;if(Ac!==r)if(r={context:r,memoizedValue:s,next:null},oo===null){if(_a===null)throw Error(l(308));oo=r,_a.dependencies={lanes:0,firstContext:r}}else oo=oo.next=r;return s}var gr=null;function _c(r){gr===null?gr=[r]:gr.push(r)}function Sf(r,s,u,h){var d=s.interleaved;return d===null?(u.next=u,_c(s)):(u.next=d.next,d.next=u),s.interleaved=u,sn(r,h)}function sn(r,s){r.lanes|=s;var u=r.alternate;for(u!==null&&(u.lanes|=s),u=r,r=r.return;r!==null;)r.childLanes|=s,u=r.alternate,u!==null&&(u.childLanes|=s),u=r,r=r.return;return u.tag===3?u.stateNode:null}var Nn=!1;function Mc(r){r.updateQueue={baseState:r.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function wf(r,s){r=r.updateQueue,s.updateQueue===r&&(s.updateQueue={baseState:r.baseState,firstBaseUpdate:r.firstBaseUpdate,lastBaseUpdate:r.lastBaseUpdate,shared:r.shared,effects:r.effects})}function Pn(r,s){return{eventTime:r,lane:s,tag:0,payload:null,callback:null,next:null}}function Fn(r,s,u){var h=r.updateQueue;if(h===null)return null;if(h=h.shared,_e&2){var d=h.pending;return d===null?s.next=s:(s.next=d.next,d.next=s),h.pending=s,sn(r,u)}return d=h.interleaved,d===null?(s.next=s,_c(h)):(s.next=d.next,d.next=s),h.interleaved=s,sn(r,u)}function Ma(r,s,u){if(s=s.updateQueue,s!==null&&(s=s.shared,(u&4194240)!==0)){var h=s.lanes;h&=r.pendingLanes,u|=h,s.lanes=u,gc(r,u)}}function bf(r,s){var u=r.updateQueue,h=r.alternate;if(h!==null&&(h=h.updateQueue,u===h)){var d=null,g=null;if(u=u.firstBaseUpdate,u!==null){do{var S={eventTime:u.eventTime,lane:u.lane,tag:u.tag,payload:u.payload,callback:u.callback,next:null};g===null?d=g=S:g=g.next=S,u=u.next}while(u!==null);g===null?d=g=s:g=g.next=s}else d=g=s;u={baseState:h.baseState,firstBaseUpdate:d,lastBaseUpdate:g,shared:h.shared,effects:h.effects},r.updateQueue=u;return}r=u.lastBaseUpdate,r===null?u.firstBaseUpdate=s:r.next=s,u.lastBaseUpdate=s}function Oa(r,s,u,h){var d=r.updateQueue;Nn=!1;var g=d.firstBaseUpdate,S=d.lastBaseUpdate,I=d.shared.pending;if(I!==null){d.shared.pending=null;var z=I,Z=z.next;z.next=null,S===null?g=Z:S.next=Z,S=z;var le=r.alternate;le!==null&&(le=le.updateQueue,I=le.lastBaseUpdate,I!==S&&(I===null?le.firstBaseUpdate=Z:I.next=Z,le.lastBaseUpdate=z))}if(g!==null){var we=d.baseState;S=0,le=Z=z=null,I=g;do{var te=I.lane,Je=I.eventTime;if((h&te)===te){le!==null&&(le=le.next={eventTime:Je,lane:0,tag:I.tag,payload:I.payload,callback:I.callback,next:null});e:{var Qe=r,si=I;switch(te=s,Je=u,si.tag){case 1:if(Qe=si.payload,typeof Qe=="function"){we=Qe.call(Je,we,te);break e}we=Qe;break e;case 3:Qe.flags=Qe.flags&-65537|128;case 0:if(Qe=si.payload,te=typeof Qe=="function"?Qe.call(Je,we,te):Qe,te==null)break e;we=a({},we,te);break e;case 2:Nn=!0}}I.callback!==null&&I.lane!==0&&(r.flags|=64,te=d.effects,te===null?d.effects=[I]:te.push(I))}else Je={eventTime:Je,lane:te,tag:I.tag,payload:I.payload,callback:I.callback,next:null},le===null?(Z=le=Je,z=we):le=le.next=Je,S|=te;if(I=I.next,I===null){if(I=d.shared.pending,I===null)break;te=I,I=te.next,te.next=null,d.lastBaseUpdate=te,d.shared.pending=null}}while(!0);if(le===null&&(z=we),d.baseState=z,d.firstBaseUpdate=Z,d.lastBaseUpdate=le,s=d.shared.interleaved,s!==null){d=s;do S|=d.lane,d=d.next;while(d!==s)}else g===null&&(d.shared.lanes=0);vr|=S,r.lanes=S,r.memoizedState=we}}function Pf(r,s,u){if(r=s.effects,s.effects=null,r!==null)for(s=0;s<r.length;s++){var h=r[s],d=h.callback;if(d!==null){if(h.callback=null,h=u,typeof d!="function")throw Error(l(191,d));d.call(h)}}}var Cf=new n.Component().refs;function Oc(r,s,u,h){s=r.memoizedState,u=u(h,s),u=u==null?s:a({},s,u),r.memoizedState=u,r.lanes===0&&(r.updateQueue.baseState=u)}var ka={isMounted:function(r){return(r=r._reactInternals)?j(r)===r:!1},enqueueSetState:function(r,s,u){r=r._reactInternals;var h=Ut(),d=jn(r),g=Pn(h,d);g.payload=s,u!=null&&(g.callback=u),s=Fn(r,g,d),s!==null&&(Mi(s,r,d,h),Ma(s,r,d))},enqueueReplaceState:function(r,s,u){r=r._reactInternals;var h=Ut(),d=jn(r),g=Pn(h,d);g.tag=1,g.payload=s,u!=null&&(g.callback=u),s=Fn(r,g,d),s!==null&&(Mi(s,r,d,h),Ma(s,r,d))},enqueueForceUpdate:function(r,s){r=r._reactInternals;var u=Ut(),h=jn(r),d=Pn(u,h);d.tag=2,s!=null&&(d.callback=s),s=Fn(r,d,h),s!==null&&(Mi(s,r,h,u),Ma(s,r,h))}};function Ef(r,s,u,h,d,g,S){return r=r.stateNode,typeof r.shouldComponentUpdate=="function"?r.shouldComponentUpdate(h,g,S):s.prototype&&s.prototype.isPureReactComponent?!Ta(u,h)||!Ta(d,g):!0}function Af(r,s,u){var h=!1,d=zn,g=s.contextType;return typeof g=="object"&&g!==null?g=Ti(g):(d=ii(s)?pr:Bt.current,h=s.contextTypes,g=(h=h!=null)?to(r,d):zn),s=new s(u,g),r.memoizedState=s.state!==null&&s.state!==void 0?s.state:null,s.updater=ka,r.stateNode=s,s._reactInternals=r,h&&(r=r.stateNode,r.__reactInternalMemoizedUnmaskedChildContext=d,r.__reactInternalMemoizedMaskedChildContext=g),s}function Rf(r,s,u,h){r=s.state,typeof s.componentWillReceiveProps=="function"&&s.componentWillReceiveProps(u,h),typeof s.UNSAFE_componentWillReceiveProps=="function"&&s.UNSAFE_componentWillReceiveProps(u,h),s.state!==r&&ka.enqueueReplaceState(s,s.state,null)}function kc(r,s,u,h){var d=r.stateNode;d.props=u,d.state=r.memoizedState,d.refs=Cf,Mc(r);var g=s.contextType;typeof g=="object"&&g!==null?d.context=Ti(g):(g=ii(s)?pr:Bt.current,d.context=to(r,g)),d.state=r.memoizedState,g=s.getDerivedStateFromProps,typeof g=="function"&&(Oc(r,s,g,u),d.state=r.memoizedState),typeof s.getDerivedStateFromProps=="function"||typeof d.getSnapshotBeforeUpdate=="function"||typeof d.UNSAFE_componentWillMount!="function"&&typeof d.componentWillMount!="function"||(s=d.state,typeof d.componentWillMount=="function"&&d.componentWillMount(),typeof d.UNSAFE_componentWillMount=="function"&&d.UNSAFE_componentWillMount(),s!==d.state&&ka.enqueueReplaceState(d,d.state,null),Oa(r,u,d,h),d.state=r.memoizedState),typeof d.componentDidMount=="function"&&(r.flags|=4194308)}function rs(r,s,u){if(r=u.ref,r!==null&&typeof r!="function"&&typeof r!="object"){if(u._owner){if(u=u._owner,u){if(u.tag!==1)throw Error(l(309));var h=u.stateNode}if(!h)throw Error(l(147,r));var d=h,g=""+r;return s!==null&&s.ref!==null&&typeof s.ref=="function"&&s.ref._stringRef===g?s.ref:(s=function(S){var I=d.refs;I===Cf&&(I=d.refs={}),S===null?delete I[g]:I[g]=S},s._stringRef=g,s)}if(typeof r!="string")throw Error(l(284));if(!u._owner)throw Error(l(290,r))}return r}function La(r,s){throw r=Object.prototype.toString.call(s),Error(l(31,r==="[object Object]"?"object with keys {"+Object.keys(s).join(", ")+"}":r))}function Tf(r){var s=r._init;return s(r._payload)}function If(r){function s(k,_){if(r){var B=k.deletions;B===null?(k.deletions=[_],k.flags|=16):B.push(_)}}function u(k,_){if(!r)return null;for(;_!==null;)s(k,_),_=_.sibling;return null}function h(k,_){for(k=new Map;_!==null;)_.key!==null?k.set(_.key,_):k.set(_.index,_),_=_.sibling;return k}function d(k,_){return k=Un(k,_),k.index=0,k.sibling=null,k}function g(k,_,B){return k.index=B,r?(B=k.alternate,B!==null?(B=B.index,B<_?(k.flags|=2,_):B):(k.flags|=2,_)):(k.flags|=1048576,_)}function S(k){return r&&k.alternate===null&&(k.flags|=2),k}function I(k,_,B,ie){return _===null||_.tag!==6?(_=Sh(B,k.mode,ie),_.return=k,_):(_=d(_,B),_.return=k,_)}function z(k,_,B,ie){var ge=B.type;return ge===f?le(k,_,B.props.children,ie,B.key):_!==null&&(_.elementType===ge||typeof ge=="object"&&ge!==null&&ge.$$typeof===R&&Tf(ge)===_.type)?(ie=d(_,B.props),ie.ref=rs(k,_,B),ie.return=k,ie):(ie=sl(B.type,B.key,B.props,null,k.mode,ie),ie.ref=rs(k,_,B),ie.return=k,ie)}function Z(k,_,B,ie){return _===null||_.tag!==4||_.stateNode.containerInfo!==B.containerInfo||_.stateNode.implementation!==B.implementation?(_=wh(B,k.mode,ie),_.return=k,_):(_=d(_,B.children||[]),_.return=k,_)}function le(k,_,B,ie,ge){return _===null||_.tag!==7?(_=br(B,k.mode,ie,ge),_.return=k,_):(_=d(_,B),_.return=k,_)}function we(k,_,B){if(typeof _=="string"&&_!==""||typeof _=="number")return _=Sh(""+_,k.mode,B),_.return=k,_;if(typeof _=="object"&&_!==null){switch(_.$$typeof){case p:return B=sl(_.type,_.key,_.props,null,k.mode,B),B.ref=rs(k,null,_),B.return=k,B;case m:return _=wh(_,k.mode,B),_.return=k,_;case R:var ie=_._init;return we(k,ie(_._payload),B)}if(ke(_)||O(_))return _=br(_,k.mode,B,null),_.return=k,_;La(k,_)}return null}function te(k,_,B,ie){var ge=_!==null?_.key:null;if(typeof B=="string"&&B!==""||typeof B=="number")return ge!==null?null:I(k,_,""+B,ie);if(typeof B=="object"&&B!==null){switch(B.$$typeof){case p:return B.key===ge?z(k,_,B,ie):null;case m:return B.key===ge?Z(k,_,B,ie):null;case R:return ge=B._init,te(k,_,ge(B._payload),ie)}if(ke(B)||O(B))return ge!==null?null:le(k,_,B,ie,null);La(k,B)}return null}function Je(k,_,B,ie,ge){if(typeof ie=="string"&&ie!==""||typeof ie=="number")return k=k.get(B)||null,I(_,k,""+ie,ge);if(typeof ie=="object"&&ie!==null){switch(ie.$$typeof){case p:return k=k.get(ie.key===null?B:ie.key)||null,z(_,k,ie,ge);case m:return k=k.get(ie.key===null?B:ie.key)||null,Z(_,k,ie,ge);case R:var Ee=ie._init;return Je(k,_,B,Ee(ie._payload),ge)}if(ke(ie)||O(ie))return k=k.get(B)||null,le(_,k,ie,ge,null);La(_,ie)}return null}function Qe(k,_,B,ie){for(var ge=null,Ee=null,be=_,ze=_=0,Ot=null;be!==null&&ze<B.length;ze++){be.index>ze?(Ot=be,be=null):Ot=be.sibling;var Ne=te(k,be,B[ze],ie);if(Ne===null){be===null&&(be=Ot);break}r&&be&&Ne.alternate===null&&s(k,be),_=g(Ne,_,ze),Ee===null?ge=Ne:Ee.sibling=Ne,Ee=Ne,be=Ot}if(ze===B.length)return u(k,be),nt&&mr(k,ze),ge;if(be===null){for(;ze<B.length;ze++)be=we(k,B[ze],ie),be!==null&&(_=g(be,_,ze),Ee===null?ge=be:Ee.sibling=be,Ee=be);return nt&&mr(k,ze),ge}for(be=h(k,be);ze<B.length;ze++)Ot=Je(be,k,ze,B[ze],ie),Ot!==null&&(r&&Ot.alternate!==null&&be.delete(Ot.key===null?ze:Ot.key),_=g(Ot,_,ze),Ee===null?ge=Ot:Ee.sibling=Ot,Ee=Ot);return r&&be.forEach(function(Hn){return s(k,Hn)}),nt&&mr(k,ze),ge}function si(k,_,B,ie){var ge=O(B);if(typeof ge!="function")throw Error(l(150));if(B=ge.call(B),B==null)throw Error(l(151));for(var Ee=ge=null,be=_,ze=_=0,Ot=null,Ne=B.next();be!==null&&!Ne.done;ze++,Ne=B.next()){be.index>ze?(Ot=be,be=null):Ot=be.sibling;var Hn=te(k,be,Ne.value,ie);if(Hn===null){be===null&&(be=Ot);break}r&&be&&Hn.alternate===null&&s(k,be),_=g(Hn,_,ze),Ee===null?ge=Hn:Ee.sibling=Hn,Ee=Hn,be=Ot}if(Ne.done)return u(k,be),nt&&mr(k,ze),ge;if(be===null){for(;!Ne.done;ze++,Ne=B.next())Ne=we(k,Ne.value,ie),Ne!==null&&(_=g(Ne,_,ze),Ee===null?ge=Ne:Ee.sibling=Ne,Ee=Ne);return nt&&mr(k,ze),ge}for(be=h(k,be);!Ne.done;ze++,Ne=B.next())Ne=Je(be,k,ze,Ne.value,ie),Ne!==null&&(r&&Ne.alternate!==null&&be.delete(Ne.key===null?ze:Ne.key),_=g(Ne,_,ze),Ee===null?ge=Ne:Ee.sibling=Ne,Ee=Ne);return r&&be.forEach(function(Lw){return s(k,Lw)}),nt&&mr(k,ze),ge}function An(k,_,B,ie){if(typeof B=="object"&&B!==null&&B.type===f&&B.key===null&&(B=B.props.children),typeof B=="object"&&B!==null){switch(B.$$typeof){case p:e:{for(var ge=B.key,Ee=_;Ee!==null;){if(Ee.key===ge){if(ge=B.type,ge===f){if(Ee.tag===7){u(k,Ee.sibling),_=d(Ee,B.props.children),_.return=k,k=_;break e}}else if(Ee.elementType===ge||typeof ge=="object"&&ge!==null&&ge.$$typeof===R&&Tf(ge)===Ee.type){u(k,Ee.sibling),_=d(Ee,B.props),_.ref=rs(k,Ee,B),_.return=k,k=_;break e}u(k,Ee);break}else s(k,Ee);Ee=Ee.sibling}B.type===f?(_=br(B.props.children,k.mode,ie,B.key),_.return=k,k=_):(ie=sl(B.type,B.key,B.props,null,k.mode,ie),ie.ref=rs(k,_,B),ie.return=k,k=ie)}return S(k);case m:e:{for(Ee=B.key;_!==null;){if(_.key===Ee)if(_.tag===4&&_.stateNode.containerInfo===B.containerInfo&&_.stateNode.implementation===B.implementation){u(k,_.sibling),_=d(_,B.children||[]),_.return=k,k=_;break e}else{u(k,_);break}else s(k,_);_=_.sibling}_=wh(B,k.mode,ie),_.return=k,k=_}return S(k);case R:return Ee=B._init,An(k,_,Ee(B._payload),ie)}if(ke(B))return Qe(k,_,B,ie);if(O(B))return si(k,_,B,ie);La(k,B)}return typeof B=="string"&&B!==""||typeof B=="number"?(B=""+B,_!==null&&_.tag===6?(u(k,_.sibling),_=d(_,B),_.return=k,k=_):(u(k,_),_=Sh(B,k.mode,ie),_.return=k,k=_),S(k)):u(k,_)}return An}var ao=If(!0),_f=If(!1),os={},Ii=Ln(os),ss=Ln(os),lo=Ln(os);function an(r){if(r===os)throw Error(l(174));return r}function Lc(r,s){Ye(lo,s),Ye(ss,r),Ye(Ii,os),r=it(s),Ze(Ii),Ye(Ii,r)}function uo(){Ze(Ii),Ze(ss),Ze(lo)}function Mf(r){var s=an(lo.current),u=an(Ii.current);s=$e(u,r.type,s),u!==s&&(Ye(ss,r),Ye(Ii,s))}function zc(r){ss.current===r&&(Ze(Ii),Ze(ss))}var at=Ln(0);function za(r){for(var s=r;s!==null;){if(s.tag===13){var u=s.memoizedState;if(u!==null&&(u=u.dehydrated,u===null||sf(u)||uc(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===r)break;for(;s.sibling===null;){if(s.return===null||s.return===r)return null;s=s.return}s.sibling.return=s.return,s=s.sibling}return null}var Nc=[];function Fc(){for(var r=0;r<Nc.length;r++){var s=Nc[r];Ue?s._workInProgressVersionPrimary=null:s._workInProgressVersionSecondary=null}Nc.length=0}var Na=c.ReactCurrentDispatcher,Bc=c.ReactCurrentBatchConfig,yr=0,lt=null,At=null,_t=null,Fa=!1,as=!1,ls=0,ow=0;function Dt(){throw Error(l(321))}function Dc(r,s){if(s===null)return!1;for(var u=0;u<s.length&&u<r.length;u++)if(!Ui(r[u],s[u]))return!1;return!0}function jc(r,s,u,h,d,g){if(yr=g,lt=s,s.memoizedState=null,s.updateQueue=null,s.lanes=0,Na.current=r===null||r.memoizedState===null?uw:cw,r=u(h,d),as){g=0;do{if(as=!1,ls=0,25<=g)throw Error(l(301));g+=1,_t=At=null,s.updateQueue=null,Na.current=hw,r=u(h,d)}while(as)}if(Na.current=ja,s=At!==null&&At.next!==null,yr=0,_t=At=lt=null,Fa=!1,s)throw Error(l(300));return r}function Vc(){var r=ls!==0;return ls=0,r}function ln(){var r={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return _t===null?lt.memoizedState=_t=r:_t=_t.next=r,_t}function _i(){if(At===null){var r=lt.alternate;r=r!==null?r.memoizedState:null}else r=At.next;var s=_t===null?lt.memoizedState:_t.next;if(s!==null)_t=s,At=r;else{if(r===null)throw Error(l(310));At=r,r={memoizedState:At.memoizedState,baseState:At.baseState,baseQueue:At.baseQueue,queue:At.queue,next:null},_t===null?lt.memoizedState=_t=r:_t=_t.next=r}return _t}function us(r,s){return typeof s=="function"?s(r):s}function Uc(r){var s=_i(),u=s.queue;if(u===null)throw Error(l(311));u.lastRenderedReducer=r;var h=At,d=h.baseQueue,g=u.pending;if(g!==null){if(d!==null){var S=d.next;d.next=g.next,g.next=S}h.baseQueue=d=g,u.pending=null}if(d!==null){g=d.next,h=h.baseState;var I=S=null,z=null,Z=g;do{var le=Z.lane;if((yr&le)===le)z!==null&&(z=z.next={lane:0,action:Z.action,hasEagerState:Z.hasEagerState,eagerState:Z.eagerState,next:null}),h=Z.hasEagerState?Z.eagerState:r(h,Z.action);else{var we={lane:le,action:Z.action,hasEagerState:Z.hasEagerState,eagerState:Z.eagerState,next:null};z===null?(I=z=we,S=h):z=z.next=we,lt.lanes|=le,vr|=le}Z=Z.next}while(Z!==null&&Z!==g);z===null?S=h:z.next=I,Ui(h,s.memoizedState)||(ni=!0),s.memoizedState=h,s.baseState=S,s.baseQueue=z,u.lastRenderedState=h}if(r=u.interleaved,r!==null){d=r;do g=d.lane,lt.lanes|=g,vr|=g,d=d.next;while(d!==r)}else d===null&&(u.lanes=0);return[s.memoizedState,u.dispatch]}function Hc(r){var s=_i(),u=s.queue;if(u===null)throw Error(l(311));u.lastRenderedReducer=r;var h=u.dispatch,d=u.pending,g=s.memoizedState;if(d!==null){u.pending=null;var S=d=d.next;do g=r(g,S.action),S=S.next;while(S!==d);Ui(g,s.memoizedState)||(ni=!0),s.memoizedState=g,s.baseQueue===null&&(s.baseState=g),u.lastRenderedState=g}return[g,h]}function Of(){}function kf(r,s){var u=lt,h=_i(),d=s(),g=!Ui(h.memoizedState,d);if(g&&(h.memoizedState=d,ni=!0),h=h.queue,Wc(Nf.bind(null,u,h,r),[r]),h.getSnapshot!==s||g||_t!==null&&_t.memoizedState.tag&1){if(u.flags|=2048,cs(9,zf.bind(null,u,h,d,s),void 0,null),Mt===null)throw Error(l(349));yr&30||Lf(u,s,d)}return d}function Lf(r,s,u){r.flags|=16384,r={getSnapshot:s,value:u},s=lt.updateQueue,s===null?(s={lastEffect:null,stores:null},lt.updateQueue=s,s.stores=[r]):(u=s.stores,u===null?s.stores=[r]:u.push(r))}function zf(r,s,u,h){s.value=u,s.getSnapshot=h,Ff(s)&&Bf(r)}function Nf(r,s,u){return u(function(){Ff(s)&&Bf(r)})}function Ff(r){var s=r.getSnapshot;r=r.value;try{var u=s();return!Ui(r,u)}catch{return!0}}function Bf(r){var s=sn(r,1);s!==null&&Mi(s,r,1,-1)}function Df(r){var s=ln();return typeof r=="function"&&(r=r()),s.memoizedState=s.baseState=r,r={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:us,lastRenderedState:r},s.queue=r,r=r.dispatch=lw.bind(null,lt,r),[s.memoizedState,r]}function cs(r,s,u,h){return r={tag:r,create:s,destroy:u,deps:h,next:null},s=lt.updateQueue,s===null?(s={lastEffect:null,stores:null},lt.updateQueue=s,s.lastEffect=r.next=r):(u=s.lastEffect,u===null?s.lastEffect=r.next=r:(h=u.next,u.next=r,r.next=h,s.lastEffect=r)),r}function jf(){return _i().memoizedState}function Ba(r,s,u,h){var d=ln();lt.flags|=r,d.memoizedState=cs(1|s,u,void 0,h===void 0?null:h)}function Da(r,s,u,h){var d=_i();h=h===void 0?null:h;var g=void 0;if(At!==null){var S=At.memoizedState;if(g=S.destroy,h!==null&&Dc(h,S.deps)){d.memoizedState=cs(s,u,g,h);return}}lt.flags|=r,d.memoizedState=cs(1|s,u,g,h)}function Vf(r,s){return Ba(8390656,8,r,s)}function Wc(r,s){return Da(2048,8,r,s)}function Uf(r,s){return Da(4,2,r,s)}function Hf(r,s){return Da(4,4,r,s)}function Wf(r,s){if(typeof s=="function")return r=r(),s(r),function(){s(null)};if(s!=null)return r=r(),s.current=r,function(){s.current=null}}function qf(r,s,u){return u=u!=null?u.concat([r]):null,Da(4,4,Wf.bind(null,s,r),u)}function qc(){}function Qf(r,s){var u=_i();s=s===void 0?null:s;var h=u.memoizedState;return h!==null&&s!==null&&Dc(s,h[1])?h[0]:(u.memoizedState=[r,s],r)}function Yf(r,s){var u=_i();s=s===void 0?null:s;var h=u.memoizedState;return h!==null&&s!==null&&Dc(s,h[1])?h[0]:(r=r(),u.memoizedState=[r,s],r)}function Gf(r,s,u){return yr&21?(Ui(u,s)||(u=cf(),lt.lanes|=u,vr|=u,r.baseState=!0),s):(r.baseState&&(r.baseState=!1,ni=!0),r.memoizedState=u)}function sw(r,s){var u=Le;Le=u!==0&&4>u?u:4,r(!0);var h=Bc.transition;Bc.transition={};try{r(!1),s()}finally{Le=u,Bc.transition=h}}function $f(){return _i().memoizedState}function aw(r,s,u){var h=jn(r);if(u={lane:h,action:u,hasEagerState:!1,eagerState:null,next:null},Xf(r))Kf(s,u);else if(u=Sf(r,s,u,h),u!==null){var d=Ut();Mi(u,r,h,d),Zf(u,s,h)}}function lw(r,s,u){var h=jn(r),d={lane:h,action:u,hasEagerState:!1,eagerState:null,next:null};if(Xf(r))Kf(s,d);else{var g=r.alternate;if(r.lanes===0&&(g===null||g.lanes===0)&&(g=s.lastRenderedReducer,g!==null))try{var S=s.lastRenderedState,I=g(S,u);if(d.hasEagerState=!0,d.eagerState=I,Ui(I,S)){var z=s.interleaved;z===null?(d.next=d,_c(s)):(d.next=z.next,z.next=d),s.interleaved=d;return}}catch{}finally{}u=Sf(r,s,d,h),u!==null&&(d=Ut(),Mi(u,r,h,d),Zf(u,s,h))}}function Xf(r){var s=r.alternate;return r===lt||s!==null&&s===lt}function Kf(r,s){as=Fa=!0;var u=r.pending;u===null?s.next=s:(s.next=u.next,u.next=s),r.pending=s}function Zf(r,s,u){if(u&4194240){var h=s.lanes;h&=r.pendingLanes,u|=h,s.lanes=u,gc(r,u)}}var ja={readContext:Ti,useCallback:Dt,useContext:Dt,useEffect:Dt,useImperativeHandle:Dt,useInsertionEffect:Dt,useLayoutEffect:Dt,useMemo:Dt,useReducer:Dt,useRef:Dt,useState:Dt,useDebugValue:Dt,useDeferredValue:Dt,useTransition:Dt,useMutableSource:Dt,useSyncExternalStore:Dt,useId:Dt,unstable_isNewReconciler:!1},uw={readContext:Ti,useCallback:function(r,s){return ln().memoizedState=[r,s===void 0?null:s],r},useContext:Ti,useEffect:Vf,useImperativeHandle:function(r,s,u){return u=u!=null?u.concat([r]):null,Ba(4194308,4,Wf.bind(null,s,r),u)},useLayoutEffect:function(r,s){return Ba(4194308,4,r,s)},useInsertionEffect:function(r,s){return Ba(4,2,r,s)},useMemo:function(r,s){var u=ln();return s=s===void 0?null:s,r=r(),u.memoizedState=[r,s],r},useReducer:function(r,s,u){var h=ln();return s=u!==void 0?u(s):s,h.memoizedState=h.baseState=s,r={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:r,lastRenderedState:s},h.queue=r,r=r.dispatch=aw.bind(null,lt,r),[h.memoizedState,r]},useRef:function(r){var s=ln();return r={current:r},s.memoizedState=r},useState:Df,useDebugValue:qc,useDeferredValue:function(r){return ln().memoizedState=r},useTransition:function(){var r=Df(!1),s=r[0];return r=sw.bind(null,r[1]),ln().memoizedState=r,[s,r]},useMutableSource:function(){},useSyncExternalStore:function(r,s,u){var h=lt,d=ln();if(nt){if(u===void 0)throw Error(l(407));u=u()}else{if(u=s(),Mt===null)throw Error(l(349));yr&30||Lf(h,s,u)}d.memoizedState=u;var g={value:u,getSnapshot:s};return d.queue=g,Vf(Nf.bind(null,h,g,r),[r]),h.flags|=2048,cs(9,zf.bind(null,h,g,u,s),void 0,null),u},useId:function(){var r=ln(),s=Mt.identifierPrefix;if(nt){var u=bn,h=wn;u=(h&~(1<<32-Vi(h)-1)).toString(32)+u,s=":"+s+"R"+u,u=ls++,0<u&&(s+="H"+u.toString(32)),s+=":"}else u=ow++,s=":"+s+"r"+u.toString(32)+":";return r.memoizedState=s},unstable_isNewReconciler:!1},cw={readContext:Ti,useCallback:Qf,useContext:Ti,useEffect:Wc,useImperativeHandle:qf,useInsertionEffect:Uf,useLayoutEffect:Hf,useMemo:Yf,useReducer:Uc,useRef:jf,useState:function(){return Uc(us)},useDebugValue:qc,useDeferredValue:function(r){var s=_i();return Gf(s,At.memoizedState,r)},useTransition:function(){var r=Uc(us)[0],s=_i().memoizedState;return[r,s]},useMutableSource:Of,useSyncExternalStore:kf,useId:$f,unstable_isNewReconciler:!1},hw={readContext:Ti,useCallback:Qf,useContext:Ti,useEffect:Wc,useImperativeHandle:qf,useInsertionEffect:Uf,useLayoutEffect:Hf,useMemo:Yf,useReducer:Hc,useRef:jf,useState:function(){return Hc(us)},useDebugValue:qc,useDeferredValue:function(r){var s=_i();return At===null?s.memoizedState=r:Gf(s,At.memoizedState,r)},useTransition:function(){var r=Hc(us)[0],s=_i().memoizedState;return[r,s]},useMutableSource:Of,useSyncExternalStore:kf,useId:$f,unstable_isNewReconciler:!1};function co(r,s){try{var u="",h=s;do u+=rw(h),h=h.return;while(h);var d=u}catch(g){d=`
1
+ "use strict";var ReactIIIFVault=(()=>{var Yw=Object.create;var ml=Object.defineProperty;var Gw=Object.getOwnPropertyDescriptor;var Xw=Object.getOwnPropertyNames;var Kw=Object.getPrototypeOf,Zw=Object.prototype.hasOwnProperty;var xt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Jw=(e,t)=>{for(var i in t)ml(e,i,{get:t[i],enumerable:!0})},Zm=(e,t,i,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Xw(t))!Zw.call(e,o)&&o!==i&&ml(e,o,{get:()=>t[o],enumerable:!(n=Gw(t,o))||n.enumerable});return e};var R=(e,t,i)=>(i=e!=null?Yw(Kw(e)):{},Zm(t||!e||!e.__esModule?ml(i,"default",{value:e,enumerable:!0}):i,e)),e1=e=>Zm(ml({},"__esModule",{value:!0}),e);var $=xt((lT,Jm)=>{"use strict";Jm.exports=React});var hg=xt((pT,dg)=>{"use strict";var sg=!1,Ar,Nd,Fd,vl,xl,ag,Sl,Bd,Dd,jd,lg,Vd,Ud,ug,cg;function ui(){if(!sg){sg=!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(Vd=/\b(iPhone|iP[ao]d)/.exec(e),Ud=/\b(iP[ao]d)/.exec(e),jd=/Android/i.exec(e),ug=/FBAN\/\w+;/i.exec(e),cg=/Mobile/i.exec(e),lg=!!/Win64/.exec(e),t){Ar=t[1]?parseFloat(t[1]):t[5]?parseFloat(t[5]):NaN,Ar&&document&&document.documentMode&&(Ar=document.documentMode);var n=/(?:Trident\/(\d+.\d+))/.exec(e);ag=n?parseFloat(n[1])+4:Ar,Nd=t[2]?parseFloat(t[2]):NaN,Fd=t[3]?parseFloat(t[3]):NaN,vl=t[4]?parseFloat(t[4]):NaN,vl?(t=/(?:Chrome\/(\d+\.\d+))/.exec(e),xl=t&&t[1]?parseFloat(t[1]):NaN):xl=NaN}else Ar=Nd=Fd=xl=vl=NaN;if(i){if(i[1]){var o=/(?:Mac OS X (\d+(?:[._]\d+)?))/.exec(e);Sl=o?parseFloat(o[1].replace("_",".")):!0}else Sl=!1;Bd=!!i[2],Dd=!!i[3]}else Sl=Bd=Dd=!1}}var Hd={ie:function(){return ui()||Ar},ieCompatibilityMode:function(){return ui()||ag>Ar},ie64:function(){return Hd.ie()&&lg},firefox:function(){return ui()||Nd},opera:function(){return ui()||Fd},webkit:function(){return ui()||vl},safari:function(){return Hd.webkit()},chrome:function(){return ui()||xl},windows:function(){return ui()||Bd},osx:function(){return ui()||Sl},linux:function(){return ui()||Dd},iphone:function(){return ui()||Vd},mobile:function(){return ui()||Vd||Ud||jd||cg},nativeApp:function(){return ui()||ug},android:function(){return ui()||jd},ipad:function(){return ui()||Ud}};dg.exports=Hd});var fg=xt((fT,pg)=>{"use strict";var wl=!!(typeof window<"u"&&window.document&&window.document.createElement),o1={canUseDOM:wl,canUseWorkers:typeof Worker<"u",canUseEventListeners:wl&&!!(window.addEventListener||window.attachEvent),canUseViewport:wl&&!!window.screen,isInWorker:!wl};pg.exports=o1});var vg=xt((mT,yg)=>{"use strict";var mg=fg(),gg;mg.canUseDOM&&(gg=document.implementation&&document.implementation.hasFeature&&document.implementation.hasFeature("","")!==!0);function s1(e,t){if(!mg.canUseDOM||t&&!("addEventListener"in document))return!1;var i="on"+e,n=i in document;if(!n){var o=document.createElement("div");o.setAttribute(i,"return;"),n=typeof o[i]=="function"}return!n&&gg&&e==="wheel"&&(n=document.implementation.hasFeature("Events.wheel","3.0")),n}yg.exports=s1});var Cg=xt((gT,Pg)=>{"use strict";var a1=hg(),l1=vg(),xg=10,Sg=40,wg=800;function bg(e){var t=0,i=0,n=0,o=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*xg,o=i*xg,"deltaY"in e&&(o=e.deltaY),"deltaX"in e&&(n=e.deltaX),(n||o)&&e.deltaMode&&(e.deltaMode==1?(n*=Sg,o*=Sg):(n*=wg,o*=wg)),n&&!t&&(t=n<1?-1:1),o&&!i&&(i=o<1?-1:1),{spinX:t,spinY:i,pixelX:n,pixelY:o}}bg.getEventType=function(){return a1.firefox()?"DOMMouseScroll":l1("wheel")?"wheel":"mousewheel"};Pg.exports=bg});var Ag=xt((yT,Eg)=>{"use strict";Eg.exports=Cg()});var Rg=xt(bl=>{"use strict";var u1=$(),c1=Symbol.for("react.element"),d1=Symbol.for("react.fragment"),h1=Object.prototype.hasOwnProperty,p1=u1.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,f1={key:!0,ref:!0,__self:!0,__source:!0};function Tg(e,t,i){var n,o={},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)h1.call(t,n)&&!f1.hasOwnProperty(n)&&(o[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps,t)o[n]===void 0&&(o[n]=t[n]);return{$$typeof:c1,type:e,key:a,ref:l,props:o,_owner:p1.current}}bl.Fragment=d1;bl.jsx=Tg;bl.jsxs=Tg});var q=xt((xT,Ig)=>{"use strict";Ig.exports=Rg()});var Mg=xt((ST,_g)=>{"use strict";function Wd(e,t,i){var n,o,a,l,c;t==null&&(t=100);function p(){var f=Date.now()-l;f<t&&f>=0?n=setTimeout(p,t-f):(n=null,i||(c=e.apply(a,o),a=o=null))}var m=function(){a=this,o=arguments,l=Date.now();var f=i&&!n;return n||(n=setTimeout(p,t)),f&&(c=e.apply(a,o),a=o=null),c};return m.clear=function(){n&&(clearTimeout(n),n=null)},m.flush=function(){n&&(c=e.apply(a,o),a=o=null,clearTimeout(n),n=null)},m}Wd.debounce=Wd;_g.exports=Wd});var Ug=xt(Xe=>{"use strict";function Gd(e,t){var i=e.length;e.push(t);e:for(;0<i;){var n=i-1>>>1,o=e[n];if(0<Cl(o,t))e[n]=t,e[i]=o,i=n;else break e}}function Gi(e){return e.length===0?null:e[0]}function Al(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,o=e.length,a=o>>>1;n<a;){var l=2*(n+1)-1,c=e[l],p=l+1,m=e[p];if(0>Cl(c,i))p<o&&0>Cl(m,c)?(e[n]=m,e[p]=i,n=p):(e[n]=c,e[l]=i,n=l);else if(p<o&&0>Cl(m,i))e[n]=m,e[p]=i,n=p;else break e}}return t}function Cl(e,t){var i=e.sortIndex-t.sortIndex;return i!==0?i:e.id-t.id}typeof performance=="object"&&typeof performance.now=="function"?(Og=performance,Xe.unstable_now=function(){return Og.now()}):(Qd=Date,Lg=Qd.now(),Xe.unstable_now=function(){return Qd.now()-Lg});var Og,Qd,Lg,pn=[],Kn=[],x1=1,zi=null,Wt=3,Tl=!1,Tr=!1,As=!1,Fg=typeof setTimeout=="function"?setTimeout:null,Bg=typeof clearTimeout=="function"?clearTimeout:null,zg=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function Xd(e){for(var t=Gi(Kn);t!==null;){if(t.callback===null)Al(Kn);else if(t.startTime<=e)Al(Kn),t.sortIndex=t.expirationTime,Gd(pn,t);else break;t=Gi(Kn)}}function Kd(e){if(As=!1,Xd(e),!Tr)if(Gi(pn)!==null)Tr=!0,Jd(Zd);else{var t=Gi(Kn);t!==null&&eh(Kd,t.startTime-e)}}function Zd(e,t){Tr=!1,As&&(As=!1,Bg(Ts),Ts=-1),Tl=!0;var i=Wt;try{for(Xd(t),zi=Gi(pn);zi!==null&&(!(zi.expirationTime>t)||e&&!Vg());){var n=zi.callback;if(typeof n=="function"){zi.callback=null,Wt=zi.priorityLevel;var o=n(zi.expirationTime<=t);t=Xe.unstable_now(),typeof o=="function"?zi.callback=o:zi===Gi(pn)&&Al(pn),Xd(t)}else Al(pn);zi=Gi(pn)}if(zi!==null)var a=!0;else{var l=Gi(Kn);l!==null&&eh(Kd,l.startTime-t),a=!1}return a}finally{zi=null,Wt=i,Tl=!1}}var Rl=!1,El=null,Ts=-1,Dg=5,jg=-1;function Vg(){return!(Xe.unstable_now()-jg<Dg)}function $d(){if(El!==null){var e=Xe.unstable_now();jg=e;var t=!0;try{t=El(!0,e)}finally{t?Es():(Rl=!1,El=null)}}else Rl=!1}var Es;typeof zg=="function"?Es=function(){zg($d)}:typeof MessageChannel<"u"?(Yd=new MessageChannel,Ng=Yd.port2,Yd.port1.onmessage=$d,Es=function(){Ng.postMessage(null)}):Es=function(){Fg($d,0)};var Yd,Ng;function Jd(e){El=e,Rl||(Rl=!0,Es())}function eh(e,t){Ts=Fg(function(){e(Xe.unstable_now())},t)}Xe.unstable_IdlePriority=5;Xe.unstable_ImmediatePriority=1;Xe.unstable_LowPriority=4;Xe.unstable_NormalPriority=3;Xe.unstable_Profiling=null;Xe.unstable_UserBlockingPriority=2;Xe.unstable_cancelCallback=function(e){e.callback=null};Xe.unstable_continueExecution=function(){Tr||Tl||(Tr=!0,Jd(Zd))};Xe.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"):Dg=0<e?Math.floor(1e3/e):5};Xe.unstable_getCurrentPriorityLevel=function(){return Wt};Xe.unstable_getFirstCallbackNode=function(){return Gi(pn)};Xe.unstable_next=function(e){switch(Wt){case 1:case 2:case 3:var t=3;break;default:t=Wt}var i=Wt;Wt=t;try{return e()}finally{Wt=i}};Xe.unstable_pauseExecution=function(){};Xe.unstable_requestPaint=function(){};Xe.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var i=Wt;Wt=e;try{return t()}finally{Wt=i}};Xe.unstable_scheduleCallback=function(e,t,i){var n=Xe.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 o=-1;break;case 2:o=250;break;case 5:o=1073741823;break;case 4:o=1e4;break;default:o=5e3}return o=i+o,e={id:x1++,callback:t,priorityLevel:e,startTime:i,expirationTime:o,sortIndex:-1},i>n?(e.sortIndex=i,Gd(Kn,e),Gi(pn)===null&&e===Gi(Kn)&&(As?(Bg(Ts),Ts=-1):As=!0,eh(Kd,i-n))):(e.sortIndex=o,Gd(pn,e),Tr||Tl||(Tr=!0,Jd(Zd))),e};Xe.unstable_shouldYield=Vg;Xe.unstable_wrapCallback=function(e){var t=Wt;return function(){var i=Wt;Wt=t;try{return e.apply(this,arguments)}finally{Wt=i}}}});var Wg=xt((CT,Hg)=>{"use strict";Hg.exports=Ug()});var Qg=xt((ET,qg)=>{"use strict";qg.exports=function(t){var i={},n=$(),o=Wg(),a=Object.assign;function l(r){for(var s="https://reactjs.org/docs/error-decoder.html?invariant="+r,u=1;u<arguments.length;u++)s+="&args[]="+encodeURIComponent(arguments[u]);return"Minified React error #"+r+"; 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"),f=Symbol.for("react.fragment"),y=Symbol.for("react.strict_mode"),S=Symbol.for("react.profiler"),P=Symbol.for("react.provider"),v=Symbol.for("react.context"),x=Symbol.for("react.forward_ref"),E=Symbol.for("react.suspense"),C=Symbol.for("react.suspense_list"),T=Symbol.for("react.memo"),A=Symbol.for("react.lazy");Symbol.for("react.scope"),Symbol.for("react.debug_trace_mode");var N=Symbol.for("react.offscreen");Symbol.for("react.legacy_hidden"),Symbol.for("react.cache"),Symbol.for("react.tracing_marker");var D=Symbol.iterator;function M(r){return r===null||typeof r!="object"?null:(r=D&&r[D]||r["@@iterator"],typeof r=="function"?r:null)}function k(r){if(r==null)return null;if(typeof r=="function")return r.displayName||r.name||null;if(typeof r=="string")return r;switch(r){case f:return"Fragment";case m:return"Portal";case S:return"Profiler";case y:return"StrictMode";case E:return"Suspense";case C:return"SuspenseList"}if(typeof r=="object")switch(r.$$typeof){case v:return(r.displayName||"Context")+".Consumer";case P:return(r._context.displayName||"Context")+".Provider";case x:var s=r.render;return r=r.displayName,r||(r=s.displayName||s.name||"",r=r!==""?"ForwardRef("+r+")":"ForwardRef"),r;case T:return s=r.displayName||null,s!==null?s:k(r.type)||"Memo";case A:s=r._payload,r=r._init;try{return k(r(s))}catch{}}return null}function O(r){var s=r.type;switch(r.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 r=s.render,r=r.displayName||r.name||"",s.displayName||(r!==""?"ForwardRef("+r+")":"ForwardRef");case 7:return"Fragment";case 5:return s;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return k(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 K(r){var s=r,u=r;if(r.alternate)for(;s.return;)s=s.return;else{r=s;do s=r,s.flags&4098&&(u=s.return),r=s.return;while(r)}return s.tag===3?u:null}function U(r){if(K(r)!==r)throw Error(l(188))}function G(r){var s=r.alternate;if(!s){if(s=K(r),s===null)throw Error(l(188));return s!==r?null:r}for(var u=r,d=s;;){var h=u.return;if(h===null)break;var g=h.alternate;if(g===null){if(d=h.return,d!==null){u=d;continue}break}if(h.child===g.child){for(g=h.child;g;){if(g===u)return U(h),r;if(g===d)return U(h),s;g=g.sibling}throw Error(l(188))}if(u.return!==d.return)u=h,d=g;else{for(var w=!1,I=h.child;I;){if(I===u){w=!0,u=h,d=g;break}if(I===d){w=!0,d=h,u=g;break}I=I.sibling}if(!w){for(I=g.child;I;){if(I===u){w=!0,u=g,d=h;break}if(I===d){w=!0,d=g,u=h;break}I=I.sibling}if(!w)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?r:s}function te(r){return r=G(r),r!==null?Ie(r):null}function Ie(r){if(r.tag===5||r.tag===6)return r;for(r=r.child;r!==null;){var s=Ie(r);if(s!==null)return s;r=r.sibling}return null}function ye(r){if(r.tag===5||r.tag===6)return r;for(r=r.child;r!==null;){if(r.tag!==4){var s=ye(r);if(s!==null)return s}r=r.sibling}return null}var ke=Array.isArray,ve=t.getPublicInstance,We=t.getRootHostContext,Ye=t.getChildHostContext,ft=t.prepareForCommit,je=t.resetAfterCommit,H=t.createInstance,ge=t.appendInitialChild,Fe=t.finalizeInitialChildren,B=t.prepareUpdate,Q=t.shouldSetTextContent,de=t.createTextInstance,pe=t.scheduleTimeout,fe=t.cancelTimeout,Ue=t.noTimeout,He=t.isPrimaryRenderer,Ee=t.supportsMutation,qe=t.supportsPersistence,ee=t.supportsHydration,Ae=t.getInstanceFromNode,Se=t.preparePortalMount,Ei=t.getCurrentEventPriority,ti=t.detachDeletedInstance,zt=t.supportsMicrotasks,fi=t.scheduleMicrotask,Ai=t.supportsTestSelectors,gc=t.findFiberRoot,wa=t.getBoundingRect,is=t.getTextContent,rn=t.isHiddenSubtree,ns=t.matchAccessibilityRole,yc=t.setFocusIfFocusable,Y=t.setupIntersectionObserver,L=t.appendChild,X=t.appendChildToContainer,Z=t.commitTextUpdate,Pe=t.commitMount,Te=t.commitUpdate,Be=t.insertBefore,V=t.insertInContainerBefore,W=t.removeChild,ue=t.removeChildFromContainer,oe=t.resetTextContent,se=t.hideInstance,Re=t.hideTextInstance,Ke=t.unhideInstance,Ze=t.unhideTextInstance,Qe=t.clearContainer,Ct=t.cloneInstance,st=t.createContainerChildSet,Et=t.appendChildToContainerChildSet,Bn=t.finalizeContainerChildren,Ui=t.replaceContainerChildren,mr=t.cloneHiddenInstance,rs=t.cloneHiddenTextInstance,ba=t.canHydrateInstance,BS=t.canHydrateTextInstance,DS=t.canHydrateSuspenseInstance,mf=t.isSuspenseInstancePending,vc=t.isSuspenseInstanceFallback,jS=t.getSuspenseInstanceFallbackErrorDetails,VS=t.registerSuspenseInstanceRetry,Pa=t.getNextHydratableSibling,US=t.getFirstHydratableChild,HS=t.getFirstHydratableChildWithinContainer,WS=t.getFirstHydratableChildWithinSuspenseInstance,qS=t.hydrateInstance,QS=t.hydrateTextInstance,$S=t.hydrateSuspenseInstance,YS=t.getNextHydratableInstanceAfterSuspenseInstance,GS=t.commitHydratedContainer,XS=t.commitHydratedSuspenseInstance,KS=t.clearSuspenseBoundary,ZS=t.clearSuspenseBoundaryFromContainer,JS=t.shouldDeleteUnhydratedTailInstances,ew=t.didNotMatchHydratedContainerTextInstance,tw=t.didNotMatchHydratedTextInstance,xc;function os(r){if(xc===void 0)try{throw Error()}catch(u){var s=u.stack.trim().match(/\n( *(at )?)/);xc=s&&s[1]||""}return`
2
+ `+xc+r}var Sc=!1;function wc(r,s){if(!r||Sc)return"";Sc=!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(J){var d=J}Reflect.construct(r,[],s)}else{try{s.call()}catch(J){d=J}r.call(s.prototype)}else{try{throw Error()}catch(J){d=J}r()}}catch(J){if(J&&d&&typeof J.stack=="string"){for(var h=J.stack.split(`
3
+ `),g=d.stack.split(`
4
+ `),w=h.length-1,I=g.length-1;1<=w&&0<=I&&h[w]!==g[I];)I--;for(;1<=w&&0<=I;w--,I--)if(h[w]!==g[I]){if(w!==1||I!==1)do if(w--,I--,0>I||h[w]!==g[I]){var F=`
5
+ `+h[w].replace(" at new "," at ");return r.displayName&&F.includes("<anonymous>")&&(F=F.replace("<anonymous>",r.displayName)),F}while(1<=w&&0<=I);break}}}finally{Sc=!1,Error.prepareStackTrace=u}return(r=r?r.displayName||r.name:"")?os(r):""}var iw=Object.prototype.hasOwnProperty,bc=[],ro=-1;function Dn(r){return{current:r}}function Je(r){0>ro||(r.current=bc[ro],bc[ro]=null,ro--)}function Ge(r,s){ro++,bc[ro]=r.current,r.current=s}var jn={},Dt=Dn(jn),ii=Dn(!1),gr=jn;function oo(r,s){var u=r.type.contextTypes;if(!u)return jn;var d=r.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===s)return d.__reactInternalMemoizedMaskedChildContext;var h={},g;for(g in u)h[g]=s[g];return d&&(r=r.stateNode,r.__reactInternalMemoizedUnmaskedChildContext=s,r.__reactInternalMemoizedMaskedChildContext=h),h}function ni(r){return r=r.childContextTypes,r!=null}function Ca(){Je(ii),Je(Dt)}function gf(r,s,u){if(Dt.current!==jn)throw Error(l(168));Ge(Dt,s),Ge(ii,u)}function yf(r,s,u){var d=r.stateNode;if(s=s.childContextTypes,typeof d.getChildContext!="function")return u;d=d.getChildContext();for(var h in d)if(!(h in s))throw Error(l(108,O(r)||"Unknown",h));return a({},u,d)}function Ea(r){return r=(r=r.stateNode)&&r.__reactInternalMemoizedMergedChildContext||jn,gr=Dt.current,Ge(Dt,r),Ge(ii,ii.current),!0}function vf(r,s,u){var d=r.stateNode;if(!d)throw Error(l(169));u?(r=yf(r,s,gr),d.__reactInternalMemoizedMergedChildContext=r,Je(ii),Je(Dt),Ge(Dt,r)):Je(ii),Ge(ii,u)}var Hi=Math.clz32?Math.clz32:ow,nw=Math.log,rw=Math.LN2;function ow(r){return r>>>=0,r===0?32:31-(nw(r)/rw|0)|0}var Aa=64,Ta=4194304;function ss(r){switch(r&-r){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 r&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return r&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return r}}function Ra(r,s){var u=r.pendingLanes;if(u===0)return 0;var d=0,h=r.suspendedLanes,g=r.pingedLanes,w=u&268435455;if(w!==0){var I=w&~h;I!==0?d=ss(I):(g&=w,g!==0&&(d=ss(g)))}else w=u&~h,w!==0?d=ss(w):g!==0&&(d=ss(g));if(d===0)return 0;if(s!==0&&s!==d&&!(s&h)&&(h=d&-d,g=s&-s,h>=g||h===16&&(g&4194240)!==0))return s;if(d&4&&(d|=u&16),s=r.entangledLanes,s!==0)for(r=r.entanglements,s&=d;0<s;)u=31-Hi(s),h=1<<u,d|=r[u],s&=~h;return d}function sw(r,s){switch(r){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 aw(r,s){for(var u=r.suspendedLanes,d=r.pingedLanes,h=r.expirationTimes,g=r.pendingLanes;0<g;){var w=31-Hi(g),I=1<<w,F=h[w];F===-1?(!(I&u)||I&d)&&(h[w]=sw(I,s)):F<=s&&(r.expiredLanes|=I),g&=~I}}function Pc(r){return r=r.pendingLanes&-1073741825,r!==0?r:r&1073741824?1073741824:0}function xf(){var r=Aa;return Aa<<=1,!(Aa&4194240)&&(Aa=64),r}function Cc(r){for(var s=[],u=0;31>u;u++)s.push(r);return s}function as(r,s,u){r.pendingLanes|=s,s!==536870912&&(r.suspendedLanes=0,r.pingedLanes=0),r=r.eventTimes,s=31-Hi(s),r[s]=u}function lw(r,s){var u=r.pendingLanes&~s;r.pendingLanes=s,r.suspendedLanes=0,r.pingedLanes=0,r.expiredLanes&=s,r.mutableReadLanes&=s,r.entangledLanes&=s,s=r.entanglements;var d=r.eventTimes;for(r=r.expirationTimes;0<u;){var h=31-Hi(u),g=1<<h;s[h]=0,d[h]=-1,r[h]=-1,u&=~g}}function Ec(r,s){var u=r.entangledLanes|=s;for(r=r.entanglements;u;){var d=31-Hi(u),h=1<<d;h&s|r[d]&s&&(r[d]|=s),u&=~h}}var Oe=0;function Sf(r){return r&=-r,1<r?4<r?r&268435455?16:536870912:4:1}var Ac=o.unstable_scheduleCallback,wf=o.unstable_cancelCallback,uw=o.unstable_shouldYield,cw=o.unstable_requestPaint,It=o.unstable_now,Tc=o.unstable_ImmediatePriority,dw=o.unstable_UserBlockingPriority,Rc=o.unstable_NormalPriority,hw=o.unstable_IdlePriority,Ia=null,on=null;function pw(r){if(on&&typeof on.onCommitFiberRoot=="function")try{on.onCommitFiberRoot(Ia,r,void 0,(r.current.flags&128)===128)}catch{}}function fw(r,s){return r===s&&(r!==0||1/r===1/s)||r!==r&&s!==s}var Wi=typeof Object.is=="function"?Object.is:fw,bn=null,_a=!1,Ic=!1;function bf(r){bn===null?bn=[r]:bn.push(r)}function mw(r){_a=!0,bf(r)}function sn(){if(!Ic&&bn!==null){Ic=!0;var r=0,s=Oe;try{var u=bn;for(Oe=1;r<u.length;r++){var d=u[r];do d=d(!0);while(d!==null)}bn=null,_a=!1}catch(h){throw bn!==null&&(bn=bn.slice(r+1)),Ac(Tc,sn),h}finally{Oe=s,Ic=!1}}return null}var so=[],ao=0,Ma=null,ka=0,Ti=[],Ri=0,yr=null,Pn=1,Cn="";function vr(r,s){so[ao++]=ka,so[ao++]=Ma,Ma=r,ka=s}function Pf(r,s,u){Ti[Ri++]=Pn,Ti[Ri++]=Cn,Ti[Ri++]=yr,yr=r;var d=Pn;r=Cn;var h=32-Hi(d)-1;d&=~(1<<h),u+=1;var g=32-Hi(s)+h;if(30<g){var w=h-h%5;g=(d&(1<<w)-1).toString(32),d>>=w,h-=w,Pn=1<<32-Hi(s)+h|u<<h|d,Cn=g+r}else Pn=1<<g|u<<h|d,Cn=r}function _c(r){r.return!==null&&(vr(r,1),Pf(r,1,0))}function Mc(r){for(;r===Ma;)Ma=so[--ao],so[ao]=null,ka=so[--ao],so[ao]=null;for(;r===yr;)yr=Ti[--Ri],Ti[Ri]=null,Cn=Ti[--Ri],Ti[Ri]=null,Pn=Ti[--Ri],Ti[Ri]=null}var mi=null,Ii=null,it=!1,ls=!1,qi=null;function Cf(r,s){var u=Li(5,null,null,0);u.elementType="DELETED",u.stateNode=s,u.return=r,s=r.deletions,s===null?(r.deletions=[u],r.flags|=16):s.push(u)}function Ef(r,s){switch(r.tag){case 5:return s=ba(s,r.type,r.pendingProps),s!==null?(r.stateNode=s,mi=r,Ii=US(s),!0):!1;case 6:return s=BS(s,r.pendingProps),s!==null?(r.stateNode=s,mi=r,Ii=null,!0):!1;case 13:if(s=DS(s),s!==null){var u=yr!==null?{id:Pn,overflow:Cn}:null;return r.memoizedState={dehydrated:s,treeContext:u,retryLane:1073741824},u=Li(18,null,null,0),u.stateNode=s,u.return=r,r.child=u,mi=r,Ii=null,!0}return!1;default:return!1}}function kc(r){return(r.mode&1)!==0&&(r.flags&128)===0}function Oc(r){if(it){var s=Ii;if(s){var u=s;if(!Ef(r,s)){if(kc(r))throw Error(l(418));s=Pa(u);var d=mi;s&&Ef(r,s)?Cf(d,u):(r.flags=r.flags&-4097|2,it=!1,mi=r)}}else{if(kc(r))throw Error(l(418));r.flags=r.flags&-4097|2,it=!1,mi=r}}}function Af(r){for(r=r.return;r!==null&&r.tag!==5&&r.tag!==3&&r.tag!==13;)r=r.return;mi=r}function Oa(r){if(!ee||r!==mi)return!1;if(!it)return Af(r),it=!0,!1;if(r.tag!==3&&(r.tag!==5||JS(r.type)&&!Q(r.type,r.memoizedProps))){var s=Ii;if(s){if(kc(r))throw Tf(),Error(l(418));for(;s;)Cf(r,s),s=Pa(s)}}if(Af(r),r.tag===13){if(!ee)throw Error(l(316));if(r=r.memoizedState,r=r!==null?r.dehydrated:null,!r)throw Error(l(317));Ii=YS(r)}else Ii=mi?Pa(r.stateNode):null;return!0}function Tf(){for(var r=Ii;r;)r=Pa(r)}function lo(){ee&&(Ii=mi=null,ls=it=!1)}function Lc(r){qi===null?qi=[r]:qi.push(r)}var gw=c.ReactCurrentBatchConfig;function La(r,s){if(Wi(r,s))return!0;if(typeof r!="object"||r===null||typeof s!="object"||s===null)return!1;var u=Object.keys(r),d=Object.keys(s);if(u.length!==d.length)return!1;for(d=0;d<u.length;d++){var h=u[d];if(!iw.call(s,h)||!Wi(r[h],s[h]))return!1}return!0}function yw(r){switch(r.tag){case 5:return os(r.type);case 16:return os("Lazy");case 13:return os("Suspense");case 19:return os("SuspenseList");case 0:case 2:case 15:return r=wc(r.type,!1),r;case 11:return r=wc(r.type.render,!1),r;case 1:return r=wc(r.type,!0),r;default:return""}}function Qi(r,s){if(r&&r.defaultProps){s=a({},s),r=r.defaultProps;for(var u in r)s[u]===void 0&&(s[u]=r[u]);return s}return s}var za=Dn(null),Na=null,uo=null,zc=null;function Nc(){zc=uo=Na=null}function Rf(r,s,u){He?(Ge(za,s._currentValue),s._currentValue=u):(Ge(za,s._currentValue2),s._currentValue2=u)}function Fc(r){var s=za.current;Je(za),He?r._currentValue=s:r._currentValue2=s}function Bc(r,s,u){for(;r!==null;){var d=r.alternate;if((r.childLanes&s)!==s?(r.childLanes|=s,d!==null&&(d.childLanes|=s)):d!==null&&(d.childLanes&s)!==s&&(d.childLanes|=s),r===u)break;r=r.return}}function co(r,s){Na=r,zc=uo=null,r=r.dependencies,r!==null&&r.firstContext!==null&&(r.lanes&s&&(ri=!0),r.firstContext=null)}function _i(r){var s=He?r._currentValue:r._currentValue2;if(zc!==r)if(r={context:r,memoizedValue:s,next:null},uo===null){if(Na===null)throw Error(l(308));uo=r,Na.dependencies={lanes:0,firstContext:r}}else uo=uo.next=r;return s}var xr=null;function Dc(r){xr===null?xr=[r]:xr.push(r)}function If(r,s,u,d){var h=s.interleaved;return h===null?(u.next=u,Dc(s)):(u.next=h.next,h.next=u),s.interleaved=u,an(r,d)}function an(r,s){r.lanes|=s;var u=r.alternate;for(u!==null&&(u.lanes|=s),u=r,r=r.return;r!==null;)r.childLanes|=s,u=r.alternate,u!==null&&(u.childLanes|=s),u=r,r=r.return;return u.tag===3?u.stateNode:null}var Vn=!1;function jc(r){r.updateQueue={baseState:r.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function _f(r,s){r=r.updateQueue,s.updateQueue===r&&(s.updateQueue={baseState:r.baseState,firstBaseUpdate:r.firstBaseUpdate,lastBaseUpdate:r.lastBaseUpdate,shared:r.shared,effects:r.effects})}function En(r,s){return{eventTime:r,lane:s,tag:0,payload:null,callback:null,next:null}}function Un(r,s,u){var d=r.updateQueue;if(d===null)return null;if(d=d.shared,_e&2){var h=d.pending;return h===null?s.next=s:(s.next=h.next,h.next=s),d.pending=s,an(r,u)}return h=d.interleaved,h===null?(s.next=s,Dc(d)):(s.next=h.next,h.next=s),d.interleaved=s,an(r,u)}function Fa(r,s,u){if(s=s.updateQueue,s!==null&&(s=s.shared,(u&4194240)!==0)){var d=s.lanes;d&=r.pendingLanes,u|=d,s.lanes=u,Ec(r,u)}}function Mf(r,s){var u=r.updateQueue,d=r.alternate;if(d!==null&&(d=d.updateQueue,u===d)){var h=null,g=null;if(u=u.firstBaseUpdate,u!==null){do{var w={eventTime:u.eventTime,lane:u.lane,tag:u.tag,payload:u.payload,callback:u.callback,next:null};g===null?h=g=w:g=g.next=w,u=u.next}while(u!==null);g===null?h=g=s:g=g.next=s}else h=g=s;u={baseState:d.baseState,firstBaseUpdate:h,lastBaseUpdate:g,shared:d.shared,effects:d.effects},r.updateQueue=u;return}r=u.lastBaseUpdate,r===null?u.firstBaseUpdate=s:r.next=s,u.lastBaseUpdate=s}function Ba(r,s,u,d){var h=r.updateQueue;Vn=!1;var g=h.firstBaseUpdate,w=h.lastBaseUpdate,I=h.shared.pending;if(I!==null){h.shared.pending=null;var F=I,J=F.next;F.next=null,w===null?g=J:w.next=J,w=F;var le=r.alternate;le!==null&&(le=le.updateQueue,I=le.lastBaseUpdate,I!==w&&(I===null?le.firstBaseUpdate=J:I.next=J,le.lastBaseUpdate=F))}if(g!==null){var we=h.baseState;w=0,le=J=F=null,I=g;do{var ie=I.lane,et=I.eventTime;if((d&ie)===ie){le!==null&&(le=le.next={eventTime:et,lane:0,tag:I.tag,payload:I.payload,callback:I.callback,next:null});e:{var $e=r,ai=I;switch(ie=s,et=u,ai.tag){case 1:if($e=ai.payload,typeof $e=="function"){we=$e.call(et,we,ie);break e}we=$e;break e;case 3:$e.flags=$e.flags&-65537|128;case 0:if($e=ai.payload,ie=typeof $e=="function"?$e.call(et,we,ie):$e,ie==null)break e;we=a({},we,ie);break e;case 2:Vn=!0}}I.callback!==null&&I.lane!==0&&(r.flags|=64,ie=h.effects,ie===null?h.effects=[I]:ie.push(I))}else et={eventTime:et,lane:ie,tag:I.tag,payload:I.payload,callback:I.callback,next:null},le===null?(J=le=et,F=we):le=le.next=et,w|=ie;if(I=I.next,I===null){if(I=h.shared.pending,I===null)break;ie=I,I=ie.next,ie.next=null,h.lastBaseUpdate=ie,h.shared.pending=null}}while(!0);if(le===null&&(F=we),h.baseState=F,h.firstBaseUpdate=J,h.lastBaseUpdate=le,s=h.shared.interleaved,s!==null){h=s;do w|=h.lane,h=h.next;while(h!==s)}else g===null&&(h.shared.lanes=0);wr|=w,r.lanes=w,r.memoizedState=we}}function kf(r,s,u){if(r=s.effects,s.effects=null,r!==null)for(s=0;s<r.length;s++){var d=r[s],h=d.callback;if(h!==null){if(d.callback=null,d=u,typeof h!="function")throw Error(l(191,h));h.call(d)}}}var Of=new n.Component().refs;function Vc(r,s,u,d){s=r.memoizedState,u=u(d,s),u=u==null?s:a({},s,u),r.memoizedState=u,r.lanes===0&&(r.updateQueue.baseState=u)}var Da={isMounted:function(r){return(r=r._reactInternals)?K(r)===r:!1},enqueueSetState:function(r,s,u){r=r._reactInternals;var d=Ht(),h=qn(r),g=En(d,h);g.payload=s,u!=null&&(g.callback=u),s=Un(r,g,h),s!==null&&(Oi(s,r,h,d),Fa(s,r,h))},enqueueReplaceState:function(r,s,u){r=r._reactInternals;var d=Ht(),h=qn(r),g=En(d,h);g.tag=1,g.payload=s,u!=null&&(g.callback=u),s=Un(r,g,h),s!==null&&(Oi(s,r,h,d),Fa(s,r,h))},enqueueForceUpdate:function(r,s){r=r._reactInternals;var u=Ht(),d=qn(r),h=En(u,d);h.tag=2,s!=null&&(h.callback=s),s=Un(r,h,d),s!==null&&(Oi(s,r,d,u),Fa(s,r,d))}};function Lf(r,s,u,d,h,g,w){return r=r.stateNode,typeof r.shouldComponentUpdate=="function"?r.shouldComponentUpdate(d,g,w):s.prototype&&s.prototype.isPureReactComponent?!La(u,d)||!La(h,g):!0}function zf(r,s,u){var d=!1,h=jn,g=s.contextType;return typeof g=="object"&&g!==null?g=_i(g):(h=ni(s)?gr:Dt.current,d=s.contextTypes,g=(d=d!=null)?oo(r,h):jn),s=new s(u,g),r.memoizedState=s.state!==null&&s.state!==void 0?s.state:null,s.updater=Da,r.stateNode=s,s._reactInternals=r,d&&(r=r.stateNode,r.__reactInternalMemoizedUnmaskedChildContext=h,r.__reactInternalMemoizedMaskedChildContext=g),s}function Nf(r,s,u,d){r=s.state,typeof s.componentWillReceiveProps=="function"&&s.componentWillReceiveProps(u,d),typeof s.UNSAFE_componentWillReceiveProps=="function"&&s.UNSAFE_componentWillReceiveProps(u,d),s.state!==r&&Da.enqueueReplaceState(s,s.state,null)}function Uc(r,s,u,d){var h=r.stateNode;h.props=u,h.state=r.memoizedState,h.refs=Of,jc(r);var g=s.contextType;typeof g=="object"&&g!==null?h.context=_i(g):(g=ni(s)?gr:Dt.current,h.context=oo(r,g)),h.state=r.memoizedState,g=s.getDerivedStateFromProps,typeof g=="function"&&(Vc(r,s,g,u),h.state=r.memoizedState),typeof s.getDerivedStateFromProps=="function"||typeof h.getSnapshotBeforeUpdate=="function"||typeof h.UNSAFE_componentWillMount!="function"&&typeof h.componentWillMount!="function"||(s=h.state,typeof h.componentWillMount=="function"&&h.componentWillMount(),typeof h.UNSAFE_componentWillMount=="function"&&h.UNSAFE_componentWillMount(),s!==h.state&&Da.enqueueReplaceState(h,h.state,null),Ba(r,u,h,d),h.state=r.memoizedState),typeof h.componentDidMount=="function"&&(r.flags|=4194308)}function us(r,s,u){if(r=u.ref,r!==null&&typeof r!="function"&&typeof r!="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,r));var h=d,g=""+r;return s!==null&&s.ref!==null&&typeof s.ref=="function"&&s.ref._stringRef===g?s.ref:(s=function(w){var I=h.refs;I===Of&&(I=h.refs={}),w===null?delete I[g]:I[g]=w},s._stringRef=g,s)}if(typeof r!="string")throw Error(l(284));if(!u._owner)throw Error(l(290,r))}return r}function ja(r,s){throw r=Object.prototype.toString.call(s),Error(l(31,r==="[object Object]"?"object with keys {"+Object.keys(s).join(", ")+"}":r))}function Ff(r){var s=r._init;return s(r._payload)}function Bf(r){function s(z,_){if(r){var j=z.deletions;j===null?(z.deletions=[_],z.flags|=16):j.push(_)}}function u(z,_){if(!r)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 h(z,_){return z=$n(z,_),z.index=0,z.sibling=null,z}function g(z,_,j){return z.index=j,r?(j=z.alternate,j!==null?(j=j.index,j<_?(z.flags|=2,_):j):(z.flags|=2,_)):(z.flags|=1048576,_)}function w(z){return r&&z.alternate===null&&(z.flags|=2),z}function I(z,_,j,ne){return _===null||_.tag!==6?(_=Id(j,z.mode,ne),_.return=z,_):(_=h(_,j),_.return=z,_)}function F(z,_,j,ne){var me=j.type;return me===f?le(z,_,j.props.children,ne,j.key):_!==null&&(_.elementType===me||typeof me=="object"&&me!==null&&me.$$typeof===A&&Ff(me)===_.type)?(ne=h(_,j.props),ne.ref=us(z,_,j),ne.return=z,ne):(ne=hl(j.type,j.key,j.props,null,z.mode,ne),ne.ref=us(z,_,j),ne.return=z,ne)}function J(z,_,j,ne){return _===null||_.tag!==4||_.stateNode.containerInfo!==j.containerInfo||_.stateNode.implementation!==j.implementation?(_=_d(j,z.mode,ne),_.return=z,_):(_=h(_,j.children||[]),_.return=z,_)}function le(z,_,j,ne,me){return _===null||_.tag!==7?(_=Er(j,z.mode,ne,me),_.return=z,_):(_=h(_,j),_.return=z,_)}function we(z,_,j){if(typeof _=="string"&&_!==""||typeof _=="number")return _=Id(""+_,z.mode,j),_.return=z,_;if(typeof _=="object"&&_!==null){switch(_.$$typeof){case p:return j=hl(_.type,_.key,_.props,null,z.mode,j),j.ref=us(z,null,_),j.return=z,j;case m:return _=_d(_,z.mode,j),_.return=z,_;case A:var ne=_._init;return we(z,ne(_._payload),j)}if(ke(_)||M(_))return _=Er(_,z.mode,j,null),_.return=z,_;ja(z,_)}return null}function ie(z,_,j,ne){var me=_!==null?_.key:null;if(typeof j=="string"&&j!==""||typeof j=="number")return me!==null?null:I(z,_,""+j,ne);if(typeof j=="object"&&j!==null){switch(j.$$typeof){case p:return j.key===me?F(z,_,j,ne):null;case m:return j.key===me?J(z,_,j,ne):null;case A:return me=j._init,ie(z,_,me(j._payload),ne)}if(ke(j)||M(j))return me!==null?null:le(z,_,j,ne,null);ja(z,j)}return null}function et(z,_,j,ne,me){if(typeof ne=="string"&&ne!==""||typeof ne=="number")return z=z.get(j)||null,I(_,z,""+ne,me);if(typeof ne=="object"&&ne!==null){switch(ne.$$typeof){case p:return z=z.get(ne.key===null?j:ne.key)||null,F(_,z,ne,me);case m:return z=z.get(ne.key===null?j:ne.key)||null,J(_,z,ne,me);case A:var Ce=ne._init;return et(z,_,j,Ce(ne._payload),me)}if(ke(ne)||M(ne))return z=z.get(j)||null,le(_,z,ne,me,null);ja(_,ne)}return null}function $e(z,_,j,ne){for(var me=null,Ce=null,be=_,Le=_=0,kt=null;be!==null&&Le<j.length;Le++){be.index>Le?(kt=be,be=null):kt=be.sibling;var ze=ie(z,be,j[Le],ne);if(ze===null){be===null&&(be=kt);break}r&&be&&ze.alternate===null&&s(z,be),_=g(ze,_,Le),Ce===null?me=ze:Ce.sibling=ze,Ce=ze,be=kt}if(Le===j.length)return u(z,be),it&&vr(z,Le),me;if(be===null){for(;Le<j.length;Le++)be=we(z,j[Le],ne),be!==null&&(_=g(be,_,Le),Ce===null?me=be:Ce.sibling=be,Ce=be);return it&&vr(z,Le),me}for(be=d(z,be);Le<j.length;Le++)kt=et(be,z,Le,j[Le],ne),kt!==null&&(r&&kt.alternate!==null&&be.delete(kt.key===null?Le:kt.key),_=g(kt,_,Le),Ce===null?me=kt:Ce.sibling=kt,Ce=kt);return r&&be.forEach(function(Yn){return s(z,Yn)}),it&&vr(z,Le),me}function ai(z,_,j,ne){var me=M(j);if(typeof me!="function")throw Error(l(150));if(j=me.call(j),j==null)throw Error(l(151));for(var Ce=me=null,be=_,Le=_=0,kt=null,ze=j.next();be!==null&&!ze.done;Le++,ze=j.next()){be.index>Le?(kt=be,be=null):kt=be.sibling;var Yn=ie(z,be,ze.value,ne);if(Yn===null){be===null&&(be=kt);break}r&&be&&Yn.alternate===null&&s(z,be),_=g(Yn,_,Le),Ce===null?me=Yn:Ce.sibling=Yn,Ce=Yn,be=kt}if(ze.done)return u(z,be),it&&vr(z,Le),me;if(be===null){for(;!ze.done;Le++,ze=j.next())ze=we(z,ze.value,ne),ze!==null&&(_=g(ze,_,Le),Ce===null?me=ze:Ce.sibling=ze,Ce=ze);return it&&vr(z,Le),me}for(be=d(z,be);!ze.done;Le++,ze=j.next())ze=et(be,z,Le,ze.value,ne),ze!==null&&(r&&ze.alternate!==null&&be.delete(ze.key===null?Le:ze.key),_=g(ze,_,Le),Ce===null?me=ze:Ce.sibling=ze,Ce=ze);return r&&be.forEach(function($w){return s(z,$w)}),it&&vr(z,Le),me}function Rn(z,_,j,ne){if(typeof j=="object"&&j!==null&&j.type===f&&j.key===null&&(j=j.props.children),typeof j=="object"&&j!==null){switch(j.$$typeof){case p:e:{for(var me=j.key,Ce=_;Ce!==null;){if(Ce.key===me){if(me=j.type,me===f){if(Ce.tag===7){u(z,Ce.sibling),_=h(Ce,j.props.children),_.return=z,z=_;break e}}else if(Ce.elementType===me||typeof me=="object"&&me!==null&&me.$$typeof===A&&Ff(me)===Ce.type){u(z,Ce.sibling),_=h(Ce,j.props),_.ref=us(z,Ce,j),_.return=z,z=_;break e}u(z,Ce);break}else s(z,Ce);Ce=Ce.sibling}j.type===f?(_=Er(j.props.children,z.mode,ne,j.key),_.return=z,z=_):(ne=hl(j.type,j.key,j.props,null,z.mode,ne),ne.ref=us(z,_,j),ne.return=z,z=ne)}return w(z);case m:e:{for(Ce=j.key;_!==null;){if(_.key===Ce)if(_.tag===4&&_.stateNode.containerInfo===j.containerInfo&&_.stateNode.implementation===j.implementation){u(z,_.sibling),_=h(_,j.children||[]),_.return=z,z=_;break e}else{u(z,_);break}else s(z,_);_=_.sibling}_=_d(j,z.mode,ne),_.return=z,z=_}return w(z);case A:return Ce=j._init,Rn(z,_,Ce(j._payload),ne)}if(ke(j))return $e(z,_,j,ne);if(M(j))return ai(z,_,j,ne);ja(z,j)}return typeof j=="string"&&j!==""||typeof j=="number"?(j=""+j,_!==null&&_.tag===6?(u(z,_.sibling),_=h(_,j),_.return=z,z=_):(u(z,_),_=Id(j,z.mode,ne),_.return=z,z=_),w(z)):u(z,_)}return Rn}var ho=Bf(!0),Df=Bf(!1),cs={},Mi=Dn(cs),ds=Dn(cs),po=Dn(cs);function ln(r){if(r===cs)throw Error(l(174));return r}function Hc(r,s){Ge(po,s),Ge(ds,r),Ge(Mi,cs),r=We(s),Je(Mi),Ge(Mi,r)}function fo(){Je(Mi),Je(ds),Je(po)}function jf(r){var s=ln(po.current),u=ln(Mi.current);s=Ye(u,r.type,s),u!==s&&(Ge(ds,r),Ge(Mi,s))}function Wc(r){ds.current===r&&(Je(Mi),Je(ds))}var at=Dn(0);function Va(r){for(var s=r;s!==null;){if(s.tag===13){var u=s.memoizedState;if(u!==null&&(u=u.dehydrated,u===null||mf(u)||vc(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===r)break;for(;s.sibling===null;){if(s.return===null||s.return===r)return null;s=s.return}s.sibling.return=s.return,s=s.sibling}return null}var qc=[];function Qc(){for(var r=0;r<qc.length;r++){var s=qc[r];He?s._workInProgressVersionPrimary=null:s._workInProgressVersionSecondary=null}qc.length=0}var Ua=c.ReactCurrentDispatcher,$c=c.ReactCurrentBatchConfig,Sr=0,lt=null,At=null,_t=null,Ha=!1,hs=!1,ps=0,vw=0;function jt(){throw Error(l(321))}function Yc(r,s){if(s===null)return!1;for(var u=0;u<s.length&&u<r.length;u++)if(!Wi(r[u],s[u]))return!1;return!0}function Gc(r,s,u,d,h,g){if(Sr=g,lt=s,s.memoizedState=null,s.updateQueue=null,s.lanes=0,Ua.current=r===null||r.memoizedState===null?bw:Pw,r=u(d,h),hs){g=0;do{if(hs=!1,ps=0,25<=g)throw Error(l(301));g+=1,_t=At=null,s.updateQueue=null,Ua.current=Cw,r=u(d,h)}while(hs)}if(Ua.current=Qa,s=At!==null&&At.next!==null,Sr=0,_t=At=lt=null,Ha=!1,s)throw Error(l(300));return r}function Xc(){var r=ps!==0;return ps=0,r}function un(){var r={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return _t===null?lt.memoizedState=_t=r:_t=_t.next=r,_t}function ki(){if(At===null){var r=lt.alternate;r=r!==null?r.memoizedState:null}else r=At.next;var s=_t===null?lt.memoizedState:_t.next;if(s!==null)_t=s,At=r;else{if(r===null)throw Error(l(310));At=r,r={memoizedState:At.memoizedState,baseState:At.baseState,baseQueue:At.baseQueue,queue:At.queue,next:null},_t===null?lt.memoizedState=_t=r:_t=_t.next=r}return _t}function fs(r,s){return typeof s=="function"?s(r):s}function Kc(r){var s=ki(),u=s.queue;if(u===null)throw Error(l(311));u.lastRenderedReducer=r;var d=At,h=d.baseQueue,g=u.pending;if(g!==null){if(h!==null){var w=h.next;h.next=g.next,g.next=w}d.baseQueue=h=g,u.pending=null}if(h!==null){g=h.next,d=d.baseState;var I=w=null,F=null,J=g;do{var le=J.lane;if((Sr&le)===le)F!==null&&(F=F.next={lane:0,action:J.action,hasEagerState:J.hasEagerState,eagerState:J.eagerState,next:null}),d=J.hasEagerState?J.eagerState:r(d,J.action);else{var we={lane:le,action:J.action,hasEagerState:J.hasEagerState,eagerState:J.eagerState,next:null};F===null?(I=F=we,w=d):F=F.next=we,lt.lanes|=le,wr|=le}J=J.next}while(J!==null&&J!==g);F===null?w=d:F.next=I,Wi(d,s.memoizedState)||(ri=!0),s.memoizedState=d,s.baseState=w,s.baseQueue=F,u.lastRenderedState=d}if(r=u.interleaved,r!==null){h=r;do g=h.lane,lt.lanes|=g,wr|=g,h=h.next;while(h!==r)}else h===null&&(u.lanes=0);return[s.memoizedState,u.dispatch]}function Zc(r){var s=ki(),u=s.queue;if(u===null)throw Error(l(311));u.lastRenderedReducer=r;var d=u.dispatch,h=u.pending,g=s.memoizedState;if(h!==null){u.pending=null;var w=h=h.next;do g=r(g,w.action),w=w.next;while(w!==h);Wi(g,s.memoizedState)||(ri=!0),s.memoizedState=g,s.baseQueue===null&&(s.baseState=g),u.lastRenderedState=g}return[g,d]}function Vf(){}function Uf(r,s){var u=lt,d=ki(),h=s(),g=!Wi(d.memoizedState,h);if(g&&(d.memoizedState=h,ri=!0),d=d.queue,Jc(qf.bind(null,u,d,r),[r]),d.getSnapshot!==s||g||_t!==null&&_t.memoizedState.tag&1){if(u.flags|=2048,ms(9,Wf.bind(null,u,d,h,s),void 0,null),Mt===null)throw Error(l(349));Sr&30||Hf(u,s,h)}return h}function Hf(r,s,u){r.flags|=16384,r={getSnapshot:s,value:u},s=lt.updateQueue,s===null?(s={lastEffect:null,stores:null},lt.updateQueue=s,s.stores=[r]):(u=s.stores,u===null?s.stores=[r]:u.push(r))}function Wf(r,s,u,d){s.value=u,s.getSnapshot=d,Qf(s)&&$f(r)}function qf(r,s,u){return u(function(){Qf(s)&&$f(r)})}function Qf(r){var s=r.getSnapshot;r=r.value;try{var u=s();return!Wi(r,u)}catch{return!0}}function $f(r){var s=an(r,1);s!==null&&Oi(s,r,1,-1)}function Yf(r){var s=un();return typeof r=="function"&&(r=r()),s.memoizedState=s.baseState=r,r={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:fs,lastRenderedState:r},s.queue=r,r=r.dispatch=ww.bind(null,lt,r),[s.memoizedState,r]}function ms(r,s,u,d){return r={tag:r,create:s,destroy:u,deps:d,next:null},s=lt.updateQueue,s===null?(s={lastEffect:null,stores:null},lt.updateQueue=s,s.lastEffect=r.next=r):(u=s.lastEffect,u===null?s.lastEffect=r.next=r:(d=u.next,u.next=r,r.next=d,s.lastEffect=r)),r}function Gf(){return ki().memoizedState}function Wa(r,s,u,d){var h=un();lt.flags|=r,h.memoizedState=ms(1|s,u,void 0,d===void 0?null:d)}function qa(r,s,u,d){var h=ki();d=d===void 0?null:d;var g=void 0;if(At!==null){var w=At.memoizedState;if(g=w.destroy,d!==null&&Yc(d,w.deps)){h.memoizedState=ms(s,u,g,d);return}}lt.flags|=r,h.memoizedState=ms(1|s,u,g,d)}function Xf(r,s){return Wa(8390656,8,r,s)}function Jc(r,s){return qa(2048,8,r,s)}function Kf(r,s){return qa(4,2,r,s)}function Zf(r,s){return qa(4,4,r,s)}function Jf(r,s){if(typeof s=="function")return r=r(),s(r),function(){s(null)};if(s!=null)return r=r(),s.current=r,function(){s.current=null}}function em(r,s,u){return u=u!=null?u.concat([r]):null,qa(4,4,Jf.bind(null,s,r),u)}function ed(){}function tm(r,s){var u=ki();s=s===void 0?null:s;var d=u.memoizedState;return d!==null&&s!==null&&Yc(s,d[1])?d[0]:(u.memoizedState=[r,s],r)}function im(r,s){var u=ki();s=s===void 0?null:s;var d=u.memoizedState;return d!==null&&s!==null&&Yc(s,d[1])?d[0]:(r=r(),u.memoizedState=[r,s],r)}function nm(r,s,u){return Sr&21?(Wi(u,s)||(u=xf(),lt.lanes|=u,wr|=u,r.baseState=!0),s):(r.baseState&&(r.baseState=!1,ri=!0),r.memoizedState=u)}function xw(r,s){var u=Oe;Oe=u!==0&&4>u?u:4,r(!0);var d=$c.transition;$c.transition={};try{r(!1),s()}finally{Oe=u,$c.transition=d}}function rm(){return ki().memoizedState}function Sw(r,s,u){var d=qn(r);if(u={lane:d,action:u,hasEagerState:!1,eagerState:null,next:null},om(r))sm(s,u);else if(u=If(r,s,u,d),u!==null){var h=Ht();Oi(u,r,d,h),am(u,s,d)}}function ww(r,s,u){var d=qn(r),h={lane:d,action:u,hasEagerState:!1,eagerState:null,next:null};if(om(r))sm(s,h);else{var g=r.alternate;if(r.lanes===0&&(g===null||g.lanes===0)&&(g=s.lastRenderedReducer,g!==null))try{var w=s.lastRenderedState,I=g(w,u);if(h.hasEagerState=!0,h.eagerState=I,Wi(I,w)){var F=s.interleaved;F===null?(h.next=h,Dc(s)):(h.next=F.next,F.next=h),s.interleaved=h;return}}catch{}finally{}u=If(r,s,h,d),u!==null&&(h=Ht(),Oi(u,r,d,h),am(u,s,d))}}function om(r){var s=r.alternate;return r===lt||s!==null&&s===lt}function sm(r,s){hs=Ha=!0;var u=r.pending;u===null?s.next=s:(s.next=u.next,u.next=s),r.pending=s}function am(r,s,u){if(u&4194240){var d=s.lanes;d&=r.pendingLanes,u|=d,s.lanes=u,Ec(r,u)}}var Qa={readContext:_i,useCallback:jt,useContext:jt,useEffect:jt,useImperativeHandle:jt,useInsertionEffect:jt,useLayoutEffect:jt,useMemo:jt,useReducer:jt,useRef:jt,useState:jt,useDebugValue:jt,useDeferredValue:jt,useTransition:jt,useMutableSource:jt,useSyncExternalStore:jt,useId:jt,unstable_isNewReconciler:!1},bw={readContext:_i,useCallback:function(r,s){return un().memoizedState=[r,s===void 0?null:s],r},useContext:_i,useEffect:Xf,useImperativeHandle:function(r,s,u){return u=u!=null?u.concat([r]):null,Wa(4194308,4,Jf.bind(null,s,r),u)},useLayoutEffect:function(r,s){return Wa(4194308,4,r,s)},useInsertionEffect:function(r,s){return Wa(4,2,r,s)},useMemo:function(r,s){var u=un();return s=s===void 0?null:s,r=r(),u.memoizedState=[r,s],r},useReducer:function(r,s,u){var d=un();return s=u!==void 0?u(s):s,d.memoizedState=d.baseState=s,r={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:r,lastRenderedState:s},d.queue=r,r=r.dispatch=Sw.bind(null,lt,r),[d.memoizedState,r]},useRef:function(r){var s=un();return r={current:r},s.memoizedState=r},useState:Yf,useDebugValue:ed,useDeferredValue:function(r){return un().memoizedState=r},useTransition:function(){var r=Yf(!1),s=r[0];return r=xw.bind(null,r[1]),un().memoizedState=r,[s,r]},useMutableSource:function(){},useSyncExternalStore:function(r,s,u){var d=lt,h=un();if(it){if(u===void 0)throw Error(l(407));u=u()}else{if(u=s(),Mt===null)throw Error(l(349));Sr&30||Hf(d,s,u)}h.memoizedState=u;var g={value:u,getSnapshot:s};return h.queue=g,Xf(qf.bind(null,d,g,r),[r]),d.flags|=2048,ms(9,Wf.bind(null,d,g,u,s),void 0,null),u},useId:function(){var r=un(),s=Mt.identifierPrefix;if(it){var u=Cn,d=Pn;u=(d&~(1<<32-Hi(d)-1)).toString(32)+u,s=":"+s+"R"+u,u=ps++,0<u&&(s+="H"+u.toString(32)),s+=":"}else u=vw++,s=":"+s+"r"+u.toString(32)+":";return r.memoizedState=s},unstable_isNewReconciler:!1},Pw={readContext:_i,useCallback:tm,useContext:_i,useEffect:Jc,useImperativeHandle:em,useInsertionEffect:Kf,useLayoutEffect:Zf,useMemo:im,useReducer:Kc,useRef:Gf,useState:function(){return Kc(fs)},useDebugValue:ed,useDeferredValue:function(r){var s=ki();return nm(s,At.memoizedState,r)},useTransition:function(){var r=Kc(fs)[0],s=ki().memoizedState;return[r,s]},useMutableSource:Vf,useSyncExternalStore:Uf,useId:rm,unstable_isNewReconciler:!1},Cw={readContext:_i,useCallback:tm,useContext:_i,useEffect:Jc,useImperativeHandle:em,useInsertionEffect:Kf,useLayoutEffect:Zf,useMemo:im,useReducer:Zc,useRef:Gf,useState:function(){return Zc(fs)},useDebugValue:ed,useDeferredValue:function(r){var s=ki();return At===null?s.memoizedState=r:nm(s,At.memoizedState,r)},useTransition:function(){var r=Zc(fs)[0],s=ki().memoizedState;return[r,s]},useMutableSource:Vf,useSyncExternalStore:Uf,useId:rm,unstable_isNewReconciler:!1};function mo(r,s){try{var u="",d=s;do u+=yw(d),d=d.return;while(d);var h=u}catch(g){h=`
6
6
  Error generating stack: `+g.message+`
7
- `+g.stack}return{value:r,source:s,stack:d,digest:null}}function Qc(r,s,u){return{value:r,source:null,stack:u??null,digest:s??null}}function Yc(r,s){try{console.error(s.value)}catch(u){setTimeout(function(){throw u})}}var dw=typeof WeakMap=="function"?WeakMap:Map;function Jf(r,s,u){u=Pn(-1,u),u.tag=3,u.payload={element:null};var h=s.value;return u.callback=function(){el||(el=!0,ph=h),Yc(r,s)},u}function em(r,s,u){u=Pn(-1,u),u.tag=3;var h=r.type.getDerivedStateFromError;if(typeof h=="function"){var d=s.value;u.payload=function(){return h(d)},u.callback=function(){Yc(r,s)}}var g=r.stateNode;return g!==null&&typeof g.componentDidCatch=="function"&&(u.callback=function(){Yc(r,s),typeof h!="function"&&(Bn===null?Bn=new Set([this]):Bn.add(this));var S=s.stack;this.componentDidCatch(s.value,{componentStack:S!==null?S:""})}),u}function tm(r,s,u){var h=r.pingCache;if(h===null){h=r.pingCache=new dw;var d=new Set;h.set(s,d)}else d=h.get(s),d===void 0&&(d=new Set,h.set(s,d));d.has(u)||(d.add(u),r=Aw.bind(null,r,s,u),s.then(r,r))}function im(r){do{var s;if((s=r.tag===13)&&(s=r.memoizedState,s=s!==null?s.dehydrated!==null:!0),s)return r;r=r.return}while(r!==null);return null}function nm(r,s,u,h,d){return r.mode&1?(r.flags|=65536,r.lanes=d,r):(r===s?r.flags|=65536:(r.flags|=128,u.flags|=131072,u.flags&=-52805,u.tag===1&&(u.alternate===null?u.tag=17:(s=Pn(-1,1),s.tag=2,Fn(u,s,1))),u.lanes|=1),r)}var pw=c.ReactCurrentOwner,ni=!1;function Qt(r,s,u,h){s.child=r===null?_f(s,null,u,h):ao(s,r.child,u,h)}function rm(r,s,u,h,d){u=u.render;var g=s.ref;return so(s,d),h=jc(r,s,u,h,g,d),u=Vc(),r!==null&&!ni?(s.updateQueue=r.updateQueue,s.flags&=-2053,r.lanes&=~d,Cn(r,s,d)):(nt&&u&&wc(s),s.flags|=1,Qt(r,s,h,d),s.child)}function om(r,s,u,h,d){if(r===null){var g=u.type;return typeof g=="function"&&!xh(g)&&g.defaultProps===void 0&&u.compare===null&&u.defaultProps===void 0?(s.tag=15,s.type=g,sm(r,s,g,h,d)):(r=sl(u.type,null,h,s,s.mode,d),r.ref=s.ref,r.return=s,s.child=r)}if(g=r.child,!(r.lanes&d)){var S=g.memoizedProps;if(u=u.compare,u=u!==null?u:Ta,u(S,h)&&r.ref===s.ref)return Cn(r,s,d)}return s.flags|=1,r=Un(g,h),r.ref=s.ref,r.return=s,s.child=r}function sm(r,s,u,h,d){if(r!==null){var g=r.memoizedProps;if(Ta(g,h)&&r.ref===s.ref)if(ni=!1,s.pendingProps=h=g,(r.lanes&d)!==0)r.flags&131072&&(ni=!0);else return s.lanes=r.lanes,Cn(r,s,d)}return Gc(r,s,u,h,d)}function am(r,s,u){var h=s.pendingProps,d=h.children,g=r!==null?r.memoizedState:null;if(h.mode==="hidden")if(!(s.mode&1))s.memoizedState={baseLanes:0,cachePool:null,transitions:null},Ye(po,gi),gi|=u;else{if(!(u&1073741824))return r=g!==null?g.baseLanes|u:u,s.lanes=s.childLanes=1073741824,s.memoizedState={baseLanes:r,cachePool:null,transitions:null},s.updateQueue=null,Ye(po,gi),gi|=r,null;s.memoizedState={baseLanes:0,cachePool:null,transitions:null},h=g!==null?g.baseLanes:u,Ye(po,gi),gi|=h}else g!==null?(h=g.baseLanes|u,s.memoizedState=null):h=u,Ye(po,gi),gi|=h;return Qt(r,s,d,u),s.child}function lm(r,s){var u=s.ref;(r===null&&u!==null||r!==null&&r.ref!==u)&&(s.flags|=512,s.flags|=2097152)}function Gc(r,s,u,h,d){var g=ii(u)?pr:Bt.current;return g=to(s,g),so(s,d),u=jc(r,s,u,h,g,d),h=Vc(),r!==null&&!ni?(s.updateQueue=r.updateQueue,s.flags&=-2053,r.lanes&=~d,Cn(r,s,d)):(nt&&h&&wc(s),s.flags|=1,Qt(r,s,u,d),s.child)}function um(r,s,u,h,d){if(ii(u)){var g=!0;xa(s)}else g=!1;if(so(s,d),s.stateNode===null)Ua(r,s),Af(s,u,h),kc(s,u,h,d),h=!0;else if(r===null){var S=s.stateNode,I=s.memoizedProps;S.props=I;var z=S.context,Z=u.contextType;typeof Z=="object"&&Z!==null?Z=Ti(Z):(Z=ii(u)?pr:Bt.current,Z=to(s,Z));var le=u.getDerivedStateFromProps,we=typeof le=="function"||typeof S.getSnapshotBeforeUpdate=="function";we||typeof S.UNSAFE_componentWillReceiveProps!="function"&&typeof S.componentWillReceiveProps!="function"||(I!==h||z!==Z)&&Rf(s,S,h,Z),Nn=!1;var te=s.memoizedState;S.state=te,Oa(s,h,S,d),z=s.memoizedState,I!==h||te!==z||ti.current||Nn?(typeof le=="function"&&(Oc(s,u,le,h),z=s.memoizedState),(I=Nn||Ef(s,u,I,h,te,z,Z))?(we||typeof S.UNSAFE_componentWillMount!="function"&&typeof S.componentWillMount!="function"||(typeof S.componentWillMount=="function"&&S.componentWillMount(),typeof S.UNSAFE_componentWillMount=="function"&&S.UNSAFE_componentWillMount()),typeof S.componentDidMount=="function"&&(s.flags|=4194308)):(typeof S.componentDidMount=="function"&&(s.flags|=4194308),s.memoizedProps=h,s.memoizedState=z),S.props=h,S.state=z,S.context=Z,h=I):(typeof S.componentDidMount=="function"&&(s.flags|=4194308),h=!1)}else{S=s.stateNode,wf(r,s),I=s.memoizedProps,Z=s.type===s.elementType?I:Wi(s.type,I),S.props=Z,we=s.pendingProps,te=S.context,z=u.contextType,typeof z=="object"&&z!==null?z=Ti(z):(z=ii(u)?pr:Bt.current,z=to(s,z));var Je=u.getDerivedStateFromProps;(le=typeof Je=="function"||typeof S.getSnapshotBeforeUpdate=="function")||typeof S.UNSAFE_componentWillReceiveProps!="function"&&typeof S.componentWillReceiveProps!="function"||(I!==we||te!==z)&&Rf(s,S,h,z),Nn=!1,te=s.memoizedState,S.state=te,Oa(s,h,S,d);var Qe=s.memoizedState;I!==we||te!==Qe||ti.current||Nn?(typeof Je=="function"&&(Oc(s,u,Je,h),Qe=s.memoizedState),(Z=Nn||Ef(s,u,Z,h,te,Qe,z)||!1)?(le||typeof S.UNSAFE_componentWillUpdate!="function"&&typeof S.componentWillUpdate!="function"||(typeof S.componentWillUpdate=="function"&&S.componentWillUpdate(h,Qe,z),typeof S.UNSAFE_componentWillUpdate=="function"&&S.UNSAFE_componentWillUpdate(h,Qe,z)),typeof S.componentDidUpdate=="function"&&(s.flags|=4),typeof S.getSnapshotBeforeUpdate=="function"&&(s.flags|=1024)):(typeof S.componentDidUpdate!="function"||I===r.memoizedProps&&te===r.memoizedState||(s.flags|=4),typeof S.getSnapshotBeforeUpdate!="function"||I===r.memoizedProps&&te===r.memoizedState||(s.flags|=1024),s.memoizedProps=h,s.memoizedState=Qe),S.props=h,S.state=Qe,S.context=z,h=Z):(typeof S.componentDidUpdate!="function"||I===r.memoizedProps&&te===r.memoizedState||(s.flags|=4),typeof S.getSnapshotBeforeUpdate!="function"||I===r.memoizedProps&&te===r.memoizedState||(s.flags|=1024),h=!1)}return $c(r,s,u,h,g,d)}function $c(r,s,u,h,d,g){lm(r,s);var S=(s.flags&128)!==0;if(!h&&!S)return d&&uf(s,u,!1),Cn(r,s,g);h=s.stateNode,pw.current=s;var I=S&&typeof u.getDerivedStateFromError!="function"?null:h.render();return s.flags|=1,r!==null&&S?(s.child=ao(s,r.child,null,g),s.child=ao(s,null,I,g)):Qt(r,s,I,g),s.memoizedState=h.state,d&&uf(s,u,!0),s.child}function cm(r){var s=r.stateNode;s.pendingContext?af(r,s.pendingContext,s.pendingContext!==s.context):s.context&&af(r,s.context,!1),Lc(r,s.containerInfo)}function hm(r,s,u,h,d){return ro(),Ec(d),s.flags|=256,Qt(r,s,u,h),s.child}var Xc={dehydrated:null,treeContext:null,retryLane:0};function Kc(r){return{baseLanes:r,cachePool:null,transitions:null}}function dm(r,s,u){var h=s.pendingProps,d=at.current,g=!1,S=(s.flags&128)!==0,I;if((I=S)||(I=r!==null&&r.memoizedState===null?!1:(d&2)!==0),I?(g=!0,s.flags&=-129):(r===null||r.memoizedState!==null)&&(d|=1),Ye(at,d&1),r===null)return Cc(s),r=s.memoizedState,r!==null&&(r=r.dehydrated,r!==null)?(s.mode&1?uc(r)?s.lanes=8:s.lanes=1073741824:s.lanes=1,null):(S=h.children,r=h.fallback,g?(h=s.mode,g=s.child,S={mode:"hidden",children:S},!(h&1)&&g!==null?(g.childLanes=0,g.pendingProps=S):g=al(S,h,0,null),r=br(r,h,u,null),g.return=s,r.return=s,g.sibling=r,s.child=g,s.child.memoizedState=Kc(u),s.memoizedState=Xc,r):Zc(s,S));if(d=r.memoizedState,d!==null&&(I=d.dehydrated,I!==null))return fw(r,s,S,h,I,d,u);if(g){g=h.fallback,S=s.mode,d=r.child,I=d.sibling;var z={mode:"hidden",children:h.children};return!(S&1)&&s.child!==d?(h=s.child,h.childLanes=0,h.pendingProps=z,s.deletions=null):(h=Un(d,z),h.subtreeFlags=d.subtreeFlags&14680064),I!==null?g=Un(I,g):(g=br(g,S,u,null),g.flags|=2),g.return=s,h.return=s,h.sibling=g,s.child=h,h=g,g=s.child,S=r.child.memoizedState,S=S===null?Kc(u):{baseLanes:S.baseLanes|u,cachePool:null,transitions:S.transitions},g.memoizedState=S,g.childLanes=r.childLanes&~u,s.memoizedState=Xc,h}return g=r.child,r=g.sibling,h=Un(g,{mode:"visible",children:h.children}),!(s.mode&1)&&(h.lanes=u),h.return=s,h.sibling=null,r!==null&&(u=s.deletions,u===null?(s.deletions=[r],s.flags|=16):u.push(r)),s.child=h,s.memoizedState=null,h}function Zc(r,s){return s=al({mode:"visible",children:s},r.mode,0,null),s.return=r,r.child=s}function Va(r,s,u,h){return h!==null&&Ec(h),ao(s,r.child,null,u),r=Zc(s,s.pendingProps.children),r.flags|=2,s.memoizedState=null,r}function fw(r,s,u,h,d,g,S){if(u)return s.flags&256?(s.flags&=-257,h=Qc(Error(l(422))),Va(r,s,S,h)):s.memoizedState!==null?(s.child=r.child,s.flags|=128,null):(g=h.fallback,d=s.mode,h=al({mode:"visible",children:h.children},d,0,null),g=br(g,d,S,null),g.flags|=2,h.return=s,g.return=s,h.sibling=g,s.child=h,s.mode&1&&ao(s,r.child,null,S),s.child.memoizedState=Kc(S),s.memoizedState=Xc,g);if(!(s.mode&1))return Va(r,s,S,null);if(uc(d))return h=RS(d).digest,g=Error(l(419)),h=Qc(g,h,void 0),Va(r,s,S,h);if(u=(S&r.childLanes)!==0,ni||u){if(h=Mt,h!==null){switch(S&-S){case 4:d=2;break;case 16:d=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:d=32;break;case 536870912:d=268435456;break;default:d=0}d=d&(h.suspendedLanes|S)?0:d,d!==0&&d!==g.retryLane&&(g.retryLane=d,sn(r,d),Mi(h,r,d,-1))}return vh(),h=Qc(Error(l(421))),Va(r,s,S,h)}return sf(d)?(s.flags|=128,s.child=r.child,s=Rw.bind(null,r),TS(d,s),null):(r=g.treeContext,ee&&(Ri=MS(d),mi=s,nt=!0,Hi=null,ns=!1,r!==null&&(Ei[Ai++]=wn,Ei[Ai++]=bn,Ei[Ai++]=fr,wn=r.id,bn=r.overflow,fr=s)),s=Zc(s,h.children),s.flags|=4096,s)}function pm(r,s,u){r.lanes|=s;var h=r.alternate;h!==null&&(h.lanes|=s),Ic(r.return,s,u)}function Jc(r,s,u,h,d){var g=r.memoizedState;g===null?r.memoizedState={isBackwards:s,rendering:null,renderingStartTime:0,last:h,tail:u,tailMode:d}:(g.isBackwards=s,g.rendering=null,g.renderingStartTime=0,g.last=h,g.tail=u,g.tailMode=d)}function fm(r,s,u){var h=s.pendingProps,d=h.revealOrder,g=h.tail;if(Qt(r,s,h.children,u),h=at.current,h&2)h=h&1|2,s.flags|=128;else{if(r!==null&&r.flags&128)e:for(r=s.child;r!==null;){if(r.tag===13)r.memoizedState!==null&&pm(r,u,s);else if(r.tag===19)pm(r,u,s);else if(r.child!==null){r.child.return=r,r=r.child;continue}if(r===s)break e;for(;r.sibling===null;){if(r.return===null||r.return===s)break e;r=r.return}r.sibling.return=r.return,r=r.sibling}h&=1}if(Ye(at,h),!(s.mode&1))s.memoizedState=null;else switch(d){case"forwards":for(u=s.child,d=null;u!==null;)r=u.alternate,r!==null&&za(r)===null&&(d=u),u=u.sibling;u=d,u===null?(d=s.child,s.child=null):(d=u.sibling,u.sibling=null),Jc(s,!1,d,u,g);break;case"backwards":for(u=null,d=s.child,s.child=null;d!==null;){if(r=d.alternate,r!==null&&za(r)===null){s.child=d;break}r=d.sibling,d.sibling=u,u=d,d=r}Jc(s,!0,u,null,g);break;case"together":Jc(s,!1,null,null,void 0);break;default:s.memoizedState=null}return s.child}function Ua(r,s){!(s.mode&1)&&r!==null&&(r.alternate=null,s.alternate=null,s.flags|=2)}function Cn(r,s,u){if(r!==null&&(s.dependencies=r.dependencies),vr|=s.lanes,!(u&s.childLanes))return null;if(r!==null&&s.child!==r.child)throw Error(l(153));if(s.child!==null){for(r=s.child,u=Un(r,r.pendingProps),s.child=u,u.return=s;r.sibling!==null;)r=r.sibling,u=u.sibling=Un(r,r.pendingProps),u.return=s;u.sibling=null}return s.child}function mw(r,s,u){switch(s.tag){case 3:cm(s),ro();break;case 5:Mf(s);break;case 1:ii(s.type)&&xa(s);break;case 4:Lc(s,s.stateNode.containerInfo);break;case 10:xf(s,s.type._context,s.memoizedProps.value);break;case 13:var h=s.memoizedState;if(h!==null)return h.dehydrated!==null?(Ye(at,at.current&1),s.flags|=128,null):u&s.child.childLanes?dm(r,s,u):(Ye(at,at.current&1),r=Cn(r,s,u),r!==null?r.sibling:null);Ye(at,at.current&1);break;case 19:if(h=(u&s.childLanes)!==0,r.flags&128){if(h)return fm(r,s,u);s.flags|=128}var d=s.memoizedState;if(d!==null&&(d.rendering=null,d.tail=null,d.lastEffect=null),Ye(at,at.current),h)break;return null;case 22:case 23:return s.lanes=0,am(r,s,u)}return Cn(r,s,u)}function un(r){r.flags|=4}function mm(r,s){if(r!==null&&r.child===s.child)return!0;if(s.flags&16)return!1;for(r=s.child;r!==null;){if(r.flags&12854||r.subtreeFlags&12854)return!1;r=r.sibling}return!0}var hs,ds,Ha,Wa;if(Ae)hs=function(r,s){for(var u=s.child;u!==null;){if(u.tag===5||u.tag===6)ye(r,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}},ds=function(){},Ha=function(r,s,u,h,d){if(r=r.memoizedProps,r!==h){var g=s.stateNode,S=an(Ii.current);u=N(g,u,r,h,d,S),(s.updateQueue=u)&&un(s)}},Wa=function(r,s,u,h){u!==h&&un(s)};else if(We){hs=function(r,s,u,h){for(var d=s.child;d!==null;){if(d.tag===5){var g=d.stateNode;u&&h&&(g=dr(g,d.type,d.memoizedProps,d)),ye(r,g)}else if(d.tag===6)g=d.stateNode,u&&h&&(g=Jo(g,d.memoizedProps,d)),ye(r,g);else if(d.tag!==4){if(d.tag===22&&d.memoizedState!==null)g=d.child,g!==null&&(g.return=d),hs(r,d,!0,!0);else if(d.child!==null){d.child.return=d,d=d.child;continue}}if(d===s)break;for(;d.sibling===null;){if(d.return===null||d.return===s)return;d=d.return}d.sibling.return=d.return,d=d.sibling}};var gm=function(r,s,u,h){for(var d=s.child;d!==null;){if(d.tag===5){var g=d.stateNode;u&&h&&(g=dr(g,d.type,d.memoizedProps,d)),Et(r,g)}else if(d.tag===6)g=d.stateNode,u&&h&&(g=Jo(g,d.memoizedProps,d)),Et(r,g);else if(d.tag!==4){if(d.tag===22&&d.memoizedState!==null)g=d.child,g!==null&&(g.return=d),gm(r,d,!0,!0);else if(d.child!==null){d.child.return=d,d=d.child;continue}}if(d===s)break;for(;d.sibling===null;){if(d.return===null||d.return===s)return;d=d.return}d.sibling.return=d.return,d=d.sibling}};ds=function(r,s){var u=s.stateNode;if(!mm(r,s)){r=u.containerInfo;var h=st(r);gm(h,s,!1,!1),u.pendingChildren=h,un(s),kn(r,h)}},Ha=function(r,s,u,h,d){var g=r.stateNode,S=r.memoizedProps;if((r=mm(r,s))&&S===h)s.stateNode=g;else{var I=s.stateNode,z=an(Ii.current),Z=null;S!==h&&(Z=N(I,u,S,h,d,z)),r&&Z===null?s.stateNode=g:(g=Ct(g,Z,u,S,h,s,r,I),He(g,u,h,d,z)&&un(s),s.stateNode=g,r?un(s):hs(g,s,!1,!1))}},Wa=function(r,s,u,h){u!==h?(r=an(lo.current),u=an(Ii.current),s.stateNode=he(h,r,u,s),un(s)):s.stateNode=r.stateNode}}else ds=function(){},Ha=function(){},Wa=function(){};function ps(r,s){if(!nt)switch(r.tailMode){case"hidden":s=r.tail;for(var u=null;s!==null;)s.alternate!==null&&(u=s),s=s.sibling;u===null?r.tail=null:u.sibling=null;break;case"collapsed":u=r.tail;for(var h=null;u!==null;)u.alternate!==null&&(h=u),u=u.sibling;h===null?s||r.tail===null?r.tail=null:r.tail.sibling=null:h.sibling=null}}function jt(r){var s=r.alternate!==null&&r.alternate.child===r.child,u=0,h=0;if(s)for(var d=r.child;d!==null;)u|=d.lanes|d.childLanes,h|=d.subtreeFlags&14680064,h|=d.flags&14680064,d.return=r,d=d.sibling;else for(d=r.child;d!==null;)u|=d.lanes|d.childLanes,h|=d.subtreeFlags,h|=d.flags,d.return=r,d=d.sibling;return r.subtreeFlags|=h,r.childLanes=u,s}function gw(r,s,u){var h=s.pendingProps;switch(bc(s),s.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return jt(s),null;case 1:return ii(s.type)&&va(),jt(s),null;case 3:return u=s.stateNode,uo(),Ze(ti),Ze(Bt),Fc(),u.pendingContext&&(u.context=u.pendingContext,u.pendingContext=null),(r===null||r.child===null)&&(Ra(s)?un(s):r===null||r.memoizedState.isDehydrated&&!(s.flags&256)||(s.flags|=1024,Hi!==null&&(gh(Hi),Hi=null))),ds(r,s),jt(s),null;case 5:zc(s),u=an(lo.current);var d=s.type;if(r!==null&&s.stateNode!=null)Ha(r,s,d,h,u),r.ref!==s.ref&&(s.flags|=512,s.flags|=2097152);else{if(!h){if(s.stateNode===null)throw Error(l(166));return jt(s),null}if(r=an(Ii.current),Ra(s)){if(!ee)throw Error(l(175));r=OS(s.stateNode,s.type,s.memoizedProps,u,r,s,!ns),s.updateQueue=r,r!==null&&un(s)}else{var g=H(d,h,u,r,s);hs(g,s,!1,!1),s.stateNode=g,He(g,d,h,u,r)&&un(s)}s.ref!==null&&(s.flags|=512,s.flags|=2097152)}return jt(s),null;case 6:if(r&&s.stateNode!=null)Wa(r,s,r.memoizedProps,h);else{if(typeof h!="string"&&s.stateNode===null)throw Error(l(166));if(r=an(lo.current),u=an(Ii.current),Ra(s)){if(!ee)throw Error(l(176));if(r=s.stateNode,u=s.memoizedProps,(h=kS(r,u,s,!ns))&&(d=mi,d!==null))switch(d.tag){case 3:VS(d.stateNode.containerInfo,r,u,(d.mode&1)!==0);break;case 5:US(d.type,d.memoizedProps,d.stateNode,r,u,(d.mode&1)!==0)}h&&un(s)}else s.stateNode=he(h,r,u,s)}return jt(s),null;case 13:if(Ze(at),h=s.memoizedState,r===null||r.memoizedState!==null&&r.memoizedState.dehydrated!==null){if(nt&&Ri!==null&&s.mode&1&&!(s.flags&128))vf(),ro(),s.flags|=98560,d=!1;else if(d=Ra(s),h!==null&&h.dehydrated!==null){if(r===null){if(!d)throw Error(l(318));if(!ee)throw Error(l(344));if(d=s.memoizedState,d=d!==null?d.dehydrated:null,!d)throw Error(l(317));LS(d,s)}else ro(),!(s.flags&128)&&(s.memoizedState=null),s.flags|=4;jt(s),d=!1}else Hi!==null&&(gh(Hi),Hi=null),d=!0;if(!d)return s.flags&65536?s:null}return s.flags&128?(s.lanes=u,s):(u=h!==null,u!==(r!==null&&r.memoizedState!==null)&&u&&(s.child.flags|=8192,s.mode&1&&(r===null||at.current&1?Rt===0&&(Rt=3):vh())),s.updateQueue!==null&&(s.flags|=4),jt(s),null);case 4:return uo(),ds(r,s),r===null&&Se(s.stateNode.containerInfo),jt(s),null;case 10:return Tc(s.type._context),jt(s),null;case 17:return ii(s.type)&&va(),jt(s),null;case 19:if(Ze(at),d=s.memoizedState,d===null)return jt(s),null;if(h=(s.flags&128)!==0,g=d.rendering,g===null)if(h)ps(d,!1);else{if(Rt!==0||r!==null&&r.flags&128)for(r=s.child;r!==null;){if(g=za(r),g!==null){for(s.flags|=128,ps(d,!1),r=g.updateQueue,r!==null&&(s.updateQueue=r,s.flags|=4),s.subtreeFlags=0,r=u,u=s.child;u!==null;)h=u,d=r,h.flags&=14680066,g=h.alternate,g===null?(h.childLanes=0,h.lanes=d,h.child=null,h.subtreeFlags=0,h.memoizedProps=null,h.memoizedState=null,h.updateQueue=null,h.dependencies=null,h.stateNode=null):(h.childLanes=g.childLanes,h.lanes=g.lanes,h.child=g.child,h.subtreeFlags=0,h.deletions=null,h.memoizedProps=g.memoizedProps,h.memoizedState=g.memoizedState,h.updateQueue=g.updateQueue,h.type=g.type,d=g.dependencies,h.dependencies=d===null?null:{lanes:d.lanes,firstContext:d.firstContext}),u=u.sibling;return Ye(at,at.current&1|2),s.child}r=r.sibling}d.tail!==null&&It()>dh&&(s.flags|=128,h=!0,ps(d,!1),s.lanes=4194304)}else{if(!h)if(r=za(g),r!==null){if(s.flags|=128,h=!0,r=r.updateQueue,r!==null&&(s.updateQueue=r,s.flags|=4),ps(d,!0),d.tail===null&&d.tailMode==="hidden"&&!g.alternate&&!nt)return jt(s),null}else 2*It()-d.renderingStartTime>dh&&u!==1073741824&&(s.flags|=128,h=!0,ps(d,!1),s.lanes=4194304);d.isBackwards?(g.sibling=s.child,s.child=g):(r=d.last,r!==null?r.sibling=g:s.child=g,d.last=g)}return d.tail!==null?(s=d.tail,d.rendering=s,d.tail=s.sibling,d.renderingStartTime=It(),s.sibling=null,r=at.current,Ye(at,h?r&1|2:r&1),s):(jt(s),null);case 22:case 23:return yh(),u=s.memoizedState!==null,r!==null&&r.memoizedState!==null!==u&&(s.flags|=8192),u&&s.mode&1?gi&1073741824&&(jt(s),Ae&&s.subtreeFlags&6&&(s.flags|=8192)):jt(s),null;case 24:return null;case 25:return null}throw Error(l(156,s.tag))}function yw(r,s){switch(bc(s),s.tag){case 1:return ii(s.type)&&va(),r=s.flags,r&65536?(s.flags=r&-65537|128,s):null;case 3:return uo(),Ze(ti),Ze(Bt),Fc(),r=s.flags,r&65536&&!(r&128)?(s.flags=r&-65537|128,s):null;case 5:return zc(s),null;case 13:if(Ze(at),r=s.memoizedState,r!==null&&r.dehydrated!==null){if(s.alternate===null)throw Error(l(340));ro()}return r=s.flags,r&65536?(s.flags=r&-65537|128,s):null;case 19:return Ze(at),null;case 4:return uo(),null;case 10:return Tc(s.type._context),null;case 22:case 23:return yh(),null;case 24:return null;default:return null}}var qa=!1,Vt=!1,vw=typeof WeakSet=="function"?WeakSet:Set,ae=null;function ho(r,s){var u=r.ref;if(u!==null)if(typeof u=="function")try{u(null)}catch(h){rt(r,s,h)}else u.current=null}function eh(r,s,u){try{u()}catch(h){rt(r,s,h)}}var ym=!1;function xw(r,s){for(yt(r.containerInfo),ae=s;ae!==null;)if(r=ae,s=r.child,(r.subtreeFlags&1028)!==0&&s!==null)s.return=r,ae=s;else for(;ae!==null;){r=ae;try{var u=r.alternate;if(r.flags&1024)switch(r.tag){case 0:case 11:case 15:break;case 1:if(u!==null){var h=u.memoizedProps,d=u.memoizedState,g=r.stateNode,S=g.getSnapshotBeforeUpdate(r.elementType===r.type?h:Wi(r.type,h),d);g.__reactInternalSnapshotBeforeUpdate=S}break;case 3:Ae&&qe(r.stateNode.containerInfo);break;case 5:case 6:case 4:case 17:break;default:throw Error(l(163))}}catch(I){rt(r,r.return,I)}if(s=r.sibling,s!==null){s.return=r.return,ae=s;break}ae=r.return}return u=ym,ym=!1,u}function fs(r,s,u){var h=s.updateQueue;if(h=h!==null?h.lastEffect:null,h!==null){var d=h=h.next;do{if((d.tag&r)===r){var g=d.destroy;d.destroy=void 0,g!==void 0&&eh(s,u,g)}d=d.next}while(d!==h)}}function Qa(r,s){if(s=s.updateQueue,s=s!==null?s.lastEffect:null,s!==null){var u=s=s.next;do{if((u.tag&r)===r){var h=u.create;u.destroy=h()}u=u.next}while(u!==s)}}function th(r){var s=r.ref;if(s!==null){var u=r.stateNode;switch(r.tag){case 5:r=ve(u);break;default:r=u}typeof s=="function"?s(r):s.current=r}}function vm(r){var s=r.alternate;s!==null&&(r.alternate=null,vm(s)),r.child=null,r.deletions=null,r.sibling=null,r.tag===5&&(s=r.stateNode,s!==null&&ei(s)),r.stateNode=null,r.return=null,r.dependencies=null,r.memoizedProps=null,r.memoizedState=null,r.pendingProps=null,r.stateNode=null,r.updateQueue=null}function xm(r){return r.tag===5||r.tag===3||r.tag===4}function Sm(r){e:for(;;){for(;r.sibling===null;){if(r.return===null||xm(r.return))return null;r=r.return}for(r.sibling.return=r.return,r=r.sibling;r.tag!==5&&r.tag!==6&&r.tag!==18;){if(r.flags&2||r.child===null||r.tag===4)continue e;r.child.return=r,r=r.child}if(!(r.flags&2))return r.stateNode}}function ih(r,s,u){var h=r.tag;if(h===5||h===6)r=r.stateNode,s?D(u,r,s):X(u,r);else if(h!==4&&(r=r.child,r!==null))for(ih(r,s,u),r=r.sibling;r!==null;)ih(r,s,u),r=r.sibling}function nh(r,s,u){var h=r.tag;if(h===5||h===6)r=r.stateNode,s?Be(u,r,s):M(u,r);else if(h!==4&&(r=r.child,r!==null))for(nh(r,s,u),r=r.sibling;r!==null;)nh(r,s,u),r=r.sibling}var zt=null,qi=!1;function cn(r,s,u){for(u=u.child;u!==null;)rh(r,s,u),u=u.sibling}function rh(r,s,u){if(rn&&typeof rn.onCommitFiberUnmount=="function")try{rn.onCommitFiberUnmount(Pa,u)}catch{}switch(u.tag){case 5:Vt||ho(u,s);case 6:if(Ae){var h=zt,d=qi;zt=null,cn(r,s,u),zt=h,qi=d,zt!==null&&(qi?ue(zt,u.stateNode):U(zt,u.stateNode))}else cn(r,s,u);break;case 18:Ae&&zt!==null&&(qi?DS(zt,u.stateNode):BS(zt,u.stateNode));break;case 4:Ae?(h=zt,d=qi,zt=u.stateNode.containerInfo,qi=!0,cn(r,s,u),zt=h,qi=d):(We&&(h=u.stateNode.containerInfo,d=st(h),ji(h,d)),cn(r,s,u));break;case 0:case 11:case 14:case 15:if(!Vt&&(h=u.updateQueue,h!==null&&(h=h.lastEffect,h!==null))){d=h=h.next;do{var g=d,S=g.destroy;g=g.tag,S!==void 0&&(g&2||g&4)&&eh(u,s,S),d=d.next}while(d!==h)}cn(r,s,u);break;case 1:if(!Vt&&(ho(u,s),h=u.stateNode,typeof h.componentWillUnmount=="function"))try{h.props=u.memoizedProps,h.state=u.memoizedState,h.componentWillUnmount()}catch(I){rt(u,s,I)}cn(r,s,u);break;case 21:cn(r,s,u);break;case 22:u.mode&1?(Vt=(h=Vt)||u.memoizedState!==null,cn(r,s,u),Vt=h):cn(r,s,u);break;default:cn(r,s,u)}}function wm(r){var s=r.updateQueue;if(s!==null){r.updateQueue=null;var u=r.stateNode;u===null&&(u=r.stateNode=new vw),s.forEach(function(h){var d=Tw.bind(null,r,h);u.has(h)||(u.add(h),h.then(d,d))})}}function Qi(r,s){var u=s.deletions;if(u!==null)for(var h=0;h<u.length;h++){var d=u[h];try{var g=r,S=s;if(Ae){var I=S;e:for(;I!==null;){switch(I.tag){case 5:zt=I.stateNode,qi=!1;break e;case 3:zt=I.stateNode.containerInfo,qi=!0;break e;case 4:zt=I.stateNode.containerInfo,qi=!0;break e}I=I.return}if(zt===null)throw Error(l(160));rh(g,S,d),zt=null,qi=!1}else rh(g,S,d);var z=d.alternate;z!==null&&(z.return=null),d.return=null}catch(Z){rt(d,s,Z)}}if(s.subtreeFlags&12854)for(s=s.child;s!==null;)bm(s,r),s=s.sibling}function bm(r,s){var u=r.alternate,h=r.flags;switch(r.tag){case 0:case 11:case 14:case 15:if(Qi(s,r),hn(r),h&4){try{fs(3,r,r.return),Qa(3,r)}catch(te){rt(r,r.return,te)}try{fs(5,r,r.return)}catch(te){rt(r,r.return,te)}}break;case 1:Qi(s,r),hn(r),h&512&&u!==null&&ho(u,u.return);break;case 5:if(Qi(s,r),hn(r),h&512&&u!==null&&ho(u,u.return),Ae){if(r.flags&32){var d=r.stateNode;try{oe(d)}catch(te){rt(r,r.return,te)}}if(h&4&&(d=r.stateNode,d!=null)){var g=r.memoizedProps;if(u=u!==null?u.memoizedProps:g,h=r.type,s=r.updateQueue,r.updateQueue=null,s!==null)try{Te(d,s,h,u,g,r)}catch(te){rt(r,r.return,te)}}}break;case 6:if(Qi(s,r),hn(r),h&4&&Ae){if(r.stateNode===null)throw Error(l(162));d=r.stateNode,g=r.memoizedProps,u=u!==null?u.memoizedProps:g;try{K(d,u,g)}catch(te){rt(r,r.return,te)}}break;case 3:if(Qi(s,r),hn(r),h&4){if(Ae&&ee&&u!==null&&u.memoizedState.isDehydrated)try{NS(s.containerInfo)}catch(te){rt(r,r.return,te)}if(We){d=s.containerInfo,g=s.pendingChildren;try{ji(d,g)}catch(te){rt(r,r.return,te)}}}break;case 4:if(Qi(s,r),hn(r),h&4&&We){g=r.stateNode,d=g.containerInfo,g=g.pendingChildren;try{ji(d,g)}catch(te){rt(r,r.return,te)}}break;case 13:Qi(s,r),hn(r),d=r.child,d.flags&8192&&(g=d.memoizedState!==null,d.stateNode.isHidden=g,!g||d.alternate!==null&&d.alternate.memoizedState!==null||(hh=It())),h&4&&wm(r);break;case 22:var S=u!==null&&u.memoizedState!==null;if(r.mode&1?(Vt=(u=Vt)||S,Qi(s,r),Vt=u):Qi(s,r),hn(r),h&8192){if(u=r.memoizedState!==null,(r.stateNode.isHidden=u)&&!S&&r.mode&1)for(ae=r,h=r.child;h!==null;){for(s=ae=h;ae!==null;){S=ae;var I=S.child;switch(S.tag){case 0:case 11:case 14:case 15:fs(4,S,S.return);break;case 1:ho(S,S.return);var z=S.stateNode;if(typeof z.componentWillUnmount=="function"){var Z=S,le=S.return;try{var we=Z;z.props=we.memoizedProps,z.state=we.memoizedState,z.componentWillUnmount()}catch(te){rt(Z,le,te)}}break;case 5:ho(S,S.return);break;case 22:if(S.memoizedState!==null){Em(s);continue}}I!==null?(I.return=S,ae=I):Em(s)}h=h.sibling}if(Ae){e:if(h=null,Ae)for(s=r;;){if(s.tag===5){if(h===null){h=s;try{d=s.stateNode,u?se(d):Xe(s.stateNode,s.memoizedProps)}catch(te){rt(r,r.return,te)}}}else if(s.tag===6){if(h===null)try{g=s.stateNode,u?Ie(g):Ke(g,s.memoizedProps)}catch(te){rt(r,r.return,te)}}else if((s.tag!==22&&s.tag!==23||s.memoizedState===null||s===r)&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===r)break e;for(;s.sibling===null;){if(s.return===null||s.return===r)break e;h===s&&(h=null),s=s.return}h===s&&(h=null),s.sibling.return=s.return,s=s.sibling}}}break;case 19:Qi(s,r),hn(r),h&4&&wm(r);break;case 21:break;default:Qi(s,r),hn(r)}}function hn(r){var s=r.flags;if(s&2){try{if(Ae){e:{for(var u=r.return;u!==null;){if(xm(u)){var h=u;break e}u=u.return}throw Error(l(160))}switch(h.tag){case 5:var d=h.stateNode;h.flags&32&&(oe(d),h.flags&=-33);var g=Sm(r);nh(r,g,d);break;case 3:case 4:var S=h.stateNode.containerInfo,I=Sm(r);ih(r,I,S);break;default:throw Error(l(161))}}}catch(z){rt(r,r.return,z)}r.flags&=-3}s&4096&&(r.flags&=-4097)}function Sw(r,s,u){ae=r,Pm(r,s,u)}function Pm(r,s,u){for(var h=(r.mode&1)!==0;ae!==null;){var d=ae,g=d.child;if(d.tag===22&&h){var S=d.memoizedState!==null||qa;if(!S){var I=d.alternate,z=I!==null&&I.memoizedState!==null||Vt;I=qa;var Z=Vt;if(qa=S,(Vt=z)&&!Z)for(ae=d;ae!==null;)S=ae,z=S.child,S.tag===22&&S.memoizedState!==null?Am(d):z!==null?(z.return=S,ae=z):Am(d);for(;g!==null;)ae=g,Pm(g,s,u),g=g.sibling;ae=d,qa=I,Vt=Z}Cm(r,s,u)}else d.subtreeFlags&8772&&g!==null?(g.return=d,ae=g):Cm(r,s,u)}}function Cm(r){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:Vt||Qa(5,s);break;case 1:var h=s.stateNode;if(s.flags&4&&!Vt)if(u===null)h.componentDidMount();else{var d=s.elementType===s.type?u.memoizedProps:Wi(s.type,u.memoizedProps);h.componentDidUpdate(d,u.memoizedState,h.__reactInternalSnapshotBeforeUpdate)}var g=s.updateQueue;g!==null&&Pf(s,g,h);break;case 3:var S=s.updateQueue;if(S!==null){if(u=null,s.child!==null)switch(s.child.tag){case 5:u=ve(s.child.stateNode);break;case 1:u=s.child.stateNode}Pf(s,S,u)}break;case 5:var I=s.stateNode;u===null&&s.flags&4&&Pe(I,s.type,s.memoizedProps,s);break;case 6:break;case 4:break;case 12:break;case 13:if(ee&&s.memoizedState===null){var z=s.alternate;if(z!==null){var Z=z.memoizedState;if(Z!==null){var le=Z.dehydrated;le!==null&&FS(le)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(l(163))}Vt||s.flags&512&&th(s)}catch(we){rt(s,s.return,we)}}if(s===r){ae=null;break}if(u=s.sibling,u!==null){u.return=s.return,ae=u;break}ae=s.return}}function Em(r){for(;ae!==null;){var s=ae;if(s===r){ae=null;break}var u=s.sibling;if(u!==null){u.return=s.return,ae=u;break}ae=s.return}}function Am(r){for(;ae!==null;){var s=ae;try{switch(s.tag){case 0:case 11:case 15:var u=s.return;try{Qa(4,s)}catch(z){rt(s,u,z)}break;case 1:var h=s.stateNode;if(typeof h.componentDidMount=="function"){var d=s.return;try{h.componentDidMount()}catch(z){rt(s,d,z)}}var g=s.return;try{th(s)}catch(z){rt(s,g,z)}break;case 5:var S=s.return;try{th(s)}catch(z){rt(s,S,z)}}}catch(z){rt(s,s.return,z)}if(s===r){ae=null;break}var I=s.sibling;if(I!==null){I.return=s.return,ae=I;break}ae=s.return}}var Ya=0,Ga=1,$a=2,Xa=3,Ka=4;if(typeof Symbol=="function"&&Symbol.for){var ms=Symbol.for;Ya=ms("selector.component"),Ga=ms("selector.has_pseudo_class"),$a=ms("selector.role"),Xa=ms("selector.test_id"),Ka=ms("selector.text")}function oh(r){var s=Re(r);if(s!=null){if(typeof s.memoizedProps["data-testname"]!="string")throw Error(l(364));return s}if(r=ac(r),r===null)throw Error(l(362));return r.stateNode.current}function sh(r,s){switch(s.$$typeof){case Ya:if(r.type===s.value)return!0;break;case Ga:e:{s=s.value,r=[r,0];for(var u=0;u<r.length;){var h=r[u++],d=r[u++],g=s[d];if(h.tag!==5||!nn(h)){for(;g!=null&&sh(h,g);)d++,g=s[d];if(d===s.length){s=!0;break e}else for(h=h.child;h!==null;)r.push(h,d),h=h.sibling}}s=!1}return s;case $a:if(r.tag===5&&Zo(r.stateNode,s.value))return!0;break;case Ka:if((r.tag===5||r.tag===6)&&(r=Ko(r),r!==null&&0<=r.indexOf(s.value)))return!0;break;case Xa:if(r.tag===5&&(r=r.memoizedProps["data-testname"],typeof r=="string"&&r.toLowerCase()===s.value.toLowerCase()))return!0;break;default:throw Error(l(365))}return!1}function ah(r){switch(r.$$typeof){case Ya:return"<"+(L(r.value)||"Unknown")+">";case Ga:return":has("+(ah(r)||"")+")";case $a:return'[role="'+r.value+'"]';case Ka:return'"'+r.value+'"';case Xa:return'[data-testname="'+r.value+'"]';default:throw Error(l(365))}}function Rm(r,s){var u=[];r=[r,0];for(var h=0;h<r.length;){var d=r[h++],g=r[h++],S=s[g];if(d.tag!==5||!nn(d)){for(;S!=null&&sh(d,S);)g++,S=s[g];if(g===s.length)u.push(d);else for(d=d.child;d!==null;)r.push(d,g),d=d.sibling}}return u}function lh(r,s){if(!Ci)throw Error(l(363));r=oh(r),r=Rm(r,s),s=[],r=Array.from(r);for(var u=0;u<r.length;){var h=r[u++];if(h.tag===5)nn(h)||s.push(h.stateNode);else for(h=h.child;h!==null;)r.push(h),h=h.sibling}return s}var ww=Math.ceil,Za=c.ReactCurrentDispatcher,uh=c.ReactCurrentOwner,ft=c.ReactCurrentBatchConfig,_e=0,Mt=null,vt=null,Nt=0,gi=0,po=Ln(0),Rt=0,gs=null,vr=0,Ja=0,ch=0,ys=null,ri=null,hh=0,dh=1/0,En=null;function fo(){dh=It()+500}var el=!1,ph=null,Bn=null,tl=!1,Dn=null,il=0,vs=0,fh=null,nl=-1,rl=0;function Ut(){return _e&6?It():nl!==-1?nl:nl=It()}function jn(r){return r.mode&1?_e&2&&Nt!==0?Nt&-Nt:nw.transition!==null?(rl===0&&(rl=cf()),rl):(r=Le,r!==0?r:Pi()):1}function Mi(r,s,u,h){if(50<vs)throw vs=0,fh=null,Error(l(185));is(r,u,h),(!(_e&2)||r!==Mt)&&(r===Mt&&(!(_e&2)&&(Ja|=u),Rt===4&&Vn(r,Nt)),oi(r,h),u===1&&_e===0&&!(s.mode&1)&&(fo(),Ca&&on()))}function oi(r,s){var u=r.callbackNode;GS(r,s);var h=ba(r,r===Mt?Nt:0);if(h===0)u!==null&&df(u),r.callbackNode=null,r.callbackPriority=0;else if(s=h&-h,r.callbackPriority!==s){if(u!=null&&df(u),s===1)r.tag===0?iw(Im.bind(null,r)):pf(Im.bind(null,r)),Lt?fi(function(){!(_e&6)&&on()}):yc(vc,on),u=null;else{switch(hf(h)){case 1:u=vc;break;case 4:u=ZS;break;case 16:u=xc;break;case 536870912:u=JS;break;default:u=xc}u=Bm(u,Tm.bind(null,r))}r.callbackPriority=s,r.callbackNode=u}}function Tm(r,s){if(nl=-1,rl=0,_e&6)throw Error(l(327));var u=r.callbackNode;if(wr()&&r.callbackNode!==u)return null;var h=ba(r,r===Mt?Nt:0);if(h===0)return null;if(h&30||h&r.expiredLanes||s)s=ol(r,h);else{s=h;var d=_e;_e|=2;var g=Om();(Mt!==r||Nt!==s)&&(En=null,fo(),xr(r,s));do try{Cw();break}catch(I){Mm(r,I)}while(!0);Rc(),Za.current=g,_e=d,vt!==null?s=0:(Mt=null,Nt=0,s=Rt)}if(s!==0){if(s===2&&(d=fc(r),d!==0&&(h=d,s=mh(r,d))),s===1)throw u=gs,xr(r,0),Vn(r,h),oi(r,It()),u;if(s===6)Vn(r,h);else{if(d=r.current.alternate,!(h&30)&&!bw(d)&&(s=ol(r,h),s===2&&(g=fc(r),g!==0&&(h=g,s=mh(r,g))),s===1))throw u=gs,xr(r,0),Vn(r,h),oi(r,It()),u;switch(r.finishedWork=d,r.finishedLanes=h,s){case 0:case 1:throw Error(l(345));case 2:Sr(r,ri,En);break;case 3:if(Vn(r,h),(h&130023424)===h&&(s=hh+500-It(),10<s)){if(ba(r,0)!==0)break;if(d=r.suspendedLanes,(d&h)!==h){Ut(),r.pingedLanes|=r.suspendedLanes&d;break}r.timeoutHandle=fe(Sr.bind(null,r,ri,En),s);break}Sr(r,ri,En);break;case 4:if(Vn(r,h),(h&4194240)===h)break;for(s=r.eventTimes,d=-1;0<h;){var S=31-Vi(h);g=1<<S,S=s[S],S>d&&(d=S),h&=~g}if(h=d,h=It()-h,h=(120>h?120:480>h?480:1080>h?1080:1920>h?1920:3e3>h?3e3:4320>h?4320:1960*ww(h/1960))-h,10<h){r.timeoutHandle=fe(Sr.bind(null,r,ri,En),h);break}Sr(r,ri,En);break;case 5:Sr(r,ri,En);break;default:throw Error(l(329))}}}return oi(r,It()),r.callbackNode===u?Tm.bind(null,r):null}function mh(r,s){var u=ys;return r.current.memoizedState.isDehydrated&&(xr(r,s).flags|=256),r=ol(r,s),r!==2&&(s=ri,ri=u,s!==null&&gh(s)),r}function gh(r){ri===null?ri=r:ri.push.apply(ri,r)}function bw(r){for(var s=r;;){if(s.flags&16384){var u=s.updateQueue;if(u!==null&&(u=u.stores,u!==null))for(var h=0;h<u.length;h++){var d=u[h],g=d.getSnapshot;d=d.value;try{if(!Ui(g(),d))return!1}catch{return!1}}}if(u=s.child,s.subtreeFlags&16384&&u!==null)u.return=s,s=u;else{if(s===r)break;for(;s.sibling===null;){if(s.return===null||s.return===r)return!0;s=s.return}s.sibling.return=s.return,s=s.sibling}}return!0}function Vn(r,s){for(s&=~ch,s&=~Ja,r.suspendedLanes|=s,r.pingedLanes&=~s,r=r.expirationTimes;0<s;){var u=31-Vi(s),h=1<<u;r[u]=-1,s&=~h}}function Im(r){if(_e&6)throw Error(l(327));wr();var s=ba(r,0);if(!(s&1))return oi(r,It()),null;var u=ol(r,s);if(r.tag!==0&&u===2){var h=fc(r);h!==0&&(s=h,u=mh(r,h))}if(u===1)throw u=gs,xr(r,0),Vn(r,s),oi(r,It()),u;if(u===6)throw Error(l(345));return r.finishedWork=r.current.alternate,r.finishedLanes=s,Sr(r,ri,En),oi(r,It()),null}function _m(r){Dn!==null&&Dn.tag===0&&!(_e&6)&&wr();var s=_e;_e|=1;var u=ft.transition,h=Le;try{if(ft.transition=null,Le=1,r)return r()}finally{Le=h,ft.transition=u,_e=s,!(_e&6)&&on()}}function yh(){gi=po.current,Ze(po)}function xr(r,s){r.finishedWork=null,r.finishedLanes=0;var u=r.timeoutHandle;if(u!==Ve&&(r.timeoutHandle=Ve,me(u)),vt!==null)for(u=vt.return;u!==null;){var h=u;switch(bc(h),h.tag){case 1:h=h.type.childContextTypes,h!=null&&va();break;case 3:uo(),Ze(ti),Ze(Bt),Fc();break;case 5:zc(h);break;case 4:uo();break;case 13:Ze(at);break;case 19:Ze(at);break;case 10:Tc(h.type._context);break;case 22:case 23:yh()}u=u.return}if(Mt=r,vt=r=Un(r.current,null),Nt=gi=s,Rt=0,gs=null,ch=Ja=vr=0,ri=ys=null,gr!==null){for(s=0;s<gr.length;s++)if(u=gr[s],h=u.interleaved,h!==null){u.interleaved=null;var d=h.next,g=u.pending;if(g!==null){var S=g.next;g.next=d,h.next=S}u.pending=h}gr=null}return r}function Mm(r,s){do{var u=vt;try{if(Rc(),Na.current=ja,Fa){for(var h=lt.memoizedState;h!==null;){var d=h.queue;d!==null&&(d.pending=null),h=h.next}Fa=!1}if(yr=0,_t=At=lt=null,as=!1,ls=0,uh.current=null,u===null||u.return===null){Rt=1,gs=s,vt=null;break}e:{var g=r,S=u.return,I=u,z=s;if(s=Nt,I.flags|=32768,z!==null&&typeof z=="object"&&typeof z.then=="function"){var Z=z,le=I,we=le.tag;if(!(le.mode&1)&&(we===0||we===11||we===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=im(S);if(Je!==null){Je.flags&=-257,nm(Je,S,I,g,s),Je.mode&1&&tm(g,Z,s),s=Je,z=Z;var Qe=s.updateQueue;if(Qe===null){var si=new Set;si.add(z),s.updateQueue=si}else Qe.add(z);break e}else{if(!(s&1)){tm(g,Z,s),vh();break e}z=Error(l(426))}}else if(nt&&I.mode&1){var An=im(S);if(An!==null){!(An.flags&65536)&&(An.flags|=256),nm(An,S,I,g,s),Ec(co(z,I));break e}}g=z=co(z,I),Rt!==4&&(Rt=2),ys===null?ys=[g]:ys.push(g),g=S;do{switch(g.tag){case 3:g.flags|=65536,s&=-s,g.lanes|=s;var k=Jf(g,z,s);bf(g,k);break e;case 1:I=z;var _=g.type,B=g.stateNode;if(!(g.flags&128)&&(typeof _.getDerivedStateFromError=="function"||B!==null&&typeof B.componentDidCatch=="function"&&(Bn===null||!Bn.has(B)))){g.flags|=65536,s&=-s,g.lanes|=s;var ie=em(g,I,s);bf(g,ie);break e}}g=g.return}while(g!==null)}Lm(u)}catch(ge){s=ge,vt===u&&u!==null&&(vt=u=u.return);continue}break}while(!0)}function Om(){var r=Za.current;return Za.current=ja,r===null?ja:r}function vh(){(Rt===0||Rt===3||Rt===2)&&(Rt=4),Mt===null||!(vr&268435455)&&!(Ja&268435455)||Vn(Mt,Nt)}function ol(r,s){var u=_e;_e|=2;var h=Om();(Mt!==r||Nt!==s)&&(En=null,xr(r,s));do try{Pw();break}catch(d){Mm(r,d)}while(!0);if(Rc(),_e=u,Za.current=h,vt!==null)throw Error(l(261));return Mt=null,Nt=0,Rt}function Pw(){for(;vt!==null;)km(vt)}function Cw(){for(;vt!==null&&!XS();)km(vt)}function km(r){var s=Fm(r.alternate,r,gi);r.memoizedProps=r.pendingProps,s===null?Lm(r):vt=s,uh.current=null}function Lm(r){var s=r;do{var u=s.alternate;if(r=s.return,s.flags&32768){if(u=yw(u,s),u!==null){u.flags&=32767,vt=u;return}if(r!==null)r.flags|=32768,r.subtreeFlags=0,r.deletions=null;else{Rt=6,vt=null;return}}else if(u=gw(u,s,gi),u!==null){vt=u;return}if(s=s.sibling,s!==null){vt=s;return}vt=s=r}while(s!==null);Rt===0&&(Rt=5)}function Sr(r,s,u){var h=Le,d=ft.transition;try{ft.transition=null,Le=1,Ew(r,s,u,h)}finally{ft.transition=d,Le=h}return null}function Ew(r,s,u,h){do wr();while(Dn!==null);if(_e&6)throw Error(l(327));u=r.finishedWork;var d=r.finishedLanes;if(u===null)return null;if(r.finishedWork=null,r.finishedLanes=0,u===r.current)throw Error(l(177));r.callbackNode=null,r.callbackPriority=0;var g=u.lanes|u.childLanes;if($S(r,g),r===Mt&&(vt=Mt=null,Nt=0),!(u.subtreeFlags&2064)&&!(u.flags&2064)||tl||(tl=!0,Bm(xc,function(){return wr(),null})),g=(u.flags&15990)!==0,u.subtreeFlags&15990||g){g=ft.transition,ft.transition=null;var S=Le;Le=1;var I=_e;_e|=4,uh.current=null,xw(r,u),bm(u,r),de(r.containerInfo),r.current=u,Sw(u,r,d),KS(),_e=I,Le=S,ft.transition=g}else r.current=u;if(tl&&(tl=!1,Dn=r,il=d),g=r.pendingLanes,g===0&&(Bn=null),ew(u.stateNode,h),oi(r,It()),s!==null)for(h=r.onRecoverableError,u=0;u<s.length;u++)d=s[u],h(d.value,{componentStack:d.stack,digest:d.digest});if(el)throw el=!1,r=ph,ph=null,r;return il&1&&r.tag!==0&&wr(),g=r.pendingLanes,g&1?r===fh?vs++:(vs=0,fh=r):vs=0,on(),null}function wr(){if(Dn!==null){var r=hf(il),s=ft.transition,u=Le;try{if(ft.transition=null,Le=16>r?16:r,Dn===null)var h=!1;else{if(r=Dn,Dn=null,il=0,_e&6)throw Error(l(331));var d=_e;for(_e|=4,ae=r.current;ae!==null;){var g=ae,S=g.child;if(ae.flags&16){var I=g.deletions;if(I!==null){for(var z=0;z<I.length;z++){var Z=I[z];for(ae=Z;ae!==null;){var le=ae;switch(le.tag){case 0:case 11:case 15:fs(8,le,g)}var we=le.child;if(we!==null)we.return=le,ae=we;else for(;ae!==null;){le=ae;var te=le.sibling,Je=le.return;if(vm(le),le===Z){ae=null;break}if(te!==null){te.return=Je,ae=te;break}ae=Je}}}var Qe=g.alternate;if(Qe!==null){var si=Qe.child;if(si!==null){Qe.child=null;do{var An=si.sibling;si.sibling=null,si=An}while(si!==null)}}ae=g}}if(g.subtreeFlags&2064&&S!==null)S.return=g,ae=S;else e:for(;ae!==null;){if(g=ae,g.flags&2048)switch(g.tag){case 0:case 11:case 15:fs(9,g,g.return)}var k=g.sibling;if(k!==null){k.return=g.return,ae=k;break e}ae=g.return}}var _=r.current;for(ae=_;ae!==null;){S=ae;var B=S.child;if(S.subtreeFlags&2064&&B!==null)B.return=S,ae=B;else e:for(S=_;ae!==null;){if(I=ae,I.flags&2048)try{switch(I.tag){case 0:case 11:case 15:Qa(9,I)}}catch(ge){rt(I,I.return,ge)}if(I===S){ae=null;break e}var ie=I.sibling;if(ie!==null){ie.return=I.return,ae=ie;break e}ae=I.return}}if(_e=d,on(),rn&&typeof rn.onPostCommitFiberRoot=="function")try{rn.onPostCommitFiberRoot(Pa,r)}catch{}h=!0}return h}finally{Le=u,ft.transition=s}}return!1}function zm(r,s,u){s=co(u,s),s=Jf(r,s,1),r=Fn(r,s,1),s=Ut(),r!==null&&(is(r,1,s),oi(r,s))}function rt(r,s,u){if(r.tag===3)zm(r,r,u);else for(;s!==null;){if(s.tag===3){zm(s,r,u);break}else if(s.tag===1){var h=s.stateNode;if(typeof s.type.getDerivedStateFromError=="function"||typeof h.componentDidCatch=="function"&&(Bn===null||!Bn.has(h))){r=co(u,r),r=em(s,r,1),s=Fn(s,r,1),r=Ut(),s!==null&&(is(s,1,r),oi(s,r));break}}s=s.return}}function Aw(r,s,u){var h=r.pingCache;h!==null&&h.delete(s),s=Ut(),r.pingedLanes|=r.suspendedLanes&u,Mt===r&&(Nt&u)===u&&(Rt===4||Rt===3&&(Nt&130023424)===Nt&&500>It()-hh?xr(r,0):ch|=u),oi(r,s)}function Nm(r,s){s===0&&(r.mode&1?(s=wa,wa<<=1,!(wa&130023424)&&(wa=4194304)):s=1);var u=Ut();r=sn(r,s),r!==null&&(is(r,s,u),oi(r,u))}function Rw(r){var s=r.memoizedState,u=0;s!==null&&(u=s.retryLane),Nm(r,u)}function Tw(r,s){var u=0;switch(r.tag){case 13:var h=r.stateNode,d=r.memoizedState;d!==null&&(u=d.retryLane);break;case 19:h=r.stateNode;break;default:throw Error(l(314))}h!==null&&h.delete(s),Nm(r,u)}var Fm;Fm=function(r,s,u){if(r!==null)if(r.memoizedProps!==s.pendingProps||ti.current)ni=!0;else{if(!(r.lanes&u)&&!(s.flags&128))return ni=!1,mw(r,s,u);ni=!!(r.flags&131072)}else ni=!1,nt&&s.flags&1048576&&ff(s,Aa,s.index);switch(s.lanes=0,s.tag){case 2:var h=s.type;Ua(r,s),r=s.pendingProps;var d=to(s,Bt.current);so(s,u),d=jc(null,s,h,r,d,u);var g=Vc();return s.flags|=1,typeof d=="object"&&d!==null&&typeof d.render=="function"&&d.$$typeof===void 0?(s.tag=1,s.memoizedState=null,s.updateQueue=null,ii(h)?(g=!0,xa(s)):g=!1,s.memoizedState=d.state!==null&&d.state!==void 0?d.state:null,Mc(s),d.updater=ka,s.stateNode=d,d._reactInternals=s,kc(s,h,r,u),s=$c(null,s,h,!0,g,u)):(s.tag=0,nt&&g&&wc(s),Qt(null,s,d,u),s=s.child),s;case 16:h=s.elementType;e:{switch(Ua(r,s),r=s.pendingProps,d=h._init,h=d(h._payload),s.type=h,d=s.tag=_w(h),r=Wi(h,r),d){case 0:s=Gc(null,s,h,r,u);break e;case 1:s=um(null,s,h,r,u);break e;case 11:s=rm(null,s,h,r,u);break e;case 14:s=om(null,s,h,Wi(h.type,r),u);break e}throw Error(l(306,h,""))}return s;case 0:return h=s.type,d=s.pendingProps,d=s.elementType===h?d:Wi(h,d),Gc(r,s,h,d,u);case 1:return h=s.type,d=s.pendingProps,d=s.elementType===h?d:Wi(h,d),um(r,s,h,d,u);case 3:e:{if(cm(s),r===null)throw Error(l(387));h=s.pendingProps,g=s.memoizedState,d=g.element,wf(r,s),Oa(s,h,null,u);var S=s.memoizedState;if(h=S.element,ee&&g.isDehydrated)if(g={element:h,isDehydrated:!1,cache:S.cache,pendingSuspenseBoundaries:S.pendingSuspenseBoundaries,transitions:S.transitions},s.updateQueue.baseState=g,s.memoizedState=g,s.flags&256){d=co(Error(l(423)),s),s=hm(r,s,h,u,d);break e}else if(h!==d){d=co(Error(l(424)),s),s=hm(r,s,h,u,d);break e}else for(ee&&(Ri=_S(s.stateNode.containerInfo),mi=s,nt=!0,Hi=null,ns=!1),u=_f(s,null,h,u),s.child=u;u;)u.flags=u.flags&-3|4096,u=u.sibling;else{if(ro(),h===d){s=Cn(r,s,u);break e}Qt(r,s,h,u)}s=s.child}return s;case 5:return Mf(s),r===null&&Cc(s),h=s.type,d=s.pendingProps,g=r!==null?r.memoizedProps:null,S=d.children,W(h,d)?S=null:g!==null&&W(h,g)&&(s.flags|=32),lm(r,s),Qt(r,s,S,u),s.child;case 6:return r===null&&Cc(s),null;case 13:return dm(r,s,u);case 4:return Lc(s,s.stateNode.containerInfo),h=s.pendingProps,r===null?s.child=ao(s,null,h,u):Qt(r,s,h,u),s.child;case 11:return h=s.type,d=s.pendingProps,d=s.elementType===h?d:Wi(h,d),rm(r,s,h,d,u);case 7:return Qt(r,s,s.pendingProps,u),s.child;case 8:return Qt(r,s,s.pendingProps.children,u),s.child;case 12:return Qt(r,s,s.pendingProps.children,u),s.child;case 10:e:{if(h=s.type._context,d=s.pendingProps,g=s.memoizedProps,S=d.value,xf(s,h,S),g!==null)if(Ui(g.value,S)){if(g.children===d.children&&!ti.current){s=Cn(r,s,u);break e}}else for(g=s.child,g!==null&&(g.return=s);g!==null;){var I=g.dependencies;if(I!==null){S=g.child;for(var z=I.firstContext;z!==null;){if(z.context===h){if(g.tag===1){z=Pn(-1,u&-u),z.tag=2;var Z=g.updateQueue;if(Z!==null){Z=Z.shared;var le=Z.pending;le===null?z.next=z:(z.next=le.next,le.next=z),Z.pending=z}}g.lanes|=u,z=g.alternate,z!==null&&(z.lanes|=u),Ic(g.return,u,s),I.lanes|=u;break}z=z.next}}else if(g.tag===10)S=g.type===s.type?null:g.child;else if(g.tag===18){if(S=g.return,S===null)throw Error(l(341));S.lanes|=u,I=S.alternate,I!==null&&(I.lanes|=u),Ic(S,u,s),S=g.sibling}else S=g.child;if(S!==null)S.return=g;else for(S=g;S!==null;){if(S===s){S=null;break}if(g=S.sibling,g!==null){g.return=S.return,S=g;break}S=S.return}g=S}Qt(r,s,d.children,u),s=s.child}return s;case 9:return d=s.type,h=s.pendingProps.children,so(s,u),d=Ti(d),h=h(d),s.flags|=1,Qt(r,s,h,u),s.child;case 14:return h=s.type,d=Wi(h,s.pendingProps),d=Wi(h.type,d),om(r,s,h,d,u);case 15:return sm(r,s,s.type,s.pendingProps,u);case 17:return h=s.type,d=s.pendingProps,d=s.elementType===h?d:Wi(h,d),Ua(r,s),s.tag=1,ii(h)?(r=!0,xa(s)):r=!1,so(s,u),Af(s,h,d),kc(s,h,d,u),$c(null,s,h,!0,r,u);case 19:return fm(r,s,u);case 22:return am(r,s,u)}throw Error(l(156,s.tag))};function Bm(r,s){return yc(r,s)}function Iw(r,s,u,h){this.tag=r,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=h,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Oi(r,s,u,h){return new Iw(r,s,u,h)}function xh(r){return r=r.prototype,!(!r||!r.isReactComponent)}function _w(r){if(typeof r=="function")return xh(r)?1:0;if(r!=null){if(r=r.$$typeof,r===x)return 11;if(r===T)return 14}return 2}function Un(r,s){var u=r.alternate;return u===null?(u=Oi(r.tag,s,r.key,r.mode),u.elementType=r.elementType,u.type=r.type,u.stateNode=r.stateNode,u.alternate=r,r.alternate=u):(u.pendingProps=s,u.type=r.type,u.flags=0,u.subtreeFlags=0,u.deletions=null),u.flags=r.flags&14680064,u.childLanes=r.childLanes,u.lanes=r.lanes,u.child=r.child,u.memoizedProps=r.memoizedProps,u.memoizedState=r.memoizedState,u.updateQueue=r.updateQueue,s=r.dependencies,u.dependencies=s===null?null:{lanes:s.lanes,firstContext:s.firstContext},u.sibling=r.sibling,u.index=r.index,u.ref=r.ref,u}function sl(r,s,u,h,d,g){var S=2;if(h=r,typeof r=="function")xh(r)&&(S=1);else if(typeof r=="string")S=5;else e:switch(r){case f:return br(u.children,d,g,s);case y:S=8,d|=8;break;case w:return r=Oi(12,u,s,d|2),r.elementType=w,r.lanes=g,r;case C:return r=Oi(13,u,s,d),r.elementType=C,r.lanes=g,r;case E:return r=Oi(19,u,s,d),r.elementType=E,r.lanes=g,r;case G:return al(u,d,g,s);default:if(typeof r=="object"&&r!==null)switch(r.$$typeof){case P:S=10;break e;case v:S=9;break e;case x:S=11;break e;case T:S=14;break e;case R:S=16,h=null;break e}throw Error(l(130,r==null?r:typeof r,""))}return s=Oi(S,u,s,d),s.elementType=r,s.type=h,s.lanes=g,s}function br(r,s,u,h){return r=Oi(7,r,h,s),r.lanes=u,r}function al(r,s,u,h){return r=Oi(22,r,h,s),r.elementType=G,r.lanes=u,r.stateNode={isHidden:!1},r}function Sh(r,s,u){return r=Oi(6,r,null,s),r.lanes=u,r}function wh(r,s,u){return s=Oi(4,r.children!==null?r.children:[],r.key,s),s.lanes=u,s.stateNode={containerInfo:r.containerInfo,pendingChildren:null,implementation:r.implementation},s}function Mw(r,s,u,h,d){this.tag=s,this.containerInfo=r,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=Ve,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=mc(0),this.expirationTimes=mc(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=mc(0),this.identifierPrefix=h,this.onRecoverableError=d,ee&&(this.mutableSourceEagerHydrationData=null)}function Dm(r,s,u,h,d,g,S,I,z){return r=new Mw(r,s,u,I,z),s===1?(s=1,g===!0&&(s|=8)):s=0,g=Oi(3,null,null,s),r.current=g,g.stateNode=r,g.memoizedState={element:h,isDehydrated:u,cache:null,transitions:null,pendingSuspenseBoundaries:null},Mc(g),r}function jm(r){if(!r)return zn;r=r._reactInternals;e:{if(j(r)!==r||r.tag!==1)throw Error(l(170));var s=r;do{switch(s.tag){case 3:s=s.stateNode.context;break e;case 1:if(ii(s.type)){s=s.stateNode.__reactInternalMemoizedMergedChildContext;break e}}s=s.return}while(s!==null);throw Error(l(171))}if(r.tag===1){var u=r.type;if(ii(u))return lf(r,u,s)}return s}function Vm(r){var s=r._reactInternals;if(s===void 0)throw typeof r.render=="function"?Error(l(188)):(r=Object.keys(r).join(","),Error(l(268,r)));return r=ne(s),r===null?null:r.stateNode}function Um(r,s){if(r=r.memoizedState,r!==null&&r.dehydrated!==null){var u=r.retryLane;r.retryLane=u!==0&&u<s?u:s}}function ll(r,s){Um(r,s),(r=r.alternate)&&Um(r,s)}function Ow(r){return r=ne(r),r===null?null:r.stateNode}function kw(){return null}return i.attemptContinuousHydration=function(r){if(r.tag===13){var s=sn(r,134217728);if(s!==null){var u=Ut();Mi(s,r,134217728,u)}ll(r,134217728)}},i.attemptDiscreteHydration=function(r){if(r.tag===13){var s=sn(r,1);if(s!==null){var u=Ut();Mi(s,r,1,u)}ll(r,1)}},i.attemptHydrationAtCurrentPriority=function(r){if(r.tag===13){var s=jn(r),u=sn(r,s);if(u!==null){var h=Ut();Mi(u,r,s,h)}ll(r,s)}},i.attemptSynchronousHydration=function(r){switch(r.tag){case 3:var s=r.stateNode;if(s.current.memoizedState.isDehydrated){var u=ts(s.pendingLanes);u!==0&&(gc(s,u|1),oi(s,It()),!(_e&6)&&(fo(),on()))}break;case 13:_m(function(){var h=sn(r,1);if(h!==null){var d=Ut();Mi(h,r,1,d)}}),ll(r,1)}},i.batchedUpdates=function(r,s){var u=_e;_e|=1;try{return r(s)}finally{_e=u,_e===0&&(fo(),Ca&&on())}},i.createComponentSelector=function(r){return{$$typeof:Ya,value:r}},i.createContainer=function(r,s,u,h,d,g,S){return Dm(r,s,!1,null,u,h,d,g,S)},i.createHasPseudoClassSelector=function(r){return{$$typeof:Ga,value:r}},i.createHydrationContainer=function(r,s,u,h,d,g,S,I,z){return r=Dm(u,h,!0,r,d,g,S,I,z),r.context=jm(null),u=r.current,h=Ut(),d=jn(u),g=Pn(h,d),g.callback=s??null,Fn(u,g,d),r.current.lanes=d,is(r,d,h),oi(r,h),r},i.createPortal=function(r,s,u){var h=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:m,key:h==null?null:""+h,children:r,containerInfo:s,implementation:u}},i.createRoleSelector=function(r){return{$$typeof:$a,value:r}},i.createTestNameSelector=function(r){return{$$typeof:Xa,value:r}},i.createTextSelector=function(r){return{$$typeof:Ka,value:r}},i.deferredUpdates=function(r){var s=Le,u=ft.transition;try{return ft.transition=null,Le=16,r()}finally{Le=s,ft.transition=u}},i.discreteUpdates=function(r,s,u,h,d){var g=Le,S=ft.transition;try{return ft.transition=null,Le=1,r(s,u,h,d)}finally{Le=g,ft.transition=S,_e===0&&fo()}},i.findAllNodes=lh,i.findBoundingRects=function(r,s){if(!Ci)throw Error(l(363));s=lh(r,s),r=[];for(var u=0;u<s.length;u++)r.push(ma(s[u]));for(s=r.length-1;0<s;s--){u=r[s];for(var h=u.x,d=h+u.width,g=u.y,S=g+u.height,I=s-1;0<=I;I--)if(s!==I){var z=r[I],Z=z.x,le=Z+z.width,we=z.y,te=we+z.height;if(h>=Z&&g>=we&&d<=le&&S<=te){r.splice(s,1);break}else if(h!==Z||u.width!==z.width||te<g||we>S){if(!(g!==we||u.height!==z.height||le<h||Z>d)){Z>h&&(z.width+=Z-h,z.x=h),le<d&&(z.width=d-Z),r.splice(s,1);break}}else{we>g&&(z.height+=we-g,z.y=g),te<S&&(z.height=S-we),r.splice(s,1);break}}}return r},i.findHostInstance=Vm,i.findHostInstanceWithNoPortals=function(r){return r=$(r),r=r!==null?Me(r):null,r===null?null:r.stateNode},i.findHostInstanceWithWarning=function(r){return Vm(r)},i.flushControlled=function(r){var s=_e;_e|=1;var u=ft.transition,h=Le;try{ft.transition=null,Le=1,r()}finally{Le=h,ft.transition=u,_e=s,_e===0&&(fo(),on())}},i.flushPassiveEffects=wr,i.flushSync=_m,i.focusWithin=function(r,s){if(!Ci)throw Error(l(363));for(r=oh(r),s=Rm(r,s),s=Array.from(s),r=0;r<s.length;){var u=s[r++];if(!nn(u)){if(u.tag===5&&lc(u.stateNode))return!0;for(u=u.child;u!==null;)s.push(u),u=u.sibling}}return!1},i.getCurrentUpdatePriority=function(){return Le},i.getFindAllNodesFailureDescription=function(r,s){if(!Ci)throw Error(l(363));var u=0,h=[];r=[oh(r),0];for(var d=0;d<r.length;){var g=r[d++],S=r[d++],I=s[S];if((g.tag!==5||!nn(g))&&(sh(g,I)&&(h.push(ah(I)),S++,S>u&&(u=S)),S<s.length))for(g=g.child;g!==null;)r.push(g,S),g=g.sibling}if(u<s.length){for(r=[];u<s.length;u++)r.push(ah(s[u]));return`findAllNodes was able to match part of the selector:
8
- `+(h.join(" > ")+`
7
+ `+g.stack}return{value:r,source:s,stack:h,digest:null}}function td(r,s,u){return{value:r,source:null,stack:u??null,digest:s??null}}function id(r,s){try{console.error(s.value)}catch(u){setTimeout(function(){throw u})}}var Ew=typeof WeakMap=="function"?WeakMap:Map;function lm(r,s,u){u=En(-1,u),u.tag=3,u.payload={element:null};var d=s.value;return u.callback=function(){sl||(sl=!0,bd=d),id(r,s)},u}function um(r,s,u){u=En(-1,u),u.tag=3;var d=r.type.getDerivedStateFromError;if(typeof d=="function"){var h=s.value;u.payload=function(){return d(h)},u.callback=function(){id(r,s)}}var g=r.stateNode;return g!==null&&typeof g.componentDidCatch=="function"&&(u.callback=function(){id(r,s),typeof d!="function"&&(Hn===null?Hn=new Set([this]):Hn.add(this));var w=s.stack;this.componentDidCatch(s.value,{componentStack:w!==null?w:""})}),u}function cm(r,s,u){var d=r.pingCache;if(d===null){d=r.pingCache=new Ew;var h=new Set;d.set(s,h)}else h=d.get(s),h===void 0&&(h=new Set,d.set(s,h));h.has(u)||(h.add(u),r=Dw.bind(null,r,s,u),s.then(r,r))}function dm(r){do{var s;if((s=r.tag===13)&&(s=r.memoizedState,s=s!==null?s.dehydrated!==null:!0),s)return r;r=r.return}while(r!==null);return null}function hm(r,s,u,d,h){return r.mode&1?(r.flags|=65536,r.lanes=h,r):(r===s?r.flags|=65536:(r.flags|=128,u.flags|=131072,u.flags&=-52805,u.tag===1&&(u.alternate===null?u.tag=17:(s=En(-1,1),s.tag=2,Un(u,s,1))),u.lanes|=1),r)}var Aw=c.ReactCurrentOwner,ri=!1;function Qt(r,s,u,d){s.child=r===null?Df(s,null,u,d):ho(s,r.child,u,d)}function pm(r,s,u,d,h){u=u.render;var g=s.ref;return co(s,h),d=Gc(r,s,u,d,g,h),u=Xc(),r!==null&&!ri?(s.updateQueue=r.updateQueue,s.flags&=-2053,r.lanes&=~h,An(r,s,h)):(it&&u&&_c(s),s.flags|=1,Qt(r,s,d,h),s.child)}function fm(r,s,u,d,h){if(r===null){var g=u.type;return typeof g=="function"&&!Rd(g)&&g.defaultProps===void 0&&u.compare===null&&u.defaultProps===void 0?(s.tag=15,s.type=g,mm(r,s,g,d,h)):(r=hl(u.type,null,d,s,s.mode,h),r.ref=s.ref,r.return=s,s.child=r)}if(g=r.child,!(r.lanes&h)){var w=g.memoizedProps;if(u=u.compare,u=u!==null?u:La,u(w,d)&&r.ref===s.ref)return An(r,s,h)}return s.flags|=1,r=$n(g,d),r.ref=s.ref,r.return=s,s.child=r}function mm(r,s,u,d,h){if(r!==null){var g=r.memoizedProps;if(La(g,d)&&r.ref===s.ref)if(ri=!1,s.pendingProps=d=g,(r.lanes&h)!==0)r.flags&131072&&(ri=!0);else return s.lanes=r.lanes,An(r,s,h)}return nd(r,s,u,d,h)}function gm(r,s,u){var d=s.pendingProps,h=d.children,g=r!==null?r.memoizedState:null;if(d.mode==="hidden")if(!(s.mode&1))s.memoizedState={baseLanes:0,cachePool:null,transitions:null},Ge(yo,gi),gi|=u;else{if(!(u&1073741824))return r=g!==null?g.baseLanes|u:u,s.lanes=s.childLanes=1073741824,s.memoizedState={baseLanes:r,cachePool:null,transitions:null},s.updateQueue=null,Ge(yo,gi),gi|=r,null;s.memoizedState={baseLanes:0,cachePool:null,transitions:null},d=g!==null?g.baseLanes:u,Ge(yo,gi),gi|=d}else g!==null?(d=g.baseLanes|u,s.memoizedState=null):d=u,Ge(yo,gi),gi|=d;return Qt(r,s,h,u),s.child}function ym(r,s){var u=s.ref;(r===null&&u!==null||r!==null&&r.ref!==u)&&(s.flags|=512,s.flags|=2097152)}function nd(r,s,u,d,h){var g=ni(u)?gr:Dt.current;return g=oo(s,g),co(s,h),u=Gc(r,s,u,d,g,h),d=Xc(),r!==null&&!ri?(s.updateQueue=r.updateQueue,s.flags&=-2053,r.lanes&=~h,An(r,s,h)):(it&&d&&_c(s),s.flags|=1,Qt(r,s,u,h),s.child)}function vm(r,s,u,d,h){if(ni(u)){var g=!0;Ea(s)}else g=!1;if(co(s,h),s.stateNode===null)Ya(r,s),zf(s,u,d),Uc(s,u,d,h),d=!0;else if(r===null){var w=s.stateNode,I=s.memoizedProps;w.props=I;var F=w.context,J=u.contextType;typeof J=="object"&&J!==null?J=_i(J):(J=ni(u)?gr:Dt.current,J=oo(s,J));var le=u.getDerivedStateFromProps,we=typeof le=="function"||typeof w.getSnapshotBeforeUpdate=="function";we||typeof w.UNSAFE_componentWillReceiveProps!="function"&&typeof w.componentWillReceiveProps!="function"||(I!==d||F!==J)&&Nf(s,w,d,J),Vn=!1;var ie=s.memoizedState;w.state=ie,Ba(s,d,w,h),F=s.memoizedState,I!==d||ie!==F||ii.current||Vn?(typeof le=="function"&&(Vc(s,u,le,d),F=s.memoizedState),(I=Vn||Lf(s,u,I,d,ie,F,J))?(we||typeof w.UNSAFE_componentWillMount!="function"&&typeof w.componentWillMount!="function"||(typeof w.componentWillMount=="function"&&w.componentWillMount(),typeof w.UNSAFE_componentWillMount=="function"&&w.UNSAFE_componentWillMount()),typeof w.componentDidMount=="function"&&(s.flags|=4194308)):(typeof w.componentDidMount=="function"&&(s.flags|=4194308),s.memoizedProps=d,s.memoizedState=F),w.props=d,w.state=F,w.context=J,d=I):(typeof w.componentDidMount=="function"&&(s.flags|=4194308),d=!1)}else{w=s.stateNode,_f(r,s),I=s.memoizedProps,J=s.type===s.elementType?I:Qi(s.type,I),w.props=J,we=s.pendingProps,ie=w.context,F=u.contextType,typeof F=="object"&&F!==null?F=_i(F):(F=ni(u)?gr:Dt.current,F=oo(s,F));var et=u.getDerivedStateFromProps;(le=typeof et=="function"||typeof w.getSnapshotBeforeUpdate=="function")||typeof w.UNSAFE_componentWillReceiveProps!="function"&&typeof w.componentWillReceiveProps!="function"||(I!==we||ie!==F)&&Nf(s,w,d,F),Vn=!1,ie=s.memoizedState,w.state=ie,Ba(s,d,w,h);var $e=s.memoizedState;I!==we||ie!==$e||ii.current||Vn?(typeof et=="function"&&(Vc(s,u,et,d),$e=s.memoizedState),(J=Vn||Lf(s,u,J,d,ie,$e,F)||!1)?(le||typeof w.UNSAFE_componentWillUpdate!="function"&&typeof w.componentWillUpdate!="function"||(typeof w.componentWillUpdate=="function"&&w.componentWillUpdate(d,$e,F),typeof w.UNSAFE_componentWillUpdate=="function"&&w.UNSAFE_componentWillUpdate(d,$e,F)),typeof w.componentDidUpdate=="function"&&(s.flags|=4),typeof w.getSnapshotBeforeUpdate=="function"&&(s.flags|=1024)):(typeof w.componentDidUpdate!="function"||I===r.memoizedProps&&ie===r.memoizedState||(s.flags|=4),typeof w.getSnapshotBeforeUpdate!="function"||I===r.memoizedProps&&ie===r.memoizedState||(s.flags|=1024),s.memoizedProps=d,s.memoizedState=$e),w.props=d,w.state=$e,w.context=F,d=J):(typeof w.componentDidUpdate!="function"||I===r.memoizedProps&&ie===r.memoizedState||(s.flags|=4),typeof w.getSnapshotBeforeUpdate!="function"||I===r.memoizedProps&&ie===r.memoizedState||(s.flags|=1024),d=!1)}return rd(r,s,u,d,g,h)}function rd(r,s,u,d,h,g){ym(r,s);var w=(s.flags&128)!==0;if(!d&&!w)return h&&vf(s,u,!1),An(r,s,g);d=s.stateNode,Aw.current=s;var I=w&&typeof u.getDerivedStateFromError!="function"?null:d.render();return s.flags|=1,r!==null&&w?(s.child=ho(s,r.child,null,g),s.child=ho(s,null,I,g)):Qt(r,s,I,g),s.memoizedState=d.state,h&&vf(s,u,!0),s.child}function xm(r){var s=r.stateNode;s.pendingContext?gf(r,s.pendingContext,s.pendingContext!==s.context):s.context&&gf(r,s.context,!1),Hc(r,s.containerInfo)}function Sm(r,s,u,d,h){return lo(),Lc(h),s.flags|=256,Qt(r,s,u,d),s.child}var od={dehydrated:null,treeContext:null,retryLane:0};function sd(r){return{baseLanes:r,cachePool:null,transitions:null}}function wm(r,s,u){var d=s.pendingProps,h=at.current,g=!1,w=(s.flags&128)!==0,I;if((I=w)||(I=r!==null&&r.memoizedState===null?!1:(h&2)!==0),I?(g=!0,s.flags&=-129):(r===null||r.memoizedState!==null)&&(h|=1),Ge(at,h&1),r===null)return Oc(s),r=s.memoizedState,r!==null&&(r=r.dehydrated,r!==null)?(s.mode&1?vc(r)?s.lanes=8:s.lanes=1073741824:s.lanes=1,null):(w=d.children,r=d.fallback,g?(d=s.mode,g=s.child,w={mode:"hidden",children:w},!(d&1)&&g!==null?(g.childLanes=0,g.pendingProps=w):g=pl(w,d,0,null),r=Er(r,d,u,null),g.return=s,r.return=s,g.sibling=r,s.child=g,s.child.memoizedState=sd(u),s.memoizedState=od,r):ad(s,w));if(h=r.memoizedState,h!==null&&(I=h.dehydrated,I!==null))return Tw(r,s,w,d,I,h,u);if(g){g=d.fallback,w=s.mode,h=r.child,I=h.sibling;var F={mode:"hidden",children:d.children};return!(w&1)&&s.child!==h?(d=s.child,d.childLanes=0,d.pendingProps=F,s.deletions=null):(d=$n(h,F),d.subtreeFlags=h.subtreeFlags&14680064),I!==null?g=$n(I,g):(g=Er(g,w,u,null),g.flags|=2),g.return=s,d.return=s,d.sibling=g,s.child=d,d=g,g=s.child,w=r.child.memoizedState,w=w===null?sd(u):{baseLanes:w.baseLanes|u,cachePool:null,transitions:w.transitions},g.memoizedState=w,g.childLanes=r.childLanes&~u,s.memoizedState=od,d}return g=r.child,r=g.sibling,d=$n(g,{mode:"visible",children:d.children}),!(s.mode&1)&&(d.lanes=u),d.return=s,d.sibling=null,r!==null&&(u=s.deletions,u===null?(s.deletions=[r],s.flags|=16):u.push(r)),s.child=d,s.memoizedState=null,d}function ad(r,s){return s=pl({mode:"visible",children:s},r.mode,0,null),s.return=r,r.child=s}function $a(r,s,u,d){return d!==null&&Lc(d),ho(s,r.child,null,u),r=ad(s,s.pendingProps.children),r.flags|=2,s.memoizedState=null,r}function Tw(r,s,u,d,h,g,w){if(u)return s.flags&256?(s.flags&=-257,d=td(Error(l(422))),$a(r,s,w,d)):s.memoizedState!==null?(s.child=r.child,s.flags|=128,null):(g=d.fallback,h=s.mode,d=pl({mode:"visible",children:d.children},h,0,null),g=Er(g,h,w,null),g.flags|=2,d.return=s,g.return=s,d.sibling=g,s.child=d,s.mode&1&&ho(s,r.child,null,w),s.child.memoizedState=sd(w),s.memoizedState=od,g);if(!(s.mode&1))return $a(r,s,w,null);if(vc(h))return d=jS(h).digest,g=Error(l(419)),d=td(g,d,void 0),$a(r,s,w,d);if(u=(w&r.childLanes)!==0,ri||u){if(d=Mt,d!==null){switch(w&-w){case 4:h=2;break;case 16:h=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:h=32;break;case 536870912:h=268435456;break;default:h=0}h=h&(d.suspendedLanes|w)?0:h,h!==0&&h!==g.retryLane&&(g.retryLane=h,an(r,h),Oi(d,r,h,-1))}return Td(),d=td(Error(l(421))),$a(r,s,w,d)}return mf(h)?(s.flags|=128,s.child=r.child,s=jw.bind(null,r),VS(h,s),null):(r=g.treeContext,ee&&(Ii=WS(h),mi=s,it=!0,qi=null,ls=!1,r!==null&&(Ti[Ri++]=Pn,Ti[Ri++]=Cn,Ti[Ri++]=yr,Pn=r.id,Cn=r.overflow,yr=s)),s=ad(s,d.children),s.flags|=4096,s)}function bm(r,s,u){r.lanes|=s;var d=r.alternate;d!==null&&(d.lanes|=s),Bc(r.return,s,u)}function ld(r,s,u,d,h){var g=r.memoizedState;g===null?r.memoizedState={isBackwards:s,rendering:null,renderingStartTime:0,last:d,tail:u,tailMode:h}:(g.isBackwards=s,g.rendering=null,g.renderingStartTime=0,g.last=d,g.tail=u,g.tailMode=h)}function Pm(r,s,u){var d=s.pendingProps,h=d.revealOrder,g=d.tail;if(Qt(r,s,d.children,u),d=at.current,d&2)d=d&1|2,s.flags|=128;else{if(r!==null&&r.flags&128)e:for(r=s.child;r!==null;){if(r.tag===13)r.memoizedState!==null&&bm(r,u,s);else if(r.tag===19)bm(r,u,s);else if(r.child!==null){r.child.return=r,r=r.child;continue}if(r===s)break e;for(;r.sibling===null;){if(r.return===null||r.return===s)break e;r=r.return}r.sibling.return=r.return,r=r.sibling}d&=1}if(Ge(at,d),!(s.mode&1))s.memoizedState=null;else switch(h){case"forwards":for(u=s.child,h=null;u!==null;)r=u.alternate,r!==null&&Va(r)===null&&(h=u),u=u.sibling;u=h,u===null?(h=s.child,s.child=null):(h=u.sibling,u.sibling=null),ld(s,!1,h,u,g);break;case"backwards":for(u=null,h=s.child,s.child=null;h!==null;){if(r=h.alternate,r!==null&&Va(r)===null){s.child=h;break}r=h.sibling,h.sibling=u,u=h,h=r}ld(s,!0,u,null,g);break;case"together":ld(s,!1,null,null,void 0);break;default:s.memoizedState=null}return s.child}function Ya(r,s){!(s.mode&1)&&r!==null&&(r.alternate=null,s.alternate=null,s.flags|=2)}function An(r,s,u){if(r!==null&&(s.dependencies=r.dependencies),wr|=s.lanes,!(u&s.childLanes))return null;if(r!==null&&s.child!==r.child)throw Error(l(153));if(s.child!==null){for(r=s.child,u=$n(r,r.pendingProps),s.child=u,u.return=s;r.sibling!==null;)r=r.sibling,u=u.sibling=$n(r,r.pendingProps),u.return=s;u.sibling=null}return s.child}function Rw(r,s,u){switch(s.tag){case 3:xm(s),lo();break;case 5:jf(s);break;case 1:ni(s.type)&&Ea(s);break;case 4:Hc(s,s.stateNode.containerInfo);break;case 10:Rf(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?wm(r,s,u):(Ge(at,at.current&1),r=An(r,s,u),r!==null?r.sibling:null);Ge(at,at.current&1);break;case 19:if(d=(u&s.childLanes)!==0,r.flags&128){if(d)return Pm(r,s,u);s.flags|=128}var h=s.memoizedState;if(h!==null&&(h.rendering=null,h.tail=null,h.lastEffect=null),Ge(at,at.current),d)break;return null;case 22:case 23:return s.lanes=0,gm(r,s,u)}return An(r,s,u)}function cn(r){r.flags|=4}function Cm(r,s){if(r!==null&&r.child===s.child)return!0;if(s.flags&16)return!1;for(r=s.child;r!==null;){if(r.flags&12854||r.subtreeFlags&12854)return!1;r=r.sibling}return!0}var gs,ys,Ga,Xa;if(Ee)gs=function(r,s){for(var u=s.child;u!==null;){if(u.tag===5||u.tag===6)ge(r,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}},ys=function(){},Ga=function(r,s,u,d,h){if(r=r.memoizedProps,r!==d){var g=s.stateNode,w=ln(Mi.current);u=B(g,u,r,d,h,w),(s.updateQueue=u)&&cn(s)}},Xa=function(r,s,u,d){u!==d&&cn(s)};else if(qe){gs=function(r,s,u,d){for(var h=s.child;h!==null;){if(h.tag===5){var g=h.stateNode;u&&d&&(g=mr(g,h.type,h.memoizedProps,h)),ge(r,g)}else if(h.tag===6)g=h.stateNode,u&&d&&(g=rs(g,h.memoizedProps,h)),ge(r,g);else if(h.tag!==4){if(h.tag===22&&h.memoizedState!==null)g=h.child,g!==null&&(g.return=h),gs(r,h,!0,!0);else if(h.child!==null){h.child.return=h,h=h.child;continue}}if(h===s)break;for(;h.sibling===null;){if(h.return===null||h.return===s)return;h=h.return}h.sibling.return=h.return,h=h.sibling}};var Em=function(r,s,u,d){for(var h=s.child;h!==null;){if(h.tag===5){var g=h.stateNode;u&&d&&(g=mr(g,h.type,h.memoizedProps,h)),Et(r,g)}else if(h.tag===6)g=h.stateNode,u&&d&&(g=rs(g,h.memoizedProps,h)),Et(r,g);else if(h.tag!==4){if(h.tag===22&&h.memoizedState!==null)g=h.child,g!==null&&(g.return=h),Em(r,h,!0,!0);else if(h.child!==null){h.child.return=h,h=h.child;continue}}if(h===s)break;for(;h.sibling===null;){if(h.return===null||h.return===s)return;h=h.return}h.sibling.return=h.return,h=h.sibling}};ys=function(r,s){var u=s.stateNode;if(!Cm(r,s)){r=u.containerInfo;var d=st(r);Em(d,s,!1,!1),u.pendingChildren=d,cn(s),Bn(r,d)}},Ga=function(r,s,u,d,h){var g=r.stateNode,w=r.memoizedProps;if((r=Cm(r,s))&&w===d)s.stateNode=g;else{var I=s.stateNode,F=ln(Mi.current),J=null;w!==d&&(J=B(I,u,w,d,h,F)),r&&J===null?s.stateNode=g:(g=Ct(g,J,u,w,d,s,r,I),Fe(g,u,d,h,F)&&cn(s),s.stateNode=g,r?cn(s):gs(g,s,!1,!1))}},Xa=function(r,s,u,d){u!==d?(r=ln(po.current),u=ln(Mi.current),s.stateNode=de(d,r,u,s),cn(s)):s.stateNode=r.stateNode}}else ys=function(){},Ga=function(){},Xa=function(){};function vs(r,s){if(!it)switch(r.tailMode){case"hidden":s=r.tail;for(var u=null;s!==null;)s.alternate!==null&&(u=s),s=s.sibling;u===null?r.tail=null:u.sibling=null;break;case"collapsed":u=r.tail;for(var d=null;u!==null;)u.alternate!==null&&(d=u),u=u.sibling;d===null?s||r.tail===null?r.tail=null:r.tail.sibling=null:d.sibling=null}}function Vt(r){var s=r.alternate!==null&&r.alternate.child===r.child,u=0,d=0;if(s)for(var h=r.child;h!==null;)u|=h.lanes|h.childLanes,d|=h.subtreeFlags&14680064,d|=h.flags&14680064,h.return=r,h=h.sibling;else for(h=r.child;h!==null;)u|=h.lanes|h.childLanes,d|=h.subtreeFlags,d|=h.flags,h.return=r,h=h.sibling;return r.subtreeFlags|=d,r.childLanes=u,s}function Iw(r,s,u){var d=s.pendingProps;switch(Mc(s),s.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Vt(s),null;case 1:return ni(s.type)&&Ca(),Vt(s),null;case 3:return u=s.stateNode,fo(),Je(ii),Je(Dt),Qc(),u.pendingContext&&(u.context=u.pendingContext,u.pendingContext=null),(r===null||r.child===null)&&(Oa(s)?cn(s):r===null||r.memoizedState.isDehydrated&&!(s.flags&256)||(s.flags|=1024,qi!==null&&(Ed(qi),qi=null))),ys(r,s),Vt(s),null;case 5:Wc(s),u=ln(po.current);var h=s.type;if(r!==null&&s.stateNode!=null)Ga(r,s,h,d,u),r.ref!==s.ref&&(s.flags|=512,s.flags|=2097152);else{if(!d){if(s.stateNode===null)throw Error(l(166));return Vt(s),null}if(r=ln(Mi.current),Oa(s)){if(!ee)throw Error(l(175));r=qS(s.stateNode,s.type,s.memoizedProps,u,r,s,!ls),s.updateQueue=r,r!==null&&cn(s)}else{var g=H(h,d,u,r,s);gs(g,s,!1,!1),s.stateNode=g,Fe(g,h,d,u,r)&&cn(s)}s.ref!==null&&(s.flags|=512,s.flags|=2097152)}return Vt(s),null;case 6:if(r&&s.stateNode!=null)Xa(r,s,r.memoizedProps,d);else{if(typeof d!="string"&&s.stateNode===null)throw Error(l(166));if(r=ln(po.current),u=ln(Mi.current),Oa(s)){if(!ee)throw Error(l(176));if(r=s.stateNode,u=s.memoizedProps,(d=QS(r,u,s,!ls))&&(h=mi,h!==null))switch(h.tag){case 3:ew(h.stateNode.containerInfo,r,u,(h.mode&1)!==0);break;case 5:tw(h.type,h.memoizedProps,h.stateNode,r,u,(h.mode&1)!==0)}d&&cn(s)}else s.stateNode=de(d,r,u,s)}return Vt(s),null;case 13:if(Je(at),d=s.memoizedState,r===null||r.memoizedState!==null&&r.memoizedState.dehydrated!==null){if(it&&Ii!==null&&s.mode&1&&!(s.flags&128))Tf(),lo(),s.flags|=98560,h=!1;else if(h=Oa(s),d!==null&&d.dehydrated!==null){if(r===null){if(!h)throw Error(l(318));if(!ee)throw Error(l(344));if(h=s.memoizedState,h=h!==null?h.dehydrated:null,!h)throw Error(l(317));$S(h,s)}else lo(),!(s.flags&128)&&(s.memoizedState=null),s.flags|=4;Vt(s),h=!1}else qi!==null&&(Ed(qi),qi=null),h=!0;if(!h)return s.flags&65536?s:null}return s.flags&128?(s.lanes=u,s):(u=d!==null,u!==(r!==null&&r.memoizedState!==null)&&u&&(s.child.flags|=8192,s.mode&1&&(r===null||at.current&1?Tt===0&&(Tt=3):Td())),s.updateQueue!==null&&(s.flags|=4),Vt(s),null);case 4:return fo(),ys(r,s),r===null&&Se(s.stateNode.containerInfo),Vt(s),null;case 10:return Fc(s.type._context),Vt(s),null;case 17:return ni(s.type)&&Ca(),Vt(s),null;case 19:if(Je(at),h=s.memoizedState,h===null)return Vt(s),null;if(d=(s.flags&128)!==0,g=h.rendering,g===null)if(d)vs(h,!1);else{if(Tt!==0||r!==null&&r.flags&128)for(r=s.child;r!==null;){if(g=Va(r),g!==null){for(s.flags|=128,vs(h,!1),r=g.updateQueue,r!==null&&(s.updateQueue=r,s.flags|=4),s.subtreeFlags=0,r=u,u=s.child;u!==null;)d=u,h=r,d.flags&=14680066,g=d.alternate,g===null?(d.childLanes=0,d.lanes=h,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,h=g.dependencies,d.dependencies=h===null?null:{lanes:h.lanes,firstContext:h.firstContext}),u=u.sibling;return Ge(at,at.current&1|2),s.child}r=r.sibling}h.tail!==null&&It()>wd&&(s.flags|=128,d=!0,vs(h,!1),s.lanes=4194304)}else{if(!d)if(r=Va(g),r!==null){if(s.flags|=128,d=!0,r=r.updateQueue,r!==null&&(s.updateQueue=r,s.flags|=4),vs(h,!0),h.tail===null&&h.tailMode==="hidden"&&!g.alternate&&!it)return Vt(s),null}else 2*It()-h.renderingStartTime>wd&&u!==1073741824&&(s.flags|=128,d=!0,vs(h,!1),s.lanes=4194304);h.isBackwards?(g.sibling=s.child,s.child=g):(r=h.last,r!==null?r.sibling=g:s.child=g,h.last=g)}return h.tail!==null?(s=h.tail,h.rendering=s,h.tail=s.sibling,h.renderingStartTime=It(),s.sibling=null,r=at.current,Ge(at,d?r&1|2:r&1),s):(Vt(s),null);case 22:case 23:return Ad(),u=s.memoizedState!==null,r!==null&&r.memoizedState!==null!==u&&(s.flags|=8192),u&&s.mode&1?gi&1073741824&&(Vt(s),Ee&&s.subtreeFlags&6&&(s.flags|=8192)):Vt(s),null;case 24:return null;case 25:return null}throw Error(l(156,s.tag))}function _w(r,s){switch(Mc(s),s.tag){case 1:return ni(s.type)&&Ca(),r=s.flags,r&65536?(s.flags=r&-65537|128,s):null;case 3:return fo(),Je(ii),Je(Dt),Qc(),r=s.flags,r&65536&&!(r&128)?(s.flags=r&-65537|128,s):null;case 5:return Wc(s),null;case 13:if(Je(at),r=s.memoizedState,r!==null&&r.dehydrated!==null){if(s.alternate===null)throw Error(l(340));lo()}return r=s.flags,r&65536?(s.flags=r&-65537|128,s):null;case 19:return Je(at),null;case 4:return fo(),null;case 10:return Fc(s.type._context),null;case 22:case 23:return Ad(),null;case 24:return null;default:return null}}var Ka=!1,Ut=!1,Mw=typeof WeakSet=="function"?WeakSet:Set,ae=null;function go(r,s){var u=r.ref;if(u!==null)if(typeof u=="function")try{u(null)}catch(d){nt(r,s,d)}else u.current=null}function ud(r,s,u){try{u()}catch(d){nt(r,s,d)}}var Am=!1;function kw(r,s){for(ft(r.containerInfo),ae=s;ae!==null;)if(r=ae,s=r.child,(r.subtreeFlags&1028)!==0&&s!==null)s.return=r,ae=s;else for(;ae!==null;){r=ae;try{var u=r.alternate;if(r.flags&1024)switch(r.tag){case 0:case 11:case 15:break;case 1:if(u!==null){var d=u.memoizedProps,h=u.memoizedState,g=r.stateNode,w=g.getSnapshotBeforeUpdate(r.elementType===r.type?d:Qi(r.type,d),h);g.__reactInternalSnapshotBeforeUpdate=w}break;case 3:Ee&&Qe(r.stateNode.containerInfo);break;case 5:case 6:case 4:case 17:break;default:throw Error(l(163))}}catch(I){nt(r,r.return,I)}if(s=r.sibling,s!==null){s.return=r.return,ae=s;break}ae=r.return}return u=Am,Am=!1,u}function xs(r,s,u){var d=s.updateQueue;if(d=d!==null?d.lastEffect:null,d!==null){var h=d=d.next;do{if((h.tag&r)===r){var g=h.destroy;h.destroy=void 0,g!==void 0&&ud(s,u,g)}h=h.next}while(h!==d)}}function Za(r,s){if(s=s.updateQueue,s=s!==null?s.lastEffect:null,s!==null){var u=s=s.next;do{if((u.tag&r)===r){var d=u.create;u.destroy=d()}u=u.next}while(u!==s)}}function cd(r){var s=r.ref;if(s!==null){var u=r.stateNode;switch(r.tag){case 5:r=ve(u);break;default:r=u}typeof s=="function"?s(r):s.current=r}}function Tm(r){var s=r.alternate;s!==null&&(r.alternate=null,Tm(s)),r.child=null,r.deletions=null,r.sibling=null,r.tag===5&&(s=r.stateNode,s!==null&&ti(s)),r.stateNode=null,r.return=null,r.dependencies=null,r.memoizedProps=null,r.memoizedState=null,r.pendingProps=null,r.stateNode=null,r.updateQueue=null}function Rm(r){return r.tag===5||r.tag===3||r.tag===4}function Im(r){e:for(;;){for(;r.sibling===null;){if(r.return===null||Rm(r.return))return null;r=r.return}for(r.sibling.return=r.return,r=r.sibling;r.tag!==5&&r.tag!==6&&r.tag!==18;){if(r.flags&2||r.child===null||r.tag===4)continue e;r.child.return=r,r=r.child}if(!(r.flags&2))return r.stateNode}}function dd(r,s,u){var d=r.tag;if(d===5||d===6)r=r.stateNode,s?V(u,r,s):X(u,r);else if(d!==4&&(r=r.child,r!==null))for(dd(r,s,u),r=r.sibling;r!==null;)dd(r,s,u),r=r.sibling}function hd(r,s,u){var d=r.tag;if(d===5||d===6)r=r.stateNode,s?Be(u,r,s):L(u,r);else if(d!==4&&(r=r.child,r!==null))for(hd(r,s,u),r=r.sibling;r!==null;)hd(r,s,u),r=r.sibling}var Nt=null,$i=!1;function dn(r,s,u){for(u=u.child;u!==null;)pd(r,s,u),u=u.sibling}function pd(r,s,u){if(on&&typeof on.onCommitFiberUnmount=="function")try{on.onCommitFiberUnmount(Ia,u)}catch{}switch(u.tag){case 5:Ut||go(u,s);case 6:if(Ee){var d=Nt,h=$i;Nt=null,dn(r,s,u),Nt=d,$i=h,Nt!==null&&($i?ue(Nt,u.stateNode):W(Nt,u.stateNode))}else dn(r,s,u);break;case 18:Ee&&Nt!==null&&($i?ZS(Nt,u.stateNode):KS(Nt,u.stateNode));break;case 4:Ee?(d=Nt,h=$i,Nt=u.stateNode.containerInfo,$i=!0,dn(r,s,u),Nt=d,$i=h):(qe&&(d=u.stateNode.containerInfo,h=st(d),Ui(d,h)),dn(r,s,u));break;case 0:case 11:case 14:case 15:if(!Ut&&(d=u.updateQueue,d!==null&&(d=d.lastEffect,d!==null))){h=d=d.next;do{var g=h,w=g.destroy;g=g.tag,w!==void 0&&(g&2||g&4)&&ud(u,s,w),h=h.next}while(h!==d)}dn(r,s,u);break;case 1:if(!Ut&&(go(u,s),d=u.stateNode,typeof d.componentWillUnmount=="function"))try{d.props=u.memoizedProps,d.state=u.memoizedState,d.componentWillUnmount()}catch(I){nt(u,s,I)}dn(r,s,u);break;case 21:dn(r,s,u);break;case 22:u.mode&1?(Ut=(d=Ut)||u.memoizedState!==null,dn(r,s,u),Ut=d):dn(r,s,u);break;default:dn(r,s,u)}}function _m(r){var s=r.updateQueue;if(s!==null){r.updateQueue=null;var u=r.stateNode;u===null&&(u=r.stateNode=new Mw),s.forEach(function(d){var h=Vw.bind(null,r,d);u.has(d)||(u.add(d),d.then(h,h))})}}function Yi(r,s){var u=s.deletions;if(u!==null)for(var d=0;d<u.length;d++){var h=u[d];try{var g=r,w=s;if(Ee){var I=w;e:for(;I!==null;){switch(I.tag){case 5:Nt=I.stateNode,$i=!1;break e;case 3:Nt=I.stateNode.containerInfo,$i=!0;break e;case 4:Nt=I.stateNode.containerInfo,$i=!0;break e}I=I.return}if(Nt===null)throw Error(l(160));pd(g,w,h),Nt=null,$i=!1}else pd(g,w,h);var F=h.alternate;F!==null&&(F.return=null),h.return=null}catch(J){nt(h,s,J)}}if(s.subtreeFlags&12854)for(s=s.child;s!==null;)Mm(s,r),s=s.sibling}function Mm(r,s){var u=r.alternate,d=r.flags;switch(r.tag){case 0:case 11:case 14:case 15:if(Yi(s,r),hn(r),d&4){try{xs(3,r,r.return),Za(3,r)}catch(ie){nt(r,r.return,ie)}try{xs(5,r,r.return)}catch(ie){nt(r,r.return,ie)}}break;case 1:Yi(s,r),hn(r),d&512&&u!==null&&go(u,u.return);break;case 5:if(Yi(s,r),hn(r),d&512&&u!==null&&go(u,u.return),Ee){if(r.flags&32){var h=r.stateNode;try{oe(h)}catch(ie){nt(r,r.return,ie)}}if(d&4&&(h=r.stateNode,h!=null)){var g=r.memoizedProps;if(u=u!==null?u.memoizedProps:g,d=r.type,s=r.updateQueue,r.updateQueue=null,s!==null)try{Te(h,s,d,u,g,r)}catch(ie){nt(r,r.return,ie)}}}break;case 6:if(Yi(s,r),hn(r),d&4&&Ee){if(r.stateNode===null)throw Error(l(162));h=r.stateNode,g=r.memoizedProps,u=u!==null?u.memoizedProps:g;try{Z(h,u,g)}catch(ie){nt(r,r.return,ie)}}break;case 3:if(Yi(s,r),hn(r),d&4){if(Ee&&ee&&u!==null&&u.memoizedState.isDehydrated)try{GS(s.containerInfo)}catch(ie){nt(r,r.return,ie)}if(qe){h=s.containerInfo,g=s.pendingChildren;try{Ui(h,g)}catch(ie){nt(r,r.return,ie)}}}break;case 4:if(Yi(s,r),hn(r),d&4&&qe){g=r.stateNode,h=g.containerInfo,g=g.pendingChildren;try{Ui(h,g)}catch(ie){nt(r,r.return,ie)}}break;case 13:Yi(s,r),hn(r),h=r.child,h.flags&8192&&(g=h.memoizedState!==null,h.stateNode.isHidden=g,!g||h.alternate!==null&&h.alternate.memoizedState!==null||(Sd=It())),d&4&&_m(r);break;case 22:var w=u!==null&&u.memoizedState!==null;if(r.mode&1?(Ut=(u=Ut)||w,Yi(s,r),Ut=u):Yi(s,r),hn(r),d&8192){if(u=r.memoizedState!==null,(r.stateNode.isHidden=u)&&!w&&r.mode&1)for(ae=r,d=r.child;d!==null;){for(s=ae=d;ae!==null;){w=ae;var I=w.child;switch(w.tag){case 0:case 11:case 14:case 15:xs(4,w,w.return);break;case 1:go(w,w.return);var F=w.stateNode;if(typeof F.componentWillUnmount=="function"){var J=w,le=w.return;try{var we=J;F.props=we.memoizedProps,F.state=we.memoizedState,F.componentWillUnmount()}catch(ie){nt(J,le,ie)}}break;case 5:go(w,w.return);break;case 22:if(w.memoizedState!==null){Lm(s);continue}}I!==null?(I.return=w,ae=I):Lm(s)}d=d.sibling}if(Ee){e:if(d=null,Ee)for(s=r;;){if(s.tag===5){if(d===null){d=s;try{h=s.stateNode,u?se(h):Ke(s.stateNode,s.memoizedProps)}catch(ie){nt(r,r.return,ie)}}}else if(s.tag===6){if(d===null)try{g=s.stateNode,u?Re(g):Ze(g,s.memoizedProps)}catch(ie){nt(r,r.return,ie)}}else if((s.tag!==22&&s.tag!==23||s.memoizedState===null||s===r)&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===r)break e;for(;s.sibling===null;){if(s.return===null||s.return===r)break e;d===s&&(d=null),s=s.return}d===s&&(d=null),s.sibling.return=s.return,s=s.sibling}}}break;case 19:Yi(s,r),hn(r),d&4&&_m(r);break;case 21:break;default:Yi(s,r),hn(r)}}function hn(r){var s=r.flags;if(s&2){try{if(Ee){e:{for(var u=r.return;u!==null;){if(Rm(u)){var d=u;break e}u=u.return}throw Error(l(160))}switch(d.tag){case 5:var h=d.stateNode;d.flags&32&&(oe(h),d.flags&=-33);var g=Im(r);hd(r,g,h);break;case 3:case 4:var w=d.stateNode.containerInfo,I=Im(r);dd(r,I,w);break;default:throw Error(l(161))}}}catch(F){nt(r,r.return,F)}r.flags&=-3}s&4096&&(r.flags&=-4097)}function Ow(r,s,u){ae=r,km(r,s,u)}function km(r,s,u){for(var d=(r.mode&1)!==0;ae!==null;){var h=ae,g=h.child;if(h.tag===22&&d){var w=h.memoizedState!==null||Ka;if(!w){var I=h.alternate,F=I!==null&&I.memoizedState!==null||Ut;I=Ka;var J=Ut;if(Ka=w,(Ut=F)&&!J)for(ae=h;ae!==null;)w=ae,F=w.child,w.tag===22&&w.memoizedState!==null?zm(h):F!==null?(F.return=w,ae=F):zm(h);for(;g!==null;)ae=g,km(g,s,u),g=g.sibling;ae=h,Ka=I,Ut=J}Om(r,s,u)}else h.subtreeFlags&8772&&g!==null?(g.return=h,ae=g):Om(r,s,u)}}function Om(r){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:Ut||Za(5,s);break;case 1:var d=s.stateNode;if(s.flags&4&&!Ut)if(u===null)d.componentDidMount();else{var h=s.elementType===s.type?u.memoizedProps:Qi(s.type,u.memoizedProps);d.componentDidUpdate(h,u.memoizedState,d.__reactInternalSnapshotBeforeUpdate)}var g=s.updateQueue;g!==null&&kf(s,g,d);break;case 3:var w=s.updateQueue;if(w!==null){if(u=null,s.child!==null)switch(s.child.tag){case 5:u=ve(s.child.stateNode);break;case 1:u=s.child.stateNode}kf(s,w,u)}break;case 5:var I=s.stateNode;u===null&&s.flags&4&&Pe(I,s.type,s.memoizedProps,s);break;case 6:break;case 4:break;case 12:break;case 13:if(ee&&s.memoizedState===null){var F=s.alternate;if(F!==null){var J=F.memoizedState;if(J!==null){var le=J.dehydrated;le!==null&&XS(le)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(l(163))}Ut||s.flags&512&&cd(s)}catch(we){nt(s,s.return,we)}}if(s===r){ae=null;break}if(u=s.sibling,u!==null){u.return=s.return,ae=u;break}ae=s.return}}function Lm(r){for(;ae!==null;){var s=ae;if(s===r){ae=null;break}var u=s.sibling;if(u!==null){u.return=s.return,ae=u;break}ae=s.return}}function zm(r){for(;ae!==null;){var s=ae;try{switch(s.tag){case 0:case 11:case 15:var u=s.return;try{Za(4,s)}catch(F){nt(s,u,F)}break;case 1:var d=s.stateNode;if(typeof d.componentDidMount=="function"){var h=s.return;try{d.componentDidMount()}catch(F){nt(s,h,F)}}var g=s.return;try{cd(s)}catch(F){nt(s,g,F)}break;case 5:var w=s.return;try{cd(s)}catch(F){nt(s,w,F)}}}catch(F){nt(s,s.return,F)}if(s===r){ae=null;break}var I=s.sibling;if(I!==null){I.return=s.return,ae=I;break}ae=s.return}}var Ja=0,el=1,tl=2,il=3,nl=4;if(typeof Symbol=="function"&&Symbol.for){var Ss=Symbol.for;Ja=Ss("selector.component"),el=Ss("selector.has_pseudo_class"),tl=Ss("selector.role"),il=Ss("selector.test_id"),nl=Ss("selector.text")}function fd(r){var s=Ae(r);if(s!=null){if(typeof s.memoizedProps["data-testname"]!="string")throw Error(l(364));return s}if(r=gc(r),r===null)throw Error(l(362));return r.stateNode.current}function md(r,s){switch(s.$$typeof){case Ja:if(r.type===s.value)return!0;break;case el:e:{s=s.value,r=[r,0];for(var u=0;u<r.length;){var d=r[u++],h=r[u++],g=s[h];if(d.tag!==5||!rn(d)){for(;g!=null&&md(d,g);)h++,g=s[h];if(h===s.length){s=!0;break e}else for(d=d.child;d!==null;)r.push(d,h),d=d.sibling}}s=!1}return s;case tl:if(r.tag===5&&ns(r.stateNode,s.value))return!0;break;case nl:if((r.tag===5||r.tag===6)&&(r=is(r),r!==null&&0<=r.indexOf(s.value)))return!0;break;case il:if(r.tag===5&&(r=r.memoizedProps["data-testname"],typeof r=="string"&&r.toLowerCase()===s.value.toLowerCase()))return!0;break;default:throw Error(l(365))}return!1}function gd(r){switch(r.$$typeof){case Ja:return"<"+(k(r.value)||"Unknown")+">";case el:return":has("+(gd(r)||"")+")";case tl:return'[role="'+r.value+'"]';case nl:return'"'+r.value+'"';case il:return'[data-testname="'+r.value+'"]';default:throw Error(l(365))}}function Nm(r,s){var u=[];r=[r,0];for(var d=0;d<r.length;){var h=r[d++],g=r[d++],w=s[g];if(h.tag!==5||!rn(h)){for(;w!=null&&md(h,w);)g++,w=s[g];if(g===s.length)u.push(h);else for(h=h.child;h!==null;)r.push(h,g),h=h.sibling}}return u}function yd(r,s){if(!Ai)throw Error(l(363));r=fd(r),r=Nm(r,s),s=[],r=Array.from(r);for(var u=0;u<r.length;){var d=r[u++];if(d.tag===5)rn(d)||s.push(d.stateNode);else for(d=d.child;d!==null;)r.push(d),d=d.sibling}return s}var Lw=Math.ceil,rl=c.ReactCurrentDispatcher,vd=c.ReactCurrentOwner,mt=c.ReactCurrentBatchConfig,_e=0,Mt=null,vt=null,Ft=0,gi=0,yo=Dn(0),Tt=0,ws=null,wr=0,ol=0,xd=0,bs=null,oi=null,Sd=0,wd=1/0,Tn=null;function vo(){wd=It()+500}var sl=!1,bd=null,Hn=null,al=!1,Wn=null,ll=0,Ps=0,Pd=null,ul=-1,cl=0;function Ht(){return _e&6?It():ul!==-1?ul:ul=It()}function qn(r){return r.mode&1?_e&2&&Ft!==0?Ft&-Ft:gw.transition!==null?(cl===0&&(cl=xf()),cl):(r=Oe,r!==0?r:Ei()):1}function Oi(r,s,u,d){if(50<Ps)throw Ps=0,Pd=null,Error(l(185));as(r,u,d),(!(_e&2)||r!==Mt)&&(r===Mt&&(!(_e&2)&&(ol|=u),Tt===4&&Qn(r,Ft)),si(r,d),u===1&&_e===0&&!(s.mode&1)&&(vo(),_a&&sn()))}function si(r,s){var u=r.callbackNode;aw(r,s);var d=Ra(r,r===Mt?Ft:0);if(d===0)u!==null&&wf(u),r.callbackNode=null,r.callbackPriority=0;else if(s=d&-d,r.callbackPriority!==s){if(u!=null&&wf(u),s===1)r.tag===0?mw(Bm.bind(null,r)):bf(Bm.bind(null,r)),zt?fi(function(){!(_e&6)&&sn()}):Ac(Tc,sn),u=null;else{switch(Sf(d)){case 1:u=Tc;break;case 4:u=dw;break;case 16:u=Rc;break;case 536870912:u=hw;break;default:u=Rc}u=$m(u,Fm.bind(null,r))}r.callbackPriority=s,r.callbackNode=u}}function Fm(r,s){if(ul=-1,cl=0,_e&6)throw Error(l(327));var u=r.callbackNode;if(Cr()&&r.callbackNode!==u)return null;var d=Ra(r,r===Mt?Ft:0);if(d===0)return null;if(d&30||d&r.expiredLanes||s)s=dl(r,d);else{s=d;var h=_e;_e|=2;var g=Vm();(Mt!==r||Ft!==s)&&(Tn=null,vo(),br(r,s));do try{Fw();break}catch(I){jm(r,I)}while(!0);Nc(),rl.current=g,_e=h,vt!==null?s=0:(Mt=null,Ft=0,s=Tt)}if(s!==0){if(s===2&&(h=Pc(r),h!==0&&(d=h,s=Cd(r,h))),s===1)throw u=ws,br(r,0),Qn(r,d),si(r,It()),u;if(s===6)Qn(r,d);else{if(h=r.current.alternate,!(d&30)&&!zw(h)&&(s=dl(r,d),s===2&&(g=Pc(r),g!==0&&(d=g,s=Cd(r,g))),s===1))throw u=ws,br(r,0),Qn(r,d),si(r,It()),u;switch(r.finishedWork=h,r.finishedLanes=d,s){case 0:case 1:throw Error(l(345));case 2:Pr(r,oi,Tn);break;case 3:if(Qn(r,d),(d&130023424)===d&&(s=Sd+500-It(),10<s)){if(Ra(r,0)!==0)break;if(h=r.suspendedLanes,(h&d)!==d){Ht(),r.pingedLanes|=r.suspendedLanes&h;break}r.timeoutHandle=pe(Pr.bind(null,r,oi,Tn),s);break}Pr(r,oi,Tn);break;case 4:if(Qn(r,d),(d&4194240)===d)break;for(s=r.eventTimes,h=-1;0<d;){var w=31-Hi(d);g=1<<w,w=s[w],w>h&&(h=w),d&=~g}if(d=h,d=It()-d,d=(120>d?120:480>d?480:1080>d?1080:1920>d?1920:3e3>d?3e3:4320>d?4320:1960*Lw(d/1960))-d,10<d){r.timeoutHandle=pe(Pr.bind(null,r,oi,Tn),d);break}Pr(r,oi,Tn);break;case 5:Pr(r,oi,Tn);break;default:throw Error(l(329))}}}return si(r,It()),r.callbackNode===u?Fm.bind(null,r):null}function Cd(r,s){var u=bs;return r.current.memoizedState.isDehydrated&&(br(r,s).flags|=256),r=dl(r,s),r!==2&&(s=oi,oi=u,s!==null&&Ed(s)),r}function Ed(r){oi===null?oi=r:oi.push.apply(oi,r)}function zw(r){for(var s=r;;){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 h=u[d],g=h.getSnapshot;h=h.value;try{if(!Wi(g(),h))return!1}catch{return!1}}}if(u=s.child,s.subtreeFlags&16384&&u!==null)u.return=s,s=u;else{if(s===r)break;for(;s.sibling===null;){if(s.return===null||s.return===r)return!0;s=s.return}s.sibling.return=s.return,s=s.sibling}}return!0}function Qn(r,s){for(s&=~xd,s&=~ol,r.suspendedLanes|=s,r.pingedLanes&=~s,r=r.expirationTimes;0<s;){var u=31-Hi(s),d=1<<u;r[u]=-1,s&=~d}}function Bm(r){if(_e&6)throw Error(l(327));Cr();var s=Ra(r,0);if(!(s&1))return si(r,It()),null;var u=dl(r,s);if(r.tag!==0&&u===2){var d=Pc(r);d!==0&&(s=d,u=Cd(r,d))}if(u===1)throw u=ws,br(r,0),Qn(r,s),si(r,It()),u;if(u===6)throw Error(l(345));return r.finishedWork=r.current.alternate,r.finishedLanes=s,Pr(r,oi,Tn),si(r,It()),null}function Dm(r){Wn!==null&&Wn.tag===0&&!(_e&6)&&Cr();var s=_e;_e|=1;var u=mt.transition,d=Oe;try{if(mt.transition=null,Oe=1,r)return r()}finally{Oe=d,mt.transition=u,_e=s,!(_e&6)&&sn()}}function Ad(){gi=yo.current,Je(yo)}function br(r,s){r.finishedWork=null,r.finishedLanes=0;var u=r.timeoutHandle;if(u!==Ue&&(r.timeoutHandle=Ue,fe(u)),vt!==null)for(u=vt.return;u!==null;){var d=u;switch(Mc(d),d.tag){case 1:d=d.type.childContextTypes,d!=null&&Ca();break;case 3:fo(),Je(ii),Je(Dt),Qc();break;case 5:Wc(d);break;case 4:fo();break;case 13:Je(at);break;case 19:Je(at);break;case 10:Fc(d.type._context);break;case 22:case 23:Ad()}u=u.return}if(Mt=r,vt=r=$n(r.current,null),Ft=gi=s,Tt=0,ws=null,xd=ol=wr=0,oi=bs=null,xr!==null){for(s=0;s<xr.length;s++)if(u=xr[s],d=u.interleaved,d!==null){u.interleaved=null;var h=d.next,g=u.pending;if(g!==null){var w=g.next;g.next=h,d.next=w}u.pending=d}xr=null}return r}function jm(r,s){do{var u=vt;try{if(Nc(),Ua.current=Qa,Ha){for(var d=lt.memoizedState;d!==null;){var h=d.queue;h!==null&&(h.pending=null),d=d.next}Ha=!1}if(Sr=0,_t=At=lt=null,hs=!1,ps=0,vd.current=null,u===null||u.return===null){Tt=1,ws=s,vt=null;break}e:{var g=r,w=u.return,I=u,F=s;if(s=Ft,I.flags|=32768,F!==null&&typeof F=="object"&&typeof F.then=="function"){var J=F,le=I,we=le.tag;if(!(le.mode&1)&&(we===0||we===11||we===15)){var ie=le.alternate;ie?(le.updateQueue=ie.updateQueue,le.memoizedState=ie.memoizedState,le.lanes=ie.lanes):(le.updateQueue=null,le.memoizedState=null)}var et=dm(w);if(et!==null){et.flags&=-257,hm(et,w,I,g,s),et.mode&1&&cm(g,J,s),s=et,F=J;var $e=s.updateQueue;if($e===null){var ai=new Set;ai.add(F),s.updateQueue=ai}else $e.add(F);break e}else{if(!(s&1)){cm(g,J,s),Td();break e}F=Error(l(426))}}else if(it&&I.mode&1){var Rn=dm(w);if(Rn!==null){!(Rn.flags&65536)&&(Rn.flags|=256),hm(Rn,w,I,g,s),Lc(mo(F,I));break e}}g=F=mo(F,I),Tt!==4&&(Tt=2),bs===null?bs=[g]:bs.push(g),g=w;do{switch(g.tag){case 3:g.flags|=65536,s&=-s,g.lanes|=s;var z=lm(g,F,s);Mf(g,z);break e;case 1:I=F;var _=g.type,j=g.stateNode;if(!(g.flags&128)&&(typeof _.getDerivedStateFromError=="function"||j!==null&&typeof j.componentDidCatch=="function"&&(Hn===null||!Hn.has(j)))){g.flags|=65536,s&=-s,g.lanes|=s;var ne=um(g,I,s);Mf(g,ne);break e}}g=g.return}while(g!==null)}Hm(u)}catch(me){s=me,vt===u&&u!==null&&(vt=u=u.return);continue}break}while(!0)}function Vm(){var r=rl.current;return rl.current=Qa,r===null?Qa:r}function Td(){(Tt===0||Tt===3||Tt===2)&&(Tt=4),Mt===null||!(wr&268435455)&&!(ol&268435455)||Qn(Mt,Ft)}function dl(r,s){var u=_e;_e|=2;var d=Vm();(Mt!==r||Ft!==s)&&(Tn=null,br(r,s));do try{Nw();break}catch(h){jm(r,h)}while(!0);if(Nc(),_e=u,rl.current=d,vt!==null)throw Error(l(261));return Mt=null,Ft=0,Tt}function Nw(){for(;vt!==null;)Um(vt)}function Fw(){for(;vt!==null&&!uw();)Um(vt)}function Um(r){var s=Qm(r.alternate,r,gi);r.memoizedProps=r.pendingProps,s===null?Hm(r):vt=s,vd.current=null}function Hm(r){var s=r;do{var u=s.alternate;if(r=s.return,s.flags&32768){if(u=_w(u,s),u!==null){u.flags&=32767,vt=u;return}if(r!==null)r.flags|=32768,r.subtreeFlags=0,r.deletions=null;else{Tt=6,vt=null;return}}else if(u=Iw(u,s,gi),u!==null){vt=u;return}if(s=s.sibling,s!==null){vt=s;return}vt=s=r}while(s!==null);Tt===0&&(Tt=5)}function Pr(r,s,u){var d=Oe,h=mt.transition;try{mt.transition=null,Oe=1,Bw(r,s,u,d)}finally{mt.transition=h,Oe=d}return null}function Bw(r,s,u,d){do Cr();while(Wn!==null);if(_e&6)throw Error(l(327));u=r.finishedWork;var h=r.finishedLanes;if(u===null)return null;if(r.finishedWork=null,r.finishedLanes=0,u===r.current)throw Error(l(177));r.callbackNode=null,r.callbackPriority=0;var g=u.lanes|u.childLanes;if(lw(r,g),r===Mt&&(vt=Mt=null,Ft=0),!(u.subtreeFlags&2064)&&!(u.flags&2064)||al||(al=!0,$m(Rc,function(){return Cr(),null})),g=(u.flags&15990)!==0,u.subtreeFlags&15990||g){g=mt.transition,mt.transition=null;var w=Oe;Oe=1;var I=_e;_e|=4,vd.current=null,kw(r,u),Mm(u,r),je(r.containerInfo),r.current=u,Ow(u,r,h),cw(),_e=I,Oe=w,mt.transition=g}else r.current=u;if(al&&(al=!1,Wn=r,ll=h),g=r.pendingLanes,g===0&&(Hn=null),pw(u.stateNode,d),si(r,It()),s!==null)for(d=r.onRecoverableError,u=0;u<s.length;u++)h=s[u],d(h.value,{componentStack:h.stack,digest:h.digest});if(sl)throw sl=!1,r=bd,bd=null,r;return ll&1&&r.tag!==0&&Cr(),g=r.pendingLanes,g&1?r===Pd?Ps++:(Ps=0,Pd=r):Ps=0,sn(),null}function Cr(){if(Wn!==null){var r=Sf(ll),s=mt.transition,u=Oe;try{if(mt.transition=null,Oe=16>r?16:r,Wn===null)var d=!1;else{if(r=Wn,Wn=null,ll=0,_e&6)throw Error(l(331));var h=_e;for(_e|=4,ae=r.current;ae!==null;){var g=ae,w=g.child;if(ae.flags&16){var I=g.deletions;if(I!==null){for(var F=0;F<I.length;F++){var J=I[F];for(ae=J;ae!==null;){var le=ae;switch(le.tag){case 0:case 11:case 15:xs(8,le,g)}var we=le.child;if(we!==null)we.return=le,ae=we;else for(;ae!==null;){le=ae;var ie=le.sibling,et=le.return;if(Tm(le),le===J){ae=null;break}if(ie!==null){ie.return=et,ae=ie;break}ae=et}}}var $e=g.alternate;if($e!==null){var ai=$e.child;if(ai!==null){$e.child=null;do{var Rn=ai.sibling;ai.sibling=null,ai=Rn}while(ai!==null)}}ae=g}}if(g.subtreeFlags&2064&&w!==null)w.return=g,ae=w;else e:for(;ae!==null;){if(g=ae,g.flags&2048)switch(g.tag){case 0:case 11:case 15:xs(9,g,g.return)}var z=g.sibling;if(z!==null){z.return=g.return,ae=z;break e}ae=g.return}}var _=r.current;for(ae=_;ae!==null;){w=ae;var j=w.child;if(w.subtreeFlags&2064&&j!==null)j.return=w,ae=j;else e:for(w=_;ae!==null;){if(I=ae,I.flags&2048)try{switch(I.tag){case 0:case 11:case 15:Za(9,I)}}catch(me){nt(I,I.return,me)}if(I===w){ae=null;break e}var ne=I.sibling;if(ne!==null){ne.return=I.return,ae=ne;break e}ae=I.return}}if(_e=h,sn(),on&&typeof on.onPostCommitFiberRoot=="function")try{on.onPostCommitFiberRoot(Ia,r)}catch{}d=!0}return d}finally{Oe=u,mt.transition=s}}return!1}function Wm(r,s,u){s=mo(u,s),s=lm(r,s,1),r=Un(r,s,1),s=Ht(),r!==null&&(as(r,1,s),si(r,s))}function nt(r,s,u){if(r.tag===3)Wm(r,r,u);else for(;s!==null;){if(s.tag===3){Wm(s,r,u);break}else if(s.tag===1){var d=s.stateNode;if(typeof s.type.getDerivedStateFromError=="function"||typeof d.componentDidCatch=="function"&&(Hn===null||!Hn.has(d))){r=mo(u,r),r=um(s,r,1),s=Un(s,r,1),r=Ht(),s!==null&&(as(s,1,r),si(s,r));break}}s=s.return}}function Dw(r,s,u){var d=r.pingCache;d!==null&&d.delete(s),s=Ht(),r.pingedLanes|=r.suspendedLanes&u,Mt===r&&(Ft&u)===u&&(Tt===4||Tt===3&&(Ft&130023424)===Ft&&500>It()-Sd?br(r,0):xd|=u),si(r,s)}function qm(r,s){s===0&&(r.mode&1?(s=Ta,Ta<<=1,!(Ta&130023424)&&(Ta=4194304)):s=1);var u=Ht();r=an(r,s),r!==null&&(as(r,s,u),si(r,u))}function jw(r){var s=r.memoizedState,u=0;s!==null&&(u=s.retryLane),qm(r,u)}function Vw(r,s){var u=0;switch(r.tag){case 13:var d=r.stateNode,h=r.memoizedState;h!==null&&(u=h.retryLane);break;case 19:d=r.stateNode;break;default:throw Error(l(314))}d!==null&&d.delete(s),qm(r,u)}var Qm;Qm=function(r,s,u){if(r!==null)if(r.memoizedProps!==s.pendingProps||ii.current)ri=!0;else{if(!(r.lanes&u)&&!(s.flags&128))return ri=!1,Rw(r,s,u);ri=!!(r.flags&131072)}else ri=!1,it&&s.flags&1048576&&Pf(s,ka,s.index);switch(s.lanes=0,s.tag){case 2:var d=s.type;Ya(r,s),r=s.pendingProps;var h=oo(s,Dt.current);co(s,u),h=Gc(null,s,d,r,h,u);var g=Xc();return s.flags|=1,typeof h=="object"&&h!==null&&typeof h.render=="function"&&h.$$typeof===void 0?(s.tag=1,s.memoizedState=null,s.updateQueue=null,ni(d)?(g=!0,Ea(s)):g=!1,s.memoizedState=h.state!==null&&h.state!==void 0?h.state:null,jc(s),h.updater=Da,s.stateNode=h,h._reactInternals=s,Uc(s,d,r,u),s=rd(null,s,d,!0,g,u)):(s.tag=0,it&&g&&_c(s),Qt(null,s,h,u),s=s.child),s;case 16:d=s.elementType;e:{switch(Ya(r,s),r=s.pendingProps,h=d._init,d=h(d._payload),s.type=d,h=s.tag=Hw(d),r=Qi(d,r),h){case 0:s=nd(null,s,d,r,u);break e;case 1:s=vm(null,s,d,r,u);break e;case 11:s=pm(null,s,d,r,u);break e;case 14:s=fm(null,s,d,Qi(d.type,r),u);break e}throw Error(l(306,d,""))}return s;case 0:return d=s.type,h=s.pendingProps,h=s.elementType===d?h:Qi(d,h),nd(r,s,d,h,u);case 1:return d=s.type,h=s.pendingProps,h=s.elementType===d?h:Qi(d,h),vm(r,s,d,h,u);case 3:e:{if(xm(s),r===null)throw Error(l(387));d=s.pendingProps,g=s.memoizedState,h=g.element,_f(r,s),Ba(s,d,null,u);var w=s.memoizedState;if(d=w.element,ee&&g.isDehydrated)if(g={element:d,isDehydrated:!1,cache:w.cache,pendingSuspenseBoundaries:w.pendingSuspenseBoundaries,transitions:w.transitions},s.updateQueue.baseState=g,s.memoizedState=g,s.flags&256){h=mo(Error(l(423)),s),s=Sm(r,s,d,u,h);break e}else if(d!==h){h=mo(Error(l(424)),s),s=Sm(r,s,d,u,h);break e}else for(ee&&(Ii=HS(s.stateNode.containerInfo),mi=s,it=!0,qi=null,ls=!1),u=Df(s,null,d,u),s.child=u;u;)u.flags=u.flags&-3|4096,u=u.sibling;else{if(lo(),d===h){s=An(r,s,u);break e}Qt(r,s,d,u)}s=s.child}return s;case 5:return jf(s),r===null&&Oc(s),d=s.type,h=s.pendingProps,g=r!==null?r.memoizedProps:null,w=h.children,Q(d,h)?w=null:g!==null&&Q(d,g)&&(s.flags|=32),ym(r,s),Qt(r,s,w,u),s.child;case 6:return r===null&&Oc(s),null;case 13:return wm(r,s,u);case 4:return Hc(s,s.stateNode.containerInfo),d=s.pendingProps,r===null?s.child=ho(s,null,d,u):Qt(r,s,d,u),s.child;case 11:return d=s.type,h=s.pendingProps,h=s.elementType===d?h:Qi(d,h),pm(r,s,d,h,u);case 7:return Qt(r,s,s.pendingProps,u),s.child;case 8:return Qt(r,s,s.pendingProps.children,u),s.child;case 12:return Qt(r,s,s.pendingProps.children,u),s.child;case 10:e:{if(d=s.type._context,h=s.pendingProps,g=s.memoizedProps,w=h.value,Rf(s,d,w),g!==null)if(Wi(g.value,w)){if(g.children===h.children&&!ii.current){s=An(r,s,u);break e}}else for(g=s.child,g!==null&&(g.return=s);g!==null;){var I=g.dependencies;if(I!==null){w=g.child;for(var F=I.firstContext;F!==null;){if(F.context===d){if(g.tag===1){F=En(-1,u&-u),F.tag=2;var J=g.updateQueue;if(J!==null){J=J.shared;var le=J.pending;le===null?F.next=F:(F.next=le.next,le.next=F),J.pending=F}}g.lanes|=u,F=g.alternate,F!==null&&(F.lanes|=u),Bc(g.return,u,s),I.lanes|=u;break}F=F.next}}else if(g.tag===10)w=g.type===s.type?null:g.child;else if(g.tag===18){if(w=g.return,w===null)throw Error(l(341));w.lanes|=u,I=w.alternate,I!==null&&(I.lanes|=u),Bc(w,u,s),w=g.sibling}else w=g.child;if(w!==null)w.return=g;else for(w=g;w!==null;){if(w===s){w=null;break}if(g=w.sibling,g!==null){g.return=w.return,w=g;break}w=w.return}g=w}Qt(r,s,h.children,u),s=s.child}return s;case 9:return h=s.type,d=s.pendingProps.children,co(s,u),h=_i(h),d=d(h),s.flags|=1,Qt(r,s,d,u),s.child;case 14:return d=s.type,h=Qi(d,s.pendingProps),h=Qi(d.type,h),fm(r,s,d,h,u);case 15:return mm(r,s,s.type,s.pendingProps,u);case 17:return d=s.type,h=s.pendingProps,h=s.elementType===d?h:Qi(d,h),Ya(r,s),s.tag=1,ni(d)?(r=!0,Ea(s)):r=!1,co(s,u),zf(s,d,h),Uc(s,d,h,u),rd(null,s,d,!0,r,u);case 19:return Pm(r,s,u);case 22:return gm(r,s,u)}throw Error(l(156,s.tag))};function $m(r,s){return Ac(r,s)}function Uw(r,s,u,d){this.tag=r,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 Li(r,s,u,d){return new Uw(r,s,u,d)}function Rd(r){return r=r.prototype,!(!r||!r.isReactComponent)}function Hw(r){if(typeof r=="function")return Rd(r)?1:0;if(r!=null){if(r=r.$$typeof,r===x)return 11;if(r===T)return 14}return 2}function $n(r,s){var u=r.alternate;return u===null?(u=Li(r.tag,s,r.key,r.mode),u.elementType=r.elementType,u.type=r.type,u.stateNode=r.stateNode,u.alternate=r,r.alternate=u):(u.pendingProps=s,u.type=r.type,u.flags=0,u.subtreeFlags=0,u.deletions=null),u.flags=r.flags&14680064,u.childLanes=r.childLanes,u.lanes=r.lanes,u.child=r.child,u.memoizedProps=r.memoizedProps,u.memoizedState=r.memoizedState,u.updateQueue=r.updateQueue,s=r.dependencies,u.dependencies=s===null?null:{lanes:s.lanes,firstContext:s.firstContext},u.sibling=r.sibling,u.index=r.index,u.ref=r.ref,u}function hl(r,s,u,d,h,g){var w=2;if(d=r,typeof r=="function")Rd(r)&&(w=1);else if(typeof r=="string")w=5;else e:switch(r){case f:return Er(u.children,h,g,s);case y:w=8,h|=8;break;case S:return r=Li(12,u,s,h|2),r.elementType=S,r.lanes=g,r;case E:return r=Li(13,u,s,h),r.elementType=E,r.lanes=g,r;case C:return r=Li(19,u,s,h),r.elementType=C,r.lanes=g,r;case N:return pl(u,h,g,s);default:if(typeof r=="object"&&r!==null)switch(r.$$typeof){case P:w=10;break e;case v:w=9;break e;case x:w=11;break e;case T:w=14;break e;case A:w=16,d=null;break e}throw Error(l(130,r==null?r:typeof r,""))}return s=Li(w,u,s,h),s.elementType=r,s.type=d,s.lanes=g,s}function Er(r,s,u,d){return r=Li(7,r,d,s),r.lanes=u,r}function pl(r,s,u,d){return r=Li(22,r,d,s),r.elementType=N,r.lanes=u,r.stateNode={isHidden:!1},r}function Id(r,s,u){return r=Li(6,r,null,s),r.lanes=u,r}function _d(r,s,u){return s=Li(4,r.children!==null?r.children:[],r.key,s),s.lanes=u,s.stateNode={containerInfo:r.containerInfo,pendingChildren:null,implementation:r.implementation},s}function Ww(r,s,u,d,h){this.tag=s,this.containerInfo=r,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=Ue,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Cc(0),this.expirationTimes=Cc(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Cc(0),this.identifierPrefix=d,this.onRecoverableError=h,ee&&(this.mutableSourceEagerHydrationData=null)}function Ym(r,s,u,d,h,g,w,I,F){return r=new Ww(r,s,u,I,F),s===1?(s=1,g===!0&&(s|=8)):s=0,g=Li(3,null,null,s),r.current=g,g.stateNode=r,g.memoizedState={element:d,isDehydrated:u,cache:null,transitions:null,pendingSuspenseBoundaries:null},jc(g),r}function Gm(r){if(!r)return jn;r=r._reactInternals;e:{if(K(r)!==r||r.tag!==1)throw Error(l(170));var s=r;do{switch(s.tag){case 3:s=s.stateNode.context;break e;case 1:if(ni(s.type)){s=s.stateNode.__reactInternalMemoizedMergedChildContext;break e}}s=s.return}while(s!==null);throw Error(l(171))}if(r.tag===1){var u=r.type;if(ni(u))return yf(r,u,s)}return s}function Xm(r){var s=r._reactInternals;if(s===void 0)throw typeof r.render=="function"?Error(l(188)):(r=Object.keys(r).join(","),Error(l(268,r)));return r=te(s),r===null?null:r.stateNode}function Km(r,s){if(r=r.memoizedState,r!==null&&r.dehydrated!==null){var u=r.retryLane;r.retryLane=u!==0&&u<s?u:s}}function fl(r,s){Km(r,s),(r=r.alternate)&&Km(r,s)}function qw(r){return r=te(r),r===null?null:r.stateNode}function Qw(){return null}return i.attemptContinuousHydration=function(r){if(r.tag===13){var s=an(r,134217728);if(s!==null){var u=Ht();Oi(s,r,134217728,u)}fl(r,134217728)}},i.attemptDiscreteHydration=function(r){if(r.tag===13){var s=an(r,1);if(s!==null){var u=Ht();Oi(s,r,1,u)}fl(r,1)}},i.attemptHydrationAtCurrentPriority=function(r){if(r.tag===13){var s=qn(r),u=an(r,s);if(u!==null){var d=Ht();Oi(u,r,s,d)}fl(r,s)}},i.attemptSynchronousHydration=function(r){switch(r.tag){case 3:var s=r.stateNode;if(s.current.memoizedState.isDehydrated){var u=ss(s.pendingLanes);u!==0&&(Ec(s,u|1),si(s,It()),!(_e&6)&&(vo(),sn()))}break;case 13:Dm(function(){var d=an(r,1);if(d!==null){var h=Ht();Oi(d,r,1,h)}}),fl(r,1)}},i.batchedUpdates=function(r,s){var u=_e;_e|=1;try{return r(s)}finally{_e=u,_e===0&&(vo(),_a&&sn())}},i.createComponentSelector=function(r){return{$$typeof:Ja,value:r}},i.createContainer=function(r,s,u,d,h,g,w){return Ym(r,s,!1,null,u,d,h,g,w)},i.createHasPseudoClassSelector=function(r){return{$$typeof:el,value:r}},i.createHydrationContainer=function(r,s,u,d,h,g,w,I,F){return r=Ym(u,d,!0,r,h,g,w,I,F),r.context=Gm(null),u=r.current,d=Ht(),h=qn(u),g=En(d,h),g.callback=s??null,Un(u,g,h),r.current.lanes=h,as(r,h,d),si(r,d),r},i.createPortal=function(r,s,u){var d=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:m,key:d==null?null:""+d,children:r,containerInfo:s,implementation:u}},i.createRoleSelector=function(r){return{$$typeof:tl,value:r}},i.createTestNameSelector=function(r){return{$$typeof:il,value:r}},i.createTextSelector=function(r){return{$$typeof:nl,value:r}},i.deferredUpdates=function(r){var s=Oe,u=mt.transition;try{return mt.transition=null,Oe=16,r()}finally{Oe=s,mt.transition=u}},i.discreteUpdates=function(r,s,u,d,h){var g=Oe,w=mt.transition;try{return mt.transition=null,Oe=1,r(s,u,d,h)}finally{Oe=g,mt.transition=w,_e===0&&vo()}},i.findAllNodes=yd,i.findBoundingRects=function(r,s){if(!Ai)throw Error(l(363));s=yd(r,s),r=[];for(var u=0;u<s.length;u++)r.push(wa(s[u]));for(s=r.length-1;0<s;s--){u=r[s];for(var d=u.x,h=d+u.width,g=u.y,w=g+u.height,I=s-1;0<=I;I--)if(s!==I){var F=r[I],J=F.x,le=J+F.width,we=F.y,ie=we+F.height;if(d>=J&&g>=we&&h<=le&&w<=ie){r.splice(s,1);break}else if(d!==J||u.width!==F.width||ie<g||we>w){if(!(g!==we||u.height!==F.height||le<d||J>h)){J>d&&(F.width+=J-d,F.x=d),le<h&&(F.width=h-J),r.splice(s,1);break}}else{we>g&&(F.height+=we-g,F.y=g),ie<w&&(F.height=w-we),r.splice(s,1);break}}}return r},i.findHostInstance=Xm,i.findHostInstanceWithNoPortals=function(r){return r=G(r),r=r!==null?ye(r):null,r===null?null:r.stateNode},i.findHostInstanceWithWarning=function(r){return Xm(r)},i.flushControlled=function(r){var s=_e;_e|=1;var u=mt.transition,d=Oe;try{mt.transition=null,Oe=1,r()}finally{Oe=d,mt.transition=u,_e=s,_e===0&&(vo(),sn())}},i.flushPassiveEffects=Cr,i.flushSync=Dm,i.focusWithin=function(r,s){if(!Ai)throw Error(l(363));for(r=fd(r),s=Nm(r,s),s=Array.from(s),r=0;r<s.length;){var u=s[r++];if(!rn(u)){if(u.tag===5&&yc(u.stateNode))return!0;for(u=u.child;u!==null;)s.push(u),u=u.sibling}}return!1},i.getCurrentUpdatePriority=function(){return Oe},i.getFindAllNodesFailureDescription=function(r,s){if(!Ai)throw Error(l(363));var u=0,d=[];r=[fd(r),0];for(var h=0;h<r.length;){var g=r[h++],w=r[h++],I=s[w];if((g.tag!==5||!rn(g))&&(md(g,I)&&(d.push(gd(I)),w++,w>u&&(u=w)),w<s.length))for(g=g.child;g!==null;)r.push(g,w),g=g.sibling}if(u<s.length){for(r=[];u<s.length;u++)r.push(gd(s[u]));return`findAllNodes was able to match part of the selector:
8
+ `+(d.join(" > ")+`
9
9
 
10
10
  No matching component was found for:
11
- `)+r.join(" > ")}return null},i.getPublicRootInstance=function(r){if(r=r.current,!r.child)return null;switch(r.child.tag){case 5:return ve(r.child.stateNode);default:return r.child.stateNode}},i.injectIntoDevTools=function(r){if(r={bundleType:r.bundleType,version:r.version,rendererPackageName:r.rendererPackageName,rendererConfig:r.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:c.ReactCurrentDispatcher,findHostInstanceByFiber:Ow,findFiberByHostInstance:r.findFiberByHostInstance||kw,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.2.0"},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")r=!1;else{var s=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(s.isDisabled||!s.supportsFiber)r=!0;else{try{Pa=s.inject(r),rn=s}catch{}r=!!s.checkDCE}}return r},i.isAlreadyRendering=function(){return!1},i.observeVisibleRects=function(r,s,u,h){if(!Ci)throw Error(l(363));r=lh(r,s);var d=Q(r,u,h).disconnect;return{disconnect:function(){d()}}},i.registerMutableSourceForHydration=function(r,s){var u=s._getVersion;u=u(s._source),r.mutableSourceEagerHydrationData==null?r.mutableSourceEagerHydrationData=[s,u]:r.mutableSourceEagerHydrationData.push(s,u)},i.runWithPriority=function(r,s){var u=Le;try{return Le=r,s()}finally{Le=u}},i.shouldError=function(){return null},i.shouldSuspend=function(){return!1},i.updateContainer=function(r,s,u,h){var d=s.current,g=Ut(),S=jn(d);return u=jm(u),s.context===null?s.context=u:s.pendingContext=u,s=Pn(g,S),s.payload={element:r},h=h===void 0?null:h,h!==null&&(s.callback=h),r=Fn(d,s,S),r!==null&&(Mi(r,d,S,g),Ma(r,d,S)),S},i}});var Dg=xt((pR,Bg)=>{"use strict";Bg.exports=Fg()});var Ps=xt((ER,fy)=>{"use strict";fy.exports=ReactDOM});var gy=xt(ed=>{"use strict";var my=Ps();ed.createRoot=my.createRoot,ed.hydrateRoot=my.hydrateRoot;var AR});var F0=xt(N0=>{"use strict";var No=q();function BC(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var DC=typeof Object.is=="function"?Object.is:BC,jC=No.useState,VC=No.useEffect,UC=No.useLayoutEffect,HC=No.useDebugValue;function WC(e,t){var i=t(),n=jC({inst:{value:i,getSnapshot:t}}),o=n[0].inst,a=n[1];return UC(function(){o.value=i,o.getSnapshot=t,Xd(o)&&a({inst:o})},[e,i,t]),VC(function(){return Xd(o)&&a({inst:o}),e(function(){Xd(o)&&a({inst:o})})},[e]),HC(i),i}function Xd(e){var t=e.getSnapshot;e=e.value;try{var i=t();return!DC(e,i)}catch{return!0}}function qC(e,t){return t()}var QC=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?qC:WC;N0.useSyncExternalStore=No.useSyncExternalStore!==void 0?No.useSyncExternalStore:QC});var D0=xt((ZI,B0)=>{"use strict";B0.exports=F0()});var V0=xt(j0=>{"use strict";var _u=q(),YC=D0();function GC(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var $C=typeof Object.is=="function"?Object.is:GC,XC=YC.useSyncExternalStore,KC=_u.useRef,ZC=_u.useEffect,JC=_u.useMemo,eE=_u.useDebugValue;j0.useSyncExternalStoreWithSelector=function(e,t,i,n,o){var a=KC(null);if(a.current===null){var l={hasValue:!1,value:null};a.current=l}else l=a.current;a=JC(function(){function p(P){if(!m){if(m=!0,f=P,P=n(P),o!==void 0&&l.hasValue){var v=l.value;if(o(v,P))return y=v}return y=P}if(v=y,$C(f,P))return v;var x=n(P);return o!==void 0&&o(v,x)?v:(f=P,y=x)}var m=!1,f,y,w=i===void 0?null:i;return[function(){return p(t())},w===null?void 0:function(){return p(w())}]},[t,i,n,o]);var c=XC(e,a[0],a[1]);return ZC(function(){l.hasValue=!0,l.value=c},[c]),eE(c),c}});var H0=xt((e_,U0)=>{"use strict";U0.exports=V0()});var nS=xt((dz,iS)=>{"use strict";(()=>{var e={296:(o,a,l)=>{var c=/^\s+|\s+$/g,p=/^[-+]0x[0-9a-f]+$/i,m=/^0b[01]+$/i,f=/^0o[0-7]+$/i,y=parseInt,w=typeof l.g=="object"&&l.g&&l.g.Object===Object&&l.g,P=typeof self=="object"&&self&&self.Object===Object&&self,v=w||P||Function("return this")(),x=Object.prototype.toString,C=Math.max,E=Math.min,T=function(){return v.Date.now()};function R(V){var O=typeof V;return!!V&&(O=="object"||O=="function")}function G(V){if(typeof V=="number")return V;if(function(F){return typeof F=="symbol"||function(j){return!!j&&typeof j=="object"}(F)&&x.call(F)=="[object Symbol]"}(V))return NaN;if(R(V)){var O=typeof V.valueOf=="function"?V.valueOf():V;V=R(O)?O+"":O}if(typeof V!="string")return V===0?V:+V;V=V.replace(c,"");var L=m.test(V);return L||f.test(V)?y(V.slice(2),L?2:8):p.test(V)?NaN:+V}o.exports=function(V,O,L){var F,j,J,$,ne,Ce,Me=0,ke=!1,ve=!1,it=!0;if(typeof V!="function")throw new TypeError("Expected a function");function $e(He){var N=F,W=j;return F=j=void 0,Me=He,$=V.apply(W,N)}function yt(He){var N=He-Ce;return Ce===void 0||N>=O||N<0||ve&&He-Me>=J}function de(){var He=T();if(yt(He))return H(He);ne=setTimeout(de,function(N){var W=O-(N-Ce);return ve?E(W,J-(N-Me)):W}(He))}function H(He){return ne=void 0,it&&F?$e(He):(F=j=void 0,$)}function ye(){var He=T(),N=yt(He);if(F=arguments,j=this,Ce=He,N){if(ne===void 0)return function(W){return Me=W,ne=setTimeout(de,O),ke?$e(W):$}(Ce);if(ve)return ne=setTimeout(de,O),$e(Ce)}return ne===void 0&&(ne=setTimeout(de,O)),$}return O=G(O)||0,R(L)&&(ke=!!L.leading,J=(ve="maxWait"in L)?C(G(L.maxWait)||0,O):J,it="trailing"in L?!!L.trailing:it),ye.cancel=function(){ne!==void 0&&clearTimeout(ne),Me=0,F=Ce=j=ne=void 0},ye.flush=function(){return ne===void 0?$:H(T())},ye}},96:(o,a,l)=>{var c="Expected a function",p=NaN,m="[object Symbol]",f=/^\s+|\s+$/g,y=/^[-+]0x[0-9a-f]+$/i,w=/^0b[01]+$/i,P=/^0o[0-7]+$/i,v=parseInt,x=typeof l.g=="object"&&l.g&&l.g.Object===Object&&l.g,C=typeof self=="object"&&self&&self.Object===Object&&self,E=x||C||Function("return this")(),T=Object.prototype.toString,R=Math.max,G=Math.min,V=function(){return E.Date.now()};function O(F){var j=typeof F;return!!F&&(j=="object"||j=="function")}function L(F){if(typeof F=="number")return F;if(function($){return typeof $=="symbol"||function(ne){return!!ne&&typeof ne=="object"}($)&&T.call($)==m}(F))return p;if(O(F)){var j=typeof F.valueOf=="function"?F.valueOf():F;F=O(j)?j+"":j}if(typeof F!="string")return F===0?F:+F;F=F.replace(f,"");var J=w.test(F);return J||P.test(F)?v(F.slice(2),J?2:8):y.test(F)?p:+F}o.exports=function(F,j,J){var $=!0,ne=!0;if(typeof F!="function")throw new TypeError(c);return O(J)&&($="leading"in J?!!J.leading:$,ne="trailing"in J?!!J.trailing:ne),function(Ce,Me,ke){var ve,it,$e,yt,de,H,ye=0,He=!1,N=!1,W=!0;if(typeof Ce!="function")throw new TypeError(c);function he(Ae){var We=ve,ee=it;return ve=it=void 0,ye=Ae,yt=Ce.apply(ee,We)}function fe(Ae){var We=Ae-H;return H===void 0||We>=Me||We<0||N&&Ae-ye>=$e}function me(){var Ae=V();if(fe(Ae))return Ve(Ae);de=setTimeout(me,function(We){var ee=Me-(We-H);return N?G(ee,$e-(We-ye)):ee}(Ae))}function Ve(Ae){return de=void 0,W&&ve?he(Ae):(ve=it=void 0,yt)}function Ue(){var Ae=V(),We=fe(Ae);if(ve=arguments,it=this,H=Ae,We){if(de===void 0)return function(ee){return ye=ee,de=setTimeout(me,Me),He?he(ee):yt}(H);if(N)return de=setTimeout(me,Me),he(H)}return de===void 0&&(de=setTimeout(me,Me)),yt}return Me=L(Me)||0,O(ke)&&(He=!!ke.leading,$e=(N="maxWait"in ke)?R(L(ke.maxWait)||0,Me):$e,W="trailing"in ke?!!ke.trailing:W),Ue.cancel=function(){de!==void 0&&clearTimeout(de),ye=0,ve=H=it=de=void 0},Ue.flush=function(){return de===void 0?yt:Ve(V())},Ue}(F,j,{leading:$,maxWait:j,trailing:ne})}},703:(o,a,l)=>{"use strict";var c=l(414);function p(){}function m(){}m.resetWarningCache=p,o.exports=function(){function f(P,v,x,C,E,T){if(T!==c){var R=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 R.name="Invariant Violation",R}}function y(){return f}f.isRequired=f;var w={array:f,bigint:f,bool:f,func:f,number:f,object:f,string:f,symbol:f,any:f,arrayOf:y,element:f,elementType:f,instanceOf:y,node:f,objectOf:y,oneOf:y,oneOfType:y,shape:y,exact:y,checkPropTypes:m,resetWarningCache:p};return w.PropTypes=w,w}},697:(o,a,l)=>{o.exports=l(703)()},414:o=>{"use strict";o.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"}},t={};function i(o){var a=t[o];if(a!==void 0)return a.exports;var l=t[o]={exports:{}};return e[o](l,l.exports,i),l.exports}i.n=o=>{var a=o&&o.__esModule?()=>o.default:()=>o;return i.d(a,{a}),a},i.d=(o,a)=>{for(var l in a)i.o(a,l)&&!i.o(o,l)&&Object.defineProperty(o,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=(o,a)=>Object.prototype.hasOwnProperty.call(o,a),i.r=o=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(o,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(o,"__esModule",{value:!0})};var n={};(()=>{"use strict";i.r(n),i.d(n,{LazyLoadComponent:()=>Re,LazyLoadImage:()=>lc,trackWindowScroll:()=>H});let o=q();var a=i.n(o),l=i(697);let c=Ps();var p=i.n(c);function m(){return typeof window<"u"&&"IntersectionObserver"in window&&"isIntersecting"in window.IntersectionObserverEntry.prototype}function f(Q){return f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(M){return typeof M}:function(M){return M&&typeof Symbol=="function"&&M.constructor===Symbol&&M!==Symbol.prototype?"symbol":typeof M},f(Q)}function y(Q,M){var X=Object.keys(Q);if(Object.getOwnPropertySymbols){var K=Object.getOwnPropertySymbols(Q);M&&(K=K.filter(function(Pe){return Object.getOwnPropertyDescriptor(Q,Pe).enumerable})),X.push.apply(X,K)}return X}function w(Q,M,X){return(M=v(M))in Q?Object.defineProperty(Q,M,{value:X,enumerable:!0,configurable:!0,writable:!0}):Q[M]=X,Q}function P(Q,M){for(var X=0;X<M.length;X++){var K=M[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Q,v(K.key),K)}}function v(Q){var M=function(X,K){if(f(X)!=="object"||X===null)return X;var Pe=X[Symbol.toPrimitive];if(Pe!==void 0){var Te=Pe.call(X,"string");if(f(Te)!=="object")return Te;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(X)}(Q);return f(M)==="symbol"?M:String(M)}function x(Q,M){return x=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},x(Q,M)}function C(Q){return C=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(M){return M.__proto__||Object.getPrototypeOf(M)},C(Q)}var E=function(Q){Q.forEach(function(M){M.isIntersecting&&M.target.onVisible()})},T={},R=function(Q){(function(D,U){if(typeof U!="function"&&U!==null)throw new TypeError("Super expression must either be null or a function");D.prototype=Object.create(U&&U.prototype,{constructor:{value:D,writable:!0,configurable:!0}}),Object.defineProperty(D,"prototype",{writable:!1}),U&&x(D,U)})(Be,Q);var M,X,K,Pe,Te=(K=Be,Pe=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 D,U=C(K);if(Pe){var ue=C(this).constructor;D=Reflect.construct(U,arguments,ue)}else D=U.apply(this,arguments);return function(oe,se){if(se&&(f(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,D)});function Be(D){var U;if(function(oe,se){if(!(oe instanceof se))throw new TypeError("Cannot call a class as a function")}(this,Be),(U=Te.call(this,D)).supportsObserver=!D.scrollPosition&&D.useIntersectionObserver&&m(),U.supportsObserver){var ue=D.threshold;U.observer=function(oe){return T[oe]=T[oe]||new IntersectionObserver(E,{rootMargin:oe+"px"}),T[oe]}(ue)}return U}return M=Be,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 D=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.props.scrollPosition,U=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:D.y+U.bottom+se,left:D.x+U.left+oe,right:D.x+U.right+oe,top:D.y+U.top+se}}},{key:"isPlaceholderInViewport",value:function(){if(typeof window>"u"||!this.placeholder)return!1;var D=this.props,U=D.scrollPosition,ue=D.threshold,oe=this.getPlaceholderBoundingBox(U),se=U.y+window.innerHeight,Ie=U.x,Xe=U.x+window.innerWidth,Ke=U.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 D=this,U=this.props,ue=U.className,oe=U.height,se=U.placeholder,Ie=U.style,Xe=U.width;if(se&&typeof se.type!="function")return a().cloneElement(se,{ref:function(qe){return D.placeholder=qe}});var Ke=function(qe){for(var Ct=1;Ct<arguments.length;Ct++){var st=arguments[Ct]!=null?arguments[Ct]:{};Ct%2?y(Object(st),!0).forEach(function(Et){w(qe,Et,st[Et])}):Object.getOwnPropertyDescriptors?Object.defineProperties(qe,Object.getOwnPropertyDescriptors(st)):y(Object(st)).forEach(function(Et){Object.defineProperty(qe,Et,Object.getOwnPropertyDescriptor(st,Et))})}return qe}({display:"inline-block"},Ie);return Xe!==void 0&&(Ke.width=Xe),oe!==void 0&&(Ke.height=oe),a().createElement("span",{className:ue,ref:function(qe){return D.placeholder=qe},style:Ke},se)}}],X&&P(M.prototype,X),Object.defineProperty(M,"prototype",{writable:!1}),Be}(a().Component);R.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])},R.defaultProps={className:"",placeholder:null,threshold:100,useIntersectionObserver:!0};let G=R;var V=i(296),O=i.n(V),L=i(96),F=i.n(L),j=function(Q){var M=getComputedStyle(Q,null);return M.getPropertyValue("overflow")+M.getPropertyValue("overflow-y")+M.getPropertyValue("overflow-x")};let J=function(Q){if(!(Q instanceof HTMLElement))return window;for(var M=Q;M&&M instanceof HTMLElement;){if(/(scroll|auto)/.test(j(M)))return M;M=M.parentNode}return window};function $(Q){return $=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(M){return typeof M}:function(M){return M&&typeof Symbol=="function"&&M.constructor===Symbol&&M!==Symbol.prototype?"symbol":typeof M},$(Q)}var ne=["delayMethod","delayTime"];function Ce(){return Ce=Object.assign?Object.assign.bind():function(Q){for(var M=1;M<arguments.length;M++){var X=arguments[M];for(var K in X)Object.prototype.hasOwnProperty.call(X,K)&&(Q[K]=X[K])}return Q},Ce.apply(this,arguments)}function Me(Q,M){for(var X=0;X<M.length;X++){var K=M[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Q,(Pe=function(Te,Be){if($(Te)!=="object"||Te===null)return Te;var D=Te[Symbol.toPrimitive];if(D!==void 0){var U=D.call(Te,"string");if($(U)!=="object")return U;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Te)}(K.key),$(Pe)==="symbol"?Pe:String(Pe)),K)}var Pe}function ke(Q,M){return ke=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},ke(Q,M)}function ve(Q,M){if(M&&($(M)==="object"||typeof M=="function"))return M;if(M!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return it(Q)}function it(Q){if(Q===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Q}function $e(Q){return $e=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(M){return M.__proto__||Object.getPrototypeOf(M)},$e(Q)}var yt=function(){return typeof window>"u"?0:window.scrollX||window.pageXOffset},de=function(){return typeof window>"u"?0:window.scrollY||window.pageYOffset};let H=function(Q){var M=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&&ke(ue,oe)})(U,X);var K,Pe,Te,Be,D=(Te=U,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 ue,oe=$e(Te);if(Be){var se=$e(this).constructor;ue=Reflect.construct(oe,arguments,se)}else ue=oe.apply(this,arguments);return ve(this,ue)});function U(ue){var oe;if(function(Ie,Xe){if(!(Ie instanceof Xe))throw new TypeError("Cannot call a class as a function")}(this,U),(oe=D.call(this,ue)).useIntersectionObserver=ue.useIntersectionObserver&&m(),oe.useIntersectionObserver)return ve(oe);var se=oe.onChangeScroll.bind(it(oe));return ue.delayMethod==="debounce"?oe.delayedScroll=O()(se,ue.delayTime):ue.delayMethod==="throttle"&&(oe.delayedScroll=F()(se,ue.delayTime)),oe.state={scrollPosition:{x:yt(),y:de()}},oe.baseComponentRef=a().createRef(),oe}return K=U,(Pe=[{key:"componentDidMount",value:function(){this.addListeners()}},{key:"componentWillUnmount",value:function(){this.removeListeners()}},{key:"componentDidUpdate",value:function(){typeof window>"u"||this.useIntersectionObserver||J(p().findDOMNode(this.baseComponentRef.current))!==this.scrollElement&&(this.removeListeners(),this.addListeners())}},{key:"addListeners",value:function(){typeof window>"u"||this.useIntersectionObserver||(this.scrollElement=J(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:yt(),y:de()}})}},{key:"render",value:function(){var ue=this.props,oe=(ue.delayMethod,ue.delayTime,function(Ie,Xe){if(Ie==null)return{};var Ke,qe,Ct=function(Et,kn){if(Et==null)return{};var ji,dr,Jo={},ga=Object.keys(Et);for(dr=0;dr<ga.length;dr++)ji=ga[dr],kn.indexOf(ji)>=0||(Jo[ji]=Et[ji]);return Jo}(Ie,Xe);if(Object.getOwnPropertySymbols){var st=Object.getOwnPropertySymbols(Ie);for(qe=0;qe<st.length;qe++)Ke=st[qe],Xe.indexOf(Ke)>=0||Object.prototype.propertyIsEnumerable.call(Ie,Ke)&&(Ct[Ke]=Ie[Ke])}return Ct}(ue,ne)),se=this.useIntersectionObserver?null:this.state.scrollPosition;return a().createElement(Q,Ce({forwardRef:this.baseComponentRef,scrollPosition:se},oe))}}])&&Me(K.prototype,Pe),Object.defineProperty(K,"prototype",{writable:!1}),U}(a().Component);return M.propTypes={delayMethod:l.PropTypes.oneOf(["debounce","throttle"]),delayTime:l.PropTypes.number,useIntersectionObserver:l.PropTypes.bool},M.defaultProps={delayMethod:"throttle",delayTime:300,useIntersectionObserver:!0},M};function ye(Q){return ye=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(M){return typeof M}:function(M){return M&&typeof Symbol=="function"&&M.constructor===Symbol&&M!==Symbol.prototype?"symbol":typeof M},ye(Q)}function He(Q,M){for(var X=0;X<M.length;X++){var K=M[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Q,(Pe=function(Te,Be){if(ye(Te)!=="object"||Te===null)return Te;var D=Te[Symbol.toPrimitive];if(D!==void 0){var U=D.call(Te,"string");if(ye(U)!=="object")return U;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Te)}(K.key),ye(Pe)==="symbol"?Pe:String(Pe)),K)}var Pe}function N(Q,M){return N=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},N(Q,M)}function W(Q){return W=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(M){return M.__proto__||Object.getPrototypeOf(M)},W(Q)}var he=function(Q){(function(D,U){if(typeof U!="function"&&U!==null)throw new TypeError("Super expression must either be null or a function");D.prototype=Object.create(U&&U.prototype,{constructor:{value:D,writable:!0,configurable:!0}}),Object.defineProperty(D,"prototype",{writable:!1}),U&&N(D,U)})(Be,Q);var M,X,K,Pe,Te=(K=Be,Pe=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 D,U=W(K);if(Pe){var ue=W(this).constructor;D=Reflect.construct(U,arguments,ue)}else D=U.apply(this,arguments);return function(oe,se){if(se&&(ye(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,D)});function Be(D){return function(U,ue){if(!(U instanceof ue))throw new TypeError("Cannot call a class as a function")}(this,Be),Te.call(this,D)}return M=Be,(X=[{key:"render",value:function(){return a().createElement(G,this.props)}}])&&He(M.prototype,X),Object.defineProperty(M,"prototype",{writable:!1}),Be}(a().Component);let fe=H(he);function me(Q){return me=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(M){return typeof M}:function(M){return M&&typeof Symbol=="function"&&M.constructor===Symbol&&M!==Symbol.prototype?"symbol":typeof M},me(Q)}function Ve(Q,M){for(var X=0;X<M.length;X++){var K=M[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Q,(Pe=function(Te,Be){if(me(Te)!=="object"||Te===null)return Te;var D=Te[Symbol.toPrimitive];if(D!==void 0){var U=D.call(Te,"string");if(me(U)!=="object")return U;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Te)}(K.key),me(Pe)==="symbol"?Pe:String(Pe)),K)}var Pe}function Ue(Q,M){return Ue=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},Ue(Q,M)}function Ae(Q){if(Q===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Q}function We(Q){return We=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(M){return M.__proto__||Object.getPrototypeOf(M)},We(Q)}var ee=function(Q){(function(D,U){if(typeof U!="function"&&U!==null)throw new TypeError("Super expression must either be null or a function");D.prototype=Object.create(U&&U.prototype,{constructor:{value:D,writable:!0,configurable:!0}}),Object.defineProperty(D,"prototype",{writable:!1}),U&&Ue(D,U)})(Be,Q);var M,X,K,Pe,Te=(K=Be,Pe=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 D,U=We(K);if(Pe){var ue=We(this).constructor;D=Reflect.construct(U,arguments,ue)}else D=U.apply(this,arguments);return function(oe,se){if(se&&(me(se)==="object"||typeof se=="function"))return se;if(se!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Ae(oe)}(this,D)});function Be(D){var U;(function(Xe,Ke){if(!(Xe instanceof Ke))throw new TypeError("Cannot call a class as a function")})(this,Be),U=Te.call(this,D);var ue=D.afterLoad,oe=D.beforeLoad,se=D.scrollPosition,Ie=D.visibleByDefault;return U.state={visible:Ie},Ie&&(oe(),ue()),U.onVisible=U.onVisible.bind(Ae(U)),U.isScrollTracked=!!(se&&Number.isFinite(se.x)&&se.x>=0&&Number.isFinite(se.y)&&se.y>=0),U}return M=Be,(X=[{key:"componentDidUpdate",value:function(D,U){U.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 D=this.props,U=D.className,ue=D.delayMethod,oe=D.delayTime,se=D.height,Ie=D.placeholder,Xe=D.scrollPosition,Ke=D.style,qe=D.threshold,Ct=D.useIntersectionObserver,st=D.width;return this.isScrollTracked||Ct&&m()?a().createElement(G,{className:U,height:se,onVisible:this.onVisible,placeholder:Ie,scrollPosition:Xe,style:Ke,threshold:qe,useIntersectionObserver:Ct,width:st}):a().createElement(fe,{className:U,delayMethod:ue,delayTime:oe,height:se,onVisible:this.onVisible,placeholder:Ie,style:Ke,threshold:qe,width:st})}}])&&Ve(M.prototype,X),Object.defineProperty(M,"prototype",{writable:!1}),Be}(a().Component);ee.propTypes={afterLoad:l.PropTypes.func,beforeLoad:l.PropTypes.func,useIntersectionObserver:l.PropTypes.bool,visibleByDefault:l.PropTypes.bool},ee.defaultProps={afterLoad:function(){return{}},beforeLoad:function(){return{}},useIntersectionObserver:!0,visibleByDefault:!1};let Re=ee;function Se(Q){return Se=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(M){return typeof M}:function(M){return M&&typeof Symbol=="function"&&M.constructor===Symbol&&M!==Symbol.prototype?"symbol":typeof M},Se(Q)}var Pi=["afterLoad","beforeLoad","delayMethod","delayTime","effect","placeholder","placeholderSrc","scrollPosition","threshold","useIntersectionObserver","visibleByDefault","wrapperClassName","wrapperProps"];function ei(Q,M){var X=Object.keys(Q);if(Object.getOwnPropertySymbols){var K=Object.getOwnPropertySymbols(Q);M&&(K=K.filter(function(Pe){return Object.getOwnPropertyDescriptor(Q,Pe).enumerable})),X.push.apply(X,K)}return X}function Lt(Q){for(var M=1;M<arguments.length;M++){var X=arguments[M]!=null?arguments[M]:{};M%2?ei(Object(X),!0).forEach(function(K){fi(Q,K,X[K])}):Object.getOwnPropertyDescriptors?Object.defineProperties(Q,Object.getOwnPropertyDescriptors(X)):ei(Object(X)).forEach(function(K){Object.defineProperty(Q,K,Object.getOwnPropertyDescriptor(X,K))})}return Q}function fi(Q,M,X){return(M=ma(M))in Q?Object.defineProperty(Q,M,{value:X,enumerable:!0,configurable:!0,writable:!0}):Q[M]=X,Q}function Ci(){return Ci=Object.assign?Object.assign.bind():function(Q){for(var M=1;M<arguments.length;M++){var X=arguments[M];for(var K in X)Object.prototype.hasOwnProperty.call(X,K)&&(Q[K]=X[K])}return Q},Ci.apply(this,arguments)}function ac(Q,M){for(var X=0;X<M.length;X++){var K=M[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Q,ma(K.key),K)}}function ma(Q){var M=function(X,K){if(Se(X)!=="object"||X===null)return X;var Pe=X[Symbol.toPrimitive];if(Pe!==void 0){var Te=Pe.call(X,"string");if(Se(Te)!=="object")return Te;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(X)}(Q);return Se(M)==="symbol"?M:String(M)}function Ko(Q,M){return Ko=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},Ko(Q,M)}function nn(Q){return nn=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(M){return M.__proto__||Object.getPrototypeOf(M)},nn(Q)}var Zo=function(Q){(function(D,U){if(typeof U!="function"&&U!==null)throw new TypeError("Super expression must either be null or a function");D.prototype=Object.create(U&&U.prototype,{constructor:{value:D,writable:!0,configurable:!0}}),Object.defineProperty(D,"prototype",{writable:!1}),U&&Ko(D,U)})(Be,Q);var M,X,K,Pe,Te=(K=Be,Pe=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 D,U=nn(K);if(Pe){var ue=nn(this).constructor;D=Reflect.construct(U,arguments,ue)}else D=U.apply(this,arguments);return function(oe,se){if(se&&(Se(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,D)});function Be(D){var U;return function(ue,oe){if(!(ue instanceof oe))throw new TypeError("Cannot call a class as a function")}(this,Be),(U=Te.call(this,D)).state={loaded:!1},U}return M=Be,(X=[{key:"onImageLoad",value:function(){var D=this;return this.state.loaded?null:function(U){D.props.onLoad(U),D.props.afterLoad(),D.setState({loaded:!0})}}},{key:"getImg",value:function(){var D=this.props,U=(D.afterLoad,D.beforeLoad,D.delayMethod,D.delayTime,D.effect,D.placeholder,D.placeholderSrc,D.scrollPosition,D.threshold,D.useIntersectionObserver,D.visibleByDefault,D.wrapperClassName,D.wrapperProps,function(ue,oe){if(ue==null)return{};var se,Ie,Xe=function(qe,Ct){if(qe==null)return{};var st,Et,kn={},ji=Object.keys(qe);for(Et=0;Et<ji.length;Et++)st=ji[Et],Ct.indexOf(st)>=0||(kn[st]=qe[st]);return kn}(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}(D,Pi));return a().createElement("img",Ci({},U,{onLoad:this.onImageLoad()}))}},{key:"getLazyLoadImage",value:function(){var D=this.props,U=D.beforeLoad,ue=D.className,oe=D.delayMethod,se=D.delayTime,Ie=D.height,Xe=D.placeholder,Ke=D.scrollPosition,qe=D.style,Ct=D.threshold,st=D.useIntersectionObserver,Et=D.visibleByDefault,kn=D.width;return a().createElement(Re,{beforeLoad:U,className:ue,delayMethod:oe,delayTime:se,height:Ie,placeholder:Xe,scrollPosition:Ke,style:qe,threshold:Ct,useIntersectionObserver:st,visibleByDefault:Et,width:kn},this.getImg())}},{key:"getWrappedLazyLoadImage",value:function(D){var U=this.props,ue=U.effect,oe=U.height,se=U.placeholderSrc,Ie=U.width,Xe=U.wrapperClassName,Ke=U.wrapperProps,qe=this.state.loaded,Ct=qe?" lazy-load-image-loaded":"",st=qe||!se?{}:{backgroundImage:"url(".concat(se,")"),backgroundSize:"100% 100%"};return a().createElement("span",Ci({className:Xe+" lazy-load-image-background "+ue+Ct,style:Lt(Lt({},st),{},{color:"transparent",display:"inline-block",height:oe,width:Ie})},Ke),D)}},{key:"render",value:function(){var D=this.props,U=D.effect,ue=D.placeholderSrc,oe=D.visibleByDefault,se=D.wrapperClassName,Ie=D.wrapperProps,Xe=this.getLazyLoadImage();return(U||ue)&&!oe||se||Ie?this.getWrappedLazyLoadImage(Xe):Xe}}])&&ac(M.prototype,X),Object.defineProperty(M,"prototype",{writable:!1}),Be}(a().Component);Zo.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},Zo.defaultProps={onLoad:function(){},afterLoad:function(){return{}},beforeLoad:function(){return{}},delayMethod:"throttle",delayTime:300,effect:"",placeholderSrc:null,threshold:100,useIntersectionObserver:!0,visibleByDefault:!1,wrapperClassName:""};let lc=Zo})(),iS.exports=n})()});var YA={};jw(YA,{AnnotationContext:()=>zA,AnnotationPageContext:()=>NA,AnnotationStyleProvider:()=>sA,Auth:()=>op,AuthProvider:()=>np,AuthRContext:()=>Vr,AuthReactContext:()=>X0,AuthReactContextActions:()=>K0,CanvasAnnotations:()=>GE,CanvasContext:()=>Ni,CanvasPanel:()=>kt,CollectionContext:()=>FA,CombinedMetadata:()=>$E,ContextBridge:()=>up,CreateCustomShape:()=>nf,EventsProvider:()=>hE,Image:()=>eS,ImageServiceLoaderContext:()=>Bx,InnerViewerProvider:()=>nx,LanguageProvider:()=>OE,LanguageString:()=>_x,LocaleString:()=>bi,ManifestContext:()=>Qd,ManifestMetadata:()=>KE,MediaPlayerProvider:()=>sa,Metadata:()=>da,PolygonSelector:()=>LA,RangeContext:()=>Yd,ReactEventContext:()=>Ur,ReactVaultContext:()=>ir,RenderSvgEditorControls:()=>iA,ResourceProvider:()=>$t,ResourceReactContext:()=>Os,SelectorControllerProvider:()=>nA,SequenceThumbnails:()=>eA,SimpleViewerProvider:()=>ap,SimpleViewerReactContext:()=>jo,SingleCanvasThumbnail:()=>qp,TranslationProvider:()=>ME,TransliterationProvider:()=>kE,VaultProvider:()=>Fr,ViewerPresetContext:()=>Ho,VirtualAnnotationProvider:()=>pp,VisibleCanvasReactContext:()=>Dr,authDetailsForResource:()=>ep,createAuthStateStore:()=>Zd,createProbe:()=>Jd,defaultEmitter:()=>ox,emptyActions:()=>Rp,emptyStrategy:()=>Tp,expandTarget:()=>qt,findAllCanvasesInRange:()=>Tu,findFirstCanvasFromRange:()=>O0,findManifestSelectedRange:()=>NC,findSelectedRange:()=>Gd,flattenAnnotationPageIds:()=>Ip,formatTime:()=>Ux,get3dStrategy:()=>kp,getDefaultAnnotationStyles:()=>Gp,getImageStrategy:()=>Lp,getManifestSequence:()=>Iu,getParsedTargetSelector:()=>ia,getRenderingStrategy:()=>Fp,getTextualContentStrategy:()=>zp,getVideoStrategy:()=>Np,getVisibleCanvasesFromCanvasId:()=>FC,hasAuth:()=>rE,isImageApiSelector:()=>Nu,makeAccessServiceRequest:()=>Kd,makeAccessTokenRequest:()=>Mu,parseRotation:()=>Fu,parseSelector:()=>Yr,parseSpecificResource:()=>NE,svgThemes:()=>xS,unknownResponse:()=>na,unsupportedStrategy:()=>et,useAnnotation:()=>Js,useAnnotationPage:()=>Sp,useAnnotationPageManager:()=>oa,useAnnotationStyles:()=>Xp,useAnnotationsAtTime:()=>BA,useAuthActions:()=>Z0,useAuthService:()=>J0,useAuthStore:()=>Bo,useAuthToken:()=>sE,useAuthTokens:()=>tp,useCanvas:()=>De,useCanvasChoices:()=>DA,useCanvasClock:()=>jA,useCanvasSequence:()=>$d,useCanvasStartTime:()=>aa,useCanvasSubset:()=>VA,useClosestLanguage:()=>Ox,useCollection:()=>UA,useContextBridge:()=>lp,useCreateLocaleString:()=>LE,useCurrentAuth:()=>oE,useDispatch:()=>cp,useEventEmitter:()=>Gs,useEventListener:()=>HA,useExistingVault:()=>Br,useExternalCollection:()=>WA,useExternalManifest:()=>qd,useExternalResource:()=>js,useIIIFLanguage:()=>Du,useImage:()=>Xu,useImageService:()=>of,useImageServiceLoader:()=>On,useImageTile:()=>qA,useIsAuthEnabled:()=>rp,useLoadImageService:()=>Mp,useLocaleString:()=>kx,useManifest:()=>mt,useMediaActions:()=>WE,useMediaElements:()=>qE,useMediaState:()=>HE,usePaintables:()=>Op,usePaintingAnnotations:()=>Xr,usePolygonHelper:()=>ef,useRange:()=>Vs,useRenderingStrategy:()=>Bp,useResourceContext:()=>Wt,useResourceEvents:()=>Xs,useResources:()=>_p,useSearchService:()=>sp,useSelectorController:()=>Yp,useSelectorEmitter:()=>rA,useSelectorEvents:()=>Qp,useSelectorHelper:()=>oA,useSimpleMediaPlayer:()=>Jr,useSimpleViewer:()=>Qs,useStyleHelper:()=>QA,useStyles:()=>Qr,useSvgEditor:()=>tf,useThumbnail:()=>Zr,useTranslations:()=>Pp,useTransliteration:()=>bp,useVault:()=>Oe,useVaultEffect:()=>Dp,useVaultSelector:()=>Fe,useViewerPreset:()=>fp,useVirtualAnnotationPage:()=>hp,useVirtualAnnotationPageContext:()=>dp,useVisibleCanvases:()=>jr});var ca=A(q(),1);var Kt=A(q(),1);var Wn=(e,t,i)=>{let n=e.length,o=i||re(n);for(let a=0;a<n;a++)o[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 o};function re(e,t,i){return new Float32Array(e,t,i)}var qm=(e,t,i)=>{let n=e[1]<=t[3]&&e[3]>=t[1]&&e[2]<=t[4]&&e[4]>=t[2],o=i||re(5);return n?(o[0]=1,o[1]=Math.max(e[1],t[1]),o[2]=Math.max(e[2],t[2]),o[3]=Math.min(e[3],t[3]),o[4]=Math.min(e[4],t[4]),o):(o[0]=0,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o)},Qm=e=>e.length/5;var ai=(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,o=0){let a=re(5);return a[0]=1,a[1]=n,a[2]=o,a[3]=t+n,a[4]=i+o,a}row(t){return t(this)}addPoints(t,i,n,o){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]=o,this.index+=5,this}addBox(t,i,n,o){return this.addPoints(t,i,t+n,i+o),this}build(){return this.points}};var Yt=(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},yi=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},Rn=(e,t,i)=>ai(ut((1-e)*t,(1-e)*i),yi(e)),vi=(e,t,i)=>{let n=e.length,o=i&&i.length>=n?i.slice(0,n):re(n);for(let a=0;a<n;a++)o[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 o};var xs=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,Uw=typeof AbortController=="function",cl=Uw?AbortController:class{constructor(){this.signal=new Ym}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})}},Hw=typeof AbortSignal=="function",Ww=typeof cl.AbortSignal=="function",Ym=Hw?AbortSignal:Ww?cl.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))}},Eh=new Set,bh=(e,t)=>{let i=`LRU_CACHE_OPTION_${e}`;hl(i)&&Ah(i,`${e} option`,`options.${t}`,go)},Ph=(e,t)=>{let i=`LRU_CACHE_METHOD_${e}`;if(hl(i)){let{prototype:n}=go,{get:o}=Object.getOwnPropertyDescriptor(n,e);Ah(i,`${e} method`,`cache.${t}()`,o)}},qw=(e,t)=>{let i=`LRU_CACHE_PROPERTY_${e}`;if(hl(i)){let{prototype:n}=go,{get:o}=Object.getOwnPropertyDescriptor(n,e);Ah(i,`${e} property`,`cache.${t}`,o)}},Gm=(...e)=>{typeof process=="object"&&process&&typeof process.emitWarning=="function"?process.emitWarning(...e):console.error(...e)},hl=e=>!Eh.has(e),Ah=(e,t,i,n)=>{Eh.add(e);let o=`The ${t} is deprecated. Please use ${i} instead.`;Gm(o,"DeprecationWarning",e,n)},qn=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e),$m=e=>qn(e)?e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?mo:null:null,mo=class extends Array{constructor(t){super(t),this.fill(0)}},Ch=class{constructor(t){if(t===0)return[];let i=$m(t);this.heap=new i(t),this.length=0}push(t){this.heap[this.length++]=t}pop(){return this.heap[--this.length]}},go=class e{constructor(t={}){let{max:i=0,ttl:n,ttlResolution:o=1,ttlAutopurge:a,updateAgeOnGet:l,updateAgeOnHas:c,allowStale:p,dispose:m,disposeAfter:f,noDisposeOnSet:y,noUpdateTTL:w,maxSize:P=0,maxEntrySize:v=0,sizeCalculation:x,fetchMethod:C,fetchContext:E,noDeleteOnFetchRejection:T,noDeleteOnStaleGet:R,allowStaleOnFetchRejection:G,allowStaleOnFetchAbort:V,ignoreFetchAbort:O}=t,{length:L,maxAge:F,stale:j}=t instanceof e?{}:t;if(i!==0&&!qn(i))throw new TypeError("max option must be a nonnegative integer");let J=i?$m(i):Array;if(!J)throw new Error("invalid max value: "+i);if(this.max=i,this.maxSize=P,this.maxEntrySize=v||this.maxSize,this.sizeCalculation=x||L,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=C||null,this.fetchMethod&&typeof this.fetchMethod!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.fetchContext=E,!this.fetchMethod&&E!==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 J(i),this.prev=new J(i),this.head=0,this.tail=0,this.free=new Ch(i),this.initialFill=1,this.size=0,typeof m=="function"&&(this.dispose=m),typeof f=="function"?(this.disposeAfter=f,this.disposed=[]):(this.disposeAfter=null,this.disposed=null),this.noDisposeOnSet=!!y,this.noUpdateTTL=!!w,this.noDeleteOnFetchRejection=!!T,this.allowStaleOnFetchRejection=!!G,this.allowStaleOnFetchAbort=!!V,this.ignoreFetchAbort=!!O,this.maxEntrySize!==0){if(this.maxSize!==0&&!qn(this.maxSize))throw new TypeError("maxSize must be a positive integer if specified");if(!qn(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.initializeSizeTracking()}if(this.allowStale=!!p||!!j,this.noDeleteOnStaleGet=!!R,this.updateAgeOnGet=!!l,this.updateAgeOnHas=!!c,this.ttlResolution=qn(o)||o===0?o:1,this.ttlAutopurge=!!a,this.ttl=n||F||0,this.ttl){if(!qn(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 $="LRU_CACHE_UNBOUNDED";hl($)&&(Eh.add($),Gm("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",$,e))}j&&bh("stale","allowStale"),F&&bh("maxAge","ttl"),L&&bh("length","sizeCalculation")}getRemainingTTL(t){return this.has(t,{updateAgeOnHas:!1})?1/0:0}initializeTTLTracking(){this.ttls=new mo(this.max),this.starts=new mo(this.max),this.setItemTTL=(n,o,a=xs.now())=>{if(this.starts[n]=o!==0?a:0,this.ttls[n]=o,o!==0&&this.ttlAutopurge){let l=setTimeout(()=>{this.isStale(n)&&this.delete(this.keyList[n])},o+1);l.unref&&l.unref()}},this.updateItemAge=n=>{this.starts[n]=this.ttls[n]!==0?xs.now():0},this.statusTTL=(n,o)=>{n&&(n.ttl=this.ttls[o],n.start=this.starts[o],n.now=t||i(),n.remainingTTL=n.now+n.ttl-n.start)};let t=0,i=()=>{let n=xs.now();if(this.ttlResolution>0){t=n;let o=setTimeout(()=>t=0,this.ttlResolution);o.unref&&o.unref()}return n};this.getRemainingTTL=n=>{let o=this.keyMap.get(n);return o===void 0?0:this.ttls[o]===0||this.starts[o]===0?1/0:this.starts[o]+this.ttls[o]-(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 mo(this.max),this.removeItemSize=t=>{this.calculatedSize-=this.sizes[t],this.sizes[t]=0},this.requireSize=(t,i,n,o)=>{if(this.isBackgroundFetch(i))return 0;if(!qn(n))if(o){if(typeof o!="function")throw new TypeError("sizeCalculation must be a function");if(n=o(i,t),!qn(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 o=this.maxSize-this.sizes[t];for(;this.calculatedSize>o;)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,o){if(n||o)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 o=this.valList[n],a=this.isBackgroundFetch(o)?o.__staleWhileFetching:o;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 o=this.valList[n],a=this.isBackgroundFetch(o)?o.__staleWhileFetching:o;a!==void 0&&t.call(i,a,this.keyList[n],this)}}rforEach(t,i=this){for(let n of this.rindexes()){let o=this.valList[n],a=this.isBackgroundFetch(o)?o.__staleWhileFetching:o;a!==void 0&&t.call(i,a,this.keyList[n],this)}}get prune(){return Ph("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],o=this.valList[i],a=this.isBackgroundFetch(o)?o.__staleWhileFetching:o;if(a===void 0)continue;let l={value:a};if(this.ttls){l.ttl=this.ttls[i];let c=xs.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 o=Date.now()-n.start;n.start=xs.now()-o}this.set(i,n.value,n)}}dispose(t,i,n){}set(t,i,{ttl:n=this.ttl,start:o,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 f=this.size===0?void 0:this.keyMap.get(t);if(f===void 0)f=this.newIndex(),this.keyList[f]=t,this.valList[f]=i,this.keyMap.set(t,f),this.next[this.tail]=f,this.prev[f]=this.tail,this.tail=f,this.size++,this.addItemSize(f,l,m),m&&(m.set="add"),p=!1;else{this.moveToTail(f);let y=this.valList[f];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(f),this.valList[f]=i,this.addItemSize(f,l,m),m){m.set="replace";let w=y&&this.isBackgroundFetch(y)?y.__staleWhileFetching:y;w!==void 0&&(m.oldValue=w)}}else m&&(m.set="update")}if(n!==0&&this.ttl===0&&!this.ttls&&this.initializeTTLTracking(),p||this.setItemTTL(f,n,o),this.statusTTL(m,f),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],o=this.valList[i];return this.isBackgroundFetch(o)?o.__abortController.abort(new Error("evicted")):(this.dispose(o,n,"evict"),this.disposeAfter&&this.disposed.push([o,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 o=this.keyMap.get(t);if(o!==void 0)if(this.isStale(o))n&&(n.has="stale",this.statusTTL(n,o));else return i&&this.updateItemAge(o),n&&(n.has="hit"),this.statusTTL(n,o),!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 o=this.valList[n];return this.isBackgroundFetch(o)?o.__staleWhileFetching:o}}backgroundFetch(t,i,n,o){let a=i===void 0?void 0:this.valList[i];if(this.isBackgroundFetch(a))return a;let l=new cl;n.signal&&n.signal.addEventListener("abort",()=>l.abort(n.signal.reason));let c={signal:l.signal,options:n,context:o},p=(P,v=!1)=>{let{aborted:x}=l.signal,C=n.ignoreFetchAbort&&P!==void 0;return n.status&&(x&&!v?(n.status.fetchAborted=!0,n.status.fetchError=l.signal.reason,C&&(n.status.fetchAbortIgnored=!0)):n.status.fetchResolved=!0),x&&!C&&!v?f(l.signal.reason):(this.valList[i]===w&&(P===void 0?w.__staleWhileFetching?this.valList[i]=w.__staleWhileFetching:this.delete(t):(n.status&&(n.status.fetchUpdated=!0),this.set(t,P,c.options))),P)},m=P=>(n.status&&(n.status.fetchRejected=!0,n.status.fetchError=P),f(P)),f=P=>{let{aborted:v}=l.signal,x=v&&n.allowStaleOnFetchAbort,C=x||n.allowStaleOnFetchRejection,E=C||n.noDeleteOnFetchRejection;if(this.valList[i]===w&&(!E||w.__staleWhileFetching===void 0?this.delete(t):x||(this.valList[i]=w.__staleWhileFetching)),C)return n.status&&w.__staleWhileFetching!==void 0&&(n.status.returnedStale=!0),w.__staleWhileFetching;if(w.__returned===w)throw P},y=(P,v)=>{this.fetchMethod(t,a,c).then(x=>P(x),v),l.signal.addEventListener("abort",()=>{(!n.ignoreFetchAbort||n.allowStaleOnFetchAbort)&&(P(),n.allowStaleOnFetchAbort&&(P=x=>p(x,!0)))})};n.status&&(n.status.fetchDispatched=!0);let w=new Promise(y).then(p,m);return w.__abortController=l,w.__staleWhileFetching=a,w.__returned=null,i===void 0?(this.set(t,w,{...c.options,status:void 0}),i=this.keyMap.get(t)):this.valList[i]=w,w}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:o=this.noDeleteOnStaleGet,ttl:a=this.ttl,noDisposeOnSet:l=this.noDisposeOnSet,size:c=0,sizeCalculation:p=this.sizeCalculation,noUpdateTTL:m=this.noUpdateTTL,noDeleteOnFetchRejection:f=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:y=this.allowStaleOnFetchRejection,ignoreFetchAbort:w=this.ignoreFetchAbort,allowStaleOnFetchAbort:P=this.allowStaleOnFetchAbort,fetchContext:v=this.fetchContext,forceRefresh:x=!1,status:C,signal:E}={}){if(!this.fetchMethod)return C&&(C.fetch="get"),this.get(t,{allowStale:i,updateAgeOnGet:n,noDeleteOnStaleGet:o,status:C});let T={allowStale:i,updateAgeOnGet:n,noDeleteOnStaleGet:o,ttl:a,noDisposeOnSet:l,size:c,sizeCalculation:p,noUpdateTTL:m,noDeleteOnFetchRejection:f,allowStaleOnFetchRejection:y,allowStaleOnFetchAbort:P,ignoreFetchAbort:w,status:C,signal:E},R=this.keyMap.get(t);if(R===void 0){C&&(C.fetch="miss");let G=this.backgroundFetch(t,R,T,v);return G.__returned=G}else{let G=this.valList[R];if(this.isBackgroundFetch(G)){let j=i&&G.__staleWhileFetching!==void 0;return C&&(C.fetch="inflight",j&&(C.returnedStale=!0)),j?G.__staleWhileFetching:G.__returned=G}let V=this.isStale(R);if(!x&&!V)return C&&(C.fetch="hit"),this.moveToTail(R),n&&this.updateItemAge(R),this.statusTTL(C,R),G;let O=this.backgroundFetch(t,R,T,v),L=O.__staleWhileFetching!==void 0,F=L&&i;return C&&(C.fetch=L&&V?"stale":"refresh",F&&V&&(C.returnedStale=!0)),F?O.__staleWhileFetching:O.__returned=O}}get(t,{allowStale:i=this.allowStale,updateAgeOnGet:n=this.updateAgeOnGet,noDeleteOnStaleGet:o=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):(o||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 Ph("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 o=this.valList[n];this.isBackgroundFetch(o)?o.__abortController.abort(new Error("deleted")):(this.dispose(o,t,"delete"),this.disposeAfter&&this.disposed.push([o,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 Ph("reset","clear"),this.clear}get length(){return qw("length","size"),this.size}static get AbortController(){return cl}static get AbortSignal(){return Ym}},Xm=go;var zy=A(yg(),1);var ot=A(q(),1),Gl=A(q(),1),db=A(Y(),1);var xi=A(q()),Nh=A(bg());function yl(e){let{debounce:t,scroll:i,polyfill:n,offsetSize:o}=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,xi.useState)({left:0,top:0,width:0,height:0,bottom:0,right:0,x:0,y:0}),p=(0,xi.useRef)({element:null,scrollContainers:null,resizeObserver:null,lastBounds:l}),m=t?typeof t=="number"?t:t.scroll:null,f=t?typeof t=="number"?t:t.resize:null,y=(0,xi.useRef)(!1);(0,xi.useEffect)(()=>(y.current=!0,()=>void(y.current=!1)));let[w,P,v]=(0,xi.useMemo)(()=>{let T=()=>{if(!p.current.element)return;let{left:R,top:G,width:V,height:O,bottom:L,right:F,x:j,y:J}=p.current.element.getBoundingClientRect(),$={left:R,top:G,width:V,height:O,bottom:L,right:F,x:j,y:J};p.current.element instanceof HTMLElement&&o&&($.height=p.current.element.offsetHeight,$.width=p.current.element.offsetWidth),Object.freeze($),y.current&&!o1(p.current.lastBounds,$)&&c(p.current.lastBounds=$)};return[T,f?(0,Nh.default)(T,f):T,m?(0,Nh.default)(T,m):T]},[c,o,m,f]);function x(){p.current.scrollContainers&&(p.current.scrollContainers.forEach(T=>T.removeEventListener("scroll",v,!0)),p.current.scrollContainers=null),p.current.resizeObserver&&(p.current.resizeObserver.disconnect(),p.current.resizeObserver=null)}function C(){p.current.element&&(p.current.resizeObserver=new a(v),p.current.resizeObserver.observe(p.current.element),i&&p.current.scrollContainers&&p.current.scrollContainers.forEach(T=>T.addEventListener("scroll",v,{capture:!0,passive:!0})))}let E=T=>{!T||T===p.current.element||(x(),p.current.element=T,p.current.scrollContainers=Pg(T),C())};return n1(v,!!i),i1(P),(0,xi.useEffect)(()=>{x(),C()},[i,v,P]),(0,xi.useEffect)(()=>x,[]),[E,l,w]}function i1(e){(0,xi.useEffect)(()=>{let t=e;return window.addEventListener("resize",t),()=>void window.removeEventListener("resize",t)},[e])}function n1(e,t){(0,xi.useEffect)(()=>{if(t){let i=e;return window.addEventListener("scroll",i,{capture:!0,passive:!0}),()=>void window.removeEventListener("scroll",i,!0)}},[e,t])}function Pg(e){let t=[];if(!e||e===document.body)return t;let{overflow:i,overflowX:n,overflowY:o}=window.getComputedStyle(e);return[i,n,o].some(a=>a==="auto"||a==="scroll")&&t.push(e),[...t,...Pg(e.parentElement)]}var r1=["x","y","top","bottom","left","right","width","height"],o1=(e,t)=>r1.every(i=>e[i]===t[i]);var ad=A(q(),1),mn=A(q(),1),Fy=A(Dg(),1),By=A(q(),1),Kl=A(q(),1),xo=A(Y(),1),Li=A(q(),1),Gy=A(q(),1),$y=A(q(),1),Xy=A(Y(),1),Gt=A(Y(),1),Zl=A(q(),1);var _s=A(Y(),1),ud=A(q(),1),Zy=A(q(),1),_b=A(q(),1),Jy=A(q(),1),tv=A(q(),1),fn=A(q(),1),iv=A(q(),1),rd=A(Y(),1),nv=A(q(),1),pn=A(q(),1),Tt=A(q(),1),rv=A(q(),1),iu=A(q(),1),St=A(Y(),1),od=A(Y(),1),sv=A(q(),1),Rr=A(Y(),1),av=A(q(),1);var a1=Object.defineProperty,l1=(e,t,i)=>t in e?a1(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,Pl=(e,t,i)=>(l1(e,typeof t!="symbol"?t+"":t,i),i);function Er(e){return e.endsWith("info.json")?e:e.endsWith("/")?`${e}info.json`:`${e}/info.json`}var u1="http://library.stanford.edu/iiif/image-api/compliance.html#level0",Hg="http://library.stanford.edu/iiif/image-api/compliance.html#level1",Wg="http://library.stanford.edu/iiif/image-api/compliance.html#level2",c1="http://library.stanford.edu/iiif/image-api/conformance.html#level0",qg="http://library.stanford.edu/iiif/image-api/conformance.html#level1",Qg="http://library.stanford.edu/iiif/image-api/conformance.html#level2",h1="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level0",Yg="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level1",Gg="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2",d1="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level0",$g="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level1",Xg="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level2",p1="http://iiif.io/api/image/1/level0.json",f1="http://iiif.io/api/image/1/profiles/level0.json",Kg="http://iiif.io/api/image/1/level1.json",Zg="http://iiif.io/api/image/1/profiles/level1.json",Jg="http://iiif.io/api/image/1/level2.json",ey="http://iiif.io/api/image/1/profiles/level2.json",m1="http://iiif.io/api/image/2/level0.json",g1="http://iiif.io/api/image/2/profiles/level0.json",ty="http://iiif.io/api/image/2/level1.json",iy="http://iiif.io/api/image/2/profiles/level1.json",ny="http://iiif.io/api/image/2/level2.json",ry="http://iiif.io/api/image/2/profiles/level2.json",y1="level0",oy="level1",sy="level2",v1="http://iiif.io/api/image/2/level0",ay="http://iiif.io/api/image/2/level1",ly="http://iiif.io/api/image/2/level2",uy=[ly,Wg,Qg,Gg,Xg,Jg,ey,ny,ry,sy],cy=[...uy,ay,Hg,qg,Yg,$g,Kg,Zg,ty,iy,oy],x1=[v1,ay,ly,u1,Hg,Wg,c1,qg,Qg,h1,Yg,Gg,d1,$g,Xg,p1,f1,Kg,Zg,Jg,ey,m1,g1,ty,iy,ny,ry,y1,oy,sy];var S1={extraFormats:["jpg"],extraQualities:["default"],extraFeatures:["sizeByWhListed"]},w1={extraFormats:["jpg"],extraQualities:["default"],extraFeatures:["baseUriRedirect","cors","jsonldMediaType","regionByPx","regionSquare","sizeByWhListed","sizeByH","sizeByW","sizeByWh"]},b1={extraFormats:["jpg","png"],extraQualities:["default"],extraFeatures:["baseUriRedirect","cors","jsonldMediaType","regionByPct","regionByPx","regionSquare","rotationBy90s","sizeByWhListed","sizeByConfinedWh","sizeByH","sizeByPct","sizeByW","sizeByWh"]};function P1(e){return uy.indexOf(e)!==-1?b1:cy.indexOf(e)!==-1?w1:S1}function C1(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=P1(n)),!!n){if(n.formats)for(let o of n.formats)i.extraFormats.indexOf(o)===-1&&i.extraFormats.push(o);if(n.qualities)for(let o of n.qualities)i.extraQualities.indexOf(o)===-1&&i.extraQualities.push(o);if(n.supports)for(let o of n.supports)i.extraFeatures.indexOf(o)===-1&&i.extraFeatures.push(o);if(n.maxHeight&&(i.maxHeight=n.maxHeight),n.maxWidth&&(i.maxWidth=n.maxWidth),n.maxArea&&(i.maxArea=n.maxArea),n.extraFormats)for(let o of n.extraFormats)i.extraFormats.indexOf(o)===-1&&i.extraFormats.push(o);if(n.extraQualities)for(let o of n.extraQualities)i.extraQualities.indexOf(o)===-1&&i.extraQualities.push(o);if(n.extraFeatures)for(let o of n.extraFeatures)i.extraFeatures.indexOf(o)===-1&&i.extraFeatures.push(o);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 E1(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 A1(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 R1(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 T1(e,t=""){let i=e.match(/^(([a-zA-Z]+):\/\/([^/]+))?((.*)+)/);if(!i)throw new Error(`Invalid or unknown input ${e}`);let n=i[2],o=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:o,path:a,prefix:t}}function I1(e,t=""){let{path:i,scheme:n,server:o,prefix:a}=T1(e,t),l=(i||"").split("/").reverse(),[c,p,m,f,...y]=l,w=y.reverse().filter(Boolean).join("/");if(l.length===1||c==="")return{type:"base",scheme:n,server:o,prefix:a,identifier:w};if(c==="info.json"){let[,...v]=l;return{type:"info",scheme:n,server:o,prefix:a,identifier:v.reverse().filter(Boolean).join("/")}}let P=(c||"").split(".");if(typeof P[1]>"u"||typeof P[0]>"u"||typeof f>"u"||typeof m>"u"||typeof p>"u")throw new Error("Invalid image request");return{type:"image",scheme:n,server:o,prefix:a,identifier:w,originalPath:i,region:E1(f),size:A1(m),rotation:R1(p),quality:P[0],format:P[1]}}function Gh(e){let t=I1(Er(e.id));if(t.type!=="info")throw new Error("Invalid service URL");let i=C1(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 _1(e,t,i){let n=i.length,o=[];for(let a=0;a<n;a++){let l=i[a];if(l){let c=l.width;o.push(e/c)}}return o}function M1(e,t,i){let n=i.length,o=[];for(let a=0;a<n;a++){let l=i[a];l&&o.push({width:Math.floor(e/l),height:Math.floor(t/l)})}return o}function dt(e){if(e["@id"])return e["@id"];if(e.id)return e.id}function El(e){if(!e||!e.profile||!dt(e))return!1;let t=Array.isArray(e.profile)?e.profile:[e.profile];for(let i of t)if(typeof i=="string"&&x1.indexOf(i)!==-1)return!0;return!1}function O1(e){if(!El(e))return!1;let t=Array.isArray(e.profile)?e.profile:[e.profile];for(let i of t)if(typeof i=="string"){if(cy.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 Cl(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 Yh(e){return El(e)?Cl(0,e)?0:Cl(1,e)?1:Cl(2,e)?2:null:null}function hy(e){return(e["@context"]?Array.isArray(e["@context"])?e["@context"]:[e["@context"]]:[]).indexOf("http://iiif.io/api/image/3/context.json")!==-1}function k1(e){if(!O1(e))return[];let t=[],i=Array.isArray(e.profile)?e.profile:[e.profile],n=i.length;for(let o=0;o<n;o++){let a=i[o];if(a&&typeof a!="string"&&(a.maxHeight||a.maxWidth))return[{id:dt(e),type:"variable",minWidth:0,minHeight:0,maxHeight:a.maxHeight||a.maxWidth,maxWidth:a.maxWidth||a.maxHeight,level:Yh(e),version:e["@context"]==="http://iiif.io/api/image/3/context.json"?3:2}]}if(e.tiles){let o=e.tiles.length;for(let a=0;a<o;a++){let l=e.tiles[a];l&&(l.height||l.width)&&t.push({id:dt(e),type:"variable",minHeight:0,minWidth:0,maxHeight:l.height||l.width,maxWidth:l.width,level:Yh(e),version:hy(e)?3:2})}}return t}function jg(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],o=parseInt(i[4],10),a=parseInt(i[5],10),l=i[7];if((n==="max"||n==="full")&&o&&a&&l)return{type:"fixed",id:e,height:a,width:o}}return{type:"unknown",id:e}}function L1(e){if(e["@type"])return e["@type"];if(e.type)return e.type}function Al(e){if(typeof e=="string")return jg(e);let t=L1(e);if(t!=="Image"&&t!=="sc:Image")return null;let i=e,n=dt(i);return n?n&&i.width&&i.height?{id:n,type:"fixed",width:i.width,height:i.height,unsafe:!0}:jg(n):null}function z1(e){return El(e)?(e&&e.sizes?e.sizes:[]).map(t=>({id:dt(e),type:"fixed-service",height:t.height,width:t.width,level:Yh(e),version:hy(e)?3:2})):[]}function Vg(e){let t=[],i=e.length;for(let n=0;n<i;n++){let o=e[n];if(!o)continue;let a=z1(o);a.length&&t.push(...a);let l=k1(o);l.length&&t.push(...l)}return t}function Ar(e){let t=e.service?Array.isArray(e.service)?e.service:[e.service]:[],i=t.length,n=[];for(let o=0;o<i;o++)El(t[o])&&n.push(t[o]);return n}function N1(e,t=!0,i){let n=[],o=Al(e);if(o===null)return n;let a=e;if(n.push(o),t&&a&&a.width&&a.height){let l=[],c=Ar(a);for(let p of c){let m={id:dt(p),width:a.width,height:a.height};if(i.canLoadSync(m)){let f=i.loadServiceSync(m);f&&(f.height||(f.height=a.height),f.width||(f.width=a.width),l.push(...Vg([f])))}}if(l.length)return n.push(...l),n}return a.service&&n.push(...Vg(a.service)),n}function F1({x:e=0,y:t=0,w:i,h:n,full:o,square:a,percent:l}){if(o)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 B1({max:e,percentScale:t,upscaled:i,confined:n,width:o,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}`),o&&p.push(`${o}`),p.push(","),a&&c===3&&p.push(`${a}`),p.join(""))}function D1(e){return`${e.mirror?"!":""}${(e.angle||0)%360}`}function $h(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:o}=e,{region:a,rotation:l,format:c,quality:p}=e;if(t){let m=t["@context"]?Array.isArray(t["@context"])?t["@context"]:[t["@context"]]:[],f=m.indexOf("http://iiif.io/api/image/2/context.json")!==-1,y=m.indexOf("http://iiif.io/api/image/3/context.json")!==-1;if((o.width===t.width&&!o.height||o.height===t.height&&!o.width||o.width===t.width&&o.height===t.height)&&(o={...o,max:!0}),f&&(o.max&&!o.serialiseAsFull&&(o={...o,serialiseAsFull:!0}),!o.max&&o.width&&o.height&&(o={...o,height:void 0}),o={...o,version:2}),y){if(o.max&&o.serialiseAsFull&&(o={...o,serialiseAsFull:!1}),o.width&&!o.height&&t.width&&t.height){let w=t.height/t.width;o={...o,height:Math.ceil(o.width*w)}}o={...o,version:3}}}return[n,F1(a),B1(o),D1(l),`${p}.${c}`].filter(Boolean).join("/")}function Qh(e,t,i){let n=Gh({"@context":e.version===3?"http://iiif.io/api/image/3/context.json":"http://iiif.io/api/image/2/context.json",id:Er(dt(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:$h(n),type:"fixed",width:t,height:i||e.height/(e.width||1)*t,unsafe:e.width>t}}function yo(e){let t=e.replace(/(https?:\/\/)?(www.)?/i,"");return t.indexOf("/")!==-1?t.split("/")[0]:t}function j1(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 V1(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),o=(f,y=0)=>n.explain?i.push(new Array(y).fill(0).map(w=>" ").join("")+f().trim()):void 0,a=[],l=[],c=null;o(()=>`Using configuration: ${JSON.stringify(n,null,2)}`);let p=(f,y)=>{if(o(()=>"Swapping choice",3),j1(n,y,f)){if(n.preferFixedSize&&f.unsafe){o(()=>`We found an image that was marked as unsafe, but it was the best size. (${f.id})`,4),l.push(f);return}n.returnAllOptions&&y&&l.push(y),o(()=>`We found a new image that was the best size. (${f.id})`,4),c=f}else n.returnAllOptions&&l.push(f)};o(()=>`The input shows we have ${t.length} list(s) of candidates to choose from.`);let m=t.length;for(let f=0;f<m;f++){let y=t[f]();o(()=>`Candidate group ${f}: ${JSON.stringify(y,null,2)}`,1);let w=y.length;o(()=>`Checking candidate list number ${f} and found ${w} potential ways of creating image(s)`,1);for(let P=0;P<w;P++){let v=y[P];if(o(()=>`-> Checking candidate ${P}`,1),v.type==="unknown"&&n.atAnyCost&&(o(()=>`We've found an unknown image type, adding this to the "last resort" list`,2),a.push(v)),v.type==="fixed"&&(v.unsafe?(o(()=>`We've found an unsafe fixed image type, adding this to the "last resort" list`,2),a.push(v)):(o(()=>"We've found a fixed size image, checking if it matches the request",2),p(v,c))),v.type==="fixed-service")if(n.unsafeImageService){o(()=>"Checking for an image from the tile source, without calculating the right height and width (unsafeImageService)",2);let x=Qh(v,n.width,n.height);p(x,c)}else{o(()=>"Checking for an image from the tile source 3",2);let x=Qh(v,v.width,v.height);p(x,c)}if(v.type==="variable"&&v.maxWidth){let x=Qh({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;o(()=>`We found a match in choice list number ${f}, no searching any more`);break}}return n.atAnyCost&&l.length===0?(o(()=>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?(o(()=>"Returning all options that we have found"),{best:(n.atAnyCost?c||l[0]||a[0]:c||l[0])||null,fallback:[...l,...a],log:i}):(o(()=>"Returning the best image that we found, and a fallback"),{best:c||l[0]||null,fallback:c?l:l.slice(1),log:i})}function U1(e,t,i){let n=e>t?e:t,o=i.length,a=[];for(let l=0;l<o;l++){let c=i[l];if(!c||c.scaleFactors.length===0)continue;let p=c.scaleFactors[0];if(!p)continue;let m=n/p,f=[p];for(;m>=c.width;)p=p*2,f.push(p),m=m/2;a.push({...c,scaleFactors:f})}return a}function H1(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 o=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){o++;break}return o===i}function Ug(e){return Cl(0,e)}var vo=class{constructor(e={}){Pl(this,"config",{verificationsRequired:1,approximateServices:!1,enableFetching:!0,disableThrottling:!1}),Pl(this,"fetchingCount",0),Pl(this,"imageServices",{}),Pl(this,"knownImageServers",{}),this.config=Object.assign(this.config,e)}setConfig(e){Object.assign(this.config,e)}sample(e,t,i=!0){let n=yo(dt(e)),o=Er(dt(e)),a=this.knownImageServers[n];return this.imageServices[o]=Object.assign(e,{real:!0}),!a&&e.tiles&&!Ug(e)?(this.knownImageServers[n]={verifications:0,malformed:!1,root:n,preLoaded:i,sampledId:dt(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:_1(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,o=yo(dt(e)),a=this.knownImageServers[o],l=Er(dt(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)||Ug(e.source)?null:(this.imageServices[l]||(this.imageServices[l]={"@context":a.result.context,"@id":dt(e),id:dt(e),protocol:"http://iiif.io/api/image",tiles:n?.tiles||U1(e.width,e.height,a.result.sampledTiles),sizes:n?.sizes||M1(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 o=e?await this.getImageCandidates(e,i):[];return V1(t,[()=>n,()=>o])}async getImageCandidates(e,t=!0){let i=e;if(t&&i&&i.height&&i.width){let n=Ar(i);for(let o of n){let a={id:dt(o),width:o.width?o.width:i.width,height:o.height?o.height:i.height,source:o};await this.loadService(a)}}return N1(e,t,this)}async verify(e){let t=this.predict(e,!1,!0),i=await this.fetchService(dt(e));if(!t)return!1;let n=t.height===i.height&&t.width===i.width&&t["@context"]===i["@context"]&&H1(t.sizes||[],i.sizes||[]);if(n){let o=yo(dt(e)),a=this.knownImageServers[o];a&&(a.verifications+=1,a.verifications>=this.config.verificationsRequired&&(a.verified=!0))}return n}canLoadSync(e){let t=typeof e=="string"?e:dt(e),i=Er(t);if(this.imageServices[i])return!0;let n=this.knownImageServers[yo(t)];return!!(n&&!n.malformed&&n.verifications>=this.config.verificationsRequired)}async markAsMalformed(e){return this.knownImageServers[yo(dt(e))].malformed=!0,this.loadService(e,!0)}async fetchService(e,t=!1){let i=Er(e),n=this.imageServices[i];if(n&&(!t||n.real))return n;if(!this.config.enableFetching)throw new Error("Fetching is not enabled");let o=await this.fetch(i).then(a=>a.json());return!o.id&&o["@id"]&&(o.id=o["@id"]),o.id!==e&&(o.id=e,o["@id"]&&(o["@id"]=e)),this.imageServices[i]=Object.assign(o,{real:!0}),this.imageServices[i]}async fetch(e,t){return fetch(e,t)}async loadService(e,t=!1){if(!this.config.disableThrottling){let o=!0;for(;o;)if(this.fetchingCount>=this.config.verificationsRequired)await new Promise(a=>setTimeout(a,500));else{o=!1;break}}let i=this.knownImageServers[yo(dt(e))];if(i&&!i.malformed&&!t){await i.result;let o=this.loadServiceSync(e);if(o)return o}this.fetchingCount++;let n=await this.fetchService(dt(e),t);return this.fetchingCount--,n.real&&this.sample(n,e),n}loadServiceSync(e){let t=Er(dt(e));return this.imageServices[t]?this.imageServices[t]:this.config.approximateServices?this.predict(e):null}},fR=new vo;var Rl={},Tn={get(e){return e},setMetaValue([e,t,i],n){let o=Tn.getResourceMeta(e,t),a=o?o[i]:void 0,l=typeof n=="function"?n(a):n;Rl[e]={...Rl[e]||{},[t]:{...(Rl[e]||{})[t]||{},[i]:l}}},getResourceMeta:(e,t)=>{let i=Rl[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 dy=new vo;function Xh(e=Tn,t={}){let i=t.imageServiceLoader||dy;async function n(o,a,l=!1,c=[],p){let m=()=>i.getThumbnailFromResource(void 0,a,l,c);if(!o)return await i.getThumbnailFromResource(void 0,a,l,c);if(typeof o=="string"){let w=Al(o);return w&&c.push(w),await i.getThumbnailFromResource(void 0,a,l,c)}let f=e.get(o,{skipSelfReturn:!1});if(typeof f=="string")return{best:Al(f),fallback:[],log:[]};if(!f)return await m();switch(await(async w=>{if(w&&w.thumbnail&&w.thumbnail.length){let P=e.get(w.thumbnail[0]),v=await i.getImageCandidates(P,l);v&&v.length&&c.push(...v)}})(f),f.type){case"Annotation":{let w=Array.isArray(f.body)?f.body:[f.body],P=e.get(w[0]);return p&&!P.width&&(P.width=p.width,P.height=p.height),await i.getThumbnailFromResource(P,a,l,c)}case"Canvas":{let w=f;return n(w.items[0],a,l,c,{width:w.width,height:w.height})}case"AnnotationPage":return n(f.items[0],a,l,c,p);case"Choice":{let w=f;return!w.items||w.items[0]?await m():n(w.items[0],a,l,c,p)}case"Collection":{let P=f.items[0];return P?n(P,a,l,c,p):await m()}case"Manifest":{let P=f.items[0];return P?n(P,a,l,c,p):await m()}case"SpecificResource":case"Image":case"Dataset":case"Sound":case"Text":case"TextualBody":case"Video":return p&&!f.width&&(f.width=p.width,f.height=p.height),i.getThumbnailFromResource(f,a,l,c)}return await m()}return{getBestThumbnailAtSize:n}}var W1=Object.create,Kh=Object.defineProperty,q1=Object.getOwnPropertyDescriptor,py=Object.getOwnPropertyNames,Q1=Object.getPrototypeOf,Y1=Object.prototype.hasOwnProperty,G1=(e,t,i)=>t in e?Kh(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,Zh=(e,t)=>function(){return t||(0,e[py(e)[0]])((t={exports:{}}).exports,t),t.exports},$1=(e,t,i,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of py(t))!Y1.call(e,o)&&o!==i&&Kh(e,o,{get:()=>t[o],enumerable:!(n=q1(t,o))||n.enumerable});return e},Jh=(e,t,i)=>(i=e!=null?W1(Q1(e)):{},$1(t||!e||!e.__esModule?Kh(i,"default",{value:e,enumerable:!0}):i,e)),ui=(e,t,i)=>(G1(e,typeof t!="symbol"?t+"":t,i),i);var Nb=A(Y(),1),Fb=A(q(),1),Ms=A(q(),1),Bb=A(Y(),1),Db=A(q(),1),lv=A(q(),1),X1=Object.defineProperty,K1=(e,t,i)=>t in e?X1(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,b=(e,t,i)=>(K1(e,typeof t!="symbol"?t+"":t,i),i),Wl=["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 Z1(){return Wl.reduce((e,t)=>(e[t]=[],e),{})}var wo=Wl.reduce((e,t)=>(e[t.slice(2).toLowerCase()]=t,e[t]=t,e),{}),J1="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",ql=(e=21)=>{let t="",i=crypto.getRandomValues(new Uint8Array(e));for(;e--;)t+=J1[i[e]&63];return t},gn=class{constructor(){b(this,"__id"),b(this,"__revision",0),b(this,"__host"),b(this,"__onCreate"),b(this,"__parent"),b(this,"__owner",{value:void 0}),b(this,"__state",{}),b(this,"eventHandlers"),b(this,"scale",1),b(this,"layers",[]),b(this,"time",[]),b(this,"_crop"),b(this,"cropData"),b(this,"id"),b(this,"addEventListener",(e,t,i)=>{let n=wo[e];if(!this.eventHandlers[n])throw new Error(`Unknown event ${n}`);this.eventHandlers[n].indexOf(t)===-1&&this.eventHandlers[n].push(t)}),b(this,"removeEventListener",(e,t)=>{let i=wo[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=ql(),this.eventHandlers=Z1()}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,o=!1;if(n)for(let a=0;a<n;a++)try{i[a](t),o=!0}catch(l){console.error(e,l)}return o}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){Yt(this.points,ut(e,t))}atScale(e){Yt(this.points,Rn(e,this.x,this.y)),this.scale*=e}transform(e){Yt(this.points,e)}applyProps(e){this.__revision++}appendChild(e){}removeChild(e){}insertBefore(e,t){}hideInstance(){}},$n=class td extends gn{constructor(t){if(super(),b(this,"type","spacial-content"),b(this,"id"),b(this,"uri"),b(this,"display"),b(this,"points"),b(this,"priority"),b(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 o=xe.singleBox(t.crop.width,t.crop.height,t.crop.x,t.crop.y);Yt(o,ut(-t.crop.x,-t.crop.y)),this.crop?this.crop.set(o):this.crop=re(o)}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,o){return td.fromImage("data:image/svg+xml;base64,"+btoa(t),i,n,o)}static fromImage(t,i,n,o){let a=new td;return a.applyProps({uri:t,id:o,display:n,target:i}),a}getImageUrl(){return this.uri}},id=class extends gn{constructor(e){if(super(),b(this,"type","spacial-content"),b(this,"id"),b(this,"uri"),b(this,"display"),b(this,"points"),b(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 eb(e,t,i=1){let n=t.length;if(n===0)throw new Error("No resources passed in.");let o=0;for(let a=0;a<n&&!(!t[a]||!t[a].display);a++)o=Math.abs(t[a].display.scale-e)*i<Math.abs(t[o].display.scale-e)?a:o;return o}function yy(e,t){return Math.abs(e-t)}function jl(e,t){let i=yy(e.x,t.x),n=yy(e.y,t.y);return Math.sqrt(Math.pow(i,2)+Math.pow(n,2))}function tb(e){let t=e.length;return e.indexOf("/info.json")===t-10?e.slice(0,-10):e}function Tl(e,t,i){return Math.min(Math.max(e,t),i)}var Is=class _y extends gn{constructor(t){super(),b(this,"id"),b(this,"type","spacial-content"),b(this,"display"),b(this,"tileWidth"),b(this,"style",{opacity:1}),b(this,"points"),b(this,"service"),b(this,"format","jpg"),b(this,"crop2"),b(this,"tileUrl"),this.tileUrl=tb(t.url),this.id=t.id||`${this.tileUrl}--${t.scaleFactor}`,this.points=t.displayPoints?t.displayPoints:vi(t.points,yi(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,o=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]>o&&i[m+2]<c&&i[m+4]>a?(i[m+1]=Tl(i[m+1],o,l),i[m+3]=Tl(i[m+3],o,l),i[m+2]=Tl(i[m+2],a,c),i[m+4]=Tl(i[m+4],a,c)):i[m]=0}Yt(i,ut(-t.crop.x,-t.crop.y)),this.crop?this.crop.set(i):this.crop=i}}static fromTile(t,i,n,o,a,l){n.height=n.height?n.height:n.width;let c=Math.ceil(i.width/o),p=Math.ceil(i.height/o),m=Math.ceil(c/n.width),f=Math.ceil(p/n.height),y=xe.grid(m,f),w=xe.grid(m,f);for(let v=0;v<f;v++)for(let x=0;x<m;x++){let C=x*n.width,E=v*n.height;w.addPoints(C*o,E*o,x===m-1?i.width:(C+n.width)*o,v===f-1?i.height:(E+n.height)*o),y.addPoints(C,E,x===m-1?c:C+n.width,v===f-1?p:E+n.height)}let P=new _y({url:t,scaleFactor:o,points:y.build(),displayPoints:w.build(),width:i.width,height:i.height,tileWidth:n.width,format:l});return P.applyProps({service:a}),P}getImageUrl(t){let i=this.points.slice(t*5,t*5+5),n=i[3]-i[1],o=i[4]-i[2],a=Math.ceil(n/this.display.scale);return`${this.tileUrl}/${i[1]},${i[2]},${n},${o}/${a>this.tileWidth?this.tileWidth:a},/0/default.${this.format||"jpg"}`}getAllPointsAt(t,i,n){let o=Wn(this.crop||this.points,t);return[[this,o,i]]}transform(t){Yt(this.points,t)}getScheduledUpdates(t,i){return[]}},ib=class extends gn{constructor(){super(...arguments),b(this,"type","spacial-content")}getAllPointsAt(e,t,i){return[[this,this.points,t]]}},nb=class extends ib{constructor(e){super(),b(this,"id"),b(this,"display"),b(this,"points"),b(this,"images",[]),b(this,"allImages",[]),b(this,"scaleFactors",[]),b(this,"aggregateBuffer",re(9)),b(this,"lazyLoader"),b(this,"isFullyLoaded",!1),b(this,"maxScaleFactor",0),b(this,"renderOptions"),b(this,"_scheduleSortByScales",!1),b(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 $n&&(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 $n||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)}),b(this,"loadFullResource",async()=>{if(!this.isFullyLoaded&&this.lazyLoader){this.isFullyLoaded=!0;let t=await this.lazyLoader();this.addImages(t)}}),b(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=eb(1/(i||1)/(window.devicePixelRatio||1),this.images,this.renderOptions.quality),o=this.images.length,a=t?ai(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=o-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 Il(e,t,i,n,o){let a=Math.PI/180*o,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 sd=class My extends gn{constructor(t,i){super(),b(this,"id"),b(this,"type","world-object"),b(this,"scale"),b(this,"layers"),b(this,"points"),b(this,"worldPoints"),b(this,"intersectionBuffer",re(5)),b(this,"aggregateBuffer",re(9)),b(this,"invertedBuffer",re(9)),b(this,"rotation",0),b(this,"filteredPointsBuffer"),b(this,"_updatedList",[]),b(this,"geometry");let{x:n=0,y:o=0}=i||{};t?(this.id=t.id||"",this.scale=1,this.layers=t.layers,this.points=re([1,n,o,n+t.width,o+t.height]),this.worldPoints=re([1,n,o,n+t.width,o+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 My;return i.applyProps(t),i}applyProps(t){let i=t.x||0,n=t.y||0;this.id=t.id;let o=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(o),this.scale=o}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 o=this.layers.slice(0,n),a=this.layers.slice(n);this.layers=[...o,t,...a]}hideInstance(){console.warn("hideInstance: not yet implemented")}getObjectsAt(t,i){if(this.rotation&&(t=this.applyRotation(t)),Wn(this.points,t,this.filteredPointsBuffer)[0]===0)return[];let n=this.layers.length,o=[];for(let a=0;a<n;a++){let l=this.layers[a];if(i&&l.isShape){let c=vi(l.points,ut(this.x,this.y));if(!l.intersects([t[1]-c[1],t[2]-c[2]]))continue}if(Wn(vi(l.points,ut(this.x,this.y)),t,this.filteredPointsBuffer)[0]!==0&&o.push(l),i){let c=l;o.push(...c.getObjectsAt(t,i))}}return o}applyRotation(t){if(this.rotation){let i={x:t[1],y:t[2]},n={x:t[1],y:t[4]},o={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]=Il(l,c,i.x,i.y,this.rotation),[f,y]=Il(l,c,n.x,n.y,this.rotation),[w,P]=Il(l,c,o.x,o.y,this.rotation),[v,x]=Il(l,c,a.x,a.y,this.rotation),C=Math.min(p,f,w,v),E=Math.max(p,f,w,v),T=Math.min(m,y,P,x),R=Math.max(m,y,P,x);return re([t[0],C,T,E,R])}return t}getAllPointsAt(t,i,n){let o=ai(ut(this.x,this.y),yi(this.scale),this.aggregateBuffer);this.rotation&&(t=this.applyRotation(t));let a=qm(t,this.points,this.intersectionBuffer),l=this.layers.length,c=[],p=vi(a,ai(yi(1/this.scale),ut(-this.x,-this.y),this.invertedBuffer)),m=i?ai(i,o,this.aggregateBuffer):o,f=n*this.scale;for(let y=0;y<l;y++)c.push(...this.layers[y].getAllPointsAt(p,m,f));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 o=i*this.scale;for(let a=0;a<n;a++){let l=this.layers[a].getScheduledUpdates(t,o);l&&this._updatedList.push(...l)}return this._updatedList}},Ql=class Oy extends gn{constructor(t=0,i=0,n=100,o="left-to-right"){super(),b(this,"id","world"),b(this,"_width"),b(this,"_height"),b(this,"aspectRatio"),b(this,"viewingDirection"),b(this,"aggregateBuffer",re(9)),b(this,"isDirty",!1),b(this,"zones",[]),b(this,"filteredPointsBuffer"),b(this,"selectedZone"),b(this,"triggerQueue",[]),b(this,"activatedEvents",[]),b(this,"_updatedList",[]),b(this,"translationBuffer",re(9)),b(this,"needsRecalculate",!0),b(this,"emptyPaintables",[]),b(this,"renderOrder",[]),b(this,"points"),b(this,"objects",[]),b(this,"subscriptions",[]),b(this,"_propagateEventTargets",[]),b(this,"_alreadyFlushed",[]),this._width=t,this._height=i,this.aspectRatio=Number.isNaN(t/i)?1:t/i,this.viewingDirection=o,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 Oy;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 o=[];for(let a of n)if(a.x&&a.y){let l=xe.singleBox(1,1,a.x,a.y);o.push(this.getObjectsAt(l,!0).reverse())}return o.map(a=>this.propagateEvent(t,i,a,{bubbles:!0,cancelable:!0}))}propagatePointerEvent(t,i,n,o,a={}){let l=xe.singleBox(1,1,n,o),c=this.getObjectsAt(l,!0).reverse();return this.propagateEvent(t,i,c,a)}propagateEvent(t,i,n,{bubbles:o=!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 f=c-1;f>=0;f--){this._propagateEventTargets.unshift(n[f][0]);let y=n[f][1].length;if(y)for(let w=0;w<y;w++)this._propagateEventTargets.unshift(n[f][1][w])}let p=this._propagateEventTargets.length,m=!1;for(let f=0;f<p&&(i.atlasTarget=this._propagateEventTargets[f],i.atlasWorld=this,m=this._propagateEventTargets[f].dispatchEvent(t,i)||m,!l);f++);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 o=this.appendWorldObject(t);this.renderOrder.splice(n-1,0,o/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(Qm(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),o=this.renderOrder.length;for(let c=0;c<o;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:o,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 sd(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,o,a),this.filteredPointsBuffer=re(this.points.length*2),this.triggerRepaint(),this.needsRecalculate=!0,c}scaleWorldObject(t,i){Yt(this.points.subarray(t*5,t*5+5),Rn(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){Yt(this.points.subarray(t*5,t*5+5),ut(i,n));let o=this.objects[t];o&&(o.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=Wn(this.points,t,this.filteredPointsBuffer),o=this.objects.length;this._updatedList=[];for(let a=0;a<o;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(),o=Wn(this.points,t,this.filteredPointsBuffer),a=this.renderOrder.length,l=[];for(let c=0;c<a;c++){let p=this.renderOrder[c];if(o[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 o=this.getObjectsAt(t),a=ai(yi(n),ut(-t[1],-t[2]),this.translationBuffer),l=i?ai(i,a,this.aggregateBuffer):a,c=o.length,p=[];for(let m=0;m<c;m++)o[m]&&p.push(...o[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 o=0;o<n;o++)this.subscriptions[o].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 _l=/([0-9]+(px|em)\s+)+(solid)\s+(.*)/g,Ml={},rb=["backgroundColor","opacity","boxShadow","borderColor","borderWidth","borderStyle","outlineColor","outlineWidth","outlineOffset","outlineStyle"],As=class extends gn{constructor(){super(),b(this,"id"),b(this,"type","spacial-content"),b(this,"points"),b(this,"hoverEvents",!1),b(this,"activeEvents",!1),b(this,"display",{x:0,y:0,scale:1,width:-1,height:-1,points:re(5)}),b(this,"_parsed",{border:{id:null,match:[]},outline:{id:null,match:[]}}),b(this,"hovering"),b(this,"pressing"),b(this,"props",{}),b(this,"addHover",()=>{this.hovering=!0,this.__revision++}),b(this,"removeHover",()=>{this.hovering=!1,this.pressing=!1,this.__revision++}),b(this,"addPress",()=>{this.pressing=!0,this.__revision++}),b(this,"removePress",()=>{this.pressing=!1,this.__revision++}),this.id=ql(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=Ml[i]||_l.exec(i)||_l.exec(i);n&&(this._parsed.border.id=i,this._parsed.border.match=Ml[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=Ml[e.style.outline]||_l.exec(e.style.outline)||_l.exec(e.style.outline);n&&(this._parsed.outline.id=e.style.outline,this._parsed.outline.match=Ml[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 rb)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++}},Bl=class extends gn{constructor(){super(),b(this,"type","spacial-content"),b(this,"id"),b(this,"points"),b(this,"color","#000"),b(this,"backgroundColor"),b(this,"hovering"),b(this,"pressing"),b(this,"text",""),b(this,"display",{x:0,y:0,scale:1,width:100,height:100,points:re(5)}),b(this,"className"),b(this,"html"),b(this,"interactive",!1),b(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:o,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),o&&(this.backgroundColor=o),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,Ol=Math.sqrt,Cs=Math.sin,vy=Math.cos,Rs=Math.PI,Vl=1.70158,kl=Vl*1.525,xy=Vl+1,Sy=2*Rs/3,wy=2*Rs/4.5,Ll=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},Gn={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-vy(e*Rs/2)},easeOutSine:function(e){return Cs(e*Rs/2)},easeInOutSine:function(e){return-(vy(Rs*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-Ol(1-ct(e,2))},easeOutCirc:function(e){return Ol(1-ct(e-1,2))},easeInOutCirc:function(e){return e<.5?(1-Ol(1-ct(2*e,2)))/2:(Ol(1-ct(-2*e+2,2))+1)/2},easeInBack:function(e){return xy*e*e*e-Vl*e*e},easeOutBack:function(e){return 1+xy*ct(e-1,3)+Vl*ct(e-1,2)},easeInOutBack:function(e){return e<.5?ct(2*e,2)*((kl+1)*2*e-kl)/2:(ct(2*e-2,2)*((kl+1)*(e*2-2)+kl)+2)/2},easeInElastic:function(e){return e===0?0:e===1?1:-ct(2,10*e-10)*Cs((e*10-10.75)*Sy)},easeOutElastic:function(e){return e===0?0:e===1?1:ct(2,-10*e)*Cs((e*10-.75)*Sy)+1},easeInOutElastic:function(e){return e===0?0:e===1?1:e<.5?-(ct(2,20*e-10)*Cs((20*e-11.125)*wy))/2:ct(2,-20*e+10)*Cs((20*e-11.125)*wy)/2+1},easeInBounce:function(e){return 1-Ll(1-e)},easeOutBounce:Ll,easeInOutBounce:function(e){return e<.5?(1-Ll(1-2*e))/2:(1+Ll(2*e-1))/2}},ob=class{constructor(e){b(this,"runtime"),b(this,"pendingTransition"),this.runtime=e,this.pendingTransition={from:re(5),to:re(5),elapsed_time:0,done:!0,total_time:0,timingFunction:Gn.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,o=i.total_time===0?1:n===0?0:i.timingFunction(n);e[1]=i.from[1]+(i.to[1]-i.from[1])*o,e[2]=i.from[2]+(i.to[2]-i.from[2])*o,e[3]=i.from[3]+(i.to[3]-i.from[3])*o,e[4]=i.from[4]+(i.to[4]-i.from[4])*o,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:Gn.easeOutExpo}}))}}zoomTo(e,{origin:t,stream:i=!1,transition:n}={}){let o=this.runtime.getZoomedPosition(e,{origin:t}),a=Math.abs(1-e);this.applyTransition(o,n,{duration:2e3*a,easing:Gn.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:Gn.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||Gn.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:Gn.easeOutExpo,constrain:!0}),this.runtime.updateNextFrame()}},jR=Number.MIN_VALUE+1,Yl=class{constructor(e,t,i,n=[],o){b(this,"id",ql()),b(this,"ready",!1),b(this,"renderer"),b(this,"world"),b(this,"target"),b(this,"homePosition"),b(this,"manualHomePosition"),b(this,"manualFocalPosition"),b(this,"focalPosition"),b(this,"transitionManager"),b(this,"aggregate"),b(this,"transformBuffer",re(500)),b(this,"lastTarget",re(5)),b(this,"zoomBuffer",re(5)),b(this,"logNextRender",!1),b(this,"pendingUpdate",!0),b(this,"isCommitting",!1),b(this,"firstRender",!0),b(this,"lastTime"),b(this,"stopId"),b(this,"mode","explore"),b(this,"controllers",[]),b(this,"controllersRunning",!1),b(this,"controllerStopFunctions",[]),b(this,"maxScaleFactor",1),b(this,"_viewerToWorld",{x:0,y:0}),b(this,"_lastGoodScale",1),b(this,"hooks",{useFrame:[],useBeforeFrame:[],useAfterPaint:[],useAfterFrame:[]}),b(this,"fpsLimit"),b(this,"options"),b(this,"hookOptions",{filters:{grayscale:0,contrast:0,brightness:0,saturate:0,sepia:0,invert:0,hueRotate:0,blur:0}}),b(this,"_viewport",{x:0,y:0,width:0,height:0}),b(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}),b(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(),f=this.renderer.getPointsAt(this.world,this.target,this.aggregate,m),y=f.length;for(let v=0;v<y;v++){let x=f[v][0],C=f[v][1],E=f[v][2],T=E?vi(C,E,this.transformBuffer):C;this.renderer.prepareLayer(x,x.__parent&&E?vi(x.__parent.crop||x.__parent.points,E):T);let R=T.length/5;for(let G=0;G<R;G++){let V=G*5;T[V]!==0&&(this.renderer.paint(x,G,T[V+1],T[V+2],T[V+3]-T[V+1],T[V+4]-T[V+2]),this.hook("useAfterPaint",x))}this.renderer.finishLayer(x,C)}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 w=this.world.getScheduledUpdates(this.target,m),P=w.length;if(P>0)for(let v=0;v<P;v++){let x=w[P-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,...o||{}},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 ob(this),this.aggregate=yi(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,o=this.height*t,a=i.width/n,l=i.height/o,c=n/o;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 o=t/e,a=n/i;this.target[3]=this.target[1]+(this.target[3]-this.target[1])*o,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,o=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:o-a*2,height:o-l*2}),this.pendingUpdate=!0}else{let m=this.width-this.height;this.focalPosition=xe.projection({x:c+m/2,y:p,width:o-a*2,height:o-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:o,minY:a,maxY:l}=this.getBounds({target:e,padding:t}),c=!1,p=i?e:re(e),m=Math.round(e[3]-e[1]),f=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+f),o<e[1]&&(c=!0,p[1]=o,p[3]=o+m),l<e[2]&&(c=!0,p[2]=l,p[4]=l+f),[c,p]}getBounds(e){let t=e.target||this.target,i=e.padding,n=this.options.visibilityRatio,o=Math.abs(1-n);if(this.world.hasActiveZone()){let E=this.world.getActiveZone();if(E){let T=t[3]-t[1]<E.points[3]-E.points[1],R=t[4]-t[2]<E.points[4]-E.points[2];return{minX:T?E.points[1]-i:E.points[1]+(E.points[3]-E.points[1])/2-(t[3]-t[1])/2,maxX:R?E.points[2]-i:E.points[2]+(E.points[4]-E.points[2])/2-(t[4]-t[2])/2,minY:T?E.points[3]+i:E.points[1]+(E.points[3]-E.points[1])/2-(t[3]-t[1])/2,maxY:R?E.points[4]+i:E.points[2]+(E.points[4]-E.points[2])/2-(t[4]-t[2])/2}}}let a=t[3]-t[1],l=this.world.width,c=-a*o,p=l-a-c,m=t[4]-t[2],f=this.world.height,y=-m*o,w=f-m-y,P=Math.round(Math.max(c,p)),v=Math.round(Math.min(c,p)),x=Math.round(Math.max(y,w)),C=Math.round(Math.min(y,w));return{minX:v,maxX:P,minY:C,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,o=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,f=this.options.maxUnderZoom,y=Math.max(m||1,this.options.maxOverZoom),w=1/e,P=o*w;if(w<1){let x=a*o,C=l*o,E=this.world.width/x,T=this.world.height/C;if(E>T){let R=this.world.width*P,G=~~(a*o)*f;R<G&&(e=this.world.width*o/(a*o*f))}else{let R=this.world.height*P,G=~~(l*o)*f;R<G&&(e=this.world.height*o/(l*o*f))}}else P>y&&(e=o/y);let v=vi(this.target,Rn(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:o=0}){let a=this.width,l=this.height,c=i/a<n/l,p=e-o,m=t-o,f=i+o*2,y=n+o*2;if(c){let P=y/l*a;return{x:p-(P-f)/2,y:m,width:P,height:y}}let w=f/a*l;return{x:p,y:m-(w-y)/2,width:f,height:w}}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 o=xe.singleBox(i,n,e,t);return Yt(o,ai(yi(this.getScaleFactor()),ut(-this.target[1],-this.target[2]))),{x:o[1],y:o[2],width:o[3]-o[1],height:o[4]-o[2],strand:o}}setScale(e,t){Yt(this.target,Rn(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}},zl=/([0-9]+(px|em)\s+)+(solid)\s+(.*)/g,Nl={},sb=["backgroundColor","opacity","boxShadow","borderColor","borderWidth","borderStyle","outlineColor","outlineWidth","outlineOffset","outlineStyle"],ky=class extends gn{constructor(){super(),b(this,"id"),b(this,"type","spacial-content"),b(this,"isShape",!0),b(this,"points"),b(this,"hoverEvents",!1),b(this,"activeEvents",!1),b(this,"display",{x:0,y:0,scale:1,width:-1,height:-1,points:re(5)}),b(this,"boundingBox",null),b(this,"_parsed",{border:{id:null,match:[]},outline:{id:null,match:[]}}),b(this,"hovering"),b(this,"pressing"),b(this,"props",{}),b(this,"shape",{type:"none"}),b(this,"addHover",()=>{this.hovering=!0,this.__revision++}),b(this,"removeHover",()=>{this.hovering=!1,this.pressing=!1,this.__revision++}),b(this,"addPress",()=>{this.pressing=!0,this.__revision++}),b(this,"removePress",()=>{this.pressing=!1,this.__revision++}),this.id=ql(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])),o=Math.max(0,...e.map(a=>a[1]));this.boundingBox={x:t,y:i,width:n-t,height:o-i};return}this.boundingBox=null}intersects(e){if(!e||this.shape.type==="none")return!1;let[t,i]=e,n=this.shape.points,o=this.boundingBox;if(o||(this.updateBoundingBox(),o=this.boundingBox),!o||t<o.x||t>o.x+o.width||i<o.y||i>o.height+o.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 o=0;o<n;o++)if(e.points[o][0]!==this.shape.points[o][0]||e.points[o][1]!==this.shape.points[o][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=Nl[i]||zl.exec(i)||zl.exec(i);n&&(this._parsed.border.id=i,this._parsed.border.match=Nl[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=Nl[e.style.outline]||zl.exec(e.style.outline)||zl.exec(e.style.outline);n&&(this._parsed.outline.id=e.style.outline,this._parsed.outline.match=Nl[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 sb)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++}},by=/(-?[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,Py={},ab=typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes("firefox"),Fl={},lb=class{constructor(e,t){b(this,"canvas"),b(this,"ctx"),b(this,"options"),b(this,"imagesPending",0),b(this,"imagesLoaded",0),b(this,"imageIdsLoaded",[]),b(this,"frameIsRendering",!1),b(this,"pendingDrawCall",!1),b(this,"firstMeaningfulPaint",!1),b(this,"parallelTasks",8),b(this,"frameTasks",0),b(this,"loadingQueueOrdered",!0),b(this,"loadingQueue",[]),b(this,"currentTask",Promise.resolve()),b(this,"tasksRunning",0),b(this,"stats"),b(this,"averageJobTime",64),b(this,"lastKnownScale",1),b(this,"visible",[]),b(this,"previousVisible",[]),b(this,"rendererPosition"),b(this,"dpi"),b(this,"drawCalls",[]),b(this,"lastPaintedObject"),b(this,"hostCache"),b(this,"invalidated",[]),b(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--}))}}),b(this,"_scheduled",0),b(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 Xm({maxSize:1024*512*512,dispose:(i,n,o)=>{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(),o=n.width/e,a=n.height/t,l=(o<a?a:o)*(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 o=this.getCanvasDims();if(this.ctx.globalAlpha=1,this.ctx.fillStyle=this.options.background||"rgb(0, 0, 0)",this.ctx.fillRect(0,0,o.width,o.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,o){let a=e.__owner.value;if(a&&a.rotation){this.ctx.save();let l=t+n/2,c=i+o/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,o,a){let l=this.ctx.globalAlpha;if(e instanceof $n||e instanceof Is){if(e.display.rotation){this.ctx.save();let m=i+o/2,f=n+a/2;e.crop&&(m-=e.crop[t*5+1],f-=e.crop[t*5+2]),this.ctx.translate(m,f),this.ctx.rotate(e.display.rotation*Math.PI/180),this.ctx.translate(-m,-f)}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,f=this.getCanvasDims();if((m.indices.indexOf(t)===-1||this.invalidated.indexOf(m.canvases[t])!==-1)&&this.schedulePaintToCanvas(m,e,t,jl({x:i+o/2,y:n+o/2},{x:f.width/2,y:f.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 w=[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];w[0]+=e.cropData.x/e.display.scale,w[1]+=e.cropData.y/e.display.scale;let P=e.x*this.lastKnownScale,v=e.y*this.lastKnownScale,x=[i+P,n+v,o,a];x[0]+=P,x[1]+=v,this.ctx.drawImage(y,w[0],w[1],w[2],w[3],x[0],x[1],x[2]+1,x[3]+1)}}else ab?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,o+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,o+Number.MIN_VALUE+.5,a+Number.MIN_VALUE+.5)}catch{}e.display.rotation&&this.ctx.restore()}let c=e instanceof As&&this.options.box,p=e instanceof ky&&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:{}),f=e.props.relativeStyle?1:o/e.width;typeof m.opacity<"u"&&(this.ctx.globalAlpha=m.opacity);let y=0;typeof m.borderWidth<"u"&&(y=parseInt(m.borderWidth,10)*f);let w=0;typeof m.outlineWidth<"u"&&(w=parseInt(m.outlineWidth,10)*f);let P=0;if(typeof m.outlineOffset<"u"&&(P=parseInt(m.outlineOffset,10)*f),m.borderColor&&(this.ctx.strokeStyle=m.borderColor),m.boxShadow){let v=m.boxShadow.split(/,(?![^(]*\))/);for(let x of v){let C=Py[x]||by.exec(x)||by.exec(x);Py[x]=C,C&&(this.ctx.save(),this.ctx.shadowOffsetX=parseInt(C[1])*this.dpi*f,this.ctx.shadowOffsetY=parseInt(C[3])*this.dpi*f,this.ctx.shadowBlur=parseInt(C[5])*this.dpi*f,this.ctx.shadowColor=C[9],this.ctx.fillStyle="rgba(0,0,0,1)",this.ctx.fillRect(i+y,n+y,o,a),this.ctx.restore())}}if(this.ctx.fillStyle=m.backgroundColor||"transparent",this.ctx.lineWidth=y,p){let v=e.shape,x=v.points||[],C=x.length;this.ctx.beginPath();for(let E=0;E<C;E++)this.ctx.lineTo(i+x[E][0]*this.lastKnownScale,n+x[E][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,o+y,a+y),this.ctx.fillRect(i+y,n+y,o,a);w&&(m.outlineColor&&(this.ctx.strokeStyle=m.outlineColor),this.ctx.lineWidth=w,this.ctx.strokeRect(i-w/2-P,n-w/2-P,o+y*2+w+P*2,a+y*2+w+P*2))}this.ctx.globalAlpha=l}}loadImage(e,t,i,n=!1){if(Fl[e]&&Fl[e].naturalWidth>0){t(Fl[e]);return}try{let o=!1;n||setTimeout(()=>{o||this.loadImage(e,t,i,!0)},3e3);let a=document.createElement("img");a.decoding="auto",a.onload=function(){o=!0,t(a),Fl[e]=a,a.onload=null},this.options.crossOrigin&&(a.crossOrigin="anonymous"),a.src=e,a.complete&&a.onload({}),a.width}catch(o){console.log("image error",o),i(o)}}schedulePaintToCanvas(e,t,i,n){this.imagesPending++,e.indices.push(i);let o=`${t.id}--${t.display.scale}-${i}`,a=this.invalidated.indexOf(o);a!==-1&&this.invalidated.splice(a,1),e.canvases[i]=o,t.__host.canvas.loading=!0,this.loadingQueueOrdered=!1,this.loadingQueue.push({id:o,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:o,scale:t.display.scale,distance:n,task:()=>new Promise(m=>{this.imageIdsLoaded.includes(o)||(this.imagesLoaded++,this.imageIdsLoaded.push(o)),e.loaded.push(i),e.loaded.length===e.indices.length&&(e.loading=!1);let f=t.display.points.slice(i*5,i*5+5),y=document.createElement("canvas"),w=y.getContext("2d");y.width=f[3]-f[1],y.height=f[4]-f[2],this.hostCache.set(e.canvases[i],y),this.drawCalls.push(()=>{w.drawImage(p,0,0,f[3]-f[1],f[4]-f[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 $n||e instanceof Is)&&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 o=t[3]-t[1]<n.points[3]-n.points[1],a=t[4]-t[2]<n.points[4]-n.points[2];return{x1:o?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:o?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=[]}},Ly=class{constructor(e){b(this,"renderers",[]),b(this,"length");for(let t of e)t&&this.renderers.push(t);this.length=this.renderers.length}afterFrame(e,t,i,n){for(let o=0;o<this.length;o++)this.renderers[o].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 o=0;o<this.length;o++)this.renderers[o].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,o,a){for(let l=0;l<this.length;l++)this.renderers[l].paint(e,t,i,n,o,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()}},ub=class{constructor(e){b(this,"canvas"),b(this,"context"),b(this,"heightRatio",1),b(this,"widthRatio",1),b(this,"target",new Float32Array(5)),b(this,"initialWidth"),b(this,"initialHeight"),b(this,"bounds"),b(this,"aggregate"),b(this,"delta",0),b(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=yi(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,o=this.initialHeight/e.height,a=this.widthRatio>this.heightRatio?n:o;if(this.target=i,this.bounds){let l=e.getPointsAt(this.bounds,this.aggregate,a);for(let[c,p]of l)if(c instanceof $n&&c.__host.canvas){let m=p.length/5;for(let f=0;f<m;f++)if(c.__host.canvas.canvases[f]){let y={x1:p[f+1]*a,y1:p[f+2]*a,width:(p[f+3]-p[f+1])*a,height:(p[f+4]-p[f+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,o,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 cb(e){return{x:e[1],y:e[2],width:e[3]-e[1],height:e[4]-e[2]}}var hb={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:!1,onPanInSketchMode:()=>{}},Ny=(e={})=>({start:function(t){let{zoomWheelConstant:i,enableWheel:n,enableClickToZoom:o}={...hb,...e},a={pointerStart:{x:0,y:0},isPressing:!1,mousemoveBuffer:re(5),multiTouch:{distance:0}};t.world.activatedEvents.push("onMouseUp","onMouseDown","onMouseMove","onTouchStart","onTouchEnd","onTouchMove","onPointerUp","onPointerDown","onPointerMove");let l=[],c=[],p=-1;function m(L){for(let F=0;F<l.length;F++)if(l[F].pointerId==L.pointerId){l.splice(F,1),c.splice(F,1);break}}function f(L){l.push(L),c.push({...L.atlas||{}})}function y(L){for(let F=0;F<l.length;F++)if(L.pointerId==l[F].pointerId){l[F]=L,c[F]={...L.atlas||{}};break}if(l.length==2){let F=Math.abs(l[0].clientX-l[1].clientX),j=c[0].x>c[1].x?c[0].x-c[1].x:c[1].x-c[0].x,J=c[0].y>c[1].y?c[0].y-c[1].y:c[1].y-c[0].y;p>0&&(F>p&&t.world.zoomTo(.95,{x:j/2,y:J/2},!0),F<p&&t.world.zoomTo(1.05,{x:j/2,y:J/2},!0)),p=F}}function w(L){m(L),l.length<2&&(p=-1)}function P(){t.world.constraintBounds(),C=0}function v(L){if(L.which>1){a.isPressing=!1;return}t.mode==="explore"&&(L.preventDefault(),a.pointerStart.x=L.atlas.x,a.pointerStart.y=L.atlas.y,t.transitionManager.stopTransition(),a.isPressing=!0)}function x(){a.isPressing&&(t.mode==="explore"&&t.world.constraintBounds(),a.isPressing=!1)}let C=0;function E(L){if(t.mode==="explore"){if(L.atlasTouches.length===1&&(L.preventDefault(),a.pointerStart.x=L.atlasTouches[0].x,a.pointerStart.y=L.atlasTouches[0].y),L.atlasTouches.length===2){L.preventDefault();let F=L.atlasTouches[0].x,j=L.atlasTouches[1].x;a.pointerStart.x=(F+j)/2;let J=L.atlasTouches[0].y,$=L.atlasTouches[1].y;a.pointerStart.y=(J+$)/2,C=jl({x:L.touches[0].clientX,y:L.touches[0].clientY},{x:L.touches[1].clientX,y:L.touches[1].clientY})}t.transitionManager.stopTransition(),a.isPressing=!0}}function T(L){let F=null,j=null,J=!1,$=0;if(a.isPressing&&L.touches.length===2){let ne=L.touches[0].clientX,Ce=L.touches[1].clientX;F=(ne+Ce)/2;let Me=L.touches[0].clientY,ke=L.touches[1].clientY;j=(Me+ke)/2,$=jl({x:L.touches[0].clientX,y:L.touches[0].clientY},{x:L.touches[1].clientX,y:L.touches[1].clientY}),J=!0}if(a.isPressing&&L.touches.length===1){let ne=L.touches[0];F=ne.clientX,j=ne.clientY}if(F!==null&&j!==null){let ne=t.getRendererScreenPosition();if(ne){let{x:Ce,y:Me}=t.viewerToWorld(F-ne.x,j-ne.y),ke=$&&C?$/C:1;t.transitionManager.customTransition(ve=>{ve.from=re(t.target),ve.to=vi(ve.from,ai(ut(a.pointerStart.x-Ce,a.pointerStart.y-Me),Rn(1/ke,Ce,Me)),a.mousemoveBuffer),ve.elapsed_time=0,ve.total_time=0,ve.timingFunction=Gn.easeInOutExpo,ve.done=!1})}C=$}}function R(L){if(a.isPressing){let F=t.getRendererScreenPosition();if(F){let{x:j,y:J}=t.viewerToWorld(L.clientX-F.x,L.clientY-F.y);t.transitionManager.customTransition($=>{$.from=re(t.target),$.to=vi($.from,ut(a.pointerStart.x-j,a.pointerStart.y-J),a.mousemoveBuffer),$.elapsed_time=0,$.total_time=0,$.timingFunction=Gn.easeInOutExpo,$.done=!1})}}}function G(L){t.mode==="explore"&&t.world.zoomIn(L.atlas)}function V(L){let F=1+(0,zy.default)(L).spinY/i;t.world.zoomTo(F,L.atlas,!0)}t.world.addEventListener("mouseup",P),t.world.addEventListener("touchend",P),t.world.addEventListener("touchstart",E),t.world.addEventListener("mousedown",v),window.addEventListener("touchend",x),window.addEventListener("mouseup",x),window.addEventListener("mousemove",R),window.addEventListener("touchmove",T),o&&(t.world.activatedEvents.push("onClick"),t.world.addEventListener("click",G)),n&&(t.world.activatedEvents.push("onWheel"),t.world.addEventListener("wheel",V));let O=t.world.addLayoutSubscriber((L,F)=>{if(L==="zone-changed"&&t.transitionManager.constrainBounds({transition:{duration:0}}),L==="zoom-to"&&F&&t.transitionManager.zoomTo(F.factor,{origin:F.point,stream:F.stream}),L==="go-home"){let j=F.immediate?{duration:0}:void 0;t.transitionManager.goToRegion(cb(t.homePosition),{transition:j})}if(L==="goto-region"&&F){let j=F.immediate?{duration:0}:{};t.transitionManager.goToRegion(F,{transition:j})}L==="constrain-bounds"&&t.transitionManager.constrainBounds({transition:F?.immediate?{duration:0}:void 0})});return()=>{t.world.removeEventListener("mouseup",P),t.world.removeEventListener("touchend",P),t.world.removeEventListener("touchstart",E),t.world.removeEventListener("mousedown",v),window.removeEventListener("touchend",x),window.removeEventListener("mouseup",x),t.world.removeEventListener("mousemove",R),t.world.removeEventListener("touchmove",R),o&&t.world.removeEventListener("click",G),n&&t.world.removeEventListener("wheel",V),O()}},updatePosition(){}}),bo=Gl.default.createContext("explore");bo.displayName="Mode";var pb=()=>(0,Gl.useContext)(bo);var $l=ad.default.createContext(null);$l.displayName="Atlas";var Xl=ad.default.createContext(null);Xl.displayName="Bounds";var Ul,fb=typeof performance=="object"&&typeof performance.now=="function";if(fb){let e=performance;Ul=()=>e.now()}else{let e=Date,t=e.now();Ul=()=>e.now()-t}var mb=16;function Cy(e,t){e&&e.appendChild&&t&&e.appendChild(t)}function Dy(e,t){e&&e.removeChild&&t&&e.removeChild(t)}function gb(e,t){return Dy(e.world,t)}function yb(e,t,i){return jy(e.world,t,i)}function jy(e,t,i){e&&e instanceof Yl&&(e=e.world),e&&e.insertBefore&&e.insertBefore(t,i)}function Vy(e,t,i){if(i&&(e.applyProps&&e.applyProps(i),e instanceof gn))for(let n of Wl){let o=n.slice(2).toLowerCase();i[n]!==t[n]&&(t[n]&&e.removeEventListener(o,t[n]),e.addEventListener(o,i[n]))}}function Uy(e,t){let i=Object.keys(t),n=!1;for(let o of i)if(Wl.indexOf(o)!==-1){let a=wo[o];if(a){if(e.activatedEvents.indexOf(a)!==-1)continue;n=!0,e.activatedEvents.push(a)}}n&&e.triggerEventActivation()}var Hl=new Map,Ey={};function vb(e,{args:t=[],...i},n,o,a){if(!(n instanceof Yl)&&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=Ql.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 As;break;case"shape":l=new ky;break;case"worldObject":case"world-object":l=new sd;break;case"worldImage":case"world-image":l=new $n;break;case"texture":l=new id;break;case"compositeImage":case"composite-image":l=new nb({id:i.id,width:i.width,height:i.height,images:[],renderOptions:i.renderOptions});break;case"tiledImage":case"tiled-image":l=Is.fromTile(i.uri,i.display,i.tile,i.scaleFactor,void 0,i.format);break;case"paragraph":l=new Bl,l.text=i.children;break;default:return}return Uy(c,i),Vy(l,{},i),l}function xb(e,t){if(t instanceof Ql)e.world=t;else if(t instanceof sd)e.world.appendChild(t);else if(t)throw new Error("Invalid root")}var Ts=(0,Fy.default)({unstable_now:Ul,now:Ul,createInstance:vb,removeChild:Dy,appendChild:Cy,appendInitialChild:Cy,insertBefore:jy,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:xb,removeChildFromContainer:gb,createTextInstance(){},insertInContainerBefore:yb,prepareUpdate(e,t,i,n,o){return Uy(o.world,n),n},commitUpdate(e,t,i,n,o,a){e.applyProps&&t&&Vy(e,n,t)},finalizeInitialChildren(e){return e?.__handlers},getChildHostContext(){return Ey},getRootHostContext(){return Ey},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"),mb},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(){}});Ts.injectIntoDevTools({bundleType:0,version:By.version,rendererPackageName:"@atlas-viewer/atlas"});function ld(e,t){let i=Hl.get(e);i&&Ts.updateContainer(null,i,null,()=>{Hl.delete(e),t&&t(e)})}var Ay={render(e,t){let i=Hl.get(t);if(i)Ts.updateContainer(e,i,null);else{let n=Ts.createContainer(t,0,null,!1,null,"",()=>{},null);Ts.updateContainer(e,n,null),Hl.set(t,n)}},unmountComponentAtNode(e,t){ld(e,t)}},So=typeof window<"u"&&(window.document?.createElement||window.navigator?.product==="ReactNative")?Kl.useLayoutEffect:Kl.useEffect,Sb=mn.default.memo(({children:e,setIsReady:t,onCreated:i,bounds:n,preset:o,mode:a="explore"})=>{let l=(0,mn.useCallback)(function(c){let p=(0,mn.useRef)(!1),m=()=>{t(!0)};return(0,mn.useEffect)(()=>{if(o&&!p.current){o.runtime.goHome();let f=i&&i(o);return void(f&&f.then?f.then(m):m())}return()=>{}},[]),(0,mn.useEffect)(()=>{p.current=!0},[]),c.children},[o]);return So(()=>{if(o){let c=o.runtime;a!==c.mode&&(c.mode=a),Ay.render((0,xo.jsx)(mn.default.StrictMode,{children:(0,xo.jsx)(l,{children:(0,xo.jsx)(Xl.Provider,{value:n,children:(0,xo.jsx)(bo.Provider,{value:a,children:(0,xo.jsx)($l.Provider,{value:o,children:e})})})})}),c)}},[o,a,e]),So(()=>{if(o){let c=o.runtime;return()=>{Ay.unmountComponentAtNode(c)}}return()=>{}},[o]),null}),wb=class{constructor(e,t){b(this,"canvas"),b(this,"gl"),b(this,"program"),b(this,"fragmentShader"),b(this,"vertexShader"),b(this,"rectBuffer"),b(this,"fragmentShaderSource",`
11
+ `)+r.join(" > ")}return null},i.getPublicRootInstance=function(r){if(r=r.current,!r.child)return null;switch(r.child.tag){case 5:return ve(r.child.stateNode);default:return r.child.stateNode}},i.injectIntoDevTools=function(r){if(r={bundleType:r.bundleType,version:r.version,rendererPackageName:r.rendererPackageName,rendererConfig:r.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:c.ReactCurrentDispatcher,findHostInstanceByFiber:qw,findFiberByHostInstance:r.findFiberByHostInstance||Qw,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.2.0"},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")r=!1;else{var s=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(s.isDisabled||!s.supportsFiber)r=!0;else{try{Ia=s.inject(r),on=s}catch{}r=!!s.checkDCE}}return r},i.isAlreadyRendering=function(){return!1},i.observeVisibleRects=function(r,s,u,d){if(!Ai)throw Error(l(363));r=yd(r,s);var h=Y(r,u,d).disconnect;return{disconnect:function(){h()}}},i.registerMutableSourceForHydration=function(r,s){var u=s._getVersion;u=u(s._source),r.mutableSourceEagerHydrationData==null?r.mutableSourceEagerHydrationData=[s,u]:r.mutableSourceEagerHydrationData.push(s,u)},i.runWithPriority=function(r,s){var u=Oe;try{return Oe=r,s()}finally{Oe=u}},i.shouldError=function(){return null},i.shouldSuspend=function(){return!1},i.updateContainer=function(r,s,u,d){var h=s.current,g=Ht(),w=qn(h);return u=Gm(u),s.context===null?s.context=u:s.pendingContext=u,s=En(g,w),s.payload={element:r},d=d===void 0?null:d,d!==null&&(s.callback=d),r=Un(h,s,w),r!==null&&(Oi(r,h,w,g),Fa(r,h,w)),w},i}});var Yg=xt((AT,$g)=>{"use strict";$g.exports=Qg()});var Rs=xt((BT,Py)=>{"use strict";Py.exports=ReactDOM});var Ey=xt(uh=>{"use strict";var Cy=Rs();uh.createRoot=Cy.createRoot,uh.hydrateRoot=Cy.hydrateRoot;var DT});var Q0=xt(q0=>{"use strict";var jo=$();function KC(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var ZC=typeof Object.is=="function"?Object.is:KC,JC=jo.useState,eE=jo.useEffect,tE=jo.useLayoutEffect,iE=jo.useDebugValue;function nE(e,t){var i=t(),n=JC({inst:{value:i,getSnapshot:t}}),o=n[0].inst,a=n[1];return tE(function(){o.value=i,o.getSnapshot=t,op(o)&&a({inst:o})},[e,i,t]),eE(function(){return op(o)&&a({inst:o}),e(function(){op(o)&&a({inst:o})})},[e]),iE(i),i}function op(e){var t=e.getSnapshot;e=e.value;try{var i=t();return!ZC(e,i)}catch{return!0}}function rE(e,t){return t()}var oE=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?rE:nE;q0.useSyncExternalStore=jo.useSyncExternalStore!==void 0?jo.useSyncExternalStore:oE});var Y0=xt((d_,$0)=>{"use strict";$0.exports=Q0()});var X0=xt(G0=>{"use strict";var Nu=$(),sE=Y0();function aE(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var lE=typeof Object.is=="function"?Object.is:aE,uE=sE.useSyncExternalStore,cE=Nu.useRef,dE=Nu.useEffect,hE=Nu.useMemo,pE=Nu.useDebugValue;G0.useSyncExternalStoreWithSelector=function(e,t,i,n,o){var a=cE(null);if(a.current===null){var l={hasValue:!1,value:null};a.current=l}else l=a.current;a=hE(function(){function p(P){if(!m){if(m=!0,f=P,P=n(P),o!==void 0&&l.hasValue){var v=l.value;if(o(v,P))return y=v}return y=P}if(v=y,lE(f,P))return v;var x=n(P);return o!==void 0&&o(v,x)?v:(f=P,y=x)}var m=!1,f,y,S=i===void 0?null:i;return[function(){return p(t())},S===null?void 0:function(){return p(S())}]},[t,i,n,o]);var c=uE(e,a[0],a[1]);return dE(function(){l.hasValue=!0,l.value=c},[c]),pE(c),c}});var Z0=xt((p_,K0)=>{"use strict";K0.exports=X0()});var gS=xt((Xz,mS)=>{"use strict";(()=>{var e={296:(o,a,l)=>{var c=/^\s+|\s+$/g,p=/^[-+]0x[0-9a-f]+$/i,m=/^0b[01]+$/i,f=/^0o[0-7]+$/i,y=parseInt,S=typeof l.g=="object"&&l.g&&l.g.Object===Object&&l.g,P=typeof self=="object"&&self&&self.Object===Object&&self,v=S||P||Function("return this")(),x=Object.prototype.toString,E=Math.max,C=Math.min,T=function(){return v.Date.now()};function A(D){var M=typeof D;return!!D&&(M=="object"||M=="function")}function N(D){if(typeof D=="number")return D;if(function(O){return typeof O=="symbol"||function(K){return!!K&&typeof K=="object"}(O)&&x.call(O)=="[object Symbol]"}(D))return NaN;if(A(D)){var M=typeof D.valueOf=="function"?D.valueOf():D;D=A(M)?M+"":M}if(typeof D!="string")return D===0?D:+D;D=D.replace(c,"");var k=m.test(D);return k||f.test(D)?y(D.slice(2),k?2:8):p.test(D)?NaN:+D}o.exports=function(D,M,k){var O,K,U,G,te,Ie,ye=0,ke=!1,ve=!1,We=!0;if(typeof D!="function")throw new TypeError("Expected a function");function Ye(Fe){var B=O,Q=K;return O=K=void 0,ye=Fe,G=D.apply(Q,B)}function ft(Fe){var B=Fe-Ie;return Ie===void 0||B>=M||B<0||ve&&Fe-ye>=U}function je(){var Fe=T();if(ft(Fe))return H(Fe);te=setTimeout(je,function(B){var Q=M-(B-Ie);return ve?C(Q,U-(B-ye)):Q}(Fe))}function H(Fe){return te=void 0,We&&O?Ye(Fe):(O=K=void 0,G)}function ge(){var Fe=T(),B=ft(Fe);if(O=arguments,K=this,Ie=Fe,B){if(te===void 0)return function(Q){return ye=Q,te=setTimeout(je,M),ke?Ye(Q):G}(Ie);if(ve)return te=setTimeout(je,M),Ye(Ie)}return te===void 0&&(te=setTimeout(je,M)),G}return M=N(M)||0,A(k)&&(ke=!!k.leading,U=(ve="maxWait"in k)?E(N(k.maxWait)||0,M):U,We="trailing"in k?!!k.trailing:We),ge.cancel=function(){te!==void 0&&clearTimeout(te),ye=0,O=Ie=K=te=void 0},ge.flush=function(){return te===void 0?G:H(T())},ge}},96:(o,a,l)=>{var c="Expected a function",p=NaN,m="[object Symbol]",f=/^\s+|\s+$/g,y=/^[-+]0x[0-9a-f]+$/i,S=/^0b[01]+$/i,P=/^0o[0-7]+$/i,v=parseInt,x=typeof l.g=="object"&&l.g&&l.g.Object===Object&&l.g,E=typeof self=="object"&&self&&self.Object===Object&&self,C=x||E||Function("return this")(),T=Object.prototype.toString,A=Math.max,N=Math.min,D=function(){return C.Date.now()};function M(O){var K=typeof O;return!!O&&(K=="object"||K=="function")}function k(O){if(typeof O=="number")return O;if(function(G){return typeof G=="symbol"||function(te){return!!te&&typeof te=="object"}(G)&&T.call(G)==m}(O))return p;if(M(O)){var K=typeof O.valueOf=="function"?O.valueOf():O;O=M(K)?K+"":K}if(typeof O!="string")return O===0?O:+O;O=O.replace(f,"");var U=S.test(O);return U||P.test(O)?v(O.slice(2),U?2:8):y.test(O)?p:+O}o.exports=function(O,K,U){var G=!0,te=!0;if(typeof O!="function")throw new TypeError(c);return M(U)&&(G="leading"in U?!!U.leading:G,te="trailing"in U?!!U.trailing:te),function(Ie,ye,ke){var ve,We,Ye,ft,je,H,ge=0,Fe=!1,B=!1,Q=!0;if(typeof Ie!="function")throw new TypeError(c);function de(Ee){var qe=ve,ee=We;return ve=We=void 0,ge=Ee,ft=Ie.apply(ee,qe)}function pe(Ee){var qe=Ee-H;return H===void 0||qe>=ye||qe<0||B&&Ee-ge>=Ye}function fe(){var Ee=D();if(pe(Ee))return Ue(Ee);je=setTimeout(fe,function(qe){var ee=ye-(qe-H);return B?N(ee,Ye-(qe-ge)):ee}(Ee))}function Ue(Ee){return je=void 0,Q&&ve?de(Ee):(ve=We=void 0,ft)}function He(){var Ee=D(),qe=pe(Ee);if(ve=arguments,We=this,H=Ee,qe){if(je===void 0)return function(ee){return ge=ee,je=setTimeout(fe,ye),Fe?de(ee):ft}(H);if(B)return je=setTimeout(fe,ye),de(H)}return je===void 0&&(je=setTimeout(fe,ye)),ft}return ye=k(ye)||0,M(ke)&&(Fe=!!ke.leading,Ye=(B="maxWait"in ke)?A(k(ke.maxWait)||0,ye):Ye,Q="trailing"in ke?!!ke.trailing:Q),He.cancel=function(){je!==void 0&&clearTimeout(je),ge=0,ve=H=We=je=void 0},He.flush=function(){return je===void 0?ft:Ue(D())},He}(O,K,{leading:G,maxWait:K,trailing:te})}},703:(o,a,l)=>{"use strict";var c=l(414);function p(){}function m(){}m.resetWarningCache=p,o.exports=function(){function f(P,v,x,E,C,T){if(T!==c){var A=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 A.name="Invariant Violation",A}}function y(){return f}f.isRequired=f;var S={array:f,bigint:f,bool:f,func:f,number:f,object:f,string:f,symbol:f,any:f,arrayOf:y,element:f,elementType:f,instanceOf:y,node:f,objectOf:y,oneOf:y,oneOfType:y,shape:y,exact:y,checkPropTypes:m,resetWarningCache:p};return S.PropTypes=S,S}},697:(o,a,l)=>{o.exports=l(703)()},414:o=>{"use strict";o.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"}},t={};function i(o){var a=t[o];if(a!==void 0)return a.exports;var l=t[o]={exports:{}};return e[o](l,l.exports,i),l.exports}i.n=o=>{var a=o&&o.__esModule?()=>o.default:()=>o;return i.d(a,{a}),a},i.d=(o,a)=>{for(var l in a)i.o(a,l)&&!i.o(o,l)&&Object.defineProperty(o,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=(o,a)=>Object.prototype.hasOwnProperty.call(o,a),i.r=o=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(o,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(o,"__esModule",{value:!0})};var n={};(()=>{"use strict";i.r(n),i.d(n,{LazyLoadComponent:()=>Ae,LazyLoadImage:()=>yc,trackWindowScroll:()=>H});let o=$();var a=i.n(o),l=i(697);let c=Rs();var p=i.n(c);function m(){return typeof window<"u"&&"IntersectionObserver"in window&&"isIntersecting"in window.IntersectionObserverEntry.prototype}function f(Y){return f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(L){return typeof L}:function(L){return L&&typeof Symbol=="function"&&L.constructor===Symbol&&L!==Symbol.prototype?"symbol":typeof L},f(Y)}function y(Y,L){var X=Object.keys(Y);if(Object.getOwnPropertySymbols){var Z=Object.getOwnPropertySymbols(Y);L&&(Z=Z.filter(function(Pe){return Object.getOwnPropertyDescriptor(Y,Pe).enumerable})),X.push.apply(X,Z)}return X}function S(Y,L,X){return(L=v(L))in Y?Object.defineProperty(Y,L,{value:X,enumerable:!0,configurable:!0,writable:!0}):Y[L]=X,Y}function P(Y,L){for(var X=0;X<L.length;X++){var Z=L[X];Z.enumerable=Z.enumerable||!1,Z.configurable=!0,"value"in Z&&(Z.writable=!0),Object.defineProperty(Y,v(Z.key),Z)}}function v(Y){var L=function(X,Z){if(f(X)!=="object"||X===null)return X;var Pe=X[Symbol.toPrimitive];if(Pe!==void 0){var Te=Pe.call(X,"string");if(f(Te)!=="object")return Te;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(X)}(Y);return f(L)==="symbol"?L:String(L)}function x(Y,L){return x=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,Z){return X.__proto__=Z,X},x(Y,L)}function E(Y){return E=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(L){return L.__proto__||Object.getPrototypeOf(L)},E(Y)}var C=function(Y){Y.forEach(function(L){L.isIntersecting&&L.target.onVisible()})},T={},A=function(Y){(function(V,W){if(typeof W!="function"&&W!==null)throw new TypeError("Super expression must either be null or a function");V.prototype=Object.create(W&&W.prototype,{constructor:{value:V,writable:!0,configurable:!0}}),Object.defineProperty(V,"prototype",{writable:!1}),W&&x(V,W)})(Be,Y);var L,X,Z,Pe,Te=(Z=Be,Pe=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 V,W=E(Z);if(Pe){var ue=E(this).constructor;V=Reflect.construct(W,arguments,ue)}else V=W.apply(this,arguments);return function(oe,se){if(se&&(f(se)==="object"||typeof se=="function"))return se;if(se!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Re){if(Re===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Re}(oe)}(this,V)});function Be(V){var W;if(function(oe,se){if(!(oe instanceof se))throw new TypeError("Cannot call a class as a function")}(this,Be),(W=Te.call(this,V)).supportsObserver=!V.scrollPosition&&V.useIntersectionObserver&&m(),W.supportsObserver){var ue=V.threshold;W.observer=function(oe){return T[oe]=T[oe]||new IntersectionObserver(C,{rootMargin:oe+"px"}),T[oe]}(ue)}return W}return L=Be,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 V=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:V.y+W.bottom+se,left:V.x+W.left+oe,right:V.x+W.right+oe,top:V.y+W.top+se}}},{key:"isPlaceholderInViewport",value:function(){if(typeof window>"u"||!this.placeholder)return!1;var V=this.props,W=V.scrollPosition,ue=V.threshold,oe=this.getPlaceholderBoundingBox(W),se=W.y+window.innerHeight,Re=W.x,Ke=W.x+window.innerWidth,Ze=W.y;return Ze-ue<=oe.bottom&&se+ue>=oe.top&&Re-ue<=oe.right&&Ke+ue>=oe.left}},{key:"updateVisibility",value:function(){this.isPlaceholderInViewport()&&this.props.onVisible()}},{key:"render",value:function(){var V=this,W=this.props,ue=W.className,oe=W.height,se=W.placeholder,Re=W.style,Ke=W.width;if(se&&typeof se.type!="function")return a().cloneElement(se,{ref:function(Qe){return V.placeholder=Qe}});var Ze=function(Qe){for(var Ct=1;Ct<arguments.length;Ct++){var st=arguments[Ct]!=null?arguments[Ct]:{};Ct%2?y(Object(st),!0).forEach(function(Et){S(Qe,Et,st[Et])}):Object.getOwnPropertyDescriptors?Object.defineProperties(Qe,Object.getOwnPropertyDescriptors(st)):y(Object(st)).forEach(function(Et){Object.defineProperty(Qe,Et,Object.getOwnPropertyDescriptor(st,Et))})}return Qe}({display:"inline-block"},Re);return Ke!==void 0&&(Ze.width=Ke),oe!==void 0&&(Ze.height=oe),a().createElement("span",{className:ue,ref:function(Qe){return V.placeholder=Qe},style:Ze},se)}}],X&&P(L.prototype,X),Object.defineProperty(L,"prototype",{writable:!1}),Be}(a().Component);A.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])},A.defaultProps={className:"",placeholder:null,threshold:100,useIntersectionObserver:!0};let N=A;var D=i(296),M=i.n(D),k=i(96),O=i.n(k),K=function(Y){var L=getComputedStyle(Y,null);return L.getPropertyValue("overflow")+L.getPropertyValue("overflow-y")+L.getPropertyValue("overflow-x")};let U=function(Y){if(!(Y instanceof HTMLElement))return window;for(var L=Y;L&&L instanceof HTMLElement;){if(/(scroll|auto)/.test(K(L)))return L;L=L.parentNode}return window};function G(Y){return G=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(L){return typeof L}:function(L){return L&&typeof Symbol=="function"&&L.constructor===Symbol&&L!==Symbol.prototype?"symbol":typeof L},G(Y)}var te=["delayMethod","delayTime"];function Ie(){return Ie=Object.assign?Object.assign.bind():function(Y){for(var L=1;L<arguments.length;L++){var X=arguments[L];for(var Z in X)Object.prototype.hasOwnProperty.call(X,Z)&&(Y[Z]=X[Z])}return Y},Ie.apply(this,arguments)}function ye(Y,L){for(var X=0;X<L.length;X++){var Z=L[X];Z.enumerable=Z.enumerable||!1,Z.configurable=!0,"value"in Z&&(Z.writable=!0),Object.defineProperty(Y,(Pe=function(Te,Be){if(G(Te)!=="object"||Te===null)return Te;var V=Te[Symbol.toPrimitive];if(V!==void 0){var W=V.call(Te,"string");if(G(W)!=="object")return W;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Te)}(Z.key),G(Pe)==="symbol"?Pe:String(Pe)),Z)}var Pe}function ke(Y,L){return ke=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,Z){return X.__proto__=Z,X},ke(Y,L)}function ve(Y,L){if(L&&(G(L)==="object"||typeof L=="function"))return L;if(L!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return We(Y)}function We(Y){if(Y===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Y}function Ye(Y){return Ye=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(L){return L.__proto__||Object.getPrototypeOf(L)},Ye(Y)}var ft=function(){return typeof window>"u"?0:window.scrollX||window.pageXOffset},je=function(){return typeof window>"u"?0:window.scrollY||window.pageYOffset};let H=function(Y){var L=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&&ke(ue,oe)})(W,X);var Z,Pe,Te,Be,V=(Te=W,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 ue,oe=Ye(Te);if(Be){var se=Ye(this).constructor;ue=Reflect.construct(oe,arguments,se)}else ue=oe.apply(this,arguments);return ve(this,ue)});function W(ue){var oe;if(function(Re,Ke){if(!(Re instanceof Ke))throw new TypeError("Cannot call a class as a function")}(this,W),(oe=V.call(this,ue)).useIntersectionObserver=ue.useIntersectionObserver&&m(),oe.useIntersectionObserver)return ve(oe);var se=oe.onChangeScroll.bind(We(oe));return ue.delayMethod==="debounce"?oe.delayedScroll=M()(se,ue.delayTime):ue.delayMethod==="throttle"&&(oe.delayedScroll=O()(se,ue.delayTime)),oe.state={scrollPosition:{x:ft(),y:je()}},oe.baseComponentRef=a().createRef(),oe}return Z=W,(Pe=[{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:ft(),y:je()}})}},{key:"render",value:function(){var ue=this.props,oe=(ue.delayMethod,ue.delayTime,function(Re,Ke){if(Re==null)return{};var Ze,Qe,Ct=function(Et,Bn){if(Et==null)return{};var Ui,mr,rs={},ba=Object.keys(Et);for(mr=0;mr<ba.length;mr++)Ui=ba[mr],Bn.indexOf(Ui)>=0||(rs[Ui]=Et[Ui]);return rs}(Re,Ke);if(Object.getOwnPropertySymbols){var st=Object.getOwnPropertySymbols(Re);for(Qe=0;Qe<st.length;Qe++)Ze=st[Qe],Ke.indexOf(Ze)>=0||Object.prototype.propertyIsEnumerable.call(Re,Ze)&&(Ct[Ze]=Re[Ze])}return Ct}(ue,te)),se=this.useIntersectionObserver?null:this.state.scrollPosition;return a().createElement(Y,Ie({forwardRef:this.baseComponentRef,scrollPosition:se},oe))}}])&&ye(Z.prototype,Pe),Object.defineProperty(Z,"prototype",{writable:!1}),W}(a().Component);return L.propTypes={delayMethod:l.PropTypes.oneOf(["debounce","throttle"]),delayTime:l.PropTypes.number,useIntersectionObserver:l.PropTypes.bool},L.defaultProps={delayMethod:"throttle",delayTime:300,useIntersectionObserver:!0},L};function ge(Y){return ge=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(L){return typeof L}:function(L){return L&&typeof Symbol=="function"&&L.constructor===Symbol&&L!==Symbol.prototype?"symbol":typeof L},ge(Y)}function Fe(Y,L){for(var X=0;X<L.length;X++){var Z=L[X];Z.enumerable=Z.enumerable||!1,Z.configurable=!0,"value"in Z&&(Z.writable=!0),Object.defineProperty(Y,(Pe=function(Te,Be){if(ge(Te)!=="object"||Te===null)return Te;var V=Te[Symbol.toPrimitive];if(V!==void 0){var W=V.call(Te,"string");if(ge(W)!=="object")return W;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Te)}(Z.key),ge(Pe)==="symbol"?Pe:String(Pe)),Z)}var Pe}function B(Y,L){return B=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,Z){return X.__proto__=Z,X},B(Y,L)}function Q(Y){return Q=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(L){return L.__proto__||Object.getPrototypeOf(L)},Q(Y)}var de=function(Y){(function(V,W){if(typeof W!="function"&&W!==null)throw new TypeError("Super expression must either be null or a function");V.prototype=Object.create(W&&W.prototype,{constructor:{value:V,writable:!0,configurable:!0}}),Object.defineProperty(V,"prototype",{writable:!1}),W&&B(V,W)})(Be,Y);var L,X,Z,Pe,Te=(Z=Be,Pe=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 V,W=Q(Z);if(Pe){var ue=Q(this).constructor;V=Reflect.construct(W,arguments,ue)}else V=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 function(Re){if(Re===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Re}(oe)}(this,V)});function Be(V){return function(W,ue){if(!(W instanceof ue))throw new TypeError("Cannot call a class as a function")}(this,Be),Te.call(this,V)}return L=Be,(X=[{key:"render",value:function(){return a().createElement(N,this.props)}}])&&Fe(L.prototype,X),Object.defineProperty(L,"prototype",{writable:!1}),Be}(a().Component);let pe=H(de);function fe(Y){return fe=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(L){return typeof L}:function(L){return L&&typeof Symbol=="function"&&L.constructor===Symbol&&L!==Symbol.prototype?"symbol":typeof L},fe(Y)}function Ue(Y,L){for(var X=0;X<L.length;X++){var Z=L[X];Z.enumerable=Z.enumerable||!1,Z.configurable=!0,"value"in Z&&(Z.writable=!0),Object.defineProperty(Y,(Pe=function(Te,Be){if(fe(Te)!=="object"||Te===null)return Te;var V=Te[Symbol.toPrimitive];if(V!==void 0){var W=V.call(Te,"string");if(fe(W)!=="object")return W;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Te)}(Z.key),fe(Pe)==="symbol"?Pe:String(Pe)),Z)}var Pe}function He(Y,L){return He=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,Z){return X.__proto__=Z,X},He(Y,L)}function Ee(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(L){return L.__proto__||Object.getPrototypeOf(L)},qe(Y)}var ee=function(Y){(function(V,W){if(typeof W!="function"&&W!==null)throw new TypeError("Super expression must either be null or a function");V.prototype=Object.create(W&&W.prototype,{constructor:{value:V,writable:!0,configurable:!0}}),Object.defineProperty(V,"prototype",{writable:!1}),W&&He(V,W)})(Be,Y);var L,X,Z,Pe,Te=(Z=Be,Pe=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 V,W=qe(Z);if(Pe){var ue=qe(this).constructor;V=Reflect.construct(W,arguments,ue)}else V=W.apply(this,arguments);return function(oe,se){if(se&&(fe(se)==="object"||typeof se=="function"))return se;if(se!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Ee(oe)}(this,V)});function Be(V){var W;(function(Ke,Ze){if(!(Ke instanceof Ze))throw new TypeError("Cannot call a class as a function")})(this,Be),W=Te.call(this,V);var ue=V.afterLoad,oe=V.beforeLoad,se=V.scrollPosition,Re=V.visibleByDefault;return W.state={visible:Re},Re&&(oe(),ue()),W.onVisible=W.onVisible.bind(Ee(W)),W.isScrollTracked=!!(se&&Number.isFinite(se.x)&&se.x>=0&&Number.isFinite(se.y)&&se.y>=0),W}return L=Be,(X=[{key:"componentDidUpdate",value:function(V,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 V=this.props,W=V.className,ue=V.delayMethod,oe=V.delayTime,se=V.height,Re=V.placeholder,Ke=V.scrollPosition,Ze=V.style,Qe=V.threshold,Ct=V.useIntersectionObserver,st=V.width;return this.isScrollTracked||Ct&&m()?a().createElement(N,{className:W,height:se,onVisible:this.onVisible,placeholder:Re,scrollPosition:Ke,style:Ze,threshold:Qe,useIntersectionObserver:Ct,width:st}):a().createElement(pe,{className:W,delayMethod:ue,delayTime:oe,height:se,onVisible:this.onVisible,placeholder:Re,style:Ze,threshold:Qe,width:st})}}])&&Ue(L.prototype,X),Object.defineProperty(L,"prototype",{writable:!1}),Be}(a().Component);ee.propTypes={afterLoad:l.PropTypes.func,beforeLoad:l.PropTypes.func,useIntersectionObserver:l.PropTypes.bool,visibleByDefault:l.PropTypes.bool},ee.defaultProps={afterLoad:function(){return{}},beforeLoad:function(){return{}},useIntersectionObserver:!0,visibleByDefault:!1};let Ae=ee;function Se(Y){return Se=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(L){return typeof L}:function(L){return L&&typeof Symbol=="function"&&L.constructor===Symbol&&L!==Symbol.prototype?"symbol":typeof L},Se(Y)}var Ei=["afterLoad","beforeLoad","delayMethod","delayTime","effect","placeholder","placeholderSrc","scrollPosition","threshold","useIntersectionObserver","visibleByDefault","wrapperClassName","wrapperProps"];function ti(Y,L){var X=Object.keys(Y);if(Object.getOwnPropertySymbols){var Z=Object.getOwnPropertySymbols(Y);L&&(Z=Z.filter(function(Pe){return Object.getOwnPropertyDescriptor(Y,Pe).enumerable})),X.push.apply(X,Z)}return X}function zt(Y){for(var L=1;L<arguments.length;L++){var X=arguments[L]!=null?arguments[L]:{};L%2?ti(Object(X),!0).forEach(function(Z){fi(Y,Z,X[Z])}):Object.getOwnPropertyDescriptors?Object.defineProperties(Y,Object.getOwnPropertyDescriptors(X)):ti(Object(X)).forEach(function(Z){Object.defineProperty(Y,Z,Object.getOwnPropertyDescriptor(X,Z))})}return Y}function fi(Y,L,X){return(L=wa(L))in Y?Object.defineProperty(Y,L,{value:X,enumerable:!0,configurable:!0,writable:!0}):Y[L]=X,Y}function Ai(){return Ai=Object.assign?Object.assign.bind():function(Y){for(var L=1;L<arguments.length;L++){var X=arguments[L];for(var Z in X)Object.prototype.hasOwnProperty.call(X,Z)&&(Y[Z]=X[Z])}return Y},Ai.apply(this,arguments)}function gc(Y,L){for(var X=0;X<L.length;X++){var Z=L[X];Z.enumerable=Z.enumerable||!1,Z.configurable=!0,"value"in Z&&(Z.writable=!0),Object.defineProperty(Y,wa(Z.key),Z)}}function wa(Y){var L=function(X,Z){if(Se(X)!=="object"||X===null)return X;var Pe=X[Symbol.toPrimitive];if(Pe!==void 0){var Te=Pe.call(X,"string");if(Se(Te)!=="object")return Te;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(X)}(Y);return Se(L)==="symbol"?L:String(L)}function is(Y,L){return is=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,Z){return X.__proto__=Z,X},is(Y,L)}function rn(Y){return rn=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(L){return L.__proto__||Object.getPrototypeOf(L)},rn(Y)}var ns=function(Y){(function(V,W){if(typeof W!="function"&&W!==null)throw new TypeError("Super expression must either be null or a function");V.prototype=Object.create(W&&W.prototype,{constructor:{value:V,writable:!0,configurable:!0}}),Object.defineProperty(V,"prototype",{writable:!1}),W&&is(V,W)})(Be,Y);var L,X,Z,Pe,Te=(Z=Be,Pe=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 V,W=rn(Z);if(Pe){var ue=rn(this).constructor;V=Reflect.construct(W,arguments,ue)}else V=W.apply(this,arguments);return function(oe,se){if(se&&(Se(se)==="object"||typeof se=="function"))return se;if(se!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(Re){if(Re===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Re}(oe)}(this,V)});function Be(V){var W;return function(ue,oe){if(!(ue instanceof oe))throw new TypeError("Cannot call a class as a function")}(this,Be),(W=Te.call(this,V)).state={loaded:!1},W}return L=Be,(X=[{key:"onImageLoad",value:function(){var V=this;return this.state.loaded?null:function(W){V.props.onLoad(W),V.props.afterLoad(),V.setState({loaded:!0})}}},{key:"getImg",value:function(){var V=this.props,W=(V.afterLoad,V.beforeLoad,V.delayMethod,V.delayTime,V.effect,V.placeholder,V.placeholderSrc,V.scrollPosition,V.threshold,V.useIntersectionObserver,V.visibleByDefault,V.wrapperClassName,V.wrapperProps,function(ue,oe){if(ue==null)return{};var se,Re,Ke=function(Qe,Ct){if(Qe==null)return{};var st,Et,Bn={},Ui=Object.keys(Qe);for(Et=0;Et<Ui.length;Et++)st=Ui[Et],Ct.indexOf(st)>=0||(Bn[st]=Qe[st]);return Bn}(ue,oe);if(Object.getOwnPropertySymbols){var Ze=Object.getOwnPropertySymbols(ue);for(Re=0;Re<Ze.length;Re++)se=Ze[Re],oe.indexOf(se)>=0||Object.prototype.propertyIsEnumerable.call(ue,se)&&(Ke[se]=ue[se])}return Ke}(V,Ei));return a().createElement("img",Ai({},W,{onLoad:this.onImageLoad()}))}},{key:"getLazyLoadImage",value:function(){var V=this.props,W=V.beforeLoad,ue=V.className,oe=V.delayMethod,se=V.delayTime,Re=V.height,Ke=V.placeholder,Ze=V.scrollPosition,Qe=V.style,Ct=V.threshold,st=V.useIntersectionObserver,Et=V.visibleByDefault,Bn=V.width;return a().createElement(Ae,{beforeLoad:W,className:ue,delayMethod:oe,delayTime:se,height:Re,placeholder:Ke,scrollPosition:Ze,style:Qe,threshold:Ct,useIntersectionObserver:st,visibleByDefault:Et,width:Bn},this.getImg())}},{key:"getWrappedLazyLoadImage",value:function(V){var W=this.props,ue=W.effect,oe=W.height,se=W.placeholderSrc,Re=W.width,Ke=W.wrapperClassName,Ze=W.wrapperProps,Qe=this.state.loaded,Ct=Qe?" lazy-load-image-loaded":"",st=Qe||!se?{}:{backgroundImage:"url(".concat(se,")"),backgroundSize:"100% 100%"};return a().createElement("span",Ai({className:Ke+" lazy-load-image-background "+ue+Ct,style:zt(zt({},st),{},{color:"transparent",display:"inline-block",height:oe,width:Re})},Ze),V)}},{key:"render",value:function(){var V=this.props,W=V.effect,ue=V.placeholderSrc,oe=V.visibleByDefault,se=V.wrapperClassName,Re=V.wrapperProps,Ke=this.getLazyLoadImage();return(W||ue)&&!oe||se||Re?this.getWrappedLazyLoadImage(Ke):Ke}}])&&gc(L.prototype,X),Object.defineProperty(L,"prototype",{writable:!1}),Be}(a().Component);ns.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},ns.defaultProps={onLoad:function(){},afterLoad:function(){return{}},beforeLoad:function(){return{}},delayMethod:"throttle",delayTime:300,effect:"",placeholderSrc:null,threshold:100,useIntersectionObserver:!0,visibleByDefault:!1,wrapperClassName:""};let yc=ns})(),mS.exports=n})()});var sT={};Jw(sT,{AnnotationContext:()=>YA,AnnotationPageContext:()=>GA,AnnotationStyleProvider:()=>xA,Auth:()=>fp,AuthProvider:()=>hp,AuthRContext:()=>qr,AuthReactContext:()=>ox,AuthReactContextActions:()=>sx,CanvasAnnotations:()=>aA,CanvasContext:()=>Bi,CanvasPanel:()=>Lt,CollectionContext:()=>XA,CombinedMetadata:()=>lA,ComplexTimelineProvider:()=>Zp,ContextBridge:()=>vp,CreateCustomShape:()=>hf,EventsProvider:()=>CE,Image:()=>pS,ImageServiceLoaderContext:()=>Yx,InnerViewerProvider:()=>hx,LanguageProvider:()=>WE,LanguageString:()=>jx,LocaleString:()=>Ci,ManifestContext:()=>tp,ManifestMetadata:()=>cA,MediaPlayerProvider:()=>ha,Metadata:()=>va,PolygonSelector:()=>$A,RangeContext:()=>ip,ReactEventContext:()=>$r,ReactVaultContext:()=>sr,RenderSvgEditorControls:()=>mA,ResourceProvider:()=>Gt,ResourceReactContext:()=>Fs,SelectorControllerProvider:()=>gA,SequenceThumbnails:()=>pA,SimpleViewerProvider:()=>gp,SimpleViewerReactContext:()=>Wo,SingleCanvasThumbnail:()=>ef,TranslationProvider:()=>HE,TransliterationProvider:()=>qE,VaultProvider:()=>jr,ViewerPresetContext:()=>$o,VirtualAnnotationProvider:()=>bp,VisibleCanvasReactContext:()=>Ur,authDetailsForResource:()=>up,createAuthStateStore:()=>ap,createProbe:()=>lp,defaultEmitter:()=>fx,emptyActions:()=>Np,emptyStrategy:()=>Fp,expandTarget:()=>Ot,findAllCanvasesInRange:()=>Lu,findFirstCanvasFromRange:()=>V0,findManifestSelectedRange:()=>GC,findSelectedRange:()=>np,flattenAnnotationPageIds:()=>Bp,formatTime:()=>$u,get3dStrategy:()=>Up,getComplexTimelineStrategy:()=>Hp,getDefaultAnnotationStyles:()=>rf,getImageStrategy:()=>ua,getManifestSequence:()=>zu,getParsedTargetSelector:()=>oa,getRenderingStrategy:()=>Wp,getTextualContentStrategy:()=>ca,getVideoStrategy:()=>da,getVisibleCanvasesFromCanvasId:()=>XC,hasAuth:()=>yE,isImageApiSelector:()=>Uu,makeAccessServiceRequest:()=>sp,makeAccessTokenRequest:()=>Fu,parseRotation:()=>Hu,parseSelector:()=>Ln,parseSpecificResource:()=>YE,svgThemes:()=>kS,unknownResponse:()=>sa,unsupportedStrategy:()=>ot,useAnnotation:()=>ia,useAnnotationPage:()=>Ip,useAnnotationPageManager:()=>la,useAnnotationStyles:()=>sf,useAnnotationsAtTime:()=>KA,useAuthActions:()=>ax,useAuthService:()=>lx,useAuthStore:()=>Uo,useAuthToken:()=>xE,useAuthTokens:()=>cp,useCanvas:()=>De,useCanvasChoices:()=>ZA,useCanvasClock:()=>JA,useCanvasSequence:()=>rp,useCanvasStartTime:()=>pa,useCanvasSubset:()=>eT,useClosestLanguage:()=>Ux,useCollection:()=>tT,useComplexTimeline:()=>oA,useContextBridge:()=>yp,useCreateLocaleString:()=>QE,useCurrentAuth:()=>vE,useDispatch:()=>xp,useEventEmitter:()=>Ks,useEventListener:()=>iT,useExistingVault:()=>Vr,useExternalCollection:()=>nT,useExternalManifest:()=>ep,useExternalResource:()=>qs,useIIIFLanguage:()=>qu,useImage:()=>oc,useImageService:()=>ff,useImageServiceLoader:()=>zn,useImageTile:()=>rT,useIsAuthEnabled:()=>pp,useLoadImageService:()=>jp,useLocaleString:()=>Hx,useManifest:()=>gt,useMediaActions:()=>iA,useMediaElements:()=>nA,useMediaState:()=>tA,usePaintables:()=>Vp,usePaintingAnnotations:()=>eo,usePolygonHelper:()=>cf,useRange:()=>Qs,useRenderingStrategy:()=>qp,useResourceContext:()=>qt,useResourceEvents:()=>Js,useResources:()=>Dp,useSearchService:()=>mp,useSelectorController:()=>nf,useSelectorEmitter:()=>yA,useSelectorEvents:()=>tf,useSelectorHelper:()=>vA,useSimpleMediaPlayer:()=>no,useSimpleViewer:()=>Xs,useStyleHelper:()=>oT,useStyles:()=>Kr,useSvgEditor:()=>df,useThumbnail:()=>io,useTranslations:()=>kp,useTransliteration:()=>Mp,useVault:()=>Me,useVaultEffect:()=>Qp,useVaultSelector:()=>Ne,useViewerPreset:()=>Pp,useVirtualAnnotationPage:()=>Sp,useVirtualAnnotationPageContext:()=>wp,useVisibleCanvases:()=>Hr});var ga=R($(),1);var Kt=R($(),1);var Gn=(e,t,i)=>{let n=e.length,o=i||re(n);for(let a=0;a<n;a++)o[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 o};function re(e,t,i){return new Float32Array(e,t,i)}var eg=(e,t,i)=>{let n=e[1]<=t[3]&&e[3]>=t[1]&&e[2]<=t[4]&&e[4]>=t[2],o=i||re(5);return n?(o[0]=1,o[1]=Math.max(e[1],t[1]),o[2]=Math.max(e[2],t[2]),o[3]=Math.min(e[3],t[3]),o[4]=Math.min(e[4],t[4]),o):(o[0]=0,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o)},tg=e=>e.length/5;var li=(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,o=0){let a=re(5);return a[0]=1,a[1]=n,a[2]=o,a[3]=t+n,a[4]=i+o,a}row(t){return t(this)}addPoints(t,i,n,o){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]=o,this.index+=5,this}addBox(t,i,n,o){return this.addPoints(t,i,t+n,i+o),this}build(){return this.points}};var $t=(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},yi=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},In=(e,t,i)=>li(ut((1-e)*t,(1-e)*i),yi(e)),vi=(e,t,i)=>{let n=e.length,o=i&&i.length>=n?i.slice(0,n):re(n);for(let a=0;a<n;a++)o[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 o};var Cs=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,t1=typeof AbortController=="function",gl=t1?AbortController:class{constructor(){this.signal=new ig}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})}},i1=typeof AbortSignal=="function",n1=typeof gl.AbortSignal=="function",ig=i1?AbortSignal:n1?gl.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))}},Ld=new Set,Md=(e,t)=>{let i=`LRU_CACHE_OPTION_${e}`;yl(i)&&zd(i,`${e} option`,`options.${t}`,So)},kd=(e,t)=>{let i=`LRU_CACHE_METHOD_${e}`;if(yl(i)){let{prototype:n}=So,{get:o}=Object.getOwnPropertyDescriptor(n,e);zd(i,`${e} method`,`cache.${t}()`,o)}},r1=(e,t)=>{let i=`LRU_CACHE_PROPERTY_${e}`;if(yl(i)){let{prototype:n}=So,{get:o}=Object.getOwnPropertyDescriptor(n,e);zd(i,`${e} property`,`cache.${t}`,o)}},ng=(...e)=>{typeof process=="object"&&process&&typeof process.emitWarning=="function"?process.emitWarning(...e):console.error(...e)},yl=e=>!Ld.has(e),zd=(e,t,i,n)=>{Ld.add(e);let o=`The ${t} is deprecated. Please use ${i} instead.`;ng(o,"DeprecationWarning",e,n)},Xn=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e),rg=e=>Xn(e)?e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?xo:null:null,xo=class extends Array{constructor(t){super(t),this.fill(0)}},Od=class{constructor(t){if(t===0)return[];let i=rg(t);this.heap=new i(t),this.length=0}push(t){this.heap[this.length++]=t}pop(){return this.heap[--this.length]}},So=class e{constructor(t={}){let{max:i=0,ttl:n,ttlResolution:o=1,ttlAutopurge:a,updateAgeOnGet:l,updateAgeOnHas:c,allowStale:p,dispose:m,disposeAfter:f,noDisposeOnSet:y,noUpdateTTL:S,maxSize:P=0,maxEntrySize:v=0,sizeCalculation:x,fetchMethod:E,fetchContext:C,noDeleteOnFetchRejection:T,noDeleteOnStaleGet:A,allowStaleOnFetchRejection:N,allowStaleOnFetchAbort:D,ignoreFetchAbort:M}=t,{length:k,maxAge:O,stale:K}=t instanceof e?{}:t;if(i!==0&&!Xn(i))throw new TypeError("max option must be a nonnegative integer");let U=i?rg(i):Array;if(!U)throw new Error("invalid max value: "+i);if(this.max=i,this.maxSize=P,this.maxEntrySize=v||this.maxSize,this.sizeCalculation=x||k,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=E||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 Od(i),this.initialFill=1,this.size=0,typeof m=="function"&&(this.dispose=m),typeof f=="function"?(this.disposeAfter=f,this.disposed=[]):(this.disposeAfter=null,this.disposed=null),this.noDisposeOnSet=!!y,this.noUpdateTTL=!!S,this.noDeleteOnFetchRejection=!!T,this.allowStaleOnFetchRejection=!!N,this.allowStaleOnFetchAbort=!!D,this.ignoreFetchAbort=!!M,this.maxEntrySize!==0){if(this.maxSize!==0&&!Xn(this.maxSize))throw new TypeError("maxSize must be a positive integer if specified");if(!Xn(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.initializeSizeTracking()}if(this.allowStale=!!p||!!K,this.noDeleteOnStaleGet=!!A,this.updateAgeOnGet=!!l,this.updateAgeOnHas=!!c,this.ttlResolution=Xn(o)||o===0?o:1,this.ttlAutopurge=!!a,this.ttl=n||O||0,this.ttl){if(!Xn(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 G="LRU_CACHE_UNBOUNDED";yl(G)&&(Ld.add(G),ng("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",G,e))}K&&Md("stale","allowStale"),O&&Md("maxAge","ttl"),k&&Md("length","sizeCalculation")}getRemainingTTL(t){return this.has(t,{updateAgeOnHas:!1})?1/0:0}initializeTTLTracking(){this.ttls=new xo(this.max),this.starts=new xo(this.max),this.setItemTTL=(n,o,a=Cs.now())=>{if(this.starts[n]=o!==0?a:0,this.ttls[n]=o,o!==0&&this.ttlAutopurge){let l=setTimeout(()=>{this.isStale(n)&&this.delete(this.keyList[n])},o+1);l.unref&&l.unref()}},this.updateItemAge=n=>{this.starts[n]=this.ttls[n]!==0?Cs.now():0},this.statusTTL=(n,o)=>{n&&(n.ttl=this.ttls[o],n.start=this.starts[o],n.now=t||i(),n.remainingTTL=n.now+n.ttl-n.start)};let t=0,i=()=>{let n=Cs.now();if(this.ttlResolution>0){t=n;let o=setTimeout(()=>t=0,this.ttlResolution);o.unref&&o.unref()}return n};this.getRemainingTTL=n=>{let o=this.keyMap.get(n);return o===void 0?0:this.ttls[o]===0||this.starts[o]===0?1/0:this.starts[o]+this.ttls[o]-(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 xo(this.max),this.removeItemSize=t=>{this.calculatedSize-=this.sizes[t],this.sizes[t]=0},this.requireSize=(t,i,n,o)=>{if(this.isBackgroundFetch(i))return 0;if(!Xn(n))if(o){if(typeof o!="function")throw new TypeError("sizeCalculation must be a function");if(n=o(i,t),!Xn(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 o=this.maxSize-this.sizes[t];for(;this.calculatedSize>o;)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,o){if(n||o)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 o=this.valList[n],a=this.isBackgroundFetch(o)?o.__staleWhileFetching:o;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 o=this.valList[n],a=this.isBackgroundFetch(o)?o.__staleWhileFetching:o;a!==void 0&&t.call(i,a,this.keyList[n],this)}}rforEach(t,i=this){for(let n of this.rindexes()){let o=this.valList[n],a=this.isBackgroundFetch(o)?o.__staleWhileFetching:o;a!==void 0&&t.call(i,a,this.keyList[n],this)}}get prune(){return kd("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],o=this.valList[i],a=this.isBackgroundFetch(o)?o.__staleWhileFetching:o;if(a===void 0)continue;let l={value:a};if(this.ttls){l.ttl=this.ttls[i];let c=Cs.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 o=Date.now()-n.start;n.start=Cs.now()-o}this.set(i,n.value,n)}}dispose(t,i,n){}set(t,i,{ttl:n=this.ttl,start:o,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 f=this.size===0?void 0:this.keyMap.get(t);if(f===void 0)f=this.newIndex(),this.keyList[f]=t,this.valList[f]=i,this.keyMap.set(t,f),this.next[this.tail]=f,this.prev[f]=this.tail,this.tail=f,this.size++,this.addItemSize(f,l,m),m&&(m.set="add"),p=!1;else{this.moveToTail(f);let y=this.valList[f];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(f),this.valList[f]=i,this.addItemSize(f,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(f,n,o),this.statusTTL(m,f),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],o=this.valList[i];return this.isBackgroundFetch(o)?o.__abortController.abort(new Error("evicted")):(this.dispose(o,n,"evict"),this.disposeAfter&&this.disposed.push([o,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 o=this.keyMap.get(t);if(o!==void 0)if(this.isStale(o))n&&(n.has="stale",this.statusTTL(n,o));else return i&&this.updateItemAge(o),n&&(n.has="hit"),this.statusTTL(n,o),!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 o=this.valList[n];return this.isBackgroundFetch(o)?o.__staleWhileFetching:o}}backgroundFetch(t,i,n,o){let a=i===void 0?void 0:this.valList[i];if(this.isBackgroundFetch(a))return a;let l=new gl;n.signal&&n.signal.addEventListener("abort",()=>l.abort(n.signal.reason));let c={signal:l.signal,options:n,context:o},p=(P,v=!1)=>{let{aborted:x}=l.signal,E=n.ignoreFetchAbort&&P!==void 0;return n.status&&(x&&!v?(n.status.fetchAborted=!0,n.status.fetchError=l.signal.reason,E&&(n.status.fetchAbortIgnored=!0)):n.status.fetchResolved=!0),x&&!E&&!v?f(l.signal.reason):(this.valList[i]===S&&(P===void 0?S.__staleWhileFetching?this.valList[i]=S.__staleWhileFetching:this.delete(t):(n.status&&(n.status.fetchUpdated=!0),this.set(t,P,c.options))),P)},m=P=>(n.status&&(n.status.fetchRejected=!0,n.status.fetchError=P),f(P)),f=P=>{let{aborted:v}=l.signal,x=v&&n.allowStaleOnFetchAbort,E=x||n.allowStaleOnFetchRejection,C=E||n.noDeleteOnFetchRejection;if(this.valList[i]===S&&(!C||S.__staleWhileFetching===void 0?this.delete(t):x||(this.valList[i]=S.__staleWhileFetching)),E)return n.status&&S.__staleWhileFetching!==void 0&&(n.status.returnedStale=!0),S.__staleWhileFetching;if(S.__returned===S)throw P},y=(P,v)=>{this.fetchMethod(t,a,c).then(x=>P(x),v),l.signal.addEventListener("abort",()=>{(!n.ignoreFetchAbort||n.allowStaleOnFetchAbort)&&(P(),n.allowStaleOnFetchAbort&&(P=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:o=this.noDeleteOnStaleGet,ttl:a=this.ttl,noDisposeOnSet:l=this.noDisposeOnSet,size:c=0,sizeCalculation:p=this.sizeCalculation,noUpdateTTL:m=this.noUpdateTTL,noDeleteOnFetchRejection:f=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:y=this.allowStaleOnFetchRejection,ignoreFetchAbort:S=this.ignoreFetchAbort,allowStaleOnFetchAbort:P=this.allowStaleOnFetchAbort,fetchContext:v=this.fetchContext,forceRefresh:x=!1,status:E,signal:C}={}){if(!this.fetchMethod)return E&&(E.fetch="get"),this.get(t,{allowStale:i,updateAgeOnGet:n,noDeleteOnStaleGet:o,status:E});let T={allowStale:i,updateAgeOnGet:n,noDeleteOnStaleGet:o,ttl:a,noDisposeOnSet:l,size:c,sizeCalculation:p,noUpdateTTL:m,noDeleteOnFetchRejection:f,allowStaleOnFetchRejection:y,allowStaleOnFetchAbort:P,ignoreFetchAbort:S,status:E,signal:C},A=this.keyMap.get(t);if(A===void 0){E&&(E.fetch="miss");let N=this.backgroundFetch(t,A,T,v);return N.__returned=N}else{let N=this.valList[A];if(this.isBackgroundFetch(N)){let K=i&&N.__staleWhileFetching!==void 0;return E&&(E.fetch="inflight",K&&(E.returnedStale=!0)),K?N.__staleWhileFetching:N.__returned=N}let D=this.isStale(A);if(!x&&!D)return E&&(E.fetch="hit"),this.moveToTail(A),n&&this.updateItemAge(A),this.statusTTL(E,A),N;let M=this.backgroundFetch(t,A,T,v),k=M.__staleWhileFetching!==void 0,O=k&&i;return E&&(E.fetch=k&&D?"stale":"refresh",O&&D&&(E.returnedStale=!0)),O?M.__staleWhileFetching:M.__returned=M}}get(t,{allowStale:i=this.allowStale,updateAgeOnGet:n=this.updateAgeOnGet,noDeleteOnStaleGet:o=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):(o||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 kd("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 o=this.valList[n];this.isBackgroundFetch(o)?o.__abortController.abort(new Error("deleted")):(this.dispose(o,t,"delete"),this.disposeAfter&&this.disposed.push([o,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 kd("reset","clear"),this.clear}get length(){return r1("length","size"),this.size}static get AbortController(){return gl}static get AbortSignal(){return ig}},og=So;var Wy=R(Ag(),1);var rt=R($(),1),eu=R($(),1),Eb=R(q(),1);var xi=R($()),qd=R(Mg());function Pl(e){let{debounce:t,scroll:i,polyfill:n,offsetSize:o}=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,xi.useState)({left:0,top:0,width:0,height:0,bottom:0,right:0,x:0,y:0}),p=(0,xi.useRef)({element:null,scrollContainers:null,resizeObserver:null,lastBounds:l}),m=t?typeof t=="number"?t:t.scroll:null,f=t?typeof t=="number"?t:t.resize:null,y=(0,xi.useRef)(!1);(0,xi.useEffect)(()=>(y.current=!0,()=>void(y.current=!1)));let[S,P,v]=(0,xi.useMemo)(()=>{let T=()=>{if(!p.current.element)return;let{left:A,top:N,width:D,height:M,bottom:k,right:O,x:K,y:U}=p.current.element.getBoundingClientRect(),G={left:A,top:N,width:D,height:M,bottom:k,right:O,x:K,y:U};p.current.element instanceof HTMLElement&&o&&(G.height=p.current.element.offsetHeight,G.width=p.current.element.offsetWidth),Object.freeze(G),y.current&&!v1(p.current.lastBounds,G)&&c(p.current.lastBounds=G)};return[T,f?(0,qd.default)(T,f):T,m?(0,qd.default)(T,m):T]},[c,o,m,f]);function x(){p.current.scrollContainers&&(p.current.scrollContainers.forEach(T=>T.removeEventListener("scroll",v,!0)),p.current.scrollContainers=null),p.current.resizeObserver&&(p.current.resizeObserver.disconnect(),p.current.resizeObserver=null)}function E(){p.current.element&&(p.current.resizeObserver=new a(v),p.current.resizeObserver.observe(p.current.element),i&&p.current.scrollContainers&&p.current.scrollContainers.forEach(T=>T.addEventListener("scroll",v,{capture:!0,passive:!0})))}let C=T=>{!T||T===p.current.element||(x(),p.current.element=T,p.current.scrollContainers=kg(T),E())};return g1(v,!!i),m1(P),(0,xi.useEffect)(()=>{x(),E()},[i,v,P]),(0,xi.useEffect)(()=>x,[]),[C,l,S]}function m1(e){(0,xi.useEffect)(()=>{let t=e;return window.addEventListener("resize",t),()=>void window.removeEventListener("resize",t)},[e])}function g1(e,t){(0,xi.useEffect)(()=>{if(t){let i=e;return window.addEventListener("scroll",i,{capture:!0,passive:!0}),()=>void window.removeEventListener("scroll",i,!0)}},[e,t])}function kg(e){let t=[];if(!e||e===document.body)return t;let{overflow:i,overflowX:n,overflowY:o}=window.getComputedStyle(e);return[i,n,o].some(a=>a==="auto"||a==="scroll")&&t.push(e),[...t,...kg(e.parentElement)]}var y1=["x","y","top","bottom","left","right","width","height"],v1=(e,t)=>y1.every(i=>e[i]===t[i]);var gh=R($(),1),gn=R($(),1),Qy=R(Yg(),1),$y=R($(),1),nu=R($(),1),Po=R(q(),1),Ni=R($(),1),nv=R($(),1),rv=R($(),1),ov=R(q(),1),Yt=R(q(),1),ru=R($(),1);var zs=R(q(),1),vh=R($(),1),av=R($(),1),Hb=R($(),1),lv=R($(),1),cv=R($(),1),mn=R($(),1),dv=R($(),1),ph=R(q(),1),hv=R($(),1),fn=R($(),1),Rt=R($(),1),pv=R($(),1),lu=R($(),1),St=R(q(),1),fh=R(q(),1),mv=R($(),1),_r=R(q(),1),gv=R($(),1);var S1=Object.defineProperty,w1=(e,t,i)=>t in e?S1(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,Il=(e,t,i)=>(w1(e,typeof t!="symbol"?t+"":t,i),i);function Rr(e){return e.endsWith("info.json")?e:e.endsWith("/")?`${e}info.json`:`${e}/info.json`}var b1="http://library.stanford.edu/iiif/image-api/compliance.html#level0",Zg="http://library.stanford.edu/iiif/image-api/compliance.html#level1",Jg="http://library.stanford.edu/iiif/image-api/compliance.html#level2",P1="http://library.stanford.edu/iiif/image-api/conformance.html#level0",ey="http://library.stanford.edu/iiif/image-api/conformance.html#level1",ty="http://library.stanford.edu/iiif/image-api/conformance.html#level2",C1="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level0",iy="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level1",ny="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2",E1="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level0",ry="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level1",oy="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level2",A1="http://iiif.io/api/image/1/level0.json",T1="http://iiif.io/api/image/1/profiles/level0.json",sy="http://iiif.io/api/image/1/level1.json",ay="http://iiif.io/api/image/1/profiles/level1.json",ly="http://iiif.io/api/image/1/level2.json",uy="http://iiif.io/api/image/1/profiles/level2.json",R1="http://iiif.io/api/image/2/level0.json",I1="http://iiif.io/api/image/2/profiles/level0.json",cy="http://iiif.io/api/image/2/level1.json",dy="http://iiif.io/api/image/2/profiles/level1.json",hy="http://iiif.io/api/image/2/level2.json",py="http://iiif.io/api/image/2/profiles/level2.json",_1="level0",fy="level1",my="level2",M1="http://iiif.io/api/image/2/level0",gy="http://iiif.io/api/image/2/level1",yy="http://iiif.io/api/image/2/level2",vy=[yy,Jg,ty,ny,oy,ly,uy,hy,py,my],xy=[...vy,gy,Zg,ey,iy,ry,sy,ay,cy,dy,fy],k1=[M1,gy,yy,b1,Zg,Jg,P1,ey,ty,C1,iy,ny,E1,ry,oy,A1,T1,sy,ay,ly,uy,R1,I1,cy,dy,hy,py,_1,fy,my];var O1={extraFormats:["jpg"],extraQualities:["default"],extraFeatures:["sizeByWhListed"]},L1={extraFormats:["jpg"],extraQualities:["default"],extraFeatures:["baseUriRedirect","cors","jsonldMediaType","regionByPx","regionSquare","sizeByWhListed","sizeByH","sizeByW","sizeByWh"]},z1={extraFormats:["jpg","png"],extraQualities:["default"],extraFeatures:["baseUriRedirect","cors","jsonldMediaType","regionByPct","regionByPx","regionSquare","rotationBy90s","sizeByWhListed","sizeByConfinedWh","sizeByH","sizeByPct","sizeByW","sizeByWh"]};function N1(e){return vy.indexOf(e)!==-1?z1:xy.indexOf(e)!==-1?L1:O1}function F1(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=N1(n)),!!n){if(n.formats)for(let o of n.formats)i.extraFormats.indexOf(o)===-1&&i.extraFormats.push(o);if(n.qualities)for(let o of n.qualities)i.extraQualities.indexOf(o)===-1&&i.extraQualities.push(o);if(n.supports)for(let o of n.supports)i.extraFeatures.indexOf(o)===-1&&i.extraFeatures.push(o);if(n.maxHeight&&(i.maxHeight=n.maxHeight),n.maxWidth&&(i.maxWidth=n.maxWidth),n.maxArea&&(i.maxArea=n.maxArea),n.extraFormats)for(let o of n.extraFormats)i.extraFormats.indexOf(o)===-1&&i.extraFormats.push(o);if(n.extraQualities)for(let o of n.extraQualities)i.extraQualities.indexOf(o)===-1&&i.extraQualities.push(o);if(n.extraFeatures)for(let o of n.extraFeatures)i.extraFeatures.indexOf(o)===-1&&i.extraFeatures.push(o);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 B1(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 D1(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 j1(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 V1(e,t=""){let i=e.match(/^(([a-zA-Z]+):\/\/([^/]+))?((.*)+)/);if(!i)throw new Error(`Invalid or unknown input ${e}`);let n=i[2],o=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:o,path:a,prefix:t}}function U1(e,t=""){let{path:i,scheme:n,server:o,prefix:a}=V1(e,t),l=(i||"").split("/").reverse(),[c,p,m,f,...y]=l,S=y.reverse().filter(Boolean).join("/");if(l.length===1||c==="")return{type:"base",scheme:n,server:o,prefix:a,identifier:S};if(c==="info.json"){let[,...v]=l;return{type:"info",scheme:n,server:o,prefix:a,identifier:v.reverse().filter(Boolean).join("/")}}let P=(c||"").split(".");if(typeof P[1]>"u"||typeof P[0]>"u"||typeof f>"u"||typeof m>"u"||typeof p>"u")throw new Error("Invalid image request");return{type:"image",scheme:n,server:o,prefix:a,identifier:S,originalPath:i,region:B1(f),size:D1(m),rotation:j1(p),quality:P[0],format:P[1]}}function nh(e){let t=U1(Rr(e.id));if(t.type!=="info")throw new Error("Invalid service URL");let i=F1(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 H1(e,t,i){let n=i.length,o=[];for(let a=0;a<n;a++){let l=i[a];if(l){let c=l.width;o.push(e/c)}}return o}function W1(e,t,i){let n=i.length,o=[];for(let a=0;a<n;a++){let l=i[a];l&&o.push({width:Math.floor(e/l),height:Math.floor(t/l)})}return o}function ht(e){if(e["@id"])return e["@id"];if(e.id)return e.id}function Ml(e){if(!e||!e.profile||!ht(e))return!1;let t=Array.isArray(e.profile)?e.profile:[e.profile];for(let i of t)if(typeof i=="string"&&k1.indexOf(i)!==-1)return!0;return!1}function q1(e){if(!Ml(e))return!1;let t=Array.isArray(e.profile)?e.profile:[e.profile];for(let i of t)if(typeof i=="string"){if(xy.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 _l(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 ih(e){return Ml(e)?_l(0,e)?0:_l(1,e)?1:_l(2,e)?2:null:null}function Sy(e){return(e["@context"]?Array.isArray(e["@context"])?e["@context"]:[e["@context"]]:[]).indexOf("http://iiif.io/api/image/3/context.json")!==-1}function Q1(e){if(!q1(e))return[];let t=[],i=Array.isArray(e.profile)?e.profile:[e.profile],n=i.length;for(let o=0;o<n;o++){let a=i[o];if(a&&typeof a!="string"&&(a.maxHeight||a.maxWidth))return[{id:ht(e),type:"variable",minWidth:0,minHeight:0,maxHeight:a.maxHeight||a.maxWidth,maxWidth:a.maxWidth||a.maxHeight,level:ih(e),version:e["@context"]==="http://iiif.io/api/image/3/context.json"?3:2}]}if(e.tiles){let o=e.tiles.length;for(let a=0;a<o;a++){let l=e.tiles[a];l&&(l.height||l.width)&&t.push({id:ht(e),type:"variable",minHeight:0,minWidth:0,maxHeight:l.height||l.width,maxWidth:l.width,level:ih(e),version:Sy(e)?3:2})}}return t}function Gg(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],o=parseInt(i[4],10),a=parseInt(i[5],10),l=i[7];if((n==="max"||n==="full")&&o&&a&&l)return{type:"fixed",id:e,height:a,width:o}}return{type:"unknown",id:e}}function $1(e){if(e["@type"])return e["@type"];if(e.type)return e.type}function kl(e){if(typeof e=="string")return Gg(e);let t=$1(e);if(t!=="Image"&&t!=="sc:Image")return null;let i=e,n=ht(i);return n?n&&i.width&&i.height?{id:n,type:"fixed",width:i.width,height:i.height,unsafe:!0}:Gg(n):null}function Y1(e){return Ml(e)?(e&&e.sizes?e.sizes:[]).map(t=>({id:ht(e),type:"fixed-service",height:t.height,width:t.width,level:ih(e),version:Sy(e)?3:2})):[]}function Xg(e){let t=[],i=e.length;for(let n=0;n<i;n++){let o=e[n];if(!o)continue;let a=Y1(o);a.length&&t.push(...a);let l=Q1(o);l.length&&t.push(...l)}return t}function Ir(e){let t=e.service?Array.isArray(e.service)?e.service:[e.service]:[],i=t.length,n=[];for(let o=0;o<i;o++)Ml(t[o])&&n.push(t[o]);return n}function G1(e,t=!0,i){let n=[],o=kl(e);if(o===null)return n;let a=e;if(n.push(o),t&&a&&a.width&&a.height){let l=[],c=Ir(a);for(let p of c){let m={id:ht(p),width:a.width,height:a.height};if(i.canLoadSync(m)){let f=i.loadServiceSync(m);f&&(f.height||(f.height=a.height),f.width||(f.width=a.width),l.push(...Xg([f])))}}if(l.length)return n.push(...l),n}return a.service&&n.push(...Xg(a.service)),n}function X1({x:e=0,y:t=0,w:i,h:n,full:o,square:a,percent:l}){if(o)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 K1({max:e,percentScale:t,upscaled:i,confined:n,width:o,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}`),o&&p.push(`${o}`),p.push(","),a&&c===3&&p.push(`${a}`),p.join(""))}function Z1(e){return`${e.mirror?"!":""}${(e.angle||0)%360}`}function rh(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:o}=e,{region:a,rotation:l,format:c,quality:p}=e;if(t){let m=t["@context"]?Array.isArray(t["@context"])?t["@context"]:[t["@context"]]:[],f=m.indexOf("http://iiif.io/api/image/2/context.json")!==-1,y=m.indexOf("http://iiif.io/api/image/3/context.json")!==-1;if((o.width===t.width&&!o.height||o.height===t.height&&!o.width||o.width===t.width&&o.height===t.height)&&(o={...o,max:!0}),f&&(o.max&&!o.serialiseAsFull&&(o={...o,serialiseAsFull:!0}),!o.max&&o.width&&o.height&&(o={...o,height:void 0}),o={...o,version:2}),y){if(o.max&&o.serialiseAsFull&&(o={...o,serialiseAsFull:!1}),o.width&&!o.height&&t.width&&t.height){let S=t.height/t.width;o={...o,height:Math.ceil(o.width*S)}}o={...o,version:3}}}return[n,X1(a),K1(o),Z1(l),`${p}.${c}`].filter(Boolean).join("/")}function th(e,t,i){let n=nh({"@context":e.version===3?"http://iiif.io/api/image/3/context.json":"http://iiif.io/api/image/2/context.json",id:Rr(ht(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:rh(n),type:"fixed",width:t,height:i||e.height/(e.width||1)*t,unsafe:e.width>t}}function wo(e){let t=e.replace(/(https?:\/\/)?(www.)?/i,"");return t.indexOf("/")!==-1?t.split("/")[0]:t}function J1(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 eb(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),o=(f,y=0)=>n.explain?i.push(new Array(y).fill(0).map(S=>" ").join("")+f().trim()):void 0,a=[],l=[],c=null;o(()=>`Using configuration: ${JSON.stringify(n,null,2)}`);let p=(f,y)=>{if(o(()=>"Swapping choice",3),J1(n,y,f)){if(n.preferFixedSize&&f.unsafe){o(()=>`We found an image that was marked as unsafe, but it was the best size. (${f.id})`,4),l.push(f);return}n.returnAllOptions&&y&&l.push(y),o(()=>`We found a new image that was the best size. (${f.id})`,4),c=f}else n.returnAllOptions&&l.push(f)};o(()=>`The input shows we have ${t.length} list(s) of candidates to choose from.`);let m=t.length;for(let f=0;f<m;f++){let y=t[f]();o(()=>`Candidate group ${f}: ${JSON.stringify(y,null,2)}`,1);let S=y.length;o(()=>`Checking candidate list number ${f} and found ${S} potential ways of creating image(s)`,1);for(let P=0;P<S;P++){let v=y[P];if(o(()=>`-> Checking candidate ${P}`,1),v.type==="unknown"&&n.atAnyCost&&(o(()=>`We've found an unknown image type, adding this to the "last resort" list`,2),a.push(v)),v.type==="fixed"&&(v.unsafe?(o(()=>`We've found an unsafe fixed image type, adding this to the "last resort" list`,2),a.push(v)):(o(()=>"We've found a fixed size image, checking if it matches the request",2),p(v,c))),v.type==="fixed-service")if(n.unsafeImageService){o(()=>"Checking for an image from the tile source, without calculating the right height and width (unsafeImageService)",2);let x=th(v,n.width,n.height);p(x,c)}else{o(()=>"Checking for an image from the tile source 3",2);let x=th(v,v.width,v.height);p(x,c)}if(v.type==="variable"&&v.maxWidth){let x=th({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;o(()=>`We found a match in choice list number ${f}, no searching any more`);break}}return n.atAnyCost&&l.length===0?(o(()=>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?(o(()=>"Returning all options that we have found"),{best:(n.atAnyCost?c||l[0]||a[0]:c||l[0])||null,fallback:[...l,...a],log:i}):(o(()=>"Returning the best image that we found, and a fallback"),{best:c||l[0]||null,fallback:c?l:l.slice(1),log:i})}function tb(e,t,i){let n=e>t?e:t,o=i.length,a=[];for(let l=0;l<o;l++){let c=i[l];if(!c||c.scaleFactors.length===0)continue;let p=c.scaleFactors[0];if(!p)continue;let m=n/p,f=[p];for(;m>=c.width;)p=p*2,f.push(p),m=m/2;a.push({...c,scaleFactors:f})}return a}function ib(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 o=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){o++;break}return o===i}function Kg(e){return _l(0,e)}var bo=class{constructor(e={}){Il(this,"config",{verificationsRequired:1,approximateServices:!1,enableFetching:!0,disableThrottling:!1}),Il(this,"fetchingCount",0),Il(this,"imageServices",{}),Il(this,"knownImageServers",{}),this.config=Object.assign(this.config,e)}setConfig(e){Object.assign(this.config,e)}sample(e,t,i=!0){let n=wo(ht(e)),o=Rr(ht(e)),a=this.knownImageServers[n];return this.imageServices[o]=Object.assign(e,{real:!0}),!a&&e.tiles&&!Kg(e)?(this.knownImageServers[n]={verifications:0,malformed:!1,root:n,preLoaded:i,sampledId:ht(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:H1(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,o=wo(ht(e)),a=this.knownImageServers[o],l=Rr(ht(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)||Kg(e.source)?null:(this.imageServices[l]||(this.imageServices[l]={"@context":a.result.context,"@id":ht(e),id:ht(e),protocol:"http://iiif.io/api/image",tiles:n?.tiles||tb(e.width,e.height,a.result.sampledTiles),sizes:n?.sizes||W1(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 o=e?await this.getImageCandidates(e,i):[];return eb(t,[()=>n,()=>o])}async getImageCandidates(e,t=!0){let i=e;if(t&&i&&i.height&&i.width){let n=Ir(i);for(let o of n){let a={id:ht(o),width:o.width?o.width:i.width,height:o.height?o.height:i.height,source:o};await this.loadService(a)}}return G1(e,t,this)}async verify(e){let t=this.predict(e,!1,!0),i=await this.fetchService(ht(e));if(!t)return!1;let n=t.height===i.height&&t.width===i.width&&t["@context"]===i["@context"]&&ib(t.sizes||[],i.sizes||[]);if(n){let o=wo(ht(e)),a=this.knownImageServers[o];a&&(a.verifications+=1,a.verifications>=this.config.verificationsRequired&&(a.verified=!0))}return n}canLoadSync(e){let t=typeof e=="string"?e:ht(e),i=Rr(t);if(this.imageServices[i])return!0;let n=this.knownImageServers[wo(t)];return!!(n&&!n.malformed&&n.verifications>=this.config.verificationsRequired)}async markAsMalformed(e){return this.knownImageServers[wo(ht(e))].malformed=!0,this.loadService(e,!0)}async fetchService(e,t=!1){let i=Rr(e),n=this.imageServices[i];if(n&&(!t||n.real))return n;if(!this.config.enableFetching)throw new Error("Fetching is not enabled");let o=await this.fetch(i).then(a=>a.json());return!o.id&&o["@id"]&&(o.id=o["@id"]),o.id!==e&&(o.id=e,o["@id"]&&(o["@id"]=e)),this.imageServices[i]=Object.assign(o,{real:!0}),this.imageServices[i]}async fetch(e,t){return fetch(e,t)}async loadService(e,t=!1){if(!this.config.disableThrottling){let o=!0;for(;o;)if(this.fetchingCount>=this.config.verificationsRequired)await new Promise(a=>setTimeout(a,500));else{o=!1;break}}let i=this.knownImageServers[wo(ht(e))];if(i&&!i.malformed&&!t){await i.result;let o=this.loadServiceSync(e);if(o)return o}this.fetchingCount++;let n=await this.fetchService(ht(e),t);return this.fetchingCount--,n.real&&this.sample(n,e),n}loadServiceSync(e){let t=Rr(ht(e));return this.imageServices[t]?this.imageServices[t]:this.config.approximateServices?this.predict(e):null}},TT=new bo;var Ol={},_n={get(e){return e},setMetaValue([e,t,i],n){let o=_n.getResourceMeta(e,t),a=o?o[i]:void 0,l=typeof n=="function"?n(a):n;Ol[e]={...Ol[e]||{},[t]:{...(Ol[e]||{})[t]||{},[i]:l}}},getResourceMeta:(e,t)=>{let i=Ol[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 wy=new bo;function oh(e=_n,t={}){let i=t.imageServiceLoader||wy;async function n(o,a,l=!1,c=[],p){let m=()=>i.getThumbnailFromResource(void 0,a,l,c);if(!o)return await i.getThumbnailFromResource(void 0,a,l,c);if(typeof o=="string"){let S=kl(o);return S&&c.push(S),await i.getThumbnailFromResource(void 0,a,l,c)}let f=e.get(o,{skipSelfReturn:!1});if(typeof f=="string")return{best:kl(f),fallback:[],log:[]};if(!f)return await m();switch(await(async S=>{if(S&&S.thumbnail&&S.thumbnail.length){let P=e.get(S.thumbnail[0]),v=await i.getImageCandidates(P,l);v&&v.length&&c.push(...v)}})(f),f.type){case"Annotation":{let S=Array.isArray(f.body)?f.body:[f.body],P=e.get(S[0]);return p&&!P.width&&(P.width=p.width,P.height=p.height),await i.getThumbnailFromResource(P,a,l,c)}case"Canvas":{let S=f;return n(S.items[0],a,l,c,{width:S.width,height:S.height})}case"AnnotationPage":return n(f.items[0],a,l,c,p);case"Choice":{let S=f;return!S.items||S.items[0]?await m():n(S.items[0],a,l,c,p)}case"Collection":{let P=f.items[0];return P?n(P,a,l,c,p):await m()}case"Manifest":{let P=f.items[0];return P?n(P,a,l,c,p):await m()}case"SpecificResource":case"Image":case"Dataset":case"Sound":case"Text":case"TextualBody":case"Video":return p&&!f.width&&(f.width=p.width,f.height=p.height),i.getThumbnailFromResource(f,a,l,c)}return await m()}return{getBestThumbnailAtSize:n}}var nb=Object.create,sh=Object.defineProperty,rb=Object.getOwnPropertyDescriptor,by=Object.getOwnPropertyNames,ob=Object.getPrototypeOf,sb=Object.prototype.hasOwnProperty,ab=(e,t,i)=>t in e?sh(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,ah=(e,t)=>function(){return t||(0,e[by(e)[0]])((t={exports:{}}).exports,t),t.exports},lb=(e,t,i,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of by(t))!sb.call(e,o)&&o!==i&&sh(e,o,{get:()=>t[o],enumerable:!(n=rb(t,o))||n.enumerable});return e},lh=(e,t,i)=>(i=e!=null?nb(ob(e)):{},lb(t||!e||!e.__esModule?sh(i,"default",{value:e,enumerable:!0}):i,e)),ci=(e,t,i)=>(ab(e,typeof t!="symbol"?t+"":t,i),i);var Gb=R(q(),1),Xb=R($(),1),Ns=R($(),1),Kb=R(q(),1),Zb=R($(),1),yv=R($(),1),ub=Object.defineProperty,cb=(e,t,i)=>t in e?ub(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,b=(e,t,i)=>(cb(e,typeof t!="symbol"?t+"":t,i),i),Xl=["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 db(){return Xl.reduce((e,t)=>(e[t]=[],e),{})}var Eo=Xl.reduce((e,t)=>(e[t.slice(2).toLowerCase()]=t,e[t]=t,e),{}),hb="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",Kl=(e=21)=>{let t="",i=crypto.getRandomValues(new Uint8Array(e));for(;e--;)t+=hb[i[e]&63];return t},yn=class{constructor(){b(this,"__id"),b(this,"__revision",0),b(this,"__host"),b(this,"__onCreate"),b(this,"__parent"),b(this,"__owner",{value:void 0}),b(this,"__state",{}),b(this,"eventHandlers"),b(this,"scale",1),b(this,"layers",[]),b(this,"time",[]),b(this,"_crop"),b(this,"cropData"),b(this,"id"),b(this,"addEventListener",(e,t,i)=>{let n=Eo[e];if(!this.eventHandlers[n])throw new Error(`Unknown event ${n}`);this.eventHandlers[n].indexOf(t)===-1&&this.eventHandlers[n].push(t)}),b(this,"removeEventListener",(e,t)=>{let i=Eo[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=Kl(),this.eventHandlers=db()}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,o=!1;if(n)for(let a=0;a<n;a++)try{i[a](t),o=!0}catch(l){console.error(e,l)}return o}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){$t(this.points,ut(e,t))}atScale(e){$t(this.points,In(e,this.x,this.y)),this.scale*=e}transform(e){$t(this.points,e)}applyProps(e){this.__revision++}appendChild(e){}removeChild(e){}insertBefore(e,t){}hideInstance(){}},er=class ch extends yn{constructor(t){if(super(),b(this,"type","spacial-content"),b(this,"id"),b(this,"uri"),b(this,"display"),b(this,"points"),b(this,"priority"),b(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 o=xe.singleBox(t.crop.width,t.crop.height,t.crop.x,t.crop.y);$t(o,ut(-t.crop.x,-t.crop.y)),this.crop?this.crop.set(o):this.crop=re(o)}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,o){return ch.fromImage("data:image/svg+xml;base64,"+btoa(t),i,n,o)}static fromImage(t,i,n,o){let a=new ch;return a.applyProps({uri:t,id:o,display:n,target:i}),a}getImageUrl(){return this.uri}},dh=class extends yn{constructor(e){if(super(),b(this,"type","spacial-content"),b(this,"id"),b(this,"uri"),b(this,"display"),b(this,"points"),b(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 pb(e,t,i=1){let n=t.length;if(n===0)throw new Error("No resources passed in.");let o=0;for(let a=0;a<n&&!(!t[a]||!t[a].display);a++)o=Math.abs(t[a].display.scale-e)*i<Math.abs(t[o].display.scale-e)?a:o;return o}function Ay(e,t){return Math.abs(e-t)}function Ql(e,t){let i=Ay(e.x,t.x),n=Ay(e.y,t.y);return Math.sqrt(Math.pow(i,2)+Math.pow(n,2))}function fb(e){let t=e.length;return e.indexOf("/info.json")===t-10?e.slice(0,-10):e}function Ll(e,t,i){return Math.min(Math.max(e,t),i)}var Ls=class Dy extends yn{constructor(t){super(),b(this,"id"),b(this,"type","spacial-content"),b(this,"display"),b(this,"tileWidth"),b(this,"style",{opacity:1}),b(this,"points"),b(this,"service"),b(this,"format","jpg"),b(this,"crop2"),b(this,"tileUrl"),this.tileUrl=fb(t.url),this.id=t.id||`${this.tileUrl}--${t.scaleFactor}`,this.points=t.displayPoints?t.displayPoints:vi(t.points,yi(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,o=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]>o&&i[m+2]<c&&i[m+4]>a?(i[m+1]=Ll(i[m+1],o,l),i[m+3]=Ll(i[m+3],o,l),i[m+2]=Ll(i[m+2],a,c),i[m+4]=Ll(i[m+4],a,c)):i[m]=0}$t(i,ut(-t.crop.x,-t.crop.y)),this.crop?this.crop.set(i):this.crop=i}}static fromTile(t,i,n,o,a,l){n.height=n.height?n.height:n.width;let c=Math.ceil(i.width/o),p=Math.ceil(i.height/o),m=Math.ceil(c/n.width),f=Math.ceil(p/n.height),y=xe.grid(m,f),S=xe.grid(m,f);for(let v=0;v<f;v++)for(let x=0;x<m;x++){let E=x*n.width,C=v*n.height;S.addPoints(E*o,C*o,x===m-1?i.width:(E+n.width)*o,v===f-1?i.height:(C+n.height)*o),y.addPoints(E,C,x===m-1?c:E+n.width,v===f-1?p:C+n.height)}let P=new Dy({url:t,scaleFactor:o,points:y.build(),displayPoints:S.build(),width:i.width,height:i.height,tileWidth:n.width,format:l});return P.applyProps({service:a}),P}getImageUrl(t){let i=this.points.slice(t*5,t*5+5),n=i[3]-i[1],o=i[4]-i[2],a=Math.ceil(n/this.display.scale);return`${this.tileUrl}/${i[1]},${i[2]},${n},${o}/${a>this.tileWidth?this.tileWidth:a},/0/default.${this.format||"jpg"}`}getAllPointsAt(t,i,n){let o=Gn(this.crop||this.points,t);return[[this,o,i]]}transform(t){$t(this.points,t)}getScheduledUpdates(t,i){return[]}},mb=class extends yn{constructor(){super(...arguments),b(this,"type","spacial-content")}getAllPointsAt(e,t,i){return[[this,this.points,t]]}},gb=class extends mb{constructor(e){super(),b(this,"id"),b(this,"display"),b(this,"points"),b(this,"images",[]),b(this,"allImages",[]),b(this,"scaleFactors",[]),b(this,"aggregateBuffer",re(9)),b(this,"lazyLoader"),b(this,"isFullyLoaded",!1),b(this,"maxScaleFactor",0),b(this,"renderOptions"),b(this,"_scheduleSortByScales",!1),b(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 er&&(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 er||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)}),b(this,"loadFullResource",async()=>{if(!this.isFullyLoaded&&this.lazyLoader){this.isFullyLoaded=!0;let t=await this.lazyLoader();this.addImages(t)}}),b(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=pb(1/(i||1)/(window.devicePixelRatio||1),this.images,this.renderOptions.quality),o=this.images.length,a=t?li(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=o-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 zl(e,t,i,n,o){let a=Math.PI/180*o,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 mh=class jy extends yn{constructor(t,i){super(),b(this,"id"),b(this,"type","world-object"),b(this,"scale"),b(this,"layers"),b(this,"points"),b(this,"worldPoints"),b(this,"intersectionBuffer",re(5)),b(this,"aggregateBuffer",re(9)),b(this,"invertedBuffer",re(9)),b(this,"rotation",0),b(this,"filteredPointsBuffer"),b(this,"_updatedList",[]),b(this,"geometry");let{x:n=0,y:o=0}=i||{};t?(this.id=t.id||"",this.scale=1,this.layers=t.layers,this.points=re([1,n,o,n+t.width,o+t.height]),this.worldPoints=re([1,n,o,n+t.width,o+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 jy;return i.applyProps(t),i}applyProps(t){let i=t.x||0,n=t.y||0;this.id=t.id;let o=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(o),this.scale=o}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 o=this.layers.slice(0,n),a=this.layers.slice(n);this.layers=[...o,t,...a]}hideInstance(){console.warn("hideInstance: not yet implemented")}getObjectsAt(t,i){if(this.rotation&&(t=this.applyRotation(t)),Gn(this.points,t,this.filteredPointsBuffer)[0]===0)return[];let n=this.layers.length,o=[];for(let a=0;a<n;a++){let l=this.layers[a];if(i&&l.isShape){let c=vi(l.points,ut(this.x,this.y));if(!l.intersects([t[1]-c[1],t[2]-c[2]]))continue}if(Gn(vi(l.points,ut(this.x,this.y)),t,this.filteredPointsBuffer)[0]!==0&&o.push(l),i){let c=l;o.push(...c.getObjectsAt(t,i))}}return o}applyRotation(t){if(this.rotation){let i={x:t[1],y:t[2]},n={x:t[1],y:t[4]},o={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]=zl(l,c,i.x,i.y,this.rotation),[f,y]=zl(l,c,n.x,n.y,this.rotation),[S,P]=zl(l,c,o.x,o.y,this.rotation),[v,x]=zl(l,c,a.x,a.y,this.rotation),E=Math.min(p,f,S,v),C=Math.max(p,f,S,v),T=Math.min(m,y,P,x),A=Math.max(m,y,P,x);return re([t[0],E,T,C,A])}return t}getAllPointsAt(t,i,n){let o=li(ut(this.x,this.y),yi(this.scale),this.aggregateBuffer);this.rotation&&(t=this.applyRotation(t));let a=eg(t,this.points,this.intersectionBuffer),l=this.layers.length,c=[],p=vi(a,li(yi(1/this.scale),ut(-this.x,-this.y),this.invertedBuffer)),m=i?li(i,o,this.aggregateBuffer):o,f=n*this.scale;for(let y=0;y<l;y++)c.push(...this.layers[y].getAllPointsAt(p,m,f));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 o=i*this.scale;for(let a=0;a<n;a++){let l=this.layers[a].getScheduledUpdates(t,o);l&&this._updatedList.push(...l)}return this._updatedList}},Zl=class Vy extends yn{constructor(t=0,i=0,n=100,o="left-to-right"){super(),b(this,"id","world"),b(this,"_width"),b(this,"_height"),b(this,"aspectRatio"),b(this,"viewingDirection"),b(this,"aggregateBuffer",re(9)),b(this,"isDirty",!1),b(this,"zones",[]),b(this,"filteredPointsBuffer"),b(this,"selectedZone"),b(this,"triggerQueue",[]),b(this,"activatedEvents",[]),b(this,"_updatedList",[]),b(this,"translationBuffer",re(9)),b(this,"needsRecalculate",!0),b(this,"emptyPaintables",[]),b(this,"renderOrder",[]),b(this,"points"),b(this,"objects",[]),b(this,"subscriptions",[]),b(this,"_propagateEventTargets",[]),b(this,"_alreadyFlushed",[]),this._width=t,this._height=i,this.aspectRatio=Number.isNaN(t/i)?1:t/i,this.viewingDirection=o,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 Vy;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 o=[];for(let a of n)if(a.x&&a.y){let l=xe.singleBox(1,1,a.x,a.y);o.push(this.getObjectsAt(l,!0).reverse())}return o.map(a=>this.propagateEvent(t,i,a,{bubbles:!0,cancelable:!0}))}propagatePointerEvent(t,i,n,o,a={}){let l=xe.singleBox(1,1,n,o),c=this.getObjectsAt(l,!0).reverse();return this.propagateEvent(t,i,c,a)}propagateEvent(t,i,n,{bubbles:o=!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 f=c-1;f>=0;f--){this._propagateEventTargets.unshift(n[f][0]);let y=n[f][1].length;if(y)for(let S=0;S<y;S++)this._propagateEventTargets.unshift(n[f][1][S])}let p=this._propagateEventTargets.length,m=!1;for(let f=0;f<p&&(i.atlasTarget=this._propagateEventTargets[f],i.atlasWorld=this,m=this._propagateEventTargets[f].dispatchEvent(t,i)||m,!l);f++);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 o=this.appendWorldObject(t);this.renderOrder.splice(n-1,0,o/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(tg(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),o=this.renderOrder.length;for(let c=0;c<o;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:o,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 mh(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,o,a),this.filteredPointsBuffer=re(this.points.length*2),this.triggerRepaint(),this.needsRecalculate=!0,c}scaleWorldObject(t,i){$t(this.points.subarray(t*5,t*5+5),In(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){$t(this.points.subarray(t*5,t*5+5),ut(i,n));let o=this.objects[t];o&&(o.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=Gn(this.points,t,this.filteredPointsBuffer),o=this.objects.length;this._updatedList=[];for(let a=0;a<o;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(),o=Gn(this.points,t,this.filteredPointsBuffer),a=this.renderOrder.length,l=[];for(let c=0;c<a;c++){let p=this.renderOrder[c];if(o[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 o=this.getObjectsAt(t),a=li(yi(n),ut(-t[1],-t[2]),this.translationBuffer),l=i?li(i,a,this.aggregateBuffer):a,c=o.length,p=[];for(let m=0;m<c;m++)o[m]&&p.push(...o[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 o=0;o<n;o++)this.subscriptions[o].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 Nl=/([0-9]+(px|em)\s+)+(solid)\s+(.*)/g,Fl={},yb=["backgroundColor","opacity","boxShadow","borderColor","borderWidth","borderStyle","outlineColor","outlineWidth","outlineOffset","outlineStyle"],Ms=class extends yn{constructor(){super(),b(this,"id"),b(this,"type","spacial-content"),b(this,"points"),b(this,"hoverEvents",!1),b(this,"activeEvents",!1),b(this,"display",{x:0,y:0,scale:1,width:-1,height:-1,points:re(5)}),b(this,"_parsed",{border:{id:null,match:[]},outline:{id:null,match:[]}}),b(this,"hovering"),b(this,"pressing"),b(this,"props",{}),b(this,"addHover",()=>{this.hovering=!0,this.__revision++}),b(this,"removeHover",()=>{this.hovering=!1,this.pressing=!1,this.__revision++}),b(this,"addPress",()=>{this.pressing=!0,this.__revision++}),b(this,"removePress",()=>{this.pressing=!1,this.__revision++}),this.id=Kl(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=Fl[i]||Nl.exec(i)||Nl.exec(i);n&&(this._parsed.border.id=i,this._parsed.border.match=Fl[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=Fl[e.style.outline]||Nl.exec(e.style.outline)||Nl.exec(e.style.outline);n&&(this._parsed.outline.id=e.style.outline,this._parsed.outline.match=Fl[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 yb)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++}},Wl=class extends yn{constructor(){super(),b(this,"type","spacial-content"),b(this,"id"),b(this,"points"),b(this,"color","#000"),b(this,"backgroundColor"),b(this,"hovering"),b(this,"pressing"),b(this,"text",""),b(this,"display",{x:0,y:0,scale:1,width:100,height:100,points:re(5)}),b(this,"className"),b(this,"html"),b(this,"interactive",!1),b(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:o,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),o&&(this.backgroundColor=o),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,Bl=Math.sqrt,Is=Math.sin,Ty=Math.cos,ks=Math.PI,$l=1.70158,Dl=$l*1.525,Ry=$l+1,Iy=2*ks/3,_y=2*ks/4.5,jl=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},Jn={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-Ty(e*ks/2)},easeOutSine:function(e){return Is(e*ks/2)},easeInOutSine:function(e){return-(Ty(ks*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-Bl(1-ct(e,2))},easeOutCirc:function(e){return Bl(1-ct(e-1,2))},easeInOutCirc:function(e){return e<.5?(1-Bl(1-ct(2*e,2)))/2:(Bl(1-ct(-2*e+2,2))+1)/2},easeInBack:function(e){return Ry*e*e*e-$l*e*e},easeOutBack:function(e){return 1+Ry*ct(e-1,3)+$l*ct(e-1,2)},easeInOutBack:function(e){return e<.5?ct(2*e,2)*((Dl+1)*2*e-Dl)/2:(ct(2*e-2,2)*((Dl+1)*(e*2-2)+Dl)+2)/2},easeInElastic:function(e){return e===0?0:e===1?1:-ct(2,10*e-10)*Is((e*10-10.75)*Iy)},easeOutElastic:function(e){return e===0?0:e===1?1:ct(2,-10*e)*Is((e*10-.75)*Iy)+1},easeInOutElastic:function(e){return e===0?0:e===1?1:e<.5?-(ct(2,20*e-10)*Is((20*e-11.125)*_y))/2:ct(2,-20*e+10)*Is((20*e-11.125)*_y)/2+1},easeInBounce:function(e){return 1-jl(1-e)},easeOutBounce:jl,easeInOutBounce:function(e){return e<.5?(1-jl(1-2*e))/2:(1+jl(2*e-1))/2}},vb=class{constructor(e){b(this,"runtime"),b(this,"pendingTransition"),this.runtime=e,this.pendingTransition={from:re(5),to:re(5),elapsed_time:0,done:!0,total_time:0,timingFunction:Jn.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,o=i.total_time===0?1:n===0?0:i.timingFunction(n);e[1]=i.from[1]+(i.to[1]-i.from[1])*o,e[2]=i.from[2]+(i.to[2]-i.from[2])*o,e[3]=i.from[3]+(i.to[3]-i.from[3])*o,e[4]=i.from[4]+(i.to[4]-i.from[4])*o,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:Jn.easeOutExpo}}))}}zoomTo(e,{origin:t,stream:i=!1,transition:n}={}){let o=this.runtime.getZoomedPosition(e,{origin:t}),a=Math.abs(1-e);this.applyTransition(o,n,{duration:2e3*a,easing:Jn.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:Jn.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||Jn.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:Jn.easeOutExpo,constrain:!0}),this.runtime.updateNextFrame()}},JT=Number.MIN_VALUE+1,Jl=class{constructor(e,t,i,n=[],o){b(this,"id",Kl()),b(this,"ready",!1),b(this,"renderer"),b(this,"world"),b(this,"target"),b(this,"homePosition"),b(this,"manualHomePosition"),b(this,"manualFocalPosition"),b(this,"focalPosition"),b(this,"transitionManager"),b(this,"aggregate"),b(this,"transformBuffer",re(500)),b(this,"lastTarget",re(5)),b(this,"zoomBuffer",re(5)),b(this,"logNextRender",!1),b(this,"pendingUpdate",!0),b(this,"isCommitting",!1),b(this,"firstRender",!0),b(this,"lastTime"),b(this,"stopId"),b(this,"mode","explore"),b(this,"controllers",[]),b(this,"controllersRunning",!1),b(this,"controllerStopFunctions",[]),b(this,"maxScaleFactor",1),b(this,"_viewerToWorld",{x:0,y:0}),b(this,"_lastGoodScale",1),b(this,"hooks",{useFrame:[],useBeforeFrame:[],useAfterPaint:[],useAfterFrame:[]}),b(this,"fpsLimit"),b(this,"options"),b(this,"hookOptions",{filters:{grayscale:0,contrast:0,brightness:0,saturate:0,sepia:0,invert:0,hueRotate:0,blur:0}}),b(this,"_viewport",{x:0,y:0,width:0,height:0}),b(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}),b(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(),f=this.renderer.getPointsAt(this.world,this.target,this.aggregate,m),y=f.length;for(let v=0;v<y;v++){let x=f[v][0],E=f[v][1],C=f[v][2],T=C?vi(E,C,this.transformBuffer):E;this.renderer.prepareLayer(x,x.__parent&&C?vi(x.__parent.crop||x.__parent.points,C):T);let A=T.length/5;for(let N=0;N<A;N++){let D=N*5;T[D]!==0&&(this.renderer.paint(x,N,T[D+1],T[D+2],T[D+3]-T[D+1],T[D+4]-T[D+2]),this.hook("useAfterPaint",x))}this.renderer.finishLayer(x,E)}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),P=S.length;if(P>0)for(let v=0;v<P;v++){let x=S[P-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,...o||{}},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 vb(this),this.aggregate=yi(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,o=this.height*t,a=i.width/n,l=i.height/o,c=n/o;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 o=t/e,a=n/i;this.target[3]=this.target[1]+(this.target[3]-this.target[1])*o,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,o=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:o-a*2,height:o-l*2}),this.pendingUpdate=!0}else{let m=this.width-this.height;this.focalPosition=xe.projection({x:c+m/2,y:p,width:o-a*2,height:o-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:o,minY:a,maxY:l}=this.getBounds({target:e,padding:t}),c=!1,p=i?e:re(e),m=Math.round(e[3]-e[1]),f=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+f),o<e[1]&&(c=!0,p[1]=o,p[3]=o+m),l<e[2]&&(c=!0,p[2]=l,p[4]=l+f),[c,p]}getBounds(e){let t=e.target||this.target,i=e.padding,n=this.options.visibilityRatio,o=Math.abs(1-n);if(this.world.hasActiveZone()){let C=this.world.getActiveZone();if(C){let T=t[3]-t[1]<C.points[3]-C.points[1],A=t[4]-t[2]<C.points[4]-C.points[2];return{minX:T?C.points[1]-i:C.points[1]+(C.points[3]-C.points[1])/2-(t[3]-t[1])/2,maxX:A?C.points[2]-i:C.points[2]+(C.points[4]-C.points[2])/2-(t[4]-t[2])/2,minY:T?C.points[3]+i:C.points[1]+(C.points[3]-C.points[1])/2-(t[3]-t[1])/2,maxY:A?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*o,p=l-a-c,m=t[4]-t[2],f=this.world.height,y=-m*o,S=f-m-y,P=Math.round(Math.max(c,p)),v=Math.round(Math.min(c,p)),x=Math.round(Math.max(y,S)),E=Math.round(Math.min(y,S));return{minX:v,maxX:P,minY:E,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,o=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,f=this.options.maxUnderZoom,y=Math.max(m||1,this.options.maxOverZoom),S=1/e,P=o*S;if(S<1){let x=a*o,E=l*o,C=this.world.width/x,T=this.world.height/E;if(C>T){let A=this.world.width*P,N=~~(a*o)*f;A<N&&(e=this.world.width*o/(a*o*f))}else{let A=this.world.height*P,N=~~(l*o)*f;A<N&&(e=this.world.height*o/(l*o*f))}}else P>y&&(e=o/y);let v=vi(this.target,In(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:o=0}){let a=this.width,l=this.height,c=i/a<n/l,p=e-o,m=t-o,f=i+o*2,y=n+o*2;if(c){let P=y/l*a;return{x:p-(P-f)/2,y:m,width:P,height:y}}let S=f/a*l;return{x:p,y:m-(S-y)/2,width:f,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 o=xe.singleBox(i,n,e,t);return $t(o,li(yi(this.getScaleFactor()),ut(-this.target[1],-this.target[2]))),{x:o[1],y:o[2],width:o[3]-o[1],height:o[4]-o[2],strand:o}}setScale(e,t){$t(this.target,In(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}},Vl=/([0-9]+(px|em)\s+)+(solid)\s+(.*)/g,Ul={},xb=["backgroundColor","opacity","boxShadow","borderColor","borderWidth","borderStyle","outlineColor","outlineWidth","outlineOffset","outlineStyle"],Uy=class extends yn{constructor(){super(),b(this,"id"),b(this,"type","spacial-content"),b(this,"isShape",!0),b(this,"points"),b(this,"hoverEvents",!1),b(this,"activeEvents",!1),b(this,"display",{x:0,y:0,scale:1,width:-1,height:-1,points:re(5)}),b(this,"boundingBox",null),b(this,"_parsed",{border:{id:null,match:[]},outline:{id:null,match:[]}}),b(this,"hovering"),b(this,"pressing"),b(this,"props",{}),b(this,"shape",{type:"none"}),b(this,"addHover",()=>{this.hovering=!0,this.__revision++}),b(this,"removeHover",()=>{this.hovering=!1,this.pressing=!1,this.__revision++}),b(this,"addPress",()=>{this.pressing=!0,this.__revision++}),b(this,"removePress",()=>{this.pressing=!1,this.__revision++}),this.id=Kl(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])),o=Math.max(0,...e.map(a=>a[1]));this.boundingBox={x:t,y:i,width:n-t,height:o-i};return}this.boundingBox=null}intersects(e){if(!e||this.shape.type==="none")return!1;let[t,i]=e,n=this.shape.points,o=this.boundingBox;if(o||(this.updateBoundingBox(),o=this.boundingBox),!o||t<o.x||t>o.x+o.width||i<o.y||i>o.height+o.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 o=0;o<n;o++)if(e.points[o][0]!==this.shape.points[o][0]||e.points[o][1]!==this.shape.points[o][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=Ul[i]||Vl.exec(i)||Vl.exec(i);n&&(this._parsed.border.id=i,this._parsed.border.match=Ul[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=Ul[e.style.outline]||Vl.exec(e.style.outline)||Vl.exec(e.style.outline);n&&(this._parsed.outline.id=e.style.outline,this._parsed.outline.match=Ul[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 xb)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++}},My=/(-?[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,ky={},Sb=typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes("firefox"),Hl={},wb=class{constructor(e,t){b(this,"canvas"),b(this,"ctx"),b(this,"options"),b(this,"imagesPending",0),b(this,"imagesLoaded",0),b(this,"imageIdsLoaded",[]),b(this,"frameIsRendering",!1),b(this,"pendingDrawCall",!1),b(this,"firstMeaningfulPaint",!1),b(this,"parallelTasks",8),b(this,"frameTasks",0),b(this,"loadingQueueOrdered",!0),b(this,"loadingQueue",[]),b(this,"currentTask",Promise.resolve()),b(this,"tasksRunning",0),b(this,"stats"),b(this,"averageJobTime",64),b(this,"lastKnownScale",1),b(this,"visible",[]),b(this,"previousVisible",[]),b(this,"rendererPosition"),b(this,"dpi"),b(this,"drawCalls",[]),b(this,"lastPaintedObject"),b(this,"hostCache"),b(this,"invalidated",[]),b(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--}))}}),b(this,"_scheduled",0),b(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 og({maxSize:1024*512*512,dispose:(i,n,o)=>{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(),o=n.width/e,a=n.height/t,l=(o<a?a:o)*(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 o=this.getCanvasDims();if(this.ctx.globalAlpha=1,this.ctx.fillStyle=this.options.background||"rgb(0, 0, 0)",this.ctx.fillRect(0,0,o.width,o.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,o){let a=e.__owner.value;if(a&&a.rotation){this.ctx.save();let l=t+n/2,c=i+o/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,o,a){let l=this.ctx.globalAlpha;if(e instanceof er||e instanceof Ls){if(e.display.rotation){this.ctx.save();let m=i+o/2,f=n+a/2;e.crop&&(m-=e.crop[t*5+1],f-=e.crop[t*5+2]),this.ctx.translate(m,f),this.ctx.rotate(e.display.rotation*Math.PI/180),this.ctx.translate(-m,-f)}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,f=this.getCanvasDims();if((m.indices.indexOf(t)===-1||this.invalidated.indexOf(m.canvases[t])!==-1)&&this.schedulePaintToCanvas(m,e,t,Ql({x:i+o/2,y:n+o/2},{x:f.width/2,y:f.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 P=e.x*this.lastKnownScale,v=e.y*this.lastKnownScale,x=[i+P,n+v,o,a];x[0]+=P,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 Sb?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,o+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,o+Number.MIN_VALUE+.5,a+Number.MIN_VALUE+.5)}catch{}e.display.rotation&&this.ctx.restore()}let c=e instanceof Ms&&this.options.box,p=e instanceof Uy&&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:{}),f=e.props.relativeStyle?1:o/e.width;typeof m.opacity<"u"&&(this.ctx.globalAlpha=m.opacity);let y=0;typeof m.borderWidth<"u"&&(y=parseInt(m.borderWidth,10)*f);let S=0;typeof m.outlineWidth<"u"&&(S=parseInt(m.outlineWidth,10)*f);let P=0;if(typeof m.outlineOffset<"u"&&(P=parseInt(m.outlineOffset,10)*f),m.borderColor&&(this.ctx.strokeStyle=m.borderColor),m.boxShadow){let v=m.boxShadow.split(/,(?![^(]*\))/);for(let x of v){let E=ky[x]||My.exec(x)||My.exec(x);ky[x]=E,E&&(this.ctx.save(),this.ctx.shadowOffsetX=parseInt(E[1])*this.dpi*f,this.ctx.shadowOffsetY=parseInt(E[3])*this.dpi*f,this.ctx.shadowBlur=parseInt(E[5])*this.dpi*f,this.ctx.shadowColor=E[9],this.ctx.fillStyle="rgba(0,0,0,1)",this.ctx.fillRect(i+y,n+y,o,a),this.ctx.restore())}}if(this.ctx.fillStyle=m.backgroundColor||"transparent",this.ctx.lineWidth=y,p){let v=e.shape,x=v.points||[],E=x.length;this.ctx.beginPath();for(let C=0;C<E;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,o+y,a+y),this.ctx.fillRect(i+y,n+y,o,a);S&&(m.outlineColor&&(this.ctx.strokeStyle=m.outlineColor),this.ctx.lineWidth=S,this.ctx.strokeRect(i-S/2-P,n-S/2-P,o+y*2+S+P*2,a+y*2+S+P*2))}this.ctx.globalAlpha=l}}loadImage(e,t,i,n=!1){if(Hl[e]&&Hl[e].naturalWidth>0){t(Hl[e]);return}try{let o=!1;n||setTimeout(()=>{o||this.loadImage(e,t,i,!0)},3e3);let a=document.createElement("img");a.decoding="auto",a.onload=function(){o=!0,t(a),Hl[e]=a,a.onload=null},this.options.crossOrigin&&(a.crossOrigin="anonymous"),a.src=e,a.complete&&a.onload({}),a.width}catch(o){console.log("image error",o),i(o)}}schedulePaintToCanvas(e,t,i,n){this.imagesPending++,e.indices.push(i);let o=`${t.id}--${t.display.scale}-${i}`,a=this.invalidated.indexOf(o);a!==-1&&this.invalidated.splice(a,1),e.canvases[i]=o,t.__host.canvas.loading=!0,this.loadingQueueOrdered=!1,this.loadingQueue.push({id:o,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:o,scale:t.display.scale,distance:n,task:()=>new Promise(m=>{this.imageIdsLoaded.includes(o)||(this.imagesLoaded++,this.imageIdsLoaded.push(o)),e.loaded.push(i),e.loaded.length===e.indices.length&&(e.loading=!1);let f=t.display.points.slice(i*5,i*5+5),y=document.createElement("canvas"),S=y.getContext("2d");y.width=f[3]-f[1],y.height=f[4]-f[2],this.hostCache.set(e.canvases[i],y),this.drawCalls.push(()=>{S.drawImage(p,0,0,f[3]-f[1],f[4]-f[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 er||e instanceof Ls)&&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 o=t[3]-t[1]<n.points[3]-n.points[1],a=t[4]-t[2]<n.points[4]-n.points[2];return{x1:o?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:o?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=[]}},Hy=class{constructor(e){b(this,"renderers",[]),b(this,"length");for(let t of e)t&&this.renderers.push(t);this.length=this.renderers.length}afterFrame(e,t,i,n){for(let o=0;o<this.length;o++)this.renderers[o].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 o=0;o<this.length;o++)this.renderers[o].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,o,a){for(let l=0;l<this.length;l++)this.renderers[l].paint(e,t,i,n,o,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()}},bb=class{constructor(e){b(this,"canvas"),b(this,"context"),b(this,"heightRatio",1),b(this,"widthRatio",1),b(this,"target",new Float32Array(5)),b(this,"initialWidth"),b(this,"initialHeight"),b(this,"bounds"),b(this,"aggregate"),b(this,"delta",0),b(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=yi(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,o=this.initialHeight/e.height,a=this.widthRatio>this.heightRatio?n:o;if(this.target=i,this.bounds){let l=e.getPointsAt(this.bounds,this.aggregate,a);for(let[c,p]of l)if(c instanceof er&&c.__host.canvas){let m=p.length/5;for(let f=0;f<m;f++)if(c.__host.canvas.canvases[f]){let y={x1:p[f+1]*a,y1:p[f+2]*a,width:(p[f+3]-p[f+1])*a,height:(p[f+4]-p[f+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,o,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 Pb(e){return{x:e[1],y:e[2],width:e[3]-e[1],height:e[4]-e[2]}}var Cb={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:!1,onPanInSketchMode:()=>{}},qy=(e={})=>({start:function(t){let{zoomWheelConstant:i,enableWheel:n,enableClickToZoom:o}={...Cb,...e},a={pointerStart:{x:0,y:0},isPressing:!1,mousemoveBuffer:re(5),multiTouch:{distance:0}};t.world.activatedEvents.push("onMouseUp","onMouseDown","onMouseMove","onTouchStart","onTouchEnd","onTouchMove","onPointerUp","onPointerDown","onPointerMove");let l=[],c=[],p=-1;function m(k){for(let O=0;O<l.length;O++)if(l[O].pointerId==k.pointerId){l.splice(O,1),c.splice(O,1);break}}function f(k){l.push(k),c.push({...k.atlas||{}})}function y(k){for(let O=0;O<l.length;O++)if(k.pointerId==l[O].pointerId){l[O]=k,c[O]={...k.atlas||{}};break}if(l.length==2){let O=Math.abs(l[0].clientX-l[1].clientX),K=c[0].x>c[1].x?c[0].x-c[1].x:c[1].x-c[0].x,U=c[0].y>c[1].y?c[0].y-c[1].y:c[1].y-c[0].y;p>0&&(O>p&&t.world.zoomTo(.95,{x:K/2,y:U/2},!0),O<p&&t.world.zoomTo(1.05,{x:K/2,y:U/2},!0)),p=O}}function S(k){m(k),l.length<2&&(p=-1)}function P(){t.world.constraintBounds(),E=0}function v(k){if(k.which>1){a.isPressing=!1;return}t.mode==="explore"&&(k.preventDefault(),a.pointerStart.x=k.atlas.x,a.pointerStart.y=k.atlas.y,t.transitionManager.stopTransition(),a.isPressing=!0)}function x(){a.isPressing&&(t.mode==="explore"&&t.world.constraintBounds(),a.isPressing=!1)}let E=0;function C(k){if(t.mode==="explore"){if(k.atlasTouches.length===1&&(k.preventDefault(),a.pointerStart.x=k.atlasTouches[0].x,a.pointerStart.y=k.atlasTouches[0].y),k.atlasTouches.length===2){k.preventDefault();let O=k.atlasTouches[0].x,K=k.atlasTouches[1].x;a.pointerStart.x=(O+K)/2;let U=k.atlasTouches[0].y,G=k.atlasTouches[1].y;a.pointerStart.y=(U+G)/2,E=Ql({x:k.touches[0].clientX,y:k.touches[0].clientY},{x:k.touches[1].clientX,y:k.touches[1].clientY})}t.transitionManager.stopTransition(),a.isPressing=!0}}function T(k){let O=null,K=null,U=!1,G=0;if(a.isPressing&&k.touches.length===2){let te=k.touches[0].clientX,Ie=k.touches[1].clientX;O=(te+Ie)/2;let ye=k.touches[0].clientY,ke=k.touches[1].clientY;K=(ye+ke)/2,G=Ql({x:k.touches[0].clientX,y:k.touches[0].clientY},{x:k.touches[1].clientX,y:k.touches[1].clientY}),U=!0}if(a.isPressing&&k.touches.length===1){let te=k.touches[0];O=te.clientX,K=te.clientY}if(O!==null&&K!==null){let te=t.getRendererScreenPosition();if(te){let{x:Ie,y:ye}=t.viewerToWorld(O-te.x,K-te.y),ke=G&&E?G/E:1;t.transitionManager.customTransition(ve=>{ve.from=re(t.target),ve.to=vi(ve.from,li(ut(a.pointerStart.x-Ie,a.pointerStart.y-ye),In(1/ke,Ie,ye)),a.mousemoveBuffer),ve.elapsed_time=0,ve.total_time=0,ve.timingFunction=Jn.easeInOutExpo,ve.done=!1})}E=G}}function A(k){if(a.isPressing){let O=t.getRendererScreenPosition();if(O){let{x:K,y:U}=t.viewerToWorld(k.clientX-O.x,k.clientY-O.y);t.transitionManager.customTransition(G=>{G.from=re(t.target),G.to=vi(G.from,ut(a.pointerStart.x-K,a.pointerStart.y-U),a.mousemoveBuffer),G.elapsed_time=0,G.total_time=0,G.timingFunction=Jn.easeInOutExpo,G.done=!1})}}}function N(k){t.mode==="explore"&&t.world.zoomIn(k.atlas)}function D(k){let O=1+(0,Wy.default)(k).spinY/i;t.world.zoomTo(O,k.atlas,!0)}t.world.addEventListener("mouseup",P),t.world.addEventListener("touchend",P),t.world.addEventListener("touchstart",C),t.world.addEventListener("mousedown",v),window.addEventListener("touchend",x),window.addEventListener("mouseup",x),window.addEventListener("mousemove",A),window.addEventListener("touchmove",T),o&&(t.world.activatedEvents.push("onClick"),t.world.addEventListener("click",N)),n&&(t.world.activatedEvents.push("onWheel"),t.world.addEventListener("wheel",D));let M=t.world.addLayoutSubscriber((k,O)=>{if(k==="zone-changed"&&t.transitionManager.constrainBounds({transition:{duration:0}}),k==="zoom-to"&&O&&t.transitionManager.zoomTo(O.factor,{origin:O.point,stream:O.stream}),k==="go-home"){let K=O.immediate?{duration:0}:void 0;t.transitionManager.goToRegion(Pb(t.homePosition),{transition:K})}if(k==="goto-region"&&O){let K=O.immediate?{duration:0}:{};t.transitionManager.goToRegion(O,{transition:K})}k==="constrain-bounds"&&t.transitionManager.constrainBounds({transition:O?.immediate?{duration:0}:void 0})});return()=>{t.world.removeEventListener("mouseup",P),t.world.removeEventListener("touchend",P),t.world.removeEventListener("touchstart",C),t.world.removeEventListener("mousedown",v),window.removeEventListener("touchend",x),window.removeEventListener("mouseup",x),t.world.removeEventListener("mousemove",A),t.world.removeEventListener("touchmove",A),o&&t.world.removeEventListener("click",N),n&&t.world.removeEventListener("wheel",D),M()}},updatePosition(){}}),Ao=eu.default.createContext("explore");Ao.displayName="Mode";var Ab=()=>(0,eu.useContext)(Ao);var tu=gh.default.createContext(null);tu.displayName="Atlas";var iu=gh.default.createContext(null);iu.displayName="Bounds";var Yl,Tb=typeof performance=="object"&&typeof performance.now=="function";if(Tb){let e=performance;Yl=()=>e.now()}else{let e=Date,t=e.now();Yl=()=>e.now()-t}var Rb=16;function Oy(e,t){e&&e.appendChild&&t&&e.appendChild(t)}function Yy(e,t){e&&e.removeChild&&t&&e.removeChild(t)}function Ib(e,t){return Yy(e.world,t)}function _b(e,t,i){return Gy(e.world,t,i)}function Gy(e,t,i){e&&e instanceof Jl&&(e=e.world),e&&e.insertBefore&&e.insertBefore(t,i)}function Xy(e,t,i){if(i&&(e.applyProps&&e.applyProps(i),e instanceof yn))for(let n of Xl){let o=n.slice(2).toLowerCase();i[n]!==t[n]&&(t[n]&&e.removeEventListener(o,t[n]),e.addEventListener(o,i[n]))}}function Ky(e,t){let i=Object.keys(t),n=!1;for(let o of i)if(Xl.indexOf(o)!==-1){let a=Eo[o];if(a){if(e.activatedEvents.indexOf(a)!==-1)continue;n=!0,e.activatedEvents.push(a)}}n&&e.triggerEventActivation()}var Gl=new Map,Ly={};function Mb(e,{args:t=[],...i},n,o,a){if(!(n instanceof Jl)&&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=Zl.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 Ms;break;case"shape":l=new Uy;break;case"worldObject":case"world-object":l=new mh;break;case"worldImage":case"world-image":l=new er;break;case"texture":l=new dh;break;case"compositeImage":case"composite-image":l=new gb({id:i.id,width:i.width,height:i.height,images:[],renderOptions:i.renderOptions});break;case"tiledImage":case"tiled-image":l=Ls.fromTile(i.uri,i.display,i.tile,i.scaleFactor,void 0,i.format);break;case"paragraph":l=new Wl,l.text=i.children;break;default:return}return Ky(c,i),Xy(l,{},i),l}function kb(e,t){if(t instanceof Zl)e.world=t;else if(t instanceof mh)e.world.appendChild(t);else if(t)throw new Error("Invalid root")}var Os=(0,Qy.default)({unstable_now:Yl,now:Yl,createInstance:Mb,removeChild:Yy,appendChild:Oy,appendInitialChild:Oy,insertBefore:Gy,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:kb,removeChildFromContainer:Ib,createTextInstance(){},insertInContainerBefore:_b,prepareUpdate(e,t,i,n,o){return Ky(o.world,n),n},commitUpdate(e,t,i,n,o,a){e.applyProps&&t&&Xy(e,n,t)},finalizeInitialChildren(e){return e?.__handlers},getChildHostContext(){return Ly},getRootHostContext(){return Ly},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"),Rb},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(){}});Os.injectIntoDevTools({bundleType:0,version:$y.version,rendererPackageName:"@atlas-viewer/atlas"});function yh(e,t){let i=Gl.get(e);i&&Os.updateContainer(null,i,null,()=>{Gl.delete(e),t&&t(e)})}var zy={render(e,t){let i=Gl.get(t);if(i)Os.updateContainer(e,i,null);else{let n=Os.createContainer(t,0,null,!1,null,"",()=>{},null);Os.updateContainer(e,n,null),Gl.set(t,n)}},unmountComponentAtNode(e,t){yh(e,t)}},Co=typeof window<"u"&&(window.document?.createElement||window.navigator?.product==="ReactNative")?nu.useLayoutEffect:nu.useEffect,Ob=gn.default.memo(({children:e,setIsReady:t,onCreated:i,bounds:n,preset:o,mode:a="explore"})=>{let l=(0,gn.useCallback)(function(c){let p=(0,gn.useRef)(!1),m=()=>{t(!0)};return(0,gn.useEffect)(()=>{if(o&&!p.current){o.runtime.goHome();let f=i&&i(o);return void(f&&f.then?f.then(m):m())}return()=>{}},[]),(0,gn.useEffect)(()=>{p.current=!0},[]),c.children},[o]);return Co(()=>{if(o){let c=o.runtime;a!==c.mode&&(c.mode=a),zy.render((0,Po.jsx)(gn.default.StrictMode,{children:(0,Po.jsx)(l,{children:(0,Po.jsx)(iu.Provider,{value:n,children:(0,Po.jsx)(Ao.Provider,{value:a,children:(0,Po.jsx)(tu.Provider,{value:o,children:e})})})})}),c)}},[o,a,e]),Co(()=>{if(o){let c=o.runtime;return()=>{zy.unmountComponentAtNode(c)}}return()=>{}},[o]),null}),Lb=class{constructor(e,t){b(this,"canvas"),b(this,"gl"),b(this,"program"),b(this,"fragmentShader"),b(this,"vertexShader"),b(this,"rectBuffer"),b(this,"fragmentShaderSource",`
12
12
  precision mediump float;
13
13
 
14
14
  uniform sampler2D u_image;
@@ -41,16 +41,16 @@ No matching component was found for:
41
41
 
42
42
  v_texCoord = a_texCoord;
43
43
  }
44
- `),b(this,"attributes"),b(this,"uniforms"),b(this,"buffers"),b(this,"rendererPosition"),b(this,"dpi"),b(this,"lastResize",0),b(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 $n||e instanceof Is)&&this.createImageHost(e),e instanceof id&&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 id){let o=e.getTexture();o.source&&t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,o.source),n=o}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 o=this.gl,a=this.gl.createTexture();o.bindTexture(o.TEXTURE_2D,a),o.pixelStorei(o.UNPACK_FLIP_Y_WEBGL,!1),o.texImage2D(o.TEXTURE_2D,0,o.RGBA,o.RGBA,o.UNSIGNED_BYTE,n),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MAG_FILTER,o.LINEAR),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MIN_FILTER,o.LINEAR),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_T,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_S,o.CLAMP_TO_EDGE),o.bindTexture(o.TEXTURE_2D,null),e.__host.webgl.textures[i]=a,e.__host.webgl.loaded.push(i)}}}paint(e,t,i,n,o,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,f=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,f,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,o,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(),o=n.width/e,a=n.height/t,l=(o<a?a:o)*(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 o=e,a=e+i,l=t,c=t+n;return this.rectBuffer.set([o,l,a,l,o,c,o,c,a,l,a,c]),this.rectBuffer}getRendererScreenPosition(){return this.rendererPosition}finishLayer(){}reset(){}};function nd(e,t){let i=t?e:JSON.stringify(e),n=5381,o=i.length;for(;o;)n=n*33^i.charCodeAt(--o);let a=(n>>>0).toString(16);return a.length%2?"0"+a:a}var Hy=class{constructor(e){b(this,"$element"),b(this,"stylesheetClasses"),b(this,"activeStylesheetClasses"),b(this,"sheetsDidUpdate"),b(this,"sheetPrefix"),b(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+nd(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+nd(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])}},Wy=class{constructor(e,t){b(this,"htmlContainer"),b(this,"visible",[]),b(this,"previousVisible",[]),b(this,"htmlIds",[]),b(this,"firstMeaningfulPaint",!1),b(this,"rendererPosition"),b(this,"stylesheet"),b(this,"options"),b(this,"paintTx",1),b(this,"zIndex",0),b(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 Hy({sheetPrefix:this.options.sheetPrefix}),this.options.inlineStyles||this.htmlContainer.appendChild(this.stylesheet.getElement()),this.options.background&&this.htmlContainer.classList.add(this.stylesheet.addStylesheet(`
44
+ `),b(this,"attributes"),b(this,"uniforms"),b(this,"buffers"),b(this,"rendererPosition"),b(this,"dpi"),b(this,"lastResize",0),b(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 er||e instanceof Ls)&&this.createImageHost(e),e instanceof dh&&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 dh){let o=e.getTexture();o.source&&t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,o.source),n=o}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 o=this.gl,a=this.gl.createTexture();o.bindTexture(o.TEXTURE_2D,a),o.pixelStorei(o.UNPACK_FLIP_Y_WEBGL,!1),o.texImage2D(o.TEXTURE_2D,0,o.RGBA,o.RGBA,o.UNSIGNED_BYTE,n),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MAG_FILTER,o.LINEAR),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MIN_FILTER,o.LINEAR),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_T,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_S,o.CLAMP_TO_EDGE),o.bindTexture(o.TEXTURE_2D,null),e.__host.webgl.textures[i]=a,e.__host.webgl.loaded.push(i)}}}paint(e,t,i,n,o,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,f=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,f,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,o,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(),o=n.width/e,a=n.height/t,l=(o<a?a:o)*(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 o=e,a=e+i,l=t,c=t+n;return this.rectBuffer.set([o,l,a,l,o,c,o,c,a,l,a,c]),this.rectBuffer}getRendererScreenPosition(){return this.rendererPosition}finishLayer(){}reset(){}};function hh(e,t){let i=t?e:JSON.stringify(e),n=5381,o=i.length;for(;o;)n=n*33^i.charCodeAt(--o);let a=(n>>>0).toString(16);return a.length%2?"0"+a:a}var Zy=class{constructor(e){b(this,"$element"),b(this,"stylesheetClasses"),b(this,"activeStylesheetClasses"),b(this,"sheetsDidUpdate"),b(this,"sheetPrefix"),b(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+hh(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+hh(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])}},Jy=class{constructor(e,t){b(this,"htmlContainer"),b(this,"visible",[]),b(this,"previousVisible",[]),b(this,"htmlIds",[]),b(this,"firstMeaningfulPaint",!1),b(this,"rendererPosition"),b(this,"stylesheet"),b(this,"options"),b(this,"paintTx",1),b(this,"zIndex",0),b(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 Zy({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,o=[this.classes.hostClassName];if(e.props.interactive?this.options.inlineStyles?n.style.pointerEvents="all":o.push(this.classes.interactive):this.options.inlineStyles?n.style.pointerEvents="none":o.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&&(o.push(e.props.className),e.hovering&&o.push(`${e.props.className}--hover`),e.pressing&&o.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 Bl){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=o.join(" ");n.className=l,n.part=l}e instanceof As&&(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=o.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,o,a){if(this.zIndex++,(this.options.text&&e instanceof Bl||e instanceof As&&(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,o,a);let l=o/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 Bl||e instanceof As)&&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(){}},qy=class Dl{constructor(t,i,n){b(this,"element"),b(this,"runtime"),b(this,"unsubscribe"),b(this,"activatedEvents",[]),b(this,"eventHandlers",[]),b(this,"bounds"),b(this,"pointerMoveEvent"),b(this,"pointerEventState",{isClicking:!1,isDragging:!1,isPressed:!1,mousedOver:[],itemsBeingDragged:[],mouseDownStart:{x:0,y:0},lastTouches:[]}),b(this,"options"),b(this,"_realPointerMove",a=>{this.pointerMoveEvent=a}),b(this,"onWheelEvent",a=>{a.preventDefault(),this.onPointerEvent(a)}),b(this,"onTouchEvent",a=>{let l=wo[a.type],c=[],p=a.touches.length;for(let m=0;m<p;m++){let f=a.touches.item(m);if(!f)continue;let{x:y,y:w}=this.runtime.viewerToWorld(f.clientX-this.bounds.left,f.clientY-this.bounds.top),P={id:f.identifier,x:y,y:w};c.push(P)}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=[])}),b(this,"onPointerEvent",a=>{let l=wo[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)}}),b(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)}),b(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)}),b(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=[],f=[];for(let y of p)m.push(y.id),f.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&&jl(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=f}),this.element=t,this.runtime=i,this.unsubscribe=i.world.addLayoutSubscriber(this.layoutSubscriber.bind(this)),this.bounds=t.getBoundingClientRect(),this.options={simulationRate:0,...n||{}};let o=0;i.registerHook("useFrame",a=>{o+=a,o>this.options.simulationRate&&this.pointerMoveEvent&&(o=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.activateEvents()}assignToEvent(t,i,n){Dl.eventPool.atlas.x=i,Dl.eventPool.atlas.y=n,t.atlas=Dl.eventPool.atlas}activateEvents(){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.unsubscribe();for(let[t,i]of this.eventHandlers)this.element.removeEventListener(this.normalizeEventName(t),i)}};b(qy,"eventPool",{atlas:{x:0,y:0}});var Qy=qy;function Yy({interactive:e=!0,viewport:t,forceRefresh:i,canvasElement:n,overlayElement:o,controllerConfig:a,unstable_webglRenderer:l,dpi:c,debug:p,canvasBox:m=!0,polygon:f=!0,navigatorElement:y,background:w,runtimeOptions:P}){if(!n)throw new Error("Invalid container");n.style.userSelect="none";let v=e?Ny({minZoomFactor:.5,maxZoomFactor:3,enableClickToZoom:!1,...a||{}}):void 0,x=new Ly([l?new wb(n,{dpi:c}):new lb(n,{dpi:c,debug:p,box:m,polygon:f,background:w}),o?new Wy(o,{box:l||!m,text:!0,triggerResize:i}):void 0,y?new ub(y):void 0]),C=new Yl(x,new Ql(1024,1024),t,v?[v]:[],P),E=new Qy(n,C);return{name:"default-preset",em:E,runtime:C,renderer:x,controller:v,canvas:n,navigator:y,unmount(){ld(C),C.stopControllers(),C.stop(),C.reset(),E&&E.stop()}}}var Yn=1+Number.MIN_VALUE,bb=class{constructor(e,t){b(this,"container"),b(this,"width"),b(this,"height"),b(this,"pending",!0),b(this,"options"),b(this,"stylesheet"),b(this,"zIndex",0),b(this,"lastKnownScale",1),b(this,"rendererPosition"),b(this,"currentlyVisible",[]),b(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 Hy({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,o=[this.classes.hostClassName];if(e.props.interactive?this.options.inlineStyles?n.style.pointerEvents="all":o.push(this.classes.interactive):this.options.inlineStyles?n.style.pointerEvents="none":o.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&&(o.push(e.props.className),e.hovering&&o.push(`${e.props.className}--hover`),e.pressing&&o.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 Wl){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=o.join(" ");n.className=l,n.part=l}e instanceof Ms&&(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=o.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,o,a){if(this.zIndex++,(this.options.text&&e instanceof Wl||e instanceof Ms&&(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,o,a);let l=o/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 Wl||e instanceof Ms)&&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(){}},ev=class ql{constructor(t,i,n){b(this,"element"),b(this,"runtime"),b(this,"unsubscribe"),b(this,"activatedEvents",[]),b(this,"eventHandlers",[]),b(this,"bounds"),b(this,"pointerMoveEvent"),b(this,"pointerEventState",{isClicking:!1,isDragging:!1,isPressed:!1,mousedOver:[],itemsBeingDragged:[],mouseDownStart:{x:0,y:0},lastTouches:[]}),b(this,"options"),b(this,"_realPointerMove",a=>{this.pointerMoveEvent=a}),b(this,"onWheelEvent",a=>{a.preventDefault(),this.onPointerEvent(a)}),b(this,"onTouchEvent",a=>{let l=Eo[a.type],c=[],p=a.touches.length;for(let m=0;m<p;m++){let f=a.touches.item(m);if(!f)continue;let{x:y,y:S}=this.runtime.viewerToWorld(f.clientX-this.bounds.left,f.clientY-this.bounds.top),P={id:f.identifier,x:y,y:S};c.push(P)}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=[])}),b(this,"onPointerEvent",a=>{let l=Eo[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)}}),b(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)}),b(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)}),b(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=[],f=[];for(let y of p)m.push(y.id),f.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&&Ql(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=f}),this.element=t,this.runtime=i,this.unsubscribe=i.world.addLayoutSubscriber(this.layoutSubscriber.bind(this)),this.bounds=t.getBoundingClientRect(),this.options={simulationRate:0,...n||{}};let o=0;i.registerHook("useFrame",a=>{o+=a,o>this.options.simulationRate&&this.pointerMoveEvent&&(o=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.activateEvents()}assignToEvent(t,i,n){ql.eventPool.atlas.x=i,ql.eventPool.atlas.y=n,t.atlas=ql.eventPool.atlas}activateEvents(){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.unsubscribe();for(let[t,i]of this.eventHandlers)this.element.removeEventListener(this.normalizeEventName(t),i)}};b(ev,"eventPool",{atlas:{x:0,y:0}});var tv=ev;function iv({interactive:e=!0,viewport:t,forceRefresh:i,canvasElement:n,overlayElement:o,controllerConfig:a,unstable_webglRenderer:l,dpi:c,debug:p,canvasBox:m=!0,polygon:f=!0,navigatorElement:y,background:S,runtimeOptions:P}){if(!n)throw new Error("Invalid container");n.style.userSelect="none";let v=e?qy({minZoomFactor:.5,maxZoomFactor:3,enableClickToZoom:!1,...a||{}}):void 0,x=new Hy([l?new Lb(n,{dpi:c}):new wb(n,{dpi:c,debug:p,box:m,polygon:f,background:S}),o?new Jy(o,{box:l||!m,text:!0,triggerResize:i}):void 0,y?new bb(y):void 0]),E=new Jl(x,new Zl(1024,1024),t,v?[v]:[],P),C=new tv(n,E);return{name:"default-preset",em:C,runtime:E,renderer:x,controller:v,canvas:n,navigator:y,unmount(){yh(E),E.stopControllers(),E.stop(),E.reset(),C&&C.stop()}}}var Zn=1+Number.MIN_VALUE,zb=class{constructor(e,t){b(this,"container"),b(this,"width"),b(this,"height"),b(this,"pending",!0),b(this,"options"),b(this,"stylesheet"),b(this,"zIndex",0),b(this,"lastKnownScale",1),b(this,"rendererPosition"),b(this,"currentlyVisible",[]),b(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 Zy({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,o=i<n?n:i;return Number.isNaN(o)||(this.lastKnownScale=o),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,o,a){if(this.pending=!1,this.zIndex++,e instanceof $n){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:${(o+Yn).toFixed(2)}px;height:${(a+Yn).toFixed(2)}px;`):(l.style.width=`${o+Yn}px`,l.style.height=`${a+Yn}px`),l.style.transform=`translate(${i}px, ${n}px)`}if(e instanceof Is){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:${(o+Yn).toFixed(2)}px;height:${(a+Yn).toFixed(2)}px;`):(l.style.width=`${o+Yn}px`,l.style.height=`${a+Yn}px`),l.style.transform=`translate(${i}px, ${n}px)`}}pendingUpdate(){return this.pending}prepareLayer(e){}finishLayer(e){}reset(){}};function Pb({interactive:e,viewport:t,forceRefresh:i,containerElement:n,overlayElement:o,controllerConfig:a,background:l}){if(!n)throw new Error("Invalid container");n.style.userSelect="none";let c=e?Ny({minZoomFactor:.5,maxZoomFactor:3,enableClickToZoom:!1,...a||{}}):void 0,p=new bb(n,{addPart:!1,setDraggableFalse:!1,imageClass:"atlas-static-image",background:l}),m=o?new Ly([p,new Wy(o,{box:!0,text:!0,triggerResize:i})]):p,f=new Yl(m,new Ql(1024,1024),t,c?[c]:[]),y=new Qy(n,f);return{name:"static-preset",em:y,runtime:f,renderer:m,controller:c,container:n,overlay:o,unmount(){ld(f),f.stopControllers(),f.stop(),y&&y.stop()}}}var Cb={"default-preset":Yy,"static-preset":Pb},Eb={};function Ab(e,t){let i=(0,Li.useRef)(),n=(0,Li.useRef)(),o=(0,Li.useRef)(),a=(0,Li.useRef)(),l=(0,Li.useRef)({width:t.width,height:t.height,didUpdate:!0}),[c="default-preset",p=Eb]=Array.isArray(e)?e||[]:[e],[m,f]=(0,Li.useState)(null);(0,Li.useLayoutEffect)(()=>{let w=n.current,P=a.current,v=i.current,x=o.current,C=(Cb[c]||Yy)({containerElement:P,canvasElement:w,overlayElement:v,navigatorElement:x,viewport:l.current,dpi:window.devicePixelRatio||1,forceRefresh:t.forceRefresh,unstable_webglRenderer:t.unstable_webglRenderer,...p||{}});return f(C),()=>{C&&(C.unmount(),w&&(w.height=0,w.width=0),v&&(v.innerHTML=""),x&&(x.height=0,x.width=0))}},[c,p]);let y=(0,Li.useMemo)(()=>({canvas:n,overlay:i,container:a,navigator:o}),[]);return[c,m,l,y]}function Rb(e){return(0,Gy.useMemo)(()=>nd(e),e)}var Es=$y.default.forwardRef((e,t)=>(0,Xy.jsx)("div",{...e,ref:t,part:e.className})),Ry=["brightness","contrast","grayscale","hueRotate","invert","saturate","sepia","blur"],Tb=({htmlChildren:e,renderPreset:t,onCreated:i,mode:n="explore",resetWorldOnChange:o=!0,unstable_webglRenderer:a=!1,unstable_noReconciler:l=!1,hideInlineStyle:c=!1,controllerConfig:p,children:m,overlayStyle:f,containerStyle:y,enableNavigator:w,className:P,containerProps:v={},homePosition:x,homeOnResize:C,homeCover:E,background:T,runtimeOptions:R,debug:G,filters:V,...O})=>{let[L,F]=(0,ot.useState)(T),[j,J]=(0,ot.useState)(n),[$,ne]=(0,ot.useState)(!1),Ce=(0,ot.useRef)(!1),Me=(0,ot.useMemo)(()=>(typeof t=="string"&&(t=[t,{}]),L||G?t?[t[0],{debug:G,background:L,...t[1]||{}}]:["default-preset",{background:L,debug:G}]:t||"default-preset"),[t,L,G]),[ke,ve,it]=yl({scroll:!0}),$e=(0,ot.useRef)(),yt=ee=>{$e.current=ee,ke(ee)},[de,H,ye,He]=Ab(Me,{width:O.width,height:O.height,forceRefresh:it,unstable_webglRenderer:a}),[N,W]=(0,ot.useState)("");(0,ot.useEffect)(()=>{J(n)},[n]),(0,ot.useEffect)(()=>{H&&H.em&&H.em.updateBounds()},[H,ve]),(0,ot.useEffect)(()=>{H?.runtime.setOptions(R||{})},[R]),(0,ot.useEffect)(()=>{H&&H.runtime&&(H.runtime.mode=j),$&&H&&(H.ready=!0)},[H,$,j]),(0,ot.useEffect)(()=>{H&&(E||(H.runtime.manualHomePosition=!!x,H.runtime.setHomePosition(x)))},[H,E,x]),(0,ot.useEffect)(()=>{if(H){let ee=H.runtime;ee.resize(ye.current.width,O.width,ye.current.height,O.height),ye.current.width=O.width,ye.current.height=O.height,ee.updateNextFrame(),ye.current.didUpdate=!0}},[H,O.width,O.height]),(0,ot.useEffect)(()=>{if(V&&H){let ee=H.runtime,Re=!1;ee.hookOptions.enableFilters=!0;for(let Se of Ry)V[Se]?V[Se]!==H.runtime.hookOptions.filters[Se]&&(ee.hookOptions.filters[Se]=V[Se],Re=!0):ee.hookOptions.filters[Se]&&(ee.hookOptions.filters[Se]=0,Re=!0);Re&&ee.updateNextFrame()}else if(H){let ee=H.runtime;for(let Re of Ry)ee.hookOptions.filters[Re]=0;ee.hookOptions.enableFilters=!1,ee.updateNextFrame()}},[H,V]),So(()=>{if(H&&(H.overlay&&(H.overlay.style.width=`${ve.width}px`,H.overlay.style.height=`${ve.height}px`),H.container&&(H.container.style.width=`${ve.width}px`,H.container.style.height=`${ve.height}px`),E)){let ee=H.runtime.world.width,Re=H.runtime.world.height,Se=ee/Re,Pi=ye.current.width,ei=ye.current.height,Lt=Pi/ei;if(Se>Lt){Lt=ei/Pi,H.runtime.manualHomePosition=!0;let fi=(ee-Re/Lt)/2;E==="start"&&(fi=0),E==="end"&&(fi=ee-Re/Lt),H.runtime.setHomePosition({x:fi,y:0,width:Re/Lt,height:Re})}else{let fi=(Re-ee/Lt)/2;E==="start"&&(fi=0),E==="end"&&(fi=Re-ee/Lt),H.runtime.manualHomePosition=!0,H.runtime.setHomePosition({x:0,y:fi,width:ee,height:ee/Lt})}C&&H.runtime.goHome({})}},[H,ve.height,ve.width,E]),So(()=>{let ee=()=>{if(H){let Re=H.runtime;ye.current.width!==O.width&&ye.current.height!==O.height&&(Re.resize(ye.current.width,O.width,ye.current.height,O.height),ye.current.width=O.width,ye.current.height=O.height,Re.updateNextFrame(),ye.current.didUpdate=!0)}};return window.addEventListener("resize",ee),()=>window.removeEventListener("resize",ee)},[H,O.height,O.width]);let he={width:120},fe=()=>{if(H&&H.navigator){let ee=H.runtime.world.height,Re=H.runtime.world.width,Se=window.devicePixelRatio||1,Pi=he.width,ei=he.width/Re*ee;H.navigator.width=Pi*Se,H.navigator.height=ei*Se,H.navigator.style.width=Pi+"px",H.navigator.style.height=ei+"px"}};So(()=>{if(H){fe();let ee=H.runtime;return ee.world.addLayoutSubscriber(Re=>{Re==="recalculate-world-size"&&(fe(),ee.resize(ye.current.width,O.width,ye.current.height,O.height))})}return()=>{}},[H,O.width,O.height]);let me=(0,ot.useCallback)(function(ee){let Re=()=>{ne(!0)};return(0,ot.useEffect)(()=>{if(H){H.runtime.goHome();let Se=i&&i(H);return void(Se&&Se.then?Se.then(Re):Re())}else throw new Error("Invalid configuration - no runtime found")},[]),ee.children},[H]);(0,ot.useEffect)(()=>{if(H){let ee=H.runtime;if(o)return ee.world.addLayoutSubscriber(Re=>{Re==="recalculate-world-size"&&ee.goHome()})}return()=>{}},[H,o]),(0,ot.useEffect)(()=>H?H.runtime.registerHook("useBeforeFrame",()=>{if(ye.current.didUpdate&&H.canvas){let ee=window.devicePixelRatio||1,Re=ye.current.width,Se=ye.current.height;H.canvas.width=Re*ee,H.canvas.height=Se*ee,H.canvas.style.width=Re+"px",H.canvas.style.height=Se+"px",H.canvas.getContext("2d")?.scale(ee,ee),H&&H.em&&H.em.updateBounds(),ye.current.didUpdate=!1}}):()=>{},[H,o]),(0,ot.useEffect)(()=>{let ee=()=>{H&&(J("sketch"),W("mode-sketch")),window.removeEventListener("keyup",ee)},Re=Se=>{if(Se.code==="Space"&&H&&H.runtime.mode==="sketch"){if(Se.target&&Se.target.tagName&&Se.target.tagName.toLowerCase()==="input")return;Se.preventDefault(),J("explore"),W("mode-explore"),window.addEventListener("keyup",ee)}};return window.addEventListener("keydown",Re),()=>{window.removeEventListener("keydown",Re),window.removeEventListener("keyup",ee)}},[H]),So(()=>{if($e.current&&!L){let ee=getComputedStyle($e.current).getPropertyValue("--atlas-background");ee&&F(ee)}},[L]),Ce.current=!0;let{height:Ve,width:Ue,...Ae}=O,We=Rb([O.width,O.height]);return(0,Gt.jsxs)(Es,{ref:yt,className:["atlas",c?"":`atlas-width-${We}`,N,P,`atlas-${de}`].filter(Boolean).join(" ").trim(),style:{...y,...c?{}:{width:O.width,height:O.height}},children:[de==="static-preset"?(0,Gt.jsx)(Es,{className:"atlas-static-container",style:H&&H.controller?void 0:{pointerEvents:"none"},ref:He.container,tabIndex:0,...v}):(0,Gt.jsx)("canvas",{className:"atlas-canvas",part:"atlas-canvas",tabIndex:0,...Ae,...v,ref:He.canvas}),(0,Gt.jsx)(Es,{className:"atlas-overlay",style:{...f||{}},ref:He.overlay,children:l?(0,Gt.jsx)(me,{children:(0,Gt.jsx)(Xl.Provider,{value:ve,children:(0,Gt.jsx)(bo.Provider,{value:j,children:(0,Gt.jsx)($l.Provider,{value:H,children:m})})})}):(0,Gt.jsx)(Sb,{bounds:ve,preset:H,mode:j,setIsReady:ne,onCreated:i,children:m})}),w?(0,Gt.jsx)(Es,{className:"atlas-navigator",children:(0,Gt.jsx)("canvas",{className:"atlas-navigator-canvas",part:"atlas-navigator-canvas",ref:He.navigator})}):null,c?(0,Gt.jsx)("style",{children:`.atlas-width-${We} { width: ${O.width}px; height: ${O.height}px; }`}):(0,Gt.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,o=i<n?n:i;return Number.isNaN(o)||(this.lastKnownScale=o),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,o,a){if(this.pending=!1,this.zIndex++,e instanceof er){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:${(o+Zn).toFixed(2)}px;height:${(a+Zn).toFixed(2)}px;`):(l.style.width=`${o+Zn}px`,l.style.height=`${a+Zn}px`),l.style.transform=`translate(${i}px, ${n}px)`}if(e instanceof Ls){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:${(o+Zn).toFixed(2)}px;height:${(a+Zn).toFixed(2)}px;`):(l.style.width=`${o+Zn}px`,l.style.height=`${a+Zn}px`),l.style.transform=`translate(${i}px, ${n}px)`}}pendingUpdate(){return this.pending}prepareLayer(e){}finishLayer(e){}reset(){}};function Nb({interactive:e,viewport:t,forceRefresh:i,containerElement:n,overlayElement:o,controllerConfig:a,background:l}){if(!n)throw new Error("Invalid container");n.style.userSelect="none";let c=e?qy({minZoomFactor:.5,maxZoomFactor:3,enableClickToZoom:!1,...a||{}}):void 0,p=new zb(n,{addPart:!1,setDraggableFalse:!1,imageClass:"atlas-static-image",background:l}),m=o?new Hy([p,new Jy(o,{box:!0,text:!0,triggerResize:i})]):p,f=new Jl(m,new Zl(1024,1024),t,c?[c]:[]),y=new tv(n,f);return{name:"static-preset",em:y,runtime:f,renderer:m,controller:c,container:n,overlay:o,unmount(){yh(f),f.stopControllers(),f.stop(),y&&y.stop()}}}var Fb={"default-preset":iv,"static-preset":Nb},Bb={};function Db(e,t){let i=(0,Ni.useRef)(),n=(0,Ni.useRef)(),o=(0,Ni.useRef)(),a=(0,Ni.useRef)(),l=(0,Ni.useRef)({width:t.width,height:t.height,didUpdate:!0}),[c="default-preset",p=Bb]=Array.isArray(e)?e||[]:[e],[m,f]=(0,Ni.useState)(null);(0,Ni.useLayoutEffect)(()=>{let S=n.current,P=a.current,v=i.current,x=o.current,E=(Fb[c]||iv)({containerElement:P,canvasElement:S,overlayElement:v,navigatorElement:x,viewport:l.current,dpi:window.devicePixelRatio||1,forceRefresh:t.forceRefresh,unstable_webglRenderer:t.unstable_webglRenderer,...p||{}});return f(E),()=>{E&&(E.unmount(),S&&(S.height=0,S.width=0),v&&(v.innerHTML=""),x&&(x.height=0,x.width=0))}},[c,p]);let y=(0,Ni.useMemo)(()=>({canvas:n,overlay:i,container:a,navigator:o}),[]);return[c,m,l,y]}function jb(e){return(0,nv.useMemo)(()=>hh(e),e)}var _s=rv.default.forwardRef((e,t)=>(0,ov.jsx)("div",{...e,ref:t,part:e.className})),Ny=["brightness","contrast","grayscale","hueRotate","invert","saturate","sepia","blur"],Vb=({htmlChildren:e,renderPreset:t,onCreated:i,mode:n="explore",resetWorldOnChange:o=!0,unstable_webglRenderer:a=!1,unstable_noReconciler:l=!1,hideInlineStyle:c=!1,controllerConfig:p,children:m,overlayStyle:f,containerStyle:y,enableNavigator:S,className:P,containerProps:v={},homePosition:x,homeOnResize:E,homeCover:C,background:T,runtimeOptions:A,debug:N,filters:D,...M})=>{let[k,O]=(0,rt.useState)(T),[K,U]=(0,rt.useState)(n),[G,te]=(0,rt.useState)(!1),Ie=(0,rt.useRef)(!1),ye=(0,rt.useMemo)(()=>(typeof t=="string"&&(t=[t,{}]),k||N?t?[t[0],{debug:N,background:k,...t[1]||{}}]:["default-preset",{background:k,debug:N}]:t||"default-preset"),[t,k,N]),[ke,ve,We]=Pl({scroll:!0}),Ye=(0,rt.useRef)(),ft=ee=>{Ye.current=ee,ke(ee)},[je,H,ge,Fe]=Db(ye,{width:M.width,height:M.height,forceRefresh:We,unstable_webglRenderer:a}),[B,Q]=(0,rt.useState)("");(0,rt.useEffect)(()=>{U(n)},[n]),(0,rt.useEffect)(()=>{H&&H.em&&H.em.updateBounds()},[H,ve]),(0,rt.useEffect)(()=>{H?.runtime.setOptions(A||{})},[A]),(0,rt.useEffect)(()=>{H&&H.runtime&&(H.runtime.mode=K),G&&H&&(H.ready=!0)},[H,G,K]),(0,rt.useEffect)(()=>{H&&(C||(H.runtime.manualHomePosition=!!x,H.runtime.setHomePosition(x)))},[H,C,x]),(0,rt.useEffect)(()=>{if(H){let ee=H.runtime;ee.resize(ge.current.width,M.width,ge.current.height,M.height),ge.current.width=M.width,ge.current.height=M.height,ee.updateNextFrame(),ge.current.didUpdate=!0}},[H,M.width,M.height]),(0,rt.useEffect)(()=>{if(D&&H){let ee=H.runtime,Ae=!1;ee.hookOptions.enableFilters=!0;for(let Se of Ny)D[Se]?D[Se]!==H.runtime.hookOptions.filters[Se]&&(ee.hookOptions.filters[Se]=D[Se],Ae=!0):ee.hookOptions.filters[Se]&&(ee.hookOptions.filters[Se]=0,Ae=!0);Ae&&ee.updateNextFrame()}else if(H){let ee=H.runtime;for(let Ae of Ny)ee.hookOptions.filters[Ae]=0;ee.hookOptions.enableFilters=!1,ee.updateNextFrame()}},[H,D]),Co(()=>{if(H&&(H.overlay&&(H.overlay.style.width=`${ve.width}px`,H.overlay.style.height=`${ve.height}px`),H.container&&(H.container.style.width=`${ve.width}px`,H.container.style.height=`${ve.height}px`),C)){let ee=H.runtime.world.width,Ae=H.runtime.world.height,Se=ee/Ae,Ei=ge.current.width,ti=ge.current.height,zt=Ei/ti;if(Se>zt){zt=ti/Ei,H.runtime.manualHomePosition=!0;let fi=(ee-Ae/zt)/2;C==="start"&&(fi=0),C==="end"&&(fi=ee-Ae/zt),H.runtime.setHomePosition({x:fi,y:0,width:Ae/zt,height:Ae})}else{let fi=(Ae-ee/zt)/2;C==="start"&&(fi=0),C==="end"&&(fi=Ae-ee/zt),H.runtime.manualHomePosition=!0,H.runtime.setHomePosition({x:0,y:fi,width:ee,height:ee/zt})}E&&H.runtime.goHome({})}},[H,ve.height,ve.width,C]),Co(()=>{let ee=()=>{if(H){let Ae=H.runtime;ge.current.width!==M.width&&ge.current.height!==M.height&&(Ae.resize(ge.current.width,M.width,ge.current.height,M.height),ge.current.width=M.width,ge.current.height=M.height,Ae.updateNextFrame(),ge.current.didUpdate=!0)}};return window.addEventListener("resize",ee),()=>window.removeEventListener("resize",ee)},[H,M.height,M.width]);let de={width:120},pe=()=>{if(H&&H.navigator){let ee=H.runtime.world.height,Ae=H.runtime.world.width,Se=window.devicePixelRatio||1,Ei=de.width,ti=de.width/Ae*ee;H.navigator.width=Ei*Se,H.navigator.height=ti*Se,H.navigator.style.width=Ei+"px",H.navigator.style.height=ti+"px"}};Co(()=>{if(H){pe();let ee=H.runtime;return ee.world.addLayoutSubscriber(Ae=>{Ae==="recalculate-world-size"&&(pe(),ee.resize(ge.current.width,M.width,ge.current.height,M.height))})}return()=>{}},[H,M.width,M.height]);let fe=(0,rt.useCallback)(function(ee){let Ae=()=>{te(!0)};return(0,rt.useEffect)(()=>{if(H){H.runtime.goHome();let Se=i&&i(H);return void(Se&&Se.then?Se.then(Ae):Ae())}else throw new Error("Invalid configuration - no runtime found")},[]),ee.children},[H]);(0,rt.useEffect)(()=>{if(H){let ee=H.runtime;if(o)return ee.world.addLayoutSubscriber(Ae=>{Ae==="recalculate-world-size"&&ee.goHome()})}return()=>{}},[H,o]),(0,rt.useEffect)(()=>H?H.runtime.registerHook("useBeforeFrame",()=>{if(ge.current.didUpdate&&H.canvas){let ee=window.devicePixelRatio||1,Ae=ge.current.width,Se=ge.current.height;H.canvas.width=Ae*ee,H.canvas.height=Se*ee,H.canvas.style.width=Ae+"px",H.canvas.style.height=Se+"px",H.canvas.getContext("2d")?.scale(ee,ee),H&&H.em&&H.em.updateBounds(),ge.current.didUpdate=!1}}):()=>{},[H,o]),(0,rt.useEffect)(()=>{let ee=()=>{H&&(U("sketch"),Q("mode-sketch")),window.removeEventListener("keyup",ee)},Ae=Se=>{if(Se.code==="Space"&&H&&H.runtime.mode==="sketch"){if(Se.target&&Se.target.tagName&&Se.target.tagName.toLowerCase()==="input")return;Se.preventDefault(),U("explore"),Q("mode-explore"),window.addEventListener("keyup",ee)}};return window.addEventListener("keydown",Ae),()=>{window.removeEventListener("keydown",Ae),window.removeEventListener("keyup",ee)}},[H]),Co(()=>{if(Ye.current&&!k){let ee=getComputedStyle(Ye.current).getPropertyValue("--atlas-background");ee&&O(ee)}},[k]),Ie.current=!0;let{height:Ue,width:He,...Ee}=M,qe=jb([M.width,M.height]);return(0,Yt.jsxs)(_s,{ref:ft,className:["atlas",c?"":`atlas-width-${qe}`,B,P,`atlas-${je}`].filter(Boolean).join(" ").trim(),style:{...y,...c?{}:{width:M.width,height:M.height}},children:[je==="static-preset"?(0,Yt.jsx)(_s,{className:"atlas-static-container",style:H&&H.controller?void 0:{pointerEvents:"none"},ref:Fe.container,tabIndex:0,...v}):(0,Yt.jsx)("canvas",{className:"atlas-canvas",part:"atlas-canvas",tabIndex:0,...Ee,...v,ref:Fe.canvas}),(0,Yt.jsx)(_s,{className:"atlas-overlay",style:{...f||{}},ref:Fe.overlay,children:l?(0,Yt.jsx)(fe,{children:(0,Yt.jsx)(iu.Provider,{value:ve,children:(0,Yt.jsx)(Ao.Provider,{value:K,children:(0,Yt.jsx)(tu.Provider,{value:H,children:m})})})}):(0,Yt.jsx)(Ob,{bounds:ve,preset:H,mode:K,setIsReady:te,onCreated:i,children:m})}),S?(0,Yt.jsx)(_s,{className:"atlas-navigator",children:(0,Yt.jsx)("canvas",{className:"atlas-navigator-canvas",part:"atlas-navigator-canvas",ref:Fe.navigator})}):null,c?(0,Yt.jsx)("style",{children:`.atlas-width-${qe} { width: ${M.width}px; height: ${M.height}px; }`}):(0,Yt.jsx)("style",{children:`
52
52
  .atlas { position: relative; user-select: none; display: flex; background: var(--atlas-background, #000); z-index: var(--atlas-z-index, 10); touch-action: none; }
53
- .atlas-width-${We} { width: ${O.width}px; height: ${O.height}px; }
53
+ .atlas-width-${qe} { width: ${M.width}px; height: ${M.height}px; }
54
54
  .atlas-canvas { flex: 1 1 0px; }
55
55
  .atlas-canvas:focus, .atlas-static-container:focus { outline: none }
56
56
  .atlas-canvas:focus-visible, .atlas-canvas-container:focus-visible { outline: var(--atlas-focus, 2px solid darkorange) }
@@ -60,22 +60,22 @@ No matching component was found for:
60
60
  .atlas-static-image { position: absolute; pointer-events: none; user-select: none; transform-origin: 0px 0px; }
61
61
  .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 }
62
62
  .atlas-navigator-canvas { width: 100%; }
63
- `}),e]})};function Ib(e){return Number(e)==e?`${e}px`:e}var Ky=({resizeHash:e,aspectRatio:t,containerProps:i={},...n})=>{let[o,a,l]=yl(),{height:c,width:p,...m}=n;(0,Zl.useEffect)(()=>{l()},[p,c,e,l]);let f=(0,Zl.useMemo)(()=>t?{width:a.width,height:a.width*(1/t)}:a,[a,t]);return(0,_s.jsxs)(Es,{ref:o,className:"atlas-container",...i,children:[f.width?(0,_s.jsx)(Tb,{width:f.width||100,height:f.height||100,...m,children:n.children}):null,n.hideInlineStyle?null:(0,_s.jsx)("style",{children:`
63
+ `}),e]})};function Ub(e){return Number(e)==e?`${e}px`:e}var sv=({resizeHash:e,aspectRatio:t,containerProps:i={},...n})=>{let[o,a,l]=Pl(),{height:c,width:p,...m}=n;(0,ru.useEffect)(()=>{l()},[p,c,e,l]);let f=(0,ru.useMemo)(()=>t?{width:a.width,height:a.width*(1/t)}:a,[a,t]);return(0,zs.jsxs)(_s,{ref:o,className:"atlas-container",...i,children:[f.width?(0,zs.jsx)(Vb,{width:f.width||100,height:f.height||100,...m,children:n.children}):null,n.hideInlineStyle?null:(0,zs.jsx)("style",{children:`
64
64
  .atlas-container {
65
65
  display: var(--atlas-container-display, block);
66
66
  flex: var(--atlas-container-flex, none);
67
67
  width: var(--atlas-container-width, ${p?`${p}px`:"100%"});
68
- height: var(--atlas-container-height, ${Ib(c||(t?f.height:512))})
68
+ height: var(--atlas-container-height, ${Ub(c||(t?f.height:512))})
69
69
  }
70
- `}),n.htmlChildren]})},Jl=()=>(0,Zy.useContext)($l),eu=()=>{let e=Jl();return e?e.runtime:void 0};var ev=(e,t=[])=>{let i=eu();(0,Jy.useEffect)(()=>i?i.registerHook("useFrame",e):()=>{},t)},tu=()=>{let e=Jl();return e&&e.canvas?e.canvas:void 0};function Mb(){return(0,tv.useContext)(Xl)}async function Ob(e,t,i){if(iv.version.startsWith("18.")){let n=await Promise.resolve().then(()=>A(gy(),1)),o=n.default?n.default.createRoot:n.createRoot;i.current||(i.current=o(e)),i.current.render(t)}else if(typeof ReactDOM<"u"){let{render:n,unmountComponentAtNode:o}=ReactDOM;n(t,e),i.current={unmount(){o(e)}}}else{let n=await Promise.resolve().then(()=>A(Ps(),1)),o=n.default?n.default.render:n.render,a=n.default?n.default.unmountComponentAtNode:n.unmountComponentAtNode;o(t,e),i.current={unmount(){a(e)}}}}var Xn=fn.default.forwardRef(({children:e,...t},i)=>{let n=(0,fn.useRef)(),o=eu(),a=(0,fn.useRef)(0),l=(0,fn.useRef)(),c=(0,fn.useRef)();return ev(()=>{if(t.relative){let p=n.current;if(p&&o){let m=o.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,fn.useLayoutEffect)(()=>{let p=l.current;i&&p&&(typeof i=="function"?i(p):i.current=p);async function m(){if(p&&p.__host){let f=t.relative?(0,rd.jsx)("div",{ref:n,children:e}):e;await Ob(p.__host.element,f,c)}}p&&p.__host?m():p&&(p.__onCreate=m)},[i,e,l,t.relative]),(0,fn.useLayoutEffect)(()=>()=>{c.current&&setTimeout(()=>{c.current.unmount()},0)},[]),(0,rd.jsx)("box",{html:!0,...t,ref:l})});Xn.displayName="HTMLPortal";var Ty=(e,t,i=[])=>{let n=eu(),o=n?n.world:void 0;(0,rv.useEffect)(()=>{if(n){let a=t,l=wo[e];n.world.activatedEvents.push(l);let c=l.slice(2).toLowerCase();return n.world.addEventListener(c,a),()=>{n.world.removeEventListener(c,a)}}return()=>{}},[o,e,...i])};function Iy(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 kb(){let e=(0,iu.useRef)({ctrl:!1,shift:!1,alt:!1});return(0,iu.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 Lb=(e,t)=>{let i=pb(),n=eu(),o=Mb(),a=(0,Tt.useRef)(),l=(0,Tt.useRef)(null),c=(0,Tt.useRef)(),[p,m]=(0,Tt.useState)(!1),f=(0,Tt.useRef)(!1),y=(0,Tt.useRef)({north:0,south:0,east:0,west:0}),w=kb(),P=(0,Tt.useCallback)(T=>R=>{if(f.current=!0,m(!0),o&&n){let{top:G,left:V}=o,O=n.viewerToWorld(R.pageX-V,R.pageY-G);c.current={x:O.x,y:O.y},a.current=T}},[o,n]),v=(0,Tt.useMemo)(()=>e.width/e.height,[e.width,e.height]),x=(0,Tt.useCallback)(T=>{if(!Math.abs(T.north-T.south+(T.east-T.west)))return;let R=-T.west+T.east,G=-T.north+T.south,V=e.width+R,O=e.height+G;if(V/O>=v){let L=O*v,F=V-L,[j,J]=Iy(T.east,T.west);T.west=T.west+F*J,T.east=T.east-F*j}else{let L=V/v,F=O-L,[j,J]=Iy(T.north,T.south);T.north=T.north+F*j,T.south=T.south-F*J}},[e.width,e.height,v]);ev(()=>{c&&n&&n.updateNextFrame()}),(0,Tt.useEffect)(()=>{n&&n.updateNextFrame()},[n,p]);let C=(0,Tt.useCallback)(T=>{if(!n||!o||n.mode!=="sketch")return;let{top:R,left:G}=o,V=n.viewerToWorld(T.pageX-G,T.pageY-R),O=l.current,L=!e.maintainAspectRatio&&w.current.alt,F=!L&&w.current.shift&&a.current?.indexOf("-")!==-1;if((a.current==="translate"||a.current==="east"||a.current==="north-east"||a.current==="south-east")&&(y.current.east=V.x-(c.current?c.current.x:0),L&&(y.current.west=-y.current.east)),(a.current==="translate"||a.current==="west"||a.current==="north-west"||a.current==="south-west")&&(y.current.west=V.x-(c.current?c.current.x:0),L&&(y.current.east=-y.current.west)),(a.current==="translate"||a.current==="north"||a.current==="north-east"||a.current==="north-west")&&(y.current.north=V.y-(c.current?c.current.y:0),L&&(y.current.south=-y.current.north)),(a.current==="translate"||a.current==="south"||a.current==="south-west"||a.current==="south-east")&&(y.current.south=V.y-(c.current?c.current.y:0),L&&(y.current.north=-y.current.south)),(e.maintainAspectRatio||F)&&x(y.current),O){let j=y.current.west,J=y.current.north,$=e.width+y.current.east,ne=e.height+y.current.south;O.points[1]=Math.min(j,$),O.points[2]=Math.min(J,ne),O.points[3]=Math.max(j,$),O.points[4]=Math.max(J,ne),n.updateNextFrame()}},[n,e.width,e.height,e.maintainAspectRatio,o]);Ty("mousemove",C,[e.width,e.height,o]),Ty("pointermove",C,[e.width,e.height,o]);let E=(0,Tt.useRef)();return(0,Tt.useEffect)(()=>{E.current=()=>{if(f.current){let T=y.current.west,R=y.current.north,G=e.width+y.current.east,V=e.height+y.current.south,O=Math.min(T,G),L=Math.min(R,V),F=Math.max(T,G),j=Math.max(R,V),J={x:(e.x||0)+O,y:(e.y||0)+L,width:F-O||1,height:j-L||1};e.maintainAspectRatio,t(J),a.current=void 0,c.current=void 0,y.current.east=0,y.current.west=0,y.current.north=0,y.current.south=0,f.current=!1,m(!1)}}},[t,e.height,e.width,e.x,e.y]),(0,Tt.useEffect)(()=>{let T=()=>{E.current&&E.current()};return window.addEventListener("pointerup",T),window.addEventListener("touchend",T),()=>{window.removeEventListener("pointerup",T),window.removeEventListener("touchend",T)}},[]),{portalRef:l,mode:i,mouseEvent:P,onPointerMoveCallback:C,isEditing:p}};function zb({handleSize:e,resizable:t,onSave:i,children:n,maintainAspectRatio:o,disableCardinalControls:a,...l}){let c=typeof e>"u"?o?10:8:e,{portalRef:p,mode:m,mouseEvent:f,isEditing:y}=Lb({x:l.x||0,y:l.y||0,width:l.width,height:l.height,maintainAspectRatio:o},i),w=(0,pn.useMemo)(()=>f("translate"),[f]),P=(0,pn.useMemo)(()=>f("east"),[f]),v=(0,pn.useMemo)(()=>f("west"),[f]),x=(0,pn.useMemo)(()=>f("south"),[f]),C=(0,pn.useMemo)(()=>f("north"),[f]),E=(0,pn.useMemo)(()=>f("south-east"),[f]),T=(0,pn.useMemo)(()=>f("south-west"),[f]),R=(0,pn.useMemo)(()=>f("north-east"),[f]),G=(0,pn.useMemo)(()=>f("north-west"),[f]),V=m==="sketch",O={zIndex:999,boxShadow:"0px 2px 3px 0 rgba(0,0,0,0.2)",border:"1px solid rgba(155,155,155,.7)",borderRadius:o||a?"50%":2,position:"absolute",background:"#fff",pointerEvents:y?"none":V?"initial":"none"};return(0,St.jsx)(St.Fragment,{children:(0,St.jsxs)("world-object",{...l,children:[n,V&&t?(0,St.jsx)(Xn,{ref:p,target:{x:0,y:0,height:l.height,width:l.width},relative:!0,interactive:!1,children:V&&t?(0,St.jsxs)(St.Fragment,{children:[(0,St.jsx)("div",{onMouseDown:w,onTouchStart:w,style:{display:"block",width:"100%",height:"100%",position:"relative",border:"1px solid rgba(155,155,155, .7)",boxSizing:"border-box",pointerEvents:y?"none":V?"initial":"none"}}),o?null:(0,St.jsxs)(St.Fragment,{children:[(0,St.jsx)("div",{title:"east",onTouchStart:P,onMouseDown:P,style:{...O,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:{...O,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:C,style:{...O,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:{...O,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:R,style:{...O,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:E,style:{...O,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:T,style:{...O,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:G,style:{...O,cursor:"nw-resize",position:"absolute",height:c,width:c,top:0,left:0,transform:`translate(-${c/2}px, -${c/2}px)`}})]}):null}):null]})})}function ov({interactive:e,region:t,onClick:i,onSave:n,maintainAspectRatio:o,disableCardinalControls:a,isEditing:l,rotation:c,style:p={backgroundColor:"rgba(0,0,0,.5)"}}){let m=(0,nv.useCallback)(f=>{n({id:t.id,x:t.x,y:t.y,height:t.height,width:t.width,...f})},[n,t.id,t.x,t.y,t.height,t.width]);return(0,od.jsx)(zb,{x:t.x,y:t.y,rotation:c,width:t.width,height:t.height,resizable:l,onSave:m,maintainAspectRatio:o,disableCardinalControls:a,children:(0,od.jsx)("box",{interactive:e,onClick:f=>{f.preventDefault(),f.stopPropagation(),i(t)},target:{x:0,y:0,width:t.width,height:t.height},style:p})})}var cd=e=>{let t=e.width/(e.crop?.width||e.tiles.width),i=e.tiles.imageService.tiles||[],n=e.tiles.imageService.sizes||[],o=e.enableThumbnail,a=e.enableSizes,l=(0,sv.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]);return(0,Rr.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,Rr.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:[o&&e.tiles.thumbnail?(0,Rr.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,a&&n.map((c,p)=>(0,Rr.jsx)("world-image",{uri:`${l}/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)),i.map(c=>(c.scaleFactors||[]).map(p=>(0,Rr.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 uv(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 Si=A(q()),jb=(0,Si.createContext)(null),hd={didCatch:!1,error:null},nu=class extends Si.Component{constructor(t){super(t),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=hd}static getDerivedStateFromError(t){return{didCatch:!0,error:t}}resetErrorBoundary(){let{error:t}=this.state;if(t!==null){for(var i,n,o=arguments.length,a=new Array(o),l=0;l<o;l++)a[l]=arguments[l];(i=(n=this.props).onReset)===null||i===void 0||i.call(n,{args:a,reason:"imperative-api"}),this.setState(hd)}}componentDidCatch(t,i){var n,o;(n=(o=this.props).onError)===null||n===void 0||n.call(o,t,i)}componentDidUpdate(t,i){let{didCatch:n}=this.state,{resetKeys:o}=this.props;if(n&&i.error!==null&&Vb(t.resetKeys,o)){var a,l;(a=(l=this.props).onReset)===null||a===void 0||a.call(l,{next:o,prev:t.resetKeys,reason:"keys"}),this.setState(hd)}}render(){let{children:t,fallbackRender:i,FallbackComponent:n,fallback:o}=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,Si.createElement)(n,p);else if(o===null||(0,Si.isValidElement)(o))c=o;else throw l}return(0,Si.createElement)(jb.Provider,{value:{didCatch:a,error:l,resetErrorBoundary:this.resetErrorBoundary}},c)}};function Vb(){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 or=A(q(),1);var Po=A(q(),1),cv=A(Y(),1),Ub={collection:void 0,manifest:void 0,range:void 0,canvas:void 0,annotation:void 0,annotationPage:void 0},Os=Po.default.createContext(Ub),Wt=()=>(0,Po.useContext)(Os);function $t({value:e,children:t}){let i=Wt(),n=(0,Po.useMemo)(()=>({...i,...e}),[e,i]);return(0,cv.jsx)(Os.Provider,{value:n,children:t})}var Au=A(q(),1);var ht=function(t){return function(){let i={type:t,getType:()=>t,toString:()=>t};return(n,o)=>({...i,...n!==void 0&&{payload:n},...o!==void 0&&{meta:o}})}},ru="@iiif/IMPORT_ENTITIES",ou="@iiif/MODIFY_ENTITY_FIELD",su="@iiif/REORDER_ENTITY_FIELD",au="@iiif/ADD_REFERENCE",ks="@iiif/UPDATE_REFERENCE",lu="@iiif/REMOVE_REFERENCE",uu="@iiif/ADD_METADATA",cu="@iiif/REMOVE_METADATA",Ls="@iiif/UPDATE_METADATA",hu="@iiif/REORDER_METADATA",du=ht(ru)(),hv=ht(ou)(),dv=ht(su)(),pv=ht(au)(),fv=ht(lu)(),mv=ht(ks)(),gv=ht(uu)(),yv=ht(Ls)(),vv=ht(cu)(),xv=ht(hu)(),Tr={importEntities:du,modifyEntityField:hv,reorderEntityField:dv,addReference:pv,removeReference:fv,updateReference:mv,addMetadata:gv,removeMetadata:vv,updateMetadata:yv,reorderMetadata:xv},pu="@iiif/ADD_MAPPING",fu="@iiif/ADD_MAPPINGS",dd=ht(pu)(),pd=ht(fu)();var Co="RESOURCE_ERROR",zs="RESOURCE_LOADING",Eo="RESOURCE_READY",mu="@iiif/REQUEST_RESOURCE",gu="@iiif/REQUEST_ERROR",yu="@iiif/REQUEST_MISMATCH",vu="@iiif/REQUEST_COMPLETE",xu="@iiif/REQUEST_OFFLINE_RESOURCE",fd=ht(mu)(),Ns=ht(gu)(),md=ht(yu)(),gd=ht(vu)(),Hb=ht(xu)();var Ao="@iiif/BATCH",Su="@iiif/BATCH_IMPORT",Ro=ht(Ao)(),Wb=ht(Su)();var qb="http://library.stanford.edu/iiif/image-api/compliance.html#level0",Sv="http://library.stanford.edu/iiif/image-api/compliance.html#level1",wv="http://library.stanford.edu/iiif/image-api/compliance.html#level2",Qb="http://library.stanford.edu/iiif/image-api/conformance.html#level0",bv="http://library.stanford.edu/iiif/image-api/conformance.html#level1",Pv="http://library.stanford.edu/iiif/image-api/conformance.html#level2",Yb="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level0",Cv="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level1",Ev="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2",Gb="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level0",Av="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level1",Rv="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level2",$b="http://iiif.io/api/image/1/level0.json",Xb="http://iiif.io/api/image/1/profiles/level0.json",Tv="http://iiif.io/api/image/1/level1.json",Iv="http://iiif.io/api/image/1/profiles/level1.json",_v="http://iiif.io/api/image/1/level2.json",Mv="http://iiif.io/api/image/1/profiles/level2.json",Kb="http://iiif.io/api/image/2/level0.json",Zb="http://iiif.io/api/image/2/profiles/level0.json",Ov="http://iiif.io/api/image/2/level1.json",kv="http://iiif.io/api/image/2/profiles/level1.json",Lv="http://iiif.io/api/image/2/level2.json",zv="http://iiif.io/api/image/2/profiles/level2.json",Jb="level0",Nv="level1",Fv="level2",eP="http://iiif.io/api/image/2/level0",Bv="http://iiif.io/api/image/2/level1",Dv="http://iiif.io/api/image/2/level2",yd=[Dv,wv,Pv,Ev,Rv,_v,Mv,Lv,zv,Fv],mT=[...yd,Bv,Sv,bv,Cv,Av,Tv,Iv,Ov,kv,Nv],tP=[eP,Bv,Dv,qb,Sv,wv,Qb,bv,Pv,Yb,Cv,Ev,Gb,Av,Rv,$b,Xb,Tv,Iv,_v,Mv,Kb,Zb,Ov,kv,Lv,zv,Jb,Nv,Fv],jv=tP;function Gi(e){for(let t in e)(typeof e[t]>"u"||e[t]===null)&&delete e[t];return e}function Kn(e){return Array.isArray(e)?e:e?[e]:[]}var iP=Object.defineProperty,nP=(e,t,i)=>t in e?iP(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,yn=(e,t,i)=>(nP(e,typeof t!="symbol"?t+"":t,i),i);var Vv=["sc:Collection","sc:Manifest","sc:Canvas","sc:AnnotationList","oa:Annotation","sc:Range","sc:Layer","sc:Sequence","oa:Choice","Service","ContentResource"];function rP(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=Vv.indexOf(e["@type"]);if(t!==-1)return Vv[t]}if(e.profile)return"Service";if(e.format||e["@type"])return"ContentResource";throw new Error("Resource type is not known")}var oP=class qv{constructor(t,i={}){yn(this,"traversals"),yn(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 qv({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(rP(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],o=[];for(let a of n)typeof a=="string"?o.push(this.traverseContentResource({"@id":a,"@type":"dctypes:Image"})):o.push(this.traverseContentResource(a));return!i&&!this.options.convertPropsToArray?o[0]:o}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],o=[];for(let a of n)o.push(this.traverseService(a));return!i&&!this.options.convertPropsToArray?o[0]:o}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,o)=>{let a=o(n);return typeof a>"u"&&!this.options.allowUndefinedReturn?n:a},t)}},sP="http://library.stanford.edu/iiif/image-api/compliance.html#level1",aP="http://library.stanford.edu/iiif/image-api/compliance.html#level2",lP="http://library.stanford.edu/iiif/image-api/conformance.html#level1",uP="http://library.stanford.edu/iiif/image-api/conformance.html#level2",cP="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level1",hP="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2",dP="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level1",pP="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level2",fP="http://iiif.io/api/image/1/level1.json",mP="http://iiif.io/api/image/1/profiles/level1.json",gP="http://iiif.io/api/image/1/level2.json",yP="http://iiif.io/api/image/1/profiles/level2.json",vP="http://iiif.io/api/image/2/level1.json",xP="http://iiif.io/api/image/2/profiles/level1.json",SP="http://iiif.io/api/image/2/level2.json",wP="http://iiif.io/api/image/2/profiles/level2.json",bP="level1",PP="level2",CP="http://iiif.io/api/image/2/level1",EP="http://iiif.io/api/image/2/level2",AP=[CP,EP,sP,aP,lP,uP,cP,hP,dP,pP,fP,mP,gP,yP,vP,xP,SP,wP,bP,PP],vd={attributionLabel:"Attribution",lang:"none",providerId:"http://example.org/provider",providerName:"Unknown"};function RP(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 Ir(e,t="none"){if(!e)return{};let i=RP(e),n={};for(let o of i){if(typeof o=="string"){n[t]=n[t]?n[t]:[],n[t].push(o||"");continue}if(!o["@language"]){n[t]=n[t]?n[t]:[],n[t].push(o["@value"]||"");continue}let a=o["@language"];n[a]=n[a]?n[a]:[],n[a].push(o["@value"]||"")}return n}function Qv(e){if(Array.isArray(e))return Qv(e.find(t=>typeof t=="string"));if(yd.indexOf(e)!==-1)return"level2";if(AP.indexOf(e)!==-1)return"level1";if(jv.indexOf(e)!==-1)return"level0";if(typeof e=="string")return e}function TP(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 IP(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 Uv(e){for(let t of["sc","oa","dcterms","dctypes","iiif"])if(e.startsWith(`${t}:`))return e.slice(t.length+1);return e}var _P=["Collection","Manifest","Annotation","AnnotationPage","Range","Service"];function Sd(e){let t=e["@id"]||e.id,i=e["@type"]||e.type,n=e.profile||void 0,o=e["@context"]||void 0;if(n){let a=IP(n);if(a)return a}if(o){let a=TP(o);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&&_P.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 MP=/http(s)?:\/\/(creativecommons.org|rightsstatements.org)[^"'\\<\n]+/gm;function OP(e){let t=e.match(MP);return t?t[0]:e}function kP(e,t="Rights/License",i="none"){let n=null,o=[],a=Array.isArray(e)?e:[e];for(let l of a){let c=l?OP(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&&o.push({label:{[i]:[t]},value:{[i]:[c]}})}return[n,o]}var LP=["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 zP(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"),LP.indexOf(n)===-1&&i.push(n);if(t.length)return i.length===1?i[0]:i}}function NP(e){return e?e.map(t=>({label:Ir(t.label),value:Ir(t.value)})):[]}var Hv=0;function Yv(e,t){let i=encodeURI(e.id||e["@id"]||"").trim();return i&&t?`${i}/${t}`:i||(Hv++,`http://example.org/${e["@type"]}${t?`/${t}`:""}/${Hv}`)}function In(e){let t=[...e.behavior||[]];e.viewingHint&&t.push(e.viewingHint);let i;return Array.isArray(e.motivation)?i=e.motivation.map(Uv):e.motivation&&(i=Uv(e.motivation)),{"@context":e["@context"]?zP(e["@context"]):void 0,id:(e["@id"]||Yv(e)).trim(),type:Sd(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 _n(e){let[t,i]=kP(e.license),n=[...e.metadata?NP(e.metadata):[],...i];return{rights:t,metadata:n.length?n:void 0,label:e.label?Ir(e.label):void 0,requiredStatement:e.attribution?{label:Ir(vd.attributionLabel),value:Ir(e.attribution)}:void 0,navDate:e.navDate,summary:e.description?Ir(e.description):void 0,thumbnail:FP(e.thumbnail)}}function FP(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 BP(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:Sd(n)});return i.length?i:void 0}function Zn(e){let t=e.related?Array.isArray(e.related)?e.related:[e.related]:[],i=e.contentLayer;return{provider:e.logo||t.length?[{id:vd.providerId,type:"Agent",homepage:t.length?[t[0]]:void 0,logo:e.logo?Array.isArray(e.logo)?e.logo:[e.logo]:void 0,label:Ir(vd.providerName)}]:void 0,partOf:BP(e),rendering:e.rendering,seeAlso:e.seeAlso,start:e.startCanvas,service:e.service?Kn(e.service):void 0,supplementary:i?[i]:void 0}}function DP(e){return{chars:e.chars,format:e.format?e.format:void 0,language:e.language}}function jP(e){return Gi({...In(e),..._n(e),...Zn(e),items:e.members})}function VP(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 o=In(e);return i.length&&(o.behavior?o.behavior.push(...i):o.behavior=i),Gi({...o,..._n(e),...Zn(e),start:n,items:t,structures:UP(e.structures)})}function UP(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 o=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=o}return e.filter(n=>i.indexOf(n.id)===-1)}function HP(e){return Gi({...In(e),..._n(e),...Zn(e),annotations:e.otherContent&&e.otherContent.length?e.otherContent:void 0,items:e.images&&e.images.length?[{id:Yv(e,"annotation-page"),type:"AnnotationPage",items:e.images}]:void 0})}function WP(e){return Gi({...In(e),..._n(e),...Zn(e),items:e.resources&&e.resources.length?e.resources:void 0})}function qP(e){return!e.canvases||e.canvases.length===0?{canvases:[],behavior:[]}:{canvases:e.canvases,behavior:e.viewingHint?[e.viewingHint]:[],startCanvas:e.startCanvas}}function QP(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:xd(i.selector)}}else return encodeURI(i["@id"]).trim()}return Gi({...In(e),..._n(e),...Zn(e),target:t(e.on),body:Array.isArray(e.resource)?e.resource.map(Wv):Wv(e.resource)})}function Wv(e){return e.type==="Choice"?e:Gv(e)}function Gv(e){let t=e;return Gi({...In(t),..._n(t),...Zn(t),...DP(t)})}function YP(e){let t=[];return e.default&&e.default!=="rdf:nil"&&t.push(e.default),e.item&&e.item!=="rdf:nil"&&t.push(...e.item),Gi({...In(e),..._n(e),items:t})}function GP(e){return Gi({...In(e),..._n(e),...Zn(e),items:e.members})}function $P(e){let{"@id":t,"@type":i,"@context":n,profile:o,...a}=e,l={};return t&&(l["@id"]=t),l["@type"]=Sd(e),l["@type"]==="unknown"&&(n&&n.length&&(l["@context"]=n),l["@type"]="Service"),o&&(l.profile=Qv(o)),Gi({...l,...a})}function XP(e){return Gi({...In(e),..._n(e),...Zn(e)})}var KP=new oP({collection:[jP],manifest:[VP],canvas:[HP],annotationList:[WP],sequence:[qP],annotation:[QP],contentResource:[Gv],choice:[YP],range:[GP],service:[$P],layer:[XP]});function $v(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"?KP.traverseUnknown(e):e}function xd(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[xd(e.default),...(Array.isArray(e.item)?e.item:[e.item]).map(xd)];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 $i(e){return typeof e=="string"?!1:!!e&&e.type==="SpecificResource"}function wu(...e){return t=>e.reduce((i,n)=>n(i),t)}var wd=["Collection","Manifest","Canvas","AnnotationPage","AnnotationCollection","Annotation","ContentResource","Range","Service","Selector","Agent"];function Xv(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=wd.indexOf(e.type);if(i!==-1)return wd[i]}if(e.profile)return"Service";throw new Error("Resource type is not known")}var bd=class Kv{constructor(t,i={}){yn(this,"traversals"),yn(this,"options"),yn(this,"_traverseManifest",wu(this.traverseManifestItems.bind(this),this.traverseLinking.bind(this),this.traverseDescriptive.bind(this),this.traverseLinkedCanvases.bind(this),this.traverseManifestStructures.bind(this),this.traverseInlineAnnotationPages.bind(this))),yn(this,"_traverseCanvas",wu(this.traverseCanvasItems.bind(this),this.traverseLinking.bind(this),this.traverseDescriptive.bind(this),this.traverseLinkedCanvases.bind(this),this.traverseInlineAnnotationPages.bind(this))),yn(this,"_traverseAnnotationPage",wu(this.traverseAnnotationPageItems.bind(this),this.traverseLinking.bind(this),this.traverseDescriptive.bind(this))),yn(this,"_traverseRange",wu(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 Kv({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=Kn(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=Kn(t.service).map(i=>this.traverseService(i))),t.services&&(t.services=Kn(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=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&&($i(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=Kn(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))),$i(t)?this.traverseSpecificResource(t,"ContentResource"):this.traverseType(this.traverseInlineAnnotationPages(this.traverseContentResourceLinking(t)),{parent:i},this.traversals.contentResource)}traverseSpecificResource(t,i,n){let o=t.source;return typeof t.source=="string"&&(o={id:t.source,type:i||"unknown"}),this.traverseType({...t,source:i==="Canvas"||o.type==="Canvas"?this.traverseType(o,{parent:n},this.traversals.canvas):i==="ContentResource"?this.traverseContentResource(o,{parent:n}):this.traverseUnknown(o,{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):$i(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((o,a)=>{let l=a(o,i);return typeof l>"u"&&!this.options.allowUndefinedReturn?o:l},t)}traverseService(t,i){let n=Object.assign({},t);return n&&n.service&&(n.service=Kn(n.service).map(o=>this.traverseService(o))),this.traverseType(n,{parent:i},this.traversals.service)}traverseUnknown(t,{parent:i,typeHint:n}={}){let o=Xv(t,n);switch(o){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 ${o}`)}}};function Ed(e,t){let i=t||"unknown";if(!e)return;if(typeof e=="string")return{id:e,type:i};if($i(e))return Ed(e.source,t);let n=i&&i!=="unknown"?i:e.type||e["@type"],o=e.id||e["@id"];if(n&&n.indexOf(":")!==-1&&(n=n.split(":").pop()),o&&n)return{id:o,type:n}}var Io={},pt="iiif-parser:hasPart",wi="iiif-parser:partOf",_o="iiif-parser:isExternal",zi="__$UNSET$__",Ad="__$UNWRAP$__",ce=[];Object.freeze(ce);Object.freeze(Io);function Jv(e){if(e===Io||Object.keys(e).length===0)return!0;for(let t in e)return!1;return!0}function Oo(e,t){if(t&&t["@explicit"]){let i={},n=Object.keys(t);for(let o of n)o===wi||o==="@explicit"||(Jv(t[o])?i[o]=e[o]:i[o]=t[o]);return i}return e}function Rd(e,t,i){let n=Ed(t);if(!n)return[void 0,void 0];let o=e.requests[n.id],a=n.type||e.mapping[n.id];if(!a||o&&o.resourceUri&&(!e.entities[a]||!e.entities[a][o.resourceUri]))return[void 0,void 0];let l=e.entities[a][o?o.resourceUri:n.id];if(n.type&&!l)return Rd(e,{id:n.id},i);if(l&&l[pt]){let c=l[pt].find(p=>i?p[wi]===i.id:p[wi]===l.id);return[Oo(l,c),l]}return[l,l]}var e0={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},t0={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},i0={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},n0={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"},r0={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"},o0={id:"https://iiif-parser/empty-agent",type:"Agent",label:{},logo:ce,seeAlso:ce,homepage:ce},s0={id:"https://iiif-parser/empty-service",type:"UnknownService"};function Cd(e,t={}){if(Array.isArray(e))return Cd(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 Cd(e.items[0]);if(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 a0(){return{Collection:{},Manifest:{},Canvas:{},AnnotationPage:{},AnnotationCollection:{},Annotation:{},ContentResource:{},Range:{},Service:{},Selector:{},Agent:{}}}function l0(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 ZP(e,t){return(i,n)=>{let o=e[i]?e[i]:{};return(a,l)=>{let c=l0(a,n||i);return c&&c.id&&i?(o[c.id]=o[c.id]?Cu(o[c.id],c,{parent:l.parent,isTopLevel:t.id===c.id}):Cu({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 Pu(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 o of t)if(o["@id"]&&!o.id&&(o.id=o["@id"]),o["@type"]&&!o.type&&(o.type=o["@type"]),o!=null)if(Array.isArray(o))n.push(o);else if(typeof o=="object"&&o.id&&o.type){let a=n.findIndex(l=>l.id===o.id&&l.type===o.type);a>=0&&(n[a]=Pu(n[a],o))}else e.indexOf(o)===-1&&n.push(o);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},o=[],a=[],l=Object.keys(e).filter(m=>m!==pt&&m!=="id"&&m!=="type"),c={},p={};for(let[m,f]of Object.entries(t)){if(m===pt||m==="id"||m==="type")continue;let y=n[m];y===f?a.push(m):y===ce||!y?(o.push(m),n[m]=f):(y&&f&&(c[m]=y,p[m]=f),n[m]=Pu(y,f),n[m]===c[m]&&(a.push(m),delete c[m]))}if(i&&(i.parent&&i.parent.id||i.isTopLevel)){let m=[],f={};if(i.parent?f[wi]=i.parent.id:i.isTopLevel&&(f[wi]=e.id),n[pt]&&n[pt].length){let y=!(n[pt]||[]).find(P=>P["@explicit"]),w=o.length>0||a.length!==l.length;if(y&&w)for(let P of n[pt]){let v={...P},x=Object.keys(c);if(v){v["@explicit"]=!0;for(let C of l)C!==pt&&(v[C]=Io);for(let C of x)v[C]=c[C]}m.push(v)}else m.push(...n[pt]);if(w){let P=Object.keys(p);f["@explicit"]=!0;for(let v of o)f[v]=Io;for(let v of a)f[v]=Io;for(let v of P)f[v]=p[v]}}f.id=n.id,f.type=n.type,m.push(f),n[pt]=m}return n}else if(e)return e;return t}function Cu(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 Pu({...e},t,i)}function JP(e){return(t,i)=>n=>{let{id:o,type:a}=l0(n,i||t);if(typeof o>"u")throw new Error("Found invalid entity without an ID.");return t==="ContentResource"||t==="Service"?e[o]=t:e[o]=a,n}}function eC(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({},s0,t)}function tC(e){return t=>{e.Service=e.Service?e.Service:{};let i=t.id||t["@id"],n=eC(t);return n&&n.id&&(e.Service[n.id]?e.Service[i]=Cu(e.Service[i],n):e.Service[i]=n),t}}function iC(e){let t=JSON.stringify(e),i=5381,n=t.length;for(;n;)i=i*33^t.charCodeAt(--n);let o=(i>>>0).toString(16);return o.length%2?"0"+o:o}function Pd(e){return t=>typeof t=="string"?{id:t,type:e}:t.id?t.type?t:{type:e,...t}:{id:`vault://${iC(t)}`,type:e,...t}}function To(e){return t=>({...e,...t})}function Fs(e){return Array.isArray(e)?e:[e]}function nC(e){return e.body&&(e.body=Fs(e.body)),e.seeAlso&&(e.seeAlso=Fs(e.seeAlso)),e.audience&&(e.audience=Fs(e.audience)),e.accessibility&&(e.accessibility=Fs(e.accessibility)),e.motivation&&(e.motivation=Fs(e.motivation)),e}function u0(e,{typeHint:t,partOfTypeHint:i}={}){if(typeof e=="string"&&(e={id:e,type:t||"unknown"}),$i(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[o,a]=(e.id||"").split("#");e.id=o,a&&(n={type:"FragmentSelector",value:a})}return{type:"SpecificResource",source:e,selector:n}}function rC(e){let t=Object.assign({},e);return e&&e.items&&(t.items=e.items.map(i=>typeof i=="string"||i.type==="Canvas"?u0(i):i)),t}function oC(e){let t=Object.assign({},e);return t.start?(t.start=u0(t.start,{typeHint:"Canvas"}),t):e}function sC(e){let t=Object.assign({},e);return t.target?(t.target=Cd(t.target,{typeHint:"Canvas"}),t):e}function c0(e){return e}function bu(e){return typeof e.items>"u"&&(e[_o]=!0),e}function Td(e){let t=$v(e),i=a0(),n={},o=ZP(i,t),a=JP(n),l=new bd({collection:[bu,To(i0),a("Collection"),o("Collection")],manifest:[bu,To(n0),oC,a("Manifest"),o("Manifest")],canvas:[To(t0),a("Canvas"),o("Canvas")],annotationPage:[bu,Pd("AnnotationPage"),To(e0),a("AnnotationPage"),o("AnnotationPage")],annotation:[Pd("Annotation"),nC,sC,a("Annotation"),o("Annotation")],contentResource:[Pd("ContentResource"),a("ContentResource"),o("ContentResource")],range:[To(r0),rC,a("Range","Canvas"),o("Range","Canvas")],agent:[To(o0),a("Agent"),o("Agent")],specificResource:[c0],service:[tC(i)]}).traverseUnknown(t);return{entities:i,resource:l,mapping:n}}function h0(e){let t={};for(let[i,n]of e){if(i===Ad&&n!==zi)return n;n!==zi&&typeof n<"u"&&n!==null&&(t[i]=n)}return t}function Id(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(o,a,l=0){let c=i[o.type];if(!c)return zi;if(l>20)throw new Error("Circular reference: "+o.id+" "+o.type);let[p,m]=Rd(e,o.type?o:o.id,a)||(o.id&&o.type?o:null);if(!p)return zi;let f=c(p,e,{parent:a,isTopLevel:t.id===o.id,fullResource:m}),y=f.next();for(;!y.done;){let w=y.value,P=zi;if(w)if(Array.isArray(w)){let v=[];for(let x of w)v.push(n(x,o,l+1));P=v}else P=n(w,o,l+1);y=f.next(P)}return y.value===zi?zi:h0(y.value)}return n(t)}function Mo(e,{allowSourceString:t=!0,allowString:i=!1,allowedStringType:n}={}){let o=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 o(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 o(e)}function kr(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 d0(e){return Array.isArray(e)?e.map(t=>d0(t)):typeof e=="string"?e:e.type&&e.type==="Canvas"?e.id:e}function tr(e,t=!1){if(e)return e.length>1&&!t?e:e[0]||void 0}function aC(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 _r(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*Mr(e){let t=e.provider?yield e.provider[0]:void 0;return[["label",kr(e.label)],["metadata",e.metadata&&e.metadata.length?e.metadata.map(i=>({label:kr(i.label)||"",value:kr(i.value)||""})):void 0],["description",kr(e.summary)],["thumbnail",tr(yield e.thumbnail)],["navDate",e.navDate],["logo",t?tr(t.logo):void 0],["homepage",t?t.homepage:void 0],["attribution",e.requiredStatement?kr(e.requiredStatement.value):void 0]]}function*Bs(e){let t=e.start&&e.start.type&&e.start.type==="SpecificResource"?Mo(e.start):e.start;return[["seeAlso",tr(yield e.seeAlso)],["service",tr((e.service||[]).map(aC))],["rendering",tr(yield e.rendering)],["startCanvas",t?t.id:void 0]]}function lC(e){return e.type==="SpecificResource"}function uC(e){return e&&e.type==="FragmentSelector"}function cC(e){if(e&&lC(e)){let t=e.id,i=e.selector?Array.isArray(e.selector)?e.selector[0]:e.selector:void 0;return uC(i)&&(t+="#"+i.value),t}return e?.id}var _d={Manifest:function*(e,t,{isTopLevel:i}){return[...i?[["@context","http://iiif.io/api/presentation/2/context.json"]]:[],..._r(e,"sc:Manifest"),...yield*Mr(e),...yield*Bs(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[..._r(e,"sc:Canvas"),...yield*Mr(e),...yield*Bs(e),["images",t?[t.resources]:void 0],["annotations",e.annotations&&e.annotations.length?tr(yield e.annotations):void 0]]},AnnotationPage:function*(e){return[..._r(e,"sc:AnnotationList"),...yield*Mr(e),["resources",e.items&&e.items.length?tr(yield e.items):void 0]]},Annotation:function*(e){return[["@id",e.id],["@type","oa:Annotation"],["motivation","sc:painting"],["on",d0(e.target)],["resource",tr(yield e.body,!0)]]},ContentResource:function*(e){switch(e.type){case"Image":return[..._r(e,"dctypes:Image"),...yield*Mr(e),...yield*Bs(e)];case"Text":case"Dataset":default:return[..._r(e,void 0),...yield*Mr(e)]}},AnnotationCollection:function*(e){return[["@id",e.id],["@type","sc:Layer"],["label",kr(e.label)]]},Collection:function*(e){return[..._r(e,"sc:Collection"),...yield*Mr(e),...yield*Bs(e),["members",yield*e.items]]},Range:function*(e){let t=[],i=[];if(e.items)for(let n of e.items){let o=n.type==="SpecificResource"?n.source:n;if(o){let a=yield o;t.push({"@id":cC(n),"@type":o.type,label:a?a.label:void 0,within:e.id}),o.type==="Canvas"&&i.push(o.id)}}return[..._r(e,"sc:Range"),...yield*Mr(e),...yield*Bs(e),["canvases",i.length===t.length?i:void 0],["members",i.length!==t.length?t:void 0]]}};function Or(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],[pt,zi]]}function wt(e){if(e===zi||!e||e.length===0)return;let t=e.filter(i=>i!==zi);if(t.length!==0)return t}function p0(e){if(e&&e.type&&e.type==="ImageService2"){let{id:t,type:i,profile:n,...o}=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",...o}}return e}function Zv(e){if(Array.isArray(e)||(e=e?[e]:[]),!(!e||e.length===0))return e.map(p0)}function*Jn(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*er(e){return[["seeAlso",wt(yield e.seeAlso)],["service",wt(Zv(e.service))],["services",wt(Zv(e.services))],["rendering",wt(yield e.rendering)],["supplementary",wt(yield e.supplementary)],["homepage",wt(yield e.homepage)],["logo",wt(yield e.logo)],["partOf",wt(yield e.partOf)],["start",e.start?Mo(e.start):e.start]]}var Md={Manifest:function*(e,t,{isTopLevel:i}){return i?[["@context",e["@context"]?e["@context"]:"http://iiif.io/api/presentation/3/context.json"],...Or(e),...yield*Jn(e),...yield*er(e),["items",yield e.items],["structures",wt(yield e.structures)],["annotations",wt(yield e.annotations)],["navPlace",e.navPlace]]:[...Or(e),...yield*Jn(e)]},Canvas:function*(e){return[...Or(e),...yield*Jn(e),...yield*er(e),["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*er(e)]},AnnotationPage:function*(e){let t=Object.entries(e).map(([n,o])=>[n,Array.isArray(o)?wt(o):o]).filter(([n,o])=>n!=="items"&&n!=="id"&&n!==pt&&n!==wi&&n!==_o),i=yield e.items;return[["id",e.id?.startsWith("vault://")?void 0:e.id],...t,...yield*er(e),["items",i.length||e[_o]===!1?i:zi]]},Service:function*(e){return[[Ad,p0(e)]]},Annotation:function*(e){let t=Object.entries(e).map(([n,o])=>n==="motivation"?[n,Array.isArray(o)?o[0]:o]:n==="target"?[n,Mo(o,{allowString:!0,allowSourceString:!0,allowedStringType:"Canvas"})]:[n,Array.isArray(o)?wt(o):o]).filter(([n])=>n!=="body"&&n!==pt&&n!==_o),i;if(Array.isArray(e.body)){let n=[];for(let o of e.body)if(o&&$i(o)){let a={...o};a.source=yield o.source,n.push(Mo(a,{allowSourceString:!0}))}else n.push(yield o);i=n}else e.body&&$i(e.body)?(i={...e.body},i.source=yield e.body.source):i=yield e.body;return[...t,...yield*Jn(e),...yield*er(e),["body",i.length===1?i[0]:i]]},ContentResource:function*(e){return hC([...Or(e),...yield*Jn(e),...yield*er(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"],...Or(e),...yield*Jn(e),...yield*er(e),["items",wt(yield e.items)],["navPlace",e.navPlace]]:[...Or(e),...yield*Jn(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(Mo(i)):t.push(i);return[...Or(e),...yield*Jn(e),...yield*er(e),["items",t],["annotations",wt(yield e.annotations)],["navPlace",e.navPlace]]}};function hC(e,t){let i=Object.keys(t),n=e.map(([o])=>o);for(let o of i)o===pt||o===_o||n.indexOf(o)===-1&&typeof t[o]<"u"&&e.push([o,t[o]]);return e}var dC=(e,t)=>{let{entities:i,resource:n,mapping:o}=Td(t);if(n.id===void 0)return[Ns({id:e,message:"ID is not defined in resource."})];let a=[du({entities:i}),pd({mapping:o})];return n.id!==e&&(a.push(dd({id:e,type:n.type})),a.push(md({requestId:e,actualId:n.id}))),a.push(gd({id:e})),a},f0=Number.isNaN||function(t){return typeof t=="number"&&t!==t};function pC(e,t){return!!(e===t||f0(e)&&f0(t))}function kd(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(!pC(e[i],t[i]))return!1;return!0}function Od(e,t,i){let n=e.iiif.requests[t],o=e.iiif.mapping[t];if(!o||!e.iiif.entities[o][n.resourceUri])return;let a=e.iiif.entities[o][n.resourceUri];if(a&&a[pt]){let l=a[pt].find(c=>i?c[wi]===i.id:c[wi]===a.id);return Oo(a,l)}return a}function fC(e){return e&&typeof e.then=="function"}function Ld(e,t,{waitTimeout:i=30}={}){return(n,o)=>{let a=e.getStore(),l=a.getState(),c=l.iiif.requests[n];if(c){if(c.loadingState===Eo){let m=Od(l,n);if(m)return m}switch(c.loadingState){case Co:break;case zs:return(async()=>{let m,f=!1;try{let y=await Promise.race([new Promise((w,P)=>{f||(m=a.subscribe(()=>{let v=a.getState();if(v.iiif.requests[n].loadingState===Co){P();return}if(v.iiif.requests[n].loadingState===Eo){let x=Od(v,n);x?w(x):P()}}))}),new Promise((w,P)=>setTimeout(()=>{f=!0,P()},i*60*1e3))]);if(m&&m(),y)return y}catch{m&&m()}})()}}e.dispatch(fd({id:n}));let p=m=>{if(!m)return;!m.id&&!m["@id"]&&(m["@type"]&&(m["@id"]=n),m.id=n);let f=dC(n,m);return e.dispatch(Ro({actions:f})),Od(a.getState(),n)};try{let m=t(n,o);return fC(m)?(async()=>{try{return p(await m)}catch(f){throw e.dispatch(Ns({id:n,message:f.toString()})),f}})():p(m)}catch(m){throw e.dispatch(Ns({id:n,message:m.toString()})),m}}}function zd(){return{Collection:{},Manifest:{},Canvas:{},AnnotationPage:{},AnnotationCollection:{},Annotation:{},ContentResource:{},Range:{},Service:{},Selector:{},Agent:{}}}var g0={},m0=e=>{let t,i=new Set,n=(f,y)=>{let w=typeof f=="function"?f(t):f;if(!Object.is(w,t)){let P=t;t=y??(typeof w!="object"||w===null)?w:Object.assign({},t,w),i.forEach(v=>v(t,P))}},o=()=>t,p={setState:n,getState:o,getInitialState:()=>m,subscribe:f=>(i.add(f),()=>i.delete(f)),destroy:()=>{(g0.env?g0.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,o,p);return p},y0=e=>e?m0(e):m0;var Nd="@iiif/SET_META_VALUE",Fd="@iiif/SET_META_VALUE_DYNAMIC",Bd="@iiif/UNSET_META_VALUE",mC=ht(Nd)(),gC=ht(Fd)(),yC=ht(Bd)(),Dd={setMetaValue:mC,setMetaValueDynamic:gC,unsetMetaValue:yC};var ko={},vC=(e,t)=>(i,n,o)=>(o.dispatch=a=>(i(l=>e(l,a),!1,a),a),o.dispatchFromDevtools=!0,{dispatch:(...a)=>o.dispatch(...a),...t}),xC=vC,Hd=new Map,Eu=e=>{let t=Hd.get(e);return t?Object.fromEntries(Object.entries(t.stores).map(([i,n])=>[i,n.getState()])):{}},SC=(e,t,i)=>{if(e===void 0)return{type:"untracked",connection:t.connect(i)};let n=Hd.get(i.name);if(n)return{type:"tracked",store:e,...n};let o={connection:t.connect(i),stores:{}};return Hd.set(i.name,o),{type:"tracked",store:e,...o}},wC=(e,t={})=>(i,n,o)=>{let{enabled:a,anonymousActionType:l,store:c,...p}=t,m;try{m=(a??(ko.env?ko.env.MODE:void 0)!=="production")&&window.__REDUX_DEVTOOLS_EXTENSION__}catch{}if(!m)return(ko.env?ko.env.MODE:void 0)!=="production"&&a&&console.warn("[zustand devtools middleware] Please install/enable Redux devtools extension"),e(i,n,o);let{connection:f,...y}=SC(c,m,p),w=!0;o.setState=(x,C,E)=>{let T=i(x,C);if(!w)return T;let R=E===void 0?{type:l||"anonymous"}:typeof E=="string"?{type:E}:E;return c===void 0?(f?.send(R,n()),T):(f?.send({...R,type:`${c}/${R.type}`},{...Eu(p.name),[c]:o.getState()}),T)};let P=(...x)=>{let C=w;w=!1,i(...x),w=C},v=e(o.setState,n,o);if(y.type==="untracked"?f?.init(v):(y.stores[y.store]=o,f?.init(Object.fromEntries(Object.entries(y.stores).map(([x,C])=>[x,x===y.store?v:C.getState()])))),o.dispatchFromDevtools&&typeof o.dispatch=="function"){let x=!1,C=o.dispatch;o.dispatch=(...E)=>{(ko.env?ko.env.MODE:void 0)!=="production"&&E[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),C(...E)}}return f.subscribe(x=>{var C;switch(x.type){case"ACTION":if(typeof x.payload!="string"){console.error("[zustand devtools middleware] Unsupported action format");return}return jd(x.payload,E=>{if(E.type==="__setState"){if(c===void 0){P(E.state);return}Object.keys(E.state).length!==1&&console.error(`
70
+ `}),n.htmlChildren]})},ou=()=>(0,av.useContext)(tu),su=()=>{let e=ou();return e?e.runtime:void 0};var uv=(e,t=[])=>{let i=su();(0,lv.useEffect)(()=>i?i.registerHook("useFrame",e):()=>{},t)},au=()=>{let e=ou();return e&&e.canvas?e.canvas:void 0};function Wb(){return(0,cv.useContext)(iu)}async function qb(e,t,i){if(dv.version.startsWith("18.")){let n=await Promise.resolve().then(()=>R(Ey(),1)),o=n.default?n.default.createRoot:n.createRoot;i.current||(i.current=o(e)),i.current.render(t)}else if(typeof ReactDOM<"u"){let{render:n,unmountComponentAtNode:o}=ReactDOM;n(t,e),i.current={unmount(){o(e)}}}else{let n=await Promise.resolve().then(()=>R(Rs(),1)),o=n.default?n.default.render:n.render,a=n.default?n.default.unmountComponentAtNode:n.unmountComponentAtNode;o(t,e),i.current={unmount(){a(e)}}}}var vn=mn.default.forwardRef(({children:e,...t},i)=>{let n=(0,mn.useRef)(),o=su(),a=(0,mn.useRef)(0),l=(0,mn.useRef)(),c=(0,mn.useRef)();return uv(()=>{if(t.relative){let p=n.current;if(p&&o){let m=o.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,mn.useLayoutEffect)(()=>{let p=l.current;i&&p&&(typeof i=="function"?i(p):i.current=p);async function m(){if(p&&p.__host){let f=t.relative?(0,ph.jsx)("div",{ref:n,children:e}):e;await qb(p.__host.element,f,c)}}p&&p.__host?m():p&&(p.__onCreate=m)},[i,e,l,t.relative]),(0,mn.useLayoutEffect)(()=>()=>{c.current&&setTimeout(()=>{c.current.unmount()},0)},[]),(0,ph.jsx)("box",{html:!0,...t,ref:l})});vn.displayName="HTMLPortal";var Fy=(e,t,i=[])=>{let n=su(),o=n?n.world:void 0;(0,pv.useEffect)(()=>{if(n){let a=t,l=Eo[e];n.world.activatedEvents.push(l);let c=l.slice(2).toLowerCase();return n.world.addEventListener(c,a),()=>{n.world.removeEventListener(c,a)}}return()=>{}},[o,e,...i])};function By(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 Qb(){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 $b=(e,t)=>{let i=Ab(),n=su(),o=Wb(),a=(0,Rt.useRef)(),l=(0,Rt.useRef)(null),c=(0,Rt.useRef)(),[p,m]=(0,Rt.useState)(!1),f=(0,Rt.useRef)(!1),y=(0,Rt.useRef)({north:0,south:0,east:0,west:0}),S=Qb(),P=(0,Rt.useCallback)(T=>A=>{if(f.current=!0,m(!0),o&&n){let{top:N,left:D}=o,M=n.viewerToWorld(A.pageX-D,A.pageY-N);c.current={x:M.x,y:M.y},a.current=T}},[o,n]),v=(0,Rt.useMemo)(()=>e.width/e.height,[e.width,e.height]),x=(0,Rt.useCallback)(T=>{if(!Math.abs(T.north-T.south+(T.east-T.west)))return;let A=-T.west+T.east,N=-T.north+T.south,D=e.width+A,M=e.height+N;if(D/M>=v){let k=M*v,O=D-k,[K,U]=By(T.east,T.west);T.west=T.west+O*U,T.east=T.east-O*K}else{let k=D/v,O=M-k,[K,U]=By(T.north,T.south);T.north=T.north+O*K,T.south=T.south-O*U}},[e.width,e.height,v]);uv(()=>{c&&n&&n.updateNextFrame()}),(0,Rt.useEffect)(()=>{n&&n.updateNextFrame()},[n,p]);let E=(0,Rt.useCallback)(T=>{if(!n||!o||n.mode!=="sketch")return;let{top:A,left:N}=o,D=n.viewerToWorld(T.pageX-N,T.pageY-A),M=l.current,k=!e.maintainAspectRatio&&S.current.alt,O=!k&&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=D.x-(c.current?c.current.x:0),k&&(y.current.west=-y.current.east)),(a.current==="translate"||a.current==="west"||a.current==="north-west"||a.current==="south-west")&&(y.current.west=D.x-(c.current?c.current.x:0),k&&(y.current.east=-y.current.west)),(a.current==="translate"||a.current==="north"||a.current==="north-east"||a.current==="north-west")&&(y.current.north=D.y-(c.current?c.current.y:0),k&&(y.current.south=-y.current.north)),(a.current==="translate"||a.current==="south"||a.current==="south-west"||a.current==="south-east")&&(y.current.south=D.y-(c.current?c.current.y:0),k&&(y.current.north=-y.current.south)),(e.maintainAspectRatio||O)&&x(y.current),M){let K=y.current.west,U=y.current.north,G=e.width+y.current.east,te=e.height+y.current.south;M.points[1]=Math.min(K,G),M.points[2]=Math.min(U,te),M.points[3]=Math.max(K,G),M.points[4]=Math.max(U,te),n.updateNextFrame()}},[n,e.width,e.height,e.maintainAspectRatio,o]);Fy("mousemove",E,[e.width,e.height,o]),Fy("pointermove",E,[e.width,e.height,o]);let C=(0,Rt.useRef)();return(0,Rt.useEffect)(()=>{C.current=()=>{if(f.current){let T=y.current.west,A=y.current.north,N=e.width+y.current.east,D=e.height+y.current.south,M=Math.min(T,N),k=Math.min(A,D),O=Math.max(T,N),K=Math.max(A,D),U={x:(e.x||0)+M,y:(e.y||0)+k,width:O-M||1,height:K-k||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,f.current=!1,m(!1)}}},[t,e.height,e.width,e.x,e.y]),(0,Rt.useEffect)(()=>{let T=()=>{C.current&&C.current()};return window.addEventListener("pointerup",T),window.addEventListener("touchend",T),()=>{window.removeEventListener("pointerup",T),window.removeEventListener("touchend",T)}},[]),{portalRef:l,mode:i,mouseEvent:P,onPointerMoveCallback:E,isEditing:p}};function Yb({handleSize:e,resizable:t,onSave:i,children:n,maintainAspectRatio:o,disableCardinalControls:a,...l}){let c=typeof e>"u"?o?10:8:e,{portalRef:p,mode:m,mouseEvent:f,isEditing:y}=$b({x:l.x||0,y:l.y||0,width:l.width,height:l.height,maintainAspectRatio:o},i),S=(0,fn.useMemo)(()=>f("translate"),[f]),P=(0,fn.useMemo)(()=>f("east"),[f]),v=(0,fn.useMemo)(()=>f("west"),[f]),x=(0,fn.useMemo)(()=>f("south"),[f]),E=(0,fn.useMemo)(()=>f("north"),[f]),C=(0,fn.useMemo)(()=>f("south-east"),[f]),T=(0,fn.useMemo)(()=>f("south-west"),[f]),A=(0,fn.useMemo)(()=>f("north-east"),[f]),N=(0,fn.useMemo)(()=>f("north-west"),[f]),D=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:o||a?"50%":2,position:"absolute",background:"#fff",pointerEvents:y?"none":D?"initial":"none"};return(0,St.jsx)(St.Fragment,{children:(0,St.jsxs)("world-object",{...l,children:[n,D&&t?(0,St.jsx)(vn,{ref:p,target:{x:0,y:0,height:l.height,width:l.width},relative:!0,interactive:!1,children:D&&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":D?"initial":"none"}}),o?null:(0,St.jsxs)(St.Fragment,{children:[(0,St.jsx)("div",{title:"east",onTouchStart:P,onMouseDown:P,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:E,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:A,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:T,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:N,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 fv({interactive:e,region:t,onClick:i,onSave:n,maintainAspectRatio:o,disableCardinalControls:a,isEditing:l,rotation:c,style:p={backgroundColor:"rgba(0,0,0,.5)"}}){let m=(0,hv.useCallback)(f=>{n({id:t.id,x:t.x,y:t.y,height:t.height,width:t.width,...f})},[n,t.id,t.x,t.y,t.height,t.width]);return(0,fh.jsx)(Yb,{x:t.x,y:t.y,rotation:c,width:t.width,height:t.height,resizable:l,onSave:m,maintainAspectRatio:o,disableCardinalControls:a,children:(0,fh.jsx)("box",{interactive:e,onClick:f=>{f.preventDefault(),f.stopPropagation(),i(t)},target:{x:0,y:0,width:t.width,height:t.height},style:p})})}var xh=e=>{let t=e.width/(e.crop?.width||e.tiles.width),i=e.tiles.imageService.tiles||[],n=e.tiles.imageService.sizes||[],o=e.enableThumbnail,a=e.enableSizes,l=(0,mv.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]);return(0,_r.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,_r.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:[o&&e.tiles.thumbnail?(0,_r.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,a&&n.map((c,p)=>(0,_r.jsx)("world-image",{uri:`${l}/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)),i.map(c=>(c.scaleFactors||[]).map(p=>(0,_r.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 vv(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 Si=R($()),Jb=(0,Si.createContext)(null),Sh={didCatch:!1,error:null},uu=class extends Si.Component{constructor(t){super(t),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=Sh}static getDerivedStateFromError(t){return{didCatch:!0,error:t}}resetErrorBoundary(){let{error:t}=this.state;if(t!==null){for(var i,n,o=arguments.length,a=new Array(o),l=0;l<o;l++)a[l]=arguments[l];(i=(n=this.props).onReset)===null||i===void 0||i.call(n,{args:a,reason:"imperative-api"}),this.setState(Sh)}}componentDidCatch(t,i){var n,o;(n=(o=this.props).onError)===null||n===void 0||n.call(o,t,i)}componentDidUpdate(t,i){let{didCatch:n}=this.state,{resetKeys:o}=this.props;if(n&&i.error!==null&&eP(t.resetKeys,o)){var a,l;(a=(l=this.props).onReset)===null||a===void 0||a.call(l,{next:o,prev:t.resetKeys,reason:"keys"}),this.setState(Sh)}}render(){let{children:t,fallbackRender:i,FallbackComponent:n,fallback:o}=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,Si.createElement)(n,p);else if(o===null||(0,Si.isValidElement)(o))c=o;else throw l}return(0,Si.createElement)(Jb.Provider,{value:{didCatch:a,error:l,resetErrorBoundary:this.resetErrorBoundary}},c)}};function eP(){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 lr=R($(),1);var To=R($(),1),xv=R(q(),1),tP={collection:void 0,manifest:void 0,range:void 0,canvas:void 0,annotation:void 0,annotationPage:void 0},Fs=To.default.createContext(tP),qt=()=>(0,To.useContext)(Fs);function Gt({value:e,children:t}){let i=qt(),n=(0,To.useMemo)(()=>({...i,...e}),[e,i]);return(0,xv.jsx)(Fs.Provider,{value:n,children:t})}var ku=R($(),1);var dt=function(t){return function(){let i={type:t,getType:()=>t,toString:()=>t};return(n,o)=>({...i,...n!==void 0&&{payload:n},...o!==void 0&&{meta:o}})}},cu="@iiif/IMPORT_ENTITIES",du="@iiif/MODIFY_ENTITY_FIELD",hu="@iiif/REORDER_ENTITY_FIELD",pu="@iiif/ADD_REFERENCE",Bs="@iiif/UPDATE_REFERENCE",fu="@iiif/REMOVE_REFERENCE",mu="@iiif/ADD_METADATA",gu="@iiif/REMOVE_METADATA",Ds="@iiif/UPDATE_METADATA",yu="@iiif/REORDER_METADATA",vu=dt(cu)(),Sv=dt(du)(),wv=dt(hu)(),bv=dt(pu)(),Pv=dt(fu)(),Cv=dt(Bs)(),Ev=dt(mu)(),Av=dt(Ds)(),Tv=dt(gu)(),Rv=dt(yu)(),Mr={importEntities:vu,modifyEntityField:Sv,reorderEntityField:wv,addReference:bv,removeReference:Pv,updateReference:Cv,addMetadata:Ev,removeMetadata:Tv,updateMetadata:Av,reorderMetadata:Rv},xu="@iiif/ADD_MAPPING",Su="@iiif/ADD_MAPPINGS",wh=dt(xu)(),bh=dt(Su)();var Ro="RESOURCE_ERROR",js="RESOURCE_LOADING",Io="RESOURCE_READY",wu="@iiif/REQUEST_RESOURCE",bu="@iiif/REQUEST_ERROR",Pu="@iiif/REQUEST_MISMATCH",Cu="@iiif/REQUEST_COMPLETE",Eu="@iiif/REQUEST_OFFLINE_RESOURCE",Ph=dt(wu)(),Vs=dt(bu)(),Ch=dt(Pu)(),Eh=dt(Cu)(),iP=dt(Eu)();var _o="@iiif/BATCH",Au="@iiif/BATCH_IMPORT",Mo=dt(_o)(),nP=dt(Au)();var rP="http://library.stanford.edu/iiif/image-api/compliance.html#level0",Iv="http://library.stanford.edu/iiif/image-api/compliance.html#level1",_v="http://library.stanford.edu/iiif/image-api/compliance.html#level2",oP="http://library.stanford.edu/iiif/image-api/conformance.html#level0",Mv="http://library.stanford.edu/iiif/image-api/conformance.html#level1",kv="http://library.stanford.edu/iiif/image-api/conformance.html#level2",sP="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level0",Ov="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level1",Lv="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2",aP="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level0",zv="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",lP="http://iiif.io/api/image/1/level0.json",uP="http://iiif.io/api/image/1/profiles/level0.json",Fv="http://iiif.io/api/image/1/level1.json",Bv="http://iiif.io/api/image/1/profiles/level1.json",Dv="http://iiif.io/api/image/1/level2.json",jv="http://iiif.io/api/image/1/profiles/level2.json",cP="http://iiif.io/api/image/2/level0.json",dP="http://iiif.io/api/image/2/profiles/level0.json",Vv="http://iiif.io/api/image/2/level1.json",Uv="http://iiif.io/api/image/2/profiles/level1.json",Hv="http://iiif.io/api/image/2/level2.json",Wv="http://iiif.io/api/image/2/profiles/level2.json",hP="level0",qv="level1",Qv="level2",pP="http://iiif.io/api/image/2/level0",$v="http://iiif.io/api/image/2/level1",Yv="http://iiif.io/api/image/2/level2",Ah=[Yv,_v,kv,Lv,Nv,Dv,jv,Hv,Wv,Qv],RR=[...Ah,$v,Iv,Mv,Ov,zv,Fv,Bv,Vv,Uv,qv],fP=[pP,$v,Yv,rP,Iv,_v,oP,Mv,kv,sP,Ov,Lv,aP,zv,Nv,lP,uP,Fv,Bv,Dv,jv,cP,dP,Vv,Uv,Hv,Wv,hP,qv,Qv],Gv=fP;function Xi(e){for(let t in e)(typeof e[t]>"u"||e[t]===null)&&delete e[t];return e}function tr(e){return Array.isArray(e)?e:e?[e]:[]}var mP=Object.defineProperty,gP=(e,t,i)=>t in e?mP(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,xn=(e,t,i)=>(gP(e,typeof t!="symbol"?t+"":t,i),i);var Xv=["sc:Collection","sc:Manifest","sc:Canvas","sc:AnnotationList","oa:Annotation","sc:Range","sc:Layer","sc:Sequence","oa:Choice","Service","ContentResource"];function yP(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=Xv.indexOf(e["@type"]);if(t!==-1)return Xv[t]}if(e.profile)return"Service";if(e.format||e["@type"])return"ContentResource";throw new Error("Resource type is not known")}var vP=class e0{constructor(t,i={}){xn(this,"traversals"),xn(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 e0({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(yP(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],o=[];for(let a of n)typeof a=="string"?o.push(this.traverseContentResource({"@id":a,"@type":"dctypes:Image"})):o.push(this.traverseContentResource(a));return!i&&!this.options.convertPropsToArray?o[0]:o}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],o=[];for(let a of n)o.push(this.traverseService(a));return!i&&!this.options.convertPropsToArray?o[0]:o}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,o)=>{let a=o(n);return typeof a>"u"&&!this.options.allowUndefinedReturn?n:a},t)}},xP="http://library.stanford.edu/iiif/image-api/compliance.html#level1",SP="http://library.stanford.edu/iiif/image-api/compliance.html#level2",wP="http://library.stanford.edu/iiif/image-api/conformance.html#level1",bP="http://library.stanford.edu/iiif/image-api/conformance.html#level2",PP="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level1",CP="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2",EP="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level1",AP="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level2",TP="http://iiif.io/api/image/1/level1.json",RP="http://iiif.io/api/image/1/profiles/level1.json",IP="http://iiif.io/api/image/1/level2.json",_P="http://iiif.io/api/image/1/profiles/level2.json",MP="http://iiif.io/api/image/2/level1.json",kP="http://iiif.io/api/image/2/profiles/level1.json",OP="http://iiif.io/api/image/2/level2.json",LP="http://iiif.io/api/image/2/profiles/level2.json",zP="level1",NP="level2",FP="http://iiif.io/api/image/2/level1",BP="http://iiif.io/api/image/2/level2",DP=[FP,BP,xP,SP,wP,bP,PP,CP,EP,AP,TP,RP,IP,_P,MP,kP,OP,LP,zP,NP],Th={attributionLabel:"Attribution",lang:"none",providerId:"http://example.org/provider",providerName:"Unknown"};function jP(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 kr(e,t="none"){if(!e)return{};let i=jP(e),n={};for(let o of i){if(typeof o=="string"){n[t]=n[t]?n[t]:[],n[t].push(o||"");continue}if(!o["@language"]){n[t]=n[t]?n[t]:[],n[t].push(o["@value"]||"");continue}let a=o["@language"];n[a]=n[a]?n[a]:[],n[a].push(o["@value"]||"")}return n}function t0(e){if(Array.isArray(e))return t0(e.find(t=>typeof t=="string"));if(Ah.indexOf(e)!==-1)return"level2";if(DP.indexOf(e)!==-1)return"level1";if(Gv.indexOf(e)!==-1)return"level0";if(typeof e=="string")return e}function VP(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 UP(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 Kv(e){for(let t of["sc","oa","dcterms","dctypes","iiif"])if(e.startsWith(`${t}:`))return e.slice(t.length+1);return e}var HP=["Collection","Manifest","Annotation","AnnotationPage","Range","Service"];function Ih(e){let t=e["@id"]||e.id,i=e["@type"]||e.type,n=e.profile||void 0,o=e["@context"]||void 0;if(n){let a=UP(n);if(a)return a}if(o){let a=VP(o);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&&HP.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 WP=/http(s)?:\/\/(creativecommons.org|rightsstatements.org)[^"'\\<\n]+/gm;function qP(e){let t=e.match(WP);return t?t[0]:e}function QP(e,t="Rights/License",i="none"){let n=null,o=[],a=Array.isArray(e)?e:[e];for(let l of a){let c=l?qP(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&&o.push({label:{[i]:[t]},value:{[i]:[c]}})}return[n,o]}var $P=["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 YP(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"),$P.indexOf(n)===-1&&i.push(n);if(t.length)return i.length===1?i[0]:i}}function GP(e){return e?e.map(t=>({label:kr(t.label),value:kr(t.value)})):[]}var Zv=0;function i0(e,t){let i=encodeURI(e.id||e["@id"]||"").trim();return i&&t?`${i}/${t}`:i||(Zv++,`http://example.org/${e["@type"]}${t?`/${t}`:""}/${Zv}`)}function Mn(e){let t=[...e.behavior||[]];e.viewingHint&&t.push(e.viewingHint);let i;return Array.isArray(e.motivation)?i=e.motivation.map(Kv):e.motivation&&(i=Kv(e.motivation)),{"@context":e["@context"]?YP(e["@context"]):void 0,id:(e["@id"]||i0(e)).trim(),type:Ih(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 kn(e){let[t,i]=QP(e.license),n=[...e.metadata?GP(e.metadata):[],...i];return{rights:t,metadata:n.length?n:void 0,label:e.label?kr(e.label):void 0,requiredStatement:e.attribution?{label:kr(Th.attributionLabel),value:kr(e.attribution)}:void 0,navDate:e.navDate,summary:e.description?kr(e.description):void 0,thumbnail:XP(e.thumbnail)}}function XP(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 KP(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:Ih(n)});return i.length?i:void 0}function ir(e){let t=e.related?Array.isArray(e.related)?e.related:[e.related]:[],i=e.contentLayer;return{provider:e.logo||t.length?[{id:Th.providerId,type:"Agent",homepage:t.length?[t[0]]:void 0,logo:e.logo?Array.isArray(e.logo)?e.logo:[e.logo]:void 0,label:kr(Th.providerName)}]:void 0,partOf:KP(e),rendering:e.rendering,seeAlso:e.seeAlso,start:e.startCanvas,service:e.service?tr(e.service):void 0,supplementary:i?[i]:void 0}}function ZP(e){return{chars:e.chars,format:e.format?e.format:void 0,language:e.language}}function JP(e){return Xi({...Mn(e),...kn(e),...ir(e),items:e.members})}function eC(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 o=Mn(e);return i.length&&(o.behavior?o.behavior.push(...i):o.behavior=i),Xi({...o,...kn(e),...ir(e),start:n,items:t,structures:tC(e.structures)})}function tC(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 o=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=o}return e.filter(n=>i.indexOf(n.id)===-1)}function iC(e){return Xi({...Mn(e),...kn(e),...ir(e),annotations:e.otherContent&&e.otherContent.length?e.otherContent:void 0,items:e.images&&e.images.length?[{id:i0(e,"annotation-page"),type:"AnnotationPage",items:e.images}]:void 0})}function nC(e){return Xi({...Mn(e),...kn(e),...ir(e),items:e.resources&&e.resources.length?e.resources:void 0})}function rC(e){return!e.canvases||e.canvases.length===0?{canvases:[],behavior:[]}:{canvases:e.canvases,behavior:e.viewingHint?[e.viewingHint]:[],startCanvas:e.startCanvas}}function oC(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:Rh(i.selector)}}else return encodeURI(i["@id"]).trim()}return Xi({...Mn(e),...kn(e),...ir(e),target:t(e.on),body:Array.isArray(e.resource)?e.resource.map(Jv):Jv(e.resource)})}function Jv(e){return e.type==="Choice"?e:n0(e)}function n0(e){let t=e;return Xi({...Mn(t),...kn(t),...ir(t),...ZP(t)})}function sC(e){let t=[];return e.default&&e.default!=="rdf:nil"&&t.push(e.default),e.item&&e.item!=="rdf:nil"&&t.push(...e.item),Xi({...Mn(e),...kn(e),items:t})}function aC(e){return Xi({...Mn(e),...kn(e),...ir(e),items:e.members})}function lC(e){let{"@id":t,"@type":i,"@context":n,profile:o,...a}=e,l={};return t&&(l["@id"]=t),l["@type"]=Ih(e),l["@type"]==="unknown"&&(n&&n.length&&(l["@context"]=n),l["@type"]="Service"),o&&(l.profile=t0(o)),Xi({...l,...a})}function uC(e){return Xi({...Mn(e),...kn(e),...ir(e)})}var cC=new vP({collection:[JP],manifest:[eC],canvas:[iC],annotationList:[nC],sequence:[rC],annotation:[oC],contentResource:[n0],choice:[sC],range:[aC],service:[lC],layer:[uC]});function r0(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"?cC.traverseUnknown(e):e}function Rh(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[Rh(e.default),...(Array.isArray(e.item)?e.item:[e.item]).map(Rh)];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 Ki(e){return typeof e=="string"?!1:!!e&&e.type==="SpecificResource"}function Tu(...e){return t=>e.reduce((i,n)=>n(i),t)}var _h=["Collection","Manifest","Canvas","AnnotationPage","AnnotationCollection","Annotation","ContentResource","Range","Service","Selector","Agent"];function o0(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=_h.indexOf(e.type);if(i!==-1)return _h[i]}if(e.profile)return"Service";throw new Error("Resource type is not known")}var Mh=class s0{constructor(t,i={}){xn(this,"traversals"),xn(this,"options"),xn(this,"_traverseManifest",Tu(this.traverseManifestItems.bind(this),this.traverseLinking.bind(this),this.traverseDescriptive.bind(this),this.traverseLinkedCanvases.bind(this),this.traverseManifestStructures.bind(this),this.traverseInlineAnnotationPages.bind(this))),xn(this,"_traverseCanvas",Tu(this.traverseCanvasItems.bind(this),this.traverseLinking.bind(this),this.traverseDescriptive.bind(this),this.traverseLinkedCanvases.bind(this),this.traverseInlineAnnotationPages.bind(this))),xn(this,"_traverseAnnotationPage",Tu(this.traverseAnnotationPageItems.bind(this),this.traverseLinking.bind(this),this.traverseDescriptive.bind(this))),xn(this,"_traverseRange",Tu(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 s0({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=tr(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=tr(t.service).map(i=>this.traverseService(i))),t.services&&(t.services=tr(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=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&&(Ki(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=tr(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))),Ki(t)?this.traverseSpecificResource(t,"ContentResource"):this.traverseType(this.traverseInlineAnnotationPages(this.traverseContentResourceLinking(t)),{parent:i},this.traversals.contentResource)}traverseSpecificResource(t,i,n){let o=t.source;return typeof t.source=="string"&&(o={id:t.source,type:i||"unknown"}),this.traverseType({...t,source:i==="Canvas"||o.type==="Canvas"?this.traverseType(o,{parent:n},this.traversals.canvas):i==="ContentResource"?this.traverseContentResource(o,{parent:n}):this.traverseUnknown(o,{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):Ki(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((o,a)=>{let l=a(o,i);return typeof l>"u"&&!this.options.allowUndefinedReturn?o:l},t)}traverseService(t,i){let n=Object.assign({},t);return n&&n.service&&(n.service=tr(n.service).map(o=>this.traverseService(o))),this.traverseType(n,{parent:i},this.traversals.service)}traverseUnknown(t,{parent:i,typeHint:n}={}){let o=o0(t,n);switch(o){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 ${o}`)}}};function Lh(e,t){let i=t||"unknown";if(!e)return;if(typeof e=="string")return{id:e,type:i};if(Ki(e))return Lh(e.source,t);let n=i&&i!=="unknown"?i:e.type||e["@type"],o=e.id||e["@id"];if(n&&n.indexOf(":")!==-1&&(n=n.split(":").pop()),o&&n)return{id:o,type:n}}var Oo={},pt="iiif-parser:hasPart",wi="iiif-parser:partOf",Lo="iiif-parser:isExternal",Fi="__$UNSET$__",zh="__$UNWRAP$__",ce=[];Object.freeze(ce);Object.freeze(Oo);function l0(e){if(e===Oo||Object.keys(e).length===0)return!0;for(let t in e)return!1;return!0}function No(e,t){if(t&&t["@explicit"]){let i={},n=Object.keys(t);for(let o of n)o===wi||o==="@explicit"||(l0(t[o])?i[o]=e[o]:i[o]=t[o]);return i}return e}function Nh(e,t,i){let n=Lh(t);if(!n)return[void 0,void 0];let o=e.requests[n.id],a=n.type||e.mapping[n.id];if(!a||o&&o.resourceUri&&(!e.entities[a]||!e.entities[a][o.resourceUri]))return[void 0,void 0];let l=e.entities[a][o?o.resourceUri:n.id];if(n.type&&!l)return Nh(e,{id:n.id},i);if(l&&l[pt]){let c=l[pt].find(p=>i?p[wi]===i.id:p[wi]===l.id);return[No(l,c),l]}return[l,l]}var u0={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},c0={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},d0={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},h0={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"},p0={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"},f0={id:"https://iiif-parser/empty-agent",type:"Agent",label:{},logo:ce,seeAlso:ce,homepage:ce},m0={id:"https://iiif-parser/empty-service",type:"UnknownService"};function Oh(e,t={}){if(Array.isArray(e))return Oh(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 Oh(e.items[0]);if(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 g0(){return{Collection:{},Manifest:{},Canvas:{},AnnotationPage:{},AnnotationCollection:{},Annotation:{},ContentResource:{},Range:{},Service:{},Selector:{},Agent:{}}}function y0(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 dC(e,t){return(i,n)=>{let o=e[i]?e[i]:{};return(a,l)=>{let c=y0(a,n||i);return c&&c.id&&i?(o[c.id]=o[c.id]?_u(o[c.id],c,{parent:l.parent,isTopLevel:t.id===c.id}):_u({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 Iu(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 o of t)if(o["@id"]&&!o.id&&(o.id=o["@id"]),o["@type"]&&!o.type&&(o.type=o["@type"]),o!=null)if(Array.isArray(o))n.push(o);else if(typeof o=="object"&&o.id&&o.type){let a=n.findIndex(l=>l.id===o.id&&l.type===o.type);a>=0&&(n[a]=Iu(n[a],o))}else e.indexOf(o)===-1&&n.push(o);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},o=[],a=[],l=Object.keys(e).filter(m=>m!==pt&&m!=="id"&&m!=="type"),c={},p={};for(let[m,f]of Object.entries(t)){if(m===pt||m==="id"||m==="type")continue;let y=n[m];y===f?a.push(m):y===ce||!y?(o.push(m),n[m]=f):(y&&f&&(c[m]=y,p[m]=f),n[m]=Iu(y,f),n[m]===c[m]&&(a.push(m),delete c[m]))}if(i&&(i.parent&&i.parent.id||i.isTopLevel)){let m=[],f={};if(i.parent?f[wi]=i.parent.id:i.isTopLevel&&(f[wi]=e.id),n[pt]&&n[pt].length){let y=!(n[pt]||[]).find(P=>P["@explicit"]),S=o.length>0||a.length!==l.length;if(y&&S)for(let P of n[pt]){let v={...P},x=Object.keys(c);if(v){v["@explicit"]=!0;for(let E of l)E!==pt&&(v[E]=Oo);for(let E of x)v[E]=c[E]}m.push(v)}else m.push(...n[pt]);if(S){let P=Object.keys(p);f["@explicit"]=!0;for(let v of o)f[v]=Oo;for(let v of a)f[v]=Oo;for(let v of P)f[v]=p[v]}}f.id=n.id,f.type=n.type,m.push(f),n[pt]=m}return n}else if(e)return e;return t}function _u(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 Iu({...e},t,i)}function hC(e){return(t,i)=>n=>{let{id:o,type:a}=y0(n,i||t);if(typeof o>"u")throw new Error("Found invalid entity without an ID.");return t==="ContentResource"||t==="Service"?e[o]=t:e[o]=a,n}}function pC(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({},m0,t)}function fC(e){return t=>{e.Service=e.Service?e.Service:{};let i=t.id||t["@id"],n=pC(t);return n&&n.id&&(e.Service[n.id]?e.Service[i]=_u(e.Service[i],n):e.Service[i]=n),t}}function mC(e){let t=JSON.stringify(e),i=5381,n=t.length;for(;n;)i=i*33^t.charCodeAt(--n);let o=(i>>>0).toString(16);return o.length%2?"0"+o:o}function kh(e){return t=>typeof t=="string"?{id:t,type:e}:t.id?t.type?t:{type:e,...t}:{id:`vault://${mC(t)}`,type:e,...t}}function ko(e){return t=>({...e,...t})}function Us(e){return Array.isArray(e)?e:[e]}function gC(e){return e.body&&(e.body=Us(e.body)),e.seeAlso&&(e.seeAlso=Us(e.seeAlso)),e.audience&&(e.audience=Us(e.audience)),e.accessibility&&(e.accessibility=Us(e.accessibility)),e.motivation&&(e.motivation=Us(e.motivation)),e}function v0(e,{typeHint:t,partOfTypeHint:i}={}){if(typeof e=="string"&&(e={id:e,type:t||"unknown"}),Ki(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[o,a]=(e.id||"").split("#");e.id=o,a&&(n={type:"FragmentSelector",value:a})}return{type:"SpecificResource",source:e,selector:n}}function yC(e){let t=Object.assign({},e);return e&&e.items&&(t.items=e.items.map(i=>typeof i=="string"||i.type==="Canvas"?v0(i):i)),t}function vC(e){let t=Object.assign({},e);return t.start?(t.start=v0(t.start,{typeHint:"Canvas"}),t):e}function xC(e){let t=Object.assign({},e);return t.target?(t.target=Oh(t.target,{typeHint:"Canvas"}),t):e}function x0(e){return e}function Ru(e){return typeof e.items>"u"&&(e[Lo]=!0),e}function Fh(e){let t=r0(e),i=g0(),n={},o=dC(i,t),a=hC(n),l=new Mh({collection:[Ru,ko(d0),a("Collection"),o("Collection")],manifest:[Ru,ko(h0),vC,a("Manifest"),o("Manifest")],canvas:[ko(c0),a("Canvas"),o("Canvas")],annotationPage:[Ru,kh("AnnotationPage"),ko(u0),a("AnnotationPage"),o("AnnotationPage")],annotation:[kh("Annotation"),gC,xC,a("Annotation"),o("Annotation")],contentResource:[kh("ContentResource"),a("ContentResource"),o("ContentResource")],range:[ko(p0),yC,a("Range","Canvas"),o("Range","Canvas")],agent:[ko(f0),a("Agent"),o("Agent")],specificResource:[x0],service:[fC(i)]}).traverseUnknown(t);return{entities:i,resource:l,mapping:n}}function S0(e){let t={};for(let[i,n]of e){if(i===zh&&n!==Fi)return n;n!==Fi&&typeof n<"u"&&n!==null&&(t[i]=n)}return t}function Bh(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(o,a,l=0){let c=i[o.type];if(!c)return Fi;if(l>20)throw new Error("Circular reference: "+o.id+" "+o.type);let[p,m]=Nh(e,o.type?o:o.id,a)||(o.id&&o.type?o:null);if(!p)return Fi;let f=c(p,e,{parent:a,isTopLevel:t.id===o.id,fullResource:m}),y=f.next();for(;!y.done;){let S=y.value,P=Fi;if(S)if(Array.isArray(S)){let v=[];for(let x of S)v.push(n(x,o,l+1));P=v}else P=n(S,o,l+1);y=f.next(P)}return y.value===Fi?Fi:S0(y.value)}return n(t)}function zo(e,{allowSourceString:t=!0,allowString:i=!1,allowedStringType:n}={}){let o=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 o(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 o(e)}function Nr(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 w0(e){return Array.isArray(e)?e.map(t=>w0(t)):typeof e=="string"?e:e.type&&e.type==="Canvas"?e.id:e}function or(e,t=!1){if(e)return e.length>1&&!t?e:e[0]||void 0}function SC(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 Or(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*Lr(e){let t=e.provider?yield e.provider[0]:void 0;return[["label",Nr(e.label)],["metadata",e.metadata&&e.metadata.length?e.metadata.map(i=>({label:Nr(i.label)||"",value:Nr(i.value)||""})):void 0],["description",Nr(e.summary)],["thumbnail",or(yield e.thumbnail)],["navDate",e.navDate],["logo",t?or(t.logo):void 0],["homepage",t?t.homepage:void 0],["attribution",e.requiredStatement?Nr(e.requiredStatement.value):void 0]]}function*Hs(e){let t=e.start&&e.start.type&&e.start.type==="SpecificResource"?zo(e.start):e.start;return[["seeAlso",or(yield e.seeAlso)],["service",or((e.service||[]).map(SC))],["rendering",or(yield e.rendering)],["startCanvas",t?t.id:void 0]]}function wC(e){return e.type==="SpecificResource"}function bC(e){return e&&e.type==="FragmentSelector"}function PC(e){if(e&&wC(e)){let t=e.id,i=e.selector?Array.isArray(e.selector)?e.selector[0]:e.selector:void 0;return bC(i)&&(t+="#"+i.value),t}return e?.id}var Dh={Manifest:function*(e,t,{isTopLevel:i}){return[...i?[["@context","http://iiif.io/api/presentation/2/context.json"]]:[],...Or(e,"sc:Manifest"),...yield*Lr(e),...yield*Hs(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[...Or(e,"sc:Canvas"),...yield*Lr(e),...yield*Hs(e),["images",t?[t.resources]:void 0],["annotations",e.annotations&&e.annotations.length?or(yield e.annotations):void 0]]},AnnotationPage:function*(e){return[...Or(e,"sc:AnnotationList"),...yield*Lr(e),["resources",e.items&&e.items.length?or(yield e.items):void 0]]},Annotation:function*(e){return[["@id",e.id],["@type","oa:Annotation"],["motivation","sc:painting"],["on",w0(e.target)],["resource",or(yield e.body,!0)]]},ContentResource:function*(e){switch(e.type){case"Image":return[...Or(e,"dctypes:Image"),...yield*Lr(e),...yield*Hs(e)];case"Text":case"Dataset":default:return[...Or(e,void 0),...yield*Lr(e)]}},AnnotationCollection:function*(e){return[["@id",e.id],["@type","sc:Layer"],["label",Nr(e.label)]]},Collection:function*(e){return[...Or(e,"sc:Collection"),...yield*Lr(e),...yield*Hs(e),["members",yield*e.items]]},Range:function*(e){let t=[],i=[];if(e.items)for(let n of e.items){let o=n.type==="SpecificResource"?n.source:n;if(o){let a=yield o;t.push({"@id":PC(n),"@type":o.type,label:a?a.label:void 0,within:e.id}),o.type==="Canvas"&&i.push(o.id)}}return[...Or(e,"sc:Range"),...yield*Lr(e),...yield*Hs(e),["canvases",i.length===t.length?i:void 0],["members",i.length!==t.length?t:void 0]]}};function zr(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],[pt,Fi]]}function wt(e){if(e===Fi||!e||e.length===0)return;let t=e.filter(i=>i!==Fi);if(t.length!==0)return t}function b0(e){if(e&&e.type&&e.type==="ImageService2"){let{id:t,type:i,profile:n,...o}=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",...o}}return e}function a0(e){if(Array.isArray(e)||(e=e?[e]:[]),!(!e||e.length===0))return e.map(b0)}function*nr(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*rr(e){return[["seeAlso",wt(yield e.seeAlso)],["service",wt(a0(e.service))],["services",wt(a0(e.services))],["rendering",wt(yield e.rendering)],["supplementary",wt(yield e.supplementary)],["homepage",wt(yield e.homepage)],["logo",wt(yield e.logo)],["partOf",wt(yield e.partOf)],["start",e.start?zo(e.start):e.start]]}var jh={Manifest:function*(e,t,{isTopLevel:i}){return i?[["@context",e["@context"]?e["@context"]:"http://iiif.io/api/presentation/3/context.json"],...zr(e),...yield*nr(e),...yield*rr(e),["items",yield e.items],["structures",wt(yield e.structures)],["annotations",wt(yield e.annotations)],["navPlace",e.navPlace]]:[...zr(e),...yield*nr(e)]},Canvas:function*(e){return[...zr(e),...yield*nr(e),...yield*rr(e),["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*rr(e)]},AnnotationPage:function*(e){let t=Object.entries(e).map(([n,o])=>[n,Array.isArray(o)?wt(o):o]).filter(([n,o])=>n!=="items"&&n!=="id"&&n!==pt&&n!==wi&&n!==Lo),i=yield e.items;return[["id",e.id?.startsWith("vault://")?void 0:e.id],...t,...yield*rr(e),["items",i.length||e[Lo]===!1?i:Fi]]},Service:function*(e){return[[zh,b0(e)]]},Annotation:function*(e){let t=Object.entries(e).map(([n,o])=>n==="motivation"?[n,Array.isArray(o)?o[0]:o]:n==="target"?[n,zo(o,{allowString:!0,allowSourceString:!0,allowedStringType:"Canvas"})]:[n,Array.isArray(o)?wt(o):o]).filter(([n])=>n!=="body"&&n!==pt&&n!==Lo),i;if(Array.isArray(e.body)){let n=[];for(let o of e.body)if(o&&Ki(o)){let a={...o};a.source=yield o.source,n.push(zo(a,{allowSourceString:!0}))}else n.push(yield o);i=n}else e.body&&Ki(e.body)?(i={...e.body},i.source=yield e.body.source):i=yield e.body;return[...t,...yield*nr(e),...yield*rr(e),["body",i.length===1?i[0]:i]]},ContentResource:function*(e){return CC([...zr(e),...yield*nr(e),...yield*rr(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"],...zr(e),...yield*nr(e),...yield*rr(e),["items",wt(yield e.items)],["navPlace",e.navPlace]]:[...zr(e),...yield*nr(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(zo(i)):t.push(i);return[...zr(e),...yield*nr(e),...yield*rr(e),["items",t],["annotations",wt(yield e.annotations)],["navPlace",e.navPlace]]}};function CC(e,t){let i=Object.keys(t),n=e.map(([o])=>o);for(let o of i)o===pt||o===Lo||n.indexOf(o)===-1&&typeof t[o]<"u"&&e.push([o,t[o]]);return e}var EC=(e,t)=>{let{entities:i,resource:n,mapping:o}=Fh(t);if(n.id===void 0)return[Vs({id:e,message:"ID is not defined in resource."})];let a=[vu({entities:i}),bh({mapping:o})];return n.id!==e&&(a.push(wh({id:e,type:n.type})),a.push(Ch({requestId:e,actualId:n.id}))),a.push(Eh({id:e})),a},P0=Number.isNaN||function(t){return typeof t=="number"&&t!==t};function AC(e,t){return!!(e===t||P0(e)&&P0(t))}function Uh(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(!AC(e[i],t[i]))return!1;return!0}function Vh(e,t,i){let n=e.iiif.requests[t],o=e.iiif.mapping[t];if(!o||!e.iiif.entities[o][n.resourceUri])return;let a=e.iiif.entities[o][n.resourceUri];if(a&&a[pt]){let l=a[pt].find(c=>i?c[wi]===i.id:c[wi]===a.id);return No(a,l)}return a}function TC(e){return e&&typeof e.then=="function"}function Hh(e,t,{waitTimeout:i=30}={}){return(n,o)=>{let a=e.getStore(),l=a.getState(),c=l.iiif.requests[n];if(c){if(c.loadingState===Io){let m=Vh(l,n);if(m)return m}switch(c.loadingState){case Ro:break;case js:return(async()=>{let m,f=!1;try{let y=await Promise.race([new Promise((S,P)=>{f||(m=a.subscribe(()=>{let v=a.getState();if(v.iiif.requests[n].loadingState===Ro){P();return}if(v.iiif.requests[n].loadingState===Io){let x=Vh(v,n);x?S(x):P()}}))}),new Promise((S,P)=>setTimeout(()=>{f=!0,P()},i*60*1e3))]);if(m&&m(),y)return y}catch{m&&m()}})()}}e.dispatch(Ph({id:n}));let p=m=>{if(!m)return;!m.id&&!m["@id"]&&(m["@type"]&&(m["@id"]=n),m.id=n);let f=EC(n,m);return e.dispatch(Mo({actions:f})),Vh(a.getState(),n)};try{let m=t(n,o);return TC(m)?(async()=>{try{return p(await m)}catch(f){throw e.dispatch(Vs({id:n,message:f.toString()})),f}})():p(m)}catch(m){throw e.dispatch(Vs({id:n,message:m.toString()})),m}}}function Wh(){return{Collection:{},Manifest:{},Canvas:{},AnnotationPage:{},AnnotationCollection:{},Annotation:{},ContentResource:{},Range:{},Service:{},Selector:{},Agent:{}}}var E0={},C0=e=>{let t,i=new Set,n=(f,y)=>{let S=typeof f=="function"?f(t):f;if(!Object.is(S,t)){let P=t;t=y??(typeof S!="object"||S===null)?S:Object.assign({},t,S),i.forEach(v=>v(t,P))}},o=()=>t,p={setState:n,getState:o,getInitialState:()=>m,subscribe:f=>(i.add(f),()=>i.delete(f)),destroy:()=>{(E0.env?E0.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,o,p);return p},A0=e=>e?C0(e):C0;var qh="@iiif/SET_META_VALUE",Qh="@iiif/SET_META_VALUE_DYNAMIC",$h="@iiif/UNSET_META_VALUE",RC=dt(qh)(),IC=dt(Qh)(),_C=dt($h)(),Yh={setMetaValue:RC,setMetaValueDynamic:IC,unsetMetaValue:_C};var Fo={},MC=(e,t)=>(i,n,o)=>(o.dispatch=a=>(i(l=>e(l,a),!1,a),a),o.dispatchFromDevtools=!0,{dispatch:(...a)=>o.dispatch(...a),...t}),kC=MC,Zh=new Map,Mu=e=>{let t=Zh.get(e);return t?Object.fromEntries(Object.entries(t.stores).map(([i,n])=>[i,n.getState()])):{}},OC=(e,t,i)=>{if(e===void 0)return{type:"untracked",connection:t.connect(i)};let n=Zh.get(i.name);if(n)return{type:"tracked",store:e,...n};let o={connection:t.connect(i),stores:{}};return Zh.set(i.name,o),{type:"tracked",store:e,...o}},LC=(e,t={})=>(i,n,o)=>{let{enabled:a,anonymousActionType:l,store:c,...p}=t,m;try{m=(a??(Fo.env?Fo.env.MODE:void 0)!=="production")&&window.__REDUX_DEVTOOLS_EXTENSION__}catch{}if(!m)return(Fo.env?Fo.env.MODE:void 0)!=="production"&&a&&console.warn("[zustand devtools middleware] Please install/enable Redux devtools extension"),e(i,n,o);let{connection:f,...y}=OC(c,m,p),S=!0;o.setState=(x,E,C)=>{let T=i(x,E);if(!S)return T;let A=C===void 0?{type:l||"anonymous"}:typeof C=="string"?{type:C}:C;return c===void 0?(f?.send(A,n()),T):(f?.send({...A,type:`${c}/${A.type}`},{...Mu(p.name),[c]:o.getState()}),T)};let P=(...x)=>{let E=S;S=!1,i(...x),S=E},v=e(o.setState,n,o);if(y.type==="untracked"?f?.init(v):(y.stores[y.store]=o,f?.init(Object.fromEntries(Object.entries(y.stores).map(([x,E])=>[x,x===y.store?v:E.getState()])))),o.dispatchFromDevtools&&typeof o.dispatch=="function"){let x=!1,E=o.dispatch;o.dispatch=(...C)=>{(Fo.env?Fo.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),E(...C)}}return f.subscribe(x=>{var E;switch(x.type){case"ACTION":if(typeof x.payload!="string"){console.error("[zustand devtools middleware] Unsupported action format");return}return Gh(x.payload,C=>{if(C.type==="__setState"){if(c===void 0){P(C.state);return}Object.keys(C.state).length!==1&&console.error(`
71
71
  [zustand devtools middleware] Unsupported __setState action format.
72
72
  When using 'store' option in devtools(), the 'state' should have only one key, which is a value of 'store' that was passed in devtools(),
73
73
  and value of this only key should be a state object. Example: { "type": "__setState", "state": { "abc123Store": { "foo": "bar" } } }
74
- `);let T=E.state[c];if(T==null)return;JSON.stringify(o.getState())!==JSON.stringify(T)&&P(T);return}o.dispatchFromDevtools&&typeof o.dispatch=="function"&&o.dispatch(E)});case"DISPATCH":switch(x.payload.type){case"RESET":return P(v),c===void 0?f?.init(o.getState()):f?.init(Eu(p.name));case"COMMIT":if(c===void 0){f?.init(o.getState());return}return f?.init(Eu(p.name));case"ROLLBACK":return jd(x.state,E=>{if(c===void 0){P(E),f?.init(o.getState());return}P(E[c]),f?.init(Eu(p.name))});case"JUMP_TO_STATE":case"JUMP_TO_ACTION":return jd(x.state,E=>{if(c===void 0){P(E);return}JSON.stringify(o.getState())!==JSON.stringify(E[c])&&P(E[c])});case"IMPORT_STATE":{let{nextLiftedState:E}=x.payload,T=(C=E.computedStates.slice(-1)[0])==null?void 0:C.state;if(!T)return;P(c===void 0?T:T[c]),f?.send(null,E);return}case"PAUSE_RECORDING":return w=!w}return}}),v},bC=wC,jd=(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)},PC=e=>(t,i,n)=>{let o=n.subscribe;return n.subscribe=(l,c,p)=>{let m=l;if(c){let f=p?.equalityFn||Object.is,y=l(n.getState());m=w=>{let P=l(w);if(!f(y,P)){let v=y;c(y=P,v)}},p?.fireImmediately&&c(y,y)}return o(m)},e(t,i,n)},CC=PC,EC=(e={},t)=>{switch(t.type){case pu:return{...e,[t.payload.id]:t.payload.type};case fu:return{...e,...t.payload.mapping};default:return e}};function Vd(e,t,i,n){return!(!e[i]||!e[i][t]||!e[i][t][n]||!Array.isArray(e[i][t][n]))}function AC(e,t){let i={},n=[];for(let[o,a]of Object.entries(e||{})){n.push(o);let l=(t||{})[o];if(!l||l.length===0){i[o]=a;continue}i[o]=l}for(let[o,a]of Object.entries(t||{}))n.indexOf(o)===-1&&(i[o]=a);return i}function pe(e){return e.payload}function Ud(e,t){return typeof e>"u"?t:e}var RC=(e=zd(),t)=>{let i=(n,o)=>({...e,[pe(t).type]:{...e[pe(t).type],[pe(t).id]:{...n,...o}}});switch(t.type){case ou:{if(!e[pe(t).type]||!e[pe(t).type][pe(t).id])return e;let n=e[pe(t).type][pe(t).id];return typeof n=="string"?e:i(n,{[pe(t).key]:pe(t).value})}case su:{if(!Vd(e,pe(t).id,pe(t).type,pe(t).key))return e;let n=e[pe(t).type][pe(t).id];if(typeof n=="string")return e;let o=Array.from(n[pe(t).key]),[a]=o.splice(pe(t).startIndex,1);return o.splice(pe(t).endIndex,0,a),i(n,{[pe(t).key]:o})}case ru:{let n=Object.keys(pe(t).entities),o={...e};for(let a of n){let l=pe(t).entities[a],c={...e[a]||{}},p=!1,m=Object.keys(l||{})||[];if(l&&m){for(let f of m)p=!0,c[f]=e[a][f]?AC(e[a][f],l[f]):l[f];p&&(o[a]=c)}}return o}case au:{if(!Vd(e,pe(t).id,pe(t).type,pe(t).key))return e;let n=e[pe(t).type][pe(t).id],o=Array.from(n[pe(t).key]);return o.splice(Ud(pe(t).index,o.length+1),0,pe(t).reference),i(n,{[pe(t).key]:o})}case ks:case lu:{if(!Vd(e,pe(t).id,pe(t).type,pe(t).key))return e;let n=e[pe(t).type][pe(t).id],o=Array.from(n[pe(t).key]),a=Ud(pe(t).index,o.findIndex(l=>l&&l.id===pe(t).reference.id));return a===-1||o[a]?.id!==pe(t).reference.id?e:(t.type===ks?o.splice(a,1,pe(t).reference):o.splice(a,1),i(n,{[pe(t).key]:o}))}case uu:{let n=e[pe(t).type][pe(t).id];if(!n)return e;let o=Array.from(n.metadata||[]),a=pe(t);return o.splice(Ud(t.payload.beforeIndex,o.length+1),0,{label:a.label,value:a.label}),i(n,{metadata:o})}case hu:{let n=e[pe(t).type][pe(t).id];if(typeof n=="string"||!n)return e;let o=Array.from(n.metadata||[]),[a]=o.splice(pe(t).startIndex,1);return o.splice(pe(t).endIndex,0,a),i(n,{metadata:o})}case Ls:case cu:{let n=e[pe(t).type][pe(t).id],o=Array.from(n.metadata||[]),a=pe(t).atIndex;return typeof a>"u"||a===-1||!o[a]?e:(t.type===Ls?o.splice(a,1,{label:pe(t).label,value:pe(t).value}):o.splice(a,1),i(n,{metadata:o}))}default:return e}},TC=(e={},t)=>{switch(t.type){case mu:case xu:return{...e,[t.payload.id]:{requestUri:t.payload.id,loadingState:zs,uriMismatch:!1,resourceUri:t.payload.id}};case yu: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 gu:return{...e,[t.payload.id]:{...e[t.payload.id]||{},loadingState:Co,error:t.payload.message}};case vu:return{...e,[t.payload.id]:{...e[t.payload.id]||{},loadingState:Eo,error:void 0}}}return e},IC=(e={},t)=>{let{id:i,updateValue:n,value:o,meta:a,key:l}=t&&t.payload||{};switch(t.type){case Nd:return{...e,[i]:{...e[i]||{},[a]:{...e[i]?e[i][a]||{}:{},[l]:o}}};case Fd: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 Bd: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 v0(e={}){let t=Object.keys(e);return function(n={},o){let a=!1,l={};for(let c=0;c<t.length;c++){let p=t[c];l[p]=e[p](n[p],o),a=a||l[p]!==n[p]}return a?l:n}}function _C(e){return(t,i)=>i&&i.type===Ao?i.payload.actions.reduce(e,t):i&&i.type===Su?{...t,iiif:{...t.iiif,...i.payload.state}}:e(t,i)}var MC=v0({mapping:EC,entities:RC,requests:TC,meta:IC});function OC(){return{iiif:{entities:zd(),meta:{},mapping:{},requests:{}}}}function x0(e={}){let{enableDevtools:t=!1,iiifStoreName:i="iiif",defaultState:n=OC(),customReducers:o={}}=e,a=_C(v0({[i]:MC,...o}));return y0(CC(bC(xC(a,n),{enabled:t})))}function kC(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(o){o(i)}),(n=e.get("*"))&&n.slice().map(function(o){o(t,i)})}}}function Xt(e,t,i,n=!0){t[Lo]=t[Lo]||[],t[Lo].push(e);let o=new Map;Object.defineProperty(t,e,{enumerable:n,get(){if(typeof t[zr][e]>"u")return;let a=t[zr][e];if(!a)return a;let l=i.get(t[zr][e],{parent:this.id?{id:this.id,type:this.type}:void 0});return o.has(l)||(o.clear(),o.set(l,Nr(l,i))),o.get(l)},set(a){t[zr][e]!==a&&(this[Lr]?i.modifyEntityField({id:this.id,type:this.type},e,b0(a)):this[zr][e]=a)}})}var zr=Symbol.for("_refs_"),Lr=Symbol.for("_reactive_"),Lo=Symbol.for("_defined_"),S0=Symbol.for("_parent_");function LC(e,t=!1,i){let n={id:"",type:"unknown",[Lo]:[],[zr]:{},[S0]:i||null,[Lr]:null,is(o){return typeof o=="string"?this.id===o:o.id?o.id===this.id:!1},reactive(){if(!this[Lr])return this[Lr]=this.subscribe(()=>this.refresh(),!0),()=>{this.unreactive()}},refresh(){if(this.id){let o=this.unwrap();for(let a of Object.keys(o||{}))this[Lo].includes(a)?this[zr][a]=o[a]:this[a]=o[a]}},unreactive(){this[Lr]&&(this[Lr](),this[Lr]=null)},unwrap(){if(!this.id)throw new Error("Invalid object");let o=this[S0];return e.get(this.id,{parent:o?{id:o,type:"unknown"}:void 0})},toPresentation3(){return e.toPresentation3(this.unwrap())},toPresentation2(){return e.toPresentation2(this.unwrap())},valueOf(){return this.unwrap()},toJSON(){let o=this;return{...o,items:o.items,annotations:o.annotations,structures:o.structures,seeAlso:o.seeAlso,service:o.service,services:o.services,rendering:o.rendering,partOf:o.partOf,start:o.start,supplementary:o.supplementary,homepage:o.homepage,thumbnail:o.thumbnail,placeholderCanvas:o.placeholderCanvas,accompanyingCanvas:o.accompanyingCanvas,provider:o.provider}},subscribe(o,a=!0){return e.subscribe(()=>this.id?e.get(this.id):null,o,a)}};return Xt("items",n,e),Xt("annotations",n,e),Xt("structures",n,e),Xt("seeAlso",n,e),Xt("rendering",n,e),Xt("partOf",n,e),Xt("start",n,e,!1),Xt("supplementary",n,e),Xt("homepage",n,e),Xt("thumbnail",n,e),Xt("placeholderCanvas",n,e,!1),Xt("accompanyingCanvas",n,e,!1),Xt("provider",n,e),Xt("body",n,e),Xt("logo",n,e),n}function zC(e){return!!e[Lo]}function b0(e){return Array.isArray(e)?e.map(t=>b0(t)):!e||!e.type?e:{id:e.id,type:e.type}}function Nr(e,t,i=!1,n){if(Array.isArray(e))return e.map(c=>Nr(c,t,i));if(!e||!e.type||!e.id)return e;let o=LC(t,i),a=Object.create(o),l=Object.assign(a,e);return i&&l.reactive(),l}function w0(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 zo=class{constructor(e,t){ui(this,"options"),ui(this,"store"),ui(this,"emitter"),ui(this,"isBatching",!1),ui(this,"batchQueue",[]),ui(this,"remoteFetcher"),ui(this,"staticFetcher"),ui(this,"defaultFetcher",i=>fetch(i).then(n=>n.json())),this.options=Object.assign({reducers:{},customFetcher:this.defaultFetcher,enableDevtools:!0},e||{}),this.store=t||x0({customReducers:this.options.reducers,defaultState:this.options.defaultState,enableDevtools:this.options.enableDevtools}),this.emitter=kC(),this.remoteFetcher=Ld(this,this.options.customFetcher),this.staticFetcher=Ld(this,(i,n)=>n)}batch(e){this.isBatching=!0;try{e(this),this.isBatching=!1,this.dispatch(Ro({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(Ro({actions:this.batchQueue}))}catch(t){throw this.batchQueue=[],this.isBatching=!1,t}this.batchQueue=[]}modifyEntityField(e,t,i){this.dispatch(Tr.modifyEntityField({id:e.id,type:e.type,key:t,value:i}))}dispatch(e){if(this.isBatching)this.batchQueue.push(e);else{if(e.type===Ao){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 Id(this.getState().iiif,e,t)}toPresentation2(e){return this.serialize(e,_d)}toPresentation3(e){return this.serialize(e,Md)}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||{},o=i.parent?typeof i.parent=="string"?i.parent:i.parent.id:void 0;if(Array.isArray(e))return e.map(f=>this.get(f,i));let a=this.getState();if($i(e)&&!i.preserveSpecificResources&&(e=e.source),typeof e=="string"){let f=w0(t||a.iiif.mapping[e]);if(!f)return n?null:{id:e,type:"unknown"};e={id:e,type:f}}if(e&&e.partOf&&!o&&!i.skipPartOfCheck){let f=Array.isArray(e.partOf)?e.partOf[0]:e.partOf;f&&(typeof f=="string"&&(o=f),typeof f.id=="string"&&(o=f.id))}let l=w0(t||e?.type),c=e?.id,p=a.iiif.entities[l];if(!p){let f=a.iiif.requests[c];return f&&f.resourceUri!==c?this.get(f.resourceUri,i):n?null:e}let m=p[e.id];if(m&&m[pt]){let f=m[pt].find(y=>o?y[wi]===o:y[wi]===m.id);return Oo(m,f)}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})),o=a=>this.deep(a,n);return o.size=Array.isArray(n)?n.length:1,o}catch{let o=a=>this.deep(a,void 0);return o.size=0,o}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 kd(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:kd,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,...o}=i;return Nr(this.get(e,t,o),this,n)}async loadObject(e,t){return Nr(await this.load(e,t),this)}async loadManifestObject(e,t){return Nr(await this.loadManifest(e,t),this)}async loadCollectionObject(e,t){return Nr(await this.loadCollection(e,t),this)}wrapObject(e){return Nr(this.get(e,{skipSelfReturn:!1}),this)}isWrapped(e){return zC(e)}setMetaValue([e,t,i],n){this.dispatch(typeof n=="function"?Dd.setMetaValueDynamic({id:e,meta:t,key:i,updateValue:n}):Dd.setMetaValue({id:e,meta:t,key:i,value:n}))}};function P0(){return typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}function Ds(e){let t=P0();try{let n=t.IIIF_VAULT;if(n)return n}catch{}let i=new zo(e);try{t.IIIF_VAULT=i}catch{}return i}var Wd=A(Y(),1),ir=Au.default.createContext({vault:null,setVaultInstance:e=>{}});function Fr({vault:e,vaultOptions:t,useGlobal:i,resources:n,children:o}){let[a,l]=(0,Au.useState)(()=>e||(i?Ds(t):t?new zo(t):new zo));return(0,Wd.jsx)(ir.Provider,{value:{vault:a,setVaultInstance:l},children:(0,Wd.jsx)($t,{value:n||{},children:o})})}var ix=A(q(),1),ku=A(q(),1);var C0=A(q(),1);function Br(e){let t=(0,C0.useContext)(ir);return e||(t&&t.vault?t.vault:Ds())}var nr=A(q(),1);function js(e,{noCache:t=!1}={}){let i=typeof e=="string"?e:e.id,n=Br(),[o,a]=(0,nr.useState)(i),[l,c]=(0,nr.useState)(void 0),p=(0,nr.useMemo)(()=>n.get(i,{skipSelfReturn:!0})||void 0,[i,n]),[m,f]=(0,nr.useState)(p);return(0,nr.useEffect)(()=>{(async()=>{try{let y=p&&!t?p:await n.load(i),w=y?y.id||y["@id"]:null;y&&o!==w&&a(w),f(y)}catch(y){c(y)}})()},[i,t]),{isLoaded:!!m,id:o,requestId:i,error:l,resource:m,cached:!!(m&&m===p)}}function qd(e,t){let{id:i,isLoaded:n,error:o,resource:a,requestId:l,cached:c}=js(e,t);return{id:i,isLoaded:n,error:o,manifest:a,requestId:l,cached:c}}var E0=A(Y(),1);function Qd({manifest:e,children:t}){return(0,E0.jsx)($t,{value:{manifest:e},children:t})}var A0=A(Y(),1);function Ni({canvas:e,children:t}){return(0,A0.jsx)($t,{value:{canvas:e},children:t})}var T0=A(q(),1),I0=A(q(),1);var R0=A(q(),1),Oe=()=>{let{vault:e}=(0,R0.useContext)(ir);if(e===null)throw new Error("Vault not found. Ensure you have your provider set up correctly.");return e};var Ru=A(q(),1);function Fe(e,t=[]){let i=Oe(),[n,o]=(0,Ru.useState)(()=>e(i.getState(),i));return(0,Ru.useEffect)(()=>i.subscribe(a=>e(a,i),a=>{o(a)},!1),t),n}var Dr=I0.default.createContext([]);function jr(){let e=(0,T0.useContext)(Dr);return Fe(t=>e.map(i=>t.iiif.entities.Canvas[i]).filter(Boolean),[e])}var _0=A(q(),1);function mt(e={},t=[]){let{id:i,selector:n}=e,o=Wt(),a=Oe(),l=i||o.manifest,c=Fe(p=>l?p.iiif.entities.Manifest[l]:void 0,[l]);return(0,_0.useMemo)(()=>{if(c)return n?n(c):c},[c,n,...t])}var M0=A(Y(),1);function Yd({range:e,children:t}){return(0,M0.jsx)($t,{value:{range:e},children:t})}function O0(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=O0(e,e.get(i));if(n)return n}}return null}function Tu(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(...Tu(e,e.get(n))),n.type==="SpecificResource"){let o=typeof n.source=="string"?n.source:n.source.id;i.push({id:o,type:"Canvas"})}return i}function NC(e,t,i){for(let n of t.structures){let o=Gd(e,e.get(n),i);if(o)return o}return null}function Gd(e,t,i){for(let n of t.items){let o=n?.source?.id?.split("#")[0];if(n.type==="SpecificResource"&&n.source===i||n.type==="SpecificResource"&&n.source?.type==="Canvas"&&i===o)return t;if(n.type==="Range"){let a=Gd(e,e.get(n),i);if(a)return a}}return null}function FC(e,t,i,n=!1){let o=t.behavior,a=i?e.get(i):null;if(!a)return[];let l=a.behavior,c=n?!1:o.includes("paged"),p=c?!1:o.includes("continuous"),m=c||p?!1:o.includes("individuals"),f=l.includes("facing-pages"),y=l.includes("non-paged");if(f||y||m||n)return[{id:a.id,type:"Canvas"}];let[w,P]=Iu(e,t);if(p)return w;let v=w.findIndex(x=>x.id===i);if(v===-1)return[];for(let x of P)if(x.includes(v))return x.map(C=>w[C]);return[{id:a.id,type:"Canvas"}]}function Iu(e,t,{disablePaging:i,skipNonPaged:n}={}){let o=t.behavior,a=o.includes("paged"),l=a?!1:o.includes("continuous"),c=a||l?!1:o.includes("individuals"),p=t.type==="Manifest"?t.items:Tu(e,t);if(l)return[p,[p.map((v,x)=>x)]];if(c||!a||i)return[p,p.map((v,x)=>[x])];let m=[],f=[],y=()=>{f.length&&(m.push([...f]),f=[])},w=0,P=!1;for(let v=0;v<p.length;v++){let x=e.get(p[v]);if(x.behavior.includes("non-paged")){v===w&&w++,n||(y(),m.push([v]),y());continue}if(v===w||x.behavior.includes("facing-pages")){f.length&&(P=!0),y(),m.push([v]),y();continue}if(f.push(v),P){y(),P=!1;continue}f.length>1&&y()}return f.length&&y(),[p,m]}var Xi=A(q(),1);var k0=A(q(),1);function Vs(e={},t=[]){let{id:i,selector:n}=e,o=Wt(),a=i||o.range,l=Fe(c=>a?c.iiif.entities.Range[a]:void 0,[a]);return(0,k0.useMemo)(()=>{if(l)return n?n(l):l},[l,n,...t])}function $d({startCanvas:e,disablePaging:t}){let i=Oe(),n=mt(),o=Vs(),[a,l]=(0,Xi.useState)(void 0),c=o||n;if(!c)throw new Error("Nothing selected");let[p,m]=(0,Xi.useMemo)(()=>Iu(i,c,{disablePaging:t}),[i,c,t]),f=(0,Xi.useRef)(m);if(f.current!==m){let C=f.current[a][0],E=m.findIndex(T=>T.includes(C));f.current=m,l(E)}let y=(0,Xi.useCallback)(x=>{let C=m.findIndex(E=>E.includes(x));l(C===-1?0:C)},[p,m]),w=(0,Xi.useCallback)(x=>{let C=p.findIndex(E=>E.id===x);C!==-1?y(C):l(0)},[p,m]),P=(0,Xi.useCallback)(()=>{l(x=>x>=m.length-1?x:x+1)},[m]),v=(0,Xi.useCallback)(()=>{l(x=>x<=0?0:x-1)},[m]);return typeof a>"u"&&(e?w(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:w,next:P,previous:v}}var Zi=A(q(),1);var z0={},L0=e=>{let t,i=new Set,n=(f,y)=>{let w=typeof f=="function"?f(t):f;if(!Object.is(w,t)){let P=t;t=y??(typeof w!="object"||w===null)?w:Object.assign({},t,w),i.forEach(v=>v(t,P))}},o=()=>t,p={setState:n,getState:o,getInitialState:()=>m,subscribe:f=>(i.add(f),()=>i.delete(f)),destroy:()=>{(z0.env?z0.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,o,p);return p},Us=e=>e?L0(e):L0;var Q0=A(q(),1),Y0=A(H0(),1),q0={},{useDebugValue:tE}=Q0.default,{useSyncExternalStoreWithSelector:iE}=Y0.default,W0=!1,nE=e=>e;function rr(e,t=nE,i){(q0.env?q0.env.MODE:void 0)!=="production"&&i&&!W0&&(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"),W0=!0);let n=iE(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,i);return tE(n),n}function rE(e){let t=e.service||e.services||[];for(let i of t)if(i.type==="AuthProbeService2")return!0;return!1}function Ki(e,t,i){let n=t.findIndex(l=>l.service.id===e);if(n===-1)return t;let o=[...t],a=i(o[n]);return a===o[n]?t:(o[n]=a,o)}var Zd=()=>Us((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(o=>o.type==="AuthAccessTokenService2");if(!n)throw new Error("Token service not found");e(()=>({authItems:Ki(i.id,t().authItems,o=>({...o,isPending:!0}))})),Kd(i.service).then(()=>{Mu(n).then(o=>{let a=o.expiresIn,l=Date.now()+a*1e3;e(()=>({authItems:Ki(i.id,t().authItems,c=>({...c,isLoggedIn:!0,isPending:!1,session:{token:o.accessToken,expires:l}}))}))}).catch(o=>{e(()=>({authItems:Ki(i.id,t().authItems,a=>({...a,isLoggedIn:!1,isPending:!1,error:o.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 o=`${n.id}?origin=${G0()}`,a=window.open(o);e(()=>({authItems:Ki(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 o=i.service.find(c=>c.type==="AuthAccessTokenService2"),a=i;if(t().authItems.find(c=>c.service.id===i.id)){e(()=>({authItems:Ki(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(!o)throw new Error("Token service not found");Mu(o).then(c=>{e(()=>({authItems:Ki(i.id,t().authItems,p=>({...p,isLoggedIn:!0,isPending:!1,session:{token:c.accessToken,expires:c.expiresIn}}))}))}).catch(c=>{e(()=>({authItems:Ki(i.id,t().authItems,p=>({...p,isLoggedIn:!1,isPending:!1,canAuthenticate:!1,error:c.message}))}))})}if(i.profile==="kiosk"){if(!o)throw new Error("Token service not found");e(()=>({authItems:Ki(i.id,t().authItems,c=>({...c,isPending:!0}))})),Kd(a).then(()=>{Mu(o).then(c=>{e(()=>({authItems:Ki(i.id,t().authItems,p=>({...p,isLoggedIn:!0,isPending:!1,session:{token:c.accessToken,expires:c.expiresIn}}))}))}).catch(c=>{e(()=>({authItems:Ki(i.id,t().authItems,p=>({...p,isLoggedIn:!1,isPending:!1,error:c.message}))}))})})}i.profile},removeService:(i,n)=>{let o=t().currentAuth===t().authItems.findIndex(l=>l.service.id===i.id),a=t().currentAuth;if(o){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:Ki(i.id,t().authItems,l=>({...l,instances:l.instances-1})),currentAuth:a}))}})),Jd=(e,t)=>Us((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 o=n().service?.id;if(!o){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(o,{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(o){i({token:o})}}));function ep(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 o=n.service.filter(a=>a.type==="AuthAccessService2");o[0]&&(i.services.access=o[0])}return i}async function Mu(e,{strict:t=!0}={}){return new Promise((i,n)=>{let o=Math.random().toString(36).substring(7),a=`${e.id}?messageId=${o}&origin=${window.location.origin}`,l=m=>{let f=m.data;if(f.messageId===o){if(t&&f.type!=="AuthAccessToken2"){c(),n("Invalid response, expected type=AuthAccessToken2");return}if(!f.accessToken){c(),n("Invalid response, expected accessToken");return}c(),i(f)}},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 G0(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 Kd(e){let t=`${e.id}?origin=${G0()}`,i=window.open(t);if(!i)throw new Error("Failed to open window");return new Promise((n,o)=>{let a=setInterval(()=>{i.closed&&(clearInterval(a),n())},500)})}var Fo=A(q(),1);function $0(e){let t=(0,Fo.useMemo)(()=>ep(e),[e]),i=tp(t.services.access?.id),n=(0,Fo.useMemo)(()=>Jd(t.services.probe,i),[t.services.probe]),o=rr(n);return(0,Fo.useEffect)(()=>{o.status==="unknown"&&!i&&o.probe()},[t.services.probe,o.status]),(0,Fo.useEffect)(()=>{i&&(o.setToken(i),o.probe())},[i]),[e,o,t.hasAuth]}var Hs=A(Y(),1),Vr=(0,Zi.createContext)(null),X0=(0,Zi.createContext)(null);X0.displayName="CurrentAuth";var K0=(0,Zi.createContext)(null);K0.displayName="AuthActions";function np({children:e}){let t=(0,Zi.useMemo)(()=>Zd(),[]);return(0,Hs.jsx)(Vr.Provider,{value:t,children:e})}function rp(){return!!(0,Zi.useContext)(Vr)}function Bo(){let e=(0,Zi.useContext)(Vr);if(!e)throw new Error("useAuthActions must be used within a AuthProvider");return e}function Z0(){let e=Bo();return rr(e,i=>({login:i.login,logout:i.logout,nextAuth:i.nextAuth,previousAuth:i.previousAuth,setAuth:i.setAuth,addService:i.addService,removeService:i.removeService}))}function oE(){let e=Bo();return rr(e,t=>t)}function J0(e){let t=Bo();return rr(t,n=>n.authItems.find(o=>o.service.id===e))}function tp(e){let t=Bo();return rr(t,n=>n.authItems.find(o=>o.id===e)?.session?.token)}function sE(e){let t=Bo();return rr(t,n=>{let o=n.authItems.find(a=>a.service.id===e);return!o||!o.isLoggedIn||!o.session?null:o.session?.token||null})}function aE(e){let t=Z0(),i=J0(e.service.id);return(0,Zi.useEffect)(()=>(t?.addService(e.service,e.probeId),()=>{t?.removeService(e.service,e.probeId)}),[e.service]),i?(i.error||!i.isLoggedIn,e.children):null}function ip(){return null}function op(e){let[t,i,n]=$0(e.resource),o=e.fallbackComponent||ip,a=e.loadingComponent||ip,l=e.errorComponent||ip,c=i.service,p=null;if(!n||!c)return e.children(t);let m=c.service.filter(f=>f.type==="AuthAccessService2");i.status==="error"&&(p=(0,Hs.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,Hs.jsx)(a,{})),i.status==="success"&&(p=e.children(t));for(let f of m)p=(0,Hs.jsx)(aE,{service:f,probeId:c.id,children:p},f.id);return p}var Ws=A(q(),1);var lE=e=>e.id||e["@id"];function uE(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 ex=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?lE(t):void 0,n=null;return Us((o,a)=>({service:t,resources:[],lastQuery:{},loading:!1,error:!1,highlight:null,hasSearch:!!t,hasAutocomplete:t?!!uE(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),o({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 f=await m.json();o({resources:f.resources,error:!1,errorMessage:""})}else o({resources:[],error:!0,errorMessage:m.statusText})})},clearSearch(){o({resources:[],error:!1,errorMessage:""})},highlightResult(l){let c=a().resources.find(p=>p["@id"]===l);o({highlight:c})},nextResult(){let l=a().resources,c=a().highlight;if(!c){o({highlight:l[0]||null});return}let p=l.findIndex(m=>m["@id"]===c["@id"]);if(p===-1){o({highlight:l[0]||null});return}o({highlight:l[p+1]||l[0]||null})},previousResult(){let l=a().resources,c=a().highlight;if(!c){o({highlight:l[l.length-1]||null});return}let p=l.findIndex(m=>m["@id"]===c["@id"]);if(p===-1){o({highlight:l[l.length-1]||null});return}if(p===0){o({highlight:l[l.length-1]||null});return}o({highlight:l[p-1]||l[l.length-1]||null})}}))};function sp(){let e=mt();return e?e.service.find(t=>t.profile==="SearchService1"||t.profile==="http://iiif.io/api/search/1/search"):void 0}var Ou=A(Y(),1),Do=(0,Ws.createContext)(null);Do.displayName="Search";function tx(e){let t=sp();return e.store?(0,Ou.jsx)(Do.Provider,{value:e.store,children:e.children}):(0,Ou.jsx)(cE,{service:t,children:e.children})}function cE({service:e,children:t}){let i=(0,Ws.useMemo)(()=>ex(e),[e]);return(0,Ou.jsx)(Do.Provider,{value:i,children:t})}var ci=A(Y(),1),qs=()=>{},jo=(0,ku.createContext)({setCurrentCanvasId:qs,setCurrentCanvasIndex:qs,nextCanvas:qs,previousCanvas:qs,items:[],sequence:[],setSequenceIndex:qs,currentSequenceIndex:0,hasNext:!1,hasPrevious:!1});function nx(e){let t=mt(),{cursor:i,visibleItems:n,next:o,sequence:a,items:l,setCanvasIndex:c,setCanvasId:p,previous:m,setSequenceIndex:f,hasNext:y,hasPrevious:w}=$d({startCanvas:e.startCanvas,disablePaging:e.pagingEnabled===!1}),P=(0,ku.useMemo)(()=>({sequence:a,items:l,setCurrentCanvasId:p,nextCanvas:o,previousCanvas:m,totalCanvases:l.length,setCurrentCanvasIndex:c,setSequenceIndex:f,currentSequenceIndex:i,hasNext:y,hasPrevious:w}),[a,l,p,o,m,l,c,f,i]);return t?n.length===0?null:(0,ci.jsx)(jo.Provider,{value:P,children:(0,ci.jsx)(Dr.Provider,{value:n,children:(0,ci.jsx)(Ni,{canvas:n[0],children:e.children})})}):(console.warn("The manifest passed to the provider is not a valid IIIF manifest."),(0,ci.jsx)("div",{children:"Sorry, something went wrong."}))}function ap(e){let t=Br(e.vault),i=qd(e.manifest);if(!i)return console.warn("The manifest passed to the provider is not a valid IIIF manifest."),(0,ci.jsx)("div",{children:"Sorry, something went wrong."});if(i.error)return(0,ci.jsx)("div",{children:i.error.toString()});if(!i.isLoaded)return(0,ci.jsx)("div",{children:"Loading..."});let n=(0,ci.jsx)(nx,{...e,children:e.children});return(0,ci.jsx)(Fr,{vault:t,children:(0,ci.jsx)(Qd,{manifest:i.id,children:(0,ci.jsx)(np,{children:(0,ci.jsx)(tx,{children:e.rangeId?(0,ci.jsx)(Yd,{range:e.rangeId,children:n}):n})})})})}function Qs(){return(0,ix.useContext)(jo)}var rx=A(q(),1),Lu=A(q(),1);function Ys(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(o){o(i)}),(n=e.get("*"))&&n.slice().map(function(o){o(t,i)})}}}var sx=A(Y(),1),ox=Ys(),Ur=(0,Lu.createContext)({emitter:ox});Ur.displayName="Events";function Gs(){return rx.default.useContext(Ur).emitter}function hE({emitter:e,children:t}){return(0,sx.jsx)(Ur.Provider,{value:(0,Lu.useMemo)(()=>({emitter:e}),[e]),children:t})}var Hr=A(Y(),1);function lp(){return{VaultContext:(0,or.useContext)(ir),ResourceContext:(0,or.useContext)(Os),SimpleViewerReactContext:(0,or.useContext)(jo),VisibleCanvasReactContext:(0,or.useContext)(Dr),AuthRContext:(0,or.useContext)(Vr),SearchReactContext:(0,or.useContext)(Do),ReactEventContext:(0,or.useContext)(Ur)}}function up(e){return(0,Hr.jsx)(Fr,{vault:e.bridge.VaultContext.vault||void 0,resources:e.bridge.ResourceContext,children:(0,Hr.jsx)(Dr.Provider,{value:e.bridge.VisibleCanvasReactContext,children:(0,Hr.jsx)(jo.Provider,{value:e.bridge.SimpleViewerReactContext,children:(0,Hr.jsx)(Ur.Provider,{value:e.bridge.ReactEventContext,children:(0,Hr.jsx)(Vr.Provider,{value:e.bridge.AuthRContext,children:(0,Hr.jsx)(Do.Provider,{value:e.bridge.SearchReactContext,children:e.children})})})})})})}var Vo=A(q(),1);var Mn=A(q(),1);var ax=A(q(),1);function cp(){let t=Oe().getStore();return(0,ax.useMemo)(()=>i=>t.dispatch(i),[t])}function lx(e){return typeof e!="string"&&e&&e.bindToVault}function hp(){let e=Oe(),t=(0,Mn.useRef)([]),i=cp(),n=(0,Mn.useMemo)(()=>`vault://annotation-page/${new Date().getTime()}/${Math.round(Math.random()*1e9).toString(16)}`,[]);(0,Mn.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(Tr.importEntities({entities:{AnnotationPage:{[c.id]:c}}}))},[n]);let o=Fe(c=>n&&c.iiif.entities.AnnotationPage[n]||null,[n]),a=(0,Mn.useCallback)((c,p)=>{if(n){if(lx(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"}),f=e.get({id:c,type:"Annotation"});m&&f&&(m.items.find(y=>y.id===f.id)||i(Tr.addReference({id:n,type:"AnnotationPage",key:"items",reference:{id:c,type:"Annotation"},index:p})))}},[n]),l=(0,Mn.useCallback)(c=>{n&&(lx(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(Tr.removeReference({id:n,type:"AnnotationPage",key:"items",reference:{id:c,type:"Annotation"}})))},[n]);return[o,{addAnnotation:a,removeAnnotation:l}]}var cx=A(Y(),1),ux=(0,Vo.createContext)(null);function dp(){let e=(0,Vo.useContext)(ux);return[e.fullPage,{addAnnotation:e.addAnnotation,removeAnnotation:e.removeAnnotation}]}function pp({children:e}){let[t,{addAnnotation:i,removeAnnotation:n}]=hp();return(0,cx.jsx)(ux.Provider,{value:(0,Vo.useMemo)(()=>({fullPage:t,addAnnotation:i,removeAnnotation:n}),[t]),children:e})}var Uo=A(Y(),1);function hx({width:e,style:t,height:i,error:n,resetErrorBoundary:o}){return(0,Uo.jsxs)("div",{style:{width:e,height:i,minHeight:500,...t||{},background:"#f9f9f9"},children:[(0,Uo.jsx)("h3",{children:"Error occurred"}),(0,Uo.jsx)("p",{children:n.message}),(0,Uo.jsx)("button",{onClick:o,children:"Reset"})]})}var zu=A(q(),1),Ho=(0,zu.createContext)(null);function fp(){return(0,zu.useContext)(Ho)}var Wr=A(q(),1),mp=(0,Wr.createContext)(()=>{}),gp=(0,Wr.createContext)(()=>{});function Ji(e,t,i,n,o=[]){let a=(0,Wr.useContext)(e==="portal"?gp:mp);(0,Wr.useEffect)(()=>(e!=="none"&&a(t,i,n),()=>{a(t,null)}),[t,e,a,...o])}var Wo=A(q(),1);var dx=A(q(),1);function De(e={},t=[]){let{id:i,selector:n}=e,o=Wt(),a=i||o.canvas,l=Fe(c=>a?c.iiif.entities.Canvas[a]:void 0,[a]);return(0,dx.useMemo)(()=>{if(l)return n?n(l):l},[l,n,...t])}var yp=(0,Wo.createContext)(()=>{});function px(e){let t=De(),i=(0,Wo.useContext)(yp);(0,Wo.useEffect)(()=>t&&t.id?(i(t.id,e),()=>i(t.id,-1)):()=>{},[t,e])}var bt=A(Y(),1);function fx({children:e,errorFallback:t,outerContainerProps:i={},worldScale:n,...o}){let[a,l]=(0,Kt.useState)(),c=lp(),p=t||hx,[m,f]=(0,Kt.useState)({}),y=Object.entries(m),[w,P]=(0,Kt.useState)({}),v=Object.entries(w),[x,C]=(0,Kt.useState)({}),E=(0,Kt.useMemo)(()=>n||Math.max(...Object.values(x)),[x]),T=(0,Kt.useMemo)(()=>({maxOverZoom:E||1,...o.runtimeOptions||{}}),[E,o.runtimeOptions]),R=(0,Kt.useCallback)((O,L)=>{C(F=>{if(L===-1){let{[O]:j,...J}=F;return J}return{...F,[O]:L}})},[]),G=(0,Kt.useCallback)((O,L,F)=>{f(({[O]:j,...J})=>L?{...J,[O]:{element:L,props:F}}:J)},[]),V=(0,Kt.useCallback)((O,L,F)=>{P(({[O]:j,...J})=>L?{...J,[O]:{element:L,props:F}}:J)},[]);return(0,bt.jsxs)(nu,{resetKeys:[],fallbackRender:O=>(0,bt.jsx)(p,{...o,...O}),children:[(0,bt.jsx)(Ky,{...o,containerProps:{style:{position:"relative"},...o.containerProps||{}},htmlChildren:(0,bt.jsx)(bt.Fragment,{children:y.map(([O,{element:L,props:F}])=>(0,bt.jsx)(Kt.default.Fragment,{children:(0,bt.jsx)(L,{...F||{}})},O))}),onCreated:O=>{l(O),o.onCreated&&o.onCreated(O)},runtimeOptions:T,children:(0,bt.jsx)(Ho.Provider,{value:a,children:(0,bt.jsx)(yp.Provider,{value:R,children:(0,bt.jsx)(mp.Provider,{value:G,children:(0,bt.jsx)(gp.Provider,{value:V,children:(0,bt.jsx)(up,{bridge:c,children:(0,bt.jsx)(bo.Provider,{value:o.mode||"explore",children:(0,bt.jsx)(pp,{children:e})})})})})})})}),(0,bt.jsx)("div",{children:v.map(([O,{element:L,props:F}])=>(0,bt.jsx)(Kt.default.Fragment,{children:(0,bt.jsx)(L,{...F||{}})},O))})]})}var vp=A(q(),1);function $s(e=Tn){return{addEventListener(t,i,n,o){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:o}]}),n},removeEventListener(t,i,n){t&&e.setMetaValue([t.id,"eventManager",i],o=>(o||[]).filter(a=>a.callback!==n))},getListenersAsProps(t,i){let n=typeof t=="string"?{id:t}:t;if(!n||!n.id)return{};let o=e.getResourceMeta(n.id,"eventManager"),a={};if(o&&n)for(let l of Object.keys(o))a[l]=c=>{let p=e.get(n);for(let{callback:m,scope:f}of o[l]||[])(!f||i&&f.indexOf(i)!==-1)&&m(c,p)};return a}}}function Xs(e,t){let i=Oe(),n=(0,vp.useMemo)(()=>$s(i),[i]),o=Fe(()=>e&&e.id?i.getResourceMeta(e.id,"eventManager"):null,[e]);return(0,vp.useMemo)(()=>e?n.getListenersAsProps(e,t):{},[o,e,i,t])}var mx=A(q(),1);function qr(e=Tn){return{applyStyles(t,i,n){let o=typeof t=="string"?t:t.id;return e.setMetaValue([o,"styles",i],n)},getAppliedStyles(t){let i=typeof t=="string"?t:t.id;return e.getResourceMeta(i,"styles")}}}function Qr(e,t){let i=Oe(),n=(0,mx.useMemo)(()=>qr(i),[i]);return Fe(()=>{if(!e)return null;let o=n.getAppliedStyles(e.id);return o?t?o[t]:o:void 0},[e,t])}var bx=A(q(),1);var wx=A(q(),1);var dE=Zh({"node_modules/.pnpm/parse-svg-path@0.1.2/node_modules/parse-svg-path/index.js"(e,t){"use strict";t.exports=o;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 o(c){var p=[];return c.replace(n,function(m,f,y){var w=f.toLowerCase();for(y=l(y),w=="m"&&y.length>2&&(p.push([f].concat(y.splice(0,2))),w="l",f=f=="m"?"l":"L");;){if(y.length==i[w])return y.unshift(f),p.push(y);if(y.length<i[w])throw new Error("malformed path data");p.push([f].concat(y.splice(0,i[w])))}}),p}var a=/-?[0-9]*\.?[0-9]+(?:e[-+]?\d+)?/ig;function l(c){var p=c.match(a);return p?p.map(Number):[]}}}),pE=Zh({"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 o=0,a=0,l=0,c=0;return n.map(function(p){p=p.slice();var m=p[0],f=m.toUpperCase();if(m!=f)switch(p[0]=f,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(f){case"Z":l=o,c=a;break;case"H":l=p[1];break;case"V":c=p[1];break;case"M":l=o=p[1],c=a=p[2];break;default:l=p[p.length-2],c=p[p.length-1]}return p})}}}),fE=function(){function e(t,i){var n=[],o=!0,a=!1,l=void 0;try{for(var c=t[Symbol.iterator](),p;!(o=(p=c.next()).done)&&(n.push(p.value),!(i&&n.length===i));o=!0);}catch(m){a=!0,l=m}finally{try{!o&&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")}}(),Ks=Math.PI*2,xp=function(t,i,n,o,a,l,c){var p=t.x,m=t.y;p*=i,m*=n;var f=o*p-a*m,y=a*p+o*m;return{x:f+l,y:y+c}},mE=function(t,i){var n=i===1.5707963267948966?.551915024494:i===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(i/4),o=Math.cos(t),a=Math.sin(t),l=Math.cos(t+i),c=Math.sin(t+i);return[{x:o-a*n,y:a+o*n},{x:l+c*n,y:c-l*n},{x:l,y:c}]},gx=function(t,i,n,o){var a=t*o-i*n<0?-1:1,l=t*n+i*o;return l>1&&(l=1),l<-1&&(l=-1),a*Math.acos(l)},gE=function(t,i,n,o,a,l,c,p,m,f,y,w){var P=Math.pow(a,2),v=Math.pow(l,2),x=Math.pow(y,2),C=Math.pow(w,2),E=P*v-P*C-v*x;E<0&&(E=0),E/=P*C+v*x,E=Math.sqrt(E)*(c===p?-1:1);var T=E*a/l*w,R=E*-l/a*y,G=f*T-m*R+(t+n)/2,V=m*T+f*R+(i+o)/2,O=(y-T)/a,L=(w-R)/l,F=(-y-T)/a,j=(-w-R)/l,J=gx(1,0,O,L),$=gx(O,L,F,j);return p===0&&$>0&&($-=Ks),p===1&&$<0&&($+=Ks),[G,V,J,$]},yE=function(t){var i=t.px,n=t.py,o=t.cx,a=t.cy,l=t.rx,c=t.ry,p=t.xAxisRotation,m=p===void 0?0:p,f=t.largeArcFlag,y=f===void 0?0:f,w=t.sweepFlag,P=w===void 0?0:w,v=[];if(l===0||c===0)return[];var x=Math.sin(m*Ks/360),C=Math.cos(m*Ks/360),E=C*(i-o)/2+x*(n-a)/2,T=-x*(i-o)/2+C*(n-a)/2;if(E===0&&T===0)return[];l=Math.abs(l),c=Math.abs(c);var R=Math.pow(E,2)/Math.pow(l,2)+Math.pow(T,2)/Math.pow(c,2);R>1&&(l*=Math.sqrt(R),c*=Math.sqrt(R));var G=gE(i,n,o,a,l,c,y,P,x,C,E,T),V=fE(G,4),O=V[0],L=V[1],F=V[2],j=V[3],J=Math.abs(j)/(Ks/4);Math.abs(1-J)<1e-7&&(J=1);var $=Math.max(Math.ceil(J),1);j/=$;for(var ne=0;ne<$;ne++)v.push(mE(F,j)),F+=j;return v.map(function(Ce){var Me=xp(Ce[0],l,c,C,x,O,L),ke=Me.x,ve=Me.y,it=xp(Ce[1],l,c,C,x,O,L),$e=it.x,yt=it.y,de=xp(Ce[2],l,c,C,x,O,L),H=de.x,ye=de.y;return{x1:ke,y1:ve,x2:$e,y2:yt,x:H,y:ye}})},vE=yE,xE=Jh(dE(),1),SE=Jh(pE(),1);function wE(e){let t=(0,xE.default)(e),i=(0,SE.default)(t),n,o=0,a=0,l=0,c=0,p,m,f=0,y=0,w=[];for(let P=0;P<i.length;P++){let v=i[P],x=v[0];switch(x){case"M":o=v[1],a=v[2];break;case"H":v=["L",v[1],a];break;case"V":v=["L",o,v[1]];break;case"S":{let C=f,E=y;(n==="C"||n=="S")&&(C+=C-l,E+=E-c),v=["C",C,E,v[1],v[2],v[3],v[4]]}break;case"T":n==="Q"||n=="T"?(p=f*2-p,m=y*2-m):(p=f,m=y),v=["Q",p,m,v[1],v[2]];break;case"Q":p=v[1],m=v[2];break;case"A":{let C=vE({px:f,py:y,cx:v[6],cy:v[7],rx:v[1],ry:v[2],xAxisRotation:v[3],largeArcFlag:v[4],sweepFlag:v[5]});if(!C.length)continue;for(let[E,T]of C.entries())v=["C",T.x1,T.y1,T.x2,T.y2,T.x,T.y],E<C.length-1&&w.push(v);v=v}break;case"Z":v=["L",o,a];break}n=x,f=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=f,c=y),w.push(v)}return w}function bE(e,t,i,n=1){return new vx(e,t,i).subdivide(n)}function PE(e,t,i,n,o=1){return new EE(new Float64Array([e.x,e.y,t.x,t.y,i.x,i.y,n.x,n.y])).subdivide(o)}function CE(e){return e.x*e.x+e.y*e.y}function Zs(e){return e/(1-.67+Math.pow(Math.pow(.67,4)+.25*e*e,.25))}function qo(e){return e*(1-.39+Math.sqrt(.39*.39+.25*e*e))}var vx=class{constructor(e,t,i){ui(this,"start"),ui(this,"control"),ui(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:o,y:a}=this.end,l=2*i-e-o,c=2*n-t-a,p=(i-e)*l+(n-t)*c,m=(o-i)*l+(a-n)*c,f=(o-e)*c-(a-t)*l,y=p/f,w=m/f,P=Math.abs(f)/(Math.hypot(l,c)*Math.abs(w-y));return{x0:e,x2:o,scale:P,cross:f}}subdivide(e){let t=this.mapToBasic(),i=Zs(t.x0),n=Zs(t.x2),o=.5*Math.abs(n-i)*Math.sqrt(t.scale/e),a=Math.ceil(o),l=qo(i),c=qo(n),p=[0];for(let m=1;m<a;m++){let y=(qo(i+(n-i)*m/a)-l)/(c-l);p.push(y)}return p.push(1),p.map(m=>this.eval(m))}},EE=class xx{constructor(t){ui(this,"c"),this.c=t}weightsum(t,i,n,o){let a=t*this.c[0]+i*this.c[2]+n*this.c[4]+o*this.c[6],l=t*this.c[1]+i*this.c[3]+n*this.c[5]+o*this.c[7];return{x:a,y:l}}eval(t){let i=1-t,n=i*i*i,o=3*i*i*t,a=3*i*t*t,l=t*t*t;return this.weightsum(n,o,a,l)}deriv(t){let i=1-t,n=-3*i*i,o=3*t*t,a=-6*t*i-n,l=6*t*i-o;return this.weightsum(n,a,l,o)}midpoint_quadbez(){let t=this.weightsum(-.25,.75,.75,-.25);return new vx({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),o=this.eval(t),a=this.eval(i);n[0]=o.x,n[1]=o.y;let l=(i-t)/3,c=this.deriv(t);n[2]=o.x+l*c.x,n[3]=o.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 xx(n)}subdivide(t){let i=.1*t,n=t-i,o=Math.sqrt(n),a=CE(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,C=(v+1)/l,E=this.subsegment(x,C).midpoint_quadbez(),T=E.mapToBasic(),R=Zs(T.x0),G=Zs(T.x2),V=Math.sqrt(T.scale),O=Math.abs(G-R)*V;if(Math.sign(T.x0)!=Math.sign(T.x2)){let L=o/V,F=o*Math.abs(G-R)/Zs(L);O=Math.max(O,F)}c.push({quad:E,a0:R,a2:G,val:O}),p+=O}let m=.5*p/o,f=Math.ceil(m),y=[{x:this.c[0],y:this.c[1]}],w=0,P=0;for(let v=1;v<f;v++){let x=p*v/f;for(;w+c[P].val<x;)w+=c[P].val,P++;let C=c[P].a0,E=c[P].a2,T=qo(C),R=qo(E),G=C+(E-C)*(x-w)/c[P].val,O=(qo(G)-T)/(R-T);y.push(c[P].quad.eval(O))}return y.push({x:this.c[6],y:this.c[7]}),y}},AE=/&?(xywh=)?(pixel:|percent:|pct:)?([0-9]+(?:\.[0-9]+)?),([0-9]+(?:\.[0-9]+)?),([0-9]+(?:\.[0-9]+)?),([0-9]+(?:\.[0-9]+)?)/,RE=/&?(t=)(npt:)?([0-9]+(\.[0-9]+)?)?(,([0-9]+(\.[0-9]+)?))?/,yx=/^rgba\((\d+),(\d+),(\d+),([0-9.]+)\)$/;function Yr(e,{domParser:t,svgPreprocessor:i,iiifRenderingHints:n}={}){if(Array.isArray(e))return Fi(e.reduce((o,a)=>{let{selector:l,selectors:c,iiifRenderingHints:p}=Yr(a,{domParser:t,svgPreprocessor:i,iiifRenderingHints:n});return l&&(o.selector||(o.selector=l),o.selectors.push(...c)),p&&(o.iiifRenderingHints=o.iiifRenderingHints||{type:"ImageApiSelector"},Object.assign(o.iiifRenderingHints,p)),o},{selector:null,selectors:[],iiifRenderingHints:n}));if(!e)return Fi({selector:null,selectors:[],iiifRenderingHints:n});if(typeof e=="string"){let[o,a]=e.split("#");return a?Yr({type:"FragmentSelector",value:a},{svgPreprocessor:i,iiifRenderingHints:n,domParser:t}):Fi({selector:null,selectors:[],iiifRenderingHints:n})}if(e.type){if(e.type==="PointSelector"&&(e.t||e.t===0)){let o={type:"TemporalSelector",temporal:{startTime:e.t}};return Fi({selector:o,selectors:[o],iiifRenderingHints:n})}if(e.type==="PointSelector"&&e.x&&e.y){let o={type:"PointSelector",spatial:{x:e.x,y:e.y}};return Fi({selector:o,selectors:[o],iiifRenderingHints:n})}}if(Nu(e)){let o=[];if(e.region){let a=Yr({type:"FragmentSelector",value:"xywh="+e.region},{domParser:t,svgPreprocessor:i,iiifRenderingHints:n});o.push(...a.selectors)}return Fi({selector:o[0],selectors:o,iiifRenderingHints:n?{...n,...e}:e})}if(e.type==="FragmentSelector"){let o=AE.exec(e.value);if(o){let l={type:"BoxSelector",spatial:{unit:o[2]==="percent:"||o[2]==="pct:"?"percent":"pixel",x:parseFloat(o[3]),y:parseFloat(o[4]),width:parseFloat(o[5]),height:parseFloat(o[6])}};return Fi({selector:l,selectors:[l],iiifRenderingHints:n})}let a=e.value.match(RE);if(a){let l={type:"TemporalSelector",temporal:{startTime:a[3]?parseFloat(a[3]):0,endTime:a[6]?parseFloat(a[6]):void 0}};return Fi({selector:l,selectors:[l],iiifRenderingHints:n})}return Fi({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 o=[],a,l,c=i?.(e.value)??e.value,p;if(t){let f=t.parseFromString(e.value,"image/svg+xml").querySelector("svg");if(!f)return console.warn(`Illegal SVG selector: ${e.value}`),Fi({selector:null,selectors:[],iiifRenderingHints:n});let y=Sx(f);y&&(o=y.points,p=y.shapeType,a=[Math.min(...o.map(w=>w[0])),Math.min(...o.map(w=>w[1])),Math.max(...o.map(w=>w[0])),Math.max(...o.map(w=>w[1]))],{style:l,svg:c}=_E(y.element)??{svg:c})}let m={type:"SvgSelector",svg:c,svgShape:p,style:l,points:o.length?o: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 Fi({selector:m,selectors:[m],iiifRenderingHints:n})}return Fi({selector:null,selectors:[],iiifRenderingHints:n})}function TE(e){let t=e.map(n=>n[0]).reduce((n,o)=>(n[o]+=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 Sx(e){for(let t of Array.from(e.children))switch(t?.tagName.toLowerCase()){case"g":{let i=Sx(t);if(i)return i}continue;case"path":{let i=t.getAttribute("d");if(!i)continue;let n=wE(i);return{element:t,points:IE(n),shapeType:TE(n)}}case"circle":{let i=parseFloat(t.getAttribute("cx")??"0"),n=parseFloat(t.getAttribute("cy")??"0"),o=parseFloat(t.getAttribute("r")??"0");if(!o)continue;let a=[];for(let l=0;l<=360;l+=12){let c=l*Math.PI/180;a.push([i+o*Math.cos(c),n+o*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"),o=parseFloat(t.getAttribute("rx")??"0"),a=parseFloat(t.getAttribute("ry")??"0");if(!o&&!a)continue;let l=[];for(let c=0;c<=360;c+=12){let p=Math.tan(c/360*Math.PI),m=o*(1-p**2)/(1+p**2),f=a*2*p/(1+p**2);l.push([i+m,n+f])}return{element:t,points:l,shapeType:"ellipse"}}case"line":{let i=parseFloat(t.getAttribute("x0")??"0"),n=parseFloat(t.getAttribute("y0")??"0"),o=parseFloat(t.getAttribute("x1")??"0"),a=parseFloat(t.getAttribute("y1")??"0");if(i===o&&n===a)continue;return{element:t,points:[[i,n],[o,a]],shapeType:"polyline"}}case"polygon":case"polyline":{let i=t.getAttribute("points")?.split(" ").map(o=>o.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"),o=parseFloat(t.getAttribute("width")??"0"),a=parseFloat(t.getAttribute("height")??"0");if(!o||!a)continue;return{element:t,points:[[i,n],[i+o,n],[i+o,n+a],[i,n+a],[i,n]],shapeType:"rect"}}default:continue}return null}function IE(e){let t=[];for(let i=0;i<e.length;i++){let n=t[t.length-1]??[0,0],o=e[i];switch(o[0]){case"M":case"L":t.push([o[1],o[2]]);continue;case"C":t.push(...PE({x:n[0],y:n[1]},{x:o[1],y:o[2]},{x:o[3],y:o[4]},{x:o[5],y:o[6]}).map(a=>[a.x,a.y]).slice(1));continue;case"Q":t.push(...bE({x:n[0],y:n[1]},{x:o[1],y:o[2]},{x:o[3],y:o[4]}).map(a=>[a.x,a.y]).slice(1));continue}}return t}function _E(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=yx.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=yx.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 Nu(e){return!!e&&e.type==="iiif:ImageApiSelector"&&e.type==="iiif:ImageApiSelector"}function Fi(e){if(e.iiifRenderingHints){let t=e.iiifRenderingHints;if(t.rotation){let i=Fu(`${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 Fu(e){let t=parseFloat(e);return t&&e.startsWith("!")&&(t=360-t),t&&(t=t%360),t!==t?0:t||0}function qt(e,t={}){if(Array.isArray(e))return qt(e[0]);if(typeof e=="string"){let[i,n]=e.split("#");return n?qt({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 qt(e.items[0]);if(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?Yr(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?qt({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 Js(e={},t=[]){let{id:i,selector:n}=e,o=Wt(),a=Oe(),l=i||o.annotation,c=Fe(m=>l?m.iiif.entities.Annotation[l]:void 0,[l]),p=Fe(m=>c&&c.body?c.body.map(f=>f?f.type==="SpecificResource"?{...f,source:a.get(f)}:f?m.iiif.entities[f.type][f.id]:null:null).filter(Boolean):[],[c]);return(0,wx.useMemo)(()=>{if(!c)return;let m={...c,body:p,target:qt(c.target,{typeMap:a.getState().iiif.mapping})};return n?n(m):m},[c,n,p,...t])}var Px=A(Y(),1),Bu=({id:e,style:t,className:i,interactive:n})=>{let o=Js({id:e}),a=Qr(o,"atlas"),l=Qr(o,"html"),c=Xs(o,["atlas"]),p=De(),m=(0,bx.useMemo)(()=>uv(t,a),[t,a]);return p&&o&&o.target&&o.target.selector&&o.target.selector.type==="BoxSelector"&&o.target.source&&(o.target.source.id===p.id||o.target.source===p.id)?(0,Px.jsx)(ov,{id:o.id,isEditing:!0,region:o.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 Ex=A(q(),1);var Cx=A(q(),1);function Sp(e={},t=[]){let{id:i,selector:n}=e,o=Wt(),a=i||o.annotationPage,l=Fe(c=>a?c.iiif.entities.AnnotationPage[a]:void 0,[a]);return(0,Cx.useMemo)(()=>{if(l)return n?n(l):l},[l,...t])}var wp=A(Y(),1),ea=({className:e,page:t})=>{let i=Sp({id:t.id})||t,n=Qr(i,"atlas"),o=Qr(i,"html");return Fe(a=>i.id?a.iiif.entities.AnnotationPage[i.id]:null,[]),(0,wp.jsx)(Ex.Fragment,{children:i.items?.map(a=>(0,wp.jsx)(Bu,{id:a.id,style:n,className:o?.className||e},a.id))})};var ta=A(q(),1);var tn=A(q(),1),en=A(Y(),1),Rx=tn.default.createContext("en"),Tx=tn.default.createContext({}),Ix=tn.default.createContext(null);function ME(e){return(0,en.jsx)(Tx.Provider,{value:e.translations,children:e.children})}function OE(e){return(0,en.jsx)(Rx.Provider,{value:e.language,children:e.children})}function kE(e){return(0,en.jsx)(Ix.Provider,{value:e.convert,children:e.children})}function bp(){return tn.default.useContext(Ix)}function Du(){return tn.default.useContext(Rx)}function Pp(){return tn.default.useContext(Tx)}function Ax(e){return e.indexOf("-")!==-1?e.slice(0,e.indexOf("-")):e}function _x({as:e,language:t,children:i,viewingDirection:n,...o}){let a=Du();return(0,tn.useMemo)(()=>Ax(a)===Ax(t),[a,t])?e?(0,en.jsx)(e,{...o,children:i}):(0,en.jsx)("span",{...o,children:i}):e?(0,en.jsx)(e,{...o,lang:t,dir:n,children:i}):(0,en.jsx)("span",{...o,lang:t,dir:n,children:i})}function Mx(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 o of i)if(t.indexOf(o)!==-1)return o;return t.indexOf("none")!==-1?"none":t.indexOf("@none")!==-1?"@none":t[0]}var Ox=(e,t=[])=>{let i=Du();return(0,tn.useMemo)(()=>{let n=e();return Mx(i,n,[])},[i,...t])};function Gr(e,t,i,n){return t?i?i(e[t]||t,n||"none"):e[t]||t:""}function kx(e,t,i=`
75
- `,n={}){let o=bp(),a=Ox(()=>Object.keys(e||{}),[e]);return[(0,tn.useMemo)(()=>{if(!e)return Gr(n,t,o)||"";if(typeof e=="string")return Gr(n,e,o);let l=a?e[a]:void 0;return l?typeof l=="string"?l:l.map(c=>Gr(n,c,o,a)).join(i):""},[a,t,e]),a]}function LE(){let e=Du(),t=Pp(),i=bp();return function(o,a="",l=`
76
- `,c=t){let p=Object.keys(o||{}),m=Mx(e,p,[]);if(!o)return Gr(c,a,i)||"";if(typeof o=="string")return Gr(c,o,i);let f=m?o[m]:void 0;return f?typeof f=="string"?Gr(c,f,i,m):f.map(y=>Gr(c,y,i,m)).join(typeof l<"u"?l:`
77
- `):""}}function bi({as:e,defaultText:t,enableDangerouslySetInnerHTML:i,children:n,separator:o,...a}){let l=Pp(),[c,p]=kx(n,t,o,l);return p?(0,en.jsx)(_x,{...a,as:e,language:p,title:i?void 0:c,dangerouslySetInnerHTML:i?{__html:c}:void 0,children:i?void 0:c}):e?(0,en.jsx)(e,{...a,children:c}):(0,en.jsx)("span",{...a,title:i?void 0:c,dangerouslySetInnerHTML:i?{__html:c}:void 0,children:i?void 0:c})}var Bi=A(Y(),1);function zE({resource:e,heading:t,note:i,extra:n}){return n?(0,Bi.jsx)(Xn,{target:{x:0,y:0,width:n.target?.spatial.width,height:n.target?.spatial.height},backgroundColor:"#333",relative:!0,children:(0,Bi.jsx)("div",{style:{display:"flex",alignContent:"center",justifyContent:"center",alignItems:"center",height:"100%",width:"100%",background:"#444",color:"#BBB"},children:(0,Bi.jsxs)("div",{children:[(0,Bi.jsx)(bi,{children:t||"Not authorised"}),i&&(0,Bi.jsx)("p",{children:(0,Bi.jsx)(bi,{children:i})}),(0,Bi.jsx)("p",{children:e.id||e["@id"]||"unknown"})]})})}):null}function Lx({image:e,thumbnail:t,crop:i,enableSizes:n}){if(!rp()){let a=e.service,l=a.width||e.width||0,c=a.height||e.height||0;return(0,Bi.jsx)(cd,{tiles:{id:a.id||a["@id"]||"unknown",height:c,width:l,imageService:a},enableSizes:n,x:0,y:0,width:e.target?.spatial.width,height:e.target?.spatial.height,crop:i})}return(0,Bi.jsx)(op,{resource:e.service,errorComponent:zE,extra:e,children:a=>{let l=a.width||e.width||0,c=a.height||e.height||0;return(0,Bi.jsx)(cd,{tiles:{id:a.id||a["@id"]||"unknown",height:c,width:l,imageService:a},enableSizes:n,x:0,y:0,width:e.target?.spatial.width,height:e.target?.spatial.height,crop:i})}},e.id)}var $r=A(Y(),1);function ju({id:e,image:t,thumbnail:i,isStatic:n,x:o=0,y:a=0,children:l,selector:c,onClick:p,enableSizes:m}){let f=(0,ta.useMemo)(()=>{if(!(!c||c.spatial.x===0&&c.spatial.y===0))return c.spatial},[c]);return(0,$r.jsx)("world-object",{x:o+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,$r.jsxs)(ta.Fragment,{children:[(0,$r.jsx)(Lx,{image:t,thumbnail:i,crop:f,enableSizes:m}),l]},"service"):(0,$r.jsxs)(ta.Fragment,{children:[(0,$r.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:f}),l]},"no-service")},e+(t.service?"server":"no-service"))}var vn=A(q(),1);var Qo=A(q(),1);function zx(e){return e.type==="SpecificResource"?[e.source,{selector:e.selector}]:[e,{selector:null}]}function Cp(e=Tn){function t(o){let a=o?typeof o=="string"?e.get(o):o: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(o,a=[]){let l=Array.isArray(o)?o:t(o),c=[],p={items:[],type:"complex-choice"},m=[];for(let f of l){if(f.type!=="Annotation")throw new Error("getPaintables() accept either a canvas or list of annotations");let y=Array.from(Array.isArray(f.body)?f.body:[f.body]);for(let w of y){let[P,{selector:v}]=zx(w),x=e.get(P),C=(x.type||"unknown").toLowerCase();if(C==="choice"){let E=e.get(x.items,{parent:x.id}),T=a.length?a.map(R=>E.find(G=>G.id===R)).filter(Boolean):[E[0]];T.length===0&&T.push(E[0]),p.items.push({type:"single-choice",items:E.map(R=>({id:R.id,label:R.label,selected:T.indexOf(R)!==-1})),label:P.label}),y.push(...T);continue}c.indexOf(C)===-1&&c.push(C),m.push({type:C,annotationId:f.id,resource:x,target:f.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(o){let{choice:a}=i(o);return a}return{getAllPaintingAnnotations:t,getPaintables:i,extractChoices:n}}function Nx(e,t,i=[],n=!1,o=[]){if(o.length&&(t=t.filter(l=>o.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,f=m?t.indexOf(m):-1;if(f!==-1)return t[f]}}return t.indexOf("none")!==-1?"none":t.indexOf("@none")!==-1?"@none":t[0]}function Ep(e,t,i={}){let{strictFallback:n=!1,defaultText:o="",separator:a=`
78
- `,fallbackLanguages:l=[],closest:c,skipLanguages:p}=i,m=Object.keys(e||{}),f=c?t:Nx(t,m,l,n,p);if(!e)return o;if(typeof e=="string")return e;let y=f?e[f]:void 0;if(y&&f){if(typeof y=="string")return y;if(y.length===1&&y[0]===""){let w=i.skipLanguages||[];return Ep(e,t,{...i,skipLanguages:[...w,f]})}return y.join(a)}return""}function Ap(e,t={}){return Ep(e,t.language||(typeof navigator<"u"?navigator.language:"en"),t)}function NE(e){return e.type==="SpecificResource"?[e.source,{selector:e.selector}]:[e,{selector:null}]}function ia(e,t){let{selector:i,source:n}=qt(t);if(n.id!==e.id)return[null,n];let o={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:o.spatial}:i:null,n]}var Rp={makeChoice:()=>{}},na={type:"unknown"},et=e=>({type:"unknown",reason:e,annotations:{pages:[]}}),Tp=(e,t)=>({type:"empty",width:e,height:t,annotations:{pages:[]},image:null,images:[]});var ra=A(q(),1);function FE(e,t){let i=e?.iiif?.meta[t];return i?i.annotationPageManager:null}function Fx(e,t){return Fe(i=>{let n=[];if(!e)return n;let o=Object.keys(i.iiif.entities.AnnotationPage);for(let a of o)if(!t||t.indexOf(a)!==-1){let l=FE(i,a);l&&l.views&&l.views[e]&&n.push(a)}return n},[e,t])}function Ip({canvas:e,manifest:t,all:i,canvases:n}){let o=[];if(t)for(let a of t.annotations)o.indexOf(a.id)===-1&&o.push(a.id);if(i){if(n&&n.length)for(let a of n)for(let l of a.annotations)o.indexOf(l.id)===-1&&o.push(l.id)}else if(e)for(let a of e.annotations)o.indexOf(a.id)===-1&&o.push(a.id);return o}function BE(e,t){let i=e?.iiif?.meta[t];return i?i.annotationPageManager:null}function oa(e,t={}){let i=Oe(),n=mt(),o=De(),a=jr(),l=(0,ra.useMemo)(()=>Ip({all:t.all,manifest:n,canvas:o,canvases:a}),[t.all,o,a,n]),c=Fx(e,t.all?void 0:l),p=(0,ra.useCallback)(f=>{e&&i.setMetaValue([f,"annotationPageManager","views"],y=>y&&!y[e]?y:{...y||{},[e]:!1})},[e,i]),m=(0,ra.useCallback)((f,y={})=>{if(!e)return;let w=i.getState(),P=[];if(y?.deselectOthers){let v=Object.keys(w.iiif.entities.AnnotationPage);for(let x of v){let C=BE(w,x);C&&C.views&&C.views[e]&&P.push(x)}}for(let v of P)p(v);i.setMetaValue([f,"annotationPageManager","views"],v=>v&&v[e]?v:{...v||{},[e]:!0})},[e,p,i]);return{availablePageIds:l,enabledPageIds:c,setPageEnabled:m,setPageDisabled:p}}function _p(e,t){return Fe((i,n)=>n.get(e.map(o=>({id:o,type:t}))),[e,t])}var sr=A(q(),1);var Vu=A(q(),1);var Bx=Vu.default.createContext(new vo);function On(){return(0,Vu.useContext)(Bx)}function Mp(){let e=On(),[t,i]=(0,sr.useState)({}),n=(0,sr.useRef)(!1);return(0,sr.useEffect)(()=>()=>{n.current=!0},[]),[(0,sr.useCallback)((a,{height:l,width:c})=>{if(a){let p=a.id||a["@id"],m=e.loadServiceSync({id:p,width:a.width||c,height:a.height||l,source:a});m?a=m:t[p]||(n.current||i(f=>({...f,[p]:"loading"})),e.loadService({id:p,width:a.width||c,height:a.height||l}).then(()=>{n.current||i(f=>({...f,[p]:"done"}))}))}return a},[e,t]),t]}var Kr=A(q(),1);function Xr(e={}){let t=Js(),i=De(e.canvasId?{id:e.canvasId}:void 0);return Fe((n,o)=>{if(!i)return[];if(t&&e.enableSingleAnnotation)return[t];let a=o.get(i.items),l=[];for(let c of a)l.push(...o.get(c.items));return l},[i])}function Op(e,t=[]){let i=Oe(),n=(0,Kr.useMemo)(()=>Cp(i),[]),o=Xr({enableSingleAnnotation:e?.enableSingleAnnotation}),[a,l]=(0,Kr.useState)(e?.defaultChoices||[]),c=(0,Kr.useMemo)(()=>n.getPaintables(o,a),[i,o,a,...t]),m={makeChoice:(0,Kr.useCallback)((f,{deselectOthers:y=!0,deselect:w=!1}={})=>{c.choice&&l(P=>{if(w){let x=P.filter(C=>C!==f);if(x.length===0){let C=c.items[0].resource.id;return C?[C]:[]}return x}if(y)return[f];let v=[...P];if(v.length===0&&c.items.length){let x=c.items[0].resource.id;x&&v.push(x)}return P.indexOf(f)!==-1?P:[...P,f]})},[c.choice])};return[c,m]}var DE=["model/gltf-binary"];function kp(e,t){let n=t.items[0].resource;return n.format?DE.indexOf(n.format)===-1?et(`3D format: ${n.format} is unsupported`):{type:"3d-model",model:n}:et("Unknown format")}function Dx(e,t){if(!e.duration)return et("No duration on canvas");if(t.items.length>1)return et("Only one audio source supported");let i=t.items[0]?.resource;return i?i.format?{type:"media",media:{annotationId:t.items[0].annotationId,duration:e.duration,url:i.id,type:"Sound",target:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}},format:i.format,selector:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}}},annotations:{pages:[]}}:et("Audio does not have format"):et("Unknown audio")}function Lp(e,t,i){let n=[];for(let o of t.items){let a=o.resource&&o.resource.type==="SpecificResource"?o.resource.source:o.resource;if(!a.id)return et("No resource Identifier");let l;if(a.service){let v=Ar(a);v[0]&&(l=i(v[0],e))}let c={type:"BoxSelector",spatial:{x:0,y:0,width:Number(e.width),height:Number(e.height)}},[p,m]=ia(e,o.target);if(!(m.id===e.id||decodeURIComponent(m.id||"")===(e.id||"")))continue;let f=o.resource.width&&o.resource.height?{type:"BoxSelector",spatial:{x:0,y:0,width:o.resource.width,height:o.resource.height}}:void 0,y=o.resource.type==="SpecificResource"?qt(o.resource):null;if(o.selector){let v=qt({type:"SpecificResource",source:o.resource,selector:o.selector});v&&(y=v)}let w=y&&y.selector&&(y.selector.type==="BoxSelector"||y.selector.type==="TemporalBoxSelector")?{type:"BoxSelector",spatial:{x:y.selector.spatial.x,y:y.selector.spatial.y,width:y.selector.spatial.width,height:y.selector.spatial.height}}:void 0;l&&!l.id&&(l.id=l["@id"]);let P={id:a.id,type:"Image",annotationId:o.annotationId,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};n.push(P)}return{type:"images",image:n[0],images:n,choice:t.choice}}function jx(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(o=>jx(o,t,n))}return t}function zp(e,t){let i=[];return t.items.forEach(n=>{if(n.resource){let[o]=ia(e,n.target);i.push({annotationId:n.annotationId,text:jx(n.resource),target:o})}}),{type:"textual-content",items:i}}var jE=/^.*(?:(?:youtu\.be\/|v\/|vi\/|u\/\w\/|embed\/|shorts\/)|(?:(?:watch)?\?vi?=|&vi?=))([^#&?]*).*/;function Np(e,t){let i=t.items.filter(c=>c.type==="video"),n=!1;if(e.duration||(n=!0),i.length>1)return et("Only one video source supported");let o=i[0]?.resource,a=!!(o.service||[]).find(c=>(c.profile||"").includes("youtube.com"));if(!a&&n)return et("Video does not have duration");if(!o)return et("Unknown video");if((!o.format||o.format==="text/html")&&!a)return et("Video does not have format");let l={annotationId:t.items[0].annotationId,duration:e.duration,url:o.id,type:"Video",items:[],target:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}},format:o.format,selector:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}}};if(a){l.type="VideoYouTube";let c=o.id.match(jE);if(!c[1])return et("Video is not known youtube video");l.youTubeId=c[1]}return{type:"media",media:l,annotations:{pages:[]}}}function Fp({canvas:e,paintables:t,supports:i,loadImageService:n}){if(!e)return na;if(t.types.length===0)return i.indexOf("empty")!==-1?Tp(e.width,e.height):na;if(t.types.length!==1)if(t.types.length===2&&t.types.indexOf("text")!==-1)t.types=t.types.filter(a=>a!=="text");else return i.indexOf("complex-timeline")===-1?et("Complex timeline not supported"):et("ComplexTimelineStrategy not yet supported");let o=t.types[0];return o==="image"?i.indexOf("images")===-1?et("Image not supported"):Lp(e,t,n):o==="Model"||o==="model"?i.indexOf("3d-model")===-1?et("3D not supported"):kp(e,t):o==="textualbody"?i.indexOf("textual-content")===-1?et("Textual content not supported"):zp(e,t):o==="sound"||o==="audio"?i.indexOf("media")===-1?et("Media not supported"):Dx(e,t):o==="video"?i.indexOf("media")===-1?et("Media not supported"):Np(e,t):na}function Bp(e){let t=mt(),i=De(),n=Oe(),o=Gs(),a=e?.emitter||o,[l,c]=Mp(),{enabledPageIds:p}=oa(e?.annotationPageManagerId||t?.id||i?.id,{all:!1}),m=_p(p,"AnnotationPage"),f=e?.strategies||["empty","images","media","textual-content","complex-timeline"],[y,w]=Op(e,[c]);(0,Qo.useEffect)(()=>{let v=x=>{w.makeChoice(x.choiceId,{deselectOthers:x.deselectOthers,deselect:x.deselect})};return a.on("make-choice",v),()=>{a.off("make-choice",v)}},[]);let P=(0,Qo.useMemo)(()=>Fp({canvas:i,paintables:y,supports:f,loadImageService:l}),[i,y,n,w.makeChoice]);return(0,Qo.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,Qo.useMemo)(()=>P.type==="unknown"?[P,Rp]:[{...P,annotations:{pages:m}},w],[P,m])}var ar=A(q(),1);var Vx=A(q(),1),Dp=(e,t=[])=>{let i=Oe();(0,Vx.useEffect)(()=>{e(i)},[i,...t])};function Zr(e,t,{canvasId:i,manifestId:n}={}){let o=Oe(),a=On(),l=(0,ar.useMemo)(()=>Xh(o,{imageServiceLoader:a}),[o,a]),[c,p]=(0,ar.useState)(),m=mt(n?{id:n}:void 0),f=De(i?{id:i}:void 0),y=f||m,w=(0,ar.useRef)(!1);if((0,ar.useEffect)(()=>(w.current=!1,()=>{w.current=!0}),[]),!y)throw new Error("Must be called under a manifest or canvas context.");return Dp(P=>{l.getBestThumbnailAtSize(y,e,t).then(v=>{v.best&&!w.current&&p(v.best)})},[y]),c}var gt=A(q(),1);function VE(e){return{isMuted:!1,playRequested:!1,isPlaying:!1,isFinished:!1,volume:100,duration:e}}function UE(e,t){switch(t.type){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 Ux(e){let t=Math.round(e);return`${Math.floor(t/60)}:${`${t%60}`.padStart(2,"0")}`}function Jr(e){let[t,i]=(0,gt.useReducer)(UE,VE(e.duration)),n=(0,gt.useRef)(null),o=(0,gt.useRef)(null),a=(0,gt.useRef)(null),l=(0,gt.useRef)(!1),c=(0,gt.useCallback)(()=>{o.current&&n.current&&(o.current.innerHTML=Ux(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():f())},[c]),f=(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"}))},[]),w=(0,gt.useCallback)(()=>{n.current&&(n.current.muted=!0,i({type:"MUTE"}))},[]),P=(0,gt.useCallback)(()=>{n.current&&(n.current.muted=!1,i({type:"UNMUTE"}))},[]),v=(0,gt.useCallback)(E=>{n.current&&(n.current.muted=!1,n.current.volume=E/100,i({type:"SET_VOLUME",volume:E}))},[]),x=(0,gt.useCallback)(E=>{n.current&&(n.current.currentTime=Math.max(0,Math.min(E*e.duration,e.duration)),c())},[]),C=(0,gt.useCallback)(E=>{n.current&&(n.current.currentTime=Math.max(0,Math.min(E,e.duration)),c())},[]);return(0,gt.useEffect)(()=>{let E=setInterval(()=>{c()},350);return()=>clearInterval(E)},[c,e.duration]),(0,gt.useEffect)(()=>{let E=()=>{i({type:"FINISHED"})},T=n.current;return T?.addEventListener("ended",E),()=>T?.removeEventListener("ended",E)},[]),[{element:n,currentTime:o,progress:a},t,{play:p,pause:f,playPause:m,mute:w,unmute:P,toggleMute:y,setVolume:v,setDurationPercent:x,setTime:C}]}var lr=A(q(),1),Uu=A(Y(),1),Hx=(0,lr.createContext)(null),Wx=(0,lr.createContext)(null),qx=(0,lr.createContext)(null);function HE(){let e=(0,lr.useContext)(Hx);if(!e)throw new Error("Ctx not found");return e}function WE(){let e=(0,lr.useContext)(Wx);if(!e)throw new Error("Ctx not found");return e}function qE(){let e=(0,lr.useContext)(qx);if(!e)throw new Error("Ctx not found");return e}function sa({actions:e,state:t,children:i,currentTime:n,progress:o,element:a}){return(0,Uu.jsx)(qx.Provider,{value:{currentTime:n,progress:o,element:a},children:(0,Uu.jsx)(Wx.Provider,{value:e,children:(0,Uu.jsx)(Hx.Provider,{value:t,children:i})})})}var Qx=A(q(),1);function aa(){let e=mt(),t=De();return(0,Qx.useMemo)(()=>{if(!e||!t||!e.start)return null;let i=qt(e.start);return!i||i.source.id!==t.id||!i||!i.selector||i.selector.type!=="TemporalSelector"?null:i.selector.temporal},[e,t])}var Wu=A(Y(),1);function jp({media:e,startTime:t,children:i}){let[{element:n,currentTime:o,progress:a},l,c]=Jr({duration:e.duration}),p=t?`${e.url}#t=${t}`:e.url;return(0,Wu.jsxs)(sa,{state:l,actions:c,currentTime:o,progress:a,element:n,children:[(0,Wu.jsx)("audio",{ref:n,src:p}),i]})}function Hu({media:e,mediaControlsDeps:t,children:i}){let n=aa();return Ji("portal","audio",jp,{media:e,startTime:n?n.startTime:null,children:i},[e,n,...t||[]]),null}var la=A(Y(),1);function Vp({element:e,media:t,startTime:i,playPause:n,poster:o}){let a="div",l=i?`${t.url}#t=${i}`:t.url;return(0,la.jsxs)(a,{className:"video-container",part:"video-container",onClick:n,children:[(0,la.jsx)("style",{children:`
74
+ `);let T=C.state[c];if(T==null)return;JSON.stringify(o.getState())!==JSON.stringify(T)&&P(T);return}o.dispatchFromDevtools&&typeof o.dispatch=="function"&&o.dispatch(C)});case"DISPATCH":switch(x.payload.type){case"RESET":return P(v),c===void 0?f?.init(o.getState()):f?.init(Mu(p.name));case"COMMIT":if(c===void 0){f?.init(o.getState());return}return f?.init(Mu(p.name));case"ROLLBACK":return Gh(x.state,C=>{if(c===void 0){P(C),f?.init(o.getState());return}P(C[c]),f?.init(Mu(p.name))});case"JUMP_TO_STATE":case"JUMP_TO_ACTION":return Gh(x.state,C=>{if(c===void 0){P(C);return}JSON.stringify(o.getState())!==JSON.stringify(C[c])&&P(C[c])});case"IMPORT_STATE":{let{nextLiftedState:C}=x.payload,T=(E=C.computedStates.slice(-1)[0])==null?void 0:E.state;if(!T)return;P(c===void 0?T:T[c]),f?.send(null,C);return}case"PAUSE_RECORDING":return S=!S}return}}),v},zC=LC,Gh=(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)},NC=e=>(t,i,n)=>{let o=n.subscribe;return n.subscribe=(l,c,p)=>{let m=l;if(c){let f=p?.equalityFn||Object.is,y=l(n.getState());m=S=>{let P=l(S);if(!f(y,P)){let v=y;c(y=P,v)}},p?.fireImmediately&&c(y,y)}return o(m)},e(t,i,n)},FC=NC,BC=(e={},t)=>{switch(t.type){case xu:return{...e,[t.payload.id]:t.payload.type};case Su:return{...e,...t.payload.mapping};default:return e}};function Xh(e,t,i,n){return!(!e[i]||!e[i][t]||!e[i][t][n]||!Array.isArray(e[i][t][n]))}function DC(e,t){let i={},n=[];for(let[o,a]of Object.entries(e||{})){n.push(o);let l=(t||{})[o];if(!l||l.length===0){i[o]=a;continue}i[o]=l}for(let[o,a]of Object.entries(t||{}))n.indexOf(o)===-1&&(i[o]=a);return i}function he(e){return e.payload}function Kh(e,t){return typeof e>"u"?t:e}var jC=(e=Wh(),t)=>{let i=(n,o)=>({...e,[he(t).type]:{...e[he(t).type],[he(t).id]:{...n,...o}}});switch(t.type){case du:{if(!e[he(t).type]||!e[he(t).type][he(t).id])return e;let n=e[he(t).type][he(t).id];return typeof n=="string"?e:i(n,{[he(t).key]:he(t).value})}case hu:{if(!Xh(e,he(t).id,he(t).type,he(t).key))return e;let n=e[he(t).type][he(t).id];if(typeof n=="string")return e;let o=Array.from(n[he(t).key]),[a]=o.splice(he(t).startIndex,1);return o.splice(he(t).endIndex,0,a),i(n,{[he(t).key]:o})}case cu:{let n=Object.keys(he(t).entities),o={...e};for(let a of n){let l=he(t).entities[a],c={...e[a]||{}},p=!1,m=Object.keys(l||{})||[];if(l&&m){for(let f of m)p=!0,c[f]=e[a][f]?DC(e[a][f],l[f]):l[f];p&&(o[a]=c)}}return o}case pu:{if(!Xh(e,he(t).id,he(t).type,he(t).key))return e;let n=e[he(t).type][he(t).id],o=Array.from(n[he(t).key]);return o.splice(Kh(he(t).index,o.length+1),0,he(t).reference),i(n,{[he(t).key]:o})}case Bs:case fu:{if(!Xh(e,he(t).id,he(t).type,he(t).key))return e;let n=e[he(t).type][he(t).id],o=Array.from(n[he(t).key]),a=Kh(he(t).index,o.findIndex(l=>l&&l.id===he(t).reference.id));return a===-1||o[a]?.id!==he(t).reference.id?e:(t.type===Bs?o.splice(a,1,he(t).reference):o.splice(a,1),i(n,{[he(t).key]:o}))}case mu:{let n=e[he(t).type][he(t).id];if(!n)return e;let o=Array.from(n.metadata||[]),a=he(t);return o.splice(Kh(t.payload.beforeIndex,o.length+1),0,{label:a.label,value:a.label}),i(n,{metadata:o})}case yu:{let n=e[he(t).type][he(t).id];if(typeof n=="string"||!n)return e;let o=Array.from(n.metadata||[]),[a]=o.splice(he(t).startIndex,1);return o.splice(he(t).endIndex,0,a),i(n,{metadata:o})}case Ds:case gu:{let n=e[he(t).type][he(t).id],o=Array.from(n.metadata||[]),a=he(t).atIndex;return typeof a>"u"||a===-1||!o[a]?e:(t.type===Ds?o.splice(a,1,{label:he(t).label,value:he(t).value}):o.splice(a,1),i(n,{metadata:o}))}default:return e}},VC=(e={},t)=>{switch(t.type){case wu:case Eu:return{...e,[t.payload.id]:{requestUri:t.payload.id,loadingState:js,uriMismatch:!1,resourceUri:t.payload.id}};case Pu: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 bu:return{...e,[t.payload.id]:{...e[t.payload.id]||{},loadingState:Ro,error:t.payload.message}};case Cu:return{...e,[t.payload.id]:{...e[t.payload.id]||{},loadingState:Io,error:void 0}}}return e},UC=(e={},t)=>{let{id:i,updateValue:n,value:o,meta:a,key:l}=t&&t.payload||{};switch(t.type){case qh:return{...e,[i]:{...e[i]||{},[a]:{...e[i]?e[i][a]||{}:{},[l]:o}}};case Qh: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 $h: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 T0(e={}){let t=Object.keys(e);return function(n={},o){let a=!1,l={};for(let c=0;c<t.length;c++){let p=t[c];l[p]=e[p](n[p],o),a=a||l[p]!==n[p]}return a?l:n}}function HC(e){return(t,i)=>i&&i.type===_o?i.payload.actions.reduce(e,t):i&&i.type===Au?{...t,iiif:{...t.iiif,...i.payload.state}}:e(t,i)}var WC=T0({mapping:BC,entities:jC,requests:VC,meta:UC});function qC(){return{iiif:{entities:Wh(),meta:{},mapping:{},requests:{}}}}function R0(e={}){let{enableDevtools:t=!1,iiifStoreName:i="iiif",defaultState:n=qC(),customReducers:o={}}=e,a=HC(T0({[i]:WC,...o}));return A0(FC(zC(kC(a,n),{enabled:t})))}function QC(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(o){o(i)}),(n=e.get("*"))&&n.slice().map(function(o){o(t,i)})}}}function Xt(e,t,i,n=!0){t[Bo]=t[Bo]||[],t[Bo].push(e);let o=new Map;Object.defineProperty(t,e,{enumerable:n,get(){if(typeof t[Br][e]>"u")return;let a=t[Br][e];if(!a)return a;let l=i.get(t[Br][e],{parent:this.id?{id:this.id,type:this.type}:void 0});return o.has(l)||(o.clear(),o.set(l,Dr(l,i))),o.get(l)},set(a){t[Br][e]!==a&&(this[Fr]?i.modifyEntityField({id:this.id,type:this.type},e,M0(a)):this[Br][e]=a)}})}var Br=Symbol.for("_refs_"),Fr=Symbol.for("_reactive_"),Bo=Symbol.for("_defined_"),I0=Symbol.for("_parent_");function $C(e,t=!1,i){let n={id:"",type:"unknown",[Bo]:[],[Br]:{},[I0]:i||null,[Fr]:null,is(o){return typeof o=="string"?this.id===o:o.id?o.id===this.id:!1},reactive(){if(!this[Fr])return this[Fr]=this.subscribe(()=>this.refresh(),!0),()=>{this.unreactive()}},refresh(){if(this.id){let o=this.unwrap();for(let a of Object.keys(o||{}))this[Bo].includes(a)?this[Br][a]=o[a]:this[a]=o[a]}},unreactive(){this[Fr]&&(this[Fr](),this[Fr]=null)},unwrap(){if(!this.id)throw new Error("Invalid object");let o=this[I0];return e.get(this.id,{parent:o?{id:o,type:"unknown"}:void 0})},toPresentation3(){return e.toPresentation3(this.unwrap())},toPresentation2(){return e.toPresentation2(this.unwrap())},valueOf(){return this.unwrap()},toJSON(){let o=this;return{...o,items:o.items,annotations:o.annotations,structures:o.structures,seeAlso:o.seeAlso,service:o.service,services:o.services,rendering:o.rendering,partOf:o.partOf,start:o.start,supplementary:o.supplementary,homepage:o.homepage,thumbnail:o.thumbnail,placeholderCanvas:o.placeholderCanvas,accompanyingCanvas:o.accompanyingCanvas,provider:o.provider}},subscribe(o,a=!0){return e.subscribe(()=>this.id?e.get(this.id):null,o,a)}};return Xt("items",n,e),Xt("annotations",n,e),Xt("structures",n,e),Xt("seeAlso",n,e),Xt("rendering",n,e),Xt("partOf",n,e),Xt("start",n,e,!1),Xt("supplementary",n,e),Xt("homepage",n,e),Xt("thumbnail",n,e),Xt("placeholderCanvas",n,e,!1),Xt("accompanyingCanvas",n,e,!1),Xt("provider",n,e),Xt("body",n,e),Xt("logo",n,e),n}function YC(e){return!!e[Bo]}function M0(e){return Array.isArray(e)?e.map(t=>M0(t)):!e||!e.type?e:{id:e.id,type:e.type}}function Dr(e,t,i=!1,n){if(Array.isArray(e))return e.map(c=>Dr(c,t,i));if(!e||!e.type||!e.id)return e;let o=$C(t,i),a=Object.create(o),l=Object.assign(a,e);return i&&l.reactive(),l}function _0(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 Do=class{constructor(e,t){ci(this,"options"),ci(this,"store"),ci(this,"emitter"),ci(this,"isBatching",!1),ci(this,"batchQueue",[]),ci(this,"remoteFetcher"),ci(this,"staticFetcher"),ci(this,"defaultFetcher",i=>fetch(i).then(n=>n.json())),this.options=Object.assign({reducers:{},customFetcher:this.defaultFetcher,enableDevtools:!0},e||{}),this.store=t||R0({customReducers:this.options.reducers,defaultState:this.options.defaultState,enableDevtools:this.options.enableDevtools}),this.emitter=QC(),this.remoteFetcher=Hh(this,this.options.customFetcher),this.staticFetcher=Hh(this,(i,n)=>n)}batch(e){this.isBatching=!0;try{e(this),this.isBatching=!1,this.dispatch(Mo({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(Mo({actions:this.batchQueue}))}catch(t){throw this.batchQueue=[],this.isBatching=!1,t}this.batchQueue=[]}modifyEntityField(e,t,i){this.dispatch(Mr.modifyEntityField({id:e.id,type:e.type,key:t,value:i}))}dispatch(e){if(this.isBatching)this.batchQueue.push(e);else{if(e.type===_o){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 Bh(this.getState().iiif,e,t)}toPresentation2(e){return this.serialize(e,Dh)}toPresentation3(e){return this.serialize(e,jh)}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||{},o=i.parent?typeof i.parent=="string"?i.parent:i.parent.id:void 0;if(Array.isArray(e))return e.map(f=>this.get(f,i));let a=this.getState();if(Ki(e)&&!i.preserveSpecificResources&&(e=e.source),typeof e=="string"){let f=_0(t||a.iiif.mapping[e]);if(!f)return n?null:{id:e,type:"unknown"};e={id:e,type:f}}if(e&&e.partOf&&!o&&!i.skipPartOfCheck){let f=Array.isArray(e.partOf)?e.partOf[0]:e.partOf;f&&(typeof f=="string"&&(o=f),typeof f.id=="string"&&(o=f.id))}let l=_0(t||e?.type),c=e?.id,p=a.iiif.entities[l];if(!p){let f=a.iiif.requests[c];return f&&f.resourceUri!==c?this.get(f.resourceUri,i):n?null:e}let m=p[e.id];if(m&&m[pt]){let f=m[pt].find(y=>o?y[wi]===o:y[wi]===m.id);return No(m,f)}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})),o=a=>this.deep(a,n);return o.size=Array.isArray(n)?n.length:1,o}catch{let o=a=>this.deep(a,void 0);return o.size=0,o}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 Uh(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:Uh,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,...o}=i;return Dr(this.get(e,t,o),this,n)}async loadObject(e,t){return Dr(await this.load(e,t),this)}async loadManifestObject(e,t){return Dr(await this.loadManifest(e,t),this)}async loadCollectionObject(e,t){return Dr(await this.loadCollection(e,t),this)}wrapObject(e){return Dr(this.get(e,{skipSelfReturn:!1}),this)}isWrapped(e){return YC(e)}setMetaValue([e,t,i],n){this.dispatch(typeof n=="function"?Yh.setMetaValueDynamic({id:e,meta:t,key:i,updateValue:n}):Yh.setMetaValue({id:e,meta:t,key:i,value:n}))}};function k0(){return typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}function Ws(e){let t=k0();try{let n=t.IIIF_VAULT;if(n)return n}catch{}let i=new Do(e);try{t.IIIF_VAULT=i}catch{}return i}var Jh=R(q(),1),sr=ku.default.createContext({vault:null,setVaultInstance:e=>{}});function jr({vault:e,vaultOptions:t,useGlobal:i,resources:n,children:o}){let[a,l]=(0,ku.useState)(()=>e||(i?Ws(t):t?new Do(t):new Do));return(0,Jh.jsx)(sr.Provider,{value:{vault:a,setVaultInstance:l},children:(0,Jh.jsx)(Gt,{value:n||{},children:o})})}var dx=R($(),1),Du=R($(),1);var O0=R($(),1);function Vr(e){let t=(0,O0.useContext)(sr);return e||(t&&t.vault?t.vault:Ws())}var ar=R($(),1);function qs(e,{noCache:t=!1}={}){let i=typeof e=="string"?e:e.id,n=Vr(),[o,a]=(0,ar.useState)(i),[l,c]=(0,ar.useState)(void 0),p=(0,ar.useMemo)(()=>n.get(i,{skipSelfReturn:!0})||void 0,[i,n]),[m,f]=(0,ar.useState)(p);return(0,ar.useEffect)(()=>{(async()=>{try{let y=p&&!t?p:await n.load(i),S=y?y.id||y["@id"]:null;y&&o!==S&&a(S),f(y)}catch(y){c(y)}})()},[i,t]),{isLoaded:!!m,id:o,requestId:i,error:l,resource:m,cached:!!(m&&m===p)}}function ep(e,t){let{id:i,isLoaded:n,error:o,resource:a,requestId:l,cached:c}=qs(e,t);return{id:i,isLoaded:n,error:o,manifest:a,requestId:l,cached:c}}var L0=R(q(),1);function tp({manifest:e,children:t}){return(0,L0.jsx)(Gt,{value:{manifest:e},children:t})}var z0=R(q(),1);function Bi({canvas:e,children:t}){return(0,z0.jsx)(Gt,{value:{canvas:e},children:t})}var F0=R($(),1),B0=R($(),1);var N0=R($(),1),Me=()=>{let{vault:e}=(0,N0.useContext)(sr);if(e===null)throw new Error("Vault not found. Ensure you have your provider set up correctly.");return e};var Ou=R($(),1);function Ne(e,t=[]){let i=Me(),[n,o]=(0,Ou.useState)(()=>e(i.getState(),i));return(0,Ou.useEffect)(()=>i.subscribe(a=>e(a,i),a=>{o(a)},!1),t),n}var Ur=B0.default.createContext([]);function Hr(){let e=(0,F0.useContext)(Ur);return Ne(t=>e.map(i=>t.iiif.entities.Canvas[i]).filter(Boolean),[e])}var D0=R($(),1);function gt(e={},t=[]){let{id:i,selector:n}=e,o=qt(),a=Me(),l=i||o.manifest,c=Ne(p=>l?p.iiif.entities.Manifest[l]:void 0,[l]);return(0,D0.useMemo)(()=>{if(c)return n?n(c):c},[c,n,...t])}var j0=R(q(),1);function ip({range:e,children:t}){return(0,j0.jsx)(Gt,{value:{range:e},children:t})}function V0(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=V0(e,e.get(i));if(n)return n}}return null}function Lu(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(...Lu(e,e.get(n))),n.type==="SpecificResource"){let o=typeof n.source=="string"?n.source:n.source.id;i.push({id:o,type:"Canvas"})}return i}function GC(e,t,i){for(let n of t.structures){let o=np(e,e.get(n),i);if(o)return o}return null}function np(e,t,i){for(let n of t.items){let o=n?.source?.id?.split("#")[0];if(n.type==="SpecificResource"&&n.source===i||n.type==="SpecificResource"&&n.source?.type==="Canvas"&&i===o)return t;if(n.type==="Range"){let a=np(e,e.get(n),i);if(a)return a}}return null}function XC(e,t,i,n=!1){let o=t.behavior,a=i?e.get(i):null;if(!a)return[];let l=a.behavior,c=n?!1:o.includes("paged"),p=c?!1:o.includes("continuous"),m=c||p?!1:o.includes("individuals"),f=l.includes("facing-pages"),y=l.includes("non-paged");if(f||y||m||n)return[{id:a.id,type:"Canvas"}];let[S,P]=zu(e,t);if(p)return S;let v=S.findIndex(x=>x.id===i);if(v===-1)return[];for(let x of P)if(x.includes(v))return x.map(E=>S[E]);return[{id:a.id,type:"Canvas"}]}function zu(e,t,{disablePaging:i,skipNonPaged:n}={}){let o=t.behavior,a=o.includes("paged"),l=a?!1:o.includes("continuous"),c=a||l?!1:o.includes("individuals"),p=t.type==="Manifest"?t.items:Lu(e,t);if(l)return[p,[p.map((v,x)=>x)]];if(c||!a||i)return[p,p.map((v,x)=>[x])];let m=[],f=[],y=()=>{f.length&&(m.push([...f]),f=[])},S=0,P=!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")){f.length&&(P=!0),y(),m.push([v]),y();continue}if(f.push(v),P){y(),P=!1;continue}f.length>1&&y()}return f.length&&y(),[p,m]}var Zi=R($(),1);var U0=R($(),1);function Qs(e={},t=[]){let{id:i,selector:n}=e,o=qt(),a=i||o.range,l=Ne(c=>a?c.iiif.entities.Range[a]:void 0,[a]);return(0,U0.useMemo)(()=>{if(l)return n?n(l):l},[l,n,...t])}function rp({startCanvas:e,disablePaging:t}){let i=Me(),n=gt(),o=Qs(),[a,l]=(0,Zi.useState)(void 0),c=o||n;if(!c)throw new Error("Nothing selected");let[p,m]=(0,Zi.useMemo)(()=>zu(i,c,{disablePaging:t}),[i,c,t]),f=(0,Zi.useRef)(m);if(f.current!==m){let E=f.current[a][0],C=m.findIndex(T=>T.includes(E));f.current=m,l(C)}let y=(0,Zi.useCallback)(x=>{let E=m.findIndex(C=>C.includes(x));l(E===-1?0:E)},[p,m]),S=(0,Zi.useCallback)(x=>{let E=p.findIndex(C=>C.id===x);E!==-1?y(E):l(0)},[p,m]),P=(0,Zi.useCallback)(()=>{l(x=>x>=m.length-1?x:x+1)},[m]),v=(0,Zi.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:P,previous:v}}var en=R($(),1);var W0={},H0=e=>{let t,i=new Set,n=(f,y)=>{let S=typeof f=="function"?f(t):f;if(!Object.is(S,t)){let P=t;t=y??(typeof S!="object"||S===null)?S:Object.assign({},t,S),i.forEach(v=>v(t,P))}},o=()=>t,p={setState:n,getState:o,getInitialState:()=>m,subscribe:f=>(i.add(f),()=>i.delete(f)),destroy:()=>{(W0.env?W0.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,o,p);return p},Wr=e=>e?H0(e):H0;var tx=R($(),1),ix=R(Z0(),1),ex={},{useDebugValue:fE}=tx.default,{useSyncExternalStoreWithSelector:mE}=ix.default,J0=!1,gE=e=>e;function bi(e,t=gE,i){(ex.env?ex.env.MODE:void 0)!=="production"&&i&&!J0&&(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"),J0=!0);let n=mE(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,i);return fE(n),n}function yE(e){let t=e.service||e.services||[];for(let i of t)if(i.type==="AuthProbeService2")return!0;return!1}function Ji(e,t,i){let n=t.findIndex(l=>l.service.id===e);if(n===-1)return t;let o=[...t],a=i(o[n]);return a===o[n]?t:(o[n]=a,o)}var ap=()=>Wr((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(o=>o.type==="AuthAccessTokenService2");if(!n)throw new Error("Token service not found");e(()=>({authItems:Ji(i.id,t().authItems,o=>({...o,isPending:!0}))})),sp(i.service).then(()=>{Fu(n).then(o=>{let a=o.expiresIn,l=Date.now()+a*1e3;e(()=>({authItems:Ji(i.id,t().authItems,c=>({...c,isLoggedIn:!0,isPending:!1,session:{token:o.accessToken,expires:l}}))}))}).catch(o=>{e(()=>({authItems:Ji(i.id,t().authItems,a=>({...a,isLoggedIn:!1,isPending:!1,error:o.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 o=`${n.id}?origin=${nx()}`,a=window.open(o);e(()=>({authItems:Ji(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 o=i.service.find(c=>c.type==="AuthAccessTokenService2"),a=i;if(t().authItems.find(c=>c.service.id===i.id)){e(()=>({authItems:Ji(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(!o)throw new Error("Token service not found");Fu(o).then(c=>{e(()=>({authItems:Ji(i.id,t().authItems,p=>({...p,isLoggedIn:!0,isPending:!1,session:{token:c.accessToken,expires:c.expiresIn}}))}))}).catch(c=>{e(()=>({authItems:Ji(i.id,t().authItems,p=>({...p,isLoggedIn:!1,isPending:!1,canAuthenticate:!1,error:c.message}))}))})}if(i.profile==="kiosk"){if(!o)throw new Error("Token service not found");e(()=>({authItems:Ji(i.id,t().authItems,c=>({...c,isPending:!0}))})),sp(a).then(()=>{Fu(o).then(c=>{e(()=>({authItems:Ji(i.id,t().authItems,p=>({...p,isLoggedIn:!0,isPending:!1,session:{token:c.accessToken,expires:c.expiresIn}}))}))}).catch(c=>{e(()=>({authItems:Ji(i.id,t().authItems,p=>({...p,isLoggedIn:!1,isPending:!1,error:c.message}))}))})})}i.profile},removeService:(i,n)=>{let o=t().currentAuth===t().authItems.findIndex(l=>l.service.id===i.id),a=t().currentAuth;if(o){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:Ji(i.id,t().authItems,l=>({...l,instances:l.instances-1})),currentAuth:a}))}})),lp=(e,t)=>Wr((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 o=n().service?.id;if(!o){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(o,{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(o){i({token:o})}}));function up(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 o=n.service.filter(a=>a.type==="AuthAccessService2");o[0]&&(i.services.access=o[0])}return i}async function Fu(e,{strict:t=!0}={}){return new Promise((i,n)=>{let o=Math.random().toString(36).substring(7),a=`${e.id}?messageId=${o}&origin=${window.location.origin}`,l=m=>{let f=m.data;if(f.messageId===o){if(t&&f.type!=="AuthAccessToken2"){c(),n("Invalid response, expected type=AuthAccessToken2");return}if(!f.accessToken){c(),n("Invalid response, expected accessToken");return}c(),i(f)}},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 nx(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 sp(e){let t=`${e.id}?origin=${nx()}`,i=window.open(t);if(!i)throw new Error("Failed to open window");return new Promise((n,o)=>{let a=setInterval(()=>{i.closed&&(clearInterval(a),n())},500)})}var Vo=R($(),1);function rx(e){let t=(0,Vo.useMemo)(()=>up(e),[e]),i=cp(t.services.access?.id),n=(0,Vo.useMemo)(()=>lp(t.services.probe,i),[t.services.probe]),o=bi(n);return(0,Vo.useEffect)(()=>{o.status==="unknown"&&!i&&o.probe()},[t.services.probe,o.status]),(0,Vo.useEffect)(()=>{i&&(o.setToken(i),o.probe())},[i]),[e,o,t.hasAuth]}var $s=R(q(),1),qr=(0,en.createContext)(null),ox=(0,en.createContext)(null);ox.displayName="CurrentAuth";var sx=(0,en.createContext)(null);sx.displayName="AuthActions";function hp({children:e}){let t=(0,en.useMemo)(()=>ap(),[]);return(0,$s.jsx)(qr.Provider,{value:t,children:e})}function pp(){return!!(0,en.useContext)(qr)}function Uo(){let e=(0,en.useContext)(qr);if(!e)throw new Error("useAuthActions must be used within a AuthProvider");return e}function ax(){let e=Uo();return bi(e,i=>({login:i.login,logout:i.logout,nextAuth:i.nextAuth,previousAuth:i.previousAuth,setAuth:i.setAuth,addService:i.addService,removeService:i.removeService}))}function vE(){let e=Uo();return bi(e,t=>t)}function lx(e){let t=Uo();return bi(t,n=>n.authItems.find(o=>o.service.id===e))}function cp(e){let t=Uo();return bi(t,n=>n.authItems.find(o=>o.id===e)?.session?.token)}function xE(e){let t=Uo();return bi(t,n=>{let o=n.authItems.find(a=>a.service.id===e);return!o||!o.isLoggedIn||!o.session?null:o.session?.token||null})}function SE(e){let t=ax(),i=lx(e.service.id);return(0,en.useEffect)(()=>(t?.addService(e.service,e.probeId),()=>{t?.removeService(e.service,e.probeId)}),[e.service]),i?(i.error||!i.isLoggedIn,e.children):null}function dp(){return null}function fp(e){let[t,i,n]=rx(e.resource),o=e.fallbackComponent||dp,a=e.loadingComponent||dp,l=e.errorComponent||dp,c=i.service,p=null;if(!n||!c)return e.children(t);let m=c.service.filter(f=>f.type==="AuthAccessService2");i.status==="error"&&(p=(0,$s.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,$s.jsx)(a,{})),i.status==="success"&&(p=e.children(t));for(let f of m)p=(0,$s.jsx)(SE,{service:f,probeId:c.id,children:p},f.id);return p}var Ys=R($(),1);var wE=e=>e.id||e["@id"];function bE(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 ux=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?wE(t):void 0,n=null;return Wr((o,a)=>({service:t,resources:[],lastQuery:{},loading:!1,error:!1,highlight:null,hasSearch:!!t,hasAutocomplete:t?!!bE(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),o({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 f=await m.json();o({resources:f.resources,error:!1,errorMessage:""})}else o({resources:[],error:!0,errorMessage:m.statusText})})},clearSearch(){o({resources:[],error:!1,errorMessage:""})},highlightResult(l){let c=a().resources.find(p=>p["@id"]===l);o({highlight:c})},nextResult(){let l=a().resources,c=a().highlight;if(!c){o({highlight:l[0]||null});return}let p=l.findIndex(m=>m["@id"]===c["@id"]);if(p===-1){o({highlight:l[0]||null});return}o({highlight:l[p+1]||l[0]||null})},previousResult(){let l=a().resources,c=a().highlight;if(!c){o({highlight:l[l.length-1]||null});return}let p=l.findIndex(m=>m["@id"]===c["@id"]);if(p===-1){o({highlight:l[l.length-1]||null});return}if(p===0){o({highlight:l[l.length-1]||null});return}o({highlight:l[p-1]||l[l.length-1]||null})}}))};function mp(){let e=gt();return e?e.service.find(t=>t.profile==="SearchService1"||t.profile==="http://iiif.io/api/search/1/search"):void 0}var Bu=R(q(),1),Ho=(0,Ys.createContext)(null);Ho.displayName="Search";function cx(e){let t=mp();return e.store?(0,Bu.jsx)(Ho.Provider,{value:e.store,children:e.children}):(0,Bu.jsx)(PE,{service:t,children:e.children})}function PE({service:e,children:t}){let i=(0,Ys.useMemo)(()=>ux(e),[e]);return(0,Bu.jsx)(Ho.Provider,{value:i,children:t})}var di=R(q(),1),Gs=()=>{},Wo=(0,Du.createContext)({setCurrentCanvasId:Gs,setCurrentCanvasIndex:Gs,nextCanvas:Gs,previousCanvas:Gs,items:[],sequence:[],setSequenceIndex:Gs,currentSequenceIndex:0,hasNext:!1,hasPrevious:!1});function hx(e){let t=gt(),{cursor:i,visibleItems:n,next:o,sequence:a,items:l,setCanvasIndex:c,setCanvasId:p,previous:m,setSequenceIndex:f,hasNext:y,hasPrevious:S}=rp({startCanvas:e.startCanvas,disablePaging:e.pagingEnabled===!1}),P=(0,Du.useMemo)(()=>({sequence:a,items:l,setCurrentCanvasId:p,nextCanvas:o,previousCanvas:m,totalCanvases:l.length,setCurrentCanvasIndex:c,setSequenceIndex:f,currentSequenceIndex:i,hasNext:y,hasPrevious:S}),[a,l,p,o,m,l,c,f,i]);return t?n.length===0?null:(0,di.jsx)(Wo.Provider,{value:P,children:(0,di.jsx)(Ur.Provider,{value:n,children:(0,di.jsx)(Bi,{canvas:n[0],children:e.children})})}):(console.warn("The manifest passed to the provider is not a valid IIIF manifest."),(0,di.jsx)("div",{children:"Sorry, something went wrong."}))}function gp(e){let t=Vr(e.vault),i=ep(e.manifest);if(!i)return console.warn("The manifest passed to the provider is not a valid IIIF manifest."),(0,di.jsx)("div",{children:"Sorry, something went wrong."});if(i.error)return(0,di.jsx)("div",{children:i.error.toString()});if(!i.isLoaded)return(0,di.jsx)("div",{children:"Loading..."});let n=(0,di.jsx)(hx,{...e,children:e.children});return(0,di.jsx)(jr,{vault:t,children:(0,di.jsx)(tp,{manifest:i.id,children:(0,di.jsx)(hp,{children:(0,di.jsx)(cx,{children:e.rangeId?(0,di.jsx)(ip,{range:e.rangeId,children:n}):n})})})})}function Xs(){return(0,dx.useContext)(Wo)}var px=R($(),1),ju=R($(),1);function Qr(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(o){o(i)}),(n=e.get("*"))&&n.slice().map(function(o){o(t,i)})}}}var mx=R(q(),1),fx=Qr(),$r=(0,ju.createContext)({emitter:fx});$r.displayName="Events";function Ks(){return px.default.useContext($r).emitter}function CE({emitter:e,children:t}){return(0,mx.jsx)($r.Provider,{value:(0,ju.useMemo)(()=>({emitter:e}),[e]),children:t})}var Yr=R(q(),1);function yp(){return{VaultContext:(0,lr.useContext)(sr),ResourceContext:(0,lr.useContext)(Fs),SimpleViewerReactContext:(0,lr.useContext)(Wo),VisibleCanvasReactContext:(0,lr.useContext)(Ur),AuthRContext:(0,lr.useContext)(qr),SearchReactContext:(0,lr.useContext)(Ho),ReactEventContext:(0,lr.useContext)($r)}}function vp(e){return(0,Yr.jsx)(jr,{vault:e.bridge.VaultContext.vault||void 0,resources:e.bridge.ResourceContext,children:(0,Yr.jsx)(Ur.Provider,{value:e.bridge.VisibleCanvasReactContext,children:(0,Yr.jsx)(Wo.Provider,{value:e.bridge.SimpleViewerReactContext,children:(0,Yr.jsx)($r.Provider,{value:e.bridge.ReactEventContext,children:(0,Yr.jsx)(qr.Provider,{value:e.bridge.AuthRContext,children:(0,Yr.jsx)(Ho.Provider,{value:e.bridge.SearchReactContext,children:e.children})})})})})})}var qo=R($(),1);var On=R($(),1);var gx=R($(),1);function xp(){let t=Me().getStore();return(0,gx.useMemo)(()=>i=>t.dispatch(i),[t])}function yx(e){return typeof e!="string"&&e&&e.bindToVault}function Sp(){let e=Me(),t=(0,On.useRef)([]),i=xp(),n=(0,On.useMemo)(()=>`vault://annotation-page/${new Date().getTime()}/${Math.round(Math.random()*1e9).toString(16)}`,[]);(0,On.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(Mr.importEntities({entities:{AnnotationPage:{[c.id]:c}}}))},[n]);let o=Ne(c=>n&&c.iiif.entities.AnnotationPage[n]||null,[n]),a=(0,On.useCallback)((c,p)=>{if(n){if(yx(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"}),f=e.get({id:c,type:"Annotation"});m&&f&&(m.items.find(y=>y.id===f.id)||i(Mr.addReference({id:n,type:"AnnotationPage",key:"items",reference:{id:c,type:"Annotation"},index:p})))}},[n]),l=(0,On.useCallback)(c=>{n&&(yx(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(Mr.removeReference({id:n,type:"AnnotationPage",key:"items",reference:{id:c,type:"Annotation"}})))},[n]);return[o,{addAnnotation:a,removeAnnotation:l}]}var xx=R(q(),1),vx=(0,qo.createContext)(null);function wp(){let e=(0,qo.useContext)(vx);return[e.fullPage,{addAnnotation:e.addAnnotation,removeAnnotation:e.removeAnnotation}]}function bp({children:e}){let[t,{addAnnotation:i,removeAnnotation:n}]=Sp();return(0,xx.jsx)(vx.Provider,{value:(0,qo.useMemo)(()=>({fullPage:t,addAnnotation:i,removeAnnotation:n}),[t]),children:e})}var Qo=R(q(),1);function Sx({width:e,style:t,height:i,error:n,resetErrorBoundary:o}){return(0,Qo.jsxs)("div",{style:{width:e,height:i,minHeight:500,...t||{},background:"#f9f9f9"},children:[(0,Qo.jsx)("h3",{children:"Error occurred"}),(0,Qo.jsx)("p",{children:n.message}),(0,Qo.jsx)("button",{onClick:o,children:"Reset"})]})}var Vu=R($(),1),$o=(0,Vu.createContext)(null);function Pp(){return(0,Vu.useContext)($o)}var Gr=R($(),1),Cp=(0,Gr.createContext)(()=>{}),Ep=(0,Gr.createContext)(()=>{});function Pi(e,t,i,n,o=[]){let a=(0,Gr.useContext)(e==="portal"?Ep:Cp);(0,Gr.useEffect)(()=>(e!=="none"&&a(t,i,n),()=>{a(t,null)}),[t,e,a,...o])}var Yo=R($(),1);var wx=R($(),1);function De(e={},t=[]){let{id:i,selector:n}=e,o=qt(),a=i||o.canvas,l=Ne(c=>a?c.iiif.entities.Canvas[a]:void 0,[a]);return(0,wx.useMemo)(()=>{if(l)return n?n(l):l},[l,n,...t])}var Ap=(0,Yo.createContext)(()=>{});function bx(e){let t=De(),i=(0,Yo.useContext)(Ap);(0,Yo.useEffect)(()=>t&&t.id?(i(t.id,e),()=>i(t.id,-1)):()=>{},[t,e])}var bt=R(q(),1);function Px({children:e,errorFallback:t,outerContainerProps:i={},worldScale:n,...o}){let[a,l]=(0,Kt.useState)(),c=yp(),p=t||Sx,[m,f]=(0,Kt.useState)({}),y=Object.entries(m),[S,P]=(0,Kt.useState)({}),v=Object.entries(S),[x,E]=(0,Kt.useState)({}),C=(0,Kt.useMemo)(()=>n||Math.max(...Object.values(x)),[x]),T=(0,Kt.useMemo)(()=>({maxOverZoom:C||1,...o.runtimeOptions||{}}),[C,o.runtimeOptions]),A=(0,Kt.useCallback)((M,k)=>{E(O=>{if(k===-1){let{[M]:K,...U}=O;return U}return{...O,[M]:k}})},[]),N=(0,Kt.useCallback)((M,k,O)=>{f(({[M]:K,...U})=>k?{...U,[M]:{element:k,props:O}}:U)},[]),D=(0,Kt.useCallback)((M,k,O)=>{P(({[M]:K,...U})=>k?{...U,[M]:{element:k,props:O}}:U)},[]);return(0,bt.jsxs)(uu,{resetKeys:[],fallbackRender:M=>(0,bt.jsx)(p,{...o,...M}),children:[(0,bt.jsx)(sv,{...o,containerProps:{style:{position:"relative"},...o.containerProps||{}},htmlChildren:(0,bt.jsx)(bt.Fragment,{children:y.map(([M,{element:k,props:O}])=>(0,bt.jsx)(Kt.default.Fragment,{children:(0,bt.jsx)(k,{...O||{}})},M))}),onCreated:M=>{l(M),o.onCreated&&o.onCreated(M)},runtimeOptions:T,children:(0,bt.jsx)($o.Provider,{value:a,children:(0,bt.jsx)(Ap.Provider,{value:A,children:(0,bt.jsx)(Cp.Provider,{value:N,children:(0,bt.jsx)(Ep.Provider,{value:D,children:(0,bt.jsx)(vp,{bridge:c,children:(0,bt.jsx)(Ao.Provider,{value:o.mode||"explore",children:(0,bt.jsx)(bp,{children:e})})})})})})})}),(0,bt.jsx)("div",{children:v.map(([M,{element:k,props:O}])=>(0,bt.jsx)(Kt.default.Fragment,{children:(0,bt.jsx)(k,{...O||{}})},M))})]})}var Tp=R($(),1);function Zs(e=_n){return{addEventListener(t,i,n,o){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:o}]}),n},removeEventListener(t,i,n){t&&e.setMetaValue([t.id,"eventManager",i],o=>(o||[]).filter(a=>a.callback!==n))},getListenersAsProps(t,i){let n=typeof t=="string"?{id:t}:t;if(!n||!n.id)return{};let o=e.getResourceMeta(n.id,"eventManager"),a={};if(o&&n)for(let l of Object.keys(o))a[l]=c=>{let p=e.get(n);for(let{callback:m,scope:f}of o[l]||[])(!f||i&&f.indexOf(i)!==-1)&&m(c,p)};return a}}}function Js(e,t){let i=Me(),n=(0,Tp.useMemo)(()=>Zs(i),[i]),o=Ne(()=>e&&e.id?i.getResourceMeta(e.id,"eventManager"):null,[e]);return(0,Tp.useMemo)(()=>e?n.getListenersAsProps(e,t):{},[o,e,i,t])}var Cx=R($(),1);function Xr(e=_n){return{applyStyles(t,i,n){let o=typeof t=="string"?t:t.id;return e.setMetaValue([o,"styles",i],n)},getAppliedStyles(t){let i=typeof t=="string"?t:t.id;return e.getResourceMeta(i,"styles")}}}function Kr(e,t){let i=Me(),n=(0,Cx.useMemo)(()=>Xr(i),[i]);return Ne(()=>{if(!e)return null;let o=n.getAppliedStyles(e.id);return o?t?o[t]:o:void 0},[e,t])}var kx=R($(),1);var Mx=R($(),1);var EE=ah({"node_modules/.pnpm/parse-svg-path@0.1.2/node_modules/parse-svg-path/index.js"(e,t){"use strict";t.exports=o;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 o(c){var p=[];return c.replace(n,function(m,f,y){var S=f.toLowerCase();for(y=l(y),S=="m"&&y.length>2&&(p.push([f].concat(y.splice(0,2))),S="l",f=f=="m"?"l":"L");;){if(y.length==i[S])return y.unshift(f),p.push(y);if(y.length<i[S])throw new Error("malformed path data");p.push([f].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):[]}}}),AE=ah({"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 o=0,a=0,l=0,c=0;return n.map(function(p){p=p.slice();var m=p[0],f=m.toUpperCase();if(m!=f)switch(p[0]=f,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(f){case"Z":l=o,c=a;break;case"H":l=p[1];break;case"V":c=p[1];break;case"M":l=o=p[1],c=a=p[2];break;default:l=p[p.length-2],c=p[p.length-1]}return p})}}}),TE=function(){function e(t,i){var n=[],o=!0,a=!1,l=void 0;try{for(var c=t[Symbol.iterator](),p;!(o=(p=c.next()).done)&&(n.push(p.value),!(i&&n.length===i));o=!0);}catch(m){a=!0,l=m}finally{try{!o&&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")}}(),ea=Math.PI*2,Rp=function(t,i,n,o,a,l,c){var p=t.x,m=t.y;p*=i,m*=n;var f=o*p-a*m,y=a*p+o*m;return{x:f+l,y:y+c}},RE=function(t,i){var n=i===1.5707963267948966?.551915024494:i===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(i/4),o=Math.cos(t),a=Math.sin(t),l=Math.cos(t+i),c=Math.sin(t+i);return[{x:o-a*n,y:a+o*n},{x:l+c*n,y:c-l*n},{x:l,y:c}]},Ex=function(t,i,n,o){var a=t*o-i*n<0?-1:1,l=t*n+i*o;return l>1&&(l=1),l<-1&&(l=-1),a*Math.acos(l)},IE=function(t,i,n,o,a,l,c,p,m,f,y,S){var P=Math.pow(a,2),v=Math.pow(l,2),x=Math.pow(y,2),E=Math.pow(S,2),C=P*v-P*E-v*x;C<0&&(C=0),C/=P*E+v*x,C=Math.sqrt(C)*(c===p?-1:1);var T=C*a/l*S,A=C*-l/a*y,N=f*T-m*A+(t+n)/2,D=m*T+f*A+(i+o)/2,M=(y-T)/a,k=(S-A)/l,O=(-y-T)/a,K=(-S-A)/l,U=Ex(1,0,M,k),G=Ex(M,k,O,K);return p===0&&G>0&&(G-=ea),p===1&&G<0&&(G+=ea),[N,D,U,G]},_E=function(t){var i=t.px,n=t.py,o=t.cx,a=t.cy,l=t.rx,c=t.ry,p=t.xAxisRotation,m=p===void 0?0:p,f=t.largeArcFlag,y=f===void 0?0:f,S=t.sweepFlag,P=S===void 0?0:S,v=[];if(l===0||c===0)return[];var x=Math.sin(m*ea/360),E=Math.cos(m*ea/360),C=E*(i-o)/2+x*(n-a)/2,T=-x*(i-o)/2+E*(n-a)/2;if(C===0&&T===0)return[];l=Math.abs(l),c=Math.abs(c);var A=Math.pow(C,2)/Math.pow(l,2)+Math.pow(T,2)/Math.pow(c,2);A>1&&(l*=Math.sqrt(A),c*=Math.sqrt(A));var N=IE(i,n,o,a,l,c,y,P,x,E,C,T),D=TE(N,4),M=D[0],k=D[1],O=D[2],K=D[3],U=Math.abs(K)/(ea/4);Math.abs(1-U)<1e-7&&(U=1);var G=Math.max(Math.ceil(U),1);K/=G;for(var te=0;te<G;te++)v.push(RE(O,K)),O+=K;return v.map(function(Ie){var ye=Rp(Ie[0],l,c,E,x,M,k),ke=ye.x,ve=ye.y,We=Rp(Ie[1],l,c,E,x,M,k),Ye=We.x,ft=We.y,je=Rp(Ie[2],l,c,E,x,M,k),H=je.x,ge=je.y;return{x1:ke,y1:ve,x2:Ye,y2:ft,x:H,y:ge}})},ME=_E,kE=lh(EE(),1),OE=lh(AE(),1);function LE(e){let t=(0,kE.default)(e),i=(0,OE.default)(t),n,o=0,a=0,l=0,c=0,p,m,f=0,y=0,S=[];for(let P=0;P<i.length;P++){let v=i[P],x=v[0];switch(x){case"M":o=v[1],a=v[2];break;case"H":v=["L",v[1],a];break;case"V":v=["L",o,v[1]];break;case"S":{let E=f,C=y;(n==="C"||n=="S")&&(E+=E-l,C+=C-c),v=["C",E,C,v[1],v[2],v[3],v[4]]}break;case"T":n==="Q"||n=="T"?(p=f*2-p,m=y*2-m):(p=f,m=y),v=["Q",p,m,v[1],v[2]];break;case"Q":p=v[1],m=v[2];break;case"A":{let E=ME({px:f,py:y,cx:v[6],cy:v[7],rx:v[1],ry:v[2],xAxisRotation:v[3],largeArcFlag:v[4],sweepFlag:v[5]});if(!E.length)continue;for(let[C,T]of E.entries())v=["C",T.x1,T.y1,T.x2,T.y2,T.x,T.y],C<E.length-1&&S.push(v);v=v}break;case"Z":v=["L",o,a];break}n=x,f=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=f,c=y),S.push(v)}return S}function zE(e,t,i,n=1){return new Rx(e,t,i).subdivide(n)}function NE(e,t,i,n,o=1){return new BE(new Float64Array([e.x,e.y,t.x,t.y,i.x,i.y,n.x,n.y])).subdivide(o)}function FE(e){return e.x*e.x+e.y*e.y}function ta(e){return e/(1-.67+Math.pow(Math.pow(.67,4)+.25*e*e,.25))}function Go(e){return e*(1-.39+Math.sqrt(.39*.39+.25*e*e))}var Rx=class{constructor(e,t,i){ci(this,"start"),ci(this,"control"),ci(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:o,y:a}=this.end,l=2*i-e-o,c=2*n-t-a,p=(i-e)*l+(n-t)*c,m=(o-i)*l+(a-n)*c,f=(o-e)*c-(a-t)*l,y=p/f,S=m/f,P=Math.abs(f)/(Math.hypot(l,c)*Math.abs(S-y));return{x0:e,x2:o,scale:P,cross:f}}subdivide(e){let t=this.mapToBasic(),i=ta(t.x0),n=ta(t.x2),o=.5*Math.abs(n-i)*Math.sqrt(t.scale/e),a=Math.ceil(o),l=Go(i),c=Go(n),p=[0];for(let m=1;m<a;m++){let y=(Go(i+(n-i)*m/a)-l)/(c-l);p.push(y)}return p.push(1),p.map(m=>this.eval(m))}},BE=class Ix{constructor(t){ci(this,"c"),this.c=t}weightsum(t,i,n,o){let a=t*this.c[0]+i*this.c[2]+n*this.c[4]+o*this.c[6],l=t*this.c[1]+i*this.c[3]+n*this.c[5]+o*this.c[7];return{x:a,y:l}}eval(t){let i=1-t,n=i*i*i,o=3*i*i*t,a=3*i*t*t,l=t*t*t;return this.weightsum(n,o,a,l)}deriv(t){let i=1-t,n=-3*i*i,o=3*t*t,a=-6*t*i-n,l=6*t*i-o;return this.weightsum(n,a,l,o)}midpoint_quadbez(){let t=this.weightsum(-.25,.75,.75,-.25);return new Rx({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),o=this.eval(t),a=this.eval(i);n[0]=o.x,n[1]=o.y;let l=(i-t)/3,c=this.deriv(t);n[2]=o.x+l*c.x,n[3]=o.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 Ix(n)}subdivide(t){let i=.1*t,n=t-i,o=Math.sqrt(n),a=FE(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,E=(v+1)/l,C=this.subsegment(x,E).midpoint_quadbez(),T=C.mapToBasic(),A=ta(T.x0),N=ta(T.x2),D=Math.sqrt(T.scale),M=Math.abs(N-A)*D;if(Math.sign(T.x0)!=Math.sign(T.x2)){let k=o/D,O=o*Math.abs(N-A)/ta(k);M=Math.max(M,O)}c.push({quad:C,a0:A,a2:N,val:M}),p+=M}let m=.5*p/o,f=Math.ceil(m),y=[{x:this.c[0],y:this.c[1]}],S=0,P=0;for(let v=1;v<f;v++){let x=p*v/f;for(;S+c[P].val<x;)S+=c[P].val,P++;let E=c[P].a0,C=c[P].a2,T=Go(E),A=Go(C),N=E+(C-E)*(x-S)/c[P].val,M=(Go(N)-T)/(A-T);y.push(c[P].quad.eval(M))}return y.push({x:this.c[6],y:this.c[7]}),y}},DE=/&?(xywh=)?(pixel:|percent:|pct:)?([0-9]+(?:\.[0-9]+)?),([0-9]+(?:\.[0-9]+)?),([0-9]+(?:\.[0-9]+)?),([0-9]+(?:\.[0-9]+)?)/,Ax=/&?(t=)(npt:)?([0-9]+(\.[0-9]+)?)?(,([0-9]+(\.[0-9]+)?))?/,Tx=/^rgba\((\d+),(\d+),(\d+),([0-9.]+)\)$/;function Ln(e,{domParser:t,svgPreprocessor:i,iiifRenderingHints:n}={}){if(Array.isArray(e))return Di(e.reduce((o,a)=>{let{selector:l,selectors:c,iiifRenderingHints:p}=Ln(a,{domParser:t,svgPreprocessor:i,iiifRenderingHints:n});return l&&(o.selector||(o.selector=l),o.selectors.push(...c)),p&&(o.iiifRenderingHints=o.iiifRenderingHints||{type:"ImageApiSelector"},Object.assign(o.iiifRenderingHints,p)),o},{selector:null,selectors:[],iiifRenderingHints:n}));if(!e)return Di({selector:null,selectors:[],iiifRenderingHints:n});if(typeof e=="string"){let[o,a]=e.split("#");return a?Ln({type:"FragmentSelector",value:a},{svgPreprocessor:i,iiifRenderingHints:n,domParser:t}):Di({selector:null,selectors:[],iiifRenderingHints:n})}if(e.type){if(e.type==="PointSelector"&&(e.t||e.t===0)){let o={type:"TemporalSelector",temporal:{startTime:e.t}};return Di({selector:o,selectors:[o],iiifRenderingHints:n})}if(e.type==="PointSelector"&&e.x&&e.y){let o={type:"PointSelector",spatial:{x:e.x,y:e.y}};return Di({selector:o,selectors:[o],iiifRenderingHints:n})}}if(Uu(e)){let o=[];if(e.region){let a=Ln({type:"FragmentSelector",value:"xywh="+e.region},{domParser:t,svgPreprocessor:i,iiifRenderingHints:n});o.push(...a.selectors)}return Di({selector:o[0],selectors:o,iiifRenderingHints:n?{...n,...e}:e})}if(e.type==="FragmentSelector"){let o=DE.exec(e.value);if(o){let l={type:"BoxSelector",spatial:{unit:o[2]==="percent:"||o[2]==="pct:"?"percent":"pixel",x:parseFloat(o[3]),y:parseFloat(o[4]),width:parseFloat(o[5]),height:parseFloat(o[6])}},c=e.value.match(Ax);return c&&(l={type:"TemporalBoxSelector",spatial:l.spatial,temporal:{startTime:c[3]?parseFloat(c[3]):0,endTime:c[6]?parseFloat(c[6]):void 0}}),Di({selector:l,selectors:[l],iiifRenderingHints:n})}let a=e.value.match(Ax);if(a){let l={type:"TemporalSelector",temporal:{startTime:a[3]?parseFloat(a[3]):0,endTime:a[6]?parseFloat(a[6]):void 0}};return Di({selector:l,selectors:[l],iiifRenderingHints:n})}return Di({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 o=[],a,l,c=i?.(e.value)??e.value,p;if(t){let f=t.parseFromString(e.value,"image/svg+xml").querySelector("svg");if(!f)return console.warn(`Illegal SVG selector: ${e.value}`),Di({selector:null,selectors:[],iiifRenderingHints:n});let y=_x(f);y&&(o=y.points,p=y.shapeType,a=[Math.min(...o.map(S=>S[0])),Math.min(...o.map(S=>S[1])),Math.max(...o.map(S=>S[0])),Math.max(...o.map(S=>S[1]))],{style:l,svg:c}=UE(y.element)??{svg:c})}let m={type:"SvgSelector",svg:c,svgShape:p,style:l,points:o.length?o: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 Di({selector:m,selectors:[m],iiifRenderingHints:n})}return Di({selector:null,selectors:[],iiifRenderingHints:n})}function jE(e){let t=e.map(n=>n[0]).reduce((n,o)=>(n[o]+=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 _x(e){for(let t of Array.from(e.children))switch(t?.tagName.toLowerCase()){case"g":{let i=_x(t);if(i)return i}continue;case"path":{let i=t.getAttribute("d");if(!i)continue;let n=LE(i);return{element:t,points:VE(n),shapeType:jE(n)}}case"circle":{let i=parseFloat(t.getAttribute("cx")??"0"),n=parseFloat(t.getAttribute("cy")??"0"),o=parseFloat(t.getAttribute("r")??"0");if(!o)continue;let a=[];for(let l=0;l<=360;l+=12){let c=l*Math.PI/180;a.push([i+o*Math.cos(c),n+o*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"),o=parseFloat(t.getAttribute("rx")??"0"),a=parseFloat(t.getAttribute("ry")??"0");if(!o&&!a)continue;let l=[];for(let c=0;c<=360;c+=12){let p=Math.tan(c/360*Math.PI),m=o*(1-p**2)/(1+p**2),f=a*2*p/(1+p**2);l.push([i+m,n+f])}return{element:t,points:l,shapeType:"ellipse"}}case"line":{let i=parseFloat(t.getAttribute("x0")??"0"),n=parseFloat(t.getAttribute("y0")??"0"),o=parseFloat(t.getAttribute("x1")??"0"),a=parseFloat(t.getAttribute("y1")??"0");if(i===o&&n===a)continue;return{element:t,points:[[i,n],[o,a]],shapeType:"polyline"}}case"polygon":case"polyline":{let i=t.getAttribute("points")?.split(" ").map(o=>o.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"),o=parseFloat(t.getAttribute("width")??"0"),a=parseFloat(t.getAttribute("height")??"0");if(!o||!a)continue;return{element:t,points:[[i,n],[i+o,n],[i+o,n+a],[i,n+a],[i,n]],shapeType:"rect"}}default:continue}return null}function VE(e){let t=[];for(let i=0;i<e.length;i++){let n=t[t.length-1]??[0,0],o=e[i];switch(o[0]){case"M":case"L":t.push([o[1],o[2]]);continue;case"C":t.push(...NE({x:n[0],y:n[1]},{x:o[1],y:o[2]},{x:o[3],y:o[4]},{x:o[5],y:o[6]}).map(a=>[a.x,a.y]).slice(1));continue;case"Q":t.push(...zE({x:n[0],y:n[1]},{x:o[1],y:o[2]},{x:o[3],y:o[4]}).map(a=>[a.x,a.y]).slice(1));continue}}return t}function UE(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=Tx.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=Tx.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 Uu(e){return!!e&&e.type==="iiif:ImageApiSelector"&&e.type==="iiif:ImageApiSelector"}function Di(e){if(e.iiifRenderingHints){let t=e.iiifRenderingHints;if(t.rotation){let i=Hu(`${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 Hu(e){let t=parseFloat(e);return t&&e.startsWith("!")&&(t=360-t),t&&(t=t%360),t!==t?0:t||0}function Ot(e,t={}){if(Array.isArray(e))return Ot(e[0]);if(typeof e=="string"){let[i,n]=e.split("#");return n?Ot({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 Ot(e.items[0]);if(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?Ln(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?Ot({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 ia(e={},t=[]){let{id:i,selector:n}=e,o=qt(),a=Me(),l=i||o.annotation,c=Ne(m=>l?m.iiif.entities.Annotation[l]:void 0,[l]),p=Ne(m=>c&&c.body?c.body.map(f=>f?f.type==="SpecificResource"?{...f,source:a.get(f)}:f?m.iiif.entities[f.type][f.id]:null:null).filter(Boolean):[],[c]);return(0,Mx.useMemo)(()=>{if(!c)return;let m={...c,body:p,target:Ot(c.target,{typeMap:a.getState().iiif.mapping})};return n?n(m):m},[c,n,p,...t])}var Ox=R(q(),1),Wu=({id:e,style:t,className:i,interactive:n})=>{let o=ia({id:e}),a=Kr(o,"atlas"),l=Kr(o,"html"),c=Js(o,["atlas"]),p=De(),m=(0,kx.useMemo)(()=>vv(t,a),[t,a]);return p&&o&&o.target&&o.target.selector&&o.target.selector.type==="BoxSelector"&&o.target.source&&(o.target.source.id===p.id||o.target.source===p.id)?(0,Ox.jsx)(fv,{id:o.id,isEditing:!0,region:o.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 zx=R($(),1);var Lx=R($(),1);function Ip(e={},t=[]){let{id:i,selector:n}=e,o=qt(),a=i||o.annotationPage,l=Ne(c=>a?c.iiif.entities.AnnotationPage[a]:void 0,[a]);return(0,Lx.useMemo)(()=>{if(l)return n?n(l):l},[l,...t])}var _p=R(q(),1),na=({className:e,page:t})=>{let i=Ip({id:t.id})||t,n=Kr(i,"atlas"),o=Kr(i,"html");return Ne(a=>i.id?a.iiif.entities.AnnotationPage[i.id]:null,[]),(0,_p.jsx)(zx.Fragment,{children:i.items?.map(a=>(0,_p.jsx)(Wu,{id:a.id,style:n,className:o?.className||e},a.id))})};var ra=R($(),1);var nn=R($(),1),tn=R(q(),1),Fx=nn.default.createContext("en"),Bx=nn.default.createContext({}),Dx=nn.default.createContext(null);function HE(e){return(0,tn.jsx)(Bx.Provider,{value:e.translations,children:e.children})}function WE(e){return(0,tn.jsx)(Fx.Provider,{value:e.language,children:e.children})}function qE(e){return(0,tn.jsx)(Dx.Provider,{value:e.convert,children:e.children})}function Mp(){return nn.default.useContext(Dx)}function qu(){return nn.default.useContext(Fx)}function kp(){return nn.default.useContext(Bx)}function Nx(e){return e.indexOf("-")!==-1?e.slice(0,e.indexOf("-")):e}function jx({as:e,language:t,children:i,viewingDirection:n,...o}){let a=qu();return(0,nn.useMemo)(()=>Nx(a)===Nx(t),[a,t])?e?(0,tn.jsx)(e,{...o,children:i}):(0,tn.jsx)("span",{...o,children:i}):e?(0,tn.jsx)(e,{...o,lang:t,dir:n,children:i}):(0,tn.jsx)("span",{...o,lang:t,dir:n,children:i})}function Vx(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 o of i)if(t.indexOf(o)!==-1)return o;return t.indexOf("none")!==-1?"none":t.indexOf("@none")!==-1?"@none":t[0]}var Ux=(e,t=[])=>{let i=qu();return(0,nn.useMemo)(()=>{let n=e();return Vx(i,n,[])},[i,...t])};function Zr(e,t,i,n){return t?i?i(e[t]||t,n||"none"):e[t]||t:""}function Hx(e,t,i=`
75
+ `,n={}){let o=Mp(),a=Ux(()=>Object.keys(e||{}),[e]);return[(0,nn.useMemo)(()=>{if(!e)return Zr(n,t,o)||"";if(typeof e=="string")return Zr(n,e,o);let l=a?e[a]:void 0;return l?typeof l=="string"?l:l.map(c=>Zr(n,c,o,a)).join(i):""},[a,t,e]),a]}function QE(){let e=qu(),t=kp(),i=Mp();return function(o,a="",l=`
76
+ `,c=t){let p=Object.keys(o||{}),m=Vx(e,p,[]);if(!o)return Zr(c,a,i)||"";if(typeof o=="string")return Zr(c,o,i);let f=m?o[m]:void 0;return f?typeof f=="string"?Zr(c,f,i,m):f.map(y=>Zr(c,y,i,m)).join(typeof l<"u"?l:`
77
+ `):""}}function Ci({as:e,defaultText:t,enableDangerouslySetInnerHTML:i,children:n,separator:o,...a}){let l=kp(),[c,p]=Hx(n,t,o,l);return p?(0,tn.jsx)(jx,{...a,as:e,language:p,title:i?void 0:c,dangerouslySetInnerHTML:i?{__html:c}:void 0,children:i?void 0:c}):e?(0,tn.jsx)(e,{...a,children:c}):(0,tn.jsx)("span",{...a,title:i?void 0:c,dangerouslySetInnerHTML:i?{__html:c}:void 0,children:i?void 0:c})}var ji=R(q(),1);function $E({resource:e,heading:t,note:i,extra:n}){return n?(0,ji.jsx)(vn,{target:{x:0,y:0,width:n.target?.spatial.width,height:n.target?.spatial.height},backgroundColor:"#333",relative:!0,children:(0,ji.jsx)("div",{style:{display:"flex",alignContent:"center",justifyContent:"center",alignItems:"center",height:"100%",width:"100%",background:"#444",color:"#BBB"},children:(0,ji.jsxs)("div",{children:[(0,ji.jsx)(Ci,{children:t||"Not authorised"}),i&&(0,ji.jsx)("p",{children:(0,ji.jsx)(Ci,{children:i})}),(0,ji.jsx)("p",{children:e.id||e["@id"]||"unknown"})]})})}):null}function Wx({image:e,thumbnail:t,crop:i,enableSizes:n}){if(!pp()){let a=e.service,l=a.width||e.width||0,c=a.height||e.height||0;return(0,ji.jsx)(xh,{tiles:{id:a.id||a["@id"]||"unknown",height:c,width:l,imageService:a},enableSizes:n,x:0,y:0,width:e.target?.spatial.width,height:e.target?.spatial.height,crop:i})}return(0,ji.jsx)(fp,{resource:e.service,errorComponent:$E,extra:e,children:a=>{let l=a.width||e.width||0,c=a.height||e.height||0;return(0,ji.jsx)(xh,{tiles:{id:a.id||a["@id"]||"unknown",height:c,width:l,imageService:a},enableSizes:n,x:0,y:0,width:e.target?.spatial.width,height:e.target?.spatial.height,crop:i})}},e.id)}var Jr=R(q(),1);function Xo({id:e,image:t,thumbnail:i,isStatic:n,x:o=0,y:a=0,children:l,selector:c,onClick:p,enableSizes:m}){let f=(0,ra.useMemo)(()=>{if(!(!c||c.spatial.x===0&&c.spatial.y===0))return c.spatial},[c]);return(0,Jr.jsx)("world-object",{x:o+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,Jr.jsxs)(ra.Fragment,{children:[(0,Jr.jsx)(Wx,{image:t,thumbnail:i,crop:f,enableSizes:m}),l]},"service"):(0,Jr.jsxs)(ra.Fragment,{children:[(0,Jr.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:f}),l]},"no-service")},e+(t.service?"server":"no-service"))}var Sn=R($(),1);var Ko=R($(),1);function qx(e){return e.type==="SpecificResource"?[e.source,{selector:e.selector}]:[e,{selector:null}]}function Op(e=_n){function t(o){let a=o?typeof o=="string"?e.get(o):o: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(o,a=[]){let l=Array.isArray(o)?o:t(o),c=[],p={items:[],type:"complex-choice"},m=[];for(let f of l){if(f.type!=="Annotation")throw new Error("getPaintables() accept either a canvas or list of annotations");let y=Array.from(Array.isArray(f.body)?f.body:[f.body]);for(let S of y){let[P,{selector:v}]=qx(S),x=e.get(P),E=(x.type||"unknown").toLowerCase();if(E==="choice"){let C=e.get(x.items,{parent:x.id}),T=a.length?a.map(A=>C.find(N=>N.id===A)).filter(Boolean):[C[0]];T.length===0&&T.push(C[0]),p.items.push({type:"single-choice",items:C.map(A=>({id:A.id,label:A.label,selected:T.indexOf(A)!==-1})),label:P.label}),y.push(...T);continue}c.indexOf(E)===-1&&c.push(E),m.push({type:E,annotationId:f.id,resource:x,target:f.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(o){let{choice:a}=i(o);return a}return{getAllPaintingAnnotations:t,getPaintables:i,extractChoices:n}}function Qx(e,t,i=[],n=!1,o=[]){if(o.length&&(t=t.filter(l=>o.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,f=m?t.indexOf(m):-1;if(f!==-1)return t[f]}}return t.indexOf("none")!==-1?"none":t.indexOf("@none")!==-1?"@none":t[0]}function Lp(e,t,i={}){let{strictFallback:n=!1,defaultText:o="",separator:a=`
78
+ `,fallbackLanguages:l=[],closest:c,skipLanguages:p}=i,m=Object.keys(e||{}),f=c?t:Qx(t,m,l,n,p);if(!e)return o;if(typeof e=="string")return e;let y=f?e[f]:void 0;if(y&&f){if(typeof y=="string")return y;if(y.length===1&&y[0]===""){let S=i.skipLanguages||[];return Lp(e,t,{...i,skipLanguages:[...S,f]})}return y.join(a)}return""}function zp(e,t={}){return Lp(e,t.language||(typeof navigator<"u"?navigator.language:"en"),t)}function YE(e){return e.type==="SpecificResource"?[e.source,{selector:e.selector}]:[e,{selector:null}]}function oa(e,t){let{selector:i,source:n}=Ot(t);if(n.id!==e.id)return[null,n];let o={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:o.spatial}:i:null,n]}var Np={makeChoice:()=>{}},sa={type:"unknown"},ot=e=>({type:"unknown",reason:e,annotations:{pages:[]}}),Fp=(e,t)=>({type:"empty",width:e,height:t,annotations:{pages:[]},image:null,images:[]});var aa=R($(),1);function GE(e,t){let i=e?.iiif?.meta[t];return i?i.annotationPageManager:null}function $x(e,t){return Ne(i=>{let n=[];if(!e)return n;let o=Object.keys(i.iiif.entities.AnnotationPage);for(let a of o)if(!t||t.indexOf(a)!==-1){let l=GE(i,a);l&&l.views&&l.views[e]&&n.push(a)}return n},[e,t])}function Bp({canvas:e,manifest:t,all:i,canvases:n}){let o=[];if(t)for(let a of t.annotations)o.indexOf(a.id)===-1&&o.push(a.id);if(i){if(n&&n.length)for(let a of n)for(let l of a.annotations)o.indexOf(l.id)===-1&&o.push(l.id)}else if(e)for(let a of e.annotations)o.indexOf(a.id)===-1&&o.push(a.id);return o}function XE(e,t){let i=e?.iiif?.meta[t];return i?i.annotationPageManager:null}function la(e,t={}){let i=Me(),n=gt(),o=De(),a=Hr(),l=(0,aa.useMemo)(()=>Bp({all:t.all,manifest:n,canvas:o,canvases:a}),[t.all,o,a,n]),c=$x(e,t.all?void 0:l),p=(0,aa.useCallback)(f=>{e&&i.setMetaValue([f,"annotationPageManager","views"],y=>y&&!y[e]?y:{...y||{},[e]:!1})},[e,i]),m=(0,aa.useCallback)((f,y={})=>{if(!e)return;let S=i.getState(),P=[];if(y?.deselectOthers){let v=Object.keys(S.iiif.entities.AnnotationPage);for(let x of v){let E=XE(S,x);E&&E.views&&E.views[e]&&P.push(x)}}for(let v of P)p(v);i.setMetaValue([f,"annotationPageManager","views"],v=>v&&v[e]?v:{...v||{},[e]:!0})},[e,p,i]);return{availablePageIds:l,enabledPageIds:c,setPageEnabled:m,setPageDisabled:p}}function Dp(e,t){return Ne((i,n)=>n.get(e.map(o=>({id:o,type:t}))),[e,t])}var ur=R($(),1);var Qu=R($(),1);var Yx=Qu.default.createContext(new bo);function zn(){return(0,Qu.useContext)(Yx)}function jp(){let e=zn(),[t,i]=(0,ur.useState)({}),n=(0,ur.useRef)(!1);return(0,ur.useEffect)(()=>()=>{n.current=!0},[]),[(0,ur.useCallback)((a,{height:l,width:c})=>{if(a){let p=a.id||a["@id"],m=e.loadServiceSync({id:p,width:a.width||c,height:a.height||l,source:a});m?a=m:t[p]||(n.current||i(f=>({...f,[p]:"loading"})),e.loadService({id:p,width:a.width||c,height:a.height||l}).then(()=>{n.current||i(f=>({...f,[p]:"done"}))}))}return a},[e,t]),t]}var to=R($(),1);function eo(e={}){let t=ia(),i=De(e.canvasId?{id:e.canvasId}:void 0);return Ne((n,o)=>{if(!i)return[];if(t&&e.enableSingleAnnotation)return[t];let a=o.get(i.items),l=[];for(let c of a)l.push(...o.get(c.items));return l},[i])}function Vp(e,t=[]){let i=Me(),n=(0,to.useMemo)(()=>Op(i),[]),o=eo({enableSingleAnnotation:e?.enableSingleAnnotation}),[a,l]=(0,to.useState)(e?.defaultChoices||[]),c=(0,to.useMemo)(()=>n.getPaintables(o,a),[i,o,a,...t]),m={makeChoice:(0,to.useCallback)((f,{deselectOthers:y=!0,deselect:S=!1}={})=>{c.choice&&l(P=>{if(S){let x=P.filter(E=>E!==f);if(x.length===0){let E=c.items[0].resource.id;return E?[E]:[]}return x}if(y)return[f];let v=[...P];if(v.length===0&&c.items.length){let x=c.items[0].resource.id;x&&v.push(x)}return P.indexOf(f)!==-1?P:[...P,f]})},[c.choice])};return[c,m]}var KE=["model/gltf-binary"];function Up(e,t){let n=t.items[0].resource;return n.format?KE.indexOf(n.format)===-1?ot(`3D format: ${n.format} is unsupported`):{type:"3d-model",model:n}:ot("Unknown format")}function Gx(e,t){if(!e.duration)return ot("No duration on canvas");if(t.items.length>1)return ot("Only one audio source supported");let i=t.items[0]?.resource;return i?i.format?{type:"media",media:{annotationId:t.items[0].annotationId,duration:e.duration,url:i.id,type:"Sound",target:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}},format:i.format,selector:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}}},annotations:{pages:[]}}:ot("Audio does not have format"):ot("Unknown audio")}function ua(e,t,i){let n=[];for(let o of t.items){let a=o.resource&&o.resource.type==="SpecificResource"?o.resource.source:o.resource;if(!a.id)return ot("No resource Identifier");let l;if(a.service){let v=Ir(a);v[0]&&(l=i(v[0],e))}let c={type:"BoxSelector",spatial:{x:0,y:0,width:Number(e.width),height:Number(e.height)}},[p,m]=oa(e,o.target);if(!(m.id===e.id||decodeURIComponent(m.id||"")===(e.id||"")))continue;let f=o.resource.width&&o.resource.height?{type:"BoxSelector",spatial:{x:0,y:0,width:o.resource.width,height:o.resource.height}}:void 0,y=o.resource.type==="SpecificResource"?Ot(o.resource):null;if(o.selector){let v=Ot({type:"SpecificResource",source:o.resource,selector:o.selector});v&&(y=v)}let S=y&&y.selector&&(y.selector.type==="BoxSelector"||y.selector.type==="TemporalBoxSelector")?{type:"BoxSelector",spatial:{x:y.selector.spatial.x,y:y.selector.spatial.y,width:y.selector.spatial.width,height:y.selector.spatial.height}}:void 0;l&&!l.id&&(l.id=l["@id"]);let P={id:a.id,type:"Image",annotationId:o.annotationId,width:Number(p||S?a.width:e.width),height:Number(p||S?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:S||{type:"BoxSelector",spatial:{x:0,y:0,width:Number(e.width),height:Number(e.height)}}};n.push(P)}return{type:"images",image:n[0],images:n,choice:t.choice}}function Xx(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(o=>Xx(o,t,n))}return t}function ca(e,t){let i=[];return t.items.forEach(n=>{if(n.resource){let[o]=oa(e,n.target);i.push({type:"Text",annotationId:n.annotationId,text:Xx(n.resource),target:o})}}),{type:"textual-content",items:i}}var ZE=/^.*(?:(?:youtu\.be\/|v\/|vi\/|u\/\w\/|embed\/|shorts\/)|(?:(?:watch)?\?vi?=|&vi?=))([^#&?]*).*/;function da(e,t){let i=t.items.filter(f=>f.type==="video"),n=!1;if(e.duration||(n=!0),i.length>1)return ot("Only one video source supported");let o=i[0]?.resource,a=!!(o.service||[]).find(f=>(f.profile||"").includes("youtube.com"));if(!a&&n)return ot("Video does not have duration");if(!o)return ot("Unknown video");if((!o.format||o.format==="text/html")&&!a)return ot("Video does not have format");let l=t.items[0],c={annotationId:t.items[0].annotationId,duration:e.duration,url:o.id,type:"Video",target:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}},format:o.format,selector:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}}},p=Ot(l.target);p.selector&&p.selector.type==="TemporalBoxSelector"&&(c.target=p.selector);let{selector:m}=Ln(l.selector);if(m===null){let f=c.target.temporal.startTime,S=(c.target.temporal.endTime||e.duration)-f;c.selector={type:"TemporalSelector",temporal:{startTime:0,endTime:S}}}else m.type==="TemporalSelector"&&(c.selector=m);if(a){c.type="VideoYouTube";let f=o.id.match(ZE);if(!f[1])return ot("Video is not known youtube video");c.youTubeId=f[1]}return{type:"media",media:c,annotations:{pages:[]}}}function Hp(e,t,i){let n={type:"complex-timeline",items:[],keyframes:[],duration:e.duration||0},o={type:"complex-choice",items:[]};function a(p){p.choice&&(p.choice.type==="complex-choice"?o.items.push(...p.choice.items):o.items.push(p.choice))}for(let p of t.items){if(p.type==="image"){let m=ua(e,{choice:null,allChoices:null,types:["image"],items:[p]},i);if(m.type==="images"){a(m),n.items.push(m.image);let f={id:m.image.annotationId,type:"enter",resourceType:"image",time:m.image.target?.temporal?.startTime||0};n.keyframes.push(f);let y={id:m.image.annotationId,type:"exit",resourceType:"image",time:m.image.target?.temporal?.endTime||e.duration||0};n.keyframes.push(y)}}if(p.type==="textualbody"){let m=ca(e,{choice:null,allChoices:null,types:["textualbody"],items:[p]});if(m.type==="textual-content"){a(m);let f=m.items[0];n.items.push(f);let y=f.target,S={id:f.annotationId,type:"enter",resourceType:"text",time:y.temporal?.startTime||0};n.keyframes.push(S);let P={id:f.annotationId,type:"exit",resourceType:"text",time:y.temporal?.endTime||e.duration||0};n.keyframes.push(P)}}if(p.type==="video"){let m=da(e,{choice:null,allChoices:null,types:["video"],items:[p]});if(m.type==="media"){a(m);let f=m.media;n.items.push(f);let y={id:f.annotationId,type:"enter",resourceType:"video",time:f.target?.temporal?.startTime||0};n.keyframes.push(y);let S={id:f.annotationId,type:"exit",resourceType:"video",time:f.target?.temporal?.endTime||e.duration||0};n.keyframes.push(S)}}}n.keyframes.sort((p,m)=>p.time-m.time);let l=[],c=[];for(let p of n.keyframes){if(p.resourceType==="image"||p.resourceType==="text"){c.push(p);continue}if(p.type==="enter"){l.length===0&&(p.isPrime=!0),l.push(p),c.push(p);continue}if(p.type==="exit"&&(c.push(p),l=l.filter(m=>m.id!==p.id),l.length!==0)){let m=l[0],f={id:m.id,type:"change",isPrime:!0,resourceType:m.resourceType,time:p.time};c.push(f)}}return n.keyframes=c,o.items.length&&(n.choice=o),n}function Wp({canvas:e,paintables:t,supports:i,loadImageService:n}){if(!e)return sa;if(t.types.length===0)return i.indexOf("empty")!==-1?Fp(e.width,e.height):sa;if(t.types.length!==1)if(t.types.length===2&&t.types.indexOf("text")!==-1)t.types=t.types.filter(a=>a!=="text");else return i.indexOf("complex-timeline")===-1?ot("Complex timeline not supported"):Hp(e,t,n);let o=t.types[0];return o==="image"?i.indexOf("images")===-1?ot("Image not supported"):ua(e,t,n):o==="Model"||o==="model"?i.indexOf("3d-model")===-1?ot("3D not supported"):Up(e,t):o==="textualbody"?i.indexOf("textual-content")===-1?ot("Textual content not supported"):ca(e,t):o==="sound"||o==="audio"?i.indexOf("media")===-1?ot("Media not supported"):Gx(e,t):o==="video"?i.indexOf("media")===-1?ot("Media not supported"):da(e,t):sa}function qp(e){let t=gt(),i=De(),n=Me(),o=Ks(),a=e?.emitter||o,[l,c]=jp(),{enabledPageIds:p}=la(e?.annotationPageManagerId||t?.id||i?.id,{all:!1}),m=Dp(p,"AnnotationPage"),f=e?.strategies||["empty","images","media","textual-content","complex-timeline"],[y,S]=Vp(e,[c]);(0,Ko.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 P=(0,Ko.useMemo)(()=>Wp({canvas:i,paintables:y,supports:f,loadImageService:l}),[i,y,n,S.makeChoice]);return(0,Ko.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,Ko.useMemo)(()=>P.type==="unknown"?[P,Np]:[{...P,annotations:{pages:m}},S],[P,m])}var cr=R($(),1);var Kx=R($(),1),Qp=(e,t=[])=>{let i=Me();(0,Kx.useEffect)(()=>{e(i)},[i,...t])};function io(e,t,{canvasId:i,manifestId:n}={}){let o=Me(),a=zn(),l=(0,cr.useMemo)(()=>oh(o,{imageServiceLoader:a}),[o,a]),[c,p]=(0,cr.useState)(),m=gt(n?{id:n}:void 0),f=De(i?{id:i}:void 0),y=f||m,S=(0,cr.useRef)(!1);if((0,cr.useEffect)(()=>(S.current=!1,()=>{S.current=!0}),[]),!y)throw new Error("Must be called under a manifest or canvas context.");return Qp(P=>{l.getBestThumbnailAtSize(y,e,t).then(v=>{v.best&&!S.current&&p(v.best)})},[y]),c}var yt=R($(),1);function JE(e){return{isMuted:!1,playRequested:!1,isPlaying:!1,isFinished:!1,volume:100,duration:e}}function eA(e,t){switch(t.type){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 $u(e){let t=Math.round(e);return`${Math.floor(t/60)}:${`${t%60}`.padStart(2,"0")}`}function no(e){let[t,i]=(0,yt.useReducer)(eA,JE(e.duration)),n=(0,yt.useRef)(null),o=(0,yt.useRef)(null),a=(0,yt.useRef)(null),l=(0,yt.useRef)(!1),c=(0,yt.useCallback)(()=>{o.current&&n.current&&(o.current.innerHTML=$u(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,yt.useCallback)(()=>{n.current&&(i({type:"PLAY_REQUESTED"}),n.current.play().then(()=>{i({type:"PLAY"})}),c())},[c]),m=(0,yt.useCallback)(()=>{n.current&&(n.current.duration>0&&n.current.paused?p():f())},[c]),f=(0,yt.useCallback)(()=>{n.current&&(n.current.pause(),i({type:"PAUSE"}),c())},[c]),y=(0,yt.useCallback)(()=>{n.current&&(n.current.muted=!n.current.muted,i(n.current.muted?{type:"MUTE"}:{type:"UNMUTE"}))},[]),S=(0,yt.useCallback)(()=>{n.current&&(n.current.muted=!0,i({type:"MUTE"}))},[]),P=(0,yt.useCallback)(()=>{n.current&&(n.current.muted=!1,i({type:"UNMUTE"}))},[]),v=(0,yt.useCallback)(C=>{n.current&&(n.current.muted=!1,n.current.volume=C/100,i({type:"SET_VOLUME",volume:C}))},[]),x=(0,yt.useCallback)(C=>{n.current&&(n.current.currentTime=Math.max(0,Math.min(C*e.duration,e.duration)),c())},[]),E=(0,yt.useCallback)(C=>{n.current&&(n.current.currentTime=Math.max(0,Math.min(C,e.duration)),c())},[]);return(0,yt.useEffect)(()=>{let C=setInterval(()=>{c()},350);return()=>clearInterval(C)},[c,e.duration]),(0,yt.useEffect)(()=>{let C=()=>{i({type:"FINISHED"})},T=n.current;return T?.addEventListener("ended",C),()=>T?.removeEventListener("ended",C)},[]),[{element:n,currentTime:o,progress:a},t,{play:p,pause:f,playPause:m,mute:S,unmute:P,toggleMute:y,setVolume:v,setDurationPercent:x,setTime:E}]}var dr=R($(),1),Yu=R(q(),1),Zx=(0,dr.createContext)(null),Jx=(0,dr.createContext)(null),eS=(0,dr.createContext)(null);function tA(){let e=(0,dr.useContext)(Zx);if(!e)throw new Error("Ctx not found");return e}function iA(){let e=(0,dr.useContext)(Jx);if(!e)throw new Error("Ctx not found");return e}function nA(){let e=(0,dr.useContext)(eS);if(!e)throw new Error("Ctx not found");return e}function ha({actions:e,state:t,children:i,currentTime:n,progress:o,element:a}){return(0,Yu.jsx)(eS.Provider,{value:{currentTime:n,progress:o,element:a},children:(0,Yu.jsx)(Jx.Provider,{value:e,children:(0,Yu.jsx)(Zx.Provider,{value:t,children:i})})})}var tS=R($(),1);function pa(){let e=gt(),t=De();return(0,tS.useMemo)(()=>{if(!e||!t||!e.start)return null;let i=Ot(e.start);return!i||i.source.id!==t.id||!i||!i.selector||i.selector.type!=="TemporalSelector"?null:i.selector.temporal},[e,t])}var Xu=R(q(),1);function $p({media:e,startTime:t,children:i}){let[{element:n,currentTime:o,progress:a},l,c]=no({duration:e.duration}),p=t?`${e.url}#t=${t}`:e.url;return(0,Xu.jsxs)(ha,{state:l,actions:c,currentTime:o,progress:a,element:n,children:[(0,Xu.jsx)("audio",{ref:n,src:p}),i]})}function Gu({media:e,mediaControlsDeps:t,children:i}){let n=pa();return Pi("portal","audio",$p,{media:e,startTime:n?n.startTime:null,children:i},[e,n,...t||[]]),null}var fa=R(q(),1);function Yp({element:e,media:t,startTime:i,playPause:n,poster:o}){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:`
79
79
  .video-container {
80
80
  position: absolute;
81
81
  top: 0;
@@ -88,7 +88,7 @@ No matching component was found for:
88
88
  justify-content: center;
89
89
  pointer-events: visible;
90
90
  }
91
- `}),(0,la.jsx)("video",{poster:o,ref:e,src:l,style:{width:"100%",objectFit:"contain"}})]})}function qu({media:e,mediaControlsDeps:t,children:i,videoComponent:n=Vp}){let o=De(),a=aa(),l=o&&o.placeholderCanvas&&o.placeholderCanvas.id||void 0,c=Zr({},!1,{canvasId:l}),[{element:p,currentTime:m,progress:f},y,w]=Jr({duration:e.duration});return Ji("overlay","video-element",n,{element:p,media:e,playPause:w.playPause,poster:c?.id,startTime:a?a.startTime:null},[c]),Ji("portal","custom-controls",sa,{state:y,actions:w,currentTime:m,progress:f,element:p,children:i},[m,y,e,...t||[]]),null}var ur=A(Y(),1);function Up({model:e}){return(0,ur.jsxs)(ur.Fragment,{children:[(0,ur.jsx)("style",{children:`
91
+ `}),(0,fa.jsx)("video",{poster:o,ref:e,src:l,style:{width:"100%",objectFit:"contain"}})]})}function Ku({media:e,mediaControlsDeps:t,children:i,videoComponent:n=Yp}){let o=De(),a=pa(),l=o&&o.placeholderCanvas&&o.placeholderCanvas.id||void 0,c=io({},!1,{canvasId:l}),[{element:p,currentTime:m,progress:f},y,S]=no({duration:e.duration});return Pi("overlay","video-element",n,{element:p,media:e,playPause:S.playPause,poster:c?.id,startTime:a?a.startTime:null},[c]),Pi("portal","custom-controls",ha,{state:y,actions:S,currentTime:m,progress:f,element:p,children:i},[m,y,e,...t||[]]),null}var hr=R(q(),1);function Gp({model:e}){return(0,hr.jsxs)(hr.Fragment,{children:[(0,hr.jsx)("style",{children:`
92
92
  .model-container {
93
93
  position: absolute;
94
94
  top: 0;
@@ -101,7 +101,7 @@ No matching component was found for:
101
101
  justify-content: center;
102
102
  pointer-events: visible;
103
103
  }
104
- `}),(0,ur.jsx)("div",{className:"model-container",children:(0,ur.jsx)("model-viewer",{"interaction-prompt":"none",style:{width:"100%",height:"100%"},"camera-controls":"","ar-status":"not-presenting",src:e.id})})]})}function Qu({model:e,name:t}){return Ji("overlay",`model-${t}`,Up,{model:e},[e]),null}var Yx=A(Y(),1);function Yu({style:e}){let t=De();return!t||!t.height||!t.width?null:(0,Yx.jsx)("box",{interactive:!1,target:{x:0,y:0,width:Number(t.width),height:Number(t.height)},style:e})}var Hp=A(Y(),1);function Gu(e){let t=De();return!t||!t.placeholderCanvas?null:(0,Hp.jsx)(Ni,{canvas:t.placeholderCanvas.id,children:(0,Hp.jsx)(Yo,{renderViewerControls:e.renderViewerControls})})}var Gx=A(q(),1),ua=A(Y(),1);function QE({element:e,media:t,playPause:i}){let n=(0,Gx.useRef)(null);return t.youTubeId?(0,ua.jsxs)("div",{className:"video-container",part:"video-container",onClick:i,children:[(0,ua.jsx)("style",{children:`
104
+ `}),(0,hr.jsx)("div",{className:"model-container",children:(0,hr.jsx)("model-viewer",{"interaction-prompt":"none",style:{width:"100%",height:"100%"},"camera-controls":"","ar-status":"not-presenting",src:e.id})})]})}function Zu({model:e,name:t}){return Pi("overlay",`model-${t}`,Gp,{model:e},[e]),null}var iS=R(q(),1);function Ju({style:e}){let t=De();return!t||!t.height||!t.width?null:(0,iS.jsx)("box",{interactive:!1,target:{x:0,y:0,width:Number(t.width),height:Number(t.height)},style:e})}var Xp=R(q(),1);function ec(e){let t=De();return!t||!t.placeholderCanvas?null:(0,Xp.jsx)(Bi,{canvas:t.placeholderCanvas.id,children:(0,Xp.jsx)(Zo,{renderViewerControls:e.renderViewerControls})})}var nS=R($(),1),ma=R(q(),1);function rA({element:e,media:t,playPause:i}){let n=(0,nS.useRef)(null);return t.youTubeId?(0,ma.jsxs)("div",{className:"video-container",part:"video-container",onClick:i,children:[(0,ma.jsx)("style",{children:`
105
105
  .video-container {
106
106
  position: absolute;
107
107
  top: 0;
@@ -119,7 +119,7 @@ No matching component was found for:
119
119
  width: 100%;
120
120
  object-fit: contain;
121
121
  }
122
- `}),(0,ua.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 $x({media:e,mediaControlsDeps:t,children:i}){let[{element:n,currentTime:o,progress:a},l,c]=Jr({duration:e.duration});return Ji("overlay","video-element",QE,{element:n,media:e,playPause:c.playPause}),null}var je=A(Y(),1);function Yo({x:e,y:t,onChoiceChange:i,registerActions:n,defaultChoices:o,isStatic:a,renderViewerControls:l,renderMediaControls:c,viewControlsDeps:p,mediaControlsDeps:m,strategies:f,throwOnUnknown:y,backgroundStyle:w,alwaysShowBackground:P,keepCanvasScale:v=!1,enableSizes:x=!1,enableYouTube:C=!0,onClickPaintingAnnotation:E,children:T}){let R=De(),G=Xs(R,["deep-zoom"]),[V]=dp(),O=fp(),L=Oe(),F=(0,vn.useMemo)(()=>qr(L),[L]),[j,J]=Bp({strategies:f||["images"],defaultChoices:o?.map(({id:de})=>de)}),$=j.type==="images"?j.choice:void 0,ne=(0,vn.useMemo)(()=>v?1:Math.max(1,...j.type==="images"?j.images.map(de=>(de.width||0)/de.target?.spatial.width):[]),[v,j]);px(ne),(0,vn.useEffect)(()=>{n&&n(J)},[j.annotations]),(0,vn.useEffect)(()=>{if(o)for(let de of o)typeof de.opacity<"u"&&F.applyStyles({id:de.id},"atlas",{opacity:de.opacity})},[o]),(0,vn.useLayoutEffect)(()=>{i&&i($)},[$]),Ji(O&&(j.type==="images"||j.type==="empty"||j.type==="textual-content"&&l)?"overlay":"none",`canvas-portal-controls-${R?.id}`,Ho.Provider,l?{value:O||null,children:l(j)}:{},[R,O,j,...p||[]]);let Ce=Zr({maxWidth:256,maxHeight:256});if(!R)return null;let Me=R.accompanyingCanvas,ke=R.placeholderCanvas,ve=Ce&&Ce.type==="fixed"?(0,je.jsx)("world-object",{height:R.height,width:R.width,x:e,y:t,children:(0,je.jsx)("world-image",{uri:Ce.id,target:{x:0,y:0,width:R.width,height:R.height},display:Ce.width&&Ce.height?{width:Ce.width,height:Ce.height}:void 0,crop:void 0})}):null;if(j.type==="unknown"){if(ve)return ve;if(y)throw new Error(j.reason||"Unknown image strategy");return null}let it=(0,je.jsxs)(vn.Fragment,{children:[V?(0,je.jsx)(ea,{page:V}):null,j.annotations&&j.annotations.pages?j.annotations.pages.map(de=>(0,je.jsx)(ea,{page:de},de.id)):null,T]}),$e=j.type==="images"?j.images.length:0,yt=j.type==="media"&&j.media.type==="Video"&&ke?(0,je.jsx)(Gu,{renderViewerControls:l}):null;return(0,je.jsxs)(je.Fragment,{children:[(0,je.jsxs)("world-object",{height:R.height,width:R.width,x:e,y:t,...G,children:[j.type==="empty"||P?(0,je.jsx)(Yu,{style:w}):null,j.type==="textual-content"?j.items.map((de,H)=>(0,je.jsxs)(je.Fragment,{children:[(0,je.jsx)(Xn,{onClick:E?ye=>{ye.stopPropagation(),E(de.annotationId,de,ye)}:void 0,target:de.target?.spatial||void 0,children:(0,je.jsx)("div",{"data-textual-content":!0,children:(0,je.jsx)(bi,{enableDangerouslySetInnerHTML:!0,children:de.text})})},H),it]})):null,j.type==="images"?(0,je.jsxs)(je.Fragment,{children:[j.images.map((de,H)=>(0,je.jsx)(ju,{isStatic:a,image:de,id:de.id,thumbnail:H===0?Ce:void 0,selector:de.selector,enableSizes:x,onClick:E?ye=>{ye.stopPropagation(),E(de.annotationId,de,ye)}:void 0},de.id+H)),it]}):null,j.type==="3d-model"?(0,je.jsx)(Qu,{model:j.model}):null,j.type==="media"?(0,je.jsx)(je.Fragment,{children:j.media.type==="Sound"?(0,je.jsxs)(Hu,{media:j.media,mediaControlsDeps:m,children:[ve,c?c(j):null]}):j.media.type==="Video"?(0,je.jsxs)(qu,{media:j.media,mediaControlsDeps:m,children:[ve,c?c(j):null]}):j.media.type==="VideoYouTube"&&C?(0,je.jsxs)($x,{media:j.media,mediaControlsDeps:m,children:[ve,c?c(j):null]}):null}):null]},`${R.id}/${j.type}/${$e}`),j.type==="media"&&j.media.type==="Sound"&&Me?(0,je.jsx)(Ni,{canvas:Me.id,children:(0,je.jsx)(Yo,{renderViewerControls:l})}):null,j.type==="media"&&j.media.type==="Sound"&&ke&&!Me?(0,je.jsx)(Ni,{canvas:ke.id,children:(0,je.jsx)(Yo,{renderViewerControls:l})}):null]})}var hi=A(Y(),1),YE=(0,ca.forwardRef)(function(t,i){let n=mt(),o=jr(),a=Qs(),{ViewerControls:l,MediaControls:c}=t.components||{};if((0,ca.useImperativeHandle)(i,()=>a,[a]),!n)return(0,hi.jsx)("div",{});let p=0;return(0,hi.jsxs)(hi.Fragment,{children:[t.header,(0,hi.jsx)(kt.Viewer,{height:t.height,mode:t.mode,renderPreset:t.renderPreset,runtimeOptions:t.runtimeOptions,children:o.map((m,f)=>{let y=p;return p+=m.width+(t.spacing||0),(0,hi.jsx)(Ni,{canvas:m.id,children:(0,hi.jsx)(kt.RenderCanvas,{strategies:["3d-model","media","images","empty","textual-content"],renderViewerControls:f===0&&l?()=>(0,hi.jsx)(l,{}):void 0,renderMediaControls:f===0&&c?()=>(0,hi.jsx)(c,{}):void 0,x:y,...t.canvasProps||{},children:t.annotations},m.id)},m.id)})},t.reuseAtlas?"":a.currentSequenceIndex),t.children]})}),kt=(0,ca.forwardRef)(function({children:t,height:i,annotations:n,canvasProps:o,spacing:a,header:l,components:c,mode:p,reuseAtlas:m,renderPreset:f,runtimeOptions:y,...w},P){let v=Br();return(0,hi.jsx)(Fr,{vault:v,children:(0,hi.jsx)(ap,{...w,children:(0,hi.jsx)(YE,{ref:P,height:i,components:c,spacing:a,canvasProps:o,annotations:n,header:l,mode:p,reuseAtlas:m,renderPreset:f,runtimeOptions:y,children:t})})})});kt.RenderImage=ju;kt.RenderCanvas=Yo;kt.RenderAnnotationPage=ea;kt.RenderAnnotation=Bu;kt.Viewer=fx;kt.CanvasBackground=Yu;kt.Audio=Hu;kt.Video=qu;kt.Model=Qu;kt.AudioHTML=jp;kt.VideoHTML=Vp;kt.ModelHTML=Up;kt.PlaceholderCanvas=Gu;var $u=A(q(),1),ha=A(Y(),1),GE=(0,$u.forwardRef)(function({canvasId:t},i){let n=tu(),o=oa(t||n?.id),a=Oe();return(0,$u.useImperativeHandle)(i,()=>o,[t,n]),!n||o.enabledPageIds.length===0?null:(0,ha.jsx)(ha.Fragment,{children:o.enabledPageIds.map(l=>(0,ha.jsx)(kt.RenderAnnotationPage,{page:a.get(l)},l))})});var Kx=A(q(),1);var Xx=A(q(),1);var Pt=A(Y(),1);function da({metadata:e=[],config:t,labelWidth:i=16,showEmptyMessage:n=!0,allowHtml:o,emptyFallback:a,classes:l={},emptyMessage:c="No metadata available",emptyValueFallback:p="No value",emptyLabelFallback:m="",separator:f,tableFooter:y,tableHeader:w}){let P=(0,Xx.useMemo)(()=>{let x=(t||[]).reduce((E,T)=>[...E,...T.keys],[]),C={};for(let E of e){let T=E&&E.label?Object.values(E.label):[];for(let R of T)if(R&&R.length&&(x.indexOf(`metadata.${R[0]}`)!==-1||x.length===0)&&E){let G=`metadata.${R[0]}`;C[G]=C[G]?C[G]:[],C[G].push(E);break}}return C},[t,e]);return Object.keys(P).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:[w,(0,Pt.jsx)("tbody",{children:t.map((x,C)=>{let E=[];for(let T of x.keys)for(let R of P[T]||[])E.push((0,Pt.jsx)(bi,{enableDangerouslySetInnerHTML:o,defaultText:p,separator:f,children:R.value},C+"__"+T));return E.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)(bi,{enableDangerouslySetInnerHTML:o,separator:f,defaultText:m,children:x.label})}),(0,Pt.jsx)("td",{className:l.value,children:E})]},C)})}),y]}):(0,Pt.jsxs)("table",{className:l.container,children:[w,(0,Pt.jsx)("tbody",{children:e&&e.length?e.map((x,C)=>x?(0,Pt.jsxs)("tr",{className:l.row,children:[(0,Pt.jsx)("td",{className:l.label,style:i?{minWidth:i}:{},children:(0,Pt.jsx)(bi,{enableDangerouslySetInnerHTML:o,defaultText:p,separator:f,children:x.label})}),(0,Pt.jsx)("td",{className:l.value,children:(0,Pt.jsx)(bi,{enableDangerouslySetInnerHTML:o,defaultText:p,separator:f,children:x.value})})]},C):null):null}),y]})}var Zx=A(Y(),1);function $E(e){let t=mt(),i=De(),n=Vs(),o=(0,Kx.useMemo)(()=>{let a=t?.metadata||[],l=i?.metadata||[],c=n?.metadata||[];return[...a,...l,...c]},[t,i,n]);return(0,Zx.jsx)(da,{metadata:o,...e})}var Ku=A(q(),1);var Jx=A(q(),1);function Xu(e,t={},i=[]){return(0,Jx.useMemo)(()=>{if(!e)return null;let n=t.quality;e&&e.extraQualities&&t.quality&&(e.extraQualities.includes(t.quality)||(n="default"));let o=Gh(e);return $h({identifier:o.identifier,server:o.server,scheme:o.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:o.prefix,originalPath:o.originalPath})},[...i])}var pa=A(Y(),1);function XE(e){let t=typeof e.src=="string"?e.src:e.src.id,i=On(),[n,o]=(0,Ku.useState)(!1),a;if(t){let c=i.loadServiceSync({id:t});c&&(a=c)}!a&&!n&&i.loadService({id:t}).then(()=>{o(!0)});let l=Xu(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,Ku.useEffect)(()=>()=>{o(!1)},[t]),l?(0,pa.jsx)("img",{src:l,alt:e.alt,className:e.className,style:e.style}):(0,pa.jsx)(eS,{...e,fetchImageService:!1})}function eS(e){if(e.fetchImageService)return(0,pa.jsx)(XE,{...e});let t=typeof e.src=="string"?{id:e.src,profile:"level0"}:e.src,i=Xu(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,pa.jsx)("img",{src:i,alt:e.alt,className:e.className,style:e.style}):null}var tS=A(Y(),1);function KE(e){let t=mt();return(0,tS.jsx)(da,{metadata:t?.metadata||[],...e})}var Zu=A(q(),1);var Wp=A(nS(),1);var di=A(Y(),1),{LazyLoadComponent:ZE}=Wp||Wp.default;function qp(e){let{size:t,visible:i,classes:n,canvasId:o,figure:a}=e,l=t?.width||128,c=t?.height||t?.width||128,p=(0,di.jsx)(JE,{...e}),m=(0,di.jsx)(ZE,{threshold:300,style:{height:c,width:l},visibleByDefault:i,children:o?(0,di.jsx)(Ni,{canvas:o,children:p}):p});return a?(0,di.jsx)("figure",{className:n?.figure,children:m}):m}function JE({fallback:e,size:t,classes:i,showLabel:n,alt:o,dereference:a=!1}){let l=De(),c=t?.width||128,p=t?.height||t?.width||128,m=o||Ap(l?.label)||"",f=Zr({width:c,height:p},a);return!f||f.type!=="fixed"?(0,di.jsx)(di.Fragment,{children:e}):(0,di.jsxs)(di.Fragment,{children:[(0,di.jsx)("div",{className:i?.imageWrapper,children:(0,di.jsx)("img",{className:i?.img,src:f.id,alt:m})}),n?(0,di.jsx)(bi,{as:"figcaption",className:i?.label,children:l?.label}):null]})}var Go=A(Y(),1);function eA({flat:e,size:t,classes:i={},showLabel:n,figure:o,fallback:a}){let l=(0,Zu.useRef)(null),{items:c,sequence:p,currentSequenceIndex:m,setSequenceIndex:f}=Qs(),y={row:i.selected?.row||i.row,item:i.selected?.item||i.item,figure:i.selected?.figure||i.figure,img:i.selected?.img||i.img,label:i.selected?.label||i.label,imageWrapper:i.selected?.imageWrapper||i.imageWrapper};(0,Zu.useLayoutEffect)(()=>{if(!l.current)return;let P=l.current.querySelector("[data-selected=true]");P&&P.scrollIntoView({behavior:"smooth",block:"nearest",inline:"center"})},[m]);let w=[];for(let P of p){let v=[],x=p[m]===P;for(let C of P){let E=c[C];v.push((0,Go.jsx)("div",{className:x?y.item:i.item,children:(0,Go.jsx)(qp,{classes:x?y:i,canvasId:E.id,size:t,showLabel:n,figure:o,placeholder:(0,Go.jsx)("div",{style:{height:128,width:128}}),fallback:a})},C))}if(e){w.push(v);continue}w.push((0,Go.jsx)("div",{onClick:C=>{f(p.indexOf(P))},"data-selected":x,className:x?y.row:i.row,children:v}))}return(0,Go.jsx)("div",{ref:l,className:i.container,children:w})}var Zt=A(Y(),1),tA={draw:!0,polygon:!0,line:!0,lineBox:!0,square:!0,triangle:!0,hexagon:!0,circle:!0,delete:!0};function iA({helper:e,showShapes:t,state:i,enabled:n=tA,classNames:o={},icons:a={}}){return(0,Zt.jsxs)(Zt.Fragment,{children:[t?(0,Zt.jsxs)(Zt.Fragment,{children:[n.draw&&(0,Zt.jsx)("button",{className:o.button,onClick:()=>{e.stamps.clear(),e.draw.enable()},"data-active":!i.lineMode&&!i.selectedStamp&&t&&i.drawMode,children:a.DrawIcon||"Draw"}),n.polygon&&(0,Zt.jsx)("button",{className:o.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,Zt.jsx)("button",{className:o.button,"data-active":i.lineMode&&!i.lineBoxMode,onClick:()=>{e.modes.enableLineMode()},children:a.LineIcon||"Line"}),n.lineBox&&(0,Zt.jsx)("button",{className:o.button,"data-active":i.lineBoxMode,onClick:()=>{e.modes.enableLineBoxMode()},children:a.LineBoxIcon||"LineBox"}),n.square&&(0,Zt.jsx)("button",{className:o.button,"data-active":i.selectedStamp?.id==="square",onClick:()=>{e.stamps.square()},children:a.SquareIcon||"Square"}),n.triangle&&(0,Zt.jsx)("button",{className:o.button,"data-active":i.selectedStamp?.id==="triangle",onClick:()=>{e.stamps.triangle()},children:a.TriangleIcon||"Triangle"}),n.hexagon&&(0,Zt.jsx)("button",{className:o.button,"data-active":i.selectedStamp?.id==="hexagon",onClick:()=>{e.stamps.hexagon()},children:a.HexagonIcon||"Hexagon"})]}):null,i.showBoundingBox&&n.delete&&(0,Zt.jsx)("button",{className:o.button,onClick:()=>e.key.down("Backspace"),children:a.DeleteForeverIcon||"Delete"})]})}var Ft=A(q(),1);var rS=A(Y(),1),Ju=(0,Ft.createContext)(Ys());Ju.displayName="SelectorHelper";function nA({children:e}){return(0,rS.jsx)(Ju.Provider,{value:(0,Ft.useMemo)(()=>Ys(),[]),children:e})}function rA(){return(0,Ft.useContext)(Ju)}function Qp(e){let t=Yp(),[i,n]=(0,Ft.useState)(!1);(0,Ft.useEffect)(()=>t.withSelector(e).on("highlight",()=>{n(!0)}),[t,e]),(0,Ft.useEffect)(()=>t.withSelector(e).on("clear-highlight",()=>{n(!1)}),[t,e]);let o=(0,Ft.useCallback)(l=>{t.emit("click",{selectorId:e,event:l})},[e,t]),a=(0,Ft.useCallback)(l=>{t.emit("hover",{selectorId:e,event:l})},[e,t]);return{controller:t,onClick:o,onHover:a,isHighlighted:i}}function Yp(){let e=(0,Ft.useContext)(Ju);return(0,Ft.useMemo)(()=>({withSelector(t){return{on(i,n){let o=a=>{a&&a.selectorId===t&&n(a)};return e.on(i,o),()=>{e.off(i,o)}},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 oA(){let e=Yp();return(0,Ft.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 $o=A(q(),1),oS=A(Y(),1);function Gp(){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 $p=(0,$o.createContext)(Gp());$p.displayName="AnnotationStyle";function Xp(){return(0,$o.useContext)($p)}function sA({theme:e,children:t}){let i=(0,$o.useMemo)(()=>e||Gp(),[e]);return(0,oS.jsx)($p.Provider,{value:i,children:t})}var Jt=A(q(),1);var Xo=A(q(),1);function uS(e){let t=e.points.length,i=!1,n=[];if(t>1){e.iedges=[];let o=e.points[t-1];for(let a=0;a<t;a++){let l=o;if(o=e.points[a],o.length===6){let m=o[2],f=o[3],y=o[4],w=o[5];n.push([a,[o[0]+m,o[1]+f],[o[0]+y,o[1]+w]]),i=!0}let c=[o[0]-l[0],o[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 aA(e,t){let i=1/0,n=null,o=-1,a=e.points.length;if(a<=1)return[null,i,o];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],f=p[1]-t[1],y=m*m+f*f;y<i&&(n=p,i=y,o=c===0?a-1:c-1)}return[n,i,o]}function nc(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])),o=Math.max(0,...e.points.map(a=>a[1]));e.boundingBox={x:t,y:i,width:n-t,height:o-i};return}e.boundingBox=null}function lA(e){return e[0]*e[0]+e[1]*e[1]}function sS(e,t){let i=1/0,n=null,o=-1,a=[],l=e.points.length;if(l<=1)return[null,i,a,o];if(e.iedges===null&&(uS(e),!e.iedges))return[null,i,a,o];let c=e.points[l-1];for(let p=0;p<l;p++){let m=c;c=e.points[p];let f=(t[0]-m[0])*e.iedges[p][0]+(t[1]-m[1])*e.iedges[p][1],y;f<=0?y=m:f<1?y=[(1-f)*m[0]+f*c[0],(1-f)*m[1]+f*c[1]]:y=c;let w=lA([y[0]-t[0],y[1]-t[1]]);w<i&&(n=y,i=w,a=[m,c],o=p===0?l-1:p-1)}return[n,i,a,o]}var cS={type:"move-bounding-box",label:"Move bounding box",isValid(e,t,i){let n=t.polygon.points.length,o=n===t.selectedPoints.length,a=t.polygon.boundingBox;if(n<1||!o||!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,o=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]),o&&(t.transitionBoundingBox={x:o.x+l,y:o.y+c,width:o.width,height:o.height})},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{points:n}}},hS={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){cS.transition(e,t,i)},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{points:n}}};function aS(e,t){return Math.abs(e-t)}function Di(e,t){let i=aS(e[0],t[0]),n=aS(e[1],t[1]);return Math.sqrt(Math.pow(i,2)+Math.pow(n,2))}function Kp(e,t){return[e[0]-t[0],e[1]-t[1]]}function uA(e,t){return e[0]*t[0]+e[1]*t[1]}function dS(e){return e[0]*e[0]+e[1]*e[1]}function ec(e,t){return dS(Kp(e,t))}function pS(e,t){let i,n,o,a;var l=function(v,x,C,E,T){if(E<=C+1)return;let R=C,G=0,V=v*v;i=[x[C],x[E]],n=Kp(i[1],i[0]);let O=dS(n),L,F,j,J,$;for(let ne=C+1;ne<E;ne++)L=Kp(x[ne],i[0]),J=uA(L,n),J<=0?$=ec(x[ne],i[0]):O<=J?$=ec(x[ne],i[1]):(j=J/O,F=[i[0][0]+j*n[0],i[0][1]+j*n[1]],$=ec(x[ne],F)),!($<=G)&&(R=ne,G=$);G>V&&(T[R]=1,l(v,x,C,R,T),l(v,x,R,E,T))};let c=e.length,p=[],m,f,y,w,P=t*t;for(o=[],a=[],o[0]=e[0],m=f=1,w=0;m<c;m++)ec(e[m],e[w])<P||(o[f++]=e[m],w=m);for(w<c-1&&(o[f++]=e[c-1]),a[0]=a[f-1]=1,l(t,o,0,f-1,a),m=y=0;m<f;m++)a[m]&&(p[y++]=o[m]);return p}var cA={type:"move-point",label:"Move point",modifiers:{Shift:"Constrain to axis"},isValid(e,t,i){if(i.Alt)return!1;let n=i.proximity,[o,a]=e[0],l=t.polygon.points,c=t.selectedPoints;for(let p=0;p<l.length;p++){let m=l[p],f=m[0]-o,y=m[1]-a;if(f*f+y*y<n*n)return!0}return!1},start(e,t,i){if(t.selectedPoints.length<2){let[n,o,a]=aA(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,[o,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=o-n[0],f=a-n[1];i.Shift&&(Math.abs(m)>Math.abs(f)?f=0:m=0);for(let y=0;y<l.length;y++){let w=c.indexOf(y)!==-1,P=l[y];w?P.length===6?p.push([P[0]+m,P[1]+f,P[2],P[3],P[4],P[5]]):p.push([P[0]+m,P[1]+f]):p.push(P)}t.transitionPoints=p},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{points:n}}},lS=10,hA={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[o,a]=e[0],l=t.polygon.points;for(let c=0;c<l.length;c++){let p=l[c],m=p[0]-o,f=p[1]-a;if(m*m+f*f<lS*lS)return n!==c}return!1},commit(e,t,i){let n=i.Shift?[...t.selectedPoints]:[],[o,a]=e[0],l=t.polygon.points.map((c,p)=>{let m=c[0]-o,f=c[1]-a;return[m*m+f*f,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}}},fS={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,[o,a]=e[0],l=t.polygon.points,c=[],p=o-n[0],m=a-n[1];for(let f=0;f<l.length;f++)if(c.push(l[f]),t.closestLineIndex===f){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}}},dA={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],o=t.polygon.points;return o.length===0?{selectedPoints:[0],points:[e[0]]}:(i.Shift,t.selectedPoints[0]===0?{selectedPoints:t.slowState.lineMode?[]:[0],points:[n,...o]}:(t.line=null,{selectedPoints:t.slowState.lineMode?[]:[o.length],points:[...o,n]}))}},mS={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 o=t.polygon.points[t.polygon.points.length-1];return Di(e[0],o)<i.proximity}if(n===t.polygon.points.length-1){let o=t.polygon.points[0];return Di(e[0],o)<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}}},pA={type:"deselect-draw",label:"Deselect draw",trigger:{type:"key",key:"Escape"},isValid(e,t,i){return!0},commit(e,t,i){return{selectedPoints:[]}}},fA={type:"select-shape",label:"Select shape",trigger:{type:"click"},isValid(e,t,i){return hS.isValid(e,t,i)},commit(e,t,i){return{selectedPoints:t.polygon.points.map((n,o)=>o)}}},mA={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:[]}}},gA={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,o=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,f=l.y+l.height-n*2;if(a[0]>c&&a[0]<p&&a[1]>m&&a[1]<f)return!1;let y=[l.x+l.width,l.y+l.height],w=[l.x,l.y],P=[l.x+l.width,l.y],v=[l.x,l.y+l.height],x=["ne","nw","se","sw"],C=[Di(e[0],P),Di(e[0],w),Di(e[0],y),Di(e[0],v)],E=Math.min(...C);if(C[0]<o||C[1]<o||C[2]<o||C[3]<o){(E>i.proximity||i.Meta)&&(t.transitionRotate=!0);let T=C.indexOf(Math.min(...C));return t.transitionDirection=T!==-1?x[T]:null,!0}return!1},start(e,t,i){let n=e[0],o=t.polygon.boundingBox,a=[o.x+o.width,o.y+o.height],l=[o.x,o.y],c=[o.x+o.width,o.y],p=[o.x,o.y+o.height],m=["ne","nw","se","sw"],f=[Di(e[0],c),Di(e[0],l),Di(e[0],a),Di(e[0],p)],y=Math.min(...f),w=f.indexOf(y);t.transitionDirection=w!==-1?m[w]:null,y>i.proximity&&(t.transitionRotate=!0)},transition(e,t,i){let n=t.polygon.boundingBox,o=[n.x,n.y],a=t.transitionOrigin||e[0],[l,c]=e[0];if(i.Meta||t.transitionRotate){o=[n.x+n.width/2,n.y+n.height/2];let v=Math.atan2(a[1]-o[1],a[0]-o[0]),x=Math.atan2(c-o[1],l-o[0]),C=i.Shift,E=Math.PI/(i.Alt?4:12),T=x-v;C&&(T=Math.round(T/E)*E);let R=Math.cos(T),G=Math.sin(T),V=[];for(let O of t.polygon.points){let L=O[0]-o[0],F=O[1]-o[1],j=L*R-F*G,J=L*G+F*R,$=j+o[0],ne=J+o[1];if(O.length===6){V.push([$,ne,O[2],O[3],O[4],O[5]]);continue}V.push([$,ne])}t.transitionPoints=V,nc({points:V,iedges:null,boundingBox:null,isBezier:!1,bezierLines:[]}),t.transitionBoundingBox=t.polygon.boundingBox?{...t.polygon.boundingBox,rotation:T}:null;return}let p=0,m=0;switch(t.transitionDirection){case"se":{o=[n.x,n.y],p=l-a[0],m=c-a[1];break}case"sw":{o=[n.x+n.width,n.y],p=a[0]-l,m=c-a[1];break}case"ne":{o=[n.x,n.y+n.height],p=l-a[0],m=a[1]-c;break}case"nw":{o=[n.x+n.width,n.y+n.height],p=a[0]-l,m=a[1]-c;break}}if(i.Alt&&(o=[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 f=(n.width+p)/n.width,y=(n.height+m)/n.height,w=[];for(let v of t.polygon.points){let x=v[0]-o[0],C=v[1]-o[1],E=x*f,T=C*y,R=E+o[0],G=T+o[1];if(v.length===6){w.push([R,G,v[2],v[3],v[4],v[5]]);continue}w.push([R,G])}t.transitionPoints=w;let P={points:w,iedges:null,boundingBox:null,bezierLines:[],isBezier:!1};nc(P),t.transitionBoundingBox=P.boundingBox},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,t.transitionRotate=!1,{points:n}}},yA={type:"cut-line",label:"Add new point",trigger:{type:"click"},modifiers:{Shift:"Cut line"},isValid(e,t,i){return fS.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,o=[];for(let a=0;a<n.length;a++)if(o.push(n[a]),t.closestLineIndex===a){let l=t.closestLinePoint;o.push(l)}return{points:o}}},vA={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],o=t.transitionOrigin[1],a=e[0][0],l=e[0][1],c=Math.min(n,a),p=Math.min(o,l),m=Math.abs(n-a),f=Math.abs(o-l);t.selectionBox={x:c,y:p,width:m,height:f}},commit(e,t,i){if(t.selectionBox){let n=[];i.Shift&&n.push(...t.selectedPoints);for(let o=0;o<t.polygon.points.length;o++){let a=t.polygon.points[o];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(o)}return{selectedPoints:n}}}},xA={type:"deselect-points",label:"Deselect points",trigger:{type:"click"},isValid(e,t,i){return t.selectedPoints.length>0},commit(e,t,i){return{selectedPoints:[]}}},rc=4,SA={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,o=t.polygon.points,a=t.selectedPoints;return{points:o.map((l,c)=>a.includes(c)?[l[0]+(i.Shift?rc*n:1),l[1]]:l)}}},wA={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,o=t.polygon.points,a=t.selectedPoints;return{points:o.map((l,c)=>a.includes(c)?[Math.max(0,l[0]-(i.Shift?rc*n:1)),l[1]]:l)}}},bA={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,o=t.polygon.points,a=t.selectedPoints;return{points:o.map((l,c)=>{if(a.includes(c)){let p=l[0],m=Math.max(0,l[1]-(i.Shift?rc*n:1));return l.length===6?[p,m,l[2],l[3],l[4],l[5]]:[p,m]}return l})}}},PA={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,o=t.polygon.points,a=t.selectedPoints;return{points:o.map((l,c)=>{let p=l[0],m=Math.max(0,l[1]-(i.Shift?rc*n:1));return a.includes(c)?l.length===6?[p,m,l[2],l[3],l[4],l[5]]:[p,m]:l})}}},CA={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((o,a)=>!t.selectedPoints.includes(a));return{isOpen:n.length<3,selectedPoints:[],points:n}}},EA={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=pS(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]}}},AA={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 o=t.slowState.selectedStamp,a=n[0],l=n[1],c=[],p=Math.min(...o.points.map(x=>x[0])),m=Math.min(...o.points.map(x=>x[1])),f=Math.max(...o.points.map(x=>x[0]))-p,y=Math.max(...o.points.map(x=>x[1]))-m,w=f/32;y/32>w&&(w=y/32);let P=[],v=0;for(let x of o.points)P.push(v),c.push([a+(x[0]-p)/w,l+(x[1]-m)/w]),v++;return t.transitionPoints=c,{isOpen:!1,selectedPoints:P,points:c}}},transition(e,t,i){if(!t.transitionOrigin)return;let n=t.polygon.boundingBox,o=[n.x,n.y],a=t.transitionOrigin||e[0],[l,c]=e[0],p=t.transitionOrigin[0],m=t.transitionOrigin[1],f=e[0][0],y=e[0][1],w=f-p-32,P=y-m-32;if(i.Shift){let T=n.width/n.height;Math.abs(n.width/w)>Math.abs(n.height/P)?P=w/T:w=P*T}let v=(n.width+w)/n.width,x=(n.height+P)/n.height,C=[];for(let T of t.polygon.points){let R=T[0]-o[0],G=T[1]-o[1],V=R*v,O=G*x,L=V+o[0],F=O+o[1];if(T.length===6){C.push([L,F,T[2],T[3],T[4],T[5]]);continue}C.push([L,F])}t.transitionPoints=C;let E={points:C,iedges:null,boundingBox:null,bezierLines:[],isBezier:!1};nc(E),t.transitionBoundingBox=E.boundingBox},commit(e,t,i){return{isOpen:!1,points:t.transitionPoints}}},RA={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 mS.commit(e,t,i)}},TA={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],o=t.slowState.selectedStamp;if(!n||!o)return;let a=n[0],l=n[1],c=[],p=Math.min(...o.points.map(x=>x[0])),m=Math.min(...o.points.map(x=>x[1])),f=Math.max(...o.points.map(x=>x[0]))-p,y=Math.max(...o.points.map(x=>x[1]))-m,w=4*i.proximity,P=f/w;y/w>P&&(P=y/w),a-=f/P/2,l-=y/P/2;let v=0;for(let x of o.points)c.push([a+(x[0]-p)/P,l+(x[1]-m)/P]),v++;return{isOpen:!1,points:c}}},IA={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,o=e[0],a=o[0]-i[0],l=o[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}}},_A={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 gS(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 o(v,x,C){v&&x.transitionBoundingBox&&C.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,C){v&&x.polygon.boundingBox&&C.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,C){if(v&&x.polygon.boundingBox&&C.showBoundingBox){let E=x.transitionBoundingBox||x.polygon.boundingBox;E.rotation?(v.style.transformOrigin=`${E.x+E.width/2}px ${E.y+E.height/2}px`,v.style.transform=`rotate(${Math.round(100*E.rotation*(180/Math.PI))/100}deg)`):v.style.transform="",v.setAttribute("points",[[E.x,E.y],[E.x+E.width,E.y],[E.x+E.width,E.y+E.height],[E.x,E.y+E.height]].map(T=>T.join(",")).join(" "))}}function c(v,x,C){v&&x.transitionPoints&&C.transitioning&&v.setAttribute("points",x.transitionPoints.map(E=>E.join(",")).join(" "))}function p(v,x,C){v&&x.closestLinePoint&&C.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,C){v&&x.closestLinePoint&&C.hasClosestLine&&v.setAttribute("transform",`translate(${x.closestLinePoint[0]}, ${x.closestLinePoint[1]})`)}function f(v,x,C){v&&x.selectionBox&&C.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,C){if(v&&x.pointer&&x.selectedPoints.length)if(C.actionIntentType==="close-shape"||C.actionIntentType==="close-shape-line"){let E=x.polygon.points[0],T=x.polygon.points[x.polygon.points.length-1];E&&T&&v.setAttribute("points",`${E.join(",")} ${T.join(",")}`)}else if(x.line)v.setAttribute("points",`${x.line[0].join(",")} ${x.line[1].join(",")}`);else{let E=x.polygon.points[x.selectedPoints[0]];E&&E.length&&v.setAttribute("points",`${x.pointer[0]},${x.pointer[1]} ${E.join(",")}`)}}function w(v,x,C,E=3){v&&x.transitionDraw.length&&v.setAttribute("points",pS(x.transitionDraw,E*3).map(T=>T.join(",")).join(" "))}function P(v,x){v&&x.lineBox&&v.setAttribute("points",x.lineBox.map(C=>C.join(",")).join(" "))}return{updateTransitionBoundingBox:o,updateClosestLinePointTransform:m,updateBoundingBoxPolygon:l,updateBoundingBox:a,updateTransitionShape:c,updateClosestLinePoint:p,updateSelectBox:f,updatePointLine:y,updateDrawPreview:w,updateLineBox:P}}var MA=typeof window<"u"?window.requestAnimationFrame:e=>setTimeout(e,16),OA=typeof window<"u"?window.cancelAnimationFrame:e=>clearTimeout(e),Jp=[AA,gA,cA,IA,fS,hS,cS,EA,vA],kA=Jp.length,Zp=[_A,TA,mS,hA,RA,yA,dA,fA,mA,xA],ic=[pA,SA,wA,bA,PA,CA],fa={};Jp.forEach(e=>{fa[e.type]=e});Zp.forEach(e=>{fa[e.type]=e});ic.forEach(e=>{fa[e.type]=e});var tc=20;function yS(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:tc},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:[]},o={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){uS(N),N.isBezier&&c({bezierLines:N.bezierLines}),nc(N),o.shouldUpdate=!0}l(n.polygon);function c(N){let W=Object.keys(N);if(W.length===0)return;let he=o.nextSlowState||n.slowState,fe=!1;if(W.length===1&&W[0]==="validIntentKeys"&&he.validIntentKeys){let me=Object.keys(he.validIntentKeys),Ve=Object.keys(N.validIntentKeys||{});if(me.length===Ve.length){for(let Ue of me)he.validIntentKeys[Ue]!==N.validIntentKeys[Ue]&&(fe=!0);if(!fe)return}}if(!(W.length===1&&W.includes("hasClosestLine")&&N.hasClosestLine===he.hasClosestLine)){if(o.nextSlowState){o.nextSlowState={...o.nextSlowState,...N};return}o.nextSlowState={...n.slowState,...N}}}function p(N,W=!1){o.time+=N,m(),f(),E(),C(),x(),T(),G(),R(),o.renderFunc(n,n.slowState,N),!W&&(o.animationFrame=MA(p))}function m(){if(o.shouldUpdate&&(t({id:n.slowState.shapeId||void 0,open:n.isOpen,points:n.polygon.points}),o.shouldUpdate=!1),o.nextSlowState&&o.nextSlowState!==n.slowState){let N=Object.keys(n.slowState),W={},he=!1;for(let fe of N){let me=n.slowState[fe],Ve=o.nextSlowState[fe];me!==Ve?(he=!0,W[fe]=Ve):W[fe]=me}he&&(n.slowState=W,o.nextSlowState=null,o.setStateFunc(n.slowState))}}function f(){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,o.shouldUpdate=!0)}function w(){if(o.undoStackPointer===-1)return;o.undoStackPointer--;let N=o.undoStack[o.undoStackPointer];y(N)}function P(){if(o.undoStackPointer===o.undoStack.length-1)return;o.undoStackPointer++;let N=o.undoStack[o.undoStackPointer];y(N)}function v(N){o.undoStackPointer++,o.undoStack[o.undoStackPointer]=N,o.undoStack.length>15&&(o.undoStack.shift(),o.undoStackPointer--)}function x(){if(!n.pointer||n.slowState.noShape){c({pointerInsideShape:!1});return}let[N,W]=n.pointer,he=n.polygon.points,fe=n.polygon.boundingBox;if(!fe){c({pointerInsideShape:!1});return}if(N<fe.x||N>fe.x+fe.width||W<fe.y||W>fe.height+fe.y){c({pointerInsideShape:!1});return}let me=!1;for(let Ve=0,Ue=he.length-1;Ve<he.length;Ue=Ve++)he[Ve][1]>W!=he[Ue][1]>W&&N<(he[Ue][0]-he[Ve][0])*(W-he[Ve][1])/(he[Ue][1]-he[Ve][1])+he[Ve][0]&&(me=!me);c({pointerInsideShape:me})}function C(){if(n.slowState.noShape||!n.pointer||n.slowState.transitioning||!n.polygon.points||n.polygon.points.length===0)return;let[N,W]=n.pointer,he=n.polygon.points.map((fe,me)=>{let Ve=fe[0]-N,Ue=fe[1]-W;return[Ve*Ve+Ue*Ue,me]}).sort((fe,me)=>fe[0]-me[0]);he.length&&c({closestPoint:he[0][1]})}function E(){if(!n.pointer||n.slowState.transitioning)return;if(n.slowState.noShape){n.closestLineIndex=-1,n.closestLinePoint=null,n.closestLineDistance=0;return}let[N,W,he,fe]=sS(n.polygon,n.pointer),me=Me()*Me();W<me&&(!n.isOpen||n.slowState.lineMode||n.polygon.points.length-1!==fe)?(n.closestLinePoint=N,n.closestLineDistance=Math.sqrt(W),n.closestLineIndex=fe,c({hasClosestLine:!0})):(n.closestLinePoint=null,n.closestLineDistance=0,n.closestLineIndex=-1,c({hasClosestLine:!1}))}function T(){if(!n.pointer||n.slowState.transitioning||n.slowState.noShape)return;let N=!1;for(let fe=0;fe<kA;fe++){let me=Jp[fe];if(me.isValid(a.isPressed?[a.lastPress]:[n.pointer],n,V())){if(o.transitionIntent===me){N=!0;break}c({transitionIntentType:me.type}),o.transitionIntent=me,N=!0;break}}N||o.transitionIntent&&(o.transitionIntent=null,c({transitionIntentType:null}));let W=!1;for(let fe=0;fe<Zp.length;fe++){let me=Zp[fe];if(L(me)){if(o.actionIntent===me){W=!0;break}c({actionIntentType:me.type}),o.actionIntent=me,W=!0;break}}W||o.actionIntent&&(o.actionIntent=null,c({actionIntentType:null}));let he={};for(let fe=0;fe<ic.length;fe++){let me=ic[fe];me.trigger.type==="key"&&L(me)&&(he[me.trigger.key]=me.label)}c({validIntentKeys:he})}function R(){let N=n.pointer;if(n.lineBox=null,!N||j()||n.polygon.points.length!==2)return;let[W,he]=N,[fe,me]=n.polygon.points[0],[Ve,Ue]=n.polygon.points[1],[Ae,We,ee,Re]=sS(n.polygon,N);if(!Ae)return;let Se=W-Ae[0],Pi=he-Ae[1],ei=[fe,me],Lt=[Ve,Ue],fi=[Lt[0]+Se,Lt[1]+Pi],Ci=[ei[0]+Se,ei[1]+Pi];n.lineBox=[ei,Lt,fi,Ci]}function G(){let N=n.pointer;if(!N||!j()||n.slowState.noShape)return;let W=n.selectedPoints[0];if(n.line=[n.polygon.points[W],N],n.slowState.modifiers.Shift){let he=0;if(n.polygon.points.length>1){let Se=n.selectedPoints[0];Se===0?he=Math.atan2(n.polygon.points[1][1]-n.polygon.points[0][1],n.polygon.points[1][0]-n.polygon.points[0][0]):he=Math.atan2(n.polygon.points[Se-1][1]-n.polygon.points[Se][1],n.polygon.points[Se-1][0]-n.polygon.points[Se][0])}let fe=N[0]-n.polygon.points[W][0],me=N[1]-n.polygon.points[W][1],Ve=Math.atan2(me,fe),Ue=Math.PI/4,Ae=Math.round((Ve-he)/Ue)*Ue+he,We=Di(n.polygon.points[W],N),ee=Math.cos(Ae)*We+n.polygon.points[W][0],Re=Math.sin(Ae)*We+n.polygon.points[W][1];n.line[1]=[ee,Re]}}function V(){return n.slowState.modifiers}function O(N){let W=N.commit([a.lastPress],n,V());W&&(W.selectedPoints&&(n.selectedPoints=W.selectedPoints,c({selectedPoints:W.selectedPoints})),W.points&&(n.polygon.points=W.points,n.polygon.boundingBox=null,n.polygon.iedges=null,n.polygon.isBezier=null,n.transitionBoundingBox=null,l(n.polygon),c({closestPoint:null,selectedStamp:null})),(W.isOpen===!0||W.isOpen===!1)&&(n.isOpen=W.isOpen,o.shouldUpdate=!0),v({isOpen:n.isOpen,points:n.polygon.points,selectedPoints:n.selectedPoints})),c({transitionModifiers:null})}function L(N){return N.isValid(n.pointer?[n.pointer]:[],n,V())}function F(N){N==="Delete"&&(N="Backspace");for(let W of ic)if(!(W.trigger.type!=="key"||W.trigger.key!==N)&&L(W))return O(W),!0}function j(){let N=n.polygon.points,W=n.pointer;if(!n.isOpen||!N.length||n.selectedPoints.length!==1||!W)return!1;let he=n.selectedPoints[0],fe=he===0,me=he===N.length-1;return fe||me}let J={reset(){c({modifiers:{Alt:!1,Shift:!1,Meta:!1,proximity:tc}})},getForType(N){let W={};if(!N)return W;let he=fa[N];return!he||!he.modifiers?W:he.modifiers},set(N){N!=="Shift"&&N!=="Alt"&&N!=="Meta"||c({modifiers:{...o.nextSlowState?.modifiers||n.slowState.modifiers,[N]:!0}})},unset(N){N!=="Shift"&&N!=="Alt"&&N!=="Meta"||c({modifiers:{...o.nextSlowState?.modifiers||n.slowState.modifiers,[N]:!1}})}},$={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]]}})}},ne={down(N){return N=="Shift"||N=="Alt"||N=="Meta"?(J.set(N),!0):N==="Control"?(J.set("Meta"),!0):N==="z"&&n.slowState.modifiers.Meta?(n.slowState.modifiers.Shift?P():w(),!0):F(N)},up(N){if(N==="Control"){J.unset("Meta");return}N!=="Shift"&&N!=="Alt"&&N!=="Meta"||J.unset(N)}};function Ce(N){n.scale=N,c({modifiers:{...o.nextSlowState?.modifiers||n.slowState.modifiers,proximity:N*tc}})}function Me(){return tc*n.scale}let ke={set:N=>{o.renderFunc=N},start:(N,W)=>{o.startTime=performance.now(),o.time=0,N&&(o.renderFunc=N),W&&(W(n.slowState),o.setStateFunc=W),p(0)},stop:()=>{o.animationFrame&&(OA(o.animationFrame),o.animationFrame=0)},step:(N=16)=>{p(N)}};function ve(N){let W=N[0];if(!(!W||!W[0]&&W[0]!==0||!W[1]&&W[1]!==0)&&!(Number.isNaN(W[0])||Number.isNaN(W[1]))){if(n.pointer=W||null,n.slowState.transitioning)o.transitionIntent&&o.transitionIntent.transition(N,n,V());else if(a.isPressed&&!a.noTransition&&(!a.isClicking||Di(a.lastPress,n.pointer)>10))if(clearTimeout(a.pressTimeout),a.isClicking=!1,o.transitionIntent){if(n.transitionOrigin=a.lastPress,c({transitioning:!0}),o.transitionIntent.start){let he=o.transitionIntent.start([a.lastPress],n,V());he&&(he.selectedPoints&&(n.selectedPoints=he.selectedPoints,c({selectedPoints:he.selectedPoints})),(he.isOpen===!0||he.isOpen===!1)&&(n.isOpen=he.isOpen,o.shouldUpdate=!0),he.points&&(n.polygon.points=he.points,n.polygon.boundingBox=null,n.polygon.iedges=null,l(n.polygon),c({closestPoint:null})))}c({transitionModifiers:o.transitionIntent.modifiers||null}),o.transitionIntent.transition([a.lastPress],n,V())}else a.noTransition=!0}}function it(){n.pointer=null,n.slowState.transitioning||(a.isPressed=!1,a.isClicking=!1,a.lastPress=null,c({transitionIntentType:null,actionIntentType:null}),o.transitionIntent=null,o.actionIntent=null)}function $e(){a.isClicking=!0,a.isPressed=!0,a.lastPress=n.pointer,a.pressTimeout=setTimeout(()=>{a.isPressed&&(a.isClicking=!1)},250)}function yt(){n.slowState.transitioning?(c({transitioning:!1}),o.transitionIntent&&O(o.transitionIntent),o.transitionIntent=null,c({transitionIntentType:null})):a.isClicking&&(o.actionIntent&&O(o.actionIntent),o.actionIntent=null,c({actionIntentType:null})),a.isPressed=!1,a.isClicking=!1,a.lastPress=null,a.noTransition=!1,clearTimeout(a.pressTimeout)}function de(N){n.polygon.points=N?.points||[],n.polygon.boundingBox=null,n.polygon.iedges=null,n.isOpen=N?.open||!1,l(n.polygon),o.nextSlowState=null,o.undoStack=[],o.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 H(N){if(!N)return"";let W=fa[N];return!W||!W.modifiers?W.label||"":n.slowState.modifiers.Shift&&W.modifiers.Shift?W.modifiers.Shift:n.slowState.modifiers.Alt&&W.modifiers.Alt?W.modifiers.Alt:n.slowState.modifiers.Meta&&W.modifiers.Meta?W.modifiers.Meta:W.label}function ye(){n.slowState.lineMode?c({lineMode:!1,lineBoxMode:!1,drawMode:!1}):c({lineMode:!0,lineBoxMode:!1,drawMode:!1})}function He(){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:J,stamps:$,key:ne,setScale:Ce,clock:ke,pointer:ve,blur:it,pointerDown:$e,pointerUp:yt,setShape:de,modes:{toggleLineBoxMode:He,toggleLineMode:ye,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:H}}function ef(e,t,i){let[n,o]=(0,Xo.useState)({}),a=(0,Xo.useMemo)(()=>yS(e,i),[]);return(0,Xo.useEffect)(()=>(a.clock.start(t,o),()=>{a.clock.stop()}),[]),{state:n,helper:a}}var tt=A(Y(),1),cr=gS();function tf(e,t){let{image:i,currentShape:n,onChange:o,hideShapeLines:a}=e,l=(0,Jt.useRef)(),c=(0,Jt.useRef)(),p=(0,Jt.useRef)(),m=(0,Jt.useRef)(),f=(0,Jt.useRef)(),y=(0,Jt.useRef)(),w=(0,Jt.useRef)(),P=(0,Jt.useRef)(),[v,x]=(0,Jt.useState)(null),[C,E]=(0,Jt.useState)(!1),{helper:T,state:R}=ef(n,($,ne)=>{cr.updateTransitionBoundingBox(c.current,$,ne),cr.updateBoundingBoxPolygon(l.current,$,ne),cr.updateTransitionShape(y.current,$,ne),cr.updateClosestLinePointTransform(m.current,$,ne),cr.updateSelectBox(p.current,$,ne),cr.updatePointLine(w.current,$,ne),cr.updateDrawPreview(f.current,$,ne,3),cr.updateLineBox(P.current,$),x($.transitionDirection),E($.transitionRotate)},o);(0,Jt.useEffect)(()=>{T.setShape(n||null)},t),(0,Jt.useEffect)(()=>{let $=()=>{T.modifiers.reset()};return document.addEventListener("mouseleave",$),()=>{document.removeEventListener("mouseleave",$)}},[]);let G=(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})})]}),V=n?n.open?"polyline":"polygon":null,O=!R.showBoundingBox&&R.closestPoint!==null&&R.actionIntentType==="select-point",L=R.actionIntentType==="add-open-point",F=R.transitionIntentType==="split-line",j=R.transitioning&&R.selectedStamp&&R.transitionIntentType==="stamp-shape",J=n&&V?(0,tt.jsxs)(tt.Fragment,{children:[(0,tt.jsx)(V,{fill:!R.transitioning&&R.showBoundingBox?"rgba(255, 0, 0, .5)":"none",strokeWidth:j?0:2,stroke:a?"transparent":"#000",points:n.points.map($=>$.join(",")).join(" "),vectorEffect:"non-scaling-stroke",markerStart:R.showBoundingBox?void 0:"url(#dot)",markerMid:R.showBoundingBox?void 0:"url(#dot)",markerEnd:R.showBoundingBox?void 0:"url(#dot)",style:{pointerEvents:"none"}}),R.lineBoxMode&&R.actionIntentType==="close-line-box"?(0,tt.jsx)("polygon",{fill:"rgba(255, 0, 0, .4)",ref:P,stroke:"#000",strokeWidth:2,vectorEffect:"non-scaling-stroke"}):null,R.transitionIntentType==="draw-shape"&&R.transitioning?(0,tt.jsx)("polyline",{ref:f,fill:"none",stroke:"rgba(255, 0, 0, .5)",strokeWidth:2,vectorEffect:"non-scaling-stroke"}):null,!R.showBoundingBox&&R.selectedPoints&&R.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(($,ne)=>R.selectedPoints?.includes(ne)).map($=>$.join(",")).join(" ")}):null,O&&R.closestPoint!==null&&n.points[R.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[R.closestPoint][0]},${n.points[R.closestPoint][1]}`}):null,!R.transitioning&&(R.actionIntentType==="add-open-point"||R.actionIntentType==="close-shape"||R.actionIntentType==="close-shape-line")?(0,tt.jsx)("polyline",{stroke:"#000",ref:w,strokeWidth:R.actionIntentType==="close-shape"?2:1,vectorEffect:"non-scaling-stroke"}):null,R.hasClosestLine&&(!R.transitionIntentType||R.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,R.transitioning?(0,tt.jsx)(V,{ref:y,fill:n.open?"none":"rgba(255, 0, 0, .5)",stroke:"rgba(255, 0, 0, .5)",strokeWidth:n.open?2:0}):null,R.transitioning&&R.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,R.showBoundingBox?null:(0,tt.jsx)("g",{name:"controls",children:!1}),R.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:T,state:R,isAddingPoint:L,isSplitting:F,isStamping:j,isHoveringPoint:O,transitionDirection:v,transitionRotate:C,defs:G,editor:J}}var oc=A(q(),1),vS=A(Ps(),1),pi=A(Y(),1),xS=[{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 nf(e){let t=e.theme||xS[0],i=Jl(),{image:n}=e,{helper:o,defs:a,editor:l,state:c,transitionDirection:p,isSplitting:m,transitionRotate:f,isHoveringPoint:y,isAddingPoint:w,isStamping:P}=tf({currentShape:e.shape||null,onChange:e.updateShape,image:e.image,hideShapeLines:!0},[]),v=R=>{o.pointer([[~~R.atlas.x,~~R.atlas.y]])};(0,oc.useEffect)(()=>{let R=G=>{o.key.up(G.key)};return document.addEventListener("keyup",R),()=>{document.removeEventListener("keyup",R)}},[]),(0,oc.useEffect)(()=>{let R=G=>{o.key.down(G.key)};return document.addEventListener("keydown",R),()=>{document.removeEventListener("keydown",R)}},[]),(0,oc.useEffect)(()=>{let R=[];return p&&R.push(`atlas-cursor-${p}`),c.actionIntentType==="cut-line"&&c.modifiers?.Shift&&R.push("atlas-cursor-cut"),(y||c.transitionIntentType==="move-shape"||c.transitionIntentType==="move-point")&&R.push("atlas-cursor-move"),w&&R.push("atlas-cursor-crosshair"),m&&R.push("atlas-cursor-copy"),f&&R.push("atlas-cursor-rotate"),c.transitionIntentType==="draw-shape"&&R.push("atlas-cursor-draw"),i?.canvas&&i.canvas.classList.add(...R),()=>{i?.canvas&&i.canvas.classList.remove(...R)}},[i?.canvas,w,y,m,c.modifiers?.Shift,c.actionIntentType,c.transitionIntentType,p,f]);let x=e.shape&&e.shape?.points.length===0,C=e.renderControls?e.renderControls(o,c,x):null,E=document.getElementById(e.controlsHtmlId||"atlas-controls"),T="shape";return(0,pi.jsx)(pi.Fragment,{children:(0,pi.jsxs)("world-object",{height:n.height,width:n.width,onMouseMove:v,onMouseDown:o.pointerDown,onMouseUp:o.pointerUp,onMouseLeave:o.blur,children:[e.shape?(0,pi.jsxs)(pi.Fragment,{children:[(0,pi.jsx)(T,{open:e.shape.open,points:e.shape.points,relativeStyle:!0,style:P?{}:t.outer}),(0,pi.jsx)(T,{open:e.shape.open,points:e.shape.points,relativeStyle:!0,style:P?{}:t.inner})]}):null,(0,pi.jsxs)(Xn,{relative:!0,interactive:!1,children:[(0,pi.jsx)("div",{style:{position:"absolute",top:0,right:0,left:0,bottom:0},children:(0,pi.jsxs)("svg",{width:"100%",height:"100%",viewBox:`0 0 ${n.width} ${n.height}`,tabIndex:-1,children:[(0,pi.jsx)("defs",{children:a}),l]})}),E?(0,vS.createPortal)(C,E,"controls"):null]})]})})}var rf=A(Y(),1);function LA(e){let t=De(),i=e.annotationBucket,n=e.readOnly,o=e.id,{onClick:a,isHighlighted:l}=Qp(e.id),c=Xp(),p=l?c.highlighted:c[i||"hidden"]||c.hidden;if(!t)return null;if(n){let m="shape",f=e.polygon,y=f.open;return f?(0,rf.jsx)(m,{id:`shape-${o}`,points:f.points,open:y,onClick:a,relativeStyle:!0,target:{x:0,y:0,width:t.width,height:t.height},style:p}):null}return(0,rf.jsx)(nf,{image:t,shape:e.polygon||{id:e.id,open:!0,points:[]},updateShape:e.updatePolygon,theme:e.theme,controlsHtmlId:e.controlsHtmlId,renderControls:e.renderControls})}var SS=A(Y(),1);function zA({annotation:e,children:t}){return(0,SS.jsx)($t,{value:{annotation:e},children:t})}var wS=A(Y(),1);function NA({annotationPage:e,children:t}){return(0,wS.jsx)($t,{value:{annotationPage:e},children:t})}var bS=A(Y(),1);function FA({collection:e,children:t}){return(0,bS.jsx)($t,{value:{collection:e},children:t})}function BA(e,t={}){return Xr(t)}var hr=A(q(),1);function DA({canvasId:e}={}){let t=tu(),i=jr(),n=(0,hr.useMemo)(()=>e?[e]:t?[t.id]:i.map(m=>m.id),[e,t,i]),[o,a]=(0,hr.useState)({}),l=Gs();(0,hr.useEffect)(()=>{let m=f=>{let y=f.partOf.canvasId;y&&a(w=>({...w,[y]:f.choice}))};return l.on("choice-change",m),()=>{l.off("choice-change",m)}},[]);let c=(0,hr.useMemo)(()=>{let m=[];for(let f of n){let y=o[f];y&&m.push({canvasId:f,choice:y})}return m},[n,o]),p=(0,hr.useMemo)(()=>({makeChoice:(m,f)=>{l.emit("make-choice",{choiceId:m,...f})}}),[l]);return{choices:c,actions:p}}function jA(e,t=!1){}function VA(e){let i=Wt().manifest,n=e?e.map(o=>typeof o=="string"?o:o?.id):[];return Fe(o=>{let a=i?o.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 PS=A(q(),1);function UA(e,t=[]){let{id:i,selector:n}=e,o=Wt(),a=i||o.collection,l=Fe(c=>a?c.iiif.entities.Collection[a]:void 0,[a]);return(0,PS.useMemo)(()=>{if(l)return n?n(l):l},[l,n,...t])}var sc=A(q(),1);function HA(e,t,i,n,o=[]){let a=Oe(),l=(0,sc.useMemo)(()=>$s(a),[a]);(0,sc.useEffect)(()=>{let c=e;return c?(l.addEventListener(c,t,i,n),()=>{l.removeEventListener(c,t,i)}):()=>{}},[l,e,t,...o])}function WA(e,t){let{id:i,isLoaded:n,error:o,resource:a,requestId:l,cached:c}=js(e,t);return{id:i,isLoaded:n,error:o,manifest:a,requestId:l,cached:c}}var xn=A(q(),1);function of({cacheKey:e}={}){let t=De(),i=Xr(),n=Oe(),o=On(),[a,l]=(0,xn.useState)(void 0),[c,p]=(0,xn.useState)(!1),[m,f]=(0,xn.useState)("idle"),[y,w]=(0,xn.useState)(void 0),P=t?t.id:"undefined",v=(0,xn.useMemo)(()=>{try{if(t&&i.length){let C=i[0],E=n.get(C.body[0]),R=Ar(E)[0];return R&&o.loadServiceSync({id:R.id||R["@id"],width:R.width||t.width,height:R.height||t.height})||void 0}}catch(C){console.error(C)}},[P,e,t]),x=m==="success"&&a?a:v;return(0,xn.useEffect)(()=>{(async()=>{try{if(t&&i.length){let C=i[0],E=n.get(C.body[0]),R=Ar(E)[0];if(!R)return;p(!0),f("loading");try{let G=await o.loadService({id:R.id||R["@id"],width:R.width||t.width,height:R.height||t.height})||void 0;l(G),f("success"),p(!1)}catch(G){f("error"),w(G)}}}catch(C){f("error"),w(C)}})()},[P,e]),(0,xn.useMemo)(()=>({data:x,isFetching:c,status:m,error:y}),[x,c,m,y])}function qA(){let e=of();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 CS=A(q(),1);function QA(){let e=Oe();return(0,CS.useMemo)(()=>qr(e),[e])}return Vw(YA);})();
122
+ `}),(0,ma.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 rS({media:e,mediaControlsDeps:t,children:i}){let[{element:n,currentTime:o,progress:a},l,c]=no({duration:e.duration});return Pi("overlay","video-element",rA,{element:n,media:e,playPause:c.playPause}),null}var nc=R($(),1);function oS({currentKeyFrameIndex:e,keyframes:t,targetTime:i,currentTime:n}){if(n<=i){let o=t.findIndex(c=>c.time>i);if(o===-1)return[e,[]];let a={},l=t.slice(e,o);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[o,Object.values(a)]}return[e,[]]}function sS({complexTimeline:e,startTime:t=0}){let i=Qr(),n={},o={progress:null,currentTime:null},a=0,l=null,c=0,p=null;function m(){let T=E.getState().visibleElements,A=n,N=[],D=Object.keys(A);for(let M of D){let k=A[M],O=T[M];k&&O&&N.push(k)}return N}function f(){return Object.keys(n).map(T=>n[T])}function y(C){o.currentTime&&(o.currentTime.innerHTML=$u(C),o.progress&&(o.progress.style.width=`${C/e.duration*100}%`))}let S=()=>{let C=E.getState(),T=C.currentPrime;if(!T)return;let A=n,N=C.visibleElements,D=Object.keys(A);for(let M of D){let k=A[M],O=N[M];if(k&&M!==T.id&&O){let K=c-O.time*1e3;Math.abs(c-O.time*1e3-k.currentTime*1e3)>300&&(k.currentTime=K/1e3)}}},P=(C=0)=>{let T=C-a,A=E.getState();if(A.isPlaying){let N=A.currentPrime;if(N){let O=n[N.id];O&&(O.paused?c+=T:c=(N.time+O.currentTime)*1e3)}else c+=T;let D=c/1e3;if(D>A.duration){E.getState().setTime(0),E.setState({isPlaying:!1}),v(),y(0);return}y(D);let[M,k]=oS({currentTime:D,currentKeyFrameIndex:A.nextKeyframeIndex,keyframes:A.complexTimeline.keyframes,targetTime:D});k.length&&A.applyKeyframes(M,k)}a=C,l=requestAnimationFrame(P)},v=()=>{l&&cancelAnimationFrame(l)},x=(C,T)=>{},E=Wr((C,T)=>({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:()=>{T().clockRunning||(P(),p=setInterval(S,500)),C({clockRunning:!0,clockStartRequests:T().clockStartRequests+1})},applyKeyframes(A,N){let D=T(),M={...D.visibleElements},k=D.currentPrime;for(let O of N)O.type==="enter"&&(M[O.id]=O,i.emit("complex-timeline.enter",{id:O.id})),O.type==="exit"&&(M[O.id]=null,i.emit("complex-timeline.exit",{id:O.id})),O.isPrime&&(k=O);C({nextKeyframeIndex:A,visibleElements:M,currentPrime:k})},stopClock:()=>{let A=T().clockStartRequests;if(A!==0){if(A===1){v(),p&&clearInterval(p),C({clockRunning:!1,clockStartRequests:0});return}C({clockStartRequests:A-1})}},setElement:(A,N)=>{n[A]=N;let D=Object.keys(n),M=T().complexTimeline;x(N,A),M.items.filter(O=>O.type!=="Image"&&O.type!=="Text").every(O=>D.includes(O.annotationId))&&!T().isReady&&(i.emit("complex-timeline.ready",{complexTimeline:M}),C({isReady:!0}))},removeElement:A=>{delete n[A]},mute(){for(let A of f())A.muted=!0;C({isMuted:!0})},unmute(){for(let A of f())A.muted=!1;C({isMuted:!1})},play(){if(!T().isPlaying){for(let N of m())N.play();C({isPlaying:!0})}},pause(){if(T().isPlaying){for(let N of m())N.pause();C({isPlaying:!1})}},playPause(){let A=T();A.isPlaying?A.pause():A.play()},setDurationPercent(A){let D=T().duration*A;T().setTime(D)},setTime(A){let N=T(),D=c/1e3,M=N.nextKeyframeIndex;if(D>A){C({visibleElements:{},currentPrime:null});let Ie=Object.keys(N.visibleElements);for(let ye of Ie)i.emit("complex-timeline.exit",{id:ye});D=0,M=0}let[k,O]=oS({currentTime:D,currentKeyFrameIndex:M,keyframes:N.complexTimeline.keyframes,targetTime:A});N.applyKeyframes(k,O),c=A*1e3;let U=E.getState().visibleElements,G=n,te=Object.keys(U);for(let Ie of te){let ye=U[Ie];if(ye){let ke=G[Ie];ke&&(ke.currentTime=(c-ye.time*1e3)/1e3)}}},setVolume(A){for(let N of f())N.volume=Math.min(1,Math.max(0,A/100));C({volume:A})},toggleMute(){let A=T();A.isMuted?(A.unmute(),C({isMuted:!1})):(A.mute(),C({isMuted:!0}))},clearProgressElement(){o.progress=null},setProgressElement(A){o.progress=A},setCurrentTimeElement(A){o.currentTime=A},clearCurrentTimeElement(){o.currentTime=null}}));return i.on("complex-timeline.enter",C=>{let T=E.getState(),A=C.id,N=n[A];N&&T.isPlaying&&N.play()}),i.on("complex-timeline.exit",C=>{let T=E.getState(),A=C.id,N=n[A];N&&(N.currentTime=0,N.pause())}),E.getState().setTime(t),{store:E,emitter:i}}var tc=R($(),1);var aS=R(q(),1),Kp=(0,tc.createContext)(null);Kp.displayName="ComplexTimeline";function Zp({children:e,store:t}){return(0,aS.jsx)(Kp.Provider,{value:t,children:e})}function oA(e){let t=(0,tc.useContext)(Kp);if(!t)throw new Error("useComplexTimeline must be used within a ComplexTimelineProvider");return bi(t,e)}var Nn=R(q(),1);function ic({strategy:e,onClickPaintingAnnotation:t}){return(0,Nn.jsx)(Nn.Fragment,{children:e.items.map((i,n)=>(0,Nn.jsx)(Nn.Fragment,{children:(0,Nn.jsx)(vn,{onClick:t?o=>{o.stopPropagation(),t(i.annotationId,i,o)}:void 0,target:i.target?.spatial||void 0,children:(0,Nn.jsx)("div",{"data-textual-content":!0,children:(0,Nn.jsx)(Ci,{enableDangerouslySetInnerHTML:!0,children:i.text})})},n)}))})}var Fn=R(q(),1);function lS({strategy:e,children:t}){let{store:i}=(0,nc.useMemo)(()=>sS({complexTimeline:e}),[e]),n=bi(i,l=>l.isReady),o=bi(i,l=>l.visibleElements);function a(l){return c=>{c&&i.getState().setElement(l,c)}}return(0,nc.useLayoutEffect)(()=>{if(n){let{startClock:l,stopClock:c}=i.getState();return l(),()=>{c()}}},[n]),Pi("portal","custom-controls",Zp,{store:i,children:t},[n]),(0,Fn.jsxs)(Fn.Fragment,{children:[e.items.map(l=>l.type!=="Image"||!o[l.annotationId]?null:(0,Fn.jsx)(Xo,{image:l,id:l.annotationId},l.id)),e.items.map((l,c)=>l.type!=="Text"||!o[l.annotationId]?null:(0,Fn.jsx)(ic,{strategy:{type:"textual-content",items:[l]}},c)),e.items.map((l,c)=>l.type!=="Video"||!l.target.spatial?null:(0,Fn.jsx)(vn,{target:l.target.spatial,children:(0,Fn.jsx)("video",{ref:a(l.annotationId),src:l.url,style:{height:"100%",width:"100%",opacity:o[l.annotationId]?1:0}})},c))]})}var Ve=R(q(),1);function Zo({x:e,y:t,onChoiceChange:i,registerActions:n,defaultChoices:o,isStatic:a,renderViewerControls:l,renderMediaControls:c,renderComplexTimelineControls:p,viewControlsDeps:m,mediaControlsDeps:f,strategies:y,throwOnUnknown:S,backgroundStyle:P,alwaysShowBackground:v,keepCanvasScale:x=!1,enableSizes:E=!1,enableYouTube:C=!0,onClickPaintingAnnotation:T,children:A}){let N=De(),D=Js(N,["deep-zoom"]),[M]=wp(),k=Pp(),O=Me(),K=(0,Sn.useMemo)(()=>Xr(O),[O]),[U,G]=qp({strategies:y||["images"],defaultChoices:o?.map(({id:H})=>H)}),te=U.type==="images"?U.choice:void 0,Ie=(0,Sn.useMemo)(()=>x?1:Math.max(1,...U.type==="images"?U.images.map(H=>(H.width||0)/H.target?.spatial.width):[]),[x,U]);bx(Ie),(0,Sn.useEffect)(()=>{n&&n(G)},[U.annotations]),(0,Sn.useEffect)(()=>{if(o)for(let H of o)typeof H.opacity<"u"&&K.applyStyles({id:H.id},"atlas",{opacity:H.opacity})},[o]),(0,Sn.useLayoutEffect)(()=>{i&&i(te)},[te]),Pi(k&&(U.type==="images"||U.type==="empty"||U.type==="textual-content"&&l)?"overlay":"none",`canvas-portal-controls-${N?.id}`,$o.Provider,l?{value:k||null,children:l(U)}:{},[N,k,U,...m||[]]);let ye=io({maxWidth:256,maxHeight:256});if(!N)return null;let ke=N.accompanyingCanvas,ve=N.placeholderCanvas,We=ye&&ye.type==="fixed"?(0,Ve.jsx)("world-object",{height:N.height,width:N.width,x:e,y:t,children:(0,Ve.jsx)("world-image",{uri:ye.id,target:{x:0,y:0,width:N.width,height:N.height},display:ye.width&&ye.height?{width:ye.width,height:ye.height}:void 0,crop:void 0})}):null;if(U.type==="unknown"){if(We)return We;if(S)throw new Error(U.reason||"Unknown image strategy");return null}let Ye=(0,Ve.jsxs)(Sn.Fragment,{children:[M?(0,Ve.jsx)(na,{page:M}):null,U.annotations&&U.annotations.pages?U.annotations.pages.map(H=>(0,Ve.jsx)(na,{page:H},H.id)):null,A]}),ft=U.type==="images"?U.images.length:0,je=U.type==="media"&&U.media.type==="Video"&&ve?(0,Ve.jsx)(ec,{renderViewerControls:l}):null;return(0,Ve.jsxs)(Ve.Fragment,{children:[(0,Ve.jsxs)("world-object",{height:N.height,width:N.width,x:e,y:t,...D,children:[U.type==="empty"||v?(0,Ve.jsx)(Ju,{style:P}):null,U.type==="complex-timeline"?(0,Ve.jsx)(lS,{strategy:U,children:p?p(U):null}):null,U.type==="textual-content"?(0,Ve.jsxs)(Ve.Fragment,{children:[(0,Ve.jsx)(ic,{strategy:U,onClickPaintingAnnotation:T}),Ye]}):null,U.type==="images"?(0,Ve.jsxs)(Ve.Fragment,{children:[U.images.map((H,ge)=>(0,Ve.jsx)(Xo,{isStatic:a,image:H,id:H.id,thumbnail:ge===0?ye:void 0,selector:H.selector,enableSizes:E,onClick:T?Fe=>{Fe.stopPropagation(),T(H.annotationId,H,Fe)}:void 0},H.id+ge)),Ye]}):null,U.type==="3d-model"?(0,Ve.jsx)(Zu,{model:U.model}):null,U.type==="media"?(0,Ve.jsx)(Ve.Fragment,{children:U.media.type==="Sound"?(0,Ve.jsxs)(Gu,{media:U.media,mediaControlsDeps:f,children:[We,c?c(U):null]}):U.media.type==="Video"?(0,Ve.jsxs)(Ku,{media:U.media,mediaControlsDeps:f,children:[We,c?c(U):null]}):U.media.type==="VideoYouTube"&&C?(0,Ve.jsxs)(rS,{media:U.media,mediaControlsDeps:f,children:[We,c?c(U):null]}):null}):null]},`${N.id}/${U.type}/${ft}`),U.type==="media"&&U.media.type==="Sound"&&ke?(0,Ve.jsx)(Bi,{canvas:ke.id,children:(0,Ve.jsx)(Zo,{renderViewerControls:l})}):null,U.type==="media"&&U.media.type==="Sound"&&ve&&!ke?(0,Ve.jsx)(Bi,{canvas:ve.id,children:(0,Ve.jsx)(Zo,{renderViewerControls:l})}):null]})}var Zt=R(q(),1),sA=(0,ga.forwardRef)(function(t,i){let n=gt(),o=Hr(),a=Xs(),{ViewerControls:l,MediaControls:c,ComplexTimelineControls:p}=t.components||{};if((0,ga.useImperativeHandle)(i,()=>a,[a]),!n)return(0,Zt.jsx)("div",{});let m=0;return(0,Zt.jsxs)(Zt.Fragment,{children:[t.header,(0,Zt.jsx)(Lt.Viewer,{height:t.height,mode:t.mode,renderPreset:t.renderPreset,runtimeOptions:t.runtimeOptions,children:o.map((f,y)=>{let S=m;return m+=f.width+(t.spacing||0),(0,Zt.jsx)(Bi,{canvas:f.id,children:(0,Zt.jsx)(Lt.RenderCanvas,{strategies:["3d-model","media","images","empty","textual-content","complex-timeline"],renderViewerControls:y===0&&l?()=>(0,Zt.jsx)(l,{}):void 0,renderMediaControls:y===0&&c?()=>(0,Zt.jsx)(c,{}):void 0,renderComplexTimelineControls:y===0&&p?()=>(0,Zt.jsx)(p,{}):void 0,x:S,...t.canvasProps||{},children:t.annotations},f.id)},f.id)})},t.reuseAtlas?"":a.currentSequenceIndex),t.children]})}),Lt=(0,ga.forwardRef)(function({children:t,height:i,annotations:n,canvasProps:o,spacing:a,header:l,components:c,mode:p,reuseAtlas:m,renderPreset:f,runtimeOptions:y,...S},P){let v=Vr();return(0,Zt.jsx)(jr,{vault:v,children:(0,Zt.jsx)(gp,{...S,children:(0,Zt.jsx)(sA,{ref:P,height:i,components:c,spacing:a,canvasProps:o,annotations:n,header:l,mode:p,reuseAtlas:m,renderPreset:f,runtimeOptions:y,children:t})})})});Lt.RenderImage=Xo;Lt.RenderCanvas=Zo;Lt.RenderAnnotationPage=na;Lt.RenderAnnotation=Wu;Lt.Viewer=Px;Lt.CanvasBackground=Ju;Lt.Audio=Gu;Lt.Video=Ku;Lt.Model=Zu;Lt.AudioHTML=$p;Lt.VideoHTML=Yp;Lt.ModelHTML=Gp;Lt.PlaceholderCanvas=ec;var rc=R($(),1),ya=R(q(),1),aA=(0,rc.forwardRef)(function({canvasId:t},i){let n=au(),o=la(t||n?.id),a=Me();return(0,rc.useImperativeHandle)(i,()=>o,[t,n]),!n||o.enabledPageIds.length===0?null:(0,ya.jsx)(ya.Fragment,{children:o.enabledPageIds.map(l=>(0,ya.jsx)(Lt.RenderAnnotationPage,{page:a.get(l)},l))})});var cS=R($(),1);var uS=R($(),1);var Pt=R(q(),1);function va({metadata:e=[],config:t,labelWidth:i=16,showEmptyMessage:n=!0,allowHtml:o,emptyFallback:a,classes:l={},emptyMessage:c="No metadata available",emptyValueFallback:p="No value",emptyLabelFallback:m="",separator:f,tableFooter:y,tableHeader:S}){let P=(0,uS.useMemo)(()=>{let x=(t||[]).reduce((C,T)=>[...C,...T.keys],[]),E={};for(let C of e){let T=C&&C.label?Object.values(C.label):[];for(let A of T)if(A&&A.length&&(x.indexOf(`metadata.${A[0]}`)!==-1||x.length===0)&&C){let N=`metadata.${A[0]}`;E[N]=E[N]?E[N]:[],E[N].push(C);break}}return E},[t,e]);return Object.keys(P).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,E)=>{let C=[];for(let T of x.keys)for(let A of P[T]||[])C.push((0,Pt.jsx)(Ci,{enableDangerouslySetInnerHTML:o,defaultText:p,separator:f,children:A.value},E+"__"+T));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)(Ci,{enableDangerouslySetInnerHTML:o,separator:f,defaultText:m,children:x.label})}),(0,Pt.jsx)("td",{className:l.value,children:C})]},E)})}),y]}):(0,Pt.jsxs)("table",{className:l.container,children:[S,(0,Pt.jsx)("tbody",{children:e&&e.length?e.map((x,E)=>x?(0,Pt.jsxs)("tr",{className:l.row,children:[(0,Pt.jsx)("td",{className:l.label,style:i?{minWidth:i}:{},children:(0,Pt.jsx)(Ci,{enableDangerouslySetInnerHTML:o,defaultText:p,separator:f,children:x.label})}),(0,Pt.jsx)("td",{className:l.value,children:(0,Pt.jsx)(Ci,{enableDangerouslySetInnerHTML:o,defaultText:p,separator:f,children:x.value})})]},E):null):null}),y]})}var dS=R(q(),1);function lA(e){let t=gt(),i=De(),n=Qs(),o=(0,cS.useMemo)(()=>{let a=t?.metadata||[],l=i?.metadata||[],c=n?.metadata||[];return[...a,...l,...c]},[t,i,n]);return(0,dS.jsx)(va,{metadata:o,...e})}var sc=R($(),1);var hS=R($(),1);function oc(e,t={},i=[]){return(0,hS.useMemo)(()=>{if(!e)return null;let n=t.quality;e&&e.extraQualities&&t.quality&&(e.extraQualities.includes(t.quality)||(n="default"));let o=nh(e);return rh({identifier:o.identifier,server:o.server,scheme:o.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:o.prefix,originalPath:o.originalPath})},[...i])}var xa=R(q(),1);function uA(e){let t=typeof e.src=="string"?e.src:e.src.id,i=zn(),[n,o]=(0,sc.useState)(!1),a;if(t){let c=i.loadServiceSync({id:t});c&&(a=c)}!a&&!n&&i.loadService({id:t}).then(()=>{o(!0)});let l=oc(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,sc.useEffect)(()=>()=>{o(!1)},[t]),l?(0,xa.jsx)("img",{src:l,alt:e.alt,className:e.className,style:e.style}):(0,xa.jsx)(pS,{...e,fetchImageService:!1})}function pS(e){if(e.fetchImageService)return(0,xa.jsx)(uA,{...e});let t=typeof e.src=="string"?{id:e.src,profile:"level0"}:e.src,i=oc(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,xa.jsx)("img",{src:i,alt:e.alt,className:e.className,style:e.style}):null}var fS=R(q(),1);function cA(e){let t=gt();return(0,fS.jsx)(va,{metadata:t?.metadata||[],...e})}var ac=R($(),1);var Jp=R(gS(),1);var hi=R(q(),1),{LazyLoadComponent:dA}=Jp||Jp.default;function ef(e){let{size:t,visible:i,classes:n,canvasId:o,figure:a}=e,l=t?.width||128,c=t?.height||t?.width||128,p=(0,hi.jsx)(hA,{...e}),m=(0,hi.jsx)(dA,{threshold:300,style:{height:c,width:l},visibleByDefault:i,children:o?(0,hi.jsx)(Bi,{canvas:o,children:p}):p});return a?(0,hi.jsx)("figure",{className:n?.figure,children:m}):m}function hA({fallback:e,size:t,classes:i,showLabel:n,alt:o,dereference:a=!1}){let l=De(),c=t?.width||128,p=t?.height||t?.width||128,m=o||zp(l?.label)||"",f=io({width:c,height:p},a);return!f||f.type!=="fixed"?(0,hi.jsx)(hi.Fragment,{children:e}):(0,hi.jsxs)(hi.Fragment,{children:[(0,hi.jsx)("div",{className:i?.imageWrapper,children:(0,hi.jsx)("img",{className:i?.img,src:f.id,alt:m})}),n?(0,hi.jsx)(Ci,{as:"figcaption",className:i?.label,children:l?.label}):null]})}var Jo=R(q(),1);function pA({flat:e,size:t,classes:i={},showLabel:n,figure:o,fallback:a}){let l=(0,ac.useRef)(null),{items:c,sequence:p,currentSequenceIndex:m,setSequenceIndex:f}=Xs(),y={row:i.selected?.row||i.row,item:i.selected?.item||i.item,figure:i.selected?.figure||i.figure,img:i.selected?.img||i.img,label:i.selected?.label||i.label,imageWrapper:i.selected?.imageWrapper||i.imageWrapper};(0,ac.useLayoutEffect)(()=>{if(!l.current)return;let P=l.current.querySelector("[data-selected=true]");P&&P.scrollIntoView({behavior:"smooth",block:"nearest",inline:"center"})},[m]);let S=[];for(let P of p){let v=[],x=p[m]===P;for(let E of P){let C=c[E];v.push((0,Jo.jsx)("div",{className:x?y.item:i.item,children:(0,Jo.jsx)(ef,{classes:x?y:i,canvasId:C.id,size:t,showLabel:n,figure:o,placeholder:(0,Jo.jsx)("div",{style:{height:128,width:128}}),fallback:a})},E))}if(e){S.push(v);continue}S.push((0,Jo.jsx)("div",{onClick:E=>{f(p.indexOf(P))},"data-selected":x,className:x?y.row:i.row,children:v},P.join("-")))}return(0,Jo.jsx)("div",{ref:l,className:i.container,children:S})}var Jt=R(q(),1),fA={draw:!0,polygon:!0,line:!0,lineBox:!0,square:!0,triangle:!0,hexagon:!0,circle:!0,delete:!0};function mA({helper:e,showShapes:t,state:i,enabled:n=fA,classNames:o={},icons:a={}}){return(0,Jt.jsxs)(Jt.Fragment,{children:[t?(0,Jt.jsxs)(Jt.Fragment,{children:[n.draw&&(0,Jt.jsx)("button",{className:o.button,onClick:()=>{e.stamps.clear(),e.draw.enable()},"data-active":!i.lineMode&&!i.selectedStamp&&t&&i.drawMode,children:a.DrawIcon||"Draw"}),n.polygon&&(0,Jt.jsx)("button",{className:o.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,Jt.jsx)("button",{className:o.button,"data-active":i.lineMode&&!i.lineBoxMode,onClick:()=>{e.modes.enableLineMode()},children:a.LineIcon||"Line"}),n.lineBox&&(0,Jt.jsx)("button",{className:o.button,"data-active":i.lineBoxMode,onClick:()=>{e.modes.enableLineBoxMode()},children:a.LineBoxIcon||"LineBox"}),n.square&&(0,Jt.jsx)("button",{className:o.button,"data-active":i.selectedStamp?.id==="square",onClick:()=>{e.stamps.square()},children:a.SquareIcon||"Square"}),n.triangle&&(0,Jt.jsx)("button",{className:o.button,"data-active":i.selectedStamp?.id==="triangle",onClick:()=>{e.stamps.triangle()},children:a.TriangleIcon||"Triangle"}),n.hexagon&&(0,Jt.jsx)("button",{className:o.button,"data-active":i.selectedStamp?.id==="hexagon",onClick:()=>{e.stamps.hexagon()},children:a.HexagonIcon||"Hexagon"})]}):null,i.showBoundingBox&&n.delete&&(0,Jt.jsx)("button",{className:o.button,onClick:()=>e.key.down("Backspace"),children:a.DeleteForeverIcon||"Delete"})]})}var Bt=R($(),1);var yS=R(q(),1),lc=(0,Bt.createContext)(Qr());lc.displayName="SelectorHelper";function gA({children:e}){return(0,yS.jsx)(lc.Provider,{value:(0,Bt.useMemo)(()=>Qr(),[]),children:e})}function yA(){return(0,Bt.useContext)(lc)}function tf(e){let t=nf(),[i,n]=(0,Bt.useState)(!1);(0,Bt.useEffect)(()=>t.withSelector(e).on("highlight",()=>{n(!0)}),[t,e]),(0,Bt.useEffect)(()=>t.withSelector(e).on("clear-highlight",()=>{n(!1)}),[t,e]);let o=(0,Bt.useCallback)(l=>{t.emit("click",{selectorId:e,event:l})},[e,t]),a=(0,Bt.useCallback)(l=>{t.emit("hover",{selectorId:e,event:l})},[e,t]);return{controller:t,onClick:o,onHover:a,isHighlighted:i}}function nf(){let e=(0,Bt.useContext)(lc);return(0,Bt.useMemo)(()=>({withSelector(t){return{on(i,n){let o=a=>{a&&a.selectorId===t&&n(a)};return e.on(i,o),()=>{e.off(i,o)}},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 vA(){let e=nf();return(0,Bt.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 es=R($(),1),vS=R(q(),1);function rf(){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 of=(0,es.createContext)(rf());of.displayName="AnnotationStyle";function sf(){return(0,es.useContext)(of)}function xA({theme:e,children:t}){let i=(0,es.useMemo)(()=>e||rf(),[e]);return(0,vS.jsx)(of.Provider,{value:i,children:t})}var ei=R($(),1);var ts=R($(),1);function bS(e){let t=e.points.length,i=!1,n=[];if(t>1){e.iedges=[];let o=e.points[t-1];for(let a=0;a<t;a++){let l=o;if(o=e.points[a],o.length===6){let m=o[2],f=o[3],y=o[4],S=o[5];n.push([a,[o[0]+m,o[1]+f],[o[0]+y,o[1]+S]]),i=!0}let c=[o[0]-l[0],o[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 SA(e,t){let i=1/0,n=null,o=-1,a=e.points.length;if(a<=1)return[null,i,o];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],f=p[1]-t[1],y=m*m+f*f;y<i&&(n=p,i=y,o=c===0?a-1:c-1)}return[n,i,o]}function hc(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])),o=Math.max(0,...e.points.map(a=>a[1]));e.boundingBox={x:t,y:i,width:n-t,height:o-i};return}e.boundingBox=null}function wA(e){return e[0]*e[0]+e[1]*e[1]}function xS(e,t){let i=1/0,n=null,o=-1,a=[],l=e.points.length;if(l<=1)return[null,i,a,o];if(e.iedges===null&&(bS(e),!e.iedges))return[null,i,a,o];let c=e.points[l-1];for(let p=0;p<l;p++){let m=c;c=e.points[p];let f=(t[0]-m[0])*e.iedges[p][0]+(t[1]-m[1])*e.iedges[p][1],y;f<=0?y=m:f<1?y=[(1-f)*m[0]+f*c[0],(1-f)*m[1]+f*c[1]]:y=c;let S=wA([y[0]-t[0],y[1]-t[1]]);S<i&&(n=y,i=S,a=[m,c],o=p===0?l-1:p-1)}return[n,i,a,o]}var PS={type:"move-bounding-box",label:"Move bounding box",isValid(e,t,i){let n=t.polygon.points.length,o=n===t.selectedPoints.length,a=t.polygon.boundingBox;if(n<1||!o||!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,o=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]),o&&(t.transitionBoundingBox={x:o.x+l,y:o.y+c,width:o.width,height:o.height})},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{points:n}}},CS={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){PS.transition(e,t,i)},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{points:n}}};function SS(e,t){return Math.abs(e-t)}function Vi(e,t){let i=SS(e[0],t[0]),n=SS(e[1],t[1]);return Math.sqrt(Math.pow(i,2)+Math.pow(n,2))}function af(e,t){return[e[0]-t[0],e[1]-t[1]]}function bA(e,t){return e[0]*t[0]+e[1]*t[1]}function ES(e){return e[0]*e[0]+e[1]*e[1]}function uc(e,t){return ES(af(e,t))}function AS(e,t){let i,n,o,a;var l=function(v,x,E,C,T){if(C<=E+1)return;let A=E,N=0,D=v*v;i=[x[E],x[C]],n=af(i[1],i[0]);let M=ES(n),k,O,K,U,G;for(let te=E+1;te<C;te++)k=af(x[te],i[0]),U=bA(k,n),U<=0?G=uc(x[te],i[0]):M<=U?G=uc(x[te],i[1]):(K=U/M,O=[i[0][0]+K*n[0],i[0][1]+K*n[1]],G=uc(x[te],O)),!(G<=N)&&(A=te,N=G);N>D&&(T[A]=1,l(v,x,E,A,T),l(v,x,A,C,T))};let c=e.length,p=[],m,f,y,S,P=t*t;for(o=[],a=[],o[0]=e[0],m=f=1,S=0;m<c;m++)uc(e[m],e[S])<P||(o[f++]=e[m],S=m);for(S<c-1&&(o[f++]=e[c-1]),a[0]=a[f-1]=1,l(t,o,0,f-1,a),m=y=0;m<f;m++)a[m]&&(p[y++]=o[m]);return p}var PA={type:"move-point",label:"Move point",modifiers:{Shift:"Constrain to axis"},isValid(e,t,i){if(i.Alt)return!1;let n=i.proximity,[o,a]=e[0],l=t.polygon.points,c=t.selectedPoints;for(let p=0;p<l.length;p++){let m=l[p],f=m[0]-o,y=m[1]-a;if(f*f+y*y<n*n)return!0}return!1},start(e,t,i){if(t.selectedPoints.length<2){let[n,o,a]=SA(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,[o,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=o-n[0],f=a-n[1];i.Shift&&(Math.abs(m)>Math.abs(f)?f=0:m=0);for(let y=0;y<l.length;y++){let S=c.indexOf(y)!==-1,P=l[y];S?P.length===6?p.push([P[0]+m,P[1]+f,P[2],P[3],P[4],P[5]]):p.push([P[0]+m,P[1]+f]):p.push(P)}t.transitionPoints=p},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{points:n}}},wS=10,CA={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[o,a]=e[0],l=t.polygon.points;for(let c=0;c<l.length;c++){let p=l[c],m=p[0]-o,f=p[1]-a;if(m*m+f*f<wS*wS)return n!==c}return!1},commit(e,t,i){let n=i.Shift?[...t.selectedPoints]:[],[o,a]=e[0],l=t.polygon.points.map((c,p)=>{let m=c[0]-o,f=c[1]-a;return[m*m+f*f,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}}},TS={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,[o,a]=e[0],l=t.polygon.points,c=[],p=o-n[0],m=a-n[1];for(let f=0;f<l.length;f++)if(c.push(l[f]),t.closestLineIndex===f){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}}},EA={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],o=t.polygon.points;return o.length===0?{selectedPoints:[0],points:[e[0]]}:(i.Shift,t.selectedPoints[0]===0?{selectedPoints:t.slowState.lineMode?[]:[0],points:[n,...o]}:(t.line=null,{selectedPoints:t.slowState.lineMode?[]:[o.length],points:[...o,n]}))}},RS={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 o=t.polygon.points[t.polygon.points.length-1];return Vi(e[0],o)<i.proximity}if(n===t.polygon.points.length-1){let o=t.polygon.points[0];return Vi(e[0],o)<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}}},AA={type:"deselect-draw",label:"Deselect draw",trigger:{type:"key",key:"Escape"},isValid(e,t,i){return!0},commit(e,t,i){return{selectedPoints:[]}}},TA={type:"select-shape",label:"Select shape",trigger:{type:"click"},isValid(e,t,i){return CS.isValid(e,t,i)},commit(e,t,i){return{selectedPoints:t.polygon.points.map((n,o)=>o)}}},RA={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:[]}}},IA={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,o=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,f=l.y+l.height-n*2;if(a[0]>c&&a[0]<p&&a[1]>m&&a[1]<f)return!1;let y=[l.x+l.width,l.y+l.height],S=[l.x,l.y],P=[l.x+l.width,l.y],v=[l.x,l.y+l.height],x=["ne","nw","se","sw"],E=[Vi(e[0],P),Vi(e[0],S),Vi(e[0],y),Vi(e[0],v)],C=Math.min(...E);if(E[0]<o||E[1]<o||E[2]<o||E[3]<o){(C>i.proximity||i.Meta)&&(t.transitionRotate=!0);let T=E.indexOf(Math.min(...E));return t.transitionDirection=T!==-1?x[T]:null,!0}return!1},start(e,t,i){let n=e[0],o=t.polygon.boundingBox,a=[o.x+o.width,o.y+o.height],l=[o.x,o.y],c=[o.x+o.width,o.y],p=[o.x,o.y+o.height],m=["ne","nw","se","sw"],f=[Vi(e[0],c),Vi(e[0],l),Vi(e[0],a),Vi(e[0],p)],y=Math.min(...f),S=f.indexOf(y);t.transitionDirection=S!==-1?m[S]:null,y>i.proximity&&(t.transitionRotate=!0)},transition(e,t,i){let n=t.polygon.boundingBox,o=[n.x,n.y],a=t.transitionOrigin||e[0],[l,c]=e[0];if(i.Meta||t.transitionRotate){o=[n.x+n.width/2,n.y+n.height/2];let v=Math.atan2(a[1]-o[1],a[0]-o[0]),x=Math.atan2(c-o[1],l-o[0]),E=i.Shift,C=Math.PI/(i.Alt?4:12),T=x-v;E&&(T=Math.round(T/C)*C);let A=Math.cos(T),N=Math.sin(T),D=[];for(let M of t.polygon.points){let k=M[0]-o[0],O=M[1]-o[1],K=k*A-O*N,U=k*N+O*A,G=K+o[0],te=U+o[1];if(M.length===6){D.push([G,te,M[2],M[3],M[4],M[5]]);continue}D.push([G,te])}t.transitionPoints=D,hc({points:D,iedges:null,boundingBox:null,isBezier:!1,bezierLines:[]}),t.transitionBoundingBox=t.polygon.boundingBox?{...t.polygon.boundingBox,rotation:T}:null;return}let p=0,m=0;switch(t.transitionDirection){case"se":{o=[n.x,n.y],p=l-a[0],m=c-a[1];break}case"sw":{o=[n.x+n.width,n.y],p=a[0]-l,m=c-a[1];break}case"ne":{o=[n.x,n.y+n.height],p=l-a[0],m=a[1]-c;break}case"nw":{o=[n.x+n.width,n.y+n.height],p=a[0]-l,m=a[1]-c;break}}if(i.Alt&&(o=[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 f=(n.width+p)/n.width,y=(n.height+m)/n.height,S=[];for(let v of t.polygon.points){let x=v[0]-o[0],E=v[1]-o[1],C=x*f,T=E*y,A=C+o[0],N=T+o[1];if(v.length===6){S.push([A,N,v[2],v[3],v[4],v[5]]);continue}S.push([A,N])}t.transitionPoints=S;let P={points:S,iedges:null,boundingBox:null,bezierLines:[],isBezier:!1};hc(P),t.transitionBoundingBox=P.boundingBox},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,t.transitionRotate=!1,{points:n}}},_A={type:"cut-line",label:"Add new point",trigger:{type:"click"},modifiers:{Shift:"Cut line"},isValid(e,t,i){return TS.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,o=[];for(let a=0;a<n.length;a++)if(o.push(n[a]),t.closestLineIndex===a){let l=t.closestLinePoint;o.push(l)}return{points:o}}},MA={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],o=t.transitionOrigin[1],a=e[0][0],l=e[0][1],c=Math.min(n,a),p=Math.min(o,l),m=Math.abs(n-a),f=Math.abs(o-l);t.selectionBox={x:c,y:p,width:m,height:f}},commit(e,t,i){if(t.selectionBox){let n=[];i.Shift&&n.push(...t.selectedPoints);for(let o=0;o<t.polygon.points.length;o++){let a=t.polygon.points[o];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(o)}return{selectedPoints:n}}}},kA={type:"deselect-points",label:"Deselect points",trigger:{type:"click"},isValid(e,t,i){return t.selectedPoints.length>0},commit(e,t,i){return{selectedPoints:[]}}},pc=4,OA={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,o=t.polygon.points,a=t.selectedPoints;return{points:o.map((l,c)=>a.includes(c)?[l[0]+(i.Shift?pc*n:1),l[1]]:l)}}},LA={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,o=t.polygon.points,a=t.selectedPoints;return{points:o.map((l,c)=>a.includes(c)?[Math.max(0,l[0]-(i.Shift?pc*n:1)),l[1]]:l)}}},zA={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,o=t.polygon.points,a=t.selectedPoints;return{points:o.map((l,c)=>{if(a.includes(c)){let p=l[0],m=Math.max(0,l[1]-(i.Shift?pc*n:1));return l.length===6?[p,m,l[2],l[3],l[4],l[5]]:[p,m]}return l})}}},NA={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,o=t.polygon.points,a=t.selectedPoints;return{points:o.map((l,c)=>{let p=l[0],m=Math.max(0,l[1]-(i.Shift?pc*n:1));return a.includes(c)?l.length===6?[p,m,l[2],l[3],l[4],l[5]]:[p,m]:l})}}},FA={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((o,a)=>!t.selectedPoints.includes(a));return{isOpen:n.length<3,selectedPoints:[],points:n}}},BA={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=AS(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]}}},DA={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 o=t.slowState.selectedStamp,a=n[0],l=n[1],c=[],p=Math.min(...o.points.map(x=>x[0])),m=Math.min(...o.points.map(x=>x[1])),f=Math.max(...o.points.map(x=>x[0]))-p,y=Math.max(...o.points.map(x=>x[1]))-m,S=f/32;y/32>S&&(S=y/32);let P=[],v=0;for(let x of o.points)P.push(v),c.push([a+(x[0]-p)/S,l+(x[1]-m)/S]),v++;return t.transitionPoints=c,{isOpen:!1,selectedPoints:P,points:c}}},transition(e,t,i){if(!t.transitionOrigin)return;let n=t.polygon.boundingBox,o=[n.x,n.y],a=t.transitionOrigin||e[0],[l,c]=e[0],p=t.transitionOrigin[0],m=t.transitionOrigin[1],f=e[0][0],y=e[0][1],S=f-p-32,P=y-m-32;if(i.Shift){let T=n.width/n.height;Math.abs(n.width/S)>Math.abs(n.height/P)?P=S/T:S=P*T}let v=(n.width+S)/n.width,x=(n.height+P)/n.height,E=[];for(let T of t.polygon.points){let A=T[0]-o[0],N=T[1]-o[1],D=A*v,M=N*x,k=D+o[0],O=M+o[1];if(T.length===6){E.push([k,O,T[2],T[3],T[4],T[5]]);continue}E.push([k,O])}t.transitionPoints=E;let C={points:E,iedges:null,boundingBox:null,bezierLines:[],isBezier:!1};hc(C),t.transitionBoundingBox=C.boundingBox},commit(e,t,i){return{isOpen:!1,points:t.transitionPoints}}},jA={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 RS.commit(e,t,i)}},VA={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],o=t.slowState.selectedStamp;if(!n||!o)return;let a=n[0],l=n[1],c=[],p=Math.min(...o.points.map(x=>x[0])),m=Math.min(...o.points.map(x=>x[1])),f=Math.max(...o.points.map(x=>x[0]))-p,y=Math.max(...o.points.map(x=>x[1]))-m,S=4*i.proximity,P=f/S;y/S>P&&(P=y/S),a-=f/P/2,l-=y/P/2;let v=0;for(let x of o.points)c.push([a+(x[0]-p)/P,l+(x[1]-m)/P]),v++;return{isOpen:!1,points:c}}},UA={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,o=e[0],a=o[0]-i[0],l=o[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}}},HA={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 IS(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 o(v,x,E){v&&x.transitionBoundingBox&&E.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,E){v&&x.polygon.boundingBox&&E.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,E){if(v&&x.polygon.boundingBox&&E.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(T=>T.join(",")).join(" "))}}function c(v,x,E){v&&x.transitionPoints&&E.transitioning&&v.setAttribute("points",x.transitionPoints.map(C=>C.join(",")).join(" "))}function p(v,x,E){v&&x.closestLinePoint&&E.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,E){v&&x.closestLinePoint&&E.hasClosestLine&&v.setAttribute("transform",`translate(${x.closestLinePoint[0]}, ${x.closestLinePoint[1]})`)}function f(v,x,E){v&&x.selectionBox&&E.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,E){if(v&&x.pointer&&x.selectedPoints.length)if(E.actionIntentType==="close-shape"||E.actionIntentType==="close-shape-line"){let C=x.polygon.points[0],T=x.polygon.points[x.polygon.points.length-1];C&&T&&v.setAttribute("points",`${C.join(",")} ${T.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,E,C=3){v&&x.transitionDraw.length&&v.setAttribute("points",AS(x.transitionDraw,C*3).map(T=>T.join(",")).join(" "))}function P(v,x){v&&x.lineBox&&v.setAttribute("points",x.lineBox.map(E=>E.join(",")).join(" "))}return{updateTransitionBoundingBox:o,updateClosestLinePointTransform:m,updateBoundingBoxPolygon:l,updateBoundingBox:a,updateTransitionShape:c,updateClosestLinePoint:p,updateSelectBox:f,updatePointLine:y,updateDrawPreview:S,updateLineBox:P}}var WA=typeof window<"u"?window.requestAnimationFrame:e=>setTimeout(e,16),qA=typeof window<"u"?window.cancelAnimationFrame:e=>clearTimeout(e),uf=[DA,IA,PA,UA,TS,CS,PS,BA,MA],QA=uf.length,lf=[HA,VA,RS,CA,jA,_A,EA,TA,RA,kA],dc=[AA,OA,LA,zA,NA,FA],Sa={};uf.forEach(e=>{Sa[e.type]=e});lf.forEach(e=>{Sa[e.type]=e});dc.forEach(e=>{Sa[e.type]=e});var cc=20;function _S(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:cc},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:[]},o={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(B){bS(B),B.isBezier&&c({bezierLines:B.bezierLines}),hc(B),o.shouldUpdate=!0}l(n.polygon);function c(B){let Q=Object.keys(B);if(Q.length===0)return;let de=o.nextSlowState||n.slowState,pe=!1;if(Q.length===1&&Q[0]==="validIntentKeys"&&de.validIntentKeys){let fe=Object.keys(de.validIntentKeys),Ue=Object.keys(B.validIntentKeys||{});if(fe.length===Ue.length){for(let He of fe)de.validIntentKeys[He]!==B.validIntentKeys[He]&&(pe=!0);if(!pe)return}}if(!(Q.length===1&&Q.includes("hasClosestLine")&&B.hasClosestLine===de.hasClosestLine)){if(o.nextSlowState){o.nextSlowState={...o.nextSlowState,...B};return}o.nextSlowState={...n.slowState,...B}}}function p(B,Q=!1){o.time+=B,m(),f(),C(),E(),x(),T(),N(),A(),o.renderFunc(n,n.slowState,B),!Q&&(o.animationFrame=WA(p))}function m(){if(o.shouldUpdate&&(t({id:n.slowState.shapeId||void 0,open:n.isOpen,points:n.polygon.points}),o.shouldUpdate=!1),o.nextSlowState&&o.nextSlowState!==n.slowState){let B=Object.keys(n.slowState),Q={},de=!1;for(let pe of B){let fe=n.slowState[pe],Ue=o.nextSlowState[pe];fe!==Ue?(de=!0,Q[pe]=Ue):Q[pe]=fe}de&&(n.slowState=Q,o.nextSlowState=null,o.setStateFunc(n.slowState))}}function f(){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(B){n.selectedPoints=B.selectedPoints,c({selectedPoints:B.selectedPoints}),n.polygon.points=B.points,n.polygon.boundingBox=null,n.polygon.iedges=null,n.polygon.isBezier=null,l(n.polygon),c({closestPoint:null}),(B.isOpen===!0||B.isOpen===!1)&&(n.isOpen=B.isOpen,o.shouldUpdate=!0)}function S(){if(o.undoStackPointer===-1)return;o.undoStackPointer--;let B=o.undoStack[o.undoStackPointer];y(B)}function P(){if(o.undoStackPointer===o.undoStack.length-1)return;o.undoStackPointer++;let B=o.undoStack[o.undoStackPointer];y(B)}function v(B){o.undoStackPointer++,o.undoStack[o.undoStackPointer]=B,o.undoStack.length>15&&(o.undoStack.shift(),o.undoStackPointer--)}function x(){if(!n.pointer||n.slowState.noShape){c({pointerInsideShape:!1});return}let[B,Q]=n.pointer,de=n.polygon.points,pe=n.polygon.boundingBox;if(!pe){c({pointerInsideShape:!1});return}if(B<pe.x||B>pe.x+pe.width||Q<pe.y||Q>pe.height+pe.y){c({pointerInsideShape:!1});return}let fe=!1;for(let Ue=0,He=de.length-1;Ue<de.length;He=Ue++)de[Ue][1]>Q!=de[He][1]>Q&&B<(de[He][0]-de[Ue][0])*(Q-de[Ue][1])/(de[He][1]-de[Ue][1])+de[Ue][0]&&(fe=!fe);c({pointerInsideShape:fe})}function E(){if(n.slowState.noShape||!n.pointer||n.slowState.transitioning||!n.polygon.points||n.polygon.points.length===0)return;let[B,Q]=n.pointer,de=n.polygon.points.map((pe,fe)=>{let Ue=pe[0]-B,He=pe[1]-Q;return[Ue*Ue+He*He,fe]}).sort((pe,fe)=>pe[0]-fe[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[B,Q,de,pe]=xS(n.polygon,n.pointer),fe=ye()*ye();Q<fe&&(!n.isOpen||n.slowState.lineMode||n.polygon.points.length-1!==pe)?(n.closestLinePoint=B,n.closestLineDistance=Math.sqrt(Q),n.closestLineIndex=pe,c({hasClosestLine:!0})):(n.closestLinePoint=null,n.closestLineDistance=0,n.closestLineIndex=-1,c({hasClosestLine:!1}))}function T(){if(!n.pointer||n.slowState.transitioning||n.slowState.noShape)return;let B=!1;for(let pe=0;pe<QA;pe++){let fe=uf[pe];if(fe.isValid(a.isPressed?[a.lastPress]:[n.pointer],n,D())){if(o.transitionIntent===fe){B=!0;break}c({transitionIntentType:fe.type}),o.transitionIntent=fe,B=!0;break}}B||o.transitionIntent&&(o.transitionIntent=null,c({transitionIntentType:null}));let Q=!1;for(let pe=0;pe<lf.length;pe++){let fe=lf[pe];if(k(fe)){if(o.actionIntent===fe){Q=!0;break}c({actionIntentType:fe.type}),o.actionIntent=fe,Q=!0;break}}Q||o.actionIntent&&(o.actionIntent=null,c({actionIntentType:null}));let de={};for(let pe=0;pe<dc.length;pe++){let fe=dc[pe];fe.trigger.type==="key"&&k(fe)&&(de[fe.trigger.key]=fe.label)}c({validIntentKeys:de})}function A(){let B=n.pointer;if(n.lineBox=null,!B||K()||n.polygon.points.length!==2)return;let[Q,de]=B,[pe,fe]=n.polygon.points[0],[Ue,He]=n.polygon.points[1],[Ee,qe,ee,Ae]=xS(n.polygon,B);if(!Ee)return;let Se=Q-Ee[0],Ei=de-Ee[1],ti=[pe,fe],zt=[Ue,He],fi=[zt[0]+Se,zt[1]+Ei],Ai=[ti[0]+Se,ti[1]+Ei];n.lineBox=[ti,zt,fi,Ai]}function N(){let B=n.pointer;if(!B||!K()||n.slowState.noShape)return;let Q=n.selectedPoints[0];if(n.line=[n.polygon.points[Q],B],n.slowState.modifiers.Shift){let de=0;if(n.polygon.points.length>1){let Se=n.selectedPoints[0];Se===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[Se-1][1]-n.polygon.points[Se][1],n.polygon.points[Se-1][0]-n.polygon.points[Se][0])}let pe=B[0]-n.polygon.points[Q][0],fe=B[1]-n.polygon.points[Q][1],Ue=Math.atan2(fe,pe),He=Math.PI/4,Ee=Math.round((Ue-de)/He)*He+de,qe=Vi(n.polygon.points[Q],B),ee=Math.cos(Ee)*qe+n.polygon.points[Q][0],Ae=Math.sin(Ee)*qe+n.polygon.points[Q][1];n.line[1]=[ee,Ae]}}function D(){return n.slowState.modifiers}function M(B){let Q=B.commit([a.lastPress],n,D());Q&&(Q.selectedPoints&&(n.selectedPoints=Q.selectedPoints,c({selectedPoints:Q.selectedPoints})),Q.points&&(n.polygon.points=Q.points,n.polygon.boundingBox=null,n.polygon.iedges=null,n.polygon.isBezier=null,n.transitionBoundingBox=null,l(n.polygon),c({closestPoint:null,selectedStamp:null})),(Q.isOpen===!0||Q.isOpen===!1)&&(n.isOpen=Q.isOpen,o.shouldUpdate=!0),v({isOpen:n.isOpen,points:n.polygon.points,selectedPoints:n.selectedPoints})),c({transitionModifiers:null})}function k(B){return B.isValid(n.pointer?[n.pointer]:[],n,D())}function O(B){B==="Delete"&&(B="Backspace");for(let Q of dc)if(!(Q.trigger.type!=="key"||Q.trigger.key!==B)&&k(Q))return M(Q),!0}function K(){let B=n.polygon.points,Q=n.pointer;if(!n.isOpen||!B.length||n.selectedPoints.length!==1||!Q)return!1;let de=n.selectedPoints[0],pe=de===0,fe=de===B.length-1;return pe||fe}let U={reset(){c({modifiers:{Alt:!1,Shift:!1,Meta:!1,proximity:cc}})},getForType(B){let Q={};if(!B)return Q;let de=Sa[B];return!de||!de.modifiers?Q:de.modifiers},set(B){B!=="Shift"&&B!=="Alt"&&B!=="Meta"||c({modifiers:{...o.nextSlowState?.modifiers||n.slowState.modifiers,[B]:!0}})},unset(B){B!=="Shift"&&B!=="Alt"&&B!=="Meta"||c({modifiers:{...o.nextSlowState?.modifiers||n.slowState.modifiers,[B]:!1}})}},G={set(B){c({selectedStamp:B})},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]]}})}},te={down(B){return B=="Shift"||B=="Alt"||B=="Meta"?(U.set(B),!0):B==="Control"?(U.set("Meta"),!0):B==="z"&&n.slowState.modifiers.Meta?(n.slowState.modifiers.Shift?P():S(),!0):O(B)},up(B){if(B==="Control"){U.unset("Meta");return}B!=="Shift"&&B!=="Alt"&&B!=="Meta"||U.unset(B)}};function Ie(B){n.scale=B,c({modifiers:{...o.nextSlowState?.modifiers||n.slowState.modifiers,proximity:B*cc}})}function ye(){return cc*n.scale}let ke={set:B=>{o.renderFunc=B},start:(B,Q)=>{o.startTime=performance.now(),o.time=0,B&&(o.renderFunc=B),Q&&(Q(n.slowState),o.setStateFunc=Q),p(0)},stop:()=>{o.animationFrame&&(qA(o.animationFrame),o.animationFrame=0)},step:(B=16)=>{p(B)}};function ve(B){let Q=B[0];if(!(!Q||!Q[0]&&Q[0]!==0||!Q[1]&&Q[1]!==0)&&!(Number.isNaN(Q[0])||Number.isNaN(Q[1]))){if(n.pointer=Q||null,n.slowState.transitioning)o.transitionIntent&&o.transitionIntent.transition(B,n,D());else if(a.isPressed&&!a.noTransition&&(!a.isClicking||Vi(a.lastPress,n.pointer)>10))if(clearTimeout(a.pressTimeout),a.isClicking=!1,o.transitionIntent){if(n.transitionOrigin=a.lastPress,c({transitioning:!0}),o.transitionIntent.start){let de=o.transitionIntent.start([a.lastPress],n,D());de&&(de.selectedPoints&&(n.selectedPoints=de.selectedPoints,c({selectedPoints:de.selectedPoints})),(de.isOpen===!0||de.isOpen===!1)&&(n.isOpen=de.isOpen,o.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:o.transitionIntent.modifiers||null}),o.transitionIntent.transition([a.lastPress],n,D())}else a.noTransition=!0}}function We(){n.pointer=null,n.slowState.transitioning||(a.isPressed=!1,a.isClicking=!1,a.lastPress=null,c({transitionIntentType:null,actionIntentType:null}),o.transitionIntent=null,o.actionIntent=null)}function Ye(){a.isClicking=!0,a.isPressed=!0,a.lastPress=n.pointer,a.pressTimeout=setTimeout(()=>{a.isPressed&&(a.isClicking=!1)},250)}function ft(){n.slowState.transitioning?(c({transitioning:!1}),o.transitionIntent&&M(o.transitionIntent),o.transitionIntent=null,c({transitionIntentType:null})):a.isClicking&&(o.actionIntent&&M(o.actionIntent),o.actionIntent=null,c({actionIntentType:null})),a.isPressed=!1,a.isClicking=!1,a.lastPress=null,a.noTransition=!1,clearTimeout(a.pressTimeout)}function je(B){n.polygon.points=B?.points||[],n.polygon.boundingBox=null,n.polygon.iedges=null,n.isOpen=B?.open||!1,l(n.polygon),o.nextSlowState=null,o.undoStack=[],o.undoStackPointer=-1,n.lineBox=null,n.line=null,a.pressTimeout&&clearTimeout(a.pressTimeout),c({noShape:B===null,shapeId:B?.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 H(B){if(!B)return"";let Q=Sa[B];return!Q||!Q.modifiers?Q.label||"":n.slowState.modifiers.Shift&&Q.modifiers.Shift?Q.modifiers.Shift:n.slowState.modifiers.Alt&&Q.modifiers.Alt?Q.modifiers.Alt:n.slowState.modifiers.Meta&&Q.modifiers.Meta?Q.modifiers.Meta:Q.label}function ge(){n.slowState.lineMode?c({lineMode:!1,lineBoxMode:!1,drawMode:!1}):c({lineMode:!0,lineBoxMode:!1,drawMode:!1})}function Fe(){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:G,key:te,setScale:Ie,clock:ke,pointer:ve,blur:We,pointerDown:Ye,pointerUp:ft,setShape:je,modes:{toggleLineBoxMode:Fe,toggleLineMode:ge,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:H}}function cf(e,t,i){let[n,o]=(0,ts.useState)({}),a=(0,ts.useMemo)(()=>_S(e,i),[]);return(0,ts.useEffect)(()=>(a.clock.start(t,o),()=>{a.clock.stop()}),[]),{state:n,helper:a}}var tt=R(q(),1),pr=IS();function df(e,t){let{image:i,currentShape:n,onChange:o,hideShapeLines:a}=e,l=(0,ei.useRef)(),c=(0,ei.useRef)(),p=(0,ei.useRef)(),m=(0,ei.useRef)(),f=(0,ei.useRef)(),y=(0,ei.useRef)(),S=(0,ei.useRef)(),P=(0,ei.useRef)(),[v,x]=(0,ei.useState)(null),[E,C]=(0,ei.useState)(!1),{helper:T,state:A}=cf(n,(G,te)=>{pr.updateTransitionBoundingBox(c.current,G,te),pr.updateBoundingBoxPolygon(l.current,G,te),pr.updateTransitionShape(y.current,G,te),pr.updateClosestLinePointTransform(m.current,G,te),pr.updateSelectBox(p.current,G,te),pr.updatePointLine(S.current,G,te),pr.updateDrawPreview(f.current,G,te,3),pr.updateLineBox(P.current,G),x(G.transitionDirection),C(G.transitionRotate)},o);(0,ei.useEffect)(()=>{T.setShape(n||null)},t),(0,ei.useEffect)(()=>{let G=()=>{T.modifiers.reset()};return document.addEventListener("mouseleave",G),()=>{document.removeEventListener("mouseleave",G)}},[]);let N=(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})})]}),D=n?n.open?"polyline":"polygon":null,M=!A.showBoundingBox&&A.closestPoint!==null&&A.actionIntentType==="select-point",k=A.actionIntentType==="add-open-point",O=A.transitionIntentType==="split-line",K=A.transitioning&&A.selectedStamp&&A.transitionIntentType==="stamp-shape",U=n&&D?(0,tt.jsxs)(tt.Fragment,{children:[(0,tt.jsx)(D,{fill:!A.transitioning&&A.showBoundingBox?"rgba(255, 0, 0, .5)":"none",strokeWidth:K?0:2,stroke:a?"transparent":"#000",points:n.points.map(G=>G.join(",")).join(" "),vectorEffect:"non-scaling-stroke",markerStart:A.showBoundingBox?void 0:"url(#dot)",markerMid:A.showBoundingBox?void 0:"url(#dot)",markerEnd:A.showBoundingBox?void 0:"url(#dot)",style:{pointerEvents:"none"}}),A.lineBoxMode&&A.actionIntentType==="close-line-box"?(0,tt.jsx)("polygon",{fill:"rgba(255, 0, 0, .4)",ref:P,stroke:"#000",strokeWidth:2,vectorEffect:"non-scaling-stroke"}):null,A.transitionIntentType==="draw-shape"&&A.transitioning?(0,tt.jsx)("polyline",{ref:f,fill:"none",stroke:"rgba(255, 0, 0, .5)",strokeWidth:2,vectorEffect:"non-scaling-stroke"}):null,!A.showBoundingBox&&A.selectedPoints&&A.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((G,te)=>A.selectedPoints?.includes(te)).map(G=>G.join(",")).join(" ")}):null,M&&A.closestPoint!==null&&n.points[A.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[A.closestPoint][0]},${n.points[A.closestPoint][1]}`}):null,!A.transitioning&&(A.actionIntentType==="add-open-point"||A.actionIntentType==="close-shape"||A.actionIntentType==="close-shape-line")?(0,tt.jsx)("polyline",{stroke:"#000",ref:S,strokeWidth:A.actionIntentType==="close-shape"?2:1,vectorEffect:"non-scaling-stroke"}):null,A.hasClosestLine&&(!A.transitionIntentType||A.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,A.transitioning?(0,tt.jsx)(D,{ref:y,fill:n.open?"none":"rgba(255, 0, 0, .5)",stroke:"rgba(255, 0, 0, .5)",strokeWidth:n.open?2:0}):null,A.transitioning&&A.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,A.showBoundingBox?null:(0,tt.jsx)("g",{name:"controls",children:!1}),A.showBoundingBox&&!K?(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:T,state:A,isAddingPoint:k,isSplitting:O,isStamping:K,isHoveringPoint:M,transitionDirection:v,transitionRotate:E,defs:N,editor:U}}var fc=R($(),1),MS=R(Rs(),1),pi=R(q(),1),kS=[{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 hf(e){let t=e.theme||kS[0],i=ou(),{image:n}=e,{helper:o,defs:a,editor:l,state:c,transitionDirection:p,isSplitting:m,transitionRotate:f,isHoveringPoint:y,isAddingPoint:S,isStamping:P}=df({currentShape:e.shape||null,onChange:e.updateShape,image:e.image,hideShapeLines:!0},[]),v=A=>{o.pointer([[~~A.atlas.x,~~A.atlas.y]])};(0,fc.useEffect)(()=>{let A=N=>{o.key.up(N.key)};return document.addEventListener("keyup",A),()=>{document.removeEventListener("keyup",A)}},[]),(0,fc.useEffect)(()=>{let A=N=>{o.key.down(N.key)};return document.addEventListener("keydown",A),()=>{document.removeEventListener("keydown",A)}},[]),(0,fc.useEffect)(()=>{let A=[];return p&&A.push(`atlas-cursor-${p}`),c.actionIntentType==="cut-line"&&c.modifiers?.Shift&&A.push("atlas-cursor-cut"),(y||c.transitionIntentType==="move-shape"||c.transitionIntentType==="move-point")&&A.push("atlas-cursor-move"),S&&A.push("atlas-cursor-crosshair"),m&&A.push("atlas-cursor-copy"),f&&A.push("atlas-cursor-rotate"),c.transitionIntentType==="draw-shape"&&A.push("atlas-cursor-draw"),i?.canvas&&i.canvas.classList.add(...A),()=>{i?.canvas&&i.canvas.classList.remove(...A)}},[i?.canvas,S,y,m,c.modifiers?.Shift,c.actionIntentType,c.transitionIntentType,p,f]);let x=e.shape&&e.shape?.points.length===0,E=e.renderControls?e.renderControls(o,c,x):null,C=document.getElementById(e.controlsHtmlId||"atlas-controls"),T="shape";return(0,pi.jsx)(pi.Fragment,{children:(0,pi.jsxs)("world-object",{height:n.height,width:n.width,onMouseMove:v,onMouseDown:o.pointerDown,onMouseUp:o.pointerUp,onMouseLeave:o.blur,children:[e.shape?(0,pi.jsxs)(pi.Fragment,{children:[(0,pi.jsx)(T,{open:e.shape.open,points:e.shape.points,relativeStyle:!0,style:P?{}:t.outer}),(0,pi.jsx)(T,{open:e.shape.open,points:e.shape.points,relativeStyle:!0,style:P?{}:t.inner})]}):null,(0,pi.jsxs)(vn,{relative:!0,interactive:!1,children:[(0,pi.jsx)("div",{style:{position:"absolute",top:0,right:0,left:0,bottom:0},children:(0,pi.jsxs)("svg",{width:"100%",height:"100%",viewBox:`0 0 ${n.width} ${n.height}`,tabIndex:-1,children:[(0,pi.jsx)("defs",{children:a}),l]})}),C?(0,MS.createPortal)(E,C,"controls"):null]})]})})}var pf=R(q(),1);function $A(e){let t=De(),i=e.annotationBucket,n=e.readOnly,o=e.id,{onClick:a,isHighlighted:l}=tf(e.id),c=sf(),p=l?c.highlighted:c[i||"hidden"]||c.hidden;if(!t)return null;if(n){let m="shape",f=e.polygon,y=f.open;return f?(0,pf.jsx)(m,{id:`shape-${o}`,points:f.points,open:y,onClick:a,relativeStyle:!0,target:{x:0,y:0,width:t.width,height:t.height},style:p}):null}return(0,pf.jsx)(hf,{image:t,shape:e.polygon||{id:e.id,open:!0,points:[]},updateShape:e.updatePolygon,theme:e.theme,controlsHtmlId:e.controlsHtmlId,renderControls:e.renderControls})}var OS=R(q(),1);function YA({annotation:e,children:t}){return(0,OS.jsx)(Gt,{value:{annotation:e},children:t})}var LS=R(q(),1);function GA({annotationPage:e,children:t}){return(0,LS.jsx)(Gt,{value:{annotationPage:e},children:t})}var zS=R(q(),1);function XA({collection:e,children:t}){return(0,zS.jsx)(Gt,{value:{collection:e},children:t})}function KA(e,t={}){return eo(t)}var fr=R($(),1);function ZA({canvasId:e}={}){let t=au(),i=Hr(),n=(0,fr.useMemo)(()=>e?[e]:t?[t.id]:i.map(m=>m.id),[e,t,i]),[o,a]=(0,fr.useState)({}),l=Ks();(0,fr.useEffect)(()=>{let m=f=>{let y=f.partOf.canvasId;y&&a(S=>({...S,[y]:f.choice}))};return l.on("choice-change",m),()=>{l.off("choice-change",m)}},[]);let c=(0,fr.useMemo)(()=>{let m=[];for(let f of n){let y=o[f];y&&m.push({canvasId:f,choice:y})}return m},[n,o]),p=(0,fr.useMemo)(()=>({makeChoice:(m,f)=>{l.emit("make-choice",{choiceId:m,...f})}}),[l]);return{choices:c,actions:p}}function JA(e,t=!1){}function eT(e){let i=qt().manifest,n=e?e.map(o=>typeof o=="string"?o:o?.id):[];return Ne(o=>{let a=i?o.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 NS=R($(),1);function tT(e,t=[]){let{id:i,selector:n}=e,o=qt(),a=i||o.collection,l=Ne(c=>a?c.iiif.entities.Collection[a]:void 0,[a]);return(0,NS.useMemo)(()=>{if(l)return n?n(l):l},[l,n,...t])}var mc=R($(),1);function iT(e,t,i,n,o=[]){let a=Me(),l=(0,mc.useMemo)(()=>Zs(a),[a]);(0,mc.useEffect)(()=>{let c=e;return c?(l.addEventListener(c,t,i,n),()=>{l.removeEventListener(c,t,i)}):()=>{}},[l,e,t,...o])}function nT(e,t){let{id:i,isLoaded:n,error:o,resource:a,requestId:l,cached:c}=qs(e,t);return{id:i,isLoaded:n,error:o,manifest:a,requestId:l,cached:c}}var wn=R($(),1);function ff({cacheKey:e}={}){let t=De(),i=eo(),n=Me(),o=zn(),[a,l]=(0,wn.useState)(void 0),[c,p]=(0,wn.useState)(!1),[m,f]=(0,wn.useState)("idle"),[y,S]=(0,wn.useState)(void 0),P=t?t.id:"undefined",v=(0,wn.useMemo)(()=>{try{if(t&&i.length){let E=i[0],C=n.get(E.body[0]),A=Ir(C)[0];return A&&o.loadServiceSync({id:A.id||A["@id"],width:A.width||t.width,height:A.height||t.height})||void 0}}catch(E){console.error(E)}},[P,e,t]),x=m==="success"&&a?a:v;return(0,wn.useEffect)(()=>{(async()=>{try{if(t&&i.length){let E=i[0],C=n.get(E.body[0]),A=Ir(C)[0];if(!A)return;p(!0),f("loading");try{let N=await o.loadService({id:A.id||A["@id"],width:A.width||t.width,height:A.height||t.height})||void 0;l(N),f("success"),p(!1)}catch(N){f("error"),S(N)}}}catch(E){f("error"),S(E)}})()},[P,e]),(0,wn.useMemo)(()=>({data:x,isFetching:c,status:m,error:y}),[x,c,m,y])}function rT(){let e=ff();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 FS=R($(),1);function oT(){let e=Me();return(0,FS.useMemo)(()=>Xr(e),[e])}return e1(sT);})();
123
123
  /*! Bundled license information:
124
124
 
125
125
  normalize-wheel/src/isEventSupported.js:
@@ -193,7 +193,7 @@ use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.productio
193
193
  * LICENSE file in the root directory of this source tree.
194
194
  *)
195
195
 
196
- @iiif/helpers/dist/chunk-WT24YEUE.js:
196
+ @iiif/helpers/dist/chunk-Q3WG4I3T.js:
197
197
  (** Code to "flatten" quadratic and cubic Bézier curves to polylines.
198
198
  *
199
199
  * All code in this module is based on JavaScript code by Raph Levien, published on his blog at