jbrowse-plugin-msaview 2.4.2 → 2.4.3
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/LaunchMsaView/components/LaunchMsaViewDialog.js +3 -4
- package/dist/LaunchMsaView/components/LaunchMsaViewDialog.js.map +1 -1
- package/dist/LaunchMsaView/components/LaunchPanelContent.d.ts +5 -0
- package/dist/LaunchMsaView/components/LaunchPanelContent.js +16 -0
- package/dist/LaunchMsaView/components/LaunchPanelContent.js.map +1 -0
- package/dist/LaunchMsaView/components/ManualMSALoader/ManualMSALoader.js +22 -25
- package/dist/LaunchMsaView/components/ManualMSALoader/ManualMSALoader.js.map +1 -1
- package/dist/LaunchMsaView/components/NCBIBlastQuery/CachedBlastResults.js +12 -24
- package/dist/LaunchMsaView/components/NCBIBlastQuery/CachedBlastResults.js.map +1 -1
- package/dist/LaunchMsaView/components/NCBIBlastQuery/MsaAlgorithmSelect.d.ts +7 -0
- package/dist/LaunchMsaView/components/NCBIBlastQuery/MsaAlgorithmSelect.js +10 -0
- package/dist/LaunchMsaView/components/NCBIBlastQuery/MsaAlgorithmSelect.js.map +1 -0
- package/dist/LaunchMsaView/components/NCBIBlastQuery/NCBIBlastAutomaticPanel.js +23 -32
- package/dist/LaunchMsaView/components/NCBIBlastQuery/NCBIBlastAutomaticPanel.js.map +1 -1
- package/dist/LaunchMsaView/components/NCBIBlastQuery/NCBIBlastManualPanel.js +9 -15
- package/dist/LaunchMsaView/components/NCBIBlastQuery/NCBIBlastManualPanel.js.map +1 -1
- package/dist/LaunchMsaView/components/NCBIBlastQuery/NCBIBlastMethodSelector.d.ts +3 -2
- package/dist/LaunchMsaView/components/NCBIBlastQuery/NCBIBlastMethodSelector.js.map +1 -1
- package/dist/LaunchMsaView/components/NCBIBlastQuery/NCBIBlastPanel.d.ts +25 -0
- package/dist/LaunchMsaView/components/NCBIBlastQuery/NCBIBlastPanel.js.map +1 -1
- package/dist/LaunchMsaView/components/NCBIBlastQuery/NCBIBlastRIDPanel.js +22 -32
- package/dist/LaunchMsaView/components/NCBIBlastQuery/NCBIBlastRIDPanel.js.map +1 -1
- package/dist/LaunchMsaView/components/NCBIBlastQuery/useCachedBlastResults.js +2 -9
- package/dist/LaunchMsaView/components/NCBIBlastQuery/useCachedBlastResults.js.map +1 -1
- package/dist/LaunchMsaView/components/PreLoadedMSA/PreLoadedMSADataPanel.js +30 -29
- package/dist/LaunchMsaView/components/PreLoadedMSA/PreLoadedMSADataPanel.js.map +1 -1
- package/dist/LaunchMsaView/components/PreLoadedMSA/fetchMSAData.js +8 -6
- package/dist/LaunchMsaView/components/PreLoadedMSA/fetchMSAData.js.map +1 -1
- package/dist/LaunchMsaView/components/SubmitCancelActions.d.ts +8 -0
- package/dist/LaunchMsaView/components/SubmitCancelActions.js +12 -0
- package/dist/LaunchMsaView/components/SubmitCancelActions.js.map +1 -0
- package/dist/LaunchMsaView/components/TranscriptSelector.d.ts +2 -2
- package/dist/LaunchMsaView/components/TranscriptSelector.js +2 -2
- package/dist/LaunchMsaView/components/TranscriptSelector.js.map +1 -1
- package/dist/LaunchMsaView/components/useSWRFeatureSequence.js +3 -13
- package/dist/LaunchMsaView/components/useSWRFeatureSequence.js.map +1 -1
- package/dist/LaunchMsaView/components/useTranscriptSelection.js +10 -12
- package/dist/LaunchMsaView/components/useTranscriptSelection.js.map +1 -1
- package/dist/LaunchMsaView/util.d.ts +4 -1
- package/dist/LaunchMsaView/util.js +29 -24
- package/dist/LaunchMsaView/util.js.map +1 -1
- package/dist/jbrowse-plugin-msaview.umd.production.min.js +24 -24
- package/dist/jbrowse-plugin-msaview.umd.production.min.js.map +4 -4
- package/dist/{LaunchMsaView/components/PreLoadedMSA/consts.d.ts → utils/swrConfig.d.ts} +1 -1
- package/dist/{LaunchMsaView/components/PreLoadedMSA/consts.js → utils/swrConfig.js} +2 -2
- package/dist/utils/swrConfig.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
- package/src/LaunchMsaView/components/LaunchMsaViewDialog.tsx +9 -6
- package/src/LaunchMsaView/components/LaunchPanelContent.tsx +27 -0
- package/src/LaunchMsaView/components/ManualMSALoader/ManualMSALoader.tsx +28 -60
- package/src/LaunchMsaView/components/NCBIBlastQuery/CachedBlastResults.tsx +21 -33
- package/src/LaunchMsaView/components/NCBIBlastQuery/MsaAlgorithmSelect.tsx +37 -0
- package/src/LaunchMsaView/components/NCBIBlastQuery/NCBIBlastAutomaticPanel.tsx +29 -75
- package/src/LaunchMsaView/components/NCBIBlastQuery/NCBIBlastManualPanel.tsx +10 -31
- package/src/LaunchMsaView/components/NCBIBlastQuery/NCBIBlastMethodSelector.tsx +5 -3
- package/src/LaunchMsaView/components/NCBIBlastQuery/NCBIBlastPanel.tsx +5 -2
- package/src/LaunchMsaView/components/NCBIBlastQuery/NCBIBlastRIDPanel.tsx +28 -78
- package/src/LaunchMsaView/components/NCBIBlastQuery/useCachedBlastResults.ts +2 -10
- package/src/LaunchMsaView/components/PreLoadedMSA/PreLoadedMSADataPanel.tsx +34 -57
- package/src/LaunchMsaView/components/PreLoadedMSA/fetchMSAData.ts +17 -8
- package/src/LaunchMsaView/components/SubmitCancelActions.tsx +41 -0
- package/src/LaunchMsaView/components/TranscriptSelector.tsx +3 -3
- package/src/LaunchMsaView/components/useSWRFeatureSequence.ts +6 -15
- package/src/LaunchMsaView/components/useTranscriptSelection.ts +13 -15
- package/src/LaunchMsaView/util.ts +35 -25
- package/src/MsaViewPanel/util.ts +3 -3
- package/src/{LaunchMsaView/components/PreLoadedMSA/consts.ts → utils/swrConfig.ts} +1 -1
- package/src/version.ts +1 -1
- package/dist/LaunchMsaView/components/PreLoadedMSA/consts.js.map +0 -1
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
"use strict";var JBrowsePluginMsaView=(()=>{var
|
|
1
|
+
"use strict";var JBrowsePluginMsaView=(()=>{var i1=Object.create;var Ns=Object.defineProperty;var s1=Object.getOwnPropertyDescriptor;var a1=Object.getOwnPropertyNames;var c1=Object.getPrototypeOf,l1=Object.prototype.hasOwnProperty;var g=(e,t)=>()=>(e&&(t=e(e=0)),t);var G=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Je=(e,t)=>{for(var r in t)Ns(e,r,{get:t[r],enumerable:!0})},ld=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of a1(t))!l1.call(e,o)&&o!==r&&Ns(e,o,{get:()=>t[o],enumerable:!(n=s1(t,o))||n.enumerable});return e};var f=(e,t,r)=>(r=e!=null?i1(c1(e)):{},ld(t||!e||!e.__esModule?Ns(r,"default",{value:e,enumerable:!0}):r,e)),A1=e=>ld(Ns({},"__esModule",{value:!0}),e);var ud=G((xN,Ad)=>{Ad.exports=JBrowseExports["@jbrowse/core/Plugin"]});var go=G((yN,fd)=>{fd.exports=JBrowseExports["@jbrowse/core/configuration"]});var ge=G((wN,md)=>{md.exports=JBrowseExports["@jbrowse/core/util"]});var Dt=G((bN,dd)=>{dd.exports=JBrowseExports["mobx-state-tree"]});var pd=G((BN,gd)=>{gd.exports=JBrowseExports["@mui/material/utils"]});var T,Y=g(()=>{"use client";T=f(pd(),1)});var L=G((QN,hd)=>{hd.exports=JBrowseExports["react/jsx-runtime"]});var b=G((TN,Id)=>{Id.exports=JBrowseExports.react});var R=G((_N,xd)=>{xd.exports=JBrowseExports["mobx-react"]});var be=G((DN,yd)=>{yd.exports=JBrowseExports["tss-react/mui"]});var Nl=G((JN,kd)=>{kd.exports=JBrowseExports["@jbrowse/core/pluggableElementTypes"]});var Fd=G((YN,Ld)=>{Ld.exports=JBrowseExports["@jbrowse/core/data_adapters/BaseAdapter"]});function Bi(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");Fl(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}function Rl(e){var t=typeof Symbol=="function"&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function po(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),o,i=[],s;try{for(;(t===void 0||t-- >0)&&!(o=n.next()).done;)i.push(o.value)}catch(a){s={error:a}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return i}function ho(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,i;n<o;n++)(i||!(n in t))&&(i||(i=Array.prototype.slice.call(t,0,n)),i[n]=t[n]);return e.concat(i||Array.prototype.slice.call(t))}var Fl,Si=g(()=>{Fl=function(e,t){return Fl=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(r[o]=n[o])},Fl(e,t)}});function vr(e){return typeof e=="function"}var Ps=g(()=>{});function Os(e){var t=function(n){Error.call(n),n.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var Pl=g(()=>{});var Gs,Rd=g(()=>{Pl();Gs=Os(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription:
|
|
2
2
|
`+r.map(function(n,o){return o+1+") "+n.toString()}).join(`
|
|
3
|
-
`):"",this.name="UnsubscriptionError",this.errors=r}})});function Fl(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var Dm=g(()=>{});function Nm(e){return e instanceof Os||e&&"closed"in e&&vr(e.remove)&&vr(e.add)&&vr(e.unsubscribe)}function km(e){vr(e)?e():e.unsubscribe()}var Os,zN,Lm=g(()=>{Qi();Fs();_m();Dm();Os=(function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,r,n,o,i;if(!this.closed){this.closed=!0;var s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var a=Nl(s),c=a.next();!c.done;c=a.next()){var l=c.value;l.remove(this)}}catch(C){t={error:C}}finally{try{c&&!c.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}else s.remove(this);var A=this.initialTeardown;if(vr(A))try{A()}catch(C){i=C instanceof Ps?C.errors:[C]}var u=this._finalizers;if(u){this._finalizers=null;try{for(var d=Nl(u),m=d.next();!m.done;m=d.next()){var p=m.value;try{km(p)}catch(C){i=i??[],C instanceof Ps?i=Co(Co([],ho(i)),ho(C.errors)):i.push(C)}}}catch(C){n={error:C}}finally{try{m&&!m.done&&(o=d.return)&&o.call(d)}finally{if(n)throw n.error}}}if(i)throw new Ps(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)km(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}},e.prototype._hasParent=function(t){var r=this._parentage;return r===t||Array.isArray(r)&&r.includes(t)},e.prototype._addParent=function(t){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t},e.prototype._removeParent=function(t){var r=this._parentage;r===t?this._parentage=null:Array.isArray(r)&&Fl(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&Fl(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=(function(){var t=new e;return t.closed=!0,t})(),e})(),zN=Os.EMPTY});var An,Gs=g(()=>{An={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}});var Eo,Rl=g(()=>{Qi();Eo={setTimeout:function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];var o=Eo.delegate;return o?.setTimeout?o.setTimeout.apply(o,Co([e,t],ho(r))):setTimeout.apply(void 0,Co([e,t],ho(r)))},clearTimeout:function(e){var t=Eo.delegate;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0}});function Fm(e){Eo.setTimeout(function(){var t=An.onUnhandledError;if(t)t(e);else throw e})}var Rm=g(()=>{Gs();Rl()});function Pl(){}var Pm=g(()=>{});function Gm(e){return Ol("E",void 0,e)}function Hm(e){return Ol("N",e,void 0)}function Ol(e,t,r){return{kind:e,value:t,error:r}}var Om,Um=g(()=>{Om=(function(){return Ol("C",void 0,void 0)})()});function qm(e){An.useDeprecatedSynchronousErrorHandling&&Gl&&(Gl.errorThrown=!0,Gl.error=e)}var Gl,jm=g(()=>{Gs();Gl=null});function Hl(e,t){return a1.call(e,t)}function Hs(e){An.useDeprecatedSynchronousErrorHandling?qm(e):Fm(e)}function l1(e){throw e}function Ul(e,t){var r=An.onStoppedNotification;r&&Eo.setTimeout(function(){return r(e,t)})}var ql,a1,c1,jl,A1,Jl=g(()=>{Qi();Fs();Lm();Gs();Rm();Pm();Um();Rl();jm();ql=(function(e){Si(t,e);function t(r){var n=e.call(this)||this;return n.isStopped=!1,r?(n.destination=r,Nm(r)&&r.add(n)):n.destination=A1,n}return t.create=function(r,n,o){return new jl(r,n,o)},t.prototype.next=function(r){this.isStopped?Ul(Hm(r),this):this._next(r)},t.prototype.error=function(r){this.isStopped?Ul(Gm(r),this):(this.isStopped=!0,this._error(r))},t.prototype.complete=function(){this.isStopped?Ul(Om,this):(this.isStopped=!0,this._complete())},t.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,e.prototype.unsubscribe.call(this),this.destination=null)},t.prototype._next=function(r){this.destination.next(r)},t.prototype._error=function(r){try{this.destination.error(r)}finally{this.unsubscribe()}},t.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},t})(Os),a1=Function.prototype.bind;c1=(function(){function e(t){this.partialObserver=t}return e.prototype.next=function(t){var r=this.partialObserver;if(r.next)try{r.next(t)}catch(n){Hs(n)}},e.prototype.error=function(t){var r=this.partialObserver;if(r.error)try{r.error(t)}catch(n){Hs(n)}else Hs(t)},e.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(r){Hs(r)}},e})(),jl=(function(e){Si(t,e);function t(r,n,o){var i=e.call(this)||this,s;if(vr(r)||!r)s={next:r??void 0,error:n??void 0,complete:o??void 0};else{var a;i&&An.useDeprecatedNextContext?(a=Object.create(r),a.unsubscribe=function(){return i.unsubscribe()},s={next:r.next&&Hl(r.next,a),error:r.error&&Hl(r.error,a),complete:r.complete&&Hl(r.complete,a)}):s=r}return i.destination=new c1(s),i}return t})(ql);A1={closed:!0,next:Pl,error:l1,complete:Pl}});function u1(e){return vr(e?.lift)}function Us(e){return function(t){if(u1(t))return t.lift(function(r){try{return e(r,this)}catch(n){this.error(n)}});throw new TypeError("Unable to lift unknown Observable type")}}var Vl=g(()=>{Fs()});function Jm(e,t,r,n,o){return new f1(e,t,r,n,o)}var f1,Vm=g(()=>{Qi();Jl();f1=(function(e){Si(t,e);function t(r,n,o,i,s,a){var c=e.call(this,r)||this;return c.onFinalize=s,c.shouldUnsubscribe=a,c._next=n?function(l){try{n(l)}catch(A){r.error(A)}}:e.prototype._next,c._error=i?function(l){try{i(l)}catch(A){r.error(A)}finally{this.unsubscribe()}}:e.prototype._error,c._complete=o?function(){try{o()}catch(l){r.error(l)}finally{this.unsubscribe()}}:e.prototype._complete,c}return t.prototype.unsubscribe=function(){var r;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var n=this.closed;e.prototype.unsubscribe.call(this),!n&&((r=this.onFinalize)===null||r===void 0||r.call(this))}},t})(ql)});var Ym,Wm=g(()=>{Ll();Ym=Rs(function(e){return function(){e(this),this.name="EmptyError",this.message="no elements in sequence"}})});function Yl(e,t){var r=typeof t=="object";return new Promise(function(n,o){var i=new jl({next:function(s){n(s),i.unsubscribe()},error:o,complete:function(){r?n(t.defaultValue):o(new Ym)}});e.subscribe(i)})}var zm=g(()=>{Wm();Jl()});var $m=g(()=>{});function Km(e,t,r,n,o){return function(i,s){var a=r,c=t,l=0;i.subscribe(Jm(s,function(A){var u=l++;c=a?e(c,A,u):(a=!0,A),n&&s.next(c)},o&&(function(){a&&s.next(c),s.complete()})))}}var Xm=g(()=>{Vm()});function Zm(e,t){return Us(Km(e,t,arguments.length>=2,!1,!0))}var eg=g(()=>{Xm();Vl()});function Wl(){return Us(function(e,t){Zm(d1,[])(e).subscribe(t)})}var d1,tg=g(()=>{eg();Vl();d1=function(e,t){return e.push(t),e}});var rg=g(()=>{zm();$m();tg()});var ig={};ze(ig,{default:()=>qs});var ng,og,qs,sg=g(()=>{"use strict";ng=f(po()),og=f(Tm());rg();qs=class extends og.BaseAdapter{async configurePre(){let t=this.getSubAdapter;if(t)return(await t({...(0,ng.readConfObject)(this.config),type:"BgzipFastaAdapter"})).dataAdapter;throw new Error("no get subadapter")}configure(){return this.configureP??=this.configurePre().catch(t=>{throw this.configureP=void 0,t}),this.configureP}async getMSARefs(){return this.refNamesP??=this.configure().then(t=>t.getRefNames()).catch(t=>{throw this.refNamesP=void 0,t}),this.refNamesP}getMsaRegex(){return new RegExp(this.getConf("msaRegex"))}refNameToMsaId(t){return t.split(this.getMsaRegex())[0]}async getMSAList(){let t=await this.getMSARefs();return[...new Set(t.map(n=>this.refNameToMsaId(n)))]}async getMSA(t){let r=await this.configure(),o=(await r.getRefNames()).filter(i=>this.refNameToMsaId(i)===t);return Yl(r.getFeaturesInMultipleRegions(o.map(i=>({refName:i,start:0,end:1e9,assemblyName:""}))).pipe(Wl()))}}});var fe=H((jL,Ag)=>{Ag.exports=JBrowseExports["@jbrowse/core/ui"]});var N=H((JL,ug)=>{ug.exports=JBrowseExports["@mui/material"]});var xg=H(Ig=>{"use strict";var xo=B();function y1(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var w1=typeof Object.is=="function"?Object.is:y1,b1=xo.useState,B1=xo.useEffect,S1=xo.useLayoutEffect,Q1=xo.useDebugValue;function M1(e,t){var r=t(),n=b1({inst:{value:r,getSnapshot:t}}),o=n[0].inst,i=n[1];return S1(function(){o.value=r,o.getSnapshot=t,Xl(o)&&i({inst:o})},[e,r,t]),B1(function(){return Xl(o)&&i({inst:o}),e(function(){Xl(o)&&i({inst:o})})},[e]),Q1(r),r}function Xl(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!w1(e,r)}catch{return!0}}function v1(e,t){return t()}var T1=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?v1:M1;Ig.useSyncExternalStore=xo.useSyncExternalStore!==void 0?xo.useSyncExternalStore:T1});var wg=H((rF,yg)=>{"use strict";yg.exports=xg()});var zg,ca,mA=g(()=>{"use client";W();zg=f(L(),1),ca=(0,_.createSvgIcon)((0,zg.jsx)("path",{d:"M19.14 12.94c.04-.3.06-.61.06-.94 0-.32-.02-.64-.07-.94l2.03-1.58c.18-.14.23-.41.12-.61l-1.92-3.32c-.12-.22-.37-.29-.59-.22l-2.39.96c-.5-.38-1.03-.7-1.62-.94l-.36-2.54c-.04-.24-.24-.41-.48-.41h-3.84c-.24 0-.43.17-.47.41l-.36 2.54c-.59.24-1.13.57-1.62.94l-2.39-.96c-.22-.08-.47 0-.59.22L2.74 8.87c-.12.21-.08.47.12.61l2.03 1.58c-.05.3-.09.63-.09.94s.02.64.07.94l-2.03 1.58c-.18.14-.23.41-.12.61l1.92 3.32c.12.22.37.29.59.22l2.39-.96c.5.38 1.03.7 1.62.94l.36 2.54c.05.24.24.41.48.41h3.84c.24 0 .44-.17.47-.41l.36-2.54c.59-.24 1.13-.56 1.62-.94l2.39.96c.22.08.47 0 .59-.22l1.92-3.32c.12-.22.07-.47-.12-.61zM12 15.6c-1.98 0-3.6-1.62-3.6-3.6s1.62-3.6 3.6-3.6 3.6 1.62 3.6 3.6-1.62 3.6-3.6 3.6"}),"Settings")});var $g,la,gA=g(()=>{"use client";W();$g=f(L(),1),la=(0,_.createSvgIcon)((0,$g.jsx)("path",{d:"M16.59 8.59 12 13.17 7.41 8.59 6 10l6 6 6-6z"}),"ExpandMore")});function Z1(){return ep||(ep=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function e2(){return tp||(tp=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}function t2(e){let t=new Promise((r,n)=>{let o=()=>{e.removeEventListener("success",i),e.removeEventListener("error",s)},i=()=>{r(Fn(e.result)),o()},s=()=>{n(e.error),o()};e.addEventListener("success",i),e.addEventListener("error",s)});return ua.set(t,e),t}function r2(e){if(IA.has(e))return;let t=new Promise((r,n)=>{let o=()=>{e.removeEventListener("complete",i),e.removeEventListener("error",s),e.removeEventListener("abort",s)},i=()=>{r(),o()},s=()=>{n(e.error||new DOMException("AbortError","AbortError")),o()};e.addEventListener("complete",i),e.addEventListener("error",s),e.addEventListener("abort",s)});IA.set(e,t)}function ip(e){xA=e(xA)}function n2(e){return e2().includes(e)?function(...t){return e.apply(yA(this),t),Fn(this.request)}:function(...t){return Fn(e.apply(yA(this),t))}}function o2(e){return typeof e=="function"?n2(e):(e instanceof IDBTransaction&&r2(e),EA(e,Z1())?new Proxy(e,xA):e)}function Fn(e){if(e instanceof IDBRequest)return t2(e);if(hA.has(e))return hA.get(e);let t=o2(e);return t!==e&&(hA.set(e,t),ua.set(t,e)),t}function Rn(e,t,{blocked:r,upgrade:n,blocking:o,terminated:i}={}){let s=indexedDB.open(e,t),a=Fn(s);return n&&s.addEventListener("upgradeneeded",c=>{n(Fn(s.result),c.oldVersion,c.newVersion,Fn(s.transaction),c)}),r&&s.addEventListener("blocked",c=>r(c.oldVersion,c.newVersion,c)),a.then(c=>{i&&c.addEventListener("close",()=>i()),o&&c.addEventListener("versionchange",l=>o(l.oldVersion,l.newVersion,l))}).catch(()=>{}),a}function rp(e,t){if(!(e instanceof IDBDatabase&&!(t in e)&&typeof t=="string"))return;if(CA.get(t))return CA.get(t);let r=t.replace(/FromIndex$/,""),n=t!==r,o=s2.includes(r);if(!(r in(n?IDBIndex:IDBObjectStore).prototype)||!(o||i2.includes(r)))return;let i=async function(s,...a){let c=this.transaction(s,o?"readwrite":"readonly"),l=c.store;return n&&(l=l.index(a.shift())),(await Promise.all([l[r](...a),o&&c.done]))[0]};return CA.set(t,i),i}async function*l2(...e){let t=this;if(t instanceof IDBCursor||(t=await t.openCursor(...e)),!t)return;t=t;let r=new Proxy(t,c2);for(sp.set(r,t),ua.set(r,yA(t));t;)yield r,t=await(wA.get(r)||t.continue()),wA.delete(r)}function op(e,t){return t===Symbol.asyncIterator&&EA(e,[IDBIndex,IDBObjectStore,IDBCursor])||t==="iterate"&&EA(e,[IDBIndex,IDBObjectStore])}var EA,ep,tp,IA,hA,ua,xA,yA,i2,s2,CA,a2,np,wA,sp,c2,_i=g(()=>{EA=(e,t)=>t.some(r=>e instanceof r);IA=new WeakMap,hA=new WeakMap,ua=new WeakMap;xA={get(e,t,r){if(e instanceof IDBTransaction){if(t==="done")return IA.get(e);if(t==="store")return r.objectStoreNames[1]?void 0:r.objectStore(r.objectStoreNames[0])}return Fn(e[t])},set(e,t,r){return e[t]=r,!0},has(e,t){return e instanceof IDBTransaction&&(t==="done"||t==="store")?!0:t in e}};yA=e=>ua.get(e);i2=["get","getKey","getAll","getAllKeys","count"],s2=["put","add","delete","clear"],CA=new Map;ip(e=>({...e,get:(t,r,n)=>rp(t,r)||e.get(t,r,n),has:(t,r)=>!!rp(t,r)||e.has(t,r)}));a2=["continue","continuePrimaryKey","advance"],np={},wA=new WeakMap,sp=new WeakMap,c2={get(e,t){if(!a2.includes(t))return e[t];let r=np[t];return r||(r=np[t]=function(...n){wA.set(this,sp.get(this)[t](...n))}),r}};ip(e=>({...e,get(t,r,n){return op(t,r)?l2:e.get(t,r,n)},has(t,r){return op(t,r)||e.has(t,r)}}))});var bp,pa,bA=g(()=>{"use client";W();bp=f(L(),1),pa=(0,_.createSvgIcon)((0,bp.jsx)("path",{d:"M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3z"}),"OpenInNew")});function Pn(e){let{children:t,...r}=e;return BA.default.createElement(Bp.Link,{...r,target:"_blank",rel:"noreferrer"},t," ",BA.default.createElement(pa,{fontSize:"small"}))}var BA,Bp,ha=g(()=>{"use strict";BA=f(B());bA();Bp=f(N())});var Op=g(()=>{});var Gp=g(()=>{Op()});function B2(e){try{let s=j.__wbindgen_add_to_stack_pointer(-16),a=kA(e,j.__wbindgen_export2),c=ya;j.decompress_all(s,a,c);var t=Ke().getInt32(s+0,!0),r=Ke().getInt32(s+4,!0),n=Ke().getInt32(s+8,!0),o=Ke().getInt32(s+12,!0);if(o)throw NA(n);var i=_A(t,r).slice();return j.__wbindgen_export(t,r*1,1),i}finally{j.__wbindgen_add_to_stack_pointer(16)}}function S2(e){try{let o=j.__wbindgen_add_to_stack_pointer(-16),i=kA(e,j.__wbindgen_export2),s=ya;j.decompress_block(o,i,s);var t=Ke().getInt32(o+0,!0),r=Ke().getInt32(o+4,!0),n=Ke().getInt32(o+8,!0);if(n)throw NA(r);return Mo.__wrap(t)}finally{j.__wbindgen_add_to_stack_pointer(16)}}function Q2(e,t,r,n,o){try{let c=j.__wbindgen_add_to_stack_pointer(-16),l=kA(e,j.__wbindgen_export2),A=ya;j.decompress_chunk_slice(c,l,A,t,r,n,o);var i=Ke().getInt32(c+0,!0),s=Ke().getInt32(c+4,!0),a=Ke().getInt32(c+8,!0);if(a)throw NA(s);return Qo.__wrap(i)}finally{j.__wbindgen_add_to_stack_pointer(16)}}function M2(e,t){let r=Error(Jp(e,t));return T2(r)}function v2(e,t){throw new Error(Jp(e,t))}function T2(e){Di===Wr.length&&Wr.push(Wr.length+1);let t=Di;return Di=Wr[t],Wr[t]=e,t}function _2(e){e<1028||(Wr[e]=Di,Di=e)}function qp(e,t){return e=e>>>0,D2().subarray(e/8,e/8+t)}function _A(e,t){return e=e>>>0,DA().subarray(e/1,e/1+t)}function Ke(){return(So===null||So.buffer.detached===!0||So.buffer.detached===void 0&&So.buffer!==j.memory.buffer)&&(So=new DataView(j.memory.buffer)),So}function D2(){return(Ea===null||Ea.byteLength===0)&&(Ea=new Float64Array(j.memory.buffer)),Ea}function Jp(e,t){return e=e>>>0,L2(e,t)}function DA(){return(Ia===null||Ia.byteLength===0)&&(Ia=new Uint8Array(j.memory.buffer)),Ia}function k2(e){return Wr[e]}function kA(e,t){let r=t(e.length*1,1)>>>0;return DA().set(e,r/1),ya=e.length,r}function NA(e){let t=k2(e);return _2(e),t}function L2(e,t){return TA+=t,TA>=N2&&(xa=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}),xa.decode(),TA=t),xa.decode(DA().subarray(e,e+t))}function F2(e){j=e}var On,jp,Qo,Mo,Hp,Up,So,Ea,Ia,Wr,Di,xa,N2,TA,ya,j,Vp=g(()=>{On={};On.d=(e,t)=>{for(var r in t)On.o(t,r)&&!On.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})};On.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);On.r=e=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};jp={};On.r(jp);On.d(jp,{ChunkSliceResult:()=>Qo,DecompressResult:()=>Mo,__wbg_Error_960c155d3d49e4c2:()=>M2,__wbg___wbindgen_throw_6b64449b9b9ed33c:()=>v2,__wbg_set_wasm:()=>F2,decompress_all:()=>B2,decompress_block:()=>S2,decompress_chunk_slice:()=>Q2});Qo=class e{static __wrap(t){t=t>>>0;let r=Object.create(e.prototype);return r.__wbg_ptr=t,Hp.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let t=this.__wbg_ptr;return this.__wbg_ptr=0,Hp.unregister(this),t}free(){let t=this.__destroy_into_raw();j.__wbg_chunksliceresult_free(t,0)}get buffer(){try{let o=j.__wbindgen_add_to_stack_pointer(-16);j.chunksliceresult_buffer(o,this.__wbg_ptr);var t=Ke().getInt32(o+0,!0),r=Ke().getInt32(o+4,!0),n=_A(t,r).slice();return j.__wbindgen_export(t,r*1,1),n}finally{j.__wbindgen_add_to_stack_pointer(16)}}get cpositions(){try{let o=j.__wbindgen_add_to_stack_pointer(-16);j.chunksliceresult_cpositions(o,this.__wbg_ptr);var t=Ke().getInt32(o+0,!0),r=Ke().getInt32(o+4,!0),n=qp(t,r).slice();return j.__wbindgen_export(t,r*8,8),n}finally{j.__wbindgen_add_to_stack_pointer(16)}}get dpositions(){try{let o=j.__wbindgen_add_to_stack_pointer(-16);j.chunksliceresult_dpositions(o,this.__wbg_ptr);var t=Ke().getInt32(o+0,!0),r=Ke().getInt32(o+4,!0),n=qp(t,r).slice();return j.__wbindgen_export(t,r*8,8),n}finally{j.__wbindgen_add_to_stack_pointer(16)}}};Symbol.dispose&&(Qo.prototype[Symbol.dispose]=Qo.prototype.free);Mo=class e{static __wrap(t){t=t>>>0;let r=Object.create(e.prototype);return r.__wbg_ptr=t,Up.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let t=this.__wbg_ptr;return this.__wbg_ptr=0,Up.unregister(this),t}free(){let t=this.__destroy_into_raw();j.__wbg_decompressresult_free(t,0)}get bytes_read(){return j.decompressresult_bytes_read(this.__wbg_ptr)>>>0}get data(){try{let o=j.__wbindgen_add_to_stack_pointer(-16);j.decompressresult_data(o,this.__wbg_ptr);var t=Ke().getInt32(o+0,!0),r=Ke().getInt32(o+4,!0),n=_A(t,r).slice();return j.__wbindgen_export(t,r*1,1),n}finally{j.__wbindgen_add_to_stack_pointer(16)}}};Symbol.dispose&&(Mo.prototype[Symbol.dispose]=Mo.prototype.free);Hp=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>j.__wbg_chunksliceresult_free(e>>>0,1)),Up=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>j.__wbg_decompressresult_free(e>>>0,1));So=null;Ea=null;Ia=null;Wr=new Array(1024).fill(void 0);Wr.push(void 0,null,!0,!1);Di=Wr.length;xa=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});xa.decode();N2=2146435072,TA=0;ya=0});var LA=g(()=>{Vp()});var Yp=g(()=>{});var zp=g(()=>{Gp();LA();Yp()});var $p=g(()=>{zp();LA()});function FA(){let e=(0,vo.useRef)(null),[t,r]=(0,vo.useState)({width:void 0,height:void 0});return(0,vo.useEffect)(()=>{if(!e.current)return;let n=typeof window<"u"&&"ResizeObserver"in window?window.ResizeObserver:void 0;if(!n)return;let o=new n(i=>{r({width:i[0].contentRect.width,height:i[0].contentRect.height})});return o.observe(e.current),()=>{o.disconnect()}},[]),[e,t]}var vo,Kp=g(()=>{vo=f(B(),1)});var Zp=H((i3,Xp)=>{Xp.exports=JBrowseExports["react-dom"]});var th=H((s3,eh)=>{eh.exports=JBrowseExports["react-dom/client"]});function rh(e){let t="",r=!1;for(let n=0,o=e.length;n<o;n++){let i=e[n];i==="<"?r=!0:i===">"?r=!1:r||(t+=i)}return t}var RA=g(()=>{});var nh=g(()=>{});var oh=g(()=>{});var ih=g(()=>{});function wa(e){return typeof e=="object"&&e!==null&&"uri"in e&&!!e.uri}var R2,PA=g(()=>{R2=f(Nt(),1);ih()});var zr=H((f3,sh)=>{sh.exports=JBrowseExports.mobx});var P2,ah=g(()=>{P2=f(zr(),1)});var ch=g(()=>{});var lh=g(()=>{});var To,ba,OA,GA,O2,ki,Ba,Ah=g(()=>{To={METHOD:"method",PROPERTY:"property"},ba=class{constructor(t,r){this.inst=t,this.args=r}},OA=class extends ba{constructor(t,r){super(t,r),this.type=To.METHOD}execute(t){t[this.inst](...this.args)}},GA=class extends ba{constructor(t,r){super(t,r),this.type=To.PROPERTY}execute(t){t[this.inst]=this.args[0]}},O2={[To.METHOD]:OA,[To.PROPERTY]:GA},ki=class{constructor(t,r,n){return new O2[t](r,n)}};ki.METHOD=To.METHOD;ki.PROPERTY=To.PROPERTY;Ba=ki});var uh,Dr,Sa,HA=g(()=>{Ah();uh=Object.freeze({METHODS:["addHitRegion","arc","arcTo","beginPath","bezierCurveTo","clearHitRegions","clearRect","clip","closePath","drawFocusIfNeeded","drawImage","ellipse","fill","fillRect","fillText","lineTo","moveTo","putImageData","quadraticCurveTo","rect","removeHitRegion","resetTransform","restore","rotate","save","scale","scrollPathIntoView","setLineDash","setTransform","stroke","strokeRect","strokeText","transform","translate"],PROPERTIES:["direction","fillStyle","filter","font","globalAlpha","globalCompositeOperation","imageSmoothingEnabled","imageSmoothingQuality","lineCap","lineDashOffset","lineJoin","lineWidth","miterLimit","shadowBlur","shadowColor","shadowOffsetX","shadowOffsetY","strokeStyle","textAlign","textBaseline"]}),Dr=Object.freeze({sequence:Symbol.for("sequence"),push:Symbol.for("push"),fromJSON:Symbol.for("fromJSON")}),Sa=class{constructor(t=null){this[Dr.sequence]=[],t&&this[Dr.fromJSON](t)}[Dr.fromJSON](t={sequence:[]}){t.sequence.forEach(({type:r,inst:n,args:o})=>{this[Dr.push](r,n,o)})}[Dr.push](t,r,n){this[Dr.sequence].push(new Ba(t,r,n))}execute(t){t.save(),this[Dr.sequence].forEach(r=>r.execute(t)),t.restore()}toJSON(){return{sequence:this[Dr.sequence]}}};uh.METHODS.forEach(e=>{Object.defineProperty(Sa.prototype,e,{value:function(...r){this[Dr.push](Ba.METHOD,e,r)},writable:!1,enumerable:!0,configurable:!1})});uh.PROPERTIES.forEach(e=>{Object.defineProperty(Sa.prototype,e,{get(){throw`Invalid canvas sequencer interaction, cannot get ${e}.`},set(t){this[Dr.push](Ba.PROPERTY,e,[t])},enumerable:!0,configurable:!1})})});var I3,dh=g(()=>{HA();I3=Object.freeze({sequence:Symbol.for("sequence"),push:Symbol.for("push")})});var mh=g(()=>{dh();HA()});var ph=H((S3,gh)=>{gh.exports=!1});var G2,hh=g(()=>{mh();G2=f(ph(),1)});var H2,U2,Ch=g(()=>{H2=f(L(),1),U2=f(B(),1)});var Eh=g(()=>{});var _3,D3,k3,N3,Ih=g(()=>{_3=new Uint8Array([99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22]),D3=new Uint8Array([82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125]),k3=new Uint8Array([1,2,4,8,16,32,64,128,27,54]),N3=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298])});var xh=g(()=>{});var yh=g(()=>{});var wh=g(()=>{_i()});var Qa,bh=g(()=>{Qa=f(Nt(),1)});function qA(e,t=10){let r=String(e),n=0;for(let o=0,i=r.length;o<i;o++)n+=J2[r.charCodeAt(o)]??V2;return n*t}function jA(e){let t=0;if(e.length===0)return t;for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);t=(t<<5)-t+n,t|=0}return t}function Y2(e){let{uri:t,baseUri:r=""}=e,n;try{n=new URL(t,r).href}catch{n=t}return n}function JA(e){return Xt(e)?wa(e)?Y2(e):JSON.stringify(e):String(e)}function Bh(e){let t=/(^|[\s\n]|<[A-Za-z]*\/?>)((?:https?|ftp):\/\/[-A-Z0-9+\u0026\u2019@#/%?=()~_|!:,.;]*[-A-Z0-9+\u0026@#/%=~()_|])/gi;return e.replaceAll(t,`$1<a href='$2' target="_blank">$2</a>`)}function Sh(e,t){let{padding:r=30,minWidth:n=80,fontSize:o=12,maxWidth:i=1e3,stripHTML:s=!1}=t||{};return VA(e.map(a=>JA(a)).map(a=>s?rh(a):a).map(a=>qA(a,o)).map(a=>Math.min(Math.max(a+r,n),i)))}function VA(e,t=Number.NEGATIVE_INFINITY){let r=t;for(let n of e)r=Math.max(n,r);return r}function Xt(e){return typeof e=="object"&&e!==null}var UA,_o,q2,j2,W3,z3,$3,K3,J2,V2,pn=g(()=>{UA=f(B(),1);$p();_o=f(Nt(),1),q2=f(Zp(),1),j2=f(th(),1);RA();PA();PA();ah();ch();lh();RA();hh();Ch();Eh();Ih();xh();yh();nh();oh();bh();wh();W3=180/Math.PI,z3=Math.PI/180,$3=/electron/i.test(typeof navigator<"u"?navigator.userAgent:""),K3=typeof jest>"u"?typeof window<"u"&&window.requestIdleCallback?window.requestIdleCallback:e=>setTimeout(()=>{e()},1):e=>{e()},J2=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,.2796875,.2765625,.3546875,.5546875,.5546875,.8890625,.665625,.190625,.3328125,.3328125,.3890625,.5828125,.2765625,.3328125,.2765625,.3015625,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.2765625,.2765625,.584375,.5828125,.584375,.5546875,1.0140625,.665625,.665625,.721875,.721875,.665625,.609375,.7765625,.721875,.2765625,.5,.665625,.5546875,.8328125,.721875,.7765625,.665625,.7765625,.721875,.665625,.609375,.721875,.665625,.94375,.665625,.665625,.609375,.2765625,.3546875,.2765625,.4765625,.5546875,.3328125,.5546875,.5546875,.5,.5546875,.5546875,.2765625,.5546875,.5546875,.221875,.240625,.5,.221875,.8328125,.5546875,.5546875,.5546875,.5546875,.3328125,.5,.2765625,.5546875,.5,.721875,.5,.5,.5,.3546875,.259375,.353125,.5890625],V2=.5279276315789471});var Oh=H((J5,Ph)=>{Ph.exports=JBrowseExports["@jbrowse/core/pluggableElementTypes/ViewType"]});var Hh,Uh,No,XA=g(()=>{Hh=f(L(),1),Uh=f(B(),1),No=class extends Uh.Component{constructor(t){super(t),this.state={error:void 0}}componentDidCatch(t,r){console.error("ErrorBoundary caught an error:",t,r),this.setState({error:t})}render(){return this.state.error?(0,Hh.jsx)(this.props.FallbackComponent,{error:this.state.error}):this.props.children}}});var At,ZA,qh,jh,Jh=g(()=>{At=f(B(),1),ZA=f(P(),1),qh=(0,ZA.observer)(function({model:e}){let{resizeHandleWidth:t}=e,[r,n]=(0,At.useState)(!1),o=(0,At.useRef)(!1),i=(0,At.useRef)(0);return(0,At.useEffect)(()=>{function s(c){c.preventDefault();let l=c.clientX;if(i.current===0)i.current=c.clientX;else{let A=l-i.current;A&&(o.current||(o.current=!0,window.requestAnimationFrame(()=>{e.setTreeAreaWidth(e.treeAreaWidth+A),o.current=!1,i.current=c.clientX})))}}function a(){i.current=0,r&&n(!1)}return r?(document.addEventListener("mousemove",s,!0),document.addEventListener("mouseup",a,!0),()=>{document.removeEventListener("mousemove",s,!0),document.removeEventListener("mouseup",a,!0)}):()=>{}},[r,e]),At.default.createElement("div",null,At.default.createElement("div",{onMouseDown:()=>{n(!0)},style:{cursor:"ew-resize",height:"100%",width:t,background:"rgba(200,200,200)",position:"relative"}}))}),jh=(0,ZA.observer)(function({model:e}){let{resizeHandleWidth:t}=e,[r,n]=(0,At.useState)(!1),o=(0,At.useRef)(!1),i=(0,At.useRef)(0);return(0,At.useEffect)(()=>{function s(c){c.preventDefault();let l=c.clientY;if(i.current===0)i.current=c.clientY;else{let A=l-i.current;A&&(o.current||(o.current=!0,window.requestAnimationFrame(()=>{e.setHeight(e.height+A),o.current=!1,i.current=c.clientY})))}}function a(){i.current=0,r&&n(!1)}return r?(document.addEventListener("mousemove",s,!0),document.addEventListener("mouseup",a,!0),()=>{document.removeEventListener("mousemove",s,!0),document.removeEventListener("mouseup",a,!0)}):()=>{}},[r,e]),At.default.createElement("div",null,At.default.createElement("div",{onMouseDown:()=>{n(!0)},style:{cursor:"ns-resize",width:"100%",height:t,background:"rgba(200,200,200)",position:"relative"}}))})});var Vh,Yh,Wh=g(()=>{"use client";W();Vh=f(L(),1),Yh=(0,_.createSvgIcon)((0,Vh.jsx)("path",{d:"m7 10 5 5 5-5z"}),"ArrowDropDown")});function Lo({ref:e,onScrollX:t,onScrollY:r}){let n=(0,Cr.useRef)(!1),o=(0,Cr.useRef)(0),i=(0,Cr.useRef)(0),s=(0,Cr.useRef)(0),a=(0,Cr.useRef)(0),[c,l]=(0,Cr.useState)(!1);(0,Cr.useEffect)(()=>{let d=e.current;if(!d)return;function m(p){t&&(o.current+=p.deltaX),r&&(i.current+=p.deltaY),n.current||(n.current=!0,requestAnimationFrame(()=>{t&&(t(-o.current),o.current=0),r&&(r(-i.current),i.current=0),n.current=!1})),p.preventDefault(),p.stopPropagation()}return d.addEventListener("wheel",m,{passive:!1}),()=>{d.removeEventListener("wheel",m)}},[e,t,r]),(0,Cr.useEffect)(()=>{if(!c)return;function d(p){p.preventDefault();let C=p.clientX-s.current,x=p.clientY-a.current;(C&&t||x&&r)&&(n.current||(n.current=!0,requestAnimationFrame(()=>{t?.(C),r?.(x),n.current=!1,s.current=p.clientX,a.current=p.clientY})))}function m(){s.current=0,a.current=0,l(!1)}return window.addEventListener("mousemove",d,!0),window.addEventListener("mouseup",m,!0),()=>{window.removeEventListener("mousemove",d,!0),window.removeEventListener("mouseup",m,!0)}},[c,t,r]);function A(d){let m=d.target;m.draggable||m.dataset.resizer||d.button===0&&(s.current=d.clientX,a.current=d.clientY,l(!0))}function u(d){d.preventDefault(),l(!1)}return{onMouseDown:A,onMouseUp:u}}var Cr,_a=g(()=>{Cr=f(B(),1)});function Li(e){let t=navigator.clipboard;if(t?.writeText){t.writeText(e).catch(n=>{console.error("Failed to copy to clipboard:",n)});return}let r=document.createElement("textarea");r.value=e,r.style.position="fixed",r.style.opacity="0",document.body.append(r),r.select(),document.execCommand("copy"),r.remove()}var eu=g(()=>{});var Xh={};ze(Xh,{default:()=>rM});var Kr,zh,Hn,$h,Kh,eM,tM,rM,Zh=g(()=>{Kr=f(B(),1),zh=f(fe(),1),Hn=f(N(),1),$h=f(P(),1),Kh=f(Me(),1);eu();eM=(0,Kh.makeStyles)()(e=>({textArea:{padding:e.spacing(2),overflow:"auto",background:"#ddd",wordBreak:"break-word"}})),tM=(0,$h.observer)(function({model:e,onClose:t}){let[r,n]=(0,Kr.useState)("Copy to clipboard"),{classes:o}=eM();return Kr.default.createElement(zh.Dialog,{open:!0,onClose:t,fullWidth:!0,maxWidth:"lg",title:`Track info - ${e.name}`},Kr.default.createElement(Hn.DialogContent,null,Kr.default.createElement(Hn.Button,{variant:"contained",color:"primary",onClick:()=>{Li(e.data),n("Copied!"),setTimeout(()=>{n("Copy to clipboard")},300)}},r),Kr.default.createElement("pre",{className:o.textArea},e.data)),Kr.default.createElement(Hn.DialogActions,null,Kr.default.createElement(Hn.Button,{variant:"contained",onClick:t,color:"secondary"},"Close")))}),rM=tM});var De,Un,tu,e0,nM,oM,iM,sM,t0,r0=g(()=>{De=f(B(),1);Wh();Un=f(N(),1),tu=f(P(),1),e0=f(Me(),1);_a();nM=(0,De.lazy)(()=>Promise.resolve().then(()=>(Zh(),Xh))),oM=(0,e0.makeStyles)()({button:{padding:0}}),iM=(0,tu.observer)(function({model:t,track:r}){let[n,o]=(0,De.useState)(),{drawLabels:i,rowHeight:s,treeAreaWidth:a}=t,{model:{name:c,height:l}}=r,{classes:A}=oM(),u=Math.max(8,s-8);return De.default.createElement("div",{style:{width:a,height:l,flexShrink:0,textAlign:"right",fontSize:u}},i?c:""," ",De.default.createElement(Un.IconButton,{className:A.button,style:{width:u,height:u},onClick:d=>{o(d.currentTarget)}},De.default.createElement(Yh,null)),n?De.default.createElement(Un.Menu,{anchorEl:n,transitionDuration:0,open:!0,onClose:()=>{o(void 0)}},De.default.createElement(Un.MenuItem,{dense:!0,onClick:()=>{t.toggleTrack(r.model.id),o(void 0)}},"Close"),De.default.createElement(Un.MenuItem,{dense:!0,onClick:()=>{t.queueDialog(d=>[nM,{onClose:d,model:r.model}]),o(void 0)}},"Get info")):null)}),sM=(0,tu.observer)(function({model:e,track:t}){let{resizeHandleWidth:r,colWidth:n,scrollX:o,numColumns:i}=e,{model:{height:s,error:a}}=t,c=(0,De.useRef)(null),l=(0,De.useCallback)(A=>{e.doScrollX(A)},[e]);return Lo({ref:c,onScrollX:l}),De.default.createElement("div",{key:t.id,style:{display:"flex",height:s}},De.default.createElement(iM,{model:e,track:t}),De.default.createElement("div",{style:{width:r,flexShrink:0}}),De.default.createElement("div",{ref:c,onMouseMove:A=>{if(!c.current)return;let{left:u}=c.current.getBoundingClientRect(),d=A.clientX-u-o,m=Math.floor(d/n);m>=0&&m<i?e.setMousePos(m,void 0):e.setMousePos(void 0,void 0)},onMouseLeave:()=>{e.setMousePos(void 0,void 0)}},a?De.default.createElement("div",{style:{color:"red",fontSize:10}},`${a}`):De.default.createElement(t.ReactComponent,{model:e,track:t})))}),t0=sM});var kr,n0,o0,aM,i0,s0=g(()=>{kr=f(B(),1),n0=f(ie(),1),o0=f(P(),1),aM=(0,o0.observer)(({model:e})=>{let{msaAreaHeight:t,scrollY:r,totalHeight:n}=e,[o,i]=(0,kr.useState)(!1),s=(0,kr.useRef)(!1),[a,c]=(0,kr.useState)(),l="rgba(66, 119, 127, 0.3)",A=t/n,u=-r,d=u+t,m=u*A,p=d*A;return(0,kr.useEffect)(()=>{function C(I){a!==void 0&&(s.current||(s.current=!0,window.requestAnimationFrame(()=>{e.setScrollY((0,n0.clamp)(a.scrollY-(I.clientY-a.clientY)/A,-n,0)),s.current=!1})))}function x(){c(void 0)}if(a!==void 0)return document.addEventListener("mousemove",C),document.addEventListener("mouseup",x),()=>{document.removeEventListener("mousemove",C),document.removeEventListener("mousemove",x)}},[e,A,n,a]),kr.default.createElement("div",{style:{position:"relative",width:20,height:t,borderLeft:"1px solid #555",borderTop:"1px solid #555",boxSizing:"border-box"}},kr.default.createElement("div",{style:{position:"absolute",top:Math.max(0,m),left:0,background:o?"rgba(66,119,127,0.6)":l,cursor:"pointer",boxSizing:"border-box",width:20,height:Math.max(p-m,20),zIndex:100},onMouseOver:()=>{i(!0)},onMouseOut:()=>{i(!1)},onMouseDown:C=>{c({clientY:C.clientY,scrollY:e.scrollY})}}))}),i0=aM});var a0,c0,l0=g(()=>{"use client";W();a0=f(L(),1),c0=(0,_.createSvgIcon)((0,a0.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m1 17h-2v-2h2zm2.07-7.75-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25"}),"Help")});var A0,u0,f0=g(()=>{"use client";W();A0=f(L(),1),u0=(0,_.createSvgIcon)((0,A0.jsx)("path",{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),"ChevronRight")});var d0,m0,g0=g(()=>{"use client";W();d0=f(L(),1),m0=(0,_.createSvgIcon)((0,d0.jsx)("path",{d:"M11 18h2v-2h-2zm1-16C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8m0-14c-2.21 0-4 1.79-4 4h2c0-1.1.9-2 2-2s2 .9 2 2c0 2-3 1.75-3 5h2c0-2.25 3-2.5 3-5 0-2.21-1.79-4-4-4"}),"HelpOutline")});var p0,Da,ru=g(()=>{"use client";W();p0=f(L(),1),Da=(0,_.createSvgIcon)((0,p0.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 h0,C0,E0=g(()=>{"use client";W();h0=f(L(),1),C0=(0,_.createSvgIcon)((0,h0.jsx)("path",{d:"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4z"}),"Refresh")});var I0,x0,y0=g(()=>{"use client";W();I0=f(L(),1),x0=(0,_.createSvgIcon)((0,I0.jsx)("path",{d:"M15.73 3H8.27L3 8.27v7.46L8.27 21h7.46L21 15.73V8.27zM12 17.3c-.72 0-1.3-.58-1.3-1.3s.58-1.3 1.3-1.3 1.3.58 1.3 1.3-.58 1.3-1.3 1.3m1-4.3h-2V7h2z"}),"Report")});function lM(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 AM(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 cM,w0,b0=g(()=>{cM=!1;w0=(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?!cM: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(AM(this));var o=this.tags[this.tags.length-1];if(this.isSpeedy){var i=lM(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 ot,Fi,K,ka,Fo,Ro,B0,Na,S0,La=g(()=>{ot="-ms-",Fi="-moz-",K="-webkit-",ka="comm",Fo="rule",Ro="decl",B0="@import",Na="@keyframes",S0="@layer"});function v0(e,t){return ke(e,0)^45?(((t<<2^ke(e,0))<<2^ke(e,1))<<2^ke(e,2))<<2^ke(e,3):0}function Fa(e){return e.trim()}function nu(e,t){return(e=t.exec(e))?e[0]:e}function Y(e,t,r){return e.replace(t,r)}function Ri(e,t){return e.indexOf(t)}function ke(e,t){return e.charCodeAt(t)|0}function hn(e,t,r){return e.slice(t,r)}function pt(e){return e.length}function Po(e){return e.length}function Oo(e,t){return t.push(e),e}function ou(e,t){return e.map(t).join("")}var Q0,qn,M0,Go=g(()=>{Q0=Math.abs,qn=String.fromCharCode,M0=Object.assign});function Pi(e,t,r,n,o,i,s){return{value:e,root:t,parent:r,type:n,props:o,children:i,line:Ra,column:Ho,length:s,return:""}}function jo(e,t){return M0(Pi("",null,null,"",null,null,0),e,{length:-e.length},t)}function _0(){return Oe}function D0(){return Oe=ht>0?ke(qo,--ht):0,Ho--,Oe===10&&(Ho=1,Ra--),Oe}function Ct(){return Oe=ht<T0?ke(qo,ht++):0,Ho++,Oe===10&&(Ho=1,Ra++),Oe}function Zt(){return ke(qo,ht)}function Oi(){return ht}function Jo(e,t){return hn(qo,e,t)}function Uo(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 Pa(e){return Ra=Ho=1,T0=pt(qo=e),ht=0,[]}function Oa(e){return qo="",e}function Vo(e){return Fa(Jo(ht-1,iu(e===91?e+2:e===40?e+1:e)))}function k0(e){for(;(Oe=Zt())&&Oe<33;)Ct();return Uo(e)>2||Uo(Oe)>3?"":" "}function N0(e,t){for(;--t&&Ct()&&!(Oe<48||Oe>102||Oe>57&&Oe<65||Oe>70&&Oe<97););return Jo(e,Oi()+(t<6&&Zt()==32&&Ct()==32))}function iu(e){for(;Ct();)switch(Oe){case e:return ht;case 34:case 39:e!==34&&e!==39&&iu(Oe);break;case 40:e===41&&iu(e);break;case 92:Ct();break}return ht}function L0(e,t){for(;Ct()&&e+Oe!==57;)if(e+Oe===84&&Zt()===47)break;return"/*"+Jo(t,ht-1)+"*"+qn(e===47?e:Ct())}function F0(e){for(;!Uo(Zt());)Ct();return Jo(e,ht)}var Ra,Ho,T0,ht,Oe,qo,su=g(()=>{Go();Ra=1,Ho=1,T0=0,ht=0,Oe=0,qo=""});function O0(e){return Oa(Ga("",null,null,null,[""],e=Pa(e),0,[0],e))}function Ga(e,t,r,n,o,i,s,a,c){for(var l=0,A=0,u=s,d=0,m=0,p=0,C=1,x=1,I=1,h=0,y="",w=o,S=i,v=n,M=y;x;)switch(p=h,h=Ct()){case 40:if(p!=108&&ke(M,u-1)==58){Ri(M+=Y(Vo(h),"&","&\f"),"&\f")!=-1&&(I=-1);break}case 34:case 39:case 91:M+=Vo(h);break;case 9:case 10:case 13:case 32:M+=k0(p);break;case 92:M+=N0(Oi()-1,7);continue;case 47:switch(Zt()){case 42:case 47:Oo(uM(L0(Ct(),Oi()),t,r),c);break;default:M+="/"}break;case 123*C:a[l++]=pt(M)*I;case 125*C:case 59:case 0:switch(h){case 0:case 125:x=0;case 59+A:I==-1&&(M=Y(M,/\f/g,"")),m>0&&pt(M)-u&&Oo(m>32?P0(M+";",n,r,u-1):P0(Y(M," ","")+";",n,r,u-2),c);break;case 59:M+=";";default:if(Oo(v=R0(M,t,r,l,A,o,a,y,w=[],S=[],u),i),h===123)if(A===0)Ga(M,t,v,v,w,i,u,a,S);else switch(d===99&&ke(M,3)===110?100:d){case 100:case 108:case 109:case 115:Ga(e,v,v,n&&Oo(R0(e,v,v,0,0,o,a,y,o,w=[],u),S),o,S,u,a,n?w:S);break;default:Ga(M,v,v,v,[""],S,0,a,S)}}l=A=m=0,C=I=1,y=M="",u=s;break;case 58:u=1+pt(M),m=p;default:if(C<1){if(h==123)--C;else if(h==125&&C++==0&&D0()==125)continue}switch(M+=qn(h),h*C){case 38:I=A>0?1:(M+="\f",-1);break;case 44:a[l++]=(pt(M)-1)*I,I=1;break;case 64:Zt()===45&&(M+=Vo(Ct())),d=Zt(),A=u=pt(y=M+=F0(Oi())),h++;break;case 45:p===45&&pt(M)==2&&(C=0)}}return i}function R0(e,t,r,n,o,i,s,a,c,l,A){for(var u=o-1,d=o===0?i:[""],m=Po(d),p=0,C=0,x=0;p<n;++p)for(var I=0,h=hn(e,u+1,u=Q0(C=s[p])),y=e;I<m;++I)(y=Fa(C>0?d[I]+" "+h:Y(h,/&\f/g,d[I])))&&(c[x++]=y);return Pi(e,t,r,o===0?Fo:a,c,l,A)}function uM(e,t,r){return Pi(e,t,r,ka,qn(_0()),hn(e,2,-2),0)}function P0(e,t,r,n){return Pi(e,t,r,Ro,hn(e,0,n),hn(e,n+1,-1),n)}var G0=g(()=>{La();Go();su()});var H0=g(()=>{});function jn(e,t){for(var r="",n=Po(e),o=0;o<n;o++)r+=t(e[o],o,e,t)||"";return r}function U0(e,t,r,n){switch(e.type){case S0:if(e.children.length)break;case B0:case Ro:return e.return=e.return||e.value;case ka:return"";case Na:return e.return=e.value+"{"+jn(e.children,n)+"}";case Fo:e.value=e.props.join(",")}return pt(r=jn(e.children,n))?e.return=e.value+"{"+r+"}":""}var q0=g(()=>{La();Go()});function j0(e){var t=Po(e);return function(r,n,o,i){for(var s="",a=0;a<t;a++)s+=e[a](r,n,o,i)||"";return s}}function J0(e){return function(t){t.root||(t=t.return)&&e(t)}}var V0=g(()=>{Go()});var Y0=g(()=>{La();Go();G0();H0();su();q0();V0()});var Ha=g(()=>{});function W0(e){var t=Object.create(null);return function(r){return t[r]===void 0&&(t[r]=e(r)),t[r]}}var au=g(()=>{});function $0(e,t){switch(v0(e,t)){case 5103:return K+"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 K+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return K+e+Fi+e+ot+e+e;case 6828:case 4268:return K+e+ot+e+e;case 6165:return K+e+ot+"flex-"+e+e;case 5187:return K+e+Y(e,/(\w+).+(:[^]+)/,K+"box-$1$2"+ot+"flex-$1$2")+e;case 5443:return K+e+ot+"flex-item-"+Y(e,/flex-|-self/,"")+e;case 4675:return K+e+ot+"flex-line-pack"+Y(e,/align-content|flex-|-self/,"")+e;case 5548:return K+e+ot+Y(e,"shrink","negative")+e;case 5292:return K+e+ot+Y(e,"basis","preferred-size")+e;case 6060:return K+"box-"+Y(e,"-grow","")+K+e+ot+Y(e,"grow","positive")+e;case 4554:return K+Y(e,/([^-])(transform)/g,"$1"+K+"$2")+e;case 6187:return Y(Y(Y(e,/(zoom-|grab)/,K+"$1"),/(image-set)/,K+"$1"),e,"")+e;case 5495:case 3959:return Y(e,/(image-set\([^]*)/,K+"$1$`$1");case 4968:return Y(Y(e,/(.+:)(flex-)?(.*)/,K+"box-pack:$3"+ot+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+K+e+e;case 4095:case 3583:case 4068:case 2532:return Y(e,/(.+)-inline(.+)/,K+"$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(pt(e)-1-t>6)switch(ke(e,t+1)){case 109:if(ke(e,t+4)!==45)break;case 102:return Y(e,/(.+:)(.+)-([^]+)/,"$1"+K+"$2-$3$1"+Fi+(ke(e,t+3)==108?"$3":"$2-$3"))+e;case 115:return~Ri(e,"stretch")?$0(Y(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(ke(e,t+1)!==115)break;case 6444:switch(ke(e,pt(e)-3-(~Ri(e,"!important")&&10))){case 107:return Y(e,":",":"+K)+e;case 101:return Y(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+K+(ke(e,14)===45?"inline-":"")+"box$3$1"+K+"$2$3$1"+ot+"$2box$3")+e}break;case 5936:switch(ke(e,t+11)){case 114:return K+e+ot+Y(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return K+e+ot+Y(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return K+e+ot+Y(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return K+e+ot+e+e}return e}var fM,dM,mM,z0,gM,pM,hM,CM,K0,cu=g(()=>{b0();Y0();Ha();au();fM=function(t,r,n){for(var o=0,i=0;o=i,i=Zt(),o===38&&i===12&&(r[n]=1),!Uo(i);)Ct();return Jo(t,ht)},dM=function(t,r){var n=-1,o=44;do switch(Uo(o)){case 0:o===38&&Zt()===12&&(r[n]=1),t[n]+=fM(ht-1,r,n);break;case 2:t[n]+=Vo(o);break;case 4:if(o===44){t[++n]=Zt()===58?"&\f":"",r[n]=t[n].length;break}default:t[n]+=qn(o)}while(o=Ct());return t},mM=function(t,r){return Oa(dM(Pa(t),r))},z0=new WeakMap,gM=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&&!z0.get(n))&&!o){z0.set(t,!0);for(var i=[],s=mM(r,i),a=n.props,c=0,l=0;c<s.length;c++)for(var A=0;A<a.length;A++,l++)t.props[l]=i[c]?s[c].replace(/&\f/g,a[A]):a[A]+" "+s[c]}}},pM=function(t){if(t.type==="decl"){var r=t.value;r.charCodeAt(0)===108&&r.charCodeAt(2)===98&&(t.return="",t.value="")}};hM=function(t,r,n,o){if(t.length>-1&&!t.return)switch(t.type){case Ro:t.return=$0(t.value,t.length);break;case Na:return jn([jo(t,{value:Y(t.value,"@","@"+K)})],o);case Fo:if(t.length)return ou(t.props,function(i){switch(nu(i,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return jn([jo(t,{props:[Y(i,/:(read-\w+)/,":"+Fi+"$1")]})],o);case"::placeholder":return jn([jo(t,{props:[Y(i,/:(plac\w+)/,":"+K+"input-$1")]}),jo(t,{props:[Y(i,/:(plac\w+)/,":"+Fi+"$1")]}),jo(t,{props:[Y(i,/:(plac\w+)/,ot+"input-$1")]})],o)}return""})}},CM=[hM],K0=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(C){var x=C.getAttribute("data-emotion");x.indexOf(" ")!==-1&&(document.head.appendChild(C),C.setAttribute("data-s",""))})}var o=t.stylisPlugins||CM,i={},s,a=[];s=t.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+r+' "]'),function(C){for(var x=C.getAttribute("data-emotion").split(" "),I=1;I<x.length;I++)i[x[I]]=!0;a.push(C)});var c,l=[gM,pM];{var A,u=[U0,J0(function(C){A.insert(C)})],d=j0(l.concat(o,u)),m=function(x){return jn(O0(x),d)};c=function(x,I,h,y){A=h,m(x?x+"{"+I.styles+"}":I.styles),y&&(p.inserted[I.name]=!0)}}var p={key:r,sheet:new w0({key:r,container:s,nonce:t.nonce,speedy:t.speedy,prepend:t.prepend,insertionPoint:t.insertionPoint}),nonce:t.nonce,inserted:i,registered:{},insert:c};return p.sheet.hydrate(a),p}});var lu=g(()=>{});var Z0=H(ne=>{"use strict";var Xe=typeof Symbol=="function"&&Symbol.for,Au=Xe?Symbol.for("react.element"):60103,uu=Xe?Symbol.for("react.portal"):60106,Ua=Xe?Symbol.for("react.fragment"):60107,qa=Xe?Symbol.for("react.strict_mode"):60108,ja=Xe?Symbol.for("react.profiler"):60114,Ja=Xe?Symbol.for("react.provider"):60109,Va=Xe?Symbol.for("react.context"):60110,fu=Xe?Symbol.for("react.async_mode"):60111,Ya=Xe?Symbol.for("react.concurrent_mode"):60111,Wa=Xe?Symbol.for("react.forward_ref"):60112,za=Xe?Symbol.for("react.suspense"):60113,EM=Xe?Symbol.for("react.suspense_list"):60120,$a=Xe?Symbol.for("react.memo"):60115,Ka=Xe?Symbol.for("react.lazy"):60116,IM=Xe?Symbol.for("react.block"):60121,xM=Xe?Symbol.for("react.fundamental"):60117,yM=Xe?Symbol.for("react.responder"):60118,wM=Xe?Symbol.for("react.scope"):60119;function Rt(e){if(typeof e=="object"&&e!==null){var t=e.$$typeof;switch(t){case Au:switch(e=e.type,e){case fu:case Ya:case Ua:case ja:case qa:case za:return e;default:switch(e=e&&e.$$typeof,e){case Va:case Wa:case Ka:case $a:case Ja:return e;default:return t}}case uu:return t}}}function X0(e){return Rt(e)===Ya}ne.AsyncMode=fu;ne.ConcurrentMode=Ya;ne.ContextConsumer=Va;ne.ContextProvider=Ja;ne.Element=Au;ne.ForwardRef=Wa;ne.Fragment=Ua;ne.Lazy=Ka;ne.Memo=$a;ne.Portal=uu;ne.Profiler=ja;ne.StrictMode=qa;ne.Suspense=za;ne.isAsyncMode=function(e){return X0(e)||Rt(e)===fu};ne.isConcurrentMode=X0;ne.isContextConsumer=function(e){return Rt(e)===Va};ne.isContextProvider=function(e){return Rt(e)===Ja};ne.isElement=function(e){return typeof e=="object"&&e!==null&&e.$$typeof===Au};ne.isForwardRef=function(e){return Rt(e)===Wa};ne.isFragment=function(e){return Rt(e)===Ua};ne.isLazy=function(e){return Rt(e)===Ka};ne.isMemo=function(e){return Rt(e)===$a};ne.isPortal=function(e){return Rt(e)===uu};ne.isProfiler=function(e){return Rt(e)===ja};ne.isStrictMode=function(e){return Rt(e)===qa};ne.isSuspense=function(e){return Rt(e)===za};ne.isValidElementType=function(e){return typeof e=="string"||typeof e=="function"||e===Ua||e===Ya||e===ja||e===qa||e===za||e===EM||typeof e=="object"&&e!==null&&(e.$$typeof===Ka||e.$$typeof===$a||e.$$typeof===Ja||e.$$typeof===Va||e.$$typeof===Wa||e.$$typeof===xM||e.$$typeof===yM||e.$$typeof===wM||e.$$typeof===IM)};ne.typeOf=Rt});var tC=H((WP,eC)=>{"use strict";eC.exports=Z0()});var cC=H((zP,aC)=>{"use strict";var du=tC(),bM={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},BM={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},SM={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},iC={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},mu={};mu[du.ForwardRef]=SM;mu[du.Memo]=iC;function rC(e){return du.isMemo(e)?iC:mu[e.$$typeof]||bM}var QM=Object.defineProperty,MM=Object.getOwnPropertyNames,nC=Object.getOwnPropertySymbols,vM=Object.getOwnPropertyDescriptor,TM=Object.getPrototypeOf,oC=Object.prototype;function sC(e,t,r){if(typeof t!="string"){if(oC){var n=TM(t);n&&n!==oC&&sC(e,n,r)}var o=MM(t);nC&&(o=o.concat(nC(t)));for(var i=rC(e),s=rC(t),a=0;a<o.length;++a){var c=o[a];if(!BM[c]&&!(r&&r[c])&&!(s&&s[c])&&!(i&&i[c])){var l=vM(t,c);try{QM(e,c,l)}catch{}}}}return e}aC.exports=sC});function Gi(e,t,r){var n="";return r.split(" ").forEach(function(o){e[o]!==void 0?t.push(e[o]+";"):o&&(n+=o+" ")}),n}var _M,Xa,Hi,Za=g(()=>{_M=!0;Xa=function(t,r,n){var o=t.key+"-"+r.name;(n===!1||_M===!1)&&t.registered[o]===void 0&&(t.registered[o]=r.styles)},Hi=function(t,r,n){Xa(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 lC(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 AC=g(()=>{});var uC,fC=g(()=>{uC={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}});function Ui(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 Nr={name:o.name,styles:o.styles,next:Nr},o.name;var i=r;if(i.styles!==void 0){var s=i.next;if(s!==void 0)for(;s!==void 0;)Nr={name:s.name,styles:s.styles,next:Nr},s=s.next;var a=i.styles+";";return a}return FM(e,t,r)}case"function":{if(e!==void 0){var c=Nr,l=r(e);return Nr=c,Ui(e,t,l)}break}}var A=r;if(t==null)return A;var u=t[A];return u!==void 0?u:A}function FM(e,t,r){var n="";if(Array.isArray(r))for(var o=0;o<r.length;o++)n+=Ui(e,t,r[o])+";";else for(var i in r){var s=r[i];if(typeof s!="object"){var a=s;t!=null&&t[a]!==void 0?n+=i+"{"+t[a]+"}":dC(a)&&(n+=gu(i)+":"+mC(i,a)+";")}else{if(i==="NO_COMPONENT_SELECTOR"&&DM)throw new Error(LM);if(Array.isArray(s)&&typeof s[0]=="string"&&(t==null||t[s[0]]===void 0))for(var c=0;c<s.length;c++)dC(s[c])&&(n+=gu(i)+":"+mC(i,s[c])+";");else{var l=Ui(e,t,s);switch(i){case"animation":case"animationName":{n+=gu(i)+":"+l+";";break}default:n+=i+"{"+l+"}"}}}}return n}function Yo(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="";Nr=void 0;var i=e[0];if(i==null||i.raw===void 0)n=!1,o+=Ui(r,t,i);else{var s=i;o+=s[0]}for(var a=1;a<e.length;a++)if(o+=Ui(r,t,e[a]),n){var c=i;o+=c[a]}gC.lastIndex=0;for(var l="",A;(A=gC.exec(o))!==null;)l+="-"+A[1];var u=lC(o)+l;return{name:u,styles:o,next:Nr}}var DM,kM,NM,pC,dC,gu,mC,LM,gC,Nr,ec=g(()=>{AC();fC();au();DM=!1,kM=/[A-Z]|^ms/g,NM=/_EMO_([^_]+?)_([^]*?)_EMO_/g,pC=function(t){return t.charCodeAt(1)===45},dC=function(t){return t!=null&&typeof t!="boolean"},gu=W0(function(e){return pC(e)?e:e.replace(kM,"-$&").toLowerCase()}),mC=function(t,r){switch(t){case"animation":case"animationName":if(typeof r=="string")return r.replace(NM,function(n,o,i){return Nr={name:o,styles:i,next:Nr},o})}return uC[t]!==1&&!pC(t)&&typeof r=="number"&&r!==0?r+"px":r},LM="Component selectors can only be used in conjunction with @emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware compiler transform.";gC=/label:\s*([^\s;{]+)\s*(;|$)/g});var tc,RM,PM,pu,hu=g(()=>{tc=f(B()),RM=function(t){return t()},PM=tc.useInsertionEffect?tc.useInsertionEffect:!1,pu=PM||RM});var er,qi,hC,Eu,OM,Iu,xu,yu,rc,Cu,CC,GM,HM,EC,wu=g(()=>{er=f(B()),qi=f(B());cu();lu();Ha();Za();ec();hu();hC=!1,Eu=er.createContext(typeof HTMLElement<"u"?K0({key:"css"}):null),OM=Eu.Provider,Iu=function(){return(0,qi.useContext)(Eu)},xu=function(t){return(0,qi.forwardRef)(function(r,n){var o=(0,qi.useContext)(Eu);return t(r,o,n)})},yu=er.createContext({}),rc={}.hasOwnProperty,Cu="__EMOTION_TYPE_PLEASE_DO_NOT_USE__",CC=function(t,r){var n={};for(var o in r)rc.call(r,o)&&(n[o]=r[o]);return n[Cu]=t,n},GM=function(t){var r=t.cache,n=t.serialized,o=t.isStringTag;return Xa(r,n,o),pu(function(){return Hi(r,n,o)}),null},HM=xu(function(e,t,r){var n=e.css;typeof n=="string"&&t.registered[n]!==void 0&&(n=t.registered[n]);var o=e[Cu],i=[n],s="";typeof e.className=="string"?s=Gi(t.registered,i,e.className):e.className!=null&&(s=e.className+" ");var a=Yo(i,void 0,er.useContext(yu));s+=t.key+"-"+a.name;var c={};for(var l in e)rc.call(e,l)&&l!=="css"&&l!==Cu&&!hC&&(c[l]=e[l]);return c.className=s,r&&(c.ref=r),er.createElement(er.Fragment,null,er.createElement(GM,{cache:t,serialized:a,isStringTag:typeof o=="string"}),er.createElement(o,c))}),EC=HM});function UM(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return Yo(t)}function bu(){var e=UM.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 Wo,b4,IC,Bu=g(()=>{wu();wu();Wo=f(B());Za();hu();ec();cu();lu();Ha();b4=f(cC()),IC=function(t,r){var n=arguments;if(r==null||!rc.call(r,"css"))return Wo.createElement.apply(void 0,n);var o=n.length,i=new Array(o);i[0]=EC,i[1]=CC(t,r);for(var s=2;s<o;s++)i[s]=n[s];return Wo.createElement.apply(null,i)};(function(e){var t;t||(t=e.JSX||(e.JSX={}))})(IC||(IC={}))});var Su=H((Q4,xC)=>{xC.exports=JBrowseExports["@mui/material/styles"]});var zo,Qu=g(()=>{zo=e=>{let t=e.length,r=0,n="";for(;r<t;r++){let o=e[r];if(o==null)continue;let i;switch(typeof o){case"boolean":break;case"object":{if(Array.isArray(o))i=zo(o);else{let s=o;i="";for(let a in s)s[a]&&a&&(i&&(i+=" "),i+=a)}break}default:i=o}i&&(n&&(n+=" "),n+=i)}return n}});function yC(e){return e instanceof Object&&!("styles"in e)&&!("length"in e)&&!("__emotion_styles"in e)}var wC=g(()=>{});function SC(e){let{useCache:t}=e;function r(){let n=t(),{css:o,cx:i}=(0,BC.useMemo)(()=>qM({cache:n}),[n]);return{css:o,cx:i}}return{useCssAndCx:r}}var BC,qM,bC,QC=g(()=>{BC=f(B(),1);ec();Za();Qu();wC();({createCssAndCx:qM}=(()=>{function e(r,n,o){let i=[],s=Gi(r,i,o);return i.length<2?o:s+n(i)}function t(r){let{cache:n}=r,o=(...s)=>{let a=Yo(s,n.registered);Hi(n,a,!1);let c=`${n.key}-${a.name}`;e:{let l=s[0];if(!yC(l))break e;bC.saveClassNameCSSObjectMapping(n,c,l)}return c};return{css:o,cx:(...s)=>{let a=zo(s),c=bC.fixClassName(n,a,o);return e(n.registered,o,c)}}}return{createCssAndCx:t}})());bC=(()=>{let e=new WeakMap;return{saveClassNameCSSObjectMapping:(t,r,n)=>{let o=e.get(t);o===void 0&&(o=new Map,e.set(t,o)),o.set(r,n)},fixClassName:(()=>{function t(r){let n=!1;return r.map(([o,i])=>{if(i===void 0)return o;let s;if(n)s={"&&":i};else{s=o;for(let a in i)if(a.startsWith("@media")){n=!0;break}}return s})}return(r,n,o)=>{if(!n.includes(" "))return n;let i=e.get(r);return zo(t(n.split(" ").map(s=>[s,i?.get(s)])).map(s=>typeof s=="string"?s:o(s)))}})()}})()});function MC(e,t,r){if(!(t instanceof Object))return e;let n=Object.keys(t);if(n.length===0)return e;let o={};for(let i of Object.keys(e))o[i]=r(e[i],t[i]);for(let i of n){if(i in e)continue;let s=t[i];typeof s=="string"&&(o[i]=s)}return o}var vC=g(()=>{});function TC(e){if(!(e instanceof Object)||typeof e=="function")return e;let t=[];for(let r in e){let n=e[r],o=typeof n;if(!(o==="string"||o==="number"&&!isNaN(n)||o==="boolean"||n===void 0||n===null))return e;t.push(`${r}:${o}_${n}`)}return`xSqLiJdLMd9s${t.join("|")}`}var _C=g(()=>{});function DC(e){let{useTheme:t}=e,{useCssAndCx:r}=SC({useCache:jM});function n(){return function(o){let i=typeof o=="function"?o:()=>o;return function(a,c){let l=t(),{css:A,cx:u}=r(),d=(0,Mu.useMemo)(()=>{let x=i(l),I={};for(let h of Object.keys(x)){let y=x[h];I[h]=A(y)}return I},[A,l]),m=c?.props.classes,p=TC(m);return{classes:(0,Mu.useMemo)(()=>m?MC(d,m,u):d,[d,p,u]),theme:l,css:A,cx:u}}}}return{makeStyles:n}}var Mu,jM,kC=g(()=>{"use client";Mu=f(B(),1);Bu();QC();vC();_C();jM=Iu});var NC,te,LC=g(()=>{NC=f(Su(),1);kC();({makeStyles:te}=DC({useTheme:NC.useTheme}))});var FC=g(()=>{LC()});function nc(...e){return zo(e)}var Et=g(()=>{"use client";Bu();FC();Qu()});function vu({children:e}){let{classes:t}=JM();return(0,RC.jsx)("div",{className:t.bg,children:e})}var RC,JM,PC=g(()=>{RC=f(L(),1);Et();JM=te()(e=>({bg:{padding:4,margin:4,overflow:"auto",maxHeight:200,background:e.palette.mode==="dark"?"#833":"#f88",border:`1px solid ${e.palette.divider}`}}))});var GC=H(Tu=>{var OC="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");Tu.encode=function(e){if(0<=e&&e<OC.length)return OC[e];throw new TypeError("Must be between 0 and 63: "+e)};Tu.decode=function(e){var t=65,r=90,n=97,o=122,i=48,s=57,a=43,c=47,l=26,A=52;return t<=e&&e<=r?e-t:n<=e&&e<=o?e-n+l:i<=e&&e<=s?e-i+A:e==a?62:e==c?63:-1}});var ku=H(Du=>{var HC=GC(),_u=5,UC=1<<_u,qC=UC-1,jC=UC;function VM(e){return e<0?(-e<<1)+1:(e<<1)+0}function YM(e){var t=(e&1)===1,r=e>>1;return t?-r:r}Du.encode=function(t){var r="",n,o=VM(t);do n=o&qC,o>>>=_u,o>0&&(n|=jC),r+=HC.encode(n);while(o>0);return r};Du.decode=function(t,r,n){var o=t.length,i=0,s=0,a,c;do{if(r>=o)throw new Error("Expected more digits in base 64 VLQ value.");if(c=HC.decode(t.charCodeAt(r++)),c===-1)throw new Error("Invalid base64 digit: "+t.charAt(r-1));a=!!(c&jC),c&=qC,i=i+(c<<s),s+=_u}while(a);n.value=YM(i),n.rest=r}});var Ko=H(Ze=>{function WM(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}Ze.getArg=WM;var JC=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,zM=/^data:.+\,.+$/;function ji(e){var t=e.match(JC);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}Ze.urlParse=ji;function $o(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}Ze.urlGenerate=$o;var $M=32;function KM(e){var t=[];return function(r){for(var n=0;n<t.length;n++)if(t[n].input===r){var o=t[0];return t[0]=t[n],t[n]=o,t[0].result}var i=e(r);return t.unshift({input:r,result:i}),t.length>$M&&t.pop(),i}}var Nu=KM(function(t){var r=t,n=ji(t);if(n){if(!n.path)return t;r=n.path}for(var o=Ze.isAbsolute(r),i=[],s=0,a=0;;)if(s=a,a=r.indexOf("/",s),a===-1){i.push(r.slice(s));break}else for(i.push(r.slice(s,a));a<r.length&&r[a]==="/";)a++;for(var c,l=0,a=i.length-1;a>=0;a--)c=i[a],c==="."?i.splice(a,1):c===".."?l++:l>0&&(c===""?(i.splice(a+1,l),l=0):(i.splice(a,2),l--));return r=i.join("/"),r===""&&(r=o?"/":"."),n?(n.path=r,$o(n)):r});Ze.normalize=Nu;function VC(e,t){e===""&&(e="."),t===""&&(t=".");var r=ji(t),n=ji(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),$o(r);if(r||t.match(zM))return t;if(n&&!n.host&&!n.path)return n.host=t,$o(n);var o=t.charAt(0)==="/"?t:Nu(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=o,$o(n)):o}Ze.join=VC;Ze.isAbsolute=function(e){return e.charAt(0)==="/"||JC.test(e)};function XM(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");for(var r=0;t.indexOf(e+"/")!==0;){var n=e.lastIndexOf("/");if(n<0||(e=e.slice(0,n),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}Ze.relative=XM;var YC=(function(){var e=Object.create(null);return!("__proto__"in e)})();function WC(e){return e}function ZM(e){return zC(e)?"$"+e:e}Ze.toSetString=YC?WC:ZM;function ev(e){return zC(e)?e.slice(1):e}Ze.fromSetString=YC?WC:ev;function zC(e){if(!e)return!1;var t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(var r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function tv(e,t,r){var n=Xr(e.source,t.source);return n!==0||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:Xr(e.name,t.name)}Ze.compareByOriginalPositions=tv;function rv(e,t,r){var n;return n=e.originalLine-t.originalLine,n!==0||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:Xr(e.name,t.name)}Ze.compareByOriginalPositionsNoSource=rv;function nv(e,t,r){var n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=Xr(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:Xr(e.name,t.name)}Ze.compareByGeneratedPositionsDeflated=nv;function ov(e,t,r){var n=e.generatedColumn-t.generatedColumn;return n!==0||r||(n=Xr(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:Xr(e.name,t.name)}Ze.compareByGeneratedPositionsDeflatedNoLine=ov;function Xr(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function iv(e,t){var r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=Xr(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:Xr(e.name,t.name)}Ze.compareByGeneratedPositionsInflated=iv;function sv(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}Ze.parseSourceMapInput=sv;function av(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){var n=ji(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){var o=n.path.lastIndexOf("/");o>=0&&(n.path=n.path.substring(0,o+1))}t=VC($o(n),t)}return Nu(t)}Ze.computeSourceURL=av});var Ru=H($C=>{var Lu=Ko(),Fu=Object.prototype.hasOwnProperty,Jn=typeof Map<"u";function Zr(){this._array=[],this._set=Jn?new Map:Object.create(null)}Zr.fromArray=function(t,r){for(var n=new Zr,o=0,i=t.length;o<i;o++)n.add(t[o],r);return n};Zr.prototype.size=function(){return Jn?this._set.size:Object.getOwnPropertyNames(this._set).length};Zr.prototype.add=function(t,r){var n=Jn?t:Lu.toSetString(t),o=Jn?this.has(t):Fu.call(this._set,n),i=this._array.length;(!o||r)&&this._array.push(t),o||(Jn?this._set.set(t,i):this._set[n]=i)};Zr.prototype.has=function(t){if(Jn)return this._set.has(t);var r=Lu.toSetString(t);return Fu.call(this._set,r)};Zr.prototype.indexOf=function(t){if(Jn){var r=this._set.get(t);if(r>=0)return r}else{var n=Lu.toSetString(t);if(Fu.call(this._set,n))return this._set[n]}throw new Error('"'+t+'" is not in the set.')};Zr.prototype.at=function(t){if(t>=0&&t<this._array.length)return this._array[t];throw new Error("No element indexed by "+t)};Zr.prototype.toArray=function(){return this._array.slice()};$C.ArraySet=Zr});var ZC=H(XC=>{var KC=Ko();function cv(e,t){var r=e.generatedLine,n=t.generatedLine,o=e.generatedColumn,i=t.generatedColumn;return n>r||n==r&&i>=o||KC.compareByGeneratedPositionsInflated(e,t)<=0}function oc(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}oc.prototype.unsortedForEach=function(t,r){this._array.forEach(t,r)};oc.prototype.add=function(t){cv(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))};oc.prototype.toArray=function(){return this._sorted||(this._array.sort(KC.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};XC.MappingList=oc});var Pu=H(eE=>{var Ji=ku(),Ne=Ko(),ic=Ru().ArraySet,lv=ZC().MappingList;function tr(e){e||(e={}),this._file=Ne.getArg(e,"file",null),this._sourceRoot=Ne.getArg(e,"sourceRoot",null),this._skipValidation=Ne.getArg(e,"skipValidation",!1),this._ignoreInvalidMapping=Ne.getArg(e,"ignoreInvalidMapping",!1),this._sources=new ic,this._names=new ic,this._mappings=new lv,this._sourcesContents=null}tr.prototype._version=3;tr.fromSourceMap=function(t,r){var n=t.sourceRoot,o=new tr(Object.assign(r||{},{file:t.file,sourceRoot:n}));return t.eachMapping(function(i){var s={generated:{line:i.generatedLine,column:i.generatedColumn}};i.source!=null&&(s.source=i.source,n!=null&&(s.source=Ne.relative(n,s.source)),s.original={line:i.originalLine,column:i.originalColumn},i.name!=null&&(s.name=i.name)),o.addMapping(s)}),t.sources.forEach(function(i){var s=i;n!==null&&(s=Ne.relative(n,i)),o._sources.has(s)||o._sources.add(s);var a=t.sourceContentFor(i);a!=null&&o.setSourceContent(i,a)}),o};tr.prototype.addMapping=function(t){var r=Ne.getArg(t,"generated"),n=Ne.getArg(t,"original",null),o=Ne.getArg(t,"source",null),i=Ne.getArg(t,"name",null);!this._skipValidation&&this._validateMapping(r,n,o,i)===!1||(o!=null&&(o=String(o),this._sources.has(o)||this._sources.add(o)),i!=null&&(i=String(i),this._names.has(i)||this._names.add(i)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:o,name:i}))};tr.prototype.setSourceContent=function(t,r){var n=t;this._sourceRoot!=null&&(n=Ne.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[Ne.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[Ne.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};tr.prototype.applySourceMap=function(t,r,n){var o=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);o=t.file}var i=this._sourceRoot;i!=null&&(o=Ne.relative(i,o));var s=new ic,a=new ic;this._mappings.unsortedForEach(function(c){if(c.source===o&&c.originalLine!=null){var l=t.originalPositionFor({line:c.originalLine,column:c.originalColumn});l.source!=null&&(c.source=l.source,n!=null&&(c.source=Ne.join(n,c.source)),i!=null&&(c.source=Ne.relative(i,c.source)),c.originalLine=l.line,c.originalColumn=l.column,l.name!=null&&(c.name=l.name))}var A=c.source;A!=null&&!s.has(A)&&s.add(A);var u=c.name;u!=null&&!a.has(u)&&a.add(u)},this),this._sources=s,this._names=a,t.sources.forEach(function(c){var l=t.sourceContentFor(c);l!=null&&(n!=null&&(c=Ne.join(n,c)),i!=null&&(c=Ne.relative(i,c)),this.setSourceContent(c,l))},this)};tr.prototype._validateMapping=function(t,r,n,o){if(r&&typeof r.line!="number"&&typeof r.column!="number"){var i="original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.";if(this._ignoreInvalidMapping)return typeof console<"u"&&console.warn&&console.warn(i),!1;throw new Error(i)}if(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!n&&!o)){if(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&n)return;var i="Invalid mapping: "+JSON.stringify({generated:t,source:n,original:r,name:o});if(this._ignoreInvalidMapping)return typeof console<"u"&&console.warn&&console.warn(i),!1;throw new Error(i)}};tr.prototype._serializeMappings=function(){for(var t=0,r=1,n=0,o=0,i=0,s=0,a="",c,l,A,u,d=this._mappings.toArray(),m=0,p=d.length;m<p;m++){if(l=d[m],c="",l.generatedLine!==r)for(t=0;l.generatedLine!==r;)c+=";",r++;else if(m>0){if(!Ne.compareByGeneratedPositionsInflated(l,d[m-1]))continue;c+=","}c+=Ji.encode(l.generatedColumn-t),t=l.generatedColumn,l.source!=null&&(u=this._sources.indexOf(l.source),c+=Ji.encode(u-s),s=u,c+=Ji.encode(l.originalLine-1-o),o=l.originalLine-1,c+=Ji.encode(l.originalColumn-n),n=l.originalColumn,l.name!=null&&(A=this._names.indexOf(l.name),c+=Ji.encode(A-i),i=A)),a+=c}return a};tr.prototype._generateSourcesContent=function(t,r){return t.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=Ne.relative(r,n));var o=Ne.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,o)?this._sourcesContents[o]:null},this)};tr.prototype.toJSON=function(){var t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t};tr.prototype.toString=function(){return JSON.stringify(this.toJSON())};eE.SourceMapGenerator=tr});var tE=H(Vn=>{Vn.GREATEST_LOWER_BOUND=1;Vn.LEAST_UPPER_BOUND=2;function Ou(e,t,r,n,o,i){var s=Math.floor((t-e)/2)+e,a=o(r,n[s],!0);return a===0?s:a>0?t-s>1?Ou(s,t,r,n,o,i):i==Vn.LEAST_UPPER_BOUND?t<n.length?t:-1:s:s-e>1?Ou(e,s,r,n,o,i):i==Vn.LEAST_UPPER_BOUND?s:e<0?-1:e}Vn.search=function(t,r,n,o){if(r.length===0)return-1;var i=Ou(-1,r.length,t,r,n,o||Vn.GREATEST_LOWER_BOUND);if(i<0)return-1;for(;i-1>=0&&n(r[i],r[i-1],!0)===0;)--i;return i}});var oE=H(nE=>{function Av(e){function t(o,i,s){var a=o[i];o[i]=o[s],o[s]=a}function r(o,i){return Math.round(o+Math.random()*(i-o))}function n(o,i,s,a){if(s<a){var c=r(s,a),l=s-1;t(o,c,a);for(var A=o[a],u=s;u<a;u++)i(o[u],A,!1)<=0&&(l+=1,t(o,l,u));t(o,l+1,u);var d=l+1;n(o,i,s,d-1),n(o,i,d+1,a)}}return n}function uv(e){let t=Av.toString();return new Function(`return ${t}`)()(e)}var rE=new WeakMap;nE.quickSort=function(e,t,r=0){let n=rE.get(t);n===void 0&&(n=uv(t),rE.set(t,n)),n(e,t,r,e.length-1)}});var aE=H(sc=>{var D=Ko(),Hu=tE(),Xo=Ru().ArraySet,fv=ku(),Vi=oE().quickSort;function he(e,t){var r=e;return typeof e=="string"&&(r=D.parseSourceMapInput(e)),r.sections!=null?new Er(r,t):new it(r,t)}he.fromSourceMap=function(e,t){return it.fromSourceMap(e,t)};he.prototype._version=3;he.prototype.__generatedMappings=null;Object.defineProperty(he.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});he.prototype.__originalMappings=null;Object.defineProperty(he.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});he.prototype._charIsMappingSeparator=function(t,r){var n=t.charAt(r);return n===";"||n===","};he.prototype._parseMappings=function(t,r){throw new Error("Subclasses must implement _parseMappings")};he.GENERATED_ORDER=1;he.ORIGINAL_ORDER=2;he.GREATEST_LOWER_BOUND=1;he.LEAST_UPPER_BOUND=2;he.prototype.eachMapping=function(t,r,n){var o=r||null,i=n||he.GENERATED_ORDER,s;switch(i){case he.GENERATED_ORDER:s=this._generatedMappings;break;case he.ORIGINAL_ORDER:s=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}for(var a=this.sourceRoot,c=t.bind(o),l=this._names,A=this._sources,u=this._sourceMapURL,d=0,m=s.length;d<m;d++){var p=s[d],C=p.source===null?null:A.at(p.source);C!==null&&(C=D.computeSourceURL(a,C,u)),c({source:C,generatedLine:p.generatedLine,generatedColumn:p.generatedColumn,originalLine:p.originalLine,originalColumn:p.originalColumn,name:p.name===null?null:l.at(p.name)})}};he.prototype.allGeneratedPositionsFor=function(t){var r=D.getArg(t,"line"),n={source:D.getArg(t,"source"),originalLine:r,originalColumn:D.getArg(t,"column",0)};if(n.source=this._findSourceIndex(n.source),n.source<0)return[];var o=[],i=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",D.compareByOriginalPositions,Hu.LEAST_UPPER_BOUND);if(i>=0){var s=this._originalMappings[i];if(t.column===void 0)for(var a=s.originalLine;s&&s.originalLine===a;)o.push({line:D.getArg(s,"generatedLine",null),column:D.getArg(s,"generatedColumn",null),lastColumn:D.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[++i];else for(var c=s.originalColumn;s&&s.originalLine===r&&s.originalColumn==c;)o.push({line:D.getArg(s,"generatedLine",null),column:D.getArg(s,"generatedColumn",null),lastColumn:D.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[++i]}return o};sc.SourceMapConsumer=he;function it(e,t){var r=e;typeof e=="string"&&(r=D.parseSourceMapInput(e));var n=D.getArg(r,"version"),o=D.getArg(r,"sources"),i=D.getArg(r,"names",[]),s=D.getArg(r,"sourceRoot",null),a=D.getArg(r,"sourcesContent",null),c=D.getArg(r,"mappings"),l=D.getArg(r,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);s&&(s=D.normalize(s)),o=o.map(String).map(D.normalize).map(function(A){return s&&D.isAbsolute(s)&&D.isAbsolute(A)?D.relative(s,A):A}),this._names=Xo.fromArray(i.map(String),!0),this._sources=Xo.fromArray(o,!0),this._absoluteSources=this._sources.toArray().map(function(A){return D.computeSourceURL(s,A,t)}),this.sourceRoot=s,this.sourcesContent=a,this._mappings=c,this._sourceMapURL=t,this.file=l}it.prototype=Object.create(he.prototype);it.prototype.consumer=he;it.prototype._findSourceIndex=function(e){var t=e;if(this.sourceRoot!=null&&(t=D.relative(this.sourceRoot,t)),this._sources.has(t))return this._sources.indexOf(t);var r;for(r=0;r<this._absoluteSources.length;++r)if(this._absoluteSources[r]==e)return r;return-1};it.fromSourceMap=function(t,r){var n=Object.create(it.prototype),o=n._names=Xo.fromArray(t._names.toArray(),!0),i=n._sources=Xo.fromArray(t._sources.toArray(),!0);n.sourceRoot=t._sourceRoot,n.sourcesContent=t._generateSourcesContent(n._sources.toArray(),n.sourceRoot),n.file=t._file,n._sourceMapURL=r,n._absoluteSources=n._sources.toArray().map(function(m){return D.computeSourceURL(n.sourceRoot,m,r)});for(var s=t._mappings.toArray().slice(),a=n.__generatedMappings=[],c=n.__originalMappings=[],l=0,A=s.length;l<A;l++){var u=s[l],d=new sE;d.generatedLine=u.generatedLine,d.generatedColumn=u.generatedColumn,u.source&&(d.source=i.indexOf(u.source),d.originalLine=u.originalLine,d.originalColumn=u.originalColumn,u.name&&(d.name=o.indexOf(u.name)),c.push(d)),a.push(d)}return Vi(n.__originalMappings,D.compareByOriginalPositions),n};it.prototype._version=3;Object.defineProperty(it.prototype,"sources",{get:function(){return this._absoluteSources.slice()}});function sE(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}var Gu=D.compareByGeneratedPositionsDeflatedNoLine;function iE(e,t){let r=e.length,n=e.length-t;if(!(n<=1))if(n==2){let o=e[t],i=e[t+1];Gu(o,i)>0&&(e[t]=i,e[t+1]=o)}else if(n<20)for(let o=t;o<r;o++)for(let i=o;i>t;i--){let s=e[i-1],a=e[i];if(Gu(s,a)<=0)break;e[i-1]=a,e[i]=s}else Vi(e,Gu,t)}it.prototype._parseMappings=function(t,r){var n=1,o=0,i=0,s=0,a=0,c=0,l=t.length,A=0,u={},d={},m=[],p=[],C,x,I,h,y;let w=0;for(;A<l;)if(t.charAt(A)===";")n++,A++,o=0,iE(p,w),w=p.length;else if(t.charAt(A)===",")A++;else{for(C=new sE,C.generatedLine=n,h=A;h<l&&!this._charIsMappingSeparator(t,h);h++);for(x=t.slice(A,h),I=[];A<h;)fv.decode(t,A,d),y=d.value,A=d.rest,I.push(y);if(I.length===2)throw new Error("Found a source, but no line and column");if(I.length===3)throw new Error("Found a source and line, but no column");if(C.generatedColumn=o+I[0],o=C.generatedColumn,I.length>1&&(C.source=a+I[1],a+=I[1],C.originalLine=i+I[2],i=C.originalLine,C.originalLine+=1,C.originalColumn=s+I[3],s=C.originalColumn,I.length>4&&(C.name=c+I[4],c+=I[4])),p.push(C),typeof C.originalLine=="number"){let v=C.source;for(;m.length<=v;)m.push(null);m[v]===null&&(m[v]=[]),m[v].push(C)}}iE(p,w),this.__generatedMappings=p;for(var S=0;S<m.length;S++)m[S]!=null&&Vi(m[S],D.compareByOriginalPositionsNoSource);this.__originalMappings=[].concat(...m)};it.prototype._findMapping=function(t,r,n,o,i,s){if(t[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+t[n]);if(t[o]<0)throw new TypeError("Column must be greater than or equal to 0, got "+t[o]);return Hu.search(t,r,i,s)};it.prototype.computeColumnSpans=function(){for(var t=0;t<this._generatedMappings.length;++t){var r=this._generatedMappings[t];if(t+1<this._generatedMappings.length){var n=this._generatedMappings[t+1];if(r.generatedLine===n.generatedLine){r.lastGeneratedColumn=n.generatedColumn-1;continue}}r.lastGeneratedColumn=1/0}};it.prototype.originalPositionFor=function(t){var r={generatedLine:D.getArg(t,"line"),generatedColumn:D.getArg(t,"column")},n=this._findMapping(r,this._generatedMappings,"generatedLine","generatedColumn",D.compareByGeneratedPositionsDeflated,D.getArg(t,"bias",he.GREATEST_LOWER_BOUND));if(n>=0){var o=this._generatedMappings[n];if(o.generatedLine===r.generatedLine){var i=D.getArg(o,"source",null);i!==null&&(i=this._sources.at(i),i=D.computeSourceURL(this.sourceRoot,i,this._sourceMapURL));var s=D.getArg(o,"name",null);return s!==null&&(s=this._names.at(s)),{source:i,line:D.getArg(o,"originalLine",null),column:D.getArg(o,"originalColumn",null),name:s}}}return{source:null,line:null,column:null,name:null}};it.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1};it.prototype.sourceContentFor=function(t,r){if(!this.sourcesContent)return null;var n=this._findSourceIndex(t);if(n>=0)return this.sourcesContent[n];var o=t;this.sourceRoot!=null&&(o=D.relative(this.sourceRoot,o));var i;if(this.sourceRoot!=null&&(i=D.urlParse(this.sourceRoot))){var s=o.replace(/^file:\/\//,"");if(i.scheme=="file"&&this._sources.has(s))return this.sourcesContent[this._sources.indexOf(s)];if((!i.path||i.path=="/")&&this._sources.has("/"+o))return this.sourcesContent[this._sources.indexOf("/"+o)]}if(r)return null;throw new Error('"'+o+'" is not in the SourceMap.')};it.prototype.generatedPositionFor=function(t){var r=D.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};var n={source:r,originalLine:D.getArg(t,"line"),originalColumn:D.getArg(t,"column")},o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",D.compareByOriginalPositions,D.getArg(t,"bias",he.GREATEST_LOWER_BOUND));if(o>=0){var i=this._originalMappings[o];if(i.source===n.source)return{line:D.getArg(i,"generatedLine",null),column:D.getArg(i,"generatedColumn",null),lastColumn:D.getArg(i,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};sc.BasicSourceMapConsumer=it;function Er(e,t){var r=e;typeof e=="string"&&(r=D.parseSourceMapInput(e));var n=D.getArg(r,"version"),o=D.getArg(r,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new Xo,this._names=new Xo;var i={line:-1,column:0};this._sections=o.map(function(s){if(s.url)throw new Error("Support for url field in sections not implemented.");var a=D.getArg(s,"offset"),c=D.getArg(a,"line"),l=D.getArg(a,"column");if(c<i.line||c===i.line&&l<i.column)throw new Error("Section offsets must be ordered and non-overlapping.");return i=a,{generatedOffset:{generatedLine:c+1,generatedColumn:l+1},consumer:new he(D.getArg(s,"map"),t)}})}Er.prototype=Object.create(he.prototype);Er.prototype.constructor=he;Er.prototype._version=3;Object.defineProperty(Er.prototype,"sources",{get:function(){for(var e=[],t=0;t<this._sections.length;t++)for(var r=0;r<this._sections[t].consumer.sources.length;r++)e.push(this._sections[t].consumer.sources[r]);return e}});Er.prototype.originalPositionFor=function(t){var r={generatedLine:D.getArg(t,"line"),generatedColumn:D.getArg(t,"column")},n=Hu.search(r,this._sections,function(i,s){var a=i.generatedLine-s.generatedOffset.generatedLine;return a||i.generatedColumn-s.generatedOffset.generatedColumn}),o=this._sections[n];return o?o.consumer.originalPositionFor({line:r.generatedLine-(o.generatedOffset.generatedLine-1),column:r.generatedColumn-(o.generatedOffset.generatedLine===r.generatedLine?o.generatedOffset.generatedColumn-1:0),bias:t.bias}):{source:null,line:null,column:null,name:null}};Er.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(t){return t.consumer.hasContentsOfAllSources()})};Er.prototype.sourceContentFor=function(t,r){for(var n=0;n<this._sections.length;n++){var o=this._sections[n],i=o.consumer.sourceContentFor(t,!0);if(i||i==="")return i}if(r)return null;throw new Error('"'+t+'" is not in the SourceMap.')};Er.prototype.generatedPositionFor=function(t){for(var r=0;r<this._sections.length;r++){var n=this._sections[r];if(n.consumer._findSourceIndex(D.getArg(t,"source"))!==-1){var o=n.consumer.generatedPositionFor(t);if(o){var i={line:o.line+(n.generatedOffset.generatedLine-1),column:o.column+(n.generatedOffset.generatedLine===o.line?n.generatedOffset.generatedColumn-1:0)};return i}}}return{line:null,column:null}};Er.prototype._parseMappings=function(t,r){this.__generatedMappings=[],this.__originalMappings=[];for(var n=0;n<this._sections.length;n++)for(var o=this._sections[n],i=o.consumer._generatedMappings,s=0;s<i.length;s++){var a=i[s],c=o.consumer._sources.at(a.source);c!==null&&(c=D.computeSourceURL(o.consumer.sourceRoot,c,this._sourceMapURL)),this._sources.add(c),c=this._sources.indexOf(c);var l=null;a.name&&(l=o.consumer._names.at(a.name),this._names.add(l),l=this._names.indexOf(l));var A={source:c,generatedLine:a.generatedLine+(o.generatedOffset.generatedLine-1),generatedColumn:a.generatedColumn+(o.generatedOffset.generatedLine===a.generatedLine?o.generatedOffset.generatedColumn-1:0),originalLine:a.originalLine,originalColumn:a.originalColumn,name:l};this.__generatedMappings.push(A),typeof A.originalLine=="number"&&this.__originalMappings.push(A)}Vi(this.__generatedMappings,D.compareByGeneratedPositionsDeflated),Vi(this.__originalMappings,D.compareByOriginalPositions)};sc.IndexedSourceMapConsumer=Er});var lE=H(cE=>{var dv=Pu().SourceMapGenerator,ac=Ko(),mv=/(\r?\n)/,gv=10,Zo="$$$isSourceNode$$$";function Pt(e,t,r,n,o){this.children=[],this.sourceContents={},this.line=e??null,this.column=t??null,this.source=r??null,this.name=o??null,this[Zo]=!0,n!=null&&this.add(n)}Pt.fromStringWithSourceMap=function(t,r,n){var o=new Pt,i=t.split(mv),s=0,a=function(){var d=p(),m=p()||"";return d+m;function p(){return s<i.length?i[s++]:void 0}},c=1,l=0,A=null;return r.eachMapping(function(d){if(A!==null)if(c<d.generatedLine)u(A,a()),c++,l=0;else{var m=i[s]||"",p=m.substr(0,d.generatedColumn-l);i[s]=m.substr(d.generatedColumn-l),l=d.generatedColumn,u(A,p),A=d;return}for(;c<d.generatedLine;)o.add(a()),c++;if(l<d.generatedColumn){var m=i[s]||"";o.add(m.substr(0,d.generatedColumn)),i[s]=m.substr(d.generatedColumn),l=d.generatedColumn}A=d},this),s<i.length&&(A&&u(A,a()),o.add(i.splice(s).join(""))),r.sources.forEach(function(d){var m=r.sourceContentFor(d);m!=null&&(n!=null&&(d=ac.join(n,d)),o.setSourceContent(d,m))}),o;function u(d,m){if(d===null||d.source===void 0)o.add(m);else{var p=n?ac.join(n,d.source):d.source;o.add(new Pt(d.originalLine,d.originalColumn,p,m,d.name))}}};Pt.prototype.add=function(t){if(Array.isArray(t))t.forEach(function(r){this.add(r)},this);else if(t[Zo]||typeof t=="string")t&&this.children.push(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};Pt.prototype.prepend=function(t){if(Array.isArray(t))for(var r=t.length-1;r>=0;r--)this.prepend(t[r]);else if(t[Zo]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};Pt.prototype.walk=function(t){for(var r,n=0,o=this.children.length;n<o;n++)r=this.children[n],r[Zo]?r.walk(t):r!==""&&t(r,{source:this.source,line:this.line,column:this.column,name:this.name})};Pt.prototype.join=function(t){var r,n,o=this.children.length;if(o>0){for(r=[],n=0;n<o-1;n++)r.push(this.children[n]),r.push(t);r.push(this.children[n]),this.children=r}return this};Pt.prototype.replaceRight=function(t,r){var n=this.children[this.children.length-1];return n[Zo]?n.replaceRight(t,r):typeof n=="string"?this.children[this.children.length-1]=n.replace(t,r):this.children.push("".replace(t,r)),this};Pt.prototype.setSourceContent=function(t,r){this.sourceContents[ac.toSetString(t)]=r};Pt.prototype.walkSourceContents=function(t){for(var r=0,n=this.children.length;r<n;r++)this.children[r][Zo]&&this.children[r].walkSourceContents(t);for(var o=Object.keys(this.sourceContents),r=0,n=o.length;r<n;r++)t(ac.fromSetString(o[r]),this.sourceContents[o[r]])};Pt.prototype.toString=function(){var t="";return this.walk(function(r){t+=r}),t};Pt.prototype.toStringWithSourceMap=function(t){var r={code:"",line:1,column:0},n=new dv(t),o=!1,i=null,s=null,a=null,c=null;return this.walk(function(l,A){r.code+=l,A.source!==null&&A.line!==null&&A.column!==null?((i!==A.source||s!==A.line||a!==A.column||c!==A.name)&&n.addMapping({source:A.source,original:{line:A.line,column:A.column},generated:{line:r.line,column:r.column},name:A.name}),i=A.source,s=A.line,a=A.column,c=A.name,o=!0):o&&(n.addMapping({generated:{line:r.line,column:r.column}}),i=null,o=!1);for(var u=0,d=l.length;u<d;u++)l.charCodeAt(u)===gv?(r.line++,r.column=0,u+1===d?(i=null,o=!1):o&&n.addMapping({source:A.source,original:{line:A.line,column:A.column},generated:{line:r.line,column:r.column},name:A.name})):r.column++}),this.walkSourceContents(function(l,A){n.setSourceContent(l,A)}),{code:r.code,map:n}};cE.SourceNode=Pt});var AE=H(cc=>{cc.SourceMapGenerator=Pu().SourceMapGenerator;cc.SourceMapConsumer=aE().SourceMapConsumer;cc.SourceNode=lE().SourceNode});function Ac(e){let{children:t,...r}=e;return(0,lc.jsxs)(uE.Link,{...r,target:"_blank",rel:"noopener noreferrer",children:[t," ",(0,lc.jsx)(pa,{fontSize:"small"})]})}var lc,uE,fE=g(()=>{lc=f(L(),1);bA();uE=f(N(),1)});function Uu({text:e,extra:t}){let{classes:r}=pv(),n=t?`supporting data: ${JSON.stringify(t,null,2)}`:"",o=[e,n].filter(Boolean).join(`
|
|
3
|
+
`):"",this.name="UnsubscriptionError",this.errors=r}})});function Ol(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var Pd=g(()=>{});function Gd(e){return e instanceof Hs||e&&"closed"in e&&vr(e.remove)&&vr(e.add)&&vr(e.unsubscribe)}function Od(e){vr(e)?e():e.unsubscribe()}var Hs,oL,Hd=g(()=>{Si();Ps();Rd();Pd();Hs=(function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,r,n,o,i;if(!this.closed){this.closed=!0;var s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var a=Rl(s),c=a.next();!c.done;c=a.next()){var l=c.value;l.remove(this)}}catch(C){t={error:C}}finally{try{c&&!c.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}else s.remove(this);var A=this.initialTeardown;if(vr(A))try{A()}catch(C){i=C instanceof Gs?C.errors:[C]}var u=this._finalizers;if(u){this._finalizers=null;try{for(var m=Rl(u),d=m.next();!d.done;d=m.next()){var p=d.value;try{Od(p)}catch(C){i=i??[],C instanceof Gs?i=ho(ho([],po(i)),po(C.errors)):i.push(C)}}}catch(C){n={error:C}}finally{try{d&&!d.done&&(o=m.return)&&o.call(m)}finally{if(n)throw n.error}}}if(i)throw new Gs(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)Od(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}},e.prototype._hasParent=function(t){var r=this._parentage;return r===t||Array.isArray(r)&&r.includes(t)},e.prototype._addParent=function(t){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t},e.prototype._removeParent=function(t){var r=this._parentage;r===t?this._parentage=null:Array.isArray(r)&&Ol(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&Ol(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=(function(){var t=new e;return t.closed=!0,t})(),e})(),oL=Hs.EMPTY});var An,Us=g(()=>{An={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}});var Co,Gl=g(()=>{Si();Co={setTimeout:function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];var o=Co.delegate;return o?.setTimeout?o.setTimeout.apply(o,ho([e,t],po(r))):setTimeout.apply(void 0,ho([e,t],po(r)))},clearTimeout:function(e){var t=Co.delegate;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0}});function Ud(e){Co.setTimeout(function(){var t=An.onUnhandledError;if(t)t(e);else throw e})}var qd=g(()=>{Us();Gl()});function Hl(){}var jd=g(()=>{});function Vd(e){return Ul("E",void 0,e)}function Yd(e){return Ul("N",e,void 0)}function Ul(e,t,r){return{kind:e,value:t,error:r}}var Jd,Wd=g(()=>{Jd=(function(){return Ul("C",void 0,void 0)})()});function zd(e){An.useDeprecatedSynchronousErrorHandling&&ql&&(ql.errorThrown=!0,ql.error=e)}var ql,$d=g(()=>{Us();ql=null});function jl(e,t){return p1.call(e,t)}function qs(e){An.useDeprecatedSynchronousErrorHandling?zd(e):Ud(e)}function C1(e){throw e}function Jl(e,t){var r=An.onStoppedNotification;r&&Co.setTimeout(function(){return r(e,t)})}var Vl,p1,h1,Yl,E1,Wl=g(()=>{Si();Ps();Hd();Us();qd();jd();Wd();Gl();$d();Vl=(function(e){Bi(t,e);function t(r){var n=e.call(this)||this;return n.isStopped=!1,r?(n.destination=r,Gd(r)&&r.add(n)):n.destination=E1,n}return t.create=function(r,n,o){return new Yl(r,n,o)},t.prototype.next=function(r){this.isStopped?Jl(Yd(r),this):this._next(r)},t.prototype.error=function(r){this.isStopped?Jl(Vd(r),this):(this.isStopped=!0,this._error(r))},t.prototype.complete=function(){this.isStopped?Jl(Jd,this):(this.isStopped=!0,this._complete())},t.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,e.prototype.unsubscribe.call(this),this.destination=null)},t.prototype._next=function(r){this.destination.next(r)},t.prototype._error=function(r){try{this.destination.error(r)}finally{this.unsubscribe()}},t.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},t})(Hs),p1=Function.prototype.bind;h1=(function(){function e(t){this.partialObserver=t}return e.prototype.next=function(t){var r=this.partialObserver;if(r.next)try{r.next(t)}catch(n){qs(n)}},e.prototype.error=function(t){var r=this.partialObserver;if(r.error)try{r.error(t)}catch(n){qs(n)}else qs(t)},e.prototype.complete=function(){var t=this.partialObserver;if(t.complete)try{t.complete()}catch(r){qs(r)}},e})(),Yl=(function(e){Bi(t,e);function t(r,n,o){var i=e.call(this)||this,s;if(vr(r)||!r)s={next:r??void 0,error:n??void 0,complete:o??void 0};else{var a;i&&An.useDeprecatedNextContext?(a=Object.create(r),a.unsubscribe=function(){return i.unsubscribe()},s={next:r.next&&jl(r.next,a),error:r.error&&jl(r.error,a),complete:r.complete&&jl(r.complete,a)}):s=r}return i.destination=new h1(s),i}return t})(Vl);E1={closed:!0,next:Hl,error:C1,complete:Hl}});function I1(e){return vr(e?.lift)}function js(e){return function(t){if(I1(t))return t.lift(function(r){try{return e(r,this)}catch(n){this.error(n)}});throw new TypeError("Unable to lift unknown Observable type")}}var zl=g(()=>{Ps()});function Kd(e,t,r,n,o){return new x1(e,t,r,n,o)}var x1,Xd=g(()=>{Si();Wl();x1=(function(e){Bi(t,e);function t(r,n,o,i,s,a){var c=e.call(this,r)||this;return c.onFinalize=s,c.shouldUnsubscribe=a,c._next=n?function(l){try{n(l)}catch(A){r.error(A)}}:e.prototype._next,c._error=i?function(l){try{i(l)}catch(A){r.error(A)}finally{this.unsubscribe()}}:e.prototype._error,c._complete=o?function(){try{o()}catch(l){r.error(l)}finally{this.unsubscribe()}}:e.prototype._complete,c}return t.prototype.unsubscribe=function(){var r;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var n=this.closed;e.prototype.unsubscribe.call(this),!n&&((r=this.onFinalize)===null||r===void 0||r.call(this))}},t})(Vl)});var Zd,eg=g(()=>{Pl();Zd=Os(function(e){return function(){e(this),this.name="EmptyError",this.message="no elements in sequence"}})});function $l(e,t){var r=typeof t=="object";return new Promise(function(n,o){var i=new Yl({next:function(s){n(s),i.unsubscribe()},error:o,complete:function(){r?n(t.defaultValue):o(new Zd)}});e.subscribe(i)})}var tg=g(()=>{eg();Wl()});var rg=g(()=>{});function ng(e,t,r,n,o){return function(i,s){var a=r,c=t,l=0;i.subscribe(Kd(s,function(A){var u=l++;c=a?e(c,A,u):(a=!0,A),n&&s.next(c)},o&&(function(){a&&s.next(c),s.complete()})))}}var og=g(()=>{Xd()});function ig(e,t){return js(ng(e,t,arguments.length>=2,!1,!0))}var sg=g(()=>{og();zl()});function Kl(){return js(function(e,t){ig(y1,[])(e).subscribe(t)})}var y1,ag=g(()=>{sg();zl();y1=function(e,t){return e.push(t),e}});var cg=g(()=>{tg();rg();ag()});var ug={};Je(ug,{default:()=>Js});var lg,Ag,Js,fg=g(()=>{"use strict";lg=f(go()),Ag=f(Fd());cg();Js=class extends Ag.BaseAdapter{async configurePre(){let t=this.getSubAdapter;if(t)return(await t({...(0,lg.readConfObject)(this.config),type:"BgzipFastaAdapter"})).dataAdapter;throw new Error("no get subadapter")}configure(){return this.configureP??=this.configurePre().catch(t=>{throw this.configureP=void 0,t}),this.configureP}async getMSARefs(){return this.refNamesP??=this.configure().then(t=>t.getRefNames()).catch(t=>{throw this.refNamesP=void 0,t}),this.refNamesP}getMsaRegex(){return new RegExp(this.getConf("msaRegex"))}refNameToMsaId(t){return t.split(this.getMsaRegex())[0]}async getMSAList(){let t=await this.getMSARefs();return[...new Set(t.map(n=>this.refNameToMsaId(n)))]}async getMSA(t){let r=await this.configure(),o=(await r.getRefNames()).filter(i=>this.refNameToMsaId(i)===t);return $l(r.getFeaturesInMultipleRegions(o.map(i=>({refName:i,start:0,end:1e9,assemblyName:""}))).pipe(Kl()))}}});var ye=G((ZL,pg)=>{pg.exports=JBrowseExports["@jbrowse/core/ui"]});var _=G((eF,hg)=>{hg.exports=JBrowseExports["@mui/material"]});var _g=G(Tg=>{"use strict";var Io=b();function D1(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var k1=typeof Object.is=="function"?Object.is:D1,N1=Io.useState,L1=Io.useEffect,F1=Io.useLayoutEffect,R1=Io.useDebugValue;function P1(e,t){var r=t(),n=N1({inst:{value:r,getSnapshot:t}}),o=n[0].inst,i=n[1];return F1(function(){o.value=r,o.getSnapshot=t,rA(o)&&i({inst:o})},[e,r,t]),L1(function(){return rA(o)&&i({inst:o}),e(function(){rA(o)&&i({inst:o})})},[e]),R1(r),r}function rA(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!k1(e,r)}catch{return!0}}function O1(e,t){return t()}var G1=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?O1:P1;Tg.useSyncExternalStore=Io.useSyncExternalStore!==void 0?Io.useSyncExternalStore:G1});var kg=G((mF,Dg)=>{"use strict";Dg.exports=_g()});var ip,fa,EA=g(()=>{"use client";Y();ip=f(L(),1),fa=(0,T.createSvgIcon)((0,ip.jsx)("path",{d:"M19.14 12.94c.04-.3.06-.61.06-.94 0-.32-.02-.64-.07-.94l2.03-1.58c.18-.14.23-.41.12-.61l-1.92-3.32c-.12-.22-.37-.29-.59-.22l-2.39.96c-.5-.38-1.03-.7-1.62-.94l-.36-2.54c-.04-.24-.24-.41-.48-.41h-3.84c-.24 0-.43.17-.47.41l-.36 2.54c-.59.24-1.13.57-1.62.94l-2.39-.96c-.22-.08-.47 0-.59.22L2.74 8.87c-.12.21-.08.47.12.61l2.03 1.58c-.05.3-.09.63-.09.94s.02.64.07.94l-2.03 1.58c-.18.14-.23.41-.12.61l1.92 3.32c.12.22.37.29.59.22l2.39-.96c.5.38 1.03.7 1.62.94l.36 2.54c.05.24.24.41.48.41h3.84c.24 0 .44-.17.47-.41l.36-2.54c.59-.24 1.13-.56 1.62-.94l2.39.96c.22.08.47 0 .59-.22l1.92-3.32c.12-.22.07-.47-.12-.61zM12 15.6c-1.98 0-3.6-1.62-3.6-3.6s1.62-3.6 3.6-3.6 3.6 1.62 3.6 3.6-1.62 3.6-3.6 3.6"}),"Settings")});var sp,ma,IA=g(()=>{"use client";Y();sp=f(L(),1),ma=(0,T.createSvgIcon)((0,sp.jsx)("path",{d:"M16.59 8.59 12 13.17 7.41 8.59 6 10l6 6 6-6z"}),"ExpandMore")});function l2(){return Ap||(Ap=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function A2(){return up||(up=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}function u2(e){let t=new Promise((r,n)=>{let o=()=>{e.removeEventListener("success",i),e.removeEventListener("error",s)},i=()=>{r(Fn(e.result)),o()},s=()=>{n(e.error),o()};e.addEventListener("success",i),e.addEventListener("error",s)});return ga.set(t,e),t}function f2(e){if(BA.has(e))return;let t=new Promise((r,n)=>{let o=()=>{e.removeEventListener("complete",i),e.removeEventListener("error",s),e.removeEventListener("abort",s)},i=()=>{r(),o()},s=()=>{n(e.error||new DOMException("AbortError","AbortError")),o()};e.addEventListener("complete",i),e.addEventListener("error",s),e.addEventListener("abort",s)});BA.set(e,t)}function gp(e){SA=e(SA)}function m2(e){return A2().includes(e)?function(...t){return e.apply(QA(this),t),Fn(this.request)}:function(...t){return Fn(e.apply(QA(this),t))}}function d2(e){return typeof e=="function"?m2(e):(e instanceof IDBTransaction&&f2(e),bA(e,l2())?new Proxy(e,SA):e)}function Fn(e){if(e instanceof IDBRequest)return u2(e);if(yA.has(e))return yA.get(e);let t=d2(e);return t!==e&&(yA.set(e,t),ga.set(t,e)),t}function Rn(e,t,{blocked:r,upgrade:n,blocking:o,terminated:i}={}){let s=indexedDB.open(e,t),a=Fn(s);return n&&s.addEventListener("upgradeneeded",c=>{n(Fn(s.result),c.oldVersion,c.newVersion,Fn(s.transaction),c)}),r&&s.addEventListener("blocked",c=>r(c.oldVersion,c.newVersion,c)),a.then(c=>{i&&c.addEventListener("close",()=>i()),o&&c.addEventListener("versionchange",l=>o(l.oldVersion,l.newVersion,l))}).catch(()=>{}),a}function fp(e,t){if(!(e instanceof IDBDatabase&&!(t in e)&&typeof t=="string"))return;if(wA.get(t))return wA.get(t);let r=t.replace(/FromIndex$/,""),n=t!==r,o=p2.includes(r);if(!(r in(n?IDBIndex:IDBObjectStore).prototype)||!(o||g2.includes(r)))return;let i=async function(s,...a){let c=this.transaction(s,o?"readwrite":"readonly"),l=c.store;return n&&(l=l.index(a.shift())),(await Promise.all([l[r](...a),o&&c.done]))[0]};return wA.set(t,i),i}async function*E2(...e){let t=this;if(t instanceof IDBCursor||(t=await t.openCursor(...e)),!t)return;t=t;let r=new Proxy(t,C2);for(pp.set(r,t),ga.set(r,QA(t));t;)yield r,t=await(MA.get(r)||t.continue()),MA.delete(r)}function dp(e,t){return t===Symbol.asyncIterator&&bA(e,[IDBIndex,IDBObjectStore,IDBCursor])||t==="iterate"&&bA(e,[IDBIndex,IDBObjectStore])}var bA,Ap,up,BA,yA,ga,SA,QA,g2,p2,wA,h2,mp,MA,pp,C2,_i=g(()=>{bA=(e,t)=>t.some(r=>e instanceof r);BA=new WeakMap,yA=new WeakMap,ga=new WeakMap;SA={get(e,t,r){if(e instanceof IDBTransaction){if(t==="done")return BA.get(e);if(t==="store")return r.objectStoreNames[1]?void 0:r.objectStore(r.objectStoreNames[0])}return Fn(e[t])},set(e,t,r){return e[t]=r,!0},has(e,t){return e instanceof IDBTransaction&&(t==="done"||t==="store")?!0:t in e}};QA=e=>ga.get(e);g2=["get","getKey","getAll","getAllKeys","count"],p2=["put","add","delete","clear"],wA=new Map;gp(e=>({...e,get:(t,r,n)=>fp(t,r)||e.get(t,r,n),has:(t,r)=>!!fp(t,r)||e.has(t,r)}));h2=["continue","continuePrimaryKey","advance"],mp={},MA=new WeakMap,pp=new WeakMap,C2={get(e,t){if(!h2.includes(t))return e[t];let r=mp[t];return r||(r=mp[t]=function(...n){MA.set(this,pp.get(this)[t](...n))}),r}};gp(e=>({...e,get(t,r,n){return dp(t,r)?E2:e.get(t,r,n)},has(t,r){return dp(t,r)||e.has(t,r)}}))});var kp,Ea,TA=g(()=>{"use client";Y();kp=f(L(),1),Ea=(0,T.createSvgIcon)((0,kp.jsx)("path",{d:"M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3z"}),"OpenInNew")});function Pn(e){let{children:t,...r}=e;return _A.default.createElement(Np.Link,{...r,target:"_blank",rel:"noreferrer"},t," ",_A.default.createElement(Ea,{fontSize:"small"}))}var _A,Np,Ia=g(()=>{"use strict";_A=f(b());TA();Np=f(_())});var Vp=g(()=>{});var Yp=g(()=>{Vp()});function N2(e){try{let s=j.__wbindgen_add_to_stack_pointer(-16),a=PA(e,j.__wbindgen_export2),c=Ba;j.decompress_all(s,a,c);var t=Ye().getInt32(s+0,!0),r=Ye().getInt32(s+4,!0),n=Ye().getInt32(s+8,!0),o=Ye().getInt32(s+12,!0);if(o)throw OA(n);var i=FA(t,r).slice();return j.__wbindgen_export(t,r*1,1),i}finally{j.__wbindgen_add_to_stack_pointer(16)}}function L2(e){try{let o=j.__wbindgen_add_to_stack_pointer(-16),i=PA(e,j.__wbindgen_export2),s=Ba;j.decompress_block(o,i,s);var t=Ye().getInt32(o+0,!0),r=Ye().getInt32(o+4,!0),n=Ye().getInt32(o+8,!0);if(n)throw OA(r);return Mo.__wrap(t)}finally{j.__wbindgen_add_to_stack_pointer(16)}}function F2(e,t,r,n,o){try{let c=j.__wbindgen_add_to_stack_pointer(-16),l=PA(e,j.__wbindgen_export2),A=Ba;j.decompress_chunk_slice(c,l,A,t,r,n,o);var i=Ye().getInt32(c+0,!0),s=Ye().getInt32(c+4,!0),a=Ye().getInt32(c+8,!0);if(a)throw OA(s);return Qo.__wrap(i)}finally{j.__wbindgen_add_to_stack_pointer(16)}}function R2(e,t){let r=Error(Xp(e,t));return O2(r)}function P2(e,t){throw new Error(Xp(e,t))}function O2(e){ki===zr.length&&zr.push(zr.length+1);let t=ki;return ki=zr[t],zr[t]=e,t}function G2(e){e<1028||(zr[e]=ki,ki=e)}function $p(e,t){return e=e>>>0,H2().subarray(e/8,e/8+t)}function FA(e,t){return e=e>>>0,RA().subarray(e/1,e/1+t)}function Ye(){return(So===null||So.buffer.detached===!0||So.buffer.detached===void 0&&So.buffer!==j.memory.buffer)&&(So=new DataView(j.memory.buffer)),So}function H2(){return(ya===null||ya.byteLength===0)&&(ya=new Float64Array(j.memory.buffer)),ya}function Xp(e,t){return e=e>>>0,j2(e,t)}function RA(){return(wa===null||wa.byteLength===0)&&(wa=new Uint8Array(j.memory.buffer)),wa}function U2(e){return zr[e]}function PA(e,t){let r=t(e.length*1,1)>>>0;return RA().set(e,r/1),Ba=e.length,r}function OA(e){let t=U2(e);return G2(e),t}function j2(e,t){return LA+=t,LA>=q2&&(ba=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}),ba.decode(),LA=t),ba.decode(RA().subarray(e,e+t))}function J2(e){j=e}var On,Kp,Qo,Mo,Wp,zp,So,ya,wa,zr,ki,ba,q2,LA,Ba,j,Zp=g(()=>{On={};On.d=(e,t)=>{for(var r in t)On.o(t,r)&&!On.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})};On.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);On.r=e=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};Kp={};On.r(Kp);On.d(Kp,{ChunkSliceResult:()=>Qo,DecompressResult:()=>Mo,__wbg_Error_960c155d3d49e4c2:()=>R2,__wbg___wbindgen_throw_6b64449b9b9ed33c:()=>P2,__wbg_set_wasm:()=>J2,decompress_all:()=>N2,decompress_block:()=>L2,decompress_chunk_slice:()=>F2});Qo=class e{static __wrap(t){t=t>>>0;let r=Object.create(e.prototype);return r.__wbg_ptr=t,Wp.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let t=this.__wbg_ptr;return this.__wbg_ptr=0,Wp.unregister(this),t}free(){let t=this.__destroy_into_raw();j.__wbg_chunksliceresult_free(t,0)}get buffer(){try{let o=j.__wbindgen_add_to_stack_pointer(-16);j.chunksliceresult_buffer(o,this.__wbg_ptr);var t=Ye().getInt32(o+0,!0),r=Ye().getInt32(o+4,!0),n=FA(t,r).slice();return j.__wbindgen_export(t,r*1,1),n}finally{j.__wbindgen_add_to_stack_pointer(16)}}get cpositions(){try{let o=j.__wbindgen_add_to_stack_pointer(-16);j.chunksliceresult_cpositions(o,this.__wbg_ptr);var t=Ye().getInt32(o+0,!0),r=Ye().getInt32(o+4,!0),n=$p(t,r).slice();return j.__wbindgen_export(t,r*8,8),n}finally{j.__wbindgen_add_to_stack_pointer(16)}}get dpositions(){try{let o=j.__wbindgen_add_to_stack_pointer(-16);j.chunksliceresult_dpositions(o,this.__wbg_ptr);var t=Ye().getInt32(o+0,!0),r=Ye().getInt32(o+4,!0),n=$p(t,r).slice();return j.__wbindgen_export(t,r*8,8),n}finally{j.__wbindgen_add_to_stack_pointer(16)}}};Symbol.dispose&&(Qo.prototype[Symbol.dispose]=Qo.prototype.free);Mo=class e{static __wrap(t){t=t>>>0;let r=Object.create(e.prototype);return r.__wbg_ptr=t,zp.register(r,r.__wbg_ptr,r),r}__destroy_into_raw(){let t=this.__wbg_ptr;return this.__wbg_ptr=0,zp.unregister(this),t}free(){let t=this.__destroy_into_raw();j.__wbg_decompressresult_free(t,0)}get bytes_read(){return j.decompressresult_bytes_read(this.__wbg_ptr)>>>0}get data(){try{let o=j.__wbindgen_add_to_stack_pointer(-16);j.decompressresult_data(o,this.__wbg_ptr);var t=Ye().getInt32(o+0,!0),r=Ye().getInt32(o+4,!0),n=FA(t,r).slice();return j.__wbindgen_export(t,r*1,1),n}finally{j.__wbindgen_add_to_stack_pointer(16)}}};Symbol.dispose&&(Mo.prototype[Symbol.dispose]=Mo.prototype.free);Wp=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>j.__wbg_chunksliceresult_free(e>>>0,1)),zp=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>j.__wbg_decompressresult_free(e>>>0,1));So=null;ya=null;wa=null;zr=new Array(1024).fill(void 0);zr.push(void 0,null,!0,!1);ki=zr.length;ba=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});ba.decode();q2=2146435072,LA=0;Ba=0});var GA=g(()=>{Zp()});var eh=g(()=>{});var rh=g(()=>{Yp();GA();eh()});var nh=g(()=>{rh();GA()});function HA(){let e=(0,vo.useRef)(null),[t,r]=(0,vo.useState)({width:void 0,height:void 0});return(0,vo.useEffect)(()=>{if(!e.current)return;let n=typeof window<"u"&&"ResizeObserver"in window?window.ResizeObserver:void 0;if(!n)return;let o=new n(i=>{r({width:i[0].contentRect.width,height:i[0].contentRect.height})});return o.observe(e.current),()=>{o.disconnect()}},[]),[e,t]}var vo,oh=g(()=>{vo=f(b(),1)});var sh=G((v3,ih)=>{ih.exports=JBrowseExports["react-dom"]});var ch=G((T3,ah)=>{ah.exports=JBrowseExports["react-dom/client"]});function lh(e){let t="",r=!1;for(let n=0,o=e.length;n<o;n++){let i=e[n];i==="<"?r=!0:i===">"?r=!1:r||(t+=i)}return t}var UA=g(()=>{});var Ah=g(()=>{});var uh=g(()=>{});var fh=g(()=>{});function Sa(e){return typeof e=="object"&&e!==null&&"uri"in e&&!!e.uri}var V2,qA=g(()=>{V2=f(Dt(),1);fh()});var $r=G((F3,mh)=>{mh.exports=JBrowseExports.mobx});var Y2,dh=g(()=>{Y2=f($r(),1)});var gh=g(()=>{});var ph=g(()=>{});var To,Qa,jA,JA,W2,Ni,Ma,hh=g(()=>{To={METHOD:"method",PROPERTY:"property"},Qa=class{constructor(t,r){this.inst=t,this.args=r}},jA=class extends Qa{constructor(t,r){super(t,r),this.type=To.METHOD}execute(t){t[this.inst](...this.args)}},JA=class extends Qa{constructor(t,r){super(t,r),this.type=To.PROPERTY}execute(t){t[this.inst]=this.args[0]}},W2={[To.METHOD]:jA,[To.PROPERTY]:JA},Ni=class{constructor(t,r,n){return new W2[t](r,n)}};Ni.METHOD=To.METHOD;Ni.PROPERTY=To.PROPERTY;Ma=Ni});var Ch,Dr,va,VA=g(()=>{hh();Ch=Object.freeze({METHODS:["addHitRegion","arc","arcTo","beginPath","bezierCurveTo","clearHitRegions","clearRect","clip","closePath","drawFocusIfNeeded","drawImage","ellipse","fill","fillRect","fillText","lineTo","moveTo","putImageData","quadraticCurveTo","rect","removeHitRegion","resetTransform","restore","rotate","save","scale","scrollPathIntoView","setLineDash","setTransform","stroke","strokeRect","strokeText","transform","translate"],PROPERTIES:["direction","fillStyle","filter","font","globalAlpha","globalCompositeOperation","imageSmoothingEnabled","imageSmoothingQuality","lineCap","lineDashOffset","lineJoin","lineWidth","miterLimit","shadowBlur","shadowColor","shadowOffsetX","shadowOffsetY","strokeStyle","textAlign","textBaseline"]}),Dr=Object.freeze({sequence:Symbol.for("sequence"),push:Symbol.for("push"),fromJSON:Symbol.for("fromJSON")}),va=class{constructor(t=null){this[Dr.sequence]=[],t&&this[Dr.fromJSON](t)}[Dr.fromJSON](t={sequence:[]}){t.sequence.forEach(({type:r,inst:n,args:o})=>{this[Dr.push](r,n,o)})}[Dr.push](t,r,n){this[Dr.sequence].push(new Ma(t,r,n))}execute(t){t.save(),this[Dr.sequence].forEach(r=>r.execute(t)),t.restore()}toJSON(){return{sequence:this[Dr.sequence]}}};Ch.METHODS.forEach(e=>{Object.defineProperty(va.prototype,e,{value:function(...r){this[Dr.push](Ma.METHOD,e,r)},writable:!1,enumerable:!0,configurable:!1})});Ch.PROPERTIES.forEach(e=>{Object.defineProperty(va.prototype,e,{get(){throw`Invalid canvas sequencer interaction, cannot get ${e}.`},set(t){this[Dr.push](Ma.PROPERTY,e,[t])},enumerable:!0,configurable:!1})})});var j3,Ih=g(()=>{VA();j3=Object.freeze({sequence:Symbol.for("sequence"),push:Symbol.for("push")})});var xh=g(()=>{Ih();VA()});var wh=G(($3,yh)=>{yh.exports=!1});var z2,bh=g(()=>{xh();z2=f(wh(),1)});var $2,K2,Bh=g(()=>{$2=f(L(),1),K2=f(b(),1)});var Sh=g(()=>{});var t5,r5,n5,o5,Qh=g(()=>{t5=new Uint8Array([99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22]),r5=new Uint8Array([82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125]),n5=new Uint8Array([1,2,4,8,16,32,64,128,27,54]),o5=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298])});var Mh=g(()=>{});var vh=g(()=>{});var Th=g(()=>{_i()});var Ta,_h=g(()=>{Ta=f(Dt(),1)});function WA(e,t=10){let r=String(e),n=0;for(let o=0,i=r.length;o<i;o++)n+=eM[r.charCodeAt(o)]??tM;return n*t}function zA(e){let t=0;if(e.length===0)return t;for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);t=(t<<5)-t+n,t|=0}return t}function rM(e){let{uri:t,baseUri:r=""}=e,n;try{n=new URL(t,r).href}catch{n=t}return n}function $A(e){return Xt(e)?Sa(e)?rM(e):JSON.stringify(e):String(e)}function Dh(e){let t=/(^|[\s\n]|<[A-Za-z]*\/?>)((?:https?|ftp):\/\/[-A-Z0-9+\u0026\u2019@#/%?=()~_|!:,.;]*[-A-Z0-9+\u0026@#/%=~()_|])/gi;return e.replaceAll(t,`$1<a href='$2' target="_blank">$2</a>`)}function kh(e,t){let{padding:r=30,minWidth:n=80,fontSize:o=12,maxWidth:i=1e3,stripHTML:s=!1}=t||{};return KA(e.map(a=>$A(a)).map(a=>s?lh(a):a).map(a=>WA(a,o)).map(a=>Math.min(Math.max(a+r,n),i)))}function KA(e,t=Number.NEGATIVE_INFINITY){let r=t;for(let n of e)r=Math.max(n,r);return r}function Xt(e){return typeof e=="object"&&e!==null}var YA,_o,X2,Z2,C5,E5,I5,x5,eM,tM,gn=g(()=>{YA=f(b(),1);nh();_o=f(Dt(),1),X2=f(sh(),1),Z2=f(ch(),1);UA();qA();qA();dh();gh();ph();UA();bh();Bh();Sh();Qh();Mh();vh();Ah();uh();_h();Th();C5=180/Math.PI,E5=Math.PI/180,I5=/electron/i.test(typeof navigator<"u"?navigator.userAgent:""),x5=typeof jest>"u"?typeof window<"u"&&window.requestIdleCallback?window.requestIdleCallback:e=>setTimeout(()=>{e()},1):e=>{e()},eM=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,.2796875,.2765625,.3546875,.5546875,.5546875,.8890625,.665625,.190625,.3328125,.3328125,.3890625,.5828125,.2765625,.3328125,.2765625,.3015625,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.5546875,.2765625,.2765625,.584375,.5828125,.584375,.5546875,1.0140625,.665625,.665625,.721875,.721875,.665625,.609375,.7765625,.721875,.2765625,.5,.665625,.5546875,.8328125,.721875,.7765625,.665625,.7765625,.721875,.665625,.609375,.721875,.665625,.94375,.665625,.665625,.609375,.2765625,.3546875,.2765625,.4765625,.5546875,.3328125,.5546875,.5546875,.5,.5546875,.5546875,.2765625,.5546875,.5546875,.221875,.240625,.5,.221875,.8328125,.5546875,.5546875,.5546875,.5546875,.3328125,.5,.2765625,.5546875,.5,.721875,.5,.5,.5,.3546875,.259375,.353125,.5890625],tM=.5279276315789471});var Wh=G((hP,Yh)=>{Yh.exports=JBrowseExports["@jbrowse/core/pluggableElementTypes/ViewType"]});var $h,Kh,ko,ou=g(()=>{$h=f(L(),1),Kh=f(b(),1),ko=class extends Kh.Component{constructor(t){super(t),this.state={error:void 0}}componentDidCatch(t,r){console.error("ErrorBoundary caught an error:",t,r),this.setState({error:t})}render(){return this.state.error?(0,$h.jsx)(this.props.FallbackComponent,{error:this.state.error}):this.props.children}}});var ct,iu,Xh,Zh,e0=g(()=>{ct=f(b(),1),iu=f(R(),1),Xh=(0,iu.observer)(function({model:e}){let{resizeHandleWidth:t}=e,[r,n]=(0,ct.useState)(!1),o=(0,ct.useRef)(!1),i=(0,ct.useRef)(0);return(0,ct.useEffect)(()=>{function s(c){c.preventDefault();let l=c.clientX;if(i.current===0)i.current=c.clientX;else{let A=l-i.current;A&&(o.current||(o.current=!0,window.requestAnimationFrame(()=>{e.setTreeAreaWidth(e.treeAreaWidth+A),o.current=!1,i.current=c.clientX})))}}function a(){i.current=0,r&&n(!1)}return r?(document.addEventListener("mousemove",s,!0),document.addEventListener("mouseup",a,!0),()=>{document.removeEventListener("mousemove",s,!0),document.removeEventListener("mouseup",a,!0)}):()=>{}},[r,e]),ct.default.createElement("div",null,ct.default.createElement("div",{onMouseDown:()=>{n(!0)},style:{cursor:"ew-resize",height:"100%",width:t,background:"rgba(200,200,200)",position:"relative"}}))}),Zh=(0,iu.observer)(function({model:e}){let{resizeHandleWidth:t}=e,[r,n]=(0,ct.useState)(!1),o=(0,ct.useRef)(!1),i=(0,ct.useRef)(0);return(0,ct.useEffect)(()=>{function s(c){c.preventDefault();let l=c.clientY;if(i.current===0)i.current=c.clientY;else{let A=l-i.current;A&&(o.current||(o.current=!0,window.requestAnimationFrame(()=>{e.setHeight(e.height+A),o.current=!1,i.current=c.clientY})))}}function a(){i.current=0,r&&n(!1)}return r?(document.addEventListener("mousemove",s,!0),document.addEventListener("mouseup",a,!0),()=>{document.removeEventListener("mousemove",s,!0),document.removeEventListener("mouseup",a,!0)}):()=>{}},[r,e]),ct.default.createElement("div",null,ct.default.createElement("div",{onMouseDown:()=>{n(!0)},style:{cursor:"ns-resize",width:"100%",height:t,background:"rgba(200,200,200)",position:"relative"}}))})});var t0,r0,n0=g(()=>{"use client";Y();t0=f(L(),1),r0=(0,T.createSvgIcon)((0,t0.jsx)("path",{d:"m7 10 5 5 5-5z"}),"ArrowDropDown")});function No({ref:e,onScrollX:t,onScrollY:r}){let n=(0,Cr.useRef)(!1),o=(0,Cr.useRef)(0),i=(0,Cr.useRef)(0),s=(0,Cr.useRef)(0),a=(0,Cr.useRef)(0),[c,l]=(0,Cr.useState)(!1);(0,Cr.useEffect)(()=>{let m=e.current;if(!m)return;function d(p){t&&(o.current+=p.deltaX),r&&(i.current+=p.deltaY),n.current||(n.current=!0,requestAnimationFrame(()=>{t&&(t(-o.current),o.current=0),r&&(r(-i.current),i.current=0),n.current=!1})),p.preventDefault(),p.stopPropagation()}return m.addEventListener("wheel",d,{passive:!1}),()=>{m.removeEventListener("wheel",d)}},[e,t,r]),(0,Cr.useEffect)(()=>{if(!c)return;function m(p){p.preventDefault();let C=p.clientX-s.current,y=p.clientY-a.current;(C&&t||y&&r)&&(n.current||(n.current=!0,requestAnimationFrame(()=>{t?.(C),r?.(y),n.current=!1,s.current=p.clientX,a.current=p.clientY})))}function d(){s.current=0,a.current=0,l(!1)}return window.addEventListener("mousemove",m,!0),window.addEventListener("mouseup",d,!0),()=>{window.removeEventListener("mousemove",m,!0),window.removeEventListener("mouseup",d,!0)}},[c,t,r]);function A(m){let d=m.target;d.draggable||d.dataset.resizer||m.button===0&&(s.current=m.clientX,a.current=m.clientY,l(!0))}function u(m){m.preventDefault(),l(!1)}return{onMouseDown:A,onMouseUp:u}}var Cr,Na=g(()=>{Cr=f(b(),1)});function Ri(e){let t=navigator.clipboard;if(t?.writeText){t.writeText(e).catch(n=>{console.error("Failed to copy to clipboard:",n)});return}let r=document.createElement("textarea");r.value=e,r.style.position="fixed",r.style.opacity="0",document.body.append(r),r.select(),document.execCommand("copy"),r.remove()}var su=g(()=>{});var a0={};Je(a0,{default:()=>uM});var Kr,o0,Gn,i0,s0,lM,AM,uM,c0=g(()=>{Kr=f(b(),1),o0=f(ye(),1),Gn=f(_(),1),i0=f(R(),1),s0=f(be(),1);su();lM=(0,s0.makeStyles)()(e=>({textArea:{padding:e.spacing(2),overflow:"auto",background:"#ddd",wordBreak:"break-word"}})),AM=(0,i0.observer)(function({model:e,onClose:t}){let[r,n]=(0,Kr.useState)("Copy to clipboard"),{classes:o}=lM();return Kr.default.createElement(o0.Dialog,{open:!0,onClose:t,fullWidth:!0,maxWidth:"lg",title:`Track info - ${e.name}`},Kr.default.createElement(Gn.DialogContent,null,Kr.default.createElement(Gn.Button,{variant:"contained",color:"primary",onClick:()=>{Ri(e.data),n("Copied!"),setTimeout(()=>{n("Copy to clipboard")},300)}},r),Kr.default.createElement("pre",{className:o.textArea},e.data)),Kr.default.createElement(Gn.DialogActions,null,Kr.default.createElement(Gn.Button,{variant:"contained",onClick:t,color:"secondary"},"Close")))}),uM=AM});var _e,Hn,au,l0,fM,mM,dM,gM,A0,u0=g(()=>{_e=f(b(),1);n0();Hn=f(_(),1),au=f(R(),1),l0=f(be(),1);Na();fM=(0,_e.lazy)(()=>Promise.resolve().then(()=>(c0(),a0))),mM=(0,l0.makeStyles)()({button:{padding:0}}),dM=(0,au.observer)(function({model:t,track:r}){let[n,o]=(0,_e.useState)(),{drawLabels:i,rowHeight:s,treeAreaWidth:a}=t,{model:{name:c,height:l}}=r,{classes:A}=mM(),u=Math.max(8,s-8);return _e.default.createElement("div",{style:{width:a,height:l,flexShrink:0,textAlign:"right",fontSize:u}},i?c:""," ",_e.default.createElement(Hn.IconButton,{className:A.button,style:{width:u,height:u},onClick:m=>{o(m.currentTarget)}},_e.default.createElement(r0,null)),n?_e.default.createElement(Hn.Menu,{anchorEl:n,transitionDuration:0,open:!0,onClose:()=>{o(void 0)}},_e.default.createElement(Hn.MenuItem,{dense:!0,onClick:()=>{t.toggleTrack(r.model.id),o(void 0)}},"Close"),_e.default.createElement(Hn.MenuItem,{dense:!0,onClick:()=>{t.queueDialog(m=>[fM,{onClose:m,model:r.model}]),o(void 0)}},"Get info")):null)}),gM=(0,au.observer)(function({model:e,track:t}){let{resizeHandleWidth:r,colWidth:n,scrollX:o,numColumns:i}=e,{model:{height:s,error:a}}=t,c=(0,_e.useRef)(null),l=(0,_e.useCallback)(A=>{e.doScrollX(A)},[e]);return No({ref:c,onScrollX:l}),_e.default.createElement("div",{key:t.id,style:{display:"flex",height:s}},_e.default.createElement(dM,{model:e,track:t}),_e.default.createElement("div",{style:{width:r,flexShrink:0}}),_e.default.createElement("div",{ref:c,onMouseMove:A=>{if(!c.current)return;let{left:u}=c.current.getBoundingClientRect(),m=A.clientX-u-o,d=Math.floor(m/n);d>=0&&d<i?e.setMousePos(d,void 0):e.setMousePos(void 0,void 0)},onMouseLeave:()=>{e.setMousePos(void 0,void 0)}},a?_e.default.createElement("div",{style:{color:"red",fontSize:10}},`${a}`):_e.default.createElement(t.ReactComponent,{model:e,track:t})))}),A0=gM});var kr,f0,m0,pM,d0,g0=g(()=>{kr=f(b(),1),f0=f(ge(),1),m0=f(R(),1),pM=(0,m0.observer)(({model:e})=>{let{msaAreaHeight:t,scrollY:r,totalHeight:n}=e,[o,i]=(0,kr.useState)(!1),s=(0,kr.useRef)(!1),[a,c]=(0,kr.useState)(),l="rgba(66, 119, 127, 0.3)",A=t/n,u=-r,m=u+t,d=u*A,p=m*A;return(0,kr.useEffect)(()=>{function C(I){a!==void 0&&(s.current||(s.current=!0,window.requestAnimationFrame(()=>{e.setScrollY((0,f0.clamp)(a.scrollY-(I.clientY-a.clientY)/A,-n,0)),s.current=!1})))}function y(){c(void 0)}if(a!==void 0)return document.addEventListener("mousemove",C),document.addEventListener("mouseup",y),()=>{document.removeEventListener("mousemove",C),document.removeEventListener("mousemove",y)}},[e,A,n,a]),kr.default.createElement("div",{style:{position:"relative",width:20,height:t,borderLeft:"1px solid #555",borderTop:"1px solid #555",boxSizing:"border-box"}},kr.default.createElement("div",{style:{position:"absolute",top:Math.max(0,d),left:0,background:o?"rgba(66,119,127,0.6)":l,cursor:"pointer",boxSizing:"border-box",width:20,height:Math.max(p-d,20),zIndex:100},onMouseOver:()=>{i(!0)},onMouseOut:()=>{i(!1)},onMouseDown:C=>{c({clientY:C.clientY,scrollY:e.scrollY})}}))}),d0=pM});var p0,h0,C0=g(()=>{"use client";Y();p0=f(L(),1),h0=(0,T.createSvgIcon)((0,p0.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m1 17h-2v-2h2zm2.07-7.75-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25"}),"Help")});var E0,I0,x0=g(()=>{"use client";Y();E0=f(L(),1),I0=(0,T.createSvgIcon)((0,E0.jsx)("path",{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),"ChevronRight")});var y0,w0,b0=g(()=>{"use client";Y();y0=f(L(),1),w0=(0,T.createSvgIcon)((0,y0.jsx)("path",{d:"M11 18h2v-2h-2zm1-16C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8m0-14c-2.21 0-4 1.79-4 4h2c0-1.1.9-2 2-2s2 .9 2 2c0 2-3 1.75-3 5h2c0-2.25 3-2.5 3-5 0-2.21-1.79-4-4-4"}),"HelpOutline")});var B0,La,cu=g(()=>{"use client";Y();B0=f(L(),1),La=(0,T.createSvgIcon)((0,B0.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 S0,Q0,M0=g(()=>{"use client";Y();S0=f(L(),1),Q0=(0,T.createSvgIcon)((0,S0.jsx)("path",{d:"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4z"}),"Refresh")});var v0,T0,_0=g(()=>{"use client";Y();v0=f(L(),1),T0=(0,T.createSvgIcon)((0,v0.jsx)("path",{d:"M15.73 3H8.27L3 8.27v7.46L8.27 21h7.46L21 15.73V8.27zM12 17.3c-.72 0-1.3-.58-1.3-1.3s.58-1.3 1.3-1.3 1.3.58 1.3 1.3-.58 1.3-1.3 1.3m1-4.3h-2V7h2z"}),"Report")});function CM(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 EM(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 hM,D0,k0=g(()=>{hM=!1;D0=(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?!hM: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(EM(this));var o=this.tags[this.tags.length-1];if(this.isSpeedy){var i=CM(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 et,Pi,z,Fa,Lo,Fo,N0,Ra,L0,Pa=g(()=>{et="-ms-",Pi="-moz-",z="-webkit-",Fa="comm",Lo="rule",Fo="decl",N0="@import",Ra="@keyframes",L0="@layer"});function P0(e,t){return De(e,0)^45?(((t<<2^De(e,0))<<2^De(e,1))<<2^De(e,2))<<2^De(e,3):0}function Oa(e){return e.trim()}function lu(e,t){return(e=t.exec(e))?e[0]:e}function V(e,t,r){return e.replace(t,r)}function Oi(e,t){return e.indexOf(t)}function De(e,t){return e.charCodeAt(t)|0}function pn(e,t,r){return e.slice(t,r)}function dt(e){return e.length}function Ro(e){return e.length}function Po(e,t){return t.push(e),e}function Au(e,t){return e.map(t).join("")}var F0,Un,R0,Oo=g(()=>{F0=Math.abs,Un=String.fromCharCode,R0=Object.assign});function Gi(e,t,r,n,o,i,s){return{value:e,root:t,parent:r,type:n,props:o,children:i,line:Ga,column:Go,length:s,return:""}}function qo(e,t){return R0(Gi("",null,null,"",null,null,0),e,{length:-e.length},t)}function G0(){return Re}function H0(){return Re=gt>0?De(Uo,--gt):0,Go--,Re===10&&(Go=1,Ga--),Re}function pt(){return Re=gt<O0?De(Uo,gt++):0,Go++,Re===10&&(Go=1,Ga++),Re}function Zt(){return De(Uo,gt)}function Hi(){return gt}function jo(e,t){return pn(Uo,e,t)}function Ho(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 Ha(e){return Ga=Go=1,O0=dt(Uo=e),gt=0,[]}function Ua(e){return Uo="",e}function Jo(e){return Oa(jo(gt-1,uu(e===91?e+2:e===40?e+1:e)))}function U0(e){for(;(Re=Zt())&&Re<33;)pt();return Ho(e)>2||Ho(Re)>3?"":" "}function q0(e,t){for(;--t&&pt()&&!(Re<48||Re>102||Re>57&&Re<65||Re>70&&Re<97););return jo(e,Hi()+(t<6&&Zt()==32&&pt()==32))}function uu(e){for(;pt();)switch(Re){case e:return gt;case 34:case 39:e!==34&&e!==39&&uu(Re);break;case 40:e===41&&uu(e);break;case 92:pt();break}return gt}function j0(e,t){for(;pt()&&e+Re!==57;)if(e+Re===84&&Zt()===47)break;return"/*"+jo(t,gt-1)+"*"+Un(e===47?e:pt())}function J0(e){for(;!Ho(Zt());)pt();return jo(e,gt)}var Ga,Go,O0,gt,Re,Uo,fu=g(()=>{Oo();Ga=1,Go=1,O0=0,gt=0,Re=0,Uo=""});function W0(e){return Ua(qa("",null,null,null,[""],e=Ha(e),0,[0],e))}function qa(e,t,r,n,o,i,s,a,c){for(var l=0,A=0,u=s,m=0,d=0,p=0,C=1,y=1,I=1,h=0,x="",w=o,Q=i,S=n,M=x;y;)switch(p=h,h=pt()){case 40:if(p!=108&&De(M,u-1)==58){Oi(M+=V(Jo(h),"&","&\f"),"&\f")!=-1&&(I=-1);break}case 34:case 39:case 91:M+=Jo(h);break;case 9:case 10:case 13:case 32:M+=U0(p);break;case 92:M+=q0(Hi()-1,7);continue;case 47:switch(Zt()){case 42:case 47:Po(IM(j0(pt(),Hi()),t,r),c);break;default:M+="/"}break;case 123*C:a[l++]=dt(M)*I;case 125*C:case 59:case 0:switch(h){case 0:case 125:y=0;case 59+A:I==-1&&(M=V(M,/\f/g,"")),d>0&&dt(M)-u&&Po(d>32?Y0(M+";",n,r,u-1):Y0(V(M," ","")+";",n,r,u-2),c);break;case 59:M+=";";default:if(Po(S=V0(M,t,r,l,A,o,a,x,w=[],Q=[],u),i),h===123)if(A===0)qa(M,t,S,S,w,i,u,a,Q);else switch(m===99&&De(M,3)===110?100:m){case 100:case 108:case 109:case 115:qa(e,S,S,n&&Po(V0(e,S,S,0,0,o,a,x,o,w=[],u),Q),o,Q,u,a,n?w:Q);break;default:qa(M,S,S,S,[""],Q,0,a,Q)}}l=A=d=0,C=I=1,x=M="",u=s;break;case 58:u=1+dt(M),d=p;default:if(C<1){if(h==123)--C;else if(h==125&&C++==0&&H0()==125)continue}switch(M+=Un(h),h*C){case 38:I=A>0?1:(M+="\f",-1);break;case 44:a[l++]=(dt(M)-1)*I,I=1;break;case 64:Zt()===45&&(M+=Jo(pt())),m=Zt(),A=u=dt(x=M+=J0(Hi())),h++;break;case 45:p===45&&dt(M)==2&&(C=0)}}return i}function V0(e,t,r,n,o,i,s,a,c,l,A){for(var u=o-1,m=o===0?i:[""],d=Ro(m),p=0,C=0,y=0;p<n;++p)for(var I=0,h=pn(e,u+1,u=F0(C=s[p])),x=e;I<d;++I)(x=Oa(C>0?m[I]+" "+h:V(h,/&\f/g,m[I])))&&(c[y++]=x);return Gi(e,t,r,o===0?Lo:a,c,l,A)}function IM(e,t,r){return Gi(e,t,r,Fa,Un(G0()),pn(e,2,-2),0)}function Y0(e,t,r,n){return Gi(e,t,r,Fo,pn(e,0,n),pn(e,n+1,-1),n)}var z0=g(()=>{Pa();Oo();fu()});var $0=g(()=>{});function qn(e,t){for(var r="",n=Ro(e),o=0;o<n;o++)r+=t(e[o],o,e,t)||"";return r}function K0(e,t,r,n){switch(e.type){case L0:if(e.children.length)break;case N0:case Fo:return e.return=e.return||e.value;case Fa:return"";case Ra:return e.return=e.value+"{"+qn(e.children,n)+"}";case Lo:e.value=e.props.join(",")}return dt(r=qn(e.children,n))?e.return=e.value+"{"+r+"}":""}var X0=g(()=>{Pa();Oo()});function Z0(e){var t=Ro(e);return function(r,n,o,i){for(var s="",a=0;a<t;a++)s+=e[a](r,n,o,i)||"";return s}}function eC(e){return function(t){t.root||(t=t.return)&&e(t)}}var tC=g(()=>{Oo()});var rC=g(()=>{Pa();Oo();z0();$0();fu();X0();tC()});var ja=g(()=>{});function nC(e){var t=Object.create(null);return function(r){return t[r]===void 0&&(t[r]=e(r)),t[r]}}var mu=g(()=>{});function iC(e,t){switch(P0(e,t)){case 5103:return z+"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 z+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return z+e+Pi+e+et+e+e;case 6828:case 4268:return z+e+et+e+e;case 6165:return z+e+et+"flex-"+e+e;case 5187:return z+e+V(e,/(\w+).+(:[^]+)/,z+"box-$1$2"+et+"flex-$1$2")+e;case 5443:return z+e+et+"flex-item-"+V(e,/flex-|-self/,"")+e;case 4675:return z+e+et+"flex-line-pack"+V(e,/align-content|flex-|-self/,"")+e;case 5548:return z+e+et+V(e,"shrink","negative")+e;case 5292:return z+e+et+V(e,"basis","preferred-size")+e;case 6060:return z+"box-"+V(e,"-grow","")+z+e+et+V(e,"grow","positive")+e;case 4554:return z+V(e,/([^-])(transform)/g,"$1"+z+"$2")+e;case 6187:return V(V(V(e,/(zoom-|grab)/,z+"$1"),/(image-set)/,z+"$1"),e,"")+e;case 5495:case 3959:return V(e,/(image-set\([^]*)/,z+"$1$`$1");case 4968:return V(V(e,/(.+:)(flex-)?(.*)/,z+"box-pack:$3"+et+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+z+e+e;case 4095:case 3583:case 4068:case 2532:return V(e,/(.+)-inline(.+)/,z+"$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(dt(e)-1-t>6)switch(De(e,t+1)){case 109:if(De(e,t+4)!==45)break;case 102:return V(e,/(.+:)(.+)-([^]+)/,"$1"+z+"$2-$3$1"+Pi+(De(e,t+3)==108?"$3":"$2-$3"))+e;case 115:return~Oi(e,"stretch")?iC(V(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(De(e,t+1)!==115)break;case 6444:switch(De(e,dt(e)-3-(~Oi(e,"!important")&&10))){case 107:return V(e,":",":"+z)+e;case 101:return V(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+z+(De(e,14)===45?"inline-":"")+"box$3$1"+z+"$2$3$1"+et+"$2box$3")+e}break;case 5936:switch(De(e,t+11)){case 114:return z+e+et+V(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return z+e+et+V(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return z+e+et+V(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return z+e+et+e+e}return e}var xM,yM,wM,oC,bM,BM,SM,QM,sC,du=g(()=>{k0();rC();ja();mu();xM=function(t,r,n){for(var o=0,i=0;o=i,i=Zt(),o===38&&i===12&&(r[n]=1),!Ho(i);)pt();return jo(t,gt)},yM=function(t,r){var n=-1,o=44;do switch(Ho(o)){case 0:o===38&&Zt()===12&&(r[n]=1),t[n]+=xM(gt-1,r,n);break;case 2:t[n]+=Jo(o);break;case 4:if(o===44){t[++n]=Zt()===58?"&\f":"",r[n]=t[n].length;break}default:t[n]+=Un(o)}while(o=pt());return t},wM=function(t,r){return Ua(yM(Ha(t),r))},oC=new WeakMap,bM=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&&!oC.get(n))&&!o){oC.set(t,!0);for(var i=[],s=wM(r,i),a=n.props,c=0,l=0;c<s.length;c++)for(var A=0;A<a.length;A++,l++)t.props[l]=i[c]?s[c].replace(/&\f/g,a[A]):a[A]+" "+s[c]}}},BM=function(t){if(t.type==="decl"){var r=t.value;r.charCodeAt(0)===108&&r.charCodeAt(2)===98&&(t.return="",t.value="")}};SM=function(t,r,n,o){if(t.length>-1&&!t.return)switch(t.type){case Fo:t.return=iC(t.value,t.length);break;case Ra:return qn([qo(t,{value:V(t.value,"@","@"+z)})],o);case Lo:if(t.length)return Au(t.props,function(i){switch(lu(i,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return qn([qo(t,{props:[V(i,/:(read-\w+)/,":"+Pi+"$1")]})],o);case"::placeholder":return qn([qo(t,{props:[V(i,/:(plac\w+)/,":"+z+"input-$1")]}),qo(t,{props:[V(i,/:(plac\w+)/,":"+Pi+"$1")]}),qo(t,{props:[V(i,/:(plac\w+)/,et+"input-$1")]})],o)}return""})}},QM=[SM],sC=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(C){var y=C.getAttribute("data-emotion");y.indexOf(" ")!==-1&&(document.head.appendChild(C),C.setAttribute("data-s",""))})}var o=t.stylisPlugins||QM,i={},s,a=[];s=t.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+r+' "]'),function(C){for(var y=C.getAttribute("data-emotion").split(" "),I=1;I<y.length;I++)i[y[I]]=!0;a.push(C)});var c,l=[bM,BM];{var A,u=[K0,eC(function(C){A.insert(C)})],m=Z0(l.concat(o,u)),d=function(y){return qn(W0(y),m)};c=function(y,I,h,x){A=h,d(y?y+"{"+I.styles+"}":I.styles),x&&(p.inserted[I.name]=!0)}}var p={key:r,sheet:new D0({key:r,container:s,nonce:t.nonce,speedy:t.speedy,prepend:t.prepend,insertionPoint:t.insertionPoint}),nonce:t.nonce,inserted:i,registered:{},insert:c};return p.sheet.hydrate(a),p}});var gu=g(()=>{});var cC=G(te=>{"use strict";var We=typeof Symbol=="function"&&Symbol.for,pu=We?Symbol.for("react.element"):60103,hu=We?Symbol.for("react.portal"):60106,Ja=We?Symbol.for("react.fragment"):60107,Va=We?Symbol.for("react.strict_mode"):60108,Ya=We?Symbol.for("react.profiler"):60114,Wa=We?Symbol.for("react.provider"):60109,za=We?Symbol.for("react.context"):60110,Cu=We?Symbol.for("react.async_mode"):60111,$a=We?Symbol.for("react.concurrent_mode"):60111,Ka=We?Symbol.for("react.forward_ref"):60112,Xa=We?Symbol.for("react.suspense"):60113,MM=We?Symbol.for("react.suspense_list"):60120,Za=We?Symbol.for("react.memo"):60115,ec=We?Symbol.for("react.lazy"):60116,vM=We?Symbol.for("react.block"):60121,TM=We?Symbol.for("react.fundamental"):60117,_M=We?Symbol.for("react.responder"):60118,DM=We?Symbol.for("react.scope"):60119;function Lt(e){if(typeof e=="object"&&e!==null){var t=e.$$typeof;switch(t){case pu:switch(e=e.type,e){case Cu:case $a:case Ja:case Ya:case Va:case Xa:return e;default:switch(e=e&&e.$$typeof,e){case za:case Ka:case ec:case Za:case Wa:return e;default:return t}}case hu:return t}}}function aC(e){return Lt(e)===$a}te.AsyncMode=Cu;te.ConcurrentMode=$a;te.ContextConsumer=za;te.ContextProvider=Wa;te.Element=pu;te.ForwardRef=Ka;te.Fragment=Ja;te.Lazy=ec;te.Memo=Za;te.Portal=hu;te.Profiler=Ya;te.StrictMode=Va;te.Suspense=Xa;te.isAsyncMode=function(e){return aC(e)||Lt(e)===Cu};te.isConcurrentMode=aC;te.isContextConsumer=function(e){return Lt(e)===za};te.isContextProvider=function(e){return Lt(e)===Wa};te.isElement=function(e){return typeof e=="object"&&e!==null&&e.$$typeof===pu};te.isForwardRef=function(e){return Lt(e)===Ka};te.isFragment=function(e){return Lt(e)===Ja};te.isLazy=function(e){return Lt(e)===ec};te.isMemo=function(e){return Lt(e)===Za};te.isPortal=function(e){return Lt(e)===hu};te.isProfiler=function(e){return Lt(e)===Ya};te.isStrictMode=function(e){return Lt(e)===Va};te.isSuspense=function(e){return Lt(e)===Xa};te.isValidElementType=function(e){return typeof e=="string"||typeof e=="function"||e===Ja||e===$a||e===Ya||e===Va||e===Xa||e===MM||typeof e=="object"&&e!==null&&(e.$$typeof===ec||e.$$typeof===Za||e.$$typeof===Wa||e.$$typeof===za||e.$$typeof===Ka||e.$$typeof===TM||e.$$typeof===_M||e.$$typeof===DM||e.$$typeof===vM)};te.typeOf=Lt});var AC=G((I4,lC)=>{"use strict";lC.exports=cC()});var hC=G((x4,pC)=>{"use strict";var Eu=AC(),kM={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},NM={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},LM={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},dC={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},Iu={};Iu[Eu.ForwardRef]=LM;Iu[Eu.Memo]=dC;function uC(e){return Eu.isMemo(e)?dC:Iu[e.$$typeof]||kM}var FM=Object.defineProperty,RM=Object.getOwnPropertyNames,fC=Object.getOwnPropertySymbols,PM=Object.getOwnPropertyDescriptor,OM=Object.getPrototypeOf,mC=Object.prototype;function gC(e,t,r){if(typeof t!="string"){if(mC){var n=OM(t);n&&n!==mC&&gC(e,n,r)}var o=RM(t);fC&&(o=o.concat(fC(t)));for(var i=uC(e),s=uC(t),a=0;a<o.length;++a){var c=o[a];if(!NM[c]&&!(r&&r[c])&&!(s&&s[c])&&!(i&&i[c])){var l=PM(t,c);try{FM(e,c,l)}catch{}}}}return e}pC.exports=gC});function Ui(e,t,r){var n="";return r.split(" ").forEach(function(o){e[o]!==void 0?t.push(e[o]+";"):o&&(n+=o+" ")}),n}var GM,tc,qi,rc=g(()=>{GM=!0;tc=function(t,r,n){var o=t.key+"-"+r.name;(n===!1||GM===!1)&&t.registered[o]===void 0&&(t.registered[o]=r.styles)},qi=function(t,r,n){tc(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 CC(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 EC=g(()=>{});var IC,xC=g(()=>{IC={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}});function ji(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 Nr={name:o.name,styles:o.styles,next:Nr},o.name;var i=r;if(i.styles!==void 0){var s=i.next;if(s!==void 0)for(;s!==void 0;)Nr={name:s.name,styles:s.styles,next:Nr},s=s.next;var a=i.styles+";";return a}return JM(e,t,r)}case"function":{if(e!==void 0){var c=Nr,l=r(e);return Nr=c,ji(e,t,l)}break}}var A=r;if(t==null)return A;var u=t[A];return u!==void 0?u:A}function JM(e,t,r){var n="";if(Array.isArray(r))for(var o=0;o<r.length;o++)n+=ji(e,t,r[o])+";";else for(var i in r){var s=r[i];if(typeof s!="object"){var a=s;t!=null&&t[a]!==void 0?n+=i+"{"+t[a]+"}":yC(a)&&(n+=xu(i)+":"+wC(i,a)+";")}else{if(i==="NO_COMPONENT_SELECTOR"&&HM)throw new Error(jM);if(Array.isArray(s)&&typeof s[0]=="string"&&(t==null||t[s[0]]===void 0))for(var c=0;c<s.length;c++)yC(s[c])&&(n+=xu(i)+":"+wC(i,s[c])+";");else{var l=ji(e,t,s);switch(i){case"animation":case"animationName":{n+=xu(i)+":"+l+";";break}default:n+=i+"{"+l+"}"}}}}return n}function Vo(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="";Nr=void 0;var i=e[0];if(i==null||i.raw===void 0)n=!1,o+=ji(r,t,i);else{var s=i;o+=s[0]}for(var a=1;a<e.length;a++)if(o+=ji(r,t,e[a]),n){var c=i;o+=c[a]}bC.lastIndex=0;for(var l="",A;(A=bC.exec(o))!==null;)l+="-"+A[1];var u=CC(o)+l;return{name:u,styles:o,next:Nr}}var HM,UM,qM,BC,yC,xu,wC,jM,bC,Nr,nc=g(()=>{EC();xC();mu();HM=!1,UM=/[A-Z]|^ms/g,qM=/_EMO_([^_]+?)_([^]*?)_EMO_/g,BC=function(t){return t.charCodeAt(1)===45},yC=function(t){return t!=null&&typeof t!="boolean"},xu=nC(function(e){return BC(e)?e:e.replace(UM,"-$&").toLowerCase()}),wC=function(t,r){switch(t){case"animation":case"animationName":if(typeof r=="string")return r.replace(qM,function(n,o,i){return Nr={name:o,styles:i,next:Nr},o})}return IC[t]!==1&&!BC(t)&&typeof r=="number"&&r!==0?r+"px":r},jM="Component selectors can only be used in conjunction with @emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware compiler transform.";bC=/label:\s*([^\s;{]+)\s*(;|$)/g});var oc,VM,YM,yu,wu=g(()=>{oc=f(b()),VM=function(t){return t()},YM=oc.useInsertionEffect?oc.useInsertionEffect:!1,yu=YM||VM});var er,Ji,SC,Bu,WM,Su,Qu,Mu,ic,bu,QC,zM,$M,MC,vu=g(()=>{er=f(b()),Ji=f(b());du();gu();ja();rc();nc();wu();SC=!1,Bu=er.createContext(typeof HTMLElement<"u"?sC({key:"css"}):null),WM=Bu.Provider,Su=function(){return(0,Ji.useContext)(Bu)},Qu=function(t){return(0,Ji.forwardRef)(function(r,n){var o=(0,Ji.useContext)(Bu);return t(r,o,n)})},Mu=er.createContext({}),ic={}.hasOwnProperty,bu="__EMOTION_TYPE_PLEASE_DO_NOT_USE__",QC=function(t,r){var n={};for(var o in r)ic.call(r,o)&&(n[o]=r[o]);return n[bu]=t,n},zM=function(t){var r=t.cache,n=t.serialized,o=t.isStringTag;return tc(r,n,o),yu(function(){return qi(r,n,o)}),null},$M=Qu(function(e,t,r){var n=e.css;typeof n=="string"&&t.registered[n]!==void 0&&(n=t.registered[n]);var o=e[bu],i=[n],s="";typeof e.className=="string"?s=Ui(t.registered,i,e.className):e.className!=null&&(s=e.className+" ");var a=Vo(i,void 0,er.useContext(Mu));s+=t.key+"-"+a.name;var c={};for(var l in e)ic.call(e,l)&&l!=="css"&&l!==bu&&!SC&&(c[l]=e[l]);return c.className=s,r&&(c.ref=r),er.createElement(er.Fragment,null,er.createElement(zM,{cache:t,serialized:a,isStringTag:typeof o=="string"}),er.createElement(o,c))}),MC=$M});function KM(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return Vo(t)}function Tu(){var e=KM.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 Yo,$4,vC,_u=g(()=>{vu();vu();Yo=f(b());rc();wu();nc();du();gu();ja();$4=f(hC()),vC=function(t,r){var n=arguments;if(r==null||!ic.call(r,"css"))return Yo.createElement.apply(void 0,n);var o=n.length,i=new Array(o);i[0]=MC,i[1]=QC(t,r);for(var s=2;s<o;s++)i[s]=n[s];return Yo.createElement.apply(null,i)};(function(e){var t;t||(t=e.JSX||(e.JSX={}))})(vC||(vC={}))});var Du=G((Z4,TC)=>{TC.exports=JBrowseExports["@mui/material/styles"]});var Wo,ku=g(()=>{Wo=e=>{let t=e.length,r=0,n="";for(;r<t;r++){let o=e[r];if(o==null)continue;let i;switch(typeof o){case"boolean":break;case"object":{if(Array.isArray(o))i=Wo(o);else{let s=o;i="";for(let a in s)s[a]&&a&&(i&&(i+=" "),i+=a)}break}default:i=o}i&&(n&&(n+=" "),n+=i)}return n}});function _C(e){return e instanceof Object&&!("styles"in e)&&!("length"in e)&&!("__emotion_styles"in e)}var DC=g(()=>{});function LC(e){let{useCache:t}=e;function r(){let n=t(),{css:o,cx:i}=(0,NC.useMemo)(()=>XM({cache:n}),[n]);return{css:o,cx:i}}return{useCssAndCx:r}}var NC,XM,kC,FC=g(()=>{NC=f(b(),1);nc();rc();ku();DC();({createCssAndCx:XM}=(()=>{function e(r,n,o){let i=[],s=Ui(r,i,o);return i.length<2?o:s+n(i)}function t(r){let{cache:n}=r,o=(...s)=>{let a=Vo(s,n.registered);qi(n,a,!1);let c=`${n.key}-${a.name}`;e:{let l=s[0];if(!_C(l))break e;kC.saveClassNameCSSObjectMapping(n,c,l)}return c};return{css:o,cx:(...s)=>{let a=Wo(s),c=kC.fixClassName(n,a,o);return e(n.registered,o,c)}}}return{createCssAndCx:t}})());kC=(()=>{let e=new WeakMap;return{saveClassNameCSSObjectMapping:(t,r,n)=>{let o=e.get(t);o===void 0&&(o=new Map,e.set(t,o)),o.set(r,n)},fixClassName:(()=>{function t(r){let n=!1;return r.map(([o,i])=>{if(i===void 0)return o;let s;if(n)s={"&&":i};else{s=o;for(let a in i)if(a.startsWith("@media")){n=!0;break}}return s})}return(r,n,o)=>{if(!n.includes(" "))return n;let i=e.get(r);return Wo(t(n.split(" ").map(s=>[s,i?.get(s)])).map(s=>typeof s=="string"?s:o(s)))}})()}})()});function RC(e,t,r){if(!(t instanceof Object))return e;let n=Object.keys(t);if(n.length===0)return e;let o={};for(let i of Object.keys(e))o[i]=r(e[i],t[i]);for(let i of n){if(i in e)continue;let s=t[i];typeof s=="string"&&(o[i]=s)}return o}var PC=g(()=>{});function OC(e){if(!(e instanceof Object)||typeof e=="function")return e;let t=[];for(let r in e){let n=e[r],o=typeof n;if(!(o==="string"||o==="number"&&!isNaN(n)||o==="boolean"||n===void 0||n===null))return e;t.push(`${r}:${o}_${n}`)}return`xSqLiJdLMd9s${t.join("|")}`}var GC=g(()=>{});function HC(e){let{useTheme:t}=e,{useCssAndCx:r}=LC({useCache:ZM});function n(){return function(o){let i=typeof o=="function"?o:()=>o;return function(a,c){let l=t(),{css:A,cx:u}=r(),m=(0,Nu.useMemo)(()=>{let y=i(l),I={};for(let h of Object.keys(y)){let x=y[h];I[h]=A(x)}return I},[A,l]),d=c?.props.classes,p=OC(d);return{classes:(0,Nu.useMemo)(()=>d?RC(m,d,u):m,[m,p,u]),theme:l,css:A,cx:u}}}}return{makeStyles:n}}var Nu,ZM,UC=g(()=>{"use client";Nu=f(b(),1);_u();FC();PC();GC();ZM=Su});var qC,Z,jC=g(()=>{qC=f(Du(),1);UC();({makeStyles:Z}=HC({useTheme:qC.useTheme}))});var JC=g(()=>{jC()});function sc(...e){return Wo(e)}var ht=g(()=>{"use client";_u();JC();ku()});function Lu({children:e}){let{classes:t}=ev();return(0,VC.jsx)("div",{className:t.bg,children:e})}var VC,ev,YC=g(()=>{VC=f(L(),1);ht();ev=Z()(e=>({bg:{padding:4,margin:4,overflow:"auto",maxHeight:200,background:e.palette.mode==="dark"?"#833":"#f88",border:`1px solid ${e.palette.divider}`}}))});var zC=G(Fu=>{var WC="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");Fu.encode=function(e){if(0<=e&&e<WC.length)return WC[e];throw new TypeError("Must be between 0 and 63: "+e)};Fu.decode=function(e){var t=65,r=90,n=97,o=122,i=48,s=57,a=43,c=47,l=26,A=52;return t<=e&&e<=r?e-t:n<=e&&e<=o?e-n+l:i<=e&&e<=s?e-i+A:e==a?62:e==c?63:-1}});var Ou=G(Pu=>{var $C=zC(),Ru=5,KC=1<<Ru,XC=KC-1,ZC=KC;function tv(e){return e<0?(-e<<1)+1:(e<<1)+0}function rv(e){var t=(e&1)===1,r=e>>1;return t?-r:r}Pu.encode=function(t){var r="",n,o=tv(t);do n=o&XC,o>>>=Ru,o>0&&(n|=ZC),r+=$C.encode(n);while(o>0);return r};Pu.decode=function(t,r,n){var o=t.length,i=0,s=0,a,c;do{if(r>=o)throw new Error("Expected more digits in base 64 VLQ value.");if(c=$C.decode(t.charCodeAt(r++)),c===-1)throw new Error("Invalid base64 digit: "+t.charAt(r-1));a=!!(c&ZC),c&=XC,i=i+(c<<s),s+=Ru}while(a);n.value=rv(i),n.rest=r}});var $o=G(ze=>{function nv(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}ze.getArg=nv;var eE=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,ov=/^data:.+\,.+$/;function Vi(e){var t=e.match(eE);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}ze.urlParse=Vi;function zo(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}ze.urlGenerate=zo;var iv=32;function sv(e){var t=[];return function(r){for(var n=0;n<t.length;n++)if(t[n].input===r){var o=t[0];return t[0]=t[n],t[n]=o,t[0].result}var i=e(r);return t.unshift({input:r,result:i}),t.length>iv&&t.pop(),i}}var Gu=sv(function(t){var r=t,n=Vi(t);if(n){if(!n.path)return t;r=n.path}for(var o=ze.isAbsolute(r),i=[],s=0,a=0;;)if(s=a,a=r.indexOf("/",s),a===-1){i.push(r.slice(s));break}else for(i.push(r.slice(s,a));a<r.length&&r[a]==="/";)a++;for(var c,l=0,a=i.length-1;a>=0;a--)c=i[a],c==="."?i.splice(a,1):c===".."?l++:l>0&&(c===""?(i.splice(a+1,l),l=0):(i.splice(a,2),l--));return r=i.join("/"),r===""&&(r=o?"/":"."),n?(n.path=r,zo(n)):r});ze.normalize=Gu;function tE(e,t){e===""&&(e="."),t===""&&(t=".");var r=Vi(t),n=Vi(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),zo(r);if(r||t.match(ov))return t;if(n&&!n.host&&!n.path)return n.host=t,zo(n);var o=t.charAt(0)==="/"?t:Gu(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=o,zo(n)):o}ze.join=tE;ze.isAbsolute=function(e){return e.charAt(0)==="/"||eE.test(e)};function av(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");for(var r=0;t.indexOf(e+"/")!==0;){var n=e.lastIndexOf("/");if(n<0||(e=e.slice(0,n),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}ze.relative=av;var rE=(function(){var e=Object.create(null);return!("__proto__"in e)})();function nE(e){return e}function cv(e){return oE(e)?"$"+e:e}ze.toSetString=rE?nE:cv;function lv(e){return oE(e)?e.slice(1):e}ze.fromSetString=rE?nE:lv;function oE(e){if(!e)return!1;var t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(var r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function Av(e,t,r){var n=Xr(e.source,t.source);return n!==0||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:Xr(e.name,t.name)}ze.compareByOriginalPositions=Av;function uv(e,t,r){var n;return n=e.originalLine-t.originalLine,n!==0||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:Xr(e.name,t.name)}ze.compareByOriginalPositionsNoSource=uv;function fv(e,t,r){var n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=Xr(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:Xr(e.name,t.name)}ze.compareByGeneratedPositionsDeflated=fv;function mv(e,t,r){var n=e.generatedColumn-t.generatedColumn;return n!==0||r||(n=Xr(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:Xr(e.name,t.name)}ze.compareByGeneratedPositionsDeflatedNoLine=mv;function Xr(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function dv(e,t){var r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=Xr(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:Xr(e.name,t.name)}ze.compareByGeneratedPositionsInflated=dv;function gv(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}ze.parseSourceMapInput=gv;function pv(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){var n=Vi(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){var o=n.path.lastIndexOf("/");o>=0&&(n.path=n.path.substring(0,o+1))}t=tE(zo(n),t)}return Gu(t)}ze.computeSourceURL=pv});var qu=G(iE=>{var Hu=$o(),Uu=Object.prototype.hasOwnProperty,jn=typeof Map<"u";function Zr(){this._array=[],this._set=jn?new Map:Object.create(null)}Zr.fromArray=function(t,r){for(var n=new Zr,o=0,i=t.length;o<i;o++)n.add(t[o],r);return n};Zr.prototype.size=function(){return jn?this._set.size:Object.getOwnPropertyNames(this._set).length};Zr.prototype.add=function(t,r){var n=jn?t:Hu.toSetString(t),o=jn?this.has(t):Uu.call(this._set,n),i=this._array.length;(!o||r)&&this._array.push(t),o||(jn?this._set.set(t,i):this._set[n]=i)};Zr.prototype.has=function(t){if(jn)return this._set.has(t);var r=Hu.toSetString(t);return Uu.call(this._set,r)};Zr.prototype.indexOf=function(t){if(jn){var r=this._set.get(t);if(r>=0)return r}else{var n=Hu.toSetString(t);if(Uu.call(this._set,n))return this._set[n]}throw new Error('"'+t+'" is not in the set.')};Zr.prototype.at=function(t){if(t>=0&&t<this._array.length)return this._array[t];throw new Error("No element indexed by "+t)};Zr.prototype.toArray=function(){return this._array.slice()};iE.ArraySet=Zr});var cE=G(aE=>{var sE=$o();function hv(e,t){var r=e.generatedLine,n=t.generatedLine,o=e.generatedColumn,i=t.generatedColumn;return n>r||n==r&&i>=o||sE.compareByGeneratedPositionsInflated(e,t)<=0}function ac(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}ac.prototype.unsortedForEach=function(t,r){this._array.forEach(t,r)};ac.prototype.add=function(t){hv(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))};ac.prototype.toArray=function(){return this._sorted||(this._array.sort(sE.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};aE.MappingList=ac});var ju=G(lE=>{var Yi=Ou(),ke=$o(),cc=qu().ArraySet,Cv=cE().MappingList;function tr(e){e||(e={}),this._file=ke.getArg(e,"file",null),this._sourceRoot=ke.getArg(e,"sourceRoot",null),this._skipValidation=ke.getArg(e,"skipValidation",!1),this._ignoreInvalidMapping=ke.getArg(e,"ignoreInvalidMapping",!1),this._sources=new cc,this._names=new cc,this._mappings=new Cv,this._sourcesContents=null}tr.prototype._version=3;tr.fromSourceMap=function(t,r){var n=t.sourceRoot,o=new tr(Object.assign(r||{},{file:t.file,sourceRoot:n}));return t.eachMapping(function(i){var s={generated:{line:i.generatedLine,column:i.generatedColumn}};i.source!=null&&(s.source=i.source,n!=null&&(s.source=ke.relative(n,s.source)),s.original={line:i.originalLine,column:i.originalColumn},i.name!=null&&(s.name=i.name)),o.addMapping(s)}),t.sources.forEach(function(i){var s=i;n!==null&&(s=ke.relative(n,i)),o._sources.has(s)||o._sources.add(s);var a=t.sourceContentFor(i);a!=null&&o.setSourceContent(i,a)}),o};tr.prototype.addMapping=function(t){var r=ke.getArg(t,"generated"),n=ke.getArg(t,"original",null),o=ke.getArg(t,"source",null),i=ke.getArg(t,"name",null);!this._skipValidation&&this._validateMapping(r,n,o,i)===!1||(o!=null&&(o=String(o),this._sources.has(o)||this._sources.add(o)),i!=null&&(i=String(i),this._names.has(i)||this._names.add(i)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:o,name:i}))};tr.prototype.setSourceContent=function(t,r){var n=t;this._sourceRoot!=null&&(n=ke.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[ke.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[ke.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};tr.prototype.applySourceMap=function(t,r,n){var o=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);o=t.file}var i=this._sourceRoot;i!=null&&(o=ke.relative(i,o));var s=new cc,a=new cc;this._mappings.unsortedForEach(function(c){if(c.source===o&&c.originalLine!=null){var l=t.originalPositionFor({line:c.originalLine,column:c.originalColumn});l.source!=null&&(c.source=l.source,n!=null&&(c.source=ke.join(n,c.source)),i!=null&&(c.source=ke.relative(i,c.source)),c.originalLine=l.line,c.originalColumn=l.column,l.name!=null&&(c.name=l.name))}var A=c.source;A!=null&&!s.has(A)&&s.add(A);var u=c.name;u!=null&&!a.has(u)&&a.add(u)},this),this._sources=s,this._names=a,t.sources.forEach(function(c){var l=t.sourceContentFor(c);l!=null&&(n!=null&&(c=ke.join(n,c)),i!=null&&(c=ke.relative(i,c)),this.setSourceContent(c,l))},this)};tr.prototype._validateMapping=function(t,r,n,o){if(r&&typeof r.line!="number"&&typeof r.column!="number"){var i="original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.";if(this._ignoreInvalidMapping)return typeof console<"u"&&console.warn&&console.warn(i),!1;throw new Error(i)}if(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!n&&!o)){if(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&n)return;var i="Invalid mapping: "+JSON.stringify({generated:t,source:n,original:r,name:o});if(this._ignoreInvalidMapping)return typeof console<"u"&&console.warn&&console.warn(i),!1;throw new Error(i)}};tr.prototype._serializeMappings=function(){for(var t=0,r=1,n=0,o=0,i=0,s=0,a="",c,l,A,u,m=this._mappings.toArray(),d=0,p=m.length;d<p;d++){if(l=m[d],c="",l.generatedLine!==r)for(t=0;l.generatedLine!==r;)c+=";",r++;else if(d>0){if(!ke.compareByGeneratedPositionsInflated(l,m[d-1]))continue;c+=","}c+=Yi.encode(l.generatedColumn-t),t=l.generatedColumn,l.source!=null&&(u=this._sources.indexOf(l.source),c+=Yi.encode(u-s),s=u,c+=Yi.encode(l.originalLine-1-o),o=l.originalLine-1,c+=Yi.encode(l.originalColumn-n),n=l.originalColumn,l.name!=null&&(A=this._names.indexOf(l.name),c+=Yi.encode(A-i),i=A)),a+=c}return a};tr.prototype._generateSourcesContent=function(t,r){return t.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=ke.relative(r,n));var o=ke.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,o)?this._sourcesContents[o]:null},this)};tr.prototype.toJSON=function(){var t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t};tr.prototype.toString=function(){return JSON.stringify(this.toJSON())};lE.SourceMapGenerator=tr});var AE=G(Jn=>{Jn.GREATEST_LOWER_BOUND=1;Jn.LEAST_UPPER_BOUND=2;function Ju(e,t,r,n,o,i){var s=Math.floor((t-e)/2)+e,a=o(r,n[s],!0);return a===0?s:a>0?t-s>1?Ju(s,t,r,n,o,i):i==Jn.LEAST_UPPER_BOUND?t<n.length?t:-1:s:s-e>1?Ju(e,s,r,n,o,i):i==Jn.LEAST_UPPER_BOUND?s:e<0?-1:e}Jn.search=function(t,r,n,o){if(r.length===0)return-1;var i=Ju(-1,r.length,t,r,n,o||Jn.GREATEST_LOWER_BOUND);if(i<0)return-1;for(;i-1>=0&&n(r[i],r[i-1],!0)===0;)--i;return i}});var mE=G(fE=>{function Ev(e){function t(o,i,s){var a=o[i];o[i]=o[s],o[s]=a}function r(o,i){return Math.round(o+Math.random()*(i-o))}function n(o,i,s,a){if(s<a){var c=r(s,a),l=s-1;t(o,c,a);for(var A=o[a],u=s;u<a;u++)i(o[u],A,!1)<=0&&(l+=1,t(o,l,u));t(o,l+1,u);var m=l+1;n(o,i,s,m-1),n(o,i,m+1,a)}}return n}function Iv(e){let t=Ev.toString();return new Function(`return ${t}`)()(e)}var uE=new WeakMap;fE.quickSort=function(e,t,r=0){let n=uE.get(t);n===void 0&&(n=Iv(t),uE.set(t,n)),n(e,t,r,e.length-1)}});var pE=G(lc=>{var k=$o(),Yu=AE(),Ko=qu().ArraySet,xv=Ou(),Wi=mE().quickSort;function pe(e,t){var r=e;return typeof e=="string"&&(r=k.parseSourceMapInput(e)),r.sections!=null?new Er(r,t):new tt(r,t)}pe.fromSourceMap=function(e,t){return tt.fromSourceMap(e,t)};pe.prototype._version=3;pe.prototype.__generatedMappings=null;Object.defineProperty(pe.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});pe.prototype.__originalMappings=null;Object.defineProperty(pe.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});pe.prototype._charIsMappingSeparator=function(t,r){var n=t.charAt(r);return n===";"||n===","};pe.prototype._parseMappings=function(t,r){throw new Error("Subclasses must implement _parseMappings")};pe.GENERATED_ORDER=1;pe.ORIGINAL_ORDER=2;pe.GREATEST_LOWER_BOUND=1;pe.LEAST_UPPER_BOUND=2;pe.prototype.eachMapping=function(t,r,n){var o=r||null,i=n||pe.GENERATED_ORDER,s;switch(i){case pe.GENERATED_ORDER:s=this._generatedMappings;break;case pe.ORIGINAL_ORDER:s=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}for(var a=this.sourceRoot,c=t.bind(o),l=this._names,A=this._sources,u=this._sourceMapURL,m=0,d=s.length;m<d;m++){var p=s[m],C=p.source===null?null:A.at(p.source);C!==null&&(C=k.computeSourceURL(a,C,u)),c({source:C,generatedLine:p.generatedLine,generatedColumn:p.generatedColumn,originalLine:p.originalLine,originalColumn:p.originalColumn,name:p.name===null?null:l.at(p.name)})}};pe.prototype.allGeneratedPositionsFor=function(t){var r=k.getArg(t,"line"),n={source:k.getArg(t,"source"),originalLine:r,originalColumn:k.getArg(t,"column",0)};if(n.source=this._findSourceIndex(n.source),n.source<0)return[];var o=[],i=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",k.compareByOriginalPositions,Yu.LEAST_UPPER_BOUND);if(i>=0){var s=this._originalMappings[i];if(t.column===void 0)for(var a=s.originalLine;s&&s.originalLine===a;)o.push({line:k.getArg(s,"generatedLine",null),column:k.getArg(s,"generatedColumn",null),lastColumn:k.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[++i];else for(var c=s.originalColumn;s&&s.originalLine===r&&s.originalColumn==c;)o.push({line:k.getArg(s,"generatedLine",null),column:k.getArg(s,"generatedColumn",null),lastColumn:k.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[++i]}return o};lc.SourceMapConsumer=pe;function tt(e,t){var r=e;typeof e=="string"&&(r=k.parseSourceMapInput(e));var n=k.getArg(r,"version"),o=k.getArg(r,"sources"),i=k.getArg(r,"names",[]),s=k.getArg(r,"sourceRoot",null),a=k.getArg(r,"sourcesContent",null),c=k.getArg(r,"mappings"),l=k.getArg(r,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);s&&(s=k.normalize(s)),o=o.map(String).map(k.normalize).map(function(A){return s&&k.isAbsolute(s)&&k.isAbsolute(A)?k.relative(s,A):A}),this._names=Ko.fromArray(i.map(String),!0),this._sources=Ko.fromArray(o,!0),this._absoluteSources=this._sources.toArray().map(function(A){return k.computeSourceURL(s,A,t)}),this.sourceRoot=s,this.sourcesContent=a,this._mappings=c,this._sourceMapURL=t,this.file=l}tt.prototype=Object.create(pe.prototype);tt.prototype.consumer=pe;tt.prototype._findSourceIndex=function(e){var t=e;if(this.sourceRoot!=null&&(t=k.relative(this.sourceRoot,t)),this._sources.has(t))return this._sources.indexOf(t);var r;for(r=0;r<this._absoluteSources.length;++r)if(this._absoluteSources[r]==e)return r;return-1};tt.fromSourceMap=function(t,r){var n=Object.create(tt.prototype),o=n._names=Ko.fromArray(t._names.toArray(),!0),i=n._sources=Ko.fromArray(t._sources.toArray(),!0);n.sourceRoot=t._sourceRoot,n.sourcesContent=t._generateSourcesContent(n._sources.toArray(),n.sourceRoot),n.file=t._file,n._sourceMapURL=r,n._absoluteSources=n._sources.toArray().map(function(d){return k.computeSourceURL(n.sourceRoot,d,r)});for(var s=t._mappings.toArray().slice(),a=n.__generatedMappings=[],c=n.__originalMappings=[],l=0,A=s.length;l<A;l++){var u=s[l],m=new gE;m.generatedLine=u.generatedLine,m.generatedColumn=u.generatedColumn,u.source&&(m.source=i.indexOf(u.source),m.originalLine=u.originalLine,m.originalColumn=u.originalColumn,u.name&&(m.name=o.indexOf(u.name)),c.push(m)),a.push(m)}return Wi(n.__originalMappings,k.compareByOriginalPositions),n};tt.prototype._version=3;Object.defineProperty(tt.prototype,"sources",{get:function(){return this._absoluteSources.slice()}});function gE(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}var Vu=k.compareByGeneratedPositionsDeflatedNoLine;function dE(e,t){let r=e.length,n=e.length-t;if(!(n<=1))if(n==2){let o=e[t],i=e[t+1];Vu(o,i)>0&&(e[t]=i,e[t+1]=o)}else if(n<20)for(let o=t;o<r;o++)for(let i=o;i>t;i--){let s=e[i-1],a=e[i];if(Vu(s,a)<=0)break;e[i-1]=a,e[i]=s}else Wi(e,Vu,t)}tt.prototype._parseMappings=function(t,r){var n=1,o=0,i=0,s=0,a=0,c=0,l=t.length,A=0,u={},m={},d=[],p=[],C,y,I,h,x;let w=0;for(;A<l;)if(t.charAt(A)===";")n++,A++,o=0,dE(p,w),w=p.length;else if(t.charAt(A)===",")A++;else{for(C=new gE,C.generatedLine=n,h=A;h<l&&!this._charIsMappingSeparator(t,h);h++);for(y=t.slice(A,h),I=[];A<h;)xv.decode(t,A,m),x=m.value,A=m.rest,I.push(x);if(I.length===2)throw new Error("Found a source, but no line and column");if(I.length===3)throw new Error("Found a source and line, but no column");if(C.generatedColumn=o+I[0],o=C.generatedColumn,I.length>1&&(C.source=a+I[1],a+=I[1],C.originalLine=i+I[2],i=C.originalLine,C.originalLine+=1,C.originalColumn=s+I[3],s=C.originalColumn,I.length>4&&(C.name=c+I[4],c+=I[4])),p.push(C),typeof C.originalLine=="number"){let S=C.source;for(;d.length<=S;)d.push(null);d[S]===null&&(d[S]=[]),d[S].push(C)}}dE(p,w),this.__generatedMappings=p;for(var Q=0;Q<d.length;Q++)d[Q]!=null&&Wi(d[Q],k.compareByOriginalPositionsNoSource);this.__originalMappings=[].concat(...d)};tt.prototype._findMapping=function(t,r,n,o,i,s){if(t[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+t[n]);if(t[o]<0)throw new TypeError("Column must be greater than or equal to 0, got "+t[o]);return Yu.search(t,r,i,s)};tt.prototype.computeColumnSpans=function(){for(var t=0;t<this._generatedMappings.length;++t){var r=this._generatedMappings[t];if(t+1<this._generatedMappings.length){var n=this._generatedMappings[t+1];if(r.generatedLine===n.generatedLine){r.lastGeneratedColumn=n.generatedColumn-1;continue}}r.lastGeneratedColumn=1/0}};tt.prototype.originalPositionFor=function(t){var r={generatedLine:k.getArg(t,"line"),generatedColumn:k.getArg(t,"column")},n=this._findMapping(r,this._generatedMappings,"generatedLine","generatedColumn",k.compareByGeneratedPositionsDeflated,k.getArg(t,"bias",pe.GREATEST_LOWER_BOUND));if(n>=0){var o=this._generatedMappings[n];if(o.generatedLine===r.generatedLine){var i=k.getArg(o,"source",null);i!==null&&(i=this._sources.at(i),i=k.computeSourceURL(this.sourceRoot,i,this._sourceMapURL));var s=k.getArg(o,"name",null);return s!==null&&(s=this._names.at(s)),{source:i,line:k.getArg(o,"originalLine",null),column:k.getArg(o,"originalColumn",null),name:s}}}return{source:null,line:null,column:null,name:null}};tt.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(t){return t==null}):!1};tt.prototype.sourceContentFor=function(t,r){if(!this.sourcesContent)return null;var n=this._findSourceIndex(t);if(n>=0)return this.sourcesContent[n];var o=t;this.sourceRoot!=null&&(o=k.relative(this.sourceRoot,o));var i;if(this.sourceRoot!=null&&(i=k.urlParse(this.sourceRoot))){var s=o.replace(/^file:\/\//,"");if(i.scheme=="file"&&this._sources.has(s))return this.sourcesContent[this._sources.indexOf(s)];if((!i.path||i.path=="/")&&this._sources.has("/"+o))return this.sourcesContent[this._sources.indexOf("/"+o)]}if(r)return null;throw new Error('"'+o+'" is not in the SourceMap.')};tt.prototype.generatedPositionFor=function(t){var r=k.getArg(t,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};var n={source:r,originalLine:k.getArg(t,"line"),originalColumn:k.getArg(t,"column")},o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",k.compareByOriginalPositions,k.getArg(t,"bias",pe.GREATEST_LOWER_BOUND));if(o>=0){var i=this._originalMappings[o];if(i.source===n.source)return{line:k.getArg(i,"generatedLine",null),column:k.getArg(i,"generatedColumn",null),lastColumn:k.getArg(i,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};lc.BasicSourceMapConsumer=tt;function Er(e,t){var r=e;typeof e=="string"&&(r=k.parseSourceMapInput(e));var n=k.getArg(r,"version"),o=k.getArg(r,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new Ko,this._names=new Ko;var i={line:-1,column:0};this._sections=o.map(function(s){if(s.url)throw new Error("Support for url field in sections not implemented.");var a=k.getArg(s,"offset"),c=k.getArg(a,"line"),l=k.getArg(a,"column");if(c<i.line||c===i.line&&l<i.column)throw new Error("Section offsets must be ordered and non-overlapping.");return i=a,{generatedOffset:{generatedLine:c+1,generatedColumn:l+1},consumer:new pe(k.getArg(s,"map"),t)}})}Er.prototype=Object.create(pe.prototype);Er.prototype.constructor=pe;Er.prototype._version=3;Object.defineProperty(Er.prototype,"sources",{get:function(){for(var e=[],t=0;t<this._sections.length;t++)for(var r=0;r<this._sections[t].consumer.sources.length;r++)e.push(this._sections[t].consumer.sources[r]);return e}});Er.prototype.originalPositionFor=function(t){var r={generatedLine:k.getArg(t,"line"),generatedColumn:k.getArg(t,"column")},n=Yu.search(r,this._sections,function(i,s){var a=i.generatedLine-s.generatedOffset.generatedLine;return a||i.generatedColumn-s.generatedOffset.generatedColumn}),o=this._sections[n];return o?o.consumer.originalPositionFor({line:r.generatedLine-(o.generatedOffset.generatedLine-1),column:r.generatedColumn-(o.generatedOffset.generatedLine===r.generatedLine?o.generatedOffset.generatedColumn-1:0),bias:t.bias}):{source:null,line:null,column:null,name:null}};Er.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(t){return t.consumer.hasContentsOfAllSources()})};Er.prototype.sourceContentFor=function(t,r){for(var n=0;n<this._sections.length;n++){var o=this._sections[n],i=o.consumer.sourceContentFor(t,!0);if(i||i==="")return i}if(r)return null;throw new Error('"'+t+'" is not in the SourceMap.')};Er.prototype.generatedPositionFor=function(t){for(var r=0;r<this._sections.length;r++){var n=this._sections[r];if(n.consumer._findSourceIndex(k.getArg(t,"source"))!==-1){var o=n.consumer.generatedPositionFor(t);if(o){var i={line:o.line+(n.generatedOffset.generatedLine-1),column:o.column+(n.generatedOffset.generatedLine===o.line?n.generatedOffset.generatedColumn-1:0)};return i}}}return{line:null,column:null}};Er.prototype._parseMappings=function(t,r){this.__generatedMappings=[],this.__originalMappings=[];for(var n=0;n<this._sections.length;n++)for(var o=this._sections[n],i=o.consumer._generatedMappings,s=0;s<i.length;s++){var a=i[s],c=o.consumer._sources.at(a.source);c!==null&&(c=k.computeSourceURL(o.consumer.sourceRoot,c,this._sourceMapURL)),this._sources.add(c),c=this._sources.indexOf(c);var l=null;a.name&&(l=o.consumer._names.at(a.name),this._names.add(l),l=this._names.indexOf(l));var A={source:c,generatedLine:a.generatedLine+(o.generatedOffset.generatedLine-1),generatedColumn:a.generatedColumn+(o.generatedOffset.generatedLine===a.generatedLine?o.generatedOffset.generatedColumn-1:0),originalLine:a.originalLine,originalColumn:a.originalColumn,name:l};this.__generatedMappings.push(A),typeof A.originalLine=="number"&&this.__originalMappings.push(A)}Wi(this.__generatedMappings,k.compareByGeneratedPositionsDeflated),Wi(this.__originalMappings,k.compareByOriginalPositions)};lc.IndexedSourceMapConsumer=Er});var CE=G(hE=>{var yv=ju().SourceMapGenerator,Ac=$o(),wv=/(\r?\n)/,bv=10,Xo="$$$isSourceNode$$$";function Ft(e,t,r,n,o){this.children=[],this.sourceContents={},this.line=e??null,this.column=t??null,this.source=r??null,this.name=o??null,this[Xo]=!0,n!=null&&this.add(n)}Ft.fromStringWithSourceMap=function(t,r,n){var o=new Ft,i=t.split(wv),s=0,a=function(){var m=p(),d=p()||"";return m+d;function p(){return s<i.length?i[s++]:void 0}},c=1,l=0,A=null;return r.eachMapping(function(m){if(A!==null)if(c<m.generatedLine)u(A,a()),c++,l=0;else{var d=i[s]||"",p=d.substr(0,m.generatedColumn-l);i[s]=d.substr(m.generatedColumn-l),l=m.generatedColumn,u(A,p),A=m;return}for(;c<m.generatedLine;)o.add(a()),c++;if(l<m.generatedColumn){var d=i[s]||"";o.add(d.substr(0,m.generatedColumn)),i[s]=d.substr(m.generatedColumn),l=m.generatedColumn}A=m},this),s<i.length&&(A&&u(A,a()),o.add(i.splice(s).join(""))),r.sources.forEach(function(m){var d=r.sourceContentFor(m);d!=null&&(n!=null&&(m=Ac.join(n,m)),o.setSourceContent(m,d))}),o;function u(m,d){if(m===null||m.source===void 0)o.add(d);else{var p=n?Ac.join(n,m.source):m.source;o.add(new Ft(m.originalLine,m.originalColumn,p,d,m.name))}}};Ft.prototype.add=function(t){if(Array.isArray(t))t.forEach(function(r){this.add(r)},this);else if(t[Xo]||typeof t=="string")t&&this.children.push(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};Ft.prototype.prepend=function(t){if(Array.isArray(t))for(var r=t.length-1;r>=0;r--)this.prepend(t[r]);else if(t[Xo]||typeof t=="string")this.children.unshift(t);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+t);return this};Ft.prototype.walk=function(t){for(var r,n=0,o=this.children.length;n<o;n++)r=this.children[n],r[Xo]?r.walk(t):r!==""&&t(r,{source:this.source,line:this.line,column:this.column,name:this.name})};Ft.prototype.join=function(t){var r,n,o=this.children.length;if(o>0){for(r=[],n=0;n<o-1;n++)r.push(this.children[n]),r.push(t);r.push(this.children[n]),this.children=r}return this};Ft.prototype.replaceRight=function(t,r){var n=this.children[this.children.length-1];return n[Xo]?n.replaceRight(t,r):typeof n=="string"?this.children[this.children.length-1]=n.replace(t,r):this.children.push("".replace(t,r)),this};Ft.prototype.setSourceContent=function(t,r){this.sourceContents[Ac.toSetString(t)]=r};Ft.prototype.walkSourceContents=function(t){for(var r=0,n=this.children.length;r<n;r++)this.children[r][Xo]&&this.children[r].walkSourceContents(t);for(var o=Object.keys(this.sourceContents),r=0,n=o.length;r<n;r++)t(Ac.fromSetString(o[r]),this.sourceContents[o[r]])};Ft.prototype.toString=function(){var t="";return this.walk(function(r){t+=r}),t};Ft.prototype.toStringWithSourceMap=function(t){var r={code:"",line:1,column:0},n=new yv(t),o=!1,i=null,s=null,a=null,c=null;return this.walk(function(l,A){r.code+=l,A.source!==null&&A.line!==null&&A.column!==null?((i!==A.source||s!==A.line||a!==A.column||c!==A.name)&&n.addMapping({source:A.source,original:{line:A.line,column:A.column},generated:{line:r.line,column:r.column},name:A.name}),i=A.source,s=A.line,a=A.column,c=A.name,o=!0):o&&(n.addMapping({generated:{line:r.line,column:r.column}}),i=null,o=!1);for(var u=0,m=l.length;u<m;u++)l.charCodeAt(u)===bv?(r.line++,r.column=0,u+1===m?(i=null,o=!1):o&&n.addMapping({source:A.source,original:{line:A.line,column:A.column},generated:{line:r.line,column:r.column},name:A.name})):r.column++}),this.walkSourceContents(function(l,A){n.setSourceContent(l,A)}),{code:r.code,map:n}};hE.SourceNode=Ft});var EE=G(uc=>{uc.SourceMapGenerator=ju().SourceMapGenerator;uc.SourceMapConsumer=pE().SourceMapConsumer;uc.SourceNode=CE().SourceNode});function mc(e){let{children:t,...r}=e;return(0,fc.jsxs)(IE.Link,{...r,target:"_blank",rel:"noopener noreferrer",children:[t," ",(0,fc.jsx)(Ea,{fontSize:"small"})]})}var fc,IE,xE=g(()=>{fc=f(L(),1);TA();IE=f(_(),1)});function Wu({text:e,extra:t}){let{classes:r}=Bv(),n=t?`supporting data: ${JSON.stringify(t,null,2)}`:"",o=[e,n].filter(Boolean).join(`
|
|
4
4
|
`),i=encodeURIComponent(`I got this error from JBrowse, here is the stack trace:
|
|
5
5
|
|
|
6
6
|
\`\`\`
|
|
7
7
|
${e}
|
|
8
8
|
\`\`\`
|
|
9
9
|
${n}
|
|
10
|
-
`),s=`https://github.com/GMOD/jbrowse-components/issues/new?labels=bug&title=JBrowse+issue&body=${i}`,a=`mailto:${
|
|
10
|
+
`),s=`https://github.com/GMOD/jbrowse-components/issues/new?labels=bug&title=JBrowse+issue&body=${i}`,a=`mailto:${yE}?subject=JBrowse%202%20error&body=${i}`;return(0,en.jsxs)(en.Fragment,{children:[(0,en.jsxs)(dc.Typography,{children:["Post a new issue at"," ",(0,en.jsx)(mc,{href:s,children:"GitHub"})," or send an email to ",(0,en.jsx)(mc,{href:a,children:yE})]}),(0,en.jsx)("pre",{className:r.pre,children:o})]})}var en,dc,yE,Bv,wE=g(()=>{en=f(L(),1),dc=f(_(),1);xE();ht();yE="jbrowse2@berkeley.edu",Bv=Z()(e=>({pre:{background:(0,dc.alpha)(e.palette.error.main,.2),border:`1px solid ${e.palette.divider}`,overflow:"auto",margin:20,maxHeight:300}}))});function zu({message:e,children:t,variant:r="body2",...n}){let{classes:o}=Sv();return(0,bE.jsx)(BE.Typography,{className:sc(o.dots,n.className),...n,variant:r,children:e||"Loading"})}var bE,BE,Sv,SE=g(()=>{bE=f(L(),1),BE=f(_(),1);ht();Sv=Z()({dots:{"&::after":{display:"inline-block",content:'""',width:"1em",textAlign:"left",animation:`${Tu`
|
|
11
11
|
0% {
|
|
12
12
|
content: '';
|
|
13
13
|
}
|
|
@@ -20,15 +20,15 @@ ${n}
|
|
|
20
20
|
75% {
|
|
21
21
|
content: '...';
|
|
22
22
|
}
|
|
23
|
-
`} 1.2s infinite ease-in-out`}}})});var
|
|
24
|
-
`)){let n=
|
|
25
|
-
`)}function
|
|
26
|
-
`);return(0,rr.jsxs)(Ot.Dialog,{open:!0,onClose:t,maxWidth:"xl",children:[(0,rr.jsxs)(Ot.DialogTitle,{children:["Stack trace",(0,rr.jsx)(Ot.IconButton,{onClick:t,sx:{position:"absolute",right:8,top:8},children:(0,rr.jsx)(Da,{})})]}),(0,rr.jsx)(Ot.DialogContent,{children:n===void 0?(0,rr.jsx)(qu,{variant:"h6"}):(0,rr.jsx)(Uu,{text:d,extra:r})}),(0,rr.jsxs)(Ot.DialogActions,{children:[(0,rr.jsx)(Ot.Button,{variant:"contained",color:"secondary",onClick:async()=>{let{default:m}=await Promise.resolve().then(()=>f(yE(),1));m(d),c(!0),setTimeout(()=>{c(!1)},1e3)},children:a?"Copied!":"Copy stack trace to clipboard"}),(0,rr.jsx)(Ot.Button,{variant:"contained",color:"primary",onClick:t,children:"Close"})]})]})}var rr,ei,Ot,bE,ju,wv,bv,wE,ME=g(()=>{rr=f(L(),1),ei=f(B(),1);ru();Ot=f(N(),1),bE=f(AE(),1);mE();hE();ju={},wv=/\/\/# sourceMappingURL=(.*)/,bv=/(.*)((?:https?|file):\/\/.*):(\d+):(\d+)/;wE=1e4});function Tv(e){let t="",r="is not assignable",n=e.indexOf(r);if(n!==-1){let o=e.slice(0,n+r.length),i=/.*at path "(.*)" snapshot `(.*)` is not assignable/m.exec(o);i&&(e=`Failed to load element at ${i[1]}...Failed element had snapshot`,t=i[2]);let s=/.*snapshot `(.*)` is not assignable/.exec(o);s&&(e="Failed to load element...Failed element had snapshot",t=s[1])}return t}function _v({error:e,onReset:t}){let{classes:r}=vE(),[n,o]=(0,ri.useState)(!1);return(0,Tt.jsxs)("div",{className:r.iconFloat,children:[typeof e=="object"&&e&&"stack"in e?(0,Tt.jsx)(ti.Tooltip,{title:"Get stack trace",children:(0,Tt.jsx)(ti.IconButton,{onClick:()=>{o(!0)},color:"primary",children:(0,Tt.jsx)(x0,{})})}):null,t?(0,Tt.jsx)(ti.Tooltip,{title:"Retry",children:(0,Tt.jsx)(ti.IconButton,{onClick:t,color:"primary",children:(0,Tt.jsx)(C0,{})})}):null,n?(0,Tt.jsx)(ri.Suspense,{fallback:null,children:(0,Tt.jsx)(vv,{error:e,onClose:()=>{o(!1)}})}):null]})}function Dv({error:e,onReset:t}){let{classes:r}=vE(),n=`${e}`,o=n.indexOf("expected an instance of"),i=o!==-1?n.slice(0,o):n,s=Tv(n);return(0,Tt.jsxs)(vu,{children:[i.slice(0,1e4),(0,Tt.jsx)(_v,{error:e,onReset:t}),s?(0,Tt.jsx)("pre",{className:r.bg,children:JSON.stringify(JSON.parse(s),null,2)}):null]})}var Tt,ri,ti,vv,vE,TE,_E=g(()=>{Tt=f(L(),1),ri=f(B(),1);E0();y0();ti=f(N(),1);PC();Et();vv=(0,ri.lazy)(()=>Promise.resolve().then(()=>(ME(),QE))),vE=te()(e=>({bg:{background:e.palette.divider,border:"1px solid black",margin:20},iconFloat:{float:"right",marginLeft:100}}));TE=Dv});var kE=H((SO,DE)=>{"use strict";var kv=/["'&<>]/;DE.exports=Nv;function Nv(e){var t=""+e,r=kv.exec(t);if(!r)return t;var n,o="",i=0,s=0;for(i=r.index;i<t.length;i++){switch(t.charCodeAt(i)){case 34:n=""";break;case 38:n="&";break;case 39:n="'";break;case 60:n="<";break;case 62:n=">";break;default:continue}s!==i&&(o+=t.substring(s,i)),s=i+1,o+=n}return s!==i?o+t.substring(s,i):o}});function Ge(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];return $u(e,t,n)}}function qv(e){return function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return Ku(e,r)}}function U(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ki;if(NE&&NE(e,null),!It(t))return e;let n=t.length;for(;n--;){let o=t[n];if(typeof o=="string"){let i=r(o);i!==o&&(Lv(t)||(t[n]=i),o=i)}e[o]=!0}return e}function jv(e){for(let t=0;t<e.length;t++)ve(e,t)||(e[t]=null);return e}function _t(e){let t=oi(null);for(let[r,n]of VE(e))ve(e,r)&&(It(n)?t[r]=jv(n):n&&typeof n=="object"&&n.constructor===Object?t[r]=_t(n):t[r]=n);return t}function Jv(e){switch(typeof e){case"string":return e;case"number":return Hv(e);case"boolean":return Uv(e);case"bigint":return PE?PE(e):"0";case"symbol":return OE?OE(e):"Symbol()";case"undefined":return zi(e);case"function":case"object":{if(e===null)return zi(e);let t=e,r=ii(t,"toString");if(typeof r=="function"){let n=r(t);return typeof n=="string"?n:zi(n)}return zi(e)}default:return zi(e)}}function ii(e,t){for(;e!==null;){let n=Rv(e,t);if(n){if(n.get)return Ge(n.get);if(typeof n.value=="function")return Ge(n.value)}e=Fv(e)}function r(){return null}return r}function Vv(e){try{return st(e,""),!0}catch{return!1}}function zE(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:nT(),t=O=>zE(O);if(t.version="3.4.2",t.removed=[],!e||!e.document||e.document.nodeType!==$i.document||!e.Element)return t.isSupported=!1,t;let{document:r}=e,n=r,o=n.currentScript,{DocumentFragment:i,HTMLTemplateElement:s,Node:a,Element:c,NodeFilter:l,NamedNodeMap:A=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:u,DOMParser:d,trustedTypes:m}=e,p=c.prototype,C=ii(p,"cloneNode"),x=ii(p,"remove"),I=ii(p,"nextSibling"),h=ii(p,"childNodes"),y=ii(p,"parentNode");if(typeof s=="function"){let O=r.createElement("template");O.content&&O.content.ownerDocument&&(r=O.content.ownerDocument)}let w,S="",{implementation:v,createNodeIterator:M,createDocumentFragment:R,getElementsByTagName:T}=r,{importNode:V}=n,Q=JE();t.isSupported=typeof VE=="function"&&typeof y=="function"&&v&&v.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:F,ERB_EXPR:q,TMPLIT_EXPR:G,DATA_ATTR:ye,ARIA_ATTR:Br,IS_SCRIPT_OR_DATA:Ur,ATTR_WHITESPACE:cn,CUSTOM_ELEMENT:Ss}=jE,{IS_ALLOWED_URI:qr}=jE,Fe=null,jr=U({},[...GE,...Vu,...Yu,...Wu,...HE]),ge=null,Tn=U({},[...UE,...zu,...qE,...dc]),pe=Object.seal(oi(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Sr=null,Vt=null,Qt=Object.seal(oi(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),Qs=!0,uo=!0,yi=!1,Ms=!0,Jr=!1,sr=!0,Qr=!1,vs=!1,ee=!1,oe=!1,le=!1,Ae=!1,Dt=!0,dt=!1,Qe="user-content-",mt=!0,ar=!1,Yt={},kt=null,fo=U({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),gt=null,Wt=U({},["audio","video","img","source","image","track"]),_n=null,Ts=U({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ln="http://www.w3.org/1998/Math/MathML",_s="http://www.w3.org/2000/svg",Mr="http://www.w3.org/1999/xhtml",mo=Mr,Cl=!1,El=null,qQ=U({},[ln,_s,Mr],Ju),Il=U({},["mi","mo","mn","ms","mtext"]),xl=U({},["annotation-xml"]),jQ=U({},["title","style","font","a","script"]),wi=null,JQ=["application/xhtml+xml","text/html"],VQ="text/html",He=null,go=null,YQ=r.createElement("form"),Jd=function(E){return E instanceof RegExp||E instanceof Function},yl=function(){let E=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(go&&go===E)return;(!E||typeof E!="object")&&(E={}),E=_t(E),wi=JQ.indexOf(E.PARSER_MEDIA_TYPE)===-1?VQ:E.PARSER_MEDIA_TYPE,He=wi==="application/xhtml+xml"?Ju:Ki,Fe=ve(E,"ALLOWED_TAGS")&&It(E.ALLOWED_TAGS)?U({},E.ALLOWED_TAGS,He):jr,ge=ve(E,"ALLOWED_ATTR")&&It(E.ALLOWED_ATTR)?U({},E.ALLOWED_ATTR,He):Tn,El=ve(E,"ALLOWED_NAMESPACES")&&It(E.ALLOWED_NAMESPACES)?U({},E.ALLOWED_NAMESPACES,Ju):qQ,_n=ve(E,"ADD_URI_SAFE_ATTR")&&It(E.ADD_URI_SAFE_ATTR)?U(_t(Ts),E.ADD_URI_SAFE_ATTR,He):Ts,gt=ve(E,"ADD_DATA_URI_TAGS")&&It(E.ADD_DATA_URI_TAGS)?U(_t(Wt),E.ADD_DATA_URI_TAGS,He):Wt,kt=ve(E,"FORBID_CONTENTS")&&It(E.FORBID_CONTENTS)?U({},E.FORBID_CONTENTS,He):fo,Sr=ve(E,"FORBID_TAGS")&&It(E.FORBID_TAGS)?U({},E.FORBID_TAGS,He):_t({}),Vt=ve(E,"FORBID_ATTR")&&It(E.FORBID_ATTR)?U({},E.FORBID_ATTR,He):_t({}),Yt=ve(E,"USE_PROFILES")?E.USE_PROFILES&&typeof E.USE_PROFILES=="object"?_t(E.USE_PROFILES):E.USE_PROFILES:!1,Qs=E.ALLOW_ARIA_ATTR!==!1,uo=E.ALLOW_DATA_ATTR!==!1,yi=E.ALLOW_UNKNOWN_PROTOCOLS||!1,Ms=E.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Jr=E.SAFE_FOR_TEMPLATES||!1,sr=E.SAFE_FOR_XML!==!1,Qr=E.WHOLE_DOCUMENT||!1,oe=E.RETURN_DOM||!1,le=E.RETURN_DOM_FRAGMENT||!1,Ae=E.RETURN_TRUSTED_TYPE||!1,ee=E.FORCE_BODY||!1,Dt=E.SANITIZE_DOM!==!1,dt=E.SANITIZE_NAMED_PROPS||!1,mt=E.KEEP_CONTENT!==!1,ar=E.IN_PLACE||!1,qr=Vv(E.ALLOWED_URI_REGEXP)?E.ALLOWED_URI_REGEXP:YE,mo=typeof E.NAMESPACE=="string"?E.NAMESPACE:Mr,Il=ve(E,"MATHML_TEXT_INTEGRATION_POINTS")&&E.MATHML_TEXT_INTEGRATION_POINTS&&typeof E.MATHML_TEXT_INTEGRATION_POINTS=="object"?_t(E.MATHML_TEXT_INTEGRATION_POINTS):U({},["mi","mo","mn","ms","mtext"]),xl=ve(E,"HTML_INTEGRATION_POINTS")&&E.HTML_INTEGRATION_POINTS&&typeof E.HTML_INTEGRATION_POINTS=="object"?_t(E.HTML_INTEGRATION_POINTS):U({},["annotation-xml"]);let b=ve(E,"CUSTOM_ELEMENT_HANDLING")&&E.CUSTOM_ELEMENT_HANDLING&&typeof E.CUSTOM_ELEMENT_HANDLING=="object"?_t(E.CUSTOM_ELEMENT_HANDLING):oi(null);if(pe=oi(null),ve(b,"tagNameCheck")&&Jd(b.tagNameCheck)&&(pe.tagNameCheck=b.tagNameCheck),ve(b,"attributeNameCheck")&&Jd(b.attributeNameCheck)&&(pe.attributeNameCheck=b.attributeNameCheck),ve(b,"allowCustomizedBuiltInElements")&&typeof b.allowCustomizedBuiltInElements=="boolean"&&(pe.allowCustomizedBuiltInElements=b.allowCustomizedBuiltInElements),Jr&&(uo=!1),le&&(oe=!0),Yt&&(Fe=U({},HE),ge=oi(null),Yt.html===!0&&(U(Fe,GE),U(ge,UE)),Yt.svg===!0&&(U(Fe,Vu),U(ge,zu),U(ge,dc)),Yt.svgFilters===!0&&(U(Fe,Yu),U(ge,zu),U(ge,dc)),Yt.mathMl===!0&&(U(Fe,Wu),U(ge,qE),U(ge,dc))),Qt.tagCheck=null,Qt.attributeCheck=null,ve(E,"ADD_TAGS")&&(typeof E.ADD_TAGS=="function"?Qt.tagCheck=E.ADD_TAGS:It(E.ADD_TAGS)&&(Fe===jr&&(Fe=_t(Fe)),U(Fe,E.ADD_TAGS,He))),ve(E,"ADD_ATTR")&&(typeof E.ADD_ATTR=="function"?Qt.attributeCheck=E.ADD_ATTR:It(E.ADD_ATTR)&&(ge===Tn&&(ge=_t(ge)),U(ge,E.ADD_ATTR,He))),ve(E,"ADD_URI_SAFE_ATTR")&&It(E.ADD_URI_SAFE_ATTR)&&U(_n,E.ADD_URI_SAFE_ATTR,He),ve(E,"FORBID_CONTENTS")&&It(E.FORBID_CONTENTS)&&(kt===fo&&(kt=_t(kt)),U(kt,E.FORBID_CONTENTS,He)),ve(E,"ADD_FORBID_CONTENTS")&&It(E.ADD_FORBID_CONTENTS)&&(kt===fo&&(kt=_t(kt)),U(kt,E.ADD_FORBID_CONTENTS,He)),mt&&(Fe["#text"]=!0),Qr&&U(Fe,["html","head","body"]),Fe.table&&(U(Fe,["tbody"]),delete Sr.tbody),E.TRUSTED_TYPES_POLICY){if(typeof E.TRUSTED_TYPES_POLICY.createHTML!="function")throw fc('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof E.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw fc('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');w=E.TRUSTED_TYPES_POLICY,S=w.createHTML("")}else w===void 0&&(w=oT(m,o)),w!==null&&typeof S=="string"&&(S=w.createHTML(""));xt&&xt(E),go=E},Vd=U({},[...Vu,...Yu,...Yv]),Yd=U({},[...Wu,...Wv]),WQ=function(E){let b=y(E);(!b||!b.tagName)&&(b={namespaceURI:mo,tagName:"template"});let k=Ki(E.tagName),ue=Ki(b.tagName);return El[E.namespaceURI]?E.namespaceURI===_s?b.namespaceURI===Mr?k==="svg":b.namespaceURI===ln?k==="svg"&&(ue==="annotation-xml"||Il[ue]):!!Vd[k]:E.namespaceURI===ln?b.namespaceURI===Mr?k==="math":b.namespaceURI===_s?k==="math"&&xl[ue]:!!Yd[k]:E.namespaceURI===Mr?b.namespaceURI===_s&&!xl[ue]||b.namespaceURI===ln&&!Il[ue]?!1:!Yd[k]&&(jQ[k]||!Vd[k]):!!(wi==="application/xhtml+xml"&&El[E.namespaceURI]):!1},cr=function(E){Wi(t.removed,{element:E});try{y(E).removeChild(E)}catch{x(E)}},Dn=function(E,b){try{Wi(t.removed,{attribute:b.getAttributeNode(E),from:b})}catch{Wi(t.removed,{attribute:null,from:b})}if(b.removeAttribute(E),E==="is")if(oe||le)try{cr(b)}catch{}else try{b.setAttribute(E,"")}catch{}},Wd=function(E){let b=null,k=null;if(ee)E="<remove></remove>"+E;else{let Re=FE(E,/^[\r\n\t ]+/);k=Re&&Re[0]}wi==="application/xhtml+xml"&&mo===Mr&&(E='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+E+"</body></html>");let ue=w?w.createHTML(E):E;if(mo===Mr)try{b=new d().parseFromString(ue,wi)}catch{}if(!b||!b.documentElement){b=v.createDocument(mo,"template",null);try{b.documentElement.innerHTML=Cl?S:ue}catch{}}let ct=b.body||b.documentElement;return E&&k&&ct.insertBefore(r.createTextNode(k),ct.childNodes[0]||null),mo===Mr?T.call(b,Qr?"html":"body")[0]:Qr?b.documentElement:ct},zd=function(E){return M.call(E.ownerDocument||E,E,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT|l.SHOW_PROCESSING_INSTRUCTION|l.SHOW_CDATA_SECTION,null)},wl=function(E){return E instanceof u&&(typeof E.nodeName!="string"||typeof E.textContent!="string"||typeof E.removeChild!="function"||!(E.attributes instanceof A)||typeof E.removeAttribute!="function"||typeof E.setAttribute!="function"||typeof E.namespaceURI!="string"||typeof E.insertBefore!="function"||typeof E.hasChildNodes!="function")},bl=function(E){return typeof a=="function"&&E instanceof a};function Vr(O,E,b){Yi(O,k=>{k.call(t,E,b,go)})}let $d=function(E){let b=null;if(Vr(Q.beforeSanitizeElements,E,null),wl(E))return cr(E),!0;let k=He(E.nodeName);if(Vr(Q.uponSanitizeElement,E,{tagName:k,allowedTags:Fe}),sr&&E.hasChildNodes()&&!bl(E.firstElementChild)&&st(/<[/\w!]/g,E.innerHTML)&&st(/<[/\w!]/g,E.textContent)||sr&&E.namespaceURI===Mr&&k==="style"&&bl(E.firstElementChild)||E.nodeType===$i.progressingInstruction||sr&&E.nodeType===$i.comment&&st(/<[/\w]/g,E.data))return cr(E),!0;if(Sr[k]||!(Qt.tagCheck instanceof Function&&Qt.tagCheck(k))&&!Fe[k]){if(!Sr[k]&&Xd(k)&&(pe.tagNameCheck instanceof RegExp&&st(pe.tagNameCheck,k)||pe.tagNameCheck instanceof Function&&pe.tagNameCheck(k)))return!1;if(mt&&!kt[k]){let ue=y(E)||E.parentNode,ct=h(E)||E.childNodes;if(ct&&ue){let Re=ct.length;for(let Mt=Re-1;Mt>=0;--Mt){let zt=C(ct[Mt],!0);ue.insertBefore(zt,I(E))}}}return cr(E),!0}return E instanceof c&&!WQ(E)||(k==="noscript"||k==="noembed"||k==="noframes")&&st(/<\/no(script|embed|frames)/i,E.innerHTML)?(cr(E),!0):(Jr&&E.nodeType===$i.text&&(b=E.textContent,Yi([F,q,G],ue=>{b=ni(b,ue," ")}),E.textContent!==b&&(Wi(t.removed,{element:E.cloneNode()}),E.textContent=b)),Vr(Q.afterSanitizeElements,E,null),!1)},Kd=function(E,b,k){if(Vt[b]||Dt&&(b==="id"||b==="name")&&(k in r||k in YQ))return!1;let ue=ge[b]||Qt.attributeCheck instanceof Function&&Qt.attributeCheck(b,E);if(!(uo&&!Vt[b]&&st(ye,b))){if(!(Qs&&st(Br,b))){if(!ue||Vt[b]){if(!(Xd(E)&&(pe.tagNameCheck instanceof RegExp&&st(pe.tagNameCheck,E)||pe.tagNameCheck instanceof Function&&pe.tagNameCheck(E))&&(pe.attributeNameCheck instanceof RegExp&&st(pe.attributeNameCheck,b)||pe.attributeNameCheck instanceof Function&&pe.attributeNameCheck(b,E))||b==="is"&&pe.allowCustomizedBuiltInElements&&(pe.tagNameCheck instanceof RegExp&&st(pe.tagNameCheck,k)||pe.tagNameCheck instanceof Function&&pe.tagNameCheck(k))))return!1}else if(!_n[b]){if(!st(qr,ni(k,cn,""))){if(!((b==="src"||b==="xlink:href"||b==="href")&&E!=="script"&&RE(k,"data:")===0&>[E])){if(!(yi&&!st(Ur,ni(k,cn,"")))){if(k)return!1}}}}}}return!0},zQ=U({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),Xd=function(E){return!zQ[Ki(E)]&&st(Ss,E)},Zd=function(E){Vr(Q.beforeSanitizeAttributes,E,null);let{attributes:b}=E;if(!b||wl(E))return;let k={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ge,forceKeepAttr:void 0},ue=b.length;for(;ue--;){let ct=b[ue],{name:Re,namespaceURI:Mt,value:zt}=ct,lr=He(Re),Bl=zt,We=Re==="value"?Bl:Gv(Bl);if(k.attrName=lr,k.attrValue=We,k.keepAttr=!0,k.forceKeepAttr=void 0,Vr(Q.uponSanitizeAttribute,E,k),We=k.attrValue,dt&&(lr==="id"||lr==="name")&&RE(We,Qe)!==0&&(Dn(Re,E),We=Qe+We),sr&&st(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,We)){Dn(Re,E);continue}if(lr==="attributename"&&FE(We,"href")){Dn(Re,E);continue}if(k.forceKeepAttr)continue;if(!k.keepAttr){Dn(Re,E);continue}if(!Ms&&st(/\/>/i,We)){Dn(Re,E);continue}Jr&&Yi([F,q,G],rm=>{We=ni(We,rm," ")});let tm=He(E.nodeName);if(!Kd(tm,lr,We)){Dn(Re,E);continue}if(w&&typeof m=="object"&&typeof m.getAttributeType=="function"&&!Mt)switch(m.getAttributeType(tm,lr)){case"TrustedHTML":{We=w.createHTML(We);break}case"TrustedScriptURL":{We=w.createScriptURL(We);break}}if(We!==Bl)try{Mt?E.setAttributeNS(Mt,Re,We):E.setAttribute(Re,We),wl(E)?cr(E):LE(t.removed)}catch{Dn(Re,E)}}Vr(Q.afterSanitizeAttributes,E,null)},em=function(E){let b=null,k=zd(E);for(Vr(Q.beforeSanitizeShadowDOM,E,null);b=k.nextNode();)Vr(Q.uponSanitizeShadowNode,b,null),$d(b),Zd(b),b.content instanceof i&&em(b.content);Vr(Q.afterSanitizeShadowDOM,E,null)};return t.sanitize=function(O){let E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},b=null,k=null,ue=null,ct=null;if(Cl=!O,Cl&&(O="<!-->"),typeof O!="string"&&!bl(O)&&(O=Jv(O),typeof O!="string"))throw fc("dirty is not a string, aborting");if(!t.isSupported)return O;if(vs||yl(E),t.removed=[],typeof O=="string"&&(ar=!1),ar){let zt=O.nodeName;if(typeof zt=="string"){let lr=He(zt);if(!Fe[lr]||Sr[lr])throw fc("root node is forbidden and cannot be sanitized in-place")}}else if(O instanceof a)b=Wd("<!---->"),k=b.ownerDocument.importNode(O,!0),k.nodeType===$i.element&&k.nodeName==="BODY"||k.nodeName==="HTML"?b=k:b.appendChild(k);else{if(!oe&&!Jr&&!Qr&&O.indexOf("<")===-1)return w&&Ae?w.createHTML(O):O;if(b=Wd(O),!b)return oe?null:Ae?S:""}b&&ee&&cr(b.firstChild);let Re=zd(ar?O:b);for(;ue=Re.nextNode();)$d(ue),Zd(ue),ue.content instanceof i&&em(ue.content);if(ar)return O;if(oe){if(Jr){b.normalize();let zt=b.innerHTML;Yi([F,q,G],lr=>{zt=ni(zt,lr," ")}),b.innerHTML=zt}if(le)for(ct=R.call(b.ownerDocument);b.firstChild;)ct.appendChild(b.firstChild);else ct=b;return(ge.shadowroot||ge.shadowrootmode)&&(ct=V.call(n,ct,!0)),ct}let Mt=Qr?b.outerHTML:b.innerHTML;return Qr&&Fe["!doctype"]&&b.ownerDocument&&b.ownerDocument.doctype&&b.ownerDocument.doctype.name&&st(WE,b.ownerDocument.doctype.name)&&(Mt="<!DOCTYPE "+b.ownerDocument.doctype.name+`>
|
|
27
|
-
`+Mt),Jr&&Yi([F,q,G],zt=>{Mt=ni(Mt,zt," ")}),w&&Ae?w.createHTML(Mt):Mt},t.setConfig=function(){let O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};yl(O),vs=!0},t.clearConfig=function(){go=null,vs=!1},t.isValidAttribute=function(O,E,b){go||yl({});let k=He(O),ue=He(E);return Kd(k,ue,b)},t.addHook=function(O,E){typeof E=="function"&&Wi(Q[O],E)},t.removeHook=function(O,E){if(E!==void 0){let b=Pv(Q[O],E);return b===-1?void 0:Ov(Q[O],b,1)[0]}return LE(Q[O])},t.removeHooks=function(O){Q[O]=[]},t.removeAllHooks=function(){Q=JE()},t}var VE,NE,Lv,Fv,Rv,xt,nr,oi,$u,Ku,Yi,Pv,LE,Wi,Ov,It,Ki,Ju,FE,ni,RE,Gv,Hv,Uv,PE,OE,ve,zi,st,fc,GE,Vu,Yu,Yv,Wu,Wv,HE,UE,zu,qE,dc,zv,$v,Kv,Xv,Zv,YE,eT,tT,WE,rT,jE,$i,nT,oT,JE,$E,KE=g(()=>{({entries:VE,setPrototypeOf:NE,isFrozen:Lv,getPrototypeOf:Fv,getOwnPropertyDescriptor:Rv}=Object),{freeze:xt,seal:nr,create:oi}=Object,{apply:$u,construct:Ku}=typeof Reflect<"u"&&Reflect;xt||(xt=function(t){return t});nr||(nr=function(t){return t});$u||($u=function(t,r){for(var n=arguments.length,o=new Array(n>2?n-2:0),i=2;i<n;i++)o[i-2]=arguments[i];return t.apply(r,o)});Ku||(Ku=function(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];return new t(...n)});Yi=Ge(Array.prototype.forEach),Pv=Ge(Array.prototype.lastIndexOf),LE=Ge(Array.prototype.pop),Wi=Ge(Array.prototype.push),Ov=Ge(Array.prototype.splice),It=Array.isArray,Ki=Ge(String.prototype.toLowerCase),Ju=Ge(String.prototype.toString),FE=Ge(String.prototype.match),ni=Ge(String.prototype.replace),RE=Ge(String.prototype.indexOf),Gv=Ge(String.prototype.trim),Hv=Ge(Number.prototype.toString),Uv=Ge(Boolean.prototype.toString),PE=typeof BigInt>"u"?null:Ge(BigInt.prototype.toString),OE=typeof Symbol>"u"?null:Ge(Symbol.prototype.toString),ve=Ge(Object.prototype.hasOwnProperty),zi=Ge(Object.prototype.toString),st=Ge(RegExp.prototype.test),fc=qv(TypeError);GE=xt(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Vu=xt(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Yu=xt(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),Yv=xt(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),Wu=xt(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),Wv=xt(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),HE=xt(["#text"]),UE=xt(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),zu=xt(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),qE=xt(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),dc=xt(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),zv=nr(/\{\{[\w\W]*|[\w\W]*\}\}/gm),$v=nr(/<%[\w\W]*|[\w\W]*%>/gm),Kv=nr(/\$\{[\w\W]*/gm),Xv=nr(/^data-[\-\w.\u00B7-\uFFFF]+$/),Zv=nr(/^aria-[\-\w]+$/),YE=nr(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),eT=nr(/^(?:\w+script|data):/i),tT=nr(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),WE=nr(/^html$/i),rT=nr(/^[a-z][.\w]*(-[.\w]+)+$/i),jE=Object.freeze({__proto__:null,ARIA_ATTR:Zv,ATTR_WHITESPACE:tT,CUSTOM_ELEMENT:rT,DATA_ATTR:Xv,DOCTYPE_NAME:WE,ERB_EXPR:$v,IS_ALLOWED_URI:YE,IS_SCRIPT_OR_DATA:eT,MUSTACHE_EXPR:zv,TMPLIT_EXPR:Kv}),$i={element:1,text:3,progressingInstruction:7,comment:8,document:9},nT=function(){return typeof window>"u"?null:window},oT=function(t,r){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let n=null,o="data-tt-policy-suffix";r&&r.hasAttribute(o)&&(n=r.getAttribute(o));let i="dompurify"+(n?"#"+n:"");try{return t.createPolicy(i,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+i+" could not be created."),null}},JE=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};$E=zE()});var eI={};ze(eI,{default:()=>ZE});function ZE({value:e,className:t}){let r=(0,mc.useRef)(null);return(0,mc.useLayoutEffect)(()=>{let n=r.current;if(n)for(let o of n.querySelectorAll("a"))o.setAttribute("rel","noopener noreferrer"),o.setAttribute("target","_blank")},[e]),(0,XE.jsx)("span",{ref:r,className:t,dangerouslySetInnerHTML:{__html:$E.sanitize(e)}})}var XE,mc,tI=g(()=>{XE=f(L(),1),mc=f(B(),1);KE()});function cT(e){return aT.test(e)}function lT(e){return e.includes("<")||e.includes("://")}function AT({value:e,className:t}){let r=(0,Cn.useRef)(null);return(0,Cn.useLayoutEffect)(()=>{let n=r.current;if(n)try{n.setHTML(e);for(let o of n.querySelectorAll("a"))o.setAttribute("rel","noopener noreferrer"),o.setAttribute("target","_blank")}catch(o){console.error(o)}},[e]),(0,Yn.jsx)("span",{ref:r,className:t})}function En({html:e,className:t}){let r=`${e}`;if(!lT(r))return(0,Yn.jsx)("span",{className:t,children:r});let n=Bh(r),o=cT(n)?n:(0,rI.default)(n);return typeof Element<"u"&&Element.prototype.setHTML?(0,Yn.jsx)(AT,{value:o,className:t}):(0,Yn.jsx)(Cn.Suspense,{fallback:(0,Yn.jsx)("span",{className:t}),children:(0,Yn.jsx)(sT,{value:o,className:t})})}var Yn,Cn,rI,iT,sT,aT,Xu=g(()=>{Yn=f(L(),1),Cn=f(B(),1),rI=f(kE(),1);pn();iT=["a","b","br","code","div","em","h1","h2","h3","h4","h5","h6","i","img","li","p","pre","span","small","strong","table","tbody","sup","sub","td","tfoot","th","thead","tr","u","ul"],sT=(0,Cn.lazy)(()=>Promise.resolve().then(()=>(tI(),eI))),aT=new RegExp(iT.map(e=>String.raw`<${e}\b[^>]*>`).join("|"),"i")});function uT({error:e}){let{classes:t}=iI();return(0,Gt.jsx)("div",{className:t.errorBox,children:(0,Gt.jsx)(TE,{error:e})})}var Gt,nI,ut,oI,iI,fT,sI,aI=g(()=>{Gt=f(L(),1),nI=f(B(),1);ru();ut=f(N(),1),oI=f(P(),1);XA();_E();Xu();Et();iI=te()(e=>({closeButton:{position:"absolute",right:e.spacing(1),top:e.spacing(1),color:e.palette.grey[500]},errorBox:{width:800,margin:40}}));fT=(0,oI.observer)(function(t){let{classes:r}=iI(),{titleNode:n,...o}=t,{title:i,header:s,children:a,onClose:c}=o,l=(0,ut.useTheme)();return(0,Gt.jsx)(ut.Dialog,{...o,children:(0,Gt.jsxs)(ut.ScopedCssBaseline,{children:[(0,nI.isValidElement)(s)?s:(0,Gt.jsxs)(ut.DialogTitle,{children:[n||(0,Gt.jsx)(En,{html:i||""}),c?(0,Gt.jsx)(ut.IconButton,{className:r.closeButton,onClick:A=>{c(A,"backdropClick")},children:(0,Gt.jsx)(Da,{})}):null]}),(0,Gt.jsx)(ut.Divider,{}),(0,Gt.jsx)(No,{FallbackComponent:uT,children:(0,Gt.jsx)(ut.ThemeProvider,{theme:(0,ut.createTheme)(l,{components:{MuiInputBase:{styleOverrides:{input:{boxSizing:"content-box!important"}}}}}),children:a})})]})})}),sI=fT});function Zu({onClose:e,helpText:t,label:r}){return(0,Wn.jsx)(sI,{open:!0,onClose:e,title:"Help",titleNode:r?(0,Wn.jsxs)(Wn.Fragment,{children:["Help: ",r]}):void 0,onClick:n=>{n.stopPropagation()},onMouseDown:n=>{n.stopPropagation()},children:(0,Wn.jsx)(cI.DialogContent,{children:t})})}var Wn,cI,lI=g(()=>{Wn=f(L(),1),cI=f(N(),1);aI()});function ef({helpText:e,label:t}){let[r,n]=(0,gc.useState)(!1);return(0,tn.jsxs)(tn.Fragment,{children:[(0,tn.jsx)(AI.IconButton,{size:"small",onClick:o=>{o.stopPropagation(),n(!0)},style:{marginLeft:4,padding:4},children:(0,tn.jsx)(m0,{fontSize:"small"})}),r?(0,tn.jsxs)(gc.Suspense,{fallback:null,children:[(0,tn.jsx)(Zu,{helpText:e,label:t,onClose:o=>{o.stopPropagation(),n(!1)}})," "]}):null]})}var tn,gc,AI,uI=g(()=>{tn=f(L(),1),gc=f(B(),1);g0();AI=f(N(),1);lI()});var fI,dI,mI,dT,gI,pI=g(()=>{fI=f(L(),1),dI=f(B(),1),mI=f(N(),1),dT=dI.forwardRef(function(t,r){return(0,fI.jsx)(mI.Menu,{...t,ref:r,style:{pointerEvents:"none",...t.style},slotProps:{...t.slotProps,paper:{style:{pointerEvents:"auto"}}}})}),gI=dT});var hI,CI,EI=g(()=>{"use client";W();hI=f(L(),1),CI=(0,_.createSvgIcon)((0,hI.jsx)("path",{d:"m10 17 5-5-5-5z"}),"ArrowRight")});var II,xI,yI=g(()=>{"use client";W();II=f(L(),1),xI=(0,_.createSvgIcon)((0,II.jsx)("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2m-9 14-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z"}),"CheckBox")});var wI,bI,BI=g(()=>{"use client";W();wI=f(L(),1),bI=(0,_.createSvgIcon)((0,wI.jsx)("path",{d:"M19 5v14H5V5zm0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2"}),"CheckBoxOutlineBlank")});var SI,QI,MI=g(()=>{"use client";W();SI=f(L(),1),QI=(0,_.createSvgIcon)((0,SI.jsx)("path",{d:"M12 7c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5m0-5C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"}),"RadioButtonChecked")});var vI,TI,_I=g(()=>{"use client";W();vI=f(L(),1),TI=(0,_.createSvgIcon)((0,vI.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"}),"RadioButtonUnchecked")});function DI(e){let{classes:t}=mT(),{type:r}=e,n,o;"checked"in e&&({checked:n,disabled:o}=e);let i;switch(r){case"subMenu":{i=(0,In.jsx)(CI,{color:"action"});break}case"checkbox":{n?i=(0,In.jsx)(xI,{color:o?"inherit":void 0}):i=(0,In.jsx)(bI,{color:"action"});break}case"radio":{n?i=(0,In.jsx)(QI,{color:o?"inherit":void 0}):i=(0,In.jsx)(TI,{color:"action"});break}}return(0,In.jsx)("div",{className:t.menuItemEndDecoration,children:i})}var In,pc,mT,kI=g(()=>{In=f(L(),1);EI();yI();BI();MI();_I();pc=f(N(),1);Et();mT=te()({menuItemEndDecoration:{padding:0,margin:0,height:16}})});function NI(e){if(typeof e=="string")return e.toLowerCase().replace(/\s+/g,"_")}function gT({title:e,Icon:t,inset:r,menuItems:n,onMenuItemClick:o,closeAfterItemClick:i,onCloseRoot:s,isOpen:a,onOpen:c,onClose:l}){let[A,u]=(0,tf.useState)(null),d=NI(e);return(0,se.jsxs)(se.Fragment,{children:[(0,se.jsxs)(yt.MenuItem,{ref:u,"data-testid":d?`cascading-submenu-${d}`:void 0,onMouseOver:c,onFocus:c,onClick:c,children:[t?(0,se.jsx)(yt.ListItemIcon,{children:(0,se.jsx)(t,{})}):null,(0,se.jsx)(yt.ListItemText,{primary:e,inset:r}),(0,se.jsx)(u0,{})]}),(0,se.jsx)(gI,{open:a,anchorEl:A,onClose:l,anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"left"},children:(0,se.jsx)(LI,{closeAfterItemClick:i,onMenuItemClick:o,menuItems:n,onCloseRoot:s})})]})}function LI({onMenuItemClick:e,closeAfterItemClick:t,menuItems:r,onCloseRoot:n}){let[o,i]=(0,tf.useState)(),s=()=>{i(void 0)},a=r.some(A=>"icon"in A&&A.icon),c=r.some(A=>(A.type==="checkbox"||A.type==="radio")&&"helpText"in A&&A.helpText),l=r.toSorted((A,u)=>(u.priority||0)-(A.priority||0));return(0,se.jsx)(se.Fragment,{children:l.map((A,u)=>{if("subMenu"in A)return(0,se.jsx)(gT,{title:A.label,Icon:A.icon,inset:a&&!A.icon,onMenuItemClick:e,menuItems:A.subMenu,closeAfterItemClick:t,onCloseRoot:n,isOpen:o===u,onOpen:()=>{i(u)},onClose:s},`subMenu-${A.label}-${u}`);if(A.type==="divider")return(0,se.jsx)(yt.Divider,{component:"li"},`divider-${u}`);if(A.type==="subHeader")return(0,se.jsx)(yt.ListSubheader,{children:A.label},`subHeader-${A.label}-${u}`);let d=A,m=d.helpText,p=d.type==="checkbox"||d.type==="radio",C=NI(d.label);return(0,se.jsxs)(yt.MenuItem,{"data-testid":C?`cascading-menuitem-${C}`:void 0,disabled:!!d.disabled,onClick:x=>{t&&n(),e(x,d.onClick)},onMouseOver:s,children:[d.icon?(0,se.jsx)(yt.ListItemIcon,{children:(0,se.jsx)(d.icon,{})}):null,(0,se.jsx)(yt.ListItemText,{primary:d.label,secondary:d.subLabel,inset:a&&!d.icon}),(0,se.jsx)("div",{style:{flexGrow:1,minWidth:10}}),p?(0,se.jsx)(DI,{type:d.type,checked:d.checked,disabled:d.disabled}):null,m?(0,se.jsx)(ef,{helpText:m,label:d.label}):p&&c?(0,se.jsx)("div",{style:{marginLeft:4,padding:4,width:28,height:28}}):null]},`${d.label}-${u}`)})})}function rf({onMenuItemClick:e,closeAfterItemClick:t=!0,menuItems:r,open:n,onClose:o,anchorEl:i,anchorOrigin:s,transformOrigin:a,anchorReference:c,anchorPosition:l,slotProps:A,marginThreshold:u,style:d}){let m=Array.isArray(r)?r:r();return(0,se.jsx)(yt.Menu,{anchorEl:i,open:n,onClose:o,anchorOrigin:s,transformOrigin:a,anchorReference:c,anchorPosition:l,slotProps:A,marginThreshold:u??void 0,style:d,children:(0,se.jsx)(LI,{menuItems:m,closeAfterItemClick:t,onMenuItemClick:e,onCloseRoot:o})})}var se,tf,yt,FI=g(()=>{se=f(L(),1),tf=f(B(),1);f0();yt=f(N(),1);uI();pI();kI()});function pT({children:e,menuItems:t,closeAfterItemClick:r=!0,stopPropagation:n,disabled:o,setOpen:i,ButtonComponent:s=RI.IconButton,onClick:a,anchorOrigin:c,transformOrigin:l,marginThreshold:A,...u}){let[d,m]=(0,hc.useState)(null),p=!!d;(0,hc.useEffect)(()=>{i?.(p)},[p,i]);let C=o??(Array.isArray(t)&&t.length===0);return(0,zn.jsxs)(zn.Fragment,{children:[(0,zn.jsx)(s,{onClick:x=>{n&&x.stopPropagation(),m(x.currentTarget),a?.(x)},...u,disabled:C,children:e}),p?(0,zn.jsx)(rf,{open:p,onClose:()=>{m(null)},anchorEl:d,anchorOrigin:c,transformOrigin:l,marginThreshold:A,menuItems:t,closeAfterItemClick:r,onMenuItemClick:(x,I)=>{I()}}):null]})}var zn,hc,RI,Lr,si=g(()=>{zn=f(L(),1),hc=f(B(),1),RI=f(N(),1);FI();Lr=pT});var PI,OI,GI=g(()=>{"use client";W();PI=f(L(),1),OI=(0,_.createSvgIcon)((0,PI.jsx)("path",{d:"M12 2C6.49 2 2 6.49 2 12s4.49 10 10 10c1.38 0 2.5-1.12 2.5-2.5 0-.61-.23-1.2-.64-1.67-.08-.1-.13-.21-.13-.33 0-.28.22-.5.5-.5H16c3.31 0 6-2.69 6-6 0-4.96-4.49-9-10-9m5.5 11c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5m-3-4c-.83 0-1.5-.67-1.5-1.5S13.67 6 14.5 6s1.5.67 1.5 1.5S15.33 9 14.5 9M5 11.5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5S7.33 13 6.5 13 5 12.33 5 11.5m6-4c0 .83-.67 1.5-1.5 1.5S8 8.33 8 7.5 8.67 6 9.5 6s1.5.67 1.5 1.5"}),"Palette")});var hT,ai,HI=g(()=>{hT={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"},ai=hT});var CT,Xi,UI=g(()=>{CT={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"},Xi=CT});var ET,Zi,qI=g(()=>{ET={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"},Zi=ET});var IT,es,jI=g(()=>{IT={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"},es=IT});var xT,xn,JI=g(()=>{xT={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"},xn=xT});var nf=g(()=>{HI();UI();qI();jI();JI()});var yT,rn,et,or,ZI,VI,of,wT,Cc,ex,tx,YI,WI,zI,ts,bT,BT,ST,QT,cf,$I,MT,sf,af,KI,lf,wt,XI,Ec,Ic=g(()=>{yT={grad:.9,turn:360,rad:360/(2*Math.PI)},rn=function(e){return typeof e=="string"?e.length>0:typeof e=="number"},et=function(e,t,r){return t===void 0&&(t=0),r===void 0&&(r=Math.pow(10,t)),Math.round(r*e)/r+0},or=function(e,t,r){return t===void 0&&(t=0),r===void 0&&(r=1),e>r?r:e>t?e:t},ZI=function(e){return(e=isFinite(e)?e%360:0)>0?e:e+360},VI=function(e){return{r:or(e.r,0,255),g:or(e.g,0,255),b:or(e.b,0,255),a:or(e.a)}},of=function(e){return{r:et(e.r),g:et(e.g),b:et(e.b),a:et(e.a,3)}},wT=/^#([0-9a-f]{3,8})$/i,Cc=function(e){var t=e.toString(16);return t.length<2?"0"+t:t},ex=function(e){var t=e.r,r=e.g,n=e.b,o=e.a,i=Math.max(t,r,n),s=i-Math.min(t,r,n),a=s?i===t?(r-n)/s:i===r?2+(n-t)/s:4+(t-r)/s:0;return{h:60*(a<0?a+6:a),s:i?s/i*100:0,v:i/255*100,a:o}},tx=function(e){var t=e.h,r=e.s,n=e.v,o=e.a;t=t/360*6,r/=100,n/=100;var i=Math.floor(t),s=n*(1-r),a=n*(1-(t-i)*r),c=n*(1-(1-t+i)*r),l=i%6;return{r:255*[n,a,s,s,c,n][l],g:255*[c,n,n,a,s,s][l],b:255*[s,s,c,n,n,a][l],a:o}},YI=function(e){return{h:ZI(e.h),s:or(e.s,0,100),l:or(e.l,0,100),a:or(e.a)}},WI=function(e){return{h:et(e.h),s:et(e.s),l:et(e.l),a:et(e.a,3)}},zI=function(e){return tx((r=(t=e).s,{h:t.h,s:(r*=((n=t.l)<50?n:100-n)/100)>0?2*r/(n+r)*100:0,v:n+r,a:t.a}));var t,r,n},ts=function(e){return{h:(t=ex(e)).h,s:(o=(200-(r=t.s))*(n=t.v)/100)>0&&o<200?r*n/100/(o<=100?o:200-o)*100:0,l:o/2,a:t.a};var t,r,n,o},bT=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*,\s*([+-]?\d*\.?\d+)%\s*,\s*([+-]?\d*\.?\d+)%\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,BT=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,ST=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,QT=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,cf={string:[[function(e){var t=wT.exec(e);return t?(e=t[1]).length<=4?{r:parseInt(e[0]+e[0],16),g:parseInt(e[1]+e[1],16),b:parseInt(e[2]+e[2],16),a:e.length===4?et(parseInt(e[3]+e[3],16)/255,2):1}:e.length===6||e.length===8?{r:parseInt(e.substr(0,2),16),g:parseInt(e.substr(2,2),16),b:parseInt(e.substr(4,2),16),a:e.length===8?et(parseInt(e.substr(6,2),16)/255,2):1}:null:null},"hex"],[function(e){var t=ST.exec(e)||QT.exec(e);return t?t[2]!==t[4]||t[4]!==t[6]?null:VI({r:Number(t[1])/(t[2]?100/255:1),g:Number(t[3])/(t[4]?100/255:1),b:Number(t[5])/(t[6]?100/255:1),a:t[7]===void 0?1:Number(t[7])/(t[8]?100:1)}):null},"rgb"],[function(e){var t=bT.exec(e)||BT.exec(e);if(!t)return null;var r,n,o=YI({h:(r=t[1],n=t[2],n===void 0&&(n="deg"),Number(r)*(yT[n]||1)),s:Number(t[3]),l:Number(t[4]),a:t[5]===void 0?1:Number(t[5])/(t[6]?100:1)});return zI(o)},"hsl"]],object:[[function(e){var t=e.r,r=e.g,n=e.b,o=e.a,i=o===void 0?1:o;return rn(t)&&rn(r)&&rn(n)?VI({r:Number(t),g:Number(r),b:Number(n),a:Number(i)}):null},"rgb"],[function(e){var t=e.h,r=e.s,n=e.l,o=e.a,i=o===void 0?1:o;if(!rn(t)||!rn(r)||!rn(n))return null;var s=YI({h:Number(t),s:Number(r),l:Number(n),a:Number(i)});return zI(s)},"hsl"],[function(e){var t=e.h,r=e.s,n=e.v,o=e.a,i=o===void 0?1:o;if(!rn(t)||!rn(r)||!rn(n))return null;var s=(function(a){return{h:ZI(a.h),s:or(a.s,0,100),v:or(a.v,0,100),a:or(a.a)}})({h:Number(t),s:Number(r),v:Number(n),a:Number(i)});return tx(s)},"hsv"]]},$I=function(e,t){for(var r=0;r<t.length;r++){var n=t[r][0](e);if(n)return[n,t[r][1]]}return[null,void 0]},MT=function(e){return typeof e=="string"?$I(e.trim(),cf.string):typeof e=="object"&&e!==null?$I(e,cf.object):[null,void 0]},sf=function(e,t){var r=ts(e);return{h:r.h,s:or(r.s+100*t,0,100),l:r.l,a:r.a}},af=function(e){return(299*e.r+587*e.g+114*e.b)/1e3/255},KI=function(e,t){var r=ts(e);return{h:r.h,s:r.s,l:or(r.l+100*t,0,100),a:r.a}},lf=(function(){function e(t){this.parsed=MT(t)[0],this.rgba=this.parsed||{r:0,g:0,b:0,a:1}}return e.prototype.isValid=function(){return this.parsed!==null},e.prototype.brightness=function(){return et(af(this.rgba),2)},e.prototype.isDark=function(){return af(this.rgba)<.5},e.prototype.isLight=function(){return af(this.rgba)>=.5},e.prototype.toHex=function(){return t=of(this.rgba),r=t.r,n=t.g,o=t.b,s=(i=t.a)<1?Cc(et(255*i)):"","#"+Cc(r)+Cc(n)+Cc(o)+s;var t,r,n,o,i,s},e.prototype.toRgb=function(){return of(this.rgba)},e.prototype.toRgbString=function(){return t=of(this.rgba),r=t.r,n=t.g,o=t.b,(i=t.a)<1?"rgba("+r+", "+n+", "+o+", "+i+")":"rgb("+r+", "+n+", "+o+")";var t,r,n,o,i},e.prototype.toHsl=function(){return WI(ts(this.rgba))},e.prototype.toHslString=function(){return t=WI(ts(this.rgba)),r=t.h,n=t.s,o=t.l,(i=t.a)<1?"hsla("+r+", "+n+"%, "+o+"%, "+i+")":"hsl("+r+", "+n+"%, "+o+"%)";var t,r,n,o,i},e.prototype.toHsv=function(){return t=ex(this.rgba),{h:et(t.h),s:et(t.s),v:et(t.v),a:et(t.a,3)};var t},e.prototype.invert=function(){return wt({r:255-(t=this.rgba).r,g:255-t.g,b:255-t.b,a:t.a});var t},e.prototype.saturate=function(t){return t===void 0&&(t=.1),wt(sf(this.rgba,t))},e.prototype.desaturate=function(t){return t===void 0&&(t=.1),wt(sf(this.rgba,-t))},e.prototype.grayscale=function(){return wt(sf(this.rgba,-1))},e.prototype.lighten=function(t){return t===void 0&&(t=.1),wt(KI(this.rgba,t))},e.prototype.darken=function(t){return t===void 0&&(t=.1),wt(KI(this.rgba,-t))},e.prototype.rotate=function(t){return t===void 0&&(t=15),this.hue(this.hue()+t)},e.prototype.alpha=function(t){return typeof t=="number"?wt({r:(r=this.rgba).r,g:r.g,b:r.b,a:t}):et(this.rgba.a,3);var r},e.prototype.hue=function(t){var r=ts(this.rgba);return typeof t=="number"?wt({h:t,s:r.s,l:r.l,a:r.a}):et(r.h)},e.prototype.isEqual=function(t){return this.toHex()===wt(t).toHex()},e})(),wt=function(e){return e instanceof lf?e:new lf(e)},XI=[],Ec=function(e){e.forEach(function(t){XI.indexOf(t)<0&&(t(lf,cf),XI.push(t))})}});function xc(e,t){var r={white:"#ffffff",bisque:"#ffe4c4",blue:"#0000ff",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",antiquewhite:"#faebd7",aqua:"#00ffff",azure:"#f0ffff",whitesmoke:"#f5f5f5",papayawhip:"#ffefd5",plum:"#dda0dd",blanchedalmond:"#ffebcd",black:"#000000",gold:"#ffd700",goldenrod:"#daa520",gainsboro:"#dcdcdc",cornsilk:"#fff8dc",cornflowerblue:"#6495ed",burlywood:"#deb887",aquamarine:"#7fffd4",beige:"#f5f5dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkkhaki:"#bdb76b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",peachpuff:"#ffdab9",darkmagenta:"#8b008b",darkred:"#8b0000",darkorchid:"#9932cc",darkorange:"#ff8c00",darkslateblue:"#483d8b",gray:"#808080",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",deeppink:"#ff1493",deepskyblue:"#00bfff",wheat:"#f5deb3",firebrick:"#b22222",floralwhite:"#fffaf0",ghostwhite:"#f8f8ff",darkviolet:"#9400d3",magenta:"#ff00ff",green:"#008000",dodgerblue:"#1e90ff",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",blueviolet:"#8a2be2",forestgreen:"#228b22",lawngreen:"#7cfc00",indianred:"#cd5c5c",indigo:"#4b0082",fuchsia:"#ff00ff",brown:"#a52a2a",maroon:"#800000",mediumblue:"#0000cd",lightcoral:"#f08080",darkturquoise:"#00ced1",lightcyan:"#e0ffff",ivory:"#fffff0",lightyellow:"#ffffe0",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",linen:"#faf0e6",mediumaquamarine:"#66cdaa",lemonchiffon:"#fffacd",lime:"#00ff00",khaki:"#f0e68c",mediumseagreen:"#3cb371",limegreen:"#32cd32",mediumspringgreen:"#00fa9a",lightskyblue:"#87cefa",lightblue:"#add8e6",midnightblue:"#191970",lightpink:"#ffb6c1",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",mintcream:"#f5fffa",lightslategray:"#778899",lightslategrey:"#778899",navajowhite:"#ffdead",navy:"#000080",mediumvioletred:"#c71585",powderblue:"#b0e0e6",palegoldenrod:"#eee8aa",oldlace:"#fdf5e6",paleturquoise:"#afeeee",mediumturquoise:"#48d1cc",mediumorchid:"#ba55d3",rebeccapurple:"#663399",lightsteelblue:"#b0c4de",mediumslateblue:"#7b68ee",thistle:"#d8bfd8",tan:"#d2b48c",orchid:"#da70d6",mediumpurple:"#9370db",purple:"#800080",pink:"#ffc0cb",skyblue:"#87ceeb",springgreen:"#00ff7f",palegreen:"#98fb98",red:"#ff0000",yellow:"#ffff00",slateblue:"#6a5acd",lavenderblush:"#fff0f5",peru:"#cd853f",palevioletred:"#db7093",violet:"#ee82ee",teal:"#008080",slategray:"#708090",slategrey:"#708090",aliceblue:"#f0f8ff",darkseagreen:"#8fbc8f",darkolivegreen:"#556b2f",greenyellow:"#adff2f",seagreen:"#2e8b57",seashell:"#fff5ee",tomato:"#ff6347",silver:"#c0c0c0",sienna:"#a0522d",lavender:"#e6e6fa",lightgreen:"#90ee90",orange:"#ffa500",orangered:"#ff4500",steelblue:"#4682b4",royalblue:"#4169e1",turquoise:"#40e0d0",yellowgreen:"#9acd32",salmon:"#fa8072",saddlebrown:"#8b4513",sandybrown:"#f4a460",rosybrown:"#bc8f8f",darksalmon:"#e9967a",lightgoldenrodyellow:"#fafad2",snow:"#fffafa",lightgrey:"#d3d3d3",lightgray:"#d3d3d3",dimgray:"#696969",dimgrey:"#696969",olivedrab:"#6b8e23",olive:"#808000"},n={};for(var o in r)n[r[o]]=o;var i={};e.prototype.toName=function(s){if(!(this.rgba.a||this.rgba.r||this.rgba.g||this.rgba.b))return"transparent";var a,c,l=n[this.toHex()];if(l)return l;if(s?.closest){var A=this.toRgb(),u=1/0,d="black";if(!i.length)for(var m in r)i[m]=new e(r[m]).toRgb();for(var p in r){var C=(a=A,c=i[p],Math.pow(a.r-c.r,2)+Math.pow(a.g-c.g,2)+Math.pow(a.b-c.b,2));C<u&&(u=C,d=p)}return d}},t.string.push([function(s){var a=s.toLowerCase(),c=a==="transparent"?"#0000":r[a];return c?new e(c).toRgb():null},"name"])}var Af=g(()=>{});function yc(e,t){return Object.fromEntries(Object.entries(e).map(t))}function $n(e,t){return yc(e,([r,n])=>[r,t.palette.getContrastText(wt(n).toHex())])}function uf(e,t){if(e.length===0)return t;let r=[],n=0;for(let o of e)o>n&&r.push(t.slice(n,o)),n=o+1;return n<t.length&&r.push(t.slice(n)),r.join("")}function ff(e){return e.end-e.start}function rs(e){return e==="-"||e==="."}var yn=g(()=>{Ic();Af();Ec([xc])});var vT,ci,wc=g(()=>{nf();Ic();Af();yn();Ec([xc]);vT={none:{},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:{},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:{A:Zi[500],C:Xi[500],G:es[500],T:ai[500],U:ai[500]},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"}},ci=yc(vT,([e,t])=>[e,yc(t,([r,n])=>[r,wt(n).toHex()])])});var df,rx,TT,nx,ox=g(()=>{df=f(B(),1);si();GI();rx=f(P(),1);wc();TT=(0,rx.observer)(function({model:e}){let{colorSchemeName:t}=e;return df.default.createElement(Lr,{closeAfterItemClick:!0,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:Object.keys(ci).map(r=>({label:r,type:"radio",checked:t===r,onClick:()=>{e.setColorSchemeName(r)}}))},df.default.createElement(OI,null))}),nx=TT});var ix,sx,ax=g(()=>{"use client";W();ix=f(L(),1),sx=(0,_.createSvgIcon)((0,ix.jsx)("path",{d:"M19 3h-4.18C14.4 1.84 13.3 1 12 1s-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2m-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1m2 14H7v-2h7zm3-4H7v-2h10zm0-4H7V7h10z"}),"Assignment")});var cx,ns,mf=g(()=>{"use client";W();cx=f(L(),1),ns=(0,_.createSvgIcon)((0,cx.jsx)("path",{d:"M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2m0 12H4V8h16z"}),"FolderOpen")});var gf,lx,Ax=g(()=>{"use client";W();gf=f(L(),1),lx=(0,_.createSvgIcon)([(0,gf.jsx)("circle",{cx:"12",cy:"12",r:"3.2"},"0"),(0,gf.jsx)("path",{d:"M9 2 7.17 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2h-3.17L15 2zm3 15c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5"},"1")],"PhotoCamera")});var ux,fx,dx=g(()=>{"use client";W();ux=f(L(),1),fx=(0,_.createSvgIcon)((0,ux.jsx)("path",{d:"M4.25 5.61C6.27 8.2 10 13 10 13v6c0 .55.45 1 1 1h2c.55 0 1-.45 1-1v-6s3.72-4.8 5.74-7.39c.51-.66.04-1.61-.79-1.61H5.04c-.83 0-1.3.95-.79 1.61"}),"FilterAlt")});var mx,gx,px=g(()=>{"use client";W();mx=f(L(),1),gx=(0,_.createSvgIcon)((0,mx.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"}),"Search")});var hx,Cx,Ex=g(()=>{"use client";W();hx=f(L(),1),Cx=(0,_.createSvgIcon)((0,hx.jsx)("path",{d:"M3 18h6v-2H3zM3 6v2h18V6zm0 7h12v-2H3z"}),"Sort")});var Ix,xx,yx=g(()=>{"use client";W();Ix=f(L(),1),xx=(0,_.createSvgIcon)((0,Ix.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")});function wx(e){return pf[Math.min(e,pf.length-1)]}var pf,hf,Cf=g(()=>{pf=[["#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"]];hf=pf});var Bx={};ze(Bx,{default:()=>NT});var de,bx,os,bc,_T,DT,kT,NT,Sx=g(()=>{de=f(B(),1),bx=f(fe(),1),os=f(N(),1),bc=f(P(),1);Cf();_T=(0,bc.observer)(function({model:e}){let{featureFilters:t}=e;return de.default.createElement("div",null,de.default.createElement(os.Button,{onClick:()=>{for(let r of t.keys())e.setFilter(r,!0)}},"Toggle all on"),de.default.createElement(os.Button,{onClick:()=>{for(let r of t.keys())e.setFilter(r,!1)}},"Toggle all off"))}),DT=(0,bc.observer)(function({model:e}){let{tidyInterProAnnotationTypes:t,featureFilters:r}=e,n=[...t.values()],o=wx(n.length-1);return de.default.createElement(de.default.Fragment,null,de.default.createElement(_T,{model:e}),de.default.createElement("table",null,de.default.createElement("thead",null,de.default.createElement("tr",null,de.default.createElement("td",null),de.default.createElement("td",null,"accession"),de.default.createElement("td",null,"name"),de.default.createElement("td",null,"description"))),de.default.createElement("tbody",null,n.map(({accession:i,name:s,description:a},c)=>de.default.createElement("tr",{key:i},de.default.createElement("td",null,de.default.createElement("input",{type:"checkbox",checked:r.get(i)??!1,onChange:()=>{e.setFilter(i,!e.featureFilters.get(i))}})),de.default.createElement("td",null,i),de.default.createElement("td",null,s),de.default.createElement("td",null,a),de.default.createElement("td",null,de.default.createElement("div",{style:{width:20,height:20,background:o[c]||"black"}})))))))}),kT=(0,bc.observer)(function({onClose:e,model:t}){return de.default.createElement(bx.Dialog,{onClose:()=>{e()},open:!0,title:"Feature filters",maxWidth:"xl"},de.default.createElement(os.DialogContent,null,de.default.createElement(DT,{model:t})))}),NT=kT});async function Qx(e,t){let r=await fetch(e,t);if(!r.ok)throw new Error(`HTTP ${r.status} fetching ${e} ${await r.text()}`);return r}async function Ef(e,t){return(await Qx(e,t)).text()}async function Bc(e,t){return(await Qx(e,t)).json()}function Mx(e){return new Promise(t=>setTimeout(t,e))}var If=g(()=>{});var _x={};ze(_x,{default:()=>FT});var Ce,vx,xf,be,Tx,LT,FT,Dx=g(()=>{Ce=f(B(),1),vx=f(fe(),1),xf=f(ie(),1),be=f(N(),1),Tx=f(P(),1);If();LT=(0,Tx.observer)(function({handleClose:e,model:t}){let[r,n]=(0,Ce.useState)(),[o,i]=(0,Ce.useState)("file"),[s,a]=(0,Ce.useState)("");return Ce.default.createElement(vx.Dialog,{maxWidth:"xl",title:"Open protein domains from file",onClose:()=>{e()},open:!0},Ce.default.createElement(be.DialogContent,null,Ce.default.createElement("div",null,Ce.default.createElement(be.Typography,null,"Open a JSON file of InterProScan results that you run remotely on EBI servers or locally"),Ce.default.createElement("div",{style:{display:"flex",margin:30}},Ce.default.createElement(be.FormControl,{component:"fieldset"},Ce.default.createElement(be.RadioGroup,{value:o,onChange:c=>{i(c.target.value)}},Ce.default.createElement(be.FormControlLabel,{value:"url",control:Ce.default.createElement(be.Radio,null),label:"URL"}),Ce.default.createElement(be.FormControlLabel,{value:"file",control:Ce.default.createElement(be.Radio,null),label:"File"}))),o==="url"?Ce.default.createElement("div",null,Ce.default.createElement(be.Typography,null,"Open a InterProScan JSON file remote URL"),Ce.default.createElement(be.TextField,{label:"URL",value:s,onChange:c=>{a(c.target.value)}})):null,o==="file"?Ce.default.createElement("div",{style:{paddingTop:20}},Ce.default.createElement(be.Typography,null,"Open a InterProScan JSON file file from your local drive"),Ce.default.createElement(be.Button,{variant:"outlined",component:"label"},"Choose File",Ce.default.createElement("input",{type:"file",hidden:!0,onChange:({target:c})=>{let l=c.files?.[0];l&&n(l)}}))):null))),Ce.default.createElement(be.DialogActions,null,Ce.default.createElement(be.Button,{variant:"contained",color:"primary",onClick:()=>{(async()=>{try{let c=r?JSON.parse(await r.text()):await Bc(s);t.setInterProAnnotations(Object.fromEntries(c.results.map(l=>[l.xref[0].id,l]))),t.setShowDomains(!0),(0,xf.getSession)(t).notify("Loaded interproscan results","success")}catch(c){console.error(c),(0,xf.getSession)(t).notifyError(`${c}`,c)}finally{t.setStatus()}})(),e()}},"Open results")))}),FT=LT});async function RT({seq:e,onProgress:t,onJobId:r,programs:n,model:o}){let i=await Ef(`${wf}/iprscan5/run`,{method:"POST",body:new URLSearchParams({email:"colin.diesh@gmail.com",sequence:e,programs:n.join(",")})});r?.(i),await OT({jobId:i,onProgress:t}),await GT({jobId:i,model:o})}function PT(e){return Bc(`${wf}/iprscan5/result/${e}/json`)}async function OT({onProgress:e,jobId:t}){let r=`${wf}/iprscan5/status/${t}`;try{for(;;){for(let o=0;o<10;o++)await Mx(1e3),e({msg:`Checking status ${10-o}`,url:r});let n=await Ef(r);if(n.includes("FINISHED"))break;if(n.includes("FAILURE"))throw new Error(`Failed to run: jobId ${t}`)}}finally{e()}}async function kx({algorithm:e,seq:t,programs:r,onJobId:n,onProgress:o,model:i}){try{if(o({msg:`Launching ${e} MSA`}),e==="interproscan")await RT({seq:t,onJobId:n,onProgress:o,programs:r,model:i});else throw new Error("unknown algorithm")}finally{o()}}async function GT({jobId:e,model:t}){try{t.setStatus({msg:`Downloading results of ${e} (for larger sequences this can be slow, click status to download and upload in the manual tab)`,url:`https://www.ebi.ac.uk/Tools/services/rest/iprscan5/result/${e}/json`});let r=await PT(e);t.setInterProAnnotations(Object.fromEntries(r.results.map(n=>[n.xref[0].id,n]))),t.setShowDomains(!0),(0,yf.getSession)(t).notify(`Loaded interproscan ${e} results`,"success")}catch(r){console.error(r),(0,yf.getSession)(t).notifyError(`${r}`,r)}finally{t.setStatus()}}var yf,wf,Nx=g(()=>{yf=f(ie(),1);If();wf="https://www.ebi.ac.uk/Tools/services/rest"});var Px={};ze(Px,{default:()=>UT});var Be,Lx,Fx,Ht,Rx,HT,UT,Ox=g(()=>{Be=f(B(),1),Lx=f(fe(),1),Fx=f(ie(),1),Ht=f(N(),1),Rx=f(P(),1);Nx();HT=(0,Rx.observer)(function({handleClose:e,model:t}){let[r,n]=(0,Be.useState)([{name:"NCBIfam",description:"NCBI RefSeq FAMs including TIGRFAMs",category:"Families, domains, sites & repeats",checked:!0},{name:"SFLD",description:"Structure function linkage database",category:"Families, domains, sites & repeats",checked:!0},{name:"Phobius",checked:!0,description:"A combined transmembrane topology and signal peptide predictor",category:"Other sequence features"},{name:"SignalP",checked:!0,category:"Other sequence features"},{name:"SignalP_EUK",category:"Other category",checked:!0},{name:"SignalP_GRAM_POSITIVE",category:"Other category",checked:!0},{name:"SignalP_GRAM_NEGATIVE",checked:!0,category:"Other category"},{name:"SuperFamily",category:"Structural domains",checked:!0},{name:"Panther",category:"Families, domains, sites & repeats",checked:!0},{name:"Gene3d",category:"Structural domains",checked:!0},{name:"HAMAP",category:"Families, domains, sites & repeats",checked:!0},{name:"PrositeProfiles",category:"Families, domains, sites & repeats",checked:!0},{name:"PrositePatterns",category:"Families, domains, sites & repeats",checked:!0},{name:"Coils",category:"Other sequence features",checked:!0},{name:"SMART",category:"Families, domains, sites & repeats",checked:!0},{name:"CDD",description:"Conserved Domains Database",category:"Families, domains, sites & repeats",checked:!0},{name:"PRINTS",category:"Families, domains, sites & repeats",checked:!0},{name:"PfamA",category:"Families, domains, sites & repeats",checked:!0},{name:"MobiDBLite",checked:!0,category:"Other sequence features"},{name:"PIRSF",checked:!0,category:"Other category"},{name:"TMHMM",checked:!0,category:"Other sequence features"},{name:"AntiFam",checked:!0,category:"Other category"},{name:"FunFam",checked:!0,category:"Other category"},{name:"PIRSR",checked:!0,category:"Families, domains, sites & repeats"}]),o=r.filter(a=>a.checked).map(a=>a.name),[i,s]=(0,Be.useState)(!1);return Be.default.createElement(Lx.Dialog,{maxWidth:"xl",title:"Query InterProScan API for domains",onClose:()=>{e()},open:!0},Be.default.createElement(Ht.DialogContent,null,Be.default.createElement(Ht.Typography,null,"This will run InterProScan via the InterProScan API on all rows of the current MSA"),Be.default.createElement(Ht.Button,{onClick:()=>{s(!i)}},i?"Hide":"Show"," advanced options"),i?Be.default.createElement("div",null,Be.default.createElement(Ht.Typography,null,"Select algorithms for InterProScan to run"),Be.default.createElement("div",null,Be.default.createElement(Ht.Button,{variant:"contained",color:"secondary",onClick:()=>{n(r.map(a=>({...a,checked:!1})))}},"Select none"),Be.default.createElement(Ht.Button,{variant:"contained",color:"primary",onClick:()=>{n(r.map(a=>({...a,checked:!0})))}},"Select all")),Be.default.createElement("table",null,Be.default.createElement("tbody",null,r.toSorted((a,c)=>a.category.localeCompare(c.category)).map(({name:a,checked:c,category:l})=>Be.default.createElement("tr",{key:a},Be.default.createElement("td",null,Be.default.createElement("input",{type:"checkbox",key:a,checked:c,onChange:()=>{n(r.map(A=>A.name===a?{...A,checked:!A.checked}:A))}})),Be.default.createElement("td",null,a),Be.default.createElement("td",null,l)))))):null),Be.default.createElement(Ht.DialogActions,null,Be.default.createElement(Ht.Button,{variant:"contained",color:"secondary",onClick:()=>{e()}},"Cancel"),Be.default.createElement(Ht.Button,{variant:"contained",color:"primary",onClick:()=>{(async()=>{try{let{rows:a}=t;if(a.length>140)throw new Error("Too many sequences, please run InterProScan offline");await kx({algorithm:"interproscan",programs:o,seq:a.map(c=>[c[0],c[1].replaceAll("-","")]).filter(c=>!!c[1]).map(c=>`>${c[0]}
|
|
23
|
+
`} 1.2s infinite ease-in-out`}}})});var ME=G((UO,QE)=>{QE.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,r=[],n=0;n<e.rangeCount;n++)r.push(e.getRangeAt(n));switch(t.tagName.toUpperCase()){case"INPUT":case"TEXTAREA":t.blur();break;default:t=null;break}return e.removeAllRanges(),function(){e.type==="Caret"&&e.removeAllRanges(),e.rangeCount||r.forEach(function(o){e.addRange(o)}),t&&t.focus()}}});var _E=G((qO,TE)=>{"use strict";var Qv=ME(),vE={"text/plain":"Text","text/html":"Url",default:"Text"},Mv="Copy to clipboard: #{key}, Enter";function vv(e){var t=(/mac os x/i.test(navigator.userAgent)?"\u2318":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}function Tv(e,t){var r,n,o,i,s,a,c=!1;t||(t={}),r=t.debug||!1;try{o=Qv(),i=document.createRange(),s=document.getSelection(),a=document.createElement("span"),a.textContent=e,a.ariaHidden="true",a.style.all="unset",a.style.position="fixed",a.style.top=0,a.style.clip="rect(0, 0, 0, 0)",a.style.whiteSpace="pre",a.style.webkitUserSelect="text",a.style.MozUserSelect="text",a.style.msUserSelect="text",a.style.userSelect="text",a.addEventListener("copy",function(A){if(A.stopPropagation(),t.format)if(A.preventDefault(),typeof A.clipboardData>"u"){r&&console.warn("unable to use e.clipboardData"),r&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var u=vE[t.format]||vE.default;window.clipboardData.setData(u,e)}else A.clipboardData.clearData(),A.clipboardData.setData(t.format,e);t.onCopy&&(A.preventDefault(),t.onCopy(A.clipboardData))}),document.body.appendChild(a),i.selectNodeContents(a),s.addRange(i);var l=document.execCommand("copy");if(!l)throw new Error("copy command was unsuccessful");c=!0}catch(A){r&&console.error("unable to copy using execCommand: ",A),r&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),c=!0}catch(u){r&&console.error("unable to copy using clipboardData: ",u),r&&console.error("falling back to prompt"),n=vv("message"in t?t.message:Mv),window.prompt(n,e)}}finally{s&&(typeof s.removeRange=="function"?s.removeRange(i):s.removeAllRanges()),a&&document.body.removeChild(a),o()}return c}TE.exports=Tv});var FE={};Je(FE,{default:()=>LE});async function NE(e){let t=await fetch(e);if(!t.ok)throw new Error(`HTTP ${t.status} fetching ${e}: ${await t.text()}`);return t.text()}async function _v(e){return JSON.parse(await NE(e))}async function Nv(e){if($u[e])return $u[e];let t=new URL(e).search,r=await NE(e),n=Dv.exec(r)?.[1]??"",o=await _v(new URL(n,e).href+t),i=new kE.SourceMapConsumer(o);return $u[e]=i,i}async function Lv(e){let t=[];for(let r of e.split(`
|
|
24
|
+
`)){let n=kv.exec(r);if(!n){t.push(r);continue}let o=n[2],s=(await Nv(o)).originalPositionFor({line:+n[3],column:+n[4]});if(!s.source||!s.line||!s.column){t.push(r);continue}t.push(`${s.source}:${s.line}:${s.column+1} (${n[1].trim()})`)}return t.join(`
|
|
25
|
+
`)}function Fv(e,t){return e.startsWith("Error:")?e.slice(`${t}`.length):e}function Rv(e){return typeof e=="object"&&e!==null&&"stack"in e?`${e.stack}`:""}function LE({error:e,onClose:t,extra:r}){let[n,o]=(0,Zo.useState)(),[i,s]=(0,Zo.useState)(),[a,c]=(0,Zo.useState)(!1),l=e?`${e}`:"",A=Fv(Rv(e),l);(0,Zo.useEffect)(()=>{(async()=>{try{o(await Lv(A))}catch(d){console.error(d),o(A),s(d)}})()},[A]);let u=window.JBrowseSession?.version,m=[i?"Error loading source map, showing raw stack trace below:":"",l.length>DE?`${l.slice(0,DE)}...`:l,n||"No stack trace available",u?`JBrowse ${u}`:""].filter(Boolean).join(`
|
|
26
|
+
`);return(0,rr.jsxs)(Rt.Dialog,{open:!0,onClose:t,maxWidth:"xl",children:[(0,rr.jsxs)(Rt.DialogTitle,{children:["Stack trace",(0,rr.jsx)(Rt.IconButton,{onClick:t,sx:{position:"absolute",right:8,top:8},children:(0,rr.jsx)(La,{})})]}),(0,rr.jsx)(Rt.DialogContent,{children:n===void 0?(0,rr.jsx)(zu,{variant:"h6"}):(0,rr.jsx)(Wu,{text:m,extra:r})}),(0,rr.jsxs)(Rt.DialogActions,{children:[(0,rr.jsx)(Rt.Button,{variant:"contained",color:"secondary",onClick:async()=>{let{default:d}=await Promise.resolve().then(()=>f(_E(),1));d(m),c(!0),setTimeout(()=>{c(!1)},1e3)},children:a?"Copied!":"Copy stack trace to clipboard"}),(0,rr.jsx)(Rt.Button,{variant:"contained",color:"primary",onClick:t,children:"Close"})]})]})}var rr,Zo,Rt,kE,$u,Dv,kv,DE,RE=g(()=>{rr=f(L(),1),Zo=f(b(),1);cu();Rt=f(_(),1),kE=f(EE(),1);wE();SE();$u={},Dv=/\/\/# sourceMappingURL=(.*)/,kv=/(.*)((?:https?|file):\/\/.*):(\d+):(\d+)/;DE=1e4});function Ov(e){let t="",r="is not assignable",n=e.indexOf(r);if(n!==-1){let o=e.slice(0,n+r.length),i=/.*at path "(.*)" snapshot `(.*)` is not assignable/m.exec(o);i&&(e=`Failed to load element at ${i[1]}...Failed element had snapshot`,t=i[2]);let s=/.*snapshot `(.*)` is not assignable/.exec(o);s&&(e="Failed to load element...Failed element had snapshot",t=s[1])}return t}function Gv({error:e,onReset:t}){let{classes:r}=PE(),[n,o]=(0,ti.useState)(!1);return(0,Mt.jsxs)("div",{className:r.iconFloat,children:[typeof e=="object"&&e&&"stack"in e?(0,Mt.jsx)(ei.Tooltip,{title:"Get stack trace",children:(0,Mt.jsx)(ei.IconButton,{onClick:()=>{o(!0)},color:"primary",children:(0,Mt.jsx)(T0,{})})}):null,t?(0,Mt.jsx)(ei.Tooltip,{title:"Retry",children:(0,Mt.jsx)(ei.IconButton,{onClick:t,color:"primary",children:(0,Mt.jsx)(Q0,{})})}):null,n?(0,Mt.jsx)(ti.Suspense,{fallback:null,children:(0,Mt.jsx)(Pv,{error:e,onClose:()=>{o(!1)}})}):null]})}function Hv({error:e,onReset:t}){let{classes:r}=PE(),n=`${e}`,o=n.indexOf("expected an instance of"),i=o!==-1?n.slice(0,o):n,s=Ov(n);return(0,Mt.jsxs)(Lu,{children:[i.slice(0,1e4),(0,Mt.jsx)(Gv,{error:e,onReset:t}),s?(0,Mt.jsx)("pre",{className:r.bg,children:JSON.stringify(JSON.parse(s),null,2)}):null]})}var Mt,ti,ei,Pv,PE,OE,GE=g(()=>{Mt=f(L(),1),ti=f(b(),1);M0();_0();ei=f(_(),1);YC();ht();Pv=(0,ti.lazy)(()=>Promise.resolve().then(()=>(RE(),FE))),PE=Z()(e=>({bg:{background:e.palette.divider,border:"1px solid black",margin:20},iconFloat:{float:"right",marginLeft:100}}));OE=Hv});var UE=G((XO,HE)=>{"use strict";var Uv=/["'&<>]/;HE.exports=qv;function qv(e){var t=""+e,r=Uv.exec(t);if(!r)return t;var n,o="",i=0,s=0;for(i=r.index;i<t.length;i++){switch(t.charCodeAt(i)){case 34:n=""";break;case 38:n="&";break;case 39:n="'";break;case 60:n="<";break;case 62:n=">";break;default:continue}s!==i&&(o+=t.substring(s,i)),s=i+1,o+=n}return s!==i?o+t.substring(s,i):o}});function Pe(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];return rf(e,t,n)}}function Xv(e){return function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return nf(e,r)}}function U(e,t){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Zi;if(qE&&qE(e,null),!Ct(t))return e;let n=t.length;for(;n--;){let o=t[n];if(typeof o=="string"){let i=r(o);i!==o&&(jv(t)||(t[n]=i),o=i)}e[o]=!0}return e}function Zv(e){for(let t=0;t<e.length;t++)ve(e,t)||(e[t]=null);return e}function vt(e){let t=ni(null);for(let[r,n]of tI(e))ve(e,r)&&(Ct(n)?t[r]=Zv(n):n&&typeof n=="object"&&n.constructor===Object?t[r]=vt(n):t[r]=n);return t}function eT(e){switch(typeof e){case"string":return e;case"number":return $v(e);case"boolean":return Kv(e);case"bigint":return YE?YE(e):"0";case"symbol":return WE?WE(e):"Symbol()";case"undefined":return Ki(e);case"function":case"object":{if(e===null)return Ki(e);let t=e,r=oi(t,"toString");if(typeof r=="function"){let n=r(t);return typeof n=="string"?n:Ki(n)}return Ki(e)}default:return Ki(e)}}function oi(e,t){for(;e!==null;){let n=Vv(e,t);if(n){if(n.get)return Pe(n.get);if(typeof n.value=="function")return Pe(n.value)}e=Jv(e)}function r(){return null}return r}function tT(e){try{return rt(e,""),!0}catch{return!1}}function oI(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:fT(),t=P=>oI(P);if(t.version="3.4.2",t.removed=[],!e||!e.document||e.document.nodeType!==Xi.document||!e.Element)return t.isSupported=!1,t;let{document:r}=e,n=r,o=n.currentScript,{DocumentFragment:i,HTMLTemplateElement:s,Node:a,Element:c,NodeFilter:l,NamedNodeMap:A=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:u,DOMParser:m,trustedTypes:d}=e,p=c.prototype,C=oi(p,"cloneNode"),y=oi(p,"remove"),I=oi(p,"nextSibling"),h=oi(p,"childNodes"),x=oi(p,"parentNode");if(typeof s=="function"){let P=r.createElement("template");P.content&&P.content.ownerDocument&&(r=P.content.ownerDocument)}let w,Q="",{implementation:S,createNodeIterator:M,createDocumentFragment:F,getElementsByTagName:D}=r,{importNode:re}=n,v=eI();t.isSupported=typeof tI=="function"&&typeof x=="function"&&S&&S.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:H,ERB_EXPR:q,TMPLIT_EXPR:O,DATA_ATTR:xe,ARIA_ATTR:Br,IS_SCRIPT_OR_DATA:Ur,ATTR_WHITESPACE:cn,CUSTOM_ELEMENT:Ms}=ZE,{IS_ALLOWED_URI:qr}=ZE,Le=null,jr=U({},[...zE,...Xu,...Zu,...ef,...$E]),me=null,vn=U({},[...KE,...tf,...XE,...pc]),de=Object.seal(ni(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Sr=null,jt=null,Bt=Object.seal(ni(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),vs=!0,Ao=!0,xi=!1,Ts=!0,Jr=!1,sr=!0,Qr=!1,_s=!1,K=!1,ne=!1,ce=!1,le=!1,Tt=!0,ut=!1,Me="user-content-",ft=!0,ar=!1,Jt={},_t=null,uo=U({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),mt=null,Vt=U({},["audio","video","img","source","image","track"]),Tn=null,Ds=U({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ln="http://www.w3.org/1998/Math/MathML",ks="http://www.w3.org/2000/svg",Mr="http://www.w3.org/1999/xhtml",fo=Mr,xl=!1,yl=null,XQ=U({},[ln,ks,Mr],Ku),wl=U({},["mi","mo","mn","ms","mtext"]),bl=U({},["annotation-xml"]),ZQ=U({},["title","style","font","a","script"]),yi=null,e1=["application/xhtml+xml","text/html"],t1="text/html",Oe=null,mo=null,r1=r.createElement("form"),Km=function(E){return E instanceof RegExp||E instanceof Function},Bl=function(){let E=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(mo&&mo===E)return;(!E||typeof E!="object")&&(E={}),E=vt(E),yi=e1.indexOf(E.PARSER_MEDIA_TYPE)===-1?t1:E.PARSER_MEDIA_TYPE,Oe=yi==="application/xhtml+xml"?Ku:Zi,Le=ve(E,"ALLOWED_TAGS")&&Ct(E.ALLOWED_TAGS)?U({},E.ALLOWED_TAGS,Oe):jr,me=ve(E,"ALLOWED_ATTR")&&Ct(E.ALLOWED_ATTR)?U({},E.ALLOWED_ATTR,Oe):vn,yl=ve(E,"ALLOWED_NAMESPACES")&&Ct(E.ALLOWED_NAMESPACES)?U({},E.ALLOWED_NAMESPACES,Ku):XQ,Tn=ve(E,"ADD_URI_SAFE_ATTR")&&Ct(E.ADD_URI_SAFE_ATTR)?U(vt(Ds),E.ADD_URI_SAFE_ATTR,Oe):Ds,mt=ve(E,"ADD_DATA_URI_TAGS")&&Ct(E.ADD_DATA_URI_TAGS)?U(vt(Vt),E.ADD_DATA_URI_TAGS,Oe):Vt,_t=ve(E,"FORBID_CONTENTS")&&Ct(E.FORBID_CONTENTS)?U({},E.FORBID_CONTENTS,Oe):uo,Sr=ve(E,"FORBID_TAGS")&&Ct(E.FORBID_TAGS)?U({},E.FORBID_TAGS,Oe):vt({}),jt=ve(E,"FORBID_ATTR")&&Ct(E.FORBID_ATTR)?U({},E.FORBID_ATTR,Oe):vt({}),Jt=ve(E,"USE_PROFILES")?E.USE_PROFILES&&typeof E.USE_PROFILES=="object"?vt(E.USE_PROFILES):E.USE_PROFILES:!1,vs=E.ALLOW_ARIA_ATTR!==!1,Ao=E.ALLOW_DATA_ATTR!==!1,xi=E.ALLOW_UNKNOWN_PROTOCOLS||!1,Ts=E.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Jr=E.SAFE_FOR_TEMPLATES||!1,sr=E.SAFE_FOR_XML!==!1,Qr=E.WHOLE_DOCUMENT||!1,ne=E.RETURN_DOM||!1,ce=E.RETURN_DOM_FRAGMENT||!1,le=E.RETURN_TRUSTED_TYPE||!1,K=E.FORCE_BODY||!1,Tt=E.SANITIZE_DOM!==!1,ut=E.SANITIZE_NAMED_PROPS||!1,ft=E.KEEP_CONTENT!==!1,ar=E.IN_PLACE||!1,qr=tT(E.ALLOWED_URI_REGEXP)?E.ALLOWED_URI_REGEXP:rI,fo=typeof E.NAMESPACE=="string"?E.NAMESPACE:Mr,wl=ve(E,"MATHML_TEXT_INTEGRATION_POINTS")&&E.MATHML_TEXT_INTEGRATION_POINTS&&typeof E.MATHML_TEXT_INTEGRATION_POINTS=="object"?vt(E.MATHML_TEXT_INTEGRATION_POINTS):U({},["mi","mo","mn","ms","mtext"]),bl=ve(E,"HTML_INTEGRATION_POINTS")&&E.HTML_INTEGRATION_POINTS&&typeof E.HTML_INTEGRATION_POINTS=="object"?vt(E.HTML_INTEGRATION_POINTS):U({},["annotation-xml"]);let B=ve(E,"CUSTOM_ELEMENT_HANDLING")&&E.CUSTOM_ELEMENT_HANDLING&&typeof E.CUSTOM_ELEMENT_HANDLING=="object"?vt(E.CUSTOM_ELEMENT_HANDLING):ni(null);if(de=ni(null),ve(B,"tagNameCheck")&&Km(B.tagNameCheck)&&(de.tagNameCheck=B.tagNameCheck),ve(B,"attributeNameCheck")&&Km(B.attributeNameCheck)&&(de.attributeNameCheck=B.attributeNameCheck),ve(B,"allowCustomizedBuiltInElements")&&typeof B.allowCustomizedBuiltInElements=="boolean"&&(de.allowCustomizedBuiltInElements=B.allowCustomizedBuiltInElements),Jr&&(Ao=!1),ce&&(ne=!0),Jt&&(Le=U({},$E),me=ni(null),Jt.html===!0&&(U(Le,zE),U(me,KE)),Jt.svg===!0&&(U(Le,Xu),U(me,tf),U(me,pc)),Jt.svgFilters===!0&&(U(Le,Zu),U(me,tf),U(me,pc)),Jt.mathMl===!0&&(U(Le,ef),U(me,XE),U(me,pc))),Bt.tagCheck=null,Bt.attributeCheck=null,ve(E,"ADD_TAGS")&&(typeof E.ADD_TAGS=="function"?Bt.tagCheck=E.ADD_TAGS:Ct(E.ADD_TAGS)&&(Le===jr&&(Le=vt(Le)),U(Le,E.ADD_TAGS,Oe))),ve(E,"ADD_ATTR")&&(typeof E.ADD_ATTR=="function"?Bt.attributeCheck=E.ADD_ATTR:Ct(E.ADD_ATTR)&&(me===vn&&(me=vt(me)),U(me,E.ADD_ATTR,Oe))),ve(E,"ADD_URI_SAFE_ATTR")&&Ct(E.ADD_URI_SAFE_ATTR)&&U(Tn,E.ADD_URI_SAFE_ATTR,Oe),ve(E,"FORBID_CONTENTS")&&Ct(E.FORBID_CONTENTS)&&(_t===uo&&(_t=vt(_t)),U(_t,E.FORBID_CONTENTS,Oe)),ve(E,"ADD_FORBID_CONTENTS")&&Ct(E.ADD_FORBID_CONTENTS)&&(_t===uo&&(_t=vt(_t)),U(_t,E.ADD_FORBID_CONTENTS,Oe)),ft&&(Le["#text"]=!0),Qr&&U(Le,["html","head","body"]),Le.table&&(U(Le,["tbody"]),delete Sr.tbody),E.TRUSTED_TYPES_POLICY){if(typeof E.TRUSTED_TYPES_POLICY.createHTML!="function")throw gc('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof E.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw gc('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');w=E.TRUSTED_TYPES_POLICY,Q=w.createHTML("")}else w===void 0&&(w=mT(d,o)),w!==null&&typeof Q=="string"&&(Q=w.createHTML(""));Et&&Et(E),mo=E},Xm=U({},[...Xu,...Zu,...rT]),Zm=U({},[...ef,...nT]),n1=function(E){let B=x(E);(!B||!B.tagName)&&(B={namespaceURI:fo,tagName:"template"});let N=Zi(E.tagName),Ae=Zi(B.tagName);return yl[E.namespaceURI]?E.namespaceURI===ks?B.namespaceURI===Mr?N==="svg":B.namespaceURI===ln?N==="svg"&&(Ae==="annotation-xml"||wl[Ae]):!!Xm[N]:E.namespaceURI===ln?B.namespaceURI===Mr?N==="math":B.namespaceURI===ks?N==="math"&&bl[Ae]:!!Zm[N]:E.namespaceURI===Mr?B.namespaceURI===ks&&!bl[Ae]||B.namespaceURI===ln&&!wl[Ae]?!1:!Zm[N]&&(ZQ[N]||!Xm[N]):!!(yi==="application/xhtml+xml"&&yl[E.namespaceURI]):!1},cr=function(E){$i(t.removed,{element:E});try{x(E).removeChild(E)}catch{y(E)}},_n=function(E,B){try{$i(t.removed,{attribute:B.getAttributeNode(E),from:B})}catch{$i(t.removed,{attribute:null,from:B})}if(B.removeAttribute(E),E==="is")if(ne||ce)try{cr(B)}catch{}else try{B.setAttribute(E,"")}catch{}},ed=function(E){let B=null,N=null;if(K)E="<remove></remove>"+E;else{let Fe=JE(E,/^[\r\n\t ]+/);N=Fe&&Fe[0]}yi==="application/xhtml+xml"&&fo===Mr&&(E='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+E+"</body></html>");let Ae=w?w.createHTML(E):E;if(fo===Mr)try{B=new m().parseFromString(Ae,yi)}catch{}if(!B||!B.documentElement){B=S.createDocument(fo,"template",null);try{B.documentElement.innerHTML=xl?Q:Ae}catch{}}let ot=B.body||B.documentElement;return E&&N&&ot.insertBefore(r.createTextNode(N),ot.childNodes[0]||null),fo===Mr?D.call(B,Qr?"html":"body")[0]:Qr?B.documentElement:ot},td=function(E){return M.call(E.ownerDocument||E,E,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT|l.SHOW_PROCESSING_INSTRUCTION|l.SHOW_CDATA_SECTION,null)},Sl=function(E){return E instanceof u&&(typeof E.nodeName!="string"||typeof E.textContent!="string"||typeof E.removeChild!="function"||!(E.attributes instanceof A)||typeof E.removeAttribute!="function"||typeof E.setAttribute!="function"||typeof E.namespaceURI!="string"||typeof E.insertBefore!="function"||typeof E.hasChildNodes!="function")},Ql=function(E){return typeof a=="function"&&E instanceof a};function Vr(P,E,B){zi(P,N=>{N.call(t,E,B,mo)})}let rd=function(E){let B=null;if(Vr(v.beforeSanitizeElements,E,null),Sl(E))return cr(E),!0;let N=Oe(E.nodeName);if(Vr(v.uponSanitizeElement,E,{tagName:N,allowedTags:Le}),sr&&E.hasChildNodes()&&!Ql(E.firstElementChild)&&rt(/<[/\w!]/g,E.innerHTML)&&rt(/<[/\w!]/g,E.textContent)||sr&&E.namespaceURI===Mr&&N==="style"&&Ql(E.firstElementChild)||E.nodeType===Xi.progressingInstruction||sr&&E.nodeType===Xi.comment&&rt(/<[/\w]/g,E.data))return cr(E),!0;if(Sr[N]||!(Bt.tagCheck instanceof Function&&Bt.tagCheck(N))&&!Le[N]){if(!Sr[N]&&od(N)&&(de.tagNameCheck instanceof RegExp&&rt(de.tagNameCheck,N)||de.tagNameCheck instanceof Function&&de.tagNameCheck(N)))return!1;if(ft&&!_t[N]){let Ae=x(E)||E.parentNode,ot=h(E)||E.childNodes;if(ot&&Ae){let Fe=ot.length;for(let St=Fe-1;St>=0;--St){let Yt=C(ot[St],!0);Ae.insertBefore(Yt,I(E))}}}return cr(E),!0}return E instanceof c&&!n1(E)||(N==="noscript"||N==="noembed"||N==="noframes")&&rt(/<\/no(script|embed|frames)/i,E.innerHTML)?(cr(E),!0):(Jr&&E.nodeType===Xi.text&&(B=E.textContent,zi([H,q,O],Ae=>{B=ri(B,Ae," ")}),E.textContent!==B&&($i(t.removed,{element:E.cloneNode()}),E.textContent=B)),Vr(v.afterSanitizeElements,E,null),!1)},nd=function(E,B,N){if(jt[B]||Tt&&(B==="id"||B==="name")&&(N in r||N in r1))return!1;let Ae=me[B]||Bt.attributeCheck instanceof Function&&Bt.attributeCheck(B,E);if(!(Ao&&!jt[B]&&rt(xe,B))){if(!(vs&&rt(Br,B))){if(!Ae||jt[B]){if(!(od(E)&&(de.tagNameCheck instanceof RegExp&&rt(de.tagNameCheck,E)||de.tagNameCheck instanceof Function&&de.tagNameCheck(E))&&(de.attributeNameCheck instanceof RegExp&&rt(de.attributeNameCheck,B)||de.attributeNameCheck instanceof Function&&de.attributeNameCheck(B,E))||B==="is"&&de.allowCustomizedBuiltInElements&&(de.tagNameCheck instanceof RegExp&&rt(de.tagNameCheck,N)||de.tagNameCheck instanceof Function&&de.tagNameCheck(N))))return!1}else if(!Tn[B]){if(!rt(qr,ri(N,cn,""))){if(!((B==="src"||B==="xlink:href"||B==="href")&&E!=="script"&&VE(N,"data:")===0&&mt[E])){if(!(xi&&!rt(Ur,ri(N,cn,"")))){if(N)return!1}}}}}}return!0},o1=U({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),od=function(E){return!o1[Zi(E)]&&rt(Ms,E)},id=function(E){Vr(v.beforeSanitizeAttributes,E,null);let{attributes:B}=E;if(!B||Sl(E))return;let N={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:me,forceKeepAttr:void 0},Ae=B.length;for(;Ae--;){let ot=B[Ae],{name:Fe,namespaceURI:St,value:Yt}=ot,lr=Oe(Fe),Ml=Yt,je=Fe==="value"?Ml:zv(Ml);if(N.attrName=lr,N.attrValue=je,N.keepAttr=!0,N.forceKeepAttr=void 0,Vr(v.uponSanitizeAttribute,E,N),je=N.attrValue,ut&&(lr==="id"||lr==="name")&&VE(je,Me)!==0&&(_n(Fe,E),je=Me+je),sr&&rt(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,je)){_n(Fe,E);continue}if(lr==="attributename"&&JE(je,"href")){_n(Fe,E);continue}if(N.forceKeepAttr)continue;if(!N.keepAttr){_n(Fe,E);continue}if(!Ts&&rt(/\/>/i,je)){_n(Fe,E);continue}Jr&&zi([H,q,O],cd=>{je=ri(je,cd," ")});let ad=Oe(E.nodeName);if(!nd(ad,lr,je)){_n(Fe,E);continue}if(w&&typeof d=="object"&&typeof d.getAttributeType=="function"&&!St)switch(d.getAttributeType(ad,lr)){case"TrustedHTML":{je=w.createHTML(je);break}case"TrustedScriptURL":{je=w.createScriptURL(je);break}}if(je!==Ml)try{St?E.setAttributeNS(St,Fe,je):E.setAttribute(Fe,je),Sl(E)?cr(E):jE(t.removed)}catch{_n(Fe,E)}}Vr(v.afterSanitizeAttributes,E,null)},sd=function(E){let B=null,N=td(E);for(Vr(v.beforeSanitizeShadowDOM,E,null);B=N.nextNode();)Vr(v.uponSanitizeShadowNode,B,null),rd(B),id(B),B.content instanceof i&&sd(B.content);Vr(v.afterSanitizeShadowDOM,E,null)};return t.sanitize=function(P){let E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},B=null,N=null,Ae=null,ot=null;if(xl=!P,xl&&(P="<!-->"),typeof P!="string"&&!Ql(P)&&(P=eT(P),typeof P!="string"))throw gc("dirty is not a string, aborting");if(!t.isSupported)return P;if(_s||Bl(E),t.removed=[],typeof P=="string"&&(ar=!1),ar){let Yt=P.nodeName;if(typeof Yt=="string"){let lr=Oe(Yt);if(!Le[lr]||Sr[lr])throw gc("root node is forbidden and cannot be sanitized in-place")}}else if(P instanceof a)B=ed("<!---->"),N=B.ownerDocument.importNode(P,!0),N.nodeType===Xi.element&&N.nodeName==="BODY"||N.nodeName==="HTML"?B=N:B.appendChild(N);else{if(!ne&&!Jr&&!Qr&&P.indexOf("<")===-1)return w&&le?w.createHTML(P):P;if(B=ed(P),!B)return ne?null:le?Q:""}B&&K&&cr(B.firstChild);let Fe=td(ar?P:B);for(;Ae=Fe.nextNode();)rd(Ae),id(Ae),Ae.content instanceof i&&sd(Ae.content);if(ar)return P;if(ne){if(Jr){B.normalize();let Yt=B.innerHTML;zi([H,q,O],lr=>{Yt=ri(Yt,lr," ")}),B.innerHTML=Yt}if(ce)for(ot=F.call(B.ownerDocument);B.firstChild;)ot.appendChild(B.firstChild);else ot=B;return(me.shadowroot||me.shadowrootmode)&&(ot=re.call(n,ot,!0)),ot}let St=Qr?B.outerHTML:B.innerHTML;return Qr&&Le["!doctype"]&&B.ownerDocument&&B.ownerDocument.doctype&&B.ownerDocument.doctype.name&&rt(nI,B.ownerDocument.doctype.name)&&(St="<!DOCTYPE "+B.ownerDocument.doctype.name+`>
|
|
27
|
+
`+St),Jr&&zi([H,q,O],Yt=>{St=ri(St,Yt," ")}),w&&le?w.createHTML(St):St},t.setConfig=function(){let P=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Bl(P),_s=!0},t.clearConfig=function(){mo=null,_s=!1},t.isValidAttribute=function(P,E,B){mo||Bl({});let N=Oe(P),Ae=Oe(E);return nd(N,Ae,B)},t.addHook=function(P,E){typeof E=="function"&&$i(v[P],E)},t.removeHook=function(P,E){if(E!==void 0){let B=Yv(v[P],E);return B===-1?void 0:Wv(v[P],B,1)[0]}return jE(v[P])},t.removeHooks=function(P){v[P]=[]},t.removeAllHooks=function(){v=eI()},t}var tI,qE,jv,Jv,Vv,Et,nr,ni,rf,nf,zi,Yv,jE,$i,Wv,Ct,Zi,Ku,JE,ri,VE,zv,$v,Kv,YE,WE,ve,Ki,rt,gc,zE,Xu,Zu,rT,ef,nT,$E,KE,tf,XE,pc,oT,iT,sT,aT,cT,rI,lT,AT,nI,uT,ZE,Xi,fT,mT,eI,iI,sI=g(()=>{({entries:tI,setPrototypeOf:qE,isFrozen:jv,getPrototypeOf:Jv,getOwnPropertyDescriptor:Vv}=Object),{freeze:Et,seal:nr,create:ni}=Object,{apply:rf,construct:nf}=typeof Reflect<"u"&&Reflect;Et||(Et=function(t){return t});nr||(nr=function(t){return t});rf||(rf=function(t,r){for(var n=arguments.length,o=new Array(n>2?n-2:0),i=2;i<n;i++)o[i-2]=arguments[i];return t.apply(r,o)});nf||(nf=function(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),o=1;o<r;o++)n[o-1]=arguments[o];return new t(...n)});zi=Pe(Array.prototype.forEach),Yv=Pe(Array.prototype.lastIndexOf),jE=Pe(Array.prototype.pop),$i=Pe(Array.prototype.push),Wv=Pe(Array.prototype.splice),Ct=Array.isArray,Zi=Pe(String.prototype.toLowerCase),Ku=Pe(String.prototype.toString),JE=Pe(String.prototype.match),ri=Pe(String.prototype.replace),VE=Pe(String.prototype.indexOf),zv=Pe(String.prototype.trim),$v=Pe(Number.prototype.toString),Kv=Pe(Boolean.prototype.toString),YE=typeof BigInt>"u"?null:Pe(BigInt.prototype.toString),WE=typeof Symbol>"u"?null:Pe(Symbol.prototype.toString),ve=Pe(Object.prototype.hasOwnProperty),Ki=Pe(Object.prototype.toString),rt=Pe(RegExp.prototype.test),gc=Xv(TypeError);zE=Et(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Xu=Et(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Zu=Et(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),rT=Et(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),ef=Et(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),nT=Et(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),$E=Et(["#text"]),KE=Et(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),tf=Et(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),XE=Et(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),pc=Et(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),oT=nr(/\{\{[\w\W]*|[\w\W]*\}\}/gm),iT=nr(/<%[\w\W]*|[\w\W]*%>/gm),sT=nr(/\$\{[\w\W]*/gm),aT=nr(/^data-[\-\w.\u00B7-\uFFFF]+$/),cT=nr(/^aria-[\-\w]+$/),rI=nr(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),lT=nr(/^(?:\w+script|data):/i),AT=nr(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),nI=nr(/^html$/i),uT=nr(/^[a-z][.\w]*(-[.\w]+)+$/i),ZE=Object.freeze({__proto__:null,ARIA_ATTR:cT,ATTR_WHITESPACE:AT,CUSTOM_ELEMENT:uT,DATA_ATTR:aT,DOCTYPE_NAME:nI,ERB_EXPR:iT,IS_ALLOWED_URI:rI,IS_SCRIPT_OR_DATA:lT,MUSTACHE_EXPR:oT,TMPLIT_EXPR:sT}),Xi={element:1,text:3,progressingInstruction:7,comment:8,document:9},fT=function(){return typeof window>"u"?null:window},mT=function(t,r){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let n=null,o="data-tt-policy-suffix";r&&r.hasAttribute(o)&&(n=r.getAttribute(o));let i="dompurify"+(n?"#"+n:"");try{return t.createPolicy(i,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+i+" could not be created."),null}},eI=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};iI=oI()});var lI={};Je(lI,{default:()=>cI});function cI({value:e,className:t}){let r=(0,hc.useRef)(null);return(0,hc.useLayoutEffect)(()=>{let n=r.current;if(n)for(let o of n.querySelectorAll("a"))o.setAttribute("rel","noopener noreferrer"),o.setAttribute("target","_blank")},[e]),(0,aI.jsx)("span",{ref:r,className:t,dangerouslySetInnerHTML:{__html:iI.sanitize(e)}})}var aI,hc,AI=g(()=>{aI=f(L(),1),hc=f(b(),1);sI()});function hT(e){return pT.test(e)}function CT(e){return e.includes("<")||e.includes("://")}function ET({value:e,className:t}){let r=(0,hn.useRef)(null);return(0,hn.useLayoutEffect)(()=>{let n=r.current;if(n)try{n.setHTML(e);for(let o of n.querySelectorAll("a"))o.setAttribute("rel","noopener noreferrer"),o.setAttribute("target","_blank")}catch(o){console.error(o)}},[e]),(0,Vn.jsx)("span",{ref:r,className:t})}function Cn({html:e,className:t}){let r=`${e}`;if(!CT(r))return(0,Vn.jsx)("span",{className:t,children:r});let n=Dh(r),o=hT(n)?n:(0,uI.default)(n);return typeof Element<"u"&&Element.prototype.setHTML?(0,Vn.jsx)(ET,{value:o,className:t}):(0,Vn.jsx)(hn.Suspense,{fallback:(0,Vn.jsx)("span",{className:t}),children:(0,Vn.jsx)(gT,{value:o,className:t})})}var Vn,hn,uI,dT,gT,pT,of=g(()=>{Vn=f(L(),1),hn=f(b(),1),uI=f(UE(),1);gn();dT=["a","b","br","code","div","em","h1","h2","h3","h4","h5","h6","i","img","li","p","pre","span","small","strong","table","tbody","sup","sub","td","tfoot","th","thead","tr","u","ul"],gT=(0,hn.lazy)(()=>Promise.resolve().then(()=>(AI(),lI))),pT=new RegExp(dT.map(e=>String.raw`<${e}\b[^>]*>`).join("|"),"i")});function IT({error:e}){let{classes:t}=dI();return(0,Pt.jsx)("div",{className:t.errorBox,children:(0,Pt.jsx)(OE,{error:e})})}var Pt,fI,lt,mI,dI,xT,gI,pI=g(()=>{Pt=f(L(),1),fI=f(b(),1);cu();lt=f(_(),1),mI=f(R(),1);ou();GE();of();ht();dI=Z()(e=>({closeButton:{position:"absolute",right:e.spacing(1),top:e.spacing(1),color:e.palette.grey[500]},errorBox:{width:800,margin:40}}));xT=(0,mI.observer)(function(t){let{classes:r}=dI(),{titleNode:n,...o}=t,{title:i,header:s,children:a,onClose:c}=o,l=(0,lt.useTheme)();return(0,Pt.jsx)(lt.Dialog,{...o,children:(0,Pt.jsxs)(lt.ScopedCssBaseline,{children:[(0,fI.isValidElement)(s)?s:(0,Pt.jsxs)(lt.DialogTitle,{children:[n||(0,Pt.jsx)(Cn,{html:i||""}),c?(0,Pt.jsx)(lt.IconButton,{className:r.closeButton,onClick:A=>{c(A,"backdropClick")},children:(0,Pt.jsx)(La,{})}):null]}),(0,Pt.jsx)(lt.Divider,{}),(0,Pt.jsx)(ko,{FallbackComponent:IT,children:(0,Pt.jsx)(lt.ThemeProvider,{theme:(0,lt.createTheme)(l,{components:{MuiInputBase:{styleOverrides:{input:{boxSizing:"content-box!important"}}}}}),children:a})})]})})}),gI=xT});function sf({onClose:e,helpText:t,label:r}){return(0,Yn.jsx)(gI,{open:!0,onClose:e,title:"Help",titleNode:r?(0,Yn.jsxs)(Yn.Fragment,{children:["Help: ",r]}):void 0,onClick:n=>{n.stopPropagation()},onMouseDown:n=>{n.stopPropagation()},children:(0,Yn.jsx)(hI.DialogContent,{children:t})})}var Yn,hI,CI=g(()=>{Yn=f(L(),1),hI=f(_(),1);pI()});function af({helpText:e,label:t}){let[r,n]=(0,Cc.useState)(!1);return(0,tn.jsxs)(tn.Fragment,{children:[(0,tn.jsx)(EI.IconButton,{size:"small",onClick:o=>{o.stopPropagation(),n(!0)},style:{marginLeft:4,padding:4},children:(0,tn.jsx)(w0,{fontSize:"small"})}),r?(0,tn.jsxs)(Cc.Suspense,{fallback:null,children:[(0,tn.jsx)(sf,{helpText:e,label:t,onClose:o=>{o.stopPropagation(),n(!1)}})," "]}):null]})}var tn,Cc,EI,II=g(()=>{tn=f(L(),1),Cc=f(b(),1);b0();EI=f(_(),1);CI()});var xI,yI,wI,yT,bI,BI=g(()=>{xI=f(L(),1),yI=f(b(),1),wI=f(_(),1),yT=yI.forwardRef(function(t,r){return(0,xI.jsx)(wI.Menu,{...t,ref:r,style:{pointerEvents:"none",...t.style},slotProps:{...t.slotProps,paper:{style:{pointerEvents:"auto"}}}})}),bI=yT});var SI,QI,MI=g(()=>{"use client";Y();SI=f(L(),1),QI=(0,T.createSvgIcon)((0,SI.jsx)("path",{d:"m10 17 5-5-5-5z"}),"ArrowRight")});var vI,TI,_I=g(()=>{"use client";Y();vI=f(L(),1),TI=(0,T.createSvgIcon)((0,vI.jsx)("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2m-9 14-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z"}),"CheckBox")});var DI,kI,NI=g(()=>{"use client";Y();DI=f(L(),1),kI=(0,T.createSvgIcon)((0,DI.jsx)("path",{d:"M19 5v14H5V5zm0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2"}),"CheckBoxOutlineBlank")});var LI,FI,RI=g(()=>{"use client";Y();LI=f(L(),1),FI=(0,T.createSvgIcon)((0,LI.jsx)("path",{d:"M12 7c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5m0-5C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"}),"RadioButtonChecked")});var PI,OI,GI=g(()=>{"use client";Y();PI=f(L(),1),OI=(0,T.createSvgIcon)((0,PI.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8"}),"RadioButtonUnchecked")});function HI(e){let{classes:t}=wT(),{type:r}=e,n,o;"checked"in e&&({checked:n,disabled:o}=e);let i;switch(r){case"subMenu":{i=(0,En.jsx)(QI,{color:"action"});break}case"checkbox":{n?i=(0,En.jsx)(TI,{color:o?"inherit":void 0}):i=(0,En.jsx)(kI,{color:"action"});break}case"radio":{n?i=(0,En.jsx)(FI,{color:o?"inherit":void 0}):i=(0,En.jsx)(OI,{color:"action"});break}}return(0,En.jsx)("div",{className:t.menuItemEndDecoration,children:i})}var En,Ec,wT,UI=g(()=>{En=f(L(),1);MI();_I();NI();RI();GI();Ec=f(_(),1);ht();wT=Z()({menuItemEndDecoration:{padding:0,margin:0,height:16}})});function qI(e){if(typeof e=="string")return e.toLowerCase().replace(/\s+/g,"_")}function bT({title:e,Icon:t,inset:r,menuItems:n,onMenuItemClick:o,closeAfterItemClick:i,onCloseRoot:s,isOpen:a,onOpen:c,onClose:l}){let[A,u]=(0,cf.useState)(null),m=qI(e);return(0,ie.jsxs)(ie.Fragment,{children:[(0,ie.jsxs)(It.MenuItem,{ref:u,"data-testid":m?`cascading-submenu-${m}`:void 0,onMouseOver:c,onFocus:c,onClick:c,children:[t?(0,ie.jsx)(It.ListItemIcon,{children:(0,ie.jsx)(t,{})}):null,(0,ie.jsx)(It.ListItemText,{primary:e,inset:r}),(0,ie.jsx)(I0,{})]}),(0,ie.jsx)(bI,{open:a,anchorEl:A,onClose:l,anchorOrigin:{vertical:"top",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"left"},children:(0,ie.jsx)(jI,{closeAfterItemClick:i,onMenuItemClick:o,menuItems:n,onCloseRoot:s})})]})}function jI({onMenuItemClick:e,closeAfterItemClick:t,menuItems:r,onCloseRoot:n}){let[o,i]=(0,cf.useState)(),s=()=>{i(void 0)},a=r.some(A=>"icon"in A&&A.icon),c=r.some(A=>(A.type==="checkbox"||A.type==="radio")&&"helpText"in A&&A.helpText),l=r.toSorted((A,u)=>(u.priority||0)-(A.priority||0));return(0,ie.jsx)(ie.Fragment,{children:l.map((A,u)=>{if("subMenu"in A)return(0,ie.jsx)(bT,{title:A.label,Icon:A.icon,inset:a&&!A.icon,onMenuItemClick:e,menuItems:A.subMenu,closeAfterItemClick:t,onCloseRoot:n,isOpen:o===u,onOpen:()=>{i(u)},onClose:s},`subMenu-${A.label}-${u}`);if(A.type==="divider")return(0,ie.jsx)(It.Divider,{component:"li"},`divider-${u}`);if(A.type==="subHeader")return(0,ie.jsx)(It.ListSubheader,{children:A.label},`subHeader-${A.label}-${u}`);let m=A,d=m.helpText,p=m.type==="checkbox"||m.type==="radio",C=qI(m.label);return(0,ie.jsxs)(It.MenuItem,{"data-testid":C?`cascading-menuitem-${C}`:void 0,disabled:!!m.disabled,onClick:y=>{t&&n(),e(y,m.onClick)},onMouseOver:s,children:[m.icon?(0,ie.jsx)(It.ListItemIcon,{children:(0,ie.jsx)(m.icon,{})}):null,(0,ie.jsx)(It.ListItemText,{primary:m.label,secondary:m.subLabel,inset:a&&!m.icon}),(0,ie.jsx)("div",{style:{flexGrow:1,minWidth:10}}),p?(0,ie.jsx)(HI,{type:m.type,checked:m.checked,disabled:m.disabled}):null,d?(0,ie.jsx)(af,{helpText:d,label:m.label}):p&&c?(0,ie.jsx)("div",{style:{marginLeft:4,padding:4,width:28,height:28}}):null]},`${m.label}-${u}`)})})}function lf({onMenuItemClick:e,closeAfterItemClick:t=!0,menuItems:r,open:n,onClose:o,anchorEl:i,anchorOrigin:s,transformOrigin:a,anchorReference:c,anchorPosition:l,slotProps:A,marginThreshold:u,style:m}){let d=Array.isArray(r)?r:r();return(0,ie.jsx)(It.Menu,{anchorEl:i,open:n,onClose:o,anchorOrigin:s,transformOrigin:a,anchorReference:c,anchorPosition:l,slotProps:A,marginThreshold:u??void 0,style:m,children:(0,ie.jsx)(jI,{menuItems:d,closeAfterItemClick:t,onMenuItemClick:e,onCloseRoot:o})})}var ie,cf,It,JI=g(()=>{ie=f(L(),1),cf=f(b(),1);x0();It=f(_(),1);II();BI();UI()});function BT({children:e,menuItems:t,closeAfterItemClick:r=!0,stopPropagation:n,disabled:o,setOpen:i,ButtonComponent:s=VI.IconButton,onClick:a,anchorOrigin:c,transformOrigin:l,marginThreshold:A,...u}){let[m,d]=(0,Ic.useState)(null),p=!!m;(0,Ic.useEffect)(()=>{i?.(p)},[p,i]);let C=o??(Array.isArray(t)&&t.length===0);return(0,Wn.jsxs)(Wn.Fragment,{children:[(0,Wn.jsx)(s,{onClick:y=>{n&&y.stopPropagation(),d(y.currentTarget),a?.(y)},...u,disabled:C,children:e}),p?(0,Wn.jsx)(lf,{open:p,onClose:()=>{d(null)},anchorEl:m,anchorOrigin:c,transformOrigin:l,marginThreshold:A,menuItems:t,closeAfterItemClick:r,onMenuItemClick:(y,I)=>{I()}}):null]})}var Wn,Ic,VI,Lr,ii=g(()=>{Wn=f(L(),1),Ic=f(b(),1),VI=f(_(),1);JI();Lr=BT});var YI,WI,zI=g(()=>{"use client";Y();YI=f(L(),1),WI=(0,T.createSvgIcon)((0,YI.jsx)("path",{d:"M12 2C6.49 2 2 6.49 2 12s4.49 10 10 10c1.38 0 2.5-1.12 2.5-2.5 0-.61-.23-1.2-.64-1.67-.08-.1-.13-.21-.13-.33 0-.28.22-.5.5-.5H16c3.31 0 6-2.69 6-6 0-4.96-4.49-9-10-9m5.5 11c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5m-3-4c-.83 0-1.5-.67-1.5-1.5S13.67 6 14.5 6s1.5.67 1.5 1.5S15.33 9 14.5 9M5 11.5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5S7.33 13 6.5 13 5 12.33 5 11.5m6-4c0 .83-.67 1.5-1.5 1.5S8 8.33 8 7.5 8.67 6 9.5 6s1.5.67 1.5 1.5"}),"Palette")});var ST,si,$I=g(()=>{ST={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"},si=ST});var QT,es,KI=g(()=>{QT={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"},es=QT});var MT,ts,XI=g(()=>{MT={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"},ts=MT});var vT,rs,ZI=g(()=>{vT={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"},rs=vT});var TT,In,ex=g(()=>{TT={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"},In=TT});var Af=g(()=>{$I();KI();XI();ZI();ex()});var _T,rn,$e,or,cx,tx,uf,DT,xc,lx,Ax,rx,nx,ox,ns,kT,NT,LT,FT,df,ix,RT,ff,mf,sx,gf,xt,ax,yc,wc=g(()=>{_T={grad:.9,turn:360,rad:360/(2*Math.PI)},rn=function(e){return typeof e=="string"?e.length>0:typeof e=="number"},$e=function(e,t,r){return t===void 0&&(t=0),r===void 0&&(r=Math.pow(10,t)),Math.round(r*e)/r+0},or=function(e,t,r){return t===void 0&&(t=0),r===void 0&&(r=1),e>r?r:e>t?e:t},cx=function(e){return(e=isFinite(e)?e%360:0)>0?e:e+360},tx=function(e){return{r:or(e.r,0,255),g:or(e.g,0,255),b:or(e.b,0,255),a:or(e.a)}},uf=function(e){return{r:$e(e.r),g:$e(e.g),b:$e(e.b),a:$e(e.a,3)}},DT=/^#([0-9a-f]{3,8})$/i,xc=function(e){var t=e.toString(16);return t.length<2?"0"+t:t},lx=function(e){var t=e.r,r=e.g,n=e.b,o=e.a,i=Math.max(t,r,n),s=i-Math.min(t,r,n),a=s?i===t?(r-n)/s:i===r?2+(n-t)/s:4+(t-r)/s:0;return{h:60*(a<0?a+6:a),s:i?s/i*100:0,v:i/255*100,a:o}},Ax=function(e){var t=e.h,r=e.s,n=e.v,o=e.a;t=t/360*6,r/=100,n/=100;var i=Math.floor(t),s=n*(1-r),a=n*(1-(t-i)*r),c=n*(1-(1-t+i)*r),l=i%6;return{r:255*[n,a,s,s,c,n][l],g:255*[c,n,n,a,s,s][l],b:255*[s,s,c,n,n,a][l],a:o}},rx=function(e){return{h:cx(e.h),s:or(e.s,0,100),l:or(e.l,0,100),a:or(e.a)}},nx=function(e){return{h:$e(e.h),s:$e(e.s),l:$e(e.l),a:$e(e.a,3)}},ox=function(e){return Ax((r=(t=e).s,{h:t.h,s:(r*=((n=t.l)<50?n:100-n)/100)>0?2*r/(n+r)*100:0,v:n+r,a:t.a}));var t,r,n},ns=function(e){return{h:(t=lx(e)).h,s:(o=(200-(r=t.s))*(n=t.v)/100)>0&&o<200?r*n/100/(o<=100?o:200-o)*100:0,l:o/2,a:t.a};var t,r,n,o},kT=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*,\s*([+-]?\d*\.?\d+)%\s*,\s*([+-]?\d*\.?\d+)%\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,NT=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,LT=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,FT=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,df={string:[[function(e){var t=DT.exec(e);return t?(e=t[1]).length<=4?{r:parseInt(e[0]+e[0],16),g:parseInt(e[1]+e[1],16),b:parseInt(e[2]+e[2],16),a:e.length===4?$e(parseInt(e[3]+e[3],16)/255,2):1}:e.length===6||e.length===8?{r:parseInt(e.substr(0,2),16),g:parseInt(e.substr(2,2),16),b:parseInt(e.substr(4,2),16),a:e.length===8?$e(parseInt(e.substr(6,2),16)/255,2):1}:null:null},"hex"],[function(e){var t=LT.exec(e)||FT.exec(e);return t?t[2]!==t[4]||t[4]!==t[6]?null:tx({r:Number(t[1])/(t[2]?100/255:1),g:Number(t[3])/(t[4]?100/255:1),b:Number(t[5])/(t[6]?100/255:1),a:t[7]===void 0?1:Number(t[7])/(t[8]?100:1)}):null},"rgb"],[function(e){var t=kT.exec(e)||NT.exec(e);if(!t)return null;var r,n,o=rx({h:(r=t[1],n=t[2],n===void 0&&(n="deg"),Number(r)*(_T[n]||1)),s:Number(t[3]),l:Number(t[4]),a:t[5]===void 0?1:Number(t[5])/(t[6]?100:1)});return ox(o)},"hsl"]],object:[[function(e){var t=e.r,r=e.g,n=e.b,o=e.a,i=o===void 0?1:o;return rn(t)&&rn(r)&&rn(n)?tx({r:Number(t),g:Number(r),b:Number(n),a:Number(i)}):null},"rgb"],[function(e){var t=e.h,r=e.s,n=e.l,o=e.a,i=o===void 0?1:o;if(!rn(t)||!rn(r)||!rn(n))return null;var s=rx({h:Number(t),s:Number(r),l:Number(n),a:Number(i)});return ox(s)},"hsl"],[function(e){var t=e.h,r=e.s,n=e.v,o=e.a,i=o===void 0?1:o;if(!rn(t)||!rn(r)||!rn(n))return null;var s=(function(a){return{h:cx(a.h),s:or(a.s,0,100),v:or(a.v,0,100),a:or(a.a)}})({h:Number(t),s:Number(r),v:Number(n),a:Number(i)});return Ax(s)},"hsv"]]},ix=function(e,t){for(var r=0;r<t.length;r++){var n=t[r][0](e);if(n)return[n,t[r][1]]}return[null,void 0]},RT=function(e){return typeof e=="string"?ix(e.trim(),df.string):typeof e=="object"&&e!==null?ix(e,df.object):[null,void 0]},ff=function(e,t){var r=ns(e);return{h:r.h,s:or(r.s+100*t,0,100),l:r.l,a:r.a}},mf=function(e){return(299*e.r+587*e.g+114*e.b)/1e3/255},sx=function(e,t){var r=ns(e);return{h:r.h,s:r.s,l:or(r.l+100*t,0,100),a:r.a}},gf=(function(){function e(t){this.parsed=RT(t)[0],this.rgba=this.parsed||{r:0,g:0,b:0,a:1}}return e.prototype.isValid=function(){return this.parsed!==null},e.prototype.brightness=function(){return $e(mf(this.rgba),2)},e.prototype.isDark=function(){return mf(this.rgba)<.5},e.prototype.isLight=function(){return mf(this.rgba)>=.5},e.prototype.toHex=function(){return t=uf(this.rgba),r=t.r,n=t.g,o=t.b,s=(i=t.a)<1?xc($e(255*i)):"","#"+xc(r)+xc(n)+xc(o)+s;var t,r,n,o,i,s},e.prototype.toRgb=function(){return uf(this.rgba)},e.prototype.toRgbString=function(){return t=uf(this.rgba),r=t.r,n=t.g,o=t.b,(i=t.a)<1?"rgba("+r+", "+n+", "+o+", "+i+")":"rgb("+r+", "+n+", "+o+")";var t,r,n,o,i},e.prototype.toHsl=function(){return nx(ns(this.rgba))},e.prototype.toHslString=function(){return t=nx(ns(this.rgba)),r=t.h,n=t.s,o=t.l,(i=t.a)<1?"hsla("+r+", "+n+"%, "+o+"%, "+i+")":"hsl("+r+", "+n+"%, "+o+"%)";var t,r,n,o,i},e.prototype.toHsv=function(){return t=lx(this.rgba),{h:$e(t.h),s:$e(t.s),v:$e(t.v),a:$e(t.a,3)};var t},e.prototype.invert=function(){return xt({r:255-(t=this.rgba).r,g:255-t.g,b:255-t.b,a:t.a});var t},e.prototype.saturate=function(t){return t===void 0&&(t=.1),xt(ff(this.rgba,t))},e.prototype.desaturate=function(t){return t===void 0&&(t=.1),xt(ff(this.rgba,-t))},e.prototype.grayscale=function(){return xt(ff(this.rgba,-1))},e.prototype.lighten=function(t){return t===void 0&&(t=.1),xt(sx(this.rgba,t))},e.prototype.darken=function(t){return t===void 0&&(t=.1),xt(sx(this.rgba,-t))},e.prototype.rotate=function(t){return t===void 0&&(t=15),this.hue(this.hue()+t)},e.prototype.alpha=function(t){return typeof t=="number"?xt({r:(r=this.rgba).r,g:r.g,b:r.b,a:t}):$e(this.rgba.a,3);var r},e.prototype.hue=function(t){var r=ns(this.rgba);return typeof t=="number"?xt({h:t,s:r.s,l:r.l,a:r.a}):$e(r.h)},e.prototype.isEqual=function(t){return this.toHex()===xt(t).toHex()},e})(),xt=function(e){return e instanceof gf?e:new gf(e)},ax=[],yc=function(e){e.forEach(function(t){ax.indexOf(t)<0&&(t(gf,df),ax.push(t))})}});function bc(e,t){var r={white:"#ffffff",bisque:"#ffe4c4",blue:"#0000ff",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",antiquewhite:"#faebd7",aqua:"#00ffff",azure:"#f0ffff",whitesmoke:"#f5f5f5",papayawhip:"#ffefd5",plum:"#dda0dd",blanchedalmond:"#ffebcd",black:"#000000",gold:"#ffd700",goldenrod:"#daa520",gainsboro:"#dcdcdc",cornsilk:"#fff8dc",cornflowerblue:"#6495ed",burlywood:"#deb887",aquamarine:"#7fffd4",beige:"#f5f5dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkkhaki:"#bdb76b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",peachpuff:"#ffdab9",darkmagenta:"#8b008b",darkred:"#8b0000",darkorchid:"#9932cc",darkorange:"#ff8c00",darkslateblue:"#483d8b",gray:"#808080",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",deeppink:"#ff1493",deepskyblue:"#00bfff",wheat:"#f5deb3",firebrick:"#b22222",floralwhite:"#fffaf0",ghostwhite:"#f8f8ff",darkviolet:"#9400d3",magenta:"#ff00ff",green:"#008000",dodgerblue:"#1e90ff",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",blueviolet:"#8a2be2",forestgreen:"#228b22",lawngreen:"#7cfc00",indianred:"#cd5c5c",indigo:"#4b0082",fuchsia:"#ff00ff",brown:"#a52a2a",maroon:"#800000",mediumblue:"#0000cd",lightcoral:"#f08080",darkturquoise:"#00ced1",lightcyan:"#e0ffff",ivory:"#fffff0",lightyellow:"#ffffe0",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",linen:"#faf0e6",mediumaquamarine:"#66cdaa",lemonchiffon:"#fffacd",lime:"#00ff00",khaki:"#f0e68c",mediumseagreen:"#3cb371",limegreen:"#32cd32",mediumspringgreen:"#00fa9a",lightskyblue:"#87cefa",lightblue:"#add8e6",midnightblue:"#191970",lightpink:"#ffb6c1",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",mintcream:"#f5fffa",lightslategray:"#778899",lightslategrey:"#778899",navajowhite:"#ffdead",navy:"#000080",mediumvioletred:"#c71585",powderblue:"#b0e0e6",palegoldenrod:"#eee8aa",oldlace:"#fdf5e6",paleturquoise:"#afeeee",mediumturquoise:"#48d1cc",mediumorchid:"#ba55d3",rebeccapurple:"#663399",lightsteelblue:"#b0c4de",mediumslateblue:"#7b68ee",thistle:"#d8bfd8",tan:"#d2b48c",orchid:"#da70d6",mediumpurple:"#9370db",purple:"#800080",pink:"#ffc0cb",skyblue:"#87ceeb",springgreen:"#00ff7f",palegreen:"#98fb98",red:"#ff0000",yellow:"#ffff00",slateblue:"#6a5acd",lavenderblush:"#fff0f5",peru:"#cd853f",palevioletred:"#db7093",violet:"#ee82ee",teal:"#008080",slategray:"#708090",slategrey:"#708090",aliceblue:"#f0f8ff",darkseagreen:"#8fbc8f",darkolivegreen:"#556b2f",greenyellow:"#adff2f",seagreen:"#2e8b57",seashell:"#fff5ee",tomato:"#ff6347",silver:"#c0c0c0",sienna:"#a0522d",lavender:"#e6e6fa",lightgreen:"#90ee90",orange:"#ffa500",orangered:"#ff4500",steelblue:"#4682b4",royalblue:"#4169e1",turquoise:"#40e0d0",yellowgreen:"#9acd32",salmon:"#fa8072",saddlebrown:"#8b4513",sandybrown:"#f4a460",rosybrown:"#bc8f8f",darksalmon:"#e9967a",lightgoldenrodyellow:"#fafad2",snow:"#fffafa",lightgrey:"#d3d3d3",lightgray:"#d3d3d3",dimgray:"#696969",dimgrey:"#696969",olivedrab:"#6b8e23",olive:"#808000"},n={};for(var o in r)n[r[o]]=o;var i={};e.prototype.toName=function(s){if(!(this.rgba.a||this.rgba.r||this.rgba.g||this.rgba.b))return"transparent";var a,c,l=n[this.toHex()];if(l)return l;if(s?.closest){var A=this.toRgb(),u=1/0,m="black";if(!i.length)for(var d in r)i[d]=new e(r[d]).toRgb();for(var p in r){var C=(a=A,c=i[p],Math.pow(a.r-c.r,2)+Math.pow(a.g-c.g,2)+Math.pow(a.b-c.b,2));C<u&&(u=C,m=p)}return m}},t.string.push([function(s){var a=s.toLowerCase(),c=a==="transparent"?"#0000":r[a];return c?new e(c).toRgb():null},"name"])}var pf=g(()=>{});function Bc(e,t){return Object.fromEntries(Object.entries(e).map(t))}function zn(e,t){return Bc(e,([r,n])=>[r,t.palette.getContrastText(xt(n).toHex())])}function hf(e,t){if(e.length===0)return t;let r=[],n=0;for(let o of e)o>n&&r.push(t.slice(n,o)),n=o+1;return n<t.length&&r.push(t.slice(n)),r.join("")}function Cf(e){return e.end-e.start}function os(e){return e==="-"||e==="."}var xn=g(()=>{wc();pf();yc([bc])});var PT,ai,Sc=g(()=>{Af();wc();pf();xn();yc([bc]);PT={none:{},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:{},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:{A:ts[500],C:es[500],G:rs[500],T:si[500],U:si[500]},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"}},ai=Bc(PT,([e,t])=>[e,Bc(t,([r,n])=>[r,xt(n).toHex()])])});var Ef,ux,OT,fx,mx=g(()=>{Ef=f(b(),1);ii();zI();ux=f(R(),1);Sc();OT=(0,ux.observer)(function({model:e}){let{colorSchemeName:t}=e;return Ef.default.createElement(Lr,{closeAfterItemClick:!0,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:Object.keys(ai).map(r=>({label:r,type:"radio",checked:t===r,onClick:()=>{e.setColorSchemeName(r)}}))},Ef.default.createElement(WI,null))}),fx=OT});var dx,gx,px=g(()=>{"use client";Y();dx=f(L(),1),gx=(0,T.createSvgIcon)((0,dx.jsx)("path",{d:"M19 3h-4.18C14.4 1.84 13.3 1 12 1s-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2m-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1m2 14H7v-2h7zm3-4H7v-2h10zm0-4H7V7h10z"}),"Assignment")});var hx,is,If=g(()=>{"use client";Y();hx=f(L(),1),is=(0,T.createSvgIcon)((0,hx.jsx)("path",{d:"M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2m0 12H4V8h16z"}),"FolderOpen")});var xf,Cx,Ex=g(()=>{"use client";Y();xf=f(L(),1),Cx=(0,T.createSvgIcon)([(0,xf.jsx)("circle",{cx:"12",cy:"12",r:"3.2"},"0"),(0,xf.jsx)("path",{d:"M9 2 7.17 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2h-3.17L15 2zm3 15c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5"},"1")],"PhotoCamera")});var Ix,xx,yx=g(()=>{"use client";Y();Ix=f(L(),1),xx=(0,T.createSvgIcon)((0,Ix.jsx)("path",{d:"M4.25 5.61C6.27 8.2 10 13 10 13v6c0 .55.45 1 1 1h2c.55 0 1-.45 1-1v-6s3.72-4.8 5.74-7.39c.51-.66.04-1.61-.79-1.61H5.04c-.83 0-1.3.95-.79 1.61"}),"FilterAlt")});var wx,bx,Bx=g(()=>{"use client";Y();wx=f(L(),1),bx=(0,T.createSvgIcon)((0,wx.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"}),"Search")});var Sx,Qx,Mx=g(()=>{"use client";Y();Sx=f(L(),1),Qx=(0,T.createSvgIcon)((0,Sx.jsx)("path",{d:"M3 18h6v-2H3zM3 6v2h18V6zm0 7h12v-2H3z"}),"Sort")});var vx,Tx,_x=g(()=>{"use client";Y();vx=f(L(),1),Tx=(0,T.createSvgIcon)((0,vx.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")});function Dx(e){return yf[Math.min(e,yf.length-1)]}var yf,wf,bf=g(()=>{yf=[["#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"]];wf=yf});var Nx={};Je(Nx,{default:()=>qT});var ue,kx,ss,Qc,GT,HT,UT,qT,Lx=g(()=>{ue=f(b(),1),kx=f(ye(),1),ss=f(_(),1),Qc=f(R(),1);bf();GT=(0,Qc.observer)(function({model:e}){let{featureFilters:t}=e;return ue.default.createElement("div",null,ue.default.createElement(ss.Button,{onClick:()=>{for(let r of t.keys())e.setFilter(r,!0)}},"Toggle all on"),ue.default.createElement(ss.Button,{onClick:()=>{for(let r of t.keys())e.setFilter(r,!1)}},"Toggle all off"))}),HT=(0,Qc.observer)(function({model:e}){let{tidyInterProAnnotationTypes:t,featureFilters:r}=e,n=[...t.values()],o=Dx(n.length-1);return ue.default.createElement(ue.default.Fragment,null,ue.default.createElement(GT,{model:e}),ue.default.createElement("table",null,ue.default.createElement("thead",null,ue.default.createElement("tr",null,ue.default.createElement("td",null),ue.default.createElement("td",null,"accession"),ue.default.createElement("td",null,"name"),ue.default.createElement("td",null,"description"))),ue.default.createElement("tbody",null,n.map(({accession:i,name:s,description:a},c)=>ue.default.createElement("tr",{key:i},ue.default.createElement("td",null,ue.default.createElement("input",{type:"checkbox",checked:r.get(i)??!1,onChange:()=>{e.setFilter(i,!e.featureFilters.get(i))}})),ue.default.createElement("td",null,i),ue.default.createElement("td",null,s),ue.default.createElement("td",null,a),ue.default.createElement("td",null,ue.default.createElement("div",{style:{width:20,height:20,background:o[c]||"black"}})))))))}),UT=(0,Qc.observer)(function({onClose:e,model:t}){return ue.default.createElement(kx.Dialog,{onClose:()=>{e()},open:!0,title:"Feature filters",maxWidth:"xl"},ue.default.createElement(ss.DialogContent,null,ue.default.createElement(HT,{model:t})))}),qT=UT});async function Fx(e,t){let r=await fetch(e,t);if(!r.ok)throw new Error(`HTTP ${r.status} fetching ${e} ${await r.text()}`);return r}async function Bf(e,t){return(await Fx(e,t)).text()}async function Mc(e,t){return(await Fx(e,t)).json()}function Rx(e){return new Promise(t=>setTimeout(t,e))}var Sf=g(()=>{});var Gx={};Je(Gx,{default:()=>JT});var he,Px,Qf,Be,Ox,jT,JT,Hx=g(()=>{he=f(b(),1),Px=f(ye(),1),Qf=f(ge(),1),Be=f(_(),1),Ox=f(R(),1);Sf();jT=(0,Ox.observer)(function({handleClose:e,model:t}){let[r,n]=(0,he.useState)(),[o,i]=(0,he.useState)("file"),[s,a]=(0,he.useState)("");return he.default.createElement(Px.Dialog,{maxWidth:"xl",title:"Open protein domains from file",onClose:()=>{e()},open:!0},he.default.createElement(Be.DialogContent,null,he.default.createElement("div",null,he.default.createElement(Be.Typography,null,"Open a JSON file of InterProScan results that you run remotely on EBI servers or locally"),he.default.createElement("div",{style:{display:"flex",margin:30}},he.default.createElement(Be.FormControl,{component:"fieldset"},he.default.createElement(Be.RadioGroup,{value:o,onChange:c=>{i(c.target.value)}},he.default.createElement(Be.FormControlLabel,{value:"url",control:he.default.createElement(Be.Radio,null),label:"URL"}),he.default.createElement(Be.FormControlLabel,{value:"file",control:he.default.createElement(Be.Radio,null),label:"File"}))),o==="url"?he.default.createElement("div",null,he.default.createElement(Be.Typography,null,"Open a InterProScan JSON file remote URL"),he.default.createElement(Be.TextField,{label:"URL",value:s,onChange:c=>{a(c.target.value)}})):null,o==="file"?he.default.createElement("div",{style:{paddingTop:20}},he.default.createElement(Be.Typography,null,"Open a InterProScan JSON file file from your local drive"),he.default.createElement(Be.Button,{variant:"outlined",component:"label"},"Choose File",he.default.createElement("input",{type:"file",hidden:!0,onChange:({target:c})=>{let l=c.files?.[0];l&&n(l)}}))):null))),he.default.createElement(Be.DialogActions,null,he.default.createElement(Be.Button,{variant:"contained",color:"primary",onClick:()=>{(async()=>{try{let c=r?JSON.parse(await r.text()):await Mc(s);t.setInterProAnnotations(Object.fromEntries(c.results.map(l=>[l.xref[0].id,l]))),t.setShowDomains(!0),(0,Qf.getSession)(t).notify("Loaded interproscan results","success")}catch(c){console.error(c),(0,Qf.getSession)(t).notifyError(`${c}`,c)}finally{t.setStatus()}})(),e()}},"Open results")))}),JT=jT});async function VT({seq:e,onProgress:t,onJobId:r,programs:n,model:o}){let i=await Bf(`${vf}/iprscan5/run`,{method:"POST",body:new URLSearchParams({email:"colin.diesh@gmail.com",sequence:e,programs:n.join(",")})});r?.(i),await WT({jobId:i,onProgress:t}),await zT({jobId:i,model:o})}function YT(e){return Mc(`${vf}/iprscan5/result/${e}/json`)}async function WT({onProgress:e,jobId:t}){let r=`${vf}/iprscan5/status/${t}`;try{for(;;){for(let o=0;o<10;o++)await Rx(1e3),e({msg:`Checking status ${10-o}`,url:r});let n=await Bf(r);if(n.includes("FINISHED"))break;if(n.includes("FAILURE"))throw new Error(`Failed to run: jobId ${t}`)}}finally{e()}}async function Ux({algorithm:e,seq:t,programs:r,onJobId:n,onProgress:o,model:i}){try{if(o({msg:`Launching ${e} MSA`}),e==="interproscan")await VT({seq:t,onJobId:n,onProgress:o,programs:r,model:i});else throw new Error("unknown algorithm")}finally{o()}}async function zT({jobId:e,model:t}){try{t.setStatus({msg:`Downloading results of ${e} (for larger sequences this can be slow, click status to download and upload in the manual tab)`,url:`https://www.ebi.ac.uk/Tools/services/rest/iprscan5/result/${e}/json`});let r=await YT(e);t.setInterProAnnotations(Object.fromEntries(r.results.map(n=>[n.xref[0].id,n]))),t.setShowDomains(!0),(0,Mf.getSession)(t).notify(`Loaded interproscan ${e} results`,"success")}catch(r){console.error(r),(0,Mf.getSession)(t).notifyError(`${r}`,r)}finally{t.setStatus()}}var Mf,vf,qx=g(()=>{Mf=f(ge(),1);Sf();vf="https://www.ebi.ac.uk/Tools/services/rest"});var Yx={};Je(Yx,{default:()=>KT});var Se,jx,Jx,Ot,Vx,$T,KT,Wx=g(()=>{Se=f(b(),1),jx=f(ye(),1),Jx=f(ge(),1),Ot=f(_(),1),Vx=f(R(),1);qx();$T=(0,Vx.observer)(function({handleClose:e,model:t}){let[r,n]=(0,Se.useState)([{name:"NCBIfam",description:"NCBI RefSeq FAMs including TIGRFAMs",category:"Families, domains, sites & repeats",checked:!0},{name:"SFLD",description:"Structure function linkage database",category:"Families, domains, sites & repeats",checked:!0},{name:"Phobius",checked:!0,description:"A combined transmembrane topology and signal peptide predictor",category:"Other sequence features"},{name:"SignalP",checked:!0,category:"Other sequence features"},{name:"SignalP_EUK",category:"Other category",checked:!0},{name:"SignalP_GRAM_POSITIVE",category:"Other category",checked:!0},{name:"SignalP_GRAM_NEGATIVE",checked:!0,category:"Other category"},{name:"SuperFamily",category:"Structural domains",checked:!0},{name:"Panther",category:"Families, domains, sites & repeats",checked:!0},{name:"Gene3d",category:"Structural domains",checked:!0},{name:"HAMAP",category:"Families, domains, sites & repeats",checked:!0},{name:"PrositeProfiles",category:"Families, domains, sites & repeats",checked:!0},{name:"PrositePatterns",category:"Families, domains, sites & repeats",checked:!0},{name:"Coils",category:"Other sequence features",checked:!0},{name:"SMART",category:"Families, domains, sites & repeats",checked:!0},{name:"CDD",description:"Conserved Domains Database",category:"Families, domains, sites & repeats",checked:!0},{name:"PRINTS",category:"Families, domains, sites & repeats",checked:!0},{name:"PfamA",category:"Families, domains, sites & repeats",checked:!0},{name:"MobiDBLite",checked:!0,category:"Other sequence features"},{name:"PIRSF",checked:!0,category:"Other category"},{name:"TMHMM",checked:!0,category:"Other sequence features"},{name:"AntiFam",checked:!0,category:"Other category"},{name:"FunFam",checked:!0,category:"Other category"},{name:"PIRSR",checked:!0,category:"Families, domains, sites & repeats"}]),o=r.filter(a=>a.checked).map(a=>a.name),[i,s]=(0,Se.useState)(!1);return Se.default.createElement(jx.Dialog,{maxWidth:"xl",title:"Query InterProScan API for domains",onClose:()=>{e()},open:!0},Se.default.createElement(Ot.DialogContent,null,Se.default.createElement(Ot.Typography,null,"This will run InterProScan via the InterProScan API on all rows of the current MSA"),Se.default.createElement(Ot.Button,{onClick:()=>{s(!i)}},i?"Hide":"Show"," advanced options"),i?Se.default.createElement("div",null,Se.default.createElement(Ot.Typography,null,"Select algorithms for InterProScan to run"),Se.default.createElement("div",null,Se.default.createElement(Ot.Button,{variant:"contained",color:"secondary",onClick:()=>{n(r.map(a=>({...a,checked:!1})))}},"Select none"),Se.default.createElement(Ot.Button,{variant:"contained",color:"primary",onClick:()=>{n(r.map(a=>({...a,checked:!0})))}},"Select all")),Se.default.createElement("table",null,Se.default.createElement("tbody",null,r.toSorted((a,c)=>a.category.localeCompare(c.category)).map(({name:a,checked:c,category:l})=>Se.default.createElement("tr",{key:a},Se.default.createElement("td",null,Se.default.createElement("input",{type:"checkbox",key:a,checked:c,onChange:()=>{n(r.map(A=>A.name===a?{...A,checked:!A.checked}:A))}})),Se.default.createElement("td",null,a),Se.default.createElement("td",null,l)))))):null),Se.default.createElement(Ot.DialogActions,null,Se.default.createElement(Ot.Button,{variant:"contained",color:"secondary",onClick:()=>{e()}},"Cancel"),Se.default.createElement(Ot.Button,{variant:"contained",color:"primary",onClick:()=>{(async()=>{try{let{rows:a}=t;if(a.length>140)throw new Error("Too many sequences, please run InterProScan offline");await Ux({algorithm:"interproscan",programs:o,seq:a.map(c=>[c[0],c[1].replaceAll("-","")]).filter(c=>!!c[1]).map(c=>`>${c[0]}
|
|
28
28
|
${c[1]}`).join(`
|
|
29
|
-
`),onProgress:c=>{t.setStatus(c)},model:t})}catch(a){console.error(a),(0,Fx.getSession)(t).notifyError(`${a}`,a)}finally{t.setStatus()}})(),e()}},"Send sequences to InterProScan")))}),UT=HT});function Gx({model:e}){let{showDomains:t,actuallyShowDomains:r,subFeatureRows:n,noDomains:o}=e;return[{label:"Open domains...",icon:ns,onClick:()=>{e.queueDialog(i=>[jT,{handleClose:i,model:e}])}},{label:"Query InterProScan for domains...",icon:gx,onClick:()=>{e.queueDialog(i=>[JT,{handleClose:i,model:e}])}},{label:`Show domains${o?" (no domains loaded)":""}`,disabled:o,icon:xx,checked:r?t:!1,type:"checkbox",onClick:()=>{e.setShowDomains(!t)}},{label:`Use sub-row layout${o?" (no domains loaded)":""}`,disabled:o,checked:r?n:!1,icon:Cx,type:"checkbox",onClick:()=>{e.setSubFeatureRows(!n)}},{label:`Filter domains${o?" (no domains loaded)":""}`,icon:fx,disabled:o,onClick:()=>{e.queueDialog(i=>[qT,{onClose:i,model:e}])}}]}var Sc,qT,jT,JT,Hx=g(()=>{Sc=f(B(),1);dx();mf();px();Ex();yx();qT=(0,Sc.lazy)(()=>Promise.resolve().then(()=>(Sx(),Bx))),jT=(0,Sc.lazy)(()=>Promise.resolve().then(()=>(Dx(),_x))),JT=(0,Sc.lazy)(()=>Promise.resolve().then(()=>(Ox(),Px)))});var Jx=H((dG,jx)=>{"use strict";var VT=function(t){return YT(t)&&!WT(t)};function YT(e){return!!e&&typeof e=="object"}function WT(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||KT(e)}var zT=typeof Symbol=="function"&&Symbol.for,$T=zT?Symbol.for("react.element"):60103;function KT(e){return e.$$typeof===$T}function XT(e){return Array.isArray(e)?[]:{}}function is(e,t){return t.clone!==!1&&t.isMergeableObject(e)?li(XT(e),e,t):e}function ZT(e,t,r){return e.concat(t).map(function(n){return is(n,r)})}function e_(e,t){if(!t.customMerge)return li;var r=t.customMerge(e);return typeof r=="function"?r:li}function t_(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function Ux(e){return Object.keys(e).concat(t_(e))}function qx(e,t){try{return t in e}catch{return!1}}function r_(e,t){return qx(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function n_(e,t,r){var n={};return r.isMergeableObject(e)&&Ux(e).forEach(function(o){n[o]=is(e[o],r)}),Ux(t).forEach(function(o){r_(e,o)||(qx(e,o)&&r.isMergeableObject(t[o])?n[o]=e_(o,r)(e[o],t[o],r):n[o]=is(t[o],r))}),n}function li(e,t,r){r=r||{},r.arrayMerge=r.arrayMerge||ZT,r.isMergeableObject=r.isMergeableObject||VT,r.cloneUnlessOtherwiseSpecified=is;var n=Array.isArray(t),o=Array.isArray(e),i=n===o;return i?n?r.arrayMerge(e,t,r):n_(e,t,r):is(t,r)}li.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(n,o){return li(n,o,r)},{})};var o_=li;jx.exports=o_});function Wx(){return{palette:{...Qc,mode:void 0},components:{MuiLink:{styleOverrides:{root:({theme:e})=>({color:e.palette.tertiary.main})}}}}}function E_(){return{...Wx(),name:"Default (from config)"}}function I_(){return{...Wx(),name:"Light (stock)"}}function x_(){return{name:"Dark (stock)",palette:{...Qc,mode:"dark"},components:{MuiAppBar:{defaultProps:{enableColorOnDark:!0},styleOverrides:{root:({theme:e})=>e.palette.primary.main}}}}}function y_(){return{name:"Dark (minimal)",palette:{...Qc,mode:"dark",primary:{main:xn[700]},secondary:{main:xn[800]},tertiary:Se.palette.augmentColor({color:{main:xn[900]}})}}}function w_(){return{name:"Light (minimal)",palette:{...Qc,primary:{main:xn[900]},secondary:{main:xn[800]},tertiary:Se.palette.augmentColor({color:{main:xn[900]}})}}}var Yx,i_,Se,s_,a_,c_,Vx,gG,l_,A_,u_,f_,d_,m_,g_,p_,h_,C_,Qc,pG,zx=g(()=>{Yx=f(N(),1);nf();i_=f(Jx(),1),Se=(0,Yx.createTheme)(),s_=Se.palette.augmentColor({color:{main:"#0D233F"}}),a_=Se.palette.augmentColor({color:{main:"#721E63"}}),c_=Se.palette.augmentColor({color:{main:"#135560"}}),Vx=Se.palette.augmentColor({color:{main:"#FFB11D"}}),gG=Se.palette.augmentColor({color:{main:"#aaa"}}),l_={A:Se.palette.augmentColor({color:Zi}),C:Se.palette.augmentColor({color:Xi}),G:Se.palette.augmentColor({color:es}),T:Se.palette.augmentColor({color:ai})},A_=[null,Se.palette.augmentColor({color:{main:"#FF8080"}}),Se.palette.augmentColor({color:{main:"#80FF80"}}),Se.palette.augmentColor({color:{main:"#8080FF"}}),Se.palette.augmentColor({color:{main:"#8080FF"}}),Se.palette.augmentColor({color:{main:"#80FF80"}}),Se.palette.augmentColor({color:{main:"#FF8080"}})],u_=[null,Se.palette.augmentColor({color:{main:"#8f8f8f"}}),Se.palette.augmentColor({color:{main:"#adadad"}}),Se.palette.augmentColor({color:{main:"#d8d8d8"}}),Se.palette.augmentColor({color:{main:"#d8d8d8"}}),Se.palette.augmentColor({color:{main:"#adadad"}}),Se.palette.augmentColor({color:{main:"#8f8f8f"}})],f_="#e22",d_="#3e3",m_="#800080",g_="#808080",p_="#f00",h_="#00f",C_="#97b8c9",Qc={primary:s_,secondary:a_,tertiary:c_,quaternary:Vx,highlight:Vx,stopCodon:f_,startCodon:d_,insertion:m_,deletion:g_,softclip:h_,hardclip:p_,bases:l_,frames:u_,framesCDS:A_,skip:C_};pG={default:E_(),lightStock:I_(),lightMinimal:w_(),darkMinimal:y_(),darkStock:x_()}});var $x=g(()=>{});var Kx=g(()=>{});var bf=g(()=>{zx();Xu();$x();Kx()});function wn({value:e}){let{classes:t}=b_(),r=/^https?:\/\//.exec(`${e}`);return(0,Mc.jsx)("div",{className:t.fieldValue,children:(0,Xx.isValidElement)(e)?e:r?(0,Mc.jsx)(Zx.Link,{href:`${e}`,children:`${e}`}):(0,Mc.jsx)(En,{html:Xt(e)?JSON.stringify(e):String(e)})})}var Mc,Xx,Zx,b_,vc=g(()=>{Mc=f(L(),1),Xx=f(B(),1),Zx=f(N(),1);bf();pn();Et();b_=te()(e=>({fieldValue:{wordBreak:"break-word",maxHeight:300,fontSize:12,padding:e.spacing(.5),overflow:"auto"}}))});function Fr({description:e,name:t,width:r,prefix:n=[]}){let{classes:o}=B_(),i=[...n,t].join(".");return e?(0,Tc.jsx)(ey.Tooltip,{title:e,placement:"left",children:(0,Tc.jsx)("div",{className:nc(o.fieldDescription,o.fieldName),children:i})}):(0,Tc.jsx)("div",{className:o.fieldName,style:{width:r},children:i})}var Tc,ey,B_,ss=g(()=>{Tc=f(L(),1),ey=f(N(),1);Et();B_=te()(e=>({fieldDescription:{"&:hover":{background:e.palette.mode==="dark"?"#e65100":"yellow"}},fieldName:{wordBreak:"break-all",minWidth:90,borderBottom:"1px solid #0003",fontSize:12,background:e.palette.action.disabledBackground,marginRight:e.spacing(1),padding:e.spacing(.5)}}))});function Sf({name:e,value:t,description:r,formatter:n,prefix:o=[]}){let{classes:i}=S_(),[s,a]=(0,ty.useState)(!1),c=t.length>Bf,l=c&&!s?t.slice(0,Bf):t;return t.length===1?Xt(t[0])?(0,bt.jsx)(Rr,{formatter:n,attributes:t[0],prefix:[...o,e]}):(0,bt.jsxs)("div",{className:i.field,children:[(0,bt.jsx)(Fr,{prefix:o,description:r,name:e}),(0,bt.jsx)(wn,{value:n?n(t[0],e):t[0]})]}):t.every(A=>Xt(A))?(0,bt.jsx)(bt.Fragment,{children:t.map((A,u)=>(0,bt.jsx)(Rr,{formatter:n,attributes:A,prefix:[...o,`${e}-${u}`]},`${JSON.stringify(A)}-${u}`))}):(0,bt.jsxs)("div",{className:i.field,children:[(0,bt.jsx)(Fr,{prefix:o,description:r,name:e}),l.map((A,u)=>(0,bt.jsx)("div",{className:i.fieldSubvalue,children:(0,bt.jsx)(wn,{value:n?n(A,e):A})},`${JSON.stringify(A)}-${u}`)),c?(0,bt.jsx)("button",{type:"button",onClick:()=>{a(A=>!A)},children:s?"Show less":`Showing ${Bf} of ${t.length}. Show all...`}):null]})}var bt,ty,Bf,S_,ry=g(()=>{bt=f(L(),1),ty=f(B(),1);_c();vc();ss();pn();Et();Bf=100,S_=te()(e=>({field:{display:"flex",flexWrap:"wrap"},fieldSubvalue:{wordBreak:"break-word",maxHeight:300,padding:e.spacing(.5),border:`1px solid ${e.palette.action.selected}`,boxSizing:"border-box",overflow:"auto"}}))});var oy=H((FG,ny)=>{ny.exports=JBrowseExports["@mui/x-data-grid"]});function Qf({children:e,style:t}){let{classes:r}=Q_();return(0,iy.jsx)("div",{className:r.flexContainer,style:t,children:e})}var iy,Q_,sy=g(()=>{iy=f(L(),1);Et();Q_=te()({flexContainer:{display:"flex",flexDirection:"column"}})});function Mf({value:e,prefix:t,name:r}){let{classes:n}=M_(),[o,i]=(0,ay.useState)(!1),s=Object.keys(e[0]).sort(),a=new Set(s),c=Object.entries(e).map(([u,d])=>{let{id:m,...p}=d;return{id:u,identifier:m,...p}});for(let u of e)for(let d of Object.keys(u))a.add(d);let l;a.has("id")?(a.delete("id"),l=["identifier",...a]):l=[...a];let A=l.map(u=>Sh(c.map(d=>d[u])));return a.size<s.length+5?(0,Ir.jsxs)("div",{className:n.margin,children:[(0,Ir.jsx)(Fr,{prefix:t,name:r}),(0,Ir.jsx)(Ai.FormControlLabel,{control:(0,Ir.jsx)(Ai.Checkbox,{checked:o,onChange:u=>{i(u.target.checked)}}),label:(0,Ir.jsx)(Ai.Typography,{variant:"body2",children:"Show options"})}),(0,Ir.jsx)(Qf,{children:(0,Ir.jsx)(cy.DataGrid,{disableRowSelectionOnClick:!0,rows:c,rowHeight:20,columnHeaderHeight:35,hideFooter:c.length<25,showToolbar:o,columns:l.map((u,d)=>({field:u,width:A[d],renderCell:({value:m})=>(0,Ir.jsx)("div",{className:n.cell,children:(0,Ir.jsx)(En,{html:JA(m||"")})})}))})})]}):null}var Ir,ay,Ai,cy,M_,ly=g(()=>{Ir=f(L(),1),ay=f(B(),1),Ai=f(N(),1),cy=f(oy(),1);ss();sy();bf();pn();Et();M_=te()(e=>({margin:{marginBottom:e.spacing(4)},cell:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}}))});function vf({name:e,value:t,description:r,prefix:n,width:o,formatter:i}){let{classes:s}=v_();return t!=null?(0,as.jsxs)("div",{className:s.field,children:[(0,as.jsx)(Fr,{prefix:n,description:r,name:e,width:o}),(0,as.jsx)(wn,{value:i?i(t,e):t})]}):null}var as,v_,Ay=g(()=>{as=f(L(),1);vc();ss();Et();v_=te()({field:{display:"flex",flexWrap:"wrap"}})});function Tf({value:e,prefix:t,name:r}){let{classes:n}=T_(),{uri:o,baseUri:i=""}=e,s;try{s=new URL(o,i).href}catch{s=o}return(0,cs.jsxs)("div",{className:n.field,children:[(0,cs.jsx)(Fr,{prefix:t,name:r}),(0,cs.jsx)(wn,{value:s})]})}var cs,T_,uy=g(()=>{cs=f(L(),1);vc();ss();Et();T_=te()({field:{display:"flex",flexWrap:"wrap"}})});function fy(e,t){return Math.ceil(VA(e.map(r=>qA([...t,r[0]].join("."),12))))+10}function dy(e,t={}){let r=t;for(let n of e)Xt(r)&&(r=r[n]);return typeof r=="string"?r:Xt(r)&&typeof r.Description=="string"?r.Description:void 0}var my=g(()=>{pn()});function Rr(e){let{attributes:t,omit:r=[],omitSingleLevel:n=[],descriptions:o,formatter:i,hideUris:s,prefix:a=[]}=e,c=new Set([...r,...D_,...n]),{__jbrowsefmt:l,...A}=t,u=Object.entries({...A,...l}).filter(([m,p])=>p!=null&&!c.has(m)),d=fy(u,a);return(0,nn.jsx)(nn.Fragment,{children:u.map(([m,p])=>{let C=dy([...a,m],o);if(Array.isArray(p))return p.length>1&&p.every(x=>Xt(x))?(0,nn.jsx)(Mf,{name:m,prefix:a,value:p},m):(0,nn.jsx)(Sf,{name:m,value:p,formatter:i,description:C,prefix:a},m);if(Xt(p)){let{omitSingleLevel:x,...I}=e;return wa(p)?s?null:(0,nn.jsx)(Tf,{name:m,prefix:a,value:p},m):(0,nn.jsx)(Rr,{...I,formatter:i,attributes:p,descriptions:o,prefix:[...a,m]},m)}else return(0,nn.jsx)(vf,{name:m,formatter:i,value:p,description:C,prefix:a,width:Math.min(d,__)},m)})})}var nn,__,D_,_c=g(()=>{nn=f(L(),1);ry();ly();Ay();uy();my();pn();__=170,D_=["__jbrowsefmt","length","position","subfeatures","uniqueId","exonFrames","parentId","thickStart","thickEnd","_lineHash"]});function Xn({children:e,title:t,defaultExpanded:r=!0}){let{classes:n}=k_();return(0,Kn.jsxs)(bn.Accordion,{defaultExpanded:r,children:[(0,Kn.jsx)(bn.AccordionSummary,{expandIcon:(0,Kn.jsx)(la,{className:n.icon}),children:(0,Kn.jsx)(bn.Typography,{variant:"button",children:t})}),(0,Kn.jsx)(bn.AccordionDetails,{className:n.expansionPanelDetails,children:e})]})}var Kn,bn,k_,_f=g(()=>{Kn=f(L(),1);gA();bn=f(N(),1);Et();k_=te()(e=>({expansionPanelDetails:{display:"block",padding:e.spacing(1)},icon:{color:e.palette.tertiary.contrastText||"#fff"}}))});function ft({checked:e,label:t,disabled:r,onChange:n}){return Dc.default.createElement("div",null,Dc.default.createElement(kc.FormControlLabel,{control:Dc.default.createElement(kc.Checkbox,{disabled:r,checked:e,onChange:n}),label:t}))}var Dc,kc,Nc=g(()=>{Dc=f(B(),1),kc=f(N(),1)});function ls({str:e}){let{classes:t}=N_(),[r,n]=(0,xr.useState)(!1),[o,i]=(0,xr.useState)(!1),[s,a]=(0,xr.useState)(!1),c=A=>A.replaceAll("-","").replaceAll(".",""),l=e.map(([A,u])=>[A,o?u:c(u)]).filter(A=>s?!0:!!A[1]).map(([A,u])=>`>${A}
|
|
29
|
+
`),onProgress:c=>{t.setStatus(c)},model:t})}catch(a){console.error(a),(0,Jx.getSession)(t).notifyError(`${a}`,a)}finally{t.setStatus()}})(),e()}},"Send sequences to InterProScan")))}),KT=$T});function zx({model:e}){let{showDomains:t,actuallyShowDomains:r,subFeatureRows:n,noDomains:o}=e;return[{label:"Open domains...",icon:is,onClick:()=>{e.queueDialog(i=>[ZT,{handleClose:i,model:e}])}},{label:"Query InterProScan for domains...",icon:bx,onClick:()=>{e.queueDialog(i=>[e_,{handleClose:i,model:e}])}},{label:`Show domains${o?" (no domains loaded)":""}`,disabled:o,icon:Tx,checked:r?t:!1,type:"checkbox",onClick:()=>{e.setShowDomains(!t)}},{label:`Use sub-row layout${o?" (no domains loaded)":""}`,disabled:o,checked:r?n:!1,icon:Qx,type:"checkbox",onClick:()=>{e.setSubFeatureRows(!n)}},{label:`Filter domains${o?" (no domains loaded)":""}`,icon:xx,disabled:o,onClick:()=>{e.queueDialog(i=>[XT,{onClose:i,model:e}])}}]}var vc,XT,ZT,e_,$x=g(()=>{vc=f(b(),1);yx();If();Bx();Mx();_x();XT=(0,vc.lazy)(()=>Promise.resolve().then(()=>(Lx(),Nx))),ZT=(0,vc.lazy)(()=>Promise.resolve().then(()=>(Hx(),Gx))),e_=(0,vc.lazy)(()=>Promise.resolve().then(()=>(Wx(),Yx)))});var ey=G((OG,Zx)=>{"use strict";var t_=function(t){return r_(t)&&!n_(t)};function r_(e){return!!e&&typeof e=="object"}function n_(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||s_(e)}var o_=typeof Symbol=="function"&&Symbol.for,i_=o_?Symbol.for("react.element"):60103;function s_(e){return e.$$typeof===i_}function a_(e){return Array.isArray(e)?[]:{}}function as(e,t){return t.clone!==!1&&t.isMergeableObject(e)?ci(a_(e),e,t):e}function c_(e,t,r){return e.concat(t).map(function(n){return as(n,r)})}function l_(e,t){if(!t.customMerge)return ci;var r=t.customMerge(e);return typeof r=="function"?r:ci}function A_(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function Kx(e){return Object.keys(e).concat(A_(e))}function Xx(e,t){try{return t in e}catch{return!1}}function u_(e,t){return Xx(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function f_(e,t,r){var n={};return r.isMergeableObject(e)&&Kx(e).forEach(function(o){n[o]=as(e[o],r)}),Kx(t).forEach(function(o){u_(e,o)||(Xx(e,o)&&r.isMergeableObject(t[o])?n[o]=l_(o,r)(e[o],t[o],r):n[o]=as(t[o],r))}),n}function ci(e,t,r){r=r||{},r.arrayMerge=r.arrayMerge||c_,r.isMergeableObject=r.isMergeableObject||t_,r.cloneUnlessOtherwiseSpecified=as;var n=Array.isArray(t),o=Array.isArray(e),i=n===o;return i?n?r.arrayMerge(e,t,r):f_(e,t,r):as(t,r)}ci.all=function(t,r){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(n,o){return ci(n,o,r)},{})};var m_=ci;Zx.exports=m_});function ny(){return{palette:{...Tc,mode:void 0},components:{MuiLink:{styleOverrides:{root:({theme:e})=>({color:e.palette.tertiary.main})}}}}}function M_(){return{...ny(),name:"Default (from config)"}}function v_(){return{...ny(),name:"Light (stock)"}}function T_(){return{name:"Dark (stock)",palette:{...Tc,mode:"dark"},components:{MuiAppBar:{defaultProps:{enableColorOnDark:!0},styleOverrides:{root:({theme:e})=>e.palette.primary.main}}}}}function __(){return{name:"Dark (minimal)",palette:{...Tc,mode:"dark",primary:{main:In[700]},secondary:{main:In[800]},tertiary:Qe.palette.augmentColor({color:{main:In[900]}})}}}function D_(){return{name:"Light (minimal)",palette:{...Tc,primary:{main:In[900]},secondary:{main:In[800]},tertiary:Qe.palette.augmentColor({color:{main:In[900]}})}}}var ry,d_,Qe,g_,p_,h_,ty,HG,C_,E_,I_,x_,y_,w_,b_,B_,S_,Q_,Tc,UG,oy=g(()=>{ry=f(_(),1);Af();d_=f(ey(),1),Qe=(0,ry.createTheme)(),g_=Qe.palette.augmentColor({color:{main:"#0D233F"}}),p_=Qe.palette.augmentColor({color:{main:"#721E63"}}),h_=Qe.palette.augmentColor({color:{main:"#135560"}}),ty=Qe.palette.augmentColor({color:{main:"#FFB11D"}}),HG=Qe.palette.augmentColor({color:{main:"#aaa"}}),C_={A:Qe.palette.augmentColor({color:ts}),C:Qe.palette.augmentColor({color:es}),G:Qe.palette.augmentColor({color:rs}),T:Qe.palette.augmentColor({color:si})},E_=[null,Qe.palette.augmentColor({color:{main:"#FF8080"}}),Qe.palette.augmentColor({color:{main:"#80FF80"}}),Qe.palette.augmentColor({color:{main:"#8080FF"}}),Qe.palette.augmentColor({color:{main:"#8080FF"}}),Qe.palette.augmentColor({color:{main:"#80FF80"}}),Qe.palette.augmentColor({color:{main:"#FF8080"}})],I_=[null,Qe.palette.augmentColor({color:{main:"#8f8f8f"}}),Qe.palette.augmentColor({color:{main:"#adadad"}}),Qe.palette.augmentColor({color:{main:"#d8d8d8"}}),Qe.palette.augmentColor({color:{main:"#d8d8d8"}}),Qe.palette.augmentColor({color:{main:"#adadad"}}),Qe.palette.augmentColor({color:{main:"#8f8f8f"}})],x_="#e22",y_="#3e3",w_="#800080",b_="#808080",B_="#f00",S_="#00f",Q_="#97b8c9",Tc={primary:g_,secondary:p_,tertiary:h_,quaternary:ty,highlight:ty,stopCodon:x_,startCodon:y_,insertion:w_,deletion:b_,softclip:S_,hardclip:B_,bases:C_,frames:I_,framesCDS:E_,skip:Q_};UG={default:M_(),lightStock:v_(),lightMinimal:D_(),darkMinimal:__(),darkStock:T_()}});var iy=g(()=>{});var sy=g(()=>{});var Tf=g(()=>{oy();of();iy();sy()});function yn({value:e}){let{classes:t}=k_(),r=/^https?:\/\//.exec(`${e}`);return(0,_c.jsx)("div",{className:t.fieldValue,children:(0,ay.isValidElement)(e)?e:r?(0,_c.jsx)(cy.Link,{href:`${e}`,children:`${e}`}):(0,_c.jsx)(Cn,{html:Xt(e)?JSON.stringify(e):String(e)})})}var _c,ay,cy,k_,Dc=g(()=>{_c=f(L(),1),ay=f(b(),1),cy=f(_(),1);Tf();gn();ht();k_=Z()(e=>({fieldValue:{wordBreak:"break-word",maxHeight:300,fontSize:12,padding:e.spacing(.5),overflow:"auto"}}))});function Fr({description:e,name:t,width:r,prefix:n=[]}){let{classes:o}=N_(),i=[...n,t].join(".");return e?(0,kc.jsx)(ly.Tooltip,{title:e,placement:"left",children:(0,kc.jsx)("div",{className:sc(o.fieldDescription,o.fieldName),children:i})}):(0,kc.jsx)("div",{className:o.fieldName,style:{width:r},children:i})}var kc,ly,N_,cs=g(()=>{kc=f(L(),1),ly=f(_(),1);ht();N_=Z()(e=>({fieldDescription:{"&:hover":{background:e.palette.mode==="dark"?"#e65100":"yellow"}},fieldName:{wordBreak:"break-all",minWidth:90,borderBottom:"1px solid #0003",fontSize:12,background:e.palette.action.disabledBackground,marginRight:e.spacing(1),padding:e.spacing(.5)}}))});function Df({name:e,value:t,description:r,formatter:n,prefix:o=[]}){let{classes:i}=L_(),[s,a]=(0,Ay.useState)(!1),c=t.length>_f,l=c&&!s?t.slice(0,_f):t;return t.length===1?Xt(t[0])?(0,yt.jsx)(Rr,{formatter:n,attributes:t[0],prefix:[...o,e]}):(0,yt.jsxs)("div",{className:i.field,children:[(0,yt.jsx)(Fr,{prefix:o,description:r,name:e}),(0,yt.jsx)(yn,{value:n?n(t[0],e):t[0]})]}):t.every(A=>Xt(A))?(0,yt.jsx)(yt.Fragment,{children:t.map((A,u)=>(0,yt.jsx)(Rr,{formatter:n,attributes:A,prefix:[...o,`${e}-${u}`]},`${JSON.stringify(A)}-${u}`))}):(0,yt.jsxs)("div",{className:i.field,children:[(0,yt.jsx)(Fr,{prefix:o,description:r,name:e}),l.map((A,u)=>(0,yt.jsx)("div",{className:i.fieldSubvalue,children:(0,yt.jsx)(yn,{value:n?n(A,e):A})},`${JSON.stringify(A)}-${u}`)),c?(0,yt.jsx)("button",{type:"button",onClick:()=>{a(A=>!A)},children:s?"Show less":`Showing ${_f} of ${t.length}. Show all...`}):null]})}var yt,Ay,_f,L_,uy=g(()=>{yt=f(L(),1),Ay=f(b(),1);Nc();Dc();cs();gn();ht();_f=100,L_=Z()(e=>({field:{display:"flex",flexWrap:"wrap"},fieldSubvalue:{wordBreak:"break-word",maxHeight:300,padding:e.spacing(.5),border:`1px solid ${e.palette.action.selected}`,boxSizing:"border-box",overflow:"auto"}}))});var my=G((c6,fy)=>{fy.exports=JBrowseExports["@mui/x-data-grid"]});function kf({children:e,style:t}){let{classes:r}=F_();return(0,dy.jsx)("div",{className:r.flexContainer,style:t,children:e})}var dy,F_,gy=g(()=>{dy=f(L(),1);ht();F_=Z()({flexContainer:{display:"flex",flexDirection:"column"}})});function Nf({value:e,prefix:t,name:r}){let{classes:n}=R_(),[o,i]=(0,py.useState)(!1),s=Object.keys(e[0]).sort(),a=new Set(s),c=Object.entries(e).map(([u,m])=>{let{id:d,...p}=m;return{id:u,identifier:d,...p}});for(let u of e)for(let m of Object.keys(u))a.add(m);let l;a.has("id")?(a.delete("id"),l=["identifier",...a]):l=[...a];let A=l.map(u=>kh(c.map(m=>m[u])));return a.size<s.length+5?(0,Ir.jsxs)("div",{className:n.margin,children:[(0,Ir.jsx)(Fr,{prefix:t,name:r}),(0,Ir.jsx)(li.FormControlLabel,{control:(0,Ir.jsx)(li.Checkbox,{checked:o,onChange:u=>{i(u.target.checked)}}),label:(0,Ir.jsx)(li.Typography,{variant:"body2",children:"Show options"})}),(0,Ir.jsx)(kf,{children:(0,Ir.jsx)(hy.DataGrid,{disableRowSelectionOnClick:!0,rows:c,rowHeight:20,columnHeaderHeight:35,hideFooter:c.length<25,showToolbar:o,columns:l.map((u,m)=>({field:u,width:A[m],renderCell:({value:d})=>(0,Ir.jsx)("div",{className:n.cell,children:(0,Ir.jsx)(Cn,{html:$A(d||"")})})}))})})]}):null}var Ir,py,li,hy,R_,Cy=g(()=>{Ir=f(L(),1),py=f(b(),1),li=f(_(),1),hy=f(my(),1);cs();gy();Tf();gn();ht();R_=Z()(e=>({margin:{marginBottom:e.spacing(4)},cell:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}}))});function Lf({name:e,value:t,description:r,prefix:n,width:o,formatter:i}){let{classes:s}=P_();return t!=null?(0,ls.jsxs)("div",{className:s.field,children:[(0,ls.jsx)(Fr,{prefix:n,description:r,name:e,width:o}),(0,ls.jsx)(yn,{value:i?i(t,e):t})]}):null}var ls,P_,Ey=g(()=>{ls=f(L(),1);Dc();cs();ht();P_=Z()({field:{display:"flex",flexWrap:"wrap"}})});function Ff({value:e,prefix:t,name:r}){let{classes:n}=O_(),{uri:o,baseUri:i=""}=e,s;try{s=new URL(o,i).href}catch{s=o}return(0,As.jsxs)("div",{className:n.field,children:[(0,As.jsx)(Fr,{prefix:t,name:r}),(0,As.jsx)(yn,{value:s})]})}var As,O_,Iy=g(()=>{As=f(L(),1);Dc();cs();ht();O_=Z()({field:{display:"flex",flexWrap:"wrap"}})});function xy(e,t){return Math.ceil(KA(e.map(r=>WA([...t,r[0]].join("."),12))))+10}function yy(e,t={}){let r=t;for(let n of e)Xt(r)&&(r=r[n]);return typeof r=="string"?r:Xt(r)&&typeof r.Description=="string"?r.Description:void 0}var wy=g(()=>{gn()});function Rr(e){let{attributes:t,omit:r=[],omitSingleLevel:n=[],descriptions:o,formatter:i,hideUris:s,prefix:a=[]}=e,c=new Set([...r,...H_,...n]),{__jbrowsefmt:l,...A}=t,u=Object.entries({...A,...l}).filter(([d,p])=>p!=null&&!c.has(d)),m=xy(u,a);return(0,nn.jsx)(nn.Fragment,{children:u.map(([d,p])=>{let C=yy([...a,d],o);if(Array.isArray(p))return p.length>1&&p.every(y=>Xt(y))?(0,nn.jsx)(Nf,{name:d,prefix:a,value:p},d):(0,nn.jsx)(Df,{name:d,value:p,formatter:i,description:C,prefix:a},d);if(Xt(p)){let{omitSingleLevel:y,...I}=e;return Sa(p)?s?null:(0,nn.jsx)(Ff,{name:d,prefix:a,value:p},d):(0,nn.jsx)(Rr,{...I,formatter:i,attributes:p,descriptions:o,prefix:[...a,d]},d)}else return(0,nn.jsx)(Lf,{name:d,formatter:i,value:p,description:C,prefix:a,width:Math.min(m,G_)},d)})})}var nn,G_,H_,Nc=g(()=>{nn=f(L(),1);uy();Cy();Ey();Iy();wy();gn();G_=170,H_=["__jbrowsefmt","length","position","subfeatures","uniqueId","exonFrames","parentId","thickStart","thickEnd","_lineHash"]});function Kn({children:e,title:t,defaultExpanded:r=!0}){let{classes:n}=U_();return(0,$n.jsxs)(wn.Accordion,{defaultExpanded:r,children:[(0,$n.jsx)(wn.AccordionSummary,{expandIcon:(0,$n.jsx)(ma,{className:n.icon}),children:(0,$n.jsx)(wn.Typography,{variant:"button",children:t})}),(0,$n.jsx)(wn.AccordionDetails,{className:n.expansionPanelDetails,children:e})]})}var $n,wn,U_,Rf=g(()=>{$n=f(L(),1);IA();wn=f(_(),1);ht();U_=Z()(e=>({expansionPanelDetails:{display:"block",padding:e.spacing(1)},icon:{color:e.palette.tertiary.contrastText||"#fff"}}))});function At({checked:e,label:t,disabled:r,onChange:n}){return Lc.default.createElement("div",null,Lc.default.createElement(Fc.FormControlLabel,{control:Lc.default.createElement(Fc.Checkbox,{disabled:r,checked:e,onChange:n}),label:t}))}var Lc,Fc,Rc=g(()=>{Lc=f(b(),1),Fc=f(_(),1)});function us({str:e}){let{classes:t}=q_(),[r,n]=(0,xr.useState)(!1),[o,i]=(0,xr.useState)(!1),[s,a]=(0,xr.useState)(!1),c=A=>A.replaceAll("-","").replaceAll(".",""),l=e.map(([A,u])=>[A,o?u:c(u)]).filter(A=>s?!0:!!A[1]).map(([A,u])=>`>${A}
|
|
30
30
|
${o?u:c(u)}`).join(`
|
|
31
|
-
`);return xr.default.createElement(xr.default.Fragment,null,xr.default.createElement(Lc.Button,{color:"primary",variant:"contained",onClick:()=>{Li(l),n(!0),setTimeout(()=>{n(!1)},500)}},r?"Copied!":"Copy to clipboard"),xr.default.createElement(ft,{label:"Show gaps",checked:o,onChange:()=>{i(!o)}}),xr.default.createElement(ft,{label:"Show empty",checked:s,onChange:()=>{a(!s)}}),xr.default.createElement(Lc.TextField,{variant:"outlined",multiline:!0,className:t.dialogContent,minRows:5,maxRows:10,fullWidth:!0,value:l,slotProps:{input:{readOnly:!0,className:t.textAreaFont}}}))}var xr,Lc,gy,N_,Df=g(()=>{xr=f(B(),1),Lc=f(N(),1),gy=f(Me(),1);Nc();eu();N_=(0,gy.makeStyles)()({textAreaFont:{fontFamily:"Courier New",wordWrap:"break-word"},dialogContent:{background:"lightgrey",margin:4,minWidth:"80em"}})});var Ey={};ze(Ey,{default:()=>F_});var ui,py,hy,Cy,L_,F_,Iy=g(()=>{ui=f(B(),1);_c();_f();py=f(fe(),1),hy=f(N(),1),Cy=f(P(),1);Df();L_=(0,Cy.observer)(function({model:e,onClose:t}){let{header:r}=e;return ui.default.createElement(py.Dialog,{onClose:()=>{t()},open:!0,title:"Metadata",maxWidth:"xl"},ui.default.createElement(hy.DialogContent,null,ui.default.createElement(Rr,{attributes:r}),ui.default.createElement(Xn,{title:"sequence"},ui.default.createElement(ls,{str:e.rows}))))}),F_=L_});var yy={};ze(yy,{default:()=>xy});function xy({model:e,onClose:t}){let[r,n]=(0,we.useState)(!0),[o,i]=(0,we.useState)(!0),[s,a]=(0,we.useState)("viewport"),[c,l]=(0,we.useState)(),A=(0,Ee.useTheme)(),{totalWidth:u,totalHeight:d,treeAreaWidth:m,turnedOnTracks:p}=e,C=p.length>0,x=u+m,I=d,h=s==="entire"&&(x>1e4||I>1e4);return we.default.createElement(Fc.Dialog,{onClose:()=>{t()},open:!0,title:"Export SVG"},we.default.createElement(Ee.DialogContent,null,c?we.default.createElement(Fc.ErrorMessage,{error:c}):null,we.default.createElement(Ee.Typography,null,"Settings:"),we.default.createElement(ft,{label:"Include minimap?",disabled:s==="entire",checked:r,onChange:()=>{n(!r)}}),C?we.default.createElement(ft,{label:"Include tracks?",checked:o,onChange:()=>{i(!o)}}):null,we.default.createElement("div",null,we.default.createElement(Ee.FormControl,null,we.default.createElement(Ee.FormLabel,null,"Export type"),we.default.createElement(Ee.RadioGroup,{value:s,onChange:y=>{a(y.target.value)}},we.default.createElement(Ee.FormControlLabel,{value:"entire",control:we.default.createElement(Ee.Radio,null),label:"Entire MSA"}),we.default.createElement(Ee.FormControlLabel,{value:"viewport",control:we.default.createElement(Ee.Radio,null),label:"Current viewport only"})))),h?we.default.createElement(Ee.Alert,{severity:"warning",style:{marginTop:8}},"The entire MSA is very large (",Math.round(x),"x",Math.round(I)," pixels). Export may be slow or fail."):null),we.default.createElement(Ee.DialogActions,null,we.default.createElement(Ee.Button,{variant:"contained",color:"primary",onClick:()=>{(async()=>{try{await e.exportSVG({theme:A,includeMinimap:s==="entire"?!1:r,includeTracks:C&&o,exportType:s}),t()}catch(y){console.error(y),l(y)}})()}},"Submit"),we.default.createElement(Ee.Button,{variant:"contained",color:"secondary",onClick:()=>{t()}},"Cancel")))}var we,Fc,Ee,wy=g(()=>{we=f(B(),1),Fc=f(fe(),1),Ee=f(N(),1);Nc()});var My={};ze(My,{default:()=>H_});var $,By,tt,As,Sy,Qy,by,R_,P_,O_,G_,H_,vy=g(()=>{$=f(B(),1),By=f(fe(),1),tt=f(N(),1),As=f(P(),1),Sy=f(Me(),1);wc();Nc();Qy=(0,Sy.makeStyles)()(e=>({field:{margin:e.spacing(4)},flex:{display:"flex"},minw:{width:"80em"}})),by=(e=0)=>+e.toFixed(1),R_=(0,As.observer)(function({model:e}){return $.default.createElement($.default.Fragment,null,$.default.createElement(P_,{model:e}),$.default.createElement(O_,{model:e}))}),P_=(0,As.observer)(function({model:t}){let{drawTree:r,drawLabels:n,drawNodeBubbles:o,labelsAlignRight:i,showBranchLen:s}=t;return $.default.createElement("div",null,$.default.createElement("h1",null,"Tree options"),$.default.createElement(ft,{checked:s,label:"Show branch length?",onChange:()=>{t.setShowBranchLen(!s)}}),$.default.createElement(ft,{checked:o,label:"Draw clickable bubbles on tree branches?",onChange:()=>{t.setDrawNodeBubbles(!o)}}),$.default.createElement(ft,{checked:r,label:"Show tree?",onChange:()=>{t.setDrawTree(!r)}}),$.default.createElement(ft,{checked:i,label:"Tree labels align right?",onChange:()=>{t.setLabelsAlignRight(!i)}}),$.default.createElement(ft,{checked:n,label:"Draw labels",onChange:()=>{t.setDrawLabels(!n)}}))}),O_=(0,As.observer)(function({model:t}){let{classes:r}=Qy(),{bgColor:n,colWidth:o,allowedGappyness:i,drawMsaLetters:s,colorSchemeName:a,hideGaps:c,rowHeight:l}=t;return $.default.createElement("div",null,$.default.createElement("h1",null,"MSA options"),$.default.createElement(ft,{checked:s,label:"Draw letters",onChange:()=>{t.setDrawMsaLetters(!s)}}),$.default.createElement(ft,{checked:n,label:"Color letters instead of background of tiles",onChange:()=>{t.setBgColor(!n)}}),$.default.createElement(ft,{checked:c,label:"Enable hiding gappy columns?",onChange:()=>{t.setHideGaps(!c)}}),c?$.default.createElement("div",{className:r.flex},$.default.createElement(tt.Typography,null,"Hide columns w/ >",i,"% gaps"),$.default.createElement(tt.Slider,{className:r.field,min:1,max:100,value:i,onChange:(A,u)=>{t.setAllowedGappyness(u)}})):null,$.default.createElement("div",{className:r.flex},$.default.createElement(tt.Typography,null,"Column width (",by(o),"px)"),$.default.createElement(tt.Slider,{className:r.field,min:1,max:50,value:o,onChange:(A,u)=>{t.setColWidth(u)}})),$.default.createElement("div",{className:r.flex},$.default.createElement(tt.Typography,null,"Row height (",by(l),"px)"),$.default.createElement(tt.Slider,{className:r.field,min:1,max:50,value:l,onChange:(A,u)=>{t.setRowHeight(u)}})),$.default.createElement(tt.TextField,{select:!0,label:"Color scheme",value:a,onChange:A=>{t.setColorSchemeName(A.target.value)}},Object.keys(ci).map(A=>$.default.createElement(tt.MenuItem,{key:A,value:A},A))))}),G_=(0,As.observer)(function({model:e,onClose:t}){let{classes:r}=Qy();return $.default.createElement(By.Dialog,{open:!0,title:"Settings",maxWidth:"xl",onClose:()=>{t()}},$.default.createElement(tt.DialogContent,{className:r.minw},$.default.createElement(R_,{model:e}),$.default.createElement(tt.DialogActions,null,$.default.createElement(tt.Button,{variant:"contained",color:"primary",onClick:()=>{t()}},"Submit"))))}),H_=G_});var Zn,Ty,U_,q_,j_,J_,_y,Dy=g(()=>{Zn=f(B(),1);si();ax();mf();Ax();mA();Ty=f(P(),1);Hx();U_=(0,Zn.lazy)(()=>Promise.resolve().then(()=>(Iy(),Ey))),q_=(0,Zn.lazy)(()=>Promise.resolve().then(()=>(wy(),yy))),j_=(0,Zn.lazy)(()=>Promise.resolve().then(()=>(vy(),My))),J_=(0,Ty.observer)(({model:e})=>Zn.default.createElement(Lr,{menuItems:[{label:"Return to import form",icon:ns,onClick:()=>{e.reset()}},{label:"Metadata",icon:sx,onClick:()=>{e.queueDialog(t=>[U_,{model:e,onClose:t}])}},{label:"More settings",icon:ca,onClick:()=>{e.queueDialog(t=>[j_,{model:e,onClose:t}])}},{label:"Domain settings",type:"subMenu",subMenu:Gx({model:e})},{label:"Export SVG",icon:lx,onClick:()=>{e.queueDialog(t=>[q_,{onClose:t,model:e}])}}],anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"}},Zn.default.createElement(ns,null))),_y=J_});var Rc,Pc,ky,V_,Ny,Ly=g(()=>{Rc=f(B(),1),Pc=f(N(),1),ky=f(P(),1),V_=(0,ky.observer)(function({model:t}){let{hideGaps:r,allowedGappyness:n}=t;return r?Rc.default.createElement("div",{style:{display:"flex",alignItems:"center",gap:8}},Rc.default.createElement(Pc.Typography,{style:{whiteSpace:"nowrap"}},"Hide columns w/ >",n,"% gaps"),Rc.default.createElement(Pc.Slider,{style:{width:100},min:1,max:100,value:n,onChange:(o,i)=>{t.setAllowedGappyness(i)}})):null}),Ny=V_});var Fy,Ry,Py,Oy,Y_,W_,Gy,Hy=g(()=>{Fy=f(B(),1),Ry=f(N(),1),Py=f(P(),1),Oy=f(Me(),1),Y_=(0,Oy.makeStyles)()({margin:{margin:"auto",marginLeft:10}}),W_=(0,Py.observer)(function({model:e}){let{mouseOverRowName:t,mouseCol:r}=e,{classes:n}=Y_();return t&&r!==void 0?Fy.default.createElement(Ry.Typography,{className:n.margin},t,":",e.visibleColToSeqPosOneBased(t,r)," (",e.visibleColToRowLetter(t,r),")"):null}),Gy=W_});var Oc,Uy,qy,jy,Jy,z_,$_,Vy,Yy=g(()=>{Oc=f(B(),1),Uy=f(fe(),1),qy=f(N(),1),jy=f(P(),1),Jy=f(Me(),1),z_=(0,Jy.makeStyles)()({margin:{margin:"auto",marginLeft:10}}),$_=(0,jy.observer)(({model:e})=>{let{status:t}=e,{classes:r}=z_();return t?Oc.default.createElement(qy.Typography,{className:r.margin},Oc.default.createElement(Uy.LoadingEllipses,{message:t.msg,component:"span"})," ",t.url?Oc.default.createElement("a",{href:t.url,target:"_blank",rel:"noreferrer"},"(status)"):null):null}),Vy=$_});var Wy,zy,$y=g(()=>{"use client";W();Wy=f(L(),1),zy=(0,_.createSvgIcon)((0,Wy.jsx)("path",{d:"M3 17v2h6v-2zM3 5v2h10V5zm10 16v-2h8v-2h-8v-2h-2v6zM7 9v2H3v2h4v2h2V9zm14 4v-2H11v2zm-6-4h2V7h4V5h-4V3h-2z"}),"Tune")});var kf,Ky,K_,Xy,Zy=g(()=>{kf=f(B(),1);si();$y();Ky=f(P(),1),K_=(0,Ky.observer)(function({model:e}){let{drawMsaLetters:t,hideGaps:r,bgColor:n}=e;return kf.default.createElement(Lr,{closeAfterItemClick:!1,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:[{label:"Draw letters",type:"checkbox",checked:t,onClick:()=>{e.setDrawMsaLetters(!t)}},{label:"Color letters instead of background of tiles",type:"checkbox",checked:!n,onClick:()=>{e.setBgColor(!n)}},{label:"Enable hiding gappy columns?",type:"checkbox",checked:r,onClick:()=>{e.setHideGaps(!r)}}]},kf.default.createElement(zy,null))}),Xy=K_});var Nf,Gc,ew,X_,tw,rw=g(()=>{Nf=f(B(),1),Gc=f(N(),1),ew=f(P(),1),X_=(0,ew.observer)(function({model:e}){let{currentAlignment:t,alignmentNames:r}=e;return r.length>0?Nf.default.createElement(Gc.TextField,{select:!0,variant:"outlined",value:t,size:"small",onChange:n=>{e.setCurrentAlignment(+n.target.value),e.setScrollX(0),e.setScrollY(0)}},r.map((n,o)=>Nf.default.createElement(Gc.MenuItem,{key:`${n}-${o}`,value:o},n))):null}),tw=X_});var nw,ow,iw=g(()=>{"use client";W();nw=f(L(),1),ow=(0,_.createSvgIcon)((0,nw.jsx)("path",{d:"M22 11V3h-7v3H9V3H2v8h7V8h2v10h4v3h7v-8h-7v3h-2V8h2v3z"}),"AccountTree")});var Lf,sw,Z_,aw,cw=g(()=>{Lf=f(B(),1);si();iw();sw=f(P(),1),Z_=(0,sw.observer)(function({model:e}){let{drawTree:t,showBranchLen:r,labelsAlignRight:n,drawNodeBubbles:o,drawLabels:i,rows:s}=e;return Lf.default.createElement(Lr,{closeAfterItemClick:!1,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:[{label:"Show branch length",type:"checkbox",checked:r,onClick:()=>{e.setShowBranchLen(!r)}},{label:"Show tree",type:"checkbox",checked:t,onClick:()=>{e.setDrawTree(!t)}},{label:"Draw clickable bubbles on tree branches",type:"checkbox",checked:o,onClick:()=>{e.setDrawNodeBubbles(!o)}},{label:"Tree labels align right",type:"checkbox",checked:n,onClick:()=>{e.setLabelsAlignRight(!n)}},{label:"Draw labels",type:"checkbox",checked:i,onClick:()=>{e.setDrawLabels(!i)}},...s.length>=2?[{label:"Advanced",type:"subMenu",subMenu:[{label:"Calculate neighbor joining tree (BLOSUM62)",onClick:()=>{try{e.calculateNeighborJoiningTreeFromMSA()}catch(a){console.error("Failed to calculate NJ tree:",a),e.setError(a)}}}]}]:[]]},Lf.default.createElement(ow,null))}),aw=Z_});var Ff,lw,Aw=g(()=>{"use client";W();Ff=f(L(),1),lw=(0,_.createSvgIcon)([(0,Ff.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,Ff.jsx)("path",{d:"M12 10h-2v2H9v-2H7V9h2V7h1v2h2z"},"1")],"ZoomIn")});var uw,fw,dw=g(()=>{"use client";W();uw=f(L(),1),fw=(0,_.createSvgIcon)((0,uw.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 eo,Rf,mw,eD,gw,pw=g(()=>{eo=f(B(),1);Aw();dw();Rf=f(N(),1),mw=f(P(),1),eD=(0,mw.observer)(function({model:t}){return eo.default.createElement(eo.default.Fragment,null,eo.default.createElement(Rf.IconButton,{onClick:()=>{t.zoomIn()}},eo.default.createElement(lw,null)),eo.default.createElement(Rf.IconButton,{onClick:()=>{t.zoomOut()}},eo.default.createElement(fw,null)))}),gw=eD});var hw,Cw,Ew=g(()=>{"use client";W();hw=f(L(),1),Cw=(0,_.createSvgIcon)((0,hw.jsx)("path",{d:"M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2m0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2"}),"MoreVert")});var Iw,xw,yw=g(()=>{"use client";W();Iw=f(L(),1),xw=(0,_.createSvgIcon)((0,Iw.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 Pf,ww,tD,bw,Bw=g(()=>{Pf=f(B(),1);si();Ew();yw();ww=f(P(),1),tD=(0,ww.observer)(function({model:e}){return Pf.default.createElement(Lr,{menuItems:[{label:"Fit both vertically/horizontally",onClick:()=>{e.fit()}},{label:"Fit vertically",onClick:()=>{e.fitVertically()}},{label:"Fit horizontally",onClick:()=>{e.fitHorizontally()}},{label:"Reset zoom to default",icon:xw,onClick:()=>{e.resetZoom()}}]},Pf.default.createElement(Cw,null))}),bw=tD});var Sw,Qw=g(()=>{Sw="5.0.16"});var Tw={};ze(Tw,{default:()=>vw});function vw({onClose:e}){return Ve.default.createElement(Mw.Dialog,{open:!0,title:"About",onClose:()=>{e()}},Ve.default.createElement(Bt.DialogContent,null,Ve.default.createElement(Bt.Typography,null,"MSAView ",Sw," (",Ve.default.createElement(Bt.Link,{href:"https://github.com/gmod/react-msaview"},"Github"),")"),Ve.default.createElement("ul",null,Ve.default.createElement("li",null,Ve.default.createElement(Bt.Typography,null,"We use some color schemes from the"," ",Ve.default.createElement(Bt.Link,{href:"https://github.com/biotite-dev/biotite"},"biotite")," ","project, and their license is reproduced"," ",Ve.default.createElement(Bt.Link,{href:"https://github.com/biotite-dev/biotite/blob/master/LICENSE.rst"},"here"))),Ve.default.createElement("li",null,Ve.default.createElement(Bt.Typography,null,"See this page for some information on jalview colorings"," ",Ve.default.createElement(Bt.Link,{href:"https://www.jalview.org/help/html/colourSchemes/"},"here"))),Ve.default.createElement("li",null,Ve.default.createElement(Bt.Typography,null,"See this page for some info on the clustal, cinema, maeditor, and lesk color schemes"," ",Ve.default.createElement(Bt.Link,{href:"http://www.bioinformatics.nl/~berndb/aacolour.html"},"here"))),Ve.default.createElement("li",null,Ve.default.createElement(Bt.Typography,null,"See this paper about the flower color scheme"," ",Ve.default.createElement(Bt.Link,{href:"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7245768/"},"here"))))))}var Ve,Mw,Bt,_w=g(()=>{Ve=f(B(),1),Mw=f(fe(),1),Bt=f(N(),1);Qw()});function oD(){return Le.default.createElement("div",{style:{flex:1}})}var Le,Dw,kw,rD,nD,Nw,Lw=g(()=>{Le=f(B(),1);Kp();l0();Dw=f(N(),1),kw=f(P(),1);ox();Dy();Ly();Hy();Yy();Zy();rw();cw();pw();Bw();rD=(0,Le.lazy)(()=>Promise.resolve().then(()=>(_w(),Tw))),nD=(0,kw.observer)(function({model:e}){let[t,{height:r}]=FA();return(0,Le.useEffect)(()=>{e.setHeaderHeight(r||0)},[e,r]),Le.default.createElement("div",{ref:t,style:{display:"flex"}},Le.default.createElement(_y,{model:e}),Le.default.createElement(nx,{model:e}),Le.default.createElement(aw,{model:e}),Le.default.createElement(Xy,{model:e}),Le.default.createElement(gw,{model:e}),Le.default.createElement(bw,{model:e}),Le.default.createElement(Ny,{model:e}),Le.default.createElement("div",{style:{paddingLeft:20,margin:"auto"}},Le.default.createElement(tw,{model:e})),Le.default.createElement(Gy,{model:e}),Le.default.createElement(oD,null),Le.default.createElement(Vy,{model:e}),Le.default.createElement(Dw.IconButton,{onClick:()=>{e.queueDialog(n=>[rD,{onClose:n}])}},Le.default.createElement(c0,null)))});Nw=nD});var Ut,Fw,iD,Rw,Pw=g(()=>{Ut=f(B(),1),Fw=f(P(),1),iD=(0,Fw.observer)(function({model:e}){let[t,r]=(0,Ut.useState)(),[n,o]=(0,Ut.useState)(!1),i=(0,Ut.useRef)(!1),{scrollX:s,msaAreaWidth:a,minimapHeight:c,colWidth:l,numColumns:A}=e,u=a/A/l,d=-s,m=d+a,p=d*u,C=m*u,x="rgba(66, 119, 127, 0.3)",I=Math.max(C-p,20);(0,Ut.useEffect)(()=>{function w(v){t!==void 0&&(i.current||(i.current=!0,window.requestAnimationFrame(()=>{e.setScrollX(t.scrollX-(v.clientX-t.clientX)/u),i.current=!1})))}function S(){r(void 0)}if(t!==void 0)return document.addEventListener("mousemove",w),document.addEventListener("mouseup",S),()=>{document.removeEventListener("mousemove",w),document.removeEventListener("mousemove",S)}},[e,u,t]);let h=12,y=c-h;return Ut.default.createElement("div",{style:{position:"relative",height:c,width:"100%"}},Ut.default.createElement("div",{style:{height:h,boxSizing:"border-box",border:"1px solid #555"}}),Ut.default.createElement("div",{style:{position:"absolute",top:0,left:Math.max(0,p),background:n?"rgba(66,119,127,0.6)":x,cursor:"pointer",height:h,width:I,zIndex:100},onMouseOver:()=>{o(!0)},onMouseOut:()=>{o(!1)},onMouseDown:w=>{r({clientX:w.clientX,scrollX:e.scrollX})}}),Ut.default.createElement("svg",{height:y,style:{width:"100%"}},Ut.default.createElement("polygon",{fill:x,points:[[p+I,0],[p,0],[0,y],[a,y]].toString()})))}),Rw=iD});function Of(){return Hc.default.createElement("div",{style:{position:"absolute",left:"50%",top:"50%"}},Hc.default.createElement(Uc.CircularProgress,null),Hc.default.createElement(Uc.Typography,null,"Loading..."))}var Hc,Uc,Ow=g(()=>{Hc=f(B(),1),Uc=f(N(),1)});function qc({model:e,offsetX:t,offsetY:r,ctx:n,highResScaleFactorOverride:o,blockSizeYOverride:i}){let{leaves:s,blockSize:a,rowHeight:c,highResScaleFactor:l,showDomains:A}=e;if(A){let u=o||l,d=i||a;n.resetTransform(),n.scale(u,u),n.translate(-t,c/2-r);let m=Math.max(0,Math.floor((r-c)/c)),p=Math.max(0,Math.ceil((r+d+c)/c)),C=s.slice(m,p);sD({model:e,ctx:n,visibleLeaves:C})}}function sD({model:e,ctx:t,visibleLeaves:r}){let{subFeatureRows:n,colWidth:o,rowHeight:i,fillPalette:s,strokePalette:a,tidyFilteredGatheredInterProAnnotations:c}=e;for(let l=0,A=r.length;l<A;l++){let u=r[l],{x:d,data:{name:m}}=u,p=d,C=c[m];if(C)for(let x=0,I=C.length;x<I;x++){let{start:h,end:y,accession:w}=C[x],S=e.seqPosToVisibleCol(m,h-1),v=e.seqPosToVisibleCol(m,y);if(S===void 0||v===void 0)continue;let M=S*o;t.fillStyle=s[w],t.strokeStyle=a[w];let R=n?4:i,T=p-i+(n?x*R:0),V=o*(v-S);t.fillRect(M,T,V,R),t.strokeRect(M,T,V,R)}}}var Gf=g(()=>{});function jc({model:e,offsetX:t,offsetY:r,contrastScheme:n,ctx:o,theme:i,highResScaleFactorOverride:s,blockSizeXOverride:a,blockSizeYOverride:c}){let{colWidth:l,blockSize:A,rowHeight:u,fontSize:d,highResScaleFactor:m,actuallyShowDomains:p,leaves:C,bgColor:x}=e,I=s||m,h=a||A,y=c||A;o.resetTransform(),o.scale(I,I),o.translate(-t,u/2-r),o.textAlign="center",o.font=o.font.replace(/\d+px/,`${x?"":"bold "}${d}px`);let w=Math.max(0,Math.floor((r-u)/u)),S=Math.max(0,Math.ceil((r+y+u)/u)),v=Math.max(0,Math.floor(t/l)),M=Math.max(0,Math.ceil((t+h)/l)),R=C.slice(w,S);p||aD({model:e,ctx:o,theme:i,offsetX:t,xStart:v,xEnd:M,visibleLeaves:R}),cD({model:e,ctx:o,offsetX:t,contrastScheme:n,xStart:v,xEnd:M,visibleLeaves:R}),lD({model:e,ctx:o,xStart:v,xEnd:M,visibleLeaves:R}),o.resetTransform()}function aD({model:e,offsetX:t,ctx:r,visibleLeaves:n,theme:o,xStart:i,xEnd:s}){let{bgColor:a,colorSchemeName:c,colorScheme:l,columns:A,colWidth:u,rowHeight:d,relativeTo:m}=e,p=m?A[m]?.slice(i,s):null,C=c==="clustalx_protein_dynamic",x=c==="percent_identity_dynamic",I=t-t%u;for(let h=0,y=n.length;h<y;h++){let w=n[h],{data:{name:S}}=w,v=w.x,M=A[S]?.slice(i,s);if(M)for(let R=0,T=M.length;R<T;R++){let V=M[R],Q=p&&S!==m&&V===p[R],F=C?e.colClustalX[i+R][V]:x?(()=>{let q=e.colConsensus[i+R];return V===q.letter?q.color:void 0})():l[V.toUpperCase()];if(a||C||x){let q=Q?o.palette.action.hover:F||o.palette.background.default;r.fillStyle=q,r.fillRect(R*u+I,v-d,u,d)}}}}function cD({model:e,offsetX:t,contrastScheme:r,ctx:n,visibleLeaves:o,xStart:i,xEnd:s}){let{bgColor:a,actuallyShowDomains:c,showMsaLetters:l,colorScheme:A,columns:u,colWidth:d,rowHeight:m,relativeTo:p}=e,C=p?u[p]?.slice(i,s):null;if(l){let x=t-t%d,I=d/2,h=m/4;for(let y=0,w=o.length;y<w;y++){let S=o[y],{data:{name:v}}=S,M=S.x-h,R=u[v]?.slice(i,s);if(R)for(let T=0,V=R.length;T<V;T++){let Q=R[T],q=C&&v!==p&&Q===C[T]?".":Q,G=A[Q.toUpperCase()],ye=r[Q.toUpperCase()]||"black";n.fillStyle=c?"black":a?ye:G||"black",n.fillText(q,T*d+x+I,M)}}}}function lD({model:e,ctx:t,visibleLeaves:r,xStart:n,xEnd:o}){let{bgColor:i,hideGapsEffective:s}=e;s&&(t.lineWidth=1,t.strokeStyle="#f0f",Gw({visibleLeaves:r,xStart:n,ctx:t,model:e,xEnd:o,offset:0}),t.strokeStyle=i?"#fff":"#000",Gw({visibleLeaves:r,xStart:n,ctx:t,model:e,xEnd:o,offset:-1}))}function Gw({model:e,ctx:t,visibleLeaves:r,xStart:n,xEnd:o,offset:i}){let{colWidth:a,rowHeight:c,insertionPositions:l}=e;for(let A of r){let{name:u}=A.data,d=l.get(u);if(d){let m=A.x;for(let{pos:p}of d)if(p>=n&&p<o){let C=p*a,x=m-c,I=m;t.beginPath(),t.moveTo(C+i,x+i);let h=x,y=!0;for(;h<I;){let w=Math.min(h+2,I),S=y?C+1:C-1;t.lineTo(S+i,w+i),h=w,y=!y}t.stroke()}}}}var Hf=g(()=>{});var qt,Hw,Uw,qw,jw,AD,Jw,Vw=g(()=>{qt=f(B(),1),Hw=f(fe(),1),Uw=f(N(),1),qw=f(zr(),1),jw=f(P(),1);Gf();Hf();yn();AD=(0,jw.observer)(function({model:e,offsetX:t,offsetY:r}){let{colWidth:n,rowHeight:o,scrollY:i,scrollX:s,colorScheme:a,blockSize:c,mouseClickCol:l,mouseClickRow:A,highResScaleFactor:u}=e,d=(0,Uw.useTheme)(),m=(0,qt.useMemo)(()=>$n(a,d),[a,d]),p=(0,qt.useRef)(null);(0,qt.useEffect)(()=>{let h=p.current?.getContext("2d");if(h)return(0,qw.autorun)(()=>{h.resetTransform(),h.clearRect(0,0,c*u,c*u),e.actuallyShowDomains&&qc({ctx:h,offsetX:t,offsetY:r,model:e}),jc({ctx:h,theme:d,offsetX:t,offsetY:r,contrastScheme:m,model:e})})},[e,t,r,d,c,u,m]);let[C,x]=(0,qt.useState)(),{hoveredInsertion:I}=e;return qt.default.createElement(qt.default.Fragment,null,qt.default.createElement("canvas",{ref:p,onMouseMove:h=>{if(!p.current)return;x({x:h.clientX,y:h.clientY});let{left:y,top:w}=p.current.getBoundingClientRect(),S=h.clientX-y+t,v=h.clientY-w+r,M=Math.floor(S/n),R=Math.floor(v/o);M>=0&&M<e.numColumns&&R>=0&&R<e.numRows?e.setMousePos(M,R):e.setMousePos(void 0,void 0)},onClick:h=>{if(!p.current)return;let{left:y,top:w}=p.current.getBoundingClientRect(),S=h.clientX-y+t,v=h.clientY-w+r,M=Math.floor(S/n),R=Math.floor(v/o);M===l&&R===A?e.setMouseClickPos(void 0,void 0):e.setMouseClickPos(M,R)},onMouseLeave:()=>{e.setMousePos(),x(void 0)},width:c*u,height:c*u,style:{position:"absolute",top:i+r,left:s+t,width:c,height:c}}),I&&C?qt.default.createElement(Hw.BaseTooltip,{clientPoint:{x:C.x,y:C.y+15}},"Insertion (",I.letters.length,e.sequenceType==="amino"?"aa":"bp","):"," ",I.letters.length>20?`${I.letters.slice(0,20)}...`:I.letters):null)}),Jw=AD});var on,Yw,uD,Ww,zw=g(()=>{on=f(B(),1),Yw=f(P(),1);Ow();Vw();_a();uD=(0,Yw.observer)(function({model:e}){let{MSA:t,verticalScrollbarWidth:r,msaFilehandle:n,height:o,msaAreaWidth:i,blocks2d:s}=e,a=(0,on.useRef)(null),c=(0,on.useCallback)(d=>{e.doScrollX(d)},[e]),l=(0,on.useCallback)(d=>{e.doScrollY(d)},[e]),{onMouseDown:A,onMouseUp:u}=Lo({ref:a,onScrollX:c,onScrollY:l});return on.default.createElement("div",{ref:a,onMouseDown:A,onMouseUp:u,onMouseLeave:d=>{d.preventDefault()},style:{position:"relative",height:o,width:i-r,overflow:"hidden"}},!t&&!n?null:t?s.map(([d,m])=>on.default.createElement(Jw,{key:`${d}_${m}`,model:e,offsetX:d,offsetY:m})):on.default.createElement(Of,null))}),Ww=uD});function Kw({ctx:e,model:t}){let{mouseCol:r,colWidth:n,msaAreaWidth:o,verticalScrollbarWidth:i,height:s,rowHeight:a,scrollX:c,scrollY:l,mouseRow:A,mouseClickRow:u,mouseClickCol:d,relativeTo:m,rowNamesSet:p,hoveredTreeNode:C,highlightedColumns:x}=t,I=o-i;if(e.resetTransform(),e.clearRect(0,0,I,s),m){let h=p.get(m);h!==void 0&&(e.fillStyle=fD,e.fillRect(0,h*a+l,I,a))}if(C){e.fillStyle=dD;for(let h of C.descendantNames){let y=p.get(h);y!==void 0&&e.fillRect(0,y*a+l,I,a)}}if(x?.length){e.fillStyle=Uf;for(let h of x)e.fillRect(h*n+c,0,n,s)}r!==void 0&&(e.fillStyle=$w,e.fillRect(r*n+c,0,n,s)),A!==void 0&&(e.fillStyle=$w,e.fillRect(0,A*a+l,I,a)),d!==void 0&&(e.fillStyle=Uf,e.fillRect(d*n+c,0,n,s)),u!==void 0&&(e.fillStyle=Uf,e.fillRect(0,u*a+l,I,a))}var $w,Uf,fD,dD,Xw=g(()=>{$w="rgba(0,0,0,0.15)",Uf="rgba(128,128,0,0.2)",fD="rgba(0,128,255,0.3)",dD="rgba(255,165,0,0.15)"});var fi,Zw,eb,tb,mD,rb,nb=g(()=>{fi=f(B(),1),Zw=f(Nt(),1),eb=f(zr(),1),tb=f(P(),1);Xw();mD=(0,tb.observer)(function({model:e}){let t=(0,fi.useRef)(null),{height:r,msaAreaWidth:n,verticalScrollbarWidth:o}=e,i=n-o;return(0,fi.useEffect)(()=>{let s=t.current?.getContext("2d");return s?(0,eb.autorun)(()=>{(0,Zw.isAlive)(e)&&Kw({ctx:s,model:e})}):void 0},[e]),fi.default.createElement("canvas",{ref:t,id:"mouseover",width:i,height:r,style:{position:"absolute",top:0,left:0,width:i,height:r,zIndex:1e3,pointerEvents:"none"}})}),rb=mD});var Jc,ob,gD,ib,sb=g(()=>{Jc=f(B(),1),ob=f(P(),1);zw();nb();gD=(0,ob.observer)(function({model:e}){return Jc.default.createElement("div",{style:{position:"relative"}},Jc.default.createElement(Ww,{model:e}),Jc.default.createElement(rb,{model:e}))}),ib=gD});var us,ab=g(()=>{us=class{constructor(){this.ids=[],this.values=[],this.length=0}clear(){this.length=0}push(t,r){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],s=r[o],a=0,c=o>>1;for(;a<c;){let l=(a<<1)+1,A=l+1,u=l+(+(A<o)&+(r[A]<r[l]));if(r[u]>=s)break;t[a]=t[u],r[a]=r[u],a=u}t[a]=i,r[a]=s}return n}peek(){return this.length>0?this.ids[0]:void 0}peekValue(){return this.length>0?this.values[0]:void 0}shrink(){this.ids.length=this.values.length=this.length}}});function lb(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 pD(e,t,r,n,o,i){let s=[n,o];for(;s.length;){let a=s.pop()||0,c=s.pop()||0;if(a-c<=i&&Math.floor(c/i)>=Math.floor(a/i))continue;let l=e[c],A=e[c+a>>1],u=e[a],d=l>A!=l>u?l:A<l!=A<u?A:u,m=c-1,p=a+1;for(;;){do m++;while(e[m]<d);do p--;while(e[p]>d);if(m>=p)break;hD(e,t,r,m,p)}s.push(c,p,p+1,a)}}function hD(e,t,r,n,o){let i=e[n];e[n]=e[o],e[o]=i;let s=4*n,a=4*o,c=t[s],l=t[s+1],A=t[s+2],u=t[s+3];t[s]=t[a],t[s+1]=t[a+1],t[s+2]=t[a+2],t[s+3]=t[a+3],t[a]=c,t[a+1]=l,t[a+2]=A,t[a+3]=u;let d=r[n];r[n]=r[o],r[o]=d}function CD(e,t){let r=e^t,n=65535^r,o=65535^(e|t),i=e&(t^65535),s=r|n>>1,a=r>>1^r,c=o>>1^n&i>>1^o,l=r&o>>1^i>>1^i;r=s,n=a,o=c,i=l,s=r&r>>2^n&n>>2,a=r&n>>2^n&(r^n)>>2,c^=r&o>>2^n&i>>2,l^=n&o>>2^(r^n)&i>>2,r=s,n=a,o=c,i=l,s=r&r>>4^n&n>>4,a=r&n>>4^n&(r^n)>>4,c^=r&o>>4^n&i>>4,l^=n&o>>4^(r^n)&i>>4,r=s,n=a,o=c,i=l,c^=r&o>>8^n&i>>8,l^=n&o>>8^(r^n)&i>>8,r=c^c>>1,n=l^l>>1;let A=e^t,u=n|65535^(A|r);return A=(A|A<<8)&16711935,A=(A|A<<4)&252645135,A=(A|A<<2)&858993459,A=(A|A<<1)&1431655765,u=(u|u<<8)&16711935,u=(u|u<<4)&252645135,u=(u|u<<2)&858993459,u=(u|u<<1)&1431655765,(u<<1|A)>>>0}var cb,qf,fs,Ab=g(()=>{ab();cb=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],qf=3,fs=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||t.buffer)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!==qf)throw new Error(`Got v${i} data when expected v${qf}.`);let s=cb[o&15];if(!s)throw new Error("Unrecognized array type.");let[a]=new Uint16Array(t,r+2,1),[c]=new Uint32Array(t,r+4,1);return new e(c,a,s,void 0,t,r)}constructor(t,r=16,n=Float64Array,o=ArrayBuffer,i,s=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=s;let a=t,c=a;this._levelBounds=[a*4];do a=Math.ceil(a/this.nodeSize),c+=a,this._levelBounds.push(c*4);while(a!==1);this.ArrayType=n,this.IndexArrayType=c<16384?Uint16Array:Uint32Array;let l=cb.indexOf(n),A=c*4*n.BYTES_PER_ELEMENT;if(l<0)throw new Error(`Unexpected typed array class: ${n}.`);if(i)this.data=i,this._boxes=new n(i,s+8,c*4),this._indices=new this.IndexArrayType(i,s+8+A,c),this._pos=c*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 u=this.data=new o(8+A+c*this.IndexArrayType.BYTES_PER_ELEMENT);this._boxes=new n(u,8,c*4),this._indices=new this.IndexArrayType(u,8+A,c),this._pos=0,this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0,new Uint8Array(u,0,2).set([251,(qf<<4)+l]),new Uint16Array(u,2,1)[0]=r,new Uint32Array(u,4,1)[0]=t}this._queue=new us}add(t,r,n=t,o=r){let i=this._pos>>2,s=this._boxes;return this._indices[i]=i,s[this._pos++]=t,s[this._pos++]=r,s[this._pos++]=n,s[this._pos++]=o,t<this.minX&&(this.minX=t),r<this.minY&&(this.minY=r),n>this.maxX&&(this.maxX=n),o>this.maxY&&(this.maxY=o),i}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 r=this.maxX-this.minX||1,n=this.maxY-this.minY||1,o=new Uint32Array(this.numItems),i=65535;for(let s=0,a=0;s<this.numItems;s++){let c=t[a++],l=t[a++],A=t[a++],u=t[a++],d=Math.floor(i*((c+A)/2-this.minX)/r),m=Math.floor(i*((l+u)/2-this.minY)/n);o[s]=CD(d,m)}pD(o,t,this._indices,0,this.numItems-1,this.nodeSize);for(let s=0,a=0;s<this._levelBounds.length-1;s++){let c=this._levelBounds[s];for(;a<c;){let l=a,A=t[a++],u=t[a++],d=t[a++],m=t[a++];for(let p=1;p<this.nodeSize&&a<c;p++)A=Math.min(A,t[a++]),u=Math.min(u,t[a++]),d=Math.max(d,t[a++]),m=Math.max(m,t[a++]);this._indices[this._pos>>2]=l,t[this._pos++]=A,t[this._pos++]=u,t[this._pos++]=d,t[this._pos++]=m}}}search(t,r,n,o,i){if(this._pos!==this._boxes.length)throw new Error("Data not yet indexed - call index.finish().");let s=this._boxes.length-4,a=[],c=[];for(;s!==void 0;){let l=Math.min(s+this.nodeSize*4,lb(s,this._levelBounds));for(let A=s;A<l;A+=4){let u=this._boxes[A];if(n<u)continue;let d=this._boxes[A+1];if(o<d)continue;let m=this._boxes[A+2];if(t>m)continue;let p=this._boxes[A+3];if(r>p)continue;let C=this._indices[A>>2]|0;s>=this.numItems*4?a.push(C):(i===void 0||i(C,u,d,m,p))&&c.push(C)}s=a.pop()}return c}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 s=this._boxes.length-4,a=this._queue,c=[],l=o*o;e:for(;s!==void 0;){let A=Math.min(s+this.nodeSize*4,lb(s,this._levelBounds));for(let u=s;u<A;u+=4){let d=this._indices[u>>2]|0,m=this._boxes[u],p=this._boxes[u+1],C=this._boxes[u+2],x=this._boxes[u+3],I=t<m?m-t:t>C?t-C:0,h=r<p?p-r:r>x?r-x:0,y=I*I+h*h;y>l||(s>=this.numItems*4?a.push(d<<1,y):(i===void 0||i(d))&&a.push((d<<1)+1,y))}for(;a.length&&a.peek()&1;)if(a.peekValue()>l||(c.push(a.pop()>>1),c.length===n))break e;s=a.length?a.pop()>>1:void 0}return a.clear(),c}}});var ds,di,ub,ED,fb,db=g(()=>{ds=f(B(),1),di=f(N(),1),ub=f(P(),1),ED=(0,ub.observer)(function({node:e,model:t,onClose:r}){return ds.default.createElement(di.Menu,{anchorReference:"anchorPosition",anchorPosition:{left:e.x,top:e.y},transitionDuration:0,keepMounted:!0,open:!!e,onClose:r},ds.default.createElement(di.MenuItem,{dense:!0,disabled:!0},e.name),ds.default.createElement(di.MenuItem,{dense:!0,onClick:()=>{t.toggleCollapsed(e.id),r()}},t.collapsed.includes(e.id)?"Expand this node":"Collapse this node"),ds.default.createElement(di.MenuItem,{dense:!0,onClick:()=>{t.showOnly===e.id?t.setShowOnly(void 0):t.setShowOnly(e.id),r()}},t.showOnly===e.id?"Disable show only this node":"Show only this node"))}),fb=ED});var hb={};ze(hb,{default:()=>xD});var Pr,mb,gb,pb,ID,xD,Cb=g(()=>{Pr=f(B(),1);_c();_f();mb=f(fe(),1),gb=f(N(),1),pb=f(P(),1);Df();ID=(0,pb.observer)(function({info:e,model:t,nodeName:r,onClose:n}){let{treeMetadata:o,rows:i}=t,s=o[r],a=i.find(c=>c[0]===r);return Pr.default.createElement(mb.Dialog,{onClose:()=>{n()},open:!0,title:"Tree node info",maxWidth:"xl"},Pr.default.createElement(gb.DialogContent,null,Pr.default.createElement(Xn,{title:"Attributes"},Pr.default.createElement(Rr,{attributes:{nodeName:r,...e}})),Pr.default.createElement(Xn,{title:"Sequence"},a?Pr.default.createElement(ls,{str:[a]}):Pr.default.createElement("div",null,"Sequence not found")),s?Pr.default.createElement(Xn,{title:"Extra metadata"},Pr.default.createElement(Rr,{attributes:s})):null))}),xD=ID});var sn,Bn,Eb,yD,wD,Ib,xb=g(()=>{sn=f(B(),1),Bn=f(N(),1),Eb=f(P(),1),yD=(0,sn.lazy)(()=>Promise.resolve().then(()=>(Cb(),hb))),wD=(0,Eb.observer)(function({node:e,onClose:t,model:r}){let{collapsed:n}=r,{name:o,id:i}=e,s=n.includes(i);return sn.default.createElement(Bn.Menu,{anchorReference:"anchorPosition",anchorPosition:{top:e.y,left:e.x},transitionDuration:0,keepMounted:!0,open:!!e,onClose:t},sn.default.createElement(Bn.MenuItem,{dense:!0,disabled:!0},o),sn.default.createElement(Bn.MenuItem,{dense:!0,onClick:()=>{r.queueDialog(a=>[yD,{info:r.getRowData(o),model:r,nodeName:o,onClose:a}]),t()}},"More info..."),sn.default.createElement(Bn.MenuItem,{dense:!0,onClick:()=>{r.toggleCollapsed(i),t()}},s?"Show node":"Hide node"),sn.default.createElement(Bn.MenuItem,{dense:!0,onClick:()=>{r.drawRelativeTo(e.name),t()}},"Indicate differences from this row"),r.relativeTo?sn.default.createElement(Bn.MenuItem,{dense:!0,onClick:()=>{r.drawRelativeTo(void 0),t()}},"Clear reference row"):null)}),Ib=wD});function yb(e){let t=0;if(e.children)for(let r of e.children){let n=yb(r)+1;n>t&&(t=n)}return e.height=t,t}function wb(e,t,r,n){let o=t(e),i={data:e,children:null,parent:r,depth:n,height:0};return o?.length&&(i.children=o.map(s=>wb(s,t,i,n+1))),i}function bb(e,t){let r=wb(e,t,null,0);return yb(r),r}function Bb(e,t){function r(n){let o=t(n.data);if(n.children)for(let i of n.children)o+=r(i);return n.value=o,o}return r(e),e}function Sb(e,t){function r(n){if(n.children){n.children.sort(t);for(let o of n.children)r(o)}}return r(e),e}function ms(e,t){if(t(e))return e;if(e.children)for(let r of e.children){let n=ms(r,t);if(n)return n}}function gs(e){let t=[];function r(n){if(n.children)for(let o of n.children)r(o);else t.push(n)}return r(e),t}function Qb(e){let t=[];function r(n){if(t.push(n),n.children)for(let o of n.children)r(o)}return r(e),t}function Vc(e){let t=[];function r(n){if(n.children)for(let o of n.children)t.push({source:n,target:o}),r(o)}return r(e),t}function Mb(e,t,r){let n=gs(e),o=n.length,i=t/o;for(let l=0;l<o;l++)n[l].x=(l+.5)*i;function s(l){if(!l.children)return;for(let u of l.children)s(u);let A=0;for(let u of l.children)A+=u.x;l.x=A/l.children.length}s(e);let a=e.height;function c(l,A){if(l.y=a===0?r:A/a*r,l.children)for(let u of l.children)c(u,A+1)}c(e,0)}function vb(e){e.children&&(e._children=e.children,e.children=null)}function jf(e){return(e.data.length||0)+(e.children?e.children.reduce((t,r)=>Math.max(t,jf(r)),0):0)}function Jf(e,t,r){if(e.len=(t+=Math.max(e.data.length||0,0))*r,e.children)for(let n of e.children)Jf(n,t,r)}var Vf=g(()=>{});function ps(e){if(e.depthToLeaf!==void 0)return e.depthToLeaf;if(!e.children||e.children.length===0)e.depthToLeaf=0;else{let t=0;for(let r of e.children)t=Math.max(t,1+ps(r));e.depthToLeaf=t}return e.depthToLeaf}function zc(e){let t=e.len||0;if(e.children)for(let r of e.children)t=Math.max(t,zc(r));return t}function Wc(e,t,r,n){if(t)return e.len;let o=ps(e);return(n-o)/n*r}function bD({offsetY:e,ctx:t,model:r,theme:n,blockSizeYOverride:o}){let{hierarchy:i,showBranchLenEffective:s,blockSize:a}=r,c=o||a;t.strokeStyle=n.palette.text.primary;let l=zc(i),A=ps(i);for(let u of Vc(i)){let{source:d,target:m}=u,p=d.x,C=m.x,x=Wc(m,s,l,A),I=Wc(d,s,l,A);if(x===void 0||I===void 0)continue;let h=Math.min(p,C),y=Math.max(p,C);e+c>=h&&y>=e&&(t.beginPath(),t.moveTo(I,p),t.lineTo(I,C),t.lineTo(x,C),t.stroke())}}function BD({ctx:e,clickMap:t,offsetY:r,model:n,blockSizeYOverride:o}){let{hierarchy:i,showBranchLenEffective:s,collapsed:a,blockSize:c,marginLeft:l}=n,A=o||c,u=zc(i),d=ps(i);for(let m of Qb(i)){let p=Wc(m,s,u,d);if(p===void 0)continue;let{data:C}=m,x=m.x,{id:I,name:h}=C;m.height>=1&&x>r-Yc&&x<r+A+Yc&&(e.strokeStyle="black",e.fillStyle=a.includes(I)?"black":"white",e.beginPath(),e.arc(p,x,to,0,2*Math.PI),e.fill(),e.stroke(),t?.insert({minX:p-to+l,maxX:p-to+Yf+l,minY:x-to,maxY:x-to+Yf,branch:!0,id:I,name:h}))}}function SD({theme:e,model:t,offsetY:r,ctx:n,clickMap:o,blockSizeYOverride:i}){let{fontSize:s,showBranchLenEffective:a,treeMetadata:c,blockSize:l,labelsAlignRight:A,drawTree:u,treeAreaWidth:d,treeAreaWidthMinusMargin:m,marginLeft:p,leaves:C,noTree:x,hierarchy:I}=t,h=i||l,y=n.measureText("M").width;A?(n.textAlign="right",n.setLineDash([1,3])):n.textAlign="start";let w=zc(I),S=ps(I);for(let v of C){let{data:{name:M,id:R}}=v,T=v.x,V=c[M]?.genome||M;if(T>r-Yc&&T<r+h+Yc){let Q=T+s/4,F=0;x||(F=Wc(v,a,w,S)||0);let{width:q}=n.measureText(V);if(n.fillStyle=e.palette.text.primary,A){let ye=m-2;u&&!x&&(n.moveTo(F+to+2,T),n.lineTo(ye-2-q,T),n.stroke()),n.fillText(V,ye,Q),o?.insert({minX:d-q,maxX:d,minY:Q-y,maxY:Q,name:M,id:R})}else{let G=x?2:F+Yf;n.fillText(V,G,Q),o?.insert({minX:G+p,maxX:G+q+p,minY:Q-y,maxY:Q,name:M,id:R})}}}n.setLineDash([])}function $c({model:e,clickMap:t,ctx:r,offsetY:n,theme:o,highResScaleFactorOverride:i,blockSizeYOverride:s}){t?.clear();let{noTree:a,drawTree:c,drawNodeBubbles:l,highResScaleFactor:A,fontSize:u,showTreeText:d,marginLeft:m,nref:p,rowHeight:C}=e;r.resetTransform();let x=p<0?Number.NEGATIVE_INFINITY:i||A;r.scale(x,x),r.translate(m,-n);let I=r.font;r.font=I.replace(/\d+px/,`${u}px`),!a&&c&&(bD({ctx:r,offsetY:n,model:e,theme:o,blockSizeYOverride:s}),l&&BD({ctx:r,offsetY:n,clickMap:t,model:e,blockSizeYOverride:s})),d&&SD({ctx:r,offsetY:n,model:e,clickMap:t,theme:o,blockSizeYOverride:s}),t?.finish()}var mi,Yc,to,Yf,Kc=g(()=>{Vf();mi=600,Yc=5,to=2.5,Yf=to*2});var Te,Tb,_b,Db,kb,QD,Wf,MD,Nb,Lb=g(()=>{Te=f(B(),1),Tb=f(N(),1);Ab();_b=f(zr(),1),Db=f(P(),1),kb=f(Me(),1);db();xb();Kc();QD=(0,kb.makeStyles)()(e=>({tooltip:{position:"fixed",pointerEvents:"none",zIndex:1e4,backgroundColor:e.palette.grey[700],color:e.palette.common.white,padding:"4px 8px",borderRadius:4,fontSize:12,whiteSpace:"nowrap",maxWidth:300,overflow:"hidden",textOverflow:"ellipsis"}})),Wf=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;return}else{this.flatbush=new fs(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])??[]}},MD=(0,Db.observer)(function({model:e,offsetY:t}){let{classes:r}=QD(),n=(0,Tb.useTheme)(),o=(0,Te.useRef)(null),i=(0,Te.useRef)(new Wf),s=(0,Te.useRef)(null),[a,c]=(0,Te.useState)(),[l,A]=(0,Te.useState)(),[u,d]=(0,Te.useState)(),[m,p]=(0,Te.useState)(),{scrollY:C,treeAreaWidth:x,blockSize:I,highResScaleFactor:h}=e,y=x+mi,w=I,S=y*h,v=w*h,M=(0,Te.useCallback)(Q=>{e.incrementRef(),o.current=Q},[e,w,y]);(0,Te.useEffect)(()=>{let Q=o.current?.getContext("2d");if(Q)return(0,_b.autorun)(()=>{Q.resetTransform(),Q.clearRect(0,0,(x+mi)*h,I*h),$c({ctx:Q,model:e,offsetY:t,clickMap:i.current,theme:n})})},[e,I,h,x,t,n]),(0,Te.useEffect)(()=>{let Q=s.current?.getContext("2d");if(Q&&(Q.resetTransform(),Q.clearRect(0,0,x+mi,I),Q.translate(0,-t),u)){let{minX:F,maxX:q,minY:G,maxY:ye}=u;Q.fillStyle="rgba(0,0,0,0.1)",Q.fillRect(F,G,q-F,ye-G)}},[u,t,I,x]);function R(Q){let F=Q.nativeEvent.offsetX,q=Q.nativeEvent.offsetY,[G]=i.current.search({minX:F,maxX:F+1,minY:q+t,maxY:q+1+t});return G?.branch?{...G,x:Q.clientX,y:Q.clientY}:void 0}function T(Q){let F=Q.nativeEvent.offsetX,q=Q.nativeEvent.offsetY,[G]=i.current.search({minX:F,maxX:F+1,minY:q+t,maxY:q+1+t});return G&&!G.branch?{...G,x:Q.clientX,y:Q.clientY}:void 0}let V={width:y,height:w,top:C+t,left:0,position:"absolute"};return Te.default.createElement(Te.default.Fragment,null,a?.id?Te.default.createElement(fb,{node:a,model:e,onClose:()=>{c(void 0)}}):null,l?.id?Te.default.createElement(Ib,{node:l,model:e,onClose:()=>{A(void 0)}}):null,Te.default.createElement("canvas",{width:S,height:v,style:V,onMouseMove:Q=>{if(!o.current)return;let F=T(Q),q=R(Q),G=F||q;if(o.current.style.cursor=G?"pointer":"default",d(F),p(G?{name:G.name,x:Q.clientX,y:Q.clientY}:void 0),G){if(e.setHoveredTreeNode(G.id),F?.name){let ye=e.rowNamesSet.get(F.name);ye!==void 0&&e.setMousePos(void 0,ye)}}else e.setHoveredTreeNode(void 0),e.setMousePos(void 0,void 0)},onClick:Q=>{let{clientX:F,clientY:q}=Q,G=R(Q);G?.id&&c({x:F,y:q,id:G.id,name:G.name});let ye=T(Q);ye?.id&&A({...ye,x:F,y:q})},onMouseLeave:()=>{d(void 0),p(void 0),e.setHoveredTreeNode(void 0),e.setMousePos(void 0,void 0)},ref:M}),Te.default.createElement("canvas",{style:{...V,pointerEvents:"none",zIndex:100},width:y,height:w,ref:s}),m?Te.default.createElement("div",{className:r.tooltip,style:{left:m.x+12,top:m.y+12}},m.name):null)}),Nb=MD});var yr,Rb,Pb,Ob,vD,Fb,TD,Gb,Hb=g(()=>{yr=f(B(),1),Rb=f(Nt(),1),Pb=f(zr(),1),Ob=f(P(),1);Lb();Kc();_a();vD="rgba(0,128,255,0.3)",Fb="rgba(255,165,0,0.2)",TD=(0,Ob.observer)(function({model:e}){let t=(0,yr.useRef)(null),r=(0,yr.useRef)(null),{treeWidth:n,height:o,blocksY:i,treeAreaWidth:s}=e,a=(0,yr.useCallback)(A=>{e.doScrollY(A)},[e]),{onMouseDown:c,onMouseUp:l}=Lo({ref:t,onScrollY:a});return(0,yr.useEffect)(()=>{let A=r.current?.getContext("2d");return A?(0,Pb.autorun)(()=>{if((0,Rb.isAlive)(e)){let{relativeTo:u,leaves:d,rowHeight:m,hoveredTreeNode:p,treeAreaWidth:C,height:x,scrollY:I,mouseOverRowName:h}=e;if(A.resetTransform(),A.clearRect(0,0,C,x),u){let y=d.find(w=>w.data.name===u);y&&(A.fillStyle=vD,A.fillRect(0,y.x+I-m/2,C,m))}if(p){A.fillStyle=Fb;for(let y of p.descendantNames){let w=d.find(S=>S.data.name===y);w&&A.fillRect(0,w.x+I-m/2,C,m)}}if(h&&h!==u&&!p?.descendantNames.includes(h)){let y=d.find(w=>w.data.name===h);y&&(A.fillStyle=Fb,A.fillRect(0,y.x+I-m/2,C,m))}}}):void 0},[e]),yr.default.createElement("div",{ref:t,onMouseDown:c,onMouseUp:l,onMouseLeave:A=>{A.preventDefault()},style:{height:o,position:"relative",width:n+mi}},i.map(A=>yr.default.createElement(Nb,{key:A,model:e,offsetY:A})),yr.default.createElement("canvas",{ref:r,width:s,height:o,style:{position:"absolute",top:0,left:0,width:s,height:o,zIndex:1e3,pointerEvents:"none"}}))}),Gb=TD});var zf,Ub,_D,qb,jb=g(()=>{zf=f(B(),1),Ub=f(P(),1);Hb();_D=(0,Ub.observer)(function({model:e}){let{treeAreaWidth:t}=e;return zf.default.createElement("div",{style:{overflow:"hidden",flexShrink:0,width:t}},zf.default.createElement(Gb,{model:e}))}),qb=_D});var Jb,Vb,DD,Yb,Wb=g(()=>{Jb=f(B(),1),Vb=f(P(),1),DD=(0,Vb.observer)(({model:e})=>{let{treeAreaWidth:t}=e;return Jb.default.createElement("div",{style:{flexShrink:0,width:t}})}),Yb=DD});var re,ro,kD,ND,LD,FD,RD,PD,zb,$b=g(()=>{re=f(B(),1),ro=f(P(),1);Jh();r0();s0();Lw();Pw();sb();jb();Wb();kD=(0,ro.observer)(function({model:e}){let{showHorizontalScrollbar:t}=e;return re.default.createElement("div",{style:{display:"flex"}},re.default.createElement(Yb,{model:e}),t?re.default.createElement(Rw,{model:e}):null)}),ND=(0,ro.observer)(function({model:e}){let{mouseCol:t,mouseClickCol:r,colWidth:n,scrollX:o,treeAreaWidth:i,resizeHandleWidth:s,totalTrackAreaHeight:a,msaAreaWidth:c,verticalScrollbarWidth:l}=e,A=i+s,u=c-l;return re.default.createElement("div",{style:{position:"absolute",left:A,top:0,width:u,height:a,overflow:"hidden",pointerEvents:"none"}},t!==void 0?re.default.createElement("div",{style:{position:"absolute",left:t*n+o,top:0,width:n,height:a,backgroundColor:"rgba(0,0,0,0.15)",zIndex:100}}):null,r!==void 0?re.default.createElement("div",{style:{position:"absolute",left:r*n+o,top:0,width:n,height:a,backgroundColor:"rgba(128,128,0,0.2)",zIndex:100}}):null)}),LD=(0,ro.observer)(function({model:e}){let{turnedOnTracks:t}=e;return t.length===0?null:re.default.createElement("div",{style:{position:"relative"}},re.default.createElement(ND,{model:e}),t.map(r=>re.default.createElement(t0,{key:r.model.id,model:e,track:r})))}),FD=(0,ro.observer)(function({model:e}){let{showVerticalScrollbar:t}=e;return re.default.createElement("div",{style:{display:"flex"}},re.default.createElement(qb,{model:e}),re.default.createElement(qh,{model:e}),re.default.createElement(ib,{model:e}),t?re.default.createElement(i0,{model:e}):null)}),RD=(0,ro.observer)(function({model:e}){return re.default.createElement("div",{style:{position:"relative"}},re.default.createElement(kD,{model:e}),re.default.createElement(LD,{model:e}),re.default.createElement(FD,{model:e}))}),PD=(0,ro.observer)(function({model:e}){let{height:t,viewInitialized:r,DialogComponent:n,DialogProps:o}=e;return re.default.createElement("div",null,r?re.default.createElement(re.default.Fragment,null,re.default.createElement("div",{style:{height:t,overflow:"hidden"}},re.default.createElement(Nw,{model:e}),re.default.createElement(RD,{model:e})),re.default.createElement(jh,{model:e}),n?re.default.createElement(re.Suspense,{fallback:null},re.default.createElement(n,{...o})):null):null)}),zb=PD});var Kb,Xb,Zb,eB=g(()=>{Kb=`CLUSTAL O(1.2.3) multiple sequence alignment
|
|
31
|
+
`);return xr.default.createElement(xr.default.Fragment,null,xr.default.createElement(Pc.Button,{color:"primary",variant:"contained",onClick:()=>{Ri(l),n(!0),setTimeout(()=>{n(!1)},500)}},r?"Copied!":"Copy to clipboard"),xr.default.createElement(At,{label:"Show gaps",checked:o,onChange:()=>{i(!o)}}),xr.default.createElement(At,{label:"Show empty",checked:s,onChange:()=>{a(!s)}}),xr.default.createElement(Pc.TextField,{variant:"outlined",multiline:!0,className:t.dialogContent,minRows:5,maxRows:10,fullWidth:!0,value:l,slotProps:{input:{readOnly:!0,className:t.textAreaFont}}}))}var xr,Pc,by,q_,Pf=g(()=>{xr=f(b(),1),Pc=f(_(),1),by=f(be(),1);Rc();su();q_=(0,by.makeStyles)()({textAreaFont:{fontFamily:"Courier New",wordWrap:"break-word"},dialogContent:{background:"lightgrey",margin:4,minWidth:"80em"}})});var My={};Je(My,{default:()=>J_});var Ai,By,Sy,Qy,j_,J_,vy=g(()=>{Ai=f(b(),1);Nc();Rf();By=f(ye(),1),Sy=f(_(),1),Qy=f(R(),1);Pf();j_=(0,Qy.observer)(function({model:e,onClose:t}){let{header:r}=e;return Ai.default.createElement(By.Dialog,{onClose:()=>{t()},open:!0,title:"Metadata",maxWidth:"xl"},Ai.default.createElement(Sy.DialogContent,null,Ai.default.createElement(Rr,{attributes:r}),Ai.default.createElement(Kn,{title:"sequence"},Ai.default.createElement(us,{str:e.rows}))))}),J_=j_});var _y={};Je(_y,{default:()=>Ty});function Ty({model:e,onClose:t}){let[r,n]=(0,we.useState)(!0),[o,i]=(0,we.useState)(!0),[s,a]=(0,we.useState)("viewport"),[c,l]=(0,we.useState)(),A=(0,Ce.useTheme)(),{totalWidth:u,totalHeight:m,treeAreaWidth:d,turnedOnTracks:p}=e,C=p.length>0,y=u+d,I=m,h=s==="entire"&&(y>1e4||I>1e4);return we.default.createElement(Oc.Dialog,{onClose:()=>{t()},open:!0,title:"Export SVG"},we.default.createElement(Ce.DialogContent,null,c?we.default.createElement(Oc.ErrorMessage,{error:c}):null,we.default.createElement(Ce.Typography,null,"Settings:"),we.default.createElement(At,{label:"Include minimap?",disabled:s==="entire",checked:r,onChange:()=>{n(!r)}}),C?we.default.createElement(At,{label:"Include tracks?",checked:o,onChange:()=>{i(!o)}}):null,we.default.createElement("div",null,we.default.createElement(Ce.FormControl,null,we.default.createElement(Ce.FormLabel,null,"Export type"),we.default.createElement(Ce.RadioGroup,{value:s,onChange:x=>{a(x.target.value)}},we.default.createElement(Ce.FormControlLabel,{value:"entire",control:we.default.createElement(Ce.Radio,null),label:"Entire MSA"}),we.default.createElement(Ce.FormControlLabel,{value:"viewport",control:we.default.createElement(Ce.Radio,null),label:"Current viewport only"})))),h?we.default.createElement(Ce.Alert,{severity:"warning",style:{marginTop:8}},"The entire MSA is very large (",Math.round(y),"x",Math.round(I)," pixels). Export may be slow or fail."):null),we.default.createElement(Ce.DialogActions,null,we.default.createElement(Ce.Button,{variant:"contained",color:"primary",onClick:()=>{(async()=>{try{await e.exportSVG({theme:A,includeMinimap:s==="entire"?!1:r,includeTracks:C&&o,exportType:s}),t()}catch(x){console.error(x),l(x)}})()}},"Submit"),we.default.createElement(Ce.Button,{variant:"contained",color:"secondary",onClick:()=>{t()}},"Cancel")))}var we,Oc,Ce,Dy=g(()=>{we=f(b(),1),Oc=f(ye(),1),Ce=f(_(),1);Rc()});var Ry={};Je(Ry,{default:()=>$_});var W,Ny,Ke,fs,Ly,Fy,ky,V_,Y_,W_,z_,$_,Py=g(()=>{W=f(b(),1),Ny=f(ye(),1),Ke=f(_(),1),fs=f(R(),1),Ly=f(be(),1);Sc();Rc();Fy=(0,Ly.makeStyles)()(e=>({field:{margin:e.spacing(4)},flex:{display:"flex"},minw:{width:"80em"}})),ky=(e=0)=>+e.toFixed(1),V_=(0,fs.observer)(function({model:e}){return W.default.createElement(W.default.Fragment,null,W.default.createElement(Y_,{model:e}),W.default.createElement(W_,{model:e}))}),Y_=(0,fs.observer)(function({model:t}){let{drawTree:r,drawLabels:n,drawNodeBubbles:o,labelsAlignRight:i,showBranchLen:s}=t;return W.default.createElement("div",null,W.default.createElement("h1",null,"Tree options"),W.default.createElement(At,{checked:s,label:"Show branch length?",onChange:()=>{t.setShowBranchLen(!s)}}),W.default.createElement(At,{checked:o,label:"Draw clickable bubbles on tree branches?",onChange:()=>{t.setDrawNodeBubbles(!o)}}),W.default.createElement(At,{checked:r,label:"Show tree?",onChange:()=>{t.setDrawTree(!r)}}),W.default.createElement(At,{checked:i,label:"Tree labels align right?",onChange:()=>{t.setLabelsAlignRight(!i)}}),W.default.createElement(At,{checked:n,label:"Draw labels",onChange:()=>{t.setDrawLabels(!n)}}))}),W_=(0,fs.observer)(function({model:t}){let{classes:r}=Fy(),{bgColor:n,colWidth:o,allowedGappyness:i,drawMsaLetters:s,colorSchemeName:a,hideGaps:c,rowHeight:l}=t;return W.default.createElement("div",null,W.default.createElement("h1",null,"MSA options"),W.default.createElement(At,{checked:s,label:"Draw letters",onChange:()=>{t.setDrawMsaLetters(!s)}}),W.default.createElement(At,{checked:n,label:"Color letters instead of background of tiles",onChange:()=>{t.setBgColor(!n)}}),W.default.createElement(At,{checked:c,label:"Enable hiding gappy columns?",onChange:()=>{t.setHideGaps(!c)}}),c?W.default.createElement("div",{className:r.flex},W.default.createElement(Ke.Typography,null,"Hide columns w/ >",i,"% gaps"),W.default.createElement(Ke.Slider,{className:r.field,min:1,max:100,value:i,onChange:(A,u)=>{t.setAllowedGappyness(u)}})):null,W.default.createElement("div",{className:r.flex},W.default.createElement(Ke.Typography,null,"Column width (",ky(o),"px)"),W.default.createElement(Ke.Slider,{className:r.field,min:1,max:50,value:o,onChange:(A,u)=>{t.setColWidth(u)}})),W.default.createElement("div",{className:r.flex},W.default.createElement(Ke.Typography,null,"Row height (",ky(l),"px)"),W.default.createElement(Ke.Slider,{className:r.field,min:1,max:50,value:l,onChange:(A,u)=>{t.setRowHeight(u)}})),W.default.createElement(Ke.TextField,{select:!0,label:"Color scheme",value:a,onChange:A=>{t.setColorSchemeName(A.target.value)}},Object.keys(ai).map(A=>W.default.createElement(Ke.MenuItem,{key:A,value:A},A))))}),z_=(0,fs.observer)(function({model:e,onClose:t}){let{classes:r}=Fy();return W.default.createElement(Ny.Dialog,{open:!0,title:"Settings",maxWidth:"xl",onClose:()=>{t()}},W.default.createElement(Ke.DialogContent,{className:r.minw},W.default.createElement(V_,{model:e}),W.default.createElement(Ke.DialogActions,null,W.default.createElement(Ke.Button,{variant:"contained",color:"primary",onClick:()=>{t()}},"Submit"))))}),$_=z_});var Xn,Oy,K_,X_,Z_,eD,Gy,Hy=g(()=>{Xn=f(b(),1);ii();px();If();Ex();EA();Oy=f(R(),1);$x();K_=(0,Xn.lazy)(()=>Promise.resolve().then(()=>(vy(),My))),X_=(0,Xn.lazy)(()=>Promise.resolve().then(()=>(Dy(),_y))),Z_=(0,Xn.lazy)(()=>Promise.resolve().then(()=>(Py(),Ry))),eD=(0,Oy.observer)(({model:e})=>Xn.default.createElement(Lr,{menuItems:[{label:"Return to import form",icon:is,onClick:()=>{e.reset()}},{label:"Metadata",icon:gx,onClick:()=>{e.queueDialog(t=>[K_,{model:e,onClose:t}])}},{label:"More settings",icon:fa,onClick:()=>{e.queueDialog(t=>[Z_,{model:e,onClose:t}])}},{label:"Domain settings",type:"subMenu",subMenu:zx({model:e})},{label:"Export SVG",icon:Cx,onClick:()=>{e.queueDialog(t=>[X_,{onClose:t,model:e}])}}],anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"}},Xn.default.createElement(is,null))),Gy=eD});var Gc,Hc,Uy,tD,qy,jy=g(()=>{Gc=f(b(),1),Hc=f(_(),1),Uy=f(R(),1),tD=(0,Uy.observer)(function({model:t}){let{hideGaps:r,allowedGappyness:n}=t;return r?Gc.default.createElement("div",{style:{display:"flex",alignItems:"center",gap:8}},Gc.default.createElement(Hc.Typography,{style:{whiteSpace:"nowrap"}},"Hide columns w/ >",n,"% gaps"),Gc.default.createElement(Hc.Slider,{style:{width:100},min:1,max:100,value:n,onChange:(o,i)=>{t.setAllowedGappyness(i)}})):null}),qy=tD});var Jy,Vy,Yy,Wy,rD,nD,zy,$y=g(()=>{Jy=f(b(),1),Vy=f(_(),1),Yy=f(R(),1),Wy=f(be(),1),rD=(0,Wy.makeStyles)()({margin:{margin:"auto",marginLeft:10}}),nD=(0,Yy.observer)(function({model:e}){let{mouseOverRowName:t,mouseCol:r}=e,{classes:n}=rD();return t&&r!==void 0?Jy.default.createElement(Vy.Typography,{className:n.margin},t,":",e.visibleColToSeqPosOneBased(t,r)," (",e.visibleColToRowLetter(t,r),")"):null}),zy=nD});var Uc,Ky,Xy,Zy,ew,oD,iD,tw,rw=g(()=>{Uc=f(b(),1),Ky=f(ye(),1),Xy=f(_(),1),Zy=f(R(),1),ew=f(be(),1),oD=(0,ew.makeStyles)()({margin:{margin:"auto",marginLeft:10}}),iD=(0,Zy.observer)(({model:e})=>{let{status:t}=e,{classes:r}=oD();return t?Uc.default.createElement(Xy.Typography,{className:r.margin},Uc.default.createElement(Ky.LoadingEllipses,{message:t.msg,component:"span"})," ",t.url?Uc.default.createElement("a",{href:t.url,target:"_blank",rel:"noreferrer"},"(status)"):null):null}),tw=iD});var nw,ow,iw=g(()=>{"use client";Y();nw=f(L(),1),ow=(0,T.createSvgIcon)((0,nw.jsx)("path",{d:"M3 17v2h6v-2zM3 5v2h10V5zm10 16v-2h8v-2h-8v-2h-2v6zM7 9v2H3v2h4v2h2V9zm14 4v-2H11v2zm-6-4h2V7h4V5h-4V3h-2z"}),"Tune")});var Of,sw,sD,aw,cw=g(()=>{Of=f(b(),1);ii();iw();sw=f(R(),1),sD=(0,sw.observer)(function({model:e}){let{drawMsaLetters:t,hideGaps:r,bgColor:n}=e;return Of.default.createElement(Lr,{closeAfterItemClick:!1,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:[{label:"Draw letters",type:"checkbox",checked:t,onClick:()=>{e.setDrawMsaLetters(!t)}},{label:"Color letters instead of background of tiles",type:"checkbox",checked:!n,onClick:()=>{e.setBgColor(!n)}},{label:"Enable hiding gappy columns?",type:"checkbox",checked:r,onClick:()=>{e.setHideGaps(!r)}}]},Of.default.createElement(ow,null))}),aw=sD});var Gf,qc,lw,aD,Aw,uw=g(()=>{Gf=f(b(),1),qc=f(_(),1),lw=f(R(),1),aD=(0,lw.observer)(function({model:e}){let{currentAlignment:t,alignmentNames:r}=e;return r.length>0?Gf.default.createElement(qc.TextField,{select:!0,variant:"outlined",value:t,size:"small",onChange:n=>{e.setCurrentAlignment(+n.target.value),e.setScrollX(0),e.setScrollY(0)}},r.map((n,o)=>Gf.default.createElement(qc.MenuItem,{key:`${n}-${o}`,value:o},n))):null}),Aw=aD});var fw,mw,dw=g(()=>{"use client";Y();fw=f(L(),1),mw=(0,T.createSvgIcon)((0,fw.jsx)("path",{d:"M22 11V3h-7v3H9V3H2v8h7V8h2v10h4v3h7v-8h-7v3h-2V8h2v3z"}),"AccountTree")});var Hf,gw,cD,pw,hw=g(()=>{Hf=f(b(),1);ii();dw();gw=f(R(),1),cD=(0,gw.observer)(function({model:e}){let{drawTree:t,showBranchLen:r,labelsAlignRight:n,drawNodeBubbles:o,drawLabels:i,rows:s}=e;return Hf.default.createElement(Lr,{closeAfterItemClick:!1,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},menuItems:[{label:"Show branch length",type:"checkbox",checked:r,onClick:()=>{e.setShowBranchLen(!r)}},{label:"Show tree",type:"checkbox",checked:t,onClick:()=>{e.setDrawTree(!t)}},{label:"Draw clickable bubbles on tree branches",type:"checkbox",checked:o,onClick:()=>{e.setDrawNodeBubbles(!o)}},{label:"Tree labels align right",type:"checkbox",checked:n,onClick:()=>{e.setLabelsAlignRight(!n)}},{label:"Draw labels",type:"checkbox",checked:i,onClick:()=>{e.setDrawLabels(!i)}},...s.length>=2?[{label:"Advanced",type:"subMenu",subMenu:[{label:"Calculate neighbor joining tree (BLOSUM62)",onClick:()=>{try{e.calculateNeighborJoiningTreeFromMSA()}catch(a){console.error("Failed to calculate NJ tree:",a),e.setError(a)}}}]}]:[]]},Hf.default.createElement(mw,null))}),pw=cD});var Uf,Cw,Ew=g(()=>{"use client";Y();Uf=f(L(),1),Cw=(0,T.createSvgIcon)([(0,Uf.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,Uf.jsx)("path",{d:"M12 10h-2v2H9v-2H7V9h2V7h1v2h2z"},"1")],"ZoomIn")});var Iw,xw,yw=g(()=>{"use client";Y();Iw=f(L(),1),xw=(0,T.createSvgIcon)((0,Iw.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 Zn,qf,ww,lD,bw,Bw=g(()=>{Zn=f(b(),1);Ew();yw();qf=f(_(),1),ww=f(R(),1),lD=(0,ww.observer)(function({model:t}){return Zn.default.createElement(Zn.default.Fragment,null,Zn.default.createElement(qf.IconButton,{onClick:()=>{t.zoomIn()}},Zn.default.createElement(Cw,null)),Zn.default.createElement(qf.IconButton,{onClick:()=>{t.zoomOut()}},Zn.default.createElement(xw,null)))}),bw=lD});var Sw,Qw,Mw=g(()=>{"use client";Y();Sw=f(L(),1),Qw=(0,T.createSvgIcon)((0,Sw.jsx)("path",{d:"M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2m0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2"}),"MoreVert")});var vw,Tw,_w=g(()=>{"use client";Y();vw=f(L(),1),Tw=(0,T.createSvgIcon)((0,vw.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 jf,Dw,AD,kw,Nw=g(()=>{jf=f(b(),1);ii();Mw();_w();Dw=f(R(),1),AD=(0,Dw.observer)(function({model:e}){return jf.default.createElement(Lr,{menuItems:[{label:"Fit both vertically/horizontally",onClick:()=>{e.fit()}},{label:"Fit vertically",onClick:()=>{e.fitVertically()}},{label:"Fit horizontally",onClick:()=>{e.fitHorizontally()}},{label:"Reset zoom to default",icon:Tw,onClick:()=>{e.resetZoom()}}]},jf.default.createElement(Qw,null))}),kw=AD});var Lw,Fw=g(()=>{Lw="5.0.16"});var Ow={};Je(Ow,{default:()=>Pw});function Pw({onClose:e}){return Ue.default.createElement(Rw.Dialog,{open:!0,title:"About",onClose:()=>{e()}},Ue.default.createElement(wt.DialogContent,null,Ue.default.createElement(wt.Typography,null,"MSAView ",Lw," (",Ue.default.createElement(wt.Link,{href:"https://github.com/gmod/react-msaview"},"Github"),")"),Ue.default.createElement("ul",null,Ue.default.createElement("li",null,Ue.default.createElement(wt.Typography,null,"We use some color schemes from the"," ",Ue.default.createElement(wt.Link,{href:"https://github.com/biotite-dev/biotite"},"biotite")," ","project, and their license is reproduced"," ",Ue.default.createElement(wt.Link,{href:"https://github.com/biotite-dev/biotite/blob/master/LICENSE.rst"},"here"))),Ue.default.createElement("li",null,Ue.default.createElement(wt.Typography,null,"See this page for some information on jalview colorings"," ",Ue.default.createElement(wt.Link,{href:"https://www.jalview.org/help/html/colourSchemes/"},"here"))),Ue.default.createElement("li",null,Ue.default.createElement(wt.Typography,null,"See this page for some info on the clustal, cinema, maeditor, and lesk color schemes"," ",Ue.default.createElement(wt.Link,{href:"http://www.bioinformatics.nl/~berndb/aacolour.html"},"here"))),Ue.default.createElement("li",null,Ue.default.createElement(wt.Typography,null,"See this paper about the flower color scheme"," ",Ue.default.createElement(wt.Link,{href:"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7245768/"},"here"))))))}var Ue,Rw,wt,Gw=g(()=>{Ue=f(b(),1),Rw=f(ye(),1),wt=f(_(),1);Fw()});function mD(){return Ne.default.createElement("div",{style:{flex:1}})}var Ne,Hw,Uw,uD,fD,qw,jw=g(()=>{Ne=f(b(),1);oh();C0();Hw=f(_(),1),Uw=f(R(),1);mx();Hy();jy();$y();rw();cw();uw();hw();Bw();Nw();uD=(0,Ne.lazy)(()=>Promise.resolve().then(()=>(Gw(),Ow))),fD=(0,Uw.observer)(function({model:e}){let[t,{height:r}]=HA();return(0,Ne.useEffect)(()=>{e.setHeaderHeight(r||0)},[e,r]),Ne.default.createElement("div",{ref:t,style:{display:"flex"}},Ne.default.createElement(Gy,{model:e}),Ne.default.createElement(fx,{model:e}),Ne.default.createElement(pw,{model:e}),Ne.default.createElement(aw,{model:e}),Ne.default.createElement(bw,{model:e}),Ne.default.createElement(kw,{model:e}),Ne.default.createElement(qy,{model:e}),Ne.default.createElement("div",{style:{paddingLeft:20,margin:"auto"}},Ne.default.createElement(Aw,{model:e})),Ne.default.createElement(zy,{model:e}),Ne.default.createElement(mD,null),Ne.default.createElement(tw,{model:e}),Ne.default.createElement(Hw.IconButton,{onClick:()=>{e.queueDialog(n=>[uD,{onClose:n}])}},Ne.default.createElement(h0,null)))});qw=fD});var Gt,Jw,dD,Vw,Yw=g(()=>{Gt=f(b(),1),Jw=f(R(),1),dD=(0,Jw.observer)(function({model:e}){let[t,r]=(0,Gt.useState)(),[n,o]=(0,Gt.useState)(!1),i=(0,Gt.useRef)(!1),{scrollX:s,msaAreaWidth:a,minimapHeight:c,colWidth:l,numColumns:A}=e,u=a/A/l,m=-s,d=m+a,p=m*u,C=d*u,y="rgba(66, 119, 127, 0.3)",I=Math.max(C-p,20);(0,Gt.useEffect)(()=>{function w(S){t!==void 0&&(i.current||(i.current=!0,window.requestAnimationFrame(()=>{e.setScrollX(t.scrollX-(S.clientX-t.clientX)/u),i.current=!1})))}function Q(){r(void 0)}if(t!==void 0)return document.addEventListener("mousemove",w),document.addEventListener("mouseup",Q),()=>{document.removeEventListener("mousemove",w),document.removeEventListener("mousemove",Q)}},[e,u,t]);let h=12,x=c-h;return Gt.default.createElement("div",{style:{position:"relative",height:c,width:"100%"}},Gt.default.createElement("div",{style:{height:h,boxSizing:"border-box",border:"1px solid #555"}}),Gt.default.createElement("div",{style:{position:"absolute",top:0,left:Math.max(0,p),background:n?"rgba(66,119,127,0.6)":y,cursor:"pointer",height:h,width:I,zIndex:100},onMouseOver:()=>{o(!0)},onMouseOut:()=>{o(!1)},onMouseDown:w=>{r({clientX:w.clientX,scrollX:e.scrollX})}}),Gt.default.createElement("svg",{height:x,style:{width:"100%"}},Gt.default.createElement("polygon",{fill:y,points:[[p+I,0],[p,0],[0,x],[a,x]].toString()})))}),Vw=dD});function Jf(){return jc.default.createElement("div",{style:{position:"absolute",left:"50%",top:"50%"}},jc.default.createElement(Jc.CircularProgress,null),jc.default.createElement(Jc.Typography,null,"Loading..."))}var jc,Jc,Ww=g(()=>{jc=f(b(),1),Jc=f(_(),1)});function Vc({model:e,offsetX:t,offsetY:r,ctx:n,highResScaleFactorOverride:o,blockSizeYOverride:i}){let{leaves:s,blockSize:a,rowHeight:c,highResScaleFactor:l,showDomains:A}=e;if(A){let u=o||l,m=i||a;n.resetTransform(),n.scale(u,u),n.translate(-t,c/2-r);let d=Math.max(0,Math.floor((r-c)/c)),p=Math.max(0,Math.ceil((r+m+c)/c)),C=s.slice(d,p);gD({model:e,ctx:n,visibleLeaves:C})}}function gD({model:e,ctx:t,visibleLeaves:r}){let{subFeatureRows:n,colWidth:o,rowHeight:i,fillPalette:s,strokePalette:a,tidyFilteredGatheredInterProAnnotations:c}=e;for(let l=0,A=r.length;l<A;l++){let u=r[l],{x:m,data:{name:d}}=u,p=m,C=c[d];if(C)for(let y=0,I=C.length;y<I;y++){let{start:h,end:x,accession:w}=C[y],Q=e.seqPosToVisibleCol(d,h-1),S=e.seqPosToVisibleCol(d,x);if(Q===void 0||S===void 0)continue;let M=Q*o;t.fillStyle=s[w],t.strokeStyle=a[w];let F=n?4:i,D=p-i+(n?y*F:0),re=o*(S-Q);t.fillRect(M,D,re,F),t.strokeRect(M,D,re,F)}}}var Vf=g(()=>{});function Yc({model:e,offsetX:t,offsetY:r,contrastScheme:n,ctx:o,theme:i,highResScaleFactorOverride:s,blockSizeXOverride:a,blockSizeYOverride:c}){let{colWidth:l,blockSize:A,rowHeight:u,fontSize:m,highResScaleFactor:d,actuallyShowDomains:p,leaves:C,bgColor:y}=e,I=s||d,h=a||A,x=c||A;o.resetTransform(),o.scale(I,I),o.translate(-t,u/2-r),o.textAlign="center",o.font=o.font.replace(/\d+px/,`${y?"":"bold "}${m}px`);let w=Math.max(0,Math.floor((r-u)/u)),Q=Math.max(0,Math.ceil((r+x+u)/u)),S=Math.max(0,Math.floor(t/l)),M=Math.max(0,Math.ceil((t+h)/l)),F=C.slice(w,Q);p||pD({model:e,ctx:o,theme:i,offsetX:t,xStart:S,xEnd:M,visibleLeaves:F}),hD({model:e,ctx:o,offsetX:t,contrastScheme:n,xStart:S,xEnd:M,visibleLeaves:F}),CD({model:e,ctx:o,xStart:S,xEnd:M,visibleLeaves:F}),o.resetTransform()}function pD({model:e,offsetX:t,ctx:r,visibleLeaves:n,theme:o,xStart:i,xEnd:s}){let{bgColor:a,colorSchemeName:c,colorScheme:l,columns:A,colWidth:u,rowHeight:m,relativeTo:d}=e,p=d?A[d]?.slice(i,s):null,C=c==="clustalx_protein_dynamic",y=c==="percent_identity_dynamic",I=t-t%u;for(let h=0,x=n.length;h<x;h++){let w=n[h],{data:{name:Q}}=w,S=w.x,M=A[Q]?.slice(i,s);if(M)for(let F=0,D=M.length;F<D;F++){let re=M[F],v=p&&Q!==d&&re===p[F],H=C?e.colClustalX[i+F][re]:y?(()=>{let q=e.colConsensus[i+F];return re===q.letter?q.color:void 0})():l[re.toUpperCase()];if(a||C||y){let q=v?o.palette.action.hover:H||o.palette.background.default;r.fillStyle=q,r.fillRect(F*u+I,S-m,u,m)}}}}function hD({model:e,offsetX:t,contrastScheme:r,ctx:n,visibleLeaves:o,xStart:i,xEnd:s}){let{bgColor:a,actuallyShowDomains:c,showMsaLetters:l,colorScheme:A,columns:u,colWidth:m,rowHeight:d,relativeTo:p}=e,C=p?u[p]?.slice(i,s):null;if(l){let y=t-t%m,I=m/2,h=d/4;for(let x=0,w=o.length;x<w;x++){let Q=o[x],{data:{name:S}}=Q,M=Q.x-h,F=u[S]?.slice(i,s);if(F)for(let D=0,re=F.length;D<re;D++){let v=F[D],q=C&&S!==p&&v===C[D]?".":v,O=A[v.toUpperCase()],xe=r[v.toUpperCase()]||"black";n.fillStyle=c?"black":a?xe:O||"black",n.fillText(q,D*m+y+I,M)}}}}function CD({model:e,ctx:t,visibleLeaves:r,xStart:n,xEnd:o}){let{bgColor:i,hideGapsEffective:s}=e;s&&(t.lineWidth=1,t.strokeStyle="#f0f",zw({visibleLeaves:r,xStart:n,ctx:t,model:e,xEnd:o,offset:0}),t.strokeStyle=i?"#fff":"#000",zw({visibleLeaves:r,xStart:n,ctx:t,model:e,xEnd:o,offset:-1}))}function zw({model:e,ctx:t,visibleLeaves:r,xStart:n,xEnd:o,offset:i}){let{colWidth:a,rowHeight:c,insertionPositions:l}=e;for(let A of r){let{name:u}=A.data,m=l.get(u);if(m){let d=A.x;for(let{pos:p}of m)if(p>=n&&p<o){let C=p*a,y=d-c,I=d;t.beginPath(),t.moveTo(C+i,y+i);let h=y,x=!0;for(;h<I;){let w=Math.min(h+2,I),Q=x?C+1:C-1;t.lineTo(Q+i,w+i),h=w,x=!x}t.stroke()}}}}var Yf=g(()=>{});var Ht,$w,Kw,Xw,Zw,ED,eb,tb=g(()=>{Ht=f(b(),1),$w=f(ye(),1),Kw=f(_(),1),Xw=f($r(),1),Zw=f(R(),1);Vf();Yf();xn();ED=(0,Zw.observer)(function({model:e,offsetX:t,offsetY:r}){let{colWidth:n,rowHeight:o,scrollY:i,scrollX:s,colorScheme:a,blockSize:c,mouseClickCol:l,mouseClickRow:A,highResScaleFactor:u}=e,m=(0,Kw.useTheme)(),d=(0,Ht.useMemo)(()=>zn(a,m),[a,m]),p=(0,Ht.useRef)(null);(0,Ht.useEffect)(()=>{let h=p.current?.getContext("2d");if(h)return(0,Xw.autorun)(()=>{h.resetTransform(),h.clearRect(0,0,c*u,c*u),e.actuallyShowDomains&&Vc({ctx:h,offsetX:t,offsetY:r,model:e}),Yc({ctx:h,theme:m,offsetX:t,offsetY:r,contrastScheme:d,model:e})})},[e,t,r,m,c,u,d]);let[C,y]=(0,Ht.useState)(),{hoveredInsertion:I}=e;return Ht.default.createElement(Ht.default.Fragment,null,Ht.default.createElement("canvas",{ref:p,onMouseMove:h=>{if(!p.current)return;y({x:h.clientX,y:h.clientY});let{left:x,top:w}=p.current.getBoundingClientRect(),Q=h.clientX-x+t,S=h.clientY-w+r,M=Math.floor(Q/n),F=Math.floor(S/o);M>=0&&M<e.numColumns&&F>=0&&F<e.numRows?e.setMousePos(M,F):e.setMousePos(void 0,void 0)},onClick:h=>{if(!p.current)return;let{left:x,top:w}=p.current.getBoundingClientRect(),Q=h.clientX-x+t,S=h.clientY-w+r,M=Math.floor(Q/n),F=Math.floor(S/o);M===l&&F===A?e.setMouseClickPos(void 0,void 0):e.setMouseClickPos(M,F)},onMouseLeave:()=>{e.setMousePos(),y(void 0)},width:c*u,height:c*u,style:{position:"absolute",top:i+r,left:s+t,width:c,height:c}}),I&&C?Ht.default.createElement($w.BaseTooltip,{clientPoint:{x:C.x,y:C.y+15}},"Insertion (",I.letters.length,e.sequenceType==="amino"?"aa":"bp","):"," ",I.letters.length>20?`${I.letters.slice(0,20)}...`:I.letters):null)}),eb=ED});var on,rb,ID,nb,ob=g(()=>{on=f(b(),1),rb=f(R(),1);Ww();tb();Na();ID=(0,rb.observer)(function({model:e}){let{MSA:t,verticalScrollbarWidth:r,msaFilehandle:n,height:o,msaAreaWidth:i,blocks2d:s}=e,a=(0,on.useRef)(null),c=(0,on.useCallback)(m=>{e.doScrollX(m)},[e]),l=(0,on.useCallback)(m=>{e.doScrollY(m)},[e]),{onMouseDown:A,onMouseUp:u}=No({ref:a,onScrollX:c,onScrollY:l});return on.default.createElement("div",{ref:a,onMouseDown:A,onMouseUp:u,onMouseLeave:m=>{m.preventDefault()},style:{position:"relative",height:o,width:i-r,overflow:"hidden"}},!t&&!n?null:t?s.map(([m,d])=>on.default.createElement(eb,{key:`${m}_${d}`,model:e,offsetX:m,offsetY:d})):on.default.createElement(Jf,null))}),nb=ID});function sb({ctx:e,model:t}){let{mouseCol:r,colWidth:n,msaAreaWidth:o,verticalScrollbarWidth:i,height:s,rowHeight:a,scrollX:c,scrollY:l,mouseRow:A,mouseClickRow:u,mouseClickCol:m,relativeTo:d,rowNamesSet:p,hoveredTreeNode:C,highlightedColumns:y}=t,I=o-i;if(e.resetTransform(),e.clearRect(0,0,I,s),d){let h=p.get(d);h!==void 0&&(e.fillStyle=xD,e.fillRect(0,h*a+l,I,a))}if(C){e.fillStyle=yD;for(let h of C.descendantNames){let x=p.get(h);x!==void 0&&e.fillRect(0,x*a+l,I,a)}}if(y?.length){e.fillStyle=Wf;for(let h of y)e.fillRect(h*n+c,0,n,s)}r!==void 0&&(e.fillStyle=ib,e.fillRect(r*n+c,0,n,s)),A!==void 0&&(e.fillStyle=ib,e.fillRect(0,A*a+l,I,a)),m!==void 0&&(e.fillStyle=Wf,e.fillRect(m*n+c,0,n,s)),u!==void 0&&(e.fillStyle=Wf,e.fillRect(0,u*a+l,I,a))}var ib,Wf,xD,yD,ab=g(()=>{ib="rgba(0,0,0,0.15)",Wf="rgba(128,128,0,0.2)",xD="rgba(0,128,255,0.3)",yD="rgba(255,165,0,0.15)"});var ui,cb,lb,Ab,wD,ub,fb=g(()=>{ui=f(b(),1),cb=f(Dt(),1),lb=f($r(),1),Ab=f(R(),1);ab();wD=(0,Ab.observer)(function({model:e}){let t=(0,ui.useRef)(null),{height:r,msaAreaWidth:n,verticalScrollbarWidth:o}=e,i=n-o;return(0,ui.useEffect)(()=>{let s=t.current?.getContext("2d");return s?(0,lb.autorun)(()=>{(0,cb.isAlive)(e)&&sb({ctx:s,model:e})}):void 0},[e]),ui.default.createElement("canvas",{ref:t,id:"mouseover",width:i,height:r,style:{position:"absolute",top:0,left:0,width:i,height:r,zIndex:1e3,pointerEvents:"none"}})}),ub=wD});var Wc,mb,bD,db,gb=g(()=>{Wc=f(b(),1),mb=f(R(),1);ob();fb();bD=(0,mb.observer)(function({model:e}){return Wc.default.createElement("div",{style:{position:"relative"}},Wc.default.createElement(nb,{model:e}),Wc.default.createElement(ub,{model:e}))}),db=bD});var ms,pb=g(()=>{ms=class{constructor(){this.ids=[],this.values=[],this.length=0}clear(){this.length=0}push(t,r){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],s=r[o],a=0,c=o>>1;for(;a<c;){let l=(a<<1)+1,A=l+1,u=l+(+(A<o)&+(r[A]<r[l]));if(r[u]>=s)break;t[a]=t[u],r[a]=r[u],a=u}t[a]=i,r[a]=s}return n}peek(){return this.length>0?this.ids[0]:void 0}peekValue(){return this.length>0?this.values[0]:void 0}shrink(){this.ids.length=this.values.length=this.length}}});function Cb(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 BD(e,t,r,n,o,i){let s=[n,o];for(;s.length;){let a=s.pop()||0,c=s.pop()||0;if(a-c<=i&&Math.floor(c/i)>=Math.floor(a/i))continue;let l=e[c],A=e[c+a>>1],u=e[a],m=l>A!=l>u?l:A<l!=A<u?A:u,d=c-1,p=a+1;for(;;){do d++;while(e[d]<m);do p--;while(e[p]>m);if(d>=p)break;SD(e,t,r,d,p)}s.push(c,p,p+1,a)}}function SD(e,t,r,n,o){let i=e[n];e[n]=e[o],e[o]=i;let s=4*n,a=4*o,c=t[s],l=t[s+1],A=t[s+2],u=t[s+3];t[s]=t[a],t[s+1]=t[a+1],t[s+2]=t[a+2],t[s+3]=t[a+3],t[a]=c,t[a+1]=l,t[a+2]=A,t[a+3]=u;let m=r[n];r[n]=r[o],r[o]=m}function QD(e,t){let r=e^t,n=65535^r,o=65535^(e|t),i=e&(t^65535),s=r|n>>1,a=r>>1^r,c=o>>1^n&i>>1^o,l=r&o>>1^i>>1^i;r=s,n=a,o=c,i=l,s=r&r>>2^n&n>>2,a=r&n>>2^n&(r^n)>>2,c^=r&o>>2^n&i>>2,l^=n&o>>2^(r^n)&i>>2,r=s,n=a,o=c,i=l,s=r&r>>4^n&n>>4,a=r&n>>4^n&(r^n)>>4,c^=r&o>>4^n&i>>4,l^=n&o>>4^(r^n)&i>>4,r=s,n=a,o=c,i=l,c^=r&o>>8^n&i>>8,l^=n&o>>8^(r^n)&i>>8,r=c^c>>1,n=l^l>>1;let A=e^t,u=n|65535^(A|r);return A=(A|A<<8)&16711935,A=(A|A<<4)&252645135,A=(A|A<<2)&858993459,A=(A|A<<1)&1431655765,u=(u|u<<8)&16711935,u=(u|u<<4)&252645135,u=(u|u<<2)&858993459,u=(u|u<<1)&1431655765,(u<<1|A)>>>0}var hb,zf,ds,Eb=g(()=>{pb();hb=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],zf=3,ds=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||t.buffer)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!==zf)throw new Error(`Got v${i} data when expected v${zf}.`);let s=hb[o&15];if(!s)throw new Error("Unrecognized array type.");let[a]=new Uint16Array(t,r+2,1),[c]=new Uint32Array(t,r+4,1);return new e(c,a,s,void 0,t,r)}constructor(t,r=16,n=Float64Array,o=ArrayBuffer,i,s=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=s;let a=t,c=a;this._levelBounds=[a*4];do a=Math.ceil(a/this.nodeSize),c+=a,this._levelBounds.push(c*4);while(a!==1);this.ArrayType=n,this.IndexArrayType=c<16384?Uint16Array:Uint32Array;let l=hb.indexOf(n),A=c*4*n.BYTES_PER_ELEMENT;if(l<0)throw new Error(`Unexpected typed array class: ${n}.`);if(i)this.data=i,this._boxes=new n(i,s+8,c*4),this._indices=new this.IndexArrayType(i,s+8+A,c),this._pos=c*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 u=this.data=new o(8+A+c*this.IndexArrayType.BYTES_PER_ELEMENT);this._boxes=new n(u,8,c*4),this._indices=new this.IndexArrayType(u,8+A,c),this._pos=0,this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0,new Uint8Array(u,0,2).set([251,(zf<<4)+l]),new Uint16Array(u,2,1)[0]=r,new Uint32Array(u,4,1)[0]=t}this._queue=new ms}add(t,r,n=t,o=r){let i=this._pos>>2,s=this._boxes;return this._indices[i]=i,s[this._pos++]=t,s[this._pos++]=r,s[this._pos++]=n,s[this._pos++]=o,t<this.minX&&(this.minX=t),r<this.minY&&(this.minY=r),n>this.maxX&&(this.maxX=n),o>this.maxY&&(this.maxY=o),i}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 r=this.maxX-this.minX||1,n=this.maxY-this.minY||1,o=new Uint32Array(this.numItems),i=65535;for(let s=0,a=0;s<this.numItems;s++){let c=t[a++],l=t[a++],A=t[a++],u=t[a++],m=Math.floor(i*((c+A)/2-this.minX)/r),d=Math.floor(i*((l+u)/2-this.minY)/n);o[s]=QD(m,d)}BD(o,t,this._indices,0,this.numItems-1,this.nodeSize);for(let s=0,a=0;s<this._levelBounds.length-1;s++){let c=this._levelBounds[s];for(;a<c;){let l=a,A=t[a++],u=t[a++],m=t[a++],d=t[a++];for(let p=1;p<this.nodeSize&&a<c;p++)A=Math.min(A,t[a++]),u=Math.min(u,t[a++]),m=Math.max(m,t[a++]),d=Math.max(d,t[a++]);this._indices[this._pos>>2]=l,t[this._pos++]=A,t[this._pos++]=u,t[this._pos++]=m,t[this._pos++]=d}}}search(t,r,n,o,i){if(this._pos!==this._boxes.length)throw new Error("Data not yet indexed - call index.finish().");let s=this._boxes.length-4,a=[],c=[];for(;s!==void 0;){let l=Math.min(s+this.nodeSize*4,Cb(s,this._levelBounds));for(let A=s;A<l;A+=4){let u=this._boxes[A];if(n<u)continue;let m=this._boxes[A+1];if(o<m)continue;let d=this._boxes[A+2];if(t>d)continue;let p=this._boxes[A+3];if(r>p)continue;let C=this._indices[A>>2]|0;s>=this.numItems*4?a.push(C):(i===void 0||i(C,u,m,d,p))&&c.push(C)}s=a.pop()}return c}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 s=this._boxes.length-4,a=this._queue,c=[],l=o*o;e:for(;s!==void 0;){let A=Math.min(s+this.nodeSize*4,Cb(s,this._levelBounds));for(let u=s;u<A;u+=4){let m=this._indices[u>>2]|0,d=this._boxes[u],p=this._boxes[u+1],C=this._boxes[u+2],y=this._boxes[u+3],I=t<d?d-t:t>C?t-C:0,h=r<p?p-r:r>y?r-y:0,x=I*I+h*h;x>l||(s>=this.numItems*4?a.push(m<<1,x):(i===void 0||i(m))&&a.push((m<<1)+1,x))}for(;a.length&&a.peek()&1;)if(a.peekValue()>l||(c.push(a.pop()>>1),c.length===n))break e;s=a.length?a.pop()>>1:void 0}return a.clear(),c}}});var gs,fi,Ib,MD,xb,yb=g(()=>{gs=f(b(),1),fi=f(_(),1),Ib=f(R(),1),MD=(0,Ib.observer)(function({node:e,model:t,onClose:r}){return gs.default.createElement(fi.Menu,{anchorReference:"anchorPosition",anchorPosition:{left:e.x,top:e.y},transitionDuration:0,keepMounted:!0,open:!!e,onClose:r},gs.default.createElement(fi.MenuItem,{dense:!0,disabled:!0},e.name),gs.default.createElement(fi.MenuItem,{dense:!0,onClick:()=>{t.toggleCollapsed(e.id),r()}},t.collapsed.includes(e.id)?"Expand this node":"Collapse this node"),gs.default.createElement(fi.MenuItem,{dense:!0,onClick:()=>{t.showOnly===e.id?t.setShowOnly(void 0):t.setShowOnly(e.id),r()}},t.showOnly===e.id?"Disable show only this node":"Show only this node"))}),xb=MD});var Sb={};Je(Sb,{default:()=>TD});var Pr,wb,bb,Bb,vD,TD,Qb=g(()=>{Pr=f(b(),1);Nc();Rf();wb=f(ye(),1),bb=f(_(),1),Bb=f(R(),1);Pf();vD=(0,Bb.observer)(function({info:e,model:t,nodeName:r,onClose:n}){let{treeMetadata:o,rows:i}=t,s=o[r],a=i.find(c=>c[0]===r);return Pr.default.createElement(wb.Dialog,{onClose:()=>{n()},open:!0,title:"Tree node info",maxWidth:"xl"},Pr.default.createElement(bb.DialogContent,null,Pr.default.createElement(Kn,{title:"Attributes"},Pr.default.createElement(Rr,{attributes:{nodeName:r,...e}})),Pr.default.createElement(Kn,{title:"Sequence"},a?Pr.default.createElement(us,{str:[a]}):Pr.default.createElement("div",null,"Sequence not found")),s?Pr.default.createElement(Kn,{title:"Extra metadata"},Pr.default.createElement(Rr,{attributes:s})):null))}),TD=vD});var sn,bn,Mb,_D,DD,vb,Tb=g(()=>{sn=f(b(),1),bn=f(_(),1),Mb=f(R(),1),_D=(0,sn.lazy)(()=>Promise.resolve().then(()=>(Qb(),Sb))),DD=(0,Mb.observer)(function({node:e,onClose:t,model:r}){let{collapsed:n}=r,{name:o,id:i}=e,s=n.includes(i);return sn.default.createElement(bn.Menu,{anchorReference:"anchorPosition",anchorPosition:{top:e.y,left:e.x},transitionDuration:0,keepMounted:!0,open:!!e,onClose:t},sn.default.createElement(bn.MenuItem,{dense:!0,disabled:!0},o),sn.default.createElement(bn.MenuItem,{dense:!0,onClick:()=>{r.queueDialog(a=>[_D,{info:r.getRowData(o),model:r,nodeName:o,onClose:a}]),t()}},"More info..."),sn.default.createElement(bn.MenuItem,{dense:!0,onClick:()=>{r.toggleCollapsed(i),t()}},s?"Show node":"Hide node"),sn.default.createElement(bn.MenuItem,{dense:!0,onClick:()=>{r.drawRelativeTo(e.name),t()}},"Indicate differences from this row"),r.relativeTo?sn.default.createElement(bn.MenuItem,{dense:!0,onClick:()=>{r.drawRelativeTo(void 0),t()}},"Clear reference row"):null)}),vb=DD});function _b(e){let t=0;if(e.children)for(let r of e.children){let n=_b(r)+1;n>t&&(t=n)}return e.height=t,t}function Db(e,t,r,n){let o=t(e),i={data:e,children:null,parent:r,depth:n,height:0};return o?.length&&(i.children=o.map(s=>Db(s,t,i,n+1))),i}function kb(e,t){let r=Db(e,t,null,0);return _b(r),r}function Nb(e,t){function r(n){let o=t(n.data);if(n.children)for(let i of n.children)o+=r(i);return n.value=o,o}return r(e),e}function Lb(e,t){function r(n){if(n.children){n.children.sort(t);for(let o of n.children)r(o)}}return r(e),e}function ps(e,t){if(t(e))return e;if(e.children)for(let r of e.children){let n=ps(r,t);if(n)return n}}function hs(e){let t=[];function r(n){if(n.children)for(let o of n.children)r(o);else t.push(n)}return r(e),t}function Fb(e){let t=[];function r(n){if(t.push(n),n.children)for(let o of n.children)r(o)}return r(e),t}function zc(e){let t=[];function r(n){if(n.children)for(let o of n.children)t.push({source:n,target:o}),r(o)}return r(e),t}function Rb(e,t,r){let n=hs(e),o=n.length,i=t/o;for(let l=0;l<o;l++)n[l].x=(l+.5)*i;function s(l){if(!l.children)return;for(let u of l.children)s(u);let A=0;for(let u of l.children)A+=u.x;l.x=A/l.children.length}s(e);let a=e.height;function c(l,A){if(l.y=a===0?r:A/a*r,l.children)for(let u of l.children)c(u,A+1)}c(e,0)}function Pb(e){e.children&&(e._children=e.children,e.children=null)}function $f(e){return(e.data.length||0)+(e.children?e.children.reduce((t,r)=>Math.max(t,$f(r)),0):0)}function Kf(e,t,r){if(e.len=(t+=Math.max(e.data.length||0,0))*r,e.children)for(let n of e.children)Kf(n,t,r)}var Xf=g(()=>{});function Cs(e){if(e.depthToLeaf!==void 0)return e.depthToLeaf;if(!e.children||e.children.length===0)e.depthToLeaf=0;else{let t=0;for(let r of e.children)t=Math.max(t,1+Cs(r));e.depthToLeaf=t}return e.depthToLeaf}function Xc(e){let t=e.len||0;if(e.children)for(let r of e.children)t=Math.max(t,Xc(r));return t}function Kc(e,t,r,n){if(t)return e.len;let o=Cs(e);return(n-o)/n*r}function kD({offsetY:e,ctx:t,model:r,theme:n,blockSizeYOverride:o}){let{hierarchy:i,showBranchLenEffective:s,blockSize:a}=r,c=o||a;t.strokeStyle=n.palette.text.primary;let l=Xc(i),A=Cs(i);for(let u of zc(i)){let{source:m,target:d}=u,p=m.x,C=d.x,y=Kc(d,s,l,A),I=Kc(m,s,l,A);if(y===void 0||I===void 0)continue;let h=Math.min(p,C),x=Math.max(p,C);e+c>=h&&x>=e&&(t.beginPath(),t.moveTo(I,p),t.lineTo(I,C),t.lineTo(y,C),t.stroke())}}function ND({ctx:e,clickMap:t,offsetY:r,model:n,blockSizeYOverride:o}){let{hierarchy:i,showBranchLenEffective:s,collapsed:a,blockSize:c,marginLeft:l}=n,A=o||c,u=Xc(i),m=Cs(i);for(let d of Fb(i)){let p=Kc(d,s,u,m);if(p===void 0)continue;let{data:C}=d,y=d.x,{id:I,name:h}=C;d.height>=1&&y>r-$c&&y<r+A+$c&&(e.strokeStyle="black",e.fillStyle=a.includes(I)?"black":"white",e.beginPath(),e.arc(p,y,eo,0,2*Math.PI),e.fill(),e.stroke(),t?.insert({minX:p-eo+l,maxX:p-eo+Zf+l,minY:y-eo,maxY:y-eo+Zf,branch:!0,id:I,name:h}))}}function LD({theme:e,model:t,offsetY:r,ctx:n,clickMap:o,blockSizeYOverride:i}){let{fontSize:s,showBranchLenEffective:a,treeMetadata:c,blockSize:l,labelsAlignRight:A,drawTree:u,treeAreaWidth:m,treeAreaWidthMinusMargin:d,marginLeft:p,leaves:C,noTree:y,hierarchy:I}=t,h=i||l,x=n.measureText("M").width;A?(n.textAlign="right",n.setLineDash([1,3])):n.textAlign="start";let w=Xc(I),Q=Cs(I);for(let S of C){let{data:{name:M,id:F}}=S,D=S.x,re=c[M]?.genome||M;if(D>r-$c&&D<r+h+$c){let v=D+s/4,H=0;y||(H=Kc(S,a,w,Q)||0);let{width:q}=n.measureText(re);if(n.fillStyle=e.palette.text.primary,A){let xe=d-2;u&&!y&&(n.moveTo(H+eo+2,D),n.lineTo(xe-2-q,D),n.stroke()),n.fillText(re,xe,v),o?.insert({minX:m-q,maxX:m,minY:v-x,maxY:v,name:M,id:F})}else{let O=y?2:H+Zf;n.fillText(re,O,v),o?.insert({minX:O+p,maxX:O+q+p,minY:v-x,maxY:v,name:M,id:F})}}}n.setLineDash([])}function Zc({model:e,clickMap:t,ctx:r,offsetY:n,theme:o,highResScaleFactorOverride:i,blockSizeYOverride:s}){t?.clear();let{noTree:a,drawTree:c,drawNodeBubbles:l,highResScaleFactor:A,fontSize:u,showTreeText:m,marginLeft:d,nref:p,rowHeight:C}=e;r.resetTransform();let y=p<0?Number.NEGATIVE_INFINITY:i||A;r.scale(y,y),r.translate(d,-n);let I=r.font;r.font=I.replace(/\d+px/,`${u}px`),!a&&c&&(kD({ctx:r,offsetY:n,model:e,theme:o,blockSizeYOverride:s}),l&&ND({ctx:r,offsetY:n,clickMap:t,model:e,blockSizeYOverride:s})),m&&LD({ctx:r,offsetY:n,model:e,clickMap:t,theme:o,blockSizeYOverride:s}),t?.finish()}var mi,$c,eo,Zf,el=g(()=>{Xf();mi=600,$c=5,eo=2.5,Zf=eo*2});var Te,Ob,Gb,Hb,Ub,FD,em,RD,qb,jb=g(()=>{Te=f(b(),1),Ob=f(_(),1);Eb();Gb=f($r(),1),Hb=f(R(),1),Ub=f(be(),1);yb();Tb();el();FD=(0,Ub.makeStyles)()(e=>({tooltip:{position:"fixed",pointerEvents:"none",zIndex:1e4,backgroundColor:e.palette.grey[700],color:e.palette.common.white,padding:"4px 8px",borderRadius:4,fontSize:12,whiteSpace:"nowrap",maxWidth:300,overflow:"hidden",textOverflow:"ellipsis"}})),em=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;return}else{this.flatbush=new ds(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])??[]}},RD=(0,Hb.observer)(function({model:e,offsetY:t}){let{classes:r}=FD(),n=(0,Ob.useTheme)(),o=(0,Te.useRef)(null),i=(0,Te.useRef)(new em),s=(0,Te.useRef)(null),[a,c]=(0,Te.useState)(),[l,A]=(0,Te.useState)(),[u,m]=(0,Te.useState)(),[d,p]=(0,Te.useState)(),{scrollY:C,treeAreaWidth:y,blockSize:I,highResScaleFactor:h}=e,x=y+mi,w=I,Q=x*h,S=w*h,M=(0,Te.useCallback)(v=>{e.incrementRef(),o.current=v},[e,w,x]);(0,Te.useEffect)(()=>{let v=o.current?.getContext("2d");if(v)return(0,Gb.autorun)(()=>{v.resetTransform(),v.clearRect(0,0,(y+mi)*h,I*h),Zc({ctx:v,model:e,offsetY:t,clickMap:i.current,theme:n})})},[e,I,h,y,t,n]),(0,Te.useEffect)(()=>{let v=s.current?.getContext("2d");if(v&&(v.resetTransform(),v.clearRect(0,0,y+mi,I),v.translate(0,-t),u)){let{minX:H,maxX:q,minY:O,maxY:xe}=u;v.fillStyle="rgba(0,0,0,0.1)",v.fillRect(H,O,q-H,xe-O)}},[u,t,I,y]);function F(v){let H=v.nativeEvent.offsetX,q=v.nativeEvent.offsetY,[O]=i.current.search({minX:H,maxX:H+1,minY:q+t,maxY:q+1+t});return O?.branch?{...O,x:v.clientX,y:v.clientY}:void 0}function D(v){let H=v.nativeEvent.offsetX,q=v.nativeEvent.offsetY,[O]=i.current.search({minX:H,maxX:H+1,minY:q+t,maxY:q+1+t});return O&&!O.branch?{...O,x:v.clientX,y:v.clientY}:void 0}let re={width:x,height:w,top:C+t,left:0,position:"absolute"};return Te.default.createElement(Te.default.Fragment,null,a?.id?Te.default.createElement(xb,{node:a,model:e,onClose:()=>{c(void 0)}}):null,l?.id?Te.default.createElement(vb,{node:l,model:e,onClose:()=>{A(void 0)}}):null,Te.default.createElement("canvas",{width:Q,height:S,style:re,onMouseMove:v=>{if(!o.current)return;let H=D(v),q=F(v),O=H||q;if(o.current.style.cursor=O?"pointer":"default",m(H),p(O?{name:O.name,x:v.clientX,y:v.clientY}:void 0),O){if(e.setHoveredTreeNode(O.id),H?.name){let xe=e.rowNamesSet.get(H.name);xe!==void 0&&e.setMousePos(void 0,xe)}}else e.setHoveredTreeNode(void 0),e.setMousePos(void 0,void 0)},onClick:v=>{let{clientX:H,clientY:q}=v,O=F(v);O?.id&&c({x:H,y:q,id:O.id,name:O.name});let xe=D(v);xe?.id&&A({...xe,x:H,y:q})},onMouseLeave:()=>{m(void 0),p(void 0),e.setHoveredTreeNode(void 0),e.setMousePos(void 0,void 0)},ref:M}),Te.default.createElement("canvas",{style:{...re,pointerEvents:"none",zIndex:100},width:x,height:w,ref:s}),d?Te.default.createElement("div",{className:r.tooltip,style:{left:d.x+12,top:d.y+12}},d.name):null)}),qb=RD});var yr,Vb,Yb,Wb,PD,Jb,OD,zb,$b=g(()=>{yr=f(b(),1),Vb=f(Dt(),1),Yb=f($r(),1),Wb=f(R(),1);jb();el();Na();PD="rgba(0,128,255,0.3)",Jb="rgba(255,165,0,0.2)",OD=(0,Wb.observer)(function({model:e}){let t=(0,yr.useRef)(null),r=(0,yr.useRef)(null),{treeWidth:n,height:o,blocksY:i,treeAreaWidth:s}=e,a=(0,yr.useCallback)(A=>{e.doScrollY(A)},[e]),{onMouseDown:c,onMouseUp:l}=No({ref:t,onScrollY:a});return(0,yr.useEffect)(()=>{let A=r.current?.getContext("2d");return A?(0,Yb.autorun)(()=>{if((0,Vb.isAlive)(e)){let{relativeTo:u,leaves:m,rowHeight:d,hoveredTreeNode:p,treeAreaWidth:C,height:y,scrollY:I,mouseOverRowName:h}=e;if(A.resetTransform(),A.clearRect(0,0,C,y),u){let x=m.find(w=>w.data.name===u);x&&(A.fillStyle=PD,A.fillRect(0,x.x+I-d/2,C,d))}if(p){A.fillStyle=Jb;for(let x of p.descendantNames){let w=m.find(Q=>Q.data.name===x);w&&A.fillRect(0,w.x+I-d/2,C,d)}}if(h&&h!==u&&!p?.descendantNames.includes(h)){let x=m.find(w=>w.data.name===h);x&&(A.fillStyle=Jb,A.fillRect(0,x.x+I-d/2,C,d))}}}):void 0},[e]),yr.default.createElement("div",{ref:t,onMouseDown:c,onMouseUp:l,onMouseLeave:A=>{A.preventDefault()},style:{height:o,position:"relative",width:n+mi}},i.map(A=>yr.default.createElement(qb,{key:A,model:e,offsetY:A})),yr.default.createElement("canvas",{ref:r,width:s,height:o,style:{position:"absolute",top:0,left:0,width:s,height:o,zIndex:1e3,pointerEvents:"none"}}))}),zb=OD});var tm,Kb,GD,Xb,Zb=g(()=>{tm=f(b(),1),Kb=f(R(),1);$b();GD=(0,Kb.observer)(function({model:e}){let{treeAreaWidth:t}=e;return tm.default.createElement("div",{style:{overflow:"hidden",flexShrink:0,width:t}},tm.default.createElement(zb,{model:e}))}),Xb=GD});var eB,tB,HD,rB,nB=g(()=>{eB=f(b(),1),tB=f(R(),1),HD=(0,tB.observer)(({model:e})=>{let{treeAreaWidth:t}=e;return eB.default.createElement("div",{style:{flexShrink:0,width:t}})}),rB=HD});var ee,to,UD,qD,jD,JD,VD,YD,oB,iB=g(()=>{ee=f(b(),1),to=f(R(),1);e0();u0();g0();jw();Yw();gb();Zb();nB();UD=(0,to.observer)(function({model:e}){let{showHorizontalScrollbar:t}=e;return ee.default.createElement("div",{style:{display:"flex"}},ee.default.createElement(rB,{model:e}),t?ee.default.createElement(Vw,{model:e}):null)}),qD=(0,to.observer)(function({model:e}){let{mouseCol:t,mouseClickCol:r,colWidth:n,scrollX:o,treeAreaWidth:i,resizeHandleWidth:s,totalTrackAreaHeight:a,msaAreaWidth:c,verticalScrollbarWidth:l}=e,A=i+s,u=c-l;return ee.default.createElement("div",{style:{position:"absolute",left:A,top:0,width:u,height:a,overflow:"hidden",pointerEvents:"none"}},t!==void 0?ee.default.createElement("div",{style:{position:"absolute",left:t*n+o,top:0,width:n,height:a,backgroundColor:"rgba(0,0,0,0.15)",zIndex:100}}):null,r!==void 0?ee.default.createElement("div",{style:{position:"absolute",left:r*n+o,top:0,width:n,height:a,backgroundColor:"rgba(128,128,0,0.2)",zIndex:100}}):null)}),jD=(0,to.observer)(function({model:e}){let{turnedOnTracks:t}=e;return t.length===0?null:ee.default.createElement("div",{style:{position:"relative"}},ee.default.createElement(qD,{model:e}),t.map(r=>ee.default.createElement(A0,{key:r.model.id,model:e,track:r})))}),JD=(0,to.observer)(function({model:e}){let{showVerticalScrollbar:t}=e;return ee.default.createElement("div",{style:{display:"flex"}},ee.default.createElement(Xb,{model:e}),ee.default.createElement(Xh,{model:e}),ee.default.createElement(db,{model:e}),t?ee.default.createElement(d0,{model:e}):null)}),VD=(0,to.observer)(function({model:e}){return ee.default.createElement("div",{style:{position:"relative"}},ee.default.createElement(UD,{model:e}),ee.default.createElement(jD,{model:e}),ee.default.createElement(JD,{model:e}))}),YD=(0,to.observer)(function({model:e}){let{height:t,viewInitialized:r,DialogComponent:n,DialogProps:o}=e;return ee.default.createElement("div",null,r?ee.default.createElement(ee.default.Fragment,null,ee.default.createElement("div",{style:{height:t,overflow:"hidden"}},ee.default.createElement(qw,{model:e}),ee.default.createElement(VD,{model:e})),ee.default.createElement(Zh,{model:e}),n?ee.default.createElement(ee.Suspense,{fallback:null},ee.default.createElement(n,{...o})):null):null)}),oB=YD});var sB,aB,cB,lB=g(()=>{sB=`CLUSTAL O(1.2.3) multiple sequence alignment
|
|
32
32
|
UniProt/Swiss-Prot|P26898|IL2RA_SHEEP MEPSLLMWRFFVFIVVPGCVTEACHDDPPSLRNA----------MFKVLRYE----VGTM
|
|
33
33
|
UniProt/Swiss-Prot|P01590|IL2RA_MOUSE MEPRLLMLGFLSLTIVPSCRAELCLYDPPEVPNA----------TFKALSYK----NGTI
|
|
34
34
|
UniProt/Swiss-Prot|P41690|IL2RA_FELCA MEPSLLLWGILTFVVVHGHVTELCDENPPDIQHA----------TFKALTYK----TGTM
|
|
@@ -41,7 +41,7 @@ UniProt/Swiss-Prot|Q8BZM1|GLMN_MOUSE PLPLRSLLFLQLPLLGVGLNP----------------
|
|
|
41
41
|
UniProt/Swiss-Prot|P36835|IL2_CAPHI -----------LLGVGLNPKFLTP------------------------------------
|
|
42
42
|
UniProt/Swiss-Prot|Q7JFM4|IL2_AOTVO MLKPPLPLRSLLFLQLPLLGVGLNPKFLTPSGNEDIGGKPGTGGDFFLTSTPAGTLDVST
|
|
43
43
|
UniProt/Swiss-Prot|Q29416|IL2_CANFA --------------LFLQLSLLG-------------------------------------
|
|
44
|
-
`,
|
|
44
|
+
`,aB=`CLUSTAL O(1.2.4) multiple sequence alignment
|
|
45
45
|
|
|
46
46
|
|
|
47
47
|
sp|P69905|HBA_HUMAN MVLSPADKTNVKAAWGKVGAHAGEYGAEALERMFLSFPTTKTYFPHFDLSHGSAQVKGHG 60
|
|
@@ -57,21 +57,21 @@ sp|P13786|HBAZ_CAPHI SKVVAAVGDAVKSIDNVTSALSKLSELHAYVLRVDPVNFKFLSHCLLVTLASHF
|
|
|
57
57
|
sp|P69905|HBA_HUMAN AVHASLDKFLASVSTVLTSKYR 142
|
|
58
58
|
sp|P01942|HBA_MOUSE AVHASLDKFLASVSTVLTSKYR 142
|
|
59
59
|
sp|P13786|HBAZ_CAPHI DAHAAWDKFLSIVSGVLTEKYR 142
|
|
60
|
-
.**: ****: ** ***.***`,
|
|
60
|
+
.**: ****: ** ***.***`,cB="(((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)"});async function tl(e,t,r,n){e.setError(void 0),t&&e.setMSAFilehandle(t),r&&e.setTreeFilehandle(r),n&&e.setGFFFilehandle(n)}var rm=g(()=>{});function Or({onClick:e,model:t,children:r}){return bt.default.createElement("li",null,bt.default.createElement(rl.Link,{onClick:n=>{t.setError(void 0),n.preventDefault(),e()},href:"#"},bt.default.createElement(rl.Typography,{component:"span"},r)))}var bt,rl,AB,Bn,WD,uB,fB=g(()=>{bt=f(b(),1),rl=f(_(),1),AB=f(R(),1);lB();rm();Bn="https://jbrowse.org/genomes/multiple_sequence_alignments",WD=(0,AB.observer)(function({model:e}){function t({msa:r,tree:n,gff:o}){(async()=>{try{await tl(e,r?{uri:r,locationType:"UriLocation"}:void 0,n?{uri:n,locationType:"UriLocation"}:void 0,o?{uri:o,locationType:"UriLocation"}:void 0)}catch(i){console.error(i),e.setError(i)}})()}return bt.default.createElement("ul",null,bt.default.createElement(Or,{model:e,onClick:()=>{t({tree:"https://jbrowse.org/genomes/newicktrees/sarscov2phylo.pub.ft.nh"})}},"230k COVID-19 samples (tree only)"),bt.default.createElement(Or,{model:e,onClick:()=>{e.setData({msa:sB,tree:cB})}},"Small protein MSA+tree"),bt.default.createElement(Or,{model:e,onClick:()=>{e.setData({msa:aB})}},"Small MSA only"),bt.default.createElement(Or,{model:e,onClick:()=>{t({msa:`${Bn}/pfam-cov2.stock`})}},"PFAM SARS-CoV2 multi-stockholm"),bt.default.createElement(Or,{model:e,onClick:()=>{t({msa:`${Bn}/pfam-cov2.stock`,gff:`${Bn}/pfam-cov2-domains.gff`})}},"PFAM SARS-CoV2 multi-stockholm w/ domains loaded"),bt.default.createElement(Or,{model:e,onClick:()=>{t({msa:`${Bn}/Lysine.stock`})}},"Lysine stockholm file"),bt.default.createElement(Or,{model:e,onClick:()=>{t({msa:`${Bn}/PF01601_full.txt`})}},"PF01601 stockholm file (SARS-CoV2 spike protein)"),bt.default.createElement(Or,{model:e,onClick:()=>{t({msa:`${Bn}/europe_covid.fa`})}},"Europe COVID full genomes (LR883044.1 and 199 other sequences)"),bt.default.createElement(Or,{model:e,onClick:()=>{t({msa:`${Bn}/rhv_test-only.aligned_with_mafft_auto.fa`,tree:`${Bn}/rhv_test-only.aligned_with_mafft_auto.nh`})}},"MAFFT+VeryFastTree(17.9k samples)"),bt.default.createElement(Or,{model:e,onClick:()=>{t({msa:"https://jbrowse.org/demos/ttc39a.mfa"})}},"Human BLAST results mfa"))}),uB=WD});var fe,di,wr,mB,zD,dB,gB=g(()=>{fe=f(b(),1),di=f(ye(),1),wr=f(_(),1),mB=f(R(),1);fB();rm();zD=(0,mB.observer)(function({model:e}){let[t,r]=(0,fe.useState)(),[n,o]=(0,fe.useState)(),[i,s]=(0,fe.useState)(),{error:a}=e;return fe.default.createElement(wr.Container,null,fe.default.createElement("div",{style:{width:"50%"}},a?fe.default.createElement(di.ErrorMessage,{error:a}):null,fe.default.createElement(wr.Typography,null,"Open an MSA file (stockholm or clustal format) and/or a tree file (newick format)."),fe.default.createElement(wr.Typography,{color:"error"},"Note: you can open up just an MSA or just a tree, both are not required. Some MSA files e.g. stockholm format have an embedded tree also and this is fine, and opening a separate tree file is not required.")),fe.default.createElement("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",gap:40}},fe.default.createElement("div",null,fe.default.createElement("div",null,fe.default.createElement(wr.Typography,null,"MSA file or URL"),fe.default.createElement(di.FileSelector,{location:t,setLocation:r})),fe.default.createElement("div",null,fe.default.createElement(wr.Typography,null,"Tree file or URL"),fe.default.createElement(di.FileSelector,{location:n,setLocation:o})),fe.default.createElement("div",null,fe.default.createElement(wr.Typography,null,"InterProScan GFF file or URL (optional)"),fe.default.createElement(di.FileSelector,{location:i,setLocation:s}))),fe.default.createElement("div",null,fe.default.createElement(wr.Button,{onClick:()=>{(async()=>{try{await tl(e,t,n,i)}catch(c){console.error(c),e.setError(c)}})()},variant:"contained",color:"primary",disabled:!t&&!n},"Open")),fe.default.createElement("div",null,fe.default.createElement(wr.Typography,null,"Examples"),fe.default.createElement(uB,{model:e}))))}),dB=zD});function pB(){return nt.default.createElement("div",{style:{display:"flex",alignItems:"center",gap:12,padding:20}},nt.default.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},nt.default.createElement("style",null,"@keyframes spinner { to { transform: rotate(360deg); } }"),nt.default.createElement("circle",{cx:"12",cy:"12",r:"10",stroke:"#ccc",strokeWidth:"3",fill:"none"}),nt.default.createElement("path",{d:"M12 2a10 10 0 0 1 10 10",stroke:"#1976d2",strokeWidth:"3",fill:"none",strokeLinecap:"round",style:{animation:"spinner 1s linear infinite",transformOrigin:"center"}})),nt.default.createElement(nl.Typography,{variant:"h6"},"Loading..."))}var nt,hB,nl,nm,$D,KD,ol,om=g(()=>{nt=f(b(),1),hB=f(ye(),1);ou();nl=f(_(),1),nm=f(R(),1);iB();gB();$D=(0,nm.observer)(function({model:e,error:t}){return nt.default.createElement("div",null,nt.default.createElement(hB.ErrorMessage,{error:t}),nt.default.createElement(nl.Button,{variant:"contained",color:"primary",onClick:()=>{e.reset()}},"Return to import form"))}),KD=(0,nm.observer)(function({model:e}){let{isLoading:t,dataInitialized:r,msaFilehandle:n,treeFilehandle:o}=e,i=!!(n||o);return nt.default.createElement("div",null,nt.default.createElement(ko,{FallbackComponent:s=>nt.default.createElement($D,{model:e,error:s.error})},r?t?nt.default.createElement(pB,null):nt.default.createElement(oB,{model:e}):i||t?nt.default.createElement(pB,null):nt.default.createElement(dB,{model:e})))}),ol=KD});var EB=G((XH,CB)=>{CB.exports=JBrowseExports["@jbrowse/core/ui/theme"]});var xB=G((ZH,IB)=>{IB.exports=JBrowseExports["@jbrowse/core/util/io"]});var wB=G((eU,yB)=>{yB.exports=JBrowseExports["@jbrowse/core/util/types/mst"]});var bB=g(()=>{});function gi(e,t="node",r=0){let n=`${t}-${r}`;return{...e,id:n,name:e.name||n,children:e.children?.map((o,i)=>gi(o,`${n}-${i}`,r+1))||[]}}var im=g(()=>{});var Ut,pi=g(()=>{Ut=class{getTree(){return{id:"root",name:"root",noTree:!0,children:this.getNames().map(t=>({id:t,children:[],name:t}))}}getRowData(t){}getStructures(){return{}}getHeader(){return{}}get alignmentNames(){return[]}get seqConsensus(){}get secondaryStructureConsensus(){}get tracks(){return[]}}});function hi(e){return e>=XD&&e<=ZD}var BB,SB,XD,ZD,QB,MB,Sn,sm=g(()=>{pi();BB=65,SB=90,XD=97,ZD=122,QB=45,MB=46;Sn=class extends Ut{MSA;orderedNames;constructor(t){super();let r=[],n=[];for(let o of t.split(">")){if(!/\S/.test(o))continue;let i=o.indexOf(`
|
|
61
61
|
`);if(i===-1)continue;let s=o.slice(0,i),a=s.indexOf(" "),c=a===-1?s:s.slice(0,a);c&&(r.push(o.slice(i+1).replaceAll(/\s/g,"")),n.push(c))}this.orderedNames=n,this.MSA={seqdata:this.expandA3M(r,n)}}static sniff(t){if(!t.startsWith(">"))return!1;let r=[];for(let s of t.split(">")){if(!/\S/.test(s))continue;let a=s.indexOf(`
|
|
62
|
-
`);if(a===-1)continue;let c=s.slice(a+1).replaceAll(/\s/g,"");c&&r.push(c)}if(r.length<2)return!1;let n=!1,o=-1,i=!0;for(let s of r){let a=0;for(let c=0;c<s.length;c++){let l=s.charCodeAt(c);
|
|
63
|
-
`)[Symbol.iterator]();return
|
|
64
|
-
`).map(i=>i.trim()).filter(i=>!!i),r=[],n=[];for(let i of t)if(i.startsWith("SEQ"))r.push(i);else{if(i.startsWith("DATA"))continue;if(i.startsWith("//"))break;n.push(i)}let o=r.map(i=>{let[,s,a,c,l,A,u,d
|
|
65
|
-
`).map(i=>i.trim()).filter(i=>!!i),r=[],n="";for(let i of t)if(i.startsWith("SEQ"))r.push(i);else{if(i.startsWith("DATA"))continue;if(i.startsWith("//"))break;n=i}let o=r.map(i=>{let[,s,a,c,l,A,u,d
|
|
66
|
-
`);if(i===-1)continue;let s=o.slice(0,i),a=s.indexOf(" "),c=a===-1?s:s.slice(0,a);c&&(r[c]=o.slice(i+1).replaceAll(/\s/g,""),c.includes(":")&&(n[c.replaceAll(":","_")]=c))}this.MSA={seqdata:r,colonNormalized:n}}getMSA(){return this.MSA}getNames(){return Object.keys(this.MSA.seqdata)}getRow(t){return this.MSA.seqdata[t]??this.MSA.seqdata[this.MSA.colonNormalized[t]??""]??""}getWidth(){let t=Object.keys(this.MSA.seqdata)[0];return this.getRow(t).length}}});function
|
|
67
|
-
`);for(let s of i){let a;if(
|
|
68
|
-
`).map(t=>t.trim()).filter(t=>!!t&&!t.startsWith("#")).map(t=>{let r=t.split(" "),[n,o,i,s,a,c,l,A]=r,u=r[8];return{seq_id:n??"",source:o??"",type:i??"",start:Number(s)||0,end:Number(a)||0,score:Number(c)||0,strand:l??".",phase:A??".",...tk(u)}}):[]}var TB=g(()=>{});function il(e){let t=new Map;for(let n of e){let o=t.get(n.seq_id);o?o.push(n):t.set(n.seq_id,[n])}let r={};for(let[n,o]of t){let i=new Map,s=new Map;for(let c of o){let l=c.Name||c.ID||`${c.source}_${c.start}_${c.end}`,A=c.signature_desc||c.Name||l,u=c.Ontology_term||c.description||c.Note||A;s.has(l)||s.set(l,{name:A,description:u,accession:l});let d=i.get(l);d?d.push({start:c.start,end:c.end}):i.set(l,[{start:c.start,end:c.end}])}let a=[];for(let[c,l]of i){let A=s.get(c);a.push({signature:{entry:A},locations:l})}r[n]={matches:a,xref:[{id:n}]}}return r}var _B=g(()=>{});var DB=g(()=>{});var kB=g(()=>{TB();_B();DB()});var NB=g(()=>{gB();Zf();vB();kB()});function LB({mapHeight:e,blockSize:t,viewportY:r,viewportHeight:n}){let o=Math.max(0,Math.min(r,e*t-n)),i=Math.floor(o/t),s=Math.floor((o+n-1)/t),a=[];for(let c=i;c<=s;c++)a.push(c*t);return a}function FB({mapWidth:e,blockSize:t,viewportX:r,viewportWidth:n}){let o=Math.max(0,Math.min(r,e-n)),i=Math.floor(o/t),s=Math.floor((o+n-1)/t),a=[];for(let c=i;c<=s;c++)a.push(c*t);return a}var RB=g(()=>{});function Ad({ctx:e,conservation:t,colWidth:r,trackHeight:n,offsetX:o,blockSize:i}){let s=Math.max(0,Math.floor(o/r)),a=Math.max(0,Math.ceil((o+i)/r));e.fillStyle="gray";for(let c=s;c<a&&c<t.length;c++){let A=t[c]*n,u=c*r;e.fillRect(u,n-A,r,A)}}function ud({ctx:e,data:t,colorScheme:r,contrastScheme:n,bgColor:o,colWidth:i,rowHeight:s,offsetX:a,blockSize:c}){let l=Math.max(0,Math.floor(a/i)),A=Math.max(0,Math.ceil((a+c)/i)),u=t?.slice(l,A);for(let d=0;u&&d<u.length;d++){let m=u[d],p=r[m.toUpperCase()];if(o){let C=d*i+a-a%i;e.fillStyle=p||"white",e.fillRect(C,0,i,s),s>=10&&i>=s/2&&(e.fillStyle=n[m.toUpperCase()]||"black",e.fillText(m,C+i/2,s/2+1))}}}function ik({model:e,ctx:t,offsetX:r,offsetY:n,trackHeight:o,blockSizeXOverride:i,highResScaleFactorOverride:s}){let{blockSize:a,colWidth:c,highResScaleFactor:l,conservation:A}=e,u=i??a,d=s??l;t.resetTransform(),t.scale(d,d),t.translate(-r,n),Ad({ctx:t,conservation:A,colWidth:c,trackHeight:o,offsetX:r,blockSize:u}),t.resetTransform()}function sk({model:e,ctx:t,track:r,offsetX:n,offsetY:o,contrastScheme:i,blockSizeXOverride:s,highResScaleFactorOverride:a}){let{blockSize:c,bgColor:l,colorScheme:A,colWidth:u,fontSize:d,rowHeight:m,highResScaleFactor:p}=e,{customColorScheme:C,data:x}=r.model,I=C??A,h=s??c,y=a??p;t.resetTransform(),t.scale(y,y),t.translate(-n,o),t.textAlign="center",t.font=t.font.replace(/\d+px/,`${d}px`),ud({ctx:t,data:x,colorScheme:I,contrastScheme:i,bgColor:l,colWidth:u,rowHeight:m,offsetX:n,blockSize:h}),t.resetTransform()}function PB({model:e,ctx:t,offsetX:r,contrastScheme:n,blockSizeXOverride:o,highResScaleFactorOverride:i}){let{turnedOnTracks:s}=e,a=0;for(let c of s){let l=c.model.height;c.model.id==="conservation"?ik({model:e,ctx:t,offsetX:r,offsetY:a,trackHeight:l,blockSizeXOverride:o,highResScaleFactorOverride:i}):sk({model:e,ctx:t,track:c,offsetX:r,offsetY:a,contrastScheme:n,blockSizeXOverride:o,highResScaleFactorOverride:i}),a+=l}}var sl=g(()=>{});var an,OB,fd,ak,ck,GB,HB=g(()=>{an=f(B(),1),OB=f(fe(),1),fd=f(P(),1);sl();ak=(0,fd.observer)(function({model:e,offsetX:t,trackHeight:r}){let{blockSize:n,scrollX:o,colWidth:i,highResScaleFactor:s,conservation:a}=e,c=(0,an.useRef)(null);return(0,an.useEffect)(()=>{if(!c.current)return;let l=c.current.getContext("2d");l&&(l.resetTransform(),l.scale(s,s),l.clearRect(0,0,n,r),l.translate(-t,0),Ad({ctx:l,conservation:a,colWidth:i,trackHeight:r,offsetX:t,blockSize:n}))},[n,i,r,t,s,a]),an.default.createElement("canvas",{ref:c,height:r*s,width:n*s,style:{position:"absolute",left:o+t,width:n,height:r}})}),ck=(0,fd.observer)(function({model:e,track:t}){let{blocksX:r,msaAreaWidth:n}=e,o=t.model.height;return an.default.createElement("div",{style:{position:"relative",height:o,width:n,overflow:"hidden"}},r.map(i=>an.default.createElement(ak,{key:i,model:e,offsetX:i,trackHeight:o})),an.default.createElement(OB.ResizeHandle,{onDrag:i=>(e.setConservationTrackHeight(Math.max(10,e.conservationTrackHeight+i)),i),style:{position:"absolute",bottom:0,left:0,height:4,width:"100%",zIndex:1,background:"rgba(200,200,200,0.5)"}}))}),GB=ck});var Gr,UB,dd,lk,Ak,qB,jB=g(()=>{Gr=f(B(),1),UB=f(N(),1),dd=f(P(),1);yn();sl();lk=(0,dd.observer)(function({track:e,model:t,offsetX:r}){let{blockSize:n,scrollX:o,bgColor:i,colorScheme:s,colWidth:a,fontSize:c,rowHeight:l,highResScaleFactor:A}=t,{model:{customColorScheme:u,data:d}}=e,m=u||s,p=(0,UB.useTheme)(),C=(0,Gr.useRef)(null),x=(0,Gr.useMemo)(()=>$n(m,p),[m,p]);return(0,Gr.useEffect)(()=>{if(!C.current)return;let I=C.current.getContext("2d");I&&(I.resetTransform(),I.scale(A,A),I.clearRect(0,0,n,l),I.translate(-r,0),I.textAlign="center",I.font=I.font.replace(/\d+px/,`${c}px`),ud({ctx:I,data:d,colorScheme:m,contrastScheme:x,bgColor:i,colWidth:a,rowHeight:l,offsetX:r,blockSize:n}))},[c,i,n,a,l,r,x,m,A,d]),Gr.default.createElement("canvas",{ref:C,height:l*A,width:n*A,style:{position:"absolute",left:o+r,width:n,height:l}})}),Ak=(0,dd.observer)(function({track:e,model:t}){let{blocksX:r,msaAreaWidth:n,rowHeight:o}=t;return e.model.data?Gr.default.createElement("div",{style:{position:"relative",height:o,width:n,overflow:"hidden"}},r.map(i=>Gr.default.createElement(lk,{key:i,track:e,model:t,offsetX:i}))):null}),qB=Ak});var al,cl=g(()=>{al="maeditor"});function JB(e){let t=Math.min(e.length-1,hf.length-1),r=hf[t];return Object.fromEntries(e.map((n,o)=>[n,r[o]]))}var VB=g(()=>{Cf()});function YB(e){let t=new Map(e.map(n=>[n.id,{id:`${n.id}`,name:`${n.id}`,parent:n.parent!==void 0?`${n.parent}`:void 0,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}return r}var WB=g(()=>{});function zB(e,t){md||(md=document.createElement("canvas"));let r=md.getContext("2d");if(!r)throw new Error("no canvas context");return r.font=r.font.replace(/\d+px/,`${t}px`),r.measureText(e).width}var md,$B=g(()=>{});function KB(){return Hr.types.model({tree:Hr.types.maybe(Hr.types.string),msa:Hr.types.maybe(Hr.types.string),treeMetadata:Hr.types.maybe(Hr.types.string),gff:Hr.types.maybe(Hr.types.string)}).actions(e=>({setTree(t){e.tree=t},setMSA(t){e.msa=t},setTreeMetadata(t){e.treeMetadata=t},setGFF(t){e.gff=t}})).postProcessSnapshot(e=>{let{tree:t,msa:r,treeMetadata:n,gff:o}=e,i=5e4;return{tree:t&&t.length>i?void 0:t,msa:r&&r.length>i?void 0:r,treeMetadata:n&&n.length>i?void 0:n,gff:o&&o.length>i?void 0:o}})}var Hr,XB=g(()=>{Hr=f(Nt(),1)});function eS(){return ZB.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 ZB,tS=g(()=>{ZB=f(Nt(),1)});function nS(){return rS.types.model({bgColor:!0,colorSchemeName:al}).actions(e=>({setColorSchemeName(t){e.colorSchemeName=t},setBgColor(t){e.bgColor=t}}))}var rS,oS=g(()=>{rS=f(Nt(),1);cl()});function iS(){return Ii.types.model({drawLabels:!0,labelsAlignRight:!1,treeAreaWidth:Ii.types.optional(Ii.types.number,400),treeWidth:Ii.types.optional(Ii.types.number,300),showBranchLen:!0,drawTree:!0,drawNodeBubbles:!0}).actions(e=>({setTreeAreaWidth(t){e.treeAreaWidth=Math.round(t)},setTreeWidth(t){e.treeWidth=Math.round(t)},setLabelsAlignRight(t){e.labelsAlignRight=t},setDrawTree(t){e.drawTree=t},setShowBranchLen(t){e.showBranchLen=t},setDrawNodeBubbles(t){e.drawNodeBubbles=t},setDrawLabels(t){e.drawLabels=t}}))}var Ii,sS=g(()=>{Ii=f(Nt(),1);cl()});function wd(e,t){return aS.get(e.toUpperCase())?.get(t.toUpperCase())??-4}function fk(e,t){if(e.length!==t.length)throw new Error("Sequences must have the same length (aligned)");let r=0,n=0,o=0,i=0;for(let l=0;l<e.length;l++){let A=e[l],u=t[l];if(A==="-"&&u==="-")continue;if(A==="-"||u==="-"){n++;continue}let d=wd(A,u);o+=d,i+=Math.max(wd(A,A),wd(u,u)),A.toUpperCase()===u.toUpperCase()?r++:n++}if(r+n===0||i<=0)return 1;let a=o/i,c=Math.max(.01,Math.min(1,a));return-Math.log(c)}function dk(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]=fk(e[n][1],e[o][1])}return r}function mk(e,t){let r=e.length;if(r<2)return{name:t[0]};if(r===2){let a=e[0][1];return{left:{name:t[0]},right:{name:t[1]},leftLength:a/2,rightLength:a/2}}let n=[];for(let a=0;a<r;a++)n[a]=[...e[a]];let o=t.map(a=>({name:a})),i=r;for(;i>2;){let a=[];for(let y=0;y<o.length;y++)o[y]!==void 0&&a.push(y);let c=new Map;for(let y of a){let w=0;for(let S of a)y!==S&&(w+=n[y][S]);c.set(y,w)}let l=1/0,A=-1,u=-1;for(let y=0;y<a.length;y++)for(let w=y+1;w<a.length;w++){let S=a[y],v=a[w],M=(i-2)*n[S][v]-c.get(S)-c.get(v);M<l&&(l=M,A=S,u=v)}let d=n[A][u],m=c.get(A),p=c.get(u),C,x;i>2?(C=d/2+(m-p)/(2*(i-2)),x=d-C):(C=d/2,x=d/2),C=Math.max(0,C),x=Math.max(0,x);let I={left:o[A],right:o[u],leftLength:C,rightLength:x},h=A;for(let y of a)if(y!==A&&y!==u){let w=(n[A][y]+n[u][y]-d)/2;n[h][y]=Math.max(0,w),n[y][h]=Math.max(0,w)}o[u]=void 0,o[h]=I,i--}let s=[];for(let a=0;a<o.length;a++)o[a]!==void 0&&s.push(a);if(s.length===2){let a=s[0],c=s[1],l=n[a][c];return{left:o[a],right:o[c],leftLength:l/2,rightLength:l/2}}return o[s[0]]}function bd(e,t){let r;if(e.name!==void 0&&!e.left&&!e.right)r=`'${e.name.replaceAll("'","''")}'`;else{let n=e.left?bd(e.left,e.leftLength):"",o=e.right?bd(e.right,e.rightLength):"";r=`(${n},${o})`}return t!==void 0&&(r+=`:${t.toFixed(6)}`),r}function cS(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=dk(e),n=mk(r,t);return bd(n)+";"}var ll,uk,aS,lS=g(()=>{ll="ARNDCQEGHILKMFPSTWYVBZX*",uk=[[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]],aS=new Map;for(let e=0;e<ll.length;e++){let t=new Map;for(let r=0;r<ll.length;r++)t.set(ll[r],uk[e][r]);aS.set(ll[e],t)}});function Bd(e){let t=[],r=0;for(;r<e.length&&(r=e.indexOf("{",r),r!==-1);){let n=1,o=r+1;for(r++;r<e.length&&n>0;)e[r]==="{"?n++:e[r]==="}"&&n--,r++;n===0&&t.push(e.slice(o,r-1).trim())}return t}function pk(e,t){let r=e.indexOf("{",t);if(r===-1)return;let n=1,o=r+1;for(;o<e.length&&n>0;)e[o]==="{"?n++:e[o]==="}"&&n--,o++;return n===0?e.slice(r+1,o-1).trim():void 0}function AS(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=hk(t),n=Object.fromEntries(Bd(r.fdict).flatMap(o=>{let i=Ck(o);return i?[[i.id,gk[i.name]||i.name]]:[]}));return Bd(r.nodes).flatMap(o=>{let i=Ek(o);if(!i)return[];let{features:s=[],...a}=i;return[{...a,...Object.fromEntries(s.map(c=>[n[c.featureid],c.value]))}]})}function hk(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 s=1,a=n+1;for(n++;n<r.length&&s>0;)r[n]==="{"?s++:r[n]==="}"&&s--,n++;s===0&&(t[i]=r.slice(a,n-1).trim()),n=r.indexOf(",",n),n=n===-1?r.length:n+1}return t}function Ck(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 Ek(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?pk(e,n):void 0;return{id:parseInt(t[1],10),...r?{parent:parseInt(r[1],10)}:{},features:o?Bd(o).flatMap(i=>{let s=Ik(i);return s?[s]:[]}):[]}}function Ik(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,"\\")}}var gk,uS=g(()=>{gk={$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 Sd(e,t){let r=0,n=0,o=0,i=e.length;for(;n<i&&e[n]===o;)n++,o++;for(;r<t;)for(r++,o++;n<i&&e[n]===o;)n++,o++;return o}function fS(e,t){let r=0,n=e.length-1;for(;r<=n;){let i=Math.floor((r+n)/2);if(e[i]===t)return;e[i]<t?r=i+1:n=i-1}return t-r}function xk({seq:e,blanks:t,visibleCol:r}){let n=Sd(t,r),o=e.length;if(n<o&&rs(e[n]))return;let i=0;for(let s=0;s<n&&s<o;s++)rs(e[s])||i++;return n<o?i:void 0}function dS({rowName:e,visibleCol:t,rowMap:r,blanks:n}){let o=r.get(e);return o!==void 0?xk({seq:o,visibleCol:t,blanks:n}):void 0}var mS=g(()=>{yn()});function gS({row:e,seqPos:t}){let r=0,n=0;for(;n<e.length;){if(!rs(e[n])){if(r===t)return n;r++}n++}return t===0?0:n}var pS=g(()=>{yn()});function hS(e,t){let r=URL.createObjectURL(e),n=document.createElement("a");n.href=r,n.download=t,n.click(),setTimeout(()=>{URL.revokeObjectURL(r)},4e4)}var CS=g(()=>{});var co,ES,yk,IS,xS=g(()=>{co=f(B(),1),ES=f(P(),1),yk=(0,ES.observer)(({model:e})=>{let{scrollX:t,msaAreaWidth:r,minimapHeight:n,colWidth:o,numColumns:i}=e,s=12,a=n-12,c=r/i/o,l=-t,A=l+r,u=l*c,d=A*c,m="rgb(66, 119, 127)",p=.3;return co.default.createElement(co.default.Fragment,null,co.default.createElement("rect",{x:0,y:0,width:r,height:s,stroke:"#555",fill:"none"}),co.default.createElement("rect",{x:Math.max(0,u),y:0,width:d-u,height:s,fill:m,fillOpacity:p,stroke:"#555"}),co.default.createElement("g",{transform:`translate(0 ${s})`},co.default.createElement("polygon",{fill:m,fillOpacity:p,points:[[d,0],[u,0],[0,a],[r,a]].toString()})))}),IS=yk});var bS={};ze(bS,{Context:()=>vd});function yS(e){return!e||typeof e=="string"?e:e+""}function br(e,t){let r=Object.keys(t);for(let n of r)e=e.replace(new RegExp("\\{"+n+"\\}","gi"),t[n]);return e}function Qd(e){if(!e)throw new Error("cannot create a random attribute name for an undefined object");let t="ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz",r="";do{r="";for(let n=0;n<12;n++)r+=t[Math.floor(Math.random()*t.length)]}while(e[r]);return r}function wk(e,t=10){let r={},n=e.split(",");for(let o=0;o<n.length;o+=2){let i="&"+n[o+1]+";",s=parseInt(n[o],t);r[i]="&#"+s+";"}return r["\\xa0"]=" ",r}function bk(e){let t={left:"start",right:"end",center:"middle",start:"start",end:"end"};return t[e]||t.start}function Bk(e){let t={alphabetic:"alphabetic",hanging:"hanging",top:"text-before-edge",bottom:"text-after-edge",middle:"central"};return t[e]||t.alphabetic}var wS,Cs,Es,Md,vd,BS=g(()=>{wS=wk("50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro",32),Cs={strokeStyle:{svgAttr:"stroke",canvas:"#000000",svg:"none",apply:"stroke"},fillStyle:{svgAttr:"fill",canvas:"#000000",svg:null,apply:"fill"},lineCap:{svgAttr:"stroke-linecap",canvas:"butt",svg:"butt",apply:"stroke"},lineJoin:{svgAttr:"stroke-linejoin",canvas:"miter",svg:"miter",apply:"stroke"},miterLimit:{svgAttr:"stroke-miterlimit",canvas:10,svg:4,apply:"stroke"},lineWidth:{svgAttr:"stroke-width",canvas:1,svg:1,apply:"stroke"},globalAlpha:{svgAttr:"opacity",canvas:1,svg:1,apply:"fill stroke"},font:{canvas:"10px sans-serif"},shadowColor:{canvas:"#000000"},shadowOffsetX:{canvas:0},shadowOffsetY:{canvas:0},shadowBlur:{canvas:0},textAlign:{canvas:"start"},textBaseline:{canvas:"alphabetic"},lineDash:{svgAttr:"stroke-dasharray",canvas:[],svg:null,apply:"stroke"}},Es=class{__root;__ctx;constructor(t,r){this.__root=t,this.__ctx=r}addColorStop(t,r){let n=this.__ctx.__createElement("stop");if(n.setAttribute("offset",String(t)),yS(r).includes("rgba")){let i=/rgba\(\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d?\.?\d*)\s*\)/gi.exec(r);i&&(n.setAttribute("stop-color",br("rgb({r},{g},{b})",{r:i[1],g:i[2],b:i[3]})),n.setAttribute("stop-opacity",i[4]))}else n.setAttribute("stop-color",yS(r));this.__root.appendChild(n)}},Md=class{__root;__ctx;constructor(t,r){this.__root=t,this.__ctx=r}},vd=class{width;height;enableMirroring;canvas;__document;__ctx;__canvas;__root;__ids;__defs;__currentElement;__styleStack;__groupStack;__currentDefaultPath;__currentPosition;__transformMatrix;__transformMatrixStack;__currentElementsToStyle;__options;__id;__fontUnderline;__fontHref;strokeStyle;fillStyle;lineCap;lineJoin;miterLimit;lineWidth;globalAlpha;font;shadowColor;shadowOffsetX;shadowOffsetY;shadowBlur;textAlign;textBaseline;lineDash;constructor(t,r){let n={width:500,height:500,enableMirroring:!1},o;typeof t=="number"&&r!==void 0?o={...n,width:t,height:r}:t&&typeof t=="object"?o=t:o=n,this.width=o.width||n.width,this.height=o.height||n.height,this.enableMirroring=o.enableMirroring!==void 0?o.enableMirroring:n.enableMirroring,this.canvas=this,this.__document=o.document||document,o.ctx?this.__ctx=o.ctx:(this.__canvas=this.__document.createElement("canvas"),this.__ctx=this.__canvas.getContext("2d")),this.__setDefaultStyles(),this.__styleStack=[this.__getStyleState()],this.__groupStack=[],this.__root=this.__document.createElementNS("http://www.w3.org/2000/svg","svg"),this.__root.setAttribute("version","1.1"),this.__root.setAttribute("xmlns","http://www.w3.org/2000/svg"),this.__root.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:xlink","http://www.w3.org/1999/xlink"),this.__root.setAttribute("width",String(this.width)),this.__root.setAttribute("height",String(this.height)),this.__ids={},this.__defs=this.__document.createElementNS("http://www.w3.org/2000/svg","defs"),this.__root.appendChild(this.__defs),this.__currentElement=this.__document.createElementNS("http://www.w3.org/2000/svg","g"),this.__root.appendChild(this.__currentElement),this.__currentDefaultPath="",this.__currentPosition={},this.__transformMatrix=new DOMMatrix,this.resetTransform(),this.__options=o,this.__id=Math.random().toString(16).substring(2,8)}__createElement(t,r={},n){let o=this.__document.createElementNS("http://www.w3.org/2000/svg",t);n&&(o.setAttribute("fill","none"),o.setAttribute("stroke","none"));for(let i of Object.keys(r))o.setAttribute(i,r[i]);return o}__setDefaultStyles(){for(let t of Object.keys(Cs))this[t]=Cs[t].canvas}__applyStyleState(t){for(let r of Object.keys(t))this[r]=t[r]}__getStyleState(){let t={};for(let r of Object.keys(Cs))t[r]=this[r];return t}__applyTransformation(t,r){let{a:n,b:o,c:i,d:s,e:a,f:c}=r||this.getTransform();t.setAttribute("transform",`matrix(${n} ${o} ${i} ${s} ${a} ${c})`)}__applyStyleToCurrentElement(t){let r=this.__currentElement,n=this.__currentElementsToStyle;if(n){r.setAttribute(t,""),r=n.element;for(let i of n.children)i.setAttribute(t,"")}let o=Object.keys(Cs);for(let i of o){let s=Cs[i],a=this[i];if(s.apply){if(a instanceof Md){if(a.__ctx)for(let c of Array.from(a.__ctx.__defs.childNodes)){let l=c.getAttribute("id");l&&(this.__ids[l]=l,this.__defs.appendChild(c))}r.setAttribute(s.apply,br("url(#{id})",{id:a.__root.getAttribute("id")}))}else if(a instanceof Es)r.setAttribute(s.apply,br("url(#{id})",{id:a.__root.getAttribute("id")}));else if(s.apply.includes(t)&&s.svg!==a)if((s.svgAttr==="stroke"||s.svgAttr==="fill")&&a&&a.includes("rgba")){let l=/rgba\(\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d?\.?\d*)\s*\)/gi.exec(a);if(l){r.setAttribute(s.svgAttr,br("rgb({r},{g},{b})",{r:l[1],g:l[2],b:l[3]}));let A=Number(l[4]),u=this.globalAlpha;u!=null&&(A*=u),r.setAttribute(s.svgAttr+"-opacity",String(A))}}else{let c=s.svgAttr,l=a;if(i==="globalAlpha"){if(c=t+"-"+s.svgAttr,r.getAttribute(c))continue}else if(i==="lineWidth"){let A=this.__getTransformScale();l=a*Math.max(A.x,A.y)}r.setAttribute(c,l)}}}}__closestGroupOrSvg(t){return t=t||this.__currentElement,t.nodeName==="g"||t.nodeName==="svg"?t:this.__closestGroupOrSvg(t.parentNode)}getSerializedSvg(t){let r=new XMLSerializer().serializeToString(this.__root);if(/xmlns="http:\/\/www\.w3\.org\/2000\/svg".+xmlns="http:\/\/www\.w3\.org\/2000\/svg/gi.test(r)&&(r=r.replace('xmlns="http://www.w3.org/2000/svg','xmlns:xlink="http://www.w3.org/1999/xlink')),t)for(let o of Object.keys(wS)){let i=new RegExp(o,"gi");i.test(r)&&(r=r.replace(i,wS[o]))}return r}getSvg(){return this.__root}save(){let t=this.__createElement("g"),r=this.__closestGroupOrSvg();this.__groupStack.push(r),r.appendChild(t),this.__currentElement=t;let n=this.__getStyleState();this.__styleStack.push(n),this.__transformMatrixStack||(this.__transformMatrixStack=[]),this.__transformMatrixStack.push(this.getTransform())}restore(){this.__currentElement=this.__groupStack.pop(),this.__currentElementsToStyle=void 0,this.__currentElement||(this.__currentElement=this.__root.childNodes[1]);let t=this.__styleStack.pop();this.__applyStyleState(t),this.__transformMatrixStack&&this.__transformMatrixStack.length>0&&this.setTransform(this.__transformMatrixStack.pop())}beginPath(){this.__currentDefaultPath="",this.__currentPosition={};let t=this.__createElement("path",{},!0);this.__closestGroupOrSvg().appendChild(t),this.__currentElement=t}__applyCurrentDefaultPath(){let t=this.__currentElement;t.nodeName==="path"&&t.setAttribute("d",this.__currentDefaultPath)}__addPathCommand(t){this.__currentDefaultPath+=" ",this.__currentDefaultPath+=t}moveTo(t,r){this.__currentElement.nodeName!=="path"&&this.beginPath(),this.__currentPosition={x:t,y:r},this.__addPathCommand(br("M {x} {y}",{x:this.__matrixTransform(t,r).x,y:this.__matrixTransform(t,r).y}))}closePath(){this.__currentDefaultPath&&this.__addPathCommand("Z")}lineTo(t,r){this.__currentPosition={x:t,y:r},this.__currentDefaultPath.includes("M")?this.__addPathCommand(br("L {x} {y}",{x:this.__matrixTransform(t,r).x,y:this.__matrixTransform(t,r).y})):this.__addPathCommand(br("M {x} {y}",{x:this.__matrixTransform(t,r).x,y:this.__matrixTransform(t,r).y}))}bezierCurveTo(t,r,n,o,i,s){this.__currentPosition={x:i,y:s},this.__addPathCommand(br("C {cp1x} {cp1y} {cp2x} {cp2y} {x} {y}",{cp1x:this.__matrixTransform(t,r).x,cp1y:this.__matrixTransform(t,r).y,cp2x:this.__matrixTransform(n,o).x,cp2y:this.__matrixTransform(n,o).y,x:this.__matrixTransform(i,s).x,y:this.__matrixTransform(i,s).y}))}quadraticCurveTo(t,r,n,o){this.__currentPosition={x:n,y:o},this.__addPathCommand(br("Q {cpx} {cpy} {x} {y}",{cpx:this.__matrixTransform(t,r).x,cpy:this.__matrixTransform(t,r).y,x:this.__matrixTransform(n,o).x,y:this.__matrixTransform(n,o).y}))}stroke(){this.__currentElement.nodeName==="path"&&this.__currentElement.setAttribute("paint-order","fill stroke markers"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement("stroke")}fill(){this.__currentElement.nodeName==="path"&&this.__currentElement.setAttribute("paint-order","stroke fill markers"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement("fill")}rect(t,r,n,o){this.__currentElement.nodeName!=="path"&&this.beginPath(),this.moveTo(t,r),this.lineTo(t+n,r),this.lineTo(t+n,r+o),this.lineTo(t,r+o),this.lineTo(t,r),this.closePath()}__clearCanvas(){let t=this.__root.childNodes[1];this.__root.removeChild(t),this.__currentElement=this.__document.createElementNS("http://www.w3.org/2000/svg","g"),this.__root.appendChild(this.__currentElement),this.__groupStack=[]}fillRect(t,r,n,o){let{a:i,b:s,c:a,d:c,e:l,f:A}=this.getTransform();JSON.stringify([i,s,a,c,l,A])===JSON.stringify([1,0,0,1,0,0])&&t===0&&r===0&&n===this.width&&o===this.height&&this.__clearCanvas();let u=this.__createElement("rect",{x:t,y:r,width:n,height:o},!0);this.__closestGroupOrSvg().appendChild(u),this.__currentElement=u,this.__applyTransformation(u),this.__applyStyleToCurrentElement("fill")}strokeRect(t,r,n,o){let i=this.__createElement("rect",{x:t,y:r,width:n,height:o},!0);this.__closestGroupOrSvg().appendChild(i),this.__currentElement=i,this.__applyTransformation(i),this.__applyStyleToCurrentElement("stroke")}clearRect(t,r,n,o){let{a:i,b:s,c:a,d:c,e:l,f:A}=this.getTransform();if(JSON.stringify([i,s,a,c,l,A])===JSON.stringify([1,0,0,1,0,0])&&t===0&&r===0&&n===this.width&&o===this.height){this.__clearCanvas();return}let u=this.__createElement("rect",{x:t,y:r,width:n,height:o,fill:"#FFFFFF"},!0);this.__applyTransformation(u),this.__closestGroupOrSvg().appendChild(u)}createLinearGradient(t,r,n,o){let i=this.__createElement("linearGradient",{id:Qd(this.__ids),x1:t+"px",x2:n+"px",y1:r+"px",y2:o+"px",gradientUnits:"userSpaceOnUse"});return this.__defs.appendChild(i),new Es(i,this)}createRadialGradient(t,r,n,o,i,s){let a=this.__createElement("radialGradient",{id:Qd(this.__ids),cx:o+"px",cy:i+"px",r:s+"px",fx:t+"px",fy:r+"px",gradientUnits:"userSpaceOnUse"});return this.__defs.appendChild(a),new Es(a,this)}__applyText(t,r,n,o){let i=document.createElement("span");i.setAttribute("style","font:"+this.font);let s=i.style,a=this.__closestGroupOrSvg(),c=this.__createElement("text",{"font-family":s.fontFamily,"font-size":s.fontSize,"font-style":s.fontStyle,"font-weight":s.fontWeight,"text-decoration":this.__fontUnderline,x:r,y:n,"text-anchor":bk(this.textAlign),"dominant-baseline":Bk(this.textBaseline)},!0);c.appendChild(this.__document.createTextNode(t)),this.__currentElement=c,this.__applyTransformation(c),this.__applyStyleToCurrentElement(o);let l=c;if(this.__fontHref){let A=this.__createElement("a");A.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.__fontHref),A.appendChild(c),l=A}a.appendChild(l)}fillText(t,r,n){this.__applyText(t,r,n,"fill")}strokeText(t,r,n){this.__applyText(t,r,n,"stroke")}measureText(t){return this.__ctx.font=this.font,this.__ctx.measureText(t)}arc(t,r,n,o,i,s){if(o===i)return;o=o%(2*Math.PI),i=i%(2*Math.PI),o===i&&(i=(i+2*Math.PI-.001*(s?-1:1))%(2*Math.PI));let a=t+n*Math.cos(i),c=r+n*Math.sin(i),l=t+n*Math.cos(o),A=r+n*Math.sin(o),u=s?0:1,d=0,m=i-o;m<0&&(m+=2*Math.PI),s?d=m>Math.PI?0:1:d=m>Math.PI?1:0;let p=Math.hypot(this.__transformMatrix.a,this.__transformMatrix.b),C=Math.hypot(this.__transformMatrix.c,this.__transformMatrix.d);this.lineTo(l,A),this.__addPathCommand(br("A {rx} {ry} {xAxisRotation} {largeArcFlag} {sweepFlag} {endX} {endY}",{rx:n*p,ry:n*C,xAxisRotation:0,largeArcFlag:d,sweepFlag:u,endX:this.__matrixTransform(a,c).x,endY:this.__matrixTransform(a,c).y})),this.__currentPosition={x:a,y:c}}clip(){let t=this.__closestGroupOrSvg(),r=this.__createElement("clipPath"),n=Qd(this.__ids),o=this.__createElement("g");this.__applyCurrentDefaultPath(),t.removeChild(this.__currentElement),r.setAttribute("id",n),r.appendChild(this.__currentElement),this.__defs.appendChild(r),t.setAttribute("clip-path",br("url(#{id})",{id:n})),t.appendChild(o),this.__currentElement=o}setLineDash(t){t&&t.length>0?this.lineDash=t.join(","):this.lineDash=null}setTransform(t,r,n,o,i,s){t instanceof DOMMatrix?this.__transformMatrix=new DOMMatrix([t.a,t.b,t.c,t.d,t.e,t.f]):this.__transformMatrix=new DOMMatrix([t,r,n,o,i,s])}getTransform(){let{a:t,b:r,c:n,d:o,e:i,f:s}=this.__transformMatrix;return new DOMMatrix([t,r,n,o,i,s])}resetTransform(){this.setTransform(1,0,0,1,0,0)}scale(t,r){if(r===void 0&&(r=t),isNaN(t)||isNaN(r)||!isFinite(t)||!isFinite(r))return;let n=this.getTransform().scale(t,r);this.setTransform(n)}rotate(t){let r=this.getTransform().multiply(new DOMMatrix([Math.cos(t),Math.sin(t),-Math.sin(t),Math.cos(t),0,0]));this.setTransform(r)}translate(t,r){let n=this.getTransform().translate(t,r);this.setTransform(n)}transform(t,r,n,o,i,s){let a=this.getTransform().multiply(new DOMMatrix([t,r,n,o,i,s]));this.setTransform(a)}__matrixTransform(t,r){return new DOMPoint(t,r).matrixTransform(this.__transformMatrix)}__getTransformScale(){return{x:Math.hypot(this.__transformMatrix.a,this.__transformMatrix.b),y:Math.hypot(this.__transformMatrix.c,this.__transformMatrix.d)}}__getTransformRotation(){return Math.atan2(this.__transformMatrix.b,this.__transformMatrix.a)}drawFocusRing(){}createImageData(){}putImageData(){}globalCompositeOperation(){}drawImage(){}createPattern(){return null}}});var vS={};ze(vS,{renderToSvg:()=>Sk});async function Sk(e,t){await(0,MS.when)(()=>!!e.dataInitialized);let{width:r,height:n,scrollX:o,scrollY:i,totalTrackAreaHeight:s}=e,{exportType:a,theme:c,includeMinimap:l,includeTracks:A}=t,u=A?s:0;if(a==="entire")return SS({width:e.totalWidth+e.treeAreaWidth,height:e.totalHeight+u,contentHeight:e.totalHeight,trackHeight:u,theme:c,model:e,offsetY:0,offsetX:0,includeMinimap:l,includeTracks:A});if(a==="viewport")return SS({width:r,height:n+(l?e.minimapHeight:0)+u,contentHeight:n,trackHeight:u,theme:c,model:e,offsetY:-i,offsetX:-o,includeMinimap:l,includeTracks:A});throw new Error("unknown export type")}async function SS({width:e,height:t,contentHeight:r,trackHeight:n,offsetX:o,offsetY:i,theme:s,model:a,includeMinimap:c,includeTracks:l}){let{Context:A}=await Promise.resolve().then(()=>(BS(),bS)),u=c?vk:_k;return(0,QS.renderToStaticMarkup)(ae.default.createElement(Tk,{width:e,height:t},ae.default.createElement(u,{model:a},l&&n>0?ae.default.createElement(Mk,{Context:A,model:a,theme:s,offsetX:o,width:e,trackHeight:n}):null,ae.default.createElement("g",{transform:n>0?`translate(0 ${n})`:void 0},ae.default.createElement(Qk,{Context:A,model:a,theme:s,offsetX:o,offsetY:i,width:e,contentHeight:r})))))}function Qk({model:e,theme:t,width:r,contentHeight:n,offsetX:o,offsetY:i,Context:s}){let{treeAreaWidth:a,colorScheme:c,id:l}=e,A=`tree-${l}`,u=`msa-${l}`,d=$n(c,t),m=new s(r,n),p=new s(r,n);qc({ctx:p,offsetX:o,offsetY:i,model:e,blockSizeYOverride:n,highResScaleFactorOverride:1});let C=r-a;return $c({model:e,offsetY:i,ctx:m,theme:t,blockSizeYOverride:n,highResScaleFactorOverride:1}),jc({model:e,theme:t,offsetY:i,offsetX:o,contrastScheme:d,ctx:p,blockSizeXOverride:C,blockSizeYOverride:n,highResScaleFactorOverride:1}),ae.default.createElement(ae.default.Fragment,null,ae.default.createElement("defs",null,ae.default.createElement("clipPath",{id:A},ae.default.createElement("rect",{x:0,y:0,width:a,height:n}))),ae.default.createElement("defs",null,ae.default.createElement("clipPath",{id:u},ae.default.createElement("rect",{x:0,y:0,width:C,height:n}))),ae.default.createElement("g",{clipPath:`url(#${A})`,dangerouslySetInnerHTML:{__html:m.getSvg().innerHTML}}),ae.default.createElement("g",{clipPath:`url(#${u})`,transform:`translate(${a} 0)`,dangerouslySetInnerHTML:{__html:p.getSvg().innerHTML}}))}function Mk({model:e,theme:t,width:r,trackHeight:n,offsetX:o,Context:i}){let{treeAreaWidth:s,colorScheme:a,id:c}=e,l=`tracks-${c}`,A=$n(a,t),u=r-s,d=new i(u,n);return PB({model:e,ctx:d,offsetX:o,contrastScheme:A,blockSizeXOverride:u,highResScaleFactorOverride:1}),ae.default.createElement("g",{transform:`translate(${s} 0)`},ae.default.createElement("defs",null,ae.default.createElement("clipPath",{id:l},ae.default.createElement("rect",{x:0,y:0,width:u,height:n}))),ae.default.createElement("g",{clipPath:`url(#${l})`,dangerouslySetInnerHTML:{__html:d.getSvg().innerHTML}}))}function vk({model:e,children:t}){let{minimapHeight:r,treeAreaWidth:n}=e;return ae.default.createElement(ae.default.Fragment,null,ae.default.createElement("g",{transform:`translate(${n} 0)`},ae.default.createElement(IS,{model:e})),ae.default.createElement("g",{transform:`translate(0 ${r})`},t))}function Tk({width:e,height:t,children:r}){return ae.default.createElement("svg",{width:e,height:t,xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",viewBox:[0,0,e,t].toString()},r)}function _k({children:e}){return e}var ae,QS,MS,TS=g(()=>{ae=f(B(),1),QS=f(ie(),1),MS=f(zr(),1);xS();Gf();Hf();sl();Kc();yn()});function Dk(){return X.types.compose(eS(),iS(),nS(),X.types.model("MsaView",{id:lo.ElementId,showDomains:!1,hideGaps:!0,allowedGappyness:100,subFeatureRows:!1,type:X.types.literal("MsaView"),drawMsaLetters:!0,height:X.types.optional(X.types.number,550),rowHeight:16,scrollY:0,scrollX:0,colWidth:12,treeFilehandle:X.types.maybe(lo.FileLocation),msaFilehandle:X.types.maybe(lo.FileLocation),treeMetadataFilehandle:X.types.maybe(lo.FileLocation),gffFilehandle:X.types.maybe(lo.FileLocation),currentAlignment:0,collapsed:X.types.array(X.types.string),showOnly:X.types.maybe(X.types.string),turnedOffTracks:X.types.map(X.types.boolean),data:X.types.optional(KB(),{tree:"",msa:"",treeMetadata:""}),featureFilters:X.types.map(X.types.boolean),relativeTo:X.types.maybe(X.types.string)})).volatile(()=>({headerHeight:0,status:void 0,highResScaleFactor:2,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,nref:0,minimapHeight:56,conservationTrackHeight:40,marginLeft:20,error:void 0,interProAnnotations:void 0})).actions(e=>({drawRelativeTo(t){e.relativeTo=t},setHideGaps(t){e.hideGaps=t},setAllowedGappyness(t){e.allowedGappyness=t},setLoadingMSA(t){e.loadingMSA=t},setLoadingTree(t){e.loadingTree=t},setWidth(t){e.volatileWidth=t},setHeight(t){e.height=t},setError(t){e.error=t},setMousePos(t,r){e.mouseCol=t,e.mouseRow=r},setHoveredTreeNode(t){if(!t){e.hoveredTreeNode=void 0;return}let r=ms(e.hierarchy,o=>o.data.id===t);if(!r){e.hoveredTreeNode=void 0;return}let n=gs(r).map(o=>o.data.name);e.hoveredTreeNode={nodeId:t,descendantNames:n}},setHighlightedColumns(t){e.highlightedColumns=t},setShowDomains(t){e.showDomains=t},setSubFeatureRows(t){e.subFeatureRows=t},setMouseClickPos(t,r){e.mouseClickCol=t,e.mouseClickRow=r},setRowHeight(t){e.rowHeight=t},setColWidth(t){e.colWidth=t},setScrollY(t){e.scrollY=t},setCurrentAlignment(t){e.currentAlignment=t},toggleCollapsed(t){e.collapsed.includes(t)?e.collapsed.remove(t):e.collapsed.push(t)},setShowOnly(t){e.showOnly=t},setData(t){e.data=(0,X.cast)(t)},setMSAFilehandle(t){e.msaFilehandle=t},setTreeFilehandle(t){e.treeFilehandle=t},setGFFFilehandle(t){e.gffFilehandle=t},setMSA(t){e.data.setMSA(t)},setTree(t){e.data.setTree(t)},setTreeMetadata(t){e.data.setTreeMetadata(t)}})).views(e=>({get hideGapsEffective(){return e.hideGaps&&(e.collapsed.length>0||e.allowedGappyness<100)},get realAllowedGappyness(){return this.hideGapsEffective?e.allowedGappyness:100},get actuallyShowDomains(){return e.showDomains&&!!e.interProAnnotations},get viewInitialized(){return e.volatileWidth!==void 0},get width(){if(e.volatileWidth===void 0)throw new Error("not initialized");return e.volatileWidth}})).views(e=>({extraViewMenuItems(){return[]},get colorScheme(){return ci[e.colorSchemeName]},get header(){return this.MSA?.getHeader()||{}},get alignmentNames(){return this.MSA?.alignmentNames||[]},get noTree(){return!!this.tree.noTree},get noDomains(){return!e.interProAnnotations},menuItems(){return[]},get treeMetadata(){return e.data.treeMetadata?JSON.parse(e.data.treeMetadata):{}},get MSA(){let t=e.data.msa;return t?ld(t,e.currentAlignment):null},get numColumns(){return(this.MSA?.getWidth()||0)-this.blanks.length},get tree(){let t=e.data.tree;return t?pi(t.startsWith("BioTreeContainer")?YB(AS(t)):so(t.startsWith("SEQ")?nl(t).tree:t)):this.MSA?.getTree()||{noTree:!0,children:[],id:"empty",name:"empty"}},get rowNames(){return this.leaves.map(t=>t.data.name)},get mouseOverRowName(){let{mouseRow:t}=e;return t===void 0?void 0:this.rowNames[t]},get hoveredInsertion(){let{mouseCol:t,mouseRow:r}=e;if(t===void 0||r===void 0)return;let n=this.rowNames[r];if(!n)return;let o=this.insertionPositions.get(n);if(!o)return;let i=o.find(s=>s.pos===t);if(i)return{rowName:n,col:t,letters:i.letters}},get root(){let t=bb(this.tree,r=>r.children);if(Bb(t,r=>r.children.length>0?0:1),Sb(t,(r,n)=>(r.data.length??1)-(n.data.length??1)),e.showOnly){let r=ms(t,n=>n.data.id===e.showOnly);r&&(t=r)}for(let r of e.collapsed){let n=ms(t,o=>o.data.id===r);n&&(n.children?vb(n):n.parent?.children&&(n.parent.children=n.parent.children.filter(o=>o.data.id!==r)))}return t},get msaAreaWidth(){return e.width-e.treeAreaWidth},get treeAreaWidthMinusMargin(){return e.treeAreaWidth-e.marginLeft},get blanks(){let{hideGapsEffective:t,realAllowedGappyness:r}=e;if(!t)return[];let n=this.leaves.map(l=>this.MSA?.getRow(l.data.name)).filter(Ye.notEmpty);if(n.length===0)return[];let o=n[0].length,i=n.length,s=Math.ceil(r/100*i),a=new Uint16Array(o);for(let l=0;l<i;l++){let A=n[l];for(let u=0;u<o;u++)A.charCodeAt(u)-45>>>0<=1&&a[u]++}let c=[];for(let l=0;l<o;l++)a[l]>=s&&c.push(l);return c},get blanksSet(){return new Set(this.blanks)},get insertionPositions(){let{hideGapsEffective:t}=e,{blanks:r,rows:n}=this,o=r.length;if(o===0||!t)return new Map;let i=new Map;for(let[s,a]of n){let c=[],l=0,A=0,u=-1,d=[],m=a.length;for(let p=0;p<m;p++)A<o&&r[A]===p?(a.charCodeAt(p)-45>>>0<=1||(u===l?d.push(a[p]):(d.length>0&&c.push({pos:u,letters:d.join("")}),u=l,d=[a[p]])),A++):l++;d.length>0&&c.push({pos:u,letters:d.join("")}),c.length>0&&i.set(s,c)}return i},get rows(){let t=this.MSA;return this.leaves.map(r=>[r.data.name,t?.getRow(r.data.name)]).filter(r=>!!r[1])},get numRows(){return this.rows.length},get rowMap(){return new Map(this.rows)},get columns(){return Object.fromEntries(this.rows.map((t,r)=>[t[0],this.columns2d[r]]))},get columns2d(){let{hideGapsEffective:t}=e;return this.rows.map(r=>r[1]).map(r=>t?uf(this.blanks,r):r)},get fontSize(){return Math.min(Math.max(6,e.rowHeight-3),18)},get colStats(){let t=[],r=this.columns2d;for(let n of r)for(let o=0;o<n.length;o++){let i=t[o]||{},s=n[o];i[s]||(i[s]=0),i[s]++,t[o]=i}return t},get colStatsSums(){return this.colStats.map(t=>(0,Ye.sum)(Object.values(t)))},get sequenceType(){let t=new Set;for(let s of this.colStats)for(let a of Object.keys(s)){let c=a.toUpperCase();c!=="-"&&c!=="."&&t.add(c)}let r=new Set(["A","C","G","T","N"]),n=new Set(["A","C","G","U","N"]),o=[...t].every(s=>r.has(s)),i=[...t].every(s=>n.has(s));return o&&!t.has("U")?"dna":i&&!t.has("T")?"rna":"amino"},get colConsensus(){let{colStats:t,colStatsSums:r}=this;return t.map((n,o)=>{let i=r[o],s=0,a="";for(let l in n){let A=n[l];A>s&&l!=="-"&&l!=="."&&(s=A,a=l)}let c=s/i;return{letter:a,color:c>.4?`hsl(240, 30%, ${100*Math.max(1-c/3,.3)}%)`:void 0}})},get colClustalX(){let{colStats:t,colStatsSums:r}=this;return t.map((n,o)=>{let i=r[o],s={},a=n.W??0,c=n.L??0,l=n.V??0,A=n.I??0,u=n.M??0,d=n.A??0,m=n.F??0,p=n.C??0,C=n.H??0,x=n.P??0,I=n.R??0,h=n.K??0,y=n.Q??0,w=n.E??0,S=n.D??0,v=n.T??0,M=n.S??0,R=n.G??0,T=n.Y??0,V=n.N??0,Q=a+c+l+A+u+d+m+p+C+x+T,F=h+I,q=y+w,G=w+S,ye=v+M;return Q/i>.6&&(s.W="rgb(128,179,230)",s.L="rgb(128,179,230)",s.V="rgb(128,179,230)",s.A="rgb(128,179,230)",s.I="rgb(128,179,230)",s.M="rgb(128,179,230)",s.F="rgb(128,179,230)",s.C="rgb(128,179,230)"),(F/i>.6||h/i>.8||I/i>.8||y/i>.8)&&(s.K="#d88",s.R="#d88"),(F/i>.6||q/i>.5||w/i>.8||y/i>.8||S/i>.8)&&(s.E="rgb(192, 72, 192)"),(F/i>.6||G/i>.5||h/i>.8||I/i>.8||y/i>.8)&&(s.D="rgb(204, 77, 204)"),(V/i>.5||T/i>.85)&&(s.N="#8f8"),(F/i>.6||q/i>.6||y/i>.85||w/i>.85||h/i>.85||I/i>.85)&&(s.Q="#8f8"),(Q/i>.6||ye/i>.5||M/i>.85||v/i>.85)&&(s.S="rgb(26,204,26)",s.T="rgb(26,204,26)"),p/i>.85&&(s.C="rgb(240, 128, 128)"),R/i>0&&(s.G="rgb(240, 144, 72)"),x/i>0&&(s.P="rgb(204, 204, 0)"),(Q/i>.6||a/i>.85||T/i>.85||d/i>.85||p/i>.85||x/i>.85||y/i>.85||m/i>.85||C/i>.85||A/i>.85||c/i>.85||u/i>.85||l/i>.85)&&(s.H="rgb(26, 179, 179)",s.Y="rgb(26, 179, 179)"),s})},get conservation(){let{colStats:t,colStatsSums:r,sequenceType:n}=this,i=Math.log2(n==="amino"?20:4);return t.map((s,a)=>{let c=r[a];if(!c)return 0;let l=(s["-"]||0)+(s["."]||0),A=c-l;if(A===0)return 0;let u={};for(let C of Object.keys(s)){if(C==="-"||C===".")continue;let x=C.toUpperCase();u[x]=(u[x]||0)+s[C]}let d=0;for(let C of Object.keys(u)){let x=u[C]/A;x>0&&(d-=x*Math.log2(x))}let m=l/c;return Math.max(0,1-d/i)*(1-m)})},get hierarchy(){let t=this.root;return Mb(t,this.totalHeight,e.treeWidth),t.data.length=0,Jf(t,0,e.treeWidth/jf(t)),t},get totalHeight(){return gs(this.root).length*e.rowHeight},get leaves(){return gs(this.hierarchy)},get allBranchesLength0(){return Vc(this.hierarchy).every(t=>!t.source.data.length)},get showBranchLenEffective(){return this.allBranchesLength0?!1:e.showBranchLen}})).views(e=>({get totalWidth(){return e.numColumns*e.colWidth}})).views(e=>({get dataInitialized(){return(e.data.msa||e.data.tree)&&!e.error},get blocksX(){return FB({viewportWidth:e.msaAreaWidth,viewportX:-e.scrollX,blockSize:e.blockSize,mapWidth:e.totalWidth})},get blocksY(){return LB({viewportHeight:e.height,viewportY:-e.scrollY,blockSize:e.blockSize,mapHeight:e.totalHeight})}})).views(e=>({get blocks2d(){return e.blocksY.flatMap(t=>e.blocksX.map(r=>[r,t]))},get isLoading(){return e.loadingMSA||e.loadingTree},get maxScrollX(){return Math.min(-e.totalWidth+(e.msaAreaWidth-100),0)},get showMsaLetters(){return e.drawMsaLetters&&e.rowHeight>=5&&e.colWidth>e.rowHeight/2},get showTreeText(){return e.drawLabels&&e.rowHeight>=5}})).actions(e=>({setDrawMsaLetters(t){e.drawMsaLetters=t},calculateNeighborJoiningTreeFromMSA(){if(e.rows.length<2)throw new Error("Need at least 2 sequences to build a tree");let t=cS(e.rows);e.setTree(t)},resetZoom(){e.setColWidth(12),e.setRowHeight(16)},zoomOutHorizontal(){e.colWidth=Math.max(1,Math.floor(e.colWidth*.75)),e.scrollX=(0,Ye.clamp)(e.scrollX,e.maxScrollX,0)},zoomInHorizontal(){e.colWidth=Math.ceil(e.colWidth*1.5),e.scrollX=(0,Ye.clamp)(e.scrollX,e.maxScrollX,0)},zoomInVertical(){e.rowHeight=Math.ceil(e.rowHeight*1.5)},zoomOutVertical(){e.rowHeight=Math.max(1.5,Math.floor(e.rowHeight*.75))},zoomIn(){(0,Jt.transaction)(()=>{e.colWidth=Math.ceil(e.colWidth*1.5),e.rowHeight=Math.ceil(e.rowHeight*1.5),e.scrollX=(0,Ye.clamp)(e.scrollX,e.maxScrollX,0)})},zoomOut(){(0,Jt.transaction)(()=>{e.colWidth=Math.max(1,Math.floor(e.colWidth*.75)),e.rowHeight=Math.max(1.5,Math.floor(e.rowHeight*.75)),e.scrollX=(0,Ye.clamp)(e.scrollX,e.maxScrollX,0)})},doScrollY(t){e.scrollY=(0,Ye.clamp)(e.scrollY+t,-e.totalHeight+10,0)},setInterProAnnotations(t){e.interProAnnotations=t},applyGFFText(t){let r=ol(t),n=il(r);e.interProAnnotations=n,e.setShowDomains(!0)},doScrollX(t){this.setScrollX(e.scrollX+t)},setScrollX(t){e.scrollX=(0,Ye.clamp)(t,e.maxScrollX,0)},toggleTrack(t){e.turnedOffTracks.has(t)?e.turnedOffTracks.delete(t):e.turnedOffTracks.set(t,!0)},setStatus(t){e.status=t}})).views(e=>({get labelsWidth(){let{rowHeight:t,leaves:r,treeMetadata:n,fontSize:o}=e;return t<=5?0:r.reduce((i,s)=>Math.max(i,zB(n[s.data.name]?.genome||s.data.name,o)),0)},get secondaryStructureConsensus(){return e.MSA?.secondaryStructureConsensus},get seqConsensus(){return e.MSA?.seqConsensus},get adapterTrackModels(){let{rowHeight:t,MSA:r,hideGapsEffective:n,blanks:o}=e;return(r?.tracks??[]).filter(s=>!!s.data).map(s=>({model:{...s,data:n&&s.data?uf(o,s.data):s.data,height:t},ReactComponent:qB}))},get tracks(){let t={model:{id:"conservation",name:"Conservation",height:e.conservationTrackHeight},ReactComponent:GB};return[...this.adapterTrackModels,t]},get turnedOnTracks(){return this.tracks.filter(t=>!e.turnedOffTracks.has(t.model.id))},get showHorizontalScrollbar(){return e.msaAreaWidth<e.totalWidth},get rowNamesSet(){return new Map(e.rowNames.map((t,r)=>[t,r]))},visibleColToRowLetter(t,r){let{rowMap:n,blanks:o}=e;return n.get(t)?.[Sd(o,r)]},visibleColToSeqPos(t,r){return dS({rowName:t,visibleCol:r,rowMap:e.rowMap,blanks:e.blanks})},visibleColToSeqPosOneBased(t,r){let n=this.visibleColToSeqPos(t,r);return n!==void 0?n+1:void 0},globalColToVisibleCol(t){let{blanks:r,hideGapsEffective:n}=e;return n?fS(r,t):t},seqPosToGlobalCol(t,r){let{rows:n}=e,o=this.rowNamesSet.get(t);return o!==void 0&&n[o]?gS({row:n[o][1],seqPos:r}):0},seqPosToVisibleCol(t,r){let n=this.seqPosToGlobalCol(t,r);return this.globalColToVisibleCol(n)}})).views(e=>({get hoveredCell(){let{mouseCol:t,mouseRow:r}=e;if(t===void 0||r===void 0)return;let n=e.rowNames[r];if(!n)return;let i=e.columns[n]?.[t],s=e.visibleColToSeqPosOneBased(n,t);return{rowName:n,col:t,base:i,seqPos:s}},get msaAreaHeight(){return e.height-(e.showHorizontalScrollbar?e.minimapHeight:0)-e.headerHeight},get totalTrackAreaHeight(){return(0,Ye.sum)(e.turnedOnTracks.map(t=>t.model.height))},get tidyInterProAnnotationTypes(){return new Map(this.tidyInterProAnnotations.map(t=>[t.accession,t]))},get tidyInterProAnnotations(){let{interProAnnotations:t}=e;return t?Object.entries(t).flatMap(([r,n])=>n.matches.flatMap(({signature:o,locations:i})=>o.entry?i.map(({start:s,end:a})=>({id:r,name:o.entry.name,accession:o.entry.accession,description:o.entry.description,start:s,end:a})):[])).toSorted((r,n)=>ff(n)-ff(r)):[]},get tidyFilteredInterProAnnotations(){return this.tidyInterProAnnotations.filter(t=>e.featureFilters.get(t.accession))},get tidyFilteredGatheredInterProAnnotations(){return(0,Ye.groupBy)(this.tidyFilteredInterProAnnotations,t=>t.id)}})).views(e=>({get showVerticalScrollbar(){return e.msaAreaHeight<e.totalHeight}})).views(e=>({get verticalScrollbarWidth(){return e.showVerticalScrollbar?20:0},get fillPalette(){return JB([...e.tidyInterProAnnotationTypes.keys()])},get strokePalette(){return Object.fromEntries(Object.entries(this.fillPalette).map(([t,r])=>[t,wt(r).darken(.1).toHex()]))},getRowData(t){return{data:e.MSA?.getRowData(t),treeMetadata:e.treeMetadata[t]}}})).actions(e=>({setHeaderHeight(t){e.headerHeight=t},setConservationTrackHeight(t){e.conservationTrackHeight=t},reset(){e.setData({tree:"",msa:""}),e.resetZoom(),e.setError(void 0),e.setScrollY(0),e.setScrollX(0),e.setCurrentAlignment(0),e.setTreeFilehandle(void 0),e.setMSAFilehandle(void 0),e.setGFFFilehandle(void 0),e.setInterProAnnotations({}),e.setShowDomains(!1)},async exportSVG(t){let{renderToSvg:r}=await Promise.resolve().then(()=>(TS(),vS)),n=await r(e,t),o=new Blob([n],{type:"image/svg+xml"});hS(o,"image.svg")},incrementRef(){e.nref++},initFilter(t){e.featureFilters.get(t)===void 0&&e.featureFilters.set(t,!0)},setFilter(t,r){e.featureFilters.set(t,r)},fit(){e.rowHeight=e.msaAreaHeight/e.numRows,e.colWidth=e.msaAreaWidth/e.numColumns,e.scrollX=0,e.scrollY=0},fitVertically(){e.rowHeight=e.msaAreaHeight/e.numRows,e.scrollY=0},fitHorizontally(){e.colWidth=e.msaAreaWidth/e.numColumns,e.scrollX=0},afterCreate(){(0,X.addDisposer)(e,(0,Jt.autorun)(()=>{for(let t of e.tidyInterProAnnotationTypes.keys())this.initFilter(t)})),(0,X.addDisposer)(e,(0,Jt.autorun)(async()=>{let{treeFilehandle:t}=e;if(t)try{e.setLoadingTree(!0),e.setTree(await(0,Ye.fetchAndMaybeUnzipText)((0,Is.openLocation)(t))),t.locationType==="BlobLocation"&&e.setTreeFilehandle(void 0)}catch(r){console.error(r),e.setError(r)}finally{e.setLoadingTree(!1)}})),(0,X.addDisposer)(e,(0,Jt.autorun)(async()=>{let{treeMetadataFilehandle:t}=e;if(t)try{e.setTreeMetadata(await(0,Ye.fetchAndMaybeUnzipText)((0,Is.openLocation)(t)))}catch(r){console.error(r),e.setError(r)}})),(0,X.addDisposer)(e,(0,Jt.autorun)(()=>{let t=e.data.gff;if(t)try{e.applyGFFText(t)}catch(r){console.error(r),e.setError(r)}})),(0,X.addDisposer)(e,(0,Jt.autorun)(async()=>{let{gffFilehandle:t}=e;if(t)try{let r=await(0,Ye.fetchAndMaybeUnzipText)((0,Is.openLocation)(t));e.applyGFFText(r),t.locationType==="BlobLocation"&&e.setGFFFilehandle(void 0)}catch(r){console.error(r),e.setError(r)}})),(0,X.addDisposer)(e,(0,Jt.autorun)(async()=>{let{msaFilehandle:t}=e;if(t)try{e.setLoadingMSA(!0),e.setError(void 0);let r=await(0,Ye.fetchAndMaybeUnzipText)((0,Is.openLocation)(t));(0,Jt.transaction)(()=>{e.setMSA(r),t.locationType==="BlobLocation"&&e.setMSAFilehandle(void 0)})}catch(r){console.error(r),e.setError(r)}finally{e.setLoadingMSA(!1)}})),(0,X.addDisposer)(e,(0,Jt.autorun)(()=>{e.colorSchemeName.includes("dynamic")&&(e.colStats,e.colStatsSums),e.columns})),(0,X.addDisposer)(e,(0,Jt.autorun)(()=>{e.setTreeWidth(Math.max(50,e.treeAreaWidth-e.labelsWidth-10-e.marginLeft))}))}})).postProcessSnapshot(e=>{let t=e,{data:{tree:r,msa:n,treeMetadata:o},showDomains:i,hideGaps:s,allowedGappyness:a,subFeatureRows:c,drawMsaLetters:l,height:A,rowHeight:u,scrollY:d,scrollX:m,colWidth:p,currentAlignment:C,collapsed:x,showOnly:I,turnedOffTracks:h,featureFilters:y,relativeTo:w,bgColor:S,colorSchemeName:v,drawLabels:M,labelsAlignRight:R,treeAreaWidth:T,treeWidth:V,showBranchLen:Q,drawTree:F,drawNodeBubbles:q,...G}=t,Br=Object.fromEntries(Object.entries({showDomains:!1,hideGaps:!0,allowedGappyness:100,subFeatureRows:!1,drawMsaLetters:!0,height:550,rowHeight:16,scrollY:0,scrollX:0,colWidth:12,currentAlignment:0,bgColor:!0,colorSchemeName:al,drawLabels:!0,labelsAlignRight:!1,treeAreaWidth:400,treeWidth:300,showBranchLen:!0,drawTree:!0,drawNodeBubbles:!0}).filter(([Ur,cn])=>t[Ur]!==cn).map(([Ur])=>[Ur,t[Ur]]));return{...G,data:{...e.treeFilehandle?{}:{tree:r},...e.msaFilehandle?{}:{msa:n},...e.treeMetadataFilehandle?{}:{treeMetadata:o}},...Br,...x?.length?{collapsed:x}:{},...I!==void 0?{showOnly:I}:{},...h&&Object.keys(h).length>0?{turnedOffTracks:h}:{},...y&&Object.keys(y).length>0?{featureFilters:y}:{},...w!==void 0?{relativeTo:w}:{}}})}var Ye,Is,lo,X,Jt,Al,Dd=g(()=>{Ye=f(ie(),1),Is=f(fB(),1),lo=f(mB(),1),X=f(Nt(),1);Ic();Jt=f(zr(),1);NB();RB();wc();HB();jB();cl();VB();WB();Vf();$B();XB();tS();oS();sS();lS();uS();mS();pS();yn();CS();Al=Dk});var kd,kk,Nk,GS=g(()=>{kd=f(B(),1),kk=f(AB(),1),Nk=f(Su(),1);Dd();Xf()});var Nd=g(()=>{Xf();GS();Dd()});function jk(e){let t=e;return t.type==="ProteinView"&&Array.isArray(t.structures)}function vn(e){return e.filter(jk)}function dl(e,t){if(t<0||t>=e.length)return;let r=0;for(let n=0;n<t;n++)e[n]!=="-"&&r++;if(e[t]!=="-")return r}function $S(e,t){let r=0;for(let n=0;n<e.length;n++)if(e[n]!=="-"){if(r===t)return n;r++}}var ys=g(()=>{"use strict"});var EQ={};ze(EQ,{default:()=>eN});var ce,ml,pQ,Ie,hQ,CQ,Xk,Zk,eN,IQ=g(()=>{"use strict";ce=f(B()),ml=f(fe()),pQ=f(ie()),Ie=f(N()),hQ=f(P()),CQ=f(Me());ys();Xk=(0,CQ.makeStyles)()(e=>({formControl:{marginBottom:e.spacing(2)}})),Zk=(0,hQ.observer)(function({model:t,handleClose:r}){let{classes:n}=Xk(),o=(0,pQ.getSession)(t),[i,s]=(0,ce.useState)(""),[a,c]=(0,ce.useState)(0),[l,A]=(0,ce.useState)(t.querySeqName),[u,d]=(0,ce.useState)(),m=vn(o.views),C=m.find(h=>h.id===i)?.structures??[],x=t.rows.map(h=>h[0]),I=()=>{if(!i){d("Please select a protein view");return}try{t.connectToStructure(i,a,l),r()}catch(h){d(h instanceof Error?h.message:String(h))}};return ce.default.createElement(ml.Dialog,{maxWidth:"sm",title:"Connect to Protein Structure",open:!0,onClose:r},ce.default.createElement(Ie.DialogContent,null,m.length===0?ce.default.createElement(Ie.Typography,{color:"textSecondary"},"No protein views are currently open. Please open a protein structure view first."):ce.default.createElement(ce.default.Fragment,null,ce.default.createElement(Ie.FormControl,{fullWidth:!0,className:n.formControl},ce.default.createElement(Ie.InputLabel,null,"Protein View"),ce.default.createElement(Ie.Select,{value:i,label:"Protein View",onChange:h=>{s(h.target.value),c(0)}},m.map(h=>ce.default.createElement(Ie.MenuItem,{key:h.id,value:h.id},h.displayName??`ProteinView ${h.id}`)))),C.length>1?ce.default.createElement(Ie.FormControl,{fullWidth:!0,className:n.formControl},ce.default.createElement(Ie.InputLabel,null,"Structure"),ce.default.createElement(Ie.Select,{value:a,label:"Structure",onChange:h=>{c(h.target.value)}},C.map((h,y)=>ce.default.createElement(Ie.MenuItem,{key:y,value:y},h.url??`Structure ${y+1}`)))):null,ce.default.createElement(Ie.FormControl,{fullWidth:!0,className:n.formControl},ce.default.createElement(Ie.InputLabel,null,"MSA Row"),ce.default.createElement(Ie.Select,{value:l,label:"MSA Row",onChange:h=>{A(h.target.value)}},x.map(h=>ce.default.createElement(Ie.MenuItem,{key:h,value:h},h)))),u?ce.default.createElement(ml.ErrorMessage,{error:u}):null)),ce.default.createElement(Ie.DialogActions,null,ce.default.createElement(Ie.Button,{onClick:r},"Cancel"),ce.default.createElement(Ie.Button,{onClick:I,variant:"contained",disabled:m.length===0||!i},"Connect")))}),eN=Zk});var Bs,bQ,gl,BQ=g(()=>{"use strict";Bs=f(B()),bQ=f(fe()),gl=class extends Bs.Component{constructor(t){super(t),this.state={hasError:!1,error:null}}static getDerivedStateFromError(t){return{hasError:!0,error:t}}componentDidCatch(t,r){console.error("MsaViewPanel error:",t,r.componentStack)}render(){return this.state.hasError?Bs.default.createElement("div",{style:{padding:20}},Bs.default.createElement(bQ.ErrorMessage,{error:this.state.error})):this.props.children}}});function rN({baseUrl:e,rid:t}){return Od.default.createElement(SQ.Typography,null,"RID ",t," (",Od.default.createElement(Pn,{href:`${e}?CMD=Get&RID=${t}`},"see status"),")")}var Od,SQ,Gd,QQ=g(()=>{"use strict";Od=f(B()),SQ=f(N());ha();Gd=rN});function nN({baseUrl:e,rid:t,error:r}){return ir.default.createElement("div",null,t?ir.default.createElement(Gd,{rid:t,baseUrl:e}):null,ir.default.createElement(pl.ErrorMessage,{error:r}))}function oN({baseUrl:e,rid:t,progress:r}){let{classes:n}=TQ();return ir.default.createElement("div",{className:n.loading},t?ir.default.createElement(Gd,{baseUrl:e,rid:t}):null,ir.default.createElement(Hd.Typography,null,r))}var ir,pl,Hd,MQ,vQ,TQ,iN,_Q,DQ=g(()=>{"use strict";ir=f(B()),pl=f(fe()),Hd=f(N()),MQ=f(P()),vQ=f(Me());QQ();TQ=(0,vQ.makeStyles)()(e=>({margin:{padding:20},loading:{background:e.palette.background.paper}}));iN=(0,MQ.observer)(function({model:t,baseUrl:r}){let{progress:n,rid:o,error:i}=t,{classes:s}=TQ();return ir.default.createElement("div",{className:s.margin},ir.default.createElement(pl.LoadingEllipses,{message:"Running NCBI BLAST",variant:"h5"}),i?ir.default.createElement(nN,{baseUrl:r,rid:o,error:i}):o?ir.default.createElement(oN,{baseUrl:r,rid:o,progress:n}):ir.default.createElement(Hd.Typography,null,n||"Initializing BLAST query"))}),_Q=iN});var FQ={};ze(FQ,{default:()=>cN});var Ao,kQ,NQ,LQ,sN,aN,cN,RQ=g(()=>{"use strict";Ao=f(B()),kQ=f(fe()),NQ=f(P());Nd();LQ=f(Me());BQ();DQ();sN=(0,LQ.makeStyles)()({loadingContainer:{padding:20}}),aN=(0,NQ.observer)(function({model:t}){let{classes:r}=sN(),{blastParams:n,loadingStoredData:o}=t;return Ao.default.createElement(gl,null,Ao.default.createElement("div",null,n?Ao.default.createElement(_Q,{model:t,baseUrl:n.baseUrl}):o?Ao.default.createElement("div",{className:r.loadingContainer},Ao.default.createElement(kQ.LoadingEllipses,{message:"Loading MSA data",variant:"h6"})):Ao.default.createElement(tl,{model:t})))}),cN=aN});var AN={};ze(AN,{default:()=>hl});var HQ=f(im()),qd=f(po()),UQ=f(ie()),jd=f(Nt());W();var fm=f(L(),1),dm=(0,_.createSvgIcon)((0,fm.jsx)("path",{d:"M20 2H4c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2M8 20H4v-4h4zm0-6H4v-4h4zm0-6H4V4h4zm6 12h-4v-4h4zm0-6h-4v-4h4zm0-6h-4V4h4zm6 12h-4v-4h4zm0-6h-4v-4h4zm0-6h-4V4h4z"}),"GridOn");var Bm=f(B()),Sm=f(ie());var Bi=f(B()),wm=f(P());var Sl=f(B()),Cm=f(ie()),Ql=f(P());var hm=f(Me());function ks(e){return!!e&&typeof e=="object"&&"hoverPosition"in e&&!!e.hoverPosition}var Ns=(0,hm.makeStyles)()({highlight:{height:"100%",background:"rgba(255,255,0,0.2)",border:"1px solid rgba(50,50,0,0.2)",position:"absolute",zIndex:99,textAlign:"center",pointerEvents:"none",overflow:"hidden"}});var r1=(0,Ql.observer)(function({model:e}){let{hovered:t,views:r}=(0,Cm.getSession)(e);return r.some(o=>o.type==="MsaView")&&ks(t)?Sl.default.createElement(n1,{model:e,hovered:t}):null}),n1=(0,Ql.observer)(function({model:e,hovered:t}){let{classes:r}=Ns(),{offsetPx:n}=e,{coord:o,refName:i}=t.hoverPosition,s=e.bpToPx({refName:i,coord:o-1}),a=e.bpToPx({refName:i,coord:o});if(s&&a){let c=Math.max(Math.abs(a.offsetPx-s.offsetPx),4),l=Math.min(s.offsetPx,a.offsetPx)-n;return Sl.default.createElement("div",{className:r.highlight,style:{left:l,width:c}})}return null}),Em=r1;var bi=f(B()),Ml=f(ie()),vl=f(P());function Im(e){return!!e&&typeof e=="object"&&"hoverFeature"in e&&"hoverPosition"in e&&!!e.hoverPosition}function Ls({assemblyManager:e,assemblyNames:t,refName:r}){let n=t?.[0];return n?e.get(n)?.getCanonicalRefName(r)??r:r}function xm(e){return/AF-([A-Z0-9]+)-F\d+/.exec(e)?.[1]}var o1=(0,vl.observer)(function({model:t}){let{views:r,hovered:n}=(0,Ml.getSession)(t),i=r.find(s=>s.type==="MsaView")?.connectedHighlights;return!ks(n)&&i?.length?bi.default.createElement(i1,{model:t,highlights:Array.from(i)}):null}),i1=(0,vl.observer)(function({model:e,highlights:t}){let{classes:r}=Ns(),{assemblyManager:n}=(0,Ml.getSession)(e),{offsetPx:o}=e;return bi.default.createElement(bi.default.Fragment,null,t.map((i,s)=>{let a=Ls({assemblyManager:n,assemblyNames:e.assemblyNames,refName:i.refName}),c=e.bpToPx({refName:a,coord:i.start}),l=e.bpToPx({refName:a,coord:i.end});if(c&&l){let A=Math.max(Math.abs(l.offsetPx-c.offsetPx),4),u=Math.min(c.offsetPx,l.offsetPx)-o;return bi.default.createElement("div",{key:`${i.refName}-${i.start}-${i.end}-${s}`,className:r.highlight,style:{left:u,width:A}})}return null}))}),ym=o1;var s1=(0,wm.observer)(function({model:t}){return Bi.default.createElement(Bi.default.Fragment,null,Bi.default.createElement(ym,{model:t}),Bi.default.createElement(Em,{model:t}))}),bm=s1;function Tl(e){e.addToExtensionPoint("LinearGenomeView-TracksContainerComponent",(t,{model:r})=>{let{views:n}=(0,Sm.getSession)(r);return n.some(i=>i.type==="MsaView")?[...t,Bm.default.createElement(bm,{key:"highlight_protein_viewer_msaview",model:r})]:t})}var ag=f(_l());var Mm=f(po());function Dl(e){let t=e.getAdapterType("BgzipFastaAdapter");return(0,Mm.ConfigurationSchema)("BgzipFastaMsaAdapter",{msaRegex:{type:"string",defaultValue:"_"}},{baseConfiguration:t?.configSchema})}function zl(e){return e.addAdapterType(()=>new ag.AdapterType({name:"BgzipFastaMsaAdapter",configSchema:Dl(e),adapterMetadata:{hiddenFromGUI:!0},getAdapterClass:()=>Promise.resolve().then(()=>(sg(),ig)).then(t=>t.default)}))}var Ta=f(ie());W();var cg=f(L(),1),lg=(0,_.createSvgIcon)((0,cg.jsx)("path",{d:"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6z"}),"Add");var vt=f(B()),Fh=f(fe()),Rh=f(ie()),ko=f(N());var z=f(B()),Ti=f(fe()),aa=f(ie()),je=f(N()),Vg=f(P()),Yg=f(Me());function fg({session:e,newViewTitle:t,view:r,feature:n,msaFilehandle:o,treeFilehandle:i,querySeqName:s,data:a}){e.addView("MsaView",{type:"MsaView",displayName:t,connectedViewId:r.id,connectedFeature:n.toJSON(),msaFilehandle:o,treeFilehandle:i,querySeqName:s,data:a})}var $l=f(B()),dg=f(N());function m1({children:e,...t}){return $l.default.createElement("div",null,$l.default.createElement(dg.TextField,{...t},e))}var rt=m1;var mg=f(ie());function g1(e){let r=(e.get("subfeatures")??[]).filter(n=>(n.get("type")==="mRNA"||n.get("type")==="transcript")&&n.get("subfeatures")?.some(o=>o.get("type")==="CDS"));return r.length>0?r:[e]}function js(e){let t=(0,mg.sum)(e.get("subfeatures")?.filter(r=>r.get("type")?.toLowerCase()==="cds").map(r=>r.get("end")-r.get("start"))??[]);return{len:Math.floor(t/3),mod:t%3}}function kn(e){return e?.id()??""}function p1(e){if(!e)return[];let t=[e.id(),e.get("name"),e.get("id"),e.get("transcript_id")].filter(r=>!!r);return[...new Set(t)]}function Js(e,t){return p1(e).includes(t)}function Nn(e){return e===void 0?"":[e.get("name"),e.get("id")].filter(t=>!!t).join(" ")}function Tr(e){return e===void 0?"":[e.get("gene_name")??e.get("name"),e.get("id")?`(${e.get("id")})`:""].filter(t=>!!t).join(" ")}function gg(e){return g1(e).toSorted((r,n)=>js(n).len-js(r).len)}function Vs(e){return e.replaceAll("*","").replaceAll("&","")}function Ys(e){let t=[e.id(),e.get("id"),e.get("name"),e.get("gene_id"),e.get("gene_name")].filter(r=>!!r);return[...new Set(t)]}var Ar=f(B()),Io=f(N()),Cg=f(Me());var pg=f(B()),hg=f(Me());var h1=(0,hg.makeStyles)()({textAreaFont:{fontFamily:"Courier New"}});function Kl({value:e}){let{classes:t}=h1();return pg.default.createElement(rt,{variant:"outlined",multiline:!0,minRows:5,maxRows:10,fullWidth:!0,value:e,slotProps:{input:{readOnly:!0,classes:{input:t.textAreaFont}}}})}var C1=(0,Cg.makeStyles)()({flex:{display:"flex"},minWidth:{minWidth:300},centered:{alignContent:"center",marginLeft:20}});function ur({feature:e,options:t,selectedId:r,selectedTranscript:n,onTranscriptChange:o,proteinSequence:i,validIds:s}){let{classes:a}=C1(),[c,l]=(0,Ar.useState)(!1);return Ar.default.createElement(Ar.default.Fragment,null,Ar.default.createElement("div",{className:a.flex},Ar.default.createElement(Io.TextField,{variant:"outlined",label:`Choose isoform of ${Tr(e)}`,select:!0,className:a.minWidth,value:r,onChange:A=>{o(A.target.value)}},t.map(A=>{let u=s?s.some(p=>Js(A,p)):!0,{len:d,mod:m}=js(A);return Ar.default.createElement(Io.MenuItem,{value:kn(A),key:A.id(),disabled:!u},Nn(A)," (",d," aa)"," ",m?" (possible fragment)":"",s?u?" (has data)":" (no data)":"")})),Ar.default.createElement("div",{className:a.centered},Ar.default.createElement(Io.Button,{variant:"contained",color:"primary",onClick:()=>{l(!c)}},c?"Hide sequence":"Show sequence"))),c?Ar.default.createElement(Kl,{value:i?`>${Nn(n)}
|
|
69
|
-
${i}`:"Loading..."}):null)}var sa=f(B());var un=f(ie());function E1(e,t){return e.map(r=>t.slice(r.start,r.end)).join("")}function I1({cds:e,sequence:t,codonTable:r}){let n=E1(e,t),o="";for(let i=0;i<n.length;i+=3)o+=r[n.slice(i,i+3)]??"&";return o}function x1(e,t){return e.map(r=>({...r,start:t-r.end,end:t-r.start})).toSorted((r,n)=>r.start-n.start)}function Eg({feature:e,seq:t}){let{subfeatures:r,start:n,strand:o}=e.toJSON(),i=(0,un.dedupe)(r?.toSorted((s,a)=>s.start-a.start).map(s=>({...s,start:s.start-n,end:s.end-n})).filter(s=>s.type==="CDS")??[],s=>`${s.start}-${s.end}`);return I1({cds:o===-1?x1(i,t.length):i,sequence:o===-1?(0,un.revcom)(t):t,codonTable:(0,un.generateCodonTable)(un.defaultCodonTable)})}var Ug=f(ie());var qe=f(B(),1),dA=f(wg(),1);var nt=f(B(),1);var fn={};ze(fn,{ERROR_REVALIDATE_EVENT:()=>_1,FOCUS_EVENT:()=>bg,MUTATE_EVENT:()=>Sg,RECONNECT_EVENT:()=>Bg});var bg=0,Bg=1,Sg=2,_1=3;var Qg=Object.prototype.hasOwnProperty;function Ws(e,t){var r,n;if(e===t)return!0;if(e&&t&&(r=e.constructor)===t.constructor){if(r===Date)return e.getTime()===t.getTime();if(r===RegExp)return e.toString()===t.toString();if(r===Array){if((n=e.length)===t.length)for(;n--&&Ws(e[n],t[n]););return n===-1}if(!r||typeof e=="object"){n=0;for(r in e)if(Qg.call(e,r)&&++n&&!Qg.call(t,r)||!(r in t)||!Ws(e[r],t[r]))return!1;return Object.keys(t).length===n}}return e!==e&&t!==t}var fr=new WeakMap,dr=()=>{},Ue=dr(),yo=Object,J=e=>e===Ue,Lt=e=>typeof e=="function",mr=(e,t)=>({...e,...t}),ea=e=>Lt(e.then),Zl={},zs={},sA="undefined",wo=typeof window!=sA,Ks=typeof document!=sA,vg=wo&&"Deno"in window,Tg=()=>wo&&typeof window.requestAnimationFrame!=sA,ta=(e,t)=>{let r=fr.get(e);return[()=>!J(t)&&e.get(t)||Zl,n=>{if(!J(t)){let o=e.get(t);t in zs||(zs[t]=o),r[5](t,mr(o,n),o||Zl)}},r[6],()=>!J(t)&&t in zs?zs[t]:!J(t)&&e.get(t)||Zl]},rA=!0,D1=()=>rA,[nA,oA]=wo&&window.addEventListener?[window.addEventListener.bind(window),window.removeEventListener.bind(window)]:[dr,dr],k1=()=>{let e=Ks&&document.visibilityState;return J(e)||e!=="hidden"},N1=e=>(Ks&&document.addEventListener("visibilitychange",e),nA("focus",e),()=>{Ks&&document.removeEventListener("visibilitychange",e),oA("focus",e)}),L1=e=>{let t=()=>{rA=!0,e()},r=()=>{rA=!1};return nA("online",t),nA("offline",r),()=>{oA("online",t),oA("offline",r)}},_g={isOnline:D1,isVisible:k1},Dg={initFocus:N1,initReconnect:L1},ra=!nt.default.useId,dn=!wo||vg,aA=e=>Tg()?window.requestAnimationFrame(e):setTimeout(e,1),bo=dn?nt.useEffect:nt.useLayoutEffect,eA=typeof navigator<"u"&&navigator.connection,iA=!dn&&eA&&(["slow-2g","2g"].includes(eA.effectiveType)||eA.saveData),$s=new WeakMap,F1=e=>yo.prototype.toString.call(e),tA=(e,t)=>e===`[object ${t}]`,R1=0,Xs=e=>{let t=typeof e,r=F1(e),n=tA(r,"Date"),o=tA(r,"RegExp"),i=tA(r,"Object"),s,a;if(yo(e)===e&&!n&&!o){if(s=$s.get(e),s)return s;if(s=++R1+"~",$s.set(e,s),Array.isArray(e)){for(s="@",a=0;a<e.length;a++)s+=Xs(e[a])+",";$s.set(e,s)}if(i){s="#";let c=yo.keys(e).sort();for(;!J(a=c.pop());)J(e[a])||(s+=a+":"+Xs(e[a])+",");$s.set(e,s)}}else s=n?e.toJSON():t=="symbol"?e.toString():t=="string"?JSON.stringify(e):""+e;return s},vi=e=>{if(Lt(e))try{e=e()}catch{e=""}let t=e;return e=typeof e=="string"?e:(Array.isArray(e)?e.length:e)?Xs(e):"",[e,t]},P1=0,Mi=()=>++P1;async function na(...e){let[t,r,n,o]=e,i=mr({populateCache:!0,throwOnError:!0},typeof o=="boolean"?{revalidate:o}:o||{}),s=i.populateCache,a=i.rollbackOnError,c=i.optimisticData,l=d=>typeof a=="function"?a(d):a!==!1,A=i.throwOnError;if(Lt(r)){let d=r,m=[],p=t.keys();for(let C of p)!/^\$(inf|sub)\$/.test(C)&&d(t.get(C)._k)&&m.push(C);return Promise.all(m.map(u))}return u(r);async function u(d){let[m]=vi(d);if(!m)return;let[p,C]=ta(t,m),[x,I,h,y]=fr.get(t),w=()=>{let G=x[m];return(Lt(i.revalidate)?i.revalidate(p().data,d):i.revalidate!==!1)&&(delete h[m],delete y[m],G&&G[0])?G[0](2).then(()=>p().data):p().data};if(e.length<3)return w();let S=n,v,M=!1,R=Mi();I[m]=[R,0];let T=!J(c),V=p(),Q=V.data,F=V._c,q=J(F)?Q:F;if(T&&(c=Lt(c)?c(q,Q):c,C({data:c,_c:q})),Lt(S))try{S=S(q)}catch(G){v=G,M=!0}if(S&&ea(S))if(S=await S.catch(G=>{v=G,M=!0}),R!==I[m][0]){if(M)throw v;return S}else M&&T&&l(v)&&(s=!0,C({data:q,_c:Ue}));if(s&&!M)if(Lt(s)){let G=s(S,q);C({data:G,error:Ue,_c:Ue})}else C({data:S,error:Ue,_c:Ue});if(I[m][1]=Mi(),Promise.resolve(w()).then(()=>{C({_c:Ue})}),M){if(A)throw v;return}return S}}var Mg=(e,t)=>{for(let r in e)e[r][0]&&e[r][0](t)},cA=(e,t)=>{if(!fr.has(e)){let r=mr(Dg,t),n=Object.create(null),o=na.bind(Ue,e),i=dr,s=Object.create(null),a=(A,u)=>{let d=s[A]||[];return s[A]=d,d.push(u),()=>d.splice(d.indexOf(u),1)},c=(A,u,d)=>{e.set(A,u);let m=s[A];if(m)for(let p of m)p(u,d)},l=()=>{if(!fr.has(e)&&(fr.set(e,[n,Object.create(null),Object.create(null),Object.create(null),o,c,a]),!dn)){let A=r.initFocus(setTimeout.bind(Ue,Mg.bind(Ue,n,0))),u=r.initReconnect(setTimeout.bind(Ue,Mg.bind(Ue,n,1)));i=()=>{A&&A(),u&&u(),fr.delete(e)}}};return l(),[e,o,l,i]}return[e,fr.get(e)[4]]},O1=(e,t,r,n,o)=>{let i=r.errorRetryCount,s=o.retryCount,a=~~((Math.random()+.5)*(1<<(s<8?s:8)))*r.errorRetryInterval;!J(i)&&s>i||setTimeout(n,a,o)},kg=Ws,[oa,Ng]=cA(new Map),ia=mr({onLoadingSlow:dr,onSuccess:dr,onError:dr,onErrorRetry:O1,onDiscarded:dr,revalidateOnFocus:!0,revalidateOnReconnect:!0,revalidateIfStale:!0,shouldRetryOnError:!0,errorRetryInterval:iA?1e4:5e3,focusThrottleInterval:5*1e3,dedupingInterval:2*1e3,loadingTimeout:iA?5e3:3e3,compare:kg,isPaused:()=>!1,cache:oa,mutate:Ng,fallback:{}},_g),lA=(e,t)=>{let r=mr(e,t);if(t){let{use:n,fallback:o}=e,{use:i,fallback:s}=t;n&&i&&(r.use=n.concat(i)),o&&s&&(r.fallback=mr(o,s))}return r},Zs=(0,nt.createContext)({}),AA=e=>{let{value:t}=e,r=(0,nt.useContext)(Zs),n=Lt(t),o=(0,nt.useMemo)(()=>n?t(r):t,[n,r,t]),i=(0,nt.useMemo)(()=>n?o:lA(r,o),[n,r,o]),s=o&&o.provider,a=(0,nt.useRef)(Ue);s&&!a.current&&(a.current=cA(s(i.cache||oa),o));let c=a.current;return c&&(i.cache=c[0],i.mutate=c[1]),bo(()=>{if(c)return c[2]&&c[2](),c[3]},[]),(0,nt.createElement)(Zs.Provider,mr(e,{value:i}))};var Lg="$inf$";var Bo=f(B(),1);var Fg=wo&&window.__SWR_DEVTOOLS_USE__,G1=Fg?window.__SWR_DEVTOOLS_USE__:[],H1=()=>{Fg&&(window.__SWR_DEVTOOLS_REACT__=Bo.default)},U1=e=>Lt(e[1])?[e[0],e[1],e[2]||{}]:[e[0],null,(e[1]===null?e[2]:e[1])||{}],q1=()=>{let e=(0,Bo.useContext)(Zs);return(0,Bo.useMemo)(()=>mr(ia,e),[e])};var j1=e=>(t,r,n)=>e(t,r&&((...i)=>{let[s]=vi(t),[,,,a]=fr.get(oa);if(s.startsWith(Lg))return r(...i);let c=a[s];return J(c)?r(...i):(delete a[s],c)}),n),J1=G1.concat(j1),Rg=e=>function(...r){let n=q1(),[o,i,s]=U1(r),a=lA(n,s),c=e,{use:l}=a,A=(l||[]).concat(J1);for(let u=A.length;u--;)c=A[u](c);return c(o,i||a.fetcher||null,a)},Pg=(e,t,r)=>{let n=t[e]||(t[e]=[]);return n.push(r),()=>{let o=n.indexOf(r);o>=0&&(n[o]=n[n.length-1],n.pop())}};H1();var V1=()=>{},dF=V1();var uA=qe.default.use||(e=>{switch(e.status){case"pending":throw e;case"fulfilled":return e.value;case"rejected":throw e.reason;default:throw e.status="pending",e.then(t=>{e.status="fulfilled",e.value=t},t=>{e.status="rejected",e.reason=t}),e}}),fA={dedupe:!0},Og=Promise.resolve(Ue),Y1=()=>dr,W1=(e,t,r)=>{let{cache:n,compare:o,suspense:i,fallbackData:s,revalidateOnMount:a,revalidateIfStale:c,refreshInterval:l,refreshWhenHidden:A,refreshWhenOffline:u,keepPreviousData:d,strictServerPrefetchWarning:m}=r,[p,C,x,I]=fr.get(n),[h,y]=vi(e),w=(0,qe.useRef)(!1),S=(0,qe.useRef)(!1),v=(0,qe.useRef)(h),M=(0,qe.useRef)(t),R=(0,qe.useRef)(r),T=()=>R.current,V=()=>T().isVisible()&&T().isOnline(),[Q,F,q,G]=ta(n,h),ye=(0,qe.useRef)({}).current,Br=J(s)?J(r.fallback)?Ue:r.fallback[h]:s,Ur=(ee,oe)=>{for(let le in ye){let Ae=le;if(Ae==="data"){if(!o(ee[Ae],oe[Ae])&&(!J(ee[Ae])||!o(Sr,oe[Ae])))return!1}else if(oe[Ae]!==ee[Ae])return!1}return!0},cn=!w.current,Ss=(0,qe.useMemo)(()=>{let ee=Q(),oe=G(),le=Qe=>{let mt=mr(Qe);return delete mt._k,(()=>{if(!h||!t||T().isPaused())return!1;if(cn&&!J(a))return a;let Yt=J(Br)?mt.data:Br;return i?J(Yt)||c:J(Yt)||c})()?{isValidating:!0,isLoading:!0,...mt}:mt},Ae=le(ee),Dt=ee===oe?Ae:le(oe),dt=Ae;return[()=>{let Qe=le(Q());return Ur(Qe,dt)?(dt.data=Qe.data,dt.isLoading=Qe.isLoading,dt.isValidating=Qe.isValidating,dt.error=Qe.error,dt):(dt=Qe,Qe)},()=>Dt]},[n,h]),qr=(0,dA.useSyncExternalStore)((0,qe.useCallback)(ee=>q(h,(oe,le)=>{Ur(le,oe)||ee()}),[n,h]),Ss[0],Ss[1]),Fe=p[h]&&p[h].length>0,jr=qr.data,ge=J(jr)?Br&&ea(Br)?uA(Br):Br:jr,Tn=qr.error,pe=(0,qe.useRef)(ge),Sr=d?J(jr)?J(pe.current)?ge:pe.current:jr:ge,Vt=h&&J(ge),Qt=(0,qe.useRef)(null);!dn&&(0,dA.useSyncExternalStore)(Y1,()=>(Qt.current=!1,Qt),()=>(Qt.current=!0,Qt));let Qs=Qt.current;m&&Qs&&!i&&Vt&&console.warn(`Missing pre-initiated data for serialized key "${h}" during server-side rendering. Data fetching should be initiated on the server and provided to SWR via fallback data. You can set "strictServerPrefetchWarning: false" to disable this warning.`);let uo=!h||!t||T().isPaused()||Fe&&!J(Tn)?!1:cn&&!J(a)?a:i?J(ge)?!1:c:J(ge)||c,yi=cn&&uo,Ms=J(qr.isValidating)?yi:qr.isValidating,Jr=J(qr.isLoading)?yi:qr.isLoading,sr=(0,qe.useCallback)(async ee=>{let oe=M.current;if(!h||!oe||S.current||T().isPaused())return!1;let le,Ae,Dt=!0,dt=ee||{},Qe=!x[h]||!dt.dedupe,mt=()=>ra?!S.current&&h===v.current&&w.current:h===v.current,ar={isValidating:!1,isLoading:!1},Yt=()=>{F(ar)},kt=()=>{let gt=x[h];gt&>[1]===Ae&&delete x[h]},fo={isValidating:!0};J(Q().data)&&(fo.isLoading=!0);try{if(Qe&&(F(fo),r.loadingTimeout&&J(Q().data)&&setTimeout(()=>{Dt&&mt()&&T().onLoadingSlow(h,r)},r.loadingTimeout),x[h]=[oe(y),Mi()]),[le,Ae]=x[h],le=await le,Qe&&setTimeout(kt,r.dedupingInterval),!x[h]||x[h][1]!==Ae)return Qe&&mt()&&T().onDiscarded(h),!1;ar.error=Ue;let gt=C[h];if(!J(gt)&&(Ae<=gt[0]||Ae<=gt[1]||gt[1]===0))return Yt(),Qe&&mt()&&T().onDiscarded(h),!1;let Wt=Q().data;ar.data=o(Wt,le)?Wt:le,Qe&&mt()&&T().onSuccess(le,h,r)}catch(gt){kt();let Wt=T(),{shouldRetryOnError:_n}=Wt;Wt.isPaused()||(ar.error=gt,Qe&&mt()&&(Wt.onError(gt,h,Wt),(_n===!0||Lt(_n)&&_n(gt))&&(!T().revalidateOnFocus||!T().revalidateOnReconnect||V())&&Wt.onErrorRetry(gt,h,Wt,Ts=>{let ln=p[h];ln&&ln[0]&&ln[0](fn.ERROR_REVALIDATE_EVENT,Ts)},{retryCount:(dt.retryCount||0)+1,dedupe:!0})))}return Dt=!1,Yt(),!0},[h,n]),Qr=(0,qe.useCallback)((...ee)=>na(n,v.current,...ee),[]);if(bo(()=>{M.current=t,R.current=r,J(jr)||(pe.current=jr)}),bo(()=>{if(!h)return;let ee=sr.bind(Ue,fA),oe=0;T().revalidateOnFocus&&(oe=Date.now()+T().focusThrottleInterval);let Ae=Pg(h,p,(Dt,dt={})=>{if(Dt==fn.FOCUS_EVENT){let Qe=Date.now();T().revalidateOnFocus&&Qe>oe&&V()&&(oe=Qe+T().focusThrottleInterval,ee())}else if(Dt==fn.RECONNECT_EVENT)T().revalidateOnReconnect&&V()&&ee();else{if(Dt==fn.MUTATE_EVENT)return sr();if(Dt==fn.ERROR_REVALIDATE_EVENT)return sr(dt)}});return S.current=!1,v.current=h,w.current=!0,F({_k:y}),uo&&(x[h]||(J(ge)||dn?ee():aA(ee))),()=>{S.current=!0,Ae()}},[h]),bo(()=>{let ee;function oe(){let Ae=Lt(l)?l(Q().data):l;Ae&&ee!==-1&&(ee=setTimeout(le,Ae))}function le(){!Q().error&&(A||T().isVisible())&&(u||T().isOnline())?sr(fA).then(oe):oe()}return oe(),()=>{ee&&(clearTimeout(ee),ee=-1)}},[l,A,u,h]),(0,qe.useDebugValue)(Sr),i){if(!ra&&dn&&Vt)throw new Error("Fallback data is required when using Suspense in SSR.");Vt&&(M.current=t,R.current=r,S.current=!1);let ee=I[h],oe=!J(ee)&&Vt?Qr(ee):Og;if(uA(oe),!J(Tn)&&Vt)throw Tn;let le=Vt?sr(fA):Og;!J(Sr)&&Vt&&(le.status="fulfilled",le.value=!0),uA(le)}return{mutate:Qr,get data(){return ye.data=!0,Sr},get error(){return ye.error=!0,Tn},get isValidating(){return ye.isValidating=!0,Ms},get isLoading(){return ye.isLoading=!0,Jr}}},mF=yo.defineProperty(AA,"defaultValue",{value:ia}),Ln=Rg(W1);var Gg=f(po());async function Hg({start:e,end:t,refName:r,session:n,assemblyName:o}){let{assemblyManager:i,rpcManager:s}=n,a=await i.waitForAssembly(o);if(!a)throw new Error("assembly not found");let c="getSequence";return(await s.call(c,"CoreGetFeatures",{adapterConfig:(0,Gg.getConf)(a,["sequence","adapter"]),sessionId:c,regions:[{start:e,end:t,refName:a.getCanonicalRefName(r),assemblyName:o}]}))[0]?.get("seq")??""}async function z1({feature:e,assemblyName:t,view:r}){let n=(0,Ug.getSession)(r),{start:o,end:i,refName:s}=e.toJSON();return{seq:await Hg({start:o,end:i,refName:s,assemblyName:t,session:n})}}function qg({view:e,feature:t}){let r=e?.assemblyNames?.[0],{data:n,error:o}=Ln(t&&r&&e?[t.id(),r,"feature-sequence"]:null,()=>z1({feature:t,assemblyName:r,view:e}),{revalidateOnFocus:!1,revalidateOnReconnect:!1,revalidateIfStale:!1});return{sequence:n,error:o}}function jg({view:e,feature:t}){let{sequence:r,error:n}=qg({view:e,feature:t});return{proteinSequence:r&&t?Eg({seq:r.seq,feature:t}):"",sequence:r,error:n}}function Jg(e,t){return t.some(r=>Js(e,r))}function $1(e,t,r){if(!r||r.length===0)return;let n=t.find(i=>kn(i)===e);if(!n||Jg(n,r))return;let o=t.find(i=>Jg(i,r));return o?kn(o):void 0}function _r({feature:e,view:t,validIds:r}){let n=(0,sa.useMemo)(()=>gg(e),[e]),[o,i]=(0,sa.useState)(()=>kn(n[0])),s=$1(o,n,r)||o,a=n.find(A=>kn(A)===s),{proteinSequence:c,error:l}=jg({view:t,feature:a});return{options:n,selectedId:s,setSelectedId:i,selectedTranscript:a,proteinSequence:c,error:l,validIds:r}}var K1=(0,Yg.makeStyles)()({dialogContent:{width:"80em"},textAreaFont:{fontFamily:"Courier New"},inputContainer:{marginBottom:30},fileContainer:{maxWidth:500},msaInput:{marginBottom:20},queryNameInput:{marginTop:20},warningAlert:{marginTop:10}}),X1=(0,Vg.observer)(function({model:t,feature:r,handleClose:n}){let o=(0,aa.getSession)(t),i=(0,aa.getContainingView)(t),{classes:s}=K1(),[a,c]=(0,z.useState)(),[l,A]=(0,z.useState)("file"),[u,d]=(0,z.useState)(""),[m,p]=(0,z.useState)(""),[C,x]=(0,z.useState)(),[I,h]=(0,z.useState)(),[y,w]=(0,z.useState)(""),{options:S,selectedId:v,setSelectedId:M,selectedTranscript:R,proteinSequence:T,error:V}=_r({feature:r,view:i}),Q=a??V;return z.default.createElement(z.default.Fragment,null,z.default.createElement(je.DialogContent,{className:s.dialogContent},Q?z.default.createElement(Ti.ErrorMessage,{error:Q}):null,z.default.createElement(je.FormControl,{component:"fieldset"},z.default.createElement(je.RadioGroup,{row:!0,value:l,onChange:F=>{A(F.target.value)}},z.default.createElement(je.FormControlLabel,{value:"file",control:z.default.createElement(je.Radio,null),label:"Open files"}),z.default.createElement(je.FormControlLabel,{value:"text",control:z.default.createElement(je.Radio,null),label:"Paste text"}))),z.default.createElement("div",{className:s.inputContainer},l==="file"?z.default.createElement("div",{className:s.fileContainer},z.default.createElement(Ti.FileSelector,{name:"MSA File .aln (Clustal), .fa/.mfa (aligned FASTA), .stock (Stockholm), etc)",inline:!0,location:C,setLocation:x}),z.default.createElement(Ti.FileSelector,{name:"Tree file .nh (Newick) or .asn (NCBI COBALT ASN.1)",inline:!0,location:I,setLocation:h})):z.default.createElement(z.default.Fragment,null,z.default.createElement(rt,{variant:"outlined",name:"MSA",multiline:!0,minRows:5,className:s.msaInput,maxRows:10,fullWidth:!0,placeholder:"Paste MSA here",value:u,onChange:F=>{d(F.target.value)}}),z.default.createElement(rt,{variant:"outlined",name:"Tree",multiline:!0,minRows:5,maxRows:10,fullWidth:!0,placeholder:"Paste newick tree (optional)",value:m,onChange:F=>{p(F.target.value)}}))),z.default.createElement(ur,{feature:r,options:S,selectedId:v,selectedTranscript:R,onTranscriptChange:M,proteinSequence:T}),z.default.createElement(rt,{variant:"outlined",name:"MSA row name",fullWidth:!0,required:!0,className:s.queryNameInput,placeholder:"Row name in MSA that corresponds to the selected transcript",helperText:"Required: Specify the name of the row in your MSA that should be aligned with the selected transcript",value:y,onChange:F=>{w(F.target.value)}}),y.trim()?null:z.default.createElement(je.Alert,{severity:"warning",className:s.warningAlert},"Without specifying the MSA row name, clicking on the MSA will not navigate to the corresponding genome position, and hovering highlights will not work.")),z.default.createElement(je.DialogActions,null,z.default.createElement(je.Button,{color:"primary",variant:"contained",disabled:!R||l==="file"&&!C||l==="text"&&!u.trim(),onClick:()=>{try{c(void 0),fg({session:o,newViewTitle:Tr(R),view:i,feature:R,querySeqName:y.trim(),...l==="file"?{msaFilehandle:C,treeFilehandle:I}:{data:{msa:u,tree:m}}}),n()}catch(F){console.error(F),c(F)}}},"Submit"),z.default.createElement(je.Button,{color:"secondary",variant:"contained",onClick:()=>{n()}},"Cancel")))}),Wg=X1;var hr=f(B()),Fp=f(ie());mA();var Rp=f(N()),Pp=f(Me());var Z=f(B()),Ep=f(fe()),Ip=f(ie());gA();var _e=f(N()),xp=f(P()),yp=f(Me());var $e=f(B()),fp=f(fe()),dp=f(ie());W();var Kg=f(L(),1),Xg=(0,_.createSvgIcon)((0,Kg.jsx)("path",{d:"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6zM19 4h-3.5l-1-1h-5l-1 1H5v2h14z"}),"Delete");var lt=f(N()),mp=f(P()),gp=f(Me());var pA=f(ie());function Aa({newViewTitle:e,view:t,feature:r,blastParams:n}){(0,pA.getSession)(t).addView("MsaView",{type:"MsaView",displayName:e,connectedViewId:t.id,connectedFeature:r.toJSON(),drawNodeBubbles:!0,colWidth:10,rowHeight:12,blastParams:n})}function Zg({newViewTitle:e,view:t,cached:r}){(0,pA.getSession)(t).addView("MsaView",{type:"MsaView",displayName:e,connectedViewId:t.id,drawNodeBubbles:!0,colWidth:10,rowHeight:12,data:{msa:r.msa,tree:r.tree,treeMetadata:r.treeMetadata}})}_i();var A2="jbrowse-msaview-blast-cache",mn="blast-results",u2=2;async function fa(){return Rn(A2,u2,{upgrade(e,t){t<2&&e.objectStoreNames.contains(mn)&&e.deleteObjectStore(mn),e.objectStoreNames.contains(mn)||e.createObjectStore(mn,{keyPath:"id"})}})}function f2(e,t,r,n){return n?`${t}:${r}:${n}:${e}`:`${t}:${r}:${e}`}async function ap({proteinSequence:e,blastDatabase:t,blastProgram:r,msaAlgorithm:n,msa:o,tree:i,treeMetadata:s,rid:a,geneId:c,transcriptId:l,transcriptName:A,geneName:u}){let d=await fa(),p={id:f2(e,t,r,l),proteinSequence:e,blastDatabase:t,blastProgram:r,msaAlgorithm:n,msa:o,tree:i,treeMetadata:s,rid:a,timestamp:Date.now(),geneId:c,transcriptId:l,transcriptName:A,geneName:u};return await d.put(mn,p),p}async function cp(){return(await(await fa()).getAll(mn)).toSorted((r,n)=>n.timestamp-r.timestamp)}async function lp(e){await(await fa()).delete(mn,e)}async function Ap(){await(await fa()).clear(mn)}var d2={revalidateOnFocus:!1,revalidateOnReconnect:!1,revalidateIfStale:!1,refreshWhenHidden:!1,refreshWhenOffline:!1,shouldRetryOnError:!1};function da(e){let{data:t,error:r,mutate:n}=Ln(`cached-blast-${e.join(",")}`,async()=>(await cp()).filter(a=>a.geneId&&e.includes(a.geneId)),d2);return{results:t??[],error:r,isLoading:!t&&!r,handleDelete:async s=>{await lp(s),await n(a=>a?.filter(c=>c.id!==s)??[],!1)},handleClearAll:async()=>{await Ap(),await n([],!1)}}}var m2=(0,gp.makeStyles)()({header:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:8},resultList:{maxHeight:300,overflow:"auto"}});function up(e){let t=[];return e.geneName&&t.push(e.geneName),e.transcriptName&&e.transcriptName!==e.geneName&&t.push(e.transcriptName),t.length===0&&t.push(e.geneId??e.transcriptId??"Unknown"),t.join(" - ")}var g2=(0,mp.observer)(function({model:e,handleClose:t,feature:r}){let{classes:n}=m2(),o=(0,dp.getContainingView)(e),[i,s]=(0,$e.useState)(),a=(0,$e.useMemo)(()=>Ys(r),[r]),{results:c,error:l,isLoading:A,handleDelete:u,handleClearAll:d}=da(a),m=C=>{Zg({view:o,cached:C,newViewTitle:`BLAST - ${up(C)}`}),t()},p=l??i;return p?$e.default.createElement(fp.ErrorMessage,{error:p}):A?$e.default.createElement(lt.Typography,null,"Loading cached results..."):c.length===0?$e.default.createElement(lt.Typography,{color:"textSecondary"},"No cached BLAST results found for this gene. Run a BLAST query to cache results."):$e.default.createElement("div",null,$e.default.createElement("div",{className:n.header},$e.default.createElement(lt.Typography,{variant:"subtitle1"},"Cached BLAST Results (",c.length,")"),$e.default.createElement(lt.Button,{size:"small",color:"error",onClick:async()=>{try{s(void 0),await d()}catch(C){s(C)}}},"Clear All")),$e.default.createElement(lt.List,{dense:!0,className:n.resultList},c.map(C=>$e.default.createElement(lt.ListItem,{key:C.id,disablePadding:!0,secondaryAction:$e.default.createElement(lt.IconButton,{edge:"end",size:"small",onClick:async x=>{x.stopPropagation();try{s(void 0),await u(C.id)}catch(I){s(I)}}},$e.default.createElement(Xg,{fontSize:"small"}))},$e.default.createElement(lt.ListItemButton,{onClick:()=>{m(C)}},$e.default.createElement(lt.ListItemText,{primary:`${up(C)} - ${C.blastDatabase}/${C.blastProgram} (${C.msaAlgorithm})`,secondary:`${new Date(C.timestamp).toLocaleString()} - Seq: ${C.proteinSequence.slice(0,30)}...`}))))))}),pp=g2;var ma="https://blast.ncbi.nlm.nih.gov/Blast.cgi",ga=["clustalo","muscle","kalign","mafft"],hp=["nr","nr_cluster_seq"],Cp=["blastp","quick-blastp"];var p2=(0,yp.makeStyles)()({dialogContent:{width:"80em"},selectField:{width:150},databaseFieldContainer:{display:"flex"},clusterSeqMessage:{marginLeft:4,alignContent:"center"},cachedResultsAccordion:{marginTop:20},infoText:{marginTop:20}}),h2=(0,xp.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=p2(),s=(0,Ip.getContainingView)(r),[a,c]=(0,Z.useState)(),[l,A]=(0,Z.useState)("nr"),[u,d]=(0,Z.useState)("clustalo"),[m,p]=(0,Z.useState)("quick-blastp"),C=(0,Z.useMemo)(()=>Ys(t),[t]),{results:x,error:I}=da(C),{options:h,selectedId:y,setSelectedId:w,selectedTranscript:S,proteinSequence:v,error:M}=_r({feature:t,view:s}),R=M??a??I;return Z.default.createElement(Z.default.Fragment,null,Z.default.createElement(_e.DialogContent,{className:i.dialogContent},n,R?Z.default.createElement(Ep.ErrorMessage,{error:R}):null,Z.default.createElement(rt,{variant:"outlined",label:"BLAST database",className:i.selectField,select:!0,value:l,onChange:T=>{let V=T.target.value;A(V),V==="nr_cluster_seq"&&p("blastp")}},hp.map(T=>Z.default.createElement(_e.MenuItem,{value:T,key:T},T))),Z.default.createElement(rt,{variant:"outlined",label:"MSA Algorithm",className:i.selectField,select:!0,value:u,onChange:T=>{d(T.target.value)}},ga.map(T=>Z.default.createElement(_e.MenuItem,{value:T,key:T},T))),Z.default.createElement("div",{className:i.databaseFieldContainer},Z.default.createElement(rt,{variant:"outlined",label:"BLAST program",disabled:l==="nr_cluster_seq",className:i.selectField,select:!0,value:m,onChange:T=>{p(T.target.value)}},Cp.map(T=>Z.default.createElement(_e.MenuItem,{value:T,key:T},T))),l==="nr_cluster_seq"?Z.default.createElement(_e.Typography,{variant:"subtitle2",className:i.clusterSeqMessage},"Can only use blastp on nr_cluster_seq"):null),Z.default.createElement(ur,{feature:t,options:h,selectedId:y,selectedTranscript:S,onTranscriptChange:w,proteinSequence:v}),Z.default.createElement(_e.Typography,{className:i.infoText},"This panel will automatically submit a query to NCBI. Using blastp can take 10+ minutes to run, quick-blastp is generally a lot faster but is not available for the clustered database. After completion, all the hits will be run through a multiple sequence alignment. Note: we are not able to currently run NCBI COBALT automatically on the BLAST results, even though that is the method NCBI uses on their website. If you need a COBALT alignment, please use the manual approach of submitting BLAST yourself and downloading the resulting files"),x.length>0?Z.default.createElement(_e.Accordion,{className:i.cachedResultsAccordion},Z.default.createElement(_e.AccordionSummary,{expandIcon:Z.default.createElement(la,null)},Z.default.createElement(_e.Typography,null,"Previous BLAST Results")),Z.default.createElement(_e.AccordionDetails,null,Z.default.createElement(pp,{model:r,handleClose:e,feature:t}))):null),Z.default.createElement(_e.DialogActions,null,Z.default.createElement(_e.Button,{color:"primary",variant:"contained",onClick:()=>{try{if(!S)return;c(void 0),Aa({feature:S,view:s,newViewTitle:`BLAST - ${Tr(t)} - ${Nn(S)}`,blastParams:{baseUrl:o,blastProgram:m,blastDatabase:l,msaAlgorithm:u,selectedTranscript:S,proteinSequence:v}}),e()}catch(T){console.error(T),c(T)}},disabled:!v},"Submit"),Z.default.createElement(_e.Button,{color:"secondary",variant:"contained",onClick:()=>{e()}},"Cancel")))}),wp=h2;var gr=f(B()),Sp=f(fe()),Ca=f(ie()),gn=f(N()),Qp=f(P()),Mp=f(Me());ha();var C2=(0,Mp.makeStyles)()({dialogContent:{width:"80em"},textAreaFont:{fontFamily:"Courier New"},ncbiLink:{wordBreak:"break-all",margin:30,maxWidth:600},infoText:{marginTop:20}}),E2=(0,Qp.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=C2(),s=(0,Ca.getContainingView)(r),{options:a,selectedId:c,setSelectedId:l,selectedTranscript:A,proteinSequence:u,error:d}=_r({feature:t,view:s}),m=Vs(u),p=`${o}?PAGE_TYPE=BlastSearch&PAGE=Proteins&PROGRAM=blastp&QUERY=${m}`,C=`${o}?PAGE_TYPE=BlastSearch&PAGE=Proteins&PROGRAM=blastp&QUERY=${(0,Ca.shorten2)(m,10)}`;return gr.default.createElement(gr.default.Fragment,null,gr.default.createElement(gn.DialogContent,{className:i.dialogContent},n,d?gr.default.createElement(Sp.ErrorMessage,{error:d}):null,gr.default.createElement(ur,{feature:t,options:a,selectedId:c,selectedTranscript:A,onTranscriptChange:l,proteinSequence:u}),u?gr.default.createElement("div",{className:i.ncbiLink},"Link to NCBI BLAST: ",gr.default.createElement(Pn,{href:p},C)):null,gr.default.createElement(gn.Typography,{className:i.infoText},`Click the link above and run your BLAST query, and once you have results, click "Multiple Alignment" at the top of the results page to be redirected to COBALT, NCBI's multiple sequence aligner. Once COBALT completes, you can download an MSA (.aln file) and optionally a Newick tree (.nh) and paste the results into JBrowse`)),gr.default.createElement(gn.DialogActions,null,gr.default.createElement(gn.Button,{color:"primary",variant:"contained",onClick:()=>{e()}},"Close")))}),vp=E2;var Yr=f(B()),$t=f(N());function SA({lookupMethod:e,setLookupMethod:t}){return Yr.default.createElement($t.FormControl,{component:"fieldset"},Yr.default.createElement($t.RadioGroup,{row:!0,value:e,onChange:r=>{t(r.target.value)}},Yr.default.createElement($t.FormControlLabel,{value:"automatic",control:Yr.default.createElement($t.Radio,null),label:"Automatic"}),Yr.default.createElement($t.FormControlLabel,{value:"rid",control:Yr.default.createElement($t.Radio,null),label:"Load from RID"}),Yr.default.createElement($t.FormControlLabel,{value:"manual",control:Yr.default.createElement($t.Radio,null),label:"Manual"})))}var Pe=f(B()),Tp=f(fe()),_p=f(ie()),Ft=f(N()),Dp=f(P()),kp=f(Me());ha();var I2=(0,kp.makeStyles)()({dialogContent:{width:"80em"},marginBottom:{marginBottom:16},ridField:{width:150},infoText:{marginTop:20}}),x2=(0,Dp.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=I2(),s=(0,_p.getContainingView)(r),[a,c]=(0,Pe.useState)(),[l,A]=(0,Pe.useState)(""),[u,d]=(0,Pe.useState)("clustalo"),{options:m,selectedId:p,setSelectedId:C,selectedTranscript:x,proteinSequence:I,error:h}=_r({feature:t,view:s}),y=h??a,w=l.trim();return Pe.default.createElement(Pe.default.Fragment,null,Pe.default.createElement(Ft.DialogContent,{className:i.dialogContent},n,y?Pe.default.createElement(Tp.ErrorMessage,{error:y}):null,Pe.default.createElement(Ft.Typography,{variant:"body2",className:i.marginBottom},"Enter the RID (Request ID) from a previously submitted NCBI BLAST query. You can find the RID in the BLAST results page URL or at the top of the results page. RIDs are typically valid for 24-36 hours after submission."),Pe.default.createElement(rt,{variant:"outlined",label:"BLAST RID",placeholder:"e.g., ABC12345",fullWidth:!0,className:i.marginBottom,value:l,onChange:S=>{A(S.target.value)}}),w?Pe.default.createElement(Ft.Typography,{variant:"body2",className:i.marginBottom},Pe.default.createElement(Pn,{href:`${o}?CMD=Get&RID=${w}`},"View BLAST results on NCBI")):null,Pe.default.createElement(rt,{variant:"outlined",label:"MSA Algorithm",className:i.ridField,select:!0,value:u,onChange:S=>{d(S.target.value)}},ga.map(S=>Pe.default.createElement(Ft.MenuItem,{value:S,key:S},S))),Pe.default.createElement(ur,{feature:t,options:m,selectedId:p,selectedTranscript:x,onTranscriptChange:C,proteinSequence:I}),Pe.default.createElement(Ft.Typography,{className:i.infoText},"This will fetch the BLAST results for the provided RID and run them through a multiple sequence alignment. The protein sequence from the selected transcript will be added as the query sequence in the MSA.")),Pe.default.createElement(Ft.DialogActions,null,Pe.default.createElement(Ft.Button,{color:"primary",variant:"contained",onClick:()=>{try{if(!x||!w)return;c(void 0),Aa({feature:x,view:s,newViewTitle:`BLAST - ${Tr(t)} - ${Nn(x)}`,blastParams:{baseUrl:o,blastProgram:"blastp",blastDatabase:"nr",msaAlgorithm:u,selectedTranscript:x,proteinSequence:I,rid:w}}),e()}catch(S){console.error(S),c(S)}},disabled:!I||!w},"Submit"),Pe.default.createElement(Ft.Button,{color:"secondary",variant:"contained",onClick:()=>{e()}},"Cancel")))}),Np=x2;var pr=f(B()),Kt=f(N()),Lp=f(Me());var y2=(0,Lp.makeStyles)()({urlField:{minWidth:300}});function QA({handleClose:e,baseUrl:t}){let{classes:r}=y2(),[n,o]=(0,pr.useState)(t);return pr.default.createElement(Kt.Dialog,{open:!0,maxWidth:"lg",onClose:()=>{e()}},pr.default.createElement(Kt.DialogTitle,null,"BLAST Settings"),pr.default.createElement(Kt.DialogContent,null,pr.default.createElement(rt,{autoFocus:!0,margin:"dense",label:"BLAST Base URL",fullWidth:!0,variant:"outlined",value:n,className:r.urlField,onChange:i=>{o(i.target.value)}}),pr.default.createElement(Kt.Button,{variant:"contained",onClick:()=>{o(ma)}},"Reset")),pr.default.createElement(Kt.DialogActions,null,pr.default.createElement(Kt.Button,{variant:"contained",color:"secondary",onClick:()=>{e()}},"Cancel"),pr.default.createElement(Kt.Button,{color:"primary",variant:"contained",onClick:()=>{e(n)}},"Save")))}var w2=(0,Pp.makeStyles)()({settingsButton:{float:"right"}}),b2={automatic:wp,rid:Np,manual:vp};function MA({handleClose:e,model:t,feature:r}){let[n,o]=(0,hr.useState)("automatic"),[i,s]=(0,Fp.useLocalStorage)("msa-blastRootUrl",ma),[a,c]=(0,hr.useState)(!1),{classes:l}=w2(),A=b2[n];return hr.default.createElement(hr.default.Fragment,null,hr.default.createElement(Rp.IconButton,{className:l.settingsButton,size:"small",onClick:()=>{c(!0)}},hr.default.createElement(ca,null)),hr.default.createElement(A,{model:t,feature:r,handleClose:e,baseUrl:i},hr.default.createElement(SA,{lookupMethod:n,setLookupMethod:o})),a?hr.default.createElement(QA,{baseUrl:i,handleClose:u=>{u&&s(u),c(!1)}}):null)}var Je=f(B()),Gn=f(fe()),Do=f(ie()),$r=f(N()),kh=f(P());var Nh=f(Me());var vA={revalidateOnFocus:!1,revalidateOnReconnect:!1,revalidateIfStale:!1,refreshWhenHidden:!1,refreshWhenOffline:!1,shouldRetryOnError:!1};pn();function YA(e,t="",r=5e3){let n=[e];for(;n.length;){let o=n.pop();for(let[i,s]of Object.entries(o)){if(t.length>r)return jA(t);typeof s=="object"&&s!==null?n.push(s):i==="locationType"&&s==="FileHandleLocation"?t+=`${i}-BlobLocation`:i==="handleId"?t+=`blobId-fh-blob-${s}`:t+=`${i}-${s}`}}return`adp-${jA(t)}`}function Qh(e={}){return e.type&&e.adapterId?`${e.type}-${e.adapterId}`:`${YA(e)}`}var Mh={};async function W2(e,t,r){let n=r?.type;if(!n)throw new Error(`could not determine adapter type from adapter config snapshot ${JSON.stringify(r)}`);let o=e.getAdapterType(n);if(!o)throw new Error(`unknown data adapter type ${n}`);let i=o.configSchema.create(r,{pluginManager:e}),s=Ma.bind(null,e,t),a=await o.getAdapterClass();return{dataAdapter:new a(i,s,e),sessionIds:new Set([t])}}async function Ma(e,t,r){let n=Qh(r);Mh[n]??=W2(e,t,r);let o=await Mh[n];return o.sessionIds.add(t),o}async function vh({config:e,pluginManager:t}){return(await Ma(t,"msa",e)).dataAdapter.getMSAList()}async function Th({config:e,pluginManager:t,msaId:r}){return(await Ma(t,"msa",e)).dataAdapter.getMSA(r)}function _h({session:e,newViewTitle:t,view:r,feature:n,data:o,querySeqName:i}){e.addView("MsaView",{type:"MsaView",displayName:t,treeAreaWidth:200,querySeqName:i,treeWidth:100,drawNodeBubbles:!1,labelsAlignRight:!0,showBranchLen:!1,colWidth:10,rowHeight:12,colorSchemeName:"percent_identity_dynamic",data:o,connectedViewId:r.id,connectedFeature:n.toJSON()})}var Dh=f(po());function va(e){return(0,Dh.readConfObject)(e,["msa","datasets"])}var z2=(0,Nh.makeStyles)()({dialogContent:{width:"80em"},selectedContainer:{marginTop:50}}),$2=(0,kh.observer)(function({model:e,feature:t,handleClose:r}){let n=(0,Do.getSession)(e),o=(0,Do.getContainingView)(e),{classes:i}=z2(),{pluginManager:s}=(0,Do.getEnv)(e),{assemblyNames:a}=o,[c,l]=(0,Je.useState)(),A=va(n.jbrowse),[u,d]=(0,Je.useState)(A?.[0]?.datasetId),m=A?.find(Q=>Q.datasetId===u),{data:p,isLoading:C,error:x}=Ln(m?`${m.datasetId}-msa-list`:null,()=>vh({config:m.adapter,pluginManager:s}),vA),{options:I,selectedId:h,setSelectedId:y,selectedTranscript:w,proteinSequence:S,error:v}=_r({feature:t,view:o,validIds:p}),{data:M,isLoading:R,error:T}=Ln(h&&m&&p?`${m.datasetId}-${h}-${p.length}-msa`:null,()=>Th({msaId:h,config:m.adapter,pluginManager:s}),vA),V=x??T??v??c;return Je.default.createElement(Je.default.Fragment,null,Je.default.createElement($r.DialogContent,{className:i.dialogContent},V?Je.default.createElement(Gn.ErrorMessage,{error:V}):null,Je.default.createElement(rt,{select:!0,label:"Select MSA dataset",value:u,onChange:Q=>{d(Q.target.value)}},A?.map(Q=>Je.default.createElement($r.MenuItem,{key:Q.datasetId,value:Q.datasetId},Q.name))),m?Je.default.createElement("div",{className:i.selectedContainer},!C&&R?Je.default.createElement(Gn.LoadingEllipses,{variant:"h6",message:`Loading MSA for (${h})`}):null,C?Je.default.createElement(Gn.LoadingEllipses,{variant:"h6",message:`Loading available MSAs for (${m.name})`}):null,p?Je.default.createElement("div",null,Je.default.createElement(Gn.SanitizedHTML,{html:m.description}),Je.default.createElement(ur,{feature:t,options:I,selectedId:h,selectedTranscript:w,onTranscriptChange:y,proteinSequence:S,validIds:p})):null):null),Je.default.createElement($r.DialogActions,null,Je.default.createElement($r.Button,{color:"primary",variant:"contained",disabled:!w||!M?.length,onClick:()=>{try{if(!w||!M)return;let Q=`${h}_${a[0]}`;_h({session:n,newViewTitle:Tr(w),view:o,querySeqName:Q,feature:w,data:{msa:M.map(F=>`>${F.get("refName")}
|
|
70
|
-
${
|
|
71
|
-
`)}}),r()}catch(
|
|
72
|
-
${w}`}),C=await
|
|
62
|
+
`);if(a===-1)continue;let c=s.slice(a+1).replaceAll(/\s/g,"");c&&r.push(c)}if(r.length<2)return!1;let n=!1,o=-1,i=!0;for(let s of r){let a=0;for(let c=0;c<s.length;c++){let l=s.charCodeAt(c);hi(l)?n=!0:(l>=BB&&l<=SB||l===QB)&&a++}o===-1?o=a:a!==o&&(i=!1)}return n&&i}expandA3M(t,r){let n=r.length;if(n===0)return{};let o=[],i=[];for(let l=0;l<n;l++){let A=t[l],u=[],m=[],d=0;for(;d<A.length;){let p=A.charCodeAt(d);if(p>=BB&&p<=SB||p===QB){u.push(A[d]);let C="",y=d+1;for(;y<A.length;){let I=A.charCodeAt(y);if(hi(I)||I===MB)C+=A[y],y++;else break}m.push(C),d=y}else if(p===MB)d++;else if(hi(p)){let C="";for(;d<A.length&&hi(A.charCodeAt(d));)C+=A[d],d++;u.push(""),m.push(C)}else d++}o.push(u),i.push(m)}let s=Math.max(...o.map(l=>l.length),0),a=new Array(s).fill(0);for(let l=0;l<n;l++){let A=i[l];for(let u=0;u<A.length;u++){let m=0;for(let d of A[u])hi(d.charCodeAt(0))&&m++;m>a[u]&&(a[u]=m)}}let c={};for(let l=0;l<n;l++){let A=o[l],u=i[l],m=[];for(let d=0;d<s;d++){let p=a[d];if(d<A.length){let C=A[d],y=u[d]||"";m.push(C||"-");let I="";for(let x of y)hi(x.charCodeAt(0))&&(I+=x.toUpperCase());m.push(I);let h=p-I.length;h>0&&m.push(".".repeat(h))}else m.push("-"),p>0&&m.push(".".repeat(p))}c[r[l]]=m.join("")}return c}getMSA(){return this.MSA}getNames(){return this.orderedNames}getRow(t){return this.MSA.seqdata[t]||""}getWidth(){let t=Object.keys(this.MSA.seqdata)[0];return t?this.getRow(t).length:0}}});function ek(e){let t=/\(?(\d+(\.\d+)+)\)?/.exec(e);return t&&t.length>1?t[1]:""}function TB(e){let t=["CLUSTAL","PROBCONS","MUSCLE","MSAPROBS","Kalign"];t.some(n=>e.startsWith(n))||console.warn(`${e} is not a known CLUSTAL header: ${t.join(",")}, proceeding but could indicate an issue`);let r=ek(e);return{info:e,version:r}}function il(e){let t=e.next();for(;!t.done&&t.value.trim()==="";)t=e.next();return t.value}function tk(e){let t=e.split(/\s+/),r=e.slice(t[0].length),n=t[0].length+r.indexOf(t[1]),o=n+t[1].length;return[n,o]}function vB(e){let t=il(e),r=[],n="";if(!t)return;for(;t;)t.startsWith(" ")?n=t:r.push(t),t=e.next().value;let[o,i]=tk(r[0]),a=r.map(u=>u.split(/\s+/)).map(u=>u[0]),c=r.map(u=>u.slice(o,i)),l=n.slice(o,i),A=c[0].length-l.length;return A&&(l+=" ".repeat(A)),{ids:a,seqs:c,consensus:l}}function _B(e){let t,r=vB(e);if(r!==void 0)for(;t=vB(e);){for(let n=0;n<t.seqs.length;n++)r.seqs[n]+=t.seqs[n];r.consensus+=t.consensus}return r}var am=g(()=>{});var DB=g(()=>{am()});function rk(e){let t=il(e);if(!t)throw new Error("Empty file received");let r=TB(t),n=_B(e);if(n===void 0)throw new Error("No blocks parsed");let o=n.seqs.map((s,a)=>({id:n.ids[a],seq:s})),{consensus:i}=n;if(i.length!==o[0].seq.length)throw new Error(`Consensus length != sequence length. Con ${i.length} seq ${o[0].seq.length}`);return{consensus:i,alns:o,header:r}}function kB(e){let t=e.split(`
|
|
63
|
+
`)[Symbol.iterator]();return rk(t)}var NB=g(()=>{DB();am()});var ro,cm=g(()=>{NB();pi();ro=class extends Ut{MSA;constructor(t){super(),this.MSA=kB(t)}getMSA(){return this.MSA}getRow(t){return this.MSA.alns.find(r=>r.id===t)?.seq||""}getWidth(){return this.MSA.alns[0].seq.length}getHeader(){return this.MSA.header}getNames(){return this.MSA.alns.map(t=>t.id)}get seqConsensus(){return this.MSA.consensus}}});function LB(e){let t=e.split(`
|
|
64
|
+
`).map(i=>i.trim()).filter(i=>!!i),r=[],n=[];for(let i of t)if(i.startsWith("SEQ"))r.push(i);else{if(i.startsWith("DATA"))continue;if(i.startsWith("//"))break;n.push(i)}let o=r.map(i=>{let[,s,a,c,l,A,u,m,d]=i.split(" ");return{species:s,protein:a,chr:c,start:+l,end:+A,strand:+u,geneId:m,unknown:d,seq:""}});for(let i of n)for(let s=0;s<r.length;s++)o[s].seq+=i[s];return o}function sl(e){let t=e.split(`
|
|
65
|
+
`).map(i=>i.trim()).filter(i=>!!i),r=[],n="";for(let i of t)if(i.startsWith("SEQ"))r.push(i);else{if(i.startsWith("DATA"))continue;if(i.startsWith("//"))break;n=i}let o=r.map(i=>{let[,s,a,c,l,A,u,m,d]=i.split(" ");return{species:s,protein:a,chr:c,start:+l,end:+A,strand:+u,geneId:m,unknown:d}});return{tree:n,seqs:o}}var lm=g(()=>{});var no,Am=g(()=>{lm();pi();no=class extends Ut{MSA;constructor(t){super(),this.MSA=LB(t)}getMSA(){return this.MSA}getRow(t){return this.MSA.find(r=>r.protein===t)?.seq||""}getWidth(){return this.MSA[0].seq.length}getHeader(){return""}getNames(){return this.MSA.map(t=>t.protein)}}});var oo,um=g(()=>{pi();oo=class extends Ut{MSA;constructor(t){super();let r={},n={};for(let o of t.split(">")){if(!/\S/.test(o))continue;let i=o.indexOf(`
|
|
66
|
+
`);if(i===-1)continue;let s=o.slice(0,i),a=s.indexOf(" "),c=a===-1?s:s.slice(0,a);c&&(r[c]=o.slice(i+1).replaceAll(/\s/g,""),c.includes(":")&&(n[c.replaceAll(":","_")]=c))}this.MSA={seqdata:r,colonNormalized:n}}getMSA(){return this.MSA}getNames(){return Object.keys(this.MSA.seqdata)}getRow(t){return this.MSA.seqdata[t]??this.MSA.seqdata[this.MSA.colonNormalized[t]??""]??""}getWidth(){let t=Object.keys(this.MSA.seqdata)[0];return this.getRow(t).length}}});function io(e){let t=[],r=[],n=e.replace(/'((?:[^']|'')*)'/g,(s,a)=>{let c=r.length;return r.push(a.replaceAll("''","'")),`__Q${c}__`}),o={},i=n.split(/\s*(;|\(|\)|,|:)\s*/);for(let s=0;s<i.length;s++){let c=i[s].replace(/^__Q(\d+)__$/,(A,u)=>r[Number(u)]),l={};switch(c){case"(":o.children=[l],t.push(o),o=l;break;case",":t.at(-1)?.children.push(l),o=l;break;case")":o=t.pop();break;case":":break;default:{let A=i[s-1];A===")"||A==="("||A===","?o.name=c:A===":"&&(o.length=Number.parseFloat(c))}}}return o}var fm=g(()=>{});function Ci(){return{gf:{},gc:{},gs:{},gr:{},seqname:[],seqdata:{}}}function Es(e){return FB.test(e)}function RB(e,t){let r=t??{},n=[],o=null,i=e.split(`
|
|
67
|
+
`);for(let s of i){let a;if(FB.test(s))o=Ci();else if(nk.test(s))o&&n.push(o),o=null;else if(a=ok.exec(s)){if(!o){if(r.strict)throw new Error("No format header: # STOCKHOLM 1.0");o=Ci()}let c=a[1];o.gf[c]||(o.gf[c]=[]),o.gf[c].push(a[2])}else if(a=ik.exec(s)){if(!o){if(r.strict)throw new Error("No format header: # STOCKHOLM 1.0");o=Ci()}let c=a[1];o.gc[c]||(o.gc[c]=""),o.gc[c]+=a[2]}else if(a=sk.exec(s)){if(!o){if(r.strict)throw new Error("No format header: # STOCKHOLM 1.0");o=Ci()}let c=a[1],l=a[2],A=a[3];o.gs[l]||(o.gs[l]={}),o.gs[l][c]||(o.gs[l][c]=[]),o.gs[l][c].push(A)}else if(a=ak.exec(s)){if(!o){if(r.strict)throw new Error("No format header: # STOCKHOLM 1.0");o=Ci()}let c=a[1],l=a[2],A=a[3];o.gr[l]||(o.gr[l]={}),o.gr[l][c]||(o.gr[l][c]=""),o.gr[l][c]+=A}else if(a=ck.exec(s)){if(!o){if(r.strict)throw new Error("No format header: # STOCKHOLM 1.0");o=Ci()}let c=a[1],l=a[2];o.seqdata[c]||(o.seqdata[c]="",o.seqname.push(c)),o.seqdata[c]+=l}else if(lk.test(s)&&r.strict)throw new Error("Malformed line")}return o&&n.push(o),n}var FB,nk,ok,ik,sk,ak,ck,lk,mm=g(()=>{FB=/^# STOCKHOLM 1.0/,nk=/^\/\/\s*$/,ok=/^#=GF\s+(\S+)\s+(.*?)\s*$/,ik=/^#=GC\s+(\S+)\s+(.*?)\s*$/,sk=/^#=GS\s+(\S+)\s+(\S+)\s+(.*?)\s*$/,ak=/^#=GR\s+(\S+)\s+(\S+)\s+(.*?)\s*$/,ck=/^\s*(\S+)\s+(\S+)\s*$/,lk=/\S/});var so,dm=g(()=>{fm();mm();im();pi();mm();so=class extends Ut{data;MSA;constructor(t,r){super();let n=RB(t);this.data=n,this.MSA=n[r]}getMSA(){return this.MSA}getRow(t){return this.MSA.seqdata[t]||""}getWidth(){let t=Object.keys(this.MSA.seqdata)[0];return this.getRow(t).length}get alignmentNames(){return this.data.map((t,r)=>t.gf.DE?.[0]??`Alignment ${r+1}`)}getHeader(){let t=this.MSA.gs.AC??{},r=this.MSA.gs.DR??{};return{General:this.MSA.gf,Accessions:Object.fromEntries(Object.entries(t).map(([n,o])=>[n,o[0]])),Dbxref:Object.fromEntries(Object.entries(r).map(([n,o])=>[n,o.join("; ")]))}}getRowData(t){return{name:t,accession:this.MSA.gs.AC?.[t]?.[0],dbxref:this.MSA.gs.DR?.[t]?.join("; ")}}getNames(){return Object.keys(this.MSA.seqdata)}getStructures(){let t=/PDB; +(\S+) +(\S); ([0-9]+)-([0-9]+)/,r=this.MSA.gs.DR??{},n={};for(let[o,i]of Object.entries(r))for(let s of i){let a=t.exec(s);a&&(n[o]??=[]).push({pdb:a[1].toLowerCase(),chain:a[2],startPos:+a[3],endPos:+a[4]})}return n}getTree(){let t=this.MSA.gf.NH?.[0];return t?gi(io(t)):super.getTree()}get seqConsensus(){return this.MSA.gc.seq_cons}get secondaryStructureConsensus(){return this.MSA.gc.SS_cons}get tracks(){return[{id:"seqConsensus",name:"Sequence consensus",data:this.seqConsensus,customColorScheme:{}},{id:"secondaryStruct",name:"Secondary-structure",data:this.secondaryStructureConsensus,customColorScheme:{">":"pink","<":"lightblue"}}]}}});function gm(e,t=0){return Es(e)?new so(e,t):Sn.sniff(e)?new Sn(e):e.startsWith(">")?new oo(e):e.startsWith("SEQ")?new no(e):new ro(e)}var PB=g(()=>{sm();cm();Am();um();dm();lm();fm();sm();cm();Am();um();dm()});function Ak(e){return e?Object.fromEntries(e.split(";").map(t=>t.trim()).filter(t=>!!t).map(t=>t.split("=")).map(([t,r])=>[t?.trim()??"",r?decodeURIComponent(r).trim().split(",").join(" "):void 0]).filter(([t])=>t!=="")):{}}function al(e){return e?e.split(`
|
|
68
|
+
`).map(t=>t.trim()).filter(t=>!!t&&!t.startsWith("#")).map(t=>{let r=t.split(" "),[n,o,i,s,a,c,l,A]=r,u=r[8];return{seq_id:n??"",source:o??"",type:i??"",start:Number(s)||0,end:Number(a)||0,score:Number(c)||0,strand:l??".",phase:A??".",...Ak(u)}}):[]}var OB=g(()=>{});function cl(e){let t=new Map;for(let n of e){let o=t.get(n.seq_id);o?o.push(n):t.set(n.seq_id,[n])}let r={};for(let[n,o]of t){let i=new Map,s=new Map;for(let c of o){let l=c.Name||c.ID||`${c.source}_${c.start}_${c.end}`,A=c.signature_desc||c.Name||l,u=c.Ontology_term||c.description||c.Note||A;s.has(l)||s.set(l,{name:A,description:u,accession:l});let m=i.get(l);m?m.push({start:c.start,end:c.end}):i.set(l,[{start:c.start,end:c.end}])}let a=[];for(let[c,l]of i){let A=s.get(c);a.push({signature:{entry:A},locations:l})}r[n]={matches:a,xref:[{id:n}]}}return r}var GB=g(()=>{});var HB=g(()=>{});var UB=g(()=>{OB();GB();HB()});var qB=g(()=>{bB();im();PB();UB()});function jB({mapHeight:e,blockSize:t,viewportY:r,viewportHeight:n}){let o=Math.max(0,Math.min(r,e*t-n)),i=Math.floor(o/t),s=Math.floor((o+n-1)/t),a=[];for(let c=i;c<=s;c++)a.push(c*t);return a}function JB({mapWidth:e,blockSize:t,viewportX:r,viewportWidth:n}){let o=Math.max(0,Math.min(r,e-n)),i=Math.floor(o/t),s=Math.floor((o+n-1)/t),a=[];for(let c=i;c<=s;c++)a.push(c*t);return a}var VB=g(()=>{});function pm({ctx:e,conservation:t,colWidth:r,trackHeight:n,offsetX:o,blockSize:i}){let s=Math.max(0,Math.floor(o/r)),a=Math.max(0,Math.ceil((o+i)/r));e.fillStyle="gray";for(let c=s;c<a&&c<t.length;c++){let A=t[c]*n,u=c*r;e.fillRect(u,n-A,r,A)}}function hm({ctx:e,data:t,colorScheme:r,contrastScheme:n,bgColor:o,colWidth:i,rowHeight:s,offsetX:a,blockSize:c}){let l=Math.max(0,Math.floor(a/i)),A=Math.max(0,Math.ceil((a+c)/i)),u=t?.slice(l,A);for(let m=0;u&&m<u.length;m++){let d=u[m],p=r[d.toUpperCase()];if(o){let C=m*i+a-a%i;e.fillStyle=p||"white",e.fillRect(C,0,i,s),s>=10&&i>=s/2&&(e.fillStyle=n[d.toUpperCase()]||"black",e.fillText(d,C+i/2,s/2+1))}}}function dk({model:e,ctx:t,offsetX:r,offsetY:n,trackHeight:o,blockSizeXOverride:i,highResScaleFactorOverride:s}){let{blockSize:a,colWidth:c,highResScaleFactor:l,conservation:A}=e,u=i??a,m=s??l;t.resetTransform(),t.scale(m,m),t.translate(-r,n),pm({ctx:t,conservation:A,colWidth:c,trackHeight:o,offsetX:r,blockSize:u}),t.resetTransform()}function gk({model:e,ctx:t,track:r,offsetX:n,offsetY:o,contrastScheme:i,blockSizeXOverride:s,highResScaleFactorOverride:a}){let{blockSize:c,bgColor:l,colorScheme:A,colWidth:u,fontSize:m,rowHeight:d,highResScaleFactor:p}=e,{customColorScheme:C,data:y}=r.model,I=C??A,h=s??c,x=a??p;t.resetTransform(),t.scale(x,x),t.translate(-n,o),t.textAlign="center",t.font=t.font.replace(/\d+px/,`${m}px`),hm({ctx:t,data:y,colorScheme:I,contrastScheme:i,bgColor:l,colWidth:u,rowHeight:d,offsetX:n,blockSize:h}),t.resetTransform()}function YB({model:e,ctx:t,offsetX:r,contrastScheme:n,blockSizeXOverride:o,highResScaleFactorOverride:i}){let{turnedOnTracks:s}=e,a=0;for(let c of s){let l=c.model.height;c.model.id==="conservation"?dk({model:e,ctx:t,offsetX:r,offsetY:a,trackHeight:l,blockSizeXOverride:o,highResScaleFactorOverride:i}):gk({model:e,ctx:t,track:c,offsetX:r,offsetY:a,contrastScheme:n,blockSizeXOverride:o,highResScaleFactorOverride:i}),a+=l}}var ll=g(()=>{});var an,WB,Cm,pk,hk,zB,$B=g(()=>{an=f(b(),1),WB=f(ye(),1),Cm=f(R(),1);ll();pk=(0,Cm.observer)(function({model:e,offsetX:t,trackHeight:r}){let{blockSize:n,scrollX:o,colWidth:i,highResScaleFactor:s,conservation:a}=e,c=(0,an.useRef)(null);return(0,an.useEffect)(()=>{if(!c.current)return;let l=c.current.getContext("2d");l&&(l.resetTransform(),l.scale(s,s),l.clearRect(0,0,n,r),l.translate(-t,0),pm({ctx:l,conservation:a,colWidth:i,trackHeight:r,offsetX:t,blockSize:n}))},[n,i,r,t,s,a]),an.default.createElement("canvas",{ref:c,height:r*s,width:n*s,style:{position:"absolute",left:o+t,width:n,height:r}})}),hk=(0,Cm.observer)(function({model:e,track:t}){let{blocksX:r,msaAreaWidth:n}=e,o=t.model.height;return an.default.createElement("div",{style:{position:"relative",height:o,width:n,overflow:"hidden"}},r.map(i=>an.default.createElement(pk,{key:i,model:e,offsetX:i,trackHeight:o})),an.default.createElement(WB.ResizeHandle,{onDrag:i=>(e.setConservationTrackHeight(Math.max(10,e.conservationTrackHeight+i)),i),style:{position:"absolute",bottom:0,left:0,height:4,width:"100%",zIndex:1,background:"rgba(200,200,200,0.5)"}}))}),zB=hk});var Gr,KB,Em,Ck,Ek,XB,ZB=g(()=>{Gr=f(b(),1),KB=f(_(),1),Em=f(R(),1);xn();ll();Ck=(0,Em.observer)(function({track:e,model:t,offsetX:r}){let{blockSize:n,scrollX:o,bgColor:i,colorScheme:s,colWidth:a,fontSize:c,rowHeight:l,highResScaleFactor:A}=t,{model:{customColorScheme:u,data:m}}=e,d=u||s,p=(0,KB.useTheme)(),C=(0,Gr.useRef)(null),y=(0,Gr.useMemo)(()=>zn(d,p),[d,p]);return(0,Gr.useEffect)(()=>{if(!C.current)return;let I=C.current.getContext("2d");I&&(I.resetTransform(),I.scale(A,A),I.clearRect(0,0,n,l),I.translate(-r,0),I.textAlign="center",I.font=I.font.replace(/\d+px/,`${c}px`),hm({ctx:I,data:m,colorScheme:d,contrastScheme:y,bgColor:i,colWidth:a,rowHeight:l,offsetX:r,blockSize:n}))},[c,i,n,a,l,r,y,d,A,m]),Gr.default.createElement("canvas",{ref:C,height:l*A,width:n*A,style:{position:"absolute",left:o+r,width:n,height:l}})}),Ek=(0,Em.observer)(function({track:e,model:t}){let{blocksX:r,msaAreaWidth:n,rowHeight:o}=t;return e.model.data?Gr.default.createElement("div",{style:{position:"relative",height:o,width:n,overflow:"hidden"}},r.map(i=>Gr.default.createElement(Ck,{key:i,track:e,model:t,offsetX:i}))):null}),XB=Ek});var Al,ul=g(()=>{Al="maeditor"});function eS(e){let t=Math.min(e.length-1,wf.length-1),r=wf[t];return Object.fromEntries(e.map((n,o)=>[n,r[o]]))}var tS=g(()=>{bf()});function rS(e){let t=new Map(e.map(n=>[n.id,{id:`${n.id}`,name:`${n.id}`,parent:n.parent!==void 0?`${n.parent}`:void 0,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}return r}var nS=g(()=>{});function oS(e,t){Im||(Im=document.createElement("canvas"));let r=Im.getContext("2d");if(!r)throw new Error("no canvas context");return r.font=r.font.replace(/\d+px/,`${t}px`),r.measureText(e).width}var Im,iS=g(()=>{});function sS(){return Hr.types.model({tree:Hr.types.maybe(Hr.types.string),msa:Hr.types.maybe(Hr.types.string),treeMetadata:Hr.types.maybe(Hr.types.string),gff:Hr.types.maybe(Hr.types.string)}).actions(e=>({setTree(t){e.tree=t},setMSA(t){e.msa=t},setTreeMetadata(t){e.treeMetadata=t},setGFF(t){e.gff=t}})).postProcessSnapshot(e=>{let{tree:t,msa:r,treeMetadata:n,gff:o}=e,i=5e4;return{tree:t&&t.length>i?void 0:t,msa:r&&r.length>i?void 0:r,treeMetadata:n&&n.length>i?void 0:n,gff:o&&o.length>i?void 0:o}})}var Hr,aS=g(()=>{Hr=f(Dt(),1)});function lS(){return cS.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 cS,AS=g(()=>{cS=f(Dt(),1)});function fS(){return uS.types.model({bgColor:!0,colorSchemeName:Al}).actions(e=>({setColorSchemeName(t){e.colorSchemeName=t},setBgColor(t){e.bgColor=t}}))}var uS,mS=g(()=>{uS=f(Dt(),1);ul()});function dS(){return Ei.types.model({drawLabels:!0,labelsAlignRight:!1,treeAreaWidth:Ei.types.optional(Ei.types.number,400),treeWidth:Ei.types.optional(Ei.types.number,300),showBranchLen:!0,drawTree:!0,drawNodeBubbles:!0}).actions(e=>({setTreeAreaWidth(t){e.treeAreaWidth=Math.round(t)},setTreeWidth(t){e.treeWidth=Math.round(t)},setLabelsAlignRight(t){e.labelsAlignRight=t},setDrawTree(t){e.drawTree=t},setShowBranchLen(t){e.showBranchLen=t},setDrawNodeBubbles(t){e.drawNodeBubbles=t},setDrawLabels(t){e.drawLabels=t}}))}var Ei,gS=g(()=>{Ei=f(Dt(),1);ul()});function vm(e,t){return pS.get(e.toUpperCase())?.get(t.toUpperCase())??-4}function xk(e,t){if(e.length!==t.length)throw new Error("Sequences must have the same length (aligned)");let r=0,n=0,o=0,i=0;for(let l=0;l<e.length;l++){let A=e[l],u=t[l];if(A==="-"&&u==="-")continue;if(A==="-"||u==="-"){n++;continue}let m=vm(A,u);o+=m,i+=Math.max(vm(A,A),vm(u,u)),A.toUpperCase()===u.toUpperCase()?r++:n++}if(r+n===0||i<=0)return 1;let a=o/i,c=Math.max(.01,Math.min(1,a));return-Math.log(c)}function yk(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]=xk(e[n][1],e[o][1])}return r}function wk(e,t){let r=e.length;if(r<2)return{name:t[0]};if(r===2){let a=e[0][1];return{left:{name:t[0]},right:{name:t[1]},leftLength:a/2,rightLength:a/2}}let n=[];for(let a=0;a<r;a++)n[a]=[...e[a]];let o=t.map(a=>({name:a})),i=r;for(;i>2;){let a=[];for(let x=0;x<o.length;x++)o[x]!==void 0&&a.push(x);let c=new Map;for(let x of a){let w=0;for(let Q of a)x!==Q&&(w+=n[x][Q]);c.set(x,w)}let l=1/0,A=-1,u=-1;for(let x=0;x<a.length;x++)for(let w=x+1;w<a.length;w++){let Q=a[x],S=a[w],M=(i-2)*n[Q][S]-c.get(Q)-c.get(S);M<l&&(l=M,A=Q,u=S)}let m=n[A][u],d=c.get(A),p=c.get(u),C,y;i>2?(C=m/2+(d-p)/(2*(i-2)),y=m-C):(C=m/2,y=m/2),C=Math.max(0,C),y=Math.max(0,y);let I={left:o[A],right:o[u],leftLength:C,rightLength:y},h=A;for(let x of a)if(x!==A&&x!==u){let w=(n[A][x]+n[u][x]-m)/2;n[h][x]=Math.max(0,w),n[x][h]=Math.max(0,w)}o[u]=void 0,o[h]=I,i--}let s=[];for(let a=0;a<o.length;a++)o[a]!==void 0&&s.push(a);if(s.length===2){let a=s[0],c=s[1],l=n[a][c];return{left:o[a],right:o[c],leftLength:l/2,rightLength:l/2}}return o[s[0]]}function Tm(e,t){let r;if(e.name!==void 0&&!e.left&&!e.right)r=`'${e.name.replaceAll("'","''")}'`;else{let n=e.left?Tm(e.left,e.leftLength):"",o=e.right?Tm(e.right,e.rightLength):"";r=`(${n},${o})`}return t!==void 0&&(r+=`:${t.toFixed(6)}`),r}function hS(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=yk(e),n=wk(r,t);return Tm(n)+";"}var fl,Ik,pS,CS=g(()=>{fl="ARNDCQEGHILKMFPSTWYVBZX*",Ik=[[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]],pS=new Map;for(let e=0;e<fl.length;e++){let t=new Map;for(let r=0;r<fl.length;r++)t.set(fl[r],Ik[e][r]);pS.set(fl[e],t)}});function _m(e){let t=[],r=0;for(;r<e.length&&(r=e.indexOf("{",r),r!==-1);){let n=1,o=r+1;for(r++;r<e.length&&n>0;)e[r]==="{"?n++:e[r]==="}"&&n--,r++;n===0&&t.push(e.slice(o,r-1).trim())}return t}function Bk(e,t){let r=e.indexOf("{",t);if(r===-1)return;let n=1,o=r+1;for(;o<e.length&&n>0;)e[o]==="{"?n++:e[o]==="}"&&n--,o++;return n===0?e.slice(r+1,o-1).trim():void 0}function ES(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=Sk(t),n=Object.fromEntries(_m(r.fdict).flatMap(o=>{let i=Qk(o);return i?[[i.id,bk[i.name]||i.name]]:[]}));return _m(r.nodes).flatMap(o=>{let i=Mk(o);if(!i)return[];let{features:s=[],...a}=i;return[{...a,...Object.fromEntries(s.map(c=>[n[c.featureid],c.value]))}]})}function Sk(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 s=1,a=n+1;for(n++;n<r.length&&s>0;)r[n]==="{"?s++:r[n]==="}"&&s--,n++;s===0&&(t[i]=r.slice(a,n-1).trim()),n=r.indexOf(",",n),n=n===-1?r.length:n+1}return t}function Qk(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 Mk(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?Bk(e,n):void 0;return{id:parseInt(t[1],10),...r?{parent:parseInt(r[1],10)}:{},features:o?_m(o).flatMap(i=>{let s=vk(i);return s?[s]:[]}):[]}}function vk(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,"\\")}}var bk,IS=g(()=>{bk={$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 Dm(e,t){let r=0,n=0,o=0,i=e.length;for(;n<i&&e[n]===o;)n++,o++;for(;r<t;)for(r++,o++;n<i&&e[n]===o;)n++,o++;return o}function xS(e,t){let r=0,n=e.length-1;for(;r<=n;){let i=Math.floor((r+n)/2);if(e[i]===t)return;e[i]<t?r=i+1:n=i-1}return t-r}function Tk({seq:e,blanks:t,visibleCol:r}){let n=Dm(t,r),o=e.length;if(n<o&&os(e[n]))return;let i=0;for(let s=0;s<n&&s<o;s++)os(e[s])||i++;return n<o?i:void 0}function yS({rowName:e,visibleCol:t,rowMap:r,blanks:n}){let o=r.get(e);return o!==void 0?Tk({seq:o,visibleCol:t,blanks:n}):void 0}var wS=g(()=>{xn()});function bS({row:e,seqPos:t}){let r=0,n=0;for(;n<e.length;){if(!os(e[n])){if(r===t)return n;r++}n++}return t===0?0:n}var BS=g(()=>{xn()});function SS(e,t){let r=URL.createObjectURL(e),n=document.createElement("a");n.href=r,n.download=t,n.click(),setTimeout(()=>{URL.revokeObjectURL(r)},4e4)}var QS=g(()=>{});var ao,MS,_k,vS,TS=g(()=>{ao=f(b(),1),MS=f(R(),1),_k=(0,MS.observer)(({model:e})=>{let{scrollX:t,msaAreaWidth:r,minimapHeight:n,colWidth:o,numColumns:i}=e,s=12,a=n-12,c=r/i/o,l=-t,A=l+r,u=l*c,m=A*c,d="rgb(66, 119, 127)",p=.3;return ao.default.createElement(ao.default.Fragment,null,ao.default.createElement("rect",{x:0,y:0,width:r,height:s,stroke:"#555",fill:"none"}),ao.default.createElement("rect",{x:Math.max(0,u),y:0,width:m-u,height:s,fill:d,fillOpacity:p,stroke:"#555"}),ao.default.createElement("g",{transform:`translate(0 ${s})`},ao.default.createElement("polygon",{fill:d,fillOpacity:p,points:[[m,0],[u,0],[0,a],[r,a]].toString()})))}),vS=_k});var kS={};Je(kS,{Context:()=>Lm});function _S(e){return!e||typeof e=="string"?e:e+""}function br(e,t){let r=Object.keys(t);for(let n of r)e=e.replace(new RegExp("\\{"+n+"\\}","gi"),t[n]);return e}function km(e){if(!e)throw new Error("cannot create a random attribute name for an undefined object");let t="ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz",r="";do{r="";for(let n=0;n<12;n++)r+=t[Math.floor(Math.random()*t.length)]}while(e[r]);return r}function Dk(e,t=10){let r={},n=e.split(",");for(let o=0;o<n.length;o+=2){let i="&"+n[o+1]+";",s=parseInt(n[o],t);r[i]="&#"+s+";"}return r["\\xa0"]=" ",r}function kk(e){let t={left:"start",right:"end",center:"middle",start:"start",end:"end"};return t[e]||t.start}function Nk(e){let t={alphabetic:"alphabetic",hanging:"hanging",top:"text-before-edge",bottom:"text-after-edge",middle:"central"};return t[e]||t.alphabetic}var DS,Is,xs,Nm,Lm,NS=g(()=>{DS=Dk("50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro",32),Is={strokeStyle:{svgAttr:"stroke",canvas:"#000000",svg:"none",apply:"stroke"},fillStyle:{svgAttr:"fill",canvas:"#000000",svg:null,apply:"fill"},lineCap:{svgAttr:"stroke-linecap",canvas:"butt",svg:"butt",apply:"stroke"},lineJoin:{svgAttr:"stroke-linejoin",canvas:"miter",svg:"miter",apply:"stroke"},miterLimit:{svgAttr:"stroke-miterlimit",canvas:10,svg:4,apply:"stroke"},lineWidth:{svgAttr:"stroke-width",canvas:1,svg:1,apply:"stroke"},globalAlpha:{svgAttr:"opacity",canvas:1,svg:1,apply:"fill stroke"},font:{canvas:"10px sans-serif"},shadowColor:{canvas:"#000000"},shadowOffsetX:{canvas:0},shadowOffsetY:{canvas:0},shadowBlur:{canvas:0},textAlign:{canvas:"start"},textBaseline:{canvas:"alphabetic"},lineDash:{svgAttr:"stroke-dasharray",canvas:[],svg:null,apply:"stroke"}},xs=class{__root;__ctx;constructor(t,r){this.__root=t,this.__ctx=r}addColorStop(t,r){let n=this.__ctx.__createElement("stop");if(n.setAttribute("offset",String(t)),_S(r).includes("rgba")){let i=/rgba\(\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d?\.?\d*)\s*\)/gi.exec(r);i&&(n.setAttribute("stop-color",br("rgb({r},{g},{b})",{r:i[1],g:i[2],b:i[3]})),n.setAttribute("stop-opacity",i[4]))}else n.setAttribute("stop-color",_S(r));this.__root.appendChild(n)}},Nm=class{__root;__ctx;constructor(t,r){this.__root=t,this.__ctx=r}},Lm=class{width;height;enableMirroring;canvas;__document;__ctx;__canvas;__root;__ids;__defs;__currentElement;__styleStack;__groupStack;__currentDefaultPath;__currentPosition;__transformMatrix;__transformMatrixStack;__currentElementsToStyle;__options;__id;__fontUnderline;__fontHref;strokeStyle;fillStyle;lineCap;lineJoin;miterLimit;lineWidth;globalAlpha;font;shadowColor;shadowOffsetX;shadowOffsetY;shadowBlur;textAlign;textBaseline;lineDash;constructor(t,r){let n={width:500,height:500,enableMirroring:!1},o;typeof t=="number"&&r!==void 0?o={...n,width:t,height:r}:t&&typeof t=="object"?o=t:o=n,this.width=o.width||n.width,this.height=o.height||n.height,this.enableMirroring=o.enableMirroring!==void 0?o.enableMirroring:n.enableMirroring,this.canvas=this,this.__document=o.document||document,o.ctx?this.__ctx=o.ctx:(this.__canvas=this.__document.createElement("canvas"),this.__ctx=this.__canvas.getContext("2d")),this.__setDefaultStyles(),this.__styleStack=[this.__getStyleState()],this.__groupStack=[],this.__root=this.__document.createElementNS("http://www.w3.org/2000/svg","svg"),this.__root.setAttribute("version","1.1"),this.__root.setAttribute("xmlns","http://www.w3.org/2000/svg"),this.__root.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:xlink","http://www.w3.org/1999/xlink"),this.__root.setAttribute("width",String(this.width)),this.__root.setAttribute("height",String(this.height)),this.__ids={},this.__defs=this.__document.createElementNS("http://www.w3.org/2000/svg","defs"),this.__root.appendChild(this.__defs),this.__currentElement=this.__document.createElementNS("http://www.w3.org/2000/svg","g"),this.__root.appendChild(this.__currentElement),this.__currentDefaultPath="",this.__currentPosition={},this.__transformMatrix=new DOMMatrix,this.resetTransform(),this.__options=o,this.__id=Math.random().toString(16).substring(2,8)}__createElement(t,r={},n){let o=this.__document.createElementNS("http://www.w3.org/2000/svg",t);n&&(o.setAttribute("fill","none"),o.setAttribute("stroke","none"));for(let i of Object.keys(r))o.setAttribute(i,r[i]);return o}__setDefaultStyles(){for(let t of Object.keys(Is))this[t]=Is[t].canvas}__applyStyleState(t){for(let r of Object.keys(t))this[r]=t[r]}__getStyleState(){let t={};for(let r of Object.keys(Is))t[r]=this[r];return t}__applyTransformation(t,r){let{a:n,b:o,c:i,d:s,e:a,f:c}=r||this.getTransform();t.setAttribute("transform",`matrix(${n} ${o} ${i} ${s} ${a} ${c})`)}__applyStyleToCurrentElement(t){let r=this.__currentElement,n=this.__currentElementsToStyle;if(n){r.setAttribute(t,""),r=n.element;for(let i of n.children)i.setAttribute(t,"")}let o=Object.keys(Is);for(let i of o){let s=Is[i],a=this[i];if(s.apply){if(a instanceof Nm){if(a.__ctx)for(let c of Array.from(a.__ctx.__defs.childNodes)){let l=c.getAttribute("id");l&&(this.__ids[l]=l,this.__defs.appendChild(c))}r.setAttribute(s.apply,br("url(#{id})",{id:a.__root.getAttribute("id")}))}else if(a instanceof xs)r.setAttribute(s.apply,br("url(#{id})",{id:a.__root.getAttribute("id")}));else if(s.apply.includes(t)&&s.svg!==a)if((s.svgAttr==="stroke"||s.svgAttr==="fill")&&a&&a.includes("rgba")){let l=/rgba\(\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\s*,\s*(\d?\.?\d*)\s*\)/gi.exec(a);if(l){r.setAttribute(s.svgAttr,br("rgb({r},{g},{b})",{r:l[1],g:l[2],b:l[3]}));let A=Number(l[4]),u=this.globalAlpha;u!=null&&(A*=u),r.setAttribute(s.svgAttr+"-opacity",String(A))}}else{let c=s.svgAttr,l=a;if(i==="globalAlpha"){if(c=t+"-"+s.svgAttr,r.getAttribute(c))continue}else if(i==="lineWidth"){let A=this.__getTransformScale();l=a*Math.max(A.x,A.y)}r.setAttribute(c,l)}}}}__closestGroupOrSvg(t){return t=t||this.__currentElement,t.nodeName==="g"||t.nodeName==="svg"?t:this.__closestGroupOrSvg(t.parentNode)}getSerializedSvg(t){let r=new XMLSerializer().serializeToString(this.__root);if(/xmlns="http:\/\/www\.w3\.org\/2000\/svg".+xmlns="http:\/\/www\.w3\.org\/2000\/svg/gi.test(r)&&(r=r.replace('xmlns="http://www.w3.org/2000/svg','xmlns:xlink="http://www.w3.org/1999/xlink')),t)for(let o of Object.keys(DS)){let i=new RegExp(o,"gi");i.test(r)&&(r=r.replace(i,DS[o]))}return r}getSvg(){return this.__root}save(){let t=this.__createElement("g"),r=this.__closestGroupOrSvg();this.__groupStack.push(r),r.appendChild(t),this.__currentElement=t;let n=this.__getStyleState();this.__styleStack.push(n),this.__transformMatrixStack||(this.__transformMatrixStack=[]),this.__transformMatrixStack.push(this.getTransform())}restore(){this.__currentElement=this.__groupStack.pop(),this.__currentElementsToStyle=void 0,this.__currentElement||(this.__currentElement=this.__root.childNodes[1]);let t=this.__styleStack.pop();this.__applyStyleState(t),this.__transformMatrixStack&&this.__transformMatrixStack.length>0&&this.setTransform(this.__transformMatrixStack.pop())}beginPath(){this.__currentDefaultPath="",this.__currentPosition={};let t=this.__createElement("path",{},!0);this.__closestGroupOrSvg().appendChild(t),this.__currentElement=t}__applyCurrentDefaultPath(){let t=this.__currentElement;t.nodeName==="path"&&t.setAttribute("d",this.__currentDefaultPath)}__addPathCommand(t){this.__currentDefaultPath+=" ",this.__currentDefaultPath+=t}moveTo(t,r){this.__currentElement.nodeName!=="path"&&this.beginPath(),this.__currentPosition={x:t,y:r},this.__addPathCommand(br("M {x} {y}",{x:this.__matrixTransform(t,r).x,y:this.__matrixTransform(t,r).y}))}closePath(){this.__currentDefaultPath&&this.__addPathCommand("Z")}lineTo(t,r){this.__currentPosition={x:t,y:r},this.__currentDefaultPath.includes("M")?this.__addPathCommand(br("L {x} {y}",{x:this.__matrixTransform(t,r).x,y:this.__matrixTransform(t,r).y})):this.__addPathCommand(br("M {x} {y}",{x:this.__matrixTransform(t,r).x,y:this.__matrixTransform(t,r).y}))}bezierCurveTo(t,r,n,o,i,s){this.__currentPosition={x:i,y:s},this.__addPathCommand(br("C {cp1x} {cp1y} {cp2x} {cp2y} {x} {y}",{cp1x:this.__matrixTransform(t,r).x,cp1y:this.__matrixTransform(t,r).y,cp2x:this.__matrixTransform(n,o).x,cp2y:this.__matrixTransform(n,o).y,x:this.__matrixTransform(i,s).x,y:this.__matrixTransform(i,s).y}))}quadraticCurveTo(t,r,n,o){this.__currentPosition={x:n,y:o},this.__addPathCommand(br("Q {cpx} {cpy} {x} {y}",{cpx:this.__matrixTransform(t,r).x,cpy:this.__matrixTransform(t,r).y,x:this.__matrixTransform(n,o).x,y:this.__matrixTransform(n,o).y}))}stroke(){this.__currentElement.nodeName==="path"&&this.__currentElement.setAttribute("paint-order","fill stroke markers"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement("stroke")}fill(){this.__currentElement.nodeName==="path"&&this.__currentElement.setAttribute("paint-order","stroke fill markers"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement("fill")}rect(t,r,n,o){this.__currentElement.nodeName!=="path"&&this.beginPath(),this.moveTo(t,r),this.lineTo(t+n,r),this.lineTo(t+n,r+o),this.lineTo(t,r+o),this.lineTo(t,r),this.closePath()}__clearCanvas(){let t=this.__root.childNodes[1];this.__root.removeChild(t),this.__currentElement=this.__document.createElementNS("http://www.w3.org/2000/svg","g"),this.__root.appendChild(this.__currentElement),this.__groupStack=[]}fillRect(t,r,n,o){let{a:i,b:s,c:a,d:c,e:l,f:A}=this.getTransform();JSON.stringify([i,s,a,c,l,A])===JSON.stringify([1,0,0,1,0,0])&&t===0&&r===0&&n===this.width&&o===this.height&&this.__clearCanvas();let u=this.__createElement("rect",{x:t,y:r,width:n,height:o},!0);this.__closestGroupOrSvg().appendChild(u),this.__currentElement=u,this.__applyTransformation(u),this.__applyStyleToCurrentElement("fill")}strokeRect(t,r,n,o){let i=this.__createElement("rect",{x:t,y:r,width:n,height:o},!0);this.__closestGroupOrSvg().appendChild(i),this.__currentElement=i,this.__applyTransformation(i),this.__applyStyleToCurrentElement("stroke")}clearRect(t,r,n,o){let{a:i,b:s,c:a,d:c,e:l,f:A}=this.getTransform();if(JSON.stringify([i,s,a,c,l,A])===JSON.stringify([1,0,0,1,0,0])&&t===0&&r===0&&n===this.width&&o===this.height){this.__clearCanvas();return}let u=this.__createElement("rect",{x:t,y:r,width:n,height:o,fill:"#FFFFFF"},!0);this.__applyTransformation(u),this.__closestGroupOrSvg().appendChild(u)}createLinearGradient(t,r,n,o){let i=this.__createElement("linearGradient",{id:km(this.__ids),x1:t+"px",x2:n+"px",y1:r+"px",y2:o+"px",gradientUnits:"userSpaceOnUse"});return this.__defs.appendChild(i),new xs(i,this)}createRadialGradient(t,r,n,o,i,s){let a=this.__createElement("radialGradient",{id:km(this.__ids),cx:o+"px",cy:i+"px",r:s+"px",fx:t+"px",fy:r+"px",gradientUnits:"userSpaceOnUse"});return this.__defs.appendChild(a),new xs(a,this)}__applyText(t,r,n,o){let i=document.createElement("span");i.setAttribute("style","font:"+this.font);let s=i.style,a=this.__closestGroupOrSvg(),c=this.__createElement("text",{"font-family":s.fontFamily,"font-size":s.fontSize,"font-style":s.fontStyle,"font-weight":s.fontWeight,"text-decoration":this.__fontUnderline,x:r,y:n,"text-anchor":kk(this.textAlign),"dominant-baseline":Nk(this.textBaseline)},!0);c.appendChild(this.__document.createTextNode(t)),this.__currentElement=c,this.__applyTransformation(c),this.__applyStyleToCurrentElement(o);let l=c;if(this.__fontHref){let A=this.__createElement("a");A.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.__fontHref),A.appendChild(c),l=A}a.appendChild(l)}fillText(t,r,n){this.__applyText(t,r,n,"fill")}strokeText(t,r,n){this.__applyText(t,r,n,"stroke")}measureText(t){return this.__ctx.font=this.font,this.__ctx.measureText(t)}arc(t,r,n,o,i,s){if(o===i)return;o=o%(2*Math.PI),i=i%(2*Math.PI),o===i&&(i=(i+2*Math.PI-.001*(s?-1:1))%(2*Math.PI));let a=t+n*Math.cos(i),c=r+n*Math.sin(i),l=t+n*Math.cos(o),A=r+n*Math.sin(o),u=s?0:1,m=0,d=i-o;d<0&&(d+=2*Math.PI),s?m=d>Math.PI?0:1:m=d>Math.PI?1:0;let p=Math.hypot(this.__transformMatrix.a,this.__transformMatrix.b),C=Math.hypot(this.__transformMatrix.c,this.__transformMatrix.d);this.lineTo(l,A),this.__addPathCommand(br("A {rx} {ry} {xAxisRotation} {largeArcFlag} {sweepFlag} {endX} {endY}",{rx:n*p,ry:n*C,xAxisRotation:0,largeArcFlag:m,sweepFlag:u,endX:this.__matrixTransform(a,c).x,endY:this.__matrixTransform(a,c).y})),this.__currentPosition={x:a,y:c}}clip(){let t=this.__closestGroupOrSvg(),r=this.__createElement("clipPath"),n=km(this.__ids),o=this.__createElement("g");this.__applyCurrentDefaultPath(),t.removeChild(this.__currentElement),r.setAttribute("id",n),r.appendChild(this.__currentElement),this.__defs.appendChild(r),t.setAttribute("clip-path",br("url(#{id})",{id:n})),t.appendChild(o),this.__currentElement=o}setLineDash(t){t&&t.length>0?this.lineDash=t.join(","):this.lineDash=null}setTransform(t,r,n,o,i,s){t instanceof DOMMatrix?this.__transformMatrix=new DOMMatrix([t.a,t.b,t.c,t.d,t.e,t.f]):this.__transformMatrix=new DOMMatrix([t,r,n,o,i,s])}getTransform(){let{a:t,b:r,c:n,d:o,e:i,f:s}=this.__transformMatrix;return new DOMMatrix([t,r,n,o,i,s])}resetTransform(){this.setTransform(1,0,0,1,0,0)}scale(t,r){if(r===void 0&&(r=t),isNaN(t)||isNaN(r)||!isFinite(t)||!isFinite(r))return;let n=this.getTransform().scale(t,r);this.setTransform(n)}rotate(t){let r=this.getTransform().multiply(new DOMMatrix([Math.cos(t),Math.sin(t),-Math.sin(t),Math.cos(t),0,0]));this.setTransform(r)}translate(t,r){let n=this.getTransform().translate(t,r);this.setTransform(n)}transform(t,r,n,o,i,s){let a=this.getTransform().multiply(new DOMMatrix([t,r,n,o,i,s]));this.setTransform(a)}__matrixTransform(t,r){return new DOMPoint(t,r).matrixTransform(this.__transformMatrix)}__getTransformScale(){return{x:Math.hypot(this.__transformMatrix.a,this.__transformMatrix.b),y:Math.hypot(this.__transformMatrix.c,this.__transformMatrix.d)}}__getTransformRotation(){return Math.atan2(this.__transformMatrix.b,this.__transformMatrix.a)}drawFocusRing(){}createImageData(){}putImageData(){}globalCompositeOperation(){}drawImage(){}createPattern(){return null}}});var PS={};Je(PS,{renderToSvg:()=>Lk});async function Lk(e,t){await(0,RS.when)(()=>!!e.dataInitialized);let{width:r,height:n,scrollX:o,scrollY:i,totalTrackAreaHeight:s}=e,{exportType:a,theme:c,includeMinimap:l,includeTracks:A}=t,u=A?s:0;if(a==="entire")return LS({width:e.totalWidth+e.treeAreaWidth,height:e.totalHeight+u,contentHeight:e.totalHeight,trackHeight:u,theme:c,model:e,offsetY:0,offsetX:0,includeMinimap:l,includeTracks:A});if(a==="viewport")return LS({width:r,height:n+(l?e.minimapHeight:0)+u,contentHeight:n,trackHeight:u,theme:c,model:e,offsetY:-i,offsetX:-o,includeMinimap:l,includeTracks:A});throw new Error("unknown export type")}async function LS({width:e,height:t,contentHeight:r,trackHeight:n,offsetX:o,offsetY:i,theme:s,model:a,includeMinimap:c,includeTracks:l}){let{Context:A}=await Promise.resolve().then(()=>(NS(),kS)),u=c?Pk:Gk;return(0,FS.renderToStaticMarkup)(se.default.createElement(Ok,{width:e,height:t},se.default.createElement(u,{model:a},l&&n>0?se.default.createElement(Rk,{Context:A,model:a,theme:s,offsetX:o,width:e,trackHeight:n}):null,se.default.createElement("g",{transform:n>0?`translate(0 ${n})`:void 0},se.default.createElement(Fk,{Context:A,model:a,theme:s,offsetX:o,offsetY:i,width:e,contentHeight:r})))))}function Fk({model:e,theme:t,width:r,contentHeight:n,offsetX:o,offsetY:i,Context:s}){let{treeAreaWidth:a,colorScheme:c,id:l}=e,A=`tree-${l}`,u=`msa-${l}`,m=zn(c,t),d=new s(r,n),p=new s(r,n);Vc({ctx:p,offsetX:o,offsetY:i,model:e,blockSizeYOverride:n,highResScaleFactorOverride:1});let C=r-a;return Zc({model:e,offsetY:i,ctx:d,theme:t,blockSizeYOverride:n,highResScaleFactorOverride:1}),Yc({model:e,theme:t,offsetY:i,offsetX:o,contrastScheme:m,ctx:p,blockSizeXOverride:C,blockSizeYOverride:n,highResScaleFactorOverride:1}),se.default.createElement(se.default.Fragment,null,se.default.createElement("defs",null,se.default.createElement("clipPath",{id:A},se.default.createElement("rect",{x:0,y:0,width:a,height:n}))),se.default.createElement("defs",null,se.default.createElement("clipPath",{id:u},se.default.createElement("rect",{x:0,y:0,width:C,height:n}))),se.default.createElement("g",{clipPath:`url(#${A})`,dangerouslySetInnerHTML:{__html:d.getSvg().innerHTML}}),se.default.createElement("g",{clipPath:`url(#${u})`,transform:`translate(${a} 0)`,dangerouslySetInnerHTML:{__html:p.getSvg().innerHTML}}))}function Rk({model:e,theme:t,width:r,trackHeight:n,offsetX:o,Context:i}){let{treeAreaWidth:s,colorScheme:a,id:c}=e,l=`tracks-${c}`,A=zn(a,t),u=r-s,m=new i(u,n);return YB({model:e,ctx:m,offsetX:o,contrastScheme:A,blockSizeXOverride:u,highResScaleFactorOverride:1}),se.default.createElement("g",{transform:`translate(${s} 0)`},se.default.createElement("defs",null,se.default.createElement("clipPath",{id:l},se.default.createElement("rect",{x:0,y:0,width:u,height:n}))),se.default.createElement("g",{clipPath:`url(#${l})`,dangerouslySetInnerHTML:{__html:m.getSvg().innerHTML}}))}function Pk({model:e,children:t}){let{minimapHeight:r,treeAreaWidth:n}=e;return se.default.createElement(se.default.Fragment,null,se.default.createElement("g",{transform:`translate(${n} 0)`},se.default.createElement(vS,{model:e})),se.default.createElement("g",{transform:`translate(0 ${r})`},t))}function Ok({width:e,height:t,children:r}){return se.default.createElement("svg",{width:e,height:t,xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",viewBox:[0,0,e,t].toString()},r)}function Gk({children:e}){return e}var se,FS,RS,OS=g(()=>{se=f(b(),1),FS=f(ge(),1),RS=f($r(),1);TS();Vf();Yf();ll();el();xn()});function Hk(){return $.types.compose(lS(),dS(),fS(),$.types.model("MsaView",{id:co.ElementId,showDomains:!1,hideGaps:!0,allowedGappyness:100,subFeatureRows:!1,type:$.types.literal("MsaView"),drawMsaLetters:!0,height:$.types.optional($.types.number,550),rowHeight:16,scrollY:0,scrollX:0,colWidth:12,treeFilehandle:$.types.maybe(co.FileLocation),msaFilehandle:$.types.maybe(co.FileLocation),treeMetadataFilehandle:$.types.maybe(co.FileLocation),gffFilehandle:$.types.maybe(co.FileLocation),currentAlignment:0,collapsed:$.types.array($.types.string),showOnly:$.types.maybe($.types.string),turnedOffTracks:$.types.map($.types.boolean),data:$.types.optional(sS(),{tree:"",msa:"",treeMetadata:""}),featureFilters:$.types.map($.types.boolean),relativeTo:$.types.maybe($.types.string)})).volatile(()=>({headerHeight:0,status:void 0,highResScaleFactor:2,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,nref:0,minimapHeight:56,conservationTrackHeight:40,marginLeft:20,error:void 0,interProAnnotations:void 0})).actions(e=>({drawRelativeTo(t){e.relativeTo=t},setHideGaps(t){e.hideGaps=t},setAllowedGappyness(t){e.allowedGappyness=t},setLoadingMSA(t){e.loadingMSA=t},setLoadingTree(t){e.loadingTree=t},setWidth(t){e.volatileWidth=t},setHeight(t){e.height=t},setError(t){e.error=t},setMousePos(t,r){e.mouseCol=t,e.mouseRow=r},setHoveredTreeNode(t){if(!t){e.hoveredTreeNode=void 0;return}let r=ps(e.hierarchy,o=>o.data.id===t);if(!r){e.hoveredTreeNode=void 0;return}let n=hs(r).map(o=>o.data.name);e.hoveredTreeNode={nodeId:t,descendantNames:n}},setHighlightedColumns(t){e.highlightedColumns=t},setShowDomains(t){e.showDomains=t},setSubFeatureRows(t){e.subFeatureRows=t},setMouseClickPos(t,r){e.mouseClickCol=t,e.mouseClickRow=r},setRowHeight(t){e.rowHeight=t},setColWidth(t){e.colWidth=t},setScrollY(t){e.scrollY=t},setCurrentAlignment(t){e.currentAlignment=t},toggleCollapsed(t){e.collapsed.includes(t)?e.collapsed.remove(t):e.collapsed.push(t)},setShowOnly(t){e.showOnly=t},setData(t){e.data=(0,$.cast)(t)},setMSAFilehandle(t){e.msaFilehandle=t},setTreeFilehandle(t){e.treeFilehandle=t},setGFFFilehandle(t){e.gffFilehandle=t},setMSA(t){e.data.setMSA(t)},setTree(t){e.data.setTree(t)},setTreeMetadata(t){e.data.setTreeMetadata(t)}})).views(e=>({get hideGapsEffective(){return e.hideGaps&&(e.collapsed.length>0||e.allowedGappyness<100)},get realAllowedGappyness(){return this.hideGapsEffective?e.allowedGappyness:100},get actuallyShowDomains(){return e.showDomains&&!!e.interProAnnotations},get viewInitialized(){return e.volatileWidth!==void 0},get width(){if(e.volatileWidth===void 0)throw new Error("not initialized");return e.volatileWidth}})).views(e=>({extraViewMenuItems(){return[]},get colorScheme(){return ai[e.colorSchemeName]},get header(){return this.MSA?.getHeader()||{}},get alignmentNames(){return this.MSA?.alignmentNames||[]},get noTree(){return!!this.tree.noTree},get noDomains(){return!e.interProAnnotations},menuItems(){return[]},get treeMetadata(){return e.data.treeMetadata?JSON.parse(e.data.treeMetadata):{}},get MSA(){let t=e.data.msa;return t?gm(t,e.currentAlignment):null},get numColumns(){return(this.MSA?.getWidth()||0)-this.blanks.length},get tree(){let t=e.data.tree;return t?gi(t.startsWith("BioTreeContainer")?rS(ES(t)):io(t.startsWith("SEQ")?sl(t).tree:t)):this.MSA?.getTree()||{noTree:!0,children:[],id:"empty",name:"empty"}},get rowNames(){return this.leaves.map(t=>t.data.name)},get mouseOverRowName(){let{mouseRow:t}=e;return t===void 0?void 0:this.rowNames[t]},get hoveredInsertion(){let{mouseCol:t,mouseRow:r}=e;if(t===void 0||r===void 0)return;let n=this.rowNames[r];if(!n)return;let o=this.insertionPositions.get(n);if(!o)return;let i=o.find(s=>s.pos===t);if(i)return{rowName:n,col:t,letters:i.letters}},get root(){let t=kb(this.tree,r=>r.children);if(Nb(t,r=>r.children.length>0?0:1),Lb(t,(r,n)=>(r.data.length??1)-(n.data.length??1)),e.showOnly){let r=ps(t,n=>n.data.id===e.showOnly);r&&(t=r)}for(let r of e.collapsed){let n=ps(t,o=>o.data.id===r);n&&(n.children?Pb(n):n.parent?.children&&(n.parent.children=n.parent.children.filter(o=>o.data.id!==r)))}return t},get msaAreaWidth(){return e.width-e.treeAreaWidth},get treeAreaWidthMinusMargin(){return e.treeAreaWidth-e.marginLeft},get blanks(){let{hideGapsEffective:t,realAllowedGappyness:r}=e;if(!t)return[];let n=this.leaves.map(l=>this.MSA?.getRow(l.data.name)).filter(qe.notEmpty);if(n.length===0)return[];let o=n[0].length,i=n.length,s=Math.ceil(r/100*i),a=new Uint16Array(o);for(let l=0;l<i;l++){let A=n[l];for(let u=0;u<o;u++)A.charCodeAt(u)-45>>>0<=1&&a[u]++}let c=[];for(let l=0;l<o;l++)a[l]>=s&&c.push(l);return c},get blanksSet(){return new Set(this.blanks)},get insertionPositions(){let{hideGapsEffective:t}=e,{blanks:r,rows:n}=this,o=r.length;if(o===0||!t)return new Map;let i=new Map;for(let[s,a]of n){let c=[],l=0,A=0,u=-1,m=[],d=a.length;for(let p=0;p<d;p++)A<o&&r[A]===p?(a.charCodeAt(p)-45>>>0<=1||(u===l?m.push(a[p]):(m.length>0&&c.push({pos:u,letters:m.join("")}),u=l,m=[a[p]])),A++):l++;m.length>0&&c.push({pos:u,letters:m.join("")}),c.length>0&&i.set(s,c)}return i},get rows(){let t=this.MSA;return this.leaves.map(r=>[r.data.name,t?.getRow(r.data.name)]).filter(r=>!!r[1])},get numRows(){return this.rows.length},get rowMap(){return new Map(this.rows)},get columns(){return Object.fromEntries(this.rows.map((t,r)=>[t[0],this.columns2d[r]]))},get columns2d(){let{hideGapsEffective:t}=e;return this.rows.map(r=>r[1]).map(r=>t?hf(this.blanks,r):r)},get fontSize(){return Math.min(Math.max(6,e.rowHeight-3),18)},get colStats(){let t=[],r=this.columns2d;for(let n of r)for(let o=0;o<n.length;o++){let i=t[o]||{},s=n[o];i[s]||(i[s]=0),i[s]++,t[o]=i}return t},get colStatsSums(){return this.colStats.map(t=>(0,qe.sum)(Object.values(t)))},get sequenceType(){let t=new Set;for(let s of this.colStats)for(let a of Object.keys(s)){let c=a.toUpperCase();c!=="-"&&c!=="."&&t.add(c)}let r=new Set(["A","C","G","T","N"]),n=new Set(["A","C","G","U","N"]),o=[...t].every(s=>r.has(s)),i=[...t].every(s=>n.has(s));return o&&!t.has("U")?"dna":i&&!t.has("T")?"rna":"amino"},get colConsensus(){let{colStats:t,colStatsSums:r}=this;return t.map((n,o)=>{let i=r[o],s=0,a="";for(let l in n){let A=n[l];A>s&&l!=="-"&&l!=="."&&(s=A,a=l)}let c=s/i;return{letter:a,color:c>.4?`hsl(240, 30%, ${100*Math.max(1-c/3,.3)}%)`:void 0}})},get colClustalX(){let{colStats:t,colStatsSums:r}=this;return t.map((n,o)=>{let i=r[o],s={},a=n.W??0,c=n.L??0,l=n.V??0,A=n.I??0,u=n.M??0,m=n.A??0,d=n.F??0,p=n.C??0,C=n.H??0,y=n.P??0,I=n.R??0,h=n.K??0,x=n.Q??0,w=n.E??0,Q=n.D??0,S=n.T??0,M=n.S??0,F=n.G??0,D=n.Y??0,re=n.N??0,v=a+c+l+A+u+m+d+p+C+y+D,H=h+I,q=x+w,O=w+Q,xe=S+M;return v/i>.6&&(s.W="rgb(128,179,230)",s.L="rgb(128,179,230)",s.V="rgb(128,179,230)",s.A="rgb(128,179,230)",s.I="rgb(128,179,230)",s.M="rgb(128,179,230)",s.F="rgb(128,179,230)",s.C="rgb(128,179,230)"),(H/i>.6||h/i>.8||I/i>.8||x/i>.8)&&(s.K="#d88",s.R="#d88"),(H/i>.6||q/i>.5||w/i>.8||x/i>.8||Q/i>.8)&&(s.E="rgb(192, 72, 192)"),(H/i>.6||O/i>.5||h/i>.8||I/i>.8||x/i>.8)&&(s.D="rgb(204, 77, 204)"),(re/i>.5||D/i>.85)&&(s.N="#8f8"),(H/i>.6||q/i>.6||x/i>.85||w/i>.85||h/i>.85||I/i>.85)&&(s.Q="#8f8"),(v/i>.6||xe/i>.5||M/i>.85||S/i>.85)&&(s.S="rgb(26,204,26)",s.T="rgb(26,204,26)"),p/i>.85&&(s.C="rgb(240, 128, 128)"),F/i>0&&(s.G="rgb(240, 144, 72)"),y/i>0&&(s.P="rgb(204, 204, 0)"),(v/i>.6||a/i>.85||D/i>.85||m/i>.85||p/i>.85||y/i>.85||x/i>.85||d/i>.85||C/i>.85||A/i>.85||c/i>.85||u/i>.85||l/i>.85)&&(s.H="rgb(26, 179, 179)",s.Y="rgb(26, 179, 179)"),s})},get conservation(){let{colStats:t,colStatsSums:r,sequenceType:n}=this,i=Math.log2(n==="amino"?20:4);return t.map((s,a)=>{let c=r[a];if(!c)return 0;let l=(s["-"]||0)+(s["."]||0),A=c-l;if(A===0)return 0;let u={};for(let C of Object.keys(s)){if(C==="-"||C===".")continue;let y=C.toUpperCase();u[y]=(u[y]||0)+s[C]}let m=0;for(let C of Object.keys(u)){let y=u[C]/A;y>0&&(m-=y*Math.log2(y))}let d=l/c;return Math.max(0,1-m/i)*(1-d)})},get hierarchy(){let t=this.root;return Rb(t,this.totalHeight,e.treeWidth),t.data.length=0,Kf(t,0,e.treeWidth/$f(t)),t},get totalHeight(){return hs(this.root).length*e.rowHeight},get leaves(){return hs(this.hierarchy)},get allBranchesLength0(){return zc(this.hierarchy).every(t=>!t.source.data.length)},get showBranchLenEffective(){return this.allBranchesLength0?!1:e.showBranchLen}})).views(e=>({get totalWidth(){return e.numColumns*e.colWidth}})).views(e=>({get dataInitialized(){return(e.data.msa||e.data.tree)&&!e.error},get blocksX(){return JB({viewportWidth:e.msaAreaWidth,viewportX:-e.scrollX,blockSize:e.blockSize,mapWidth:e.totalWidth})},get blocksY(){return jB({viewportHeight:e.height,viewportY:-e.scrollY,blockSize:e.blockSize,mapHeight:e.totalHeight})}})).views(e=>({get blocks2d(){return e.blocksY.flatMap(t=>e.blocksX.map(r=>[r,t]))},get isLoading(){return e.loadingMSA||e.loadingTree},get maxScrollX(){return Math.min(-e.totalWidth+(e.msaAreaWidth-100),0)},get showMsaLetters(){return e.drawMsaLetters&&e.rowHeight>=5&&e.colWidth>e.rowHeight/2},get showTreeText(){return e.drawLabels&&e.rowHeight>=5}})).actions(e=>({setDrawMsaLetters(t){e.drawMsaLetters=t},calculateNeighborJoiningTreeFromMSA(){if(e.rows.length<2)throw new Error("Need at least 2 sequences to build a tree");let t=hS(e.rows);e.setTree(t)},resetZoom(){e.setColWidth(12),e.setRowHeight(16)},zoomOutHorizontal(){e.colWidth=Math.max(1,Math.floor(e.colWidth*.75)),e.scrollX=(0,qe.clamp)(e.scrollX,e.maxScrollX,0)},zoomInHorizontal(){e.colWidth=Math.ceil(e.colWidth*1.5),e.scrollX=(0,qe.clamp)(e.scrollX,e.maxScrollX,0)},zoomInVertical(){e.rowHeight=Math.ceil(e.rowHeight*1.5)},zoomOutVertical(){e.rowHeight=Math.max(1.5,Math.floor(e.rowHeight*.75))},zoomIn(){(0,qt.transaction)(()=>{e.colWidth=Math.ceil(e.colWidth*1.5),e.rowHeight=Math.ceil(e.rowHeight*1.5),e.scrollX=(0,qe.clamp)(e.scrollX,e.maxScrollX,0)})},zoomOut(){(0,qt.transaction)(()=>{e.colWidth=Math.max(1,Math.floor(e.colWidth*.75)),e.rowHeight=Math.max(1.5,Math.floor(e.rowHeight*.75)),e.scrollX=(0,qe.clamp)(e.scrollX,e.maxScrollX,0)})},doScrollY(t){e.scrollY=(0,qe.clamp)(e.scrollY+t,-e.totalHeight+10,0)},setInterProAnnotations(t){e.interProAnnotations=t},applyGFFText(t){let r=al(t),n=cl(r);e.interProAnnotations=n,e.setShowDomains(!0)},doScrollX(t){this.setScrollX(e.scrollX+t)},setScrollX(t){e.scrollX=(0,qe.clamp)(t,e.maxScrollX,0)},toggleTrack(t){e.turnedOffTracks.has(t)?e.turnedOffTracks.delete(t):e.turnedOffTracks.set(t,!0)},setStatus(t){e.status=t}})).views(e=>({get labelsWidth(){let{rowHeight:t,leaves:r,treeMetadata:n,fontSize:o}=e;return t<=5?0:r.reduce((i,s)=>Math.max(i,oS(n[s.data.name]?.genome||s.data.name,o)),0)},get secondaryStructureConsensus(){return e.MSA?.secondaryStructureConsensus},get seqConsensus(){return e.MSA?.seqConsensus},get adapterTrackModels(){let{rowHeight:t,MSA:r,hideGapsEffective:n,blanks:o}=e;return(r?.tracks??[]).filter(s=>!!s.data).map(s=>({model:{...s,data:n&&s.data?hf(o,s.data):s.data,height:t},ReactComponent:XB}))},get tracks(){let t={model:{id:"conservation",name:"Conservation",height:e.conservationTrackHeight},ReactComponent:zB};return[...this.adapterTrackModels,t]},get turnedOnTracks(){return this.tracks.filter(t=>!e.turnedOffTracks.has(t.model.id))},get showHorizontalScrollbar(){return e.msaAreaWidth<e.totalWidth},get rowNamesSet(){return new Map(e.rowNames.map((t,r)=>[t,r]))},visibleColToRowLetter(t,r){let{rowMap:n,blanks:o}=e;return n.get(t)?.[Dm(o,r)]},visibleColToSeqPos(t,r){return yS({rowName:t,visibleCol:r,rowMap:e.rowMap,blanks:e.blanks})},visibleColToSeqPosOneBased(t,r){let n=this.visibleColToSeqPos(t,r);return n!==void 0?n+1:void 0},globalColToVisibleCol(t){let{blanks:r,hideGapsEffective:n}=e;return n?xS(r,t):t},seqPosToGlobalCol(t,r){let{rows:n}=e,o=this.rowNamesSet.get(t);return o!==void 0&&n[o]?bS({row:n[o][1],seqPos:r}):0},seqPosToVisibleCol(t,r){let n=this.seqPosToGlobalCol(t,r);return this.globalColToVisibleCol(n)}})).views(e=>({get hoveredCell(){let{mouseCol:t,mouseRow:r}=e;if(t===void 0||r===void 0)return;let n=e.rowNames[r];if(!n)return;let i=e.columns[n]?.[t],s=e.visibleColToSeqPosOneBased(n,t);return{rowName:n,col:t,base:i,seqPos:s}},get msaAreaHeight(){return e.height-(e.showHorizontalScrollbar?e.minimapHeight:0)-e.headerHeight},get totalTrackAreaHeight(){return(0,qe.sum)(e.turnedOnTracks.map(t=>t.model.height))},get tidyInterProAnnotationTypes(){return new Map(this.tidyInterProAnnotations.map(t=>[t.accession,t]))},get tidyInterProAnnotations(){let{interProAnnotations:t}=e;return t?Object.entries(t).flatMap(([r,n])=>n.matches.flatMap(({signature:o,locations:i})=>o.entry?i.map(({start:s,end:a})=>({id:r,name:o.entry.name,accession:o.entry.accession,description:o.entry.description,start:s,end:a})):[])).toSorted((r,n)=>Cf(n)-Cf(r)):[]},get tidyFilteredInterProAnnotations(){return this.tidyInterProAnnotations.filter(t=>e.featureFilters.get(t.accession))},get tidyFilteredGatheredInterProAnnotations(){return(0,qe.groupBy)(this.tidyFilteredInterProAnnotations,t=>t.id)}})).views(e=>({get showVerticalScrollbar(){return e.msaAreaHeight<e.totalHeight}})).views(e=>({get verticalScrollbarWidth(){return e.showVerticalScrollbar?20:0},get fillPalette(){return eS([...e.tidyInterProAnnotationTypes.keys()])},get strokePalette(){return Object.fromEntries(Object.entries(this.fillPalette).map(([t,r])=>[t,xt(r).darken(.1).toHex()]))},getRowData(t){return{data:e.MSA?.getRowData(t),treeMetadata:e.treeMetadata[t]}}})).actions(e=>({setHeaderHeight(t){e.headerHeight=t},setConservationTrackHeight(t){e.conservationTrackHeight=t},reset(){e.setData({tree:"",msa:""}),e.resetZoom(),e.setError(void 0),e.setScrollY(0),e.setScrollX(0),e.setCurrentAlignment(0),e.setTreeFilehandle(void 0),e.setMSAFilehandle(void 0),e.setGFFFilehandle(void 0),e.setInterProAnnotations({}),e.setShowDomains(!1)},async exportSVG(t){let{renderToSvg:r}=await Promise.resolve().then(()=>(OS(),PS)),n=await r(e,t),o=new Blob([n],{type:"image/svg+xml"});SS(o,"image.svg")},incrementRef(){e.nref++},initFilter(t){e.featureFilters.get(t)===void 0&&e.featureFilters.set(t,!0)},setFilter(t,r){e.featureFilters.set(t,r)},fit(){e.rowHeight=e.msaAreaHeight/e.numRows,e.colWidth=e.msaAreaWidth/e.numColumns,e.scrollX=0,e.scrollY=0},fitVertically(){e.rowHeight=e.msaAreaHeight/e.numRows,e.scrollY=0},fitHorizontally(){e.colWidth=e.msaAreaWidth/e.numColumns,e.scrollX=0},afterCreate(){(0,$.addDisposer)(e,(0,qt.autorun)(()=>{for(let t of e.tidyInterProAnnotationTypes.keys())this.initFilter(t)})),(0,$.addDisposer)(e,(0,qt.autorun)(async()=>{let{treeFilehandle:t}=e;if(t)try{e.setLoadingTree(!0),e.setTree(await(0,qe.fetchAndMaybeUnzipText)((0,ys.openLocation)(t))),t.locationType==="BlobLocation"&&e.setTreeFilehandle(void 0)}catch(r){console.error(r),e.setError(r)}finally{e.setLoadingTree(!1)}})),(0,$.addDisposer)(e,(0,qt.autorun)(async()=>{let{treeMetadataFilehandle:t}=e;if(t)try{e.setTreeMetadata(await(0,qe.fetchAndMaybeUnzipText)((0,ys.openLocation)(t)))}catch(r){console.error(r),e.setError(r)}})),(0,$.addDisposer)(e,(0,qt.autorun)(()=>{let t=e.data.gff;if(t)try{e.applyGFFText(t)}catch(r){console.error(r),e.setError(r)}})),(0,$.addDisposer)(e,(0,qt.autorun)(async()=>{let{gffFilehandle:t}=e;if(t)try{let r=await(0,qe.fetchAndMaybeUnzipText)((0,ys.openLocation)(t));e.applyGFFText(r),t.locationType==="BlobLocation"&&e.setGFFFilehandle(void 0)}catch(r){console.error(r),e.setError(r)}})),(0,$.addDisposer)(e,(0,qt.autorun)(async()=>{let{msaFilehandle:t}=e;if(t)try{e.setLoadingMSA(!0),e.setError(void 0);let r=await(0,qe.fetchAndMaybeUnzipText)((0,ys.openLocation)(t));(0,qt.transaction)(()=>{e.setMSA(r),t.locationType==="BlobLocation"&&e.setMSAFilehandle(void 0)})}catch(r){console.error(r),e.setError(r)}finally{e.setLoadingMSA(!1)}})),(0,$.addDisposer)(e,(0,qt.autorun)(()=>{e.colorSchemeName.includes("dynamic")&&(e.colStats,e.colStatsSums),e.columns})),(0,$.addDisposer)(e,(0,qt.autorun)(()=>{e.setTreeWidth(Math.max(50,e.treeAreaWidth-e.labelsWidth-10-e.marginLeft))}))}})).postProcessSnapshot(e=>{let t=e,{data:{tree:r,msa:n,treeMetadata:o},showDomains:i,hideGaps:s,allowedGappyness:a,subFeatureRows:c,drawMsaLetters:l,height:A,rowHeight:u,scrollY:m,scrollX:d,colWidth:p,currentAlignment:C,collapsed:y,showOnly:I,turnedOffTracks:h,featureFilters:x,relativeTo:w,bgColor:Q,colorSchemeName:S,drawLabels:M,labelsAlignRight:F,treeAreaWidth:D,treeWidth:re,showBranchLen:v,drawTree:H,drawNodeBubbles:q,...O}=t,Br=Object.fromEntries(Object.entries({showDomains:!1,hideGaps:!0,allowedGappyness:100,subFeatureRows:!1,drawMsaLetters:!0,height:550,rowHeight:16,scrollY:0,scrollX:0,colWidth:12,currentAlignment:0,bgColor:!0,colorSchemeName:Al,drawLabels:!0,labelsAlignRight:!1,treeAreaWidth:400,treeWidth:300,showBranchLen:!0,drawTree:!0,drawNodeBubbles:!0}).filter(([Ur,cn])=>t[Ur]!==cn).map(([Ur])=>[Ur,t[Ur]]));return{...O,data:{...e.treeFilehandle?{}:{tree:r},...e.msaFilehandle?{}:{msa:n},...e.treeMetadataFilehandle?{}:{treeMetadata:o}},...Br,...y?.length?{collapsed:y}:{},...I!==void 0?{showOnly:I}:{},...h&&Object.keys(h).length>0?{turnedOffTracks:h}:{},...x&&Object.keys(x).length>0?{featureFilters:x}:{},...w!==void 0?{relativeTo:w}:{}}})}var qe,ys,co,$,qt,ml,Pm=g(()=>{qe=f(ge(),1),ys=f(xB(),1),co=f(wB(),1),$=f(Dt(),1);wc();qt=f($r(),1);qB();VB();Sc();$B();ZB();ul();tS();nS();Xf();iS();aS();AS();mS();gS();CS();IS();wS();BS();xn();QS();ml=Hk});var Om,Uk,qk,zS=g(()=>{Om=f(b(),1),Uk=f(EB(),1),qk=f(Du(),1);Pm();om()});var Gm=g(()=>{om();zS();Pm()});function Zk(e){let t=e;return t.type==="ProteinView"&&Array.isArray(t.structures)}function Mn(e){return e.filter(Zk)}function pl(e,t){if(t<0||t>=e.length)return;let r=0;for(let n=0;n<t;n++)e[n]!=="-"&&r++;if(e[t]!=="-")return r}function iQ(e,t){let r=0;for(let n=0;n<e.length;n++)if(e[n]!=="-"){if(r===t)return n;r++}}var bs=g(()=>{"use strict"});var MQ={};Je(MQ,{default:()=>lN});var ae,hl,BQ,Ee,SQ,QQ,aN,cN,lN,vQ=g(()=>{"use strict";ae=f(b()),hl=f(ye()),BQ=f(ge()),Ee=f(_()),SQ=f(R()),QQ=f(be());bs();aN=(0,QQ.makeStyles)()(e=>({formControl:{marginBottom:e.spacing(2)}})),cN=(0,SQ.observer)(function({model:t,handleClose:r}){let{classes:n}=aN(),o=(0,BQ.getSession)(t),[i,s]=(0,ae.useState)(""),[a,c]=(0,ae.useState)(0),[l,A]=(0,ae.useState)(t.querySeqName),[u,m]=(0,ae.useState)(),d=Mn(o.views),C=d.find(h=>h.id===i)?.structures??[],y=t.rows.map(h=>h[0]),I=()=>{if(!i){m("Please select a protein view");return}try{t.connectToStructure(i,a,l),r()}catch(h){m(h instanceof Error?h.message:String(h))}};return ae.default.createElement(hl.Dialog,{maxWidth:"sm",title:"Connect to Protein Structure",open:!0,onClose:r},ae.default.createElement(Ee.DialogContent,null,d.length===0?ae.default.createElement(Ee.Typography,{color:"textSecondary"},"No protein views are currently open. Please open a protein structure view first."):ae.default.createElement(ae.default.Fragment,null,ae.default.createElement(Ee.FormControl,{fullWidth:!0,className:n.formControl},ae.default.createElement(Ee.InputLabel,null,"Protein View"),ae.default.createElement(Ee.Select,{value:i,label:"Protein View",onChange:h=>{s(h.target.value),c(0)}},d.map(h=>ae.default.createElement(Ee.MenuItem,{key:h.id,value:h.id},h.displayName??`ProteinView ${h.id}`)))),C.length>1?ae.default.createElement(Ee.FormControl,{fullWidth:!0,className:n.formControl},ae.default.createElement(Ee.InputLabel,null,"Structure"),ae.default.createElement(Ee.Select,{value:a,label:"Structure",onChange:h=>{c(h.target.value)}},C.map((h,x)=>ae.default.createElement(Ee.MenuItem,{key:x,value:x},h.url??`Structure ${x+1}`)))):null,ae.default.createElement(Ee.FormControl,{fullWidth:!0,className:n.formControl},ae.default.createElement(Ee.InputLabel,null,"MSA Row"),ae.default.createElement(Ee.Select,{value:l,label:"MSA Row",onChange:h=>{A(h.target.value)}},y.map(h=>ae.default.createElement(Ee.MenuItem,{key:h,value:h},h)))),u?ae.default.createElement(hl.ErrorMessage,{error:u}):null)),ae.default.createElement(Ee.DialogActions,null,ae.default.createElement(Ee.Button,{onClick:r},"Cancel"),ae.default.createElement(Ee.Button,{onClick:I,variant:"contained",disabled:d.length===0||!i},"Connect")))}),lN=cN});var Qs,kQ,Cl,NQ=g(()=>{"use strict";Qs=f(b()),kQ=f(ye()),Cl=class extends Qs.Component{constructor(t){super(t),this.state={hasError:!1,error:null}}static getDerivedStateFromError(t){return{hasError:!0,error:t}}componentDidCatch(t,r){console.error("MsaViewPanel error:",t,r.componentStack)}render(){return this.state.hasError?Qs.default.createElement("div",{style:{padding:20}},Qs.default.createElement(kQ.ErrorMessage,{error:this.state.error})):this.props.children}}});function uN({baseUrl:e,rid:t}){return Jm.default.createElement(LQ.Typography,null,"RID ",t," (",Jm.default.createElement(Pn,{href:`${e}?CMD=Get&RID=${t}`},"see status"),")")}var Jm,LQ,Vm,FQ=g(()=>{"use strict";Jm=f(b()),LQ=f(_());Ia();Vm=uN});function fN({baseUrl:e,rid:t,error:r}){return ir.default.createElement("div",null,t?ir.default.createElement(Vm,{rid:t,baseUrl:e}):null,ir.default.createElement(El.ErrorMessage,{error:r}))}function mN({baseUrl:e,rid:t,progress:r}){let{classes:n}=OQ();return ir.default.createElement("div",{className:n.loading},t?ir.default.createElement(Vm,{baseUrl:e,rid:t}):null,ir.default.createElement(Ym.Typography,null,r))}var ir,El,Ym,RQ,PQ,OQ,dN,GQ,HQ=g(()=>{"use strict";ir=f(b()),El=f(ye()),Ym=f(_()),RQ=f(R()),PQ=f(be());FQ();OQ=(0,PQ.makeStyles)()(e=>({margin:{padding:20},loading:{background:e.palette.background.paper}}));dN=(0,RQ.observer)(function({model:t,baseUrl:r}){let{progress:n,rid:o,error:i}=t,{classes:s}=OQ();return ir.default.createElement("div",{className:s.margin},ir.default.createElement(El.LoadingEllipses,{message:"Running NCBI BLAST",variant:"h5"}),i?ir.default.createElement(fN,{baseUrl:r,rid:o,error:i}):o?ir.default.createElement(mN,{baseUrl:r,rid:o,progress:n}):ir.default.createElement(Ym.Typography,null,n||"Initializing BLAST query"))}),GQ=dN});var JQ={};Je(JQ,{default:()=>hN});var lo,UQ,qQ,jQ,gN,pN,hN,VQ=g(()=>{"use strict";lo=f(b()),UQ=f(ye()),qQ=f(R());Gm();jQ=f(be());NQ();HQ();gN=(0,jQ.makeStyles)()({loadingContainer:{padding:20}}),pN=(0,qQ.observer)(function({model:t}){let{classes:r}=gN(),{blastParams:n,loadingStoredData:o}=t;return lo.default.createElement(Cl,null,lo.default.createElement("div",null,n?lo.default.createElement(GQ,{model:t,baseUrl:n.baseUrl}):o?lo.default.createElement("div",{className:r.loadingContainer},lo.default.createElement(UQ.LoadingEllipses,{message:"Loading MSA data",variant:"h6"})):lo.default.createElement(ol,{model:t})))}),hN=pN});var EN={};Je(EN,{default:()=>Il});var $Q=f(ud()),zm=f(go()),KQ=f(ge()),$m=f(Dt());Y();var Cd=f(L(),1),Ed=(0,T.createSvgIcon)((0,Cd.jsx)("path",{d:"M20 2H4c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2M8 20H4v-4h4zm0-6H4v-4h4zm0-6H4V4h4zm6 12h-4v-4h4zm0-6h-4v-4h4zm0-6h-4V4h4zm6 12h-4v-4h4zm0-6h-4v-4h4zm0-6h-4V4h4z"}),"GridOn");var _d=f(b()),Dd=f(ge());var bi=f(b()),vd=f(R());var vl=f(b()),bd=f(ge()),Tl=f(R());var wd=f(be());function Ls(e){return!!e&&typeof e=="object"&&"hoverPosition"in e&&!!e.hoverPosition}var Fs=(0,wd.makeStyles)()({highlight:{height:"100%",background:"rgba(255,255,0,0.2)",border:"1px solid rgba(50,50,0,0.2)",position:"absolute",zIndex:99,textAlign:"center",pointerEvents:"none",overflow:"hidden"}});var u1=(0,Tl.observer)(function({model:e}){let{hovered:t,views:r}=(0,bd.getSession)(e);return r.some(o=>o.type==="MsaView")&&Ls(t)?vl.default.createElement(f1,{model:e,hovered:t}):null}),f1=(0,Tl.observer)(function({model:e,hovered:t}){let{classes:r}=Fs(),{offsetPx:n}=e,{coord:o,refName:i}=t.hoverPosition,s=e.bpToPx({refName:i,coord:o-1}),a=e.bpToPx({refName:i,coord:o});if(s&&a){let c=Math.max(Math.abs(a.offsetPx-s.offsetPx),4),l=Math.min(s.offsetPx,a.offsetPx)-n;return vl.default.createElement("div",{className:r.highlight,style:{left:l,width:c}})}return null}),Bd=u1;var wi=f(b()),_l=f(ge()),Dl=f(R());function Sd(e){return!!e&&typeof e=="object"&&"hoverFeature"in e&&"hoverPosition"in e&&!!e.hoverPosition}function Rs({assemblyManager:e,assemblyNames:t,refName:r}){let n=t?.[0];return n?e.get(n)?.getCanonicalRefName(r)??r:r}function Qd(e){return/AF-([A-Z0-9]+)-F\d+/.exec(e)?.[1]}var m1=(0,Dl.observer)(function({model:t}){let{views:r,hovered:n}=(0,_l.getSession)(t),i=r.find(s=>s.type==="MsaView")?.connectedHighlights;return!Ls(n)&&i?.length?wi.default.createElement(d1,{model:t,highlights:Array.from(i)}):null}),d1=(0,Dl.observer)(function({model:e,highlights:t}){let{classes:r}=Fs(),{assemblyManager:n}=(0,_l.getSession)(e),{offsetPx:o}=e;return wi.default.createElement(wi.default.Fragment,null,t.map((i,s)=>{let a=Rs({assemblyManager:n,assemblyNames:e.assemblyNames,refName:i.refName}),c=e.bpToPx({refName:a,coord:i.start}),l=e.bpToPx({refName:a,coord:i.end});if(c&&l){let A=Math.max(Math.abs(l.offsetPx-c.offsetPx),4),u=Math.min(c.offsetPx,l.offsetPx)-o;return wi.default.createElement("div",{key:`${i.refName}-${i.start}-${i.end}-${s}`,className:r.highlight,style:{left:u,width:A}})}return null}))}),Md=m1;var g1=(0,vd.observer)(function({model:t}){return bi.default.createElement(bi.default.Fragment,null,bi.default.createElement(Md,{model:t}),bi.default.createElement(Bd,{model:t}))}),Td=g1;function kl(e){e.addToExtensionPoint("LinearGenomeView-TracksContainerComponent",(t,{model:r})=>{let{views:n}=(0,Dd.getSession)(r);return n.some(i=>i.type==="MsaView")?[...t,_d.default.createElement(Td,{key:"highlight_protein_viewer_msaview",model:r})]:t})}var mg=f(Nl());var Nd=f(go());function Ll(e){let t=e.getAdapterType("BgzipFastaAdapter");return(0,Nd.ConfigurationSchema)("BgzipFastaMsaAdapter",{msaRegex:{type:"string",defaultValue:"_"}},{baseConfiguration:t?.configSchema})}function Xl(e){return e.addAdapterType(()=>new mg.AdapterType({name:"BgzipFastaMsaAdapter",configSchema:Ll(e),adapterMetadata:{hiddenFromGUI:!0},getAdapterClass:()=>Promise.resolve().then(()=>(fg(),ug)).then(t=>t.default)}))}var ka=f(ge());Y();var dg=f(L(),1),gg=(0,T.createSvgIcon)((0,dg.jsx)("path",{d:"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6z"}),"Add");var Qt=f(b()),Jh=f(ye()),Vh=f(ge()),Do=f(_());var X=f(b()),CA=f(ye()),tp=f(ge()),zt=f(_()),rp=f(R()),np=f(be());function Cg({session:e,newViewTitle:t,view:r,feature:n,msaFilehandle:o,treeFilehandle:i,querySeqName:s,data:a}){e.addView("MsaView",{type:"MsaView",displayName:t,connectedViewId:r.id,connectedFeature:n.toJSON(),msaFilehandle:o,treeFilehandle:i,querySeqName:s,data:a})}var Zl=f(b()),Eg=f(_());function w1({children:e,...t}){return Zl.default.createElement("div",null,Zl.default.createElement(Eg.TextField,{...t},e))}var Xe=w1;var Ys=f(ge());function Wt(e){return(0,Ys.getContainingView)(e)}function Ig(e){return[...new Set(e.filter(t=>!!t))]}function xg(e,t){return t.filter(r=>!!r).join(e)}function b1(e){let r=(e.get("subfeatures")??[]).filter(n=>(n.get("type")==="mRNA"||n.get("type")==="transcript")&&n.get("subfeatures")?.some(o=>o.get("type")==="CDS"));return r.length>0?r:[e]}function Vs(e){let t=(0,Ys.sum)(e.get("subfeatures")?.filter(r=>r.get("type")?.toLowerCase()==="cds").map(r=>r.get("end")-r.get("start"))??[]);return{len:Math.floor(t/3),mod:t%3}}function Dn(e){return e?.id()??""}function B1(e){return e?Ig([e.id(),e.get("name"),e.get("id"),e.get("transcript_id")]):[]}function Qi(e,t){return B1(e).includes(t)}function Ws(e){return e?xg(" ",[e.get("name"),e.get("id")]):""}function kn(e){return e?xg(" ",[e.get("gene_name")??e.get("name"),e.get("id")?`(${e.get("id")})`:void 0]):""}function zs(e,t){return`BLAST - ${kn(e)} - ${Ws(t)}`}function yg(e){return b1(e).toSorted((r,n)=>Vs(n).len-Vs(r).len)}function $s(e){return e.replaceAll("*","").replaceAll("&","")}function Ks(e){return Ig([e.id(),e.get("id"),e.get("name"),e.get("gene_id"),e.get("gene_name")])}var eA=f(b()),wg=f(ye()),bg=f(_()),Bg=f(be()),S1=(0,Bg.makeStyles)()({dialogContent:{width:"80em"}});function Ar({error:e,children:t}){let{classes:r}=S1();return eA.default.createElement(bg.DialogContent,{className:r.dialogContent},e?eA.default.createElement(wg.ErrorMessage,{error:e}):null,t)}var Xs=f(b()),Mi=f(_());function Yr({onSubmit:e,onCancel:t,submitDisabled:r,submitLabel:n="Submit",cancelLabel:o="Cancel"}){return Xs.default.createElement(Mi.DialogActions,null,Xs.default.createElement(Mi.Button,{color:"primary",variant:"contained",disabled:r,onClick:()=>{e()}},n),Xs.default.createElement(Mi.Button,{color:"secondary",variant:"contained",onClick:()=>{t()}},o))}var ur=f(b()),Eo=f(_()),Mg=f(be());var Sg=f(b()),Qg=f(be());var Q1=(0,Qg.makeStyles)()({textAreaFont:{fontFamily:"Courier New"}});function tA({value:e}){let{classes:t}=Q1();return Sg.default.createElement(Xe,{variant:"outlined",multiline:!0,minRows:5,maxRows:10,fullWidth:!0,value:e,slotProps:{input:{readOnly:!0,classes:{input:t.textAreaFont}}}})}var M1=(0,Mg.makeStyles)()({flex:{display:"flex"},minWidth:{minWidth:300},centered:{alignContent:"center",marginLeft:20}});function fr({feature:e,options:t,selectedId:r,selectedTranscript:n,setSelectedId:o,proteinSequence:i,validIds:s}){let{classes:a}=M1(),[c,l]=(0,ur.useState)(!1);return ur.default.createElement(ur.default.Fragment,null,ur.default.createElement("div",{className:a.flex},ur.default.createElement(Eo.TextField,{variant:"outlined",label:`Choose isoform of ${kn(e)}`,select:!0,className:a.minWidth,value:r,onChange:A=>{o(A.target.value)}},t.map(A=>{let u=s?s.some(p=>Qi(A,p)):!0,{len:m,mod:d}=Vs(A);return ur.default.createElement(Eo.MenuItem,{value:Dn(A),key:A.id(),disabled:!u},Ws(A)," (",m," aa)"," ",d?" (possible fragment)":"",s?u?" (has data)":" (no data)":"")})),ur.default.createElement("div",{className:a.centered},ur.default.createElement(Eo.Button,{variant:"contained",color:"primary",onClick:()=>{l(!c)}},c?"Hide sequence":"Show sequence"))),c?ur.default.createElement(tA,{value:i?`>${Ws(n)}
|
|
69
|
+
${i}`:"Loading..."}):null)}var ua=f(b());var un=f(ge());function v1(e,t){return e.map(r=>t.slice(r.start,r.end)).join("")}function T1({cds:e,sequence:t,codonTable:r}){let n=v1(e,t),o="";for(let i=0;i<n.length;i+=3)o+=r[n.slice(i,i+3)]??"&";return o}function _1(e,t){return e.map(r=>({...r,start:t-r.end,end:t-r.start})).toSorted((r,n)=>r.start-n.start)}function vg({feature:e,seq:t}){let{subfeatures:r,start:n,strand:o}=e.toJSON(),i=(0,un.dedupe)(r?.toSorted((s,a)=>s.start-a.start).map(s=>({...s,start:s.start-n,end:s.end-n})).filter(s=>s.type==="CDS")??[],s=>`${s.start}-${s.end}`);return T1({cds:o===-1?_1(i,t.length):i,sequence:o===-1?(0,un.revcom)(t):t,codonTable:(0,un.generateCodonTable)(un.defaultCodonTable)})}var Xg=f(ge());var He=f(b(),1),hA=f(kg(),1);var Ze=f(b(),1);var fn={};Je(fn,{ERROR_REVALIDATE_EVENT:()=>H1,FOCUS_EVENT:()=>Ng,MUTATE_EVENT:()=>Fg,RECONNECT_EVENT:()=>Lg});var Ng=0,Lg=1,Fg=2,H1=3;var Rg=Object.prototype.hasOwnProperty;function Zs(e,t){var r,n;if(e===t)return!0;if(e&&t&&(r=e.constructor)===t.constructor){if(r===Date)return e.getTime()===t.getTime();if(r===RegExp)return e.toString()===t.toString();if(r===Array){if((n=e.length)===t.length)for(;n--&&Zs(e[n],t[n]););return n===-1}if(!r||typeof e=="object"){n=0;for(r in e)if(Rg.call(e,r)&&++n&&!Rg.call(t,r)||!(r in t)||!Zs(e[r],t[r]))return!1;return Object.keys(t).length===n}}return e!==e&&t!==t}var mr=new WeakMap,dr=()=>{},Ge=dr(),xo=Object,J=e=>e===Ge,kt=e=>typeof e=="function",gr=(e,t)=>({...e,...t}),ia=e=>kt(e.then),nA={},ea={},AA="undefined",yo=typeof window!=AA,ra=typeof document!=AA,Og=yo&&"Deno"in window,Gg=()=>yo&&typeof window.requestAnimationFrame!=AA,sa=(e,t)=>{let r=mr.get(e);return[()=>!J(t)&&e.get(t)||nA,n=>{if(!J(t)){let o=e.get(t);t in ea||(ea[t]=o),r[5](t,gr(o,n),o||nA)}},r[6],()=>!J(t)&&t in ea?ea[t]:!J(t)&&e.get(t)||nA]},sA=!0,U1=()=>sA,[aA,cA]=yo&&window.addEventListener?[window.addEventListener.bind(window),window.removeEventListener.bind(window)]:[dr,dr],q1=()=>{let e=ra&&document.visibilityState;return J(e)||e!=="hidden"},j1=e=>(ra&&document.addEventListener("visibilitychange",e),aA("focus",e),()=>{ra&&document.removeEventListener("visibilitychange",e),cA("focus",e)}),J1=e=>{let t=()=>{sA=!0,e()},r=()=>{sA=!1};return aA("online",t),aA("offline",r),()=>{cA("online",t),cA("offline",r)}},Hg={isOnline:U1,isVisible:q1},Ug={initFocus:j1,initReconnect:J1},aa=!Ze.default.useId,mn=!yo||Og,uA=e=>Gg()?window.requestAnimationFrame(e):setTimeout(e,1),wo=mn?Ze.useEffect:Ze.useLayoutEffect,oA=typeof navigator<"u"&&navigator.connection,lA=!mn&&oA&&(["slow-2g","2g"].includes(oA.effectiveType)||oA.saveData),ta=new WeakMap,V1=e=>xo.prototype.toString.call(e),iA=(e,t)=>e===`[object ${t}]`,Y1=0,na=e=>{let t=typeof e,r=V1(e),n=iA(r,"Date"),o=iA(r,"RegExp"),i=iA(r,"Object"),s,a;if(xo(e)===e&&!n&&!o){if(s=ta.get(e),s)return s;if(s=++Y1+"~",ta.set(e,s),Array.isArray(e)){for(s="@",a=0;a<e.length;a++)s+=na(e[a])+",";ta.set(e,s)}if(i){s="#";let c=xo.keys(e).sort();for(;!J(a=c.pop());)J(e[a])||(s+=a+":"+na(e[a])+",");ta.set(e,s)}}else s=n?e.toJSON():t=="symbol"?e.toString():t=="string"?JSON.stringify(e):""+e;return s},Ti=e=>{if(kt(e))try{e=e()}catch{e=""}let t=e;return e=typeof e=="string"?e:(Array.isArray(e)?e.length:e)?na(e):"",[e,t]},W1=0,vi=()=>++W1;async function ca(...e){let[t,r,n,o]=e,i=gr({populateCache:!0,throwOnError:!0},typeof o=="boolean"?{revalidate:o}:o||{}),s=i.populateCache,a=i.rollbackOnError,c=i.optimisticData,l=m=>typeof a=="function"?a(m):a!==!1,A=i.throwOnError;if(kt(r)){let m=r,d=[],p=t.keys();for(let C of p)!/^\$(inf|sub)\$/.test(C)&&m(t.get(C)._k)&&d.push(C);return Promise.all(d.map(u))}return u(r);async function u(m){let[d]=Ti(m);if(!d)return;let[p,C]=sa(t,d),[y,I,h,x]=mr.get(t),w=()=>{let O=y[d];return(kt(i.revalidate)?i.revalidate(p().data,m):i.revalidate!==!1)&&(delete h[d],delete x[d],O&&O[0])?O[0](2).then(()=>p().data):p().data};if(e.length<3)return w();let Q=n,S,M=!1,F=vi();I[d]=[F,0];let D=!J(c),re=p(),v=re.data,H=re._c,q=J(H)?v:H;if(D&&(c=kt(c)?c(q,v):c,C({data:c,_c:q})),kt(Q))try{Q=Q(q)}catch(O){S=O,M=!0}if(Q&&ia(Q))if(Q=await Q.catch(O=>{S=O,M=!0}),F!==I[d][0]){if(M)throw S;return Q}else M&&D&&l(S)&&(s=!0,C({data:q,_c:Ge}));if(s&&!M)if(kt(s)){let O=s(Q,q);C({data:O,error:Ge,_c:Ge})}else C({data:Q,error:Ge,_c:Ge});if(I[d][1]=vi(),Promise.resolve(w()).then(()=>{C({_c:Ge})}),M){if(A)throw S;return}return Q}}var Pg=(e,t)=>{for(let r in e)e[r][0]&&e[r][0](t)},fA=(e,t)=>{if(!mr.has(e)){let r=gr(Ug,t),n=Object.create(null),o=ca.bind(Ge,e),i=dr,s=Object.create(null),a=(A,u)=>{let m=s[A]||[];return s[A]=m,m.push(u),()=>m.splice(m.indexOf(u),1)},c=(A,u,m)=>{e.set(A,u);let d=s[A];if(d)for(let p of d)p(u,m)},l=()=>{if(!mr.has(e)&&(mr.set(e,[n,Object.create(null),Object.create(null),Object.create(null),o,c,a]),!mn)){let A=r.initFocus(setTimeout.bind(Ge,Pg.bind(Ge,n,0))),u=r.initReconnect(setTimeout.bind(Ge,Pg.bind(Ge,n,1)));i=()=>{A&&A(),u&&u(),mr.delete(e)}}};return l(),[e,o,l,i]}return[e,mr.get(e)[4]]},z1=(e,t,r,n,o)=>{let i=r.errorRetryCount,s=o.retryCount,a=~~((Math.random()+.5)*(1<<(s<8?s:8)))*r.errorRetryInterval;!J(i)&&s>i||setTimeout(n,a,o)},qg=Zs,[la,jg]=fA(new Map),Aa=gr({onLoadingSlow:dr,onSuccess:dr,onError:dr,onErrorRetry:z1,onDiscarded:dr,revalidateOnFocus:!0,revalidateOnReconnect:!0,revalidateIfStale:!0,shouldRetryOnError:!0,errorRetryInterval:lA?1e4:5e3,focusThrottleInterval:5*1e3,dedupingInterval:2*1e3,loadingTimeout:lA?5e3:3e3,compare:qg,isPaused:()=>!1,cache:la,mutate:jg,fallback:{}},Hg),mA=(e,t)=>{let r=gr(e,t);if(t){let{use:n,fallback:o}=e,{use:i,fallback:s}=t;n&&i&&(r.use=n.concat(i)),o&&s&&(r.fallback=gr(o,s))}return r},oa=(0,Ze.createContext)({}),dA=e=>{let{value:t}=e,r=(0,Ze.useContext)(oa),n=kt(t),o=(0,Ze.useMemo)(()=>n?t(r):t,[n,r,t]),i=(0,Ze.useMemo)(()=>n?o:mA(r,o),[n,r,o]),s=o&&o.provider,a=(0,Ze.useRef)(Ge);s&&!a.current&&(a.current=fA(s(i.cache||la),o));let c=a.current;return c&&(i.cache=c[0],i.mutate=c[1]),wo(()=>{if(c)return c[2]&&c[2](),c[3]},[]),(0,Ze.createElement)(oa.Provider,gr(e,{value:i}))};var Jg="$inf$";var bo=f(b(),1);var Vg=yo&&window.__SWR_DEVTOOLS_USE__,$1=Vg?window.__SWR_DEVTOOLS_USE__:[],K1=()=>{Vg&&(window.__SWR_DEVTOOLS_REACT__=bo.default)},X1=e=>kt(e[1])?[e[0],e[1],e[2]||{}]:[e[0],null,(e[1]===null?e[2]:e[1])||{}],Z1=()=>{let e=(0,bo.useContext)(oa);return(0,bo.useMemo)(()=>gr(Aa,e),[e])};var e2=e=>(t,r,n)=>e(t,r&&((...i)=>{let[s]=Ti(t),[,,,a]=mr.get(la);if(s.startsWith(Jg))return r(...i);let c=a[s];return J(c)?r(...i):(delete a[s],c)}),n),t2=$1.concat(e2),Yg=e=>function(...r){let n=Z1(),[o,i,s]=X1(r),a=mA(n,s),c=e,{use:l}=a,A=(l||[]).concat(t2);for(let u=A.length;u--;)c=A[u](c);return c(o,i||a.fetcher||null,a)},Wg=(e,t,r)=>{let n=t[e]||(t[e]=[]);return n.push(r),()=>{let o=n.indexOf(r);o>=0&&(n[o]=n[n.length-1],n.pop())}};K1();var r2=()=>{},bF=r2();var gA=He.default.use||(e=>{switch(e.status){case"pending":throw e;case"fulfilled":return e.value;case"rejected":throw e.reason;default:throw e.status="pending",e.then(t=>{e.status="fulfilled",e.value=t},t=>{e.status="rejected",e.reason=t}),e}}),pA={dedupe:!0},zg=Promise.resolve(Ge),n2=()=>dr,o2=(e,t,r)=>{let{cache:n,compare:o,suspense:i,fallbackData:s,revalidateOnMount:a,revalidateIfStale:c,refreshInterval:l,refreshWhenHidden:A,refreshWhenOffline:u,keepPreviousData:m,strictServerPrefetchWarning:d}=r,[p,C,y,I]=mr.get(n),[h,x]=Ti(e),w=(0,He.useRef)(!1),Q=(0,He.useRef)(!1),S=(0,He.useRef)(h),M=(0,He.useRef)(t),F=(0,He.useRef)(r),D=()=>F.current,re=()=>D().isVisible()&&D().isOnline(),[v,H,q,O]=sa(n,h),xe=(0,He.useRef)({}).current,Br=J(s)?J(r.fallback)?Ge:r.fallback[h]:s,Ur=(K,ne)=>{for(let ce in xe){let le=ce;if(le==="data"){if(!o(K[le],ne[le])&&(!J(K[le])||!o(Sr,ne[le])))return!1}else if(ne[le]!==K[le])return!1}return!0},cn=!w.current,Ms=(0,He.useMemo)(()=>{let K=v(),ne=O(),ce=Me=>{let ft=gr(Me);return delete ft._k,(()=>{if(!h||!t||D().isPaused())return!1;if(cn&&!J(a))return a;let Jt=J(Br)?ft.data:Br;return i?J(Jt)||c:J(Jt)||c})()?{isValidating:!0,isLoading:!0,...ft}:ft},le=ce(K),Tt=K===ne?le:ce(ne),ut=le;return[()=>{let Me=ce(v());return Ur(Me,ut)?(ut.data=Me.data,ut.isLoading=Me.isLoading,ut.isValidating=Me.isValidating,ut.error=Me.error,ut):(ut=Me,Me)},()=>Tt]},[n,h]),qr=(0,hA.useSyncExternalStore)((0,He.useCallback)(K=>q(h,(ne,ce)=>{Ur(ce,ne)||K()}),[n,h]),Ms[0],Ms[1]),Le=p[h]&&p[h].length>0,jr=qr.data,me=J(jr)?Br&&ia(Br)?gA(Br):Br:jr,vn=qr.error,de=(0,He.useRef)(me),Sr=m?J(jr)?J(de.current)?me:de.current:jr:me,jt=h&&J(me),Bt=(0,He.useRef)(null);!mn&&(0,hA.useSyncExternalStore)(n2,()=>(Bt.current=!1,Bt),()=>(Bt.current=!0,Bt));let vs=Bt.current;d&&vs&&!i&&jt&&console.warn(`Missing pre-initiated data for serialized key "${h}" during server-side rendering. Data fetching should be initiated on the server and provided to SWR via fallback data. You can set "strictServerPrefetchWarning: false" to disable this warning.`);let Ao=!h||!t||D().isPaused()||Le&&!J(vn)?!1:cn&&!J(a)?a:i?J(me)?!1:c:J(me)||c,xi=cn&&Ao,Ts=J(qr.isValidating)?xi:qr.isValidating,Jr=J(qr.isLoading)?xi:qr.isLoading,sr=(0,He.useCallback)(async K=>{let ne=M.current;if(!h||!ne||Q.current||D().isPaused())return!1;let ce,le,Tt=!0,ut=K||{},Me=!y[h]||!ut.dedupe,ft=()=>aa?!Q.current&&h===S.current&&w.current:h===S.current,ar={isValidating:!1,isLoading:!1},Jt=()=>{H(ar)},_t=()=>{let mt=y[h];mt&&mt[1]===le&&delete y[h]},uo={isValidating:!0};J(v().data)&&(uo.isLoading=!0);try{if(Me&&(H(uo),r.loadingTimeout&&J(v().data)&&setTimeout(()=>{Tt&&ft()&&D().onLoadingSlow(h,r)},r.loadingTimeout),y[h]=[ne(x),vi()]),[ce,le]=y[h],ce=await ce,Me&&setTimeout(_t,r.dedupingInterval),!y[h]||y[h][1]!==le)return Me&&ft()&&D().onDiscarded(h),!1;ar.error=Ge;let mt=C[h];if(!J(mt)&&(le<=mt[0]||le<=mt[1]||mt[1]===0))return Jt(),Me&&ft()&&D().onDiscarded(h),!1;let Vt=v().data;ar.data=o(Vt,ce)?Vt:ce,Me&&ft()&&D().onSuccess(ce,h,r)}catch(mt){_t();let Vt=D(),{shouldRetryOnError:Tn}=Vt;Vt.isPaused()||(ar.error=mt,Me&&ft()&&(Vt.onError(mt,h,Vt),(Tn===!0||kt(Tn)&&Tn(mt))&&(!D().revalidateOnFocus||!D().revalidateOnReconnect||re())&&Vt.onErrorRetry(mt,h,Vt,Ds=>{let ln=p[h];ln&&ln[0]&&ln[0](fn.ERROR_REVALIDATE_EVENT,Ds)},{retryCount:(ut.retryCount||0)+1,dedupe:!0})))}return Tt=!1,Jt(),!0},[h,n]),Qr=(0,He.useCallback)((...K)=>ca(n,S.current,...K),[]);if(wo(()=>{M.current=t,F.current=r,J(jr)||(de.current=jr)}),wo(()=>{if(!h)return;let K=sr.bind(Ge,pA),ne=0;D().revalidateOnFocus&&(ne=Date.now()+D().focusThrottleInterval);let le=Wg(h,p,(Tt,ut={})=>{if(Tt==fn.FOCUS_EVENT){let Me=Date.now();D().revalidateOnFocus&&Me>ne&&re()&&(ne=Me+D().focusThrottleInterval,K())}else if(Tt==fn.RECONNECT_EVENT)D().revalidateOnReconnect&&re()&&K();else{if(Tt==fn.MUTATE_EVENT)return sr();if(Tt==fn.ERROR_REVALIDATE_EVENT)return sr(ut)}});return Q.current=!1,S.current=h,w.current=!0,H({_k:x}),Ao&&(y[h]||(J(me)||mn?K():uA(K))),()=>{Q.current=!0,le()}},[h]),wo(()=>{let K;function ne(){let le=kt(l)?l(v().data):l;le&&K!==-1&&(K=setTimeout(ce,le))}function ce(){!v().error&&(A||D().isVisible())&&(u||D().isOnline())?sr(pA).then(ne):ne()}return ne(),()=>{K&&(clearTimeout(K),K=-1)}},[l,A,u,h]),(0,He.useDebugValue)(Sr),i){if(!aa&&mn&&jt)throw new Error("Fallback data is required when using Suspense in SSR.");jt&&(M.current=t,F.current=r,Q.current=!1);let K=I[h],ne=!J(K)&&jt?Qr(K):zg;if(gA(ne),!J(vn)&&jt)throw vn;let ce=jt?sr(pA):zg;!J(Sr)&&jt&&(ce.status="fulfilled",ce.value=!0),gA(ce)}return{mutate:Qr,get data(){return xe.data=!0,Sr},get error(){return xe.error=!0,vn},get isValidating(){return xe.isValidating=!0,Ts},get isLoading(){return xe.isLoading=!0,Jr}}},BF=xo.defineProperty(dA,"defaultValue",{value:Aa}),Nn=Yg(o2);var $g=f(go());async function Kg({start:e,end:t,refName:r,session:n,assemblyName:o}){let{assemblyManager:i,rpcManager:s}=n,a=await i.waitForAssembly(o);if(!a)throw new Error("assembly not found");let c="getSequence";return(await s.call(c,"CoreGetFeatures",{adapterConfig:(0,$g.getConf)(a,["sequence","adapter"]),sessionId:c,regions:[{start:e,end:t,refName:a.getCanonicalRefName(r),assemblyName:o}]}))[0]?.get("seq")??""}var Ln={revalidateOnFocus:!1,revalidateOnReconnect:!1,revalidateIfStale:!1,refreshWhenHidden:!1,refreshWhenOffline:!1,shouldRetryOnError:!1};async function i2({feature:e,assemblyName:t,view:r}){let n=(0,Xg.getSession)(r),{start:o,end:i,refName:s}=e.toJSON();return{seq:await Kg({start:o,end:i,refName:s,assemblyName:t,session:n})}}function Zg({view:e,feature:t}){let r=e?.assemblyNames?.[0],n=t&&r?{feature:t,assemblyName:r,view:e}:void 0,{data:o,error:i}=Nn(n?[n.feature.id(),n.assemblyName,"feature-sequence"]:null,()=>i2(n),Ln);return{sequence:o,error:i}}function ep({view:e,feature:t}){let{sequence:r,error:n}=Zg({view:e,feature:t});return{proteinSequence:r&&t?vg({seq:r.seq,feature:t}):"",sequence:r,error:n}}function s2(e,t,r){if(r&&r.length>0){let n=t.find(i=>Dn(i)===e),o=n&&r.some(i=>Qi(n,i));if(n&&!o){let i=t.find(s=>r.some(a=>Qi(s,a)));return i?Dn(i):void 0}}}function Tr({feature:e,view:t,validIds:r}){let n=(0,ua.useMemo)(()=>yg(e),[e]),[o,i]=(0,ua.useState)(()=>Dn(n[0])),s=s2(o,n,r)??o,a=n.find(A=>Dn(A)===s),{proteinSequence:c,error:l}=ep({view:t,feature:a});return{options:n,selectedId:s,setSelectedId:i,selectedTranscript:a,proteinSequence:c,error:l,validIds:r}}var a2=(0,np.makeStyles)()({textAreaFont:{fontFamily:"Courier New"},inputContainer:{marginBottom:30},fileContainer:{maxWidth:500},msaInput:{marginBottom:20},queryNameInput:{marginTop:20},warningAlert:{marginTop:10}}),c2=(0,rp.observer)(function({model:t,feature:r,handleClose:n}){let o=(0,tp.getSession)(t),i=Wt(t),{classes:s}=a2(),[a,c]=(0,X.useState)(),[l,A]=(0,X.useState)("file"),[u,m]=(0,X.useState)(""),[d,p]=(0,X.useState)(""),[C,y]=(0,X.useState)(),[I,h]=(0,X.useState)(),[x,w]=(0,X.useState)(""),Q=Tr({feature:r,view:i}),{selectedTranscript:S,error:M}=Q;return X.default.createElement(X.default.Fragment,null,X.default.createElement(Ar,{error:a??M},X.default.createElement(zt.FormControl,{component:"fieldset"},X.default.createElement(zt.RadioGroup,{row:!0,value:l,onChange:D=>{A(D.target.value)}},X.default.createElement(zt.FormControlLabel,{value:"file",control:X.default.createElement(zt.Radio,null),label:"Open files"}),X.default.createElement(zt.FormControlLabel,{value:"text",control:X.default.createElement(zt.Radio,null),label:"Paste text"}))),X.default.createElement("div",{className:s.inputContainer},l==="file"?X.default.createElement("div",{className:s.fileContainer},X.default.createElement(CA.FileSelector,{name:"MSA File .aln (Clustal), .fa/.mfa (aligned FASTA), .stock (Stockholm), etc)",inline:!0,location:C,setLocation:y}),X.default.createElement(CA.FileSelector,{name:"Tree file .nh (Newick) or .asn (NCBI COBALT ASN.1)",inline:!0,location:I,setLocation:h})):X.default.createElement(X.default.Fragment,null,X.default.createElement(Xe,{variant:"outlined",name:"MSA",multiline:!0,minRows:5,className:s.msaInput,maxRows:10,fullWidth:!0,placeholder:"Paste MSA here",value:u,onChange:D=>{m(D.target.value)}}),X.default.createElement(Xe,{variant:"outlined",name:"Tree",multiline:!0,minRows:5,maxRows:10,fullWidth:!0,placeholder:"Paste newick tree (optional)",value:d,onChange:D=>{p(D.target.value)}}))),X.default.createElement(fr,{feature:r,...Q}),X.default.createElement(Xe,{variant:"outlined",name:"MSA row name",fullWidth:!0,required:!0,className:s.queryNameInput,placeholder:"Row name in MSA that corresponds to the selected transcript",helperText:"Required: Specify the name of the row in your MSA that should be aligned with the selected transcript",value:x,onChange:D=>{w(D.target.value)}}),x.trim()?null:X.default.createElement(zt.Alert,{severity:"warning",className:s.warningAlert},"Without specifying the MSA row name, clicking on the MSA will not navigate to the corresponding genome position, and hovering highlights will not work.")),X.default.createElement(Yr,{submitDisabled:!S||l==="file"&&!C||l==="text"&&!u.trim(),onSubmit:()=>{try{S&&(c(void 0),Cg({session:o,newViewTitle:kn(S),view:i,feature:S,querySeqName:x.trim(),...l==="file"?{msaFilehandle:C,treeFilehandle:I}:{data:{msa:u,tree:d}}}),n())}catch(D){console.error(D),c(D)}},onCancel:n}))}),op=c2;var hr=f(b()),qp=f(ge());EA();var jp=f(_()),Jp=f(be());var oe=f(b());IA();var Nt=f(_()),Tp=f(R()),_p=f(be());var Ve=f(b()),yp=f(ye());Y();var ap=f(L(),1),cp=(0,T.createSvgIcon)((0,ap.jsx)("path",{d:"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6zM19 4h-3.5l-1-1h-5l-1 1H5v2h14z"}),"Delete");var it=f(_()),wp=f(R()),bp=f(be());var xA=f(ge());function da({newViewTitle:e,view:t,feature:r,blastParams:n}){(0,xA.getSession)(t).addView("MsaView",{type:"MsaView",displayName:e,connectedViewId:t.id,connectedFeature:r.toJSON(),drawNodeBubbles:!0,colWidth:10,rowHeight:12,blastParams:n})}function lp({newViewTitle:e,view:t,cached:r}){(0,xA.getSession)(t).addView("MsaView",{type:"MsaView",displayName:e,connectedViewId:t.id,drawNodeBubbles:!0,colWidth:10,rowHeight:12,data:{msa:r.msa,tree:r.tree,treeMetadata:r.treeMetadata}})}_i();var I2="jbrowse-msaview-blast-cache",dn="blast-results",x2=2;async function pa(){return Rn(I2,x2,{upgrade(e,t){t<2&&e.objectStoreNames.contains(dn)&&e.deleteObjectStore(dn),e.objectStoreNames.contains(dn)||e.createObjectStore(dn,{keyPath:"id"})}})}function y2(e,t,r,n){return n?`${t}:${r}:${n}:${e}`:`${t}:${r}:${e}`}async function hp({proteinSequence:e,blastDatabase:t,blastProgram:r,msaAlgorithm:n,msa:o,tree:i,treeMetadata:s,rid:a,geneId:c,transcriptId:l,transcriptName:A,geneName:u}){let m=await pa(),p={id:y2(e,t,r,l),proteinSequence:e,blastDatabase:t,blastProgram:r,msaAlgorithm:n,msa:o,tree:i,treeMetadata:s,rid:a,timestamp:Date.now(),geneId:c,transcriptId:l,transcriptName:A,geneName:u};return await m.put(dn,p),p}async function Cp(){return(await(await pa()).getAll(dn)).toSorted((r,n)=>n.timestamp-r.timestamp)}async function Ep(e){await(await pa()).delete(dn,e)}async function Ip(){await(await pa()).clear(dn)}function ha(e){let{data:t,error:r,mutate:n}=Nn(`cached-blast-${e.join(",")}`,async()=>(await Cp()).filter(a=>a.geneId&&e.includes(a.geneId)),Ln);return{results:t??[],error:r,isLoading:!t&&!r,handleDelete:async s=>{await Ep(s),await n(a=>a?.filter(c=>c.id!==s)??[],!1)},handleClearAll:async()=>{await Ip(),await n([],!1)}}}var w2=(0,bp.makeStyles)()({header:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:8},resultList:{maxHeight:300,overflow:"auto"}});function xp(e){let t=[e.geneName,e.transcriptName!==e.geneName?e.transcriptName:void 0].filter(r=>!!r);return t.length>0?t.join(" - "):e.geneId??e.transcriptId??"Unknown"}var b2=(0,wp.observer)(function({model:e,handleClose:t,feature:r}){let{classes:n}=w2(),o=Wt(e),[i,s]=(0,Ve.useState)(),a=(0,Ve.useMemo)(()=>Ks(r),[r]),{results:c,error:l,isLoading:A,handleDelete:u,handleClearAll:m}=ha(a),d=C=>{lp({view:o,cached:C,newViewTitle:`BLAST - ${xp(C)}`}),t()},p=l??i;return p?Ve.default.createElement(yp.ErrorMessage,{error:p}):A?Ve.default.createElement(it.Typography,null,"Loading cached results..."):c.length===0?Ve.default.createElement(it.Typography,{color:"textSecondary"},"No cached BLAST results found for this gene. Run a BLAST query to cache results."):Ve.default.createElement("div",null,Ve.default.createElement("div",{className:n.header},Ve.default.createElement(it.Typography,{variant:"subtitle1"},"Cached BLAST Results (",c.length,")"),Ve.default.createElement(it.Button,{size:"small",color:"error",onClick:async()=>{try{s(void 0),await m()}catch(C){s(C)}}},"Clear All")),Ve.default.createElement(it.List,{dense:!0,className:n.resultList},c.map(C=>Ve.default.createElement(it.ListItem,{key:C.id,disablePadding:!0,secondaryAction:Ve.default.createElement(it.IconButton,{edge:"end",size:"small",onClick:async y=>{y.stopPropagation();try{s(void 0),await u(C.id)}catch(I){s(I)}}},Ve.default.createElement(cp,{fontSize:"small"}))},Ve.default.createElement(it.ListItemButton,{onClick:()=>{d(C)}},Ve.default.createElement(it.ListItemText,{primary:`${xp(C)} - ${C.blastDatabase}/${C.blastProgram} (${C.msaAlgorithm})`,secondary:`${new Date(C.timestamp).toLocaleString()} - Seq: ${C.proteinSequence.slice(0,30)}...`}))))))}),Bp=b2;var vA=f(b()),vp=f(_());var Ca="https://blast.ncbi.nlm.nih.gov/Blast.cgi",Sp=["clustalo","muscle","kalign","mafft"],Qp=["nr","nr_cluster_seq"],Mp=["blastp","quick-blastp"];function Di({value:e,onChange:t,className:r}){return vA.default.createElement(Xe,{variant:"outlined",label:"MSA Algorithm",className:r,select:!0,value:e,onChange:n=>{t(n.target.value)}},Sp.map(n=>vA.default.createElement(vp.MenuItem,{value:n,key:n},n)))}var B2=(0,_p.makeStyles)()({selectField:{width:150},databaseFieldContainer:{display:"flex"},clusterSeqMessage:{marginLeft:4,alignContent:"center"},cachedResultsAccordion:{marginTop:20},infoText:{marginTop:20}}),S2=(0,Tp.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=B2(),s=Wt(r),[a,c]=(0,oe.useState)(),[l,A]=(0,oe.useState)("nr"),[u,m]=(0,oe.useState)("clustalo"),[d,p]=(0,oe.useState)("quick-blastp"),C=(0,oe.useMemo)(()=>Ks(t),[t]),{results:y,error:I}=ha(C),h=Tr({feature:t,view:s}),{selectedTranscript:x,proteinSequence:w}=h,Q=h.error??a??I;return oe.default.createElement(oe.default.Fragment,null,oe.default.createElement(Ar,{error:Q},n,oe.default.createElement(Xe,{variant:"outlined",label:"BLAST database",className:i.selectField,select:!0,value:l,onChange:S=>{let M=S.target.value;A(M),M==="nr_cluster_seq"&&p("blastp")}},Qp.map(S=>oe.default.createElement(Nt.MenuItem,{value:S,key:S},S))),oe.default.createElement(Di,{className:i.selectField,value:u,onChange:m}),oe.default.createElement("div",{className:i.databaseFieldContainer},oe.default.createElement(Xe,{variant:"outlined",label:"BLAST program",disabled:l==="nr_cluster_seq",className:i.selectField,select:!0,value:d,onChange:S=>{p(S.target.value)}},Mp.map(S=>oe.default.createElement(Nt.MenuItem,{value:S,key:S},S))),l==="nr_cluster_seq"?oe.default.createElement(Nt.Typography,{variant:"subtitle2",className:i.clusterSeqMessage},"Can only use blastp on nr_cluster_seq"):null),oe.default.createElement(fr,{feature:t,...h}),oe.default.createElement(Nt.Typography,{className:i.infoText},"This panel will automatically submit a query to NCBI. Using blastp can take 10+ minutes to run, quick-blastp is generally a lot faster but is not available for the clustered database. After completion, all the hits will be run through a multiple sequence alignment. Note: we are not able to currently run NCBI COBALT automatically on the BLAST results, even though that is the method NCBI uses on their website. If you need a COBALT alignment, please use the manual approach of submitting BLAST yourself and downloading the resulting files"),y.length>0?oe.default.createElement(Nt.Accordion,{className:i.cachedResultsAccordion},oe.default.createElement(Nt.AccordionSummary,{expandIcon:oe.default.createElement(ma,null)},oe.default.createElement(Nt.Typography,null,"Previous BLAST Results")),oe.default.createElement(Nt.AccordionDetails,null,oe.default.createElement(Bp,{model:r,handleClose:e,feature:t}))):null),oe.default.createElement(Yr,{submitDisabled:!w,onSubmit:()=>{try{x&&(c(void 0),da({feature:x,view:s,newViewTitle:zs(t,x),blastParams:{baseUrl:o,blastProgram:d,blastDatabase:l,msaAlgorithm:u,selectedTranscript:x,proteinSequence:w}}),e())}catch(S){console.error(S),c(S)}},onCancel:e}))}),Dp=S2;var _r=f(b()),Lp=f(ge()),Bo=f(_()),Fp=f(R()),Rp=f(be());Ia();var Q2=(0,Rp.makeStyles)()({ncbiLink:{wordBreak:"break-all",margin:30,maxWidth:600},infoText:{marginTop:20}}),M2=(0,Fp.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=Q2(),s=Wt(r),a=Tr({feature:t,view:s}),{proteinSequence:c,error:l}=a,A=$s(c),u=`${o}?PAGE_TYPE=BlastSearch&PAGE=Proteins&PROGRAM=blastp&QUERY=${A}`,m=`${o}?PAGE_TYPE=BlastSearch&PAGE=Proteins&PROGRAM=blastp&QUERY=${(0,Lp.shorten2)(A,10)}`;return _r.default.createElement(_r.default.Fragment,null,_r.default.createElement(Ar,{error:l},n,_r.default.createElement(fr,{feature:t,...a}),c?_r.default.createElement("div",{className:i.ncbiLink},"Link to NCBI BLAST: ",_r.default.createElement(Pn,{href:u},m)):null,_r.default.createElement(Bo.Typography,{className:i.infoText},`Click the link above and run your BLAST query, and once you have results, click "Multiple Alignment" at the top of the results page to be redirected to COBALT, NCBI's multiple sequence aligner. Once COBALT completes, you can download an MSA (.aln file) and optionally a Newick tree (.nh) and paste the results into JBrowse`)),_r.default.createElement(Bo.DialogActions,null,_r.default.createElement(Bo.Button,{color:"primary",variant:"contained",onClick:()=>{e()}},"Close")))}),Pp=M2;var Wr=f(b()),$t=f(_());function DA({lookupMethod:e,setLookupMethod:t}){return Wr.default.createElement($t.FormControl,{component:"fieldset"},Wr.default.createElement($t.RadioGroup,{row:!0,value:e,onChange:r=>{t(r.target.value)}},Wr.default.createElement($t.FormControlLabel,{value:"automatic",control:Wr.default.createElement($t.Radio,null),label:"Automatic"}),Wr.default.createElement($t.FormControlLabel,{value:"rid",control:Wr.default.createElement($t.Radio,null),label:"Load from RID"}),Wr.default.createElement($t.FormControlLabel,{value:"manual",control:Wr.default.createElement($t.Radio,null),label:"Manual"})))}var st=f(b()),xa=f(_()),Op=f(R()),Gp=f(be());Ia();var v2=(0,Gp.makeStyles)()({marginBottom:{marginBottom:16},ridField:{width:150},infoText:{marginTop:20}}),T2=(0,Op.observer)(function({handleClose:e,feature:t,model:r,children:n,baseUrl:o}){let{classes:i}=v2(),s=Wt(r),[a,c]=(0,st.useState)(),[l,A]=(0,st.useState)(""),[u,m]=(0,st.useState)("clustalo"),d=Tr({feature:t,view:s}),{selectedTranscript:p,proteinSequence:C}=d,y=d.error??a,I=l.trim();return st.default.createElement(st.default.Fragment,null,st.default.createElement(Ar,{error:y},n,st.default.createElement(xa.Typography,{variant:"body2",className:i.marginBottom},"Enter the RID (Request ID) from a previously submitted NCBI BLAST query. You can find the RID in the BLAST results page URL or at the top of the results page. RIDs are typically valid for 24-36 hours after submission."),st.default.createElement(Xe,{variant:"outlined",label:"BLAST RID",placeholder:"e.g., ABC12345",fullWidth:!0,className:i.marginBottom,value:l,onChange:h=>{A(h.target.value)}}),I?st.default.createElement(xa.Typography,{variant:"body2",className:i.marginBottom},st.default.createElement(Pn,{href:`${o}?CMD=Get&RID=${I}`},"View BLAST results on NCBI")):null,st.default.createElement(Di,{className:i.ridField,value:u,onChange:m}),st.default.createElement(fr,{feature:t,...d}),st.default.createElement(xa.Typography,{className:i.infoText},"This will fetch the BLAST results for the provided RID and run them through a multiple sequence alignment. The protein sequence from the selected transcript will be added as the query sequence in the MSA.")),st.default.createElement(Yr,{submitDisabled:!C||!I,onSubmit:()=>{try{p&&I&&(c(void 0),da({feature:p,view:s,newViewTitle:zs(t,p),blastParams:{baseUrl:o,blastProgram:"blastp",blastDatabase:"nr",msaAlgorithm:u,selectedTranscript:p,proteinSequence:C,rid:I}}),e())}catch(h){console.error(h),c(h)}},onCancel:e}))}),Hp=T2;var pr=f(b()),Kt=f(_()),Up=f(be());var _2=(0,Up.makeStyles)()({urlField:{minWidth:300}});function kA({handleClose:e,baseUrl:t}){let{classes:r}=_2(),[n,o]=(0,pr.useState)(t);return pr.default.createElement(Kt.Dialog,{open:!0,maxWidth:"lg",onClose:()=>{e()}},pr.default.createElement(Kt.DialogTitle,null,"BLAST Settings"),pr.default.createElement(Kt.DialogContent,null,pr.default.createElement(Xe,{autoFocus:!0,margin:"dense",label:"BLAST Base URL",fullWidth:!0,variant:"outlined",value:n,className:r.urlField,onChange:i=>{o(i.target.value)}}),pr.default.createElement(Kt.Button,{variant:"contained",onClick:()=>{o(Ca)}},"Reset")),pr.default.createElement(Kt.DialogActions,null,pr.default.createElement(Kt.Button,{variant:"contained",color:"secondary",onClick:()=>{e()}},"Cancel"),pr.default.createElement(Kt.Button,{color:"primary",variant:"contained",onClick:()=>{e(n)}},"Save")))}var D2=(0,Jp.makeStyles)()({settingsButton:{float:"right"}}),k2={automatic:Dp,rid:Hp,manual:Pp};function NA({handleClose:e,model:t,feature:r}){let[n,o]=(0,hr.useState)("automatic"),[i,s]=(0,qp.useLocalStorage)("msa-blastRootUrl",Ca),[a,c]=(0,hr.useState)(!1),{classes:l}=D2(),A=k2[n];return hr.default.createElement(hr.default.Fragment,null,hr.default.createElement(jp.IconButton,{className:l.settingsButton,size:"small",onClick:()=>{c(!0)}},hr.default.createElement(fa,null)),hr.default.createElement(A,{model:t,feature:r,handleClose:e,baseUrl:i},hr.default.createElement(DA,{lookupMethod:n,setLookupMethod:o})),a?hr.default.createElement(kA,{baseUrl:i,handleClose:u=>{u&&s(u),c(!1)}}):null)}var at=f(b()),Li=f(ye()),Da=f(ge()),Hh=f(_()),Uh=f(R());var qh=f(be());gn();function XA(e,t="",r=5e3){let n=[e];for(;n.length;){let o=n.pop();for(let[i,s]of Object.entries(o)){if(t.length>r)return zA(t);typeof s=="object"&&s!==null?n.push(s):i==="locationType"&&s==="FileHandleLocation"?t+=`${i}-BlobLocation`:i==="handleId"?t+=`blobId-fh-blob-${s}`:t+=`${i}-${s}`}}return`adp-${zA(t)}`}function Nh(e={}){return e.type&&e.adapterId?`${e.type}-${e.adapterId}`:`${XA(e)}`}var Lh={};async function nM(e,t,r){let n=r?.type;if(!n)throw new Error(`could not determine adapter type from adapter config snapshot ${JSON.stringify(r)}`);let o=e.getAdapterType(n);if(!o)throw new Error(`unknown data adapter type ${n}`);let i=o.configSchema.create(r,{pluginManager:e}),s=ZA.bind(null,e,t),a=await o.getAdapterClass();return{dataAdapter:new a(i,s,e),sessionIds:new Set([t])}}async function ZA(e,t,r){let n=Nh(r);Lh[n]??=nM(e,t,r);let o=await Lh[n];return o.sessionIds.add(t),o}async function Fh(e,t){return(await ZA(e,"msa",t)).dataAdapter}async function Rh({config:e,pluginManager:t}){return(await Fh(t,e)).getMSAList()}async function Ph({config:e,pluginManager:t,msaId:r}){return(await Fh(t,e)).getMSA(r)}function Oh({session:e,newViewTitle:t,view:r,feature:n,data:o,querySeqName:i}){e.addView("MsaView",{type:"MsaView",displayName:t,treeAreaWidth:200,querySeqName:i,treeWidth:100,drawNodeBubbles:!1,labelsAlignRight:!0,showBranchLen:!1,colWidth:10,rowHeight:12,colorSchemeName:"percent_identity_dynamic",data:o,connectedViewId:r.id,connectedFeature:n.toJSON()})}var Gh=f(go());function _a(e){return(0,Gh.readConfObject)(e,["msa","datasets"])}var oM=(0,qh.makeStyles)()({selectedContainer:{marginTop:50}}),iM=(0,Uh.observer)(function({model:e,feature:t,handleClose:r}){let n=(0,Da.getSession)(e),o=Wt(e),{classes:i}=oM(),{pluginManager:s}=(0,Da.getEnv)(e),{assemblyNames:a}=o,[c,l]=(0,at.useState)(),A=_a(n.jbrowse),[u,m]=(0,at.useState)(A?.[0]?.datasetId),d=A?.find(F=>F.datasetId===u),{data:p,isLoading:C,error:y}=Nn(d?`${d.datasetId}-msa-list`:null,()=>Rh({config:d.adapter,pluginManager:s}),Ln),I=Tr({feature:t,view:o,validIds:p}),{selectedId:h,selectedTranscript:x}=I,{data:w,isLoading:Q,error:S}=Nn(h&&d&&p?`${d.datasetId}-${h}-${p.length}-msa`:null,()=>Ph({msaId:h,config:d.adapter,pluginManager:s}),Ln),M=y??S??I.error??c;return at.default.createElement(at.default.Fragment,null,at.default.createElement(Ar,{error:M},at.default.createElement(Xe,{select:!0,label:"Select MSA dataset",value:u,onChange:F=>{m(F.target.value)}},A?.map(F=>at.default.createElement(Hh.MenuItem,{key:F.datasetId,value:F.datasetId},F.name))),d?at.default.createElement("div",{className:i.selectedContainer},!C&&Q?at.default.createElement(Li.LoadingEllipses,{variant:"h6",message:`Loading MSA for (${h})`}):null,C?at.default.createElement(Li.LoadingEllipses,{variant:"h6",message:`Loading available MSAs for (${d.name})`}):null,p?at.default.createElement("div",null,at.default.createElement(Li.SanitizedHTML,{html:d.description}),at.default.createElement(fr,{feature:t,...I})):null):null),at.default.createElement(Yr,{submitDisabled:!x||!w?.length,onSubmit:()=>{try{if(x&&w){let F=`${h}_${a[0]}`;Oh({session:n,newViewTitle:kn(x),view:o,querySeqName:F,feature:x,data:{msa:w.map(D=>`>${D.get("refName")}
|
|
70
|
+
${D.get("seq")}`).join(`
|
|
71
|
+
`)}}),r()}}catch(F){l(F)}},onCancel:r}))}),jh=iM;var eu=f(b());function Fi({children:e,value:t,index:r,...n}){return eu.default.createElement("div",{role:"tabpanel",hidden:t!==r,...n},t===r?eu.default.createElement("div",null,e):null)}function tu({handleClose:e,feature:t,model:r}){let n=(0,Vh.getSession)(r),i=!!_a(n.jbrowse)?.length,[s,a]=(0,Qt.useState)("ncbi_blast");return Qt.default.createElement(Jh.Dialog,{maxWidth:"xl",title:"Launch MSA view",open:!0,onClose:e},Qt.default.createElement(Do.Tabs,{value:s,onChange:(c,l)=>{a(l)}},Qt.default.createElement(Do.Tab,{label:"NCBI BLAST query",value:"ncbi_blast"}),i?Qt.default.createElement(Do.Tab,{label:"Pre-loaded MSA datasets",value:"preloaded_msa"}):null,Qt.default.createElement(Do.Tab,{label:"Manual upload",value:"manual_msa"})),Qt.default.createElement(Fi,{value:s,index:"ncbi_blast"},Qt.default.createElement(NA,{handleClose:e,feature:t,model:r})),i?Qt.default.createElement(Fi,{value:s,index:"preloaded_msa"},Qt.default.createElement(jh,{model:r,feature:t,handleClose:e})):null,Qt.default.createElement(Fi,{value:s,index:"manual_msa"},Qt.default.createElement(op,{model:r,feature:t,handleClose:e})))}function sM(e){return e.name==="LinearBasicDisplay"}function aM(e){return e.views(t=>{let r=t.contextMenuItems;return{contextMenuItems(){let n=t.contextMenuFeature,o=(0,ka.getContainingTrack)(t),i=n?.get("type"),s=n&&["gene","mRNA","transcript"].includes(i);return[...r(),...s?[{label:"Launch MSA view",icon:gg,onClick:()=>{(0,ka.getSession)(o).queueDialog(a=>[tu,{model:o,handleClose:a,feature:n}])}}]:[]]}}})}function ru(e){e.addToExtensionPoint("Core-extendPluggableElement",t=>(sM(t)&&(t.stateModel=aM(t.stateModel)),t))}function nu(e){e.addToExtensionPoint("LaunchView-MsaView",({session:t,data:r,msaFileLocation:n,treeFileLocation:o,connectedViewId:i,connectedFeature:s,displayName:a,colorSchemeName:c,colWidth:l,rowHeight:A,treeAreaWidth:u,treeWidth:m,drawNodeBubbles:d,labelsAlignRight:p,showBranchLen:C,querySeqName:y})=>{if(!r&&!n)throw new Error("No MSA data or file location provided when launching MSA view");t.addView("MsaView",{type:"MsaView",displayName:a,connectedViewId:i,connectedFeature:s,colorSchemeName:c,colWidth:l,rowHeight:A,treeAreaWidth:u,treeWidth:m,drawNodeBubbles:d,labelsAlignRight:p,showBranchLen:C,init:{msaData:r?.msa,treeData:r?.tree,msaUrl:n?.uri,treeUrl:o?.uri,querySeqName:y}})})}var YQ=f(b()),WQ=f(Wh());var TQ=f(b()),_Q=f(Nl()),Ii=f(ge()),Ie=f(Dt());function*cM(e,t){if(t!==-1)for(let r=e.start;r<e.end;r++)yield r;else for(let r=e.end-1;r>=e.start;r--)yield r}function zh(e){let t=e.strand,r=e.refName;if(t!==-1&&t!==1)throw new Error(`Invalid strand value: ${t}. Expected 1 or -1.`);if(!r)throw new Error("refName is required");let n=e.subfeatures?.filter(c=>c.type==="CDS")??[],o=new Set,i=n.filter(c=>{if(c.start>=c.end)return!1;let l=`${c.start}-${c.end}`;return o.has(l)?!1:(o.add(l),!0)}).sort((c,l)=>t*(c.start-l.start)),s={},a={};if(i.length!==0){let l=(3-(i[0]?.phase??0))%3,A=-1;for(let u of i)for(let m of cM(u,t)){let d=Math.floor(l++/3);s[m]=d,d!==A&&(a[d]=m,A=d)}}return{g2p:s,p2g:a,refName:r,strand:t}}var DQ=f($r());Gm();var qm=f(ge());function $S(e,t){let r=e.sciname.replaceAll(" ","_");if(e.taxid&&t?.has(e.taxid)){let n=t.get(e.taxid);n.commonName&&(r=n.commonName.split(" ").map(o=>o.charAt(0).toUpperCase()+o.slice(1).toLowerCase()).join("_"))}return`${e.accession}-${r}`}function KS(e){return e.replaceAll("-","")}async function XS(e,t){let r=await fetch(e,t);if(!r.ok)throw new Error(`HTTP ${r.status} fetching ${e} ${await r.text()}`);return r}async function Qn(e,t){return(await XS(e,t)).text()}async function ZS(e,t){return(await XS(e,t)).json()}function dl(e){return new Promise(t=>setTimeout(t,e))}var gl="https://www.ebi.ac.uk/Tools/services/rest",jk={clustalo:{params:{email:"colin.diesh@gmail.com"},msaResult:"aln-clustal_num",treeResult:"phylotree"},muscle:{params:{email:"colin.diesh@gmail.com",format:"clw",tree:"tree1"},msaResult:"fa",treeResult:"phylotree"},kalign:{params:{email:"colin.diesh@gmail.com",stype:"protein"},msaResult:"fa",treeResult:"phylotree"},mafft:{params:{email:"colin.diesh@gmail.com",stype:"protein"},msaResult:"fa",treeResult:"phylotree"}};async function Jk({onProgress:e,jobId:t,algorithm:r}){for(;;){for(let o=0;o<10;o++)await dl(1e3),e(`Re-checking MSA status in... ${10-o}`);let n=await Qn(`${gl}/${r}/status/${t}`);if(n==="FINISHED")break;if(n.includes("FAILURE"))throw new Error(`Failed to run: jobId ${t}`)}}async function eQ({algorithm:e,sequence:t,onProgress:r}){let n=jk[e];r(`Launching ${e} MSA...`);let o=await Qn(`${gl}/${e}/run`,{method:"POST",body:new URLSearchParams({...n.params,sequence:t})});return await Jk({jobId:o,algorithm:e,onProgress:r}),{msa:await Qn(`${gl}/${e}/result/${o}/${n.msaResult}`),tree:await Qn(`${gl}/${e}/result/${o}/${n.treeResult}`)}}async function Hm({rid:e,baseUrl:t,onProgress:r}){r(`Checking BLAST status for RID: ${e}...`),await Yk({rid:e,onProgress:r,baseUrl:t});let n=await ZS(`${t}?CMD=Get&RID=${e}&FORMAT_TYPE=JSON2_S&FORMAT_OBJECT=Alignment`);return{rid:e,hits:n.BlastOutput2[0]?.report.results.search.hits??[]}}async function tQ({query:e,blastDatabase:t,blastProgram:r,baseUrl:n,onProgress:o,onRid:i}){o("Submitting to NCBI BLAST...");let{rid:s}=await Vk({query:e,blastDatabase:t,blastProgram:r,baseUrl:n});return i(s),Hm({rid:s,baseUrl:n,onProgress:o})}async function Vk({query:e,blastProgram:t,blastDatabase:r,baseUrl:n}){let o=await Qn(n,{method:"POST",body:new URLSearchParams({CMD:"Put",PROGRAM:t==="quick-blastp"?"blastp":t,DATABASE:r,QUERY:e,...r==="nr_cluster_seq"?{CLUSTERED_DB:"on",DB_TYPE:"Experimental Databases"}:{},...t==="quick-blastp"?{BLAST_PROGRAMS:"kmerBlastp"}:{}})}),i=/^ {4}RID = (.*$)/m.exec(o)?.[1],s=/^ {4}RTOE = (.*$)/m.exec(o)?.[1];if(!i)throw new Error("Failed to get RID from BLAST request");return{rid:i,rtoe:s}}async function Yk({rid:e,onProgress:t,baseUrl:r}){for(;;){for(let c=0;c<20;c++)await dl(1e3),t(`Re-checking BLAST status in... ${20-c}`);let o=await Qn(`${r}?CMD=Get&FORMAT_OBJECT=SearchInfo&RID=${e}`),s=/\s+Status=(\S+)/m.exec(o)?.[1],a=/\s+ThereAreHits=yes/m.test(o);if(s!=="WAITING"){if(s==="FAILED")throw new Error(`BLAST ${e} failed`);if(s==="READY"){if(a)return!0;throw new Error("No hits found")}throw new Error(`BLAST ${e} returned unexpected status: ${s??"unknown"}`)}}}_i();var Wk="jbrowse-msaview-taxonomy-cache",ws="common-names",zk=2;async function rQ(){return Rn(Wk,zk,{upgrade(e){e.objectStoreNames.contains(ws)&&e.deleteObjectStore(ws),e.createObjectStore(ws,{keyPath:"taxid"})}})}async function $k(e){let r=(await rQ()).transaction(ws,"readonly"),n=await Promise.all(e.map(o=>r.store.get(o)));return await r.done,n}async function Kk(e){let r=(await rQ()).transaction(ws,"readwrite");for(let n of e)await r.store.put(n);await r.done}async function nQ(e){let t=new Map,r=[],n=await $k(e);for(let s=0;s<e.length;s++){let a=e[s],c=n[s];c?t.set(a,{sciname:c.sciname,commonName:c.commonName}):r.push(a)}if(r.length===0)return t;let o=100,i=[];for(let s=0;s<r.length;s+=o){let a=r.slice(s,s+o),c=a.join(",");try{let A=await(await fetch(`https://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=taxonomy&id=${c}&retmode=xml`)).text(),u=new Map,m=/<Taxon>\s*<TaxId>(\d+)<\/TaxId>/g,d;for(;(d=m.exec(A))!==null;){let p=Number(d[1]),C=d.index,y=1,I=C+d[0].length;for(;y>0&&I<A.length;){let S=A.indexOf("<Taxon>",I),M=A.indexOf("</Taxon>",I);if(M===-1)break;S!==-1&&S<M?(y++,I=S+7):(y--,I=M+8)}let h=A.slice(C,I),x=u.get(p),w=h.includes("<LineageEx>"),Q=x?.includes("<LineageEx>");(!x||w&&!Q)&&u.set(p,h)}for(let p of a){let C=u.get(p);if(C){let y=/<GenbankCommonName>(.*?)<\/GenbankCommonName>/.exec(C),I=/<CommonName>(.*?)<\/CommonName>/.exec(C),h=/<ScientificName>(.*?)<\/ScientificName>/.exec(C),x=y?.[1]??I?.[1],w=h?.[1]??"";t.set(p,{sciname:w,commonName:x}),i.push({taxid:p,sciname:w,commonName:x})}}}catch(l){console.error("Failed to fetch taxonomy data:",l)}}return i.length>0&&await Kk(i),t}async function oQ({self:e}){let{baseUrl:t,blastDatabase:r,blastProgram:n,msaAlgorithm:o,proteinSequence:i,selectedTranscript:s,rid:a}=e.blastParams,c=$s(i),l,A;if(a){e.setRid(a);let I=await Hm({rid:a,baseUrl:t,onProgress:h=>{e.setProgress(h)}});l=I.hits,A=I.rid}else{let I=await tQ({query:c,blastDatabase:r,blastProgram:n,baseUrl:t,onProgress:h=>{e.setProgress(h)},onRid:h=>{e.setRid(h)}});l=I.hits,A=I.rid}e.setProgress("Fetching species taxonomy info...");let u=l.map(I=>I.description[0]?.taxid).filter(I=>I!==void 0),m=await nQ(u),d={},p=l.map(I=>{let h=I.description[0]??{accession:"unknown",id:"unknown",sciname:"unknown"},x=$S(h,m),w=KS(I.hsps[0]?.hseq??"");return d[x]=Xk(h,m),`>${x}
|
|
72
|
+
${w}`}),C=await eQ({algorithm:o,sequence:[`>QUERY
|
|
73
73
|
${c}`,...p].join(`
|
|
74
|
-
`),onProgress:I=>{e.setProgress(I)}}),x=JSON.stringify(m);return await ap({proteinSequence:c,blastDatabase:r,blastProgram:n,msaAlgorithm:o,msa:C.msa,tree:C.tree,treeMetadata:x,rid:A,geneId:s?.get("parentId"),transcriptId:s?.id(),transcriptName:s?.get("name")??s?.get("id"),geneName:s?.get("gene_name")??s?.get("parentId")}),{...C,treeMetadata:x}}function qk(e,t){let r={},n=e.taxid?t.get(e.taxid):void 0;return n?.sciname&&(r["Scientific name"]=n.sciname),n?.commonName&&(r["Common name"]=n.commonName),e.accession&&(r.Accession=e.accession),e.id&&(r.ID=e.id),e.title&&(r.Description=e.title),r}ys();function ws({model:e,coord:t}){let{querySeqName:r,transcriptToMsaMap:n,mafRegion:o}=e,s=e.rows.find(c=>c[0]===r)?.[1];if(!s)return;let a=dl(s,t);if(a!==void 0){if(o){let c=o.start+a;return c>=o.end?void 0:{refName:o.refName,start:c,end:c+1}}if(n){let{refName:c,p2g:l}=n,A=l[a],u=l[a+1];return A!==void 0&&u!==void 0?{refName:c,start:Math.min(A,u),end:Math.max(A,u)}:void 0}}}_i();var Jk="jbrowse-msaview-data",Vk=1,bs="msa-data";async function Fd(){return Rn(Jk,Vk,{upgrade(e){e.objectStoreNames.contains(bs)||e.createObjectStore(bs,{keyPath:"id"}).createIndex("timestamp","timestamp",{unique:!1})}})}function KS(){return`msa-${Date.now()}-${Math.random().toString(36).slice(2,11)}`}async function XS(e,t){try{let r=await Fd(),n={id:e,msa:t.msa,tree:t.tree,treeMetadata:t.treeMetadata,timestamp:Date.now()};return await r.put(bs,n),!0}catch(r){return console.warn("Failed to store MSA data:",r),!1}}async function ZS(e){try{let r=await(await Fd()).get(bs,e);return r?{msa:r.msa,tree:r.tree,treeMetadata:r.treeMetadata}:void 0}catch(t){console.warn("Failed to retrieve MSA data:",t);return}}async function eQ(e=10080*60*1e3){try{let t=await Fd(),r=Date.now()-e,i=await t.transaction(bs,"readwrite").store.index("timestamp").openCursor(IDBKeyRange.upperBound(r)),s=0;for(;i;)await i.delete(),s++,i=await i.continue();return s}catch(t){return console.warn("Failed to cleanup old MSA data:",t),0}}ys();function tQ(e){let{dataStoreId:t,rows:r}=e;t&&r.length===0&&(async()=>{try{e.setLoadingStoredData(!0);let n=await ZS(t);n&&(n.msa&&e.setMSA(n.msa),n.tree&&e.setTree(n.tree))}catch(n){console.error("Failed to load MSA data from IndexedDB:",n)}finally{e.setLoadingStoredData(!1)}})()}function rQ(e){let{rows:t,dataStoreId:r,isStoringData:n}=e;if(t.length>0&&!r&&!n){if(e.msaFilehandle||e.treeFilehandle)return;let o=e.data.msa,i=e.data.tree;(o||i)&&(e.setIsStoringData(!0),(async()=>{try{let s=KS();await XS(s,{msa:o,tree:i,treeMetadata:e.data.treeMetadata})&&e.setDataStoreId(s)}catch(s){console.error("Failed to store MSA data to IndexedDB:",s)}finally{e.setIsStoringData(!1)}})())}}function nQ(e){e.blastParams&&(async()=>{try{e.setProgress("Submitting query"),e.setError(void 0);let t=await zS({self:e});e.setData(t),e.setBlastParams(void 0)}catch(t){e.setError(t),console.error(t)}finally{e.setProgress("")}})()}function oQ(e){let{init:t}=e;t&&(async()=>{try{e.setError(void 0);let{msaData:r,msaUrl:n,treeData:o,treeUrl:i,querySeqName:s}=t;if(n){let a=xm(n);a&&(e.setUniprotId(a),e.setQuerySeqName("query"))}if(s&&e.setQuerySeqName(s),r)e.setMSA(r);else if(n){let a=await fetch(n);if(!a.ok)throw new Error(`Failed to fetch MSA: ${a.status}`);let c=await a.text();e.setMSA(c)}if(o)e.setTree(o);else if(i){let a=await fetch(i);if(!a.ok)throw new Error(`Failed to fetch tree: ${a.status}`);let c=await a.text();e.setTree(c)}e.setInit(void 0)}catch(r){e.setError(r),console.error(r)}})()}function iQ(e){let{mouseCol:t,mouseClickCol:r}=e,n=t===void 0?void 0:ws({model:e,coord:t}),o=r===void 0?void 0:ws({model:e,coord:r});e.setConnectedHighlights([n,o].filter(i=>!!i))}function sQ(e){let{mouseCol:t,connectedProteinViews:r}=e;if(r.length!==0)for(let n of r){let o=n.proteinView.structures[n.structureIdx];if(!o)continue;if(t===void 0){o.clearHighlightFromExternal?.();continue}let i=e.getSequenceByRowName(n.msaRowName);if(!i)continue;let s=dl(i,t);if(s===void 0){o.clearHighlightFromExternal?.();continue}let a=n.msaToStructure[s];a===void 0?o.clearHighlightFromExternal?.():o.highlightFromExternal?.(a)}}function aQ(e){let{connectedViewId:t,uniprotId:r,rows:n,connectedStructures:o}=e;if(!(!r||n.length===0))for(let i of vn((0,Rd.getSession)(e).views))for(let s=0;s<i.structures.length;s++){let a=i.structures[s];if(!(!a||a.connectedViewId!==t||a.uniprotId!==r||o.some(l=>l.proteinViewId===i.id&&l.structureIdx===s))&&a.structureSequences?.[0])try{e.connectToStructure(i.id,s)}catch(l){console.error("Failed to auto-connect to ProteinView:",l)}}}function cQ(e){let{connectedViewId:t,transcriptToMsaMap:r,querySeqName:n}=e;if(!t||!r)return;let o=new Set;for(let s of vn((0,Rd.getSession)(e).views))for(let a of s.structures){if(a.connectedViewId!==t)continue;let c=a.hoverGenomeHighlights;if(!c||c.length===0)continue;let{g2p:l}=r;for(let A of c)for(let u=A.start;u<A.end;u++){let d=l[u];if(d!==void 0){let m=e.seqPosToGlobalCol(n,d);o.add(m)}}}let i=Array.from(o).map(s=>e.globalColToVisibleCol(s)).filter(s=>s!==void 0);e.setHighlightedColumns(i.length>0?i:void 0)}function lQ(){eQ().catch(e=>{console.error("Failed to cleanup old MSA data:",e)})}var AQ=f(ie());function uQ({model:e}){let{hovered:t}=(0,AQ.getSession)(e),{querySeqName:r,transcriptToMsaMap:n,connectedView:o,mafRegion:i}=e;if(!o?.initialized||!Im(t))return;let{coord:s,refName:a}=t.hoverPosition;if(i){if(a!==i.refName||!o.assemblyNames.includes(i.assemblyName)||s<i.start||s>=i.end)return;let l=s-i.start;return e.seqPosToVisibleCol(r,l)}if(n){let{g2p:c}=n,l=c[s];if(l!==void 0)return e.seqPosToVisibleCol(r,l)}}var Yk={A:{A:4,R:-1,N:-2,D:-2,C:0,Q:-1,E:-1,G:0,H:-2,I:-1,L:-1,K:-1,M:-1,F:-2,P:-1,S:1,T:0,W:-3,Y:-2,V:0,B:-2,Z:-1,X:0,"*":-4},R:{A:-1,R:5,N:0,D:-2,C:-3,Q:1,E:0,G:-2,H:0,I:-3,L:-2,K:2,M:-1,F:-3,P:-2,S:-1,T:-1,W:-3,Y:-2,V:-3,B:-1,Z:0,X:-1,"*":-4},N:{A:-2,R:0,N:6,D:1,C:-3,Q:0,E:0,G:0,H:1,I:-3,L:-3,K:0,M:-2,F:-3,P:-2,S:1,T:0,W:-4,Y:-2,V:-3,B:3,Z:0,X:-1,"*":-4},D:{A:-2,R:-2,N:1,D:6,C:-3,Q:0,E:2,G:-1,H:-1,I:-3,L:-4,K:-1,M:-3,F:-3,P:-1,S:0,T:-1,W:-4,Y:-3,V:-3,B:4,Z:1,X:-1,"*":-4},C:{A:0,R:-3,N:-3,D:-3,C:9,Q:-3,E:-4,G:-3,H:-3,I:-1,L:-1,K:-3,M:-1,F:-2,P:-3,S:-1,T:-1,W:-2,Y:-2,V:-1,B:-3,Z:-3,X:-2,"*":-4},Q:{A:-1,R:1,N:0,D:0,C:-3,Q:5,E:2,G:-2,H:0,I:-3,L:-2,K:1,M:0,F:-3,P:-1,S:0,T:-1,W:-2,Y:-1,V:-2,B:0,Z:3,X:-1,"*":-4},E:{A:-1,R:0,N:0,D:2,C:-4,Q:2,E:5,G:-2,H:0,I:-3,L:-3,K:1,M:-2,F:-3,P:-1,S:0,T:-1,W:-3,Y:-2,V:-2,B:1,Z:4,X:-1,"*":-4},G:{A:0,R:-2,N:0,D:-1,C:-3,Q:-2,E:-2,G:6,H:-2,I:-4,L:-4,K:-2,M:-3,F:-3,P:-2,S:0,T:-2,W:-2,Y:-3,V:-3,B:-1,Z:-2,X:-1,"*":-4},H:{A:-2,R:0,N:1,D:-1,C:-3,Q:0,E:0,G:-2,H:8,I:-3,L:-3,K:-1,M:-2,F:-1,P:-2,S:-1,T:-2,W:-2,Y:2,V:-3,B:0,Z:0,X:-1,"*":-4},I:{A:-1,R:-3,N:-3,D:-3,C:-1,Q:-3,E:-3,G:-4,H:-3,I:4,L:2,K:-3,M:1,F:0,P:-3,S:-2,T:-1,W:-3,Y:-1,V:3,B:-3,Z:-3,X:-1,"*":-4},L:{A:-1,R:-2,N:-3,D:-4,C:-1,Q:-2,E:-3,G:-4,H:-3,I:2,L:4,K:-2,M:2,F:0,P:-3,S:-2,T:-1,W:-2,Y:-1,V:1,B:-4,Z:-3,X:-1,"*":-4},K:{A:-1,R:2,N:0,D:-1,C:-3,Q:1,E:1,G:-2,H:-1,I:-3,L:-2,K:5,M:-1,F:-3,P:-1,S:0,T:-1,W:-3,Y:-2,V:-2,B:0,Z:1,X:-1,"*":-4},M:{A:-1,R:-1,N:-2,D:-3,C:-1,Q:0,E:-2,G:-3,H:-2,I:1,L:2,K:-1,M:5,F:0,P:-2,S:-1,T:-1,W:-1,Y:-1,V:1,B:-3,Z:-1,X:-1,"*":-4},F:{A:-2,R:-3,N:-3,D:-3,C:-2,Q:-3,E:-3,G:-3,H:-1,I:0,L:0,K:-3,M:0,F:6,P:-4,S:-2,T:-2,W:1,Y:3,V:-1,B:-3,Z:-3,X:-1,"*":-4},P:{A:-1,R:-2,N:-2,D:-1,C:-3,Q:-1,E:-1,G:-2,H:-2,I:-3,L:-3,K:-1,M:-2,F:-4,P:7,S:-1,T:-1,W:-4,Y:-3,V:-2,B:-2,Z:-1,X:-2,"*":-4},S:{A:1,R:-1,N:1,D:0,C:-1,Q:0,E:0,G:0,H:-1,I:-2,L:-2,K:0,M:-1,F:-2,P:-1,S:4,T:1,W:-3,Y:-2,V:-2,B:0,Z:0,X:0,"*":-4},T:{A:0,R:-1,N:0,D:-1,C:-1,Q:-1,E:-1,G:-2,H:-2,I:-1,L:-1,K:-1,M:-1,F:-2,P:-1,S:1,T:5,W:-2,Y:-2,V:0,B:-1,Z:-1,X:0,"*":-4},W:{A:-3,R:-3,N:-4,D:-4,C:-2,Q:-2,E:-3,G:-2,H:-2,I:-3,L:-2,K:-3,M:-1,F:1,P:-4,S:-3,T:-2,W:11,Y:2,V:-3,B:-4,Z:-3,X:-2,"*":-4},Y:{A:-2,R:-2,N:-2,D:-3,C:-2,Q:-1,E:-2,G:-3,H:2,I:-1,L:-1,K:-2,M:-1,F:3,P:-3,S:-2,T:-2,W:2,Y:7,V:-1,B:-3,Z:-2,X:-1,"*":-4},V:{A:0,R:-3,N:-3,D:-3,C:-1,Q:-2,E:-2,G:-3,H:-3,I:3,L:1,K:-2,M:1,F:-1,P:-2,S:-2,T:0,W:-3,Y:-1,V:4,B:-3,Z:-2,X:-1,"*":-4},B:{A:-2,R:-1,N:3,D:4,C:-3,Q:0,E:1,G:-1,H:0,I:-3,L:-4,K:0,M:-3,F:-3,P:-2,S:0,T:-1,W:-4,Y:-3,V:-3,B:4,Z:1,X:-1,"*":-4},Z:{A:-1,R:0,N:0,D:1,C:-3,Q:3,E:4,G:-2,H:0,I:-3,L:-3,K:1,M:-1,F:-3,P:-1,S:0,T:-1,W:-3,Y:-2,V:-2,B:1,Z:4,X:-1,"*":-4},X:{A:0,R:-1,N:-1,D:-1,C:-2,Q:-1,E:-1,G:-1,H:-1,I:-1,L:-1,K:-1,M:-1,F:-1,P:-2,S:0,T:0,W:-2,Y:-1,V:-1,B:-1,Z:-1,X:-1,"*":-4},"*":{A:-4,R:-4,N:-4,D:-4,C:-4,Q:-4,E:-4,G:-4,H:-4,I:-4,L:-4,K:-4,M:-4,F:-4,P:-4,S:-4,T:-4,W:-4,Y:-4,V:-4,B:-4,Z:-4,X:-4,"*":1}},fQ=Yk;function dQ(e,t){return fQ[e.toUpperCase()]?.[t.toUpperCase()]??-4}var Wk=-10,zk=-.5;function $k(e,t,r=Wk,n=zk){let o=e.length,i=t.length,s=[],a=[],c=[];for(let h=0;h<=o;h++){s[h]=[],a[h]=[],c[h]=[];for(let y=0;y<=i;y++)s[h][y]=-1/0,a[h][y]=-1/0,c[h][y]=-1/0}s[0][0]=0;for(let h=1;h<=o;h++)a[h][0]=r+(h-1)*n;for(let h=1;h<=i;h++)c[0][h]=r+(h-1)*n;for(let h=1;h<=o;h++)for(let y=1;y<=i;y++){let w=dQ(e[h-1],t[y-1]);s[h][y]=Math.max(s[h-1][y-1],a[h-1][y-1],c[h-1][y-1])+w,a[h][y]=Math.max(s[h-1][y]+r,a[h-1][y]+n),c[h][y]=Math.max(s[h][y-1]+r,c[h][y-1]+n)}let l="",A="",u=o,d=i,m=s[o][i],p=a[o][i],C=c[o][i],x=Math.max(m,p,C),I=x===m?"M":x===p?"Ix":"Iy";for(;u>0||d>0;)if(I==="M"&&u>0&&d>0){l=e[u-1]+l,A=t[d-1]+A;let h=dQ(e[u-1],t[d-1]),y=s[u-1][d-1],w=a[u-1][d-1],S=s[u][d];S===y+h?I="M":S===w+h?I="Ix":I="Iy",u--,d--}else if(I==="Ix"&&u>0){l=e[u-1]+l,A="-"+A;let h=a[u][d],y=s[u-1][d]+r;I=h===y?"M":"Ix",u--}else if(d>0){l="-"+l,A=t[d-1]+A;let h=c[u][d],y=s[u][d-1]+r;I=h===y?"M":"Iy",d--}else break;return{alignedSeq1:l,alignedSeq2:A,score:x}}function Kk(e,t){let r="";for(let n=0;n<e.length;n++){let o=e[n],i=t[n];o==="-"||i==="-"?r+=" ":o.toUpperCase()===i.toUpperCase()?r+="|":r+=" "}return r}function mQ(e,t){let{alignedSeq1:r,alignedSeq2:n}=$k(e,t);return{consensus:Kk(r,n),alns:[{id:"msa",seq:r},{id:"structure",seq:n}]}}function gQ(e){let t=e.alns[0].seq,r=e.alns[1].seq;if(t.length!==r.length)throw new Error("Aligned sequences must have same length");let n=0,o=0,i=new Map,s=new Map;for(let a=0;a<t.length;a++){let c=t[a],l=r[a];c!=="-"&&l!=="-"?(i.set(n,o),s.set(o,n),n++,o++):c==="-"?o++:n++}return{seq1ToSeq2:i,seq2ToSeq1:s}}ys();var tN=(0,xQ.lazy)(()=>Promise.resolve().then(()=>(IQ(),EQ)));function Pd(){return xe.types.compose(yQ.BaseViewModel,Al(),xe.types.model("MsaView",{connectedViewId:xe.types.maybe(xe.types.string),connectedFeature:xe.types.frozen(),connectedHighlights:xe.types.array(xe.types.model({refName:xe.types.string,start:xe.types.number,end:xe.types.number})),blastParams:xe.types.frozen(),querySeqName:"QUERY",uniprotId:xe.types.maybe(xe.types.string),zoomToBaseLevel:!1,init:xe.types.frozen(),connectedStructures:xe.types.array(xe.types.frozen()),dataStoreId:xe.types.maybe(xe.types.string),mafRegion:xe.types.frozen()})).volatile(()=>({rid:void 0,progress:"",error:void 0,loadingStoredData:!1,isStoringData:!1})).views(e=>({getRowByName(t){return e.rows.find(r=>r[0]===t)},getSequenceByRowName(t){return e.rows.find(r=>r[0]===t)?.[1]}})).views(e=>({get transcriptToMsaMap(){return e.connectedFeature?Gh(e.connectedFeature):void 0},get connectedView(){let{views:t}=(0,xi.getSession)(e);return t.find(r=>r.id===e.connectedViewId)},get connectedProteinViews(){let t=vn((0,xi.getSession)(e).views),r=[];for(let n of e.connectedStructures){let o=t.find(i=>i.id===n.proteinViewId);o&&r.push({...n,proteinView:o})}return r}})).views(e=>({get structureHoverCol(){for(let t of e.connectedProteinViews){let n=t.proteinView.structures[t.structureIdx]?.hoverPosition?.structureSeqPos;if(n!==void 0){let o=t.structureToMsa[n];if(o!==void 0){let i=e.getSequenceByRowName(t.msaRowName);if(i){let s=$S(i,o);if(s!==void 0)return e.globalColToVisibleCol(s)}}}}}})).views(e=>({get mouseCol2(){let t=e.structureHoverCol;return t!==void 0?t:uQ({model:e})}})).actions(e=>({setZoomToBaseLevel(t){e.zoomToBaseLevel=t},setError(t){e.error=t},setProgress(t){e.progress=t},setRid(t){e.rid=t},setConnectedHighlights(t){e.connectedHighlights=(0,xe.cast)(t)},addToConnectedHighlights(t){e.connectedHighlights.push(t)},clearConnectedHighlights(){e.connectedHighlights=(0,xe.cast)([])},setBlastParams(t){e.blastParams=t},setInit(t){e.init=t},setQuerySeqName(t){e.querySeqName=t},setUniprotId(t){e.uniprotId=t},setDataStoreId(t){e.dataStoreId=t},setMafRegion(t){e.mafRegion=t},setLoadingStoredData(t){e.loadingStoredData=t},setIsStoringData(t){e.isStoringData=t},handleMsaClick(t){let{connectedView:r,zoomToBaseLevel:n}=e,{assemblyManager:o}=(0,xi.getSession)(e),i=ws({model:e,coord:t});if(!(!i||!r))if(n)r.navTo(i);else{let s=Ls({assemblyManager:o,assemblyNames:r.assemblyNames,refName:i.refName});r.centerAt(i.start,s)}},connectToStructure(t,r,n){let o=n??e.querySeqName,i=e.getSequenceByRowName(o);if(!i)throw new Error(`MSA row "${o}" not found`);let s=i.replaceAll("-",""),a=vn((0,xi.getSession)(e).views).find(p=>p.id===t);if(!a)throw new Error(`ProteinView "${t}" not found`);let c=a.structures[r];if(!c)throw new Error(`Structure at index ${r} not found`);let l=c.structureSequences?.[0];if(!l)throw new Error("Structure sequence not available");let A=mQ(s,l),{seq1ToSeq2:u,seq2ToSeq1:d}=gQ(A),m={proteinViewId:t,structureIdx:r,msaRowName:o,msaToStructure:Object.fromEntries(u),structureToMsa:Object.fromEntries(d)};e.connectedStructures.push(m)},disconnectFromStructure(t,r){let n=e.connectedStructures.findIndex(o=>o.proteinViewId===t&&o.structureIdx===r);n!==-1&&e.connectedStructures.splice(n,1)},disconnectAllStructures(){e.connectedStructures.clear()}})).actions(e=>{let t=e.setMouseClickPos.bind(e);return{setMouseClickPos(r,n){t(r,n),r!==void 0&&e.handleMsaClick(r)}}}).views(e=>({extraViewMenuItems(){return[{label:"Zoom to base level on click?",checked:e.zoomToBaseLevel,type:"checkbox",onClick:()=>{e.setZoomToBaseLevel(!e.zoomToBaseLevel)}},{label:"Connect to protein structure...",onClick:()=>{(0,xi.getSession)(e).queueDialog(t=>[tN,{model:e,handleClose:t}])}},...e.connectedStructures.length>0?[{label:"Disconnect from protein structures",onClick:()=>{e.disconnectAllStructures()}}]:[]]}})).actions(e=>({afterCreate(){lQ();for(let t of[tQ,rQ,nQ,oQ,iQ,sQ,aQ,cQ])(0,xe.addDisposer)(e,(0,wQ.autorun)(()=>{t(e)}))}}))}var lN=(0,PQ.lazy)(()=>Promise.resolve().then(()=>(RQ(),FQ)));function Ud(e){e.addViewType(()=>new OQ.default({name:"MsaView",stateModel:Pd(),ReactComponent:lN}))}var GQ="2.4.2";var hl=class extends HQ.default{constructor(){super(...arguments);this.name="MsaViewPlugin";this.version=GQ;this.rootConfigurationSchema=r=>({msa:(0,qd.ConfigurationSchema)("MSA",{datasets:jd.types.maybe(jd.types.array((0,qd.ConfigurationSchema)("MSAEntry",{datasetId:{type:"string",defaultValue:""},description:{type:"string",defaultValue:""},name:{type:"string",defaultValue:""},adapter:r.pluggableConfigSchemaType("adapter")})))})})}install(r){Ud(r),$A(r),KA(r),Tl(r),zl(r)}configure(r){(0,UQ.isAbstractMenuManager)(r.rootModel)&&r.rootModel.appendToSubMenu(["Add"],{label:"Multiple sequence alignment view",icon:dm,onClick:n=>{n.addView("MsaView",{})}})}};return t1(AN);})();
|
|
74
|
+
`),onProgress:I=>{e.setProgress(I)}}),y=JSON.stringify(d);return await hp({proteinSequence:c,blastDatabase:r,blastProgram:n,msaAlgorithm:o,msa:C.msa,tree:C.tree,treeMetadata:y,rid:A,geneId:s?.get("parentId"),transcriptId:s?.id(),transcriptName:s?.get("name")??s?.get("id"),geneName:s?.get("gene_name")??s?.get("parentId")}),{...C,treeMetadata:y}}function Xk(e,t){let r={},n=e.taxid?t.get(e.taxid):void 0;return n?.sciname&&(r["Scientific name"]=n.sciname),n?.commonName&&(r["Common name"]=n.commonName),e.accession&&(r.Accession=e.accession),e.id&&(r.ID=e.id),e.title&&(r.Description=e.title),r}bs();function Bs({model:e,coord:t}){let{querySeqName:r,transcriptToMsaMap:n,mafRegion:o}=e,s=e.rows.find(c=>c[0]===r)?.[1];if(!s)return;let a=pl(s,t);if(a!==void 0){if(o){let c=o.start+a;return c>=o.end?void 0:{refName:o.refName,start:c,end:c+1}}if(n){let{refName:c,p2g:l}=n,A=l[a],u=l[a+1];return A!==void 0&&u!==void 0?{refName:c,start:Math.min(A,u),end:Math.max(A,u)}:void 0}}}_i();var eN="jbrowse-msaview-data",tN=1,Ss="msa-data";async function Um(){return Rn(eN,tN,{upgrade(e){e.objectStoreNames.contains(Ss)||e.createObjectStore(Ss,{keyPath:"id"}).createIndex("timestamp","timestamp",{unique:!1})}})}function sQ(){return`msa-${Date.now()}-${Math.random().toString(36).slice(2,11)}`}async function aQ(e,t){try{let r=await Um(),n={id:e,msa:t.msa,tree:t.tree,treeMetadata:t.treeMetadata,timestamp:Date.now()};return await r.put(Ss,n),!0}catch(r){return console.warn("Failed to store MSA data:",r),!1}}async function cQ(e){try{let r=await(await Um()).get(Ss,e);return r?{msa:r.msa,tree:r.tree,treeMetadata:r.treeMetadata}:void 0}catch(t){console.warn("Failed to retrieve MSA data:",t);return}}async function lQ(e=10080*60*1e3){try{let t=await Um(),r=Date.now()-e,i=await t.transaction(Ss,"readwrite").store.index("timestamp").openCursor(IDBKeyRange.upperBound(r)),s=0;for(;i;)await i.delete(),s++,i=await i.continue();return s}catch(t){return console.warn("Failed to cleanup old MSA data:",t),0}}bs();function AQ(e){let{dataStoreId:t,rows:r}=e;t&&r.length===0&&(async()=>{try{e.setLoadingStoredData(!0);let n=await cQ(t);n&&(n.msa&&e.setMSA(n.msa),n.tree&&e.setTree(n.tree))}catch(n){console.error("Failed to load MSA data from IndexedDB:",n)}finally{e.setLoadingStoredData(!1)}})()}function uQ(e){let{rows:t,dataStoreId:r,isStoringData:n}=e;if(t.length>0&&!r&&!n){if(e.msaFilehandle||e.treeFilehandle)return;let o=e.data.msa,i=e.data.tree;(o||i)&&(e.setIsStoringData(!0),(async()=>{try{let s=sQ();await aQ(s,{msa:o,tree:i,treeMetadata:e.data.treeMetadata})&&e.setDataStoreId(s)}catch(s){console.error("Failed to store MSA data to IndexedDB:",s)}finally{e.setIsStoringData(!1)}})())}}function fQ(e){e.blastParams&&(async()=>{try{e.setProgress("Submitting query"),e.setError(void 0);let t=await oQ({self:e});e.setData(t),e.setBlastParams(void 0)}catch(t){e.setError(t),console.error(t)}finally{e.setProgress("")}})()}function mQ(e){let{init:t}=e;t&&(async()=>{try{e.setError(void 0);let{msaData:r,msaUrl:n,treeData:o,treeUrl:i,querySeqName:s}=t;if(n){let a=Qd(n);a&&(e.setUniprotId(a),e.setQuerySeqName("query"))}if(s&&e.setQuerySeqName(s),r)e.setMSA(r);else if(n){let a=await fetch(n);if(!a.ok)throw new Error(`Failed to fetch MSA: ${a.status}`);let c=await a.text();e.setMSA(c)}if(o)e.setTree(o);else if(i){let a=await fetch(i);if(!a.ok)throw new Error(`Failed to fetch tree: ${a.status}`);let c=await a.text();e.setTree(c)}e.setInit(void 0)}catch(r){e.setError(r),console.error(r)}})()}function dQ(e){let{mouseCol:t,mouseClickCol:r}=e,n=t===void 0?void 0:Bs({model:e,coord:t}),o=r===void 0?void 0:Bs({model:e,coord:r});e.setConnectedHighlights([n,o].filter(i=>!!i))}function gQ(e){let{mouseCol:t,connectedProteinViews:r}=e;if(r.length!==0)for(let n of r){let o=n.proteinView.structures[n.structureIdx];if(!o)continue;if(t===void 0){o.clearHighlightFromExternal?.();continue}let i=e.getSequenceByRowName(n.msaRowName);if(!i)continue;let s=pl(i,t);if(s===void 0){o.clearHighlightFromExternal?.();continue}let a=n.msaToStructure[s];a===void 0?o.clearHighlightFromExternal?.():o.highlightFromExternal?.(a)}}function pQ(e){let{connectedViewId:t,uniprotId:r,rows:n,connectedStructures:o}=e;if(!(!r||n.length===0))for(let i of Mn((0,qm.getSession)(e).views))for(let s=0;s<i.structures.length;s++){let a=i.structures[s];if(!(!a||a.connectedViewId!==t||a.uniprotId!==r||o.some(l=>l.proteinViewId===i.id&&l.structureIdx===s))&&a.structureSequences?.[0])try{e.connectToStructure(i.id,s)}catch(l){console.error("Failed to auto-connect to ProteinView:",l)}}}function hQ(e){let{connectedViewId:t,transcriptToMsaMap:r,querySeqName:n}=e;if(!t||!r)return;let o=new Set;for(let s of Mn((0,qm.getSession)(e).views))for(let a of s.structures){if(a.connectedViewId!==t)continue;let c=a.hoverGenomeHighlights;if(!c||c.length===0)continue;let{g2p:l}=r;for(let A of c)for(let u=A.start;u<A.end;u++){let m=l[u];if(m!==void 0){let d=e.seqPosToGlobalCol(n,m);o.add(d)}}}let i=Array.from(o).map(s=>e.globalColToVisibleCol(s)).filter(s=>s!==void 0);e.setHighlightedColumns(i.length>0?i:void 0)}function CQ(){lQ().catch(e=>{console.error("Failed to cleanup old MSA data:",e)})}var EQ=f(ge());function IQ({model:e}){let{hovered:t}=(0,EQ.getSession)(e),{querySeqName:r,transcriptToMsaMap:n,connectedView:o,mafRegion:i}=e;if(!o?.initialized||!Sd(t))return;let{coord:s,refName:a}=t.hoverPosition;if(i){if(a!==i.refName||!o.assemblyNames.includes(i.assemblyName)||s<i.start||s>=i.end)return;let l=s-i.start;return e.seqPosToVisibleCol(r,l)}if(n){let{g2p:c}=n,l=c[s];if(l!==void 0)return e.seqPosToVisibleCol(r,l)}}var rN={A:{A:4,R:-1,N:-2,D:-2,C:0,Q:-1,E:-1,G:0,H:-2,I:-1,L:-1,K:-1,M:-1,F:-2,P:-1,S:1,T:0,W:-3,Y:-2,V:0,B:-2,Z:-1,X:0,"*":-4},R:{A:-1,R:5,N:0,D:-2,C:-3,Q:1,E:0,G:-2,H:0,I:-3,L:-2,K:2,M:-1,F:-3,P:-2,S:-1,T:-1,W:-3,Y:-2,V:-3,B:-1,Z:0,X:-1,"*":-4},N:{A:-2,R:0,N:6,D:1,C:-3,Q:0,E:0,G:0,H:1,I:-3,L:-3,K:0,M:-2,F:-3,P:-2,S:1,T:0,W:-4,Y:-2,V:-3,B:3,Z:0,X:-1,"*":-4},D:{A:-2,R:-2,N:1,D:6,C:-3,Q:0,E:2,G:-1,H:-1,I:-3,L:-4,K:-1,M:-3,F:-3,P:-1,S:0,T:-1,W:-4,Y:-3,V:-3,B:4,Z:1,X:-1,"*":-4},C:{A:0,R:-3,N:-3,D:-3,C:9,Q:-3,E:-4,G:-3,H:-3,I:-1,L:-1,K:-3,M:-1,F:-2,P:-3,S:-1,T:-1,W:-2,Y:-2,V:-1,B:-3,Z:-3,X:-2,"*":-4},Q:{A:-1,R:1,N:0,D:0,C:-3,Q:5,E:2,G:-2,H:0,I:-3,L:-2,K:1,M:0,F:-3,P:-1,S:0,T:-1,W:-2,Y:-1,V:-2,B:0,Z:3,X:-1,"*":-4},E:{A:-1,R:0,N:0,D:2,C:-4,Q:2,E:5,G:-2,H:0,I:-3,L:-3,K:1,M:-2,F:-3,P:-1,S:0,T:-1,W:-3,Y:-2,V:-2,B:1,Z:4,X:-1,"*":-4},G:{A:0,R:-2,N:0,D:-1,C:-3,Q:-2,E:-2,G:6,H:-2,I:-4,L:-4,K:-2,M:-3,F:-3,P:-2,S:0,T:-2,W:-2,Y:-3,V:-3,B:-1,Z:-2,X:-1,"*":-4},H:{A:-2,R:0,N:1,D:-1,C:-3,Q:0,E:0,G:-2,H:8,I:-3,L:-3,K:-1,M:-2,F:-1,P:-2,S:-1,T:-2,W:-2,Y:2,V:-3,B:0,Z:0,X:-1,"*":-4},I:{A:-1,R:-3,N:-3,D:-3,C:-1,Q:-3,E:-3,G:-4,H:-3,I:4,L:2,K:-3,M:1,F:0,P:-3,S:-2,T:-1,W:-3,Y:-1,V:3,B:-3,Z:-3,X:-1,"*":-4},L:{A:-1,R:-2,N:-3,D:-4,C:-1,Q:-2,E:-3,G:-4,H:-3,I:2,L:4,K:-2,M:2,F:0,P:-3,S:-2,T:-1,W:-2,Y:-1,V:1,B:-4,Z:-3,X:-1,"*":-4},K:{A:-1,R:2,N:0,D:-1,C:-3,Q:1,E:1,G:-2,H:-1,I:-3,L:-2,K:5,M:-1,F:-3,P:-1,S:0,T:-1,W:-3,Y:-2,V:-2,B:0,Z:1,X:-1,"*":-4},M:{A:-1,R:-1,N:-2,D:-3,C:-1,Q:0,E:-2,G:-3,H:-2,I:1,L:2,K:-1,M:5,F:0,P:-2,S:-1,T:-1,W:-1,Y:-1,V:1,B:-3,Z:-1,X:-1,"*":-4},F:{A:-2,R:-3,N:-3,D:-3,C:-2,Q:-3,E:-3,G:-3,H:-1,I:0,L:0,K:-3,M:0,F:6,P:-4,S:-2,T:-2,W:1,Y:3,V:-1,B:-3,Z:-3,X:-1,"*":-4},P:{A:-1,R:-2,N:-2,D:-1,C:-3,Q:-1,E:-1,G:-2,H:-2,I:-3,L:-3,K:-1,M:-2,F:-4,P:7,S:-1,T:-1,W:-4,Y:-3,V:-2,B:-2,Z:-1,X:-2,"*":-4},S:{A:1,R:-1,N:1,D:0,C:-1,Q:0,E:0,G:0,H:-1,I:-2,L:-2,K:0,M:-1,F:-2,P:-1,S:4,T:1,W:-3,Y:-2,V:-2,B:0,Z:0,X:0,"*":-4},T:{A:0,R:-1,N:0,D:-1,C:-1,Q:-1,E:-1,G:-2,H:-2,I:-1,L:-1,K:-1,M:-1,F:-2,P:-1,S:1,T:5,W:-2,Y:-2,V:0,B:-1,Z:-1,X:0,"*":-4},W:{A:-3,R:-3,N:-4,D:-4,C:-2,Q:-2,E:-3,G:-2,H:-2,I:-3,L:-2,K:-3,M:-1,F:1,P:-4,S:-3,T:-2,W:11,Y:2,V:-3,B:-4,Z:-3,X:-2,"*":-4},Y:{A:-2,R:-2,N:-2,D:-3,C:-2,Q:-1,E:-2,G:-3,H:2,I:-1,L:-1,K:-2,M:-1,F:3,P:-3,S:-2,T:-2,W:2,Y:7,V:-1,B:-3,Z:-2,X:-1,"*":-4},V:{A:0,R:-3,N:-3,D:-3,C:-1,Q:-2,E:-2,G:-3,H:-3,I:3,L:1,K:-2,M:1,F:-1,P:-2,S:-2,T:0,W:-3,Y:-1,V:4,B:-3,Z:-2,X:-1,"*":-4},B:{A:-2,R:-1,N:3,D:4,C:-3,Q:0,E:1,G:-1,H:0,I:-3,L:-4,K:0,M:-3,F:-3,P:-2,S:0,T:-1,W:-4,Y:-3,V:-3,B:4,Z:1,X:-1,"*":-4},Z:{A:-1,R:0,N:0,D:1,C:-3,Q:3,E:4,G:-2,H:0,I:-3,L:-3,K:1,M:-1,F:-3,P:-1,S:0,T:-1,W:-3,Y:-2,V:-2,B:1,Z:4,X:-1,"*":-4},X:{A:0,R:-1,N:-1,D:-1,C:-2,Q:-1,E:-1,G:-1,H:-1,I:-1,L:-1,K:-1,M:-1,F:-1,P:-2,S:0,T:0,W:-2,Y:-1,V:-1,B:-1,Z:-1,X:-1,"*":-4},"*":{A:-4,R:-4,N:-4,D:-4,C:-4,Q:-4,E:-4,G:-4,H:-4,I:-4,L:-4,K:-4,M:-4,F:-4,P:-4,S:-4,T:-4,W:-4,Y:-4,V:-4,B:-4,Z:-4,X:-4,"*":1}},xQ=rN;function yQ(e,t){return xQ[e.toUpperCase()]?.[t.toUpperCase()]??-4}var nN=-10,oN=-.5;function iN(e,t,r=nN,n=oN){let o=e.length,i=t.length,s=[],a=[],c=[];for(let h=0;h<=o;h++){s[h]=[],a[h]=[],c[h]=[];for(let x=0;x<=i;x++)s[h][x]=-1/0,a[h][x]=-1/0,c[h][x]=-1/0}s[0][0]=0;for(let h=1;h<=o;h++)a[h][0]=r+(h-1)*n;for(let h=1;h<=i;h++)c[0][h]=r+(h-1)*n;for(let h=1;h<=o;h++)for(let x=1;x<=i;x++){let w=yQ(e[h-1],t[x-1]);s[h][x]=Math.max(s[h-1][x-1],a[h-1][x-1],c[h-1][x-1])+w,a[h][x]=Math.max(s[h-1][x]+r,a[h-1][x]+n),c[h][x]=Math.max(s[h][x-1]+r,c[h][x-1]+n)}let l="",A="",u=o,m=i,d=s[o][i],p=a[o][i],C=c[o][i],y=Math.max(d,p,C),I=y===d?"M":y===p?"Ix":"Iy";for(;u>0||m>0;)if(I==="M"&&u>0&&m>0){l=e[u-1]+l,A=t[m-1]+A;let h=yQ(e[u-1],t[m-1]),x=s[u-1][m-1],w=a[u-1][m-1],Q=s[u][m];Q===x+h?I="M":Q===w+h?I="Ix":I="Iy",u--,m--}else if(I==="Ix"&&u>0){l=e[u-1]+l,A="-"+A;let h=a[u][m],x=s[u-1][m]+r;I=h===x?"M":"Ix",u--}else if(m>0){l="-"+l,A=t[m-1]+A;let h=c[u][m],x=s[u][m-1]+r;I=h===x?"M":"Iy",m--}else break;return{alignedSeq1:l,alignedSeq2:A,score:y}}function sN(e,t){let r="";for(let n=0;n<e.length;n++){let o=e[n],i=t[n];o==="-"||i==="-"?r+=" ":o.toUpperCase()===i.toUpperCase()?r+="|":r+=" "}return r}function wQ(e,t){let{alignedSeq1:r,alignedSeq2:n}=iN(e,t);return{consensus:sN(r,n),alns:[{id:"msa",seq:r},{id:"structure",seq:n}]}}function bQ(e){let t=e.alns[0].seq,r=e.alns[1].seq;if(t.length!==r.length)throw new Error("Aligned sequences must have same length");let n=0,o=0,i=new Map,s=new Map;for(let a=0;a<t.length;a++){let c=t[a],l=r[a];c!=="-"&&l!=="-"?(i.set(n,o),s.set(o,n),n++,o++):c==="-"?o++:n++}return{seq1ToSeq2:i,seq2ToSeq1:s}}bs();var AN=(0,TQ.lazy)(()=>Promise.resolve().then(()=>(vQ(),MQ)));function jm(){return Ie.types.compose(_Q.BaseViewModel,ml(),Ie.types.model("MsaView",{connectedViewId:Ie.types.maybe(Ie.types.string),connectedFeature:Ie.types.frozen(),connectedHighlights:Ie.types.array(Ie.types.model({refName:Ie.types.string,start:Ie.types.number,end:Ie.types.number})),blastParams:Ie.types.frozen(),querySeqName:"QUERY",uniprotId:Ie.types.maybe(Ie.types.string),zoomToBaseLevel:!1,init:Ie.types.frozen(),connectedStructures:Ie.types.array(Ie.types.frozen()),dataStoreId:Ie.types.maybe(Ie.types.string),mafRegion:Ie.types.frozen()})).volatile(()=>({rid:void 0,progress:"",error:void 0,loadingStoredData:!1,isStoringData:!1})).views(e=>({getRowByName(t){return e.rows.find(r=>r[0]===t)},getSequenceByRowName(t){return e.rows.find(r=>r[0]===t)?.[1]}})).views(e=>({get transcriptToMsaMap(){return e.connectedFeature?zh(e.connectedFeature):void 0},get connectedView(){let{views:t}=(0,Ii.getSession)(e);return t.find(r=>r.id===e.connectedViewId)},get connectedProteinViews(){let t=Mn((0,Ii.getSession)(e).views),r=[];for(let n of e.connectedStructures){let o=t.find(i=>i.id===n.proteinViewId);o&&r.push({...n,proteinView:o})}return r}})).views(e=>({get structureHoverCol(){for(let t of e.connectedProteinViews){let n=t.proteinView.structures[t.structureIdx]?.hoverPosition?.structureSeqPos;if(n!==void 0){let o=t.structureToMsa[n];if(o!==void 0){let i=e.getSequenceByRowName(t.msaRowName);if(i){let s=iQ(i,o);if(s!==void 0)return e.globalColToVisibleCol(s)}}}}}})).views(e=>({get mouseCol2(){let t=e.structureHoverCol;return t!==void 0?t:IQ({model:e})}})).actions(e=>({setZoomToBaseLevel(t){e.zoomToBaseLevel=t},setError(t){e.error=t},setProgress(t){e.progress=t},setRid(t){e.rid=t},setConnectedHighlights(t){e.connectedHighlights=(0,Ie.cast)(t)},addToConnectedHighlights(t){e.connectedHighlights.push(t)},clearConnectedHighlights(){e.connectedHighlights=(0,Ie.cast)([])},setBlastParams(t){e.blastParams=t},setInit(t){e.init=t},setQuerySeqName(t){e.querySeqName=t},setUniprotId(t){e.uniprotId=t},setDataStoreId(t){e.dataStoreId=t},setMafRegion(t){e.mafRegion=t},setLoadingStoredData(t){e.loadingStoredData=t},setIsStoringData(t){e.isStoringData=t},handleMsaClick(t){let{connectedView:r,zoomToBaseLevel:n}=e,{assemblyManager:o}=(0,Ii.getSession)(e),i=Bs({model:e,coord:t});if(!(!i||!r))if(n)r.navTo(i);else{let s=Rs({assemblyManager:o,assemblyNames:r.assemblyNames,refName:i.refName});r.centerAt(i.start,s)}},connectToStructure(t,r,n){let o=n??e.querySeqName,i=e.getSequenceByRowName(o);if(!i)throw new Error(`MSA row "${o}" not found`);let s=i.replaceAll("-",""),a=Mn((0,Ii.getSession)(e).views).find(p=>p.id===t);if(!a)throw new Error(`ProteinView "${t}" not found`);let c=a.structures[r];if(!c)throw new Error(`Structure at index ${r} not found`);let l=c.structureSequences?.[0];if(!l)throw new Error("Structure sequence not available");let A=wQ(s,l),{seq1ToSeq2:u,seq2ToSeq1:m}=bQ(A),d={proteinViewId:t,structureIdx:r,msaRowName:o,msaToStructure:Object.fromEntries(u),structureToMsa:Object.fromEntries(m)};e.connectedStructures.push(d)},disconnectFromStructure(t,r){let n=e.connectedStructures.findIndex(o=>o.proteinViewId===t&&o.structureIdx===r);n!==-1&&e.connectedStructures.splice(n,1)},disconnectAllStructures(){e.connectedStructures.clear()}})).actions(e=>{let t=e.setMouseClickPos.bind(e);return{setMouseClickPos(r,n){t(r,n),r!==void 0&&e.handleMsaClick(r)}}}).views(e=>({extraViewMenuItems(){return[{label:"Zoom to base level on click?",checked:e.zoomToBaseLevel,type:"checkbox",onClick:()=>{e.setZoomToBaseLevel(!e.zoomToBaseLevel)}},{label:"Connect to protein structure...",onClick:()=>{(0,Ii.getSession)(e).queueDialog(t=>[AN,{model:e,handleClose:t}])}},...e.connectedStructures.length>0?[{label:"Disconnect from protein structures",onClick:()=>{e.disconnectAllStructures()}}]:[]]}})).actions(e=>({afterCreate(){CQ();for(let t of[AQ,uQ,fQ,mQ,dQ,gQ,pQ,hQ])(0,Ie.addDisposer)(e,(0,DQ.autorun)(()=>{t(e)}))}}))}var CN=(0,YQ.lazy)(()=>Promise.resolve().then(()=>(VQ(),JQ)));function Wm(e){e.addViewType(()=>new WQ.default({name:"MsaView",stateModel:jm(),ReactComponent:CN}))}var zQ="2.4.3";var Il=class extends $Q.default{constructor(){super(...arguments);this.name="MsaViewPlugin";this.version=zQ;this.rootConfigurationSchema=r=>({msa:(0,zm.ConfigurationSchema)("MSA",{datasets:$m.types.maybe($m.types.array((0,zm.ConfigurationSchema)("MSAEntry",{datasetId:{type:"string",defaultValue:""},description:{type:"string",defaultValue:""},name:{type:"string",defaultValue:""},adapter:r.pluggableConfigSchemaType("adapter")})))})})}install(r){Wm(r),ru(r),nu(r),kl(r),Xl(r)}configure(r){(0,KQ.isAbstractMenuManager)(r.rootModel)&&r.rootModel.appendToSubMenu(["Add"],{label:"Multiple sequence alignment view",icon:Ed,onClick:n=>{n.addView("MsaView",{})}})}};return A1(EN);})();
|
|
75
75
|
/*! Bundled license information:
|
|
76
76
|
|
|
77
77
|
use-sync-external-store/cjs/use-sync-external-store-shim.production.js:
|