@sjcrh/proteinpaint-client 2.181.0 → 2.182.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.
Files changed (980) hide show
  1. package/dist/2dmaf-YHYYSSKR.js +1371 -0
  2. package/dist/AIProjectAdmin-D4AASQBM.js +830 -0
  3. package/dist/AIProjectAdmin-D4AASQBM.js.map +7 -0
  4. package/dist/AppHeader-T4ZLY3VG.js +833 -0
  5. package/dist/BoxPlot-DIU4YXNK.js +1217 -0
  6. package/dist/BoxPlot-DIU4YXNK.js.map +7 -0
  7. package/dist/CorrelationVolcano-EXH4P56S.js +617 -0
  8. package/dist/DE-C5K2TVUQ.js +93 -0
  9. package/dist/DE-C5K2TVUQ.js.map +7 -0
  10. package/dist/DEinput-KVILE7QQ.js +297 -0
  11. package/dist/DEinput-KVILE7QQ.js.map +7 -0
  12. package/dist/DifferentialAnalysis-P6GKHAS5.js +238 -0
  13. package/dist/Disco-IMLXEBPG.js +3235 -0
  14. package/dist/Disco-IMLXEBPG.js.map +7 -0
  15. package/dist/Disco.UI-4A2P5Q55.js +242 -0
  16. package/dist/DmrPlot-6EEEGD32.js +640 -0
  17. package/dist/GB-XFO5I6ND.js +1125 -0
  18. package/dist/HicApp-3LFHOOAR.js +2248 -0
  19. package/dist/NumBinaryEditor-74PY52BP.js +268 -0
  20. package/dist/NumBinaryEditor-74PY52BP.js.map +7 -0
  21. package/dist/NumBinaryEditor.unit.spec-2PYZ7P2R.js +284 -0
  22. package/dist/NumContEditor-BMWALLQM.js +105 -0
  23. package/dist/NumContEditor.unit.spec-ETVLVX6A.js +167 -0
  24. package/dist/NumCustomBinEditor-2XJ6GUWY.js +36 -0
  25. package/dist/NumCustomBinEditor.unit.spec-TZVL553E.js +282 -0
  26. package/dist/NumDiscreteEditor-4LNLKAXT.js +177 -0
  27. package/dist/NumDiscreteEditor-4LNLKAXT.js.map +7 -0
  28. package/dist/NumDiscreteEditor.unit.spec-KQND2XAE.js +200 -0
  29. package/dist/NumRegularBinEditor-OYELFDIB.js +36 -0
  30. package/dist/NumRegularBinEditor.unit.spec-44SALKLH.js +225 -0
  31. package/dist/NumSplineEditor-SENQC4P2.js +190 -0
  32. package/dist/NumSplineEditor-SENQC4P2.js.map +7 -0
  33. package/dist/NumSplineEditor.unit.spec-XKB4XXU4.js +197 -0
  34. package/dist/NumericDensity-GCNWO7YS.js +36 -0
  35. package/dist/NumericDensity.unit.spec-7LWNOUYK.js +219 -0
  36. package/dist/NumericHandler-EMQBI5UI.js +37 -0
  37. package/dist/NumericHandler.unit.spec-TEELPRIM.js +217 -0
  38. package/dist/RunChart2-LJBC5X2H.js +756 -0
  39. package/dist/RunChart2-LJBC5X2H.js.map +7 -0
  40. package/dist/SC-3EB6UYIS.js +682 -0
  41. package/dist/SC-3EB6UYIS.js.map +7 -0
  42. package/dist/Volcano-CPULLVYV.js +1185 -0
  43. package/dist/Volcano-CPULLVYV.js.map +7 -0
  44. package/dist/WSIViewer-2YCT4LCM.js +47974 -0
  45. package/dist/WSIViewer-2YCT4LCM.js.map +7 -0
  46. package/dist/WsiSamplesPlot-B2DM7Z3Q.js +163 -0
  47. package/dist/adSandbox-INF3NNEV.js +36 -0
  48. package/dist/alphaGenome-CO4TQHXN.js +173 -0
  49. package/dist/app-63JU2YIT.js +47 -0
  50. package/dist/app-BL3POUOO.js +35 -0
  51. package/dist/app.js +17 -17
  52. package/dist/bam-SVEJYICC.js +857 -0
  53. package/dist/bam-SVEJYICC.js.map +7 -0
  54. package/dist/barchart-PDUXZAIH.js +45 -0
  55. package/dist/barchart.data-EXENRVMU.js +22 -0
  56. package/dist/barchart.events-MQNQTSWI.js +45 -0
  57. package/dist/barchart.integration.spec-DSO2377T.js +1675 -0
  58. package/dist/bars.renderer-S7A7I6BQ.js +12 -0
  59. package/dist/block-OO2NLGUP.js +6200 -0
  60. package/dist/block-OO2NLGUP.js.map +7 -0
  61. package/dist/block.init-7J5OHYKA.js +36 -0
  62. package/dist/block.mds.expressionrank-643H7PN7.js +357 -0
  63. package/dist/block.mds.geneboxplot-C222ODSL.js +826 -0
  64. package/dist/block.mds.junction-C5DJRUOK.js +1543 -0
  65. package/dist/block.mds.svcnv-4G74JQ7Y.js +6799 -0
  66. package/dist/block.svg-35KUC5R7.js +162 -0
  67. package/dist/block.tk.aicheck-LLWT6K6H.js +281 -0
  68. package/dist/block.tk.ase-PQUKY65E.js +363 -0
  69. package/dist/block.tk.bam-EUEOB7BR.js +1904 -0
  70. package/dist/block.tk.bedgraphdot-XAHUY545.js +382 -0
  71. package/dist/block.tk.bigwig.ui-HEOPNL3T.js +209 -0
  72. package/dist/block.tk.hicstraw-EPH3LEX2.js +821 -0
  73. package/dist/block.tk.junction-MIUDAIAR.js +2362 -0
  74. package/dist/block.tk.junction.textmatrixui-AVFUQBDS.js +197 -0
  75. package/dist/block.tk.ld-ED7YMBQ4.js +97 -0
  76. package/dist/block.tk.menu-3CVIECWQ.js +1027 -0
  77. package/dist/block.tk.pgv-HETJVWXH.js +942 -0
  78. package/dist/brainImaging-K3LHK3DD.js +421 -0
  79. package/dist/chat-BYX5ARUK.js +148 -0
  80. package/dist/chunk-25RP5OSE.js +1426 -0
  81. package/dist/chunk-25RP5OSE.js.map +7 -0
  82. package/dist/chunk-2LULD7RN.js +31 -0
  83. package/dist/chunk-2M6JV7YS.js +261 -0
  84. package/dist/chunk-2M6JV7YS.js.map +7 -0
  85. package/dist/chunk-2TJESM3Z.js +158 -0
  86. package/dist/chunk-2TJESM3Z.js.map +7 -0
  87. package/dist/chunk-2VFYZ3EY.js +102 -0
  88. package/dist/chunk-3CD5ZROA.js +4952 -0
  89. package/dist/chunk-3DCABJHB.js +381 -0
  90. package/dist/chunk-3MMKHYUM.js +95 -0
  91. package/dist/chunk-3PRPMJTG.js +55 -0
  92. package/dist/chunk-4JON7TLI.js +176 -0
  93. package/dist/chunk-4JON7TLI.js.map +7 -0
  94. package/dist/chunk-5JD4D5GD.js +215 -0
  95. package/dist/chunk-5JD4D5GD.js.map +7 -0
  96. package/dist/chunk-5UMPBVA6.js +534 -0
  97. package/dist/chunk-64FGLSIM.js +56 -0
  98. package/dist/chunk-64FGLSIM.js.map +7 -0
  99. package/dist/chunk-6ITDJ5UR.js +261 -0
  100. package/dist/chunk-6ITDJ5UR.js.map +7 -0
  101. package/dist/chunk-6LAE5AVA.js +13624 -0
  102. package/dist/chunk-6VLA5NEW.js +335 -0
  103. package/dist/chunk-6VLA5NEW.js.map +7 -0
  104. package/dist/chunk-7FKIAQ4K.js +17 -0
  105. package/dist/chunk-7FKIAQ4K.js.map +7 -0
  106. package/dist/chunk-7FTDQDVF.js +824 -0
  107. package/dist/chunk-7IEZ2KMW.js +142 -0
  108. package/dist/chunk-7RN3L2BX.js +1788 -0
  109. package/dist/chunk-7RN3L2BX.js.map +7 -0
  110. package/dist/chunk-A5AFIW2T.js +14 -0
  111. package/dist/chunk-A6TQGNDQ.js +421 -0
  112. package/dist/chunk-A6TQGNDQ.js.map +7 -0
  113. package/dist/chunk-AIBODF32.js +2784 -0
  114. package/dist/chunk-AWWW6K2I.js +407 -0
  115. package/dist/chunk-AWWW6K2I.js.map +7 -0
  116. package/dist/chunk-BAY47D5E.js +226 -0
  117. package/dist/chunk-CFHKYLDY.js +26 -0
  118. package/dist/chunk-CJZN7HFL.js +293 -0
  119. package/dist/chunk-CXOF4UGH.js +229 -0
  120. package/dist/chunk-CXOF4UGH.js.map +7 -0
  121. package/dist/chunk-D4QFQQWJ.js +170 -0
  122. package/dist/chunk-DNCSPTOQ.js +446 -0
  123. package/dist/chunk-DQGSCCI3.js +100 -0
  124. package/dist/chunk-EWGMLVC7.js +34 -0
  125. package/dist/chunk-F7PB5HGT.js +148 -0
  126. package/dist/chunk-G7QKLA54.js +92 -0
  127. package/dist/chunk-HWHG63LH.js +148 -0
  128. package/dist/chunk-HWHG63LH.js.map +7 -0
  129. package/dist/chunk-HYZG6OPC.js +467 -0
  130. package/dist/chunk-HYZG6OPC.js.map +7 -0
  131. package/dist/chunk-IBBMKCO7.js +526 -0
  132. package/dist/chunk-IBBMKCO7.js.map +7 -0
  133. package/dist/chunk-IQUYTZOA.js +455 -0
  134. package/dist/chunk-IQUYTZOA.js.map +7 -0
  135. package/dist/chunk-J5RINDKS.js +480 -0
  136. package/dist/chunk-JMPSZMDD.js +52 -0
  137. package/dist/chunk-KQMEJUWI.js +815 -0
  138. package/dist/chunk-KWFEGPZL.js +97 -0
  139. package/dist/chunk-KWFEGPZL.js.map +7 -0
  140. package/dist/chunk-LBXZGYU5.js +368 -0
  141. package/dist/chunk-LBXZGYU5.js.map +7 -0
  142. package/dist/chunk-LRBNYEFI.js +50 -0
  143. package/dist/chunk-LRBNYEFI.js.map +7 -0
  144. package/dist/chunk-LRMV5DNW.js +441 -0
  145. package/dist/chunk-LWNOC7AJ.js +54 -0
  146. package/dist/chunk-MICNOSX7.js +129 -0
  147. package/dist/chunk-MLWNMXAV.js +272 -0
  148. package/dist/chunk-MMBLSLQR.js +158 -0
  149. package/dist/chunk-N3QEGDEZ.js +117 -0
  150. package/dist/chunk-N3QEGDEZ.js.map +7 -0
  151. package/dist/chunk-NV5XWADG.js +1150 -0
  152. package/dist/chunk-NVB7MQLH.js +20649 -0
  153. package/dist/chunk-NVB7MQLH.js.map +7 -0
  154. package/dist/chunk-O3255WPP.js +1087 -0
  155. package/dist/chunk-OSM7YS23.js +276 -0
  156. package/dist/chunk-PEWHCKCH.js +1205 -0
  157. package/dist/chunk-PEWHCKCH.js.map +7 -0
  158. package/dist/chunk-Q7PYFSNU.js +107 -0
  159. package/dist/chunk-QEZPKEWB.js +1159 -0
  160. package/dist/chunk-QEZPKEWB.js.map +7 -0
  161. package/dist/chunk-QMI222IJ.js +386 -0
  162. package/dist/chunk-QRIRWDIW.js +252 -0
  163. package/dist/chunk-SJTOSA7E.js +629 -0
  164. package/dist/chunk-SRYFYAXK.js +615 -0
  165. package/dist/chunk-SSPDNHDW.js +398 -0
  166. package/dist/chunk-SSPDNHDW.js.map +7 -0
  167. package/dist/chunk-SYMOQE3X.js +37 -0
  168. package/dist/chunk-SYMOQE3X.js.map +7 -0
  169. package/dist/chunk-TITA4HJA.js +228 -0
  170. package/dist/chunk-U7ZMIMI5.js +2815 -0
  171. package/dist/chunk-UJU3Q7QJ.js +119 -0
  172. package/dist/chunk-UL2ISTHR.js +2672 -0
  173. package/dist/chunk-VIPMLSZP.js +217 -0
  174. package/dist/chunk-VYIO7T6J.js +82 -0
  175. package/dist/chunk-VYIO7T6J.js.map +7 -0
  176. package/dist/chunk-VZPYIG77.js +1271 -0
  177. package/dist/chunk-VZPYIG77.js.map +7 -0
  178. package/dist/chunk-W345H42C.js +273 -0
  179. package/dist/chunk-W345H42C.js.map +7 -0
  180. package/dist/chunk-WGL6FIUE.js +330 -0
  181. package/dist/chunk-WIYKAKWE.js +302 -0
  182. package/dist/chunk-WJGVQJSX.js +514 -0
  183. package/dist/chunk-WJGVQJSX.js.map +7 -0
  184. package/dist/chunk-WPHOEG56.js +194 -0
  185. package/dist/chunk-WU63AOK2.js +4207 -0
  186. package/dist/chunk-WU63AOK2.js.map +7 -0
  187. package/dist/chunk-XS4QWRS3.js +205 -0
  188. package/dist/chunk-XYFDBYOY.js +1658 -0
  189. package/dist/chunk-XYFDBYOY.js.map +7 -0
  190. package/dist/chunk-YDWRIMCT.js +289 -0
  191. package/dist/chunk-YDWRIMCT.js.map +7 -0
  192. package/dist/chunk-YK5NFMHR.js +269 -0
  193. package/dist/chunk-YK5NFMHR.js.map +7 -0
  194. package/dist/chunk-YSW57QDM.js +6364 -0
  195. package/dist/chunk-YXQNZPCO.js +203 -0
  196. package/dist/chunk-YYYJB53A.js +2370 -0
  197. package/dist/chunk-ZTKQLABY.js +470 -0
  198. package/dist/condition-AM523RDR.js +330 -0
  199. package/dist/controls-HTMH5QBP.js +39 -0
  200. package/dist/controls.config-EEK2RBPI.js +37 -0
  201. package/dist/correlation-HKD67SPS.js +96 -0
  202. package/dist/cuminc-66V55MMN.js +1147 -0
  203. package/dist/cuminc.integration.spec-PNTOPB2L.js +676 -0
  204. package/dist/customdata.inputui-Z4WQDU6I.js +285 -0
  205. package/dist/dataDownload-3ZEI22OK.js +328 -0
  206. package/dist/dataDownload.integration.spec-C3JRC6K5.js +191 -0
  207. package/dist/databrowser.ui-Q365SHBG.js +419 -0
  208. package/dist/dictionary-D4E2VEJT.js +109 -0
  209. package/dist/dictionary-D4E2VEJT.js.map +7 -0
  210. package/dist/dnaMethylation-IFZWWBUG.js +36 -0
  211. package/dist/dnaMethylation.integration.spec-UKV4BSIO.js +165 -0
  212. package/dist/dnaMethylation.integration.spec-UKV4BSIO.js.map +7 -0
  213. package/dist/e2pca-I3QXF7EM.js +348 -0
  214. package/dist/ep-2VCQ36GT.js +1254 -0
  215. package/dist/expclust.gdc.spec-VWIQFY67.js +305 -0
  216. package/dist/facet-CHP3VUWS.js +519 -0
  217. package/dist/geneExpClustering-YDIDEH2O.js +246 -0
  218. package/dist/geneExpression-FA5RJRHZ.js +36 -0
  219. package/dist/geneExpression-X2KXJPND.js +312 -0
  220. package/dist/geneExpression.unit.spec-3LVHYZGG.js +100 -0
  221. package/dist/geneORA-4CAYRKSN.js +276 -0
  222. package/dist/geneVariant-OCOTNUH4.js +39 -0
  223. package/dist/geneVariant-Y4L5W5HF.js +37 -0
  224. package/dist/geneVariant.integration.spec-BOJ5MM5K.js +196 -0
  225. package/dist/genefusion.ui-I6HZOBIV.js +249 -0
  226. package/dist/geneset-GEWKDAAT.js +194 -0
  227. package/dist/genomeBrowser.spec-FDEGH4DY.js +279 -0
  228. package/dist/grin2-K56B6XBZ.js +1031 -0
  229. package/dist/grin2-V6FMM44N.js +1554 -0
  230. package/dist/gsea-UNPPRU2U.js +45 -0
  231. package/dist/hierCluster-DXAWRQNI.js +58 -0
  232. package/dist/hierCluster-SPIQA2M2.js +62 -0
  233. package/dist/hierCluster.config-JW6D3T3Q.js +38 -0
  234. package/dist/hierCluster.integration.spec-5NXZY4LG.js +374 -0
  235. package/dist/hierCluster.interactivity-CPPBXHM7.js +52 -0
  236. package/dist/hierCluster.renderers-A6MEGO2B.js +21 -0
  237. package/dist/imagePlot-QLAHCULW.js +139 -0
  238. package/dist/importPlot-6ITZ6U7G.js +8 -0
  239. package/dist/isoformExpression-7GAUF2QV.js +38 -0
  240. package/dist/isoformExpression.unit.spec-3BVXVVNO.js +206 -0
  241. package/dist/isoformExpression.unit.spec-3BVXVVNO.js.map +7 -0
  242. package/dist/jspdf.es.min-FC3BCETM.js +40 -0
  243. package/dist/launch.adhoc-HFHBAUR6.js +40 -0
  244. package/dist/leftlabel.sample-CWPJUCHR.js +257 -0
  245. package/dist/lollipop-QFRQLEER.js +166 -0
  246. package/dist/maf-OEODBT3Y.js +450 -0
  247. package/dist/maf-OEODBT3Y.js.map +7 -0
  248. package/dist/maftimeline-2DFIF4C4.js +591 -0
  249. package/dist/matrix-3HFB5TUU.js +57 -0
  250. package/dist/matrix-MIXK27AD.js +62 -0
  251. package/dist/matrix.cells-U7AQNEBP.js +28 -0
  252. package/dist/matrix.config-FX5MHX6O.js +39 -0
  253. package/dist/matrix.controls-5K7BB5Z4.js +37 -0
  254. package/dist/matrix.data-EEIY6AO4.js +25 -0
  255. package/dist/matrix.dom-6QL3AJMW.js +11 -0
  256. package/dist/matrix.groups-CUB6UWC5.js +26 -0
  257. package/dist/matrix.integration.spec-ML4T7FRG.js +3070 -0
  258. package/dist/matrix.interactivity-QMPWX63Q.js +40 -0
  259. package/dist/matrix.layout-7SEF6MYI.js +42 -0
  260. package/dist/matrix.legend-42LQGAGX.js +22 -0
  261. package/dist/matrix.renderers-ZF7LLER3.js +36 -0
  262. package/dist/matrix.serieses-4B2WB526.js +21 -0
  263. package/dist/matrix.sort-BJACNR7G.js +27 -0
  264. package/dist/matrix.sort.unit.spec-ZGSM7HDJ.js +470 -0
  265. package/dist/matrix.sorterUi-W6XFYZY2.js +18 -0
  266. package/dist/matrix.sorterUi.unit.spec-V34ZZD7A.js +340 -0
  267. package/dist/mavb-NVQVFU6E.js +730 -0
  268. package/dist/mds.fimo-HOCF6U6K.js +516 -0
  269. package/dist/mds.samplescatterplot-ULD5BK5R.js +1548 -0
  270. package/dist/mds.survivalplot-5US32RQD.js +481 -0
  271. package/dist/oncomatrix-Y3G3MUJJ.js +293 -0
  272. package/dist/oncomatrix-Y3G3MUJJ.js.map +7 -0
  273. package/dist/oncomatrix.spec-MFUJLWEP.js +446 -0
  274. package/dist/plot.2dvaf-F4WZ4YPU.js +375 -0
  275. package/dist/plot.app-YFFLLBU5.js +39 -0
  276. package/dist/plot.barplot-2EJ2MWQD.js +100 -0
  277. package/dist/plot.boxplot-AKZM443E.js +150 -0
  278. package/dist/plot.brainImaging-DR6WJNFZ.js +51 -0
  279. package/dist/plot.disco-LBE5H67U.js +101 -0
  280. package/dist/plot.disco-LBE5H67U.js.map +7 -0
  281. package/dist/plot.dzi-R2MR7HAT.js +33 -0
  282. package/dist/plot.ssgq-C52YIUFY.js +137 -0
  283. package/dist/plot.vaf2cov-FOD3K7BC.js +257 -0
  284. package/dist/plot.wsi-D2TXYERK.js +36 -0
  285. package/dist/polar-2LC35O6K.js +184 -0
  286. package/dist/polar2-QPUOEUJZ.js +226 -0
  287. package/dist/profile.spec-3NCDGHLX.js +78 -0
  288. package/dist/profileBarchart-PPQ3NL4D.js +265 -0
  289. package/dist/profileForms-GS3VVW65.js +438 -0
  290. package/dist/profilePlot-DQWFH5NC.js +52 -0
  291. package/dist/profileRadar-KAKRDC4R.js +261 -0
  292. package/dist/profileRadarFacility-FZP62VPV.js +261 -0
  293. package/dist/profileRadarFacility-FZP62VPV.js.map +7 -0
  294. package/dist/proteinView-LWVWJY54.js +444 -0
  295. package/dist/proteinView-LWVWJY54.js.map +7 -0
  296. package/dist/proteomeAbundance-DE4NVBCN.js +21 -0
  297. package/dist/proteomeAbundance-LTB3QR3G.js +63 -0
  298. package/dist/qualitative-YOFAROVR.js +41 -0
  299. package/dist/regression-PF6IAHJK.js +54 -0
  300. package/dist/regression.inputs-77IUYED3.js +46 -0
  301. package/dist/regression.inputs.term-WWCHU6KF.js +46 -0
  302. package/dist/regression.inputs.values.table-I6GM6MU7.js +43 -0
  303. package/dist/regression.integration.spec-DGEZUURU.js +782 -0
  304. package/dist/regression.integration.spec-DGEZUURU.js.map +7 -0
  305. package/dist/regression.results-6GXNKYUS.js +38 -0
  306. package/dist/regression.spec-MEFQNY34.js +706 -0
  307. package/dist/report-LG3UKZHL.js +220 -0
  308. package/dist/sampleScatter.spec-D3IK7MSA.js +200 -0
  309. package/dist/sampleView-XUI2J5EC.js +46 -0
  310. package/dist/samplelst-A7IHCBAX.js +109 -0
  311. package/dist/samplematrix-VGUU7Q75.js +2196 -0
  312. package/dist/sc-UVKVT2RY.js +84 -0
  313. package/dist/scatter-UILUYOGO.js +800 -0
  314. package/dist/scatter.integration.spec-VPNALPUG.js +1194 -0
  315. package/dist/scatter.integration.spec-VPNALPUG.js.map +7 -0
  316. package/dist/selectGenomeWithTklst-LWKIMZEJ.js +132 -0
  317. package/dist/singleCellCellType-TI52WQQ4.js +36 -0
  318. package/dist/singleCellCellType.unit.spec-R3BTRFRU.js +158 -0
  319. package/dist/singleCellCellType.unit.spec-R3BTRFRU.js.map +7 -0
  320. package/dist/singleCellGeneExpression-I5SAHMGI.js +36 -0
  321. package/dist/singleCellGeneExpression.unit.spec-2JTB5HLY.js +151 -0
  322. package/dist/singleCellGeneExpression.unit.spec-2JTB5HLY.js.map +7 -0
  323. package/dist/singleCellPlot-HRWCHYCI.js +51 -0
  324. package/dist/singlecell-BHPP7KCO.js +1570 -0
  325. package/dist/singlecell-PQNKBKR7.js +84 -0
  326. package/dist/snp-V4YGI7B3.js +36 -0
  327. package/dist/snp.unit.spec-JSUCMGNP.js +174 -0
  328. package/dist/snplocus-3YT5NNCH.js +206 -0
  329. package/dist/spliceevent.a53ss.diagram-QEQJ44YH.js +149 -0
  330. package/dist/spliceevent.exonskip.diagram-HMWVSOJG.js +275 -0
  331. package/dist/spliceevent.noeventdiagram-L5HUCT5A.js +458 -0
  332. package/dist/ssGSEA-Z3XRCBYW.js +36 -0
  333. package/dist/ssGSEA.unit.spec-EUCTV2XJ.js +86 -0
  334. package/dist/summarizeCnvGeneexp-O7O2CFW4.js +161 -0
  335. package/dist/summarizeCnvGeneexp-O7O2CFW4.js.map +7 -0
  336. package/dist/summarizeGeneexpSurvival-DDPH56EI.js +106 -0
  337. package/dist/summarizeGeneexpSurvival-DDPH56EI.js.map +7 -0
  338. package/dist/summarizeMutationCnv-6KJQUJWR.js +162 -0
  339. package/dist/summarizeMutationCnv-6KJQUJWR.js.map +7 -0
  340. package/dist/summarizeMutationDiagnosis-HFFYLQOF.js +38 -0
  341. package/dist/summarizeMutationSurvival-OBK6YILP.js +97 -0
  342. package/dist/summary-W55WWIU2.js +47 -0
  343. package/dist/summary.integration.spec-X2PNAUKW.js +412 -0
  344. package/dist/summaryInput-X547Q6C7.js +218 -0
  345. package/dist/sunburst-KWNGYBRI.js +282 -0
  346. package/dist/sunburst-KWNGYBRI.js.map +7 -0
  347. package/dist/survival-PAJZHZPD.js +56 -0
  348. package/dist/survival-TQPWMOD5.js +44 -0
  349. package/dist/survival.integration.spec-YMQASOMX.js +800 -0
  350. package/dist/survival.integration.spec-YMQASOMX.js.map +7 -0
  351. package/dist/svg2pdf.es.min-CYTPRWNB.js +3157 -0
  352. package/dist/svgraph-Y35C2M3D.js +1385 -0
  353. package/dist/svmr-WGCIR7PE.js +3840 -0
  354. package/dist/table-Q3B2YXEN.js +198 -0
  355. package/dist/termCollection-A6YTSM5I.js +177 -0
  356. package/dist/termCollection-NTFNVQ7D.js +36 -0
  357. package/dist/termCollection.unit.spec-BX54PHKT.js +206 -0
  358. package/dist/tk-OCBZ7YR6.js +44 -0
  359. package/dist/tp.ui-ZT47N2CO.js +1457 -0
  360. package/dist/tvs.dt-BFB253O3.js +37 -0
  361. package/dist/tvs.dtcnv.categorical-ARGAYIDO.js +38 -0
  362. package/dist/tvs.dtcnv.continuous-JCU23ERV.js +70 -0
  363. package/dist/tvs.dtfusion-FV64XLZI.js +38 -0
  364. package/dist/tvs.dtsnvindel-DMOXMEVL.js +38 -0
  365. package/dist/tvs.dtsv-53FSZEPV.js +38 -0
  366. package/dist/tvs.samplelst-MVPL6VXX.js +102 -0
  367. package/dist/tvs.termCollection-UGJXTHTG.js +151 -0
  368. package/dist/violin-ZLUDGSQG.js +44 -0
  369. package/dist/violin.integration.spec-KWOFOFLT.js +1423 -0
  370. package/dist/violin.integration.spec-KWOFOFLT.js.map +7 -0
  371. package/dist/violin.interactivity-ULDOCZWW.js +36 -0
  372. package/dist/violin.renderer-KJAXPMIK.js +38 -0
  373. package/dist/vocabulary-34YUQ4ZQ.js +39 -0
  374. package/package.json +3 -3
  375. package/dist/2dmaf-PFPBHIUI.js +0 -1371
  376. package/dist/AIProjectAdmin-H2GB5ZOX.js +0 -830
  377. package/dist/AIProjectAdmin-H2GB5ZOX.js.map +0 -7
  378. package/dist/AppHeader-FCWML6WH.js +0 -833
  379. package/dist/BoxPlot-QKXGF76K.js +0 -1295
  380. package/dist/BoxPlot-QKXGF76K.js.map +0 -7
  381. package/dist/CorrelationVolcano-ZJ7Q6JBC.js +0 -617
  382. package/dist/DifferentialAnalysis-PWCFCWFY.js +0 -238
  383. package/dist/Disco-IE5JKIF2.js +0 -3199
  384. package/dist/Disco-IE5JKIF2.js.map +0 -7
  385. package/dist/Disco.UI-SR7LSJE3.js +0 -242
  386. package/dist/DmrPlot-UDY7GOSY.js +0 -640
  387. package/dist/GB-GNTOP5C6.js +0 -1125
  388. package/dist/HicApp-FZTJL3OA.js +0 -2248
  389. package/dist/NumBinaryEditor-R5QVG3C4.js +0 -266
  390. package/dist/NumBinaryEditor-R5QVG3C4.js.map +0 -7
  391. package/dist/NumBinaryEditor.unit.spec-BMVRI24W.js +0 -284
  392. package/dist/NumContEditor-6JT5D6IW.js +0 -105
  393. package/dist/NumContEditor.unit.spec-XBQF2SW6.js +0 -167
  394. package/dist/NumCustomBinEditor-MEKEFOQI.js +0 -36
  395. package/dist/NumCustomBinEditor.unit.spec-LEMQJHDT.js +0 -282
  396. package/dist/NumDiscreteEditor-U3N37XRQ.js +0 -170
  397. package/dist/NumDiscreteEditor-U3N37XRQ.js.map +0 -7
  398. package/dist/NumDiscreteEditor.unit.spec-WQM4DLKO.js +0 -200
  399. package/dist/NumRegularBinEditor-HQR5Y6P7.js +0 -36
  400. package/dist/NumRegularBinEditor.unit.spec-FL4IFT7L.js +0 -225
  401. package/dist/NumSplineEditor-OESWMWP5.js +0 -188
  402. package/dist/NumSplineEditor-OESWMWP5.js.map +0 -7
  403. package/dist/NumSplineEditor.unit.spec-HYOXO45B.js +0 -197
  404. package/dist/NumericDensity-GJZ4BBJS.js +0 -36
  405. package/dist/NumericDensity.unit.spec-6LXWAXW7.js +0 -219
  406. package/dist/NumericHandler-LZIMPOHS.js +0 -37
  407. package/dist/NumericHandler.unit.spec-ZSU35AMD.js +0 -217
  408. package/dist/RunChart2-7XV6TIFO.js +0 -756
  409. package/dist/RunChart2-7XV6TIFO.js.map +0 -7
  410. package/dist/SC-E4EYAG26.js +0 -733
  411. package/dist/SC-E4EYAG26.js.map +0 -7
  412. package/dist/Volcano-Z7TJK6PW.js +0 -1187
  413. package/dist/Volcano-Z7TJK6PW.js.map +0 -7
  414. package/dist/WSIViewer-ZH2XABLC.js +0 -47933
  415. package/dist/WSIViewer-ZH2XABLC.js.map +0 -7
  416. package/dist/WsiSamplesPlot-BL47MDHQ.js +0 -163
  417. package/dist/adSandbox-V3NTKVBC.js +0 -36
  418. package/dist/alphaGenome-IQVFCSWQ.js +0 -173
  419. package/dist/app-GJLZ2G2U.js +0 -47
  420. package/dist/app-YSD2U64Q.js +0 -35
  421. package/dist/bam-TRIF3AIQ.js +0 -849
  422. package/dist/bam-TRIF3AIQ.js.map +0 -7
  423. package/dist/barchart-GLLUYTAJ.js +0 -45
  424. package/dist/barchart.data-FRYRGKH3.js +0 -22
  425. package/dist/barchart.events-WODVSHRN.js +0 -45
  426. package/dist/barchart.integration.spec-6POS3V3T.js +0 -1675
  427. package/dist/bars.renderer-T5R3UIBW.js +0 -12
  428. package/dist/block-2QM37YSE.js +0 -6300
  429. package/dist/block-2QM37YSE.js.map +0 -7
  430. package/dist/block.init-7HDLKQVX.js +0 -36
  431. package/dist/block.mds.expressionrank-UIB25S6E.js +0 -357
  432. package/dist/block.mds.geneboxplot-4PQYO3MR.js +0 -826
  433. package/dist/block.mds.junction-DWFYZEC2.js +0 -1543
  434. package/dist/block.mds.svcnv-N3KJJ4GQ.js +0 -6799
  435. package/dist/block.svg-2HBDI7BT.js +0 -162
  436. package/dist/block.tk.aicheck-2M4522IQ.js +0 -281
  437. package/dist/block.tk.ase-URIKF6JD.js +0 -363
  438. package/dist/block.tk.bam-HTDMASHX.js +0 -1904
  439. package/dist/block.tk.bedgraphdot-RVKMSFCQ.js +0 -382
  440. package/dist/block.tk.bigwig.ui-7JPEOIKM.js +0 -209
  441. package/dist/block.tk.hicstraw-72J7UJ2J.js +0 -821
  442. package/dist/block.tk.junction-GGFMBCV5.js +0 -2362
  443. package/dist/block.tk.junction.textmatrixui-44SAYYWE.js +0 -197
  444. package/dist/block.tk.ld-XDKJFEOL.js +0 -97
  445. package/dist/block.tk.menu-46FOTM7H.js +0 -1027
  446. package/dist/block.tk.pgv-ZVONRT4B.js +0 -942
  447. package/dist/brainImaging-CSLO7ODJ.js +0 -421
  448. package/dist/chat-GMD22F3K.js +0 -148
  449. package/dist/chunk-22KWZOCN.js +0 -153
  450. package/dist/chunk-22KWZOCN.js.map +0 -7
  451. package/dist/chunk-2NQ4TM74.js +0 -48
  452. package/dist/chunk-2NQ4TM74.js.map +0 -7
  453. package/dist/chunk-2SRMRC6L.js +0 -421
  454. package/dist/chunk-2SRMRC6L.js.map +0 -7
  455. package/dist/chunk-2TIYJ3PH.js +0 -815
  456. package/dist/chunk-2UWHV2SB.js +0 -261
  457. package/dist/chunk-2UWHV2SB.js.map +0 -7
  458. package/dist/chunk-3656ZY4T.js +0 -237
  459. package/dist/chunk-3656ZY4T.js.map +0 -7
  460. package/dist/chunk-3TU6TRLQ.js +0 -98
  461. package/dist/chunk-3TU6TRLQ.js.map +0 -7
  462. package/dist/chunk-4FJ5GS6P.js +0 -4202
  463. package/dist/chunk-4FJ5GS6P.js.map +0 -7
  464. package/dist/chunk-4FO7KZY2.js +0 -534
  465. package/dist/chunk-4OEOQX4L.js +0 -334
  466. package/dist/chunk-4OEOQX4L.js.map +0 -7
  467. package/dist/chunk-5ZICCKEH.js +0 -4952
  468. package/dist/chunk-6UU7VPDO.js +0 -272
  469. package/dist/chunk-6YLQN7FF.js +0 -441
  470. package/dist/chunk-74QJDBIP.js +0 -480
  471. package/dist/chunk-75EBDB7G.js +0 -21
  472. package/dist/chunk-75EBDB7G.js.map +0 -7
  473. package/dist/chunk-7FXPMQRW.js +0 -34
  474. package/dist/chunk-A2Y3GEUH.js +0 -228
  475. package/dist/chunk-AAEXTQT3.js +0 -330
  476. package/dist/chunk-AG6HVFQY.js +0 -504
  477. package/dist/chunk-AG6HVFQY.js.map +0 -7
  478. package/dist/chunk-AHLUW2BN.js +0 -129
  479. package/dist/chunk-AYDXOUFX.js +0 -1275
  480. package/dist/chunk-AYDXOUFX.js.map +0 -7
  481. package/dist/chunk-BBIPZ2UF.js +0 -52
  482. package/dist/chunk-BBVOZ5BY.js +0 -230
  483. package/dist/chunk-BBVOZ5BY.js.map +0 -7
  484. package/dist/chunk-BHVDOW3W.js +0 -470
  485. package/dist/chunk-BNN32RI2.js +0 -36
  486. package/dist/chunk-BNN32RI2.js.map +0 -7
  487. package/dist/chunk-BQLC6QOH.js +0 -368
  488. package/dist/chunk-BQLC6QOH.js.map +0 -7
  489. package/dist/chunk-C5QOWZK6.js +0 -629
  490. package/dist/chunk-CJJ6LDZM.js +0 -170
  491. package/dist/chunk-CJJ6LDZM.js.map +0 -7
  492. package/dist/chunk-D4U5X2QQ.js +0 -261
  493. package/dist/chunk-D4U5X2QQ.js.map +0 -7
  494. package/dist/chunk-DV444SFD.js +0 -26
  495. package/dist/chunk-DWWAB4YQ.js +0 -102
  496. package/dist/chunk-FP5VKE3Z.js +0 -170
  497. package/dist/chunk-G2MAZI6I.js +0 -205
  498. package/dist/chunk-HLRNIO5K.js +0 -158
  499. package/dist/chunk-HTHH2B6D.js +0 -46
  500. package/dist/chunk-HTHH2B6D.js.map +0 -7
  501. package/dist/chunk-I7X6K4OL.js +0 -217
  502. package/dist/chunk-IC7SUXJD.js +0 -82
  503. package/dist/chunk-IC7SUXJD.js.map +0 -7
  504. package/dist/chunk-ITYEOGLB.js +0 -302
  505. package/dist/chunk-J6XKDYNZ.js +0 -276
  506. package/dist/chunk-JDX4E7ZO.js +0 -381
  507. package/dist/chunk-JWX7GYHP.js +0 -95
  508. package/dist/chunk-KISFQDQE.js +0 -258
  509. package/dist/chunk-KISFQDQE.js.map +0 -7
  510. package/dist/chunk-KLFROH3F.js +0 -203
  511. package/dist/chunk-KQSN7PUK.js +0 -215
  512. package/dist/chunk-KQSN7PUK.js.map +0 -7
  513. package/dist/chunk-L2ED35QZ.js +0 -2815
  514. package/dist/chunk-LLPFFNLV.js +0 -526
  515. package/dist/chunk-LLPFFNLV.js.map +0 -7
  516. package/dist/chunk-LRV4VWRF.js +0 -94
  517. package/dist/chunk-LRV4VWRF.js.map +0 -7
  518. package/dist/chunk-M464GTNI.js +0 -615
  519. package/dist/chunk-MDN3K2BG.js +0 -229
  520. package/dist/chunk-MDN3K2BG.js.map +0 -7
  521. package/dist/chunk-N46WTUX7.js +0 -286
  522. package/dist/chunk-N46WTUX7.js.map +0 -7
  523. package/dist/chunk-NBMJ2UMA.js +0 -194
  524. package/dist/chunk-NI7VSKJI.js +0 -293
  525. package/dist/chunk-NTVM4ZPG.js +0 -2784
  526. package/dist/chunk-O64UTRAC.js +0 -252
  527. package/dist/chunk-OM326NV3.js +0 -100
  528. package/dist/chunk-P4ENJUBN.js +0 -386
  529. package/dist/chunk-PEKVBCIH.js +0 -824
  530. package/dist/chunk-PF6MKI4X.js +0 -92
  531. package/dist/chunk-PJTQP6RL.js +0 -54
  532. package/dist/chunk-PVSRVJBE.js +0 -1201
  533. package/dist/chunk-PVSRVJBE.js.map +0 -7
  534. package/dist/chunk-PZ3L3KM6.js +0 -55
  535. package/dist/chunk-QEHUEG4X.js +0 -1788
  536. package/dist/chunk-QEHUEG4X.js.map +0 -7
  537. package/dist/chunk-QXCVG66S.js +0 -2672
  538. package/dist/chunk-RIGZHHCP.js +0 -119
  539. package/dist/chunk-SEIANPCX.js +0 -142
  540. package/dist/chunk-SK7YVOQN.js +0 -148
  541. package/dist/chunk-SPPZB5ZQ.js +0 -158
  542. package/dist/chunk-SPPZB5ZQ.js.map +0 -7
  543. package/dist/chunk-T5KFRIP4.js +0 -1087
  544. package/dist/chunk-TTSNECVD.js +0 -1413
  545. package/dist/chunk-TTSNECVD.js.map +0 -7
  546. package/dist/chunk-TVXESYIR.js +0 -439
  547. package/dist/chunk-TVXESYIR.js.map +0 -7
  548. package/dist/chunk-U3UR3U3F.js +0 -446
  549. package/dist/chunk-UBS5UVIY.js +0 -13624
  550. package/dist/chunk-UFYU7AKL.js +0 -107
  551. package/dist/chunk-VIYGTRUZ.js +0 -6364
  552. package/dist/chunk-WCTH7CB3.js +0 -31
  553. package/dist/chunk-WGSWVYHY.js +0 -1155
  554. package/dist/chunk-WGSWVYHY.js.map +0 -7
  555. package/dist/chunk-WYZ4COTF.js +0 -226
  556. package/dist/chunk-WZRXJ5LL.js +0 -2370
  557. package/dist/chunk-XDI4UFCZ.js +0 -467
  558. package/dist/chunk-XDI4UFCZ.js.map +0 -7
  559. package/dist/chunk-XZZLEHWC.js +0 -20328
  560. package/dist/chunk-XZZLEHWC.js.map +0 -7
  561. package/dist/chunk-Y7JAPSMG.js +0 -406
  562. package/dist/chunk-Y7JAPSMG.js.map +0 -7
  563. package/dist/chunk-YJ2HC4CP.js +0 -1150
  564. package/dist/chunk-ZLH4PJKX.js +0 -1658
  565. package/dist/chunk-ZLH4PJKX.js.map +0 -7
  566. package/dist/chunk-ZZSDYKD5.js +0 -14
  567. package/dist/condition-S52W57ZO.js +0 -330
  568. package/dist/controls-B4MTTPWO.js +0 -39
  569. package/dist/controls.config-6KBCTIPN.js +0 -37
  570. package/dist/correlation-VSBCBFFP.js +0 -96
  571. package/dist/cuminc-T5ZPAGVB.js +0 -1147
  572. package/dist/cuminc.integration.spec-2QT3IPHU.js +0 -676
  573. package/dist/customdata.inputui-5MHQQHJL.js +0 -285
  574. package/dist/dataDownload-S4EBNHMW.js +0 -328
  575. package/dist/dataDownload.integration.spec-OVSIWI34.js +0 -191
  576. package/dist/databrowser.ui-EAJS3NXV.js +0 -419
  577. package/dist/dictionary-CQHSMVYF.js +0 -98
  578. package/dist/dictionary-CQHSMVYF.js.map +0 -7
  579. package/dist/dnaMethylation-G3F2INDH.js +0 -36
  580. package/dist/dnaMethylation.integration.spec-FWF4353K.js +0 -179
  581. package/dist/dnaMethylation.integration.spec-FWF4353K.js.map +0 -7
  582. package/dist/e2pca-SLXGPVHP.js +0 -348
  583. package/dist/ep-4HGUSDGJ.js +0 -1254
  584. package/dist/expclust.gdc.spec-JJ42ESKE.js +0 -305
  585. package/dist/facet-6WVTVKDV.js +0 -519
  586. package/dist/geneExpClustering-5LOZPD5X.js +0 -246
  587. package/dist/geneExpression-BJ46UGXW.js +0 -312
  588. package/dist/geneExpression-PTSZWKCM.js +0 -36
  589. package/dist/geneExpression.unit.spec-NW5HTO7F.js +0 -100
  590. package/dist/geneORA-H65EZ7QO.js +0 -276
  591. package/dist/geneVariant-T6GWOVZD.js +0 -39
  592. package/dist/geneVariant-WTDFZTXG.js +0 -37
  593. package/dist/geneVariant.integration.spec-OPSBRUM3.js +0 -196
  594. package/dist/genefusion.ui-RSBCC37C.js +0 -249
  595. package/dist/geneset-B67PAZVL.js +0 -194
  596. package/dist/genomeBrowser.spec-AUTULF4C.js +0 -279
  597. package/dist/grin2-CMBP7XVH.js +0 -1031
  598. package/dist/grin2-JVCNH3KW.js +0 -1554
  599. package/dist/gsea-H774WVPQ.js +0 -45
  600. package/dist/hierCluster-IQTXQUMI.js +0 -58
  601. package/dist/hierCluster-ZQJDXYBD.js +0 -62
  602. package/dist/hierCluster.config-ZHJTZK5L.js +0 -38
  603. package/dist/hierCluster.integration.spec-MSJ5GHHK.js +0 -374
  604. package/dist/hierCluster.interactivity-H2GNO6AA.js +0 -52
  605. package/dist/hierCluster.renderers-2TE6HMK2.js +0 -21
  606. package/dist/imagePlot-FMNMB7JZ.js +0 -139
  607. package/dist/importPlot-N66G43XX.js +0 -8
  608. package/dist/isoformExpression-B64WLO3H.js +0 -38
  609. package/dist/isoformExpression.unit.spec-D2R6CRKO.js +0 -126
  610. package/dist/isoformExpression.unit.spec-D2R6CRKO.js.map +0 -7
  611. package/dist/jspdf.es.min-DO4YWL2R.js +0 -40
  612. package/dist/launch.adhoc-MPRAJ3GN.js +0 -40
  613. package/dist/leftlabel.sample-4JCKYXED.js +0 -257
  614. package/dist/lollipop-25ADHT7O.js +0 -166
  615. package/dist/maf-POYTGXT4.js +0 -442
  616. package/dist/maf-POYTGXT4.js.map +0 -7
  617. package/dist/maftimeline-FOQF6O3X.js +0 -591
  618. package/dist/matrix-LHLAYDTQ.js +0 -57
  619. package/dist/matrix-ZKF7NRAD.js +0 -62
  620. package/dist/matrix.cells-H4TS74FJ.js +0 -28
  621. package/dist/matrix.config-HE7QUDER.js +0 -39
  622. package/dist/matrix.controls-VILCLNSC.js +0 -37
  623. package/dist/matrix.data-2OUWYD35.js +0 -25
  624. package/dist/matrix.dom-IZFFS4RQ.js +0 -11
  625. package/dist/matrix.groups-5BGJIOOJ.js +0 -26
  626. package/dist/matrix.integration.spec-DSXZHAEY.js +0 -3070
  627. package/dist/matrix.interactivity-VK3NWX5M.js +0 -40
  628. package/dist/matrix.layout-PUNMMNCC.js +0 -42
  629. package/dist/matrix.legend-QMERGVYU.js +0 -22
  630. package/dist/matrix.renderers-2KQ2NXSQ.js +0 -36
  631. package/dist/matrix.serieses-24G3XPJD.js +0 -21
  632. package/dist/matrix.sort-HTVT4K7C.js +0 -27
  633. package/dist/matrix.sort.unit.spec-EUVL76NB.js +0 -470
  634. package/dist/matrix.sorterUi-PJPFXWOJ.js +0 -18
  635. package/dist/matrix.sorterUi.unit.spec-QWL5Y4DQ.js +0 -340
  636. package/dist/mavb-UGM5SHEF.js +0 -730
  637. package/dist/mds.fimo-64US7RTE.js +0 -516
  638. package/dist/mds.samplescatterplot-JMXLXVIE.js +0 -1548
  639. package/dist/mds.survivalplot-RJ5UD3IU.js +0 -481
  640. package/dist/oncomatrix-ZFT3DRAP.js +0 -293
  641. package/dist/oncomatrix-ZFT3DRAP.js.map +0 -7
  642. package/dist/oncomatrix.spec-4YLKDGFE.js +0 -446
  643. package/dist/plot.2dvaf-DYSU6BBN.js +0 -375
  644. package/dist/plot.app-NFBVLAXZ.js +0 -39
  645. package/dist/plot.barplot-DBGTDK7J.js +0 -100
  646. package/dist/plot.boxplot-MCKZUROP.js +0 -150
  647. package/dist/plot.brainImaging-BBAVUEB4.js +0 -51
  648. package/dist/plot.disco-VGOEQYRL.js +0 -101
  649. package/dist/plot.disco-VGOEQYRL.js.map +0 -7
  650. package/dist/plot.dzi-YQIFOTZQ.js +0 -33
  651. package/dist/plot.ssgq-MU3BRTMC.js +0 -137
  652. package/dist/plot.vaf2cov-KDHZ7JXJ.js +0 -257
  653. package/dist/plot.wsi-G2TUGQF7.js +0 -36
  654. package/dist/polar-RCCZXZIU.js +0 -184
  655. package/dist/polar2-COQ3WIGW.js +0 -226
  656. package/dist/profile.spec-A4ZASR2T.js +0 -78
  657. package/dist/profileBarchart-GB4RK5DF.js +0 -265
  658. package/dist/profileForms-O5KBHRF6.js +0 -438
  659. package/dist/profilePlot-COCLCP5B.js +0 -52
  660. package/dist/profileRadar-4EE3YDOH.js +0 -261
  661. package/dist/profileRadarFacility-JYTSGA5H.js +0 -261
  662. package/dist/profileRadarFacility-JYTSGA5H.js.map +0 -7
  663. package/dist/proteomeAbundance-JBVXUSD6.js +0 -19
  664. package/dist/proteomeAbundance-NQVU4DOW.js +0 -63
  665. package/dist/qualitative-QROOPDSI.js +0 -41
  666. package/dist/regression-7FQZ22OO.js +0 -54
  667. package/dist/regression.inputs-F62CES3A.js +0 -46
  668. package/dist/regression.inputs.term-BCGP7PX4.js +0 -46
  669. package/dist/regression.inputs.values.table-D3ZXZSH7.js +0 -43
  670. package/dist/regression.integration.spec-P2BBTT2O.js +0 -784
  671. package/dist/regression.integration.spec-P2BBTT2O.js.map +0 -7
  672. package/dist/regression.results-JX6RJQQP.js +0 -38
  673. package/dist/regression.spec-ROME7T33.js +0 -706
  674. package/dist/report-B6MM4T6B.js +0 -220
  675. package/dist/sampleScatter.spec-EPCMC3SR.js +0 -200
  676. package/dist/sampleView-77EAJ75T.js +0 -46
  677. package/dist/samplelst-CX4NQWA7.js +0 -109
  678. package/dist/samplematrix-PYQFAH64.js +0 -2196
  679. package/dist/sc-X6SI5VVI.js +0 -84
  680. package/dist/scatter-ZFFHAI4F.js +0 -800
  681. package/dist/scatter.integration.spec-NN43OXRN.js +0 -1194
  682. package/dist/scatter.integration.spec-NN43OXRN.js.map +0 -7
  683. package/dist/selectGenomeWithTklst-CZMVTBMD.js +0 -132
  684. package/dist/singleCellCellType-GOBX7JKV.js +0 -36
  685. package/dist/singleCellCellType.unit.spec-F344QMTQ.js +0 -177
  686. package/dist/singleCellCellType.unit.spec-F344QMTQ.js.map +0 -7
  687. package/dist/singleCellGeneExpression-BLMNMEAI.js +0 -36
  688. package/dist/singleCellGeneExpression.unit.spec-6ZEPUFWC.js +0 -163
  689. package/dist/singleCellGeneExpression.unit.spec-6ZEPUFWC.js.map +0 -7
  690. package/dist/singleCellPlot-HLD7PLQH.js +0 -51
  691. package/dist/singlecell-HL4GLGIA.js +0 -1570
  692. package/dist/singlecell-JQFPINRS.js +0 -84
  693. package/dist/snp-EAUNFDAV.js +0 -36
  694. package/dist/snp.unit.spec-AVLPMAWI.js +0 -174
  695. package/dist/snplocus-2J7OA6OL.js +0 -206
  696. package/dist/spliceevent.a53ss.diagram-4DU2U7NW.js +0 -149
  697. package/dist/spliceevent.exonskip.diagram-GG5FGXOK.js +0 -275
  698. package/dist/spliceevent.noeventdiagram-T6RNIMCM.js +0 -458
  699. package/dist/ssGSEA-XJWLRVFQ.js +0 -36
  700. package/dist/ssGSEA.unit.spec-MQ23ODYO.js +0 -86
  701. package/dist/summarizeCnvGeneexp-CJPC76RM.js +0 -158
  702. package/dist/summarizeCnvGeneexp-CJPC76RM.js.map +0 -7
  703. package/dist/summarizeGeneexpSurvival-FGCFZTVG.js +0 -105
  704. package/dist/summarizeGeneexpSurvival-FGCFZTVG.js.map +0 -7
  705. package/dist/summarizeMutationCnv-4E7R2NHQ.js +0 -159
  706. package/dist/summarizeMutationCnv-4E7R2NHQ.js.map +0 -7
  707. package/dist/summarizeMutationDiagnosis-ZVX7AZK7.js +0 -38
  708. package/dist/summarizeMutationSurvival-EWXD7TCT.js +0 -97
  709. package/dist/summary-VUYBKQOC.js +0 -47
  710. package/dist/summary.integration.spec-EPBV5XCT.js +0 -412
  711. package/dist/summaryInput-YX5IRGWM.js +0 -218
  712. package/dist/sunburst-HPDML45I.js +0 -282
  713. package/dist/sunburst-HPDML45I.js.map +0 -7
  714. package/dist/survival-E6SRRXBB.js +0 -44
  715. package/dist/survival-XOXDPXZR.js +0 -56
  716. package/dist/survival.integration.spec-SJBPJZGJ.js +0 -787
  717. package/dist/survival.integration.spec-SJBPJZGJ.js.map +0 -7
  718. package/dist/svg2pdf.es.min-EZ4UYRSH.js +0 -3157
  719. package/dist/svgraph-D23WG3UE.js +0 -1385
  720. package/dist/svmr-UFC4TKWV.js +0 -3840
  721. package/dist/table-US2K6IYZ.js +0 -198
  722. package/dist/termCollection-E7S57CIN.js +0 -177
  723. package/dist/termCollection-ZMP3VE2G.js +0 -36
  724. package/dist/termCollection.unit.spec-MDWK6XH3.js +0 -206
  725. package/dist/tk-TLQJK6R4.js +0 -44
  726. package/dist/tp.ui-NQEAKWUH.js +0 -1457
  727. package/dist/tvs.dt-U2MINIBH.js +0 -37
  728. package/dist/tvs.dtcnv.categorical-2OOAZJKC.js +0 -38
  729. package/dist/tvs.dtcnv.continuous-5ETKBJ52.js +0 -70
  730. package/dist/tvs.dtfusion-EB4PPR3Y.js +0 -38
  731. package/dist/tvs.dtsnvindel-IRQPTKQF.js +0 -38
  732. package/dist/tvs.dtsv-TOVXZJCR.js +0 -38
  733. package/dist/tvs.samplelst-4SCH543Y.js +0 -102
  734. package/dist/tvs.termCollection-GGN5F6HC.js +0 -151
  735. package/dist/violin-7D7DN74I.js +0 -44
  736. package/dist/violin.integration.spec-KE76AL54.js +0 -1417
  737. package/dist/violin.integration.spec-KE76AL54.js.map +0 -7
  738. package/dist/violin.interactivity-YPJ2H6SQ.js +0 -36
  739. package/dist/violin.renderer-UK7WSA2Z.js +0 -38
  740. package/dist/vocabulary-KLWZ6LRP.js +0 -39
  741. /package/dist/{2dmaf-PFPBHIUI.js.map → 2dmaf-YHYYSSKR.js.map} +0 -0
  742. /package/dist/{AppHeader-FCWML6WH.js.map → AppHeader-T4ZLY3VG.js.map} +0 -0
  743. /package/dist/{CorrelationVolcano-ZJ7Q6JBC.js.map → CorrelationVolcano-EXH4P56S.js.map} +0 -0
  744. /package/dist/{DifferentialAnalysis-PWCFCWFY.js.map → DifferentialAnalysis-P6GKHAS5.js.map} +0 -0
  745. /package/dist/{Disco.UI-SR7LSJE3.js.map → Disco.UI-4A2P5Q55.js.map} +0 -0
  746. /package/dist/{DmrPlot-UDY7GOSY.js.map → DmrPlot-6EEEGD32.js.map} +0 -0
  747. /package/dist/{GB-GNTOP5C6.js.map → GB-XFO5I6ND.js.map} +0 -0
  748. /package/dist/{HicApp-FZTJL3OA.js.map → HicApp-3LFHOOAR.js.map} +0 -0
  749. /package/dist/{NumBinaryEditor.unit.spec-BMVRI24W.js.map → NumBinaryEditor.unit.spec-2PYZ7P2R.js.map} +0 -0
  750. /package/dist/{NumContEditor-6JT5D6IW.js.map → NumContEditor-BMWALLQM.js.map} +0 -0
  751. /package/dist/{NumContEditor.unit.spec-XBQF2SW6.js.map → NumContEditor.unit.spec-ETVLVX6A.js.map} +0 -0
  752. /package/dist/{NumCustomBinEditor-MEKEFOQI.js.map → NumCustomBinEditor-2XJ6GUWY.js.map} +0 -0
  753. /package/dist/{NumCustomBinEditor.unit.spec-LEMQJHDT.js.map → NumCustomBinEditor.unit.spec-TZVL553E.js.map} +0 -0
  754. /package/dist/{NumDiscreteEditor.unit.spec-WQM4DLKO.js.map → NumDiscreteEditor.unit.spec-KQND2XAE.js.map} +0 -0
  755. /package/dist/{NumRegularBinEditor-HQR5Y6P7.js.map → NumRegularBinEditor-OYELFDIB.js.map} +0 -0
  756. /package/dist/{NumRegularBinEditor.unit.spec-FL4IFT7L.js.map → NumRegularBinEditor.unit.spec-44SALKLH.js.map} +0 -0
  757. /package/dist/{NumSplineEditor.unit.spec-HYOXO45B.js.map → NumSplineEditor.unit.spec-XKB4XXU4.js.map} +0 -0
  758. /package/dist/{NumericDensity-GJZ4BBJS.js.map → NumericDensity-GCNWO7YS.js.map} +0 -0
  759. /package/dist/{NumericDensity.unit.spec-6LXWAXW7.js.map → NumericDensity.unit.spec-7LWNOUYK.js.map} +0 -0
  760. /package/dist/{NumericHandler-LZIMPOHS.js.map → NumericHandler-EMQBI5UI.js.map} +0 -0
  761. /package/dist/{NumericHandler.unit.spec-ZSU35AMD.js.map → NumericHandler.unit.spec-TEELPRIM.js.map} +0 -0
  762. /package/dist/{WsiSamplesPlot-BL47MDHQ.js.map → WsiSamplesPlot-B2DM7Z3Q.js.map} +0 -0
  763. /package/dist/{adSandbox-V3NTKVBC.js.map → adSandbox-INF3NNEV.js.map} +0 -0
  764. /package/dist/{alphaGenome-IQVFCSWQ.js.map → alphaGenome-CO4TQHXN.js.map} +0 -0
  765. /package/dist/{app-GJLZ2G2U.js.map → app-63JU2YIT.js.map} +0 -0
  766. /package/dist/{app-YSD2U64Q.js.map → app-BL3POUOO.js.map} +0 -0
  767. /package/dist/{barchart-GLLUYTAJ.js.map → barchart-PDUXZAIH.js.map} +0 -0
  768. /package/dist/{barchart.data-FRYRGKH3.js.map → barchart.data-EXENRVMU.js.map} +0 -0
  769. /package/dist/{barchart.events-WODVSHRN.js.map → barchart.events-MQNQTSWI.js.map} +0 -0
  770. /package/dist/{barchart.integration.spec-6POS3V3T.js.map → barchart.integration.spec-DSO2377T.js.map} +0 -0
  771. /package/dist/{bars.renderer-T5R3UIBW.js.map → bars.renderer-S7A7I6BQ.js.map} +0 -0
  772. /package/dist/{block.init-7HDLKQVX.js.map → block.init-7J5OHYKA.js.map} +0 -0
  773. /package/dist/{block.mds.expressionrank-UIB25S6E.js.map → block.mds.expressionrank-643H7PN7.js.map} +0 -0
  774. /package/dist/{block.mds.geneboxplot-4PQYO3MR.js.map → block.mds.geneboxplot-C222ODSL.js.map} +0 -0
  775. /package/dist/{block.mds.junction-DWFYZEC2.js.map → block.mds.junction-C5DJRUOK.js.map} +0 -0
  776. /package/dist/{block.mds.svcnv-N3KJJ4GQ.js.map → block.mds.svcnv-4G74JQ7Y.js.map} +0 -0
  777. /package/dist/{block.svg-2HBDI7BT.js.map → block.svg-35KUC5R7.js.map} +0 -0
  778. /package/dist/{block.tk.aicheck-2M4522IQ.js.map → block.tk.aicheck-LLWT6K6H.js.map} +0 -0
  779. /package/dist/{block.tk.ase-URIKF6JD.js.map → block.tk.ase-PQUKY65E.js.map} +0 -0
  780. /package/dist/{block.tk.bam-HTDMASHX.js.map → block.tk.bam-EUEOB7BR.js.map} +0 -0
  781. /package/dist/{block.tk.bedgraphdot-RVKMSFCQ.js.map → block.tk.bedgraphdot-XAHUY545.js.map} +0 -0
  782. /package/dist/{block.tk.bigwig.ui-7JPEOIKM.js.map → block.tk.bigwig.ui-HEOPNL3T.js.map} +0 -0
  783. /package/dist/{block.tk.hicstraw-72J7UJ2J.js.map → block.tk.hicstraw-EPH3LEX2.js.map} +0 -0
  784. /package/dist/{block.tk.junction-GGFMBCV5.js.map → block.tk.junction-MIUDAIAR.js.map} +0 -0
  785. /package/dist/{block.tk.junction.textmatrixui-44SAYYWE.js.map → block.tk.junction.textmatrixui-AVFUQBDS.js.map} +0 -0
  786. /package/dist/{block.tk.ld-XDKJFEOL.js.map → block.tk.ld-ED7YMBQ4.js.map} +0 -0
  787. /package/dist/{block.tk.menu-46FOTM7H.js.map → block.tk.menu-3CVIECWQ.js.map} +0 -0
  788. /package/dist/{block.tk.pgv-ZVONRT4B.js.map → block.tk.pgv-HETJVWXH.js.map} +0 -0
  789. /package/dist/{brainImaging-CSLO7ODJ.js.map → brainImaging-K3LHK3DD.js.map} +0 -0
  790. /package/dist/{chat-GMD22F3K.js.map → chat-BYX5ARUK.js.map} +0 -0
  791. /package/dist/{chunk-WCTH7CB3.js.map → chunk-2LULD7RN.js.map} +0 -0
  792. /package/dist/{chunk-DWWAB4YQ.js.map → chunk-2VFYZ3EY.js.map} +0 -0
  793. /package/dist/{chunk-5ZICCKEH.js.map → chunk-3CD5ZROA.js.map} +0 -0
  794. /package/dist/{chunk-JDX4E7ZO.js.map → chunk-3DCABJHB.js.map} +0 -0
  795. /package/dist/{chunk-JWX7GYHP.js.map → chunk-3MMKHYUM.js.map} +0 -0
  796. /package/dist/{chunk-PZ3L3KM6.js.map → chunk-3PRPMJTG.js.map} +0 -0
  797. /package/dist/{chunk-4FO7KZY2.js.map → chunk-5UMPBVA6.js.map} +0 -0
  798. /package/dist/{chunk-UBS5UVIY.js.map → chunk-6LAE5AVA.js.map} +0 -0
  799. /package/dist/{chunk-PEKVBCIH.js.map → chunk-7FTDQDVF.js.map} +0 -0
  800. /package/dist/{chunk-SEIANPCX.js.map → chunk-7IEZ2KMW.js.map} +0 -0
  801. /package/dist/{chunk-ZZSDYKD5.js.map → chunk-A5AFIW2T.js.map} +0 -0
  802. /package/dist/{chunk-NTVM4ZPG.js.map → chunk-AIBODF32.js.map} +0 -0
  803. /package/dist/{chunk-WYZ4COTF.js.map → chunk-BAY47D5E.js.map} +0 -0
  804. /package/dist/{chunk-DV444SFD.js.map → chunk-CFHKYLDY.js.map} +0 -0
  805. /package/dist/{chunk-NI7VSKJI.js.map → chunk-CJZN7HFL.js.map} +0 -0
  806. /package/dist/{chunk-FP5VKE3Z.js.map → chunk-D4QFQQWJ.js.map} +0 -0
  807. /package/dist/{chunk-U3UR3U3F.js.map → chunk-DNCSPTOQ.js.map} +0 -0
  808. /package/dist/{chunk-OM326NV3.js.map → chunk-DQGSCCI3.js.map} +0 -0
  809. /package/dist/{chunk-7FXPMQRW.js.map → chunk-EWGMLVC7.js.map} +0 -0
  810. /package/dist/{chunk-SK7YVOQN.js.map → chunk-F7PB5HGT.js.map} +0 -0
  811. /package/dist/{chunk-PF6MKI4X.js.map → chunk-G7QKLA54.js.map} +0 -0
  812. /package/dist/{chunk-74QJDBIP.js.map → chunk-J5RINDKS.js.map} +0 -0
  813. /package/dist/{chunk-BBIPZ2UF.js.map → chunk-JMPSZMDD.js.map} +0 -0
  814. /package/dist/{chunk-2TIYJ3PH.js.map → chunk-KQMEJUWI.js.map} +0 -0
  815. /package/dist/{chunk-6YLQN7FF.js.map → chunk-LRMV5DNW.js.map} +0 -0
  816. /package/dist/{chunk-PJTQP6RL.js.map → chunk-LWNOC7AJ.js.map} +0 -0
  817. /package/dist/{chunk-AHLUW2BN.js.map → chunk-MICNOSX7.js.map} +0 -0
  818. /package/dist/{chunk-6UU7VPDO.js.map → chunk-MLWNMXAV.js.map} +0 -0
  819. /package/dist/{chunk-HLRNIO5K.js.map → chunk-MMBLSLQR.js.map} +0 -0
  820. /package/dist/{chunk-YJ2HC4CP.js.map → chunk-NV5XWADG.js.map} +0 -0
  821. /package/dist/{chunk-T5KFRIP4.js.map → chunk-O3255WPP.js.map} +0 -0
  822. /package/dist/{chunk-J6XKDYNZ.js.map → chunk-OSM7YS23.js.map} +0 -0
  823. /package/dist/{chunk-UFYU7AKL.js.map → chunk-Q7PYFSNU.js.map} +0 -0
  824. /package/dist/{chunk-P4ENJUBN.js.map → chunk-QMI222IJ.js.map} +0 -0
  825. /package/dist/{chunk-O64UTRAC.js.map → chunk-QRIRWDIW.js.map} +0 -0
  826. /package/dist/{chunk-C5QOWZK6.js.map → chunk-SJTOSA7E.js.map} +0 -0
  827. /package/dist/{chunk-M464GTNI.js.map → chunk-SRYFYAXK.js.map} +0 -0
  828. /package/dist/{chunk-A2Y3GEUH.js.map → chunk-TITA4HJA.js.map} +0 -0
  829. /package/dist/{chunk-L2ED35QZ.js.map → chunk-U7ZMIMI5.js.map} +0 -0
  830. /package/dist/{chunk-RIGZHHCP.js.map → chunk-UJU3Q7QJ.js.map} +0 -0
  831. /package/dist/{chunk-QXCVG66S.js.map → chunk-UL2ISTHR.js.map} +0 -0
  832. /package/dist/{chunk-I7X6K4OL.js.map → chunk-VIPMLSZP.js.map} +0 -0
  833. /package/dist/{chunk-AAEXTQT3.js.map → chunk-WGL6FIUE.js.map} +0 -0
  834. /package/dist/{chunk-ITYEOGLB.js.map → chunk-WIYKAKWE.js.map} +0 -0
  835. /package/dist/{chunk-NBMJ2UMA.js.map → chunk-WPHOEG56.js.map} +0 -0
  836. /package/dist/{chunk-G2MAZI6I.js.map → chunk-XS4QWRS3.js.map} +0 -0
  837. /package/dist/{chunk-VIYGTRUZ.js.map → chunk-YSW57QDM.js.map} +0 -0
  838. /package/dist/{chunk-KLFROH3F.js.map → chunk-YXQNZPCO.js.map} +0 -0
  839. /package/dist/{chunk-WZRXJ5LL.js.map → chunk-YYYJB53A.js.map} +0 -0
  840. /package/dist/{chunk-BHVDOW3W.js.map → chunk-ZTKQLABY.js.map} +0 -0
  841. /package/dist/{condition-S52W57ZO.js.map → condition-AM523RDR.js.map} +0 -0
  842. /package/dist/{controls-B4MTTPWO.js.map → controls-HTMH5QBP.js.map} +0 -0
  843. /package/dist/{controls.config-6KBCTIPN.js.map → controls.config-EEK2RBPI.js.map} +0 -0
  844. /package/dist/{correlation-VSBCBFFP.js.map → correlation-HKD67SPS.js.map} +0 -0
  845. /package/dist/{cuminc-T5ZPAGVB.js.map → cuminc-66V55MMN.js.map} +0 -0
  846. /package/dist/{cuminc.integration.spec-2QT3IPHU.js.map → cuminc.integration.spec-PNTOPB2L.js.map} +0 -0
  847. /package/dist/{customdata.inputui-5MHQQHJL.js.map → customdata.inputui-Z4WQDU6I.js.map} +0 -0
  848. /package/dist/{dataDownload-S4EBNHMW.js.map → dataDownload-3ZEI22OK.js.map} +0 -0
  849. /package/dist/{dataDownload.integration.spec-OVSIWI34.js.map → dataDownload.integration.spec-C3JRC6K5.js.map} +0 -0
  850. /package/dist/{databrowser.ui-EAJS3NXV.js.map → databrowser.ui-Q365SHBG.js.map} +0 -0
  851. /package/dist/{dnaMethylation-G3F2INDH.js.map → dnaMethylation-IFZWWBUG.js.map} +0 -0
  852. /package/dist/{e2pca-SLXGPVHP.js.map → e2pca-I3QXF7EM.js.map} +0 -0
  853. /package/dist/{ep-4HGUSDGJ.js.map → ep-2VCQ36GT.js.map} +0 -0
  854. /package/dist/{expclust.gdc.spec-JJ42ESKE.js.map → expclust.gdc.spec-VWIQFY67.js.map} +0 -0
  855. /package/dist/{facet-6WVTVKDV.js.map → facet-CHP3VUWS.js.map} +0 -0
  856. /package/dist/{geneExpClustering-5LOZPD5X.js.map → geneExpClustering-YDIDEH2O.js.map} +0 -0
  857. /package/dist/{geneExpression-PTSZWKCM.js.map → geneExpression-FA5RJRHZ.js.map} +0 -0
  858. /package/dist/{geneExpression-BJ46UGXW.js.map → geneExpression-X2KXJPND.js.map} +0 -0
  859. /package/dist/{geneExpression.unit.spec-NW5HTO7F.js.map → geneExpression.unit.spec-3LVHYZGG.js.map} +0 -0
  860. /package/dist/{geneORA-H65EZ7QO.js.map → geneORA-4CAYRKSN.js.map} +0 -0
  861. /package/dist/{geneVariant-T6GWOVZD.js.map → geneVariant-OCOTNUH4.js.map} +0 -0
  862. /package/dist/{geneVariant-WTDFZTXG.js.map → geneVariant-Y4L5W5HF.js.map} +0 -0
  863. /package/dist/{geneVariant.integration.spec-OPSBRUM3.js.map → geneVariant.integration.spec-BOJ5MM5K.js.map} +0 -0
  864. /package/dist/{genefusion.ui-RSBCC37C.js.map → genefusion.ui-I6HZOBIV.js.map} +0 -0
  865. /package/dist/{geneset-B67PAZVL.js.map → geneset-GEWKDAAT.js.map} +0 -0
  866. /package/dist/{genomeBrowser.spec-AUTULF4C.js.map → genomeBrowser.spec-FDEGH4DY.js.map} +0 -0
  867. /package/dist/{grin2-CMBP7XVH.js.map → grin2-K56B6XBZ.js.map} +0 -0
  868. /package/dist/{grin2-JVCNH3KW.js.map → grin2-V6FMM44N.js.map} +0 -0
  869. /package/dist/{gsea-H774WVPQ.js.map → gsea-UNPPRU2U.js.map} +0 -0
  870. /package/dist/{hierCluster-IQTXQUMI.js.map → hierCluster-DXAWRQNI.js.map} +0 -0
  871. /package/dist/{hierCluster-ZQJDXYBD.js.map → hierCluster-SPIQA2M2.js.map} +0 -0
  872. /package/dist/{hierCluster.config-ZHJTZK5L.js.map → hierCluster.config-JW6D3T3Q.js.map} +0 -0
  873. /package/dist/{hierCluster.integration.spec-MSJ5GHHK.js.map → hierCluster.integration.spec-5NXZY4LG.js.map} +0 -0
  874. /package/dist/{hierCluster.interactivity-H2GNO6AA.js.map → hierCluster.interactivity-CPPBXHM7.js.map} +0 -0
  875. /package/dist/{hierCluster.renderers-2TE6HMK2.js.map → hierCluster.renderers-A6MEGO2B.js.map} +0 -0
  876. /package/dist/{imagePlot-FMNMB7JZ.js.map → imagePlot-QLAHCULW.js.map} +0 -0
  877. /package/dist/{importPlot-N66G43XX.js.map → importPlot-6ITZ6U7G.js.map} +0 -0
  878. /package/dist/{isoformExpression-B64WLO3H.js.map → isoformExpression-7GAUF2QV.js.map} +0 -0
  879. /package/dist/{jspdf.es.min-DO4YWL2R.js.map → jspdf.es.min-FC3BCETM.js.map} +0 -0
  880. /package/dist/{launch.adhoc-MPRAJ3GN.js.map → launch.adhoc-HFHBAUR6.js.map} +0 -0
  881. /package/dist/{leftlabel.sample-4JCKYXED.js.map → leftlabel.sample-CWPJUCHR.js.map} +0 -0
  882. /package/dist/{lollipop-25ADHT7O.js.map → lollipop-QFRQLEER.js.map} +0 -0
  883. /package/dist/{maftimeline-FOQF6O3X.js.map → maftimeline-2DFIF4C4.js.map} +0 -0
  884. /package/dist/{matrix-LHLAYDTQ.js.map → matrix-3HFB5TUU.js.map} +0 -0
  885. /package/dist/{matrix-ZKF7NRAD.js.map → matrix-MIXK27AD.js.map} +0 -0
  886. /package/dist/{matrix.cells-H4TS74FJ.js.map → matrix.cells-U7AQNEBP.js.map} +0 -0
  887. /package/dist/{matrix.config-HE7QUDER.js.map → matrix.config-FX5MHX6O.js.map} +0 -0
  888. /package/dist/{matrix.controls-VILCLNSC.js.map → matrix.controls-5K7BB5Z4.js.map} +0 -0
  889. /package/dist/{matrix.data-2OUWYD35.js.map → matrix.data-EEIY6AO4.js.map} +0 -0
  890. /package/dist/{matrix.dom-IZFFS4RQ.js.map → matrix.dom-6QL3AJMW.js.map} +0 -0
  891. /package/dist/{matrix.groups-5BGJIOOJ.js.map → matrix.groups-CUB6UWC5.js.map} +0 -0
  892. /package/dist/{matrix.integration.spec-DSXZHAEY.js.map → matrix.integration.spec-ML4T7FRG.js.map} +0 -0
  893. /package/dist/{matrix.interactivity-VK3NWX5M.js.map → matrix.interactivity-QMPWX63Q.js.map} +0 -0
  894. /package/dist/{matrix.layout-PUNMMNCC.js.map → matrix.layout-7SEF6MYI.js.map} +0 -0
  895. /package/dist/{matrix.legend-QMERGVYU.js.map → matrix.legend-42LQGAGX.js.map} +0 -0
  896. /package/dist/{matrix.renderers-2KQ2NXSQ.js.map → matrix.renderers-ZF7LLER3.js.map} +0 -0
  897. /package/dist/{matrix.serieses-24G3XPJD.js.map → matrix.serieses-4B2WB526.js.map} +0 -0
  898. /package/dist/{matrix.sort-HTVT4K7C.js.map → matrix.sort-BJACNR7G.js.map} +0 -0
  899. /package/dist/{matrix.sort.unit.spec-EUVL76NB.js.map → matrix.sort.unit.spec-ZGSM7HDJ.js.map} +0 -0
  900. /package/dist/{matrix.sorterUi-PJPFXWOJ.js.map → matrix.sorterUi-W6XFYZY2.js.map} +0 -0
  901. /package/dist/{matrix.sorterUi.unit.spec-QWL5Y4DQ.js.map → matrix.sorterUi.unit.spec-V34ZZD7A.js.map} +0 -0
  902. /package/dist/{mavb-UGM5SHEF.js.map → mavb-NVQVFU6E.js.map} +0 -0
  903. /package/dist/{mds.fimo-64US7RTE.js.map → mds.fimo-HOCF6U6K.js.map} +0 -0
  904. /package/dist/{mds.samplescatterplot-JMXLXVIE.js.map → mds.samplescatterplot-ULD5BK5R.js.map} +0 -0
  905. /package/dist/{mds.survivalplot-RJ5UD3IU.js.map → mds.survivalplot-5US32RQD.js.map} +0 -0
  906. /package/dist/{oncomatrix.spec-4YLKDGFE.js.map → oncomatrix.spec-MFUJLWEP.js.map} +0 -0
  907. /package/dist/{plot.2dvaf-DYSU6BBN.js.map → plot.2dvaf-F4WZ4YPU.js.map} +0 -0
  908. /package/dist/{plot.app-NFBVLAXZ.js.map → plot.app-YFFLLBU5.js.map} +0 -0
  909. /package/dist/{plot.barplot-DBGTDK7J.js.map → plot.barplot-2EJ2MWQD.js.map} +0 -0
  910. /package/dist/{plot.boxplot-MCKZUROP.js.map → plot.boxplot-AKZM443E.js.map} +0 -0
  911. /package/dist/{plot.brainImaging-BBAVUEB4.js.map → plot.brainImaging-DR6WJNFZ.js.map} +0 -0
  912. /package/dist/{plot.dzi-YQIFOTZQ.js.map → plot.dzi-R2MR7HAT.js.map} +0 -0
  913. /package/dist/{plot.ssgq-MU3BRTMC.js.map → plot.ssgq-C52YIUFY.js.map} +0 -0
  914. /package/dist/{plot.vaf2cov-KDHZ7JXJ.js.map → plot.vaf2cov-FOD3K7BC.js.map} +0 -0
  915. /package/dist/{plot.wsi-G2TUGQF7.js.map → plot.wsi-D2TXYERK.js.map} +0 -0
  916. /package/dist/{polar-RCCZXZIU.js.map → polar-2LC35O6K.js.map} +0 -0
  917. /package/dist/{polar2-COQ3WIGW.js.map → polar2-QPUOEUJZ.js.map} +0 -0
  918. /package/dist/{profile.spec-A4ZASR2T.js.map → profile.spec-3NCDGHLX.js.map} +0 -0
  919. /package/dist/{profileBarchart-GB4RK5DF.js.map → profileBarchart-PPQ3NL4D.js.map} +0 -0
  920. /package/dist/{profileForms-O5KBHRF6.js.map → profileForms-GS3VVW65.js.map} +0 -0
  921. /package/dist/{profilePlot-COCLCP5B.js.map → profilePlot-DQWFH5NC.js.map} +0 -0
  922. /package/dist/{profileRadar-4EE3YDOH.js.map → profileRadar-KAKRDC4R.js.map} +0 -0
  923. /package/dist/{proteomeAbundance-JBVXUSD6.js.map → proteomeAbundance-DE4NVBCN.js.map} +0 -0
  924. /package/dist/{proteomeAbundance-NQVU4DOW.js.map → proteomeAbundance-LTB3QR3G.js.map} +0 -0
  925. /package/dist/{qualitative-QROOPDSI.js.map → qualitative-YOFAROVR.js.map} +0 -0
  926. /package/dist/{regression-7FQZ22OO.js.map → regression-PF6IAHJK.js.map} +0 -0
  927. /package/dist/{regression.inputs-F62CES3A.js.map → regression.inputs-77IUYED3.js.map} +0 -0
  928. /package/dist/{regression.inputs.term-BCGP7PX4.js.map → regression.inputs.term-WWCHU6KF.js.map} +0 -0
  929. /package/dist/{regression.inputs.values.table-D3ZXZSH7.js.map → regression.inputs.values.table-I6GM6MU7.js.map} +0 -0
  930. /package/dist/{regression.results-JX6RJQQP.js.map → regression.results-6GXNKYUS.js.map} +0 -0
  931. /package/dist/{regression.spec-ROME7T33.js.map → regression.spec-MEFQNY34.js.map} +0 -0
  932. /package/dist/{report-B6MM4T6B.js.map → report-LG3UKZHL.js.map} +0 -0
  933. /package/dist/{sampleScatter.spec-EPCMC3SR.js.map → sampleScatter.spec-D3IK7MSA.js.map} +0 -0
  934. /package/dist/{sampleView-77EAJ75T.js.map → sampleView-XUI2J5EC.js.map} +0 -0
  935. /package/dist/{samplelst-CX4NQWA7.js.map → samplelst-A7IHCBAX.js.map} +0 -0
  936. /package/dist/{samplematrix-PYQFAH64.js.map → samplematrix-VGUU7Q75.js.map} +0 -0
  937. /package/dist/{sc-X6SI5VVI.js.map → sc-UVKVT2RY.js.map} +0 -0
  938. /package/dist/{scatter-ZFFHAI4F.js.map → scatter-UILUYOGO.js.map} +0 -0
  939. /package/dist/{selectGenomeWithTklst-CZMVTBMD.js.map → selectGenomeWithTklst-LWKIMZEJ.js.map} +0 -0
  940. /package/dist/{singleCellCellType-GOBX7JKV.js.map → singleCellCellType-TI52WQQ4.js.map} +0 -0
  941. /package/dist/{singleCellGeneExpression-BLMNMEAI.js.map → singleCellGeneExpression-I5SAHMGI.js.map} +0 -0
  942. /package/dist/{singleCellPlot-HLD7PLQH.js.map → singleCellPlot-HRWCHYCI.js.map} +0 -0
  943. /package/dist/{singlecell-HL4GLGIA.js.map → singlecell-BHPP7KCO.js.map} +0 -0
  944. /package/dist/{singlecell-JQFPINRS.js.map → singlecell-PQNKBKR7.js.map} +0 -0
  945. /package/dist/{snp-EAUNFDAV.js.map → snp-V4YGI7B3.js.map} +0 -0
  946. /package/dist/{snp.unit.spec-AVLPMAWI.js.map → snp.unit.spec-JSUCMGNP.js.map} +0 -0
  947. /package/dist/{snplocus-2J7OA6OL.js.map → snplocus-3YT5NNCH.js.map} +0 -0
  948. /package/dist/{spliceevent.a53ss.diagram-4DU2U7NW.js.map → spliceevent.a53ss.diagram-QEQJ44YH.js.map} +0 -0
  949. /package/dist/{spliceevent.exonskip.diagram-GG5FGXOK.js.map → spliceevent.exonskip.diagram-HMWVSOJG.js.map} +0 -0
  950. /package/dist/{spliceevent.noeventdiagram-T6RNIMCM.js.map → spliceevent.noeventdiagram-L5HUCT5A.js.map} +0 -0
  951. /package/dist/{ssGSEA-XJWLRVFQ.js.map → ssGSEA-Z3XRCBYW.js.map} +0 -0
  952. /package/dist/{ssGSEA.unit.spec-MQ23ODYO.js.map → ssGSEA.unit.spec-EUCTV2XJ.js.map} +0 -0
  953. /package/dist/{summarizeMutationDiagnosis-ZVX7AZK7.js.map → summarizeMutationDiagnosis-HFFYLQOF.js.map} +0 -0
  954. /package/dist/{summarizeMutationSurvival-EWXD7TCT.js.map → summarizeMutationSurvival-OBK6YILP.js.map} +0 -0
  955. /package/dist/{summary-VUYBKQOC.js.map → summary-W55WWIU2.js.map} +0 -0
  956. /package/dist/{summary.integration.spec-EPBV5XCT.js.map → summary.integration.spec-X2PNAUKW.js.map} +0 -0
  957. /package/dist/{summaryInput-YX5IRGWM.js.map → summaryInput-X547Q6C7.js.map} +0 -0
  958. /package/dist/{survival-XOXDPXZR.js.map → survival-PAJZHZPD.js.map} +0 -0
  959. /package/dist/{survival-E6SRRXBB.js.map → survival-TQPWMOD5.js.map} +0 -0
  960. /package/dist/{svg2pdf.es.min-EZ4UYRSH.js.map → svg2pdf.es.min-CYTPRWNB.js.map} +0 -0
  961. /package/dist/{svgraph-D23WG3UE.js.map → svgraph-Y35C2M3D.js.map} +0 -0
  962. /package/dist/{svmr-UFC4TKWV.js.map → svmr-WGCIR7PE.js.map} +0 -0
  963. /package/dist/{table-US2K6IYZ.js.map → table-Q3B2YXEN.js.map} +0 -0
  964. /package/dist/{termCollection-E7S57CIN.js.map → termCollection-A6YTSM5I.js.map} +0 -0
  965. /package/dist/{termCollection-ZMP3VE2G.js.map → termCollection-NTFNVQ7D.js.map} +0 -0
  966. /package/dist/{termCollection.unit.spec-MDWK6XH3.js.map → termCollection.unit.spec-BX54PHKT.js.map} +0 -0
  967. /package/dist/{tk-TLQJK6R4.js.map → tk-OCBZ7YR6.js.map} +0 -0
  968. /package/dist/{tp.ui-NQEAKWUH.js.map → tp.ui-ZT47N2CO.js.map} +0 -0
  969. /package/dist/{tvs.dt-U2MINIBH.js.map → tvs.dt-BFB253O3.js.map} +0 -0
  970. /package/dist/{tvs.dtcnv.categorical-2OOAZJKC.js.map → tvs.dtcnv.categorical-ARGAYIDO.js.map} +0 -0
  971. /package/dist/{tvs.dtcnv.continuous-5ETKBJ52.js.map → tvs.dtcnv.continuous-JCU23ERV.js.map} +0 -0
  972. /package/dist/{tvs.dtfusion-EB4PPR3Y.js.map → tvs.dtfusion-FV64XLZI.js.map} +0 -0
  973. /package/dist/{tvs.dtsnvindel-IRQPTKQF.js.map → tvs.dtsnvindel-DMOXMEVL.js.map} +0 -0
  974. /package/dist/{tvs.dtsv-TOVXZJCR.js.map → tvs.dtsv-53FSZEPV.js.map} +0 -0
  975. /package/dist/{tvs.samplelst-4SCH543Y.js.map → tvs.samplelst-MVPL6VXX.js.map} +0 -0
  976. /package/dist/{tvs.termCollection-GGN5F6HC.js.map → tvs.termCollection-UGJXTHTG.js.map} +0 -0
  977. /package/dist/{violin-7D7DN74I.js.map → violin-ZLUDGSQG.js.map} +0 -0
  978. /package/dist/{violin.interactivity-YPJ2H6SQ.js.map → violin.interactivity-ULDOCZWW.js.map} +0 -0
  979. /package/dist/{violin.renderer-UK7WSA2Z.js.map → violin.renderer-KJAXPMIK.js.map} +0 -0
  980. /package/dist/{vocabulary-KLWZ6LRP.js.map → vocabulary-34YUQ4ZQ.js.map} +0 -0
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../shared/utils/src/filter.js", "../../shared/utils/src/common.js"],
4
- "sourcesContent": ["function getFilteredSamples(sampleAnno, filter) {\n\tsetDatasetAnnotations(filter)\n\tconst samples = /* @__PURE__ */ new Set()\n\tfor (const anno of sampleAnno) {\n\t\tif (samples.has(anno.sample)) continue\n\t\tconst data = anno.s || anno.data\n\t\tif (data && sample_match_termvaluesetting(data, filter)) {\n\t\t\tsamples.add(anno.sample)\n\t\t}\n\t}\n\treturn samples\n}\nfunction sample_match_termvaluesetting(\n\trow,\n\tfilter,\n\t_term = null,\n\tsample = null\n) {\n\tconst lst = filter.type == \"tvslst\" ? filter.lst : [filter]\n\tlet numberofmatchedterms = 0\n\tfor (const item of lst) {\n\t\tif (\"type\" in item && item.type == \"tvslst\") {\n\t\t\tif (sample_match_termvaluesetting(row, item, _term, sample)) {\n\t\t\t\tnumberofmatchedterms++\n\t\t\t}\n\t\t} else {\n\t\t\tconst itemCopy = JSON.parse(JSON.stringify(item))\n\t\t\tconst t = itemCopy.tvs\n\t\t\tif (_term && t.term) {\n\t\t\t\tif (!(_term.name == t.term.name && _term.type == t.term.type)) {\n\t\t\t\t\tnumberofmatchedterms++\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t}\n\t\t\tlet samplevalue\n\t\t\tif (_term && !t.term) {\n\t\t\t\tif (t.term$type && t.term$type !== _term.type) {\n\t\t\t\t\tnumberofmatchedterms++\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tt.term = _term\n\t\t\t\tsamplevalue =\n\t\t\t\t\ttypeof row === \"object\" && t.term.id in row ? row[t.term.id] : row\n\t\t\t} else if (sample && t.term.$id) {\n\t\t\t\tsamplevalue = sample[t.term.$id].value\n\t\t\t} else {\n\t\t\t\tsamplevalue = t.term.id in row ? row[t.term.id] : row\n\t\t\t}\n\t\t\tsetDatasetAnnotations(itemCopy)\n\t\t\tlet thistermmatch\n\t\t\tif (t.term.type == \"categorical\") {\n\t\t\t\tif (samplevalue === void 0) continue\n\t\t\t\tthistermmatch = t.valueset.has(samplevalue)\n\t\t\t} else if (t.term.type == \"integer\" || t.term.type == \"float\") {\n\t\t\t\tif (samplevalue === void 0) continue\n\t\t\t\tfor (const range of t.ranges) {\n\t\t\t\t\tif (\"value\" in range) {\n\t\t\t\t\t\tthistermmatch = samplevalue === range.value\n\t\t\t\t\t\tif (thistermmatch) break\n\t\t\t\t\t} else if (samplevalue == range.name) {\n\t\t\t\t\t\tthistermmatch = true\n\t\t\t\t\t\tbreak\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (t.term.values) {\n\t\t\t\t\t\t\tconst v = t.term.values[samplevalue.toString()]\n\t\t\t\t\t\t\tif (v && v.uncomputable) {\n\t\t\t\t\t\t\t\tcontinue\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlet left, right\n\t\t\t\t\t\tif (range.startunbounded) {\n\t\t\t\t\t\t\tleft = true\n\t\t\t\t\t\t} else if (\"start\" in range) {\n\t\t\t\t\t\t\tif (range.startinclusive) {\n\t\t\t\t\t\t\t\tleft = samplevalue >= range.start\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tleft = samplevalue > range.start\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (range.stopunbounded) {\n\t\t\t\t\t\t\tright = true\n\t\t\t\t\t\t} else if (\"stop\" in range) {\n\t\t\t\t\t\t\tif (range.stopinclusive) {\n\t\t\t\t\t\t\t\tright = samplevalue <= range.stop\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tright = samplevalue < range.stop\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthistermmatch = left && right\n\t\t\t\t\t}\n\t\t\t\t\tif (thistermmatch) break\n\t\t\t\t}\n\t\t\t} else if (t.term.type == \"condition\") {\n\t\t\t\tconst key = getPrecomputedKey(t)\n\t\t\t\tconst anno = samplevalue && samplevalue[key]\n\t\t\t\tif (anno) {\n\t\t\t\t\tthistermmatch = Array.isArray(anno)\n\t\t\t\t\t\t? t.values.find((d) => anno.includes(d.key))\n\t\t\t\t\t\t: t.values.find((d) => d.key == anno)\n\t\t\t\t}\n\t\t\t} else if (t.term.type == \"geneVariant\") {\n\t\t\t\tconst svalues = samplevalue.values || [samplevalue]\n\t\t\t\tfor (const sv of svalues) {\n\t\t\t\t\tthistermmatch =\n\t\t\t\t\t\tt.values.find(\n\t\t\t\t\t\t\t(v) =>\n\t\t\t\t\t\t\t\tv.dt == sv.dt &&\n\t\t\t\t\t\t\t\t(!v.origin || sv.origin == v.origin) &&\n\t\t\t\t\t\t\t\t(!v.mclasslst || v.mclasslst.includes(sv.class))\n\t\t\t\t\t\t) && true\n\t\t\t\t\tif (thistermmatch) break\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthrow \"unknown term type [sample_match_termvaluesetting() shared/utils/src/filter.ts]\"\n\t\t\t}\n\t\t\tif (t.isnot) {\n\t\t\t\tthistermmatch = !thistermmatch\n\t\t\t}\n\t\t\tif (thistermmatch) numberofmatchedterms++\n\t\t}\n\t\tif (filter.join == \"or\") {\n\t\t\tif (numberofmatchedterms && filter.in) return true\n\t\t\tif (!numberofmatchedterms && !filter.in) return true\n\t\t}\n\t}\n\tif (!(\"in\" in filter)) filter.in = true\n\treturn filter.in == (numberofmatchedterms == lst.length)\n}\nfunction setDatasetAnnotations(item, ds = null) {\n\tif (item.type == \"tvslst\") {\n\t\tfor (const subitem of item.lst) {\n\t\t\tsetDatasetAnnotations(subitem, ds)\n\t\t}\n\t} else {\n\t\tif (ds && typeof ds.setAnnoByTermId == \"function\") {\n\t\t\tds.setAnnoByTermId(item.tvs.term.id)\n\t\t}\n\t\tif (item.tvs.term.type == \"categorical\") {\n\t\t\tconst tvsAny = item.tvs\n\t\t\ttvsAny.valueset = new Set(tvsAny.values.map((i) => i.key))\n\t\t}\n\t}\n}\nfunction getPrecomputedKey(q) {\n\tconst precomputedKey =\n\t\tq.bar_by_children && q.value_by_max_grade\n\t\t\t? \"childrenAtMaxGrade\"\n\t\t\t: q.bar_by_children && q.value_by_most_recent\n\t\t\t? \"childrenAtMostRecent\"\n\t\t\t: q.bar_by_children && q.value_by_computable_grade\n\t\t\t? \"children\"\n\t\t\t: q.bar_by_grade && q.value_by_max_grade\n\t\t\t? \"maxGrade\"\n\t\t\t: q.bar_by_grade && q.value_by_most_recent\n\t\t\t? \"mostRecentGrades\"\n\t\t\t: q.bar_by_grade && q.value_by_computable_grade\n\t\t\t? \"computableGrades\"\n\t\t\t: \"\"\n\tif (!precomputedKey) throw `unknown condition term bar_by_* and/or value_by_*`\n\treturn precomputedKey\n}\nfunction filterJoin(lst) {\n\tif (!lst || lst.length == 0) return\n\tlet f = JSON.parse(JSON.stringify(lst[0]))\n\tif (lst.length == 1) return f\n\tif (f.lst.length < 2) {\n\t\tif (f.join !== \"\")\n\t\t\tthrow 'filter.join must be an empty string \"\" when filter.lst.length < 2'\n\t\tf.join = \"and\"\n\t} else if (f.join == \"or\") {\n\t\tf = {\n\t\t\ttype: \"tvslst\",\n\t\t\tjoin: \"and\",\n\t\t\tin: true,\n\t\t\tlst: [f],\n\t\t}\n\t} else if (f.join != \"and\") {\n\t\tthrow 'filter.join must be either \"and\" or \"or\" when .lst length > 1'\n\t}\n\tfor (let i = 1; i < lst.length; i++) {\n\t\tconst f2 = JSON.parse(JSON.stringify(lst[i]))\n\t\tif (f2.join == \"or\") f.lst.push(f2)\n\t\telse f.lst.push(...f2.lst)\n\t}\n\tif (f.lst.length == 1 && f.lst[0].type == \"tvs\") {\n\t\tf.join = \"\"\n\t}\n\treturn f\n}\nfunction getWrappedTvslst(lst = [], join = \"\", $id = null) {\n\tconst filter = {\n\t\ttype: \"tvslst\",\n\t\tin: true,\n\t\tjoin,\n\t\tlst,\n\t}\n\tif ($id !== null) filter.$id = $id\n\treturn filter\n}\nfunction validateTermCollectionTvs(lst1, lst2) {\n\tif (!Array.isArray(lst1)) throw new Error(\"numerator not array\")\n\tif (!Array.isArray(lst2)) throw new Error(\"denominator not array\")\n\tif (lst1.length == 0) throw new Error(\"numerator empty\")\n\tif (lst2.length == 0) throw new Error(\"denominator empty\")\n\tif (lst1.length > lst2.length)\n\t\tthrow new Error(\"numerator longer than denominator\")\n\tfor (const s of lst1) {\n\t\tif (typeof s != \"string\") throw new Error(\"one of numerator not string\")\n\t\tif (!s) throw new Error(\"empty string in numerator\")\n\t\tif (!lst2.includes(s))\n\t\t\tthrow new Error(\"one of numerator not in denominator\")\n\t}\n}\nexport {\n\tfilterJoin,\n\tgetFilteredSamples,\n\tgetWrappedTvslst,\n\tsample_match_termvaluesetting,\n\tsetDatasetAnnotations,\n\tvalidateTermCollectionTvs,\n}\n", "/*\nshared between client and server\n\nexported functions\n- bplen()\n- mclasstester()\n- basecompliment()\n\n\n*/\nimport { rgb } from \"d3-color\"\nimport * as d3scale from \"d3-scale\"\nimport * as d3 from \"d3\"\nimport { getWrappedTvslst } from \"./filter.js\"\n\n// moved from `#shared/terms` to here, so that this can be passed as\n// part of 'common' argument to exported dataset js function, at server runtime\n// 3/30/2026 - changed from literal object to a class with static properties\n// to make it easier for IDEs and tsc compiler to catch typos in consumer code\nexport class TermTypeGroups {\n\tstatic DICTIONARY_VARIABLES = \"Dictionary Variables\"\n\tstatic DNA_METHYLATION = \"DNA Methylation\"\n\tstatic GENE_DEPENDENCY = \"Gene Dependency\"\n\tstatic GENE_EXPRESSION = \"Gene Expression\"\n\tstatic ISOFORM_EXPRESSION = \"Isoform Expression\"\n\tstatic GSEA = \"GSEA\"\n\tstatic METABOLITE_INTENSITY = \"Metabolite Intensity\"\n\tstatic PROTEOME_ABUNDANCE = \"Whole Proteome Abundance\"\n\tstatic MUTATION_CNV_FUSION = \"Mutation/CNV/Fusion\"\n\tstatic MUTATION_SIGNATURE = \"Mutation Signature\"\n\tstatic PROTEIN_EXPRESSION = \"Protein Expression\"\n\tstatic SINGLECELL_CELLTYPE = \"Single-cell Cell Type\"\n\tstatic SINGLECELL_GENE_EXPRESSION = \"Single-cell Gene Expression\"\n\tstatic SNP = \"SNP Genotype\"\n\tstatic SNP_LIST = \"SNP List\"\n\tstatic SNP_LOCUS = \"SNP Locus\"\n\tstatic SPLICE_JUNCTION = \"Splice Junction\"\n\tstatic SSGSEA = \"Geneset Expression\"\n\tstatic TERM_COLLECTION = \"Term Collection\"\n\tstatic VARIANT_GENOTYPE = \"Variant Genotype\"\n}\n// freeze so that mutating any of the static properties above will throw at runtime\nObject.freeze(TermTypeGroups)\n\nexport const defaultcolor = rgb(\"#8AB1D4\").darker()\nexport const default_text_color = rgb(\"#aaa\").darker().darker()\n\nexport const exoncolor = \"#4F8053\"\nexport const plotColor = \"#ce768e\"\n\n// something that has something to do with coding gene reading frame\nexport const IN_frame = true\nexport const OUT_frame = false\n\n/********************************\n* on dt usage *\n*********************************\n- once a dt value is decided and used with actual dataset,\n the value must not be altered, since dataset file may hardcode such value and reassigning to a new integer will break!\n- never test dt value by range e.g. if(dt>10), it breaks! only test equality!\n- in code import variable from here and DO NOT use literal values, to make code tractable\n*/\nexport const dtsnvindel = 1\nexport const dtfusionrna = 2\nexport const dtgeneexpression = 3\nexport const dtcnv = 4\nexport const dtsv = 5\nexport const dtitd = 6\nexport const dtdel = 7\nexport const dtnloss = 8\nexport const dtcloss = 9\nexport const dtloh = 10\nexport const dtmetaboliteintensity = 11\nexport const dtssgsea = 12\nexport const dtdnamethylation = 13\nexport const dtproteomeabundance = 14\n// add new dt value here. !!!DO NOT change value of existing dt!!!\n\nexport const dt2label = {\n\t[dtsnvindel]: \"SNV/indel\",\n\t[dtfusionrna]: \"Fusion RNA\",\n\t[dtcnv]: \"CNV\",\n\t[dtsv]: \"SV\",\n\t[dtitd]: \"ITD\",\n\t[dtdel]: \"Deletion\",\n\t[dtnloss]: \"N-loss\",\n\t[dtcloss]: \"C-loss\",\n\t[dtloh]: \"LOH\",\n\t[dtgeneexpression]: \"Gene Expression\",\n\t[dtmetaboliteintensity]: \"Metabolite Intensity\",\n\t[dtproteomeabundance]: \"Whole Proteome Abundance\",\n}\n\n// Maps dt types to UI labels and lesion types for GRIN2\n// All dt types use lesionTypes array for consistency\nexport const dt2lesion = {\n\t[dtsnvindel]: {\n\t\tuilabel: \"SNV/INDEL (Mutation)\",\n\t\tlesionTypes: [\n\t\t\t{ name: \"Mutation\", lesionType: \"mutation\", color: \"#44AA44\" },\n\t\t],\n\t},\n\t[dtcnv]: {\n\t\tuilabel: \"CNV (Copy Number Variation)\",\n\t\tlesionTypes: [\n\t\t\t{ name: \"Loss\", lesionType: \"loss\", color: \"#4444FF\" },\n\t\t\t{ name: \"Gain\", lesionType: \"gain\", color: \"#FF4444\" },\n\t\t],\n\t},\n\t[dtsv]: {\n\t\tuilabel: \"SV (Structural Variation)\",\n\t\tlesionTypes: [{ name: \"SV\", lesionType: \"sv\", color: \"#9932CC\" }],\n\t},\n\t[dtfusionrna]: {\n\t\tuilabel: \"Fusion (RNA Fusion)\",\n\t\tlesionTypes: [{ name: \"Fusion\", lesionType: \"fusion\", color: \"#FFA500\" }],\n\t},\n}\n\n// Maps GRIN2 option types to their corresponding dt values\nexport const optionToDt = {\n\tsnvindelOptions: dtsnvindel,\n\tcnvOptions: dtcnv,\n\tfusionOptions: dtfusionrna,\n\tsvOptions: dtsv,\n}\n\nexport const mclass = {\n\tM: {\n\t\tlabel: \"MISSENSE\",\n\t\tcolor: \"#3987CC\",\n\t\tdt: dtsnvindel,\n\t\tdesc: \"A sequence variant, that changes one or more bases, resulting in a different amino acid sequence but where the length is preserved\",\n\t\tkey: \"M\",\n\t},\n\tE: {\n\t\tlabel: \"EXON\",\n\t\tcolor: \"#bcbd22\",\n\t\tdt: dtsnvindel,\n\t\tdesc: \"A variant in the exon of a non-coding RNA.\",\n\t\tkey: \"E\",\n\t},\n\tF: {\n\t\tlabel: \"FRAMESHIFT\",\n\t\tcolor: \"rgb(200, 61, 61)\",\n\t\tdt: dtsnvindel,\n\t\tdesc: \"A sequence variant which causes a disruption of the translational reading frame, because the number of nucleotides inserted or deleted is not a multiple of three\",\n\t\tkey: \"F\",\n\t},\n\tN: {\n\t\tlabel: \"NONSENSE\",\n\t\tcolor: \"#ff7f0e\",\n\t\tdt: dtsnvindel,\n\t\tdesc: \"A sequence variant whereby at least one base of a codon is changed, resulting in a premature stop codon, leading to a shortened transcript\",\n\t\tkey: \"N\",\n\t},\n\tS: {\n\t\tlabel: \"SILENT\",\n\t\tcolor: \"#2ca02c\",\n\t\tdt: dtsnvindel,\n\t\tdesc: \"A sequence variant where there is no resulting change to the encoded amino acid\",\n\t\tkey: \"S\",\n\t},\n\tD: {\n\t\tlabel: \"PROTEINDEL\",\n\t\tcolor: \"rgb(100, 100, 100)\",\n\t\tdt: dtsnvindel,\n\t\tdesc: \"An inframe non synonymous variant that deletes bases from the coding sequence\",\n\t\tkey: \"D\",\n\t},\n\tI: {\n\t\tlabel: \"PROTEININS\",\n\t\tcolor: \"#8c564b\",\n\t\tdt: dtsnvindel,\n\t\tdesc: \"An inframe non synonymous variant that inserts bases into in the coding sequence\",\n\t\tkey: \"I\",\n\t},\n\tProteinAltering: {\n\t\tlabel: \"PROTEINALTERING\",\n\t\tcolor: \"#5a0034\",\n\t\tdt: dtsnvindel,\n\t\tdesc: \"An inframe complex change to the coding sequence\",\n\t\tkey: \"ProteinAltering\",\n\t},\n\tP: {\n\t\tlabel: \"SPLICE_REGION\",\n\t\tcolor: \"#9467bd\",\n\t\tdt: dtsnvindel,\n\t\tdesc: \"A sequence variant in which a change has occurred within the region of the splice site, either within 1-3 bases of the exon or 3-8 bases of the intron\",\n\t\tkey: \"P\",\n\t},\n\tL: {\n\t\tlabel: \"SPLICE\",\n\t\tcolor: \"#6633FF\",\n\t\tdt: dtsnvindel,\n\t\tdesc: \"A variant near an exon edge that may affect splicing functionality\",\n\t\tkey: \"L\",\n\t},\n\tIntron: {\n\t\tlabel: \"INTRON\",\n\t\tcolor: \"#656565\",\n\t\tdt: dtsnvindel,\n\t\tdesc: \"An intronic variant.\",\n\t\tkey: \"Intron\",\n\t},\n\n\tStopLost: {\n\t\tlabel: \"Stop lost\",\n\t\tcolor: \"#ff7f0e\",\n\t\tdt: dtsnvindel,\n\t\tdesc: \"A sequence variant where at least one base of the terminator codon (stop) is changed, resulting in an elongated transcript\",\n\t\tkey: \"StopLost\",\n\t},\n\tStartLost: {\n\t\tlabel: \"Start lost\",\n\t\tcolor: \"#ff7f0e\",\n\t\tdt: dtsnvindel,\n\t\tdesc: \"A codon variant that changes at least one base of the canonical start codon\",\n\t\tkey: \"StartLost\",\n\t},\n\n\t// quick fix!! for showing genes that are not tested in samples (e.g. gene panels) in the heatmap\n\tBlank: {\n\t\tlabel: \"Not tested\",\n\t\tcolor: \"#fff\",\n\t\tdt: dtsnvindel,\n\t\tdesc: \"This gene is not tested.\",\n\t\tkey: \"Blank\",\n\t},\n\n\tWT: {\n\t\tlabel: \"Wildtype\",\n\t\tcolor: \"#D3D3D3\",\n\t\tdt: dtsnvindel,\n\t\tdesc: \"Wildtype\",\n\t\tkey: \"WT\",\n\t},\n}\nexport const mclassitd = \"ITD\"\nmclass[mclassitd] = {\n\tlabel: \"ITD\",\n\tcolor: \"#ff70ff\",\n\tdt: dtitd,\n\tdesc: \"In-frame internal tandem duplication.\",\n\tkey: mclassitd,\n}\n\nexport const mclassdel = \"DEL\"\nmclass[mclassdel] = {\n\tlabel: \"DELETION, intragenic\",\n\tcolor: \"#858585\",\n\tdt: dtdel,\n\tdesc: \"Intragenic deletion.\",\n\tkey: mclassdel,\n}\n\nexport const mclassnloss = \"NLOSS\"\nmclass[mclassnloss] = {\n\tlabel: \"N-terminus loss\",\n\tcolor: \"#545454\",\n\tdt: dtnloss,\n\tdesc: \"N-terminus loss due to translocation\",\n\tkey: mclassnloss,\n}\n\nexport const mclasscloss = \"CLOSS\"\nmclass[mclasscloss] = {\n\tlabel: \"C-terminus loss\",\n\tcolor: \"#545454\",\n\tdt: dtcloss,\n\tdesc: \"C-terminus loss due to translocation\",\n\tkey: mclasscloss,\n}\n\nexport const mclassutr3 = \"Utr3\"\nmclass[mclassutr3] = {\n\tlabel: \"UTR_3\",\n\tcolor: \"#998199\",\n\tdt: dtsnvindel,\n\tdesc: \"A variant in the 3' untranslated region.\",\n\tkey: mclassutr3,\n}\n\nexport const mclassutr5 = \"Utr5\"\nmclass[mclassutr5] = {\n\tlabel: \"UTR_5\",\n\tcolor: \"#819981\",\n\tdt: dtsnvindel,\n\tdesc: \"A variant in the 5' untranslated region.\",\n\tkey: mclassutr5,\n}\n\nexport const mclassnonstandard = \"X\"\nmclass[mclassnonstandard] = {\n\tlabel: \"NONSTANDARD\",\n\tcolor: \"black\",\n\tdt: dtsnvindel,\n\tdesc: \"A mutation class that either does not match our notation, or is unspecified.\",\n\tkey: mclassnonstandard,\n}\n\nexport const mclassnoncoding = \"noncoding\"\nmclass[mclassnoncoding] = {\n\tlabel: \"NONCODING\",\n\tcolor: \"black\",\n\tdt: dtsnvindel,\n\tdesc: \"Noncoding mutation.\",\n\tkey: mclassnoncoding,\n}\n\n/*\nincludes full list of consequences from\nhttps://www.ensembl.org/info/genome/variation/prediction/predicted_data.html\neach entry is SO term with matching pp class\nentries that cannot be mapped to dtsnvindel classes are commented off\norder of entries is severity\n\n* since source of data! *\nfrom this array derives multiple types of lookup tables to perform mapping on both ways\n*/\nconst SOterms = [\n\t//transcript_ablation // not supported: 1) do not expect this in maf/vcf 2) should be represented as cnv deletion but not the legacy unused value \"dtdel\"; if needed can reenable\n\t[\"splice_acceptor_variant\", \"L\"],\n\t[\"splice_donor_variant\", \"L\"],\n\t[\"stop_gained\", \"N\"],\n\t[\"frameshift_variant\", \"F\"],\n\t[\"stop_lost\", \"StopLost\"],\n\t[\"start_lost\", \"StartLost\"],\n\t//transcript_amplification // not supported, should be represented by cnv instead\n\t[\"feature_elongation\", mclassnoncoding],\n\t[\"feature_truncation\", mclassnoncoding],\n\t[\"inframe_insertion\", \"I\"],\n\t[\"inframe_deletion\", \"D\"],\n\t[\"missense_variant\", \"M\"],\n\t[\"protein_altering_variant\", \"ProteinAltering\"],\n\t[\"splice_donor_5th_base_variant\", \"P\"],\n\t[\"splice_region_variant\", \"P\"],\n\t[\"splice_donor_region_variant\", \"P\"],\n\t[\"splice_polypyrimidine_tract_variant\", \"P\"],\n\t[\"incomplete_terminal_codon_variant\", \"N\"],\n\t[\"start_retained_variant\", \"S\"],\n\t[\"stop_retained_variant\", \"S\"],\n\t[\"synonymous_variant\", \"S\"],\n\t[\"coding_sequence_variant\", \"E\"],\n\t[\"mature_miRNA_variant\", \"E\"],\n\t[\"5_prime_UTR_variant\", mclassutr5],\n\t[\"3_prime_UTR_variant\", mclassutr3],\n\t[\"non_coding_transcript_exon_variant\", \"E\"],\n\t[\"intron_variant\", \"Intron\"],\n\t[\"NMD_transcript_variant\", \"F\"],\n\t[\"non_coding_transcript_variant\", \"E\"],\n\t[\"coding_transcript_variant\", \"E\"],\n\t[\"upstream_gene_variant\", mclassnoncoding],\n\t[\"downstream_gene_variant\", mclassnoncoding],\n\t[\"TFBS_ablation\", mclassnoncoding],\n\t[\"TFBS_amplification\", mclassnoncoding],\n\t[\"TF_binding_site_variant\", mclassnoncoding],\n\t[\"regulatory_region_ablation\", mclassnoncoding],\n\t[\"regulatory_region_amplification\", mclassnoncoding],\n\t[\"regulatory_region_variant\", mclassnoncoding],\n\t[\"intergenic_variant\", mclassnoncoding],\n\t[\"sequence_variant\", mclassnonstandard],\n]\n\n// maps a pp class to an array of consequences\n// k: pp class, v: array of consequences. case sensitive\nexport const class2SOterm = new Map()\nfor (const [csq, cls] of SOterms) {\n\tif (!class2SOterm.has(cls)) class2SOterm.set(cls, [])\n\tclass2SOterm.get(cls).push(csq)\n}\n\n// maps a consequence to a pp class. no severity info. use vepinfo() if needs severity\n// k: consequence, v: pp class. case sensitive.\nexport const SOterm2class = new Map()\nfor (const [csq, cls] of SOterms) {\n\tSOterm2class.set(csq, cls)\n}\n\n// outdated function to match with adhoc nonstandard notations, only used in legacy code utils/src/bulk.snv.js\n// DO NOT USE to map vep consequences\nexport function mclasstester(s) {\n\tswitch (s.toLowerCase()) {\n\t\tcase \"missense_mutation\":\n\t\t\treturn \"M\"\n\t\tcase \"nonsense_mutation\":\n\t\t\treturn \"N\"\n\t\tcase \"splice_site\":\n\t\t\treturn \"L\"\n\t\tcase \"splice_region\":\n\t\t\treturn \"P\"\n\t\tcase \"rna\":\n\t\t\treturn mclassnoncoding\n\t\tcase \"frame_shift_del\":\n\t\t\treturn \"F\"\n\t\tcase \"frame_shift_ins\":\n\t\t\treturn \"F\"\n\t\tcase \"in_frame_del\":\n\t\t\treturn \"D\"\n\t\tcase \"in_frame_ins\":\n\t\t\treturn \"I\"\n\t\tcase \"protein_altering_variant\":\n\t\t\treturn \"ProteinAltering\"\n\t\tcase \"translation_start_site\":\n\t\t\treturn mclassnonstandard\n\t\tcase \"nonstop_mutation\":\n\t\t\treturn \"N\"\n\t\tcase \"3'utr\":\n\t\t\treturn mclassutr3\n\t\tcase \"3'flank\":\n\t\t\treturn mclassnoncoding\n\t\tcase \"5'utr\":\n\t\t\treturn mclassutr5\n\t\tcase \"5'flank\":\n\t\t\treturn mclassnoncoding\n\t\tcase \"silent\":\n\t\t\treturn \"S\"\n\t\tcase \"blank\":\n\t\t\treturn \"Blank\"\n\t\tdefault:\n\t\t\treturn null\n\t}\n}\n\nexport const mclassfusionrna = \"Fuserna\"\nmclass[mclassfusionrna] = {\n\tlabel: \"Fusion transcript\",\n\tcolor: \"#545454\",\n\tdt: dtfusionrna,\n\tdesc:\n\t\t\"Marks the break points leading to fusion transcripts.<br>\" +\n\t\t\"<span style=\\\"font-size:150%\\\">&#9680;</span> - 3' end of the break point is fused to the 5' end of another break point in a different gene.<br>\" +\n\t\t\"<span style=\\\"font-size:150%\\\">&#9681;</span> - 5' end of the break point is fused to the 3' end of another break point in a different gene.\",\n\tkey: mclassfusionrna,\n}\nexport const mclasssv = \"SV\"\nmclass[mclasssv] = {\n\tlabel: \"Structural variation\",\n\tcolor: \"#858585\",\n\tdt: dtsv,\n\tdesc:\n\t\t\"<span style=\\\"font-size:150%\\\">&#9680;</span> - 3' end of the break point is fused to the 5' end of another break point in a different gene.<br>\" +\n\t\t\"<span style=\\\"font-size:150%\\\">&#9681;</span> - 5' end of the break point is fused to the 3' end of another break point in a different gene.\",\n\tkey: mclasssv,\n}\n\n// \"CNV_amp\" represents \"CNV Gain\" and is used in both 2-category and 5-category CNV data representation\n// \"CNV_amplification\" represents CNV amplification and is used in 5-category CNV\n// \"CNV_amp\" have to stay as-is since it may be hardcoded in lots of data beyond portal code.\nexport const mclasscnvgain = \"CNV_amp\"\nmclass[mclasscnvgain] = {\n\tlabel: \"Copy number gain\", // TODO change to 'Gain'\n\tcolor: \"#e9a3c9\",\n\tdt: dtcnv,\n\tdesc: \"Copy number gain\",\n\tkey: mclasscnvgain,\n}\n\nexport const mclasscnvloss = \"CNV_loss\"\nmclass[mclasscnvloss] = {\n\tlabel: \"Copy number loss\",\n\tcolor: \"#a1d76a\",\n\tdt: dtcnv,\n\tdesc: \"Copy number loss\",\n\tkey: mclasscnvloss,\n}\n\n// mclasscnvAmp is next level above mclasscnvgain and is used in 5-category CNV data\nexport const mclasscnvAmp = \"CNV_amplification\"\nmclass[mclasscnvAmp] = {\n\tlabel: \"Copy number amplification\",\n\tcolor: \"#ff0000\",\n\tdt: dtcnv,\n\tdesc: \"Copy number amplification\",\n\tkey: mclasscnvAmp,\n}\n\nexport const mclasscnvHomozygousDel = \"CNV_homozygous_deletion\"\nmclass[mclasscnvHomozygousDel] = {\n\tlabel: \"Copy number homozygous deletion\",\n\tcolor: \"#0000ff\",\n\tdt: dtcnv,\n\tdesc: \"Copy number homozygous deletion\",\n\tkey: mclasscnvHomozygousDel,\n}\n\nexport const mclasscnvloh = \"CNV_loh\"\nmclass[mclasscnvloh] = {\n\tlabel: \"LOH\",\n\tcolor: \"#12EDFC\",\n\tdt: dtcnv,\n\tdesc: \"Loss of heterozygosity\",\n\tkey: mclasscnvloh,\n}\n\n// for VCF\nexport const mclasssnv = \"snv\"\nmclass[mclasssnv] = {\n\tlabel: \"SNV\",\n\tcolor: \"#92a2d4\",\n\tdt: dtsnvindel,\n\tdesc: \"Single nucleotide variation\",\n\tkey: mclasssnv,\n}\n\nexport const mclassmnv = \"mnv\"\nmclass[mclassmnv] = {\n\tlabel: \"MNV\",\n\tcolor: \"#92a2d4\",\n\tdt: dtsnvindel,\n\tdesc: \"Multiple nucleotide variation\",\n\tkey: mclassmnv,\n}\n\nexport const mclassinsertion = \"insertion\"\nmclass[mclassinsertion] = {\n\tlabel: \"Sequence insertion\",\n\tcolor: \"#bd8e91\",\n\tdt: dtsnvindel,\n\tdesc: \"Sequence insertion\",\n\tkey: mclassinsertion,\n}\n\nexport const mclassdeletion = \"deletion\"\nmclass[mclassdeletion] = {\n\tlabel: \"Sequence deletion\",\n\tcolor: \"#b5a174\",\n\tdt: dtsnvindel,\n\tdesc: \"Sequence deletion\",\n\tkey: mclassdeletion,\n}\n// TODO complex indel\n\n/* tricky\nwhen a mds3 tk uses numeric cnv, data points from tk.cnv.cnvLst[] has .class=dtcnv but no class!\na \"cnv\" entry needs to be present in mclass legend, and thus this wrapper function over mclass{} to allow dtcnv as key\nthe tricky case doesn't apply to other plots\n*/\nexport function mds3tkMclass(k) {\n\tif (k == dtcnv) {\n\t\treturn {\n\t\t\tcolor: \"#858585\",\n\t\t\tlabel: \"CNV\",\n\t\t\tdesc: \"Copy number variation\",\n\t\t}\n\t}\n\treturn mclass[k]\n}\n\nexport const dt2color = {\n\t[dtsnvindel]: mclass.M.color, // general color for snvindel irrespective of class (when class is not available)\n\t// add new dt as needed\n}\n\n// option to override mutation class attribute values\nexport function applyOverrides(overrides = {}) {\n\tif (overrides.mclass) {\n\t\tfor (const key in overrides.mclass) {\n\t\t\t// allow to fill-in mutation class that are missing from mclass;\n\t\t\t// may be useful for things like 'Not tested', etc, that may not be in mclass by default\n\t\t\t// but are used by a customer with its own PP server instance\n\t\t\tif (!mclass[key]) mclass[key] = {}\n\t\t\tfor (const subkey in overrides.mclass[key]) {\n\t\t\t\tmclass[key][subkey] = overrides.mclass[key][subkey]\n\t\t\t}\n\t\t}\n\t}\n}\n\n/* legacy function. input is comma-joined multiple consequences\nperforms case insensitive match and returns severity rank\nTODO share data with SOterms\n*/\nexport const vepinfo = function (s) {\n\tconst l = s.toLowerCase().split(\",\")\n\tlet rank = 1\n\tif (l.indexOf(\"transcript_ablation\") != -1) {\n\t\t// FIXME no class for whole gene deletion\n\t\treturn [dtdel, mclassdel, rank]\n\t}\n\trank++\n\tif (l.indexOf(\"splice_acceptor_variant\") != -1) return [dtsnvindel, \"L\", rank]\n\trank++\n\tif (l.indexOf(\"splice_donor_variant\") != -1) return [dtsnvindel, \"L\", rank]\n\trank++\n\tif (l.indexOf(\"stop_gained\") != -1) return [dtsnvindel, \"N\", rank]\n\trank++\n\tif (l.indexOf(\"frameshift_variant\") != -1) return [dtsnvindel, \"F\", rank]\n\trank++\n\tif (l.indexOf(\"stop_lost\") != -1) return [dtsnvindel, \"N\", rank]\n\trank++\n\tif (l.indexOf(\"start_lost\") != -1) return [dtsnvindel, \"N\", rank]\n\trank++\n\tif (l.indexOf(\"transcript_amplification\") != -1) {\n\t\t// FIXME no class for whole gene amp\n\t\treturn [dtsnvindel, mclassnonstandard, rank]\n\t}\n\trank++\n\tif (\n\t\tl.indexOf(\"inframe_insertion\") != -1 ||\n\t\tl.indexOf(\"conservative_inframe_insertion\") != -1 ||\n\t\tl.indexOf(\"disruptive_inframe_insertion\") != -1\n\t)\n\t\treturn [dtsnvindel, \"I\", rank]\n\trank++\n\tif (\n\t\tl.indexOf(\"inframe_deletion\") != -1 ||\n\t\tl.indexOf(\"conservative_inframe_deletion\") != -1 ||\n\t\tl.indexOf(\"disruptive_inframe_deletion\") != -1\n\t)\n\t\treturn [dtsnvindel, \"D\", rank]\n\trank++\n\tif (l.indexOf(\"missense_variant\") != -1) return [dtsnvindel, \"M\", rank]\n\trank++\n\tif (l.indexOf(\"protein_altering_variant\") != -1)\n\t\treturn [dtsnvindel, \"ProteinAltering\", rank]\n\trank++\n\tif (l.indexOf(\"splice_region_variant\") != -1) return [dtsnvindel, \"P\", rank]\n\trank++\n\tif (l.indexOf(\"incomplete_terminal_codon_variant\") != -1)\n\t\treturn [dtsnvindel, \"N\", rank]\n\trank++\n\tif (l.indexOf(\"stop_retained_variant\") != -1) return [dtsnvindel, \"S\", rank]\n\trank++\n\tif (l.indexOf(\"synonymous_variant\") != -1) return [dtsnvindel, \"S\", rank]\n\trank++\n\tif (l.indexOf(\"coding_sequence_variant\") != -1)\n\t\treturn [dtsnvindel, mclassnonstandard, rank]\n\trank++\n\tif (l.indexOf(\"mature_mirna_variant\") != -1) return [dtsnvindel, \"E\", rank]\n\trank++\n\tif (l.indexOf(\"5_prime_utr_variant\") != -1)\n\t\treturn [dtsnvindel, mclassutr5, rank]\n\trank++\n\tif (l.indexOf(\"3_prime_utr_variant\") != -1)\n\t\treturn [dtsnvindel, mclassutr3, rank]\n\trank++\n\tif (l.indexOf(\"non_coding_transcript_exon_variant\") != -1)\n\t\treturn [dtsnvindel, \"E\", rank]\n\trank++\n\tif (l.indexOf(\"intron_variant\") != -1) return [dtsnvindel, \"Intron\", rank]\n\trank++\n\tif (l.indexOf(\"nmd_transcript_variant\") != -1) return [dtsnvindel, \"S\", rank]\n\trank++\n\tif (l.indexOf(\"non_coding_transcript_variant\") != -1)\n\t\treturn [dtsnvindel, \"E\", rank]\n\trank++\n\tif (l.indexOf(\"upstream_gene_variant\") != -1)\n\t\treturn [dtsnvindel, mclassnoncoding, rank]\n\trank++\n\tif (l.indexOf(\"downstream_gene_variant\") != -1)\n\t\treturn [dtsnvindel, mclassnoncoding, rank]\n\trank++\n\tif (l.indexOf(\"tfbs_ablation\") != -1)\n\t\treturn [dtsnvindel, mclassnoncoding, rank]\n\trank++\n\tif (l.indexOf(\"tfbs_amplification\") != -1)\n\t\treturn [dtsnvindel, mclassnoncoding, rank]\n\trank++\n\tif (l.indexOf(\"tf_binding_site_variant\") != -1)\n\t\treturn [dtsnvindel, mclassnoncoding, rank]\n\trank++\n\tif (l.indexOf(\"regulatory_region_ablation\") != -1)\n\t\treturn [dtsnvindel, mclassnoncoding, rank]\n\trank++\n\tif (l.indexOf(\"regulatory_region_amplification\") != -1)\n\t\treturn [dtsnvindel, mclassnoncoding, rank]\n\trank++\n\tif (l.indexOf(\"feature_elongation\") != -1)\n\t\treturn [dtsnvindel, mclassnoncoding, rank]\n\trank++\n\tif (l.indexOf(\"regulatory_region_variant\") != -1)\n\t\treturn [dtsnvindel, mclassnoncoding, rank]\n\trank++\n\tif (l.indexOf(\"feature_truncation\") != -1)\n\t\treturn [dtsnvindel, mclassnoncoding, rank]\n\trank++\n\tif (l.indexOf(\"intergenic_variant\") != -1)\n\t\treturn [dtsnvindel, mclassnoncoding, rank]\n\trank++\n\treturn [dtsnvindel, mclassnonstandard, rank]\n}\n\n// m orgin\nexport const germlinelegend =\n\t'<circle cx=\"7\" cy=\"12\" r=\"7\" fill=\"#b1b1b1\"></circle><path d=\"M6.735557395310443e-16,-11A11,11 0 0,1 11,0L9,0A9,9 0 0,0 5.51091059616309e-16,-9Z\" transform=\"translate(7,12)\" fill=\"#858585\" stroke=\"none\"></path>'\n\nexport const morigin = {}\n\nexport const moriginsomatic = \"S\"\nmorigin[moriginsomatic] = {\n\tlabel: \"Somatic\",\n\tdesc: \"A variant found only in a tumor sample. The proportion is indicated by lack of any arc.\",\n\tlegend: '<circle cx=\"7\" cy=\"12\" r=\"7\" fill=\"#b1b1b1\"></circle>',\n}\nexport const morigingermline = \"G\"\nmorigin[morigingermline] = {\n\tlabel: \"Germline\",\n\tdesc: \"A constitutional variant found in a normal sample. The proportion is indicated by the span of the solid arc within the whole circle.\",\n\tlegend: germlinelegend,\n}\n\nmorigin.germline = morigin[morigingermline]\nmorigin.somatic = morigin[moriginsomatic]\n\nexport const moriginrelapse = \"R\"\nmorigin[moriginrelapse] = {\n\tlabel: \"Relapse\",\n\tdesc: \"A somatic variant found only in a relapse sample. The proportion is indicated by the span of the hollow arc within the whole circle.\",\n\tlegend:\n\t\t'<circle cx=\"7\" cy=\"12\" r=\"7\" fill=\"#b1b1b1\"></circle><path d=\"M6.735557395310443e-16,-11A11,11 0 0,1 11,0L9,0A9,9 0 0,0 5.51091059616309e-16,-9Z\" transform=\"translate(7,12)\" fill=\"none\" stroke=\"#858585\"></path>',\n}\nexport const morigingermlinepathogenic = \"GP\"\nmorigin[morigingermlinepathogenic] = {\n\tlabel: \"Germline pathogenic\",\n\tdesc: \"A constitutional variant with pathogenic allele.\",\n\tlegend: germlinelegend,\n}\nexport const morigingermlinenonpathogenic = \"GNP\"\nmorigin[morigingermlinenonpathogenic] = {\n\tlabel: \"Germline non-pathogenic\",\n\tdesc: \"A constitutional variant with non-pathogenic allele.\",\n\tlegend: germlinelegend,\n\thidden: true,\n}\n\nexport const tkt = {\n\tusegm: \"usegm\",\n\tds: \"dataset\",\n\tbigwig: \"bigwig\",\n\tbigwigstranded: \"bigwigstranded\",\n\tjunction: \"junction\",\n\tmdsjunction: \"mdsjunction\",\n\tmdssvcnv: \"mdssvcnv\", // replaced by mds3\n\tmdsexpressionrank: \"mdsexpressionrank\",\n\tmdsvcf: \"mdsvcf\", // for snv/indels, currently vcf, may include MAF\n\t//mdsgeneral:'mdsgeneral', // replaces mdssvcnv ****** not ready yet\n\tbedj: \"bedj\",\n\tpgv: \"profilegenevalue\",\n\tbampile: \"bampile\",\n\thicstraw: \"hicstraw\",\n\texpressionrank: \"expressionrank\",\n\taicheck: \"aicheck\",\n\tase: \"ase\",\n\tmds3: \"mds3\", //\n\tbedgraphdot: \"bedgraphdot\",\n\tbam: \"bam\",\n\tld: \"ld\",\n}\n\nexport function validtkt(what) {\n\tfor (const k in tkt) {\n\t\tif (what == tkt[k]) {\n\t\t\treturn true\n\t\t}\n\t}\n\treturn false\n}\n\n/*\nmember track types from mdsvcf\nto get rid of hardcoded strings\nin future may include MAF format files\n*/\nexport const mdsvcftype = {\n\tvcf: \"vcf\",\n}\n\n/*\nfor custom mdssvcnv track\nor general track\nto avoid using hard-coded string\n*/\nexport const custommdstktype = {\n\tvcf: \"vcf\",\n\tsvcnvitd: \"svcnvitd\",\n\tgeneexpression: \"geneexpression\",\n}\n\n// codons that are not here are stop codon!!\nexport const codon = {\n\tGCT: \"A\",\n\tGCC: \"A\",\n\tGCA: \"A\",\n\tGCG: \"A\",\n\tCGT: \"R\",\n\tCGC: \"R\",\n\tCGA: \"R\",\n\tCGG: \"R\",\n\tAGA: \"R\",\n\tAGG: \"R\",\n\tAAT: \"N\",\n\tAAC: \"N\",\n\tGAT: \"D\",\n\tGAC: \"D\",\n\tTGT: \"C\",\n\tTGC: \"C\",\n\tCAA: \"Q\",\n\tCAG: \"Q\",\n\tGAA: \"E\",\n\tGAG: \"E\",\n\tGGT: \"G\",\n\tGGC: \"G\",\n\tGGA: \"G\",\n\tGGG: \"G\",\n\tCAT: \"H\",\n\tCAC: \"H\",\n\tATT: \"I\",\n\tATC: \"I\",\n\tATA: \"I\",\n\tTTA: \"L\",\n\tTTG: \"L\",\n\tCTT: \"L\",\n\tCTC: \"L\",\n\tCTA: \"L\",\n\tCTG: \"L\",\n\tAAA: \"K\",\n\tAAG: \"K\",\n\tATG: \"M\",\n\tTTT: \"F\",\n\tTTC: \"F\",\n\tCCT: \"P\",\n\tCCC: \"P\",\n\tCCA: \"P\",\n\tCCG: \"P\",\n\tTCT: \"S\",\n\tTCC: \"S\",\n\tTCA: \"S\",\n\tTCG: \"S\",\n\tAGT: \"S\",\n\tAGC: \"S\",\n\tACT: \"T\",\n\tACC: \"T\",\n\tACA: \"T\",\n\tACG: \"T\",\n\tTGG: \"W\",\n\tTAT: \"Y\",\n\tTAC: \"Y\",\n\tGTT: \"V\",\n\tGTC: \"V\",\n\tGTA: \"V\",\n\tGTG: \"V\",\n}\n\nexport const codon_stop = \"*\"\n\nexport function nt2aa(gm) {\n\t// must convert genome seq to upper case!!!\n\tif (!gm.genomicseq) return undefined\n\tconst enlst = []\n\tif (gm.coding) {\n\t\tfor (const [i, e] of gm.coding.entries()) {\n\t\t\tconst s = gm.genomicseq.substr(e[0] - gm.start, e[1] - e[0])\n\t\t\tif (gm.strand == \"-\") {\n\t\t\t\tenlst.push(reversecompliment(s))\n\t\t\t} else {\n\t\t\t\tenlst.push(s)\n\t\t\t}\n\t\t}\n\t}\n\tconst nt = enlst.join(\"\")\n\tconst pep = []\n\n\t/*\n\tif startCodonFrame is set, will not begin translation from first nt, but will skip 1 or 2 nt at the beginning\n\tin case of IGKC, frame=1 means it will borrow 1 nt from the previous IGKJ exons\n\tso the first two nucleotides from the current exon will have to be skipped when translating IGKC alone\n\t*/\n\tconst startntidx = gm.startCodonFrame ? 3 - gm.startCodonFrame : 0\n\tfor (let i = startntidx; i < nt.length; i += 3) {\n\t\tconst a = codon[nt.substr(i, 3)]\n\t\tpep.push(a || codon_stop)\n\t}\n\tgm.cdseq = nt\n\treturn pep.join(\"\")\n}\n\nexport function bplen(len, isfile) {\n\t// if \"isfile\" is true, to measure file size instead of basepair len\n\tif (len >= 1000000000) return (len / 1000000000).toFixed(1) + \" Gb\"\n\tif (len >= 10000000) return Math.ceil(len / 1000000) + \" Mb\"\n\tif (len >= 1000000) return (len / 1000000).toFixed(1) + \" Mb\"\n\tif (len >= 10000) return Math.ceil(len / 1000) + \" Kb\"\n\tif (len >= 1000) return (len / 1000).toFixed(1) + \" Kb\"\n\treturn len + (isfile ? \"bytes\" : \" bp\")\n}\n\nexport const basecolor = {\n\tA: \"#ca0020\",\n\tT: \"#f4a582\",\n\tC: \"#92c5de\",\n\tG: \"#0571b0\",\n}\n\nexport function basecompliment(nt) {\n\tswitch (nt) {\n\t\tcase \"A\":\n\t\t\treturn \"T\"\n\t\tcase \"T\":\n\t\t\treturn \"A\"\n\t\tcase \"C\":\n\t\t\treturn \"G\"\n\t\tcase \"G\":\n\t\t\treturn \"C\"\n\t\tcase \"a\":\n\t\t\treturn \"t\"\n\t\tcase \"t\":\n\t\t\treturn \"a\"\n\t\tcase \"c\":\n\t\t\treturn \"g\"\n\t\tcase \"g\":\n\t\t\treturn \"c\"\n\t\tdefault:\n\t\t\treturn nt\n\t}\n}\n\nexport function reversecompliment(s) {\n\tconst tmp = []\n\tfor (let i = s.length - 1; i >= 0; i--) {\n\t\ttmp.push(basecompliment(s[i]))\n\t}\n\treturn tmp.join(\"\")\n}\n\nexport function spliceeventchangegmexon(gm, evt) {\n\t/*\n\talter gm.coding[], by exon-skip/alt events\n\tfor frame checking\n\tgm must have coding\n\t*/\n\tconst gm2 = {\n\t\tchr: gm.chr,\n\t\tstart: gm.start,\n\t\tstop: gm.stop,\n\t\tstrand: gm.strand,\n\t\tcoding: [],\n\t}\n\tif (evt.isskipexon || evt.isaltexon) {\n\t\tfor (let i = 0; i < gm.exon.length; i++) {\n\t\t\tconst codingstart = Math.max(gm.codingstart, gm.exon[i][0])\n\t\t\tconst codingstop = Math.min(gm.codingstop, gm.exon[i][1])\n\t\t\tif (codingstart > codingstop) {\n\t\t\t\t// not coding exon\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tif (evt.skippedexon.indexOf(i) == -1) {\n\t\t\t\t// not skipped\n\t\t\t\tgm2.coding.push([codingstart, codingstop])\n\t\t\t} else {\n\t\t\t\t// skipped\n\t\t\t}\n\t\t}\n\t} else if (evt.a5ss || evt.a3ss) {\n\t\t// still equal number of exons\n\t\t// adjust the affected exon first, then figure out coding[]\n\t\tconst exons = gm.exon.map((e) => [e[0], e[1]])\n\t\tconst forward = gm.strand == \"+\"\n\t\tif (evt.a5ss) {\n\t\t\tif (forward) {\n\t\t\t\texons[evt.exon5idx][1] = evt.junctionB.start\n\t\t\t} else {\n\t\t\t\texons[evt.exon5idx + 1][0] = evt.junctionB.stop\n\t\t\t}\n\t\t} else {\n\t\t\tif (forward) {\n\t\t\t\texons[evt.exon5idx + 1][0] = evt.junctionB.stop\n\t\t\t} else {\n\t\t\t\texons[evt.exon5idx][1] = evt.junctionB.start\n\t\t\t}\n\t\t}\n\t\t// from new exons, figure out coding exons\n\t\tfor (const e of exons) {\n\t\t\tconst codingstart = Math.max(gm.codingstart, e[0])\n\t\t\tconst codingstop = Math.min(gm.codingstop, e[1])\n\t\t\tif (codingstart > codingstop) {\n\t\t\t\t// not coding exon\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tgm2.coding.push([codingstart, codingstop])\n\t\t}\n\t}\n\treturn gm2\n}\n\nexport function fasta2gmframecheck(gm, str) {\n\t/*\n\tgm{}\n\t\t.chr\n\t\t.start\n\t\t.stop\n\t\t\tstart/stop is transcript position\n\t\t.strand\n\t\t.coding[]\n\tstr\n\t\tsamtools faidx output\n\t*/\n\tconst lines = str.split(\"\\n\")\n\t// remove fasta header\n\tlines.shift()\n\tgm.genomicseq = lines.join(\"\").toUpperCase()\n\n\tconst aaseq = nt2aa(gm)\n\n\tlet thisframe = OUT_frame\n\tconst stopcodonidx = aaseq.indexOf(codon_stop)\n\tif (stopcodonidx == aaseq.length - 1) {\n\t\t// the first appearance of stop codon is at the last of translation\n\t\tthisframe = IN_frame\n\t}\n\treturn thisframe\n}\n\nexport function validate_vcfinfofilter(obj) {\n\t/*\n\tvalidate vcfinfofilter as from embedding api or dataset\n\t*/\n\n\tif (!obj.lst) return \".lst missing\"\n\n\tif (!Array.isArray(obj.lst)) return \"input is not an array\"\n\n\tfor (const set of obj.lst) {\n\t\tif (!set.name) return \"name missing from a set of .vcfinfofilter.lst\"\n\n\t\tif (set.autocategory || set.categories) {\n\t\t\t// categorical info, auto or defined\n\n\t\t\tif (!set.autocategory) {\n\t\t\t\tfor (const k in set.categories) {\n\t\t\t\t\tconst v = set.categories[k]\n\t\t\t\t\tif (!set.autocolor && !v.color)\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\".color missing for class \" +\n\t\t\t\t\t\t\tk +\n\t\t\t\t\t\t\t\" from .categories of set \" +\n\t\t\t\t\t\t\tset.name\n\t\t\t\t\t\t)\n\t\t\t\t\tif (!v.label) {\n\t\t\t\t\t\tv.label = k\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (set.categoryhidden) {\n\t\t\t\tfor (const k in set.categoryhidden) {\n\t\t\t\t\tif (!set.categories[k])\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\"unknown hidden-by-default category \" +\n\t\t\t\t\t\t\tk +\n\t\t\t\t\t\t\t\" from set \" +\n\t\t\t\t\t\t\tset.name\n\t\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tset.categoryhidden = {}\n\t\t\t}\n\t\t} else if (set.numericfilter) {\n\t\t\t// otherwise, numerical value, the style of population frequency filter\n\t\t\tconst lst = []\n\t\t\tfor (const v of set.numericfilter) {\n\t\t\t\tif (typeof v == \"number\") {\n\t\t\t\t\t/*\n\t\t\t\t\tjust a number, defaults to 'lower-than'\n\t\t\t\t\t*/\n\t\t\t\t\tlst.push({ side: \"<\", value: v })\n\t\t\t\t} else {\n\t\t\t\t\tlst.push({\n\t\t\t\t\t\tside: v.side || \"<\",\n\t\t\t\t\t\tvalue: v.value,\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t\tset.numericfilter = lst\n\n\t\t\t//return 'no .categories or .numericfilter from set '+set.name\n\t\t}\n\n\t\tif (set.altalleleinfo) {\n\t\t\tif (!set.altalleleinfo.key) {\n\t\t\t\treturn \".key missing from .altalleleinfo from set \" + set.name\n\t\t\t}\n\t\t} else if (set.locusinfo) {\n\t\t\tif (!set.locusinfo.key) {\n\t\t\t\treturn \".key missing from .locusinfo from set \" + set.name\n\t\t\t}\n\t\t} else {\n\t\t\treturn (\n\t\t\t\t\"neither .altalleleinfo or .locusinfo is available from set \" + set.name\n\t\t\t)\n\t\t}\n\t}\n}\n\nexport function contigNameNoChr(genome, chrlst) {\n\t/*\n\tFIXME hard-coded for human genome styled chromosome names\n\t*/\n\tfor (const n in genome.majorchr) {\n\t\tif (chrlst.indexOf(n.replace(\"chr\", \"\")) != -1) {\n\t\t\treturn true\n\t\t}\n\t}\n\tif (genome.minorchr) {\n\t\tfor (const n in genome.minorchr) {\n\t\t\tif (chrlst.indexOf(n.replace(\"chr\", \"\")) != -1) {\n\t\t\t\treturn true\n\t\t\t}\n\t\t}\n\t}\n\treturn false\n}\nexport function contigNameNoChr2(genome, chrlst) {\n\t// returns number of matching chr names that either includes \"chr\" or not\n\t// for detecting if chrlst entirely mismatch with what's in the genome build\n\t// TODO replace contigNameNoChr\n\tlet nochrcount = 0,\n\t\thaschrcount = 0\n\tfor (const n in genome.majorchr) {\n\t\tif (chrlst.includes(n)) {\n\t\t\thaschrcount++\n\t\t} else if (chrlst.includes(n.replace(\"chr\", \"\"))) {\n\t\t\tnochrcount++\n\t\t}\n\t}\n\tif (genome.minorchr) {\n\t\tfor (const n in genome.minorchr) {\n\t\t\tif (chrlst.includes(n)) {\n\t\t\t\thaschrcount++\n\t\t\t} else if (chrlst.includes(n.replace(\"chr\", \"\"))) {\n\t\t\t\tnochrcount++\n\t\t\t}\n\t\t}\n\t}\n\treturn [nochrcount, haschrcount]\n}\n\nexport function getMax_byiqr(lst, novaluemax) {\n\t/*\n\tlst: array of numbers\n\tnovaluemax: when lst is empty, return this value\n\tcutoff value based on IQR to exclude outlier values\n\t*/\n\tif (lst.length == 0) return novaluemax\n\tlst.sort((i, j) => i - j)\n\tconst max = lst[lst.length - 1]\n\tif (lst.length <= 5) return max\n\tconst q1 = lst[Math.floor(lst.length / 4)]\n\tconst q2 = lst[Math.floor((lst.length * 3) / 4)]\n\treturn Math.min(q2 + (q2 - q1) * 1.5, max)\n}\n\nexport function alleleInGenotypeStr(genotype, allele) {\n\tif (!genotype) return false\n\tif (genotype.indexOf(\"/\") != -1) {\n\t\treturn genotype.split(\"/\").indexOf(allele) != -1\n\t}\n\treturn genotype.split(\"|\").indexOf(allele) != -1\n}\n\nexport const gmmode = {\n\tgenomic: \"genomic\",\n\tsplicingrna: \"splicing RNA\", // if just 1 exon, use \"RNA\" as label\n\texononly: \"exon only\",\n\tprotein: \"protein\",\n\tgmsum: \"aggregated exons\",\n}\n\n/*\ninput:\n\nm={}\n\tm.csq=[]\n\t\telement: {\n\t\t\tAllele: str,\n\t\t\tConsequence: str,\n\t\t\tCANONICAL: str, // true if _isoform is canonical\n\t\t\t...\n\t\t\t_isoform: str,\n\t\t\t_class: str,\n\t\t\t_csqrank: int\n\t\t}\n\tm.ann=[]\n\t\tannovar output. may be derelict\nblock={}\n\tblock.usegm={ isoform }\n\tcan be a mock object when running this function in node!\n\ndoes:\n\tfind an annotation from m.csq[] that's fitting the circumstance\n\t- current gm isoform displayed in block gene mode\n\t- any canonical isoform from m.csq[] (can be missing if vep is not instructed to do it)\n\t- one with highest _csqrank\n\tthen, copy its class/mname to m{}\n\thas many fall-back and always try to assign class/mname\n\nno return\n*/\nexport function vcfcopymclass(m, block) {\n\tif (m.csq) {\n\t\tlet useone // point to the element of m.csq[], from this class/mname is copied to m{}\n\n\t\tif (block.usegm) {\n\t\t\t// block is in gm mode, find a csq matching with the genemodel isoform\n\t\t\tuseone = m.csq.find((i) => i._isoform == block.usegm.isoform)\n\t\t}\n\n\t\tif (!useone) {\n\t\t\t// no match to usegm isoform; can be due to in genomic mode and zoomed out, where this variant is from a neighboring gene near block.usegm\n\t\t\t// find one using canonical isoform\n\t\t\tuseone = m.csq.find((i) => i.CANONICAL)\n\n\t\t\tif (!useone) {\n\t\t\t\t// none of the elements in m.csq[] is using a canonical isoform, as that's a vep optional output\n\t\t\t\t// last method: choose *colorful* annotation based on if is canonical, _csqrank\n\t\t\t\tuseone = m.csq[0]\n\t\t\t\tfor (const q of m.csq) {\n\t\t\t\t\tif (q._csqrank < useone._csqrank) {\n\t\t\t\t\t\tuseone = q\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (useone) {\n\t\t\tm.gene = useone._gene\n\t\t\tm.isoform = useone._isoform\n\t\t\tm.class = useone._class\n\t\t\tm.dt = useone._dt\n\t\t\tm.mname = useone._mname\n\n\t\t\tif (m.class == mclassnoncoding) {\n\t\t\t\t// noncoding converted from csq is not a meaningful, drab color, has no mname label, delete so later will be converted to non-protein class\n\t\t\t\tdelete m.class\n\t\t\t}\n\t\t}\n\t} else if (m.ann) {\n\t\t// there could be many applicable annotations, the first one not always desirable\n\t\t// choose *colorful* annotation based on _csqrank\n\t\tlet useone = null\n\t\tif (block.usegm) {\n\t\t\tfor (const q of m.ann) {\n\t\t\t\tif (q._isoform != block.usegm.isoform) continue\n\t\t\t\tif (useone) {\n\t\t\t\t\tif (q._csqrank < useone._csqrank) {\n\t\t\t\t\t\tuseone = q\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tuseone = q\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (!useone && block.gmmode == gmmode.genomic) {\n\t\t\t\t// no match to this gene, but in genomic mode, maybe from other genes?\n\t\t\t\tuseone = m.ann[0]\n\t\t\t}\n\t\t} else {\n\t\t\tuseone = m.ann[0]\n\t\t\tfor (const q of m.ann) {\n\t\t\t\tif (q._csqrank < useone._csqrank) {\n\t\t\t\t\tuseone = q\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (useone) {\n\t\t\tm.gene = useone._gene\n\t\t\tm.isoform = useone._isoform\n\t\t\tm.class = useone._class\n\t\t\tm.dt = useone._dt\n\t\t\tm.mname = useone._mname\n\n\t\t\tif (m.class == mclassnoncoding) {\n\t\t\t\tdelete m.class\n\t\t\t}\n\t\t}\n\t}\n\n\tif (m.class == undefined) {\n\t\t// infer class from m.type, which was assigned by vcf.js\n\t\tif (mclass[m.type]) {\n\t\t\tm.class = m.type\n\t\t\tm.dt = mclass[m.type].dt\n\t\t\tm.mname = m.id && m.id != \".\" ? m.id : m.ref + \">\" + m.alt\n\t\t\tif (m.mname.length > 15) {\n\t\t\t\t// avoid long indel\n\t\t\t\tm.mname = m.type\n\t\t\t}\n\t\t} else {\n\t\t\tm.class = mclassnonstandard\n\t\t\tm.dt = dtsnvindel\n\t\t\tm.mname = m.type\n\t\t}\n\t}\n\n\tdelete m.type\n}\n\n/*\nused in:\n\tmdssvcnv track, mutation attributes, items that are not annotated by an attribute for showing in legend, and server-side filtering\n*/\nexport const not_annotated = \"Unannotated\"\n\n// kernal density estimator as from https://www.d3-graph-gallery.com/graph/density_basic.html\n\nexport function kernelDensityEstimator(kernel, X) {\n\treturn function (V) {\n\t\treturn X.map((x) => {\n\t\t\treturn [\n\t\t\t\tx,\n\t\t\t\tV.map((v) => kernel(x - v)).reduce((i, j) => i + j, 0) / V.length,\n\t\t\t]\n\t\t})\n\t}\n}\n\nexport function kernelEpanechnikov(k) {\n\treturn function (v) {\n\t\treturn Math.abs((v /= k)) <= 1 ? (0.75 * (1 - v * v)) / k : 0\n\t}\n}\n\n/////////////////////// color sets /////////////////////////\n\nexport const schemeCategory20 = [\n\t\"#1f77b4\",\n\t\"#aec7e8\",\n\t\"#ff7f0e\",\n\t\"#ffbb78\",\n\t\"#2ca02c\",\n\t\"#98df8a\",\n\t\"#d62728\",\n\t\"#ff9896\",\n\t\"#9467bd\",\n\t\"#c5b0d5\",\n\t\"#8c564b\",\n\t\"#c49c94\",\n\t\"#e377c2\",\n\t\"#f7b6d2\",\n\t\"#7f7f7f\",\n\t\"#c7c7c7\",\n\t\"#bcbd22\",\n\t\"#dbdb8d\",\n\t\"#17becf\",\n\t\"#9edae5\",\n]\nexport const schemeCategory2 = [\"#e75480\", \"blue\"]\n\nexport function getColorScheme(number) {\n\tif (number > 20) {\n\t\tconst scheme = []\n\t\tfor (let i = 0; i < number; i++)\n\t\t\tscheme.push(d3.interpolateRainbow(i / number))\n\t\treturn scheme\n\t}\n\tif (number > 12) return schemeCategory20\n\telse if (number > 8) return d3.schemePaired\n\telse if (number > 2) return d3.schemeDark2\n\telse return schemeCategory2\n}\nexport function getColors(number) {\n\tconst scheme = getColorScheme(number)\n\treturn d3scale.scaleOrdinal(scheme)\n}\n\n// for now not using getColorScheme() for protein domains, because this color list have been in use since 2015...\nconst proteinDomainColors = [\n\t\"#8dd3c7\",\n\t\"#bebada\",\n\t\"#fb8072\",\n\t\"#80b1d3\",\n\t\"#E8E89E\",\n\t\"#a6d854\",\n\t\"#fdb462\",\n\t\"#ffd92f\",\n\t\"#e5c494\",\n\t\"#b3b3b3\",\n]\nexport function proteinDomainColorScale() {\n\treturn d3scale.scaleOrdinal().range(proteinDomainColors)\n}\n\n/////////////////////// end of color sets /////////////////////////\n\nexport const truncatingMutations = [\"F\", \"N\", \"L\", \"P\"]\nexport const proteinChangingMutations = [\n\t\"F\",\n\t\"N\",\n\t\"L\",\n\t\"P\",\n\t\"D\",\n\t\"I\",\n\t\"ProteinAltering\",\n\t\"M\",\n]\nexport const synonymousMutations = [\n\t\"S\",\n\t\"Intron\",\n\t\"Utr3\",\n\t\"Utr5\",\n\t\"noncoding\",\n\t\"E\",\n]\nexport const mutationClasses = Object.values(mclass)\n\t.filter((m) => m.dt == dtsnvindel)\n\t.map((m) => m.key)\nexport const CNVClasses = Object.values(mclass)\n\t.filter((m) => m.dt == dtcnv)\n\t.map((m) => m.key)\n\n// dt terms used for filtering variants for geneVariant term\nconst dtTerms_temp = [\n\t{\n\t\tid: \"snvindel\",\n\t\tquery: \"snvindel\",\n\t\tname: dt2label[dtsnvindel],\n\t\tparent_id: null,\n\t\tisleaf: true,\n\t\ttype: \"dtsnvindel\",\n\t\tdt: dtsnvindel,\n\t\tvalues: {},\n\t},\n\t{\n\t\tid: \"cnv\",\n\t\tquery: \"cnv\",\n\t\tname: dt2label[dtcnv],\n\t\tparent_id: null,\n\t\tisleaf: true,\n\t\ttype: \"dtcnv\",\n\t\tdt: dtcnv,\n\t\tvalues: {},\n\t},\n\t{\n\t\tid: \"fusion\",\n\t\tquery: \"svfusion\",\n\t\tname: dt2label[dtfusionrna],\n\t\tparent_id: null,\n\t\tisleaf: true,\n\t\ttype: \"dtfusion\",\n\t\tdt: dtfusionrna,\n\t\tvalues: {},\n\t},\n\t{\n\t\tid: \"sv\",\n\t\tquery: \"svfusion\",\n\t\tname: dt2label[dtsv],\n\t\tparent_id: null,\n\t\tisleaf: true,\n\t\ttype: \"dtsv\",\n\t\tdt: dtsv,\n\t\tvalues: {},\n\t},\n]\n// add origin annotations to dt terms\nconst dtTerms_temp2 = []\nfor (const dtTerm of dtTerms_temp) {\n\tdtTerm.name_noOrigin = dtTerm.name // for labeling groups in groupsetting\n\tdtTerms_temp2.push(dtTerm) // no origin\n\tfor (const origin of [\"somatic\", \"germline\"]) {\n\t\t// add origins\n\t\tconst addOrigin = {\n\t\t\tid: `${dtTerm.id}_${origin}`,\n\t\t\tname: `${dtTerm.name} (${origin})`,\n\t\t\torigin,\n\t\t}\n\t\tdtTerms_temp2.push(Object.assign({}, dtTerm, addOrigin))\n\t}\n}\nexport const dtTerms = dtTerms_temp2\n\nexport const colorScaleMap = {\n\tblueWhiteRed: { domain: [0, 0.5, 1], range: [\"blue\", \"white\", \"red\"] },\n\tgreenWhiteRed: { domain: [0, 0.5, 1], range: [\"green\", \"white\", \"red\"] },\n\tblueYellowRed: {\n\t\tdomain: [0, 0.17, 0.33, 0.5, 0.67, 0.83, 1],\n\t\trange: [\n\t\t\t\"#313695\",\n\t\t\t\"#649AC7\",\n\t\t\t\"#BCE1ED\",\n\t\t\t\"#FFFFBF\",\n\t\t\t\"#FDBE70\",\n\t\t\t\"#EA5839\",\n\t\t\t\"#A50026\",\n\t\t],\n\t},\n\tgreenBlackRed: {\n\t\tdomain: [0, 0.17, 0.33, 0.5, 0.67, 0.83, 1],\n\t\trange: [\n\t\t\t\"#00FF00\",\n\t\t\t\"#14E10C\",\n\t\t\t\"#1AAF10\",\n\t\t\t\"#000000\",\n\t\t\t\"#B01205\",\n\t\t\t\"#E20E03\",\n\t\t\t\"#FF0000\",\n\t\t],\n\t},\n\tblueBlackYellow: {\n\t\tdomain: [0, 0.17, 0.33, 0.5, 0.67, 0.83, 1],\n\t\trange: [\n\t\t\t\"#0000FF\",\n\t\t\t\"#0000CC\",\n\t\t\t\"#000099\",\n\t\t\t\"#202020\",\n\t\t\t\"#999900\",\n\t\t\t\"#CCCC00\",\n\t\t\t\"#FFFF00\",\n\t\t],\n\t},\n\t// when hierCluster z-score transformation is not performed, should use two-color scale\n\twhiteRed: { domain: [0, 1], range: [\"white\", \"red\"] },\n}\n\nexport function invalidcoord(thisgenome, chrom, start, stop) {\n\tif (!thisgenome) return \"no genome\"\n\tif (!chrom) return \"no chr name\"\n\tconst chr = thisgenome.chrlookup[chrom.toUpperCase()]\n\tif (!chr) return \"Invalid chromosome name: \" + chr\n\tif (!Number.isInteger(start)) return \"Non-numerical position: \" + start\n\tif (start < 0 || start >= chr.len) return \"Position out of range: \" + start\n\tif (!Number.isInteger(stop)) return \"Non-numerical position: \" + stop\n\tif (stop < 0 || stop > chr.len) return \"Position out of range: \" + stop\n\tif (start > stop) return \"Start position is greater than stop\"\n\treturn false\n}\n\nexport function string2pos(s, genome, donotextend) {\n\ts = s.replace(/,/g, \"\")\n\tconst chr = genome.chrlookup[s.toUpperCase()]\n\tif (chr) {\n\t\t// chr name only, to middle\n\t\treturn {\n\t\t\tchr: chr.name,\n\t\t\tchrlen: chr.len,\n\t\t\tstart: Math.max(0, Math.ceil(chr.len / 2) - 10000),\n\t\t\tstop: Math.min(chr.len, Math.ceil(chr.len / 2) + 10000),\n\t\t}\n\t}\n\t{\n\t\t// special handling for snv4\n\t\tconst tmp = s.split(\".\")\n\t\tif (tmp.length >= 2) {\n\t\t\tconst chr = genome.chrlookup[tmp[0].toUpperCase()]\n\t\t\tconst pos = Number.parseInt(tmp[1])\n\t\t\tconst e = invalidcoord(genome, tmp[0], pos, pos + 1)\n\t\t\tif (!e) {\n\t\t\t\t// valid snv4\n\t\t\t\tconst bpspan = 400\n\t\t\t\treturn {\n\t\t\t\t\tchr: chr.name,\n\t\t\t\t\tchrlen: chr.len,\n\t\t\t\t\tstart: Math.max(0, pos - Math.ceil(bpspan / 2)),\n\t\t\t\t\tstop: Math.min(chr.len, pos + Math.ceil(bpspan / 2)),\n\t\t\t\t\tactualposition: { position: pos, len: 1 },\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tconst tmp = s.split(/[-:\\s]+/)\n\tif (tmp.length == 2) {\n\t\t// must be chr - pos\n\t\tconst pos = Number.parseInt(tmp[1])\n\t\tconst e = invalidcoord(genome, tmp[0], pos, pos + 1)\n\t\tif (e) {\n\t\t\treturn null\n\t\t}\n\t\tconst chr = genome.chrlookup[tmp[0].toUpperCase()]\n\t\tconst bpspan = 400\n\t\treturn {\n\t\t\tchr: chr.name,\n\t\t\tchrlen: chr.len,\n\t\t\tstart: Math.max(0, pos - Math.ceil(bpspan / 2)),\n\t\t\tstop: Math.min(chr.len, pos + Math.ceil(bpspan / 2)),\n\t\t\tactualposition: { position: pos, len: 1 },\n\t\t}\n\t}\n\tif (tmp.length == 3) {\n\t\t// must be chr - start - stop\n\t\tlet start = Number.parseInt(tmp[1]),\n\t\t\tstop = Number.parseInt(tmp[2])\n\t\tconst e = invalidcoord(genome, tmp[0], start, stop)\n\t\tif (e) {\n\t\t\treturn null\n\t\t}\n\t\tconst actualposition = { position: start, len: stop - start }\n\t\tconst chr = genome.chrlookup[tmp[0].toUpperCase()]\n\n\t\tif (!donotextend) {\n\t\t\tconst minspan = 400\n\t\t\tif (stop - start < minspan) {\n\t\t\t\tlet center = Math.ceil((start + stop) / 2)\n\t\t\t\tif (center + minspan / 2 >= chr.len) {\n\t\t\t\t\tcenter = chr.len - Math.ceil(minspan / 2)\n\t\t\t\t}\n\t\t\t\tstart = Math.max(0, center - Math.ceil(minspan / 2))\n\t\t\t\tstop = start + minspan\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\tchr: chr.name,\n\t\t\tchrlen: chr.len,\n\t\t\tstart,\n\t\t\tstop,\n\t\t\tactualposition,\n\t\t}\n\t}\n\treturn null\n}\n"],
5
- "mappings": "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",
6
- "names": ["tmp", "chr"]
7
- }
@@ -1,14 +0,0 @@
1
- // src/block.lazyload.js
2
- var Block;
3
- async function blocklazyload(arg) {
4
- if (!Block) {
5
- const b = await import("./block-2QM37YSE.js");
6
- Block = b.Block;
7
- }
8
- return new Block(arg);
9
- }
10
-
11
- export {
12
- blocklazyload
13
- };
14
- //# sourceMappingURL=chunk-ZZSDYKD5.js.map
@@ -1,330 +0,0 @@
1
- import {
2
- getPillNameDefault,
3
- make_radios,
4
- sayerror,
5
- set_hiddenvalues,
6
- throwMsgWithFilePathAndFnName
7
- } from "./chunk-XZZLEHWC.js";
8
- import "./chunk-HJ6L54YS.js";
9
- import "./chunk-CJJ6LDZM.js";
10
- import "./chunk-2SRMRC6L.js";
11
- import "./chunk-QEHUEG4X.js";
12
- import "./chunk-XDI4UFCZ.js";
13
- import "./chunk-FN5XPUPH.js";
14
- import "./chunk-LSEFWW72.js";
15
- import "./chunk-5EF5U7MX.js";
16
- import "./chunk-2K5DSRBJ.js";
17
- import "./chunk-UCLS2SVB.js";
18
- import {
19
- copyMerge
20
- } from "./chunk-MVTCBVSX.js";
21
- import "./chunk-SEQLC4AD.js";
22
- import "./chunk-L4QG7XZE.js";
23
- import "./chunk-DQC5FFGV.js";
24
- import "./chunk-2TIYJ3PH.js";
25
- import "./chunk-RIGZHHCP.js";
26
- import "./chunk-AAEXTQT3.js";
27
- import "./chunk-2UWHV2SB.js";
28
- import "./chunk-ZLH4PJKX.js";
29
- import "./chunk-TV74I3Y5.js";
30
- import "./chunk-IH7ILDJS.js";
31
- import "./chunk-LOZEKOES.js";
32
- import "./chunk-TOU7EVFQ.js";
33
- import "./chunk-OAWQ6LOO.js";
34
- import "./chunk-SEEYV6P2.js";
35
- import "./chunk-NDWTN4U5.js";
36
- import "./chunk-OMR2DT66.js";
37
- import "./chunk-HFNDKYVF.js";
38
-
39
- // termsetting/handlers/condition.ts
40
- var cutoffGrades = [1, 2, 3, 4, 5];
41
- function getHandler(self) {
42
- return {
43
- getPillName(d) {
44
- return getPillNameDefault(self, d);
45
- },
46
- getPillStatus() {
47
- return getPillStatus(self);
48
- },
49
- showEditMenu(div) {
50
- if (self.q.mode == "discrete") {
51
- return showMenu_discrete(self, div);
52
- }
53
- if (self.q.mode == "binary" || self.q.mode == "cuminc" || self.q.mode == "cox") {
54
- return showMenu_cutoff(self, div);
55
- }
56
- console.error("invalid q.mode:", self.q.mode);
57
- throw "invalid q.mode";
58
- }
59
- // async postMain() {
60
- // const body = self.opts.getBodyParams?.() || {} //make sure term1_q is added
61
- // const data = await self.vocabApi.getCategories(self.term, self.filter!, body)
62
- // //not really sure this is necessary but it's consistent across other handlers
63
- // self.category2samplecount = []
64
- // for (const d of data.lst) {
65
- // self.category2samplecount.push({
66
- // key: d.key,
67
- // label: d.label,
68
- // count: d.samplecount
69
- // })
70
- // // }
71
- // }
72
- // }
73
- };
74
- }
75
- function getPillStatus(self) {
76
- const text = self.q?.name || self.q?.reuseId;
77
- if (text) return { text };
78
- if (self.q.mode == "discrete") {
79
- if (self.q.breaks?.length) {
80
- return { text: self.q.breaks.length + 1 + " groups" };
81
- } else {
82
- if (self.q.bar_by_grade) {
83
- if (self.q.value_by_max_grade) return { text: "Max. Grade" };
84
- if (self.q.value_by_most_recent) return { text: "Most Recent Grade" };
85
- if (self.q.value_by_computable_grade) return { text: "Any Grade" };
86
- return { text: "Error: unknown grade setting", bgcolor: "red" };
87
- }
88
- if (self.q.bar_by_children) return { text: "Sub-condition" };
89
- }
90
- }
91
- if (self.q.mode == "binary") {
92
- return {
93
- text: self.usecase?.target == "regression" ? self.data.q.groups.find((x) => x.name != self.data.refGrp).name : "binary"
94
- };
95
- }
96
- if (self.q.mode == "cuminc" || self.q.mode == "cox") {
97
- if (!self.q.breaks || self.q.breaks.length == 0) throwMsgWithFilePathAndFnName("Missing q.breaks");
98
- return { text: `Grades ${self.q.breaks[0]}-5` };
99
- }
100
- return {};
101
- }
102
- async function showMenu_discrete(self, div) {
103
- const value_type_div = div.append("div").style("margin", "10px 0px 10px 5px").style("border-left", "solid 1px #ededed");
104
- value_type_div.append("div").style("display", "inline-block").style("margin", "0px 0px 5px 5px").style("color", "rgb(136, 136, 136)").text("Grade type:");
105
- const value_type_select = value_type_div.append("select").style("display", "inline").style("margin", "0px 10px").on("change", () => {
106
- const i = value_type_select.property("selectedIndex");
107
- self.q.bar_by_grade = i != 3;
108
- self.q.bar_by_children = i == 3;
109
- self.q.value_by_max_grade = i == 0;
110
- self.q.value_by_most_recent = i == 1;
111
- self.q.value_by_computable_grade = i == 2 || i == 3;
112
- self.dom.tip.hide();
113
- self.api.runCallback();
114
- });
115
- value_type_select.append("option").text("Max grade per patient");
116
- value_type_select.append("option").text("Most recent grade per patient");
117
- value_type_select.append("option").text("Any grade per patient");
118
- if (self.term.subconditions) {
119
- value_type_select.append("option").text("Sub-conditions");
120
- }
121
- value_type_select.property(
122
- "selectedIndex",
123
- self.q.bar_by_children ? 3 : self.q.value_by_computable_grade ? 2 : self.q.value_by_most_recent ? 1 : 0
124
- );
125
- if (self.q.bar_by_children) {
126
- return;
127
- }
128
- const breaksSelectorDiv = div.append("div").style("margin", "20px 0px 10px 5px").style("border-left", "solid 1px #ededed");
129
- breaksSelectorDiv.append("div").text("Divide grades into groups (optional):").style("margin", "0px 0px 10px 5px").style("color", "rgb(136, 136, 136)");
130
- const holder = breaksSelectorDiv.append("div").style("display", "flex").style("align-items", "start").style("margin-left", "10px").style("width", "100%");
131
- const gradeValuesDiv = holder.append("div").style("margin-right", "20px");
132
- const rangeNameDiv = holder.append("div").style("display", "grid").style("grid-template-columns", "auto auto").style("column-gap", "20px").style("align-items", "center").style("margin-right", "5px");
133
- gradeValuesDiv.append("div").style("margin-bottom", "5px").style("color", "rgb(136, 136, 136)").text("Cutoff grades");
134
- const textarea = gradeValuesDiv.append("textarea").style("width", "100px").style("height", "70px").on("keyup", textarea2gradeUI);
135
- gradeValuesDiv.append("div").style("font-size", ".6em").style("margin-left", "1px").style("color", "#858585").html("Enter numeric values </br>seperated by ENTER");
136
- if (self.q.breaks?.length) {
137
- textarea.property("value", self.q.breaks.join("\n"));
138
- }
139
- textarea2gradeUI();
140
- function textarea2gradeUI() {
141
- rangeNameDiv.selectAll("*").remove();
142
- const breaks = textarea2breaks();
143
- if (!breaks.length) {
144
- delete self.q.breaks;
145
- delete self.q.groups;
146
- return;
147
- }
148
- if (!self.term.values) throwMsgWithFilePathAndFnName(`Missing term values`);
149
- const grades = Object.keys(self.term.values).filter((g) => !self.term.values?.[g].uncomputable).map(Number).sort((a, b) => a - b);
150
- const groups = getGroups(grades, breaks);
151
- rangeNameDiv.append("div").style("margin-bottom", "3px").style("color", "rgb(136, 136, 136)").text("Range");
152
- rangeNameDiv.append("div").style("margin-bottom", "3px").style("color", "rgb(136, 136, 136)").text("Label");
153
- for (const [i, g] of groups.entries()) {
154
- rangeNameDiv.append("div").text(g.name.replace(/Grades* /, ""));
155
- rangeNameDiv.append("div").append("input").attr("type", "text").property("value", g.name).style("margin", "2px 0px").on("change", function() {
156
- groups[i].name = this.value;
157
- });
158
- }
159
- self.q.breaks = breaks;
160
- self.q.groups = groups;
161
- }
162
- function textarea2breaks() {
163
- const str = textarea.property("value").trim();
164
- if (!str) return [];
165
- const lst = [...new Set(str.split("\n"))];
166
- const breaks = [];
167
- for (const x of lst) {
168
- const b = Number(x);
169
- if (!Number.isInteger(b)) {
170
- sayerror(div, "cutoff grade must be an integer value");
171
- return [];
172
- }
173
- if (b < 1 || b > 5) {
174
- sayerror(div, `cutoff grade must be within grades 1-5`);
175
- return [];
176
- }
177
- breaks.push(b);
178
- }
179
- if (!breaks.length) return [];
180
- return breaks.sort((i, j) => i - j);
181
- }
182
- div.append("button").text("Apply").style("margin", "10px").on("click", (event) => {
183
- event.target.disabled = true;
184
- event.target.innerHTML = "Loading...";
185
- self.api.runCallback();
186
- });
187
- }
188
- function showMenu_cutoff(self, div) {
189
- const holder = div.append("div").style("margin", "10px").style("display", "grid").style("grid-template-columns", "auto auto").style("gap", "20px");
190
- holder.append("div").text("Grade cutoff").style("opacity", 0.4);
191
- const sd = holder.append("div");
192
- const gradeSelect = sd.append("select").on("change", changeGradeSelect);
193
- for (const i of cutoffGrades) {
194
- gradeSelect.append("option").text(self.term.values?.[i].label);
195
- }
196
- gradeSelect.property("selectedIndex", self.q.breaks[0] - 1);
197
- holder.append("div").text(self.q.mode == "binary" ? "Group 1" : "Censored").style("opacity", 0.4);
198
- const g1n = holder.append("div").style("opacity", 0.4);
199
- holder.append("div").text(self.q.mode == "binary" ? "Group 2" : "Event").style("opacity", 0.4);
200
- const g2n = holder.append("div").style("opacity", 0.4);
201
- changeGradeSelect();
202
- function changeGradeSelect() {
203
- const grade = gradeSelect.property("selectedIndex") + 1;
204
- g1n.selectAll("*").remove();
205
- g2n.selectAll("*").remove();
206
- const grades = Object.keys(self.term.values).map(Number).sort((a, b) => a - b);
207
- for (const i of grades) {
208
- if (i < grade) {
209
- g1n.append("div").text(self.term.values?.[i].label);
210
- } else {
211
- g2n.append("div").text(self.term.values?.[i].label);
212
- }
213
- }
214
- }
215
- const timeUnit = self.vocabApi.termdbConfig.timeUnit;
216
- let timeScaleChoice;
217
- if (self.q.mode == "cox") {
218
- timeScaleChoice = self.q.timeScale;
219
- holder.append("div").text("Time axis").style("opacity", 0.4);
220
- const options = [
221
- {
222
- label: timeUnit.charAt(0).toUpperCase() + timeUnit.slice(1),
223
- value: "time"
224
- },
225
- { label: "Age", value: "age" }
226
- ];
227
- if (self.q.timeScale == "age") {
228
- options[1].checked = true;
229
- } else {
230
- options[0].checked = true;
231
- }
232
- make_radios({
233
- holder: holder.append("div"),
234
- options,
235
- styles: { padding: "" },
236
- callback: (v) => timeScaleChoice = v
237
- });
238
- }
239
- div.append("button").text("Apply").style("margin", "10px").on("click", (event) => {
240
- if (!self.q.breaks || self.q.breaks.length == 0) throwMsgWithFilePathAndFnName("Missing q.breaks");
241
- const grade = gradeSelect.property("selectedIndex") + 1;
242
- self.q.breaks[0] = grade;
243
- if (self.q.mode == "binary") {
244
- const grades = Object.keys(self.term.values).map(Number).sort((a, b) => a - b);
245
- self.q.groups = getGroups(grades, self.q.breaks);
246
- self.refGrp = self.q.groups[0].name;
247
- }
248
- if (self.q.mode == "cox") self.q.timeScale = timeScaleChoice;
249
- event.target.disabled = true;
250
- event.target.innerHTML = "Loading...";
251
- self.api.runCallback();
252
- });
253
- }
254
- function getGroups(grades, breaks) {
255
- grades.sort((a, b2) => a - b2);
256
- const groups = [];
257
- let group = { values: [] };
258
- let b;
259
- for (const g of grades) {
260
- if (breaks.includes(g)) {
261
- b = g;
262
- const max = Math.max(...group.values);
263
- if (!groups.length) {
264
- if (group.values.length == 1) {
265
- if (group.values[0] !== 0) throw "unexpected group value";
266
- group.name = "Grade 0";
267
- } else {
268
- if (group.values.length == 2 && group.values.includes(-1) && group.values.includes(0)) {
269
- group.name = "Not tested/Grade 0";
270
- } else {
271
- group.name = group.values.includes(-1) ? `Not tested/Grade 0 - Grade ${max}` : `Grades 0-${max}`;
272
- }
273
- }
274
- } else {
275
- group.name = group.values.length == 1 ? `Grade ${group.values[0]}` : `${group.name}-${max}`;
276
- }
277
- groups.push(group);
278
- group = {
279
- name: `Grade ${b}`,
280
- values: [g]
281
- };
282
- } else {
283
- group.values.push(g);
284
- }
285
- }
286
- group.name = `Grades ${b}-5`;
287
- groups.push(group);
288
- return groups;
289
- }
290
- function fillTW(tw, vocabApi, defaultQ) {
291
- set_hiddenvalues(tw.q, tw.term);
292
- if (defaultQ) {
293
- copyMerge(tw.q, defaultQ);
294
- }
295
- if (!Object.keys(tw.q).includes("mode")) tw.q.mode = "discrete";
296
- if (!tw.q.valueFor) {
297
- const q = tw.q;
298
- if (!q.bar_by_grade && !q.bar_by_children) q.bar_by_grade = true;
299
- tw.q.valueFor = tw.q.bar_by_children ? "children" : "grade";
300
- }
301
- if (tw.q.valueFor == "grade") {
302
- if (tw.q.value_by_max_grade || tw.q.value_by_most_recent || tw.q.value_by_computable_grade) {
303
- } else {
304
- tw.q.value_by_max_grade = true;
305
- }
306
- }
307
- if (tw.q.mode == "binary" || tw.q.mode == "cox" || tw.q.mode == "cuminc") {
308
- const defaultBreak = tw.q.mode == "binary" ? 1 : 3;
309
- if (!tw.q.breaks?.length) tw.q.breaks = [defaultBreak];
310
- if (tw.q.breaks.length != 1 || ![1, 2, 3, 4, 5].includes(tw.q.breaks[0])) throw "invalid tw.q.breaks";
311
- }
312
- if (tw.q.valueFor == "grade") {
313
- if (tw.q.breaks?.length) {
314
- if (!tw.term.values) throw "missing term.values";
315
- if (tw.q.mode == "discrete" || tw.q.mode == "binary") {
316
- const grades = Object.keys(tw.term.values).filter((g) => tw.q.mode == "discrete" ? !tw.term.values?.[g].uncomputable : g).map(Number).sort((a, b) => a - b);
317
- tw.q.groups = getGroups(grades, tw.q.breaks);
318
- }
319
- }
320
- if (tw.q.mode == "cox") {
321
- if (!tw.q.timeScale) tw.q.timeScale = "time";
322
- if (!["age", "time"].includes(tw.q.timeScale)) throw "invalid q.timeScale";
323
- }
324
- }
325
- }
326
- export {
327
- fillTW,
328
- getHandler
329
- };
330
- //# sourceMappingURL=condition-S52W57ZO.js.map
@@ -1,39 +0,0 @@
1
- import {
2
- controlsInit,
3
- renderTerm1Label,
4
- term0_term2_defaultQ
5
- } from "./chunk-XZZLEHWC.js";
6
- import "./chunk-HJ6L54YS.js";
7
- import "./chunk-CJJ6LDZM.js";
8
- import "./chunk-2SRMRC6L.js";
9
- import "./chunk-QEHUEG4X.js";
10
- import "./chunk-XDI4UFCZ.js";
11
- import "./chunk-FN5XPUPH.js";
12
- import "./chunk-LSEFWW72.js";
13
- import "./chunk-5EF5U7MX.js";
14
- import "./chunk-2K5DSRBJ.js";
15
- import "./chunk-UCLS2SVB.js";
16
- import "./chunk-MVTCBVSX.js";
17
- import "./chunk-SEQLC4AD.js";
18
- import "./chunk-L4QG7XZE.js";
19
- import "./chunk-DQC5FFGV.js";
20
- import "./chunk-2TIYJ3PH.js";
21
- import "./chunk-RIGZHHCP.js";
22
- import "./chunk-AAEXTQT3.js";
23
- import "./chunk-2UWHV2SB.js";
24
- import "./chunk-ZLH4PJKX.js";
25
- import "./chunk-TV74I3Y5.js";
26
- import "./chunk-IH7ILDJS.js";
27
- import "./chunk-LOZEKOES.js";
28
- import "./chunk-TOU7EVFQ.js";
29
- import "./chunk-OAWQ6LOO.js";
30
- import "./chunk-SEEYV6P2.js";
31
- import "./chunk-NDWTN4U5.js";
32
- import "./chunk-OMR2DT66.js";
33
- import "./chunk-HFNDKYVF.js";
34
- export {
35
- controlsInit,
36
- renderTerm1Label,
37
- term0_term2_defaultQ
38
- };
39
- //# sourceMappingURL=controls-B4MTTPWO.js.map
@@ -1,37 +0,0 @@
1
- import {
2
- configUiInit,
3
- initByInput
4
- } from "./chunk-XZZLEHWC.js";
5
- import "./chunk-HJ6L54YS.js";
6
- import "./chunk-CJJ6LDZM.js";
7
- import "./chunk-2SRMRC6L.js";
8
- import "./chunk-QEHUEG4X.js";
9
- import "./chunk-XDI4UFCZ.js";
10
- import "./chunk-FN5XPUPH.js";
11
- import "./chunk-LSEFWW72.js";
12
- import "./chunk-5EF5U7MX.js";
13
- import "./chunk-2K5DSRBJ.js";
14
- import "./chunk-UCLS2SVB.js";
15
- import "./chunk-MVTCBVSX.js";
16
- import "./chunk-SEQLC4AD.js";
17
- import "./chunk-L4QG7XZE.js";
18
- import "./chunk-DQC5FFGV.js";
19
- import "./chunk-2TIYJ3PH.js";
20
- import "./chunk-RIGZHHCP.js";
21
- import "./chunk-AAEXTQT3.js";
22
- import "./chunk-2UWHV2SB.js";
23
- import "./chunk-ZLH4PJKX.js";
24
- import "./chunk-TV74I3Y5.js";
25
- import "./chunk-IH7ILDJS.js";
26
- import "./chunk-LOZEKOES.js";
27
- import "./chunk-TOU7EVFQ.js";
28
- import "./chunk-OAWQ6LOO.js";
29
- import "./chunk-SEEYV6P2.js";
30
- import "./chunk-NDWTN4U5.js";
31
- import "./chunk-OMR2DT66.js";
32
- import "./chunk-HFNDKYVF.js";
33
- export {
34
- configUiInit,
35
- initByInput
36
- };
37
- //# sourceMappingURL=controls.config-6KBCTIPN.js.map