diff --git a/asset-manifest.json b/asset-manifest.json index 6f0b183..554d795 100644 --- a/asset-manifest.json +++ b/asset-manifest.json @@ -1,8 +1,8 @@ { "files": { "main.css": "./static/css/main.0b5824ed.chunk.css", - "main.js": "./static/js/main.410c588b.chunk.js", - "main.js.map": "./static/js/main.410c588b.chunk.js.map", + "main.js": "./static/js/main.a58cdcf3.chunk.js", + "main.js.map": "./static/js/main.a58cdcf3.chunk.js.map", "runtime-main.js": "./static/js/runtime-main.3b77e3e5.js", "runtime-main.js.map": "./static/js/runtime-main.3b77e3e5.js.map", "static/js/2.aac379b3.chunk.js": "./static/js/2.aac379b3.chunk.js", @@ -46,6 +46,6 @@ "static/js/runtime-main.3b77e3e5.js", "static/js/2.aac379b3.chunk.js", "static/css/main.0b5824ed.chunk.css", - "static/js/main.410c588b.chunk.js" + "static/js/main.a58cdcf3.chunk.js" ] } \ No newline at end of file diff --git a/index.html b/index.html index f6d9888..9ff5a88 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -SPARC Dataset (SDS) Viewer V1
\ No newline at end of file +SPARC Dataset (SDS) Viewer V1
\ No newline at end of file diff --git a/static/js/main.410c588b.chunk.js b/static/js/main.410c588b.chunk.js deleted file mode 100644 index f3e2459..0000000 --- a/static/js/main.410c588b.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(this["webpackJsonpsds-viewer"]=this["webpackJsonpsds-viewer"]||[]).push([[0],{12:function(e,t,a){"use strict";a.d(t,"e",(function(){return i})),a.d(t,"a",(function(){return r})),a.d(t,"c",(function(){return n})),a.d(t,"j",(function(){return o})),a.d(t,"l",(function(){return l})),a.d(t,"k",(function(){return s})),a.d(t,"i",(function(){return d})),a.d(t,"d",(function(){return c})),a.d(t,"h",(function(){return u})),a.d(t,"g",(function(){return p})),a.d(t,"f",(function(){return b})),a.d(t,"b",(function(){return h}));var i="Import a new dataset",r="Import Dataset",n={acceptedFileExtensions:["json","ttl"],maxFileSize:5242880,maxFiles:6},o="_details",l="all_subjects",s="all_protocols",d="all_contributors",c="GRAPH",u="TREE",p=2,b=2,h=2},121:function(e,t,a){"use strict";var i=a(17),r=a(11),n=a(10),o=a(27),l=a(21),s=a(15),d=a(40),c=a(28),u=a(25),p=a(193),b=a(8),h=a(31),v=a(12),m=(a(161),a(375)),g=a(492).parse,f=function(){function e(t,a){Object(c.a)(this,e),this.filterNode=function(e){return e.basename.includes(".tmp")},this.factory=new p.a,this.jsonFile=t,this.turtleFile=a,this.types={},this.jsonData={},this.levelsMap={},this.groups={},this.turtleData=[],this.tree=void 0,this.nodes=void 0,this.edges=void 0,this.root_id=void 0,this.tree_map=void 0,this.proxies_map=void 0,this.forced_edges=void 0,this.forced_nodes=void 0,this.tree_parents_map=void 0,this.dataset_id=this.processDatasetId(),this.store=new m.Store,this.rdf_to_json=void 0,this.rdf_to_json_map=void 0}return Object(u.a)(e,[{key:"initialiseNodesEdges",value:function(){this.edges=[],this.nodes=new Map,this.tree_map=new Map,this.proxies_map=new Map,this.tree_parents_map=new Map,this.tree_parents_map2=new Map,this.rdf_to_json_map=new Map}},{key:"extractJson",value:function(){return"object"===typeof this.jsonFile&&null!==this.jsonFile?this.jsonFile:JSON.parse(this.jsonFile)}},{key:"extractTurtle",value:function(){var e=this;return new Promise((function(t,a){(new m.Parser).parse(e.turtleFile,(function(a,i,r){i?(e.store.addQuad(i),e.turtleData.push(i)):t(e.turtleData)}),(function(t,a){e.types[String(t)]={type:t,iri:a}}))}))}},{key:"convertRDFToJson",value:function(){var e=this;this.rdf_to_json=g(this.turtleFile),this.rdf_to_json["@graph"].forEach((function(t){var a="";if(Array.isArray(t["@type"])?b.a.some((function(e){return!!t["@type"].includes(e.key)&&(a=e.toTrim,!0)})):b.a.some((function(e){return t["@type"]===e.key&&(a=e.toTrim,!0)}))){var i=e.types[a].iri.id+t["@id"].replace(a+":","");e.rdf_to_json_map.set(i,t)}}))}},{key:"getJson",value:function(){return this.jsonData}},{key:"getTurtle",value:function(){return this.turtleData}},{key:"updateLevels",value:function(e,t){var a=this;null===e||void 0===e||e.map((function(e){(null===e||void 0===e?void 0:e.level)>t&&(a.updateLevels(null===e||void 0===e?void 0:e.neighbors,e.level),e.level=e.level+1)}))}},{key:"getGraph",value:function(){var e=Object(d.a)(Object(l.a)().mark((function e(){var t,a,i,r,n,o,d=this;return Object(l.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0!==this.nodes&&void 0!==this.edges){e.next=3;break}return e.next=3,this.processDataset();case 3:return i=(i=Object(s.a)(new Set(null===(t=this.forced_nodes)||void 0===t?void 0:t.filter((function(e){return e.type!==b.b.UBERON.key&&e.type!==b.b.Award.key&&!(e.type===b.b.Collection.key&&0===e.children_counter)}))))).filter((function(e){return e.type!==b.b.Sample.key||(e.attributes.hasFolderAboutIt,!0)})),r=[],n=this,null===(a=i)||void 0===a||a.forEach((function(e){e.type===b.b.Subject.key&&Object.keys(n.groups).forEach((function(t){e.attributes&&(null!==e&&void 0!==e&&e.attributes[t]&&Object.keys(n.groups[t]).forEach((function(a){if((null===e||void 0===e?void 0:e.attributes[t][0])===a){var r,n=null===(r=i)||void 0===r?void 0:r.filter((function(e){return e.name==a}));null===n||void 0===n||n.forEach((function(t){var a;null!==e&&void 0!==e&&null!==(a=e.id)&&void 0!==a&&a.includes(t.id)&&(t.subjects+=1)}))}})))}))})),this.forced_edges.forEach((function(e){if(!r.find((function(t){return t.source===e.source&&t.target===e.target}))){var t=d.nodes.get(e.source),a=d.nodes.get(e.target),i=(null===t||void 0===t?void 0:t.type)!==b.b.Award.key&&(null===a||void 0===a?void 0:a.type)!==b.b.Award.key,n=(null===t||void 0===t?void 0:t.type)===b.b.Collection.key&&t.children_counter<1||(null===a||void 0===a?void 0:a.type)===b.b.Collection.key&&a.children_counter<1,o=(null===t||void 0===t?void 0:t.type)===b.b.Sample.key&&t.children_counter<1||(null===a||void 0===a?void 0:a.type)===b.b.Sample.key&&a.children_counter<1,l=(null===t||void 0===t?void 0:t.level)===(null===a||void 0===a?void 0:a.level);t&&a&&i&&!n&&!o&&!l&&(!t.neighbors&&(t.neighbors=[]),!a.neighbors&&(a.neighbors=[]),t.neighbors.find((function(e){return e.id===a.id}))||t.neighbors.push(a),a.neighbors.find((function(e){return e.id===t.id}))||a.neighbors.push(t),!t.links&&(t.links=[]),!a.links&&(a.links=[]),t.links.push(e),a.links.push(e),e.source.id||(e.source=d.nodes.get(e.source)),e.target.id||(e.target=d.nodes.get(e.target)),r.push(e))}})),o=r.filter((function(e){var t,a,i,r,n,o;return!((null===e||void 0===e||null===(t=e.target)||void 0===t?void 0:t.type)===b.b.Collection.key&&(null===e||void 0===e||null===(a=e.target)||void 0===a||null===(i=a.neighbors)||void 0===i?void 0:i.length)<=1||(null===e||void 0===e||null===(r=e.source)||void 0===r?void 0:r.type)===b.b.Collection.key&&(null===e||void 0===e||null===(n=e.source)||void 0===n||null===(o=n.neighbors)||void 0===o?void 0:o.length)<=1)})),e.abrupt("return",{nodes:i,links:o,levelsMap:this.levelsMap});case 11:case"end":return e.stop()}}),e,this)})));return function(){return e.apply(this,arguments)}}()},{key:"getTree",value:function(){var e=Object(d.a)(Object(l.a)().mark((function e(){return Object(l.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0!==this.tree){e.next=3;break}return e.next=3,this.processDataset();case 3:return e.abrupt("return",this.tree);case 4:case"end":return e.stop()}}),e,this)})));return function(){return e.apply(this,arguments)}}()},{key:"getDatasetId",value:function(){return this.dataset_id}},{key:"processTurtle",value:function(){var e=Object(d.a)(Object(l.a)().mark((function e(){return Object(l.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.extractTurtle();case 2:case"end":return e.stop()}}),e,this)})));return function(){return e.apply(this,arguments)}}()},{key:"processDatasetId",value:function(){return this.processJSON(),this.jsonData.data[0].dataset_id.replace("dataset:","")}},{key:"processJSON",value:function(){this.jsonData=this.extractJson()}},{key:"processDataset",value:function(){var e=Object(d.a)(Object(l.a)().mark((function e(){return Object(l.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.initialiseNodesEdges(),e.next=3,this.processTurtle();case 3:this.convertRDFToJson(),this.processJSON(),this.create_graph(),this.create_tree(),this.mergeData(),this.generateData();case 9:case"end":return e.stop()}}),e,this)})));return function(){return e.apply(this,arguments)}}()},{key:"get_type",value:function(e){var t,a={type:b.d.unknown.type,length:0},i=Object(o.a)(null===e||void 0===e?void 0:e.types);try{for(i.s();!(t=i.n()).done;){var r=t.value;if(r.type===this.types.owl.iri.id+"NamedIndividual")for(var n in this.types)e.id.includes(this.types[n].iri.id)&&this.types[n].iri.id.length>a.length&&void 0!==b.d.NamedIndividual[String(this.types[n].type)]&&(a.type=b.d.NamedIndividual[String(this.types[n].type)].type,a.length=this.types[n].iri.id.length);if(r.type===this.types.owl.iri.id+"Class")for(var l in this.types)e.id.includes(this.types[l].iri.id)&&this.types[l].iri.id.length>a.length&&void 0!==b.d.Class[String(this.types[l].type)]&&(a.type=b.d.Class[String(this.types[l].type)].type,a.length=this.types[l].iri.id.length);else if(r.type===this.types.owl.iri.id+"Ontology")a.type=b.d.ontology.type,a.length=b.d.ontology.length;else if(r.type.includes(this.types.sparc.iri.id)&&void 0!==b.d.sparc[r.type.split(this.types.sparc.iri.id).pop()]){var s=r.type.split(this.types.sparc.iri.id).pop();a.type=b.d.sparc[s].type,a.length=b.d.sparc[s].length}}}catch(d){i.e(d)}finally{i.f()}return a.type}},{key:"build_node",value:function(e){var t=this.nodes.get(e.id),a=this.rdf_to_json_map.get(e.id);t?(console.error("Issue with the build node, this node is already present"),console.error(e)):this.nodes.set(e.id,{id:e.id,attributes:{publishedURI:""},types:[],name:e.value,proxies:[],properties:[],tree_reference:null,children_counter:0,collapsed:!1,childLinks:[],additional_properties:a})}},{key:"update_node",value:function(e,t){var a=this;if(!m.Util.isBlankNode(e.subject)){var i=this.nodes.get(e.subject.id);if(i)e.predicate.id===b.c?(i.types=[].concat(Object(s.a)(i.types),[{predicate:e.predicate.id,type:e.object.datatype?e.object.datatype.id:e.object.id,value:e.object.value}]),this.nodes.set(e.subject.id,i)):(i.properties=[].concat(Object(s.a)(i.properties),[{predicate:e.predicate.id,type:e.object.datatype?e.object.datatype.id:e.object.id,value:e.object.value}]),t&&(i.proxies=[].concat(Object(s.a)(i.proxies),[e.object.id]),this.proxies_map.set(e.object.id,e.subject.id)),this.nodes.set(e.subject.id,i));else{var r=!0;this.nodes.forEach((function(t,i){-1!==t.proxies.indexOf(String(e.subject.id))&&(t.properties=[].concat(Object(s.a)(t.properties),[{predicate:e.predicate.id,type:e.object.datatype,value:e.object.value}]),t.proxies=[].concat(Object(s.a)(t.proxies),[e.object.id]),a.proxies_map.set(e.object.id,i),a.nodes.set(i,t),r=!1)})),r&&(console.error("Houston, we have a problem!"),console.error(e))}}}},{key:"link_nodes",value:function(e){var t=this.nodes.get(e.subject.id),a=this.nodes.get(e.object.id);t&&a&&e.subject.id!==e.object.id?(this.edges.push({source:e.subject.id,target:e.object.id}),this.update_node(e,!1)):this.update_node(e,!0)}},{key:"replaceNode",value:function(e){var t={value:e};if(null!==e&&void 0!==e&&e.includes(b.b.NCBITaxon.key)||null!==e&&void 0!==e&&e.includes(b.b.PATO.key)||null!==e&&void 0!==e&&e.includes(b.b.UBERON.key)||null!==e&&void 0!==e&&e.includes(b.b.RRID.key)){var a=this.nodes.get(e);a&&(t={value:null===a||void 0===a?void 0:a.attributes.label[0],link:null===a||void 0===a?void 0:a.id})}return t}},{key:"cast_nodes",value:function(){var e,t,a,i,r,n=this,o=void 0,l=void 0;this.nodes.forEach((function(e,t){e.type=n.get_type(e);var a=n.factory.createNode(e,n.types);a.type!==b.b.Unknown.key?n.nodes.set(t,a):(n.nodes.delete(t),n.edges=n.edges.filter((function(e){return e.source!==t&&e.target!==t}))),e.type===b.d.NamedIndividual.dataset.type&&(o=e),e.type===b.d.ontology.type&&(l=e)})),this.root_id=o.id,o.properties=o.properties.concat(l.properties),o.proxies=o.proxies.concat(l.proxies);var s=[];o.level=1;var d=this;null===(e=o)||void 0===e||null===(t=e.attributes)||void 0===t||null===(a=t.isAbout)||void 0===a||a.forEach((function(e){s.push(d.replaceNode(e))})),o.attributes.isAbout=s;var c=[];null===(i=o.attributes.protocolEmploysTechnique)||void 0===i||i.forEach((function(e){if(e.includes(b.b.NCBITaxon.key)||e.includes(b.b.PATO.key)||e.includes(b.b.UBERON.key)){var t=n.nodes.get(e);t?c.push({value:null===t||void 0===t?void 0:t.attributes.label[0],link:null===t||void 0===t?void 0:t.id}):c.push({value:e})}else c.push({value:e})})),o.attributes.protocolEmploysTechnique=c,this.nodes.set(o.id,o),this.nodes.delete(l.id);var u=null===(r=this.edges)||void 0===r?void 0:r.map((function(e){return e.source===l.id&&(e.source=o.id),e.target===l.id&&(e.target=o.id),e}));return this.edges=u,o}},{key:"organise_subjects",value:function(e,t,a){var i=this,r=this.nodes.get(v.l);Object.keys(h.groups.order).forEach((function(t){var o,l=h.groups.order[t];if(null!==(o=e.attributes[t])&&void 0!==o&&o[0]){var s,d,c=i.nodes.get(null===(s=e.attributes[t])||void 0===s?void 0:s[0]);void 0!==c&&(e.attributes[t][0]=c.attributes.label[0]);var u=r.id+"_"+(null===(d=e.attributes[t])||void 0===d?void 0:d[0].replace(/\s/g,""));if(void 0===i.nodes.get(u)){var p,v={id:u,name:null===(p=e.attributes[t])||void 0===p?void 0:p[0],type:b.d.NamedIndividual.group.type,properties:t,parent:r,proxies:[],level:r.level+1,tree_reference:null,children_counter:0,collapsed:!1,childLinks:[],samples:0,subjects:0,publishedURI:"",dataset_id:i.dataset_id},m=i.factory.createNode(v),g=new Image;g.src=l.icon,m.img=g,i.nodes.set(u,m),a.push({source:r.id,target:m.id}),i.groups[t]?i.groups[t][m.name]=m:i.groups[t]=Object(n.a)({},m.name,m),r=v}else r=i.nodes.get(u)}else console.error("The group node already exists!",l.tag)})),t.source=r.id,e.level=r.level+1,e.attributes.publishedURI="",e.id=r.id+e.name,e.parent=r,e.childLinks=[],e.collapsed=e.type===b.d.NamedIndividual.subject.type,this.nodes.set(e.id,e)}},{key:"organise_nodes",value:function(e){var t=this,a=e.id,i={id:v.l,name:"Subjects",type:b.b.Group.key,properties:[],parent:e,proxies:[],level:v.g,tree_reference:null,children_counter:0,collapsed:!1,childLinks:[]};if(void 0===this.nodes.get(v.l)){this.nodes.set(v.l,this.factory.createNode(i));var r=new Image;r.src="./images/graph/group.svg",i.img=r,this.edges.push({source:a,target:i.id})}else console.error("The subjects node already exists!");var n={id:v.k,name:"Protocols",type:b.d.sparc.Protocol.type,properties:[],parent:e,proxies:[],level:v.f,tree_reference:null,children_counter:0,collapsed:!1,childLinks:[]};void 0===this.nodes.get(v.k)?(this.nodes.set(v.k,this.factory.createNode(n)),this.edges.push({source:a,target:n.id})):console.error("The subjects node already exists!");var o={id:v.i,name:"Contributors",type:b.d.NamedIndividual.contributor.type,properties:[],parent:e,proxies:[],level:v.b,tree_reference:null,children_counter:0,collapsed:!1,childLinks:[]};void 0===this.nodes.get(v.i)?(this.nodes.set(v.i,this.factory.createNode(o)),this.edges.push({source:a,target:o.id})):console.error("The subjects node already exists!");var l=[];this.forced_edges=this.edges.filter((function(e){return e.target!==e.source&&t.nodes.get(e.source).level!==t.nodes.get(e.target).level})).map((function(e){if(e.target===a){var r=e.target;e.target=e.source,e.source=r}var s=t.nodes.get(e.target);e.source===a&&e.target!==v.l&&s.type===b.b.Subject.key?t.organise_subjects(s,e,l):e.source===a&&e.target!==v.i&&s.type===b.b.Person.key?(e.source=v.i,s.level=o.level+1,s.parent=o,t.nodes.set(s.id,s)):e.source===a&&e.target!==v.k&&s.type===b.b.Protocol.key?(e.source=v.k,s.level=n.level+1,s.parent=n,t.nodes.set(s.id,s)):e.source===a&&s.type===b.b.Sample.key&&(e.source=s.attributes.derivedFrom[0],s.level=i.level+2,s.parent=t.nodes.get(s.attributes.derivedFrom[0]),t.nodes.set(s.id,s));var d=t.nodes.get(e.source);return null!==d&&void 0!==d&&d.childLinks&&(d.childLinks=[],d.children_counter++,t.nodes.set(d.id,d)),e})).filter((function(e){var i=t.nodes.get(e.target);return e.source!==a||i.type===b.b.Award.key||e.target===v.i||e.target===v.l||e.target===v.k})),this.forced_edges=this.forced_edges.concat(l)}},{key:"fix_links",value:function(){var e=this,t=[];this.forced_nodes.forEach((function(a,i,r){var n,o,l,d,c,u,p,h,v,m;if(a.type===b.b.Dataset.key&&void 0!==(null===(l=a.attributes)||void 0===l?void 0:l.hasProtocol)){var g,f=e.nodes.get(a.attributes.hasProtocol[0]);if(void 0!==f)a.attributes.hasProtocol[0]=null===(g=f.attributes.hasDoi)||void 0===g?void 0:g[0]}if(a.type===b.b.Sample.key){var j,y;if(void 0!==a.attributes.derivedFrom){var O=e.nodes.get(a.attributes.derivedFrom[0]);void 0!==O&&(O.children_counter++,r[i].level=O.level+1,e.forced_edges.push({source:a.attributes.derivedFrom[0],target:a.id}))}if(void 0!==(null===(j=a.attributes)||void 0===j?void 0:j.hasFolderAboutIt))a.attributes.hasFolderAboutIt=[Array.from(e.nodes)[0][1].attributes.hasUriPublished[0]+"?datasetDetailsTab=files&path=files/"+(null===(y=a.tree_reference)||void 0===y?void 0:y.dataset_relative_path)]}if(a.type===b.b.Subject.key){var x,_,k,S,T,w,C,I;if(void 0!==(null===(x=a.attributes)||void 0===x?void 0:x.animalSubjectIsOfStrain)){var E=e.nodes.get(a.attributes.animalSubjectIsOfStrain[0]);void 0!==E&&(a.attributes.animalSubjectIsOfStrain[0]=E.attributes.label[0])}if(void 0!==(null===(_=a.attributes)||void 0===_?void 0:_.animalSubjectIsOfSpecies)){var N=e.nodes.get(a.attributes.animalSubjectIsOfSpecies[0]);void 0!==N&&(a.attributes.animalSubjectIsOfSpecies[0]=N.attributes.label[0])}if(void 0!==(null===(k=a.attributes)||void 0===k?void 0:k.hasBiologicalSex)){var P=e.nodes.get(a.attributes.hasBiologicalSex[0]);void 0!==P&&(a.attributes.hasBiologicalSex[0]=P.attributes.label[0])}if(void 0!==(null===(S=a.attributes)||void 0===S?void 0:S.hasDerivedInformationAsParticipant)&&void 0!==(null===(T=a.attributes)||void 0===T?void 0:T.participantInPerformanceOf)){var M=e.nodes.get(a.attributes.participantInPerformanceOf[0]);void 0!==M&&(a.attributes.hasDerivedInformationAsParticipant[0]=M.attributes.hasUriHuman[0])}if(void 0!==(null===(w=a.attributes)||void 0===w?void 0:w.participantInPerformanceOf)){var D=e.nodes.get(a.attributes.participantInPerformanceOf[0]);void 0!==D&&(a.attributes.participantInPerformanceOf[0]=D.attributes.hasUriHuman[0])}if(void 0!==(null===(C=a.attributes)||void 0===C?void 0:C.hasFolderAboutIt))a.attributes.hasFolderAboutIt=[Array.from(e.nodes)[0][1].attributes.hasUriPublished[0]+"?datasetDetailsTab=files&path=files/"+(null===(I=a.tree_reference)||void 0===I?void 0:I.dataset_relative_path)]}a.type===b.b.File.key&&(void 0!==(null===a||void 0===a||null===(d=a.tree_reference)||void 0===d?void 0:d.uri_human)&&(a.tree_reference.uri_human=Array.from(e.nodes)[0][1].attributes.hasUriHuman[0]),void 0!==(null===(c=a.attributes)||void 0===c?void 0:c.relativePath)&&(a.attributes.dataset_id=e.dataset_id,a.attributes.publishedURI=Array.from(e.nodes)[0][1].attributes.hasUriPublished[0]+"?datasetDetailsTab=files&path=files/"+(null===(u=a.attributes)||void 0===u?void 0:u.relativePath.substr(0,null===(p=a.attributes)||void 0===p?void 0:p.relativePath.lastIndexOf("/")))));a.type===b.b.Collection.key&&(void 0!==(null===a||void 0===a||null===(h=a.tree_reference)||void 0===h?void 0:h.uri_human)&&(a.tree_reference.uri_human=Array.from(e.nodes)[0][1].attributes.hasUriHuman[0]),void 0!==(null===(v=a.attributes)||void 0===v?void 0:v.relativePath)&&(a.attributes.publishedURI=Array.from(e.nodes)[0][1].attributes.hasUriPublished[0]+"?datasetDetailsTab=files&path=files/"+(null===(m=a.attributes)||void 0===m?void 0:m.relativePath)));a.type!==b.b.RRID.key&&a.type!==(null===(n=b.b.NCBITaxon)||void 0===n?void 0:n.key)&&a.type!==(null===(o=b.b.PATO)||void 0===o?void 0:o.key)||t.unshift(i),void 0!==a.level&&(e.levelsMap[a.level]?e.levelsMap[a.level]=[].concat(Object(s.a)(e.levelsMap[a.level]),[a]):e.levelsMap[a.level]=[a])})),t.forEach((function(t){e.forced_nodes.splice(t,1)}))}},{key:"identify_childless_parents",value:function(){this.forced_nodes.forEach((function(e,t,a){e.type===b.b.Sample.key&&0===e.children_counter&&(e.img.src="./images/graph/question_mark.svg")}))}},{key:"create_graph",value:function(){var e,t=Object(o.a)(this.store.getSubjects());try{for(t.s();!(e=t.n()).done;){var a=e.value;m.Util.isBlankNode(a)||this.build_node(a)}}catch(c){t.e(c)}finally{t.f()}var i,n=Object(o.a)(this.turtleData.entries());try{for(n.s();!(i=n.n()).done;){var l=Object(r.a)(i.value,2),s=(l[0],l[1]);m.Util.isLiteral(s.object)||s.predicate.id===b.c?this.update_node(s,!1):this.link_nodes(s)}}catch(c){n.e(c)}finally{n.f()}var d=this.cast_nodes();this.organise_nodes(d)}},{key:"create_tree",value:function(){var e,t=Object(o.a)(this.jsonData.data);try{for(t.s();!(e=t.n()).done;){var a=e.value;if(this.tree_map.set(a.uri_api,a),a.parent_id!==a.remote_id){var i=this.tree_parents_map.get(a.parent_id);i?(this.tree_parents_map.set(a.parent_id,[].concat(Object(s.a)(i),[a])),this.tree_parents_map2.set(a.parent_id,[].concat(Object(s.a)(i),[a]))):(this.tree_parents_map.set(a.parent_id,[a]),this.tree_parents_map2.set(a.parent_id,[a]))}}}catch(r){t.e(r)}finally{t.f()}}},{key:"mergeData",value:function(){var e=this;this.nodes.forEach((function(t,a){void 0!==t.attributes&&void 0!==t.attributes.hasFolderAboutIt&&t.attributes.hasFolderAboutIt.forEach((function(a){var i,r,n,o,l,d=e.tree_map.get(a),c=d.dataset_relative_path.split("/"),u=d.basename;t.type===b.b.Subject.key&&(null===(i=t.attributes)||void 0===i||null===(r=i.localId)||void 0===r?void 0:r[0])==c[c.length-1]&&(u=c[0]),t.type===b.b.Sample.key&&(null===(n=t.attributes)||void 0===n||null===(o=n.localId)||void 0===o?void 0:o[0])==c[c.length-1]&&(u=c[0]+"/"+u);var p=t,h=e.buildFolder(d,u,p);t.type===b.b.Sample.key&&(h.remote_id=d.basename+"_"+u,h.uri_api=h.remote_id);var v=null===(l=e.tree_parents_map2.get(h.parent_id))||void 0===l?void 0:l.map((function(e){return e.parent_id=h.uri_api,e.collapsed=!0,e}));if(e.filterNode(h)||void 0!==e.nodes.get(h.remote_id)||e.linkToNode(h,p),void 0===e.tree_parents_map2.get(h.uri_api))e.tree_parents_map2.set(h.uri_api,v),e.tree_parents_map2.delete(h.parent_id),null===v||void 0===v||v.forEach((function(t){e.filterNode(t)||e.linkToNode(t,e.nodes.get(h.remote_id))}));else{var m=void 0===v?Object(s.a)(e.tree_parents_map2.get(h.uri_api)):[].concat(Object(s.a)(e.tree_parents_map2.get(h.uri_api)),Object(s.a)(v));e.tree_parents_map2.set(h.uri_api,m),e.tree_parents_map2.delete(h.parent_id),null===m||void 0===m||m.forEach((function(t){e.filterNode(t)||e.linkToNode(t,e.nodes.get(h.remote_id))}))}}))}))}},{key:"buildFolder",value:function(e,t){var a=Object(i.a)({},e);return a.parent_id=a.remote_id,a.uri_api=a.remote_id,a.basename=t,a}},{key:"linkToNode",value:function(e,t){var a,i=this,r=null===t||void 0===t?void 0:t.level;(null===t||void 0===t?void 0:t.type)===b.b.Sample.key&&(void 0!==t.attributes.derivedFrom&&(r=(null===(a=this.nodes.get(t.attributes.derivedFrom[0]))||void 0===a?void 0:a.level)+1));var n=this.buildNodeFromJson(e,r);if(t&&(t.children_counter++,n.parent=t,n.id=t.id+n.id,this.forced_edges.push({source:null===t||void 0===t?void 0:t.id,target:null===n||void 0===n?void 0:n.id}),n.childLinks=[],!this.nodes.get(n.id))){this.nodes.set(n.id,this.factory.createNode(n));var o=this.tree_parents_map2.get(e.remote_id);(null===o||void 0===o?void 0:o.length)>0&&o.forEach((function(e){!i.filterNode(e)&&i.linkToNode(e,n)}))}}},{key:"buildNodeFromJson",value:function(e,t){var a=this.proxies_map.get(e.uri_api);if(a)return this.nodes.get(a);var i={id:e.uri_api,level:t+1,attributes:{identifier:e.basename,relativePath:e.dataset_relative_path,size:e.size_bytes,mimetype:e.mimetype,updated:e.timestamp_updated,status:e.status,publishedURI:""},types:[],name:e.basename,proxies:[],properties:[],type:"inode/directory"===e.mimetype?"Collection":"File",tree_reference:null,children_counter:0};return this.factory.createNode(i,[])}},{key:"generateData",value:function(){var e,t=this,a=this.tree_map.get(this.root_id),i=this.tree_parents_map.get(null===a||void 0===a?void 0:a.remote_id);null===(e=this.tree_parents_map)||void 0===e||e.delete(null===a||void 0===a?void 0:a.remote_id),this.tree=this.generateLeaf(a),null===i||void 0===i||i.forEach((function(e){t.build_leaf(e,t.tree)})),this.forced_nodes=Array.from(this.nodes).map((function(e){var a,i,n,o,l=Object(r.a)(e,2),s=l[0],d=l[1],c=(null===d||void 0===d||null===(a=d.id)||void 0===a||null===(i=a.match(/https?:\/\/[^\s]+/))||void 0===i?void 0:i[0])||"",u=t.tree_map.get(c);u?(d.tree_reference=u,u.publishedURI=Array.from(t.nodes)[0][1].attributes.hasUriPublished[0]+"?datasetDetailsTab=files&path=files/"+(null===(n=u)||void 0===n?void 0:n.dataset_relative_path.substr(0,null===(o=u)||void 0===o?void 0:o.dataset_relative_path.lastIndexOf("/"))),t.nodes.set(s,d),u.graph_reference=d,t.tree_map.set(d.id,u)):d.proxies.every((function(e){var a,i;return!(u=t.tree_map.get(e))||(u.publishedURI=Array.from(t.nodes)[0][1].attributes.hasUriPublished[0]+"?datasetDetailsTab=files&path=files/"+(null===(a=u)||void 0===a?void 0:a.dataset_relative_path.substr(0,null===(i=u)||void 0===i?void 0:i.dataset_relative_path.lastIndexOf("/"))),d.tree_reference=u,t.nodes.set(s,d),u.graph_reference=d,t.tree_map.set(e,u),!1)}));return d})),this.fix_links(),this.identify_childless_parents()}},{key:"build_leaf",value:function(e,t){var a=this,i=this.generateLeaf(e,t);t.items.push(i);var r=this.tree_parents_map.get(e.remote_id);this.tree_parents_map.delete(e.remote_id),r&&r.forEach((function(e){a.build_leaf(e,i)}))}},{key:"generateLeaf",value:function(e,t){if(e){var a;if(e.id=null===e||void 0===e?void 0:e.uri_api,e.parent=!0,e.text=void 0!==t?null===e||void 0===e?void 0:e.basename:this.dataset_id,e.type="inode/directory"===e.mimetype?b.b.Collection.key:b.b.File.key,e.path=void 0!==t&&void 0!==t.path?[e.id].concat(Object(s.a)(t.path)):[e.id],e.items||(e.items=[]),e.graph_reference=this.findReference(e.remote_id),void 0===e.graph_reference&&(e.graph_reference=this.findReference(e.uri_api)),void 0===e.graph_reference){var i=(r=this.nodes,n=e.id,Object(s.a)(r.keys()).find((function(e){return e.includes(n)})));i&&(e.graph_reference=this.findReference(i))}return this.tree_map.set(e.id,e),{id:e.uri_api,text:e.text,items:e.items,graph_reference:null===e||void 0===e||null===(a=e.graph_reference)||void 0===a?void 0:a.id,path:e.path}}return{};var r,n}},{key:"findReference",value:function(e){var t=this.nodes.get(e);return void 0===t&&this.nodes.forEach((function(a,i){-1!==a.proxies.indexOf(String(e))&&(t=a)})),t}}]),e}();t.a=f},130:function(e,t,a){"use strict";a.d(t,"a",(function(){return r}));var i=a(59),r=(i.WidgetStatus.ACTIVE,{id:"nodeViewWidget",name:"Node View",component:"nodeView",panelName:"rightPanel",enableClose:!0,enableRename:!1,enableDrag:!1,status:i.WidgetStatus.ACTIVE})},131:function(e,t,a){"use strict";a(0);var i=a(573),r=a.p+"static/media/check.2d613265.svg",n=a(1);t.a=function(e){var t=e.handleClose,a=e.enabledButton;return Object(n.jsxs)(i.a,{variant:"contained",fullWidth:!0,disableElevation:!0,color:"primary",onClick:t,disabled:a,children:[Object(n.jsx)("img",{src:r,alt:"Check"}),"Done"]})}},188:function(e,t,a){"use strict";t.a=a.p+"static/media/dataset.3c0498c8.svg"},189:function(e,t,a){"use strict";t.a=a.p+"static/media/folder.d55ab3f1.svg"},19:function(e,t,a){"use strict";t.a={fontFamily:"Inter, sans-serif",primaryColor:"#3779E1",primaryColorHover:"#2763C1",outlinedButtonHover:"#E4EEFF",secondaryColor:"#222739",searchBg:"rgba(255, 255, 255, 0.1)",primaryBgColor:"#F5F7FB",primaryTextColor:"#2E3A59",lightBorderColor:"rgba(255, 255, 255, 0.1)",noInstanceColor:"rgba(255, 255, 255, 0.6)",inputTextColor:"rgba(255, 255, 255, 0.8)",iconButtonHover:"rgba(255, 255, 255, 0.2)",radius:".5rem",gutter:16,whiteColor:"#FFFFFF",sidebarIconColor:"rgba(221, 221, 221, 0.8)",primaryTransition:"all ease-in-out .3s",errorColor:"#ED745D",progressErrorColor:"rgba(237, 116, 93, 0.1)",barSuccessColor:"#6FC386",tabsBgColor:"#F5F8FD",progressBgPrimary:"rgba(55, 121, 225, 0.1)",dropzoneBorderColor:"rgba(55, 121, 225, 0.3)",dropzoneTextColor:"rgba(46, 58, 89, 0.3)",inputFocusShadow:"rgba(55, 121, 225, 0.1)",successInputFocusShadow:"rgba(111, 195, 134, 0.1)",placeHolderColor:"rgba(46, 58, 89, 0.6)",dialogShadow:"rgba(0, 0, 0, 0.1)",tabsBorderColor:"rgba(0, 0, 0, 0.1)",dialogBodyBgColor:"rgba(55, 121, 225, 0.05)",sideBarTextColor:"rgba(46, 58, 89, 0.8)",chipBgColor:"rgba(46, 58, 89, 0.05)",dataset:"#3779E1",matlab:"#6FC386",nifti:"#7747F6",volume:"#3779E1",sideBarLabelColor:"#435070",treeBorderColor:"#4E5261",scrollbarBg:"rgba(0, 0, 0, 0.24)",gray800:"#0F162B",gray400:"#586482",gray25:"#F0F1F2",grey700:"#212B45",grey500:"#435070",grey100:"#C9CDD6",grey400:"#586482",grey50:"#E1E3E8",grey25:"#F0F1F2",grey600:"#2E3A59"}},190:function(e,t,a){"use strict";t.a=a.p+"static/media/file.4236de94.svg"},193:function(e,t,a){"use strict";var i=a(27),r=a(8);function n(e){var t=new Image;if(e.type===r.b.File.key){var a=e.name.split(".").pop();t.src="./images/graph/files/"+a+".svg"}else{var i,n,o;if("Group"!==e.type)t.src=""!==(null===(i=r.b[String(e.type)])||void 0===i?void 0:i.image)?null===(n=r.b[String(e.type)])||void 0===n?void 0:n.image:null===(o=r.b.Unknown)||void 0===o?void 0:o.image}return t}function o(e,t){var a;if(void 0!==t){var n,o=Object(i.a)(e.properties);try{for(o.s();!(n=o.n()).done;){var l,s=n.value,d=Object(i.a)(r.b[e.type].properties);try{for(d.s();!(l=d.n()).done;){var c,u,p=l.value;s.predicate===(null===(c=t[p.type])||void 0===c||null===(u=c.iri)||void 0===u?void 0:u.id)+p.key&&(void 0!==e.attributes[p.property]||(e.attributes[p.property]=[]),e.attributes[p.property].push(s.value))}}catch(y){d.e(y)}finally{d.f()}}}catch(y){o.e(y)}finally{o.f()}if(e.additional_properties){var b,h=Object(i.a)(r.b[e.type].additional_properties);try{for(h.s();!(b=h.n()).done;){var v,m=b.value,g=e.additional_properties,f=Object(i.a)(m.path);try{for(f.s();!(v=f.n()).done;){var j=v.value;if(void 0===g[j]){g=void 0;break}g=g[j]}}catch(y){f.e(y)}finally{f.f()}void 0!==g&&("object"===typeof g&&null!==g&&g[m.innerPath]&&(g=g[m.innerPath]),e.attributes[m.property]=[],"string"===m.type?e.attributes[m.property].push(g.replace(m.trimType,"")):e.attributes[m.property].push(parseFloat(g)))}}catch(y){h.e(y)}finally{h.f()}}void 0!==(null===e||void 0===e||null===(a=e.attributes)||void 0===a?void 0:a.identifier)&&(e.name=e.attributes.identifier)}}var l=function(e,t){return e.img=n(e),o(e,t),e},s=function(e,t){var a,i,r,l,s,d,c,u,p,b,h,v;return o(e,t),e.img=n(e),e.name=void 0!==(null===(a=e.attributes)||void 0===a?void 0:a.firstName)?void 0!==(null===(i=e.attributes)||void 0===i?void 0:i.middleName)?void 0!==(null===(r=e.attributes)||void 0===r?void 0:r.lastName)?(null===(l=e.attributes)||void 0===l?void 0:l.firstName)+" "+(null===(s=e.attributes)||void 0===s?void 0:s.middleName)+" "+(null===(d=e.attributes)||void 0===d?void 0:d.lastName):(null===(c=e.attributes)||void 0===c?void 0:c.firstName)+" "+(null===(u=e.attributes)||void 0===u?void 0:u.middleName):void 0!==(null===(p=e.attributes)||void 0===p?void 0:p.lastName)?(null===(b=e.attributes)||void 0===b?void 0:b.firstName)+" "+(null===(h=e.attributes)||void 0===h?void 0:h.lastName):null===(v=e.attributes)||void 0===v?void 0:v.firstName:e.name,e},d=function(e,t){o(e,t),e.img=n(e);var a=e.name.split("/");return e.name=a[a.length-1],e},c=function(e,t){e.img=n(e),o(e,t);var a=e.name.split(":");return e.name=a[a.length-1],e},u=function(e,t){e.img=n(e),o(e,t);var a=e.name.split("/");return e.name=a[a.length-1],e},p=function(e,t){var a;if(e.img=n(e),o(e,t),void 0!==(null===(a=e.attributes)||void 0===a?void 0:a.identifier)){var i;e.name=null===(i=e.attributes)||void 0===i?void 0:i.identifier[0]}else{var r=e.name.split("/");e.name=r[r.length-1]}return e},b=function(e,t){var a;if(e.img=n(e),o(e,t),void 0!==(null===(a=e.attributes)||void 0===a?void 0:a.identifier)){var i;e.name=null===(i=e.attributes)||void 0===i?void 0:i.identifier[0]}else{var r=e.name.split("/");e.name=r[r.length-1]}return e},h=function(e,t){return e.img=n(e),o(e,t),e},v=function(e,t){var a,i,r,l,s,d,c,u,p,b,h,v;return o(e,t),e.img=n(e),e.name=void 0!==(null===(a=e.attributes)||void 0===a?void 0:a.firstName)?void 0!==(null===(i=e.attributes)||void 0===i?void 0:i.middleName)?void 0!==(null===(r=e.attributes)||void 0===r?void 0:r.lastName)?(null===(l=e.attributes)||void 0===l?void 0:l.firstName)+" "+(null===(s=e.attributes)||void 0===s?void 0:s.middleName)+" "+(null===(d=e.attributes)||void 0===d?void 0:d.lastName):(null===(c=e.attributes)||void 0===c?void 0:c.firstName)+" "+(null===(u=e.attributes)||void 0===u?void 0:u.middleName):void 0!==(null===(p=e.attributes)||void 0===p?void 0:p.lastName)?(null===(b=e.attributes)||void 0===b?void 0:b.firstName)+" "+(null===(h=e.attributes)||void 0===h?void 0:h.lastName):null===(v=e.attributes)||void 0===v?void 0:v.firstName:e.name,e},m=function(e,t){return e.img=n(e),o(e,t),e};t.a=function(){this.createNode=function(e,t){var a;switch(e.type){case"Award":a=new d(e,t);break;case"Collection":a=new l(e,t);break;case"Contributor":a=new s(e,t);break;case"Dataset":a=new c(e,t);break;case"Protocol":a=new u(e,t);break;case"Sample":a=new p(e,t);break;case"Subject":a=new b(e,t);break;case"File":a=new h(e,t);break;case"Person":a=new v(e,t);break;default:a=new m(e,t)}return a}}},204:function(e,t,a){"use strict";t.a=a.p+"static/media/close.51de2817.svg"},205:function(e,t,a){"use strict";var i=a(11),r=a(15),n=a(27),o=a(21),l=a(40),s=a(28),d=a(25),c=a(193),u=a(8),p=a(375),b=function(){function e(t,a){Object(s.a)(this,e),this.filterNode=function(e){return e.basename.includes(".tmp")},this.factory=new c.a,this.turtleFile=a,this.types={},this.levelsMap={},this.turtleData=[],this.tree=void 0,this.nodes=void 0,this.edges=void 0,this.root_id=void 0,this.proxies_map=void 0,this.forced_nodes=void 0,this.store=new p.Store}return Object(d.a)(e,[{key:"initialiseNodesEdges",value:function(){this.edges=[],this.nodes=new Map,this.proxies_map=new Map}},{key:"extractTurtle",value:function(){var e=this;return new Promise((function(t,a){(new p.Parser).parse(e.turtleFile,(function(a,i,r){i?(e.store.addQuad(i),e.turtleData.push(i)):t(e.turtleData)}),(function(t,a){e.types[String(t)]={type:t,iri:a}}))}))}},{key:"getTurtle",value:function(){return this.turtleData}},{key:"getGraph",value:function(){var e=Object(l.a)(Object(o.a)().mark((function e(){return Object(o.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0!==this.nodes&&void 0!==this.edges){e.next=3;break}return e.next=3,this.processDataset();case 3:return e.abrupt("return",{nodes:this.forced_nodes});case 4:case"end":return e.stop()}}),e,this)})));return function(){return e.apply(this,arguments)}}()},{key:"getTree",value:function(){var e=Object(l.a)(Object(o.a)().mark((function e(){return Object(o.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0!==this.tree){e.next=3;break}return e.next=3,this.processDataset();case 3:return e.abrupt("return",this.tree);case 4:case"end":return e.stop()}}),e,this)})));return function(){return e.apply(this,arguments)}}()},{key:"getDatasetId",value:function(){return this.dataset_id}},{key:"processTurtle",value:function(){var e=Object(l.a)(Object(o.a)().mark((function e(){return Object(o.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.extractTurtle();case 2:case"end":return e.stop()}}),e,this)})));return function(){return e.apply(this,arguments)}}()},{key:"processDataset",value:function(){var e=Object(l.a)(Object(o.a)().mark((function e(){return Object(o.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.initialiseNodesEdges(),e.next=3,this.processTurtle();case 3:this.create_graph(),this.mergeData(),this.generateData();case 6:case"end":return e.stop()}}),e,this)})));return function(){return e.apply(this,arguments)}}()},{key:"get_type",value:function(e){var t,a={type:u.d.unknown.type,length:0},i=Object(n.a)(null===e||void 0===e?void 0:e.types);try{for(i.s();!(t=i.n()).done;){var r=t.value;if(r.type===this.types.owl.iri.id+"NamedIndividual")for(var o in this.types)e.id.includes(this.types[o].iri.id)&&this.types[o].iri.id.length>a.length&&void 0!==u.d.NamedIndividual[String(this.types[o].type)]&&(a.type=u.d.NamedIndividual[String(this.types[o].type)].type,a.length=this.types[o].iri.id.length);else if(r.type===this.types.owl.iri.id+"Ontology")a.type=u.d.ontology.type,a.length=u.d.ontology.length;else if(r.type.includes(this.types.sparc.iri.id)&&void 0!==u.d.sparc[r.type.split(this.types.sparc.iri.id).pop()]){var l=r.type.split(this.types.sparc.iri.id).pop();a.type=u.d.sparc[l].type,a.length=u.d.sparc[l].length}}}catch(s){i.e(s)}finally{i.f()}return a.type}},{key:"build_node",value:function(e){this.nodes.get(e.id)?(console.error("Issue with the build node, this node is already present"),console.error(e)):this.nodes.set(e.id,{id:e.id,attributes:{},types:[],name:e.value,proxies:[],properties:[],tree_reference:null,children_counter:0})}},{key:"update_node",value:function(e,t){var a=this;if(!p.Util.isBlankNode(e.subject)){var i=this.nodes.get(e.subject.id);if(i)e.predicate.id===u.c?(i.types=[].concat(Object(r.a)(i.types),[{predicate:e.predicate.id,type:e.object.datatype?e.object.datatype.id:e.object.id,value:e.object.value}]),this.nodes.set(e.subject.id,i)):(i.properties=[].concat(Object(r.a)(i.properties),[{predicate:e.predicate.id,type:e.object.datatype?e.object.datatype.id:e.object.id,value:e.object.value}]),t&&(i.proxies=[].concat(Object(r.a)(i.proxies),[e.object.id]),this.proxies_map.set(e.object.id,e.subject.id)),this.nodes.set(e.subject.id,i));else{var n=!0;this.nodes.forEach((function(t,i){-1!==t.proxies.indexOf(String(e.subject.id))&&(t.properties=[].concat(Object(r.a)(t.properties),[{predicate:e.predicate.id,type:e.object.datatype,value:e.object.value}]),t.proxies=[].concat(Object(r.a)(t.proxies),[e.object.id]),a.proxies_map.set(e.object.id,i),a.nodes.set(i,t),n=!1)})),n&&(console.error("Houston, we have a problem!"),console.error(e))}}}},{key:"link_nodes",value:function(e){var t=this.nodes.get(e.subject.id),a=this.nodes.get(e.object.id);t&&a&&e.subject.id!==e.object.id?(this.edges.push({source:e.subject.id,target:e.object.id}),this.update_node(e,!1)):this.update_node(e,!0)}},{key:"cast_nodes",value:function(){var e=this,t=void 0,a=void 0;this.nodes.forEach((function(i,r){i.type=e.get_type(i);var n=e.factory.createNode(i,e.types);n.type!==u.b.Unknown.key?e.nodes.set(r,n):(e.nodes.delete(r),e.edges=e.edges.filter((function(e){return e.source!==r&&e.target!==r}))),i.type===u.d.NamedIndividual.dataset.type&&(t=i),i.type===u.d.ontology.type&&(a=i)})),this.root_id=t.id,t.properties=t.properties.concat(a.properties),t.proxies=t.proxies.concat(a.proxies),t.level=1,this.nodes.set(t.id,t);var i=this.edges.map((function(e){return e.source===a.id&&(e.source=t.id),e.target===a.id&&(e.target=t.id),e}));return this.edges=i,t}},{key:"organise_nodes",value:function(e){var t=this,a=e.id;this.forced_edges=this.edges.filter((function(e){return e.target!==e.source&&t.nodes.get(e.source).level!==t.nodes.get(e.target).level})).map((function(e){if(e.target===a){var i=e.target;e.target=e.source,e.source=i}var r=t.nodes.get(e.source);return r.children_counter++,t.nodes.set(r.id,r),e})).filter((function(e){return t.nodes.get(e.target).type===u.b.Dataset.key}))}},{key:"identify_childless_parents",value:function(){this.forced_nodes.forEach((function(e,t,a){e.type!==u.b.Sample.key&&e.type!==u.b.Subject.key||0!==e.children_counter||(e.img.src="./images/graph/question_mark.svg")}))}},{key:"create_graph",value:function(){var e,t=Object(n.a)(this.store.getSubjects());try{for(t.s();!(e=t.n()).done;){var a=e.value;p.Util.isBlankNode(a)||this.build_node(a)}}catch(c){t.e(c)}finally{t.f()}var r,o=Object(n.a)(this.turtleData.entries());try{for(o.s();!(r=o.n()).done;){var l=Object(i.a)(r.value,2),s=(l[0],l[1]);p.Util.isLiteral(s.object)||s.predicate.id===u.c?this.update_node(s,!1):this.link_nodes(s)}}catch(c){o.e(c)}finally{o.f()}var d=this.cast_nodes();this.organise_nodes(d)}},{key:"mergeData",value:function(){var e=this;this.nodes.forEach((function(t,a){if(void 0!==t.attributes&&void 0!==t.attributes.hasFolderAboutIt){var i,r=e.tree_parents_map.get(null===(i=e.tree_map.get(t.attributes.hasFolderAboutIt[0]))||void 0===i?void 0:i.remote_id);null===r||void 0===r||r.forEach((function(a){!e.filterNode(a)&&e.linkToNode(a,t)}))}}))}},{key:"linkToNode",value:function(e,t){var a=this,i=t.level;t.type===u.b.Sample.key&&void 0!==t.attributes.derivedFrom&&(i=this.nodes.get(t.attributes.derivedFrom[0]).level+1),t.children_counter++;var r=this.buildNodeFromJson(e,i);r.parent=t,this.forced_edges.push({source:t.id,target:r.id}),this.nodes.set(r.id,this.factory.createNode(r));var n=this.tree_parents_map.get(e.remote_id);(null===n||void 0===n?void 0:n.length)>0&&n.forEach((function(e){!a.filterNode(e)&&a.linkToNode(e,r)}))}},{key:"buildNodeFromJson",value:function(e,t){var a=this.proxies_map.get(e.uri_api);if(a)return this.nodes.get(a);var i={id:e.uri_api,level:t+1,attributes:{identifier:e.basename,relativePath:e.dataset_relative_path,size:e.size_bytes,mimetype:e.mimetype,updated:e.timestamp_updated,status:e.status},types:[],name:e.basename,proxies:[],properties:[],type:"inode/directory"===e.mimetype?"Collection":"File",tree_reference:null,children_counter:0};return this.factory.createNode(i,[])}},{key:"generateData",value:function(){this.forced_nodes=Array.from(this.nodes).map((function(e){var t=Object(i.a)(e,2),a=(t[0],t[1]);return a.proxies.every((function(e){return!0})),a}))}},{key:"build_leaf",value:function(e,t){var a=this,i=this.generateLeaf(e,t);t.items.push(i);var r=this.tree_parents_map.get(e.remote_id);this.tree_parents_map.delete(e.remote_id),r&&r.forEach((function(e){a.build_leaf(e,i)}))}},{key:"generateLeaf",value:function(e,t){var a;return e.id=e.uri_api,e.parent=!0,e.text=void 0!==t?e.basename:this.dataset_id,e.type="inode/directory"===e.mimetype?u.b.Collection.key:u.b.File.key,e.path=void 0!==t&&void 0!==t.path?[e.id].concat(Object(r.a)(t.path)):[e.id],e.items||(e.items=[]),e.graph_reference=this.findReference(e.uri_api),this.tree_map.set(e.id,e),{id:e.uri_api,text:e.text,items:e.items,graph_reference:null===e||void 0===e||null===(a=e.graph_reference)||void 0===a?void 0:a.id,path:e.path}}},{key:"findReference",value:function(e){var t=this.nodes.get(e);return void 0===t&&this.nodes.forEach((function(a,i){-1!==a.proxies.indexOf(String(e))&&(t=a)})),t}}]),e}();t.a=b},26:function(e,t,a){"use strict";a.d(t,"a",(function(){return i})),a.d(t,"b",(function(){return r})),a.d(t,"e",(function(){return n})),a.d(t,"d",(function(){return o})),a.d(t,"h",(function(){return l})),a.d(t,"c",(function(){return s})),a.d(t,"g",(function(){return d})),a.d(t,"f",(function(){return c})),a.d(t,"i",(function(){return u})),a.d(t,"j",(function(){return p})),a.d(t,"k",(function(){return b})),a.d(t,"n",(function(){return h})),a.d(t,"m",(function(){return v})),a.d(t,"l",(function(){return m})),a.d(t,"q",(function(){return g})),a.d(t,"p",(function(){return f})),a.d(t,"o",(function(){return j})),a.d(t,"r",(function(){return y}));var i="ADD_DATASET",r="DELETE_DATASET",n="SET_DATASET_LIST",o="SELECT_INSTANCE",l="TRIGGER_ERROR",s="SELECT_GROUP",d="TOGGLE_METADATA_SETTINGS",c="TOGGLE_METADATA_ITEM_VISIBILITY",u="UPDATE_METADATA_ITEMS_ORDER",p=function(e){return{type:i,data:{dataset:e}}},b=function(e){return{type:r,data:{dataset_id:e}}},h=function(e){return{type:n,data:{datasets:e}}},v=function(e){return{type:o,data:{dataset_id:e.dataset_id,graph_node:e.graph_node,tree_node:e.tree_node,source:e.source}}},m=function(e){return{type:s,data:{dataset_id:e.dataset_id,graph_node:e.graph_node,tree_node:e.tree_node,source:e.source}}},g=function(e){return{type:l,data:{error_message:e}}},f=function(e){return{type:d,data:{visible:e}}},j=function(e,t){return{type:c,data:{groupTitle:e,itemId:t}}},y=function(e){var t=e.groupTitle,a=e.newItemsOrder;return{type:u,payload:{title:t,newItemsOrder:a}}}},31:function(e){e.exports=JSON.parse('{"datasets_url":"https://cassava.ucsd.edu/sparc/datasets/","repository_url":"https://cassava.ucsd.edu/sparc/preview/exports/","issues_url":"https://github.com/MetaCell/sds-viewer/issues/new","docs_url":"https://github.com/MetaCell/sds-viewer/blob/development/README.md","available_datasets":"curation-export-published.ttl","groups":{"order":{"animalSubjectIsOfSpecies":{"tag":"Subject Species","icon":"./images/graph/species.svg"},"animalSubjectIsOfStrain":{"tag":"Subject Strain","icon":"./images/graph/strains.svg"},"hasBiologicalSex":{"tag":"Subject Sex","icon":"./images/graph/sex.svg"},"hasAgeCategory":{"tag":"Subject Age","icon":"./images/graph/age.svg"}}},"text":{"datasetsButtonText":"Import a new dataset","datasetsDialogSearchText":"Search datasets by label or id","datasetsButtonSubtitleText":"Select a dataset to load"},"datasetsStorage":"publishedDatasets","version":"13-Aug-2024"}')},377:function(e,t,a){"use strict";(function(e){var i=a(21),r=a(40),n=a(11),o=(a(457),a(424)),l=a(0),s=a(400),d=a(69),c=a(121),u=a(380),p=a(66),b=a(22),h=a(422),v=a(384),m=a(389),g=a(421),f=a(399),j=a(570),y=a(577),O=a(26),x=a(130),_=a(42),k=a(59),S=a(205),T=a(31),w=a(1);t.a=Object(s.hot)(e)((function(){var e=new URLSearchParams(window.location.search),t=e.get("id"),a=e.get("doi"),s=e.get("local"),C=Object(b.b)(),I=Object(l.useState)(!1),E=Object(n.a)(I,2),N=E[0],P=E[1],M=Object(l.useState)(!1),D=Object(n.a)(M,2),A=D[0],F=D[1],R=Object(b.c)((function(e){return e.sdsState.datasets})),U=Object(b.c)((function(e){return e.sdsState.error_message})),B=Object(l.useState)(void 0),L=Object(n.a)(B,2),H=(L[0],L[1],Object(l.useState)(void 0)),z=Object(n.a)(H,2),W=(z[0],z[1],Object(l.useState)(!0)),G=Object(n.a)(W,2),V=G[0],J=(G[1],Object(l.useState)(!1)),Z=Object(n.a)(J,2),q=Z[0],Y=Z[1],Q=Object(l.useState)((function(){return!(!t||""===t)||!(!a||""===a)})),$=Object(n.a)(Q,2),K=$[0],X=$[1],ee="",te="",ae=void 0,ie=function(){var e=Object(r.a)(Object(i.a)().mark((function e(t,a){var r;return Object(i.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return ae=new c.a(a,t),e.t0=ae.getDatasetId(),e.next=4,ae.getGraph();case 4:return e.t1=e.sent,e.next=7,ae.getTree();case 7:e.t2=e.sent,e.t3=ae,r={id:e.t0,graph:e.t1,tree:e.t2,splinter:e.t3},C(Object(O.j)(r)),C(Object(_.addWidget)({id:r.id,name:r.id.substring(0,10)+"... Graph",component:"graphComponent",panelName:"leftPanel",enableClose:!0,enableRename:!0,enableDrag:!0,status:k.WidgetStatus.ACTIVE,config:{graph_id:r.id,component:"graphComponent"}})),C(Object(_.addWidget)(x.a)),X(!1);case 14:case"end":return e.stop()}}),e)})));return function(t,a){return e.apply(this,arguments)}}(),re=function(){var e=Object(r.a)(Object(i.a)().mark((function e(t){return Object(i.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:ee=T.datasets_url+t+"/LATEST/curation-export.ttl",(new p.a).get_remote_file(ee,(function(e,a){a&&(te=T.datasets_url+t+"/LATEST/path-metadata.json",(new p.a).get_remote_file(te,(function(e,t){a&&t&&!q&&(ie(a,t),Y(!0))}),(function(){X(!1)})))}),null);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),ne=function(){var e=Object(r.a)(Object(i.a)().mark((function e(t,r){var n,o,l,s,d,c,u,p,b,h;return Object(i.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o={id:"ttl",url:t,data:r,file:{name:"ttl",type:"text/turtle"}},l=new S.a(void 0,o.data),e.next=4,l.getGraph();case 4:s=e.sent,d=s.nodes.filter((function(e){var t;return null===e||void 0===e||null===(t=e.attributes)||void 0===t?void 0:t.hasDoi})),c=T.version,(u=d.find((function(e){var t,i,r;return null===(t=e.attributes)||void 0===t||null===(i=t.hasDoi)||void 0===i||null===(r=i[0])||void 0===r?void 0:r.includes(a)})))?(p=u.name,re(p)):(X(!1),Y(!1)),b={},void 0!==c&&(null===(n=JSON.parse(localStorage.getItem(T.datasetsStorage)))||void 0===n?void 0:n.version)!==c&&(h=[],d.forEach((function(e){var t,a,i,r,n;h.push({name:e.name,doi:null===(t=e.attributes)||void 0===t||null===(a=t.hasDoi)||void 0===a?void 0:a[0],label:e.attributes?null===(i=e.attributes)||void 0===i||null===(r=i.label)||void 0===r||null===(n=r[0])||void 0===n?void 0:n.toLowerCase():null})})),b={version:c,datasets:h},localStorage.setItem(T.datasetsStorage,JSON.stringify(b)));case 11:case"end":return e.stop()}}),e)})));return function(t,a){return e.apply(this,arguments)}}();return Object(l.useEffect)((function(){if(t&&""!==t&&re(t),a&&""!==a&&V){var e=T.version,i=JSON.parse(localStorage.getItem(T.datasetsStorage));if((null===i||void 0===i?void 0:i.version)===e){var r=JSON.parse(localStorage.getItem(T.datasetsStorage)).datasets.find((function(e){return null===e||void 0===e?void 0:e.doi.includes(a)}));if(r){var n=r.name;re(n)}else X(!1),Y(!1)}else{var o=new p.a,l=T.repository_url+T.available_datasets;o.get_remote_file(l,ne)}}}),[]),Object(w.jsxs)(j.a,{theme:o.a,children:[Object(w.jsx)(y.a,{}),Object(w.jsxs)(d.a,{display:"flex",className:"main-structure",children:[Object(w.jsx)(h.a,{openUploadDialog:N,setOpenUploadDialog:P,openDatasetsListDialog:A,setOpenDatasetsListDialog:F,local:s}),Object(w.jsx)(d.a,{className:"content full-round",children:R.length>0?Object(w.jsx)(u.a,{}):Object(w.jsx)(v.a,{loading:K,openUploadDialog:N,setOpenUploadDialog:P,openDatasetsListDialog:A,setOpenDatasetsListDialog:F})})]}),Object(w.jsx)(g.a,{open:N,handleClose:function(){return P(!1)}}),Object(w.jsx)(f.a,{open:A,handleClose:function(){return F(!1)}}),Object(w.jsx)(m.a,{open:null!==U,error_message:U})]})}))}).call(this,a(456)(e))},380:function(e,t,a){"use strict";var i=a(11),r=a(22),n=a(0),o=a(255),l=a(198),s=a(184),d=a(1),c=Object(o.a)({layoutContainer:{position:"relative",width:"100%",height:"100%"}});t.a=function(){var e=c(),t=Object(r.d)(),a=Object(n.useState)(void 0),o=Object(i.a)(a,2),u=o[0],p=o[1];return Object(n.useEffect)((function(){if(void 0===u){var e=Object(s.getLayoutManagerInstance)();e.model.visitNodes((function(t,a){t.setEventListener("resize",(function(t){var a=e.model._activeTabSet._children.filter((function(e){return e._visible})),i=new CustomEvent("nodeResized",{detail:a});document.dispatchEvent(i)})),t.setEventListener("visibility",(function(t,a){var i=e.model._activeTabSet._children.filter((function(e){return!e._visible})),r=new CustomEvent("nodeVisible",{detail:i});document.dispatchEvent(r)}))})),e&&p(e.getComponent())}}),[t,u]),Object(d.jsx)("div",{className:e.layoutContainer,children:void 0===u?Object(d.jsx)(l.a,{}):Object(d.jsx)(u,{})})}},384:function(e,t,a){"use strict";a(0);var i=a(385),r=a.n(i),n=a(69),o=a(55),l=a(573),s=a(12),d=a(1);t.a=function(e){return Object(d.jsx)(n.a,{className:"MuiBox-empty",children:e.loading?Object(d.jsx)(d.Fragment,{children:Object(d.jsx)(r.a,{active:e.loading})}):Object(d.jsxs)(d.Fragment,{children:[Object(d.jsxs)(o.a,{variant:"h3",children:[s.e," to start."]}),Object(d.jsxs)(l.a,{variant:"outlined",disableElevation:!0,color:"primary",onClick:function(){return e.setOpenDatasetsListDialog(!0)},children:["+ ",s.e]})]})})}},389:function(e,t,a){"use strict";a(0);var i=a(428),r=a(69),n=a(55),o=a(22),l=a(26),s=a(1);t.a=function(e){var t=e.open,a=e.error_message,d=Object(o.b)();return Object(s.jsxs)(i.a,{open:t,onClose:function(){d(Object(l.q)(null))},children:[Object(s.jsx)(r.a,{className:"dialog_header",children:Object(s.jsx)(n.a,{variant:"h3",children:" Generic Error Message"})}),Object(s.jsx)(r.a,{className:"dialog_body",children:Object(s.jsxs)(n.a,{variant:"h8",children:[" ",a," "]})})]})}},399:function(e,t,a){"use strict";var i=a(21),r=a(40),n=a(11),o=a(0),l=a.n(o),s=a(22),d=a(428),c=a(579),u=a(55),p=a(69),b=a(588),h=a(208),v=a(430),m=a(431),g=a(583),f=a(575),j=a(198),y=a(26),O=a(121),x=a(130),_=a(42),k=a(205),S=a(59),T=a(66),w=a(131),C=a(204),I=a(31),E=a(1);t.a=function(e){var t=Object(s.b)(),a=e.open,N=e.handleClose,P=l.a.useState(""),M=Object(n.a)(P,2),D=M[0],A=M[1],F=l.a.useState(void 0),R=Object(n.a)(F,2),U=R[0],B=R[1],L=Object(s.c)((function(e){return e.sdsState.available_datasets})),H=l.a.useState(L),z=Object(n.a)(H,2),W=z[0],G=z[1],V="",J="",Z=void 0,q=function(){var e=Object(r.a)(Object(i.a)().mark((function e(a,r){var n;return Object(i.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return Z=new O.a(r,a),e.t0=Z.getDatasetId(),e.next=4,Z.getGraph();case 4:return e.t1=e.sent,e.next=7,Z.getTree();case 7:e.t2=e.sent,e.t3=Z,n={id:e.t0,graph:e.t1,tree:e.t2,splinter:e.t3},t(Object(y.j)(n)),t(Object(_.addWidget)({id:n.id,name:n.id.substring(0,10)+"... Graph",component:"graphComponent",panelName:"leftPanel",enableClose:!0,enableRename:!0,enableDrag:!0,status:S.WidgetStatus.ACTIVE,config:{graph_id:n.id,component:"graphComponent"}})),t(Object(_.addWidget)(x.a));case 13:case"end":return e.stop()}}),e)})));return function(t,a){return e.apply(this,arguments)}}(),Y=function(e){V=I.datasets_url+e+"/LATEST/curation-export.ttl";var t=new T.a;t.get_remote_file(V,(function(a,i){i&&(J=I.datasets_url+e+"/LATEST/path-metadata.json",t.get_remote_file(J,(function(e,t){t&&(q(i,t),G(L),B(void 0),N())})))}))},Q=function(e){var t=new RegExp(D,"gi");return void 0===D||""===D?e:e.replace(t,(function(e){return""+e+""}))};return Object(o.useEffect)((function(){if(a&&0===L.length){var e=I.version,n=JSON.parse(localStorage.getItem(I.datasetsStorage)),o=null===n||void 0===n?void 0:n.version;if(localStorage.getItem(I.datasetsStorage)&&e===o){var l=JSON.parse(localStorage.getItem(I.datasetsStorage));t(Object(y.n)(l.datasets)),G(l.datasets)}else!function(){var e=new T.a,a=function(){var e=Object(r.a)(Object(i.a)().mark((function e(a,r){var n,o,l,s,d,c,u,p;return Object(i.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o={id:"ttl",url:a,data:r,file:{name:"ttl",type:"text/turtle"}},l=new k.a(void 0,o.data),e.next=4,l.getGraph();case 4:s=e.sent,(d=s.nodes.filter((function(e){var t;return null===e||void 0===e||null===(t=e.attributes)||void 0===t?void 0:t.hasUriApi}))).forEach((function(e){var t,a,i;return e.attributes?e.attributes.lowerCaseLabel=null===(t=e.attributes)||void 0===t||null===(a=t.label)||void 0===a||null===(i=a[0])||void 0===i?void 0:i.toLowerCase():null})),d=d.filter((function(e){var t,a,i;return null===e||void 0===e||null===(t=e.attributes)||void 0===t||null===(a=t.statusOnPlatform)||void 0===a||null===(i=a[0])||void 0===i?void 0:i.includes("PUBLISHED")})),c=I.version,p=[],null===(n=d)||void 0===n||n.forEach((function(e){var t,a,i;p.push({name:e.name,doi:null===(t=e.attributes)||void 0===t||null===(a=t.hasDoi)||void 0===a?void 0:a[0],label:e.attributes?null===(i=e.attributes)||void 0===i?void 0:i.lowerCaseLabel:null})})),u={version:c,datasets:p},localStorage.setItem(I.datasetsStorage,JSON.stringify(u)),t(Object(y.n)(u.datasets)),G(u.datasets);case 16:case"end":return e.stop()}}),e)})));return function(t,a){return e.apply(this,arguments)}}(),n=I.repository_url+I.available_datasets;e.get_remote_file(n,a)}()}})),Object(E.jsxs)(d.a,{className:"datasets_dialog",open:a,handleClose:function(){G(L),B(void 0),N()},PaperProps:{style:{width:"50rem"}},children:[Object(E.jsxs)(c.a,{align:"center",children:[Object(E.jsx)("img",{className:"dialog_close",src:C.a,onClick:N,alt:"Close"}),Object(E.jsx)(u.a,{variant:"h3",children:I.text.datasetsButtonText}),Object(E.jsx)(u.a,{variant:"subtitle1",children:I.text.datasetsButtonSubtitleText})]}),L.length>0?Object(E.jsxs)(E.Fragment,{children:[Object(E.jsx)(p.a,{className:"datasets_list",children:Object(E.jsx)(b.a,{fullWidth:!0,disabled:0===L.length,label:I.text.datasetsDialogSearchText,id:"fullWidth",onChange:function(e){var t=e.target.value.toLowerCase(),a=L.filter((function(e){var a,i;return(null===(a=e.label)||void 0===a?void 0:a.includes(t))||(null===(i=e.name)||void 0===i?void 0:i.includes(t))}));A(t),G(a)}})}),W.length>0?Object(E.jsx)(p.a,{className:"datasets_list datasets_list_results",align:"right",children:Object(E.jsxs)(u.a,{children:[W.length," found"]})}):null,Object(E.jsx)(p.a,{className:"datasets_list",children:Object(E.jsx)(h.a,{className:"datasets_dialog_list",children:Object(E.jsx)(v.a,{className:"datasets_list",children:W.map((function(e){return Object(E.jsxs)(E.Fragment,{children:[Object(E.jsx)(m.a,{className:"dataset_item",selected:U===e.name,onClick:function(t){return a=e.name,void B(a);var a},children:Object(E.jsx)(g.a,{primary:Object(E.jsx)(u.a,{type:"caption",className:"dataset_list_text",dangerouslySetInnerHTML:{__html:Q(e.label)}})})},"item-".concat(e.name)),Object(E.jsx)(f.a,{})]})}))})})})]}):Object(E.jsx)(p.a,{className:"datasets_list",children:Object(E.jsx)(j.a,{className:"datasets_loader"})}),Object(E.jsx)(p.a,{className:"datasets_list",children:Object(E.jsx)(w.a,{handleClose:function(){return Y(U)},enabledButton:void 0===U})})]})}},421:function(e,t,a){"use strict";var i=a(21),r=a(27),n=a(40),o=a(11),l=a(0),s=a.n(l),d=a(17),c=a(423),u=a.p+"static/media/upload-icon.5d0c29ff.svg",p=a(131),b=a(69),h=a(55),v=a(6),m=a(376),g=a(361),f=a(19),j=a(1),y=Object(v.a)((function(){return Object(m.a)({colorPrimary:{backgroundColor:f.a.progressErrorColor},barColorPrimary:{backgroundColor:f.a.errorColor}})}))(g.a),O=function(e){return e.error?Object(j.jsx)(y,Object(d.a)({variant:"determinate"},e)):Object(j.jsx)(g.a,Object(d.a)({variant:"determinate"},e))},x=function(e){var t,a=e.progress,i=e.file,r=e.errors,n=void 0===r?[]:r;return Object(j.jsxs)(b.a,{className:"wrap",children:[Object(j.jsx)(h.a,{children:null===i||void 0===i?void 0:i.name}),n.length>0?Object(j.jsxs)(j.Fragment,{children:[Object(j.jsx)(h.a,{component:"strong",children:null===(t=n[0])||void 0===t?void 0:t.message}),Object(j.jsx)(O,{value:20,error:!0})]}):a<100?Object(j.jsxs)(j.Fragment,{children:[Object(j.jsxs)(h.a,{component:"span",children:[a,"%"]}),Object(j.jsx)(O,{value:a})]}):Object(j.jsxs)(j.Fragment,{children:[Object(j.jsxs)(h.a,{component:"strong",children:[a,"%"]}),Object(j.jsx)(O,{value:a,color:"secondary"})]})]})},_=a.p+"static/media/nft.b55f8c49.svg",k=a.p+"static/media/mtl.4967134b.svg",S=a.p+"static/media/database.df7b5a81.svg";function T(e){var t=e.src;return Object(j.jsx)("img",{src:"NFT"===t?_:"MTL"===t?k:S,alt:t})}var w=a.p+"static/media/cancel.285b834a.svg",C=a(66),I=function(e,t,a){(new C.a).get_local_file(e,(function(t){a(e,t)}),t)};function E(e){var t=e.file,a=e.onDelete,r=e.onUpload,s=Object(l.useState)(0),d=Object(o.a)(s,2),c=d[0],u=d[1];return Object(l.useEffect)((function(){function e(){return(e=Object(n.a)(Object(i.a)().mark((function e(){return Object(i.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:I(t,u,r);case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}!function(){e.apply(this,arguments)}()}),[]),Object(j.jsxs)(b.a,{className:"uploaded-files_row",children:[Object(j.jsx)(T,{src:"MTL"}),Object(j.jsx)(x,{file:t,progress:c}),c<100?Object(j.jsx)("img",{src:w,onClick:function(){return a(t)},width:"24",style:{cursor:"pointer"},alt:"Cancel"}):Object(j.jsx)("img",{src:w,onClick:function(){return a(t)},width:"24",style:{cursor:"pointer"},alt:"Done"})]})}var N=a.p+"static/media/delete.6b54b734.svg";function P(e){var t=e.file,a=e.onDelete,i=e.errors;return Object(j.jsxs)(b.a,{className:"uploaded-files_row error",children:[Object(j.jsx)(T,{src:"NFT"}),Object(j.jsx)(x,{file:t,errors:i}),Object(j.jsx)("img",{src:N,onClick:function(){return a(t)},width:"24",style:{cursor:"pointer"},alt:"DELETE"})]})}function M(e){var t=e.files,a=e.onDelete,i=e.onUpload;return Object(j.jsxs)(b.a,{className:"uploaded-files",children:[Object(j.jsx)(h.a,{component:"h3",children:"Uploaded files"}),t.map((function(e){return Object(j.jsx)(b.a,{children:e.errors.length?Object(j.jsx)(P,{file:e.file,errors:e.errors,onDelete:a}):Object(j.jsx)(E,{onDelete:a,onUpload:i,file:e.file,totalFiles:t.length})},e.id)}))]})}var D=a(12),A=function(e){e.handleClose;var t=e.handleDone,a=Object(l.useState)(void 0),i=Object(o.a)(a,2),n=i[0],b=i[1],h=Object(l.useState)(void 0),v=Object(o.a)(h,2),m=v[0],g=v[1],f=function(e){var t,a=Object(r.a)(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;"text/turtle"===i.type||i.name.split(".").pop()===D.c.acceptedFileExtensions[1]?b({file:i,errors:i.size>D.c.maxFileSize?[{message:"Error: File is too large"}]:[],id:Math.random()}):"application/json"===i.type||i.name.split(".").pop()===D.c.acceptedFileExtensions[0]?g({file:i,errors:i.size>D.c.maxFileSize?[{message:"Error: File is too large"}]:[],id:Math.random()}):console.error("something weird happened!")}}catch(n){a.e(n)}finally{a.f()}},y=s.a.useRef("dialog"),O=[n,m].filter((function(e){return void 0!==e}));return Object(j.jsxs)(j.Fragment,{children:[void 0!==m&&void 0!==n?Object(j.jsx)(j.Fragment,{children:" "}):Object(j.jsx)(c.a,{fileObjects:O.map((function(e){return e.file})),onChange:function(e){},showPreviewsInDropzone:!1,onDrop:function(e){return f(e)},acceptedFiles:D.c.acceptedFileExtensions,maxFileSize:D.c.maxFileSize,onDropRejected:function(e){return f(e,!1)},showAlerts:!1,ref:y,Icon:function(){return Object(j.jsx)("img",{src:u,alt:"upload"})},dropzoneText:"Drag & Drop your files here",filesLimit:D.c.maxFiles}),O&&O.length?Object(j.jsx)(M,{files:O,onDelete:function(e){(null===n||void 0===n?void 0:n.file)!==e||"text/turtle"!==e.type&&e.name.split(".").pop()!==D.c.acceptedFileExtensions[1]?(null===m||void 0===m?void 0:m.file)!==e||"application/json"!==e.type&&e.name.split(".").pop()!==D.c.acceptedFileExtensions[0]?console.error("something weird happened!"):g(void 0):b(void 0)},onUpload:function(e,t){(null===n||void 0===n?void 0:n.file)!==e||"text/turtle"!==e.type&&e.name.split(".").pop()!==D.c.acceptedFileExtensions[1]?(null===m||void 0===m?void 0:m.file)!==e||"application/json"!==e.type&&e.name.split(".").pop()!==D.c.acceptedFileExtensions[0]?console.error("something weird happened!"):g(Object(d.a)(Object(d.a)({},m),{},{data:t})):b(Object(d.a)(Object(d.a)({},n),{},{data:t}))}}):null,void 0!==m&&void 0!==n&&Object(j.jsx)(p.a,{handleClose:function(){t(O)}})]})},F=a(256),R=a(590),U=a(610),B=a(573),L=a(198),H=a.p+"static/media/url.8265b8f5.svg",z=a.p+"static/media/link-green.8889c463.svg",W=function(e){e.handleClose;var t=e.handleDone,a=Object(l.useState)(!1),i=Object(o.a)(a,2),r=i[0],n=i[1],s=Object(l.useState)(""),c=Object(o.a)(s,2),u=c[0],b=c[1],h=Object(l.useState)(!1),v=Object(o.a)(h,2),m=v[0],g=v[1],f=Object(l.useState)([{id:"ttl",url:void 0,data:void 0,file:{name:"ttl",type:"text/turtle"}},{id:"json",url:void 0,data:void 0,file:{name:"json",type:"application/json"}}]),y=Object(o.a)(f,2),O=y[0],x=y[1];return Object(l.useEffect)((function(){r&&!m&&void 0!==O[0].data&&void 0!==O[1].data&&(n(!1),g(!0))}),[r,m,O]),Object(j.jsxs)(j.Fragment,{children:[Object(j.jsx)(F.a,{variant:"filled",fullWidth:!0,children:Object(j.jsx)(R.a,{id:"url-uploader",placeholder:"Dataset URL",className:m?"field-success":"",startAdornment:Object(j.jsx)(U.a,{position:"start",children:Object(j.jsx)("img",{src:m?z:H,alt:"Link"})}),value:u,onChange:function(e){return b(e.target.value)},endAdornment:""!==u?Object(j.jsx)(U.a,{position:"end",onClick:function(){b(""),g(!1)},children:Object(j.jsx)("img",{src:w,alt:"CANCEL"})}):null})}),m?Object(j.jsx)(p.a,{handleClose:function(){t(O)}}):Object(j.jsx)(B.a,{variant:"contained",fullWidth:!0,disabled:""===u,disableElevation:!0,color:"primary",onClick:function(){var e=new C.a,t=new C.a,a=function(e,t){!function(e,t){var a=e.split(".").pop();x((function(i){return i.map((function(i){return i.id===a&&void 0!==t?Object(d.a)(Object(d.a)({},i),{},{url:e,data:t}):i}))}))}(e,t)};n(!0),e.get_remote_file(u,a,(function(){})),t.get_remote_file(function(e){var t=e.split("/"),a=t.pop().replace("N%3Adataset%3A","").replace(".ttl",""),i=t.shift();return t.pop(),t.map((function(e){return i=i+"/"+e,e})),i+"/path-metadata/"+a+"/LATEST_RUN/path-metadata.json"}(u),a,(function(){}))},children:r?Object(j.jsx)(L.a,{size:16,color:"primary"}):"Load"})]})},G=a(22),V=a(5),J=["children","value","index"],Z=function(e){var t=e.children,a=e.value,i=e.index,r=Object(V.a)(e,J);return Object(j.jsx)("div",Object(d.a)(Object(d.a)({role:"tabpanel",hidden:a!==i,className:"tab-content",id:"simple-tabpanel-".concat(i),"aria-labelledby":"simple-tab-".concat(i)},r),{},{children:a===i&&Object(j.jsx)(j.Fragment,{children:t})}))},q=a(428),Y=a(627),Q=a(623),$=a(204);function K(e){return{id:"simple-tab-".concat(e),"aria-controls":"simple-tabpanel-".concat(e)}}var X=function(e){var t=e.value,a=e.handleChange,i=e.handleClose;return Object(j.jsxs)(j.Fragment,{children:[Object(j.jsx)("img",{src:$.a,onClick:i,alt:"Close"}),Object(j.jsx)(h.a,{component:"h3",children:"Upload your dataset"}),Object(j.jsxs)(Y.a,{className:"rounded",value:t,onChange:a,"aria-label":"simple tabs example",children:[Object(j.jsx)(Q.a,Object(d.a)({className:"rounded",label:"Local System"},K(0))),Object(j.jsx)(Q.a,Object(d.a)({className:"rounded",label:"From a URL"},K(1)))]})]})},ee=a(26),te=a(130),ae=a(42),ie=a(121),re=a(59);t.a=function(e){var t=Object(G.b)(),a=e.open,l=e.handleClose,d=s.a.useState(0),c=Object(o.a)(d,2),u=c[0],p=c[1],h=function(){var e=Object(n.a)(Object(i.a)().mark((function e(a){var n,o,s,d,c,u,p,b;return Object(i.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(2!==a.length||void 0===a[0].data||void 0===a[1].data){e.next=21;break}n=void 0,o=void 0,s=Object(r.a)(a);try{for(s.s();!(d=s.n()).done;)c=d.value,"ttl"===(u=c.file.name.split(".").pop())&&(o=c.data),"json"===u&&(n=c.data)}catch(i){s.e(i)}finally{s.f()}return p=new ie.a(n,o),e.t0=p.getDatasetId(),e.next=9,p.getGraph();case 9:return e.t1=e.sent,e.next=12,p.getTree();case 12:e.t2=e.sent,e.t3=p,b={id:e.t0,graph:e.t1,tree:e.t2,splinter:e.t3},l(),t(Object(ee.j)(b)),t(Object(ae.addWidget)({id:b.id,name:b.id.substring(0,10)+"... Graph",component:"graphComponent",panelName:"leftPanel",enableClose:!0,enableRename:!0,enableDrag:!0,status:re.WidgetStatus.ACTIVE,config:{graph_id:b.id,component:"graphComponent"}})),t(Object(ae.addWidget)(te.a)),e.next=23;break;case 21:l(),t(Object(ee.q)("Just a test for the error dialog."));case 23:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return Object(j.jsxs)(q.a,{open:a,onClose:l,children:[Object(j.jsx)(b.a,{className:"dialog_header",children:Object(j.jsx)(X,{handleChange:function(e,t){p(t)},value:u,handleClose:l})}),Object(j.jsxs)(b.a,{className:"dialog_body",children:[Object(j.jsx)(Z,{value:u,index:0,children:Object(j.jsx)(A,{handleClose:l,handleDone:h})}),Object(j.jsx)(Z,{value:u,index:1,children:Object(j.jsx)(W,{handleClose:l,handleDone:h})})]})]})}},422:function(e,t,a){"use strict";var i=a(11),r=a(0),n=a.n(r),o=a(69),l=a(609),s=a(256),d=a(571),c=a(610),u=a(573),p=a.p+"static/media/logo.ca7fb900.svg",b=a.p+"static/media/toggle-left.ed7cc2df.svg",h=a.p+"static/media/search.22df39ce.svg",v=a(382),m=a.n(v),g=a(1),f=function(e){var t=e.expand,a=e.setExpand,i=e.setSearchTerm,r=e.searchTerm;return Object(g.jsxs)(o.a,{className:"sidebar-header",children:[Object(g.jsx)("img",{src:p,alt:"Logo"}),Object(g.jsx)(l.a,{"aria-label":"toggle",onClick:function(){return a(!t)},className:"shrink-btn",children:t?Object(g.jsx)("img",{src:b,alt:"Toggle"}):Object(g.jsx)(m.a,{})}),t&&Object(g.jsx)(s.a,{variant:"filled",fullWidth:!0,children:Object(g.jsx)(d.a,{"aria-autocomplete":"none",disableUnderline:!0,id:"filled-adornment-password",placeholder:"Search for an instance",startAdornment:Object(g.jsx)(c.a,{position:"start",children:Object(g.jsx)("img",{src:h,alt:"Search"})}),endAdornment:Object(g.jsx)(c.a,{position:"end",children:Object(g.jsx)(u.a,{onClick:function(){return i(i)},children:"Search"})}),value:r,onChange:function(e){i(e.target.value)}})})]})},j=a(55),y=a(15),O=a(613),x=a(188),_=a(189),k=a(190),S=a(17),T=a(5),w=a(611),C=a.p+"static/media/down.0095113d.svg",I=a(612),E=["dataset","labelText","labelIcon","labelInfo","iconClass","onNodeSelect"],N=function(e){var t,a,i,r=e.dataset,n=e.labelText,s=(e.labelIcon,e.labelInfo),d=e.iconClass,c=e.onNodeSelect,u=Object(T.a)(e,E);return Object(g.jsx)(w.a,Object(S.a)({data:r,id:u.nodeId,label:Object(g.jsxs)("div",{className:"labelRoot ".concat(d),children:[Object(g.jsx)(o.a,{className:"labelIcon"}),Object(g.jsxs)(j.a,{onClick:function(t){c(t,e.nodeId),t.preventDefault()},variant:"body2",className:"labelText",children:[n,"file"===e.iconClass&&void 0!=(null===(t=window.datasets[r].splinter.tree_map.get(e.nodeId))||void 0===t||null===(a=t.graph_reference)||void 0===a||null===(i=a.attributes)||void 0===i?void 0:i.publishedURI)?Object(g.jsx)(l.a,{onClick:function(t){c(t,e.nodeId,!0),t.preventDefault()},children:Object(g.jsx)(I.a,{})}):null]}),s>0?Object(g.jsxs)(j.a,{variant:"caption",className:"labelCaption",color:"inherit",children:[s,Object(g.jsx)("img",{src:C,alt:"down"})]}):null]})},u))},P=a(22),M=a(26),D=a(59),A=a(42),F=a(12),R=function(e){var t,a=Object(P.b)(),o=e.searchTerm,l=e.dataset_id,s=JSON.parse(JSON.stringify([window.datasets[l].tree])),d=Object(P.c)((function(e){return e.sdsState.instance_selected})),c=Object(r.useState)([]),u=Object(i.a)(c,2),p=u[0],b=u[1],h=Object(r.useState)(s),v=Object(i.a)(h,2),m=v[0],f=v[1],j=Object(P.c)((function(e){return e.widgets})),S=function(e,t){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=window.datasets[l].splinter.tree_map.get(t);if(i){var n,o,s=null===(n=r.graph_reference)||void 0===n||null===(o=n.attributes)||void 0===o?void 0:o.publishedURI;s&&window.open(s,"_blank")}else{var d;a(Object(M.m)({dataset_id:l,graph_node:(null===r||void 0===r||null===(d=r.graph_reference)||void 0===d?void 0:d.id)||(null===r||void 0===r?void 0:r.id),tree_node:null===r||void 0===r?void 0:r.id,source:F.h})),void 0!==j[l]&&(j[l].status=D.WidgetStatus.ACTIVE,a(A.updateWidget(j[l]))),void 0!==j[l]&&(j[l].status=D.WidgetStatus.ACTIVE,a(A.updateWidget(j[l])))}},T=d.dataset_id.split(":");T[T.length-1]!==l&&p.length>0?b([]):T[T.length-1]===l&&d.source===F.d&&d.tree_node&&d.tree_node.path[0]!==p[0]&&b(d.tree_node.path);Object(r.useEffect)((function(){f(o.length>=3?function(e,t){var a=t.toLowerCase(),i=e.filter((function e(t){return!!t.text.toLowerCase().includes(a)||!!t.items&&(t.items=t.items.filter(e)).length}));return b(function(e){var t=[];return function e(a,i){for(var r in a){var n=a[r];if(void 0!==n)if(n&&"object"===typeof n)e(n,r);else if("id"===r)t.push(n);else if("path"===r)continue}}(e),t}(i)),i}(Object(y.a)(s),o):s)}),[o]),Object(r.useEffect)((function(){(0===m.length&&s.length>0||s.length>0&&m.length!==s.length)&&f(s)}));var w=n.a.createRef();return Object(g.jsx)(g.Fragment,{children:Object(g.jsx)(O.a,{className:"scrollbar treeViewer",defaultExpanded:p,defaultCollapseIcon:!1,defaultExpandIcon:!1,defaultEndIcon:!1,ref:w,expanded:p,onNodeToggle:function(e,t){var a,i;if(p.length!==(null===(a=t)||void 0===a?void 0:a.length)&&p[0]===(null===(i=t)||void 0===i?void 0:i[0])){for(var r=Object(y.a)(p),n=Object(y.a)(t);r[0]===n[0];)r.shift(),n.shift();t=r}var o=window.datasets[l].splinter.tree_map.get(t[0]);o&&void 0!==o.path&&o.path[0]!==p[0]?b(o.path):b([])},selected:[null===d||void 0===d||null===(t=d.tree_node)||void 0===t?void 0:t.id],children:function e(t){return t.map((function(t){var a,i=void 0;t.items&&t.items.length>0&&(i=e(t.items));var r=null===(a=i)||void 0===a?void 0:a.length,n=null!==t&&void 0!==t&&t.parent?{labelIcon:x.a,iconClass:"dataset"}:r>0?{labelIcon:_.a,iconClass:"folder"}:{labelIcon:k.a,iconClass:"file"};return Object(g.jsx)(N,{dataset:l,nodeId:null===t||void 0===t?void 0:t.id,id:null===t||void 0===t?void 0:t.id,labelText:null===t||void 0===t?void 0:t.text,labelIcon:null===n||void 0===n?void 0:n.labelIcon,labelInfo:r,children:i,iconClass:null===n||void 0===n?void 0:n.iconClass,onNodeSelect:S},null===t||void 0===t?void 0:t.id)}))}(m)})})},U=a(383),B=a.n(U),L=function(e){var t=e.expand,a=e.setExpand,i=e.searchTerm,n=Object(P.c)((function(e){return e.sdsState.datasets})),s=Object(P.c)((function(e){return e.sdsState.instance_selected}));Object(r.useEffect)((function(){var e;if(null!==s&&void 0!==s&&null!==(e=s.tree_node)&&void 0!==e&&e.id){var t,a=document.getElementById(null===s||void 0===s||null===(t=s.tree_node)||void 0===t?void 0:t.id);a&&a.scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"})}}),[s]);return Object(g.jsx)(o.a,{className:"sidebar-body",children:t?(null===n||void 0===n?void 0:n.length)>0?Object(g.jsxs)(g.Fragment,{children:[Object(g.jsx)(j.a,{component:"h3",children:"Uploaded Instances"}),Object(g.jsx)(o.a,{className:"scrollbar",children:n.map((function(e,t){return Object(g.jsx)(R,{searchTerm:i,dataset_id:e},"tree_"+t)}))})]}):Object(g.jsx)(g.Fragment,{children:Object(g.jsx)(j.a,{className:"no-instance",children:"No instances to display yet."})}):Object(g.jsx)(l.a,{"aria-label":"toggle",onClick:function(){return a(!t)},className:"shrink-btn",children:Object(g.jsx)(B.a,{})})})},H=a(575),z=a(31),W=function(e){return Object(g.jsxs)(o.a,{children:[Object(g.jsx)(H.a,{style:{marginBottom:"1rem",background:"rgba(255, 255, 255, 0.10)"}}),Object(g.jsxs)(o.a,{display:"flex",justifyContent:e.local?"space-around":"center",children:[e.local?Object(g.jsxs)(u.a,{variant:"contained",disableElevation:!0,color:"primary",fullWidth:!0,onClick:function(){return e.setOpenUploadDialog(!0)},children:["+ ",F.a]}):null,Object(g.jsxs)(u.a,{variant:"contained",disableElevation:!0,color:"primary",fullWidth:!0,onClick:function(){return e.setOpenDatasetsListDialog(!0)},children:["+ ",e.expand?z.text.datasetsButtonText:null]})]}),Object(g.jsx)(H.a,{style:{margin:"1rem 0",background:"rgba(255, 255, 255, 0.10)"}}),e.expand&&Object(g.jsx)(o.a,{display:"flex",justifyContent:"center",children:Object(g.jsx)(j.a,{variant:"subtitle2",style:{color:"#fff"},children:" Powered by MetaCell"})})]})};t.a=function(e){var t=Object(r.useState)(!0),a=Object(i.a)(t,2),n=a[0],l=a[1],s=Object(r.useState)(""),d=Object(i.a)(s,2),c=d[0],u=d[1];return Object(g.jsxs)(o.a,{className:"sidebar"+(n?"":" shrink"),children:[Object(g.jsx)(f,{setExpand:l,expand:n,setSearchTerm:u,searchTerm:c}),Object(g.jsx)(L,{setExpand:l,expand:n,searchTerm:c}),Object(g.jsx)(W,{setExpand:l,expand:n,openUploadDialog:e.openUploadDialog,setOpenUploadDialog:e.setOpenUploadDialog,openDatasetsListDialog:e.openDatasetsListDialog,setOpenDatasetsListDialog:e.setOpenDatasetsListDialog,local:e.local})]})}},424:function(e,t,a){"use strict";var i=a(378),r=a.n(i),n=a(19),o=a.p+"static/media/curve.e6ef8395.svg",l=a.p+"static/media/linewithradius.eb303573.svg",s=a.p+"static/media/filled-folder.139a09e7.svg",d=a.p+"static/media/filled-file.1b51516a.svg",c=a.p+"static/media/filled-dataset.834e911d.svg",u=a(188),p=a(189),b=a(190),h=n.a.primaryColor,v=n.a.secondaryColor,m=n.a.primaryTextColor,g=n.a.lightBorderColor,f=n.a.radius,j=n.a.primaryColorHover,y=n.a.whiteColor,O=n.a.outlinedButtonHover,x=n.a.primaryBgColor,_=n.a.scrollbarBg,k=n.a.iconButtonHover,S=n.a.primaryTransition,T=n.a.fontFamily,w=n.a.barSuccessColor,C=n.a.gutter,I=n.a.errorColor,E=n.a.tabsBgColor,N=n.a.progressBgPrimary,P=n.a.dropzoneBorderColor,M=n.a.dropzoneTextColor,D=n.a.inputFocusShadow,A=n.a.successInputFocusShadow,F=n.a.placeHolderColor,R=n.a.dialogShadow,U=n.a.tabsBorderColor,B=n.a.dialogBodyBgColor,L=n.a.sideBarTextColor,H=n.a.sideBarLabelColor,z=n.a.chipBgColor,W=n.a.progressErrorBg,G=n.a.treeBorderColor,V=n.a.grey700,J=n.a.grey500,Z=n.a.grey100,q=n.a.grey400,Y=n.a.grey50,Q=n.a.grey25,$=n.a.grey600,K=n.a.gray800,X=n.a.gray400,ee=n.a.gray25,te=r()({typography:{fontFamily:T,h3:{fontWeight:"600",fontSize:"1.5rem",lineHeight:"1.8125rem",color:m}},overrides:{MuiBreadcrumbs:{root:{marginTop:".25rem"},ol:{lineHeight:1},separator:{marginLeft:".25rem",marginRight:".25rem",color:M},li:{fontSize:".75rem",lineHeight:".875rem",letterSpacing:".00375rem",fontWeight:"500",color:M,"& a":{color:h},"& p":{fontSize:".75rem",lineHeight:".875rem",letterSpacing:".00375rem",fontWeight:"500",color:M}}},MuiChip:{root:{backgroundColor:z,borderRadius:".3125rem",display:"inline-flex",alignItems:"center",height:"1.375rem",marginTop:".5rem",marginRight:".375rem","& .MuiChip-label":{padding:"0.25rem 0.375rem",fontSize:".75rem",color:X,backgroundColor:ee,borderRadius:"0.3125rem"}}},MuiCircularProgress:{colorPrimary:{color:y}},MuiLinearProgress:{root:{borderRadius:".125rem"},colorPrimary:{backgroundColor:N},colorSecondary:{backgroundColor:N},barColorPrimary:{backgroundColor:h,borderRadius:".25rem"},barColorSecondary:{backgroundColor:w,borderRadius:".25rem"}},MuiDropzoneArea:{root:{borderWidth:"0.09375rem",borderColor:P,borderRadius:".5rem",height:"8.75rem",minHeight:"8.75rem",backgroundColor:"transparent",display:"flex",alignItems:"center",justifyContent:"center","& + .uploaded-files":{marginTop:"1rem"},"&.hide":{display:"none"},"& .MuiDropzoneArea-textContainer":{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center","& .MuiDropzoneArea-text":{margin:"0",fontWeight:"600",fontSize:".75rem",lineHeight:".875rem",letterSpacing:"-0.01em",order:2,marginTop:".6875rem",color:M},"& svg":{color:h}}}},MuiOutlinedInput:{root:{backgroundColor:y,borderRadius:".5rem","&.Mui-disabled":{color:M,"& .MuiOutlinedInput-notchedOutline":{borderColor:"transparent"}},"&.Mui-focused":{"& .MuiOutlinedInput-notchedOutline":{borderWidth:".0625rem",borderColor:h,boxShadow:"0 0 0 .1875rem ".concat(D)}},"&:hover":{"& .MuiOutlinedInput-notchedOutline":{borderColor:h}},"&.field-success":{"& .MuiOutlinedInput-input":{color:w},"& .MuiOutlinedInput-notchedOutline":{borderColor:w},"&:hover":{"& .MuiOutlinedInput-notchedOutline":{borderColor:w}},"&.Mui-focused":{"& .MuiOutlinedInput-notchedOutline":{borderWidth:".0625rem",borderColor:w,boxShadow:"0 0 0 .1875rem ".concat(A)}}}},notchedOutline:{borderColor:"transparent"},input:{fontSize:".75rem",letterSpacing:"-0.01em",padding:".75rem 0","&::placeholder":{color:F}},adornedStart:{paddingLeft:".75rem","& .MuiInputAdornment-root":{marginTop:"0 !important"}},adornedEnd:{paddingRight:".75rem"}},MuiDialog:{paperWidthSm:{width:"25rem",borderRadius:".75rem",boxShadow:"0 .25rem 3.125rem ".concat(R)}},MuiTabs:{root:{minHeight:".0625rem","&:not(.rounded)":{borderTop:".0625rem solid ".concat(U),borderBottom:".0625rem solid ".concat(U),padding:C+2},"&.rounded":{boxShadow:"inset 0 0 .125rem ".concat(R),background:E,padding:".25rem .3125rem",borderRadius:"2.5rem",width:"14.75rem",display:"flex",alignItems:"center",margin:"0 auto"},"& .MuiTabs-indicator":{display:"none !important"}}},MuiTab:{root:{minWidth:".0625rem !important",textTransform:"none",minHeight:".0625rem","&:not(.rounded)":{padding:".5rem",borderRadius:f,fontWeight:500,fontSize:"1.125rem",lineHeight:"1.375rem",letterSpacing:"-0.03em",color:"".concat(m," !important"),"&:not(.Mui-selected)":{opacity:.4}},"&.rounded":{width:"50%",padding:0,fontSize:".75rem",lineHeight:".875rem",borderRadius:"2.5rem",height:"2.25rem",textAlign:"center",letterSpacing:"-0.01em",color:h,"&:not(.Mui-selected)":{opacity:1},"&.Mui-selected":{background:h,color:y}}}},MuiFilledInput:{root:{fontFamily:T,backgroundColor:J,height:"2.375rem",borderRadius:"".concat(f," !important"),paddingRight:"0.4375rem !important","&:hover":{backgroundColor:J},"& .MuiInputAdornment-positionStart":{marginTop:"0 !important"}},input:{paddingTop:0,paddingBottom:0,fontSize:"0.75rem",letterSpacing:"-0.01em",color:Z,"&::placeholder":{color:Z,fontWeight:"400",fontSize:".75rem"}},adornedEnd:{"& .MuiButton-root":{padding:"0.3125rem",minWidth:1,fontSize:"0.75rem",fontWeight:"600",height:"auto",color:y}}},MuiIconButton:{root:{padding:0,borderRadius:f,backgroundColor:g,"&:hover":{backgroundColor:k}}},MuiButton:{root:{borderRadius:f,height:"2.375rem",padding:0,minWidth:"9.875rem"},label:{textTransform:"none",display:"flex",fontWeight:600,"& img":{marginRight:".25rem"}},containedPrimary:{backgroundColor:h,"&:hover":{backgroundColor:j},"&.Mui-disabled":{backgroundColor:P,color:y}},outlinedPrimary:{borderColor:h,color:h,padding:"0.75rem","&:hover":{backgroundColor:O}}},MuiCssBaseline:{"@global":{"*, *::before, *::after":{boxSizing:"border-box"}," body":{backgroundColor:v},".main-structure":{display:"flex",overflow:"hidden"},".sidebar-body":{boxShadow:"0px -75px 49px -41px #212B45 inset"},".scrollbar":{overflow:"auto","&::-webkit-scrollbar":{width:"0.25rem","&:horizontal":{height:"0.25rem"}},"&::-webkit-scrollbar-thumb":{background:_,borderRadius:".25rem"}},".noscrollbar":{overflow:"auto",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},"& .overlay-button-container":{position:"sticky",bottom:0,zIndex:1e3,padding:"20px 0",background:"linear-gradient(180deg, rgb(255 255 255 / 87%) 8%, #FFF 100%)",display:"flex",justifyContent:"center"},"& .overlay-button":{padding:"10px 20px",width:"3rem",height:"3rem",backgroundColor:"rgba(46, 58, 89, 0.10)",color:"#2E3A59",borderRadius:"50%",cursor:"pointer"},".dialog":{"&_body":{background:B,padding:"1rem","& .MuiButton-root":{marginTop:".75rem"}},"&_header":{padding:"1rem",display:"flex",flexDirection:"column",paddingBottom:"3rem","& img":{cursor:"pointer",marginLeft:"auto",width:"auto",marginBottom:".1875rem"},"& h3":{fontWeight:"600",fontSize:"1.5rem",lineHeight:"1.8125rem",textAlign:"center",letterSpacing:"-0.03em",color:m}}},".sidebar":{width:"18.75rem",overflow:"hidden",backgroundColor:V,height:"100vh",flexShrink:0,padding:"1rem 0.75rem",display:"flex",flexDirection:"column",transition:S,"&.shrink":{width:"4.125rem",transition:S,"& .sidebar":{"&-header":{"&> img":{marginBottom:"1.1875rem",paddingBottom:"1.1875rem",borderBottom:"0.0625rem solid ".concat(g)}},"&-body":{"& ul":{display:"none"}},"&-footer":{"& .MuiButton-root":{"& img":{margin:"0"}}}},"& .MuiButtonBase-root":{padding:0,width:"2.25rem",minWidth:"0.0625rem",margin:"0 auto",display:"block",height:"2.25rem","&.shrink-btn":{backgroundColor:Q,color:$,"& .MuiSvgIcon-root":{fontSize:"1rem"}}}},"&:not(.shrink)":{"& .sidebar":{"&-header":{"& .MuiIconButton-root":{backgroundColor:"transparent"},"& .MuiFormControl-root":{marginTop:"0.875rem"}},"&-footer":{"& .MuiIconButton-root":{width:"1rem",height:"1rem",borderRadius:f-4},"& .MuiButton-contained":{width:"100%","& img":{marginRight:"0.3125rem"}}}}},"&-header":{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:"1.1875rem",borderBottom:"0.0625rem solid ".concat(g),flexWrap:"wrap","&> img":{cursor:"pointer",maxWidth:"100%",transition:S}},"&-body":{padding:"1.1875rem 0.75rem",height:"calc(100% - 14.0625rem)",margin:"0 -0.75rem",flexGrow:1,position:"relative","&::before":{content:'""',position:"absolute",right:"0.75rem",bottom:".5rem",width:".25rem",height:".25rem",background:v,zIndex:"9999"},"& .MuiTreeItem-root > .MuiTreeItem-content .MuiTreeItem-label":{borderRadius:".5rem",background:"transparent",border:"0.03125rem solid transparent",minWidth:"10rem"},"& .MuiTreeItem-root.Mui-selected > .MuiTreeItem-content .MuiTreeItem-label":{background:"linear-gradient(0deg, ".concat(g,", ").concat(g,"), ").concat(v),borderColor:h},"& .MuiTreeItem-root.Mui-selected > .MuiTreeItem-content .MuiTreeItem-label:hover, & .MuiTreeItem-root.Mui-selected:focus > .MuiTreeItem-content .MuiTreeItem-label":{background:"linear-gradient(0deg, ".concat(g,", ").concat(g,"), ").concat(v),borderColor:h},"& .MuiTreeItem-content":{position:"relative",zIndex:"1"},"& .MuiTreeItem-root":{"&.Mui-selected > .MuiTreeItem-content .dataset .labelIcon":{backgroundImage:"url(".concat(c,")")},"&.Mui-selected > .MuiTreeItem-content .file .labelIcon":{backgroundImage:"url(".concat(d,")")},"&.Mui-selected > .MuiTreeItem-content .folder .labelIcon":{backgroundImage:"url(".concat(s,")")},"& .dataset":{"& .labelIcon":{width:"0.75rem",height:"0.8125rem",fontSize:0,backgroundImage:"url(".concat(u.a,")")}},"& .file":{"& .labelIcon":{width:"0.6875rem",height:"0.875rem",fontSize:0,backgroundImage:"url(".concat(b.a,")")},"& .labelText":{display:"flex",justifyContent:"space-between",alignItems:"center","& .MuiSvgIcon-root":{fontSize:".875rem",color:Y}}},"& .folder":{"& .labelIcon":{height:"0.75rem",width:"0.9375rem",fontSize:0,backgroundImage:"url(".concat(p.a,")")}}},"& .labelRoot":{display:"flex",padding:"0.5625rem 0.6875rem"},"& .labelIcon":{marginRight:"0.625rem",flexShrink:0},"& .labelText":{fontWeight:"normal",flexGrow:1,fontSize:"0.8125rem",lineHeight:"1rem",color:y},"& .MuiTreeItem-group":{paddingLeft:"1.4375rem",margin:0},"& .labelCaption":{height:"1rem",backgroundColor:q,padding:"0 0.25rem",display:"flex",alignItems:"center",borderRadius:"0.5rem",fontWeight:"600",fontSize:"0.625rem",lineHeight:"0.75rem",minWidth:"2rem",justifyContent:"center",color:Y,letterSpacing:"-0.01em","& img":{marginLeft:"0.125rem"}},"& .scrollbar":{overflow:"auto",height:"calc(100% - 1rem)"},"& h3":{fontWeight:"600",fontSize:"0.75rem",lineHeight:"0.9375rem",letterSpacing:"-0.01em",marginBottom:"0.75rem",color:y,padding:"0 0.6875rem"},"& .MuiTreeView-root":{"& .MuiTreeItem-root":{"& .MuiTreeItem-group":{"& .MuiCollapse-wrapperInner":{"& .MuiTreeItem-root":{"&.Mui-expanded":{"& .labelCaption":{"& img":{transform:"rotate(-180deg)"}}}}}}}},"& ul":{position:"relative","&::before":{content:'""',height:"calc(100% - 0.85rem)",width:"0.0625rem",position:"absolute",left:"1.0625rem",borderRadius:"3.125rem",top:"-0.5625rem",backgroundImage:"url(".concat(l,")"),backgroundRepeat:"repeat"},"& .MuiTreeItem-root":{position:"relative","&::before":{content:'""',height:"0.875rem",width:"1.4375rem",backgroundImage:"url(".concat(o,")"),position:"absolute",top:"0.75rem",backgroundRepeat:"no-repeat",left:"-0.375rem"},"&::after":{content:'""',height:"0.0625rem",borderRadius:"3.125rem",width:"0.5rem",backgroundColor:G,position:"absolute",left:"0",top:"1.0625rem",display:"none"},"&:hover":{background:"transparent"},"&:focus > .MuiTreeItem-content":{backgroundColor:"transparent"}}},"& .scrollbar > .MuiTreeView-root":{"&::before":{display:"none"},"& .MuiTreeItem-label":{paddingLeft:"0","&:hover":{background:"transparent"},"&:focus":{backgroundColor:"transparent"}},"& .MuiTreeItem-iconContainer":{display:"none"},"&> .MuiTreeItem-root":{"&::before":{display:"none"},"&::after":{display:"none"},"&:hover":{background:"transparent"},"&:focus > .MuiTreeItem-content":{backgroundColor:"transparent"},"&.Mui-expanded":{"&> .MuiTreeItem-content":{"&> .MuiTreeItem-label":{"&> div":{"& span":{"& img":{transform:"rotate(-180deg)"}}}}}},"& .MuiTreeItem-content":{"&:hover":{background:"transparent"}},"&> .MuiTreeItem-content":{"&> .MuiTreeItem-label":{"&> div":{"& p":{fontSize:"0.75rem",lineHeight:"0.9375rem",textOverflow:"ellipsis",whiteSpace:"nowrap",overflow:"hidden"}}}}}},"& .no-instance":{fontSize:"0.75rem",display:"flex",alignItems:"center",justifyContent:"center",height:"100%",fontWeight:"600",letterSpacing:"-0.01em",color:Z,textAlign:"center"}},"&-footer":{boxShadow:"0 -4.75rem 3.0625rem -2.5625rem ".concat(v),borderTop:"0.0625rem solid ".concat(g),paddingTop:"1rem",position:"relative",zIndex:"2","& .MuiButton-contained":{minHeight:"2.375rem",padding:0,width:"100%","& .MuiButton-label":{display:"flex"}},"& .support":{display:"flex",alignItems:"center",justifyContent:"space-between",marginTop:"1rem",paddingTop:"1rem",height:"3.3125rem",borderTop:"0.0625rem solid ".concat(g),"& p":{display:"flex",alignItems:"center",fontSize:"0.75rem",letterSpacing:"-0.01em",color:n.a.whiteColor,fontWeight:"400","& img":{marginRight:"0.625rem"}}}}},".content":{backgroundColor:x,flexGrow:1,borderRight:".0625rem solid ".concat(U),padding:"1rem","&:not(.full-round)":{borderTopRightRadius:0,borderBottomRightRadius:0,borderRight:"none"}},".MuiBox-empty":{display:"flex",alignItems:"center",height:"100%",justifyContent:"center",textAlign:"center",flexDirection:"column","& h3":{marginBottom:"1.5rem"}},".uploaded-files":{"&_row":{background:y,borderRadius:".5rem",display:"flex",alignItems:"center",padding:".5rem",marginTop:".5rem","&.error":{"& .MuiLinearProgress-colorSecondary":{backgroundColor:W},"& p":{color:I},"& strong":{color:I}},"& .wrap":{padding:"0 0.9375rem",flexGrow:"1",display:"flex",justifyContent:"space-between",flexWrap:"wrap","& .MuiLinearProgress-root":{width:"100%",marginTop:".3125rem"},"& p":{fontWeight:"600",fontSize:".75rem",lineHeight:".875rem",letterSpacing:"-0.01em",color:L,textOverflow:"ellipsis",whiteSpace:"nowrap",overflow:"hidden",maxWidth:"6.25rem"},"& span":{fontWeight:"600",fontSize:".75rem",lineHeight:".875rem",letterSpacing:"-0.01em",color:M},"& strong":{fontWeight:"600",fontSize:".75rem",lineHeight:".875rem",letterSpacing:"-0.01em",color:w}},"& img":{flexShrink:"0"}},"& h3":{fontWeight:"600",fontSize:".75rem",lineHeight:".875rem",letterSpacing:"-0.01em",marginBottom:"1rem",color:M}},".secondary-sidebar":{width:"100%",minHeight:"95vh",display:"flex",flexShrink:0,flexDirection:"column",backgroundColor:y,position:"relative",transition:"all ease-in-out .3s","&:not(.in)":{marginRight:"-18.75rem",transition:"all ease-in-out .3s"},"&_breadcrumb":{padding:"1rem",position:"sticky",top:0,zIndex:"5",background:y,"& .MuiBreadcrumbs-li":{lineHeight:"1.5","& a":{cursor:"pointer",lineHeight:"normal",color:"#475467",fontSize:"0.75rem",fontWeight:500}},"& .MuiBreadcrumbs-separator":{margin:"0 .5rem",color:"#9198AB"}},"&_body":{flexGrow:1,maxHeight:"calc(100vh - 13rem)",height:"auto",overflow:"auto",paddingBottom:"1rem"},"&_footer":{display:"none",height:"5rem",alignItems:"center",justifyContent:"center",position:"fixed",right:"0",bottom:"0",width:"18.75rem",background:"linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, ".concat(y," 100%)"),"& img":{cursor:"pointer"}},"&.in":{"& .secondary-sidebar_footer":{display:"flex"}},"&::before":{content:'""',background:y,width:"1.875rem",top:0,left:"-1.875rem",height:"1.875rem",position:"absolute",zIndex:-1},"&::after":{content:'""',background:y,width:"1.875rem",left:"-1.875rem",bottom:0,height:"1.875rem",position:"absolute",zIndex:-1},"&_header":{textAlign:"center",padding:"0 1rem 1rem",borderBottom:".0625rem solid ".concat(U),"& .wrap":{display:"flex",alignItems:"center",justifyContent:"space-between","& img":{margin:"0",cursor:"pointer"}},"& img":{display:"block",margin:"0 auto"},"& h3":{fontWeight:"600",fontSize:"1.5rem",lineHeight:"1.8125rem",marginBottom:".25rem",marginTop:".75rem"},"&> p ":{fontWeight:"500",fontSize:".75rem",lineHeight:".875rem",letterSpacing:"-0.01em",color:F}},"& .tab-content":{padding:"1rem 1rem","&+ .tab-content":{borderTop:".0625rem solid ".concat(U)},"& .title-container":{display:"flex",alignItems:"center",marginBottom:"1.3rem","& h3":{marginBottom:0,marginLeft:".25rem"}},"& h3":{fontSize:"1.125rem",fontWeight:"500",lineHeight:"1.375rem",letterSpacing:"-0.03em",color:K,marginBottom:"1.3rem"},"& .tab-content-row":{"& .chip-overflow":{overflow:"auto",marginRight:"-1rem"},"&> a":{display:"inline-flex",fontSize:".75rem",lineHeight:"1rem",color:h,marginTop:".5rem","&:not(:last-child)":{marginRight:".75rem"},"& img":{marginRight:".25rem"}},"&+ .tab-content-row":{marginTop:"1rem"},"& label":{fontWeight:"600",display:"block",fontSize:".75rem",lineHeight:".875rem",letterSpacing:"-0.01em",color:H,"&+ p":{marginTop:".25rem",color:X,fontSize:".75rem",fontWeight:"400",lineHeight:"1rem"}},"&> p":{fontSize:".75rem",lineHeight:"1rem",color:m,wordWrap:"break-word"},"& .MuiList-root":{padding:"0","& .MuiListItemText-root":{margin:"0","&+ .MuiListItemText-root":{marginTop:".5rem"},"&>span":{display:"flex","& label":{width:"9.5rem",paddingRight:".5rem","&+ p":{fontSize:".75rem",lineHeight:"1rem",marginTop:"0",color:m}}}}}}}},".custom-chips":{display:"flex",marginTop:".25rem",overflow:"auto","&_col":{display:" flex",flexShrink:0,background:x,borderRadius:".5rem",padding:".5rem .75rem 0.5rem 0.5rem","&:not(:last-child)":{marginRight:".5rem"},"& img":{flexShrink:0,marginRight:".25rem"},"& .wrap":{whiteSpace:"nowrap","& strong":{display:"block",lineHeight:".875rem",fontSize:".75rem",color:m},"& span":{display:"block",lineHeight:".875rem",fontSize:".75rem",color:F}}}},".graph-view":{height:"100%"},".graph-view_controls":{width:".75rem",position:"absolute",bottom:"1rem",zIndex:"100"},".user-manual_controls":{position:"absolute",bottom:"0",right:"0rem",zIndex:"100",padding:".5rem"}}}}});t.a=te},455:function(e,t,a){},457:function(e,t,a){},483:function(e,t){},485:function(e,t){},567:function(e,t,a){"use strict";a.r(t);var i=a(0),r=a.n(i),n=a(24),o=a.n(n),l=(a(455),a(377)),s=a(401),d=a(42),c=a(26),u=a(15),p=a(11),b=a(366),h=a(370),v=a(371),m=a(368),g=a(386),f=a(198),j=a(621),y=a(625),O=a(609),x=a(69),_=a(55),k=a(618),S=a(412),T=a.n(S),w=a(414),C=a.n(w),I=a(409),E=a.n(I),N=a(411),P=a.n(N),M=a(410),D=a.n(M),A=a(413),F=a.n(A),R=a(22),U=a(402),B=a.n(U),L=a(12),H=a(8),z=a(161),W=1e3,G={link:"#CFD4DA",linkHover:"purple",hoverRect:"#CFD4DA",textHoverRect:"#3779E1",textHover:"white",textColor:"#2E3A59",collapsedFolder:"red",nodeSeen:"#E1E3E8",textBGSeen:"#6E4795"},V={label:"Tree View",layout:"td",maxNodesLevel:function(e){return e.hierarchyVariant}},J={label:"Vertical Layout",layout:"lr",maxNodesLevel:function(e){return e.hierarchyVariant}},Z={label:"Radial View",layout:"null",maxNodesLevel:function(e){return e.radialVariant}},q=function(e,t,a,i,r,n,o,l){i<2*n&&(n=i/2),r<2*n&&(n=r/2),e.globalAlpha=l||1,e.fillStyle=o,e.beginPath(),e.moveTo(t+n,a),e.arcTo(t+i,a,t+i,a+r,n),e.arcTo(t+i,a+r,t,a+r,n),e.arcTo(t,a+r,t,a,n),e.arcTo(t,a,t+i,a,n),e.closePath(),e.fill()},Y=function e(t,a,i){var r;null===t||void 0===t||null===(r=t.childLinks)||void 0===r||r.forEach((function(t){void 0!==a&&(t.target.collapsed=a,e(t.target,a,i),i.links=i.links+1)}))},Q=function(e){return z.cluster().nodeSize([1,100]).separation((function(e,t){return 1+z.sum([e,t].map((function(e){return 15})))}))(function(e){return z.hierarchy(e)}(e))},$=function(e,t){var a,i,r,n,o,l,s,d=Object.fromEntries(null===(a=window.datasets[e].graph)||void 0===a||null===(i=a.nodes)||void 0===i?void 0:i.map((function(e){return[e.id,e]})));null===(r=window.datasets[e].graph)||void 0===r||null===(n=r.links)||void 0===n||n.forEach((function(e){var t,a,i,r,n=e.source.id,o=e.target.id;null!==(t=d[n])&&void 0!==t&&null!==(a=t.childLinks)&&void 0!==a&&a.find((function(e){return n===e.source.id&&o===e.target.id}))||(null===(i=d[n])||void 0===i||null===(r=i.childLinks)||void 0===r||r.push(e))}));var c=[],p=[],b=window.datasets[e].graph.levelsMap;!function t(){var a,i,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:d[null===(a=window.datasets[e].graph)||void 0===a||null===(i=a.nodes)||void 0===i?void 0:i[0].id];if(c.push(r),!r.collapsed){p.push.apply(p,Object(u.a)(r.childLinks));var n=r.childLinks.map((function(e){return"object"===typeof e.target?e.target:d[e.target]}));null===n||void 0===n||n.forEach(t)}}();var h={};c.forEach((function(e){h[e.level]?h[e.level].push(e):h[e.level]=[e]}));var v=parseInt(Object.keys(h).reduce((function(e,t){return h[e].length>h[t].length?e:t}))),m=null===(o=b[1])||void 0===o?void 0:o[0],g={type:"node",name:null===m||void 0===m?void 0:m.id,value:(null===(l=b[1])||void 0===l||null===(s=l[0])||void 0===s?void 0:s.level)-1,children:[]};!function e(t,a){var i;null!==t&&(null===(i=t.neighbors)||void 0===i||i.forEach((function(i){var r;if(null!==c&&void 0!==c&&c.find((function(e){return e.id===i.id})))if((null===(r=i.neighbors)||void 0===r?void 0:r.length)>1){if((null===i||void 0===i?void 0:i.level)>t.level){var n={type:"node",name:i.id,value:(null===i||void 0===i?void 0:i.level)-1,children:[]};a.children.push(n),e(i,n)}}else a.children.push({type:"leaf",name:i.id,value:(null===i||void 0===i?void 0:i.level)-1})})))}(m,g);var f=Q(g).descendants(),j={};return f.forEach((function(e){var t;return j[null===(t=e.data)||void 0===t?void 0:t.name]=e})),c.forEach((function(e){t===V.layout&&j[e.id]&&(e.xPos=j[e.id].x,e.fx=e.xPos,e.fy=50*e.level),t===J.layout&&j[e.id]&&(e.yPos=j[e.id].x,e.fy=e.yPos,e.fx=50*e.level)})),{nodes:c,links:p,levelsMap:b,hierarchyVariant:20*v}},K=a(31),X=a(407),ee=a.n(X),te=a(408),ae=a.n(te),ie=a(17),re=a(425),ne=a(1),oe=function(e){return Object(ne.jsxs)(re.a,Object(ie.a)(Object(ie.a)({width:"48",height:"48",viewBox:"0 0 48 48",fill:"none"},e),{},{children:[Object(ne.jsx)("rect",{width:"48",height:"48",rx:"24",fill:"#3779E1","fill-opacity":"0.1"}),Object(ne.jsx)("path",{d:"M15.3086 16.1797C15.3086 18.0664 18.6133 19.3906 23.5 19.3906C28.3867 19.3906 31.6914 18.0664 31.6914 16.1797C31.6914 14.2109 28.4102 12.8398 23.5 12.8398C18.5898 12.8398 15.3086 14.2109 15.3086 16.1797ZM23.5 26.6445C19.1523 26.6445 15.8945 25.6602 13.4219 23.5625V16.1797C13.4219 13.2266 17.4531 11.1875 23.5 11.1875C29.5469 11.1875 33.5781 13.2266 33.5781 16.1797V23.5625C31.1055 25.6602 27.8477 26.6445 23.5 26.6445ZM13.4219 30.3594V25.6016C16.0352 27.5234 19.2812 28.4141 23.5 28.4141C27.7188 28.4141 30.9648 27.5234 33.5781 25.6016V30.3594C33.5781 33.5938 29.5117 35.8789 23.5 35.8789C17.4883 35.8789 13.4219 33.5938 13.4219 30.3594Z",fill:"#3779E1"})]}))},le=function(e){return Object(ne.jsx)(re.a,Object(ie.a)(Object(ie.a)({width:"12",height:"13",viewBox:"0 0 12 13",fill:"none"},e),{},{children:Object(ne.jsx)("path",{d:"M6.00293 7.39568C6.23113 7.39568 6.45363 7.32151 6.72747 7.16178L11.1888 4.57172C11.6509 4.30358 11.8277 4.0925 11.8277 3.77873C11.8277 3.47066 11.6509 3.25957 11.1888 2.99144L6.72747 0.401384C6.45363 0.241645 6.23113 0.16748 6.00293 0.16748C5.76903 0.16748 5.55224 0.241645 5.2727 0.401384L0.81141 2.99144C0.349307 3.25957 0.172453 3.47066 0.172453 3.77873C0.172453 4.0925 0.349307 4.30358 0.81141 4.57172L5.2727 7.16178C5.55224 7.32151 5.76903 7.39568 6.00293 7.39568ZM6.00293 10.2082C6.20831 10.2082 6.38517 10.1112 6.62478 9.96862L11.5253 7.0762C11.7364 6.94499 11.8334 6.75672 11.8334 6.57987C11.8334 6.34596 11.6623 6.152 11.5025 6.07783L6.21972 9.12999C6.13415 9.17563 6.06569 9.20986 6.00293 9.20986C5.93447 9.20986 5.86601 9.17563 5.78044 9.12999L0.497636 6.07783C0.337897 6.152 0.166748 6.34596 0.166748 6.57987C0.166748 6.75672 0.269438 6.95069 0.480522 7.0762L5.37539 9.96862C5.6207 10.1112 5.79185 10.2082 6.00293 10.2082ZM6.00293 12.8325C6.20831 12.8325 6.38517 12.7355 6.62478 12.5929L11.5253 9.70049C11.7307 9.58068 11.8334 9.38101 11.8334 9.20415C11.8334 8.97025 11.6623 8.78199 11.5025 8.70212L6.21972 11.76C6.13415 11.8056 6.06569 11.8399 6.00293 11.8399C5.93447 11.8399 5.86601 11.8056 5.78044 11.76L0.497636 8.70212C0.337897 8.78199 0.166748 8.97025 0.166748 9.20415C0.166748 9.38101 0.269438 9.58068 0.480522 9.70049L5.37539 12.5929C5.6207 12.7355 5.79185 12.8325 6.00293 12.8325Z",fill:"#435070"})}))},se={position:"absolute",left:0,right:0,bottom:0,top:0,margin:"auto",color:"#11bffe",size:"55rem"},de=function(e){var t,a=Object(R.b)(),n=r.a.useRef(null),o=Object(i.useState)(null),l=Object(p.a)(o,2),s=l[0],d=l[1],S=Object(i.useState)(null),w=Object(p.a)(S,2),I=w[0],N=w[1],M=Object(i.useState)(new Set),A=Object(p.a)(M,2),U=A[0],z=A[1],Q=Object(i.useState)(new Set),X=Object(p.a)(Q,2),te=X[0],ie=X[1],re=r.a.useState(J),oe=Object(p.a)(re,2),de=oe[0],ce=oe[1],ue=r.a.useState(null),pe=Object(p.a)(ue,2),be=pe[0],he=pe[1],ve=Boolean(be),me=r.a.useState(!1),ge=Object(p.a)(me,2),fe=ge[0],je=ge[1],ye=r.a.useState({nodes:[],links:[]}),Oe=Object(p.a)(ye,2),xe=Oe[0],_e=Oe[1],ke=Object(R.c)((function(e){return e.sdsState.instance_selected.graph_node})),Se=Object(R.c)((function(e){return e.sdsState.instance_selected.source})),Te=Object(R.c)((function(e){return e.sdsState.group_selected.graph_node})),we=r.a.useState(!0),Ce=Object(p.a)(we,2),Ie=Ce[0],Ee=Ce[1],Ne=Object(i.useState)(new Set),Pe=Object(p.a)(Ne,2),Me=Pe[0],De=Pe[1],Ae=function(){he(null)},Fe=function(e){Ae(),ce(e),Be(),setTimeout((function(){Ue()}),100)},Re=function(e,t){var a,i,r,o;null===n||void 0===n||null===(a=n.current)||void 0===a||null===(i=a.ggv)||void 0===i||i.current.centerAt(e.x,e.y,W),null===n||void 0===n||null===(r=n.current)||void 0===r||null===(o=r.ggv)||void 0===o||o.current.zoom(2,W)},Ue=function(){var e,t;null===n||void 0===n||null===(e=n.current)||void 0===e||null===(t=e.ggv)||void 0===t||t.current.zoomToFit()},Be=function(){var t,a;if(de.layout!==V.layout||de.layout!==J.layout){var i,r,o,l,s,d,c,u,p,g,f,j;null===n||void 0===n||null===(i=n.current)||void 0===i||null===(r=i.ggv)||void 0===r||r.current.d3Force("link").distance(0).strength(1),null===n||void 0===n||null===(o=n.current)||void 0===o||null===(l=o.ggv)||void 0===l||l.current.d3Force("charge").strength(-200),null===n||void 0===n||null===(s=n.current)||void 0===s||null===(d=s.ggv)||void 0===d||d.current.d3Force("collision",b.a(20)),null===n||void 0===n||null===(c=n.current)||void 0===c||null===(u=c.ggv)||void 0===u||u.current.d3Force("x",h.a()),null===n||void 0===n||null===(p=n.current)||void 0===p||null===(g=p.ggv)||void 0===g||g.current.d3Force("y",v.a()),null===n||void 0===n||null===(f=n.current)||void 0===f||null===(j=f.ggv)||void 0===j||j.current.d3Force("manyBody",m.a().strength((function(t){var a;return-100*Math.sqrt(100/(null===(a=window.datasets[e.graph_id].graph.levelsMap[t.level])||void 0===a?void 0:a.length))})))}null===n||void 0===n||null===(t=n.current)||void 0===t||null===(a=t.ggv)||void 0===a||a.current.d3Force("center",null)};Object(i.useEffect)((function(){var t=$(e.graph_id,de.layout);_e(t),je(!0),Be(),setTimeout((function(){je(!1),Be()}),W)}),[]),Object(i.useEffect)((function(){var t=$(e.graph_id,de.layout);_e(t)}),[de]),Object(i.useEffect)((function(){document.addEventListener("nodeVisible",(function(t){var a=t.detail;if(null===a||void 0===a?void 0:a.find((function(t){var a;return(null===t||void 0===t||null===(a=t._attributes)||void 0===a?void 0:a.id)===e.graph_id}))){var i=$(e.graph_id,de.layout);_e(i),setTimeout((function(e){Be(),Ue()}),100)}})),document.addEventListener("nodeResized",(function(t){var a=t.detail;(null===a||void 0===a?void 0:a.find((function(t){var a;return(null===t||void 0===t||null===(a=t._attributes)||void 0===a?void 0:a.id)===e.graph_id})))&&Ue()}))})),Object(i.useEffect)((function(){var t,a,i,r,o;Te&&null!==Te&&void 0!==Te&&null!==(t=Te.dataset_id)&&void 0!==t&&t.includes(e.graph_id)&&(N(Te),Le(Te),null===n||void 0===n||null===(a=n.current)||void 0===a||null===(i=a.ggv)||void 0===i||i.current.centerAt(Te.x,Te.y,W),null===n||void 0===n||null===(r=n.current)||void 0===r||null===(o=r.ggv)||void 0===o||o.current.zoom(2,W))}),[Te]),Object(i.useEffect)((function(){I&&De((function(e){return new Set([].concat(Object(u.a)(e),[I.id]))}))}),[I]),Object(i.useEffect)((function(){var t,a,i,r,o,l=(null===ke||void 0===ke||null===(t=ke.tree_reference)||void 0===t||null===(a=t.dataset_id)||void 0===a?void 0:a.includes(e.graph_id))||(null===ke||void 0===ke||null===(i=ke.dataset_id)||void 0===i?void 0:i.includes(e.graph_id))||(null===ke||void 0===ke||null===(r=ke.attributes)||void 0===r||null===(o=r.dataset_id)||void 0===o?void 0:o.includes(e.graph_id));if(ke&&l){if((null===ke||void 0===ke?void 0:ke.id)!==(null===I||void 0===I?void 0:I.id)){for(var s=ke,d=(s.collapsed,s.parent),c=s;d&&null!==(u=d)&&void 0!==u&&u.collapsed;){var u;c=d,d=d.parent}if(c&&ke.collapsed&&"TREE"===Se){var p,b,h,v,m;if(c.type==H.b.Subject.key||c.type==H.b.Sample.key||c.type==H.b.Collection.key){c.collapsed=!1,Y(c,!1,{links:0});var g=$(e.graph_id,de.layout);_e(g)}if((null===(p=s.parent)||void 0===p?void 0:p.type)==H.b.Subject.key||(null===(b=s.parent)||void 0===b?void 0:b.type)==H.b.Sample.key||(null===(h=s.parent)||void 0===h?void 0:h.type)==H.b.Collection.key){Y(s.parent,!0,{links:0});var f=$(e.graph_id,de.layout);_e(f)}else{Y(s,!0,{links:0});var j=$(e.graph_id,de.layout);_e(j)}N(ke),Le(ke),null===n||void 0===n||null===(v=n.current)||void 0===v||null===(m=v.ggv)||void 0===m||m.current.centerAt(ke.x,ke.y,W)}}else{var y,O;Le(ke),null===n||void 0===n||null===(y=n.current)||void 0===y||null===(O=y.ggv)||void 0===O||O.current.centerAt(ke.x,ke.y,W)}var x=document.getElementById(ke.id+L.j);null===x||void 0===x||x.scrollIntoView({behavior:"smooth"})}}),[ke]);var Le=function(e){var t,a;(U.clear(),te.clear(),e)&&(U.add(e),null===(t=e.neighbors)||void 0===t||t.forEach((function(e){return U.add(e)})),null===(a=e.links)||void 0===a||a.forEach((function(e){return te.add(e)})));d(e),ie(te),z(U)};return Object(ne.jsx)("div",{className:"graph-view",children:fe?Object(ne.jsx)(f.a,{style:se}):Object(ne.jsx)(B.a,{ref:n,id:e.graph_id,data:xe,d2:!0,cooldownTicks:de.layout===V.layout||de.layout===J.layout?0:null===xe||void 0===xe||null===(t=xe.nodes)||void 0===t?void 0:t.length,onEngineStop:function(){Be(),I&&Re(ke)},linkColor:function(e){var t=G.link;return te.has(e)&&(t=U.has(e.source)||U.has(e.target)?G.linkHover:G.link),t},linkWidth:2,dagLevelDistance:de.layout!==V.layout&&de.layout!==J.layout?0:60,linkDirectionalParticles:1,forceRadial:de.layout!==V.layout&&de.layout!==J.layout?15:0,linkDirectionalParticleWidth:function(e){return te.has(e)?4:0},linkCanvasObjectMode:"replace",onLinkHover:function(e){U.clear(),te.clear(),e&&(te.add(e),U.add(e.source),U.add(e.target)),ie(te),z(U)},nodeCanvasObject:function(e,t){return function(e,t,a,i,r,n){var o,l=7.5,s=[18,18],d=[31.5,31.5],c=[e.x-d[0]/2,e.y-d[1]/2],u=[c[0],c[1]+d[1]];t.beginPath();try{t.drawImage.apply(t,[null===e||void 0===e?void 0:e.img,e.x-l,e.y-l].concat(s))}catch(f){var p=new Image;p.src=H.b.Unknown.image,e.img=p,t.drawImage.apply(t,[null===e||void 0===e?void 0:e.img,e.x-l-1,e.y-l].concat(s))}t.font="500 5px Inter, sans-serif",t.textAlign="center",t.textBaseline="top";var b=e.name;if(b.length>10)b=b.substr(0,9).concat("...");else if(Array.isArray(b)){var h;b=null===(h=b[0])||void 0===h?void 0:h.substr(0,9).concat("...")}var v=[b,e.x,u[1]];if(e===a||(null===e||void 0===e?void 0:e.id)===(null===i||void 0===i?void 0:i.id)||(null===e||void 0===e?void 0:e.id)===(null===r||void 0===r?void 0:r.id)?(q.apply(void 0,[t].concat(c,d,[1,G.hoverRec,.3])),q.apply(void 0,[t].concat(u,[d[0],d[1]/4,1,G.textHoverRect])),t.fillStyle=G.textHover):n.has(e.id)?(q.apply(void 0,[t].concat(c,d,[1,G.nodeSeen,.3])),q.apply(void 0,[t].concat(u,[d[0],d[1]/4,1,G.textBGSeen])),t.fillStyle=G.textHover):t.fillStyle=G.textColor,t.fillText.apply(t,v),null!==(o=e.childLinks)&&void 0!==o&&o.length&&e.collapsed){var m={links:0};Y(e,!0,m);var g=[m.links,e.x,u[1]];t.fillStyle=G.collapsedFolder,t.textAlign="center",t.textBaseline="bottom",t.fillText.apply(t,g),t.fillStyle=G.textColor}}(e,t,s,I,ke,Me)},nodeCanvasObjectMode:function(e){return"replace"},nodeVal:function(e){return de.layout===V.layout?(e.fx=e.xPos,e.fy=50*e.level):de.layout===J.layout&&(e.fx=50*e.level,e.fy=e.yPos),100/(e.level+1)},nodeRelSize:2.5,onNodeHover:Le,onNodeClick:function(t,i){return function(t,i){if(t.type===H.b.Subject.key||t.type===H.b.Sample.key||t.type===H.b.Collection.key){Y(t,t.collapsed,{links:0}),t.collapsed=!t.collapsed;var r=$(e.graph_id,de.layout);_e(r)}var n;Le(t),(null===t||void 0===t?void 0:t.id)!==(null===I||void 0===I?void 0:I.id)&&a(Object(c.m)({dataset_id:e.graph_id,graph_node:t.id,tree_node:null===t||void 0===t||null===(n=t.tree_reference)||void 0===n?void 0:n.id,source:L.d}));var o=document.getElementById(t.id+L.j);null===o||void 0===o||o.scrollIntoView({behavior:"smooth"})}(t)},onNodeRightClick:function(e,t){return Re(e)},dagMode:de.layout,onDagError:function(e){},enableNodeDrag:!1,enableZoomPanInteraction:!0,enablePointerInteraction:!0,controls:Object(ne.jsxs)("div",{children:[Object(ne.jsxs)("div",{className:"graph-view_controls",children:[Object(ne.jsxs)(g.a,{id:"layout-menu",anchorEl:be,keepMounted:!0,open:ve,onClose:Ae,children:[Object(ne.jsx)(j.a,{selected:Z.layout===de.layout,onClick:function(){return Fe(Z)},children:Z.label}),Object(ne.jsx)(j.a,{selected:V.layout===de.layout,onClick:function(){return Fe(V)},children:V.label}),Object(ne.jsx)(j.a,{selected:J.layout===de.layout,onClick:function(){return Fe(J)},children:J.label})]}),Object(ne.jsx)(y.a,{id:"button-report",title:"Change Graph Layout",children:Object(ne.jsx)(O.a,{"area-label":"GraphLayout","aria-controls":"layout-menu","aria-haspopup":"true",onClick:function(e){he(e.currentTarget)},children:Object(ne.jsx)(le,{})})}),Object(ne.jsx)(O.a,{"area-label":"ZoomIn",onClick:function(e){return function(e){var t=n.current.ggv.current.zoom(),a=1;t<2&&(a=.2),n.current.ggv.current.zoom(t+a,100)}()},children:Object(ne.jsx)(y.a,{id:"button-report",title:"Zoom In",children:Object(ne.jsx)(ee.a,{})})}),Object(ne.jsx)(O.a,{"area-label":"ZoomOut",onClick:function(e){return function(e){var t=n.current.ggv.current.zoom(),a=1;t<2&&(a=.2),n.current.ggv.current.zoom(t-a,100)}()},children:Object(ne.jsx)(y.a,{id:"button-report",title:"Zoom Out",children:Object(ne.jsx)(ae.a,{})})}),Object(ne.jsx)(O.a,{"area-label":"ResetCamera",onClick:function(e){return Ue()},children:Object(ne.jsx)(y.a,{id:"button-report",title:"Reset Camera",children:Object(ne.jsx)(E.a,{})})}),Object(ne.jsx)(O.a,{"area-label":"Expand",onClick:function(t){return function(t){var a,i;null===(a=window.datasets[e.graph_id].graph)||void 0===a||null===(i=a.nodes)||void 0===i||i.forEach((function(e){e.collapsed=Ie?!Ie:(null===e||void 0===e?void 0:e.type)===H.d.NamedIndividual.subject.type}));var r=$(e.graph_id,de.layout);_e(r),Ee(!Ie),setTimeout((function(){Ue()}),10)}()},children:Object(ne.jsx)(y.a,{id:"button-report",title:Ie?"Expand All":"Collapse All",children:Ie?Object(ne.jsx)(P.a,{}):Object(ne.jsx)(D.a,{})})}),Object(ne.jsx)(T.a,{})]}),Object(ne.jsx)("div",{className:"user-manual_controls",children:Object(ne.jsxs)(x.a,{display:"flex",justifyContent:"center",alignItems:"end",children:[Object(ne.jsx)(_.a,{justifyContent:"right",variant:"subtitle2",color:"primary",children:" Version 1"}),Object(ne.jsx)(O.a,{ustifyContent:"right",component:k.a,"area-label":"report",onClick:function(){return window.open(K.issues_url,"_blank")},children:Object(ne.jsx)(y.a,{id:"button-report",title:"Report Issues",children:Object(ne.jsx)(F.a,{})})}),Object(ne.jsx)(O.a,{ustifyContent:"right",component:k.a,"area-label":"manual",onClick:function(){return window.open(K.docs_url,"_blank")},children:Object(ne.jsx)(y.a,{id:"button-manual",title:"User Manual Documentation",children:Object(ne.jsx)(C.a,{})})})]})})]})})})},ce=a.p+"static/media/filter.335966db.svg",ue=function(){return Object(ne.jsx)(x.a,{className:"secondary-sidebar_footer",children:Object(ne.jsx)("img",{src:ce,alt:"FILTER"})})},pe=a.p+"static/media/help.c1d19ba0.svg",be=a(19),he=function(e){var t=e.node,a={color:be.a.dataset},i=void 0;return i=t.graph_node?t.graph_node.name:t.tree_node?t.tree_node.text:"Unknown node",Object(ne.jsxs)(x.a,{className:"secondary-sidebar_header",children:[Object(ne.jsx)("img",{src:pe,alt:"Contributor"}),Object(ne.jsx)(_.a,{component:"h3",style:a,children:i})]})},ve=a.p+"static/media/nifti.2c5dab4b.svg",me=function(e){var t=e.node,a={color:be.a.nifti},i=void 0;return i=t.tree_node&&t.graph_node||t.tree_node?t.tree_node.text:t.graph_node.name,Object(ne.jsxs)(x.a,{className:"secondary-sidebar_header",children:[Object(ne.jsx)("img",{src:ve,alt:"File"}),Object(ne.jsx)(_.a,{component:"h3",style:a,children:i})]})},ge=a.p+"static/media/user.344027c3.svg",fe=function(e){var t=e.node,a={color:be.a.dataset,textTransform:"capitalize"},i=void 0;return i=t.tree_node&&t.graph_node||t.tree_node?t.tree_node.text:t.graph_node.name,Object(ne.jsxs)(x.a,{className:"secondary-sidebar_header",children:[Object(ne.jsx)("img",{src:ge,alt:"Contributor"}),Object(ne.jsx)(_.a,{component:"h3",style:a,children:i})]})},je=a.p+"static/media/dataset.6c3feae5.svg",ye=function(e){var t=e.node,a={color:be.a.dataset},i=void 0;return i=t.tree_node&&t.graph_node||t.tree_node?t.tree_node.text:t.graph_node.name,Object(ne.jsxs)(x.a,{className:"secondary-sidebar_header",children:[Object(ne.jsx)("img",{src:je,alt:"dataset"}),Object(ne.jsx)(_.a,{component:"h3",style:a,children:i})]})},Oe=a.p+"static/media/volume.1008184b.svg",xe=function(e){var t=e.node,a={color:be.a.volume},i=void 0;return i=t.tree_node&&t.graph_node||t.tree_node?t.tree_node.text:t.graph_node.name,Object(ne.jsxs)(x.a,{className:"secondary-sidebar_header",children:[Object(ne.jsx)("img",{src:Oe,alt:"Volume"}),Object(ne.jsx)(_.a,{component:"h3",style:a,children:i})]})},_e=function(e){var t=e.node,a={color:be.a.volume},i=void 0;return i=t.tree_node&&t.graph_node||t.tree_node?t.tree_node.text:t.graph_node.name,Object(ne.jsxs)(x.a,{className:"secondary-sidebar_header",children:[Object(ne.jsx)("img",{src:Oe,alt:"Volume"}),Object(ne.jsx)(_.a,{component:"h3",style:a,children:i})]})},ke=a(575),Se=function(e){var t=e.label,a=e.value,i=e.heading;return Object(ne.jsxs)(ne.Fragment,{children:[i?Object(ne.jsx)(_.a,{component:"h3",children:i}):null,Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:t}),Object(ne.jsx)(_.a,{children:a})]})]})},Te=function(e){var t,a,i=e.node,r="",n="";if(null!==i&&void 0!==i&&i.graph_node)r=null===(t=i.graph_node)||void 0===t?void 0:t.name,n=(null===(a=i.graph_node)||void 0===a?void 0:a.id)+L.j;else if(null!==i&&void 0!==i&&i.tree_node){var o,l;r=null===(o=i.tree_node)||void 0===o?void 0:o.basename,n=(null===(l=i.tree_node)||void 0===l?void 0:l.id)+L.j}else{var s;r="Unknown node",n=(null===(s=i.graph_node)||void 0===s?void 0:s.id)+L.j}return Object(ne.jsxs)(x.a,{className:"secondary-sidebar_body",id:n,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsx)(x.a,{className:"tab-content",children:Object(ne.jsx)(Se,{label:"Name",value:r.toString(),heading:"Details"})})]})},we=a.p+"static/media/link.2bbc9098.svg",Ce=function(e){var t=e.href,a=e.title;return Object(ne.jsxs)(k.a,{href:t,target:"_blank",children:[Object(ne.jsx)("img",{src:we,alt:a}),a]})},Ie=a(630),Ee=function(e){var t=e.chips,a=e.node,i=Object(R.b)(),r=function(e,t){if(e.link)window.open(e.link,"_blank");else if(e.value){var a;if(new RegExp("([a-zA-Z0-9]+://)?([a-zA-Z0-9_]+:[a-zA-Z0-9_]+@)?([a-zA-Z0-9.-]+\\.[A-Za-z]{2,4})(:[0-9]+)?(/.*)?").test(e.value))window.open(e.value,"_blank");else if(t)i(Object(c.l)({dataset_id:t.dataset_id,graph_node:null===t||void 0===t?void 0:t.id,tree_node:null===t||void 0===t||null===(a=t.tree_reference)||void 0===a?void 0:a.id,source:L.d}))}};return Object(ne.jsx)(x.a,{className:"chip-overflow noscrollbar",children:null===t||void 0===t?void 0:t.map((function(e,t){return void 0===a?e.link?Object(ne.jsx)(Ie.a,{label:null===e||void 0===e?void 0:e.value,onClick:function(){return r(e,null)}}):Object(ne.jsx)(Ie.a,{label:null===e||void 0===e?void 0:e.value}):Object(ne.jsx)(Ie.a,{label:null===e||void 0===e?void 0:e.value,onClick:function(){return r(e,a)}})}))})},Ne=function(e){new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i");return"string"===typeof e&&(null===e||void 0===e?void 0:e.startsWith("http"))},Pe=function(e){var t,a=e.node,i=Object(R.c)((function(e){return e.sdsState.metadata_model.file}));return Object(ne.jsxs)(x.a,{className:"secondary-sidebar_body",id:(null===a||void 0===a||null===(t=a.graph_node)||void 0===t?void 0:t.id)+L.j,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsxs)(x.a,{className:"tab-content",children:[Object(ne.jsx)(Se,{label:"",value:"",heading:"File Details"}),null===i||void 0===i?void 0:i.map((function(e){if(e.visible){var t,i,r,n=(null===a||void 0===a||null===(t=a.tree_node)||void 0===t?void 0:t[e.property])||(null===a||void 0===a||null===(i=a.graph_node)||void 0===i||null===(r=i.attributes)||void 0===r?void 0:r[e.property]);return Ne(n)?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ce,{href:n,title:e.label+" Link"},"detail_links_dataset")]}):"object"===typeof n?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ee,{chips:a.graph_node.attributes[e.property]})]}):"string"===typeof n||"number"===typeof n?Object(ne.jsx)(Se,{label:e.label,value:n}):Object(ne.jsx)(ne.Fragment,{children:" "})}}))]})]})},Me=function(e){var t,a=e.node,i="",r="";return null!==a&&void 0!==a&&a.tree_node&&null!==a&&void 0!==a&&a.graph_node?(i=a.graph_node.name,r=a.graph_node.id+L.j):null!==a&&void 0!==a&&a.tree_node?(i=a.tree_node.basename,r=a.tree_node.id+L.j):(i=a.graph_node.name,r=a.graph_node.id+L.j),Object(ne.jsxs)(x.a,{id:r,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsxs)(x.a,{className:"tab-content",children:[Object(ne.jsx)(_.a,{component:"h3",children:"Person Details"}),Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:"Name"}),Object(ne.jsx)(Ce,{href:null===(t=a.graph_node)||void 0===t?void 0:t.id,title:i.toString()},"name_href_link")]})]})]})},De=function(e){var t,a=e.node,i=Object(R.c)((function(e){return e.sdsState.metadata_model.sample}));return Object(ne.jsxs)(x.a,{id:(null===a||void 0===a||null===(t=a.graph_node)||void 0===t?void 0:t.attributes.localId)+L.j,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsxs)(x.a,{className:"tab-content",children:[Object(ne.jsx)(Se,{label:"",value:"",heading:"Sample Details"}),null===i||void 0===i?void 0:i.map((function(e){if(e.visible){var t,i=null===(t=a.graph_node.attributes[e.property])||void 0===t?void 0:t[0];return Ne(i)?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ce,{href:i,title:e.label+" Link"},"detail_links_dataset")]}):"object"===typeof i?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ee,{chips:a.graph_node.attributes[e.property]})]}):"string"===typeof i?Object(ne.jsx)(Se,{label:e.label,value:i}):Object(ne.jsx)(ne.Fragment,{children:" "})}}))]})]})},Ae=a(10),Fe=a(415),Re=a.n(Fe),Ue=function(e){var t,a=e.node,r=Object(R.c)((function(e){return e.sdsState.metadata_model.dataset})),n=Object(i.useState)({}),o=Object(p.a)(n,2),l=o[0],s=o[1];return Object(i.useEffect)((function(){var e={};null===r||void 0===r||r.map((function(t){t.link&&(e[t.label]=!1)})),s(e)}),[]),Object(ne.jsxs)(x.a,{id:(null===(t=a.graph_node)||void 0===t?void 0:t.id)+L.j,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsxs)(x.a,{className:"tab-content",children:[Object(ne.jsxs)(x.a,{className:"title-container",children:[Object(ne.jsx)(oe,{}),Object(ne.jsx)(_.a,{component:"h3",children:"Dataset Details"})]}),null===r||void 0===r?void 0:r.map((function(e){if(e.visible){var t,i=null===(t=a.graph_node.attributes[e.property])||void 0===t?void 0:t[0];if(e.link){var r,n,o=null===(r=a.graph_node.attributes[e.link.property])||void 0===r?void 0:r[0];return Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsxs)(x.a,{className:"title-container",children:[Object(ne.jsx)(y.a,{open:l[e.label],title:"DOI Copy",children:Object(ne.jsx)(O.a,{color:"primary",size:"small","aria-label":"Copy Content",onClick:function(){navigator.clipboard.writeText(o);var t=Object(ie.a)(Object(ie.a)({},l),{},Object(Ae.a)({},e.label,!0));s(t)},children:Object(ne.jsx)(Re.a,{size:"small"})})}),Object(ne.jsx)(x.a,{className:"tab-content-row",children:null!==(n=e.link)&&void 0!==n&&n.asText?Object(ne.jsx)(_.a,{children:o}):Object(ne.jsx)(Ce,{href:o,title:i},"detail_links_dataset")})]})]})}return Ne(i)?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ce,{href:i,title:e.label},"detail_links_dataset")]}):"object"===typeof i?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ee,{chips:a.graph_node.attributes[e.property]})]}):"string"===typeof i?Object(ne.jsx)(Se,{label:e.label,value:i}):Object(ne.jsx)(ne.Fragment,{children:" "})}}))]})]})},Be=function(e){var t,a=e.node,i=Object(R.c)((function(e){return e.sdsState.metadata_model.subject})),r=function(e,t){for(var a=t.graph_node.parent,i=!1;a&&!i;)a.name===e?i=!0:a=a.parent;return a};return Object(ne.jsxs)(x.a,{id:(null===a||void 0===a||null===(t=a.graph_node)||void 0===t?void 0:t.id)+L.j,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsxs)(x.a,{className:"tab-content",children:[Object(ne.jsx)(Se,{label:"",value:"",heading:"Subject Details"}),null===i||void 0===i?void 0:i.map((function(e){if(e.visible){var t,i,n=null===(t=a.graph_node.attributes[e.property])||void 0===t?void 0:t[0];return e.isGroup?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ee,{chips:[{value:a.graph_node.attributes[e.property]}],node:r(null===(i=a.graph_node.attributes[e.property])||void 0===i?void 0:i[0],a)})]}):Ne(n)?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ce,{href:n,title:e.label+" Link"},"detail_links_dataset")]}):"object"===typeof n?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ee,{chips:a.graph_node.attributes[e.property]})]}):"string"===typeof n?Object(ne.jsx)(Se,{label:e.label,value:n}):Object(ne.jsx)(ne.Fragment,{children:" "})}}))]})]})},Le=function(e){var t,a,i,r,n,o,l,s=e.node,d="",c="";if(null!==s&&void 0!==s&&s.tree_node&&null!==s&&void 0!==s&&s.graph_node)c=s.tree_node.id+L.j,d=s.tree_node.basename;else if(null!==s&&void 0!==s&&s.graph_node){var u,p;c=s.graph_node.id+L.j,d=null===(u=s.graph_node.attributes)||void 0===u||null===(p=u.label)||void 0===p?void 0:p[0]}else c=s.tree_node.id+L.j,d="Undefined protocol";return Object(ne.jsxs)(x.a,{id:c,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsxs)(x.a,{className:"tab-content",children:[null!==(t=s.graph_node.attributes)&&void 0!==t&&t.hasUriHuman&&""!==(null===(a=s.graph_node.attributes)||void 0===a?void 0:a.hasUriHuman[0])?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"h3",children:"Protocol Details"}),Object(ne.jsx)(_.a,{component:"label",children:"Label"}),Object(ne.jsx)(Ce,{href:null===(i=s.graph_node.attributes)||void 0===i?void 0:i.hasUriHuman[0],title:d},"label_href_link")]}):Object(ne.jsx)(Se,{label:"Label",value:d,heading:"Protocol Details"}),(o="Number of steps",l=null===s||void 0===s||null===(r=s.graph_node)||void 0===r||null===(n=r.attributes)||void 0===n?void 0:n.protocolHasNumberOfSteps,void 0!==l?l.map((function(e,t){return Object(ne.jsx)(Se,{label:o,value:e},o+"_key_"+t)})):Object(ne.jsx)(ne.Fragment,{children:" "}))]})]})},He=function(e){var t,a=e.node,i=Object(R.c)((function(e){return e.sdsState.metadata_model.group}));return Object(ne.jsxs)(x.a,{className:"secondary-sidebar_body",id:(null===a||void 0===a||null===(t=a.graph_node)||void 0===t?void 0:t.id)+L.j,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsxs)(x.a,{className:"tab-content",children:[Object(ne.jsx)(Se,{label:"",value:"",heading:"Group Details"}),null===i||void 0===i?void 0:i.map((function(e){if(e.visible){var t=a.graph_node[e.property];return Ne(t)?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ce,{href:t,title:e.label+" Link"},"detail_links_dataset")]}):"object"===typeof t?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ee,{chips:a.graph_node[e.property]})]}):"string"===typeof t||"number"===typeof t?Object(ne.jsx)(Se,{label:e.label,value:t}):Object(ne.jsx)(ne.Fragment,{children:" "})}}))]})]})},ze=function(e){var t,a,i=e.node,r=Object(R.c)((function(e){return e.sdsState.metadata_model.collection}));return Object(ne.jsxs)(x.a,{id:(null===i||void 0===i||null===(t=i.graph_node)||void 0===t||null===(a=t.attributes)||void 0===a?void 0:a.localId)+L.j,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsxs)(x.a,{className:"tab-content",children:[Object(ne.jsx)(Se,{label:"",value:"",heading:"Folder Details"}),null===r||void 0===r?void 0:r.map((function(e){if(e.visible){var t,a,r,n=(null===i||void 0===i||null===(t=i.tree_node)||void 0===t?void 0:t[e.property])||(null===i||void 0===i||null===(a=i.graph_node)||void 0===a||null===(r=a.attributes)||void 0===r?void 0:r[e.property]);return Ne(n)?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ce,{href:n,title:e.label+" Link"},"detail_links_dataset")]}):"object"===typeof n?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ee,{chips:i.graph_node.attributes[e.property]})]}):"string"===typeof n?Object(ne.jsx)(Se,{label:e.label,value:n}):Object(ne.jsx)(ne.Fragment,{children:" "})}}))]})]})},We=a(573),Ge=a(166),Ve=a(430),Je=a(620),Ze=a(431),qe=a(583),Ye=a(619),Qe=a(416),$e=a.n(Qe),Ke=a(419),Xe=a.n(Ke),et=a(418),tt=a.n(et),at=a(417),it=a.n(at),rt=function(e){var t=e.groupTitle,a=e.item,i=Object(R.b)();return Object(ne.jsxs)(Ze.a,{disableGutters:!0,style:{display:"flex",padding:"1rem",boxShadow:"0px 1px 0px 0px #E5E5E5"},children:[a.visible?Object(ne.jsx)($e.a,{style:{color:"rgba(46, 58, 89, 0.40)",marginRight:"16px",fontSize:"1rem"}}):Object(ne.jsx)(it.a,{style:{color:"rgba(46, 58, 89, 0.40)",marginRight:"16px",fontSize:"1rem"}}),Object(ne.jsx)(qe.a,{primary:Object(ne.jsx)(_.a,{variant:"body2",style:{color:"rgba(46, 58, 89, 0.80)",fontWeight:"600",fontSize:".75rem"},children:a.label})}),Object(ne.jsx)(Ye.a,{style:{right:"2rem"},children:Object(ne.jsx)(O.a,{edge:"end","aria-label":a.visible?"delete":"add",onClick:function(){return i(Object(c.o)(t,a.key))},disableRipple:!0,children:a.visible?Object(ne.jsx)(y.a,{id:a.label,title:"Hide Property",children:Object(ne.jsx)(Xe.a,{style:{color:"#ED745D",fontSize:"1rem"}})}):Object(ne.jsx)(y.a,{id:a.label,title:"Show Property",children:Object(ne.jsx)(tt.a,{style:{color:"#3779E1",fontSize:"1rem"}})})})})]})},nt=function(e){var t=e.provided,a=e.items,i=e.title;return Object(ne.jsxs)(Ve.a,Object(ie.a)(Object(ie.a)({},t.droppableProps),{},{ref:t.innerRef,subheader:Object(ne.jsx)(Je.a,{disableGutters:!0,disableSticky:!0,children:Object(ne.jsx)(x.a,{style:{padding:"1.5rem 0rem 1.5rem 1.5rem",boxShadow:"0px 1px 0px 0px #E5E5E5"},children:Object(ne.jsx)(_.a,{variant:"h6",style:{color:"#2E3A59"},children:i.charAt(0).toUpperCase()+i.slice(1)})})}),children:[a.map((function(e,t){return Object(ne.jsx)(Ge.b,{draggableId:"".concat(t),index:t,isDragDisabled:!e.visible,children:function(t){return Object(ne.jsx)(x.a,Object(ie.a)(Object(ie.a)(Object(ie.a)({ref:t.innerRef},t.draggableProps),t.dragHandleProps),{},{children:Object(ne.jsx)(rt,{item:e,groupTitle:i})}))}},e.key)})),t.placeholder]}))},ot=function(e){var t=e.title,a=e.group,r=Object(i.useState)(a),n=Object(p.a)(r,2),o=n[0],l=n[1],s=Object(R.b)();return Object(ne.jsx)(x.a,{children:Object(ne.jsx)(Ge.a,{onDragEnd:function(e){if(e.destination){var a=Object(u.a)(o),i=a.splice(e.source.index,1),r=Object(p.a)(i,1)[0];a.splice(e.destination.index,0,r),l(a),s(Object(c.r)({groupTitle:t,newItemsOrder:a}))}},children:Object(ne.jsx)(Ge.c,{droppableId:"droppable",children:function(e){return Object(ne.jsx)(nt,{title:t,provided:e,items:o})}})})})},lt=function(){var e=Object(R.b)(),t=Object(R.c)((function(e){return e.sdsState.settings_panel_visible})),a=Object(R.c)((function(e){return e.sdsState.metadata_model}));return Object(ne.jsxs)(x.a,{style:{position:"relative",maxHeight:"84vh",overflow:"auto"},children:[Object.keys(a).map((function(e){return Object(ne.jsx)(ot,{title:e,group:a[e]})})),Object(ne.jsx)(x.a,{style:{background:"linear-gradient(rgb(255 255 255 / 81%) 0%, rgb(255, 255, 255) 100%)",padding:".75rem",position:"sticky",bottom:0,zIndex:1e3,display:"flex",justifyContent:"center"},children:Object(ne.jsx)(We.a,{variant:"contained",disableElevation:!0,color:"primary",onClick:function(){e(Object(c.p)(!t))},fullWidth:!0,children:"Save"})})]})},st=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(_e,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(ze,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(_e,{node:e}),Object(ne.jsx)(ze,{node:e})]})},getSettings:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(lt,{node:e})})}};return t},dt=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(_e,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(He,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(_e,{node:e}),Object(ne.jsx)(He,{node:e})]})},getSettings:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(lt,{node:e})})}};return t},ct=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(ye,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(Ue,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(ye,{node:e}),Object(ne.jsx)(Ue,{node:e})]})},getSettings:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(lt,{node:e})})}};return t},ut=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(xe,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(Le,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(xe,{node:e}),Object(ne.jsx)(Le,{node:e})]})}};return t},pt=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(_e,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(De,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(_e,{node:e}),Object(ne.jsx)(De,{node:e})]})},getSettings:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(lt,{node:e})})}};return t},bt=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(_e,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(Be,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(_e,{node:e}),Object(ne.jsx)(Be,{node:e})]})},getSettings:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(lt,{node:e})})}};return t},ht=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(me,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(Pe,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(me,{node:e}),Object(ne.jsx)(Pe,{node:e})]})},getSettings:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(lt,{node:e})})}};return t},vt=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(fe,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(Me,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(fe,{node:e}),Object(ne.jsx)(Me,{node:e})]})}};return t},mt=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(he,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(Te,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(he,{node:e}),Object(ne.jsx)(Te,{node:e})]})}};return t},gt=function(){this.createDetails=function(e){var t=null;switch(void 0!==e.graph_node&&null!==e.graph_node?e.graph_node.type:e.tree_node.type){case H.b.Collection.key:t=new st(e);break;case H.b.Group.key:t=new dt(e);break;case H.b.Dataset.key:t=new ct(e);break;case H.b.Protocol.key:t=new ut(e);break;case H.b.Sample.key:t=new pt(e);break;case H.b.Subject.key:t=new bt(e);break;case H.b.File.key:t=new ht(e);break;case H.b.Person.key:t=new vt(e);break;default:t=new mt(e)}return t}},ft=(a.p,a(629)),jt=function(e){var t,a=e.links,i=function(e){var t=document.getElementById(e+L.j);null===t||void 0===t||t.scrollIntoView({behavior:"smooth"})};return Object(ne.jsx)(x.a,{className:"wrap",children:Object(ne.jsxs)(ft.a,{"aria-label":"breadcrumb",maxItems:2,children:[a&&a.pages?null===a||void 0===a||null===(t=a.pages)||void 0===t?void 0:t.map((function(e,t){return Object(ne.jsx)(k.a,{color:"inherit",onClick:function(){i(e.id)},children:null===e||void 0===e?void 0:e.title},"breadcrumb_".concat(null===e||void 0===e?void 0:e.title,"_").concat(t))})):null,Object(ne.jsx)(_.a,{variant:"subtitle2",onClick:function(){i(null===a||void 0===a?void 0:a.current.id)},className:"breadcrumb_selected",children:null===a||void 0===a?void 0:a.current.text})]})})},yt=a(626),Ot={graphComponent:de,nodeView:function(e){for(var t,a,i,r=Object(R.b)(),n=new gt,o=Object(R.c)((function(e){return e.sdsState.instance_selected})),l=Object(R.c)((function(e){return e.sdsState.settings_panel_visible})),s=n.createDetails(o),d={pages:[],current:{id:void 0,text:""}},u=[],p=o;void 0!==(null===(b=p)||void 0===b||null===(h=b.graph_node)||void 0===h?void 0:h.parent);){var b,h,v,m,g,f,j;u.push(null===(v=p)||void 0===v||null===(m=v.graph_node)||void 0===m||null===(g=m.parent)||void 0===g?void 0:g.id),p={tree_node:void 0,graph_node:null===(f=p)||void 0===f||null===(j=f.graph_node)||void 0===j?void 0:j.parent}}(t=u.reverse().map((function(e){var t,a,i,r=window.datasets[o.dataset_id].splinter.nodes.get(e),l={dataset_id:o.dataset_id,graph_node:r,tree_node:r.tree_reference};return(null===l||void 0===l||null===(t=l.graph_node)||void 0===t?void 0:t.id)!==L.l&&(null===l||void 0===l||null===(a=l.graph_node)||void 0===a?void 0:a.id)!==L.i&&(null===l||void 0===l||null===(i=l.graph_node)||void 0===i?void 0:i.id)!==L.k?(d.pages.push({id:e,title:r.name,href:"#"}),n.createDetails(l).getDetail()):Object(ne.jsx)(ne.Fragment,{children:" "})})),null!==o&&void 0!==o&&o.graph_node)&&(d.current={id:null===o||void 0===o||null===(a=o.graph_node)||void 0===a?void 0:a.id,text:null===o||void 0===o||null===(i=o.graph_node)||void 0===i?void 0:i.name});return Object(ne.jsxs)(x.a,{className:"secondary-sidebar"+(e.open?" in":""),children:[Object(ne.jsx)(x.a,{className:"secondary-sidebar_breadcrumb",sx:{mt:"1rem"},children:Object(ne.jsx)(jt,{close:!1,links:d})}),l&&s.getSettings?s.getSettings():null,l?null:Object(ne.jsxs)(ne.Fragment,{children:[t,s.getDetail()]}),Object(ne.jsx)(ue,{}),!l&&Object(ne.jsx)(x.a,{className:"overlay-button-container",children:Object(ne.jsx)(y.a,{id:"button-report",title:"Open Metadata Settings",children:Object(ne.jsx)(O.a,{className:"overlay-button",onClick:function(){r(Object(c.p)(!l))},children:Object(ne.jsx)(yt.a,{})})})})]})}},xt=localStorage.getItem("metadata_model"),_t={sdsState:{datasets:[],available_datasets:[],all_tree:[],error_message:null,instance_selected:{dataset_id:null,graph_node:null,tree_node:null,source:""},group_selected:{dataset_id:null,graph_node:null,tree_node:null,source:""},layout:{},settings_panel_visible:!1,metadata_model:xt?JSON.parse(xt):{dataset:Object(u.a)(H.b.Dataset.properties),subject:Object(u.a)(H.b.Subject.properties),sample:Object(u.a)(H.b.Sample.properties),collection:Object(u.a)(H.b.Collection.properties),group:Object(u.a)(H.b.Group.properties),file:Object(u.a)(H.b.File.properties)}}};var kt={sdsState:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case c.c:if(void 0!==t.data){var a=window.datasets[t.data.dataset_id].splinter,i=a.nodes.get(t.data.graph_node),r=a.tree_map.get(t.data.tree_node);return Object(ie.a)(Object(ie.a)({},e),{},{group_selected:{dataset_id:t.data.dataset_id,graph_node:i||null,tree_node:r||null,source:t.data.source}})}break;case c.d:if(void 0!==t.data){var n=window.datasets[t.data.dataset_id].splinter,o=n.nodes.get(t.data.graph_node),l=n.tree_map.get(t.data.tree_node);return Object(ie.a)(Object(ie.a)({},e),{},{instance_selected:{dataset_id:t.data.dataset_id,graph_node:o||null,tree_node:l||null,source:t.data.source}})}break;case c.a:if(void 0===t.data||e.datasets.includes(t.data.dataset.id))return e;void 0===window.datasets&&(window.datasets={}),window.datasets[t.data.dataset.id]={graph:t.data.dataset.graph,tree:t.data.dataset.tree,splinter:t.data.dataset.splinter};var s=[].concat(Object(u.a)(e.datasets),[t.data.dataset.id]);return Object(ie.a)(Object(ie.a)({},e),{},{datasets:s,instance_selected:{dataset_id:t.data.dataset.id,graph_node:t.data.dataset.graph.nodes[0],tree_node:t.data.dataset.graph.nodes[0].tree_reference}});case c.e:return Object(ie.a)(Object(ie.a)({},e),{},{available_datasets:t.data.datasets});case c.b:if(void 0!==t.data){delete window.datasets[t.data.dataset_id];var p=e.datasets.indexOf(t.data.dataset_id),b=[].concat(Object(u.a)(e.datasets.slice(0,p)),Object(u.a)(e.datasets.slice(p+1)));return Object(ie.a)(Object(ie.a)({},e),{},{datasets:b})}break;case c.h:if(void 0!==t.data.error_message)return Object(ie.a)(Object(ie.a)({},e),{},{error_message:t.data.error_message});break;case c.f:var h=t.data,v=h.groupTitle,m=h.itemId,g=Object(ie.a)({},e.metadata_model),f=g[v].findIndex((function(e){return e.key===m}));if(-1!==f){var j=g[v][f];j.visible=!j.visible,g[v].sort((function(e,t){if(e.visible===t.visible)return g[v].indexOf(e)-g[v].indexOf(t)}))}return localStorage.setItem("metadata_model",JSON.stringify(g)),Object(ie.a)(Object(ie.a)({},e),{},{metadata_model:Object(ie.a)({},g)});case c.i:var y=t.payload,O=y.title,x=y.newItemsOrder,_=Object(ie.a)(Object(ie.a)({},e.metadata_model),{},Object(Ae.a)({},O,x));return localStorage.setItem("metadata_model",JSON.stringify(_)),Object(ie.a)(Object(ie.a)({},e),{},{metadata_model:_});case d.layoutActions.SET_LAYOUT:return Object(ie.a)(Object(ie.a)({},e),{},{layout:t.data.layout});case c.g:return Object(ie.a)(Object(ie.a)({},e),{},{settings_panel_visible:t.data.visible});default:return e}}},St=Object(s.createStore)(kt,_t,[function(e){return function(t){return function(a){switch(a.type){case d.layoutActions.REMOVE_WIDGET:var i=a.data.id;e.getState().sdsState.datasets.includes(i)&&e.dispatch(c.k(i));case d.layoutActions.SET_LAYOUT:case c.a:case c.b:case c.d:case c.c:case c.e:}t(a)}}}],{baseLayout:{global:{tabEnableClose:!0,tabSetHeaderHeight:18,tabSetTabStripHeight:18,enableEdgeDock:!1,sideBorders:8},layout:{type:"tabset",weight:100,id:"root",children:[{type:"row",weight:70,children:[{type:"tabset",weight:100,id:"leftPanel",enableDeleteWhenEmpty:!1,children:[]}]},{type:"row",weight:30,children:[{type:"tabset",weight:100,id:"rightPanel",enableDeleteWhenEmpty:!1,enableDrop:!1,enableDrag:!1,enableDivide:!1,enableMaximize:!1,enableTabStrip:!1,tabStripHeight:"0px",children:[]}]}]}},componentMap:Ot});Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/));o.a.render(Object(ne.jsx)(r.a.StrictMode,{children:Object(ne.jsx)(R.a,{store:St,children:Object(ne.jsx)(l.a,{})})}),document.getElementById("root")),"serviceWorker"in navigator&&navigator.serviceWorker.ready.then((function(e){e.unregister()}))},66:function(e,t,a){"use strict";a.d(t,"a",(function(){return o}));var i=a(28),r=a(25),n=a(520),o=function(){function e(){Object(i.a)(this,e)}return Object(r.a)(e,[{key:"get_local_file",value:function(e,t,a){if(void 0!==e){var i=new FileReader;i.onload=function(e){t(e.target.result)},i.onprogress=function(e){if(e.lengthComputable){var t=parseInt(e.loaded/e.total*100,10);a(t)}},i.readAsText(e)}}},{key:"get_remote_file",value:function(e,t,a){n.get(e,{crossDomain:!0,responseType:"stream",onDownloadProgress:function(e){}}).then((function(a){t(e,a.data)})).catch((function(e){console.log(e),a&&a(void 0)}))}}]),e}()},8:function(e,t,a){"use strict";a.d(t,"c",(function(){return i})),a.d(t,"a",(function(){return r})),a.d(t,"b",(function(){return n})),a.d(t,"d",(function(){return o}));var i="http://www.w3.org/1999/02/22-rdf-syntax-ns#type",r=[{key:"sparc:Subject",toTrim:"subject"}],n={Ontology:{image:"./images/graph/database.svg",key:"Ontology",properties:[{type:"rdfs",key:"label",property:"label",label:"To be filled"},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"To be filled"},{type:"owl",key:"versionInfo",property:"versionInfo",label:"Version"}]},Award:{image:"./images/graph/files/default_file.svg",key:"Award",properties:[{type:"rdfs",key:"label",property:"label",label:"To be filled"},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"To be filled"}]},Collection:{image:"./images/graph/folder.svg",key:"Collection",properties:[{type:"rdfs",key:"relativePath",property:"relativePath",label:"Name",visible:!0},{type:"rdfs",key:"name",property:"name",label:"Name",visible:!0},{type:"rdfs",key:"mimetype",property:"mimetype",label:"Mimetype",visible:!0},{type:"rdfs",key:"status",property:"status",label:"Status",visible:!0},{type:"rdfs",key:"timestamp_updated",property:"timestamp_updated",label:"Updated On",visible:!0},{type:"TEMP",key:"publishedURI",property:"publishedURI",label:"Find in SPARC Portal",visible:!0}]},Group:{image:"./images/graph/group.svg",key:"Group",properties:[{type:"TEMP",key:"name",property:"name",label:"Name",visible:!0},{type:"TEMP",key:"subjects",property:"subjects",label:"Number of Subjects",visible:!0}]},Dataset:{image:"./images/graph/dataset.svg",key:"Dataset",properties:[{type:"rdfs",key:"label",property:"label",label:"Title",visible:!0,link:{property:"hasUriPublished",asText:!0}},{type:"dc",key:"title",property:"title",label:"Label",visible:!0},{type:"dc",key:"description",property:"description",label:"Description",visible:!0},{type:"TEMP",key:"hasUriPublished",property:"hasUriPublished",label:"Published URI",visible:!0},{type:"TEMP",key:"contentsWereUpdatedAtTime",property:"latestUpdate",label:"Contents Updated On",visible:!0},{type:"isAbout",key:"",property:"isAbout",label:"About",visible:!0},{type:"TEMP",key:"protocolEmploysTechnique",property:"protocolEmploysTechnique",label:"Protocol Employs Technique",visible:!0},{type:"TEMP",key:"errorIndex",property:"errorIndex",label:"Error Index",visible:!0},{type:"TEMP",key:"hasDatasetTemplateSchemaVersion",property:"hasDatasetTemplateSchemaVersion",label:"Template Schema Version",visible:!0},{type:"TEMP",key:"hasExperimentalModality",property:"hasExperimentalModality",label:"Experimental Modality",visible:!0},{type:"TEMP",key:"hasExperimentalApproach",property:"hasExperimentalApproach",label:"Experimental Approach",visible:!0},{type:"TEMP",key:"hasDoi",property:"hasDoi",label:"DOI",visible:!0,link:{property:"hasUriPublished",asText:!0}},{type:"TEMP",key:"hasAdditionalFundingInformation",property:"hasAdditionalFundingInformation",label:"Additional Funding Information",visible:!0},{type:"TEMP",key:"statusOnPlatform",property:"statusOnPlatform",label:"Status On Platform",visible:!0},{type:"TEMP",key:"hasLicense",property:"hasLicense",label:"License",visible:!0},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"Pensieve Link",visible:!0},{type:"TEMP",key:"curationIndex",property:"curationIndex",label:"Curation Index",visible:!0},{type:"TEMP",key:"hasAwardNumber",property:"hasAwardNumber",label:"Award Number",visible:!0},{type:"TEMP",key:"hasExpectedNumberOfSamples",property:"hasExpectedNumberOfSamples",label:"Expected Number of Samples",visible:!0},{type:"TEMP",key:"hasExpectedNumberOfSubjects",property:"hasExpectedNumberOfSubjects",label:"Expected Number of Subjects",visible:!0},{type:"TEMP",key:"hasResponsiblePrincipalInvestigator",property:"hasResponsiblePrincipalInvestigator",label:"Responsible Principal Investigator",visible:!0},{type:"TEMP",key:"hasUriApi",property:"hasUriApi",label:"URI API",visible:!1},{type:"TEMP",key:"hasProtocol",property:"hasProtocol",label:"Protocol",visible:!0},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"Pennsieve Dataset Link",visible:!0},{type:"TEMP",key:"hasNumberOfContributors",property:"hasNumberOfContributors",label:"Number of Contributors",visible:!0},{type:"TEMP",key:"hasNumberOfDirectories",property:"hasNumberOfDirectories",label:"Number of Directories",visible:!0},{type:"TEMP",key:"hasNumberOfFiles",property:"hasNumberOfFiles",label:"Number of Files",visible:!0},{type:"TEMP",key:"hasNumberOfPerformances",property:"hasNumberOfPerformances",label:"Number of Performances",visible:!0},{type:"TEMP",key:"hasNumberOfSamples",property:"hasNumberOfSamples",label:"Number of Samples",visible:!0},{type:"TEMP",key:"hasNumberOfSubjects",property:"hasNumberOfSubjects",label:"Number of Subjects",visible:!0},{type:"TEMP",key:"hasPathErrorReport",property:"hasPathErrorReport",label:"Path Error Report",visible:!1},{type:"TEMP",key:"hasSizeInBytes",property:"hasSizeInBytes",label:"Size In Bytes",visible:!0},{type:"TEMP",key:"milestoneCompletionDate",property:"milestoneCompletionDate",label:"Milestone Completion Date",visible:!0},{type:"TEMP",key:"speciesCollectedFrom",property:"speciesCollectedFrom",label:"Species Collected From",visible:!0},{type:"TEMP",key:"submissionIndex",property:"submissionIndex",label:"Submission Index",visible:!0},{type:"TEMP",key:"unclassifiedIndex",property:"unclassifiedIndex",label:"Unclassified Index",visible:!0},{type:"TEMP",key:"wasCreatedAtTime",property:"wasCreatedAtTime",label:"Created At",visible:!0},{type:"TEMP",key:"wasUpdatedAtTime",property:"wasUpdatedAtTime",label:"Updated Last On",visible:!0}]},File:{image:"./images/graph/files/default_file.svg",key:"File",properties:[{type:"rdfs",key:"basename",property:"basename",label:"Basename",visible:!0},{type:"rdfs",key:"timestamp_updated",property:"timestamp_updated",label:"Updated On",visible:!0},{type:"TEMP",key:"mimetype",property:"mimetype",label:"Mimetype",visible:!0},{type:"TEMP",key:"size",property:"size",label:"Size",visible:!0},{type:"TEMP",key:"uri_human",property:"uri_human",label:"URI Link",visible:!1},{type:"TEMP",key:"uri_api",property:"uri_api",label:"URI API",visible:!1},{type:"TEMP",key:"status",property:"status",label:"Status",visible:!0},{type:"TEMP",key:"publishedURI",property:"publishedURI",label:"Find in SPARC Portal",visible:!0}]},Subject:{image:"./images/graph/folder.svg",key:"Subject",properties:[{type:"TEMP",key:"localId",property:"localId",label:"Label",visible:!0},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"URI Human",visible:!0},{type:"TEMP",key:"hasAgeCategory",property:"hasAgeCategory",label:"Age Category",visible:!0},{type:"TEMP",key:"hasAge",property:"hasAge",label:"Age",visible:!0},{type:"TEMP",key:"hasAgeMin",property:"hasAgeMin",label:"Age Min",visible:!0},{type:"TEMP",key:"hasAgeMax",property:"hasAgeMax",label:"Age Max",visible:!0},{type:"sparc",key:"hasBiologicalSex",property:"hasBiologicalSex",label:"Biological Sex",visible:!0,isGroup:!0},{type:"sparc",key:"specimenHasIdentifier",property:"specimenHasIdentifier",label:"Specimen has Identifier",visible:!0,isGroup:!1},{type:"sparc",key:"animalSubjectIsOfSpecies",property:"animalSubjectIsOfSpecies",label:"Subject Species",visible:!0,isGroup:!0},{type:"sparc",key:"animalSubjectIsOfStrain",property:"animalSubjectIsOfStrain",label:"Subject Strain",visible:!0,isGroup:!0},{type:"TEMP",key:"hasAssignedGroup",property:"hasAssignedGroup",label:"Assigned Group",visible:!0},{type:"TEMP",key:"hasGenotype",property:"hasGenotype",label:"Genotype",visible:!0},{type:"TEMP",key:"experimental_file",property:"experimental_file",label:"Experimental File",visible:!0},{type:"TEMP",key:"reference_atlas",property:"reference_atlas",label:"Reference Atlas",visible:!0},{type:"TEMP",key:"hasFolderAboutIt",property:"hasFolderAboutIt",label:"Folder About It",visible:!0},{type:"TEMP",key:"hasDerivedInformationAsParticipant",property:"hasDerivedInformationAsParticipant",label:"Derived Information as Participant",visible:!1},{type:"TEMP",key:"participantInPerformanceOf",property:"participantInPerformanceOf",label:"Participant In Performance Of",visible:!0}],additional_properties:[{label:"Age unit",property:"ageUnit",path:["TEMP:hasAge","TEMP:hasUnit","@id"],trimType:"unit:",type:"string"},{label:"Age value",property:"ageValue",path:["TEMP:hasAge","rdf:value"],innerPath:"@value",trimType:"",type:"digit"},{label:"Age base unit",property:"ageBaseUnit",path:["TEMP:hasAge","TEMP:asBaseUnits","TEMP:hasUnit","@id"],trimType:"unit:",type:"string"},{label:"Age base value",property:"ageBaseValue",path:["TEMP:hasAge","TEMP:asBaseUnits","rdf:value"],innerPath:"@value",trimType:"",type:"digit"},{label:"Weight unit",property:"weightUnit",path:["sparc:animalSubjectHasWeight","TEMP:hasUnit","@id"],trimType:"unit:",type:"string"},{label:"Weight value",property:"weightValue",path:["sparc:animalSubjectHasWeight","rdf:value","@value"],trimType:"",type:"digit"}]},Performance:{image:"./images/graph/folder.svg",key:"Performance",properties:[{type:"TEMP",key:"localId",property:"localId",label:"Label",visible:!0},{type:"TEMP",key:"participantInPerformanceOf",property:"participantInPerformanceOf",label:"Participant In Performance Of",visible:!0}],additional_properties:[{label:"Age unit",property:"ageUnit",path:["TEMP:hasAge","TEMP:hasUnit","@id"],trimType:"unit:",type:"string"},{label:"Age value",property:"ageValue",path:["TEMP:hasAge","rdf:value"],innerPath:"@value",trimType:"",type:"digit"},{label:"Age base unit",property:"ageBaseUnit",path:["TEMP:hasAge","TEMP:asBaseUnits","TEMP:hasUnit","@id"],trimType:"unit:",type:"string"},{label:"Age base value",property:"ageBaseValue",path:["TEMP:hasAge","TEMP:asBaseUnits","rdf:value"],innerPath:"@value",trimType:"",type:"digit"},{label:"Weight unit",property:"weightUnit",path:["sparc:animalSubjectHasWeight","TEMP:hasUnit","@id"],trimType:"unit:",type:"string"},{label:"Weight value",property:"weightValue",path:["sparc:animalSubjectHasWeight","rdf:value","@value"],trimType:"",type:"digit"}]},Sample:{image:"./images/graph/folder.svg",key:"Sample",properties:[{type:"rdfs",key:"label",property:"label",label:"Label",visible:!0},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"Human URI",visible:!0},{type:"TEMP",key:"hasFolderAboutIt",property:"hasFolderAboutIt",label:"Find in SPARC Portal",visible:!0},{type:"TEMP",key:"wasDerivedFromSubject",property:"derivedFrom",label:"Derived from Subject",visible:!1},{type:"TEMP",key:"localId",property:"localId",label:"Local ID",visible:!0},{type:"TEMP",key:"hasAssignedGroup",property:"hasAssignedGroup",label:"Assigned Group",visible:!0},{type:"TEMP",key:"hasDerivedInformationAsParticipant",property:"hasDerivedInformationAsParticipant",label:"Derived Information as Participant",visible:!1},{type:"TEMP",key:"hasDigitalArtifactThatIsAboutIt",property:"hasDigitalArtifactThatIsAboutIt",label:"Digital Artifact",visible:!0},{type:"TEMPRAW",key:"wasExtractedFromAnatomicalRegion",property:"wasExtractedFromAnatomicalRegion",label:"Extracted From Anatomical Region",visible:!0},{type:"TEMPRAW",key:"sample_anatomical_location",property:"sample_anatomical_location",label:"Sample Anatomical Location",visible:!0},{type:"TEMPRAW",key:"sample_type",property:"sample_type",label:"Sample Type",visible:!0},{type:"TEMP",key:"participantInPerformanceOf",property:"participantInPerformanceOf",label:"Participant in Performance Of",visible:!0}]},Person:{image:"./images/graph/user.svg",key:"Person",properties:[{type:"rdfs",key:"label",property:"label",label:"Name",visible:!0},{type:"sparc",key:"lastName",property:"lastName",label:"Last Name",visible:!1},{type:"sparc",key:"firstName",property:"firstName",label:"First Name",visible:!1},{type:"TEMP",key:"middleName",property:"middleName",label:"Middle Name",visible:!1},{type:"sparc",key:"hasORCIDId",property:"hasORCIDId",label:"ORCID Id",visible:!1},{type:"TEMP",key:"hasAffiliation",property:"hasAffiliation",label:"Affiliation",visible:!0},{type:"TEMP",key:"hasDataRemoteUserId",property:"hasDataRemoteUserId",label:"Data Remote User ID",visible:!0},{type:"TEMP",key:"contributorTo",property:"contributorTo",label:"Contributor To",visible:!0}]},Protocol:{image:"./images/graph/files/default_file.svg",key:"Protocol",properties:[{type:"rdfs",key:"label",property:"label",label:"Label",visible:!0},{type:"TEMP",key:"protocolHasNumberOfSteps",property:"protocolHasNumberOfSteps",label:"Number of Steps",visible:!0},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"Human URI",visible:!0},{type:"TEMP",key:"hasDoi",property:"hasDoi",label:"DOI",visible:!0,link:{property:"hasUriPublished"}}]},RRID:{image:"./images/graph/files/default_file.svg",key:"RRID",properties:[{type:"rdfs",key:"label",property:"label",label:"To be filled"},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"To be filled"}]},NCBITaxon:{image:"./images/graph/files/default_file.svg",key:"NCBITaxon",properties:[{type:"rdfs",key:"label",property:"label",label:"To be filled"},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"To be filled"}]},PATO:{image:"./images/graph/files/default_file.svg",key:"PATO",properties:[{type:"rdfs",key:"label",property:"label",label:"To be filled"},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"To be filled"}]},UBERON:{image:"./images/graph/files/default_file.svg",key:"UBERON",properties:[{type:"rdfs",key:"label",property:"label",label:"To be filled"},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"To be filled"}]},NamedIndividual:{image:"./images/graph/files/default_file.svg",key:"UBERON",properties:[{type:"rdfs",key:"label",property:"label",label:"To be filled"},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"To be filled"}]},Unknown:{image:"./images/graph/files/default_file.svg",key:"Unknown",properties:[]}},o={NamedIndividual:{ORCID:{type:"Person"},awards:{type:"Award"},collection:{type:"Collection"},group:{type:"Group"},contributor:{type:"Person"},dataset:{type:"Dataset"},sample:{type:"Sample"},subject:{type:"Subject"},RRID:{type:"RRID"},Protocol:{type:"Protocol"}},Class:{NCBITaxon:{type:"NCBITaxon"},PATO:{type:"PATO"},UBERON:{type:"UBERON"},Protocol:{type:"Protocol"}},sparc:{Protocol:{type:"Protocol",length:999}},ontology:{type:"Ontology",length:999},unknown:{type:"Unknown",length:0}}}},[[567,1,2]]]); -//# sourceMappingURL=main.410c588b.chunk.js.map \ No newline at end of file diff --git a/static/js/main.a58cdcf3.chunk.js b/static/js/main.a58cdcf3.chunk.js new file mode 100644 index 0000000..b1fff82 --- /dev/null +++ b/static/js/main.a58cdcf3.chunk.js @@ -0,0 +1,2 @@ +(this["webpackJsonpsds-viewer"]=this["webpackJsonpsds-viewer"]||[]).push([[0],{12:function(e,t,a){"use strict";a.d(t,"e",(function(){return i})),a.d(t,"a",(function(){return r})),a.d(t,"c",(function(){return n})),a.d(t,"j",(function(){return o})),a.d(t,"l",(function(){return l})),a.d(t,"k",(function(){return s})),a.d(t,"i",(function(){return d})),a.d(t,"d",(function(){return c})),a.d(t,"h",(function(){return u})),a.d(t,"g",(function(){return p})),a.d(t,"f",(function(){return b})),a.d(t,"b",(function(){return h}));var i="Import a new dataset",r="Import Dataset",n={acceptedFileExtensions:["json","ttl"],maxFileSize:5242880,maxFiles:6},o="_details",l="all_subjects",s="all_protocols",d="all_contributors",c="GRAPH",u="TREE",p=2,b=2,h=2},121:function(e,t,a){"use strict";var i=a(17),r=a(11),n=a(10),o=a(27),l=a(21),s=a(15),d=a(40),c=a(28),u=a(25),p=a(193),b=a(8),h=a(31),v=a(12),m=(a(161),a(375)),f=a(492).parse,g=function(){function e(t,a){Object(c.a)(this,e),this.filterNode=function(e){return e.basename.includes(".tmp")},this.factory=new p.a,this.jsonFile=t,this.turtleFile=a,this.types={},this.jsonData={},this.levelsMap={},this.groups={},this.turtleData=[],this.tree=void 0,this.nodes=void 0,this.edges=void 0,this.root_id=void 0,this.tree_map=void 0,this.proxies_map=void 0,this.forced_edges=void 0,this.forced_nodes=void 0,this.tree_parents_map=void 0,this.dataset_id=this.processDatasetId(),this.store=new m.Store,this.rdf_to_json=void 0,this.rdf_to_json_map=void 0}return Object(u.a)(e,[{key:"initialiseNodesEdges",value:function(){this.edges=[],this.nodes=new Map,this.tree_map=new Map,this.proxies_map=new Map,this.tree_parents_map=new Map,this.tree_parents_map2=new Map,this.rdf_to_json_map=new Map}},{key:"extractJson",value:function(){return"object"===typeof this.jsonFile&&null!==this.jsonFile?this.jsonFile:JSON.parse(this.jsonFile)}},{key:"extractTurtle",value:function(){var e=this;return new Promise((function(t,a){(new m.Parser).parse(e.turtleFile,(function(a,i,r){i?(e.store.addQuad(i),e.turtleData.push(i)):t(e.turtleData)}),(function(t,a){e.types[String(t)]={type:t,iri:a}}))}))}},{key:"convertRDFToJson",value:function(){var e=this;this.rdf_to_json=f(this.turtleFile),this.rdf_to_json["@graph"].forEach((function(t){var a="";if(Array.isArray(t["@type"])?b.a.some((function(e){return!!t["@type"].includes(e.key)&&(a=e.toTrim,!0)})):b.a.some((function(e){return t["@type"]===e.key&&(a=e.toTrim,!0)}))){var i=e.types[a].iri.id+t["@id"].replace(a+":","");e.rdf_to_json_map.set(i,t)}}))}},{key:"getJson",value:function(){return this.jsonData}},{key:"getTurtle",value:function(){return this.turtleData}},{key:"updateLevels",value:function(e,t){var a=this;null===e||void 0===e||e.map((function(e){(null===e||void 0===e?void 0:e.level)>t&&(a.updateLevels(null===e||void 0===e?void 0:e.neighbors,e.level),e.level=e.level+1)}))}},{key:"getGraph",value:function(){var e=Object(d.a)(Object(l.a)().mark((function e(){var t,a,i,r,n,o,d=this;return Object(l.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0!==this.nodes&&void 0!==this.edges){e.next=3;break}return e.next=3,this.processDataset();case 3:return i=(i=Object(s.a)(new Set(null===(t=this.forced_nodes)||void 0===t?void 0:t.filter((function(e){return e.type!==b.b.UBERON.key&&e.type!==b.b.Award.key&&!(e.type===b.b.Collection.key&&0===e.children_counter)}))))).filter((function(e){return e.type!==b.b.Sample.key||(e.attributes.hasFolderAboutIt,!0)})),r=[],n=this,null===(a=i)||void 0===a||a.forEach((function(e){e.type===b.b.Subject.key&&Object.keys(n.groups).forEach((function(t){e.attributes&&(null!==e&&void 0!==e&&e.attributes[t]&&Object.keys(n.groups[t]).forEach((function(a){if((null===e||void 0===e?void 0:e.attributes[t][0])===a){var r,n=null===(r=i)||void 0===r?void 0:r.filter((function(e){return e.name==a}));null===n||void 0===n||n.forEach((function(t){var a;null!==e&&void 0!==e&&null!==(a=e.id)&&void 0!==a&&a.includes(t.id)&&(t.subjects+=1)}))}})))}))})),this.forced_edges.forEach((function(e){if(!r.find((function(t){return t.source===e.source&&t.target===e.target}))){var t=d.nodes.get(e.source),a=d.nodes.get(e.target),i=(null===t||void 0===t?void 0:t.type)!==b.b.Award.key&&(null===a||void 0===a?void 0:a.type)!==b.b.Award.key,n=(null===t||void 0===t?void 0:t.type)===b.b.Collection.key&&t.children_counter<1||(null===a||void 0===a?void 0:a.type)===b.b.Collection.key&&a.children_counter<1,o=(null===t||void 0===t?void 0:t.type)===b.b.Sample.key&&t.children_counter<1||(null===a||void 0===a?void 0:a.type)===b.b.Sample.key&&a.children_counter<1,l=(null===t||void 0===t?void 0:t.level)===(null===a||void 0===a?void 0:a.level);t&&a&&i&&!n&&!o&&!l&&(!t.neighbors&&(t.neighbors=[]),!a.neighbors&&(a.neighbors=[]),t.neighbors.find((function(e){return e.id===a.id}))||t.neighbors.push(a),a.neighbors.find((function(e){return e.id===t.id}))||a.neighbors.push(t),!t.links&&(t.links=[]),!a.links&&(a.links=[]),t.links.push(e),a.links.push(e),e.source.id||(e.source=d.nodes.get(e.source)),e.target.id||(e.target=d.nodes.get(e.target)),r.push(e))}})),o=r.filter((function(e){var t,a,i,r,n,o;return!((null===e||void 0===e||null===(t=e.target)||void 0===t?void 0:t.type)===b.b.Collection.key&&(null===e||void 0===e||null===(a=e.target)||void 0===a||null===(i=a.neighbors)||void 0===i?void 0:i.length)<=1||(null===e||void 0===e||null===(r=e.source)||void 0===r?void 0:r.type)===b.b.Collection.key&&(null===e||void 0===e||null===(n=e.source)||void 0===n||null===(o=n.neighbors)||void 0===o?void 0:o.length)<=1)})),e.abrupt("return",{nodes:i,links:o,levelsMap:this.levelsMap});case 11:case"end":return e.stop()}}),e,this)})));return function(){return e.apply(this,arguments)}}()},{key:"getTree",value:function(){var e=Object(d.a)(Object(l.a)().mark((function e(){return Object(l.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0!==this.tree){e.next=3;break}return e.next=3,this.processDataset();case 3:return e.abrupt("return",this.tree);case 4:case"end":return e.stop()}}),e,this)})));return function(){return e.apply(this,arguments)}}()},{key:"getDatasetId",value:function(){return this.dataset_id}},{key:"processTurtle",value:function(){var e=Object(d.a)(Object(l.a)().mark((function e(){return Object(l.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.extractTurtle();case 2:case"end":return e.stop()}}),e,this)})));return function(){return e.apply(this,arguments)}}()},{key:"processDatasetId",value:function(){return this.processJSON(),this.jsonData.data[0].dataset_id.replace("dataset:","")}},{key:"processJSON",value:function(){this.jsonData=this.extractJson()}},{key:"processDataset",value:function(){var e=Object(d.a)(Object(l.a)().mark((function e(){return Object(l.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.initialiseNodesEdges(),e.next=3,this.processTurtle();case 3:this.convertRDFToJson(),this.processJSON(),this.create_graph(),this.create_tree(),this.mergeData(),this.generateData();case 9:case"end":return e.stop()}}),e,this)})));return function(){return e.apply(this,arguments)}}()},{key:"get_type",value:function(e){var t,a={type:b.d.unknown.type,length:0},i=Object(o.a)(null===e||void 0===e?void 0:e.types);try{for(i.s();!(t=i.n()).done;){var r=t.value;if(r.type===this.types.owl.iri.id+"NamedIndividual")for(var n in this.types)e.id.includes(this.types[n].iri.id)&&this.types[n].iri.id.length>a.length&&void 0!==b.d.NamedIndividual[String(this.types[n].type)]&&(a.type=b.d.NamedIndividual[String(this.types[n].type)].type,a.length=this.types[n].iri.id.length);if(r.type===this.types.owl.iri.id+"Class")for(var l in this.types)e.id.includes(this.types[l].iri.id)&&this.types[l].iri.id.length>a.length&&void 0!==b.d.Class[String(this.types[l].type)]&&(a.type=b.d.Class[String(this.types[l].type)].type,a.length=this.types[l].iri.id.length);else if(r.type===this.types.owl.iri.id+"Ontology")a.type=b.d.ontology.type,a.length=b.d.ontology.length;else if(r.type.includes(this.types.sparc.iri.id)&&void 0!==b.d.sparc[r.type.split(this.types.sparc.iri.id).pop()]){var s=r.type.split(this.types.sparc.iri.id).pop();a.type=b.d.sparc[s].type,a.length=b.d.sparc[s].length}}}catch(d){i.e(d)}finally{i.f()}return a.type}},{key:"build_node",value:function(e){var t=this.nodes.get(e.id),a=this.rdf_to_json_map.get(e.id);t?(console.error("Issue with the build node, this node is already present"),console.error(e)):this.nodes.set(e.id,{id:e.id,attributes:{publishedURI:""},types:[],name:e.value,proxies:[],properties:[],tree_reference:null,children_counter:0,collapsed:!1,childLinks:[],additional_properties:a})}},{key:"update_node",value:function(e,t){var a=this;if(!m.Util.isBlankNode(e.subject)){var i=this.nodes.get(e.subject.id);if(i)e.predicate.id===b.c?(i.types=[].concat(Object(s.a)(i.types),[{predicate:e.predicate.id,type:e.object.datatype?e.object.datatype.id:e.object.id,value:e.object.value}]),this.nodes.set(e.subject.id,i)):(i.properties=[].concat(Object(s.a)(i.properties),[{predicate:e.predicate.id,type:e.object.datatype?e.object.datatype.id:e.object.id,value:e.object.value}]),t&&(i.proxies=[].concat(Object(s.a)(i.proxies),[e.object.id]),this.proxies_map.set(e.object.id,e.subject.id)),this.nodes.set(e.subject.id,i));else{var r=!0;this.nodes.forEach((function(t,i){-1!==t.proxies.indexOf(String(e.subject.id))&&(t.properties=[].concat(Object(s.a)(t.properties),[{predicate:e.predicate.id,type:e.object.datatype,value:e.object.value}]),t.proxies=[].concat(Object(s.a)(t.proxies),[e.object.id]),a.proxies_map.set(e.object.id,i),a.nodes.set(i,t),r=!1)})),r&&(console.error("Houston, we have a problem!"),console.error(e))}}}},{key:"link_nodes",value:function(e){var t=this.nodes.get(e.subject.id),a=this.nodes.get(e.object.id);t&&a&&e.subject.id!==e.object.id?(this.edges.push({source:e.subject.id,target:e.object.id}),this.update_node(e,!1)):this.update_node(e,!0)}},{key:"replaceNode",value:function(e){var t={value:e};if(null!==e&&void 0!==e&&e.includes(b.b.NCBITaxon.key)||null!==e&&void 0!==e&&e.includes(b.b.PATO.key)||null!==e&&void 0!==e&&e.includes(b.b.UBERON.key)||null!==e&&void 0!==e&&e.includes(b.b.RRID.key)){var a=this.nodes.get(e);a&&(t={value:null===a||void 0===a?void 0:a.attributes.label[0],link:null===a||void 0===a?void 0:a.id})}return t}},{key:"cast_nodes",value:function(){var e,t,a,i,r,n=this,o=void 0,l=void 0;this.nodes.forEach((function(e,t){e.type=n.get_type(e);var a=n.factory.createNode(e,n.types);a.type!==b.b.Unknown.key?n.nodes.set(t,a):(n.nodes.delete(t),n.edges=n.edges.filter((function(e){return e.source!==t&&e.target!==t}))),e.type===b.d.NamedIndividual.dataset.type&&(o=e),e.type===b.d.ontology.type&&(l=e)})),this.root_id=o.id,o.properties=o.properties.concat(l.properties),o.proxies=o.proxies.concat(l.proxies);var s=[];o.level=1;var d=this;null===(e=o)||void 0===e||null===(t=e.attributes)||void 0===t||null===(a=t.isAbout)||void 0===a||a.forEach((function(e){s.push(d.replaceNode(e))})),o.attributes.isAbout=s;var c=[];null===(i=o.attributes.protocolEmploysTechnique)||void 0===i||i.forEach((function(e){if(e.includes(b.b.NCBITaxon.key)||e.includes(b.b.PATO.key)||e.includes(b.b.UBERON.key)){var t=n.nodes.get(e);t?c.push({value:null===t||void 0===t?void 0:t.attributes.label[0],link:null===t||void 0===t?void 0:t.id}):c.push({value:e})}else c.push({value:e})})),o.attributes.protocolEmploysTechnique=c,this.nodes.set(o.id,o),this.nodes.delete(l.id);var u=null===(r=this.edges)||void 0===r?void 0:r.map((function(e){return e.source===l.id&&(e.source=o.id),e.target===l.id&&(e.target=o.id),e}));return this.edges=u,o}},{key:"organise_subjects",value:function(e,t,a){var i=this,r=this.nodes.get(v.l);Object.keys(h.groups.order).forEach((function(t){var o,l=h.groups.order[t];if(null!==(o=e.attributes[t])&&void 0!==o&&o[0]){var s,d,c=i.nodes.get(null===(s=e.attributes[t])||void 0===s?void 0:s[0]);void 0!==c&&(e.attributes[t][0]=c.attributes.label[0]);var u=r.id+"_"+(null===(d=e.attributes[t])||void 0===d?void 0:d[0].replace(/\s/g,""));if(void 0===i.nodes.get(u)){var p,v={id:u,name:null===(p=e.attributes[t])||void 0===p?void 0:p[0],type:b.d.NamedIndividual.group.type,properties:t,parent:r,proxies:[],level:r.level+1,tree_reference:null,children_counter:0,collapsed:!1,childLinks:[],samples:0,subjects:0,publishedURI:"",dataset_id:i.dataset_id},m=i.factory.createNode(v),f=new Image;f.src=l.icon,m.img=f,i.nodes.set(u,m),a.push({source:r.id,target:m.id}),i.groups[t]?i.groups[t][m.name]=m:i.groups[t]=Object(n.a)({},m.name,m),r=v}else r=i.nodes.get(u)}else console.error("The group node already exists!",l.tag)})),t.source=r.id,e.level=r.level+1,e.attributes.publishedURI="",e.id=r.id+e.name,e.parent=r,e.childLinks=[],e.collapsed=e.type===b.d.NamedIndividual.subject.type,this.nodes.set(e.id,e)}},{key:"organise_nodes",value:function(e){var t=this,a=e.id,i={id:v.l,name:"Subjects",type:b.b.Group.key,properties:[],parent:e,proxies:[],level:v.g,tree_reference:null,children_counter:0,collapsed:!1,childLinks:[]};if(void 0===this.nodes.get(v.l)){this.nodes.set(v.l,this.factory.createNode(i));var r=new Image;r.src="./images/graph/group.svg",i.img=r,this.edges.push({source:a,target:i.id})}else console.error("The subjects node already exists!");var n={id:v.k,name:"Protocols",type:b.d.sparc.Protocol.type,properties:[],parent:e,proxies:[],level:v.f,tree_reference:null,children_counter:0,collapsed:!1,childLinks:[]};void 0===this.nodes.get(v.k)?(this.nodes.set(v.k,this.factory.createNode(n)),this.edges.push({source:a,target:n.id})):console.error("The subjects node already exists!");var o={id:v.i,name:"Contributors",type:b.d.NamedIndividual.contributor.type,properties:[],parent:e,proxies:[],level:v.b,tree_reference:null,children_counter:0,collapsed:!1,childLinks:[]};void 0===this.nodes.get(v.i)?(this.nodes.set(v.i,this.factory.createNode(o)),this.edges.push({source:a,target:o.id})):console.error("The subjects node already exists!");var l=[];this.forced_edges=this.edges.filter((function(e){return e.target!==e.source&&t.nodes.get(e.source).level!==t.nodes.get(e.target).level})).map((function(e){if(e.target===a){var r=e.target;e.target=e.source,e.source=r}var s=t.nodes.get(e.target);e.source===a&&e.target!==v.l&&s.type===b.b.Subject.key?t.organise_subjects(s,e,l):e.source===a&&e.target!==v.i&&s.type===b.b.Person.key?(e.source=v.i,s.level=o.level+1,s.parent=o,t.nodes.set(s.id,s)):e.source===a&&e.target!==v.k&&s.type===b.b.Protocol.key?(e.source=v.k,s.level=n.level+1,s.parent=n,t.nodes.set(s.id,s)):e.source===a&&s.type===b.b.Sample.key&&(e.source=s.attributes.derivedFrom[0],s.level=i.level+2,s.parent=t.nodes.get(s.attributes.derivedFrom[0]),t.nodes.set(s.id,s));var d=t.nodes.get(e.source);return null!==d&&void 0!==d&&d.childLinks&&(d.childLinks=[],d.children_counter++,t.nodes.set(d.id,d)),e})).filter((function(e){var i=t.nodes.get(e.target);return e.source!==a||i.type===b.b.Award.key||e.target===v.i||e.target===v.l||e.target===v.k})),this.forced_edges=this.forced_edges.concat(l)}},{key:"fix_links",value:function(){var e=this,t=[];this.forced_nodes.forEach((function(a,i,r){var n,o,l,d,c,u,p,h,v,m;if(a.type===b.b.Dataset.key&&void 0!==(null===(l=a.attributes)||void 0===l?void 0:l.hasProtocol)){var f,g=e.nodes.get(a.attributes.hasProtocol[0]);if(void 0!==g)a.attributes.hasProtocol[0]=null===(f=g.attributes.hasDoi)||void 0===f?void 0:f[0]}if(a.type===b.b.Sample.key){var j,y;if(void 0!==a.attributes.derivedFrom){var O=e.nodes.get(a.attributes.derivedFrom[0]);void 0!==O&&(O.children_counter++,r[i].level=O.level+1,e.forced_edges.push({source:a.attributes.derivedFrom[0],target:a.id}))}if(void 0!==(null===(j=a.attributes)||void 0===j?void 0:j.hasFolderAboutIt))a.attributes.hasFolderAboutIt=[Array.from(e.nodes)[0][1].attributes.hasUriPublished[0]+"?datasetDetailsTab=files&path=files/"+(null===(y=a.tree_reference)||void 0===y?void 0:y.dataset_relative_path)]}if(a.type===b.b.Subject.key){var x,_,k,S,T,w,C,I;if(void 0!==(null===(x=a.attributes)||void 0===x?void 0:x.animalSubjectIsOfStrain)){var E=e.nodes.get(a.attributes.animalSubjectIsOfStrain[0]);void 0!==E&&(a.attributes.animalSubjectIsOfStrain[0]=E.attributes.label[0])}if(void 0!==(null===(_=a.attributes)||void 0===_?void 0:_.animalSubjectIsOfSpecies)){var N=e.nodes.get(a.attributes.animalSubjectIsOfSpecies[0]);void 0!==N&&(a.attributes.animalSubjectIsOfSpecies[0]=N.attributes.label[0])}if(void 0!==(null===(k=a.attributes)||void 0===k?void 0:k.hasBiologicalSex)){var P=e.nodes.get(a.attributes.hasBiologicalSex[0]);void 0!==P&&(a.attributes.hasBiologicalSex[0]=P.attributes.label[0])}if(void 0!==(null===(S=a.attributes)||void 0===S?void 0:S.hasDerivedInformationAsParticipant)&&void 0!==(null===(T=a.attributes)||void 0===T?void 0:T.participantInPerformanceOf)){var M=e.nodes.get(a.attributes.participantInPerformanceOf[0]);void 0!==M&&(a.attributes.hasDerivedInformationAsParticipant[0]=M.attributes.hasUriHuman[0])}if(void 0!==(null===(w=a.attributes)||void 0===w?void 0:w.participantInPerformanceOf)){var D=e.nodes.get(a.attributes.participantInPerformanceOf[0]);void 0!==D&&(a.attributes.participantInPerformanceOf[0]=D.attributes.hasUriHuman[0])}if(void 0!==(null===(C=a.attributes)||void 0===C?void 0:C.hasFolderAboutIt))a.attributes.hasFolderAboutIt=[Array.from(e.nodes)[0][1].attributes.hasUriPublished[0]+"?datasetDetailsTab=files&path=files/"+(null===(I=a.tree_reference)||void 0===I?void 0:I.dataset_relative_path)]}a.type===b.b.File.key&&(void 0!==(null===a||void 0===a||null===(d=a.tree_reference)||void 0===d?void 0:d.uri_human)&&(a.tree_reference.uri_human=Array.from(e.nodes)[0][1].attributes.hasUriHuman[0]),void 0!==(null===(c=a.attributes)||void 0===c?void 0:c.relativePath)&&(a.attributes.dataset_id=e.dataset_id,a.attributes.publishedURI=Array.from(e.nodes)[0][1].attributes.hasUriPublished[0]+"?datasetDetailsTab=files&path=files/"+(null===(u=a.attributes)||void 0===u?void 0:u.relativePath.substr(0,null===(p=a.attributes)||void 0===p?void 0:p.relativePath.lastIndexOf("/")))));a.type===b.b.Collection.key&&(void 0!==(null===a||void 0===a||null===(h=a.tree_reference)||void 0===h?void 0:h.uri_human)&&(a.tree_reference.uri_human=Array.from(e.nodes)[0][1].attributes.hasUriHuman[0]),void 0!==(null===(v=a.attributes)||void 0===v?void 0:v.relativePath)&&(a.attributes.publishedURI=Array.from(e.nodes)[0][1].attributes.hasUriPublished[0]+"?datasetDetailsTab=files&path=files/"+(null===(m=a.attributes)||void 0===m?void 0:m.relativePath)));a.type!==b.b.RRID.key&&a.type!==(null===(n=b.b.NCBITaxon)||void 0===n?void 0:n.key)&&a.type!==(null===(o=b.b.PATO)||void 0===o?void 0:o.key)||t.unshift(i),void 0!==a.level&&(e.levelsMap[a.level]?e.levelsMap[a.level]=[].concat(Object(s.a)(e.levelsMap[a.level]),[a]):e.levelsMap[a.level]=[a])})),t.forEach((function(t){e.forced_nodes.splice(t,1)}))}},{key:"identify_childless_parents",value:function(){this.forced_nodes.forEach((function(e,t,a){e.type===b.b.Sample.key&&0===e.children_counter&&(e.img.src="./images/graph/question_mark.svg")}))}},{key:"create_graph",value:function(){var e,t=Object(o.a)(this.store.getSubjects());try{for(t.s();!(e=t.n()).done;){var a=e.value;m.Util.isBlankNode(a)||this.build_node(a)}}catch(c){t.e(c)}finally{t.f()}var i,n=Object(o.a)(this.turtleData.entries());try{for(n.s();!(i=n.n()).done;){var l=Object(r.a)(i.value,2),s=(l[0],l[1]);m.Util.isLiteral(s.object)||s.predicate.id===b.c?this.update_node(s,!1):this.link_nodes(s)}}catch(c){n.e(c)}finally{n.f()}var d=this.cast_nodes();this.organise_nodes(d)}},{key:"create_tree",value:function(){var e,t=Object(o.a)(this.jsonData.data);try{for(t.s();!(e=t.n()).done;){var a=e.value;if(this.tree_map.set(a.uri_api,a),a.parent_id!==a.remote_id){var i=this.tree_parents_map.get(a.parent_id);i?(this.tree_parents_map.set(a.parent_id,[].concat(Object(s.a)(i),[a])),this.tree_parents_map2.set(a.parent_id,[].concat(Object(s.a)(i),[a]))):(this.tree_parents_map.set(a.parent_id,[a]),this.tree_parents_map2.set(a.parent_id,[a]))}}}catch(r){t.e(r)}finally{t.f()}}},{key:"mergeData",value:function(){var e=this;this.nodes.forEach((function(t,a){void 0!==t.attributes&&void 0!==t.attributes.hasFolderAboutIt&&t.attributes.hasFolderAboutIt.forEach((function(a){var i,r,n,o,l,d=e.tree_map.get(a),c=d.dataset_relative_path.split("/"),u=d.basename;t.type===b.b.Subject.key&&(null===(i=t.attributes)||void 0===i||null===(r=i.localId)||void 0===r?void 0:r[0])==c[c.length-1]&&(u=c[0]),t.type===b.b.Sample.key&&(null===(n=t.attributes)||void 0===n||null===(o=n.localId)||void 0===o?void 0:o[0])==c[c.length-1]&&(u=c[0]+"/"+u);var p=t,h=e.buildFolder(d,u,p);t.type===b.b.Sample.key&&(h.remote_id=d.basename+"_"+u,h.uri_api=h.remote_id);var v=null===(l=e.tree_parents_map2.get(h.parent_id))||void 0===l?void 0:l.map((function(e){return e.parent_id=h.uri_api,e.collapsed=!0,e}));if(e.filterNode(h)||void 0!==e.nodes.get(h.remote_id)||e.linkToNode(h,p),void 0===e.tree_parents_map2.get(h.uri_api))e.tree_parents_map2.set(h.uri_api,v),e.tree_parents_map2.delete(h.parent_id),null===v||void 0===v||v.forEach((function(t){e.filterNode(t)||e.linkToNode(t,e.nodes.get(h.remote_id))}));else{var m=void 0===v?Object(s.a)(e.tree_parents_map2.get(h.uri_api)):[].concat(Object(s.a)(e.tree_parents_map2.get(h.uri_api)),Object(s.a)(v));e.tree_parents_map2.set(h.uri_api,m),e.tree_parents_map2.delete(h.parent_id),null===m||void 0===m||m.forEach((function(t){e.filterNode(t)||e.linkToNode(t,e.nodes.get(h.remote_id))}))}}))}))}},{key:"buildFolder",value:function(e,t){var a=Object(i.a)({},e);return a.parent_id=a.remote_id,a.uri_api=a.remote_id,a.basename=t,a}},{key:"linkToNode",value:function(e,t){var a,i=this,r=null===t||void 0===t?void 0:t.level;(null===t||void 0===t?void 0:t.type)===b.b.Sample.key&&(void 0!==t.attributes.derivedFrom&&(r=(null===(a=this.nodes.get(t.attributes.derivedFrom[0]))||void 0===a?void 0:a.level)+1));var n=this.buildNodeFromJson(e,r);if(t&&(t.children_counter++,n.parent=t,n.id=t.id+n.id,this.forced_edges.push({source:null===t||void 0===t?void 0:t.id,target:null===n||void 0===n?void 0:n.id}),n.childLinks=[],!this.nodes.get(n.id))){this.nodes.set(n.id,this.factory.createNode(n));var o=this.tree_parents_map2.get(e.remote_id);(null===o||void 0===o?void 0:o.length)>0&&o.forEach((function(e){!i.filterNode(e)&&i.linkToNode(e,n)}))}}},{key:"buildNodeFromJson",value:function(e,t){var a=this.proxies_map.get(e.uri_api);if(a)return this.nodes.get(a);var i={id:e.uri_api,level:t+1,attributes:{identifier:e.basename,relativePath:e.dataset_relative_path,size:e.size_bytes,mimetype:e.mimetype,updated:e.timestamp_updated,status:e.status,publishedURI:""},types:[],name:e.basename,proxies:[],properties:[],type:"inode/directory"===e.mimetype?"Collection":"File",tree_reference:null,children_counter:0};return this.factory.createNode(i,[])}},{key:"generateData",value:function(){var e,t=this,a=this.tree_map.get(this.root_id),i=this.tree_parents_map.get(null===a||void 0===a?void 0:a.remote_id);null===(e=this.tree_parents_map)||void 0===e||e.delete(null===a||void 0===a?void 0:a.remote_id),this.tree=this.generateLeaf(a),null===i||void 0===i||i.forEach((function(e){t.build_leaf(e,t.tree)})),this.forced_nodes=Array.from(this.nodes).map((function(e){var a,i,n,o,l=Object(r.a)(e,2),s=l[0],d=l[1],c=(null===d||void 0===d||null===(a=d.id)||void 0===a||null===(i=a.match(/https?:\/\/[^\s]+/))||void 0===i?void 0:i[0])||"",u=t.tree_map.get(c);u?(d.tree_reference=u,u.publishedURI=Array.from(t.nodes)[0][1].attributes.hasUriPublished[0]+"?datasetDetailsTab=files&path=files/"+(null===(n=u)||void 0===n?void 0:n.dataset_relative_path.substr(0,null===(o=u)||void 0===o?void 0:o.dataset_relative_path.lastIndexOf("/"))),t.nodes.set(s,d),u.graph_reference=d,t.tree_map.set(d.id,u)):d.proxies.every((function(e){var a,i;return!(u=t.tree_map.get(e))||(u.publishedURI=Array.from(t.nodes)[0][1].attributes.hasUriPublished[0]+"?datasetDetailsTab=files&path=files/"+(null===(a=u)||void 0===a?void 0:a.dataset_relative_path.substr(0,null===(i=u)||void 0===i?void 0:i.dataset_relative_path.lastIndexOf("/"))),d.tree_reference=u,t.nodes.set(s,d),u.graph_reference=d,t.tree_map.set(e,u),!1)}));return d})),this.fix_links(),this.identify_childless_parents()}},{key:"build_leaf",value:function(e,t){var a=this,i=this.generateLeaf(e,t);t.items.push(i);var r=this.tree_parents_map.get(e.remote_id);this.tree_parents_map.delete(e.remote_id),r&&r.forEach((function(e){a.build_leaf(e,i)}))}},{key:"generateLeaf",value:function(e,t){if(e){var a;if(e.id=null===e||void 0===e?void 0:e.uri_api,e.parent=!0,e.text=void 0!==t?null===e||void 0===e?void 0:e.basename:this.dataset_id,e.type="inode/directory"===e.mimetype?b.b.Collection.key:b.b.File.key,e.path=void 0!==t&&void 0!==t.path?[e.id].concat(Object(s.a)(t.path)):[e.id],e.items||(e.items=[]),e.graph_reference=this.findReference(e.remote_id),void 0===e.graph_reference&&(e.graph_reference=this.findReference(e.uri_api)),void 0===e.graph_reference){var i=(r=this.nodes,n=e.id,Object(s.a)(r.keys()).find((function(e){return e.includes(n)})));i&&(e.graph_reference=this.findReference(i))}return this.tree_map.set(e.id,e),{id:e.uri_api,text:e.text,items:e.items,graph_reference:null===e||void 0===e||null===(a=e.graph_reference)||void 0===a?void 0:a.id,path:e.path}}return{};var r,n}},{key:"findReference",value:function(e){var t=this.nodes.get(e);return void 0===t&&this.nodes.forEach((function(a,i){-1!==a.proxies.indexOf(String(e))&&(t=a)})),t}}]),e}();t.a=g},130:function(e,t,a){"use strict";a.d(t,"a",(function(){return r}));var i=a(59),r=(i.WidgetStatus.ACTIVE,{id:"nodeViewWidget",name:"Node View",component:"nodeView",panelName:"rightPanel",enableClose:!0,enableRename:!1,enableDrag:!1,status:i.WidgetStatus.ACTIVE})},131:function(e,t,a){"use strict";a(0);var i=a(573),r=a.p+"static/media/check.2d613265.svg",n=a(1);t.a=function(e){var t=e.handleClose,a=e.enabledButton;return Object(n.jsxs)(i.a,{variant:"contained",fullWidth:!0,disableElevation:!0,color:"primary",onClick:t,disabled:a,children:[Object(n.jsx)("img",{src:r,alt:"Check"}),"Done"]})}},188:function(e,t,a){"use strict";t.a=a.p+"static/media/dataset.3c0498c8.svg"},189:function(e,t,a){"use strict";t.a=a.p+"static/media/folder.d55ab3f1.svg"},19:function(e,t,a){"use strict";t.a={fontFamily:"Inter, sans-serif",primaryColor:"#3779E1",primaryColorHover:"#2763C1",outlinedButtonHover:"#E4EEFF",secondaryColor:"#222739",searchBg:"rgba(255, 255, 255, 0.1)",primaryBgColor:"#F5F7FB",primaryTextColor:"#2E3A59",lightBorderColor:"rgba(255, 255, 255, 0.1)",noInstanceColor:"rgba(255, 255, 255, 0.6)",inputTextColor:"rgba(255, 255, 255, 0.8)",iconButtonHover:"rgba(255, 255, 255, 0.2)",radius:".5rem",gutter:16,whiteColor:"#FFFFFF",sidebarIconColor:"rgba(221, 221, 221, 0.8)",primaryTransition:"all ease-in-out .3s",errorColor:"#ED745D",progressErrorColor:"rgba(237, 116, 93, 0.1)",barSuccessColor:"#6FC386",tabsBgColor:"#F5F8FD",progressBgPrimary:"rgba(55, 121, 225, 0.1)",dropzoneBorderColor:"rgba(55, 121, 225, 0.3)",dropzoneTextColor:"rgba(46, 58, 89, 0.3)",inputFocusShadow:"rgba(55, 121, 225, 0.1)",successInputFocusShadow:"rgba(111, 195, 134, 0.1)",placeHolderColor:"rgba(46, 58, 89, 0.6)",dialogShadow:"rgba(0, 0, 0, 0.1)",tabsBorderColor:"rgba(0, 0, 0, 0.1)",dialogBodyBgColor:"rgba(55, 121, 225, 0.05)",sideBarTextColor:"rgba(46, 58, 89, 0.8)",chipBgColor:"rgba(46, 58, 89, 0.05)",dataset:"#3779E1",matlab:"#6FC386",nifti:"#7747F6",volume:"#3779E1",sideBarLabelColor:"#435070",treeBorderColor:"#4E5261",scrollbarBg:"rgba(0, 0, 0, 0.24)",gray800:"#0F162B",gray400:"#586482",gray25:"#F0F1F2",grey700:"#212B45",grey500:"#435070",grey100:"#C9CDD6",grey400:"#586482",grey50:"#E1E3E8",grey25:"#F0F1F2",grey600:"#2E3A59"}},190:function(e,t,a){"use strict";t.a=a.p+"static/media/file.4236de94.svg"},193:function(e,t,a){"use strict";var i=a(27),r=a(8);function n(e){var t=new Image;if(e.type===r.b.File.key){var a=e.name.split(".").pop();t.src="./images/graph/files/"+a+".svg"}else{var i,n,o;if("Group"!==e.type)t.src=""!==(null===(i=r.b[String(e.type)])||void 0===i?void 0:i.image)?null===(n=r.b[String(e.type)])||void 0===n?void 0:n.image:null===(o=r.b.Unknown)||void 0===o?void 0:o.image}return t}function o(e,t){var a;if(void 0!==t){var n,o=Object(i.a)(e.properties);try{for(o.s();!(n=o.n()).done;){var l,s=n.value,d=Object(i.a)(r.b[e.type].properties);try{for(d.s();!(l=d.n()).done;){var c,u,p=l.value;s.predicate===(null===(c=t[p.type])||void 0===c||null===(u=c.iri)||void 0===u?void 0:u.id)+p.key&&(void 0!==e.attributes[p.property]||(e.attributes[p.property]=[]),e.attributes[p.property].push(s.value))}}catch(y){d.e(y)}finally{d.f()}}}catch(y){o.e(y)}finally{o.f()}if(e.additional_properties){var b,h=Object(i.a)(r.b[e.type].additional_properties);try{for(h.s();!(b=h.n()).done;){var v,m=b.value,f=e.additional_properties,g=Object(i.a)(m.path);try{for(g.s();!(v=g.n()).done;){var j=v.value;if(void 0===f[j]){f=void 0;break}f=f[j]}}catch(y){g.e(y)}finally{g.f()}void 0!==f&&("object"===typeof f&&null!==f&&f[m.innerPath]&&(f=f[m.innerPath]),e.attributes[m.property]=[],"string"===m.type?e.attributes[m.property].push(f.replace(m.trimType,"")):e.attributes[m.property].push(parseFloat(f)))}}catch(y){h.e(y)}finally{h.f()}}void 0!==(null===e||void 0===e||null===(a=e.attributes)||void 0===a?void 0:a.identifier)&&(e.name=e.attributes.identifier)}}var l=function(e,t){return e.img=n(e),o(e,t),e},s=function(e,t){var a,i,r,l,s,d,c,u,p,b,h,v;return o(e,t),e.img=n(e),e.name=void 0!==(null===(a=e.attributes)||void 0===a?void 0:a.firstName)?void 0!==(null===(i=e.attributes)||void 0===i?void 0:i.middleName)?void 0!==(null===(r=e.attributes)||void 0===r?void 0:r.lastName)?(null===(l=e.attributes)||void 0===l?void 0:l.firstName)+" "+(null===(s=e.attributes)||void 0===s?void 0:s.middleName)+" "+(null===(d=e.attributes)||void 0===d?void 0:d.lastName):(null===(c=e.attributes)||void 0===c?void 0:c.firstName)+" "+(null===(u=e.attributes)||void 0===u?void 0:u.middleName):void 0!==(null===(p=e.attributes)||void 0===p?void 0:p.lastName)?(null===(b=e.attributes)||void 0===b?void 0:b.firstName)+" "+(null===(h=e.attributes)||void 0===h?void 0:h.lastName):null===(v=e.attributes)||void 0===v?void 0:v.firstName:e.name,e},d=function(e,t){o(e,t),e.img=n(e);var a=e.name.split("/");return e.name=a[a.length-1],e},c=function(e,t){e.img=n(e),o(e,t);var a=e.name.split(":");return e.name=a[a.length-1],e},u=function(e,t){e.img=n(e),o(e,t);var a=e.name.split("/");return e.name=a[a.length-1],e},p=function(e,t){var a;if(e.img=n(e),o(e,t),void 0!==(null===(a=e.attributes)||void 0===a?void 0:a.identifier)){var i;e.name=null===(i=e.attributes)||void 0===i?void 0:i.identifier[0]}else{var r=e.name.split("/");e.name=r[r.length-1]}return e},b=function(e,t){var a;if(e.img=n(e),o(e,t),void 0!==(null===(a=e.attributes)||void 0===a?void 0:a.identifier)){var i;e.name=null===(i=e.attributes)||void 0===i?void 0:i.identifier[0]}else{var r=e.name.split("/");e.name=r[r.length-1]}return e},h=function(e,t){return e.img=n(e),o(e,t),e},v=function(e,t){var a,i,r,l,s,d,c,u,p,b,h,v;return o(e,t),e.img=n(e),e.name=void 0!==(null===(a=e.attributes)||void 0===a?void 0:a.firstName)?void 0!==(null===(i=e.attributes)||void 0===i?void 0:i.middleName)?void 0!==(null===(r=e.attributes)||void 0===r?void 0:r.lastName)?(null===(l=e.attributes)||void 0===l?void 0:l.firstName)+" "+(null===(s=e.attributes)||void 0===s?void 0:s.middleName)+" "+(null===(d=e.attributes)||void 0===d?void 0:d.lastName):(null===(c=e.attributes)||void 0===c?void 0:c.firstName)+" "+(null===(u=e.attributes)||void 0===u?void 0:u.middleName):void 0!==(null===(p=e.attributes)||void 0===p?void 0:p.lastName)?(null===(b=e.attributes)||void 0===b?void 0:b.firstName)+" "+(null===(h=e.attributes)||void 0===h?void 0:h.lastName):null===(v=e.attributes)||void 0===v?void 0:v.firstName:e.name,e},m=function(e,t){return e.img=n(e),o(e,t),e};t.a=function(){this.createNode=function(e,t){var a;switch(e.type){case"Award":a=new d(e,t);break;case"Collection":a=new l(e,t);break;case"Contributor":a=new s(e,t);break;case"Dataset":a=new c(e,t);break;case"Protocol":a=new u(e,t);break;case"Sample":a=new p(e,t);break;case"Subject":a=new b(e,t);break;case"File":a=new h(e,t);break;case"Person":a=new v(e,t);break;default:a=new m(e,t)}return a}}},204:function(e,t,a){"use strict";t.a=a.p+"static/media/close.51de2817.svg"},205:function(e,t,a){"use strict";var i=a(11),r=a(15),n=a(27),o=a(21),l=a(40),s=a(28),d=a(25),c=a(193),u=a(8),p=a(375),b=function(){function e(t,a){Object(s.a)(this,e),this.filterNode=function(e){return e.basename.includes(".tmp")},this.factory=new c.a,this.turtleFile=a,this.types={},this.levelsMap={},this.turtleData=[],this.tree=void 0,this.nodes=void 0,this.edges=void 0,this.root_id=void 0,this.proxies_map=void 0,this.forced_nodes=void 0,this.store=new p.Store}return Object(d.a)(e,[{key:"initialiseNodesEdges",value:function(){this.edges=[],this.nodes=new Map,this.proxies_map=new Map}},{key:"extractTurtle",value:function(){var e=this;return new Promise((function(t,a){(new p.Parser).parse(e.turtleFile,(function(a,i,r){i?(e.store.addQuad(i),e.turtleData.push(i)):t(e.turtleData)}),(function(t,a){e.types[String(t)]={type:t,iri:a}}))}))}},{key:"getTurtle",value:function(){return this.turtleData}},{key:"getGraph",value:function(){var e=Object(l.a)(Object(o.a)().mark((function e(){return Object(o.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0!==this.nodes&&void 0!==this.edges){e.next=3;break}return e.next=3,this.processDataset();case 3:return e.abrupt("return",{nodes:this.forced_nodes});case 4:case"end":return e.stop()}}),e,this)})));return function(){return e.apply(this,arguments)}}()},{key:"getTree",value:function(){var e=Object(l.a)(Object(o.a)().mark((function e(){return Object(o.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0!==this.tree){e.next=3;break}return e.next=3,this.processDataset();case 3:return e.abrupt("return",this.tree);case 4:case"end":return e.stop()}}),e,this)})));return function(){return e.apply(this,arguments)}}()},{key:"getDatasetId",value:function(){return this.dataset_id}},{key:"processTurtle",value:function(){var e=Object(l.a)(Object(o.a)().mark((function e(){return Object(o.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.extractTurtle();case 2:case"end":return e.stop()}}),e,this)})));return function(){return e.apply(this,arguments)}}()},{key:"processDataset",value:function(){var e=Object(l.a)(Object(o.a)().mark((function e(){return Object(o.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.initialiseNodesEdges(),e.next=3,this.processTurtle();case 3:this.create_graph(),this.mergeData(),this.generateData();case 6:case"end":return e.stop()}}),e,this)})));return function(){return e.apply(this,arguments)}}()},{key:"get_type",value:function(e){var t,a={type:u.d.unknown.type,length:0},i=Object(n.a)(null===e||void 0===e?void 0:e.types);try{for(i.s();!(t=i.n()).done;){var r=t.value;if(r.type===this.types.owl.iri.id+"NamedIndividual")for(var o in this.types)e.id.includes(this.types[o].iri.id)&&this.types[o].iri.id.length>a.length&&void 0!==u.d.NamedIndividual[String(this.types[o].type)]&&(a.type=u.d.NamedIndividual[String(this.types[o].type)].type,a.length=this.types[o].iri.id.length);else if(r.type===this.types.owl.iri.id+"Ontology")a.type=u.d.ontology.type,a.length=u.d.ontology.length;else if(r.type.includes(this.types.sparc.iri.id)&&void 0!==u.d.sparc[r.type.split(this.types.sparc.iri.id).pop()]){var l=r.type.split(this.types.sparc.iri.id).pop();a.type=u.d.sparc[l].type,a.length=u.d.sparc[l].length}}}catch(s){i.e(s)}finally{i.f()}return a.type}},{key:"build_node",value:function(e){this.nodes.get(e.id)?(console.error("Issue with the build node, this node is already present"),console.error(e)):this.nodes.set(e.id,{id:e.id,attributes:{},types:[],name:e.value,proxies:[],properties:[],tree_reference:null,children_counter:0})}},{key:"update_node",value:function(e,t){var a=this;if(!p.Util.isBlankNode(e.subject)){var i=this.nodes.get(e.subject.id);if(i)e.predicate.id===u.c?(i.types=[].concat(Object(r.a)(i.types),[{predicate:e.predicate.id,type:e.object.datatype?e.object.datatype.id:e.object.id,value:e.object.value}]),this.nodes.set(e.subject.id,i)):(i.properties=[].concat(Object(r.a)(i.properties),[{predicate:e.predicate.id,type:e.object.datatype?e.object.datatype.id:e.object.id,value:e.object.value}]),t&&(i.proxies=[].concat(Object(r.a)(i.proxies),[e.object.id]),this.proxies_map.set(e.object.id,e.subject.id)),this.nodes.set(e.subject.id,i));else{var n=!0;this.nodes.forEach((function(t,i){-1!==t.proxies.indexOf(String(e.subject.id))&&(t.properties=[].concat(Object(r.a)(t.properties),[{predicate:e.predicate.id,type:e.object.datatype,value:e.object.value}]),t.proxies=[].concat(Object(r.a)(t.proxies),[e.object.id]),a.proxies_map.set(e.object.id,i),a.nodes.set(i,t),n=!1)})),n&&(console.error("Houston, we have a problem!"),console.error(e))}}}},{key:"link_nodes",value:function(e){var t=this.nodes.get(e.subject.id),a=this.nodes.get(e.object.id);t&&a&&e.subject.id!==e.object.id?(this.edges.push({source:e.subject.id,target:e.object.id}),this.update_node(e,!1)):this.update_node(e,!0)}},{key:"cast_nodes",value:function(){var e=this,t=void 0,a=void 0;this.nodes.forEach((function(i,r){i.type=e.get_type(i);var n=e.factory.createNode(i,e.types);n.type!==u.b.Unknown.key?e.nodes.set(r,n):(e.nodes.delete(r),e.edges=e.edges.filter((function(e){return e.source!==r&&e.target!==r}))),i.type===u.d.NamedIndividual.dataset.type&&(t=i),i.type===u.d.ontology.type&&(a=i)})),this.root_id=t.id,t.properties=t.properties.concat(a.properties),t.proxies=t.proxies.concat(a.proxies),t.level=1,this.nodes.set(t.id,t);var i=this.edges.map((function(e){return e.source===a.id&&(e.source=t.id),e.target===a.id&&(e.target=t.id),e}));return this.edges=i,t}},{key:"organise_nodes",value:function(e){var t=this,a=e.id;this.forced_edges=this.edges.filter((function(e){return e.target!==e.source&&t.nodes.get(e.source).level!==t.nodes.get(e.target).level})).map((function(e){if(e.target===a){var i=e.target;e.target=e.source,e.source=i}var r=t.nodes.get(e.source);return r.children_counter++,t.nodes.set(r.id,r),e})).filter((function(e){return t.nodes.get(e.target).type===u.b.Dataset.key}))}},{key:"identify_childless_parents",value:function(){this.forced_nodes.forEach((function(e,t,a){e.type!==u.b.Sample.key&&e.type!==u.b.Subject.key||0!==e.children_counter||(e.img.src="./images/graph/question_mark.svg")}))}},{key:"create_graph",value:function(){var e,t=Object(n.a)(this.store.getSubjects());try{for(t.s();!(e=t.n()).done;){var a=e.value;p.Util.isBlankNode(a)||this.build_node(a)}}catch(c){t.e(c)}finally{t.f()}var r,o=Object(n.a)(this.turtleData.entries());try{for(o.s();!(r=o.n()).done;){var l=Object(i.a)(r.value,2),s=(l[0],l[1]);p.Util.isLiteral(s.object)||s.predicate.id===u.c?this.update_node(s,!1):this.link_nodes(s)}}catch(c){o.e(c)}finally{o.f()}var d=this.cast_nodes();this.organise_nodes(d)}},{key:"mergeData",value:function(){var e=this;this.nodes.forEach((function(t,a){if(void 0!==t.attributes&&void 0!==t.attributes.hasFolderAboutIt){var i,r=e.tree_parents_map.get(null===(i=e.tree_map.get(t.attributes.hasFolderAboutIt[0]))||void 0===i?void 0:i.remote_id);null===r||void 0===r||r.forEach((function(a){!e.filterNode(a)&&e.linkToNode(a,t)}))}}))}},{key:"linkToNode",value:function(e,t){var a=this,i=t.level;t.type===u.b.Sample.key&&void 0!==t.attributes.derivedFrom&&(i=this.nodes.get(t.attributes.derivedFrom[0]).level+1),t.children_counter++;var r=this.buildNodeFromJson(e,i);r.parent=t,this.forced_edges.push({source:t.id,target:r.id}),this.nodes.set(r.id,this.factory.createNode(r));var n=this.tree_parents_map.get(e.remote_id);(null===n||void 0===n?void 0:n.length)>0&&n.forEach((function(e){!a.filterNode(e)&&a.linkToNode(e,r)}))}},{key:"buildNodeFromJson",value:function(e,t){var a=this.proxies_map.get(e.uri_api);if(a)return this.nodes.get(a);var i={id:e.uri_api,level:t+1,attributes:{identifier:e.basename,relativePath:e.dataset_relative_path,size:e.size_bytes,mimetype:e.mimetype,updated:e.timestamp_updated,status:e.status},types:[],name:e.basename,proxies:[],properties:[],type:"inode/directory"===e.mimetype?"Collection":"File",tree_reference:null,children_counter:0};return this.factory.createNode(i,[])}},{key:"generateData",value:function(){this.forced_nodes=Array.from(this.nodes).map((function(e){var t=Object(i.a)(e,2),a=(t[0],t[1]);return a.proxies.every((function(e){return!0})),a}))}},{key:"build_leaf",value:function(e,t){var a=this,i=this.generateLeaf(e,t);t.items.push(i);var r=this.tree_parents_map.get(e.remote_id);this.tree_parents_map.delete(e.remote_id),r&&r.forEach((function(e){a.build_leaf(e,i)}))}},{key:"generateLeaf",value:function(e,t){var a;return e.id=e.uri_api,e.parent=!0,e.text=void 0!==t?e.basename:this.dataset_id,e.type="inode/directory"===e.mimetype?u.b.Collection.key:u.b.File.key,e.path=void 0!==t&&void 0!==t.path?[e.id].concat(Object(r.a)(t.path)):[e.id],e.items||(e.items=[]),e.graph_reference=this.findReference(e.uri_api),this.tree_map.set(e.id,e),{id:e.uri_api,text:e.text,items:e.items,graph_reference:null===e||void 0===e||null===(a=e.graph_reference)||void 0===a?void 0:a.id,path:e.path}}},{key:"findReference",value:function(e){var t=this.nodes.get(e);return void 0===t&&this.nodes.forEach((function(a,i){-1!==a.proxies.indexOf(String(e))&&(t=a)})),t}}]),e}();t.a=b},26:function(e,t,a){"use strict";a.d(t,"a",(function(){return i})),a.d(t,"b",(function(){return r})),a.d(t,"e",(function(){return n})),a.d(t,"d",(function(){return o})),a.d(t,"h",(function(){return l})),a.d(t,"c",(function(){return s})),a.d(t,"g",(function(){return d})),a.d(t,"f",(function(){return c})),a.d(t,"i",(function(){return u})),a.d(t,"j",(function(){return p})),a.d(t,"k",(function(){return b})),a.d(t,"n",(function(){return h})),a.d(t,"m",(function(){return v})),a.d(t,"l",(function(){return m})),a.d(t,"q",(function(){return f})),a.d(t,"p",(function(){return g})),a.d(t,"o",(function(){return j})),a.d(t,"r",(function(){return y}));var i="ADD_DATASET",r="DELETE_DATASET",n="SET_DATASET_LIST",o="SELECT_INSTANCE",l="TRIGGER_ERROR",s="SELECT_GROUP",d="TOGGLE_METADATA_SETTINGS",c="TOGGLE_METADATA_ITEM_VISIBILITY",u="UPDATE_METADATA_ITEMS_ORDER",p=function(e){return{type:i,data:{dataset:e}}},b=function(e){return{type:r,data:{dataset_id:e}}},h=function(e){return{type:n,data:{datasets:e}}},v=function(e){return{type:o,data:{dataset_id:e.dataset_id,graph_node:e.graph_node,tree_node:e.tree_node,source:e.source}}},m=function(e){return{type:s,data:{dataset_id:e.dataset_id,graph_node:e.graph_node,tree_node:e.tree_node,source:e.source}}},f=function(e){return{type:l,data:{error_message:e}}},g=function(e){return{type:d,data:{visible:e}}},j=function(e,t){return{type:c,data:{groupTitle:e,itemId:t}}},y=function(e){var t=e.groupTitle,a=e.newItemsOrder;return{type:u,payload:{title:t,newItemsOrder:a}}}},31:function(e){e.exports=JSON.parse('{"datasets_url":"https://cassava.ucsd.edu/sparc/datasets/","repository_url":"https://cassava.ucsd.edu/sparc/preview/exports/","issues_url":"https://github.com/MetaCell/sds-viewer/issues/new","docs_url":"https://github.com/MetaCell/sds-viewer/blob/development/README.md","available_datasets":"curation-export-published.ttl","groups":{"order":{"animalSubjectIsOfSpecies":{"tag":"Subject Species","icon":"./images/graph/species.svg"},"animalSubjectIsOfStrain":{"tag":"Subject Strain","icon":"./images/graph/strains.svg"},"hasBiologicalSex":{"tag":"Subject Sex","icon":"./images/graph/sex.svg"},"hasAgeCategory":{"tag":"Subject Age","icon":"./images/graph/age.svg"}}},"text":{"datasetsButtonText":"Import a new dataset","datasetsDialogSearchText":"Search datasets by label or id","datasetsButtonSubtitleText":"Select a dataset to load"},"datasetsStorage":"publishedDatasets","version":"18-Sept-2024"}')},377:function(e,t,a){"use strict";(function(e){var i=a(21),r=a(40),n=a(11),o=(a(457),a(424)),l=a(0),s=a(400),d=a(69),c=a(121),u=a(380),p=a(66),b=a(22),h=a(422),v=a(384),m=a(389),f=a(421),g=a(399),j=a(570),y=a(577),O=a(26),x=a(130),_=a(42),k=a(59),S=a(205),T=a(31),w=a(1);t.a=Object(s.hot)(e)((function(){var e=new URLSearchParams(window.location.search),t=e.get("id"),a=e.get("doi"),s=e.get("local"),C=Object(b.b)(),I=Object(l.useState)(!1),E=Object(n.a)(I,2),N=E[0],P=E[1],M=Object(l.useState)(!1),D=Object(n.a)(M,2),A=D[0],F=D[1],R=Object(b.c)((function(e){return e.sdsState.datasets})),U=Object(b.c)((function(e){return e.sdsState.error_message})),B=Object(l.useState)(void 0),L=Object(n.a)(B,2),H=(L[0],L[1],Object(l.useState)(void 0)),z=Object(n.a)(H,2),W=(z[0],z[1],Object(l.useState)(!0)),G=Object(n.a)(W,2),V=G[0],J=(G[1],Object(l.useState)(!1)),Z=Object(n.a)(J,2),q=Z[0],Y=Z[1],Q=Object(l.useState)((function(){return!(!t||""===t)||!(!a||""===a)})),$=Object(n.a)(Q,2),K=$[0],X=$[1],ee="",te="",ae=void 0,ie=function(){var e=Object(r.a)(Object(i.a)().mark((function e(t,a){var r;return Object(i.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return ae=new c.a(a,t),e.t0=ae.getDatasetId(),e.next=4,ae.getGraph();case 4:return e.t1=e.sent,e.next=7,ae.getTree();case 7:e.t2=e.sent,e.t3=ae,r={id:e.t0,graph:e.t1,tree:e.t2,splinter:e.t3},C(Object(O.j)(r)),C(Object(_.addWidget)({id:r.id,name:r.id.substring(0,10)+"... Graph",component:"graphComponent",panelName:"leftPanel",enableClose:!0,enableRename:!0,enableDrag:!0,status:k.WidgetStatus.ACTIVE,config:{graph_id:r.id,component:"graphComponent"}})),C(Object(_.addWidget)(x.a)),X(!1);case 14:case"end":return e.stop()}}),e)})));return function(t,a){return e.apply(this,arguments)}}(),re=function(){var e=Object(r.a)(Object(i.a)().mark((function e(t){return Object(i.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:ee=T.datasets_url+t+"/LATEST/curation-export.ttl",(new p.a).get_remote_file(ee,(function(e,a){a&&(te=T.datasets_url+t+"/LATEST/path-metadata.json",(new p.a).get_remote_file(te,(function(e,t){a&&t&&!q&&(ie(a,t),Y(!0))}),(function(){X(!1)})))}),null);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),ne=function(){var e=Object(r.a)(Object(i.a)().mark((function e(t,r){var n,o,l,s,d,c,u,p,b,h;return Object(i.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o={id:"ttl",url:t,data:r,file:{name:"ttl",type:"text/turtle"}},l=new S.a(void 0,o.data),e.next=4,l.getGraph();case 4:s=e.sent,d=s.nodes.filter((function(e){var t;return null===e||void 0===e||null===(t=e.attributes)||void 0===t?void 0:t.hasDoi})),c=T.version,(u=d.find((function(e){var t,i,r;return null===(t=e.attributes)||void 0===t||null===(i=t.hasDoi)||void 0===i||null===(r=i[0])||void 0===r?void 0:r.includes(a)})))?(p=u.name,re(p)):(X(!1),Y(!1)),b={},void 0!==c&&(null===(n=JSON.parse(localStorage.getItem(T.datasetsStorage)))||void 0===n?void 0:n.version)!==c&&(h=[],d.forEach((function(e){var t,a,i,r,n;h.push({name:e.name,doi:null===(t=e.attributes)||void 0===t||null===(a=t.hasDoi)||void 0===a?void 0:a[0],label:e.attributes?null===(i=e.attributes)||void 0===i||null===(r=i.label)||void 0===r||null===(n=r[0])||void 0===n?void 0:n.toLowerCase():null})})),b={version:c,datasets:h},localStorage.setItem(T.datasetsStorage,JSON.stringify(b)));case 11:case"end":return e.stop()}}),e)})));return function(t,a){return e.apply(this,arguments)}}();return Object(l.useEffect)((function(){if(t&&""!==t&&re(t),a&&""!==a&&V){var e=T.version,i=JSON.parse(localStorage.getItem(T.datasetsStorage));if((null===i||void 0===i?void 0:i.version)===e){var r=JSON.parse(localStorage.getItem(T.datasetsStorage)).datasets.find((function(e){return null===e||void 0===e?void 0:e.doi.includes(a)}));if(r){var n=r.name;re(n)}else X(!1),Y(!1)}else{var o=new p.a,l=T.repository_url+T.available_datasets;o.get_remote_file(l,ne)}}}),[]),Object(w.jsxs)(j.a,{theme:o.a,children:[Object(w.jsx)(y.a,{}),Object(w.jsxs)(d.a,{display:"flex",className:"main-structure",children:[Object(w.jsx)(h.a,{openUploadDialog:N,setOpenUploadDialog:P,openDatasetsListDialog:A,setOpenDatasetsListDialog:F,local:s}),Object(w.jsx)(d.a,{className:"content full-round",children:R.length>0?Object(w.jsx)(u.a,{}):Object(w.jsx)(v.a,{loading:K,openUploadDialog:N,setOpenUploadDialog:P,openDatasetsListDialog:A,setOpenDatasetsListDialog:F})})]}),Object(w.jsx)(f.a,{open:N,handleClose:function(){return P(!1)}}),Object(w.jsx)(g.a,{open:A,handleClose:function(){return F(!1)}}),Object(w.jsx)(m.a,{open:null!==U,error_message:U})]})}))}).call(this,a(456)(e))},380:function(e,t,a){"use strict";var i=a(11),r=a(22),n=a(0),o=a(255),l=a(198),s=a(184),d=a(1),c=Object(o.a)({layoutContainer:{position:"relative",width:"100%",height:"100%"}});t.a=function(){var e=c(),t=Object(r.d)(),a=Object(n.useState)(void 0),o=Object(i.a)(a,2),u=o[0],p=o[1];return Object(n.useEffect)((function(){if(void 0===u){var e=Object(s.getLayoutManagerInstance)();e.model.visitNodes((function(t,a){t.setEventListener("resize",(function(t){var a=e.model._activeTabSet._children.filter((function(e){return e._visible})),i=new CustomEvent("nodeResized",{detail:a});document.dispatchEvent(i)})),t.setEventListener("visibility",(function(t,a){var i=e.model._activeTabSet._children.filter((function(e){return!e._visible})),r=new CustomEvent("nodeVisible",{detail:i});document.dispatchEvent(r)}))})),e&&p(e.getComponent())}}),[t,u]),Object(d.jsx)("div",{className:e.layoutContainer,children:void 0===u?Object(d.jsx)(l.a,{}):Object(d.jsx)(u,{})})}},384:function(e,t,a){"use strict";a(0);var i=a(385),r=a.n(i),n=a(69),o=a(55),l=a(573),s=a(12),d=a(1);t.a=function(e){return Object(d.jsx)(n.a,{className:"MuiBox-empty",children:e.loading?Object(d.jsx)(d.Fragment,{children:Object(d.jsx)(r.a,{active:e.loading})}):Object(d.jsxs)(d.Fragment,{children:[Object(d.jsxs)(o.a,{variant:"h3",children:[s.e," to start."]}),Object(d.jsxs)(l.a,{variant:"outlined",disableElevation:!0,color:"primary",onClick:function(){return e.setOpenDatasetsListDialog(!0)},children:["+ ",s.e]})]})})}},389:function(e,t,a){"use strict";a(0);var i=a(428),r=a(69),n=a(55),o=a(22),l=a(26),s=a(1);t.a=function(e){var t=e.open,a=e.error_message,d=Object(o.b)();return Object(s.jsxs)(i.a,{open:t,onClose:function(){d(Object(l.q)(null))},children:[Object(s.jsx)(r.a,{className:"dialog_header",children:Object(s.jsx)(n.a,{variant:"h3",children:" Generic Error Message"})}),Object(s.jsx)(r.a,{className:"dialog_body",children:Object(s.jsxs)(n.a,{variant:"h8",children:[" ",a," "]})})]})}},399:function(e,t,a){"use strict";var i=a(21),r=a(40),n=a(11),o=a(0),l=a.n(o),s=a(22),d=a(428),c=a(579),u=a(55),p=a(69),b=a(588),h=a(208),v=a(430),m=a(431),f=a(583),g=a(575),j=a(198),y=a(26),O=a(121),x=a(130),_=a(42),k=a(205),S=a(59),T=a(66),w=a(131),C=a(204),I=a(31),E=a(1);t.a=function(e){var t=Object(s.b)(),a=e.open,N=e.handleClose,P=l.a.useState(""),M=Object(n.a)(P,2),D=M[0],A=M[1],F=l.a.useState(void 0),R=Object(n.a)(F,2),U=R[0],B=R[1],L=Object(s.c)((function(e){return e.sdsState.available_datasets})),H=l.a.useState(L),z=Object(n.a)(H,2),W=z[0],G=z[1],V="",J="",Z=void 0,q=function(){var e=Object(r.a)(Object(i.a)().mark((function e(a,r){var n;return Object(i.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return Z=new O.a(r,a),e.t0=Z.getDatasetId(),e.next=4,Z.getGraph();case 4:return e.t1=e.sent,e.next=7,Z.getTree();case 7:e.t2=e.sent,e.t3=Z,n={id:e.t0,graph:e.t1,tree:e.t2,splinter:e.t3},t(Object(y.j)(n)),t(Object(_.addWidget)({id:n.id,name:n.id.substring(0,10)+"... Graph",component:"graphComponent",panelName:"leftPanel",enableClose:!0,enableRename:!0,enableDrag:!0,status:S.WidgetStatus.ACTIVE,config:{graph_id:n.id,component:"graphComponent"}})),t(Object(_.addWidget)(x.a));case 13:case"end":return e.stop()}}),e)})));return function(t,a){return e.apply(this,arguments)}}(),Y=function(e){V=I.datasets_url+e+"/LATEST/curation-export.ttl";var t=new T.a;t.get_remote_file(V,(function(a,i){i&&(J=I.datasets_url+e+"/LATEST/path-metadata.json",t.get_remote_file(J,(function(e,t){t&&(q(i,t),G(L),B(void 0),N())})))}))},Q=function(e){var t=new RegExp(D,"gi");return void 0===D||""===D?e:e.replace(t,(function(e){return""+e+""}))};return Object(o.useEffect)((function(){if(a&&0===L.length){var e=I.version,n=JSON.parse(localStorage.getItem(I.datasetsStorage)),o=null===n||void 0===n?void 0:n.version;if(localStorage.getItem(I.datasetsStorage)&&e===o){var l=JSON.parse(localStorage.getItem(I.datasetsStorage));t(Object(y.n)(l.datasets)),G(l.datasets)}else!function(){var e=new T.a,a=function(){var e=Object(r.a)(Object(i.a)().mark((function e(a,r){var n,o,l,s,d,c,u,p;return Object(i.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o={id:"ttl",url:a,data:r,file:{name:"ttl",type:"text/turtle"}},l=new k.a(void 0,o.data),e.next=4,l.getGraph();case 4:s=e.sent,(d=s.nodes.filter((function(e){var t;return null===e||void 0===e||null===(t=e.attributes)||void 0===t?void 0:t.hasUriApi}))).forEach((function(e){var t,a,i;return e.attributes?e.attributes.lowerCaseLabel=null===(t=e.attributes)||void 0===t||null===(a=t.label)||void 0===a||null===(i=a[0])||void 0===i?void 0:i.toLowerCase():null})),d=d.filter((function(e){var t,a,i;return null===e||void 0===e||null===(t=e.attributes)||void 0===t||null===(a=t.statusOnPlatform)||void 0===a||null===(i=a[0])||void 0===i?void 0:i.includes("PUBLISHED")})),c=I.version,p=[],null===(n=d)||void 0===n||n.forEach((function(e){var t,a,i;p.push({name:e.name,doi:null===(t=e.attributes)||void 0===t||null===(a=t.hasDoi)||void 0===a?void 0:a[0],label:e.attributes?null===(i=e.attributes)||void 0===i?void 0:i.lowerCaseLabel:null})})),u={version:c,datasets:p},localStorage.setItem(I.datasetsStorage,JSON.stringify(u)),t(Object(y.n)(u.datasets)),G(u.datasets);case 16:case"end":return e.stop()}}),e)})));return function(t,a){return e.apply(this,arguments)}}(),n=I.repository_url+I.available_datasets;e.get_remote_file(n,a)}()}})),Object(E.jsxs)(d.a,{className:"datasets_dialog",open:a,handleClose:function(){G(L),B(void 0),N()},PaperProps:{style:{width:"50rem"}},children:[Object(E.jsxs)(c.a,{align:"center",children:[Object(E.jsx)("img",{className:"dialog_close",src:C.a,onClick:N,alt:"Close"}),Object(E.jsx)(u.a,{variant:"h3",children:I.text.datasetsButtonText}),Object(E.jsx)(u.a,{variant:"subtitle1",children:I.text.datasetsButtonSubtitleText})]}),L.length>0?Object(E.jsxs)(E.Fragment,{children:[Object(E.jsx)(p.a,{className:"datasets_list",children:Object(E.jsx)(b.a,{fullWidth:!0,disabled:0===L.length,label:I.text.datasetsDialogSearchText,id:"fullWidth",onChange:function(e){var t=e.target.value.toLowerCase(),a=L.filter((function(e){var a,i;return(null===(a=e.label)||void 0===a?void 0:a.includes(t))||(null===(i=e.name)||void 0===i?void 0:i.includes(t))}));A(t),G(a)}})}),W.length>0?Object(E.jsx)(p.a,{className:"datasets_list datasets_list_results",align:"right",children:Object(E.jsxs)(u.a,{children:[W.length," found"]})}):null,Object(E.jsx)(p.a,{className:"datasets_list",children:Object(E.jsx)(h.a,{className:"datasets_dialog_list",children:Object(E.jsx)(v.a,{className:"datasets_list",children:W.map((function(e){return Object(E.jsxs)(E.Fragment,{children:[Object(E.jsx)(m.a,{className:"dataset_item",selected:U===e.name,onClick:function(t){return a=e.name,void B(a);var a},children:Object(E.jsx)(f.a,{primary:Object(E.jsx)(u.a,{type:"caption",className:"dataset_list_text",dangerouslySetInnerHTML:{__html:Q(e.label)}})})},"item-".concat(e.name)),Object(E.jsx)(g.a,{})]})}))})})})]}):Object(E.jsx)(p.a,{className:"datasets_list",children:Object(E.jsx)(j.a,{className:"datasets_loader"})}),Object(E.jsx)(p.a,{className:"datasets_list",children:Object(E.jsx)(w.a,{handleClose:function(){return Y(U)},enabledButton:void 0===U})})]})}},421:function(e,t,a){"use strict";var i=a(21),r=a(27),n=a(40),o=a(11),l=a(0),s=a.n(l),d=a(17),c=a(423),u=a.p+"static/media/upload-icon.5d0c29ff.svg",p=a(131),b=a(69),h=a(55),v=a(6),m=a(376),f=a(361),g=a(19),j=a(1),y=Object(v.a)((function(){return Object(m.a)({colorPrimary:{backgroundColor:g.a.progressErrorColor},barColorPrimary:{backgroundColor:g.a.errorColor}})}))(f.a),O=function(e){return e.error?Object(j.jsx)(y,Object(d.a)({variant:"determinate"},e)):Object(j.jsx)(f.a,Object(d.a)({variant:"determinate"},e))},x=function(e){var t,a=e.progress,i=e.file,r=e.errors,n=void 0===r?[]:r;return Object(j.jsxs)(b.a,{className:"wrap",children:[Object(j.jsx)(h.a,{children:null===i||void 0===i?void 0:i.name}),n.length>0?Object(j.jsxs)(j.Fragment,{children:[Object(j.jsx)(h.a,{component:"strong",children:null===(t=n[0])||void 0===t?void 0:t.message}),Object(j.jsx)(O,{value:20,error:!0})]}):a<100?Object(j.jsxs)(j.Fragment,{children:[Object(j.jsxs)(h.a,{component:"span",children:[a,"%"]}),Object(j.jsx)(O,{value:a})]}):Object(j.jsxs)(j.Fragment,{children:[Object(j.jsxs)(h.a,{component:"strong",children:[a,"%"]}),Object(j.jsx)(O,{value:a,color:"secondary"})]})]})},_=a.p+"static/media/nft.b55f8c49.svg",k=a.p+"static/media/mtl.4967134b.svg",S=a.p+"static/media/database.df7b5a81.svg";function T(e){var t=e.src;return Object(j.jsx)("img",{src:"NFT"===t?_:"MTL"===t?k:S,alt:t})}var w=a.p+"static/media/cancel.285b834a.svg",C=a(66),I=function(e,t,a){(new C.a).get_local_file(e,(function(t){a(e,t)}),t)};function E(e){var t=e.file,a=e.onDelete,r=e.onUpload,s=Object(l.useState)(0),d=Object(o.a)(s,2),c=d[0],u=d[1];return Object(l.useEffect)((function(){function e(){return(e=Object(n.a)(Object(i.a)().mark((function e(){return Object(i.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:I(t,u,r);case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}!function(){e.apply(this,arguments)}()}),[]),Object(j.jsxs)(b.a,{className:"uploaded-files_row",children:[Object(j.jsx)(T,{src:"MTL"}),Object(j.jsx)(x,{file:t,progress:c}),c<100?Object(j.jsx)("img",{src:w,onClick:function(){return a(t)},width:"24",style:{cursor:"pointer"},alt:"Cancel"}):Object(j.jsx)("img",{src:w,onClick:function(){return a(t)},width:"24",style:{cursor:"pointer"},alt:"Done"})]})}var N=a.p+"static/media/delete.6b54b734.svg";function P(e){var t=e.file,a=e.onDelete,i=e.errors;return Object(j.jsxs)(b.a,{className:"uploaded-files_row error",children:[Object(j.jsx)(T,{src:"NFT"}),Object(j.jsx)(x,{file:t,errors:i}),Object(j.jsx)("img",{src:N,onClick:function(){return a(t)},width:"24",style:{cursor:"pointer"},alt:"DELETE"})]})}function M(e){var t=e.files,a=e.onDelete,i=e.onUpload;return Object(j.jsxs)(b.a,{className:"uploaded-files",children:[Object(j.jsx)(h.a,{component:"h3",children:"Uploaded files"}),t.map((function(e){return Object(j.jsx)(b.a,{children:e.errors.length?Object(j.jsx)(P,{file:e.file,errors:e.errors,onDelete:a}):Object(j.jsx)(E,{onDelete:a,onUpload:i,file:e.file,totalFiles:t.length})},e.id)}))]})}var D=a(12),A=function(e){e.handleClose;var t=e.handleDone,a=Object(l.useState)(void 0),i=Object(o.a)(a,2),n=i[0],b=i[1],h=Object(l.useState)(void 0),v=Object(o.a)(h,2),m=v[0],f=v[1],g=function(e){var t,a=Object(r.a)(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;"text/turtle"===i.type||i.name.split(".").pop()===D.c.acceptedFileExtensions[1]?b({file:i,errors:i.size>D.c.maxFileSize?[{message:"Error: File is too large"}]:[],id:Math.random()}):"application/json"===i.type||i.name.split(".").pop()===D.c.acceptedFileExtensions[0]?f({file:i,errors:i.size>D.c.maxFileSize?[{message:"Error: File is too large"}]:[],id:Math.random()}):console.error("something weird happened!")}}catch(n){a.e(n)}finally{a.f()}},y=s.a.useRef("dialog"),O=[n,m].filter((function(e){return void 0!==e}));return Object(j.jsxs)(j.Fragment,{children:[void 0!==m&&void 0!==n?Object(j.jsx)(j.Fragment,{children:" "}):Object(j.jsx)(c.a,{fileObjects:O.map((function(e){return e.file})),onChange:function(e){},showPreviewsInDropzone:!1,onDrop:function(e){return g(e)},acceptedFiles:D.c.acceptedFileExtensions,maxFileSize:D.c.maxFileSize,onDropRejected:function(e){return g(e,!1)},showAlerts:!1,ref:y,Icon:function(){return Object(j.jsx)("img",{src:u,alt:"upload"})},dropzoneText:"Drag & Drop your files here",filesLimit:D.c.maxFiles}),O&&O.length?Object(j.jsx)(M,{files:O,onDelete:function(e){(null===n||void 0===n?void 0:n.file)!==e||"text/turtle"!==e.type&&e.name.split(".").pop()!==D.c.acceptedFileExtensions[1]?(null===m||void 0===m?void 0:m.file)!==e||"application/json"!==e.type&&e.name.split(".").pop()!==D.c.acceptedFileExtensions[0]?console.error("something weird happened!"):f(void 0):b(void 0)},onUpload:function(e,t){(null===n||void 0===n?void 0:n.file)!==e||"text/turtle"!==e.type&&e.name.split(".").pop()!==D.c.acceptedFileExtensions[1]?(null===m||void 0===m?void 0:m.file)!==e||"application/json"!==e.type&&e.name.split(".").pop()!==D.c.acceptedFileExtensions[0]?console.error("something weird happened!"):f(Object(d.a)(Object(d.a)({},m),{},{data:t})):b(Object(d.a)(Object(d.a)({},n),{},{data:t}))}}):null,void 0!==m&&void 0!==n&&Object(j.jsx)(p.a,{handleClose:function(){t(O)}})]})},F=a(256),R=a(590),U=a(610),B=a(573),L=a(198),H=a.p+"static/media/url.8265b8f5.svg",z=a.p+"static/media/link-green.8889c463.svg",W=function(e){e.handleClose;var t=e.handleDone,a=Object(l.useState)(!1),i=Object(o.a)(a,2),r=i[0],n=i[1],s=Object(l.useState)(""),c=Object(o.a)(s,2),u=c[0],b=c[1],h=Object(l.useState)(!1),v=Object(o.a)(h,2),m=v[0],f=v[1],g=Object(l.useState)([{id:"ttl",url:void 0,data:void 0,file:{name:"ttl",type:"text/turtle"}},{id:"json",url:void 0,data:void 0,file:{name:"json",type:"application/json"}}]),y=Object(o.a)(g,2),O=y[0],x=y[1];return Object(l.useEffect)((function(){r&&!m&&void 0!==O[0].data&&void 0!==O[1].data&&(n(!1),f(!0))}),[r,m,O]),Object(j.jsxs)(j.Fragment,{children:[Object(j.jsx)(F.a,{variant:"filled",fullWidth:!0,children:Object(j.jsx)(R.a,{id:"url-uploader",placeholder:"Dataset URL",className:m?"field-success":"",startAdornment:Object(j.jsx)(U.a,{position:"start",children:Object(j.jsx)("img",{src:m?z:H,alt:"Link"})}),value:u,onChange:function(e){return b(e.target.value)},endAdornment:""!==u?Object(j.jsx)(U.a,{position:"end",onClick:function(){b(""),f(!1)},children:Object(j.jsx)("img",{src:w,alt:"CANCEL"})}):null})}),m?Object(j.jsx)(p.a,{handleClose:function(){t(O)}}):Object(j.jsx)(B.a,{variant:"contained",fullWidth:!0,disabled:""===u,disableElevation:!0,color:"primary",onClick:function(){var e=new C.a,t=new C.a,a=function(e,t){!function(e,t){var a=e.split(".").pop();x((function(i){return i.map((function(i){return i.id===a&&void 0!==t?Object(d.a)(Object(d.a)({},i),{},{url:e,data:t}):i}))}))}(e,t)};n(!0),e.get_remote_file(u,a,(function(){})),t.get_remote_file(function(e){var t=e.split("/"),a=t.pop().replace("N%3Adataset%3A","").replace(".ttl",""),i=t.shift();return t.pop(),t.map((function(e){return i=i+"/"+e,e})),i+"/path-metadata/"+a+"/LATEST_RUN/path-metadata.json"}(u),a,(function(){}))},children:r?Object(j.jsx)(L.a,{size:16,color:"primary"}):"Load"})]})},G=a(22),V=a(5),J=["children","value","index"],Z=function(e){var t=e.children,a=e.value,i=e.index,r=Object(V.a)(e,J);return Object(j.jsx)("div",Object(d.a)(Object(d.a)({role:"tabpanel",hidden:a!==i,className:"tab-content",id:"simple-tabpanel-".concat(i),"aria-labelledby":"simple-tab-".concat(i)},r),{},{children:a===i&&Object(j.jsx)(j.Fragment,{children:t})}))},q=a(428),Y=a(627),Q=a(623),$=a(204);function K(e){return{id:"simple-tab-".concat(e),"aria-controls":"simple-tabpanel-".concat(e)}}var X=function(e){var t=e.value,a=e.handleChange,i=e.handleClose;return Object(j.jsxs)(j.Fragment,{children:[Object(j.jsx)("img",{src:$.a,onClick:i,alt:"Close"}),Object(j.jsx)(h.a,{component:"h3",children:"Upload your dataset"}),Object(j.jsxs)(Y.a,{className:"rounded",value:t,onChange:a,"aria-label":"simple tabs example",children:[Object(j.jsx)(Q.a,Object(d.a)({className:"rounded",label:"Local System"},K(0))),Object(j.jsx)(Q.a,Object(d.a)({className:"rounded",label:"From a URL"},K(1)))]})]})},ee=a(26),te=a(130),ae=a(42),ie=a(121),re=a(59);t.a=function(e){var t=Object(G.b)(),a=e.open,l=e.handleClose,d=s.a.useState(0),c=Object(o.a)(d,2),u=c[0],p=c[1],h=function(){var e=Object(n.a)(Object(i.a)().mark((function e(a){var n,o,s,d,c,u,p,b;return Object(i.a)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(2!==a.length||void 0===a[0].data||void 0===a[1].data){e.next=21;break}n=void 0,o=void 0,s=Object(r.a)(a);try{for(s.s();!(d=s.n()).done;)c=d.value,"ttl"===(u=c.file.name.split(".").pop())&&(o=c.data),"json"===u&&(n=c.data)}catch(i){s.e(i)}finally{s.f()}return p=new ie.a(n,o),e.t0=p.getDatasetId(),e.next=9,p.getGraph();case 9:return e.t1=e.sent,e.next=12,p.getTree();case 12:e.t2=e.sent,e.t3=p,b={id:e.t0,graph:e.t1,tree:e.t2,splinter:e.t3},l(),t(Object(ee.j)(b)),t(Object(ae.addWidget)({id:b.id,name:b.id.substring(0,10)+"... Graph",component:"graphComponent",panelName:"leftPanel",enableClose:!0,enableRename:!0,enableDrag:!0,status:re.WidgetStatus.ACTIVE,config:{graph_id:b.id,component:"graphComponent"}})),t(Object(ae.addWidget)(te.a)),e.next=23;break;case 21:l(),t(Object(ee.q)("Just a test for the error dialog."));case 23:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return Object(j.jsxs)(q.a,{open:a,onClose:l,children:[Object(j.jsx)(b.a,{className:"dialog_header",children:Object(j.jsx)(X,{handleChange:function(e,t){p(t)},value:u,handleClose:l})}),Object(j.jsxs)(b.a,{className:"dialog_body",children:[Object(j.jsx)(Z,{value:u,index:0,children:Object(j.jsx)(A,{handleClose:l,handleDone:h})}),Object(j.jsx)(Z,{value:u,index:1,children:Object(j.jsx)(W,{handleClose:l,handleDone:h})})]})]})}},422:function(e,t,a){"use strict";var i=a(11),r=a(0),n=a.n(r),o=a(69),l=a(609),s=a(256),d=a(571),c=a(610),u=a(573),p=a.p+"static/media/logo.ca7fb900.svg",b=a.p+"static/media/toggle-left.ed7cc2df.svg",h=a.p+"static/media/search.22df39ce.svg",v=a(382),m=a.n(v),f=a(1),g=function(e){var t=e.expand,a=e.setExpand,i=e.setSearchTerm,r=e.searchTerm;return Object(f.jsxs)(o.a,{className:"sidebar-header",children:[Object(f.jsx)("img",{src:p,alt:"Logo"}),Object(f.jsx)(l.a,{"aria-label":"toggle",onClick:function(){return a(!t)},className:"shrink-btn",children:t?Object(f.jsx)("img",{src:b,alt:"Toggle"}):Object(f.jsx)(m.a,{})}),t&&Object(f.jsx)(s.a,{variant:"filled",fullWidth:!0,children:Object(f.jsx)(d.a,{"aria-autocomplete":"none",disableUnderline:!0,id:"filled-adornment-password",placeholder:"Search for an instance",startAdornment:Object(f.jsx)(c.a,{position:"start",children:Object(f.jsx)("img",{src:h,alt:"Search"})}),endAdornment:Object(f.jsx)(c.a,{position:"end",children:Object(f.jsx)(u.a,{onClick:function(){return i(i)},children:"Search"})}),value:r,onChange:function(e){i(e.target.value)}})})]})},j=a(55),y=a(15),O=a(613),x=a(188),_=a(189),k=a(190),S=a(17),T=a(5),w=a(611),C=a.p+"static/media/down.0095113d.svg",I=a(612),E=["dataset","labelText","labelIcon","labelInfo","iconClass","onNodeSelect"],N=function(e){var t,a,i,r=e.dataset,n=e.labelText,s=(e.labelIcon,e.labelInfo),d=e.iconClass,c=e.onNodeSelect,u=Object(T.a)(e,E);return Object(f.jsx)(w.a,Object(S.a)({data:r,id:u.nodeId,label:Object(f.jsxs)("div",{className:"labelRoot ".concat(d),children:[Object(f.jsx)(o.a,{className:"labelIcon"}),Object(f.jsxs)(j.a,{onClick:function(t){c(t,e.nodeId),t.preventDefault()},variant:"body2",className:"labelText",children:[n,"file"===e.iconClass&&void 0!=(null===(t=window.datasets[r].splinter.tree_map.get(e.nodeId))||void 0===t||null===(a=t.graph_reference)||void 0===a||null===(i=a.attributes)||void 0===i?void 0:i.publishedURI)?Object(f.jsx)(l.a,{onClick:function(t){c(t,e.nodeId,!0),t.preventDefault()},children:Object(f.jsx)(I.a,{})}):null]}),s>0?Object(f.jsxs)(j.a,{variant:"caption",className:"labelCaption",color:"inherit",children:[s,Object(f.jsx)("img",{src:C,alt:"down"})]}):null]})},u))},P=a(22),M=a(26),D=a(59),A=a(42),F=a(12),R=function(e){var t,a=Object(P.b)(),o=e.searchTerm,l=e.dataset_id,s=JSON.parse(JSON.stringify([window.datasets[l].tree])),d=Object(P.c)((function(e){return e.sdsState.instance_selected})),c=Object(r.useState)([]),u=Object(i.a)(c,2),p=u[0],b=u[1],h=Object(r.useState)(s),v=Object(i.a)(h,2),m=v[0],g=v[1],j=Object(P.c)((function(e){return e.widgets})),S=function(e,t){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=window.datasets[l].splinter.tree_map.get(t);if(i){var n,o,s=null===(n=r.graph_reference)||void 0===n||null===(o=n.attributes)||void 0===o?void 0:o.publishedURI;s&&window.open(s,"_blank")}else{var d;a(Object(M.m)({dataset_id:l,graph_node:(null===r||void 0===r||null===(d=r.graph_reference)||void 0===d?void 0:d.id)||(null===r||void 0===r?void 0:r.id),tree_node:null===r||void 0===r?void 0:r.id,source:F.h})),void 0!==j[l]&&(j[l].status=D.WidgetStatus.ACTIVE,a(A.updateWidget(j[l]))),void 0!==j[l]&&(j[l].status=D.WidgetStatus.ACTIVE,a(A.updateWidget(j[l])))}},T=d.dataset_id.split(":");T[T.length-1]!==l&&p.length>0?b([]):T[T.length-1]===l&&d.source===F.d&&d.tree_node&&d.tree_node.path[0]!==p[0]&&b(d.tree_node.path);Object(r.useEffect)((function(){g(o.length>=3?function(e,t){var a=t.toLowerCase(),i=e.filter((function e(t){return!!t.text.toLowerCase().includes(a)||!!t.items&&(t.items=t.items.filter(e)).length}));return b(function(e){var t=[];return function e(a,i){for(var r in a){var n=a[r];if(void 0!==n)if(n&&"object"===typeof n)e(n,r);else if("id"===r)t.push(n);else if("path"===r)continue}}(e),t}(i)),i}(Object(y.a)(s),o):s)}),[o]),Object(r.useEffect)((function(){(0===m.length&&s.length>0||s.length>0&&m.length!==s.length)&&g(s)}));var w=n.a.createRef();return Object(f.jsx)(f.Fragment,{children:Object(f.jsx)(O.a,{className:"scrollbar treeViewer",defaultExpanded:p,defaultCollapseIcon:!1,defaultExpandIcon:!1,defaultEndIcon:!1,ref:w,expanded:p,onNodeToggle:function(e,t){var a,i;if(p.length!==(null===(a=t)||void 0===a?void 0:a.length)&&p[0]===(null===(i=t)||void 0===i?void 0:i[0])){for(var r=Object(y.a)(p),n=Object(y.a)(t);r[0]===n[0];)r.shift(),n.shift();t=r}var o=window.datasets[l].splinter.tree_map.get(t[0]);o&&void 0!==o.path&&o.path[0]!==p[0]?b(o.path):b([])},selected:[null===d||void 0===d||null===(t=d.tree_node)||void 0===t?void 0:t.id],children:function e(t){return t.map((function(t){var a,i=void 0;t.items&&t.items.length>0&&(i=e(t.items));var r=null===(a=i)||void 0===a?void 0:a.length,n=null!==t&&void 0!==t&&t.parent?{labelIcon:x.a,iconClass:"dataset"}:r>0?{labelIcon:_.a,iconClass:"folder"}:{labelIcon:k.a,iconClass:"file"};return Object(f.jsx)(N,{dataset:l,nodeId:null===t||void 0===t?void 0:t.id,id:null===t||void 0===t?void 0:t.id,labelText:null===t||void 0===t?void 0:t.text,labelIcon:null===n||void 0===n?void 0:n.labelIcon,labelInfo:r,children:i,iconClass:null===n||void 0===n?void 0:n.iconClass,onNodeSelect:S},null===t||void 0===t?void 0:t.id)}))}(m)})})},U=a(383),B=a.n(U),L=function(e){var t=e.expand,a=e.setExpand,i=e.searchTerm,n=Object(P.c)((function(e){return e.sdsState.datasets})),s=Object(P.c)((function(e){return e.sdsState.instance_selected}));Object(r.useEffect)((function(){var e;if(null!==s&&void 0!==s&&null!==(e=s.tree_node)&&void 0!==e&&e.id){var t,a=document.getElementById(null===s||void 0===s||null===(t=s.tree_node)||void 0===t?void 0:t.id);a&&a.scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"})}}),[s]);return Object(f.jsx)(o.a,{className:"sidebar-body",children:t?(null===n||void 0===n?void 0:n.length)>0?Object(f.jsxs)(f.Fragment,{children:[Object(f.jsx)(j.a,{component:"h3",children:"Uploaded Instances"}),Object(f.jsx)(o.a,{className:"scrollbar",children:n.map((function(e,t){return Object(f.jsx)(R,{searchTerm:i,dataset_id:e},"tree_"+t)}))})]}):Object(f.jsx)(f.Fragment,{children:Object(f.jsx)(j.a,{className:"no-instance",children:"No instances to display yet."})}):Object(f.jsx)(l.a,{"aria-label":"toggle",onClick:function(){return a(!t)},className:"shrink-btn",children:Object(f.jsx)(B.a,{})})})},H=a(575),z=a(31),W=function(e){return Object(f.jsxs)(o.a,{children:[Object(f.jsx)(H.a,{style:{marginBottom:"1rem",background:"rgba(255, 255, 255, 0.10)"}}),Object(f.jsxs)(o.a,{display:"flex",justifyContent:e.local?"space-around":"center",children:[e.local?Object(f.jsxs)(u.a,{variant:"contained",disableElevation:!0,color:"primary",fullWidth:!0,onClick:function(){return e.setOpenUploadDialog(!0)},children:["+ ",F.a]}):null,Object(f.jsxs)(u.a,{variant:"contained",disableElevation:!0,color:"primary",fullWidth:!0,onClick:function(){return e.setOpenDatasetsListDialog(!0)},children:["+ ",e.expand?z.text.datasetsButtonText:null]})]}),Object(f.jsx)(H.a,{style:{margin:"1rem 0",background:"rgba(255, 255, 255, 0.10)"}}),e.expand&&Object(f.jsx)(o.a,{display:"flex",justifyContent:"center",children:Object(f.jsx)(j.a,{variant:"subtitle2",style:{color:"#fff"},children:" Powered by MetaCell"})})]})};t.a=function(e){var t=Object(r.useState)(!0),a=Object(i.a)(t,2),n=a[0],l=a[1],s=Object(r.useState)(""),d=Object(i.a)(s,2),c=d[0],u=d[1];return Object(f.jsxs)(o.a,{className:"sidebar"+(n?"":" shrink"),children:[Object(f.jsx)(g,{setExpand:l,expand:n,setSearchTerm:u,searchTerm:c}),Object(f.jsx)(L,{setExpand:l,expand:n,searchTerm:c}),Object(f.jsx)(W,{setExpand:l,expand:n,openUploadDialog:e.openUploadDialog,setOpenUploadDialog:e.setOpenUploadDialog,openDatasetsListDialog:e.openDatasetsListDialog,setOpenDatasetsListDialog:e.setOpenDatasetsListDialog,local:e.local})]})}},424:function(e,t,a){"use strict";var i=a(378),r=a.n(i),n=a(19),o=a.p+"static/media/curve.e6ef8395.svg",l=a.p+"static/media/linewithradius.eb303573.svg",s=a.p+"static/media/filled-folder.139a09e7.svg",d=a.p+"static/media/filled-file.1b51516a.svg",c=a.p+"static/media/filled-dataset.834e911d.svg",u=a(188),p=a(189),b=a(190),h=n.a.primaryColor,v=n.a.secondaryColor,m=n.a.primaryTextColor,f=n.a.lightBorderColor,g=n.a.radius,j=n.a.primaryColorHover,y=n.a.whiteColor,O=n.a.outlinedButtonHover,x=n.a.primaryBgColor,_=n.a.scrollbarBg,k=n.a.iconButtonHover,S=n.a.primaryTransition,T=n.a.fontFamily,w=n.a.barSuccessColor,C=n.a.gutter,I=n.a.errorColor,E=n.a.tabsBgColor,N=n.a.progressBgPrimary,P=n.a.dropzoneBorderColor,M=n.a.dropzoneTextColor,D=n.a.inputFocusShadow,A=n.a.successInputFocusShadow,F=n.a.placeHolderColor,R=n.a.dialogShadow,U=n.a.tabsBorderColor,B=n.a.dialogBodyBgColor,L=n.a.sideBarTextColor,H=n.a.sideBarLabelColor,z=n.a.chipBgColor,W=n.a.progressErrorBg,G=n.a.treeBorderColor,V=n.a.grey700,J=n.a.grey500,Z=n.a.grey100,q=n.a.grey400,Y=n.a.grey50,Q=n.a.grey25,$=n.a.grey600,K=n.a.gray800,X=n.a.gray400,ee=n.a.gray25,te=r()({typography:{fontFamily:T,h3:{fontWeight:"600",fontSize:"1.5rem",lineHeight:"1.8125rem",color:m}},overrides:{MuiBreadcrumbs:{root:{marginTop:".25rem"},ol:{lineHeight:1},separator:{marginLeft:".25rem",marginRight:".25rem",color:M},li:{fontSize:".75rem",lineHeight:".875rem",letterSpacing:".00375rem",fontWeight:"500",color:M,"& a":{color:h},"& p":{fontSize:".75rem",lineHeight:".875rem",letterSpacing:".00375rem",fontWeight:"500",color:M}}},MuiChip:{root:{backgroundColor:z,borderRadius:".3125rem",display:"inline-flex",alignItems:"center",height:"1.375rem",marginTop:".5rem",marginRight:".375rem","& .MuiChip-label":{padding:"0.25rem 0.375rem",fontSize:".75rem",color:X,backgroundColor:ee,borderRadius:"0.3125rem"}}},MuiCircularProgress:{colorPrimary:{color:y}},MuiLinearProgress:{root:{borderRadius:".125rem"},colorPrimary:{backgroundColor:N},colorSecondary:{backgroundColor:N},barColorPrimary:{backgroundColor:h,borderRadius:".25rem"},barColorSecondary:{backgroundColor:w,borderRadius:".25rem"}},MuiDropzoneArea:{root:{borderWidth:"0.09375rem",borderColor:P,borderRadius:".5rem",height:"8.75rem",minHeight:"8.75rem",backgroundColor:"transparent",display:"flex",alignItems:"center",justifyContent:"center","& + .uploaded-files":{marginTop:"1rem"},"&.hide":{display:"none"},"& .MuiDropzoneArea-textContainer":{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center","& .MuiDropzoneArea-text":{margin:"0",fontWeight:"600",fontSize:".75rem",lineHeight:".875rem",letterSpacing:"-0.01em",order:2,marginTop:".6875rem",color:M},"& svg":{color:h}}}},MuiOutlinedInput:{root:{backgroundColor:y,borderRadius:".5rem","&.Mui-disabled":{color:M,"& .MuiOutlinedInput-notchedOutline":{borderColor:"transparent"}},"&.Mui-focused":{"& .MuiOutlinedInput-notchedOutline":{borderWidth:".0625rem",borderColor:h,boxShadow:"0 0 0 .1875rem ".concat(D)}},"&:hover":{"& .MuiOutlinedInput-notchedOutline":{borderColor:h}},"&.field-success":{"& .MuiOutlinedInput-input":{color:w},"& .MuiOutlinedInput-notchedOutline":{borderColor:w},"&:hover":{"& .MuiOutlinedInput-notchedOutline":{borderColor:w}},"&.Mui-focused":{"& .MuiOutlinedInput-notchedOutline":{borderWidth:".0625rem",borderColor:w,boxShadow:"0 0 0 .1875rem ".concat(A)}}}},notchedOutline:{borderColor:"transparent"},input:{fontSize:".75rem",letterSpacing:"-0.01em",padding:".75rem 0","&::placeholder":{color:F}},adornedStart:{paddingLeft:".75rem","& .MuiInputAdornment-root":{marginTop:"0 !important"}},adornedEnd:{paddingRight:".75rem"}},MuiDialog:{paperWidthSm:{width:"25rem",borderRadius:".75rem",boxShadow:"0 .25rem 3.125rem ".concat(R)}},MuiTabs:{root:{minHeight:".0625rem","&:not(.rounded)":{borderTop:".0625rem solid ".concat(U),borderBottom:".0625rem solid ".concat(U),padding:C+2},"&.rounded":{boxShadow:"inset 0 0 .125rem ".concat(R),background:E,padding:".25rem .3125rem",borderRadius:"2.5rem",width:"14.75rem",display:"flex",alignItems:"center",margin:"0 auto"},"& .MuiTabs-indicator":{display:"none !important"}}},MuiTab:{root:{minWidth:".0625rem !important",textTransform:"none",minHeight:".0625rem","&:not(.rounded)":{padding:".5rem",borderRadius:g,fontWeight:500,fontSize:"1.125rem",lineHeight:"1.375rem",letterSpacing:"-0.03em",color:"".concat(m," !important"),"&:not(.Mui-selected)":{opacity:.4}},"&.rounded":{width:"50%",padding:0,fontSize:".75rem",lineHeight:".875rem",borderRadius:"2.5rem",height:"2.25rem",textAlign:"center",letterSpacing:"-0.01em",color:h,"&:not(.Mui-selected)":{opacity:1},"&.Mui-selected":{background:h,color:y}}}},MuiFilledInput:{root:{fontFamily:T,backgroundColor:J,height:"2.375rem",borderRadius:"".concat(g," !important"),paddingRight:"0.4375rem !important","&:hover":{backgroundColor:J},"& .MuiInputAdornment-positionStart":{marginTop:"0 !important"}},input:{paddingTop:0,paddingBottom:0,fontSize:"0.75rem",letterSpacing:"-0.01em",color:Z,"&::placeholder":{color:Z,fontWeight:"400",fontSize:".75rem"}},adornedEnd:{"& .MuiButton-root":{padding:"0.3125rem",minWidth:1,fontSize:"0.75rem",fontWeight:"600",height:"auto",color:y}}},MuiIconButton:{root:{padding:0,borderRadius:g,backgroundColor:f,"&:hover":{backgroundColor:k}}},MuiButton:{root:{borderRadius:g,height:"2.375rem",padding:0,minWidth:"9.875rem"},label:{textTransform:"none",display:"flex",fontWeight:600,"& img":{marginRight:".25rem"}},containedPrimary:{backgroundColor:h,"&:hover":{backgroundColor:j},"&.Mui-disabled":{backgroundColor:P,color:y}},outlinedPrimary:{borderColor:h,color:h,padding:"0.75rem","&:hover":{backgroundColor:O}}},MuiCssBaseline:{"@global":{"*, *::before, *::after":{boxSizing:"border-box"}," body":{backgroundColor:v},".main-structure":{display:"flex",overflow:"hidden"},".sidebar-body":{boxShadow:"0px -75px 49px -41px #212B45 inset"},".scrollbar":{overflow:"auto","&::-webkit-scrollbar":{width:"0.25rem","&:horizontal":{height:"0.25rem"}},"&::-webkit-scrollbar-thumb":{background:_,borderRadius:".25rem"}},".noscrollbar":{overflow:"auto",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},"& .overlay-button-container":{position:"sticky",bottom:0,zIndex:1e3,padding:"20px 0",background:"linear-gradient(180deg, rgb(255 255 255 / 87%) 8%, #FFF 100%)",display:"flex",justifyContent:"center"},"& .overlay-button":{padding:"10px 20px",width:"3rem",height:"3rem",backgroundColor:"rgba(46, 58, 89, 0.10)",color:"#2E3A59",borderRadius:"50%",cursor:"pointer"},".dialog":{"&_body":{background:B,padding:"1rem","& .MuiButton-root":{marginTop:".75rem"}},"&_header":{padding:"1rem",display:"flex",flexDirection:"column",paddingBottom:"3rem","& img":{cursor:"pointer",marginLeft:"auto",width:"auto",marginBottom:".1875rem"},"& h3":{fontWeight:"600",fontSize:"1.5rem",lineHeight:"1.8125rem",textAlign:"center",letterSpacing:"-0.03em",color:m}}},".sidebar":{width:"18.75rem",overflow:"hidden",backgroundColor:V,height:"100vh",flexShrink:0,padding:"1rem 0.75rem",display:"flex",flexDirection:"column",transition:S,"&.shrink":{width:"4.125rem",transition:S,"& .sidebar":{"&-header":{"&> img":{marginBottom:"1.1875rem",paddingBottom:"1.1875rem",borderBottom:"0.0625rem solid ".concat(f)}},"&-body":{"& ul":{display:"none"}},"&-footer":{"& .MuiButton-root":{"& img":{margin:"0"}}}},"& .MuiButtonBase-root":{padding:0,width:"2.25rem",minWidth:"0.0625rem",margin:"0 auto",display:"block",height:"2.25rem","&.shrink-btn":{backgroundColor:Q,color:$,"& .MuiSvgIcon-root":{fontSize:"1rem"}}}},"&:not(.shrink)":{"& .sidebar":{"&-header":{"& .MuiIconButton-root":{backgroundColor:"transparent"},"& .MuiFormControl-root":{marginTop:"0.875rem"}},"&-footer":{"& .MuiIconButton-root":{width:"1rem",height:"1rem",borderRadius:g-4},"& .MuiButton-contained":{width:"100%","& img":{marginRight:"0.3125rem"}}}}},"&-header":{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:"1.1875rem",borderBottom:"0.0625rem solid ".concat(f),flexWrap:"wrap","&> img":{cursor:"pointer",maxWidth:"100%",transition:S}},"&-body":{padding:"1.1875rem 0.75rem",height:"calc(100% - 14.0625rem)",margin:"0 -0.75rem",flexGrow:1,position:"relative","&::before":{content:'""',position:"absolute",right:"0.75rem",bottom:".5rem",width:".25rem",height:".25rem",background:v,zIndex:"9999"},"& .MuiTreeItem-root > .MuiTreeItem-content .MuiTreeItem-label":{borderRadius:".5rem",background:"transparent",border:"0.03125rem solid transparent",minWidth:"10rem"},"& .MuiTreeItem-root.Mui-selected > .MuiTreeItem-content .MuiTreeItem-label":{background:"linear-gradient(0deg, ".concat(f,", ").concat(f,"), ").concat(v),borderColor:h},"& .MuiTreeItem-root.Mui-selected > .MuiTreeItem-content .MuiTreeItem-label:hover, & .MuiTreeItem-root.Mui-selected:focus > .MuiTreeItem-content .MuiTreeItem-label":{background:"linear-gradient(0deg, ".concat(f,", ").concat(f,"), ").concat(v),borderColor:h},"& .MuiTreeItem-content":{position:"relative",zIndex:"1"},"& .MuiTreeItem-root":{"&.Mui-selected > .MuiTreeItem-content .dataset .labelIcon":{backgroundImage:"url(".concat(c,")")},"&.Mui-selected > .MuiTreeItem-content .file .labelIcon":{backgroundImage:"url(".concat(d,")")},"&.Mui-selected > .MuiTreeItem-content .folder .labelIcon":{backgroundImage:"url(".concat(s,")")},"& .dataset":{"& .labelIcon":{width:"0.75rem",height:"0.8125rem",fontSize:0,backgroundImage:"url(".concat(u.a,")")}},"& .file":{"& .labelIcon":{width:"0.6875rem",height:"0.875rem",fontSize:0,backgroundImage:"url(".concat(b.a,")")},"& .labelText":{display:"flex",justifyContent:"space-between",alignItems:"center","& .MuiSvgIcon-root":{fontSize:".875rem",color:Y}}},"& .folder":{"& .labelIcon":{height:"0.75rem",width:"0.9375rem",fontSize:0,backgroundImage:"url(".concat(p.a,")")}}},"& .labelRoot":{display:"flex",padding:"0.5625rem 0.6875rem"},"& .labelIcon":{marginRight:"0.625rem",flexShrink:0},"& .labelText":{fontWeight:"normal",flexGrow:1,fontSize:"0.8125rem",lineHeight:"1rem",color:y},"& .MuiTreeItem-group":{paddingLeft:"1.4375rem",margin:0},"& .labelCaption":{height:"1rem",backgroundColor:q,padding:"0 0.25rem",display:"flex",alignItems:"center",borderRadius:"0.5rem",fontWeight:"600",fontSize:"0.625rem",lineHeight:"0.75rem",minWidth:"2rem",justifyContent:"center",color:Y,letterSpacing:"-0.01em","& img":{marginLeft:"0.125rem"}},"& .scrollbar":{overflow:"auto",height:"calc(100% - 1rem)"},"& h3":{fontWeight:"600",fontSize:"0.75rem",lineHeight:"0.9375rem",letterSpacing:"-0.01em",marginBottom:"0.75rem",color:y,padding:"0 0.6875rem"},"& .MuiTreeView-root":{"& .MuiTreeItem-root":{"& .MuiTreeItem-group":{"& .MuiCollapse-wrapperInner":{"& .MuiTreeItem-root":{"&.Mui-expanded":{"& .labelCaption":{"& img":{transform:"rotate(-180deg)"}}}}}}}},"& ul":{position:"relative","&::before":{content:'""',height:"calc(100% - 0.85rem)",width:"0.0625rem",position:"absolute",left:"1.0625rem",borderRadius:"3.125rem",top:"-0.5625rem",backgroundImage:"url(".concat(l,")"),backgroundRepeat:"repeat"},"& .MuiTreeItem-root":{position:"relative","&::before":{content:'""',height:"0.875rem",width:"1.4375rem",backgroundImage:"url(".concat(o,")"),position:"absolute",top:"0.75rem",backgroundRepeat:"no-repeat",left:"-0.375rem"},"&::after":{content:'""',height:"0.0625rem",borderRadius:"3.125rem",width:"0.5rem",backgroundColor:G,position:"absolute",left:"0",top:"1.0625rem",display:"none"},"&:hover":{background:"transparent"},"&:focus > .MuiTreeItem-content":{backgroundColor:"transparent"}}},"& .scrollbar > .MuiTreeView-root":{"&::before":{display:"none"},"& .MuiTreeItem-label":{paddingLeft:"0","&:hover":{background:"transparent"},"&:focus":{backgroundColor:"transparent"}},"& .MuiTreeItem-iconContainer":{display:"none"},"&> .MuiTreeItem-root":{"&::before":{display:"none"},"&::after":{display:"none"},"&:hover":{background:"transparent"},"&:focus > .MuiTreeItem-content":{backgroundColor:"transparent"},"&.Mui-expanded":{"&> .MuiTreeItem-content":{"&> .MuiTreeItem-label":{"&> div":{"& span":{"& img":{transform:"rotate(-180deg)"}}}}}},"& .MuiTreeItem-content":{"&:hover":{background:"transparent"}},"&> .MuiTreeItem-content":{"&> .MuiTreeItem-label":{"&> div":{"& p":{fontSize:"0.75rem",lineHeight:"0.9375rem",textOverflow:"ellipsis",whiteSpace:"nowrap",overflow:"hidden"}}}}}},"& .no-instance":{fontSize:"0.75rem",display:"flex",alignItems:"center",justifyContent:"center",height:"100%",fontWeight:"600",letterSpacing:"-0.01em",color:Z,textAlign:"center"}},"&-footer":{boxShadow:"0 -4.75rem 3.0625rem -2.5625rem ".concat(v),borderTop:"0.0625rem solid ".concat(f),paddingTop:"1rem",position:"relative",zIndex:"2","& .MuiButton-contained":{minHeight:"2.375rem",padding:0,width:"100%","& .MuiButton-label":{display:"flex"}},"& .support":{display:"flex",alignItems:"center",justifyContent:"space-between",marginTop:"1rem",paddingTop:"1rem",height:"3.3125rem",borderTop:"0.0625rem solid ".concat(f),"& p":{display:"flex",alignItems:"center",fontSize:"0.75rem",letterSpacing:"-0.01em",color:n.a.whiteColor,fontWeight:"400","& img":{marginRight:"0.625rem"}}}}},".content":{backgroundColor:x,flexGrow:1,borderRight:".0625rem solid ".concat(U),padding:"1rem","&:not(.full-round)":{borderTopRightRadius:0,borderBottomRightRadius:0,borderRight:"none"}},".MuiBox-empty":{display:"flex",alignItems:"center",height:"100%",justifyContent:"center",textAlign:"center",flexDirection:"column","& h3":{marginBottom:"1.5rem"}},".uploaded-files":{"&_row":{background:y,borderRadius:".5rem",display:"flex",alignItems:"center",padding:".5rem",marginTop:".5rem","&.error":{"& .MuiLinearProgress-colorSecondary":{backgroundColor:W},"& p":{color:I},"& strong":{color:I}},"& .wrap":{padding:"0 0.9375rem",flexGrow:"1",display:"flex",justifyContent:"space-between",flexWrap:"wrap","& .MuiLinearProgress-root":{width:"100%",marginTop:".3125rem"},"& p":{fontWeight:"600",fontSize:".75rem",lineHeight:".875rem",letterSpacing:"-0.01em",color:L,textOverflow:"ellipsis",whiteSpace:"nowrap",overflow:"hidden",maxWidth:"6.25rem"},"& span":{fontWeight:"600",fontSize:".75rem",lineHeight:".875rem",letterSpacing:"-0.01em",color:M},"& strong":{fontWeight:"600",fontSize:".75rem",lineHeight:".875rem",letterSpacing:"-0.01em",color:w}},"& img":{flexShrink:"0"}},"& h3":{fontWeight:"600",fontSize:".75rem",lineHeight:".875rem",letterSpacing:"-0.01em",marginBottom:"1rem",color:M}},".secondary-sidebar":{width:"100%",minHeight:"95vh",display:"flex",flexShrink:0,flexDirection:"column",backgroundColor:y,position:"relative",transition:"all ease-in-out .3s","&:not(.in)":{marginRight:"-18.75rem",transition:"all ease-in-out .3s"},"&_breadcrumb":{padding:"1rem",position:"sticky",top:0,zIndex:"5",background:y,"& .MuiBreadcrumbs-li":{lineHeight:"1.5","& a":{cursor:"pointer",lineHeight:"normal",color:"#475467",fontSize:"0.75rem",fontWeight:500}},"& .MuiBreadcrumbs-separator":{margin:"0 .5rem",color:"#9198AB"}},"&_body":{flexGrow:1,maxHeight:"calc(100vh - 13rem)",height:"auto",overflow:"auto",paddingBottom:"1rem"},"&_footer":{display:"none",height:"5rem",alignItems:"center",justifyContent:"center",position:"fixed",right:"0",bottom:"0",width:"18.75rem",background:"linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, ".concat(y," 100%)"),"& img":{cursor:"pointer"}},"&.in":{"& .secondary-sidebar_footer":{display:"flex"}},"&::before":{content:'""',background:y,width:"1.875rem",top:0,left:"-1.875rem",height:"1.875rem",position:"absolute",zIndex:-1},"&::after":{content:'""',background:y,width:"1.875rem",left:"-1.875rem",bottom:0,height:"1.875rem",position:"absolute",zIndex:-1},"&_header":{textAlign:"center",padding:"0 1rem 1rem",borderBottom:".0625rem solid ".concat(U),"& .wrap":{display:"flex",alignItems:"center",justifyContent:"space-between","& img":{margin:"0",cursor:"pointer"}},"& img":{display:"block",margin:"0 auto"},"& h3":{fontWeight:"600",fontSize:"1.5rem",lineHeight:"1.8125rem",marginBottom:".25rem",marginTop:".75rem"},"&> p ":{fontWeight:"500",fontSize:".75rem",lineHeight:".875rem",letterSpacing:"-0.01em",color:F}},"& .tab-content":{padding:"1rem 1rem","&+ .tab-content":{borderTop:".0625rem solid ".concat(U)},"& .title-container":{display:"flex",alignItems:"center",marginBottom:"1.3rem","& h3":{marginBottom:0,marginLeft:".25rem"}},"& h3":{fontSize:"1.125rem",fontWeight:"500",lineHeight:"1.375rem",letterSpacing:"-0.03em",color:K,marginBottom:"1.3rem"},"& .tab-content-row":{"& .chip-overflow":{overflow:"auto",marginRight:"-1rem"},"&> a":{display:"inline-flex",fontSize:".75rem",lineHeight:"1rem",color:h,marginTop:".5rem","&:not(:last-child)":{marginRight:".75rem"},"& img":{marginRight:".25rem"}},"&+ .tab-content-row":{marginTop:"1rem"},"& label":{fontWeight:"600",display:"block",fontSize:".75rem",lineHeight:".875rem",letterSpacing:"-0.01em",color:H,"&+ p":{marginTop:".25rem",color:X,fontSize:".75rem",fontWeight:"400",lineHeight:"1rem"}},"&> p":{fontSize:".75rem",lineHeight:"1rem",color:m,wordWrap:"break-word"},"& .MuiList-root":{padding:"0","& .MuiListItemText-root":{margin:"0","&+ .MuiListItemText-root":{marginTop:".5rem"},"&>span":{display:"flex","& label":{width:"9.5rem",paddingRight:".5rem","&+ p":{fontSize:".75rem",lineHeight:"1rem",marginTop:"0",color:m}}}}}}}},".custom-chips":{display:"flex",marginTop:".25rem",overflow:"auto","&_col":{display:" flex",flexShrink:0,background:x,borderRadius:".5rem",padding:".5rem .75rem 0.5rem 0.5rem","&:not(:last-child)":{marginRight:".5rem"},"& img":{flexShrink:0,marginRight:".25rem"},"& .wrap":{whiteSpace:"nowrap","& strong":{display:"block",lineHeight:".875rem",fontSize:".75rem",color:m},"& span":{display:"block",lineHeight:".875rem",fontSize:".75rem",color:F}}}},".graph-view":{height:"100%"},".graph-view_controls":{width:".75rem",position:"absolute",bottom:"1rem",zIndex:"100"},".user-manual_controls":{position:"absolute",bottom:"0",right:"0rem",zIndex:"100",padding:".5rem"}}}}});t.a=te},455:function(e,t,a){},457:function(e,t,a){},483:function(e,t){},485:function(e,t){},567:function(e,t,a){"use strict";a.r(t);var i=a(0),r=a.n(i),n=a(24),o=a.n(n),l=(a(455),a(377)),s=a(401),d=a(42),c=a(26),u=a(15),p=a(11),b=a(366),h=a(370),v=a(371),m=a(368),f=a(386),g=a(198),j=a(621),y=a(625),O=a(609),x=a(69),_=a(55),k=a(618),S=a(412),T=a.n(S),w=a(414),C=a.n(w),I=a(409),E=a.n(I),N=a(411),P=a.n(N),M=a(410),D=a.n(M),A=a(413),F=a.n(A),R=a(22),U=a(402),B=a.n(U),L=a(12),H=a(8),z=a(161),W=1e3,G={link:"#CFD4DA",linkHover:"purple",hoverRect:"#CFD4DA",textHoverRect:"#3779E1",textHover:"white",textColor:"#2E3A59",collapsedFolder:"red",nodeSeen:"#E1E3E8",textBGSeen:"#6E4795"},V={label:"Tree View",layout:"td",maxNodesLevel:function(e){return e.hierarchyVariant}},J={label:"Vertical Layout",layout:"lr",maxNodesLevel:function(e){return e.hierarchyVariant}},Z={label:"Radial View",layout:"null",maxNodesLevel:function(e){return e.radialVariant}},q=function(e,t,a,i,r,n,o,l){i<2*n&&(n=i/2),r<2*n&&(n=r/2),e.globalAlpha=l||1,e.fillStyle=o,e.beginPath(),e.moveTo(t+n,a),e.arcTo(t+i,a,t+i,a+r,n),e.arcTo(t+i,a+r,t,a+r,n),e.arcTo(t,a+r,t,a,n),e.arcTo(t,a,t+i,a,n),e.closePath(),e.fill()},Y=function e(t,a,i){var r;null===t||void 0===t||null===(r=t.childLinks)||void 0===r||r.forEach((function(t){void 0!==a&&(t.target.collapsed=a,e(t.target,a,i),i.links=i.links+1)}))},Q=function(e){return z.cluster().nodeSize([1,100]).separation((function(e,t){return 1+z.sum([e,t].map((function(e){return 15})))}))(function(e){return z.hierarchy(e)}(e))},$=function(e,t){var a,i,r,n,o,l,s,d=Object.fromEntries(null===(a=window.datasets[e].graph)||void 0===a||null===(i=a.nodes)||void 0===i?void 0:i.map((function(e){return[e.id,e]})));null===(r=window.datasets[e].graph)||void 0===r||null===(n=r.links)||void 0===n||n.forEach((function(e){var t,a,i,r,n=e.source.id,o=e.target.id;null!==(t=d[n])&&void 0!==t&&null!==(a=t.childLinks)&&void 0!==a&&a.find((function(e){return n===e.source.id&&o===e.target.id}))||(null===(i=d[n])||void 0===i||null===(r=i.childLinks)||void 0===r||r.push(e))}));var c=[],p=[],b=window.datasets[e].graph.levelsMap;!function t(){var a,i,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:d[null===(a=window.datasets[e].graph)||void 0===a||null===(i=a.nodes)||void 0===i?void 0:i[0].id];if(c.push(r),!r.collapsed){p.push.apply(p,Object(u.a)(r.childLinks));var n=r.childLinks.map((function(e){return"object"===typeof e.target?e.target:d[e.target]}));null===n||void 0===n||n.forEach(t)}}();var h={};c.forEach((function(e){h[e.level]?h[e.level].push(e):h[e.level]=[e]}));var v=parseInt(Object.keys(h).reduce((function(e,t){return h[e].length>h[t].length?e:t}))),m=null===(o=b[1])||void 0===o?void 0:o[0],f={type:"node",name:null===m||void 0===m?void 0:m.id,value:(null===(l=b[1])||void 0===l||null===(s=l[0])||void 0===s?void 0:s.level)-1,children:[]};!function e(t,a){var i;null!==t&&(null===(i=t.neighbors)||void 0===i||i.forEach((function(i){var r;if(null!==c&&void 0!==c&&c.find((function(e){return e.id===i.id})))if((null===(r=i.neighbors)||void 0===r?void 0:r.length)>1){if((null===i||void 0===i?void 0:i.level)>t.level){var n={type:"node",name:i.id,value:(null===i||void 0===i?void 0:i.level)-1,children:[]};a.children.push(n),e(i,n)}}else a.children.push({type:"leaf",name:i.id,value:(null===i||void 0===i?void 0:i.level)-1})})))}(m,f);var g=Q(f).descendants(),j={};return g.forEach((function(e){var t;return j[null===(t=e.data)||void 0===t?void 0:t.name]=e})),c.forEach((function(e){t===V.layout&&j[e.id]&&(e.xPos=j[e.id].x,e.fx=e.xPos,e.fy=50*e.level),t===J.layout&&j[e.id]&&(e.yPos=j[e.id].x,e.fy=e.yPos,e.fx=50*e.level)})),{nodes:c,links:p,levelsMap:b,hierarchyVariant:20*v}},K=a(31),X=a(407),ee=a.n(X),te=a(408),ae=a.n(te),ie=a(17),re=a(425),ne=a(1),oe=function(e){return Object(ne.jsxs)(re.a,Object(ie.a)(Object(ie.a)({width:"48",height:"48",viewBox:"0 0 48 48",fill:"none"},e),{},{children:[Object(ne.jsx)("rect",{width:"48",height:"48",rx:"24",fill:"#3779E1","fill-opacity":"0.1"}),Object(ne.jsx)("path",{d:"M15.3086 16.1797C15.3086 18.0664 18.6133 19.3906 23.5 19.3906C28.3867 19.3906 31.6914 18.0664 31.6914 16.1797C31.6914 14.2109 28.4102 12.8398 23.5 12.8398C18.5898 12.8398 15.3086 14.2109 15.3086 16.1797ZM23.5 26.6445C19.1523 26.6445 15.8945 25.6602 13.4219 23.5625V16.1797C13.4219 13.2266 17.4531 11.1875 23.5 11.1875C29.5469 11.1875 33.5781 13.2266 33.5781 16.1797V23.5625C31.1055 25.6602 27.8477 26.6445 23.5 26.6445ZM13.4219 30.3594V25.6016C16.0352 27.5234 19.2812 28.4141 23.5 28.4141C27.7188 28.4141 30.9648 27.5234 33.5781 25.6016V30.3594C33.5781 33.5938 29.5117 35.8789 23.5 35.8789C17.4883 35.8789 13.4219 33.5938 13.4219 30.3594Z",fill:"#3779E1"})]}))},le=function(e){return Object(ne.jsx)(re.a,Object(ie.a)(Object(ie.a)({width:"12",height:"13",viewBox:"0 0 12 13",fill:"none"},e),{},{children:Object(ne.jsx)("path",{d:"M6.00293 7.39568C6.23113 7.39568 6.45363 7.32151 6.72747 7.16178L11.1888 4.57172C11.6509 4.30358 11.8277 4.0925 11.8277 3.77873C11.8277 3.47066 11.6509 3.25957 11.1888 2.99144L6.72747 0.401384C6.45363 0.241645 6.23113 0.16748 6.00293 0.16748C5.76903 0.16748 5.55224 0.241645 5.2727 0.401384L0.81141 2.99144C0.349307 3.25957 0.172453 3.47066 0.172453 3.77873C0.172453 4.0925 0.349307 4.30358 0.81141 4.57172L5.2727 7.16178C5.55224 7.32151 5.76903 7.39568 6.00293 7.39568ZM6.00293 10.2082C6.20831 10.2082 6.38517 10.1112 6.62478 9.96862L11.5253 7.0762C11.7364 6.94499 11.8334 6.75672 11.8334 6.57987C11.8334 6.34596 11.6623 6.152 11.5025 6.07783L6.21972 9.12999C6.13415 9.17563 6.06569 9.20986 6.00293 9.20986C5.93447 9.20986 5.86601 9.17563 5.78044 9.12999L0.497636 6.07783C0.337897 6.152 0.166748 6.34596 0.166748 6.57987C0.166748 6.75672 0.269438 6.95069 0.480522 7.0762L5.37539 9.96862C5.6207 10.1112 5.79185 10.2082 6.00293 10.2082ZM6.00293 12.8325C6.20831 12.8325 6.38517 12.7355 6.62478 12.5929L11.5253 9.70049C11.7307 9.58068 11.8334 9.38101 11.8334 9.20415C11.8334 8.97025 11.6623 8.78199 11.5025 8.70212L6.21972 11.76C6.13415 11.8056 6.06569 11.8399 6.00293 11.8399C5.93447 11.8399 5.86601 11.8056 5.78044 11.76L0.497636 8.70212C0.337897 8.78199 0.166748 8.97025 0.166748 9.20415C0.166748 9.38101 0.269438 9.58068 0.480522 9.70049L5.37539 12.5929C5.6207 12.7355 5.79185 12.8325 6.00293 12.8325Z",fill:"#435070"})}))},se={position:"absolute",left:0,right:0,bottom:0,top:0,margin:"auto",color:"#11bffe",size:"55rem"},de=function(e){var t,a=Object(R.b)(),n=r.a.useRef(null),o=Object(i.useState)(null),l=Object(p.a)(o,2),s=l[0],d=l[1],S=Object(i.useState)(null),w=Object(p.a)(S,2),I=w[0],N=w[1],M=Object(i.useState)(new Set),A=Object(p.a)(M,2),U=A[0],z=A[1],Q=Object(i.useState)(new Set),X=Object(p.a)(Q,2),te=X[0],ie=X[1],re=r.a.useState(J),oe=Object(p.a)(re,2),de=oe[0],ce=oe[1],ue=r.a.useState(null),pe=Object(p.a)(ue,2),be=pe[0],he=pe[1],ve=Boolean(be),me=r.a.useState(!1),fe=Object(p.a)(me,2),ge=fe[0],je=fe[1],ye=r.a.useState({nodes:[],links:[]}),Oe=Object(p.a)(ye,2),xe=Oe[0],_e=Oe[1],ke=Object(R.c)((function(e){return e.sdsState.instance_selected.graph_node})),Se=Object(R.c)((function(e){return e.sdsState.instance_selected.source})),Te=Object(R.c)((function(e){return e.sdsState.group_selected.graph_node})),we=r.a.useState(!0),Ce=Object(p.a)(we,2),Ie=Ce[0],Ee=Ce[1],Ne=Object(i.useState)(new Set),Pe=Object(p.a)(Ne,2),Me=Pe[0],De=Pe[1],Ae=function(){he(null)},Fe=function(e){Ae(),ce(e),Be(),setTimeout((function(){Ue()}),100)},Re=function(e,t){var a,i,r,o;null===n||void 0===n||null===(a=n.current)||void 0===a||null===(i=a.ggv)||void 0===i||i.current.centerAt(e.x,e.y,W),null===n||void 0===n||null===(r=n.current)||void 0===r||null===(o=r.ggv)||void 0===o||o.current.zoom(2,W)},Ue=function(){var e,t;null===n||void 0===n||null===(e=n.current)||void 0===e||null===(t=e.ggv)||void 0===t||t.current.zoomToFit()},Be=function(){var t,a;if(de.layout!==V.layout||de.layout!==J.layout){var i,r,o,l,s,d,c,u,p,f,g,j;null===n||void 0===n||null===(i=n.current)||void 0===i||null===(r=i.ggv)||void 0===r||r.current.d3Force("link").distance(0).strength(1),null===n||void 0===n||null===(o=n.current)||void 0===o||null===(l=o.ggv)||void 0===l||l.current.d3Force("charge").strength(-200),null===n||void 0===n||null===(s=n.current)||void 0===s||null===(d=s.ggv)||void 0===d||d.current.d3Force("collision",b.a(20)),null===n||void 0===n||null===(c=n.current)||void 0===c||null===(u=c.ggv)||void 0===u||u.current.d3Force("x",h.a()),null===n||void 0===n||null===(p=n.current)||void 0===p||null===(f=p.ggv)||void 0===f||f.current.d3Force("y",v.a()),null===n||void 0===n||null===(g=n.current)||void 0===g||null===(j=g.ggv)||void 0===j||j.current.d3Force("manyBody",m.a().strength((function(t){var a;return-100*Math.sqrt(100/(null===(a=window.datasets[e.graph_id].graph.levelsMap[t.level])||void 0===a?void 0:a.length))})))}null===n||void 0===n||null===(t=n.current)||void 0===t||null===(a=t.ggv)||void 0===a||a.current.d3Force("center",null)};Object(i.useEffect)((function(){var t=$(e.graph_id,de.layout);_e(t),je(!0),Be(),setTimeout((function(){je(!1),Be()}),W)}),[]),Object(i.useEffect)((function(){var t=$(e.graph_id,de.layout);_e(t)}),[de]),Object(i.useEffect)((function(){document.addEventListener("nodeVisible",(function(t){var a=t.detail;if(null===a||void 0===a?void 0:a.find((function(t){var a;return(null===t||void 0===t||null===(a=t._attributes)||void 0===a?void 0:a.id)===e.graph_id}))){var i=$(e.graph_id,de.layout);_e(i),setTimeout((function(e){Be(),Ue()}),100)}})),document.addEventListener("nodeResized",(function(t){var a=t.detail;(null===a||void 0===a?void 0:a.find((function(t){var a;return(null===t||void 0===t||null===(a=t._attributes)||void 0===a?void 0:a.id)===e.graph_id})))&&Ue()}))})),Object(i.useEffect)((function(){var t,a,i,r,o;Te&&null!==Te&&void 0!==Te&&null!==(t=Te.dataset_id)&&void 0!==t&&t.includes(e.graph_id)&&(N(Te),Le(Te),null===n||void 0===n||null===(a=n.current)||void 0===a||null===(i=a.ggv)||void 0===i||i.current.centerAt(Te.x,Te.y,W),null===n||void 0===n||null===(r=n.current)||void 0===r||null===(o=r.ggv)||void 0===o||o.current.zoom(2,W))}),[Te]),Object(i.useEffect)((function(){I&&De((function(e){return new Set([].concat(Object(u.a)(e),[I.id]))}))}),[I]),Object(i.useEffect)((function(){var t,a,i,r,o,l=(null===ke||void 0===ke||null===(t=ke.tree_reference)||void 0===t||null===(a=t.dataset_id)||void 0===a?void 0:a.includes(e.graph_id))||(null===ke||void 0===ke||null===(i=ke.dataset_id)||void 0===i?void 0:i.includes(e.graph_id))||(null===ke||void 0===ke||null===(r=ke.attributes)||void 0===r||null===(o=r.dataset_id)||void 0===o?void 0:o.includes(e.graph_id));if(ke&&l){if((null===ke||void 0===ke?void 0:ke.id)!==(null===I||void 0===I?void 0:I.id)){for(var s=ke,d=(s.collapsed,s.parent),c=s;d&&null!==(u=d)&&void 0!==u&&u.collapsed;){var u;c=d,d=d.parent}if(c&&ke.collapsed&&"TREE"===Se){var p,b,h,v,m;if(c.type==H.b.Subject.key||c.type==H.b.Sample.key||c.type==H.b.Collection.key){c.collapsed=!1,Y(c,!1,{links:0});var f=$(e.graph_id,de.layout);_e(f)}if((null===(p=s.parent)||void 0===p?void 0:p.type)==H.b.Subject.key||(null===(b=s.parent)||void 0===b?void 0:b.type)==H.b.Sample.key||(null===(h=s.parent)||void 0===h?void 0:h.type)==H.b.Collection.key){Y(s.parent,!0,{links:0});var g=$(e.graph_id,de.layout);_e(g)}else{Y(s,!0,{links:0});var j=$(e.graph_id,de.layout);_e(j)}N(ke),Le(ke),null===n||void 0===n||null===(v=n.current)||void 0===v||null===(m=v.ggv)||void 0===m||m.current.centerAt(ke.x,ke.y,W)}}else{var y,O;Le(ke),null===n||void 0===n||null===(y=n.current)||void 0===y||null===(O=y.ggv)||void 0===O||O.current.centerAt(ke.x,ke.y,W)}var x=document.getElementById(ke.id+L.j);null===x||void 0===x||x.scrollIntoView({behavior:"smooth"})}}),[ke]);var Le=function(e){var t,a;(U.clear(),te.clear(),e)&&(U.add(e),null===(t=e.neighbors)||void 0===t||t.forEach((function(e){return U.add(e)})),null===(a=e.links)||void 0===a||a.forEach((function(e){return te.add(e)})));d(e),ie(te),z(U)};return Object(ne.jsx)("div",{className:"graph-view",children:ge?Object(ne.jsx)(g.a,{style:se}):Object(ne.jsx)(B.a,{ref:n,id:e.graph_id,data:xe,d2:!0,cooldownTicks:de.layout===V.layout||de.layout===J.layout?0:null===xe||void 0===xe||null===(t=xe.nodes)||void 0===t?void 0:t.length,onEngineStop:function(){Be(),I&&Re(ke)},linkColor:function(e){var t=G.link;return te.has(e)&&(t=U.has(e.source)||U.has(e.target)?G.linkHover:G.link),t},linkWidth:2,dagLevelDistance:de.layout!==V.layout&&de.layout!==J.layout?0:60,linkDirectionalParticles:1,forceRadial:de.layout!==V.layout&&de.layout!==J.layout?15:0,linkDirectionalParticleWidth:function(e){return te.has(e)?4:0},linkCanvasObjectMode:"replace",onLinkHover:function(e){U.clear(),te.clear(),e&&(te.add(e),U.add(e.source),U.add(e.target)),ie(te),z(U)},nodeCanvasObject:function(e,t){return function(e,t,a,i,r,n){var o,l=7.5,s=[18,18],d=[31.5,31.5],c=[e.x-d[0]/2,e.y-d[1]/2],u=[c[0],c[1]+d[1]];t.beginPath();try{t.drawImage.apply(t,[null===e||void 0===e?void 0:e.img,e.x-l,e.y-l].concat(s))}catch(g){var p=new Image;p.src=H.b.Unknown.image,e.img=p,t.drawImage.apply(t,[null===e||void 0===e?void 0:e.img,e.x-l-1,e.y-l].concat(s))}t.font="500 5px Inter, sans-serif",t.textAlign="center",t.textBaseline="top";var b=e.name;if(b.length>10)b=b.substr(0,9).concat("...");else if(Array.isArray(b)){var h;b=null===(h=b[0])||void 0===h?void 0:h.substr(0,9).concat("...")}var v=[b,e.x,u[1]];if(e===a||(null===e||void 0===e?void 0:e.id)===(null===i||void 0===i?void 0:i.id)||(null===e||void 0===e?void 0:e.id)===(null===r||void 0===r?void 0:r.id)?(q.apply(void 0,[t].concat(c,d,[1,G.hoverRec,.3])),q.apply(void 0,[t].concat(u,[d[0],d[1]/4,1,G.textHoverRect])),t.fillStyle=G.textHover):n.has(e.id)?(q.apply(void 0,[t].concat(c,d,[1,G.nodeSeen,.3])),q.apply(void 0,[t].concat(u,[d[0],d[1]/4,1,G.textBGSeen])),t.fillStyle=G.textHover):t.fillStyle=G.textColor,t.fillText.apply(t,v),null!==(o=e.childLinks)&&void 0!==o&&o.length&&e.collapsed){var m={links:0};Y(e,!0,m);var f=[m.links,e.x,u[1]];t.fillStyle=G.collapsedFolder,t.textAlign="center",t.textBaseline="bottom",t.fillText.apply(t,f),t.fillStyle=G.textColor}}(e,t,s,I,ke,Me)},nodeCanvasObjectMode:function(e){return"replace"},nodeVal:function(e){return de.layout===V.layout?(e.fx=e.xPos,e.fy=50*e.level):de.layout===J.layout&&(e.fx=50*e.level,e.fy=e.yPos),100/(e.level+1)},nodeRelSize:2.5,onNodeHover:Le,onNodeClick:function(t,i){return function(t,i){if(t.type===H.b.Subject.key||t.type===H.b.Sample.key||t.type===H.b.Collection.key){Y(t,t.collapsed,{links:0}),t.collapsed=!t.collapsed;var r=$(e.graph_id,de.layout);_e(r)}var n;Le(t),(null===t||void 0===t?void 0:t.id)!==(null===I||void 0===I?void 0:I.id)&&a(Object(c.m)({dataset_id:e.graph_id,graph_node:t.id,tree_node:null===t||void 0===t||null===(n=t.tree_reference)||void 0===n?void 0:n.id,source:L.d}));var o=document.getElementById(t.id+L.j);null===o||void 0===o||o.scrollIntoView({behavior:"smooth"})}(t)},onNodeRightClick:function(e,t){return Re(e)},dagMode:de.layout,onDagError:function(e){},enableNodeDrag:!1,enableZoomPanInteraction:!0,enablePointerInteraction:!0,controls:Object(ne.jsxs)("div",{children:[Object(ne.jsxs)("div",{className:"graph-view_controls",children:[Object(ne.jsxs)(f.a,{id:"layout-menu",anchorEl:be,keepMounted:!0,open:ve,onClose:Ae,children:[Object(ne.jsx)(j.a,{selected:Z.layout===de.layout,onClick:function(){return Fe(Z)},children:Z.label}),Object(ne.jsx)(j.a,{selected:V.layout===de.layout,onClick:function(){return Fe(V)},children:V.label}),Object(ne.jsx)(j.a,{selected:J.layout===de.layout,onClick:function(){return Fe(J)},children:J.label})]}),Object(ne.jsx)(y.a,{id:"button-report",title:"Change Graph Layout",children:Object(ne.jsx)(O.a,{"area-label":"GraphLayout","aria-controls":"layout-menu","aria-haspopup":"true",onClick:function(e){he(e.currentTarget)},children:Object(ne.jsx)(le,{})})}),Object(ne.jsx)(O.a,{"area-label":"ZoomIn",onClick:function(e){return function(e){var t=n.current.ggv.current.zoom(),a=1;t<2&&(a=.2),n.current.ggv.current.zoom(t+a,100)}()},children:Object(ne.jsx)(y.a,{id:"button-report",title:"Zoom In",children:Object(ne.jsx)(ee.a,{})})}),Object(ne.jsx)(O.a,{"area-label":"ZoomOut",onClick:function(e){return function(e){var t=n.current.ggv.current.zoom(),a=1;t<2&&(a=.2),n.current.ggv.current.zoom(t-a,100)}()},children:Object(ne.jsx)(y.a,{id:"button-report",title:"Zoom Out",children:Object(ne.jsx)(ae.a,{})})}),Object(ne.jsx)(O.a,{"area-label":"ResetCamera",onClick:function(e){return Ue()},children:Object(ne.jsx)(y.a,{id:"button-report",title:"Reset Camera",children:Object(ne.jsx)(E.a,{})})}),Object(ne.jsx)(O.a,{"area-label":"Expand",onClick:function(t){return function(t){var a,i;null===(a=window.datasets[e.graph_id].graph)||void 0===a||null===(i=a.nodes)||void 0===i||i.forEach((function(e){e.collapsed=Ie?!Ie:(null===e||void 0===e?void 0:e.type)===H.d.NamedIndividual.subject.type}));var r=$(e.graph_id,de.layout);_e(r),Ee(!Ie),setTimeout((function(){Ue()}),10)}()},children:Object(ne.jsx)(y.a,{id:"button-report",title:Ie?"Expand All":"Collapse All",children:Ie?Object(ne.jsx)(P.a,{}):Object(ne.jsx)(D.a,{})})}),Object(ne.jsx)(T.a,{})]}),Object(ne.jsx)("div",{className:"user-manual_controls",children:Object(ne.jsxs)(x.a,{display:"flex",justifyContent:"center",alignItems:"end",children:[Object(ne.jsx)(_.a,{justifyContent:"right",variant:"subtitle2",color:"primary",children:" Version 1"}),Object(ne.jsx)(O.a,{ustifyContent:"right",component:k.a,"area-label":"report",onClick:function(){return window.open(K.issues_url,"_blank")},children:Object(ne.jsx)(y.a,{id:"button-report",title:"Report Issues",children:Object(ne.jsx)(F.a,{})})}),Object(ne.jsx)(O.a,{ustifyContent:"right",component:k.a,"area-label":"manual",onClick:function(){return window.open(K.docs_url,"_blank")},children:Object(ne.jsx)(y.a,{id:"button-manual",title:"User Manual Documentation",children:Object(ne.jsx)(C.a,{})})})]})})]})})})},ce=a.p+"static/media/filter.335966db.svg",ue=function(){return Object(ne.jsx)(x.a,{className:"secondary-sidebar_footer",children:Object(ne.jsx)("img",{src:ce,alt:"FILTER"})})},pe=a.p+"static/media/help.c1d19ba0.svg",be=a(19),he=function(e){var t=e.node,a={color:be.a.dataset},i=void 0;return i=t.graph_node?t.graph_node.name:t.tree_node?t.tree_node.text:"Unknown node",Object(ne.jsxs)(x.a,{className:"secondary-sidebar_header",children:[Object(ne.jsx)("img",{src:pe,alt:"Contributor"}),Object(ne.jsx)(_.a,{component:"h3",style:a,children:i})]})},ve=a.p+"static/media/nifti.2c5dab4b.svg",me=function(e){var t=e.node,a={color:be.a.nifti},i=void 0;return i=t.tree_node&&t.graph_node||t.tree_node?t.tree_node.text:t.graph_node.name,Object(ne.jsxs)(x.a,{className:"secondary-sidebar_header",children:[Object(ne.jsx)("img",{src:ve,alt:"File"}),Object(ne.jsx)(_.a,{component:"h3",style:a,children:i})]})},fe=a.p+"static/media/user.344027c3.svg",ge=function(e){var t=e.node,a={color:be.a.dataset,textTransform:"capitalize"},i=void 0;return i=t.tree_node&&t.graph_node||t.tree_node?t.tree_node.text:t.graph_node.name,Object(ne.jsxs)(x.a,{className:"secondary-sidebar_header",children:[Object(ne.jsx)("img",{src:fe,alt:"Contributor"}),Object(ne.jsx)(_.a,{component:"h3",style:a,children:i})]})},je=a.p+"static/media/dataset.6c3feae5.svg",ye=function(e){var t=e.node,a={color:be.a.dataset},i=void 0;return i=t.tree_node&&t.graph_node||t.tree_node?t.tree_node.text:t.graph_node.name,Object(ne.jsxs)(x.a,{className:"secondary-sidebar_header",children:[Object(ne.jsx)("img",{src:je,alt:"dataset"}),Object(ne.jsx)(_.a,{component:"h3",style:a,children:i})]})},Oe=a.p+"static/media/volume.1008184b.svg",xe=function(e){var t=e.node,a={color:be.a.volume},i=void 0;return i=t.tree_node&&t.graph_node||t.tree_node?t.tree_node.text:t.graph_node.name,Object(ne.jsxs)(x.a,{className:"secondary-sidebar_header",children:[Object(ne.jsx)("img",{src:Oe,alt:"Volume"}),Object(ne.jsx)(_.a,{component:"h3",style:a,children:i})]})},_e=function(e){var t=e.node,a={color:be.a.volume},i=void 0;return i=t.tree_node&&t.graph_node||t.tree_node?t.tree_node.text:t.graph_node.name,Object(ne.jsxs)(x.a,{className:"secondary-sidebar_header",children:[Object(ne.jsx)("img",{src:Oe,alt:"Volume"}),Object(ne.jsx)(_.a,{component:"h3",style:a,children:i})]})},ke=a(575),Se=function(e){var t=e.label,a=e.value,i=e.heading;return Object(ne.jsxs)(ne.Fragment,{children:[i?Object(ne.jsx)(_.a,{component:"h3",children:i}):null,Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:t}),Object(ne.jsx)(_.a,{children:a})]})]})},Te=function(e){var t,a,i=e.node,r="",n="";if(null!==i&&void 0!==i&&i.graph_node)r=null===(t=i.graph_node)||void 0===t?void 0:t.name,n=(null===(a=i.graph_node)||void 0===a?void 0:a.id)+L.j;else if(null!==i&&void 0!==i&&i.tree_node){var o,l;r=null===(o=i.tree_node)||void 0===o?void 0:o.basename,n=(null===(l=i.tree_node)||void 0===l?void 0:l.id)+L.j}else{var s;r="Unknown node",n=(null===(s=i.graph_node)||void 0===s?void 0:s.id)+L.j}return Object(ne.jsxs)(x.a,{className:"secondary-sidebar_body",id:n,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsx)(x.a,{className:"tab-content",children:Object(ne.jsx)(Se,{label:"Name",value:r.toString(),heading:"Details"})})]})},we=a.p+"static/media/link.2bbc9098.svg",Ce=function(e){var t=e.href,a=e.title;return Object(ne.jsxs)(k.a,{href:t,target:"_blank",children:[Object(ne.jsx)("img",{src:we,alt:a}),a]})},Ie=a(630),Ee=function(e){var t=e.chips,a=e.node,i=Object(R.b)(),r=function(e,t){if(e.link)window.open(e.link,"_blank");else if(e.value){var a;if(new RegExp("([a-zA-Z0-9]+://)?([a-zA-Z0-9_]+:[a-zA-Z0-9_]+@)?([a-zA-Z0-9.-]+\\.[A-Za-z]{2,4})(:[0-9]+)?(/.*)?").test(e.value))window.open(e.value,"_blank");else if(t)i(Object(c.l)({dataset_id:t.dataset_id,graph_node:null===t||void 0===t?void 0:t.id,tree_node:null===t||void 0===t||null===(a=t.tree_reference)||void 0===a?void 0:a.id,source:L.d}))}};return Object(ne.jsx)(x.a,{className:"chip-overflow noscrollbar",children:null===t||void 0===t?void 0:t.map((function(e,t){return void 0===a?e.link?Object(ne.jsx)(Ie.a,{label:null===e||void 0===e?void 0:e.value,onClick:function(){return r(e,null)}}):Object(ne.jsx)(Ie.a,{label:null===e||void 0===e?void 0:e.value}):Object(ne.jsx)(Ie.a,{label:null===e||void 0===e?void 0:e.value,onClick:function(){return r(e,a)}})}))})},Ne=function(e){new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i");return"string"===typeof e&&(null===e||void 0===e?void 0:e.startsWith("http"))},Pe=function(e){var t,a=e.node,i=Object(R.c)((function(e){return e.sdsState.metadata_model.file}));return Object(ne.jsxs)(x.a,{className:"secondary-sidebar_body",id:(null===a||void 0===a||null===(t=a.graph_node)||void 0===t?void 0:t.id)+L.j,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsxs)(x.a,{className:"tab-content",children:[Object(ne.jsx)(Se,{label:"",value:"",heading:"File Details"}),null===i||void 0===i?void 0:i.map((function(e){if(e.visible){var t,i,r,n=(null===a||void 0===a||null===(t=a.tree_node)||void 0===t?void 0:t[e.property])||(null===a||void 0===a||null===(i=a.graph_node)||void 0===i||null===(r=i.attributes)||void 0===r?void 0:r[e.property]);return Ne(n)?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ce,{href:n,title:e.label+" Link"},"detail_links_dataset")]}):"object"===typeof n?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ee,{chips:a.graph_node.attributes[e.property]})]}):"string"===typeof n||"number"===typeof n?Object(ne.jsx)(Se,{label:e.label,value:n}):Object(ne.jsx)(ne.Fragment,{children:" "})}}))]})]})},Me=function(e){var t,a=e.node,i="",r="";return null!==a&&void 0!==a&&a.tree_node&&null!==a&&void 0!==a&&a.graph_node?(i=a.graph_node.name,r=a.graph_node.id+L.j):null!==a&&void 0!==a&&a.tree_node?(i=a.tree_node.basename,r=a.tree_node.id+L.j):(i=a.graph_node.name,r=a.graph_node.id+L.j),Object(ne.jsxs)(x.a,{id:r,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsxs)(x.a,{className:"tab-content",children:[Object(ne.jsx)(_.a,{component:"h3",children:"Person Details"}),Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:"Name"}),Object(ne.jsx)(Ce,{href:null===(t=a.graph_node)||void 0===t?void 0:t.id,title:i.toString()},"name_href_link")]})]})]})},De=function(e){var t,a=e.node,i=Object(R.c)((function(e){return e.sdsState.metadata_model.sample}));return Object(ne.jsxs)(x.a,{id:(null===a||void 0===a||null===(t=a.graph_node)||void 0===t?void 0:t.attributes.localId)+L.j,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsxs)(x.a,{className:"tab-content",children:[Object(ne.jsx)(Se,{label:"",value:"",heading:"Sample Details"}),null===i||void 0===i?void 0:i.map((function(e){if(e.visible){var t,i=null===(t=a.graph_node.attributes[e.property])||void 0===t?void 0:t[0];return Ne(i)?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ce,{href:i,title:e.label+" Link"},"detail_links_dataset")]}):"object"===typeof i?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ee,{chips:a.graph_node.attributes[e.property]})]}):"string"===typeof i?Object(ne.jsx)(Se,{label:e.label,value:i}):Object(ne.jsx)(ne.Fragment,{children:" "})}}))]})]})},Ae=a(10),Fe=a(415),Re=a.n(Fe),Ue=function(e){var t,a=e.node,r=Object(R.c)((function(e){return e.sdsState.metadata_model.dataset})),n=Object(i.useState)({}),o=Object(p.a)(n,2),l=o[0],s=o[1];return Object(i.useEffect)((function(){var e={};null===r||void 0===r||r.map((function(t){t.link&&(e[t.label]=!1)})),s(e)}),[]),Object(ne.jsxs)(x.a,{id:(null===(t=a.graph_node)||void 0===t?void 0:t.id)+L.j,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsxs)(x.a,{className:"tab-content",children:[Object(ne.jsxs)(x.a,{className:"title-container",children:[Object(ne.jsx)(oe,{}),Object(ne.jsx)(_.a,{component:"h3",children:"Dataset Details"})]}),null===r||void 0===r?void 0:r.map((function(e){if(e.visible){var t,i=null===(t=a.graph_node.attributes[e.property])||void 0===t?void 0:t[0];if(e.link){var r,n,o=null===(r=a.graph_node.attributes[e.link.property])||void 0===r?void 0:r[0];return Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsxs)(x.a,{className:"title-container",children:[Object(ne.jsx)(y.a,{open:l[e.label],title:"DOI Copy",children:Object(ne.jsx)(O.a,{color:"primary",size:"small","aria-label":"Copy Content",onClick:function(){navigator.clipboard.writeText(o);var t=Object(ie.a)(Object(ie.a)({},l),{},Object(Ae.a)({},e.label,!0));s(t)},children:Object(ne.jsx)(Re.a,{size:"small"})})}),Object(ne.jsx)(x.a,{className:"tab-content-row",children:null!==(n=e.link)&&void 0!==n&&n.asText?Object(ne.jsx)(_.a,{children:o}):Object(ne.jsx)(Ce,{href:o,title:i},"detail_links_dataset")})]})]})}return Ne(i)?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ce,{href:i,title:e.label},"detail_links_dataset")]}):"object"===typeof i?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ee,{chips:a.graph_node.attributes[e.property]})]}):"string"===typeof i?Object(ne.jsx)(Se,{label:e.label,value:i}):Object(ne.jsx)(ne.Fragment,{children:" "})}}))]})]})},Be=function(e){var t,a=e.node,i=Object(R.c)((function(e){return e.sdsState.metadata_model.subject})),r=function(e,t){for(var a=t.graph_node.parent,i=!1;a&&!i;)a.name===e?i=!0:a=a.parent;return a};return Object(ne.jsxs)(x.a,{id:(null===a||void 0===a||null===(t=a.graph_node)||void 0===t?void 0:t.id)+L.j,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsxs)(x.a,{className:"tab-content",children:[Object(ne.jsx)(Se,{label:"",value:"",heading:"Subject Details"}),null===i||void 0===i?void 0:i.map((function(e){if(e.visible){var t,i,n=null===(t=a.graph_node.attributes[e.property])||void 0===t?void 0:t[0];return e.isGroup?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ee,{chips:[{value:a.graph_node.attributes[e.property]}],node:r(null===(i=a.graph_node.attributes[e.property])||void 0===i?void 0:i[0],a)})]}):Ne(n)?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ce,{href:n,title:e.label+" Link"},"detail_links_dataset")]}):"object"===typeof n?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ee,{chips:a.graph_node.attributes[e.property]})]}):"string"===typeof n?Object(ne.jsx)(Se,{label:e.label,value:n}):Object(ne.jsx)(ne.Fragment,{children:" "})}}))]})]})},Le=function(e){var t,a,i,r,n,o,l,s=e.node,d="",c="";if(null!==s&&void 0!==s&&s.tree_node&&null!==s&&void 0!==s&&s.graph_node)c=s.tree_node.id+L.j,d=s.tree_node.basename;else if(null!==s&&void 0!==s&&s.graph_node){var u,p;c=s.graph_node.id+L.j,d=null===(u=s.graph_node.attributes)||void 0===u||null===(p=u.label)||void 0===p?void 0:p[0]}else c=s.tree_node.id+L.j,d="Undefined protocol";return Object(ne.jsxs)(x.a,{id:c,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsxs)(x.a,{className:"tab-content",children:[null!==(t=s.graph_node.attributes)&&void 0!==t&&t.hasUriHuman&&""!==(null===(a=s.graph_node.attributes)||void 0===a?void 0:a.hasUriHuman[0])?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"h3",children:"Protocol Details"}),Object(ne.jsx)(_.a,{component:"label",children:"Label"}),Object(ne.jsx)(Ce,{href:null===(i=s.graph_node.attributes)||void 0===i?void 0:i.hasUriHuman[0],title:d},"label_href_link")]}):Object(ne.jsx)(Se,{label:"Label",value:d,heading:"Protocol Details"}),(o="Number of steps",l=null===s||void 0===s||null===(r=s.graph_node)||void 0===r||null===(n=r.attributes)||void 0===n?void 0:n.protocolHasNumberOfSteps,void 0!==l?l.map((function(e,t){return Object(ne.jsx)(Se,{label:o,value:e},o+"_key_"+t)})):Object(ne.jsx)(ne.Fragment,{children:" "}))]})]})},He=function(e){var t,a=e.node,i=Object(R.c)((function(e){return e.sdsState.metadata_model.group}));return Object(ne.jsxs)(x.a,{className:"secondary-sidebar_body",id:(null===a||void 0===a||null===(t=a.graph_node)||void 0===t?void 0:t.id)+L.j,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsxs)(x.a,{className:"tab-content",children:[Object(ne.jsx)(Se,{label:"",value:"",heading:"Group Details"}),null===i||void 0===i?void 0:i.map((function(e){if(e.visible){var t=a.graph_node[e.property];return Ne(t)?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ce,{href:t,title:e.label+" Link"},"detail_links_dataset")]}):"object"===typeof t?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ee,{chips:a.graph_node[e.property]})]}):"string"===typeof t||"number"===typeof t?Object(ne.jsx)(Se,{label:e.label,value:t}):Object(ne.jsx)(ne.Fragment,{children:" "})}}))]})]})},ze=function(e){var t,a,i=e.node,r=Object(R.c)((function(e){return e.sdsState.metadata_model.collection}));return Object(ne.jsxs)(x.a,{id:(null===i||void 0===i||null===(t=i.graph_node)||void 0===t||null===(a=t.attributes)||void 0===a?void 0:a.localId)+L.j,children:[Object(ne.jsx)(ke.a,{}),Object(ne.jsxs)(x.a,{className:"tab-content",children:[Object(ne.jsx)(Se,{label:"",value:"",heading:"Folder Details"}),null===r||void 0===r?void 0:r.map((function(e){if(e.visible){var t,a,r,n=(null===i||void 0===i||null===(t=i.tree_node)||void 0===t?void 0:t[e.property])||(null===i||void 0===i||null===(a=i.graph_node)||void 0===a||null===(r=a.attributes)||void 0===r?void 0:r[e.property]);return Ne(n)?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ce,{href:n,title:e.label+" Link"},"detail_links_dataset")]}):"object"===typeof n?Object(ne.jsxs)(x.a,{className:"tab-content-row",children:[Object(ne.jsx)(_.a,{component:"label",children:e.label}),Object(ne.jsx)(Ee,{chips:i.graph_node.attributes[e.property]})]}):"string"===typeof n?Object(ne.jsx)(Se,{label:e.label,value:n}):Object(ne.jsx)(ne.Fragment,{children:" "})}}))]})]})},We=a(573),Ge=a(166),Ve=a(430),Je=a(620),Ze=a(431),qe=a(583),Ye=a(619),Qe=a(416),$e=a.n(Qe),Ke=a(419),Xe=a.n(Ke),et=a(418),tt=a.n(et),at=a(417),it=a.n(at),rt=function(e){var t=e.groupTitle,a=e.item,i=Object(R.b)();return Object(ne.jsxs)(Ze.a,{disableGutters:!0,style:{display:"flex",padding:"1rem",boxShadow:"0px 1px 0px 0px #E5E5E5"},children:[a.visible?Object(ne.jsx)($e.a,{style:{color:"rgba(46, 58, 89, 0.40)",marginRight:"16px",fontSize:"1rem"}}):Object(ne.jsx)(it.a,{style:{color:"rgba(46, 58, 89, 0.40)",marginRight:"16px",fontSize:"1rem"}}),Object(ne.jsx)(qe.a,{primary:Object(ne.jsx)(_.a,{variant:"body2",style:{color:"rgba(46, 58, 89, 0.80)",fontWeight:"600",fontSize:".75rem"},children:a.label})}),Object(ne.jsx)(Ye.a,{style:{right:"2rem"},children:Object(ne.jsx)(O.a,{edge:"end","aria-label":a.visible?"delete":"add",onClick:function(){return i(Object(c.o)(t,a.key))},disableRipple:!0,children:a.visible?Object(ne.jsx)(y.a,{id:a.label,title:"Hide Property",children:Object(ne.jsx)(Xe.a,{style:{color:"#ED745D",fontSize:"1rem"}})}):Object(ne.jsx)(y.a,{id:a.label,title:"Show Property",children:Object(ne.jsx)(tt.a,{style:{color:"#3779E1",fontSize:"1rem"}})})})})]})},nt=function(e){var t=e.provided,a=e.items,i=e.title;return Object(ne.jsxs)(Ve.a,Object(ie.a)(Object(ie.a)({},t.droppableProps),{},{ref:t.innerRef,subheader:Object(ne.jsx)(Je.a,{disableGutters:!0,disableSticky:!0,children:Object(ne.jsx)(x.a,{style:{padding:"1.5rem 0rem 1.5rem 1.5rem",boxShadow:"0px 1px 0px 0px #E5E5E5"},children:Object(ne.jsx)(_.a,{variant:"h6",style:{color:"#2E3A59"},children:i.charAt(0).toUpperCase()+i.slice(1)})})}),children:[a.map((function(e,t){return Object(ne.jsx)(Ge.b,{draggableId:"".concat(t),index:t,isDragDisabled:!e.visible,children:function(t){return Object(ne.jsx)(x.a,Object(ie.a)(Object(ie.a)(Object(ie.a)({ref:t.innerRef},t.draggableProps),t.dragHandleProps),{},{children:Object(ne.jsx)(rt,{item:e,groupTitle:i})}))}},e.key)})),t.placeholder]}))},ot=function(e){var t=e.title,a=e.group,r=Object(i.useState)(a),n=Object(p.a)(r,2),o=n[0],l=n[1],s=Object(R.b)();return Object(ne.jsx)(x.a,{children:Object(ne.jsx)(Ge.a,{onDragEnd:function(e){if(e.destination){var a=Object(u.a)(o),i=a.splice(e.source.index,1),r=Object(p.a)(i,1)[0];a.splice(e.destination.index,0,r),l(a),s(Object(c.r)({groupTitle:t,newItemsOrder:a}))}},children:Object(ne.jsx)(Ge.c,{droppableId:"droppable",children:function(e){return Object(ne.jsx)(nt,{title:t,provided:e,items:o})}})})})},lt=function(){var e=Object(R.b)(),t=Object(R.c)((function(e){return e.sdsState.settings_panel_visible})),a=Object(R.c)((function(e){return e.sdsState.metadata_model}));return Object(ne.jsxs)(x.a,{style:{position:"relative",maxHeight:"84vh",overflow:"auto"},children:[Object.keys(a).map((function(e){return Object(ne.jsx)(ot,{title:e,group:a[e]})})),Object(ne.jsx)(x.a,{style:{background:"linear-gradient(rgb(255 255 255 / 81%) 0%, rgb(255, 255, 255) 100%)",padding:".75rem",position:"sticky",bottom:0,zIndex:1e3,display:"flex",justifyContent:"center"},children:Object(ne.jsx)(We.a,{variant:"contained",disableElevation:!0,color:"primary",onClick:function(){e(Object(c.p)(!t))},fullWidth:!0,children:"Save"})})]})},st=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(_e,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(ze,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(_e,{node:e}),Object(ne.jsx)(ze,{node:e})]})},getSettings:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(lt,{node:e})})}};return t},dt=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(_e,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(He,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(_e,{node:e}),Object(ne.jsx)(He,{node:e})]})},getSettings:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(lt,{node:e})})}};return t},ct=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(ye,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(Ue,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(ye,{node:e}),Object(ne.jsx)(Ue,{node:e})]})},getSettings:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(lt,{node:e})})}};return t},ut=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(xe,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(Le,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(xe,{node:e}),Object(ne.jsx)(Le,{node:e})]})}};return t},pt=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(_e,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(De,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(_e,{node:e}),Object(ne.jsx)(De,{node:e})]})},getSettings:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(lt,{node:e})})}};return t},bt=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(_e,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(Be,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(_e,{node:e}),Object(ne.jsx)(Be,{node:e})]})},getSettings:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(lt,{node:e})})}};return t},ht=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(me,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(Pe,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(me,{node:e}),Object(ne.jsx)(Pe,{node:e})]})},getSettings:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(lt,{node:e})})}};return t},vt=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(ge,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(Me,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(ge,{node:e}),Object(ne.jsx)(Me,{node:e})]})}};return t},mt=function(e){var t={node:e,getHeader:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(he,{node:e})})},getDetail:function(){return Object(ne.jsx)(ne.Fragment,{children:Object(ne.jsx)(Te,{node:e})})},getAll:function(){return Object(ne.jsxs)(ne.Fragment,{children:[Object(ne.jsx)(he,{node:e}),Object(ne.jsx)(Te,{node:e})]})}};return t},ft=function(){this.createDetails=function(e){var t=null;switch(void 0!==e.graph_node&&null!==e.graph_node?e.graph_node.type:e.tree_node.type){case H.b.Collection.key:t=new st(e);break;case H.b.Group.key:t=new dt(e);break;case H.b.Dataset.key:t=new ct(e);break;case H.b.Protocol.key:t=new ut(e);break;case H.b.Sample.key:t=new pt(e);break;case H.b.Subject.key:t=new bt(e);break;case H.b.File.key:t=new ht(e);break;case H.b.Person.key:t=new vt(e);break;default:t=new mt(e)}return t}},gt=(a.p,a(629)),jt=function(e){var t,a=e.links,i=function(e){var t=document.getElementById(e+L.j);null===t||void 0===t||t.scrollIntoView({behavior:"smooth"})};return Object(ne.jsx)(x.a,{className:"wrap",children:Object(ne.jsxs)(gt.a,{"aria-label":"breadcrumb",maxItems:2,children:[a&&a.pages?null===a||void 0===a||null===(t=a.pages)||void 0===t?void 0:t.map((function(e,t){return Object(ne.jsx)(k.a,{color:"inherit",onClick:function(){i(e.id)},children:null===e||void 0===e?void 0:e.title},"breadcrumb_".concat(null===e||void 0===e?void 0:e.title,"_").concat(t))})):null,Object(ne.jsx)(_.a,{variant:"subtitle2",onClick:function(){i(null===a||void 0===a?void 0:a.current.id)},className:"breadcrumb_selected",children:null===a||void 0===a?void 0:a.current.text})]})})},yt=a(626),Ot={graphComponent:de,nodeView:function(e){for(var t,a,i,r=Object(R.b)(),n=new ft,o=Object(R.c)((function(e){return e.sdsState.instance_selected})),l=Object(R.c)((function(e){return e.sdsState.settings_panel_visible})),s=n.createDetails(o),d={pages:[],current:{id:void 0,text:""}},u=[],p=o;void 0!==(null===(b=p)||void 0===b||null===(h=b.graph_node)||void 0===h?void 0:h.parent);){var b,h,v,m,f,g,j;u.push(null===(v=p)||void 0===v||null===(m=v.graph_node)||void 0===m||null===(f=m.parent)||void 0===f?void 0:f.id),p={tree_node:void 0,graph_node:null===(g=p)||void 0===g||null===(j=g.graph_node)||void 0===j?void 0:j.parent}}(t=u.reverse().map((function(e){var t,a,i,r=window.datasets[o.dataset_id].splinter.nodes.get(e),l={dataset_id:o.dataset_id,graph_node:r,tree_node:r.tree_reference};return(null===l||void 0===l||null===(t=l.graph_node)||void 0===t?void 0:t.id)!==L.l&&(null===l||void 0===l||null===(a=l.graph_node)||void 0===a?void 0:a.id)!==L.i&&(null===l||void 0===l||null===(i=l.graph_node)||void 0===i?void 0:i.id)!==L.k?(d.pages.push({id:e,title:r.name,href:"#"}),n.createDetails(l).getDetail()):Object(ne.jsx)(ne.Fragment,{children:" "})})),null!==o&&void 0!==o&&o.graph_node)&&(d.current={id:null===o||void 0===o||null===(a=o.graph_node)||void 0===a?void 0:a.id,text:null===o||void 0===o||null===(i=o.graph_node)||void 0===i?void 0:i.name});return Object(ne.jsxs)(x.a,{className:"secondary-sidebar"+(e.open?" in":""),children:[Object(ne.jsx)(x.a,{className:"secondary-sidebar_breadcrumb",sx:{mt:"1rem"},children:Object(ne.jsx)(jt,{close:!1,links:d})}),l&&s.getSettings?s.getSettings():null,l?null:Object(ne.jsxs)(ne.Fragment,{children:[t,s.getDetail()]}),Object(ne.jsx)(ue,{}),!l&&Object(ne.jsx)(x.a,{className:"overlay-button-container",children:Object(ne.jsx)(y.a,{id:"button-report",title:"Open Metadata Settings",children:Object(ne.jsx)(O.a,{className:"overlay-button",onClick:function(){r(Object(c.p)(!l))},children:Object(ne.jsx)(yt.a,{})})})})]})}},xt=localStorage.getItem("metadata_model"),_t={sdsState:{datasets:[],available_datasets:[],all_tree:[],error_message:null,instance_selected:{dataset_id:null,graph_node:null,tree_node:null,source:""},group_selected:{dataset_id:null,graph_node:null,tree_node:null,source:""},layout:{},settings_panel_visible:!1,metadata_model:xt?JSON.parse(xt):{dataset:Object(u.a)(H.b.Dataset.properties),subject:Object(u.a)(H.b.Subject.properties),sample:Object(u.a)(H.b.Sample.properties),collection:Object(u.a)(H.b.Collection.properties),group:Object(u.a)(H.b.Group.properties),file:Object(u.a)(H.b.File.properties)}}};var kt={sdsState:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;switch(t.type){case c.c:if(void 0!==t.data){var a=window.datasets[t.data.dataset_id].splinter,i=a.nodes.get(t.data.graph_node),r=a.tree_map.get(t.data.tree_node);return Object(ie.a)(Object(ie.a)({},e),{},{group_selected:{dataset_id:t.data.dataset_id,graph_node:i||null,tree_node:r||null,source:t.data.source}})}break;case c.d:if(void 0!==t.data){var n=window.datasets[t.data.dataset_id].splinter,o=n.nodes.get(t.data.graph_node),l=n.tree_map.get(t.data.tree_node);return Object(ie.a)(Object(ie.a)({},e),{},{instance_selected:{dataset_id:t.data.dataset_id,graph_node:o||null,tree_node:l||null,source:t.data.source}})}break;case c.a:if(void 0===t.data||e.datasets.includes(t.data.dataset.id))return e;void 0===window.datasets&&(window.datasets={}),window.datasets[t.data.dataset.id]={graph:t.data.dataset.graph,tree:t.data.dataset.tree,splinter:t.data.dataset.splinter};var s=[].concat(Object(u.a)(e.datasets),[t.data.dataset.id]);return Object(ie.a)(Object(ie.a)({},e),{},{datasets:s,instance_selected:{dataset_id:t.data.dataset.id,graph_node:t.data.dataset.graph.nodes[0],tree_node:t.data.dataset.graph.nodes[0].tree_reference}});case c.e:return Object(ie.a)(Object(ie.a)({},e),{},{available_datasets:t.data.datasets});case c.b:if(void 0!==t.data){delete window.datasets[t.data.dataset_id];var p=e.datasets.indexOf(t.data.dataset_id),b=[].concat(Object(u.a)(e.datasets.slice(0,p)),Object(u.a)(e.datasets.slice(p+1)));return Object(ie.a)(Object(ie.a)({},e),{},{datasets:b})}break;case c.h:if(void 0!==t.data.error_message)return Object(ie.a)(Object(ie.a)({},e),{},{error_message:t.data.error_message});break;case c.f:var h=t.data,v=h.groupTitle,m=h.itemId,f=Object(ie.a)({},e.metadata_model),g=f[v].findIndex((function(e){return e.key===m}));if(-1!==g){var j=f[v][g];j.visible=!j.visible,f[v].sort((function(e,t){if(e.visible===t.visible)return f[v].indexOf(e)-f[v].indexOf(t)}))}return localStorage.setItem("metadata_model",JSON.stringify(f)),Object(ie.a)(Object(ie.a)({},e),{},{metadata_model:Object(ie.a)({},f)});case c.i:var y=t.payload,O=y.title,x=y.newItemsOrder,_=Object(ie.a)(Object(ie.a)({},e.metadata_model),{},Object(Ae.a)({},O,x));return localStorage.setItem("metadata_model",JSON.stringify(_)),Object(ie.a)(Object(ie.a)({},e),{},{metadata_model:_});case d.layoutActions.SET_LAYOUT:return Object(ie.a)(Object(ie.a)({},e),{},{layout:t.data.layout});case c.g:return Object(ie.a)(Object(ie.a)({},e),{},{settings_panel_visible:t.data.visible});default:return e}}},St=Object(s.createStore)(kt,_t,[function(e){return function(t){return function(a){switch(a.type){case d.layoutActions.REMOVE_WIDGET:var i=a.data.id;e.getState().sdsState.datasets.includes(i)&&e.dispatch(c.k(i));case d.layoutActions.SET_LAYOUT:case c.a:case c.b:case c.d:case c.c:case c.e:}t(a)}}}],{baseLayout:{global:{tabEnableClose:!0,tabSetHeaderHeight:18,tabSetTabStripHeight:18,enableEdgeDock:!1,sideBorders:8},layout:{type:"tabset",weight:100,id:"root",children:[{type:"row",weight:70,children:[{type:"tabset",weight:100,id:"leftPanel",enableDeleteWhenEmpty:!1,children:[]}]},{type:"row",weight:30,children:[{type:"tabset",weight:100,id:"rightPanel",enableDeleteWhenEmpty:!1,enableDrop:!1,enableDrag:!1,enableDivide:!1,enableMaximize:!1,enableTabStrip:!1,tabStripHeight:"0px",children:[]}]}]}},componentMap:Ot});Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/));o.a.render(Object(ne.jsx)(r.a.StrictMode,{children:Object(ne.jsx)(R.a,{store:St,children:Object(ne.jsx)(l.a,{})})}),document.getElementById("root")),"serviceWorker"in navigator&&navigator.serviceWorker.ready.then((function(e){e.unregister()}))},66:function(e,t,a){"use strict";a.d(t,"a",(function(){return o}));var i=a(28),r=a(25),n=a(520),o=function(){function e(){Object(i.a)(this,e)}return Object(r.a)(e,[{key:"get_local_file",value:function(e,t,a){if(void 0!==e){var i=new FileReader;i.onload=function(e){t(e.target.result)},i.onprogress=function(e){if(e.lengthComputable){var t=parseInt(e.loaded/e.total*100,10);a(t)}},i.readAsText(e)}}},{key:"get_remote_file",value:function(e,t,a){n.get(e,{crossDomain:!0,responseType:"stream",onDownloadProgress:function(e){}}).then((function(a){t(e,a.data)})).catch((function(e){console.log(e),a&&a(void 0)}))}}]),e}()},8:function(e,t,a){"use strict";a.d(t,"c",(function(){return i})),a.d(t,"a",(function(){return r})),a.d(t,"b",(function(){return n})),a.d(t,"d",(function(){return o}));var i="http://www.w3.org/1999/02/22-rdf-syntax-ns#type",r=[{key:"sparc:Subject",toTrim:"subject"}],n={Ontology:{image:"./images/graph/database.svg",key:"Ontology",properties:[{type:"rdfs",key:"label",property:"label",label:"To be filled"},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"To be filled"},{type:"owl",key:"versionInfo",property:"versionInfo",label:"Version"}]},Award:{image:"./images/graph/files/default_file.svg",key:"Award",properties:[{type:"rdfs",key:"label",property:"label",label:"To be filled"},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"To be filled"}]},Collection:{image:"./images/graph/folder.svg",key:"Collection",properties:[{type:"rdfs",key:"relativePath",property:"relativePath",label:"Name",visible:!0},{type:"rdfs",key:"name",property:"name",label:"Name",visible:!0},{type:"rdfs",key:"mimetype",property:"mimetype",label:"Mimetype",visible:!0},{type:"rdfs",key:"status",property:"status",label:"Status",visible:!0},{type:"rdfs",key:"timestamp_updated",property:"timestamp_updated",label:"Updated On",visible:!0},{type:"TEMP",key:"publishedURI",property:"publishedURI",label:"Find in SPARC Portal",visible:!0}]},Group:{image:"./images/graph/group.svg",key:"Group",properties:[{type:"TEMP",key:"name",property:"name",label:"Name",visible:!0},{type:"TEMP",key:"subjects",property:"subjects",label:"Number of Subjects",visible:!0}]},Dataset:{image:"./images/graph/dataset.svg",key:"Dataset",properties:[{type:"rdfs",key:"label",property:"label",label:"Title",visible:!0,link:{property:"hasUriPublished",asText:!0}},{type:"dc",key:"title",property:"title",label:"Label",visible:!0},{type:"dc",key:"description",property:"description",label:"Description",visible:!0},{type:"TEMP",key:"hasUriPublished",property:"hasUriPublished",label:"Published URI",visible:!0},{type:"TEMP",key:"contentsWereUpdatedAtTime",property:"latestUpdate",label:"Contents Updated On",visible:!0},{type:"isAbout",key:"",property:"isAbout",label:"About",visible:!0},{type:"TEMP",key:"protocolEmploysTechnique",property:"protocolEmploysTechnique",label:"Protocol Employs Technique",visible:!0},{type:"TEMP",key:"errorIndex",property:"errorIndex",label:"Error Index",visible:!0},{type:"TEMP",key:"hasDatasetTemplateSchemaVersion",property:"hasDatasetTemplateSchemaVersion",label:"Template Schema Version",visible:!0},{type:"TEMP",key:"hasExperimentalModality",property:"hasExperimentalModality",label:"Experimental Modality",visible:!0},{type:"TEMP",key:"hasExperimentalApproach",property:"hasExperimentalApproach",label:"Experimental Approach",visible:!0},{type:"TEMP",key:"hasDoi",property:"hasDoi",label:"DOI",visible:!0,link:{property:"hasUriPublished",asText:!0}},{type:"TEMP",key:"hasAdditionalFundingInformation",property:"hasAdditionalFundingInformation",label:"Additional Funding Information",visible:!0},{type:"TEMP",key:"statusOnPlatform",property:"statusOnPlatform",label:"Status On Platform",visible:!0},{type:"TEMP",key:"hasLicense",property:"hasLicense",label:"License",visible:!0},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"Pensieve Link",visible:!0},{type:"TEMP",key:"curationIndex",property:"curationIndex",label:"Curation Index",visible:!0},{type:"TEMP",key:"hasAwardNumber",property:"hasAwardNumber",label:"Award Number",visible:!0},{type:"TEMP",key:"hasExpectedNumberOfSamples",property:"hasExpectedNumberOfSamples",label:"Expected Number of Samples",visible:!0},{type:"TEMP",key:"hasExpectedNumberOfSubjects",property:"hasExpectedNumberOfSubjects",label:"Expected Number of Subjects",visible:!0},{type:"TEMP",key:"hasResponsiblePrincipalInvestigator",property:"hasResponsiblePrincipalInvestigator",label:"Responsible Principal Investigator",visible:!0},{type:"TEMP",key:"hasUriApi",property:"hasUriApi",label:"URI API",visible:!1},{type:"TEMP",key:"hasProtocol",property:"hasProtocol",label:"Protocol",visible:!0},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"Pennsieve Dataset Link",visible:!0},{type:"TEMP",key:"hasNumberOfContributors",property:"hasNumberOfContributors",label:"Number of Contributors",visible:!0},{type:"TEMP",key:"hasNumberOfDirectories",property:"hasNumberOfDirectories",label:"Number of Directories",visible:!0},{type:"TEMP",key:"hasNumberOfFiles",property:"hasNumberOfFiles",label:"Number of Files",visible:!0},{type:"TEMP",key:"hasNumberOfPerformances",property:"hasNumberOfPerformances",label:"Number of Performances",visible:!0},{type:"TEMP",key:"hasNumberOfSamples",property:"hasNumberOfSamples",label:"Number of Samples",visible:!0},{type:"TEMP",key:"hasNumberOfSubjects",property:"hasNumberOfSubjects",label:"Number of Subjects",visible:!0},{type:"TEMP",key:"hasPathErrorReport",property:"hasPathErrorReport",label:"Path Error Report",visible:!1},{type:"TEMP",key:"hasSizeInBytes",property:"hasSizeInBytes",label:"Size In Bytes",visible:!0},{type:"TEMP",key:"milestoneCompletionDate",property:"milestoneCompletionDate",label:"Milestone Completion Date",visible:!0},{type:"TEMP",key:"speciesCollectedFrom",property:"speciesCollectedFrom",label:"Species Collected From",visible:!0},{type:"TEMP",key:"submissionIndex",property:"submissionIndex",label:"Submission Index",visible:!0},{type:"TEMP",key:"unclassifiedIndex",property:"unclassifiedIndex",label:"Unclassified Index",visible:!0},{type:"TEMP",key:"wasCreatedAtTime",property:"wasCreatedAtTime",label:"Created At",visible:!0},{type:"TEMP",key:"wasUpdatedAtTime",property:"wasUpdatedAtTime",label:"Updated Last On",visible:!0}]},File:{image:"./images/graph/files/default_file.svg",key:"File",properties:[{type:"rdfs",key:"basename",property:"basename",label:"Basename",visible:!0},{type:"rdfs",key:"timestamp_updated",property:"timestamp_updated",label:"Updated On",visible:!0},{type:"TEMP",key:"mimetype",property:"mimetype",label:"Mimetype",visible:!0},{type:"TEMP",key:"size",property:"size",label:"Size",visible:!0},{type:"TEMP",key:"uri_human",property:"uri_human",label:"URI Link",visible:!1},{type:"TEMP",key:"uri_api",property:"uri_api",label:"URI API",visible:!1},{type:"TEMP",key:"status",property:"status",label:"Status",visible:!0},{type:"TEMP",key:"publishedURI",property:"publishedURI",label:"Find in SPARC Portal",visible:!0}]},Subject:{image:"./images/graph/folder.svg",key:"Subject",properties:[{type:"TEMP",key:"localId",property:"localId",label:"Label",visible:!0},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"URI Human",visible:!0},{type:"TEMP",key:"hasAgeCategory",property:"hasAgeCategory",label:"Age Category",visible:!0},{type:"TEMP",key:"hasAge",property:"hasAge",label:"Age",visible:!0},{type:"TEMP",key:"hasAgeMin",property:"hasAgeMin",label:"Age Min",visible:!0},{type:"TEMP",key:"hasAgeMax",property:"hasAgeMax",label:"Age Max",visible:!0},{type:"sparc",key:"hasBiologicalSex",property:"hasBiologicalSex",label:"Biological Sex",visible:!0,isGroup:!0},{type:"sparc",key:"specimenHasIdentifier",property:"specimenHasIdentifier",label:"Specimen has Identifier",visible:!0,isGroup:!1},{type:"sparc",key:"animalSubjectIsOfSpecies",property:"animalSubjectIsOfSpecies",label:"Subject Species",visible:!0,isGroup:!0},{type:"sparc",key:"animalSubjectIsOfStrain",property:"animalSubjectIsOfStrain",label:"Subject Strain",visible:!0,isGroup:!0},{type:"TEMP",key:"hasAssignedGroup",property:"hasAssignedGroup",label:"Assigned Group",visible:!0},{type:"TEMP",key:"hasGenotype",property:"hasGenotype",label:"Genotype",visible:!0},{type:"TEMP",key:"experimental_file",property:"experimental_file",label:"Experimental File",visible:!0},{type:"TEMP",key:"reference_atlas",property:"reference_atlas",label:"Reference Atlas",visible:!0},{type:"TEMP",key:"hasFolderAboutIt",property:"hasFolderAboutIt",label:"Folder About It",visible:!0},{type:"TEMP",key:"hasDerivedInformationAsParticipant",property:"hasDerivedInformationAsParticipant",label:"Derived Information as Participant",visible:!1},{type:"TEMP",key:"participantInPerformanceOf",property:"participantInPerformanceOf",label:"Participant In Performance Of",visible:!0}],additional_properties:[{label:"Age unit",property:"ageUnit",path:["TEMP:hasAge","TEMP:hasUnit","@id"],trimType:"unit:",type:"string"},{label:"Age value",property:"ageValue",path:["TEMP:hasAge","rdf:value"],innerPath:"@value",trimType:"",type:"digit"},{label:"Age base unit",property:"ageBaseUnit",path:["TEMP:hasAge","TEMP:asBaseUnits","TEMP:hasUnit","@id"],trimType:"unit:",type:"string"},{label:"Age base value",property:"ageBaseValue",path:["TEMP:hasAge","TEMP:asBaseUnits","rdf:value"],innerPath:"@value",trimType:"",type:"digit"},{label:"Weight unit",property:"weightUnit",path:["sparc:animalSubjectHasWeight","TEMP:hasUnit","@id"],trimType:"unit:",type:"string"},{label:"Weight value",property:"weightValue",path:["sparc:animalSubjectHasWeight","rdf:value","@value"],trimType:"",type:"digit"}]},Performance:{image:"./images/graph/folder.svg",key:"Performance",properties:[{type:"TEMP",key:"localId",property:"localId",label:"Label",visible:!0},{type:"TEMP",key:"participantInPerformanceOf",property:"participantInPerformanceOf",label:"Participant In Performance Of",visible:!0}],additional_properties:[{label:"Age unit",property:"ageUnit",path:["TEMP:hasAge","TEMP:hasUnit","@id"],trimType:"unit:",type:"string"},{label:"Age value",property:"ageValue",path:["TEMP:hasAge","rdf:value"],innerPath:"@value",trimType:"",type:"digit"},{label:"Age base unit",property:"ageBaseUnit",path:["TEMP:hasAge","TEMP:asBaseUnits","TEMP:hasUnit","@id"],trimType:"unit:",type:"string"},{label:"Age base value",property:"ageBaseValue",path:["TEMP:hasAge","TEMP:asBaseUnits","rdf:value"],innerPath:"@value",trimType:"",type:"digit"},{label:"Weight unit",property:"weightUnit",path:["sparc:animalSubjectHasWeight","TEMP:hasUnit","@id"],trimType:"unit:",type:"string"},{label:"Weight value",property:"weightValue",path:["sparc:animalSubjectHasWeight","rdf:value","@value"],trimType:"",type:"digit"}]},Sample:{image:"./images/graph/folder.svg",key:"Sample",properties:[{type:"rdfs",key:"label",property:"label",label:"Label",visible:!0},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"Human URI",visible:!0},{type:"TEMP",key:"hasFolderAboutIt",property:"hasFolderAboutIt",label:"Find in SPARC Portal",visible:!0},{type:"TEMP",key:"wasDerivedFromSubject",property:"derivedFrom",label:"Derived from Subject",visible:!1},{type:"TEMP",key:"localId",property:"localId",label:"Local ID",visible:!0},{type:"TEMP",key:"hasAssignedGroup",property:"hasAssignedGroup",label:"Assigned Group",visible:!0},{type:"TEMP",key:"hasDerivedInformationAsParticipant",property:"hasDerivedInformationAsParticipant",label:"Derived Information as Participant",visible:!1},{type:"TEMP",key:"hasDigitalArtifactThatIsAboutIt",property:"hasDigitalArtifactThatIsAboutIt",label:"Digital Artifact",visible:!0},{type:"TEMPRAW",key:"wasExtractedFromAnatomicalRegion",property:"wasExtractedFromAnatomicalRegion",label:"Extracted From Anatomical Region",visible:!0},{type:"TEMPRAW",key:"sample_anatomical_location",property:"sample_anatomical_location",label:"Sample Anatomical Location",visible:!0},{type:"TEMPRAW",key:"sample_type",property:"sample_type",label:"Sample Type",visible:!0},{type:"TEMP",key:"participantInPerformanceOf",property:"participantInPerformanceOf",label:"Participant in Performance Of",visible:!0}]},Person:{image:"./images/graph/user.svg",key:"Person",properties:[{type:"rdfs",key:"label",property:"label",label:"Name",visible:!0},{type:"sparc",key:"lastName",property:"lastName",label:"Last Name",visible:!1},{type:"sparc",key:"firstName",property:"firstName",label:"First Name",visible:!1},{type:"TEMP",key:"middleName",property:"middleName",label:"Middle Name",visible:!1},{type:"sparc",key:"hasORCIDId",property:"hasORCIDId",label:"ORCID Id",visible:!1},{type:"TEMP",key:"hasAffiliation",property:"hasAffiliation",label:"Affiliation",visible:!0},{type:"TEMP",key:"hasDataRemoteUserId",property:"hasDataRemoteUserId",label:"Data Remote User ID",visible:!0},{type:"TEMP",key:"contributorTo",property:"contributorTo",label:"Contributor To",visible:!0}]},Protocol:{image:"./images/graph/files/default_file.svg",key:"Protocol",properties:[{type:"rdfs",key:"label",property:"label",label:"Label",visible:!0},{type:"TEMP",key:"protocolHasNumberOfSteps",property:"protocolHasNumberOfSteps",label:"Number of Steps",visible:!0},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"Human URI",visible:!0},{type:"TEMP",key:"hasDoi",property:"hasDoi",label:"DOI",visible:!0,link:{property:"hasUriPublished"}}]},RRID:{image:"./images/graph/files/default_file.svg",key:"RRID",properties:[{type:"rdfs",key:"label",property:"label",label:"To be filled"},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"To be filled"}]},NCBITaxon:{image:"./images/graph/files/default_file.svg",key:"NCBITaxon",properties:[{type:"rdfs",key:"label",property:"label",label:"To be filled"},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"To be filled"}]},PATO:{image:"./images/graph/files/default_file.svg",key:"PATO",properties:[{type:"rdfs",key:"label",property:"label",label:"To be filled"},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"To be filled"}]},UBERON:{image:"./images/graph/files/default_file.svg",key:"UBERON",properties:[{type:"rdfs",key:"label",property:"label",label:"To be filled"},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"To be filled"}]},NamedIndividual:{image:"./images/graph/files/default_file.svg",key:"UBERON",properties:[{type:"rdfs",key:"label",property:"label",label:"To be filled"},{type:"TEMP",key:"hasUriHuman",property:"hasUriHuman",label:"To be filled"}]},Unknown:{image:"./images/graph/files/default_file.svg",key:"Unknown",properties:[]}},o={NamedIndividual:{ORCID:{type:"Person"},awards:{type:"Award"},collection:{type:"Collection"},group:{type:"Group"},contributor:{type:"Person"},dataset:{type:"Dataset"},sample:{type:"Sample"},subject:{type:"Subject"},RRID:{type:"RRID"},Protocol:{type:"Protocol"}},Class:{NCBITaxon:{type:"NCBITaxon"},PATO:{type:"PATO"},UBERON:{type:"UBERON"},Protocol:{type:"Protocol"}},sparc:{Protocol:{type:"Protocol",length:999}},ontology:{type:"Ontology",length:999},unknown:{type:"Unknown",length:0}}}},[[567,1,2]]]); +//# sourceMappingURL=main.a58cdcf3.chunk.js.map \ No newline at end of file diff --git a/static/js/main.410c588b.chunk.js.map b/static/js/main.a58cdcf3.chunk.js.map similarity index 99% rename from static/js/main.410c588b.chunk.js.map rename to static/js/main.a58cdcf3.chunk.js.map index d517993..802c4c7 100644 --- a/static/js/main.410c588b.chunk.js.map +++ b/static/js/main.a58cdcf3.chunk.js.map @@ -1 +1 @@ -{"version":3,"sources":["constants.js","utils/Splinter.js","app/widgets.js","images/check.svg","components/FileUploader/UploadSubmit.js","images/tree/dataset.svg","images/tree/folder.svg","styles/constant.js","images/tree/file.svg","utils/nodesFactory.js","images/close.svg","components/DatasetsListViewer/DatasetsListSplinter.js","redux/actions.js","App.js","app/mainLayout.js","components/EmptyContainer.js","components/ErrorDialog/ErrorDialog.js","components/DatasetsListViewer/DatasetsListDialog.js","images/upload-icon.svg","components/FileUploader/UploadView/ProgressBar.js","components/FileUploader/UploadView/Progress.js","images/nft.svg","images/mtl.svg","images/database.svg","components/FileUploader/UploadView/FileExtension.js","images/cancel.svg","components/FileUploader/UploadView/UploadProgress.js","images/delete.svg","components/FileUploader/UploadView/UploadError.js","components/FileUploader/UploadView/FilesUploading.js","components/FileUploader/Uploader.js","images/url.svg","images/link-green.svg","components/FileUploader/UrlUploader.js","components/FileUploader/UploadTabPanel.js","components/FileUploader/UploadDialogHeader.js","components/FileUploader/UploadDialog.js","images/logo.svg","images/toggle-left.svg","images/search.svg","components/Sidebar/Header.js","images/tree/down.svg","components/Sidebar/TreeView/TreeViewItem.js","components/Sidebar/TreeView/InstancesTreeView.js","components/Sidebar/List.js","components/Sidebar/Footer.js","components/Sidebar/Sidebar.js","images/tree/curve.svg","images/tree/linewithradius.svg","images/tree/filled-folder.svg","images/tree/filled-file.svg","images/tree/filled-dataset.svg","theme.js","utils/GraphViewerHelper.js","images/Icons.js","components/GraphViewer/GraphViewer.js","images/filter.svg","components/NodeDetailView/Footers/Footer.js","images/help.svg","components/NodeDetailView/Headers/Header.js","images/nifti.svg","components/NodeDetailView/Headers/FileHeader.js","images/user.svg","components/NodeDetailView/Headers/PersonHeader.js","images/dataset.svg","components/NodeDetailView/Headers/DatasetHeader.js","images/volume.svg","components/NodeDetailView/Headers/ProtocolHeader.js","components/NodeDetailView/Headers/CollectionHeader.js","components/NodeDetailView/Details/Views/SimpleLabelValue.js","components/NodeDetailView/Details/Details.js","images/link.svg","components/NodeDetailView/Details/Views/Links.js","components/NodeDetailView/Details/Views/SimpleLinkedChip.js","components/NodeDetailView/Details/utils.js","components/NodeDetailView/Details/FileDetails.js","components/NodeDetailView/Details/PersonDetails.js","components/NodeDetailView/Details/SampleDetails.js","components/NodeDetailView/Details/DatasetDetails.js","components/NodeDetailView/Details/SubjectDetails.js","components/NodeDetailView/Details/ProtocolDetails.js","components/NodeDetailView/Details/GroupDetails.js","components/NodeDetailView/Details/CollectionDetails.js","components/NodeDetailView/settings/SettingsItem.js","components/NodeDetailView/settings/SettingsListItems.js","components/NodeDetailView/settings/SettingsGroup.js","components/NodeDetailView/settings/Settings.js","components/NodeDetailView/factory.js","images/divider.svg","components/NodeDetailView/Details/Views/Breadcrumbs.js","app/componentMap.js","components/NodeDetailView/NodeDetailView.js","redux/initialState.js","redux/store.js","redux/middleware.js","app/layout.js","serviceWorker.js","index.js","utils/filesHandler.js","utils/graphModel.js"],"names":["IMPORT_TEXT","ADD_DATASET","FILE_UPLOAD_PARAMS","acceptedFileExtensions","maxFileSize","maxFiles","detailsLabel","subject_key","protocols_key","contributors_key","GRAPH_SOURCE","TREE_SOURCE","SUBJECTS_LEVEL","PROTOCOLS_LEVEL","CRONTRIBUTORS_LEVEL","N3","require","ttl2jsonld","parse","Splinter","jsonFile","turtleFile","filterNode","node","basename","includes","this","factory","NodesFactory","types","jsonData","levelsMap","groups","turtleData","tree","undefined","nodes","edges","root_id","tree_map","proxies_map","forced_edges","forced_nodes","tree_parents_map","dataset_id","processDatasetId","store","Store","rdf_to_json","rdf_to_json_map","Map","tree_parents_map2","JSON","that","Promise","resolve","reject","Parser","err","quad","prefixes","addQuad","push","prefix","iri","String","forEach","toTrim","Array","isArray","RDF_TO_JSON_TYPES","some","item","key","id","replace","set","n","previousLevel","map","level","updateLevels","neighbors","processDataset","filteredNodes","Set","filter","type","rdfTypes","UBERON","Award","Collection","children_counter","Sample","attributes","hasFolderAboutIt","cleanLinks","Subject","Object","keys","groupKey","groupNodes","name","groupNode","subjects","link","find","l","source","target","a","get","b","awardEmpty","collectionEmpty","sampleEmpty","sameLevels","links","newCleanLinks","length","extractTurtle","processJSON","data","extractJson","initialiseNodesEdges","processTurtle","convertRDFToJson","create_graph","create_tree","mergeData","generateData","typeFound","typesModel","unknown","owl","rdfType","NamedIndividual","Class","ontology","sparc","split","pop","sparcType","graph_node","additional_properties","console","error","publishedURI","value","proxies","properties","tree_reference","collapsed","childLinks","proxy","Util","isBlankNode","subject","predicate","type_key","object","datatype","found","indexOf","update_node","newNode","NCBITaxon","PATO","RRID","label","dataset_node","ontology_node","get_type","typedNode","createNode","Unknown","delete","dataset","concat","updatedAbout","isAbout","replaceNode","updateTechniques","protocolEmploysTechnique","temp_edges","target_node","parent","config","order","group","groupID","samples","nodeF","img","Image","src","icon","tag","Group","protocols","Protocol","contributors","contributor","temp","organise_subjects","Person","derivedFrom","source_node","nodesToRemove","index","array","Dataset","hasProtocol","hasDoi","from","hasUriPublished","dataset_relative_path","animalSubjectIsOfStrain","animalSubjectIsOfSpecies","hasBiologicalSex","hasDerivedInformationAsParticipant","participantInPerformanceOf","hasUriHuman","File","uri_human","relativePath","substr","lastIndexOf","unshift","element","splice","getSubjects","build_node","entries","isLiteral","link_nodes","cast_nodes","organise_nodes","leaf","uri_api","parent_id","remote_id","children","folder","jsonNode","splitName","newName","localId","parentNode","buildFolder","folderChildren","child","linkToNode","tempChildren","copiedItem","new_node","buildNodeFromJson","node_id","identifier","size","size_bytes","mimetype","updated","timestamp_updated","status","tree_root","generateLeaf","build_leaf","match","tree_node","graph_reference","every","fix_links","identify_childless_parents","newChild","items","text","path","findReference","hashMap","str","k","reference","NodeViewWidget","WidgetStatus","ACTIVE","component","panelName","enableClose","enableRename","enableDrag","UploadSubmit","handleClose","enabledButton","Button","variant","fullWidth","disableElevation","color","onClick","disabled","CHECK","alt","vars","fontFamily","primaryColor","primaryColorHover","outlinedButtonHover","secondaryColor","searchBg","primaryBgColor","primaryTextColor","lightBorderColor","noInstanceColor","inputTextColor","iconButtonHover","radius","gutter","whiteColor","sidebarIconColor","primaryTransition","errorColor","progressErrorColor","barSuccessColor","tabsBgColor","progressBgPrimary","dropzoneBorderColor","dropzoneTextColor","inputFocusShadow","successInputFocusShadow","placeHolderColor","dialogShadow","tabsBorderColor","dialogBodyBgColor","sideBarTextColor","chipBgColor","matlab","nifti","volume","sideBarLabelColor","treeBorderColor","scrollbarBg","gray800","gray400","gray25","grey700","grey500","grey100","grey400","grey50","grey25","grey600","createImage","extension","image","extractProperties","ttlTypes","property","type_property","json_prop","new_attribute","step","innerPath","trimType","parseFloat","Contributor","firstName","middleName","lastName","namesArray","typed_node","DELETE_DATASET","SET_DATASET_LIST","SELECT_INSTANCE","TRIGGER_ERROR","SELECT_GROUP","TOGGLE_METADATA_SETTINGS","TOGGLE_METADATA_ITEM_VISIBILITY","UPDATE_METADATA_ITEMS_ORDER","addDataset","deleteDataset","setDatasetsList","datasets","selectInstance","instance","selectGroup","triggerError","message","error_message","toggleSettingsPanelVisibility","visible","toggleMetadataItemVisibility","groupTitle","itemId","updateMetaDataItemsOrder","newItemsOrder","payload","title","hot","module","queryParams","URLSearchParams","window","location","search","datasetID","doi","local","dispatch","useDispatch","useState","openUploadDialog","setOpenUploadDialog","openDatasetsListDialog","setOpenDatasetsListDialog","useSelector","state","sdsState","doiMatch","initialised","setInitialised","loading","setLoading","turtle_url","json_url","splinter","fillDataset","turtle","json","getDatasetId","getGraph","getTree","_dataset","graph","addWidget","substring","graph_id","loadFiles","datasets_url","FileHandler","get_remote_file","url","loadDatsetFromDOI","fileData","file","DatasetsListSplinter","version","datasetStorage","localStorage","getItem","datasetsStorage","parsedDatasets","toLowerCase","setItem","stringify","useEffect","storage","fileHandler","summaryURL","repository_url","available_datasets","theme","display","className","open","useStyles","makeStyles","layoutContainer","position","width","height","MainLayout","classes","useStore","LayoutManager","setComponent","myManager","getLayoutManagerInstance","model","visitNodes","setEventListener","visibleChild","_activeTabSet","_children","_visible","event","CustomEvent","detail","document","dispatchEvent","getComponent","EmptyContainer","props","active","ErrorDialog","onClose","DatasetsListDialog","React","searchField","setSearchField","selectedIndex","setSelectedIndex","filteredDatasets","setFilteredDatasets","handleDone","getFormattedListTex","reg","RegExp","storageVersion","storedDatasetsInfo","callback","hasUriApi","lowerCaseLabel","statusOnPlatform","loadDatasets","PaperProps","style","align","CLOSE","datasetsButtonText","datasetsButtonSubtitleText","datasetsDialogSearchText","onChange","lowerCaseSearch","filtered","selected","primary","dangerouslySetInnerHTML","__html","ErrorLinearProgress","withStyles","createStyles","colorPrimary","backgroundColor","barColorPrimary","LinearProgress","ProgressBar","Progress","progress","errors","Box","Typography","FileExtension","NFT","MTL","DATABASE","uploadFile","onProgress","onUpload","get_local_file","UploadProgress","onDelete","setProgress","upload","CANCEL","cursor","UploadError","DELETE","FilesUploading","files","fileWrapper","totalFiles","Uploader","rdf","setRdf","setJson","onDrop","Math","random","nodeRef","useRef","fileObjects","e","showPreviewsInDropzone","accFiles","acceptedFiles","onDropRejected","rejFiles","showAlerts","ref","Icon","UploadIcon","dropzoneText","filesLimit","UrlUploader","loader","setLoader","setUrl","fileDownloaded","setFileDownloaded","setFiles","FormControl","OutlinedInput","placeholder","startAdornment","InputAdornment","LINK_GREEN","LINK","endAdornment","fileHandler2","fileExt","curr","urls","base_url","shift","getJsonURL","CircularProgress","TabPanel","other","role","hidden","a11yProps","UploadDialogHeader","handleChange","Tabs","Tab","UploadDialog","setValue","_json","_turtle","Dialog","newValue","UploadTabPanel","SidebarHeader","expand","setExpand","setSearchTerm","searchTerm","Logo","IconButton","ToggleLeft","FilledInput","disableUnderline","Search","StyledTreeItem","labelText","labelInfo","labelIcon","iconClass","onNodeSelect","TreeItem","nodeId","preventDefault","OpenInNewRounded","DOWN","InstancesTreeView","nodeSelected","instance_selected","setNodes","setItems","widgets","isOpenFile","layoutActions","globalId","matchingTitle","lowercaseSearch","res","matchSearch","o","obj","recurse","current","nestedLoop","searchTree","treeRef","createRef","TreeView","defaultExpanded","defaultCollapseIcon","defaultExpandIcon","defaultEndIcon","expanded","onNodeToggle","nodeIds","original","newPath","getTreeItemsFromData","treeItems","treeItemData","itemLength","labelProps","DATASET","FOLDER","FILE","SidebarContent","selectedNodeElement","getElementById","scrollIntoView","behavior","block","inline","SidebarFooter","Divider","marginBottom","background","justifyContent","margin","Sidebar","progressErrorBg","createTheme","typography","h3","fontWeight","fontSize","lineHeight","overrides","MuiBreadcrumbs","root","marginTop","ol","separator","marginLeft","marginRight","li","letterSpacing","MuiChip","borderRadius","alignItems","padding","MuiCircularProgress","MuiLinearProgress","colorSecondary","barColorSecondary","MuiDropzoneArea","borderWidth","borderColor","minHeight","flexDirection","MuiOutlinedInput","boxShadow","notchedOutline","input","adornedStart","paddingLeft","adornedEnd","paddingRight","MuiDialog","paperWidthSm","MuiTabs","borderTop","borderBottom","MuiTab","minWidth","textTransform","opacity","textAlign","MuiFilledInput","paddingTop","paddingBottom","MuiIconButton","MuiButton","containedPrimary","outlinedPrimary","MuiCssBaseline","boxSizing","overflow","scrollbarWidth","bottom","zIndex","flexShrink","transition","flexWrap","maxWidth","flexGrow","content","right","border","backgroundImage","FILLED_DATASET","FILLED_FILE","FILLED_FOLDER","transform","left","top","LINE","backgroundRepeat","CURVE","textOverflow","whiteSpace","borderRight","borderTopRightRadius","borderBottomRightRadius","maxHeight","wordWrap","ONE_SECOND","GRAPH_COLORS","linkHover","hoverRect","textHoverRect","textHover","textColor","collapsedFolder","nodeSeen","textBGSeen","TOP_DOWN","layout","maxNodesLevel","hierarchyVariant","LEFT_RIGHT","RADIAL_OUT","radialVariant","roundRect","ctx","x","y","alpha","globalAlpha","fillStyle","beginPath","moveTo","arcTo","closePath","fill","collapseSubLevels","dendrogram","d3","nodeSize","separation","d","dendrogramGenerator","hierarchy","getPrunedTree","nodesById","fromEntries","visibleNodes","visibleLinks","traverseTree","levels","maxLevel","parseInt","reduce","traverse","allNodes","descendants","mapNodes","xPos","fx","fy","yPos","DatasetIcon","SvgIcon","viewBox","rx","ViewTypeIcon","styles","GraphViewer","graphRef","hoverNode","setHoverNode","selectedNode","setSelectedNode","highlightNodes","setHighlightNodes","highlightLinks","setHighlightLinks","selectedLayout","setSelectedLayout","layoutAnchorEl","setLayoutAnchorEl","Boolean","setData","nodeClickSource","groupSelected","group_selected","setCollapsed","previouslySelectedNodes","setPreviouslySelectedNodes","handleLayoutClose","handleLayoutChange","setForce","setTimeout","resetCamera","handleNodeRightClick","ggv","centerAt","zoom","zoomToFit","d3Force","distance","strength","force","sqrt","updatedData","addEventListener","v","_attributes","timeout","handleNodeHover","prev","sameDataset","prevNode","divElement","clear","add","neighbor","d2","cooldownTicks","onEngineStop","linkColor","has","linkWidth","dagLevelDistance","linkDirectionalParticles","forceRadial","linkDirectionalParticleWidth","linkCanvasObjectMode","onLinkHover","nodeCanvasObject","nodeImageSize","hoverRectDimensions","hoverRectPosition","textHoverPosition","drawImage","font","textBaseline","nodeName","textProps","hoverRec","fillText","collapsedNodes","paintNode","nodeCanvasObjectMode","nodeVal","nodeRelSize","onNodeHover","onNodeClick","handleNodeLeftClick","onNodeRightClick","dagMode","onDagError","loopNodeIds","enableNodeDrag","enableZoomPanInteraction","enablePointerInteraction","controls","Menu","anchorEl","keepMounted","MenuItem","Tooltip","currentTarget","zoomIn","zoomOut","expandAll","ustifyContent","Link","issues_url","docs_url","NodeFooter","FILTER","PersonHeader","headingStyle","HELP","FileHeader","PERSON","DatasetHeader","ProtocolHeader","VOLUME","CollectionHeader","SimpleLabelValue","heading","UnknownDetails","idDetails","toString","DetailLinks","href","LINKICON","SimpleChip","chips","handleClick","test","Chip","isValidUrl","urlString","startsWith","FileDetails","filePropertiesModel","metadata_model","propValue","Links","SimpleLinkedChip","PersonDetails","SampleDetails","samplePropertiesModel","sample","DatasetDetails","datasetPropertiesModel","copiedDOI","setCopiedDOI","navigator","clipboard","writeText","newClipboardState","asText","SubjectDetails","subjectPropertiesModel","getGroupNode","groupName","isGroup","ProtocolDetails","protocolHasNumberOfSteps","GroupDetails","groupPropertiesModel","CollectionDetails","collectionPropertiesModel","collection","SettingsItem","ListItem","disableGutters","ListItemText","ListItemSecondaryAction","edge","disableRipple","SettingsListItems","provided","List","droppableProps","innerRef","subheader","ListSubheader","disableSticky","charAt","toUpperCase","slice","draggableId","isDragDisabled","draggableProps","dragHandleProps","SettingsGroup","onDragEnd","result","destination","itemsCopy","reorderedItem","droppableId","Settings","showSettingsContent","settings_panel_visible","metaDataPropertiesModel","nodeDetail","Details","DetailsFactory","createDetails","details","HeaderBreadcrumbs","goToLink","Breadcrumbs","maxItems","pages","page","componentMap","otherDetails","nodeDetails","latestNodeVisited","reverse","singleNode","getDetail","sx","mt","close","getSettings","TuneRounded","savedMetadataModel","sdsInitialState","all_tree","reducers","action","Actions","ids","updatedMetadataModel","groupIndex","findIndex","itemToToggle","sort","updatedMetadataModelOrder","LayoutActions","SET_LAYOUT","createStore","next","REMOVE_WIDGET","getState","baseLayout","global","tabEnableClose","tabSetHeaderHeight","tabSetTabStripHeight","enableEdgeDock","sideBorders","hostname","ReactDOM","render","StrictMode","App","serviceWorker","ready","then","registration","unregister","axios","progressCallback","reader","FileReader","onload","response","onprogress","lengthComputable","loaded","total","readAsText","errorCallback","crossDomain","responseType","onDownloadProgress","progressEvent","catch","log","ORCID","awards"],"mappings":"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","file":"static/js/main.410c588b.chunk.js","sourcesContent":["export const IMPORT_TEXT = 'Import a new dataset';\nexport const ADD_DATASET = 'Import Dataset';\nexport const LIST_DATASETS = 'List Datasets';\nexport const SPARC_DATASETS = 'SPARC Datasets';\nexport const FILE_UPLOAD_PARAMS = {\n acceptedFileExtensions: ['json', 'ttl'],\n maxFileSize: 5242880,\n maxFiles: 6,\n};\nexport const NODES = [\"dataset\", \"nifti\", \"volume\", \"matlab\"];\n\nexport const detailsLabel = \"_details\";\n\nexport const subject_key = \"all_subjects\";\nexport const protocols_key = \"all_protocols\";\nexport const contributors_key = \"all_contributors\";\n\nexport const GRAPH_SOURCE = \"GRAPH\";\nexport const TREE_SOURCE = \"TREE\";\nexport const SUBJECTS_LEVEL = 2;\nexport const PROTOCOLS_LEVEL = 2;\nexport const CRONTRIBUTORS_LEVEL = 2;","import NodesFactory from './nodesFactory';\n\nimport {\n rdfTypes,\n type_key,\n typesModel,\n RDF_TO_JSON_TYPES\n} from './graphModel';\n\nimport config from './../config/app.json';\n\nimport {\n subject_key,\n protocols_key,\n contributors_key, SUBJECTS_LEVEL, PROTOCOLS_LEVEL, CRONTRIBUTORS_LEVEL\n} from '../constants';\nimport * as d3 from 'd3';\n\nconst N3 = require('n3');\nconst ttl2jsonld = require('@frogcat/ttl2jsonld').parse;\n\nconst TMP_FILE = \".tmp\";\n\n/*\n * Brief explanation of the Splinter module:\n *\n * This class is meant to take in input the json and turtle files that compose the sds datasets.\n * All the processing starts from the getGraph or getTree methods which call processDataset that does:\n *\n * # initialiseNodesEdges\n * Initialise all the global vars, arrays and maps used to create the graph and tree.\n *\n * # processTurtle\n * Through the library N3 it reads the turtle file to get triples of object-predicate-subject and the types.\n *\n * # processJSON\n * Nothing fancy, just reading a json file.\n *\n * # create_graph\n * It gets all the subjects that will be the nodes of our graph, it transform all the object as properties of the subjects,\n * it cleans the array from empty nodes and then it calls organise_nodes() that reorganise the data per category based on the\n * type of each node that will be casted using a factory and it arrange also the links between nodes accordingly.\n * The factory defined in the same folder of this module, look at the code in case interested, it's quite simple.\n *\n * # create_tree\n * It reads the json and create 2 maps, the tree_map where we keep each node by id.\n * The second map, tree_parent_map, it is instead used to create the hierarchy since we store all the nodes by parent id, so\n * once we get the tree root we can easily get the tree looking at the children of the root and then recursively we do the same\n * until the children do not exists anymore in the tree_parent_map data structure, so that means we reached the end of that branch.\n *\n * # mergeData\n * It links together the tree and the nodes of the graph, so that when we click on the graph we get the linked node on the tree\n * and viceversa clicking on the tree. It also push some more data into the graph (the graph is generate from the turtle file)\n * from the json file, since all the files that belongs to subjects and samples are stored in the json but we need to make them\n * available also for the graph. This is where this operation is done.\n *\n * # generateData\n * This is the last step where we take all the data created previously and manipulated to then create first of all the tree from\n * the tree_parent_map. Once the tree is ready we then create the nodes for the graph and we fix the links broken at the mergeData\n * step since some artificial nodes have been pushed into the nodes array that will be used for the graph.\n *\n */\n\n\nclass Splinter {\n constructor(jsonFile, turtleFile) {\n this.factory = new NodesFactory();\n this.jsonFile = jsonFile;\n this.turtleFile = turtleFile;\n this.types = {};\n this.jsonData = {};\n this.levelsMap = {};\n this.groups = {};\n this.turtleData = [];\n this.tree = undefined;\n this.nodes = undefined;\n this.edges = undefined;\n this.root_id = undefined;\n this.tree_map = undefined;\n this.proxies_map = undefined;\n this.forced_edges = undefined;\n this.forced_nodes = undefined;\n this.tree_parents_map = undefined;\n this.dataset_id = this.processDatasetId();\n this.store = new N3.Store();\n this.rdf_to_json = undefined;\n this.rdf_to_json_map = undefined;\n }\n\n /* Initialise global maps before to start data manipulation */\n initialiseNodesEdges() {\n this.edges = [];\n this.nodes = new Map();\n this.tree_map = new Map();\n this.proxies_map = new Map();\n this.tree_parents_map = new Map();\n this.tree_parents_map2 = new Map();\n this.rdf_to_json_map = new Map();\n }\n\n\n extractJson() {\n if (typeof this.jsonFile === 'object' && this.jsonFile !== null) {\n return this.jsonFile;\n } else {\n return JSON.parse(this.jsonFile);\n }\n }\n\n\n extractTurtle() {\n var that = this;\n return new Promise(function(resolve, reject) {\n const parser = new N3.Parser();\n\n let callbackParse = function (err, quad, prefixes) {\n if (quad) {\n that.store.addQuad(quad);\n that.turtleData.push(quad);\n } else {\n resolve(that.turtleData);\n }\n }\n\n const prefixCallback = function (prefix, iri) {\n that.types[String(prefix)] = {\n \"type\": prefix,\n \"iri\": iri\n };\n };\n parser.parse(that.turtleFile, callbackParse, prefixCallback);\n });\n }\n\n convertRDFToJson () {\n this.rdf_to_json = ttl2jsonld(this.turtleFile);\n this.rdf_to_json['@graph'].forEach(node => {\n let found = false;\n let toTrim = '';\n if (Array.isArray(node['@type'])) {\n found = RDF_TO_JSON_TYPES.some( item => {\n if (node['@type'].includes(item.key)) {\n toTrim = item.toTrim;\n return true;\n }\n return false;\n });\n } else {\n found = RDF_TO_JSON_TYPES.some( item => {\n if (node['@type'] === item.key) {\n toTrim = item.toTrim;\n return true;\n }\n return false;\n });\n }\n if (found) {\n let id = this.types[toTrim].iri.id + node['@id'].replace(toTrim + ':', '');\n this.rdf_to_json_map.set(id, node);\n }\n });\n }\n\n\n getJson() {\n return this.jsonData;\n }\n\n\n getTurtle() {\n return this.turtleData;\n }\n\n updateLevels(n, previousLevel) {\n n?.map( node => {\n if ( node?.level > previousLevel ){\n this.updateLevels(node?.neighbors, node.level);\n node.level = node.level + 1;\n }\n });\n\n return;\n }\n\n async getGraph() {\n if (this.nodes === undefined || this.edges === undefined) {\n await this.processDataset();\n }\n let filteredNodes = [...new Set(this.forced_nodes?.filter( n => n.type !== rdfTypes.UBERON.key && n.type !== rdfTypes.Award.key && !(n.type === rdfTypes.Collection.key && n.children_counter === 0)))]\n filteredNodes = filteredNodes.filter( node => {\n if ( node.type === rdfTypes.Sample.key ) {\n if ( node.attributes.hasFolderAboutIt !== undefined ){\n return true;\n } else {\n return true;\n }\n } else {\n return true;\n }\n })\n let cleanLinks = [];\n let that = this;\n\n // Count how many subjects each Group has\n filteredNodes?.forEach( n => {\n if ( n.type === rdfTypes.Subject.key ) {\n let keys = Object.keys(that.groups);\n keys.forEach( key => {\n if ( n.attributes ) {\n if ( n?.attributes[key] ) {\n let groupKeys = Object.keys(that.groups[key]);\n groupKeys.forEach( groupKey => {\n if ( n?.attributes[key][0] === groupKey ) {\n const groupNodes = filteredNodes?.filter(n => n.name == groupKey);\n groupNodes?.forEach( groupNode => {\n if ( n?.id?.includes(groupNode.id) ) {\n groupNode.subjects += 1;\n }\n })\n }\n })\n }\n }\n })\n }\n })\n\n // Assign neighbors, to highlight links\n this.forced_edges.forEach(link => {\n // Search for existing links\n let existingLing = cleanLinks.find( l => l.source === link.source && l.target === link.target );\n if ( !existingLing ) {\n const a = this.nodes.get( link.source );\n const b = this.nodes.get( link.target );\n const awardEmpty = ( a?.type !== rdfTypes.Award.key && b?.type !== rdfTypes.Award.key );\n const collectionEmpty = ((a?.type === rdfTypes.Collection.key && a.children_counter < 1 ) || ( b?.type === rdfTypes.Collection.key && b.children_counter < 1));\n const sampleEmpty = ((a?.type === rdfTypes.Sample.key && a.children_counter < 1 ) || ( b?.type === rdfTypes.Sample.key && b.children_counter < 1))\n const sameLevels = a?.level === b?.level;\n if ( a && b && awardEmpty && !collectionEmpty && !sampleEmpty && !sameLevels) {\n !a.neighbors && (a.neighbors = []);\n !b.neighbors && (b.neighbors = []);\n if ( !a.neighbors.find( n => n.id === b.id )){\n a.neighbors.push(b);\n }\n if ( !b.neighbors.find( n => n.id === a.id )){\n b.neighbors.push(a);\n }\n \n !a.links && (a.links = []);\n !b.links && (b.links = []);\n a.links.push(link);\n b.links.push(link);\n if ( !link.source.id ) {\n link.source = this.nodes.get(link.source)\n }\n \n if ( !link.target.id ) {\n link.target = this.nodes.get(link.target)\n }\n cleanLinks.push(link);\n }\n }\n });\n\n let newCleanLinks = cleanLinks.filter(link => {\n\n const collectionEmpty = ((link?.target?.type === rdfTypes.Collection.key && link?.target?.neighbors?.length <= 1 ) || ( link?.source?.type === rdfTypes.Collection.key && link?.source?.neighbors?.length <= 1));\n if ( collectionEmpty ) {\n return false;\n }\n return true;\n });\n return {\n nodes: filteredNodes,\n links: newCleanLinks,\n levelsMap : this.levelsMap\n };\n }\n\n\n async getTree() {\n if (this.tree === undefined) {\n await this.processDataset();\n }\n return this.tree;\n }\n\n\n getDatasetId() {\n return this.dataset_id;\n }\n\n\n async processTurtle() {\n await this.extractTurtle();\n }\n\n\n processDatasetId() {\n this.processJSON();\n return this.jsonData.data[0].dataset_id.replace('dataset:', '');\n }\n\n\n processJSON() {\n this.jsonData = this.extractJson()\n }\n\n\n /* Entry point for the whole conversion and graph/tree creation */\n async processDataset() {\n this.initialiseNodesEdges()\n await this.processTurtle();\n this.convertRDFToJson();\n this.processJSON();\n this.create_graph();\n this.create_tree();\n this.mergeData();\n this.generateData()\n }\n\n\n /* Creates a map of types that will be used by the graphModel.js in order to extract values from each type */\n get_type(node) {\n const typeFound = {\n type: typesModel.unknown.type,\n length: 0\n }\n for (const type of node?.types) {\n if (type.type === this.types.owl.iri.id + \"NamedIndividual\") {\n for (const rdfType in this.types) {\n if ((node.id.includes(this.types[rdfType].iri.id)) && (this.types[rdfType].iri.id.length > typeFound.length) && (typesModel.NamedIndividual[String(this.types[rdfType].type)] !== undefined)) {\n typeFound.type = typesModel.NamedIndividual[String(this.types[rdfType].type)].type;\n typeFound.length = this.types[rdfType].iri.id.length;\n }\n }\n } if (type.type === this.types.owl.iri.id + \"Class\") {\n for (const rdfType in this.types) {\n if ((node.id.includes(this.types[rdfType].iri.id)) && (this.types[rdfType].iri.id.length > typeFound.length) && (typesModel.Class[String(this.types[rdfType].type)] !== undefined)) {\n typeFound.type = typesModel.Class[String(this.types[rdfType].type)].type;\n typeFound.length = this.types[rdfType].iri.id.length;\n }\n }\n } else if (type.type === this.types.owl.iri.id + \"Ontology\") {\n typeFound.type = typesModel.ontology.type;\n typeFound.length = typesModel.ontology.length;\n } else if ((type.type.includes(this.types.sparc.iri.id)) && (typesModel.sparc[type.type.split(this.types.sparc.iri.id).pop()] !== undefined)) {\n let sparcType = type.type.split(this.types.sparc.iri.id).pop();\n typeFound.type = typesModel.sparc[sparcType].type;\n typeFound.length = typesModel.sparc[sparcType].length;\n }\n }\n return typeFound.type;\n }\n\n\n build_node(node) {\n const graph_node = this.nodes.get(node.id);\n const additional_properties = this.rdf_to_json_map.get(node.id);\n if (graph_node) {\n console.error(\"Issue with the build node, this node is already present\");\n console.error(node);\n } else {\n this.nodes.set(node.id, {\n id: node.id,\n attributes: {publishedURI : \"\"},\n types: [],\n name: node.value,\n proxies: [],\n properties: [],\n tree_reference: null,\n children_counter: 0,\n collapsed: false,\n childLinks : [],\n additional_properties: additional_properties,\n });\n }\n }\n\n\n update_node(quad, proxy) {\n // check if the node is blank\n if (N3.Util.isBlankNode(quad.subject)) {\n return;\n }\n let graph_node = this.nodes.get(quad.subject.id);\n // check if node to update exists in the list of nodes.\n if (graph_node) {\n if (quad.predicate.id === type_key) {\n graph_node.types = [...graph_node.types, {\n predicate: quad.predicate.id,\n type: quad.object.datatype ? quad.object.datatype.id : quad.object.id,\n value: quad.object.value\n }];\n this.nodes.set(quad.subject.id, graph_node);\n } else {\n graph_node.properties = [...graph_node.properties, {\n predicate: quad.predicate.id,\n type: quad.object.datatype ? quad.object.datatype.id : quad.object.id,\n value: quad.object.value\n }];\n if (proxy) {\n graph_node.proxies = [...graph_node.proxies, quad.object.id];\n this.proxies_map.set(quad.object.id, quad.subject.id);\n }\n this.nodes.set(quad.subject.id, graph_node);\n }\n } else {\n // if the node does not exist there should be referenced by a proxy inside another node.\n var found = true;\n this.nodes.forEach((value, key) => {\n if (value.proxies.indexOf(String(quad.subject.id)) !== -1) {\n value.properties = [...value.properties, {\n predicate: quad.predicate.id,\n type: quad.object.datatype,\n value: quad.object.value\n }];\n value.proxies = [...value.proxies, quad.object.id];\n this.proxies_map.set(quad.object.id, key);\n this.nodes.set(key, value);\n found = false;\n }\n });\n if (found) {\n // if we end up here it means we have a node with links to ids or proxy, so we do not know\n // where this node should go.\n console.error(\"Houston, we have a problem!\");\n console.error(quad);\n }\n }\n }\n\n\n link_nodes(quad) {\n // before to create the node check that:\n // 1. subject and object are nodes in our graph\n // 2. we are not self referencing the node with a property that we don't need\n const source = this.nodes.get(quad.subject.id);\n const target = this.nodes.get(quad.object.id);\n if (source && target && (quad.subject.id !== quad.object.id)) {\n this.edges.push({\n source: quad.subject.id,\n target: quad.object.id\n });\n this.update_node(quad, false);\n } else {\n // if the conditions above are not satisfied we push this relationship as a proxy of another node already present\n this.update_node(quad, true);\n }\n }\n\n replaceNode(a) {\n let newNode = {\"value\": a};\n if( a?.includes(rdfTypes.NCBITaxon.key) || a?.includes(rdfTypes.PATO.key) || a?.includes(rdfTypes.UBERON.key) || a?.includes(rdfTypes.RRID.key) ) {\n let node = this.nodes.get(a);\n if (node) {\n newNode = {\"value\": node?.attributes.label[0], \"link\": node?.id};\n }\n }\n\n return newNode;\n }\n\n cast_nodes() {\n // prepare 2 place holders for the dataset and ontology node, the ontology node is not required but\n // we might need to display some of its properties, so we merge them.\n let dataset_node = undefined;\n let ontology_node = undefined;\n // cast each node to the right type, also keep trace of the dataset and ontology nodes.\n this.nodes.forEach((value, key) => {\n value.type = this.get_type(value);\n const typedNode = this.factory.createNode(value, this.types);\n if (typedNode.type !== rdfTypes.Unknown.key) {\n this.nodes.set(key, typedNode);\n } else {\n this.nodes.delete(key);\n this.edges = this.edges.filter(link => {\n if (link.source !== key && link.target !== key) {\n return true;\n }\n return false;\n })\n }\n if (value.type === typesModel.NamedIndividual.dataset.type) {\n dataset_node = value;\n }\n if (value.type === typesModel.ontology.type) {\n ontology_node = value;\n }\n });\n // save the dataset id used for the uri_api later with the tree\n this.root_id = dataset_node.id;\n // merge the 2 nodes together\n dataset_node.properties = dataset_node.properties.concat(ontology_node.properties);\n dataset_node.proxies = dataset_node.proxies.concat(ontology_node.proxies);\n let updatedAbout = [];\n dataset_node.level = 1;\n let that = this;\n dataset_node?.attributes?.isAbout?.forEach( (a) => {\n updatedAbout.push(that.replaceNode(a));\n });\n dataset_node.attributes.isAbout = updatedAbout;\n\n let updateTechniques = [];\n dataset_node.attributes.protocolEmploysTechnique?.forEach( (a) => {\n if( a.includes(rdfTypes.NCBITaxon.key) || a.includes(rdfTypes.PATO.key) || a.includes(rdfTypes.UBERON.key) ) {\n let node = this.nodes.get(a);\n if (node) {\n updateTechniques.push({\"value\": node?.attributes.label[0], \"link\": node?.id});\n } else {\n updateTechniques.push({\"value\": a});\n }\n } else {\n updateTechniques.push({\"value\": a});\n }\n });\n dataset_node.attributes.protocolEmploysTechnique = updateTechniques;\n this.nodes.set(dataset_node.id, dataset_node);\n this.nodes.delete(ontology_node.id);\n // fix links that were pointing to the ontology\n let temp_edges = this.edges?.map(link => {\n if (link.source === ontology_node.id) {\n link.source = dataset_node.id\n }\n if (link.target === ontology_node.id) {\n link.target = dataset_node.id\n }\n return link;\n })\n this.edges = temp_edges;\n return dataset_node;\n }\n\n organise_subjects(target_node, link, groups){\n let parent = this.nodes.get(subject_key);\n let keys = Object.keys(config.groups.order);\n keys.forEach( key => {\n let group = config.groups.order[key];\n if ( target_node.attributes[key]?.[0] ) {\n let source = this.nodes.get(target_node.attributes[key]?.[0]);\n if ( source !== undefined ) {\n target_node.attributes[key][0] = source.attributes.label[0];\n }\n \n const groupID = parent.id + \"_\" + target_node.attributes[key]?.[0].replace(/\\s/g, \"\");\n if ( this.nodes.get(groupID) === undefined ) {\n let name = target_node.attributes[key]?.[0];\n\n const groupNode = {\n id: groupID,\n name: name,\n type: typesModel.NamedIndividual.group.type,\n properties: key,\n parent : parent,\n proxies: [],\n level: parent.level + 1,\n tree_reference: null,\n children_counter: 0,\n collapsed : false,\n childLinks : [],\n samples : 0, \n subjects : 0,\n publishedURI : \"\",\n dataset_id : this.dataset_id\n };\n let nodeF = this.factory.createNode(groupNode);\n const img = new Image();\n img.src = group.icon;\n nodeF.img = img;\n this.nodes.set(groupID, nodeF);\n groups.push({\n source: parent.id,\n target: nodeF.id\n });\n this.groups[key] ? this.groups[key][nodeF.name] = nodeF : this.groups[key] = {[nodeF.name] : nodeF};\n parent = groupNode;\n } else {\n parent = this.nodes.get(groupID);\n }\n } else {\n console.error(\"The group node already exists!\", group.tag);\n }\n });\n link.source = parent.id;\n target_node.level = parent.level + 1;\n target_node.attributes.publishedURI = \"\"\n target_node.id = parent.id + target_node.name;\n target_node.parent = parent;\n target_node.childLinks = [];\n target_node.collapsed = target_node.type === typesModel.NamedIndividual.subject.type;\n this.nodes.set(target_node.id, target_node);\n }\n\n organise_nodes(parent) {\n // structure the graph per category\n const id = parent.id;\n const subjects = {\n id: subject_key,\n name: \"Subjects\",\n type: rdfTypes.Group.key,\n properties: [],\n parent : parent,\n proxies: [],\n level: SUBJECTS_LEVEL,\n tree_reference: null,\n children_counter: 0,\n collapsed : false,\n childLinks : []\n };\n if (this.nodes.get(subject_key) === undefined) {\n this.nodes.set(subject_key, this.factory.createNode(subjects));\n const img = new Image();\n img.src = \"./images/graph/group.svg\";\n subjects.img = img; \n this.edges.push({\n source: id,\n target: subjects.id\n })\n } else {\n console.error(\"The subjects node already exists!\");\n }\n\n const protocols = {\n id: protocols_key,\n name: \"Protocols\",\n type: typesModel.sparc.Protocol.type,\n properties: [],\n parent : parent,\n proxies: [],\n level: PROTOCOLS_LEVEL,\n tree_reference: null,\n children_counter: 0,\n collapsed : false,\n childLinks : []\n };\n if (this.nodes.get(protocols_key) === undefined) {\n this.nodes.set(protocols_key, this.factory.createNode(protocols));\n this.edges.push({\n source: id,\n target: protocols.id\n })\n } else {\n console.error(\"The subjects node already exists!\");\n }\n\n const contributors = {\n id: contributors_key,\n name: \"Contributors\",\n type: typesModel.NamedIndividual.contributor.type,\n properties: [],\n parent : parent,\n proxies: [],\n level: CRONTRIBUTORS_LEVEL,\n tree_reference: null,\n children_counter: 0,\n collapsed : false,\n childLinks : []\n };\n if (this.nodes.get(contributors_key) === undefined) {\n this.nodes.set(contributors_key, this.factory.createNode(contributors));\n this.edges.push({\n source: id,\n target: contributors.id\n })\n } else {\n console.error(\"The subjects node already exists!\");\n }\n\n let groups = [];\n this.forced_edges = this.edges.filter(link => {\n if ((link.target === link.source)\n || (this.nodes.get(link.source).level === this.nodes.get(link.target).level)) {\n return false;\n }\n return true;\n }).map(link => {\n if (link.target === id) {\n var temp = link.target;\n link.target = link.source;\n link.source = temp;\n }\n let target_node = this.nodes.get(link.target);\n if (link.source === id && link.target !== subject_key && target_node.type === rdfTypes.Subject.key) {\n this.organise_subjects(target_node, link, groups);\n } else if (link.source === id && link.target !== contributors_key && target_node.type === rdfTypes.Person.key) {\n link.source = contributors_key;\n target_node.level = contributors.level + 1;\n target_node.parent = contributors;\n this.nodes.set(target_node.id, target_node);\n } else if (link.source === id && link.target !== protocols_key && target_node.type === rdfTypes.Protocol.key) {\n link.source = protocols_key;\n target_node.level = protocols.level + 1;\n target_node.parent = protocols;\n this.nodes.set(target_node.id, target_node);\n } else if (link.source === id && target_node.type === rdfTypes.Sample.key ) {\n link.source = target_node.attributes.derivedFrom[0];\n target_node.level = subjects.level + 2;\n target_node.parent = this.nodes.get(target_node.attributes.derivedFrom[0]);\n this.nodes.set(target_node.id, target_node);\n }\n let source_node = this.nodes.get(link.source);\n if ( source_node?.childLinks ) {\n source_node.childLinks = [];\n source_node.children_counter++;\n this.nodes.set(source_node.id, source_node);\n }\n return link;\n }).filter(link => {\n let target_node = this.nodes.get(link.target);\n if ((link.source === id && (target_node.type !== rdfTypes.Award.key) && (link.target !== contributors_key && link.target !== subject_key && link.target !== protocols_key))) {\n return false;\n }\n return true;\n });\n\n this.forced_edges = this.forced_edges.concat(groups);\n }\n\n\n fix_links() {\n let nodesToRemove = [];\n\n this.forced_nodes.forEach((node, index, array) => {\n if (node.type === rdfTypes.Dataset.key) {\n if (node.attributes?.hasProtocol !== undefined) {\n let source = this.nodes.get(node.attributes.hasProtocol[0]);\n if ( source !== undefined ) {\n node.attributes.hasProtocol[0] = source.attributes.hasDoi?.[0];\n }\n }\n }\n \n if (node.type === rdfTypes.Sample.key) {\n if (node.attributes.derivedFrom !== undefined) {\n let source = this.nodes.get(node.attributes.derivedFrom[0]);\n if ( source !== undefined ) {\n source.children_counter++\n array[index].level = source.level + 1;\n this.forced_edges.push({\n source: node.attributes.derivedFrom[0],\n target: node.id\n });\n }\n }\n\n if (node.attributes?.hasFolderAboutIt !== undefined) {\n node.attributes.hasFolderAboutIt = \n [Array.from(this.nodes)[0][1].attributes.hasUriPublished[0] + \n \"?datasetDetailsTab=files&path=files/\" +\n node.tree_reference?.dataset_relative_path];\n }\n }\n\n if (node.type === rdfTypes.Subject.key) {\n if (node.attributes?.animalSubjectIsOfStrain !== undefined) {\n let source = this.nodes.get(node.attributes.animalSubjectIsOfStrain[0]);\n if ( source !== undefined ) {\n node.attributes.animalSubjectIsOfStrain[0] = source.attributes.label[0];\n }\n }\n if (node.attributes?.animalSubjectIsOfSpecies !== undefined) {\n let source = this.nodes.get(node.attributes.animalSubjectIsOfSpecies[0]);\n if ( source !== undefined ) {\n node.attributes.animalSubjectIsOfSpecies[0] = source.attributes.label[0];\n }\n }\n if (node.attributes?.hasBiologicalSex !== undefined) {\n let source = this.nodes.get(node.attributes.hasBiologicalSex[0]);\n if ( source !== undefined ) {\n node.attributes.hasBiologicalSex[0] = source.attributes.label[0];\n }\n }\n\n if (node.attributes?.hasDerivedInformationAsParticipant !== undefined && node.attributes?.participantInPerformanceOf !== undefined) {\n let source = this.nodes.get(node.attributes.participantInPerformanceOf[0]);\n if ( source !== undefined ) {\n node.attributes.hasDerivedInformationAsParticipant[0] = source.attributes.hasUriHuman[0];\n }\n }\n\n if (node.attributes?.participantInPerformanceOf !== undefined) {\n let source = this.nodes.get(node.attributes.participantInPerformanceOf[0]);\n if ( source !== undefined ) {\n node.attributes.participantInPerformanceOf[0] = source.attributes.hasUriHuman[0];\n }\n }\n\n if (node.attributes?.hasFolderAboutIt !== undefined) {\n node.attributes.hasFolderAboutIt = \n [Array.from(this.nodes)[0][1].attributes.hasUriPublished[0] + \n \"?datasetDetailsTab=files&path=files/\" +\n node.tree_reference?.dataset_relative_path];\n }\n }\n\n if (node.type === rdfTypes.File.key) {\n if (node?.tree_reference?.uri_human !== undefined) {\n node.tree_reference.uri_human = Array.from(this.nodes)[0][1].attributes.hasUriHuman[0];\n }\n\n if (node.attributes?.relativePath !== undefined) {\n node.attributes.dataset_id = this.dataset_id;\n node.attributes.publishedURI = \n Array.from(this.nodes)[0][1].attributes.hasUriPublished[0] + \n \"?datasetDetailsTab=files&path=files/\" +\n node.attributes?.relativePath.substr(0, node.attributes?.relativePath.lastIndexOf(\"/\"));\n }\n }\n\n if (node.type === rdfTypes.Collection.key) {\n if (node?.tree_reference?.uri_human !== undefined) {\n node.tree_reference.uri_human = Array.from(this.nodes)[0][1].attributes.hasUriHuman[0];\n }\n\n if (node.attributes?.relativePath !== undefined) {\n node.attributes.publishedURI = \n Array.from(this.nodes)[0][1].attributes.hasUriPublished[0] + \n \"?datasetDetailsTab=files&path=files/\" +\n node.attributes?.relativePath; \n }\n }\n\n if (node.type === rdfTypes.RRID.key || node.type === rdfTypes.NCBITaxon?.key || node.type === rdfTypes.PATO?.key) {\n nodesToRemove.unshift(index);\n }\n\n if ( node.level !== undefined ) {\n if ( this.levelsMap[node.level] ) {\n this.levelsMap[node.level] = [...this.levelsMap[node.level], node];\n } else {\n this.levelsMap[node.level] = [node];\n }\n }\n });\n\n nodesToRemove.forEach(element => {\n this.forced_nodes.splice(element, 1);\n })\n }\n\n identify_childless_parents() {\n this.forced_nodes.forEach((node, index, array) => {\n if ((node.type === rdfTypes.Sample.key) && (node.children_counter === 0)) {\n node.img.src = \"./images/graph/question_mark.svg\"\n }\n });\n }\n\n\n create_graph() {\n // build nodes out of the subjects\n for (const node of this.store.getSubjects()) {\n if (!N3.Util.isBlankNode(node)) {\n this.build_node(node);\n }\n }\n\n // consume all the other nodes that will contain mainly literals/properties of the subject nodes\n for (const [index, quad] of this.turtleData.entries()) {\n if (N3.Util.isLiteral(quad.object) || quad.predicate.id === type_key) {\n // The object does not represent a node on his own but rather a property of the existing subject\n this.update_node(quad, false);\n } else {\n // I don't know yet what to do with this node\n this.link_nodes(quad);\n }\n }\n\n let dataset_node = this.cast_nodes();\n this.organise_nodes(dataset_node);\n }\n\n\n create_tree() {\n for (const leaf of this.jsonData.data) {\n this.tree_map.set(leaf.uri_api, leaf);\n if (leaf.parent_id === leaf.remote_id) {\n continue;\n }\n let children = this.tree_parents_map.get(leaf.parent_id);\n if (children) {\n this.tree_parents_map.set(leaf.parent_id, [...children, leaf]);\n this.tree_parents_map2.set(leaf.parent_id, [...children, leaf]);\n } else {\n this.tree_parents_map.set(leaf.parent_id, [leaf]);\n this.tree_parents_map2.set(leaf.parent_id, [leaf]);\n }\n }\n }\n\n /**\n * Exclude certain nodes\n * @param {*} node\n * @returns\n */\n filterNode = (node) => {\n return node.basename.includes(TMP_FILE)\n }\n\n\n mergeData() {\n this.nodes.forEach((value, key) => {\n if (value.attributes !== undefined && value.attributes.hasFolderAboutIt !== undefined) {\n value.attributes.hasFolderAboutIt.forEach(folder => {\n let jsonNode = this.tree_map.get(folder);\n const splitName = jsonNode.dataset_relative_path.split('/');\n let newName = jsonNode.basename;\n if ( value.type === rdfTypes.Subject.key && value.attributes?.localId?.[0] == splitName[splitName.length - 1] ) {\n newName = splitName[0]\n }\n\n if ( value.type === rdfTypes.Sample.key && value.attributes?.localId?.[0] == splitName[splitName.length - 1] ) {\n newName = splitName[0] + \"/\" + newName\n }\n\n let parentNode = value;\n let newNode = this.buildFolder(jsonNode, newName, parentNode);\n\n if ( value.type === rdfTypes.Sample.key) {\n newNode.remote_id = jsonNode.basename + '_' + newName;\n newNode.uri_api = newNode.remote_id\n // this.tree_parents_map2.delete(jsonNode.remote_id);\n }\n\n\n let folderChildren = this.tree_parents_map2.get(newNode.parent_id)?.map(child => {\n child.parent_id = newNode.uri_api\n child.collapsed = true;\n return child;\n });\n\n if (!this.filterNode(newNode) && (this.nodes.get(newNode.remote_id)) === undefined) {\n this.linkToNode(newNode, parentNode);\n }\n\n if (this.tree_parents_map2.get(newNode.uri_api) === undefined) {\n this.tree_parents_map2.set(newNode.uri_api, folderChildren);\n this.tree_parents_map2.delete(newNode.parent_id);\n folderChildren?.forEach(child => {\n if (!this.filterNode(child) ) {\n this.linkToNode(child, this.nodes.get(newNode.remote_id));\n }\n });\n } else {\n let tempChildren = folderChildren === undefined ? [...this.tree_parents_map2.get(newNode.uri_api)] : [...this.tree_parents_map2.get(newNode.uri_api), ...folderChildren];;\n this.tree_parents_map2.set(newNode.uri_api, tempChildren);\n this.tree_parents_map2.delete(newNode.parent_id);\n tempChildren?.forEach(child => {\n if (!this.filterNode(child) ) {\n this.linkToNode(child, this.nodes.get(newNode.remote_id));\n }\n });\n }\n })\n }\n });\n }\n\n buildFolder(item, newName) {\n let copiedItem = {...item};\n copiedItem.parent_id = copiedItem.remote_id;\n copiedItem.uri_api = copiedItem.remote_id;\n copiedItem.basename = newName;\n return copiedItem;\n }\n\n\n linkToNode(node, parent) {\n let level = parent?.level;\n if (parent?.type === rdfTypes.Sample.key) {\n if (parent.attributes.derivedFrom !== undefined) {\n level = this.nodes.get(parent.attributes.derivedFrom[0])?.level + 1;\n }\n }\n const new_node = this.buildNodeFromJson(node, level);\n if ( parent ) {\n parent.children_counter++;\n new_node.parent = parent;\n new_node.id = parent.id + new_node.id;\n this.forced_edges.push({\n source: parent?.id,\n target: new_node?.id\n });\n new_node.childLinks = [];\n if ( !this.nodes.get(new_node.id) ) {\n this.nodes.set(new_node.id, this.factory.createNode(new_node));\n var children = this.tree_parents_map2.get(node.remote_id);\n if (children?.length > 0) {\n children.forEach(child => {\n !this.filterNode(child) && this.linkToNode(child, new_node);\n });\n }\n }\n }\n }\n\n\n buildNodeFromJson(item, level) {\n const node_id = this.proxies_map.get(item.uri_api);\n if (node_id) {\n return this.nodes.get(node_id);\n }\n const new_node = {\n id: item.uri_api,\n level: level + 1,\n attributes: {\n identifier: item.basename,\n relativePath: item.dataset_relative_path,\n size: item.size_bytes,\n mimetype: item.mimetype,\n updated: item.timestamp_updated,\n status: item.status,\n publishedURI : \"\"\n },\n types: [],\n name: item.basename,\n proxies: [],\n properties: [],\n type: item.mimetype === \"inode/directory\" ? \"Collection\" : \"File\",\n tree_reference: null,\n children_counter: 0\n };\n return this.factory.createNode(new_node, []);\n }\n\n\n generateData() {\n // generate the tree\n var tree_root = this.tree_map.get(this.root_id);\n var children = this.tree_parents_map.get(tree_root?.remote_id);\n this.tree_parents_map?.delete(tree_root?.remote_id);\n this.tree = this.generateLeaf(tree_root);\n children?.forEach(leaf => {\n this.build_leaf(leaf, this.tree);\n });\n\n // generate the Graph\n this.forced_nodes = Array.from(this.nodes).map(([key, value]) => {\n const id = value?.id?.match(/https?:\\/\\/[^\\s]+/)?.[0] || \"\";\n let tree_node = this.tree_map.get(id);\n if (tree_node) {\n value.tree_reference = tree_node;\n tree_node.publishedURI = \n Array.from(this.nodes)[0][1].attributes.hasUriPublished[0] + \n \"?datasetDetailsTab=files&path=files/\" +\n tree_node?.dataset_relative_path.substr(0, tree_node?.dataset_relative_path.lastIndexOf(\"/\"));\n this.nodes.set(key, value);\n tree_node.graph_reference = value;\n this.tree_map.set(value.id, tree_node);\n } else {\n value.proxies.every(proxy => {\n tree_node = this.tree_map.get(proxy);\n if (tree_node) {\n tree_node.publishedURI = \n Array.from(this.nodes)[0][1].attributes.hasUriPublished[0] + \n \"?datasetDetailsTab=files&path=files/\" +\n tree_node?.dataset_relative_path.substr(0, tree_node?.dataset_relative_path.lastIndexOf(\"/\"));\n value.tree_reference = tree_node;\n this.nodes.set(key, value);\n tree_node.graph_reference = value;\n this.tree_map.set(proxy, tree_node);\n return false;\n }\n return true;\n })\n }\n return value;\n })\n\n this.fix_links();\n this.identify_childless_parents();\n }\n\n build_leaf(node, parent) {\n var newChild = this.generateLeaf(node, parent);\n parent.items.push(newChild);\n\n var children = this.tree_parents_map.get(node.remote_id);\n this.tree_parents_map.delete(node.remote_id);\n if (children) {\n children.forEach(child => {\n this.build_leaf(child, newChild);\n });\n }\n }\n\n generateLeaf(node, parent) {\n if ( node ) {\n node.id = node?.uri_api\n node.parent = true;\n node.text = parent !== undefined ? node?.basename : this.dataset_id;\n node.type = node.mimetype === \"inode/directory\" ? rdfTypes.Collection.key : rdfTypes.File.key;\n node.path = (parent !== undefined && parent.path !== undefined) ? [node.id, ...parent.path] : [node.id];\n if (!node.items) {\n node.items = [];\n }\n node.graph_reference = this.findReference(node.remote_id);\n if ( node.graph_reference === undefined ) {\n node.graph_reference = this.findReference(node.uri_api);\n }\n if ( node.graph_reference === undefined ) {\n const fn = (hashMap, str) => [...hashMap.keys()].find(k => k.includes(str))\n const graph_reference = fn(this.nodes, node.id)\n\n if ( graph_reference ) {\n node.graph_reference = this.findReference(graph_reference);\n }\n }\n this.tree_map.set(node.id, node);\n const newNode = {\n id: node.uri_api,\n text: node.text,\n items: node.items,\n graph_reference: node?.graph_reference?.id,\n path: node.path\n }\n return newNode;\n } else {\n return {}\n }\n }\n\n findReference(id) {\n var reference = this.nodes.get(id);\n if (reference === undefined) {\n this.nodes.forEach((value, key) => {\n if (value.proxies.indexOf(String(id)) !== -1) {\n reference = value;\n }\n });\n }\n return reference;\n }\n}\n\nexport default Splinter;","import { WidgetStatus } from \"@metacell/geppetto-meta-client/common/layout/model\";\n\nexport const GraphWidget = {\n id: 'graphWidget',\n name: \"Dataset Graph\",\n component: \"graphComponent\",\n panelName: \"leftPanel\",\n enableClose: true,\n enableRename: true,\n enableDrag: true,\n status: WidgetStatus.ACTIVE,\n};\n\n\nexport const NodeViewWidget = {\n id: 'nodeViewWidget',\n name: \"Node View\",\n component: \"nodeView\",\n panelName: \"rightPanel\",\n enableClose: true,\n enableRename: false,\n enableDrag: false,\n status: WidgetStatus.ACTIVE,\n};\n","export default __webpack_public_path__ + \"static/media/check.2d613265.svg\";","import React from 'react';\nimport { Button } from '@material-ui/core';\nimport CHECK from '../../images/check.svg';\n\nconst UploadSubmit = ({ handleClose, enabledButton }) => {\n return (\n \n Check\n Done\n \n )\n}\n\nexport default UploadSubmit;\n","export default __webpack_public_path__ + \"static/media/dataset.3c0498c8.svg\";","export default __webpack_public_path__ + \"static/media/folder.d55ab3f1.svg\";","const vars = {\n fontFamily: 'Inter, sans-serif',\n primaryColor: '#3779E1',\n primaryColorHover: '#2763C1',\n outlinedButtonHover: '#E4EEFF',\n secondaryColor: '#222739',\n searchBg: 'rgba(255, 255, 255, 0.1)',\n primaryBgColor: '#F5F7FB',\n primaryTextColor: '#2E3A59',\n lightBorderColor: 'rgba(255, 255, 255, 0.1)',\n noInstanceColor: 'rgba(255, 255, 255, 0.6)',\n inputTextColor: 'rgba(255, 255, 255, 0.8)',\n iconButtonHover: 'rgba(255, 255, 255, 0.2)',\n radius: '.5rem',\n gutter: 16,\n whiteColor: '#FFFFFF',\n sidebarIconColor: 'rgba(221, 221, 221, 0.8)',\n primaryTransition: 'all ease-in-out .3s',\n errorColor: '#ED745D',\n progressErrorColor: 'rgba(237, 116, 93, 0.1)',\n barSuccessColor: '#6FC386',\n tabsBgColor: '#F5F8FD',\n progressBgPrimary: 'rgba(55, 121, 225, 0.1)',\n dropzoneBorderColor: 'rgba(55, 121, 225, 0.3)',\n dropzoneTextColor: 'rgba(46, 58, 89, 0.3)',\n inputFocusShadow: 'rgba(55, 121, 225, 0.1)',\n successInputFocusShadow: 'rgba(111, 195, 134, 0.1)',\n placeHolderColor: 'rgba(46, 58, 89, 0.6)',\n dialogShadow: 'rgba(0, 0, 0, 0.1)',\n tabsBorderColor: 'rgba(0, 0, 0, 0.1)',\n dialogBodyBgColor: 'rgba(55, 121, 225, 0.05)',\n sideBarTextColor: 'rgba(46, 58, 89, 0.8)',\n chipBgColor: 'rgba(46, 58, 89, 0.05)',\n dataset: '#3779E1',\n matlab: '#6FC386',\n nifti: '#7747F6',\n volume: '#3779E1',\n sideBarLabelColor: '#435070',\n treeBorderColor: '#4E5261',\n scrollbarBg: 'rgba(0, 0, 0, 0.24)',\n gray800: '#0F162B',\n gray400: '#586482',\n gray25: '#F0F1F2',\n grey700: '#212B45',\n grey500: '#435070',\n grey100: '#C9CDD6',\n grey400: '#586482',\n grey50: '#E1E3E8',\n grey25: '#F0F1F2',\n grey600: '#2E3A59',\n};\n\nexport default vars;\n","export default __webpack_public_path__ + \"static/media/file.4236de94.svg\";","import { rdfTypes } from './graphModel';\n\nfunction createImage(node) {\n const img = new Image();\n if ( node.type === rdfTypes.File.key ){\n const extension = node.name.split(\".\").pop();\n img.src = \"./images/graph/files/\" + extension + \".svg\"\n } else {\n if ( node.type !== \"Group\" ) {\n img.src = (rdfTypes[String(node.type)]?.image !== \"\") ? rdfTypes[String(node.type)]?.image : rdfTypes.Unknown?.image\n }\n }\n return img;\n}\n\nfunction extractProperties(node, ttlTypes) {\n if (ttlTypes === undefined) {\n return;\n }\n for (const property of node.properties) {\n for (const type_property of rdfTypes[node.type].properties) {\n if (property.predicate === (ttlTypes[type_property.type]?.iri?.id + type_property.key)) {\n if (node.attributes[type_property.property] !== undefined) {\n node.attributes[type_property.property].push(property.value);\n } else {\n node.attributes[type_property.property] = [];\n node.attributes[type_property.property].push(property.value);\n }\n }\n }\n }\n\n if (node.additional_properties) {\n for (const json_prop of rdfTypes[node.type].additional_properties) {\n let new_attribute = node.additional_properties;\n for (const step of json_prop.path) {\n if (new_attribute[step] !== undefined) {\n new_attribute = new_attribute[step];\n } else {\n new_attribute = undefined;\n break;\n }\n }\n if (new_attribute !== undefined) {\n if (typeof new_attribute === 'object' && new_attribute !== null && new_attribute[json_prop.innerPath]) {\n new_attribute = new_attribute[json_prop.innerPath];\n }\n\n node.attributes[json_prop.property] = [];\n if (json_prop.type === 'string') {\n node.attributes[json_prop.property].push(new_attribute.replace(json_prop.trimType, ''));\n } else {\n node.attributes[json_prop.property].push(parseFloat(new_attribute));\n }\n }\n }\n }\n\n if (node?.attributes?.identifier !== undefined) {\n node.name = node.attributes.identifier;\n }\n}\n\nvar NodesFactory = function () {\n this.createNode = function (node, ttlTypes) {\n var typed_node;\n\n switch(node.type) {\n case \"Award\":\n typed_node = new Award(node, ttlTypes);\n break;\n case \"Collection\":\n typed_node = new Collection(node, ttlTypes);\n break;\n case \"Contributor\":\n typed_node = new Contributor(node, ttlTypes);\n break;\n case \"Dataset\":\n typed_node = new Dataset(node, ttlTypes);\n break;\n case \"Protocol\":\n typed_node = new Protocol(node, ttlTypes);\n break;\n case \"Sample\":\n typed_node = new Sample(node, ttlTypes);\n break;\n case \"Subject\":\n typed_node = new Subject(node, ttlTypes);\n break;\n case \"File\":\n typed_node = new File(node, ttlTypes);\n break;\n case \"Person\":\n typed_node = new Person(node, ttlTypes);\n break;\n default:\n typed_node = new Unknown(node, ttlTypes);\n }\n\n return typed_node;\n }\n}\n\nconst Collection = function (node, ttlTypes) {\n node.img = createImage(node);\n extractProperties(node, ttlTypes);\n return node;\n};\n\nconst Contributor = function (node, ttlTypes) {\n extractProperties(node, ttlTypes);\n node.img = createImage(node);\n // compile node name based on the props extracted, if these are presents\n node.name = node.attributes?.firstName !== undefined\n ? node.attributes?.middleName !== undefined\n ? node.attributes?.lastName !== undefined\n ? node.attributes?.firstName + \" \" + node.attributes?.middleName + \" \" + node.attributes?.lastName\n : node.attributes?.firstName + \" \" + node.attributes?.middleName\n : node.attributes?.lastName !== undefined\n ? node.attributes?.firstName + \" \" + node.attributes?.lastName\n : node.attributes?.firstName\n : node.name;\n return node;\n};\n\n\nconst Award = function (node, ttlTypes) {\n extractProperties(node, ttlTypes);\n node.img = createImage(node);\n var namesArray = node.name.split(\"/\");\n node.name = namesArray[namesArray.length - 1];\n return node;\n};\n\nconst Dataset = function (node, ttlTypes) {\n node.img = createImage(node);\n extractProperties(node, ttlTypes);\n var namesArray = node.name.split(\":\");\n node.name = namesArray[namesArray.length - 1];\n return node;\n};\n\nconst Protocol = function (node, ttlTypes) {\n node.img = createImage(node);\n extractProperties(node, ttlTypes);\n var namesArray = node.name.split(\"/\");\n node.name = namesArray[namesArray.length - 1];\n return node;\n};\n\nconst Sample = function (node, ttlTypes) {\n node.img = createImage(node);\n extractProperties(node, ttlTypes);\n if (node.attributes?.identifier !== undefined) {\n node.name = node.attributes?.identifier[0];\n } else {\n let namesArray = node.name.split(\"/\");\n node.name = namesArray[namesArray.length - 1];\n }\n return node;\n};\n\nconst Subject = function (node, ttlTypes) {\n node.img = createImage(node);\n extractProperties(node, ttlTypes);\n if (node.attributes?.identifier !== undefined) {\n node.name = node.attributes?.identifier[0];\n } else {\n var namesArray = node.name.split(\"/\");\n node.name = namesArray[namesArray.length - 1];\n }\n return node;\n};\n\nconst File = function (node, ttlTypes) {\n node.img = createImage(node);\n extractProperties(node, ttlTypes);\n return node;\n};\n\nconst Person = function (node, ttlTypes) {\n extractProperties(node, ttlTypes);\n node.img = createImage(node);\n // compile node name based on the props extracted, if these are presents\n node.name = node.attributes?.firstName !== undefined\n ? node.attributes?.middleName !== undefined\n ? node.attributes?.lastName !== undefined\n ? node.attributes?.firstName + \" \" + node.attributes?.middleName + \" \" + node.attributes?.lastName\n : node.attributes?.firstName + \" \" + node.attributes?.middleName\n : node.attributes?.lastName !== undefined\n ? node.attributes?.firstName + \" \" + node.attributes?.lastName\n : node.attributes?.firstName\n : node.name;\n return node;\n};\n\nconst Unknown = function (node, ttlTypes) {\n node.img = createImage(node);\n extractProperties(node, ttlTypes);\n return node;\n};\n\nexport default NodesFactory;\n","export default __webpack_public_path__ + \"static/media/close.51de2817.svg\";","import NodesFactory from './../../utils/nodesFactory';\n\nimport {\n rdfTypes,\n type_key,\n typesModel\n} from './../../utils/graphModel';\n\nconst N3 = require('n3');\n\nconst TMP_FILE = \".tmp\";\n\nclass Splinter {\n constructor(jsonFile, turtleFile) {\n this.factory = new NodesFactory();\n this.turtleFile = turtleFile;\n this.types = {};\n this.levelsMap = {};\n this.turtleData = [];\n this.tree = undefined;\n this.nodes = undefined;\n this.edges = undefined;\n this.root_id = undefined;\n this.proxies_map = undefined;\n this.forced_nodes = undefined;\n this.store = new N3.Store();\n }\n\n /* Initialise global maps before to start data manipulation */\n initialiseNodesEdges() {\n this.edges = [];\n this.nodes = new Map();\n this.proxies_map = new Map();\n }\n\n extractTurtle() {\n var that = this;\n return new Promise(function(resolve, reject) {\n const parser = new N3.Parser();\n\n let callbackParse = function (err, quad, prefixes) {\n if (quad) {\n that.store.addQuad(quad);\n that.turtleData.push(quad);\n } else {\n resolve(that.turtleData);\n }\n }\n\n const prefixCallback = function (prefix, iri) {\n that.types[String(prefix)] = {\n \"type\": prefix,\n \"iri\": iri\n };\n };\n parser.parse(that.turtleFile, callbackParse, prefixCallback);\n });\n }\n\n getTurtle() {\n return this.turtleData;\n }\n\n\n async getGraph() {\n if (this.nodes === undefined || this.edges === undefined) {\n await this.processDataset();\n }\n\n return {\n nodes: this.forced_nodes\n };\n }\n\n\n async getTree() {\n if (this.tree === undefined) {\n await this.processDataset();\n }\n return this.tree;\n }\n\n\n getDatasetId() {\n return this.dataset_id;\n }\n\n\n async processTurtle() {\n await this.extractTurtle();\n }\n\n /* Entry point for the whole conversion and graph/tree creation */\n async processDataset() {\n this.initialiseNodesEdges()\n await this.processTurtle();\n this.create_graph();\n this.mergeData();\n this.generateData()\n }\n\n\n /* Creates a map of types that will be used by the graphModel.js in order to extract values from each type */\n get_type(node) {\n const typeFound = {\n type: typesModel.unknown.type,\n length: 0\n }\n for (const type of node?.types) {\n if (type.type === this.types.owl.iri.id + \"NamedIndividual\") {\n for (const rdfType in this.types) {\n if ((node.id.includes(this.types[rdfType].iri.id)) && (this.types[rdfType].iri.id.length > typeFound.length) && (typesModel.NamedIndividual[String(this.types[rdfType].type)] !== undefined)) {\n typeFound.type = typesModel.NamedIndividual[String(this.types[rdfType].type)].type;\n typeFound.length = this.types[rdfType].iri.id.length;\n }\n }\n } else if (type.type === this.types.owl.iri.id + \"Ontology\") {\n typeFound.type = typesModel.ontology.type;\n typeFound.length = typesModel.ontology.length;\n } else if ((type.type.includes(this.types.sparc.iri.id)) && (typesModel.sparc[type.type.split(this.types.sparc.iri.id).pop()] !== undefined)) {\n let sparcType = type.type.split(this.types.sparc.iri.id).pop();\n typeFound.type = typesModel.sparc[sparcType].type;\n typeFound.length = typesModel.sparc[sparcType].length;\n }\n }\n return typeFound.type;\n }\n\n\n build_node(node) {\n const graph_node = this.nodes.get(node.id);\n if (graph_node) {\n console.error(\"Issue with the build node, this node is already present\");\n console.error(node);\n } else {\n this.nodes.set(node.id, {\n id: node.id,\n attributes: {},\n types: [],\n name: node.value,\n proxies: [],\n properties: [],\n tree_reference: null,\n children_counter: 0\n });\n }\n }\n\n\n update_node(quad, proxy) {\n // check if the node is blank\n if (N3.Util.isBlankNode(quad.subject)) {\n return;\n }\n let graph_node = this.nodes.get(quad.subject.id);\n // check if node to update exists in the list of nodes.\n if (graph_node) {\n if (quad.predicate.id === type_key) {\n graph_node.types = [...graph_node.types, {\n predicate: quad.predicate.id,\n type: quad.object.datatype ? quad.object.datatype.id : quad.object.id,\n value: quad.object.value\n }];\n this.nodes.set(quad.subject.id, graph_node);\n } else {\n graph_node.properties = [...graph_node.properties, {\n predicate: quad.predicate.id,\n type: quad.object.datatype ? quad.object.datatype.id : quad.object.id,\n value: quad.object.value\n }];\n if (proxy) {\n graph_node.proxies = [...graph_node.proxies, quad.object.id];\n this.proxies_map.set(quad.object.id, quad.subject.id);\n }\n this.nodes.set(quad.subject.id, graph_node);\n }\n } else {\n // if the node does not exist there should be referenced by a proxy inside another node.\n var found = true;\n this.nodes.forEach((value, key) => {\n if (value.proxies.indexOf(String(quad.subject.id)) !== -1) {\n value.properties = [...value.properties, {\n predicate: quad.predicate.id,\n type: quad.object.datatype,\n value: quad.object.value\n }];\n value.proxies = [...value.proxies, quad.object.id];\n this.proxies_map.set(quad.object.id, key);\n this.nodes.set(key, value);\n found = false;\n }\n });\n if (found) {\n // if we end up here it means we have a node with links to ids or proxy, so we do not know\n // where this node should go.\n console.error(\"Houston, we have a problem!\");\n console.error(quad);\n }\n }\n }\n\n\n link_nodes(quad) {\n // before to create the node check that:\n // 1. subject and object are nodes in our graph\n // 2. we are not self referencing the node with a property that we don't need\n const source = this.nodes.get(quad.subject.id);\n const target = this.nodes.get(quad.object.id);\n if (source && target && (quad.subject.id !== quad.object.id)) {\n this.edges.push({\n source: quad.subject.id,\n target: quad.object.id\n });\n this.update_node(quad, false);\n } else {\n // if the conditions above are not satisfied we push this relationship as a proxy of another node already present\n this.update_node(quad, true);\n }\n }\n\n\n cast_nodes() {\n // prepare 2 place holders for the dataset and ontology node, the ontology node is not required but\n // we might need to display some of its properties, so we merge them.\n let dataset_node = undefined;\n let ontology_node = undefined;\n\n // cast each node to the right type, also keep trace of the dataset and ontology nodes.\n this.nodes.forEach((value, key) => {\n value.type = this.get_type(value);\n const typedNode = this.factory.createNode(value, this.types);\n if (typedNode.type !== rdfTypes.Unknown.key) {\n this.nodes.set(key, typedNode);\n } else {\n this.nodes.delete(key);\n this.edges = this.edges.filter(link => {\n if (link.source !== key && link.target !== key) {\n return true;\n }\n return false;\n })\n }\n if (value.type === typesModel.NamedIndividual.dataset.type) {\n dataset_node = value;\n }\n if (value.type === typesModel.ontology.type) {\n ontology_node = value;\n }\n });\n // save the dataset id used for the uri_api later with the tree\n this.root_id = dataset_node.id;\n // merge the 2 nodes together\n dataset_node.properties = dataset_node.properties.concat(ontology_node.properties);\n dataset_node.proxies = dataset_node.proxies.concat(ontology_node.proxies);\n dataset_node.level = 1;\n this.nodes.set(dataset_node.id, dataset_node);\n // this.nodes.delete(ontology_node.id);\n // fix links that were pointing to the ontology\n let temp_edges = this.edges.map(link => {\n if (link.source === ontology_node.id) {\n link.source = dataset_node.id\n }\n if (link.target === ontology_node.id) {\n link.target = dataset_node.id\n }\n return link;\n })\n this.edges = temp_edges;\n return dataset_node;\n }\n\n organise_nodes(parent) {\n // structure the graph per category\n const id = parent.id;\n\n this.forced_edges = this.edges.filter(link => {\n if ((link.target === link.source)\n || (this.nodes.get(link.source).level === this.nodes.get(link.target).level)) {\n return false;\n }\n return true;\n }).map(link => {\n if (link.target === id) {\n var temp = link.target;\n link.target = link.source;\n link.source = temp;\n }\n let source_node = this.nodes.get(link.source);\n source_node.children_counter++;\n this.nodes.set(source_node.id, source_node);\n return link;\n }).filter(link => {\n let target_node = this.nodes.get(link.target);\n if (target_node.type === rdfTypes.Dataset.key){\n return true;\n }\n return false;\n });\n }\n\n identify_childless_parents() {\n this.forced_nodes.forEach((node, index, array) => {\n if ((node.type === rdfTypes.Sample.key || node.type === rdfTypes.Subject.key) && (node.children_counter === 0)) {\n node.img.src = \"./images/graph/question_mark.svg\"\n }\n });\n }\n\n\n create_graph() {\n // build nodes out of the subjects\n for (const node of this.store.getSubjects()) {\n if (!N3.Util.isBlankNode(node)) {\n this.build_node(node);\n }\n }\n\n // consume all the other nodes that will contain mainly literals/properties of the subject nodes\n for (const [index, quad] of this.turtleData.entries()) {\n if (N3.Util.isLiteral(quad.object) || quad.predicate.id === type_key) {\n // The object does not represent a node on his own but rather a property of the existing subject\n this.update_node(quad, false);\n } else {\n // I don't know yet what to do with this node\n this.link_nodes(quad);\n }\n }\n\n\n let dataset_node = this.cast_nodes();\n this.organise_nodes(dataset_node);\n }\n\n /**\n * Exclude certain nodes\n * @param {*} node\n * @returns\n */\n filterNode = (node) => {\n return node.basename.includes(TMP_FILE)\n }\n\n\n mergeData() {\n this.nodes.forEach((value, key) => {\n if (value.attributes !== undefined && value.attributes.hasFolderAboutIt !== undefined) {\n const children = this.tree_parents_map.get(this.tree_map.get(value.attributes.hasFolderAboutIt[0])?.remote_id);\n children?.forEach(child => {\n !this.filterNode(child) && this.linkToNode(child, value);\n });\n }\n });\n }\n\n\n linkToNode(node, parent) {\n let level = parent.level;\n if (parent.type === rdfTypes.Sample.key) {\n if (parent.attributes.derivedFrom !== undefined) {\n level = this.nodes.get(parent.attributes.derivedFrom[0]).level + 1;\n }\n }\n parent.children_counter++;\n const new_node = this.buildNodeFromJson(node, level);\n new_node.parent = parent;\n this.forced_edges.push({\n source: parent.id,\n target: new_node.id\n });\n this.nodes.set(new_node.id, this.factory.createNode(new_node));\n var children = this.tree_parents_map.get(node.remote_id);\n if (children?.length > 0) {\n children.forEach(child => {\n !this.filterNode(child) && this.linkToNode(child, new_node);\n });\n }\n }\n\n\n buildNodeFromJson(item, level) {\n const node_id = this.proxies_map.get(item.uri_api);\n if (node_id) {\n return this.nodes.get(node_id);\n }\n const new_node = {\n id: item.uri_api,\n level: level + 1,\n attributes: {\n identifier: item.basename,\n relativePath: item.dataset_relative_path,\n size: item.size_bytes,\n mimetype: item.mimetype,\n updated: item.timestamp_updated,\n status: item.status,\n },\n types: [],\n name: item.basename,\n proxies: [],\n properties: [],\n type: item.mimetype === \"inode/directory\" ? \"Collection\" : \"File\",\n tree_reference: null,\n children_counter: 0\n };\n return this.factory.createNode(new_node, []);\n }\n\n\n generateData() {\n this.forced_nodes = Array.from(this.nodes).map(([key, value]) => {\n value.proxies.every(proxy => {\n return true;\n })\n \n return value;\n })\n }\n\n build_leaf(node, parent) {\n var newChild = this.generateLeaf(node, parent);\n parent.items.push(newChild);\n\n var children = this.tree_parents_map.get(node.remote_id);\n this.tree_parents_map.delete(node.remote_id);\n if (children) {\n children.forEach(child => {\n this.build_leaf(child, newChild);\n });\n }\n }\n\n generateLeaf(node, parent) {\n node.id = node.uri_api\n node.parent = true;\n node.text = parent !== undefined ? node.basename : this.dataset_id;\n node.type = node.mimetype === \"inode/directory\" ? rdfTypes.Collection.key : rdfTypes.File.key;\n node.path = (parent !== undefined && parent.path !== undefined) ? [node.id, ...parent.path] : [node.id];\n if (!node.items) {\n node.items = [];\n }\n node.graph_reference = this.findReference(node.uri_api);\n this.tree_map.set(node.id, node);\n const newNode = {\n id: node.uri_api,\n text: node.text,\n items: node.items,\n graph_reference: node?.graph_reference?.id,\n path: node.path\n }\n return newNode;\n }\n\n findReference(id) {\n var reference = this.nodes.get(id);\n if (reference === undefined) {\n this.nodes.forEach((value, key) => {\n if (value.proxies.indexOf(String(id)) !== -1) {\n reference = value;\n }\n });\n }\n return reference;\n }\n}\n\nexport default Splinter;\n","export const ADD_DATASET = 'ADD_DATASET'\nexport const DELETE_DATASET = 'DELETE_DATASET'\nexport const SET_DATASET_LIST = 'SET_DATASET_LIST'\nexport const SELECT_INSTANCE = 'SELECT_INSTANCE'\nexport const TRIGGER_ERROR = 'TRIGGER_ERROR'\nexport const SELECT_GROUP = 'SELECT_GROUP'\nexport const TOGGLE_METADATA_SETTINGS = 'TOGGLE_METADATA_SETTINGS'\nexport const TOGGLE_METADATA_ITEM_VISIBILITY = 'TOGGLE_METADATA_ITEM_VISIBILITY'\nexport const UPDATE_METADATA_ITEMS_ORDER = 'UPDATE_METADATA_ITEMS_ORDER'\n\nexport const addDataset = dataset => ({\n type: ADD_DATASET,\n data: { dataset: dataset },\n});\n\nexport const deleteDataset = dataset_id => ({\n type: DELETE_DATASET,\n data: { dataset_id: dataset_id },\n});\n\nexport const setDatasetsList = datasets => ({\n type: SET_DATASET_LIST,\n data: { datasets: datasets },\n});\n\nexport const selectInstance = instance => ({\n type: SELECT_INSTANCE,\n data: {\n dataset_id: instance.dataset_id,\n graph_node: instance.graph_node,\n tree_node: instance.tree_node,\n source: instance.source\n },\n});\n\nexport const selectGroup = instance => ({\n type: SELECT_GROUP,\n data: {\n dataset_id: instance.dataset_id,\n graph_node: instance.graph_node,\n tree_node: instance.tree_node,\n source: instance.source\n },\n});\n\nexport const triggerError = message => ({\n type: TRIGGER_ERROR,\n data: { error_message: message },\n});\n\nexport const toggleSettingsPanelVisibility = visible => ({\n type: TOGGLE_METADATA_SETTINGS,\n data: { visible: visible },\n});\n\n\nexport const toggleMetadataItemVisibility = (groupTitle, itemId) => ({\n type: TOGGLE_METADATA_ITEM_VISIBILITY,\n data: {\n groupTitle,\n itemId,\n },\n});\n\nexport const updateMetaDataItemsOrder = ({ groupTitle, newItemsOrder }) => {\n return {\n type: UPDATE_METADATA_ITEMS_ORDER,\n payload: { title: groupTitle, newItemsOrder },\n };\n};","import './flexlayout.css';\nimport theme from './theme';\nimport { useState, useEffect } from 'react';\nimport { hot } from 'react-hot-loader';\nimport Box from '@material-ui/core/Box';\nimport Splinter from './utils/Splinter';\nimport MainLayout from './app/mainLayout';\nimport FileHandler from './utils/filesHandler';\nimport { useSelector, useDispatch } from 'react-redux';\nimport Sidebar from './components/Sidebar/Sidebar';\nimport EmptyContainer from './components/EmptyContainer';\nimport ErrorDialog from './components/ErrorDialog/ErrorDialog';\nimport UploadDialog from './components/FileUploader/UploadDialog';\nimport DatasetsListDialog from './components/DatasetsListViewer/DatasetsListDialog';\nimport { MuiThemeProvider, CssBaseline } from '@material-ui/core';\nimport { addDataset } from './redux/actions';\nimport { NodeViewWidget } from './app/widgets';\nimport { addWidget } from '@metacell/geppetto-meta-client/common/layout/actions';\nimport { WidgetStatus } from \"@metacell/geppetto-meta-client/common/layout/model\";\nimport DatasetsListSplinter from \"./components/DatasetsListViewer/DatasetsListSplinter\";\nimport config from './config/app.json';\n\nconst App = () => {\n const queryParams = new URLSearchParams(window.location.search);\n const datasetID = queryParams.get('id');\n const doi = queryParams.get('doi');\n const local = queryParams.get('local');\n\n const dispatch = useDispatch();\n const [openUploadDialog, setOpenUploadDialog] = useState(false);\n const [openDatasetsListDialog, setOpenDatasetsListDialog] = useState(false);\n const datasets = useSelector(state => state.sdsState.datasets);\n const error_message = useSelector(state => state.sdsState.error_message);\n const [_turtle, setTurtle] = useState(undefined);\n const [_json, setJson] = useState(undefined);\n const [doiMatch, setDoiMatch] = useState(true);\n const [initialised, setInitialised] = useState(false);\n const [loading, setLoading] = useState(() => {\n if (datasetID && datasetID !== \"\") {\n return true;\n }\n if (doi && doi !== \"\") {\n return true;\n }\n return false;\n });\n\n\n let turtle_url = '';\n let json_url = '';\n let splinter = undefined;\n\n const fillDataset = async (turtle, json) => {\n splinter = new Splinter(json, turtle);\n const _dataset = {\n id: splinter.getDatasetId(),\n graph: await splinter.getGraph(),\n tree: await splinter.getTree(),\n splinter: splinter\n };\n\n dispatch(addDataset(_dataset));\n dispatch(addWidget({\n id: _dataset.id,\n name: _dataset.id.substring(0,10) + \"... Graph\",\n component: \"graphComponent\",\n panelName: \"leftPanel\",\n enableClose: true,\n enableRename: true,\n enableDrag: true,\n status: WidgetStatus.ACTIVE,\n config: {\n graph_id: _dataset.id,\n component: \"graphComponent\",\n }\n }));\n dispatch(addWidget(NodeViewWidget));\n setLoading(false);\n }\n\n const loadTurtleFile = async () => {\n turtle_url = config.datasets_url + datasetID + \"/LATEST/curation-export.ttl\";\n const ttlHandler = new FileHandler();\n ttlHandler.get_remote_file(turtle_url, (url, data) => {\n if (data) {\n setTurtle(data);\n }\n }, () => {\n setLoading(false);\n });\n };\n\n const loadJSONFile = async (datasetID) => {\n json_url = config.datasets_url + datasetID + '/LATEST/path-metadata.json'; \n const jsonHandler = new FileHandler();\n jsonHandler.get_remote_file(json_url, (url, data) => {\n if (data) {\n setJson(data);\n }\n }, () => {\n setLoading(false);\n });\n };\n\n const loadFiles = async(datasetID) => {\n turtle_url = config.datasets_url + datasetID + \"/LATEST/curation-export.ttl\";\n const ttlHandler = new FileHandler();\n ttlHandler.get_remote_file(turtle_url, (url, turtleData) => {\n if (turtleData) {\n json_url = config.datasets_url + datasetID + '/LATEST/path-metadata.json'; \n const jsonHandler = new FileHandler();\n jsonHandler.get_remote_file(json_url, (url, jsonData) => {\n if (turtleData && jsonData && !initialised) {\n fillDataset(turtleData, jsonData);\n setInitialised(true);\n }\n }, () => {\n setLoading(false);\n });\n }\n },null);\n }\n\n const loadDatsetFromDOI = async (url, fileData) => {\n let file = {\n id: \"ttl\",\n url: url,\n data: fileData,\n file: { name: \"ttl\", type: \"text/turtle\" },\n };\n const splinter = new DatasetsListSplinter(undefined, file.data);\n let graph = await splinter.getGraph();\n let datasets = graph.nodes.filter((node) => node?.attributes?.hasDoi);\n let version = config.version\n const match = datasets.find( node => node.attributes?.hasDoi?.[0]?.includes(doi));\n if ( match ) {\n const datasetID = match.name;\n loadFiles(datasetID);\n } else {\n setLoading(false);\n setInitialised(false);\n }\n\n let datasetStorage = {};\n if ( version !== undefined && JSON.parse(localStorage.getItem(config.datasetsStorage))?.version !== version ) {\n let parsedDatasets = []\n datasets.forEach( node => {\n parsedDatasets.push({ name : node.name , doi : node.attributes?.hasDoi?.[0], label : node.attributes ? node.attributes?.label?.[0]?.toLowerCase() : null}); \n });\n datasetStorage = {\n version : version,\n datasets : parsedDatasets\n }\n\n localStorage.setItem(config.datasetsStorage, JSON.stringify(datasetStorage));\n }\n };\n\n useEffect(() => {\n if (datasetID && datasetID !== \"\" ) {\n loadFiles(datasetID);\n }\n\n if (doi && doi !== \"\" ) {\n if ( doiMatch ){\n let version = config.version;\n const storage = JSON.parse(localStorage.getItem(config.datasetsStorage));\n const storageVersion = storage?.version\n if ( storageVersion === version ) {\n let storedDatasetsInfo = JSON.parse(localStorage.getItem(config.datasetsStorage));\n const match = storedDatasetsInfo.datasets.find( node => node?.doi.includes(doi));\n if ( match ) {\n const datasetID = match.name;\n loadFiles(datasetID);\n } else {\n setLoading(false);\n setInitialised(false);\n }\n } else {\n const fileHandler = new FileHandler();\n const summaryURL = config.repository_url + config.available_datasets;\n fileHandler.get_remote_file(summaryURL, loadDatsetFromDOI);\n }\n }\n }\n }, []);\n\n return (\n \n \n \n \n \n { datasets.length > 0\n ? \n : \n }\n \n \n\n setOpenUploadDialog(false)}\n />\n\n setOpenDatasetsListDialog(false)}\n />\n\n \n \n );\n};\n\nexport default hot(module)(App);\n","import { useStore } from 'react-redux';\nimport React, { useEffect, useState } from 'react';\nimport { makeStyles } from '@material-ui/core/styles';\nimport CircularProgress from '@material-ui/core/CircularProgress';\nimport { getLayoutManagerInstance } from \"@metacell/geppetto-meta-client/common/layout/LayoutManager\";\n\nconst useStyles = makeStyles({\n layoutContainer: {\n position: 'relative',\n width: '100%',\n height: '100%'\n }\n});\n\n/**\n * The component that renders the FlexLayout component of the LayoutManager.\n */\nconst MainLayout = () => {\n const classes = useStyles();\n const store = useStore();\n const [LayoutManager, setComponent] = useState(undefined);\n\n useEffect(() => {\n // Workaround because getLayoutManagerInstance\n // is undefined when calling it in global scope\n // Need to wait until store is ready ...\n if (LayoutManager === undefined) {\n const myManager = getLayoutManagerInstance();\n\n myManager.model.visitNodes((node, level) => {\n node.setEventListener(\"resize\", (node) => {\n let visibleChild = myManager.model._activeTabSet._children.filter(element => \n element._visible\n );\n const event = new CustomEvent('nodeResized', {\n detail: visibleChild\n });\n document.dispatchEvent(event);\n\n });\n node.setEventListener(\"visibility\", (node, data) => {\n let visibleChild = myManager.model._activeTabSet._children.filter(element => \n !element._visible\n );\n const event = new CustomEvent('nodeVisible', {\n detail: visibleChild\n });\n document.dispatchEvent(event);\n\n });\n });\n\n if (myManager) {\n setComponent(myManager.getComponent());\n }\n }\n }, [store, LayoutManager])\n\n return (\n
\n {LayoutManager === undefined ? : }\n
\n );\n}\n\nexport default MainLayout;\n","import React from 'react';\nimport Loader from '@metacell/geppetto-meta-ui/loader/Loader';\nimport { Box, Typography, Button } from '@material-ui/core';\nimport { IMPORT_TEXT, SPARC_DATASETS } from '../constants';\n\nconst EmptyContainer = (props) => {\n return (\n \n { (props.loading)\n ? <>\n \n \n : <>\n {IMPORT_TEXT} to start.\n props.setOpenDatasetsListDialog(true)}\n >\n + { IMPORT_TEXT }\n \n \n }\n\n \n );\n};\nexport default EmptyContainer;\n\n","import React from 'react';\nimport { Dialog, Box, Typography } from '@material-ui/core';\nimport { useDispatch } from 'react-redux';\nimport { triggerError } from '../../redux/actions';\n\nconst ErrorDialog = (props) => {\n const { open, error_message } = props;\n const dispatch = useDispatch()\n\n\n const handleClose = () => {\n dispatch(triggerError(null));\n };\n\n return (\n \n \n Generic Error Message\n \n\n \n {error_message} \n \n \n );\n};\n\nexport default ErrorDialog;\n","import React, { useEffect } from \"react\";\nimport { useSelector, useDispatch } from \"react-redux\";\nimport {\n Dialog,\n DialogActions,\n Box,\n Typography,\n Paper,\n List,\n ListItem,\n ListItemText,\n Divider,\n TextField,\n DialogTitle,\n CircularProgress\n} from \"@material-ui/core\";\nimport { addDataset, setDatasetsList } from \"../../redux/actions\";\nimport Splinter from \"./../../utils/Splinter\";\nimport { NodeViewWidget } from \"../../app/widgets\";\nimport { addWidget } from \"@metacell/geppetto-meta-client/common/layout/actions\";\nimport DatasetsListSplinter from \"./DatasetsListSplinter\";\nimport { WidgetStatus } from \"@metacell/geppetto-meta-client/common/layout/model\";\nimport FileHandler from \"../../utils/filesHandler\";\nimport UploadSubmit from \"./../FileUploader/UploadSubmit\";\nimport CLOSE from '../../images/close.svg';\n\nimport config from \"./../../config/app.json\";\n\nconst DatasetsListDialog = (props) => {\n const dispatch = useDispatch();\n const { open, handleClose } = props;\n const [searchField, setSearchField] = React.useState(\"\");\n const [selectedIndex, setSelectedIndex] = React.useState(undefined);\n const datasets = useSelector((state) => state.sdsState.available_datasets);\n const [filteredDatasets, setFilteredDatasets] = React.useState(datasets);\n const PUBLISHED = \"PUBLISHED\";\n\n let turtle_url = \"\";\n let json_url = \"\";\n let splinter = undefined;\n const handleListItemClick = (event, index) => {\n setSelectedIndex(index);\n };\n\n const fillDataset = async (turtle, json) => {\n splinter = new Splinter(json, turtle);\n const _dataset = {\n id: splinter.getDatasetId(),\n graph: await splinter.getGraph(),\n tree: await splinter.getTree(),\n splinter: splinter,\n };\n dispatch(addDataset(_dataset));\n dispatch(\n addWidget({\n id: _dataset.id,\n name: _dataset.id.substring(0, 10) + \"... Graph\",\n component: \"graphComponent\",\n panelName: \"leftPanel\",\n enableClose: true,\n enableRename: true,\n enableDrag: true,\n status: WidgetStatus.ACTIVE,\n config: {\n graph_id: _dataset.id,\n component: \"graphComponent\",\n },\n })\n );\n dispatch(addWidget(NodeViewWidget));\n };\n\n const handleDone = (dataset) => {\n turtle_url =\n config.datasets_url + dataset + \"/LATEST/curation-export.ttl\";\n const fileHandler = new FileHandler();\n fileHandler.get_remote_file(turtle_url, (url, turtleData) => {\n if (turtleData) {\n json_url =\n config.datasets_url +\n dataset +\n \"/LATEST/path-metadata.json\";\n fileHandler.get_remote_file(json_url, (url, data) => {\n if (data) {\n fillDataset(turtleData, data);\n setFilteredDatasets(datasets);\n setSelectedIndex(undefined);\n handleClose();\n }\n });\n }\n });\n };\n\n const loadDatasets = () => {\n const fileHandler = new FileHandler();\n const callback = async (url, fileData) => {\n let file = {\n id: \"ttl\",\n url: url,\n data: fileData,\n file: { name: \"ttl\", type: \"text/turtle\" },\n };\n const splinter = new DatasetsListSplinter(undefined, file.data);\n let graph = await splinter.getGraph();\n let datasets = graph.nodes.filter((node) => node?.attributes?.hasUriApi);\n datasets.forEach( node => node.attributes ? node.attributes.lowerCaseLabel = node.attributes?.label?.[0]?.toLowerCase() : null );\n datasets = datasets.filter( node => node?.attributes?.statusOnPlatform?.[0]?.includes(PUBLISHED) );\n\n let version = config.version;\n let datasetStorage = {};\n let parsedDatasets = []\n datasets?.forEach( node => {\n parsedDatasets.push({ name : node.name , doi : node.attributes?.hasDoi?.[0], label : node.attributes ? node.attributes?.lowerCaseLabel : null}); \n });\n datasetStorage = {\n version : version,\n datasets : parsedDatasets\n }\n\n localStorage.setItem(config.datasetsStorage, JSON.stringify(datasetStorage));\n dispatch(setDatasetsList(datasetStorage.datasets));\n setFilteredDatasets(datasetStorage.datasets);\n };\n const summaryURL = config.repository_url + config.available_datasets;\n fileHandler.get_remote_file(summaryURL, callback);\n };\n\n const handleChange = (event) => {\n const lowerCaseSearch = event.target.value.toLowerCase();\n let filtered = datasets.filter((dataset) =>\n dataset.label?.includes(lowerCaseSearch) || dataset.name?.includes(lowerCaseSearch)\n );\n setSearchField(lowerCaseSearch);\n setFilteredDatasets(filtered);\n };\n\n const closeDialog = () => {\n setFilteredDatasets(datasets);\n setSelectedIndex(undefined);\n handleClose();\n }\n\n const getFormattedListTex = (label) => {\n const reg = new RegExp(searchField, 'gi');\n\n return searchField === undefined || searchField === \"\" \n ? \n label \n :\n label.replace(reg, function(str) {return ''+str+''});\n }\n\n useEffect(() => {\n if ( open && datasets.length === 0 ) {\n let version = config.version;\n const storage = JSON.parse(localStorage.getItem(config.datasetsStorage));\n const storageVersion = storage?.version\n if ( localStorage.getItem(config.datasetsStorage) && version === storageVersion ) {\n let storedDatasetsInfo = JSON.parse(localStorage.getItem(config.datasetsStorage));\n dispatch(setDatasetsList(storedDatasetsInfo.datasets));\n setFilteredDatasets(storedDatasetsInfo.datasets);\n } else {\n loadDatasets();\n }\n }\n });\n\n return (\n \n \n \n {config.text.datasetsButtonText}\n {config.text.datasetsButtonSubtitleText}\n \n {datasets.length > 0 ? (\n <>\n \n \n \n {filteredDatasets.length > 0 ? (\n \n {filteredDatasets.length} found\n \n )\n :\n null\n }\n \n \n \n {filteredDatasets.map((dataset) => (\n <>\n \n handleListItemClick(event, dataset.name)\n }\n >\n \n }\n />\n \n \n \n ))}\n \n \n \n \n ) : (\n \n \n \n )}\n \n handleDone(selectedIndex)}\n enabledButton={selectedIndex === undefined}\n />\n \n \n );\n};\n\nexport default DatasetsListDialog;\n","export default __webpack_public_path__ + \"static/media/upload-icon.5d0c29ff.svg\";","import { createStyles, LinearProgress, withStyles } from '@material-ui/core';\nimport vars from '../../../styles/constant';\n\nconst ErrorLinearProgress = withStyles(() =>\n createStyles({\n colorPrimary: {\n backgroundColor: vars.progressErrorColor,\n },\n barColorPrimary: {\n backgroundColor: vars.errorColor\n },\n }),\n)(LinearProgress);\n\nconst ProgressBar = (props) => props.error ? (\n \n) : (\n \n);\n\nexport default ProgressBar;\n\n\n","import React from 'react';\nimport { Box, Typography } from '@material-ui/core';\nimport ProgressBar from './ProgressBar';\n\nconst Progress = (props) => {\n const { progress, file, errors=[] } = props;\n return (\n \n {file?.name}\n {\n errors.length > 0 ? (\n <>\n {errors[0]?.message}\n \n \n ) : (\n progress < 100 ? (\n <>\n {progress}%\n \n \n ) : (\n <>\n {progress}%\n \n \n )\n )\n }\n \n )\n}\nexport default Progress;\n","export default __webpack_public_path__ + \"static/media/nft.b55f8c49.svg\";","export default __webpack_public_path__ + \"static/media/mtl.4967134b.svg\";","export default __webpack_public_path__ + \"static/media/database.df7b5a81.svg\";","import React from 'react';\nimport NFT from '../../../images/nft.svg';\nimport MTL from '../../../images/mtl.svg';\nimport DATABASE from '../../../images/database.svg';\n\nexport default function FileExtension({ src }) {\n return (\n {src}\n );\n}\n","export default __webpack_public_path__ + \"static/media/cancel.285b834a.svg\";","import { Box } from '@material-ui/core';\nimport React, { useEffect, useState } from 'react';\nimport Progress from './Progress';\nimport FileExtension from './FileExtension';\nimport CANCEL from '../../../images/cancel.svg';\nimport FileHandler from '../../../utils/filesHandler';\n\nconst uploadFile = (file, onProgress, onUpload) => {\n const fileHandler = new FileHandler();\n const callback = fileData => {\n onUpload(file, fileData)\n }\n fileHandler.get_local_file(file, callback, onProgress);\n}\n\nexport function UploadProgress({ file, onDelete, onUpload }) {\n const [progress, setProgress] = useState(0);\n\n useEffect(() => {\n async function upload() {\n uploadFile(file, setProgress, onUpload);\n }\n upload();\n }, []);\n\n return (\n \n {/* Needs to be updated according to the file uploaded */}\n \n \n {progress < 100 ? (\n onDelete(file)}\n width='24'\n style={{ cursor: 'pointer' }}\n alt='Cancel'\n />\n ) : (\n onDelete(file)}\n width='24'\n style={{ cursor: 'pointer' }}\n alt='Done'\n />\n )\n }\n \n );\n}\n\n","export default __webpack_public_path__ + \"static/media/delete.6b54b734.svg\";","import { Box } from '@material-ui/core';\nimport React from 'react';\nimport DELETE from '../../../images/delete.svg';\nimport Progress from './Progress';\nimport FileExtension from './FileExtension';\n\nexport function UploadError({ file, onDelete, errors }) {\n return (\n \n {/* Needs to be updated according to the file uploaded */}\n \n \n onDelete(file)}\n width='24'\n style={{ cursor: 'pointer' }}\n alt='DELETE'\n />\n \n );\n}\n\n","import { Box, Typography } from '@material-ui/core';\nimport { UploadProgress } from './UploadProgress';\nimport { UploadError } from './UploadError';\n\nexport function FilesUploading({ files, onDelete, onUpload }) {\n return (\n \n Uploaded files\n {files.map((fileWrapper) => (\n \n {fileWrapper.errors.length ? (\n \n ) : (\n \n )}\n \n ))}\n \n )\n};\n","import React, { useState } from 'react';\nimport { DropzoneArea } from 'material-ui-dropzone';\nimport UploadIcon from '../../images/upload-icon.svg';\nimport UploadSubmit from './UploadSubmit';\nimport { FilesUploading } from './UploadView/FilesUploading';\nimport { FILE_UPLOAD_PARAMS } from '../../constants';\n\nconst Uploader = ({ handleClose, handleDone }) => {\n const [rdf, setRdf] = useState(undefined);\n const [json, setJson] = useState(undefined);\n\n const handleChange = (files) => {\n };\n\n const onUpload = (file, data) => {\n if (rdf?.file === file && (file.type === \"text/turtle\" || file.name.split('.').pop() === FILE_UPLOAD_PARAMS.acceptedFileExtensions[1])) {\n setRdf({\n ...rdf, data\n })\n } else if (json?.file === file && (file.type === \"application/json\" || file.name.split('.').pop() === FILE_UPLOAD_PARAMS.acceptedFileExtensions[0])) {\n setJson({\n ...json, data\n })\n } else {\n console.error(\"something weird happened!\")\n }\n }\n\n const onDelete = (file) => {\n if (rdf?.file === file && (file.type === \"text/turtle\" || file.name.split('.').pop() === FILE_UPLOAD_PARAMS.acceptedFileExtensions[1])) {\n setRdf(undefined);\n } else if (json?.file === file && (file.type === \"application/json\" || file.name.split('.').pop() === FILE_UPLOAD_PARAMS.acceptedFileExtensions[0])) {\n setJson(undefined);\n } else {\n console.error(\"something weird happened!\")\n }\n };\n\n const onDrop = (files, accept = true) => {\n for (const file of files) {\n if (file.type === \"text/turtle\" || file.name.split('.').pop() === FILE_UPLOAD_PARAMS.acceptedFileExtensions[1]) {\n setRdf({\n file,\n errors: file.size > FILE_UPLOAD_PARAMS.maxFileSize ? [{ message: 'Error: File is too large' }] : [] ,\n id: Math.random(),\n })\n } else if (file.type === \"application/json\" || file.name.split('.').pop() === FILE_UPLOAD_PARAMS.acceptedFileExtensions[0]) {\n setJson({\n file,\n errors: file.size > FILE_UPLOAD_PARAMS.maxFileSize ? [{ message: 'Error: File is too large' }] : [] ,\n id: Math.random(),\n })\n } else {\n console.error(\"something weird happened!\")\n }\n }\n };\n\n const nodeRef = React.useRef('dialog');\n\n const DropzoneUploadIcon = () => \"upload\"\n\n const files = [rdf, json].filter(item => item !== undefined);\n\n return (\n <>\n {json !== undefined && rdf !== undefined \n ? <> \n : item.file)}\n onChange={(e) => handleChange(e)}\n showPreviewsInDropzone={false}\n onDrop={(accFiles) => onDrop(accFiles)}\n acceptedFiles={FILE_UPLOAD_PARAMS.acceptedFileExtensions}\n maxFileSize={FILE_UPLOAD_PARAMS.maxFileSize}\n onDropRejected={(rejFiles) => onDrop(rejFiles, false)}\n showAlerts={false}\n ref={nodeRef}\n Icon={DropzoneUploadIcon}\n dropzoneText={'Drag & Drop your files here'}\n filesLimit={FILE_UPLOAD_PARAMS.maxFiles}\n /> }\n\n {files && files.length ? (\n \n ): null }\n\n {json !== undefined && rdf !== undefined && (\n {handleDone(files)}} />\n )}\n \n );\n};\n\nexport default Uploader;\n","export default __webpack_public_path__ + \"static/media/url.8265b8f5.svg\";","export default __webpack_public_path__ + \"static/media/link-green.8889c463.svg\";","import React, { useState, useEffect } from 'react';\nimport {\n FormControl,\n OutlinedInput,\n InputAdornment,\n CircularProgress,\n Button,\n} from '@material-ui/core';\nimport LINK from '../../images/url.svg';\nimport LINK_GREEN from '../../images/link-green.svg';\nimport CANCEL from '../../images/cancel.svg';\nimport UploadSubmit from './UploadSubmit';\nimport FileHandler from '../../utils/filesHandler';\n\nconst UrlUploader = ({ handleClose, handleDone }) => {\n const [loader, setLoader] = useState(false);\n const [url, setUrl] = useState('');\n const [fileDownloaded, setFileDownloaded] = useState(false);\n const [files, setFiles] = useState([\n {\n id: \"ttl\",\n url: undefined,\n data: undefined,\n file: {\n name: \"ttl\",\n type: \"text/turtle\"\n }\n },\n {\n id: \"json\",\n url: undefined,\n data: undefined,\n file: {\n name: \"json\",\n type: \"application/json\"\n }\n }\n ]);\n\n const onUpload = (url, data) => {\n var fileExt = url.split('.').pop();\n\n setFiles((curr) =>\n curr.map((item) => {\n if (item.id === fileExt && data !== undefined) {\n return { ...item, url, data };\n }\n return item;\n }),\n );\n };\n\n const getJsonURL = url => {\n var urls = url.split('/');\n var dataset = urls.pop().replace('N%3Adataset%3A', '').replace('.ttl', '');\n var base_url = urls.shift();\n urls.pop();\n urls.map(item => {\n base_url = base_url + '/' + item;\n return item;\n })\n var json_url = base_url + '/path-metadata/' + dataset + '/LATEST_RUN/path-metadata.json'\n return json_url\n }\n\n const uploadFile = () => {\n const fileHandler = new FileHandler();\n const fileHandler2 = new FileHandler();\n const callback = (url, fileData) => {\n onUpload(url, fileData);\n };\n setLoader(true);\n fileHandler.get_remote_file(url, callback, () => {});\n fileHandler2.get_remote_file(getJsonURL(url), callback, () => {});\n };\n\n const removeUrl = () => {\n setUrl('');\n setFileDownloaded(false);\n };\n\n useEffect(() => {\n if (loader && !fileDownloaded) {\n if (files[0].data !== undefined && files[1].data !== undefined) {\n setLoader(false);\n setFileDownloaded(true);\n }\n }\n }, [loader, fileDownloaded, files] );\n\n return (\n <>\n \n \n Link\n \n }\n value={url}\n onChange={(e) => setUrl(e.target.value)}\n endAdornment={\n url !== '' ? (\n \n CANCEL\n \n ) : null\n }\n />\n \n\n {fileDownloaded ? (\n {handleDone(files)}} />\n ) : (\n \n {loader ? : 'Load'}\n \n )}\n \n );\n};\n\nexport default UrlUploader;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst TabPanel = (props) => {\n const { children, value, index, ...other } = props;\n\n return (\n