react-iiif-vault 1.3.5 → 1.4.0

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 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 Y(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=Y(r),r!==null?ke(r):null}function ke(r){if(r.tag===5||r.tag===6)return r;for(r=r.child;r!==null;){var s=ke(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 _e=Array.isArray,ve=t.getPublicInstance,We=t.getRootHostContext,Ye=t.getChildHostContext,ft=t.prepareForCommit,De=t.resetAfterCommit,H=t.createInstance,ge=t.appendInitialChild,je=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,G=t.setupIntersectionObserver,L=t.appendChild,X=t.appendChildToContainer,Z=t.commitTextUpdate,Pe=t.commitMount,Te=t.commitUpdate,Fe=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(`
1
+ "use strict";var ReactIIIFVault=(()=>{var Jw=Object.create;var ml=Object.defineProperty;var e1=Object.getOwnPropertyDescriptor;var t1=Object.getOwnPropertyNames;var i1=Object.getPrototypeOf,n1=Object.prototype.hasOwnProperty;var xt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),r1=(e,t)=>{for(var i in t)ml(e,i,{get:t[i],enumerable:!0})},eg=(e,t,i,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of t1(t))!n1.call(e,o)&&o!==i&&ml(e,o,{get:()=>t[o],enumerable:!(n=e1(t,o))||n.enumerable});return e};var I=(e,t,i)=>(i=e!=null?Jw(i1(e)):{},eg(t||!e||!e.__esModule?ml(i,"default",{value:e,enumerable:!0}):i,e)),o1=e=>eg(ml({},"__esModule",{value:!0}),e);var W=xt((fT,tg)=>{"use strict";tg.exports=React});var fg=xt((xT,pg)=>{"use strict";var lg=!1,Tr,Fd,Nd,vl,xl,ug,Sl,Bd,Dd,jd,cg,Vd,Ud,dg,hg;function ui(){if(!lg){lg=!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),dg=/FBAN\/\w+;/i.exec(e),hg=/Mobile/i.exec(e),cg=!!/Win64/.exec(e),t){Tr=t[1]?parseFloat(t[1]):t[5]?parseFloat(t[5]):NaN,Tr&&document&&document.documentMode&&(Tr=document.documentMode);var n=/(?:Trident\/(\d+.\d+))/.exec(e);ug=n?parseFloat(n[1])+4:Tr,Fd=t[2]?parseFloat(t[2]):NaN,Nd=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 Tr=Fd=Nd=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()||Tr},ieCompatibilityMode:function(){return ui()||ug>Tr},ie64:function(){return Hd.ie()&&cg},firefox:function(){return ui()||Fd},opera:function(){return ui()||Nd},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||hg},nativeApp:function(){return ui()||dg},android:function(){return ui()||jd},ipad:function(){return ui()||Ud}};pg.exports=Hd});var gg=xt((ST,mg)=>{"use strict";var wl=!!(typeof window<"u"&&window.document&&window.document.createElement),c1={canUseDOM:wl,canUseWorkers:typeof Worker<"u",canUseEventListeners:wl&&!!(window.addEventListener||window.attachEvent),canUseViewport:wl&&!!window.screen,isInWorker:!wl};mg.exports=c1});var Sg=xt((wT,xg)=>{"use strict";var yg=gg(),vg;yg.canUseDOM&&(vg=document.implementation&&document.implementation.hasFeature&&document.implementation.hasFeature("","")!==!0);function d1(e,t){if(!yg.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&&vg&&e==="wheel"&&(n=document.implementation.hasFeature("Events.wheel","3.0")),n}xg.exports=d1});var Ag=xt((bT,Eg)=>{"use strict";var h1=fg(),p1=Sg(),wg=10,bg=40,Cg=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*wg,o=i*wg,"deltaY"in e&&(o=e.deltaY),"deltaX"in e&&(n=e.deltaX),(n||o)&&e.deltaMode&&(e.deltaMode==1?(n*=bg,o*=bg):(n*=Cg,o*=Cg)),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 h1.firefox()?"DOMMouseScroll":p1("wheel")?"wheel":"mousewheel"};Eg.exports=Pg});var Ig=xt((CT,Tg)=>{"use strict";Tg.exports=Ag()});var _g=xt(bl=>{"use strict";var f1=W(),m1=Symbol.for("react.element"),g1=Symbol.for("react.fragment"),y1=Object.prototype.hasOwnProperty,v1=f1.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,x1={key:!0,ref:!0,__self:!0,__source:!0};function Rg(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)y1.call(t,n)&&!x1.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:m1,type:e,key:a,ref:l,props:o,_owner:v1.current}}bl.Fragment=g1;bl.jsx=Rg;bl.jsxs=Rg});var q=xt((ET,Mg)=>{"use strict";Mg.exports=_g()});var kg=xt((AT,Og)=>{"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;Og.exports=Wd});var Wg=xt(Ye=>{"use strict";function Yd(e,t){var i=e.length;e.push(t);e:for(;0<i;){var n=i-1>>>1,o=e[n];if(0<Pl(o,t))e[n]=t,e[i]=o,i=n;else break e}}function Xi(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>Pl(c,i))p<o&&0>Pl(m,c)?(e[n]=m,e[p]=i,n=p):(e[n]=c,e[l]=i,n=l);else if(p<o&&0>Pl(m,i))e[n]=m,e[p]=i,n=p;else break e}}return t}function Pl(e,t){var i=e.sortIndex-t.sortIndex;return i!==0?i:e.id-t.id}typeof performance=="object"&&typeof performance.now=="function"?(zg=performance,Ye.unstable_now=function(){return zg.now()}):(Qd=Date,Fg=Qd.now(),Ye.unstable_now=function(){return Qd.now()-Fg});var zg,Qd,Fg,mn=[],Jn=[],P1=1,Fi=null,Wt=3,Tl=!1,Ir=!1,As=!1,Dg=typeof setTimeout=="function"?setTimeout:null,jg=typeof clearTimeout=="function"?clearTimeout:null,Ng=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=Xi(Jn);t!==null;){if(t.callback===null)Al(Jn);else if(t.startTime<=e)Al(Jn),t.sortIndex=t.expirationTime,Yd(mn,t);else break;t=Xi(Jn)}}function Kd(e){if(As=!1,Xd(e),!Ir)if(Xi(mn)!==null)Ir=!0,Jd(Zd);else{var t=Xi(Jn);t!==null&&eh(Kd,t.startTime-e)}}function Zd(e,t){Ir=!1,As&&(As=!1,jg(Ts),Ts=-1),Tl=!0;var i=Wt;try{for(Xd(t),Fi=Xi(mn);Fi!==null&&(!(Fi.expirationTime>t)||e&&!Hg());){var n=Fi.callback;if(typeof n=="function"){Fi.callback=null,Wt=Fi.priorityLevel;var o=n(Fi.expirationTime<=t);t=Ye.unstable_now(),typeof o=="function"?Fi.callback=o:Fi===Xi(mn)&&Al(mn),Xd(t)}else Al(mn);Fi=Xi(mn)}if(Fi!==null)var a=!0;else{var l=Xi(Jn);l!==null&&eh(Kd,l.startTime-t),a=!1}return a}finally{Fi=null,Wt=i,Tl=!1}}var Il=!1,El=null,Ts=-1,Vg=5,Ug=-1;function Hg(){return!(Ye.unstable_now()-Ug<Vg)}function $d(){if(El!==null){var e=Ye.unstable_now();Ug=e;var t=!0;try{t=El(!0,e)}finally{t?Es():(Il=!1,El=null)}}else Il=!1}var Es;typeof Ng=="function"?Es=function(){Ng($d)}:typeof MessageChannel<"u"?(Gd=new MessageChannel,Bg=Gd.port2,Gd.port1.onmessage=$d,Es=function(){Bg.postMessage(null)}):Es=function(){Dg($d,0)};var Gd,Bg;function Jd(e){El=e,Il||(Il=!0,Es())}function eh(e,t){Ts=Dg(function(){e(Ye.unstable_now())},t)}Ye.unstable_IdlePriority=5;Ye.unstable_ImmediatePriority=1;Ye.unstable_LowPriority=4;Ye.unstable_NormalPriority=3;Ye.unstable_Profiling=null;Ye.unstable_UserBlockingPriority=2;Ye.unstable_cancelCallback=function(e){e.callback=null};Ye.unstable_continueExecution=function(){Ir||Tl||(Ir=!0,Jd(Zd))};Ye.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):Vg=0<e?Math.floor(1e3/e):5};Ye.unstable_getCurrentPriorityLevel=function(){return Wt};Ye.unstable_getFirstCallbackNode=function(){return Xi(mn)};Ye.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}};Ye.unstable_pauseExecution=function(){};Ye.unstable_requestPaint=function(){};Ye.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var i=Wt;Wt=e;try{return t()}finally{Wt=i}};Ye.unstable_scheduleCallback=function(e,t,i){var n=Ye.unstable_now();switch(typeof i=="object"&&i!==null?(i=i.delay,i=typeof i=="number"&&0<i?n+i:n):i=n,e){case 1:var 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:P1++,callback:t,priorityLevel:e,startTime:i,expirationTime:o,sortIndex:-1},i>n?(e.sortIndex=i,Yd(Jn,e),Xi(mn)===null&&e===Xi(Jn)&&(As?(jg(Ts),Ts=-1):As=!0,eh(Kd,i-n))):(e.sortIndex=o,Yd(mn,e),Ir||Tl||(Ir=!0,Jd(Zd))),e};Ye.unstable_shouldYield=Hg;Ye.unstable_wrapCallback=function(e){var t=Wt;return function(){var i=Wt;Wt=t;try{return e.apply(this,arguments)}finally{Wt=i}}}});var Qg=xt((_T,qg)=>{"use strict";qg.exports=Wg()});var Gg=xt((MT,$g)=>{"use strict";$g.exports=function(t){var i={},n=W(),o=Qg(),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"),b=Symbol.for("react.provider"),v=Symbol.for("react.context"),x=Symbol.for("react.forward_ref"),A=Symbol.for("react.suspense"),P=Symbol.for("react.suspense_list"),T=Symbol.for("react.memo"),E=Symbol.for("react.lazy");Symbol.for("react.scope"),Symbol.for("react.debug_trace_mode");var j=Symbol.for("react.offscreen");Symbol.for("react.legacy_hidden"),Symbol.for("react.cache"),Symbol.for("react.tracing_marker");var F=Symbol.iterator;function k(r){return r===null||typeof r!="object"?null:(r=F&&r[F]||r["@@iterator"],typeof r=="function"?r:null)}function M(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 A:return"Suspense";case P:return"SuspenseList"}if(typeof r=="object")switch(r.$$typeof){case v:return(r.displayName||"Context")+".Consumer";case b: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:M(r.type)||"Memo";case E:s=r._payload,r=r._init;try{return M(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 M(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 $(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 ee(r){if($(r)!==r)throw Error(l(188))}function L(r){var s=r.alternate;if(!s){if(s=$(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 ee(h),r;if(g===d)return ee(h),s;g=g.sibling}throw Error(l(188))}if(u.return!==d.return)u=h,d=g;else{for(var w=!1,R=h.child;R;){if(R===u){w=!0,u=h,d=g;break}if(R===d){w=!0,d=h,u=g;break}R=R.sibling}if(!w){for(R=g.child;R;){if(R===u){w=!0,u=g,d=h;break}if(R===d){w=!0,d=g,u=h;break}R=R.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 ie(r){return r=L(r),r!==null?Oe(r):null}function Oe(r){if(r.tag===5||r.tag===6)return r;for(r=r.child;r!==null;){var s=Oe(r);if(s!==null)return s;r=r.sibling}return null}function Pe(r){if(r.tag===5||r.tag===6)return r;for(r=r.child;r!==null;){if(r.tag!==4){var s=Pe(r);if(s!==null)return s}r=r.sibling}return null}var be=Array.isArray,ye=t.getPublicInstance,Xe=t.getRootHostContext,Ue=t.getChildHostContext,ht=t.prepareForCommit,Ne=t.resetAfterCommit,G=t.createInstance,le=t.appendInitialChild,Be=t.finalizeInitialChildren,D=t.prepareUpdate,Q=t.shouldSetTextContent,he=t.createTextInstance,fe=t.scheduleTimeout,me=t.cancelTimeout,He=t.noTimeout,We=t.isPrimaryRenderer,Ae=t.supportsMutation,qe=t.supportsPersistence,J=t.supportsHydration,Te=t.getInstanceFromNode,xe=t.preparePortalMount,Ai=t.getCurrentEventPriority,ti=t.detachDeletedInstance,zt=t.supportsMicrotasks,fi=t.scheduleMicrotask,Ti=t.supportsTestSelectors,gc=t.findFiberRoot,wa=t.getBoundingRect,is=t.getTextContent,sn=t.isHiddenSubtree,ns=t.matchAccessibilityRole,yc=t.setFocusIfFocusable,Y=t.setupIntersectionObserver,z=t.appendChild,X=t.appendChildToContainer,K=t.commitTextUpdate,Ce=t.commitMount,Ie=t.commitUpdate,De=t.insertBefore,U=t.insertInContainerBefore,H=t.removeChild,ce=t.removeChildFromContainer,oe=t.resetTextContent,se=t.hideInstance,Re=t.hideTextInstance,Ke=t.unhideInstance,Ze=t.unhideTextInstance,Qe=t.clearContainer,Pt=t.cloneInstance,st=t.createContainerChildSet,Et=t.appendChildToContainerChildSet,jn=t.finalizeContainerChildren,Hi=t.replaceContainerChildren,gr=t.cloneHiddenInstance,rs=t.cloneHiddenTextInstance,ba=t.canHydrateInstance,HS=t.canHydrateTextInstance,WS=t.canHydrateSuspenseInstance,yf=t.isSuspenseInstancePending,vc=t.isSuspenseInstanceFallback,qS=t.getSuspenseInstanceFallbackErrorDetails,QS=t.registerSuspenseInstanceRetry,Ca=t.getNextHydratableSibling,$S=t.getFirstHydratableChild,GS=t.getFirstHydratableChildWithinContainer,YS=t.getFirstHydratableChildWithinSuspenseInstance,XS=t.hydrateInstance,KS=t.hydrateTextInstance,ZS=t.hydrateSuspenseInstance,JS=t.getNextHydratableInstanceAfterSuspenseInstance,ew=t.commitHydratedContainer,tw=t.commitHydratedSuspenseInstance,iw=t.clearSuspenseBoundary,nw=t.clearSuspenseBoundaryFromContainer,rw=t.shouldDeleteUnhydratedTailInstances,ow=t.didNotMatchHydratedContainerTextInstance,sw=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(Z){var d=Z}Reflect.construct(r,[],s)}else{try{s.call()}catch(Z){d=Z}r.call(s.prototype)}else{try{throw Error()}catch(Z){d=Z}r()}}catch(Z){if(Z&&d&&typeof Z.stack=="string"){for(var h=Z.stack.split(`
3
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,Ie&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(_e(_)||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(_e(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(_e(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(_e(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=`
4
+ `),w=h.length-1,R=g.length-1;1<=w&&0<=R&&h[w]!==g[R];)R--;for(;1<=w&&0<=R;w--,R--)if(h[w]!==g[R]){if(w!==1||R!==1)do if(w--,R--,0>R||h[w]!==g[R]){var B=`
5
+ `+h[w].replace(" at new "," at ");return r.displayName&&B.includes("<anonymous>")&&(B=B.replace("<anonymous>",r.displayName)),B}while(1<=w&&0<=R);break}}}finally{Sc=!1,Error.prepareStackTrace=u}return(r=r?r.displayName||r.name:"")?os(r):""}var aw=Object.prototype.hasOwnProperty,bc=[],ro=-1;function Vn(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 Un={},Dt=Vn(Un),ii=Vn(!1),yr=Un;function oo(r,s){var u=r.type.contextTypes;if(!u)return Un;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 Pa(){Je(ii),Je(Dt)}function vf(r,s,u){if(Dt.current!==Un)throw Error(l(168));Ge(Dt,s),Ge(ii,u)}function xf(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||Un,yr=Dt.current,Ge(Dt,r),Ge(ii,ii.current),!0}function Sf(r,s,u){var d=r.stateNode;if(!d)throw Error(l(169));u?(r=xf(r,s,yr),d.__reactInternalMemoizedMergedChildContext=r,Je(ii),Je(Dt),Ge(Dt,r)):Je(ii),Ge(ii,u)}var Wi=Math.clz32?Math.clz32:cw,lw=Math.log,uw=Math.LN2;function cw(r){return r>>>=0,r===0?32:31-(lw(r)/uw|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 Ia(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 R=w&~h;R!==0?d=ss(R):(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-Wi(s),h=1<<u,d|=r[u],s&=~h;return d}function dw(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 hw(r,s){for(var u=r.suspendedLanes,d=r.pingedLanes,h=r.expirationTimes,g=r.pendingLanes;0<g;){var w=31-Wi(g),R=1<<w,B=h[w];B===-1?(!(R&u)||R&d)&&(h[w]=dw(R,s)):B<=s&&(r.expiredLanes|=R),g&=~R}}function Cc(r){return r=r.pendingLanes&-1073741825,r!==0?r:r&1073741824?1073741824:0}function wf(){var r=Aa;return Aa<<=1,!(Aa&4194240)&&(Aa=64),r}function Pc(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-Wi(s),r[s]=u}function pw(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-Wi(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-Wi(u),h=1<<d;h&s|r[d]&s&&(r[d]|=s),u&=~h}}var ke=0;function bf(r){return r&=-r,1<r?4<r?r&268435455?16:536870912:4:1}var Ac=o.unstable_scheduleCallback,Cf=o.unstable_cancelCallback,fw=o.unstable_shouldYield,mw=o.unstable_requestPaint,Rt=o.unstable_now,Tc=o.unstable_ImmediatePriority,gw=o.unstable_UserBlockingPriority,Ic=o.unstable_NormalPriority,yw=o.unstable_IdlePriority,Ra=null,an=null;function vw(r){if(an&&typeof an.onCommitFiberRoot=="function")try{an.onCommitFiberRoot(Ra,r,void 0,(r.current.flags&128)===128)}catch{}}function xw(r,s){return r===s&&(r!==0||1/r===1/s)||r!==r&&s!==s}var qi=typeof Object.is=="function"?Object.is:xw,En=null,_a=!1,Rc=!1;function Pf(r){En===null?En=[r]:En.push(r)}function Sw(r){_a=!0,Pf(r)}function ln(){if(!Rc&&En!==null){Rc=!0;var r=0,s=ke;try{var u=En;for(ke=1;r<u.length;r++){var d=u[r];do d=d(!0);while(d!==null)}En=null,_a=!1}catch(h){throw En!==null&&(En=En.slice(r+1)),Ac(Tc,ln),h}finally{ke=s,Rc=!1}}return null}var so=[],ao=0,Ma=null,Oa=0,Ii=[],Ri=0,vr=null,An=1,Tn="";function xr(r,s){so[ao++]=Oa,so[ao++]=Ma,Ma=r,Oa=s}function Ef(r,s,u){Ii[Ri++]=An,Ii[Ri++]=Tn,Ii[Ri++]=vr,vr=r;var d=An;r=Tn;var h=32-Wi(d)-1;d&=~(1<<h),u+=1;var g=32-Wi(s)+h;if(30<g){var w=h-h%5;g=(d&(1<<w)-1).toString(32),d>>=w,h-=w,An=1<<32-Wi(s)+h|u<<h|d,Tn=g+r}else An=1<<g|u<<h|d,Tn=r}function _c(r){r.return!==null&&(xr(r,1),Ef(r,1,0))}function Mc(r){for(;r===Ma;)Ma=so[--ao],so[ao]=null,Oa=so[--ao],so[ao]=null;for(;r===vr;)vr=Ii[--Ri],Ii[Ri]=null,Tn=Ii[--Ri],Ii[Ri]=null,An=Ii[--Ri],Ii[Ri]=null}var mi=null,_i=null,it=!1,ls=!1,Qi=null;function Af(r,s){var u=zi(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 Tf(r,s){switch(r.tag){case 5:return s=ba(s,r.type,r.pendingProps),s!==null?(r.stateNode=s,mi=r,_i=$S(s),!0):!1;case 6:return s=HS(s,r.pendingProps),s!==null?(r.stateNode=s,mi=r,_i=null,!0):!1;case 13:if(s=WS(s),s!==null){var u=vr!==null?{id:An,overflow:Tn}:null;return r.memoizedState={dehydrated:s,treeContext:u,retryLane:1073741824},u=zi(18,null,null,0),u.stateNode=s,u.return=r,r.child=u,mi=r,_i=null,!0}return!1;default:return!1}}function Oc(r){return(r.mode&1)!==0&&(r.flags&128)===0}function kc(r){if(it){var s=_i;if(s){var u=s;if(!Tf(r,s)){if(Oc(r))throw Error(l(418));s=Ca(u);var d=mi;s&&Tf(r,s)?Af(d,u):(r.flags=r.flags&-4097|2,it=!1,mi=r)}}else{if(Oc(r))throw Error(l(418));r.flags=r.flags&-4097|2,it=!1,mi=r}}}function If(r){for(r=r.return;r!==null&&r.tag!==5&&r.tag!==3&&r.tag!==13;)r=r.return;mi=r}function ka(r){if(!J||r!==mi)return!1;if(!it)return If(r),it=!0,!1;if(r.tag!==3&&(r.tag!==5||rw(r.type)&&!Q(r.type,r.memoizedProps))){var s=_i;if(s){if(Oc(r))throw Rf(),Error(l(418));for(;s;)Af(r,s),s=Ca(s)}}if(If(r),r.tag===13){if(!J)throw Error(l(316));if(r=r.memoizedState,r=r!==null?r.dehydrated:null,!r)throw Error(l(317));_i=JS(r)}else _i=mi?Ca(r.stateNode):null;return!0}function Rf(){for(var r=_i;r;)r=Ca(r)}function lo(){J&&(_i=mi=null,ls=it=!1)}function Lc(r){Qi===null?Qi=[r]:Qi.push(r)}var ww=c.ReactCurrentBatchConfig;function La(r,s){if(qi(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(!aw.call(s,h)||!qi(r[h],s[h]))return!1}return!0}function bw(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 $i(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=Vn(null),Fa=null,uo=null,zc=null;function Fc(){zc=uo=Fa=null}function _f(r,s,u){We?(Ge(za,s._currentValue),s._currentValue=u):(Ge(za,s._currentValue2),s._currentValue2=u)}function Nc(r){var s=za.current;Je(za),We?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){Fa=r,zc=uo=null,r=r.dependencies,r!==null&&r.firstContext!==null&&(r.lanes&s&&(ri=!0),r.firstContext=null)}function Mi(r){var s=We?r._currentValue:r._currentValue2;if(zc!==r)if(r={context:r,memoizedValue:s,next:null},uo===null){if(Fa===null)throw Error(l(308));uo=r,Fa.dependencies={lanes:0,firstContext:r}}else uo=uo.next=r;return s}var Sr=null;function Dc(r){Sr===null?Sr=[r]:Sr.push(r)}function Mf(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,un(r,d)}function un(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 Hn=!1;function jc(r){r.updateQueue={baseState:r.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Of(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 In(r,s){return{eventTime:r,lane:s,tag:0,payload:null,callback:null,next:null}}function Wn(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,un(r,u)}return h=d.interleaved,h===null?(s.next=s,Dc(d)):(s.next=h.next,h.next=s),d.interleaved=s,un(r,u)}function Na(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 kf(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;Hn=!1;var g=h.firstBaseUpdate,w=h.lastBaseUpdate,R=h.shared.pending;if(R!==null){h.shared.pending=null;var B=R,Z=B.next;B.next=null,w===null?g=Z:w.next=Z,w=B;var ue=r.alternate;ue!==null&&(ue=ue.updateQueue,R=ue.lastBaseUpdate,R!==w&&(R===null?ue.firstBaseUpdate=Z:R.next=Z,ue.lastBaseUpdate=B))}if(g!==null){var Se=h.baseState;w=0,ue=Z=B=null,R=g;do{var te=R.lane,et=R.eventTime;if((d&te)===te){ue!==null&&(ue=ue.next={eventTime:et,lane:0,tag:R.tag,payload:R.payload,callback:R.callback,next:null});e:{var $e=r,ai=R;switch(te=s,et=u,ai.tag){case 1:if($e=ai.payload,typeof $e=="function"){Se=$e.call(et,Se,te);break e}Se=$e;break e;case 3:$e.flags=$e.flags&-65537|128;case 0:if($e=ai.payload,te=typeof $e=="function"?$e.call(et,Se,te):$e,te==null)break e;Se=a({},Se,te);break e;case 2:Hn=!0}}R.callback!==null&&R.lane!==0&&(r.flags|=64,te=h.effects,te===null?h.effects=[R]:te.push(R))}else et={eventTime:et,lane:te,tag:R.tag,payload:R.payload,callback:R.callback,next:null},ue===null?(Z=ue=et,B=Se):ue=ue.next=et,w|=te;if(R=R.next,R===null){if(R=h.shared.pending,R===null)break;te=R,R=te.next,te.next=null,h.lastBaseUpdate=te,h.shared.pending=null}}while(!0);if(ue===null&&(B=Se),h.baseState=B,h.firstBaseUpdate=Z,h.lastBaseUpdate=ue,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);br|=w,r.lanes=w,r.memoizedState=Se}}function Lf(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 zf=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)?$(r)===r:!1},enqueueSetState:function(r,s,u){r=r._reactInternals;var d=Ht(),h=$n(r),g=In(d,h);g.payload=s,u!=null&&(g.callback=u),s=Wn(r,g,h),s!==null&&(Li(s,r,h,d),Na(s,r,h))},enqueueReplaceState:function(r,s,u){r=r._reactInternals;var d=Ht(),h=$n(r),g=In(d,h);g.tag=1,g.payload=s,u!=null&&(g.callback=u),s=Wn(r,g,h),s!==null&&(Li(s,r,h,d),Na(s,r,h))},enqueueForceUpdate:function(r,s){r=r._reactInternals;var u=Ht(),d=$n(r),h=In(u,d);h.tag=2,s!=null&&(h.callback=s),s=Wn(r,h,d),s!==null&&(Li(s,r,d,u),Na(s,r,d))}};function Ff(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 Nf(r,s,u){var d=!1,h=Un,g=s.contextType;return typeof g=="object"&&g!==null?g=Mi(g):(h=ni(s)?yr:Dt.current,d=s.contextTypes,g=(d=d!=null)?oo(r,h):Un),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 Bf(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=zf,jc(r);var g=s.contextType;typeof g=="object"&&g!==null?h.context=Mi(g):(g=ni(s)?yr: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 R=h.refs;R===zf&&(R=h.refs={}),w===null?delete R[g]:R[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 Df(r){var s=r._init;return s(r._payload)}function jf(r){function s(N,_){if(r){var V=N.deletions;V===null?(N.deletions=[_],N.flags|=16):V.push(_)}}function u(N,_){if(!r)return null;for(;_!==null;)s(N,_),_=_.sibling;return null}function d(N,_){for(N=new Map;_!==null;)_.key!==null?N.set(_.key,_):N.set(_.index,_),_=_.sibling;return N}function h(N,_){return N=Yn(N,_),N.index=0,N.sibling=null,N}function g(N,_,V){return N.index=V,r?(V=N.alternate,V!==null?(V=V.index,V<_?(N.flags|=2,_):V):(N.flags|=2,_)):(N.flags|=1048576,_)}function w(N){return r&&N.alternate===null&&(N.flags|=2),N}function R(N,_,V,ne){return _===null||_.tag!==6?(_=Rd(V,N.mode,ne),_.return=N,_):(_=h(_,V),_.return=N,_)}function B(N,_,V,ne){var ge=V.type;return ge===f?ue(N,_,V.props.children,ne,V.key):_!==null&&(_.elementType===ge||typeof ge=="object"&&ge!==null&&ge.$$typeof===E&&Df(ge)===_.type)?(ne=h(_,V.props),ne.ref=us(N,_,V),ne.return=N,ne):(ne=hl(V.type,V.key,V.props,null,N.mode,ne),ne.ref=us(N,_,V),ne.return=N,ne)}function Z(N,_,V,ne){return _===null||_.tag!==4||_.stateNode.containerInfo!==V.containerInfo||_.stateNode.implementation!==V.implementation?(_=_d(V,N.mode,ne),_.return=N,_):(_=h(_,V.children||[]),_.return=N,_)}function ue(N,_,V,ne,ge){return _===null||_.tag!==7?(_=Ar(V,N.mode,ne,ge),_.return=N,_):(_=h(_,V),_.return=N,_)}function Se(N,_,V){if(typeof _=="string"&&_!==""||typeof _=="number")return _=Rd(""+_,N.mode,V),_.return=N,_;if(typeof _=="object"&&_!==null){switch(_.$$typeof){case p:return V=hl(_.type,_.key,_.props,null,N.mode,V),V.ref=us(N,null,_),V.return=N,V;case m:return _=_d(_,N.mode,V),_.return=N,_;case E:var ne=_._init;return Se(N,ne(_._payload),V)}if(be(_)||k(_))return _=Ar(_,N.mode,V,null),_.return=N,_;ja(N,_)}return null}function te(N,_,V,ne){var ge=_!==null?_.key:null;if(typeof V=="string"&&V!==""||typeof V=="number")return ge!==null?null:R(N,_,""+V,ne);if(typeof V=="object"&&V!==null){switch(V.$$typeof){case p:return V.key===ge?B(N,_,V,ne):null;case m:return V.key===ge?Z(N,_,V,ne):null;case E:return ge=V._init,te(N,_,ge(V._payload),ne)}if(be(V)||k(V))return ge!==null?null:ue(N,_,V,ne,null);ja(N,V)}return null}function et(N,_,V,ne,ge){if(typeof ne=="string"&&ne!==""||typeof ne=="number")return N=N.get(V)||null,R(_,N,""+ne,ge);if(typeof ne=="object"&&ne!==null){switch(ne.$$typeof){case p:return N=N.get(ne.key===null?V:ne.key)||null,B(_,N,ne,ge);case m:return N=N.get(ne.key===null?V:ne.key)||null,Z(_,N,ne,ge);case E:var Ee=ne._init;return et(N,_,V,Ee(ne._payload),ge)}if(be(ne)||k(ne))return N=N.get(V)||null,ue(_,N,ne,ge,null);ja(_,ne)}return null}function $e(N,_,V,ne){for(var ge=null,Ee=null,we=_,Le=_=0,Ot=null;we!==null&&Le<V.length;Le++){we.index>Le?(Ot=we,we=null):Ot=we.sibling;var ze=te(N,we,V[Le],ne);if(ze===null){we===null&&(we=Ot);break}r&&we&&ze.alternate===null&&s(N,we),_=g(ze,_,Le),Ee===null?ge=ze:Ee.sibling=ze,Ee=ze,we=Ot}if(Le===V.length)return u(N,we),it&&xr(N,Le),ge;if(we===null){for(;Le<V.length;Le++)we=Se(N,V[Le],ne),we!==null&&(_=g(we,_,Le),Ee===null?ge=we:Ee.sibling=we,Ee=we);return it&&xr(N,Le),ge}for(we=d(N,we);Le<V.length;Le++)Ot=et(we,N,Le,V[Le],ne),Ot!==null&&(r&&Ot.alternate!==null&&we.delete(Ot.key===null?Le:Ot.key),_=g(Ot,_,Le),Ee===null?ge=Ot:Ee.sibling=Ot,Ee=Ot);return r&&we.forEach(function(Xn){return s(N,Xn)}),it&&xr(N,Le),ge}function ai(N,_,V,ne){var ge=k(V);if(typeof ge!="function")throw Error(l(150));if(V=ge.call(V),V==null)throw Error(l(151));for(var Ee=ge=null,we=_,Le=_=0,Ot=null,ze=V.next();we!==null&&!ze.done;Le++,ze=V.next()){we.index>Le?(Ot=we,we=null):Ot=we.sibling;var Xn=te(N,we,ze.value,ne);if(Xn===null){we===null&&(we=Ot);break}r&&we&&Xn.alternate===null&&s(N,we),_=g(Xn,_,Le),Ee===null?ge=Xn:Ee.sibling=Xn,Ee=Xn,we=Ot}if(ze.done)return u(N,we),it&&xr(N,Le),ge;if(we===null){for(;!ze.done;Le++,ze=V.next())ze=Se(N,ze.value,ne),ze!==null&&(_=g(ze,_,Le),Ee===null?ge=ze:Ee.sibling=ze,Ee=ze);return it&&xr(N,Le),ge}for(we=d(N,we);!ze.done;Le++,ze=V.next())ze=et(we,N,Le,ze.value,ne),ze!==null&&(r&&ze.alternate!==null&&we.delete(ze.key===null?Le:ze.key),_=g(ze,_,Le),Ee===null?ge=ze:Ee.sibling=ze,Ee=ze);return r&&we.forEach(function(Zw){return s(N,Zw)}),it&&xr(N,Le),ge}function Mn(N,_,V,ne){if(typeof V=="object"&&V!==null&&V.type===f&&V.key===null&&(V=V.props.children),typeof V=="object"&&V!==null){switch(V.$$typeof){case p:e:{for(var ge=V.key,Ee=_;Ee!==null;){if(Ee.key===ge){if(ge=V.type,ge===f){if(Ee.tag===7){u(N,Ee.sibling),_=h(Ee,V.props.children),_.return=N,N=_;break e}}else if(Ee.elementType===ge||typeof ge=="object"&&ge!==null&&ge.$$typeof===E&&Df(ge)===Ee.type){u(N,Ee.sibling),_=h(Ee,V.props),_.ref=us(N,Ee,V),_.return=N,N=_;break e}u(N,Ee);break}else s(N,Ee);Ee=Ee.sibling}V.type===f?(_=Ar(V.props.children,N.mode,ne,V.key),_.return=N,N=_):(ne=hl(V.type,V.key,V.props,null,N.mode,ne),ne.ref=us(N,_,V),ne.return=N,N=ne)}return w(N);case m:e:{for(Ee=V.key;_!==null;){if(_.key===Ee)if(_.tag===4&&_.stateNode.containerInfo===V.containerInfo&&_.stateNode.implementation===V.implementation){u(N,_.sibling),_=h(_,V.children||[]),_.return=N,N=_;break e}else{u(N,_);break}else s(N,_);_=_.sibling}_=_d(V,N.mode,ne),_.return=N,N=_}return w(N);case E:return Ee=V._init,Mn(N,_,Ee(V._payload),ne)}if(be(V))return $e(N,_,V,ne);if(k(V))return ai(N,_,V,ne);ja(N,V)}return typeof V=="string"&&V!==""||typeof V=="number"?(V=""+V,_!==null&&_.tag===6?(u(N,_.sibling),_=h(_,V),_.return=N,N=_):(u(N,_),_=Rd(V,N.mode,ne),_.return=N,N=_),w(N)):u(N,_)}return Mn}var ho=jf(!0),Vf=jf(!1),cs={},Oi=Vn(cs),ds=Vn(cs),po=Vn(cs);function cn(r){if(r===cs)throw Error(l(174));return r}function Hc(r,s){Ge(po,s),Ge(ds,r),Ge(Oi,cs),r=Xe(s),Je(Oi),Ge(Oi,r)}function fo(){Je(Oi),Je(ds),Je(po)}function Uf(r){var s=cn(po.current),u=cn(Oi.current);s=Ue(u,r.type,s),u!==s&&(Ge(ds,r),Ge(Oi,s))}function Wc(r){ds.current===r&&(Je(Oi),Je(ds))}var at=Vn(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||yf(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];We?s._workInProgressVersionPrimary=null:s._workInProgressVersionSecondary=null}qc.length=0}var Ua=c.ReactCurrentDispatcher,$c=c.ReactCurrentBatchConfig,wr=0,lt=null,At=null,_t=null,Ha=!1,hs=!1,ps=0,Cw=0;function jt(){throw Error(l(321))}function Gc(r,s){if(s===null)return!1;for(var u=0;u<s.length&&u<r.length;u++)if(!qi(r[u],s[u]))return!1;return!0}function Yc(r,s,u,d,h,g){if(wr=g,lt=s,s.memoizedState=null,s.updateQueue=null,s.lanes=0,Ua.current=r===null||r.memoizedState===null?Tw:Iw,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=Rw,r=u(d,h)}while(hs)}if(Ua.current=Qa,s=At!==null&&At.next!==null,wr=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 dn(){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 R=w=null,B=null,Z=g;do{var ue=Z.lane;if((wr&ue)===ue)B!==null&&(B=B.next={lane:0,action:Z.action,hasEagerState:Z.hasEagerState,eagerState:Z.eagerState,next:null}),d=Z.hasEagerState?Z.eagerState:r(d,Z.action);else{var Se={lane:ue,action:Z.action,hasEagerState:Z.hasEagerState,eagerState:Z.eagerState,next:null};B===null?(R=B=Se,w=d):B=B.next=Se,lt.lanes|=ue,br|=ue}Z=Z.next}while(Z!==null&&Z!==g);B===null?w=d:B.next=R,qi(d,s.memoizedState)||(ri=!0),s.memoizedState=d,s.baseState=w,s.baseQueue=B,u.lastRenderedState=d}if(r=u.interleaved,r!==null){h=r;do g=h.lane,lt.lanes|=g,br|=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);qi(g,s.memoizedState)||(ri=!0),s.memoizedState=g,s.baseQueue===null&&(s.baseState=g),u.lastRenderedState=g}return[g,d]}function Hf(){}function Wf(r,s){var u=lt,d=ki(),h=s(),g=!qi(d.memoizedState,h);if(g&&(d.memoizedState=h,ri=!0),d=d.queue,Jc($f.bind(null,u,d,r),[r]),d.getSnapshot!==s||g||_t!==null&&_t.memoizedState.tag&1){if(u.flags|=2048,ms(9,Qf.bind(null,u,d,h,s),void 0,null),Mt===null)throw Error(l(349));wr&30||qf(u,s,h)}return h}function qf(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 Qf(r,s,u,d){s.value=u,s.getSnapshot=d,Gf(s)&&Yf(r)}function $f(r,s,u){return u(function(){Gf(s)&&Yf(r)})}function Gf(r){var s=r.getSnapshot;r=r.value;try{var u=s();return!qi(r,u)}catch{return!0}}function Yf(r){var s=un(r,1);s!==null&&Li(s,r,1,-1)}function Xf(r){var s=dn();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=Aw.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 Kf(){return ki().memoizedState}function Wa(r,s,u,d){var h=dn();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&&Gc(d,w.deps)){h.memoizedState=ms(s,u,g,d);return}}lt.flags|=r,h.memoizedState=ms(1|s,u,g,d)}function Zf(r,s){return Wa(8390656,8,r,s)}function Jc(r,s){return qa(2048,8,r,s)}function Jf(r,s){return qa(4,2,r,s)}function em(r,s){return qa(4,4,r,s)}function tm(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 im(r,s,u){return u=u!=null?u.concat([r]):null,qa(4,4,tm.bind(null,s,r),u)}function ed(){}function nm(r,s){var u=ki();s=s===void 0?null:s;var d=u.memoizedState;return d!==null&&s!==null&&Gc(s,d[1])?d[0]:(u.memoizedState=[r,s],r)}function rm(r,s){var u=ki();s=s===void 0?null:s;var d=u.memoizedState;return d!==null&&s!==null&&Gc(s,d[1])?d[0]:(r=r(),u.memoizedState=[r,s],r)}function om(r,s,u){return wr&21?(qi(u,s)||(u=wf(),lt.lanes|=u,br|=u,r.baseState=!0),s):(r.baseState&&(r.baseState=!1,ri=!0),r.memoizedState=u)}function Pw(r,s){var u=ke;ke=u!==0&&4>u?u:4,r(!0);var d=$c.transition;$c.transition={};try{r(!1),s()}finally{ke=u,$c.transition=d}}function sm(){return ki().memoizedState}function Ew(r,s,u){var d=$n(r);if(u={lane:d,action:u,hasEagerState:!1,eagerState:null,next:null},am(r))lm(s,u);else if(u=Mf(r,s,u,d),u!==null){var h=Ht();Li(u,r,d,h),um(u,s,d)}}function Aw(r,s,u){var d=$n(r),h={lane:d,action:u,hasEagerState:!1,eagerState:null,next:null};if(am(r))lm(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,R=g(w,u);if(h.hasEagerState=!0,h.eagerState=R,qi(R,w)){var B=s.interleaved;B===null?(h.next=h,Dc(s)):(h.next=B.next,B.next=h),s.interleaved=h;return}}catch{}finally{}u=Mf(r,s,h,d),u!==null&&(h=Ht(),Li(u,r,d,h),um(u,s,d))}}function am(r){var s=r.alternate;return r===lt||s!==null&&s===lt}function lm(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 um(r,s,u){if(u&4194240){var d=s.lanes;d&=r.pendingLanes,u|=d,s.lanes=u,Ec(r,u)}}var Qa={readContext:Mi,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},Tw={readContext:Mi,useCallback:function(r,s){return dn().memoizedState=[r,s===void 0?null:s],r},useContext:Mi,useEffect:Zf,useImperativeHandle:function(r,s,u){return u=u!=null?u.concat([r]):null,Wa(4194308,4,tm.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=dn();return s=s===void 0?null:s,r=r(),u.memoizedState=[r,s],r},useReducer:function(r,s,u){var d=dn();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=Ew.bind(null,lt,r),[d.memoizedState,r]},useRef:function(r){var s=dn();return r={current:r},s.memoizedState=r},useState:Xf,useDebugValue:ed,useDeferredValue:function(r){return dn().memoizedState=r},useTransition:function(){var r=Xf(!1),s=r[0];return r=Pw.bind(null,r[1]),dn().memoizedState=r,[s,r]},useMutableSource:function(){},useSyncExternalStore:function(r,s,u){var d=lt,h=dn();if(it){if(u===void 0)throw Error(l(407));u=u()}else{if(u=s(),Mt===null)throw Error(l(349));wr&30||qf(d,s,u)}h.memoizedState=u;var g={value:u,getSnapshot:s};return h.queue=g,Zf($f.bind(null,d,g,r),[r]),d.flags|=2048,ms(9,Qf.bind(null,d,g,u,s),void 0,null),u},useId:function(){var r=dn(),s=Mt.identifierPrefix;if(it){var u=Tn,d=An;u=(d&~(1<<32-Wi(d)-1)).toString(32)+u,s=":"+s+"R"+u,u=ps++,0<u&&(s+="H"+u.toString(32)),s+=":"}else u=Cw++,s=":"+s+"r"+u.toString(32)+":";return r.memoizedState=s},unstable_isNewReconciler:!1},Iw={readContext:Mi,useCallback:nm,useContext:Mi,useEffect:Jc,useImperativeHandle:im,useInsertionEffect:Jf,useLayoutEffect:em,useMemo:rm,useReducer:Kc,useRef:Kf,useState:function(){return Kc(fs)},useDebugValue:ed,useDeferredValue:function(r){var s=ki();return om(s,At.memoizedState,r)},useTransition:function(){var r=Kc(fs)[0],s=ki().memoizedState;return[r,s]},useMutableSource:Hf,useSyncExternalStore:Wf,useId:sm,unstable_isNewReconciler:!1},Rw={readContext:Mi,useCallback:nm,useContext:Mi,useEffect:Jc,useImperativeHandle:im,useInsertionEffect:Jf,useLayoutEffect:em,useMemo:rm,useReducer:Zc,useRef:Kf,useState:function(){return Zc(fs)},useDebugValue:ed,useDeferredValue:function(r){var s=ki();return At===null?s.memoizedState=r:om(s,At.memoizedState,r)},useTransition:function(){var r=Zc(fs)[0],s=ki().memoizedState;return[r,s]},useMutableSource:Hf,useSyncExternalStore:Wf,useId:sm,unstable_isNewReconciler:!1};function mo(r,s){try{var u="",d=s;do u+=bw(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: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),je(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,je(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?Fe(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,Ie=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 Ie&6?It():ul!==-1?ul:ul=It()}function qn(r){return r.mode&1?Ie&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),(!(Ie&2)||r!==Mt)&&(r===Mt&&(!(Ie&2)&&(ol|=u),Tt===4&&Qn(r,Ft)),si(r,d),u===1&&Ie===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(){!(Ie&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,Ie&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=Ie;Ie|=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,Ie=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(Ie&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&&!(Ie&6)&&Cr();var s=Ie;Ie|=1;var u=mt.transition,d=Oe;try{if(mt.transition=null,Oe=1,r)return r()}finally{Oe=d,mt.transition=u,Ie=s,!(Ie&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=Ie;Ie|=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(),Ie=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(Ie&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=Ie;Ie|=4,vd.current=null,kw(r,u),Mm(u,r),De(r.containerInfo),r.current=u,Ow(u,r,h),cw(),Ie=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,Ie&6)throw Error(l(331));var h=Ie;for(Ie|=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(Ie=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()),!(Ie&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=Ie;Ie|=1;try{return r(s)}finally{Ie=u,Ie===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,Ie===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=Y(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=Ie;Ie|=1;var u=mt.transition,d=Oe;try{mt.transition=null,Oe=1,r()}finally{Oe=d,mt.transition=u,Ie=s,Ie===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:
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 _w=typeof WeakMap=="function"?WeakMap:Map;function cm(r,s,u){u=In(-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 dm(r,s,u){u=In(-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"&&(qn===null?qn=new Set([this]):qn.add(this));var w=s.stack;this.componentDidCatch(s.value,{componentStack:w!==null?w:""})}),u}function hm(r,s,u){var d=r.pingCache;if(d===null){d=r.pingCache=new _w;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=Ww.bind(null,r,s,u),s.then(r,r))}function pm(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 fm(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=In(-1,1),s.tag=2,Wn(u,s,1))),u.lanes|=1),r)}var Mw=c.ReactCurrentOwner,ri=!1;function Qt(r,s,u,d){s.child=r===null?Vf(s,null,u,d):ho(s,r.child,u,d)}function mm(r,s,u,d,h){u=u.render;var g=s.ref;return co(s,h),d=Yc(r,s,u,d,g,h),u=Xc(),r!==null&&!ri?(s.updateQueue=r.updateQueue,s.flags&=-2053,r.lanes&=~h,Rn(r,s,h)):(it&&u&&_c(s),s.flags|=1,Qt(r,s,d,h),s.child)}function gm(r,s,u,d,h){if(r===null){var g=u.type;return typeof g=="function"&&!Id(g)&&g.defaultProps===void 0&&u.compare===null&&u.defaultProps===void 0?(s.tag=15,s.type=g,ym(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 Rn(r,s,h)}return s.flags|=1,r=Yn(g,d),r.ref=s.ref,r.return=s,s.child=r}function ym(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,Rn(r,s,h)}return nd(r,s,u,d,h)}function vm(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 xm(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)?yr:Dt.current;return g=oo(s,g),co(s,h),u=Yc(r,s,u,d,g,h),d=Xc(),r!==null&&!ri?(s.updateQueue=r.updateQueue,s.flags&=-2053,r.lanes&=~h,Rn(r,s,h)):(it&&d&&_c(s),s.flags|=1,Qt(r,s,u,h),s.child)}function Sm(r,s,u,d,h){if(ni(u)){var g=!0;Ea(s)}else g=!1;if(co(s,h),s.stateNode===null)Ga(r,s),Nf(s,u,d),Uc(s,u,d,h),d=!0;else if(r===null){var w=s.stateNode,R=s.memoizedProps;w.props=R;var B=w.context,Z=u.contextType;typeof Z=="object"&&Z!==null?Z=Mi(Z):(Z=ni(u)?yr:Dt.current,Z=oo(s,Z));var ue=u.getDerivedStateFromProps,Se=typeof ue=="function"||typeof w.getSnapshotBeforeUpdate=="function";Se||typeof w.UNSAFE_componentWillReceiveProps!="function"&&typeof w.componentWillReceiveProps!="function"||(R!==d||B!==Z)&&Bf(s,w,d,Z),Hn=!1;var te=s.memoizedState;w.state=te,Ba(s,d,w,h),B=s.memoizedState,R!==d||te!==B||ii.current||Hn?(typeof ue=="function"&&(Vc(s,u,ue,d),B=s.memoizedState),(R=Hn||Ff(s,u,R,d,te,B,Z))?(Se||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=B),w.props=d,w.state=B,w.context=Z,d=R):(typeof w.componentDidMount=="function"&&(s.flags|=4194308),d=!1)}else{w=s.stateNode,Of(r,s),R=s.memoizedProps,Z=s.type===s.elementType?R:$i(s.type,R),w.props=Z,Se=s.pendingProps,te=w.context,B=u.contextType,typeof B=="object"&&B!==null?B=Mi(B):(B=ni(u)?yr:Dt.current,B=oo(s,B));var et=u.getDerivedStateFromProps;(ue=typeof et=="function"||typeof w.getSnapshotBeforeUpdate=="function")||typeof w.UNSAFE_componentWillReceiveProps!="function"&&typeof w.componentWillReceiveProps!="function"||(R!==Se||te!==B)&&Bf(s,w,d,B),Hn=!1,te=s.memoizedState,w.state=te,Ba(s,d,w,h);var $e=s.memoizedState;R!==Se||te!==$e||ii.current||Hn?(typeof et=="function"&&(Vc(s,u,et,d),$e=s.memoizedState),(Z=Hn||Ff(s,u,Z,d,te,$e,B)||!1)?(ue||typeof w.UNSAFE_componentWillUpdate!="function"&&typeof w.componentWillUpdate!="function"||(typeof w.componentWillUpdate=="function"&&w.componentWillUpdate(d,$e,B),typeof w.UNSAFE_componentWillUpdate=="function"&&w.UNSAFE_componentWillUpdate(d,$e,B)),typeof w.componentDidUpdate=="function"&&(s.flags|=4),typeof w.getSnapshotBeforeUpdate=="function"&&(s.flags|=1024)):(typeof w.componentDidUpdate!="function"||R===r.memoizedProps&&te===r.memoizedState||(s.flags|=4),typeof w.getSnapshotBeforeUpdate!="function"||R===r.memoizedProps&&te===r.memoizedState||(s.flags|=1024),s.memoizedProps=d,s.memoizedState=$e),w.props=d,w.state=$e,w.context=B,d=Z):(typeof w.componentDidUpdate!="function"||R===r.memoizedProps&&te===r.memoizedState||(s.flags|=4),typeof w.getSnapshotBeforeUpdate!="function"||R===r.memoizedProps&&te===r.memoizedState||(s.flags|=1024),d=!1)}return rd(r,s,u,d,g,h)}function rd(r,s,u,d,h,g){xm(r,s);var w=(s.flags&128)!==0;if(!d&&!w)return h&&Sf(s,u,!1),Rn(r,s,g);d=s.stateNode,Mw.current=s;var R=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,R,g)):Qt(r,s,R,g),s.memoizedState=d.state,h&&Sf(s,u,!0),s.child}function wm(r){var s=r.stateNode;s.pendingContext?vf(r,s.pendingContext,s.pendingContext!==s.context):s.context&&vf(r,s.context,!1),Hc(r,s.containerInfo)}function bm(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 Cm(r,s,u){var d=s.pendingProps,h=at.current,g=!1,w=(s.flags&128)!==0,R;if((R=w)||(R=r!==null&&r.memoizedState===null?!1:(h&2)!==0),R?(g=!0,s.flags&=-129):(r===null||r.memoizedState!==null)&&(h|=1),Ge(at,h&1),r===null)return kc(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=Ar(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&&(R=h.dehydrated,R!==null))return Ow(r,s,w,d,R,h,u);if(g){g=d.fallback,w=s.mode,h=r.child,R=h.sibling;var B={mode:"hidden",children:d.children};return!(w&1)&&s.child!==h?(d=s.child,d.childLanes=0,d.pendingProps=B,s.deletions=null):(d=Yn(h,B),d.subtreeFlags=h.subtreeFlags&14680064),R!==null?g=Yn(R,g):(g=Ar(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=Yn(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 Ow(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=Ar(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=qS(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,un(r,h),Li(d,r,h,-1))}return Td(),d=td(Error(l(421))),$a(r,s,w,d)}return yf(h)?(s.flags|=128,s.child=r.child,s=qw.bind(null,r),QS(h,s),null):(r=g.treeContext,J&&(_i=YS(h),mi=s,it=!0,Qi=null,ls=!1,r!==null&&(Ii[Ri++]=An,Ii[Ri++]=Tn,Ii[Ri++]=vr,An=r.id,Tn=r.overflow,vr=s)),s=ad(s,d.children),s.flags|=4096,s)}function Pm(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 Em(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&&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}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 Ga(r,s){!(s.mode&1)&&r!==null&&(r.alternate=null,s.alternate=null,s.flags|=2)}function Rn(r,s,u){if(r!==null&&(s.dependencies=r.dependencies),br|=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=Yn(r,r.pendingProps),s.child=u,u.return=s;r.sibling!==null;)r=r.sibling,u=u.sibling=Yn(r,r.pendingProps),u.return=s;u.sibling=null}return s.child}function kw(r,s,u){switch(s.tag){case 3:wm(s),lo();break;case 5:Uf(s);break;case 1:ni(s.type)&&Ea(s);break;case 4:Hc(s,s.stateNode.containerInfo);break;case 10:_f(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?Cm(r,s,u):(Ge(at,at.current&1),r=Rn(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 Em(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,vm(r,s,u)}return Rn(r,s,u)}function hn(r){r.flags|=4}function Am(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,Ya,Xa;if(Ae)gs=function(r,s){for(var u=s.child;u!==null;){if(u.tag===5||u.tag===6)le(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(){},Ya=function(r,s,u,d,h){if(r=r.memoizedProps,r!==d){var g=s.stateNode,w=cn(Oi.current);u=D(g,u,r,d,h,w),(s.updateQueue=u)&&hn(s)}},Xa=function(r,s,u,d){u!==d&&hn(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=gr(g,h.type,h.memoizedProps,h)),le(r,g)}else if(h.tag===6)g=h.stateNode,u&&d&&(g=rs(g,h.memoizedProps,h)),le(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 Tm=function(r,s,u,d){for(var h=s.child;h!==null;){if(h.tag===5){var g=h.stateNode;u&&d&&(g=gr(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),Tm(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(!Am(r,s)){r=u.containerInfo;var d=st(r);Tm(d,s,!1,!1),u.pendingChildren=d,hn(s),jn(r,d)}},Ya=function(r,s,u,d,h){var g=r.stateNode,w=r.memoizedProps;if((r=Am(r,s))&&w===d)s.stateNode=g;else{var R=s.stateNode,B=cn(Oi.current),Z=null;w!==d&&(Z=D(R,u,w,d,h,B)),r&&Z===null?s.stateNode=g:(g=Pt(g,Z,u,w,d,s,r,R),Be(g,u,d,h,B)&&hn(s),s.stateNode=g,r?hn(s):gs(g,s,!1,!1))}},Xa=function(r,s,u,d){u!==d?(r=cn(po.current),u=cn(Oi.current),s.stateNode=he(d,r,u,s),hn(s)):s.stateNode=r.stateNode}}else ys=function(){},Ya=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 Lw(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)&&Pa(),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)&&(ka(s)?hn(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=cn(po.current);var h=s.type;if(r!==null&&s.stateNode!=null)Ya(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=cn(Oi.current),ka(s)){if(!J)throw Error(l(175));r=XS(s.stateNode,s.type,s.memoizedProps,u,r,s,!ls),s.updateQueue=r,r!==null&&hn(s)}else{var g=G(h,d,u,r,s);gs(g,s,!1,!1),s.stateNode=g,Be(g,h,d,u,r)&&hn(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=cn(po.current),u=cn(Oi.current),ka(s)){if(!J)throw Error(l(176));if(r=s.stateNode,u=s.memoizedProps,(d=KS(r,u,s,!ls))&&(h=mi,h!==null))switch(h.tag){case 3:ow(h.stateNode.containerInfo,r,u,(h.mode&1)!==0);break;case 5:sw(h.type,h.memoizedProps,h.stateNode,r,u,(h.mode&1)!==0)}d&&hn(s)}else s.stateNode=he(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&&_i!==null&&s.mode&1&&!(s.flags&128))Rf(),lo(),s.flags|=98560,h=!1;else if(h=ka(s),d!==null&&d.dehydrated!==null){if(r===null){if(!h)throw Error(l(318));if(!J)throw Error(l(344));if(h=s.memoizedState,h=h!==null?h.dehydrated:null,!h)throw Error(l(317));ZS(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&&xe(s.stateNode.containerInfo),Vt(s),null;case 10:return Nc(s.type._context),Vt(s),null;case 17:return ni(s.type)&&Pa(),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&&Rt()>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*Rt()-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=Rt(),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),Ae&&s.subtreeFlags&6&&(s.flags|=8192)):Vt(s),null;case 24:return null;case 25:return null}throw Error(l(156,s.tag))}function zw(r,s){switch(Mc(s),s.tag){case 1:return ni(s.type)&&Pa(),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 Nc(s.type._context),null;case 22:case 23:return Ad(),null;case 24:return null;default:return null}}var Ka=!1,Ut=!1,Fw=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 Im=!1;function Nw(r,s){for(ht(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:$i(r.type,d),h);g.__reactInternalSnapshotBeforeUpdate=w}break;case 3:Ae&&Qe(r.stateNode.containerInfo);break;case 5:case 6:case 4:case 17:break;default:throw Error(l(163))}}catch(R){nt(r,r.return,R)}if(s=r.sibling,s!==null){s.return=r.return,ae=s;break}ae=r.return}return u=Im,Im=!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=ye(u);break;default:r=u}typeof s=="function"?s(r):s.current=r}}function Rm(r){var s=r.alternate;s!==null&&(r.alternate=null,Rm(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 _m(r){return r.tag===5||r.tag===3||r.tag===4}function Mm(r){e:for(;;){for(;r.sibling===null;){if(r.return===null||_m(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?U(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?De(u,r,s):z(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 Ft=null,Gi=!1;function pn(r,s,u){for(u=u.child;u!==null;)pd(r,s,u),u=u.sibling}function pd(r,s,u){if(an&&typeof an.onCommitFiberUnmount=="function")try{an.onCommitFiberUnmount(Ra,u)}catch{}switch(u.tag){case 5:Ut||go(u,s);case 6:if(Ae){var d=Ft,h=Gi;Ft=null,pn(r,s,u),Ft=d,Gi=h,Ft!==null&&(Gi?ce(Ft,u.stateNode):H(Ft,u.stateNode))}else pn(r,s,u);break;case 18:Ae&&Ft!==null&&(Gi?nw(Ft,u.stateNode):iw(Ft,u.stateNode));break;case 4:Ae?(d=Ft,h=Gi,Ft=u.stateNode.containerInfo,Gi=!0,pn(r,s,u),Ft=d,Gi=h):(qe&&(d=u.stateNode.containerInfo,h=st(d),Hi(d,h)),pn(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)}pn(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(R){nt(u,s,R)}pn(r,s,u);break;case 21:pn(r,s,u);break;case 22:u.mode&1?(Ut=(d=Ut)||u.memoizedState!==null,pn(r,s,u),Ut=d):pn(r,s,u);break;default:pn(r,s,u)}}function Om(r){var s=r.updateQueue;if(s!==null){r.updateQueue=null;var u=r.stateNode;u===null&&(u=r.stateNode=new Fw),s.forEach(function(d){var h=Qw.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(Ae){var R=w;e:for(;R!==null;){switch(R.tag){case 5:Ft=R.stateNode,Gi=!1;break e;case 3:Ft=R.stateNode.containerInfo,Gi=!0;break e;case 4:Ft=R.stateNode.containerInfo,Gi=!0;break e}R=R.return}if(Ft===null)throw Error(l(160));pd(g,w,h),Ft=null,Gi=!1}else pd(g,w,h);var B=h.alternate;B!==null&&(B.return=null),h.return=null}catch(Z){nt(h,s,Z)}}if(s.subtreeFlags&12854)for(s=s.child;s!==null;)km(s,r),s=s.sibling}function km(r,s){var u=r.alternate,d=r.flags;switch(r.tag){case 0:case 11:case 14:case 15:if(Yi(s,r),fn(r),d&4){try{xs(3,r,r.return),Za(3,r)}catch(te){nt(r,r.return,te)}try{xs(5,r,r.return)}catch(te){nt(r,r.return,te)}}break;case 1:Yi(s,r),fn(r),d&512&&u!==null&&go(u,u.return);break;case 5:if(Yi(s,r),fn(r),d&512&&u!==null&&go(u,u.return),Ae){if(r.flags&32){var h=r.stateNode;try{oe(h)}catch(te){nt(r,r.return,te)}}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{Ie(h,s,d,u,g,r)}catch(te){nt(r,r.return,te)}}}break;case 6:if(Yi(s,r),fn(r),d&4&&Ae){if(r.stateNode===null)throw Error(l(162));h=r.stateNode,g=r.memoizedProps,u=u!==null?u.memoizedProps:g;try{K(h,u,g)}catch(te){nt(r,r.return,te)}}break;case 3:if(Yi(s,r),fn(r),d&4){if(Ae&&J&&u!==null&&u.memoizedState.isDehydrated)try{ew(s.containerInfo)}catch(te){nt(r,r.return,te)}if(qe){h=s.containerInfo,g=s.pendingChildren;try{Hi(h,g)}catch(te){nt(r,r.return,te)}}}break;case 4:if(Yi(s,r),fn(r),d&4&&qe){g=r.stateNode,h=g.containerInfo,g=g.pendingChildren;try{Hi(h,g)}catch(te){nt(r,r.return,te)}}break;case 13:Yi(s,r),fn(r),h=r.child,h.flags&8192&&(g=h.memoizedState!==null,h.stateNode.isHidden=g,!g||h.alternate!==null&&h.alternate.memoizedState!==null||(Sd=Rt())),d&4&&Om(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),fn(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 R=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 B=w.stateNode;if(typeof B.componentWillUnmount=="function"){var Z=w,ue=w.return;try{var Se=Z;B.props=Se.memoizedProps,B.state=Se.memoizedState,B.componentWillUnmount()}catch(te){nt(Z,ue,te)}}break;case 5:go(w,w.return);break;case 22:if(w.memoizedState!==null){Fm(s);continue}}R!==null?(R.return=w,ae=R):Fm(s)}d=d.sibling}if(Ae){e:if(d=null,Ae)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(te){nt(r,r.return,te)}}}else if(s.tag===6){if(d===null)try{g=s.stateNode,u?Re(g):Ze(g,s.memoizedProps)}catch(te){nt(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;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),fn(r),d&4&&Om(r);break;case 21:break;default:Yi(s,r),fn(r)}}function fn(r){var s=r.flags;if(s&2){try{if(Ae){e:{for(var u=r.return;u!==null;){if(_m(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=Mm(r);hd(r,g,h);break;case 3:case 4:var w=d.stateNode.containerInfo,R=Mm(r);dd(r,R,w);break;default:throw Error(l(161))}}}catch(B){nt(r,r.return,B)}r.flags&=-3}s&4096&&(r.flags&=-4097)}function Bw(r,s,u){ae=r,Lm(r,s,u)}function Lm(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 R=h.alternate,B=R!==null&&R.memoizedState!==null||Ut;R=Ka;var Z=Ut;if(Ka=w,(Ut=B)&&!Z)for(ae=h;ae!==null;)w=ae,B=w.child,w.tag===22&&w.memoizedState!==null?Nm(h):B!==null?(B.return=w,ae=B):Nm(h);for(;g!==null;)ae=g,Lm(g,s,u),g=g.sibling;ae=h,Ka=R,Ut=Z}zm(r,s,u)}else h.subtreeFlags&8772&&g!==null?(g.return=h,ae=g):zm(r,s,u)}}function zm(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:$i(s.type,u.memoizedProps);d.componentDidUpdate(h,u.memoizedState,d.__reactInternalSnapshotBeforeUpdate)}var g=s.updateQueue;g!==null&&Lf(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=ye(s.child.stateNode);break;case 1:u=s.child.stateNode}Lf(s,w,u)}break;case 5:var R=s.stateNode;u===null&&s.flags&4&&Ce(R,s.type,s.memoizedProps,s);break;case 6:break;case 4:break;case 12:break;case 13:if(J&&s.memoizedState===null){var B=s.alternate;if(B!==null){var Z=B.memoizedState;if(Z!==null){var ue=Z.dehydrated;ue!==null&&tw(ue)}}}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(Se){nt(s,s.return,Se)}}if(s===r){ae=null;break}if(u=s.sibling,u!==null){u.return=s.return,ae=u;break}ae=s.return}}function Fm(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 Nm(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(B){nt(s,u,B)}break;case 1:var d=s.stateNode;if(typeof d.componentDidMount=="function"){var h=s.return;try{d.componentDidMount()}catch(B){nt(s,h,B)}}var g=s.return;try{cd(s)}catch(B){nt(s,g,B)}break;case 5:var w=s.return;try{cd(s)}catch(B){nt(s,w,B)}}}catch(B){nt(s,s.return,B)}if(s===r){ae=null;break}var R=s.sibling;if(R!==null){R.return=s.return,ae=R;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=Te(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||!sn(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"<"+(M(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 Bm(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||!sn(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(!Ti)throw Error(l(363));r=fd(r),r=Bm(r,s),s=[],r=Array.from(r);for(var u=0;u<r.length;){var d=r[u++];if(d.tag===5)sn(d)||s.push(d.stateNode);else for(d=d.child;d!==null;)r.push(d),d=d.sibling}return s}var Dw=Math.ceil,rl=c.ReactCurrentDispatcher,vd=c.ReactCurrentOwner,mt=c.ReactCurrentBatchConfig,_e=0,Mt=null,vt=null,Nt=0,gi=0,yo=Vn(0),Tt=0,ws=null,br=0,ol=0,xd=0,bs=null,oi=null,Sd=0,wd=1/0,_n=null;function vo(){wd=Rt()+500}var sl=!1,bd=null,qn=null,al=!1,Qn=null,ll=0,Cs=0,Cd=null,ul=-1,cl=0;function Ht(){return _e&6?Rt():ul!==-1?ul:ul=Rt()}function $n(r){return r.mode&1?_e&2&&Nt!==0?Nt&-Nt:ww.transition!==null?(cl===0&&(cl=wf()),cl):(r=ke,r!==0?r:Ai()):1}function Li(r,s,u,d){if(50<Cs)throw Cs=0,Cd=null,Error(l(185));as(r,u,d),(!(_e&2)||r!==Mt)&&(r===Mt&&(!(_e&2)&&(ol|=u),Tt===4&&Gn(r,Nt)),si(r,d),u===1&&_e===0&&!(s.mode&1)&&(vo(),_a&&ln()))}function si(r,s){var u=r.callbackNode;hw(r,s);var d=Ia(r,r===Mt?Nt:0);if(d===0)u!==null&&Cf(u),r.callbackNode=null,r.callbackPriority=0;else if(s=d&-d,r.callbackPriority!==s){if(u!=null&&Cf(u),s===1)r.tag===0?Sw(jm.bind(null,r)):Pf(jm.bind(null,r)),zt?fi(function(){!(_e&6)&&ln()}):Ac(Tc,ln),u=null;else{switch(bf(d)){case 1:u=Tc;break;case 4:u=gw;break;case 16:u=Ic;break;case 536870912:u=yw;break;default:u=Ic}u=Ym(u,Dm.bind(null,r))}r.callbackPriority=s,r.callbackNode=u}}function Dm(r,s){if(ul=-1,cl=0,_e&6)throw Error(l(327));var u=r.callbackNode;if(Er()&&r.callbackNode!==u)return null;var d=Ia(r,r===Mt?Nt: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=Hm();(Mt!==r||Nt!==s)&&(_n=null,vo(),Cr(r,s));do try{Uw();break}catch(R){Um(r,R)}while(!0);Fc(),rl.current=g,_e=h,vt!==null?s=0:(Mt=null,Nt=0,s=Tt)}if(s!==0){if(s===2&&(h=Cc(r),h!==0&&(d=h,s=Pd(r,h))),s===1)throw u=ws,Cr(r,0),Gn(r,d),si(r,Rt()),u;if(s===6)Gn(r,d);else{if(h=r.current.alternate,!(d&30)&&!jw(h)&&(s=dl(r,d),s===2&&(g=Cc(r),g!==0&&(d=g,s=Pd(r,g))),s===1))throw u=ws,Cr(r,0),Gn(r,d),si(r,Rt()),u;switch(r.finishedWork=h,r.finishedLanes=d,s){case 0:case 1:throw Error(l(345));case 2:Pr(r,oi,_n);break;case 3:if(Gn(r,d),(d&130023424)===d&&(s=Sd+500-Rt(),10<s)){if(Ia(r,0)!==0)break;if(h=r.suspendedLanes,(h&d)!==d){Ht(),r.pingedLanes|=r.suspendedLanes&h;break}r.timeoutHandle=fe(Pr.bind(null,r,oi,_n),s);break}Pr(r,oi,_n);break;case 4:if(Gn(r,d),(d&4194240)===d)break;for(s=r.eventTimes,h=-1;0<d;){var w=31-Wi(d);g=1<<w,w=s[w],w>h&&(h=w),d&=~g}if(d=h,d=Rt()-d,d=(120>d?120:480>d?480:1080>d?1080:1920>d?1920:3e3>d?3e3:4320>d?4320:1960*Dw(d/1960))-d,10<d){r.timeoutHandle=fe(Pr.bind(null,r,oi,_n),d);break}Pr(r,oi,_n);break;case 5:Pr(r,oi,_n);break;default:throw Error(l(329))}}}return si(r,Rt()),r.callbackNode===u?Dm.bind(null,r):null}function Pd(r,s){var u=bs;return r.current.memoizedState.isDehydrated&&(Cr(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 jw(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(!qi(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 Gn(r,s){for(s&=~xd,s&=~ol,r.suspendedLanes|=s,r.pingedLanes&=~s,r=r.expirationTimes;0<s;){var u=31-Wi(s),d=1<<u;r[u]=-1,s&=~d}}function jm(r){if(_e&6)throw Error(l(327));Er();var s=Ia(r,0);if(!(s&1))return si(r,Rt()),null;var u=dl(r,s);if(r.tag!==0&&u===2){var d=Cc(r);d!==0&&(s=d,u=Pd(r,d))}if(u===1)throw u=ws,Cr(r,0),Gn(r,s),si(r,Rt()),u;if(u===6)throw Error(l(345));return r.finishedWork=r.current.alternate,r.finishedLanes=s,Pr(r,oi,_n),si(r,Rt()),null}function Vm(r){Qn!==null&&Qn.tag===0&&!(_e&6)&&Er();var s=_e;_e|=1;var u=mt.transition,d=ke;try{if(mt.transition=null,ke=1,r)return r()}finally{ke=d,mt.transition=u,_e=s,!(_e&6)&&ln()}}function Ad(){gi=yo.current,Je(yo)}function Cr(r,s){r.finishedWork=null,r.finishedLanes=0;var u=r.timeoutHandle;if(u!==He&&(r.timeoutHandle=He,me(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&&Pa();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:Nc(d.type._context);break;case 22:case 23:Ad()}u=u.return}if(Mt=r,vt=r=Yn(r.current,null),Nt=gi=s,Tt=0,ws=null,xd=ol=br=0,oi=bs=null,Sr!==null){for(s=0;s<Sr.length;s++)if(u=Sr[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}Sr=null}return r}function Um(r,s){do{var u=vt;try{if(Fc(),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(wr=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,R=u,B=s;if(s=Nt,R.flags|=32768,B!==null&&typeof B=="object"&&typeof B.then=="function"){var Z=B,ue=R,Se=ue.tag;if(!(ue.mode&1)&&(Se===0||Se===11||Se===15)){var te=ue.alternate;te?(ue.updateQueue=te.updateQueue,ue.memoizedState=te.memoizedState,ue.lanes=te.lanes):(ue.updateQueue=null,ue.memoizedState=null)}var et=pm(w);if(et!==null){et.flags&=-257,fm(et,w,R,g,s),et.mode&1&&hm(g,Z,s),s=et,B=Z;var $e=s.updateQueue;if($e===null){var ai=new Set;ai.add(B),s.updateQueue=ai}else $e.add(B);break e}else{if(!(s&1)){hm(g,Z,s),Td();break e}B=Error(l(426))}}else if(it&&R.mode&1){var Mn=pm(w);if(Mn!==null){!(Mn.flags&65536)&&(Mn.flags|=256),fm(Mn,w,R,g,s),Lc(mo(B,R));break e}}g=B=mo(B,R),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 N=cm(g,B,s);kf(g,N);break e;case 1:R=B;var _=g.type,V=g.stateNode;if(!(g.flags&128)&&(typeof _.getDerivedStateFromError=="function"||V!==null&&typeof V.componentDidCatch=="function"&&(qn===null||!qn.has(V)))){g.flags|=65536,s&=-s,g.lanes|=s;var ne=dm(g,R,s);kf(g,ne);break e}}g=g.return}while(g!==null)}qm(u)}catch(ge){s=ge,vt===u&&u!==null&&(vt=u=u.return);continue}break}while(!0)}function Hm(){var r=rl.current;return rl.current=Qa,r===null?Qa:r}function Td(){(Tt===0||Tt===3||Tt===2)&&(Tt=4),Mt===null||!(br&268435455)&&!(ol&268435455)||Gn(Mt,Nt)}function dl(r,s){var u=_e;_e|=2;var d=Hm();(Mt!==r||Nt!==s)&&(_n=null,Cr(r,s));do try{Vw();break}catch(h){Um(r,h)}while(!0);if(Fc(),_e=u,rl.current=d,vt!==null)throw Error(l(261));return Mt=null,Nt=0,Tt}function Vw(){for(;vt!==null;)Wm(vt)}function Uw(){for(;vt!==null&&!fw();)Wm(vt)}function Wm(r){var s=Gm(r.alternate,r,gi);r.memoizedProps=r.pendingProps,s===null?qm(r):vt=s,vd.current=null}function qm(r){var s=r;do{var u=s.alternate;if(r=s.return,s.flags&32768){if(u=zw(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=Lw(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=ke,h=mt.transition;try{mt.transition=null,ke=1,Hw(r,s,u,d)}finally{mt.transition=h,ke=d}return null}function Hw(r,s,u,d){do Er();while(Qn!==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(pw(r,g),r===Mt&&(vt=Mt=null,Nt=0),!(u.subtreeFlags&2064)&&!(u.flags&2064)||al||(al=!0,Ym(Ic,function(){return Er(),null})),g=(u.flags&15990)!==0,u.subtreeFlags&15990||g){g=mt.transition,mt.transition=null;var w=ke;ke=1;var R=_e;_e|=4,vd.current=null,Nw(r,u),km(u,r),Ne(r.containerInfo),r.current=u,Bw(u,r,h),mw(),_e=R,ke=w,mt.transition=g}else r.current=u;if(al&&(al=!1,Qn=r,ll=h),g=r.pendingLanes,g===0&&(qn=null),vw(u.stateNode,d),si(r,Rt()),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&&Er(),g=r.pendingLanes,g&1?r===Cd?Cs++:(Cs=0,Cd=r):Cs=0,ln(),null}function Er(){if(Qn!==null){var r=bf(ll),s=mt.transition,u=ke;try{if(mt.transition=null,ke=16>r?16:r,Qn===null)var d=!1;else{if(r=Qn,Qn=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 R=g.deletions;if(R!==null){for(var B=0;B<R.length;B++){var Z=R[B];for(ae=Z;ae!==null;){var ue=ae;switch(ue.tag){case 0:case 11:case 15:xs(8,ue,g)}var Se=ue.child;if(Se!==null)Se.return=ue,ae=Se;else for(;ae!==null;){ue=ae;var te=ue.sibling,et=ue.return;if(Rm(ue),ue===Z){ae=null;break}if(te!==null){te.return=et,ae=te;break}ae=et}}}var $e=g.alternate;if($e!==null){var ai=$e.child;if(ai!==null){$e.child=null;do{var Mn=ai.sibling;ai.sibling=null,ai=Mn}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 N=g.sibling;if(N!==null){N.return=g.return,ae=N;break e}ae=g.return}}var _=r.current;for(ae=_;ae!==null;){w=ae;var V=w.child;if(w.subtreeFlags&2064&&V!==null)V.return=w,ae=V;else e:for(w=_;ae!==null;){if(R=ae,R.flags&2048)try{switch(R.tag){case 0:case 11:case 15:Za(9,R)}}catch(ge){nt(R,R.return,ge)}if(R===w){ae=null;break e}var ne=R.sibling;if(ne!==null){ne.return=R.return,ae=ne;break e}ae=R.return}}if(_e=h,ln(),an&&typeof an.onPostCommitFiberRoot=="function")try{an.onPostCommitFiberRoot(Ra,r)}catch{}d=!0}return d}finally{ke=u,mt.transition=s}}return!1}function Qm(r,s,u){s=mo(u,s),s=cm(r,s,1),r=Wn(r,s,1),s=Ht(),r!==null&&(as(r,1,s),si(r,s))}function nt(r,s,u){if(r.tag===3)Qm(r,r,u);else for(;s!==null;){if(s.tag===3){Qm(s,r,u);break}else if(s.tag===1){var d=s.stateNode;if(typeof s.type.getDerivedStateFromError=="function"||typeof d.componentDidCatch=="function"&&(qn===null||!qn.has(d))){r=mo(u,r),r=dm(s,r,1),s=Wn(s,r,1),r=Ht(),s!==null&&(as(s,1,r),si(s,r));break}}s=s.return}}function Ww(r,s,u){var d=r.pingCache;d!==null&&d.delete(s),s=Ht(),r.pingedLanes|=r.suspendedLanes&u,Mt===r&&(Nt&u)===u&&(Tt===4||Tt===3&&(Nt&130023424)===Nt&&500>Rt()-Sd?Cr(r,0):xd|=u),si(r,s)}function $m(r,s){s===0&&(r.mode&1?(s=Ta,Ta<<=1,!(Ta&130023424)&&(Ta=4194304)):s=1);var u=Ht();r=un(r,s),r!==null&&(as(r,s,u),si(r,u))}function qw(r){var s=r.memoizedState,u=0;s!==null&&(u=s.retryLane),$m(r,u)}function Qw(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),$m(r,u)}var Gm;Gm=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,kw(r,s,u);ri=!!(r.flags&131072)}else ri=!1,it&&s.flags&1048576&&Ef(s,Oa,s.index);switch(s.lanes=0,s.tag){case 2:var d=s.type;Ga(r,s),r=s.pendingProps;var h=oo(s,Dt.current);co(s,u),h=Yc(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(Ga(r,s),r=s.pendingProps,h=d._init,d=h(d._payload),s.type=d,h=s.tag=Gw(d),r=$i(d,r),h){case 0:s=nd(null,s,d,r,u);break e;case 1:s=Sm(null,s,d,r,u);break e;case 11:s=mm(null,s,d,r,u);break e;case 14:s=gm(null,s,d,$i(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:$i(d,h),nd(r,s,d,h,u);case 1:return d=s.type,h=s.pendingProps,h=s.elementType===d?h:$i(d,h),Sm(r,s,d,h,u);case 3:e:{if(wm(s),r===null)throw Error(l(387));d=s.pendingProps,g=s.memoizedState,h=g.element,Of(r,s),Ba(s,d,null,u);var w=s.memoizedState;if(d=w.element,J&&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=bm(r,s,d,u,h);break e}else if(d!==h){h=mo(Error(l(424)),s),s=bm(r,s,d,u,h);break e}else for(J&&(_i=GS(s.stateNode.containerInfo),mi=s,it=!0,Qi=null,ls=!1),u=Vf(s,null,d,u),s.child=u;u;)u.flags=u.flags&-3|4096,u=u.sibling;else{if(lo(),d===h){s=Rn(r,s,u);break e}Qt(r,s,d,u)}s=s.child}return s;case 5:return Uf(s),r===null&&kc(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),xm(r,s),Qt(r,s,w,u),s.child;case 6:return r===null&&kc(s),null;case 13:return Cm(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:$i(d,h),mm(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,_f(s,d,w),g!==null)if(qi(g.value,w)){if(g.children===h.children&&!ii.current){s=Rn(r,s,u);break e}}else for(g=s.child,g!==null&&(g.return=s);g!==null;){var R=g.dependencies;if(R!==null){w=g.child;for(var B=R.firstContext;B!==null;){if(B.context===d){if(g.tag===1){B=In(-1,u&-u),B.tag=2;var Z=g.updateQueue;if(Z!==null){Z=Z.shared;var ue=Z.pending;ue===null?B.next=B:(B.next=ue.next,ue.next=B),Z.pending=B}}g.lanes|=u,B=g.alternate,B!==null&&(B.lanes|=u),Bc(g.return,u,s),R.lanes|=u;break}B=B.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,R=w.alternate,R!==null&&(R.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=Mi(h),d=d(h),s.flags|=1,Qt(r,s,d,u),s.child;case 14:return d=s.type,h=$i(d,s.pendingProps),h=$i(d.type,h),gm(r,s,d,h,u);case 15:return ym(r,s,s.type,s.pendingProps,u);case 17:return d=s.type,h=s.pendingProps,h=s.elementType===d?h:$i(d,h),Ga(r,s),s.tag=1,ni(d)?(r=!0,Ea(s)):r=!1,co(s,u),Nf(s,d,h),Uc(s,d,h,u),rd(null,s,d,!0,r,u);case 19:return Em(r,s,u);case 22:return vm(r,s,u)}throw Error(l(156,s.tag))};function Ym(r,s){return Ac(r,s)}function $w(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 zi(r,s,u,d){return new $w(r,s,u,d)}function Id(r){return r=r.prototype,!(!r||!r.isReactComponent)}function Gw(r){if(typeof r=="function")return Id(r)?1:0;if(r!=null){if(r=r.$$typeof,r===x)return 11;if(r===T)return 14}return 2}function Yn(r,s){var u=r.alternate;return u===null?(u=zi(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")Id(r)&&(w=1);else if(typeof r=="string")w=5;else e:switch(r){case f:return Ar(u.children,h,g,s);case y:w=8,h|=8;break;case S:return r=zi(12,u,s,h|2),r.elementType=S,r.lanes=g,r;case A:return r=zi(13,u,s,h),r.elementType=A,r.lanes=g,r;case P:return r=zi(19,u,s,h),r.elementType=P,r.lanes=g,r;case j:return pl(u,h,g,s);default:if(typeof r=="object"&&r!==null)switch(r.$$typeof){case b:w=10;break e;case v:w=9;break e;case x:w=11;break e;case T:w=14;break e;case E:w=16,d=null;break e}throw Error(l(130,r==null?r:typeof r,""))}return s=zi(w,u,s,h),s.elementType=r,s.type=d,s.lanes=g,s}function Ar(r,s,u,d){return r=zi(7,r,d,s),r.lanes=u,r}function pl(r,s,u,d){return r=zi(22,r,d,s),r.elementType=j,r.lanes=u,r.stateNode={isHidden:!1},r}function Rd(r,s,u){return r=zi(6,r,null,s),r.lanes=u,r}function _d(r,s,u){return s=zi(4,r.children!==null?r.children:[],r.key,s),s.lanes=u,s.stateNode={containerInfo:r.containerInfo,pendingChildren:null,implementation:r.implementation},s}function Yw(r,s,u,d,h){this.tag=s,this.containerInfo=r,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=He,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Pc(0),this.expirationTimes=Pc(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Pc(0),this.identifierPrefix=d,this.onRecoverableError=h,J&&(this.mutableSourceEagerHydrationData=null)}function Xm(r,s,u,d,h,g,w,R,B){return r=new Yw(r,s,u,R,B),s===1?(s=1,g===!0&&(s|=8)):s=0,g=zi(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 Km(r){if(!r)return Un;r=r._reactInternals;e:{if($(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 xf(r,u,s)}return s}function Zm(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=ie(s),r===null?null:r.stateNode}function Jm(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){Jm(r,s),(r=r.alternate)&&Jm(r,s)}function Xw(r){return r=ie(r),r===null?null:r.stateNode}function Kw(){return null}return i.attemptContinuousHydration=function(r){if(r.tag===13){var s=un(r,134217728);if(s!==null){var u=Ht();Li(s,r,134217728,u)}fl(r,134217728)}},i.attemptDiscreteHydration=function(r){if(r.tag===13){var s=un(r,1);if(s!==null){var u=Ht();Li(s,r,1,u)}fl(r,1)}},i.attemptHydrationAtCurrentPriority=function(r){if(r.tag===13){var s=$n(r),u=un(r,s);if(u!==null){var d=Ht();Li(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,Rt()),!(_e&6)&&(vo(),ln()))}break;case 13:Vm(function(){var d=un(r,1);if(d!==null){var h=Ht();Li(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&&ln())}},i.createComponentSelector=function(r){return{$$typeof:Ja,value:r}},i.createContainer=function(r,s,u,d,h,g,w){return Xm(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,R,B){return r=Xm(u,d,!0,r,h,g,w,R,B),r.context=Km(null),u=r.current,d=Ht(),h=$n(u),g=In(d,h),g.callback=s??null,Wn(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=ke,u=mt.transition;try{return mt.transition=null,ke=16,r()}finally{ke=s,mt.transition=u}},i.discreteUpdates=function(r,s,u,d,h){var g=ke,w=mt.transition;try{return mt.transition=null,ke=1,r(s,u,d,h)}finally{ke=g,mt.transition=w,_e===0&&vo()}},i.findAllNodes=yd,i.findBoundingRects=function(r,s){if(!Ti)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,R=s-1;0<=R;R--)if(s!==R){var B=r[R],Z=B.x,ue=Z+B.width,Se=B.y,te=Se+B.height;if(d>=Z&&g>=Se&&h<=ue&&w<=te){r.splice(s,1);break}else if(d!==Z||u.width!==B.width||te<g||Se>w){if(!(g!==Se||u.height!==B.height||ue<d||Z>h)){Z>d&&(B.width+=Z-d,B.x=d),ue<h&&(B.width=h-Z),r.splice(s,1);break}}else{Se>g&&(B.height+=Se-g,B.y=g),te<w&&(B.height=w-Se),r.splice(s,1);break}}}return r},i.findHostInstance=Zm,i.findHostInstanceWithNoPortals=function(r){return r=L(r),r=r!==null?Pe(r):null,r===null?null:r.stateNode},i.findHostInstanceWithWarning=function(r){return Zm(r)},i.flushControlled=function(r){var s=_e;_e|=1;var u=mt.transition,d=ke;try{mt.transition=null,ke=1,r()}finally{ke=d,mt.transition=u,_e=s,_e===0&&(vo(),ln())}},i.flushPassiveEffects=Er,i.flushSync=Vm,i.focusWithin=function(r,s){if(!Ti)throw Error(l(363));for(r=fd(r),s=Bm(r,s),s=Array.from(s),r=0;r<s.length;){var u=s[r++];if(!sn(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 ke},i.getFindAllNodesFailureDescription=function(r,s){if(!Ti)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++],R=s[w];if((g.tag!==5||!sn(g))&&(md(g,R)&&(d.push(gd(R)),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
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: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=G(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,Y,te,ke,ye=0,_e=!1,ve=!1,We=!0;if(typeof D!="function")throw new TypeError("Expected a function");function Ye(je){var B=O,Q=K;return O=K=void 0,ye=je,Y=D.apply(Q,B)}function ft(je){var B=je-ke;return ke===void 0||B>=M||B<0||ve&&je-ye>=U}function De(){var je=T();if(ft(je))return H(je);te=setTimeout(De,function(B){var Q=M-(B-ke);return ve?C(Q,U-(B-ye)):Q}(je))}function H(je){return te=void 0,We&&O?Ye(je):(O=K=void 0,Y)}function ge(){var je=T(),B=ft(je);if(O=arguments,K=this,ke=je,B){if(te===void 0)return function(Q){return ye=Q,te=setTimeout(De,M),_e?Ye(Q):Y}(ke);if(ve)return te=setTimeout(De,M),Ye(ke)}return te===void 0&&(te=setTimeout(De,M)),Y}return M=N(M)||0,A(k)&&(_e=!!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=ke=K=te=void 0},ge.flush=function(){return te===void 0?Y: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(Y){return typeof Y=="symbol"||function(te){return!!te&&typeof te=="object"}(Y)&&T.call(Y)==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 Y=!0,te=!0;if(typeof O!="function")throw new TypeError(c);return M(U)&&(Y="leading"in U?!!U.leading:Y,te="trailing"in U?!!U.trailing:te),function(ke,ye,_e){var ve,We,Ye,ft,De,H,ge=0,je=!1,B=!1,Q=!0;if(typeof ke!="function")throw new TypeError(c);function de(Ee){var qe=ve,ee=We;return ve=We=void 0,ge=Ee,ft=ke.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);De=setTimeout(fe,function(qe){var ee=ye-(qe-H);return B?N(ee,Ye-(qe-ge)):ee}(Ee))}function Ue(Ee){return De=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(De===void 0)return function(ee){return ge=ee,De=setTimeout(fe,ye),je?de(ee):ft}(H);if(B)return De=setTimeout(fe,ye),de(H)}return De===void 0&&(De=setTimeout(fe,ye)),ft}return ye=k(ye)||0,M(_e)&&(je=!!_e.leading,Ye=(B="maxWait"in _e)?A(k(_e.maxWait)||0,ye):Ye,Q="trailing"in _e?!!_e.trailing:Q),He.cancel=function(){De!==void 0&&clearTimeout(De),ge=0,ve=H=We=De=void 0},He.flush=function(){return De===void 0?ft:Ue(D())},He}(O,K,{leading:Y,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(G){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(G)}function y(G,L){var X=Object.keys(G);if(Object.getOwnPropertySymbols){var Z=Object.getOwnPropertySymbols(G);L&&(Z=Z.filter(function(Pe){return Object.getOwnPropertyDescriptor(G,Pe).enumerable})),X.push.apply(X,Z)}return X}function S(G,L,X){return(L=v(L))in G?Object.defineProperty(G,L,{value:X,enumerable:!0,configurable:!0,writable:!0}):G[L]=X,G}function P(G,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(G,v(Z.key),Z)}}function v(G){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)}(G);return f(L)==="symbol"?L:String(L)}function x(G,L){return x=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,Z){return X.__proto__=Z,X},x(G,L)}function E(G){return E=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(L){return L.__proto__||Object.getPrototypeOf(L)},E(G)}var C=function(G){G.forEach(function(L){L.isIntersecting&&L.target.onVisible()})},T={},A=function(G){(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)})(Fe,G);var L,X,Z,Pe,Te=(Z=Fe,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 Fe(V){var W;if(function(oe,se){if(!(oe instanceof se))throw new TypeError("Cannot call a class as a function")}(this,Fe),(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=Fe,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}),Fe}(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(G){var L=getComputedStyle(G,null);return L.getPropertyValue("overflow")+L.getPropertyValue("overflow-y")+L.getPropertyValue("overflow-x")};let U=function(G){if(!(G instanceof HTMLElement))return window;for(var L=G;L&&L instanceof HTMLElement;){if(/(scroll|auto)/.test(K(L)))return L;L=L.parentNode}return window};function Y(G){return Y=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},Y(G)}var te=["delayMethod","delayTime"];function ke(){return ke=Object.assign?Object.assign.bind():function(G){for(var L=1;L<arguments.length;L++){var X=arguments[L];for(var Z in X)Object.prototype.hasOwnProperty.call(X,Z)&&(G[Z]=X[Z])}return G},ke.apply(this,arguments)}function ye(G,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(G,(Pe=function(Te,Fe){if(Y(Te)!=="object"||Te===null)return Te;var V=Te[Symbol.toPrimitive];if(V!==void 0){var W=V.call(Te,"string");if(Y(W)!=="object")return W;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Te)}(Z.key),Y(Pe)==="symbol"?Pe:String(Pe)),Z)}var Pe}function _e(G,L){return _e=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,Z){return X.__proto__=Z,X},_e(G,L)}function ve(G,L){if(L&&(Y(L)==="object"||typeof L=="function"))return L;if(L!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return We(G)}function We(G){if(G===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return G}function Ye(G){return Ye=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(L){return L.__proto__||Object.getPrototypeOf(L)},Ye(G)}var ft=function(){return typeof window>"u"?0:window.scrollX||window.pageXOffset},De=function(){return typeof window>"u"?0:window.scrollY||window.pageYOffset};let H=function(G){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&&_e(ue,oe)})(W,X);var Z,Pe,Te,Fe,V=(Te=W,Fe=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(Fe){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:De()}},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:De()}})}},{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(G,ke({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(G){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(G)}function je(G,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(G,(Pe=function(Te,Fe){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(G,L){return B=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,Z){return X.__proto__=Z,X},B(G,L)}function Q(G){return Q=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(L){return L.__proto__||Object.getPrototypeOf(L)},Q(G)}var de=function(G){(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)})(Fe,G);var L,X,Z,Pe,Te=(Z=Fe,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 Fe(V){return function(W,ue){if(!(W instanceof ue))throw new TypeError("Cannot call a class as a function")}(this,Fe),Te.call(this,V)}return L=Fe,(X=[{key:"render",value:function(){return a().createElement(N,this.props)}}])&&je(L.prototype,X),Object.defineProperty(L,"prototype",{writable:!1}),Fe}(a().Component);let pe=H(de);function fe(G){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(G)}function Ue(G,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(G,(Pe=function(Te,Fe){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(G,L){return He=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,Z){return X.__proto__=Z,X},He(G,L)}function Ee(G){if(G===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return G}function qe(G){return qe=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(L){return L.__proto__||Object.getPrototypeOf(L)},qe(G)}var ee=function(G){(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)})(Fe,G);var L,X,Z,Pe,Te=(Z=Fe,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 Fe(V){var W;(function(Ke,Ze){if(!(Ke instanceof Ze))throw new TypeError("Cannot call a class as a function")})(this,Fe),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=Fe,(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}),Fe}(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(G){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(G)}var Ei=["afterLoad","beforeLoad","delayMethod","delayTime","effect","placeholder","placeholderSrc","scrollPosition","threshold","useIntersectionObserver","visibleByDefault","wrapperClassName","wrapperProps"];function ti(G,L){var X=Object.keys(G);if(Object.getOwnPropertySymbols){var Z=Object.getOwnPropertySymbols(G);L&&(Z=Z.filter(function(Pe){return Object.getOwnPropertyDescriptor(G,Pe).enumerable})),X.push.apply(X,Z)}return X}function zt(G){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(G,Z,X[Z])}):Object.getOwnPropertyDescriptors?Object.defineProperties(G,Object.getOwnPropertyDescriptors(X)):ti(Object(X)).forEach(function(Z){Object.defineProperty(G,Z,Object.getOwnPropertyDescriptor(X,Z))})}return G}function fi(G,L,X){return(L=wa(L))in G?Object.defineProperty(G,L,{value:X,enumerable:!0,configurable:!0,writable:!0}):G[L]=X,G}function Ai(){return Ai=Object.assign?Object.assign.bind():function(G){for(var L=1;L<arguments.length;L++){var X=arguments[L];for(var Z in X)Object.prototype.hasOwnProperty.call(X,Z)&&(G[Z]=X[Z])}return G},Ai.apply(this,arguments)}function gc(G,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(G,wa(Z.key),Z)}}function wa(G){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)}(G);return Se(L)==="symbol"?L:String(L)}function is(G,L){return is=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,Z){return X.__proto__=Z,X},is(G,L)}function rn(G){return rn=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(L){return L.__proto__||Object.getPrototypeOf(L)},rn(G)}var ns=function(G){(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)})(Fe,G);var L,X,Z,Pe,Te=(Z=Fe,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 Fe(V){var W;return function(ue,oe){if(!(ue instanceof oe))throw new TypeError("Cannot call a class as a function")}(this,Fe),(W=Te.call(this,V)).state={loaded:!1},W}return L=Fe,(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}),Fe}(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:()=>Be,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 Y="LRU_CACHE_UNBOUNDED";yl(Y)&&(Ld.add(Y),ng("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",Y,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(),Y={left:A,top:N,width:D,height:M,bottom:k,right:O,x:K,y:U};p.current.element instanceof HTMLElement&&o&&(Y.height=p.current.element.offsetHeight,Y.width=p.current.element.offsetWidth),Object.freeze(Y),y.current&&!v1(p.current.lastBounds,Y)&&c(p.current.lastBounds=Y)};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,Y=k.atlasTouches[1].y;a.pointerStart.y=(U+Y)/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,Y=0;if(a.isPressing&&k.touches.length===2){let te=k.touches[0].clientX,ke=k.touches[1].clientX;O=(te+ke)/2;let ye=k.touches[0].clientY,_e=k.touches[1].clientY;K=(ye+_e)/2,Y=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:ke,y:ye}=t.viewerToWorld(O-te.x,K-te.y),_e=Y&&E?Y/E:1;t.transitionManager.customTransition(ve=>{ve.from=re(t.target),ve.to=vi(ve.from,li(ut(a.pointerStart.x-ke,a.pointerStart.y-ye),In(1/_e,ke,ye)),a.mousemoveBuffer),ve.elapsed_time=0,ve.total_time=0,ve.timingFunction=Jn.easeInOutExpo,ve.done=!1})}E=Y}}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(Y=>{Y.from=re(t.target),Y.to=vi(Y.from,ut(a.pointerStart.x-K,a.pointerStart.y-U),a.mousemoveBuffer),Y.elapsed_time=0,Y.total_time=0,Y.timingFunction=Jn.easeInOutExpo,Y.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",`
11
+ `)+r.join(" > ")}return null},i.getPublicRootInstance=function(r){if(r=r.current,!r.child)return null;switch(r.child.tag){case 5:return ye(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:Xw,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{Ra=s.inject(r),an=s}catch{}r=!!s.checkDCE}}return r},i.isAlreadyRendering=function(){return!1},i.observeVisibleRects=function(r,s,u,d){if(!Ti)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=ke;try{return ke=r,s()}finally{ke=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=$n(h);return u=Km(u),s.context===null?s.context=u:s.pendingContext=u,s=In(g,w),s.payload={element:r},d=d===void 0?null:d,d!==null&&(s.callback=d),r=Wn(h,s,w),r!==null&&(Li(r,h,w,g),Na(r,h,w)),w},i}});var Xg=xt((OT,Yg)=>{"use strict";Yg.exports=Gg()});var Is=xt((WT,Ey)=>{"use strict";Ey.exports=ReactDOM});var Ty=xt(uh=>{"use strict";var Ay=Is();uh.createRoot=Ay.createRoot,uh.hydrateRoot=Ay.hydrateRoot;var qT});var G0=xt($0=>{"use strict";var jo=W();function iE(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var nE=typeof Object.is=="function"?Object.is:iE,rE=jo.useState,oE=jo.useEffect,sE=jo.useLayoutEffect,aE=jo.useDebugValue;function lE(e,t){var i=t(),n=rE({inst:{value:i,getSnapshot:t}}),o=n[0].inst,a=n[1];return sE(function(){o.value=i,o.getSnapshot=t,op(o)&&a({inst:o})},[e,i,t]),oE(function(){return op(o)&&a({inst:o}),e(function(){op(o)&&a({inst:o})})},[e]),aE(i),i}function op(e){var t=e.getSnapshot;e=e.value;try{var i=t();return!nE(e,i)}catch{return!0}}function uE(e,t){return t()}var cE=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?uE:lE;$0.useSyncExternalStore=jo.useSyncExternalStore!==void 0?jo.useSyncExternalStore:cE});var X0=xt((y_,Y0)=>{"use strict";Y0.exports=G0()});var Z0=xt(K0=>{"use strict";var Fu=W(),dE=X0();function hE(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var pE=typeof Object.is=="function"?Object.is:hE,fE=dE.useSyncExternalStore,mE=Fu.useRef,gE=Fu.useEffect,yE=Fu.useMemo,vE=Fu.useDebugValue;K0.useSyncExternalStoreWithSelector=function(e,t,i,n,o){var a=mE(null);if(a.current===null){var l={hasValue:!1,value:null};a.current=l}else l=a.current;a=yE(function(){function p(b){if(!m){if(m=!0,f=b,b=n(b),o!==void 0&&l.hasValue){var v=l.value;if(o(v,b))return y=v}return y=b}if(v=y,pE(f,b))return v;var x=n(b);return o!==void 0&&o(v,x)?v:(f=b,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=fE(e,a[0],a[1]);return gE(function(){l.hasValue=!0,l.value=c},[c]),vE(c),c}});var ex=xt((x_,J0)=>{"use strict";J0.exports=Z0()});var wS=xt((cF,SS)=>{"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,b=typeof self=="object"&&self&&self.Object===Object&&self,v=S||b||Function("return this")(),x=Object.prototype.toString,A=Math.max,P=Math.min,T=function(){return v.Date.now()};function E(F){var k=typeof F;return!!F&&(k=="object"||k=="function")}function j(F){if(typeof F=="number")return F;if(function(O){return typeof O=="symbol"||function($){return!!$&&typeof $=="object"}(O)&&x.call(O)=="[object Symbol]"}(F))return NaN;if(E(F)){var k=typeof F.valueOf=="function"?F.valueOf():F;F=E(k)?k+"":k}if(typeof F!="string")return F===0?F:+F;F=F.replace(c,"");var M=m.test(F);return M||f.test(F)?y(F.slice(2),M?2:8):p.test(F)?NaN:+F}o.exports=function(F,k,M){var O,$,ee,L,ie,Oe,Pe=0,be=!1,ye=!1,Xe=!0;if(typeof F!="function")throw new TypeError("Expected a function");function Ue(Be){var D=O,Q=$;return O=$=void 0,Pe=Be,L=F.apply(Q,D)}function ht(Be){var D=Be-Oe;return Oe===void 0||D>=k||D<0||ye&&Be-Pe>=ee}function Ne(){var Be=T();if(ht(Be))return G(Be);ie=setTimeout(Ne,function(D){var Q=k-(D-Oe);return ye?P(Q,ee-(D-Pe)):Q}(Be))}function G(Be){return ie=void 0,Xe&&O?Ue(Be):(O=$=void 0,L)}function le(){var Be=T(),D=ht(Be);if(O=arguments,$=this,Oe=Be,D){if(ie===void 0)return function(Q){return Pe=Q,ie=setTimeout(Ne,k),be?Ue(Q):L}(Oe);if(ye)return ie=setTimeout(Ne,k),Ue(Oe)}return ie===void 0&&(ie=setTimeout(Ne,k)),L}return k=j(k)||0,E(M)&&(be=!!M.leading,ee=(ye="maxWait"in M)?A(j(M.maxWait)||0,k):ee,Xe="trailing"in M?!!M.trailing:Xe),le.cancel=function(){ie!==void 0&&clearTimeout(ie),Pe=0,O=Oe=$=ie=void 0},le.flush=function(){return ie===void 0?L:G(T())},le}},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,b=/^0o[0-7]+$/i,v=parseInt,x=typeof l.g=="object"&&l.g&&l.g.Object===Object&&l.g,A=typeof self=="object"&&self&&self.Object===Object&&self,P=x||A||Function("return this")(),T=Object.prototype.toString,E=Math.max,j=Math.min,F=function(){return P.Date.now()};function k(O){var $=typeof O;return!!O&&($=="object"||$=="function")}function M(O){if(typeof O=="number")return O;if(function(L){return typeof L=="symbol"||function(ie){return!!ie&&typeof ie=="object"}(L)&&T.call(L)==m}(O))return p;if(k(O)){var $=typeof O.valueOf=="function"?O.valueOf():O;O=k($)?$+"":$}if(typeof O!="string")return O===0?O:+O;O=O.replace(f,"");var ee=S.test(O);return ee||b.test(O)?v(O.slice(2),ee?2:8):y.test(O)?p:+O}o.exports=function(O,$,ee){var L=!0,ie=!0;if(typeof O!="function")throw new TypeError(c);return k(ee)&&(L="leading"in ee?!!ee.leading:L,ie="trailing"in ee?!!ee.trailing:ie),function(Oe,Pe,be){var ye,Xe,Ue,ht,Ne,G,le=0,Be=!1,D=!1,Q=!0;if(typeof Oe!="function")throw new TypeError(c);function he(Ae){var qe=ye,J=Xe;return ye=Xe=void 0,le=Ae,ht=Oe.apply(J,qe)}function fe(Ae){var qe=Ae-G;return G===void 0||qe>=Pe||qe<0||D&&Ae-le>=Ue}function me(){var Ae=F();if(fe(Ae))return He(Ae);Ne=setTimeout(me,function(qe){var J=Pe-(qe-G);return D?j(J,Ue-(qe-le)):J}(Ae))}function He(Ae){return Ne=void 0,Q&&ye?he(Ae):(ye=Xe=void 0,ht)}function We(){var Ae=F(),qe=fe(Ae);if(ye=arguments,Xe=this,G=Ae,qe){if(Ne===void 0)return function(J){return le=J,Ne=setTimeout(me,Pe),Be?he(J):ht}(G);if(D)return Ne=setTimeout(me,Pe),he(G)}return Ne===void 0&&(Ne=setTimeout(me,Pe)),ht}return Pe=M(Pe)||0,k(be)&&(Be=!!be.leading,Ue=(D="maxWait"in be)?E(M(be.maxWait)||0,Pe):Ue,Q="trailing"in be?!!be.trailing:Q),We.cancel=function(){Ne!==void 0&&clearTimeout(Ne),le=0,ye=G=Xe=Ne=void 0},We.flush=function(){return Ne===void 0?ht:He(F())},We}(O,$,{leading:L,maxWait:$,trailing:ie})}},703:(o,a,l)=>{"use strict";var c=l(414);function p(){}function m(){}m.resetWarningCache=p,o.exports=function(){function f(b,v,x,A,P,T){if(T!==c){var E=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw E.name="Invariant Violation",E}}function y(){return 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:()=>Te,LazyLoadImage:()=>yc,trackWindowScroll:()=>G});let o=W();var a=i.n(o),l=i(697);let c=Is();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(z){return typeof z}:function(z){return z&&typeof Symbol=="function"&&z.constructor===Symbol&&z!==Symbol.prototype?"symbol":typeof z},f(Y)}function y(Y,z){var X=Object.keys(Y);if(Object.getOwnPropertySymbols){var K=Object.getOwnPropertySymbols(Y);z&&(K=K.filter(function(Ce){return Object.getOwnPropertyDescriptor(Y,Ce).enumerable})),X.push.apply(X,K)}return X}function S(Y,z,X){return(z=v(z))in Y?Object.defineProperty(Y,z,{value:X,enumerable:!0,configurable:!0,writable:!0}):Y[z]=X,Y}function b(Y,z){for(var X=0;X<z.length;X++){var K=z[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Y,v(K.key),K)}}function v(Y){var z=function(X,K){if(f(X)!=="object"||X===null)return X;var Ce=X[Symbol.toPrimitive];if(Ce!==void 0){var Ie=Ce.call(X,"string");if(f(Ie)!=="object")return Ie;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(X)}(Y);return f(z)==="symbol"?z:String(z)}function x(Y,z){return x=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},x(Y,z)}function A(Y){return A=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(z){return z.__proto__||Object.getPrototypeOf(z)},A(Y)}var P=function(Y){Y.forEach(function(z){z.isIntersecting&&z.target.onVisible()})},T={},E=function(Y){(function(U,H){if(typeof H!="function"&&H!==null)throw new TypeError("Super expression must either be null or a function");U.prototype=Object.create(H&&H.prototype,{constructor:{value:U,writable:!0,configurable:!0}}),Object.defineProperty(U,"prototype",{writable:!1}),H&&x(U,H)})(De,Y);var z,X,K,Ce,Ie=(K=De,Ce=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 U,H=A(K);if(Ce){var ce=A(this).constructor;U=Reflect.construct(H,arguments,ce)}else U=H.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,U)});function De(U){var H;if(function(oe,se){if(!(oe instanceof se))throw new TypeError("Cannot call a class as a function")}(this,De),(H=Ie.call(this,U)).supportsObserver=!U.scrollPosition&&U.useIntersectionObserver&&m(),H.supportsObserver){var ce=U.threshold;H.observer=function(oe){return T[oe]=T[oe]||new IntersectionObserver(P,{rootMargin:oe+"px"}),T[oe]}(ce)}return H}return z=De,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 U=arguments.length>0&&arguments[0]!==void 0?arguments[0]:this.props.scrollPosition,H=this.placeholder.getBoundingClientRect(),ce=p().findDOMNode(this.placeholder).style,oe=parseInt(ce.getPropertyValue("margin-left"),10)||0,se=parseInt(ce.getPropertyValue("margin-top"),10)||0;return{bottom:U.y+H.bottom+se,left:U.x+H.left+oe,right:U.x+H.right+oe,top:U.y+H.top+se}}},{key:"isPlaceholderInViewport",value:function(){if(typeof window>"u"||!this.placeholder)return!1;var U=this.props,H=U.scrollPosition,ce=U.threshold,oe=this.getPlaceholderBoundingBox(H),se=H.y+window.innerHeight,Re=H.x,Ke=H.x+window.innerWidth,Ze=H.y;return Ze-ce<=oe.bottom&&se+ce>=oe.top&&Re-ce<=oe.right&&Ke+ce>=oe.left}},{key:"updateVisibility",value:function(){this.isPlaceholderInViewport()&&this.props.onVisible()}},{key:"render",value:function(){var U=this,H=this.props,ce=H.className,oe=H.height,se=H.placeholder,Re=H.style,Ke=H.width;if(se&&typeof se.type!="function")return a().cloneElement(se,{ref:function(Qe){return U.placeholder=Qe}});var Ze=function(Qe){for(var Pt=1;Pt<arguments.length;Pt++){var st=arguments[Pt]!=null?arguments[Pt]:{};Pt%2?y(Object(st),!0).forEach(function(Et){S(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:ce,ref:function(Qe){return U.placeholder=Qe},style:Ze},se)}}],X&&b(z.prototype,X),Object.defineProperty(z,"prototype",{writable:!1}),De}(a().Component);E.propTypes={onVisible:l.PropTypes.func.isRequired,className:l.PropTypes.string,height:l.PropTypes.oneOfType([l.PropTypes.number,l.PropTypes.string]),placeholder:l.PropTypes.element,threshold:l.PropTypes.number,useIntersectionObserver:l.PropTypes.bool,scrollPosition:l.PropTypes.shape({x:l.PropTypes.number.isRequired,y:l.PropTypes.number.isRequired}),width:l.PropTypes.oneOfType([l.PropTypes.number,l.PropTypes.string])},E.defaultProps={className:"",placeholder:null,threshold:100,useIntersectionObserver:!0};let j=E;var F=i(296),k=i.n(F),M=i(96),O=i.n(M),$=function(Y){var z=getComputedStyle(Y,null);return z.getPropertyValue("overflow")+z.getPropertyValue("overflow-y")+z.getPropertyValue("overflow-x")};let ee=function(Y){if(!(Y instanceof HTMLElement))return window;for(var z=Y;z&&z instanceof HTMLElement;){if(/(scroll|auto)/.test($(z)))return z;z=z.parentNode}return window};function L(Y){return L=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(z){return typeof z}:function(z){return z&&typeof Symbol=="function"&&z.constructor===Symbol&&z!==Symbol.prototype?"symbol":typeof z},L(Y)}var ie=["delayMethod","delayTime"];function Oe(){return Oe=Object.assign?Object.assign.bind():function(Y){for(var z=1;z<arguments.length;z++){var X=arguments[z];for(var K in X)Object.prototype.hasOwnProperty.call(X,K)&&(Y[K]=X[K])}return Y},Oe.apply(this,arguments)}function Pe(Y,z){for(var X=0;X<z.length;X++){var K=z[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Y,(Ce=function(Ie,De){if(L(Ie)!=="object"||Ie===null)return Ie;var U=Ie[Symbol.toPrimitive];if(U!==void 0){var H=U.call(Ie,"string");if(L(H)!=="object")return H;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Ie)}(K.key),L(Ce)==="symbol"?Ce:String(Ce)),K)}var Ce}function be(Y,z){return be=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},be(Y,z)}function ye(Y,z){if(z&&(L(z)==="object"||typeof z=="function"))return z;if(z!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Xe(Y)}function Xe(Y){if(Y===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Y}function Ue(Y){return Ue=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(z){return z.__proto__||Object.getPrototypeOf(z)},Ue(Y)}var ht=function(){return typeof window>"u"?0:window.scrollX||window.pageXOffset},Ne=function(){return typeof window>"u"?0:window.scrollY||window.pageYOffset};let G=function(Y){var z=function(X){(function(ce,oe){if(typeof oe!="function"&&oe!==null)throw new TypeError("Super expression must either be null or a function");ce.prototype=Object.create(oe&&oe.prototype,{constructor:{value:ce,writable:!0,configurable:!0}}),Object.defineProperty(ce,"prototype",{writable:!1}),oe&&be(ce,oe)})(H,X);var K,Ce,Ie,De,U=(Ie=H,De=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 ce,oe=Ue(Ie);if(De){var se=Ue(this).constructor;ce=Reflect.construct(oe,arguments,se)}else ce=oe.apply(this,arguments);return ye(this,ce)});function H(ce){var oe;if(function(Re,Ke){if(!(Re instanceof Ke))throw new TypeError("Cannot call a class as a function")}(this,H),(oe=U.call(this,ce)).useIntersectionObserver=ce.useIntersectionObserver&&m(),oe.useIntersectionObserver)return ye(oe);var se=oe.onChangeScroll.bind(Xe(oe));return ce.delayMethod==="debounce"?oe.delayedScroll=k()(se,ce.delayTime):ce.delayMethod==="throttle"&&(oe.delayedScroll=O()(se,ce.delayTime)),oe.state={scrollPosition:{x:ht(),y:Ne()}},oe.baseComponentRef=a().createRef(),oe}return K=H,(Ce=[{key:"componentDidMount",value:function(){this.addListeners()}},{key:"componentWillUnmount",value:function(){this.removeListeners()}},{key:"componentDidUpdate",value:function(){typeof window>"u"||this.useIntersectionObserver||ee(p().findDOMNode(this.baseComponentRef.current))!==this.scrollElement&&(this.removeListeners(),this.addListeners())}},{key:"addListeners",value:function(){typeof window>"u"||this.useIntersectionObserver||(this.scrollElement=ee(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:ht(),y:Ne()}})}},{key:"render",value:function(){var ce=this.props,oe=(ce.delayMethod,ce.delayTime,function(Re,Ke){if(Re==null)return{};var Ze,Qe,Pt=function(Et,jn){if(Et==null)return{};var Hi,gr,rs={},ba=Object.keys(Et);for(gr=0;gr<ba.length;gr++)Hi=ba[gr],jn.indexOf(Hi)>=0||(rs[Hi]=Et[Hi]);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)&&(Pt[Ze]=Re[Ze])}return Pt}(ce,ie)),se=this.useIntersectionObserver?null:this.state.scrollPosition;return a().createElement(Y,Oe({forwardRef:this.baseComponentRef,scrollPosition:se},oe))}}])&&Pe(K.prototype,Ce),Object.defineProperty(K,"prototype",{writable:!1}),H}(a().Component);return z.propTypes={delayMethod:l.PropTypes.oneOf(["debounce","throttle"]),delayTime:l.PropTypes.number,useIntersectionObserver:l.PropTypes.bool},z.defaultProps={delayMethod:"throttle",delayTime:300,useIntersectionObserver:!0},z};function le(Y){return le=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(z){return typeof z}:function(z){return z&&typeof Symbol=="function"&&z.constructor===Symbol&&z!==Symbol.prototype?"symbol":typeof z},le(Y)}function Be(Y,z){for(var X=0;X<z.length;X++){var K=z[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Y,(Ce=function(Ie,De){if(le(Ie)!=="object"||Ie===null)return Ie;var U=Ie[Symbol.toPrimitive];if(U!==void 0){var H=U.call(Ie,"string");if(le(H)!=="object")return H;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Ie)}(K.key),le(Ce)==="symbol"?Ce:String(Ce)),K)}var Ce}function D(Y,z){return D=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},D(Y,z)}function Q(Y){return Q=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(z){return z.__proto__||Object.getPrototypeOf(z)},Q(Y)}var he=function(Y){(function(U,H){if(typeof H!="function"&&H!==null)throw new TypeError("Super expression must either be null or a function");U.prototype=Object.create(H&&H.prototype,{constructor:{value:U,writable:!0,configurable:!0}}),Object.defineProperty(U,"prototype",{writable:!1}),H&&D(U,H)})(De,Y);var z,X,K,Ce,Ie=(K=De,Ce=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 U,H=Q(K);if(Ce){var ce=Q(this).constructor;U=Reflect.construct(H,arguments,ce)}else U=H.apply(this,arguments);return function(oe,se){if(se&&(le(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,U)});function De(U){return function(H,ce){if(!(H instanceof ce))throw new TypeError("Cannot call a class as a function")}(this,De),Ie.call(this,U)}return z=De,(X=[{key:"render",value:function(){return a().createElement(j,this.props)}}])&&Be(z.prototype,X),Object.defineProperty(z,"prototype",{writable:!1}),De}(a().Component);let fe=G(he);function me(Y){return me=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(z){return typeof z}:function(z){return z&&typeof Symbol=="function"&&z.constructor===Symbol&&z!==Symbol.prototype?"symbol":typeof z},me(Y)}function He(Y,z){for(var X=0;X<z.length;X++){var K=z[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Y,(Ce=function(Ie,De){if(me(Ie)!=="object"||Ie===null)return Ie;var U=Ie[Symbol.toPrimitive];if(U!==void 0){var H=U.call(Ie,"string");if(me(H)!=="object")return H;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(Ie)}(K.key),me(Ce)==="symbol"?Ce:String(Ce)),K)}var Ce}function We(Y,z){return We=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},We(Y,z)}function Ae(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(z){return z.__proto__||Object.getPrototypeOf(z)},qe(Y)}var J=function(Y){(function(U,H){if(typeof H!="function"&&H!==null)throw new TypeError("Super expression must either be null or a function");U.prototype=Object.create(H&&H.prototype,{constructor:{value:U,writable:!0,configurable:!0}}),Object.defineProperty(U,"prototype",{writable:!1}),H&&We(U,H)})(De,Y);var z,X,K,Ce,Ie=(K=De,Ce=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 U,H=qe(K);if(Ce){var ce=qe(this).constructor;U=Reflect.construct(H,arguments,ce)}else U=H.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,U)});function De(U){var H;(function(Ke,Ze){if(!(Ke instanceof Ze))throw new TypeError("Cannot call a class as a function")})(this,De),H=Ie.call(this,U);var ce=U.afterLoad,oe=U.beforeLoad,se=U.scrollPosition,Re=U.visibleByDefault;return H.state={visible:Re},Re&&(oe(),ce()),H.onVisible=H.onVisible.bind(Ae(H)),H.isScrollTracked=!!(se&&Number.isFinite(se.x)&&se.x>=0&&Number.isFinite(se.y)&&se.y>=0),H}return z=De,(X=[{key:"componentDidUpdate",value:function(U,H){H.visible!==this.state.visible&&this.props.afterLoad()}},{key:"onVisible",value:function(){this.props.beforeLoad(),this.setState({visible:!0})}},{key:"render",value:function(){if(this.state.visible)return this.props.children;var U=this.props,H=U.className,ce=U.delayMethod,oe=U.delayTime,se=U.height,Re=U.placeholder,Ke=U.scrollPosition,Ze=U.style,Qe=U.threshold,Pt=U.useIntersectionObserver,st=U.width;return this.isScrollTracked||Pt&&m()?a().createElement(j,{className:H,height:se,onVisible:this.onVisible,placeholder:Re,scrollPosition:Ke,style:Ze,threshold:Qe,useIntersectionObserver:Pt,width:st}):a().createElement(fe,{className:H,delayMethod:ce,delayTime:oe,height:se,onVisible:this.onVisible,placeholder:Re,style:Ze,threshold:Qe,width:st})}}])&&He(z.prototype,X),Object.defineProperty(z,"prototype",{writable:!1}),De}(a().Component);J.propTypes={afterLoad:l.PropTypes.func,beforeLoad:l.PropTypes.func,useIntersectionObserver:l.PropTypes.bool,visibleByDefault:l.PropTypes.bool},J.defaultProps={afterLoad:function(){return{}},beforeLoad:function(){return{}},useIntersectionObserver:!0,visibleByDefault:!1};let Te=J;function xe(Y){return xe=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(z){return typeof z}:function(z){return z&&typeof Symbol=="function"&&z.constructor===Symbol&&z!==Symbol.prototype?"symbol":typeof z},xe(Y)}var Ai=["afterLoad","beforeLoad","delayMethod","delayTime","effect","placeholder","placeholderSrc","scrollPosition","threshold","useIntersectionObserver","visibleByDefault","wrapperClassName","wrapperProps"];function ti(Y,z){var X=Object.keys(Y);if(Object.getOwnPropertySymbols){var K=Object.getOwnPropertySymbols(Y);z&&(K=K.filter(function(Ce){return Object.getOwnPropertyDescriptor(Y,Ce).enumerable})),X.push.apply(X,K)}return X}function zt(Y){for(var z=1;z<arguments.length;z++){var X=arguments[z]!=null?arguments[z]:{};z%2?ti(Object(X),!0).forEach(function(K){fi(Y,K,X[K])}):Object.getOwnPropertyDescriptors?Object.defineProperties(Y,Object.getOwnPropertyDescriptors(X)):ti(Object(X)).forEach(function(K){Object.defineProperty(Y,K,Object.getOwnPropertyDescriptor(X,K))})}return Y}function fi(Y,z,X){return(z=wa(z))in Y?Object.defineProperty(Y,z,{value:X,enumerable:!0,configurable:!0,writable:!0}):Y[z]=X,Y}function Ti(){return Ti=Object.assign?Object.assign.bind():function(Y){for(var z=1;z<arguments.length;z++){var X=arguments[z];for(var K in X)Object.prototype.hasOwnProperty.call(X,K)&&(Y[K]=X[K])}return Y},Ti.apply(this,arguments)}function gc(Y,z){for(var X=0;X<z.length;X++){var K=z[X];K.enumerable=K.enumerable||!1,K.configurable=!0,"value"in K&&(K.writable=!0),Object.defineProperty(Y,wa(K.key),K)}}function wa(Y){var z=function(X,K){if(xe(X)!=="object"||X===null)return X;var Ce=X[Symbol.toPrimitive];if(Ce!==void 0){var Ie=Ce.call(X,"string");if(xe(Ie)!=="object")return Ie;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(X)}(Y);return xe(z)==="symbol"?z:String(z)}function is(Y,z){return is=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(X,K){return X.__proto__=K,X},is(Y,z)}function sn(Y){return sn=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(z){return z.__proto__||Object.getPrototypeOf(z)},sn(Y)}var ns=function(Y){(function(U,H){if(typeof H!="function"&&H!==null)throw new TypeError("Super expression must either be null or a function");U.prototype=Object.create(H&&H.prototype,{constructor:{value:U,writable:!0,configurable:!0}}),Object.defineProperty(U,"prototype",{writable:!1}),H&&is(U,H)})(De,Y);var z,X,K,Ce,Ie=(K=De,Ce=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 U,H=sn(K);if(Ce){var ce=sn(this).constructor;U=Reflect.construct(H,arguments,ce)}else U=H.apply(this,arguments);return function(oe,se){if(se&&(xe(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,U)});function De(U){var H;return function(ce,oe){if(!(ce instanceof oe))throw new TypeError("Cannot call a class as a function")}(this,De),(H=Ie.call(this,U)).state={loaded:!1},H}return z=De,(X=[{key:"onImageLoad",value:function(){var U=this;return this.state.loaded?null:function(H){U.props.onLoad(H),U.props.afterLoad(),U.setState({loaded:!0})}}},{key:"getImg",value:function(){var U=this.props,H=(U.afterLoad,U.beforeLoad,U.delayMethod,U.delayTime,U.effect,U.placeholder,U.placeholderSrc,U.scrollPosition,U.threshold,U.useIntersectionObserver,U.visibleByDefault,U.wrapperClassName,U.wrapperProps,function(ce,oe){if(ce==null)return{};var se,Re,Ke=function(Qe,Pt){if(Qe==null)return{};var st,Et,jn={},Hi=Object.keys(Qe);for(Et=0;Et<Hi.length;Et++)st=Hi[Et],Pt.indexOf(st)>=0||(jn[st]=Qe[st]);return jn}(ce,oe);if(Object.getOwnPropertySymbols){var Ze=Object.getOwnPropertySymbols(ce);for(Re=0;Re<Ze.length;Re++)se=Ze[Re],oe.indexOf(se)>=0||Object.prototype.propertyIsEnumerable.call(ce,se)&&(Ke[se]=ce[se])}return Ke}(U,Ai));return a().createElement("img",Ti({},H,{onLoad:this.onImageLoad()}))}},{key:"getLazyLoadImage",value:function(){var U=this.props,H=U.beforeLoad,ce=U.className,oe=U.delayMethod,se=U.delayTime,Re=U.height,Ke=U.placeholder,Ze=U.scrollPosition,Qe=U.style,Pt=U.threshold,st=U.useIntersectionObserver,Et=U.visibleByDefault,jn=U.width;return a().createElement(Te,{beforeLoad:H,className:ce,delayMethod:oe,delayTime:se,height:Re,placeholder:Ke,scrollPosition:Ze,style:Qe,threshold:Pt,useIntersectionObserver:st,visibleByDefault:Et,width:jn},this.getImg())}},{key:"getWrappedLazyLoadImage",value:function(U){var H=this.props,ce=H.effect,oe=H.height,se=H.placeholderSrc,Re=H.width,Ke=H.wrapperClassName,Ze=H.wrapperProps,Qe=this.state.loaded,Pt=Qe?" lazy-load-image-loaded":"",st=Qe||!se?{}:{backgroundImage:"url(".concat(se,")"),backgroundSize:"100% 100%"};return a().createElement("span",Ti({className:Ke+" lazy-load-image-background "+ce+Pt,style:zt(zt({},st),{},{color:"transparent",display:"inline-block",height:oe,width:Re})},Ze),U)}},{key:"render",value:function(){var U=this.props,H=U.effect,ce=U.placeholderSrc,oe=U.visibleByDefault,se=U.wrapperClassName,Re=U.wrapperProps,Ke=this.getLazyLoadImage();return(H||ce)&&!oe||se||Re?this.getWrappedLazyLoadImage(Ke):Ke}}])&&gc(z.prototype,X),Object.defineProperty(z,"prototype",{writable:!1}),De}(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})(),SS.exports=n})()});var hT={};r1(hT,{AnnotationContext:()=>eT,AnnotationPageContext:()=>tT,AnnotationStyleProvider:()=>EA,Auth:()=>fp,AuthProvider:()=>hp,AuthRContext:()=>Qr,AuthReactContext:()=>ax,AuthReactContextActions:()=>lx,CanvasAnnotations:()=>pA,CanvasContext:()=>Di,CanvasPanel:()=>Lt,CollectionContext:()=>iT,CombinedMetadata:()=>fA,ComplexTimelineProvider:()=>ef,ContextBridge:()=>Sp,CreateCustomShape:()=>ff,CustomContextBridge:()=>xx,CustomContextBridgeProvider:()=>_E,EventsProvider:()=>RE,Image:()=>vS,ImageServiceLoaderContext:()=>Yx,InnerViewerProvider:()=>fx,LanguageProvider:()=>XE,LanguageString:()=>Wx,LocaleString:()=>Ei,ManifestContext:()=>tp,ManifestMetadata:()=>gA,MediaPlayerProvider:()=>ha,Metadata:()=>va,PolygonSelector:()=>JA,RangeContext:()=>ip,ReactEventContext:()=>Gr,ReactVaultContext:()=>lr,RenderSvgEditorControls:()=>wA,ResourceProvider:()=>Yt,ResourceReactContext:()=>Ns,SelectorControllerProvider:()=>bA,SequenceThumbnails:()=>xA,SimpleViewerProvider:()=>gp,SimpleViewerReactContext:()=>Wo,SingleCanvasThumbnail:()=>nf,TranslationProvider:()=>YE,TransliterationProvider:()=>KE,VaultProvider:()=>Vr,ViewerPresetContext:()=>$o,VirtualAnnotationProvider:()=>Pp,VisibleCanvasReactContext:()=>Hr,authDetailsForResource:()=>up,createAuthStateStore:()=>ap,createProbe:()=>lp,defaultEmitter:()=>gx,emptyActions:()=>Bp,emptyStrategy:()=>Dp,expandTarget:()=>kt,findAllCanvasesInRange:()=>Lu,findFirstCanvasFromRange:()=>H0,findManifestSelectedRange:()=>eE,findSelectedRange:()=>np,flattenAnnotationPageIds:()=>jp,formatTime:()=>$u,get3dStrategy:()=>Wp,getComplexTimelineStrategy:()=>qp,getDefaultAnnotationStyles:()=>sf,getImageStrategy:()=>ua,getManifestSequence:()=>zu,getParsedTargetSelector:()=>oa,getRenderingStrategy:()=>Qp,getTextualContentStrategy:()=>ca,getVideoStrategy:()=>da,getVisibleCanvasesFromCanvasId:()=>tE,hasAuth:()=>bE,isImageApiSelector:()=>Uu,makeAccessServiceRequest:()=>sp,makeAccessTokenRequest:()=>Nu,parseRotation:()=>Hu,parseSelector:()=>Nn,parseSpecificResource:()=>eA,svgThemes:()=>NS,unknownResponse:()=>sa,unsupportedStrategy:()=>ot,useAnnotation:()=>ia,useAnnotationPage:()=>Mp,useAnnotationPageManager:()=>la,useAnnotationStyles:()=>lf,useAnnotationsAtTime:()=>nT,useAuthActions:()=>ux,useAuthService:()=>cx,useAuthStore:()=>Uo,useAuthToken:()=>PE,useAuthTokens:()=>cp,useCanvas:()=>je,useCanvasChoices:()=>rT,useCanvasClock:()=>oT,useCanvasSequence:()=>rp,useCanvasStartTime:()=>pa,useCanvasSubset:()=>sT,useClosestLanguage:()=>Qx,useCollection:()=>aT,useComplexTimeline:()=>dA,useContextBridge:()=>xp,useCreateLocaleString:()=>ZE,useCurrentAuth:()=>CE,useCustomContextBridge:()=>vp,useDispatch:()=>wp,useEventEmitter:()=>Ks,useEventListener:()=>lT,useExistingVault:()=>Ur,useExternalCollection:()=>uT,useExternalManifest:()=>ep,useExternalResource:()=>qs,useIIIFLanguage:()=>qu,useImage:()=>oc,useImageService:()=>gf,useImageServiceLoader:()=>on,useImageTile:()=>cT,useIsAuthEnabled:()=>pp,useLoadImageService:()=>Up,useLocaleString:()=>$x,useManifest:()=>gt,useMediaActions:()=>lA,useMediaElements:()=>uA,useMediaState:()=>aA,usePaintables:()=>Hp,usePaintingAnnotations:()=>eo,usePolygonHelper:()=>hf,useRange:()=>Qs,useRenderingStrategy:()=>$p,useResourceContext:()=>qt,useResourceEvents:()=>Js,useResources:()=>Vp,useSearchService:()=>mp,useSelectorController:()=>of,useSelectorEmitter:()=>CA,useSelectorEvents:()=>rf,useSelectorHelper:()=>PA,useSimpleMediaPlayer:()=>no,useSimpleViewer:()=>Xs,useStyleHelper:()=>dT,useStyles:()=>Kr,useSvgEditor:()=>pf,useThumbnail:()=>io,useTranslations:()=>Lp,useTransliteration:()=>kp,useVault:()=>Me,useVaultEffect:()=>Gp,useVaultSelector:()=>Fe,useViewerPreset:()=>Ep,useVirtualAnnotationPage:()=>bp,useVirtualAnnotationPageContext:()=>Cp,useVisibleCanvases:()=>Wr});var ga=I(W(),1);var Kt=I(W(),1);var Kn=(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 ig=(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)},ng=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},ve=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},On=(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 Ps=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,s1=typeof AbortController=="function",gl=s1?AbortController:class{constructor(){this.signal=new rg}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})}},a1=typeof AbortSignal=="function",l1=typeof gl.AbortSignal=="function",rg=a1?AbortSignal:l1?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)},Od=(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)}},u1=(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)}},og=(...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.`;og(o,"DeprecationWarning",e,n)},Zn=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e),sg=e=>Zn(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)}},kd=class{constructor(t){if(t===0)return[];let i=sg(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:b=0,maxEntrySize:v=0,sizeCalculation:x,fetchMethod:A,fetchContext:P,noDeleteOnFetchRejection:T,noDeleteOnStaleGet:E,allowStaleOnFetchRejection:j,allowStaleOnFetchAbort:F,ignoreFetchAbort:k}=t,{length:M,maxAge:O,stale:$}=t instanceof e?{}:t;if(i!==0&&!Zn(i))throw new TypeError("max option must be a nonnegative integer");let ee=i?sg(i):Array;if(!ee)throw new Error("invalid max value: "+i);if(this.max=i,this.maxSize=b,this.maxEntrySize=v||this.maxSize,this.sizeCalculation=x||M,this.sizeCalculation){if(!this.maxSize&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(this.fetchMethod=A||null,this.fetchMethod&&typeof this.fetchMethod!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.fetchContext=P,!this.fetchMethod&&P!==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 ee(i),this.prev=new ee(i),this.head=0,this.tail=0,this.free=new kd(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=!!j,this.allowStaleOnFetchAbort=!!F,this.ignoreFetchAbort=!!k,this.maxEntrySize!==0){if(this.maxSize!==0&&!Zn(this.maxSize))throw new TypeError("maxSize must be a positive integer if specified");if(!Zn(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.initializeSizeTracking()}if(this.allowStale=!!p||!!$,this.noDeleteOnStaleGet=!!E,this.updateAgeOnGet=!!l,this.updateAgeOnHas=!!c,this.ttlResolution=Zn(o)||o===0?o:1,this.ttlAutopurge=!!a,this.ttl=n||O||0,this.ttl){if(!Zn(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 L="LRU_CACHE_UNBOUNDED";yl(L)&&(Ld.add(L),og("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",L,e))}$&&Md("stale","allowStale"),O&&Md("maxAge","ttl"),M&&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=Ps.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?Ps.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=Ps.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(!Zn(n))if(o){if(typeof o!="function")throw new TypeError("sizeCalculation must be a function");if(n=o(i,t),!Zn(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 Od("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=Ps.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=Ps.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=(b,v=!1)=>{let{aborted:x}=l.signal,A=n.ignoreFetchAbort&&b!==void 0;return n.status&&(x&&!v?(n.status.fetchAborted=!0,n.status.fetchError=l.signal.reason,A&&(n.status.fetchAbortIgnored=!0)):n.status.fetchResolved=!0),x&&!A&&!v?f(l.signal.reason):(this.valList[i]===S&&(b===void 0?S.__staleWhileFetching?this.valList[i]=S.__staleWhileFetching:this.delete(t):(n.status&&(n.status.fetchUpdated=!0),this.set(t,b,c.options))),b)},m=b=>(n.status&&(n.status.fetchRejected=!0,n.status.fetchError=b),f(b)),f=b=>{let{aborted:v}=l.signal,x=v&&n.allowStaleOnFetchAbort,A=x||n.allowStaleOnFetchRejection,P=A||n.noDeleteOnFetchRejection;if(this.valList[i]===S&&(!P||S.__staleWhileFetching===void 0?this.delete(t):x||(this.valList[i]=S.__staleWhileFetching)),A)return n.status&&S.__staleWhileFetching!==void 0&&(n.status.returnedStale=!0),S.__staleWhileFetching;if(S.__returned===S)throw b},y=(b,v)=>{this.fetchMethod(t,a,c).then(x=>b(x),v),l.signal.addEventListener("abort",()=>{(!n.ignoreFetchAbort||n.allowStaleOnFetchAbort)&&(b(),n.allowStaleOnFetchAbort&&(b=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:b=this.allowStaleOnFetchAbort,fetchContext:v=this.fetchContext,forceRefresh:x=!1,status:A,signal:P}={}){if(!this.fetchMethod)return A&&(A.fetch="get"),this.get(t,{allowStale:i,updateAgeOnGet:n,noDeleteOnStaleGet:o,status:A});let T={allowStale:i,updateAgeOnGet:n,noDeleteOnStaleGet:o,ttl:a,noDisposeOnSet:l,size:c,sizeCalculation:p,noUpdateTTL:m,noDeleteOnFetchRejection:f,allowStaleOnFetchRejection:y,allowStaleOnFetchAbort:b,ignoreFetchAbort:S,status:A,signal:P},E=this.keyMap.get(t);if(E===void 0){A&&(A.fetch="miss");let j=this.backgroundFetch(t,E,T,v);return j.__returned=j}else{let j=this.valList[E];if(this.isBackgroundFetch(j)){let $=i&&j.__staleWhileFetching!==void 0;return A&&(A.fetch="inflight",$&&(A.returnedStale=!0)),$?j.__staleWhileFetching:j.__returned=j}let F=this.isStale(E);if(!x&&!F)return A&&(A.fetch="hit"),this.moveToTail(E),n&&this.updateItemAge(E),this.statusTTL(A,E),j;let k=this.backgroundFetch(t,E,T,v),M=k.__staleWhileFetching!==void 0,O=M&&i;return A&&(A.fetch=M&&F?"stale":"refresh",O&&F&&(A.returnedStale=!0)),O?k.__staleWhileFetching:k.__returned=k}}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 Od("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 Od("reset","clear"),this.clear}get length(){return u1("length","size"),this.size}static get AbortController(){return gl}static get AbortSignal(){return rg}},ag=So;var Qy=I(Ig(),1);var rt=I(W(),1),eu=I(W(),1),_b=I(q(),1);var xi=I(W()),qd=I(kg());function Cl(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,b,v]=(0,xi.useMemo)(()=>{let T=()=>{if(!p.current.element)return;let{left:E,top:j,width:F,height:k,bottom:M,right:O,x:$,y:ee}=p.current.element.getBoundingClientRect(),L={left:E,top:j,width:F,height:k,bottom:M,right:O,x:$,y:ee};p.current.element instanceof HTMLElement&&o&&(L.height=p.current.element.offsetHeight,L.width=p.current.element.offsetWidth),Object.freeze(L),y.current&&!C1(p.current.lastBounds,L)&&c(p.current.lastBounds=L)};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 A(){p.current.element&&(p.current.resizeObserver=new a(v),p.current.resizeObserver.observe(p.current.element),i&&p.current.scrollContainers&&p.current.scrollContainers.forEach(T=>T.addEventListener("scroll",v,{capture:!0,passive:!0})))}let P=T=>{!T||T===p.current.element||(x(),p.current.element=T,p.current.scrollContainers=Lg(T),A())};return w1(v,!!i),S1(b),(0,xi.useEffect)(()=>{x(),A()},[i,v,b]),(0,xi.useEffect)(()=>x,[]),[P,l,S]}function S1(e){(0,xi.useEffect)(()=>{let t=e;return window.addEventListener("resize",t),()=>void window.removeEventListener("resize",t)},[e])}function w1(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 Lg(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,...Lg(e.parentElement)]}var b1=["x","y","top","bottom","left","right","width","height"],C1=(e,t)=>b1.every(i=>e[i]===t[i]);var gh=I(W(),1),vn=I(W(),1),Gy=I(Xg(),1),Yy=I(W(),1),nu=I(W(),1),Co=I(q(),1),Ni=I(W(),1),ov=I(W(),1),sv=I(W(),1),av=I(q(),1),Gt=I(q(),1),ru=I(W(),1);var zs=I(q(),1),vh=I(W(),1),uv=I(W(),1),Gb=I(W(),1),cv=I(W(),1),hv=I(W(),1),yn=I(W(),1),pv=I(W(),1),ph=I(q(),1),fv=I(W(),1),gn=I(W(),1),It=I(W(),1),mv=I(W(),1),lu=I(W(),1),St=I(q(),1),fh=I(q(),1),yv=I(W(),1),Mr=I(q(),1),vv=I(W(),1);var E1=Object.defineProperty,A1=(e,t,i)=>t in e?E1(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,Rl=(e,t,i)=>(A1(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 T1="http://library.stanford.edu/iiif/image-api/compliance.html#level0",ey="http://library.stanford.edu/iiif/image-api/compliance.html#level1",ty="http://library.stanford.edu/iiif/image-api/compliance.html#level2",I1="http://library.stanford.edu/iiif/image-api/conformance.html#level0",iy="http://library.stanford.edu/iiif/image-api/conformance.html#level1",ny="http://library.stanford.edu/iiif/image-api/conformance.html#level2",R1="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level0",ry="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level1",oy="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2",_1="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level0",sy="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level1",ay="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level2",M1="http://iiif.io/api/image/1/level0.json",O1="http://iiif.io/api/image/1/profiles/level0.json",ly="http://iiif.io/api/image/1/level1.json",uy="http://iiif.io/api/image/1/profiles/level1.json",cy="http://iiif.io/api/image/1/level2.json",dy="http://iiif.io/api/image/1/profiles/level2.json",k1="http://iiif.io/api/image/2/level0.json",L1="http://iiif.io/api/image/2/profiles/level0.json",hy="http://iiif.io/api/image/2/level1.json",py="http://iiif.io/api/image/2/profiles/level1.json",fy="http://iiif.io/api/image/2/level2.json",my="http://iiif.io/api/image/2/profiles/level2.json",z1="level0",gy="level1",yy="level2",F1="http://iiif.io/api/image/2/level0",vy="http://iiif.io/api/image/2/level1",xy="http://iiif.io/api/image/2/level2",Sy=[xy,ty,ny,oy,ay,cy,dy,fy,my,yy],wy=[...Sy,vy,ey,iy,ry,sy,ly,uy,hy,py,gy],N1=[F1,vy,xy,T1,ey,ty,I1,iy,ny,R1,ry,oy,_1,sy,ay,M1,O1,ly,uy,cy,dy,k1,L1,hy,py,fy,my,z1,gy,yy];var B1={extraFormats:["jpg"],extraQualities:["default"],extraFeatures:["sizeByWhListed"]},D1={extraFormats:["jpg"],extraQualities:["default"],extraFeatures:["baseUriRedirect","cors","jsonldMediaType","regionByPx","regionSquare","sizeByWhListed","sizeByH","sizeByW","sizeByWh"]},j1={extraFormats:["jpg","png"],extraQualities:["default"],extraFeatures:["baseUriRedirect","cors","jsonldMediaType","regionByPct","regionByPx","regionSquare","rotationBy90s","sizeByWhListed","sizeByConfinedWh","sizeByH","sizeByPct","sizeByW","sizeByWh"]};function V1(e){return Sy.indexOf(e)!==-1?j1:wy.indexOf(e)!==-1?D1:B1}function U1(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=V1(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 H1(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 W1(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 q1(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 Q1(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 $1(e,t=""){let{path:i,scheme:n,server:o,prefix:a}=Q1(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 b=(c||"").split(".");if(typeof b[1]>"u"||typeof b[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:H1(f),size:W1(m),rotation:q1(p),quality:b[0],format:b[1]}}function nh(e){let t=$1(Rr(e.id));if(t.type!=="info")throw new Error("Invalid service URL");let i=U1(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 G1(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 Y1(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 pt(e){if(e["@id"])return e["@id"];if(e.id)return e.id}function Ml(e){if(!e||!e.profile||!pt(e))return!1;let t=Array.isArray(e.profile)?e.profile:[e.profile];for(let i of t)if(typeof i=="string"&&N1.indexOf(i)!==-1)return!0;return!1}function X1(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(wy.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 by(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(!X1(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:pt(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:pt(e),type:"variable",minHeight:0,minWidth:0,maxHeight:l.height||l.width,maxWidth:l.width,level:ih(e),version:by(e)?3:2})}}return t}function Kg(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 Z1(e){if(e["@type"])return e["@type"];if(e.type)return e.type}function Ol(e){if(typeof e=="string")return Kg(e);let t=Z1(e);if(t!=="Image"&&t!=="sc:Image")return null;let i=e,n=pt(i);return n?n&&i.width&&i.height?{id:n,type:"fixed",width:i.width,height:i.height,unsafe:!0}:Kg(n):null}function J1(e){return Ml(e)?(e&&e.sizes?e.sizes:[]).map(t=>({id:pt(e),type:"fixed-service",height:t.height,width:t.width,level:ih(e),version:by(e)?3:2})):[]}function Zg(e){let t=[],i=e.length;for(let n=0;n<i;n++){let o=e[n];if(!o)continue;let a=J1(o);a.length&&t.push(...a);let l=K1(o);l.length&&t.push(...l)}return t}function _r(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 eb(e,t=!0,i){let n=[],o=Ol(e);if(o===null)return n;let a=e;if(n.push(o),t&&a&&a.width&&a.height){let l=[],c=_r(a);for(let p of c){let m={id:pt(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(...Zg([f])))}}if(l.length)return n.push(...l),n}return a.service&&n.push(...Zg(a.service)),n}function tb({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 ib({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 nb(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,tb(a),ib(o),nb(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(pt(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 rb(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 ob(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),rb(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 b=0;b<S;b++){let v=y[b];if(o(()=>`-> Checking candidate ${b}`,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 sb(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 ab(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 Jg(e){return _l(0,e)}var bo=class{constructor(e={}){Rl(this,"config",{verificationsRequired:1,approximateServices:!1,enableFetching:!0,disableThrottling:!1}),Rl(this,"fetchingCount",0),Rl(this,"imageServices",{}),Rl(this,"knownImageServers",{}),this.config=Object.assign(this.config,e)}setConfig(e){Object.assign(this.config,e)}sample(e,t,i=!0){let n=wo(pt(e)),o=Rr(pt(e)),a=this.knownImageServers[n];return this.imageServices[o]=Object.assign(e,{real:!0}),!a&&e.tiles&&!Jg(e)?(this.knownImageServers[n]={verifications:0,malformed:!1,root:n,preLoaded:i,sampledId:pt(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:G1(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(pt(e)),a=this.knownImageServers[o],l=Rr(pt(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)||Jg(e.source)?null:(this.imageServices[l]||(this.imageServices[l]={"@context":a.result.context,"@id":pt(e),id:pt(e),protocol:"http://iiif.io/api/image",tiles:n?.tiles||sb(e.width,e.height,a.result.sampledTiles),sizes:n?.sizes||Y1(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 ob(t,[()=>n,()=>o])}async getImageCandidates(e,t=!0){let i=e;if(t&&i&&i.height&&i.width){let n=_r(i);for(let o of n){let a={id:pt(o),width:o.width?o.width:i.width,height:o.height?o.height:i.height,source:o};await this.loadService(a)}}return eb(e,t,this)}async verify(e){let t=this.predict(e,!1,!0),i=await this.fetchService(pt(e));if(!t)return!1;let n=t.height===i.height&&t.width===i.width&&t["@context"]===i["@context"]&&ab(t.sizes||[],i.sizes||[]);if(n){let o=wo(pt(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:pt(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(pt(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(pt(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(pt(e),t);return this.fetchingCount--,n.real&&this.sample(n,e),n}loadServiceSync(e){let t=Rr(pt(e));return this.imageServices[t]?this.imageServices[t]:this.config.approximateServices?this.predict(e):null}},kT=new bo;var kl={},kn={get(e){return e},setMetaValue([e,t,i],n){let o=kn.getResourceMeta(e,t),a=o?o[i]:void 0,l=typeof n=="function"?n(a):n;kl[e]={...kl[e]||{},[t]:{...(kl[e]||{})[t]||{},[i]:l}}},getResourceMeta:(e,t)=>{let i=kl[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 Cy=new bo;function oh(e=kn,t={}){let i=t.imageServiceLoader||Cy;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=Ol(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:Ol(f),fallback:[],log:[]};if(!f)return await m();switch(await(async S=>{if(S&&S.thumbnail&&S.thumbnail.length){let b=e.get(S.thumbnail[0]),v=await i.getImageCandidates(b,l);v&&v.length&&c.push(...v)}})(f),f.type){case"Annotation":{let S=Array.isArray(f.body)?f.body:[f.body],b=e.get(S[0]);return p&&!b.width&&(b.width=p.width,b.height=p.height),await i.getThumbnailFromResource(b,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 b=f.items[0];return b?n(b,a,l,c,p):await m()}case"Manifest":{let b=f.items[0];return b?n(b,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 lb=Object.create,sh=Object.defineProperty,ub=Object.getOwnPropertyDescriptor,Py=Object.getOwnPropertyNames,cb=Object.getPrototypeOf,db=Object.prototype.hasOwnProperty,hb=(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[Py(e)[0]])((t={exports:{}}).exports,t),t.exports},pb=(e,t,i,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Py(t))!db.call(e,o)&&o!==i&&sh(e,o,{get:()=>t[o],enumerable:!(n=ub(t,o))||n.enumerable});return e},lh=(e,t,i)=>(i=e!=null?lb(cb(e)):{},pb(t||!e||!e.__esModule?sh(i,"default",{value:e,enumerable:!0}):i,e)),ci=(e,t,i)=>(hb(e,typeof t!="symbol"?t+"":t,i),i);var eC=I(q(),1),tC=I(W(),1),Fs=I(W(),1),iC=I(q(),1),nC=I(W(),1),xv=I(W(),1),fb=Object.defineProperty,mb=(e,t,i)=>t in e?fb(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,C=(e,t,i)=>(mb(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 gb(){return Xl.reduce((e,t)=>(e[t]=[],e),{})}var Eo=Xl.reduce((e,t)=>(e[t.slice(2).toLowerCase()]=t,e[t]=t,e),{}),yb="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",Kl=(e=21)=>{let t="",i=crypto.getRandomValues(new Uint8Array(e));for(;e--;)t+=yb[i[e]&63];return t},xn=class{constructor(){C(this,"__id"),C(this,"__revision",0),C(this,"__host"),C(this,"__onCreate"),C(this,"__parent"),C(this,"__owner",{value:void 0}),C(this,"__state",{}),C(this,"eventHandlers"),C(this,"scale",1),C(this,"layers",[]),C(this,"time",[]),C(this,"_crop"),C(this,"cropData"),C(this,"id"),C(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)}),C(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=gb()}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,On(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(){}},ir=class ch extends xn{constructor(t){if(super(),C(this,"type","spacial-content"),C(this,"id"),C(this,"uri"),C(this,"display"),C(this,"points"),C(this,"priority"),C(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=ve.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:ve.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(ve.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=ve.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=ve.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=ve.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 xn{constructor(e){if(super(),C(this,"type","spacial-content"),C(this,"id"),C(this,"uri"),C(this,"display"),C(this,"points"),C(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=ve.singleBox(e.width,e.height),this.display={x:0,y:0,scale:t,width:e.width/t,height:e.height/t,points:t!==1?ve.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(ve.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?ve.singleBox(e.target.width/i,e.target.height/i):this.points}getAllPointsAt(e,t,i){return[[this,this.points,t]]}};function vb(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 Iy(e,t){return Math.abs(e-t)}function Ql(e,t){let i=Iy(e.x,t.x),n=Iy(e.y,t.y);return Math.sqrt(Math.pow(i,2)+Math.pow(n,2))}function xb(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 Vy extends xn{constructor(t){super(),C(this,"id"),C(this,"type","spacial-content"),C(this,"display"),C(this,"tileWidth"),C(this,"style",{opacity:1}),C(this,"points"),C(this,"service"),C(this,"format","jpg"),C(this,"crop2"),C(this,"tileUrl"),this.tileUrl=xb(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=ve.grid(m,f),S=ve.grid(m,f);for(let v=0;v<f;v++)for(let x=0;x<m;x++){let A=x*n.width,P=v*n.height;S.addPoints(A*o,P*o,x===m-1?i.width:(A+n.width)*o,v===f-1?i.height:(P+n.height)*o),y.addPoints(A,P,x===m-1?c:A+n.width,v===f-1?p:P+n.height)}let b=new Vy({url:t,scaleFactor:o,points:y.build(),displayPoints:S.build(),width:i.width,height:i.height,tileWidth:n.width,format:l});return b.applyProps({service:a}),b}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=Kn(this.crop||this.points,t);return[[this,o,i]]}transform(t){$t(this.points,t)}getScheduledUpdates(t,i){return[]}},Sb=class extends xn{constructor(){super(...arguments),C(this,"type","spacial-content")}getAllPointsAt(e,t,i){return[[this,this.points,t]]}},wb=class extends Sb{constructor(e){super(),C(this,"id"),C(this,"display"),C(this,"points"),C(this,"images",[]),C(this,"allImages",[]),C(this,"scaleFactors",[]),C(this,"aggregateBuffer",re(9)),C(this,"lazyLoader"),C(this,"isFullyLoaded",!1),C(this,"maxScaleFactor",0),C(this,"renderOptions"),C(this,"_scheduleSortByScales",!1),C(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 ir&&(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 ir||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)}),C(this,"loadFullResource",async()=>{if(!this.isFullyLoaded&&this.lazyLoader){this.isFullyLoaded=!0;let t=await this.lazyLoader();this.addImages(t)}}),C(this,"fallback",[this.loadFullResource]),this.id=e.id,this.points=ve.singleBox(e.width,e.height),this.lazyLoader=e.loadFullImages,e.loadFullImages||(this.isFullyLoaded=!0),this.display={x:0,y:0,points:ve.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=vb(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 Uy extends xn{constructor(t,i){super(),C(this,"id"),C(this,"type","world-object"),C(this,"scale"),C(this,"layers"),C(this,"points"),C(this,"worldPoints"),C(this,"intersectionBuffer",re(5)),C(this,"aggregateBuffer",re(9)),C(this,"invertedBuffer",re(9)),C(this,"rotation",0),C(this,"filteredPointsBuffer"),C(this,"_updatedList",[]),C(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 Uy;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)),Kn(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(Kn(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,b]=zl(l,c,o.x,o.y,this.rotation),[v,x]=zl(l,c,a.x,a.y,this.rotation),A=Math.min(p,f,S,v),P=Math.max(p,f,S,v),T=Math.min(m,y,b,x),E=Math.max(m,y,b,x);return re([t[0],A,T,P,E])}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=ig(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 Hy extends xn{constructor(t=0,i=0,n=100,o="left-to-right"){super(),C(this,"id","world"),C(this,"_width"),C(this,"_height"),C(this,"aspectRatio"),C(this,"viewingDirection"),C(this,"aggregateBuffer",re(9)),C(this,"isDirty",!1),C(this,"zones",[]),C(this,"filteredPointsBuffer"),C(this,"selectedZone"),C(this,"triggerQueue",[]),C(this,"activatedEvents",[]),C(this,"_updatedList",[]),C(this,"translationBuffer",re(9)),C(this,"needsRecalculate",!0),C(this,"emptyPaintables",[]),C(this,"renderOrder",[]),C(this,"points"),C(this,"objects",[]),C(this,"subscriptions",[]),C(this,"_propagateEventTargets",[]),C(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 Hy;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=ve.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=ve.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(ng(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(ve.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),On(i,this.points[t*5+1],this.points[t*5+2]));let n=this.objects[t];n&&(n.atScale(i),this.triggerRepaint())}translateWorldObject(t,i,n){$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=ve.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=Kn(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=Kn(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 Fl=/([0-9]+(px|em)\s+)+(solid)\s+(.*)/g,Nl={},bb=["backgroundColor","opacity","boxShadow","borderColor","borderWidth","borderStyle","outlineColor","outlineWidth","outlineOffset","outlineStyle"],Ms=class extends xn{constructor(){super(),C(this,"id"),C(this,"type","spacial-content"),C(this,"points"),C(this,"hoverEvents",!1),C(this,"activeEvents",!1),C(this,"display",{x:0,y:0,scale:1,width:-1,height:-1,points:re(5)}),C(this,"_parsed",{border:{id:null,match:[]},outline:{id:null,match:[]}}),C(this,"hovering"),C(this,"pressing"),C(this,"props",{}),C(this,"addHover",()=>{this.hovering=!0,this.__revision++}),C(this,"removeHover",()=>{this.hovering=!1,this.pressing=!1,this.__revision++}),C(this,"addPress",()=>{this.pressing=!0,this.__revision++}),C(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=Nl[i]||Fl.exec(i)||Fl.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]||Fl.exec(e.style.outline)||Fl.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 bb)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=ve.singleBox(e.target.width,e.target.height,e.target.x,e.target.y),this.display.points=ve.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 xn{constructor(){super(),C(this,"type","spacial-content"),C(this,"id"),C(this,"points"),C(this,"color","#000"),C(this,"backgroundColor"),C(this,"hovering"),C(this,"pressing"),C(this,"text",""),C(this,"display",{x:0,y:0,scale:1,width:100,height:100,points:re(5)}),C(this,"className"),C(this,"html"),C(this,"interactive",!1),C(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=ve.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,Rs=Math.sin,Ry=Math.cos,Os=Math.PI,$l=1.70158,Dl=$l*1.525,_y=$l+1,My=2*Os/3,Oy=2*Os/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},tr={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-Ry(e*Os/2)},easeOutSine:function(e){return Rs(e*Os/2)},easeInOutSine:function(e){return-(Ry(Os*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 _y*e*e*e-$l*e*e},easeOutBack:function(e){return 1+_y*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)*Rs((e*10-10.75)*My)},easeOutElastic:function(e){return e===0?0:e===1?1:ct(2,-10*e)*Rs((e*10-.75)*My)+1},easeInOutElastic:function(e){return e===0?0:e===1?1:e<.5?-(ct(2,20*e-10)*Rs((20*e-11.125)*Oy))/2:ct(2,-20*e+10)*Rs((20*e-11.125)*Oy)/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}},Cb=class{constructor(e){C(this,"runtime"),C(this,"pendingTransition"),this.runtime=e,this.pendingTransition={from:re(5),to:re(5),elapsed_time:0,done:!0,total_time:0,timingFunction:tr.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:tr.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:tr.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:tr.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||tr.easeInOutSine}goToRegion(e,{transition:t}={}){let i=this.runtime.clampRegion(e);this.applyTransition(ve.singleBox(i.width,i.height,i.x,i.y),t,{duration:1e3,easing:tr.easeOutExpo,constrain:!0}),this.runtime.updateNextFrame()}},oI=Number.MIN_VALUE+1,Jl=class{constructor(e,t,i,n=[],o){C(this,"id",Kl()),C(this,"ready",!1),C(this,"renderer"),C(this,"world"),C(this,"target"),C(this,"homePosition"),C(this,"manualHomePosition"),C(this,"manualFocalPosition"),C(this,"focalPosition"),C(this,"transitionManager"),C(this,"aggregate"),C(this,"transformBuffer",re(500)),C(this,"lastTarget",re(5)),C(this,"zoomBuffer",re(5)),C(this,"logNextRender",!1),C(this,"pendingUpdate",!0),C(this,"isCommitting",!1),C(this,"firstRender",!0),C(this,"lastTime"),C(this,"stopId"),C(this,"mode","explore"),C(this,"controllers",[]),C(this,"controllersRunning",!1),C(this,"controllerStopFunctions",[]),C(this,"maxScaleFactor",1),C(this,"_viewerToWorld",{x:0,y:0}),C(this,"_lastGoodScale",1),C(this,"hooks",{useFrame:[],useBeforeFrame:[],useAfterPaint:[],useAfterFrame:[]}),C(this,"fpsLimit"),C(this,"options"),C(this,"hookOptions",{filters:{grayscale:0,contrast:0,brightness:0,saturate:0,sepia:0,invert:0,hueRotate:0,blur:0}}),C(this,"_viewport",{x:0,y:0,width:0,height:0}),C(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}),C(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],A=f[v][1],P=f[v][2],T=P?vi(A,P,this.transformBuffer):A;this.renderer.prepareLayer(x,x.__parent&&P?vi(x.__parent.crop||x.__parent.points,P):T);let E=T.length/5;for(let j=0;j<E;j++){let F=j*5;T[F]!==0&&(this.renderer.paint(x,j,T[F+1],T[F+2],T[F+3]-T[F+1],T[F+4]-T[F+2]),this.hook("useAfterPaint",x))}this.renderer.finishLayer(x,A)}this.renderer.afterFrame(this.world,l,this.target,this.hookOptions),this.hook("useAfterFrame",l),this.lastTarget[0]=this.target[0],this.lastTarget[1]=this.target[1],this.lastTarget[2]=this.target[2],this.lastTarget[3]=this.target[3],this.lastTarget[4]=this.target[4],this.firstRender=!1,this.pendingUpdate=!1,this.logNextRender=!1,this.renderer.isReady()&&(this.ready=!0,this.world.trigger("ready")),this.world.flushSubscriptions();let S=this.world.getScheduledUpdates(this.target,m),b=S.length;if(b>0)for(let v=0;v<b;v++){let x=S[b-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=ve.projection(i),this.manualHomePosition=!1,this.pendingUpdate=!0,this.homePosition=ve.projection(this.world),this.manualFocalPosition=!1,this.focalPosition=this.target,this.updateFocalPosition(),this.transitionManager=new Cb(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(ve.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=ve.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=ve.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 P=this.world.getActiveZone();if(P){let T=t[3]-t[1]<P.points[3]-P.points[1],E=t[4]-t[2]<P.points[4]-P.points[2];return{minX:T?P.points[1]-i:P.points[1]+(P.points[3]-P.points[1])/2-(t[3]-t[1])/2,maxX:E?P.points[2]-i:P.points[2]+(P.points[4]-P.points[2])/2-(t[4]-t[2])/2,minY:T?P.points[3]+i:P.points[1]+(P.points[3]-P.points[1])/2-(t[3]-t[1])/2,maxY:E?P.points[4]+i:P.points[2]+(P.points[4]-P.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,b=Math.round(Math.max(c,p)),v=Math.round(Math.min(c,p)),x=Math.round(Math.max(y,S)),A=Math.round(Math.min(y,S));return{minX:v,maxX:b,minY:A,maxY:x}}getScaleFactor(e=!1){let t=this.renderer.getScale(this.target[3]-this.target[1],this.target[4]-this.target[2],e);return t===0?this._lastGoodScale:(this._lastGoodScale=t,t)}getZoomedPosition(e,{origin:t,fromPos:i}){let n=i?{width:i[3]-i[1],height:i[4]-i[2]}:void 0,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,b=o*S;if(S<1){let x=a*o,A=l*o,P=this.world.width/x,T=this.world.height/A;if(P>T){let E=this.world.width*b,j=~~(a*o)*f;E<j&&(e=this.world.width*o/(a*o*f))}else{let E=this.world.height*b,j=~~(l*o)*f;E<j&&(e=this.world.height*o/(l*o*f))}}else b>y&&(e=o/y);let v=vi(this.target,On(e,t?t.x:this.target[1]+(this.target[3]-this.target[1])/2,t?t.y:this.target[2]+(this.target[4]-this.target[2])/2),this.zoomBuffer);return this.constrainBounds(v,{ref:!0,panPadding:100}),v}clampRegion({x:e,y:t,width:i,height:n,padding: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 b=y/l*a;return{x:p-(b-f)/2,y:m,width:b,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=ve.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,On(e,t?t.x:this.target[1]+(this.target[3]-this.target[1])/2,t?t.y:this.target[2]+(this.target[4]-this.target[2])/2)),this.pendingUpdate=!0}syncTo(e){let t=this.target;return this.target=e.target,this.pendingUpdate=!0,()=>{this.target=t}}stop(){return typeof this.stopId<"u"&&(window.cancelAnimationFrame(this.stopId),this.stopId=void 0),()=>{this.render(performance.now())}}reset(){this.renderer.reset()}selectZone(e){this.world.selectZone(e),this.pendingUpdate=!0}deselectZone(){this.world.deselectZone(),this.pendingUpdate=!0}hook(e,t){let i=this.hooks[e].length;if(i!==0)for(let n=0;n<i;n++)this.hooks[e][n](t)}registerHook(e,t){return this.hooks[e].push(t),()=>{this.hooks[e]=this.hooks[e].filter(i=>i!==t)}}updateNextFrame(){this.pendingUpdate=!0}},Vl=/([0-9]+(px|em)\s+)+(solid)\s+(.*)/g,Ul={},Pb=["backgroundColor","opacity","boxShadow","borderColor","borderWidth","borderStyle","outlineColor","outlineWidth","outlineOffset","outlineStyle"],Wy=class extends xn{constructor(){super(),C(this,"id"),C(this,"type","spacial-content"),C(this,"isShape",!0),C(this,"points"),C(this,"hoverEvents",!1),C(this,"activeEvents",!1),C(this,"display",{x:0,y:0,scale:1,width:-1,height:-1,points:re(5)}),C(this,"boundingBox",null),C(this,"_parsed",{border:{id:null,match:[]},outline:{id:null,match:[]}}),C(this,"hovering"),C(this,"pressing"),C(this,"props",{}),C(this,"shape",{type:"none"}),C(this,"addHover",()=>{this.hovering=!0,this.__revision++}),C(this,"removeHover",()=>{this.hovering=!1,this.pressing=!1,this.__revision++}),C(this,"addPress",()=>{this.pressing=!0,this.__revision++}),C(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 Pb)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=ve.singleBox(e.target.width,e.target.height,e.target.x,e.target.y),this.display.points=ve.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++}},ky=/(-?[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,Ly={},Eb=typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes("firefox"),Hl={},Ab=class{constructor(e,t){C(this,"canvas"),C(this,"ctx"),C(this,"options"),C(this,"imagesPending",0),C(this,"imagesLoaded",0),C(this,"imageIdsLoaded",[]),C(this,"frameIsRendering",!1),C(this,"pendingDrawCall",!1),C(this,"firstMeaningfulPaint",!1),C(this,"parallelTasks",8),C(this,"frameTasks",0),C(this,"loadingQueueOrdered",!0),C(this,"loadingQueue",[]),C(this,"currentTask",Promise.resolve()),C(this,"tasksRunning",0),C(this,"stats"),C(this,"averageJobTime",64),C(this,"lastKnownScale",1),C(this,"visible",[]),C(this,"previousVisible",[]),C(this,"rendererPosition"),C(this,"dpi"),C(this,"drawCalls",[]),C(this,"lastPaintedObject"),C(this,"hostCache"),C(this,"invalidated",[]),C(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--}))}}),C(this,"_scheduled",0),C(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 ag({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 ir||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 b=e.x*this.lastKnownScale,v=e.y*this.lastKnownScale,x=[i+b,n+v,o,a];x[0]+=b,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 Eb?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 Wy&&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 b=0;if(typeof m.outlineOffset<"u"&&(b=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 A=Ly[x]||ky.exec(x)||ky.exec(x);Ly[x]=A,A&&(this.ctx.save(),this.ctx.shadowOffsetX=parseInt(A[1])*this.dpi*f,this.ctx.shadowOffsetY=parseInt(A[3])*this.dpi*f,this.ctx.shadowBlur=parseInt(A[5])*this.dpi*f,this.ctx.shadowColor=A[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||[],A=x.length;this.ctx.beginPath();for(let P=0;P<A;P++)this.ctx.lineTo(i+x[P][0]*this.lastKnownScale,n+x[P][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-b,n-S/2-b,o+y*2+S+b*2,a+y*2+S+b*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 ir||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=[]}},qy=class{constructor(e){C(this,"renderers",[]),C(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()}},Tb=class{constructor(e){C(this,"canvas"),C(this,"context"),C(this,"heightRatio",1),C(this,"widthRatio",1),C(this,"target",new Float32Array(5)),C(this,"initialWidth"),C(this,"initialHeight"),C(this,"bounds"),C(this,"aggregate"),C(this,"delta",0),C(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 ir&&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=ve.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 Ib(e){return{x:e[1],y:e[2],width:e[3]-e[1],height:e[4]-e[2]}}var Rb={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:()=>{}},$y=(e={})=>({start:function(t){let{zoomWheelConstant:i,enableWheel:n,enableClickToZoom:o}={...Rb,...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(M){for(let O=0;O<l.length;O++)if(l[O].pointerId==M.pointerId){l.splice(O,1),c.splice(O,1);break}}function f(M){l.push(M),c.push({...M.atlas||{}})}function y(M){for(let O=0;O<l.length;O++)if(M.pointerId==l[O].pointerId){l[O]=M,c[O]={...M.atlas||{}};break}if(l.length==2){let O=Math.abs(l[0].clientX-l[1].clientX),$=c[0].x>c[1].x?c[0].x-c[1].x:c[1].x-c[0].x,ee=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:$/2,y:ee/2},!0),O<p&&t.world.zoomTo(1.05,{x:$/2,y:ee/2},!0)),p=O}}function S(M){m(M),l.length<2&&(p=-1)}function b(){t.world.constraintBounds(),A=0}function v(M){if(M.which>1){a.isPressing=!1;return}t.mode==="explore"&&(M.preventDefault(),a.pointerStart.x=M.atlas.x,a.pointerStart.y=M.atlas.y,t.transitionManager.stopTransition(),a.isPressing=!0)}function x(){a.isPressing&&(t.mode==="explore"&&t.world.constraintBounds(),a.isPressing=!1)}let A=0;function P(M){if(t.mode==="explore"){if(M.atlasTouches.length===1&&(M.preventDefault(),a.pointerStart.x=M.atlasTouches[0].x,a.pointerStart.y=M.atlasTouches[0].y),M.atlasTouches.length===2){M.preventDefault();let O=M.atlasTouches[0].x,$=M.atlasTouches[1].x;a.pointerStart.x=(O+$)/2;let ee=M.atlasTouches[0].y,L=M.atlasTouches[1].y;a.pointerStart.y=(ee+L)/2,A=Ql({x:M.touches[0].clientX,y:M.touches[0].clientY},{x:M.touches[1].clientX,y:M.touches[1].clientY})}t.transitionManager.stopTransition(),a.isPressing=!0}}function T(M){let O=null,$=null,ee=!1,L=0;if(a.isPressing&&M.touches.length===2){let ie=M.touches[0].clientX,Oe=M.touches[1].clientX;O=(ie+Oe)/2;let Pe=M.touches[0].clientY,be=M.touches[1].clientY;$=(Pe+be)/2,L=Ql({x:M.touches[0].clientX,y:M.touches[0].clientY},{x:M.touches[1].clientX,y:M.touches[1].clientY}),ee=!0}if(a.isPressing&&M.touches.length===1){let ie=M.touches[0];O=ie.clientX,$=ie.clientY}if(O!==null&&$!==null){let ie=t.getRendererScreenPosition();if(ie){let{x:Oe,y:Pe}=t.viewerToWorld(O-ie.x,$-ie.y),be=L&&A?L/A:1;t.transitionManager.customTransition(ye=>{ye.from=re(t.target),ye.to=vi(ye.from,li(ut(a.pointerStart.x-Oe,a.pointerStart.y-Pe),On(1/be,Oe,Pe)),a.mousemoveBuffer),ye.elapsed_time=0,ye.total_time=0,ye.timingFunction=tr.easeInOutExpo,ye.done=!1})}A=L}}function E(M){if(a.isPressing){let O=t.getRendererScreenPosition();if(O){let{x:$,y:ee}=t.viewerToWorld(M.clientX-O.x,M.clientY-O.y);t.transitionManager.customTransition(L=>{L.from=re(t.target),L.to=vi(L.from,ut(a.pointerStart.x-$,a.pointerStart.y-ee),a.mousemoveBuffer),L.elapsed_time=0,L.total_time=0,L.timingFunction=tr.easeInOutExpo,L.done=!1})}}}function j(M){t.mode==="explore"&&t.world.zoomIn(M.atlas)}function F(M){let O=1+(0,Qy.default)(M).spinY/i;t.world.zoomTo(O,M.atlas,!0)}t.world.addEventListener("mouseup",b),t.world.addEventListener("touchend",b),t.world.addEventListener("touchstart",P),t.world.addEventListener("mousedown",v),window.addEventListener("touchend",x),window.addEventListener("mouseup",x),window.addEventListener("mousemove",E),window.addEventListener("touchmove",T),o&&(t.world.activatedEvents.push("onClick"),t.world.addEventListener("click",j)),n&&(t.world.activatedEvents.push("onWheel"),t.world.addEventListener("wheel",F));let k=t.world.addLayoutSubscriber((M,O)=>{if(M==="zone-changed"&&t.transitionManager.constrainBounds({transition:{duration:0}}),M==="zoom-to"&&O&&t.transitionManager.zoomTo(O.factor,{origin:O.point,stream:O.stream}),M==="go-home"){let $=O.immediate?{duration:0}:void 0;t.transitionManager.goToRegion(Ib(t.homePosition),{transition:$})}if(M==="goto-region"&&O){let $=O.immediate?{duration:0}:{};t.transitionManager.goToRegion(O,{transition:$})}M==="constrain-bounds"&&t.transitionManager.constrainBounds({transition:O?.immediate?{duration:0}:void 0})});return()=>{t.world.removeEventListener("mouseup",b),t.world.removeEventListener("touchend",b),t.world.removeEventListener("touchstart",P),t.world.removeEventListener("mousedown",v),window.removeEventListener("touchend",x),window.removeEventListener("mouseup",x),t.world.removeEventListener("mousemove",E),t.world.removeEventListener("touchmove",E),o&&t.world.removeEventListener("click",j),n&&t.world.removeEventListener("wheel",F),k()}},updatePosition(){}}),Ao=eu.default.createContext("explore");Ao.displayName="Mode";var Mb=()=>(0,eu.useContext)(Ao);var tu=gh.default.createContext(null);tu.displayName="Atlas";var iu=gh.default.createContext(null);iu.displayName="Bounds";var Gl,Ob=typeof performance=="object"&&typeof performance.now=="function";if(Ob){let e=performance;Gl=()=>e.now()}else{let e=Date,t=e.now();Gl=()=>e.now()-t}var kb=16;function zy(e,t){e&&e.appendChild&&t&&e.appendChild(t)}function Xy(e,t){e&&e.removeChild&&t&&e.removeChild(t)}function Lb(e,t){return Xy(e.world,t)}function zb(e,t,i){return Ky(e.world,t,i)}function Ky(e,t,i){e&&e instanceof Jl&&(e=e.world),e&&e.insertBefore&&e.insertBefore(t,i)}function Zy(e,t,i){if(i&&(e.applyProps&&e.applyProps(i),e instanceof xn))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 Jy(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 Yl=new Map,Fy={};function Fb(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 Wy;break;case"worldObject":case"world-object":l=new mh;break;case"worldImage":case"world-image":l=new ir;break;case"texture":l=new dh;break;case"compositeImage":case"composite-image":l=new wb({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 Jy(c,i),Zy(l,{},i),l}function Nb(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 ks=(0,Gy.default)({unstable_now:Gl,now:Gl,createInstance:Fb,removeChild:Xy,appendChild:zy,appendInitialChild:zy,insertBefore:Ky,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:Nb,removeChildFromContainer:Lb,createTextInstance(){},insertInContainerBefore:zb,prepareUpdate(e,t,i,n,o){return Jy(o.world,n),n},commitUpdate(e,t,i,n,o,a){e.applyProps&&t&&Zy(e,n,t)},finalizeInitialChildren(e){return e?.__handlers},getChildHostContext(){return Fy},getRootHostContext(){return Fy},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"),kb},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(){}});ks.injectIntoDevTools({bundleType:0,version:Yy.version,rendererPackageName:"@atlas-viewer/atlas"});function yh(e,t){let i=Yl.get(e);i&&ks.updateContainer(null,i,null,()=>{Yl.delete(e),t&&t(e)})}var Ny={render(e,t){let i=Yl.get(t);if(i)ks.updateContainer(e,i,null);else{let n=ks.createContainer(t,0,null,!1,null,"",()=>{},null);ks.updateContainer(e,n,null),Yl.set(t,n)}},unmountComponentAtNode(e,t){yh(e,t)}},Po=typeof window<"u"&&(window.document?.createElement||window.navigator?.product==="ReactNative")?nu.useLayoutEffect:nu.useEffect,Bb=vn.default.memo(({children:e,setIsReady:t,onCreated:i,bounds:n,preset:o,mode:a="explore"})=>{let l=(0,vn.useCallback)(function(c){let p=(0,vn.useRef)(!1),m=()=>{t(!0)};return(0,vn.useEffect)(()=>{if(o&&!p.current){o.runtime.goHome();let f=i&&i(o);return void(f&&f.then?f.then(m):m())}return()=>{}},[]),(0,vn.useEffect)(()=>{p.current=!0},[]),c.children},[o]);return Po(()=>{if(o){let c=o.runtime;a!==c.mode&&(c.mode=a),Ny.render((0,Co.jsx)(vn.default.StrictMode,{children:(0,Co.jsx)(l,{children:(0,Co.jsx)(iu.Provider,{value:n,children:(0,Co.jsx)(Ao.Provider,{value:a,children:(0,Co.jsx)(tu.Provider,{value:o,children:e})})})})}),c)}},[o,a,e]),Po(()=>{if(o){let c=o.runtime;return()=>{Ny.unmountComponentAtNode(c)}}return()=>{}},[o]),null}),Db=class{constructor(e,t){C(this,"canvas"),C(this,"gl"),C(this,"program"),C(this,"fragmentShader"),C(this,"vertexShader"),C(this,"rectBuffer"),C(this,"fragmentShaderSource",`
12
12
  precision mediump float;
13
13
 
14
14
  uniform sampler2D u_image;
@@ -17,7 +17,7 @@ No matching component was found for:
17
17
  void main() {
18
18
  gl_FragColor = texture2D(u_image, v_texCoord);
19
19
  }
20
- `),b(this,"vertexShaderSource",`
20
+ `),C(this,"vertexShaderSource",`
21
21
  attribute vec2 a_position;
22
22
  uniform vec2 u_resolution;
23
23
  varying vec4 v_color;
@@ -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 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(`
44
+ `),C(this,"attributes"),C(this,"uniforms"),C(this,"buffers"),C(this,"rendererPosition"),C(this,"dpi"),C(this,"lastResize",0),C(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 ir||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 ev=class{constructor(e){C(this,"$element"),C(this,"stylesheetClasses"),C(this,"activeStylesheetClasses"),C(this,"sheetsDidUpdate"),C(this,"sheetPrefix"),C(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])}},tv=class{constructor(e,t){C(this,"htmlContainer"),C(this,"visible",[]),C(this,"previousVisible",[]),C(this,"htmlIds",[]),C(this,"firstMeaningfulPaint",!1),C(this,"rendererPosition"),C(this,"stylesheet"),C(this,"options"),C(this,"paintTx",1),C(this,"zIndex",0),C(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 ev({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 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(`
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(){}},iv=class ql{constructor(t,i,n){C(this,"element"),C(this,"runtime"),C(this,"unsubscribe"),C(this,"activatedEvents",[]),C(this,"eventHandlers",[]),C(this,"bounds"),C(this,"pointerMoveEvent"),C(this,"pointerEventState",{isClicking:!1,isDragging:!1,isPressed:!1,mousedOver:[],itemsBeingDragged:[],mouseDownStart:{x:0,y:0},lastTouches:[]}),C(this,"options"),C(this,"_realPointerMove",a=>{this.pointerMoveEvent=a}),C(this,"onWheelEvent",a=>{a.preventDefault(),this.onPointerEvent(a)}),C(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),b={id:f.identifier,x:y,y:S};c.push(b)}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=[])}),C(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)}}),C(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)}),C(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)}),C(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)}};C(iv,"eventPool",{atlas:{x:0,y:0}});var nv=iv;function rv({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:b}){if(!n)throw new Error("Invalid container");n.style.userSelect="none";let v=e?$y({minZoomFactor:.5,maxZoomFactor:3,enableClickToZoom:!1,...a||{}}):void 0,x=new qy([l?new Db(n,{dpi:c}):new Ab(n,{dpi:c,debug:p,box:m,polygon:f,background:S}),o?new tv(o,{box:l||!m,text:!0,triggerResize:i}):void 0,y?new Tb(y):void 0]),A=new Jl(x,new Zl(1024,1024),t,v?[v]:[],b),P=new nv(n,A);return{name:"default-preset",em:P,runtime:A,renderer:x,controller:v,canvas:n,navigator:y,unmount(){yh(A),A.stopControllers(),A.stop(),A.reset(),P&&P.stop()}}}var er=1+Number.MIN_VALUE,jb=class{constructor(e,t){C(this,"container"),C(this,"width"),C(this,"height"),C(this,"pending",!0),C(this,"options"),C(this,"stylesheet"),C(this,"zIndex",0),C(this,"lastKnownScale",1),C(this,"rendererPosition"),C(this,"currentlyVisible",[]),C(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 ev({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 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),[Y,te]=(0,rt.useState)(!1),ke=(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]),[_e,ve,We]=Pl({scroll:!0}),Ye=(0,rt.useRef)(),ft=ee=>{Ye.current=ee,_e(ee)},[De,H,ge,je]=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),Y&&H&&(H.ready=!0)},[H,Y,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]),ke.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-${De}`].filter(Boolean).join(" ").trim(),style:{...y,...c?{}:{width:M.width,height:M.height}},children:[De==="static-preset"?(0,Yt.jsx)(_s,{className:"atlas-static-container",style:H&&H.controller?void 0:{pointerEvents:"none"},ref:je.container,tabIndex:0,...v}):(0,Yt.jsx)("canvas",{className:"atlas-canvas",part:"atlas-canvas",tabIndex:0,...Ee,...v,ref:je.canvas}),(0,Yt.jsx)(_s,{className:"atlas-overlay",style:{...f||{}},ref:je.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:je.navigator})}):null,c?(0,Yt.jsx)("style",{children:`.atlas-width-${qe} { width: ${M.width}px; height: ${M.height}px; }`}):(0,Yt.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 ir){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+er).toFixed(2)}px;height:${(a+er).toFixed(2)}px;`):(l.style.width=`${o+er}px`,l.style.height=`${a+er}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+er).toFixed(2)}px;height:${(a+er).toFixed(2)}px;`):(l.style.width=`${o+er}px`,l.style.height=`${a+er}px`),l.style.transform=`translate(${i}px, ${n}px)`}}pendingUpdate(){return this.pending}prepareLayer(e){}finishLayer(e){}reset(){}};function Vb({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?$y({minZoomFactor:.5,maxZoomFactor:3,enableClickToZoom:!1,...a||{}}):void 0,p=new jb(n,{addPart:!1,setDraggableFalse:!1,imageClass:"atlas-static-image",background:l}),m=o?new qy([p,new tv(o,{box:!0,text:!0,triggerResize:i})]):p,f=new Jl(m,new Zl(1024,1024),t,c?[c]:[]),y=new nv(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 Ub={"default-preset":rv,"static-preset":Vb},Hb={};function Wb(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=Hb]=Array.isArray(e)?e||[]:[e],[m,f]=(0,Ni.useState)(null);(0,Ni.useLayoutEffect)(()=>{let S=n.current,b=a.current,v=i.current,x=o.current,A=(Ub[c]||rv)({containerElement:b,canvasElement:S,overlayElement:v,navigatorElement:x,viewport:l.current,dpi:window.devicePixelRatio||1,forceRefresh:t.forceRefresh,unstable_webglRenderer:t.unstable_webglRenderer,...p||{}});return f(A),()=>{A&&(A.unmount(),S&&(S.height=0,S.width=0),v&&(v.innerHTML=""),x&&(x.height=0,x.width=0))}},[c,p]);let y=(0,Ni.useMemo)(()=>({canvas:n,overlay:i,container:a,navigator:o}),[]);return[c,m,l,y]}function qb(e){return(0,ov.useMemo)(()=>hh(e),e)}var _s=sv.default.forwardRef((e,t)=>(0,av.jsx)("div",{...e,ref:t,part:e.className})),By=["brightness","contrast","grayscale","hueRotate","invert","saturate","sepia","blur"],Qb=({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:b,containerProps:v={},homePosition:x,homeOnResize:A,homeCover:P,background:T,runtimeOptions:E,debug:j,filters:F,...k})=>{let[M,O]=(0,rt.useState)(T),[$,ee]=(0,rt.useState)(n),[L,ie]=(0,rt.useState)(!1),Oe=(0,rt.useRef)(!1),Pe=(0,rt.useMemo)(()=>(typeof t=="string"&&(t=[t,{}]),M||j?t?[t[0],{debug:j,background:M,...t[1]||{}}]:["default-preset",{background:M,debug:j}]:t||"default-preset"),[t,M,j]),[be,ye,Xe]=Cl({scroll:!0}),Ue=(0,rt.useRef)(),ht=J=>{Ue.current=J,be(J)},[Ne,G,le,Be]=Wb(Pe,{width:k.width,height:k.height,forceRefresh:Xe,unstable_webglRenderer:a}),[D,Q]=(0,rt.useState)("");(0,rt.useEffect)(()=>{ee(n)},[n]),(0,rt.useEffect)(()=>{G&&G.em&&G.em.updateBounds()},[G,ye]),(0,rt.useEffect)(()=>{G?.runtime.setOptions(E||{})},[E]),(0,rt.useEffect)(()=>{G&&G.runtime&&(G.runtime.mode=$),L&&G&&(G.ready=!0)},[G,L,$]),(0,rt.useEffect)(()=>{G&&(P||(G.runtime.manualHomePosition=!!x,G.runtime.setHomePosition(x)))},[G,P,x]),(0,rt.useEffect)(()=>{if(G){let J=G.runtime;J.resize(le.current.width,k.width,le.current.height,k.height),le.current.width=k.width,le.current.height=k.height,J.updateNextFrame(),le.current.didUpdate=!0}},[G,k.width,k.height]),(0,rt.useEffect)(()=>{if(F&&G){let J=G.runtime,Te=!1;J.hookOptions.enableFilters=!0;for(let xe of By)F[xe]?F[xe]!==G.runtime.hookOptions.filters[xe]&&(J.hookOptions.filters[xe]=F[xe],Te=!0):J.hookOptions.filters[xe]&&(J.hookOptions.filters[xe]=0,Te=!0);Te&&J.updateNextFrame()}else if(G){let J=G.runtime;for(let Te of By)J.hookOptions.filters[Te]=0;J.hookOptions.enableFilters=!1,J.updateNextFrame()}},[G,F]),Po(()=>{if(G&&(G.overlay&&(G.overlay.style.width=`${ye.width}px`,G.overlay.style.height=`${ye.height}px`),G.container&&(G.container.style.width=`${ye.width}px`,G.container.style.height=`${ye.height}px`),P)){let J=G.runtime.world.width,Te=G.runtime.world.height,xe=J/Te,Ai=le.current.width,ti=le.current.height,zt=Ai/ti;if(xe>zt){zt=ti/Ai,G.runtime.manualHomePosition=!0;let fi=(J-Te/zt)/2;P==="start"&&(fi=0),P==="end"&&(fi=J-Te/zt),G.runtime.setHomePosition({x:fi,y:0,width:Te/zt,height:Te})}else{let fi=(Te-J/zt)/2;P==="start"&&(fi=0),P==="end"&&(fi=Te-J/zt),G.runtime.manualHomePosition=!0,G.runtime.setHomePosition({x:0,y:fi,width:J,height:J/zt})}A&&G.runtime.goHome({})}},[G,ye.height,ye.width,P]),Po(()=>{let J=()=>{if(G){let Te=G.runtime;le.current.width!==k.width&&le.current.height!==k.height&&(Te.resize(le.current.width,k.width,le.current.height,k.height),le.current.width=k.width,le.current.height=k.height,Te.updateNextFrame(),le.current.didUpdate=!0)}};return window.addEventListener("resize",J),()=>window.removeEventListener("resize",J)},[G,k.height,k.width]);let he={width:120},fe=()=>{if(G&&G.navigator){let J=G.runtime.world.height,Te=G.runtime.world.width,xe=window.devicePixelRatio||1,Ai=he.width,ti=he.width/Te*J;G.navigator.width=Ai*xe,G.navigator.height=ti*xe,G.navigator.style.width=Ai+"px",G.navigator.style.height=ti+"px"}};Po(()=>{if(G){fe();let J=G.runtime;return J.world.addLayoutSubscriber(Te=>{Te==="recalculate-world-size"&&(fe(),J.resize(le.current.width,k.width,le.current.height,k.height))})}return()=>{}},[G,k.width,k.height]);let me=(0,rt.useCallback)(function(J){let Te=()=>{ie(!0)};return(0,rt.useEffect)(()=>{if(G){G.runtime.goHome();let xe=i&&i(G);return void(xe&&xe.then?xe.then(Te):Te())}else throw new Error("Invalid configuration - no runtime found")},[]),J.children},[G]);(0,rt.useEffect)(()=>{if(G){let J=G.runtime;if(o)return J.world.addLayoutSubscriber(Te=>{Te==="recalculate-world-size"&&J.goHome()})}return()=>{}},[G,o]),(0,rt.useEffect)(()=>G?G.runtime.registerHook("useBeforeFrame",()=>{if(le.current.didUpdate&&G.canvas){let J=window.devicePixelRatio||1,Te=le.current.width,xe=le.current.height;G.canvas.width=Te*J,G.canvas.height=xe*J,G.canvas.style.width=Te+"px",G.canvas.style.height=xe+"px",G.canvas.getContext("2d")?.scale(J,J),G&&G.em&&G.em.updateBounds(),le.current.didUpdate=!1}}):()=>{},[G,o]),(0,rt.useEffect)(()=>{let J=()=>{G&&(ee("sketch"),Q("mode-sketch")),window.removeEventListener("keyup",J)},Te=xe=>{if(xe.code==="Space"&&G&&G.runtime.mode==="sketch"){if(xe.target&&xe.target.tagName&&xe.target.tagName.toLowerCase()==="input")return;xe.preventDefault(),ee("explore"),Q("mode-explore"),window.addEventListener("keyup",J)}};return window.addEventListener("keydown",Te),()=>{window.removeEventListener("keydown",Te),window.removeEventListener("keyup",J)}},[G]),Po(()=>{if(Ue.current&&!M){let J=getComputedStyle(Ue.current).getPropertyValue("--atlas-background");J&&O(J)}},[M]),Oe.current=!0;let{height:He,width:We,...Ae}=k,qe=qb([k.width,k.height]);return(0,Gt.jsxs)(_s,{ref:ht,className:["atlas",c?"":`atlas-width-${qe}`,D,b,`atlas-${Ne}`].filter(Boolean).join(" ").trim(),style:{...y,...c?{}:{width:k.width,height:k.height}},children:[Ne==="static-preset"?(0,Gt.jsx)(_s,{className:"atlas-static-container",style:G&&G.controller?void 0:{pointerEvents:"none"},ref:Be.container,tabIndex:0,...v}):(0,Gt.jsx)("canvas",{className:"atlas-canvas",part:"atlas-canvas",tabIndex:0,...Ae,...v,ref:Be.canvas}),(0,Gt.jsx)(_s,{className:"atlas-overlay",style:{...f||{}},ref:Be.overlay,children:l?(0,Gt.jsx)(me,{children:(0,Gt.jsx)(iu.Provider,{value:ye,children:(0,Gt.jsx)(Ao.Provider,{value:$,children:(0,Gt.jsx)(tu.Provider,{value:G,children:m})})})}):(0,Gt.jsx)(Bb,{bounds:ye,preset:G,mode:$,setIsReady:ie,onCreated:i,children:m})}),S?(0,Gt.jsx)(_s,{className:"atlas-navigator",children:(0,Gt.jsx)("canvas",{className:"atlas-navigator-canvas",part:"atlas-navigator-canvas",ref:Be.navigator})}):null,c?(0,Gt.jsx)("style",{children:`.atlas-width-${qe} { width: ${k.width}px; height: ${k.height}px; }`}):(0,Gt.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-${qe} { width: ${M.width}px; height: ${M.height}px; }
53
+ .atlas-width-${qe} { width: ${k.width}px; height: ${k.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 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:`
63
+ `}),e]})};function $b(e){return Number(e)==e?`${e}px`:e}var lv=({resizeHash:e,aspectRatio:t,containerProps:i={},...n})=>{let[o,a,l]=Cl(),{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)(Qb,{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, ${Ub(c||(t?f.height:512))})
68
+ height: var(--atlas-container-height, ${$b(c||(t?f.height:512))})
69
69
  }
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,Y=e.width+y.current.east,te=e.height+y.current.south;M.points[1]=Math.min(K,Y),M.points[2]=Math.min(U,te),M.points[3]=Math.max(K,Y),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(`
70
+ `}),n.htmlChildren]})},ou=()=>(0,uv.useContext)(tu),su=()=>{let e=ou();return e?e.runtime:void 0};var dv=(e,t=[])=>{let i=su();(0,cv.useEffect)(()=>i?i.registerHook("useFrame",e):()=>{},t)},au=()=>{let e=ou();return e&&e.canvas?e.canvas:void 0};function Yb(){return(0,hv.useContext)(iu)}async function Xb(e,t,i){if(pv.version.startsWith("18.")){let n=await Promise.resolve().then(()=>I(Ty(),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(()=>I(Is(),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 Sn=yn.default.forwardRef(({children:e,...t},i)=>{let n=(0,yn.useRef)(),o=su(),a=(0,yn.useRef)(0),l=(0,yn.useRef)(),c=(0,yn.useRef)();return dv(()=>{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,yn.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 Xb(p.__host.element,f,c)}}p&&p.__host?m():p&&(p.__onCreate=m)},[i,e,l,t.relative]),(0,yn.useLayoutEffect)(()=>()=>{c.current&&setTimeout(()=>{c.current.unmount()},0)},[]),(0,ph.jsx)("box",{html:!0,...t,ref:l})});Sn.displayName="HTMLPortal";var Dy=(e,t,i=[])=>{let n=su(),o=n?n.world:void 0;(0,mv.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 jy(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,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 Zb=(e,t)=>{let i=Mb(),n=su(),o=Yb(),a=(0,It.useRef)(),l=(0,It.useRef)(null),c=(0,It.useRef)(),[p,m]=(0,It.useState)(!1),f=(0,It.useRef)(!1),y=(0,It.useRef)({north:0,south:0,east:0,west:0}),S=Kb(),b=(0,It.useCallback)(T=>E=>{if(f.current=!0,m(!0),o&&n){let{top:j,left:F}=o,k=n.viewerToWorld(E.pageX-F,E.pageY-j);c.current={x:k.x,y:k.y},a.current=T}},[o,n]),v=(0,It.useMemo)(()=>e.width/e.height,[e.width,e.height]),x=(0,It.useCallback)(T=>{if(!Math.abs(T.north-T.south+(T.east-T.west)))return;let E=-T.west+T.east,j=-T.north+T.south,F=e.width+E,k=e.height+j;if(F/k>=v){let M=k*v,O=F-M,[$,ee]=jy(T.east,T.west);T.west=T.west+O*ee,T.east=T.east-O*$}else{let M=F/v,O=k-M,[$,ee]=jy(T.north,T.south);T.north=T.north+O*$,T.south=T.south-O*ee}},[e.width,e.height,v]);dv(()=>{c&&n&&n.updateNextFrame()}),(0,It.useEffect)(()=>{n&&n.updateNextFrame()},[n,p]);let A=(0,It.useCallback)(T=>{if(!n||!o||n.mode!=="sketch")return;let{top:E,left:j}=o,F=n.viewerToWorld(T.pageX-j,T.pageY-E),k=l.current,M=!e.maintainAspectRatio&&S.current.alt,O=!M&&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=F.x-(c.current?c.current.x:0),M&&(y.current.west=-y.current.east)),(a.current==="translate"||a.current==="west"||a.current==="north-west"||a.current==="south-west")&&(y.current.west=F.x-(c.current?c.current.x:0),M&&(y.current.east=-y.current.west)),(a.current==="translate"||a.current==="north"||a.current==="north-east"||a.current==="north-west")&&(y.current.north=F.y-(c.current?c.current.y:0),M&&(y.current.south=-y.current.north)),(a.current==="translate"||a.current==="south"||a.current==="south-west"||a.current==="south-east")&&(y.current.south=F.y-(c.current?c.current.y:0),M&&(y.current.north=-y.current.south)),(e.maintainAspectRatio||O)&&x(y.current),k){let $=y.current.west,ee=y.current.north,L=e.width+y.current.east,ie=e.height+y.current.south;k.points[1]=Math.min($,L),k.points[2]=Math.min(ee,ie),k.points[3]=Math.max($,L),k.points[4]=Math.max(ee,ie),n.updateNextFrame()}},[n,e.width,e.height,e.maintainAspectRatio,o]);Dy("mousemove",A,[e.width,e.height,o]),Dy("pointermove",A,[e.width,e.height,o]);let P=(0,It.useRef)();return(0,It.useEffect)(()=>{P.current=()=>{if(f.current){let T=y.current.west,E=y.current.north,j=e.width+y.current.east,F=e.height+y.current.south,k=Math.min(T,j),M=Math.min(E,F),O=Math.max(T,j),$=Math.max(E,F),ee={x:(e.x||0)+k,y:(e.y||0)+M,width:O-k||1,height:$-M||1};e.maintainAspectRatio,t(ee),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,It.useEffect)(()=>{let T=()=>{P.current&&P.current()};return window.addEventListener("pointerup",T),window.addEventListener("touchend",T),()=>{window.removeEventListener("pointerup",T),window.removeEventListener("touchend",T)}},[]),{portalRef:l,mode:i,mouseEvent:b,onPointerMoveCallback:A,isEditing:p}};function Jb({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}=Zb({x:l.x||0,y:l.y||0,width:l.width,height:l.height,maintainAspectRatio:o},i),S=(0,gn.useMemo)(()=>f("translate"),[f]),b=(0,gn.useMemo)(()=>f("east"),[f]),v=(0,gn.useMemo)(()=>f("west"),[f]),x=(0,gn.useMemo)(()=>f("south"),[f]),A=(0,gn.useMemo)(()=>f("north"),[f]),P=(0,gn.useMemo)(()=>f("south-east"),[f]),T=(0,gn.useMemo)(()=>f("south-west"),[f]),E=(0,gn.useMemo)(()=>f("north-east"),[f]),j=(0,gn.useMemo)(()=>f("north-west"),[f]),F=m==="sketch",k={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":F?"initial":"none"};return(0,St.jsx)(St.Fragment,{children:(0,St.jsxs)("world-object",{...l,children:[n,F&&t?(0,St.jsx)(Sn,{ref:p,target:{x:0,y:0,height:l.height,width:l.width},relative:!0,interactive:!1,children:F&&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":F?"initial":"none"}}),o?null:(0,St.jsxs)(St.Fragment,{children:[(0,St.jsx)("div",{title:"east",onTouchStart:b,onMouseDown:b,style:{...k,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:{...k,cursor:"w-resize",position:"absolute",height:c*2,width:c,left:0,top:"50%",opacity:a?0:1,transform:`translate(-${c/2}px, -${c}px)`}}),(0,St.jsx)("div",{title:"north",onMouseDown:A,style:{...k,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:{...k,cursor:"s-resize",position:"absolute",height:c,width:c*2,left:"50%",bottom:0,opacity:a?0:1,transform:`translate(-${c}px, ${c/2}px)`}})]}),(0,St.jsx)("div",{title:"north-east",onMouseDown:E,style:{...k,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:P,style:{...k,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:{...k,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:j,style:{...k,cursor:"nw-resize",position:"absolute",height:c,width:c,top:0,left:0,transform:`translate(-${c/2}px, -${c/2}px)`}})]}):null}):null]})})}function gv({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,fv.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)(Jb,{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,yv.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,Mr.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,Mr.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,Mr.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,Mr.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,Mr.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 Sv(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=I(W()),rC=(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&&oC(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)(rC.Provider,{value:{didCatch:a,error:l,resetErrorBoundary:this.resetErrorBoundary}},c)}};function oC(){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 Ci=I(W(),1);var To=I(W(),1),wv=I(q(),1),sC={collection:void 0,manifest:void 0,range:void 0,canvas:void 0,annotation:void 0,annotationPage:void 0},Ns=To.default.createContext(sC),qt=()=>(0,To.useContext)(Ns);function Yt({value:e,children:t}){let i=qt(),n=(0,To.useMemo)(()=>({...i,...e}),[e,i]);return(0,wv.jsx)(Ns.Provider,{value:n,children:t})}var Ou=I(W(),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)(),bv=dt(du)(),Cv=dt(hu)(),Pv=dt(pu)(),Ev=dt(fu)(),Av=dt(Bs)(),Tv=dt(mu)(),Iv=dt(Ds)(),Rv=dt(gu)(),_v=dt(yu)(),Or={importEntities:vu,modifyEntityField:bv,reorderEntityField:Cv,addReference:Pv,removeReference:Ev,updateReference:Av,addMetadata:Tv,removeMetadata:Rv,updateMetadata:Iv,reorderMetadata:_v},xu="@iiif/ADD_MAPPING",Su="@iiif/ADD_MAPPINGS",wh=dt(xu)(),bh=dt(Su)();var Io="RESOURCE_ERROR",js="RESOURCE_LOADING",Ro="RESOURCE_READY",wu="@iiif/REQUEST_RESOURCE",bu="@iiif/REQUEST_ERROR",Cu="@iiif/REQUEST_MISMATCH",Pu="@iiif/REQUEST_COMPLETE",Eu="@iiif/REQUEST_OFFLINE_RESOURCE",Ch=dt(wu)(),Vs=dt(bu)(),Ph=dt(Cu)(),Eh=dt(Pu)(),aC=dt(Eu)();var _o="@iiif/BATCH",Au="@iiif/BATCH_IMPORT",Mo=dt(_o)(),lC=dt(Au)();var uC="http://library.stanford.edu/iiif/image-api/compliance.html#level0",Mv="http://library.stanford.edu/iiif/image-api/compliance.html#level1",Ov="http://library.stanford.edu/iiif/image-api/compliance.html#level2",cC="http://library.stanford.edu/iiif/image-api/conformance.html#level0",kv="http://library.stanford.edu/iiif/image-api/conformance.html#level1",Lv="http://library.stanford.edu/iiif/image-api/conformance.html#level2",dC="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level0",zv="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level1",Fv="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2",hC="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level0",Nv="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level1",Bv="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level2",pC="http://iiif.io/api/image/1/level0.json",fC="http://iiif.io/api/image/1/profiles/level0.json",Dv="http://iiif.io/api/image/1/level1.json",jv="http://iiif.io/api/image/1/profiles/level1.json",Vv="http://iiif.io/api/image/1/level2.json",Uv="http://iiif.io/api/image/1/profiles/level2.json",mC="http://iiif.io/api/image/2/level0.json",gC="http://iiif.io/api/image/2/profiles/level0.json",Hv="http://iiif.io/api/image/2/level1.json",Wv="http://iiif.io/api/image/2/profiles/level1.json",qv="http://iiif.io/api/image/2/level2.json",Qv="http://iiif.io/api/image/2/profiles/level2.json",yC="level0",$v="level1",Gv="level2",vC="http://iiif.io/api/image/2/level0",Yv="http://iiif.io/api/image/2/level1",Xv="http://iiif.io/api/image/2/level2",Ah=[Xv,Ov,Lv,Fv,Bv,Vv,Uv,qv,Qv,Gv],LI=[...Ah,Yv,Mv,kv,zv,Nv,Dv,jv,Hv,Wv,$v],xC=[vC,Yv,Xv,uC,Mv,Ov,cC,kv,Lv,dC,zv,Fv,hC,Nv,Bv,pC,fC,Dv,jv,Vv,Uv,mC,gC,Hv,Wv,qv,Qv,yC,$v,Gv],Kv=xC;function Ki(e){for(let t in e)(typeof e[t]>"u"||e[t]===null)&&delete e[t];return e}function nr(e){return Array.isArray(e)?e:e?[e]:[]}var SC=Object.defineProperty,wC=(e,t,i)=>t in e?SC(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,wn=(e,t,i)=>(wC(e,typeof t!="symbol"?t+"":t,i),i);var Zv=["sc:Collection","sc:Manifest","sc:Canvas","sc:AnnotationList","oa:Annotation","sc:Range","sc:Layer","sc:Sequence","oa:Choice","Service","ContentResource"];function bC(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=Zv.indexOf(e["@type"]);if(t!==-1)return Zv[t]}if(e.profile)return"Service";if(e.format||e["@type"])return"ContentResource";throw new Error("Resource type is not known")}var CC=class i0{constructor(t,i={}){wn(this,"traversals"),wn(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 i0({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(bC(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)}},PC="http://library.stanford.edu/iiif/image-api/compliance.html#level1",EC="http://library.stanford.edu/iiif/image-api/compliance.html#level2",AC="http://library.stanford.edu/iiif/image-api/conformance.html#level1",TC="http://library.stanford.edu/iiif/image-api/conformance.html#level2",IC="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level1",RC="http://library.stanford.edu/iiif/image-api/1.1/compliance.html#level2",_C="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level1",MC="http://library.stanford.edu/iiif/image-api/1.1/conformance.html#level2",OC="http://iiif.io/api/image/1/level1.json",kC="http://iiif.io/api/image/1/profiles/level1.json",LC="http://iiif.io/api/image/1/level2.json",zC="http://iiif.io/api/image/1/profiles/level2.json",FC="http://iiif.io/api/image/2/level1.json",NC="http://iiif.io/api/image/2/profiles/level1.json",BC="http://iiif.io/api/image/2/level2.json",DC="http://iiif.io/api/image/2/profiles/level2.json",jC="level1",VC="level2",UC="http://iiif.io/api/image/2/level1",HC="http://iiif.io/api/image/2/level2",WC=[UC,HC,PC,EC,AC,TC,IC,RC,_C,MC,OC,kC,LC,zC,FC,NC,BC,DC,jC,VC],Th={attributionLabel:"Attribution",lang:"none",providerId:"http://example.org/provider",providerName:"Unknown"};function qC(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=qC(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 n0(e){if(Array.isArray(e))return n0(e.find(t=>typeof t=="string"));if(Ah.indexOf(e)!==-1)return"level2";if(WC.indexOf(e)!==-1)return"level1";if(Kv.indexOf(e)!==-1)return"level0";if(typeof e=="string")return e}function QC(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 $C(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 Jv(e){for(let t of["sc","oa","dcterms","dctypes","iiif"])if(e.startsWith(`${t}:`))return e.slice(t.length+1);return e}var GC=["Collection","Manifest","Annotation","AnnotationPage","Range","Service"];function Rh(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=$C(n);if(a)return a}if(o){let a=QC(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&&GC.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 YC=/http(s)?:\/\/(creativecommons.org|rightsstatements.org)[^"'\\<\n]+/gm;function XC(e){let t=e.match(YC);return t?t[0]:e}function KC(e,t="Rights/License",i="none"){let n=null,o=[],a=Array.isArray(e)?e:[e];for(let l of a){let c=l?XC(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 ZC=["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 JC(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"),ZC.indexOf(n)===-1&&i.push(n);if(t.length)return i.length===1?i[0]:i}}function eP(e){return e?e.map(t=>({label:kr(t.label),value:kr(t.value)})):[]}var e0=0;function r0(e,t){let i=encodeURI(e.id||e["@id"]||"").trim();return i&&t?`${i}/${t}`:i||(e0++,`http://example.org/${e["@type"]}${t?`/${t}`:""}/${e0}`)}function Ln(e){let t=[...e.behavior||[]];e.viewingHint&&t.push(e.viewingHint);let i;return Array.isArray(e.motivation)?i=e.motivation.map(Jv):e.motivation&&(i=Jv(e.motivation)),{"@context":e["@context"]?JC(e["@context"]):void 0,id:(e["@id"]||r0(e)).trim(),type:Rh(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 zn(e){let[t,i]=KC(e.license),n=[...e.metadata?eP(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:tP(e.thumbnail)}}function tP(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 iP(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:Rh(n)});return i.length?i:void 0}function rr(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:iP(e),rendering:e.rendering,seeAlso:e.seeAlso,start:e.startCanvas,service:e.service?nr(e.service):void 0,supplementary:i?[i]:void 0}}function nP(e){return{chars:e.chars,format:e.format?e.format:void 0,language:e.language}}function rP(e){return Ki({...Ln(e),...zn(e),...rr(e),items:e.members})}function oP(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=Ln(e);return i.length&&(o.behavior?o.behavior.push(...i):o.behavior=i),Ki({...o,...zn(e),...rr(e),start:n,items:t,structures:sP(e.structures)})}function sP(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 aP(e){return Ki({...Ln(e),...zn(e),...rr(e),annotations:e.otherContent&&e.otherContent.length?e.otherContent:void 0,items:e.images&&e.images.length?[{id:r0(e,"annotation-page"),type:"AnnotationPage",items:e.images}]:void 0})}function lP(e){return Ki({...Ln(e),...zn(e),...rr(e),items:e.resources&&e.resources.length?e.resources:void 0})}function uP(e){return!e.canvases||e.canvases.length===0?{canvases:[],behavior:[]}:{canvases:e.canvases,behavior:e.viewingHint?[e.viewingHint]:[],startCanvas:e.startCanvas}}function cP(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:Ih(i.selector)}}else return encodeURI(i["@id"]).trim()}return Ki({...Ln(e),...zn(e),...rr(e),target:t(e.on),body:Array.isArray(e.resource)?e.resource.map(t0):t0(e.resource)})}function t0(e){return e.type==="Choice"?e:o0(e)}function o0(e){let t=e;return Ki({...Ln(t),...zn(t),...rr(t),...nP(t)})}function dP(e){let t=[];return e.default&&e.default!=="rdf:nil"&&t.push(e.default),e.item&&e.item!=="rdf:nil"&&t.push(...e.item),Ki({...Ln(e),...zn(e),items:t})}function hP(e){return Ki({...Ln(e),...zn(e),...rr(e),items:e.members})}function pP(e){let{"@id":t,"@type":i,"@context":n,profile:o,...a}=e,l={};return t&&(l["@id"]=t),l["@type"]=Rh(e),l["@type"]==="unknown"&&(n&&n.length&&(l["@context"]=n),l["@type"]="Service"),o&&(l.profile=n0(o)),Ki({...l,...a})}function fP(e){return Ki({...Ln(e),...zn(e),...rr(e)})}var mP=new CC({collection:[rP],manifest:[oP],canvas:[aP],annotationList:[lP],sequence:[uP],annotation:[cP],contentResource:[o0],choice:[dP],range:[hP],service:[pP],layer:[fP]});function s0(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"?mP.traverseUnknown(e):e}function Ih(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[Ih(e.default),...(Array.isArray(e.item)?e.item:[e.item]).map(Ih)];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 Zi(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 a0(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 l0{constructor(t,i={}){wn(this,"traversals"),wn(this,"options"),wn(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))),wn(this,"_traverseCanvas",Tu(this.traverseCanvasItems.bind(this),this.traverseLinking.bind(this),this.traverseDescriptive.bind(this),this.traverseLinkedCanvases.bind(this),this.traverseInlineAnnotationPages.bind(this))),wn(this,"_traverseAnnotationPage",Tu(this.traverseAnnotationPageItems.bind(this),this.traverseLinking.bind(this),this.traverseDescriptive.bind(this))),wn(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 l0({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=nr(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=nr(t.service).map(i=>this.traverseService(i))),t.services&&(t.services=nr(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&&(Zi(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=nr(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))),Zi(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):Zi(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=nr(n.service).map(o=>this.traverseService(o))),this.traverseType(n,{parent:i},this.traversals.service)}traverseUnknown(t,{parent:i,typeHint:n}={}){let o=a0(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(Zi(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 ko={},ft="iiif-parser:hasPart",wi="iiif-parser:partOf",Lo="iiif-parser:isExternal",Bi="__$UNSET$__",zh="__$UNWRAP$__",de=[];Object.freeze(de);Object.freeze(ko);function c0(e){if(e===ko||Object.keys(e).length===0)return!0;for(let t in e)return!1;return!0}function Fo(e,t){if(t&&t["@explicit"]){let i={},n=Object.keys(t);for(let o of n)o===wi||o==="@explicit"||(c0(t[o])?i[o]=e[o]:i[o]=t[o]);return i}return e}function Fh(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 Fh(e,{id:n.id},i);if(l&&l[ft]){let c=l[ft].find(p=>i?p[wi]===i.id:p[wi]===l.id);return[Fo(l,c),l]}return[l,l]}var d0={id:"https://iiif-parser/annotation-page",type:"AnnotationPage",behavior:de,label:null,thumbnail:de,summary:null,requiredStatement:null,metadata:de,rights:null,provider:de,items:de,seeAlso:de,homepage:de,rendering:de,service:de},h0={id:"https://iiif-parser/empty-canvas",type:"Canvas",label:null,behavior:de,thumbnail:de,accompanyingCanvas:null,placeholderCanvas:null,summary:null,requiredStatement:null,metadata:de,rights:null,navDate:null,provider:de,items:de,annotations:de,seeAlso:de,homepage:de,partOf:de,rendering:de,service:de,duration:0,height:0,width:0},p0={id:"https://iiif-parser/empty-collection",type:"Collection",label:null,viewingDirection:"left-to-right",behavior:de,thumbnail:de,accompanyingCanvas:null,placeholderCanvas:null,summary:null,requiredStatement:null,metadata:de,rights:null,navDate:null,provider:de,items:de,annotations:de,seeAlso:de,homepage:de,partOf:de,rendering:de,service:de,services:de},f0={id:"https://iiif-parser/empty-manifest",type:"Manifest",annotations:de,behavior:de,homepage:de,items:de,label:null,metadata:de,navDate:null,provider:de,partOf:de,accompanyingCanvas:null,placeholderCanvas:null,rendering:de,requiredStatement:null,rights:null,seeAlso:de,service:de,services:de,start:null,structures:de,summary:null,thumbnail:de,viewingDirection:"left-to-right"},m0={id:"https://iiif-parser/empty-canvas",type:"Range",label:null,behavior:de,thumbnail:de,accompanyingCanvas:null,placeholderCanvas:null,summary:null,requiredStatement:null,metadata:de,rights:null,navDate:null,provider:de,items:de,annotations:de,seeAlso:de,homepage:de,partOf:de,rendering:de,service:de,start:null,supplementary:null,viewingDirection:"left-to-right"},g0={id:"https://iiif-parser/empty-agent",type:"Agent",label:{},logo:de,seeAlso:de,homepage:de},y0={id:"https://iiif-parser/empty-service",type:"UnknownService"};function kh(e,t={}){if(Array.isArray(e))return kh(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 kh(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 v0(){return{Collection:{},Manifest:{},Canvas:{},AnnotationPage:{},AnnotationCollection:{},Annotation:{},ContentResource:{},Range:{},Service:{},Selector:{},Agent:{}}}function x0(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 gP(e,t){return(i,n)=>{let o=e[i]?e[i]:{};return(a,l)=>{let c=x0(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 Ru(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]=Ru(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!==ft&&m!=="id"&&m!=="type"),c={},p={};for(let[m,f]of Object.entries(t)){if(m===ft||m==="id"||m==="type")continue;let y=n[m];y===f?a.push(m):y===de||!y?(o.push(m),n[m]=f):(y&&f&&(c[m]=y,p[m]=f),n[m]=Ru(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[ft]&&n[ft].length){let y=!(n[ft]||[]).find(b=>b["@explicit"]),S=o.length>0||a.length!==l.length;if(y&&S)for(let b of n[ft]){let v={...b},x=Object.keys(c);if(v){v["@explicit"]=!0;for(let A of l)A!==ft&&(v[A]=ko);for(let A of x)v[A]=c[A]}m.push(v)}else m.push(...n[ft]);if(S){let b=Object.keys(p);f["@explicit"]=!0;for(let v of o)f[v]=ko;for(let v of a)f[v]=ko;for(let v of b)f[v]=p[v]}}f.id=n.id,f.type=n.type,m.push(f),n[ft]=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 Ru({...e},t,i)}function yP(e){return(t,i)=>n=>{let{id:o,type:a}=x0(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 vP(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({},y0,t)}function xP(e){return t=>{e.Service=e.Service?e.Service:{};let i=t.id||t["@id"],n=vP(t);return n&&n.id&&(e.Service[n.id]?e.Service[i]=_u(e.Service[i],n):e.Service[i]=n),t}}function SP(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 Oh(e){return t=>typeof t=="string"?{id:t,type:e}:t.id?t.type?t:{type:e,...t}:{id:`vault://${SP(t)}`,type:e,...t}}function Oo(e){return t=>({...e,...t})}function Us(e){return Array.isArray(e)?e:[e]}function wP(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 S0(e,{typeHint:t,partOfTypeHint:i}={}){if(typeof e=="string"&&(e={id:e,type:t||"unknown"}),Zi(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 bP(e){let t=Object.assign({},e);return e&&e.items&&(t.items=e.items.map(i=>typeof i=="string"||i.type==="Canvas"?S0(i):i)),t}function CP(e){let t=Object.assign({},e);return t.start?(t.start=S0(t.start,{typeHint:"Canvas"}),t):e}function PP(e){let t=Object.assign({},e);return t.target?(t.target=kh(t.target,{typeHint:"Canvas"}),t):e}function w0(e){return e}function Iu(e){return typeof e.items>"u"&&(e[Lo]=!0),e}function Nh(e){let t=s0(e),i=v0(),n={},o=gP(i,t),a=yP(n),l=new Mh({collection:[Iu,Oo(p0),a("Collection"),o("Collection")],manifest:[Iu,Oo(f0),CP,a("Manifest"),o("Manifest")],canvas:[Oo(h0),a("Canvas"),o("Canvas")],annotationPage:[Iu,Oh("AnnotationPage"),Oo(d0),a("AnnotationPage"),o("AnnotationPage")],annotation:[Oh("Annotation"),wP,PP,a("Annotation"),o("Annotation")],contentResource:[Oh("ContentResource"),a("ContentResource"),o("ContentResource")],range:[Oo(m0),bP,a("Range","Canvas"),o("Range","Canvas")],agent:[Oo(g0),a("Agent"),o("Agent")],specificResource:[w0],service:[xP(i)]}).traverseUnknown(t);return{entities:i,resource:l,mapping:n}}function b0(e){let t={};for(let[i,n]of e){if(i===zh&&n!==Bi)return n;n!==Bi&&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 Bi;if(l>20)throw new Error("Circular reference: "+o.id+" "+o.type);let[p,m]=Fh(e,o.type?o:o.id,a)||(o.id&&o.type?o:null);if(!p)return Bi;let f=c(p,e,{parent:a,isTopLevel:t.id===o.id,fullResource:m}),y=f.next();for(;!y.done;){let S=y.value,b=Bi;if(S)if(Array.isArray(S)){let v=[];for(let x of S)v.push(n(x,o,l+1));b=v}else b=n(S,o,l+1);y=f.next(b)}return y.value===Bi?Bi:b0(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 C0(e){return Array.isArray(e)?e.map(t=>C0(t)):typeof e=="string"?e:e.type&&e.type==="Canvas"?e.id:e}function ar(e,t=!1){if(e)return e.length>1&&!t?e:e[0]||void 0}function EP(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 Lr(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*zr(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",ar(yield e.thumbnail)],["navDate",e.navDate],["logo",t?ar(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",ar(yield e.seeAlso)],["service",ar((e.service||[]).map(EP))],["rendering",ar(yield e.rendering)],["startCanvas",t?t.id:void 0]]}function AP(e){return e.type==="SpecificResource"}function TP(e){return e&&e.type==="FragmentSelector"}function IP(e){if(e&&AP(e)){let t=e.id,i=e.selector?Array.isArray(e.selector)?e.selector[0]:e.selector:void 0;return TP(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"]]:[],...Lr(e,"sc:Manifest"),...yield*zr(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[...Lr(e,"sc:Canvas"),...yield*zr(e),...yield*Hs(e),["images",t?[t.resources]:void 0],["annotations",e.annotations&&e.annotations.length?ar(yield e.annotations):void 0]]},AnnotationPage:function*(e){return[...Lr(e,"sc:AnnotationList"),...yield*zr(e),["resources",e.items&&e.items.length?ar(yield e.items):void 0]]},Annotation:function*(e){return[["@id",e.id],["@type","oa:Annotation"],["motivation","sc:painting"],["on",C0(e.target)],["resource",ar(yield e.body,!0)]]},ContentResource:function*(e){switch(e.type){case"Image":return[...Lr(e,"dctypes:Image"),...yield*zr(e),...yield*Hs(e)];case"Text":case"Dataset":default:return[...Lr(e,void 0),...yield*zr(e)]}},AnnotationCollection:function*(e){return[["@id",e.id],["@type","sc:Layer"],["label",Nr(e.label)]]},Collection:function*(e){return[...Lr(e,"sc:Collection"),...yield*zr(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":IP(n),"@type":o.type,label:a?a.label:void 0,within:e.id}),o.type==="Canvas"&&i.push(o.id)}}return[...Lr(e,"sc:Range"),...yield*zr(e),...yield*Hs(e),["canvases",i.length===t.length?i:void 0],["members",i.length!==t.length?t:void 0]]}};function Fr(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],[ft,Bi]]}function wt(e){if(e===Bi||!e||e.length===0)return;let t=e.filter(i=>i!==Bi);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 u0(e){if(Array.isArray(e)||(e=e?[e]:[]),!(!e||e.length===0))return e.map(P0)}function*or(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*sr(e){return[["seeAlso",wt(yield e.seeAlso)],["service",wt(u0(e.service))],["services",wt(u0(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"],...Fr(e),...yield*or(e),...yield*sr(e),["items",yield e.items],["structures",wt(yield e.structures)],["annotations",wt(yield e.annotations)],["navPlace",e.navPlace]]:[...Fr(e),...yield*or(e)]},Canvas:function*(e){return[...Fr(e),...yield*or(e),...yield*sr(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*sr(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!==ft&&n!==wi&&n!==Lo),i=yield e.items;return[["id",e.id?.startsWith("vault://")?void 0:e.id],...t,...yield*sr(e),["items",i.length||e[Lo]===!1?i:Bi]]},Service:function*(e){return[[zh,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,zo(o,{allowString:!0,allowSourceString:!0,allowedStringType:"Canvas"})]:[n,Array.isArray(o)?wt(o):o]).filter(([n])=>n!=="body"&&n!==ft&&n!==Lo),i;if(Array.isArray(e.body)){let n=[];for(let o of e.body)if(o&&Zi(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&&Zi(e.body)?(i={...e.body},i.source=yield e.body.source):i=yield e.body;return[...t,...yield*or(e),...yield*sr(e),["body",i.length===1?i[0]:i]]},ContentResource:function*(e){return RP([...Fr(e),...yield*or(e),...yield*sr(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"],...Fr(e),...yield*or(e),...yield*sr(e),["items",wt(yield e.items)],["navPlace",e.navPlace]]:[...Fr(e),...yield*or(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[...Fr(e),...yield*or(e),...yield*sr(e),["items",t],["annotations",wt(yield e.annotations)],["navPlace",e.navPlace]]}};function RP(e,t){let i=Object.keys(t),n=e.map(([o])=>o);for(let o of i)o===ft||o===Lo||n.indexOf(o)===-1&&typeof t[o]<"u"&&e.push([o,t[o]]);return e}var _P=(e,t)=>{let{entities:i,resource:n,mapping:o}=Nh(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(Ph({requestId:e,actualId:n.id}))),a.push(Eh({id:e})),a},E0=Number.isNaN||function(t){return typeof t=="number"&&t!==t};function MP(e,t){return!!(e===t||E0(e)&&E0(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(!MP(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[ft]){let l=a[ft].find(c=>i?c[wi]===i.id:c[wi]===a.id);return Fo(a,l)}return a}function OP(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===Ro){let m=Vh(l,n);if(m)return m}switch(c.loadingState){case Io:break;case js:return(async()=>{let m,f=!1;try{let y=await Promise.race([new Promise((S,b)=>{f||(m=a.subscribe(()=>{let v=a.getState();if(v.iiif.requests[n].loadingState===Io){b();return}if(v.iiif.requests[n].loadingState===Ro){let x=Vh(v,n);x?S(x):b()}}))}),new Promise((S,b)=>setTimeout(()=>{f=!0,b()},i*60*1e3))]);if(m&&m(),y)return y}catch{m&&m()}})()}}e.dispatch(Ch({id:n}));let p=m=>{if(!m)return;!m.id&&!m["@id"]&&(m["@type"]&&(m["@id"]=n),m.id=n);let f=_P(n,m);return e.dispatch(Mo({actions:f})),Vh(a.getState(),n)};try{let m=t(n,o);return OP(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 T0={},A0=e=>{let t,i=new Set,n=(f,y)=>{let S=typeof f=="function"?f(t):f;if(!Object.is(S,t)){let b=t;t=y??(typeof S!="object"||S===null)?S:Object.assign({},t,S),i.forEach(v=>v(t,b))}},o=()=>t,p={setState:n,getState:o,getInitialState:()=>m,subscribe:f=>(i.add(f),()=>i.delete(f)),destroy:()=>{(T0.env?T0.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},I0=e=>e?A0(e):A0;var qh="@iiif/SET_META_VALUE",Qh="@iiif/SET_META_VALUE_DYNAMIC",$h="@iiif/UNSET_META_VALUE",kP=dt(qh)(),LP=dt(Qh)(),zP=dt($h)(),Gh={setMetaValue:kP,setMetaValueDynamic:LP,unsetMetaValue:zP};var No={},FP=(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}),NP=FP,Zh=new Map,Mu=e=>{let t=Zh.get(e);return t?Object.fromEntries(Object.entries(t.stores).map(([i,n])=>[i,n.getState()])):{}},BP=(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}},DP=(e,t={})=>(i,n,o)=>{let{enabled:a,anonymousActionType:l,store:c,...p}=t,m;try{m=(a??(No.env?No.env.MODE:void 0)!=="production")&&window.__REDUX_DEVTOOLS_EXTENSION__}catch{}if(!m)return(No.env?No.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}=BP(c,m,p),S=!0;o.setState=(x,A,P)=>{let T=i(x,A);if(!S)return T;let E=P===void 0?{type:l||"anonymous"}:typeof P=="string"?{type:P}:P;return c===void 0?(f?.send(E,n()),T):(f?.send({...E,type:`${c}/${E.type}`},{...Mu(p.name),[c]:o.getState()}),T)};let b=(...x)=>{let A=S;S=!1,i(...x),S=A},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,A])=>[x,x===y.store?v:A.getState()])))),o.dispatchFromDevtools&&typeof o.dispatch=="function"){let x=!1,A=o.dispatch;o.dispatch=(...P)=>{(No.env?No.env.MODE:void 0)!=="production"&&P[0].type==="__setState"&&!x&&(console.warn('[zustand devtools middleware] "__setState" action type is reserved to set state from the devtools. Avoid using it.'),x=!0),A(...P)}}return f.subscribe(x=>{var A;switch(x.type){case"ACTION":if(typeof x.payload!="string"){console.error("[zustand devtools middleware] Unsupported action format");return}return Yh(x.payload,P=>{if(P.type==="__setState"){if(c===void 0){b(P.state);return}Object.keys(P.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=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 Be(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=Be(),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),Y=Ex(M,k,O,K);return p===0&&Y>0&&(Y-=ea),p===1&&Y<0&&(Y+=ea),[N,D,U,Y]},_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 Y=Math.max(Math.ceil(U),1);K/=Y;for(var te=0;te<Y;te++)v.push(RE(O,K)),O+=K;return v.map(function(ke){var ye=Rp(ke[0],l,c,E,x,M,k),_e=ye.x,ve=ye.y,We=Rp(ke[1],l,c,E,x,M,k),Ye=We.x,ft=We.y,De=Rp(ke[2],l,c,E,x,M,k),H=De.x,ge=De.y;return{x1:_e,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=Be(),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=Be(),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=Be(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 x=Ir(a);x[0]&&(l=i(x[0],e))}let c={type:"BoxSelector",spatial:{x:0,y:0,width:Number(e.width),height:Number(e.height)}},[p,m]=oa(e,o.target),f=e.id?.split("?")[0]||"";if(!(m.id===e.id||decodeURIComponent(m.id||"")===(e.id||"")||m.id===f||decodeURIComponent(m.id||"")===f))continue;let y=o.resource.width&&o.resource.height?{type:"BoxSelector",spatial:{x:0,y:0,width:o.resource.width,height:o.resource.height}}:void 0,S=o.resource.type==="SpecificResource"?Ot(o.resource):null;if(o.selector){let x=Ot({type:"SpecificResource",source:o.resource,selector:o.selector});x&&(S=x)}let P=S&&S.selector&&(S.selector.type==="BoxSelector"||S.selector.type==="TemporalBoxSelector")?{type:"BoxSelector",spatial:{x:S.selector.spatial.x,y:S.selector.spatial.y,width:S.selector.spatial.width,height:S.selector.spatial.height}}:void 0;l&&!l.id&&(l.id=l["@id"]);let v={id:a.id,type:"Image",annotationId:o.annotationId,width:Number(p||P?a.width:e.width),height:Number(p||P?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:P||{type:"BoxSelector",spatial:{x:0,y:0,width:Number(e.width),height:Number(e.height)}}};n.push(v)}return{type:"images",image:n[0],images:n,choice:t.choice}}function 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=Be(),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=Be(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=>{if(n.current){let T=typeof C=="function"?C(n.current.currentTime):C;n.current.currentTime=Math.max(0,Math.min(T,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=Be();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:`
74
+ `);let T=P.state[c];if(T==null)return;JSON.stringify(o.getState())!==JSON.stringify(T)&&b(T);return}o.dispatchFromDevtools&&typeof o.dispatch=="function"&&o.dispatch(P)});case"DISPATCH":switch(x.payload.type){case"RESET":return b(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 Yh(x.state,P=>{if(c===void 0){b(P),f?.init(o.getState());return}b(P[c]),f?.init(Mu(p.name))});case"JUMP_TO_STATE":case"JUMP_TO_ACTION":return Yh(x.state,P=>{if(c===void 0){b(P);return}JSON.stringify(o.getState())!==JSON.stringify(P[c])&&b(P[c])});case"IMPORT_STATE":{let{nextLiftedState:P}=x.payload,T=(A=P.computedStates.slice(-1)[0])==null?void 0:A.state;if(!T)return;b(c===void 0?T:T[c]),f?.send(null,P);return}case"PAUSE_RECORDING":return S=!S}return}}),v},jP=DP,Yh=(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)},VP=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 b=l(S);if(!f(y,b)){let v=y;c(y=b,v)}},p?.fireImmediately&&c(y,y)}return o(m)},e(t,i,n)},UP=VP,HP=(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 WP(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 Kh(e,t){return typeof e>"u"?t:e}var qP=(e=Wh(),t)=>{let i=(n,o)=>({...e,[pe(t).type]:{...e[pe(t).type],[pe(t).id]:{...n,...o}}});switch(t.type){case du:{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 hu:{if(!Xh(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 cu:{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]?WP(e[a][f],l[f]):l[f];p&&(o[a]=c)}}return o}case pu:{if(!Xh(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(Kh(pe(t).index,o.length+1),0,pe(t).reference),i(n,{[pe(t).key]:o})}case Bs:case fu:{if(!Xh(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=Kh(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===Bs?o.splice(a,1,pe(t).reference):o.splice(a,1),i(n,{[pe(t).key]:o}))}case mu:{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(Kh(t.payload.beforeIndex,o.length+1),0,{label:a.label,value:a.label}),i(n,{metadata:o})}case yu:{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 Ds:case gu:{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===Ds?o.splice(a,1,{label:pe(t).label,value:pe(t).value}):o.splice(a,1),i(n,{metadata:o}))}default:return e}},QP=(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 Cu: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:Io,error:t.payload.message}};case Pu:return{...e,[t.payload.id]:{...e[t.payload.id]||{},loadingState:Ro,error:void 0}}}return e},$P=(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 R0(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 GP(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 YP=R0({mapping:HP,entities:qP,requests:QP,meta:$P});function XP(){return{iiif:{entities:Wh(),meta:{},mapping:{},requests:{}}}}function _0(e={}){let{enableDevtools:t=!1,iiifStoreName:i="iiif",defaultState:n=XP(),customReducers:o={}}=e,a=GP(R0({[i]:YP,...o}));return I0(UP(jP(NP(a,n),{enabled:t})))}function KP(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[Dr][e]>"u")return;let a=t[Dr][e];if(!a)return a;let l=i.get(t[Dr][e],{parent:this.id?{id:this.id,type:this.type}:void 0});return o.has(l)||(o.clear(),o.set(l,jr(l,i))),o.get(l)},set(a){t[Dr][e]!==a&&(this[Br]?i.modifyEntityField({id:this.id,type:this.type},e,k0(a)):this[Dr][e]=a)}})}var Dr=Symbol.for("_refs_"),Br=Symbol.for("_reactive_"),Bo=Symbol.for("_defined_"),M0=Symbol.for("_parent_");function ZP(e,t=!1,i){let n={id:"",type:"unknown",[Bo]:[],[Dr]:{},[M0]:i||null,[Br]:null,is(o){return typeof o=="string"?this.id===o:o.id?o.id===this.id:!1},reactive(){if(!this[Br])return this[Br]=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[Dr][a]=o[a]:this[a]=o[a]}},unreactive(){this[Br]&&(this[Br](),this[Br]=null)},unwrap(){if(!this.id)throw new Error("Invalid object");let o=this[M0];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 JP(e){return!!e[Bo]}function k0(e){return Array.isArray(e)?e.map(t=>k0(t)):!e||!e.type?e:{id:e.id,type:e.type}}function jr(e,t,i=!1,n){if(Array.isArray(e))return e.map(c=>jr(c,t,i));if(!e||!e.type||!e.id)return e;let o=ZP(t,i),a=Object.create(o),l=Object.assign(a,e);return i&&l.reactive(),l}function O0(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||_0({customReducers:this.options.reducers,defaultState:this.options.defaultState,enableDevtools:this.options.enableDevtools}),this.emitter=KP(),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(Or.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(Zi(e)&&!i.preserveSpecificResources&&(e=e.source),typeof e=="string"){let f=O0(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=O0(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[ft]){let f=m[ft].find(y=>o?y[wi]===o:y[wi]===m.id);return Fo(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 jr(this.get(e,t,o),this,n)}async loadObject(e,t){return jr(await this.load(e,t),this)}async loadManifestObject(e,t){return jr(await this.loadManifest(e,t),this)}async loadCollectionObject(e,t){return jr(await this.loadCollection(e,t),this)}wrapObject(e){return jr(this.get(e,{skipSelfReturn:!1}),this)}isWrapped(e){return JP(e)}setMetaValue([e,t,i],n){this.dispatch(typeof n=="function"?Gh.setMetaValueDynamic({id:e,meta:t,key:i,updateValue:n}):Gh.setMetaValue({id:e,meta:t,key:i,value:n}))}};function L0(){return typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}function Ws(e){let t=L0();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=I(q(),1),lr=Ou.default.createContext({vault:null,setVaultInstance:e=>{}});function Vr({vault:e,vaultOptions:t,useGlobal:i,resources:n,children:o}){let[a,l]=(0,Ou.useState)(()=>e||(i?Ws(t):t?new Do(t):new Do));return(0,Jh.jsx)(lr.Provider,{value:{vault:a,setVaultInstance:l},children:(0,Jh.jsx)(Yt,{value:n||{},children:o})})}var px=I(W(),1),Du=I(W(),1);var z0=I(W(),1);function Ur(e){let t=(0,z0.useContext)(lr);return e||(t&&t.vault?t.vault:Ws())}var ur=I(W(),1);function qs(e,{noCache:t=!1}={}){let i=typeof e=="string"?e:e.id,n=Ur(),[o,a]=(0,ur.useState)(i),[l,c]=(0,ur.useState)(void 0),p=(0,ur.useMemo)(()=>n.get(i,{skipSelfReturn:!0})||void 0,[i,n]),[m,f]=(0,ur.useState)(p);return(0,ur.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 F0=I(q(),1);function tp({manifest:e,children:t}){return(0,F0.jsx)(Yt,{value:{manifest:e},children:t})}var N0=I(q(),1);function Di({canvas:e,children:t}){return(0,N0.jsx)(Yt,{value:{canvas:e},children:t})}var D0=I(W(),1),j0=I(W(),1);var B0=I(W(),1),Me=()=>{let{vault:e}=(0,B0.useContext)(lr);if(e===null)throw new Error("Vault not found. Ensure you have your provider set up correctly.");return e};var ku=I(W(),1);function Fe(e,t=[]){let i=Me(),[n,o]=(0,ku.useState)(()=>e(i.getState(),i));return(0,ku.useEffect)(()=>i.subscribe(a=>e(a,i),a=>{o(a)},!1),t),n}var Hr=j0.default.createContext([]);function Wr(){let e=(0,D0.useContext)(Hr);return Fe(t=>e.map(i=>t.iiif.entities.Canvas[i]).filter(Boolean),[e])}var V0=I(W(),1);function gt(e={},t=[]){let{id:i,selector:n}=e,o=qt(),a=Me(),l=i||o.manifest,c=Fe(p=>l?p.iiif.entities.Manifest[l]:void 0,[l]);return(0,V0.useMemo)(()=>{if(c)return n?n(c):c},[c,n,...t])}var U0=I(q(),1);function ip({range:e,children:t}){return(0,U0.jsx)(Yt,{value:{range:e},children:t})}function H0(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=H0(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 eE(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 tE(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,b]=zu(e,t);if(p)return S;let v=S.findIndex(x=>x.id===i);if(v===-1)return[];for(let x of b)if(x.includes(v))return x.map(A=>S[A]);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,b=!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&&(b=!0),y(),m.push([v]),y();continue}if(f.push(v),b){y(),b=!1;continue}f.length>1&&y()}return f.length&&y(),[p,m]}var Ji=I(W(),1);var W0=I(W(),1);function Qs(e={},t=[]){let{id:i,selector:n}=e,o=qt(),a=i||o.range,l=Fe(c=>a?c.iiif.entities.Range[a]:void 0,[a]);return(0,W0.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,Ji.useState)(void 0),c=o||n;if(!c)throw new Error("Nothing selected");let[p,m]=(0,Ji.useMemo)(()=>zu(i,c,{disablePaging:t}),[i,c,t]),f=(0,Ji.useRef)(m);if(f.current!==m){let A=f.current[a][0],P=m.findIndex(T=>T.includes(A));f.current=m,l(P)}let y=(0,Ji.useCallback)(x=>{let A=m.findIndex(P=>P.includes(x));l(A===-1?0:A)},[p,m]),S=(0,Ji.useCallback)(x=>{let A=p.findIndex(P=>P.id===x);A!==-1?y(A):l(0)},[p,m]),b=(0,Ji.useCallback)(()=>{l(x=>x>=m.length-1?x:x+1)},[m]),v=(0,Ji.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:b,previous:v}}var tn=I(W(),1);var Q0={},q0=e=>{let t,i=new Set,n=(f,y)=>{let S=typeof f=="function"?f(t):f;if(!Object.is(S,t)){let b=t;t=y??(typeof S!="object"||S===null)?S:Object.assign({},t,S),i.forEach(v=>v(t,b))}},o=()=>t,p={setState:n,getState:o,getInitialState:()=>m,subscribe:f=>(i.add(f),()=>i.delete(f)),destroy:()=>{(Q0.env?Q0.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},qr=e=>e?q0(e):q0;var nx=I(W(),1),rx=I(ex(),1),ix={},{useDebugValue:xE}=nx.default,{useSyncExternalStoreWithSelector:SE}=rx.default,tx=!1,wE=e=>e;function bi(e,t=wE,i){(ix.env?ix.env.MODE:void 0)!=="production"&&i&&!tx&&(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"),tx=!0);let n=SE(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,i);return xE(n),n}function bE(e){let t=e.service||e.services||[];for(let i of t)if(i.type==="AuthProbeService2")return!0;return!1}function en(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=()=>qr((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:en(i.id,t().authItems,o=>({...o,isPending:!0}))})),sp(i.service).then(()=>{Nu(n).then(o=>{let a=o.expiresIn,l=Date.now()+a*1e3;e(()=>({authItems:en(i.id,t().authItems,c=>({...c,isLoggedIn:!0,isPending:!1,session:{token:o.accessToken,expires:l}}))}))}).catch(o=>{e(()=>({authItems:en(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=${ox()}`,a=window.open(o);e(()=>({authItems:en(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:en(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");Nu(o).then(c=>{e(()=>({authItems:en(i.id,t().authItems,p=>({...p,isLoggedIn:!0,isPending:!1,session:{token:c.accessToken,expires:c.expiresIn}}))}))}).catch(c=>{e(()=>({authItems:en(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:en(i.id,t().authItems,c=>({...c,isPending:!0}))})),sp(a).then(()=>{Nu(o).then(c=>{e(()=>({authItems:en(i.id,t().authItems,p=>({...p,isLoggedIn:!0,isPending:!1,session:{token:c.accessToken,expires:c.expiresIn}}))}))}).catch(c=>{e(()=>({authItems:en(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:en(i.id,t().authItems,l=>({...l,instances:l.instances-1})),currentAuth:a}))}})),lp=(e,t)=>qr((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 Nu(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 ox(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=${ox()}`,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=I(W(),1);function sx(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=I(q(),1),Qr=(0,tn.createContext)(null),ax=(0,tn.createContext)(null);ax.displayName="CurrentAuth";var lx=(0,tn.createContext)(null);lx.displayName="AuthActions";function hp({children:e}){let t=(0,tn.useMemo)(()=>ap(),[]);return(0,$s.jsx)(Qr.Provider,{value:t,children:e})}function pp(){return!!(0,tn.useContext)(Qr)}function Uo(){let e=(0,tn.useContext)(Qr);if(!e)throw new Error("useAuthActions must be used within a AuthProvider");return e}function ux(){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 CE(){let e=Uo();return bi(e,t=>t)}function cx(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 PE(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 EE(e){let t=ux(),i=cx(e.service.id);return(0,tn.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]=sx(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)(EE,{service:f,probeId:c.id,children:p},f.id);return p}var Gs=I(W(),1);var AE=e=>e.id||e["@id"];function TE(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 dx=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?AE(t):void 0,n=null;return qr((o,a)=>({service:t,resources:[],lastQuery:{},loading:!1,error:!1,highlight:null,hasSearch:!!t,hasAutocomplete:t?!!TE(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=I(q(),1),Ho=(0,Gs.createContext)(null);Ho.displayName="Search";function hx(e){let t=mp();return e.store?(0,Bu.jsx)(Ho.Provider,{value:e.store,children:e.children}):(0,Bu.jsx)(IE,{service:t,children:e.children})}function IE({service:e,children:t}){let i=(0,Gs.useMemo)(()=>dx(e),[e]);return(0,Bu.jsx)(Ho.Provider,{value:i,children:t})}var di=I(q(),1),Ys=()=>{},Wo=(0,Du.createContext)({setCurrentCanvasId:Ys,setCurrentCanvasIndex:Ys,nextCanvas:Ys,previousCanvas:Ys,items:[],sequence:[],setSequenceIndex:Ys,currentSequenceIndex:0,hasNext:!1,hasPrevious:!1});function fx(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}),b=(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:b,children:(0,di.jsx)(Hr.Provider,{value:n,children:(0,di.jsx)(Di,{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=Ur(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)(fx,{...e,children:e.children});return(0,di.jsx)(Vr,{vault:t,children:(0,di.jsx)(tp,{manifest:i.id,children:(0,di.jsx)(hp,{children:(0,di.jsx)(hx,{children:e.rangeId?(0,di.jsx)(ip,{range:e.rangeId,children:n}):n})})})})}function Xs(){return(0,px.useContext)(Wo)}var mx=I(W(),1),ju=I(W(),1);function $r(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 yx=I(q(),1),gx=$r(),Gr=(0,ju.createContext)({emitter:gx});Gr.displayName="Events";function Ks(){return mx.default.useContext(Gr).emitter}function RE({emitter:e,children:t}){return(0,yx.jsx)(Gr.Provider,{value:(0,ju.useMemo)(()=>({emitter:e}),[e]),children:t})}var vx=I(W(),1),bn=I(q(),1),yp=vx.default.createContext({});function vp(){let e=(0,Ci.useContext)(yp),t=Object.keys(e),i={};for(let n of t)e[n].Provider&&(i[n]={value:(0,Ci.useContext)(e[n]),Provider:e[n].Provider});return i}function xx(e){let t=Object.keys(e),i=e.children;for(let n of t){if(n==="children")continue;let{value:o,Provider:a}=e[n];i=(0,bn.jsx)(a,{value:o,children:i})}return i}function _E(e){let t=(0,Ci.useContext)(yp),i=(0,Ci.useMemo)(()=>({...t,...e.providers}),[e.providers]);return(0,bn.jsx)(yp.Provider,{value:i,children:e.children})}function xp(){return{VaultContext:(0,Ci.useContext)(lr),ResourceContext:(0,Ci.useContext)(Ns),SimpleViewerReactContext:(0,Ci.useContext)(Wo),VisibleCanvasReactContext:(0,Ci.useContext)(Hr),AuthRContext:(0,Ci.useContext)(Qr),SearchReactContext:(0,Ci.useContext)(Ho),ReactEventContext:(0,Ci.useContext)(Gr)}}function Sp(e){return(0,bn.jsx)(Vr,{vault:e.bridge.VaultContext.vault||void 0,resources:e.bridge.ResourceContext,children:(0,bn.jsx)(Hr.Provider,{value:e.bridge.VisibleCanvasReactContext,children:(0,bn.jsx)(Wo.Provider,{value:e.bridge.SimpleViewerReactContext,children:(0,bn.jsx)(Gr.Provider,{value:e.bridge.ReactEventContext,children:(0,bn.jsx)(Qr.Provider,{value:e.bridge.AuthRContext,children:(0,bn.jsx)(Ho.Provider,{value:e.bridge.SearchReactContext,children:e.custom?(0,bn.jsx)(xx,{...e.custom,children:e.children}):e.children})})})})})})}var qo=I(W(),1);var Fn=I(W(),1);var Sx=I(W(),1);function wp(){let t=Me().getStore();return(0,Sx.useMemo)(()=>i=>t.dispatch(i),[t])}function wx(e){return typeof e!="string"&&e&&e.bindToVault}function bp(){let e=Me(),t=(0,Fn.useRef)([]),i=wp(),n=(0,Fn.useMemo)(()=>`vault://annotation-page/${new Date().getTime()}/${Math.round(Math.random()*1e9).toString(16)}`,[]);(0,Fn.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(Or.importEntities({entities:{AnnotationPage:{[c.id]:c}}}))},[n]);let o=Fe(c=>n&&c.iiif.entities.AnnotationPage[n]||null,[n]),a=(0,Fn.useCallback)((c,p)=>{if(n){if(wx(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(Or.addReference({id:n,type:"AnnotationPage",key:"items",reference:{id:c,type:"Annotation"},index:p})))}},[n]),l=(0,Fn.useCallback)(c=>{n&&(wx(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(Or.removeReference({id:n,type:"AnnotationPage",key:"items",reference:{id:c,type:"Annotation"}})))},[n]);return[o,{addAnnotation:a,removeAnnotation:l}]}var Cx=I(q(),1),bx=(0,qo.createContext)(null);function Cp(){let e=(0,qo.useContext)(bx);return[e.fullPage,{addAnnotation:e.addAnnotation,removeAnnotation:e.removeAnnotation}]}function Pp({children:e}){let[t,{addAnnotation:i,removeAnnotation:n}]=bp();return(0,Cx.jsx)(bx.Provider,{value:(0,qo.useMemo)(()=>({fullPage:t,addAnnotation:i,removeAnnotation:n}),[t]),children:e})}var Qo=I(q(),1);function Px({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=I(W(),1),$o=(0,Vu.createContext)(null);function Ep(){return(0,Vu.useContext)($o)}var Yr=I(W(),1),Ap=(0,Yr.createContext)(()=>{}),Tp=(0,Yr.createContext)(()=>{});function Pi(e,t,i,n,o=[]){let a=(0,Yr.useContext)(e==="portal"?Tp:Ap);(0,Yr.useEffect)(()=>(e!=="none"&&a(t,i,n),()=>{a(t,null)}),[t,e,a,...o])}var Go=I(W(),1);var Ex=I(W(),1);function je(e={},t=[]){let{id:i,selector:n}=e,o=qt(),a=i||o.canvas,l=Fe(c=>a?c.iiif.entities.Canvas[a]:void 0,[a]);return(0,Ex.useMemo)(()=>{if(l)return n?n(l):l},[l,n,...t])}var Ip=(0,Go.createContext)(()=>{});function Ax(e){let t=je(),i=(0,Go.useContext)(Ip);(0,Go.useEffect)(()=>t&&t.id?(i(t.id,e),()=>i(t.id,-1)):()=>{},[t,e])}var bt=I(q(),1);function Tx({children:e,errorFallback:t,outerContainerProps:i={},worldScale:n,...o}){let[a,l]=(0,Kt.useState)(),c=vp(),p=xp(),m=t||Px,[f,y]=(0,Kt.useState)({}),S=Object.entries(f),[b,v]=(0,Kt.useState)({}),x=Object.entries(b),[A,P]=(0,Kt.useState)({}),T=(0,Kt.useMemo)(()=>n||Math.max(...Object.values(A)),[A]),E=(0,Kt.useMemo)(()=>({maxOverZoom:T||1,...o.runtimeOptions||{}}),[T,o.runtimeOptions]),j=(0,Kt.useCallback)((M,O)=>{P($=>{if(O===-1){let{[M]:ee,...L}=$;return L}return{...$,[M]:O}})},[]),F=(0,Kt.useCallback)((M,O,$)=>{y(({[M]:ee,...L})=>O?{...L,[M]:{element:O,props:$}}:L)},[]),k=(0,Kt.useCallback)((M,O,$)=>{v(({[M]:ee,...L})=>O?{...L,[M]:{element:O,props:$}}:L)},[]);return(0,bt.jsxs)(uu,{resetKeys:[],fallbackRender:M=>(0,bt.jsx)(m,{...o,...M}),children:[(0,bt.jsx)(lv,{...o,containerProps:{style:{position:"relative"},...o.containerProps||{}},htmlChildren:(0,bt.jsx)(bt.Fragment,{children:S.map(([M,{element:O,props:$}])=>(0,bt.jsx)(Kt.default.Fragment,{children:(0,bt.jsx)(O,{...$||{}})},M))}),onCreated:M=>{l(M),o.onCreated&&o.onCreated(M)},runtimeOptions:E,children:(0,bt.jsx)($o.Provider,{value:a,children:(0,bt.jsx)(Ip.Provider,{value:j,children:(0,bt.jsx)(Ap.Provider,{value:F,children:(0,bt.jsx)(Tp.Provider,{value:k,children:(0,bt.jsx)(Sp,{bridge:p,custom:c,children:(0,bt.jsx)(Ao.Provider,{value:o.mode||"explore",children:(0,bt.jsx)(Pp,{children:e})})})})})})})}),(0,bt.jsx)("div",{children:x.map(([M,{element:O,props:$}])=>(0,bt.jsx)(Kt.default.Fragment,{children:(0,bt.jsx)(O,{...$||{}})},M))})]})}var Rp=I(W(),1);function Zs(e=kn){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,Rp.useMemo)(()=>Zs(i),[i]),o=Fe(()=>e&&e.id?i.getResourceMeta(e.id,"eventManager"):null,[e]);return(0,Rp.useMemo)(()=>e?n.getListenersAsProps(e,t):{},[o,e,i,t])}var Ix=I(W(),1);function Xr(e=kn){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,Ix.useMemo)(()=>Xr(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 Fx=I(W(),1);var zx=I(W(),1);var ME=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):[]}}}),OE=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})}}}),kE=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,_p=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}},LE=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}]},Rx=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)},zE=function(t,i,n,o,a,l,c,p,m,f,y,S){var b=Math.pow(a,2),v=Math.pow(l,2),x=Math.pow(y,2),A=Math.pow(S,2),P=b*v-b*A-v*x;P<0&&(P=0),P/=b*A+v*x,P=Math.sqrt(P)*(c===p?-1:1);var T=P*a/l*S,E=P*-l/a*y,j=f*T-m*E+(t+n)/2,F=m*T+f*E+(i+o)/2,k=(y-T)/a,M=(S-E)/l,O=(-y-T)/a,$=(-S-E)/l,ee=Rx(1,0,k,M),L=Rx(k,M,O,$);return p===0&&L>0&&(L-=ea),p===1&&L<0&&(L+=ea),[j,F,ee,L]},FE=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,b=S===void 0?0:S,v=[];if(l===0||c===0)return[];var x=Math.sin(m*ea/360),A=Math.cos(m*ea/360),P=A*(i-o)/2+x*(n-a)/2,T=-x*(i-o)/2+A*(n-a)/2;if(P===0&&T===0)return[];l=Math.abs(l),c=Math.abs(c);var E=Math.pow(P,2)/Math.pow(l,2)+Math.pow(T,2)/Math.pow(c,2);E>1&&(l*=Math.sqrt(E),c*=Math.sqrt(E));var j=zE(i,n,o,a,l,c,y,b,x,A,P,T),F=kE(j,4),k=F[0],M=F[1],O=F[2],$=F[3],ee=Math.abs($)/(ea/4);Math.abs(1-ee)<1e-7&&(ee=1);var L=Math.max(Math.ceil(ee),1);$/=L;for(var ie=0;ie<L;ie++)v.push(LE(O,$)),O+=$;return v.map(function(Oe){var Pe=_p(Oe[0],l,c,A,x,k,M),be=Pe.x,ye=Pe.y,Xe=_p(Oe[1],l,c,A,x,k,M),Ue=Xe.x,ht=Xe.y,Ne=_p(Oe[2],l,c,A,x,k,M),G=Ne.x,le=Ne.y;return{x1:be,y1:ye,x2:Ue,y2:ht,x:G,y:le}})},NE=FE,BE=lh(ME(),1),DE=lh(OE(),1);function jE(e){let t=(0,BE.default)(e),i=(0,DE.default)(t),n,o=0,a=0,l=0,c=0,p,m,f=0,y=0,S=[];for(let b=0;b<i.length;b++){let v=i[b],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 A=f,P=y;(n==="C"||n=="S")&&(A+=A-l,P+=P-c),v=["C",A,P,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 A=NE({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(!A.length)continue;for(let[P,T]of A.entries())v=["C",T.x1,T.y1,T.x2,T.y2,T.x,T.y],P<A.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 VE(e,t,i,n=1){return new Ox(e,t,i).subdivide(n)}function UE(e,t,i,n,o=1){return new WE(new Float64Array([e.x,e.y,t.x,t.y,i.x,i.y,n.x,n.y])).subdivide(o)}function HE(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 Yo(e){return e*(1-.39+Math.sqrt(.39*.39+.25*e*e))}var Ox=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,b=Math.abs(f)/(Math.hypot(l,c)*Math.abs(S-y));return{x0:e,x2:o,scale:b,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=Yo(i),c=Yo(n),p=[0];for(let m=1;m<a;m++){let y=(Yo(i+(n-i)*m/a)-l)/(c-l);p.push(y)}return p.push(1),p.map(m=>this.eval(m))}},WE=class kx{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 Ox({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 kx(n)}subdivide(t){let i=.1*t,n=t-i,o=Math.sqrt(n),a=HE(this.weightsum(1,-3,3,-1)),l=Math.ceil(Math.pow(a/(432*i*i),1/6)),c=[],p=0;for(let v=0;v<l;v++){let x=v/l,A=(v+1)/l,P=this.subsegment(x,A).midpoint_quadbez(),T=P.mapToBasic(),E=ta(T.x0),j=ta(T.x2),F=Math.sqrt(T.scale),k=Math.abs(j-E)*F;if(Math.sign(T.x0)!=Math.sign(T.x2)){let M=o/F,O=o*Math.abs(j-E)/ta(M);k=Math.max(k,O)}c.push({quad:P,a0:E,a2:j,val:k}),p+=k}let m=.5*p/o,f=Math.ceil(m),y=[{x:this.c[0],y:this.c[1]}],S=0,b=0;for(let v=1;v<f;v++){let x=p*v/f;for(;S+c[b].val<x;)S+=c[b].val,b++;let A=c[b].a0,P=c[b].a2,T=Yo(A),E=Yo(P),j=A+(P-A)*(x-S)/c[b].val,k=(Yo(j)-T)/(E-T);y.push(c[b].quad.eval(k))}return y.push({x:this.c[6],y:this.c[7]}),y}},qE=/&?(xywh=)?(pixel:|percent:|pct:)?([0-9]+(?:\.[0-9]+)?),([0-9]+(?:\.[0-9]+)?),([0-9]+(?:\.[0-9]+)?),([0-9]+(?:\.[0-9]+)?)/,_x=/&?(t=)(npt:)?([0-9]+(\.[0-9]+)?)?(,([0-9]+(\.[0-9]+)?))?/,Mx=/^rgba\((\d+),(\d+),(\d+),([0-9.]+)\)$/;function Nn(e,{domParser:t,svgPreprocessor:i,iiifRenderingHints:n}={}){if(Array.isArray(e))return ji(e.reduce((o,a)=>{let{selector:l,selectors:c,iiifRenderingHints:p}=Nn(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 ji({selector:null,selectors:[],iiifRenderingHints:n});if(typeof e=="string"){let[o,a]=e.split("#");return a?Nn({type:"FragmentSelector",value:a},{svgPreprocessor:i,iiifRenderingHints:n,domParser:t}):ji({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 ji({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 ji({selector:o,selectors:[o],iiifRenderingHints:n})}}if(Uu(e)){let o=[];if(e.region){let a=Nn({type:"FragmentSelector",value:"xywh="+e.region},{domParser:t,svgPreprocessor:i,iiifRenderingHints:n});o.push(...a.selectors)}return ji({selector:o[0],selectors:o,iiifRenderingHints:n?{...n,...e}:e})}if(e.type==="FragmentSelector"){let o=qE.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(_x);return c&&(l={type:"TemporalBoxSelector",spatial:l.spatial,temporal:{startTime:c[3]?parseFloat(c[3]):0,endTime:c[6]?parseFloat(c[6]):void 0}}),ji({selector:l,selectors:[l],iiifRenderingHints:n})}let a=e.value.match(_x);if(a){let l={type:"TemporalSelector",temporal:{startTime:a[3]?parseFloat(a[3]):0,endTime:a[6]?parseFloat(a[6]):void 0}};return ji({selector:l,selectors:[l],iiifRenderingHints:n})}return ji({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}`),ji({selector:null,selectors:[],iiifRenderingHints:n});let y=Lx(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}=GE(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 ji({selector:m,selectors:[m],iiifRenderingHints:n})}return ji({selector:null,selectors:[],iiifRenderingHints:n})}function QE(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 Lx(e){for(let t of Array.from(e.children))switch(t?.tagName.toLowerCase()){case"g":{let i=Lx(t);if(i)return i}continue;case"path":{let i=t.getAttribute("d");if(!i)continue;let n=jE(i);return{element:t,points:$E(n),shapeType:QE(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 $E(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(...UE({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(...VE({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 GE(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=Mx.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=Mx.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 ji(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 kt(e,t={}){if(Array.isArray(e))return kt(e[0]);if(typeof e=="string"){let[i,n]=e.split("#");return n?kt({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 kt(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?Nn(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?kt({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=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,zx.useMemo)(()=>{if(!c)return;let m={...c,body:p,target:kt(c.target,{typeMap:a.getState().iiif.mapping})};return n?n(m):m},[c,n,p,...t])}var Nx=I(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=je(),m=(0,Fx.useMemo)(()=>Sv(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,Nx.jsx)(gv,{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 Dx=I(W(),1);var Bx=I(W(),1);function Mp(e={},t=[]){let{id:i,selector:n}=e,o=qt(),a=i||o.annotationPage,l=Fe(c=>a?c.iiif.entities.AnnotationPage[a]:void 0,[a]);return(0,Bx.useMemo)(()=>{if(l)return n?n(l):l},[l,...t])}var Op=I(q(),1),na=({className:e,page:t})=>{let i=Mp({id:t.id})||t,n=Kr(i,"atlas"),o=Kr(i,"html");return Fe(a=>i.id?a.iiif.entities.AnnotationPage[i.id]:null,[]),(0,Op.jsx)(Dx.Fragment,{children:i.items?.map(a=>(0,Op.jsx)(Wu,{id:a.id,style:n,className:o?.className||e},a.id))})};var ra=I(W(),1);var rn=I(W(),1),nn=I(q(),1),Vx=rn.default.createContext("en"),Ux=rn.default.createContext({}),Hx=rn.default.createContext(null);function YE(e){return(0,nn.jsx)(Ux.Provider,{value:e.translations,children:e.children})}function XE(e){return(0,nn.jsx)(Vx.Provider,{value:e.language,children:e.children})}function KE(e){return(0,nn.jsx)(Hx.Provider,{value:e.convert,children:e.children})}function kp(){return rn.default.useContext(Hx)}function qu(){return rn.default.useContext(Vx)}function Lp(){return rn.default.useContext(Ux)}function jx(e){return e.indexOf("-")!==-1?e.slice(0,e.indexOf("-")):e}function Wx({as:e,language:t,children:i,viewingDirection:n,...o}){let a=qu();return(0,rn.useMemo)(()=>jx(a)===jx(t),[a,t])?e?(0,nn.jsx)(e,{...o,children:i}):(0,nn.jsx)("span",{...o,children:i}):e?(0,nn.jsx)(e,{...o,lang:t,dir:n,children:i}):(0,nn.jsx)("span",{...o,lang:t,dir:n,children:i})}function qx(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 Qx=(e,t=[])=>{let i=qu();return(0,rn.useMemo)(()=>{let n=e();return qx(i,n,[])},[i,...t])};function Zr(e,t,i,n){return t?i?i(e[t]||t,n||"none"):e[t]||t:""}function $x(e,t,i=`
75
+ `,n={}){let o=kp(),a=Qx(()=>Object.keys(e||{}),[e]);return[(0,rn.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 ZE(){let e=qu(),t=Lp(),i=kp();return function(o,a="",l=`
76
+ `,c=t){let p=Object.keys(o||{}),m=qx(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 Ei({as:e,defaultText:t,enableDangerouslySetInnerHTML:i,children:n,separator:o,...a}){let l=Lp(),[c,p]=$x(n,t,o,l);return p?(0,nn.jsx)(Wx,{...a,as:e,language:p,title:i?void 0:c,dangerouslySetInnerHTML:i?{__html:c}:void 0,children:i?void 0:c}):e?(0,nn.jsx)(e,{...a,children:c}):(0,nn.jsx)("span",{...a,title:i?void 0:c,dangerouslySetInnerHTML:i?{__html:c}:void 0,children:i?void 0:c})}function Gx(e){return e.endsWith("info.json")?e:e.endsWith("/")?`${e}info.json`:`${e}/info.json`}var Qu=I(W(),1);var Yx=Qu.default.createContext(new bo);function on(){return(0,Qu.useContext)(Yx)}var Vi=I(q(),1);function JE({resource:e,heading:t,note:i,extra:n}){return n?(0,Vi.jsx)(Sn,{target:{x:0,y:0,width:n.target?.spatial.width,height:n.target?.spatial.height},backgroundColor:"#333",relative:!0,children:(0,Vi.jsx)("div",{style:{display:"flex",alignContent:"center",justifyContent:"center",alignItems:"center",height:"100%",width:"100%",background:"#444",color:"#BBB"},children:(0,Vi.jsxs)("div",{children:[(0,Vi.jsx)(Ei,{children:t||"Not authorised"}),i&&(0,Vi.jsx)("p",{children:(0,Vi.jsx)(Ei,{children:i})}),(0,Vi.jsx)("p",{children:e.id||e["@id"]||"unknown"})]})})}):null}function Xx({image:e,thumbnail:t,crop:i,enableSizes:n,enableThumbnail:o,renderOptions:a}){let l=pp(),c=on(),p=e.service?Gx(e.service.id||e.service["@id"]||""):void 0,m=p?!!c.imageServices[p]:void 0,f=t&&t.type==="fixed"&&t.id&&!t.id.includes("/full/full/")&&!t.id.includes("/max/")?t:void 0;if(m===!1)return null;if(!l){let y=e.service,S=y.width||e.width||0,b=y.height||e.height||0;return(0,Vi.jsx)(xh,{enableThumbnail:o,renderOptions:a,tiles:{id:y.id||y["@id"]||"unknown",height:b,width:S,imageService:y,thumbnail:f},enableSizes:n,x:0,y:0,width:e.target?.spatial.width,height:e.target?.spatial.height,crop:i})}return(0,Vi.jsx)(fp,{resource:e.service,errorComponent:JE,extra:e,children:y=>{let S=y.width||e.width||0,b=y.height||e.height||0;return(0,Vi.jsx)(xh,{enableThumbnail:o,renderOptions:a,tiles:{id:y.id||y["@id"]||"unknown",height:b,width:S,imageService:y,thumbnail:f},enableSizes:n,x:0,y:0,width:e.target?.spatial.width,height:e.target?.spatial.height,crop:i})}},e.id)}var Jr=I(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)(Xx,{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 Cn=I(W(),1);var Ko=I(W(),1);function Kx(e){return e.type==="SpecificResource"?[e.source,{selector:e.selector}]:[e,{selector:null}]}function zp(e=kn){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[b,{selector:v}]=Kx(S),x=e.get(b),A=(x.type||"unknown").toLowerCase();if(A==="choice"){let P=e.get(x.items,{parent:x.id}),T=a.length?a.map(E=>P.find(j=>j.id===E)).filter(Boolean):[P[0]];T.length===0&&T.push(P[0]),p.items.push({type:"single-choice",items:P.map(E=>({id:E.id,label:E.label,selected:T.indexOf(E)!==-1})),label:b.label}),y.push(...T);continue}c.indexOf(A)===-1&&c.push(A),m.push({type:A,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 Zx(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 Fp(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:Zx(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 Fp(e,t,{...i,skipLanguages:[...S,f]})}return y.join(a)}return""}function Np(e,t={}){return Fp(e,t.language||(typeof navigator<"u"?navigator.language:"en"),t)}function eA(e){return e.type==="SpecificResource"?[e.source,{selector:e.selector}]:[e,{selector:null}]}function oa(e,t){let{selector:i,source:n}=kt(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 Bp={makeChoice:()=>{}},sa={type:"unknown"},ot=e=>({type:"unknown",reason:e,annotations:{pages:[]}}),Dp=(e,t)=>({type:"empty",width:e,height:t,annotations:{pages:[]},image:null,images:[]});var aa=I(W(),1);function tA(e,t){let i=e?.iiif?.meta[t];return i?i.annotationPageManager:null}function Jx(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=tA(i,a);l&&l.views&&l.views[e]&&n.push(a)}return n},[e,t])}function jp({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 iA(e,t){let i=e?.iiif?.meta[t];return i?i.annotationPageManager:null}function la(e,t={}){let i=Me(),n=gt(),o=je(),a=Wr(),l=(0,aa.useMemo)(()=>jp({all:t.all,manifest:n,canvas:o,canvases:a}),[t.all,o,a,n]),c=Jx(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(),b=[];if(y?.deselectOthers){let v=Object.keys(S.iiif.entities.AnnotationPage);for(let x of v){let A=iA(S,x);A&&A.views&&A.views[e]&&b.push(x)}}for(let v of b)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 Vp(e,t){return Fe((i,n)=>n.get(e.map(o=>({id:o,type:t}))),[e,t])}var cr=I(W(),1);function Up(){let e=on(),[t,i]=(0,cr.useState)({}),n=(0,cr.useRef)(!1);return(0,cr.useEffect)(()=>()=>{n.current=!0},[]),[(0,cr.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=I(W(),1);function eo(e={}){let t=ia(),i=je(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 Hp(e,t=[]){let i=Me(),n=(0,to.useMemo)(()=>zp(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(b=>{if(S){let x=b.filter(A=>A!==f);if(x.length===0){let A=c.items[0].resource.id;return A?[A]:[]}return x}if(y)return[f];let v=[...b];if(v.length===0&&c.items.length){let x=c.items[0].resource.id;x&&v.push(x)}return b.indexOf(f)!==-1?b:[...b,f]})},[c.choice])};return[c,m]}var nA=["model/gltf-binary"];function Wp(e,t){let n=t.items[0].resource;return n.format?nA.indexOf(n.format)===-1?ot(`3D format: ${n.format} is unsupported`):{type:"3d-model",model:n}:ot("Unknown format")}function eS(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 x=_r(a);x[0]&&(l=i(x[0],e))}let c={type:"BoxSelector",spatial:{x:0,y:0,width:Number(e.width),height:Number(e.height)}},[p,m]=oa(e,o.target),f=e.id?.split("?")[0]||"";if(!(m.id===e.id||decodeURIComponent(m.id||"")===(e.id||"")||m.id===f||decodeURIComponent(m.id||"")===f))continue;let y=o.resource.width&&o.resource.height?{type:"BoxSelector",spatial:{x:0,y:0,width:o.resource.width,height:o.resource.height}}:void 0,S=o.resource.type==="SpecificResource"?kt(o.resource):null;if(o.selector){let x=kt({type:"SpecificResource",source:o.resource,selector:o.selector});x&&(S=x)}let b=S&&S.selector&&(S.selector.type==="BoxSelector"||S.selector.type==="TemporalBoxSelector")?{type:"BoxSelector",spatial:{x:S.selector.spatial.x,y:S.selector.spatial.y,width:S.selector.spatial.width,height:S.selector.spatial.height}}:void 0;l&&!l.id&&(l.id=l["@id"]);let v={id:a.id,type:"Image",annotationId:o.annotationId,width:Number(p||b?a.width:e.width),height:Number(p||b?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:b||{type:"BoxSelector",spatial:{x:0,y:0,width:Number(e.width),height:Number(e.height)}}};n.push(v)}return{type:"images",image:n[0],images:n,choice:t.choice}}function tS(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=>tS(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:tS(n.resource),target:o})}}),{type:"textual-content",items:i}}var rA=/^.*(?:(?:youtu\.be\/|v\/|vi\/|u\/\w\/|embed\/|shorts\/)|(?:(?:watch)?\?vi?=|&vi?=))([^#&?]*).*/;function da(e,t,i){let n=t.items.filter(b=>b.type==="video"),o=!1;if(e.duration||(o=!0),n.length>1)return ot("Only one video source supported");let a=n[0]?.resource,l=!!(a.service||[]).find(b=>(b.profile||"").includes("youtube.com"));if(!l&&o)return ot("Video does not have duration");if(!a)return ot("Unknown video");if((!a.format||a.format==="text/html")&&!l)return ot("Video does not have format");let c=[],p=i.get(e.annotations);for(let b of p){let v=i.get(b.items);for(let x of v)if((x.motivation?Array.isArray(x.motivation||"")?x.motivation:[x.motivation]:[]).includes("supplementing")){let P=i.get(x.body);for(let T of P){let E=T;if(E.type==="Choice")for(let j of E.items){let F=i.get(j);F.format==="text/vtt"&&c.push({id:F.id,type:"Text",format:"text/vtt",label:F.label,language:F.language})}else E.format==="text/vtt"&&c.push({id:E.id,type:"Text",format:"text/vtt",label:E.label,language:E.language})}}}let m=t.items[0],f={annotationId:t.items[0].annotationId,duration:e.duration,url:a.id,type:"Video",target:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}},format:a.format,selector:{type:"TemporalSelector",temporal:{startTime:0,endTime:e.duration}}},y=kt(m.target);y.selector&&y.selector.type==="TemporalBoxSelector"&&(f.target=y.selector);let{selector:S}=Nn(m.selector);if(S===null){let b=f.target.temporal.startTime,x=(f.target.temporal.endTime||e.duration)-b;f.selector={type:"TemporalSelector",temporal:{startTime:0,endTime:x}}}else S.type==="TemporalSelector"&&(f.selector=S);if(l){f.type="VideoYouTube";let b=a.id.match(rA);if(!b[1])return ot("Video is not known youtube video");f.youTubeId=b[1]}return{type:"media",media:f,annotations:{pages:[]},captions:c}}function qp(e,t,i,n){let o={type:"complex-timeline",items:[],keyframes:[],duration:e.duration||0},a={type:"complex-choice",items:[]};function l(m){m.choice&&(m.choice.type==="complex-choice"?a.items.push(...m.choice.items):a.items.push(m.choice))}for(let m of t.items){if(m.type==="image"){let f=ua(e,{choice:null,allChoices:null,types:["image"],items:[m]},i);if(f.type==="images"){l(f),o.items.push(f.image);let y={id:f.image.annotationId,type:"enter",resourceType:"image",time:f.image.target?.temporal?.startTime||0};o.keyframes.push(y);let S={id:f.image.annotationId,type:"exit",resourceType:"image",time:f.image.target?.temporal?.endTime||e.duration||0};o.keyframes.push(S)}}if(m.type==="textualbody"){let f=ca(e,{choice:null,allChoices:null,types:["textualbody"],items:[m]});if(f.type==="textual-content"){l(f);let y=f.items[0];o.items.push(y);let S=y.target,b={id:y.annotationId,type:"enter",resourceType:"text",time:S.temporal?.startTime||0};o.keyframes.push(b);let v={id:y.annotationId,type:"exit",resourceType:"text",time:S.temporal?.endTime||e.duration||0};o.keyframes.push(v)}}if(m.type==="video"){let f=da(e,{choice:null,allChoices:null,types:["video"],items:[m]},n);if(f.type==="media"){l(f);let y=f.media;o.items.push(y);let S={id:y.annotationId,type:"enter",resourceType:"video",time:y.target?.temporal?.startTime||0};o.keyframes.push(S);let b={id:y.annotationId,type:"exit",resourceType:"video",time:y.target?.temporal?.endTime||e.duration||0};o.keyframes.push(b)}}}o.keyframes.sort((m,f)=>m.time-f.time);let c=[],p=[];for(let m of o.keyframes){if(m.resourceType==="image"||m.resourceType==="text"){p.push(m);continue}if(m.type==="enter"){c.length===0&&(m.isPrime=!0),c.push(m),p.push(m);continue}if(m.type==="exit"&&(p.push(m),c=c.filter(f=>f.id!==m.id),c.length!==0)){let f=c[0],y={id:f.id,type:"change",isPrime:!0,resourceType:f.resourceType,time:m.time};p.push(y)}}return o.keyframes=p,a.items.length&&(o.choice=a),o}function Qp({canvas:e,paintables:t,supports:i,loadImageService:n,vault:o}){if(!e)return sa;if(t.types.length===0)return i.indexOf("empty")!==-1?Dp(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(l=>l!=="text");else return i.indexOf("complex-timeline")===-1?ot("Complex timeline not supported"):qp(e,t,n,o);let a=t.types[0];return a==="image"?i.indexOf("images")===-1?ot("Image not supported"):ua(e,t,n):a==="Model"||a==="model"?i.indexOf("3d-model")===-1?ot("3D not supported"):Wp(e,t):a==="textualbody"?i.indexOf("textual-content")===-1?ot("Textual content not supported"):ca(e,t):a==="sound"||a==="audio"?i.indexOf("media")===-1?ot("Media not supported"):eS(e,t):a==="video"?i.indexOf("media")===-1?ot("Media not supported"):da(e,t,o):sa}function $p(e){let t=gt(),i=je(),n=Me(),o=Ks(),a=e?.emitter||o,[l,c]=Up(),{enabledPageIds:p}=la(e?.annotationPageManagerId||t?.id||i?.id,{all:!1}),m=Vp(p,"AnnotationPage"),f=e?.strategies||["empty","images","media","textual-content","complex-timeline"],[y,S]=Hp(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 b=(0,Ko.useMemo)(()=>Qp({canvas:i,paintables:y,supports:f,loadImageService:l,vault:n}),[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)(()=>b.type==="unknown"?[b,Bp]:[{...b,annotations:{pages:m}},S],[b,m])}var dr=I(W(),1);var iS=I(W(),1),Gp=(e,t=[])=>{let i=Me();(0,iS.useEffect)(()=>{e(i)},[i,...t])};function io(e,t,{canvasId:i,manifestId:n}={}){let o=Me(),a=on(),l=(0,dr.useMemo)(()=>oh(o,{imageServiceLoader:a}),[o,a]),[c,p]=(0,dr.useState)(),m=gt(n?{id:n}:void 0),f=je(i?{id:i}:void 0),y=f||m,S=(0,dr.useRef)(!1);if((0,dr.useEffect)(()=>(S.current=!1,()=>{S.current=!0}),[]),!y)throw new Error("Must be called under a manifest or canvas context.");return Gp(b=>{l.getBestThumbnailAtSize(y,e,t).then(v=>{v.best&&!S.current&&p(v.best)})},[y]),c}var yt=I(W(),1);function oA(e){return{isMuted:!1,playRequested:!1,isPlaying:!1,isFinished:!1,volume:100,duration:e}}function sA(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)(sA,oA(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"}))},[]),b=(0,yt.useCallback)(()=>{n.current&&(n.current.muted=!1,i({type:"UNMUTE"}))},[]),v=(0,yt.useCallback)(P=>{n.current&&(n.current.muted=!1,n.current.volume=P/100,i({type:"SET_VOLUME",volume:P}))},[]),x=(0,yt.useCallback)(P=>{n.current&&(n.current.currentTime=Math.max(0,Math.min(P*e.duration,e.duration)),c())},[]),A=(0,yt.useCallback)(P=>{if(n.current){let T=typeof P=="function"?P(n.current.currentTime):P;n.current.currentTime=Math.max(0,Math.min(T,e.duration)),c()}},[]);return(0,yt.useEffect)(()=>{let P=setInterval(()=>{c()},350);return()=>clearInterval(P)},[c,e.duration]),(0,yt.useEffect)(()=>{let P=()=>{i({type:"FINISHED"})},T=n.current;return T?.addEventListener("ended",P),()=>T?.removeEventListener("ended",P)},[]),[{element:n,currentTime:o,progress:a},t,{play:p,pause:f,playPause:m,mute:S,unmute:b,toggleMute:y,setVolume:v,setDurationPercent:x,setTime:A}]}var hr=I(W(),1),Gu=I(q(),1),nS=(0,hr.createContext)(null),rS=(0,hr.createContext)(null),oS=(0,hr.createContext)(null);function aA(){let e=(0,hr.useContext)(nS);if(!e)throw new Error("Ctx not found");return e}function lA(){let e=(0,hr.useContext)(rS);if(!e)throw new Error("Ctx not found");return e}function uA(){let e=(0,hr.useContext)(oS);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,Gu.jsx)(oS.Provider,{value:{currentTime:n,progress:o,element:a},children:(0,Gu.jsx)(rS.Provider,{value:e,children:(0,Gu.jsx)(nS.Provider,{value:t,children:i})})})}var sS=I(W(),1);function pa(){let e=gt(),t=je();return(0,sS.useMemo)(()=>{if(!e||!t||!e.start)return null;let i=kt(e.start);return!i||i.source.id!==t.id||!i||!i.selector||i.selector.type!=="TemporalSelector"?null:i.selector.temporal},[e,t])}var Xu=I(q(),1);function Yp({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 Yu({media:e,mediaControlsDeps:t,audioCopmonent:i=Yp,children:n}){let o=pa();return Pi("portal","audio",i,{media:e,startTime:o?o.startTime:null,children:n},[e,o,...t||[]]),null}var fa=I(q(),1);function Xp({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,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=Be(),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:`
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=Xp,captions:o}){let a=je(),l=pa(),c=a&&a.placeholderCanvas&&a.placeholderCanvas.id||void 0,p=io({},!1,{canvasId:c}),[{element:m,currentTime:f,progress:y},S,b]=no({duration:e.duration});return Pi("overlay","video-element",n,{element:m,media:e,playPause:b.playPause,poster:p?.id,canvas:a,startTime:l?l.startTime:null,captions:o},[p]),Pi("portal","custom-controls",ha,{state:S,actions:b,currentTime:f,progress:y,element:m,children:i},[f,S,e,...t||[]]),null}var pr=I(q(),1);function Kp({model:e}){return(0,pr.jsxs)(pr.Fragment,{children:[(0,pr.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,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=Be();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=Be();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:`
104
+ `}),(0,pr.jsx)("div",{className:"model-container",children:(0,pr.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}`,Kp,{model:e},[e]),null}var aS=I(q(),1);function Ju({style:e}){let t=je();return!t||!t.height||!t.width?null:(0,aS.jsx)("box",{interactive:!1,target:{x:0,y:0,width:Number(t.width),height:Number(t.height)},style:e})}var Zp=I(q(),1);function ec(e){let t=je();return!t||!t.placeholderCanvas?null:(0,Zp.jsx)(Di,{canvas:t.placeholderCanvas.id,children:(0,Zp.jsx)(Zo,{renderViewerControls:e.renderViewerControls})})}var lS=I(W(),1),ma=I(q(),1);function cA({element:e,media:t,playPause:i}){let n=(0,lS.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,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=typeof A=="function"?A(D):A,k=N.nextKeyframeIndex;if(D>M){C({visibleElements:{},currentPrime:null});let ye=Object.keys(N.visibleElements);for(let _e of ye)i.emit("complex-timeline.exit",{id:_e});D=0,k=0}let[O,K]=oS({currentTime:D,currentKeyFrameIndex:k,keyframes:N.complexTimeline.keyframes,targetTime:M});N.applyKeyframes(O,K),c=M*1e3;let Y=E.getState().visibleElements,te=n,ke=Object.keys(Y);for(let ye of ke){let _e=Y[ye];if(_e){let ve=te[ye];ve&&(ve.currentTime=(c-_e.time*1e3)/1e3)}}y(M)},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()}}},[e,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=Be(),D=Js(N,["deep-zoom"]),[M]=wp(),k=Pp(),O=Me(),K=(0,Sn.useMemo)(()=>Xr(O),[O]),[U,Y]=qp({strategies:y||["images"],defaultChoices:o?.map(({id:H})=>H)}),te=U.type==="images"?U.choice:void 0,ke=(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(ke),(0,Sn.useEffect)(()=>{n&&n(Y)},[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 _e=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,De=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?je=>{T(H.annotationId,H,je)}: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"&&_e?(0,Ve.jsx)(Bi,{canvas:_e.id,children:(0,Ve.jsx)(Zo,{renderViewerControls:l})}):null,U.type==="media"&&U.media.type==="Sound"&&ve&&!_e?(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=Be(),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=Be(),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,Y;for(let te=E+1;te<C;te++)k=af(x[te],i[0]),U=bA(k,n),U<=0?Y=uc(x[te],i[0]):M<=U?Y=uc(x[te],i[1]):(K=U/M,O=[i[0][0]+K*n[0],i[0][1]+K*n[1]],Y=uc(x[te],O)),!(Y<=N)&&(A=te,N=Y);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,Y=K+o[0],te=U+o[1];if(M.length===6){D.push([Y,te,M[2],M[3],M[4],M[5]]);continue}D.push([Y,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}})}},Y={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 ke(B){n.scale=B,c({modifiers:{...o.nextSlowState?.modifiers||n.slowState.modifiers,proximity:B*cc}})}function ye(){return cc*n.scale}let _e={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 De(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 je(){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:Y,key:te,setScale:ke,clock:_e,pointer:ve,blur:We,pointerDown:Ye,pointerUp:ft,setShape:De,modes:{toggleLineBoxMode:je,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,(Y,te)=>{pr.updateTransitionBoundingBox(c.current,Y,te),pr.updateBoundingBoxPolygon(l.current,Y,te),pr.updateTransitionShape(y.current,Y,te),pr.updateClosestLinePointTransform(m.current,Y,te),pr.updateSelectBox(p.current,Y,te),pr.updatePointLine(S.current,Y,te),pr.updateDrawPreview(f.current,Y,te,3),pr.updateLineBox(P.current,Y),x(Y.transitionDirection),C(Y.transitionRotate)},o);(0,ei.useEffect)(()=>{T.setShape(n||null)},t),(0,ei.useEffect)(()=>{let Y=()=>{T.modifiers.reset()};return document.addEventListener("mouseleave",Y),()=>{document.removeEventListener("mouseleave",Y)}},[]);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(Y=>Y.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((Y,te)=>A.selectedPoints?.includes(te)).map(Y=>Y.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=Be(),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=Be(),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);})();
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 uS({media:e,mediaControlsDeps:t,children:i}){let[{element:n,currentTime:o,progress:a},l,c]=no({duration:e.duration});return Pi("overlay","video-element",cA,{element:n,media:e,playPause:c.playPause}),null}var nc=I(W(),1);function cS({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 dS({complexTimeline:e,startTime:t=0}){let i=$r(),n={},o={progress:null,currentTime:null},a=0,l=null,c=0,p=null;function m(){let T=A.getState().visibleElements,E=n,j=[],F=Object.keys(E);for(let k of F){let M=E[k],O=T[k];M&&O&&j.push(M)}return j}function f(){return Object.keys(n).map(T=>n[T])}function y(P){o.currentTime&&(o.currentTime.innerHTML=$u(P),o.progress&&(o.progress.style.width=`${P/e.duration*100}%`))}let S=()=>{let P=A.getState(),T=P.currentPrime;if(!T)return;let E=n,j=P.visibleElements,F=Object.keys(E);for(let k of F){let M=E[k],O=j[k];if(M&&k!==T.id&&O){let $=c-O.time*1e3;Math.abs(c-O.time*1e3-M.currentTime*1e3)>300&&(M.currentTime=$/1e3)}}},b=(P=0)=>{let T=P-a,E=A.getState();if(E.isPlaying){let j=E.currentPrime;if(j){let O=n[j.id];O&&(O.paused?c+=T:c=(j.time+O.currentTime)*1e3)}else c+=T;let F=c/1e3;if(F>E.duration){A.getState().setTime(0),A.setState({isPlaying:!1}),v(),y(0);return}y(F);let[k,M]=cS({currentTime:F,currentKeyFrameIndex:E.nextKeyframeIndex,keyframes:E.complexTimeline.keyframes,targetTime:F});M.length&&E.applyKeyframes(k,M)}a=P,l=requestAnimationFrame(b)},v=()=>{l&&cancelAnimationFrame(l)},x=(P,T)=>{},A=qr((P,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||(b(),p=setInterval(S,500)),P({clockRunning:!0,clockStartRequests:T().clockStartRequests+1})},applyKeyframes(E,j){let F=T(),k={...F.visibleElements},M=F.currentPrime;for(let O of j)O.type==="enter"&&(k[O.id]=O,i.emit("complex-timeline.enter",{id:O.id})),O.type==="exit"&&(k[O.id]=null,i.emit("complex-timeline.exit",{id:O.id})),O.isPrime&&(M=O);P({nextKeyframeIndex:E,visibleElements:k,currentPrime:M})},stopClock:()=>{let E=T().clockStartRequests;if(E!==0){if(E===1){v(),p&&clearInterval(p),P({clockRunning:!1,clockStartRequests:0});return}P({clockStartRequests:E-1})}},setElement:(E,j)=>{n[E]=j;let F=Object.keys(n),k=T().complexTimeline;x(j,E),k.items.filter(O=>O.type!=="Image"&&O.type!=="Text").every(O=>F.includes(O.annotationId))&&!T().isReady&&(i.emit("complex-timeline.ready",{complexTimeline:k}),P({isReady:!0}))},removeElement:E=>{delete n[E]},mute(){for(let E of f())E.muted=!0;P({isMuted:!0})},unmute(){for(let E of f())E.muted=!1;P({isMuted:!1})},play(){if(!T().isPlaying){for(let j of m())j.play();P({isPlaying:!0})}},pause(){if(T().isPlaying){for(let j of m())j.pause();P({isPlaying:!1})}},playPause(){let E=T();E.isPlaying?E.pause():E.play()},setDurationPercent(E){let F=T().duration*E;T().setTime(F)},setTime(E){let j=T(),F=c/1e3,k=typeof E=="function"?E(F):E,M=j.nextKeyframeIndex;if(F>k){P({visibleElements:{},currentPrime:null});let Pe=Object.keys(j.visibleElements);for(let be of Pe)i.emit("complex-timeline.exit",{id:be});F=0,M=0}let[O,$]=cS({currentTime:F,currentKeyFrameIndex:M,keyframes:j.complexTimeline.keyframes,targetTime:k});j.applyKeyframes(O,$),c=k*1e3;let L=A.getState().visibleElements,ie=n,Oe=Object.keys(L);for(let Pe of Oe){let be=L[Pe];if(be){let ye=ie[Pe];ye&&(ye.currentTime=(c-be.time*1e3)/1e3)}}y(k)},setVolume(E){for(let j of f())j.volume=Math.min(1,Math.max(0,E/100));P({volume:E})},toggleMute(){let E=T();E.isMuted?(E.unmute(),P({isMuted:!1})):(E.mute(),P({isMuted:!0}))},clearProgressElement(){o.progress=null},setProgressElement(E){o.progress=E},setCurrentTimeElement(E){o.currentTime=E},clearCurrentTimeElement(){o.currentTime=null}}));return i.on("complex-timeline.enter",P=>{let T=A.getState(),E=P.id,j=n[E];j&&T.isPlaying&&j.play()}),i.on("complex-timeline.exit",P=>{let T=A.getState(),E=P.id,j=n[E];j&&(j.currentTime=0,j.pause())}),A.getState().setTime(t),{store:A,emitter:i}}var tc=I(W(),1);var hS=I(q(),1),Jp=(0,tc.createContext)(null);Jp.displayName="ComplexTimeline";function ef({children:e,store:t}){return(0,hS.jsx)(Jp.Provider,{value:t,children:e})}function dA(e){let t=(0,tc.useContext)(Jp);if(!t)throw new Error("useComplexTimeline must be used within a ComplexTimelineProvider");return bi(t,e)}var Bn=I(q(),1);function ic({strategy:e,onClickPaintingAnnotation:t}){return(0,Bn.jsx)(Bn.Fragment,{children:e.items.map((i,n)=>(0,Bn.jsx)(Bn.Fragment,{children:(0,Bn.jsx)(Sn,{onClick:t?o=>{o.stopPropagation(),t(i.annotationId,i,o)}:void 0,target:i.target?.spatial||void 0,children:(0,Bn.jsx)("div",{"data-textual-content":!0,children:(0,Bn.jsx)(Ei,{enableDangerouslySetInnerHTML:!0,children:i.text})})},n)}))})}var Dn=I(q(),1);function pS({strategy:e,children:t}){let{store:i}=(0,nc.useMemo)(()=>dS({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()}}},[e,n]),Pi("portal","custom-controls",ef,{store:i,children:t},[n]),(0,Dn.jsxs)(Dn.Fragment,{children:[e.items.map(l=>l.type!=="Image"||!o[l.annotationId]?null:(0,Dn.jsx)(Xo,{image:l,id:l.annotationId},l.id)),e.items.map((l,c)=>l.type!=="Text"||!o[l.annotationId]?null:(0,Dn.jsx)(ic,{strategy:{type:"textual-content",items:[l]}},c)),e.items.map((l,c)=>l.type!=="Video"||!l.target.spatial?null:(0,Dn.jsx)(Sn,{target:l.target.spatial,children:(0,Dn.jsx)("video",{ref:a(l.annotationId),src:l.url,style:{height:"100%",width:"100%",opacity:o[l.annotationId]?1:0}})},c))]})}var Ve=I(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:b,alwaysShowBackground:v,keepCanvasScale:x=!1,enableSizes:A=!1,enableYouTube:P=!0,onClickPaintingAnnotation:T,components:E={},children:j}){let F=je(),k=Js(F,["deep-zoom"]),[M]=Cp(),O=Ep(),$=Me(),ee=(0,Cn.useMemo)(()=>Xr($),[$]),[L,ie]=$p({strategies:y||["images"],defaultChoices:o?.map(({id:le})=>le)}),Oe=L.type==="images"?L.choice:void 0,Pe=(0,Cn.useMemo)(()=>x?1:Math.max(1,...L.type==="images"?L.images.map(le=>(le.width||0)/le.target?.spatial.width):[]),[x,L]);Ax(Pe),(0,Cn.useEffect)(()=>{n&&n(ie)},[L.annotations]),(0,Cn.useEffect)(()=>{if(o)for(let le of o)typeof le.opacity<"u"&&ee.applyStyles({id:le.id},"atlas",{opacity:le.opacity})},[o]),(0,Cn.useLayoutEffect)(()=>{i&&i(Oe)},[Oe]),Pi(O&&(L.type==="images"||L.type==="empty"||L.type==="textual-content"&&l)?"overlay":"none",`canvas-portal-controls-${F?.id}`,$o.Provider,l?{value:O||null,children:l(L)}:{},[F,O,L,...m||[]]);let be=io({maxWidth:256,maxHeight:256});if(!F)return null;let ye=F.accompanyingCanvas,Xe=F.placeholderCanvas,Ue=be&&be.type==="fixed"?(0,Ve.jsx)("world-object",{height:F.height,width:F.width,x:e,y:t,children:(0,Ve.jsx)("world-image",{uri:be.id,target:{x:0,y:0,width:F.width,height:F.height},display:be.width&&be.height?{width:be.width,height:be.height}:void 0,crop:void 0})}):null;if(L.type==="unknown"){if(Ue)return Ue;if(S)throw new Error(L.reason||"Unknown image strategy");return null}let ht=(0,Ve.jsxs)(Cn.Fragment,{children:[M?(0,Ve.jsx)(na,{page:M}):null,L.annotations&&L.annotations.pages?L.annotations.pages.map(le=>(0,Ve.jsx)(na,{page:le},le.id)):null,j]}),Ne=L.type==="images"?L.images.length:0,G=L.type==="media"&&L.media.type==="Video"&&Xe?(0,Ve.jsx)(ec,{renderViewerControls:l}):null;return(0,Ve.jsxs)(Ve.Fragment,{children:[(0,Ve.jsxs)("world-object",{height:F.height,width:F.width,x:e,y:t,...k,children:[L.type==="empty"||v?(0,Ve.jsx)(Ju,{style:b}):null,L.type==="complex-timeline"?(0,Ve.jsx)(pS,{strategy:L,children:p?p(L):null}):null,L.type==="textual-content"?(0,Ve.jsxs)(Ve.Fragment,{children:[(0,Ve.jsx)(ic,{strategy:L,onClickPaintingAnnotation:T}),ht]}):null,L.type==="images"?(0,Ve.jsxs)(Ve.Fragment,{children:[L.images.map((le,Be)=>(0,Ve.jsx)(Xo,{isStatic:a,image:le,id:le.id,thumbnail:Be===0?be:void 0,selector:le.selector,enableSizes:A,onClick:T?D=>{T(le.annotationId,le,D)}:void 0},le.id+Be)),ht]}):null,L.type==="3d-model"?(0,Ve.jsx)(Zu,{model:L.model}):null,L.type==="media"?(0,Ve.jsx)(Ve.Fragment,{children:L.media.type==="Sound"?(0,Ve.jsxs)(Yu,{media:L.media,mediaControlsDeps:f,audioCopmonent:E.Audio,children:[Ue,c?c(L):null]}):L.media.type==="Video"?(0,Ve.jsxs)(Ku,{captions:L.captions,media:L.media,mediaControlsDeps:f,videoComponent:E.Video,children:[Ue,c?c(L):null]}):L.media.type==="VideoYouTube"&&P?(0,Ve.jsxs)(uS,{media:L.media,mediaControlsDeps:f,children:[Ue,c?c(L):null]}):null}):null]},`${F.id}/${L.type}/${Ne}`),L.type==="media"&&L.media.type==="Sound"&&ye?(0,Ve.jsx)(Di,{canvas:ye.id,children:(0,Ve.jsx)(Zo,{renderViewerControls:l})}):null,L.type==="media"&&L.media.type==="Sound"&&Xe&&!ye?(0,Ve.jsx)(Di,{canvas:Xe.id,children:(0,Ve.jsx)(Zo,{renderViewerControls:l})}):null]})}var Zt=I(q(),1),hA=(0,ga.forwardRef)(function(t,i){let n=gt(),o=Wr(),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)(Di,{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},b){let v=Ur();return(0,Zt.jsx)(Vr,{vault:v,children:(0,Zt.jsx)(gp,{...S,children:(0,Zt.jsx)(hA,{ref:b,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=Tx;Lt.CanvasBackground=Ju;Lt.Audio=Yu;Lt.Video=Ku;Lt.Model=Zu;Lt.AudioHTML=Yp;Lt.VideoHTML=Xp;Lt.ModelHTML=Kp;Lt.PlaceholderCanvas=ec;var rc=I(W(),1),ya=I(q(),1),pA=(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 mS=I(W(),1);var fS=I(W(),1);var Ct=I(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 b=(0,fS.useMemo)(()=>{let x=(t||[]).reduce((P,T)=>[...P,...T.keys],[]),A={};for(let P of e){let T=P&&P.label?Object.values(P.label):[];for(let E of T)if(E&&E.length&&(x.indexOf(`metadata.${E[0]}`)!==-1||x.length===0)&&P){let j=`metadata.${E[0]}`;A[j]=A[j]?A[j]:[],A[j].push(P);break}}return A},[t,e]);return Object.keys(b).length===0&&n?(0,Ct.jsx)(Ct.Fragment,{children:a})||(0,Ct.jsx)("div",{className:l.empty,children:c}):t&&t.length?(0,Ct.jsxs)("table",{className:l.container,children:[S,(0,Ct.jsx)("tbody",{children:t.map((x,A)=>{let P=[];for(let T of x.keys)for(let E of b[T]||[])P.push((0,Ct.jsx)(Ei,{enableDangerouslySetInnerHTML:o,defaultText:p,separator:f,children:E.value},A+"__"+T));return P.length===0?null:(0,Ct.jsxs)("tr",{className:l.row,children:[(0,Ct.jsx)("td",{className:l.label,style:i?{minWidth:i}:{},children:(0,Ct.jsx)(Ei,{enableDangerouslySetInnerHTML:o,separator:f,defaultText:m,children:x.label})}),(0,Ct.jsx)("td",{className:l.value,children:P})]},A)})}),y]}):(0,Ct.jsxs)("table",{className:l.container,children:[S,(0,Ct.jsx)("tbody",{children:e&&e.length?e.map((x,A)=>x?(0,Ct.jsxs)("tr",{className:l.row,children:[(0,Ct.jsx)("td",{className:l.label,style:i?{minWidth:i}:{},children:(0,Ct.jsx)(Ei,{enableDangerouslySetInnerHTML:o,defaultText:p,separator:f,children:x.label})}),(0,Ct.jsx)("td",{className:l.value,children:(0,Ct.jsx)(Ei,{enableDangerouslySetInnerHTML:o,defaultText:p,separator:f,children:x.value})})]},A):null):null}),y]})}var gS=I(q(),1);function fA(e){let t=gt(),i=je(),n=Qs(),o=(0,mS.useMemo)(()=>{let a=t?.metadata||[],l=i?.metadata||[],c=n?.metadata||[];return[...a,...l,...c]},[t,i,n]);return(0,gS.jsx)(va,{metadata:o,...e})}var sc=I(W(),1);var yS=I(W(),1);function oc(e,t={},i=[]){return(0,yS.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=I(q(),1);function mA(e){let t=typeof e.src=="string"?e.src:e.src.id,i=on(),[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)(vS,{...e,fetchImageService:!1})}function vS(e){if(e.fetchImageService)return(0,xa.jsx)(mA,{...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 xS=I(q(),1);function gA(e){let t=gt();return(0,xS.jsx)(va,{metadata:t?.metadata||[],...e})}var ac=I(W(),1);var tf=I(wS(),1);var hi=I(q(),1),{LazyLoadComponent:yA}=tf||tf.default;function nf(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)(vA,{...e}),m=(0,hi.jsx)(yA,{threshold:300,style:{height:c,width:l},visibleByDefault:i,children:o?(0,hi.jsx)(Di,{canvas:o,children:p}):p});return a?(0,hi.jsx)("figure",{className:n?.figure,children:m}):m}function vA({fallback:e,size:t,classes:i,showLabel:n,alt:o,dereference:a=!1}){let l=je(),c=t?.width||128,p=t?.height||t?.width||128,m=o||Np(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)(Ei,{as:"figcaption",className:i?.label,children:l?.label}):null]})}var Jo=I(q(),1);function xA({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 b=l.current.querySelector("[data-selected=true]");b&&b.scrollIntoView({behavior:"smooth",block:"nearest",inline:"center"})},[m]);let S=[];for(let b of p){let v=[],x=p[m]===b;for(let A of b){let P=c[A];v.push((0,Jo.jsx)("div",{className:x?y.item:i.item,children:(0,Jo.jsx)(nf,{classes:x?y:i,canvasId:P.id,size:t,showLabel:n,figure:o,placeholder:(0,Jo.jsx)("div",{style:{height:128,width:128}}),fallback:a})},A))}if(e){S.push(v);continue}S.push((0,Jo.jsx)("div",{onClick:A=>{f(p.indexOf(b))},"data-selected":x,className:x?y.row:i.row,children:v},b.join("-")))}return(0,Jo.jsx)("div",{ref:l,className:i.container,children:S})}var Jt=I(q(),1),SA={draw:!0,polygon:!0,line:!0,lineBox:!0,square:!0,triangle:!0,hexagon:!0,circle:!0,delete:!0};function wA({helper:e,showShapes:t,state:i,enabled:n=SA,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=I(W(),1);var bS=I(q(),1),lc=(0,Bt.createContext)($r());lc.displayName="SelectorHelper";function bA({children:e}){return(0,bS.jsx)(lc.Provider,{value:(0,Bt.useMemo)(()=>$r(),[]),children:e})}function CA(){return(0,Bt.useContext)(lc)}function rf(e){let t=of(),[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 of(){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 PA(){let e=of();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=I(W(),1),CS=I(q(),1);function sf(){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 af=(0,es.createContext)(sf());af.displayName="AnnotationStyle";function lf(){return(0,es.useContext)(af)}function EA({theme:e,children:t}){let i=(0,es.useMemo)(()=>e||sf(),[e]);return(0,CS.jsx)(af.Provider,{value:i,children:t})}var ei=I(W(),1);var ts=I(W(),1);function TS(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 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 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 TA(e){return e[0]*e[0]+e[1]*e[1]}function PS(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&&(TS(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=TA([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 IS={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}}},RS={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){IS.transition(e,t,i)},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{points:n}}};function ES(e,t){return Math.abs(e-t)}function Ui(e,t){let i=ES(e[0],t[0]),n=ES(e[1],t[1]);return Math.sqrt(Math.pow(i,2)+Math.pow(n,2))}function uf(e,t){return[e[0]-t[0],e[1]-t[1]]}function IA(e,t){return e[0]*t[0]+e[1]*t[1]}function _S(e){return e[0]*e[0]+e[1]*e[1]}function uc(e,t){return _S(uf(e,t))}function MS(e,t){let i,n,o,a;var l=function(v,x,A,P,T){if(P<=A+1)return;let E=A,j=0,F=v*v;i=[x[A],x[P]],n=uf(i[1],i[0]);let k=_S(n),M,O,$,ee,L;for(let ie=A+1;ie<P;ie++)M=uf(x[ie],i[0]),ee=IA(M,n),ee<=0?L=uc(x[ie],i[0]):k<=ee?L=uc(x[ie],i[1]):($=ee/k,O=[i[0][0]+$*n[0],i[0][1]+$*n[1]],L=uc(x[ie],O)),!(L<=j)&&(E=ie,j=L);j>F&&(T[E]=1,l(v,x,A,E,T),l(v,x,E,P,T))};let c=e.length,p=[],m,f,y,S,b=t*t;for(o=[],a=[],o[0]=e[0],m=f=1,S=0;m<c;m++)uc(e[m],e[S])<b||(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 RA={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 S=c.indexOf(y)!==-1,b=l[y];S?b.length===6?p.push([b[0]+m,b[1]+f,b[2],b[3],b[4],b[5]]):p.push([b[0]+m,b[1]+f]):p.push(b)}t.transitionPoints=p},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,{points:n}}},AS=10,_A={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<AS*AS)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}}},OS={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}}},MA={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]}))}},kS={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 Ui(e[0],o)<i.proximity}if(n===t.polygon.points.length-1){let o=t.polygon.points[0];return Ui(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}}},OA={type:"deselect-draw",label:"Deselect draw",trigger:{type:"key",key:"Escape"},isValid(e,t,i){return!0},commit(e,t,i){return{selectedPoints:[]}}},kA={type:"select-shape",label:"Select shape",trigger:{type:"click"},isValid(e,t,i){return RS.isValid(e,t,i)},commit(e,t,i){return{selectedPoints:t.polygon.points.map((n,o)=>o)}}},LA={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:[]}}},zA={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],b=[l.x+l.width,l.y],v=[l.x,l.y+l.height],x=["ne","nw","se","sw"],A=[Ui(e[0],b),Ui(e[0],S),Ui(e[0],y),Ui(e[0],v)],P=Math.min(...A);if(A[0]<o||A[1]<o||A[2]<o||A[3]<o){(P>i.proximity||i.Meta)&&(t.transitionRotate=!0);let T=A.indexOf(Math.min(...A));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=[Ui(e[0],c),Ui(e[0],l),Ui(e[0],a),Ui(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]),A=i.Shift,P=Math.PI/(i.Alt?4:12),T=x-v;A&&(T=Math.round(T/P)*P);let E=Math.cos(T),j=Math.sin(T),F=[];for(let k of t.polygon.points){let M=k[0]-o[0],O=k[1]-o[1],$=M*E-O*j,ee=M*j+O*E,L=$+o[0],ie=ee+o[1];if(k.length===6){F.push([L,ie,k[2],k[3],k[4],k[5]]);continue}F.push([L,ie])}t.transitionPoints=F,hc({points:F,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],A=v[1]-o[1],P=x*f,T=A*y,E=P+o[0],j=T+o[1];if(v.length===6){S.push([E,j,v[2],v[3],v[4],v[5]]);continue}S.push([E,j])}t.transitionPoints=S;let b={points:S,iedges:null,boundingBox:null,bezierLines:[],isBezier:!1};hc(b),t.transitionBoundingBox=b.boundingBox},commit(e,t,i){let n=t.transitionPoints;return t.transitionPoints=null,t.transitionBoundingBox=null,t.transitionRotate=!1,{points:n}}},FA={type:"cut-line",label:"Add new point",trigger:{type:"click"},modifiers:{Shift:"Cut line"},isValid(e,t,i){return OS.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}}},NA={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}}}},BA={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,DA={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)}}},jA={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)}}},VA={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})}}},UA={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})}}},HA={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}}},WA={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=MS(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]}}},qA={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 b=[],v=0;for(let x of o.points)b.push(v),c.push([a+(x[0]-p)/S,l+(x[1]-m)/S]),v++;return t.transitionPoints=c,{isOpen:!1,selectedPoints:b,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,b=y-m-32;if(i.Shift){let T=n.width/n.height;Math.abs(n.width/S)>Math.abs(n.height/b)?b=S/T:S=b*T}let v=(n.width+S)/n.width,x=(n.height+b)/n.height,A=[];for(let T of t.polygon.points){let E=T[0]-o[0],j=T[1]-o[1],F=E*v,k=j*x,M=F+o[0],O=k+o[1];if(T.length===6){A.push([M,O,T[2],T[3],T[4],T[5]]);continue}A.push([M,O])}t.transitionPoints=A;let P={points:A,iedges:null,boundingBox:null,bezierLines:[],isBezier:!1};hc(P),t.transitionBoundingBox=P.boundingBox},commit(e,t,i){return{isOpen:!1,points:t.transitionPoints}}},QA={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 kS.commit(e,t,i)}},$A={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,b=f/S;y/S>b&&(b=y/S),a-=f/b/2,l-=y/b/2;let v=0;for(let x of o.points)c.push([a+(x[0]-p)/b,l+(x[1]-m)/b]),v++;return{isOpen:!1,points:c}}},GA={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}}},YA={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 LS(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,A){v&&x.transitionBoundingBox&&A.transitioning&&(v.setAttribute("x",""+x.transitionBoundingBox.x),v.setAttribute("y",""+x.transitionBoundingBox.y),v.setAttribute("width",""+x.transitionBoundingBox.width),v.setAttribute("height",""+x.transitionBoundingBox.height))}function a(v,x,A){v&&x.polygon.boundingBox&&A.showBoundingBox&&(v.setAttribute("x",""+x.polygon.boundingBox.x),v.setAttribute("y",""+x.polygon.boundingBox.y),v.setAttribute("width",""+x.polygon.boundingBox.width),v.setAttribute("height",""+x.polygon.boundingBox.height))}function l(v,x,A){if(v&&x.polygon.boundingBox&&A.showBoundingBox){let P=x.transitionBoundingBox||x.polygon.boundingBox;P.rotation?(v.style.transformOrigin=`${P.x+P.width/2}px ${P.y+P.height/2}px`,v.style.transform=`rotate(${Math.round(100*P.rotation*(180/Math.PI))/100}deg)`):v.style.transform="",v.setAttribute("points",[[P.x,P.y],[P.x+P.width,P.y],[P.x+P.width,P.y+P.height],[P.x,P.y+P.height]].map(T=>T.join(",")).join(" "))}}function c(v,x,A){v&&x.transitionPoints&&A.transitioning&&v.setAttribute("points",x.transitionPoints.map(P=>P.join(",")).join(" "))}function p(v,x,A){v&&x.closestLinePoint&&A.hasClosestLine&&(v.setAttribute("cx",""+x.closestLinePoint[0]),v.setAttribute("cy",""+x.closestLinePoint[1]),v.setAttribute("fill",x.closestLineDistance<t?i.selected:i.unselected),v.setAttribute("stroke",x.closestLineDistance<t?n.selected:n.unselected))}function m(v,x,A){v&&x.closestLinePoint&&A.hasClosestLine&&v.setAttribute("transform",`translate(${x.closestLinePoint[0]}, ${x.closestLinePoint[1]})`)}function f(v,x,A){v&&x.selectionBox&&A.transitionIntentType==="select-multiple-points"&&(v.setAttribute("x",""+x.selectionBox.x),v.setAttribute("y",""+x.selectionBox.y),v.setAttribute("width",""+x.selectionBox.width),v.setAttribute("height",""+x.selectionBox.height))}function y(v,x,A){if(v&&x.pointer&&x.selectedPoints.length)if(A.actionIntentType==="close-shape"||A.actionIntentType==="close-shape-line"){let P=x.polygon.points[0],T=x.polygon.points[x.polygon.points.length-1];P&&T&&v.setAttribute("points",`${P.join(",")} ${T.join(",")}`)}else if(x.line)v.setAttribute("points",`${x.line[0].join(",")} ${x.line[1].join(",")}`);else{let P=x.polygon.points[x.selectedPoints[0]];P&&P.length&&v.setAttribute("points",`${x.pointer[0]},${x.pointer[1]} ${P.join(",")}`)}}function S(v,x,A,P=3){v&&x.transitionDraw.length&&v.setAttribute("points",MS(x.transitionDraw,P*3).map(T=>T.join(",")).join(" "))}function b(v,x){v&&x.lineBox&&v.setAttribute("points",x.lineBox.map(A=>A.join(",")).join(" "))}return{updateTransitionBoundingBox:o,updateClosestLinePointTransform:m,updateBoundingBoxPolygon:l,updateBoundingBox:a,updateTransitionShape:c,updateClosestLinePoint:p,updateSelectBox:f,updatePointLine:y,updateDrawPreview:S,updateLineBox:b}}var XA=typeof window<"u"?window.requestAnimationFrame:e=>setTimeout(e,16),KA=typeof window<"u"?window.cancelAnimationFrame:e=>clearTimeout(e),df=[qA,zA,RA,GA,OS,RS,IS,WA,NA],ZA=df.length,cf=[YA,$A,kS,_A,QA,FA,MA,kA,LA,BA],dc=[OA,DA,jA,VA,UA,HA],Sa={};df.forEach(e=>{Sa[e.type]=e});cf.forEach(e=>{Sa[e.type]=e});dc.forEach(e=>{Sa[e.type]=e});var cc=20;function zS(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(D){TS(D),D.isBezier&&c({bezierLines:D.bezierLines}),hc(D),o.shouldUpdate=!0}l(n.polygon);function c(D){let Q=Object.keys(D);if(Q.length===0)return;let he=o.nextSlowState||n.slowState,fe=!1;if(Q.length===1&&Q[0]==="validIntentKeys"&&he.validIntentKeys){let me=Object.keys(he.validIntentKeys),He=Object.keys(D.validIntentKeys||{});if(me.length===He.length){for(let We of me)he.validIntentKeys[We]!==D.validIntentKeys[We]&&(fe=!0);if(!fe)return}}if(!(Q.length===1&&Q.includes("hasClosestLine")&&D.hasClosestLine===he.hasClosestLine)){if(o.nextSlowState){o.nextSlowState={...o.nextSlowState,...D};return}o.nextSlowState={...n.slowState,...D}}}function p(D,Q=!1){o.time+=D,m(),f(),P(),A(),x(),T(),j(),E(),o.renderFunc(n,n.slowState,D),!Q&&(o.animationFrame=XA(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 D=Object.keys(n.slowState),Q={},he=!1;for(let fe of D){let me=n.slowState[fe],He=o.nextSlowState[fe];me!==He?(he=!0,Q[fe]=He):Q[fe]=me}he&&(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(D){n.selectedPoints=D.selectedPoints,c({selectedPoints:D.selectedPoints}),n.polygon.points=D.points,n.polygon.boundingBox=null,n.polygon.iedges=null,n.polygon.isBezier=null,l(n.polygon),c({closestPoint:null}),(D.isOpen===!0||D.isOpen===!1)&&(n.isOpen=D.isOpen,o.shouldUpdate=!0)}function S(){if(o.undoStackPointer===-1)return;o.undoStackPointer--;let D=o.undoStack[o.undoStackPointer];y(D)}function b(){if(o.undoStackPointer===o.undoStack.length-1)return;o.undoStackPointer++;let D=o.undoStack[o.undoStackPointer];y(D)}function v(D){o.undoStackPointer++,o.undoStack[o.undoStackPointer]=D,o.undoStack.length>15&&(o.undoStack.shift(),o.undoStackPointer--)}function x(){if(!n.pointer||n.slowState.noShape){c({pointerInsideShape:!1});return}let[D,Q]=n.pointer,he=n.polygon.points,fe=n.polygon.boundingBox;if(!fe){c({pointerInsideShape:!1});return}if(D<fe.x||D>fe.x+fe.width||Q<fe.y||Q>fe.height+fe.y){c({pointerInsideShape:!1});return}let me=!1;for(let He=0,We=he.length-1;He<he.length;We=He++)he[He][1]>Q!=he[We][1]>Q&&D<(he[We][0]-he[He][0])*(Q-he[He][1])/(he[We][1]-he[He][1])+he[He][0]&&(me=!me);c({pointerInsideShape:me})}function A(){if(n.slowState.noShape||!n.pointer||n.slowState.transitioning||!n.polygon.points||n.polygon.points.length===0)return;let[D,Q]=n.pointer,he=n.polygon.points.map((fe,me)=>{let He=fe[0]-D,We=fe[1]-Q;return[He*He+We*We,me]}).sort((fe,me)=>fe[0]-me[0]);he.length&&c({closestPoint:he[0][1]})}function P(){if(!n.pointer||n.slowState.transitioning)return;if(n.slowState.noShape){n.closestLineIndex=-1,n.closestLinePoint=null,n.closestLineDistance=0;return}let[D,Q,he,fe]=PS(n.polygon,n.pointer),me=Pe()*Pe();Q<me&&(!n.isOpen||n.slowState.lineMode||n.polygon.points.length-1!==fe)?(n.closestLinePoint=D,n.closestLineDistance=Math.sqrt(Q),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 D=!1;for(let fe=0;fe<ZA;fe++){let me=df[fe];if(me.isValid(a.isPressed?[a.lastPress]:[n.pointer],n,F())){if(o.transitionIntent===me){D=!0;break}c({transitionIntentType:me.type}),o.transitionIntent=me,D=!0;break}}D||o.transitionIntent&&(o.transitionIntent=null,c({transitionIntentType:null}));let Q=!1;for(let fe=0;fe<cf.length;fe++){let me=cf[fe];if(M(me)){if(o.actionIntent===me){Q=!0;break}c({actionIntentType:me.type}),o.actionIntent=me,Q=!0;break}}Q||o.actionIntent&&(o.actionIntent=null,c({actionIntentType:null}));let he={};for(let fe=0;fe<dc.length;fe++){let me=dc[fe];me.trigger.type==="key"&&M(me)&&(he[me.trigger.key]=me.label)}c({validIntentKeys:he})}function E(){let D=n.pointer;if(n.lineBox=null,!D||$()||n.polygon.points.length!==2)return;let[Q,he]=D,[fe,me]=n.polygon.points[0],[He,We]=n.polygon.points[1],[Ae,qe,J,Te]=PS(n.polygon,D);if(!Ae)return;let xe=Q-Ae[0],Ai=he-Ae[1],ti=[fe,me],zt=[He,We],fi=[zt[0]+xe,zt[1]+Ai],Ti=[ti[0]+xe,ti[1]+Ai];n.lineBox=[ti,zt,fi,Ti]}function j(){let D=n.pointer;if(!D||!$()||n.slowState.noShape)return;let Q=n.selectedPoints[0];if(n.line=[n.polygon.points[Q],D],n.slowState.modifiers.Shift){let he=0;if(n.polygon.points.length>1){let xe=n.selectedPoints[0];xe===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[xe-1][1]-n.polygon.points[xe][1],n.polygon.points[xe-1][0]-n.polygon.points[xe][0])}let fe=D[0]-n.polygon.points[Q][0],me=D[1]-n.polygon.points[Q][1],He=Math.atan2(me,fe),We=Math.PI/4,Ae=Math.round((He-he)/We)*We+he,qe=Ui(n.polygon.points[Q],D),J=Math.cos(Ae)*qe+n.polygon.points[Q][0],Te=Math.sin(Ae)*qe+n.polygon.points[Q][1];n.line[1]=[J,Te]}}function F(){return n.slowState.modifiers}function k(D){let Q=D.commit([a.lastPress],n,F());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 M(D){return D.isValid(n.pointer?[n.pointer]:[],n,F())}function O(D){D==="Delete"&&(D="Backspace");for(let Q of dc)if(!(Q.trigger.type!=="key"||Q.trigger.key!==D)&&M(Q))return k(Q),!0}function $(){let D=n.polygon.points,Q=n.pointer;if(!n.isOpen||!D.length||n.selectedPoints.length!==1||!Q)return!1;let he=n.selectedPoints[0],fe=he===0,me=he===D.length-1;return fe||me}let ee={reset(){c({modifiers:{Alt:!1,Shift:!1,Meta:!1,proximity:cc}})},getForType(D){let Q={};if(!D)return Q;let he=Sa[D];return!he||!he.modifiers?Q:he.modifiers},set(D){D!=="Shift"&&D!=="Alt"&&D!=="Meta"||c({modifiers:{...o.nextSlowState?.modifiers||n.slowState.modifiers,[D]:!0}})},unset(D){D!=="Shift"&&D!=="Alt"&&D!=="Meta"||c({modifiers:{...o.nextSlowState?.modifiers||n.slowState.modifiers,[D]:!1}})}},L={set(D){c({selectedStamp:D})},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]]}})}},ie={down(D){return D=="Shift"||D=="Alt"||D=="Meta"?(ee.set(D),!0):D==="Control"?(ee.set("Meta"),!0):D==="z"&&n.slowState.modifiers.Meta?(n.slowState.modifiers.Shift?b():S(),!0):O(D)},up(D){if(D==="Control"){ee.unset("Meta");return}D!=="Shift"&&D!=="Alt"&&D!=="Meta"||ee.unset(D)}};function Oe(D){n.scale=D,c({modifiers:{...o.nextSlowState?.modifiers||n.slowState.modifiers,proximity:D*cc}})}function Pe(){return cc*n.scale}let be={set:D=>{o.renderFunc=D},start:(D,Q)=>{o.startTime=performance.now(),o.time=0,D&&(o.renderFunc=D),Q&&(Q(n.slowState),o.setStateFunc=Q),p(0)},stop:()=>{o.animationFrame&&(KA(o.animationFrame),o.animationFrame=0)},step:(D=16)=>{p(D)}};function ye(D){let Q=D[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(D,n,F());else if(a.isPressed&&!a.noTransition&&(!a.isClicking||Ui(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,F());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,F())}else a.noTransition=!0}}function Xe(){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 Ue(){a.isClicking=!0,a.isPressed=!0,a.lastPress=n.pointer,a.pressTimeout=setTimeout(()=>{a.isPressed&&(a.isClicking=!1)},250)}function ht(){n.slowState.transitioning?(c({transitioning:!1}),o.transitionIntent&&k(o.transitionIntent),o.transitionIntent=null,c({transitionIntentType:null})):a.isClicking&&(o.actionIntent&&k(o.actionIntent),o.actionIntent=null,c({actionIntentType:null})),a.isPressed=!1,a.isClicking=!1,a.lastPress=null,a.noTransition=!1,clearTimeout(a.pressTimeout)}function Ne(D){n.polygon.points=D?.points||[],n.polygon.boundingBox=null,n.polygon.iedges=null,n.isOpen=D?.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:D===null,shapeId:D?.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 G(D){if(!D)return"";let Q=Sa[D];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 le(){n.slowState.lineMode?c({lineMode:!1,lineBoxMode:!1,drawMode:!1}):c({lineMode:!0,lineBoxMode:!1,drawMode:!1})}function Be(){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:ee,stamps:L,key:ie,setScale:Oe,clock:be,pointer:ye,blur:Xe,pointerDown:Ue,pointerUp:ht,setShape:Ne,modes:{toggleLineBoxMode:Be,toggleLineMode:le,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:G}}function hf(e,t,i){let[n,o]=(0,ts.useState)({}),a=(0,ts.useMemo)(()=>zS(e,i),[]);return(0,ts.useEffect)(()=>(a.clock.start(t,o),()=>{a.clock.stop()}),[]),{state:n,helper:a}}var tt=I(q(),1),fr=LS();function pf(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)(),b=(0,ei.useRef)(),[v,x]=(0,ei.useState)(null),[A,P]=(0,ei.useState)(!1),{helper:T,state:E}=hf(n,(L,ie)=>{fr.updateTransitionBoundingBox(c.current,L,ie),fr.updateBoundingBoxPolygon(l.current,L,ie),fr.updateTransitionShape(y.current,L,ie),fr.updateClosestLinePointTransform(m.current,L,ie),fr.updateSelectBox(p.current,L,ie),fr.updatePointLine(S.current,L,ie),fr.updateDrawPreview(f.current,L,ie,3),fr.updateLineBox(b.current,L),x(L.transitionDirection),P(L.transitionRotate)},o);(0,ei.useEffect)(()=>{T.setShape(n||null)},t),(0,ei.useEffect)(()=>{let L=()=>{T.modifiers.reset()};return document.addEventListener("mouseleave",L),()=>{document.removeEventListener("mouseleave",L)}},[]);let j=(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})})]}),F=n?n.open?"polyline":"polygon":null,k=!E.showBoundingBox&&E.closestPoint!==null&&E.actionIntentType==="select-point",M=E.actionIntentType==="add-open-point",O=E.transitionIntentType==="split-line",$=E.transitioning&&E.selectedStamp&&E.transitionIntentType==="stamp-shape",ee=n&&F?(0,tt.jsxs)(tt.Fragment,{children:[(0,tt.jsx)(F,{fill:!E.transitioning&&E.showBoundingBox?"rgba(255, 0, 0, .5)":"none",strokeWidth:$?0:2,stroke:a?"transparent":"#000",points:n.points.map(L=>L.join(",")).join(" "),vectorEffect:"non-scaling-stroke",markerStart:E.showBoundingBox?void 0:"url(#dot)",markerMid:E.showBoundingBox?void 0:"url(#dot)",markerEnd:E.showBoundingBox?void 0:"url(#dot)",style:{pointerEvents:"none"}}),E.lineBoxMode&&E.actionIntentType==="close-line-box"?(0,tt.jsx)("polygon",{fill:"rgba(255, 0, 0, .4)",ref:b,stroke:"#000",strokeWidth:2,vectorEffect:"non-scaling-stroke"}):null,E.transitionIntentType==="draw-shape"&&E.transitioning?(0,tt.jsx)("polyline",{ref:f,fill:"none",stroke:"rgba(255, 0, 0, .5)",strokeWidth:2,vectorEffect:"non-scaling-stroke"}):null,!E.showBoundingBox&&E.selectedPoints&&E.selectedPoints.length?(0,tt.jsx)("polyline",{strokeWidth:2,vectorEffect:"non-scaling-stroke",stroke:"transparent",markerStart:"url(#selected)",markerMid:"url(#selected)",markerEnd:"url(#selected)",fill:"transparent",points:n.points.filter((L,ie)=>E.selectedPoints?.includes(ie)).map(L=>L.join(",")).join(" ")}):null,k&&E.closestPoint!==null&&n.points[E.closestPoint]?(0,tt.jsx)("polyline",{strokeWidth:2,vectorEffect:"non-scaling-stroke",stroke:"transparent",markerStart:"url(#selected)",markerMid:"url(#selected)",markerEnd:"url(#selected)",fill:"transparent",points:`${n.points[E.closestPoint][0]},${n.points[E.closestPoint][1]}`}):null,!E.transitioning&&(E.actionIntentType==="add-open-point"||E.actionIntentType==="close-shape"||E.actionIntentType==="close-shape-line")?(0,tt.jsx)("polyline",{stroke:"#000",ref:S,strokeWidth:E.actionIntentType==="close-shape"?2:1,vectorEffect:"non-scaling-stroke"}):null,E.hasClosestLine&&(!E.transitionIntentType||E.transitionIntentType==="split-line")?(0,tt.jsx)("g",{ref:m,children:(0,tt.jsx)("polyline",{style:{opacity:.5},markerStart:"url(#dot)",points:"0,0 10,10",vectorEffect:"non-scaling-stroke",fill:"transparent",strokeWidth:2})}):null,E.transitioning?(0,tt.jsx)(F,{ref:y,fill:n.open?"none":"rgba(255, 0, 0, .5)",stroke:"rgba(255, 0, 0, .5)",strokeWidth:n.open?2:0}):null,E.transitioning&&E.transitionIntentType==="select-multiple-points"?(0,tt.jsx)("rect",{ref:p,fill:"rgba(255, 255, 255, .3)",strokeWidth:1,stroke:"rgba(0,0,0,.2)",vectorEffect:"non-scaling-stroke"}):null,E.showBoundingBox?null:(0,tt.jsx)("g",{name:"controls",children:!1}),E.showBoundingBox&&!$?(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:E,isAddingPoint:M,isSplitting:O,isStamping:$,isHoveringPoint:k,transitionDirection:v,transitionRotate:A,defs:j,editor:ee}}var fc=I(W(),1),FS=I(Is(),1),pi=I(q(),1),NS=[{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 ff(e){let t=e.theme||NS[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:b}=pf({currentShape:e.shape||null,onChange:e.updateShape,image:e.image,hideShapeLines:!0},[]),v=E=>{o.pointer([[~~E.atlas.x,~~E.atlas.y]])};(0,fc.useEffect)(()=>{let E=j=>{o.key.up(j.key)};return document.addEventListener("keyup",E),()=>{document.removeEventListener("keyup",E)}},[]),(0,fc.useEffect)(()=>{let E=j=>{o.key.down(j.key)};return document.addEventListener("keydown",E),()=>{document.removeEventListener("keydown",E)}},[]),(0,fc.useEffect)(()=>{let E=[];return p&&E.push(`atlas-cursor-${p}`),c.actionIntentType==="cut-line"&&c.modifiers?.Shift&&E.push("atlas-cursor-cut"),(y||c.transitionIntentType==="move-shape"||c.transitionIntentType==="move-point")&&E.push("atlas-cursor-move"),S&&E.push("atlas-cursor-crosshair"),m&&E.push("atlas-cursor-copy"),f&&E.push("atlas-cursor-rotate"),c.transitionIntentType==="draw-shape"&&E.push("atlas-cursor-draw"),i?.canvas&&i.canvas.classList.add(...E),()=>{i?.canvas&&i.canvas.classList.remove(...E)}},[i?.canvas,S,y,m,c.modifiers?.Shift,c.actionIntentType,c.transitionIntentType,p,f]);let x=e.shape&&e.shape?.points.length===0,A=e.renderControls?e.renderControls(o,c,x):null,P=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:b?{}:t.outer}),(0,pi.jsx)(T,{open:e.shape.open,points:e.shape.points,relativeStyle:!0,style:b?{}:t.inner})]}):null,(0,pi.jsxs)(Sn,{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]})}),P?(0,FS.createPortal)(A,P,"controls"):null]})]})})}var mf=I(q(),1);function JA(e){let t=je(),i=e.annotationBucket,n=e.readOnly,o=e.id,{onClick:a,isHighlighted:l}=rf(e.id),c=lf(),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,mf.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,mf.jsx)(ff,{image:t,shape:e.polygon||{id:e.id,open:!0,points:[]},updateShape:e.updatePolygon,theme:e.theme,controlsHtmlId:e.controlsHtmlId,renderControls:e.renderControls})}var BS=I(q(),1);function eT({annotation:e,children:t}){return(0,BS.jsx)(Yt,{value:{annotation:e},children:t})}var DS=I(q(),1);function tT({annotationPage:e,children:t}){return(0,DS.jsx)(Yt,{value:{annotationPage:e},children:t})}var jS=I(q(),1);function iT({collection:e,children:t}){return(0,jS.jsx)(Yt,{value:{collection:e},children:t})}function nT(e,t={}){return eo(t)}var mr=I(W(),1);function rT({canvasId:e}={}){let t=au(),i=Wr(),n=(0,mr.useMemo)(()=>e?[e]:t?[t.id]:i.map(m=>m.id),[e,t,i]),[o,a]=(0,mr.useState)({}),l=Ks();(0,mr.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,mr.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,mr.useMemo)(()=>({makeChoice:(m,f)=>{l.emit("make-choice",{choiceId:m,...f})}}),[l]);return{choices:c,actions:p}}function oT(e,t=!1){}function sT(e){let i=qt().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 VS=I(W(),1);function aT(e,t=[]){let{id:i,selector:n}=e,o=qt(),a=i||o.collection,l=Fe(c=>a?c.iiif.entities.Collection[a]:void 0,[a]);return(0,VS.useMemo)(()=>{if(l)return n?n(l):l},[l,n,...t])}var mc=I(W(),1);function lT(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 uT(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 Pn=I(W(),1);function gf({cacheKey:e}={}){let t=je(),i=eo(),n=Me(),o=on(),[a,l]=(0,Pn.useState)(void 0),[c,p]=(0,Pn.useState)(!1),[m,f]=(0,Pn.useState)("idle"),[y,S]=(0,Pn.useState)(void 0),b=t?t.id:"undefined",v=(0,Pn.useMemo)(()=>{try{if(t&&i.length){let A=i[0],P=n.get(A.body[0]),E=_r(P)[0];return E&&o.loadServiceSync({id:E.id||E["@id"],width:E.width||t.width,height:E.height||t.height})||void 0}}catch(A){console.error(A)}},[b,e,t]),x=m==="success"&&a?a:v;return(0,Pn.useEffect)(()=>{(async()=>{try{if(t&&i.length){let A=i[0],P=n.get(A.body[0]),E=_r(P)[0];if(!E)return;p(!0),f("loading");try{let j=await o.loadService({id:E.id||E["@id"],width:E.width||t.width,height:E.height||t.height})||void 0;l(j),f("success"),p(!1)}catch(j){f("error"),S(j)}}}catch(A){f("error"),S(A)}})()},[b,e]),(0,Pn.useMemo)(()=>({data:x,isFetching:c,status:m,error:y}),[x,c,m,y])}function cT(){let e=gf();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 US=I(W(),1);function dT(){let e=Me();return(0,US.useMemo)(()=>Xr(e),[e])}return o1(hT);})();
123
123
  /*! Bundled license information:
124
124
 
125
125
  normalize-wheel/src/isEventSupported.js: