@rcsb/rcsb-statistics 0.3.37-dev.0 → 0.3.37-dev.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/index.html +1 -1
- package/build/static/css/main.a8ce960b.css +8 -0
- package/build/static/js/10.d9d49a66.chunk.js +1 -0
- package/build/static/js/324.fc8ecd59.chunk.js +1 -0
- package/build/static/js/385.e98f809c.chunk.js +2 -0
- package/build/static/js/{483.136dadbf.chunk.js.LICENSE.txt → 385.e98f809c.chunk.js.LICENSE.txt} +2 -2
- package/build/static/js/47.96ede111.chunk.js +1 -0
- package/build/static/js/630.4970cb0e.chunk.js +1 -0
- package/build/static/js/main.5426ff9a.js +2 -0
- package/build/static/js/{main.62ffd6ed.js.LICENSE.txt → main.5426ff9a.js.LICENSE.txt} +3 -3
- package/package.json +1 -1
- package/build/static/css/main.5cea7e44.css +0 -8
- package/build/static/js/10.010021c2.chunk.js +0 -1
- package/build/static/js/324.4a1309ee.chunk.js +0 -1
- package/build/static/js/47.47095f7e.chunk.js +0 -1
- package/build/static/js/483.136dadbf.chunk.js +0 -2
- package/build/static/js/630.bcd33d2f.chunk.js +0 -1
- package/build/static/js/main.62ffd6ed.js +0 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_rcsb_rcsb_statistics=self.webpackChunk_rcsb_rcsb_statistics||[]).push([[324],{1324(e,t,n){n.r(t),n.d(t,{default:()=>Xe});var l=n(6540),a=n(7767),r=n(4731),o=n(6118),i=n(3839),c=n(1376),s=n(1105),d=n(4479),u=n(3048),p=n(6044),m=n(8027),b=n(1223);const f=e=>{let t=e.size,n=void 0===t?24:t,a=e.color,r=void 0===a?"#bbb":a,o=e.disabled,i=void 0!==o&&o;return l.createElement("svg",{width:n,height:n,viewBox:"0 0 528.74 522.05",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{opacity:i?.5:1,cursor:i?"not-allowed":"pointer",pointerEvents:i?"none":"auto"}},l.createElement("path",{fill:r,d:"M274.5,5.22C189.25-13.05,114.92,14.41,111.53,123.11l-41.03,1.16-8.09,61.26h38.14c-6.59,22.84-28.2,247-44.49,258.9-9.25,8.09-22.54,10.98-47.39,5.78l-8.67,63.57c62.01,26.28,139.42-12.34,149.1-82.64,7.95-49.39,28.89-195.23,36.41-246.76l52.01.58,10.98-60.68h-52.59l4.44-30.57c11.36-29.11,36.03-30.32,62.02-23.75l12.14-64.72Z"}),l.createElement("path",{fill:r,d:"M304.9,217.1l-8.49-23.98c-90.49,30-137.29,262.05-41.47,306.8l10.99-23.48c-27.73-20.47-27.77-70.59-24.98-103.93,1.51-52.85,20.66-123.28,63.96-155.4Z"}),l.createElement("polygon",{fill:r,points:"357.37 270.57 306.4 270.57 334.38 344.52 278.42 432.47 331.88 432.97 363.86 385.5 379.35 432.47 428.82 432.47 398.84 353.02 454.3 270.57 397.84 271.07 372.36 312.04 357.37 270.57"}),l.createElement("path",{fill:r,d:"M464.93,214.67l14.66-20.8c79.02,53.33,61.38,289.4-42.97,306.6l-4.24-25.58c32.23-12.22,45.81-60.47,52.14-93.32,12.83-51.29,13.42-124.28-19.59-166.9Z"}))};var g,h,v,y,x,E,w,j,C,k,A,O,S,T,D,P,q,z,_,N,I,F,R,L,M,U=n(2756),W=n(7638),H=n(6061),Z=n(8422),B=n(3679);function Y(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}const $=(0,B.i7)(g||(g=Y(["\n from {\n opacity: .5;\n transform: translateZ(0) scale(0.999);\n }\n to {\n opacity: 1;\n transform: translateZ(0) scale(1);\n }\n"]))),V=B.Ay.div(h||(h=Y(["\n animation: "," .5s ease-in;\n will-change: opacity, transform;\n"])),$),J=B.Ay.div(v||(v=Y([" \n display: flex;\n justify-content: flex-end;\n margin-top: -10px;\n"]))),K=B.Ay.div.attrs(()=>({as:"div"}))(y||(y=Y(["\n margin-top: 35px;\n padding-top: 10px;\n border-top: 1px solid #ccc;\n margin-right: 200px;\n"]))),G=B.Ay.button(x||(x=Y(["\n display: flex;\n align-items: center;\n justify-content: center;\n border: 1px solid #e7e7e7;\n border-radius: 3px;\n padding: 3px 5px;\n\n & svg { \n margin-right: 5px; \n }\n"]))),X=B.Ay.div(E||(E=Y(["\n padding-left: 25px;\n margin-top: 60px;\n"]))),Q=(0,B.Ay)(s.A)(w||(w=Y(["\n margin-top: 60px;\n"]))),ee=B.Ay.div(j||(j=Y(["\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 5px;\n"]))),te=B.Ay.div(C||(C=Y(["\n background-color: #f0f0f0;\n border: ",";\n padding: 5px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: ",";\n filter: ",";\n\n ","\n"])),e=>e.selected?"1px solid black":"1px solid #fff",e=>e.disabled?"#bbb":"#606060",e=>e.disabled?"grayscale(30%) blur(0.5px)":"none",e=>!e.disabled&&"\n &:hover {\n background-color: #e0e0e0;\n border: 1px solid #808080;\n cursor: pointer;\n }\n "),ne=B.Ay.div(k||(k=Y(["\n display: flex;\n align-items: center;\n margin-bottom: 5px;\n min-width: 170px;\n"]))),le=B.Ay.input(A||(A=Y(["\n margin-right: 20px;\n"]))),ae=B.Ay.label(O||(O=Y(["\n font-size: 12px;\n margin-left: 5px;\n font-weight: normal;\n margin-bottom: 0 !important;\n"]))),re=B.Ay.div(S||(S=Y(["\n font-weight: bold;\n font-size: 1.2em;\n margin-bottom: 15px;\n"]))),oe=B.Ay.div(T||(T=Y(["\n width: auto;\n height: 550px;\n margin-bottom: 180px;\n margin-left: -15px;\n"]))),ie=B.Ay.div(D||(D=Y(["\n margin-top: 20px;\n min-width: 170px;\n label {\n font-size: 12px;\n font-weight: normal;\n margin-left: 5px;\n margin-bottom: 0 !important;\n margin-top: 4px !important;\n }\n .form-check {\n display: flex;\n align-items: center;\n }\n"]))),ce=B.Ay.div(P||(P=Y(["\n margin-bottom: 35px;\n"]))),se=B.Ay.div(q||(q=Y(["\n font-weight: bold;\n margin-bottom: 5px;\n"]))),de=(B.Ay.div(z||(z=Y(["\n width: 100%;\n\n\n .col-md-10{\n width: 90% !important;\n }\n\n .col-md-10 > div:first-child {\n height: 80vh !important;\n }\n\n .col-md-2{\n width: 0 !important;\n }\n"]))),B.Ay.div(_||(_=Y(["\n display: block;\n font-size: 18px;\n font-family: 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;\n font-weight: bold;\n color: #333;\n padding-top: 0;\n padding-bottom: 15px;\n text-align: start;\n margin-top: -2px;\n"])))),ue=B.Ay.div(N||(N=Y(["\n position: relative;\n display: inline-block;\n cursor: pointer;\n\n &:hover ul {\n display: block;\n top:-5px;\n margin-left:15px\n }\n"]))),pe=B.Ay.div(I||(I=Y(["\n position: relative;\n display: inline-block;\n cursor: ",";\n opacity: ",";\n pointer-events: ",";\n filter: ",";\n color: ",";\n\n &:hover ul {\n display: ",";\n top: -5px;\n margin-left: 15px;\n }\n"])),e=>e.disabled?"not-allowed":"pointer",e=>e.disabled?.4:1,e=>e.disabled?"none":"auto",e=>e.disabled?"grayscale(30%) blur(0.5px)":"none",e=>e.disabled?"#bbb":"inherit",e=>e.disabled?"none":"block"),me=B.Ay.div(F||(F=Y(["\n display: flex;\n align-items: center;\n cursor: pointer;\n position: relative;\n\n .triangle {\n width: 8px;\n aspect-ratio: 1;\n clip-path: polygon(0 0, 100% 0, 50% 70%);\n background-color: #999;\n position: absolute;\n right: -9px;\n top: 50%;\n transform: translateY(-10%);\n transition: transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);\n }\n\n &:hover .triangle {\n transform: translateY(0.2rem);\n }\n"]))),be=B.Ay.ul(R||(R=Y(["\n display: none;\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n min-width: 160px;\n padding: 2px 0;\n margin: 0;\n font-size: 14px;\n color: #333;\n text-align: left;\n list-style: none;\n background-color: #fff;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 4px;\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n\n ",":hover & {\n display: block;\n }\n\n & > li.disabled {\n pointer-events: none;\n color: #ccc;\n }\n\n & > li:not(.disabled):hover {\n background-color: #f8f9fa;\n }\n"])),ue),fe=B.Ay.li(L||(L=Y(["\n padding: 8px 20px;\n display: flex;\n align-items: center;\n cursor: pointer;\n white-space: nowrap;\n\n &:hover {\n background-color: #f1f1f1;\n }\n"]))),ge=B.Ay.span(M||(M=Y(["\n margin-left: 8px;\n font-size: 14px;\n color: #333;\n margin-right: 5px;\n"])));var he,ve=n(2195);const ye=B.Ay.div(he||(xe=["\n .gridjs-pagination {\n display: flex;\n justify-content: space-between;\n padding: 10px;\n background-color: #f9fafb;\n border: 1px solid #ccc;\n border-radius: 0 0 8px 8px;\n }\n\n .gridjs-summary {\n font-size: 14px;\n color: #555;\n margin-top: 5px;\n }\n\n .gridjs-pages button {\n margin: 0 5px;\n padding: 5px 10px;\n border-radius: 5px;\n background-color: #fff;\n border: 1px solid #ccc;\n color: #333;\n cursor: pointer;\n transition: background-color 0.3s, color 0.3s;\n }\n\n .gridjs-pages button:hover {\n background-color: #e0e0e0;\n color: #000;\n }\n\n .gridjs-pages button:disabled {\n color: #aaa;\n background-color: #f5f5f5;\n cursor: not-allowed;\n }\n\n .gridjs-pages button.gridjs-currentPage {\n background-color: #d0d0d0;\n font-weight: bold;\n border-color: #aaa;\n }\n\n .gridjs-wrapper {\n width: 100%;\n border-radius: 8px;\n box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);\n margin-bottom: 20px;\n border: 1px solid #e5e7eb;\n margin-top: 20px;\n }\n\n td.gridjs-td {\n padding: 12px 16px;\n font-size: 13px;\n color: #444;\n border: 1px solid #e5e7eb;\n }\n\n th.gridjs-th {\n position: relative;\n padding: 12px 16px;\n background-color: #f7f7f7;\n color: #333;\n font-weight: bold;\n text-align: left;\n border: 1px solid #e5e7eb;\n cursor: pointer;\n }\n\n .gridjs-th .gridjs-sort {\n display: none !important;\n }\n\n th.gridjs-th.gridjs-sort-neutral::after {\n content: '⇵';\n margin-left: 10px;\n font-size: 12px;\n color: #888;\n }\n\n th.gridjs-th.gridjs-sort-asc::after {\n content: '▲';\n margin-left: 10px;\n font-size: 12px;\n color: #888;\n }\n\n th.gridjs-th.gridjs-sort-desc::after {\n content: '▼';\n margin-left: 10px;\n font-size: 12px;\n color: #888;\n }\n\n input.gridjs-input {\n outline: none;\n background-color: #fff;\n border: 1px solid #d2d6dc;\n border-radius: 5px;\n padding: 8px 12px;\n font-size: 14px;\n margin-bottom: 10px;\n }\n\n input.gridjs-input:focus {\n border-color: #9bc2f7;\n box-shadow: 0 0 0 3px rgba(149, 189, 243, 0.5);\n }\n"],Ee||(Ee=xe.slice(0)),he=Object.freeze(Object.defineProperties(xe,{raw:{value:Object.freeze(Ee)}}))));var xe,Ee;const we=e=>{let t=e.data,n=e.title;if(0===t.length)return l.createElement("p",null,"No data available.");const a=Object.keys(t[0]),r=t.map(e=>a.map(t=>e[t])).sort((e,t)=>t[0]-e[0]);return l.createElement(l.Fragment,null,n&&l.createElement(de,null,n),l.createElement(ye,null,l.createElement(ve.x,{columns:a,data:r,search:!1,pagination:{limit:10},sort:!0,style:{table:{border:"1px solid #ccc","border-radius":"8px",width:"100%","background-color":"#fff",color:"#000","font-family":"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif","font-size":"14px","text-align":"left"},th:{"background-color":"#f5f5f5",color:"#333","border-bottom":"2px solid #ccc",padding:"12px","font-weight":"bold"},td:{padding:"12px","border-bottom":"1px solid #eee",color:"#555","font-size":"13px"}}})))};var je=n(658);const Ce=e=>{let t=e.chartType,n=e.handleChartTypeChange,a=e.isDistPlot;const r=e=>{n(e)};return l.createElement(ue,null,l.createElement(me,null,l.createElement(te,null,(()=>{switch(t){case"bar":default:return l.createElement(m.v$b,{size:15});case"line":return l.createElement(m.YYR,{size:15});case"pie":return l.createElement(m.qvi,{size:15})}})()),l.createElement("span",{className:"triangle"})),l.createElement(be,null,l.createElement(fe,{onClick:()=>r("bar")},l.createElement(te,null,l.createElement(m.v$b,{size:15})),l.createElement(ge,null,"Bar Chart")," ","bar"===t&&l.createElement(je.CkS,null)),!a&&l.createElement(fe,{onClick:()=>r("line")},l.createElement(te,null,l.createElement(m.YYR,{size:15})),l.createElement(ge,null,"Line Chart")," ","line"===t&&l.createElement(je.CkS,null)),a&&l.createElement(fe,{onClick:()=>r("pie")},l.createElement(te,null,l.createElement(m.qvi,{size:15})),l.createElement(ge,null,"Pie Chart")," ","pie"===t&&l.createElement(je.CkS,null))))},ke=e=>{let t=e.scaleType,n=e.handleScaleTypeChange,a=(e.isDistPlot,e.disabled);const r=e=>{n(e)};return l.createElement(pe,{disabled:a},l.createElement(me,null,l.createElement(te,null,l.createElement(f,{size:15,color:"#606060"})),l.createElement("span",{className:"triangle"})),l.createElement(be,null,l.createElement(fe,{onClick:()=>r("logarithmic")},l.createElement(ge,null,"Logarithmic")," ","logarithmic"===t&&l.createElement(je.CkS,null)),l.createElement(fe,{onClick:()=>r("linear")},l.createElement(ge,null,"Linear")," ","linear"===t&&l.createElement(je.CkS,null))))};var Ae=n(637),Oe=n(7231);function Se(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var l,a,r,o,i=[],c=!0,s=!1;try{if(r=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(l=r.call(n)).done)&&(i.push(l.value),i.length!==t);c=!0);}catch(e){s=!0,a=e}finally{try{if(!c&&null!=n.return&&(o=n.return(),Object(o)!==o))return}finally{if(s)throw a}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Te(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Te(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Te(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,l=Array(t);n<t;n++)l[n]=e[n];return l}function De(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,l)}return n}function Pe(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?De(Object(n),!0).forEach(function(t){qe(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):De(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function qe(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}o.t1.register(o.PP,o.kc,o.OJ,o.E8,o.No,o.Bs,o.FN,o.hE,o.m_,o.s$,i.Ay);const ze=e=>{const t=e.datasets.map(e=>{const t=[];let n=0;return e.data.forEach(e=>{n+=e,t.push(n)}),Pe(Pe({},e),{},{data:t})});return Pe(Pe({},e),{},{datasets:t})},_e=e=>{var t,n,a;let o=e.data,i=e.plotName,g=e.reportVariantSelector;const h=(0,l.useRef)(null),v=(0,U.h)(),y=(v.handleOpenModal,v.handleCloseModal,(0,W.t)()),x=y.settings,E=y.updateCurrentInput,w=y.setConfig,j=x.colorScheme,C=Ae.Tb.getStatisticsChartObject(i),k="distribution"===(null==C?void 0:C.chartCategory),A=!k&&(i.startsWith("unique-protein-domains-")||i.startsWith("unique-protein-sequences-")),O=null==C?void 0:C.trauncateViewData,S=(null==C?void 0:C.chartOptions)||{},T=k?x.config.chartType.distrubution:x.config.chartType.growth,D=x.config.chartType.scale,P=k||A?"non-cumulative":x.config.chartType.dataView,q=(0,H.R)(),z=Se((0,l.useState)(o.datasets.map(e=>({label:e.label||"",visible:!0}))),2),_=z[0],N=z[1],I=Se((0,l.useState)(()=>"cumulative"===(k||A?"non-cumulative":P)?ze(o):o),2),F=I[0],R=I[1],L=o.datasets.map(e=>({label:e.label||"",visible:!0})),M=k||A?"non-cumulative":"cumulative",B=()=>{N(L),w({chartType:Pe(Pe({},x.config.chartType),{},{[k?"distrubution":"growth"]:"bar",scale:"linear",dataView:M})}),R("cumulative"===M?ze(o):o)};(0,l.useEffect)(()=>{N(o.datasets.map(e=>({label:e.label||"",visible:!0})))},[o]),(0,l.useEffect)(()=>{const e="cumulative"!==P||A?o:ze(o);R(e)},[P,o,A]),(0,l.useEffect)(()=>{if("cumulative"!==P||A)R({labels:o.labels,datasets:o.datasets.map(e=>{var t;return Pe(Pe({},e),{},{hidden:!(null!==(t=_.find(t=>t.label===e.label))&&void 0!==t&&t.visible)})})});else{const e=ze(o);R({labels:o.labels,datasets:e.datasets.map(e=>{var t;return Pe(Pe({},e),{},{hidden:!(null!==(t=_.find(t=>t.label===e.label))&&void 0!==t&&t.visible)})})})}},[P,o,_,A]),(0,l.useEffect)(()=>{JSON.stringify(x.currentInput)!==JSON.stringify(_)&&(i.includes("overall")||E(_))},[_,E]);const Y=()=>{w({chartType:Pe(Pe({},x.config.chartType),{},{scale:"linear"===x.config.chartType.scale?"logarithmic":"linear"})})},$=e=>{w({chartType:Pe(Pe({},x.config.chartType),{},{dataView:e})})},V=e=>{if(h.current){const n=(0,r.CK)(h.current,e);if(n.length>0&&F.labels){const e=n[0].index,l=F.labels[e];if(C&&C.getSearchObj){var t;const e=C.getSearchObj(x,l),n=JSON.stringify(e),a=encodeURIComponent(n),r=(null===(t=C.query)||void 0===t?void 0:t.returnType)===Oe.pz.MolDefinition?"/search/chemical/?request=":"/search?request=",o="".concat(x.config.searchAdvancedUrl).concat(r).concat(a);window.open(o,"_blank")}}}},de=Pe(Pe({},S),{},{layout:{padding:{right:1}},scales:k||"line"!==T?S.scales:Pe(Pe({},S.scales),{},{x:Pe(Pe({},null===(t=S.scales)||void 0===t?void 0:t.x),{},{stacked:!1}),y:Pe(Pe({},null===(n=S.scales)||void 0===n?void 0:n.y),{},{type:D,stacked:!1,min:"logarithmic"===D?1:void 0,ticks:{callback:function(e){return"logarithmic"===D?[1,10,100,1e3,1e4,1e5].includes(e)?e:null:e}},title:{display:!0,text:"".concat((null==S||null===(a=S.scales)||void 0===a||null===(a=a.y)||void 0===a||null===(a=a.title)||void 0===a?void 0:a.text)||"Y-Axis"," ").concat("logarithmic"===D?"(Logarithmic scale)":"(Linear scale)")}})}),plugins:Pe(Pe({},S.plugins),{},{legend:{display:o.datasets.length>1,position:"bottom",align:"start",labels:{generateLabels:e=>e.data.datasets.map((e,t)=>({text:e.label||"Dataset ".concat(t+1),fillStyle:e.backgroundColor,hidden:e.hidden||!1,datasetIndex:t})).filter(e=>!e.hidden),boxWidth:40,padding:20,font:{size:14,family:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",style:"normal"},color:"#333"},onClick:()=>{}}}),elements:{line:{tension:.1,spanGaps:!0},point:{radius:0,hoverRadius:0}},animation:{duration:400,easing:"easeInOutQuart"},onHover:(e,t)=>{t.length?e.native.target.style.cursor="pointer":e.native.target.style.cursor="default"}}),ue=e=>{w({chartType:Pe(Pe({},x.config.chartType),{},{[k?"distrubution":"growth"]:e})})},pe=(e,t)=>{const n=e.datasets[0],l=e.labels.map((e,n)=>t[n%t.length]);return{labels:e.labels,datasets:[{data:n.data,backgroundColor:l,borderColor:l,borderWidth:1}]}},me=e=>{e.title;const t=e.legend,n=e.tooltips,l=e.responsive,a={responsive:null==l||l,maintainAspectRatio:!1,plugins:Pe(Pe({},e.plugins),{},{legend:Pe(Pe({},t),{},{display:!0,position:"bottom",onClick:(e,t,n)=>((e,t)=>{const n=e.getDatasetMeta(0),l=t.index;if(void 0!==l){const a=n.data[l].hidden;n.data[l].hidden=!a,t.hidden=n.data[l].hidden,e.options.plugins.legend.labels.generateLabels=e=>e.data.labels.map((t,l)=>({text:t,fillStyle:e.data.datasets[0].backgroundColor[l],hidden:n.data[l].hidden,index:l})),e.update()}})(n.chart,t)}),tooltip:Pe(Pe({},n),{},{callbacks:{label:e=>{const t=e.dataset,n=e.dataIndex,l=e.chart.getDatasetMeta(0).data.map((e,t)=>e.hidden?null:t).filter(e=>null!==e).map(e=>t.data[e]),a=t.data[n],r=(a/l.reduce((e,t)=>e+t,0)*100).toFixed(2);return"".concat(e.label,": ").concat((0,Z.bF)(a)," - ").concat(r,"% (of shown data)")}}})}),animation:{animateScale:!0,animateRotate:!0},elements:{arc:{hoverBorderWidth:3,hoverOffset:20,hoverBorderColor:"white"}},onHover:(e,t)=>{t.length?e.native.target.style.cursor="pointer":e.native.target.style.cursor="default"}};return a},be=e=>{if(!e||!e.datasets||!Array.isArray(e.datasets))return{labels:[],datasets:[]};const t=e.datasets.map(e=>{const t=e.data.map(e=>"number"!=typeof e||isNaN(e)?null:e);return Pe(Pe({},e),{},{data:t,stack:void 0,fill:!1,borderColor:e.borderColor||"rgba(75, 192, 192, 1)",backgroundColor:e.backgroundColor||"rgba(75, 192, 192, 0.2)",borderWidth:3,pointRadius:0,pointHoverRadius:0,tension:.1})});return{labels:e.labels||[],datasets:t}},fe=()=>g?l.createElement(ie,null,l.createElement(se,null,g.title),g.options.map(e=>l.createElement(c.A.Check,{key:e.key,type:"radio",id:"report-variant-".concat(i,"-").concat(e.key),label:e.label,name:"report-variant-".concat(i),value:e.key,checked:g.selectedKey===e.key,onChange:()=>g.onChange(e.key)}))):null;return l.createElement(l.Fragment,null,l.createElement(J,null,l.createElement(G,{onClick:e=>{if(null==C||!C.getSearchObj)return;const t=(()=>{const e=_.some(e=>!e.visible);return k||!e?(0,Z.ry)(q,x):((e,t,n,l,a)=>{var r,o;const i="".concat(t.config.searchApiUrl,"/query-editor.html?json="),c=null==C||null===(r=C.query)||void 0===r||null===(r=r.firstDim)||void 0===r?void 0:r.attribute,s=null==C||null===(o=C.query)||void 0===o?void 0:o.returnType;let d,u,p;if(l){var m,b;const e=null==C||null===(m=C.query)||void 0===m||null===(m=m.firstDim)||void 0===m?void 0:m.ranges,t=null==C||null===(b=C.query)||void 0===b||null===(b=b.firstDim)||void 0===b?void 0:b.filter;if(e&&!t){var f,g;if(!Array.isArray(e)||e.length<2)return i;if(d=null===(f=e[0])||void 0===f?void 0:f.to,u=null===(g=e[e.length-1])||void 0===g?void 0:g.from,void 0===d||void 0===u)return i;p={type:Oe.Type.Terminal,label:"text",service:Oe.kl.Text,parameters:{attribute:c,operator:Oe.XP.Range,value:{from:d,to:u,include_lower:!0,include_upper:!1}}}}else if(t){var h,v;const e=a.labels,t=Array.isArray(null==C||null===(h=C.query)||void 0===h||null===(h=h.firstDim)||void 0===h?void 0:h.facets)?null==C||null===(v=C.query)||void 0===v||null===(v=v.firstDim)||void 0===v||null===(v=v.facets[0])||void 0===v?void 0:v.attribute:void 0;p={type:Oe.Type.Group,nodes:e.map(e=>({type:Oe.Type.Terminal,service:Oe.kl.Text,parameters:{attribute:t,operator:Oe.XP.ExactMatch,value:e}})),logical_operator:Oe.LogicalOperator.Or,label:"text"}}else{const e=a.labels.slice(0,25);p={type:Oe.Type.Group,nodes:e.map(e=>({type:Oe.Type.Terminal,service:Oe.kl.Text,parameters:{attribute:c,operator:Oe.XP.ExactMatch,negation:!1,value:e}})),logical_operator:Oe.LogicalOperator.Or,label:"text"}}}else{var y;const e=n(t,"1976-05-19");if(!e||!e.query||!e.query.nodes)return i;const l=null!=C&&null!==(y=C.query)&&void 0!==y&&null!==(y=y.secondDim)&&void 0!==y&&y.filter?e.query.nodes.slice(1):e.query.nodes.slice(1)[0].nodes;p={type:e.query.type,nodes:l,logical_operator:Oe.LogicalOperator.Or}}const x={query:p,return_type:s,request_options:e.searchRequest.request_options},E=encodeURIComponent(JSON.stringify(x));return"".concat(i).concat(E)})(q,x,C.getSearchObj,k,F)})();t&&window.open(t,"_blank")}},l.createElement(m.Pcn,null)," Search API")),l.createElement(u.A,null,(()=>{Pe(Pe({},de),{},{maintainAspectRatio:!1,plugins:{legend:{display:!1}}});const e=()=>"Report: ".concat(S.plugins.title.text,", Generated on: ").concat((new Date).toLocaleDateString()," ").concat((new Date).toLocaleTimeString()),t=(e,t,n)=>{var l,a;if(null==e||null===(l=e.datasets)||void 0===l||!l.length||0===e.labels.length)return{columns:[],gridData:[]};if(t){var r,o;const t=e.labels||[],l=e.datasets[0]||{},a=(null===(r=n.scales)||void 0===r||null===(r=r.x)||void 0===r||null===(r=r.title)||void 0===r?void 0:r.text)||"Range",i=(null===(o=n.scales)||void 0===o||null===(o=o.y)||void 0===o||null===(o=o.title)||void 0===o?void 0:o.text)||"Number of Entries";return{columns:"x"===n.indexAxis?[a,i]:[i,a],gridData:t.map((e,t)=>[e,(0,Z.bF)(l.data[t]||0)])}}if(1===e.datasets.length)return{columns:["Year",(null===(a=n.scales)||void 0===a||null===(a=a.y)||void 0===a||null===(a=a.title)||void 0===a?void 0:a.text)||"Data"],gridData:e.labels.map((t,n)=>[t,(0,Z.bF)(e.datasets[0].data[n]||0)])};const i=e.datasets.filter(e=>{var t;return null===(t=_.find(t=>t.label===e.label))||void 0===t?void 0:t.visible});return{columns:["Year",...i.map(e=>e.label)],gridData:e.labels.map((e,t)=>{const n=[e];return i.forEach(e=>{n.push((0,Z.bF)(e.data[t]||0))}),n})}},n=t(F,k,S);if(0===n.columns.length||0===n.gridData.length)return l.createElement("p",null,"No data available for table.");const a=n.gridData.map(e=>{const t={};return n.columns.forEach((n,l)=>{t[n]=e[l]}),t}),o=O?Pe(Pe({},F),{},{labels:F.labels.slice(0,25),datasets:F.datasets.map(e=>Pe(Pe({},e),{},{data:e.data.slice(0,25)}))}):F,u={bar:l.createElement(r.yP,{ref:h,data:o,options:de,onClick:V}),line:l.createElement(r.N1,{ref:h,data:be(F),options:de}),pie:l.createElement(r.Fq,{ref:h,data:pe(o,j),options:me(de),onClick:V}),table:l.createElement(l.Fragment,null," ",l.createElement(we,{data:a,title:de.plugins.title.text}))};return l.createElement(d.A,null,l.createElement(s.A,{md:10},l.createElement(oe,null,u[T],l.createElement(K,null,l.createElement("div",{dangerouslySetInnerHTML:{__html:(null==C?void 0:C.description)||""}})))),l.createElement(s.A,{md:2},l.createElement(d.A,null,l.createElement(Q,{md:2},l.createElement(ee,null,l.createElement(l.Fragment,null,l.createElement(Ce,{"data-tooltip-id":"chart-type-tooltip","data-tooltip-content":"Change Chart type",chartType:T,handleChartTypeChange:ue,isDistPlot:k}),l.createElement(te,{"data-tooltip-id":"table-tooltip","data-tooltip-content":"Display data in a structured, sortable table format",disabled:!1,selected:"table"===T,onClick:()=>ue("table")},l.createElement(m.ist,{size:15})),l.createElement(te,{"data-tooltip-id":"csv-tooltip","data-tooltip-content":"Export data in a CSV format",onClick:()=>{const n=t(F,k,S),l=((t,n)=>{const l=e(),a=[...n].sort((e,t)=>e[0]>t[0]?-1:e[0]<t[0]?1:0);return[l,t.join(","),...a.map(e=>e.map(e=>e.replace(/,/g,"")).join(","))].join("\n")})(n.columns,n.gridData),a=new Blob([l],{type:"text/csv;charset=utf-8;"}),r=URL.createObjectURL(a),o=document.createElement("a");o.href=r;const i=e(),c="".concat(i.replace(/[^a-z0-9]/gi,"_").toLowerCase(),".csv");o.setAttribute("download",c),document.body.appendChild(o),o.click(),document.body.removeChild(o)},disabled:!1},l.createElement(b.BVt,{size:15})),!k&&("line"===T?l.createElement(ke,{"data-tooltip-id":"scale-tooltip","data-tooltip-content":"Toggle data scale",scaleType:D,handleScaleTypeChange:Y,isDistPlot:k,disabled:!1}):l.createElement(te,{"data-tooltip-id":"scale-tooltip","data-tooltip-content":"Switch to the Line Chart view to enable the option to change the scale to logarithmic",disabled:!0},l.createElement(f,{size:15,color:"#606060",disabled:!0}))),l.createElement(te,{"data-tooltip-id":"reset-tooltip","data-tooltip-content":"Reset chart to the default display and clear any applied filters",onClick:B,disabled:!1},l.createElement(m.DIg,{size:15})),l.createElement(p.m_,{id:"settings-tooltip",place:"left"}),l.createElement(p.m_,{id:"information-tooltip",place:"left"}),l.createElement(p.m_,{id:"chart-type-tooltip",place:"left"}),l.createElement(p.m_,{id:"table-tooltip",place:"left"}),l.createElement(p.m_,{id:"scale-tooltip",place:"left"}),l.createElement(p.m_,{id:"csv-tooltip",place:"left"}),l.createElement(p.m_,{id:"reset-tooltip",place:"left"})))),(()=>{const e=!k&&(Boolean(g)||!A&&_.length>1),t=k&&Boolean(g);return l.createElement(s.A,{md:10},l.createElement(X,null,l.createElement(l.Fragment,null,k?t&&l.createElement(l.Fragment,null,l.createElement(re,null,"Data Options"),fe()):l.createElement(l.Fragment,null,e&&l.createElement(re,null,"Data Options"),fe(),!A&&_.length>1&&l.createElement(ce,null,l.createElement(se,null,"Data Shown"),_.map(e=>{const t="unique-protein-sequences"===i&&e.label?"Identity ".concat(parseFloat(e.label).toFixed(0),"%"):e.label;return l.createElement(ne,{key:e.label},l.createElement(le,{type:"checkbox",id:e.label,checked:e.visible,onChange:()=>{return t=e.label,void N(e=>e.map(e=>e.label===t?Pe(Pe({},e),{},{visible:!e.visible}):e));var t}}),l.createElement(ae,{htmlFor:e.label},t))})),!A&&l.createElement(ie,null,l.createElement(se,null,"Data Set"),l.createElement(c.A.Check,{type:"radio",id:"view-annual",label:"Annual",name:"view-switch",value:"non-cumulative",checked:"non-cumulative"===P,onChange:()=>$("non-cumulative")}),l.createElement(c.A.Check,{type:"radio",id:"view-cumulative",label:"Cumulative",name:"view-switch",value:"Cumulative",checked:"cumulative"===P,onChange:()=>$("cumulative")}))))))})())))})()))};var Ne=n(3076),Ie=n(8533),Fe=n(3930),Re=n(7704),Le=n(8154),Me=n(2543);function Ue(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,l)}return n}function We(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ue(Object(n),!0).forEach(function(t){He(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ue(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function He(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Ze=e=>e.startsWith("unique-protein-sequences-"),Be=e=>e.map((e,t)=>{var n;return We(We({},e),{},{label:null!==(n=Ae.cJ[t])&&void 0!==n?n:e.label})}),Ye=async function(e,t,n){let l=arguments.length>3&&void 0!==arguments[3]&&arguments[3],a=arguments.length>4?arguments[4]:void 0,r=arguments.length>5?arguments[5]:void 0,o=arguments.length>6?arguments[6]:void 0;const i=(0,Me.cloneDeep)(n.firstDim);n.secondDim&&(0,Le.vw)(n.secondDim,i);const c={return_type:n.returnType,request_options:We({paginate:{rows:0},facets:[i]},n.resultsContentType?{results_content_type:n.resultsContentType}:{})};r("searchRequest",c),r("stats_notes",a);const s=await(async(e,t)=>{const n="".concat(t.searchApiUrl,"/rcsbsearch/v2/query");return fetch(n,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}).then(e=>{if(!e.ok)throw new Error(e.statusText);return e.json()}).catch(e=>{throw console.error("Error:",e),e})})(c,o.config);if(!s)return[[]];if((e=>(e=>e.startsWith("unique-protein-domains-"))(e)||Ze(e))(e))return((e,t,n)=>{var l,a;const r=null!==(l=null==t||null===(a=t.facets)||void 0===a||null===(a=a[0])||void 0===a?void 0:a.buckets)&&void 0!==l?l:[],o=(e=>Ze(e)?{annual:"Number of New Protein Sequences",total:"Total Number of Protein Sequences"}:{annual:"Number of New Domains Growth Annually",total:"Total Number of Unique Domains Available"})(e);let i=0;const c=[],s=[];return r.forEach(t=>{const l=(e=>{const t=String(e).match(/\d{4}-\d{2}-\d{2}/g),n=null==t?void 0:t[t.length-1];return n?n.slice(0,4):String(e).slice(-4)})(t.label),a=((e,t)=>{var n,l,a,r;return Ze(e)?Number(null!==(a=null==t||null===(r=t.facets)||void 0===r||null===(r=r[0])||void 0===r?void 0:r.value)&&void 0!==a?a:0):Number(null!==(n=null==t||null===(l=t.facets)||void 0===l||null===(l=l[0])||void 0===l||null===(l=l.buckets)||void 0===l||null===(l=l[0])||void 0===l?void 0:l.population)&&void 0!==n?n:0)})(e,t),r=a-i;i=a,c.push({label:l,population:r,objectConfig:{objectId:[l,o.annual,r,a],color:n[0%n.length],label:o.annual}}),s.push({label:l,population:a,objectConfig:{objectId:[l,o.total,r,a],color:n[1%n.length],label:o.total}})}),[c,s]})(e,s,t);const d=(0,Re.z)(s);let u=d[0].data;const p={resolution:Z.$Z,"r-free":Z.$Z,"molecular-weight-structure":Z.bl,"molecular-weight-entity":Z.bl,"molecular-weight-small-molecules":Z.$Z,"atom-count":Z.pF,"residue-count":Z.pF,"release-date-distribution":Be},m=p[e]?p[e](u):u;if(p[e]&&(u=m),"distribution-source-organism"===e)return[d.filter(e=>"Source Organism"===e.name).flatMap(e=>e.data.map(t=>We(We({},t),{},{labelPath:e.labelPath,objectConfig:We({},t.objectConfig||{})}))).map((e,n)=>We(We({},e),{},{objectConfig:We(We({},e.objectConfig),{},{color:t[n%t.length],label:e.labelPath.join(", ")})}))];if(l&&u.length>0){let e=0;return[u.map(e=>We(We({},e),{},{objectConfig:We(We({},e.objectConfig),{},{color:t[0%t.length],label:"Annual"})})),u.map(n=>(e+=n.population,We(We({},n),{},{population:e,objectConfig:{objectId:[n.label,e],color:t[1%t.length],label:"Cumulative"}})))]}return n.secondDim?$e(e,n,d.filter(e=>e.name===Ve(n.secondDim)),t,o.config.searchAdvancedUrl,o.currentInput):[u.map(e=>We(We({},e),{},{objectConfig:{objectId:[e.label,e.population],color:t[0%t.length]}}))]},$e=(e,t,n,l,a,r)=>{const o=new Set,i=[],c=new Map;n.forEach(e=>{const t=e.labelPath[0];i.push(t),e.data.forEach(e=>{var n;o.add(e.label.toString()),c.has(t)||c.set(t,new Map),null===(n=c.get(t))||void 0===n||n.set(e.label.toString(),e.population)})});const s=Array.from(o),d=[];return s.forEach((e,t)=>{const n=[];i.forEach(a=>{var r,o;const i=null!==(r=null===(o=c.get(a))||void 0===o?void 0:o.get(e))&&void 0!==r?r:0;i>0&&n.push({label:a,population:i,objectConfig:{objectId:[a,e,i],color:l[t%l.length]}})}),n.length>0&&d.push(n)}),d},Ve=e=>{if("name"in e)return e.name;if(!e.facets||1!==e.facets.length)throw new Error("Multiple facets are not allowed");return Ve(e.facets[0])},Je=(e,t)=>{const n=(0,W.t)().settings,l=(0,H.R)().setProperty,a=n.colorScheme.join("");return(0,Fe.I)({queryKey:[e,t,a],queryFn:()=>(async(e,t,n,l)=>{const a=(e=>{const t=Ae.Tb.getStatisticsChartObject(e);return{stats_notes:null==t?void 0:t.description,query:null==t?void 0:t.query}})(e),r=a.stats_notes,o=a.query;if(!o)throw new Error("Unknown chart key: ".concat(e));return Ye(e,t,o,!1,r,n,l)})(e,n.colorScheme,l,n),enabled:!!e,staleTime:0})};function Ke(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var l,a,r,o,i=[],c=!0,s=!1;try{if(r=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(l=r.call(n)).done)&&(i.push(l.value),i.length!==t);c=!0);}catch(e){s=!0,a=e}finally{try{if(!c&&null!=n.return&&(o=n.return(),Object(o)!==o))return}finally{if(s)throw a}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Ge(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ge(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ge(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,l=Array(t);n<t;n++)l[n]=e[n];return l}const Xe=e=>{e.setFullscreenContent;const t=(0,a.g)().plotname||"",n=t||"",r=Ke(l.useState(Ae._Z),2),o=r[0],i=r[1],c=Ke(l.useState(Ae.gj),2),s=c[0],d=c[1],u=Ke(l.useState(Ae.b4),2),p=u[0],m=u[1],b=n===Ae.pm?{title:"Types of Source Organism",options:Ae.$Z,selectedKey:o,onChange:e=>i(e)}:n===Ae.WD?{title:"Domain Classification Resource",options:Ae.Lw,selectedKey:s,onChange:e=>d(e)}:n===Ae.fA?{title:"Sequence Identity",options:Ae.WE,selectedKey:p,onChange:e=>m(e)}:void 0,f=n===Ae.pm?o:n===Ae.WD?s:n===Ae.fA?p:n,g=Je(f),h=g.data,v=g.isLoading,y=g.error;if(v)return l.createElement(V,null,l.createElement(Ne.A,null));if(y)return l.createElement(V,null,l.createElement(Ie.A,{error:y}));const x=h&&h.length>0?{labels:h[0].map(e=>e.label),datasets:h.map((e,t)=>{var n,l,a,r;const o={};return e.forEach(e=>{o[e.label]=e.population}),{label:null!==(n=null===(l=e[0])||void 0===l||null===(l=l.objectConfig)||void 0===l||null===(l=l.objectId)||void 0===l?void 0:l[1])&&void 0!==n?n:"Dataset ".concat(t+1),data:h[0].map(e=>o[e.label]||0),backgroundColor:(null===(a=e[0])||void 0===a||null===(a=a.objectConfig)||void 0===a?void 0:a.color)||"rgba(0, 0, 0, 0.1)",borderColor:(null===(r=e[0])||void 0===r||null===(r=r.objectConfig)||void 0===r?void 0:r.color)||"rgba(0, 0, 0, 0.1)",borderWidth:1,objectConfig:e.map(e=>e.objectConfig)}})}:null;return l.createElement(V,{key:t},x?l.createElement(l.Fragment,null,l.createElement(_e,{data:x,plotName:f,reportVariantSelector:b})):l.createElement(V,null,l.createElement(Ie.A,{error:new Error("No data available")})))}}}]);
|