@abi-software/mapintegratedvuer 1.8.0-isan.2 → 1.8.0-isan.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.
@@ -1430,7 +1430,7 @@ usage: app.provide(ZINDEX_INJECTION_KEY, { current: 0 })`),{initialZIndex:n,curr
1430
1430
 
1431
1431
  <br>`)},getConnectivityDatasets:function(e){const t=[...this.componentsWithDatasets,...this.destinationsWithDatasets,...this.originsWithDatasets],r=e.split(",");let n=[];return r.forEach(i=>{const o=t.find(a=>a.name.toLowerCase().trim()===i.toLowerCase().trim());o&&n.push({id:o.id,label:o.name})}),n},connectivityHovered:function(e){const t=e?this.getConnectivityDatasets(e):[];this.$emit("connectivity-hovered",t)},connectivityClicked:function(e,t,r){let n={query:e,filter:[],data:r?this.getConnectivityDatasets(r):[]};t&&r&&n.filter.push({AND:void 0,facet:t,facetPropPath:"flatmap.connectivity.source",facetSubPropPath:void 0,term:"Connectivity"}),this.$emit("connectivity-clicked",n)},getErrorConnectivities:function(e){const t=[...new Set(e)];let r="";return t.forEach((n,i)=>{const{label:o}=n;r+=i===0?DS(o):o,t.length>1&&(i+2===t.length?r+=" and ":i+1<t.length&&(r+=", "))}),r},getConnectivityError:function(e){const{errorData:t,errorMessage:r}=e;return{errorConnectivities:this.getErrorConnectivities(t),errorMessage:r}},pushConnectivityError:function(e){const t=this.getConnectivityError(e),r=this.$refs.connectivityGraphRef;r&&r.showErrorMessage(t),this.connectivityError={...t},this.timeoutID&&clearTimeout(this.timeoutID),this.timeoutID=setTimeout(()=>{this.connectivityError=null},FUt)},onConnectivitySourceChange:function(e){const{featureId:t}=this.entry;this.connectivityLoading=!0,this.activeView!=="graphView"&&(this.graphViewLoaded=!1),this.updateGraphConnectivity(),Hs.emit("connectivity-source-change",{featureId:t,connectivitySource:e})},updateGraphConnectivity:function(){this.connectivitySource==="map"?this.getConnectionsFromMap().then(e=>{this.connectivityFromMap=e,this.connectivityLoading=!1}):(this.connectivityFromMap=null,this.connectivityLoading=!1)},getConnectionsFromMap:async function(){const e=this.flatmapApi+`flatmap/${this.entry.mapuuid}/connectivity/${this.entry.featureId[0]}`;try{const t=await fetch(e);if(!t.ok)throw new Error(`Response status: ${t.status}`);return await t.json()}catch(t){throw new Error(t)}},onToggleConnectivityTooltip:function(e){const t=e.option?e.name:"";this.connectivityHovered(t)},onConnectivityActionClick:function(e){Hs.emit("onConnectivityActionClick",e)}},mounted:function(){this.updatedCopyContent=this.getUpdateCopyContent(),Hs.on("connectivity-graph-error",e=>{this.pushConnectivityError(e)})}},jUt={key:0,class:"main"},UUt={key:0,class:"toggle-button"},GUt={class:"connectivity-info-title"},WUt={class:"title-content"},qUt={key:0,class:"block"},ZUt={class:"title"},XUt={style:{"word-break":"keep-all"}},KUt={key:0,class:"subtitle"},YUt={key:1,class:"block"},JUt={class:"title"},eGt={class:"title-buttons"},tGt={class:"block attribute-title-container"},rGt={class:"block buttons-row"},nGt={key:0},iGt={class:"content-container content-container-connectivity"},oGt={class:"content-container content-container-connectivity"},aGt={key:1,class:"content-container content-container-references"};function sGt(e,t,r,n,i,o){const a=Ns,l=xN,c=ZSt,u=Ni,d=Oge,h=s.resolveComponent("CopyToClipboard"),p=Rge,f=mye,m=rAt,g=s.resolveComponent("connectivity-list"),b=s.resolveComponent("connectivity-graph"),T=s.resolveComponent("ExternalResourceCard"),Q=L7;return o.entry?(s.openBlock(),s.createElementBlock("div",jUt,[r.connectivityEntry.length>1&&!r.entryId?(s.openBlock(),s.createElementBlock("div",UUt,[s.createVNode(l,{width:"auto",trigger:"hover",teleported:!1},{reference:s.withCtx(()=>[s.createVNode(a,{class:"button",onClick:o.previous,disabled:this.entryIndex===0},{default:s.withCtx(()=>t[4]||(t[4]=[s.createTextVNode(" Previous ")])),_:1},8,["onClick","disabled"])]),default:s.withCtx(()=>[s.createElementVNode("span",null,s.toDisplayString(o.previousLabel),1)]),_:1}),s.createVNode(l,{width:"auto",trigger:"hover",teleported:!1},{reference:s.withCtx(()=>[s.createVNode(a,{class:"button",onClick:o.next,disabled:this.entryIndex===this.connectivityEntry.length-1},{default:s.withCtx(()=>t[5]||(t[5]=[s.createTextVNode(" Next ")])),_:1},8,["onClick","disabled"])]),default:s.withCtx(()=>[s.createElementVNode("span",null,s.toDisplayString(o.nextLabel),1)]),_:1})])):s.createCommentVNode("",!0),s.createElementVNode("div",GUt,[s.createElementVNode("div",WUt,[o.entry.title?(s.openBlock(),s.createElementBlock("div",qUt,[s.createElementVNode("div",ZUt,[s.createElementVNode("span",{onClick:t[0]||(t[0]=L=>o.connectivityClicked(o.entry.featureId[0]))},s.toDisplayString(o.capitalise(o.entry.title)),1),o.entry.featuresAlert?(s.openBlock(),s.createBlock(l,{key:0,width:"250",trigger:"hover",teleported:!1,"popper-class":"popover-origin-help"},{reference:s.withCtx(()=>[s.createVNode(u,{class:"alert"},{default:s.withCtx(()=>[s.createVNode(c)]),_:1})]),default:s.withCtx(()=>[s.createElementVNode("span",XUt,s.toDisplayString(o.entry.featuresAlert),1)]),_:1})):s.createCommentVNode("",!0)]),o.hasProvenanceTaxonomyLabel?(s.openBlock(),s.createElementBlock("div",KUt,s.toDisplayString(o.provSpeciesDescription),1)):s.createCommentVNode("",!0)])):(s.openBlock(),s.createElementBlock("div",YUt,[s.createElementVNode("div",JUt,s.toDisplayString(o.entry.featureId),1)]))]),s.createElementVNode("div",eGt,[s.createVNode(l,{width:"auto",trigger:"hover",teleported:!1,"popper-class":"popover-map-pin"},{reference:s.withCtx(()=>[s.createVNode(a,{class:"button-circle",circle:"",onClick:o.showConnectivity},{default:s.withCtx(()=>[s.createVNode(u,{color:"white"},{default:s.withCtx(()=>[s.createVNode(d)]),_:1})]),_:1},8,["onClick"])]),default:s.withCtx(()=>[t[6]||(t[6]=s.createElementVNode("span",null," Show connectivity on map ",-1))]),_:1}),s.createVNode(h,{content:e.updatedCopyContent},null,8,["content"])])]),s.createElementVNode("div",{class:s.normalizeClass(["content-container population-display",e.dualConnectionSource?"population-display-toolbar":""])},[s.createElementVNode("div",tGt,[t[8]||(t[8]=s.createElementVNode("span",{class:"attribute-title"},"Population Display",-1)),e.activeView==="listView"?(s.openBlock(),s.createBlock(l,{key:0,width:"250",trigger:"hover",teleported:!1,"popper-class":"popover-origin-help"},{reference:s.withCtx(()=>[s.createVNode(u,{class:"info"},{default:s.withCtx(()=>[s.createVNode(p)]),_:1})]),default:s.withCtx(()=>[t[7]||(t[7]=s.createElementVNode("span",{style:{"word-break":"keep-all"}}," This list is ordered alphabetically, switch to graph view for path details. ",-1))]),_:1})):s.createCommentVNode("",!0)]),s.createElementVNode("div",rGt,[e.dualConnectionSource?(s.openBlock(),s.createElementBlock("div",nGt,[t[11]||(t[11]=s.createElementVNode("span",null,"Connectivity from:",-1)),s.createVNode(m,{modelValue:e.connectivitySource,"onUpdate:modelValue":t[1]||(t[1]=L=>e.connectivitySource=L),onChange:o.onConnectivitySourceChange},{default:s.withCtx(()=>[s.createVNode(f,{value:"map"},{default:s.withCtx(()=>t[9]||(t[9]=[s.createTextVNode("Map")])),_:1}),s.createVNode(f,{value:"sckan"},{default:s.withCtx(()=>t[10]||(t[10]=[s.createTextVNode("SCKAN")])),_:1})]),_:1},8,["modelValue","onChange"])])):s.createCommentVNode("",!0),s.createElementVNode("div",null,[s.createVNode(a,{class:s.normalizeClass(e.activeView==="listView"?"button":"el-button-secondary"),onClick:t[2]||(t[2]=L=>o.switchConnectivityView("listView"))},{default:s.withCtx(()=>t[12]||(t[12]=[s.createTextVNode(" List view ")])),_:1},8,["class"]),s.createVNode(a,{class:s.normalizeClass(e.activeView==="graphView"?"button":"el-button-secondary"),onClick:t[3]||(t[3]=L=>o.switchConnectivityView("graphView"))},{default:s.withCtx(()=>t[13]||(t[13]=[s.createTextVNode(" Graph view ")])),_:1},8,["class"])])])],2),s.withDirectives(s.createElementVNode("div",iGt,[s.withDirectives((s.openBlock(),s.createBlock(g,{key:`${o.connectivityKey}list`,entry:o.entry,origins:o.origins,components:o.components,destinations:o.destinations,originsWithDatasets:o.originsWithDatasets,componentsWithDatasets:o.componentsWithDatasets,destinationsWithDatasets:o.destinationsWithDatasets,availableAnatomyFacets:r.availableAnatomyFacets,connectivityError:e.connectivityError,onToggleConnectivityTooltip:o.onToggleConnectivityTooltip,onConnectivityActionClick:o.onConnectivityActionClick},null,8,["entry","origins","components","destinations","originsWithDatasets","componentsWithDatasets","destinationsWithDatasets","availableAnatomyFacets","connectivityError","onToggleConnectivityTooltip","onConnectivityActionClick"])),[[Q,e.connectivityLoading]])],512),[[s.vShow,e.activeView==="listView"]]),s.withDirectives(s.createElementVNode("div",oGt,[e.graphViewLoaded?s.withDirectives((s.openBlock(),s.createBlock(b,{key:`${o.connectivityKey}graph`,entry:o.entry.featureId[0],mapServer:o.flatmapApi,sckanVersion:o.sckanVersion,connectivityFromMap:e.connectivityFromMap,onTapNode:o.onTapNode,ref:"connectivityGraphRef"},null,8,["entry","mapServer","sckanVersion","connectivityFromMap","onTapNode"])),[[Q,e.connectivityLoading]]):s.createCommentVNode("",!0)],512),[[s.vShow,e.activeView==="graphView"]]),o.resources.length?(s.openBlock(),s.createElementBlock("div",aGt,[s.createVNode(T,{resources:o.resources,onReferencesLoaded:o.onReferencesLoaded,onShowReferenceConnectivities:o.onShowReferenceConnectivities},null,8,["resources","onReferencesLoaded","onShowReferenceConnectivities"])])):s.createCommentVNode("",!0)])):s.createCommentVNode("",!0)}const pxe=C1(zUt,[["render",sGt],["__scopeId","data-v-d21e9706"]]),lGt={name:"ConnectivityCard",data(){return{displayFields:["id"]}},props:{entry:{type:Object,default:()=>{}}},methods:{capitalise:function(e){return e?e.charAt(0).toUpperCase()+e.slice(1):""},cardClicked:function(e){this.$emit("connectivity-explorer-clicked",e)}}},cGt={class:"connectivity-card-container",ref:"container"},uGt={class:"connectivity-card",ref:"card"},dGt={class:"title"},hGt={key:0,class:"details"};function pGt(e,t,r,n,i,o){return s.openBlock(),s.createElementBlock("div",cGt,[s.createElementVNode("div",uGt,[t[1]||(t[1]=s.createElementVNode("div",{class:"seperator-path"},null,-1)),s.createElementVNode("div",{class:"card",onClick:t[0]||(t[0]=a=>o.cardClicked(r.entry))},[s.createElementVNode("div",dGt,s.toDisplayString(o.capitalise(r.entry.label)),1),(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(i.displayFields,a=>(s.openBlock(),s.createElementBlock(s.Fragment,{key:a},[r.entry[a]?(s.openBlock(),s.createElementBlock("div",hGt,[s.createElementVNode("strong",null,s.toDisplayString(a)+":",1),s.createTextVNode(" "+s.toDisplayString(r.entry[a]),1)])):s.createCommentVNode("",!0)],64))),128))])],512)],512)}const fxe=C1(lGt,[["render",pGt],["__scopeId","data-v-50187a1b"]]);var fGt={filters:[],searchInput:"",lastSearch:"",results:[],numberOfHits:0,filter:[],loadingCards:!1,numberPerPage:10,page:1,start:0};const mGt={components:{SearchFilters:xV,SearchHistory:bV,ConnectivityCard:fxe,ConnectivityInfo:pxe,Button:Ns,Card:ev,Icon:Ni,Input:af,Pagination:rv},name:"ConnectivityExplorer",props:{connectivityKnowledge:{type:Array,default:[]},entry:{type:Object,default:()=>fGt},envVars:{type:Object,default:()=>{}},connectivityEntry:{type:Array,default:[]},availableAnatomyFacets:{type:Object,default:[]}},data:function(){return{...this.entry,bodyStyle:{flex:"1 1 auto","flex-flow":"column",display:"flex"},filterOptions:[{id:3,key:"flatmap.connectivity.source",label:"Connectivity",children:[{facetPropPath:"flatmap.connectivity.source",id:0,label:"Origins"},{facetPropPath:"flatmap.connectivity.source",id:1,label:"Components"},{facetPropPath:"flatmap.connectivity.source",id:2,label:"Destinations"}]}],cascaderIsReady:!1,displayConnectivity:!1,expanded:""}},computed:{filterEntry:function(){return{numberOfHits:this.numberOfHits,filterFacets:this.filter,options:this.filterOptions}},paginatedResults:function(){return this.results.slice(this.start,this.start+this.numberPerPage)}},watch:{connectivityKnowledge:function(e){this.results=e,this.numberOfHits=this.results.length,this.loadingCards=!1},paginatedResults:function(){this.loadingCards=!1}},methods:{onConnectivityClicked:function(e){this.expanded="",this.$refs.searchHistory.selectValue="Search history",e.query.trim()&&this.$refs.searchHistory.addSearchToHistory(e.filter,e.query,e.data),this.$emit("connectivity-clicked",e)},onConnectivityExplorerClicked:function(e){this.expanded===e.id?this.expanded="":this.expanded=e.id,this.connectivityEntry.filter(t=>t.featureId[0]===e.id).length===0&&this.$emit("connectivity-explorer-clicked",e)},hoverChanged:function(e){const t=e&&{...e,type:"connectivity"};this.$emit("hover-changed",t)},resetSearch:function(){this.numberOfHits=0,this.results=[],this.loadingCards=!1},openSearch:function(e,t="",r={withSearch:!0}){this.searchInput=t,this.resetPageNavigation(),this.cascaderIsReady?(this.filter=this.$refs.filtersRef.getHierarchicalValidatedFilters(e),e&&e.length>0&&this.filter&&this.filter.length===0?(this.$refs.filtersRef.checkShowAllBoxes(),this.resetSearch()):this.filter&&(r.withSearch&&this.searchKnowledge(this.filter,t),this.$refs.filtersRef.setCascader(this.filter))):(this.filter=e,(!e||e.length==0)&&r.withSearch&&this.searchKnowledge(this.filter,t))},addFilter:function(e){this.cascaderIsReady?(this.resetPageNavigation(),e&&this.$refs.filtersRef.addFilter(e)&&this.$refs.filtersRef.initiateSearch()):Array.isArray(this.filter)?this.filter.push(e):this.filter=[e]},cascaderReady:function(){this.cascaderIsReady=!0,this.openSearch(this.filter,this.searchInput)},clearSearchClicked:function(){this.searchInput="",this.searchAndFilterUpdate(),this.$refs.filtersRef.checkShowAllBoxes()},searchEvent:function(e=!1){(e.keyCode===13||e instanceof MouseEvent)&&(this.searchInput=this.searchInput.trim(),this.searchAndFilterUpdate(),this.searchInput||this.$refs.filtersRef.checkShowAllBoxes())},filterUpdate:function(e){this.filters=[...e],this.searchAndFilterUpdate(),this.$emit("search-changed",{value:e,type:"filter-update"})},transformFiltersBeforeSearch:function(e){return e.map(t=>(t.facet2&&(t.facet=t.facet2,delete t.facet2),t))},searchAndFilterUpdate:function(){this.resetPageNavigation();const e=this.transformFiltersBeforeSearch(this.filters);this.searchKnowledge(e,this.searchInput)},searchKnowledge:function(e,t=""){this.$refs.searchHistory.selectValue="Search history",this.searchInput.trim()&&this.$refs.searchHistory.addSearchToHistory(this.filters,this.searchInput),this.loadingCards=!0,this.scrollToTop(),this.searchInput!==this.lastSearch?(this.lastSearch=t,this.$emit("search-changed",{value:this.searchInput,type:"query-update"})):this.loadingCards=!1},filtersLoading:function(e){this.loadingCards=e},numberPerPageUpdate:function(e){this.numberPerPage=e,this.pageChange(1)},pageChange:function(e){this.start=(e-1)*this.numberPerPage,this.page=e,this.searchKnowledge(this.filters,this.searchInput)},scrollToTop:function(){this.$refs.content&&this.$refs.content.scroll({top:0,behavior:"smooth"})},resetPageNavigation:function(){this.start=0,this.page=1},searchHistorySearch:function(e){this.$emit("connectivity-clicked",{data:e.data,filter:e.filters,query:e.search})}},mounted:function(){localStorage.removeItem("connectivity-active-view"),this.openSearch(this.filter,this.searchInput)}},gGt={class:"header"},yGt={class:"content scrollbar",ref:"content"},TGt={key:0,class:"error-feedback"};function vGt(e,t,r,n,i,o){const a=af,l=Ns,c=xV,u=bV,d=fxe,h=pxe,p=rv,f=ev,m=L7;return s.openBlock(),s.createBlock(f,{"body-style":e.bodyStyle,class:"content-card"},{header:s.withCtx(()=>[s.createElementVNode("div",gGt,[s.createVNode(a,{class:"search-input",placeholder:"Search",modelValue:e.searchInput,"onUpdate:modelValue":t[0]||(t[0]=g=>e.searchInput=g),onKeyup:o.searchEvent,clearable:"",onClear:o.clearSearchClicked},null,8,["modelValue","onKeyup","onClear"]),s.createVNode(l,{type:"primary",class:"button",onClick:o.searchEvent,size:"large"},{default:s.withCtx(()=>t[7]||(t[7]=[s.createTextVNode(" Search ")])),_:1},8,["onClick"]),s.createVNode(l,{type:"primary",class:"button",onClick:t[1]||(t[1]=g=>o.onConnectivityClicked({filter:[],query:""})),size:"default"},{default:s.withCtx(()=>t[8]||(t[8]=[s.createTextVNode(" Reset ")])),_:1})])]),default:s.withCtx(()=>[s.createVNode(c,{class:"filters",ref:"filtersRef",filterType:"connectivity",entry:o.filterEntry,envVars:r.envVars,onFilterResults:o.filterUpdate,onNumberPerPage:o.numberPerPageUpdate,onLoading:o.filtersLoading,onCascaderReady:o.cascaderReady},null,8,["entry","envVars","onFilterResults","onNumberPerPage","onLoading","onCascaderReady"]),s.createVNode(u,{ref:"searchHistory",localStorageKey:"sparc.science-connectivity-search-history",onSearch:o.searchHistorySearch},null,8,["onSearch"]),s.withDirectives((s.openBlock(),s.createElementBlock("div",yGt,[e.results.length===0&&!e.loadingCards?(s.openBlock(),s.createElementBlock("div",TGt," No results found - Please change your search / filter criteria. ")):s.createCommentVNode("",!0),(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(o.paginatedResults,g=>(s.openBlock(),s.createElementBlock("div",{key:g.id,class:"step-item"},[s.createVNode(d,{class:"dataset-card",entry:g,onConnectivityExplorerClicked:o.onConnectivityExplorerClicked,onMouseenter:b=>o.hoverChanged(g),onMouseleave:t[2]||(t[2]=b=>o.hoverChanged(void 0))},null,8,["entry","onConnectivityExplorerClicked","onMouseenter"]),e.expanded===g.id?(s.openBlock(),s.createBlock(h,{key:0,connectivityEntry:r.connectivityEntry,entryId:g.id,availableAnatomyFacets:r.availableAnatomyFacets,envVars:r.envVars,onShowConnectivity:t[3]||(t[3]=b=>e.$emit("show-connectivity",b)),onShowReferenceConnectivities:t[4]||(t[4]=b=>e.$emit("show-reference-connectivities",b)),onConnectivityClicked:o.onConnectivityClicked,onConnectivityHovered:t[5]||(t[5]=b=>e.$emit("connectivity-hovered",b))},null,8,["connectivityEntry","entryId","availableAnatomyFacets","envVars","onConnectivityClicked"])):s.createCommentVNode("",!0)]))),128)),s.createVNode(p,{class:"pagination","current-page":e.page,"onUpdate:currentPage":t[6]||(t[6]=g=>e.page=g),"hide-on-single-page":"",large:"",layout:"prev, pager, next","page-size":e.numberPerPage,total:e.numberOfHits,onCurrentChange:o.pageChange},null,8,["current-page","page-size","total","onCurrentChange"])])),[[m,e.loadingCards]])]),_:1},8,["body-style"])}const mxe=C1(mGt,[["render",vGt],["__scopeId","data-v-5e0b6fc5"]]),bGt={name:"AnnotationTool",components:{AnnotationPopup:$4e,Button:Ns,CreateTooltipContent:D4e,Col:xye,ElIconDelete:OK,Icon:Ni,Row:Qye},props:{annotationEntry:{type:Array},createData:{type:Object,default:{}}},data:function(){return{ElIconDelete:s.shallowRef(OK)}}},QGt={class:"annotation-tool scrollbar"},xGt={key:1,class:"delete-container"};function _Gt(e,t,r,n,i,o){const a=s.resolveComponent("CreateTooltipContent"),l=s.resolveComponent("annotation-popup"),c=xye,u=Ns,d=Qye;return s.openBlock(),s.createElementBlock("div",QGt,[s.withDirectives(s.createVNode(a,{createData:r.createData,onConfirmCreate:t[0]||(t[0]=h=>e.$emit("confirm-create",h)),onCancelCreate:t[1]||(t[1]=h=>e.$emit("cancel-create")),class:"create-tooltip-content"},null,8,["createData"]),[[s.vShow,r.createData&&r.createData.toBeConfirmed]]),r.annotationEntry&&(!r.createData||!r.createData.toBeConfirmed)?(s.openBlock(),s.createBlock(l,{key:0,class:"annotation-popup",annotationEntry:r.annotationEntry,onAnnotation:t[2]||(t[2]=h=>e.$emit("annotation",h))},null,8,["annotationEntry"])):s.createCommentVNode("",!0),r.createData&&r.createData.toBeDeleted?(s.openBlock(),s.createElementBlock("div",xGt,[s.createVNode(d,null,{default:s.withCtx(()=>[s.createVNode(c,{offset:1,span:6},{default:s.withCtx(()=>t[5]||(t[5]=[s.createTextVNode("Delete this feature?")])),_:1}),s.createVNode(c,{offset:1,span:3},{default:s.withCtx(()=>[s.createVNode(u,{class:"delete-button",icon:e.ElIconDelete,onClick:t[3]||(t[3]=h=>e.$emit("confirm-delete"))},{default:s.withCtx(()=>t[6]||(t[6]=[s.createTextVNode(" Delete ")])),_:1},8,["icon"])]),_:1}),s.createVNode(c,{offset:1,span:2},{default:s.withCtx(()=>[s.createVNode(u,{class:"delete-button",onClick:t[4]||(t[4]=h=>e.$emit("cancel-create"))},{default:s.withCtx(()=>t[7]||(t[7]=[s.createTextVNode(" Dismiss ")])),_:1})]),_:1})]),_:1})])):s.createCommentVNode("",!0)])}const gxe=C1(bGt,[["render",_Gt],["__scopeId","data-v-ba0c41d1"]]),wGt={name:"Tabs",components:{ElIconClose:JL},props:{tabEntries:{type:Array,default:()=>[]},activeId:{type:Number,default:1},contextArray:{type:Array,default:()=>[]}},computed:{tabs:function(){const e=this.tabEntries.filter(n=>!n.closable),t=this.tabEntries.filter(n=>n.closable);let r=e.concat(t);if(this.contextArray.length)for(let n in r)r[n].contextCard=this.contextArray[n];return r}},methods:{tabClicked:function(e){this.$emit("tabClicked",{id:e.id,type:e.type})},tabClosed:function(e){this.$emit("tabClosed",{id:e.id,type:e.type})}}},LGt={class:"tabs-container"},SGt=["onClick"],EGt={class:"tab-title"};function CGt(e,t,r,n,i,o){const a=JL,l=Ni;return s.openBlock(),s.createElementBlock("div",LGt,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(o.tabs,c=>(s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["tab",{"active-tab":c.id==r.activeId}]),key:c.id,onClick:u=>o.tabClicked(c)},[s.createElementVNode("span",EGt,s.toDisplayString(c.title),1),c.closable?(s.openBlock(),s.createBlock(l,{key:0,onClick:s.withModifiers(u=>o.tabClosed(c),["stop"]),class:"tab-close-icon"},{default:s.withCtx(()=>[s.createVNode(a)]),_:2},1032,["onClick"])):s.createCommentVNode("",!0)],10,SGt))),128))])}const yxe=C1(wGt,[["render",CGt],["__scopeId","data-v-9dda8d57"]]),MGt={components:{SidebarContent:uxe,Tabs:yxe,ElIconArrowLeft:AK,ElIconArrowRight:YR,Drawer:yN,Icon:Ni,AnnotationTool:gxe,PMRSearch:hxe,ConnectivityExplorer:mxe},name:"SideBar",props:{tabs:{type:Array,default:[{title:"Dataset Explorer",id:1,type:"datasetExplorer",closable:!1},{title:"Connectivity Explorer",id:2,type:"connectivityExplorer",closable:!1},{title:"Annotation",id:3,type:"annotation",closable:!0},{title:"PMR Search",id:4,type:"pmrSearch",closable:!1}]},visible:{type:Boolean,default:!1},envVars:{type:Object,default:()=>{}},openAtStart:{type:Boolean,default:!1},connectivityEntry:{type:Array,default:[]},annotationEntry:{type:Array,default:[]},createData:{type:Object,default:{toBeConfirmed:!1,points:[],shape:"",x:0,y:0}},connectivityKnowledge:{type:Array,default:[]}},data:function(){return{drawerOpen:!1,availableAnatomyFacets:[],activeTabId:1}},methods:{onConnectivityExplorerClicked:function(e){this.$emit("connectivity-explorer-clicked",e)},hoverChanged:function(e){this.$emit("hover-changed",e)},showConnectivity:function(e){this.$emit("show-connectivity",e)},onShowReferenceConnectivities:function(e){this.$emit("show-reference-connectivities",e)},onConnectivityClicked:function(e){this.$emit("connectivity-clicked",e)},onConnectivityHovered:function(e){this.$emit("connectivity-hovered",e)},searchChanged:function(e,t){this.$emit("search-changed",{...t,id:e})},close:function(){this.drawerOpen=!1},toggleDrawer:function(){this.drawerOpen=!this.drawerOpen},openConnectivitySearch:function(e,t){this.drawerOpen=!0,this.$nextTick(()=>{this.getTabRef(void 0,"connectivityExplorer",!0).openSearch(e,t)})},openSearch:function(e,t){this.drawerOpen=!0,this.$nextTick(()=>{this.getTabRef(void 0,"datasetExplorer",!0).openSearch(e,t)})},openPMRSearch:function(e,t){this.drawerOpen=!0,this.$nextTick(()=>{this.getTabRef(void 0,"pmrSearch",!0).openPMRSearch(e,t)})},getTabRef:function(e,t,r=!1){const n=this.tabEntries.filter(a=>(e===void 0||a.id===e)&&(t===void 0||a.type===t)),i=n.length?n:this.tabEntries,o=i[0].type+"Tab_"+i[0].id;return r&&this.setActiveTab({id:i[0].id,type:i[0].type}),this.$refs[o][0]},addFilter:function(e){this.drawerOpen=!0,e.AND=!0,this.$nextTick(()=>{this.getTabRef(void 0,"datasetExplorer",!0).addFilter(e)})},openNeuronSearch:function(e){this.drawerOpen=!0,this.$nextTick(()=>{this.getTabRef(void 0,"datasetExplorer",!0).openSearch("",void 0,"scicrunch-query-string/",{field:"*organ.curie",curie:e})})},getAlgoliaFacets:async function(){return await this.getTabRef(void 0,"datasetExplorer").getAlgoliaFacets()},setDrawerOpen:function(e=!0){this.drawerOpen=e},onPmrActionClick:function(e){this.$emit("actionClick",e)},setActiveTab:function(e){const t=this.tabs.filter(n=>n.id===e.id&&n.type===e.type),r=t.length?t:this.tabEntries;this.activeTabId=r[0].id},tabClicked:function(e){this.setActiveTab(e),this.$emit("tabClicked",e)},tabClosed:function(e){this.$emit("tabClosed",e)},updateConnectivityGraphError:function(e){Hs.emit("connectivity-graph-error",e)},storeAvailableAnatomyFacets:function(e){localStorage.setItem("available-anatomy-facets",JSON.stringify(e))}},computed:{tabEntries:function(){return this.tabs.filter(e=>e.type==="datasetExplorer"||e.type==="connectivityExplorer"||e.type==="pmrSearch"||e.type==="annotation"&&this.annotationEntry&&this.annotationEntry.length>0)}},created:function(){this.drawerOpen=this.openAtStart},mounted:function(){Hs.on("PopoverActionClick",e=>{this.$emit("actionClick",e)}),Hs.on("number-of-datasets-for-anatomies",e=>{this.$emit("number-of-datasets-for-anatomies",e)}),Hs.on("anatomy-in-datasets",e=>{this.$emit("anatomy-in-datasets",e)}),Hs.on("contextUpdate",e=>{this.$emit("contextUpdate",e)}),Hs.on("datalink-clicked",e=>{this.$emit("datalink-clicked",e)}),Hs.on("onConnectivityActionClick",e=>{this.tabClicked({id:1,type:"datasetExplorer"}),this.$emit("actionClick",e)}),Hs.on("connectivity-source-change",e=>{this.$emit("connectivity-source-change",e)}),Hs.on("available-facets",e=>{this.availableAnatomyFacets=e.find(t=>t.label==="Anatomical Structure").children,this.storeAvailableAnatomyFacets(this.availableAnatomyFacets)})}},kGt={ref:"container"},AGt={class:"box-card"},OGt={class:"sidebar-container"};function PGt(e,t,r,n,i,o){const a=AK,l=Ni,c=YR,u=yxe,d=gxe,h=mxe,p=hxe,f=uxe,m=yN;return s.openBlock(),s.createElementBlock("div",kGt,[e.drawerOpen?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock("div",{key:0,onClick:t[0]||(t[0]=(...g)=>o.toggleDrawer&&o.toggleDrawer(...g)),class:"open-tab"},[s.createVNode(l,null,{default:s.withCtx(()=>[s.createVNode(a)]),_:1})])),s.createVNode(m,{class:"side-bar my-drawer",modelValue:e.drawerOpen,"onUpdate:modelValue":t[9]||(t[9]=g=>e.drawerOpen=g),teleported:!1,"modal-append-to-body":!1,size:"584","with-header":!1,wrapperClosable:!1,modal:!1,"modal-class":"sidebar-body","z-index":10,"lock-scroll":!1},{default:s.withCtx(()=>[s.createElementVNode("div",AGt,[e.drawerOpen?(s.openBlock(),s.createElementBlock("div",{key:0,onClick:t[1]||(t[1]=(...g)=>o.close&&o.close(...g)),class:"close-tab"},[s.createVNode(l,null,{default:s.withCtx(()=>[s.createVNode(c)]),_:1})])):s.createCommentVNode("",!0),s.createElementVNode("div",OGt,[o.tabEntries.length>1?(s.openBlock(),s.createBlock(u,{key:0,tabEntries:o.tabEntries,activeId:e.activeTabId,onTabClicked:o.tabClicked,onTabClosed:o.tabClosed},null,8,["tabEntries","activeId","onTabClicked","onTabClosed"])):s.createCommentVNode("",!0),(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(r.tabs,g=>(s.openBlock(),s.createElementBlock(s.Fragment,{key:"tab.id"},[g.type==="annotation"?s.withDirectives((s.openBlock(),s.createBlock(d,{key:0,ref_for:!0,ref:"annotationTab_"+g.id,annotationEntry:r.annotationEntry,createData:r.createData,onAnnotation:t[2]||(t[2]=b=>e.$emit("annotation-submitted",b)),onConfirmCreate:t[3]||(t[3]=b=>e.$emit("confirm-create",b)),onCancelCreate:t[4]||(t[4]=b=>e.$emit("cancel-create")),onConfirmDelete:t[5]||(t[5]=b=>e.$emit("confirm-delete",b))},null,8,["annotationEntry","createData"])),[[s.vShow,g.id===e.activeTabId]]):g.type==="connectivityExplorer"?s.withDirectives((s.openBlock(),s.createBlock(h,{key:1,ref_for:!0,ref:"connectivityExplorerTab_"+g.id,connectivityKnowledge:r.connectivityKnowledge,envVars:r.envVars,connectivityEntry:r.connectivityEntry,availableAnatomyFacets:e.availableAnatomyFacets,onSearchChanged:b=>o.searchChanged(g.id,b),onHoverChanged:t[6]||(t[6]=b=>o.hoverChanged(b)),onShowConnectivity:o.showConnectivity,onShowReferenceConnectivities:o.onShowReferenceConnectivities,onConnectivityClicked:o.onConnectivityClicked,onConnectivityHovered:o.onConnectivityHovered,onConnectivityExplorerClicked:o.onConnectivityExplorerClicked},null,8,["connectivityKnowledge","envVars","connectivityEntry","availableAnatomyFacets","onSearchChanged","onShowConnectivity","onShowReferenceConnectivities","onConnectivityClicked","onConnectivityHovered","onConnectivityExplorerClicked"])),[[s.vShow,g.id===e.activeTabId]]):g.type==="pmrSearch"?s.withDirectives((s.openBlock(),s.createBlock(p,{key:2,class:"sidebar-content-container",envVars:r.envVars,ref_for:!0,ref:"pmrSearchTab_"+g.id,onSearchChanged:b=>o.searchChanged(g.id,b),onHoverChanged:t[7]||(t[7]=b=>o.hoverChanged(b)),onPmrActionClick:o.onPmrActionClick},null,8,["envVars","onSearchChanged","onPmrActionClick"])),[[s.vShow,g.id===e.activeTabId]]):s.withDirectives((s.openBlock(),s.createBlock(f,{key:3,class:"sidebar-content-container",contextCardEntry:g.contextCard,envVars:r.envVars,ref_for:!0,ref:"datasetExplorerTab_"+g.id,onSearchChanged:b=>o.searchChanged(g.id,b),onHoverChanged:t[8]||(t[8]=b=>o.hoverChanged(b)),onPmrActionClick:o.onPmrActionClick},null,8,["contextCardEntry","envVars","onSearchChanged","onPmrActionClick"])),[[s.vShow,g.id===e.activeTabId]])],64))),128))])])]),_:1},8,["modelValue"])],512)}const IGt=C1(MGt,[["render",PGt],["__scopeId","data-v-b0a93fd8"]]);/*! js-cookie v3.0.5 | MIT */function _V(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)e[n]=r[n]}return e}var RGt={read:function(e){return e[0]==='"'&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function VJ(e,t){function r(i,o,a){if(!(typeof document>"u")){a=_V({},t,a),typeof a.expires=="number"&&(a.expires=new Date(Date.now()+a.expires*864e5)),a.expires&&(a.expires=a.expires.toUTCString()),i=encodeURIComponent(i).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var l="";for(var c in a)a[c]&&(l+="; "+c,a[c]!==!0&&(l+="="+a[c].split(";")[0]));return document.cookie=i+"="+e.write(o,i)+l}}function n(i){if(!(typeof document>"u"||arguments.length&&!i)){for(var o=document.cookie?document.cookie.split("; "):[],a={},l=0;l<o.length;l++){var c=o[l].split("="),u=c.slice(1).join("=");try{var d=decodeURIComponent(c[0]);if(a[d]=e.read(u,d),i===d)break}catch{}}return i?a[i]:a}}return Object.create({set:r,get:n,remove:function(i,o){r(i,"",_V({},o,{expires:-1}))},withAttributes:function(i){return VJ(this.converter,_V({},this.attributes,i))},withConverter:function(i){return VJ(_V({},this.converter,i),this.attributes)}},{attributes:{value:Object.freeze(t)},converter:{value:Object.freeze(e)}})}var HJ=VJ(RGt,{path:"/"}),Bh=function(e,t,r,n,i){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?e!==t||!i:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?i.call(e,r):i?i.value=r:t.set(e,r),r},xa=function(e,t,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(e):n?n.value:t.get(e)},Yp,FS,$h,fc,Tf;const NGt=1e4;class VGt{constructor(t){Yp.add(this),FS.set(this,void 0),$h.set(this,null),fc.set(this,null),t.slice(-1)==="/"?Bh(this,FS,t.slice(0,-1),"f"):Bh(this,FS,t,"f")}get currentUser(){return xa(this,$h,"f")}get currentError(){return xa(this,fc,"f")}async authenticate(t){Bh(this,fc,null,"f"),Bh(this,$h,null,"f");const r=await xa(this,Yp,"m",Tf).call(this,t,"authenticate");return"error"in r?(HJ.remove("annotation-key"),Promise.resolve(xa(this,fc,"f"))):(HJ.set("annotation-key",r.session,{secure:!0,expires:1}),Bh(this,$h,r.data,"f"),Promise.resolve(xa(this,$h,"f")))}async unauthenticate(t){Bh(this,fc,null,"f"),Bh(this,$h,null,"f");const r=await xa(this,Yp,"m",Tf).call(this,t,"unauthenticate");return"success"in r?Promise.resolve(r):Promise.resolve(xa(this,fc,"f"))}async annotatedItemIds(t,r,n,i){const o={resource:r};n!==void 0&&(o.user=n),i!==void 0&&(o.participated=i);const a=await xa(this,Yp,"m",Tf).call(this,t,"items/","GET",o);return"error"in a?Promise.resolve(xa(this,fc,"f")):Promise.resolve(a)}async drawnFeatures(t,r,n){const i={resource:r};n!==void 0&&(i.items=n);const o=await xa(this,Yp,"m",Tf).call(this,t,"features/","GET",i);return"error"in o?Promise.resolve(xa(this,fc,"f")):Promise.resolve(o)}async itemAnnotations(t,r,n){const i=await xa(this,Yp,"m",Tf).call(this,t,"annotations/","GET",{resource:r,item:n});return"error"in i?Promise.resolve(xa(this,fc,"f")):Promise.resolve(i)}async annotation(t,r){const n=await xa(this,Yp,"m",Tf).call(this,t,"annotation/","GET",{annotation:r});return"error"in n?Promise.resolve(xa(this,fc,"f")):Promise.resolve(n)}async addAnnotation(t,r){if(xa(this,$h,"f")&&xa(this,$h,"f").canUpdate){const n=Object.assign({creator:xa(this,$h,"f"),created:new Date().toISOString()},r),i=await xa(this,Yp,"m",Tf).call(this,t,"annotation/","POST",{data:n});if(!("error"in i))return Promise.resolve(i);Bh(this,fc,i,"f")}else Bh(this,fc,{error:"user cannot add annotation"},"f");return Promise.resolve(xa(this,fc,"f"))}}FS=new WeakMap,$h=new WeakMap,fc=new WeakMap,Yp=new WeakSet,Tf=async function(t,r,n="GET",i={}){let o=!0;const a=new AbortController;setTimeout(()=>{o&&(console.log("Annotation server timeout..."),a.abort())},NGt);const l={method:n,signal:a.signal};let c=`${xa(this,FS,"f")}/${r}`;const u=HJ.get("annotation-key")||"";if(n==="GET"){const h=[];for(const[p,f]of Object.entries(i))h.push(`${p}=${encodeURIComponent(JSON.stringify(f))}`);h.push(`key=${encodeURIComponent(t)}`),h.push(`session=${encodeURIComponent(u)}`),c+="?"+h.join("&"),l.headers={Accept:"application/json; charset=utf-8","Cache-Control":"no-store"}}else if(n==="POST"){const h=Object.assign({key:t,session:u},i);l.body=JSON.stringify(h),l.headers={Accept:"application/json; charset=utf-8","Content-Type":"application/json; charset=utf-8","Cache-Control":"no-store"}}const d=await fetch(c,l);return o=!1,d.ok?Promise.resolve(await d.json()):(Bh(this,fc,{error:`${d.status} ${d.statusText}`},"f"),Promise.resolve(xa(this,fc,"f")))};const HGt=nl.defineStore("main",{state:()=>({userProfile:{token:""}}),getters:{userToken(e){return e.userProfile.token}},actions:{setUserToken(e){this.userProfile.token=e}}}),BGt={name:"SplitFlow",components:{Container:Hhe,Header:Bhe,Main:$he,DialogToolbarContent:a7e,SplitDialog:i7e,SideBar:IGt},setup(){const e=HGt();s.provide("userApiKey",e.userToken);const t=p7();let r=s.markRaw(new VGt(`${t.flatmapAPI}annotator`));return s.provide("$annotator",r),{annotator:r}},props:{state:{type:Object,default:void 0}},data:function(){return{sideBarVisibility:!0,startUp:!0,search:"",filterTriggered:!1,availableFacets:[],connectivityEntry:[],annotationEntry:[],annotationCallback:void 0,confirmCreateCallback:void 0,cancelCreateCallback:void 0,confirmDeleteCallback:void 0,createData:{},connectivityKnowledge:[],connectivityExplorerClicked:!1}},watch:{state:{handler:function(e){e&&(this._externalStateSet||this.setState(e),this._externalStateSet=!0)},immediate:!0}},methods:{onConnectivityExplorerClicked:function(e){this.connectivityExplorerClicked=!0,this.onDisplaySearch({term:e.id},!1)},actionClick:function(e){if(e)if(e.type=="Search")if(e.filter)this.openSearch([e.filter],e.term),sl.sendEvent({event:"interaction_event",event_name:"portal_maps_action_filter",category:e.term||"filter",location:"map_location_pin"});else{this.openSearch([],e.term);const t=e.featuredDataset?"portal_maps_featured_dataset_search":"portal_maps_action_search";sl.sendEvent({event:"interaction_event",event_name:t,category:e.term||"filter",location:"map_location_pin"}),this.filterTriggered=!0}else if(e.type=="PMRSearch"){if(e.term){let t=e.term;t==="cvs:functional.cell"?t="cellular":t==="cvs:functional.tissue"?t="tissue scale":t==="cvs:functional.whole-body"&&(t="whole-body scale"),t=`"${t}"`,this.openPMRSearch([],t),sl.sendEvent({event:"interaction_event",event_name:"portal_maps_action_filter",category:e.term||"filter",location:"map_location_pin"})}}else if(e.type=="URL")window.open(e.resource,"_blank");else if(e.type=="Facet"){if(this.$refs.sideBar){this.$refs.sideBar.addFilter(e);const{facet:t}=e;sl.sendEvent({event:"interaction_event",event_name:"portal_maps_action_filter",category:t||"filter",location:"map_location_pin"}),this.filterTriggered=!0}}else if(e.type=="Facets"){const t=[];this.settingsStore.facets.species.forEach(i=>{t.push({facet:W8e(i),term:"Species",facetPropPath:"organisms.primary.species.name"})}),t.push(...e.labels.map(i=>({facet:W8e(i),term:"Anatomical structure",facetPropPath:"anatomy.organ.category.name",facetSubPropPath:"anatomy.organ.name"}))),this.openSearch(t,"");const n=ibt(this.availableFacets,e.labels).join(", ");sl.sendEvent({event:"interaction_event",event_name:"portal_maps_action_filter",category:n||"filter",location:"map_popup_button"})}else if(e.type=="OpenCOR"){if(e.resource){const t=`https://opencor.ws/appdev/?openFile/${e.resource}`;window&&window.open(t,"_blank")}}else this.trackGalleryClick(e),this.createNewEntry(e)},trackGalleryClick:function(e){const t=[],{label:r,type:n,datasetId:i,discoverId:o,resource:a}=e;let l="",c=i||o;r&&t.push(r),n&&t.push(n),i&&t.push("("+c+")"),a&&(n==="Plot"?l=a.dataSource.url:l=typeof a=="string"?a:a.share_link),sl.sendEvent({event:"interaction_event",event_name:"portal_maps_gallery_click",category:t.join(" "),location:"map_sidebar_gallery",dataset_id:c?c+"":"",file_path:l})},onDisplaySearch:function(e,t=!0){let r=!1,n=this.$refs.splitdialog;n&&n.getActiveContents().forEach(o=>{o.search(e.term)&&(r=!0)}),this.$refs.dialogToolbar.setFailedSearch(r?void 0:e.term),t&&sl.sendEvent({event:"interaction_event",event_name:"portal_maps_display_search",category:e.term,location:"map_toolbar"})},fetchSuggestions:function(e){const t=[];this.$refs.splitdialog.getActiveContents().forEach(a=>a.searchSuggestions(e.data.term,t));const i=[];t.forEach(a=>{i.push(a.replaceAll('"',""))});const o=new Set(i);t.length=0;for(const a of o)t.push({value:'"'+a+'"'});e.data.cb(t)},onShowConnectivity:function(e){const t=this.splitFlowStore.getState(),r=(t==null?void 0:t.activeView)||"";cn.emit("show-connectivity",{featureIds:e,offset:r==="singlepanel"||r==="2horpanel"})},onShowReferenceConnectivities:function(e){cn.emit("show-reference-connectivities",e)},onConnectivityClicked:function(e){this.$refs&&this.$refs.sideBar&&(this.connectivityEntry=[],cn.emit("connectivity-query-filter",{id:2,type:"query-filter-update",query:e.query,filter:e.filter,data:e.data}),this.$refs.sideBar.openConnectivitySearch(e.filter,e.query))},onConnectivityHovered:function(e){cn.emit("connectivity-hovered",{connectivityEntry:this.connectivityEntry,data:e})},onConnectivitySourceChange:function(e){this.connectivityExplorerClicked=!0,cn.emit("connectivity-source-change",e)},hoverChanged:function(e){let t=[],r=[],n="",i=[];e&&(e.type==="dataset"?(t=e.anatomy?e.anatomy:[],r=e.organs?e.organs:[],n=e.doi?e.doi:""):e.type==="connectivity"&&(i=e.id?[e.id]:"")),this.settingsStore.updateHoverFeatures(t,r,n,i),cn.emit("hoverUpdate")},searchChanged:function(e){if(e.id===1){if(e&&e.type=="query-update"&&(this.search=e.value,this.search&&!this.filterTriggered&&sl.sendEvent({event:"interaction_event",event_name:"portal_maps_action_search",category:this.search,location:"map_sidebar_search"}),this.filterTriggered=!1),e&&e.type=="filter-update"){if(this.settingsStore.updateFacets(e.value),!this.filterTriggered){const{value:t}=e,n=t.filter(i=>i.facet&&i.facet.toLowerCase()!=="show all").map(i=>i.facet).join(", ");sl.sendEvent({event:"interaction_event",event_name:"portal_maps_action_filter",category:n||"filter",location:"map_sidebar_filter"})}this.filterTriggered=!1}}else e.id===2&&cn.emit("connectivity-query-filter",e)},updateMarkers:function(e){this.settingsStore.updateMarkers(e),cn.emit("markerUpdate")},updateScaffoldMarkers:function(e){this.settingsStore.updateNumberOfDatasetsForFacets(e)},getNewEntryId:function(){return this.entries.length?this.entries[this.entries.length-1].id+1:1},activateSyncMap:function(e){let t={};return Object.assign(t,e),t.mode="normal",t.id=this.getNewEntryId(),t.state=void 0,t.type="Scaffold",t.discoverId=e.discoverId,t.rotation="free",e.layout=="2vertpanel"?t.rotation="horizontal":e.layout=="2horpanel"&&(t.rotation="vertical"),this.entriesStore.addNewEntry(t),this.splitFlowStore.setSyncMode({flag:!0,newId:t.id,layout:e.layout}),t.id},createNewEntry:function(e){let t={};return t.viewUrl=void 0,t.state=void 0,Object.assign(t,e),t.mode="normal",t.id=this.getNewEntryId(),t.discoverId=e.discoverId,this.entriesStore.addNewEntry(t),this.splitFlowStore.setIdToPrimaryPane(t.id),this.splitFlowStore.syncMode&&this.splitFlowStore.setSyncMode({flag:!1}),this.$refs.sideBar&&this.$refs.sideBar.setDrawerOpen(!1),t.id},openNewMap:async function(e){const t=await ebt(e,this.settingsStore.sparcApi);this.createNewEntry(t),t.contextCard&&cn.emit("contextUpdate",t.contextCard)},openSearch:function(e,t){this.search=t,this._facets=e,this.$refs&&this.$refs.sideBar&&this.$refs.sideBar.openSearch(e,t),this.startUp=!1},openPMRSearch:function(e,t){this.$refs&&this.$refs.sideBar&&this.$refs.sideBar.openPMRSearch(e,t),this.startUp=!1},onFullscreen:function(e){this.$emit("onFullscreen",e)},resetApp:function(){this.setState(aK())},setIdToPrimaryPane:function(e){this.splitFlowStore.setIdToPrimaryPane(e)},setState:function(e){this.entriesStore.setAll(e.entries),e.splitFlow?this.splitFlowStore.setState(e.splitFlow):this.entries.forEach(t=>this.splitFlowStore.setIdToPrimaryPane(t.id))},getState:function(){let e=JSON.parse(JSON.stringify(this.entriesStore.$state)),r=this.$refs.splitdialog.getContentsState();if(e.entries.length===r.length)for(let n=0;n<r.length;n++){const i=e.entries[n];i.state=r[n],i.type==="Scaffold"&&"viewUrl"in i&&delete i.viewUrl,i.type==="MultiFlatmap"&&"uberonId"in i&&delete i.uberonId}return e.splitFlow=this.splitFlowStore.getState(),e},removeEntry:function(e){let t=this.entriesStore.findIndexOfId(e);this.entriesStore.destroyEntry(t)},resourceSelected:function(e){this.$emit("resource-selected",e),this.splitFlowStore.globalCallback&&this.$refs.splitdialog.sendSynchronisedEvent(e)},speciesChanged:function(e){this.$refs.sideBar&&this.$refs.sideBar.close()},toggleSyncMode:function(e){e&&(e.flag?e.action&&this.activateSyncMap(e.action):this.splitFlowStore.syncMode&&this.splitFlowStore.setSyncMode({flag:!1}))},contextUpdate:function(e){cn.emit("contextUpdate",e)},datalinkClicked:function(e){const t=e||"",r="datasets/",i=t.substring(t.indexOf(r)+r.length,t.indexOf("?type=dataset"));sl.sendEvent({event:"interaction_event",event_name:"portal_maps_gallery_click",category:t,location:"map_sidebar_gallery",dataset_id:i||""})},onAnnotationSubmitted:function(e){this.annotationCallback&&this.annotationCallback(e)},onConfirmCreate:function(e){this.confirmCreateCallback&&this.confirmCreateCallback(e)},onCancelCreate:function(){this.cancelCreateCallback&&this.cancelCreateCallback()},onConfirmDelete:function(e){this.confirmDeleteCallback&&this.confirmDeleteCallback(e)},onSidebarTabClicked:function(e){let t={...this.settingsStore.globalSettings};e.id===1&&e.type==="datasetExplorer"?t.interactiveMode="dataset":e.id===2&&e.type==="connectivityExplorer"&&(t.interactiveMode="connectivity"),this.settingsStore.updateGlobalSettings(t),this.$refs.dialogToolbar.loadGlobalSettings()},onSidebarTabClosed:function(e){e.id===3&&e.type==="annotation"&&cn.emit("annotation-close")}},created:function(){this._facets=[],this._externalStateSet=!1},mounted:function(){cn.on("RemoveEntryRequest",e=>{this.removeEntry(e)}),cn.on("SyncModeRequest",e=>{this.toggleSyncMode(e)}),cn.on("PopoverActionClick",e=>{this.actionClick(e)}),cn.on("annotation-open",e=>{this.annotationEntry=e.annotationEntry,this.annotationCallback=s.markRaw(e.commitCallback),e.createData?this.createData=s.markRaw(e.createData):this.createData=s.markRaw({}),this.confirmCreateCallback=s.markRaw(e.confirmCreate),this.cancelCreateCallback=s.markRaw(e.cancelCreate),this.confirmDeleteCallback=s.markRaw(e.confirmDelete),this.$refs.sideBar&&(this.$refs.sideBar.tabClicked({id:3,type:"annotation"}),this.$refs.sideBar.setDrawerOpen(!0))}),cn.on("annotation-close",()=>{this.$refs.sideBar.tabClicked({id:1,type:"datasetExplorer"}),this.annotationEntry=[],this.createData={},this.$refs.sideBar&&this.$refs.sideBar.setDrawerOpen(!1)}),cn.on("connectivity-info-open",e=>{this.connectivityEntry=e,this.connectivityExplorerClicked||(this.connectivityKnowledge=e.map(t=>({label:t.title,id:t.featureId[0]})),this.$refs.sideBar&&(this.$refs.sideBar.tabClicked({id:2,type:"connectivityExplorer"}),this.$refs.sideBar.setDrawerOpen(!0))),this.connectivityExplorerClicked=!1}),cn.on("connectivity-graph-error",e=>{this.$refs.sideBar&&this.$refs.sideBar.updateConnectivityGraphError(e.data)}),cn.on("OpenNewMap",e=>{this.openNewMap(e)}),cn.on("startHelp",()=>{this.$refs.sideBar&&this.$refs.sideBar.close()}),cn.on("connectivity-knowledge",e=>{this.connectivityKnowledge=e}),cn.on("modeUpdate",e=>{e==="dataset"?this.$refs.sideBar.tabClicked({id:1,type:"datasetExplorer"}):e==="connectivity"&&this.$refs.sideBar.tabClicked({id:2,type:"connectivityExplorer"})}),this.$nextTick(()=>{this.search===""&&this._facets.length===0?(this.$refs.sideBar&&this.$refs.sideBar.close(),setTimeout(()=>{this.startUp=!1},2e3)):this.openSearch(this._facets,this.search)})},computed:{...nl.mapStores(RR,p7,J5),envVars:function(){return{API_LOCATION:this.settingsStore.sparcApi,ALGOLIA_INDEX:this.settingsStore.algoliaIndex,ALGOLIA_KEY:this.settingsStore.algoliaKey,ALGOLIA_ID:this.settingsStore.algoliaId,PENNSIEVE_API_LOCATION:this.settingsStore.pennsieveApi,NL_LINK_PREFIX:this.settingsStore.nlLinkPrefix,ROOT_URL:this.settingsStore.rootUrl,FLATMAPAPI_LOCATION:this.settingsStore.flatmapAPI}},entries:function(){return this.entriesStore.entries}}},$Gt={style:{width:"100%",height:"100%",position:"relative",overflow:"hidden"}};function DGt(e,t,r,n,i,o){const a=a7e,l=Bhe,c=s.resolveComponent("SideBar"),u=i7e,d=$he,h=Hhe;return s.openBlock(),s.createBlock(h,{style:{height:"100%",background:"white"}},{default:s.withCtx(()=>[s.createVNode(l,{ref:"header",style:{"text-align":"left","font-size":"14px",padding:"0"},height:"32px",class:"dialog-header"},{default:s.withCtx(()=>[s.createVNode(a,{numberOfEntries:o.entries.length,onOnFullscreen:o.onFullscreen,onLocalSearch:o.onDisplaySearch,onFetchSuggestions:o.fetchSuggestions,ref:"dialogToolbar"},null,8,["numberOfEntries","onOnFullscreen","onLocalSearch","onFetchSuggestions"])]),_:1},512),s.createVNode(d,{class:"dialog-main"},{default:s.withCtx(()=>[s.createElementVNode("div",$Gt,[s.createVNode(c,{ref:"sideBar",envVars:o.envVars,visible:e.sideBarVisibility,class:s.normalizeClass(["side-bar",{"start-up":e.startUp}]),"open-at-start":e.startUp,annotationEntry:e.annotationEntry,createData:e.createData,connectivityEntry:e.connectivityEntry,connectivityKnowledge:e.connectivityKnowledge,onTabClicked:o.onSidebarTabClicked,onTabClosed:o.onSidebarTabClosed,onActionClick:o.actionClick,onSearchChanged:t[0]||(t[0]=p=>o.searchChanged(p)),onAnatomyInDatasets:t[1]||(t[1]=p=>o.updateMarkers(p)),onAnnotationSubmitted:o.onAnnotationSubmitted,onConfirmCreate:o.onConfirmCreate,onCancelCreate:o.onCancelCreate,onConfirmDelete:o.onConfirmDelete,onNumberOfDatasetsForAnatomies:t[2]||(t[2]=p=>o.updateScaffoldMarkers(p)),onHoverChanged:t[3]||(t[3]=p=>o.hoverChanged(p)),onContextUpdate:t[4]||(t[4]=p=>o.contextUpdate(p)),onDatalinkClicked:t[5]||(t[5]=p=>o.datalinkClicked(p)),onShowConnectivity:o.onShowConnectivity,onShowReferenceConnectivities:o.onShowReferenceConnectivities,onConnectivityClicked:o.onConnectivityClicked,onConnectivityHovered:o.onConnectivityHovered,onConnectivityExplorerClicked:o.onConnectivityExplorerClicked,onConnectivitySourceChange:o.onConnectivitySourceChange},null,8,["envVars","visible","class","open-at-start","annotationEntry","createData","connectivityEntry","connectivityKnowledge","onTabClicked","onTabClosed","onActionClick","onAnnotationSubmitted","onConfirmCreate","onCancelCreate","onConfirmDelete","onShowConnectivity","onShowReferenceConnectivities","onConnectivityClicked","onConnectivityHovered","onConnectivityExplorerClicked","onConnectivitySourceChange"]),s.createVNode(u,{entries:o.entries,ref:"splitdialog",onResourceSelected:o.resourceSelected,onSpeciesChanged:o.speciesChanged},null,8,["entries","onResourceSelected","onSpeciesChanged"])])]),_:1})]),_:1})}const Txe=Nl(BGt,[["render",DGt],["__scopeId","data-v-c5eacc9e"]]),FGt={name:"MapContent",components:{MapSvgSpriteColor:PR,Loading:Xhe,SplitFlow:Txe},mixins:[{methods:{retrieveContextCardFromUrl:async function(e){const[t,r,n,i]=this.splitInfoFromUrl(e),o=await this.getContextFileFromScicrunch(t,n);if(!o.success)return{};const a=r+o.contextFile+i;return{s3uri:o.s3uri,contextCardUrl:a}},splitInfoFromUrl:function(e){let t=e.split("s3-resource")[1],r=e.split("files/")[0]+"files/",n=e.split("files/")[1].split("?")[0],i="?"+e.split("?")[1];const o=t.split("/");return o.shift(),[o[0],r,n,i]},getContextFileFromScicrunch:async function(e,t){return await fetch(`${this.settingsStore.sparcApi}/dataset_info/using_multiple_discoverIds/?discoverIds=${e}`).then(n=>n.json()).then(n=>{if(n.numberOfHits===1){const i=n.results[0]["abi-contextual-information"];if(i&&i.length===1)return{success:!0,contextFile:i[0],s3uri:n.results[0].s3uri};if(i&&i.length>1){let o=this.findContextInforForFilePath(n.results[0]["abi-context-file"],t);if(o)return{success:!0,contextFile:o,s3uri:n.results[0].s3uri}}}return{success:!1}}).catch(n=>(console.error("Error:",n),{success:!1}))},findContextInforForFilePath:function(e,t){var n;let r=e.find(i=>i.datacite.isDerivedFrom.path.includes(t));return(n=r==null?void 0:r.dataset)==null?void 0:n.path}}}],props:{shareLink:{type:String,default:void 0},state:{type:Object,default:void 0},options:{type:Object,default:()=>({}),required:!0},startingMap:{type:String,default:"AC"},useHelpModeDialog:{type:Boolean,default:!1},connectivityInfoSidebar:{type:Boolean,default:!0},annotationSidebar:{type:Boolean,default:!0}},data:function(){return{isReady:!1,initialState:void 0}},methods:{isFullscreen:function(){return document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement},onFullscreen:function(e){e!==void 0?(e&&!this.isFullscreen()&&this.goFullscreen(),!e&&this.isFullscreen()&&this.leaveFullscreen()):this.isFullscreen()?this.leaveFullscreen():this.goFullscreen()},leaveFullscreen:function(){if(this.isFullscreen()){document.exitFullscreen?document.exitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.msExitFullscreen&&document.msExitFullscreen();let e=this.$refs.MapApp;this.replacePopupsOnFullscreen(e,document.body)}},goFullscreen:function(){let e=this.$refs.MapApp;e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.webkitRequestFullscreen?e.webkitRequestFullscreen():parent.msRequestFullscreen&&e.msRequestFullscreen(),this.replacePopupsOnFullscreen(document.body,e)},replacePopupsOnFullscreen:function(e,t){e.querySelectorAll('[id^="el-popper-container"]').forEach(n=>{t.append(n)})},setState:function(e){return this.$refs.flow.setState(e)},getState:function(){return this.$refs.flow.getState()},setCurrentEntry:async function(e){if(e&&e.type){if(e.type==="Scaffold"&&(e.url||e.isBodyScaffold)){let t={type:e.type,label:e.label,region:e.region,resource:e.url,state:e.state,viewUrl:e.viewUrl};if(e.isBodyScaffold){const r=await IR(this.options.sparcApi,e.label);t={...t,...r.datasetInfo,resource:r.url}}else{const r=await this.retrieveContextCardFromUrl(e.url);t={...t,...r}}this.$refs.flow.createNewEntry(t)}else if(e.type==="MultiFlatmap")if(e.resource){const t={type:e.type,resource:e.resource,state:e.state,label:e.label};this.$refs.flow.createNewEntry(t)}else{const t=rbt(e);if(t){const r=this.getState();if(r&&r.entries)for(let n=0;n<r.entries.length;n++){const i=r.entries[n];if(i.type==="MultiFlatmap"){i.resource=t,i.state={species:t},(e.organ||e.uuid)&&(i.state.state={searchTerm:e.organ,uuid:e.uuid},e.uuid&&(i.state.state.entry=e.taxo)),this.$refs.flow.setState(r),this.$refs.flow.setIdToPrimaryPane(i.id);break}}}}else if(e.type==="Flatmap"){const t={type:e.type,resource:e.resource,data:e.data,state:e.state,label:e.label};this.$refs.flow.createNewEntry(t)}}},openSearch:function(e,t){return this.$refs.flow.openSearch(e,t)},flowMounted:function(){this._flowMounted=!0,this.$emit("isReady"),sl.sendEvent({event:"interaction_event",event_name:"portal_maps_page_view",category:this.startingMap})}},computed:{...nl.mapStores(p7,J5),stateToSet(){return this.state?this.state:this.initialState}},watch:{shareLink:{handler:function(e){this.settingsStore.updateShareLink(e)},immediate:!0}},beforeMount:function(){var e,t;this.options&&(this.options.sparcApi&&this.settingsStore.updateSparcAPI(this.options.sparcApi),this.options.algoliaIndex&&this.settingsStore.updateAlgoliaIndex(this.options.algoliaIndex),this.options.algoliaKey&&this.settingsStore.updateAlgoliaKey(this.options.algoliaKey),this.options.algoliaId&&this.settingsStore.updateAlgoliaId(this.options.algoliaId),this.options.pennsieveApi&&this.settingsStore.updatePennsieveApi(this.options.pennsieveApi),this.options.flatmapAPI&&this.settingsStore.updateFlatmapAPI(this.options.flatmapAPI),this.options.nlLinkPrefix&&this.settingsStore.updateNLLinkPrefix(this.options.nlLinkPrefix),this.options.rootUrl&&this.settingsStore.updateRootUrl(this.options.rootUrl),this.options.pmrHost&&this.settingsStore.updatePmrHost(this.options.pmrHost)),(e=this.splitFlowStore)==null||e.reset(),(t=this.splitFlowStore)==null||t.getAvailableTerms(this.settingsStore.sparcApi)},mounted:async function(){cn.on("updateShareLinkRequested",()=>{this.$emit("updateShareLinkRequested")}),cn.on("trackEvent",e=>{this.$emit("trackEvent",e)}),this.state||(this.initialState=await tbt(this.startingMap,this.options.sparcApi)),cn.on("mapLoaded",e=>{this.$emit("mapLoaded",e)}),this.isReady=!0,this.settingsStore.updateUseHelpModeDialog(this.useHelpModeDialog),this.settingsStore.updateConnectivityInfoSidebar(this.connectivityInfoSidebar),this.settingsStore.updateAnnotationSidebar(this.annotationSidebar)}},zGt={ref:"MapApp",class:"mapcontent","element-loading-text":"Loading...","element-loading-background":"rgba(0, 0, 0, 0.3)"};function jGt(e,t,r,n,i,o){const a=s.resolveComponent("map-svg-sprite-color"),l=Txe,c=Zy;return s.withDirectives((s.openBlock(),s.createElementBlock("div",zGt,[s.createVNode(a),e.isReady?(s.openBlock(),s.createBlock(l,{key:0,onOnFullscreen:o.onFullscreen,state:o.stateToSet,ref:"flow",onVnodeMounted:o.flowMounted},null,8,["onOnFullscreen","state","onVnodeMounted"])):s.createCommentVNode("",!0)])),[[c,!e.isReady]])}const UGt=Nl(FGt,[["render",jGt],["__scopeId","data-v-21ac3033"]]),wV=function(e){return e?[...new Set(e.map(t=>JSON.stringify(t)))].map(t=>JSON.parse(t)):[]},BJ=[],vxe=async function(e,t){const r=t.filter(o=>BJ.some(a=>a.taxon===o)),n=BJ.filter(o=>r.includes(o.taxon)),i=t.filter(o=>!r.includes(o));if(i.length){const o=await e.queryLabels(i);if(o.length)return o.forEach(a=>{let{entity:l,label:c}=a;c==="Mammalia"&&(c="Mammalia not otherwise specified");const u={taxon:l,label:c};n.push(u),BJ.push(u)}),n}else return n},$J=function(e,t){if(!e||!t)return!1;let r=JSON.stringify(e),n=JSON.stringify(t);return r.indexOf(n)!==-1},Tv=(e,t)=>{const r=e.name??e,n=t.name??t,i=r.toUpperCase(),o=n.toUpperCase();return i<o?-1:i>o?1:0};let GGt=function(){this.initialise=function(e){this.flatmapApi=e,this.destinations=[],this.origins=[],this.components=[],this.rawURLs=[],this.controller=void 0,this.uberons=[],this.lookUp=[],this.connectivitySource="sckan"},this.createTooltipData=async function(e,t){let r=[];t.feature.hyperlinks&&t.feature.hyperlinks.length>0?r=t.feature.hyperlinks:r=this.rawURLs;let n;if(t.provenanceTaxonomy){n=[];try{const o=await vxe(e,t.provenanceTaxonomy);o.length&&o.forEach(a=>{const{label:l}=a;n.push(l)})}catch(o){console.log(o)}}return{destinations:this.destinations,origins:this.origins,components:this.components,destinationsWithDatasets:this.destinationsWithDatasets,originsWithDatasets:this.originsWithDatasets,componentsWithDatasets:this.componentsWithDatasets,title:t.label,featureId:t.resource,hyperlinks:r,provenanceTaxonomy:t.provenanceTaxonomy,provenanceTaxonomyLabel:n,connectivitySource:this.connectivitySource}},this.updateTooltipData=function(e){return{...e,origins:this.origins,originsWithDatasets:this.originsWithDatasets,components:this.components,componentsWithDatasets:this.componentsWithDatasets,destinations:this.destinations,destinationsWithDatasets:this.destinationsWithDatasets,connectivitySource:this.connectivitySource}},this.createComponentsLabelList=function(e,t){let r=[];return e.forEach(n=>{r.push(this.createLabelFromNeuralNode(n[0]),t),n.length===2&&r.push(this.createLabelFromNeuralNode(n[1]),t)}),r},this.createLabelLookup=function(e,t){return new Promise(async r=>{let n={};this.uberons=[];const i=await vxe(e,t);i.length&&(i.forEach(o=>{const{taxon:a,label:l}=o;n[a]=l,this.uberons.push({id:a,name:l})}),r(n))})},this.buildConnectivitySqlStatement=function(e){let t="select knowledge from knowledge where entity in (";if(e.length===1)t+=`'${e[0]}')`;else if(e.length>1)for(let r in e)t+=`'${e[r]}'${r>=e.length-1?")":","} `;return t},this.buildLabelSqlStatement=function(e){let t="select entity, label from labels where entity in (";if(e.length===1)t+=`'${e[0]}')`;else if(e.length>1)for(let r in e)t+=`'${e[r]}'${r>=e.length-1?")":","} `;return t},this.findAllIdsFromConnectivity=function(e){let t=e.connectivity.flat(),r=[...new Set(t)],n=[];return r.forEach(i=>{Array.isArray(i)?n.push(i.flat()):n.push(i)}),[...new Set(n.flat())]},this.flattenConnectivity=function(e){let t=e.flat(),r=[...new Set(t)],n=[];return r.forEach(i=>{Array.isArray(i)?n.push(i.flat()):n.push(i)}),n.flat()},this.findComponents=function(e,t,r,n){let i=e.connectivity.flat(),o=wV(i),a=[],l=!1;return o.forEach(c=>{l=!1,$J(t,c)&&(l=!0),n&&$J(n,c)&&(l=!0),$J(r,c)&&(l=!0),l||a.push(c)}),a},this.retrieveFlatmapKnowledgeForEvent=async function(e,t){this.controller&&this.controller.abort(),this.controller=new AbortController,this.controller.signal;const r=t.resource;if(this.destinations=[],this.origins=[],this.components=[],this.rawURLs=[],!r||r.length===0||!r[0])return;let n=this.queryForConnectivityNew(e,r[0]);return await Promise.all([n])},this.queryForConnectivityNew=function(e,t,r="sckan",n=!0){return this.connectivitySource=r,new Promise(i=>{(r==="map"?this.queryMapConnectivity(e.provenance.uuid,t):e.queryKnowledge(t)).then(a=>{if(this.checkConnectivityExists(a)){let l=a;n?this.processConnectivity(e,l).then(c=>{a.references&&(this.rawURLs=[...a.references]),i(c)}):i(l)}else i(!1)}).catch(a=>{a.name==="AbortError"||console.warn(`Unable to get the knowledge for the entity ${t}.`),i(!1)})})},this.queryMapConnectivity=async function(e,t){const r=this.flatmapApi+`flatmap/${e}/connectivity/${t}`;try{const n=await fetch(r);if(!n.ok)throw new Error(`Response status: ${n.status}`);return await n.json()}catch(n){throw new Error(n)}},this.queryForConnectivity=function(e,t,r,n=!0){const i={sql:this.buildConnectivitySqlStatement(t)},o={method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(i),...r?{signal:r}:{}};return new Promise(a=>{fetch(`${this.flatmapApi}knowledge/query/`,o).then(l=>l.json()).then(l=>{if(this.connectivityExists(l)){let c=JSON.parse(l.values[0][0]);n?this.processConnectivity(e,c).then(u=>{a(u)}):a(c)}else a(!1)}).catch(l=>{l.name==="AbortError"||console.error("Error:",l),a(!1)})})},this.checkConnectivityExists=function(e){var t;return e&&((t=e.connectivity)==null?void 0:t.length)},this.connectivityExists=function(e){return!!(e.values&&e.values.length>0&&JSON.parse(e.values[0][0]).connectivity&&JSON.parse(e.values[0][0]).connectivity.length>0)},this.findIfNodeIsSingle=function(e){return e.length===1?(console.error("Server returns a single node",e),e[0]):e.length===2&&e[1].length===0?e[0]:!1},this.createLabelFromNeuralNode=function(e,t){let r=this.findIfNodeIsSingle(e);if(r)return t[r];let n=t[e[0]];return e.length===2&&e[1].length>0&&e[1].forEach(i=>{t[i]==null?n+=`, ${i}`:n+=`, ${t[i]}`}),n},this.flattenAndFindDatasets=function(e,t,r){let n=this.flattenConnectivity(e),i=this.flattenConnectivity(t),o=this.flattenConnectivity(r);this.originsWithDatasets=this.uberons.filter(a=>n.indexOf(a.id)!==-1).sort(Tv),this.componentsWithDatasets=this.uberons.filter(a=>i.indexOf(a.id)!==-1).sort(Tv),this.destinationsWithDatasets=this.uberons.filter(a=>o.indexOf(a.id)!==-1).sort(Tv)},this.processConnectivity=function(e,t){return new Promise(r=>{let n=[],i=[],o;if(t&&t["node-phenotypes"]){const c=["ilxtr:hasSomaLocatedIn"],u=["ilxtr:hasAxonPresynapticElementIn","ilxtr:hasAxonSensorySubcellularElementIn"];c.forEach(d=>{n.push(...t["node-phenotypes"][d])}),n=wV(n),u.forEach(d=>{i.push(...t["node-phenotypes"][d])}),i=wV(i)}else i=wV(t.axons),t.somas&&t.somas.length>0&&n.push(...t.somas),t.dendrites&&t.dendrites.length>0&&n.push(...t.dendrites),o=t.somas;const a=this.findComponents(t,i,n,o),l=this.findAllIdsFromConnectivity(t);this.createLabelLookup(e,l).then(c=>{this.origins=n.map(u=>this.createLabelFromNeuralNode(u,c)).sort(Tv),this.components=a.map(u=>this.createLabelFromNeuralNode(u,c)).sort(Tv),this.destinations=i.map(u=>this.createLabelFromNeuralNode(u,c)).sort(Tv),this.flattenAndFindDatasets(n,a,i),r({ids:{dendrites:n,components:a,axons:i},labels:{origins:this.origins,components:this.components,destinations:this.destinations}})})})},this.buildPubmedSqlStatement=function(e){let t="select distinct publication from publications where entity in (";if(e.length===1)t+=`'${e[0]}')`;else if(e.length>1)for(let r in e)t+=`'${e[r]}'${r>=e.length-1?")":","} `;return t},this.buildPubmedSqlStatementForModels=function(e){return`select distinct publication from publications where entity = '${e}'`},this.flatmapQuery=function(e){const t={sql:e};return fetch(`${this.flatmapApi}knowledge/query/`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}).then(r=>r.json()).catch(r=>{console.error("Error:",r)})}};function bxe(e){var r;let t="";if((r=e.provenance)!=null&&r.connectivity){const n=e.provenance.connectivity;"knowledge-source"in n?t=n["knowledge-source"]:"npo"in n&&(t=`${n.npo.release}-npo`)}return t}async function WGt(e,t){const r=bxe(e),n=`select knowledge from knowledge
1432
1432
  where source="${r}"
1433
- order by source desc`;XGt();const i=sessionStorage.getItem("flatmap-knowledge"),o=sessionStorage.getItem("flatmap-knowledge-source");if(!i||o!==r){const c=(await t.flatmapQuery(n)).values.map(u=>u[0]).map(u=>JSON.parse(u));return sessionStorage.setItem("flatmap-knowledge",JSON.stringify(c)),sessionStorage.setItem("flatmap-knowledge-source",r),qGt(),c}return JSON.parse(i)}function qGt(){const r=new Date().getTime()+864e5;sessionStorage.setItem("flatmap-knowledge-expiry",r)}function ZGt(){["flatmap-knowledge","flatmap-knowledge-expiry","flatmap-knowledge-source"].forEach(t=>{sessionStorage.removeItem(t)})}function XGt(){const e=sessionStorage.getItem("flatmap-knowledge-expiry");new Date().getTime()>e&&ZGt()}function KGt(e){return e[0].toUpperCase()+e.substring(1)}const vv={emits:["flatmap-provenance-ready","resource-selected","species-changed"],props:{entry:Object,visible:{type:Boolean,default:!0},mouseHovered:{type:Boolean,default:!1}},computed:{...nl.mapStores(p7,J5),idNamePair(){return this.splitFlowStore.idNamePair},syncMode(){return this.splitFlowStore.syncMode},useHelpModeDialog(){return this.settingsStore.useHelpModeDialog},connectivityInfoSidebar(){return this.settingsStore.connectivityInfoSidebar},annotationSidebar(){return this.settingsStore.annotationSidebar}},mounted:function(){cn.on("startHelp",()=>{this.startHelp()}),this.multiflatmapRef=this.$refs.multiflatmap,this.flatmapRef=this.$refs.flatmap,this.scaffoldRef=this.$refs.scaffold},methods:{toggleSyncMode:function(){},getState:function(){},openMap:function(e){e==="SYNC"?(this.toggleSyncMode(),this.trackOpenMap("toggle_map_sync_mode")):(cn.emit("OpenNewMap",e),this.trackOpenMap(`open_new_${e}_map`))},onMapmanagerLoaded:function(e){this.settingsStore.updateMapManager(e)},trackOpenMap:function(e){sl.sendEvent({event:"interaction_event",event_name:"portal_maps_open_map",category:e,location:"open_new_map"})},updateWithViewUrl:function(){},search:function(){return!1},searchSuggestions:function(){},resourceSelected:function(e,t){var a,l,c,u,d,h,p,f,m;const r=t[0];if(r&&this.resourceHasAction(r)){cn.emit("PopoverActionClick",r);return}let n,i=!1;const o={paneIndex:this.entry.id,type:e,resource:t,internalName:void 0,eventType:void 0};if(e=="MultiFlatmap"||e=="Flatmap"){const g=this.getFlatmapImp();if(o.internalName=(a=r==null?void 0:r.feature)!=null&&a.label?r.feature.label:this.idNamePair[r.feature.models],r.eventType=="click")if(o.eventType="selected",r.feature.type=="marker"){let b=o.internalName;if(this.settingsStore.isFeaturedMarkerIdentifier(r.feature.id))n={type:"Search",term:this.settingsStore.featuredMarkerDoi(r.feature.id),featuredDataset:!0};else{n={type:"Facet",facet:b,facetPropPath:"anatomy.organ.category.name",facetSubPropPath:"anatomy.organ.name",term:"Anatomical structure"};let T=new Set;r!=null&&r.feature["marker-terms"]&&(r.feature["marker-terms"].length>0?(r.feature["marker-terms"].forEach(Q=>{T.add(Q.label)}),T.add(b),T.size>0&&(n={type:"Facets",labels:[...T]})):(l=r==null?void 0:r.feature)!=null&&l.models&&(n={type:"PMRSearch",term:r.feature.models}))}i=!0,e=="MultiFlatmap"&&g.clearSearchResults()}else r.feature.type=="feature"&&(g.options&&g.options.style==="functional"&&(u=(c=r.feature)==null?void 0:c.hyperlinks)!=null&&u.pmr&&(n={type:"URL",resource:(h=(d=r.feature)==null?void 0:d.hyperlinks)==null?void 0:h.pmr}),this.syncMode&&(i=!0));else r.eventType=="mouseenter"&&(o.eventType="highlighted",i=!0)}else e=="Scaffold"&&(r&&((((p=r.data)==null?void 0:p.id)===void 0||((f=r.data)==null?void 0:f.id)==="")&&(r.data.id=(m=r.data)==null?void 0:m.group),o.internalName=r.data.id,r.data.lastActionOnMarker===!0&&(n={type:"Facet",facet:KGt(r.data.id),facetPropPath:"anatomy.organ.category.name",term:"Anatomical structure"})),o.eventType="selected",i=!0);n&&cn.emit("PopoverActionClick",n),i&&this.$emit("resource-selected",o)},resourceHasAction:function(e){return e.type==="URL"||e.type==="Search"||e.type==="Neuron Search"||e.type=="Facet"||e.type=="Facets"},isVisible:function(){return this.splitFlowStore.getPaneNameById(this.entry.id)!==void 0},displayTooltip:function(){},getNameAndIdFromSyncData:async function(e){let t=e.internalName;t===void 0&&e.resource&&(t=e.resource.label);let r;if(e.resource&&e.resource.resource&&(r=e.resource.resource[0]),this.entry.type==="Scaffold"){if(this.$refs.scaffold.findObjectsWithGroupName(t).length===0){if(e.resource&&e.resource.feature){const o=X8e(e.resource.feature.models);if(o.length>0)return o}let i=sbt(t);if(i)return i;if(r&&e.eventType==="selected")return fetch(`${this.apiLocation}get-related-terms/${r}`).then(o=>o.json()).then(o=>{var a;if(((a=o.uberon)==null?void 0:a.array.length)>0)return t=o.uberon.array[0].name.charAt(0).toUpperCase()+o.uberon.array[0].name.slice(1),r=o.uberon.array[0].id.toUpperCase(),{id:r,name:t}})}}else if(this.entry.type==="MultiFlatmap")if(t==="Bladder")t="Urinary Bladder";else{const n=X8e(t);n.length>0&&(t=n[0])}return{id:r,name:t}},getDatasetAnatomyInfo:function(e){fetch(`${this.apiLocation}dataset_info/anatomy?identifier=${e}`).then(t=>t.json()).then(t=>{const r=t.result[0];let n;try{n=r.anatomy.organ[0].curie}catch{n=void 0}let i;try{i=r.item.curie}catch{i=void 0}let o;try{let a=0,l=!1;for(;!l&&a<r.organisms.subject.length;){const c=r.organisms.subject[a];c.species&&(o=c.species.name,l=!0),a+=1}}catch{o=void 0}this.settingsStore.updateFeaturedMarker({identifier:e,marker:n,doi:i,species:o})})},oldFeaturedDatasetApiHasInfo:async function(){let t=await(await fetch(`${this.apiLocation}get_featured_datasets_identifiers`)).json();return!t.identifiers||t.identifiers.length==0?!1:t.identifiers},newFeaturedDatasetApiHasInfo:async function(){let t=await(await fetch(`${this.apiLocation}get_featured_dataset`)).json();return!t.datasets||t.datasets.length==0?!1:t.datasets.map(r=>r.id)},getFeaturedDatasets:async function(){let e=[],t=await this.oldFeaturedDatasetApiHasInfo();if(t)e=t;else{let r=await this.newFeaturedDatasetApiHasInfo();r&&(e=r)}this.settingsStore.updateFeatured(e),e.forEach(r=>{this.getDatasetAnatomyInfo(r)})},zoomToFeatures:function(){},handleSyncMouseEvent:async function(e){let t=await this.getNameAndIdFromSyncData(e);e.eventType==="highlighted"?this.highlightFeatures(t):e.eventType==="selected"&&this.displayTooltip(t)},handleSyncPanZoomEvent:function(){},highlightFeatures:function(){},receiveSynchronisedEvent:async function(e){if(e.paneIndex!==this.entry.id)e.eventType=="panZoom"||this.handleSyncMouseEvent(e);else if(e.eventType=="selected"){let t=await this.getNameAndIdFromSyncData(e);this.zoomToFeatures(t,!1)}},requestSynchronisedEvent:function(){},flatmapMarkerUpdate(){},onResize:function(){},startHelp:function(){this.isInHelp===!1&&(this.helpMode=!0,window.addEventListener("mousedown",this.checkEndHelpMouseDown),this.isInHelp=!0)},endHelp:function(){window.removeEventListener("mousedown",this.checkEndHelpMouseDown),this.helpMode=!1,setTimeout(()=>{this.isInHelp=!1},200)},onHelpModeShowNext:function(){this.helpModeActiveItem+=1},onHelpModeLastItem:function(e){e&&(this.helpModeLastItem=!0)},onFinishHelpMode:function(){this.helpMode=!1,this.helpModeActiveItem=0,this.helpModeLastItem=!1},onTooltipShown:function(){this.$refs.multiflatmap&&this.$refs.multiflatmapHelp&&this.$refs.multiflatmapHelp.toggleTooltipHighlight(),this.$refs.flatmap&&this.$refs.flatmapHelp&&this.$refs.flatmapHelp.toggleTooltipHighlight(),this.$refs.scaffold&&this.$refs.scaffoldHelp&&this.$refs.scaffoldHelp.toggleTooltipHighlight()},onMapTooltipShown:function(){this.$refs.multiflatmap&&this.$refs.multiflatmapHelp&&this.$refs.multiflatmapHelp.toggleTooltipPinHighlight(),this.$refs.flatmap&&this.$refs.flatmapHelp&&this.$refs.flatmapHelp.toggleTooltipPinHighlight(),this.$refs.scaffold&&this.$refs.scaffoldHelp&&this.$refs.scaffoldHelp.toggleTooltipPinHighlight()},checkEndHelpMouseDown:function(e){e.target.closest(".help-mode-dialog")||this.endHelp()},flatmapHighlight:async function(e,t,r,n){let i=[...t,...n];const o=this.settingsStore.globalSettings;if(o.highlightConnectedPaths){const a=t.length?t:n.length?n:[],l=await e.retrieveConnectedPaths(a);l&&i.push(...l)}if(o.highlightDOIPaths){const a=await e.searchConnectivitiesByReference(r);a&&i.push(...a)}return i=[...new Set(i)],i},cardHoverHighlight:function(){if(this.visible){const e=this.settingsStore.hoverAnatomies,t=this.settingsStore.hoverOrgans,r=this.settingsStore.hoverDOI,n=this.settingsStore.hoverConnectivity;let i=null,o=null;this.flatmapRef&&(i=this.$flatmapRef),this.multiflatmapRef&&(i=this.$multiflatmapRef),this.scaffoldRef&&(o=this.$scaffoldRef),(this.multiflatmapRef||this.flatmapRef)&&i?i.mapImp.clearSearchResults():this.scaffoldRef&&o&&o.changeHighlightedByName(t,"",!1),(e.length||t.length||r||n.length)&&((this.multiflatmapRef||this.flatmapRef)&&i?this.flatmapHighlight(i,e,r,n).then(a=>{try{i.zoomToFeatures(a)}catch(l){console.log(l)}}):this.scaffoldRef&&o&&o.changeHighlightedByName(t,"",!1))}},onAnnotationOpen:function(e){cn.emit("annotation-open",e)},onAnnotationClose:function(){cn.emit("annotation-close")},onConnectivityInfoOpen:function(e){cn.emit("connectivity-info-open",e)},onConnectivityGraphError:function(e){cn.emit("connectivity-graph-error",e)},loadConnectivityKnowledge:async function(e){const t=bxe(e),r=s.markRaw(new GGt);r.initialise(this.flatmapAPI);const n=await WGt(e,r);this.connectivityKnowledge=n.filter(i=>{var o;return!!(i.source===t&&((o=i.connectivity)!=null&&o.length))}),cn.emit("connectivity-knowledge",this.connectivityKnowledge)},connectivityQueryFilter:async function(e,t){let r=this.connectivityKnowledge;if(t.type==="query-update")this.query!==t.value&&(this.target=[]),this.query=t.value;else if(t.type==="filter-update")this.filter=t.value,this.target=[];else if(t.type==="query-filter-update"){this.query=t.query,this.filter=t.filter,this.target=t.data,this.query||cn.emit("connectivity-knowledge",[...r]);return}if(this.query){let n="",i=[],o=[],a=[];this.searchSuggestions(this.query,o);const l=[...new Set(o)];if(n="label",i=l,l.length===1){const c={type:this.filter.map(u=>u.facet.toLowerCase()),target:this.target.map(u=>u.id)};a=await e.retrieveConnectedPaths([this.query],c),n="id",i=[this.query,...a.filter(u=>u!==this.query)]}r=r.filter(c=>a.includes(c.id)||l.includes(c.label)),r.sort((c,u)=>i.indexOf(c[n])-i.indexOf(u[n]))}cn.emit("connectivity-knowledge",r)}},data:function(){return{apiLocation:void 0,activeSpecies:"Human Male",scaffoldCamera:void 0,mainStyle:{height:this.entry.datasetTitle?"calc(100% - 30px)":"100%",width:"100%",bottom:"0px"},helpMode:!1,helpModeActiveItem:0,helpModeLastItem:!1,multiflatmapRef:null,flatmapRef:null,scaffoldRef:null,scaffoldLoaded:!1,isInHelp:!1,mapManager:void 0,connectivityKnowledge:[],query:"",filter:[],target:[]}},created:function(){this.flatmapAPI=void 0,this.apiLocation=void 0,this.settingsStore.flatmapAPI&&(this.flatmapAPI=this.settingsStore.flatmapAPI),this.settingsStore.sparcApi&&(this.apiLocation=this.settingsStore.sparcApi),this.settingsStore.mapManager&&(this.mapManager=this.settingsStore.mapManager)},watch:{helpMode:function(e){e||(this.helpModeActiveItem=0)}}},YGt=function(e){return e?[...new Set(e.map(t=>JSON.stringify(t)))].map(t=>JSON.parse(t)):[]},Qxe={computed:{...nl.mapStores(p7)},methods:{flatmapPanZoomCallback:function(e){if(this.mouseHovered){const t={paneIndex:this.entry.id,eventType:"panZoom",payload:e,type:this.entry.type};this.$emit("resource-selected",t)}},flatmapMarkerUpdate(e){if(!this.flatmapReady)return;let t=e;if(t||(t=this.getFlatmapImp()),t){let r=this.settingsStore.globalSettings.displayMarkers?this.settingsStore.markers:[];r=YGt(r);let n=this.settingsStore.globalSettings.displayMarkers?this.settingsStore.multiScaleMarkers:[],i=this.removeMarkersNotOnFlatmap(t,r);if(t.clearMarkers(),t.clearDatasetMarkers(),this.entry.resource==="FunctionalConnectivity"){let o=[];for(let a=0;a<i.length;a++)o=o.concat(i[a].terms);t.addMarkers(Array.from(new Set(o)),{className:"standard-marker",cluster:!1})}else t.addDatasetMarkers(i);t.addMarkers(n,{className:"standard-marker"}),this.entry.type==="MultiFlatmap"&&this.restoreFeaturedMarkers(t)}},removeMarkersNotOnFlatmap(e,t){let r=e.anatomicalIdentifiers,n=[];for(let i=0;i<t.length;i++){let o=t[i],a={id:o.id,terms:[]};for(let l=0;l<o.terms.length;l++)r.includes(o.terms[l])&&a.terms.push(o.terms[l]);n.push(a)}return n},flatmapReadyForMarkerUpdates:function(e){if(e){e.enablePanZoomEvents(!0),this.flatmapReady=!0;const t=e.mapImp;this.flatmapMarkerUpdate(t)}}}},Jp=(e,t,{checkForDefaultPrevented:r=!0}={})=>n=>{const i=e==null?void 0:e(n);if(r===!1||!i)return t==null?void 0:t(n)};var xxe;const Ia=typeof window<"u",JGt=e=>typeof e=="string",_xe=()=>{},DJ=Ia&&((xxe=window==null?void 0:window.navigator)==null?void 0:xxe.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent);function FJ(e){return typeof e=="function"?e():s.unref(e)}function eWt(e){return e}function zS(e){return s.getCurrentScope()?(s.onScopeDispose(e),!0):!1}function tWt(e,t=!0){s.getCurrentInstance()?s.onMounted(e):t?e():s.nextTick(e)}function wxe(e,t,r={}){const{immediate:n=!0}=r,i=s.ref(!1);let o=null;function a(){o&&(clearTimeout(o),o=null)}function l(){i.value=!1,a()}function c(...u){a(),i.value=!0,o=setTimeout(()=>{i.value=!1,o=null,e(...u)},FJ(t))}return n&&(i.value=!0,Ia&&c()),zS(l),{isPending:s.readonly(i),start:c,stop:l}}function e4(e){var t;const r=FJ(e);return(t=r==null?void 0:r.$el)!=null?t:r}const LV=Ia?window:void 0;function J0(...e){let t,r,n,i;if(JGt(e[0])||Array.isArray(e[0])?([r,n,i]=e,t=LV):[t,r,n,i]=e,!t)return _xe;Array.isArray(r)||(r=[r]),Array.isArray(n)||(n=[n]);const o=[],a=()=>{o.forEach(d=>d()),o.length=0},l=(d,h,p,f)=>(d.addEventListener(h,p,f),()=>d.removeEventListener(h,p,f)),c=s.watch(()=>[e4(t),FJ(i)],([d,h])=>{a(),d&&o.push(...r.flatMap(p=>n.map(f=>l(d,p,f,h))))},{immediate:!0,flush:"post"}),u=()=>{c(),a()};return zS(u),u}let Lxe=!1;function rWt(e,t,r={}){const{window:n=LV,ignore:i=[],capture:o=!0,detectIframe:a=!1}=r;if(!n)return;DJ&&!Lxe&&(Lxe=!0,Array.from(n.document.body.children).forEach(d=>d.addEventListener("click",_xe)));let l=!0;const c=d=>i.some(h=>{if(typeof h=="string")return Array.from(n.document.querySelectorAll(h)).some(p=>p===d.target||d.composedPath().includes(p));{const p=e4(h);return p&&(d.target===p||d.composedPath().includes(p))}}),u=[J0(n,"click",d=>{const h=e4(e);if(!(!h||h===d.target||d.composedPath().includes(h))){if(d.detail===0&&(l=!c(d)),!l){l=!0;return}t(d)}},{passive:!0,capture:o}),J0(n,"pointerdown",d=>{const h=e4(e);h&&(l=!d.composedPath().includes(h)&&!c(d))},{passive:!0}),a&&J0(n,"blur",d=>{var h;const p=e4(e);((h=n.document.activeElement)==null?void 0:h.tagName)==="IFRAME"&&!(p!=null&&p.contains(n.document.activeElement))&&t(d)})].filter(Boolean);return()=>u.forEach(d=>d())}function Sxe(e,t=!1){const r=s.ref(),n=()=>r.value=!!e();return n(),tWt(n,t),r}const Exe=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Cxe="__vueuse_ssr_handlers__";Exe[Cxe]=Exe[Cxe]||{};var Mxe=Object.getOwnPropertySymbols,nWt=Object.prototype.hasOwnProperty,iWt=Object.prototype.propertyIsEnumerable,oWt=(e,t)=>{var r={};for(var n in e)nWt.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&Mxe)for(var n of Mxe(e))t.indexOf(n)<0&&iWt.call(e,n)&&(r[n]=e[n]);return r};function vf(e,t,r={}){const n=r,{window:i=LV}=n,o=oWt(n,["window"]);let a;const l=Sxe(()=>i&&"ResizeObserver"in i),c=()=>{a&&(a.disconnect(),a=void 0)},u=s.watch(()=>e4(e),h=>{c(),l.value&&i&&h&&(a=new ResizeObserver(t),a.observe(h,o))},{immediate:!0,flush:"post"}),d=()=>{c(),u()};return zS(d),{isSupported:l,stop:d}}var kxe=Object.getOwnPropertySymbols,aWt=Object.prototype.hasOwnProperty,sWt=Object.prototype.propertyIsEnumerable,lWt=(e,t)=>{var r={};for(var n in e)aWt.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&kxe)for(var n of kxe(e))t.indexOf(n)<0&&sWt.call(e,n)&&(r[n]=e[n]);return r};function cWt(e,t,r={}){const n=r,{window:i=LV}=n,o=lWt(n,["window"]);let a;const l=Sxe(()=>i&&"MutationObserver"in i),c=()=>{a&&(a.disconnect(),a=void 0)},u=s.watch(()=>e4(e),h=>{c(),l.value&&i&&h&&(a=new MutationObserver(t),a.observe(h,o))},{immediate:!0}),d=()=>{c(),u()};return zS(d),{isSupported:l,stop:d}}var Axe;(function(e){e.UP="UP",e.RIGHT="RIGHT",e.DOWN="DOWN",e.LEFT="LEFT",e.NONE="NONE"})(Axe||(Axe={}));var uWt=Object.defineProperty,Oxe=Object.getOwnPropertySymbols,dWt=Object.prototype.hasOwnProperty,hWt=Object.prototype.propertyIsEnumerable,Pxe=(e,t,r)=>t in e?uWt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,pWt=(e,t)=>{for(var r in t||(t={}))dWt.call(t,r)&&Pxe(e,r,t[r]);if(Oxe)for(var r of Oxe(t))hWt.call(t,r)&&Pxe(e,r,t[r]);return e};pWt({linear:eWt},{easeInSine:[.12,0,.39,0],easeOutSine:[.61,1,.88,1],easeInOutSine:[.37,0,.63,1],easeInQuad:[.11,0,.5,0],easeOutQuad:[.5,1,.89,1],easeInOutQuad:[.45,0,.55,1],easeInCubic:[.32,0,.67,0],easeOutCubic:[.33,1,.68,1],easeInOutCubic:[.65,0,.35,1],easeInQuart:[.5,0,.75,0],easeOutQuart:[.25,1,.5,1],easeInOutQuart:[.76,0,.24,1],easeInQuint:[.64,0,.78,0],easeOutQuint:[.22,1,.36,1],easeInOutQuint:[.83,0,.17,1],easeInExpo:[.7,0,.84,0],easeOutExpo:[.16,1,.3,1],easeInOutExpo:[.87,0,.13,1],easeInCirc:[.55,0,1,.45],easeOutCirc:[0,.55,.45,1],easeInOutCirc:[.85,0,.15,1],easeInBack:[.36,0,.66,-.56],easeOutBack:[.34,1.56,.64,1],easeInOutBack:[.68,-.6,.32,1.6]});/**
1433
+ order by source desc`;XGt();const i=sessionStorage.getItem("flatmap-knowledge"),o=sessionStorage.getItem("flatmap-knowledge-source");if(!i||o!==r){const c=(await t.flatmapQuery(n)).values.map(u=>u[0]).map(u=>JSON.parse(u));return sessionStorage.setItem("flatmap-knowledge",JSON.stringify(c)),sessionStorage.setItem("flatmap-knowledge-source",r),qGt(),c}return JSON.parse(i)}function qGt(){const r=new Date().getTime()+864e5;sessionStorage.setItem("flatmap-knowledge-expiry",r)}function ZGt(){["flatmap-knowledge","flatmap-knowledge-expiry","flatmap-knowledge-source"].forEach(t=>{sessionStorage.removeItem(t)})}function XGt(){const e=sessionStorage.getItem("flatmap-knowledge-expiry");new Date().getTime()>e&&ZGt()}function KGt(e){return e[0].toUpperCase()+e.substring(1)}const vv={emits:["flatmap-provenance-ready","resource-selected","species-changed"],props:{entry:Object,visible:{type:Boolean,default:!0},mouseHovered:{type:Boolean,default:!1}},computed:{...nl.mapStores(p7,J5),idNamePair(){return this.splitFlowStore.idNamePair},syncMode(){return this.splitFlowStore.syncMode},useHelpModeDialog(){return this.settingsStore.useHelpModeDialog},connectivityInfoSidebar(){return this.settingsStore.connectivityInfoSidebar},annotationSidebar(){return this.settingsStore.annotationSidebar}},mounted:function(){cn.on("startHelp",()=>{this.startHelp()}),this.multiflatmapRef=this.$refs.multiflatmap,this.flatmapRef=this.$refs.flatmap,this.scaffoldRef=this.$refs.scaffold},methods:{toggleSyncMode:function(){},getState:function(){},openMap:function(e){e==="SYNC"?(this.toggleSyncMode(),this.trackOpenMap("toggle_map_sync_mode")):(cn.emit("OpenNewMap",e),this.trackOpenMap(`open_new_${e}_map`))},onMapmanagerLoaded:function(e){this.settingsStore.updateMapManager(e)},trackOpenMap:function(e){sl.sendEvent({event:"interaction_event",event_name:"portal_maps_open_map",category:e,location:"open_new_map"})},updateWithViewUrl:function(){},search:function(){return!1},searchSuggestions:function(){},resourceSelected:function(e,t){var a,l,c,u,d,h,p,f,m;const r=t[0];if(r&&this.resourceHasAction(r)){cn.emit("PopoverActionClick",r);return}let n,i=!1;const o={paneIndex:this.entry.id,type:e,resource:t,internalName:void 0,eventType:void 0};if(e=="MultiFlatmap"||e=="Flatmap"){const g=this.getFlatmapImp();if(o.internalName=(a=r==null?void 0:r.feature)!=null&&a.label?r.feature.label:this.idNamePair[r.feature.models],r.eventType=="click")if(o.eventType="selected",r.feature.type=="marker"){let b=o.internalName;if(this.settingsStore.isFeaturedMarkerIdentifier(r.feature.id))n={type:"Search",term:this.settingsStore.featuredMarkerDoi(r.feature.id),featuredDataset:!0};else{n={type:"Facet",facet:b,facetPropPath:"anatomy.organ.category.name",facetSubPropPath:"anatomy.organ.name",term:"Anatomical structure"};let T=new Set;r!=null&&r.feature["marker-terms"]&&(r.feature["marker-terms"].length>0?(r.feature["marker-terms"].forEach(Q=>{T.add(Q.label)}),T.add(b),T.size>0&&(n={type:"Facets",labels:[...T]})):(l=r==null?void 0:r.feature)!=null&&l.models&&(n={type:"PMRSearch",term:r.feature.models}))}i=!0,e=="MultiFlatmap"&&g.clearSearchResults()}else r.feature.type=="feature"&&(g.options&&g.options.style==="functional"&&(u=(c=r.feature)==null?void 0:c.hyperlinks)!=null&&u.pmr&&(n={type:"URL",resource:(h=(d=r.feature)==null?void 0:d.hyperlinks)==null?void 0:h.pmr}),this.syncMode&&(i=!0));else r.eventType=="mouseenter"&&(o.eventType="highlighted",i=!0)}else e=="Scaffold"&&(r&&((((p=r.data)==null?void 0:p.id)===void 0||((f=r.data)==null?void 0:f.id)==="")&&(r.data.id=(m=r.data)==null?void 0:m.group),o.internalName=r.data.id,r.data.lastActionOnMarker===!0&&(n={type:"Facet",facet:KGt(r.data.id),facetPropPath:"anatomy.organ.category.name",term:"Anatomical structure"})),o.eventType="selected",i=!0);n&&cn.emit("PopoverActionClick",n),i&&this.$emit("resource-selected",o)},resourceHasAction:function(e){return e.type==="URL"||e.type==="Search"||e.type==="Neuron Search"||e.type=="Facet"||e.type=="Facets"},isVisible:function(){return this.splitFlowStore.getPaneNameById(this.entry.id)!==void 0},displayTooltip:function(){},getNameAndIdFromSyncData:async function(e){let t=e.internalName;t===void 0&&e.resource&&(t=e.resource.label);let r;if(e.resource&&e.resource.resource&&(r=e.resource.resource[0]),this.entry.type==="Scaffold"){if(this.$refs.scaffold.findObjectsWithGroupName(t).length===0){if(e.resource&&e.resource.feature){const o=X8e(e.resource.feature.models);if(o.length>0)return o}let i=sbt(t);if(i)return i;if(r&&e.eventType==="selected")return fetch(`${this.apiLocation}get-related-terms/${r}`).then(o=>o.json()).then(o=>{var a;if(((a=o.uberon)==null?void 0:a.array.length)>0)return t=o.uberon.array[0].name.charAt(0).toUpperCase()+o.uberon.array[0].name.slice(1),r=o.uberon.array[0].id.toUpperCase(),{id:r,name:t}})}}else if(this.entry.type==="MultiFlatmap")if(t==="Bladder")t="Urinary Bladder";else{const n=X8e(t);n.length>0&&(t=n[0])}return{id:r,name:t}},getDatasetAnatomyInfo:function(e){fetch(`${this.apiLocation}dataset_info/anatomy?identifier=${e}`).then(t=>t.json()).then(t=>{const r=t.result[0];let n;try{n=r.anatomy.organ[0].curie}catch{n=void 0}let i;try{i=r.item.curie}catch{i=void 0}let o;try{let a=0,l=!1;for(;!l&&a<r.organisms.subject.length;){const c=r.organisms.subject[a];c.species&&(o=c.species.name,l=!0),a+=1}}catch{o=void 0}this.settingsStore.updateFeaturedMarker({identifier:e,marker:n,doi:i,species:o})})},oldFeaturedDatasetApiHasInfo:async function(){let t=await(await fetch(`${this.apiLocation}get_featured_datasets_identifiers`)).json();return!t.identifiers||t.identifiers.length==0?!1:t.identifiers},newFeaturedDatasetApiHasInfo:async function(){let t=await(await fetch(`${this.apiLocation}get_featured_dataset`)).json();return!t.datasets||t.datasets.length==0?!1:t.datasets.map(r=>r.id)},getFeaturedDatasets:async function(){let e=[],t=await this.oldFeaturedDatasetApiHasInfo();if(t)e=t;else{let r=await this.newFeaturedDatasetApiHasInfo();r&&(e=r)}this.settingsStore.updateFeatured(e),e.forEach(r=>{this.getDatasetAnatomyInfo(r)})},zoomToFeatures:function(){},handleSyncMouseEvent:async function(e){let t=await this.getNameAndIdFromSyncData(e);e.eventType==="highlighted"?this.highlightFeatures(t):e.eventType==="selected"&&this.displayTooltip(t)},handleSyncPanZoomEvent:function(){},highlightFeatures:function(){},receiveSynchronisedEvent:async function(e){if(e.paneIndex!==this.entry.id)e.eventType=="panZoom"||this.handleSyncMouseEvent(e);else if(e.eventType=="selected"){let t=await this.getNameAndIdFromSyncData(e);this.zoomToFeatures(t,!1)}},requestSynchronisedEvent:function(){},flatmapMarkerUpdate(){},onResize:function(){},startHelp:function(){this.isInHelp===!1&&(this.helpMode=!0,window.addEventListener("mousedown",this.checkEndHelpMouseDown),this.isInHelp=!0)},endHelp:function(){window.removeEventListener("mousedown",this.checkEndHelpMouseDown),this.helpMode=!1,setTimeout(()=>{this.isInHelp=!1},200)},onHelpModeShowNext:function(){this.helpModeActiveItem+=1},onHelpModeLastItem:function(e){e&&(this.helpModeLastItem=!0)},onFinishHelpMode:function(){this.helpMode=!1,this.helpModeActiveItem=0,this.helpModeLastItem=!1},onTooltipShown:function(){this.$refs.multiflatmap&&this.$refs.multiflatmapHelp&&this.$refs.multiflatmapHelp.toggleTooltipHighlight(),this.$refs.flatmap&&this.$refs.flatmapHelp&&this.$refs.flatmapHelp.toggleTooltipHighlight(),this.$refs.scaffold&&this.$refs.scaffoldHelp&&this.$refs.scaffoldHelp.toggleTooltipHighlight()},onMapTooltipShown:function(){this.$refs.multiflatmap&&this.$refs.multiflatmapHelp&&this.$refs.multiflatmapHelp.toggleTooltipPinHighlight(),this.$refs.flatmap&&this.$refs.flatmapHelp&&this.$refs.flatmapHelp.toggleTooltipPinHighlight(),this.$refs.scaffold&&this.$refs.scaffoldHelp&&this.$refs.scaffoldHelp.toggleTooltipPinHighlight()},checkEndHelpMouseDown:function(e){e.target.closest(".help-mode-dialog")||this.endHelp()},flatmapHighlight:async function(e,t,r,n){let i=[...t,...n];const o=this.settingsStore.globalSettings;if(o.highlightConnectedPaths){const a=t.length?t:n.length?n:[],l=await e.retrieveConnectedPaths(a);l&&i.push(...l)}if(o.highlightDOIPaths){const a=await e.searchConnectivitiesByReference(r);a&&i.push(...a)}return i=[...new Set(i)],i},cardHoverHighlight:function(){if(this.visible){const e=this.settingsStore.hoverAnatomies,t=this.settingsStore.hoverOrgans,r=this.settingsStore.hoverDOI,n=this.settingsStore.hoverConnectivity;let i=null,o=null;this.flatmapRef&&(i=this.$flatmapRef),this.multiflatmapRef&&(i=this.$multiflatmapRef),this.scaffoldRef&&(o=this.$scaffoldRef),(this.multiflatmapRef||this.flatmapRef)&&i?i.mapImp.clearSearchResults():this.scaffoldRef&&o&&o.changeHighlightedByName(t,"",!1),(e.length||t.length||r||n.length)&&((this.multiflatmapRef||this.flatmapRef)&&i?this.flatmapHighlight(i,e,r,n).then(a=>{try{i.zoomToFeatures(a)}catch(l){console.log(l)}}):this.scaffoldRef&&o&&o.changeHighlightedByName(t,"",!1))}},onAnnotationOpen:function(e){cn.emit("annotation-open",e)},onAnnotationClose:function(){cn.emit("annotation-close")},onConnectivityInfoOpen:function(e){cn.emit("connectivity-info-open",e)},onConnectivityGraphError:function(e){cn.emit("connectivity-graph-error",e)},loadConnectivityKnowledge:async function(e){const t=bxe(e),r=s.markRaw(new GGt);r.initialise(this.flatmapAPI);const n=await WGt(e,r);this.connectivityKnowledge=n.filter(i=>{var o;return!!(i.source===t&&((o=i.connectivity)!=null&&o.length))}),cn.emit("connectivity-knowledge",this.connectivityKnowledge)},connectivityQueryFilter:async function(e,t){let r=this.connectivityKnowledge;if(t.type==="query-update")this.query!==t.value&&(this.target=[]),this.query=t.value;else if(t.type==="filter-update")this.filter=t.value,this.target=[];else if(t.type==="query-filter-update"){this.query=t.query,this.filter=t.filter,this.target=t.data,this.query||cn.emit("connectivity-knowledge",[...r]);return}if(this.query){let n="",i=[],o=[],a=[];this.searchSuggestions(this.query,o);const l=[...new Set(o)];if(n="label",i=l,l.length===1){const c={type:this.filter.map(u=>u.facet.toLowerCase()),target:this.target.map(u=>u.id)};a=await e.retrieveConnectedPaths([this.query],c),n="id",i=[this.query,...a.filter(u=>u!==this.query)]}r=r.filter(c=>a.includes(c.id)||l.includes(c.label)),r.sort((c,u)=>i.indexOf(c[n])-i.indexOf(u[n]))}cn.emit("connectivity-knowledge",r)}},data:function(){return{apiLocation:void 0,activeSpecies:"Human Male",scaffoldCamera:void 0,mainStyle:{height:this.entry.datasetTitle?"calc(100% - 30px)":"100%",width:"100%",bottom:"0px"},helpMode:!1,helpModeActiveItem:0,helpModeLastItem:!1,multiflatmapRef:null,flatmapRef:null,scaffoldRef:null,scaffoldLoaded:!1,isInHelp:!1,mapManager:void 0,connectivityKnowledge:[],query:"",filter:[],target:[]}},created:function(){this.flatmapAPI=void 0,this.apiLocation=void 0,this.settingsStore.flatmapAPI&&(this.flatmapAPI=this.settingsStore.flatmapAPI),this.settingsStore.sparcApi&&(this.apiLocation=this.settingsStore.sparcApi),this.settingsStore.mapManager&&(this.mapManager=this.settingsStore.mapManager)},watch:{helpMode:function(e){e||(this.helpModeActiveItem=0)}}},YGt=function(e){return e?[...new Set(e.map(t=>JSON.stringify(t)))].map(t=>JSON.parse(t)):[]},Qxe={computed:{...nl.mapStores(p7)},methods:{flatmapPanZoomCallback:function(e){if(this.mouseHovered){const t={paneIndex:this.entry.id,eventType:"panZoom",payload:e,type:this.entry.type};this.$emit("resource-selected",t)}},flatmapMarkerUpdate(e){if(!this.flatmapReady)return;let t=e;if(t||(t=this.getFlatmapImp()),t){let r=this.settingsStore.globalSettings.displayMarkers?this.settingsStore.markers:[];r=YGt(r);let n=this.settingsStore.globalSettings.displayMarkers?this.settingsStore.multiScaleMarkers:[],i=this.removeMarkersNotOnFlatmap(t,r);if(t.clearMarkers(),t.clearDatasetMarkers(),this.entry.resource==="FunctionalConnectivity"){let o=[];for(let a=0;a<i.length;a++)o=o.concat(i[a].terms);t.addMarkers(Array.from(new Set(o)),{className:"standard-marker",cluster:!1})}else t.addDatasetMarkers(i);t.addMarkers(n,{kind:"multiscale"}),this.entry.type==="MultiFlatmap"&&this.restoreFeaturedMarkers(t)}},removeMarkersNotOnFlatmap(e,t){let r=e.anatomicalIdentifiers,n=[];for(let i=0;i<t.length;i++){let o=t[i],a={id:o.id,terms:[]};for(let l=0;l<o.terms.length;l++)r.includes(o.terms[l])&&a.terms.push(o.terms[l]);n.push(a)}return n},flatmapReadyForMarkerUpdates:function(e){if(e){e.enablePanZoomEvents(!0),this.flatmapReady=!0;const t=e.mapImp;this.flatmapMarkerUpdate(t)}}}},Jp=(e,t,{checkForDefaultPrevented:r=!0}={})=>n=>{const i=e==null?void 0:e(n);if(r===!1||!i)return t==null?void 0:t(n)};var xxe;const Ia=typeof window<"u",JGt=e=>typeof e=="string",_xe=()=>{},DJ=Ia&&((xxe=window==null?void 0:window.navigator)==null?void 0:xxe.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent);function FJ(e){return typeof e=="function"?e():s.unref(e)}function eWt(e){return e}function zS(e){return s.getCurrentScope()?(s.onScopeDispose(e),!0):!1}function tWt(e,t=!0){s.getCurrentInstance()?s.onMounted(e):t?e():s.nextTick(e)}function wxe(e,t,r={}){const{immediate:n=!0}=r,i=s.ref(!1);let o=null;function a(){o&&(clearTimeout(o),o=null)}function l(){i.value=!1,a()}function c(...u){a(),i.value=!0,o=setTimeout(()=>{i.value=!1,o=null,e(...u)},FJ(t))}return n&&(i.value=!0,Ia&&c()),zS(l),{isPending:s.readonly(i),start:c,stop:l}}function e4(e){var t;const r=FJ(e);return(t=r==null?void 0:r.$el)!=null?t:r}const LV=Ia?window:void 0;function J0(...e){let t,r,n,i;if(JGt(e[0])||Array.isArray(e[0])?([r,n,i]=e,t=LV):[t,r,n,i]=e,!t)return _xe;Array.isArray(r)||(r=[r]),Array.isArray(n)||(n=[n]);const o=[],a=()=>{o.forEach(d=>d()),o.length=0},l=(d,h,p,f)=>(d.addEventListener(h,p,f),()=>d.removeEventListener(h,p,f)),c=s.watch(()=>[e4(t),FJ(i)],([d,h])=>{a(),d&&o.push(...r.flatMap(p=>n.map(f=>l(d,p,f,h))))},{immediate:!0,flush:"post"}),u=()=>{c(),a()};return zS(u),u}let Lxe=!1;function rWt(e,t,r={}){const{window:n=LV,ignore:i=[],capture:o=!0,detectIframe:a=!1}=r;if(!n)return;DJ&&!Lxe&&(Lxe=!0,Array.from(n.document.body.children).forEach(d=>d.addEventListener("click",_xe)));let l=!0;const c=d=>i.some(h=>{if(typeof h=="string")return Array.from(n.document.querySelectorAll(h)).some(p=>p===d.target||d.composedPath().includes(p));{const p=e4(h);return p&&(d.target===p||d.composedPath().includes(p))}}),u=[J0(n,"click",d=>{const h=e4(e);if(!(!h||h===d.target||d.composedPath().includes(h))){if(d.detail===0&&(l=!c(d)),!l){l=!0;return}t(d)}},{passive:!0,capture:o}),J0(n,"pointerdown",d=>{const h=e4(e);h&&(l=!d.composedPath().includes(h)&&!c(d))},{passive:!0}),a&&J0(n,"blur",d=>{var h;const p=e4(e);((h=n.document.activeElement)==null?void 0:h.tagName)==="IFRAME"&&!(p!=null&&p.contains(n.document.activeElement))&&t(d)})].filter(Boolean);return()=>u.forEach(d=>d())}function Sxe(e,t=!1){const r=s.ref(),n=()=>r.value=!!e();return n(),tWt(n,t),r}const Exe=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Cxe="__vueuse_ssr_handlers__";Exe[Cxe]=Exe[Cxe]||{};var Mxe=Object.getOwnPropertySymbols,nWt=Object.prototype.hasOwnProperty,iWt=Object.prototype.propertyIsEnumerable,oWt=(e,t)=>{var r={};for(var n in e)nWt.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&Mxe)for(var n of Mxe(e))t.indexOf(n)<0&&iWt.call(e,n)&&(r[n]=e[n]);return r};function vf(e,t,r={}){const n=r,{window:i=LV}=n,o=oWt(n,["window"]);let a;const l=Sxe(()=>i&&"ResizeObserver"in i),c=()=>{a&&(a.disconnect(),a=void 0)},u=s.watch(()=>e4(e),h=>{c(),l.value&&i&&h&&(a=new ResizeObserver(t),a.observe(h,o))},{immediate:!0,flush:"post"}),d=()=>{c(),u()};return zS(d),{isSupported:l,stop:d}}var kxe=Object.getOwnPropertySymbols,aWt=Object.prototype.hasOwnProperty,sWt=Object.prototype.propertyIsEnumerable,lWt=(e,t)=>{var r={};for(var n in e)aWt.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&kxe)for(var n of kxe(e))t.indexOf(n)<0&&sWt.call(e,n)&&(r[n]=e[n]);return r};function cWt(e,t,r={}){const n=r,{window:i=LV}=n,o=lWt(n,["window"]);let a;const l=Sxe(()=>i&&"MutationObserver"in i),c=()=>{a&&(a.disconnect(),a=void 0)},u=s.watch(()=>e4(e),h=>{c(),l.value&&i&&h&&(a=new MutationObserver(t),a.observe(h,o))},{immediate:!0}),d=()=>{c(),u()};return zS(d),{isSupported:l,stop:d}}var Axe;(function(e){e.UP="UP",e.RIGHT="RIGHT",e.DOWN="DOWN",e.LEFT="LEFT",e.NONE="NONE"})(Axe||(Axe={}));var uWt=Object.defineProperty,Oxe=Object.getOwnPropertySymbols,dWt=Object.prototype.hasOwnProperty,hWt=Object.prototype.propertyIsEnumerable,Pxe=(e,t,r)=>t in e?uWt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,pWt=(e,t)=>{for(var r in t||(t={}))dWt.call(t,r)&&Pxe(e,r,t[r]);if(Oxe)for(var r of Oxe(t))hWt.call(t,r)&&Pxe(e,r,t[r]);return e};pWt({linear:eWt},{easeInSine:[.12,0,.39,0],easeOutSine:[.61,1,.88,1],easeInOutSine:[.37,0,.63,1],easeInQuad:[.11,0,.5,0],easeOutQuad:[.5,1,.89,1],easeInOutQuad:[.45,0,.55,1],easeInCubic:[.32,0,.67,0],easeOutCubic:[.33,1,.68,1],easeInOutCubic:[.65,0,.35,1],easeInQuart:[.5,0,.75,0],easeOutQuart:[.25,1,.5,1],easeInOutQuart:[.76,0,.24,1],easeInQuint:[.64,0,.78,0],easeOutQuint:[.22,1,.36,1],easeInOutQuint:[.83,0,.17,1],easeInExpo:[.7,0,.84,0],easeOutExpo:[.16,1,.3,1],easeInOutExpo:[.87,0,.13,1],easeInCirc:[.55,0,1,.45],easeOutCirc:[0,.55,.45,1],easeInOutCirc:[.85,0,.15,1],easeInBack:[.36,0,.66,-.56],easeOutBack:[.34,1.56,.64,1],easeInOutBack:[.68,-.6,.32,1.6]});/**
1434
1434
  * @vue/shared v3.5.13
1435
1435
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
1436
1436
  * @license MIT
@@ -3806,7 +3806,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
3806
3806
  state: () => new MyClass()
3807
3807
  Found in store "${M.$id}".`),m&&o&&r.hydrate&&r.hydrate(M.$state,m),u=!0,d=!0,M}function VAr(e,t,r){let n,i;const o=typeof t=="function";n=e,i=o?r:t;function a(l,c){const u=s.hasInjectionContext();if(l=(process.env.NODE_ENV==="test"&&Gk&&Gk._testing?null:l)||(u?s.inject(PAr,null):null),l&&Ij(l),process.env.NODE_ENV!=="production"&&!Gk)throw new Error(`[🍍]: "getActivePinia()" was called but there was no active Pinia. Are you trying to use a store before calling "app.use(pinia)"?
3808
3808
  See https://pinia.vuejs.org/core-concepts/outside-component-usage.html for help.
3809
- This will fail in production.`);l=Gk,l._s.has(n)||(o?Kse(n,t,i,l):UBe(n,i,l),process.env.NODE_ENV!=="production"&&(a._pinia=l));const d=l._s.get(n);if(process.env.NODE_ENV!=="production"&&c){const h="__hot:"+n,p=o?Kse(h,t,i,l,!0):UBe(h,n0({},i),l,!0);c._hotUpdate(p),delete l.state.value[h],l._s.delete(h)}if(process.env.NODE_ENV!=="production"&&qse){const h=s.getCurrentInstance();if(h&&h.proxy&&!c){const p=h.proxy,f="_pStores"in p?p._pStores:p._pStores={};f[n]=d}}return d}return a.$id=n,a}function HAr(e,t){return Array.isArray(t)?t.reduce((r,n)=>(r[n]=function(){return e(this.$pinia)[n]},r),{}):Object.keys(t).reduce((r,n)=>(r[n]=function(){const i=e(this.$pinia),o=t[n];return typeof o=="function"?o.call(this,i):i[o]},r),{})}const BAr=VAr("main",{state:()=>({userProfile:{token:""}}),getters:{userToken(e){return e.userProfile.token}},actions:{setUserToken(e){this.userProfile.token=e}}});function $Ar(e){return{all:e=e||new Map,on:function(t,r){var n=e.get(t);n?n.push(r):e.set(t,[r])},off:function(t,r){var n=e.get(t);n&&(r?n.splice(n.indexOf(r)>>>0,1):e.set(t,[]))},emit:function(t,r){var n=e.get(t);n&&n.slice().map(function(i){i(r)}),(n=e.get("*"))&&n.slice().map(function(i){i(t,r)})}}}const Yse=new $Ar,DAr="cannot be found on the map.",FAr=e=>{let t={lng:0,lat:0},r;return e.type==="Polygon"?e.coordinates.length&&(r=e.coordinates[0]):r=e.coordinates,r&&(e.type!=="Point"?(r.map(n=>{t.lng+=parseFloat(n[0]),t.lat+=parseFloat(n[1])}),t.lng=t.lng/r.length,t.lat=t.lat/r.length):(t.lng+=parseFloat(r[0]),t.lat+=parseFloat(r[1]))),t},GBe=(e,t)=>{const r=[];let n=e.organs?e.organs:e.ftus;const i=n?n.filter((o,a)=>n.findIndex(l=>l.label===o.label)===a):void 0;return i&&i.forEach(o=>{const a={label:o.label,models:o.models,key:`${t}.${o.label}`},l=GBe(o,a.key);l.length>0&&(a.children=l),r.push(a)}),r},zAr={name:"FlatmapVuer",components:{Button:Wwe,Col:cE,Loading:Nrr,Radio:lLe,Icon:Uh,RadioGroup:cLe,Row:lE,Select:rH,Dialog:err,MapSvgIcon:BL,MapSvgSpriteColor:PR,Tooltip:kme,TreeControls:Ame,SelectionsGroup:bLe,SvgLegends:QLe,ElIconWarningFilled:O_e,ElIconArrowDown:lee,ElIconArrowLeft:M_e,DrawToolbar:Cme},beforeCreate:function(){this.setStateRequired=!1},setup(e){let t=s.inject("$annotator");return t||(t=s.markRaw(new AAr(`${e.flatmapAPI}annotator`)),s.provide("$annotator",t)),{annotator:t}},methods:{manualAbortedOnClose:function(){this.annotationSidebar&&this.$emit("annotation-close"),this.closeTooltip(),this.annotationEventCallback({},{type:"aborted"}),this.initialiseDrawing()},initialiseDrawing:function(){this.connectionEntry={},this.activeDrawTool=void 0,this.activeDrawMode=void 0,this.drawnCreatedEvent={}},cancelDrawnFeature:function(){this.isValidDrawnCreated&&(this.annotationSidebar&&this.$emit("annotation-close"),this.closeTooltip(),this.annotationEntry=[{...this.drawnCreatedEvent.feature,resourceId:this.serverURL}],this.rollbackAnnotationEvent(),this.initialiseDrawing())},connectedFeatureTooltip:function(e){if(this.mapImp)if(e){const t=Number(e);let r={feature:{}};if(t){const n=this.mapImp.featureProperties(t);r.feature=n}else{const n=this.existDrawnFeatures.find(i=>i.id===e.replace(" ",""));r.feature.feature=n}this.checkAndCreatePopups([r])}else this.closeTooltip()},confirmDrawnFeature:function(){this.isValidDrawnCreated&&(this.checkAndCreatePopups([this.drawnCreatedEvent]),Object.keys(this.connectionEntry).length>0&&(this.annotationEntry[0].feature.connection=this.connectionEntry),this.initialiseDrawing())},toolbarEvent:function(e,t){if(!this.isValidDrawnCreated){if(this.manualAbortedOnClose(),this.doubleClickedFeature=!1,this.changeAnnotationDrawMode({mode:"simple_select"}),e==="mode")this.activeDrawMode=t;else if(e==="tool"){if(this.cancelDrawnFeature(),t){const r=t.replace(/[A-Z]/g,n=>`_${n.toLowerCase()}`);this.changeAnnotationDrawMode({mode:`draw${r}`})}this.activeDrawTool=t}}},annotationDrawModeEvent:function(e){this.activeDrawMode==="Edit"?this.doubleClickedFeature&&(e.feature.feature.geometry.type!=="Point"&&(this.changeAnnotationDrawMode({mode:"direct_select",options:{featureId:e.feature.feature.id}}),this.modifyAnnotationFeature()),this.doubleClickedFeature=!1):this.activeDrawMode==="Delete"&&(this.changeAnnotationDrawMode({mode:"simple_select",options:{featureIds:[e.feature.feature.id]}}),this.modifyAnnotationFeature())},createConnectivityBody:function(){if(Object.keys(this.connectionEntry).length>0){const e=Object.values(this.connectionEntry),t={type:"connectivity",source:e[0],target:e[e.length-1],intermediates:e.filter((r,n)=>n!==0&&n!==e.length-1)};this.annotationEntry[0].body=t}},changeAnnotationDrawMode:function(e){this.mapImp&&this.mapImp.changeAnnotationDrawMode(e)},clearAnnotationFeature:function(){this.mapImp&&this.existDrawnFeatures.length>0&&this.mapImp.clearAnnotationFeature()},modifyAnnotationFeature:function(){this.mapImp&&this.mapImp.removeAnnotationFeature()},rollbackAnnotationEvent:function(){this.mapImp&&this.annotationEntry.length>0&&["created","updated","deleted"].includes(this.annotationEntry[0].type)&&(this.mapImp.rollbackAnnotationEvent(this.annotationEntry[0]),this.annotationEntry=[])},commitAnnotationEvent:function(e){this.mapImp&&this.annotationEntry.length>0&&["created","updated","deleted"].includes(this.annotationEntry[0].type)&&e&&(this.featureAnnotationSubmitted=!0,this.mapImp.commitAnnotationEvent(this.annotationEntry[0]),e.body.comment==="Position Updated"?this.annotationEntry[0].positionUpdated=!1:this.annotationEntry[0].type==="deleted"&&(this.annotationSidebar&&this.$emit("annotation-close"),this.closeTooltip(),this.annotationEntry=[]),this.addAnnotationFeature())},fetchAnnotatedItemIds:async function(e=void 0,t=void 0){let r=await this.annotator.annotatedItemIds(this.userToken,this.serverURL,e,t);return"resource"in r&&(r=r.itemIds),r},setFeatureAnnotated:async function(){if(this.mapImp){const e=await this.fetchAnnotatedItemIds();for(const t of e)this.mapImp.setFeatureAnnotated(t)}},fetchDrawnFeatures:async function(e,t){const r=await this.fetchAnnotatedItemIds(e,t);let n=await this.annotator.drawnFeatures(this.userToken,this.serverURL,r);return"resource"in n&&(n=n.features),n},addAnnotationFeature:async function(){if(this.mapImp){this.featureAnnotationSubmitted||(this.clearAnnotationFeature(),this.loading=!0);const e=this.annotationFrom==="Anyone"?void 0:this.userInformation.orcid?this.userInformation.orcid:"0000-0000-0000-0000",t=this.annotationFrom==="Anyone"?void 0:this.annotationFrom==="Me",r=await this.fetchDrawnFeatures(e,t);if(this.existDrawnFeatures=r,this.loading=!1,!this.featureAnnotationSubmitted)for(const n of r)this.mapImp.addAnnotationFeature(n)}},showAnnotator:function(e){this.mapImp&&(this.mapImp.showAnnotator(e),this.$el.querySelector(".maplibregl-ctrl-group").style.display="none")},setAnnotationFrom:function(e){this.annotationFrom=e,this.mapImp&&(this.manualAbortedOnClose(),this.addAnnotationFeature())},setFlightPath3D:function(e){this.flightPath3DRadio=e,this.mapImp&&this.mapImp.enableFlightPaths(e)},viewLatestMap:function(){let e=this.biologicalSex?this.biologicalSex:void 0;this.entry==="NCBITaxon:9606"&&(e="PATO:0000384");const t={entry:this.entry,biologicalSex:e,viewport:this.mapImp.getState()};this.$emit("view-latest-map",t)},backgroundChangeCallback:function(e){this.currentBackground=e,this.mapImp&&this.mapImp.setBackgroundColour(this.currentBackground,1)},processSystems:function(e){if(this.systems.length=0,e&&e.length>0){const t={label:"All",key:"All",children:[]};e.forEach(r=>{const n={colour:r.colour,enabled:r.enabled,label:r.id,key:r.id},i=GBe(r,n.key);i.length>0&&(n.children=i),t.children.push(n)}),this.systems.push(t)}},processTaxon:function(e,t){this.taxonConnectivity.length=0,Gee(this.mapImp,e).then(r=>{r.length&&r.forEach(n=>{let i=!0;t&&(i=t.checkAll?!0:t.checked.includes(n.taxon)),this.taxonConnectivity.push({...n,enabled:i}),this.mapImp&&this.mapImp.enableConnectivityByTaxonIds(n.taxon,i)})})},toggleDrawer:function(){this.drawerOpen=!this.drawerOpen},setColour:function(e){this.colourRadio=e,this.mapImp&&this.mapImp.setPaint({colour:e,outline:this.outlinesRadio})},setOutlines:function(e){this.outlinesRadio=e,this.mapImp&&this.mapImp.setPaint({colour:this.colourRadio,outline:e})},setInitMapState:function(){if(this.mapImp){const e=this.mapImp.map,t=this.mapImp.options.bounds,r=[[t[0],t[1]],[t[2],t[3]]];e.setMaxBounds(null),this.initMapState=s.markRaw({initBounds:r})}},resetView:function(){if(this.mapImp){const e=this.mapImp.map,{initBounds:t}=this.initMapState;e.resetNorthPitch({animate:!1}),t&&e.fitBounds(t,{animate:!1}),this.$refs.skcanSelection&&this.$refs.skcanSelection.reset(),this.$refs.layersSelection&&this.$refs.layersSelection.reset(),this.$refs.systemsSelection&&this.$refs.pathwaysSelection.reset(),this.$refs.pathwaysSelection&&this.$refs.pathwaysSelection.reset()}},zoomIn:function(){this.mapImp&&this.mapImp.zoomIn()},zoomOut:function(){this.mapImp&&this.mapImp.zoomOut()},onSelectionsDataChanged:function(e){this.$emit("pathway-selection-changed",e)},sckanSelected:function(e){this.mapImp&&this.mapImp.enableSckanPath(e.key,e.value)},checkAllSCKAN:function(e){this.mapImp&&e.keys.forEach(t=>this.mapImp.enableSckanPath(t,e.value))},zoomToFeatures:function(e){this.mapImp&&this.mapImp.zoomToFeatures(e)},retrieveConnectedPaths:async function(e,t={}){var r,n,i,o,a;if(this.mapImp){let l=[],c=(r=t.target)!=null&&r.length?t.target:[];const u=[...this.mapImp.pathModelNodes(e)],d=await this.mapImp.queryPathsForFeatures(e);if(u.length){if(!c.length){const h=(n=t.type)!=null&&n.length?t.type:["all"],p=await this.flatmapQueries.queryForConnectivityNew(this.mapImp,e[0]),f=(i=p==null?void 0:p.ids)==null?void 0:i.dendrites.flat(1/0),m=(o=p==null?void 0:p.ids)==null?void 0:o.components.flat(1/0),g=(a=p==null?void 0:p.ids)==null?void 0:a.axons.flat(1/0);let b=[];h.includes("origins")&&b.push(...f),h.includes("components")&&b.push(...m),h.includes("destinations")&&b.push(...g),h.includes("all")&&b.push(...f,...m,...g),c=[...new Set(b)]}u.forEach(h=>{this.mapImp.nodePathModels(h).forEach(p=>{const f=this.mapImp.pathModelNodes(p).map(m=>this.mapImp.featureProperties(m).models);c.filter(m=>f.includes(m)).length&&!l.includes(p)&&l.push(p)})})}else d.length&&(c.length?d.forEach(h=>{const p=this.mapImp.pathModelNodes(h).map(f=>this.mapImp.featureProperties(f).models);c.filter(f=>p.includes(f)).length&&!l.includes(h)&&l.push(h)}):l=d);return l=[...new Set([...l,...e])],l}},resetMapFilter:function(){const e=this.mapFilters.alert;let t;e.with?e.without||(t={HAS:"alert"}):e.without?t={NOT:{HAS:"alert"}}:t={AND:[{NOT:{HAS:"alert"}},{HAS:"alert"}]},t?this.mapImp.setVisibilityFilter(t):this.mapImp.clearVisibilityFilter()},alertMouseEnterEmitted:function(e){if(this.mapImp)if(e.value){let t;e.key==="alert"?t={HAS:"alert"}:e.key==="withoutAlert"&&(t={NOT:{HAS:"alert"}}),this.mapImp.setVisibilityFilter(t)}else this.resetMapFilter()},alertSelected:function(e){this.mapImp&&(e.key==="alert"?e.value?this.mapFilters.alert.with=!0:this.mapFilters.alert.with=!1:e.key==="withoutAlert"&&(e.value?this.mapFilters.alert.without=!0:this.mapFilters.alert.without=!1),this.resetMapFilter())},checkAllAlerts:function(e){this.mapImp&&(e.value?(this.mapFilters.alert.without=!0,this.mapFilters.alert.with=!0):(this.mapFilters.alert.without=!1,this.mapFilters.alert.with=!1),this.resetMapFilter())},systemSelected:function(e){this.mapImp&&this.mapImp.enableSystem(e.key,e.value)},checkAllSystems:function(e){this.mapImp&&this.systems[0].children.forEach(t=>this.mapImp.enableSystem(t.label,e))},ftuSelected:function(e){this.searchAndShowResult(e,!0)},layersSelected:function(e){this.mapImp&&this.mapImp.enableLayer(e.key,e.value)},checkAllLayers:function(e){this.mapImp&&e.keys.forEach(t=>this.mapImp.enableLayer(t,e.value))},taxonsSelected:function(e){this.mapImp&&this.mapImp.enableConnectivityByTaxonIds(e.key,e.value)},taxonMouseEnterEmitted:function(e){if(this.mapImp)if(e.value){clearTimeout(this.taxonLeaveDelay);let t=this.mapImp.taxonFeatureIds(e.key);this.mapImp.enableConnectivityByTaxonIds(e.key,e.value),this.mapImp.zoomToGeoJSONFeatures(t,{noZoomIn:!0})}else this.taxonLeaveDelay=setTimeout(()=>{this.mapImp.unselectGeoJSONFeatures(),e.selections.forEach(t=>{let r=e.checked.includes(t.taxon);this.mapImp.enableConnectivityByTaxonIds(t.taxon,r)})},1e3)},checkAllTaxons:function(e){this.mapImp&&this.mapImp.enableConnectivityByTaxonIds(e.keys,e.value)},pathwaysSelected:function(e){this.mapImp&&this.mapImp.enablePath(e.key,e.value)},checkAllPathways:function(e){this.mapImp&&e.keys.forEach(t=>this.mapImp.enablePath(t,e.value))},enablePanZoomEvents:function(e){this.mapImp.enablePanZoomEvents(e)},annotationEventCallback:function(e,t){if(t.type==="aborted")this.featureAnnotationSubmitted?this.featureAnnotationSubmitted=!1:this.rollbackAnnotationEvent(),this.annotationEntry=[];else if(t.type==="modeChanged")t.feature.mode==="direct_select"&&(this.doubleClickedFeature=!0),this.annotationSidebar&&t.feature.mode==="simple_select"&&this.activeDrawMode==="Deleted"&&this.annotationEventCallback({},{type:"aborted"});else if(t.type==="selectionChanged"){if(this.selectedDrawnFeature=t.feature.features.length===0?void 0:t.feature.features[0],e.feature.feature=this.selectedDrawnFeature,!this.activeDrawTool)if(this.connectionEntry={},this.selectedDrawnFeature){const r=this.existDrawnFeatures.find(n=>n.id===this.selectedDrawnFeature.id);r&&r.connection&&(this.connectionEntry=r.connection),this.annotationDrawModeEvent(e)}else this.annotationSidebar&&this.previousEditEvent.type==="updated"&&(this.annotationEntry=[{...this.previousEditEvent,resourceId:this.serverURL}],this.annotationEventCallback({},{type:"aborted"})),this.previousEditEvent={}}else{if(t.type==="created"||t.type==="updated"){t.type==="updated"&&t.feature.action&&(t.positionUpdated=t.feature.action==="move");const r=this.mapImp.refreshAnnotationFeatureGeometry(t.feature);e.feature.feature=r}t.type==="created"?this.drawnCreatedEvent=e:this.checkAndCreatePopups([e])}t.type==="updated"&&(this.previousEditEvent=t),t.type==="deleted"?this.previousDeletedEvent=t:this.previousDeletedEvent={}},eventCallback:function(){return(e,t,...r)=>{if(e==="annotation"){const n={feature:t,userData:r,eventType:e};this.annotationEventCallback(n,t)}else if(e!=="pan-zoom"){const n=t.label,i=[t.models],o=this.entry,a=this.biologicalSex,l=t.alert;let c;t.taxons&&(typeof t.taxons!="object"?c=JSON.parse(t.taxons):c=t.taxons);let u=[{dataset:t.dataset,biologicalSex:a,taxonomy:o,resource:i,label:n,feature:t,userData:r,eventType:e,provenanceTaxonomy:c,alert:l}];if(e==="click"){const d=Object.keys(t).includes("id");if(!d){u=[];const p=t.mapUUID;for(let[f,m]of Object.entries(t))if(f!=="mapUUID"){const g=m.label,b=[m.models];let T;m.taxons&&(typeof m.taxons!="object"?T=JSON.parse(m.taxons):T=m.taxons),u.push({dataset:m.dataset,biologicalSex:a,taxonomy:o,resource:b,label:g,feature:m,userData:r,eventType:e,provenanceTaxonomy:T,alert:m.alert,mapUUID:p})}}const h=d?t:t[0];if(this.viewingMode==="Neuron Connection")this.retrieveConnectedPaths([h.models]).then(p=>{this.zoomToFeatures(p)});else if(this.currentActive=h.models?h.models:"",this.activeDrawTool&&!this.isValidDrawnCreated){const p=h.featureId||this.existDrawnFeatures.find(f=>f.id===h.id);if(this.activeDrawTool==="LineString"&&p){const f=h.featureId?h.featureId:h.id,m=h.label?h.label:`Feature ${h.id}`;this.connectionEntry[` ${f}`]=Object.assign({label:m},Object.fromEntries(Object.entries(h).filter(([g])=>["featureId","models"].includes(g)).map(([g,b])=>[g==="featureId"?"id":g,b])))}}}else e==="mouseenter"&&this.viewingMode!=="Neuron Connection"&&(this.currentHover=t.models?t.models:"");t&&t.type!=="marker"&&e==="click"&&this.viewingMode!=="Neuron Connection"&&!this.activeDrawTool&&this.checkAndCreatePopups(u),this.$emit("resource-selected",u)}else this.$emit("pan-zoom-callback",t)}},changeViewingMode:function(e){e&&(this.viewingMode=e),this.manualAbortedOnClose()},removeActiveTooltips:function(){this.mapImp&&this.mapImp.removePopup(),this.$el.querySelectorAll(".flatmap-tooltip-popup").forEach(e=>e.remove())},createTooltipForConnectivity:function(e,t){const r=document.createElement("div");r.classList.add("flatmap-feature-label"),e.forEach((n,i)=>{const{label:o}=n;if(r.append(_Le(o)),i+1<e.length){const a=document.createElement("hr");r.appendChild(a)}}),this.mapImp.showPopup(t,r,{className:"custom-popup flatmap-tooltip-popup",positionAtLastClick:!1,preserveSelection:!0})},showConnectivityTooltips:function(e){const{connectivityInfo:t,data:r}=e,n=[],i=[],o=[],a=[],l=[];if(r.length?r.forEach(c=>{o.push({id:c.id,label:c.label})}):this.removeActiveTooltips(),t&&t.featureId&&n.push(...t.featureId),this.mapImp){if(o.forEach((u,d)=>{const{id:h,label:p}=u,f=this.mapImp.search(h);if(f!=null&&f.results.length){const m=f==null?void 0:f.results[0].featureId;a.push({featureId:m,id:h,label:p})}else l.push(u)}),a.length){let u=a[0].featureId;this.mapImp.annotations.forEach(d=>{const h=d["anatomical-nodes"];if(h){const p=h.join("");a.every(f=>p.indexOf(f.id)!==-1)&&(u=d.featureId,i.push(u))}}),this.createTooltipForConnectivity(a,u)}else l.push(...o),this.removeActiveTooltips();l.length&&this.emitConnectivityGraphError(l);const c=[...this.mapImp.modelFeatureIdList(n),...i];this.mapImp.selectGeoJSONFeatures(c)}},showConnectivitiesByReference:function(e){this.searchConnectivitiesByReference(e).then(t=>{this.mapImp.selectFeatures(t)})},searchConnectivitiesByReference:async function(e){const t=sessionStorage.getItem("flatmap-knowledge");let r=[];return t?r=await Xrr(e):r=await Krr(this.mapImp,e,this.flatmapQueries),r},emitConnectivityGraphError:function(e){this.$emit("connectivity-graph-error",{data:{errorData:e,errorMessage:DAr}})},checkConnectivityTooltipEntry:function(e){return e!=null&&e.length?e.find(t=>{var r,n;return((r=t==null?void 0:t.destinations)==null?void 0:r.length)||((n=t==null?void 0:t.components)==null?void 0:n.length)})!==void 0:!1},changeConnectivitySource:async function(e){const{featureId:t,connectivitySource:r}=e;await this.flatmapQueries.queryForConnectivityNew(this.mapImp,t[0],r),this.tooltipEntry=this.tooltipEntry.map(n=>n.featureId[0]===t[0]?this.flatmapQueries.updateTooltipData(n):n),this.checkConnectivityTooltipEntry()&&this.$emit("connectivity-info-open",this.tooltipEntry)},checkAndCreatePopups:async function(e){if(this.viewingMode==="Annotation"){const t=e.filter(r=>r.feature).map(r=>r.feature);if(t.length>0)if(this.annotationSidebar&&this.previousDeletedEvent.type==="deleted"&&(this.annotationEntry=[{...this.previousDeletedEvent,resourceId:this.serverURL}],this.annotationEventCallback({},{type:"aborted"})),this.annotationEntry=[],t.forEach(r=>{this.annotationEntry.push({...r,resourceId:this.serverURL,featureId:r.featureId?r.featureId:r.feature.id})}),t[0].feature)this.activeDrawTool||this.activeDrawMode||this.isValidDrawnCreated?(this.featureAnnotationSubmitted=!1,this.activeDrawTool&&this.createConnectivityBody(),this.displayTooltip(t[0].feature.id,FAr(t[0].feature.geometry))):this.rollbackAnnotationEvent();else{const r=this.annotationEntry.filter(n=>n.featureId&&n.models).map(n=>n.models);r.length>0&&this.displayTooltip(r)}else this.annotation={}}else{Yrr(this.mapImp,this.flatmapQueries);let t=[];for(let n=0;n<e.length;n++){const i=e[n];t.push(await this.getKnowledgeTooltip(i))}this.tooltipEntry=await Promise.all(t);const r=this.tooltipEntry.filter(n=>n).map(n=>n.featureId[0]);r.length>0&&this.displayTooltip(r)}},getKnowledgeTooltip:async function(e){const t=await this.flatmapQueries.retrieveFlatmapKnowledgeForEvent(this.mapImp,e);let r=await this.flatmapQueries.createTooltipData(this.mapImp,e);if(t&&t[0]||e.feature.hyperlinks&&e.feature.hyperlinks.length>0)r.featuresAlert=e.alert,r.knowledgeSource=qee(this.mapImp),r.mapId=this.mapImp.provenance.id,r.mapuuid=this.mapImp.provenance.uuid;else{r={...r,origins:[e.label],originsWithDatasets:[{id:e.resource[0],name:e.label}],components:[],componentsWithDatasets:[],destinations:[],destinationsWithDatasets:[]};let n=[];const i=await this.mapImp.queryPathsForFeatures(e.resource);i.length&&(i.forEach(o=>{n.push(...this.mapImp.pathModelNodes(o));const a=this.mapImp.search(o);let l;for(let c=0;c<a.results.length;c++){l=a.results[c].featureId;const u=this.mapImp.annotation(l);if(l&&u!=null&&u.label)break}if(l){const c=this.mapImp.featureProperties(l);r.components.includes(c.label)||(r.components.push(c.label),r.componentsWithDatasets.push({id:c.models,name:c.label}))}}),n=[...new Set(n)].filter(o=>o!==e.feature.featureId),n.forEach(o=>{const a=this.mapImp.featureProperties(o);r.destinations.includes(a.label)||(r.destinations.push(a.label),r.destinationsWithDatasets.push({id:a.models,name:a.label}))}))}return r},popUpCssHacks:function(){const e=document.querySelector(".flatmap-tooltip-popup"),t=document.querySelector(".maplibregl-popup-close-button");e&&(e.style.display="none"),t.style.display="block",this.$refs.tooltip.$el.style.display="flex",t.onclick=()=>{this.$emit("connectivity-info-close"),e&&(e.style.display="block")}},closeTooltip:function(){this.$refs.tooltip&&(this.$refs.tooltip.$el.style.display="none"),document.querySelectorAll(".maplibregl-popup").forEach(e=>{e.style.display="none"})},createTooltipFromNeuronCuration:async function(e){this.tooltipEntry=await this.flatmapQueries.createTooltipData(this.mapImp,e),this.displayTooltip(e.resource[0])},createTooltipFromEntityCuration:async function(e){this.tooltipEntry=await this.flatmapQueries.createTooltipData(this.mapImp,e);let t=[],r=[],n=[];const i=await this.mapImp.queryPathsForFeatures(e.resource);i.length&&(i.forEach(o=>{t.push(...this.mapImp.pathModelNodes(o))}),t=[...new Set(t)].filter(o=>o!==e.feature.featureId),t.forEach(o=>{const a=this.mapImp.featureProperties(o);r.includes(a.label)||(r.push(a.label),n.push({id:a.models,name:a.label}))}),this.tooltipEntry={...this.tooltipEntry,origins:[e.label],originsWithDatasets:[{id:e.resource[0],name:e.label}],components:[],componentsWithDatasets:[],destinations:r,destinationsWithDatasets:n},this.displayTooltip(e.resource[0]))},showPopup:function(e,t,r){let n=r;this.mapImp&&(n?n.className||(n.className="custom-popup"):n={className:"custom-popup",positionAtLastClick:!0},this.mapImp.showPopup(e,t,n))},showMarkerPopup:function(e,t,r){this.mapImp&&this.mapImp.showMarkerPopup(e,t,r)},closeMinimap:function(){let e=this.$refs.flatmapContainer.querySelector(".maplibregl-ctrl-minimap");this.minimapSmall?(e.classList.add("enlarge"),e.classList.remove("shrink")):(e.classList.add("shrink"),e.classList.remove("enlarge")),this.minimapSmall=!this.minimapSmall},addResizeButtonToMinimap:function(){let e=this.$refs.flatmapContainer.querySelector(".maplibregl-ctrl-minimap");e&&(this.$refs.minimapResize&&this.$refs.minimapResize.$el.parentNode&&this.$refs.minimapResize.$el.parentNode.removeChild(this.$refs.minimapResize.$el),e.appendChild(this.$refs.minimapResize.$el),this.minimapResizeShow=!0)},setHelpMode:function(e){const t=this.hoverVisibilities.length,r=t-1,n=this.hoverVisibilities[this.helpModeActiveIndex];if(n){const i=n==null?void 0:n.refs,o=n==null?void 0:n.ref,a=this.$refs[i||o];if(a){const{parentElement:l,nextElementSibling:c}=a.$el,u=d=>d&&(d.classList.contains("pathway-container")||d.classList.contains("pathway-location"));(u(l)||u(c))&&(this.requiresDrawer?this.drawerOpen=!0:this.helpModeActiveIndex+=1)}else this.helpModeActiveIndex+=1}e||(this.helpModeActiveIndex=this.helpModeInitialIndex),this.viewingMode!=="Annotation"&&this.helpModeActiveIndex>9&&(this.helpModeActiveIndex=r),e&&this.helpModeActiveIndex>=r&&this.$emit("help-mode-last-item",!0),e&&!this.helpModeDialog?(this.inHelp=!0,this.hoverVisibilities.forEach(i=>{i.value=!0})):e&&this.helpModeDialog&&t>this.helpModeActiveIndex?this.helpModeActiveIndex>-1?(this.closeFlatmapHelpPopup(),setTimeout(()=>{this.inHelp=!1,this.hoverVisibilities.forEach(i=>{i.value=!1}),this.showTooltip(this.helpModeActiveIndex,200)},300)):this.helpModeActiveIndex===-1&&this.openFlatmapHelpPopup():(this.inHelp=!1,this.hoverVisibilities.forEach(i=>{i.value=!1}),this.closeFlatmapHelpPopup())},showTooltip:function(e,t=500){this.inHelp||(clearTimeout(this.tooltipWait[e]),this.tooltipWait[e]=setTimeout(()=>{this.hoverVisibilities[e].value=!0,this.$emit("shown-tooltip")},t))},hideTooltip:function(e,t=500){this.inHelp||(clearTimeout(this.tooltipWait[e]),this.tooltipWait[e]=setTimeout(()=>{this.hoverVisibilities[e].value=!1},t))},displayTooltip:function(e,t=void 0){let r,n={className:"flatmapvuer-popover"};if(t)r=e,n.annotationFeatureGeometry=t;else{const i=Array.isArray(e)?e[0]:e;r=this.mapImp.modelFeatureIds(i)[0],this.activeDrawTool||(n.positionAtLastClick=!0)}this.connectivityInfoSidebar&&this.tooltipEntry.length&&this.viewingMode!=="Annotation"&&this.checkConnectivityTooltipEntry(this.tooltipEntry)&&this.$emit("connectivity-info-open",this.tooltipEntry),this.annotationSidebar&&this.viewingMode==="Annotation"&&this.$emit("annotation-open",{annotationEntry:this.annotationEntry,commitCallback:this.commitAnnotationEvent}),!this.disableUI&&(this.viewingMode==="Annotation"&&!this.annotationSidebar||this.viewingMode==="Exploration"&&!this.connectivityInfoSidebar)&&(this.tooltipDisplay=!0,this.$nextTick(()=>{this.mapImp.showPopup(r,this.$refs.tooltip.$el,n),this.popUpCssHacks()}))},moveMap:function(e,t={}){if(this.mapImp){const{offsetX:r=0,offsetY:n=0,zoom:i=4}=t,o=this.mapImp.map,a=this.mapImp.bounds.toArray();this.mapImp.zoomToFeatures(e,{noZoomIn:!0}),this.showPathwaysDrawer(!1),a!=null&&a.length&&setTimeout(()=>{o.fitBounds(a,{offset:[r,n],zoom:i,animate:!0})})}},openFlatmapHelpPopup:function(){if(this.mapImp){let e=this.mapImp.modelFeatureIds("UBERON:0000948");e&&e.length>0&&(this.mapImp.showPopup(e[0],"Click for more information",{anchor:"top",className:"flatmap-popup-popper"}),this.$emit("shown-map-tooltip"))}},closeFlatmapHelpPopup:function(){this.$el.querySelectorAll(".maplibregl-popup-close-button").forEach(e=>{e.click()})},getLabels:function(){let e=[];if(this.mapImp){let t=this.mapImp.annotations;for(let r of t.values())r.label&&e.push(r.label);return Array.from(new Set(e))}},getVisibilityState:function(e){if(["alertSelection","pathwaysSelection","taxonSelection"].forEach(t=>{let r=this.$refs[t];r&&(e[t]=r.getState())}),this.$refs.treeControls){const t=this.$refs.treeControls.$refs.regionTree.getCheckedKeys();e.systemsSelection=t.filter(r=>!r.includes("."))}},setVisibilityState:function(e){["alertSelection","pathwaysSelection","taxonSelection"].forEach(t=>{const r=e[t];if(r){const n=this.$refs[t];n&&n.setState(r)}}),"systemsSelection"in e&&this.$refs.treeControls&&(this.$refs.treeControls.$refs.regionTree.setCheckedKeys(e.systemsSelection),this.systems[0].children.forEach(t=>{this.mapImp.enableSystem(t.key,e.systemsSelection.includes(t.key))}))},getState:function(){if(this.mapImp){let e={entry:this.entry,viewport:this.mapImp.getState()};const t=this.mapImp.getIdentifier();return this.biologicalSex?e.biologicalSex=this.biologicalSex:t&&t.biologicalSex&&(e.biologicalSex=t.biologicalSex),t&&t.uuid&&(e.uuid=t.uuid),e.viewingMode=this.viewingMode,e.searchTerm=this.searchTerm,e.flightPath3D=this.flightPath3DRadio,e.colour=this.colourRadio,e.outlines=this.outlinesRadio,e.background=this.currentBackground,this.getVisibilityState(e),e}},setState:function(e){e&&(this.mapImp&&e.entry&&this.entry==e.entry&&(!e.biologicalSex||e.biologicalSex===this.biologicalSex)?this.restoreMapState(e):this.createFlatmap(e),this.setStateRequired=!1)},restoreMapState:function(e){if(e){if(e.viewport&&this.mapImp.setState(e.viewport),e.viewingMode&&this.changeViewingMode(e.viewingMode),"flightPath3D"in e&&this.setFlightPath3D(e.flightPath3D),"colour"in e&&this.setColour(e.colour),"outlines"in e&&this.setOutlines(e.outlines),e.background&&this.backgroundChangeCallback(e.background),e.searchTerm){const t=e.searchTerm;e.viewingMode==="Neuron Connection"?this.retrieveConnectedPaths([t]).then(r=>{this.zoomToFeatures(r)}):this.searchAndShowResult(t,!0)}this.setVisibilityState(e)}},setFlightPathInfo:function(e){(e===1.6||e>1.6)&&(this.displayFlightPathOption=!0,this.setFlightPath3D(!1))},createFlatmap:function(e){if(!this.mapImp&&!this.loading){this.loading=!0;let t=!1;this.displayMinimap&&(t={position:"top-right"});let r={taxon:this.entry};this.uuid&&(r.uuid=this.uuid),e?(e.uuid?r={uuid:e.uuid}:e.entry&&(r.taxon=e.entry),e.biologicalSex?r.biologicalSex=e.biologicalSex:r.taxon==="NCBITaxon:9606"&&(r.biologicalSex="PATO:0000384")):this.biologicalSex&&(r.biologicalSex=this.biologicalSex),this.mapManagerRef.loadMap(r,this.eventCallback(),{minZoom:this.minZoom,tooltips:this.tooltips,minimap:t,container:this.$refs.display}).then(n=>{this.mapImp=n,this.serverURL=this.mapImp.makeServerUrl("").slice(0,-1);let i=this.mapImp.details.version;this.setFlightPathInfo(i);const o=this._stateToBeSet?this._stateToBeSet:e;this.onFlatmapReady(o),this.$nextTick(()=>this.restoreMapState(o))})}else e&&(this._stateToBeSet={...e},this.mapImp&&!this.loading&&this.restoreMapState(this._stateToBeSet))},computePathControlsMaximumHeight(){const e=this.$refs.display;if(e){const t=getComputedStyle(e),r=parseInt(t.paddingTop)+parseInt(t.paddingBottom),n=e.clientHeight-r;this.pathwaysMaxHeight=n-170}},mapResize:function(){try{this.computePathControlsMaximumHeight(),this.mapImp&&(this.mapImp.resize(),this.showMinimap(this.displayMinimap))}catch{console.error("Map resize error")}},onFlatmapReady:function(e){var t;this.sensor=s.markRaw(new nnr(this.$refs.display,this.mapResize)),((t=this.mapImp.options)==null?void 0:t.style)==="functional"&&(this.isFC=!0),this.mapImp.setBackgroundOpacity(1),this.backgroundChangeCallback(this.currentBackground),this.pathways=this.mapImp.pathTypes(),this.processSystems(this.mapImp.getSystems()),this.processTaxon(this.mapImp.taxonIdentifiers,e?e.taxonSelection:void 0),this.containsAlert="alert"in this.mapImp.featureFilterRanges(),this.addResizeButtonToMinimap(),this.loading=!1,this.computePathControlsMaximumHeight(),this.mapResize(),this.setInitMapState(),this.$emit("ready",this)},showMinimap:function(e){this.mapImp&&this.mapImp.showMinimap(e)},showPathwaysDrawer:function(e){this.drawerOpen=e},searchAndShowResult:function(e,t){var r;if(this.mapImp){if(e===void 0||e==="")return this.mapImp.clearSearchResults(),this.viewingMode==="Exploration"?this.$emit("connectivity-info-close"):this.viewingMode==="Annotation"&&this.manualAbortedOnClose(),this.searchTerm="",!0;{const n=this.mapImp.search(e);if((r=n==null?void 0:n.results)!=null&&r.length){if(this.mapImp.showSearchResults(n),t){let i;for(let o=0;o<n.results.length;o++){i=n.results[o].featureId;const a=this.mapImp.annotation(i);if(i&&a!=null&&a.label)break}if(i){const o=this.mapImp.featureProperties(i),a={resource:[o.source],feature:{...o,models:o.models||o.source},label:o.label,provenanceTaxonomy:o.taxons};this.viewingMode==="Exploration"||this.viewingMode==="Annotation"?this.checkAndCreatePopups([a]):this.viewingMode==="Neuron Connection"&&this.retrieveConnectedPaths(a.resource).then(l=>{this.zoomToFeatures(l)}),this.mapImp.showPopup(i,_Le(o.label),{className:"custom-popup",positionAtLastClick:!1,preserveSelection:!0})}}return this.searchTerm=e,!0}else this.mapImp.clearSearchResults()}}return!1},searchSuggestions:function(e){return this.mapImp?this.mapImp.search(e):[]},onActionClick:function(e){Yse.emit("onActionClick",e)}},props:{entry:{type:String,required:!0},uuid:String,biologicalSex:{type:String,default:""},minZoom:{type:Number,default:1},tooltips:{type:Boolean,default:!0},helpMode:{type:Boolean,default:!1},helpModeActiveItem:{type:Number,default:0},helpModeDialog:{type:Boolean,default:!1},helpModeLastItem:{type:Boolean,default:!1},helpModeInitialIndex:{type:Number,default:0},renderAtMounted:{type:Boolean,default:!0},displayMinimap:{type:Boolean,default:!1},displayWarning:{type:Boolean,default:!1},enableOpenMapUI:{type:Boolean,default:!1},openMapOptions:{type:Array,default:function(){return[{display:"Open AC Map",key:"AC"},{display:"Open FC Map",key:"FC"},{display:"Open 3D Human Map",key:"3D"}]}},showStarInLegend:{type:Boolean,default:!1},isLegacy:{type:Boolean,default:!1},displayLatestChanges:{type:Boolean,default:!1},state:{type:Object,default:void 0},mapManager:{type:Object,default:void 0},flatmapAPI:{type:String,default:"https://mapcore-demo.org/current/flatmap/v3/"},sparcAPI:{type:String,default:"https://api.sparc.science/"},disableUI:{type:Boolean,default:!1},connectivityInfoSidebar:{type:Boolean,default:!1},annotationSidebar:{type:Boolean,default:!1}},provide(){return{flatmapAPI:this.flatmapAPI,sparcAPI:this.sparcAPI,userApiKey:this.userToken}},data:function(){return{sensor:null,mapManagerRef:void 0,flatmapQueries:void 0,annotationEntry:[],tooltipDisplay:!1,serverURL:void 0,layers:[],pathways:[],initMapState:s.markRaw({}),sckanDisplay:[{label:"Display Path with SCKAN",key:"VALID"}],systems:[],taxonConnectivity:[],pathwaysMaxHeight:1e3,tooltipWait:s.markRaw([]),hoverVisibilities:[{value:!1,ref:"markerPopover"},{value:!1,ref:"zoomInPopover"},{value:!1,ref:"zoomOutPopover"},{value:!1,ref:"zoomFitPopover"},{value:!1,ref:"openMapPopover"},{value:!1,ref:"settingsPopover"},{value:!1,ref:"checkBoxPopover"},{value:!1,ref:"warningPopover"},{value:!1,ref:"whatsNewPopover"},{value:!1,ref:"featuredMarkerPopover"},{value:!1,refs:"toolbarPopover",ref:"editPopover"},{value:!1,refs:"toolbarPopover",ref:"deletePopover"},{value:!1,refs:"toolbarPopover",ref:"pointPopover"},{value:!1,refs:"toolbarPopover",ref:"lineStringPopover"},{value:!1,refs:"toolbarPopover",ref:"polygonPopover"},{value:!1,refs:"toolbarPopover",ref:"connectionPopover"}],helpModeActiveIndex:this.helpModeInitialIndex,yellowstar:tnr,isFC:!1,inHelp:!1,currentBackground:"white",availableBackground:["white","lightskyblue","black"],loading:!1,flatmapMarker:qrr,tooltipEntry:[],connectivityDataSource:"",connectivityTooltipVisible:!1,drawerOpen:!1,flightPath3DRadio:!1,displayFlightPathOption:!1,colourRadio:!0,outlinesRadio:!0,minimapResizeShow:!1,minimapSmall:!1,currentActive:"",selectedDrawnFeature:void 0,currentHover:"",viewingMode:"Exploration",viewingModes:{Exploration:"Find relevant research and view detail of neural pathways by selecting a pathway to view its connections and data sources","Neuron Connection":"Discover Neuron connections by selecting a neuron and viewing its associated network connections",Annotation:["View feature annotations","Add, comment on and view feature annotations"]},annotationFrom:"Anyone",annotatedSource:["Anyone","Me","Others"],openMapRef:void 0,backgroundIconRef:void 0,toolbarOptions:["Edit","Delete","Point","LineString","Polygon","Connection"],annotator:void 0,userInformation:void 0,activeDrawMode:void 0,activeDrawTool:void 0,featureAnnotationSubmitted:!1,drawnCreatedEvent:{},previousEditEvent:{},previousDeletedEvent:{},connectionEntry:{},existDrawnFeatures:[],doubleClickedFeature:!1,containsAlert:!1,alertOptions:[{label:"Display Path With Alerts",key:"alert",enabled:!0},{label:"Display Path Without Alerts",key:"withoutAlert",enabled:!0}],mapFilters:s.markRaw({alert:{with:!0,without:!0}}),searchTerm:"",taxonLeaveDelay:void 0}},computed:{...HAr(BAr,["userToken"]),isValidDrawnCreated:function(){return Object.keys(this.drawnCreatedEvent).length>0},requiresDrawer:function(){var e,t,r;if(this.loading)return this.drawerOpen=!1,!1;if(this.isFC){if(((e=this.systems)==null?void 0:e.length)>0||this.containsAlert&&this.alertOptions||((t=this.pathways)==null?void 0:t.length)>0||((r=this.taxonConnectivity)==null?void 0:r.length)>0)return this.drawerOpen=!0,!0}else return this.drawerOpen=!0,!0;return this.drawerOpen=!1,!0},modeDescription:function(){let e=this.viewingModes[this.viewingMode];return this.viewingMode==="Annotation"?this.userInformation?e[1]:e[0]:e}},watch:{entry:function(){this.state||this.createFlatmap()},helpMode:function(e,t){e!==t&&this.setHelpMode(e)},helpModeActiveItem:function(){this.helpMode&&(this.helpModeActiveIndex+=1,this.setHelpMode(this.helpMode))},state:{handler:function(e,t){e!==t&&(this.mapManagerRef?this.setState(e):this.setStateRequired=!0)},immediate:!0,deep:!0},viewingMode:function(e){e==="Annotation"?(this.loading=!0,this.annotator.authenticate(this.userToken).then(t=>{t.name&&t.email&&t.canUpdate&&(this.showAnnotator(!0),this.userInformation=t,this.setFeatureAnnotated(),this.addAnnotationFeature()),this.loading=!1})):this.showAnnotator(!1)},disableUI:function(e){e&&this.closeTooltip()},activeDrawTool:function(e){let t=[],r={x:null,y:null};const n=this.$el.querySelector(".maplibregl-canvas"),i=()=>{n.removeEventListener("keydown",o),n.removeEventListener("click",a)},o=l=>{if(!["Escape","Enter"].includes(l.key))return;const c=e==="Point"&&t.length===1||e==="LineString"&&t.length>=2||e==="Polygon"&&t.length>=3;(l.key==="Escape"||l.key==="Enter"&&!c)&&(this.activeDrawTool=void 0),i()},a=l=>{const c=n.getBoundingClientRect(),u=l.clientX-c.left,d=l.clientY-c.top;if(Math.sqrt((u-r.x)**2+(d-r.y)**2)<8){this.isValidDrawnCreated||(this.activeDrawTool=void 0),i();return}r={x:u,y:d},t.push(r)};e&&(i(),n.addEventListener("keydown",o),n.addEventListener("click",a))}},created:function(){this.mapManager?this.mapManagerRef=this.mapManager:(this.mapManagerRef=s.markRaw(new jse(this.flatmapAPI,{container:void 0})),this.$emit("mapmanager-loaded",this.mapManagerRef))},mounted:function(){this.openMapRef=s.shallowRef(this.$refs.openMapRef),this.backgroundIconRef=s.shallowRef(this.$refs.backgroundIconRef),this.tooltipWait.length=this.hoverVisibilities.length,this.flatmapQueries=s.markRaw(new Zrr),this.flatmapQueries.initialise(this.flatmapAPI),this.state?this.setStateRequired&&this.setState(this.state):this.renderAtMounted&&this.createFlatmap(),xLe()}},jAr={class:"flatmap-container",ref:"flatmapContainer","element-loading-text":"Loading...","element-loading-background":"rgba(0, 0, 0, 0.3)"},UAr={style:{height:"100%",width:"100%",position:"relative","overflow-y":"none"}},GAr={style:{height:"100%",width:"100%"},ref:"display"},WAr={class:"beta-popovers"},qAr={key:2,class:"warning-text"},ZAr={class:"bottom-right-control"},XAr=["innerHTML"],KAr=["innerHTML"],YAr={style:{"margin-bottom":"2px"}},JAr={key:0,class:"viewing-mode-title"},eOr=["onClick"],tOr=["onClick"];function rOr(e,t,r,n,i,o){const a=s.resolveComponent("map-svg-sprite-color"),l=O_e,c=Uh,u=nH,d=lee,h=s.resolveComponent("DrawToolbar"),p=s.resolveComponent("map-svg-icon"),f=QLe,m=s.resolveComponent("tree-controls"),g=bLe,b=M_e,T=Wwe,Q=lE,L=cE,S=Fee,C=rH,E=lLe,M=cLe,P=s.resolveComponent("Tooltip"),O=yLe,N=jee;return s.withDirectives((s.openBlock(),s.createElementBlock("div",jAr,[s.createVNode(a),s.createElementVNode("div",UAr,[s.createElementVNode("div",GAr,null,512),s.withDirectives(s.createElementVNode("div",WAr,[s.createElementVNode("div",null,[s.createVNode(u,{placement:"right","popper-class":"warning-popper flatmap-popper",teleported:!1,visible:e.hoverVisibilities[7].value,ref:"warningPopover"},{reference:s.withCtx(()=>[s.createElementVNode("div",{class:"warning-icon",onMouseover:t[7]||(t[7]=H=>o.showTooltip(7)),onMouseout:t[8]||(t[8]=H=>o.hideTooltip(7))},[r.displayWarning||r.isLegacy?(s.openBlock(),s.createBlock(c,{key:0},{default:s.withCtx(()=>[s.createVNode(l)]),_:1})):s.createCommentVNode("",!0),r.isLegacy?(s.openBlock(),s.createElementBlock(s.Fragment,{key:1},[t[33]||(t[33]=s.createElementVNode("span",{class:"warning-text"},"Legacy Map",-1)),s.createElementVNode("div",{class:"latest-map-text",onClick:t[6]||(t[6]=(...H)=>o.viewLatestMap&&o.viewLatestMap(...H))}," Click here for the latest map ")],64)):r.displayWarning?(s.openBlock(),s.createElementBlock("span",qAr,"Beta")):s.createCommentVNode("",!0)],32)]),default:s.withCtx(()=>[r.isLegacy?(s.openBlock(),s.createElementBlock("p",{key:0,onMouseover:t[0]||(t[0]=H=>o.showTooltip(7)),onMouseout:t[1]||(t[1]=H=>o.hideTooltip(7))}," This is a legacy map, you may view the latest map instead. ",32)):e.isFC?(s.openBlock(),s.createElementBlock("p",{key:1,onMouseover:t[2]||(t[2]=H=>o.showTooltip(7)),onMouseout:t[3]||(t[3]=H=>o.hideTooltip(7))},t[31]||(t[31]=[s.createTextVNode(" This map displays the connectivity of individual neurons. Specifically, those which align with (parts of) the neuron populations from the "),s.createElementVNode("a",{href:"https://sparc.science/resources/1ZUKXU2YmLcn2reCyXjlew",target:"_blank"}," ApiNATOMY ",-1),s.createTextVNode(" models available in "),s.createElementVNode("a",{href:"https://sparc.science/resources/6eg3VpJbwQR4B84CjrvmyD",target:"_blank"}," SCKAN ",-1),s.createTextVNode(". ")]),32)):(s.openBlock(),s.createElementBlock("p",{key:2,onMouseover:t[4]||(t[4]=H=>o.showTooltip(7)),onMouseout:t[5]||(t[5]=H=>o.hideTooltip(7))},t[32]||(t[32]=[s.createTextVNode(" This map displays the connectivity of neuron populations. Specifically, those from the primarily rat-based "),s.createElementVNode("a",{href:"https://sparc.science/resources/1ZUKXU2YmLcn2reCyXjlew",target:"_blank"}," ApiNATOMY ",-1),s.createTextVNode(" models available in "),s.createElementVNode("a",{href:"https://sparc.science/resources/6eg3VpJbwQR4B84CjrvmyD",target:"_blank"}," SCKAN ",-1),s.createTextVNode(". New connectivity and species specificity will be added as the SPARC program progresses. ")]),32))]),_:1},8,["visible"])]),r.displayLatestChanges?(s.openBlock(),s.createBlock(u,{key:0,placement:"right",teleported:!1,trigger:"manual","popper-class":"warning-popper flatmap-popper",visible:e.hoverVisibilities[8].value,ref:"whatsNewPopover"},{reference:s.withCtx(()=>[r.displayLatestChanges?(s.openBlock(),s.createElementBlock("div",{key:0,class:"latest-changesicon",onMouseover:t[9]||(t[9]=H=>o.showTooltip(8)),onMouseout:t[10]||(t[10]=H=>o.hideTooltip(8))},[s.createVNode(c,null,{default:s.withCtx(()=>[s.createVNode(l)]),_:1}),t[34]||(t[34]=s.createElementVNode("span",{class:"warning-text"},"What's new?",-1))],32)):s.createCommentVNode("",!0)]),default:s.withCtx(()=>t[35]||(t[35]=[s.createElementVNode("b",null,"Connectivity References",-1),s.createElementVNode("p",null," Connectivity references have been improved and available in various formats. ",-1),s.createElementVNode("b",null,"Improved state storing",-1),s.createElementVNode("p",null," Current selection and visibility filters are now stored when creating a permalink. ",-1)])),_:1},8,["visible"])):s.createCommentVNode("",!0)],512),[[s.vShow,!r.disableUI]]),s.withDirectives(s.createVNode(c,{class:s.normalizeClass(["minimap-resize",{enlarge:e.minimapSmall,shrink:!e.minimapSmall}]),ref:"minimapResize",onClick:o.closeMinimap},{default:s.withCtx(()=>[s.createVNode(d)]),_:1},8,["class","onClick"]),[[s.vShow,e.minimapResizeShow]]),e.viewingMode==="Annotation"&&e.userInformation&&!r.disableUI?(s.openBlock(),s.createBlock(h,{key:0,mapCanvas:{containerHTML:this.$el,class:".maplibregl-canvas"},toolbarOptions:e.toolbarOptions,activeDrawTool:e.activeDrawTool,activeDrawMode:e.activeDrawMode,newlyDrawnEntry:e.drawnCreatedEvent,connectionEntry:e.connectionEntry,hoverVisibilities:e.hoverVisibilities,onClickToolbar:o.toolbarEvent,onFeatureTooltip:o.connectedFeatureTooltip,onConfirmDrawn:o.confirmDrawnFeature,onCancelDrawn:o.cancelDrawnFeature,onShowTooltip:o.showTooltip,onHideTooltip:o.hideTooltip,ref:"toolbarPopover"},null,8,["mapCanvas","toolbarOptions","activeDrawTool","activeDrawMode","newlyDrawnEntry","connectionEntry","hoverVisibilities","onClickToolbar","onFeatureTooltip","onConfirmDrawn","onCancelDrawn","onShowTooltip","onHideTooltip"])):s.createCommentVNode("",!0),s.withDirectives(s.createElementVNode("div",ZAr,[s.createVNode(u,{content:"Zoom in",placement:"left",teleported:!1,trigger:"manual",width:"70","popper-class":"flatmap-popper",visible:e.hoverVisibilities[1].value,ref:"zoomInPopover"},{reference:s.withCtx(()=>[s.createElementVNode("div",{class:"icon-button-container",onClick:t[11]||(t[11]=H=>o.zoomIn()),onMouseover:t[12]||(t[12]=H=>o.showTooltip(1)),onMouseout:t[13]||(t[13]=H=>o.hideTooltip(1))},[s.createVNode(p,{class:"icon-button zoomIn",icon:"zoomIn"})],32)]),_:1},8,["visible"]),s.createVNode(u,{content:"Zoom out",placement:"top-end",teleported:!1,trigger:"manual",width:"70","popper-class":"flatmap-popper",visible:e.hoverVisibilities[2].value,ref:"zoomOutPopover"},{reference:s.withCtx(()=>[s.createElementVNode("div",{class:"icon-button-container",onClick:t[14]||(t[14]=H=>o.zoomOut()),onMouseover:t[15]||(t[15]=H=>o.showTooltip(2)),onMouseout:t[16]||(t[16]=H=>o.hideTooltip(2))},[s.createVNode(p,{class:"icon-button zoomOut",icon:"zoomOut"})],32)]),_:1},8,["visible"]),s.createVNode(u,{content:"Reset",placement:"top",teleported:!1,trigger:"manual",width:"70","popper-class":"flatmap-popper",visible:e.hoverVisibilities[3].value,ref:"zoomFitPopover"},{reference:s.withCtx(()=>[s.createElementVNode("div",{class:"icon-button-container",onClick:t[17]||(t[17]=H=>o.resetView()),onMouseover:t[18]||(t[18]=H=>o.showTooltip(3)),onMouseout:t[19]||(t[19]=H=>o.hideTooltip(3))},[s.createVNode(p,{class:"icon-button fitWindow",icon:"fitWindow"})],32)]),default:s.withCtx(()=>[t[36]||(t[36]=s.createElementVNode("div",null,[s.createTextVNode(" Fit to "),s.createElementVNode("br"),s.createTextVNode(" window ")],-1))]),_:1},8,["visible"])],512),[[s.vShow,!r.disableUI]]),s.createVNode(u,{content:"Change pathway visibility",placement:"right",teleported:!1,trigger:"manual",offset:-18,"popper-class":"flatmap-popper",visible:e.hoverVisibilities[6].value,ref:"checkBoxPopover"},{reference:s.withCtx(()=>[s.withDirectives(s.createElementVNode("div",{class:s.normalizeClass(["pathway-location",{open:e.drawerOpen,close:!e.drawerOpen}])},[s.withDirectives((s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["pathway-container",{open:e.drawerOpen,close:!e.drawerOpen}]),style:s.normalizeStyle({"max-height":e.pathwaysMaxHeight+"px"})},[e.isFC?s.createCommentVNode("",!0):(s.openBlock(),s.createBlock(f,{key:0,class:"svg-legends-container"})),r.showStarInLegend?(s.openBlock(),s.createBlock(u,{key:1,content:"Location of the featured dataset",placement:"right",teleported:!0,trigger:"manual",width:"max-content",offset:-10,"popper-class":"flatmap-popper flatmap-teleport-popper",visible:e.hoverVisibilities[9].value,ref:"featuredMarkerPopover"},{reference:s.withCtx(()=>[s.withDirectives(s.createElementVNode("div",{class:"yellow-star-legend",innerHTML:e.yellowstar,onMouseover:t[20]||(t[20]=H=>o.showTooltip(9)),onMouseout:t[21]||(t[21]=H=>o.hideTooltip(9))},null,40,XAr),[[O,void 0,"featuredMarkerPopover"]])]),_:1},8,["visible"])):s.createCommentVNode("",!0),s.createVNode(u,{content:"Find these markers for data. The number inside the markers is the number of datasets available for each marker.",placement:"right",teleported:!1,width:"200",trigger:"manual","popper-class":"flatmap-popper flatmap-marker-popper",visible:e.hoverVisibilities[0].value,ref:"markerPopover"},{reference:s.withCtx(()=>[s.withDirectives(s.createElementVNode("div",{class:"flatmap-marker-help",innerHTML:e.flatmapMarker},null,8,KAr),[[s.vShow,e.hoverVisibilities[0].value],[O,void 0,"markerPopover"]])]),_:1},8,["visible"]),e.isFC&&e.systems&&e.systems.length>0?(s.openBlock(),s.createBlock(m,{key:2,class:"treeControls",mapType:"flatmap",title:"Systems",treeData:e.systems,active:e.currentActive,hover:e.currentHover,onCheckChanged:o.systemSelected,onCheckAll:o.checkAllSystems,onChangeActive:o.ftuSelected,ref:"treeControls"},null,8,["treeData","active","hover","onCheckChanged","onCheckAll","onChangeActive"])):s.createCommentVNode("",!0),e.containsAlert&&e.alertOptions?(s.openBlock(),s.createBlock(g,{title:"Alert",labelKey:"label",identifierKey:"key",selections:e.alertOptions,onChanged:o.alertSelected,onCheckboxMouseEnter:o.alertMouseEnterEmitted,onSelectionsDataChanged:o.onSelectionsDataChanged,onCheckAll:o.checkAllAlerts,ref:"alertSelection",key:"alertSelection"},null,8,["selections","onChanged","onCheckboxMouseEnter","onSelectionsDataChanged","onCheckAll"])):s.createCommentVNode("",!0),e.pathways&&e.pathways.length>0?(s.openBlock(),s.createBlock(g,{title:"Pathways",labelKey:"label",identifierKey:"type",colourStyle:"line",selections:e.pathways,onChanged:o.pathwaysSelected,onSelectionsDataChanged:o.onSelectionsDataChanged,onCheckAll:o.checkAllPathways,ref:"pathwaysSelection",key:"pathwaysSelection"},null,8,["selections","onChanged","onSelectionsDataChanged","onCheckAll"])):s.createCommentVNode("",!0),e.taxonConnectivity&&e.taxonConnectivity.length>0?(s.openBlock(),s.createBlock(g,{title:"Studied in",labelKey:"label",identifierKey:"taxon",helpMessage:"Evidence exists that this set of neuron populations have been studied in the given species.",selections:e.taxonConnectivity,onChanged:o.taxonsSelected,onCheckboxMouseEnter:o.taxonMouseEnterEmitted,onSelectionsDataChanged:o.onSelectionsDataChanged,onCheckAll:o.checkAllTaxons,ref:"taxonSelection",key:"taxonSelection"},null,8,["selections","onChanged","onCheckboxMouseEnter","onSelectionsDataChanged","onCheckAll"])):s.createCommentVNode("",!0)],6)),[[O,void 0,"checkBoxPopover"]]),s.createElementVNode("div",{onClick:t[22]||(t[22]=(...H)=>o.toggleDrawer&&o.toggleDrawer(...H)),class:s.normalizeClass(["drawer-button",{open:e.drawerOpen,close:!e.drawerOpen}])},[s.createVNode(c,null,{default:s.withCtx(()=>[s.createVNode(b)]),_:1})],2)],2),[[s.vShow,!r.disableUI&&o.requiresDrawer]])]),_:1},8,["visible"]),e.openMapRef?(s.openBlock(),s.createBlock(u,{key:1,ref:"open-map-popover","virtual-ref":e.openMapRef,placement:"top-start",width:"136",teleported:!1,trigger:"click","popper-class":"open-map-popper non-selectable","virtual-triggering":""},{default:s.withCtx(()=>[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(r.openMapOptions,H=>(s.openBlock(),s.createBlock(Q,{key:H.key},{default:s.withCtx(()=>[s.createVNode(T,{type:"primary",plain:"",onClick:B=>e.$emit("open-map",H.key)},{default:s.withCtx(()=>[s.createTextVNode(s.toDisplayString(H.display),1)]),_:2},1032,["onClick"])]),_:2},1024))),128))]),_:1},8,["virtual-ref"])):s.createCommentVNode("",!0),s.createVNode(u,{ref:"backgroundPopover","virtual-ref":e.backgroundIconRef,placement:"top-start",width:"320",teleported:!1,trigger:"click","popper-class":"background-popper h-auto","virtual-triggering":""},{default:s.withCtx(()=>[s.createElementVNode("div",null,[s.createVNode(Q,{class:"backgroundText"},{default:s.withCtx(()=>t[37]||(t[37]=[s.createTextVNode("Viewing Mode")])),_:1}),s.createVNode(Q,{class:"backgroundControl"},{default:s.withCtx(()=>[s.createElementVNode("div",YAr,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.viewingModes,(H,B,U)=>(s.openBlock(),s.createElementBlock(s.Fragment,{key:B},[B===e.viewingMode?(s.openBlock(),s.createElementBlock("span",JAr,[s.createElementVNode("b",null,s.toDisplayString(B),1)])):(s.openBlock(),s.createElementBlock("span",{key:1,class:"viewing-mode-unselected",onClick:G=>o.changeViewingMode(B)},s.toDisplayString(B),9,eOr))],64))),128))]),s.createVNode(Q,{class:"viewing-mode-description"},{default:s.withCtx(()=>[s.createTextVNode(s.toDisplayString(o.modeDescription),1)]),_:1})]),_:1}),e.viewingMode==="Annotation"&&e.userInformation?(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[s.createVNode(Q,{class:"backgroundText"},{default:s.withCtx(()=>t[38]||(t[38]=[s.createTextVNode("Annotations From")])),_:1}),s.createVNode(Q,{class:"backgroundControl"},{default:s.withCtx(()=>[s.createVNode(C,{teleported:!1,modelValue:e.annotationFrom,"onUpdate:modelValue":t[23]||(t[23]=H=>e.annotationFrom=H),placeholder:"Select",class:"select-box","popper-class":"flatmap_dropdown",onChange:o.setAnnotationFrom},{default:s.withCtx(()=>[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.annotatedSource,H=>(s.openBlock(),s.createBlock(S,{key:H,label:H,value:H},{default:s.withCtx(()=>[s.createVNode(Q,null,{default:s.withCtx(()=>[s.createVNode(L,{span:12},{default:s.withCtx(()=>[s.createTextVNode(s.toDisplayString(H),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","onChange"])]),_:1})],64)):s.createCommentVNode("",!0),e.displayFlightPathOption?(s.openBlock(),s.createBlock(Q,{key:1,class:"backgroundSpacer"})):s.createCommentVNode("",!0),e.displayFlightPathOption?(s.openBlock(),s.createBlock(Q,{key:2,class:"backgroundText"},{default:s.withCtx(()=>t[39]||(t[39]=[s.createTextVNode("Flight path display")])),_:1})):s.createCommentVNode("",!0),e.displayFlightPathOption?(s.openBlock(),s.createBlock(Q,{key:3,class:"backgroundControl"},{default:s.withCtx(()=>[s.createVNode(M,{modelValue:e.flightPath3DRadio,"onUpdate:modelValue":t[24]||(t[24]=H=>e.flightPath3DRadio=H),class:"flatmap-radio",onChange:o.setFlightPath3D},{default:s.withCtx(()=>[s.createVNode(E,{value:!1},{default:s.withCtx(()=>t[40]||(t[40]=[s.createTextVNode("2D")])),_:1}),s.createVNode(E,{value:!0},{default:s.withCtx(()=>t[41]||(t[41]=[s.createTextVNode("3D")])),_:1})]),_:1},8,["modelValue","onChange"])]),_:1})):s.createCommentVNode("",!0),s.createVNode(Q,{class:"backgroundSpacer"}),s.createVNode(Q,{class:"backgroundText"},{default:s.withCtx(()=>t[42]||(t[42]=[s.createTextVNode("Organs display")])),_:1}),s.createVNode(Q,{class:"backgroundControl"},{default:s.withCtx(()=>[s.createVNode(M,{modelValue:e.colourRadio,"onUpdate:modelValue":t[25]||(t[25]=H=>e.colourRadio=H),class:"flatmap-radio",onChange:o.setColour},{default:s.withCtx(()=>[s.createVNode(E,{value:!0},{default:s.withCtx(()=>t[43]||(t[43]=[s.createTextVNode("Colour")])),_:1}),s.createVNode(E,{value:!1},{default:s.withCtx(()=>t[44]||(t[44]=[s.createTextVNode("Greyscale")])),_:1})]),_:1},8,["modelValue","onChange"])]),_:1}),s.createVNode(Q,{class:"backgroundSpacer"}),s.createVNode(Q,{class:"backgroundText"},{default:s.withCtx(()=>t[45]||(t[45]=[s.createTextVNode("Outlines display")])),_:1}),s.createVNode(Q,{class:"backgroundControl"},{default:s.withCtx(()=>[s.createVNode(M,{modelValue:e.outlinesRadio,"onUpdate:modelValue":t[26]||(t[26]=H=>e.outlinesRadio=H),class:"flatmap-radio",onChange:o.setOutlines},{default:s.withCtx(()=>[s.createVNode(E,{value:!0},{default:s.withCtx(()=>t[46]||(t[46]=[s.createTextVNode("Show")])),_:1}),s.createVNode(E,{value:!1},{default:s.withCtx(()=>t[47]||(t[47]=[s.createTextVNode("Hide")])),_:1})]),_:1},8,["modelValue","onChange"])]),_:1}),s.createVNode(Q,{class:"backgroundSpacer"}),s.createVNode(Q,{class:"backgroundText"},{default:s.withCtx(()=>t[48]||(t[48]=[s.createTextVNode("Change background")])),_:1}),s.createVNode(Q,{class:"backgroundControl"},{default:s.withCtx(()=>[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.availableBackground,H=>(s.openBlock(),s.createElementBlock("div",{key:H,class:s.normalizeClass(["backgroundChoice",H,H==e.currentBackground?"active":""]),onClick:B=>o.backgroundChangeCallback(H)},null,10,tOr))),128))]),_:1})])]),_:1},8,["virtual-ref"]),s.withDirectives(s.createElementVNode("div",{class:s.normalizeClass(["settings-group",{open:e.drawerOpen,close:!e.drawerOpen}])},[s.createVNode(Q,null,{default:s.withCtx(()=>[s.createVNode(u,{visible:e.hoverVisibilities[4].value,content:"Open new map",placement:"right",teleported:!1,"popper-class":"flatmap-popper",ref:"openMapPopover"},{reference:s.withCtx(()=>[r.enableOpenMapUI&&r.openMapOptions.length>0?(s.openBlock(),s.createElementBlock("div",{key:0,ref:"openMapRef",class:"icon-button-container",onMouseover:t[27]||(t[27]=H=>o.showTooltip(4)),onMouseout:t[28]||(t[28]=H=>o.hideTooltip(4))},[s.createVNode(p,{icon:"openMap",class:"icon-button open-map-button"})],544)):s.createCommentVNode("",!0)]),_:1},8,["visible"])]),_:1}),s.createVNode(Q,null,{default:s.withCtx(()=>[s.createVNode(u,{content:"Change settings",placement:"right",visible:e.hoverVisibilities[5].value,teleported:!1,trigger:"manual","popper-class":"flatmap-popper",ref:"settingsPopover"},{reference:s.withCtx(()=>[s.createElementVNode("div",{ref:"backgroundIconRef",class:"icon-button-container",onMouseover:t[29]||(t[29]=H=>o.showTooltip(5)),onMouseout:t[30]||(t[30]=H=>o.hideTooltip(5))},[s.createVNode(p,{icon:"changeBckgd",class:"icon-button"})],544)]),_:1},8,["visible"])]),_:1})],2),[[s.vShow,!r.disableUI]]),e.tooltipDisplay?(s.openBlock(),s.createBlock(P,{key:2,ref:"tooltip",class:"tooltip",annotationEntry:e.annotationEntry,tooltipEntry:e.tooltipEntry,annotationDisplay:e.viewingMode==="Annotation",onAnnotation:o.commitAnnotationEvent,onOnActionClick:o.onActionClick},null,8,["annotationEntry","tooltipEntry","annotationDisplay","onAnnotation","onOnActionClick"])):s.createCommentVNode("",!0)])])),[[N,e.loading]])}const Jse=aH(zAr,[["render",rOr],["__scopeId","data-v-e499f9fe"]]),WBe={"NCBITaxon:10114":"01fedbf9-d783-509c-a10c-827941ab13da","NCBITaxon:9823":"a336ac04-24db-561f-a25f-1c994fe17410","NCBITaxon:9606":"42ed6323-f645-5fbe-bada-9581819cf689","NCBITaxon:10090":"25285fab-48a0-5620-a6a0-f9a0374837d5","NCBITaxon:9685":"73060497-46a6-52bf-b975-cac511c127cb"},nOr={name:"MultiFlatmapVuer",components:{Col:cE,Row:lE,Option:Fee,Select:rH,Popover:nH,FlatmapVuer:Jse},created:function(){this.loadMapManager()},mounted:function(){this.initialise(),Yse.on("onActionClick",e=>{this.resourceSelected(e)}),Yse.on("open-pubmed-url",e=>{this.$emit("open-pubmed-url",e)})},methods:{initialise:function(){return new Promise(e=>{this.requireInitialisation?(this.requireInitialisation=!1,fetch(this.flatmapAPI).then(t=>t.json()).then(t=>{Object.keys(this.availableSpecies).forEach(n=>{const i=this.availableSpecies[n].uuid;if(i&&t.map(o=>o.uuid).indexOf(i)>0)this.speciesList[n]=this.availableSpecies[n];else for(let o=0;o<t.length;o++)if(this.availableSpecies[n].taxo===t[o].taxon)if(this.availableSpecies[n].biologicalSex){if(t[o].biologicalSex&&t[o].biologicalSex===this.availableSpecies[n].biologicalSex){this.speciesList[n]=this.availableSpecies[n];break}}else{this.speciesList[n]=this.availableSpecies[n];break}});let r=this.initial;if(this.state){const n=this.state.state;(!n||!n.uuid&&!n.entry)&&this.state.species?r=this.state.species:r=void 0}r&&(r&&this.speciesList[r]!==void 0?this.activeSpecies=r:this.activeSpecies=Object.keys(this.speciesList)[0],this.setSpecies(this.activeSpecies,this.state?this.state.state:void 0,5)),this.initialised=!0,e(),this.resolveList.forEach(n=>{n()})})):this.initialised?e():this.resolveList.push(e)})},loadMapManager:function(){this.mapManagerRef||(this.mapManager?this.mapManagerRef=this.mapManager:(this.mapManagerRef=s.markRaw(new jse(this.flatmapAPI,{container:void 0})),this.$emit("mapmanager-loaded",this.mapManagerRef)))},resourceSelected:function(e){this.$emit("resource-selected",e)},FlatmapReady:function(e){this.$emit("ready",e)},getCurrentFlatmap:function(){return this.$refs[this.activeSpecies][0]},panZoomCallback:function(e){this.$emit("pan-zoom-callback",e)},onAnnotationClose:function(){this.$emit("annotation-close")},onAnnotationOpen:function(e){this.$emit("annotation-open",e)},onConnectivityInfoClose:function(){this.$emit("connectivity-info-close")},onConnectivityInfoOpen:function(e){this.$emit("connectivity-info-open",e)},onConnectivityGraphError:function(e){this.$emit("connectivity-graph-error",e)},onSelectionsDataChanged:function(e){this.$emit("pathway-selection-changed",e)},showPopup:function(e,t,r){this.getCurrentFlatmap().showPopup(e,t,r)},showMarkerPopup:function(e,t,r){this.getCurrentFlatmap().showMarkerPopup(e,t,r)},setSpecies:function(e,t,r){if(this.$refs&&e in this.$refs)this.activeSpecies=e,this.$refs[this.activeSpecies][0].createFlatmap(t),this.$emit("flatmapChanged",this.activeSpecies);else if(r){const n=r-1;n>=0&&this.$nextTick(()=>{this.setSpecies(e,t,n)})}},viewLatestMap:function(e){const t=Object.keys(this.speciesList);for(let r=0;r<t.length;r++){const n=this.speciesList[t[r]];if(!n.isLegacy&&n.taxo===e.entry&&n.biologicalSex===e.biologicalSex){this.setSpecies(t[r],e,0);return}}},createLegacyEntry:function(e,t,r){if(r&&t){let n="Legacy";return e.species&&(e.species.slice(0,6)==="Legacy"?n=e.species:n=n+` ${e.species}`),this.speciesList[n]={taxo:t,isLegacy:!0,displayWarning:!0},{species:n,state:{entry:t,uuid:r,viewport:e.state.viewport,searchTerm:e.state.searchTerm}}}},updateState:function(e){return new Promise(t=>{if(e&&e.state){const r=e.state;if(r.uuid){if(r.entry)return new Promise(()=>{const n={taxon:r.entry};r.biologicalSex&&(n.biologicalSex=r.biologicalSex),this.mapManagerRef.findMap_(n).then(i=>{if(i.uuid!==r.uuid)return this.createLegacyEntry(e,r.entry,r.uuid)}).then(i=>{t(i||e)}).catch(()=>{t(e)})})}else if(r.entry){const n=r.entry in WBe?WBe[r.entry]:void 0,i=this.createLegacyEntry(e,r.entry,n);t(i||e)}}t(e)})},getState:function(){let e={species:this.activeSpecies,state:void 0},t=this.getCurrentFlatmap();return e.state=t.getState(),e},setState:function(e){e&&(this.loadMapManager(),this.updateState(e).then(t=>{this.initialise().then(()=>{t.species&&t.species!==this.activeSpecies?this.setSpecies(t.species,t.state,5):t.state&&this.getCurrentFlatmap().setState(t.state)})}))},activateTooltipByIndex:function(e){return e===this.helpModeActiveItem&&this.helpMode},onHelpModeLastItem:function(e){e&&this.$emit("help-mode-last-item",!0)},onTooltipShown:function(){this.$emit("shown-tooltip")},onMapTooltipShown:function(){this.$emit("shown-map-tooltip")},changeViewingMode:function(e){this.getCurrentFlatmap().changeViewingMode(e)}},props:{initial:{type:String,default:""},minZoom:{type:Number,default:1},renderAtMounted:{type:Boolean,default:!1},helpMode:{type:Boolean,default:!1},helpModeActiveItem:{type:Number,default:0},helpModeDialog:{type:Boolean,default:!1},helpModeLastItem:{type:Boolean,default:!1},displayMinimap:{type:Boolean,default:!1},showStarInLegend:{type:Boolean,default:!1},enableOpenMapUI:{type:Boolean,default:!1},openMapOptions:{type:Array},availableSpecies:{type:Object,default:function(){return{"Human Female":{taxo:"NCBITaxon:9606",biologicalSex:"PATO:0000383",iconClass:"mapicon-icon_human",displayWarning:!0},"Human Male":{taxo:"NCBITaxon:9606",biologicalSex:"PATO:0000384",iconClass:"mapicon-icon_human",displayWarning:!0},Rat:{taxo:"NCBITaxon:10114",iconClass:"mapicon-icon_rat",displayLatestChanges:!0},Mouse:{taxo:"NCBITaxon:10090",iconClass:"mapicon-icon_mouse",displayWarning:!0},Pig:{taxo:"NCBITaxon:9823",iconClass:"mapicon-icon_pig",displayWarning:!0},Cat:{taxo:"NCBITaxon:9685",iconClass:"mapicon-icon_cat",displayWarning:!0}}}},state:{type:Object,default:void 0},mapManager:{type:Object,default:void 0},flatmapAPI:{type:String,default:"https://mapcore-demo.org/current/flatmap/v3/"},sparcAPI:{type:String,default:"https://api.sparc.science/"},disableUI:{type:Boolean,default:!1},connectivityInfoSidebar:{type:Boolean,default:!1},annotationSidebar:{type:Boolean,default:!1}},data:function(){return{activeSpecies:void 0,speciesList:{},requireInitialisation:!0,resolveList:s.markRaw([]),initialised:!1,mapManagerRef:void 0}},watch:{state:{handler:function(e){this.setState(e)},immediate:!0,deep:!0}}},iOr={class:"multi-container",ref:"multiContainer"},oOr={key:0,style:{position:"absolute","z-index":"100"}},aOr={class:"select-box-icon"};function sOr(e,t,r,n,i,o){const a=Fee,l=rH,c=nH,u=Jse;return s.openBlock(),s.createElementBlock("div",iOr,[r.disableUI?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock("div",oOr,[t[2]||(t[2]=s.createElementVNode("div",{class:"species-display-text"},"Species",-1)),s.createVNode(c,{content:"Select a species",placement:"right",trigger:"manual","popper-class":"flatmap-popper flatmap-teleport-popper right-popper",width:"max-content",visible:o.activateTooltipByIndex(0),teleported:!1,ref:"selectPopover"},{reference:s.withCtx(()=>[s.createVNode(l,{id:"flatmap-select",teleported:!1,modelValue:e.activeSpecies,"onUpdate:modelValue":t[0]||(t[0]=d=>e.activeSpecies=d),placeholder:"Select",class:"select-box","popper-class":"flatmap-dropdown",onChange:o.setSpecies},{default:s.withCtx(()=>[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.speciesList,(d,h)=>(s.openBlock(),s.createBlock(a,{key:h,label:h,value:h},{default:s.withCtx(()=>[s.createElementVNode("span",aOr,[s.createElementVNode("i",{class:s.normalizeClass(d.iconClass)},null,2)]),s.createTextVNode(" "+s.toDisplayString(h),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","onChange"])]),_:1},8,["visible"])])),(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.speciesList,(d,h)=>s.withDirectives((s.openBlock(),s.createBlock(u,{key:h,entry:d.taxo,uuid:d.uuid,biologicalSex:d.biologicalSex,displayWarning:d.displayWarning,displayLatestChanges:d.displayLatestChanges,isLegacy:d.isLegacy,ref_for:!0,ref:h,enableOpenMapUI:r.enableOpenMapUI,openMapOptions:r.openMapOptions,disableUI:r.disableUI,onViewLatestMap:o.viewLatestMap,onResourceSelected:o.resourceSelected,onReady:o.FlatmapReady,onPanZoomCallback:o.panZoomCallback,annotationSidebar:r.annotationSidebar,onAnnotationOpen:o.onAnnotationOpen,onAnnotationClose:o.onAnnotationClose,connectivityInfoSidebar:r.connectivityInfoSidebar,onConnectivityInfoOpen:o.onConnectivityInfoOpen,onConnectivityInfoClose:o.onConnectivityInfoClose,onConnectivityGraphError:o.onConnectivityGraphError,onOpenMap:t[1]||(t[1]=p=>e.$emit("open-map",p)),onPathwaySelectionChanged:o.onSelectionsDataChanged,minZoom:r.minZoom,helpMode:e.activeSpecies==h&&r.helpMode,helpModeActiveItem:r.helpModeActiveItem,helpModeDialog:r.helpModeDialog,helpModeInitialIndex:-2,onHelpModeLastItem:o.onHelpModeLastItem,onShownTooltip:o.onTooltipShown,onShownMapTooltip:o.onMapTooltipShown,renderAtMounted:r.renderAtMounted,displayMinimap:r.displayMinimap,showStarInLegend:r.showStarInLegend,style:{height:"100%"},mapManager:e.mapManagerRef,flatmapAPI:r.flatmapAPI,sparcAPI:r.sparcAPI},null,8,["entry","uuid","biologicalSex","displayWarning","displayLatestChanges","isLegacy","enableOpenMapUI","openMapOptions","disableUI","onViewLatestMap","onResourceSelected","onReady","onPanZoomCallback","annotationSidebar","onAnnotationOpen","onAnnotationClose","connectivityInfoSidebar","onConnectivityInfoOpen","onConnectivityInfoClose","onConnectivityGraphError","onPathwaySelectionChanged","minZoom","helpMode","helpModeActiveItem","helpModeDialog","onHelpModeLastItem","onShownTooltip","onShownMapTooltip","renderAtMounted","displayMinimap","showStarInLegend","mapManager","flatmapAPI","sparcAPI"])),[[s.vShow,e.activeSpecies==h]])),128))],512)}const lOr=aH(nOr,[["render",sOr],["__scopeId","data-v-5fbcda5d"]]),cOr={name:"Flatmap",mixins:[vv,Qxe],components:{FlatmapVuer:Jse,HelpModeDialog:ZX},methods:{getState:function(){return this.$refs.flatmap.getState()},search:function(e){return this.$refs.flatmap.searchAndShowResult(e)},getFlatmapImp(){var e;return(e=this.$refs.flatmap)==null?void 0:e.mapImp},flatmaprResourceSelected:function(e,t){if(this.resourceSelected(e,t,this.$refs.flatmap.viewingMode==="Exploration"),t.eventType==="click"&&t.feature.type==="feature"){const r={label:t.label||"",id:t.feature.id||"",featureId:t.feature.featureId||"",taxonomy:t.taxonomy||"",resources:t.resource.join(", ")},n=Z8e(r);sl.sendEvent({event:"interaction_event",event_name:"portal_maps_connectivity",category:n,location:e+" "+this.$refs.flatmap.viewingMode})}},flatmapReadyCall:function(e){let t={id:this.entry.id,prov:this.getFlatmapImp().provenance};cn.emit("mapImpProv",t),this.$emit("flatmap-provenance-ready",t),this.flatmapReadyForMarkerUpdates(e),cn.emit("mapLoaded",e)},onPathwaySelectionChanged:function(e){const{label:t,property:r,checked:n,selectionsTitle:i}=e;sl.sendEvent({event:"interaction_event",event_name:"portal_maps_pathway_change",category:t+" ["+r+"] "+n,location:i})},highlightFeatures:function(e){let t=e.name;const r=this.$refs.flatmap.mapImp;if(t){const n=r.search(t);n.featureIds[0]&&r.highlightFeatures([r.modelForFeature(n.featureIds[0])])}},searchSuggestions:function(e,t){if(e&&this.$refs.flatmap.mapImp){const r=this.$refs.flatmap.mapImp.search(e);(r.__featureIds||r.featureIds).forEach(i=>{const o=this.$refs.flatmap.mapImp.annotation(i);o&&o.label&&t.push(o.label)})}},zoomToFeatures:function(e,t){let r=e.name;const n=this.$refs.flatmap.mapImp;if(r){const i=n.search(r);if(i.featureIds.length){let o=n.modelForFeature(i.featureIds[0]);o?(t&&n.selectFeatures(o),n.zoomToFeatures(o)):n.clearSearchResults()}}else n.clearSearchResults()},changeViewingMode:function(e){this.$refs.flatmap.changeViewingMode(e)}},computed:{facetSpecies(){return this.settingsStore.facets.species}},mounted:function(){cn.on("annotation-close",()=>{this.$refs.flatmap&&this.$refs.flatmap.annotationEventCallback({},{type:"aborted"})}),cn.on("markerUpdate",()=>{this.flatmapMarkerUpdate(void 0)}),cn.on("hoverUpdate",()=>{this.cardHoverHighlight()}),cn.on("show-connectivity",e=>{const{featureIds:t,offset:r}=e,n=this.$refs.flatmap;n&&n.moveMap(t,{offsetX:r?-150:0,zoom:4})}),cn.on("show-reference-connectivities",e=>{const t=this.$refs.flatmap;t&&t.showConnectivitiesByReference(e)})}},uOr={class:"viewer-container"};function dOr(e,t,r,n,i,o){const a=s.resolveComponent("FlatmapVuer"),l=s.resolveComponent("HelpModeDialog");return s.openBlock(),s.createElementBlock("div",uOr,[s.createVNode(a,{state:e.entry.state,entry:e.entry.resource,mapManager:e.mapManager,onResourceSelected:t[0]||(t[0]=c=>o.flatmaprResourceSelected(e.entry.type,c)),onPanZoomCallback:e.flatmapPanZoomCallback,name:e.entry.resource?e.entry.resource:e.entry.data,style:{height:"100%",width:"100%"},minZoom:e.entry.minZoom,helpMode:e.helpMode,helpModeActiveItem:e.helpModeActiveItem,helpModeInitialIndex:-1,helpModeDialog:e.useHelpModeDialog,onHelpModeLastItem:e.onHelpModeLastItem,onShownTooltip:e.onTooltipShown,onShownMapTooltip:e.onMapTooltipShown,onAnnotationOpen:e.onAnnotationOpen,onAnnotationClose:e.onAnnotationClose,annotationSidebar:e.annotationSidebar,onConnectivityInfoOpen:e.onConnectivityInfoOpen,onConnectivityGraphError:e.onConnectivityGraphError,connectivityInfoSidebar:e.connectivityInfoSidebar,pathControls:!0,ref:"flatmap",onReady:o.flatmapReadyCall,displayMinimap:!1,displayWarning:!0,enableOpenMapUI:!0,flatmapAPI:e.flatmapAPI,sparcAPI:e.apiLocation,onOpenMap:e.openMap,onPathwaySelectionChanged:o.onPathwaySelectionChanged,onMapmanagerLoaded:e.onMapmanagerLoaded},null,8,["state","entry","mapManager","onPanZoomCallback","name","minZoom","helpMode","helpModeActiveItem","helpModeDialog","onHelpModeLastItem","onShownTooltip","onShownMapTooltip","onAnnotationOpen","onAnnotationClose","annotationSidebar","onConnectivityInfoOpen","onConnectivityGraphError","connectivityInfoSidebar","onReady","flatmapAPI","sparcAPI","onOpenMap","onPathwaySelectionChanged","onMapmanagerLoaded"]),e.helpMode&&e.useHelpModeDialog?(s.openBlock(),s.createBlock(l,{key:0,ref:"flatmapHelp",flatmapRef:e.flatmapRef,lastItem:e.helpModeLastItem,onShowNext:e.onHelpModeShowNext,onFinishHelpMode:e.onFinishHelpMode},null,8,["flatmapRef","lastItem","onShowNext","onFinishHelpMode"])):s.createCommentVNode("",!0)])}const hOr=Object.freeze(Object.defineProperty({__proto__:null,default:Nl(cOr,[["render",dOr],["__scopeId","data-v-b98a99d3"]])},Symbol.toStringTag,{value:"Module"})),pOr={name:"Iframe",mixins:[vv]},fOr={class:"map-iframe-container"},mOr=["src"];function gOr(e,t,r,n,i,o){return s.openBlock(),s.createElementBlock("div",fOr,[s.createElementVNode("iframe",{class:"my-iframe",src:e.entry.resource.share_link},null,8,mOr)])}const yOr=Object.freeze(Object.defineProperty({__proto__:null,default:Nl(pOr,[["render",gOr],["__scopeId","data-v-60f8bfe1"]])},Symbol.toStringTag,{value:"Module"})),TOr='<svg width="72px" height="72px" viewBox="0 0 24 24" fill="yellow"><path d="M11.0748 3.25583C11.4141 2.42845 12.5859 2.42845 12.9252 3.25583L14.6493 7.45955C14.793 7.80979 15.1221 8.04889 15.4995 8.07727L20.0303 8.41798C20.922 8.48504 21.2841 9.59942 20.6021 10.1778L17.1369 13.1166C16.8482 13.3614 16.7225 13.7483 16.8122 14.1161L17.8882 18.5304C18.1 19.3992 17.152 20.0879 16.3912 19.618L12.5255 17.2305C12.2034 17.0316 11.7966 17.0316 11.4745 17.2305L7.60881 19.618C6.84796 20.0879 5.90001 19.3992 6.1118 18.5304L7.18785 14.1161C7.2775 13.7483 7.1518 13.3614 6.86309 13.1166L3.3979 10.1778C2.71588 9.59942 3.07796 8.48504 3.96971 8.41798L8.50046 8.07727C8.87794 8.04889 9.20704 7.80979 9.35068 7.45955L11.0748 3.25583Z" stroke="#000000" stroke-width="2"/></svg>',qBe=e=>{const t=[{display:"Open AC Map",key:"AC"},{display:"Open FC Map",key:"FC"},{display:"Open 3D Human Map",key:"3D"}];switch(e){case"Human Male":case"Human Female":case"Rat":t.push({display:"Open Sync Map",key:"SYNC"});break}return t},vOr={name:"MultiFlatmap",mixins:[vv,Qxe],components:{MultiFlatmapVuer:lOr,HelpModeDialog:ZX},data:function(){return{zoomLevel:6,flatmapReady:!1,availableSpecies:q8e(),scaffoldResource:{},showStarInLegend:!1,openMapOptions:qBe("Human Male")}},methods:{toggleSyncMode:async function(){if(this.syncMode==!1){let e;this.activeSpecies==="Rat"?e={contextCard:void 0,discoverId:void 0,label:"Rat Body",resource:"https://mapcore-bucket1.s3.us-west-2.amazonaws.com/WholeBody/31-May-2021/ratBody/ratBody_syncmap_metadata.json",title:"View 3D scaffold",layout:"2horpanel",type:"SyncMap"}:(this.activeSpecies==="Human Male"||this.activeSpecies==="Human Female")&&("human"in this.scaffoldResource||(this.scaffoldResource.human=await IR(this.apiLocation,"human")),e={contextCardUrl:this.scaffoldResource.human.datasetInfo.contextCardUrl,discoverId:this.scaffoldResource.human.datasetInfo.discoverId,s3uri:this.scaffoldResource.human.datasetInfo.s3uri,version:this.scaffoldResource.human.datasetInfo.version,label:"Human Body",resource:this.scaffoldResource.human.url,title:"View 3D scaffold",layout:"2vertpanel",type:"SyncMap",isBodyScaffold:!0}),e&&cn.emit("SyncModeRequest",{flag:!0,action:e})}else cn.emit("SyncModeRequest",{flag:!1})},getState:function(){if(this.flatmapReady)return this.$refs.multiflatmap.getState()},flatmapPanZoomCallback:function(e){if(this.mouseHovered){const t={paneIndex:this.entry.id,eventType:"panZoom",payload:e,type:this.entry.type};this.$emit("resource-selected",t)}},search:function(e){return this.$refs.multiflatmap.getCurrentFlatmap().searchAndShowResult(e,!0)},searchSuggestions:function(e,t){const r=this.$refs.multiflatmap.getCurrentFlatmap();if(e&&r.mapImp){const n=r.mapImp.search(e);(n.__featureIds||n.featureIds).forEach(o=>{const a=r.mapImp.annotation(o);a&&a.label&&t.push(a.label)})}},flatmaprResourceSelected:function(e,t){const r=this.$refs.multiflatmap.getCurrentFlatmap();if(this.resourceSelected(e,t),t.eventType==="click"&&t.feature.type==="feature"){const n={label:t.label||"",id:t.feature.id||"",featureId:t.feature.featureId||"",taxonomy:t.taxonomy||"",resources:t.resource.join(", ")},i=Z8e(n);sl.sendEvent({event:"interaction_event",event_name:"portal_maps_connectivity",category:i,location:e+" "+r.viewingMode})}},onPathwaySelectionChanged:function(e){const{label:t,property:r,checked:n,selectionsTitle:i}=e;sl.sendEvent({event:"interaction_event",event_name:"portal_maps_pathway_change",category:t+" ["+r+"] "+n,location:i})},onOpenPubmedUrl:function(e){sl.sendEvent({event:"interaction_event",event_name:"portal_maps_pubmed_url",file_path:e,location:"map_popup_button"})},handleSyncPanZoomEvent:function(e){if(!this.mouseHovered&&e.type!==this.entry.type){const t=e.payload.zoom,r=e.payload.target,n=this.$el.clientHeight,i=this.$el.clientWidth,o=Math.max(i,n);let a=i/o/t;const l=n/o/t,c=[r[0]/2+.5-a/2,.5-r[1]/2-l/2];this.$refs.multiflatmap.getCurrentFlatmap().mapImp.panZoomTo(c,[a,l])}},displayTooltip:function(e){if(e){let t=e.name;t?this.search(t):this.$refs.multiflatmap.getCurrentFlatmap().mapImp.clearSearchResults()}},zoomToFeatures:function(e,t){let r=e.name;const n=this.$refs.multiflatmap.getCurrentFlatmap().mapImp;if(r){const i=n.search(r);i.featureIds.length>0?(t&&n.selectFeatures(i.featureIds),n.zoomToFeatures(i.featureIds)):n.clearSearchResults()}else n.clearSearchResults()},highlightFeatures:function(e){let t=e.name;const r=this.$refs.multiflatmap.getCurrentFlatmap().mapImp;if(t){const n=r.search(t);n.featureIds.length>0&&r.zoomToFeatures(n.featureIds,{noZoomIn:!0})}},updateProvCard:function(){const e=this.getFlatmapImp();if(e){let t={id:this.entry.id,prov:e.provenance};cn.emit("mapImpProv",t),this.$emit("flatmap-provenance-ready",t)}},flatmapChanged:async function(e){this.activeSpecies=e,this.openMapOptions=qBe(e),this.$emit("species-changed",e),this.entry.state&&this.entry.state.species===this.activeSpecies||this.syncMode==!0&&await this.toggleSyncMode(),this.updateProvCard(),sl.sendEvent({event:"interaction_event",event_name:"portal_maps_species_change",category:this.activeSpecies})},multiFlatmapReady:function(e){if(e){e.enablePanZoomEvents(!0),this.flatmapReady=!0;const t=e.mapImp;this.flatmapMarkerUpdate(t),this.updateProvCard(),this.loadConnectivityKnowledge(t),cn.emit("mapLoaded",e)}},getFlatmapImp:function(){if(this.flatmapReady&&this.$refs.multiflatmap)return this.$refs.multiflatmap.getCurrentFlatmap().mapImp},flatmapAreaSearch(){let r={type:"Facets",label:"Unused",val:this.getFlatmapImp().visibleMarkerAnatomicalIds().map(n=>this.idNamePair[n])};cn.emit("PopoverActionClick",r)},restoreFeaturedMarkers:function(e){this.settingsStore.resetFeaturedMarkerIdentifier();const t=this.settingsStore.featuredMarkers;this.updateFeaturedMarkers(t,e)},updateFeaturedMarkers:function(e,t){this.showStarInLegend=!1;for(let r=0;r<e.length;++r)e[r]&&(this.settingsStore.featuredMarkerIdentifiers[r]||this.addFeaturedMarker(e[r],r,t)&&(this.showStarInLegend=!0))},addFeaturedMarker:function(e,t,r){const n=this.settingsStore.featuredMarkerSpecies[t];if(n&&!this.activeSpecies.startsWith(n))return!1;let i=r;if(i||(i=this.getFlatmapImp()),i){let o=document.createElement("div");o.innerHTML=TOr;const a=i.addMarker(e,{element:o,className:"highlight-marker",cluster:!1});return this.settingsStore.updateFeaturedMarkerIdentifier({index:t,markerIdentifier:a}),!0}return!1},changeViewingMode:function(e){this.$refs.multiflatmap.getCurrentFlatmap().changeViewingMode(e)},showConnectivityTooltips:function(e){this.flatmapReady&&this.$refs.multiflatmap.getCurrentFlatmap().showConnectivityTooltips(e)},changeConnectivitySource:function(e){this.flatmapReady&&this.$refs.multiflatmap.getCurrentFlatmap().changeConnectivitySource(e)}},computed:{facetSpecies(){return this.settingsStore.facets.species},featuredMarkers(){return this.settingsStore.featuredMarkers}},watch:{syncMode:function(e){this.$refs.multiflatmap.getCurrentFlatmap()&&this.$refs.multiflatmap.getCurrentFlatmap().enablePanZoomEvents(e)},featuredMarkers:function(e){this.flatmapReady&&this.updateFeaturedMarkers(e,void 0)}},mounted:function(){this.getFeaturedDatasets(),cn.on("annotation-close",()=>{this.flatmapReady&&this.$refs.multiflatmap&&this.$refs.multiflatmap.getCurrentFlatmap().annotationEventCallback({},{type:"aborted"})}),cn.on("show-connectivity",e=>{const{featureIds:t,offset:r}=e;if(this.flatmapReady&&this.$refs.multiflatmap){const n=this.$refs.multiflatmap.getCurrentFlatmap();n&&n.moveMap(t,{offsetX:r?-150:0,zoom:4})}}),cn.on("show-reference-connectivities",e=>{if(this.flatmapReady&&this.$refs.multiflatmap){const t=this.$refs.multiflatmap.getCurrentFlatmap();t&&t.showConnectivitiesByReference(e)}}),cn.on("connectivity-hovered",e=>{this.showConnectivityTooltips(e)}),cn.on("connectivity-source-change",e=>{this.changeConnectivitySource(e)}),cn.on("markerUpdate",()=>{this.flatmapReady&&this.flatmapMarkerUpdate(this.$refs.multiflatmap.getCurrentFlatmap().mapImp)}),cn.on("hoverUpdate",()=>{this.flatmapReady&&this.cardHoverHighlight()}),cn.on("connectivity-query-filter",e=>{if(this.flatmapReady&&this.$refs.multiflatmap){const t=this.$refs.multiflatmap.getCurrentFlatmap();t&&this.connectivityQueryFilter(t,e)}})}},bOr={class:"viewer-container"};function QOr(e,t,r,n,i,o){const a=s.resolveComponent("MultiFlatmapVuer"),l=s.resolveComponent("HelpModeDialog");return s.openBlock(),s.createElementBlock("div",bOr,[s.createVNode(a,{availableSpecies:e.availableSpecies,onFlatmapChanged:o.flatmapChanged,onReady:o.multiFlatmapReady,state:e.entry.state,mapManager:e.mapManager,onResourceSelected:t[0]||(t[0]=c=>o.flatmaprResourceSelected(e.entry.type,c)),style:{height:"100%",width:"100%"},initial:e.entry.resource,helpMode:e.helpMode,helpModeActiveItem:e.helpModeActiveItem,helpModeDialog:e.useHelpModeDialog,onHelpModeLastItem:e.onHelpModeLastItem,onShownTooltip:e.onTooltipShown,onShownMapTooltip:e.onMapTooltipShown,onAnnotationOpen:e.onAnnotationOpen,onAnnotationClose:e.onAnnotationClose,annotationSidebar:e.annotationSidebar,onConnectivityInfoOpen:e.onConnectivityInfoOpen,onConnectivityGraphError:e.onConnectivityGraphError,connectivityInfoSidebar:e.connectivityInfoSidebar,ref:"multiflatmap",displayMinimap:!0,showStarInLegend:e.showStarInLegend,enableOpenMapUI:!0,openMapOptions:e.openMapOptions,flatmapAPI:e.flatmapAPI,sparcAPI:e.apiLocation,onPanZoomCallback:o.flatmapPanZoomCallback,onOpenMap:e.openMap,onFinishHelpMode:e.endHelp,onPathwaySelectionChanged:o.onPathwaySelectionChanged,onOpenPubmedUrl:o.onOpenPubmedUrl,onMapmanagerLoaded:e.onMapmanagerLoaded},null,8,["availableSpecies","onFlatmapChanged","onReady","state","mapManager","initial","helpMode","helpModeActiveItem","helpModeDialog","onHelpModeLastItem","onShownTooltip","onShownMapTooltip","onAnnotationOpen","onAnnotationClose","annotationSidebar","onConnectivityInfoOpen","onConnectivityGraphError","connectivityInfoSidebar","showStarInLegend","openMapOptions","flatmapAPI","sparcAPI","onPanZoomCallback","onOpenMap","onFinishHelpMode","onPathwaySelectionChanged","onOpenPubmedUrl","onMapmanagerLoaded"]),e.helpMode&&e.useHelpModeDialog?(s.openBlock(),s.createBlock(l,{key:0,ref:"multiflatmapHelp",multiflatmapRef:e.multiflatmapRef,lastItem:e.helpModeLastItem,onShowNext:e.onHelpModeShowNext,onFinishHelpMode:e.onFinishHelpMode},null,8,["multiflatmapRef","lastItem","onShowNext","onFinishHelpMode"])):s.createCommentVNode("",!0)])}const xOr=Object.freeze(Object.defineProperty({__proto__:null,default:Nl(vOr,[["render",QOr],["__scopeId","data-v-d7df9e7b"]])},Symbol.toStringTag,{value:"Module"})),_Or={name:"Plot",mixins:[vv],components:{PlotVuer:cXe.PlotVuer}};function wOr(e,t,r,n,i,o){const a=s.resolveComponent("PlotVuer");return s.openBlock(),s.createBlock(a,{"data-source":e.entry.resource.dataSource,metadata:e.entry.resource.metadata,"supplemental-data":e.entry.resource.supplementalData,style:{overflow:"hidden"}},null,8,["data-source","metadata","supplemental-data"])}const LOr=Object.freeze(Object.defineProperty({__proto__:null,default:Nl(_Or,[["render",wOr]])},Symbol.toStringTag,{value:"Module"})),c6=(e,t,{checkForDefaultPrevented:r=!0}={})=>n=>{const i=e==null?void 0:e(n);if(r===!1||!i)return t==null?void 0:t(n)};var SOr=Object.defineProperty,EOr=Object.defineProperties,COr=Object.getOwnPropertyDescriptors,ZBe=Object.getOwnPropertySymbols,MOr=Object.prototype.hasOwnProperty,kOr=Object.prototype.propertyIsEnumerable,XBe=(e,t,r)=>t in e?SOr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,AOr=(e,t)=>{for(var r in t||(t={}))MOr.call(t,r)&&XBe(e,r,t[r]);if(ZBe)for(var r of ZBe(t))kOr.call(t,r)&&XBe(e,r,t[r]);return e},OOr=(e,t)=>EOr(e,COr(t));function KBe(e,t){var r;const n=s.shallowRef();return s.watchEffect(()=>{n.value=e()},OOr(AOr({},t),{flush:(r=void 0)!=null?r:"sync"})),s.readonly(n)}var YBe;const Ts=typeof window<"u",POr=e=>typeof e=="string",JBe=()=>{},ele=Ts&&((YBe=window==null?void 0:window.navigator)==null?void 0:YBe.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent);function e$e(e){return typeof e=="function"?e():s.unref(e)}function IOr(e){return e}function Rj(e){return s.getCurrentScope()?(s.onScopeDispose(e),!0):!1}function ROr(e,t=!0){s.getCurrentInstance()?s.onMounted(e):t?e():s.nextTick(e)}function u6(e){var t;const r=e$e(e);return(t=r==null?void 0:r.$el)!=null?t:r}const qk=Ts?window:void 0,NOr=Ts?window.document:void 0;function gl(...e){let t,r,n,i;if(POr(e[0])||Array.isArray(e[0])?([r,n,i]=e,t=qk):[t,r,n,i]=e,!t)return JBe;Array.isArray(r)||(r=[r]),Array.isArray(n)||(n=[n]);const o=[],a=()=>{o.forEach(d=>d()),o.length=0},l=(d,h,p,f)=>(d.addEventListener(h,p,f),()=>d.removeEventListener(h,p,f)),c=s.watch(()=>[u6(t),e$e(i)],([d,h])=>{a(),d&&o.push(...r.flatMap(p=>n.map(f=>l(d,p,f,h))))},{immediate:!0,flush:"post"}),u=()=>{c(),a()};return Rj(u),u}let t$e=!1;function VOr(e,t,r={}){const{window:n=qk,ignore:i=[],capture:o=!0,detectIframe:a=!1}=r;if(!n)return;ele&&!t$e&&(t$e=!0,Array.from(n.document.body.children).forEach(d=>d.addEventListener("click",JBe)));let l=!0;const c=d=>i.some(h=>{if(typeof h=="string")return Array.from(n.document.querySelectorAll(h)).some(p=>p===d.target||d.composedPath().includes(p));{const p=u6(h);return p&&(d.target===p||d.composedPath().includes(p))}}),u=[gl(n,"click",d=>{const h=u6(e);if(!(!h||h===d.target||d.composedPath().includes(h))){if(d.detail===0&&(l=!c(d)),!l){l=!0;return}t(d)}},{passive:!0,capture:o}),gl(n,"pointerdown",d=>{const h=u6(e);h&&(l=!d.composedPath().includes(h)&&!c(d))},{passive:!0}),a&&gl(n,"blur",d=>{var h;const p=u6(e);((h=n.document.activeElement)==null?void 0:h.tagName)==="IFRAME"&&!(p!=null&&p.contains(n.document.activeElement))&&t(d)})].filter(Boolean);return()=>u.forEach(d=>d())}function r$e(e,t=!1){const r=s.ref(),n=()=>r.value=!!e();return n(),ROr(n,t),r}const n$e=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},i$e="__vueuse_ssr_handlers__";n$e[i$e]=n$e[i$e]||{};function HOr({document:e=NOr}={}){if(!e)return s.ref("visible");const t=s.ref(e.visibilityState);return gl(e,"visibilitychange",()=>{t.value=e.visibilityState}),t}var o$e=Object.getOwnPropertySymbols,BOr=Object.prototype.hasOwnProperty,$Or=Object.prototype.propertyIsEnumerable,DOr=(e,t)=>{var r={};for(var n in e)BOr.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&o$e)for(var n of o$e(e))t.indexOf(n)<0&&$Or.call(e,n)&&(r[n]=e[n]);return r};function i0(e,t,r={}){const n=r,{window:i=qk}=n,o=DOr(n,["window"]);let a;const l=r$e(()=>i&&"ResizeObserver"in i),c=()=>{a&&(a.disconnect(),a=void 0)},u=s.watch(()=>u6(e),h=>{c(),l.value&&i&&h&&(a=new ResizeObserver(t),a.observe(h,o))},{immediate:!0,flush:"post"}),d=()=>{c(),u()};return Rj(d),{isSupported:l,stop:d}}var a$e=Object.getOwnPropertySymbols,FOr=Object.prototype.hasOwnProperty,zOr=Object.prototype.propertyIsEnumerable,jOr=(e,t)=>{var r={};for(var n in e)FOr.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&a$e)for(var n of a$e(e))t.indexOf(n)<0&&zOr.call(e,n)&&(r[n]=e[n]);return r};function UOr(e,t,r={}){const n=r,{window:i=qk}=n,o=jOr(n,["window"]);let a;const l=r$e(()=>i&&"MutationObserver"in i),c=()=>{a&&(a.disconnect(),a=void 0)},u=s.watch(()=>u6(e),h=>{c(),l.value&&i&&h&&(a=new MutationObserver(t),a.observe(h,o))},{immediate:!0}),d=()=>{c(),u()};return Rj(d),{isSupported:l,stop:d}}var s$e;(function(e){e.UP="UP",e.RIGHT="RIGHT",e.DOWN="DOWN",e.LEFT="LEFT",e.NONE="NONE"})(s$e||(s$e={}));var GOr=Object.defineProperty,l$e=Object.getOwnPropertySymbols,WOr=Object.prototype.hasOwnProperty,qOr=Object.prototype.propertyIsEnumerable,c$e=(e,t,r)=>t in e?GOr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,ZOr=(e,t)=>{for(var r in t||(t={}))WOr.call(t,r)&&c$e(e,r,t[r]);if(l$e)for(var r of l$e(t))qOr.call(t,r)&&c$e(e,r,t[r]);return e};ZOr({linear:IOr},{easeInSine:[.12,0,.39,0],easeOutSine:[.61,1,.88,1],easeInOutSine:[.37,0,.63,1],easeInQuad:[.11,0,.5,0],easeOutQuad:[.5,1,.89,1],easeInOutQuad:[.45,0,.55,1],easeInCubic:[.32,0,.67,0],easeOutCubic:[.33,1,.68,1],easeInOutCubic:[.65,0,.35,1],easeInQuart:[.5,0,.75,0],easeOutQuart:[.25,1,.5,1],easeInOutQuart:[.76,0,.24,1],easeInQuint:[.64,0,.78,0],easeOutQuint:[.22,1,.36,1],easeInOutQuint:[.83,0,.17,1],easeInExpo:[.7,0,.84,0],easeOutExpo:[.16,1,.3,1],easeInOutExpo:[.87,0,.13,1],easeInCirc:[.55,0,1,.45],easeOutCirc:[0,.55,.45,1],easeInOutCirc:[.85,0,.15,1],easeInBack:[.36,0,.66,-.56],easeOutBack:[.34,1.56,.64,1],easeInOutBack:[.68,-.6,.32,1.6]});function XOr({window:e=qk}={}){if(!e)return s.ref(!1);const t=s.ref(e.document.hasFocus());return gl(e,"blur",()=>{t.value=!1}),gl(e,"focus",()=>{t.value=!0}),t}const KOr=()=>Ts&&/firefox/i.test(window.navigator.userAgent);/**
3809
+ This will fail in production.`);l=Gk,l._s.has(n)||(o?Kse(n,t,i,l):UBe(n,i,l),process.env.NODE_ENV!=="production"&&(a._pinia=l));const d=l._s.get(n);if(process.env.NODE_ENV!=="production"&&c){const h="__hot:"+n,p=o?Kse(h,t,i,l,!0):UBe(h,n0({},i),l,!0);c._hotUpdate(p),delete l.state.value[h],l._s.delete(h)}if(process.env.NODE_ENV!=="production"&&qse){const h=s.getCurrentInstance();if(h&&h.proxy&&!c){const p=h.proxy,f="_pStores"in p?p._pStores:p._pStores={};f[n]=d}}return d}return a.$id=n,a}function HAr(e,t){return Array.isArray(t)?t.reduce((r,n)=>(r[n]=function(){return e(this.$pinia)[n]},r),{}):Object.keys(t).reduce((r,n)=>(r[n]=function(){const i=e(this.$pinia),o=t[n];return typeof o=="function"?o.call(this,i):i[o]},r),{})}const BAr=VAr("main",{state:()=>({userProfile:{token:""}}),getters:{userToken(e){return e.userProfile.token}},actions:{setUserToken(e){this.userProfile.token=e}}});function $Ar(e){return{all:e=e||new Map,on:function(t,r){var n=e.get(t);n?n.push(r):e.set(t,[r])},off:function(t,r){var n=e.get(t);n&&(r?n.splice(n.indexOf(r)>>>0,1):e.set(t,[]))},emit:function(t,r){var n=e.get(t);n&&n.slice().map(function(i){i(r)}),(n=e.get("*"))&&n.slice().map(function(i){i(t,r)})}}}const Yse=new $Ar,DAr="cannot be found on the map.",FAr=e=>{let t={lng:0,lat:0},r;return e.type==="Polygon"?e.coordinates.length&&(r=e.coordinates[0]):r=e.coordinates,r&&(e.type!=="Point"?(r.map(n=>{t.lng+=parseFloat(n[0]),t.lat+=parseFloat(n[1])}),t.lng=t.lng/r.length,t.lat=t.lat/r.length):(t.lng+=parseFloat(r[0]),t.lat+=parseFloat(r[1]))),t},GBe=(e,t)=>{const r=[];let n=e.organs?e.organs:e.ftus;const i=n?n.filter((o,a)=>n.findIndex(l=>l.label===o.label)===a):void 0;return i&&i.forEach(o=>{const a={label:o.label,models:o.models,key:`${t}.${o.label}`},l=GBe(o,a.key);l.length>0&&(a.children=l),r.push(a)}),r},zAr={name:"FlatmapVuer",components:{Button:Wwe,Col:cE,Loading:Nrr,Radio:lLe,Icon:Uh,RadioGroup:cLe,Row:lE,Select:rH,Dialog:err,MapSvgIcon:BL,MapSvgSpriteColor:PR,Tooltip:kme,TreeControls:Ame,SelectionsGroup:bLe,SvgLegends:QLe,ElIconWarningFilled:O_e,ElIconArrowDown:lee,ElIconArrowLeft:M_e,DrawToolbar:Cme},beforeCreate:function(){this.setStateRequired=!1},setup(e){let t=s.inject("$annotator");return t||(t=s.markRaw(new AAr(`${e.flatmapAPI}annotator`)),s.provide("$annotator",t)),{annotator:t}},methods:{manualAbortedOnClose:function(){this.annotationSidebar&&this.$emit("annotation-close"),this.closeTooltip(),this.annotationEventCallback({},{type:"aborted"}),this.initialiseDrawing()},initialiseDrawing:function(){this.connectionEntry={},this.activeDrawTool=void 0,this.activeDrawMode=void 0,this.drawnCreatedEvent={}},cancelDrawnFeature:function(){this.isValidDrawnCreated&&(this.annotationSidebar&&this.$emit("annotation-close"),this.closeTooltip(),this.annotationEntry=[{...this.drawnCreatedEvent.feature,resourceId:this.serverURL}],this.rollbackAnnotationEvent(),this.initialiseDrawing())},connectedFeatureTooltip:function(e){if(this.mapImp)if(e){const t=Number(e);let r={feature:{}};if(t){const n=this.mapImp.featureProperties(t);r.feature=n}else{const n=this.existDrawnFeatures.find(i=>i.id===e.replace(" ",""));r.feature.feature=n}this.checkAndCreatePopups([r])}else this.closeTooltip()},confirmDrawnFeature:function(){this.isValidDrawnCreated&&(this.checkAndCreatePopups([this.drawnCreatedEvent]),Object.keys(this.connectionEntry).length>0&&(this.annotationEntry[0].feature.connection=this.connectionEntry),this.initialiseDrawing())},toolbarEvent:function(e,t){if(!this.isValidDrawnCreated){if(this.manualAbortedOnClose(),this.doubleClickedFeature=!1,this.changeAnnotationDrawMode({mode:"simple_select"}),e==="mode")this.activeDrawMode=t;else if(e==="tool"){if(this.cancelDrawnFeature(),t){const r=t.replace(/[A-Z]/g,n=>`_${n.toLowerCase()}`);this.changeAnnotationDrawMode({mode:`draw${r}`})}this.activeDrawTool=t}}},annotationDrawModeEvent:function(e){this.activeDrawMode==="Edit"?this.doubleClickedFeature&&(e.feature.feature.geometry.type!=="Point"&&(this.changeAnnotationDrawMode({mode:"direct_select",options:{featureId:e.feature.feature.id}}),this.modifyAnnotationFeature()),this.doubleClickedFeature=!1):this.activeDrawMode==="Delete"&&(this.changeAnnotationDrawMode({mode:"simple_select",options:{featureIds:[e.feature.feature.id]}}),this.modifyAnnotationFeature())},createConnectivityBody:function(){if(Object.keys(this.connectionEntry).length>0){const e=Object.values(this.connectionEntry),t={type:"connectivity",source:e[0],target:e[e.length-1],intermediates:e.filter((r,n)=>n!==0&&n!==e.length-1)};this.annotationEntry[0].body=t}},changeAnnotationDrawMode:function(e){this.mapImp&&this.mapImp.changeAnnotationDrawMode(e)},clearAnnotationFeature:function(){this.mapImp&&this.existDrawnFeatures.length>0&&this.mapImp.clearAnnotationFeature()},modifyAnnotationFeature:function(){this.mapImp&&this.mapImp.removeAnnotationFeature()},rollbackAnnotationEvent:function(){this.mapImp&&this.annotationEntry.length>0&&["created","updated","deleted"].includes(this.annotationEntry[0].type)&&(this.mapImp.rollbackAnnotationEvent(this.annotationEntry[0]),this.annotationEntry=[])},commitAnnotationEvent:function(e){this.mapImp&&this.annotationEntry.length>0&&["created","updated","deleted"].includes(this.annotationEntry[0].type)&&e&&(this.featureAnnotationSubmitted=!0,this.mapImp.commitAnnotationEvent(this.annotationEntry[0]),e.body.comment==="Position Updated"?this.annotationEntry[0].positionUpdated=!1:this.annotationEntry[0].type==="deleted"&&(this.annotationSidebar&&this.$emit("annotation-close"),this.closeTooltip(),this.annotationEntry=[]),this.addAnnotationFeature())},fetchAnnotatedItemIds:async function(e=void 0,t=void 0){let r=await this.annotator.annotatedItemIds(this.userToken,this.serverURL,e,t);return"resource"in r&&(r=r.itemIds),r},setFeatureAnnotated:async function(){if(this.mapImp){const e=await this.fetchAnnotatedItemIds();for(const t of e)this.mapImp.setFeatureAnnotated(t)}},fetchDrawnFeatures:async function(e,t){const r=await this.fetchAnnotatedItemIds(e,t);let n=await this.annotator.drawnFeatures(this.userToken,this.serverURL,r);return"resource"in n&&(n=n.features),n},addAnnotationFeature:async function(){if(this.mapImp){this.featureAnnotationSubmitted||(this.clearAnnotationFeature(),this.loading=!0);const e=this.annotationFrom==="Anyone"?void 0:this.userInformation.orcid?this.userInformation.orcid:"0000-0000-0000-0000",t=this.annotationFrom==="Anyone"?void 0:this.annotationFrom==="Me",r=await this.fetchDrawnFeatures(e,t);if(this.existDrawnFeatures=r,this.loading=!1,!this.featureAnnotationSubmitted)for(const n of r)this.mapImp.addAnnotationFeature(n)}},showAnnotator:function(e){this.mapImp&&(this.mapImp.showAnnotator(e),this.$el.querySelector(".maplibregl-ctrl-group").style.display="none")},setAnnotationFrom:function(e){this.annotationFrom=e,this.mapImp&&(this.manualAbortedOnClose(),this.addAnnotationFeature())},setFlightPath3D:function(e){this.flightPath3DRadio=e,this.mapImp&&this.mapImp.enableFlightPaths(e)},viewLatestMap:function(){let e=this.biologicalSex?this.biologicalSex:void 0;this.entry==="NCBITaxon:9606"&&(e="PATO:0000384");const t={entry:this.entry,biologicalSex:e,viewport:this.mapImp.getState()};this.$emit("view-latest-map",t)},backgroundChangeCallback:function(e){this.currentBackground=e,this.mapImp&&this.mapImp.setBackgroundColour(this.currentBackground,1)},processSystems:function(e){if(this.systems.length=0,e&&e.length>0){const t={label:"All",key:"All",children:[]};e.forEach(r=>{const n={colour:r.colour,enabled:r.enabled,label:r.id,key:r.id},i=GBe(r,n.key);i.length>0&&(n.children=i),t.children.push(n)}),this.systems.push(t)}},processTaxon:function(e,t){this.taxonConnectivity.length=0,Gee(this.mapImp,e).then(r=>{r.length&&r.forEach(n=>{let i=!0;t&&(i=t.checkAll?!0:t.checked.includes(n.taxon)),this.taxonConnectivity.push({...n,enabled:i}),this.mapImp&&this.mapImp.enableConnectivityByTaxonIds(n.taxon,i)})})},toggleDrawer:function(){this.drawerOpen=!this.drawerOpen},setColour:function(e){this.colourRadio=e,this.mapImp&&this.mapImp.setPaint({colour:e,outline:this.outlinesRadio})},setOutlines:function(e){this.outlinesRadio=e,this.mapImp&&this.mapImp.setPaint({colour:this.colourRadio,outline:e})},setInitMapState:function(){if(this.mapImp){const e=this.mapImp.map,t=this.mapImp.options.bounds,r=[[t[0],t[1]],[t[2],t[3]]];e.setMaxBounds(null),this.initMapState=s.markRaw({initBounds:r})}},resetView:function(){if(this.mapImp){const e=this.mapImp.map,{initBounds:t}=this.initMapState;e.resetNorthPitch({animate:!1}),t&&e.fitBounds(t,{animate:!1}),this.$refs.skcanSelection&&this.$refs.skcanSelection.reset(),this.$refs.layersSelection&&this.$refs.layersSelection.reset(),this.$refs.systemsSelection&&this.$refs.pathwaysSelection.reset(),this.$refs.pathwaysSelection&&this.$refs.pathwaysSelection.reset()}},zoomIn:function(){this.mapImp&&this.mapImp.zoomIn()},zoomOut:function(){this.mapImp&&this.mapImp.zoomOut()},onSelectionsDataChanged:function(e){this.$emit("pathway-selection-changed",e)},sckanSelected:function(e){this.mapImp&&this.mapImp.enableSckanPath(e.key,e.value)},checkAllSCKAN:function(e){this.mapImp&&e.keys.forEach(t=>this.mapImp.enableSckanPath(t,e.value))},zoomToFeatures:function(e){this.mapImp&&this.mapImp.zoomToFeatures(e)},retrieveConnectedPaths:async function(e,t={}){var r,n,i,o,a;if(this.mapImp){let l=[],c=(r=t.target)!=null&&r.length?t.target:[];const u=[...this.mapImp.pathModelNodes(e)],d=await this.mapImp.queryPathsForFeatures(e);if(u.length){if(!c.length){const h=(n=t.type)!=null&&n.length?t.type:["all"],p=await this.flatmapQueries.queryForConnectivityNew(this.mapImp,e[0]),f=(i=p==null?void 0:p.ids)==null?void 0:i.dendrites.flat(1/0),m=(o=p==null?void 0:p.ids)==null?void 0:o.components.flat(1/0),g=(a=p==null?void 0:p.ids)==null?void 0:a.axons.flat(1/0);let b=[];h.includes("origins")&&b.push(...f),h.includes("components")&&b.push(...m),h.includes("destinations")&&b.push(...g),h.includes("all")&&b.push(...f,...m,...g),c=[...new Set(b)]}u.forEach(h=>{this.mapImp.nodePathModels(h).forEach(p=>{const f=this.mapImp.pathModelNodes(p).map(m=>this.mapImp.featureProperties(m).models);c.filter(m=>f.includes(m)).length&&!l.includes(p)&&l.push(p)})})}else d.length&&(c.length?d.forEach(h=>{const p=this.mapImp.pathModelNodes(h).map(f=>this.mapImp.featureProperties(f).models);c.filter(f=>p.includes(f)).length&&!l.includes(h)&&l.push(h)}):l=d);return l=[...new Set([...l,...e])],l}},resetMapFilter:function(){const e=this.mapFilters.alert;let t;e.with?e.without||(t={HAS:"alert"}):e.without?t={NOT:{HAS:"alert"}}:t={AND:[{NOT:{HAS:"alert"}},{HAS:"alert"}]},t?this.mapImp.setVisibilityFilter(t):this.mapImp.clearVisibilityFilter()},alertMouseEnterEmitted:function(e){if(this.mapImp)if(e.value){let t;e.key==="alert"?t={HAS:"alert"}:e.key==="withoutAlert"&&(t={NOT:{HAS:"alert"}}),this.mapImp.setVisibilityFilter(t)}else this.resetMapFilter()},alertSelected:function(e){this.mapImp&&(e.key==="alert"?e.value?this.mapFilters.alert.with=!0:this.mapFilters.alert.with=!1:e.key==="withoutAlert"&&(e.value?this.mapFilters.alert.without=!0:this.mapFilters.alert.without=!1),this.resetMapFilter())},checkAllAlerts:function(e){this.mapImp&&(e.value?(this.mapFilters.alert.without=!0,this.mapFilters.alert.with=!0):(this.mapFilters.alert.without=!1,this.mapFilters.alert.with=!1),this.resetMapFilter())},systemSelected:function(e){this.mapImp&&this.mapImp.enableSystem(e.key,e.value)},checkAllSystems:function(e){this.mapImp&&this.systems[0].children.forEach(t=>this.mapImp.enableSystem(t.label,e))},ftuSelected:function(e){this.searchAndShowResult(e,!0)},layersSelected:function(e){this.mapImp&&this.mapImp.enableLayer(e.key,e.value)},checkAllLayers:function(e){this.mapImp&&e.keys.forEach(t=>this.mapImp.enableLayer(t,e.value))},taxonsSelected:function(e){this.mapImp&&this.mapImp.enableConnectivityByTaxonIds(e.key,e.value)},taxonMouseEnterEmitted:function(e){if(this.mapImp)if(e.value){clearTimeout(this.taxonLeaveDelay);let t=this.mapImp.taxonFeatureIds(e.key);this.mapImp.enableConnectivityByTaxonIds(e.key,e.value),this.mapImp.zoomToGeoJSONFeatures(t,{noZoomIn:!0})}else this.taxonLeaveDelay=setTimeout(()=>{this.mapImp.unselectGeoJSONFeatures(),e.selections.forEach(t=>{let r=e.checked.includes(t.taxon);this.mapImp.enableConnectivityByTaxonIds(t.taxon,r)})},1e3)},checkAllTaxons:function(e){this.mapImp&&this.mapImp.enableConnectivityByTaxonIds(e.keys,e.value)},pathwaysSelected:function(e){this.mapImp&&this.mapImp.enablePath(e.key,e.value)},checkAllPathways:function(e){this.mapImp&&e.keys.forEach(t=>this.mapImp.enablePath(t,e.value))},enablePanZoomEvents:function(e){this.mapImp.enablePanZoomEvents(e)},annotationEventCallback:function(e,t){if(t.type==="aborted")this.featureAnnotationSubmitted?this.featureAnnotationSubmitted=!1:this.rollbackAnnotationEvent(),this.annotationEntry=[];else if(t.type==="modeChanged")t.feature.mode==="direct_select"&&(this.doubleClickedFeature=!0),this.annotationSidebar&&t.feature.mode==="simple_select"&&this.activeDrawMode==="Deleted"&&this.annotationEventCallback({},{type:"aborted"});else if(t.type==="selectionChanged"){if(this.selectedDrawnFeature=t.feature.features.length===0?void 0:t.feature.features[0],e.feature.feature=this.selectedDrawnFeature,!this.activeDrawTool)if(this.connectionEntry={},this.selectedDrawnFeature){const r=this.existDrawnFeatures.find(n=>n.id===this.selectedDrawnFeature.id);r&&r.connection&&(this.connectionEntry=r.connection),this.annotationDrawModeEvent(e)}else this.annotationSidebar&&this.previousEditEvent.type==="updated"&&(this.annotationEntry=[{...this.previousEditEvent,resourceId:this.serverURL}],this.annotationEventCallback({},{type:"aborted"})),this.previousEditEvent={}}else{if(t.type==="created"||t.type==="updated"){t.type==="updated"&&t.feature.action&&(t.positionUpdated=t.feature.action==="move");const r=this.mapImp.refreshAnnotationFeatureGeometry(t.feature);e.feature.feature=r}t.type==="created"?this.drawnCreatedEvent=e:this.checkAndCreatePopups([e])}t.type==="updated"&&(this.previousEditEvent=t),t.type==="deleted"?this.previousDeletedEvent=t:this.previousDeletedEvent={}},eventCallback:function(){return(e,t,...r)=>{if(e==="annotation"){const n={feature:t,userData:r,eventType:e};this.annotationEventCallback(n,t)}else if(e!=="pan-zoom"){const n=t.label,i=[t.models],o=this.entry,a=this.biologicalSex,l=t.alert;let c;t.taxons&&(typeof t.taxons!="object"?c=JSON.parse(t.taxons):c=t.taxons);let u=[{dataset:t.dataset,biologicalSex:a,taxonomy:o,resource:i,label:n,feature:t,userData:r,eventType:e,provenanceTaxonomy:c,alert:l}];if(e==="click"){const d=Object.keys(t).includes("id");if(!d){u=[];const p=t.mapUUID;for(let[f,m]of Object.entries(t))if(f!=="mapUUID"){const g=m.label,b=[m.models];let T;m.taxons&&(typeof m.taxons!="object"?T=JSON.parse(m.taxons):T=m.taxons),u.push({dataset:m.dataset,biologicalSex:a,taxonomy:o,resource:b,label:g,feature:m,userData:r,eventType:e,provenanceTaxonomy:T,alert:m.alert,mapUUID:p})}}const h=d?t:t[0];if(this.viewingMode==="Neuron Connection")this.retrieveConnectedPaths([h.models]).then(p=>{this.zoomToFeatures(p)});else if(this.currentActive=h.models?h.models:"",this.activeDrawTool&&!this.isValidDrawnCreated){const p=h.featureId||this.existDrawnFeatures.find(f=>f.id===h.id);if(this.activeDrawTool==="LineString"&&p){const f=h.featureId?h.featureId:h.id,m=h.label?h.label:`Feature ${h.id}`;this.connectionEntry[` ${f}`]=Object.assign({label:m},Object.fromEntries(Object.entries(h).filter(([g])=>["featureId","models"].includes(g)).map(([g,b])=>[g==="featureId"?"id":g,b])))}}}else e==="mouseenter"&&this.viewingMode!=="Neuron Connection"&&(this.currentHover=t.models?t.models:"");t&&t.type!=="marker"&&e==="click"&&this.viewingMode!=="Neuron Connection"&&!this.activeDrawTool&&this.checkAndCreatePopups(u),this.$emit("resource-selected",u)}else this.$emit("pan-zoom-callback",t)}},changeViewingMode:function(e){e&&(this.viewingMode=e),this.manualAbortedOnClose()},removeActiveTooltips:function(){this.mapImp&&this.mapImp.removePopup(),this.$el.querySelectorAll(".flatmap-tooltip-popup").forEach(e=>e.remove())},createTooltipForConnectivity:function(e,t){const r=document.createElement("div");r.classList.add("flatmap-feature-label"),e.forEach((n,i)=>{const{label:o}=n;if(r.append(_Le(o)),i+1<e.length){const a=document.createElement("hr");r.appendChild(a)}}),this.mapImp.showPopup(t,r,{className:"custom-popup flatmap-tooltip-popup",positionAtLastClick:!1,preserveSelection:!0})},showConnectivityTooltips:function(e){const{connectivityInfo:t,data:r}=e,n=[],i=[],o=[],a=[],l=[];if(r.length?r.forEach(c=>{o.push({id:c.id,label:c.label})}):this.removeActiveTooltips(),t&&t.featureId&&n.push(...t.featureId),this.mapImp){if(o.forEach((u,d)=>{const{id:h,label:p}=u,f=this.mapImp.search(h);if(f!=null&&f.results.length){const m=f==null?void 0:f.results[0].featureId;a.push({featureId:m,id:h,label:p})}else l.push(u)}),a.length){let u=a[0].featureId;this.mapImp.annotations.forEach(d=>{const h=d["anatomical-nodes"];if(h){const p=h.join("");a.every(f=>p.indexOf(f.id)!==-1)&&(u=d.featureId,i.push(u))}}),this.createTooltipForConnectivity(a,u)}else l.push(...o),this.removeActiveTooltips();l.length&&this.emitConnectivityGraphError(l);const c=[...this.mapImp.modelFeatureIdList(n),...i];this.mapImp.selectGeoJSONFeatures(c)}},showConnectivitiesByReference:function(e){this.searchConnectivitiesByReference(e).then(t=>{this.mapImp.selectFeatures(t)})},searchConnectivitiesByReference:async function(e){const t=sessionStorage.getItem("flatmap-knowledge");let r=[];return t?r=await Xrr(e):r=await Krr(this.mapImp,e,this.flatmapQueries),r},emitConnectivityGraphError:function(e){this.$emit("connectivity-graph-error",{data:{errorData:e,errorMessage:DAr}})},checkConnectivityTooltipEntry:function(e){return e!=null&&e.length?e.find(t=>{var r,n;return((r=t==null?void 0:t.destinations)==null?void 0:r.length)||((n=t==null?void 0:t.components)==null?void 0:n.length)})!==void 0:!1},changeConnectivitySource:async function(e){const{featureId:t,connectivitySource:r}=e;await this.flatmapQueries.queryForConnectivityNew(this.mapImp,t[0],r),this.tooltipEntry=this.tooltipEntry.map(n=>n.featureId[0]===t[0]?this.flatmapQueries.updateTooltipData(n):n),this.checkConnectivityTooltipEntry()&&this.$emit("connectivity-info-open",this.tooltipEntry)},checkAndCreatePopups:async function(e){if(this.viewingMode==="Annotation"){const t=e.filter(r=>r.feature).map(r=>r.feature);if(t.length>0)if(this.annotationSidebar&&this.previousDeletedEvent.type==="deleted"&&(this.annotationEntry=[{...this.previousDeletedEvent,resourceId:this.serverURL}],this.annotationEventCallback({},{type:"aborted"})),this.annotationEntry=[],t.forEach(r=>{this.annotationEntry.push({...r,resourceId:this.serverURL,featureId:r.featureId?r.featureId:r.feature.id})}),t[0].feature)this.activeDrawTool||this.activeDrawMode||this.isValidDrawnCreated?(this.featureAnnotationSubmitted=!1,this.activeDrawTool&&this.createConnectivityBody(),this.displayTooltip(t[0].feature.id,FAr(t[0].feature.geometry))):this.rollbackAnnotationEvent();else{const r=this.annotationEntry.filter(n=>n.featureId&&n.models).map(n=>n.models);r.length>0&&this.displayTooltip(r)}else this.annotation={}}else{Yrr(this.mapImp,this.flatmapQueries);let t=[];for(let n=0;n<e.length;n++){const i=e[n];t.push(await this.getKnowledgeTooltip(i))}this.tooltipEntry=await Promise.all(t);const r=this.tooltipEntry.filter(n=>n).map(n=>n.featureId[0]);r.length>0&&this.displayTooltip(r)}},getKnowledgeTooltip:async function(e){const t=await this.flatmapQueries.retrieveFlatmapKnowledgeForEvent(this.mapImp,e);let r=await this.flatmapQueries.createTooltipData(this.mapImp,e);if(t&&t[0]||e.feature.hyperlinks&&e.feature.hyperlinks.length>0)r.featuresAlert=e.alert,r.knowledgeSource=qee(this.mapImp),r.mapId=this.mapImp.provenance.id,r.mapuuid=this.mapImp.provenance.uuid;else{r={...r,origins:[e.label],originsWithDatasets:[{id:e.resource[0],name:e.label}],components:[],componentsWithDatasets:[],destinations:[],destinationsWithDatasets:[]};let n=[];const i=await this.mapImp.queryPathsForFeatures(e.resource);i.length&&(i.forEach(o=>{n.push(...this.mapImp.pathModelNodes(o));const a=this.mapImp.search(o);let l;for(let c=0;c<a.results.length;c++){l=a.results[c].featureId;const u=this.mapImp.annotation(l);if(l&&u!=null&&u.label)break}if(l){const c=this.mapImp.featureProperties(l);r.components.includes(c.label)||(r.components.push(c.label),r.componentsWithDatasets.push({id:c.models,name:c.label}))}}),n=[...new Set(n)].filter(o=>o!==e.feature.featureId),n.forEach(o=>{const a=this.mapImp.featureProperties(o);r.destinations.includes(a.label)||(r.destinations.push(a.label),r.destinationsWithDatasets.push({id:a.models,name:a.label}))}))}return r},popUpCssHacks:function(){const e=document.querySelector(".flatmap-tooltip-popup"),t=document.querySelector(".maplibregl-popup-close-button");e&&(e.style.display="none"),t.style.display="block",this.$refs.tooltip.$el.style.display="flex",t.onclick=()=>{this.$emit("connectivity-info-close"),e&&(e.style.display="block")}},closeTooltip:function(){this.$refs.tooltip&&(this.$refs.tooltip.$el.style.display="none"),document.querySelectorAll(".maplibregl-popup").forEach(e=>{e.style.display="none"})},createTooltipFromNeuronCuration:async function(e){this.tooltipEntry=await this.flatmapQueries.createTooltipData(this.mapImp,e),this.displayTooltip(e.resource[0])},createTooltipFromEntityCuration:async function(e){this.tooltipEntry=await this.flatmapQueries.createTooltipData(this.mapImp,e);let t=[],r=[],n=[];const i=await this.mapImp.queryPathsForFeatures(e.resource);i.length&&(i.forEach(o=>{t.push(...this.mapImp.pathModelNodes(o))}),t=[...new Set(t)].filter(o=>o!==e.feature.featureId),t.forEach(o=>{const a=this.mapImp.featureProperties(o);r.includes(a.label)||(r.push(a.label),n.push({id:a.models,name:a.label}))}),this.tooltipEntry={...this.tooltipEntry,origins:[e.label],originsWithDatasets:[{id:e.resource[0],name:e.label}],components:[],componentsWithDatasets:[],destinations:r,destinationsWithDatasets:n},this.displayTooltip(e.resource[0]))},showPopup:function(e,t,r){let n=r;this.mapImp&&(n?n.className||(n.className="custom-popup"):n={className:"custom-popup",positionAtLastClick:!0},this.mapImp.showPopup(e,t,n))},showMarkerPopup:function(e,t,r){this.mapImp&&this.mapImp.showMarkerPopup(e,t,r)},closeMinimap:function(){let e=this.$refs.flatmapContainer.querySelector(".maplibregl-ctrl-minimap");this.minimapSmall?(e.classList.add("enlarge"),e.classList.remove("shrink")):(e.classList.add("shrink"),e.classList.remove("enlarge")),this.minimapSmall=!this.minimapSmall},addResizeButtonToMinimap:function(){let e=this.$refs.flatmapContainer.querySelector(".maplibregl-ctrl-minimap");e&&(this.$refs.minimapResize&&this.$refs.minimapResize.$el.parentNode&&this.$refs.minimapResize.$el.parentNode.removeChild(this.$refs.minimapResize.$el),e.appendChild(this.$refs.minimapResize.$el),this.minimapResizeShow=!0)},setHelpMode:function(e){const t=this.hoverVisibilities.length,r=t-1,n=this.hoverVisibilities[this.helpModeActiveIndex];if(n){const i=n==null?void 0:n.refs,o=n==null?void 0:n.ref,a=this.$refs[i||o];if(a){const{parentElement:l,nextElementSibling:c}=a.$el,u=d=>d&&(d.classList.contains("pathway-container")||d.classList.contains("pathway-location"));(u(l)||u(c))&&(this.requiresDrawer?this.drawerOpen=!0:this.helpModeActiveIndex+=1)}else this.helpModeActiveIndex+=1}e||(this.helpModeActiveIndex=this.helpModeInitialIndex),this.viewingMode!=="Annotation"&&this.helpModeActiveIndex>9&&(this.helpModeActiveIndex=r),e&&this.helpModeActiveIndex>=r&&this.$emit("help-mode-last-item",!0),e&&!this.helpModeDialog?(this.inHelp=!0,this.hoverVisibilities.forEach(i=>{i.value=!0})):e&&this.helpModeDialog&&t>this.helpModeActiveIndex?this.helpModeActiveIndex>-1?(this.closeFlatmapHelpPopup(),setTimeout(()=>{this.inHelp=!1,this.hoverVisibilities.forEach(i=>{i.value=!1}),this.showTooltip(this.helpModeActiveIndex,200)},300)):this.helpModeActiveIndex===-1&&this.openFlatmapHelpPopup():(this.inHelp=!1,this.hoverVisibilities.forEach(i=>{i.value=!1}),this.closeFlatmapHelpPopup())},showTooltip:function(e,t=500){this.inHelp||(clearTimeout(this.tooltipWait[e]),this.tooltipWait[e]=setTimeout(()=>{this.hoverVisibilities[e].value=!0,this.$emit("shown-tooltip")},t))},hideTooltip:function(e,t=500){this.inHelp||(clearTimeout(this.tooltipWait[e]),this.tooltipWait[e]=setTimeout(()=>{this.hoverVisibilities[e].value=!1},t))},displayTooltip:function(e,t=void 0){let r,n={className:"flatmapvuer-popover"};if(t)r=e,n.annotationFeatureGeometry=t;else{const i=Array.isArray(e)?e[0]:e;r=this.mapImp.modelFeatureIds(i)[0],this.activeDrawTool||(n.positionAtLastClick=!0)}this.connectivityInfoSidebar&&this.tooltipEntry.length&&this.viewingMode!=="Annotation"&&this.checkConnectivityTooltipEntry(this.tooltipEntry)&&this.$emit("connectivity-info-open",this.tooltipEntry),this.annotationSidebar&&this.viewingMode==="Annotation"&&this.$emit("annotation-open",{annotationEntry:this.annotationEntry,commitCallback:this.commitAnnotationEvent}),!this.disableUI&&(this.viewingMode==="Annotation"&&!this.annotationSidebar||this.viewingMode==="Exploration"&&!this.connectivityInfoSidebar)&&(this.tooltipDisplay=!0,this.$nextTick(()=>{this.mapImp.showPopup(r,this.$refs.tooltip.$el,n),this.popUpCssHacks()}))},moveMap:function(e,t={}){if(this.mapImp){const{offsetX:r=0,offsetY:n=0,zoom:i=4}=t,o=this.mapImp.map,a=this.mapImp.bounds.toArray();this.mapImp.zoomToFeatures(e,{noZoomIn:!0}),this.showPathwaysDrawer(!1),a!=null&&a.length&&setTimeout(()=>{o.fitBounds(a,{offset:[r,n],zoom:i,animate:!0})})}},openFlatmapHelpPopup:function(){if(this.mapImp){let e=this.mapImp.modelFeatureIds("UBERON:0000948");e&&e.length>0&&(this.mapImp.showPopup(e[0],"Click for more information",{anchor:"top",className:"flatmap-popup-popper"}),this.$emit("shown-map-tooltip"))}},closeFlatmapHelpPopup:function(){this.$el.querySelectorAll(".maplibregl-popup-close-button").forEach(e=>{e.click()})},getLabels:function(){let e=[];if(this.mapImp){let t=this.mapImp.annotations;for(let r of t.values())r.label&&e.push(r.label);return Array.from(new Set(e))}},getVisibilityState:function(e){if(["alertSelection","pathwaysSelection","taxonSelection"].forEach(t=>{let r=this.$refs[t];r&&(e[t]=r.getState())}),this.$refs.treeControls){const t=this.$refs.treeControls.$refs.regionTree.getCheckedKeys();e.systemsSelection=t.filter(r=>!r.includes("."))}},setVisibilityState:function(e){["alertSelection","pathwaysSelection","taxonSelection"].forEach(t=>{const r=e[t];if(r){const n=this.$refs[t];n&&n.setState(r)}}),"systemsSelection"in e&&this.$refs.treeControls&&(this.$refs.treeControls.$refs.regionTree.setCheckedKeys(e.systemsSelection),this.systems[0].children.forEach(t=>{this.mapImp.enableSystem(t.key,e.systemsSelection.includes(t.key))}))},getState:function(){if(this.mapImp){let e={entry:this.entry,viewport:this.mapImp.getState()};const t=this.mapImp.getIdentifier();return this.biologicalSex?e.biologicalSex=this.biologicalSex:t&&t.biologicalSex&&(e.biologicalSex=t.biologicalSex),t&&t.uuid&&(e.uuid=t.uuid),e.viewingMode=this.viewingMode,e.searchTerm=this.searchTerm,e.flightPath3D=this.flightPath3DRadio,e.colour=this.colourRadio,e.outlines=this.outlinesRadio,e.background=this.currentBackground,this.getVisibilityState(e),e}},setState:function(e){e&&(this.mapImp&&e.entry&&this.entry==e.entry&&(!e.biologicalSex||e.biologicalSex===this.biologicalSex)?this.restoreMapState(e):this.createFlatmap(e),this.setStateRequired=!1)},restoreMapState:function(e){if(e){if(e.viewport&&this.mapImp.setState(e.viewport),e.viewingMode&&this.changeViewingMode(e.viewingMode),"flightPath3D"in e&&this.setFlightPath3D(e.flightPath3D),"colour"in e&&this.setColour(e.colour),"outlines"in e&&this.setOutlines(e.outlines),e.background&&this.backgroundChangeCallback(e.background),e.searchTerm){const t=e.searchTerm;e.viewingMode==="Neuron Connection"?this.retrieveConnectedPaths([t]).then(r=>{this.zoomToFeatures(r)}):this.searchAndShowResult(t,!0)}this.setVisibilityState(e)}},setFlightPathInfo:function(e){(e===1.6||e>1.6)&&(this.displayFlightPathOption=!0,this.setFlightPath3D(!1))},createFlatmap:function(e){if(!this.mapImp&&!this.loading){this.loading=!0;let t=!1;this.displayMinimap&&(t={position:"top-right"});let r={taxon:this.entry};this.uuid&&(r.uuid=this.uuid),e?(e.uuid?r={uuid:e.uuid}:e.entry&&(r.taxon=e.entry),e.biologicalSex?r.biologicalSex=e.biologicalSex:r.taxon==="NCBITaxon:9606"&&(r.biologicalSex="PATO:0000384")):this.biologicalSex&&(r.biologicalSex=this.biologicalSex),this.mapManagerRef.loadMap(r,this.eventCallback(),{minZoom:this.minZoom,tooltips:this.tooltips,minimap:t,container:this.$refs.display}).then(n=>{this.mapImp=n,this.serverURL=this.mapImp.makeServerUrl("").slice(0,-1);let i=this.mapImp.details.version;this.setFlightPathInfo(i);const o=this._stateToBeSet?this._stateToBeSet:e;this.onFlatmapReady(o),this.$nextTick(()=>this.restoreMapState(o))})}else e&&(this._stateToBeSet={...e},this.mapImp&&!this.loading&&this.restoreMapState(this._stateToBeSet))},computePathControlsMaximumHeight(){const e=this.$refs.display;if(e){const t=getComputedStyle(e),r=parseInt(t.paddingTop)+parseInt(t.paddingBottom),n=e.clientHeight-r;this.pathwaysMaxHeight=n-170}},mapResize:function(){try{this.computePathControlsMaximumHeight(),this.mapImp&&(this.mapImp.resize(),this.showMinimap(this.displayMinimap))}catch{console.error("Map resize error")}},onFlatmapReady:function(e){var t;this.sensor=s.markRaw(new nnr(this.$refs.display,this.mapResize)),((t=this.mapImp.options)==null?void 0:t.style)==="functional"&&(this.isFC=!0),this.mapImp.setBackgroundOpacity(1),this.backgroundChangeCallback(this.currentBackground),this.pathways=this.mapImp.pathTypes(),this.processSystems(this.mapImp.getSystems()),this.processTaxon(this.mapImp.taxonIdentifiers,e?e.taxonSelection:void 0),this.containsAlert="alert"in this.mapImp.featureFilterRanges(),this.addResizeButtonToMinimap(),this.loading=!1,this.computePathControlsMaximumHeight(),this.mapResize(),this.setInitMapState(),this.$emit("ready",this)},showMinimap:function(e){this.mapImp&&this.mapImp.showMinimap(e)},showPathwaysDrawer:function(e){this.drawerOpen=e},searchAndShowResult:function(e,t){var r;if(this.mapImp){if(e===void 0||e==="")return this.mapImp.clearSearchResults(),this.viewingMode==="Exploration"?this.$emit("connectivity-info-close"):this.viewingMode==="Annotation"&&this.manualAbortedOnClose(),this.searchTerm="",!0;{const n=this.mapImp.search(e);if((r=n==null?void 0:n.results)!=null&&r.length){if(this.mapImp.showSearchResults(n),t){let i;for(let o=0;o<n.results.length;o++){i=n.results[o].featureId;const a=this.mapImp.annotation(i);if(i&&a!=null&&a.label)break}if(i){const o=this.mapImp.featureProperties(i),a={resource:[o.source],feature:{...o,models:o.models||o.source},label:o.label,provenanceTaxonomy:o.taxons};this.viewingMode==="Exploration"||this.viewingMode==="Annotation"?this.checkAndCreatePopups([a]):this.viewingMode==="Neuron Connection"&&this.retrieveConnectedPaths(a.resource).then(l=>{this.zoomToFeatures(l)}),this.mapImp.showPopup(i,_Le(o.label),{className:"custom-popup",positionAtLastClick:!1,preserveSelection:!0})}}return this.searchTerm=e,!0}else this.mapImp.clearSearchResults()}}return!1},searchSuggestions:function(e){return this.mapImp?this.mapImp.search(e):[]},onActionClick:function(e){Yse.emit("onActionClick",e)}},props:{entry:{type:String,required:!0},uuid:String,biologicalSex:{type:String,default:""},minZoom:{type:Number,default:1},tooltips:{type:Boolean,default:!0},helpMode:{type:Boolean,default:!1},helpModeActiveItem:{type:Number,default:0},helpModeDialog:{type:Boolean,default:!1},helpModeLastItem:{type:Boolean,default:!1},helpModeInitialIndex:{type:Number,default:0},renderAtMounted:{type:Boolean,default:!0},displayMinimap:{type:Boolean,default:!1},displayWarning:{type:Boolean,default:!1},enableOpenMapUI:{type:Boolean,default:!1},openMapOptions:{type:Array,default:function(){return[{display:"Open AC Map",key:"AC"},{display:"Open FC Map",key:"FC"},{display:"Open 3D Human Map",key:"3D"}]}},showStarInLegend:{type:Boolean,default:!1},isLegacy:{type:Boolean,default:!1},displayLatestChanges:{type:Boolean,default:!1},state:{type:Object,default:void 0},mapManager:{type:Object,default:void 0},flatmapAPI:{type:String,default:"https://mapcore-demo.org/current/flatmap/v3/"},sparcAPI:{type:String,default:"https://api.sparc.science/"},disableUI:{type:Boolean,default:!1},connectivityInfoSidebar:{type:Boolean,default:!1},annotationSidebar:{type:Boolean,default:!1}},provide(){return{flatmapAPI:this.flatmapAPI,sparcAPI:this.sparcAPI,userApiKey:this.userToken}},data:function(){return{sensor:null,mapManagerRef:void 0,flatmapQueries:void 0,annotationEntry:[],tooltipDisplay:!1,serverURL:void 0,layers:[],pathways:[],initMapState:s.markRaw({}),sckanDisplay:[{label:"Display Path with SCKAN",key:"VALID"}],systems:[],taxonConnectivity:[],pathwaysMaxHeight:1e3,tooltipWait:s.markRaw([]),hoverVisibilities:[{value:!1,ref:"markerPopover"},{value:!1,ref:"zoomInPopover"},{value:!1,ref:"zoomOutPopover"},{value:!1,ref:"zoomFitPopover"},{value:!1,ref:"openMapPopover"},{value:!1,ref:"settingsPopover"},{value:!1,ref:"checkBoxPopover"},{value:!1,ref:"warningPopover"},{value:!1,ref:"whatsNewPopover"},{value:!1,ref:"featuredMarkerPopover"},{value:!1,refs:"toolbarPopover",ref:"editPopover"},{value:!1,refs:"toolbarPopover",ref:"deletePopover"},{value:!1,refs:"toolbarPopover",ref:"pointPopover"},{value:!1,refs:"toolbarPopover",ref:"lineStringPopover"},{value:!1,refs:"toolbarPopover",ref:"polygonPopover"},{value:!1,refs:"toolbarPopover",ref:"connectionPopover"}],helpModeActiveIndex:this.helpModeInitialIndex,yellowstar:tnr,isFC:!1,inHelp:!1,currentBackground:"white",availableBackground:["white","lightskyblue","black"],loading:!1,flatmapMarker:qrr,tooltipEntry:[],connectivityDataSource:"",connectivityTooltipVisible:!1,drawerOpen:!1,flightPath3DRadio:!1,displayFlightPathOption:!1,colourRadio:!0,outlinesRadio:!0,minimapResizeShow:!1,minimapSmall:!1,currentActive:"",selectedDrawnFeature:void 0,currentHover:"",viewingMode:"Exploration",viewingModes:{Exploration:"Find relevant research and view detail of neural pathways by selecting a pathway to view its connections and data sources","Neuron Connection":"Discover Neuron connections by selecting a neuron and viewing its associated network connections",Annotation:["View feature annotations","Add, comment on and view feature annotations"]},annotationFrom:"Anyone",annotatedSource:["Anyone","Me","Others"],openMapRef:void 0,backgroundIconRef:void 0,toolbarOptions:["Edit","Delete","Point","LineString","Polygon","Connection"],annotator:void 0,userInformation:void 0,activeDrawMode:void 0,activeDrawTool:void 0,featureAnnotationSubmitted:!1,drawnCreatedEvent:{},previousEditEvent:{},previousDeletedEvent:{},connectionEntry:{},existDrawnFeatures:[],doubleClickedFeature:!1,containsAlert:!1,alertOptions:[{label:"Display Path With Alerts",key:"alert",enabled:!0},{label:"Display Path Without Alerts",key:"withoutAlert",enabled:!0}],mapFilters:s.markRaw({alert:{with:!0,without:!0}}),searchTerm:"",taxonLeaveDelay:void 0}},computed:{...HAr(BAr,["userToken"]),isValidDrawnCreated:function(){return Object.keys(this.drawnCreatedEvent).length>0},requiresDrawer:function(){var e,t,r;if(this.loading)return this.drawerOpen=!1,!1;if(this.isFC){if(((e=this.systems)==null?void 0:e.length)>0||this.containsAlert&&this.alertOptions||((t=this.pathways)==null?void 0:t.length)>0||((r=this.taxonConnectivity)==null?void 0:r.length)>0)return this.drawerOpen=!0,!0}else return this.drawerOpen=!0,!0;return this.drawerOpen=!1,!0},modeDescription:function(){let e=this.viewingModes[this.viewingMode];return this.viewingMode==="Annotation"?this.userInformation?e[1]:e[0]:e}},watch:{entry:function(){this.state||this.createFlatmap()},helpMode:function(e,t){e!==t&&this.setHelpMode(e)},helpModeActiveItem:function(){this.helpMode&&(this.helpModeActiveIndex+=1,this.setHelpMode(this.helpMode))},state:{handler:function(e,t){e!==t&&(this.mapManagerRef?this.setState(e):this.setStateRequired=!0)},immediate:!0,deep:!0},viewingMode:function(e){e==="Annotation"?(this.loading=!0,this.annotator.authenticate(this.userToken).then(t=>{t.name&&t.email&&t.canUpdate&&(this.showAnnotator(!0),this.userInformation=t,this.setFeatureAnnotated(),this.addAnnotationFeature()),this.loading=!1})):this.showAnnotator(!1)},disableUI:function(e){e&&this.closeTooltip()},activeDrawTool:function(e){let t=[],r={x:null,y:null};const n=this.$el.querySelector(".maplibregl-canvas"),i=()=>{n.removeEventListener("keydown",o),n.removeEventListener("click",a)},o=l=>{if(!["Escape","Enter"].includes(l.key))return;const c=e==="Point"&&t.length===1||e==="LineString"&&t.length>=2||e==="Polygon"&&t.length>=3;(l.key==="Escape"||l.key==="Enter"&&!c)&&(this.activeDrawTool=void 0),i()},a=l=>{const c=n.getBoundingClientRect(),u=l.clientX-c.left,d=l.clientY-c.top;if(Math.sqrt((u-r.x)**2+(d-r.y)**2)<8){this.isValidDrawnCreated||(this.activeDrawTool=void 0),i();return}r={x:u,y:d},t.push(r)};e&&(i(),n.addEventListener("keydown",o),n.addEventListener("click",a))}},created:function(){this.mapManager?this.mapManagerRef=this.mapManager:(this.mapManagerRef=s.markRaw(new jse(this.flatmapAPI,{container:void 0})),this.$emit("mapmanager-loaded",this.mapManagerRef))},mounted:function(){this.openMapRef=s.shallowRef(this.$refs.openMapRef),this.backgroundIconRef=s.shallowRef(this.$refs.backgroundIconRef),this.tooltipWait.length=this.hoverVisibilities.length,this.flatmapQueries=s.markRaw(new Zrr),this.flatmapQueries.initialise(this.flatmapAPI),this.state?this.setStateRequired&&this.setState(this.state):this.renderAtMounted&&this.createFlatmap(),xLe()}},jAr={class:"flatmap-container",ref:"flatmapContainer","element-loading-text":"Loading...","element-loading-background":"rgba(0, 0, 0, 0.3)"},UAr={style:{height:"100%",width:"100%",position:"relative","overflow-y":"none"}},GAr={style:{height:"100%",width:"100%"},ref:"display"},WAr={class:"beta-popovers"},qAr={key:2,class:"warning-text"},ZAr={class:"bottom-right-control"},XAr=["innerHTML"],KAr=["innerHTML"],YAr={style:{"margin-bottom":"2px"}},JAr={key:0,class:"viewing-mode-title"},eOr=["onClick"],tOr=["onClick"];function rOr(e,t,r,n,i,o){const a=s.resolveComponent("map-svg-sprite-color"),l=O_e,c=Uh,u=nH,d=lee,h=s.resolveComponent("DrawToolbar"),p=s.resolveComponent("map-svg-icon"),f=QLe,m=s.resolveComponent("tree-controls"),g=bLe,b=M_e,T=Wwe,Q=lE,L=cE,S=Fee,C=rH,E=lLe,M=cLe,P=s.resolveComponent("Tooltip"),O=yLe,N=jee;return s.withDirectives((s.openBlock(),s.createElementBlock("div",jAr,[s.createVNode(a),s.createElementVNode("div",UAr,[s.createElementVNode("div",GAr,null,512),s.withDirectives(s.createElementVNode("div",WAr,[s.createElementVNode("div",null,[s.createVNode(u,{placement:"right","popper-class":"warning-popper flatmap-popper",teleported:!1,visible:e.hoverVisibilities[7].value,ref:"warningPopover"},{reference:s.withCtx(()=>[s.createElementVNode("div",{class:"warning-icon",onMouseover:t[7]||(t[7]=H=>o.showTooltip(7)),onMouseout:t[8]||(t[8]=H=>o.hideTooltip(7))},[r.displayWarning||r.isLegacy?(s.openBlock(),s.createBlock(c,{key:0},{default:s.withCtx(()=>[s.createVNode(l)]),_:1})):s.createCommentVNode("",!0),r.isLegacy?(s.openBlock(),s.createElementBlock(s.Fragment,{key:1},[t[33]||(t[33]=s.createElementVNode("span",{class:"warning-text"},"Legacy Map",-1)),s.createElementVNode("div",{class:"latest-map-text",onClick:t[6]||(t[6]=(...H)=>o.viewLatestMap&&o.viewLatestMap(...H))}," Click here for the latest map ")],64)):r.displayWarning?(s.openBlock(),s.createElementBlock("span",qAr,"Beta")):s.createCommentVNode("",!0)],32)]),default:s.withCtx(()=>[r.isLegacy?(s.openBlock(),s.createElementBlock("p",{key:0,onMouseover:t[0]||(t[0]=H=>o.showTooltip(7)),onMouseout:t[1]||(t[1]=H=>o.hideTooltip(7))}," This is a legacy map, you may view the latest map instead. ",32)):e.isFC?(s.openBlock(),s.createElementBlock("p",{key:1,onMouseover:t[2]||(t[2]=H=>o.showTooltip(7)),onMouseout:t[3]||(t[3]=H=>o.hideTooltip(7))},t[31]||(t[31]=[s.createTextVNode(" This map displays the connectivity of individual neurons. Specifically, those which align with (parts of) the neuron populations from the "),s.createElementVNode("a",{href:"https://sparc.science/resources/1ZUKXU2YmLcn2reCyXjlew",target:"_blank"}," ApiNATOMY ",-1),s.createTextVNode(" models available in "),s.createElementVNode("a",{href:"https://sparc.science/resources/6eg3VpJbwQR4B84CjrvmyD",target:"_blank"}," SCKAN ",-1),s.createTextVNode(". ")]),32)):(s.openBlock(),s.createElementBlock("p",{key:2,onMouseover:t[4]||(t[4]=H=>o.showTooltip(7)),onMouseout:t[5]||(t[5]=H=>o.hideTooltip(7))},t[32]||(t[32]=[s.createTextVNode(" This map displays the connectivity of neuron populations. Specifically, those from the primarily rat-based "),s.createElementVNode("a",{href:"https://sparc.science/resources/1ZUKXU2YmLcn2reCyXjlew",target:"_blank"}," ApiNATOMY ",-1),s.createTextVNode(" models available in "),s.createElementVNode("a",{href:"https://sparc.science/resources/6eg3VpJbwQR4B84CjrvmyD",target:"_blank"}," SCKAN ",-1),s.createTextVNode(". New connectivity and species specificity will be added as the SPARC program progresses. ")]),32))]),_:1},8,["visible"])]),r.displayLatestChanges?(s.openBlock(),s.createBlock(u,{key:0,placement:"right",teleported:!1,trigger:"manual","popper-class":"warning-popper flatmap-popper",visible:e.hoverVisibilities[8].value,ref:"whatsNewPopover"},{reference:s.withCtx(()=>[r.displayLatestChanges?(s.openBlock(),s.createElementBlock("div",{key:0,class:"latest-changesicon",onMouseover:t[9]||(t[9]=H=>o.showTooltip(8)),onMouseout:t[10]||(t[10]=H=>o.hideTooltip(8))},[s.createVNode(c,null,{default:s.withCtx(()=>[s.createVNode(l)]),_:1}),t[34]||(t[34]=s.createElementVNode("span",{class:"warning-text"},"What's new?",-1))],32)):s.createCommentVNode("",!0)]),default:s.withCtx(()=>t[35]||(t[35]=[s.createElementVNode("b",null,"Connectivity References",-1),s.createElementVNode("p",null," Connectivity references have been improved and available in various formats. ",-1),s.createElementVNode("b",null,"Improved state storing",-1),s.createElementVNode("p",null," Current selection and visibility filters are now stored when creating a permalink. ",-1)])),_:1},8,["visible"])):s.createCommentVNode("",!0)],512),[[s.vShow,!r.disableUI]]),s.withDirectives(s.createVNode(c,{class:s.normalizeClass(["minimap-resize",{enlarge:e.minimapSmall,shrink:!e.minimapSmall}]),ref:"minimapResize",onClick:o.closeMinimap},{default:s.withCtx(()=>[s.createVNode(d)]),_:1},8,["class","onClick"]),[[s.vShow,e.minimapResizeShow]]),e.viewingMode==="Annotation"&&e.userInformation&&!r.disableUI?(s.openBlock(),s.createBlock(h,{key:0,mapCanvas:{containerHTML:this.$el,class:".maplibregl-canvas"},toolbarOptions:e.toolbarOptions,activeDrawTool:e.activeDrawTool,activeDrawMode:e.activeDrawMode,newlyDrawnEntry:e.drawnCreatedEvent,connectionEntry:e.connectionEntry,hoverVisibilities:e.hoverVisibilities,onClickToolbar:o.toolbarEvent,onFeatureTooltip:o.connectedFeatureTooltip,onConfirmDrawn:o.confirmDrawnFeature,onCancelDrawn:o.cancelDrawnFeature,onShowTooltip:o.showTooltip,onHideTooltip:o.hideTooltip,ref:"toolbarPopover"},null,8,["mapCanvas","toolbarOptions","activeDrawTool","activeDrawMode","newlyDrawnEntry","connectionEntry","hoverVisibilities","onClickToolbar","onFeatureTooltip","onConfirmDrawn","onCancelDrawn","onShowTooltip","onHideTooltip"])):s.createCommentVNode("",!0),s.withDirectives(s.createElementVNode("div",ZAr,[s.createVNode(u,{content:"Zoom in",placement:"left",teleported:!1,trigger:"manual",width:"70","popper-class":"flatmap-popper",visible:e.hoverVisibilities[1].value,ref:"zoomInPopover"},{reference:s.withCtx(()=>[s.createElementVNode("div",{class:"icon-button-container",onClick:t[11]||(t[11]=H=>o.zoomIn()),onMouseover:t[12]||(t[12]=H=>o.showTooltip(1)),onMouseout:t[13]||(t[13]=H=>o.hideTooltip(1))},[s.createVNode(p,{class:"icon-button zoomIn",icon:"zoomIn"})],32)]),_:1},8,["visible"]),s.createVNode(u,{content:"Zoom out",placement:"top-end",teleported:!1,trigger:"manual",width:"70","popper-class":"flatmap-popper",visible:e.hoverVisibilities[2].value,ref:"zoomOutPopover"},{reference:s.withCtx(()=>[s.createElementVNode("div",{class:"icon-button-container",onClick:t[14]||(t[14]=H=>o.zoomOut()),onMouseover:t[15]||(t[15]=H=>o.showTooltip(2)),onMouseout:t[16]||(t[16]=H=>o.hideTooltip(2))},[s.createVNode(p,{class:"icon-button zoomOut",icon:"zoomOut"})],32)]),_:1},8,["visible"]),s.createVNode(u,{content:"Reset",placement:"top",teleported:!1,trigger:"manual",width:"70","popper-class":"flatmap-popper",visible:e.hoverVisibilities[3].value,ref:"zoomFitPopover"},{reference:s.withCtx(()=>[s.createElementVNode("div",{class:"icon-button-container",onClick:t[17]||(t[17]=H=>o.resetView()),onMouseover:t[18]||(t[18]=H=>o.showTooltip(3)),onMouseout:t[19]||(t[19]=H=>o.hideTooltip(3))},[s.createVNode(p,{class:"icon-button fitWindow",icon:"fitWindow"})],32)]),default:s.withCtx(()=>[t[36]||(t[36]=s.createElementVNode("div",null,[s.createTextVNode(" Fit to "),s.createElementVNode("br"),s.createTextVNode(" window ")],-1))]),_:1},8,["visible"])],512),[[s.vShow,!r.disableUI]]),s.createVNode(u,{content:"Change pathway visibility",placement:"right",teleported:!1,trigger:"manual",offset:-18,"popper-class":"flatmap-popper",visible:e.hoverVisibilities[6].value,ref:"checkBoxPopover"},{reference:s.withCtx(()=>[s.withDirectives(s.createElementVNode("div",{class:s.normalizeClass(["pathway-location",{open:e.drawerOpen,close:!e.drawerOpen}])},[s.withDirectives((s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(["pathway-container",{open:e.drawerOpen,close:!e.drawerOpen}]),style:s.normalizeStyle({"max-height":e.pathwaysMaxHeight+"px"})},[e.isFC?s.createCommentVNode("",!0):(s.openBlock(),s.createBlock(f,{key:0,class:"svg-legends-container"})),r.showStarInLegend?(s.openBlock(),s.createBlock(u,{key:1,content:"Location of the featured dataset",placement:"right",teleported:!0,trigger:"manual",width:"max-content",offset:-10,"popper-class":"flatmap-popper flatmap-teleport-popper",visible:e.hoverVisibilities[9].value,ref:"featuredMarkerPopover"},{reference:s.withCtx(()=>[s.withDirectives(s.createElementVNode("div",{class:"yellow-star-legend",innerHTML:e.yellowstar,onMouseover:t[20]||(t[20]=H=>o.showTooltip(9)),onMouseout:t[21]||(t[21]=H=>o.hideTooltip(9))},null,40,XAr),[[O,void 0,"featuredMarkerPopover"]])]),_:1},8,["visible"])):s.createCommentVNode("",!0),s.createVNode(u,{content:"Find these markers for data. The number inside the markers is the number of datasets available for each marker.",placement:"right",teleported:!1,width:"200",trigger:"manual","popper-class":"flatmap-popper flatmap-marker-popper",visible:e.hoverVisibilities[0].value,ref:"markerPopover"},{reference:s.withCtx(()=>[s.withDirectives(s.createElementVNode("div",{class:"flatmap-marker-help",innerHTML:e.flatmapMarker},null,8,KAr),[[s.vShow,e.hoverVisibilities[0].value],[O,void 0,"markerPopover"]])]),_:1},8,["visible"]),e.isFC&&e.systems&&e.systems.length>0?(s.openBlock(),s.createBlock(m,{key:2,class:"treeControls",mapType:"flatmap",title:"Systems",treeData:e.systems,active:e.currentActive,hover:e.currentHover,onCheckChanged:o.systemSelected,onCheckAll:o.checkAllSystems,onChangeActive:o.ftuSelected,ref:"treeControls"},null,8,["treeData","active","hover","onCheckChanged","onCheckAll","onChangeActive"])):s.createCommentVNode("",!0),e.containsAlert&&e.alertOptions?(s.openBlock(),s.createBlock(g,{title:"Alert",labelKey:"label",identifierKey:"key",selections:e.alertOptions,onChanged:o.alertSelected,onCheckboxMouseEnter:o.alertMouseEnterEmitted,onSelectionsDataChanged:o.onSelectionsDataChanged,onCheckAll:o.checkAllAlerts,ref:"alertSelection",key:"alertSelection"},null,8,["selections","onChanged","onCheckboxMouseEnter","onSelectionsDataChanged","onCheckAll"])):s.createCommentVNode("",!0),e.pathways&&e.pathways.length>0?(s.openBlock(),s.createBlock(g,{title:"Pathways",labelKey:"label",identifierKey:"type",colourStyle:"line",selections:e.pathways,onChanged:o.pathwaysSelected,onSelectionsDataChanged:o.onSelectionsDataChanged,onCheckAll:o.checkAllPathways,ref:"pathwaysSelection",key:"pathwaysSelection"},null,8,["selections","onChanged","onSelectionsDataChanged","onCheckAll"])):s.createCommentVNode("",!0),e.taxonConnectivity&&e.taxonConnectivity.length>0?(s.openBlock(),s.createBlock(g,{title:"Studied in",labelKey:"label",identifierKey:"taxon",helpMessage:"Evidence exists that this set of neuron populations have been studied in the given species.",selections:e.taxonConnectivity,onChanged:o.taxonsSelected,onCheckboxMouseEnter:o.taxonMouseEnterEmitted,onSelectionsDataChanged:o.onSelectionsDataChanged,onCheckAll:o.checkAllTaxons,ref:"taxonSelection",key:"taxonSelection"},null,8,["selections","onChanged","onCheckboxMouseEnter","onSelectionsDataChanged","onCheckAll"])):s.createCommentVNode("",!0)],6)),[[O,void 0,"checkBoxPopover"]]),s.createElementVNode("div",{onClick:t[22]||(t[22]=(...H)=>o.toggleDrawer&&o.toggleDrawer(...H)),class:s.normalizeClass(["drawer-button",{open:e.drawerOpen,close:!e.drawerOpen}])},[s.createVNode(c,null,{default:s.withCtx(()=>[s.createVNode(b)]),_:1})],2)],2),[[s.vShow,!r.disableUI&&o.requiresDrawer]])]),_:1},8,["visible"]),e.openMapRef?(s.openBlock(),s.createBlock(u,{key:1,ref:"open-map-popover","virtual-ref":e.openMapRef,placement:"top-start",width:"136",teleported:!1,trigger:"click","popper-class":"open-map-popper non-selectable","virtual-triggering":""},{default:s.withCtx(()=>[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(r.openMapOptions,H=>(s.openBlock(),s.createBlock(Q,{key:H.key},{default:s.withCtx(()=>[s.createVNode(T,{type:"primary",plain:"",onClick:B=>e.$emit("open-map",H.key)},{default:s.withCtx(()=>[s.createTextVNode(s.toDisplayString(H.display),1)]),_:2},1032,["onClick"])]),_:2},1024))),128))]),_:1},8,["virtual-ref"])):s.createCommentVNode("",!0),s.createVNode(u,{ref:"backgroundPopover","virtual-ref":e.backgroundIconRef,placement:"top-start",width:"320",teleported:!1,trigger:"click","popper-class":"background-popper h-auto","virtual-triggering":""},{default:s.withCtx(()=>[s.createElementVNode("div",null,[s.createVNode(Q,{class:"backgroundText"},{default:s.withCtx(()=>t[37]||(t[37]=[s.createTextVNode("Viewing Mode")])),_:1}),s.createVNode(Q,{class:"backgroundControl"},{default:s.withCtx(()=>[s.createElementVNode("div",YAr,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.viewingModes,(H,B,U)=>(s.openBlock(),s.createElementBlock(s.Fragment,{key:B},[B===e.viewingMode?(s.openBlock(),s.createElementBlock("span",JAr,[s.createElementVNode("b",null,s.toDisplayString(B),1)])):(s.openBlock(),s.createElementBlock("span",{key:1,class:"viewing-mode-unselected",onClick:G=>o.changeViewingMode(B)},s.toDisplayString(B),9,eOr))],64))),128))]),s.createVNode(Q,{class:"viewing-mode-description"},{default:s.withCtx(()=>[s.createTextVNode(s.toDisplayString(o.modeDescription),1)]),_:1})]),_:1}),e.viewingMode==="Annotation"&&e.userInformation?(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[s.createVNode(Q,{class:"backgroundText"},{default:s.withCtx(()=>t[38]||(t[38]=[s.createTextVNode("Annotations From")])),_:1}),s.createVNode(Q,{class:"backgroundControl"},{default:s.withCtx(()=>[s.createVNode(C,{teleported:!1,modelValue:e.annotationFrom,"onUpdate:modelValue":t[23]||(t[23]=H=>e.annotationFrom=H),placeholder:"Select",class:"select-box","popper-class":"flatmap_dropdown",onChange:o.setAnnotationFrom},{default:s.withCtx(()=>[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.annotatedSource,H=>(s.openBlock(),s.createBlock(S,{key:H,label:H,value:H},{default:s.withCtx(()=>[s.createVNode(Q,null,{default:s.withCtx(()=>[s.createVNode(L,{span:12},{default:s.withCtx(()=>[s.createTextVNode(s.toDisplayString(H),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","onChange"])]),_:1})],64)):s.createCommentVNode("",!0),e.displayFlightPathOption?(s.openBlock(),s.createBlock(Q,{key:1,class:"backgroundSpacer"})):s.createCommentVNode("",!0),e.displayFlightPathOption?(s.openBlock(),s.createBlock(Q,{key:2,class:"backgroundText"},{default:s.withCtx(()=>t[39]||(t[39]=[s.createTextVNode("Flight path display")])),_:1})):s.createCommentVNode("",!0),e.displayFlightPathOption?(s.openBlock(),s.createBlock(Q,{key:3,class:"backgroundControl"},{default:s.withCtx(()=>[s.createVNode(M,{modelValue:e.flightPath3DRadio,"onUpdate:modelValue":t[24]||(t[24]=H=>e.flightPath3DRadio=H),class:"flatmap-radio",onChange:o.setFlightPath3D},{default:s.withCtx(()=>[s.createVNode(E,{value:!1},{default:s.withCtx(()=>t[40]||(t[40]=[s.createTextVNode("2D")])),_:1}),s.createVNode(E,{value:!0},{default:s.withCtx(()=>t[41]||(t[41]=[s.createTextVNode("3D")])),_:1})]),_:1},8,["modelValue","onChange"])]),_:1})):s.createCommentVNode("",!0),s.createVNode(Q,{class:"backgroundSpacer"}),s.createVNode(Q,{class:"backgroundText"},{default:s.withCtx(()=>t[42]||(t[42]=[s.createTextVNode("Organs display")])),_:1}),s.createVNode(Q,{class:"backgroundControl"},{default:s.withCtx(()=>[s.createVNode(M,{modelValue:e.colourRadio,"onUpdate:modelValue":t[25]||(t[25]=H=>e.colourRadio=H),class:"flatmap-radio",onChange:o.setColour},{default:s.withCtx(()=>[s.createVNode(E,{value:!0},{default:s.withCtx(()=>t[43]||(t[43]=[s.createTextVNode("Colour")])),_:1}),s.createVNode(E,{value:!1},{default:s.withCtx(()=>t[44]||(t[44]=[s.createTextVNode("Greyscale")])),_:1})]),_:1},8,["modelValue","onChange"])]),_:1}),s.createVNode(Q,{class:"backgroundSpacer"}),s.createVNode(Q,{class:"backgroundText"},{default:s.withCtx(()=>t[45]||(t[45]=[s.createTextVNode("Outlines display")])),_:1}),s.createVNode(Q,{class:"backgroundControl"},{default:s.withCtx(()=>[s.createVNode(M,{modelValue:e.outlinesRadio,"onUpdate:modelValue":t[26]||(t[26]=H=>e.outlinesRadio=H),class:"flatmap-radio",onChange:o.setOutlines},{default:s.withCtx(()=>[s.createVNode(E,{value:!0},{default:s.withCtx(()=>t[46]||(t[46]=[s.createTextVNode("Show")])),_:1}),s.createVNode(E,{value:!1},{default:s.withCtx(()=>t[47]||(t[47]=[s.createTextVNode("Hide")])),_:1})]),_:1},8,["modelValue","onChange"])]),_:1}),s.createVNode(Q,{class:"backgroundSpacer"}),s.createVNode(Q,{class:"backgroundText"},{default:s.withCtx(()=>t[48]||(t[48]=[s.createTextVNode("Change background")])),_:1}),s.createVNode(Q,{class:"backgroundControl"},{default:s.withCtx(()=>[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.availableBackground,H=>(s.openBlock(),s.createElementBlock("div",{key:H,class:s.normalizeClass(["backgroundChoice",H,H==e.currentBackground?"active":""]),onClick:B=>o.backgroundChangeCallback(H)},null,10,tOr))),128))]),_:1})])]),_:1},8,["virtual-ref"]),s.withDirectives(s.createElementVNode("div",{class:s.normalizeClass(["settings-group",{open:e.drawerOpen,close:!e.drawerOpen}])},[s.createVNode(Q,null,{default:s.withCtx(()=>[s.createVNode(u,{visible:e.hoverVisibilities[4].value,content:"Open new map",placement:"right",teleported:!1,"popper-class":"flatmap-popper",ref:"openMapPopover"},{reference:s.withCtx(()=>[r.enableOpenMapUI&&r.openMapOptions.length>0?(s.openBlock(),s.createElementBlock("div",{key:0,ref:"openMapRef",class:"icon-button-container",onMouseover:t[27]||(t[27]=H=>o.showTooltip(4)),onMouseout:t[28]||(t[28]=H=>o.hideTooltip(4))},[s.createVNode(p,{icon:"openMap",class:"icon-button open-map-button"})],544)):s.createCommentVNode("",!0)]),_:1},8,["visible"])]),_:1}),s.createVNode(Q,null,{default:s.withCtx(()=>[s.createVNode(u,{content:"Change settings",placement:"right",visible:e.hoverVisibilities[5].value,teleported:!1,trigger:"manual","popper-class":"flatmap-popper",ref:"settingsPopover"},{reference:s.withCtx(()=>[s.createElementVNode("div",{ref:"backgroundIconRef",class:"icon-button-container",onMouseover:t[29]||(t[29]=H=>o.showTooltip(5)),onMouseout:t[30]||(t[30]=H=>o.hideTooltip(5))},[s.createVNode(p,{icon:"changeBckgd",class:"icon-button"})],544)]),_:1},8,["visible"])]),_:1})],2),[[s.vShow,!r.disableUI]]),e.tooltipDisplay?(s.openBlock(),s.createBlock(P,{key:2,ref:"tooltip",class:"tooltip",annotationEntry:e.annotationEntry,tooltipEntry:e.tooltipEntry,annotationDisplay:e.viewingMode==="Annotation",onAnnotation:o.commitAnnotationEvent,onOnActionClick:o.onActionClick},null,8,["annotationEntry","tooltipEntry","annotationDisplay","onAnnotation","onOnActionClick"])):s.createCommentVNode("",!0)])])),[[N,e.loading]])}const Jse=aH(zAr,[["render",rOr],["__scopeId","data-v-e499f9fe"]]),WBe={"NCBITaxon:10114":"01fedbf9-d783-509c-a10c-827941ab13da","NCBITaxon:9823":"a336ac04-24db-561f-a25f-1c994fe17410","NCBITaxon:9606":"42ed6323-f645-5fbe-bada-9581819cf689","NCBITaxon:10090":"25285fab-48a0-5620-a6a0-f9a0374837d5","NCBITaxon:9685":"73060497-46a6-52bf-b975-cac511c127cb"},nOr={name:"MultiFlatmapVuer",components:{Col:cE,Row:lE,Option:Fee,Select:rH,Popover:nH,FlatmapVuer:Jse},created:function(){this.loadMapManager()},mounted:function(){this.initialise(),Yse.on("onActionClick",e=>{this.resourceSelected(e)}),Yse.on("open-pubmed-url",e=>{this.$emit("open-pubmed-url",e)})},methods:{initialise:function(){return new Promise(e=>{this.requireInitialisation?(this.requireInitialisation=!1,fetch(this.flatmapAPI).then(t=>t.json()).then(t=>{Object.keys(this.availableSpecies).forEach(n=>{const i=this.availableSpecies[n].uuid;if(i&&t.map(o=>o.uuid).indexOf(i)>0)this.speciesList[n]=this.availableSpecies[n];else for(let o=0;o<t.length;o++)if(this.availableSpecies[n].taxo===t[o].taxon)if(this.availableSpecies[n].biologicalSex){if(t[o].biologicalSex&&t[o].biologicalSex===this.availableSpecies[n].biologicalSex){this.speciesList[n]=this.availableSpecies[n];break}}else{this.speciesList[n]=this.availableSpecies[n];break}});let r=this.initial;if(this.state){const n=this.state.state;(!n||!n.uuid&&!n.entry)&&this.state.species?r=this.state.species:r=void 0}r&&(r&&this.speciesList[r]!==void 0?this.activeSpecies=r:this.activeSpecies=Object.keys(this.speciesList)[0],this.setSpecies(this.activeSpecies,this.state?this.state.state:void 0,5)),this.initialised=!0,e(),this.resolveList.forEach(n=>{n()})})):this.initialised?e():this.resolveList.push(e)})},loadMapManager:function(){this.mapManagerRef||(this.mapManager?this.mapManagerRef=this.mapManager:(this.mapManagerRef=s.markRaw(new jse(this.flatmapAPI,{container:void 0})),this.$emit("mapmanager-loaded",this.mapManagerRef)))},resourceSelected:function(e){this.$emit("resource-selected",e)},FlatmapReady:function(e){this.$emit("ready",e)},getCurrentFlatmap:function(){return this.$refs[this.activeSpecies][0]},panZoomCallback:function(e){this.$emit("pan-zoom-callback",e)},onAnnotationClose:function(){this.$emit("annotation-close")},onAnnotationOpen:function(e){this.$emit("annotation-open",e)},onConnectivityInfoClose:function(){this.$emit("connectivity-info-close")},onConnectivityInfoOpen:function(e){this.$emit("connectivity-info-open",e)},onConnectivityGraphError:function(e){this.$emit("connectivity-graph-error",e)},onSelectionsDataChanged:function(e){this.$emit("pathway-selection-changed",e)},showPopup:function(e,t,r){this.getCurrentFlatmap().showPopup(e,t,r)},showMarkerPopup:function(e,t,r){this.getCurrentFlatmap().showMarkerPopup(e,t,r)},setSpecies:function(e,t,r){if(this.$refs&&e in this.$refs)this.activeSpecies=e,this.$refs[this.activeSpecies][0].createFlatmap(t),this.$emit("flatmapChanged",this.activeSpecies);else if(r){const n=r-1;n>=0&&this.$nextTick(()=>{this.setSpecies(e,t,n)})}},viewLatestMap:function(e){const t=Object.keys(this.speciesList);for(let r=0;r<t.length;r++){const n=this.speciesList[t[r]];if(!n.isLegacy&&n.taxo===e.entry&&n.biologicalSex===e.biologicalSex){this.setSpecies(t[r],e,0);return}}},createLegacyEntry:function(e,t,r){if(r&&t){let n="Legacy";return e.species&&(e.species.slice(0,6)==="Legacy"?n=e.species:n=n+` ${e.species}`),this.speciesList[n]={taxo:t,isLegacy:!0,displayWarning:!0},{species:n,state:{entry:t,uuid:r,viewport:e.state.viewport,searchTerm:e.state.searchTerm}}}},updateState:function(e){return new Promise(t=>{if(e&&e.state){const r=e.state;if(r.uuid){if(r.entry)return new Promise(()=>{const n={taxon:r.entry};r.biologicalSex&&(n.biologicalSex=r.biologicalSex),this.mapManagerRef.findMap(n).then(i=>{if(i.uuid!==r.uuid)return this.createLegacyEntry(e,r.entry,r.uuid)}).then(i=>{t(i||e)}).catch(()=>{t(e)})})}else if(r.entry){const n=r.entry in WBe?WBe[r.entry]:void 0,i=this.createLegacyEntry(e,r.entry,n);t(i||e)}}t(e)})},getState:function(){let e={species:this.activeSpecies,state:void 0},t=this.getCurrentFlatmap();return e.state=t.getState(),e},setState:function(e){e&&(this.loadMapManager(),this.updateState(e).then(t=>{this.initialise().then(()=>{t.species&&t.species!==this.activeSpecies?this.setSpecies(t.species,t.state,5):t.state&&this.getCurrentFlatmap().setState(t.state)})}))},activateTooltipByIndex:function(e){return e===this.helpModeActiveItem&&this.helpMode},onHelpModeLastItem:function(e){e&&this.$emit("help-mode-last-item",!0)},onTooltipShown:function(){this.$emit("shown-tooltip")},onMapTooltipShown:function(){this.$emit("shown-map-tooltip")},changeViewingMode:function(e){this.getCurrentFlatmap().changeViewingMode(e)}},props:{initial:{type:String,default:""},minZoom:{type:Number,default:1},renderAtMounted:{type:Boolean,default:!1},helpMode:{type:Boolean,default:!1},helpModeActiveItem:{type:Number,default:0},helpModeDialog:{type:Boolean,default:!1},helpModeLastItem:{type:Boolean,default:!1},displayMinimap:{type:Boolean,default:!1},showStarInLegend:{type:Boolean,default:!1},enableOpenMapUI:{type:Boolean,default:!1},openMapOptions:{type:Array},availableSpecies:{type:Object,default:function(){return{"Human Female":{taxo:"NCBITaxon:9606",biologicalSex:"PATO:0000383",iconClass:"mapicon-icon_human",displayWarning:!0},"Human Male":{taxo:"NCBITaxon:9606",biologicalSex:"PATO:0000384",iconClass:"mapicon-icon_human",displayWarning:!0},Rat:{taxo:"NCBITaxon:10114",iconClass:"mapicon-icon_rat",displayLatestChanges:!0},Mouse:{taxo:"NCBITaxon:10090",iconClass:"mapicon-icon_mouse",displayWarning:!0},Pig:{taxo:"NCBITaxon:9823",iconClass:"mapicon-icon_pig",displayWarning:!0},Cat:{taxo:"NCBITaxon:9685",iconClass:"mapicon-icon_cat",displayWarning:!0}}}},state:{type:Object,default:void 0},mapManager:{type:Object,default:void 0},flatmapAPI:{type:String,default:"https://mapcore-demo.org/current/flatmap/v3/"},sparcAPI:{type:String,default:"https://api.sparc.science/"},disableUI:{type:Boolean,default:!1},connectivityInfoSidebar:{type:Boolean,default:!1},annotationSidebar:{type:Boolean,default:!1}},data:function(){return{activeSpecies:void 0,speciesList:{},requireInitialisation:!0,resolveList:s.markRaw([]),initialised:!1,mapManagerRef:void 0}},watch:{state:{handler:function(e){this.setState(e)},immediate:!0,deep:!0}}},iOr={class:"multi-container",ref:"multiContainer"},oOr={key:0,style:{position:"absolute","z-index":"100"}},aOr={class:"select-box-icon"};function sOr(e,t,r,n,i,o){const a=Fee,l=rH,c=nH,u=Jse;return s.openBlock(),s.createElementBlock("div",iOr,[r.disableUI?s.createCommentVNode("",!0):(s.openBlock(),s.createElementBlock("div",oOr,[t[2]||(t[2]=s.createElementVNode("div",{class:"species-display-text"},"Species",-1)),s.createVNode(c,{content:"Select a species",placement:"right",trigger:"manual","popper-class":"flatmap-popper flatmap-teleport-popper right-popper",width:"max-content",visible:o.activateTooltipByIndex(0),teleported:!1,ref:"selectPopover"},{reference:s.withCtx(()=>[s.createVNode(l,{id:"flatmap-select",teleported:!1,modelValue:e.activeSpecies,"onUpdate:modelValue":t[0]||(t[0]=d=>e.activeSpecies=d),placeholder:"Select",class:"select-box","popper-class":"flatmap-dropdown",onChange:o.setSpecies},{default:s.withCtx(()=>[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.speciesList,(d,h)=>(s.openBlock(),s.createBlock(a,{key:h,label:h,value:h},{default:s.withCtx(()=>[s.createElementVNode("span",aOr,[s.createElementVNode("i",{class:s.normalizeClass(d.iconClass)},null,2)]),s.createTextVNode(" "+s.toDisplayString(h),1)]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","onChange"])]),_:1},8,["visible"])])),(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.speciesList,(d,h)=>s.withDirectives((s.openBlock(),s.createBlock(u,{key:h,entry:d.taxo,uuid:d.uuid,biologicalSex:d.biologicalSex,displayWarning:d.displayWarning,displayLatestChanges:d.displayLatestChanges,isLegacy:d.isLegacy,ref_for:!0,ref:h,enableOpenMapUI:r.enableOpenMapUI,openMapOptions:r.openMapOptions,disableUI:r.disableUI,onViewLatestMap:o.viewLatestMap,onResourceSelected:o.resourceSelected,onReady:o.FlatmapReady,onPanZoomCallback:o.panZoomCallback,annotationSidebar:r.annotationSidebar,onAnnotationOpen:o.onAnnotationOpen,onAnnotationClose:o.onAnnotationClose,connectivityInfoSidebar:r.connectivityInfoSidebar,onConnectivityInfoOpen:o.onConnectivityInfoOpen,onConnectivityInfoClose:o.onConnectivityInfoClose,onConnectivityGraphError:o.onConnectivityGraphError,onOpenMap:t[1]||(t[1]=p=>e.$emit("open-map",p)),onPathwaySelectionChanged:o.onSelectionsDataChanged,minZoom:r.minZoom,helpMode:e.activeSpecies==h&&r.helpMode,helpModeActiveItem:r.helpModeActiveItem,helpModeDialog:r.helpModeDialog,helpModeInitialIndex:-2,onHelpModeLastItem:o.onHelpModeLastItem,onShownTooltip:o.onTooltipShown,onShownMapTooltip:o.onMapTooltipShown,renderAtMounted:r.renderAtMounted,displayMinimap:r.displayMinimap,showStarInLegend:r.showStarInLegend,style:{height:"100%"},mapManager:e.mapManagerRef,flatmapAPI:r.flatmapAPI,sparcAPI:r.sparcAPI},null,8,["entry","uuid","biologicalSex","displayWarning","displayLatestChanges","isLegacy","enableOpenMapUI","openMapOptions","disableUI","onViewLatestMap","onResourceSelected","onReady","onPanZoomCallback","annotationSidebar","onAnnotationOpen","onAnnotationClose","connectivityInfoSidebar","onConnectivityInfoOpen","onConnectivityInfoClose","onConnectivityGraphError","onPathwaySelectionChanged","minZoom","helpMode","helpModeActiveItem","helpModeDialog","onHelpModeLastItem","onShownTooltip","onShownMapTooltip","renderAtMounted","displayMinimap","showStarInLegend","mapManager","flatmapAPI","sparcAPI"])),[[s.vShow,e.activeSpecies==h]])),128))],512)}const lOr=aH(nOr,[["render",sOr],["__scopeId","data-v-4a651d11"]]),cOr={name:"Flatmap",mixins:[vv,Qxe],components:{FlatmapVuer:Jse,HelpModeDialog:ZX},methods:{getState:function(){return this.$refs.flatmap.getState()},search:function(e){return this.$refs.flatmap.searchAndShowResult(e)},getFlatmapImp(){var e;return(e=this.$refs.flatmap)==null?void 0:e.mapImp},flatmaprResourceSelected:function(e,t){if(this.resourceSelected(e,t,this.$refs.flatmap.viewingMode==="Exploration"),t.eventType==="click"&&t.feature.type==="feature"){const r={label:t.label||"",id:t.feature.id||"",featureId:t.feature.featureId||"",taxonomy:t.taxonomy||"",resources:t.resource.join(", ")},n=Z8e(r);sl.sendEvent({event:"interaction_event",event_name:"portal_maps_connectivity",category:n,location:e+" "+this.$refs.flatmap.viewingMode})}},flatmapReadyCall:function(e){let t={id:this.entry.id,prov:this.getFlatmapImp().provenance};cn.emit("mapImpProv",t),this.$emit("flatmap-provenance-ready",t),this.flatmapReadyForMarkerUpdates(e),cn.emit("mapLoaded",e)},onPathwaySelectionChanged:function(e){const{label:t,property:r,checked:n,selectionsTitle:i}=e;sl.sendEvent({event:"interaction_event",event_name:"portal_maps_pathway_change",category:t+" ["+r+"] "+n,location:i})},highlightFeatures:function(e){let t=e.name;const r=this.$refs.flatmap.mapImp;if(t){const n=r.search(t);n.featureIds[0]&&r.highlightFeatures([r.modelForFeature(n.featureIds[0])])}},searchSuggestions:function(e,t){if(e&&this.$refs.flatmap.mapImp){const r=this.$refs.flatmap.mapImp.search(e);(r.__featureIds||r.featureIds).forEach(i=>{const o=this.$refs.flatmap.mapImp.annotation(i);o&&o.label&&t.push(o.label)})}},zoomToFeatures:function(e,t){let r=e.name;const n=this.$refs.flatmap.mapImp;if(r){const i=n.search(r);if(i.featureIds.length){let o=n.modelForFeature(i.featureIds[0]);o?(t&&n.selectFeatures(o),n.zoomToFeatures(o)):n.clearSearchResults()}}else n.clearSearchResults()},changeViewingMode:function(e){this.$refs.flatmap.changeViewingMode(e)}},computed:{facetSpecies(){return this.settingsStore.facets.species}},mounted:function(){cn.on("annotation-close",()=>{this.$refs.flatmap&&this.$refs.flatmap.annotationEventCallback({},{type:"aborted"})}),cn.on("markerUpdate",()=>{this.flatmapMarkerUpdate(void 0)}),cn.on("hoverUpdate",()=>{this.cardHoverHighlight()}),cn.on("show-connectivity",e=>{const{featureIds:t,offset:r}=e,n=this.$refs.flatmap;n&&n.moveMap(t,{offsetX:r?-150:0,zoom:4})}),cn.on("show-reference-connectivities",e=>{const t=this.$refs.flatmap;t&&t.showConnectivitiesByReference(e)})}},uOr={class:"viewer-container"};function dOr(e,t,r,n,i,o){const a=s.resolveComponent("FlatmapVuer"),l=s.resolveComponent("HelpModeDialog");return s.openBlock(),s.createElementBlock("div",uOr,[s.createVNode(a,{state:e.entry.state,entry:e.entry.resource,mapManager:e.mapManager,onResourceSelected:t[0]||(t[0]=c=>o.flatmaprResourceSelected(e.entry.type,c)),onPanZoomCallback:e.flatmapPanZoomCallback,name:e.entry.resource?e.entry.resource:e.entry.data,style:{height:"100%",width:"100%"},minZoom:e.entry.minZoom,helpMode:e.helpMode,helpModeActiveItem:e.helpModeActiveItem,helpModeInitialIndex:-1,helpModeDialog:e.useHelpModeDialog,onHelpModeLastItem:e.onHelpModeLastItem,onShownTooltip:e.onTooltipShown,onShownMapTooltip:e.onMapTooltipShown,onAnnotationOpen:e.onAnnotationOpen,onAnnotationClose:e.onAnnotationClose,annotationSidebar:e.annotationSidebar,onConnectivityInfoOpen:e.onConnectivityInfoOpen,onConnectivityGraphError:e.onConnectivityGraphError,connectivityInfoSidebar:e.connectivityInfoSidebar,pathControls:!0,ref:"flatmap",onReady:o.flatmapReadyCall,displayMinimap:!1,displayWarning:!0,enableOpenMapUI:!0,flatmapAPI:e.flatmapAPI,sparcAPI:e.apiLocation,onOpenMap:e.openMap,onPathwaySelectionChanged:o.onPathwaySelectionChanged,onMapmanagerLoaded:e.onMapmanagerLoaded},null,8,["state","entry","mapManager","onPanZoomCallback","name","minZoom","helpMode","helpModeActiveItem","helpModeDialog","onHelpModeLastItem","onShownTooltip","onShownMapTooltip","onAnnotationOpen","onAnnotationClose","annotationSidebar","onConnectivityInfoOpen","onConnectivityGraphError","connectivityInfoSidebar","onReady","flatmapAPI","sparcAPI","onOpenMap","onPathwaySelectionChanged","onMapmanagerLoaded"]),e.helpMode&&e.useHelpModeDialog?(s.openBlock(),s.createBlock(l,{key:0,ref:"flatmapHelp",flatmapRef:e.flatmapRef,lastItem:e.helpModeLastItem,onShowNext:e.onHelpModeShowNext,onFinishHelpMode:e.onFinishHelpMode},null,8,["flatmapRef","lastItem","onShowNext","onFinishHelpMode"])):s.createCommentVNode("",!0)])}const hOr=Object.freeze(Object.defineProperty({__proto__:null,default:Nl(cOr,[["render",dOr],["__scopeId","data-v-b98a99d3"]])},Symbol.toStringTag,{value:"Module"})),pOr={name:"Iframe",mixins:[vv]},fOr={class:"map-iframe-container"},mOr=["src"];function gOr(e,t,r,n,i,o){return s.openBlock(),s.createElementBlock("div",fOr,[s.createElementVNode("iframe",{class:"my-iframe",src:e.entry.resource.share_link},null,8,mOr)])}const yOr=Object.freeze(Object.defineProperty({__proto__:null,default:Nl(pOr,[["render",gOr],["__scopeId","data-v-60f8bfe1"]])},Symbol.toStringTag,{value:"Module"})),TOr='<svg width="72px" height="72px" viewBox="0 0 24 24" fill="yellow"><path d="M11.0748 3.25583C11.4141 2.42845 12.5859 2.42845 12.9252 3.25583L14.6493 7.45955C14.793 7.80979 15.1221 8.04889 15.4995 8.07727L20.0303 8.41798C20.922 8.48504 21.2841 9.59942 20.6021 10.1778L17.1369 13.1166C16.8482 13.3614 16.7225 13.7483 16.8122 14.1161L17.8882 18.5304C18.1 19.3992 17.152 20.0879 16.3912 19.618L12.5255 17.2305C12.2034 17.0316 11.7966 17.0316 11.4745 17.2305L7.60881 19.618C6.84796 20.0879 5.90001 19.3992 6.1118 18.5304L7.18785 14.1161C7.2775 13.7483 7.1518 13.3614 6.86309 13.1166L3.3979 10.1778C2.71588 9.59942 3.07796 8.48504 3.96971 8.41798L8.50046 8.07727C8.87794 8.04889 9.20704 7.80979 9.35068 7.45955L11.0748 3.25583Z" stroke="#000000" stroke-width="2"/></svg>',qBe=e=>{const t=[{display:"Open AC Map",key:"AC"},{display:"Open FC Map",key:"FC"},{display:"Open 3D Human Map",key:"3D"}];switch(e){case"Human Male":case"Human Female":case"Rat":t.push({display:"Open Sync Map",key:"SYNC"});break}return t},vOr={name:"MultiFlatmap",mixins:[vv,Qxe],components:{MultiFlatmapVuer:lOr,HelpModeDialog:ZX},data:function(){return{zoomLevel:6,flatmapReady:!1,availableSpecies:q8e(),scaffoldResource:{},showStarInLegend:!1,openMapOptions:qBe("Human Male")}},methods:{toggleSyncMode:async function(){if(this.syncMode==!1){let e;this.activeSpecies==="Rat"?e={contextCard:void 0,discoverId:void 0,label:"Rat Body",resource:"https://mapcore-bucket1.s3.us-west-2.amazonaws.com/WholeBody/31-May-2021/ratBody/ratBody_syncmap_metadata.json",title:"View 3D scaffold",layout:"2horpanel",type:"SyncMap"}:(this.activeSpecies==="Human Male"||this.activeSpecies==="Human Female")&&("human"in this.scaffoldResource||(this.scaffoldResource.human=await IR(this.apiLocation,"human")),e={contextCardUrl:this.scaffoldResource.human.datasetInfo.contextCardUrl,discoverId:this.scaffoldResource.human.datasetInfo.discoverId,s3uri:this.scaffoldResource.human.datasetInfo.s3uri,version:this.scaffoldResource.human.datasetInfo.version,label:"Human Body",resource:this.scaffoldResource.human.url,title:"View 3D scaffold",layout:"2vertpanel",type:"SyncMap",isBodyScaffold:!0}),e&&cn.emit("SyncModeRequest",{flag:!0,action:e})}else cn.emit("SyncModeRequest",{flag:!1})},getState:function(){if(this.flatmapReady)return this.$refs.multiflatmap.getState()},flatmapPanZoomCallback:function(e){if(this.mouseHovered){const t={paneIndex:this.entry.id,eventType:"panZoom",payload:e,type:this.entry.type};this.$emit("resource-selected",t)}},search:function(e){return this.$refs.multiflatmap.getCurrentFlatmap().searchAndShowResult(e,!0)},searchSuggestions:function(e,t){const r=this.$refs.multiflatmap.getCurrentFlatmap();if(e&&r.mapImp){const n=r.mapImp.search(e);(n.__featureIds||n.featureIds).forEach(o=>{const a=r.mapImp.annotation(o);a&&a.label&&t.push(a.label)})}},flatmaprResourceSelected:function(e,t){const r=this.$refs.multiflatmap.getCurrentFlatmap();if(this.resourceSelected(e,t),t.eventType==="click"&&t.feature.type==="feature"){const n={label:t.label||"",id:t.feature.id||"",featureId:t.feature.featureId||"",taxonomy:t.taxonomy||"",resources:t.resource.join(", ")},i=Z8e(n);sl.sendEvent({event:"interaction_event",event_name:"portal_maps_connectivity",category:i,location:e+" "+r.viewingMode})}},onPathwaySelectionChanged:function(e){const{label:t,property:r,checked:n,selectionsTitle:i}=e;sl.sendEvent({event:"interaction_event",event_name:"portal_maps_pathway_change",category:t+" ["+r+"] "+n,location:i})},onOpenPubmedUrl:function(e){sl.sendEvent({event:"interaction_event",event_name:"portal_maps_pubmed_url",file_path:e,location:"map_popup_button"})},handleSyncPanZoomEvent:function(e){if(!this.mouseHovered&&e.type!==this.entry.type){const t=e.payload.zoom,r=e.payload.target,n=this.$el.clientHeight,i=this.$el.clientWidth,o=Math.max(i,n);let a=i/o/t;const l=n/o/t,c=[r[0]/2+.5-a/2,.5-r[1]/2-l/2];this.$refs.multiflatmap.getCurrentFlatmap().mapImp.panZoomTo(c,[a,l])}},displayTooltip:function(e){if(e){let t=e.name;t?this.search(t):this.$refs.multiflatmap.getCurrentFlatmap().mapImp.clearSearchResults()}},zoomToFeatures:function(e,t){let r=e.name;const n=this.$refs.multiflatmap.getCurrentFlatmap().mapImp;if(r){const i=n.search(r);i.featureIds.length>0?(t&&n.selectFeatures(i.featureIds),n.zoomToFeatures(i.featureIds)):n.clearSearchResults()}else n.clearSearchResults()},highlightFeatures:function(e){let t=e.name;const r=this.$refs.multiflatmap.getCurrentFlatmap().mapImp;if(t){const n=r.search(t);n.featureIds.length>0&&r.zoomToFeatures(n.featureIds,{noZoomIn:!0})}},updateProvCard:function(){const e=this.getFlatmapImp();if(e){let t={id:this.entry.id,prov:e.provenance};cn.emit("mapImpProv",t),this.$emit("flatmap-provenance-ready",t)}},flatmapChanged:async function(e){this.activeSpecies=e,this.openMapOptions=qBe(e),this.$emit("species-changed",e),this.entry.state&&this.entry.state.species===this.activeSpecies||this.syncMode==!0&&await this.toggleSyncMode(),this.updateProvCard(),sl.sendEvent({event:"interaction_event",event_name:"portal_maps_species_change",category:this.activeSpecies})},multiFlatmapReady:function(e){if(e){e.enablePanZoomEvents(!0),this.flatmapReady=!0;const t=e.mapImp;this.flatmapMarkerUpdate(t),this.updateProvCard(),this.loadConnectivityKnowledge(t),cn.emit("mapLoaded",e)}},getFlatmapImp:function(){if(this.flatmapReady&&this.$refs.multiflatmap)return this.$refs.multiflatmap.getCurrentFlatmap().mapImp},flatmapAreaSearch(){let r={type:"Facets",label:"Unused",val:this.getFlatmapImp().visibleMarkerAnatomicalIds().map(n=>this.idNamePair[n])};cn.emit("PopoverActionClick",r)},restoreFeaturedMarkers:function(e){this.settingsStore.resetFeaturedMarkerIdentifier();const t=this.settingsStore.featuredMarkers;this.updateFeaturedMarkers(t,e)},updateFeaturedMarkers:function(e,t){this.showStarInLegend=!1;for(let r=0;r<e.length;++r)e[r]&&(this.settingsStore.featuredMarkerIdentifiers[r]||this.addFeaturedMarker(e[r],r,t)&&(this.showStarInLegend=!0))},addFeaturedMarker:function(e,t,r){const n=this.settingsStore.featuredMarkerSpecies[t];if(n&&!this.activeSpecies.startsWith(n))return!1;let i=r;if(i||(i=this.getFlatmapImp()),i){let o=document.createElement("div");o.innerHTML=TOr;const a=i.addMarker(e,{element:o,className:"highlight-marker",cluster:!1});return this.settingsStore.updateFeaturedMarkerIdentifier({index:t,markerIdentifier:a}),!0}return!1},changeViewingMode:function(e){this.$refs.multiflatmap.getCurrentFlatmap().changeViewingMode(e)},showConnectivityTooltips:function(e){this.flatmapReady&&this.$refs.multiflatmap.getCurrentFlatmap().showConnectivityTooltips(e)},changeConnectivitySource:function(e){this.flatmapReady&&this.$refs.multiflatmap.getCurrentFlatmap().changeConnectivitySource(e)}},computed:{facetSpecies(){return this.settingsStore.facets.species},featuredMarkers(){return this.settingsStore.featuredMarkers}},watch:{syncMode:function(e){this.$refs.multiflatmap.getCurrentFlatmap()&&this.$refs.multiflatmap.getCurrentFlatmap().enablePanZoomEvents(e)},featuredMarkers:function(e){this.flatmapReady&&this.updateFeaturedMarkers(e,void 0)}},mounted:function(){this.getFeaturedDatasets(),cn.on("annotation-close",()=>{this.flatmapReady&&this.$refs.multiflatmap&&this.$refs.multiflatmap.getCurrentFlatmap().annotationEventCallback({},{type:"aborted"})}),cn.on("show-connectivity",e=>{const{featureIds:t,offset:r}=e;if(this.flatmapReady&&this.$refs.multiflatmap){const n=this.$refs.multiflatmap.getCurrentFlatmap();n&&n.moveMap(t,{offsetX:r?-150:0,zoom:4})}}),cn.on("show-reference-connectivities",e=>{if(this.flatmapReady&&this.$refs.multiflatmap){const t=this.$refs.multiflatmap.getCurrentFlatmap();t&&t.showConnectivitiesByReference(e)}}),cn.on("connectivity-hovered",e=>{this.showConnectivityTooltips(e)}),cn.on("connectivity-source-change",e=>{this.changeConnectivitySource(e)}),cn.on("markerUpdate",()=>{this.flatmapReady&&this.flatmapMarkerUpdate(this.$refs.multiflatmap.getCurrentFlatmap().mapImp)}),cn.on("hoverUpdate",()=>{this.flatmapReady&&this.cardHoverHighlight()}),cn.on("connectivity-query-filter",e=>{if(this.flatmapReady&&this.$refs.multiflatmap){const t=this.$refs.multiflatmap.getCurrentFlatmap();t&&this.connectivityQueryFilter(t,e)}})}},bOr={class:"viewer-container"};function QOr(e,t,r,n,i,o){const a=s.resolveComponent("MultiFlatmapVuer"),l=s.resolveComponent("HelpModeDialog");return s.openBlock(),s.createElementBlock("div",bOr,[s.createVNode(a,{availableSpecies:e.availableSpecies,onFlatmapChanged:o.flatmapChanged,onReady:o.multiFlatmapReady,state:e.entry.state,mapManager:e.mapManager,onResourceSelected:t[0]||(t[0]=c=>o.flatmaprResourceSelected(e.entry.type,c)),style:{height:"100%",width:"100%"},initial:e.entry.resource,helpMode:e.helpMode,helpModeActiveItem:e.helpModeActiveItem,helpModeDialog:e.useHelpModeDialog,onHelpModeLastItem:e.onHelpModeLastItem,onShownTooltip:e.onTooltipShown,onShownMapTooltip:e.onMapTooltipShown,onAnnotationOpen:e.onAnnotationOpen,onAnnotationClose:e.onAnnotationClose,annotationSidebar:e.annotationSidebar,onConnectivityInfoOpen:e.onConnectivityInfoOpen,onConnectivityGraphError:e.onConnectivityGraphError,connectivityInfoSidebar:e.connectivityInfoSidebar,ref:"multiflatmap",displayMinimap:!0,showStarInLegend:e.showStarInLegend,enableOpenMapUI:!0,openMapOptions:e.openMapOptions,flatmapAPI:e.flatmapAPI,sparcAPI:e.apiLocation,onPanZoomCallback:o.flatmapPanZoomCallback,onOpenMap:e.openMap,onFinishHelpMode:e.endHelp,onPathwaySelectionChanged:o.onPathwaySelectionChanged,onOpenPubmedUrl:o.onOpenPubmedUrl,onMapmanagerLoaded:e.onMapmanagerLoaded},null,8,["availableSpecies","onFlatmapChanged","onReady","state","mapManager","initial","helpMode","helpModeActiveItem","helpModeDialog","onHelpModeLastItem","onShownTooltip","onShownMapTooltip","onAnnotationOpen","onAnnotationClose","annotationSidebar","onConnectivityInfoOpen","onConnectivityGraphError","connectivityInfoSidebar","showStarInLegend","openMapOptions","flatmapAPI","sparcAPI","onPanZoomCallback","onOpenMap","onFinishHelpMode","onPathwaySelectionChanged","onOpenPubmedUrl","onMapmanagerLoaded"]),e.helpMode&&e.useHelpModeDialog?(s.openBlock(),s.createBlock(l,{key:0,ref:"multiflatmapHelp",multiflatmapRef:e.multiflatmapRef,lastItem:e.helpModeLastItem,onShowNext:e.onHelpModeShowNext,onFinishHelpMode:e.onFinishHelpMode},null,8,["multiflatmapRef","lastItem","onShowNext","onFinishHelpMode"])):s.createCommentVNode("",!0)])}const xOr=Object.freeze(Object.defineProperty({__proto__:null,default:Nl(vOr,[["render",QOr],["__scopeId","data-v-d7df9e7b"]])},Symbol.toStringTag,{value:"Module"})),_Or={name:"Plot",mixins:[vv],components:{PlotVuer:cXe.PlotVuer}};function wOr(e,t,r,n,i,o){const a=s.resolveComponent("PlotVuer");return s.openBlock(),s.createBlock(a,{"data-source":e.entry.resource.dataSource,metadata:e.entry.resource.metadata,"supplemental-data":e.entry.resource.supplementalData,style:{overflow:"hidden"}},null,8,["data-source","metadata","supplemental-data"])}const LOr=Object.freeze(Object.defineProperty({__proto__:null,default:Nl(_Or,[["render",wOr]])},Symbol.toStringTag,{value:"Module"})),c6=(e,t,{checkForDefaultPrevented:r=!0}={})=>n=>{const i=e==null?void 0:e(n);if(r===!1||!i)return t==null?void 0:t(n)};var SOr=Object.defineProperty,EOr=Object.defineProperties,COr=Object.getOwnPropertyDescriptors,ZBe=Object.getOwnPropertySymbols,MOr=Object.prototype.hasOwnProperty,kOr=Object.prototype.propertyIsEnumerable,XBe=(e,t,r)=>t in e?SOr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,AOr=(e,t)=>{for(var r in t||(t={}))MOr.call(t,r)&&XBe(e,r,t[r]);if(ZBe)for(var r of ZBe(t))kOr.call(t,r)&&XBe(e,r,t[r]);return e},OOr=(e,t)=>EOr(e,COr(t));function KBe(e,t){var r;const n=s.shallowRef();return s.watchEffect(()=>{n.value=e()},OOr(AOr({},t),{flush:(r=void 0)!=null?r:"sync"})),s.readonly(n)}var YBe;const Ts=typeof window<"u",POr=e=>typeof e=="string",JBe=()=>{},ele=Ts&&((YBe=window==null?void 0:window.navigator)==null?void 0:YBe.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent);function e$e(e){return typeof e=="function"?e():s.unref(e)}function IOr(e){return e}function Rj(e){return s.getCurrentScope()?(s.onScopeDispose(e),!0):!1}function ROr(e,t=!0){s.getCurrentInstance()?s.onMounted(e):t?e():s.nextTick(e)}function u6(e){var t;const r=e$e(e);return(t=r==null?void 0:r.$el)!=null?t:r}const qk=Ts?window:void 0,NOr=Ts?window.document:void 0;function gl(...e){let t,r,n,i;if(POr(e[0])||Array.isArray(e[0])?([r,n,i]=e,t=qk):[t,r,n,i]=e,!t)return JBe;Array.isArray(r)||(r=[r]),Array.isArray(n)||(n=[n]);const o=[],a=()=>{o.forEach(d=>d()),o.length=0},l=(d,h,p,f)=>(d.addEventListener(h,p,f),()=>d.removeEventListener(h,p,f)),c=s.watch(()=>[u6(t),e$e(i)],([d,h])=>{a(),d&&o.push(...r.flatMap(p=>n.map(f=>l(d,p,f,h))))},{immediate:!0,flush:"post"}),u=()=>{c(),a()};return Rj(u),u}let t$e=!1;function VOr(e,t,r={}){const{window:n=qk,ignore:i=[],capture:o=!0,detectIframe:a=!1}=r;if(!n)return;ele&&!t$e&&(t$e=!0,Array.from(n.document.body.children).forEach(d=>d.addEventListener("click",JBe)));let l=!0;const c=d=>i.some(h=>{if(typeof h=="string")return Array.from(n.document.querySelectorAll(h)).some(p=>p===d.target||d.composedPath().includes(p));{const p=u6(h);return p&&(d.target===p||d.composedPath().includes(p))}}),u=[gl(n,"click",d=>{const h=u6(e);if(!(!h||h===d.target||d.composedPath().includes(h))){if(d.detail===0&&(l=!c(d)),!l){l=!0;return}t(d)}},{passive:!0,capture:o}),gl(n,"pointerdown",d=>{const h=u6(e);h&&(l=!d.composedPath().includes(h)&&!c(d))},{passive:!0}),a&&gl(n,"blur",d=>{var h;const p=u6(e);((h=n.document.activeElement)==null?void 0:h.tagName)==="IFRAME"&&!(p!=null&&p.contains(n.document.activeElement))&&t(d)})].filter(Boolean);return()=>u.forEach(d=>d())}function r$e(e,t=!1){const r=s.ref(),n=()=>r.value=!!e();return n(),ROr(n,t),r}const n$e=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},i$e="__vueuse_ssr_handlers__";n$e[i$e]=n$e[i$e]||{};function HOr({document:e=NOr}={}){if(!e)return s.ref("visible");const t=s.ref(e.visibilityState);return gl(e,"visibilitychange",()=>{t.value=e.visibilityState}),t}var o$e=Object.getOwnPropertySymbols,BOr=Object.prototype.hasOwnProperty,$Or=Object.prototype.propertyIsEnumerable,DOr=(e,t)=>{var r={};for(var n in e)BOr.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&o$e)for(var n of o$e(e))t.indexOf(n)<0&&$Or.call(e,n)&&(r[n]=e[n]);return r};function i0(e,t,r={}){const n=r,{window:i=qk}=n,o=DOr(n,["window"]);let a;const l=r$e(()=>i&&"ResizeObserver"in i),c=()=>{a&&(a.disconnect(),a=void 0)},u=s.watch(()=>u6(e),h=>{c(),l.value&&i&&h&&(a=new ResizeObserver(t),a.observe(h,o))},{immediate:!0,flush:"post"}),d=()=>{c(),u()};return Rj(d),{isSupported:l,stop:d}}var a$e=Object.getOwnPropertySymbols,FOr=Object.prototype.hasOwnProperty,zOr=Object.prototype.propertyIsEnumerable,jOr=(e,t)=>{var r={};for(var n in e)FOr.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&a$e)for(var n of a$e(e))t.indexOf(n)<0&&zOr.call(e,n)&&(r[n]=e[n]);return r};function UOr(e,t,r={}){const n=r,{window:i=qk}=n,o=jOr(n,["window"]);let a;const l=r$e(()=>i&&"MutationObserver"in i),c=()=>{a&&(a.disconnect(),a=void 0)},u=s.watch(()=>u6(e),h=>{c(),l.value&&i&&h&&(a=new MutationObserver(t),a.observe(h,o))},{immediate:!0}),d=()=>{c(),u()};return Rj(d),{isSupported:l,stop:d}}var s$e;(function(e){e.UP="UP",e.RIGHT="RIGHT",e.DOWN="DOWN",e.LEFT="LEFT",e.NONE="NONE"})(s$e||(s$e={}));var GOr=Object.defineProperty,l$e=Object.getOwnPropertySymbols,WOr=Object.prototype.hasOwnProperty,qOr=Object.prototype.propertyIsEnumerable,c$e=(e,t,r)=>t in e?GOr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,ZOr=(e,t)=>{for(var r in t||(t={}))WOr.call(t,r)&&c$e(e,r,t[r]);if(l$e)for(var r of l$e(t))qOr.call(t,r)&&c$e(e,r,t[r]);return e};ZOr({linear:IOr},{easeInSine:[.12,0,.39,0],easeOutSine:[.61,1,.88,1],easeInOutSine:[.37,0,.63,1],easeInQuad:[.11,0,.5,0],easeOutQuad:[.5,1,.89,1],easeInOutQuad:[.45,0,.55,1],easeInCubic:[.32,0,.67,0],easeOutCubic:[.33,1,.68,1],easeInOutCubic:[.65,0,.35,1],easeInQuart:[.5,0,.75,0],easeOutQuart:[.25,1,.5,1],easeInOutQuart:[.76,0,.24,1],easeInQuint:[.64,0,.78,0],easeOutQuint:[.22,1,.36,1],easeInOutQuint:[.83,0,.17,1],easeInExpo:[.7,0,.84,0],easeOutExpo:[.16,1,.3,1],easeInOutExpo:[.87,0,.13,1],easeInCirc:[.55,0,1,.45],easeOutCirc:[0,.55,.45,1],easeInOutCirc:[.85,0,.15,1],easeInBack:[.36,0,.66,-.56],easeOutBack:[.34,1.56,.64,1],easeInOutBack:[.68,-.6,.32,1.6]});function XOr({window:e=qk}={}){if(!e)return s.ref(!1);const t=s.ref(e.document.hasFocus());return gl(e,"blur",()=>{t.value=!1}),gl(e,"focus",()=>{t.value=!0}),t}const KOr=()=>Ts&&/firefox/i.test(window.navigator.userAgent);/**
3810
3810
  * @vue/shared v3.5.13
3811
3811
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
3812
3812
  * @license MIT