route-graphics 1.48.0 → 1.48.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/RouteGraphics.js +1 -1
- package/package.json +1 -1
package/dist/RouteGraphics.js
CHANGED
|
@@ -1667,7 +1667,7 @@ void main(void)
|
|
|
1667
1667
|
`).replace(/\r/g,`
|
|
1668
1668
|
`),IZ=(t,e,r)=>{let n=Math.max(0,t-e);return r==="center"?n/2:r==="right"?n:0},ez=t=>new Mt(ln(t,{includeShadow:!1})),ci=(t,e)=>je.measureText(t,ez(e)).width,Ac=(t,e,r)=>Math.max(e,Math.min(r,t)),JH=({text:t,style:e,targetX:r})=>{let n=Number.isFinite(r)?r:0;if(n<=0||t.length===0)return 0;let i=ci(t,e);if(n>=i)return t.length;for(let o=1;o<=t.length;o+=1){let s=ci(t.slice(0,o-1),e),a=ci(t.slice(0,o),e),c=s+(a-s)/2;if(n<c)return o-1}return t.length},ZH=(t,e)=>{let r=Math.max(t.x,e.x),n=Math.max(t.y,e.y),i=Math.min(t.x+t.width,e.x+e.width),o=Math.min(t.y+t.height,e.y+e.height),s=i-r,a=o-n;return s<=0||a<=0?null:{x:r,y:n,width:s,height:a}},kZ=t=>{let e=t?.mask;if(!e?.getBounds)return null;let r=e.getBounds();return!r||r.width<=0||r.height<=0?null:{x:r.x,y:r.y,width:r.width,height:r.height}},RZ=({app:t,container:e,fallbackElement:r})=>{if(!e||e.destroyed)return null;let n=e.getBounds?.(),i=n?{x:n.x,y:n.y,width:n.width,height:n.height}:{x:e.x??r.x,y:e.y??r.y,width:r.width,height:r.height};if(i.width<=0||i.height<=0)return null;let o={...i},s=e;for(;s;){if(s.visible===!1||s.renderable===!1)return{fullBounds:i,visibleBounds:null};let c=kZ(s);if(c&&(o=ZH(o,c),!o))return{fullBounds:i,visibleBounds:null};s=s.parent}let a=t?.renderer?{x:0,y:0,width:t.renderer.width,height:t.renderer.height}:null;return a&&(o=ZH(o,a)),{fullBounds:i,visibleBounds:o}},BZ=(t,e)=>e?{top:Math.max(0,e.y-t.y),right:Math.max(0,t.x+t.width-(e.x+e.width)),bottom:Math.max(0,t.y+t.height-(e.y+e.height)),left:Math.max(0,e.x-t.x)}:{top:t.height,right:0,bottom:0,left:0},FZ=({displayedValue:t,textStyle:e})=>{let r=ci(t,e);return{lines:[{text:t,width:r,startIndex:0}],lineHeight:e.lineHeight,totalHeight:e.lineHeight,maxLineWidth:r,textValue:t}},DZ=({displayedValue:t,textStyle:e})=>{let r=If(t),n=r.split(`
|
|
1669
1669
|
`),i=n.map((a,c)=>({text:a,width:ci(a,e),startIndex:c===0?0:n.slice(0,c).reduce((l,u)=>l+u.length+1,0)})),o=i.reduce((a,c)=>Math.max(a,c.width),0),s=e.lineHeight;return{lines:i,lineHeight:s,totalHeight:i.length*s,maxLineWidth:o,textValue:r}},OZ=({element:t,displayedValue:e,textStyle:r})=>t.multiline?DZ({displayedValue:e,textStyle:r}):FZ({displayedValue:e,textStyle:r}),Ub=({value:t,index:e})=>{let r=If(t),n=Ac(e,0,r.length),i=0,o=0;for(let s=0;s<n;s+=1){if(r[s]===`
|
|
1670
|
-
`){i+=1,o=0;continue}o+=1}return{line:i,column:o}},hP=({contentWidth:t,lineWidth:e,align:r})=>IZ(t,e,r),LZ=t=>new cn({label:t,text:""}),UZ=(t,e)=>{for(;t.textNodes.length<e;){let r=LZ(`${t.element.id}-text-line-${t.textNodes.length}`);t.text.addChild(r),t.textNodes.push(r)}for(;t.textNodes.length>e;){let r=t.textNodes.pop();r?.removeFromParent(),r?.destroy()}},$b=({contentWidth:t,lineWidth:e,align:r,scrollOffsetX:n})=>e>t?-n:hP({contentWidth:t,lineWidth:e,align:r}),tz=({contentWidth:t,lineWidth:e,align:r})=>hP({contentWidth:t,lineWidth:e,align:r}),Gb=({padding:t,contentWidth:e,lineWidth:r,align:n,scrollOffsetX:i})=>t.left+tz({contentWidth:e,lineWidth:r,align:n})-i,rz=t=>{let e=new Lt;e.label=`${t.id}-background`,e.on("destroyed",()=>{rc(e)});let r=new Lt;r.label=`${t.id}-selection`;let n=new _e;n.label=`${t.id}-text`;let i=new cn({label:`${t.id}-placeholder`,text:t.placeholder}),o=new Lt;o.label=`${t.id}-caret`;let s=new Lt;return s.label=`${t.id}-clip`,n.mask=s,i.mask=s,r.mask=s,o.mask=s,{background:e,selection:r,text:n,placeholder:i,caret:o,clip:s}},nz=({app:t,container:e,display:r,element:n})=>({app:t,container:e,...r,value:If(n.value??""),selectionStart:If(n.value??"").length,selectionEnd:If(n.value??"").length,focused:!1,nativeFocused:!1,composing:!1,blinkVisible:!0,blinkTick:0,scrollOffsetX:0,scrollOffsetY:0,selectionAnchor:null,draggingSelection:!1,textNodes:[],layoutState:null,lastExternalValue:If(n.value??""),tickerListener:null,element:n}),Hb=(t,e,r)=>{let n=RZ({app:t,container:e,fallbackElement:r});if(!n)return null;let{fullBounds:i,visibleBounds:o}=n,s=BZ(i,o);return{x:i.x,y:i.y,width:i.width,height:i.height,visible:!!o&&e.visible!==!1&&e.renderable!==!1,clipInsets:s}},zb=(t,e,r)=>{if(!t||t.destroyed===!0||typeof t.toLocal!="function"||!Number.isFinite(r?.x)||!Number.isFinite(r?.y)||!Number.isFinite(e?.width)||!Number.isFinite(e?.height)||e.width<=0||e.height<=0)return!1;let n=t.toLocal(r);return n.x>=0&&n.x<=e.width&&n.y>=0&&n.y<=e.height},Mr=(t,e)=>{let r=dP(e.padding),n=Math.max(0,e.width-r.left-r.right),i=Math.max(0,e.height-r.top-r.bottom),o=Nb(e.textStyle,{wordWrapWidth:n}),s=Nb({...e.textStyle,fill:"#7A7A7A"},{wordWrapWidth:n}),a=String(t.value??""),c=OZ({element:e,displayedValue:a,textStyle:o}),l=o.align??"left",u=Ac(Math.min(t.selectionStart,t.selectionEnd),0,a.length),d=Ac(Math.max(t.selectionStart,t.selectionEnd),0,a.length),h=Ac(t.selectionEnd??a.length,0,a.length);if(t.layoutState={padding:r,contentWidth:n,contentHeight:i,textStyle:o,placeholderStyle:s,displayedValue:a,layout:c,align:l},UZ(t,c.lines.length),t.textNodes.forEach((b,w)=>{let S=c.lines[w]??{text:"",width:0};Zo(b,o),b.text=S.text}),Zo(t.placeholder,s),t.placeholder.text=e.placeholder??"",e.multiline){let b=Ub({value:a,index:h}),w=c.lines[b.line]??c.lines.at(-1),S=w?.width??0,x=ci((w?.text??"").slice(0,b.column),o),T=c.totalHeight,v=b.line*c.lineHeight,C=v+c.lineHeight;if(S<=n)t.scrollOffsetX=0;else if(t.focused){let F=Math.max(0,S-n);x-t.scrollOffsetX>n-8?t.scrollOffsetX=x-(n-8):x-t.scrollOffsetX<8&&(t.scrollOffsetX=x-8),t.scrollOffsetX=Ac(t.scrollOffsetX,0,F)}else t.scrollOffsetX=0;if(T<=i)t.scrollOffsetY=0;else if(t.focused){let M=Math.max(0,T-i);C-t.scrollOffsetY>i?t.scrollOffsetY=C-i:v-t.scrollOffsetY<0&&(t.scrollOffsetY=v),t.scrollOffsetY=Ac(t.scrollOffsetY,0,M)}else t.scrollOffsetY=0}else{let b=c.lines[0],w=ci(b.text.slice(0,h),o);if(b.width<=n)t.scrollOffsetX=0;else if(t.focused){let x=Math.max(0,b.width-n);w-t.scrollOffsetX>n-8?t.scrollOffsetX=w-(n-8):w-t.scrollOffsetX<8&&(t.scrollOffsetX=w-8),t.scrollOffsetX=Ac(t.scrollOffsetX,0,x)}else t.scrollOffsetX=0;t.scrollOffsetY=0}if(e.multiline)t.text.x=r.left-t.scrollOffsetX,t.text.y=r.top-t.scrollOffsetY,t.textNodes.forEach((b,w)=>{let S=c.lines[w]??{width:0};b.x=tz({contentWidth:n,lineWidth:S.width,align:l}),b.y=w*c.lineHeight});else{let b=c.lines[0],w=t.textNodes[0],S=$b({contentWidth:n,lineWidth:b.width,align:l,scrollOffsetX:t.scrollOffsetX});w.x=0,w.y=0,t.text.x=r.left+S,t.text.y=r.top+Math.max(0,(i-w.height)/2)}let f=je.measureText(t.placeholder.text,ez(s));t.placeholder.x=r.left,t.placeholder.y=e.multiline?r.top:r.top+Math.max(0,(i-t.placeholder.height)/2),f.width<=n&&(t.placeholder.x+=hP({contentWidth:n,lineWidth:f.width,align:l})),t.placeholder.visible=t.value.length===0&&t.composing!==!0;let m=()=>{t.background.rect(0,0,e.width,e.height)},p=e.fill!==void 0?e.fill:cP,g=e.border??lP,y=e.focusRing??uP;if(t.background.clear(),m(),t.background.fill(d_(t.background,p,e)),g.width>0&&t.background.stroke({color:g.color,alpha:g.alpha,width:g.width}),t.focused&&y.width>0&&e.disabled!==!0&&(m(),t.background.stroke({color:y.color,alpha:y.alpha,width:y.width})),t.clip.clear(),t.clip.rect(r.left,r.top,n,Math.max(0,i)),t.clip.fill({color:16777215,alpha:1}),t.selection.clear(),t.focused&&u!==d&&e.disabled!==!0){if(e.multiline){let b=Ub({value:a,index:u}),w=Ub({value:a,index:d});for(let S=b.line;S<=w.line;S+=1){let x=c.lines[S];if(!x)continue;let T=S===b.line?b.column:0,v=S===w.line?w.column:x.text.length,C=Gb({padding:r,contentWidth:n,lineWidth:x.width,align:l,scrollOffsetX:t.scrollOffsetX})+ci(x.text.slice(0,T),o),M=Gb({padding:r,contentWidth:n,lineWidth:x.width,align:l,scrollOffsetX:t.scrollOffsetX})+ci(x.text.slice(0,v),o),F=r.top+S*c.lineHeight-t.scrollOffsetY;t.selection.rect(C,F,Math.max(M-C,1),c.lineHeight)}}else{let b=c.lines[0],w=$b({contentWidth:n,lineWidth:b.width,align:l,scrollOffsetX:t.scrollOffsetX}),S=r.left+w+ci(b.text.slice(0,u),o),x=r.left+w+ci(b.text.slice(0,d),o),T=r.top+Math.max(0,(i-t.text.height)/2);t.selection.rect(S,T,Math.max(x-S,1),Math.max(t.text.height,o.lineHeight))}t.selection.fill({color:QH.fill,alpha:QH.alpha})}if(t.caret.clear(),t.focused&&t.selectionStart===t.selectionEnd&&t.blinkVisible!==!1&&e.disabled!==!0){if(e.multiline){let b=Ub({value:a,index:h}),w=c.lines[b.line]??c.lines.at(-1),S=Gb({padding:r,contentWidth:n,lineWidth:w?.width??0,align:l,scrollOffsetX:t.scrollOffsetX})+ci((w?.text??"").slice(0,b.column),o),x=r.top+b.line*c.lineHeight-t.scrollOffsetY;t.caret.rect(S,x,aP.width,c.lineHeight)}else{let b=c.lines[0],w=$b({contentWidth:n,lineWidth:b.width,align:l,scrollOffsetX:t.scrollOffsetX}),S=r.left+w+ci(b.text.slice(0,h),o),x=r.top+Math.max(0,(i-t.text.height)/2);t.caret.rect(S,x,aP.width,Math.max(t.text.height,o.lineHeight))}t.caret.fill({color:aP.fill,alpha:1})}},pP=(t,e)=>{let r=t.layoutState;if(!r)return 0;let{padding:n,contentWidth:i,textStyle:o,displayedValue:s,layout:a,align:c}=r,l=e?.x??0,u=e?.y??0;if(!t.element.multiline){let p=a.lines[0]??{text:s,width:ci(s,o)},g=$b({contentWidth:i,lineWidth:p.width,align:c,scrollOffsetX:t.scrollOffsetX}),y=n.left+g;return JH({text:p.text,style:o,targetX:l-y})}let d=a.lineHeight||o.lineHeight||1,h=Ac(Math.floor((u-n.top+t.scrollOffsetY)/d),0,Math.max(a.lines.length-1,0)),f=a.lines[h]??{text:"",startIndex:0},m=JH({text:f.text,style:o,targetX:l-Gb({padding:n,contentWidth:i,lineWidth:f.width??0,align:c,scrollOffsetX:t.scrollOffsetX})});return f.startIndex+m};var Mc=({eventHandler:t,eventName:e,element:r,eventConfig:n,snapshot:i})=>{!t||!n||t(e,{_event:{id:r.id,value:i.value,selectionStart:i.selectionStart,selectionEnd:i.selectionEnd,composing:i.composing},...n.payload})},$Z=({element:t,runtime:e,eventHandler:r})=>({onValueChange:n=>{e.value=n.value,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,e.lastExternalValue=n.value,Mr(e,t),Mc({eventHandler:r,eventName:"change",element:t,eventConfig:t.change,snapshot:n})},onFocus:n=>{let i=e.nativeFocused===!0;e.nativeFocused=!0,e.focused=!0,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,e.selectionAnchor=n.selectionStart===n.selectionEnd?n.selectionEnd:e.selectionAnchor,e.blinkVisible=!0,e.blinkTick=0,Mr(e,t),!i&&Mc({eventHandler:r,eventName:"focus",element:t,eventConfig:t.focusEvent,snapshot:n})},onBlur:n=>{e.nativeFocused=!1,e.focused=!1,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,e.blinkVisible=!1,e.composing=!1,Mr(e,t),Mc({eventHandler:r,eventName:"blur",element:t,eventConfig:t.blurEvent,snapshot:n})},onSelectionChange:n=>{e.nativeFocused=n.focused,e.focused=n.focused,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,n.selectionStart===n.selectionEnd&&(e.selectionAnchor=n.selectionEnd),Mr(e,t),Mc({eventHandler:r,eventName:"selectionChange",element:t,eventConfig:t.selectionChange,snapshot:n})},...t.submit&&{onSubmit:n=>{Mc({eventHandler:r,eventName:"submit",element:t,eventConfig:t.submit,snapshot:n})}},onCompositionStart:n=>{e.composing=!0,Mr(e,t),Mc({eventHandler:r,eventName:"compositionStart",element:t,eventConfig:t.compositionStart,snapshot:n})},onCompositionUpdate:n=>{e.composing=!0,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,Mr(e,t),Mc({eventHandler:r,eventName:"compositionUpdate",element:t,eventConfig:t.compositionUpdate,snapshot:n})},onCompositionEnd:n=>{e.composing=!1,e.value=n.value,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,Mr(e,t),Mc({eventHandler:r,eventName:"compositionEnd",element:t,eventConfig:t.compositionEnd,snapshot:n})}}),iz=({app:t,parent:e,element:r,animations:n,animationBus:i,completionTracker:o,eventHandler:s,renderContext:a,zIndex:c})=>{if(!t.inputDomBridge?.mount||!t.inputDomBridge?.focus||!t.inputDomBridge?.setSelection)throw new Error("Input plugin requires app.inputDomBridge to be initialized");let l=new _e({label:r.id});l.zIndex=c,l.sortableChildren=!0,l.eventMode="static",l.cursor=r.disabled?"default":"text",l.alpha=r.alpha,nt(l,r);let u=rz(r),d=nz({app:t,container:l,display:u,element:r});l.addChild(d.background,d.selection,d.text,d.placeholder,d.caret,d.clip),d.tickerListener=w=>{if(!d.focused){if(d.blinkVisible===!1)return;d.blinkVisible=!1,Mr(d,d.element);return}d.blinkTick+=w.deltaMS??w.deltaTime??16,d.blinkTick>=530&&(d.blinkTick=0,d.blinkVisible=!d.blinkVisible,Mr(d,d.element))},t.ticker?.add?.(d.tickerListener),ti(l,()=>{t.ticker?.remove?.(d.tickerListener),d.tickerListener=null,t.inputDomBridge.unmount(r.id,d)});let h=({start:w,end:S,shouldFocus:x=!1})=>{if(x){t.inputDomBridge.focus(r.id,{selectionStart:w,selectionEnd:S});return}t.inputDomBridge.setSelection(r.id,w,S)},f=w=>{w?.stopPropagation?.()},m=({start:w,end:S,shouldFocus:x=!1,anchor:T=d.selectionAnchor})=>{d.focused=!0,d.selectionStart=w,d.selectionEnd=S,d.selectionAnchor=T,d.blinkVisible=!0,d.blinkTick=0,Mr(d,d.element),h({start:w,end:S,shouldFocus:x})},p=w=>{if(f(w),d.element.disabled===!0)return;let S=l.toLocal(w.global),x=pP(d,S),T=!!w.shiftKey&&d.focused,v=T?d.selectionAnchor??(d.selectionStart!==d.selectionEnd?d.selectionStart:d.selectionEnd):x,C=T?Math.min(v,x):x,M=T?Math.max(v,x):x;d.draggingSelection=!0,m({start:C,end:M,shouldFocus:!0,anchor:v})},g=w=>{if(!d.draggingSelection||d.element.disabled===!0)return;f(w);let S=l.toLocal(w.global),x=pP(d,S),T=d.selectionAnchor??x,v=Math.min(T,x),C=Math.max(T,x);m({start:v,end:C,anchor:T})},y=w=>{f(w),d.draggingSelection=!1},b=w=>{f(w),d.draggingSelection=!1,d.element.disabled!==!0&&t.inputDomBridge.focus(r.id,{selectionStart:d.selectionStart,selectionEnd:d.selectionEnd})};l.on("pointerdown",p),l.on("globalpointermove",g),l.on("pointerup",b),l.on("pointerupoutside",y),l.on("rightclick",f),l[Vb]=d,Mr(d,r),t.inputDomBridge.mount(r.id,{...r,owner:d,value:d.value,callbacks:$Z({element:r,runtime:d,eventHandler:s}),getGeometry:()=>Hb(t,l,r),hitTest:w=>zb(l,r,w)}),e.addChild(l),Oe(l,r.filters,{width:r.width,height:r.height}),Se({animations:n,targetId:r.id,animationBus:i,completionTracker:o,element:l,targetState:Ye(r,{alpha:r.alpha}),renderContext:a})};var Pc=({eventHandler:t,eventName:e,element:r,eventConfig:n,snapshot:i})=>{!t||!n||t(e,{_event:{id:r.id,value:i.value,selectionStart:i.selectionStart,selectionEnd:i.selectionEnd,composing:i.composing},...n.payload})},GZ=({element:t,runtime:e,eventHandler:r})=>({onValueChange:n=>{e.value=n.value,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,e.lastExternalValue=n.value,Mr(e,t),Pc({eventHandler:r,eventName:"change",element:t,eventConfig:t.change,snapshot:n})},onFocus:n=>{let i=e.nativeFocused===!0;e.nativeFocused=!0,e.focused=!0,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,e.selectionAnchor=n.selectionStart===n.selectionEnd?n.selectionEnd:e.selectionAnchor,e.blinkVisible=!0,e.blinkTick=0,Mr(e,t),!i&&Pc({eventHandler:r,eventName:"focus",element:t,eventConfig:t.focusEvent,snapshot:n})},onBlur:n=>{e.nativeFocused=!1,e.focused=!1,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,e.blinkVisible=!1,e.composing=!1,Mr(e,t),Pc({eventHandler:r,eventName:"blur",element:t,eventConfig:t.blurEvent,snapshot:n})},onSelectionChange:n=>{e.nativeFocused=n.focused,e.focused=n.focused,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,n.selectionStart===n.selectionEnd&&(e.selectionAnchor=n.selectionEnd),Mr(e,t),Pc({eventHandler:r,eventName:"selectionChange",element:t,eventConfig:t.selectionChange,snapshot:n})},...t.submit&&{onSubmit:n=>{Pc({eventHandler:r,eventName:"submit",element:t,eventConfig:t.submit,snapshot:n})}},onCompositionStart:n=>{e.composing=!0,Mr(e,t),Pc({eventHandler:r,eventName:"compositionStart",element:t,eventConfig:t.compositionStart,snapshot:n})},onCompositionUpdate:n=>{e.composing=!0,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,Mr(e,t),Pc({eventHandler:r,eventName:"compositionUpdate",element:t,eventConfig:t.compositionUpdate,snapshot:n})},onCompositionEnd:n=>{e.composing=!1,e.value=n.value,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,Mr(e,t),Pc({eventHandler:r,eventName:"compositionEnd",element:t,eventConfig:t.compositionEnd,snapshot:n})}}),oz=({app:t,parent:e,prevElement:r,nextElement:n,eventHandler:i,animations:o,animationBus:s,completionTracker:a,zIndex:c,deferRenderStateCommit:l,commitRenderState:u})=>{let d=e.children.find(b=>b.label===r.id);if(!d)return;if(!t.inputDomBridge?.update)throw new Error("Input plugin requires app.inputDomBridge to be initialized");d.zIndex=c;let h=d[Vb];if(!h)return;let f={...n},m=h.focused!==!0||n.value!==r.value;m&&h.composing!==!0?(h.value=n.value,h.lastExternalValue=n.value):f.value=h.value;let p=m&&h.composing!==!0;Fr({displayObject:d,element:n,animations:o,targetId:r.id});let g=()=>{p&&(h.value=n.value,h.lastExternalValue=n.value),h.element=f,d.label=n.id,d.cursor=n.disabled?"default":"text",d.alpha=n.alpha,nt(d,n),n.disabled===!0&&(h.draggingSelection=!1),(!Le(r,n)||m)&&Mr(h,f),t.inputDomBridge.update(n.id,{...f,value:h.value,callbacks:GZ({element:f,runtime:h,eventHandler:i}),getGeometry:()=>Hb(t,d,f),hitTest:b=>zb(d,f,b)}),gt(d,n),u?.(d)};Se({animations:o,targetId:r.id,animationBus:s,completionTracker:a,element:d,targetState:Ye(n,{alpha:n.alpha}),onComplete:g})?l?.():g()};var sz=({app:t,parent:e,element:r,animations:n,animationBus:i,completionTracker:o})=>{let s=e.getChildByLabel(r.id);if(!s)return;if(!t.inputDomBridge?.unmount)throw new Error("Input plugin requires app.inputDomBridge to be initialized");let a=()=>{s.destroyed||s.destroy({children:!0})};Se({animations:n,targetId:r.id,animationBus:i,completionTracker:o,element:s,targetState:null,onComplete:a})||a()};var az=({state:t})=>{t.fill!==void 0&&m_(t.fill,"input.fill");let e=dr(t),r=String(t.value??""),n=String(t.placeholder??"");return{...e,value:r,placeholder:n,multiline:t.multiline===!0,disabled:t.disabled===!0,...typeof t.submitOnEnter=="boolean"&&{submitOnEnter:t.submitOnEnter},...typeof t.maxLength=="number"&&{maxLength:Math.round(t.maxLength)},textStyle:Nb(t.textStyle),padding:dP(t.padding),fill:t.fill!==void 0?t.fill:cP,border:fP(t.border,lP),focusRing:fP(t.focusRing,uP),...t.change&&{change:t.change},...t.submit&&{submit:t.submit},...t.focusEvent&&{focusEvent:t.focusEvent},...t.blurEvent&&{blurEvent:t.blurEvent},...t.selectionChange&&{selectionChange:t.selectionChange},...t.compositionStart&&{compositionStart:t.compositionStart},...t.compositionUpdate&&{compositionUpdate:t.compositionUpdate},...t.compositionEnd&&{compositionEnd:t.compositionEnd}}};var NZ=Er({type:"input",add:iz,update:oz,delete:sz,parse:az});var VZ=24,HZ=24,tu=(t,e,r)=>Math.min(r,Math.max(e,t)),uz=t=>tu(t,0,1),kf=t=>{t?.stopPropagation?.()},zZ=t=>t?W.from(t):W.EMPTY,Wb=({label:t})=>{let e=new ht(W.EMPTY);return e.label=t,e.eventMode="static",e.cursor="pointer",e},WZ=({config:t,state:e})=>t?e?.pressed&&t.pressSrc?t.pressSrc:e?.hovered&&t.hoverSrc?t.hoverSrc:t.src??"":"",Xb=({sprite:t,config:e,state:r,width:n,height:i})=>{t&&(t.texture=zZ(WZ({config:e,state:r})),t.width=Math.max(n,0),t.height=Math.max(i,0),t.visible=t.width>0&&t.height>0,t.eventMode=t.visible?"static":"none")},XZ=t=>({root:`${t}-scrollbar-vertical`,track:`${t}-scrollbar-vertical-track`,thumb:`${t}-scrollbar-vertical-thumb`,startButton:`${t}-scrollbar-vertical-start-button`,endButton:`${t}-scrollbar-vertical-end-button`}),cz=(t,e)=>Math.abs(t-e)<.5,lz=({hasOverflow:t,minScroll:e,previousOffset:r,wasAtEnd:n,anchorToEnd:i})=>t?i&&(r===void 0||n)?e:typeof r=="number"?tu(r,e,0):0:0,YZ=({controller:t})=>{let e=XZ(t.container.label),r=t.element.scrollbar?.vertical;if(!r)return null;let n=new _e({label:e.root});n.eventMode="static",n.cursor="pointer";let i=Wb({label:e.track}),o=Wb({label:e.thumb}),s={config:r,root:n,track:i,thumb:o,startButton:null,endButton:null,states:{track:{hovered:!1,pressed:!1},thumb:{hovered:!1,pressed:!1,dragging:!1},startButton:{hovered:!1,pressed:!1},endButton:{hovered:!1,pressed:!1}},dragOffsetY:0};n.addChild(i),n.addChild(o),r.startButton&&(s.startButton=Wb({label:e.startButton}),n.addChild(s.startButton)),r.endButton&&(s.endButton=Wb({label:e.endButton}),n.addChild(s.endButton));let a=()=>{dz({controller:t})};i.on("pointerover",()=>{s.states.track.hovered=!0,a()}),i.on("pointerout",()=>{s.states.track.hovered=!1,a()}),i.on("pointerdown",d=>{kf(d),s.states.track.pressed=!0,a();let h=n.toLocal(d.global),{thumb:f}=s,m=t.viewportHeight;h.y<f.y?t.setScrollOffsets({y:t.scrollYOffset+m,source:"track"}):h.y>f.y+f.height&&t.setScrollOffsets({y:t.scrollYOffset-m,source:"track"})});let c=d=>{kf(d),s.states.track.pressed=!1,a()};i.on("pointerup",c),i.on("pointerupoutside",c),o.on("pointerover",()=>{s.states.thumb.hovered=!0,a()}),o.on("pointerout",()=>{s.states.thumb.hovered=!1,s.states.thumb.dragging||a()}),o.on("pointerdown",d=>{kf(d);let h=n.toLocal(d.global);s.states.thumb.pressed=!0,s.states.thumb.dragging=!0,s.dragOffsetY=h.y-s.thumb.y,a()});let l=d=>{if(kf(d),!s.states.thumb.dragging){s.states.thumb.pressed=!1,a();return}s.states.thumb.dragging=!1,s.states.thumb.pressed=!1,a()};n.on("globalpointermove",d=>{if(!s.states.thumb.dragging)return;let h=n.toLocal(d.global),f=s.track.y,m=Math.max(s.track.height-s.thumb.height,0);if(m<=0||t.minScrollY===0){t.setScrollOffsets({y:0,source:"thumb"});return}let p=tu(h.y-s.dragOffsetY,f,f+m),g=uz((p-f)/m);t.setScrollOffsets({y:t.minScrollY*g,source:"thumb"})}),o.on("pointerup",l),o.on("pointerupoutside",l),n.on("pointerup",l),n.on("pointerupoutside",l);let u=({sprite:d,config:h,state:f,deltaDirection:m})=>{if(!d||!h)return;d.on("pointerover",()=>{f.hovered=!0,a()}),d.on("pointerout",()=>{f.hovered=!1,a()}),d.on("pointerdown",g=>{kf(g),f.pressed=!0,a(),t.setScrollOffsets({y:t.scrollYOffset+m*Math.max(h.step??VZ,0),source:"button"})});let p=g=>{kf(g),f.pressed=!1,a()};d.on("pointerup",p),d.on("pointerupoutside",p)};return u({sprite:s.startButton,config:r.startButton,state:s.states.startButton,deltaDirection:1}),u({sprite:s.endButton,config:r.endButton,state:s.states.endButton,deltaDirection:-1}),t.container.addChild(n),s},dz=({controller:t})=>{let e=t.verticalScrollbar;if(!e)return;let{config:r,root:n,track:i,thumb:o,startButton:s,endButton:a,states:c}=e,l=Math.max(r.thickness??0,0),u=s?Math.max(r.startButton?.size??l,0):0,d=a?Math.max(r.endButton?.size??l,0):0,h=Math.max(t.viewportHeight-u-d,0),f=Math.min(HZ,h),m=r.thumb?.length,p=typeof m=="number"?m:t.totalHeight>0?Math.round(t.viewportHeight/t.totalHeight*h):h,g=h>0?typeof m=="number"?tu(p,0,h):tu(p,f,h):0,y=Math.max(h-g,0),b=t.minScrollY===0?0:uz(t.scrollYOffset/t.minScrollY);n.visible=t.hasVerticalOverflow&&t.element.scroll&&l>0&&t.viewportHeight>0,n.x=Math.max(t.viewportWidth-l,0),n.y=0,i.x=0,i.y=u,Xb({sprite:i,config:r.track,state:c.track,width:l,height:h}),o.x=0,o.y=u+y*b,Xb({sprite:o,config:r.thumb,state:c.thumb,width:l,height:g}),s&&(s.x=0,s.y=0,Xb({sprite:s,config:r.startButton,state:c.startButton,width:l,height:u})),a&&(a.x=0,a.y=t.viewportHeight-d,Xb({sprite:a,config:r.endButton,state:c.endButton,width:l,height:d}))},fz=({container:t})=>{let e=t.__routeGraphicsScrollController;return e?{scrollXOffset:e.scrollXOffset,scrollYOffset:e.scrollYOffset,wasAtHorizontalEnd:e.hasHorizontalOverflow&&cz(e.scrollXOffset,e.minScrollX),wasAtVerticalEnd:e.hasVerticalOverflow&&cz(e.scrollYOffset,e.minScrollY)}:null},$g=({container:t,element:e,interactive:r=!0,allowViewportWithoutScroll:n=!1,previousState:i=null})=>{let o=0,s=0;e.children.forEach(u=>{o=Math.max(u.width+u.x,o),s=Math.max(u.height+u.y,s)});let a=!!(e.height&&s>e.height),c=!!(e.width&&o>e.width);if((e.scroll||n)&&(a||c)){let u=new _e({label:`${t.label}-content`});[...t.children].forEach(g=>{u.addChild(g)}),t.addChild(u);let h=new Lt({label:`${t.label}-clip`}).rect(0,0,e.width||o,e.height||s).fill({color:16711680,alpha:0});t.addChild(h),u.mask=h;let f=-(s-(e.height||s)),m=-(o-(e.width||o)),p={container:t,contentContainer:u,clip:h,element:e,totalWidth:o,totalHeight:s,viewportWidth:e.width||o,viewportHeight:e.height||s,hasHorizontalOverflow:c,hasVerticalOverflow:a,minScrollX:m,minScrollY:f,scrollXOffset:lz({hasOverflow:c,minScroll:m,previousOffset:i?.scrollXOffset,wasAtEnd:i?.wasAtHorizontalEnd,anchorToEnd:!!e.anchorToBottom}),scrollYOffset:lz({hasOverflow:a,minScroll:f,previousOffset:i?.scrollYOffset,wasAtEnd:i?.wasAtVerticalEnd,anchorToEnd:!!e.anchorToBottom}),verticalScrollbar:null,setScrollOffsets:({x:g,y})=>{let b=g??p.scrollXOffset,w=y??p.scrollYOffset;p.scrollXOffset=p.hasHorizontalOverflow?tu(b,p.minScrollX,0):0,p.scrollYOffset=p.hasVerticalOverflow?tu(w,p.minScrollY,0):0,p.contentContainer.x=p.scrollXOffset,p.contentContainer.y=p.scrollYOffset,dz({controller:p})}};t.__routeGraphicsScrollController=p,p.verticalScrollbar=YZ({controller:p}),p.setScrollOffsets({x:p.scrollXOffset,y:p.scrollYOffset,source:"initial"}),r&&(t.eventMode="static",t.hitArea=new be(0,0,e.width||o,e.height||s),t.on("wheel",g=>{if(g.preventDefault(),a&&g.deltaY!==0&&p.setScrollOffsets({y:p.scrollYOffset-g.deltaY,source:"wheel"}),c&&(g.deltaX!==0||g.shiftKey&&g.deltaY!==0)){let y=g.deltaX!==0?g.deltaX:g.deltaY;p.setScrollOffsets({x:p.scrollXOffset-y,source:"wheel"})}}))}},mP=({container:t})=>{let e=t.__routeGraphicsScrollController,r=t.children.find(o=>o.label&&o.label.endsWith("-content")),n=t.children.find(o=>o.label&&o.label.endsWith("-clip")),i=t.children.find(o=>o.label&&o.label.endsWith("-scrollbar-vertical"));r&&([...r.children].forEach(s=>{s.mask=null,t.addChild(s)}),t.removeChild(r),r.destroy({children:!1})),n&&(t.removeChild(n),n.destroy()),i&&(t.removeChild(i),i.destroy({children:!0})),t.eventMode="auto",t.hitArea=null,t.removeAllListeners("wheel"),e&&(t.__routeGraphicsScrollController=void 0)};var gP=({container:t,element:e,enabled:r})=>{let n=Number.isFinite(e?.width)?e.width:0,i=Number.isFinite(e?.height)?e.height:0;if(r&&n>0&&i>0){t.hitArea=new be(0,0,n,i);return}t.hitArea=null},hz=(t,e)=>{let r=e??null;for(;r;){if(r===t)return!0;r=r.parent??null}return!1},ru=(t,e)=>{let r=e??null;for(;r;){if(r===t)return!1;if(typeof r.label=="string"&&r.label.startsWith(`${t.label}-scrollbar-`))return!0;r=r.parent??null}return!1},jZ=(t,e)=>{if(!e||typeof e.x!="number"||typeof e.y!="number")return!1;let r=t.toLocal(e),n=t.hitArea;return n?.contains?n.contains(r.x,r.y):!1},Yb=({app:t,container:e,element:r,eventHandler:n})=>{let i=XM(e),o=YM(e),s=jM(e),a=i;e._cleanupScrollInteraction?.(),Sf({root:e,isHovered:!1}),Zl({root:e,isPressed:!1}),la({root:e,isPressed:!1}),e.removeAllListeners("pointerover"),e.removeAllListeners("pointerout"),e.removeAllListeners("pointerdown"),e.removeAllListeners("pointerup"),e.removeAllListeners("pointerupoutside"),e.removeAllListeners("rightdown"),e.removeAllListeners("rightup"),e.removeAllListeners("rightupoutside"),e.removeAllListeners("rightclick"),e.cursor="auto",r.scroll||(e.eventMode="auto",gP({container:e,element:r,enabled:!1}));let c=r?.hover,l=r?.click,u=r?.rightClick,d=r?.scrollUp,h=r?.scrollDown;if(!!(c||l||u||d||h)&&(e.eventMode="static",r.scroll?e.hitArea||gP({container:e,element:r,enabled:!0}):gP({container:e,element:r,enabled:!0})),c){let{cursor:m,soundSrc:p,soundVolume:g,payload:y,inheritToChildren:b}=c,w=x=>{hz(e,x?.relatedTarget)||a||(a=!0,y&&n&&n("hover",{_event:{id:e.label},...y}),m&&(e.cursor=m),p&&t.audioStage.add({id:`hover-${Date.now()}`,url:p,loop:!1,volume:bt(g)}),b&&Sf({root:e,isHovered:!0}))},S=x=>{hz(e,x?.relatedTarget)||jZ(e,x?.global)||a&&(a=!1,e.cursor="auto",b&&Sf({root:e,isHovered:!1}))};e.on("pointerover",w),e.on("pointerout",S)}if(l){let{soundSrc:m,soundVolume:p,payload:g,inheritToChildren:y}=l,b=x=>{Tn(x)&&(ru(e,x?.target)||y&&Zl({root:e,isPressed:!0}))},w=x=>{Tn(x)&&(ru(e,x?.target)||(y&&Zl({root:e,isPressed:!1}),g&&n&&n("click",{_event:{id:e.label},...g}),m&&t.audioStage.add({id:`click-${Date.now()}`,url:m,loop:!1,volume:bt(p)})))},S=x=>{Tn(x)&&(ru(e,x?.target)||y&&Zl({root:e,isPressed:!1}))};e.on("pointerdown",b),e.on("pointerup",w),e.on("pointerupoutside",S)}if(u){let{soundSrc:m,payload:p,inheritToChildren:g}=u,y=T=>{ru(e,T?.target)||g&&la({root:e,isPressed:!0})},b=T=>{ru(e,T?.target)||g&&la({root:e,isPressed:!1})},w=T=>{JV(T)&&(ru(e,T?.target)||g&&la({root:e,isPressed:!1}))},S=T=>{ru(e,T?.target)||(g&&la({root:e,isPressed:!1}),p&&n&&n("rightClick",{_event:{id:e.label},...p}),m&&t.audioStage.add({id:`rightClick-${Date.now()}`,url:m,loop:!1}))},x=()=>{g&&la({root:e,isPressed:!1})};e.on("rightdown",y),e.on("rightup",b),e.on("pointerup",w),e.on("rightclick",S),e.on("pointerupoutside",w),e.on("rightupoutside",x)}(d||h)&&ds({canvas:t.canvas,displayObject:e,scrollUpEvent:d,scrollDownEvent:h,eventHandler:n}),c?.inheritToChildren&&i&&Sf({root:e,isHovered:!0}),l?.inheritToChildren&&o&&Zl({root:e,isPressed:!0}),u?.inheritToChildren&&s&&la({root:e,isPressed:!0})},pz=({container:t})=>{XM(t)&&Sf({root:t,isHovered:!0})},mz=({container:t})=>{YM(t)&&Zl({root:t,isPressed:!0})},gz=({container:t})=>{jM(t)&&la({root:t,isPressed:!0})};var yz=(t,e,r=[])=>{let n=new Set(r instanceof Map?r.keys():r.map(d=>d.targetId)),i=d=>n.has(d.id)?!0:Array.isArray(d.children)&&d.children.some(i),o=new Set,s=new Map,a=new Map,c=[],l=[],u=[];for(let d of t)o.add(d.id),s.set(d.id,d);for(let d of e)o.add(d.id),a.set(d.id,d);for(let d of o){let h=s.get(d),f=a.get(d);!h&&f?c.push(f):h&&!f?l.push(h):(!Le(h,f)||n.size>0&&i(f))&&u.push({prev:h,next:f})}return{toAddElement:c,toDeleteElement:l,toUpdateElement:u}};var qZ=t=>{t.customTickerHandler&&(typeof window<"u"&&window.removeEventListener("snapShotKeyFrame",t.customTickerHandler),t.customTickerHandler=void 0)},KZ=(t,e)=>{e.tickerCallback&&(t?.ticker?.remove?.(e.tickerCallback),e.tickerCallback=void 0)},Gg=({app:t,particleElement:e}={})=>{e&&(KZ(t,e),qZ(e),e.emitter&&(e.emitter.destroy(),e.emitter=void 0))},Or=({app:t,root:e}={})=>{if(!e)return;let r=[e];for(let n of r)n&&((n.emitter||n.tickerCallback||n.customTickerHandler)&&Gg({app:t,particleElement:n}),Array.isArray(n.children)&&n.children.length>0&&r.push(...n.children))};var xz="8.10.2",yP=t=>{let e=t.renderGroup;if(e){if(Is!==xz||e.root!==t||typeof e.structureDidChange!="boolean")throw new Error(`Snapshot rendering is incompatible with the installed Pixi runtime; expected Pixi ${xz} render-group instructions.`);e.structureDidChange=!0}};var xP=({renderer:t,displayObject:e,frame:r,preserveAlpha:n=!1})=>{let i=e.parent,o=i?.getChildIndex(e),s=e.parentRenderLayer,a=s?[...s.renderLayerChildren]:null;yP(e);let c={x:e.x??0,y:e.y??0,scaleX:e.scale?.x??1,scaleY:e.scale?.y??1,rotation:e.rotation??0,alpha:e.alpha??1,skewX:e.skew?.x??0,skewY:e.skew?.y??0,pivotX:e.pivot?.x??0,pivotY:e.pivot?.y??0},l=new _e;l.alpha=n?c.alpha:1;let u=[],d=f=>{try{f()}catch(m){u.push(m)}},h;try{s?.detach(e),l.addChild(e),e.x=0,e.y=0,e.scale?.set?.(1,1),e.rotation=0,e.alpha=1,e.skew?.set?.(0,0),e.pivot?.set?.(0,0),e.updateLocalTransform?.(),h=t.generateTexture({target:l,frame:r})}catch(f){u.push(f)}finally{d(()=>{e.x=c.x,e.y=c.y,e.scale?.set?.(c.scaleX,c.scaleY),e.rotation=c.rotation,e.alpha=c.alpha,e.skew?.set?.(c.skewX,c.skewY),e.pivot?.set?.(c.pivotX,c.pivotY),e.updateLocalTransform?.()}),d(()=>yP(e)),d(()=>{e.parent!==i&&e.removeFromParent()}),d(()=>{i&&e.parent!==i&&i.addChildAt(e,o)}),d(()=>{if(!s||e.parentRenderLayer===s&&s.renderLayerChildren.length===a.length&&s.renderLayerChildren.every((p,g)=>p===a[g]))return;let f=a.filter(p=>p!==e);if(e.parentRenderLayer||s.renderLayerChildren.length!==f.length||!s.renderLayerChildren.every((p,g)=>p===f[g]))throw new Error("Snapshot render-layer membership changed during capture");let m=a.slice(a.indexOf(e)+1);s.detach(...m),s.attach(e,...m)}),d(()=>l.destroy({children:!1}))}if(u.length>0)throw d(()=>h?.destroy(!0)),u.length===1?u[0]:new AggregateError(u,"Snapshot capture or restoration failed");return h},_z=async({renderer:t,displayObject:e,frame:r,format:n="base64"})=>{let i=xP({renderer:t,displayObject:e,frame:r,preserveAlpha:!0}),o=[],s;try{s=await t.extract[n]({target:i})}catch(a){o.push(a)}finally{try{i.destroy(!0)}catch(a){o.push(a)}}if(o.length===1)throw o[0];if(o.length>1)throw new AggregateError(o,"Snapshot extraction or cleanup failed");return s};var bP=t=>Math.min(1,Math.max(0,t));var Ng=t=>t.getLocalBounds().rectangle.clone(),Vg=t=>(t.width=Math.max(1,Math.ceil(t.width)),t.height=Math.max(1,Math.ceil(t.height)),t),wP=(t,e)=>{let r=Vg(Ng(e)),n=e instanceof ht&&(e.filters?.length??0)===0,i=n?e.texture:xP({renderer:t.renderer,displayObject:e,frame:r}),o=new ht(i);n&&(o.tint=e.tint,o.blendMode=e.blendMode),o.x=r.x-(e.pivot?.x??0),o.y=r.y-(e.pivot?.y??0);let s=new _e;return s.x=e.x??0,s.y=e.y??0,s.scale.set(e.scale?.x??1,e.scale?.y??1),s.rotation=e.rotation??0,s.skew?.set?.(e.skew?.x??0,e.skew?.y??0),s.alpha=e.alpha??1,s.addChild(o),{wrapper:s,texture:i,ownsTexture:!n,width:r.width*Math.abs(s.scale.x),height:r.height*Math.abs(s.scale.y)}},SP=t=>{let e=Vg(Ng(t));return{wrapper:t,live:!0,width:e.width*Math.abs(t.scale?.x??1),height:e.height*Math.abs(t.scale?.y??1)}},qb=t=>!t||t.destroyed?!1:t instanceof zo?!0:t.children?.some(e=>qb(e))??!1,ou=t=>t?.live===!0,QZ=t=>{let e={vec2:2,vec3:3,vec4:4,mat3:9,mat4:16,colorSrgb:4,colorLinear:4}[t];return e===void 0?0:Array(e).fill(0)},bz=(t,e,r)=>{let n=r?.wrapper,i={x:n?.x??0,y:n?.y??0,alpha:n?.alpha??1,scaleX:n?.scale?.x??1,scaleY:n?.scale?.y??1,rotation:n?.rotation??0};return{handle:{kind:"surface",surface:e,subject:r,wrapper:n,base:i},identity:`${t}:${e}`,subject:{x:i.x,y:i.y,width:r?.width??1,height:r?.height??1}}},nu=({animation:t,program:e,prevSubject:r,nextSubject:n,maskControllers:i=[],compositorEffect:o,validateTerminal:s=!1})=>{let a=`transition:${t.id}`,c=new Map(e.clipTemplates.map(g=>[g.channel,g.valueType])),l=(t.mask??[]).map((g,y)=>({kind:"mask",index:y,progress:g.progress?.initialValue??0,apply:b=>i[y]?.apply(bP(b))})),u={kind:"compositor",progress:t.compositor?.tween?.progress?.initialValue??t.compositor?.tween?.uProgress?.initialValue??0},d={prev:bz(a,"prev",r),next:bz(a,"next",n),mask:l.map((g,y)=>({handle:g,identity:`${a}:mask:${y}`})),compositor:{handle:u,identity:`${a}:compositor`}},h=(g,y)=>{let b=c.get(y);if(g.handle.kind==="surface"){let{wrapper:w,base:S}=g.handle,T={"transform.x":[()=>S.x,v=>{w&&(w.x=v)}],"transform.y":[()=>S.y,v=>{w&&(w.y=v)}],"transform.scale.x":[()=>1,v=>{w&&(w.scale.x=S.scaleX*v)}],"transform.scale.y":[()=>1,v=>{w&&(w.scale.y=S.scaleY*v)}],"transform.rotation.degrees":[()=>0,v=>{w&&(w.rotation=S.rotation+Tl(v))}],"appearance.alpha":[()=>1,v=>{w&&(w.alpha=S.alpha*v)}]}[y];return T?{valueType:b,get:T[0],apply:(v,C)=>T[1](C)}:null}if(g.handle.kind==="mask"&&y==="transition.mask.progress")return{valueType:b,get:()=>g.handle.progress,apply:(w,S)=>{g.handle.progress=S,g.handle.apply(S)}};if(g.handle.kind==="compositor"){if(y==="transition.compositor.progress")return{valueType:b,get:()=>g.handle.progress,apply:(S,x)=>{g.handle.progress=x,o&&Wm(o,x)}};let w=/^transition\.compositor\.parameter\.(.+)$/.exec(y);if(w){let S=w[1];return{valueType:b,get:()=>{if(!o)return QZ(b);let x=zd(o,S);if(x===void 0)throw new Error(`Transition animation "${t.id}" cannot target unknown compositor parameter "${S}".`);return x},apply:(x,T)=>{o&&Xm(o,S,T)}}}}return null},f=lc(e,{capabilities:new Set(e.requirements),transitionTargets:d,channelRegistry:{resolve:h}});if(!Number.isFinite(f.duration))throw new Error(`Transition animation "${t.id}" must be finite.`);let m=vg(f);try{let g=m.evaluate(f.duration);if(s&&t.gsap){for(let[y]of(t.mask??[]).entries())if(g.values.find(w=>w.targetIdentity===`${a}:mask:${y}`&&w.channel==="transition.mask.progress")?.value!==1)throw new Error(`Transition animation "${t.id}" mask[${y}] must have effective terminal progress 1.`);if(t.compositor&&g.values.find(b=>b.channel==="transition.compositor.progress")?.value!==1)throw new Error(`Transition animation "${t.id}" compositor must have effective terminal progress 1.`)}}catch(g){throw m.destroy(),g}let p=new Set([0,f.duration]);for(let g of f.tracks)for(let y of g.segments){p.add(y.rootStart),p.add(y.rootEnd);let b=y.rootEnd-y.rootStart;if(b>0){let w=new Set([.25,.5,.75,...eG(y.easing)]);for(let S of w)p.add(y.rootStart+b*S)}}return{program:e,instance:f,backend:m.backend,duration:f.duration,sampleTimes:[...p].sort((g,y)=>g-y),apply:g=>{if(i.length>0){let y=qd(f.domains.root,g);for(let[b,w]of(t.mask??[]).entries())i[b]?.setActive(y.localTime>=(w.delay??0))}m.apply(g)},destroy:m.destroy}},JZ=t=>{let e=new Set([0]);for(let r of t){for(let n of r.sampleTimes??[])e.add(n);e.add(r.duration);for(let{timeline:n}of r.timelines??[])for(let i=0;i<n.length;i++){let o=n[i].time;if(e.add(o),i===0)continue;let s=n[i-1].time,a=o-s;a<=0||(e.add(s+a*.25),e.add(s+a*.5),e.add(s+a*.75))}}return[...e].sort((r,n)=>r-n)},ZZ=t=>{if(t.length===0)return new be(0,0,1,1);let e=1/0,r=1/0,n=-1/0,i=-1/0;for(let o of t)e=Math.min(e,o.x),r=Math.min(r,o.y),n=Math.max(n,o.x+o.width),i=Math.max(i,o.y+o.height);return new be(e,r,n-e,i-r)},vP=`
|
|
1670
|
+
`){i+=1,o=0;continue}o+=1}return{line:i,column:o}},hP=({contentWidth:t,lineWidth:e,align:r})=>IZ(t,e,r),LZ=t=>new cn({label:t,text:""}),UZ=(t,e)=>{for(;t.textNodes.length<e;){let r=LZ(`${t.element.id}-text-line-${t.textNodes.length}`);t.text.addChild(r),t.textNodes.push(r)}for(;t.textNodes.length>e;){let r=t.textNodes.pop();r?.removeFromParent(),r?.destroy()}},$b=({contentWidth:t,lineWidth:e,align:r,scrollOffsetX:n})=>e>t?-n:hP({contentWidth:t,lineWidth:e,align:r}),tz=({contentWidth:t,lineWidth:e,align:r})=>hP({contentWidth:t,lineWidth:e,align:r}),Gb=({padding:t,contentWidth:e,lineWidth:r,align:n,scrollOffsetX:i})=>t.left+tz({contentWidth:e,lineWidth:r,align:n})-i,rz=t=>{let e=new Lt;e.label=`${t.id}-background`,e.on("destroyed",()=>{rc(e)});let r=new Lt;r.label=`${t.id}-selection`;let n=new _e;n.label=`${t.id}-text`;let i=new cn({label:`${t.id}-placeholder`,text:t.placeholder}),o=new Lt;o.label=`${t.id}-caret`;let s=new Lt;return s.label=`${t.id}-clip`,n.mask=s,i.mask=s,r.mask=s,o.mask=s,{background:e,selection:r,text:n,placeholder:i,caret:o,clip:s}},nz=({app:t,container:e,display:r,element:n})=>({app:t,container:e,...r,value:If(n.value??""),selectionStart:If(n.value??"").length,selectionEnd:If(n.value??"").length,focused:!1,nativeFocused:!1,composing:!1,blinkVisible:!0,blinkTick:0,scrollOffsetX:0,scrollOffsetY:0,selectionAnchor:null,draggingSelection:!1,textNodes:[],layoutState:null,lastExternalValue:If(n.value??""),tickerListener:null,element:n}),Hb=(t,e,r)=>{let n=RZ({app:t,container:e,fallbackElement:r});if(!n)return null;let{fullBounds:i,visibleBounds:o}=n,s=BZ(i,o);return{x:i.x,y:i.y,width:i.width,height:i.height,visible:!!o&&e.visible!==!1&&e.renderable!==!1,clipInsets:s}},zb=(t,e,r)=>{if(!t||t.destroyed===!0||typeof t.toLocal!="function"||!Number.isFinite(r?.x)||!Number.isFinite(r?.y)||!Number.isFinite(e?.width)||!Number.isFinite(e?.height)||e.width<=0||e.height<=0)return!1;let n=t.toLocal(r);return n.x>=0&&n.x<=e.width&&n.y>=0&&n.y<=e.height},Mr=(t,e)=>{let r=dP(e.padding),n=Math.max(0,e.width-r.left-r.right),i=Math.max(0,e.height-r.top-r.bottom),o=Nb(e.textStyle,{wordWrapWidth:n}),s=Nb({...e.textStyle,fill:"#7A7A7A"},{wordWrapWidth:n}),a=String(t.value??""),c=OZ({element:e,displayedValue:a,textStyle:o}),l=o.align??"left",u=Ac(Math.min(t.selectionStart,t.selectionEnd),0,a.length),d=Ac(Math.max(t.selectionStart,t.selectionEnd),0,a.length),h=Ac(t.selectionEnd??a.length,0,a.length);if(t.layoutState={padding:r,contentWidth:n,contentHeight:i,textStyle:o,placeholderStyle:s,displayedValue:a,layout:c,align:l},UZ(t,c.lines.length),t.textNodes.forEach((b,w)=>{let S=c.lines[w]??{text:"",width:0};Zo(b,o),b.text=S.text}),Zo(t.placeholder,s),t.placeholder.text=e.placeholder??"",e.multiline){let b=Ub({value:a,index:h}),w=c.lines[b.line]??c.lines.at(-1),S=w?.width??0,x=ci((w?.text??"").slice(0,b.column),o),T=c.totalHeight,v=b.line*c.lineHeight,C=v+c.lineHeight;if(S<=n)t.scrollOffsetX=0;else if(t.focused){let F=Math.max(0,S-n);x-t.scrollOffsetX>n-8?t.scrollOffsetX=x-(n-8):x-t.scrollOffsetX<8&&(t.scrollOffsetX=x-8),t.scrollOffsetX=Ac(t.scrollOffsetX,0,F)}else t.scrollOffsetX=0;if(T<=i)t.scrollOffsetY=0;else if(t.focused){let M=Math.max(0,T-i);C-t.scrollOffsetY>i?t.scrollOffsetY=C-i:v-t.scrollOffsetY<0&&(t.scrollOffsetY=v),t.scrollOffsetY=Ac(t.scrollOffsetY,0,M)}else t.scrollOffsetY=0}else{let b=c.lines[0],w=ci(b.text.slice(0,h),o);if(b.width<=n)t.scrollOffsetX=0;else if(t.focused){let x=Math.max(0,b.width-n);w-t.scrollOffsetX>n-8?t.scrollOffsetX=w-(n-8):w-t.scrollOffsetX<8&&(t.scrollOffsetX=w-8),t.scrollOffsetX=Ac(t.scrollOffsetX,0,x)}else t.scrollOffsetX=0;t.scrollOffsetY=0}if(e.multiline)t.text.x=r.left-t.scrollOffsetX,t.text.y=r.top-t.scrollOffsetY,t.textNodes.forEach((b,w)=>{let S=c.lines[w]??{width:0};b.x=tz({contentWidth:n,lineWidth:S.width,align:l}),b.y=w*c.lineHeight});else{let b=c.lines[0],w=t.textNodes[0],S=$b({contentWidth:n,lineWidth:b.width,align:l,scrollOffsetX:t.scrollOffsetX});w.x=0,w.y=0,t.text.x=r.left+S,t.text.y=r.top+Math.max(0,(i-w.height)/2)}let f=je.measureText(t.placeholder.text,ez(s));t.placeholder.x=r.left,t.placeholder.y=e.multiline?r.top:r.top+Math.max(0,(i-t.placeholder.height)/2),f.width<=n&&(t.placeholder.x+=hP({contentWidth:n,lineWidth:f.width,align:l})),t.placeholder.visible=t.value.length===0&&t.composing!==!0;let m=()=>{t.background.rect(0,0,e.width,e.height)},p=e.fill!==void 0?e.fill:cP,g=e.border??lP,y=e.focusRing??uP;if(t.background.clear(),m(),t.background.fill(d_(t.background,p,e)),g.width>0&&t.background.stroke({color:g.color,alpha:g.alpha,width:g.width}),t.focused&&y.width>0&&e.disabled!==!0&&(m(),t.background.stroke({color:y.color,alpha:y.alpha,width:y.width})),t.clip.clear(),t.clip.rect(r.left,r.top,n,Math.max(0,i)),t.clip.fill({color:16777215,alpha:1}),t.selection.clear(),t.focused&&u!==d&&e.disabled!==!0){if(e.multiline){let b=Ub({value:a,index:u}),w=Ub({value:a,index:d});for(let S=b.line;S<=w.line;S+=1){let x=c.lines[S];if(!x)continue;let T=S===b.line?b.column:0,v=S===w.line?w.column:x.text.length,C=Gb({padding:r,contentWidth:n,lineWidth:x.width,align:l,scrollOffsetX:t.scrollOffsetX})+ci(x.text.slice(0,T),o),M=Gb({padding:r,contentWidth:n,lineWidth:x.width,align:l,scrollOffsetX:t.scrollOffsetX})+ci(x.text.slice(0,v),o),F=r.top+S*c.lineHeight-t.scrollOffsetY;t.selection.rect(C,F,Math.max(M-C,1),c.lineHeight)}}else{let b=c.lines[0],w=$b({contentWidth:n,lineWidth:b.width,align:l,scrollOffsetX:t.scrollOffsetX}),S=r.left+w+ci(b.text.slice(0,u),o),x=r.left+w+ci(b.text.slice(0,d),o),T=r.top+Math.max(0,(i-t.text.height)/2);t.selection.rect(S,T,Math.max(x-S,1),Math.max(t.text.height,o.lineHeight))}t.selection.fill({color:QH.fill,alpha:QH.alpha})}if(t.caret.clear(),t.focused&&t.selectionStart===t.selectionEnd&&t.blinkVisible!==!1&&e.disabled!==!0){if(e.multiline){let b=Ub({value:a,index:h}),w=c.lines[b.line]??c.lines.at(-1),S=Gb({padding:r,contentWidth:n,lineWidth:w?.width??0,align:l,scrollOffsetX:t.scrollOffsetX})+ci((w?.text??"").slice(0,b.column),o),x=r.top+b.line*c.lineHeight-t.scrollOffsetY;t.caret.rect(S,x,aP.width,c.lineHeight)}else{let b=c.lines[0],w=$b({contentWidth:n,lineWidth:b.width,align:l,scrollOffsetX:t.scrollOffsetX}),S=r.left+w+ci(b.text.slice(0,h),o),x=r.top+Math.max(0,(i-t.text.height)/2);t.caret.rect(S,x,aP.width,Math.max(t.text.height,o.lineHeight))}t.caret.fill({color:aP.fill,alpha:1})}},pP=(t,e)=>{let r=t.layoutState;if(!r)return 0;let{padding:n,contentWidth:i,textStyle:o,displayedValue:s,layout:a,align:c}=r,l=e?.x??0,u=e?.y??0;if(!t.element.multiline){let p=a.lines[0]??{text:s,width:ci(s,o)},g=$b({contentWidth:i,lineWidth:p.width,align:c,scrollOffsetX:t.scrollOffsetX}),y=n.left+g;return JH({text:p.text,style:o,targetX:l-y})}let d=a.lineHeight||o.lineHeight||1,h=Ac(Math.floor((u-n.top+t.scrollOffsetY)/d),0,Math.max(a.lines.length-1,0)),f=a.lines[h]??{text:"",startIndex:0},m=JH({text:f.text,style:o,targetX:l-Gb({padding:n,contentWidth:i,lineWidth:f.width??0,align:c,scrollOffsetX:t.scrollOffsetX})});return f.startIndex+m};var Mc=({eventHandler:t,eventName:e,element:r,eventConfig:n,snapshot:i})=>{!t||!n||t(e,{_event:{id:r.id,value:i.value,selectionStart:i.selectionStart,selectionEnd:i.selectionEnd,composing:i.composing},...n.payload})},$Z=({element:t,runtime:e,eventHandler:r})=>({onValueChange:n=>{e.value=n.value,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,e.lastExternalValue=n.value,Mr(e,t),Mc({eventHandler:r,eventName:"change",element:t,eventConfig:t.change,snapshot:n})},onFocus:n=>{let i=e.nativeFocused===!0;e.nativeFocused=!0,e.focused=!0,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,e.selectionAnchor=n.selectionStart===n.selectionEnd?n.selectionEnd:e.selectionAnchor,e.blinkVisible=!0,e.blinkTick=0,Mr(e,t),!i&&Mc({eventHandler:r,eventName:"focus",element:t,eventConfig:t.focusEvent,snapshot:n})},onBlur:n=>{e.nativeFocused=!1,e.focused=!1,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,e.blinkVisible=!1,e.composing=!1,Mr(e,t),Mc({eventHandler:r,eventName:"blur",element:t,eventConfig:t.blurEvent,snapshot:n})},onSelectionChange:n=>{e.nativeFocused=n.focused,e.focused=n.focused,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,n.selectionStart===n.selectionEnd&&(e.selectionAnchor=n.selectionEnd),Mr(e,t),Mc({eventHandler:r,eventName:"selectionChange",element:t,eventConfig:t.selectionChange,snapshot:n})},...t.submit&&{onSubmit:n=>{Mc({eventHandler:r,eventName:"submit",element:t,eventConfig:t.submit,snapshot:n})}},onCompositionStart:n=>{e.composing=!0,Mr(e,t),Mc({eventHandler:r,eventName:"compositionStart",element:t,eventConfig:t.compositionStart,snapshot:n})},onCompositionUpdate:n=>{e.composing=!0,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,Mr(e,t),Mc({eventHandler:r,eventName:"compositionUpdate",element:t,eventConfig:t.compositionUpdate,snapshot:n})},onCompositionEnd:n=>{e.composing=!1,e.value=n.value,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,Mr(e,t),Mc({eventHandler:r,eventName:"compositionEnd",element:t,eventConfig:t.compositionEnd,snapshot:n})}}),iz=({app:t,parent:e,element:r,animations:n,animationBus:i,completionTracker:o,eventHandler:s,renderContext:a,zIndex:c})=>{if(!t.inputDomBridge?.mount||!t.inputDomBridge?.focus||!t.inputDomBridge?.setSelection)throw new Error("Input plugin requires app.inputDomBridge to be initialized");let l=new _e({label:r.id});l.zIndex=c,l.sortableChildren=!0,l.eventMode="static",l.cursor=r.disabled?"default":"text",l.alpha=r.alpha,nt(l,r);let u=rz(r),d=nz({app:t,container:l,display:u,element:r});l.addChild(d.background,d.selection,d.text,d.placeholder,d.caret,d.clip),d.tickerListener=w=>{if(!d.focused){if(d.blinkVisible===!1)return;d.blinkVisible=!1,Mr(d,d.element);return}d.blinkTick+=w.deltaMS??w.deltaTime??16,d.blinkTick>=530&&(d.blinkTick=0,d.blinkVisible=!d.blinkVisible,Mr(d,d.element))},t.ticker?.add?.(d.tickerListener),ti(l,()=>{t.ticker?.remove?.(d.tickerListener),d.tickerListener=null,t.inputDomBridge.unmount(r.id,d)});let h=({start:w,end:S,shouldFocus:x=!1})=>{if(x){t.inputDomBridge.focus(r.id,{selectionStart:w,selectionEnd:S});return}t.inputDomBridge.setSelection(r.id,w,S)},f=w=>{w?.stopPropagation?.()},m=({start:w,end:S,shouldFocus:x=!1,anchor:T=d.selectionAnchor})=>{d.focused=!0,d.selectionStart=w,d.selectionEnd=S,d.selectionAnchor=T,d.blinkVisible=!0,d.blinkTick=0,Mr(d,d.element),h({start:w,end:S,shouldFocus:x})},p=w=>{if(f(w),d.element.disabled===!0)return;w?.preventDefault?.();let S=l.toLocal(w.global),x=pP(d,S),T=!!w.shiftKey&&d.focused,v=T?d.selectionAnchor??(d.selectionStart!==d.selectionEnd?d.selectionStart:d.selectionEnd):x,C=T?Math.min(v,x):x,M=T?Math.max(v,x):x;d.draggingSelection=!0,m({start:C,end:M,shouldFocus:!0,anchor:v})},g=w=>{if(!d.draggingSelection||d.element.disabled===!0)return;f(w);let S=l.toLocal(w.global),x=pP(d,S),T=d.selectionAnchor??x,v=Math.min(T,x),C=Math.max(T,x);m({start:v,end:C,anchor:T})},y=w=>{f(w),d.draggingSelection=!1},b=w=>{f(w),d.draggingSelection=!1,d.element.disabled!==!0&&t.inputDomBridge.focus(r.id,{selectionStart:d.selectionStart,selectionEnd:d.selectionEnd})};l.on("pointerdown",p),l.on("globalpointermove",g),l.on("pointerup",b),l.on("pointerupoutside",y),l.on("rightclick",f),l[Vb]=d,Mr(d,r),t.inputDomBridge.mount(r.id,{...r,owner:d,value:d.value,callbacks:$Z({element:r,runtime:d,eventHandler:s}),getGeometry:()=>Hb(t,l,r),hitTest:w=>zb(l,r,w)}),e.addChild(l),Oe(l,r.filters,{width:r.width,height:r.height}),Se({animations:n,targetId:r.id,animationBus:i,completionTracker:o,element:l,targetState:Ye(r,{alpha:r.alpha}),renderContext:a})};var Pc=({eventHandler:t,eventName:e,element:r,eventConfig:n,snapshot:i})=>{!t||!n||t(e,{_event:{id:r.id,value:i.value,selectionStart:i.selectionStart,selectionEnd:i.selectionEnd,composing:i.composing},...n.payload})},GZ=({element:t,runtime:e,eventHandler:r})=>({onValueChange:n=>{e.value=n.value,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,e.lastExternalValue=n.value,Mr(e,t),Pc({eventHandler:r,eventName:"change",element:t,eventConfig:t.change,snapshot:n})},onFocus:n=>{let i=e.nativeFocused===!0;e.nativeFocused=!0,e.focused=!0,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,e.selectionAnchor=n.selectionStart===n.selectionEnd?n.selectionEnd:e.selectionAnchor,e.blinkVisible=!0,e.blinkTick=0,Mr(e,t),!i&&Pc({eventHandler:r,eventName:"focus",element:t,eventConfig:t.focusEvent,snapshot:n})},onBlur:n=>{e.nativeFocused=!1,e.focused=!1,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,e.blinkVisible=!1,e.composing=!1,Mr(e,t),Pc({eventHandler:r,eventName:"blur",element:t,eventConfig:t.blurEvent,snapshot:n})},onSelectionChange:n=>{e.nativeFocused=n.focused,e.focused=n.focused,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,n.selectionStart===n.selectionEnd&&(e.selectionAnchor=n.selectionEnd),Mr(e,t),Pc({eventHandler:r,eventName:"selectionChange",element:t,eventConfig:t.selectionChange,snapshot:n})},...t.submit&&{onSubmit:n=>{Pc({eventHandler:r,eventName:"submit",element:t,eventConfig:t.submit,snapshot:n})}},onCompositionStart:n=>{e.composing=!0,Mr(e,t),Pc({eventHandler:r,eventName:"compositionStart",element:t,eventConfig:t.compositionStart,snapshot:n})},onCompositionUpdate:n=>{e.composing=!0,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,Mr(e,t),Pc({eventHandler:r,eventName:"compositionUpdate",element:t,eventConfig:t.compositionUpdate,snapshot:n})},onCompositionEnd:n=>{e.composing=!1,e.value=n.value,e.selectionStart=n.selectionStart,e.selectionEnd=n.selectionEnd,Mr(e,t),Pc({eventHandler:r,eventName:"compositionEnd",element:t,eventConfig:t.compositionEnd,snapshot:n})}}),oz=({app:t,parent:e,prevElement:r,nextElement:n,eventHandler:i,animations:o,animationBus:s,completionTracker:a,zIndex:c,deferRenderStateCommit:l,commitRenderState:u})=>{let d=e.children.find(b=>b.label===r.id);if(!d)return;if(!t.inputDomBridge?.update)throw new Error("Input plugin requires app.inputDomBridge to be initialized");d.zIndex=c;let h=d[Vb];if(!h)return;let f={...n},m=h.focused!==!0||n.value!==r.value;m&&h.composing!==!0?(h.value=n.value,h.lastExternalValue=n.value):f.value=h.value;let p=m&&h.composing!==!0;Fr({displayObject:d,element:n,animations:o,targetId:r.id});let g=()=>{p&&(h.value=n.value,h.lastExternalValue=n.value),h.element=f,d.label=n.id,d.cursor=n.disabled?"default":"text",d.alpha=n.alpha,nt(d,n),n.disabled===!0&&(h.draggingSelection=!1),(!Le(r,n)||m)&&Mr(h,f),t.inputDomBridge.update(n.id,{...f,value:h.value,callbacks:GZ({element:f,runtime:h,eventHandler:i}),getGeometry:()=>Hb(t,d,f),hitTest:b=>zb(d,f,b)}),gt(d,n),u?.(d)};Se({animations:o,targetId:r.id,animationBus:s,completionTracker:a,element:d,targetState:Ye(n,{alpha:n.alpha}),onComplete:g})?l?.():g()};var sz=({app:t,parent:e,element:r,animations:n,animationBus:i,completionTracker:o})=>{let s=e.getChildByLabel(r.id);if(!s)return;if(!t.inputDomBridge?.unmount)throw new Error("Input plugin requires app.inputDomBridge to be initialized");let a=()=>{s.destroyed||s.destroy({children:!0})};Se({animations:n,targetId:r.id,animationBus:i,completionTracker:o,element:s,targetState:null,onComplete:a})||a()};var az=({state:t})=>{t.fill!==void 0&&m_(t.fill,"input.fill");let e=dr(t),r=String(t.value??""),n=String(t.placeholder??"");return{...e,value:r,placeholder:n,multiline:t.multiline===!0,disabled:t.disabled===!0,...typeof t.submitOnEnter=="boolean"&&{submitOnEnter:t.submitOnEnter},...typeof t.maxLength=="number"&&{maxLength:Math.round(t.maxLength)},textStyle:Nb(t.textStyle),padding:dP(t.padding),fill:t.fill!==void 0?t.fill:cP,border:fP(t.border,lP),focusRing:fP(t.focusRing,uP),...t.change&&{change:t.change},...t.submit&&{submit:t.submit},...t.focusEvent&&{focusEvent:t.focusEvent},...t.blurEvent&&{blurEvent:t.blurEvent},...t.selectionChange&&{selectionChange:t.selectionChange},...t.compositionStart&&{compositionStart:t.compositionStart},...t.compositionUpdate&&{compositionUpdate:t.compositionUpdate},...t.compositionEnd&&{compositionEnd:t.compositionEnd}}};var NZ=Er({type:"input",add:iz,update:oz,delete:sz,parse:az});var VZ=24,HZ=24,tu=(t,e,r)=>Math.min(r,Math.max(e,t)),uz=t=>tu(t,0,1),kf=t=>{t?.stopPropagation?.()},zZ=t=>t?W.from(t):W.EMPTY,Wb=({label:t})=>{let e=new ht(W.EMPTY);return e.label=t,e.eventMode="static",e.cursor="pointer",e},WZ=({config:t,state:e})=>t?e?.pressed&&t.pressSrc?t.pressSrc:e?.hovered&&t.hoverSrc?t.hoverSrc:t.src??"":"",Xb=({sprite:t,config:e,state:r,width:n,height:i})=>{t&&(t.texture=zZ(WZ({config:e,state:r})),t.width=Math.max(n,0),t.height=Math.max(i,0),t.visible=t.width>0&&t.height>0,t.eventMode=t.visible?"static":"none")},XZ=t=>({root:`${t}-scrollbar-vertical`,track:`${t}-scrollbar-vertical-track`,thumb:`${t}-scrollbar-vertical-thumb`,startButton:`${t}-scrollbar-vertical-start-button`,endButton:`${t}-scrollbar-vertical-end-button`}),cz=(t,e)=>Math.abs(t-e)<.5,lz=({hasOverflow:t,minScroll:e,previousOffset:r,wasAtEnd:n,anchorToEnd:i})=>t?i&&(r===void 0||n)?e:typeof r=="number"?tu(r,e,0):0:0,YZ=({controller:t})=>{let e=XZ(t.container.label),r=t.element.scrollbar?.vertical;if(!r)return null;let n=new _e({label:e.root});n.eventMode="static",n.cursor="pointer";let i=Wb({label:e.track}),o=Wb({label:e.thumb}),s={config:r,root:n,track:i,thumb:o,startButton:null,endButton:null,states:{track:{hovered:!1,pressed:!1},thumb:{hovered:!1,pressed:!1,dragging:!1},startButton:{hovered:!1,pressed:!1},endButton:{hovered:!1,pressed:!1}},dragOffsetY:0};n.addChild(i),n.addChild(o),r.startButton&&(s.startButton=Wb({label:e.startButton}),n.addChild(s.startButton)),r.endButton&&(s.endButton=Wb({label:e.endButton}),n.addChild(s.endButton));let a=()=>{dz({controller:t})};i.on("pointerover",()=>{s.states.track.hovered=!0,a()}),i.on("pointerout",()=>{s.states.track.hovered=!1,a()}),i.on("pointerdown",d=>{kf(d),s.states.track.pressed=!0,a();let h=n.toLocal(d.global),{thumb:f}=s,m=t.viewportHeight;h.y<f.y?t.setScrollOffsets({y:t.scrollYOffset+m,source:"track"}):h.y>f.y+f.height&&t.setScrollOffsets({y:t.scrollYOffset-m,source:"track"})});let c=d=>{kf(d),s.states.track.pressed=!1,a()};i.on("pointerup",c),i.on("pointerupoutside",c),o.on("pointerover",()=>{s.states.thumb.hovered=!0,a()}),o.on("pointerout",()=>{s.states.thumb.hovered=!1,s.states.thumb.dragging||a()}),o.on("pointerdown",d=>{kf(d);let h=n.toLocal(d.global);s.states.thumb.pressed=!0,s.states.thumb.dragging=!0,s.dragOffsetY=h.y-s.thumb.y,a()});let l=d=>{if(kf(d),!s.states.thumb.dragging){s.states.thumb.pressed=!1,a();return}s.states.thumb.dragging=!1,s.states.thumb.pressed=!1,a()};n.on("globalpointermove",d=>{if(!s.states.thumb.dragging)return;let h=n.toLocal(d.global),f=s.track.y,m=Math.max(s.track.height-s.thumb.height,0);if(m<=0||t.minScrollY===0){t.setScrollOffsets({y:0,source:"thumb"});return}let p=tu(h.y-s.dragOffsetY,f,f+m),g=uz((p-f)/m);t.setScrollOffsets({y:t.minScrollY*g,source:"thumb"})}),o.on("pointerup",l),o.on("pointerupoutside",l),n.on("pointerup",l),n.on("pointerupoutside",l);let u=({sprite:d,config:h,state:f,deltaDirection:m})=>{if(!d||!h)return;d.on("pointerover",()=>{f.hovered=!0,a()}),d.on("pointerout",()=>{f.hovered=!1,a()}),d.on("pointerdown",g=>{kf(g),f.pressed=!0,a(),t.setScrollOffsets({y:t.scrollYOffset+m*Math.max(h.step??VZ,0),source:"button"})});let p=g=>{kf(g),f.pressed=!1,a()};d.on("pointerup",p),d.on("pointerupoutside",p)};return u({sprite:s.startButton,config:r.startButton,state:s.states.startButton,deltaDirection:1}),u({sprite:s.endButton,config:r.endButton,state:s.states.endButton,deltaDirection:-1}),t.container.addChild(n),s},dz=({controller:t})=>{let e=t.verticalScrollbar;if(!e)return;let{config:r,root:n,track:i,thumb:o,startButton:s,endButton:a,states:c}=e,l=Math.max(r.thickness??0,0),u=s?Math.max(r.startButton?.size??l,0):0,d=a?Math.max(r.endButton?.size??l,0):0,h=Math.max(t.viewportHeight-u-d,0),f=Math.min(HZ,h),m=r.thumb?.length,p=typeof m=="number"?m:t.totalHeight>0?Math.round(t.viewportHeight/t.totalHeight*h):h,g=h>0?typeof m=="number"?tu(p,0,h):tu(p,f,h):0,y=Math.max(h-g,0),b=t.minScrollY===0?0:uz(t.scrollYOffset/t.minScrollY);n.visible=t.hasVerticalOverflow&&t.element.scroll&&l>0&&t.viewportHeight>0,n.x=Math.max(t.viewportWidth-l,0),n.y=0,i.x=0,i.y=u,Xb({sprite:i,config:r.track,state:c.track,width:l,height:h}),o.x=0,o.y=u+y*b,Xb({sprite:o,config:r.thumb,state:c.thumb,width:l,height:g}),s&&(s.x=0,s.y=0,Xb({sprite:s,config:r.startButton,state:c.startButton,width:l,height:u})),a&&(a.x=0,a.y=t.viewportHeight-d,Xb({sprite:a,config:r.endButton,state:c.endButton,width:l,height:d}))},fz=({container:t})=>{let e=t.__routeGraphicsScrollController;return e?{scrollXOffset:e.scrollXOffset,scrollYOffset:e.scrollYOffset,wasAtHorizontalEnd:e.hasHorizontalOverflow&&cz(e.scrollXOffset,e.minScrollX),wasAtVerticalEnd:e.hasVerticalOverflow&&cz(e.scrollYOffset,e.minScrollY)}:null},$g=({container:t,element:e,interactive:r=!0,allowViewportWithoutScroll:n=!1,previousState:i=null})=>{let o=0,s=0;e.children.forEach(u=>{o=Math.max(u.width+u.x,o),s=Math.max(u.height+u.y,s)});let a=!!(e.height&&s>e.height),c=!!(e.width&&o>e.width);if((e.scroll||n)&&(a||c)){let u=new _e({label:`${t.label}-content`});[...t.children].forEach(g=>{u.addChild(g)}),t.addChild(u);let h=new Lt({label:`${t.label}-clip`}).rect(0,0,e.width||o,e.height||s).fill({color:16711680,alpha:0});t.addChild(h),u.mask=h;let f=-(s-(e.height||s)),m=-(o-(e.width||o)),p={container:t,contentContainer:u,clip:h,element:e,totalWidth:o,totalHeight:s,viewportWidth:e.width||o,viewportHeight:e.height||s,hasHorizontalOverflow:c,hasVerticalOverflow:a,minScrollX:m,minScrollY:f,scrollXOffset:lz({hasOverflow:c,minScroll:m,previousOffset:i?.scrollXOffset,wasAtEnd:i?.wasAtHorizontalEnd,anchorToEnd:!!e.anchorToBottom}),scrollYOffset:lz({hasOverflow:a,minScroll:f,previousOffset:i?.scrollYOffset,wasAtEnd:i?.wasAtVerticalEnd,anchorToEnd:!!e.anchorToBottom}),verticalScrollbar:null,setScrollOffsets:({x:g,y})=>{let b=g??p.scrollXOffset,w=y??p.scrollYOffset;p.scrollXOffset=p.hasHorizontalOverflow?tu(b,p.minScrollX,0):0,p.scrollYOffset=p.hasVerticalOverflow?tu(w,p.minScrollY,0):0,p.contentContainer.x=p.scrollXOffset,p.contentContainer.y=p.scrollYOffset,dz({controller:p})}};t.__routeGraphicsScrollController=p,p.verticalScrollbar=YZ({controller:p}),p.setScrollOffsets({x:p.scrollXOffset,y:p.scrollYOffset,source:"initial"}),r&&(t.eventMode="static",t.hitArea=new be(0,0,e.width||o,e.height||s),t.on("wheel",g=>{if(g.preventDefault(),a&&g.deltaY!==0&&p.setScrollOffsets({y:p.scrollYOffset-g.deltaY,source:"wheel"}),c&&(g.deltaX!==0||g.shiftKey&&g.deltaY!==0)){let y=g.deltaX!==0?g.deltaX:g.deltaY;p.setScrollOffsets({x:p.scrollXOffset-y,source:"wheel"})}}))}},mP=({container:t})=>{let e=t.__routeGraphicsScrollController,r=t.children.find(o=>o.label&&o.label.endsWith("-content")),n=t.children.find(o=>o.label&&o.label.endsWith("-clip")),i=t.children.find(o=>o.label&&o.label.endsWith("-scrollbar-vertical"));r&&([...r.children].forEach(s=>{s.mask=null,t.addChild(s)}),t.removeChild(r),r.destroy({children:!1})),n&&(t.removeChild(n),n.destroy()),i&&(t.removeChild(i),i.destroy({children:!0})),t.eventMode="auto",t.hitArea=null,t.removeAllListeners("wheel"),e&&(t.__routeGraphicsScrollController=void 0)};var gP=({container:t,element:e,enabled:r})=>{let n=Number.isFinite(e?.width)?e.width:0,i=Number.isFinite(e?.height)?e.height:0;if(r&&n>0&&i>0){t.hitArea=new be(0,0,n,i);return}t.hitArea=null},hz=(t,e)=>{let r=e??null;for(;r;){if(r===t)return!0;r=r.parent??null}return!1},ru=(t,e)=>{let r=e??null;for(;r;){if(r===t)return!1;if(typeof r.label=="string"&&r.label.startsWith(`${t.label}-scrollbar-`))return!0;r=r.parent??null}return!1},jZ=(t,e)=>{if(!e||typeof e.x!="number"||typeof e.y!="number")return!1;let r=t.toLocal(e),n=t.hitArea;return n?.contains?n.contains(r.x,r.y):!1},Yb=({app:t,container:e,element:r,eventHandler:n})=>{let i=XM(e),o=YM(e),s=jM(e),a=i;e._cleanupScrollInteraction?.(),Sf({root:e,isHovered:!1}),Zl({root:e,isPressed:!1}),la({root:e,isPressed:!1}),e.removeAllListeners("pointerover"),e.removeAllListeners("pointerout"),e.removeAllListeners("pointerdown"),e.removeAllListeners("pointerup"),e.removeAllListeners("pointerupoutside"),e.removeAllListeners("rightdown"),e.removeAllListeners("rightup"),e.removeAllListeners("rightupoutside"),e.removeAllListeners("rightclick"),e.cursor="auto",r.scroll||(e.eventMode="auto",gP({container:e,element:r,enabled:!1}));let c=r?.hover,l=r?.click,u=r?.rightClick,d=r?.scrollUp,h=r?.scrollDown;if(!!(c||l||u||d||h)&&(e.eventMode="static",r.scroll?e.hitArea||gP({container:e,element:r,enabled:!0}):gP({container:e,element:r,enabled:!0})),c){let{cursor:m,soundSrc:p,soundVolume:g,payload:y,inheritToChildren:b}=c,w=x=>{hz(e,x?.relatedTarget)||a||(a=!0,y&&n&&n("hover",{_event:{id:e.label},...y}),m&&(e.cursor=m),p&&t.audioStage.add({id:`hover-${Date.now()}`,url:p,loop:!1,volume:bt(g)}),b&&Sf({root:e,isHovered:!0}))},S=x=>{hz(e,x?.relatedTarget)||jZ(e,x?.global)||a&&(a=!1,e.cursor="auto",b&&Sf({root:e,isHovered:!1}))};e.on("pointerover",w),e.on("pointerout",S)}if(l){let{soundSrc:m,soundVolume:p,payload:g,inheritToChildren:y}=l,b=x=>{Tn(x)&&(ru(e,x?.target)||y&&Zl({root:e,isPressed:!0}))},w=x=>{Tn(x)&&(ru(e,x?.target)||(y&&Zl({root:e,isPressed:!1}),g&&n&&n("click",{_event:{id:e.label},...g}),m&&t.audioStage.add({id:`click-${Date.now()}`,url:m,loop:!1,volume:bt(p)})))},S=x=>{Tn(x)&&(ru(e,x?.target)||y&&Zl({root:e,isPressed:!1}))};e.on("pointerdown",b),e.on("pointerup",w),e.on("pointerupoutside",S)}if(u){let{soundSrc:m,payload:p,inheritToChildren:g}=u,y=T=>{ru(e,T?.target)||g&&la({root:e,isPressed:!0})},b=T=>{ru(e,T?.target)||g&&la({root:e,isPressed:!1})},w=T=>{JV(T)&&(ru(e,T?.target)||g&&la({root:e,isPressed:!1}))},S=T=>{ru(e,T?.target)||(g&&la({root:e,isPressed:!1}),p&&n&&n("rightClick",{_event:{id:e.label},...p}),m&&t.audioStage.add({id:`rightClick-${Date.now()}`,url:m,loop:!1}))},x=()=>{g&&la({root:e,isPressed:!1})};e.on("rightdown",y),e.on("rightup",b),e.on("pointerup",w),e.on("rightclick",S),e.on("pointerupoutside",w),e.on("rightupoutside",x)}(d||h)&&ds({canvas:t.canvas,displayObject:e,scrollUpEvent:d,scrollDownEvent:h,eventHandler:n}),c?.inheritToChildren&&i&&Sf({root:e,isHovered:!0}),l?.inheritToChildren&&o&&Zl({root:e,isPressed:!0}),u?.inheritToChildren&&s&&la({root:e,isPressed:!0})},pz=({container:t})=>{XM(t)&&Sf({root:t,isHovered:!0})},mz=({container:t})=>{YM(t)&&Zl({root:t,isPressed:!0})},gz=({container:t})=>{jM(t)&&la({root:t,isPressed:!0})};var yz=(t,e,r=[])=>{let n=new Set(r instanceof Map?r.keys():r.map(d=>d.targetId)),i=d=>n.has(d.id)?!0:Array.isArray(d.children)&&d.children.some(i),o=new Set,s=new Map,a=new Map,c=[],l=[],u=[];for(let d of t)o.add(d.id),s.set(d.id,d);for(let d of e)o.add(d.id),a.set(d.id,d);for(let d of o){let h=s.get(d),f=a.get(d);!h&&f?c.push(f):h&&!f?l.push(h):(!Le(h,f)||n.size>0&&i(f))&&u.push({prev:h,next:f})}return{toAddElement:c,toDeleteElement:l,toUpdateElement:u}};var qZ=t=>{t.customTickerHandler&&(typeof window<"u"&&window.removeEventListener("snapShotKeyFrame",t.customTickerHandler),t.customTickerHandler=void 0)},KZ=(t,e)=>{e.tickerCallback&&(t?.ticker?.remove?.(e.tickerCallback),e.tickerCallback=void 0)},Gg=({app:t,particleElement:e}={})=>{e&&(KZ(t,e),qZ(e),e.emitter&&(e.emitter.destroy(),e.emitter=void 0))},Or=({app:t,root:e}={})=>{if(!e)return;let r=[e];for(let n of r)n&&((n.emitter||n.tickerCallback||n.customTickerHandler)&&Gg({app:t,particleElement:n}),Array.isArray(n.children)&&n.children.length>0&&r.push(...n.children))};var xz="8.10.2",yP=t=>{let e=t.renderGroup;if(e){if(Is!==xz||e.root!==t||typeof e.structureDidChange!="boolean")throw new Error(`Snapshot rendering is incompatible with the installed Pixi runtime; expected Pixi ${xz} render-group instructions.`);e.structureDidChange=!0}};var xP=({renderer:t,displayObject:e,frame:r,preserveAlpha:n=!1})=>{let i=e.parent,o=i?.getChildIndex(e),s=e.parentRenderLayer,a=s?[...s.renderLayerChildren]:null;yP(e);let c={x:e.x??0,y:e.y??0,scaleX:e.scale?.x??1,scaleY:e.scale?.y??1,rotation:e.rotation??0,alpha:e.alpha??1,skewX:e.skew?.x??0,skewY:e.skew?.y??0,pivotX:e.pivot?.x??0,pivotY:e.pivot?.y??0},l=new _e;l.alpha=n?c.alpha:1;let u=[],d=f=>{try{f()}catch(m){u.push(m)}},h;try{s?.detach(e),l.addChild(e),e.x=0,e.y=0,e.scale?.set?.(1,1),e.rotation=0,e.alpha=1,e.skew?.set?.(0,0),e.pivot?.set?.(0,0),e.updateLocalTransform?.(),h=t.generateTexture({target:l,frame:r})}catch(f){u.push(f)}finally{d(()=>{e.x=c.x,e.y=c.y,e.scale?.set?.(c.scaleX,c.scaleY),e.rotation=c.rotation,e.alpha=c.alpha,e.skew?.set?.(c.skewX,c.skewY),e.pivot?.set?.(c.pivotX,c.pivotY),e.updateLocalTransform?.()}),d(()=>yP(e)),d(()=>{e.parent!==i&&e.removeFromParent()}),d(()=>{i&&e.parent!==i&&i.addChildAt(e,o)}),d(()=>{if(!s||e.parentRenderLayer===s&&s.renderLayerChildren.length===a.length&&s.renderLayerChildren.every((p,g)=>p===a[g]))return;let f=a.filter(p=>p!==e);if(e.parentRenderLayer||s.renderLayerChildren.length!==f.length||!s.renderLayerChildren.every((p,g)=>p===f[g]))throw new Error("Snapshot render-layer membership changed during capture");let m=a.slice(a.indexOf(e)+1);s.detach(...m),s.attach(e,...m)}),d(()=>l.destroy({children:!1}))}if(u.length>0)throw d(()=>h?.destroy(!0)),u.length===1?u[0]:new AggregateError(u,"Snapshot capture or restoration failed");return h},_z=async({renderer:t,displayObject:e,frame:r,format:n="base64"})=>{let i=xP({renderer:t,displayObject:e,frame:r,preserveAlpha:!0}),o=[],s;try{s=await t.extract[n]({target:i})}catch(a){o.push(a)}finally{try{i.destroy(!0)}catch(a){o.push(a)}}if(o.length===1)throw o[0];if(o.length>1)throw new AggregateError(o,"Snapshot extraction or cleanup failed");return s};var bP=t=>Math.min(1,Math.max(0,t));var Ng=t=>t.getLocalBounds().rectangle.clone(),Vg=t=>(t.width=Math.max(1,Math.ceil(t.width)),t.height=Math.max(1,Math.ceil(t.height)),t),wP=(t,e)=>{let r=Vg(Ng(e)),n=e instanceof ht&&(e.filters?.length??0)===0,i=n?e.texture:xP({renderer:t.renderer,displayObject:e,frame:r}),o=new ht(i);n&&(o.tint=e.tint,o.blendMode=e.blendMode),o.x=r.x-(e.pivot?.x??0),o.y=r.y-(e.pivot?.y??0);let s=new _e;return s.x=e.x??0,s.y=e.y??0,s.scale.set(e.scale?.x??1,e.scale?.y??1),s.rotation=e.rotation??0,s.skew?.set?.(e.skew?.x??0,e.skew?.y??0),s.alpha=e.alpha??1,s.addChild(o),{wrapper:s,texture:i,ownsTexture:!n,width:r.width*Math.abs(s.scale.x),height:r.height*Math.abs(s.scale.y)}},SP=t=>{let e=Vg(Ng(t));return{wrapper:t,live:!0,width:e.width*Math.abs(t.scale?.x??1),height:e.height*Math.abs(t.scale?.y??1)}},qb=t=>!t||t.destroyed?!1:t instanceof zo?!0:t.children?.some(e=>qb(e))??!1,ou=t=>t?.live===!0,QZ=t=>{let e={vec2:2,vec3:3,vec4:4,mat3:9,mat4:16,colorSrgb:4,colorLinear:4}[t];return e===void 0?0:Array(e).fill(0)},bz=(t,e,r)=>{let n=r?.wrapper,i={x:n?.x??0,y:n?.y??0,alpha:n?.alpha??1,scaleX:n?.scale?.x??1,scaleY:n?.scale?.y??1,rotation:n?.rotation??0};return{handle:{kind:"surface",surface:e,subject:r,wrapper:n,base:i},identity:`${t}:${e}`,subject:{x:i.x,y:i.y,width:r?.width??1,height:r?.height??1}}},nu=({animation:t,program:e,prevSubject:r,nextSubject:n,maskControllers:i=[],compositorEffect:o,validateTerminal:s=!1})=>{let a=`transition:${t.id}`,c=new Map(e.clipTemplates.map(g=>[g.channel,g.valueType])),l=(t.mask??[]).map((g,y)=>({kind:"mask",index:y,progress:g.progress?.initialValue??0,apply:b=>i[y]?.apply(bP(b))})),u={kind:"compositor",progress:t.compositor?.tween?.progress?.initialValue??t.compositor?.tween?.uProgress?.initialValue??0},d={prev:bz(a,"prev",r),next:bz(a,"next",n),mask:l.map((g,y)=>({handle:g,identity:`${a}:mask:${y}`})),compositor:{handle:u,identity:`${a}:compositor`}},h=(g,y)=>{let b=c.get(y);if(g.handle.kind==="surface"){let{wrapper:w,base:S}=g.handle,T={"transform.x":[()=>S.x,v=>{w&&(w.x=v)}],"transform.y":[()=>S.y,v=>{w&&(w.y=v)}],"transform.scale.x":[()=>1,v=>{w&&(w.scale.x=S.scaleX*v)}],"transform.scale.y":[()=>1,v=>{w&&(w.scale.y=S.scaleY*v)}],"transform.rotation.degrees":[()=>0,v=>{w&&(w.rotation=S.rotation+Tl(v))}],"appearance.alpha":[()=>1,v=>{w&&(w.alpha=S.alpha*v)}]}[y];return T?{valueType:b,get:T[0],apply:(v,C)=>T[1](C)}:null}if(g.handle.kind==="mask"&&y==="transition.mask.progress")return{valueType:b,get:()=>g.handle.progress,apply:(w,S)=>{g.handle.progress=S,g.handle.apply(S)}};if(g.handle.kind==="compositor"){if(y==="transition.compositor.progress")return{valueType:b,get:()=>g.handle.progress,apply:(S,x)=>{g.handle.progress=x,o&&Wm(o,x)}};let w=/^transition\.compositor\.parameter\.(.+)$/.exec(y);if(w){let S=w[1];return{valueType:b,get:()=>{if(!o)return QZ(b);let x=zd(o,S);if(x===void 0)throw new Error(`Transition animation "${t.id}" cannot target unknown compositor parameter "${S}".`);return x},apply:(x,T)=>{o&&Xm(o,S,T)}}}}return null},f=lc(e,{capabilities:new Set(e.requirements),transitionTargets:d,channelRegistry:{resolve:h}});if(!Number.isFinite(f.duration))throw new Error(`Transition animation "${t.id}" must be finite.`);let m=vg(f);try{let g=m.evaluate(f.duration);if(s&&t.gsap){for(let[y]of(t.mask??[]).entries())if(g.values.find(w=>w.targetIdentity===`${a}:mask:${y}`&&w.channel==="transition.mask.progress")?.value!==1)throw new Error(`Transition animation "${t.id}" mask[${y}] must have effective terminal progress 1.`);if(t.compositor&&g.values.find(b=>b.channel==="transition.compositor.progress")?.value!==1)throw new Error(`Transition animation "${t.id}" compositor must have effective terminal progress 1.`)}}catch(g){throw m.destroy(),g}let p=new Set([0,f.duration]);for(let g of f.tracks)for(let y of g.segments){p.add(y.rootStart),p.add(y.rootEnd);let b=y.rootEnd-y.rootStart;if(b>0){let w=new Set([.25,.5,.75,...eG(y.easing)]);for(let S of w)p.add(y.rootStart+b*S)}}return{program:e,instance:f,backend:m.backend,duration:f.duration,sampleTimes:[...p].sort((g,y)=>g-y),apply:g=>{if(i.length>0){let y=qd(f.domains.root,g);for(let[b,w]of(t.mask??[]).entries())i[b]?.setActive(y.localTime>=(w.delay??0))}m.apply(g)},destroy:m.destroy}},JZ=t=>{let e=new Set([0]);for(let r of t){for(let n of r.sampleTimes??[])e.add(n);e.add(r.duration);for(let{timeline:n}of r.timelines??[])for(let i=0;i<n.length;i++){let o=n[i].time;if(e.add(o),i===0)continue;let s=n[i-1].time,a=o-s;a<=0||(e.add(s+a*.25),e.add(s+a*.5),e.add(s+a*.75))}}return[...e].sort((r,n)=>r-n)},ZZ=t=>{if(t.length===0)return new be(0,0,1,1);let e=1/0,r=1/0,n=-1/0,i=-1/0;for(let o of t)e=Math.min(e,o.x),r=Math.min(r,o.y),n=Math.max(n,o.x+o.width),i=Math.max(i,o.y+o.height);return new be(e,r,n-e,i-r)},vP=`
|
|
1671
1671
|
in vec2 aPosition;
|
|
1672
1672
|
out vec2 vTextureCoord;
|
|
1673
1673
|
out vec2 vSecondaryCoord;
|