jbrowse-plugin-msaview 5.7.0 → 5.9.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.
- package/dist/MsaViewPanel/model.d.ts +3 -8
- package/dist/chunks/{AboutDialog-ZHJOECNZ.js → AboutDialog-ZQPAUPJC.js} +2 -2
- package/dist/chunks/{AboutDialog-ZHJOECNZ.js.map → AboutDialog-ZQPAUPJC.js.map} +1 -1
- package/dist/chunks/{AnnotationFileDialog-6LTHZI64.js → AnnotationFileDialog-TYDIYGLI.js} +2 -2
- package/dist/chunks/{AnnotationFileDialog-6LTHZI64.js.map → AnnotationFileDialog-TYDIYGLI.js.map} +1 -1
- package/dist/chunks/{ExportSVGDialog-VP5LUY7X.js → ExportSVGDialog-EP2JSB3X.js} +2 -2
- package/dist/chunks/{ExportSVGDialog-VP5LUY7X.js.map → ExportSVGDialog-EP2JSB3X.js.map} +1 -1
- package/dist/chunks/{FeatureDialog-YEOUA5YS.js → FeatureDialog-YKG2V5HC.js} +1 -1
- package/dist/chunks/{FeatureDialog-YEOUA5YS.js.map → FeatureDialog-YKG2V5HC.js.map} +1 -1
- package/dist/chunks/{GapThresholdDialog-3MOBT6NY.js → GapThresholdDialog-Z2MUN66L.js} +1 -1
- package/dist/chunks/{GapThresholdDialog-3MOBT6NY.js.map → GapThresholdDialog-Z2MUN66L.js.map} +1 -1
- package/dist/chunks/{GoToDialog-2L4KUO6R.js → GoToDialog-7PKEFGVS.js} +2 -2
- package/dist/chunks/{GoToDialog-2L4KUO6R.js.map → GoToDialog-7PKEFGVS.js.map} +1 -1
- package/dist/chunks/{HelpDialog-3KGMHUYG.js → HelpDialog-EXKEV7B7.js} +2 -2
- package/dist/chunks/{HelpDialog-3KGMHUYG.js.map → HelpDialog-EXKEV7B7.js.map} +1 -1
- package/dist/chunks/{MetadataDialog-LAVES424.js → MetadataDialog-X5MJ7YCK.js} +2 -2
- package/dist/chunks/{MetadataDialog-LAVES424.js.map → MetadataDialog-X5MJ7YCK.js.map} +1 -1
- package/dist/chunks/{MsaViewPanel-3R4SLB6M.js → MsaViewPanel-5CYNXYYB.js} +2 -2
- package/dist/chunks/{TrackInfoDialog-RJDJ6NVE.js → TrackInfoDialog-7EDJNEPN.js} +2 -2
- package/dist/chunks/{TrackInfoDialog-RJDJ6NVE.js.map → TrackInfoDialog-7EDJNEPN.js.map} +1 -1
- package/dist/chunks/{TreeNodeInfoDialog-IWH7HU7R.js → TreeNodeInfoDialog-W7RRBNII.js} +2 -2
- package/dist/chunks/{TreeNodeInfoDialog-IWH7HU7R.js.map → TreeNodeInfoDialog-W7RRBNII.js.map} +1 -1
- package/dist/chunks/chunk-3IMKCK3L.js +164 -0
- package/dist/chunks/{chunk-BVAC5762.js.map → chunk-3IMKCK3L.js.map} +4 -4
- package/dist/chunks/{chunk-UVY5VU6U.js → chunk-6OWSE2MN.js} +1 -1
- package/dist/chunks/{chunk-UVY5VU6U.js.map → chunk-6OWSE2MN.js.map} +1 -1
- package/dist/chunks/chunk-FLLB6DZB.js +2 -0
- package/dist/chunks/{chunk-TIHSPFDA.js.map → chunk-FLLB6DZB.js.map} +2 -2
- package/dist/chunks/{chunk-GEFXJOLW.js → chunk-FOXX2JFU.js} +2 -2
- package/dist/chunks/{chunk-GEFXJOLW.js.map → chunk-FOXX2JFU.js.map} +1 -1
- package/dist/chunks/{chunk-35FE7DCA.js → chunk-KLV6CEYV.js} +2 -2
- package/dist/chunks/{chunk-35FE7DCA.js.map → chunk-KLV6CEYV.js.map} +1 -1
- package/dist/chunks/{chunk-CMRWVG7E.js → chunk-KVBJKJMY.js} +2 -2
- package/dist/chunks/{chunk-CMRWVG7E.js.map → chunk-KVBJKJMY.js.map} +1 -1
- package/dist/chunks/{chunk-DFVHVWTM.js → chunk-LVTVDNF4.js} +1 -1
- package/dist/chunks/{chunk-DFVHVWTM.js.map → chunk-LVTVDNF4.js.map} +1 -1
- package/dist/chunks/{chunk-OG5MRAUS.js → chunk-OHGKVDDO.js} +1 -1
- package/dist/chunks/{chunk-OG5MRAUS.js.map → chunk-OHGKVDDO.js.map} +1 -1
- package/dist/chunks/{chunk-L4YUAU73.js → chunk-RI2VZFHF.js} +1 -1
- package/dist/chunks/{chunk-L4YUAU73.js.map → chunk-RI2VZFHF.js.map} +1 -1
- package/dist/chunks/{chunk-EJCJ3TTF.js → chunk-SFZR4U6U.js} +1 -1
- package/dist/chunks/{chunk-EJCJ3TTF.js.map → chunk-SFZR4U6U.js.map} +1 -1
- package/dist/chunks/{chunk-HO3AGOGX.js → chunk-TQOZBSPV.js} +1 -1
- package/dist/chunks/{chunk-HO3AGOGX.js.map → chunk-TQOZBSPV.js.map} +1 -1
- package/dist/chunks/chunk-UVFAXHFP.js +2 -0
- package/dist/chunks/chunk-UVFAXHFP.js.map +7 -0
- package/dist/chunks/{dist-LYE6BRGC.js → dist-QJJSXDTG.js} +2 -2
- package/dist/chunks/{dist-S26YAMK2.js → dist-U6FMEM2K.js} +1 -1
- package/dist/chunks/{dist-S26YAMK2.js.map → dist-U6FMEM2K.js.map} +1 -1
- package/dist/chunks/{model-IH7IQHGD.js → model-HHPTVO3C.js} +2 -2
- package/dist/chunks/{renderToSvg-HKGHZ7XL.js → renderToSvg-UAVANM7O.js} +2 -2
- package/dist/jbrowse-plugin-msaview.esm.js +1 -1
- package/dist/jbrowse-plugin-msaview.esm.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -2
- package/src/version.ts +1 -1
- package/dist/chunks/chunk-BVAC5762.js +0 -164
- package/dist/chunks/chunk-NGMLSBBJ.js +0 -2
- package/dist/chunks/chunk-NGMLSBBJ.js.map +0 -7
- package/dist/chunks/chunk-TIHSPFDA.js +0 -2
- /package/dist/chunks/{MsaViewPanel-3R4SLB6M.js.map → MsaViewPanel-5CYNXYYB.js.map} +0 -0
- /package/dist/chunks/{dist-LYE6BRGC.js.map → dist-QJJSXDTG.js.map} +0 -0
- /package/dist/chunks/{model-IH7IQHGD.js.map → model-HHPTVO3C.js.map} +0 -0
- /package/dist/chunks/{renderToSvg-HKGHZ7XL.js.map → renderToSvg-UAVANM7O.js.map} +0 -0
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import{a as Tu}from"./chunk-6OWSE2MN.js";import{c as ku}from"./chunk-LVTVDNF4.js";import{a as $a}from"./chunk-OHGKVDDO.js";import{a as En,b as Cu,c as Eu,e as Mu,f as Au}from"./chunk-RI2VZFHF.js";import{a as je}from"./chunk-FCWXYIFC.js";import{a as ac,b as dc,c as J0}from"./chunk-QWXSEUZI.js";import{c as sc}from"./chunk-K55ZVN73.js";import{a as ic,b as W,c as te}from"./chunk-EKTRLQV7.js";import{$ as _a,A as ou,B as iu,C as au,D as Tn,E as su,F as Lo,G as lu,H as cu,I as uu,J as fu,K as du,L as pu,M as Ia,N as mu,O as hu,P as gu,Q as Pt,R as Da,S as yu,T as Ba,U as Io,V as bu,W as xu,X as wu,Y as Na,Z as vu,_ as ey,a as Or,b as pc,c as kt,d as mc,e as hc,f as gc,g as yc,h as bc,i as xc,j as vc,k as Sc,l as wo,m as vo,n as Tc,o as Cc,p as Ec,q as Rt,r as Ro,s as eu,t as Po,u as tu,v as Oo,w as ru,x as La,y as Fo,z as nu}from"./chunk-KVBJKJMY.js";import{A as Hc,B as Ao,C as zc,D as Wc,E as Vc,F as jc,G as Gc,H as Uc,I as ar,J as Yc,K as Kc,L as Xc,M as ko,N as qc,O as Sn,P as Zc,Q as Qc,R as Jc,a as wc,b as Pa,c as Oa,d as Mc,e as Ac,f as kc,g as Rc,h as Fa,i as Pc,l as Oc,m as Fc,n as So,o as To,p as ir,q as Co,r as Lc,s as Eo,t as Ic,u as Dc,v as Bc,w as Mo,x as Nc,y as _c,z as $c}from"./chunk-UVFAXHFP.js";import{b as lc,c as cc,d as nr,f as uc,g as fc,h as or}from"./chunk-73KAPCJ2.js";import{a as Cn,b as Su}from"./chunk-SFZR4U6U.js";import{a as _}from"./chunk-CVLB4VFP.js";import{a as Ra}from"./chunk-DNFD5II2.js";import{a as J}from"./chunk-BX4Z274Q.js";import{a as R}from"./chunk-J6KYLXRD.js";import{a as Ve,b as y}from"./chunk-FY3BTKY4.js";var Bu=Ve((bT,Du)=>{Du.exports=JBrowseExports["@jbrowse/core/ui/ErrorBoundary"]});var Mn=Ve((vT,Hu)=>{Hu.exports=JBrowseExports["@jbrowse/core/ui/BaseTooltip"]});var Ho=Ve((PT,Gu)=>{Gu.exports=JBrowseExports["@jbrowse/core/ui/theme"]});var Ya=Ve((rC,pf)=>{pf.exports=JBrowseExports["@jbrowse/core/util/useMeasure"]});var yf=Ve(X=>{"use strict";var Xa=Symbol.for("react.transitional.element"),qa=Symbol.for("react.portal"),Vo=Symbol.for("react.fragment"),jo=Symbol.for("react.strict_mode"),Go=Symbol.for("react.profiler"),Uo=Symbol.for("react.consumer"),Yo=Symbol.for("react.context"),Ko=Symbol.for("react.forward_ref"),Xo=Symbol.for("react.suspense"),qo=Symbol.for("react.suspense_list"),Zo=Symbol.for("react.memo"),Qo=Symbol.for("react.lazy"),gf=Symbol.for("react.view_transition"),Ny=Symbol.for("react.client.reference");function Ge(e){if(typeof e=="object"&&e!==null){var t=e.$$typeof;switch(t){case Xa:switch(e=e.type,e){case Vo:case Go:case jo:case Xo:case qo:case gf:return e;default:switch(e=e&&e.$$typeof,e){case Yo:case Ko:case Qo:case Zo:return e;case Uo:return e;default:return t}}case qa:return t}}}X.ContextConsumer=Uo;X.ContextProvider=Yo;X.Element=Xa;X.ForwardRef=Ko;X.Fragment=Vo;X.Lazy=Qo;X.Memo=Zo;X.Portal=qa;X.Profiler=Go;X.StrictMode=jo;X.Suspense=Xo;X.SuspenseList=qo;X.isContextConsumer=function(e){return Ge(e)===Uo};X.isContextProvider=function(e){return Ge(e)===Yo};X.isElement=function(e){return typeof e=="object"&&e!==null&&e.$$typeof===Xa};X.isForwardRef=function(e){return Ge(e)===Ko};X.isFragment=function(e){return Ge(e)===Vo};X.isLazy=function(e){return Ge(e)===Qo};X.isMemo=function(e){return Ge(e)===Zo};X.isPortal=function(e){return Ge(e)===qa};X.isProfiler=function(e){return Ge(e)===Go};X.isStrictMode=function(e){return Ge(e)===jo};X.isSuspense=function(e){return Ge(e)===Xo};X.isSuspenseList=function(e){return Ge(e)===qo};X.isValidElementType=function(e){return typeof e=="string"||typeof e=="function"||e===Vo||e===Go||e===jo||e===Xo||e===qo||e===gf||typeof e=="object"&&e!==null&&(e.$$typeof===Qo||e.$$typeof===Zo||e.$$typeof===Yo||e.$$typeof===Uo||e.$$typeof===Ko||e.$$typeof===Ny||e.getModuleId!==void 0)};X.typeOf=Ge});var xf=Ve((TC,bf)=>{"use strict";bf.exports=yf()});var ed=Ve(K=>{"use strict";var be=typeof Symbol=="function"&&Symbol.for,fs=be?Symbol.for("react.element"):60103,ds=be?Symbol.for("react.portal"):60106,pi=be?Symbol.for("react.fragment"):60107,mi=be?Symbol.for("react.strict_mode"):60108,hi=be?Symbol.for("react.profiler"):60114,gi=be?Symbol.for("react.provider"):60109,yi=be?Symbol.for("react.context"):60110,ps=be?Symbol.for("react.async_mode"):60111,bi=be?Symbol.for("react.concurrent_mode"):60111,xi=be?Symbol.for("react.forward_ref"):60112,wi=be?Symbol.for("react.suspense"):60113,Bb=be?Symbol.for("react.suspense_list"):60120,vi=be?Symbol.for("react.memo"):60115,Si=be?Symbol.for("react.lazy"):60116,Nb=be?Symbol.for("react.block"):60121,_b=be?Symbol.for("react.fundamental"):60117,$b=be?Symbol.for("react.responder"):60118,Hb=be?Symbol.for("react.scope"):60119;function ze(e){if(typeof e=="object"&&e!==null){var t=e.$$typeof;switch(t){case fs:switch(e=e.type,e){case ps:case bi:case pi:case hi:case mi:case wi:return e;default:switch(e=e&&e.$$typeof,e){case yi:case xi:case Si:case vi:case gi:return e;default:return t}}case ds:return t}}}function Jf(e){return ze(e)===bi}K.AsyncMode=ps;K.ConcurrentMode=bi;K.ContextConsumer=yi;K.ContextProvider=gi;K.Element=fs;K.ForwardRef=xi;K.Fragment=pi;K.Lazy=Si;K.Memo=vi;K.Portal=ds;K.Profiler=hi;K.StrictMode=mi;K.Suspense=wi;K.isAsyncMode=function(e){return Jf(e)||ze(e)===ps};K.isConcurrentMode=Jf;K.isContextConsumer=function(e){return ze(e)===yi};K.isContextProvider=function(e){return ze(e)===gi};K.isElement=function(e){return typeof e=="object"&&e!==null&&e.$$typeof===fs};K.isForwardRef=function(e){return ze(e)===xi};K.isFragment=function(e){return ze(e)===pi};K.isLazy=function(e){return ze(e)===Si};K.isMemo=function(e){return ze(e)===vi};K.isPortal=function(e){return ze(e)===ds};K.isProfiler=function(e){return ze(e)===hi};K.isStrictMode=function(e){return ze(e)===mi};K.isSuspense=function(e){return ze(e)===wi};K.isValidElementType=function(e){return typeof e=="string"||typeof e=="function"||e===pi||e===bi||e===hi||e===mi||e===wi||e===Bb||typeof e=="object"&&e!==null&&(e.$$typeof===Si||e.$$typeof===vi||e.$$typeof===gi||e.$$typeof===yi||e.$$typeof===xi||e.$$typeof===_b||e.$$typeof===$b||e.$$typeof===Hb||e.$$typeof===Nb)};K.typeOf=ze});var rd=Ve((aM,td)=>{"use strict";td.exports=ed()});var cd=Ve((sM,ld)=>{"use strict";var ms=rd(),zb={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},Wb={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},Vb={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},ad={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},hs={};hs[ms.ForwardRef]=Vb;hs[ms.Memo]=ad;function nd(e){return ms.isMemo(e)?ad:hs[e.$$typeof]||zb}var jb=Object.defineProperty,Gb=Object.getOwnPropertyNames,od=Object.getOwnPropertySymbols,Ub=Object.getOwnPropertyDescriptor,Yb=Object.getPrototypeOf,id=Object.prototype;function sd(e,t,r){if(typeof t!="string"){if(id){var n=Yb(t);n&&n!==id&&sd(e,n,r)}var o=Gb(t);od&&(o=o.concat(od(t)));for(var i=nd(e),a=nd(t),s=0;s<o.length;++s){var l=o[s];if(!Wb[l]&&!(r&&r[l])&&!(a&&a[l])&&!(i&&i[l])){var c=Ub(t,l);try{jb(e,l,c)}catch{}}}}return e}ld.exports=sd});var Mp=Ve((WP,Ep)=>{Ep.exports=JBrowseExports["@jbrowse/core/ui/CascadingMenuButton"]});var Jh=Ve((z3,Qh)=>{Qh.exports=JBrowseExports["@mui/material/styles"]});var tg=Ve((W3,eg)=>{eg.exports=JBrowseExports["@jbrowse/core/util/types/mst"]});var Ha=class e{a;b;c;d;e;f;constructor(t){let[r=1,n=0,o=0,i=1,a=0,s=0]=t??[];this.a=r,this.b=n,this.c=o,this.d=i,this.e=a,this.f=s}multiply(t){return new e([this.a*t.a+this.c*t.b,this.b*t.a+this.d*t.b,this.a*t.c+this.c*t.d,this.b*t.c+this.d*t.d,this.a*t.e+this.c*t.f+this.e,this.b*t.e+this.d*t.f+this.f])}translate(t,r=0){return this.multiply(new e([1,0,0,1,t,r]))}scale(t,r=t){return this.multiply(new e([t,0,0,r,0,0]))}},za=class e{x;y;constructor(t=0,r=0){this.x=t,this.y=r}matrixTransform(t){return new e(t.a*this.x+t.c*this.y+t.e,t.b*this.x+t.d*this.y+t.f)}};function ty(e=globalThis,t={},r){let n=globalThis;n.DOMMatrix=Ha,n.DOMPoint=za;let o=e.HTMLCanvasElement;o.prototype.getContext=function(){let i="10px sans-serif";return Object.assign({get font(){return i},set font(a){i=a},measureText:a=>r?(r.font=i,{width:r.measureText(a).width}):{width:a.length*(Number.parseFloat(i)||10)*Ia}},t)}}var Lu="{residue}{position}",ry=/^(\d+)(?:-(\d+))?(?:\s+(.+))?$/;function Iu(e,t){let r=ry.exec(e.trim());if(!r)throw new Error(`${t} "${e}" is not "start", "start-end" or either followed by a label`);let n=Number(r[1]),o=r[2]===void 0?n:Number(r[2]);return{start:Math.min(n,o),end:Math.max(n,o),label:r[3]}}function Do(e,t){let{row:r,...n}=e,o=r===void 0?t:r??void 0;return o===void 0?n:{...n,row:o}}function ny(e,t){if(typeof e=="object")return e.rows?e:Do(e,e.start===void 0?void 0:t);let{start:r,end:n,label:o}=Iu(String(e),"highlight");return{...t===void 0?{}:{row:t},start:r,end:n,...o?{label:o}:r===n&&t!==void 0?{label:Lu}:{}}}function oy(e,t){if(typeof e=="string"){let{start:r,end:n}=Iu(e,"region");return Do({start:r,end:n},t)}return Do(e,t)}function Ru(e){return e.toLowerCase().replaceAll(/[^a-z0-9]+/g,"-").replaceAll(/^-|-$/g,"")}function iy(e){if(e.kind)return e.kind;if(e.values)return"bar";if(e.data!==void 0)return"text";if(e.arcs)return"arc";throw new Error(`column track "${e.name}" has no values, data or arcs to take its kind from`)}function ay(e,t,r){let{start:n,...o}=e,i=n&&n>1?n-1:0,a=e.id??(Ru(e.name)||"track");for(let s=2;!e.id&&r.has(a);s++)a=`${Ru(e.name)||"track"}-${s}`;return r.add(a),{...Do(o,t),id:a,kind:iy(e),...i&&e.values?{values:[...Array(i).fill(0),...e.values]}:{},...i&&e.data!==void 0?{data:" ".repeat(i)+e.data}:{}}}function Pu(e){return e.includes(`
|
|
2
|
+
`)}function Ou(e){return e.trimStart().startsWith("(")}function Fu(e){return{uri:e,locationType:"UriLocation"}}function sy(e){let{query:t,msa:r,tree:n,highlights:o,region:i,columnTracks:a,...s}=e,l={...s.data,...r!==void 0&&Pu(r)?{msa:r}:{},...n!==void 0&&Ou(n)?{tree:n}:{}},c=new Set((a??[]).map(u=>u.id).filter(u=>u!==void 0));return{...s,...r!==void 0&&!Pu(r)?{msaFilehandle:Fu(r)}:{},...n!==void 0&&!Ou(n)?{treeFilehandle:Fu(n)}:{},...Object.keys(l).length>0?{data:l}:{},...t!==void 0&&s.relativeTo===void 0?{relativeTo:t}:{},...o?{highlights:o.map(u=>ny(u,t))}:{},...i===void 0?{}:{region:oy(i,t)},...a?{columnTracks:a.map(u=>ay(u,t,c))}:{}}}var Me=y(R(),1),wl=y(Ra(),1),qh=y(Bu(),1),Zh=y(J(),1),vl=y(_(),1);var $=y(R(),1),Ar=y(_(),1);var Ot=y(R(),1),Bo=y(_(),1);var ly=50,Nu=(0,Bo.observer)(function({model:e}){let t=(0,Ot.useCallback)((r,n)=>{e.setTreeAreaWidth(Math.min(Math.max(0,n+r),e.width-e.resizeHandleWidth))},[e]);return Ot.default.createElement(kt,{axis:"x",variant:"resizer",getStart:()=>e.effectiveTreeAreaWidth,onDrag:t,style:{width:e.resizeHandleWidth}})}),_u=(0,Bo.observer)(function({model:e}){let t=(0,Ot.useCallback)((r,n)=>{e.setHeight(Math.max(ly,n+r))},[e]);return Ot.default.createElement(kt,{axis:"y",variant:"resizer",getStart:()=>e.height,onDrag:t,style:{width:"100%",height:e.resizeHandleWidth}})}),$u=(0,Bo.observer)(function({model:e,track:t}){let{id:r,heightKey:n,height:o}=t.model,i=e.turnedOnTracks.filter(l=>l.model.heightKey===n),a=i.length,s=(0,Ot.useCallback)((l,c)=>{n&&e.setTrackHeight(n,Math.max(10,c+l/a))},[e,n,a]);return n&&i.at(-1)?.model.id===r?Ot.default.createElement(kt,{axis:"y",variant:"resizer",getStart:()=>o,onDrag:s,style:{position:"absolute",bottom:0,left:0,width:"100%",height:e.resizeHandleWidth,zIndex:1}}):null});var ie=y(R(),1),af=y(Mn(),1),sf=y(Cn(),1);var zu=y(te(),1),Ft=(0,W.createSvgIcon)((0,zu.jsx)("path",{d:"m7 10 5 5 5-5z"}),"ArrowDropDown");var Wu=y(te(),1),No=(0,W.createSvgIcon)((0,Wu.jsx)("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Close");var Dt=y(J(),1),Ua=y(_(),1);var ge=y(R(),1);var cy=Math.log(2),uy=4*Math.log(1.25);function fy(e,t){return t===1?e*16:t===2?e*100:e}var Vu=(e,t)=>Math.max(-t,Math.min(t,e)),_o=class{continuous=0;pending=0;add(t,r,n){let o=fy(t,r);if(r!==0||Math.abs(o)>=40){let i=r!==0?1:Math.min(Math.max(Math.abs(o)/100,1),3);this.pending=Vu(this.pending-Math.sign(o)*i*Math.log(1.25),uy)}else this.continuous-=o/(n?100:400)}get idle(){return this.continuous===0&&this.pending===0}step(t){let r=this.pending*(1-Math.exp(-t/60));Math.abs(this.pending-r)<.005&&(r=this.pending),this.pending-=r;let n=Vu(this.continuous+r,cy);return this.continuous=0,Math.exp(n)}};var dy=150,py=150;function my(e,t){let{scrollY:r,maxScrollY:n}=e;return t>0?r>n:t<0&&r<0}var Wa=typeof CSS<"u"&&CSS.supports("touch-action","pinch-zoom")?"pinch-zoom":void 0;function ju(e){return Wa?`${e} ${Wa}`:e}function hy(e,t){let r=t.includes("x")&&e.maxScrollX<0,n=t.includes("y")&&e.maxScrollY<0;return r&&n?Wa??"none":r?ju("pan-y"):n?ju("pan-x"):"auto"}function Lt({ref:e,model:t,axes:r,zoom:n,onWheelScroll:o}){let i=(0,ge.useRef)(!1),a=(0,ge.useRef)(void 0),s=(0,ge.useRef)(void 0),l=(0,ge.useRef)(0),c=(0,ge.useRef)(0),u=(0,ge.useRef)(Number.NEGATIVE_INFINITY),f=(0,ge.useRef)(new _o),m=(0,ge.useRef)(0),p=(0,ge.useRef)(0),h=(0,ge.useRef)(null),g=(0,ge.useRef)({x:0,y:0}),b=(0,ge.useRef)({x:0,y:0}),v=(0,ge.useRef)(!1),[x,T]=(0,ge.useState)(),C=r.includes("x"),M=r.includes("y");(0,ge.useEffect)(()=>{let A=e.current;if(!A)return;function I(F){let N=F.ctrlKey||F.metaKey,O=t.scrollZoom&&!F.shiftKey&&Math.abs(F.deltaY)>=Math.abs(F.deltaX);if(n&&(N||O)){let he=A.getBoundingClientRect();if(f.current.add(F.deltaY,F.deltaMode,N),m.current=F.clientX-he.left,p.current=F.clientY-he.top,a.current===void 0){h.current=null;let xe=Qe=>{let ho=h.current===null?16.67:Qe-h.current;h.current=Qe,t.wheelZoomToPos(f.current.step(Math.min(100,ho)),m.current,p.current),clearTimeout(s.current),s.current=setTimeout(()=>{t.endWheelZoom()},dy),a.current=f.current.idle?void 0:requestAnimationFrame(xe)};a.current=requestAnimationFrame(xe)}F.preventDefault(),F.stopPropagation();return}let{deltaX:B,deltaY:d}=F,k=Math.abs(d)>=Math.abs(B),E=F.timeStamp-u.current<py,L=M&&d!==0&&(E||my(t,d)||!k),G=C&&B!==0&&(!k||L);(G||L)&&(L&&k&&(u.current=F.timeStamp),o?.(F),l.current+=G?F.deltaX:0,c.current+=L?F.deltaY:0,i.current||(i.current=!0,requestAnimationFrame(()=>{t.doScrollX(-l.current),t.doScrollY(-c.current),l.current=0,c.current=0,i.current=!1})),F.preventDefault(),F.stopPropagation())}return A.addEventListener("wheel",I,{passive:!1}),()=>{A.removeEventListener("wheel",I),a.current!==void 0&&(cancelAnimationFrame(a.current),a.current=void 0),clearTimeout(s.current)}},[e,t,C,M,n,o]),(0,ge.useEffect)(()=>{if(x===void 0)return;function A(F){F.pointerId===x&&(F.preventDefault(),b.current={x:F.clientX,y:F.clientY},v.current||(v.current=!0,requestAnimationFrame(()=>{let N=b.current;t.doScrollX(C?N.x-g.current.x:0),t.doScrollY(M?N.y-g.current.y:0),g.current=N,v.current=!1})))}function I(F){F.pointerId===x&&T(void 0)}return window.addEventListener("pointermove",A,!0),window.addEventListener("pointerup",I,!0),window.addEventListener("pointercancel",I,!0),()=>{window.removeEventListener("pointermove",A,!0),window.removeEventListener("pointerup",I,!0),window.removeEventListener("pointercancel",I,!0)}},[x,t,C,M]);function S(A){A.button===0&&A.isPrimary&&x===void 0&&(g.current={x:A.clientX,y:A.clientY},b.current=g.current,T(A.pointerId))}return{onPointerDown:S,touchAction:hy(t,r)}}function $o(e,{key:t,shiftKey:r}){let{colWidth:n,rowHeight:o,msaCanvasWidth:i,msaAreaHeight:a}=e,s=r?i:n,l=r?a:o;switch(t){case"ArrowLeft":return e.doScrollX(s),!0;case"ArrowRight":return e.doScrollX(-s),!0;case"ArrowUp":return e.doScrollY(l),!0;case"ArrowDown":return e.doScrollY(-l),!0;case"+":case"=":return e.zoomIn(),!0;case"-":return e.zoomOut(),!0;case"0":return e.resetZoom(),!0;case"Home":return e.setScrollX(0),!0;case"End":return e.setScrollX(e.maxScrollX),!0;case"Escape":return e.selection?(e.clearSelection(),!0):!1;default:return!1}}var Fr=y(R(),1),Va=y(_(),1);var Yu=y(R(),1),Ku=y(Ho(),1),Xu=y(J(),1),qu="data-darkreader-scheme";function gy(){return typeof document<"u"&&document.documentElement.getAttribute(qu)==="dark"}function yy(e){if(typeof MutationObserver!="function"||typeof document>"u")return()=>{};let t=new MutationObserver(e);return t.observe(document.documentElement,{attributes:!0,attributeFilter:[qu]}),()=>{t.disconnect()}}var Uu;function De(){let e=(0,Xu.useTheme)();return(0,Yu.useSyncExternalStore)(yy,gy,()=>!1)&&e.palette.mode!=="dark"?(Uu??=(0,Ku.createJBrowseTheme)({palette:{mode:"dark"}}),Uu):e}var zo=y(R(),1),Zu=y(Or(),1);function Te({draw:e,width:t,height:r,deps:n}){let o=(0,zo.useRef)(null);return(0,zo.useEffect)(()=>{let i=o.current?.getContext("2d");return i?(0,Zu.autorun)(()=>{e(i)}):void 0},[...n,t,r]),o}var by=(0,Va.observer)(function({model:e,track:t,offsetX:r}){let{blockSize:n,highResScaleFactor:o}=e,{height:i}=t.model,a=De(),s=n*o,l=i*o,c=Te({draw:u=>{u.resetTransform(),u.clearRect(0,0,s,l),du({model:e,ctx:u,track:t,offsetX:r,theme:a})},width:s,height:l,deps:[e,t,r,a]});return Fr.default.createElement("canvas",{ref:c,width:s,height:l,style:{position:"absolute",left:r,width:n,height:i}})}),xy=(0,Va.observer)(function({model:e,track:t}){let{blocksX:r,msaCanvasWidth:n,scrollX:o}=e,{kind:i,height:a,data:s,arcs:l}=t.model;return i==="text"&&!s||i==="arc"&&!l?.length?null:Fr.default.createElement("div",{style:{position:"relative",height:a,width:n,overflow:"hidden"}},Fr.default.createElement("div",{style:{position:"absolute",top:0,left:0,transform:`translateX(${o}px)`,willChange:"transform"}},r.map(c=>Fr.default.createElement(by,{key:c,model:e,track:t,offsetX:c}))),Fr.default.createElement($u,{model:e,track:t}))}),Qu=xy;var re=y(R(),1),ef=y(_(),1);var ja=e=>`${Math.round(e*100)}%`,Ju=8;function An({model:e,col:t}){let{relativeTo:r}=e,n=r?e.visibleColToSeqPosOneBased(r,t):void 0;return re.default.createElement("b",null,"Column ",t+1,n===void 0?null:` (${r}:${n})`)}function wy({model:e,track:t,col:r}){let{id:n,name:o}=t.model,i=fu(e,n)[r];return i===void 0?null:re.default.createElement("div",null,re.default.createElement(An,{model:e,col:r}),re.default.createElement("br",null),o,": ",i.toFixed(2))}function vy({model:e,col:t}){let r=e.columnStatsAt(t);if(!r)return null;let{total:n,consensusLetter:o,consensusFraction:i,gapFraction:a}=r,l=uu(e.colStats,t,e.alphabetMaxBits).reduce((c,u)=>c+u.bits,0);return re.default.createElement("div",null,re.default.createElement(An,{model:e,col:t})," (",n," seqs)",re.default.createElement("br",null),"Information: ",l.toFixed(2)," bits",re.default.createElement("br",null),"Consensus: ",o||"-"," (",ja(i),")",re.default.createElement("br",null),"Gaps: ",ja(a),re.default.createElement("br",null),r.distribution.slice(0,6).map(([c,u])=>re.default.createElement("span",{key:c,style:{marginRight:8}},c," ",ja(u/n))))}function Sy({model:e,track:t,col:r}){let{name:n,data:o}=t.model,i=o?.[r];return i===void 0?null:re.default.createElement("div",null,re.default.createElement(An,{model:e,col:r}),re.default.createElement("br",null),n,": ",i===" "?"blank":i)}function Ty({model:e,track:t,col:r}){let{name:n,arcs:o}=t.model,i=(o??[]).filter(a=>a.start===r||a.end===r).map(a=>(a.start===r?a.end:a.start)+1);return i.length===0?null:re.default.createElement("div",null,re.default.createElement(An,{model:e,col:r}),re.default.createElement("br",null),n,": pairs with ",i.slice(0,Ju).join(", "),i.length>Ju?"...":null)}var Cy=(0,ef.observer)(function({model:e,track:t,col:r}){switch(t.model.kind){case"bar":return re.default.createElement(wy,{model:e,track:t,col:r});case"logo":return re.default.createElement(vy,{model:e,col:r});case"text":case"reference":return re.default.createElement(Sy,{model:e,track:t,col:r});case"arc":return re.default.createElement(Ty,{model:e,track:t,col:r});case"ruler":return re.default.createElement("div",null,re.default.createElement(An,{model:e,col:r}))}}),tf=Cy;var rf=y(je(),1),Ga=3;function Wo(e,t,r){let n=r(t),{clientX:o,clientY:i}=t,a=!1;function s(c){a||=Math.hypot(c.clientX-o,c.clientY-i)>Ga,a&&(0,rf.isAlive)(e)&&e.selectBlock(n,r(c))}function l(){window.removeEventListener("mousemove",s),window.removeEventListener("mouseup",l)}window.addEventListener("mousemove",s),window.addEventListener("mouseup",l)}var nf=y(R(),1);function It(){let[e,t]=(0,nf.useState)();function r(o,i){t(i===void 0?void 0:{value:i,clientPoint:{x:o.clientX,y:o.clientY+15}})}function n(){t(void 0)}return{anchor:e,hoverAt:r,clearAnchor:n}}function of({model:e,tooltip:t}){let{anchor:r,hoverAt:n,clearAnchor:o}=It();function i(c,u){return Math.floor((c-u-e.scrollX)/e.colWidth)}function a(c,u){let f=i(c.clientX,u.getBoundingClientRect().left),m=f>=0&&f<e.numColumns;e.setMousePos(m?f:void 0,void 0),t&&n(c,m?f:void 0)}function s(c,u){if(c.button===0&&c.target instanceof HTMLCanvasElement){c.preventDefault(),u.focus({preventScroll:!0});let{left:f}=u.getBoundingClientRect();Wo(e,c,({clientX:m})=>({col:i(m,f)}))}}function l(){o(),e.setMousePos(void 0,void 0)}return{anchor:t?r:void 0,onMouseMove:a,onMouseDown:s,onMouseLeave:l}}var Ey=(0,ie.lazy)(()=>import("./TrackInfoDialog-7EDJNEPN.js")),lf=(0,sf.makeStyles)()(e=>({button:{padding:0},row:{display:"flex","&:not(:last-child)":{boxShadow:`inset 0 -1px 0 ${e.palette.divider}`}}})),My=(0,Ua.observer)(function({model:t,track:r}){let[n,o]=(0,ie.useState)(),i=()=>{o(void 0)},{drawLabels:a,fontSize:s,effectiveTreeAreaWidth:l}=t,{model:{name:c,height:u}}=r,{classes:f}=lf(),m=Math.min(u,s),p=Math.min(u,Math.max(s,16));return ie.default.createElement("div",{style:{width:l,height:u,flexShrink:0,display:"flex",alignItems:"flex-start",justifyContent:"flex-end",gap:2,fontSize:m}},ie.default.createElement("span",{title:c,style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}},a?c:""),ie.default.createElement(Dt.IconButton,{className:f.button,"aria-label":`Hide ${c} track`,title:"Hide track",style:{width:p,height:p,flexShrink:0},onClick:()=>{t.toggleTrack(r.model.id)}},ie.default.createElement(No,{style:{fontSize:p*.8}})),ie.default.createElement(Dt.IconButton,{className:f.button,"aria-label":`${c} track menu`,style:{width:m,height:m,flexShrink:0},onClick:h=>{o(h.currentTarget)}},ie.default.createElement(Ft,null)),n?ie.default.createElement(Dt.Menu,{anchorEl:n,transitionDuration:0,open:!0,onClose:()=>{i()}},ie.default.createElement(Dt.MenuItem,{dense:!0,onClick:()=>{t.toggleTrack(r.model.id),i()}},"Hide track"),ie.default.createElement(Dt.MenuItem,{dense:!0,onClick:()=>{t.queueDialog(h=>[Ey,{onClose:h,model:r.model}]),i()}},"Get info")):null)}),Ay=(0,Ua.observer)(function({model:e,track:t}){let{resizeHandleWidth:r,rowPanelsWidth:n,showColumnStats:o}=e,{model:{height:i}}=t,a=(0,ie.useRef)(null);Lt({ref:a,model:e,axes:"x"});let{classes:s}=lf(),{anchor:l,onMouseMove:c,onMouseDown:u,onMouseLeave:f}=of({model:e,tooltip:o});return ie.default.createElement("div",{className:s.row,style:{height:i}},ie.default.createElement(My,{model:e,track:t}),ie.default.createElement("div",{style:{width:n+r,flexShrink:0}}),ie.default.createElement("div",{ref:a,"data-testid":`track_${t.model.id}`,tabIndex:-1,style:{outline:"none"},onKeyDown:m=>{$o(e,m)&&m.preventDefault()},onMouseMove:m=>{a.current&&c(m,a.current)},onMouseDown:m=>{a.current&&u(m,a.current)},onMouseLeave:()=>{f()}},ie.default.createElement(Qu,{model:e,track:t}),l?ie.default.createElement(af.default,{clientPoint:l.clientPoint},ie.default.createElement(tf,{model:e,track:t,col:l.value})):null))}),cf=Ay;var kn=y(R(),1),ff=y(_(),1);var uf=20,ky=(0,ff.observer)(({model:e})=>{let{msaAreaHeight:t,scrollY:r,totalHeight:n}=e,o=t/n,i=-r*o,a=(-r+t)*o,s=(0,kn.useCallback)((l,c)=>{e.setScrollY(c-l/o)},[e,o]);return kn.default.createElement("div",{onPointerDown:l=>{if(l.button===0&&l.target===l.currentTarget){let c=l.clientY-l.currentTarget.getBoundingClientRect().top;e.setScrollY(-c/o+t/2)}},style:{position:"relative",width:uf,height:t,borderLeft:"1px solid #555",borderTop:"1px solid #555",boxSizing:"border-box"}},kn.default.createElement(kt,{axis:"y",variant:"thumb",getStart:()=>e.scrollY,onDrag:s,style:{top:Math.max(0,i),left:0,boxSizing:"border-box",width:uf,height:Math.max(a-i,20)}}))}),df=ky;var ae=y(R(),1),wm=y(Ya(),1);var mf=y(te(),1),Ka=(0,W.createSvgIcon)((0,mf.jsx)("path",{d:"M3 17v2h6v-2zM3 5v2h10V5zm10 16v-2h8v-2h-8v-2h-2v6zM7 9v2H3v2h4v2h2V9zm14 4v-2H11v2zm-6-4h2V7h4V5h-4V3h-2z"}),"Tune");var Gt=y(J(),1);var up=y(R(),1);function hf(e){var t,r,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(r=hf(e[t]))&&(n&&(n+=" "),n+=r)}else for(r in e)e[r]&&(n&&(n+=" "),n+=r);return n}function Ry(){for(var e,t,r=0,n="",o=arguments.length;r<o;r++)(e=arguments[r])&&(t=hf(e))&&(n&&(n+=" "),n+=t);return n}var ye=Ry;function Bt(e,t,r=void 0){let n={};for(let o in e){let i=e[o],a="",s=!0;for(let l=0;l<i.length;l+=1){let c=i[l];c&&(a+=(s===!0?"":" ")+t(c),s=!1,r&&r[c]&&(a+=" "+r[c]))}n[o]=a}return n}function Je(e,t){let r=Array.isArray(t),n=Array.isArray(e);return Iy(t)?t:Dy(e)?Lr(t):r&&n?Fy(e,t):r!==n?Lr(t):By(e,t)}function Py(e){let t=0,r=e.length,n=new Array(r);for(t=0;t<r;t+=1)n[t]=Lr(e[t]);return n}function Oy(e){let t={};for(let r in e)r==="__proto__"||r==="constructor"||r==="prototype"||(t[r]=Lr(e[r]));return t}function Fy(e,t){let r=e.length;for(let n=0;n<t.length;n+=1)e[r+n]=Lr(t[n]);return e}function Ly(e){return typeof e=="object"&&e!==null&&!(e instanceof RegExp)&&!(e instanceof Date)}function Iy(e){return typeof e!="object"||e===null}function Dy(e){return typeof e!="object"||e===null||e instanceof RegExp||e instanceof Date}function Lr(e){return Ly(e)?Array.isArray(e)?Py(e):Oy(e):e}function By(e,t){for(let r in t)r==="__proto__"||r==="constructor"||r==="prototype"||(r in e?e[r]=Je(e[r],t[r]):e[r]=Lr(t[r]));return e}function Be(e,...t){let r=new URL(`https://mui.com/production-error/?code=${e}`);return t.forEach(n=>r.searchParams.append("args[]",n)),`Minified MUI error #${e}; visit ${r} for the full message.`}function Ir(e){if(typeof e!="string")throw new Error(Be(7));return e.charAt(0).toUpperCase()+e.slice(1)}function Dr(e){if(e==null)return!0;for(let t in e)return!1;return!0}var Za=y(R(),1),Qa=y(xf(),1);function et(e){if(typeof e!="object"||e===null)return!1;let t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}function wf(e){if(Za.isValidElement(e)||(0,Qa.isValidElementType)(e)||!et(e))return e;let t={};return Object.keys(e).forEach(r=>{t[r]=wf(e[r])}),t}function se(e,t,r={clone:!0}){let n=r.clone?{...e}:e;return et(e)&&et(t)&&Object.keys(t).forEach(o=>{Za.isValidElement(t[o])||(0,Qa.isValidElementType)(t[o])?n[o]=t[o]:et(t[o])&&Object.prototype.hasOwnProperty.call(e,o)&&et(e[o])?n[o]=se(e[o],t[o],r):r.clone?n[o]=et(t[o])?wf(t[o]):t[o]:n[o]=t[o]}),n}var vf=/min-width:\s*([0-9.]+)/;function Jo(e,t){if(!e.containerQueries||!_y(t))return t;let r=[];for(let o in t)o.startsWith("@container")&&r.push(o);r.sort((o,i)=>+(o.match(vf)?.[1]||0)-+(i.match(vf)?.[1]||0));let n=t;for(let o=0;o<r.length;o+=1){let i=r[o],a=n[i];delete n[i],n[i]=a}return n}function _y(e){for(let t in e)if(t.startsWith("@container"))return!0;return!1}function ei(e,t){return t==="@"||t.startsWith("@")&&(e.some(r=>t.startsWith(`@${r}`))||!!t.match(/^@\d/))}function Ja(e,t){let r=t.match(/^@([^/]+)?\/?(.+)?$/);if(!r)return null;let[,n,o]=r,i=Number.isNaN(+n)?n||0:+n;return e.containerQueries(o).up(i)}function ti(e){let t=(i,a)=>i.replace("@media",a?`@container ${a}`:"@container");function r(i,a){i.up=(...s)=>t(e.breakpoints.up(...s),a),i.down=(...s)=>t(e.breakpoints.down(...s),a),i.between=(...s)=>t(e.breakpoints.between(...s),a),i.only=(...s)=>t(e.breakpoints.only(...s),a),i.not=(...s)=>{let l=t(e.breakpoints.not(...s),a);return l.includes("not all and")?l.replace("not all and ","").replace("min-width:","width<").replace("max-width:","width>").replace("and","or"):l}}let n={},o=i=>(r(n,i),n);return r(o),{...e,containerQueries:o}}var $y=e=>{let t=Object.keys(e).map(r=>({key:r,val:e[r]}))||[];return t.sort((r,n)=>r.val-n.val),t.reduce((r,n)=>({...r,[n.key]:n.val}),{})};function Rn(e){let{values:t={xs:0,sm:600,md:900,lg:1200,xl:1536},unit:r="px",step:n=5,...o}=e,i=$y(t),a=Object.keys(i);function s(p){return`@media (min-width:${typeof t[p]=="number"?t[p]:p}${r})`}function l(p){return`@media (max-width:${(typeof t[p]=="number"?t[p]:p)-n/100}${r})`}function c(p,h){let g=a.indexOf(h);return`@media (min-width:${typeof t[p]=="number"?t[p]:p}${r}) and (max-width:${(g!==-1&&typeof t[a[g]]=="number"?t[a[g]]:h)-n/100}${r})`}function u(p){return a.indexOf(p)+1<a.length?c(p,a[a.indexOf(p)+1]):s(p)}function f(p){let h=a.indexOf(p);return h===0?s(a[1]):h===a.length-1?l(a[h]):c(p,a[a.indexOf(p)+1]).replace("@media","@media not all and")}let m=[];for(let p=0;p<a.length;p+=1)m.push(s(a[p]));return{keys:a,values:i,up:s,down:l,between:c,only:u,not:f,unit:r,internal_mediaKeys:m,...o}}var Hy={},On={xs:0,sm:600,md:900,lg:1200,xl:1536},Pn=Rn({values:On}),zy={containerQueries:e=>({up:t=>{let r=typeof t=="number"?t:On[t]||t;return typeof r=="number"&&(r=`${r}px`),e?`@container ${e} (min-width:${r})`:`@container (min-width:${r})`}})};function it(e,t,r){let n={};return Br(n,e.theme,t,(o,i,a)=>{let s=r(i,a);o?n[o]=s:Je(n,s)})}function Br(e,t,r,n){if(t??=Hy,Array.isArray(r)){let o=t.breakpoints??Pn;for(let i=0;i<r.length;i+=1)es(e,o.up(o.keys[i]),r[i],void 0,n);return e}if(typeof r=="object"){let o=t.breakpoints??Pn,i=o.values??On;for(let a in r)if(ei(o.keys,a)){let s=Ja(t.containerQueries?t:zy,a);s&&es(e,s,r[a],a,n)}else if(a in i){let s=o.up(a);es(e,s,r[a],a,n)}else{let s=a;e[s]=r[s]}return e}return n(void 0,r),e}function es(e,t,r,n,o){e[t]??={},o(t,r,n)}function Sf(e=Pn){let{internal_mediaKeys:t}=e,r={};for(let n=0;n<t.length;n+=1)r[t[n]]={};return r}function ts(e,t){let r=e.internal_mediaKeys;for(let n=0;n<r.length;n+=1){let o=r[n];Dr(t[o])&&delete t[o]}return t}function Tf(e,t){if(Array.isArray(t))return!0;if(typeof t=="object"&&t!==null){for(let n=0;n<e.keys.length;n+=1)if(e.keys[n]in t)return!0;let r=Object.keys(t);for(let n=0;n<r.length;n+=1)if(ei(e.keys,r[n]))return!0}return!1}function rs(e,t,r,n){let o;return typeof e=="function"?o=e(r):Array.isArray(e)?o=e[r]||r:typeof r=="string"?o=Nr(e,r,!0,n)||r:o=r,t&&(o=t(o,r,e)),o}function Nr(e,t,r=!0,n=void 0){if(!e||!t)return null;let o=t.split(".");if(e.vars&&r){let i=Cf(e.vars,o,n);if(i!=null)return i}return Cf(e,o,n)}function Cf(e,t,r=void 0){let n,o=e,i=0;for(;i<t.length;){if(o==null)return o;n=o,o=o[t[i]],i+=1}if(r&&o===void 0){let a=t[t.length-1],s=`${r}${a==="default"?"":Ir(a)}`;return n?.[s]}return o}function q(e){let{prop:t,cssProperty:r=e.prop,themeKey:n,transform:o}=e,i=a=>{if(a[t]==null)return null;let s=a[t],l=a.theme,c=Nr(l,n)||{};return it(a,s,f=>{let m=rs(c,o,f,t);return r===!1?m:{[r]:m}})};return i.propTypes={},i.filterProps=[t],i}var Wy={internal_cache:{}},ri={m:"margin",p:"padding"},Ef={t:"Top",r:"Right",b:"Bottom",l:"Left",x:["Left","Right"],y:["Top","Bottom"]},Mf={marginX:"mx",marginY:"my",paddingX:"px",paddingY:"py"},Fn={};for(let e in ri)Fn[e]=[ri[e]];for(let e in ri)for(let t in Ef){let r=ri[e],n=Ef[t],o=Array.isArray(n)?n.map(i=>r+i):[r+n];Fn[e+t]=o}for(let e in Mf)Fn[e]=Fn[Mf[e]];var ns=new Set(["m","mt","mr","mb","ml","mx","my","margin","marginTop","marginRight","marginBottom","marginLeft","marginX","marginY","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd"]),os=new Set(["p","pt","pr","pb","pl","px","py","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingX","paddingY","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd"]),kf=new Set([...ns,...os]);function sr(e,t,r,n){let o=Nr(e,t,!0)??r;return typeof o=="number"||typeof o=="string"?i=>typeof i=="string"?i:typeof o=="string"?o.startsWith("var(")&&i===0?0:o.startsWith("var(")&&i===1?o:`calc(${i} * ${o})`:o*i:Array.isArray(o)?i=>{if(typeof i=="string")return i;let a=Math.abs(i),s=o[a];return i>=0?s:typeof s=="number"?-s:typeof s=="string"&&s.startsWith("var(")?`calc(-1 * ${s})`:`-${s}`}:typeof o=="function"?o:()=>{}}function Ln(e){return sr(e,"spacing",8,"spacing")}function lr(e,t){return typeof t=="string"||t==null?t:e(t)}var Af=[""];function is(e,t){let r=e.theme??Wy,n=r?.internal_cache?.unarySpacing??Ln(r),o={};for(let i in e){if(!t.has(i))continue;let a=Fn[i]??(Af[0]=i,Af),s=e[i];Br(o,e.theme,s,(l,c)=>{let u=l?o[l]:o;for(let f=0;f<a.length;f+=1)u[a[f]]=lr(n,c)})}return o}function as(e){return is(e,ns)}as.propTypes={};as.filterProps=ns;var ce=as;function ss(e){return is(e,os)}ss.propTypes={};ss.filterProps=os;var ue=ss;function Rf(e){return is(e,kf)}Rf.propTypes={};Rf.filterProps=kf;function Vy(...e){let t=e.reduce((n,o)=>(o.filterProps.forEach(i=>{n[i]=o}),n),{}),r=n=>{let o={};for(let i in n)t[i]&&Je(o,t[i](n));return o};return r.propTypes={},r.filterProps=e.reduce((n,o)=>n.concat(o.filterProps),[]),r}var bt=Vy;function He(e){return typeof e!="number"?e:`${e}px solid`}function Ue(e,t){return q({prop:e,themeKey:"borders",transform:t})}var jy=Ue("border",He),Gy=Ue("borderTop",He),Uy=Ue("borderRight",He),Yy=Ue("borderBottom",He),Ky=Ue("borderLeft",He),Xy=Ue("borderColor"),qy=Ue("borderTopColor"),Zy=Ue("borderRightColor"),Qy=Ue("borderBottomColor"),Jy=Ue("borderLeftColor"),eb=Ue("outline",He),tb=Ue("outlineColor"),In=e=>{if(e.borderRadius!==void 0&&e.borderRadius!==null){let t=sr(e.theme,"shape.borderRadius",4,"borderRadius"),r=n=>({borderRadius:lr(t,n)});return it(e,e.borderRadius,r)}return null};In.propTypes={};In.filterProps=["borderRadius"];var tE=bt(jy,Gy,Uy,Yy,Ky,Xy,qy,Zy,Qy,Jy,In,eb,tb);var Dn=e=>{if(e.gap!==void 0&&e.gap!==null){let t=sr(e.theme,"spacing",8,"gap"),r=n=>({gap:lr(t,n)});return it(e,e.gap,r)}return null};Dn.propTypes={};Dn.filterProps=["gap"];var Bn=e=>{if(e.columnGap!==void 0&&e.columnGap!==null){let t=sr(e.theme,"spacing",8,"columnGap"),r=n=>({columnGap:lr(t,n)});return it(e,e.columnGap,r)}return null};Bn.propTypes={};Bn.filterProps=["columnGap"];var Nn=e=>{if(e.rowGap!==void 0&&e.rowGap!==null){let t=sr(e.theme,"spacing",8,"rowGap"),r=n=>({rowGap:lr(t,n)});return it(e,e.rowGap,r)}return null};Nn.propTypes={};Nn.filterProps=["rowGap"];var rb=q({prop:"gridColumn"}),nb=q({prop:"gridRow"}),ob=q({prop:"gridAutoFlow"}),ib=q({prop:"gridAutoColumns"}),ab=q({prop:"gridAutoRows"}),sb=q({prop:"gridTemplateColumns"}),lb=q({prop:"gridTemplateRows"}),cb=q({prop:"gridTemplateAreas"}),ub=q({prop:"gridArea"}),sE=bt(Dn,Bn,Nn,rb,nb,ob,ib,ab,sb,lb,cb,ub);function cr(e,t){return t==="grey"?t:e}var fb=q({prop:"color",themeKey:"palette",transform:cr}),db=q({prop:"bgcolor",cssProperty:"backgroundColor",themeKey:"palette",transform:cr}),pb=q({prop:"backgroundColor",themeKey:"palette",transform:cr}),fE=bt(fb,db,pb);var mb=On;function Ne(e){return e<=1&&e!==0?`${e*100}%`:e}var hb=q({prop:"width",transform:Ne}),ni=e=>{if(e.maxWidth!==void 0&&e.maxWidth!==null){let t=r=>{let n=e.theme?.breakpoints?.values?.[r]||mb[r];return n?e.theme?.breakpoints?.unit!=="px"?{maxWidth:`${n}${e.theme.breakpoints.unit}`}:{maxWidth:n}:{maxWidth:Ne(r)}};return it(e,e.maxWidth,t)}return null};ni.filterProps=["maxWidth"];var gb=q({prop:"minWidth",transform:Ne}),yb=q({prop:"height",transform:Ne}),bb=q({prop:"maxHeight",transform:Ne}),xb=q({prop:"minHeight",transform:Ne}),yE=q({prop:"size",cssProperty:"width",transform:Ne}),bE=q({prop:"size",cssProperty:"height",transform:Ne}),wb=q({prop:"boxSizing"}),xE=bt(hb,ni,gb,yb,bb,xb,wb);var vb={border:{themeKey:"borders",transform:He},borderTop:{themeKey:"borders",transform:He},borderRight:{themeKey:"borders",transform:He},borderBottom:{themeKey:"borders",transform:He},borderLeft:{themeKey:"borders",transform:He},borderColor:{themeKey:"palette"},borderTopColor:{themeKey:"palette"},borderRightColor:{themeKey:"palette"},borderBottomColor:{themeKey:"palette"},borderLeftColor:{themeKey:"palette"},outline:{themeKey:"borders",transform:He},outlineColor:{themeKey:"palette"},borderRadius:{themeKey:"shape.borderRadius",style:In},color:{themeKey:"palette",transform:cr},bgcolor:{themeKey:"palette",cssProperty:"backgroundColor",transform:cr},backgroundColor:{themeKey:"palette",transform:cr},p:{style:ue},pt:{style:ue},pr:{style:ue},pb:{style:ue},pl:{style:ue},px:{style:ue},py:{style:ue},padding:{style:ue},paddingTop:{style:ue},paddingRight:{style:ue},paddingBottom:{style:ue},paddingLeft:{style:ue},paddingX:{style:ue},paddingY:{style:ue},paddingInline:{style:ue},paddingInlineStart:{style:ue},paddingInlineEnd:{style:ue},paddingBlock:{style:ue},paddingBlockStart:{style:ue},paddingBlockEnd:{style:ue},m:{style:ce},mt:{style:ce},mr:{style:ce},mb:{style:ce},ml:{style:ce},mx:{style:ce},my:{style:ce},margin:{style:ce},marginTop:{style:ce},marginRight:{style:ce},marginBottom:{style:ce},marginLeft:{style:ce},marginX:{style:ce},marginY:{style:ce},marginInline:{style:ce},marginInlineStart:{style:ce},marginInlineEnd:{style:ce},marginBlock:{style:ce},marginBlockStart:{style:ce},marginBlockEnd:{style:ce},displayPrint:{cssProperty:!1,transform:e=>({"@media print":{display:e}})},display:{},overflow:{},textOverflow:{},visibility:{},whiteSpace:{},flexBasis:{},flexDirection:{},flexWrap:{},justifyContent:{},alignItems:{},alignContent:{},order:{},flex:{},flexGrow:{},flexShrink:{},alignSelf:{},justifyItems:{},justifySelf:{},gap:{style:Dn},rowGap:{style:Nn},columnGap:{style:Bn},gridColumn:{},gridRow:{},gridAutoFlow:{},gridAutoColumns:{},gridAutoRows:{},gridTemplateColumns:{},gridTemplateRows:{},gridTemplateAreas:{},gridArea:{},position:{},zIndex:{themeKey:"zIndex"},top:{},right:{},bottom:{},left:{},boxShadow:{themeKey:"shadows"},width:{transform:Ne},maxWidth:{style:ni},minWidth:{transform:Ne},height:{transform:Ne},maxHeight:{transform:Ne},minHeight:{transform:Ne},boxSizing:{},font:{themeKey:"font"},fontFamily:{themeKey:"typography"},fontSize:{themeKey:"typography"},fontStyle:{themeKey:"typography"},fontWeight:{themeKey:"typography"},letterSpacing:{},textTransform:{},lineHeight:{},textAlign:{},typography:{cssProperty:!1,themeKey:"typography"}},xt=vb;var Sb={};function Tb(){function e(t){if(!t.sx)return null;let{sx:r,theme:n=Sb,nested:o}=t,i=n.unstable_sxConfig??xt,a={sx:null,theme:n,nested:!0};function s(l){let c=l;if(typeof l=="function")c=l(n);else if(typeof l!="object")return l;if(!c)return null;let u=n.breakpoints??Pn,f=Sf(u);for(let m in c){let p=Cb(c[m],n);if(p!=null){if(typeof p!="object"){Pf(f,m,p,n,i);continue}if(i[m]){Pf(f,m,p,n,i);continue}Tf(u,p)?Br(f,t.theme,p,(h,g)=>{f[h][m]=g}):(a.sx=p,f[m]=e(a))}}return!o&&n.modularCssLayers?{"@layer sx":Jo(n,ts(u,f))}:Jo(n,ts(u,f))}return Array.isArray(r)?r.map(s):s(r)}return e.filterProps=["sx"],e}var at=Tb();function Pf(e,t,r,n,o){let i=o[t];if(!i){e[t]=r;return}if(r==null)return;let{themeKey:a}=i;if(a==="typography"&&r==="inherit"){e[t]=r;return}let{style:s}=i;if(s){Je(e,s({[t]:r,theme:n}));return}let{cssProperty:l=t,transform:c}=i,u=Nr(n,a);Br(e,n,r,(f,m)=>{let p=rs(u,c,m,t);l===!1?f?Je(e[f],p):Je(e,p):f?e[f][l]=p:e[l]=p})}function Cb(e,t){return typeof e=="function"?e(t):e}var Tw=y(R(),1);function oi(){return oi=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},oi.apply(null,arguments)}var Ke=y(R()),Ci=y(R());var Eb=!1;function Mb(e){if(e.sheet)return e.sheet;for(var t=0;t<document.styleSheets.length;t++)if(document.styleSheets[t].ownerNode===e)return document.styleSheets[t]}function Ab(e){var t=document.createElement("style");return t.setAttribute("data-emotion",e.key),e.nonce!==void 0&&t.setAttribute("nonce",e.nonce),t.appendChild(document.createTextNode("")),t.setAttribute("data-s",""),t}var Of=(function(){function e(r){var n=this;this._insertTag=function(o){var i;n.tags.length===0?n.insertionPoint?i=n.insertionPoint.nextSibling:n.prepend?i=n.container.firstChild:i=n.before:i=n.tags[n.tags.length-1].nextSibling,n.container.insertBefore(o,i),n.tags.push(o)},this.isSpeedy=r.speedy===void 0?!Eb:r.speedy,this.tags=[],this.ctr=0,this.nonce=r.nonce,this.key=r.key,this.container=r.container,this.prepend=r.prepend,this.insertionPoint=r.insertionPoint,this.before=null}var t=e.prototype;return t.hydrate=function(n){n.forEach(this._insertTag)},t.insert=function(n){this.ctr%(this.isSpeedy?65e3:1)===0&&this._insertTag(Ab(this));var o=this.tags[this.tags.length-1];if(this.isSpeedy){var i=Mb(o);try{i.insertRule(n,i.cssRules.length)}catch{}}else o.appendChild(document.createTextNode(n));this.ctr++},t.flush=function(){this.tags.forEach(function(n){var o;return(o=n.parentNode)==null?void 0:o.removeChild(n)}),this.tags=[],this.ctr=0},e})();var ve="-ms-",_n="-moz-",V="-webkit-",ii="comm",_r="rule",$r="decl";var Ff="@import";var ai="@keyframes";var Lf="@layer";var If=Math.abs,ur=String.fromCharCode,Df=Object.assign;function Bf(e,t){return fe(e,0)^45?(((t<<2^fe(e,0))<<2^fe(e,1))<<2^fe(e,2))<<2^fe(e,3):0}function si(e){return e.trim()}function ls(e,t){return(e=t.exec(e))?e[0]:e}function z(e,t,r){return e.replace(t,r)}function $n(e,t){return e.indexOf(t)}function fe(e,t){return e.charCodeAt(t)|0}function Nt(e,t,r){return e.slice(t,r)}function Ae(e){return e.length}function Hr(e){return e.length}function zr(e,t){return t.push(e),e}function cs(e,t){return e.map(t).join("")}var li=1,Wr=1,Nf=0,ke=0,me=0,jr="";function Hn(e,t,r,n,o,i,a){return{value:e,root:t,parent:r,type:n,props:o,children:i,line:li,column:Wr,length:a,return:""}}function Gr(e,t){return Df(Hn("",null,null,"",null,null,0),e,{length:-e.length},t)}function _f(){return me}function $f(){return me=ke>0?fe(jr,--ke):0,Wr--,me===10&&(Wr=1,li--),me}function Re(){return me=ke<Nf?fe(jr,ke++):0,Wr++,me===10&&(Wr=1,li++),me}function Ye(){return fe(jr,ke)}function zn(){return ke}function Ur(e,t){return Nt(jr,e,t)}function Vr(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function ci(e){return li=Wr=1,Nf=Ae(jr=e),ke=0,[]}function ui(e){return jr="",e}function Yr(e){return si(Ur(ke-1,us(e===91?e+2:e===40?e+1:e)))}function Hf(e){for(;(me=Ye())&&me<33;)Re();return Vr(e)>2||Vr(me)>3?"":" "}function zf(e,t){for(;--t&&Re()&&!(me<48||me>102||me>57&&me<65||me>70&&me<97););return Ur(e,zn()+(t<6&&Ye()==32&&Re()==32))}function us(e){for(;Re();)switch(me){case e:return ke;case 34:case 39:e!==34&&e!==39&&us(me);break;case 40:e===41&&us(e);break;case 92:Re();break}return ke}function Wf(e,t){for(;Re()&&e+me!==57;)if(e+me===84&&Ye()===47)break;return"/*"+Ur(t,ke-1)+"*"+ur(e===47?e:Re())}function Vf(e){for(;!Vr(Ye());)Re();return Ur(e,ke)}function Uf(e){return ui(fi("",null,null,null,[""],e=ci(e),0,[0],e))}function fi(e,t,r,n,o,i,a,s,l){for(var c=0,u=0,f=a,m=0,p=0,h=0,g=1,b=1,v=1,x=0,T="",C=o,M=i,S=n,A=T;b;)switch(h=x,x=Re()){case 40:if(h!=108&&fe(A,f-1)==58){$n(A+=z(Yr(x),"&","&\f"),"&\f")!=-1&&(v=-1);break}case 34:case 39:case 91:A+=Yr(x);break;case 9:case 10:case 13:case 32:A+=Hf(h);break;case 92:A+=zf(zn()-1,7);continue;case 47:switch(Ye()){case 42:case 47:zr(kb(Wf(Re(),zn()),t,r),l);break;default:A+="/"}break;case 123*g:s[c++]=Ae(A)*v;case 125*g:case 59:case 0:switch(x){case 0:case 125:b=0;case 59+u:v==-1&&(A=z(A,/\f/g,"")),p>0&&Ae(A)-f&&zr(p>32?Gf(A+";",n,r,f-1):Gf(z(A," ","")+";",n,r,f-2),l);break;case 59:A+=";";default:if(zr(S=jf(A,t,r,c,u,o,s,T,C=[],M=[],f),i),x===123)if(u===0)fi(A,t,S,S,C,i,f,s,M);else switch(m===99&&fe(A,3)===110?100:m){case 100:case 108:case 109:case 115:fi(e,S,S,n&&zr(jf(e,S,S,0,0,o,s,T,o,C=[],f),M),o,M,f,s,n?C:M);break;default:fi(A,S,S,S,[""],M,0,s,M)}}c=u=p=0,g=v=1,T=A="",f=a;break;case 58:f=1+Ae(A),p=h;default:if(g<1){if(x==123)--g;else if(x==125&&g++==0&&$f()==125)continue}switch(A+=ur(x),x*g){case 38:v=u>0?1:(A+="\f",-1);break;case 44:s[c++]=(Ae(A)-1)*v,v=1;break;case 64:Ye()===45&&(A+=Yr(Re())),m=Ye(),u=f=Ae(T=A+=Vf(zn())),x++;break;case 45:h===45&&Ae(A)==2&&(g=0)}}return i}function jf(e,t,r,n,o,i,a,s,l,c,u){for(var f=o-1,m=o===0?i:[""],p=Hr(m),h=0,g=0,b=0;h<n;++h)for(var v=0,x=Nt(e,f+1,f=If(g=a[h])),T=e;v<p;++v)(T=si(g>0?m[v]+" "+x:z(x,/&\f/g,m[v])))&&(l[b++]=T);return Hn(e,t,r,o===0?_r:s,l,c,u)}function kb(e,t,r){return Hn(e,t,r,ii,ur(_f()),Nt(e,2,-2),0)}function Gf(e,t,r,n){return Hn(e,t,r,$r,Nt(e,0,n),Nt(e,n+1,-1),n)}function fr(e,t){for(var r="",n=Hr(e),o=0;o<n;o++)r+=t(e[o],o,e,t)||"";return r}function Yf(e,t,r,n){switch(e.type){case Lf:if(e.children.length)break;case Ff:case $r:return e.return=e.return||e.value;case ii:return"";case ai:return e.return=e.value+"{"+fr(e.children,n)+"}";case _r:e.value=e.props.join(",")}return Ae(r=fr(e.children,n))?e.return=e.value+"{"+r+"}":""}function Kf(e){var t=Hr(e);return function(r,n,o,i){for(var a="",s=0;s<t;s++)a+=e[s](r,n,o,i)||"";return a}}function Xf(e){return function(t){t.root||(t=t.return)&&e(t)}}function di(e){var t=Object.create(null);return function(r){return t[r]===void 0&&(t[r]=e(r)),t[r]}}var Rb=function(t,r,n){for(var o=0,i=0;o=i,i=Ye(),o===38&&i===12&&(r[n]=1),!Vr(i);)Re();return Ur(t,ke)},Pb=function(t,r){var n=-1,o=44;do switch(Vr(o)){case 0:o===38&&Ye()===12&&(r[n]=1),t[n]+=Rb(ke-1,r,n);break;case 2:t[n]+=Yr(o);break;case 4:if(o===44){t[++n]=Ye()===58?"&\f":"",r[n]=t[n].length;break}default:t[n]+=ur(o)}while(o=Re());return t},Ob=function(t,r){return ui(Pb(ci(t),r))},qf=new WeakMap,Fb=function(t){if(!(t.type!=="rule"||!t.parent||t.length<1)){for(var r=t.value,n=t.parent,o=t.column===n.column&&t.line===n.line;n.type!=="rule";)if(n=n.parent,!n)return;if(!(t.props.length===1&&r.charCodeAt(0)!==58&&!qf.get(n))&&!o){qf.set(t,!0);for(var i=[],a=Ob(r,i),s=n.props,l=0,c=0;l<a.length;l++)for(var u=0;u<s.length;u++,c++)t.props[c]=i[l]?a[l].replace(/&\f/g,s[u]):s[u]+" "+a[l]}}},Lb=function(t){if(t.type==="decl"){var r=t.value;r.charCodeAt(0)===108&&r.charCodeAt(2)===98&&(t.return="",t.value="")}};function Zf(e,t){switch(Bf(e,t)){case 5103:return V+"print-"+e+e;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return V+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return V+e+_n+e+ve+e+e;case 6828:case 4268:return V+e+ve+e+e;case 6165:return V+e+ve+"flex-"+e+e;case 5187:return V+e+z(e,/(\w+).+(:[^]+)/,V+"box-$1$2"+ve+"flex-$1$2")+e;case 5443:return V+e+ve+"flex-item-"+z(e,/flex-|-self/,"")+e;case 4675:return V+e+ve+"flex-line-pack"+z(e,/align-content|flex-|-self/,"")+e;case 5548:return V+e+ve+z(e,"shrink","negative")+e;case 5292:return V+e+ve+z(e,"basis","preferred-size")+e;case 6060:return V+"box-"+z(e,"-grow","")+V+e+ve+z(e,"grow","positive")+e;case 4554:return V+z(e,/([^-])(transform)/g,"$1"+V+"$2")+e;case 6187:return z(z(z(e,/(zoom-|grab)/,V+"$1"),/(image-set)/,V+"$1"),e,"")+e;case 5495:case 3959:return z(e,/(image-set\([^]*)/,V+"$1$`$1");case 4968:return z(z(e,/(.+:)(flex-)?(.*)/,V+"box-pack:$3"+ve+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+V+e+e;case 4095:case 3583:case 4068:case 2532:return z(e,/(.+)-inline(.+)/,V+"$1$2")+e;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(Ae(e)-1-t>6)switch(fe(e,t+1)){case 109:if(fe(e,t+4)!==45)break;case 102:return z(e,/(.+:)(.+)-([^]+)/,"$1"+V+"$2-$3$1"+_n+(fe(e,t+3)==108?"$3":"$2-$3"))+e;case 115:return~$n(e,"stretch")?Zf(z(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(fe(e,t+1)!==115)break;case 6444:switch(fe(e,Ae(e)-3-(~$n(e,"!important")&&10))){case 107:return z(e,":",":"+V)+e;case 101:return z(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+V+(fe(e,14)===45?"inline-":"")+"box$3$1"+V+"$2$3$1"+ve+"$2box$3")+e}break;case 5936:switch(fe(e,t+11)){case 114:return V+e+ve+z(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return V+e+ve+z(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return V+e+ve+z(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return V+e+ve+e+e}return e}var Ib=function(t,r,n,o){if(t.length>-1&&!t.return)switch(t.type){case $r:t.return=Zf(t.value,t.length);break;case ai:return fr([Gr(t,{value:z(t.value,"@","@"+V)})],o);case _r:if(t.length)return cs(t.props,function(i){switch(ls(i,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return fr([Gr(t,{props:[z(i,/:(read-\w+)/,":"+_n+"$1")]})],o);case"::placeholder":return fr([Gr(t,{props:[z(i,/:(plac\w+)/,":"+V+"input-$1")]}),Gr(t,{props:[z(i,/:(plac\w+)/,":"+_n+"$1")]}),Gr(t,{props:[z(i,/:(plac\w+)/,ve+"input-$1")]})],o)}return""})}},Db=[Ib],Qf=function(t){var r=t.key;if(r==="css"){var n=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(n,function(g){var b=g.getAttribute("data-emotion");b.indexOf(" ")!==-1&&(document.head.appendChild(g),g.setAttribute("data-s",""))})}var o=t.stylisPlugins||Db,i={},a,s=[];a=t.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+r+' "]'),function(g){for(var b=g.getAttribute("data-emotion").split(" "),v=1;v<b.length;v++)i[b[v]]=!0;s.push(g)});var l,c=[Fb,Lb];{var u,f=[Yf,Xf(function(g){u.insert(g)})],m=Kf(c.concat(o,f)),p=function(b){return fr(Uf(b),m)};l=function(b,v,x,T){u=x,p(b?b+"{"+v.styles+"}":v.styles),T&&(h.inserted[v.name]=!0)}}var h={key:r,sheet:new Of({key:r,container:a,nonce:t.nonce,speedy:t.speedy,prepend:t.prepend,insertionPoint:t.insertionPoint}),nonce:t.nonce,inserted:i,registered:{},insert:l};return h.sheet.hydrate(s),h};var Kb=!0;function Wn(e,t,r){var n="";return r.split(" ").forEach(function(o){e[o]!==void 0?t.push(e[o]+";"):o&&(n+=o+" ")}),n}var Kr=function(t,r,n){var o=t.key+"-"+r.name;(n===!1||Kb===!1)&&t.registered[o]===void 0&&(t.registered[o]=r.styles)},Vn=function(t,r,n){Kr(t,r,n);var o=t.key+"-"+r.name;if(t.inserted[r.name]===void 0){var i=r;do t.insert(r===i?"."+o:"",i,t.sheet,!0),i=i.next;while(i!==void 0)}};function ud(e){for(var t=0,r,n=0,o=e.length;o>=4;++n,o-=4)r=e.charCodeAt(n)&255|(e.charCodeAt(++n)&255)<<8|(e.charCodeAt(++n)&255)<<16|(e.charCodeAt(++n)&255)<<24,r=(r&65535)*1540483477+((r>>>16)*59797<<16),r^=r>>>24,t=(r&65535)*1540483477+((r>>>16)*59797<<16)^(t&65535)*1540483477+((t>>>16)*59797<<16);switch(o){case 3:t^=(e.charCodeAt(n+2)&255)<<16;case 2:t^=(e.charCodeAt(n+1)&255)<<8;case 1:t^=e.charCodeAt(n)&255,t=(t&65535)*1540483477+((t>>>16)*59797<<16)}return t^=t>>>13,t=(t&65535)*1540483477+((t>>>16)*59797<<16),((t^t>>>15)>>>0).toString(36)}var fd={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1};var Xb=!1,qb=/[A-Z]|^ms/g,Zb=/_EMO_([^_]+?)_([^]*?)_EMO_/g,hd=function(t){return t.charCodeAt(1)===45},dd=function(t){return t!=null&&typeof t!="boolean"},gs=di(function(e){return hd(e)?e:e.replace(qb,"-$&").toLowerCase()}),pd=function(t,r){switch(t){case"animation":case"animationName":if(typeof r=="string")return r.replace(Zb,function(n,o,i){return st={name:o,styles:i,next:st},o})}return fd[t]!==1&&!hd(t)&&typeof r=="number"&&r!==0?r+"px":r},Qb="Component selectors can only be used in conjunction with @emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware compiler transform.";function jn(e,t,r){if(r==null)return"";var n=r;if(n.__emotion_styles!==void 0)return n;switch(typeof r){case"boolean":return"";case"object":{var o=r;if(o.anim===1)return st={name:o.name,styles:o.styles,next:st},o.name;var i=r;if(i.styles!==void 0){var a=i.next;if(a!==void 0)for(;a!==void 0;)st={name:a.name,styles:a.styles,next:st},a=a.next;var s=i.styles+";";return s}return Jb(e,t,r)}case"function":{if(e!==void 0){var l=st,c=r(e);return st=l,jn(e,t,c)}break}}var u=r;if(t==null)return u;var f=t[u];return f!==void 0?f:u}function Jb(e,t,r){var n="";if(Array.isArray(r))for(var o=0;o<r.length;o++)n+=jn(e,t,r[o])+";";else for(var i in r){var a=r[i];if(typeof a!="object"){var s=a;t!=null&&t[s]!==void 0?n+=i+"{"+t[s]+"}":dd(s)&&(n+=gs(i)+":"+pd(i,s)+";")}else{if(i==="NO_COMPONENT_SELECTOR"&&Xb)throw new Error(Qb);if(Array.isArray(a)&&typeof a[0]=="string"&&(t==null||t[a[0]]===void 0))for(var l=0;l<a.length;l++)dd(a[l])&&(n+=gs(i)+":"+pd(i,a[l])+";");else{var c=jn(e,t,a);switch(i){case"animation":case"animationName":{n+=gs(i)+":"+c+";";break}default:n+=i+"{"+c+"}"}}}}return n}var md=/label:\s*([^\s;{]+)\s*(;|$)/g,st;function _t(e,t,r){if(e.length===1&&typeof e[0]=="object"&&e[0]!==null&&e[0].styles!==void 0)return e[0];var n=!0,o="";st=void 0;var i=e[0];if(i==null||i.raw===void 0)n=!1,o+=jn(r,t,i);else{var a=i;o+=a[0]}for(var s=1;s<e.length;s++)if(o+=jn(r,t,e[s]),n){var l=i;o+=l[s]}md.lastIndex=0;for(var c="",u;(u=md.exec(o))!==null;)c+="-"+u[1];var f=ud(o)+c;return{name:f,styles:o,next:st}}var Ti=y(R()),ex=function(t){return t()},tx=Ti.useInsertionEffect?Ti.useInsertionEffect:!1,Gn=tx||ex;var gd=!1,yd=Ke.createContext(typeof HTMLElement<"u"?Qf({key:"css"}):null),rx=yd.Provider;var Un=function(t){return(0,Ci.forwardRef)(function(r,n){var o=(0,Ci.useContext)(yd);return t(r,o,n)})},$t=Ke.createContext({});var Ei={}.hasOwnProperty,ys="__EMOTION_TYPE_PLEASE_DO_NOT_USE__",bd=function(t,r){var n={};for(var o in r)Ei.call(r,o)&&(n[o]=r[o]);return n[ys]=t,n},nx=function(t){var r=t.cache,n=t.serialized,o=t.isStringTag;return Kr(r,n,o),Gn(function(){return Vn(r,n,o)}),null},ox=Un(function(e,t,r){var n=e.css;typeof n=="string"&&t.registered[n]!==void 0&&(n=t.registered[n]);var o=e[ys],i=[n],a="";typeof e.className=="string"?a=Wn(t.registered,i,e.className):e.className!=null&&(a=e.className+" ");var s=_t(i,void 0,Ke.useContext($t));a+=t.key+"-"+s.name;var l={};for(var c in e)Ei.call(e,c)&&c!=="css"&&c!==ys&&!gd&&(l[c]=e[c]);return l.className=a,r&&(l.ref=r),Ke.createElement(Ke.Fragment,null,Ke.createElement(nx,{cache:t,serialized:s,isStringTag:typeof o=="string"}),Ke.createElement(o,l))}),xd=ox;var Xr=y(R());var NM=y(cd()),wd=function(t,r){var n=arguments;if(r==null||!Ei.call(r,"css"))return Xr.createElement.apply(void 0,n);var o=n.length,i=new Array(o);i[0]=xd,i[1]=bd(t,r);for(var a=2;a<o;a++)i[a]=n[a];return Xr.createElement.apply(null,i)};(function(e){var t;t||(t=e.JSX||(e.JSX={}))})(wd||(wd={}));function dr(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return _t(t)}function pr(){var e=dr.apply(void 0,arguments),t="animation-"+e.name;return{name:t,styles:"@keyframes "+t+"{"+e.styles+"}",anim:1,toString:function(){return"_EMO_"+this.name+"_"+this.styles+"_EMO_"}}}var Ht=y(R());var ix=/^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|disableRemotePlayback|download|draggable|encType|enterKeyHint|fetchpriority|fetchPriority|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|popover|popoverTarget|popoverTargetAction|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/,vd=di(function(e){return ix.test(e)||e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)<91});var ax=!1,sx=vd,lx=function(t){return t!=="theme"},Sd=function(t){return typeof t=="string"&&t.charCodeAt(0)>96?sx:lx},Td=function(t,r,n){var o;if(r){var i=r.shouldForwardProp;o=t.__emotion_forwardProp&&i?function(a){return t.__emotion_forwardProp(a)&&i(a)}:i}return typeof o!="function"&&n&&(o=t.__emotion_forwardProp),o},cx=function(t){var r=t.cache,n=t.serialized,o=t.isStringTag;return Kr(r,n,o),Gn(function(){return Vn(r,n,o)}),null},Cd=function e(t,r){var n=t.__emotion_real===t,o=n&&t.__emotion_base||t,i,a;r!==void 0&&(i=r.label,a=r.target);var s=Td(t,r,n),l=s||Sd(o),c=!l("as");return function(){var u=arguments,f=n&&t.__emotion_styles!==void 0?t.__emotion_styles.slice(0):[];if(i!==void 0&&f.push("label:"+i+";"),u[0]==null||u[0].raw===void 0)f.push.apply(f,u);else{var m=u[0];f.push(m[0]);for(var p=u.length,h=1;h<p;h++)f.push(u[h],m[h])}var g=Un(function(b,v,x){var T=c&&b.as||o,C="",M=[],S=b;if(b.theme==null){S={};for(var A in b)S[A]=b[A];S.theme=Ht.useContext($t)}typeof b.className=="string"?C=Wn(v.registered,M,b.className):b.className!=null&&(C=b.className+" ");var I=_t(f.concat(M),v.registered,S);C+=v.key+"-"+I.name,a!==void 0&&(C+=" "+a);var F=c&&s===void 0?Sd(T):l,N={};for(var O in b)c&&O==="as"||F(O)&&(N[O]=b[O]);return N.className=C,x&&(N.ref=x),Ht.createElement(Ht.Fragment,null,Ht.createElement(cx,{cache:v,serialized:I,isStringTag:typeof T=="string"}),Ht.createElement(T,N))});return g.displayName=i!==void 0?i:"Styled("+(typeof o=="string"?o:o.displayName||o.name||"Component")+")",g.defaultProps=t.defaultProps,g.__emotion_real=g,g.__emotion_base=o,g.__emotion_styles=f,g.__emotion_forwardProp=s,Object.defineProperty(g,"toString",{value:function(){return a===void 0&&ax?"NO_COMPONENT_SELECTOR":"."+a}}),g.withComponent=function(b,v){var x=e(b,oi({},r,v,{shouldForwardProp:Td(g,v,!0)}));return x.apply(void 0,f)},g}};var e2=y(R());var ux=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","big","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","marquee","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","tspan"],Mi=Cd.bind(null);ux.forEach(function(e){Mi[e]=Mi(e)});function fx(e,t){return Mi(e,t)}var Md=fx;function Ad(e,t){Array.isArray(e.__emotion_styles)&&(e.__emotion_styles=t(e.__emotion_styles))}var Ed=[];function wt(e){return Ed[0]=e,_t(Ed)}var dx={borderRadius:4},kd=dx;function qr(e=8,t=Ln({spacing:e})){if(e.mui)return e;let r=(...n)=>(n.length===0?[1]:n).map(i=>{let a=t(i);return typeof a=="number"?`${a}px`:a}).join(" ");return r.mui=!0,r}function bs(e,t){let r=this;if(r.vars){if(!r.colorSchemes?.[e]||typeof r.getColorSchemeSelector!="function")return{};let n=r.getColorSchemeSelector(e);return n==="&"?t:((n.includes("data-")||n.includes("."))&&(n=`*:where(${n.replace(/\s*&$/,"")}) &`),{[n]:t})}return r.palette.mode===e?t:{}}function px(e={},...t){let{breakpoints:r={},palette:n={},spacing:o,shape:i={},...a}=e,s=Rn(r),l=qr(o),c=se({breakpoints:s,direction:"ltr",components:{},palette:{mode:"light",...n},spacing:l,shape:{...kd,...i}},a);return c=ti(c),c.applyStyles=bs,c=t.reduce((u,f)=>se(u,f),c),c.unstable_sxConfig={...xt,...a?.unstable_sxConfig},c.unstable_sx=function(f){return at({sx:f,theme:this})},c.internal_cache={},c}var mr=px;var Rd=y(R(),1);function mx(e){return Object.keys(e).length===0}function hx(e=null){let t=Rd.useContext($t);return!t||mx(t)?e:t}var xs=hx;var gx=mr();function yx(e=gx){return xs(e)}var Ai=yx;var Pd=e=>e,bx=()=>{let e=Pd;return{configure(t){e=t},generate(t){return e(t)},reset(){e=Pd}}},xx=bx(),ws=xx;var wx={active:"active",checked:"checked",completed:"completed",disabled:"disabled",error:"error",expanded:"expanded",focused:"focused",focusVisible:"focusVisible",open:"open",readOnly:"readOnly",required:"required",selected:"selected"};function lt(e,t,r="Mui"){let n=wx[t];return n?`${r}-${n}`:`${ws.generate(e)}-${t}`}function ct(e,t,r="Mui"){let n={};return t.forEach(o=>{n[o]=lt(e,o,r)}),n}function Yn(e){let{variants:t,...r}=e,n={variants:t,style:wt(r),isProcessed:!0};return n.style===r||t&&t.forEach(o=>{typeof o.style!="function"&&(o.style=wt(o.style))}),n}var vx=mr();function vs(e){return e!=="ownerState"&&e!=="theme"&&e!=="sx"&&e!=="as"}function hr(e,t){return t&&e&&typeof e=="object"&&e.styles&&!e.styles.startsWith("@layer")&&(e.styles=`@layer ${t}{${String(e.styles)}}`),e}function Sx(e){return e?(t,r)=>r[e]:null}function Tx(e,t,r){e.theme=Dr(e.theme)?r:e.theme[t]||e.theme}function ki(e,t,r){let n=typeof t=="function"?t(e):t;if(Array.isArray(n))return n.flatMap(o=>ki(e,o,r));if(Array.isArray(n?.variants)){let o;if(n.isProcessed)o=r?hr(n.style,r):n.style;else{let{variants:i,...a}=n;o=r?hr(wt(a),r):a}return Od(e,n.variants,[o],r)}return n?.isProcessed?r?hr(wt(n.style),r):n.style:r?hr(wt(n),r):n}function Od(e,t,r=[],n=void 0){let o;e:for(let i=0;i<t.length;i+=1){let a=t[i];if(typeof a.props=="function"){if(o??={...e,...e.ownerState,ownerState:e.ownerState},!a.props(o))continue}else for(let s in a.props)if(e[s]!==a.props[s]&&e.ownerState?.[s]!==a.props[s])continue e;typeof a.style=="function"?(o??={...e,...e.ownerState,ownerState:e.ownerState},r.push(n?hr(wt(a.style(o)),n):a.style(o))):r.push(n?hr(wt(a.style),n):a.style)}return r}function Ri(e={}){let{themeId:t,defaultTheme:r=vx,rootShouldForwardProp:n=vs,slotShouldForwardProp:o=vs}=e;function i(s){Tx(s,t,r)}return(s,l={})=>{Ad(s,S=>S.filter(A=>A!==at));let{name:c,slot:u,skipVariantsResolver:f,skipSx:m,overridesResolver:p=Sx(Mx(u)),...h}=l,g=c&&c.startsWith("Mui")||u?"components":"custom",b=f!==void 0?f:u&&u!=="Root"&&u!=="root"||!1,v=m||!1,x=vs;u==="Root"||u==="root"?x=n:u?x=o:Ex(s)&&(x=void 0);let T=Md(s,{shouldForwardProp:x,label:Cx(c,u),...h}),C=S=>{if(S.__emotion_real===S)return S;if(typeof S=="function")return function(I){return ki(I,S,I.theme.modularCssLayers?g:void 0)};if(et(S)){let A=Yn(S);return function(F){return A.variants?ki(F,A,F.theme.modularCssLayers?g:void 0):F.theme.modularCssLayers?hr(A.style,g):A.style}}return S},M=(...S)=>{let A=[],I=S.map(C),F=[];if(A.push(i),c&&p&&F.push(function(d){let E=d.theme.components?.[c]?.styleOverrides;if(!E)return null;let L={};for(let G in E)L[G]=ki(d,E[G],d.theme.modularCssLayers?"theme":void 0);return p(d,L)}),c&&!b&&F.push(function(d){let E=d.theme?.components?.[c]?.variants;return E?Od(d,E,[],d.theme.modularCssLayers?"theme":void 0):null}),v||F.push(at),Array.isArray(I[0])){let B=I.shift(),d=new Array(A.length).fill(""),k=new Array(F.length).fill(""),E;E=[...d,...B,...k],E.raw=[...d,...B.raw,...k],A.unshift(E)}let N=[...A,...I,...F],O=T(...N);return s.muiName&&(O.muiName=s.muiName),O};return T.withConfig&&(M.withConfig=T.withConfig),M}}function Cx(e,t){return void 0}function Ex(e){return typeof e=="string"&&e.charCodeAt(0)>96}function Mx(e){return e&&e.charAt(0).toLowerCase()+e.slice(1)}function gr(e,t,r=!1){let n={...t};for(let o in e)if(Object.prototype.hasOwnProperty.call(e,o)){let i=o;if(i==="components"||i==="slots")n[i]={...e[i],...n[i]};else if(i==="componentsProps"||i==="slotProps"){let a=e[i],s=t[i];if(!s)n[i]=a||{};else if(!a)n[i]=s;else{n[i]={...s};for(let l in a)if(Object.prototype.hasOwnProperty.call(a,l)){let c=l,u=a[c],f=s[c];typeof u=="function"||typeof f=="function"?n[i][c]=(...m)=>gr((typeof u=="function"?u(...m):u)??{},(typeof f=="function"?f(...m):f)??{},r):n[i][c]=gr(u??{},f??{},r)}}}else i==="className"&&r&&t.className!==void 0?n.className=ye(e?.className,t?.className):i==="style"&&r&&t.style?n.style={...e?.style,...t?.style}:n[i]===void 0&&(n[i]=e[i])}return n}var Pi=y(R(),1),Ax=typeof window<"u"?Pi.useLayoutEffect:Pi.useEffect,Kn=Ax;function kx(e,t=Number.MIN_SAFE_INTEGER,r=Number.MAX_SAFE_INTEGER){return Math.max(t,Math.min(e,r))}var Ss=kx;function Cs(e,t=0,r=1){return Ss(e,t,r)}function Rx(e){e=e.slice(1);let t=new RegExp(`.{1,${e.length>=6?2:1}}`,"g"),r=e.match(t);return r&&r[0].length===1&&(r=r.map(n=>n+n)),r?`rgb${r.length===4?"a":""}(${r.map((n,o)=>o<3?parseInt(n,16):Math.round(parseInt(n,16)/255*1e3)/1e3).join(", ")})`:""}function zt(e){if(e.type)return e;if(e.charAt(0)==="#")return zt(Rx(e));let t=e.indexOf("("),r=e.substring(0,t);if(!["rgb","rgba","hsl","hsla","color"].includes(r))throw new Error(Be(9,e));let n=e.substring(t+1,e.length-1),o;if(r==="color"){if(n=n.split(" "),o=n.shift(),n.length===4&&n[3].charAt(0)==="/"&&(n[3]=n[3].slice(1)),!["srgb","display-p3","a98-rgb","prophoto-rgb","rec-2020"].includes(o))throw new Error(Be(10,o))}else n=n.split(",");return n=n.map(i=>parseFloat(i)),{type:r,values:n,colorSpace:o}}var Es=e=>{let t=zt(e);return t.values.slice(0,3).map((r,n)=>t.type.includes("hsl")&&n!==0?`${r}%`:r).join(" ")},Wt=(e,t)=>{try{return Es(e)}catch{return e}};function Oi(e){let{type:t,colorSpace:r}=e,{values:n}=e;return t.includes("rgb")?n=n.map((o,i)=>i<3?parseInt(o,10):o):t.includes("hsl")&&(n[1]=`${n[1]}%`,n[2]=`${n[2]}%`),t.includes("color")?n=`${r} ${n.join(" ")}`:n=`${n.join(", ")}`,`${t}(${n})`}function Xn(e){e=zt(e);let{values:t}=e,r=t[0],n=t[1]/100,o=t[2]/100,i=n*Math.min(o,1-o),a=(c,u=(c+r/30)%12)=>o-i*Math.max(Math.min(u-3,9-u,1),-1),s="rgb",l=[Math.round(a(0)*255),Math.round(a(8)*255),Math.round(a(4)*255)];return e.type==="hsla"&&(s+="a",l.push(t[3])),Oi({type:s,values:l})}function Ts(e){e=zt(e);let t=e.type==="hsl"||e.type==="hsla"?zt(Xn(e)).values:e.values;return t=t.map(r=>(e.type!=="color"&&(r/=255),r<=.03928?r/12.92:((r+.055)/1.055)**2.4)),Number((.2126*t[0]+.7152*t[1]+.0722*t[2]).toFixed(3))}function Fd(e,t){let r=Ts(e),n=Ts(t);return(Math.max(r,n)+.05)/(Math.min(r,n)+.05)}function Zr(e,t){return e=zt(e),t=Cs(t),(e.type==="rgb"||e.type==="hsl")&&(e.type+="a"),e.type==="color"?e.values[3]=`/${t}`:e.values[3]=t,Oi(e)}function Vt(e,t,r){try{return Zr(e,t)}catch{return e}}function Qr(e,t){if(e=zt(e),t=Cs(t),e.type.includes("hsl"))e.values[2]*=1-t;else if(e.type.includes("rgb")||e.type.includes("color"))for(let r=0;r<3;r+=1)e.values[r]*=1-t;return Oi(e)}function U(e,t,r){try{return Qr(e,t)}catch{return e}}function Jr(e,t){if(e=zt(e),t=Cs(t),e.type.includes("hsl"))e.values[2]+=(100-e.values[2])*t;else if(e.type.includes("rgb"))for(let r=0;r<3;r+=1)e.values[r]+=(255-e.values[r])*t;else if(e.type.includes("color"))for(let r=0;r<3;r+=1)e.values[r]+=(1-e.values[r])*t;return Oi(e)}function Y(e,t,r){try{return Jr(e,t)}catch{return e}}function Px(e,t=.15){return Ts(e)>.5?Qr(e,t):Jr(e,t)}function qn(e,t,r){try{return Px(e,t)}catch{return e}}var Fi=y(R(),1);var Ox=y(te(),1),Fx=Fi.createContext(void 0);function Lx(e){let{theme:t,name:r,props:n}=e;if(!t||!t.components||!t.components[r])return n;let o=t.components[r];return o.defaultProps?gr(o.defaultProps,n,t.components.mergeClassNameAndStyle):!o.styleOverrides&&!o.variants?gr(o,n,t.components.mergeClassNameAndStyle):n}function Ms({props:e,name:t}){let r=Fi.useContext(Fx);return Lx({props:e,name:t,theme:{components:r}})}var Ld={theme:void 0};function Li(e){let t,r;return function(o){let i=t;return(i===void 0||o.theme!==r)&&(Ld.theme=o.theme,i=Yn(e(Ld)),t=i,r=o.theme),i}}function Ii(e=""){function t(...n){if(!n.length)return"";let o=n[0];return typeof o=="string"&&!o.match(/(#|\(|\)|(-?(\d*\.)?\d+)(px|em|%|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc))|^(-?(\d*\.)?\d+)$|(\d+ \d+ \d+)/)?`, var(--${e?`${e}-`:""}${o}${t(...n.slice(1))})`:`, ${o}`}return(n,...o)=>`var(--${e?`${e}-`:""}${n}${t(...o)})`}var Dx=new Set(["__proto__","constructor","prototype"]),Id=(e,t,r,n=[])=>{let o=e;for(let i=0;i<t.length;i+=1){let a=t[i];if(Dx.has(a))break;i===t.length-1?Array.isArray(o)?o[Number(a)]=r:o&&typeof o=="object"&&(o[a]=r):o&&typeof o=="object"&&(o[a]||(o[a]=n.includes(a)?[]:{}),o=o[a])}},Bx=(e,t,r)=>{function n(o,i=[],a=[]){Object.entries(o).forEach(([s,l])=>{(!r||r&&!r([...i,s]))&&l!=null&&(typeof l=="object"&&Object.keys(l).length>0?n(l,[...i,s],Array.isArray(l)?[...a,s]:a):t([...i,s],l,a))})}n(e)},Nx=(e,t)=>typeof t=="number"?["lineHeight","fontWeight","opacity","zIndex"].some(n=>e.includes(n))||e[e.length-1].toLowerCase().includes("opacity")?t:`${t}px`:t;function Zn(e,t){let{prefix:r,shouldSkipGeneratingVar:n}=t||{},o={},i={},a={};return Bx(e,(s,l,c)=>{if((typeof l=="string"||typeof l=="number")&&(!n||!n(s,l))){let u=`--${r?`${r}-`:""}${s.join("-")}`,f=Nx(s,l);Object.assign(o,{[u]:f}),Id(i,s,`var(${u})`,c),Id(a,s,`var(${u}, ${f})`,c)}},s=>s[0]==="vars"),{css:o,vars:i,varsWithDefaults:a}}function _x(e,t={}){let{getSelector:r=v,disableCssColorScheme:n,colorSchemeSelector:o,enableContrastVars:i}=t,{colorSchemes:a={},components:s,defaultColorScheme:l="light",...c}=e,{vars:u,css:f,varsWithDefaults:m}=Zn(c,t),p=m,h={},{[l]:g,...b}=a;if(Object.entries(b||{}).forEach(([C,M])=>{let{vars:S,css:A,varsWithDefaults:I}=Zn(M,t);p=se(p,I),h[C]={css:A,vars:S}}),g){let{css:C,vars:M,varsWithDefaults:S}=Zn(g,t);p=se(p,S),h[l]={css:C,vars:M}}function v(C,M){let S=o;if(o==="class"&&(S=".%s"),o==="data"&&(S="[data-%s]"),o?.startsWith("data-")&&!o.includes("%s")&&(S=`[${o}="%s"]`),C){if(S==="media")return e.defaultColorScheme===C?":root":{[`@media (prefers-color-scheme: ${a[C]?.palette?.mode||C})`]:{":root":M}};if(S)return e.defaultColorScheme===C?`:root, ${S.replace("%s",String(C))}`:S.replace("%s",String(C))}return":root"}return{vars:p,generateThemeVars:()=>{let C={...u};return Object.entries(h).forEach(([,{vars:M}])=>{C=se(C,M)}),C},generateStyleSheets:()=>{let C=[],M=e.defaultColorScheme||"light";function S(F,N){Object.keys(N).length&&C.push(typeof F=="string"?{[F]:{...N}}:F)}S(r(void 0,{...f}),f);let{[M]:A,...I}=h;if(A){let{css:F}=A,N=a[M]?.palette?.mode,O=!n&&N?{colorScheme:N,...F}:{...F};S(r(M,{...O}),O)}return Object.entries(I).forEach(([F,{css:N}])=>{let O=a[F]?.palette?.mode,B=!n&&O?{colorScheme:O,...N}:{...N};S(r(F,{...B}),B)}),i&&C.push({":root":{"--__l-threshold":"0.7","--__l":"clamp(0, (l / var(--__l-threshold) - 1) * -infinity, 1)","--__a":"clamp(0.87, (l / var(--__l-threshold) - 1) * -infinity, 1)"}}),C}}}var As=_x;function ks(e){return function(r){return e==="media"?`@media (prefers-color-scheme: ${r})`:e?e.startsWith("data-")&&!e.includes("%s")?`[${e}="${r}"] &`:e==="class"?`.${r} &`:e==="data"?`[data-${r}] &`:`${e.replace("%s",r)} &`:"&"}}var $x={black:"#000",white:"#fff"},en=$x;var Hx={50:"#fafafa",100:"#f5f5f5",200:"#eeeeee",300:"#e0e0e0",400:"#bdbdbd",500:"#9e9e9e",600:"#757575",700:"#616161",800:"#424242",900:"#212121",A100:"#f5f5f5",A200:"#eeeeee",A400:"#bdbdbd",A700:"#616161"},Dd=Hx;var zx={50:"#f3e5f5",100:"#e1bee7",200:"#ce93d8",300:"#ba68c8",400:"#ab47bc",500:"#9c27b0",600:"#8e24aa",700:"#7b1fa2",800:"#6a1b9a",900:"#4a148c",A100:"#ea80fc",A200:"#e040fb",A400:"#d500f9",A700:"#aa00ff"},yr=zx;var Wx={50:"#ffebee",100:"#ffcdd2",200:"#ef9a9a",300:"#e57373",400:"#ef5350",500:"#f44336",600:"#e53935",700:"#d32f2f",800:"#c62828",900:"#b71c1c",A100:"#ff8a80",A200:"#ff5252",A400:"#ff1744",A700:"#d50000"},tt=Wx;var Vx={50:"#fff3e0",100:"#ffe0b2",200:"#ffcc80",300:"#ffb74d",400:"#ffa726",500:"#ff9800",600:"#fb8c00",700:"#f57c00",800:"#ef6c00",900:"#e65100",A100:"#ffd180",A200:"#ffab40",A400:"#ff9100",A700:"#ff6d00"},vt=Vx;var jx={50:"#e3f2fd",100:"#bbdefb",200:"#90caf9",300:"#64b5f6",400:"#42a5f5",500:"#2196f3",600:"#1e88e5",700:"#1976d2",800:"#1565c0",900:"#0d47a1",A100:"#82b1ff",A200:"#448aff",A400:"#2979ff",A700:"#2962ff"},ut=jx;var Gx={50:"#e1f5fe",100:"#b3e5fc",200:"#81d4fa",300:"#4fc3f7",400:"#29b6f6",500:"#03a9f4",600:"#039be5",700:"#0288d1",800:"#0277bd",900:"#01579b",A100:"#80d8ff",A200:"#40c4ff",A400:"#00b0ff",A700:"#0091ea"},br=Gx;var Ux={50:"#e8f5e9",100:"#c8e6c9",200:"#a5d6a7",300:"#81c784",400:"#66bb6a",500:"#4caf50",600:"#43a047",700:"#388e3c",800:"#2e7d32",900:"#1b5e20",A100:"#b9f6ca",A200:"#69f0ae",A400:"#00e676",A700:"#00c853"},ft=Ux;function _d(){return{text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.38)"},divider:"rgba(0, 0, 0, 0.12)",background:{paper:en.white,default:en.white},action:{active:"rgba(0, 0, 0, 0.54)",hover:"rgba(0, 0, 0, 0.04)",hoverOpacity:.04,selected:"rgba(0, 0, 0, 0.08)",selectedOpacity:.08,disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(0, 0, 0, 0.12)",disabledOpacity:.38,focus:"rgba(0, 0, 0, 0.12)",focusOpacity:.12,activatedOpacity:.12}}}var Rs=_d();function $d(){return{text:{primary:en.white,secondary:"rgba(255, 255, 255, 0.7)",disabled:"rgba(255, 255, 255, 0.5)",icon:"rgba(255, 255, 255, 0.5)"},divider:"rgba(255, 255, 255, 0.12)",background:{paper:"#121212",default:"#121212"},action:{active:en.white,hover:"rgba(255, 255, 255, 0.08)",hoverOpacity:.08,selected:"rgba(255, 255, 255, 0.16)",selectedOpacity:.16,disabled:"rgba(255, 255, 255, 0.3)",disabledBackground:"rgba(255, 255, 255, 0.12)",disabledOpacity:.38,focus:"rgba(255, 255, 255, 0.12)",focusOpacity:.12,activatedOpacity:.24}}}var Di=$d();function Bd(e,t,r,n){let o=n.light||n,i=n.dark||n*1.5;e[t]||(e.hasOwnProperty(r)?e[t]=e[r]:t==="light"?e.light=Jr(e.main,o):t==="dark"&&(e.dark=Qr(e.main,i)))}function Nd(e,t,r,n,o){let i=o.light||o,a=o.dark||o*1.5;t[r]||(t.hasOwnProperty(n)?t[r]=t[n]:r==="light"?t.light=`color-mix(in ${e}, ${t.main}, #fff ${(i*100).toFixed(0)}%)`:r==="dark"&&(t.dark=`color-mix(in ${e}, ${t.main}, #000 ${(a*100).toFixed(0)}%)`))}function Yx(e="light"){return e==="dark"?{main:ut[200],light:ut[50],dark:ut[400]}:{main:ut[700],light:ut[400],dark:ut[800]}}function Kx(e="light"){return e==="dark"?{main:yr[200],light:yr[50],dark:yr[400]}:{main:yr[500],light:yr[300],dark:yr[700]}}function Xx(e="light"){return e==="dark"?{main:tt[500],light:tt[300],dark:tt[700]}:{main:tt[700],light:tt[400],dark:tt[800]}}function qx(e="light"){return e==="dark"?{main:br[400],light:br[300],dark:br[700]}:{main:br[700],light:br[500],dark:br[900]}}function Zx(e="light"){return e==="dark"?{main:ft[400],light:ft[300],dark:ft[700]}:{main:ft[800],light:ft[500],dark:ft[900]}}function Qx(e="light"){return e==="dark"?{main:vt[400],light:vt[300],dark:vt[700]}:{main:"#ed6c02",light:vt[500],dark:vt[900]}}function Jx(e){return`oklch(from ${e} var(--__l) 0 h / var(--__a))`}function xr(e){let{mode:t="light",contrastThreshold:r=3,tonalOffset:n=.2,colorSpace:o,...i}=e,a=e.primary||Yx(t),s=e.secondary||Kx(t),l=e.error||Xx(t),c=e.info||qx(t),u=e.success||Zx(t),f=e.warning||Qx(t);function m(b){return o?Jx(b):Fd(b,Di.text.primary)>=r?Di.text.primary:Rs.text.primary}let p=({color:b,name:v,mainShade:x=500,lightShade:T=300,darkShade:C=700})=>{if(b={...b},!b.main&&b[x]&&(b.main=b[x]),!b.hasOwnProperty("main"))throw new Error(Be(11,v?` (${v})`:"",x));if(typeof b.main!="string")throw new Error(Be(12,v?` (${v})`:"",JSON.stringify(b.main)));return o?(Nd(o,b,"light",T,n),Nd(o,b,"dark",C,n)):(Bd(b,"light",T,n),Bd(b,"dark",C,n)),b.contrastText||(b.contrastText=m(b.main)),b},h;return t==="light"?h=_d():t==="dark"&&(h=$d()),se({common:{...en},mode:t,primary:p({color:a,name:"primary"}),secondary:p({color:s,name:"secondary",mainShade:"A400",lightShade:"A200",darkShade:"A700"}),error:p({color:l,name:"error"}),warning:p({color:f,name:"warning"}),info:p({color:c,name:"info"}),success:p({color:u,name:"success"}),grey:Dd,contrastThreshold:r,getContrastText:m,augmentColor:p,tonalOffset:n,...h},i)}var Bi="--_focusVisible-offset",Ps="--_focusVisible-behavior",Hd="--_focusVisible-shadow",ew=`var(${Bi}, 1)`,tw=`var(${Ps}, )`,zd={[Bi]:1,[Ps]:"initial"};function Wd(e){return{[Hd]:e}}function Ni(e,t){return t.reduce((r,n)=>n&&"focusVisible"in n?se(r,{focusVisible:n.focusVisible}):r,{focusVisible:e}).focusVisible}function Vd(e){return e!=null&&typeof e=="object"&&typeof e.outlineOffset=="string"&&e.outlineOffset.includes(Bi)}function tn(e,t){return rw({outlineStyle:"solid",outlineColor:t,outlineWidth:2,outlineOffset:2,boxShadow:`var(${Hd}, 0 0)`,...e===!0?null:e})}function rw(e){let t=e.outlineOffset??0;if(typeof t!="string"||!t.includes(Bi)){let n=typeof t=="number"?`${t}px`:t;e.outlineOffset=`calc(${ew} * ${n})`}let r=new Set(["none","initial","inherit","unset","revert","revert-layer"]);return typeof e.boxShadow=="string"&&!r.has(e.boxShadow.trim().toLowerCase())&&!/\binset\b/.test(e.boxShadow)&&!e.boxShadow.includes(Ps)&&(e.boxShadow=`${tw} ${e.boxShadow}`),e}function _i(e){let t={};return Object.entries(e).forEach(n=>{let[o,i]=n;typeof i=="object"&&(t[o]=`${i.fontStyle?`${i.fontStyle} `:""}${i.fontVariant?`${i.fontVariant} `:""}${i.fontWeight?`${i.fontWeight} `:""}${i.fontStretch?`${i.fontStretch} `:""}${i.fontSize||""}${i.lineHeight?`/${i.lineHeight} `:""}${i.fontFamily||""}`)}),t}function Os(e,t){return{toolbar:{minHeight:56,[e.up("xs")]:{"@media (orientation: landscape)":{minHeight:48}},[e.up("sm")]:{minHeight:64}},...t}}function nw(e){return Math.round(e*1e5)/1e5}var jd={textTransform:"uppercase"},Gd='"Roboto", "Helvetica", "Arial", sans-serif';function Fs(e,t){let{fontFamily:r=Gd,fontSize:n=14,fontWeightLight:o=300,fontWeightRegular:i=400,fontWeightMedium:a=500,fontWeightBold:s=700,htmlFontSize:l=16,allVariants:c,pxToRem:u,...f}=typeof t=="function"?t(e):t,m=n/14,p=u||(b=>`${b/l*m}rem`),h=(b,v,x,T,C)=>({fontFamily:r,fontWeight:b,fontSize:p(v),lineHeight:x,...r===Gd?{letterSpacing:`${nw(T/v)}em`}:{},...C,...c}),g={h1:h(o,96,1.167,-1.5),h2:h(o,60,1.2,-.5),h3:h(i,48,1.167,0),h4:h(i,34,1.235,.25),h5:h(i,24,1.334,0),h6:h(a,20,1.6,.15),subtitle1:h(i,16,1.75,.15),subtitle2:h(a,14,1.57,.1),body1:h(i,16,1.5,.15),body2:h(i,14,1.43,.15),button:h(a,14,1.75,.4,jd),caption:h(i,12,1.66,.4),overline:h(i,12,2.66,1,jd),inherit:{fontFamily:"inherit",fontWeight:"inherit",fontSize:"inherit",lineHeight:"inherit",letterSpacing:"inherit"}};return se({htmlFontSize:l,pxToRem:p,fontFamily:r,fontSize:n,fontWeightLight:o,fontWeightRegular:i,fontWeightMedium:a,fontWeightBold:s,...g},f,{clone:!1})}function ne(...e){return[`${e[0]}px ${e[1]}px ${e[2]}px ${e[3]}px rgba(0,0,0,${.2})`,`${e[4]}px ${e[5]}px ${e[6]}px ${e[7]}px rgba(0,0,0,${.14})`,`${e[8]}px ${e[9]}px ${e[10]}px ${e[11]}px rgba(0,0,0,${.12})`].join(",")}var ow=["none",ne(0,2,1,-1,0,1,1,0,0,1,3,0),ne(0,3,1,-2,0,2,2,0,0,1,5,0),ne(0,3,3,-2,0,3,4,0,0,1,8,0),ne(0,2,4,-1,0,4,5,0,0,1,10,0),ne(0,3,5,-1,0,5,8,0,0,1,14,0),ne(0,3,5,-1,0,6,10,0,0,1,18,0),ne(0,4,5,-2,0,7,10,1,0,2,16,1),ne(0,5,5,-3,0,8,10,1,0,3,14,2),ne(0,5,6,-3,0,9,12,1,0,3,16,2),ne(0,6,6,-3,0,10,14,1,0,4,18,3),ne(0,6,7,-4,0,11,15,1,0,4,20,3),ne(0,7,8,-4,0,12,17,2,0,5,22,4),ne(0,7,8,-4,0,13,19,2,0,5,24,4),ne(0,7,9,-4,0,14,21,2,0,5,26,4),ne(0,8,9,-5,0,15,22,2,0,6,28,5),ne(0,8,10,-5,0,16,24,2,0,6,30,5),ne(0,8,11,-5,0,17,26,2,0,6,32,5),ne(0,9,11,-5,0,18,28,2,0,7,34,6),ne(0,9,12,-6,0,19,29,2,0,7,36,6),ne(0,10,13,-6,0,20,31,3,0,8,38,7),ne(0,10,13,-6,0,21,33,3,0,8,40,7),ne(0,10,14,-6,0,22,35,3,0,8,42,7),ne(0,11,14,-7,0,23,36,3,0,9,44,8),ne(0,11,15,-7,0,24,38,3,0,9,46,8)],Ud=ow;var iw=["all"],aw={},sw={easeInOut:"cubic-bezier(0.4, 0, 0.2, 1)",easeOut:"cubic-bezier(0.0, 0, 0.2, 1)",easeIn:"cubic-bezier(0.4, 0, 1, 1)",sharp:"cubic-bezier(0.4, 0, 0.6, 1)"},lw={shortest:150,shorter:200,short:250,standard:300,complex:375,enteringScreen:225,leavingScreen:195};function Yd(e){return`${Math.round(e)}ms`}function cw(e){if(!e)return 0;let t=e/36;return Math.min(Math.round((4+15*t**.25+t/5)*10),3e3)}function Ls(e){let t={...e};delete t.reducedMotion;let r={...sw,...t.easing},n={...lw,...t.duration},o=(a=iw,s=aw)=>{let{duration:l=n.standard,easing:c=r.easeInOut,delay:u=0,...f}=s;return(Array.isArray(a)?a:[a]).map(m=>`${m} ${typeof l=="string"?l:Yd(l)} ${c} ${typeof u=="string"?u:Yd(u)}`).join(",")},i=t.create??o;return{getAutoHeightDuration:cw,create:i,...t,easing:r,duration:n}}var uw={};function Is(e=uw){return{reducedMotion:"never",...e}}var fw={mobileStepper:1e3,fab:1050,speedDial:1050,appBar:1100,drawer:1200,modal:1300,snackbar:1400,tooltip:1500},Kd=fw;function dw(e){return et(e)||typeof e>"u"||typeof e=="string"||typeof e=="boolean"||typeof e=="number"||Array.isArray(e)}function $i(e={}){let t={...e};function r(n){let o=Object.entries(n);for(let i=0;i<o.length;i++){let[a,s]=o[i];!dw(s)||a.startsWith("unstable_")||a.startsWith("internal_")?delete n[a]:et(s)&&(n[a]={...s},r(n[a]))}}return r(t),`import { unstable_createBreakpoints as createBreakpoints, createTransitions } from '@mui/material/styles';
|
|
3
|
+
|
|
4
|
+
const theme = ${JSON.stringify(t,null,2)};
|
|
5
|
+
|
|
6
|
+
theme.breakpoints = createBreakpoints(theme.breakpoints || {});
|
|
7
|
+
theme.motion = { reducedMotion: 'never', ...theme.motion };
|
|
8
|
+
theme.transitions = createTransitions(theme.transitions || {});
|
|
9
|
+
|
|
10
|
+
export default theme;`}function Xd(e){return typeof e=="number"?`${(e*100).toFixed(0)}%`:`calc((${e}) * 100%)`}var pw=e=>{if(!Number.isNaN(+e))return+e;let t=e.match(/\d*\.?\d+/g);if(!t)return 0;let r=0;for(let n=0;n<t.length;n+=1)r+=+t[n];return r};function qd(e){return e.startsWith("hsl")?Xn(e):e}function mw(e,t,r=""){let n=r.trim();if(n&&!n.startsWith("color("))try{let o=Es(qd(n));if(o.split(" ").length===3&&!o.includes("NaN"))return`var(--${t}Channel, ${o})`}catch{}return`var(--${t}Channel)`}function hw(e){Object.assign(e,{alpha(t,r){let n=this||e;if(n.colorSpace)return`oklch(from ${t} l c h / ${typeof r=="string"?`calc(${r})`:r})`;if(n.vars){let o=typeof r=="string"?`calc(${r})`:r;return t.startsWith("color(")?t.replace(/\s*(?:\/[^)]*)?\)$/,` / ${o})`):`rgba(${t.includes("var(")?t.replace(/var\(--([^,\s)]+)(?:,((?:[^()]|\([^()]*\))+)\)|(?:,[^)]+)?\)+)/g,mw):Wt(qd(t))} / ${o})`}return Zr(t,pw(r))},lighten(t,r){let n=this||e;return n.colorSpace?`color-mix(in ${n.colorSpace}, ${t}, #fff ${Xd(r)})`:Jr(t,r)},darken(t,r){let n=this||e;return n.colorSpace?`color-mix(in ${n.colorSpace}, ${t}, #000 ${Xd(r)})`:Qr(t,r)}})}function gw(e={},...t){let{breakpoints:r,mixins:n={},spacing:o,palette:i={},motion:a={},transitions:s={},typography:l={},shape:c,colorSpace:u,...f}=e;if(e.vars&&e.generateThemeVars===void 0)throw new Error(Be(22));let m=xr({...i,colorSpace:u}),p=mr(e),h=se(p,{mixins:Os(p.breakpoints,n),palette:m,shadows:Ud.slice(),typography:Fs(m,l),motion:Is(a),transitions:Ls(s),zIndex:{...Kd}});return h=se(h,f),h=t.reduce((g,b)=>se(g,b),h),delete h.transitions.reducedMotion,h.focusVisible!=null&&h.focusVisible!==!1&&(h.focusVisible=tn(h.focusVisible,h.palette.primary.main)),h.unstable_sxConfig={...xt,...f?.unstable_sxConfig},h.unstable_sx=function(b){return at({sx:b,theme:this})},h.toRuntimeSource=$i,hw(h),h}var Qn=gw;function rn(e){let t;return e<1?t=5.11916*e**2:t=4.5*Math.log(e+1)+2,Math.round(t*10)/1e3}var yw=[...Array(25)].map((e,t)=>{if(t===0)return"none";let r=rn(t);return`linear-gradient(rgba(255 255 255 / ${r}), rgba(255 255 255 / ${r}))`});function Ds(e){return{inputPlaceholder:e==="dark"?.5:.42,inputUnderline:e==="dark"?.7:.42,switchTrackDisabled:e==="dark"?.2:.12,switchTrack:e==="dark"?.3:.38}}function Bs(e){return e==="dark"?yw:[]}function Ns(e){let{palette:t={mode:"light"},opacity:r,overlays:n,colorSpace:o,...i}=e,a=xr({...t,colorSpace:o});return{palette:a,opacity:{...Ds(a.mode),...r},overlays:n||Bs(a.mode),...i}}function _s(e){return e[0]==="motion"||e[0]==="focusVisible"||!!e[0].match(/(cssVarPrefix|colorSchemeSelector|modularCssLayers|rootSelector|typography|mixins|breakpoints|direction|transitions)/)||!!e[0].match(/sxConfig$/)||e[0]==="palette"&&!!e[1]?.match(/(mode|contrastThreshold|tonalOffset)/)}var bw=e=>[...[...Array(25)].map((t,r)=>`--${e?`${e}-`:""}overlays-${r}`),`--${e?`${e}-`:""}palette-AppBar-darkBg`,`--${e?`${e}-`:""}palette-AppBar-darkColor`],Zd=bw;var Qd=e=>(t,r)=>{let n=e.rootSelector||":root",o=e.colorSchemeSelector,i=o;if(o==="class"&&(i=".%s"),o==="data"&&(i="[data-%s]"),o?.startsWith("data-")&&!o.includes("%s")&&(i=`[${o}="%s"]`),e.defaultColorScheme===t){if(t==="dark"){let a={};return Zd(e.cssVarPrefix).forEach(s=>{a[s]=r[s],delete r[s]}),i==="media"?{[n]:r,"@media (prefers-color-scheme: dark)":{[n]:a}}:i?{[i.replace("%s",t)]:a,[`${n}, ${i.replace("%s",t)}`]:r}:{[n]:{...r,...a}}}if(i&&i!=="media")return`${n}, ${i.replace("%s",String(t))}`}else if(t){if(i==="media")return{[`@media (prefers-color-scheme: ${String(t)})`]:{[n]:r}};if(i)return i.replace("%s",String(t))}return n};function xw(e,t){t.forEach(r=>{e[r]||(e[r]={})})}function w(e,t,r){!e[t]&&r&&(e[t]=r)}function Jn(e){return typeof e!="string"||!e.startsWith("hsl")?e:Xn(e)}function dt(e,t){`${t}Channel`in e||(e[`${t}Channel`]=Wt(Jn(e[t]),`MUI: Can't create \`palette.${t}Channel\` because \`palette.${t}\` is not one of these formats: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color().
|
|
11
|
+
To suppress this warning, you need to explicitly provide the \`palette.${t}Channel\` as a string (in rgb format, for example "12 12 12") or undefined if you want to remove the channel token.`))}function ww(e){return typeof e=="number"?`${e}px`:typeof e=="string"||typeof e=="function"||Array.isArray(e)?e:"8px"}var pt=e=>{try{return e()}catch{}},vw=(e="mui")=>Ii(e);function $s(e,t,r,n,o){if(!r)return;r=r===!0?{}:r;let i=o==="dark"?"dark":"light";if(!n){t[o]=Ns({...r,palette:{mode:i,...r?.palette},colorSpace:e});return}let{palette:a,...s}=Qn({...n,palette:{mode:i,...r?.palette},colorSpace:e});return t[o]={...r,palette:a,opacity:{...Ds(i),...r?.opacity},overlays:r?.overlays||Bs(i)},s}function Hs(e={},...t){let{colorSchemes:r={light:!0},defaultColorScheme:n,disableCssColorScheme:o=!1,cssVarPrefix:i="mui",nativeColor:a=!1,shouldSkipGeneratingVar:s=_s,colorSchemeSelector:l=r.light&&r.dark?"media":void 0,rootSelector:c=":root",...u}=e,f=Object.keys(r)[0],m=n||(r.light&&f!=="light"?"light":f),p=vw(i),{[m]:h,light:g,dark:b,...v}=r,x={...v},T=h;if((m==="dark"&&!("dark"in r)||m==="light"&&!("light"in r))&&(T=!0),!T)throw new Error(Be(21,m));let C;a&&(C="oklch");let M=$s(C,x,T,u,m);g&&!x.light&&$s(C,x,g,void 0,"light"),b&&!x.dark&&$s(C,x,b,void 0,"dark");let S={defaultColorScheme:m,...M,cssVarPrefix:i,colorSchemeSelector:l,rootSelector:c,getCssVar:p,colorSchemes:x,font:{..._i(M.typography),...M.font},spacing:ww(u.spacing)};Object.keys(S.colorSchemes).forEach(B=>{let d=S.colorSchemes[B].palette,k=L=>{let G=L.split("-"),he=G[1],xe=G[2];return p(L,d[he][xe])};d.mode==="light"&&(w(d.common,"background","#fff"),w(d.common,"onBackground","#000")),d.mode==="dark"&&(w(d.common,"background","#000"),w(d.common,"onBackground","#fff")),a||dt(d.text,"primary");function E(L,G,he){if(C){let xe;return L===Vt&&(xe=`transparent ${((1-he)*100).toFixed(0)}%`),L===U&&(xe=`#000 ${(he*100).toFixed(0)}%`),L===Y&&(xe=`#fff ${(he*100).toFixed(0)}%`),`color-mix(in ${C}, ${G}, ${xe})`}return L(G,he)}if(xw(d,["Alert","AppBar","Avatar","Button","Chip","FilledInput","Input","LinearProgress","Skeleton","Slider","SnackbarContent","SpeedDialAction","StepConnector","StepContent","Switch","TableCell","Tooltip"]),d.mode==="light"){w(d.Alert,"errorColor",E(U,a?p("palette-error-light"):d.error.light,.6)),w(d.Alert,"infoColor",E(U,a?p("palette-info-light"):d.info.light,.6)),w(d.Alert,"successColor",E(U,a?p("palette-success-light"):d.success.light,.6)),w(d.Alert,"warningColor",E(U,a?p("palette-warning-light"):d.warning.light,.6)),w(d.Alert,"errorFilledBg",k("palette-error-main")),w(d.Alert,"infoFilledBg",k("palette-info-main")),w(d.Alert,"successFilledBg",k("palette-success-main")),w(d.Alert,"warningFilledBg",k("palette-warning-main")),w(d.Alert,"errorFilledColor",pt(()=>d.getContrastText(d.error.main))),w(d.Alert,"infoFilledColor",pt(()=>d.getContrastText(d.info.main))),w(d.Alert,"successFilledColor",pt(()=>d.getContrastText(d.success.main))),w(d.Alert,"warningFilledColor",pt(()=>d.getContrastText(d.warning.main))),w(d.Alert,"errorStandardBg",E(Y,a?p("palette-error-light"):d.error.light,.9)),w(d.Alert,"infoStandardBg",E(Y,a?p("palette-info-light"):d.info.light,.9)),w(d.Alert,"successStandardBg",E(Y,a?p("palette-success-light"):d.success.light,.9)),w(d.Alert,"warningStandardBg",E(Y,a?p("palette-warning-light"):d.warning.light,.9)),w(d.Alert,"errorIconColor",k("palette-error-main")),w(d.Alert,"infoIconColor",k("palette-info-main")),w(d.Alert,"successIconColor",k("palette-success-main")),w(d.Alert,"warningIconColor",k("palette-warning-main")),w(d.AppBar,"defaultBg",k("palette-grey-100")),w(d.Avatar,"defaultBg",k("palette-grey-400")),w(d.Button,"inheritContainedBg",k("palette-grey-300")),w(d.Button,"inheritContainedHoverBg",k("palette-grey-A100")),w(d.Chip,"defaultBorder",k("palette-grey-400")),w(d.Chip,"defaultAvatarColor",k("palette-grey-700")),w(d.Chip,"defaultIconColor",k("palette-grey-700")),w(d.FilledInput,"bg","rgba(0, 0, 0, 0.06)"),w(d.FilledInput,"hoverBg","rgba(0, 0, 0, 0.09)"),w(d.FilledInput,"disabledBg","rgba(0, 0, 0, 0.12)"),w(d.Input,"autofillWebkitBoxShadow","none"),w(d.LinearProgress,"primaryBg",E(Y,a?p("palette-primary-main"):d.primary.main,.62)),w(d.LinearProgress,"secondaryBg",E(Y,a?p("palette-secondary-main"):d.secondary.main,.62)),w(d.LinearProgress,"errorBg",E(Y,a?p("palette-error-main"):d.error.main,.62)),w(d.LinearProgress,"infoBg",E(Y,a?p("palette-info-main"):d.info.main,.62)),w(d.LinearProgress,"successBg",E(Y,a?p("palette-success-main"):d.success.main,.62)),w(d.LinearProgress,"warningBg",E(Y,a?p("palette-warning-light"):d.warning.main,.62)),w(d.Skeleton,"bg",C?E(Vt,a?p("palette-text-primary"):d.text.primary,.11):`rgba(${k("palette-text-primaryChannel")} / 0.11)`),w(d.Slider,"primaryTrack",E(Y,a?p("palette-primary-main"):d.primary.main,.62)),w(d.Slider,"secondaryTrack",E(Y,a?p("palette-secondary-main"):d.secondary.main,.62)),w(d.Slider,"errorTrack",E(Y,a?p("palette-error-main"):d.error.main,.62)),w(d.Slider,"infoTrack",E(Y,a?p("palette-info-main"):d.info.main,.62)),w(d.Slider,"successTrack",E(Y,a?p("palette-success-main"):d.success.main,.62)),w(d.Slider,"warningTrack",E(Y,a?p("palette-warning-main"):d.warning.main,.62));let L=C?E(U,a?p("palette-background-default"):d.background.default,.6825):qn(d.background.default,.8);w(d.SnackbarContent,"bg",L),w(d.SnackbarContent,"color",pt(()=>C?Di.text.primary:d.getContrastText(L))),w(d.SpeedDialAction,"fabHoverBg",qn(d.background.paper,.15)),w(d.StepConnector,"border",k("palette-grey-400")),w(d.StepContent,"border",k("palette-grey-400")),w(d.Switch,"defaultColor",k("palette-common-white")),w(d.Switch,"defaultDisabledColor",k("palette-grey-100")),w(d.Switch,"primaryDisabledColor",E(Y,a?p("palette-primary-main"):d.primary.main,.62)),w(d.Switch,"secondaryDisabledColor",E(Y,a?p("palette-secondary-main"):d.secondary.main,.62)),w(d.Switch,"errorDisabledColor",E(Y,a?p("palette-error-main"):d.error.main,.62)),w(d.Switch,"infoDisabledColor",E(Y,a?p("palette-info-main"):d.info.main,.62)),w(d.Switch,"successDisabledColor",E(Y,a?p("palette-success-main"):d.success.main,.62)),w(d.Switch,"warningDisabledColor",E(Y,a?p("palette-warning-main"):d.warning.main,.62)),w(d.TableCell,"border",E(Y,Vt(a?p("palette-divider"):d.divider,1),.88)),w(d.Tooltip,"bg",E(Vt,a?p("palette-grey-700"):d.grey[700],.92))}if(d.mode==="dark"){w(d.Alert,"errorColor",E(Y,a?p("palette-error-light"):d.error.light,.6)),w(d.Alert,"infoColor",E(Y,a?p("palette-info-light"):d.info.light,.6)),w(d.Alert,"successColor",E(Y,a?p("palette-success-light"):d.success.light,.6)),w(d.Alert,"warningColor",E(Y,a?p("palette-warning-light"):d.warning.light,.6)),w(d.Alert,"errorFilledBg",k("palette-error-dark")),w(d.Alert,"infoFilledBg",k("palette-info-dark")),w(d.Alert,"successFilledBg",k("palette-success-dark")),w(d.Alert,"warningFilledBg",k("palette-warning-dark")),w(d.Alert,"errorFilledColor",pt(()=>d.getContrastText(d.error.dark))),w(d.Alert,"infoFilledColor",pt(()=>d.getContrastText(d.info.dark))),w(d.Alert,"successFilledColor",pt(()=>d.getContrastText(d.success.dark))),w(d.Alert,"warningFilledColor",pt(()=>d.getContrastText(d.warning.dark))),w(d.Alert,"errorStandardBg",E(U,a?p("palette-error-light"):d.error.light,.9)),w(d.Alert,"infoStandardBg",E(U,a?p("palette-info-light"):d.info.light,.9)),w(d.Alert,"successStandardBg",E(U,a?p("palette-success-light"):d.success.light,.9)),w(d.Alert,"warningStandardBg",E(U,a?p("palette-warning-light"):d.warning.light,.9)),w(d.Alert,"errorIconColor",k("palette-error-main")),w(d.Alert,"infoIconColor",k("palette-info-main")),w(d.Alert,"successIconColor",k("palette-success-main")),w(d.Alert,"warningIconColor",k("palette-warning-main")),w(d.AppBar,"defaultBg",k("palette-grey-900")),w(d.AppBar,"darkBg",k("palette-background-paper")),w(d.AppBar,"darkColor",k("palette-text-primary")),w(d.Avatar,"defaultBg",k("palette-grey-600")),w(d.Button,"inheritContainedBg",k("palette-grey-800")),w(d.Button,"inheritContainedHoverBg",k("palette-grey-700")),w(d.Chip,"defaultBorder",k("palette-grey-700")),w(d.Chip,"defaultAvatarColor",k("palette-grey-300")),w(d.Chip,"defaultIconColor",k("palette-grey-300")),w(d.FilledInput,"bg","rgba(255, 255, 255, 0.09)"),w(d.FilledInput,"hoverBg","rgba(255, 255, 255, 0.13)"),w(d.FilledInput,"disabledBg","rgba(255, 255, 255, 0.12)"),w(d.Input,"autofillWebkitBoxShadow","0 0 0 100px #266798 inset"),w(d.LinearProgress,"primaryBg",E(U,a?p("palette-primary-main"):d.primary.main,.5)),w(d.LinearProgress,"secondaryBg",E(U,a?p("palette-secondary-main"):d.secondary.main,.5)),w(d.LinearProgress,"errorBg",E(U,a?p("palette-error-main"):d.error.main,.5)),w(d.LinearProgress,"infoBg",E(U,a?p("palette-info-main"):d.info.main,.5)),w(d.LinearProgress,"successBg",E(U,a?p("palette-success-main"):d.success.main,.5)),w(d.LinearProgress,"warningBg",E(U,a?p("palette-warning-main"):d.warning.main,.5)),w(d.Skeleton,"bg",C?E(Vt,a?p("palette-text-primary"):d.text.primary,.13):`rgba(${k("palette-text-primaryChannel")} / 0.13)`),w(d.Slider,"primaryTrack",E(U,a?p("palette-primary-main"):d.primary.main,.5)),w(d.Slider,"secondaryTrack",E(U,a?p("palette-secondary-main"):d.secondary.main,.5)),w(d.Slider,"errorTrack",E(U,a?p("palette-error-main"):d.error.main,.5)),w(d.Slider,"infoTrack",E(U,a?p("palette-info-main"):d.info.main,.5)),w(d.Slider,"successTrack",E(U,a?p("palette-success-main"):d.success.main,.5)),w(d.Slider,"warningTrack",E(U,a?p("palette-warning-light"):d.warning.main,.5));let L=C?E(Y,a?p("palette-background-default"):d.background.default,.985):qn(d.background.default,.98);w(d.SnackbarContent,"bg",L),w(d.SnackbarContent,"color",pt(()=>C?Rs.text.primary:d.getContrastText(L))),w(d.SpeedDialAction,"fabHoverBg",qn(d.background.paper,.15)),w(d.StepConnector,"border",k("palette-grey-600")),w(d.StepContent,"border",k("palette-grey-600")),w(d.Switch,"defaultColor",k("palette-grey-300")),w(d.Switch,"defaultDisabledColor",k("palette-grey-600")),w(d.Switch,"primaryDisabledColor",E(U,a?p("palette-primary-main"):d.primary.main,.55)),w(d.Switch,"secondaryDisabledColor",E(U,a?p("palette-secondary-main"):d.secondary.main,.55)),w(d.Switch,"errorDisabledColor",E(U,a?p("palette-error-main"):d.error.main,.55)),w(d.Switch,"infoDisabledColor",E(U,a?p("palette-info-main"):d.info.main,.55)),w(d.Switch,"successDisabledColor",E(U,a?p("palette-success-main"):d.success.main,.55)),w(d.Switch,"warningDisabledColor",E(U,a?p("palette-warning-light"):d.warning.main,.55)),w(d.TableCell,"border",E(U,Vt(a?p("palette-divider"):d.divider,1),.68)),w(d.Tooltip,"bg",E(Vt,a?p("palette-grey-700"):d.grey[700],.92))}a||(dt(d.background,"default"),dt(d.background,"paper"),dt(d.common,"background"),dt(d.common,"onBackground"),dt(d,"divider")),Object.keys(d).forEach(L=>{let G=d[L];L!=="tonalOffset"&&!a&&G&&typeof G=="object"&&(G.main&&w(d[L],"mainChannel",Wt(Jn(G.main))),G.light&&w(d[L],"lightChannel",Wt(Jn(G.light))),G.dark&&w(d[L],"darkChannel",Wt(Jn(G.dark))),G.contrastText&&w(d[L],"contrastTextChannel",Wt(Jn(G.contrastText))),L==="text"&&(dt(d[L],"primary"),dt(d[L],"secondary")),L==="action"&&(G.active&&dt(d[L],"active"),G.selected&&dt(d[L],"selected")))})}),S=t.reduce((B,d)=>se(B,d),S);let A=Ni(e.focusVisible,t);A!=null&&A!==!1&&(S.focusVisible=tn(A,p("palette-primary-main")));let I={prefix:i,disableCssColorScheme:o,shouldSkipGeneratingVar:s,getSelector:Qd(S),enableContrastVars:a},{vars:F,generateThemeVars:N,generateStyleSheets:O}=As(S,I);return S.vars=F,Object.entries(S.colorSchemes[S.defaultColorScheme]).forEach(([B,d])=>{S[B]=d}),S.generateThemeVars=N,S.generateStyleSheets=O,S.generateSpacing=function(){return qr(u.spacing,Ln(this))},S.getColorSchemeSelector=ks(l),S.spacing=S.generateSpacing(),S.shouldSkipGeneratingVar=s,S.unstable_sxConfig={...xt,...u?.unstable_sxConfig},S.unstable_sx=function(d){return at({sx:d,theme:this})},S.internal_cache={},S.toRuntimeSource=$i,S}function Jd(e,t,r){e.colorSchemes&&r&&(e.colorSchemes[t]={...r!==!0&&r,palette:xr({...r===!0?{}:r.palette,mode:t})})}function zs(e={},...t){let{palette:r,cssVariables:n=!1,colorSchemes:o=r?void 0:{light:!0},defaultColorScheme:i=r?.mode,...a}=e,s=i||"light",l=o?.[s],c={...o,...r?{[s]:{...typeof l!="boolean"&&l,palette:r}}:void 0};if(n===!1){if(!("colorSchemes"in e))return Qn(e,...t);let u=r;"palette"in e||c[s]&&(c[s]!==!0?u=c[s].palette:s==="dark"&&(u={mode:"dark"}));let f=Qn({...e,palette:u},...t);if(f.defaultColorScheme=s,f.colorSchemes=c,f.palette.mode==="light"&&(f.colorSchemes.light={...c.light!==!0&&c.light,palette:f.palette},Jd(f,"dark",c.dark)),f.palette.mode==="dark"&&(f.colorSchemes.dark={...c.dark!==!0&&c.dark,palette:f.palette},Jd(f,"light",c.light)),f.focusVisible!=null&&f.focusVisible!==!1){let m=f.focusVisible,p=Ni(e.focusVisible,t),h=p&&typeof p=="object"?p.outlineColor:void 0;if(!h||Vd(p)&&h===f.palette.primary.main){let{outlineColor:g,...b}=m;m=b}Object.keys(f.colorSchemes).forEach(g=>{let b=f.colorSchemes?.[g]?.palette;b?.primary&&(f.colorSchemes[g].focusVisible=tn(m,b.primary.main))})}return f}return!r&&!("light"in c)&&s==="light"&&(c.light=!0),Hs({...a,colorSchemes:c,defaultColorScheme:s,...typeof n!="boolean"&&n},...t)}var Sw=zs(),Hi=Sw;var zi="$$material";function nn(){let e=Ai(Hi);return e[zi]||e}var Aw=y(te(),1);function Cw(e){return e!=="ownerState"&&e!=="theme"&&e!=="sx"&&e!=="as"}var ep=Cw;var Ew=e=>ep(e)&&e!=="classes",tp=Ew;var Mw=Ri({themeId:zi,defaultTheme:Hi,rootShouldForwardProp:tp}),mt=Mw;var kw=Li,on=kw;var WR=y(R(),1);var Rw=y(te(),1);function St(e){return Ms(e)}var eo=Ir;function Pw(e){return typeof e.main=="string"}function Ow(e,t=[]){if(!Pw(e))return!1;for(let r of t)if(!e.hasOwnProperty(r)||typeof e[r]!="string")return!1;return!0}function Ws(e=[]){return([,t])=>t&&Ow(t,e)}var ap=y(R(),1);function rp(e){return lt("MuiPaper",e)}var JR=ct("MuiPaper",["root","rounded","outlined","elevation","elevation0","elevation1","elevation2","elevation3","elevation4","elevation5","elevation6","elevation7","elevation8","elevation9","elevation10","elevation11","elevation12","elevation13","elevation14","elevation15","elevation16","elevation17","elevation18","elevation19","elevation20","elevation21","elevation22","elevation23","elevation24"]);var np={transition:"none"};function op(e,t){return e==="always"?t:e==="system"?{"@media (prefers-reduced-motion: reduce)":t}:null}var Fw={},Lw=["all"],Iw={};function Dw(e,t){let r=t??np;return op(e.motion?.reducedMotion,r)}function ip(e,t=Lw,r=Iw){let n=e.transitions?.create?.(t,r),o=Dw(e);if(n===void 0)return o??Fw;let i={transition:n};return o?{...i,...o}:i}var sp=y(te(),1),Bw=e=>{let{square:t,elevation:r,variant:n,classes:o}=e,i={root:["root",n,!t&&"rounded",n==="elevation"&&`elevation${r}`]};return Bt(i,rp,o)},Nw=mt("div",{name:"MuiPaper",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:r}=e;return[t.root,t[r.variant],!r.square&&t.rounded,r.variant==="elevation"&&t[`elevation${r.elevation}`]]}})(on(({theme:e})=>({backgroundColor:(e.vars||e).palette.background.paper,color:(e.vars||e).palette.text.primary,...ip(e,"box-shadow"),variants:[{props:({ownerState:t})=>!t.square,style:{borderRadius:(e.vars||e).shape.borderRadius}},{props:{variant:"outlined"},style:{border:`1px solid ${(e.vars||e).palette.divider}`}},{props:{variant:"elevation"},style:{boxShadow:"var(--Paper-shadow)",backgroundImage:"var(--Paper-overlay)"}}]}))),_w=ap.forwardRef(function(t,r){let n=St({props:t,name:"MuiPaper"}),o=nn(),{className:i,component:a="div",elevation:s=1,square:l=!1,variant:c="elevation",...u}=n,f={...n,component:a,elevation:s,square:l,variant:c},m=Bw(f);return(0,sp.jsx)(Nw,{as:a,ownerState:f,className:ye(m.root,i),ref:r,...u,style:{...c==="elevation"&&{"--Paper-shadow":(o.vars||o).shadows[s],...o.vars&&{"--Paper-overlay":o.vars.overlays?.[s]},...!o.vars&&o.palette.mode==="dark"&&{"--Paper-overlay":`linear-gradient(${Zr("#fff",rn(s))}, ${Zr("#fff",rn(s))})`}},...u.style}})}),Vs=_w;function lp(e){return lt("MuiAppBar",e)}var xP=ct("MuiAppBar",["root","positionFixed","positionAbsolute","positionSticky","positionStatic","positionRelative","colorDefault","colorPrimary","colorSecondary","colorInherit","colorTransparent","colorError","colorInfo","colorSuccess","colorWarning"]);var fp=y(te(),1),$w=e=>{let{color:t,position:r,classes:n}=e,o={root:["root",`color${eo(t)}`,`position${eo(r)}`]};return Bt(o,lp,n)},cp=(e,t)=>e?`${e.replace(")","")}, ${t})`:t,Hw=mt(Vs,{name:"MuiAppBar",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:r}=e;return[t.root,t[`position${eo(r.position)}`],t[`color${eo(r.color)}`]]}})(on(({theme:e})=>({display:"flex",flexDirection:"column",width:"100%",boxSizing:"border-box",flexShrink:0,variants:[{props:{position:"fixed"},style:{position:"fixed",zIndex:(e.vars||e).zIndex.appBar,top:0,left:"auto",right:0,"@media print":{position:"absolute"}}},{props:{position:"absolute"},style:{position:"absolute",zIndex:(e.vars||e).zIndex.appBar,top:0,left:"auto",right:0}},{props:{position:"sticky"},style:{position:"sticky",zIndex:(e.vars||e).zIndex.appBar,top:0,left:"auto",right:0}},{props:{position:"static"},style:{position:"static"}},{props:{position:"relative"},style:{position:"relative"}},{props:{color:"inherit"},style:{"--AppBar-color":"inherit",color:"var(--AppBar-color)"}},{props:{color:"default"},style:{"--AppBar-background":e.vars?e.vars.palette.AppBar.defaultBg:e.palette.grey[100],"--AppBar-color":e.vars?e.vars.palette.text.primary:e.palette.getContrastText(e.palette.grey[100]),...e.applyStyles("dark",{"--AppBar-background":e.vars?e.vars.palette.AppBar.defaultBg:e.palette.grey[900],"--AppBar-color":e.vars?e.vars.palette.text.primary:e.palette.getContrastText(e.palette.grey[900])})}},...Object.entries(e.palette).filter(Ws(["contrastText"])).map(([t])=>({props:{color:t},style:{"--AppBar-background":(e.vars??e).palette[t].main,"--AppBar-color":(e.vars??e).palette[t].contrastText,...e.focusVisible&&Wd(`0 0 0 4px ${(e.vars||e).palette.background.default}`)}})),{props:t=>t.enableColorOnDark===!0&&!["inherit","transparent"].includes(t.color),style:{backgroundColor:"var(--AppBar-background)",color:"var(--AppBar-color)"}},{props:t=>t.enableColorOnDark===!1&&!["inherit","transparent"].includes(t.color),style:{backgroundColor:"var(--AppBar-background)",color:"var(--AppBar-color)",...e.applyStyles("dark",{backgroundColor:e.vars?cp(e.vars.palette.AppBar.darkBg,"var(--AppBar-background)"):null,color:e.vars?cp(e.vars.palette.AppBar.darkColor,"var(--AppBar-color)"):null})}},{props:{color:"transparent"},style:{"--AppBar-background":"transparent","--AppBar-color":"inherit",backgroundColor:"var(--AppBar-background)",color:"var(--AppBar-color)",...e.applyStyles("dark",{backgroundImage:"none"})}}]}))),zw=up.forwardRef(function(t,r){let n=St({props:t,name:"MuiAppBar"}),{className:o,color:i="primary",enableColorOnDark:a=!1,position:s="fixed",...l}=n,c={...n,color:i,position:s,enableColorOnDark:a},u=$w(c);return(0,fp.jsx)(Hw,{square:!0,component:"header",ownerState:c,elevation:4,className:ye(u.root,o,s==="fixed"&&"mui-fixed"),ref:r,...l})}),js=zw;var vm=y(_(),1);var jt=y(R(),1),dp=y(Ra(),1),pp=y(Cn(),1),an=y(J(),1),mp=y(_(),1),Ww=(0,pp.makeStyles)()({page:{display:"flex",alignItems:"center",gap:12,padding:20},header:{display:"flex",alignItems:"center",gap:4,margin:"auto",marginLeft:10}}),Vw=(0,mp.observer)(function({model:e,variant:t}){let{status:r}=e,{classes:n}=Ww();if(t==="header"&&!r)return null;let o=r?.msg??"Loading...",i=r?.onCancel;return jt.default.createElement("div",{className:n[t]},t==="page"?jt.default.createElement(jt.default.Fragment,null,jt.default.createElement(an.CircularProgress,{size:24}),jt.default.createElement(an.Typography,{variant:"h6"},o)):jt.default.createElement(dp.LoadingEllipses,{message:o,component:"span"}),i?jt.default.createElement(an.Button,{variant:t==="page"?"outlined":"text",size:"small",onClick:()=>{i()}},"Cancel"):null)}),to=Vw;var Wi=y(R(),1),hp=y(Cn(),1),gp=y(J(),1),yp=y(_(),1),jw=(0,hp.makeStyles)()({container:{display:"flex",overflow:"hidden",margin:"auto",marginLeft:10},nameFirst:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0},nameRest:{whiteSpace:"nowrap",flexShrink:0}}),Gw=(0,yp.observer)(function({model:e}){let{mouseOverRowName:t,mouseCol:r}=e,{classes:n}=jw();if(!t||r===void 0)return null;let o=Math.floor(t.length/2),i=e.visibleColToSeqPosOneBased(t,r),a=e.visibleColToRowLetter(t,r);return Wi.default.createElement(gp.Typography,{component:"div",className:n.container,title:t},Wi.default.createElement("span",{className:n.nameFirst},t.slice(0,o)),Wi.default.createElement("span",{className:n.nameRest},t.slice(o),":",i," (",a,")"))}),bp=Gw;var ro=y(R(),1),Vi=y(J(),1),xp=y(_(),1),Uw=(0,ro.lazy)(()=>import("./GapThresholdDialog-Z2MUN66L.js")),Yw=(0,xp.observer)(function({model:e}){let t=e.blanks.length;return t>0?ro.default.createElement(Vi.Tooltip,{title:`Hiding columns with \u2265${e.allowedGappyness}% gaps. Click to change the threshold, \xD7 to show every column`},ro.default.createElement(Vi.Chip,{"data-testid":"hidden_columns_chip",size:"small",variant:"outlined",label:`${t.toLocaleString("en-US")} gappy column${t===1?"":"s"} hidden`,style:{margin:"auto 8px",flexShrink:0},onClick:()=>{e.queueDialog(r=>[Uw,{model:e,onClose:r}])},onDelete:()=>{e.setHideGaps(!1)}})):null}),wp=Yw;var ji=y(R(),1);var vp=y(te(),1),Sp=(0,W.createSvgIcon)((0,vp.jsx)("path",{d:"M1 21h22L12 2zm12-3h-2v-2h2zm0-4h-2v-4h2z"}),"Warning");var Gi=y(J(),1),Tp=y(_(),1),Kw=(0,Tp.observer)(function({model:e}){let{warnings:t}=e;return t.length===0?null:ji.default.createElement(Gi.Tooltip,{title:`${t.join(" ")} (click to dismiss)`},ji.default.createElement(Gi.Button,{"aria-label":"Dismiss warnings",color:"warning",size:"small",startIcon:ji.default.createElement(Sp,{fontSize:"small"}),style:{margin:"auto",marginLeft:10,whiteSpace:"nowrap"},onClick:()=>{e.clearWarnings()}},t.length>1?`${t.length} warnings`:"Warning"))}),Cp=Kw;var Cr=y(R(),1),Kp=y(Mp(),1);var Ap=y(te(),1),kp=(0,W.createSvgIcon)((0,Ap.jsx)("path",{d:"m22.7 19-9.1-9.1c.9-2.3.4-5-1.5-6.9-2-2-5-2.4-7.4-1.3L9 6 6 9 1.6 4.7C.4 7.1.9 10.1 2.9 12.1c1.9 1.9 4.6 2.4 6.9 1.5l9.1 9.1c.4.4 1 .4 1.4 0l2.3-2.3c.5-.4.5-1.1.1-1.4"}),"Build");var Rp=y(te(),1),Pp=(0,W.createSvgIcon)((0,Rp.jsx)("path",{d:"M6 2c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm7 7V3.5L18.5 9z"}),"InsertDriveFile");var Op=y(te(),1),Fp=(0,W.createSvgIcon)((0,Op.jsx)("path",{d:"M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5M12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5m0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3"}),"Visibility");var Xp=y(J(),1),qp=y(_(),1);var Tr=y(R(),1);var Ui=y(R(),1),sn=y(J(),1),Lp=y(_(),1),Gs="Zoom on scroll",Xw="The mouse wheel zooms the alignment instead of scrolling it; shift+scroll still scrolls. ctrl+scroll (\u2318+scroll on a Mac) zooms either way.",qw=(0,Lp.observer)(function({model:e}){return Ui.default.createElement(sn.Tooltip,{title:Xw,describeChild:!0},Ui.default.createElement(sn.FormControlLabel,{"data-testid":"scroll-zoom-toggle",style:{marginLeft:4,marginRight:e.embeddedMode?0:8,whiteSpace:"nowrap"},control:Ui.default.createElement(sn.Checkbox,{size:"small",checked:e.scrollZoom,onChange:()=>{e.setScrollZoom(!e.scrollZoom)},style:{padding:6}}),label:e.embeddedMode?"":Gs,slotProps:{typography:{variant:"body2"}}}))}),Ip=qw;var Us=[{name:"maeditor",label:"MAEditor",alphabet:"protein",featured:!0},{name:"clustalx_protein",label:"Clustal X",alphabet:"protein",featured:!0},{name:"clustalx_protein_dynamic",label:"Clustal X, by column conservation",alphabet:"protein",featured:!0},{name:"blosum62_dynamic",label:"BLOSUM62 similarity",alphabet:"protein",featured:!0},{name:"jalview_hydrophobicity",label:"Hydrophobicity",alphabet:"protein",featured:!0},{name:"nucleotide",label:"Nucleotide",alphabet:"nucleotide",featured:!0},{name:"rainbow_dna",label:"Rainbow",alphabet:"nucleotide",featured:!0},{name:"percent_identity_dynamic",label:"Percent identity",alphabet:"any",featured:!0},{name:"none",label:"None",alphabet:"any",featured:!0},{name:"clustal",label:"Clustal",alphabet:"protein"},{name:"lesk",label:"Lesk",alphabet:"protein"},{name:"flower",label:"Flower",alphabet:"protein"},{name:"cinema",label:"Cinema",alphabet:"protein"},{name:"jalview_zappo",label:"Zappo",alphabet:"protein"},{name:"jalview_taylor",label:"Taylor",alphabet:"protein"},{name:"jalview_buried",label:"Buried index",alphabet:"protein"},{name:"jalview_prophelix",label:"Helix propensity",alphabet:"protein"},{name:"jalview_propstrand",label:"Strand propensity",alphabet:"protein"},{name:"jalview_propturn",label:"Turn propensity",alphabet:"protein"},{name:"clustalx_dna",label:"Clustal X (DNA)",alphabet:"nucleotide"},{name:"jbrowse_dna",label:"JBrowse (DNA)",alphabet:"nucleotide"}],qP=Us.map(e=>e.name);function Dp(e){let{colorSchemeName:t,customColorScheme:r,sequenceType:n}=e,o=n==="amino"?"protein":"nucleotide";function i(s){return{label:s.label,type:"radio",checked:!r&&t===s.name,onClick:()=>{e.setColorSchemeName(s.name),e.cellFill==="domain"&&e.setCellFill("residue")}}}let a=s=>s.featured&&(s.alphabet==="any"||s.alphabet===o)||!r&&s.name===t;return[...r?[{label:"Custom",type:"radio",checked:!0,onClick:()=>{}}]:[],...Us.filter(a).map(i),{label:"More schemes",type:"subMenu",subMenu:Us.filter(s=>!a(s)).map(i)}]}var Ys=y(R(),1),Zw=(0,Ys.lazy)(()=>import("./FeatureDialog-YKG2V5HC.js")),Qw=(0,Ys.lazy)(()=>import("./AnnotationFileDialog-TYDIYGLI.js"));function Bp(e){return{label:"Open annotation file\u2026",onClick:()=>{e.queueDialog(t=>[Qw,{handleClose:t,model:e}])}}}function Np(e){let{showDomains:t,actuallyShowDomains:r,subFeatureRows:n}=e;return[{label:"Show annotations",type:"checkbox",checked:r,onClick:()=>{e.setShowDomains(!t)}},{label:"Sub-row layout",type:"checkbox",disabled:!r,checked:r&&n,onClick:()=>{e.setSubFeatureRows(!n)}},...e1(e)]}var Jw=12;function e1(e){let t=[...e.annotationTypes.values()];return t.length<=Jw?[{type:"subHeader",label:"Types"},...t.map(({accession:r,name:n})=>({label:n||r,type:"checkbox",checked:!e.featureOff(r),onClick:()=>{e.setFilter(r,e.featureOff(r))}}))]:[{label:"Filter annotations\u2026",onClick:()=>{e.queueDialog(r=>[Zw,{onClose:r,model:e}])}}]}var t1=(0,Tr.lazy)(()=>import("./AboutDialog-ZQPAUPJC.js")),r1=(0,Tr.lazy)(()=>import("./ExportSVGDialog-EP2JSB3X.js")),n1=(0,Tr.lazy)(()=>import("./GapThresholdDialog-Z2MUN66L.js")),o1=(0,Tr.lazy)(()=>import("./GoToDialog-7PKEFGVS.js")),i1=(0,Tr.lazy)(()=>import("./HelpDialog-EXKEV7B7.js")),a1=(0,Tr.lazy)(()=>import("./MetadataDialog-X5MJ7YCK.js")),s1="https://gmod.org/JBrowseMSA/tutorials/";function We(e,t,r){return{label:e,type:"radio",checked:t,onClick:r}}function wr(e,t,r){return{label:e,type:"checkbox",checked:t,onClick:()=>{r(!t)}}}function Se(e,t,r=!1){return{label:e,onClick:t,disabled:r}}function vr(e,t,r){return{label:e,type:"subMenu",subMenu:t,display:r}}function Sr(e,t){return e?t:[]}function $p(e){return[...Sr(!!e.importForm,[Se("Open alignment\u2026",()=>{e.reset()})]),Bp(e),Se("Export as SVG\u2026",()=>{e.queueDialog(t=>[r1,{onClose:t,model:e}])}),...Sr(!e.tree.noTree,[Se("Export tree as Newick",()=>{e.exportNewick()})]),Se("Alignment info\u2026",()=>{e.queueDialog(t=>[a1,{model:e,onClose:t}])})]}function l1(e){return[Se("Zoom in",()=>{e.zoomIn()}),Se("Zoom out",()=>{e.zoomOut()}),Se("Fit to window",()=>{e.fit()}),Se("Fit width",()=>{e.fitHorizontally()}),Se("Fit height",()=>{e.fitVertically()}),Se("Reset zoom",()=>{e.resetZoom()}),wr(Gs,e.scrollZoom,t=>{e.setScrollZoom(t)})]}var _p=[100,90,50];function Hp(e){let{hideGaps:t,allowedGappyness:r}=e,n=t&&!_p.includes(r);return[vr("Gappy columns",[We("Show all columns",!t,()=>{e.setHideGaps(!1)}),..._p.map(o=>We(o===100?"Hide columns of only gaps":`Hide \u2265${o}% gaps`,t&&r===o,()=>{e.setHideGaps(!0),e.setAllowedGappyness(o)})),{...We(n?`Hide \u2265${r}% gaps\u2026`:"Custom threshold\u2026",n,()=>{e.setHideGaps(!0),e.queueDialog(o=>[n1,{model:e,onClose:o}])}),keepMenuOpen:!1}],"select")]}var c1={branchLength:"By branch length",input:"Input order",ladderize:"Ladderize, small clades first",ladderizeReverse:"Ladderize, large clades first"};function u1(e){let[t,...r]=e;return r.length===0?`Outgroup ${t}`:`Outgroup ${t} \u2026 ${r.at(-1)}`}function zp(e){let{drawTree:t,showBranchLen:r,labelsAlignRight:n,drawNodeLabels:o,drawLabels:i,treeAreaWidth:a,showTreeOverview:s,treeOrder:l,treeRoot:c,rotated:u}=e;return[vr("Layout",[We("Phylogram",t&&r,()=>{e.setDrawTree(!0),e.setShowBranchLen(!0)}),We("Cladogram",t&&!r,()=>{e.setDrawTree(!0),e.setShowBranchLen(!1)}),We("Labels only",!t,()=>{e.setDrawTree(!1)})],"segmented"),wr("Tree overview",s,f=>{e.setShowTreeOverview(f)}),vr("Order",[...Ao.map(f=>We(c1[f],l===f,()=>{e.setTreeOrder(f)})),...Sr(u.length>0,[Se("Undo rotations",()=>{e.clearRotated()})])],"select"),vr("Root",[We("Input root",c===void 0,()=>{e.setTreeRoot(void 0)}),We("Midpoint",c==="midpoint",()=>{e.setTreeRoot("midpoint")}),...Sr(typeof c=="object",[{...We(typeof c=="object"?u1(c.outgroup):"",!0,()=>{}),disabled:!0}])],"select"),vr("Labels",[wr("Tip labels",i,f=>{e.setDrawLabels(f)}),wr("Internal node labels",o,f=>{e.setDrawNodeLabels(f)}),wr("Align right",n,f=>{e.setLabelsAlignRight(f)})]),...Sr(a!==void 0,[Se("Reset tree width",()=>{e.setTreeAreaWidth(void 0)})])]}function Wp(e){return[...Sr(Tu(e),[Se("Find row or column\u2026",()=>{e.queueDialog(t=>[o1,{model:e,onClose:t}])})]),vr("Zoom",l1(e))]}function Vp(e){return[wr("Show track values on hover",e.showColumnStats,t=>{e.setShowColumnStats(t)})]}function jp(e){return[wr("Show letters",e.drawMsaLetters,t=>{e.setDrawMsaLetters(t)})]}function Gp(e){let{cellFill:t,filteredAnnotations:r}=e;return[vr("Fill cells with",[We("Residues",t==="residue",()=>{e.setCellFill("residue")}),...Sr(r.length>0,[We("Domains",t==="domain",()=>{e.setShowDomains(!0),e.setCellFill("domain")})]),{...We("Nothing",t==="none",()=>{e.setCellFill("none")}),helpText:"Color the letters instead"}],"segmented"),{type:"subHeader",label:t==="domain"?"Residue scheme: picking one takes the cells back from the domains":"Residue scheme"},...Dp(e)]}function f1(e){let t=e.rowMap.size,r=t>ar;return Se(r?`Build neighbor joining tree (over ${ar} rows, use FastTree)`:e.noTree?"Build neighbor joining tree":"Replace with neighbor joining tree",()=>{try{e.calculateNeighborJoiningTreeFromMSA()}catch(n){console.error("Failed to calculate NJ tree:",n),e.addWarning(n instanceof Error?n.message:String(n))}},r||t<2)}function Up(e){return[f1(e)]}function Yp(e){return[Se("Mouse & keyboard\u2026",()=>{e.queueDialog(t=>[i1,{model:e,onClose:t}])}),Se("Tutorials",()=>{window.open(s1,"_blank","noopener,noreferrer")}),Se("About & credits\u2026",()=>{e.queueDialog(t=>[t1,{onClose:t}])})]}var d1={borderRadius:1,typography:"button",color:"text.primary",px:1,py:.5},p1=[["File",$p,Cr.default.createElement(Pp,{key:"file"})],["View",Wp,Cr.default.createElement(Fp,{key:"view"})],["Tools",Up,Cr.default.createElement(kp,{key:"tools"})],["Help",Yp,Cr.default.createElement(dc,{key:"help"})]],m1=(0,qp.observer)(function({model:e}){let{embeddedMode:t}=e;return p1.map(([r,n,o])=>{let i=Cr.default.createElement(Kp.default,{key:r,"data-testid":`${r.toLowerCase()}_menu`,"aria-label":r,menuItems:n(e),sx:d1},t?o:r);return t?Cr.default.createElement(Xp.Tooltip,{key:r,title:r},i):i})}),Zp=m1;var Ks=y(R(),1),Yi=y(J(),1),Qp=y(_(),1),h1=(0,Qp.observer)(function({model:e}){let{currentAlignment:t,alignmentNames:r}=e,n=new Map;return r.length>0?Ks.default.createElement(Yi.TextField,{select:!0,variant:"outlined",value:t,size:"small",onChange:o=>{e.setCurrentAlignment(+o.target.value)}},r.map((o,i)=>{let a=n.get(o)??0;return n.set(o,a+1),Ks.default.createElement(Yi.MenuItem,{key:a===0?o:`${o}\0${a}`,value:i},o)})):null}),Jp=h1;var _e=y(R(),1);var em=y(te(),1),tm=(0,W.createSvgIcon)((0,em.jsx)("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Clear");var rm=y(te(),1),nm=(0,W.createSvgIcon)((0,rm.jsx)("path",{d:"M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2m0 16H8V7h11z"}),"ContentCopy");var Xs=y(te(),1),Ki=(0,W.createSvgIcon)([(0,Xs.jsx)("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14"},"0"),(0,Xs.jsx)("path",{d:"M12 10h-2v2H9v-2H7V9h2V7h1v2h2z"},"1")],"ZoomIn");var Xe=y(J(),1),im=y(_(),1);function om(e,t){return`${e.toLocaleString("en-US")} ${t}${e===1?"":"s"}`}var g1=(0,im.observer)(function({model:e}){let[t,r]=(0,_e.useState)(),{selectionSize:n,selectionFileSpan:o}=e;if(!n||!o)return null;let i=`${om(n.columns,"column")} \xD7 ${om(n.rows,"row")}`,a=[{text:"Copy as FASTA",Icon:nm,act:()=>{Su(e.selectionFasta)}},{text:"Zoom to selection",Icon:Ki,act:()=>{e.zoomToSelection()}},{text:"Clear selection",Icon:tm,act:()=>{e.clearSelection()}}];return _e.default.createElement(_e.default.Fragment,null,_e.default.createElement(Xe.Tooltip,{title:`Columns ${o.start}-${o.end} selected. Shift-drag the alignment to select, Escape to clear`},_e.default.createElement(Xe.Button,{size:"small","aria-label":`Selection: ${i}`,endIcon:_e.default.createElement(Ft,null),onClick:s=>{r(s.currentTarget)},style:{margin:"auto 0 auto 8px",flexShrink:0,maxWidth:"100%",minWidth:0,textTransform:"none",whiteSpace:"nowrap"}},_e.default.createElement("span",{style:{overflow:"hidden",textOverflow:"ellipsis"}},i))),t?_e.default.createElement(Xe.Menu,{anchorEl:t,open:!0,transitionDuration:0,onClose:()=>{r(void 0)}},a.map(({text:s,Icon:l,act:c})=>_e.default.createElement(Xe.MenuItem,{key:s,dense:!0,onClick:()=>{c(),r(void 0)}},_e.default.createElement(Xe.ListItemIcon,null,_e.default.createElement(l,{fontSize:"small"})),_e.default.createElement(Xe.ListItemText,null,s)))):null)}),am=g1;var Xi=y(R(),1),cm=y(Cn(),1);var sm=y(te(),1),lm=(0,W.createSvgIcon)((0,sm.jsx)("path",{d:"M17 7h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1 0 1.43-.98 2.63-2.31 2.98l1.46 1.46C20.88 15.61 22 13.95 22 12c0-2.76-2.24-5-5-5m-1 4h-2.19l2 2H16zM2 4.27l3.11 3.11C3.29 8.12 2 9.91 2 12c0 2.76 2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1 0-1.59 1.21-2.9 2.76-3.07L8.73 11H8v2h2.73L13 15.27V17h1.73l4.01 4L20 19.74 3.27 3z"}),"LinkOff");var qi=y(J(),1),um=y(_(),1),y1=(0,cm.makeStyles)()(e=>({warning:{display:"flex",alignItems:"center",gap:4,margin:"auto",marginLeft:10,whiteSpace:"nowrap",color:e.palette.warning.main,cursor:"help"}}));function b1(e){return e<1e6?`${Math.round(e/1e3)} kB`:`${(e/1e6).toFixed(1)} MB`}var x1=(0,um.observer)(function({model:e}){let{unshareableData:t}=e,{classes:r}=y1();if(t.length===0)return null;let n=t.map(({what:o,bytes:i})=>`${o} (${b1(i)})`).join(" and the ");return Xi.default.createElement(qi.Tooltip,{title:`The ${n} came from this computer and is too large to travel in a URL, so a link to this page opens without it. Serve the file over HTTP and open it by URL to share the view.`},Xi.default.createElement(qi.Typography,{component:"div",className:r.warning},Xi.default.createElement(lm,{fontSize:"small"}),"Not in the link"))}),fm=x1;var Pe=y(R(),1);var dm=y(te(),1),pm=(0,W.createSvgIcon)((0,dm.jsx)("path",{d:"M17 4h3c1.1 0 2 .9 2 2v2h-2V6h-3zM4 8V6h3V4H4c-1.1 0-2 .9-2 2v2zm16 8v2h-3v2h3c1.1 0 2-.9 2-2v-2zM7 18H4v-2H2v2c0 1.1.9 2 2 2h3zM18 8H6v8h12z"}),"FitScreen");var mm=y(te(),1),hm=(0,W.createSvgIcon)((0,mm.jsx)("path",{d:"M12 5V2L8 6l4 4V7c3.31 0 6 2.69 6 6 0 2.97-2.17 5.43-5 5.91v2.02c3.95-.49 7-3.85 7-7.93 0-4.42-3.58-8-8-8m-6 8c0-1.65.67-3.15 1.76-4.24L6.34 7.34C4.9 8.79 4 10.79 4 13c0 4.08 3.05 7.44 7 7.93v-2.02c-2.83-.48-5-2.94-5-5.91"}),"RestartAlt");var gm=y(te(),1),ym=(0,W.createSvgIcon)((0,gm.jsx)("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14M7 9h5v1H7z"}),"ZoomOut");var ht=y(J(),1),bm=y(_(),1),w1=(0,bm.observer)(function({model:t}){return Pe.default.createElement(Pe.default.Fragment,null,Pe.default.createElement(ht.Tooltip,{title:"Zoom in"},Pe.default.createElement(ht.IconButton,{"aria-label":"Zoom in",onClick:()=>{t.zoomIn()}},Pe.default.createElement(Ki,null))),Pe.default.createElement(ht.Tooltip,{title:"Zoom out"},Pe.default.createElement(ht.IconButton,{"aria-label":"Zoom out",onClick:()=>{t.zoomOut()}},Pe.default.createElement(ym,null))),Pe.default.createElement(ht.Tooltip,{title:"Fit the whole alignment in the window"},Pe.default.createElement(ht.IconButton,{"aria-label":"Fit to window",onClick:()=>{t.fit()}},Pe.default.createElement(pm,null))),Pe.default.createElement(ht.Tooltip,{title:"Reset zoom to the default cell size (0)"},Pe.default.createElement(ht.IconButton,{"aria-label":"Reset zoom",onClick:()=>{t.resetZoom()}},Pe.default.createElement(hm,null))))}),xm=w1;var v1=(0,vm.observer)(function({model:e,toolbarStart:t,toolbarEnd:r}){let[n,{height:o}]=(0,wm.default)();return(0,ae.useEffect)(()=>{e.setHeaderHeight(o??0)},[e,o]),(0,ae.useEffect)(()=>()=>{e.setHeaderHeight(0)},[e]),ae.default.createElement(js,{ref:n,position:"static",color:"default",elevation:0,sx:{borderBottom:1,borderColor:"divider"}},ae.default.createElement(Gt.Toolbar,{variant:"dense",disableGutters:!0,sx:{minHeight:40,flexWrap:"wrap",px:.5}},t,ae.default.createElement(Zp,{model:e}),e.embeddedMode?ae.default.createElement(Gt.Tooltip,{title:"Settings"},ae.default.createElement(Gt.IconButton,{"data-testid":"settings_button","aria-label":"Settings",color:e.settingsOpen?"primary":"inherit",onClick:()=>{e.setSettingsOpen(!e.settingsOpen)}},ae.default.createElement(Ka,null))):ae.default.createElement(Gt.Button,{"data-testid":"settings_button",size:"small",startIcon:ae.default.createElement(Ka,null),color:e.settingsOpen?"primary":"inherit",variant:e.settingsOpen?"outlined":"text",onClick:()=>{e.setSettingsOpen(!e.settingsOpen)},sx:{mx:.5,flexShrink:0}},"Settings"),ae.default.createElement(xm,{model:e}),ae.default.createElement(Ip,{model:e}),ae.default.createElement(wp,{model:e}),ae.default.createElement("div",{style:{paddingLeft:20,margin:"auto"}},ae.default.createElement(Jp,{model:e})),ae.default.createElement("div",{style:{flex:"1 1 0",minWidth:0,display:"flex"}},ae.default.createElement(am,{model:e}),ae.default.createElement(bp,{model:e})),ae.default.createElement(Cp,{model:e}),ae.default.createElement(fm,{model:e}),ae.default.createElement(to,{model:e,variant:"header"}),r))}),Sm=v1;var Ut=y(R(),1),Tm=y(_(),1);var S1=(0,Tm.observer)(function({model:e}){let{minimapHeight:t,msaCanvasWidth:r,highResScaleFactor:n}=e,o=De(),{unit:i,s:a,w:s,polygonHeight:l,polygonPoints:c}=bc(e),u=Math.round(r*n),f=Math.round(12*n),m=Te({draw:h=>{h.resetTransform(),h.clearRect(0,0,u,f);let g=yc({model:e,theme:o,height:12});g&&(h.imageSmoothingEnabled=!0,h.drawImage(g,0,0,g.width,g.height,0,0,u,f));for(let b of xc(e,u,f))h.fillStyle=b.fill,h.fillRect(b.x,b.y,b.w,b.h)},width:u,height:f,deps:[e,o]}),p=(0,Ut.useCallback)((h,g)=>{e.setScrollX(g-h/i)},[e,i]);return Ut.default.createElement("div",{style:{position:"relative",height:t,width:r,flexShrink:0}},Ut.default.createElement("canvas",{ref:m,width:u,height:f,onPointerDown:h=>{if(h.button===0&&i>0){let g=h.clientX-h.currentTarget.getBoundingClientRect().left;e.setScrollX(-g/i+r/2)}},style:{display:"block",width:r,height:12,boxSizing:"border-box",border:`1px solid ${o.palette.text.secondary}`}}),Ut.default.createElement(kt,{axis:"x",variant:"thumb",getStart:()=>e.scrollX,onDrag:p,style:{top:0,left:Math.max(0,a),height:12,width:s}}),Ut.default.createElement("svg",{height:l,width:r},Ut.default.createElement("polygon",{fill:pc,points:c})))}),Cm=S1;var oo=y(R(),1),Ym=y(_(),1);var Yt=y(R(),1);var Em=y(te(),1),Mm=(0,W.createSvgIcon)((0,Em.jsx)("path",{d:"m12 8-6 6 1.41 1.41L12 10.83l4.59 4.58L18 14z"}),"ExpandLess");var ln=y(J(),1),Am=y(_(),1);var T1=(0,Am.observer)(function({model:e}){let{legends:t,showDomainLegend:r}=e,n=wc(t),o=r?Mm:ac;return n.length>0?Yt.default.createElement(ln.Paper,{elevation:3,style:{position:"absolute",top:4,right:4,zIndex:Jc,maxWidth:220,maxHeight:"60%",display:"flex",flexDirection:"column",opacity:.95,pointerEvents:"none"}},Yt.default.createElement(ln.IconButton,{size:"small",title:r?"Collapse key":"Expand key",style:{padding:1,pointerEvents:"auto",...r&&{position:"absolute",top:0,right:0}},onClick:()=>{e.setShowDomainLegend(!r)}},Yt.default.createElement(o,{style:{fontSize:14}})),r?Yt.default.createElement("div",{style:{overflow:"auto",padding:"2px 6px 4px"}},n.map((i,a)=>Yt.default.createElement("div",{key:i.key,style:{display:"flex",alignItems:"center",gap:4,marginRight:a===0?18:0}},i.color?Yt.default.createElement("div",{style:{width:9,height:9,flexShrink:0,background:i.color}}):null,Yt.default.createElement(ln.Typography,{variant:"caption",noWrap:!0,title:i.hint&&i.hint!==i.label?`${i.label} (${i.hint})`:i.label,style:{fontSize:10,lineHeight:1.4,fontWeight:i.color?void 0:"bold",pointerEvents:"auto"}},i.label)))):null):null}),km=T1;var Kt=y(R(),1),Hm=y(_(),1);function no({mapSize:e,blockSize:t,viewportPos:r,viewportSize:n}){let o=Math.max(0,Math.min(r,e-n)),i=Math.min(o+n,e),a=Math.floor(o/t),s=Math.ceil(i/t)-1,l=[];for(let c=a;c<=s;c++)l.push(c*t);return l}var Rm=2,C1=.2;function Qi(e,t,r,n){let o=t==="x"?e.msaAreaWidth:e.msaAreaHeight,i=-(t==="x"?e.scrollX:e.scrollY),a=t==="x"?e.totalWidth:e.totalHeight,s=o*n;return no({viewportSize:(o+2*s)/r,viewportPos:(i-s)/r,mapSize:a/r,blockSize:e.blockSize})}var Pm=(e,t)=>e.length===0||t.length>0&&e[0]>=t[0]&&e.at(-1)<=t.at(-1);function qs(e,t){let r=t?C1:0;return{colWidth:e.colWidth,rowHeight:e.rowHeight,blocksX:Qi(e,"x",1,r),blocksY:Qi(e,"y",1,r)}}function Zs(e,t){return{sx:e.colWidth/t.colWidth,sy:e.rowHeight/t.rowHeight}}function Om(e,t){let{sx:r,sy:n}=Zs(e,t);return r<=Rm&&n<=Rm&&Pm(Qi(e,"x",r,0),t.blocksX)&&Pm(Qi(e,"y",n,0),t.blocksY)}var Ji=y(R(),1),ea=y(J(),1);function Qs(){return Ji.default.createElement("div",{style:{position:"absolute",left:"50%",top:"50%"}},Ji.default.createElement(ea.CircularProgress,null),Ji.default.createElement(ea.Typography,null,"Loading..."))}var $e=y(R(),1),Im=y(Mn(),1),Dm=y(_(),1);var Fm=y(R(),1);function Lm({model:e,offsetX:t,offsetY:r}){let{anchor:n,hoverAt:o,clearAnchor:i}=It(),a=(0,Fm.useRef)(void 0);function s(h){let{left:g,top:b}=h.getBoundingClientRect(),{scrollX:v,scrollY:x}=e;return({clientX:T,clientY:C})=>({col:Math.floor((T-g+t-(e.scrollX-v))/e.colWidth),row:Math.floor((C-b+r-(e.scrollY-x))/e.rowHeight)})}function l(h,g){return s(g)(h)}function c({col:h,row:g}){return h>=0&&h<e.numColumns&&g>=0&&g<e.numRows}function u(h,g){let b=l(h,g),v=c(b);e.setMousePos(v?b.col:void 0,v?b.row:void 0);let x=!!e.hoveredInsertion||e.mouseOverDomains.length>0;o(h,x||void 0)}function f(h,g){a.current={x:h.clientX,y:h.clientY},h.shiftKey&&h.button===0&&Wo(e,h,s(g))}function m(h,g){let b=a.current;if(a.current=void 0,b&&Math.hypot(h.clientX-b.x,h.clientY-b.y)>Ga)return;let v=l(h,g),{col:x,row:T}=v,{mouseClickCol:C,mouseClickRow:M}=e,S=x===C&&T===M,A=c(v)&&!S;e.setMouseClickPos(A?x:void 0,A?T:void 0)}function p(){e.setMousePos(),i()}return{anchor:n,onMouseMove:u,onMouseDown:f,onClick:m,onMouseLeave:p}}var E1=(0,Dm.observer)(function({model:e,offsetX:t,offsetY:r}){let{blockSize:n,highResScaleFactor:o}=e,i=De(),{anchor:a,onMouseMove:s,onMouseDown:l,onClick:c,onMouseLeave:u}=Lm({model:e,offsetX:t,offsetY:r}),f=n*o,m=(0,$e.useRef)(void 0),p=Te({draw:b=>{let v=e.zoomSnapshot;if(v&&(v===m.current||v.colWidth!==e.colWidth||v.rowHeight!==e.rowHeight))return;m.current=v,b.resetTransform(),b.clearRect(0,0,f,f);let x=hc(e);x&&gc({ctx:b,model:e,theme:i,offsetX:t,offsetY:r}),ou({ctx:b,theme:i,offsetX:t,offsetY:r,model:e,rasterTiles:x,domains:!0})},width:f,height:f,deps:[e,t,r,i]}),{hoveredInsertion:h,mouseOverDomains:g}=e;return $e.default.createElement($e.default.Fragment,null,$e.default.createElement("canvas",{ref:p,onMouseMove:b=>{p.current&&s(b,p.current)},onMouseDown:b=>{p.current&&l(b,p.current)},onClick:b=>{p.current&&c(b,p.current)},onMouseLeave:()=>{u()},width:f,height:f,style:{position:"absolute",top:r,left:t,width:n,height:n}}),a?$e.default.createElement(Im.default,{clientPoint:a.clientPoint},h?$e.default.createElement($e.default.Fragment,null,"Insertion (",h.letters.length,e.sequenceType==="amino"?"aa":"bp","):"," ",h.letters.length>20?`${h.letters.slice(0,20)}...`:h.letters):g.map(b=>$e.default.createElement("div",{key:`${b.accession}-${b.start}-${b.end}`},$e.default.createElement("b",null,b.name)," (",b.accession,") ",b.start,"-",b.end,b.description?$e.default.createElement($e.default.Fragment,null,$e.default.createElement("br",null),b.description):null))):null)}),Bm=E1;var Tt=y(R(),1),ta=y(J(),1),Nm=new WeakSet,M1=typeof navigator<"u"&&navigator.platform.startsWith("Mac")?"\u2318":"Ctrl";function _m(e){let[t,r]=(0,Tt.useState)(!1),n=(0,Tt.useRef)(void 0),o=(0,Tt.useCallback)(i=>{!e.scrollZoom&&Math.abs(i.deltaY)>Math.abs(i.deltaX)&&!Nm.has(e)&&(Nm.add(e),r(!0),clearTimeout(n.current),n.current=setTimeout(()=>{r(!1)},2500))},[e]);return{visible:t,onWheelScroll:o}}function $m(){return Tt.default.createElement(ta.Paper,{elevation:3,style:{position:"absolute",top:12,left:"50%",transform:"translateX(-50%)",padding:"4px 12px",pointerEvents:"none",zIndex:2}},Tt.default.createElement(ta.Typography,{variant:"body2"},M1," + scroll to zoom, or check Zoom on scroll"))}var A1=(0,Hm.observer)(function({model:e}){let{MSA:t,msaFilehandle:r,height:n,msaCanvasWidth:o,blocks2d:i,scrollX:a,scrollY:s,zoomSnapshot:l}=e,c=l?l.blocksY.flatMap(g=>l.blocksX.map(b=>[b,g])):i,u=l?Zs(e,l):void 0,f=(0,Kt.useRef)(null),m=_m(e),{onPointerDown:p,touchAction:h}=Lt({ref:f,model:e,axes:"xy",zoom:!0,onWheelScroll:m.onWheelScroll});return Kt.default.createElement("div",{ref:f,"data-testid":"msa_canvas",tabIndex:0,"aria-label":ku,onKeyDown:g=>{$o(e,g)&&g.preventDefault()},onMouseDown:g=>{g.shiftKey&&(g.preventDefault(),f.current?.focus({preventScroll:!0}))},onPointerDown:g=>{g.shiftKey||p(g)},style:{position:"relative",touchAction:h,height:n,width:o,overflow:"hidden"}},!t&&!r?null:t?Kt.default.createElement("div",{style:{position:"absolute",top:0,left:0,transform:`translate(${a}px, ${s}px)${u?` scale(${u.sx}, ${u.sy})`:""}`,transformOrigin:"0 0",willChange:"transform"}},c.map(([g,b])=>Kt.default.createElement(Bm,{key:`${g}_${b}`,model:e,offsetX:g,offsetY:b}))):Kt.default.createElement(Qs,null),m.visible?Kt.default.createElement($m,null):null)}),zm=A1;var Vm=y(R(),1),jm=y(je(),1),Gm=y(_(),1);function Wm({ctx:e,model:t,theme:r}){let{mouseCol:n,colWidth:o,msaCanvasWidth:i,height:a,rowHeight:s,scrollX:l,scrollY:c,mouseRow:u,mouseClickRow:f,mouseClickCol:m,highResScaleFactor:p,hoveredRowIndices:h}=t;e.resetTransform(),e.clearRect(0,0,i*p,a*p),e.scale(p,p);let g=v=>{e.fillRect(0,v*s+c,i,s)},b=v=>{e.fillRect(v*o+l,0,o,a)};Ec({ctx:e,model:t,theme:r,offsetX:-l,offsetY:-c,width:i,height:a}),Cc({ctx:e,model:t,offsetX:-l,offsetY:-c,height:a}),e.fillStyle=Sc;for(let v of h)g(v);e.fillStyle=wo,n!==void 0&&b(n),u!==void 0&&g(u),e.fillStyle=vo,m!==void 0&&b(m),f!==void 0&&g(f)}var k1=(0,Gm.observer)(function({model:e}){let{height:t,msaCanvasWidth:r,highResScaleFactor:n}=e,o=De(),i=r*n,a=t*n,s=Te({draw:l=>{(0,jm.isAlive)(e)&&Wm({ctx:l,model:e,theme:o})},width:i,height:a,deps:[e,o]});return Vm.default.createElement("canvas",{ref:s,id:"mouseover",width:i,height:a,style:{position:"absolute",top:0,left:0,width:r,height:t,zIndex:Qc,pointerEvents:"none"}})}),Um=k1;var R1=(0,Ym.observer)(function({model:e}){return oo.default.createElement("div",{style:{position:"relative"}},oo.default.createElement(zm,{model:e}),oo.default.createElement(Um,{model:e}),oo.default.createElement(km,{model:e}))}),Km=R1;var Js=y(R(),1),Xm=y(_(),1);var P1=(0,Xm.observer)(function({model:e}){let{resolvedRowPanels:t,rowPanelsHeaderHeight:r,fontSize:n}=e;return t.length>0?Js.default.createElement("div",{style:{display:"flex",flexShrink:0,height:r,alignItems:"flex-end"}},t.map(o=>{let i=iu(o.width);return Js.default.createElement("div",{key:o.id,title:o.header,style:{width:o.width,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",...i?{fontSize:n,textAlign:"center"}:{height:r,fontSize:Math.min(n,o.width),writingMode:"vertical-rl",transform:"rotate(180deg)"}}},o.header)})):null}),qm=P1;var Xt=y(R(),1),el=y(_(),1);var Er=y(R(),1),Zm=y(Mn(),1),Qm=y(_(),1);function Ct(e,t){let n=e[t]??e.attributes?.[t];return typeof n=="string"?n:void 0}function ra(e){return Ct(e,"Name")??Ct(e,"name")}function O1({model:e,panel:t,name:r,x:n}){if(t.kind==="strip")return[`${t.header}: ${e.rowDataOf(r)?.[t.field]??"(none)"}`];let o=t.spans.get(r)?.findLast(l=>n>=l.xStart&&n<=l.xEnd);if(!o)return[];let{annotation:i}=o,a=i.strand===void 0?"":i.strand<0?" (-)":" (+)",s=t.field?Ct(i,t.field):void 0;return[ra(i)??i.accession,`${i.start}-${i.end}${a}`,...s===void 0?[]:[`${t.field}: ${s}`]]}var F1=(0,Qm.observer)(function({model:e,panel:t,offsetY:r}){let{anchor:n,hoverAt:o,clearAnchor:i}=It(),a=De(),{blockSize:s,highResScaleFactor:l,rowHeight:c}=e,u=t.width,f=s,m=u*l,p=f*l,h=Te({draw:g=>{g.resetTransform(),g.clearRect(0,0,m,p),au({ctx:g,model:e,theme:a,panel:t,x:0,offsetY:r})},width:m,height:p,deps:[e,a,t,r]});return Er.default.createElement(Er.default.Fragment,null,Er.default.createElement("canvas",{ref:h,width:m,height:p,style:{position:"absolute",top:r,left:0,width:u,height:f},onMouseMove:g=>{let{left:b,top:v}=g.currentTarget.getBoundingClientRect(),x=Math.floor((g.clientY-v+r)/c),T=e.leaves[x]?.data.name,C=T===void 0?[]:O1({model:e,panel:t,name:T,x:g.clientX-b});o(g,T===void 0||C.length===0?void 0:{name:T,lines:C}),e.setMousePos(void 0,T===void 0?void 0:x)},onMouseLeave:()=>{i(),e.setMousePos(void 0,void 0)}}),n?Er.default.createElement(Zm.default,{clientPoint:n.clientPoint},Er.default.createElement("div",null,n.value.name),n.value.lines.map(g=>Er.default.createElement("div",{key:g},g))):null)}),Jm=F1;var L1=(0,el.observer)(function({model:e,panel:t}){let r=(0,Xt.useRef)(null),{height:n,blocksY:o,scrollY:i}=e,{onPointerDown:a,touchAction:s}=Lt({ref:r,model:e,axes:"y"});return Xt.default.createElement("div",{ref:r,"data-testid":`rowpanel_${t.id}`,onPointerDown:a,style:{touchAction:s,height:n,width:t.width,flexShrink:0,overflow:"hidden",position:"relative"}},Xt.default.createElement("div",{style:{position:"absolute",top:0,left:0,transform:`translateY(${i}px)`,willChange:"transform"}},o.map(l=>Xt.default.createElement(Jm,{key:l,model:e,panel:t,offsetY:l}))))}),I1=(0,el.observer)(function({model:e}){let{resolvedRowPanels:t}=e;return t.length>0?Xt.default.createElement("div",{style:{display:"flex",flexShrink:0}},t.map(r=>Xt.default.createElement(L1,{key:r.id,model:e,panel:r}))):null}),eh=I1;var ee=y(R(),1);var th=y(te(),1),na=(0,W.createSvgIcon)((0,th.jsx)("path",{d:"m10 17 5-5-5-5z"}),"ArrowRight");var gt=y(J(),1);var Zt=y(R(),1);function io(e){try{return e.matches(":focus-visible")}catch{}return!1}var cn=y(R(),1);function oa(...e){let t=cn.useRef(void 0),r=cn.useCallback(n=>{let o=e.map(i=>{if(i==null)return null;if(typeof i=="function"){let a=i,s=a(n);return typeof s=="function"?s:()=>{a(null)}}return i.current=n,()=>{i.current=null}});return()=>{o.forEach(i=>i?.())}},e);return cn.useMemo(()=>e.every(n=>n==null)?null:n=>{t.current&&(t.current(),t.current=void 0),n!=null&&(t.current=r(n))},e)}var tl=oa;var rl=y(R(),1);function D1(e){let t=rl.useRef(e);return Kn(()=>{t.current=e}),rl.useRef((...r)=>(0,t.current)(...r)).current}var nl=D1;var rt=nl;var qt=y(R(),1);var rh=y(R(),1);function ol(e){let{focusableWhenDisabled:t,disabled:r,composite:n=!1,tabIndex:o=0,isNativeButton:i}=e,a=n&&t!==!1,s=n&&t===!1;return rh.useMemo(()=>{let c={onKeyDown(u){r&&t&&u.key!=="Tab"&&u.preventDefault()}};return n||(c.tabIndex=o,!i&&r&&(c.tabIndex=t?o:-1)),(i&&(t||a)||!i&&r)&&(c["aria-disabled"]=r),i&&(!t||s)&&(c.disabled=r),c},[n,r,t,a,s,i,o])}var B1={};function il(e){let{nativeButton:t,nativeButtonProp:r,internalNativeButton:n=t,allowInferredHostMismatch:o=!1,disabled:i,type:a,hasFormAction:s=!1,tabIndex:l=0,focusableWhenDisabled:c,stopEventPropagation:u=!1,onBeforeKeyDown:f,onBeforeKeyUp:m}=e,p=qt.useRef(null),h=c===!0,g=ol({focusableWhenDisabled:h,disabled:i,isNativeButton:t,tabIndex:l}),b=qt.useCallback(()=>{let T=p.current;return T==null?t:T.tagName==="BUTTON"?!0:!!(T.tagName==="A"&&T.href)},[t]),v=qt.useMemo(()=>{let T=h?{}:{tabIndex:i?-1:l};return t?(T.type=a===void 0&&!s?"button":a,h||(T.disabled=i)):(T.role="button",!h&&i&&(T["aria-disabled"]=i)),h?{...T,...g}:T},[i,h,g,s,t,l,a]);return{getButtonProps:qt.useCallback((T=B1)=>{let{onClick:C,onKeyDown:M,onKeyUp:S,...A}=T;return{...v,...A,onClick:O=>{if(u&&O.stopPropagation(),i){O.preventDefault();return}C?.(O)},onKeyDown:O=>{if(h&&g.onKeyDown(O),!i&&(f?.(O),M?.(O),!(O.target!==O.currentTarget||b()))){if(O.key===" "){O.preventDefault();return}O.key==="Enter"&&(O.preventDefault(),O.currentTarget.click())}},onKeyUp:O=>{i||(m?.(O),S?.(O),O.target===O.currentTarget&&!b()&&O.key===" "&&!O.defaultPrevented&&O.currentTarget.click())}}},[v,i,h,g,b,f,m,u]),rootRef:p}}var ia=y(R(),1);var oh=y(R(),1),nh={};function un(e,t){let r=oh.useRef(nh);return r.current===nh&&(r.current=e(t)),r}var al=class e{ref={current:null};shouldMount=!1;mounted=null;didMount=!1;setShouldMount=null;static create(){return new e}static use(){let t=un(e.create).current,[r,n]=ia.useState(!1);return t.shouldMount=r,t.setShouldMount=n,ia.useEffect(t.mountEffect,[r]),t}mount(){return this.mounted||(this.mounted=N1(),this.shouldMount=!0,this.setShouldMount(this.shouldMount)),this.mounted}mountEffect=()=>{this.shouldMount&&!this.didMount&&(this.ref.current!==null&&(this.didMount=!0),this.mounted.resolve())};start(...t){this.mount().then(()=>this.ref.current?.start(...t))}stop(...t){this.mount().then(()=>this.ref.current?.stop(...t))}pulsate(...t){this.mount().then(()=>this.ref.current?.pulsate(...t))}};function aa(){return al.use()}function N1(){let e,t,r=new Promise((n,o)=>{e=n,t=o});return r.resolve=e,r.reject=t,r}var Oe=y(R(),1);var ih=y(R(),1),_1=[];function fn(e){ih.useEffect(e,_1)}var sl=class e{static create(){return new e}currentId=null;start(t,r){this.clear(),this.currentId=setTimeout(()=>{this.currentId=null,r()},t)}clear=()=>{this.currentId!==null&&(clearTimeout(this.currentId),this.currentId=null)};disposeEffect=()=>this.clear};function dn(){let e=un(sl.create).current;return fn(e.disposeEffect),e}var Mr=y(R(),1);var ll=y(te(),1);function $1(e){let{className:t,classes:r,pulsate:n=!1,rippleX:o,rippleY:i,rippleSize:a,in:s,onExited:l,timeout:c}=e,[u,f]=Mr.useState(!1),m=dn(),p=Mr.useRef(!1),h=Mr.useRef(l);h.current=l;let g=l!=null,b=ye(t,r.ripple,r.rippleVisible,n&&r.ripplePulsate),v={width:a,height:a,top:-(a/2)+i,left:-(a/2)+o},x=ye(r.child,u&&r.childLeaving,n&&r.childPulsate);return!s&&!u&&f(!0),Mr.useEffect(()=>{!s&&g?p.current||(p.current=!0,m.start(c,()=>{p.current=!1,h.current?.()})):(p.current=!1,m.clear())},[m,g,s,c]),(0,ll.jsx)("span",{className:b,style:v,children:(0,ll.jsx)("span",{className:x})})}var ah=$1;var H1=ct("MuiTouchRipple",["root","ripple","rippleVisible","ripplePulsate","child","childLeaving","childPulsate"]),Ce=H1;var pn=y(R(),1);var lh="(prefers-reduced-motion: reduce)",z1=0,W1="0ms",V1=()=>{},sh=()=>!1,j1=()=>!0,G1=()=>V1;function U1(e){let[t,r]=pn.useState(()=>({enabled:e,matches:e?null:!1})),n=t.matches;return t.enabled!==e&&(n=null,e||(n=!1)),Kn(()=>{let o=s=>{r(l=>l.enabled===e&&l.matches===s?l:{enabled:e,matches:s})};if(!e){t.enabled&&o(!1);return}if(typeof window>"u"||typeof window.matchMedia!="function"){o(!1);return}let i=window.matchMedia(lh),a=()=>{o(i.matches)};return a(),i.addEventListener("change",a),()=>{i.removeEventListener("change",a)}},[e,t.enabled]),n}var Y1={...pn},ch=Y1.useSyncExternalStore;function K1(e){let t=e?j1:sh,[r,n]=pn.useMemo(()=>{if(!e||typeof window>"u"||typeof window.matchMedia!="function")return[sh,G1];let o=window.matchMedia(lh);return[()=>o.matches,i=>(o.addEventListener("change",i),()=>{o.removeEventListener("change",i)})]},[e]);return ch(n,r,t)}var X1=ch!==void 0?K1:U1;function cl(e,t){let r=X1(!t&&e==="system"),n=!t&&(e==="always"||e==="system"&&r!==!1);return pn.useMemo(()=>({shouldReduceMotion:n,getTransitionTiming(o){return n?{duration:z1,delay:W1}:o}}),[n])}var fl=y(te(),1),dl=550,q1=80,sa={},uh=[],Z1=()=>{};function ul(e,t){let r=new Set(t),n=new Map,o=[];for(let a of e)r.has(a)?o.length>0&&(n.set(a,o),o=[]):o.push(a);let i=[];for(let a of t){let s=n.get(a);s&&i.push(...s),i.push(a)}return i.push(...o),i}function Q1({event:e,element:t,center:r}){let n=t?t.getBoundingClientRect():{width:0,height:0,left:0,top:0},o,i;if(r||e===void 0||e.clientX===0&&e.clientY===0||!e.clientX&&!e.touches)o=Math.round(n.width/2),i=Math.round(n.height/2);else{let{clientX:s,clientY:l}=e.touches&&e.touches.length>0?e.touches[0]:e;o=Math.round(s-n.left),i=Math.round(l-n.top)}let a;if(r)a=Math.sqrt((2*n.width**2+n.height**2)/3),a%2===0&&(a+=1);else{let s=Math.max(Math.abs((t?t.clientWidth:0)-o),o)*2+2,l=Math.max(Math.abs((t?t.clientHeight:0)-i),i)*2+2;a=Math.sqrt(s**2+l**2)}return{rippleX:o,rippleY:i,rippleSize:a}}var J1=pr`
|
|
12
|
+
0% {
|
|
13
|
+
transform: scale(0);
|
|
14
|
+
opacity: 0.1;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
100% {
|
|
18
|
+
transform: scale(1);
|
|
19
|
+
opacity: 0.3;
|
|
20
|
+
}
|
|
21
|
+
`,ev=pr`
|
|
22
|
+
0% {
|
|
23
|
+
opacity: 1;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
100% {
|
|
27
|
+
opacity: 0;
|
|
28
|
+
}
|
|
29
|
+
`,tv=pr`
|
|
30
|
+
0% {
|
|
31
|
+
transform: scale(1);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
50% {
|
|
35
|
+
transform: scale(0.92);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
100% {
|
|
39
|
+
transform: scale(1);
|
|
40
|
+
}
|
|
41
|
+
`;function rv(e){if(e.motion.reducedMotion==="always")return null;let t=dr`
|
|
42
|
+
&.${Ce.rippleVisible} {
|
|
43
|
+
animation-name: ${J1};
|
|
44
|
+
animation-duration: ${dl}ms;
|
|
45
|
+
animation-timing-function: ${e.transitions.easing.easeInOut};
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
&.${Ce.ripplePulsate} {
|
|
49
|
+
animation-duration: ${e.transitions.duration.shorter}ms;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
& .${Ce.childLeaving} {
|
|
53
|
+
animation-name: ${ev};
|
|
54
|
+
animation-duration: ${dl}ms;
|
|
55
|
+
animation-timing-function: ${e.transitions.easing.easeInOut};
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
& .${Ce.childPulsate} {
|
|
59
|
+
animation-name: ${tv};
|
|
60
|
+
animation-duration: 2500ms;
|
|
61
|
+
animation-timing-function: ${e.transitions.easing.easeInOut};
|
|
62
|
+
animation-iteration-count: infinite;
|
|
63
|
+
animation-delay: 200ms;
|
|
64
|
+
}
|
|
65
|
+
`;return e.motion.reducedMotion==="system"?dr`
|
|
66
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
67
|
+
${t}
|
|
68
|
+
}
|
|
69
|
+
`:t}var nv=mt("span",{name:"MuiTouchRipple",slot:"Root"})({overflow:"hidden",pointerEvents:"none",position:"absolute",zIndex:0,top:0,right:0,bottom:0,left:0,borderRadius:"inherit"}),ov=mt(ah,{name:"MuiTouchRipple",slot:"Ripple"})`
|
|
70
|
+
opacity: 0;
|
|
71
|
+
position: absolute;
|
|
72
|
+
|
|
73
|
+
&.${Ce.rippleVisible} {
|
|
74
|
+
opacity: 0.3;
|
|
75
|
+
transform: scale(1);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/*
|
|
79
|
+
* Order matters: 'child', 'childLeaving' and 'childPulsate' apply to the same
|
|
80
|
+
* element with equal specificity, so the later rule wins. 'child' must come
|
|
81
|
+
* before 'childLeaving' so the leaving 'opacity: 0' takes precedence. A focus
|
|
82
|
+
* (pulsate) ripple keeps 'pulsateKeyframe' (no opacity animation) on exit, so
|
|
83
|
+
* it relies on this static 'opacity: 0' to disappear on blur instead of
|
|
84
|
+
* lingering until removal.
|
|
85
|
+
*/
|
|
86
|
+
& .${Ce.child} {
|
|
87
|
+
opacity: 1;
|
|
88
|
+
display: block;
|
|
89
|
+
width: 100%;
|
|
90
|
+
height: 100%;
|
|
91
|
+
border-radius: 50%;
|
|
92
|
+
background-color: currentColor;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
& .${Ce.childLeaving} {
|
|
96
|
+
opacity: 0;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
& .${Ce.childPulsate} {
|
|
100
|
+
position: absolute;
|
|
101
|
+
/* @noflip */
|
|
102
|
+
left: 0px;
|
|
103
|
+
top: 0;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
${({theme:e})=>rv(e)}
|
|
107
|
+
`,iv=Oe.forwardRef(function(t,r){let n=St({props:t,name:"MuiTouchRipple"}),o=nn(),i=cl(o.motion.reducedMotion,!1),{center:a=!1,classes:s=sa,className:l,...c}=n,[u,f]=Oe.useState({items:uh,order:uh}),m=u.items,p=Oe.useRef(0),h=Oe.useRef(null),g=Oe.useRef(!1);fn(()=>(g.current=!0,()=>{g.current=!1})),Oe.useEffect(()=>{h.current&&(h.current(),h.current=null)},[m]);let b=Oe.useRef(!1),v=dn(),x=Oe.useRef(null),T=Oe.useRef(null),C=rt(O=>{g.current&&f(B=>{let d=B.items.filter(E=>E.key!==O),k=ul(B.order.filter(E=>E!==O),d.filter(E=>!E.exiting).map(E=>E.key));return{items:d,order:k}})}),M=rt(O=>{let{pulsate:B,rippleX:d,rippleY:k,rippleSize:E,cb:L}=O,G=p.current;p.current+=1,f(he=>{let xe=[...he.items,{key:G,pulsate:B,rippleX:d,rippleY:k,rippleSize:E,exiting:!1}];return{items:xe,order:ul(he.order,xe.filter(Qe=>!Qe.exiting).map(Qe=>Qe.key))}}),h.current=L}),S=rt((O=sa,B=sa,d=Z1)=>{let{pulsate:k=!1,center:E=a||B.pulsate,fakeElement:L=!1}=B;if(O?.type==="mousedown"&&b.current){b.current=!1;return}O?.type==="touchstart"&&(b.current=!0);let G=L?null:T.current,{rippleX:he,rippleY:xe,rippleSize:Qe}=Q1({event:O,element:G,center:E});O?.touches?x.current===null&&(x.current=()=>{M({pulsate:k,rippleX:he,rippleY:xe,rippleSize:Qe,cb:d})},v.start(q1,()=>{x.current&&(x.current(),x.current=null)})):M({pulsate:k,rippleX:he,rippleY:xe,rippleSize:Qe,cb:d})}),A=rt(()=>{S(sa,{pulsate:!0})}),I=rt((O,B)=>{if(v.clear(),O?.type==="touchend"&&x.current){x.current(),x.current=null,v.start(0,()=>{I(O,B)});return}x.current=null,f(d=>{let k=d.items.findIndex(L=>!L.exiting);if(k===-1)return d;let E=d.items.slice();return E[k]={...E[k],exiting:!0},{items:E,order:ul(d.order,E.filter(L=>!L.exiting).map(L=>L.key))}}),h.current=B});Oe.useImperativeHandle(r,()=>({pulsate:A,start:S,stop:I}),[A,S,I]);let F=new Map(m.map(O=>[O.key,O])),N=u.order.map(O=>F.get(O)).filter(Boolean);return(0,fl.jsx)(nv,{className:ye(Ce.root,s.root,l),ref:T,...c,children:N.map(O=>(0,fl.jsx)(ov,{classes:{ripple:ye(s.ripple,Ce.ripple),rippleVisible:ye(s.rippleVisible,Ce.rippleVisible),ripplePulsate:ye(s.ripplePulsate,Ce.ripplePulsate),child:ye(s.child,Ce.child),childLeaving:ye(s.childLeaving,Ce.childLeaving),childPulsate:ye(s.childPulsate,Ce.childPulsate)},timeout:i.shouldReduceMotion?0:dl,pulsate:O.pulsate,rippleX:O.rippleX,rippleY:O.rippleY,rippleSize:O.rippleSize,in:!O.exiting,onExited:()=>C(O.key)},O.key))})}),fh=iv;function dh(e){return lt("MuiButtonBase",e)}var av=ct("MuiButtonBase",["root","disabled","focusVisible"]),pl=av;var la=y(te(),1),sv=e=>{let{disabled:t,focusVisible:r,focusVisibleClassName:n,suppressFocusVisible:o,classes:i}=e,s=Bt({root:["root",t&&"disabled",r&&!o&&"focusVisible"]},dh,i);return r&&!o&&n&&(s.root+=` ${n}`),s},lv=mt("button",{name:"MuiButtonBase",slot:"Root"})(on(({theme:e})=>({display:"inline-flex",alignItems:"center",justifyContent:"center",position:"relative",boxSizing:"border-box",WebkitTapHighlightColor:"transparent",backgroundColor:"transparent",outline:0,border:0,margin:0,borderRadius:0,padding:0,cursor:"pointer",userSelect:"none",verticalAlign:"middle",MozAppearance:"none",WebkitAppearance:"none",textDecoration:"none",color:"inherit","&::-moz-focus-inner":{borderStyle:"none"},[`&.${pl.disabled}`]:{pointerEvents:"none",cursor:"default"},"@media print":{colorAdjust:"exact"},variants:[{props:{internalDisabledThemeFocusVisible:!1},style:e.focusVisible&&{...zd,[`&.${pl.focusVisible}`]:e.focusVisible}}]}))),cv=Zt.forwardRef(function(t,r){let n=St({props:t,name:"MuiButtonBase"}),{action:o,centerRipple:i=!1,children:a,className:s,component:l="button",disabled:c=!1,disableRipple:u=!1,disableTouchRipple:f=!1,focusRipple:m=!1,focusVisibleClassName:p,focusableWhenDisabled:h,suppressFocusVisible:g=!1,internalNativeButton:b,internalDisabledThemeFocusVisible:v=!1,LinkComponent:x="a",nativeButton:T,onBlur:C,onClick:M,onContextMenu:S,onDragLeave:A,onFocus:I,onFocusVisible:F,onKeyDown:N,onKeyUp:O,onMouseDown:B,onMouseLeave:d,onMouseUp:k,onTouchEnd:E,onTouchMove:L,onTouchStart:G,tabIndex:he=0,TouchRippleProps:xe,touchRippleRef:Qe,type:ho,...go}=n,yo=!!(go.href||go.to),P0=!!go.formAction,Pr=l;Pr==="button"&&yo&&(Pr=x);let nc=typeof Pr=="string"?Pr==="button":b??!1,O0=T??nc,we=aa(),F0=tl(we.ref,Qe),[rr,bo]=Zt.useState(!1);(c||g)&&rr&&bo(!1);let L0=rt(pe=>{m&&!pe.repeat&&rr&&pe.key===" "&&we.stop(pe,()=>{we.start(pe)})}),I0=rt(pe=>{m&&pe.key===" "&&rr&&!pe.defaultPrevented&&we.stop(pe,()=>{we.pulsate(pe)})}),{getButtonProps:D0,rootRef:vn}=il({nativeButton:O0,nativeButtonProp:T,internalNativeButton:nc,allowInferredHostMismatch:yo||typeof Pr=="string",disabled:c,type:ho,hasFormAction:P0,tabIndex:he,onBeforeKeyDown:L0,onBeforeKeyUp:I0}),{onClick:B0,onKeyDown:N0,onKeyUp:_0,...$0}=D0({onClick:M,onKeyDown:N,onKeyUp:O});Zt.useImperativeHandle(o,()=>({focusVisible:()=>{bo(!0),vn.current.focus()}}),[vn]);let H0=we.shouldMount&&!u&&!c;Zt.useEffect(()=>{rr&&m&&!u&&we.pulsate()},[u,m,rr,we]);let z0=Et(we,"start",B,f),W0=Et(we,"stop",S,f),V0=Et(we,"stop",A,f),j0=Et(we,"stop",k,f),G0=Et(we,"stop",pe=>{rr&&pe.preventDefault(),d&&d(pe)},f),U0=Et(we,"start",G,f),Y0=Et(we,"stop",E,f),K0=Et(we,"stop",L,f),X0=Et(we,"stop",pe=>{io(pe.target)||bo(!1),C&&C(pe)},!1),q0=rt(pe=>{vn.current||(vn.current=pe.currentTarget),!g&&io(pe.target)&&(bo(!0),F&&F(pe)),I&&I(pe)}),xo={};yo&&(xo.tabIndex=c?-1:he,c&&(xo["aria-disabled"]=c),xo.type=ho);let Z0=tl(r,vn),oc={...n,centerRipple:i,component:l,disabled:c,disableRipple:u,disableTouchRipple:f,focusRipple:m,suppressFocusVisible:g,tabIndex:he,focusVisible:rr,internalDisabledThemeFocusVisible:v},Q0=sv(oc);return(0,la.jsxs)(lv,{as:Pr,className:ye(Q0.root,s),ownerState:oc,onBlur:X0,onClick:B0,onContextMenu:W0,onFocus:q0,onKeyDown:N0,onKeyUp:_0,onMouseDown:z0,onMouseLeave:G0,onMouseUp:j0,onDragLeave:V0,onTouchEnd:Y0,onTouchMove:K0,onTouchStart:U0,ref:Z0,...yo?xo:$0,...go,children:[a,H0?(0,la.jsx)(fh,{ref:F0,center:i,...xe}):null]})});function Et(e,t,r,n=!1){return rt(o=>(r&&r(o),n||e[t](o),!0))}var ml=cv;var hh=y(_(),1);var j=y(R(),1);var le=y(J(),1);function uv(e){return e.filter(t=>"type"in t&&t.type==="radio")}function hl({children:e}){return j.default.createElement(le.Typography,{variant:"caption",color:"text.secondary",sx:{mt:1,display:"block"}},e)}function fv({label:e,options:t}){let r=t.findIndex(n=>n.checked);return j.default.createElement(j.default.Fragment,null,j.default.createElement(hl,null,e),j.default.createElement(le.ToggleButtonGroup,{exclusive:!0,fullWidth:!0,size:"small",value:r,"aria-label":e,onChange:(n,o)=>{o!==null&&t[o]?.onClick()}},t.map((n,o)=>j.default.createElement(le.ToggleButton,{key:String(n.label),value:o,disabled:n.disabled,title:n.helpText,sx:{textTransform:"none",py:.25}},n.label))))}function dv({label:e,options:t}){let r=t.findIndex(n=>n.checked);return j.default.createElement(le.TextField,{select:!0,size:"small",fullWidth:!0,label:e,value:r===-1?"":r,sx:{mt:1.5,"& .MuiInputBase-root":{typography:"body2"}}},t.map((n,o)=>j.default.createElement(le.MenuItem,{key:String(n.label),value:o,disabled:n.disabled,dense:!0,onClick:()=>{n.onClick()}},n.label)))}var pv=8;function mv({item:e}){let[t,r]=(0,j.useState)(!1);if(!("subMenu"in e)||!Array.isArray(e.subMenu))return null;let n=String(e.label),o="display"in e?e.display:void 0;if(o){let i=uv(e.subMenu),a=e.subMenu.filter(l=>!i.includes(l)),s=o==="segmented"?fv:dv;return j.default.createElement(j.default.Fragment,null,j.default.createElement(s,{label:n,options:i}),j.default.createElement(nt,{items:a}))}return e.subMenu.length<=pv?j.default.createElement(j.default.Fragment,null,j.default.createElement(hl,null,n),j.default.createElement(nt,{items:e.subMenu})):j.default.createElement(j.default.Fragment,null,j.default.createElement(le.Button,{size:"small",color:"inherit",startIcon:t?j.default.createElement(Ft,null):j.default.createElement(na,null),onClick:()=>{r(!t)},sx:{textTransform:"none",justifyContent:"flex-start",px:.5}},n),t?j.default.createElement(le.Box,{sx:{pl:2}},j.default.createElement(nt,{items:e.subMenu})):null)}function nt({items:e}){return j.default.createElement(le.Box,{sx:{display:"flex",flexDirection:"column"}},e.map((t,r)=>{let n="label"in t?String(t.label):String(r);if(!("label"in t))return null;if("type"in t&&t.type==="subHeader")return j.default.createElement(hl,{key:n},t.label);if("subMenu"in t)return j.default.createElement(mv,{key:n,item:t});let o="onClick"in t?t.onClick:void 0;if("type"in t&&(t.type==="checkbox"||t.type==="radio")){let i=t.type==="checkbox"?le.Checkbox:le.Radio;return j.default.createElement(le.FormControlLabel,{key:n,disabled:t.disabled,control:j.default.createElement(i,{size:"small",checked:t.checked,onChange:()=>o?.(),sx:{py:.25}}),label:t.label,slotProps:{typography:{variant:"body2"}}})}return j.default.createElement(le.Button,{key:n,size:"small",disabled:t.disabled,onClick:()=>o?.(),sx:{alignSelf:"flex-start",textTransform:"none"}},t.label)}))}var Ee=y(R(),1),Fe=y(J(),1),ph=y(_(),1);function hv(e){let t=new Set(e.computedTrackModels.map(i=>i.model.id)),r=[],n=[],o=[];for(let{model:i}of e.tracks)(i.kind==="reference"?o:t.has(i.id)?r:n).push({id:i.id,label:i.name});return[{title:"Computed from the alignment",entries:r},{title:"Alignment annotations",entries:n},{title:"Reference row",entries:o}].filter(i=>i.entries.length>0)}var gv=10,yv=(0,ph.observer)(function({model:e}){let[t,r]=(0,Ee.useState)(""),n=new Set(e.turnedOnTracks.map(c=>c.model.id)),o=hv(e),i=t.trim().toLowerCase(),a=o.map(c=>({...c,entries:c.entries.filter(u=>u.label.toLowerCase().includes(i))})).filter(c=>c.entries.length>0),s=a.flatMap(c=>c.entries.map(u=>u.id)),l=o.reduce((c,u)=>c+u.entries.length,0)>=gv;return Ee.default.createElement(Ee.default.Fragment,null,l?Ee.default.createElement(Ee.default.Fragment,null,Ee.default.createElement(Fe.TextField,{size:"small",placeholder:"Filter tracks",value:t,onChange:c=>{r(c.target.value)},fullWidth:!0}),Ee.default.createElement(Fe.Box,{sx:{display:"flex"}},Ee.default.createElement(Fe.Button,{size:"small",onClick:()=>{e.setTracksShown(s,!0)}},"Show all"),Ee.default.createElement(Fe.Button,{size:"small",onClick:()=>{e.setTracksShown(s,!1)}},"Hide all"))):null,a.map(({title:c,entries:u})=>Ee.default.createElement(Fe.Box,{key:c},a.length>1?Ee.default.createElement(Fe.Typography,{variant:"caption",color:"text.secondary"},c):null,u.map(({id:f,label:m})=>Ee.default.createElement(Fe.FormControlLabel,{key:f,sx:{display:"flex"},control:Ee.default.createElement(Fe.Checkbox,{size:"small",checked:n.has(f),onChange:()=>{e.toggleTrack(f)},sx:{py:.25}}),label:m,slotProps:{typography:{variant:"body2"}}})))),a.length===0?Ee.default.createElement(Fe.Typography,{variant:"body2"},"No track matches"):null)}),mh=yv;var gh="msaview-settings-collapsed";function bv(){try{let e=JSON.parse(localStorage.getItem(gh)??"[]");return new Set(Array.isArray(e)?e.map(String):[])}catch{return new Set}}function xv(e){try{localStorage.setItem(gh,JSON.stringify([...e]))}catch{}}function ao({title:e,collapsed:t,onToggle:r,children:n}){let o=t?na:Ft;return ee.default.createElement(gt.Box,{sx:{px:1.5,py:1,borderBottom:1,borderColor:"divider"}},ee.default.createElement(ml,{"aria-expanded":!t,onClick:r,sx:{width:"100%",justifyContent:"flex-start",ml:-.75}},ee.default.createElement(o,{fontSize:"small",color:"action"}),ee.default.createElement(gt.Typography,{variant:"overline",color:"text.secondary"},e)),t?null:n)}var wv=(0,hh.observer)(function({model:e,height:t}){let{noTree:r,noDomains:n}=e,[o,i]=(0,ee.useState)(bv),a=s=>({title:s,collapsed:o.has(s),onToggle:()=>{let l=new Set(o);l.delete(s)||l.add(s),xv(l),i(l)}});return ee.default.createElement(gt.Box,{"data-testid":"settings_panel",sx:{width:Co,height:t,flexShrink:0,overflowY:"auto",borderLeft:1,borderColor:"divider",bgcolor:"background.paper"}},ee.default.createElement(gt.Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",px:1.5,pt:.5}},ee.default.createElement(gt.Typography,{variant:"subtitle1"},"Settings"),ee.default.createElement(gt.IconButton,{"aria-label":"Close settings",onClick:()=>{e.setSettingsOpen(!1)}},ee.default.createElement(No,{fontSize:"small"}))),ee.default.createElement(ao,{...a("Color")},ee.default.createElement(nt,{items:Gp(e)})),r?null:ee.default.createElement(ao,{...a("Tree")},ee.default.createElement(nt,{items:zp(e)})),ee.default.createElement(ao,{...a("Alignment")},ee.default.createElement(nt,{items:jp(e)}),ee.default.createElement(nt,{items:Hp(e)})),n?null:ee.default.createElement(ao,{...a("Annotations")},ee.default.createElement(nt,{items:Np(e)})),ee.default.createElement(ao,{...a("Tracks")},ee.default.createElement(mh,{model:e}),ee.default.createElement(gt.Box,{sx:{mt:1,pt:.5,borderTop:1,borderColor:"divider"}},ee.default.createElement(nt,{items:Vp(e)}))))}),yh=wv;var ca=y(R(),1),bh=y(_(),1);var vv=(0,bh.observer)(function({model:e}){let{effectiveTreeAreaWidth:t,overviewHeight:r,highResScaleFactor:n}=e,o=De(),[i,a]=(0,ca.useState)(),s=Math.round(t*n),l=Math.round(r*n),c=Te({draw:u=>{u.resetTransform(),u.clearRect(0,0,s,l);let f=vu({model:e,theme:o,width:t,height:r,scale:n});u.scale(n,n);let m={model:e,ctx:u,width:t,height:r};f?u.drawImage(f,0,0,f.width,f.height,0,0,m.width,m.height):wu({...m,theme:o}),i&&Na({...m,rows:i.rows,color:o.palette.text.secondary});let p=e.treeOverviewFocusRows;p&&Na({...m,rows:p,color:o.palette.text.primary})},width:s,height:l,deps:[e,o,i]});return ca.default.createElement("canvas",{"data-testid":"tree_overview",ref:c,width:s,height:l,style:{display:"block",flexShrink:0,cursor:"pointer",width:t,height:r},onMouseMove:u=>{let f=e.treeOverviewHit(u.nativeEvent.offsetY);a(m=>m?.id===f?.id?m:f)},onMouseLeave:()=>{a(void 0)},onClick:u=>{e.treeOverviewClick(u.nativeEvent.offsetY)}})}),xh=vv;var yl=y(R(),1),Bh=y(_(),1);var Qt=y(R(),1),Lh=y(je(),1),Ih=y(_(),1);var ua=y(R(),1),wh=y(J(),1),vh=y(_(),1);var Sv=(0,vh.observer)(function({model:e}){let t=(0,wh.useTheme)(),{fontSize:r}=e;return ua.default.createElement(ua.default.Fragment,null,gu(e).map(n=>ua.default.createElement("div",{key:n.key,title:n.label,style:{position:"absolute",left:n.left,top:n.top,width:n.width,height:n.height,display:"flex",alignItems:"center",color:n.color??t.palette.text.primary,fontSize:r,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",pointerEvents:"none",...n.horizontal?{}:{writingMode:"vertical-rl",transform:"rotate(180deg)"}}},n.label)))}),Sh=Sv;var Mt=y(R(),1),kh=y(Mn(),1),Rh=y(Cn(),1),Ph=y(_(),1);var qe=y(R(),1),ot=y(J(),1),Th=y(_(),1),Tv=(0,qe.lazy)(()=>import("./TreeNodeInfoDialog-W7RRBNII.js")),Cv=(0,Th.observer)(function({node:e,model:t,onClose:r}){let{collapsed:n,showOnly:o,relativeTo:i}=t,{name:a,id:s,leaf:l}=e,c=n.includes(s),u=s===t.tree.id,f=l?"subtree":"clade";return qe.default.createElement(ot.Menu,{anchorReference:"anchorPosition",anchorPosition:{left:e.x,top:e.y},transitionDuration:0,open:!0,onClose:r},qe.default.createElement(ot.MenuItem,{dense:!0,disabled:!0},a),l?qe.default.createElement(ot.MenuItem,{dense:!0,onClick:()=>{t.queueDialog(m=>[Tv,{info:t.getRowData(a),model:t,nodeName:a,onClose:m}]),r()}},"More info..."):null,qe.default.createElement(ot.MenuItem,{dense:!0,onClick:()=>{t.toggleCollapsed(s),r()}},c?`Expand ${f}`:`Collapse ${f}`),l?null:qe.default.createElement(ot.MenuItem,{dense:!0,onClick:()=>{t.setShowOnly(o===s?void 0:s),r()}},o===s?"Show all rows":"Show only this clade"),l||c?null:qe.default.createElement(ot.MenuItem,{dense:!0,onClick:()=>{t.toggleRotated(s),r()}},"Rotate clade"),u?null:qe.default.createElement(ot.MenuItem,{dense:!0,onClick:()=>{t.rerootAt(s),r()}},"Reroot here"),l?qe.default.createElement(ot.MenuItem,{dense:!0,onClick:()=>{t.drawRelativeTo(a),r()}},"Use as reference row"):null,l&&i?qe.default.createElement(ot.MenuItem,{dense:!0,onClick:()=>{t.drawRelativeTo(void 0),r()}},"Clear reference row"):null)}),Ch=Cv;var Mh=y(R(),1);var so=class{constructor(t=1/0,r=Float64Array,n=Uint32Array){let o=t!==1/0;this.ids=o?new n(t):[],this.values=o?new r(t):[],this.capacity=t,this.length=0}clear(){this.length=0}push(t,r){if(this.length===this.capacity)throw new RangeError("Queue is at capacity.");let n=this.length++;for(;n>0;){let o=n-1>>1,i=this.values[o];if(r>=i)break;this.ids[n]=this.ids[o],this.values[n]=i,n=o}this.ids[n]=t,this.values[n]=r}pop(){if(this.length===0)return;let t=this.ids,r=this.values,n=t[0],o=--this.length;if(o>0){let i=t[o],a=r[o],s=0,l=o>>1;for(;s<l;){let c=(s<<1)+1,u=c+1,f=c+(+(u<o)&+(r[u]<r[c]));if(r[f]>=a)break;t[s]=t[f],r[s]=r[f],s=f}t[s]=i,r[s]=a}return n}peek(){return this.length>0?this.ids[0]:void 0}peekValue(){return this.length>0?this.values[0]:void 0}shrink(){Array.isArray(this.ids)&&(this.ids.length=this.length),Array.isArray(this.values)&&(this.values.length=this.length)}};var Eh=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],gl=3,lo=class e{static from(t,r=0){if(r%8!==0)throw new Error("byteOffset must be 8-byte aligned.");if(!t||t.byteLength===void 0||"buffer"in t)throw new Error("Data must be an instance of ArrayBuffer or SharedArrayBuffer.");let[n,o]=new Uint8Array(t,r+0,2);if(n!==251)throw new Error("Data does not appear to be in a Flatbush format.");let i=o>>4;if(i!==gl)throw new Error(`Got v${i} data when expected v${gl}.`);let a=Eh[o&15];if(!a)throw new Error("Unrecognized array type.");let[s]=new Uint16Array(t,r+2,1),[l]=new Uint32Array(t,r+4,1);return new e(l,s,a,void 0,t,r)}constructor(t,r=16,n=Float64Array,o=ArrayBuffer,i,a=0){if(t===void 0)throw new Error("Missing required argument: numItems.");if(isNaN(t)||t<=0)throw new Error(`Unexpected numItems value: ${t}.`);this.numItems=+t,this.nodeSize=Math.min(Math.max(+r,2),65535),this.byteOffset=a;let s=t,l=s;this._levelBounds=[s*4];do s=Math.ceil(s/this.nodeSize),l+=s,this._levelBounds.push(l*4);while(s!==1);this.ArrayType=n,this.IndexArrayType=l<16384?Uint16Array:Uint32Array;let c=Eh.indexOf(n),u=l*4*n.BYTES_PER_ELEMENT;if(c<0)throw new Error(`Unexpected typed array class: ${n}.`);let f=n,m=this.IndexArrayType;if(i)this.data=i,this._boxes=new f(i,a+8,l*4),this._indices=new m(i,a+8+u,l),this._pos=l*4,this.minX=this._boxes[this._pos-4],this.minY=this._boxes[this._pos-3],this.maxX=this._boxes[this._pos-2],this.maxY=this._boxes[this._pos-1];else{let p=this.data=new o(8+u+l*this.IndexArrayType.BYTES_PER_ELEMENT);this._boxes=new f(p,8,l*4),this._indices=new m(p,8+u,l),this._pos=0,this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0,new Uint8Array(p,0,2).set([251,(gl<<4)+c]),new Uint16Array(p,2,1)[0]=r,new Uint32Array(p,4,1)[0]=t}this._queue=new so}add(t,r,n=t,o=r){let i=this._pos,a=i>>2,s=this._boxes;return this._indices[a]=a,s[i]=t,s[i+1]=r,s[i+2]=n,s[i+3]=o,this._pos=i+4,t<this.minX&&(this.minX=t),r<this.minY&&(this.minY=r),n>this.maxX&&(this.maxX=n),o>this.maxY&&(this.maxY=o),a}finish(){if(this._pos>>2!==this.numItems)throw new Error(`Added ${this._pos>>2} items when expected ${this.numItems}.`);let t=this._boxes;if(this.numItems<=this.nodeSize){t[this._pos++]=this.minX,t[this._pos++]=this.minY,t[this._pos++]=this.maxX,t[this._pos++]=this.maxY;return}let{numItems:r,minX:n,minY:o,nodeSize:i,_indices:a,_levelBounds:s}=this,l=this.maxX-n||1,c=this.maxY-o||1,u=new Int32Array(r),f=65535,m=f/l,p=f/c;for(let g=0,b=0;g<r;g++){let v=t[b++],x=t[b++],T=t[b++],C=t[b++],M=m*((v+T)/2-n)|0,S=p*((x+C)/2-o)|0;u[g]=kv(M,S)}Mv(u,t,a,0,r-1,i);let h=r*4;for(let g=0,b=0;g<s.length-1;g++){let v=s[g];for(;b<v;){let x=b,T=t[b++],C=t[b++],M=t[b++],S=t[b++];for(let A=1;A<i&&b<v;A++)T=Math.min(T,t[b++]),C=Math.min(C,t[b++]),M=Math.max(M,t[b++]),S=Math.max(S,t[b++]);a[h>>2]=x,t[h++]=T,t[h++]=C,t[h++]=M,t[h++]=S}}this._pos=h}search(t,r,n,o,i){if(this._pos!==this._boxes.length)throw new Error("Data not yet indexed - call index.finish().");let{_boxes:a,_levelBounds:s,_indices:l,nodeSize:c}=this,u=this.numItems*4,f=a.length-4,m=s.length-1,p=[],h=[],g=!1;for(;f!==void 0;){let b=Math.min(f+c*4,s[m]),v=f>=u;if(g)this._collectContained(f,b,m,u,h,i);else for(let x=f;x<b;x+=4){let T=a[x];if(n<T)continue;let C=a[x+1];if(o<C)continue;let M=a[x+2];if(t>M)continue;let S=a[x+3];if(r>S)continue;let A=l[x>>2]|0;if(v){let I=+(t<=T&&r<=C&&n>=M&&o>=S);p.push(A|I,m-1)}else(i===void 0||i(A,T,C,M,S))&&h.push(A)}m=p.pop(),f=p.pop(),f!==void 0&&(g=(f&1)===1,f&=-2)}return h}_collectContained(t,r,n,o,i,a){let s=this._boxes,l=this._indices,c=t;for(let f=n;f>0;f--)c=l[c>>2];let u=Math.min(c+(r-t)*this.nodeSize**n,o);if(a===void 0)for(;c<u;c+=4)i.push(l[c>>2]|0);else for(;c<u;c+=4){let f=l[c>>2]|0;a(f,s[c],s[c+1],s[c+2],s[c+3])&&i.push(f)}}neighbors(t,r,n=1/0,o=1/0,i){if(this._pos!==this._boxes.length)throw new Error("Data not yet indexed - call index.finish().");let{_boxes:a,_levelBounds:s,_indices:l,_queue:c,nodeSize:u}=this,f=this.numItems*4,m=u*4,p=[],h=o*o,g=n===1,b=h;for(c.push(a.length-4<<1,0);c.length;){let v=c.ids[0];if(v&1){if(c.pop(),p.push(v>>1),p.length===n)break;continue}c.pop();let x=v>>1,T=x<f,C=Math.min(x+m,Ev(x,s));for(let M=x;M<C;M+=4){let S=a[M],A=a[M+1],I=a[M+2],F=a[M+3],N=Math.max(Math.max(S-t,t-I),0),O=Math.max(Math.max(A-r,r-F),0),B=N*N+O*O;if(B>b)continue;let d=l[M>>2]|0;T?(i===void 0||i(d))&&(c.push(d<<1|1,B),g&&B<b&&(b=B)):c.push(d<<1,B)}}return c.clear(),p}};function Ev(e,t){let r=0,n=t.length-1;for(;r<n;){let o=r+n>>1;t[o]>e?n=o:r=o+1}return t[r]}function Mv(e,t,r,n,o,i){let a=[n,o];for(;a.length;){let s=a.pop()||0,l=a.pop()||0;if(s-l<=i&&Math.floor(l/i)>=Math.floor(s/i))continue;let c=e[l],u=e[l+s>>1],f=e[s],m=c>u!=c>f?c:u<c!=u<f?u:f,p=l-1,h=s+1;for(;;){do p++;while(e[p]<m);do h--;while(e[h]>m);if(p>=h)break;Av(e,t,r,p,h)}a.push(l,h,h+1,s)}}function Av(e,t,r,n,o){let i=e[n];e[n]=e[o],e[o]=i;let a=4*n,s=4*o,l=t[a],c=t[a+1],u=t[a+2],f=t[a+3];t[a]=t[s],t[a+1]=t[s+1],t[a+2]=t[s+2],t[a+3]=t[s+3],t[s]=l,t[s+1]=c,t[s+2]=u,t[s+3]=f;let m=r[n];r[n]=r[o],r[o]=m}function kv(e,t){let r=e^t,n=65535^r,o=65535^(e|t),i=e&(t^65535),a=r|n>>1,s=r>>1^r,l=o^(o>>1^n&i>>1),c=i^(r&o>>1^i>>1);return r=a&a>>2^s&s>>2,n=a&s>>2^s&(a^s)>>2,o=l^(a&l>>2^s&c>>2),i=c^(s&l>>2^(a^s)&c>>2),a=r&r>>4^n&n>>4,s=r&n>>4^n&(r^n)>>4,l=o^(r&o>>4^n&i>>4),c=i^(n&o>>4^(r^n)&i>>4),o=l^(a&l>>8^s&c>>8),i=c^(s&l>>8^(a^s)&c>>8),o^=o>>1,i^=i>>1,r=e^t,n=i|65535^(r|o),r=(r|r<<8)&16711935,r=(r|r<<4)&252645135,r=(r|r<<2)&858993459,r=(r|r<<1)&1431655765,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,((n<<1|r)>>>0)-2147483648}var fa=class{flatbush=null;entries=[];clear(){this.flatbush=null,this.entries=[]}insert(t){this.entries.push(t)}finish(){if(this.entries.length===0)this.flatbush=null;else{this.flatbush=new lo(this.entries.length);for(let t of this.entries)this.flatbush.add(t.minX,t.minY,t.maxX,t.maxY);this.flatbush.finish()}}search(t){return this.flatbush?.search(t.minX,t.minY,t.maxX,t.maxY).map(r=>this.entries[r])??[]}};function Ah({model:e,offsetY:t}){let[r]=(0,Mh.useState)(()=>new fa),{anchor:n,hoverAt:o,clearAnchor:i}=It();function a(c){let u=c.nativeEvent.offsetX,f=c.nativeEvent.offsetY+t,m=r.search({minX:u,maxX:u+1,minY:f,maxY:f+1});return m.find(p=>!p.branch)??m[0]}function s(c){let u=a(c);o(c,u),e.setHoveredTreeNode(u?.id),e.setMousePos(void 0,u&&!u.branch?e.rowNamesSet.get(u.name):void 0)}function l(){i(),e.setHoveredTreeNode(void 0),e.setMousePos(void 0,void 0)}return{clickMap:r,anchor:n,hitTest:a,onMouseMove:s,onMouseLeave:l}}var Rv=(0,Rh.makeStyles)()(e=>({hover:{position:"absolute",pointerEvents:"none",zIndex:100,background:e.palette.action.hover}})),Pv=(0,Ph.observer)(function({model:e,offsetY:t}){let{classes:r}=Rv(),n=De(),[o,i]=(0,Mt.useState)(),{clickMap:a,anchor:s,hitTest:l,onMouseMove:c,onMouseLeave:u}=Ah({model:e,offsetY:t}),f=s?.value,{effectiveTreeAreaWidth:m,blockSize:p,highResScaleFactor:h}=e,g=m,b=p,v=g*h,x=b*h,T=Te({draw:M=>{M.resetTransform(),M.clearRect(0,0,v,x),xu({ctx:M,model:e,offsetY:t,clickMap:a,theme:n})},width:v,height:x,deps:[e,a,t,n]}),C={width:g,height:b,top:t,left:0,position:"absolute"};return Mt.default.createElement(Mt.default.Fragment,null,o?Mt.default.createElement(Ch,{node:o,model:e,onClose:()=>{i(void 0)}}):null,Mt.default.createElement("canvas",{ref:T,width:v,height:x,style:{...C,cursor:f?"pointer":"default"},onMouseMove:M=>{c(M)},onMouseLeave:()=>{u()},onClick:M=>{let S=l(M);S&&i({x:M.clientX,y:M.clientY,id:S.id,name:S.name,leaf:!S.branch})}}),f&&!f.branch?Mt.default.createElement("div",{className:r.hover,style:{left:f.minX,top:f.minY,width:f.maxX-f.minX,height:f.maxY-f.minY}}):null,s?Mt.default.createElement(kh.default,{clientPoint:s.clientPoint},s.value.label??s.value.name):null)}),Oh=Pv;function Fh({ctx:e,model:t}){let{rowHeight:r,effectiveTreeAreaWidth:n,height:o,scrollY:i,mouseRow:a,referenceRowIndex:s,hoveredRowIndices:l,highResScaleFactor:c}=t;e.resetTransform(),e.clearRect(0,0,n*c,o*c),e.scale(c,c);let u=f=>{e.fillRect(0,f*r+i,n,r)};e.fillStyle=vc;for(let f of l)u(f);a!==void 0&&a!==s&&!l.includes(a)&&u(a)}var Ov=(0,Ih.observer)(function({model:e}){let t=(0,Qt.useRef)(null),{height:r,blocksY:n,effectiveTreeAreaWidth:o,scrollY:i,highResScaleFactor:a}=e,{onPointerDown:s,touchAction:l}=Lt({ref:t,model:e,axes:"y"}),c=o*a,u=r*a,f=Te({draw:m=>{(0,Lh.isAlive)(e)&&Fh({ctx:m,model:e})},width:c,height:u,deps:[e]});return Qt.default.createElement("div",{ref:t,onPointerDown:s,style:{touchAction:l,height:r,position:"relative",width:o}},Qt.default.createElement("div",{style:{position:"absolute",top:0,left:0,transform:`translateY(${i}px)`,willChange:"transform"}},n.map(m=>Qt.default.createElement(Oh,{key:m,model:e,offsetY:m})),Qt.default.createElement(Sh,{model:e})),Qt.default.createElement("canvas",{ref:f,width:c,height:u,style:{position:"absolute",top:0,left:0,width:o,height:r,zIndex:1e3,pointerEvents:"none"}}))}),Dh=Ov;var Fv=(0,Bh.observer)(function({model:e}){let{effectiveTreeAreaWidth:t}=e;return yl.default.createElement("div",{style:{overflow:"hidden",flexShrink:0,width:t}},yl.default.createElement(Dh,{model:e}))}),Nh=Fv;var da=y(R(),1),_h=y(J(),1),$h=y(_(),1);var Lv=(0,$h.observer)(({model:e})=>{let{effectiveTreeAreaWidth:t,marginLeft:r,treeScaleBar:n}=e,o=(0,_h.useTheme)();return da.default.createElement("div",{style:{flexShrink:0,width:t}},n?da.default.createElement("svg",{width:t,height:Sn,style:{display:"block"}},da.default.createElement(pu,{bar:n,marginLeft:r,y:Sn,color:o.palette.text.primary})):null)}),Hh=Lv;var Iv=(0,Ar.observer)(function({model:e}){let{showHorizontalScrollbar:t,showTreeOverview:r,resizeHandleWidth:n}=e;return $.default.createElement("div",{style:{display:"flex"}},$.default.createElement("div",{style:{flexShrink:0}},r?$.default.createElement(xh,{model:e}):null,$.default.createElement(Hh,{model:e})),$.default.createElement(qm,{model:e}),$.default.createElement("div",{style:{width:n,flexShrink:0}}),t?$.default.createElement(Cm,{model:e}):null)}),Dv=(0,Ar.observer)(function({model:e}){let{mouseCol:t,mouseClickCol:r,colWidth:n,scrollX:o,effectiveTreeAreaWidth:i,rowPanelsWidth:a,resizeHandleWidth:s,totalTrackAreaHeight:l,msaCanvasWidth:c,resolvedSelection:u}=e,f=[{start:u?.startCol,end:u?.endCol,color:Tc},{start:t,end:t,color:wo},{start:r,end:r,color:vo}];return $.default.createElement("div",{style:{position:"absolute",left:i+a+s,top:0,width:c,height:l,overflow:"hidden",pointerEvents:"none"}},f.map(({start:m,end:p,color:h})=>m===void 0||p===void 0?null:$.default.createElement("div",{key:h,style:{position:"absolute",left:m*n+o,top:0,width:(p-m+1)*n,height:l,backgroundColor:h,zIndex:100}})))}),Bv=(0,Ar.observer)(function({model:e}){let{turnedOnTracks:t}=e;return t.length===0?null:$.default.createElement("div",{style:{position:"relative"}},$.default.createElement(Dv,{model:e}),t.map(r=>$.default.createElement(cf,{key:r.model.id,model:e,track:r})))}),Nv=(0,Ar.observer)(function({model:e}){let{showVerticalScrollbar:t}=e;return $.default.createElement("div",{style:{display:"flex"}},$.default.createElement(Nh,{model:e}),$.default.createElement(eh,{model:e}),$.default.createElement(Nu,{model:e}),$.default.createElement(Km,{model:e}),t?$.default.createElement(df,{model:e}):null)}),_v=(0,Ar.observer)(function({model:e}){return $.default.createElement("div",{style:{position:"relative"}},$.default.createElement(Iv,{model:e}),$.default.createElement(Bv,{model:e}),$.default.createElement(Nv,{model:e}))}),$v=(0,Ar.observer)(function({model:e,...t}){let{height:r,headerHeight:n,hideHeader:o,settingsOpen:i,viewInitialized:a,DialogComponent:s,DialogProps:l}=e;return $.default.createElement("div",null,a?$.default.createElement($.default.Fragment,null,$.default.createElement("div",{style:{height:r,overflow:"clip"}},o?null:$.default.createElement(Sm,{model:e,...t}),$.default.createElement("div",{style:{display:"flex"}},$.default.createElement(_v,{model:e}),i?$.default.createElement(yh,{model:e,height:r-n}):null)),$.default.createElement(_u,{model:e}),s?$.default.createElement($.Suspense,{fallback:null},$.default.createElement(s,{...l})):null):null)}),zh=$v;var Z=y(R(),1),mn=y(Ra(),1),Le=y(J(),1),Yh=y(_(),1);var co=y(R(),1),ma=y(J(),1),Gh=y(_(),1);var Wh=`CLUSTAL O(1.2.3) multiple sequence alignment
|
|
108
|
+
UniProt/Swiss-Prot|P26898|IL2RA_SHEEP MEPSLLMWRFFVFIVVPGCVTEACHDDPPSLRNA----------MFKVLRYE----VGTM
|
|
109
|
+
UniProt/Swiss-Prot|P01590|IL2RA_MOUSE MEPRLLMLGFLSLTIVPSCRAELCLYDPPEVPNA----------TFKALSYK----NGTI
|
|
110
|
+
UniProt/Swiss-Prot|P41690|IL2RA_FELCA MEPSLLLWGILTFVVVHGHVTELCDENPPDIQHA----------TFKALTYK----TGTM
|
|
111
|
+
UniProt/Swiss-Prot|P01589|IL2RA_HUMAN MDSYLLMWGLLTFIMVPGCQAELCDDDPPEIPHA----------TFKAMAYK----EGTM
|
|
112
|
+
UniProt/Swiss-Prot|Q5MNY4|IL2RA_MACMU MDPYLLMWGLLTFITVPGCQAELCDDDPPKITHA----------TFKAVAYK----EGTM
|
|
113
|
+
UniProt/Swiss-Prot|Q95118|IL2RG_BOVIN -----------------------------------LLMWGLLT-----------------
|
|
114
|
+
UniProt/Swiss-Prot|P40321|IL2RG_CANFA MLKPPLPLRSLLFLQLSLLGVGLNSTVPMPNGNEDIT------PDFFLTATPSETLSVSS
|
|
115
|
+
UniProt/Swiss-Prot|P26896|IL2RB_RAT MATVDLSWRLPLYILLLLLATT--------------------------------WVSAAV
|
|
116
|
+
UniProt/Swiss-Prot|Q8BZM1|GLMN_MOUSE PLPLRSLLFLQLPLLGVGLNP------------------PLPLRSLLFLQLPLLGVGLNP
|
|
117
|
+
UniProt/Swiss-Prot|P36835|IL2_CAPHI -----------LLGVGLNPKFLTP------------------------------------
|
|
118
|
+
UniProt/Swiss-Prot|Q7JFM4|IL2_AOTVO MLKPPLPLRSLLFLQLPLLGVGLNPKFLTPSGNEDIGGKPGTGGDFFLTSTPAGTLDVST
|
|
119
|
+
UniProt/Swiss-Prot|Q29416|IL2_CANFA --------------LFLQLSLLG-------------------------------------
|
|
120
|
+
`,Vh="(((UniProt/Swiss-Prot|P26898|IL2RA_SHEEP:0.24036,(UniProt/Swiss-Prot|P41690|IL2RA_FELCA:0.17737,(UniProt/Swiss-Prot|P01589|IL2RA_HUMAN:0.03906,UniProt/Swiss-Prot|Q5MNY4|IL2RA_MACMU:0.03787):0.13033):0.04964):0.02189,UniProt/Swiss-Prot|P01590|IL2RA_MOUSE:0.23072):0.06814,(((UniProt/Swiss-Prot|Q95118|IL2RG_BOVIN:0.09600,UniProt/Swiss-Prot|P40321|IL2RG_CANFA:0.09845):0.25333,UniProt/Swiss-Prot|Q29416|IL2_CANFA:-0.35055):0.10231,(UniProt/Swiss-Prot|P26896|IL2RB_RAT:0.33631,UniProt/Swiss-Prot|Q7JFM4|IL2_AOTVO:-0.33631):0.10166):0.01607,(UniProt/Swiss-Prot|Q8BZM1|GLMN_MOUSE:0.32378,UniProt/Swiss-Prot|P36835|IL2_CAPHI:-0.32378):0.09999)";function pa(e,t,r,n){e.setError(void 0),t&&e.setMSAFilehandle(t),r&&e.setTreeFilehandle(r),n&&(e.setGFFFilehandle(n),e.setShowDomains(!0))}var jh="https://jbrowse.org/genomes/multiple_sequence_alignments",Hv="https://jbrowse.org/genomes/newick_trees",kr="https://gmod.org/JBrowseMSA/demo/data",zv=[{label:"NLRP1 in 12 mammals, with Pfam domains",msa:`${kr}/nlrp1.aln`,tree:`${kr}/nlrp1.nh`,gff:`${kr}/nlrp1-domains.gff`},{label:"474 human protein kinase domains, with a FastTree tree",msa:`${kr}/kinase-pocket/kinase-pocket.afa`,tree:`${kr}/kinase-pocket/kinase-pocket.nwk`},{label:"RSV-A G gene in 1,840 genomes, with the Nextstrain tree",msa:`${kr}/scale/rsv-full.aln`,tree:`${kr}/scale/rsv-full.nh`},{label:"230k COVID-19 samples (tree only)",tree:`${Hv}/sarscov2phylo.pub.ft.nh`},{label:"Pfam SARS-CoV-2 families, multi-Stockholm with domains",msa:`${jh}/pfam-cov2.stock`,gff:`${jh}/pfam-cov2-domains.gff`},{label:"Small protein alignment and tree",inline:{msa:Wh,tree:Vh}}];function bl(e){return e?{uri:e,locationType:"UriLocation"}:void 0}var Wv=(0,Gh.observer)(function({model:e}){return co.default.createElement("ul",null,zv.map(({label:t,msa:r,tree:n,gff:o,inline:i})=>co.default.createElement("li",{key:t},co.default.createElement(ma.Link,{href:"#",onClick:a=>{a.preventDefault(),e.setError(void 0);try{i?e.setData(i):pa(e,bl(r),bl(n),bl(o))}catch(s){console.error(s),e.setError(s)}}},co.default.createElement(ma.Typography,{component:"span"},t)))))}),Uh=Wv;var xl="@media (max-width: 640px)",Vv=(0,Yh.observer)(function({model:e}){let[t,r]=(0,Z.useState)(),[n,o]=(0,Z.useState)(),[i,a]=(0,Z.useState)(),{error:s}=e;return Z.default.createElement(Le.Container,{sx:{pt:2,pb:3}},Z.default.createElement(Le.Box,{sx:{width:"50%",mb:2,[xl]:{width:"100%"}}},s?Z.default.createElement(mn.ErrorMessage,{error:s}):null,Z.default.createElement(Le.Typography,null,"Open an MSA file (FASTA, Stockholm, Clustal, A3M or EMF format) and/or a tree file (Newick format)."),Z.default.createElement(Le.Typography,{color:"text.secondary"},"An MSA alone or a tree alone is enough, and a Stockholm file with an embedded tree needs no separate tree file.")),Z.default.createElement(Le.Box,{sx:{display:"flex",justifyContent:"center",alignItems:"center",gap:"40px",[xl]:{flexDirection:"column",alignItems:"stretch",gap:"16px"}}},Z.default.createElement(Le.Box,{sx:{width:400,display:"flex",flexDirection:"column",gap:1.5,[xl]:{width:"auto"}}},Z.default.createElement("div",null,Z.default.createElement(Le.Typography,null,"MSA file or URL"),Z.default.createElement(mn.FileSelector,{inline:!0,location:t,setLocation:r})),Z.default.createElement("div",null,Z.default.createElement(Le.Typography,null,"Tree file or URL"),Z.default.createElement(mn.FileSelector,{inline:!0,location:n,setLocation:o})),Z.default.createElement("div",null,Z.default.createElement(Le.Typography,null,"Annotation GFF file or URL (optional)"),Z.default.createElement(mn.FileSelector,{inline:!0,location:i,setLocation:a}))),Z.default.createElement("div",null,Z.default.createElement(Le.Button,{onClick:()=>{try{pa(e,t,n,i)}catch(l){console.error(l),e.setError(l)}},variant:"contained",color:"primary",disabled:!t&&!n},"Open")),Z.default.createElement("div",null,Z.default.createElement(Le.Typography,null,"Examples"),Z.default.createElement(Uh,{model:e}))))}),Kh=Vv;var Xh=(0,vl.observer)(function({model:e,error:t}){return Me.default.createElement("div",null,Me.default.createElement(wl.ErrorMessage,{error:t}),e.importForm?Me.default.createElement(Zh.Button,{variant:"contained",color:"primary",onClick:()=>{e.reset()}},"Return to import form"):null)}),jv=(0,vl.observer)(function({model:e,...t}){let{isLoading:r,dataInitialized:n,data:o,error:i,resetCount:a,msaFilehandle:s,treeFilehandle:l,importForm:c}=e,u=!!(o.msa||o.tree),f=!i&&!!(s||l||r);return Me.default.createElement("div",null,Me.default.createElement(qh.ErrorBoundary,{key:a,FallbackComponent:m=>Me.default.createElement(Xh,{model:e,error:m.error})},n?r?Me.default.createElement(to,{model:e,variant:"page"}):Me.default.createElement(zh,{model:e,...t}):u?Me.default.createElement(Xh,{model:e,error:i}):Me.default.createElement(Me.default.Fragment,null,f?Me.default.createElement(to,{model:e,variant:"page"}):null,c?Me.default.createElement("div",{style:{display:f?"none":void 0}},Me.default.createElement(Kh,{model:e})):i?Me.default.createElement(wl.ErrorMessage,{error:i}):null)))}),Sl=jv;var Q=y(R(),1),C0=y(Ya(),1),Ea=y(je(),1),E0=y(Jh(),1),wn=y(Or(),1);var H=y(ic(),1),Rr=y(tg(),1),P=y(je(),1),de=y(Or(),1);function rg(e,t,r){let n=Math.max(0,r-t+1);return e.map(([o,i])=>`>${o}
|
|
121
|
+
${i.slice(t-1,r).padEnd(n,"-")}
|
|
122
|
+
`).join("")}var Jt="rgb(128,179,230)",ng="#d88",Gv="rgb(192, 72, 192)",Uv="rgb(204, 77, 204)",og="#8f8",ig="rgb(26,204,26)",Yv="rgb(240, 128, 128)",Kv="rgb(240, 144, 72)",Xv="rgb(204, 204, 0)",ag="rgb(26, 179, 179)";function sg(e,t){let r=e.total(t),n=E=>e.count(t,E),o=n("W"),i=n("L"),a=n("V"),s=n("I"),l=n("M"),c=n("A"),u=n("F"),f=n("C"),m=n("H"),p=n("P"),h=n("R"),g=n("K"),b=n("Q"),v=n("E"),x=n("D"),T=n("T"),C=n("S"),M=n("G"),S=n("Y"),A=n("N"),I=o+i+a+s+l+c+u+f+m+p+S,F=g+h,N=b+v,O=v+x,B=T+C,d=E=>E/r,k={};return d(I)>.6&&(k.W=Jt,k.L=Jt,k.V=Jt,k.A=Jt,k.I=Jt,k.M=Jt,k.F=Jt,k.C=Jt),(d(F)>.6||d(g)>.8||d(h)>.8||d(b)>.8)&&(k.K=ng,k.R=ng),(d(F)>.6||d(N)>.5||d(v)>.8||d(b)>.8||d(x)>.8)&&(k.E=Gv),(d(F)>.6||d(O)>.5||d(g)>.8||d(h)>.8||d(b)>.8)&&(k.D=Uv),(d(A)>.5||d(S)>.85)&&(k.N=og),(d(F)>.6||d(N)>.6||d(b)>.85||d(v)>.85||d(g)>.85||d(h)>.85)&&(k.Q=og),(d(I)>.6||d(B)>.5||d(C)>.85||d(T)>.85)&&(k.S=ig,k.T=ig),d(f)>.85&&(k.C=Yv),M>0&&(k.G=Kv),p>0&&(k.P=Xv),(d(I)>.6||d(o)>.85||d(S)>.85||d(c)>.85||d(f)>.85||d(p)>.85||d(b)>.85||d(u)>.85||d(m)>.85||d(s)>.85||d(i)>.85||d(l)>.85||d(a)>.85)&&(k.H=ag,k.Y=ag),k}var lg={A:ft[500],C:ut[500],G:vt[500],T:tt[500],U:tt[500]},qv={none:{},nucleotide:lg,clustal:{G:"orange",P:"orange",S:"orange",T:"orange",H:"red",K:"red",R:"red",F:"blue",W:"blue",Y:"blue",I:"green",L:"green",M:"green",V:"green"},lesk:{G:"orange",A:"orange",S:"orange",T:"orange",C:"green",V:"green",I:"green",L:"green",P:"green",F:"green",Y:"green",M:"green",W:"green",N:"magenta",Q:"magenta",H:"magenta",D:"red",E:"red",K:"blue",R:"blue"},maeditor:{A:"lightgreen",G:"lightgreen",C:"green",D:"darkgreen",E:"darkgreen",N:"darkgreen",Q:"darkgreen",I:"blue",L:"blue",M:"blue",V:"blue",F:"#c8a2c8",W:"#c8a2c8",Y:"#c8a2c8",H:"darkblue",K:"orange",R:"orange",P:"pink",S:"red",T:"red"},percent_identity_dynamic:{},blosum62_dynamic:{},flower:{A:"#b18a51",C:"#ff5701",D:"#01a578",E:"#2da0a1",F:"#fa559d",G:"#b1c23c",H:"#0194f9",I:"#f27663",K:"#7fc3d7",L:"#df6e75",M:"#fe9daf",N:"#0bcec6",P:"#4fa32a",Q:"#7295ae",R:"#83bff1",S:"#b4bd9b",T:"#d2b576",V:"#fd997b",W:"#ff2ded",Y:"#c96ecf"},rainbow_dna:{A:"#3737f5",C:"#37f537",G:"#f5f537",T:"#f53737",U:"#f53737"},clustalx_protein:{A:"#197fe5",C:"#e57f7f",D:"#cc4ccc",E:"#cc4ccc",F:"#197fe5",G:"#e5994c",H:"#19b2b2",I:"#197fe5",K:"#e53319",L:"#197fe5",M:"#197fe5",N:"#19cc19",P:"#cccc00",Q:"#19cc19",R:"#e53319",S:"#19cc19",T:"#19cc19",V:"#197fe5",W:"#197fe5",Y:"#19b2b2"},clustalx_protein_dynamic:{},clustalx_dna:{A:"#e53319",C:"#197fe5",G:"#e5994c",T:"#19cc19",U:"#19cc19"},jbrowse_dna:lg,jalview_buried:{A:"#00a35c",R:"#00fc03",N:"#00eb14",D:"#00eb14",C:"#0000ff",Q:"#00f10e",E:"#00f10e",G:"#009d62",H:"#00d52a",I:"#0054ab",L:"#007b84",K:"#00ff00",M:"#009768",F:"#008778",P:"#00e01f",S:"#00d52a",T:"#00db24",W:"#00a857",Y:"#00e619",V:"#005fa0",B:"#00eb14",X:"#00b649",Z:"#00f10e"},jalview_hydrophobicity:{A:"#ad0052",R:"#0000ff",N:"#0c00f3",D:"#0c00f3",C:"#c2003d",Q:"#0c00f3",E:"#0c00f3",G:"#6a0095",H:"#1500ea",I:"#ff0000",L:"#ea0015",K:"#0000ff",M:"#b0004f",F:"#cb0034",P:"#4600b9",S:"#5e00a1",T:"#61009e",W:"#5b00a4",Y:"#4f00b0",V:"#f60009",B:"#0c00f3",X:"#680097",Z:"#0c00f3"},jalview_prophelix:{A:"#e718e7",R:"#6f906f",N:"#1be41b",D:"#778877",C:"#23dc23",Q:"#926d92",E:"#ff00ff",G:"#00ff00",H:"#758a75",I:"#8a758a",L:"#ae51ae",K:"#a05fa0",M:"#ef10ef",F:"#986798",P:"#00ff00",S:"#36c936",T:"#47b847",W:"#8a758a",Y:"#21de21",V:"#857a85",B:"#49b649",X:"#758a75",Z:"#c936c9"},jalview_propstrand:{A:"#5858a7",R:"#6b6b94",N:"#64649b",D:"#2121de",C:"#9d9d62",Q:"#8c8c73",E:"#0000ff",G:"#4949b6",H:"#60609f",I:"#ecec13",L:"#b2b24d",K:"#4747b8",M:"#82827d",F:"#c2c23d",P:"#2323dc",S:"#4949b6",T:"#9d9d62",W:"#c0c03f",Y:"#d3d32c",V:"#ffff00",B:"#4343bc",X:"#797986",Z:"#4747b8"},jalview_propturn:{A:"#2cd3d3",R:"#708f8f",N:"#ff0000",D:"#e81717",C:"#a85757",Q:"#3fc0c0",E:"#778888",G:"#ff0000",H:"#708f8f",I:"#00ffff",L:"#1ce3e3",K:"#7e8181",M:"#1ee1e1",F:"#1ee1e1",P:"#f60909",S:"#e11e1e",T:"#738c8c",W:"#738c8c",Y:"#9d6262",V:"#07f8f8",B:"#f30c0c",X:"#7c8383",Z:"#5ba4a4"},jalview_taylor:{A:"#ccff00",R:"#0000ff",N:"#cc00ff",D:"#ff0000",C:"#ffff00",Q:"#ff00cc",E:"#ff0066",G:"#ff9900",H:"#0066ff",I:"#66ff00",L:"#33ff00",K:"#6600ff",M:"#00ff00",F:"#00ff66",P:"#ffcc00",S:"#ff3300",T:"#ff6600",W:"#00ccff",Y:"#00ffcc",V:"#99ff00"},jalview_zappo:{A:"#ffafaf",R:"#6464ff",N:"#00ff00",D:"#ff0000",C:"#ffff00",Q:"#00ff00",E:"#ff0000",G:"#ff00ff",H:"#6464ff",I:"#ffafaf",L:"#ffafaf",K:"#6464ff",M:"#ffafaf",F:"#ffc800",P:"#ff00ff",S:"#00ff00",T:"#00ff00",W:"#ffc800",Y:"#ffc800",V:"#ffafaf"},cinema:{H:"blue",K:"blue",R:"blue",D:"red",E:"red",S:"green",T:"green",N:"green",Q:"green",A:"white",V:"white",L:"white",I:"white",M:"white",F:"magenta",W:"magenta",Y:"magenta",P:"brown",G:"brown",C:"yellow",B:"gray",Z:"gray",X:"gray","-":"gray",".":"gray"}},Tl=Po(qv,([e,t])=>[e,Po(t,([r,n])=>[r,Rt(n).toHex()])]),cg=new WeakMap;function ug(e){let t=cg.get(e);return t||(t=Po(e,([r,n])=>[r.toUpperCase(),n]),cg.set(e,t)),t}function fg({col:e,colStats:t,conservation:r,propertyConservation:n}){if(e>=t.numColumns)return;let o=t.total(e);if(!o)return;let i=t.gapCount(e),a=t.residueEntries(e).sort((l,c)=>c[1]-l[1]),s=a[0];return{col:e,total:o,gaps:i,gapFraction:i/o,conservation:r[e]??0,propertyConservation:n[e],consensusLetter:s?.[0]??"",consensusCount:s?.[1]??0,consensusFraction:s?s[1]/o:0,distribution:a}}function hn(e){let t=[],r=new Array(e.length),n=e.map((o,i)=>i).sort((o,i)=>e[o].startCol-e[i].startCol);for(let o of n){let{startCol:i,endCol:a}=e[o],s=t.findIndex(c=>c<=i),l=s===-1?t.length:s;t[l]=a,r[o]=l}return e.map((o,i)=>({...o,lane:r[i],laneCount:t.length}))}function dg(e,t){if(e<=0||t<20)return;let r=t/2/e,n=10**Math.floor(Math.log10(r)),o=r/n,i=(o>=5?5:o>=2?2:1)*n,a=i*e;return a>t?void 0:{step:i,px:a,label:`${Number(i.toPrecision(2))}`}}var Zv=[["#F8766D"],["#F8766D","#00BFC4"],["#F8766D","#00BA38","#619CFF"],["#F8766D","#7CAE00","#00BFC4","#C77CFF"],["#F8766D","#A3A500","#00BF7D","#00B0F6","#E76BF3"],["#F8766D","#B79F00","#00BA38","#00BFC4","#619CFF","#F564E3"],["#F8766D","#C49A00","#53B400","#00C094","#00B6EB","#A58AFF","#FB61D7"],["#F8766D","#CD9600","#7CAE00","#00BE67","#00BFC4","#00A9FF","#C77CFF","#FF61CC"]],mg=Zv,Cl={set1:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf","#999999"],dark2:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d","#666666"],okabeito:["#e69f00","#56b4e9","#009e73","#f0e442","#0072b2","#d55e00","#cc79a7","#000000"],tableau:["#4e79a7","#f28e2b","#e15759","#76b7b2","#59a14f","#edc948","#b07aa1","#ff9da7","#9c755f","#bab0ac"]},pg={okabeIto:"okabeito",tableau10:"tableau"};function El(e){return e===void 0?void 0:Object.hasOwn(Cl,e)?Cl[e]:Object.hasOwn(pg,e)?Cl[pg[e]]:void 0}function ha(e,t){let r=e.length,n=t??mg[r-1];return n&&r<=n.length?Object.fromEntries(e.map((o,i)=>[o,n[i]])):Object.fromEntries(e.map((o,i)=>[o,Rt({h:i*360/r,s:60,l:60}).toHex()]))}function Ml(e,t,r="image"){let n=e;return`${(n?.uri??n?.localPath??n?.name)?.split(/[?#]/)[0]?.split(/[/\\]/).pop()?.replace(/\.[^.]*$/,"")||r}.${t}`}var Qv="#d9d9d9",Jv=.1;function Al(e,t){return e.width??(e.kind==="features"?Zc:t.rowHeight)}function gg(e){if(typeof e!="object"||e===null)return;let t={};for(let[r,n]of Object.entries(e))typeof n=="string"?t[r]=n:(typeof n=="number"||typeof n=="boolean")&&(t[r]=String(n));return t}function ga(e,t,r){let n=new Map;for(let[o,i]of Object.entries(e)){let a=i?.[t],s=a===void 0?void 0:r(a);s&&n.set(o,s)}return n}function kl(e,t,r){let n=new Map,o=i=>{let a=n.get(i);if(a!==void 0)return a;let s=eu(i);return n.set(i,s),s};return new Map(e.map(i=>{let a=t?Ct(i,t.field):void 0,s=i.color??(a===void 0?void 0:t.colorOf(a))??(t?Qv:r[i.accession]);return[i,{fill:s,stroke:o(s)}]}))}function Rl(e,t){let r=new Map;for(let n of e){let o=Ct(n,t);o!==void 0&&r.set(n,o)}return r}function eS(e){let t=e.map(([i,a])=>{let s=hn(a.filter(c=>c.annotation.strand===-1)),l=hn(a.filter(c=>c.annotation.strand!==-1));return{name:i,forward:l,reverse:s}}),r=Math.max(0,...t.map(i=>i.forward[0]?.laneCount??0)),n=Math.max(0,...t.map(i=>i.reverse[0]?.laneCount??0)),o=r+n;return new Map(t.map(({name:i,forward:a,reverse:s})=>[i,[...a.map(l=>({...l,lane:r-1-l.lane,laneCount:o})),...s.map(l=>({...l,lane:r+l.lane,laneCount:o}))]]))}function hg(e,t){return e.position==="strandpile"?eS(t):new Map(t.map(([r,n])=>[r,hn(n)]))}function yg({panel:e,width:t,colWidth:r,domainBands:n,annotationsByRow:o,shifts:i}){if(e.x==="column")return hg(e,[...n].map(([f,m])=>[f,m.map(p=>({...p,xStart:p.startCol*r,xEnd:p.endCol*r}))]));let a=Object.entries(o).map(([f,m])=>{let p=i?.get(f)??0;return[f,m.map(h=>({annotation:h,start:h.start-1+p,end:h.end+p}))]}),s=1/0,l=-1/0;for(let[,f]of a)for(let{start:m,end:p}of f)s=Math.min(s,m),l=Math.max(l,p);let c=Math.max(1,t-1),u=l>s?c/(l-s):0;return hg(e,a.map(([f,m])=>[f,m.map(({annotation:p,start:h,end:g})=>({annotation:p,xStart:(h-s)*u,xEnd:(g-s)*u,startCol:h,endCol:g-(g-h)*Jv}))]))}var tS=new Set(["row","start","end"]),bg=new WeakMap;function xg(e){return e.map(t=>{let r=bg.get(t);if(r)return r;let n=rS(t);return bg.set(t,n),n})}function rS(e){let{row:t,start:r,end:n,name:o,description:i,type:a,strand:s,color:l}=e,c=o??`${t}:${r}-${n}`,u=Object.fromEntries(Object.entries(e).filter(([f,m])=>!tS.has(f)&&m!==void 0).map(([f,m])=>[f,String(m)]));return{id:t,accession:c,name:o??c,description:i??o??c,featureType:a,start:r,end:n,strand:s==="+"?1:s==="-"?-1:void 0,color:l,attributes:u}}var Tg=y(J0(),1),gn=y(je(),1),ya=y(Or(),1);var wg=y(ic(),1);function nS(e){return typeof e=="string"?e:e?.message}async function vg(e,t,{fetcher:r=wg.fetchAndMaybeUnzipText,controller:n=new AbortController}={}){try{return await r(e,{signal:n.signal,statusCallback:o=>{let i=nS(o);t(i?{msg:i,onCancel:()=>{n.abort()}}:void 0)}})}finally{t(void 0)}}function Sg(e){return e instanceof DOMException&&e.name==="AbortError"}function oS(e){let t;return{cancel(){let r=t!==void 0&&!t.ended;return t?.controller.abort(),t=void 0,r},begin(){t?.controller.abort();let r={controller:new AbortController,ended:!1};return t=r,{controller:r.controller,isCurrent:()=>!r.ended&&r===t&&(0,gn.isAlive)(e),end(){r.ended=!0}}}}}function uo(e,{what:t,getFilehandle:r,onLoad:n,setLoading:o,clearFilehandle:i,optional:a=!1}){let s=oS(e),l=()=>{s.cancel()&&(0,gn.isAlive)(e)&&e.setStatus(void 0)};(0,gn.addDisposer)(e,l),(0,gn.addDisposer)(e,(0,ya.autorun)(async()=>{let c=r();if(l(),!c){o?.(!1);return}let{controller:u,isCurrent:f,end:m}=s.begin();try{o?.(!0),a||e.setError(void 0);let p=await vg((0,Tg.openLocation)(c),h=>{f()&&e.setStatus(h)},{controller:u});f()&&(0,ya.transaction)(()=>{n(p),c.locationType==="BlobLocation"&&i?.()})}catch(p){f()&&(Sg(p)?i?.():(console.error(p),a?e.addWarning(`The ${t} did not load: ${p}`):e.setError(p)))}finally{f()&&o?.(!1),m()}}))}var yt=y(je(),1);function Cg(e=ko){return yt.types.model({tree:yt.types.maybe(yt.types.string),msa:yt.types.maybe(yt.types.string),treeMetadata:yt.types.maybe(yt.types.string),gff:yt.types.maybe(yt.types.string)}).actions(t=>({setTree(r){t.tree=r},setMSA(r){t.msa=r},setTreeMetadata(r){t.treeMetadata=r},setGFF(r){t.gff=r}})).postProcessSnapshot(t=>Object.fromEntries(Object.entries(t).map(([r,n])=>[r,n&&n.length>e?void 0:n])))}var Eg=y(je(),1);function Mg(){return Eg.types.model("DialogQueueSessionMixin",{}).volatile(()=>({queueOfDialogs:[]})).views(e=>({get DialogComponent(){return e.queueOfDialogs[0]?.[0]},get DialogProps(){return e.queueOfDialogs[0]?.[1]}})).actions(e=>({removeActiveDialog(){e.queueOfDialogs=e.queueOfDialogs.slice(1)},queueDialog(t){let[r,n]=t(()=>{this.removeActiveDialog()});e.queueOfDialogs=[...e.queueOfDialogs,[r,n]]}}))}var er=y(je(),1);var ba=y(je(),1);function D(e,t){return typeof ba.types.stripDefault=="function"?ba.types.stripDefault(e,t):ba.types.optional(e,t)}var iS=["stockholm","a3m","fasta","emf","clustal"];function Ag(){return er.types.model({bgColor:D(er.types.boolean,Lc),colorSchemeName:D(er.types.string,Eo),customColorScheme:er.types.frozen(),showColumnStats:D(er.types.boolean,Ic),msaFormat:er.types.maybe(er.types.enumeration("MSAFormat",iS))}).actions(e=>({setColorSchemeName(t){e.colorSchemeName=t,e.customColorScheme=void 0},setCustomColorScheme(t){e.customColorScheme=t},setBgColor(t){e.bgColor=t},setShowColumnStats(t){e.showColumnStats=t},setMSAFormat(t){e.msaFormat=t}}))}var Ie=y(je(),1);function kg(){return Ie.types.model({drawLabels:D(Ie.types.boolean,Dc),labelsAlignRight:D(Ie.types.boolean,Bc),treeAreaWidth:Ie.types.maybe(Ie.types.number),treeWidth:Ie.types.maybe(Ie.types.number),showBranchLen:D(Ie.types.boolean,Hc),treeOrder:D(Ie.types.enumeration("TreeOrder",[...Ao]),zc),drawTree:D(Ie.types.boolean,Wc),drawNodeBubbles:D(Ie.types.boolean,Vc),drawNodeLabels:D(Ie.types.boolean,jc),showTreeOverview:D(Ie.types.boolean,Gc),overviewHeight:D(Ie.types.number,Uc)}).actions(e=>({setTreeAreaWidth(t){e.treeAreaWidth=t===void 0?void 0:Math.round(t),e.treeWidth=void 0},setTreeWidth(t){e.treeWidth=t===void 0?void 0:Math.round(t)},setLabelsAlignRight(t){e.labelsAlignRight=t},setDrawTree(t){e.drawTree=t},setShowBranchLen(t){e.showBranchLen=t},setTreeOrder(t){e.treeOrder=t},setDrawNodeBubbles(t){e.drawNodeBubbles=t},setDrawNodeLabels(t){e.drawNodeLabels=t},setShowTreeOverview(t){e.showTreeOverview=t},setDrawLabels(t){e.drawLabels=t}}))}var Rg="ARNDCQEGHILKMFPSTWYVBZX*",aS=[[4,-1,-2,-2,0,-1,-1,0,-2,-1,-1,-1,-1,-2,-1,1,0,-3,-2,0,-2,-1,0,-4],[-1,5,0,-2,-3,1,0,-2,0,-3,-2,2,-1,-3,-2,-1,-1,-3,-2,-3,-1,0,-1,-4],[-2,0,6,1,-3,0,0,0,1,-3,-3,0,-2,-3,-2,1,0,-4,-2,-3,3,0,-1,-4],[-2,-2,1,6,-3,0,2,-1,-1,-3,-4,-1,-3,-3,-1,0,-1,-4,-3,-3,4,1,-1,-4],[0,-3,-3,-3,9,-3,-4,-3,-3,-1,-1,-3,-1,-2,-3,-1,-1,-2,-2,-1,-3,-3,-2,-4],[-1,1,0,0,-3,5,2,-2,0,-3,-2,1,0,-3,-1,0,-1,-2,-1,-2,0,3,-1,-4],[-1,0,0,2,-4,2,5,-2,0,-3,-3,1,-2,-3,-1,0,-1,-3,-2,-2,1,4,-1,-4],[0,-2,0,-1,-3,-2,-2,6,-2,-4,-4,-2,-3,-3,-2,0,-2,-2,-3,-3,-1,-2,-1,-4],[-2,0,1,-1,-3,0,0,-2,8,-3,-3,-1,-2,-1,-2,-1,-2,-2,2,-3,0,0,-1,-4],[-1,-3,-3,-3,-1,-3,-3,-4,-3,4,2,-3,1,0,-3,-2,-1,-3,-1,3,-3,-3,-1,-4],[-1,-2,-3,-4,-1,-2,-3,-4,-3,2,4,-2,2,0,-3,-2,-1,-2,-1,1,-4,-3,-1,-4],[-1,2,0,-1,-3,1,1,-2,-1,-3,-2,5,-1,-3,-1,0,-1,-3,-2,-2,0,1,-1,-4],[-1,-1,-2,-3,-1,0,-2,-3,-2,1,2,-1,5,0,-2,-1,-1,-1,-1,1,-3,-1,-1,-4],[-2,-3,-3,-3,-2,-3,-3,-3,-1,0,0,-3,0,6,-4,-2,-2,1,3,-1,-3,-3,-1,-4],[-1,-2,-2,-1,-3,-1,-1,-2,-2,-3,-3,-1,-2,-4,7,-1,-1,-4,-3,-2,-2,-1,-2,-4],[1,-1,1,0,-1,0,0,0,-1,-2,-2,0,-1,-2,-1,4,1,-3,-2,-2,0,0,0,-4],[0,-1,0,-1,-1,-1,-1,-2,-2,-1,-1,-1,-1,-2,-1,1,5,-2,-2,0,-1,-1,0,-4],[-3,-3,-4,-4,-2,-2,-3,-2,-2,-3,-2,-3,-1,1,-4,-3,-2,11,2,-3,-4,-3,-2,-4],[-2,-2,-2,-3,-2,-1,-2,-3,2,-1,-1,-2,-1,3,-3,-2,-2,2,7,-1,-3,-2,-1,-4],[0,-3,-3,-3,-1,-2,-2,-3,-3,3,1,-2,1,-1,-2,-2,0,-3,-1,4,-3,-2,-1,-4],[-2,-1,3,4,-3,0,1,-1,0,-3,-4,0,-3,-3,-2,0,-1,-4,-3,-3,4,1,-1,-4],[-1,0,0,1,-3,3,4,-2,0,-3,-3,1,-1,-3,-1,0,-1,-3,-2,-2,1,4,-1,-4],[0,-1,-1,-1,-2,-1,-1,-1,-1,-1,-1,-1,-1,-1,-2,0,0,-2,-1,-1,-1,-1,-1,-4],[-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,-4,1]],Ze=Rg.length,fo=Int8Array.from(aS.flat()),yn=new Int8Array(128).fill(-1);for(let e=0;e<Ze;e++){let t=Rg[e];yn[t.charCodeAt(0)]=e,yn[t.toLowerCase().charCodeAt(0)]=e}var xa=-2;function Pg(e,t){if(t>=e.length)return xa;let r=e.charCodeAt(t);return r-45>>>0<=1?xa:r<128?yn[r]:-1}function Pl(e,t){return e<0||t<0?-4:fo[e*Ze+t]}function sS(e,t){let r=Math.max(e.length,t.length),n=0,o=0,i=0;for(let l=0;l<r;l++){let c=Pg(e,l),u=Pg(t,l),f=c===xa,m=u===xa;f&&m||(n++,!(f||m)&&(o+=Pl(c,u),i+=Math.max(Pl(c,c),Pl(u,u))))}if(n===0||i<=0)return 1;let a=o/i,s=Math.max(.01,Math.min(1,a));return-Math.log(s)}function lS(e){let t=e.length,r=[];for(let n=0;n<t;n++){r[n]=[];for(let o=0;o<t;o++)n===o?r[n][o]=0:o<n?r[n][o]=r[o][n]:r[n][o]=sS(e[n][1],e[o][1])}return r}function cS(e,t){let r=e.length;if(r<2)return{name:t[0]};if(r===2){let s=e[0][1];return{left:{name:t[0]},right:{name:t[1]},leftLength:s/2,rightLength:s/2}}let n=[];for(let s=0;s<r;s++)n[s]=[...e[s]];let o=t.map(s=>({name:s})),i=r;for(;i>2;){let s=[];for(let x=0;x<o.length;x++)o[x]!==void 0&&s.push(x);let l=new Map;for(let x of s){let T=0;for(let C of s)x!==C&&(T+=n[x][C]);l.set(x,T)}let c=1/0,u=-1,f=-1;for(let x=0;x<s.length;x++)for(let T=x+1;T<s.length;T++){let C=s[x],M=s[T],S=(i-2)*n[C][M]-l.get(C)-l.get(M);S<c&&(c=S,u=C,f=M)}let m=n[u][f],p=l.get(u),h=l.get(f),g=m/2+(p-h)/(2*(i-2)),b=m-g;g=Math.max(0,g),b=Math.max(0,b);let v={left:o[u],right:o[f],leftLength:g,rightLength:b};for(let x of s)if(x!==u&&x!==f){let T=(n[u][x]+n[f][x]-m)/2;n[u][x]=Math.max(0,T),n[x][u]=Math.max(0,T)}o[f]=void 0,o[u]=v,i--}let a=[];for(let s=0;s<o.length;s++)o[s]!==void 0&&a.push(s);if(a.length===2){let s=a[0],l=a[1],c=n[s][l];return{left:o[s],right:o[l],leftLength:c/2,rightLength:c/2}}return o[a[0]]}function Og(e,t){return t===void 0?e:`${e}:${t.toFixed(6)}`}function uS(e){let t=[],r=[e];for(;r.length>0;){let o=r.pop();t.push(o),o.left&&r.push(o.left),o.right&&r.push(o.right)}let n=new Map;for(let o=t.length-1;o>=0;o--){let i=t[o];if(i.name!==void 0&&!i.left&&!i.right)n.set(i,`'${i.name.replaceAll("'","''")}'`);else{let a=i.left?Og(n.get(i.left),i.leftLength):"",s=i.right?Og(n.get(i.right),i.rightLength):"";n.set(i,`(${a},${s})`)}}return n.get(e)}function Fg(e){if(e.length<2)throw new Error("Need at least 2 sequences to build a tree");let t=e.map(o=>o[0]),r=lS(e),n=cS(r,t);return uS(n)+";"}var Lg={A:"hydrophobic",V:"hydrophobic",L:"hydrophobic",I:"hydrophobic",M:"hydrophobic",C:"hydrophobic",F:"aromatic",W:"aromatic",Y:"aromatic",H:"aromatic",K:"positive",R:"positive",D:"negative",E:"negative",S:"polar",T:"polar",N:"polar",Q:"polar",G:"special",P:"special"},Ol=[...new Set(Object.values(Lg))],fS=Math.log2(Ol.length),Ig=new Int8Array(Lo).fill(-1);for(let[e,t]of Object.entries(Lg))Ig[su(e)]=Ol.indexOf(t);function Dg(e){let t=new Float64Array(Ol.length);return Array.from({length:e.numColumns},(r,n)=>{let o=e.total(n),i=0;if(o){t.fill(0);let a=0;if(e.forEachResidue(n,(s,l)=>{let c=Ig[s];c>=0&&(t[c]+=l,a+=l)}),a>0){let s=0;for(let c of t)if(c>0){let u=c/a;s-=u*Math.log2(u)}let l=(o-a)/o;i=Math.max(0,1-s/fS)*(1-l)}}return i})}function bn(e,t){let r=[],n=[e];for(;n.length>0;){let o=n.pop();r.push(o);for(let i of o.children??[])t?.set(i,o),n.push(i)}return r}function Bg(e){return e.some(t=>t.length!==void 0)}function dS(e,t){return e.children?.length===2?e.children.find(r=>r!==t):void 0}function wa(e,t,r){let n=new Map,o=bn(e,n);if(!n.has(t))return e;let i=Bg(o),a=n.get(t)===e?dS(e,t):void 0,s=(t.length??0)+(a?.length??0),l=Math.min(Math.max(r??s/2,0),s),c=m=>i?m:void 0,u=[t];for(let m=n.get(t);m;m=n.get(m))u.push(m);let f;for(let m=u.length-1;m>=1;m--){let p=u[m],h=u[m-1],g=p.children.filter(b=>b!==h);if(f&&g.push(f),g.length===0)f=void 0;else if(m===u.length-1&&g.length===1){let b=g[0];f={...b,length:c((b.length??0)+(h.length??0)-(m===1?l:0))}}else f={...p,name:m===1?void 0:h.name,children:g,length:c((h.length??0)-(m===1?l:0))}}return{children:[{...t,length:c(l)},...f?[f]:[]]}}function Ng(e){let t=new Map,r=bn(e,t),n=r.filter(g=>!g.children?.length);if(n.length<2)return e;let o=Bg(r),i=g=>o?g.length??0:1;function a(g){let b=new Map([[g,0]]),v=new Map,x=[g];for(;x.length>0;){let T=x.pop(),C=b.get(T),M=t.get(T);M&&!b.has(M)&&(b.set(M,C+i(T)),v.set(M,T),x.push(M));for(let S of T.children??[])b.has(S)||(b.set(S,C+i(S)),v.set(S,T),x.push(S))}return{dist:b,via:v}}function s(g){return n.reduce((b,v)=>g.get(v)>g.get(b)?v:b)}let l=s(a(n[0]).dist),{dist:c,via:u}=a(l),f=s(c);if(f===l)return e;let m=c.get(f)/2,p=f,h=u.get(p);for(;c.get(h)>m;)p=h,h=u.get(p);return t.get(p)===h?wa(e,p,c.get(p)-m):wa(e,h,m-c.get(h))}function Fl(e,t){let r=0,n=e;for(;r<n;){let o=r+n>>>1;t(o)?n=o:r=o+1}return r}function _g(e,t){return t+Fl(e.length,r=>e[r]-r>t)}function $g(e,t){let r=Hg(e,t);return e[r]===t?void 0:t-r}function Hg(e,t){return Fl(e.length,r=>e[r]>=t)}function xn(e,t){return t-Hg(e,t)}function zg(e,t){if(!e)return;let r=Fl(e.length,n=>e[n]>=t);return e[r]===t?r:void 0}var Wg=/^-?\d+(\.\d+)?$/,Vg=/\d+|\D+/g;function pS(e,t){let r=e.match(Vg)??[],n=t.match(Vg)??[],o=Math.min(r.length,n.length);for(let i=0;i<o;i++){let a=r[i],s=n[i];if(a!==s){if(/^\d/.test(a)&&/^\d/.test(s)){let l=Number(a),c=Number(s);return l!==c?l<c?-1:1:a.length<s.length?-1:1}return a<s?-1:1}}return r.length-n.length}function jg(e,t){if(e===t)return 0;if(e===""||t==="")return e===""?1:-1;let r=Wg.test(e),n=Wg.test(t);if(r!==n)return r?-1:1;if(r){let o=Number(e)-Number(t);if(o!==0)return o<0?-1:1}return pS(e,t)}function mS(e){if(typeof e!="string")return e;if(El(e))return;let t=e.split(/,(?![^(]*\))/).map(r=>r.trim());return t.every(r=>Rt(r).isValid())?t:void 0}function hS(e,t){let r=mS(e);return r?new Map(t.slice(0,r.length).map((n,o)=>[n,r[o]])):new Map(Object.entries(ha(t,El(typeof e=="string"?e:void 0))))}function Gg(e,t){let r=new Set(t),n=new Set(e?.domain),o=[...n,...[...r].filter(a=>!n.has(a)).sort(jg)],i=hS(e?.range,o);return{kind:"categorical",colorOf:a=>i.get(a),legend:o.filter(a=>r.has(a)&&i.has(a)).map(a=>({id:a,label:a,color:i.get(a)}))}}function Il({spec:e,field:t,table:r}){let{scale:n="categorical",domain:o,range:i,title:a=t}=e;return JSON.stringify([r,n,o,i,a])}function Ug(e){let t=new Map;for(let r of e){let n=Il(r);t.set(n,[...t.get(n)??[],r])}return new Map([...t].map(([r,n])=>{let{spec:o,field:i}=n[0],a=Gg(o,n.flatMap(c=>c.values)),s=n[0].shown?new Set(n.flatMap(c=>c.shown??[])):void 0,l={...a,key:r,title:o.title??i,legend:s?a.legend.filter(c=>s.has(c.id)):a.legend};return[r,l]}))}function Ll(e){let{scale:t,legend:r,...n}=e;if(typeof t!="object"&&r===void 0)return e;let o=typeof t!="object"?t===void 0?{}:{scale:t}:t.map?{domain:Object.keys(t.map),range:Object.values(t.map)}:t.palette===void 0?{}:{range:t.palette};return{...r===void 0?{}:{title:r},...o,...n}}function Dl(e){return Ll(e)}function Bl(e){if(e.kind==="strip")return Ll(e);let t=e.encoding?.color;return t?{...e,encoding:{...e.encoding,color:Ll(t)}}:e}function Nl(e){let{max:t,colors:r,...n}=e;return t===void 0&&r===void 0?e:{...r?{encoding:{color:{domain:Object.keys(r),range:Object.values(r)}}}:{},...t===void 0?{}:{scales:{y:{domainMax:t}}},...n}}function _l(e,t){return Object.fromEntries(Gg(e,t).legend.map(r=>[r.id,r.color]))}function va(e){return"map"in e?e.map:_l(e,e.domain??[])}function Yg(e){let t=new Int32Array(e.length),r=0;for(let n=0;n<e.length;n++)e.charCodeAt(n)-45>>>0<=1||(t[r++]=n);return t.slice(0,r)}var Xg=20,gS=240,yS=50,Kg=96,bS=40,qg=new Float32Array(Ze*Ze);for(let e=0;e<Ze;e++){let t=1/0,r=-1/0;for(let n=0;n<Xg;n++){let o=fo[e*Ze+n];t=Math.min(t,o),r=Math.max(r,o)}for(let n=0;n<Ze;n++){let o=(fo[e*Ze+n]-t)/(r-t);qg[e*Ze+n]=Math.min(Math.max(o,0),1)}}var Sa=Int8Array.from({length:Lo},(e,t)=>{let r=Tn(t);return r.length===1?yn[r.charCodeAt(0)]:-1});function xS(e){let t=Math.round(Kg-(Kg-bS)*e);return`hsl(${gS}, ${yS}%, ${t}%)`}function Zg(e,t,r){let{counted:n,shaded:o,score:i}=r,a=[],s=0;e.forEachResidue(t,(c,u)=>{n(c)&&(a.push([c,u]),s+=u)});let l={};if(s<2)return l;for(let[c]of a)if(o(c)){let u=-i(c,c);for(let[f,m]of a)u+=m*i(c,f);l[Tn(c)]=xS(u/(s-1))}return l}var wS={counted:e=>Sa[e]>=0,shaded:e=>Sa[e]<Xg,score:(e,t)=>qg[Sa[e]*Ze+Sa[t]]},vS={counted:()=>!0,shaded:()=>!0,score:(e,t)=>e===t?1:0};function Qg(e,t){return Zg(e,t,wS)}function Jg(e,t){return Zg(e,t,vS)}var e0=100;function t0(e){let t=[],r=0,n=[[e,0]];for(let o=n.pop();o;o=n.pop()){let[i,a]=o,{children:s}=i;if(s.length>0)for(let l of s)n.push([l,a+1]);else t.push(i.name),r=Math.max(r,a)}return{names:t,depth:r}}function r0(e,t){let r=[];for(let a of e)r[a.length]=(r[a.length]??0)+1;let n=r.length;for(let a=0;n>0&&a<e0;)n--,a+=r[n]??0;let o=0,i=0;for(let a of e)(a.length>n||a.length===n&&i++<e0)&&(o=Math.max(o,mu(a,t)));return o}function n0(e){let t=new Map(e.map(n=>{let o=n.dist===void 0?void 0:Number(n.dist);return[n.id,{id:`${n.id}`,name:n.label||`${n.id}`,...o!==void 0&&Number.isFinite(o)?{length:o}:{},children:[]}]})),r;for(let n of e){let o=t.get(n.id),i=n.parent!==void 0?t.get(n.parent):void 0;i?i.children.push(o):r??=o}if(r===void 0)throw new Error("could not build tree from flat node list: no root found (input was empty or contains a parent cycle)");return r}var SS={$NODE_COLLAPSED:"collapsed",$NODE_COLOR:"color",$LABEL_BG_COLOR:"color","seq-id":"seqId","seq-title":"seqTitle","align-index":"alignIndex","accession-nbr":"accessionNbr","blast-name":"blastName","common-name":"commonName","leaf-count":"leafCount"};function Hl(e,t){let r=1,n=t+1;for(;n<e.length&&r>0;)e[n]==="{"?r++:e[n]==="}"&&r--,n++;return r===0?n:-1}function $l(e){let t=[],r=0;for(;r<e.length;){let n=e.indexOf("{",r);if(n===-1)break;let o=Hl(e,n);if(o===-1)break;t.push(e.slice(n+1,o-1).trim()),r=o}return t}function TS(e,t){let r=e.indexOf("{",t);if(r===-1)return;let n=Hl(e,r);return n===-1?void 0:e.slice(r+1,n-1).trim()}function o0(e){let t=e.replace(/\s+/g," ").replace(/\s*{\s*/g,"{").replace(/\s*}\s*/g,"}").replace(/\s*,\s*/g,",").replace(/\s*::\s*=\s*/g,"::=").replace(/^.*?::=/,""),r=CS(t),{fdict:n,nodes:o}=r;if(n===void 0||o===void 0)throw new Error(`invalid BioTreeContainer ASN.1: missing '${n===void 0?"fdict":"nodes"}' section`);let i=Object.fromEntries($l(n).flatMap(a=>{let s=ES(a);return s?[[s.id,SS[s.name]||s.name]]:[]}));return $l(o).flatMap(a=>{let s=MS(a);if(!s)return[];let{features:l=[],...c}=s;return[{...c,...Object.fromEntries(l.map(u=>[i[u.featureid],u.value]))}]})}function CS(e){let t={},r=e.trim();r.startsWith("{")&&r.endsWith("}")&&(r=r.slice(1,-1).trim());let n=0;for(;n<r.length;){for(;n<r.length&&/\s/.test(r[n]);)n++;if(n>=r.length)break;let o=n;for(;n<r.length&&/\w/.test(r[n]);)n++;if(n>=r.length||r[n]!==" "&&r[n]!=="{"){n=r.indexOf(",",n),n=n===-1?r.length:n+1;continue}let i=r.slice(o,n).trim();for(;n<r.length&&/\s/.test(r[n]);)n++;if(n>=r.length||r[n]!=="{"){n=r.indexOf(",",n),n=n===-1?r.length:n+1;continue}let a=Hl(r,n);if(a===-1)break;t[i]=r.slice(n+1,a-1).trim(),n=r.indexOf(",",a),n=n===-1?r.length:n+1}return t}function ES(e){let t=/id\s+(\d+)/.exec(e),r=/name\s+"((?:[^"\\]|\\.)*)"/s.exec(e);return!t||!r?null:{id:parseInt(t[1],10),name:r[1].replace(/\\"/g,'"').replace(/\\\\/g,"\\")}}function MS(e){let t=/id\s+(\d+)/.exec(e);if(!t)return null;let r=/parent\s+(\d+)/.exec(e),n=e.indexOf("features"),o=n!==-1?TS(e,n):void 0;return{id:parseInt(t[1],10),...r?{parent:parseInt(r[1],10)}:{},features:o?$l(o).flatMap(i=>{let a=AS(i);return a?[a]:[]}):[]}}function AS(e){let t=/featureid\s+(\d+)/.exec(e),r=/value\s+"((?:[^"\\]|\\.)*)"/s.exec(e);return!t||!r?null:{featureid:parseInt(t[1],10),value:r[1].replace(/\\"/g,'"').replace(/\\\\/g,"\\")}}function i0(e){return e.startsWith("BioTreeContainer")?n0(o0(e)):Cu(e.startsWith("SEQ")?sc(e).tree:e)}var kS=new Set(["collapse","focus","rotate"]);function RS(e){let t=new Map,r=0,n=(i,a)=>{for(let s=a.length-1;s>=0;s--)i.push(a[s])},o=[e];for(;o.length>0;){let i=o.pop();if(i.children?.length)n(o,i.children);else{let a=[i];for(;a.length>0;){let s=a.pop(),l=s.children??s._children;l?.length?n(a,l):t.set(s.data.name,{order:t.size,row:r})}r++}}return t}function PS(e,t,r,n){if(e.range){let[l,c]=e.range.map(m=>r.get(m)?n.get(m):void 0);if(l===void 0||c===void 0)return;let[u,f]=l.order<=c.order?[l,c]:[c,l];return f.order-u.order+1===e.tips?{rows:[u.row,f.row]}:void 0}let o=e.mrca?Io(t,e.mrca,r):void 0;if(!o)return;let i=nr(o);if(i.length!==e.tips)return;let a=1/0,s=-1/0;for(let l of i){let c=n.get(l.data.name)?.row;c!==void 0&&(a=Math.min(a,c),s=Math.max(s,c))}return a<=s?{rows:[a,s],nodeId:o.data.id}:void 0}function zl(e,t,r){let n=Ba(t),o=RS(r);return e.flatMap(i=>{let a=PS(i,t,n,o),s=kS.has(i.mark);return a&&!(s&&a.nodeId===void 0)?[{...a,mark:i.mark,color:Ro(i.color??Kc,Xc),markColor:i.color,label:i.label}]:[]})}var OS={input:void 0,branchLength:(e,t)=>(e.data.length??1)-(t.data.length??1),ladderize:(e,t)=>e.value-t.value,ladderizeReverse:(e,t)=>t.value-e.value};function Ta(e,{collapsed:t,rotated:r,order:n,showOnly:o}){let i=Pt(e,s=>s.children);uc(i,s=>s.children.length>0?0:1);let a=OS[n];if(a&&fc(i,a),r.length>0){let s=new Set(r);cc(i,l=>{s.has(l.data.id)&&l.children?.reverse()})}if(o){let s=or(i,l=>l.data.id===o);s&&(i=s)}for(let s of t){let l=or(i,c=>c.data.id===s);l&&(l.children?yu(l):l.parent?.children&&(l.parent.children=l.parent.children.filter(c=>c.data.id!==s)))}return i}function Wl(e,t){let r=Ba(e),n=Io(e,t,r);if(n!==e)return n;let o=new Set(t),i=nr(e).map(s=>s.data.name).filter(s=>!o.has(s)),a=Io(e,i,r);return a===e?void 0:a}function a0(e,t){let r=new Map;for(let i of bn(e).reverse())r.set(i,{name:i.name===i.id?void 0:i.name,length:i.length,children:i.children.map(a=>r.get(a))});let n=r.get(e);if(t==="midpoint")return En(Ng(n));let o=Wl(Pt(e,i=>i.children),t.outgroup);return o?En(wa(n,r.get(o.data))):e}function Vl(e){return[Math.round(e.xMin-.5),Math.round(e.xMax-.5)]}var FS=/[\s(),:;[\]']/;function LS(e){return FS.test(e)?`'${e.replaceAll("'","''")}'`:e}function s0(e){let t=new Map;for(let r of lc(e).reverse()){let{id:n,name:o,length:i}=r.data,a="";if(r.children){a=`(${r.children.map(s=>t.get(s)).join(",")})`;for(let s of r.children)t.delete(s)}r.children&&o===n||(a+=LS(o)),i!==void 0&&(a+=`:${i}`),t.set(r,a)}return`${t.get(e)};`}var l0={">":"<",")":"(","]":"[","}":"{"},IS=new Set(Object.values(l0));function c0(e){let t=new Map,r=[],n=(i,a)=>{let s=t.get(i);s?s.push(a):t.set(i,[a])},o=(i,a,s)=>{let l=t.get(i)?.pop();l!==void 0&&r.push({start:l,end:a,pseudoknot:s})};for(let i=0;i<e.length;i++){let a=e[i],s=l0[a];IS.has(a)?n(a,i):s?o(s,i,!1):a>="A"&&a<="Z"?n(a,i):a>="a"&&a<="z"&&o(a.toUpperCase(),i,!0)}return r.sort((i,a)=>i.start-a.start)}var VS={bar:40,logo:80,arc:50,ruler:20},u0=new Set(["bar","logo","arc"]),v0=new Set(["sequence-logo","position-ruler"]),jS=e=>`own:${e}`,GS="#4e79a7",US="#e15759",f0=new WeakMap;function YS(e){let t=f0.get(e);return t===void 0&&(t=JSON.stringify(e).length,f0.set(e,t)),t}function S0(e){return(e??[]).map(YS)}function KS(e,t){let r=S0(e),n=e?.filter((o,i)=>r[i]<=t);return n?.length?{columnTracks:n}:{}}var XS=new Set(["id","type","height","drawMsaLetters","scrollZoom","scrollZoomAxis","bgColor","colorSchemeName","customColorScheme","showColumnStats","drawLabels","labelsAlignRight","treeAreaWidth","treeWidth","showBranchLen","treeOrder","drawTree","drawNodeBubbles","drawNodeLabels","showTreeOverview","overviewHeight","turnedOffTracks","trackHeights","hideGaps","allowedGappyness","subFeatureRows","showDomainLegend","domainFill","embeddedMode"]);function d0(e,t){return e.get(t)??v0.has(t)}var p0=[],m0=[],jl=new Set(["featureFill","featureLabel"]);function h0(e,t){if(t.has(e))return e;let r=e.replaceAll(":","_");return t.has(r)?r:e}var g0=new WeakMap;function y0(e){return e.rowEnd-e.rowStart===e.structEnd-e.structStart}var qS=Math.log(1.3);function b0(e,t,r,n,o,i){if(e===r&&i){let s=n+Math.log(t);return Math.abs(s)<qS?{value:e,held:s}:{value:(0,H.clamp)(r*Math.exp(s),o,ir),held:0}}let a=(0,H.clamp)(e*t,o,ir);return(e-r)*(a-r)<0?{value:r,held:0}:{value:a,held:0}}function x0(e,t){return e-t>.5}function ZS(e,t){return!!e?.some(([r,n])=>t>=r&&t<=n)}function w0(e){let t=[];for(let r of e){let n=t.at(-1);n&&r<=n[1]+1?n[1]=Math.max(n[1],r):t.push([r,r])}return t}function QS(e){let[t]=e;return t!==void 0&&e.every(r=>r===t)?t:void 0}function JS({maxInlineSnapshotBytes:e=ko}={}){return P.types.compose(Mg(),kg(),Ag(),P.types.model("MsaView",{id:Rr.ElementId,showDomains:D(P.types.boolean,!0),domainFill:D(P.types.boolean,!0),showDomainLegend:D(P.types.boolean,!0),hideGaps:D(P.types.boolean,!0),allowedGappyness:D(P.types.number,100),subFeatureRows:D(P.types.boolean,!1),type:P.types.literal("MsaView"),drawMsaLetters:D(P.types.boolean,Mc),embeddedMode:D(P.types.boolean,!1),scrollZoom:D(P.types.boolean,Ac),scrollZoomAxis:D(P.types.enumeration("ScrollZoomAxis",[...kc]),Rc),height:D(P.types.number,550),rowHeight:D(P.types.number,16),scrollY:D(P.types.number,0),scrollX:D(P.types.number,0),colWidth:D(P.types.number,12),treeFilehandle:P.types.maybe(Rr.FileLocation),msaFilehandle:P.types.maybe(Rr.FileLocation),treeMetadataFilehandle:P.types.maybe(Rr.FileLocation),gffFilehandle:P.types.maybe(Rr.FileLocation),currentAlignment:D(P.types.number,0),collapsed:D(P.types.array(P.types.string),[]),rotated:D(P.types.array(P.types.string),[]),treeRoot:P.types.frozen(),showOnly:P.types.maybe(P.types.string),turnedOffTracks:D(P.types.map(P.types.boolean),{}),trackHeights:D(P.types.map(P.types.number),{}),columnTracks:D(P.types.array(P.types.snapshotProcessor(P.types.frozen(),{preProcessor:Nl})),[]),residueMappings:D(P.types.array(P.types.frozen()),[]),data:P.types.optional(Cg(e),{}),turnedOffFeatures:D(P.types.map(P.types.boolean),{}),relativeTo:P.types.maybe(P.types.string),highlightColumns:P.types.frozen(),highlights:D(P.types.array(P.types.frozen()),[]),features:D(P.types.array(P.types.frozen()),[]),selection:P.types.frozen(),region:P.types.frozen(),clades:D(P.types.array(P.types.frozen()),[]),encodings:D(P.types.array(P.types.snapshotProcessor(P.types.frozen(),{preProcessor:Dl})),[]),rowPanels:D(P.types.array(P.types.snapshotProcessor(P.types.frozen(),{preProcessor:Bl})),[])})).volatile(()=>({headerHeight:0,settingsOpen:!1,zoomHeld:{col:0,row:0},hideHeader:!1,importForm:!0,status:void 0,highResScaleFactor:typeof window>"u"?1:window.devicePixelRatio,zoomSnapshot:void 0,loadingMSA:!1,loadingTree:!1,volatileWidth:void 0,resizeHandleWidth:5,blockSize:500,mouseRow:void 0,mouseCol:void 0,mouseClickRow:void 0,mouseClickCol:void 0,hoveredTreeNode:void 0,highlightedColumns:void 0,transientHighlights:{},minimapHeight:56,marginLeft:20,error:void 0,loadWarnings:[],dismissedWarnings:[],resetCount:0,hostCarriesData:!1,annotations:[]})).actions(t=>({drawRelativeTo(r){t.relativeTo=r},setHideGaps(r){t.hideGaps=r},setAllowedGappyness(r){t.allowedGappyness=r},setLoadingMSA(r){t.loadingMSA=r},setLoadingTree(r){t.loadingTree=r},setWidth(r){t.volatileWidth=r},setSettingsOpen(r){t.settingsOpen=r},setHighResScaleFactor(r){t.highResScaleFactor=r},setHeight(r){t.height=r},setError(r){t.error=r},addWarning(r){t.loadWarnings.includes(r)||(t.loadWarnings=[...t.loadWarnings,r])},setHostCarriesData(r){t.hostCarriesData=r},setMousePos(r,n){t.mouseCol=r,t.mouseRow=n},setHighlightedColumns(r){t.highlightedColumns=r},setRegion(r){t.region=r},setHighlights(r){t.highlights.replace(r)},setFeatures(r){t.features.replace(r)},setSelection(r){let n=r&&{start:Math.min(r.start,r.end),end:Math.max(r.start,r.end),...r.rows?{rows:r.rows}:{}};(0,de.compareStructural)(n,t.selection)||(t.selection=n)},clearSelection(){this.setSelection(void 0)},setClades(r){t.clades.replace(r)},applyHighlight(r,n){t.transientHighlights={...t.transientHighlights,[r]:n}},clearHighlight(r){if(r in t.transientHighlights){let{[r]:n,...o}=t.transientHighlights;t.transientHighlights=o}},setShowDomains(r){t.showDomains=r},setDomainFill(r){t.domainFill=r},setCellFill(r){t.setBgColor(r!=="none"),r!=="none"&&(t.domainFill=r==="domain")},setShowDomainLegend(r){t.showDomainLegend=r},setSubFeatureRows(r){t.subFeatureRows=r},setMouseClickPos(r,n){t.mouseClickCol=r,t.mouseClickRow=n},setRowHeight(r){t.rowHeight=r,t.zoomHeld={...t.zoomHeld,row:0}},setColWidth(r){t.colWidth=r,t.zoomHeld={...t.zoomHeld,col:0}},setCurrentAlignment(r){r!==t.currentAlignment&&(0,de.transaction)(()=>{t.currentAlignment=r,t.collapsed.clear(),t.rotated.clear(),this.setShowOnly(void 0),this.drawRelativeTo(void 0),t.scrollX=0,t.scrollY=0})},toggleCollapsed(r){t.collapsed.includes(r)?t.collapsed.remove(r):t.collapsed.push(r)},toggleRotated(r){t.rotated.includes(r)?t.rotated.remove(r):t.rotated.push(r)},clearRotated(){t.rotated.clear()},setTreeRoot(r){(0,de.compareStructural)(t.treeRoot,r)||(0,de.transaction)(()=>{t.treeRoot=r,t.collapsed.clear(),t.rotated.clear(),this.setShowOnly(void 0)})},setShowOnly(r){t.showOnly=r},setData(r){t.data=(0,P.cast)(r)},setMSAFilehandle(r){t.msaFilehandle=(0,P.cast)(r)},setTreeFilehandle(r){t.treeFilehandle=(0,P.cast)(r)},setTreeMetadataFilehandle(r){t.treeMetadataFilehandle=(0,P.cast)(r)},setGFFFilehandle(r){t.gffFilehandle=(0,P.cast)(r)},setMSA(r){t.data.setMSA(r)},setTree(r){t.data.setTree(r)},setTreeMetadata(r){t.data.setTreeMetadata(r)},setGFF(r){t.data.setGFF(r)}})).views(t=>({get hideGapsEffective(){return t.hideGaps&&(t.collapsed.length>0||t.showOnly!==void 0||t.allowedGappyness<100)},get hostRestoresData(){return t.hostCarriesData},get viewInitialized(){return t.volatileWidth!==void 0},get width(){if(t.volatileWidth===void 0)throw new Error("not initialized");return t.volatileWidth-(t.settingsOpen?Co:0)}})).views(t=>({get colorScheme(){let{customColorScheme:r,colorSchemeName:n}=t;return r?ug(r):Tl[n]??Tl[Eo]},get dynamicColorSchemeName(){let{customColorScheme:r,colorSchemeName:n}=t;return!r&&n.includes("dynamic")?n:void 0},get header(){return this.MSA?.getHeader()??{}},get alignmentNames(){return this.MSA?.alignmentNames??[]},get noTree(){return!!this.tree.noTree},get noDomains(){return this.allAnnotations.length===0},get unshareableData(){if(t.hostRestoresData)return[];let{data:r}=t,n=S0(t.columnTracks).filter(o=>o>e).reduce((o,i)=>o+i,0);return[["alignment",r.msa,t.msaFilehandle],["tree",r.tree,t.treeFilehandle],["annotations",r.gff,t.gffFilehandle],["row metadata",r.treeMetadata,t.treeMetadataFilehandle]].flatMap(([o,i,a])=>!a&&i&&i.length>e?[{what:o,bytes:i.length}]:[]).concat(n?[{what:"data tracks",bytes:n}]:[]).sort((o,i)=>i.bytes-o.bytes)},menuItems(){return[]},get rowData(){let r=t.data.treeMetadata;if(!r)return{};try{let n=JSON.parse(r);return typeof n=="object"&&n!==null?Object.fromEntries(Object.entries(n).map(([o,i])=>[o,gg(i)])):{}}catch(n){return console.error("failed to parse rowData",n),{}}},rowDataOf(r){return this.rowData[r]},get rowFields(){let r=new Set;for(let n of Object.values(this.rowData))for(let o of Object.keys(n??{}))r.add(o);return[...r].sort((n,o)=>n.localeCompare(o))},get MSA(){let r=t.data.msa;return r?Eu(r,t.currentAlignment,t.msaFormat):null},get allAnnotations(){let r=this.MSA?.annotations??[];return t.features.length>0||r.length>0?[...t.annotations,...xg(t.features),...r]:t.annotations},get actuallyShowDomains(){return t.showDomains&&this.allAnnotations.length>0},get numColumns(){return(this.MSA?.getWidth()??0)-this.blanks.length},get inputTree(){let r=t.data.tree;return r?En(i0(r)):this.MSA?.getTree()??{noTree:!0,children:[],id:"empty",name:"empty"}},get tree(){let r=this.inputTree;return t.treeRoot&&!r.noTree?a0(r,t.treeRoot):r},get rowNames(){return this.leaves.map(r=>r.data.name)},get rowNamesSet(){return new Map(this.leaves.map((r,n)=>[r.data.name,n]))},get resolvedClades(){return t.clades.length===0?m0:zl(t.clades,Pt(this.tree,r=>r.children),this.root)},get cladeGutterWidth(){return hu(t.clades)},get treeDrawn(){return t.drawTree&&!this.noTree},get treeTips(){return t0(this.tree)},get maxTipLabelWidth(){return r0(this.treeTips.names.map(r=>this.rowDataOf(r)?.genome||r),Fc)},get labelColumnWidth(){return t.drawLabels?this.maxTipLabelWidth+(this.treeDrawn?10:6):0},get fittedTreeAreaWidth(){let r=t.marginLeft+this.cladeGutterWidth,n=this.treeDrawn?t.treeWidth??(0,H.clamp)(this.treeTips.depth*_c,Mo,Nc):0,o=r+n+this.labelColumnWidth,i=t.viewInitialized?this.numColumns>0?t.width*$c:t.width-this.rowPanelsWidth-t.resizeHandleWidth:1/0,a=Math.max(i,r+Math.min(n,Mo));return Math.ceil(Math.min(o,a))},get effectiveTreeAreaWidth(){return t.treeAreaWidth??this.fittedTreeAreaWidth},get effectiveTreeWidth(){let r=this.showTreeText?this.labelColumnWidth:0;return t.treeWidth??Math.max(Mo,Math.floor(this.effectiveTreeAreaWidth-t.marginLeft-this.cladeGutterWidth-r))},get showTreeText(){return t.drawLabels&&t.rowHeight>=Fa},get mouseOverRowName(){let{mouseRow:r}=t;return r===void 0?void 0:this.leaves[r]?.data.name},get hoveredInsertion(){let{mouseCol:r,mouseRow:n}=t;if(r!==void 0&&n!==void 0){let o=this.leaves[n]?.data.name;if(o){let i=this.insertionPositions.get(o)?.find(a=>a.pos===r);if(i)return{rowName:o,col:r,letters:i.letters}}}},get root(){return Ta(this.tree,{collapsed:t.collapsed,rotated:t.rotated,order:t.treeOrder,showOnly:t.showOnly})},get treeNewick(){return s0(Ta(this.tree,{collapsed:[],rotated:t.rotated,order:t.treeOrder}))},get treeOverviewHeight(){return t.showTreeOverview?t.overviewHeight:0},get treeOverviewLayout(){if(!t.showTreeOverview)return;let r=Da(Ta(this.tree,{collapsed:t.collapsed,rotated:t.rotated,order:t.treeOrder}),{rowHeight:1,treeWidth:1});return{root:r.root,numTips:r.leaves.length,maxDepthToLeaf:r.root.depthToLeaf,showBranchLen:t.showBranchLen&&r.rootToTipLength>0}},get treeOverviewClades(){let r=this.treeOverviewLayout;return!r||t.clades.length===0?m0:zl(t.clades,Pt(this.tree,n=>n.children),r.root)},get treeOverviewFocusRows(){let r=this.treeOverviewLayout;if(!r||!t.showOnly)return;let n=or(r.root,o=>o.data.id===t.showOnly);return n?Vl(n):void 0},treeOverviewHit(r){let n=this.treeOverviewLayout;if(!n)return;let{root:o,numTips:i}=n,a=i/t.overviewHeight,s=(0,H.clamp)(Math.floor(r*a),0,i-1),l=(0,H.clamp)(Math.ceil((r+1)*a)-1,s,i-1),c=bu(o,s+.5,l+.5);for(;!c.children&&c.parent;)c=c.parent;return c===o?void 0:{id:c.data.id,rows:Vl(c)}},get rowPanelsWidth(){return(0,H.sum)(t.rowPanels.map(r=>Al(r,t)))},get rowPanelsHeaderHeight(){return t.rowPanels.length>0?qc:0},get msaAreaWidth(){return t.width-this.effectiveTreeAreaWidth-this.rowPanelsWidth-t.resizeHandleWidth},get treeAreaWidthMinusMargin(){return this.effectiveTreeAreaWidth-t.marginLeft-this.cladeGutterWidth},get blanks(){let{hideGapsEffective:r,allowedGappyness:n}=t;if(!r)return[];let o=this.leaves.map(u=>this.MSA?.getRow(u.data.name)).filter(H.notEmpty);if(o.length===0)return[];let i=this.MSA?.getWidth()??0,a=o.length,s=Math.ceil(n/100*a),l=new Uint32Array(i);for(let u=0;u<a;u++){let f=o[u],m=f.length;for(let p=0;p<i;p++)(p>=m||f.charCodeAt(p)-45>>>0<=1)&&l[p]++}let c=[];for(let u=0;u<i;u++)l[u]>=s&&c.push(u);return c},get insertionPositions(){let{blanks:r,rows:n}=this;if(r.length===0)return new Map;let o=new Map;for(let[i,a]of n){let s=ru(r,a);s.length>0&&o.set(i,s)}return o},get rows(){let r=this.MSA;return this.leaves.map(n=>[n.data.name,r?.getRow(n.data.name)]).filter(n=>!!n[1])},get numRows(){return this.leaves.length},seqPosIndex(r){let n=this.MSA;if(!n)return;let o=g0.get(n);o||(o=new Map,g0.set(n,o));let i=o.get(r);if(!i){let a=n.getRow(r);if(!a)return;i=Yg(a),o.set(r,i)}return i},rowSequence(r){return this.MSA?.getRow(r)||void 0},get rowMap(){let r=this.MSA;return new Map(r?.getNames().map(n=>[n,r.getRow(n)]).filter(([,n])=>!!n))},get columns(){let r=this.columns2d;return new Map(this.rows.map((n,o)=>[n[0],r[o]]))},get columns2d(){let{hideGapsEffective:r}=t;return this.rows.map(([,n])=>(r?Oo(this.blanks,n):n).toUpperCase())},get fontSize(){return Oc(t.rowHeight)},get colStats(){return lu(this.columns2d,this.numColumns)},get sequenceType(){let r=this.colStats.lettersPresent,n=["N","R","Y","K","M","S","W"],o=new Set(["A","C","G","T",...n]),i=new Set(["A","C","G","U",...n]),a=r.size>0&&[...r].every(l=>o.has(l)),s=r.size>0&&[...r].every(l=>i.has(l));return a?"dna":s?"rna":"amino"},get colConsensus(){let{colStats:r}=this;return Array.from({length:r.numColumns},(n,o)=>{let i=r.total(o),a=0,s="";r.forEachResidue(o,(c,u)=>{u>a&&(a=u,s=Tn(c))});let l=i?a/i:0;return{letter:s,color:l>.4?`hsl(240, 30%, ${100*Math.max(1-l/3,.3)}%)`:void 0}})},get colClustalX(){let{colStats:r}=this;return Array.from({length:r.numColumns},(n,o)=>sg(r,o))},get colSimilarity(){let{colStats:r,sequenceType:n}=this,o=n==="amino"?Qg:Jg;return Array.from({length:r.numColumns},(i,a)=>o(r,a))},get conservation(){let{colStats:r,alphabetMaxBits:n}=this;return Array.from({length:r.numColumns},(o,i)=>{let a=r.total(i),s=r.gapCount(i);return a>s?Math.max(0,1-r.entropy(i)/n)*(1-s/a):0})},get alphabetMaxBits(){return cu(this.sequenceType)},get propertyConservation(){return this.sequenceType==="amino"?Dg(this.colStats):[]},get treeLayout(){let r=()=>this.effectiveTreeWidth;return Da(this.root,{get rowHeight(){return t.rowHeight},get treeWidth(){return r()}})},get hierarchy(){return this.treeLayout.root},get totalHeight(){return this.leaves.length*t.rowHeight},get leaves(){return this.treeLayout.leaves},get rootToTipLength(){return this.treeLayout.rootToTipLength},get pxPerBranchLength(){let r=this.rootToTipLength;return this.showBranchLenEffective&&r?this.effectiveTreeWidth/r:0},get maxDepthToLeaf(){return this.treeLayout.root.depthToLeaf},get allBranchesLength0(){return this.rootToTipLength===0},get showBranchLenEffective(){return this.allBranchesLength0?!1:t.showBranchLen}})).views(t=>({get totalWidth(){return t.numColumns*t.colWidth}})).views(t=>({get showMsaLetters(){return t.drawMsaLetters&&t.rowHeight>=Fa&&t.colWidth>=Pc&&t.colWidth>t.rowHeight/2}})).views(t=>{let r=new WeakMap;return{get columnTrackContent(){let{MSA:n,blanks:o,hideGapsEffective:i}=t,a=n?.getWidth()??0,s=(u,f,m)=>{if(!u.row)return f;let p=Array.from({length:a},()=>m),h=t.seqPosIndex(u.row);return f.forEach((g,b)=>{let v=h?.[b];v!==void 0&&(p[v]=g)}),p},l=u=>i?tu(o,u):u,c=(u,f)=>{let m=u.row?t.seqPosIndex(u.row)?.[f-1]:f-1;if(!(m===void 0||m<0||m>=a))return i?xn(o,m):m};return new Map(t.columnTracks.map(u=>{if(u.kind==="arc"){let m=(u.arcs??[]).map(p=>{let h=c(u,Math.min(p.start,p.end)),g=c(u,Math.max(p.start,p.end));return h!==void 0&&g!==void 0&&h<g?{start:h,end:g,color:p.color}:void 0}).filter(H.notEmpty);return[u.id,{arcs:m}]}if(u.kind==="bar"){let m=u.scales?.y?.domainMax??1,p=l(s(u,u.values??[],0)).map(h=>Math.min(1,Math.max(0,h/m)));return[u.id,{values:p}]}let f=l(s(u,(u.data??"").split("")," "));return[u.id,{data:f.join("")}]}))},trackHeight(n,o=n,i){return t.trackHeights.get(o)??i??VS[n]??t.rowHeight},columnTrackModel(n){let o=r.get(n);return o||(o=(0,de.computed)(()=>{let i=u0.has(n.kind)?jS(n.id):void 0,a=this.columnTrackContent.get(n.id);return{model:{id:n.id,name:n.name,kind:n.kind,heightKey:i,height:this.trackHeight(n.kind,i,n.height),barColor:n.color,arcColor:n.color,customColorScheme:n.encoding?.color?_l(n.encoding.color,[...n.encoding.color.domain??[],...new Set(n.data)]):void 0,data:a?.data,arcs:a?.arcs}}}),r.set(n,o)),o.get()},get columnTrackModels(){return t.columnTracks.map(n=>this.columnTrackModel(n))}}}).views(t=>({get secondaryStructureConsensus(){return t.MSA?.secondaryStructureConsensus},get secondaryStructureArcs(){let{blanks:r,hideGapsEffective:n}=t,o=this.secondaryStructureConsensus;if(o)return c0(n?Oo(r,o):o).map(({start:i,end:a,pseudoknot:s})=>({start:i,end:a,color:s?US:GS}))},get adapterTrackModels(){let{MSA:r,hideGapsEffective:n,blanks:o}=t,i=(r?.tracks??[]).filter(s=>!!s.data);if(i.length===0)return[];let{rowHeight:a}=t;return i.map(s=>({model:{...s,kind:"text",data:n?Oo(o,s.data):s.data,height:a}}))},get basePairTrackModels(){let r=this.secondaryStructureArcs;return r?.length?[{model:{id:"base-pairs",name:"Base pairs",kind:"arc",heightKey:"arc",height:t.trackHeight("arc"),arcs:r}}]:[]},get computedTrackModels(){return[{id:"conservation",name:"Conservation",kind:"bar",barColor:"gray"},...t.sequenceType==="amino"?[{id:"property-conservation",name:"Property conservation",kind:"bar",barColor:"#6a51a3"}]:[],{id:"sequence-logo",name:"Sequence logo",kind:"logo"},{id:"position-ruler",name:"Position",kind:"ruler"}].map(r=>({model:{...r,heightKey:u0.has(r.kind)?r.kind:void 0,height:t.trackHeight(r.kind)}}))},get referenceTrackModels(){let{relativeTo:r}=t,n=r===void 0?void 0:t.columns.get(r);return r===void 0||n===void 0?[]:[{model:{id:"reference-row",name:r,kind:"reference",data:n,height:t.rowHeight}}]},get tracks(){return[...this.adapterTrackModels,...this.basePairTrackModels,...t.columnTrackModels,...t.numColumns>0?this.computedTrackModels:[],...this.referenceTrackModels]},get turnedOnTracks(){return this.tracks.filter(r=>!d0(t.turnedOffTracks,r.model.id))},get showHorizontalScrollbar(){return x0(t.totalWidth,t.msaAreaWidth)},visibleColToRowLetter(r,n){return t.rowSequence(r)?.[this.visibleColToGlobalCol(n)]},visibleColToSeqPos(r,n){return zg(t.seqPosIndex(r),this.visibleColToGlobalCol(n))},visibleColToSeqPosOneBased(r,n){let o=this.visibleColToSeqPos(r,n);return o!==void 0?o+1:void 0},globalColToVisibleCol(r){let{blanks:n,hideGapsEffective:o}=t;return o?$g(n,r):r},visibleColToGlobalCol(r){let{blanks:n,hideGapsEffective:o}=t;return o?_g(n,r):r},seqPosToGlobalCol(r,n){let o=t.rowSequence(r);return o===void 0?void 0:t.seqPosIndex(r)?.[n]??(n===0?0:o.length)},seqEndToGlobalCol(r,n){let o=t.seqPosIndex(r);return o&&o.length>0?o[Math.min(n,o.length-1)]:void 0},seqPosToVisibleCol(r,n){let o=this.seqPosToGlobalCol(r,n);return o===void 0?void 0:this.globalColToVisibleCol(o)},visibleSpan({row:r,start:n,end:o}){let{blanks:i}=t,a=Math.max(1,Math.floor(n)),s=Math.ceil(o),l=a-1,c=Math.min(s,t.MSA?.getWidth()??s)-1;if(r!==void 0){let m=this.seqPosToGlobalCol(r,a-1),p=this.seqEndToGlobalCol(r,s-1);if(m===void 0||p===void 0)return;l=m,c=p}let u=this.globalColToVisibleCol(l)??xn(i,l),f=this.globalColToVisibleCol(c)??xn(i,c)-1;return u<=f?{startCol:u,endCol:f}:void 0},get residueMappingProblems(){let r=[];for(let n of t.residueMappings){let o={row:n.row,structureId:n.structure.id},i=t.seqPosIndex(n.row)?.length;if(i===void 0){r.push({...o,scope:"mapping",reason:"no such row in the alignment"});continue}if(n.rowLength!==void 0&&n.rowLength!==i){r.push({...o,scope:"mapping",reason:`computed against a ${n.rowLength}-residue row; this one has ${i}`});continue}let a=n.segments.find(s=>s.rowEnd>i||s.rowStart<1);if(a){r.push({...o,scope:"mapping",reason:`segment ${a.rowStart}-${a.rowEnd} does not fit a ${i}-residue row`});continue}for(let s of n.segments)y0(s)||r.push({...o,scope:"segment",reason:`segment ${s.rowStart}-${s.rowEnd} maps to ${s.structStart}-${s.structEnd}, which is a different length`})}return r},get usableResidueMappings(){let r=new Set(this.residueMappingProblems.filter(n=>n.scope==="mapping").map(n=>`${n.row}\0${n.structureId}`));return t.residueMappings.filter(n=>!r.has(`${n.row}\0${n.structure.id}`)).map(n=>({...n,segments:n.segments.filter(y0)}))},get mappedStructures(){return this.usableResidueMappings.map(r=>({row:r.row,structure:r.structure}))},structureResidue(r,n,o){let i=[];for(let a of this.usableResidueMappings){if(a.row!==r||o!==void 0&&a.structure.id!==o)continue;let s=a.segments.find(l=>n>=l.rowStart&&n<=l.rowEnd);if(s){let l=s.structStart+(n-s.rowStart);i.push({structure:a.structure,position:l,observed:!ZS(a.unobserved,l)})}}return i.length===1?i[0]:void 0},rowResidue(r,n,o){let i=[];for(let a of this.usableResidueMappings){if(a.structure.id!==r||o!==void 0&&a.structure.asymId!==void 0&&a.structure.asymId!==o)continue;let s=a.segments.find(l=>n>=l.structStart&&n<=l.structEnd);s&&i.push({rowName:a.row,seqPos:s.rowStart+(n-s.structStart)})}return i.length===1?i[0]:void 0}})).views(t=>({get treeScaleBar(){return dg(t.pxPerBranchLength,t.effectiveTreeAreaWidth-t.marginLeft*2)},get topBandHeight(){return Math.max(t.showHorizontalScrollbar?t.minimapHeight:0,t.rowPanelsHeaderHeight,t.treeOverviewHeight+(this.treeScaleBar?Sn:0))},get msaAreaHeight(){return t.height-this.topBandHeight-t.headerHeight-this.totalTrackAreaHeight},get totalTrackAreaHeight(){return(0,H.sum)(t.turnedOnTracks.map(r=>r.model.height))},get annotationTypes(){let r=new Map;for(let n of t.allAnnotations)r.has(n.accession)||r.set(n.accession,n);return r},get defaultOffAccessions(){return new Set(t.allAnnotations.filter(r=>r.defaultOff).map(r=>r.accession))},featureOff(r){return t.turnedOffFeatures.get(r)??this.defaultOffAccessions.has(r)},get filteredAnnotations(){return t.allAnnotations.filter(r=>!this.featureOff(r.accession))},get cellFill(){return t.bgColor?t.actuallyShowDomains&&t.domainFill&&this.filteredAnnotations.length>0?"domain":"residue":"none"},get annotationsByRow(){let{rowNamesSet:r}=t;return(0,H.groupBy)(this.filteredAnnotations,n=>h0(n.id,r))}})).views(t=>({get showVerticalScrollbar(){return x0(t.totalHeight,t.msaAreaHeight)}})).views(t=>({get dataInitialized(){return!!(t.data.msa||t.data.tree)&&!t.error},get blocksX(){return no({viewportSize:t.msaAreaWidth,viewportPos:-t.scrollX,blockSize:t.blockSize,mapSize:t.totalWidth})},get blocksY(){return no({viewportSize:t.msaAreaHeight,viewportPos:-t.scrollY,blockSize:t.blockSize,mapSize:t.totalHeight})}})).views(t=>({get verticalScrollbarWidth(){return t.showVerticalScrollbar?20:0},get msaCanvasWidth(){return t.msaAreaWidth-this.verticalScrollbarWidth},get maxScrollX(){return Math.min(-t.totalWidth+this.msaCanvasWidth,0)},get blocks2d(){return t.blocksY.flatMap(r=>t.blocksX.map(n=>[n,r]))},get wheelZooming(){return t.zoomSnapshot!==void 0},get isLoading(){return t.loadingMSA||t.loadingTree},get dataWarnings(){let{annotations:r,rowNamesSet:n}=t;return t.dataInitialized&&r.length>0&&!r.some(o=>n.has(h0(o.id,n)))?[`0 of ${r.length} annotations name a row in this alignment`]:[]},get warnings(){return[...t.loadWarnings,...this.dataWarnings.filter(r=>!t.dismissedWarnings.includes(r))]},get maxScrollY(){return Math.min(-t.totalHeight+t.msaAreaHeight,0)},get wheelZoomAxis(){return t.scrollZoom?t.scrollZoomAxis:"both"}})).actions(t=>({setDrawMsaLetters(r){t.drawMsaLetters=r},clearWarnings(){t.loadWarnings=[],t.dismissedWarnings=t.dataWarnings},setScrollZoom(r){t.scrollZoom=r},setScrollZoomAxis(r){t.scrollZoomAxis=r},setHoveredTreeNode(r){if(r===t.hoveredTreeNode?.nodeId)return;if(!r){t.hoveredTreeNode=void 0;return}let n=or(t.hierarchy,o=>o.data.id===r);t.hoveredTreeNode=n?{nodeId:r,descendantNames:nr(n).map(o=>o.data.name)}:void 0},calculateNeighborJoiningTreeFromMSA(){let r=[...t.rowMap];if(r.length<2)throw new Error("Need at least 2 sequences to build a tree");if(r.length>ar)throw new Error(`Neighbor joining here is capped at ${ar} sequences and this alignment has ${r.length}. Build the tree with FastTree or IQ-TREE and open it alongside the alignment: https://gmod.org/JBrowseMSA/tutorials/protein_family`);this.replaceTree(Fg(r))},rerootAt(r){let n=or(Pt(t.tree,i=>i.children),i=>i.data.id===r);if(!n?.parent)return;let o=Wl(Pt(t.inputTree,i=>i.children),nr(n).map(i=>i.data.name));if(o){let i=nr(o);t.setTreeRoot({outgroup:[...new Set([i[0].data.name,i.at(-1).data.name])]})}},replaceTree(r){(0,de.transaction)(()=>{t.setTreeFilehandle(void 0),t.collapsed.clear(),t.rotated.clear(),t.setShowOnly(void 0),t.setTree(r)})},resetZoom(){t.setColWidth(12),t.setRowHeight(16)},zoomAtCenter(r,n="both"){this.zoomToPos(r,t.msaCanvasWidth/2,t.msaAreaHeight/2,n)},zoomIn(){this.zoomAtCenter(1.5)},zoomOut(){this.zoomAtCenter(.75)},zoomToPos(r,n,o,i="both"){(0,de.transaction)(()=>{let a=(-t.scrollX+n)/t.colWidth,s=(-t.scrollY+o)/t.rowHeight,l=i!=="both"||t.colWidth===12&&t.rowHeight===16;if(i!=="vertical"){let{value:p,held:h}=b0(t.colWidth,r,12,t.zoomHeld.col,So,l);t.colWidth=p,t.zoomHeld={...t.zoomHeld,col:h}}if(i!=="horizontal"){let{value:p,held:h}=b0(t.rowHeight,r,16,t.zoomHeld.row,To,l);t.rowHeight=p,t.zoomHeld={...t.zoomHeld,row:h}}t.scrollX=(0,H.clamp)(n-a*t.colWidth,t.maxScrollX,0);let c=o-s*t.rowHeight,u=Math.max(0,-t.maxScrollY),f=t.totalHeight-u,m=f>0?(0,H.clamp)(1-u/f,0,1):1;t.scrollY=(0,H.clamp)(c*(1-m),t.maxScrollY,0)})},wheelZoomToPos(r,n,o){t.zoomSnapshot??=qs(t,!1),this.zoomToPos(r,n,o,t.wheelZoomAxis),Om(t,t.zoomSnapshot)||(t.zoomSnapshot=qs(t,!0))},endWheelZoom(){t.zoomSnapshot=void 0},doScrollY(r){this.setScrollY(t.scrollY+r)},setScrollY(r){t.scrollY=(0,H.clamp)(r,t.maxScrollY,0)},setAnnotations(r){t.annotations=r},applyGFFText(r){this.setAnnotations(Au(Mu(r)))},doScrollX(r){this.setScrollX(t.scrollX+r)},setScrollX(r){t.scrollX=(0,H.clamp)(r,t.maxScrollX,0)},setColumnTracks(r){t.columnTracks.replace(r.map(Nl))},setRowData(r){t.data.setTreeMetadata(JSON.stringify(r))},setEncodings(r){t.encodings.replace(r.map(Dl))},setRowPanels(r){t.rowPanels.replace(r.map(Bl))},setResidueMappings(r){t.residueMappings.replace(r)},toggleTrack(r){t.turnedOffTracks.set(r,!d0(t.turnedOffTracks,r))},setTracksShown(r,n){for(let o of r)v0.has(o)===!n?t.turnedOffTracks.delete(o):t.turnedOffTracks.set(o,!n)},setStatus(r){t.status=r}})).views(t=>({cellAt(r,n){let o=t.visibleColToGlobalCol(r),i=n===void 0?void 0:t.leaves[n]?.data.name;return i===void 0?{column:o+1}:{column:o+1,row:i,residue:t.visibleColToSeqPosOneBased(i,r),letter:t.rowSequence(i)?.[o]}},get hoveredCell(){let{mouseCol:r,mouseRow:n}=t;return r===void 0?void 0:this.cellAt(r,n)},get clickedCell(){let{mouseClickCol:r,mouseClickRow:n}=t;return r===void 0?void 0:this.cellAt(r,n)},get viewport(){let{scrollX:r,colWidth:n,numColumns:o,viewInitialized:i}=t;if(o===0||!i)return;let{xStart:a,xEnd:s}=nu({offsetX:-r,blockWidth:t.msaCanvasWidth,colWidth:n}),l=Math.max(0,Math.min(s,o)-1);return{startColumn:t.visibleColToGlobalCol(Math.min(a,l))+1,endColumn:t.visibleColToGlobalCol(l)+1}},get segmentDomainTypes(){return[...t.annotationTypes.values()].filter(r=>Pa.has(r.featureType??"")).toSorted((r,n)=>r.start-n.start)},get categoricalDomainTypes(){let r=[...t.annotationTypes.values()].filter(o=>!Pa.has(o.featureType??"")),n=[...new Set(r.map(o=>o.featureType))];return r.toSorted((o,i)=>n.indexOf(o.featureType)-n.indexOf(i.featureType))},get fillPalette(){let r=Object.fromEntries(this.segmentDomainTypes.map((o,i)=>[o.accession,Oa[i%Oa.length]])),n=ha(this.categoricalDomainTypes.map(o=>o.accession));return{...r,...n}},get featureFillEncoding(){return this.resolvedEncodings.find(r=>r.channel==="featureFill")},get featureColors(){return kl(t.filteredAnnotations,this.featureFillEncoding,this.fillPalette)},get featureLabels(){let r=this.resolvedEncodings.find(n=>n.channel==="featureLabel");return r?Rl(t.filteredAnnotations,r.field):void 0},get segmentLabels(){return new Map(this.segmentDomainTypes.map((r,n)=>{let o=/(\d+)\s*$/.exec(r.name);return[r.accession,o?o[1]:`${n+1}`]}))},get visibleDomainTypes(){return this.categoricalDomainTypes.filter(r=>!t.featureOff(r.accession)).toSorted((r,n)=>r.start-n.start)},get legends(){let{featureFillEncoding:r,fillPalette:n,visibleDomainTypes:o}=this,i=new Map,a=new Set,s=(l,c,u,f=!1)=>{let m=l??"domains";if(u.length===0||i.has(m))return;let p=f||l===void 0?"domains":`rowData-${c}`,h=p;for(let g=2;a.has(h);g++)h=`${p}-${g}`;a.add(h),i.set(m,{id:h,title:c??"Domains",entries:u})};t.actuallyShowDomains&&t.numColumns>0&&s(r?.key,r?.title,r?r.legend:o.map(l=>({id:l.accession,label:l.name,color:l.color??n[l.accession]})),!0);for(let{channel:l,key:c,title:u,legend:f}of this.resolvedEncodings)jl.has(l)||s(c,u,f);for(let{legendKey:l,legendTitle:c,legend:u}of this.rowPanelScales)s(l,c,u);return[...i.values()]},get domainUnderline(){return t.actuallyShowDomains&&t.cellFill!=="domain"&&!t.subFeatureRows&&t.showMsaLetters},get domainBands(){let{blanks:r}=t,n=new Map;for(let[o,i]of Object.entries(t.annotationsByRow)){let a=i.toSorted((s,l)=>La(l)-La(s)).map(s=>{let l=t.seqPosToGlobalCol(o,s.start-1),c=t.seqEndToGlobalCol(o,s.end-1);if(l===void 0||c===void 0)return;let u=xn(r,l),f=xn(r,c+1);return f>u?{annotation:s,startCol:u,endCol:f}:void 0}).filter(H.notEmpty).map((s,l)=>({...s,stackIndex:l}));a.length>0&&n.set(o,hn(a))}return n},get domainBandsByStart(){return new Map([...this.domainBands].map(([r,n])=>[r,n.toSorted((o,i)=>o.startCol-i.startCol)]))},get mouseOverDomains(){let{mouseCol:r}=t,n=t.mouseOverRowName;if(n===void 0||r===void 0)return p0;let o=(this.domainBands.get(n)??[]).filter(i=>r>=i.startCol&&r<i.endCol).map(i=>i.annotation);return o.length>0?o:p0},get referenceRowIndex(){let{relativeTo:r}=t;return r===void 0?void 0:t.rowNamesSet.get(r)},get hoveredRowIndices(){let{hoveredTreeNode:r,rowNamesSet:n}=t;return r?r.descendantNames.map(o=>n.get(o)).filter(H.notEmpty):[]},get highlightedColumnRuns(){return w0([...t.highlightedColumns??[]].sort((r,n)=>r-n)).map(([r,n])=>({start:r,end:n}))},fillHighlightLabel(r,n,o){if(!r.includes("{"))return r;let i=n&&o!==void 0?t.seqPosIndex(n)?.[o-1]:void 0,a=n&&i!==void 0?t.MSA?.getRow(n)[i]??"":"";return r.replaceAll("{residue}",a).replaceAll("{position}",o===void 0?"":String(o))},get resolvedHighlights(){let{rowNamesSet:r,transientHighlights:n}=t;return[...t.highlights,...Object.values(n).flat()].flatMap(({row:i,rows:a,start:s,end:l,label:c,color:u})=>{let f={label:c&&this.fillHighlightLabel(c,i,s),color:u};if(a){let p=a.map(h=>r.get(h)).filter(H.notEmpty);return p.length?[{...f,rowIndices:p}]:[]}if(s===void 0||l===void 0)return[];let m=t.visibleSpan({row:i,start:s,end:l});return m?[{...f,...m,rowIndices:[]}]:[]})},get resolvedSelection(){let{selection:r,rowNamesSet:n,numRows:o}=t,i=r&&t.visibleSpan({start:r.start,end:r.end});if(!r||!i)return;let a=r.rows?w0(r.rows.map(s=>n.get(s)).filter(H.notEmpty).sort((s,l)=>s-l)):o>0?[[0,o-1]]:[];return a.length>0?{...i,rowRuns:a}:void 0},get selectionSize(){let r=this.resolvedSelection,n=this.selectionFileSpan;return r&&n?{columns:n.end-n.start+1,rows:(0,H.sum)(r.rowRuns.map(([o,i])=>i-o+1))}:void 0},get selectionFileSpan(){let{selection:r}=t,n=t.MSA?.getWidth()??0,o=Math.max(1,Math.floor(r?.start??0)),i=Math.min(n,Math.ceil(r?.end??0));return r&&o<=i?{start:o,end:i}:void 0},get selectionFasta(){let{rowNames:r}=t,n=this.resolvedSelection,o=this.selectionFileSpan;if(!n||!o)return"";let i=n.rowRuns.flatMap(([a,s])=>r.slice(a,s+1)).flatMap(a=>{let s=t.rowSequence(a);return s===void 0?[]:[[a,s]]});return rg(i,o.start,o.end)},columnStatsAt(r){let{colStats:n,conservation:o,propertyConservation:i}=t;return fg({col:r,colStats:n,conservation:o,propertyConservation:i})},getRowData(r){return{data:t.MSA?.getRowData(r),rowData:t.rowDataOf(r)}},get resolvedEncodings(){return t.encodings.map(r=>({...r,...this.scaleOf(r,jl.has(r.channel)?"features":"rows")}))},get resolvedScales(){let r=Object.values(t.rowData),n=(i,a)=>i.map(s=>Ct(s,a)).filter(H.notEmpty),o=(i,a)=>({spec:i,field:i.field,table:a,...a==="rows"?{values:r.map(s=>s?.[i.field]).filter(H.notEmpty)}:{values:n(t.allAnnotations,i.field),shown:n(t.filteredAnnotations,i.field)}});return Ug([...t.encodings.map(i=>o(i,jl.has(i.channel)?"features":"rows")),...t.rowPanels.flatMap(i=>i.kind==="strip"?[o(i,"rows")]:i.encoding?.color?[o(i.encoding.color,"features")]:[])])},scaleOf(r,n){return this.resolvedScales.get(Il({spec:r,field:r.field,table:n}))},get rowPanelScales(){let{rowData:r}=t,{fillPalette:n,featureFillEncoding:o,featureLabels:i}=this,a=t.filteredAnnotations;return t.rowPanels.map(s=>{if(s.kind==="features"){let m=s.encoding?.color,p=m?{field:m.field,...this.scaleOf(m,"features")}:o,h=s.encoding?.label;return{kind:s.kind,x:s.x,header:s.header??"",field:p?.field,legendKey:p?.key,legendTitle:p?.title,colors:m?kl(a,p,n):this.featureColors,labels:h?Rl(a,h):i,legend:p?.legend??this.visibleDomainTypes.map(g=>({id:g.accession,label:g.name,color:g.color??n[g.accession]}))}}let{colorOf:l,legend:c,key:u,title:f}=this.scaleOf(s,"rows");return{kind:s.kind,field:s.field,header:s.header??s.field,legendKey:u,legendTitle:f,colors:ga(r,s.field,l),legend:c}})},get resolvedRowPanels(){let r=this.rowPanelScales,n=0;return t.rowPanels.map((o,i)=>{let a=Al(o,t),s={id:`rowpanel-${i}`,width:a,offsetX:n};if(n+=a,o.kind==="features"){let l=o.transform?.find(c=>c.type==="align");return{...s,...r[i],spans:yg({panel:o,width:a,colWidth:t.colWidth,domainBands:this.domainBands,annotationsByRow:t.annotationsByRow,shifts:l?this.featureAlignShifts.get(l.on):void 0})}}return{...s,...r[i]}})},get featureAlignShifts(){let r=new Set(t.rowPanels.flatMap(n=>n.kind==="features"&&n.x==="position"?(n.transform??[]).filter(o=>o.type==="align").map(o=>o.on):[]));return new Map([...r].map(n=>[n,new Map(Object.entries(t.annotationsByRow).map(([o,i])=>{let a=i.find(s=>ra(s)===n);return a?[o,1-a.start]:void 0}).filter(H.notEmpty))]))},get tipLabelColors(){let r=this.resolvedEncodings.find(n=>n.channel==="tipLabel");return r?ga(t.rowData,r.field,r.colorOf):void 0},get rowTints(){let r=this.resolvedEncodings.find(o=>o.channel==="rowTint");if(!r)return;let n=ga(t.rowData,r.field,r.colorOf);return t.rowNames.map(o=>{let i=n.get(o);return i&&Ro(i,Yc)})},get branchColors(){let r=this.resolvedEncodings.find(a=>a.channel==="branch");if(!r)return;let n=bn(t.tree),o=new Map,i=new Map;for(let a=n.length-1;a>=0;a--){let s=n[a],l=s.children.length>0?QS(s.children.map(u=>o.get(u))):t.rowDataOf(s.name)?.[r.field];o.set(s,l);let c=l===void 0?void 0:r.colorOf(l);c&&i.set(s.id,c)}return i}})).actions(t=>({setHeaderHeight(r){t.headerHeight=r},setHideHeader(r){t.hideHeader=r},setEmbeddedMode(r){t.embeddedMode=r},setImportForm(r){t.importForm=r},treeOverviewClick(r){let n=t.treeOverviewHit(r),o=t.treeOverviewFocusRows,i=!!o&&!!n&&n.rows[0]>=o[0]&&n.rows[1]<=o[1];t.setShowOnly(i||!n?void 0:n.id)},setTrackHeight(r,n){t.trackHeights.set(r,n)},reset(){t.resetCount++,t.loadWarnings=[],t.dismissedWarnings=[],t.setStatus(void 0),(0,P.applySnapshot)(t,Object.fromEntries(Object.entries((0,P.getSnapshot)(t)).filter(([r])=>XS.has(r)))),t.setError(void 0),t.setAnnotations([]),t.setHighlightedColumns(void 0),t.transientHighlights={},t.setMousePos(void 0,void 0),t.setMouseClickPos(void 0,void 0),t.setHoveredTreeNode(void 0)},async exportSVG(r){let{renderToSvg:n}=await import("./renderToSvg-UAVANM7O.js"),o=await n(t,r),i=new Blob([o],{type:"image/svg+xml"});$a(i,Ml(t.msaFilehandle,"svg"))},exportNewick(){let r=new Blob([t.treeNewick],{type:"text/plain"});$a(r,Ml(t.treeFilehandle??t.msaFilehandle,"nwk","tree"))},setFilter(r,n){n===t.defaultOffAccessions.has(r)?t.turnedOffFeatures.set(r,!n):t.turnedOffFeatures.delete(r)},fit(){(0,de.transaction)(()=>{for(let r=0;r<2;r++)this.fitHorizontally(12),this.fitVertically(16)})},fitVertically(r=ir){t.numRows>0&&t.setRowHeight((0,H.clamp)(t.msaAreaHeight/t.numRows,To,r)),t.scrollY=0},zoomToRegion(r){let n=t.visibleSpan(r);!n||!t.viewInitialized||(0,de.transaction)(()=>{t.setColWidth((0,H.clamp)(t.msaCanvasWidth/(n.endCol-n.startCol+1),So,ir)),t.scrollX=(0,H.clamp)(-n.startCol*t.colWidth,t.maxScrollX,0)})},revealRegion(r){(0,de.transaction)(()=>{this.zoomToRegion(r);let n=r.row===void 0?void 0:t.rowNamesSet.get(r.row);n!==void 0&&t.viewInitialized&&t.setScrollY(-(n+.5)*t.rowHeight+t.msaAreaHeight/2)})},zoomToSelection(){let{selection:r,resolvedSelection:n}=t;!r||!n||(0,de.transaction)(()=>{if(this.zoomToRegion({start:r.start,end:r.end}),r.rows&&t.viewInitialized){let{rowRuns:o}=n,i=o[0][0],a=o.at(-1)[1];t.setRowHeight((0,H.clamp)(t.msaAreaHeight/(a-i+1),To,ir)),t.scrollY=(0,H.clamp)(-i*t.rowHeight,t.maxScrollY,0)}})},selectBlock(r,n){let{numColumns:o,numRows:i,rowNames:a}=t;if(o===0||i===0)return;let s=(p,h,g)=>[(0,H.clamp)(p,0,g),(0,H.clamp)(h,0,g)].sort((b,v)=>b-v),[l,c]=s(r.col,n.col,o-1),[u,f]=r.row===void 0||n.row===void 0?[0,i-1]:s(r.row,n.row,i-1),m=u===0&&f===i-1;t.setSelection({start:t.visibleColToGlobalCol(l)+1,end:t.visibleColToGlobalCol(c)+1,...m?{}:{rows:a.slice(u,f+1)}})},fitHorizontally(r=ir){t.numColumns>0&&t.setColWidth((0,H.clamp)(t.msaCanvasWidth/t.numColumns,So,r)),t.scrollX=0},afterCreate(){t.highlightColumns?.length&&t.setHighlightedColumns(t.highlightColumns);let r=()=>!!t.treeFilehandle&&!t.data.tree;if((0,P.addDisposer)(t,(0,de.reaction)(()=>t.dataInitialized&&!r()?{clades:(0,P.getSnapshot)(t.clades),treeRoot:t.treeRoot}:void 0,o=>{if(o?.clades.length)for(let{mark:i,nodeId:a}of t.resolvedClades)a!==void 0&&(i==="collapse"&&!t.collapsed.includes(a)?t.toggleCollapsed(a):i==="focus"?t.setShowOnly(a):i==="rotate"&&!t.rotated.includes(a)&&t.toggleRotated(a))},{fireImmediately:!0,equals:de.compareStructural})),(0,P.addDisposer)(t,(0,de.autorun)(()=>{let{region:o}=t;o&&t.viewInitialized&&t.numColumns>0&&!r()&&(this.revealRegion(o),t.setRegion(void 0))})),typeof window<"u"&&typeof window.matchMedia=="function"){let o=()=>window.matchMedia(`(resolution: ${window.devicePixelRatio}dppx)`),i=o(),a=()=>{t.setHighResScaleFactor(window.devicePixelRatio),i.removeEventListener("change",a),i=o(),i.addEventListener("change",a)};i.addEventListener("change",a),(0,P.addDisposer)(t,()=>{i.removeEventListener("change",a)})}uo(t,{what:"tree",getFilehandle:()=>t.treeFilehandle,onLoad:o=>{t.setTree(o)},setLoading:o=>{t.setLoadingTree(o)},clearFilehandle:()=>{t.setTreeFilehandle(void 0)}}),uo(t,{what:"row metadata",optional:!0,getFilehandle:()=>t.treeMetadataFilehandle,onLoad:o=>{t.setTreeMetadata(o)}});let n=!1;(0,P.addDisposer)(t,(0,de.autorun)(()=>{let o=t.data.gff;if(o)try{t.applyGFFText(o),n=!0}catch(i){console.error(i),t.addWarning(`The annotations did not parse: ${i}`)}else n&&(n=!1,t.setAnnotations([]))})),uo(t,{what:"annotations",optional:!0,getFilehandle:()=>t.gffFilehandle,onLoad:o=>{t.setGFF(o)},clearFilehandle:()=>{t.setGFFFilehandle(void 0)}}),uo(t,{what:"alignment",getFilehandle:()=>t.msaFilehandle,onLoad:o=>{t.setMSA(o)},setLoading:o=>{t.setLoadingMSA(o)},clearFilehandle:()=>{t.setMSAFilehandle(void 0)}}),(0,P.addDisposer)(t,(0,de.autorun)(()=>{t.dynamicColorSchemeName&&Fo(t.colStats),t.showColumnStats&&Fo(t.colStats,t.conservation,t.propertyConservation),Fo(t.columns)}))}})).postProcessSnapshot(({data:t,columnTracks:r,...n})=>({...n,...KS(r,e),data:{...n.treeFilehandle?{}:{tree:t.tree},...n.msaFilehandle?{}:{msa:t.msa},...n.treeMetadataFilehandle?{}:{treeMetadata:t.treeMetadata},...n.gffFilehandle?{}:{gff:t.gff}}}))}var Yl=JS;var T0=y(Ho(),1);function eT(e){return typeof e=="string"?{colorSchemeName:e}:e?{customColorScheme:va(e)}:{}}function tT(e=[]){let t=[...new Set(e)].sort((n,o)=>n-o),r=[];for(let n of t){let o=r.at(-1);o?.end===n-1?o.end=n:r.push({start:n,end:n})}return r}function Xl({highlights:e=[],highlightColumns:t}){return[...e,...tT(t)]}function Kl(e){return e?{uri:e,locationType:"UriLocation"}:void 0}function ql({msaFilehandle:e,treeFilehandle:t,gffFilehandle:r,msaUrl:n,treeUrl:o,gffUrl:i}){return{msaFilehandle:e??Kl(n),treeFilehandle:t??Kl(o),gffFilehandle:r??Kl(i)}}function Zl(e){return(0,T0.createJBrowseTheme)(e==="dark"?{palette:{mode:"dark"}}:typeof e=="object"?e:void 0)}function Ql(e){let{msa:t,tree:r,gff:n,rowData:o,colorScheme:i,height:a,colWidth:s,rowHeight:l,allowedGappyness:c,highlightColumns:u,highlights:f,features:m,selection:p,clades:h,relativeTo:g,columnTracks:b,residueMappings:v,encodings:x,rowPanels:T,drawTree:C,treeAreaWidth:M,showBranchLen:S,treeOrder:A,treeRoot:I,region:F,residueEncoding:N}=e,{msaFilehandle:O,treeFilehandle:B,gffFilehandle:d}=ql(e);return{type:"MsaView",...t||r||n||o?{data:{msa:t??"",tree:r??"",gff:n,...o?{treeMetadata:JSON.stringify(o)}:{}}}:{},...O?{msaFilehandle:O}:{},...B?{treeFilehandle:B}:{},...d?{gffFilehandle:d}:{},...eT(i),...a?{height:a}:{},...s?{colWidth:s}:{},...l?{rowHeight:l}:{},...c!==void 0?{allowedGappyness:c}:{},...f||u?{highlights:Xl({highlights:f,highlightColumns:u})}:{},...m?{features:m}:{},...p?{selection:p}:{},...h?{clades:h}:{},...g?{relativeTo:g}:{},...b?{columnTracks:b}:{},...v?{residueMappings:v}:{},...x?{encodings:x}:{},...T?{rowPanels:T}:{},...C!==void 0?{drawTree:C}:{},...M?{treeAreaWidth:M}:{},...S!==void 0?{showBranchLen:S}:{},...A?{treeOrder:A}:{},...I?{treeRoot:I}:{},...F?{region:F}:{},...N!==void 0?{bgColor:N==="fill"}:{}}}function rT(e,t){return e.msa===t.msa&&e.tree===t.tree&&JSON.stringify([e.msaFilehandle,e.treeFilehandle])===JSON.stringify([t.msaFilehandle,t.treeFilehandle])}var nT=(0,Q.forwardRef)(function(t,r){let n={...t,...ql(t)},{msa:o,tree:i,msaFilehandle:a,treeFilehandle:s}=n,l={msa:o,tree:i,msaFilehandle:a,treeFilehandle:s},[c,u]=(0,Q.useState)({source:l,generation:0});return rT(c.source,l)||u({source:l,generation:c.generation+1}),Q.default.createElement(iT,{key:c.generation,modelRef:r,...n})}),Ma=nT;function Ca(e,t,r){let n=(0,Q.useRef)(r);(0,Q.useEffect)(()=>{n.current=r});let o=!!r;(0,Q.useEffect)(()=>o?(0,wn.reaction)(()=>e[t],i=>{n.current?.(i)},{equals:wn.compareStructural}):void 0,[e,t,o])}function oe(e,t,{inSnapshot:r=!1}={}){return{read:e,apply:t,inSnapshot:r}}function At(e){return(t,r)=>{r!==void 0&&e(t,r)}}var Jl=[oe(e=>e.height,At((e,t)=>{e.setHeight(t)})),oe(e=>e.colWidth,At((e,t)=>{e.setColWidth(t)})),oe(e=>e.rowHeight,At((e,t)=>{e.setRowHeight(t)})),oe(e=>e.allowedGappyness,At((e,t)=>{e.setAllowedGappyness(t)})),oe(e=>e.drawTree,At((e,t)=>{e.setDrawTree(t)})),oe(e=>e.treeAreaWidth,At((e,t)=>{e.setTreeAreaWidth(t)})),oe(e=>e.showBranchLen,At((e,t)=>{e.setShowBranchLen(t)})),oe(e=>e.treeOrder,At((e,t)=>{e.setTreeOrder(t)})),oe(e=>e.residueEncoding,At((e,t)=>{e.setBgColor(t==="fill")})),oe(e=>!!e.hideHeader,(e,t)=>{e.setHideHeader(t)}),oe(e=>e.relativeTo,(e,t)=>{e.drawRelativeTo(t)}),oe(e=>e.gffFilehandle,(e,t,{gff:r})=>{t?e.setGFFFilehandle(t):e.setGFF(r)},{inSnapshot:!0}),oe(e=>e.gff,(e,t)=>{e.setGFF(t)},{inSnapshot:!0}),oe(e=>e.colorScheme,(e,t)=>{typeof t=="string"?e.setColorSchemeName(t):t&&e.setCustomColorScheme(va(t))}),oe(Xl,(e,t)=>{e.setHighlights(t)}),oe(e=>e.features??[],(e,t)=>{e.setFeatures(t)}),oe(e=>e.selection,(e,t)=>{e.setSelection(t)}),oe(e=>e.treeRoot,(e,t)=>{e.setTreeRoot(t)}),oe(e=>e.clades??[],(e,t)=>{e.setClades(t)}),oe(e=>e.columnTracks??[],(e,t)=>{e.setColumnTracks(t)}),oe(e=>e.residueMappings??[],(e,t)=>{e.setResidueMappings(t)}),oe(e=>e.rowData,(e,t)=>{t&&Object.keys(t).length&&e.setRowData(t)}),oe(e=>e.encodings??[],(e,t)=>{e.setEncodings(t)}),oe(e=>e.rowPanels??[],(e,t)=>{e.setRowPanels(t)})];function oT(e,t){let r=(0,Q.useRef)(void 0);(0,Q.useEffect)(()=>{let n=Jl.map(({read:i})=>JSON.stringify(i(t)??null));r.current??=Jl.map(({inSnapshot:i},a)=>i?n[a]:"");let o=r.current;Jl.forEach(({apply:i},a)=>{let s=n[a];o[a]!==s&&(o[a]=s,i(e,JSON.parse(s)??void 0,t))})})}function iT({modelRef:e,...t}){let{region:r,theme:n,onCellHover:o,onCellClick:i,onViewportChange:a,onSelectionChange:s,onModel:l}=t,[c]=(0,Q.useState)(()=>{let g=Yl().create(Ql(t));return g.setImportForm(!1),g}),u=(0,Q.useRef)(void 0),[f,{width:m}]=(0,C0.default)();(0,Q.useEffect)(()=>{m&&c.setWidth(m)},[c,m]),oT(c,t);let p=JSON.stringify(r??null);(0,Q.useEffect)(()=>{let g=JSON.parse(p);return g?(0,wn.when)(()=>c.viewInitialized&&c.numColumns>0,()=>{c.revealRegion(g)}):void 0},[c,p]),Ca(c,"hoveredCell",o),Ca(c,"clickedCell",i),Ca(c,"viewport",a),Ca(c,"selection",s),(0,Q.useImperativeHandle)(e,()=>c,[c]);let h=(0,Q.useRef)(l);return(0,Q.useEffect)(()=>{h.current=l}),(0,Q.useEffect)(()=>{h.current?.(c)},[c]),(0,Q.useEffect)(()=>(u.current!==void 0&&(clearTimeout(u.current),u.current=void 0),()=>{u.current=setTimeout(()=>{u.current=void 0,(0,Ea.isAlive)(c)&&(0,Ea.destroy)(c)})}),[c]),Q.default.createElement(E0.ThemeProvider,{theme:Zl(n)},Q.default.createElement("div",{ref:f},Q.default.createElement(Sl,{model:c})))}function aT(e){let t=mc(e),{columns:r}=e,n=new Map,o=i=>{if(!n.has(i)){let a=Rt(i);n.set(i,a.isValid()?a.toHex():void 0)}return n.get(i)};return(i,a)=>{let s=e.seqPosToVisibleCol(i,a-1),l=s===void 0?void 0:r.get(i)?.[s],c=s===void 0||l===void 0?void 0:t(s,l);return c===void 0?void 0:o(c)}}var ec=y(R(),1),M0=y(ey(),1);function tc(e,t){let r=(0,M0.createRoot)(e),n=t;return r.render(ec.default.createElement(Ma,{...n})),{update(o){n={...n,...o},r.render(ec.default.createElement(Ma,{...n}))},destroy(){r.unmount()}}}var A0=y(Or(),1);var sT=["msa","tree","gff","features","colorScheme","highlights","columnTracks","residueMappings"],lT=["msa-url","tree-url","gff-url","color-scheme","height","hide-header","theme","reference-row","tree-area-width","loading"],cT="200px",uT=["display-start","display-end","highlight"];function tr(e){let t=e?Number(e):Number.NaN;return Number.isFinite(t)?t:void 0}function fT(e,t){return(e??"").split(",").flatMap(r=>{let[n,o]=r.split(":").map(tr);return n===void 0?[]:[{row:t,start:n,end:o??n}]})}function rc(e,t,r){let n=e.globalColToVisibleCol(r-1);return n===void 0?void 0:e.visibleColToSeqPosOneBased(t,n)}function dT(e,t,r){let n,o;for(let i=r.startColumn;i<=r.endColumn&&!n;i++)n=rc(e,t,i);for(let i=r.endColumn;i>=r.startColumn&&!o;i--)o=rc(e,t,i);return n&&o?{start:n,end:o}:void 0}function pT(e="jbrowse-msa"){let t=customElements.get(e);if(t)return t;class r extends HTMLElement{static observedAttributes=[...lT,...uT];#n;#t;#e;#o;#s;#l=!1;#f;#r={};static{for(let o of sT)Object.defineProperty(r.prototype,o,{configurable:!0,get(){return this.#r[o]},set(i){this.#d({[o]:i})}})}get selection(){return this.#e?this.#e.selection:this.#r.selection}set selection(o){this.#d({selection:o})}get#i(){return this.getAttribute("reference-row")??void 0}#d(o){this.#r={...this.#r,...o},this.#n?.update(this.#c())}#c(){let o=this.getAttribute("theme");return{...this.#r,msaUrl:this.getAttribute("msa-url")??void 0,treeUrl:this.getAttribute("tree-url")??void 0,gffUrl:this.getAttribute("gff-url")??void 0,colorScheme:this.#r.colorScheme??this.getAttribute("color-scheme")??void 0,height:tr(this.getAttribute("height")),treeAreaWidth:tr(this.getAttribute("tree-area-width")),hideHeader:this.hasAttribute("hide-header"),theme:o==="dark"?"dark":"light",onCellHover:i=>{this.#a("cell-hover",i),this.#y(i)},onCellClick:i=>{this.#a("cell-click",i)},onViewportChange:i=>{this.#a("viewport-change",i),this.#b(i)},onSelectionChange:i=>{this.#a("selection-change",i)},onModel:i=>{this.#e=i,this.#m(),this.#h()}}}#a(o,i){this.dispatchEvent(new CustomEvent(o,{detail:i}))}#p(o){this.#o&&this.dispatchEvent(new CustomEvent("change",{detail:o,bubbles:!0,cancelable:!0}))}#y(o){let i=this.#e,a=this.#i,s=o&&i&&a?rc(i,a,o.column):o?.column;this.#p({type:"highlight",value:s===void 0?null:`${s}:${s}`})}#b(o){let i=this.#e,a=this.#i;if(!o||!i)return;let s=a?dT(i,a,o):{start:o.startColumn,end:o.endColumn},l=tr(this.getAttribute("display-start")),c=tr(this.getAttribute("display-end")),u=s&&l!==void 0&&c!==void 0&&Math.abs(s.start-l)<=1&&Math.abs(s.end-c)<=1;s&&!u&&(this.#f=s,this.#p({"display-start":s.start,"display-end":s.end}))}#m(){let o=this.#e,i=tr(this.getAttribute("display-start")),a=tr(this.getAttribute("display-end")),s=this.#f;if(!(s&&s.start===i&&s.end===a)&&(this.#s?.(),o&&i!==void 0&&a!==void 0)){let l=this.#i;this.#s=(0,A0.when)(()=>o.viewInitialized&&o.numColumns>0,()=>{o.zoomToRegion({row:l,start:i,end:a})})}}#h(){let o=fT(this.getAttribute("highlight"),this.#i);o.length?this.#e?.applyHighlight("nightingale",o):this.#e?.clearHighlight("nightingale")}connectedCallback(){if(this.style.display||(this.style.display="block"),this.#g){let i=tr(this.getAttribute("height"))??550;this.style.minHeight=`${i+5}px`,this.#t=new IntersectionObserver(a=>{a.some(s=>s.isIntersecting)&&this.#u()},{rootMargin:cT}),this.#t.observe(this)}else this.#u();let o=this.closest("nightingale-manager");o&&customElements.whenDefined("nightingale-manager").then(()=>{this.isConnected&&(this.#o=o,o.register(this))})}get#g(){return this.getAttribute("loading")==="lazy"&&typeof IntersectionObserver<"u"}#u(){this.#t?.disconnect(),this.#t=void 0,this.#n??=tc(this,this.#c())}disconnectedCallback(){this.#t?.disconnect(),this.#t=void 0,this.#o?.unregister(this),this.#o=void 0,this.#s?.(),this.#n?.destroy(),this.#n=void 0,this.#e=void 0}attributeChangedCallback(o){o==="display-start"||o==="display-end"?this.#l||(this.#l=!0,queueMicrotask(()=>{this.#l=!1,this.#m()})):o==="highlight"?this.#h():o==="loading"?this.#t&&!this.#g&&this.#u():this.#n?.update(this.#c())}}return customElements.define(e,r),r}var Aa=y(R(),1),k0=y(Ho(),1),R0=y(je(),1),ka=y(Or(),1);function mT(e,{theme:t,includeTracks:r=!1,delay:n=300}={}){let[o,i]=(0,Aa.useState)({});return(0,Aa.useEffect)(()=>{let a=0,s=(0,ka.reaction)(()=>e.viewInitialized&&e.dataInitialized?[(0,R0.getSnapshot)(e),e.width,e.height,e.resolvedHighlights,e.highlightedColumnRuns]:void 0,l=>{if(!l)return;let c=++a;_a(e,{theme:t??(0,k0.createJBrowseTheme)(),exportType:"viewport",includeTracks:r}).then(u=>{c===a&&i({svg:u})},u=>{c===a&&i({error:u})})},{delay:n,fireImmediately:!0,equals:ka.compareShallow});return()=>{a=-1,s()}},[e,t,r,n]),o}export{ty as a,Lu as b,sy as c,Sl as d,Yl as e,Zl as f,Ql as g,Ma as h,aT as i,tc as j,pT as k,mT as l};
|
|
123
|
+
/*! Bundled license information:
|
|
124
|
+
|
|
125
|
+
react-is/cjs/react-is.production.js:
|
|
126
|
+
(**
|
|
127
|
+
* @license React
|
|
128
|
+
* react-is.production.js
|
|
129
|
+
*
|
|
130
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
131
|
+
*
|
|
132
|
+
* This source code is licensed under the MIT license found in the
|
|
133
|
+
* LICENSE file in the root directory of this source tree.
|
|
134
|
+
*)
|
|
135
|
+
|
|
136
|
+
react-is/cjs/react-is.production.min.js:
|
|
137
|
+
(** @license React v16.13.1
|
|
138
|
+
* react-is.production.min.js
|
|
139
|
+
*
|
|
140
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
141
|
+
*
|
|
142
|
+
* This source code is licensed under the MIT license found in the
|
|
143
|
+
* LICENSE file in the root directory of this source tree.
|
|
144
|
+
*)
|
|
145
|
+
|
|
146
|
+
@mui/styled-engine/index.mjs:
|
|
147
|
+
(**
|
|
148
|
+
* @mui/styled-engine v9.5.0
|
|
149
|
+
*
|
|
150
|
+
* @license MIT
|
|
151
|
+
* This source code is licensed under the MIT license found in the
|
|
152
|
+
* LICENSE file in the root directory of this source tree.
|
|
153
|
+
*)
|
|
154
|
+
|
|
155
|
+
@mui/system/index.mjs:
|
|
156
|
+
(**
|
|
157
|
+
* @mui/system v9.5.0
|
|
158
|
+
*
|
|
159
|
+
* @license MIT
|
|
160
|
+
* This source code is licensed under the MIT license found in the
|
|
161
|
+
* LICENSE file in the root directory of this source tree.
|
|
162
|
+
*)
|
|
163
|
+
*/
|
|
164
|
+
//# sourceMappingURL=chunk-3IMKCK3L.js.map
|